diff --git a/.gitignore b/.gitignore
index d451ff16c1010b8dc4285ef4d338028792a0ecd3..37861b36819a137886ee87d1b0c8331eac6349b0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,16 @@ node_modules
.DS_Store
dist
dist-ssr
+build
+lib
+types
*.local
+pnpm-lock.yaml
+package-lock.json
+yarn-error.log
+.history
+.vscode
+.idea
+packages/devui-vue/devui/vue-devui.ts
+packages/devui-vue/devui/theme/theme.scss
+packages/devui-vue/docs/.vitepress/config/sidebar.ts
diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000000000000000000000000000000000000..752af08930180076a6eb5c81f48d9d6efae35d78
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,12 @@
+{
+ "arrowParens": "always",
+ "bracketSpacing": true,
+ "htmlWhitespaceSensitivity": "ignore",
+ "jsxSingleQuote": true,
+ "printWidth": 100,
+ "semi": false,
+ "useTabs": false,
+ "trailingComma": "none",
+ "singleQuote": true,
+ "tabWidth": 2
+}
diff --git a/LICENSE b/LICENSE
index e69accf89f0979125691c0bbd398c68d2385ecc8..e3a2b0425c06727332e53b757349d33b0c5835df 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,7 @@
MIT License
-Copyright (c) 2021 Kagol
+Copyright (c) 2019 - present DevUI.
+Copyright (c) 2019 - present Huawei Technologies Co., Ltd.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -19,3 +20,4 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+
diff --git a/README.md b/README.md
index df34440437a773027c8a50ebabee0fa24dfd02b1..a930fe3ad9699f981e3cebadf5f9b352de1d0cd5 100644
--- a/README.md
+++ b/README.md
@@ -1,31 +1,26 @@
-# Vue DevUI
+
+
+
+
+
-Vue3版本的DevUI组件库,基于[https://github.com/devcloudfe/ng-devui](https://github.com/devcloudfe/ng-devui)
+Vue DevUI 是 Vue3 版本的 DevUI 组件库,基于 [https://github.com/devcloudfe/ng-devui](https://github.com/devcloudfe/ng-devui),倡导`沉浸`、`灵活`、`至简`的设计价值观。
-DevUI官方网站:[https://devui.design](https://devui.design)
+DevUI 官方网站:[https://devui.design](https://devui.design)
-Tips: 该项目目前还处于孵化和演进阶段,欢迎大家一起参与建设🤝
+# 当前状态: Beta
-目前,组件移植的基本流程已经打通,欢迎大家参与到 Vue DevUI 项目的建设中来!👏🎉
+该项目还处于孵化和演进阶段,欢迎大家参与到 Vue DevUI 项目的建设中来!🎉🎉
通过参与 Vue DevUI 项目,你可以:
-- 学习最新的 Vite+Vue3+TSX 技术
-- 学习如何设计和开发组件
-- 参与到开源社区中来
-- 结识一群热爱学习、热爱开源的朋友
-
-## 任务安排
-
-|任务名 |作用 |责任人|进度|
-|-- |-- |--|--|
-|移植 d-accordion 组件 |显示左侧组件导航 |[kagol](https://github.com/kagol)|50%|
-|移植 d-tabs 组件 |让 Demo/API 的展示分开 |星辰大海|0%|
-|移植 d-codebox 组件 |展示 Demo 中的示例代码 |[to0simple](https://github.com/to0simple)|50%|
-|移植 d-highlight 组件 |代码高亮 |[to0simple](https://github.com/to0simple)|0%|
-|移植 d-button 组件 |该组件将成为第一个成功移植过程的 Vue 组件|[Zcating](https://github.com/Zcating)|50%|
-|编写 Button 组件的 Demo|显示组件的 Demo |待认领|0%|
-|集成 API 文档 |显示组件的 API |[kagol](https://github.com/kagol)|50%|
-|组件库打包 |打包并发布到npm |待认领|0%|
+- 🔥 学习最新的 `Vite`+`Vue3`+`TypeScript`+`JSX` 技术
+- 🎁 学习如何设计和开发组件
+- ⭐ 参与到开源社区中来
+- 🎊 结识一群热爱学习、热爱开源的朋友
+
+[贡献指南](https://gitee.com/devui/vue-devui/wikis/【必看】快速开始)
+
+# 快速开始
## 1 安装依赖
@@ -44,10 +39,6 @@ yarn dev(推荐)
or
-npx vite
-
-or
-
npm run dev
```
@@ -64,3 +55,118 @@ or
npm run build
```
+
+# 使用 Vue DevUI
+
+## 1. 安装
+
+```
+yarn add vue-devui
+```
+
+## 2. 全量引入
+
+```
+import { createApp } from 'vue'
+import App from './App.vue'
+
+// Step 1: 引入 Vue DevUI 组件库
+import DevUI from 'vue-devui'
+// Step 2: 引入组件库样式
+import 'vue-devui/style.css'
+
+createApp(App)
+.use(DevUI) // Step 3: 使用 Vue DevUI
+.mount('#app')
+```
+
+## 3. 按需引入
+
+除了全量引入,我们也支持单个组件按需引入。
+
+```
+import { createApp } from 'vue'
+import App from './App.vue'
+
+// Step 1: 引入单个组件
+import { Button } from 'vue-devui'
+// or import Button from 'vue-devui/button'
+// Step 2: 引入组件样式
+import 'vue-devui/button/style.css'
+
+createApp(App)
+.use(Button) // Step 3: 使用组件
+.mount('#app')
+```
+
+## 4. 使用
+
+```
+
+ 确定
+
+```
+
+# 图标库
+
+图标库可以使用[DevUI图标库](https://devui.design/icon/ruleResource),也可以使用第三方图标库,比如:iconfont。
+
+## 使用DevUI图标库
+
+### 安装
+
+```
+yarn add @devui-design/icons(推荐)
+
+or
+
+npm i @devui-design/icons
+```
+
+### 引入
+
+在`main.ts`文件中,编写以下代码:
+
+```
+import '@devui-design/icons/icomoon/devui-icon.css'
+```
+
+### 使用
+
+```
+
+```
+
+## 使用第三方图标库
+
+如果有第三方图标库,可以用类似的方式引入。
+
+### 引入
+
+在`main.ts`文件中,编写以下代码:
+
+```
+import 'your-folder/my-icon.css'
+```
+
+### 使用
+
+```
+
+```
+
+其中的`classPrefix`参数的值,应该和你的字体图标样式文件`my-icon.css`里定义的样式前缀保持一致。
+
+比如`my-icon.css`里的图标样式:
+
+```css
+.my-icon-branch-node:before {
+ content: "\E001";
+}
+```
+
+那么`classPrefix`就是`my-icon`。
+
+# License
+
+[MIT](https://gitee.com/devui/vue-devui/blob/dev/LICENSE)
diff --git a/devui/accordion/demo/accordion.route.ts b/devui/accordion/demo/accordion.route.ts
deleted file mode 100644
index ca347814f2eb8ce2b306c9e1e2f6aac074d939de..0000000000000000000000000000000000000000
--- a/devui/accordion/demo/accordion.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import AccordionDemoComponent from './accordion-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: AccordionDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/accordion/doc/api-cn.md b/devui/accordion/doc/api-cn.md
deleted file mode 100644
index e99775072ed05da5bdd742d3be093d275d4b4bda..0000000000000000000000000000000000000000
--- a/devui/accordion/doc/api-cn.md
+++ /dev/null
@@ -1,193 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```typescript
-import { AccordionModule } from 'ng-devui/accordion';
-```
-
-在页面中使用:
-
-```html
-
-```
-
-## Accordion
-
-### d-accordion 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------: | :---------------------------------------------------: | :--------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------------- |
-| data | `Array \| AccordionMenuType` | -- | 必选,数据源,可以自定义数组或者使用预设的`AccordionMenuType` | [基本用法](demo#basic-usage) |
-| titleKey | `string` | 'title' | 可选,标题的属性名,item[titleKey]类型为`string`,为标题显示内容 | [改变键值](demo#change-values) |
-| loadingKey | `string` | 'loading' | 可选,子菜单是否加载中的判断属性名,item[loadingKey]类型为`boolean` | [改变键值](demo#change-values) |
-| childrenKey | `string` | 'children' | 可选,子菜单的属性名,item[childrenKey]类型为`Array` | [改变键值](demo#change-values) |
-| disabledKey | `string` | 'disabled' | 可选,是否禁用的属性名,item[disabledKey]类型为`boolean` | [改变键值](demo#change-values) |
-| activeKey | `string` | 'active' | 可选,子菜单是否激活的属性名,item[activeKey]类型为`boolean` | [改变键值](demo#change-values) |
-| openKey | `string` | 'open' | 可选,菜单是否展开的属性名,item[openKey]类型为`boolean` | [改变键值](demo#change-values) |
-| restrictOneOpen | `boolean` | false | 可选,限制一级菜单同时只能打开一个, 默认不限制 | [基本用法](demo#basic-usage) |
-| menuItemTemplate | `TemplateRef` | 内置 | 可选, 可展开菜单内容条模板,可用变量值见下 | [使用模板](demo#using-templates) |
-| itemTemplate | `TemplateRef` | 内置 | 可选,可点击菜单内容条模板,可用变量值见下 | [使用模板](demo#using-templates) |
-| noContentTemplate | `TemplateRef` | 内置 | 可选,没有内容的时候使用自定义模板,可用变量值见下 | [使用模板](demo#using-templates) |
-| loadingTemplate | `TemplateRef` | 内置 | 可选,加载中使用自定义模板,可用变量值见下 | [使用模板](demo#using-templates) |
-| innerListTemplate | `TemplateRef` | 内置 | 可选,子列表内容完全自定义,用做折叠面板,可用变量值见下 | [使用模板](demo#using-templates) |
-| linkType | `'routerLink'\|'hrefLink'\|'dependOnLinkTypeKey'\|''` | '' | 可选,`'routerLink'`为路由场景;`'hrefLink'`为外部链接场景;`'dependOnLinkTypeKey'`为动态路由或外部链接场景;`''`为默认非链接类型(无法右键打开新标签页) | [内置路由和链接类型](demo#use-built-in-routing-and-link-types) |
-| linkTypeKey | `string` | 'linkType' | 可选,链接内容的类型的 key 值,用于 linkType 为`'dependOnLinkTypeKey'`时指定对象链接类型属性名,item[linkTypeKey]类型为`'routerLink'\|'hrefLink'\| string`,其中`'routerLink'`为路由链接,`'hrefLink'`为外部链接,其他为默认非链接类型 |
-| linkKey | `string` | 'link' | 可选,链接内容的 key,用于 linkType 为连接类型记非`''`时,链接的取值的属性值,item[linkKey]为路由地址或者超链接地址 |
-| linkTargetKey | `string` | 'target' | 可选,链接目标窗口的 key,用于链接类型,item[linkTargetKey]为单个链接的目标窗口 |
-| linkDefaultTarget | `string` | '\_self' | 可选,不设置 target 的时候 target 默认值为`'_self'`,用于链接类型, 取值等同于 a 链接的 target 属性 | [内置路由和链接类型](demo#use-built-in-routing-and-link-types) |
-| autoOpenActiveMenu | `boolean` | false | 可选,是否自动展开带有活跃子项的菜单 | [复合层级和自动展开](demo#compound-level-and-auto-expand) |
-| accordionType | `'normal'\|'embed'` | 'normal' | 可选,菜单形式是普通(带阴影)还是内嵌(不带阴影) | [基本用法](demo#basic-usage) |
-| showAnimation | `boolean` | true | 可选,是否展示动画 | [内置路由和链接类型](demo#use-built-in-routing-and-link-types) |
-
-### d-accordion 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :--------------: | :-----------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------: | ---------------------------- |
-| menuToggle | `EventEmitter<`[`AccordionMenuToggleEvent`](#accordionmenutoggleevent)`>` | 可选,可展开菜单展开事件,返回对象里属性 item 为点击的对象数据,open 为 true 则将要展开 false 则将要关闭, parent 为父对象数据,event 为点击事件的原生事件 | [基本用法](demo#basic-usage) |
-| itemClick | `EventEmitter<`[`AccordionItemClickEvent`](#accordionitemclickevent)`>` | 可选,可点击菜单点击事件,返回对象里属性 item 为点击的对象数据,preActive 对象为上一次展开的对象, parent 为父对象数据,event 为点击事件的原生事件 | [基本用法](demo#basic-usage) |
-| activeItemChange | `EventEmitter` | 可选,子项切换的时候会发出新激活的子项的数据 | [基本用法](demo#basic-usage) |
-
-### AccordionMenuType 定义
-
-```typescript
-/* 基础数据类型 */
-type AccordionMenuItemLinkType = 'routerLink' | 'hrefLink' | string;
-export interface AccordionBase {
- title: string;
- disabled?: boolean;
- [prop: string]: any;
-}
-interface IAccordionActiveable {
- active?: boolean;
-}
-interface IAccordionFoldable {
- open?: boolean;
- loading?: boolean;
- children?: Array;
-}
-
-interface IAccordionLinkable {
- link?: string;
- target?: boolean;
- linkType?: AccordionMenuItemLinkType;
-}
-export interface AccordionBaseItem extends AccordionBase, IAccordionActiveable {}
-export interface AccordionBaseMenu extends AccordionBase, IAccordionFoldable {}
-
-export interface AccordionLinkableItem extends AccordionBase, IAccordionActiveable, IAccordionLinkable {}
-export interface AccordionMenuItem extends AccordionBase, IAccordionActiveable, IAccordionFoldable, IAccordionLinkable {}
-
-export type AccordionMenuType = Array;
-
-/* 通用公共配置数据类型 */
-interface AccordionMenuKeyGroup {
- titleKey?: string;
- activeKey?: string;
- disabledKey?: string;
- openKey?: string;
- loadingKey?: string;
- childrenKey?: string;
- linkKey?: string;
- linkTargetKey?: string;
- linkTypeKey?: string;
-}
-
-type AccordionTemplateRefArray = 'itemTemplate' | 'menuItemTemplate' | 'noContentTemplate' | 'loadingTemplate' | 'innerListTemplate';
-type AccordionTemplateRefGroup = {
- [p in AccordionTemplateRefArray]: TemplateRef;
-};
-interface AccordionConfigOptions {
- restrictOneOpen?: boolean;
- autoOpenActiveMenu?: boolean;
- showNoContent?: boolean;
- linkDefaultTarget?: string;
- i18nText: any;
- linkType: 'routerLink' | 'hrefLink' | 'dependOnLinkTypeKey' | '';
-}
-export interface AccordionOptions extends AccordionConfigOptions, AccordionMenuKeyGroup, AccordionTemplateRefGroup {}
-```
-
-## AccordionMenuToggleEvent
-
-``` typescript
-export type AccordionMenuToggleEvent = {
- item: any;
- open: boolean;
- parent: any;
- event: MouseEvent;
-};
-```
-
-## AccordionItemClickEvent
-
-``` typescript
-export type AccordionItemClickEvent = {
- item: any;
- prevActiveItem?: any;
- parent: any;
- event: MouseEvent;
-};
-```
-
-### 模板可以用变量值
-
-#### 变量使用方法
-
-```html
-{{myitem}}
-```
-
-#### menuItemTemplate 可用变量值
-
-| 变量 | 类型 | 变量含义说明 |
-| :----------------: | :--------: | :-----------------------------------------------: |
-| item | `any` | 可展开类型菜单数据 |
-| deepth | `number` | 表示嵌套结构层级 |
-| parent | `any` | 所属父级菜单数据 |
-| ~~~titleKey~~~ | `string` | `已经废弃`~~~组件的 titleKey 值~~~ |
-| ~~~disabledKey~~~ | `string` | `已经废弃`~~~组件的 disabledKey 值~~~ |
-| ~~~openKey~~~ | `string` | `已经废弃`~~~组件的 openKey 值~~~ |
-| ~~~menuToggleFn~~~ | `Function` | `已经废弃`~~~参数应为 item,表示一级菜单被点击~~~ |
-
-#### itemTemplate 可用变量值
-
-| 变量 | 类型 | 变量含义说明 |
-| :---------------: | :--------: | :-----------------------------------------------: |
-| item | `any` | 可点击类型菜单数据 |
-| deepth | `number` | 值表示嵌套结构层级 |
-| parent | `any` | 所属父级菜单数据 |
-| ~~~titleKey~~~ | `string` | `已经废弃`~~~ 组件的 titleKey 值~~~ |
-| ~~~disabledKey~~~ | `string` | `已经废弃`~~~ 组件的 disabledKey 值~~~ |
-| ~~~activeKey~~~ | `string` | `已经废弃`~~~ 组件的 activeKey 值~~~ |
-| ~~~itemClickFn~~~ | `Function` | `已经废弃`~~~参数应为 item,表示二级菜单被点击~~~ |
-
-#### noContentTemplate 可用变量值
-
-| 变量 | 类型 | 变量含义说明 |
-| :----: | :------: | :----------------: |
-| item | `any` | 父级菜单单个数据 |
-| deepth | `number` | 值表示嵌套结构层级 |
-
-#### loadingTemplate 可用变量值
-
-| 变量 | 类型 | 变量含义说明 |
-| :--------------: | :------: | :------------------------: |
-| item | `any` | 父级菜单单个数据 |
-| deepth | `number` | 值表示嵌套结构层级 |
-| ~~~loadingKey~~~ | `string` | ~~~组件的 loadingKey 值~~~ |
-
-#### innerListTemplate 可用变量值
-
-| 变量 | 类型 | 变量含义说明 |
-| :---------------: | :--------: | :----------------------------------------------------------------: |
-| item | `any` | 父级菜单单个数据 |
-| deepth | `number` | 值表示嵌套结构层级 |
-| ~~~titleKey~~~ | `string` | `已经废弃`~~~组件的 titleKey 值~~~ |
-| ~~~loadingKey~~~ | `string` | `已经废弃`~~~组件的 loadingKey 值~~~ |
-| ~~~childrenKey~~~ | `string` | `已经废弃`~~~组件的 childrenKey 值~~~ |
-| ~~~disabledKey~~~ | `string` | `已经废弃`~~~组件的 disabledKey 值~~~ |
-| ~~~openKey~~~ | `string` | `已经废弃`~~~组件的 openKey 值~~~ |
-| ~~~activeKey~~~ | `string` | `已经废弃`~~~组件的 activeKey 值,用二级菜单~~~ |
-| menuToggleFn | `Function` | 参数应为 item,表示菜单被展开,可选参数 event,原始事件 |
-| itemClickFn | `Function` | 参数应为可点击菜单的 item,表示菜单被点击,可选参数 event,原始事件 |
diff --git a/devui/accordion/doc/api-en.md b/devui/accordion/doc/api-en.md
deleted file mode 100644
index e6467537d0eea5b76a05c9e600dc1c8320403e63..0000000000000000000000000000000000000000
--- a/devui/accordion/doc/api-en.md
+++ /dev/null
@@ -1,189 +0,0 @@
-# How to use
-
-Import into module:
-
-```typescript
-import { AccordionModule } from ' ng-devui/accordion';
-```
-
-On the page:
-
-```html
-
-```
-
-## Accordion
-
-### d-accordion parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :----------------: | :----------------------------------------------------: | :--------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------------------------- |
-| data | `Array \| AccordionMenuType` | -- | Required. Data source. You can customize an array or use the preset `AccordionMenuType` | [Basic usage](demo#basic-usage) |
-| titleKey | `string` | 'title' | Optional. Title attribute name. The type of item[titleKey] is `string`, indicating the title content. | [Change key value](demo#change-values) |
-| loadingKey | `string` | 'loading' | Optional. attribute name for determining whether a submenu is loaded. The type of item[loadingKey] is `boolean` | [Change key value](demo#change-values) |
-| childrenKey | `string` | 'children' | Optional. Submenu attribute name. The type of item[childrenKey] is `Array` | [Change key value](demo#change-values) |
-| disabledKey | `string` | 'disabled' | Optional. indicating whether to disable the attribute. The type of item[disabledKey] is `boolean` | [Change key value](demo#change-values) |
-| activeKey | `string` | 'active' | Optional. indicating whether a submenu is activated. The type of item[activeKey] is `boolean` | [Change key value](demo#change-values) |
-| openKey | `string` | 'open' | Optional. indicating whether a menu is expanded. The type of item[openKey] is `boolean` | [Change key value](demo#change-values) |
-| restrictOneOpen | `boolean` | false | Optional. Only one level-1 menu can be opened at a time. By default, there is no restriction. | [Basic usage](demo#basic-usage) |
-| menuItemTemplate | `TemplateRef` | Built-in | Optional. It can expand the menu content bar template. The available variable values are as follows. | [Using a Template](demo#using-templates) |
-| itemTemplate | `TemplateRef` | Built-in | Optional. The menu content bar template can be clicked. The available variable values are as follows: | [Using a Template](demo#using-templates) |
-| noContentTemplate | `TemplateRef` | Built-in | Optional. If there is no content, use a customized template. The available variable values are as follows: | [Using a Template](demo#using-templates) |
-| loadingTemplate | `TemplateRef` | Built-in | Optional. A customized template is used for loading. The available variable values are as follows | [Using a Template](demo#using-templates) |
-| innerListTemplate | `TemplateRef` | Built-in | Optional. The sublist content is customized and used as a folding panel. The available variable values are as follows. | [Using a Template](demo#using-templates) |
-| linkType | `'routerLink'\|'hrefLink'\|'dependOnLinkTypeKey'\|'''` | '' | Optional. `routerLink'` indicates the routing scenario. `hrefLink'` indicates the external link scenario. `dependOnLinkTypeKey'` indicates the dynamic routing or external link scenario. `''` is the default non-link type (you cannot right-click to open a new tab page) | [Built-in route and link type](demo#use-built-in-routing-and-link-types) |
-| linkTypeKey | `string` | 'linkType' | Optional. Key value of the link type, which is used to specify the object link type attribute name when linkType is set to `'dependOnLinkTypeKey'`. The value of item[linkTypeKey] is `'routerLink'\|'hrefLink'\| string`, in the preceding information, `routerLink'` indicates a route link, `hrefLink'` indicates an external link, and other values are default non-link types. |
-| linkKey | `string` | 'link' | Optional. Key of the link content, which is used to set the value of the link value when linkType is not set to ````. item[linkKey] indicates the route address or hyperlink address. |
-| linkTargetKey | `string` | 'target' | Optional. Key of the target window to be linked, which is used for the link type. item[linkTargetKey] indicates the target window of a single link. |
-| linkDefaultTarget | `string` | '\_self' | Optional. If target is not set, the default value of target is `'\_self'`, which is used for the link type and its value is the same as that of target attribute of link a. | [Built-in route and link type](demo#use-built-in-routing-and-link-types) |
-| autoOpenActiveMenu | `boolean` | false | Optional. Whether to automatically expand menus with active subitems | [Composite Hierarchy and Auto Expand](demo#compound-level-and-auto-expand) |
-| accordionType | `normal ' \| 'embed'` | 'normal' | Optional. The menu format is common (with shadow) or embedded (without shadow). | [Basic usage](demo#basic-usage) |
-| showAnimation | `boolean` | true | Optional. Indicating whether to display animations. | [Built-in route and link type](demo#use-built-in-routing-and-link-types) |
-
-### d-accordion event
-
-| Event | Type | Description | Jump to Demo |
-| :--------------: | :-----------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------- |
-| menuToggle | `EventEmitter<`[`AccordionMenuToggleEvent`](#accordionmenutoggleevent)`>` | Optional. The menu can be expanded. In the returned object, the attribute item is the object data clicked. If open is true, the object will be expanded. If open is false, the object will be closed. If parent is the parent object data. Event is the native event of the click event. | [Basic usage](demo#basic-usage) |
-| itemClick | `EventEmitter<`[`AccordionItemClickEvent`](#accordionitemclickevent)`>` | Optional. It can click a menu event. In the returned object, the attribute item is the object data of the clicked object, the preActive object is the object expanded last time, the parent object is the data of the parent object, and the event is the native event of the click event. | [Basic usage](demo#basic-usage) |
-| activeItemChange | `EventEmitter` | Optional. Data of the newly activated sub-item is sent when the sub-item is switched. | [Basic usage](demo#basic-usage) |
-
-### AccordionMenuType Definition
-
-```typescript
-/* Basic data type */
-type AccordionMenuItemLinkType = 'routerLink' | 'hrefLink' | string;
-export interface AccordionBase {
- title: string;
- disabled?: boolean;
- [prop: string]: any;
-}
-interface IAccordionActiveable {
- active?: boolean;
-}
-interface IAccordionFoldable {
- open?: boolean;
- loading?: boolean;
- children?: Array;
-}
-interface IAccordionLinkable {
- link?: string;
- target?: boolean;
- linkType?: AccordionMenuItemLinkType;
-}
-export interface AccordionBaseItem extends AccordionBase, IAccordionActiveable {}
-export interface AccordionBaseMenu extends AccordionBase, IAccordionFoldable {}
-export interface AccordionLinkableItem extends AccordionBase, IAccordionActiveable, IAccordionLinkable {}
-export interface AccordionMenuItem extends AccordionBase, IAccordionActiveable, IAccordionFoldable, IAccordionLinkable {}
-export type AccordionMenuType = Array;
-
-/* Common configuration data type */
-interface AccordionMenuKeyGroup {
- titleKey?: string;
- activeKey?: string;
- disabledKey?: string;
- openKey?: string;
- loadingKey?: string;
- childrenKey?: string;
- linkKey?: string;
- linkTargetKey?: string;
- linkTypeKey?: string;
-}
-type AccordionTemplateRefArray = 'itemTemplate' | 'menuItemTemplate' | 'noContentTemplate' | 'loadingTemplate' | 'innerListTemplate';
-type AccordionTemplateRefGroup = {
- [p in AccordionTemplateRefArray]: TemplateRef;
-};
-interface AccordionConfigOptions {
- restrictOneOpen?: boolean;
- autoOpenActiveMenu?: boolean;
- showNoContent?: boolean;
- linkDefaultTarget?: string;
- i18nText: any;
- linkType: 'routerLink' | 'hrefLink' | 'dependOnLinkTypeKey' | '';
-}
-export interface AccordionOptions extends AccordionConfigOptions, AccordionMenuKeyGroup, AccordionTemplateRefGroup {}
-```
-
-## AccordionMenuToggleEvent
-
-```typescript
-export type AccordionMenuToggleEvent = {
- item: any;
- open: boolean;
- parent: any;
- event: MouseEvent;
-};
-```
-
-## AccordionItemClickEvent
-
-```typescript
-export type AccordionItemClickEvent = {
- item: any;
- prevActiveItem?: any;
- parent: any;
- event: MouseEvent;
-};
-```
-
-### Templates can use variable values.
-
-#### Variable Usage
-
-```html
-{{myitem}}
-```
-
-#### menuItemTemplate Available variable values
-
-| Variable | Type | Variable Description |
-| :----------------: | :--------: | :------------------------------------------------------------------------------------------: |
-| item | `any` | Expandable menu data |
-| deepth | `number` | Indicates the nested structure level. |
-| parent | `any` | Parent menu data |
-| ~~~titleKey~~~ | `string` | Deprecated.~~~ The titleKey value of the component. ~~~ |
-| ~~~disabledKey~~~ | `string` | Deprecated. ~~~ The value of the disabledKey of the component. ~~~ |
-| ~~~openKey~~~ | `string` | Deprecated. ~~~ The openKey value of the component. ~~~ |
-| ~~~menuToggleFn~~~ | `Function` | Deprecated.~~~ The parameter should be item, indicating that the level-1 menu is clicked.~~~ |
-
-#### itemTemplate Available variable values
-
-| Variable | Type | Variable Description |
-| :---------------: | :--------: | :------------------------------------------------------------------------------------------: |
-| item | `any` | Clickable menu data |
-| deepth | `number` | The value indicates the nested structure level. |
-| parent | `any` | Parent menu data |
-| ~~~titleKey~~~ | `string` | Deprecated.~~~ The titleKey value of the component ~~~ |
-| ~~~disabledKey~~~ | `string` | Deprecated.~~~ The value of the disabledKey of the component ~~~ |
-| ~~~activeKey~~~ | `string` | Deprecated.~~~ The activeKey value of the component ~~~ |
-| ~~~itemClickFn~~~ | `Function` | Deprecated. ~~~The parameter should be item, indicating that the level-2 menu is clicked.~~~ |
-
-#### noContentTemplate Available variable value
-
-| Variable | Type | Variable Description |
-| :------: | :------: | :---------------------------------------------: |
-| item | `any` | Parent menu single data |
-| deepth | `number` | The value indicates the nested structure level. |
-
-#### loadingTemplate Available variable values
-
-| Variable | Type | Variable Description |
-| :---------------------: | :--------------: | :---------------------------------------------: |
-| item | `any` | Parent menu single data |
-| deepth | `number` | The value indicates the nested structure level. |
-| LoadingKey value of the | ~~~loadingKey~~~ | `string` | ~~~ component ~~~ |
-
-#### InnerListTemplate Available Variable Values
-
-| Variable | Type | Variable Description |
-| :---------------: | :--------: | :------------------------------------------------------------------------------------------------------------------------------------------------------: |
-| item | `any` | Parent menu single data |
-| deepth | `number` | The value indicates the nested structure level. |
-| ~~~titleKey~~~ | `string` | Deprecated.~~~The titleKey value of the component ~~~ |
-| ~~~loadingKey~~~ | `string` | Deprecated.~~~ The loading key value of the component ~~~ |
-| ~~~childrenKey~~~ | `string` | Deprecated.~~~ The value of childrenKey of the component ~~~ |
-| ~~~disabledKey~~~ | `string` | Deprecated.~~~ The value of the disabledKey of the component ~~~ |
-| ~~~openKey~~~ | `string` | Deprecated.~~~ The openKey value of the component ~~~ |
-| ~~~activeKey~~~ | `string` | Deprecated. ~~~ The activeKey value of the component Use the level-2 menu ~~~ |
-| menuToggleFn | `Function` | The parameter should be item, indicating that the menu is expanded. The optional parameter event, original event, is used. |
-| itemClickFn | `Function` | The parameter must be an item of a menu that can be clicked, indicating that the menu is clicked. The optional parameter event, original event, is used. |
diff --git a/devui/alert/demo/alert.route.ts b/devui/alert/demo/alert.route.ts
deleted file mode 100644
index 2ac85e3629e4738060bd247e08954e03f6066880..0000000000000000000000000000000000000000
--- a/devui/alert/demo/alert.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import AlertDemoComponent from './alert-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: AlertDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/alert/doc/api-cn.md b/devui/alert/doc/api-cn.md
deleted file mode 100644
index f0e41dd9f39bb98a4c961625609b247cad376799..0000000000000000000000000000000000000000
--- a/devui/alert/doc/api-cn.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { AlertModule } from 'ng-devui/alert';
-```
-
-在页面中使用:
-
-```xml
-
-```
-# d-alert
-## d-alert 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :---------: | :--------------------------------------: | :----: | :---------------------------------------- | ------------------------------------------ |
-| type | [`AlertType`](#alerttype) | 'info' | 必选,指定警告提示的样式 | [基本用法](demo#basic-usage) |
-| cssClass | `string` | -- | 可选,自定义 class 名 |
-| closeable | `boolean` | true | 可选,默认显示关闭按钮 | [基本用法](demo#tips-to-close) |
-| dismissTime | `number` | -- | 可选,自动关闭 alert 的延迟时间(`ms`) |
-| showIcon | `boolean` | true | 可选,是否使用默认的类型图标 | [不使用默认图标](demo#without-icon) |
-
-## d-alert 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :--------: | :-----------------: | :------------------------- | -------------------------------------------- |
-| closeEvent | `EventEmitter` | 可选,关闭时触发的回调函数 | [可关闭的提示](demo#tips-to-close) |
-
-# 接口 & 类型定义
-### AlertType
-
-默认值为'info', 指定alert警告提示的类型
-
-```ts
-export type AlertType = 'success' | 'danger' | 'warning' | 'info';
-```
\ No newline at end of file
diff --git a/devui/alert/doc/api-en.md b/devui/alert/doc/api-en.md
deleted file mode 100644
index 58701b5b7fdfa2430a5c96eee0800d76b20620d7..0000000000000000000000000000000000000000
--- a/devui/alert/doc/api-en.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { AlertModule } from 'ng-devui/alert';
-```
-
-In the page:
-
-```xml
-
-```
-# d-alert
-## d-alert Parameter
-
-| Attributes | Type | Default | Description | Jump to Demo |
-| :---------: | :--------------------------------------: | :----: | :---------------------------------------- | ------------------------------------------ |
-| type | [`AlertType`](#alerttype) | 'info' | Required. Specify the style of the warning prompt | [Basic Usage](demo#basic-usage) |
-| cssClass | `string` | -- | Optional. Customize className |
-| closeable | `boolean` | true | Optional. The close button is displayed by default | [Basic Usage](demo#tips-to-close) |
-| dismissTime | `number` | -- | Optional. Toggle off the delay time of Alert(`ms`) |
-| showIcon | `boolean` | true | Optional. Whether to use the default type icon | [Without Icon](demo#without-icon) |
-
-## d-alert Event
-
-| Attributes | Type | Description | Jump to Demo |
-| :--------: | :-----------------: | :------------------------- | -------------------------------------------- |
-| closeEvent | `EventEmitter` | Optional. Callback when alert is closed | [Closable Prompt](demo#tips-to-close) |
-
-# Interface & Type Definition
-### AlertType
-
-The default value is 'info', which specifies the type of alert warning.
-
-```ts
-export type AlertType = 'success' | 'danger' | 'warning' | 'info';
-```
\ No newline at end of file
diff --git a/devui/anchor/anchor.tsx b/devui/anchor/anchor.tsx
deleted file mode 100644
index 6a7920becb16ff4db7b510c2a6c08aff9bdd6eab..0000000000000000000000000000000000000000
--- a/devui/anchor/anchor.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-anchor',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-anchor
- }
- }
-})
\ No newline at end of file
diff --git a/devui/anchor/demo/anchor-demo.tsx b/devui/anchor/demo/anchor-demo.tsx
deleted file mode 100644
index d976d45d5b531c1abd426e034c50ef5296f55dd5..0000000000000000000000000000000000000000
--- a/devui/anchor/demo/anchor-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-anchor-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-anchor-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/anchor/demo/anchor.route.ts b/devui/anchor/demo/anchor.route.ts
deleted file mode 100644
index 3559e13052b2b72b21063a3108d8e55437293b67..0000000000000000000000000000000000000000
--- a/devui/anchor/demo/anchor.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import AnchorDemoComponent from './anchor-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: AnchorDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/anchor/doc/api-cn.md b/devui/anchor/doc/api-cn.md
deleted file mode 100644
index 601316e484ceade4f1bb1a502ce70ab9564fb57f..0000000000000000000000000000000000000000
--- a/devui/anchor/doc/api-cn.md
+++ /dev/null
@@ -1,123 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { AnchorModule } from 'ng-devui';
-```
-
-在页面中使用:
-
-```html
-
-
- anchorlink-one
- anchorlink-two
- anchorlink-three
- anchorlink-four
-
-
-
- anchorlink-one
-
-
- anchorlink-two
-
-
- anchorlink-three
-
-
- anchorlink-four
-
-
-
-```
-
-```ts
-// using router (cross-route), anchorName means your own anchor
-this.router.navigateByUrl('../xx/xxx#anchorName');
-this.router.navigate(['/xxx'], { fragment: 'anchorName' });
-
-// using router (at the same level), anchorName means your own anchor
-this.router.navigateByUrl('#anchorName');
-this.router.navigate([], { fragment: 'anchorName' });
-```
-# dAnchor
-
-定义一个锚点。
-## dAnchor 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------: | :------: | :--: | :---------------------------------------------------: | ---------------------------- |
-| dAnchor | `string` | -- | 必选,设置一个锚点的名字 | [基本用法](demo#basic-usage) |
-| anchorActive | `string` | -- | 可选,锚点处于激活状态的时候,模块生效对应的 css 类名 | [基本用法](demo#basic-usage) |
-
-## dAnchor 锚点激活事件
-
-自动会给锚点加上以下类对应不同激活的对象。
-
-| css 类名 | 代表意义 |
-| :---------------------------: | :--------------------: |
-| anchor-active-by-anchor-link | 点击锚点链接激活 |
-| anchor-active-by-scroll | 容器滚动到锚点位置激活 |
-| anchor-active-by-click-inside | 点击锚点内部内容激活 |
-| anchor-active-by-initial | 初始化滚动条位置激活 |
-
-# dAnchorLink
-
-定义一个锚点的链接,点击链接会滑动到锚点,锚点处于页面顶部的时候也会激活链接的 class。
-
-## dAnchorLink 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------: | :------: | :--: | :---------------------------------------------------: | ---------------------------- |
-| dAnchorLink | `string` | -- | 必选,点击滑动的目标锚点的名字 | [基本用法](demo#basic-usage) |
-| anchorActive | `string` | -- | 可选,锚点处于激活状态的时候,链接生效对应的 css 类名 | [基本用法](demo#basic-usage) |
-
-# dAnchorBox
-
-必须有一个容器,否则功能无法使用。
-
-定义一个扫描锚点的容器,放在 dAnchor 与 dAnchorLink 的公共父节点上,用于锚点和链接之间的通信。
-
-## dAnchorBox 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-----------: | :----------------------------: | :-------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------: | ---------------------------------- |
-| view | `{top?:number,bottom?:number}` | {top:0,bottom:0} | 可选,用于可视区域的调整,比如顶部有固定位置的头部等,数值对应被遮挡的顶部或底部的高度 | [基本用法](demo#basic-usage) |
-| defaultAnchor | `string` | -- | 可选,进入页面后默认被激活的锚点链接,一般设置为第一个锚点,如果不设置,那么第一个锚点需要在滑动到顶部位置的时候才能激活链接 | [基本用法](demo#basic-usage) |
-| scrollTarget | `HTMLElement` | document.documentElement(document.body) | 可选,设置要发生滚动的容器,一般为滚动条所在容器,为主页面的滚动条时候可以不设置 | [更换滚动容器](demo#scroll-target) |
-
-# dAnchorHashSupport
-
-dAnchorBox 辅助指令。
-## dAnchorHashSupport 参数
-
-以下参数为高级配置参数,一般不需要使用,只需要直接使用 dAnchorHashSupport。
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :--------------------------: | :-------: | :---: | :-----------------------------------------------------------------------------------: | ---------------------------------- |
-| updateUrlWhenAnchorActive | `boolean` | true | 可选,当激活 anchor 的时候更新 url,用于处理复杂场景, 默认为 true 即可 | [支持 url 锚点](demo#support-hash) |
-| scrollToAnchorByHashOnlyInit | `boolean` | false | 可选,true 为只有初始化的时候接收来自路由的 fragment 字段变化并接收,用于处理复杂场景 | [支持 url 锚点](demo#support-hash) |
-
-dAnchorHashSupport 指令搭配 dAnchorBox 使用, 可以绑定路由的 hash fragment, 举例 xxx.xxx/xxx#foo, foo 字段为哈希字段。
-跳转哈希字段可以使用 anchor 组件,路由 navigate,routerLink 的 fragment 字段等。
-
-# 注意事项
-
-注意不可和 ng6.1 以上路由模块自带的 RouterScoller 混用, routerlScroller 会滚动到传统的 id 锚点。
-单独使用 RouterScroller 可以通过配置路由模块。
-
-```ts
-@NgModule({
- // ......
- imports: [
- // ......
- RouterModule.forRoot(routes, {
- anchorScrolling: 'enabled', // 该策略与锚点组件的dAnchorHashSupport指令相冲突
- }),
- ],
- // ......
-})
-export class DemoModule {}
-```
diff --git a/devui/anchor/doc/api-en.md b/devui/anchor/doc/api-en.md
deleted file mode 100644
index f44c25a2ae103cffbfd5b50e2b5cfcffdd5835fb..0000000000000000000000000000000000000000
--- a/devui/anchor/doc/api-en.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { AnchorModule } from 'ng-devui';
-```
-
-In the page:
-
-```html
-
-
- anchorlink-one
- anchorlink-two
- anchorlink-three
- anchorlink-four
-
-
-
- anchorlink-one
-
-
- anchorlink-two
-
-
- anchorlink-three
-
-
- anchorlink-four
-
-
-
-```
-
-```ts
-// using router (cross-route), anchorName means your own anchor
-this.router.navigateByUrl('../xx/xxx#anchorName');
-this.router.navigate(['/xxx'], { fragment: 'anchorName' });
-
-// using router (at the same level), anchorName means your own anchor
-this.router.navigateByUrl('#anchorName');
-this.router.navigate([], { fragment: 'anchorName' });
-```
-
-# dAnchor
-
-Define an anchor point
-
-## dAnchor Parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :----------: | :------: | :-----: | :---------------------------------------------------------------------------------------------------: | -------------------------------------------------- |
-| dAnchor | `string` | -- | Required. Sets an anchor name. | [Basic Usage](demo#basic-usage) |
-| anchorActive | `string` | -- | Optional. When the anchor is activated, the corresponding CSS class name takes effect for the module. | [Basic Usage](demo#basic-usage) |
-
-## dAnchor Anchor Activation Event
-
-The following classes are automatically added to the anchor to correspond to different activated objects:
-
-| css class name | Meaning |
-| :---------------------------: | :-------------------------------------------------------: |
-| anchor-active-by-anchor-link | Click the anchor link to activate it. |
-| anchor-active-by-scroll | The container scrolls to the anchor point for activation. |
-| anchor-active-by-click-inside | Click the anchor content to activate it. |
-| anchor-active-by-initial | Initialize the scroll bar position. |
-
-# dAnchorLink
-
-Define a link of an anchor point. Click the link to slide to the anchor point. When the anchor point is at the top of the page, the link class is activated.
-
-## dAnchorLink Parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :----------: | :------: | :-----: | :------------------------------------------------------------------------------------------------: | -------------------------------------------------- |
-| dAnchorLink | `string` | -- | Required. Name of the target anchor point for sliding. | [Basic Usage](demo#basic-usage) |
-| anchorActive | `string` | -- | Optional. CSS class name corresponding to the link that takes effect when the anchor is activated. | [Basic Usage](demo#basic-usage) |
-
-# dAnchorBox
-
-There must be one container. Otherwise, the function cannot be used.
-
-Defines a container for scanning anchor points, placed on the common parent node of dAnchor and dAnchorLink, for communication between anchor points and links.
-
-## dAnchorBox Parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-----------: | :----------------------------: | :-------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | --------------------------------------------------------------------- |
-| view | `{top?:number,bottom?:number}` | {top:0,bottom:0} | Optional. It is used to adjust the visible region, for example, the head with a fixed position on the top. The value corresponds to the height of the blocked top or bottom. | [Basic Usage](demo#basic-usage) |
-| defaultAnchor | `string` | -- | Optional. An anchor link that is activated by default after a page is displayed. Generally, the first anchor link is set to the first anchor link. If this parameter is not set, the first anchor link can be activated only when the first anchor is moved to the top position. | [Basic Usage](demo#basic-usage) |
-| scrollTarget | `HTMLElement` | document.documentElement(document.body) | Optional. Sets the container where the scroll bar is located. This parameter is optional when the scroll bar is on the home page. | [Replace Rolling Container](demo#scroll-target) |
-
-# dAnchorHashSupport
-
-dAnchorBox support instruction
-
-## dAnchorHashSupport Parameters
-
-The following parameters are advanced configuration parameters and are not required. You only need to use dAnchorHashSupport.
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------------------------: | :-------: | :-----: | :-----------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------------------ |
-| updateUrlWhenAnchorActive | `boolean` | true | Optional. The URL is updated when the anchor is activated. The default value is true. | [URL Hash Anchor](demo#support-hash) |
-| scrollToAnchorByHashOnlyInit | `boolean` | false | Optional. True indicates that the fragment field changes from routes are received only during initialization. This field is used for complex scenarios. | [URL Hash Anchor](demo#support-hash) |
-
-The dAnchorHashSupport command is used together with the dAnchorBox command to bind the hash fragment of a route. For example, xxx.xxx/xxx#foo, where the foo field is a hash field.
-The hop hash field can be the anchor component, route navigate, and routerLink fragment field.
-
-# Note
-
-Note that this parameter cannot be used together with the RouterScoller of the routing module of ng6.1 or later. The routerlScroller will scroll to the traditional ID anchor point.
-Using RouterScroller alone, you can configure the routing module.
-
-```ts
-@NgModule({
- //......
- imports: [
- //......
- RouterModule.forRoot(routes, {
- anchorScrolling: 'enabled', // This policy conflicts with the dAnchorHashSupport instruction of the anchor component.
- }),
- ],
- //......
-})
-export class DemoModule {}
-```
diff --git a/devui/auto-complete/auto-complete.tsx b/devui/auto-complete/auto-complete.tsx
deleted file mode 100644
index 95159c6b3cbc2eee124a88c3076d1786869bea65..0000000000000000000000000000000000000000
--- a/devui/auto-complete/auto-complete.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-auto-complete',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-auto-complete
- }
- }
-})
\ No newline at end of file
diff --git a/devui/auto-complete/demo/auto-complete-demo.tsx b/devui/auto-complete/demo/auto-complete-demo.tsx
deleted file mode 100644
index e5d44d8b9c29c8f15f166b0498d296c06fc035e9..0000000000000000000000000000000000000000
--- a/devui/auto-complete/demo/auto-complete-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-auto-complete-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-auto-complete-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/auto-complete/demo/auto-complete.route.ts b/devui/auto-complete/demo/auto-complete.route.ts
deleted file mode 100644
index bd1eea2cb200a02028573cd13737cdd5c72dac19..0000000000000000000000000000000000000000
--- a/devui/auto-complete/demo/auto-complete.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import AutoCompleteDemoComponent from './auto-complete-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: AutoCompleteDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/auto-complete/doc/api-cn.md b/devui/auto-complete/doc/api-cn.md
deleted file mode 100644
index 8173d6e9bbf5d5cc18ad328ff1c64596e65ca4d1..0000000000000000000000000000000000000000
--- a/devui/auto-complete/doc/api-cn.md
+++ /dev/null
@@ -1,64 +0,0 @@
-# 如何使用
-在module中引入:
-```ts
-import { AutoCompleteModule } from 'ng-devui/auto-complete';
-```
-在页面中使用:
-```html
-
-```
-
-# dAutoComplete
-## dAutoComplete 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-------------------: | :-------------------------------: | :-----------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- |
-| source | `Array` | -- | 必选,有 searchFn 的情况下可以不必选 | [基本用法](demo#basic-usage) |
-| allowEmptyValueSearch | `boolean` | false | 可选,在绑定的输入框 value 为空时,是否进行搜索提示操作 | [自定义模板展示](demo#auto-custom) |
-| appendToBody | `boolean` | false | 可选,下拉弹出是否 append to body | [自定义模板展示](demo#auto-custom) |
-| disabled | `boolean` | false | 可选,是否禁止指令 | [设置禁用](demo#auto-disable) |
-| delay | `number` | 300 | 可选,只有在 delay 时间经过后并且输入新值,才做搜索查询(`ms`) | [自定义模板展示](demo#auto-custom) |
-| disabledKey | `string` | -- | 可选,禁用单个选项,当传入资源 source 选项类型为对象,比如设置为'disabled',则当对象的 disable 属性为 true 时,比如{ label: xxx, disabled: true },该选项将禁用 | [设置禁用](demo#auto-disable) |
-| itemTemplate | `TemplateRef` | -- | 可选,自定义展示模板 | [自定义模板展示](demo#auto-custom) |
-| noResultItemTemplate | `TemplateRef` | -- | 可选,没有匹配项的展示结果 | [自定义模板展示](demo#auto-custom) |
-| formatter | `(item: any) => string` | [`defaultFormatter`](#defaultformatter) | 可选,格式化函数 | [设置禁用](demo#auto-disable) |
-| isSearching | `boolean` | false | 可选,是否在搜索中,用于控制 searchingTemplate 是否显示 | [自定义模板展示](demo#auto-custom) |
-| searchingTemplate | `TemplateRef` | -- | 可选,自定义搜索中显示模板 | [自定义模板展示](demo#auto-custom) |
-| sceneType | `string` | -- | 可选,值为 'select'、'suggest' | [启用懒加载](demo#auto-lazy-load) |
-| searchFn | `(term: string) => Observable` | [`defaultSearchFn`](#defaultsearchfn) | 可选,自定义搜索过滤 | [自定义数据匹配方法](demo#auto-object) |
-| tipsText | `string` | '最近输入' | 可选,提示文字 | [设置禁用](demo#auto-disable) |
-| latestSource | `Array` | -- | 可选, 最近输入 | [最近输入](demo#auto-latest) |
-| valueParser | `(item: any) => any` | [`defaultValueParse`](#defaultvalueparse) | 可选, 对选中后数据进行处理 | [启用懒加载](demo#auto-lazy-load) |
-| enableLazyLoad | `boolean` | false | 可选,是否允许懒加载 | [启用懒加载](demo#auto-lazy-load) |
-| dAutoCompleteWidth | `number` | -- | 可选,调整宽度(`px`) |
-
-## dAutoComplete 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :-----------------: | :-------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------- |
-| loadMore | `EventEmitter>` | 懒加载触发事件,配合`enableLazyLoad`使用,使用`$event.loadFinish()`关闭 loading 状态,其中\$event 为 AutoCompletePopupComponent 的实例 | [启用懒加载](demo#auto-lazy-load) |
-| selectValue | `EventEmitter` | 可选,选择选项之后的回调函数 | [启用懒加载](demo#auto-lazy-load) |
-| transInputFocusEmit | `EventEmitter<{focus: boolean, popupRef: ComponentRef}>` | 可选,Input focus 时回调函数 | [启用懒加载](demo#auto-lazy-load) |
-
-# 接口 & 类型定义
-### defaultSearchFn
-
-```ts
-defaultSearchFn = (term) => {
- return of(this.source.filter((lang) => this.formatter(lang).toLowerCase().indexOf(term.toLowerCase()) !== -1));
-};
-```
-term 为输入的关键字。
-
-### defaultFormatter
-```ts
-defaultFormatter = (item) => (item ? item.label || item.toString() : '');
-```
-item 为数据项。
-
-### defaultValueParse
-```ts
-defaultValueParse = (item) => item;
-```
-item 为数据项。
-
diff --git a/devui/auto-complete/doc/api-en.md b/devui/auto-complete/doc/api-en.md
deleted file mode 100644
index f47e9f3a307d4b761063733b4339cb2b8a361451..0000000000000000000000000000000000000000
--- a/devui/auto-complete/doc/api-en.md
+++ /dev/null
@@ -1,74 +0,0 @@
-# How to use
-
-Import into module
-
-```ts
-import { AutoCompleteModule } from 'ng-devui/auto-complete';
-```
-
-In the page
-
-```html
-
-```
-
-# dAutoComplete
-
-## dAutoComplete Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-------------------: | :-----------------------------------: | :---------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
-| source | `Array` | -- | Required. This parameter is optional if searchFn is specified. | [Basic usage](demo#basic-usage) |
-| allowEmptyValueSearch | `boolean` | false | Optional. indicates whether to display a search message when the bound text box value is empty. | [Customized template display](demo#auto-custom) |
-| appendToBody | `boolean` | false | Optional. Whether to append to body is displayed in the drop-down list box. | [Customized template display](demo#auto-custom) |
-| disabled | `boolean` | false | Optional. Indicating whether to disable commands. | [Disabled](demo#auto-disable) |
-| delay | `number` | 300 | Optional. The search is performed only after the delay time elapses and a new value is entered. (`ms`) | [Customized template display](demo#auto-custom) |
-| disabledKey | `string` | -- | Optional. Disable a single option. If the input resource source option type is an object, for example, disabled, and the disable attribute of the object is true, for example, {label: xxx, disabled: true}, this option will be disabled | [Disabled](demo#auto-disable) |
-| itemTemplate | `TemplateRef` | -- | Optional. Customized display template | [Customized template display](demo#auto-custom) |
-| noResultItemTemplate | `TemplateRef` | -- | Optional. No matching item is displayed. | [Customized template display](demo#auto-custom) |
-| formatter | `(item: any) => string` | [`defaultFormatter`](#defaultformatter) | Optional. Formatting function | [Disabled](demo#auto-disable) |
-| isSearching | `boolean` | false | Optional. indicating whether the search template is displayed. | [Customized template display](demo#auto-custom) |
-| searchingTemplate | `TemplateRef` | -- | Optional. The template is displayed in customized search. | [Customized template display](demo#auto-custom) |
-| sceneType | `string` | -- | Optional. The value can be select or suggestion. | [Enable lazy load](demo#auto-lazy-load) |
-| searchFn | `(term: string) => Observable` | [`defaultSearchFn`](#defaultsearchfn) | Optional. Customized search filtering | [Customized data matching method](demo#auto-object) |
-| tipsText | `string` | 'Latest input' | Optional. prompt text | [Disabled](demo#auto-disable) |
-| latestSource | `Array` | -- | Optional. Latest input | [Latest input](demo#auto-latest) |
-| valueParser | `(item: any) => any` | [`defaultValueParse`](#defaultvalueparse) | (optional) Process selected data | [Enable lazy load](demo#auto-lazy-load) |
-| enableLazyLoad | `boolean` | false | Optional. Whether lazy loading is allowed | [Enable lazy load](demo#auto-lazy-load) |
-| dAutoCompleteWidth | `number` | -- | Optional. Adjust the width (`px`) |
-
-## dAutoComplete Event
-
-| Parameter | Type | Description | Jump to Demo |
-| :-----------------: | :----------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------- |
-| loadMore | `EventEmitter>` | : optional. It is a lazy loading trigger event. It is used together with enableLazyLoad. \`$event.loadFinish()\` is used to disable the loading status. $event is the instance of the pop-up component AutoCompletePopupComponent | [Enable lazy load](demo#auto-lazy-load) |
-| selectValue | `EventEmitter` | (optional), callback function after selecting an option | [Enable lazy load](demo#auto-lazy-load) |
-| transInputFocusEmit | `EventEmitter<{focus: boolean, popupRef: ComponentRef}>` | (optional). Callback function for input focus | [Enable lazy load](demo#auto-lazy-load) |
-
-# Interface & Type Definition
-
-### defaultSearchFn
-
-```ts
-defaultSearchFn = (term) => {
- return of(this.source.filter((lang) => this.formatter(lang).toLowerCase().indexOf(term.toLowerCase()) !== -1));
-};
-```
-
-term indicates the entered keyword.
-
-### defaultFormatter
-
-```ts
-defaultFormatter = (item) => (item ? item.label || item.toString() : '');
-```
-
-item indicates a data item.
-
-### defaultValueParse
-
-```ts
-defaultValueParse = (item) => item;
-```
-
-item indicates a data item.
diff --git a/devui/avatar/avatar.tsx b/devui/avatar/avatar.tsx
deleted file mode 100644
index 9d3d0fb1e5595472a37c50d2ca0c4c1358a2a3bd..0000000000000000000000000000000000000000
--- a/devui/avatar/avatar.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-avatar',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-avatar
- }
- }
-})
\ No newline at end of file
diff --git a/devui/avatar/demo/avatar-demo.tsx b/devui/avatar/demo/avatar-demo.tsx
deleted file mode 100644
index deea987d7a727e4f430fe9d4c4b2e8c42a41e83a..0000000000000000000000000000000000000000
--- a/devui/avatar/demo/avatar-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-avatar-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-avatar-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/avatar/demo/avatar.route.ts b/devui/avatar/demo/avatar.route.ts
deleted file mode 100644
index 72dd63b30e31b99871ea13ec8065d4d2c1727b6f..0000000000000000000000000000000000000000
--- a/devui/avatar/demo/avatar.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import AvatarDemoComponent from './avatar-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: AvatarDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/avatar/doc/api-cn.md b/devui/avatar/doc/api-cn.md
deleted file mode 100644
index edc114bc88b0f79f613e7dd786ba6e5a477944e4..0000000000000000000000000000000000000000
--- a/devui/avatar/doc/api-cn.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { AvatarModule } from 'ng-devui/avatar';
-```
-
-在页面中使用:
-
-```xml
-
-```
-
-# d-avatar
-## d-avatar 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :--------: | :--------------------: | :--: | :-------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| name | `string` | -- | 必选,传入字符串用于制作头像 | [头像显示的基本规则](demo#basic-rules) |
-| gender | `string \| male \| female` | -- | 可选,根据性别区分头像颜色,传入 string,可以是`female \| male`的任意大小写形式 | [头像显示的基本规则](demo#basic-rules) |
-| width | `number` | 40 | 可选,设定头像的宽度, 单位为`px` | [头像的基础配置](demo#basic-configuration) |
-| height | `number` | 40 | 可选,设定头像的高度,单位为`px` | [头像的基础配置](demo#basic-configuration) |
-| isRound | `boolean` | true | 可选,是否显示为圆形头像 | [头像的基础配置](demo#basic-configuration) |
-| imgSrc | `string` | -- | 可选,传入自定义图片作为头像 | [头像的基础配置](demo#basic-configuration) |
-| customText | `string` | -- | 可选,传入自定义显示文字 | [头像的基础配置](demo#basic-configuration) |
-
-### 头像显示基本规则
-
-- `中文开头`:取传入字符串的最后两个字符
-- `英文开头`:取传入字符串的前面两个字符
-- `多个英文名连用`:取传入字符串的前两个英文名首字母
-- `非中英文开头`:取传入字符串的前两个字符
-
-### 头像特殊显示规则
-
-- 未传入`name`,`customText`,`imgSrc`,视为使用该头像的用户不存在
-- 传入`name`,`customText`,`imgSrc`的值为空,视为使用该头像的用户无昵称,使用默认头像
-
-### 显示优先级排序
-
-imgSrc > customText > name
diff --git a/devui/avatar/doc/api-en.md b/devui/avatar/doc/api-en.md
deleted file mode 100644
index 4d411154a66f7ece2438fef51ac266459eccd22b..0000000000000000000000000000000000000000
--- a/devui/avatar/doc/api-en.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { AvatarModule } from 'ng-devui/avatar';
-```
-
-In the page:
-
-```xml
-
-```
-# d-avatar
-## d-avatar Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------: | :--------------------: | :--: | :-------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| name | `string` | -- | Required. The input character string is used to create a profile picture. | [Basic Rules](demo#basic-rules) |
-| gender | `string \| male \| female` | -- | Optional. The profile picture color is differentiated by gender. The input string can be in the format of `female \| male`. | [Basic Rules](demo#basic-rules) |
-| width | `number` | 40 | Optional. Width of the avatar(`px`) | [Basic Configuration](demo#basic-configuration) |
-| height | `number` | 40 | Optional. Set the height of the avatar(`px`) | [Basic Configuration](demo#basic-configuration) |
-| isRound | `boolean` | true | Optional. Indicating whether to display a circular avatar | [Basic Configuration](demo#basic-configuration) |
-| imgSrc | `string` | -- | Optional. Import a customized image as the avatar | [Basic Configuration](demo#basic-configuration) |
-| customText | `string` | -- | Optional. Input the customized display text | [Basic Configuration](demo#basic-configuration) |
-
-
-### Basic Profile Picture Display Rules
-
-- `Begin with Chinese `: Use the last two characters.
-- `Begin with English `: Use the first two characters.
-- `Use multiple English names together`: Use the first two letters of the first English name.
-- `Not starting with Chinese or English `: Use the first two characters.
-
-### Special avatar display rules
-
-- If `name`, `customText`, and `imgSrc` are not transferred, the user who uses the avatar does not exist.
-- If the values of `name`, `customText`, and `imgSrc` are empty, the user who uses the avatar does not have a nickname and the default avatar is used.
-
-### Display Priority
-
-imgSrc > customText > name
diff --git a/devui/back-top/back-top.tsx b/devui/back-top/back-top.tsx
deleted file mode 100644
index 651d1a31d741b6f55d6fc9fc7b9667ca24a51a82..0000000000000000000000000000000000000000
--- a/devui/back-top/back-top.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-back-top',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-back-top
- }
- }
-})
\ No newline at end of file
diff --git a/devui/back-top/demo/back-top-demo.tsx b/devui/back-top/demo/back-top-demo.tsx
deleted file mode 100644
index c07b12b1ac04e528f81295ec204403d32f3b3ed8..0000000000000000000000000000000000000000
--- a/devui/back-top/demo/back-top-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-back-top-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-back-top-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/back-top/demo/back-top.route.ts b/devui/back-top/demo/back-top.route.ts
deleted file mode 100644
index da4819014fbac9a66399e051344c970501cb081c..0000000000000000000000000000000000000000
--- a/devui/back-top/demo/back-top.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import BackTopDemoComponent from './back-top-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: BackTopDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/back-top/doc/api-cn.md b/devui/back-top/doc/api-cn.md
deleted file mode 100644
index 5c56c387632a9874cb041aad45272669bb45a1d2..0000000000000000000000000000000000000000
--- a/devui/back-top/doc/api-cn.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { BackTopModule } from 'ng-devui/back-top';
-```
-
-在页面中使用:
-
-```xml
-
-```
-
-# d-back-top
-## d-back-top 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | |
-| customTemplate | `TemplateRef` | -- | 可选,自定义按钮样式 | [自定义](demo#back-top-customize) |
-| bottom | `string` | '50px' | 可选,按钮距离页面底部位置 | [自定义](demo#back-top-customize) |
-| right | `string` | '30px' | 可选,按钮距离页面右边距 | [自定义](demo#back-top-customize) |
-| visibleHeight | `number` | 300 | 可选,滚动高度达到visibleHeight所设值后展示回到顶部按钮,单位为`px` | [自定义](demo#back-top-customize) |
-| scrollTarget | `HTMLElement` | Window | 可选,触发滚动的对象 | [滚动容器](demo#back-top-scroll-container) |
-
-## d-back-top 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :------: | :-----------------: | :-------------------------------------------------------------------------------------- | ---------------------------------------------- |
-| backTopEvent | `EventEmitter` | 可选,点击回到顶部按钮的回调函数 | [基本用法](demo#back-top-basic) |
diff --git a/devui/back-top/doc/api-en.md b/devui/back-top/doc/api-en.md
deleted file mode 100644
index 3bfb59a502abf260ed0a24e4d400b1af2c941a74..0000000000000000000000000000000000000000
--- a/devui/back-top/doc/api-en.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { BackTopModule } from 'ng-devui/back-top';
-```
-
-In the page:
-
-```xml
-
-```
-# d-back-top
-## d-back-top Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | |
-| customTemplate | `TemplateRef` | -- | Optional. Custom button style | [Customize](demo#back-top-customize) |
-| bottom | `string` | '50px' | Optional. Position between the button and the bottom of the page | [Customize](demo#back-top-customize) |
-| right | `string` | '30px' | Optional. It is the right margin between the button and the page | [Customize](demo#back-top-customize) |
-| visibleHeight | `number` | 300 | Optional. When the scrolling height reaches the value of visibleHeight, the button is displayed to the top. The unit is `px` | [Customize](demo#back-top-customize) |
-| scrollTarget | `HTMLElement` | Window | Optional. Object that triggers scrolling | [Scrolling Container](demo#back-top-scroll-container) |
-
-## d-back-top Event
-
-| Parameter | Type | Description | Jump to Demo |
-| :------: | :-----------------: | :-------------------------------------------------------------------------------------- | ---------------------------------------------- |
-| backTopEvent | `EventEmitter` | Optional. Callback function for clicking the button to return to the top | [Basic Usage](demo#back-top-basic) |
diff --git a/devui/badge/badge.tsx b/devui/badge/badge.tsx
deleted file mode 100644
index 560de1b58c07938b4f9063af9d88ab441e229dd6..0000000000000000000000000000000000000000
--- a/devui/badge/badge.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-badge',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-badge
- }
- }
-})
\ No newline at end of file
diff --git a/devui/badge/demo/badge-demo.tsx b/devui/badge/demo/badge-demo.tsx
deleted file mode 100644
index d0ec38591178cebc2ad4aad63b08782fc1ed5cce..0000000000000000000000000000000000000000
--- a/devui/badge/demo/badge-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-badge-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-badge-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/badge/demo/badge.route.ts b/devui/badge/demo/badge.route.ts
deleted file mode 100644
index 7a25019903bd81c368e87d69e9843a853877d0a8..0000000000000000000000000000000000000000
--- a/devui/badge/demo/badge.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import BadgeDemoComponent from './badge-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: BadgeDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/badge/doc/api-cn.md b/devui/badge/doc/api-cn.md
deleted file mode 100644
index b0858655b111bf7ff1e5ccee2923ef78ae7c17ba..0000000000000000000000000000000000000000
--- a/devui/badge/doc/api-cn.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# 如何使用
-在module中引入:
-```ts
-import { BadgeModule } from 'ng-devui/badge';
-```
-
-在页面中使用:
-```html
-
- 未读消息
-
-
-```
-# Badge
-
-## d-badge 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | :--------------------------- |
-| count | `number` | -- | 可选,设置基本徽章和计数徽章中显示的数目 | [基本徽章](demo#badge-basic) |
-| maxCount | `number` | 99 | 可选,设置基本徽章和计数徽章最大可显示数目,当 count > maxCount 时显示maxCount+ | [基本徽章](demo#badge-basic) |
-| showDot | `boolean` | false | 可选,true时为点状徽章(有包裹)或状态徽章(无包裹),false时为基本徽章(有包裹)或计数徽章(无包裹) | [点状徽章](demo#badge-dot) |
-| status |`BadgeStatusType` | -- | 可选,状态色 'danger' \| 'warning' \| 'waiting' \| 'success' \| 'info' | [基本徽章](demo#badge-basic) |
-| badgePos | `BadgePositionType` | 'top-right' | 可选,徽标位置 'top-left' \| 'top-right' \| 'bottpm-left' \| ''bottom-right'' | [徽章位置](demo#position) |
-| offsetXY | `[number, number]` | -- | 可选,有包裹时徽标位置偏移量,格式为[x,y],单位为px。x为相对right偏移量(right: -x `px`),y为相对top偏移量(top: y `px`) | [自定义](demo#custom) |
-| bgColor | `string` | -- | 可选,自定义徽标色,此时status参数设置的徽章状态色失效 | [自定义](demo#custom) |
-| textColor | `string` | -- | 可选, 可自定义徽标文字颜色 | [自定义](demo#custom) |
diff --git a/devui/badge/doc/api-en.md b/devui/badge/doc/api-en.md
deleted file mode 100644
index 0d628a7a6505ab6968b0bf8ecfc89b39de75285e..0000000000000000000000000000000000000000
--- a/devui/badge/doc/api-en.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# How to use
-Import into module:
-```ts
-import { BadgeModule } from 'ng-devui/badge';
-```
-
-In the page:
-```html
-
- Unread messages
-
-
-```
-# Badge
-
-## d-badge Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | :--------------------------- |
-| count | `number` | -- | Optional. Set the number of basic badges and count badges to be displayed. | [Basic Badge](demo#badge-basic) |
-| maxCount | `number` | 99 | Optional. Sets the maximum number of basic and counting badges that can be displayed. When count is greater than maxCount, maxCount+ is displayed. | [Basic Badge](demo#badge-basic) |
-| showDot | `boolean` | false | Optional. The value true indicates the dot badge (with package) or status badge (without package). The value false indicates the basic badge (with package) or count badge (without package). | [Dotted Badge](demo#badge-dot) |
-| status |`BadgeStatusType` | -- | Optional. The status color is'danger'\| 'warning' \| 'waiting' \| 'success' \| 'info'. | [Basic Badge](demo#badge-basic) |
-| badgePos | `BadgePositionType` | 'top-right' | Optional. Logo position'top-left' \|'top-right' \|'bottpm-left' \|'bottom-right'. | [Badge Position](demo#position) |
-| offsetXY | `[number, number]` | -- |Optional. Indicates the logo position offset when there is a package. The format is [x,y], in px. This parameter is optional. x is the relative right offset (right: -x `px`), y is the relative top offset (top: y `px`). | [Custom](demo#custom) |
-| bgColor | `string` | -- | Optional. The badge color can be customized. In this case, the badge status color specified by status is invalid.| [Custom](demo#custom) |
-| textColor | `string` | -- | Optional. You can customize the logo text color. | [Custom](demo#custom) |
diff --git a/devui/breadcrumb/breadcrumb.tsx b/devui/breadcrumb/breadcrumb.tsx
deleted file mode 100644
index 97c04f954fab712044d93e69e4587b732627cada..0000000000000000000000000000000000000000
--- a/devui/breadcrumb/breadcrumb.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-breadcrumb',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-breadcrumb
- }
- }
-})
\ No newline at end of file
diff --git a/devui/breadcrumb/demo/breadcrumb-demo.tsx b/devui/breadcrumb/demo/breadcrumb-demo.tsx
deleted file mode 100644
index 3e6b9d400bbbf469d1d9ea144811a218515732ae..0000000000000000000000000000000000000000
--- a/devui/breadcrumb/demo/breadcrumb-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-breadcrumb-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-breadcrumb-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/breadcrumb/demo/breadcrumb.route.ts b/devui/breadcrumb/demo/breadcrumb.route.ts
deleted file mode 100644
index 969e8dad147abf567cd388ed42b6ef40f368d942..0000000000000000000000000000000000000000
--- a/devui/breadcrumb/demo/breadcrumb.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import BreadcrumbDemoComponent from './breadcrumb-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: BreadcrumbDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/breadcrumb/doc/api-cn.md b/devui/breadcrumb/doc/api-cn.md
deleted file mode 100644
index 9b26dd11d59caa800396dbd4485c981a463964b3..0000000000000000000000000000000000000000
--- a/devui/breadcrumb/doc/api-cn.md
+++ /dev/null
@@ -1,98 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { BreadcrumbModule } from 'ng-devui/breadcrumb';
-```
-
-在页面中使用:
-
-```xml
-//通过d-breadcrumb-item定义显示
-
-
-
-
-//通过传入source显示
-
-```
-# d-breadcrumb-item
-## d-breadcrumb-item 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------: | :-----------------: | :---: | :------------------------------------------------------ | -------------------------------------------------------------------------------------- |
-| showMenu | `boolean` | false | 可选,是否需要显示下拉箭头及下拉列表内容 | [可下拉的面包屑](demo#drop-down-breadcrumbs) |
-| menuList | [`Array`](#menuconfig) | -- | 可选,showMenu 为 true 时传入,下拉列表的显示内容 | [可下拉的面包屑](demo#drop-down-breadcrumbs) |
-| isSearch | `boolean` | false | 可选,showMenu 为 true 时传入,下拉列表是否需要搜索功能 | [可下拉的面包屑](demo#drop-down-breadcrumbs) |
-| customMenuTemplate | `TemplateRef` | -- | 可选,showMenu 为 true 时传入,自定义下拉列表 | [自定义下拉列表和分隔符的面包屑](demo#self-defined-breadcrumbs) |
-
-## d-breadcrumb-item 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :---------: | :-----------------: | :-----------------------------------------------------: | ------------------------------------------------------------------- |
-| toggleEvent | `EventEmitter` | dropdown 菜单展开和收起的事件,返回值为当前菜单是否打开 | [可下拉的面包屑](demo#drop-down-breadcrumbs) |
-
-# d-breadcrumb
-## d-breadcrumb 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-----------: | :-------------------: | :---: | :------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| separatorIcon | `TemplateRef` | ' / ' | 可选,自定义分隔符样式 | [自定义下拉列表和分隔符的面包屑](demo#self-defined-breadcrumbs) |
-| source | [`Array`](#sourceconfig) | [] | 可选,面包屑根据配置的 source 按照默认渲染方式显示 | [传入source](demo#source-config-breadcrumbs)
-
-# 接口 & 类型定义
-### MenuConfig
-
-```ts
-export interface MenuConfig {
- name: string;
- link: string;
- linkType?: 'hrefLink' | 'routerLink';
- target?: string;
-}
-```
-
-`name`:显示的名称
-
-`link`:跳转的路径,可为绝对路径与相对路径,注意需要与路由的配置一致
-
-`linkType`: 链接类型,默认为'hrefLink'方式,可选'hrefLink' 或 'routerLink'
-
-`target`: 规定在何处打开链接文档
-
-### SourceConfig
-
-```ts
-export interface SourceConfig {
- title: string;
- link?: string;
- showMenu?: boolean;
- isSearch?: boolean;
- target?: string;
- menuList?: Array;
- customMenuTemplate?: TemplateRef;
- noNavigation?: boolean;
- linkType?: 'hrefLink' | 'routerLink';
-}
-```
-
-`title`: 显示的名称
-
-`link`: 跳转的路径
-
-`showMenu`: 是否显示下拉列表
-
-`isSearch`: 下拉列表是否可搜索
-
-`menuList`: 下拉列表的数据,配置参考上方 MenuConfig
-
-`customMenuTemplate`: 自定义下拉列表
-
-`noNavigation`: 链接是否不可跳转,一般用于当前所处位置不可跳转的配置
-
-`linkType`: 链接类型,默认为'hrefLink'方式,可选'hrefLink' 或 'routerLink'
-
-`target`: 规定在何处打开链接文档
-
-备注:source 数据改变使用`Object.assign`方式触发变更检测
diff --git a/devui/breadcrumb/doc/api-en.md b/devui/breadcrumb/doc/api-en.md
deleted file mode 100644
index 7bde383a9a3a066eecd152ccf603c12981f5f4fe..0000000000000000000000000000000000000000
--- a/devui/breadcrumb/doc/api-en.md
+++ /dev/null
@@ -1,98 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { BreadcrumbModule } from 'ng-devui/breadcrumb';
-```
-
-In the page:
-
-```xml
-//use d-breadcrumb-item
-
-
-
-
-//use source
-
-```
-# d-breadcrumb-item
-## d-breadcrumb-item Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :----------------: | :-----------------: | :---: | :------------------------------------------------------ | -------------------------------------------------------------------------------------- |
-| showMenu | `boolean` | false | Optional. Indicating whether to display the drop-down arrow and content in the drop-down list | [Breadcrumbs with Dropdown menu](demo#drop-down-breadcrumbs) |
-| menuList | [`Array`](#menuconfig) | -- | Optional. This parameter is transferred when showMenu is set to true. Content displayed in the drop-down list box | [Breadcrumbs with Dropdown menu](demo#drop-down-breadcrumbs) |
-| isSearch | `boolean` | false | Optional. This parameter is transferred when showMenu is set to true. Whether the search function is required in the drop-down list box | [Breadcrumbs with Dropdown menu](demo#drop-down-breadcrumbs) |
-| customMenuTemplate | `TemplateRef` | -- | Optional. This parameter is transferred when showMenu is set to true. Customized drop-down list box | [Customize](demo#self-defined-breadcrumbs) |
-
-## d-breadcrumb-item Event
-
-| Event | Type | Description | Jump to Demo |
-| :---------: | :-----------------: | :-----------------------------------------------------: | ------------------------------------------------------------------- |
-| toggleEvent | `EventEmitter` | Event of expanding or collapsed Dropdown menus. The return value is whether the current menu is opened | [Breadcrumbs with Dropdown menu](demo#drop-down-breadcrumbs) |
-
-# d-breadcrumb
-## d-breadcrumb Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-----------: | :-------------------: | :---: | :------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| separatorIcon | `TemplateRef` | ' / ' | Optional. Custom separator style | [Customize](demo#self-defined-breadcrumbs) |
-| source | [`Array`](#sourceconfig) | [] | Optional. The breadcrumbs are displayed in the default rendering mode based on the configured source | [Source Config](demo#source-config-breadcrumbs) |
-
-# Interface & Type Definition
-### MenuConfig
-
-```ts
-export interface MenuConfig {
- name: string;
- link: string;
- linkType?: 'hrefLink' | 'routerLink';
- target?: string;
-}
-```
-
-`name`: Indicates the name to be displayed.
-
-`link`: Indicates the jump path, which can be an absolute path or a relative path. The path must be the same as the route configuration.
-
-`linkType`: Link type. The default value is hrefLink. The value can be hrefLink or routerLink.
-
-`target`: Specifies where to open the linked document.
-
-### SourceConfig
-
-```ts
-export interface SourceConfig {
- title: string;
- link?: string;
- showMenu?: boolean;
- isSearch?: boolean;
- target?: string;
- menuList?: Array;
- customMenuTemplate?: TemplateRef;
- noNavigation?: boolean;
- linkType?: 'hrefLink' | 'routerLink';
-}
-```
-
-`title`: Name to be displayed
-
-`link`: Indicates the path to be redirected.
-
-`showMenu`: Indicates whether to display the drop-down list box.
-
-`isSearch`: Indicates whether the drop-down list box can be searched.
-
-`menuList`: Data in the drop-down list box. For details, see MenuConfig.
-
-`customMenuTemplate`: Customized drop-down list box
-
-`noNavigation`: Indicates whether a link cannot be redirected. This parameter is used to configure the link that cannot be redirected to the current location.
-
-`linkType`: Link type. The default value is hrefLink. The value can be hrefLink or routerLink.
-
-`target`: Specifies where to open the linked document.
-
-Note: Source data changes use the `Object.assign` method to trigger change detection.
diff --git a/devui/button/button.tsx b/devui/button/button.tsx
deleted file mode 100644
index 166d0c08f3a5edec5a60f7a40d27889457e96261..0000000000000000000000000000000000000000
--- a/devui/button/button.tsx
+++ /dev/null
@@ -1,126 +0,0 @@
-import { computed, defineComponent, ref } from "vue";
-
-export type IButtonType = 'button' | 'submit' | 'reset';
-export type IButtonStyle = 'common' | 'primary' | 'text' | 'text-dark' | 'danger';
-export type IButtonPosition = 'left' | 'right' | 'default';
-export type IButtonSize = 'lg' | 'md' | 'sm' | 'xs';
-
-import './button.scss';
-
-export default defineComponent({
- name: 'd-button',
- inheritAttrs: false,
- props: {
- id: {
- type: [String, Number]
- },
- type: {
- type: String as () => IButtonType,
- default: 'button'
- },
- bsStyle: {
- type: String as () => IButtonStyle,
- default: 'primary'
- },
- bsSize: {
- type: String as () => IButtonSize,
- default: 'md'
- },
- bsPosition: {
- type: String as () => IButtonPosition,
- default: 'default'
- },
- bordered: {
- type: Boolean,
- default: false
- },
- icon: {
- type: String,
- default: ''
- },
- showLoading: {
- type: Boolean,
- default: false
- },
- width: {
- type: Number,
- default: 0
- },
- disabled: {
- type: Boolean,
- default: false
- },
- autofocus: {
- type: Boolean,
- default: false
- },
- btnClick: {
- type: Function as unknown as () => ((event: MouseEvent) => void)
- }
- },
- setup(props, ctx) {
- const buttonContent = ref(null);
-
- const onClick = (e: MouseEvent) => {
- if (props.showLoading) {
- return;
- }
- props.btnClick?.(e);
- }
-
- const hasContent = computed(() => {
- return buttonContent.value && buttonContent.value.innerHTML.trim();
- })
-
- const btnClazz = computed(() => {
- const {bsStyle, bsSize, bsPosition, bordered, icon} = props;
- const origin = `devui-btn devui-btn-${ bsStyle } devui-btn-${ bsSize } devui-btn-${ bsPosition }`;
- const broderedClazz = bordered ? 'bordered' : '';
- const btnIcon = !!icon && !hasContent.value && bsStyle !== 'primary' ? 'd-btn-icon' : '';
- const btnIconWrap = !!icon ? 'd-btn-icon-wrap' : '';
- return `${origin} ${broderedClazz} ${btnIcon} ${btnIconWrap}`;
- });
-
- const iconClazz = computed(() => {
- if (!props.icon) {
- return;
- }
- const origin = `devui-icon-fix icon ${ props.icon }`;
- if (hasContent.value) {
- return `${origin} clear-right-5`;
- } else {
- return origin;
- }
- });
-
- return () => {
- const {
- icon,
- type,
- disabled,
- showLoading,
- width
- } = props;
- const hasIcon = !!icon;
- return (
-
- {hasIcon ? ( ) : null}
-
- {ctx.slots.default?.()}
-
-
- );
- }
- }
-});
\ No newline at end of file
diff --git a/devui/button/demo/button-demo.tsx b/devui/button/demo/button-demo.tsx
deleted file mode 100644
index a751cc43b1101b072d3eaf0ec58514051b277eb1..0000000000000000000000000000000000000000
--- a/devui/button/demo/button-demo.tsx
+++ /dev/null
@@ -1,32 +0,0 @@
-import { defineComponent } from 'vue'
-import CodeBox from '../../shared/devui-codebox/devui-codebox'
-import ButtonPrimary from './primary/primary'
-import ButtonCommon from './common/common'
-import PrimaryCode from './primary/primary.tsx?raw'
-import CommonCode from './common/common.tsx?raw'
-
-export default defineComponent({
- name: 'd-button-demo',
- setup() {
- const primarySource: any[] = [{title: 'TSX', language: 'TSX', code: PrimaryCode}];
- const commonSource: any[] = [{title: 'TSX', language: 'TSX', code: CommonCode}];
- return () => {
- return
- }
- }
-})
\ No newline at end of file
diff --git a/devui/button/demo/button.route.ts b/devui/button/demo/button.route.ts
deleted file mode 100644
index 50144c127b1af69940da6dac131899b90a25ef7e..0000000000000000000000000000000000000000
--- a/devui/button/demo/button.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import ButtonDemoComponent from './button-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: ButtonDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/button/demo/common/common.tsx b/devui/button/demo/common/common.tsx
deleted file mode 100644
index 02a9125ca92bf1cda2d3654de1dc996175860e10..0000000000000000000000000000000000000000
--- a/devui/button/demo/common/common.tsx
+++ /dev/null
@@ -1,15 +0,0 @@
-import { defineComponent } from 'vue';
-import Button from '../../button';
-
-export default defineComponent({
- name: 'd-button-common',
- setup() {
- return () => {
- return (
-
- Common
-
- );
- }
- }
-});
\ No newline at end of file
diff --git a/devui/button/demo/primary/primary.tsx b/devui/button/demo/primary/primary.tsx
deleted file mode 100644
index 2a1bba16958e0a7eb359d35685f85ddae86de8b1..0000000000000000000000000000000000000000
--- a/devui/button/demo/primary/primary.tsx
+++ /dev/null
@@ -1,16 +0,0 @@
-import { defineComponent } from 'vue';
-import Button from '../../button';
-
-export default defineComponent({
- name: 'd-button-primary',
- setup() {
- return () => {
- return (
-
- primary
- Disabled
-
- );
- }
- }
-});
\ No newline at end of file
diff --git a/devui/button/doc/api-cn.md b/devui/button/doc/api-cn.md
deleted file mode 100644
index 7751ae0e48bf8eb3d43f06c0724e9b8381d94e12..0000000000000000000000000000000000000000
--- a/devui/button/doc/api-cn.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { ButtonModule } from 'ng-devui/button';
-```
-
-在页面中使用:
-
-```xml
-
-```
-# d-button
-## d-button 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | ---------------------------------------------- |
-| id | `string` | -- | 可选,button id | [主要按钮](demo#button-primary) |
-| type | [`IButtonType`](#ibuttontype) | 'button' | 可选,类型 `'button' \| 'submit' \| 'reset' ` | [警示按钮](demo#button-danger) |
-| bsStyle | [`IButtonStyle`](#ibuttonstyle) | 'primary' | 可选,风格 `'primary' \| 'common' \| 'text' \| 'text-dark' \| 'danger'` | [次要按钮](demo#button-common) |
-| bsSize | [`IButtonSize`](#ibuttonsize) | 'md' | 可选,大小 `'lg' \| 'md' \| 'sm' \| 'xs'` | [按钮尺寸](demo#button-size) |
-| bsPosition |[`IButtonPosition`](#ibuttonposition) |'default' | 可选,按钮位置 `'default' \| 'left' \| 'right'` | [左右按钮](demo#button-left-right) |
-| bordered | `boolean` | false | 可选,是否有边框 | [自动获得焦点](demo#button-auto-focus) |
-| icon | `string` | -- | 可选, 自定义按钮图标 | [图标按钮](demo#button-icon) |
-| showLoading | `boolean` | false | 可选,是否显示加载提示 | [加载中状态](demo#button-loading) |
-| width | `number` | -- | 可选,button 宽度 | [主要按钮与次要按钮组合](demo#button-primary-and-common) |
-| disabled | `boolean` | false | 可选,是否禁用 button | [主要按钮](demo#button-primary) |
-| autofocus | `boolean` | false | 可选,按钮加载时是否自动获得焦点 | [自动获得焦点](demo#button-auto-focus) |
-
-## d-button 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :------: | :-----------------: | :-------------------------------------------------------------------------------------- | ---------------------------------------------- |
-| btnClick | `EventEmitter` | 可选,button 点击事件,解决disabled还会触发 click, 返回点击下后鼠标事件对象 | [加载中状态](demo#button-loading) |
-
-# d-button-group
-## d-button-group 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | ---------------------------------------------- |
-| size | [`IButtonGroupSize`](#ibuttongroupsize) | 'md' | 可选,大小`'lg' \| 'md' \| 'sm' \| 'xs'` | [按钮组](demo#button-groups) |
-
-
-# 接口 & 类型定义
-### IButtonType
-
-默认值为'button',表示button类型
-
-```ts
-export type IButtonType = 'button' | 'submit' | 'reset';
-```
-
-### IButtonStyle
-
-默认值为'primary',表示button风格
-
-```ts
-export type IButtonStyle = 'common' | 'primary' | 'text' | 'text-dark' | 'danger';
-```
-
-### IButtonPosition
-
-默认值为'default',表示button位置
-
-```ts
-export type IButtonPosition = 'left' | 'right' | 'default';
-```
-
-### IButtonSize
-默认值为'md',表示button尺寸
-
-```ts
-export type IButtonSize = 'lg' | 'md' | 'sm' | 'xs';
-```
-
-### IButtonGroupSize
-默认值为'md',表示button-group尺寸
-
-```ts
-export type IButtonGroupSize = 'lg' | 'md' | 'sm' | 'xs';
-```
diff --git a/devui/button/doc/api-en.md b/devui/button/doc/api-en.md
deleted file mode 100644
index a47f96cafe8682f3218ef2e02019927a4a4b101d..0000000000000000000000000000000000000000
--- a/devui/button/doc/api-en.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { ButtonModule } from 'ng-devui/button';
-```
-
-In the page:
-
-```xml
-
-```
-# d-button
-## d-button Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | |
-| id | `string` | -- | Optional. button ID | [Primary Buttons](demo#button-primary)|
-| type | [`IButtonType`](#ibuttontype) | 'button' | Optional. The type is `'button' \| 'submit' \| 'reset'` |[Danger Buttons](demo#button-danger) |
-| bsStyle | [`IButtonStyle`](#ibuttonstyle) | 'primary' | Optional. The style is `'primary' \| 'common' \| 'text' \| 'text-dark' \| 'danger'` | [Common Buttons](demo#button-common) |
-| bsSize | [`IButtonSize`](#ibuttonsize) | 'md' | Optional. The size is `'lg' \| 'md' \| 'sm' \| 'xs'` | [Button Size](demo#button-size) |
-| bsPosition |[`IButtonPosition`](#ibuttonposition) |'default'| Optional. The button position is `'default' \| 'left' \| 'right'` | [Left & Right Buttons](demo#button-left-right) |
-| bordered | `boolean` | false | Optional. Indicating whether a border exists | [Auto-focus Buttons](demo#button-auto-focus)|
-| icon | `string` | -- | Optional. Customized button icon | [Icon Buttons](demo#button-icon) |
-| showLoading | `boolean` | false | Optional. Indicating whether to display the loading prompt | [Loading Buttons](demo#button-loading) |
-| width | `number` | -- | Optional. Button width |[Combinations of Primary & Common Buttons](demo#button-primary-and-common) |
-| disabled | `boolean` | false | Optional. Indicating whether to disable the button | [Primary Buttons](demo#button-primary) |
-| autofocus | `boolean` | false | Optional. Indicating whether to automatically obtain the focus during button loading | [Auto-focus Buttons](demo#button-auto-focus) |
-
-## d-button Event
-
-| Parameter | Type | Description | Jump to Demo |
-| :------: | :-----------------: | :-------------------------------------------------------------------------------------- | ---------------------------------------------- |
-| btnClick | `EventEmitter` | Optional. Solve the click event is triggered when button is disabled. After the mouse is clicked, the mouse event object is returned | [Loading Buttons](demo#button-loading)|
-
-# d-button-group
-
-## d-button-group parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :---------: | :------------: | :-----: | :--------------------------------------------------------------------------- | |
-| size | [`IButtonGroupSize`](#ibuttongroupsize) | 'md' | Optional. The size is `'lg' \| 'md' \| 'sm' \| 'xs'` | [Button Group](demo#button-groups) |
-
-# Interface & Type Definition
-### IButtonType
-
-The default value is 'button', indicating the button type.
-
-```ts
-export type IButtonType = 'button' | 'submit' | 'reset';
-```
-
-### IButtonStyle
-
-The default value is 'primary', indicating the button style.
-
-```ts
-export type IButtonStyle = 'common' | 'primary' | 'text' | 'text-dark' | 'danger';
-```
-
-### IButtonPosition
-
-The default value is 'default', indicating the button position.
-
-```ts
-export type IButtonPosition = 'left' | 'right' | 'default';
-```
-
-### IButtonSize
-The default value is 'md', indicating the button size.
-
-```ts
-export type IButtonSize = 'lg' | 'md' | 'sm' | 'xs';
-```
-
-### IButtonGroupSize
-The default value is 'md', indicating the button-group size.
-
-```ts
-export type IButtonGroupSize = 'lg' | 'md' | 'sm' | 'xs';
-```
diff --git a/devui/button/index.ts b/devui/button/index.ts
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/devui/card/card.tsx b/devui/card/card.tsx
deleted file mode 100644
index 2c415e66f7737dc9163c9a9c5177b84192e69a49..0000000000000000000000000000000000000000
--- a/devui/card/card.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-card',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-card
- }
- }
-})
\ No newline at end of file
diff --git a/devui/card/demo/card-demo.tsx b/devui/card/demo/card-demo.tsx
deleted file mode 100644
index b7991a97c2a65ae2dd0ea4720c32296d5920f4db..0000000000000000000000000000000000000000
--- a/devui/card/demo/card-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-card-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-card-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/card/demo/card.route.ts b/devui/card/demo/card.route.ts
deleted file mode 100644
index 86ce97c259154656e7315733696230037e052a38..0000000000000000000000000000000000000000
--- a/devui/card/demo/card.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import CardDemoComponent from './card-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: CardDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/card/doc/api-cn.md b/devui/card/doc/api-cn.md
deleted file mode 100644
index c514fc1bb71a4954af2977ce1f318e29f374368c..0000000000000000000000000000000000000000
--- a/devui/card/doc/api-cn.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { CardModule } from 'ng-devui/card';
-```
-
-在页面中使用:
-
-```xml
-
-
-
-
-
-
-
-
-```
-# d-card
-## d-card 区块划分
-
-| 标签 | 描述 |
-| :------------: | :--------------------------------------------------------------------------------------------: |
-| d-card-header | 标题区域,作为概览使用,通常包含标题`d-card-title`,副标题`d-card-subtitle`,头像`dAvatar`等元素 |
-| [dCardMeta] | 媒体信息区域,可放置多种媒体,包括图片、图形、视频。 |
-| d-card-content | 辅助信息区,分析和支撑标题作用,可以包含摘要或者说明。 |
-| d-card-actions | 决策作用,可以包含操作文本或者操作图标。 |
-
-## d-card-header 区块划分
-
-| 标签 | 描述 |
-| :-------------: | :------------------------------------: |
-| d-card-title | 卡片的主要内容描述,一般定义为卡片名称 |
-| [dCardAvatar] | 头像区域,用作头像等图片展示 |
-| d-card-subtitle | 对标题的补充,可包含标签等信息 |
-
-## d-card-actions 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---: | :------: | :---: | :-------------: | --------- |
-| align | `'start' \| 'end' \|'spaceBetween'` | 'start' | 可选,操作区域对齐方式,分别对应起始对齐,尾部对齐,拉伸对齐 | [基本用法](demo#card-basic) |
diff --git a/devui/card/doc/api-en.md b/devui/card/doc/api-en.md
deleted file mode 100644
index ecd8229048db8d5a3e28e87fa5e3c1f7cc8894bb..0000000000000000000000000000000000000000
--- a/devui/card/doc/api-en.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { CardModule } from 'ng-devui/card';
-```
-
-In the page:
-
-```xml
-
-
-
-
-
-
-
-
-```
-# d-card
-## d-card Block Division
-
-| Tag | Description |
-| :------------: | :--------------------------------------------------------------------------------------------: |
-| d-card-header | Title area, which is used as an overview. It usually contains elements such as title `d-card-title`, subtitle `d-card-subtitle`, and avatar `dAvatar` |
-| [dCardMeta] | Media information area, which can store multiple media, including pictures, graphics, and videos |
-| d-card-content | Auxiliary information area, which analyzes and supports the title function. It can contain abstracts or descriptions |
-| d-card-actions | Decision-making function, which can contain operation text or operation icons |
-
-## d-card-header Block Division
-
-| Tag | Description |
-| :-------------: | :------------------------------------: |
-| d-card-title | Card content description, which is generally defined as the card name |
-| [dCardAvatar] | Avatar area, which is used to display images such as avatars |
-| d-card-subtitle | Supplement to the title, including tag information |
-
-## d-card-actions Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :---: | :------: | :---: | :-------------: | --------- |
-| align | `'start'\|'end'\|'spaceBetween'` | 'start' | Optional. Operation area alignment mode, which corresponds to start alignment, tail alignment, and stretch alignment | [Basic usage](demo#card-basic) |
diff --git a/devui/carousel/carousel.tsx b/devui/carousel/carousel.tsx
deleted file mode 100644
index 9c1640c26cf48970292eae55dcffbfea81eca000..0000000000000000000000000000000000000000
--- a/devui/carousel/carousel.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-carousel',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-carousel
- }
- }
-})
\ No newline at end of file
diff --git a/devui/carousel/demo/carousel-demo.tsx b/devui/carousel/demo/carousel-demo.tsx
deleted file mode 100644
index 4bb23c7ecce97b6cfd0beee80fd56d76e5b60b38..0000000000000000000000000000000000000000
--- a/devui/carousel/demo/carousel-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-carousel-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-carousel-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/carousel/demo/carousel.route.ts b/devui/carousel/demo/carousel.route.ts
deleted file mode 100644
index d82a897450de2717de2f63b4dd30e69c6907c99b..0000000000000000000000000000000000000000
--- a/devui/carousel/demo/carousel.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import CarouselDemoComponent from './carousel-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: CarouselDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/carousel/doc/api-cn.md b/devui/carousel/doc/api-cn.md
deleted file mode 100644
index 05132f505c917dcf2073fa263a70029ecc6cbf70..0000000000000000000000000000000000000000
--- a/devui/carousel/doc/api-cn.md
+++ /dev/null
@@ -1,40 +0,0 @@
-# 如何使用
-在module中引入:
-```ts
-import { CarouselModule } from 'ng-devui/carousel';
-```
-在页面中使用:
-```html
-
-
-
-```
-
-# d-carousel
-
-## d-carousel 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :----------: | :--------------------------: | :------: | :---------------------------------------------- | ------------------------------------------------ |
-| arrowTrigger | `'hover'\|'never'\|'always'` | 'hover' | 可选,指定切换箭头显示方式 | [指示器&切换箭头](demo#trigger-usage) |
-| autoplay | `boolean` | false | 可选,是否自动轮播 | [自动轮播](demo#autoplay-usage) |
-| autoplaySpeed | `number` | 3000 | 可选,配合`autoplay`使用,自动轮播速度,单位 ms | [自动轮播](demo#autoplay-usage) |
-| height | `string` | '100%' | 可选,轮播容器高度 | [基本用法](demo#basic-usage) |
-| showDots | `boolean` | true | 可选,是否显示面板指示器 | [自动轮播](demo#autoplay-usage) |
-| dotPosition | `'top'\|'bottom'` | 'bottom' | 可选,面板指示器位置 | [指示器&切换箭头](demo#trigger-usage) |
-| dotTrigger | `'click'\|'hover'` | 'click' | 可选,指示器触发轮播方式 | [指示器&切换箭头](demo#trigger-usage) |
-| activeIndex | `number` | 0 | 可选,初始化激活卡片索引,从 0 开始,支持`[(activeIndex)]`双向绑定 | [基本用法](demo#basic-usage) |
-
-## d-carousel 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :----------------: | :---------------------: | :-----------------------------------------: | ------------------------------------------------- |
-| activeIndexChange | `EventEmitter` | 卡片切换时,返回当前卡片的索引,从0开始 | [基本用法](demo#basic-usage) |
-
-## d-carousel 方法
-
-| 方法 | 描述 | 跳转 Demo |
-| :---------: | :---------------------------------- | :----------------------------- |
-| prev() | 切换到上一张卡片 | [自定义操作](demo#custom-usage) |
-| next() | 切换到下一张卡片 | [自定义操作](demo#custom-usage) |
-| goTo(index) | 切换到指定索引的卡片,索引从 0 开始 | [自定义操作](demo#custom-usage) |
diff --git a/devui/carousel/doc/api-en.md b/devui/carousel/doc/api-en.md
deleted file mode 100644
index f9a539ccfa8b446296921b46e1c733a44f129a48..0000000000000000000000000000000000000000
--- a/devui/carousel/doc/api-en.md
+++ /dev/null
@@ -1,40 +0,0 @@
-# How To Use
-Import in module:
-```ts
-import { CarouselModule } from 'ng-devui/carousel';
-```
-In the page:
-```html
-
-
-
-```
-
-# d-carousel
-
-## d-carousel parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-----------: | :--------------------------: | :-----: | :---------------------------------------------- | ------------------------------------------------ |
-| arrowTrigger | `'hover'\|'never'\|'always'` | 'hover' | Optional. Specifying the display mode of the switching arrow | [Indicator & Toggle Arrow](demo#trigger-usage) |
-| autoplay | `boolean` | false | Optional. Indicating whether to enable automatic NVOD. | [Automatic NVOD](demo#autoplay-usage) |
-| autoplaySpeed | `number` | 3000 | Optional. Automatic NVOD speed, in ms. This parameter is used together with `autoplay'. | [Automatic NVOD](demo#autoplay-usage) |
-| height | `string` | '100%' | Optional. NVOD container height | [Basic usage](demo#basic-usage) |
-| showDots | `boolean` | true | Optional. Indicating whether to display the panel indicator | [Automatic NVOD](demo#autoplay-usage) |
-| dotPosition | `'top'\|'bottom'` |'bottom' | Optional. Indicator position on the panel | [Indicator & Toggle Arrow](demo#trigger-usage) |
-| dotTrigger | `click'\|'hover'` | 'click' | Optional. The indicator triggers the NVOD mode | [Indicator & Toggle Arrow](demo#trigger-usage) |
-| activeIndex | `number` | 0 | Optional. Initializes the activation card index, starting from 0. `[(activeIndex)]` bidirectional binding is supported. | [Basic usage](demo#basic-usage) |
-
-## d-carousel event
-
-| Event | Type | Description | Jump to Demo |
-| :----------------: | :---------------------: | :-----------------------------------------: | ------------------------------------------------- |
-| activeIndexChange | `EventEmitter` | Returns the index of the current card when the card is switched. The index starts from 0. | [Basic usage](demo#basic-usage) |
-
-## d-carousel method
-
-| Method | Description | Jump to Demo |
-| :---------: | :---------------------------------- | :----------------------------- |
-| prev() | Switch to the previous card | [Custom Operations](demo#custom-usage) |
-| next() | Switch to the next card | [Custom Operations](demo#custom-usage) |
-| goTo(index) | Switch to the card with a specified index. The index starts from 0. | [Custom Operations](demo#custom-usage) |
diff --git a/devui/cascader/cascader.tsx b/devui/cascader/cascader.tsx
deleted file mode 100644
index 9d6eb2805b215290411b6ec8bf03de3a8670554f..0000000000000000000000000000000000000000
--- a/devui/cascader/cascader.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-cascader',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-cascader
- }
- }
-})
\ No newline at end of file
diff --git a/devui/cascader/demo/cascader-demo.tsx b/devui/cascader/demo/cascader-demo.tsx
deleted file mode 100644
index 7e7bd98c574308f4a2d9ca5c6d407be34cae753e..0000000000000000000000000000000000000000
--- a/devui/cascader/demo/cascader-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-cascader-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-cascader-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/cascader/demo/cascader.route.ts b/devui/cascader/demo/cascader.route.ts
deleted file mode 100644
index 06c313d8c2b394905d252546515f2eeeeae2ec8d..0000000000000000000000000000000000000000
--- a/devui/cascader/demo/cascader.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import CascaderDemoComponent from './cascader-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: CascaderDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/cascader/doc/api-cn.md b/devui/cascader/doc/api-cn.md
deleted file mode 100644
index ba6ce9781cdae92dcccaec24104597dcf627caf2..0000000000000000000000000000000000000000
--- a/devui/cascader/doc/api-cn.md
+++ /dev/null
@@ -1,66 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { CascaderModule } from 'ng-devui/cascader';
-```
-
-在页面中使用:
-
-```
-
-```
-
-# d-cascader
-
-## d-cascader 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :------------------: | :------------------------------------------------------------------------------: | :------------------------------: | :---------------------------------------------------------------------------------- | ---------------------------------- |
-| trigger | `'hover'\|'click'` | 'hover' | 可选,指定展开次级菜单的方式 | [基本用法](demo#basic-usage) |
-| options | [`CascaderItem`](#cascaderitem)`[]` | [] | 必选,级联器的菜单信息 | [基本用法](demo#basic-usage) |
-| placeholder | `string` | '' | 可选,没有选择时的输入框展示信息 | [基本用法](demo#basic-usage) |
-| width | `number` | 200 | 可选,单位 px,用于控制组件输入框宽度和下拉的宽度 | [基本用法](demo#basic-usage) |
-| dropdownWidth | `number` | width | 可选,单位 px,控制下拉列表的宽度,默认和组件输入框 width 相等 | [基本用法](demo#basic-usage) |
-| disabled | `boolean` | false | 可选,级联器是否禁用 | [基本用法](demo#basic-usage) |
-| showPath | `boolean` | false | 可选,级联器选中项是否显示路径,仅单选模式下生效 | [基本用法](demo#basic-usage) |
-| allowClear | `boolean` | false | 可选,是否允许清除 | [基本用法](demo#basic-usage) |
-| multiple | `boolean` | false | 可选,级联器是否开启多选模式,开启后为 checkbox 选择 | [多选模式](demo#multiple-cascader) |
-| canSelectParent | `boolean` | false | 可选,级联器是否允许选择父级节点 | [父级可选](demo#parent-cascader) |
-| checkboxRelation | `{upward: boolean, downward: boolean}` | `{upward: true, downward: true}` | 可选,级联器多选下高级状态配置, upward 为状态向父级更新,downward 为状态向子级更新 | [父级可选](demo#parent-cascader) |
-| allowSearch | `boolean` | false | 可选,级联器是否开启搜索模式 | [搜索模式](demo#search-cascader) |
-| dropDownItemTemplate | `TemplateRef` | false | 可选,传入一个渲染 dropItem 的固定模板 | [模板类型](demo#template-cascader) |
-| loadChildrenFn | `(value: CascaderItem) => Promise \| Observable` | null | 可选,传入懒加载的加载子节点的函数 | [点击加载](demo#lazyload-cascader) |
-| dropdownPanelClass | `string` | - | 下拉面板的 class,用于用户选中某个面板 | [基本用法](demo#basic-usage) |
-
-## d-cascader 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :---------: | :---------------------: | :------------------------------------------- | ---------------------------------- |
-| toggleEvent | `EventEmitter` | 可选,下拉开关触发事件,返回是否开启的布尔值 | [多选模式](demo#multiple-cascader) |
-
-## ngModel
-
-ngModel 在单选模式绑定为选中项的路径值数组'Array',例如[1,2]。
-
-ngModel 在多选模式下绑定为所有选中项的路径数组的数组'Array[]', 例如[[1,2], [1,3], [1,4,5]]。
-
-ngModelChange 可监听其变化。
-
-# 接口 & 类型定义
-
-### CascaderItem
-
-```
-interface CascaderItem {
- label: string;
- value: number | string;
- isLeaf?: boolean;
- children?: CascaderItem[];
- disabled?: boolean;
- icon?: string;
- // 用户可以传入自定义属性,并在dropDownItemTemplate中使用
- [prop: string]: any;
-}
-```
diff --git a/devui/cascader/doc/api-en.md b/devui/cascader/doc/api-en.md
deleted file mode 100644
index 479940f2848a8791e67173fcd993d087a81c1f7d..0000000000000000000000000000000000000000
--- a/devui/cascader/doc/api-en.md
+++ /dev/null
@@ -1,66 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { CascaderModule } from ' ng-devui/cascader';
-```
-
-In the page:
-
-```
-
-```
-
-# d-cascader
-
-## d-cascader parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :------------------: | :------------------------------------------------------------------------------: | :------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
-| trigger | `hover'\|'click'` | 'hover' | Optional, specifying the mode for expanding submenu | [Basic usage](demo#basic-usage) |
-| options | [`CascaderItem`](#cascaderitem)`[]` | [] | Mandatory: indicates the menu information of the cascader. | [Basic usage](demo#basic-usage) |
-| placeholder | `string` | '' | Optional, This parameter is used to display information in the text box if no value is selected. | [Basic usage](demo#basic-usage) |
-| width | `number` | 200 | Optional, The unit is px. It is used to control the width of the widget input box and the width of the drop-down list box. | [Basic usage](demo#basic-usage) |
-| dropdownWidth | `number` | width | Optional, The unit is px. Width of the drop-down list box. The default value is the same as the width of the gadget input box. | [Basic usage](demo#basic-usage) |
-| disabled | `boolean` | false | Optional, indicating whether the cascader is disabled. | [Basic usage](demo#basic-usage) |
-| showPath | `boolean` | false | Optional, Specifies whether to display the path for a selected item in the concatenation. This parameter is valid only in single-choice mode. | [Basic usage](demo#basic-usage) |
-| allowClear | `boolean` | false | Optional, This parameter specifies whether to clear the alarm. | [Basic usage](demo#basic-usage) |
-| multiple | `boolean` | false | Optional, Whether to enable the multi-selection mode of the cascader. If the multi-selection mode is enabled, the checkbox is selected. | [Multi-selection mode](demo#multiple-cascader) |
-| canSelectParent | `boolean` | false | Optional, indicates whether a cascade node can be selected. | [Parent node is optional](demo#parent-cascader) |
-| checkboxRelation | `{upward: boolean, downward: boolean}` | `{upward: true, downward: true}` | Optional, Advanced status configuration when multiple cascaders are selected. The value up indicates that the status is updated to the parent level, and the value down indicates that the status is updated to the child level. | [Parent optional](demo#parent-cascader) |
-| allowSearch | `boolean` | false | Optional, Whether to enable the search mode for the cascader. | [Search mode](demo#search-cascader) |
-| dropDownItemTemplate | `TemplateRef` | false | Optional, Transfer a fixed template for rendering drop items. | [Template type](demo#template-cascader) |
-| loadChildrenFn | `(value: CascaderItem) => Promise \| Observable` | null | Optional, Transfer the function for loading subnodes in lazy loading | [Click to load](demo#lazyload-cascader) |
-| dropdownPanelClass | `string` | - | Class of the drop-down panel, which is used to select a panel. | [Basic usage](demo#basic-usage) |
-
-## d-cascader event
-
-| Parameter | Type | Description | Jump to Demo |
-| :---------: | :---------------------: | :------------------------------------------------------------------------------------------------- | ------------------------------------------- |
-| toggleEvent | `EventEmitter` | : optional. This parameter is used to trigger a drop-down list box. The Boolean value is returned. | [Multi-choice mode](demo#multiple-cascader) |
-
-## ngModel
-
-In radio mode, ngModel is bound to the path value array of the selected item'Array', for example, [1,2].
-
-In multi-select mode, ngModel is bound to the array 'Array[]' of the path array of all selected items, for example, [[1,2], [1,3], [1,4,5]].
-
-ngModelChange can listen to the change.
-
-# Interface & Type Definition
-
-### CascaderItem
-
-```
-interface CascaderItem {
-label: string;
-value: number | string;
-isLeaf? : boolean;
-children? : CascaderItem[];
-disabled? : boolean;
-icon? : string;
-// Users can transfer customized attributes and use them in dropDownItemTemplate.
-[prop: string]: any;
-}
-```
diff --git a/devui/checkbox/checkbox.tsx b/devui/checkbox/checkbox.tsx
deleted file mode 100644
index 1b4bd6cd1784f79286a0b61ca880bf8607271997..0000000000000000000000000000000000000000
--- a/devui/checkbox/checkbox.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-checkbox',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-checkbox
- }
- }
-})
\ No newline at end of file
diff --git a/devui/checkbox/demo/checkbox-demo.tsx b/devui/checkbox/demo/checkbox-demo.tsx
deleted file mode 100644
index 39d7fc2ed645e54e45b075ccb41ed7e66188601f..0000000000000000000000000000000000000000
--- a/devui/checkbox/demo/checkbox-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-checkbox-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-checkbox-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/checkbox/demo/checkbox.route.ts b/devui/checkbox/demo/checkbox.route.ts
deleted file mode 100644
index 5843a54436c401dd6b69de6c9e24413009627713..0000000000000000000000000000000000000000
--- a/devui/checkbox/demo/checkbox.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import CheckboxDemoComponent from './checkbox-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: CheckboxDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/checkbox/doc/api-cn.md b/devui/checkbox/doc/api-cn.md
deleted file mode 100644
index de907f71a45ead07e91e76a8957681935b1f3231..0000000000000000000000000000000000000000
--- a/devui/checkbox/doc/api-cn.md
+++ /dev/null
@@ -1,62 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { CheckBoxModule } from 'ng-devui';
-```
-
-在页面中使用:
-
-```html
-
-
-```
-
-# d-checkbox
-
-## d-checkbox 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-----------: | :-----------------------------: | :---: | :-----------------------------------------------------------------------------------: | --------------------------------- |
-| name | `string` | -- | 可选,表单域名,input 原生 name 属性 | [基本用法](demo#checkbox-basic) |
-| label | `string` | -- | 可选,显示标签 | [基本用法](demo#checkbox-basic) |
-| isShowTitle | `boolean` | true | 可选,是否显示 title 提示,默认显示参数`label`的值 | [基本用法](demo#checkbox-basic) |
-| title | `string` | -- | 可选,显示自定义 title 提示内容 | [基本用法](demo#checkbox-basic) |
-| disabled | `boolean` | false | 可选,是否禁用 | [基本用法](demo#checkbox-basic) |
-| labelTemplate | `TemplateRef` | -- | 可选,标签的自定义模板 | [基本用法](demo#checkbox-basic) |
-| halfchecked | `boolean` | false | 可选,半选状态 | [基本用法](demo#checkbox-basic) |
-| color | `string` | -- | 可选,复选框颜色 | [基本用法](demo#checkbox-basic) |
-| showAnimation | `boolean` | true | 可选,控制是否显示动画 | [基本用法](demo#checkbox-basic) |
-| beforeChange | `Function\|Promise\|Observable` | -- | 可选,checkbox 切换前的回调函数,返回 boolean 类型,返回 false 可以阻止 checkbox 切换 | [回调切换](demo#condition-change) |
-
-## d-checkbox 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :----: | :---------------------: | :--------------------------------------: | ------------------------------- |
-| change | `EventEmitter` | 复选框的值改变时发出的事件,值是当前状态 | [基本用法](demo#checkbox-basic) |
-
-# d-checkbox-group
-
-## d-checkbox-group 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-----------: | :-----------------------------: | :------: | :-----------------------------------------------------------------------------------------: | ------------------------------------- |
-| name | `string` | -- | 可选,表单域名,input 原生 name 属性 | [使用 CheckBoxGroup](demo#tabs-group) |
-| direction | `'row'\|'column'` | 'column' | 可选,显示方向 | [使用 CheckBoxGroup](demo#tabs-group) |
-| itemWidth | `number` | -- | 可选,表示每一项 checkbox 的宽度(`px`) | [使用 CheckBoxGroup](demo#tabs-group) |
-| isShowTitle | `boolean` | true | 可选,是否显示 title 提示 | [使用 CheckBoxGroup](demo#tabs-group) |
-| options | `Array` | [] | 可选,复选框选项数组 | [使用 CheckBoxGroup](demo#tabs-group) |
-| filterKey | `string` | -- | 可选,options 为对象数组时,标识选项唯一 id 的键值 | [使用 CheckBoxGroup](demo#tabs-group) |
-| labelTemplate | `TemplateRef` | -- | 可选,标签的自定义模板 | [使用 CheckBoxGroup](demo#tabs-group) |
-| halfchecked | `boolean` | false | 可选,半选状态 | |
-| color | `string` | -- | 可选,复选框颜色 | [使用 CheckBoxGroup](demo#tabs-group) |
-| showAnimation | `boolean` | true | 可选,控制是否显示动画 | [使用 CheckBoxGroup](demo#tabs-group) |
-| beforeChange | `Function\|Promise\|Observable` | -- | 可选,checkbox 切换前的回调函数,返回 boolean 类型,返回 false 可以阻止 checkbox-group 切换 | [回调切换](demo#condition-change) |
-| disabled | `boolean` | false | 可选,是否禁用整个按钮组 | [使用 CheckBoxGroup](demo#tabs-group) |
-
-## d-checkbox-group 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :----: | :---------------------: | :-----------------: | ------------------------------------- |
-| change | `EventEmitter` | checkbox 值改变事件 | [使用 CheckBoxGroup](demo#tabs-group) |
diff --git a/devui/checkbox/doc/api-en.md b/devui/checkbox/doc/api-en.md
deleted file mode 100644
index cb09d23d9181bcc5658073190d9b62cab64d314b..0000000000000000000000000000000000000000
--- a/devui/checkbox/doc/api-en.md
+++ /dev/null
@@ -1,62 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { CheckBoxModule } from 'ng-devui';
-```
-
-In the page:
-
-```html
-
-
-```
-
-# d-checkbox
-
-## d-checkbox Parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------------------: | :-----------------------------: | :-----: | :---------------------------------------------------------------------------------------------------------------------------------: | ---------------------------------------------------- |
-| name | `string` | -- | Optional. Form domain name. The native name attribute is input. | [Basic usage](demo#checkbox-basic) |
-| label | `string` | -- | Optional. Display labels. | [Basic usage](demo#checkbox-basic) |
-| isShowTitle | `boolean` | true | Optional. Indicates whether to display the title prompt. The value of the `label` parameter is displayed by default. | [Basic usage](demo#checkbox-basic) |
-| title | `string` | -- | Optional. Display the customized title prompt content. | [Basic usage](demo#checkbox-basic) |
-| disabled | `boolean` | false | Optional. Indicating whether to disable it. | [Basic usage](demo#checkbox-basic) |
-| labelTemplate Template | `TemplateRef` | -- | Optional. Custom template of the label | [Basic usage](demo#checkbox-basic) |
-| halfchecked | `boolean` | false | Optional. Half-selected state | [Basic usage](demo#checkbox-basic) |
-| color | `string` | -- | Optional. Check box color | [Basic usage](demo#checkbox-basic) |
-| showAnimation | `boolean` | true | Optional. Controls whether to display animations. | [Basic usage](demo#checkbox-basic) |
-| beforeChange | `Function\|Promise\|Observable` | -- | Callback function before checkbox switching, which returns the boolean type. If false is returned, checkbox switching is prevented. | [Stop Checkbox Switching](demo#condition-change) |
-
-## d-checkbox Event
-
-| Event | Type | Description | Jump to Demo |
-| :----: | :---------------------: | :-------------------------------------------------------------------------------------------: | ---------------------------------- |
-| change | `EventEmitter` | Event that is raised when the value of the check box changes. The value is the current state. | [Basic usage](demo#checkbox-basic) |
-
-# d-checkbox-group
-
-## d-checkbox-group Parameters
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------------------: | :-----------------------------: | :------: | :-------------------------------------------------------------------------------------------------------------------------------------------: | ---------------------------------------------------- |
-| name | `string` | -- | Optional. Form domain name. The native name attribute is input. | [Checkbox Group](demo#tabs-group) |
-| direction | `'row'\|'column'` | 'column' | Optional. Display direction | [Checkbox Group](demo#tabs-group) |
-| itemWidth | `number` | -- | Optional. Indicating the width of each checkbox (`px`). | [Checkbox Group](demo#tabs-group) |
-| isShowTitle | `boolean` | true | Optional. Whether to display the title prompt | [Checkbox Group](demo#tabs-group) |
-| options | `Array` | [] | Optional. Check box option array | [Checkbox Group](demo#tabs-group) |
-| filterKey | `string` | -- | Optional. When options is an object array, this parameter identifies the key value of the unique ID of the option. | [Checkbox Group](demo#tabs-group) |
-| labelTemplate | `TemplateRef` | -- | Optional. Custom template of the label | [Checkbox Group](demo#tabs-group) |
-| halfchecked | `boolean` | false | Optional. Half-selected | |
-| color | `string` | -- | Optional. Check box color | [Checkbox Group](demo#tabs-group) |
-| showAnimation | `boolean` | true | Optional. Controls whether to display animations. | [Checkbox Group](demo#tabs-group) |
-| beforeChange | `Function\|Promise\|Observable` | -- | Callback function before checkbox switching, which returns the boolean type. If false is returned, checkbox-group switching is prevented. | [Stop Checkbox Switching](demo#condition-change) |
-| disabled | `boolean` | false | Optional. Whether to disable the entire button group. | [Checkbox Group](demo#tabs-group) |
-
-## d-checkbox-group Event
-
-| Event | Type | Description | Jump to Demo |
-| :----: | :---------------------: | :-------------------------: | -------------------------------------- |
-| change | `EventEmitter` | Checkbox value change event | [Checkbox Group](demo#tabs-group) |
diff --git a/devui/data-table/data-table.tsx b/devui/data-table/data-table.tsx
deleted file mode 100644
index 8fd19dfe4f2a9ba6a143462cfa56a1a5ea8cd977..0000000000000000000000000000000000000000
--- a/devui/data-table/data-table.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-data-table',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-data-table
- }
- }
-})
\ No newline at end of file
diff --git a/devui/data-table/demo/data-table-demo.tsx b/devui/data-table/demo/data-table-demo.tsx
deleted file mode 100644
index 4a43bbc75b37db91dbe9db5ecaf4ac0e1d0153cd..0000000000000000000000000000000000000000
--- a/devui/data-table/demo/data-table-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-data-table-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-data-table-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/data-table/demo/data-table.route.ts b/devui/data-table/demo/data-table.route.ts
deleted file mode 100644
index 856ac5416f271fd09bfe5323562168b091c22f6b..0000000000000000000000000000000000000000
--- a/devui/data-table/demo/data-table.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import DataTableDemoComponent from './data-table-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: DataTableDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/data-table/doc/api-cn.md b/devui/data-table/doc/api-cn.md
deleted file mode 100644
index 5eeea1827806f94f4fb341e4ea8b714a70d2b54a..0000000000000000000000000000000000000000
--- a/devui/data-table/doc/api-cn.md
+++ /dev/null
@@ -1,442 +0,0 @@
-# 如何使用
-
-在module中引入:
-
-```ts
-import { DataTableModule } from 'ng-devui/data-table';
-```
-
-在页面中使用:
-
-```html
-
-```
-
-## d-data-table
-
-### d-data-table 参数
-| 参数名 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------------------: | :---------------------------: | :----- | :----------------------------------------------------------------------------------------------: | ---------------------------------------------------------------------- |
-| dataSource | `any[]` | -- | 必选,数据源,用于渲染表格数据 | [基本用法](demo#basic-usage) |
-| lazy | `boolean` | -- | 可选,是否懒加载数据 | [列表数据懒加载](demo#lazy-loading-of-list-data) |
-| scrollable | `boolean` | -- | 可选,表格在超出容器时,是否可以通过滚动查看表格内容 | [表格交互](demo#table-interaction) |
-| maxWidth | `string px` | -- | 可选,限制表格最大宽度,默认撑满父容器 |
-| maxHeight | `string px` | -- | 可选,限制最大高度,默认 | [表头固定](demo#table-fixing) |
-| size | `'sm'\|'md'\|'lg'` | 'sm' | 可选,表格大小,分别对应行高40px,48px,56px |[表格样式](demo#mutil-styles) |
-| rowHoveredHighlight | `boolean` | true | 可选,鼠标悬浮行时是否高亮,默认高亮认 |
-| generalRowHoveredData | `boolean` | false | 可选,使用配置column方式实现table,鼠标悬浮行时$hovered是否记录到rowItem中,默认不记录 |
-| cssClass | `string` | -- | 可选,自定义表格样式 |
-| tableWidth | `string` | 100% | 可选,表格宽度 |
-| tableHeight | `string` | -- | 可选,表格高度,取值'100%'时依赖table父容器的高度 | [虚拟滚动](demo#virtual-scroll) |
-| containFixHeaderHeight | `boolean` | false | 可选,固定表头指定的高度是否包含表头高度,`tableHeight`设置的高度默认是表格body的高度 | [固定表头虚拟滚动](demo#fixed-virtual-scroll) |
-| checkableRelation | [`CheckableRelation`](#checkablerelation) | -- | 可选,配置树形表格的父子选中是否互相关联 | [树形表格](demo#tree-form) |
-| loadChildrenTable | `Promise` | -- | 可选,展开子表格的回调,用于异步加载子表格 | [树形表格](demo#tree-form) |
-| loadAllChildrenTable | `Promise` | -- | 可选,表头展开所有子表格的回调,用于异步加载所有子表格 | [树形表格](demo#tree-form) |
-| colDraggable | `boolean` | false | 可选,表格列是否可拖动排序 | [列拖拽](demo#column-dragging) |
-| colDropFreezeTo | `number` | 0 | 可选,表格列可拖动排序时配置前n列不可拖动 | [列拖拽](demo#column-dragging) |
-| virtualScroll | `boolean` | false | 可选,是否开启虚拟滚动 | [虚拟滚动](demo#virtual-scroll) |
-| virtualItemSize | `number` | 40 | 可选,虚拟滚动时每一行的高度,默认为表格默认行高40`px` | [虚拟滚动](demo#virtual-scroll) |
-| virtualMinBufferPx | `number` | 80 | 可选,虚拟滚动时缓冲区最小像素高度,低于该值时将加载新结构 | [虚拟滚动](demo#virtual-scroll) |
-| virtualMaxBufferPx | `number` | 200 | 可选,虚拟滚动时缓冲区最大像素高度 | [虚拟滚动](demo#virtual-scroll) |
-| tableWidthConfig | [`TableWidthConfig[]`](#tablewidthconfig) | [] | 可选,配置表格的列宽 | [基本用法](demo#basic-usage) |
-| checkable | `boolean` | -- | 可选,Datatable是否提供勾选行的功能 | [表格交互](demo#table-interaction) |
-| checkOptions | [`TableCheckOptions[]`](#tablecheckoptions) | -- | 可选,表头选中的下拉项及操作 | [自定义表格选中操作](demo#table-check-options) |
-| headerCheckDisabled | `boolean` | -- | 可选,表头checkbox是否disabled |
-| headerCheckVisible | `boolean` | true | 可选,表头checkbox是否可见 |
-| showExpandToggle | `boolean` | -- | 可选,是否提供显示扩展行的功能,为true则在配置了扩展行的行前面生成操作按钮 | [扩展行](demo#expand-row) |
-| showSortIcon | `boolean` | true | 可选,是否显示排序未激活图标,默认显示 | [表格交互](demo#table-interaction) |
-| showOperationArea | `boolean` | false | 可选,配置表头操作未激活状态下是否显示操作区域,默认不显示 | [表格交互](demo#table-interaction) |
-| hideColumn | `string[]` | -- | 可选,用于隐藏列 |
-| pageAllChecked | `boolean` | -- | 可选,选中当前页所有row |
-| onlyOneColumnSort | `boolean` | -- | 可选,是否限制多列排序的输出限制为一项 | [表格交互](demo#table-interaction) |
-| multiSort | [`SortEventArg[]`](#sorteventarg) | [] | 可选,多列选择数组,用来指导那几列会被排序 | [表格交互](demo#table-interaction) |
-| resizeable | `boolean` | -- | 可选,是否可以拖拽调整列宽 | [表格交互](demo#table-interaction) |
-| timeout | `number` | 300 | 可选,同时绑定单击、双击事件时,用于区分点击的时间间隔, 默认300`ms`,两个事件不同时使用可以指定为0 |
-| headerExpandConfig | [`TableExpandConfig`](#tableexpandconfig) | -- | 可选,配置header下的额外内容 | [扩展行](demo#expand-row) |
-| beforeCellEdit | `Promise` | -- | 可选,单元格编辑前的拦截方法, resolve(extraOptions)将更新该列的extraOptions | [编辑单元格](demo#edit-cell) |
-| headerBg | `boolean` | false | 可选,表头是否显示背景色 | [表格样式](demo#mutil-styles) |
-| tableLayout | `'fixed'\|'auto'` | 'fixed' | 可选,表格布局 | [表格样式](demo#mutil-styles) |
-| borderType | `''\|'bordered'\|'borderless'` | '' | 可选,表格边框类型,默认有行边框,bordered:全边框,borderless:无边框 | [表格样式](demo#mutil-styles) |
-| striped | `boolean` | false | 可选,表格是否展示为斑马纹间隔 | [表格样式](demo#mutil-styles) |
-
-### d-data-table 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :-------------------: | :------------------------------------: | :------------------------------------------------------: | :------------------------------------------------------: |
-| rowCheckChange | `EventEmitter` | 某一行的勾选状态变化事件 |
-| checkAllChange | `EventEmitter` | 当前页码全勾选状态变化事件 |
-| resize | `EventEmitter` | 列宽变化事件,返回单元格信息 | [表格交互](demo#table-interaction) |
-| childrenTableClose | `EventEmitter` | 子列表关闭事件,返回列表行信息 |
-| allChildrenTableClose | `EventEmitter` | 全部子列表关闭事件 |
-| multiSortChange | `EventEmitter` | 多列选择Change事件,用来更新多列选择数组,返回单元格信息 | [表格交互](demo#table-interaction) |
-| cellClick | `EventEmitter` | 表格单元格点击事件,返回单元格信息 | [表格交互](demo#table-interaction) |
-| cellDBClick | `EventEmitter` | 表格单元格双击事件,返回单元格信息 | [表格交互](demo#table-interaction) |
-| rowClick | `EventEmitter` | 表格行点击事件,返回行信息 | [表格交互](demo#table-interaction) |
-| rowDBClick | `EventEmitter` | 表格行双击事件,返回行信息 | [表格交互](demo#table-interaction) |
-| detialToggle | `EventEmitter` | 使用配置column方式时扩展行展开收起事件,返回行状态信息 | [扩展行](demo#expand-row)|
-| cellEditStart | `EventEmitter` | 表格单元格开始编辑事件,返回单元格信息 |
-| cellEditEnd | `EventEmitter` | 表格单元格结束编辑事件,返回单元格信息 | [编辑单元格](demo#edit-cell) |
-| tableScrollEvent | `EventEmitter` | 表格内部滚动事件 |
-
-
-### d-data-table 公共方法
-
-| 方法名 | 参数 | 默认值 | 描述 | 跳转 Demo |
-| :--------------------------: | :-----------------------: | :----- | :------------------------------------------------------------------: | :------------------------------------------------------: |
-| getCheckedRows | -- | -- | 获取当前选中的行数据 | [表格交互](demo#table-interaction) |
-| setRowCheckStatus | [`RowCheckChangeEventArg`](#rowcheckchangeeventarg) | -- | 设置某一行的选中状态,可以处理表头、父子表格的选中关系 | [表格交互](demo#table-interaction) |
-| setTableCheckStatus | [`TableCheckStatusArg`](#tablecheckstatusarg) | -- | 设置当前表格的全选、半选状态 |
-| setRowChildToggleStatus | [`RowToggleStatusEventArg`](#RowToggleStatusEventArg) | -- | 设置某一行的子表格展开、收起状态,处理异步加载子表格的选中状态时调用 | [树形表格](demo#tree-form) |
-| setTableChildrenToggleStatus | `open: boolean` | -- | 设置当前表格的所有子表格展开、收起状态 | [树形表格](demo#tree-form) |
-| cancelEditingStatus | -- | -- | 取消正在编辑单元格的编辑状态 | [编辑单元格](demo#edit-cell) |
-
-### rowItem参数(行数据rowItem为dataSource的数组元素,可以初始化行数据的以下字段配置表格的行为)
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---------------: | :-------: | :----- | :--------------------------: | :------------------------------------------------------: |
-| $checked | `boolean` | false | 可选,该行是否选中 | [表格交互](demo#table-interaction) |
-| $halfChecked | `boolean` | false | 可选,该行是否半选 | [表格交互](demo#table-interaction) |
-| $isChildTableOpen | `boolean` | false | 可选,该行下的子表格是否展开 | [树形表格](demo#tree-form) |
-| children | array | -- | 配置该行的子table数据 | [树形表格](demo#tree-form) |
-| $checkDisabled | `boolean` | false | 可选,该行是否禁止选中 | [表格交互](demo#table-interaction) |
-| $checkBoxTips | `string` | -- | 可选,配置该行checkbox的提示 | [表格交互](demo#table-interaction) |
-
-# dTableHead
-
-## dTableHead 参数
-
-| 参数名 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-----------: | :-------------------: | :----- | :------------------------------------------------------------------: | :------------------------------------------------------------------- |
-| checkable | `boolean` | -- | 可选,在表头第一列显示checkbox,用于全选,可以跟行数据的选中状态联动 | [表格交互](demo#table-interaction) |
-| checkOptions | `TableCheckOptions[]` | -- | 可选,表头选中的下拉项及操作 | [自定义表格选中操作](demo#table-check-options) |
-| checkDisabled | `boolean` | -- | 可选,表头checkbox是否disabled |
-
-
-## dHeadCell 参数
-
-| 参数名 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :------------------: | :----------------------------------------: | :----- | :-----------------------------------------------------------: | :------------------------------------------------------- |
-| resizeEnabled | `boolean` | -- | 可选,该列宽度是否可调整 | [表格交互](demo#table-interaction) |
-| maxWidth | `string` | -- | 可选,调整宽度时的最大宽度,单位`px` |
-| minWidth | `string` | -- | 可选,调整宽度时的最小宽度,单位`px` |
-| filterable | `boolean` | -- | 可选,该列宽度是否可过滤 | [表格交互](demo#table-interaction) |
-| closeFilterWhenScroll | `boolean` | -- | 可选,表格或者body滚动时是否关闭过滤框 | [表格交互](demo#table-interaction) |
-| customFilterTemplate | `TemplateRef` | -- | 可选,过滤弹出框的自定义模板 | [表格交互](demo#table-interaction) |
-| extraFilterTemplate | `TemplateRef` | -- | 可选,过滤弹出框扩展区域自定义模板 | [表格交互](demo#table-interaction) |
-| searchFn | `(term: string) => Observable>` | | 可选,过滤时输入关键字的匹配方法 |
-| filterList | `array` | -- | 过滤列表,当filterable为true时必选 | [表格交互](demo#table-interaction) |
-| filterMultiple | `boolean` | -- | 可选,设置该列为多选或单选, true为多选,false为单选 | [表格交互](demo#table-interaction) |
-| filterBoxWidth | `string` | -- | 过滤弹出框的宽度,如:‘300px’ |
-| filterBoxHeight | `string` | -- | 过滤弹出框的高度,如:‘400px’ |
-| beforeFilter | `function\|Promise\|Observable` | -- | 可选,表格过滤弹出框弹出前的回调函数,返回false可阻止弹框弹出 | [表格交互](demo#table-interaction) |
-| sortable | `boolean` | -- | 可选,该列是否可排序 | [表格交互](demo#table-interaction) |
-| sortDirection | `SortDirection` | -- | 可选,设置该列的已排序状态 | [表格交互](demo#table-interaction) |
-| nestedColumn | `boolean` | -- | 可选,是否展示树形表格的表头展开\折叠图标 | [树形表格](demo#tree-form) |
-| iconFoldTable | `DOMString` | -- | 可选,自定义树形表格的折叠图标 | [树形表格](demo#tree-form) |
-| iconUnFoldTable | `DOMString` | -- | 可选,自定义树形表格的展开图标 | [树形表格](demo#tree-form) |
-| fixedLeft | `string` | -- | 可选,该列固定到左侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-| fixedRight | `string` | -- | 可选,该列固定到右侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-
-## dHeadCell 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :----------------------: | :-----------------: | :-------------------------------------------------: | :------------------------------------------------------- |
-| filterChange | `FilterConfig[]` | 确认筛选回调事件,返回选中的筛选数组 | [表格交互](demo#table-interaction) |
-| sortChange | `SortEventArg` | 排序回调事件,返回该列排序信息 | [表格交互](demo#table-interaction) |
-| resizeStartEvent | `MouseEvent` | 该列宽度调整开始时的事件 |
-| resizingEvent | `{ width: string }` | 该列宽度调整进行中的事件 |
-| resizeEndEvent | `{ width: string }` | 该列宽度调整结束时的事件 | [表格交互](demo#table-interaction) |
-| toggleChildrenTableEvent | `boolean` | 所有子表格展开收起事件,true表示展开,false表示收起 |
-
-# dTableCell
-
-## dTableCell 参数
-
-| 参数名 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------------: | :-----------------------------: | :----- | :------------------------------------------------------------: | :------------------------------------------------- |
-| editable | `boolean` | -- | 可选,单元格是否可编辑 | [编辑单元格](demo#edit-cell) |
-| editableTip | `'hover'\|'btn'` | -- | 可选,编辑提示,hover背景变色,btn展示编辑按钮 | [编辑单元格](demo#edit-cell) |
-| nestedColumn | `boolean` | -- | 可选,树形表格下该行有子表格时展示展开、折叠图标 | [树形表格](demo#tree-form) |
-| nestedLayer | `number` | | 树形表格下的层级,nestedColumn为true时必选 | [树形表格](demo#tree-form) |
-| rowItem | `array` | -- | 行数据,nestedColumn为true时必选,也可作为单元格编辑的回调参数 | [树形表格](demo#tree-form) |
-| beforeEditStart | `function\|Promise\|Observable` | -- | 可选,单元格开始编辑前回调,返回false阻止单元格开始编辑 | [编辑单元格](demo#edit-cell) |
-| beforeEditEnd | `function\|Promise\|Observable` | -- | 可选,单元格结束编辑前的回调,返回false阻止单元格结束编辑 | [编辑单元格](demo#edit-cell) |
-| iconFoldTable | `DOMString` | -- | 可选,自定义树形表格的折叠图标 | [树形表格](demo#tree-form) |
-| iconUnFoldTable | `DOMString` | -- | 可选,自定义树形表格的展开图标 | [树形表格](demo#tree-form) |
-| fixedLeft | `string` | -- | 可选,该列固定到左侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-| fixedRight | `string` | -- | 可选,该列固定到右侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-| editing | `boolean` | -- | 可选,使用[(editing)]获取和控制单元格编辑状态 | [编辑单元格](demo#edit-cell) |
-| field | `string` | -- | 单元格所属列的字段,作为beforeEditStart、beforeEditEnd的参数 | [编辑单元格](demo#edit-cell) |
-
-## dTableCell 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :-------------------: | :-------: | :-----------------------------------------------------: | :------------------------------------------------- |
-| editStatusEvent | `boolean` | 单元格编辑状态事件 | [编辑单元格](demo#edit-cell) |
-| toggleChildTableEvent | `boolean` | 当前行的子表格展开收起事件,true表示展开,false表示收起 | [树形表格](demo#tree-form) |
-
-#### 使用自定义模板方式时配置dTableBody的行模板
-
-实现参考**[树形表格](demo#tree-form)**
-
-``` html
-
-
-
-// rowItem: 行数据
-// rowIndex: 行序号
-// nestedLayer: 树形表格下该行所属表格的层级,由组件生成,最外层表格为0,自增长
-// nestedIndex: 树形表格下的行索引,由组件生成
-```
-
-#### 配置数据为空的时候的提示模板
-
-表格接受 `#noResultTemplateRef` 模板,实现参考**[异步加载数据](demo#async-loading)**
-
-#### 自定义过滤弹出框
-
-实现参考**[表格交互](demo#table-interaction)**
-
-``` html
-
-
-
-
-// filterListDisplay: 传入的filterList的值
-// dropdown: 获取dropdown的引用,主要用于控制弹出框的打开和关闭
-// column: 使用配置column实现的,当前列的元信息,对应DataTableColumnTmplComponent类
-```
-
-## CheckableRelation
-
-``` ts
-export interface CheckableRelation {
- upward: boolean; // 选中子关联父
- downward: boolean; // 选中父关联子
-}
-```
-
-## TableWidthConfig
-
-```ts
-export interface TableWidthConfig {
- field: string; // 列名
- width: string; // 宽度,单位px
-}
-```
-
-## TableCheckOptions
-
-```ts
-export interface TableCheckOptions {
- label: string;
- onChecked: Function;
-}
-```
-
-## SortEventArg
-
-```ts
-export interface SortEventArg {
- field?: string; // 列名
- direction: SortDirection; // 顺序
-}
-```
-
-## TableExpandConfig
-
-```ts
-export interface TableExpandConfig {
- expand ? : boolean, // 是否展开
- expandTemplateRef ? : ElementRef, //自定义模板
- description ? : string // 简单描述文字
-}
-```
-
-## RowCheckChangeEventArg
-
-```ts
-export interface RowCheckChangeEventArg {
- rowIndex: number; // 行序号
- nestedIndex: string; // 树形表格下的行索引,由组件生成
- rowItem: any; // 行数据
- checked: boolean; // 是否选中
-}
-```
-
-## TableCheckStatusArg
-
-```ts
-export interface TableCheckStatusArg {
- pageAllChecked?: boolean; // 全选
- pageHalfChecked?: boolean; // 半选
-}
-```
-
-## RowToggleStatusEventArg
-
-```ts
-export interface RowToggleStatusEventArg {
- rowItem: any; // 行数据
- open: boolean; // 子表格是否展开
-}
-```
-
-## FilterConfig
-
-```ts
-export interface FilterConfig {
- id: number | string;
- name: string;
- value: any;
- checked?: boolean;
-}
-```
-
-## SortDirection
-
-```ts
-export enum SortDirection {
- ASC = 'ASC',
- DESC = 'DESC',
- default = ''
-}
-```
-
-# 以下为通过配置column来实现table时的才有的参数和方法
-
-## d-column 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------------------------------: | :-----------------------------: | :---------------- | :-------------------------------------------------------------------------------------: | :------------------------------------------------------- |
-| editable | `boolean` | false | 可选,在d-column上指定该列是否可编辑 | [编辑单元格](demo#edit-cell) |
-| maxWidth | `string px` | -- | 可选,最大宽度 |
-| minWidth | `string px` | -- | 可选,最小宽度 |
-| field | `string` | -- | 该列字段 | [基本用法](demo#basic-usage) |
-| header | `string` | -- | 该列表头文字 | [基本用法](demo#basic-usage) |
-| sortable | `boolean` | -- | 可选,是否可排序 | [表格交互](demo#table-interaction) |
-| editable | `boolean` | -- | 可选,是否可编辑 | [表格交互](demo#table-interaction) |
-| width | `string px、%` | -- | 宽度 | [基本用法](demo#basic-usage) |
-| nestedColumn | `Boolean` | false | 可选,指定该列作为树形表格的操作列,即有展开\折叠按钮和内容缩进表明层级关系 | [树形表格](demo#tree-form) |
-| extraOptions.editableTip | `'btn'、''` | -- | 可选,可编辑提示,'btn'表示鼠标悬浮单元格出现编辑按钮,未配置时鼠标悬浮单元格背景色变化 | [编辑单元格](demo#edit-cell) |
-| extraOptions.iconFoldTable | `Template` | -- | 可选,自动定义树形表格的折叠图标 | [树形表格](demo#tree-form) |
-| extraOptions.iconUnFoldTable | `Template` | -- | 可选,自动定义树形表格的展开图标 | [树形表格](demo#tree-form) |
-| extraOptions.showHeadTableToggler | `boolean` | false | 可选,树形表格是否在header出现展开\折叠图标 | [树形表格](demo#tree-form) |
-| order | `number` | Number. MAX_VALUE | 可选,列序号 | [基本用法](demo#basic-usage) |
-| filterable | `boolean` | -- | 可选,是否可筛选 | [表格交互](demo#table-interaction) |
-| closeFilterWhenScroll | `boolean` | -- | 可选,表格或者body滚动时是否关闭过滤框 | [表格交互](demo#table-interaction) |
-| filterList | `array` | -- | 传入需要操作的筛选列表,当filterable为true时必选 | [表格交互](demo#table-interaction) |
-| filterMultiple | `boolean` | true | 可选,选择筛选列表为多选或单选, true为多选,false为单选 | [表格交互](demo#table-interaction) |
-| customFilterTemplate | `TemplateRef` | -- | 可选,表格过滤弹出框的自定义模板,参考DOC下‘自定义过滤弹出框’使用 | [表格交互](demo#table-interaction) |
-| extraFilterTemplate | `TemplateRef` | -- | 可选,表格过滤弹出框扩展区域自定义模板 | [表格交互](demo#table-interaction) |
-| beforeFilter | `function、Promise、Observable` | -- | 可选,表格过滤弹出框弹出前的回调函数,返回false可阻止弹框弹出 | [表格交互](demo#table-interaction) |
-| cellClass | `string` | -- | 该列单元格自定义class |
-| fixedLeft | `string` | -- | 该列固定到左侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-| fixedRight | `string` | -- | 该列固定到右侧的距离,如:‘100px’ | [固定列](demo#fixed-column) |
-| filterBoxWidth | `any` | -- | 过滤弹出框的宽度,如:‘300px’ |
-| filterBoxHeight | `any` | -- | 过滤弹出框的高度,如:‘400px’ |
-
-## d-column 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :----------: | :--------------: | :----------------------------------: | :------------------------------------------------------- |
-| filterChange | `FilterConfig[]` | 确认筛选回调事件,返回选中的筛选数组 | [表格交互](demo#table-interaction) |
-
-## rowItem参数
-| 参数 | 类型 | 默认值 | 描述 |
-| :---------------: | :-----------------: | :----- | :-------------------------------------------------------------------------------------------------------: |
-| $editDeniedConfig | `array` | -- | 可选,与column配合配置该行的某些单元格的编辑权限, 例如: 配置为['age'],表示field为age的单元格不可编辑 |
-| $expandConfig | [`TableExpandConfig`](#tableexpandconfig) | -- | 可选,配置该行下的额外内容 |
-| $rowClass | `string` | -- | 可选,配置该行的自定义class |
-| $hovered | `boolean` | false | 鼠标悬浮该行元素时该值为true, 离开该行时该值为false |
-
-#### 自定义单元格
-
-单元格数据(cellItem, 通过rowItem[column.field]取值)为string类型时,组件可直接展示,当单元格数据为object类型,或者想定义该列单元格的特殊行为时,需要自定义单元格来进行展示;
-例如:我们想 `Gender` 这一列的数据大写展示, 并在鼠标移动上去展示一个提示,相关节选代码如下
-
-```
-
-
-
-
- {{cellItem.toUpperCase()}}
-
-
-
-
-```
-
-#### 自定义单元格编辑模板
-
-Datatable支持通过模板自定义单元格编辑功能
-
-```
-
-
-
-
-
-
-
-```
-
-自定义单元格和配置单元格编辑时的完整template如下
-
-``` xml
-
-
-
-
-// rowIndex: 行序号
-// colIndex: 列序号
-// rowItem: 当前行的数据,对应 filed 和 cellItem的键值对
-// column: 当前列的元信息,对应DataTableColumnTmplComponent类
-// cellItem: 当前单元格的值, 通过rowItem[column.field]取值
-// tableLevel: 树形表格下所属表格的层级,最外层为0,自增长
-```
-
-#### 自定义表头单元格
-
-如果需要表头单元格,列入想展示效果为鼠标移动在表格上方会提示 `Gender is a head cell template` .
-
-``` xml
-
-
-
-
- {{column.header}}
-
-
-
-
-
-// column: 为column输入值,对应 `DataTableColumnTmplComponent` 类
-```
-
-#### 多行表头和表头合并单元格
-
-* 需要在d-column使用时候,增加
-
-``` javascript
-advancedHeader: Array < {
- header: string;
- rowspan: number;
- colspan: number;
-}
-```
-
-注意: 空单元格也需要表示,并根据内容把rowspan/colspan置为0,如果同时使用列宽拖拽和多行表头,请为列内容附上宽度width,如果第一行的列宽度不正确,请手动为advancedHeader[rowNumber]增加一个属性$width
diff --git a/devui/data-table/doc/api-en.md b/devui/data-table/doc/api-en.md
deleted file mode 100644
index f402f8669728f0ae847dcbb5c5bfc47d2ca1800c..0000000000000000000000000000000000000000
--- a/devui/data-table/doc/api-en.md
+++ /dev/null
@@ -1,426 +0,0 @@
-# How to use
-
-Import the following information into the module:
-
-```ts
-import {DataTableModule} from' ng-devui/data-table';
-```
-
-On the page:
-
-```html
-
-```
-
-# d-data-table
-
-## d-data-table parameter
-| Parameter name | Type | Default value | Description | Jump to Demo |
-| :-------------------: | :---------------------------: | :----- | :----------------------------------------------------------------------------------------------: | ---------------------------------------------------------------------- |
-| dataSource | `any[]` | -- | Required. Data source, used to render table data | [Basic usage](demo#basic-usage) |
-| lazy | `boolean` | -- | Optional. Indicating whether to lazy load data | [Low load list data](demo#lazy-loading-of-list-data) |
-| scrollable | `boolean` | -- | Optional. Whether the table content can be viewed by scrolling when the table exceeds the container. | [Table interaction](demo#table-interaction) |
-| maxWidth | `string px` | -- | Optional. Limit the maximum table width. By default, the parent container is full. |
-| maxHeight | `string px` | -- | Optional. The maximum height is limited. The default value is | [fixed table header](demo#table-fixing) |
-| size | `'sm'\|'md'\|'lg'`| 'sm' | Optional. Specifies the table size, which corresponds to 40 px, 48 px, and 56 px respectively | [Table style](demo#mutil-styles) |
-| rowHoveredHighlight | `boolean` | true | Optional. Indicating whether to highlight a line when the cursor is hovering. The default value is highlighted. |
-| generalRowHoveredData | `boolean` | false | Optional. It is used to configure columns to implement the table. When the cursor is moved to a row, $hovered is recorded to the row item. By default, $hovered is not recorded. |
-| cssClass | `string` | -- | Optional. Customize the table style |
-| tableWidth | `string` | 100% | Optional. Table width |
-| tableHeight | `string` | -- | Optional. Table height. The value 100% depends on the height of the table parent container. | [Virtual scrolling](demo#virtual-scroll) |
-| containFixHeaderHeight | `boolean` | false | Optional. whether the height specified by the fixed header includes the height of the header, the height set by tableHeight is the height of the table body by default | [Fixed table header virtual scrolling](demo#fixed-virtual-scroll) |
-| checkableRelation | [`CheckableRelation`](#checkablerelation) | -- | Optional. This parameter specifies whether the parent and child selections in the tree table are associated. | [Tree table](demo#tree-form) |
-| loadChildrenTable | `Promise` | -- | Optional. It is the callback of subtable expansion, which is used to asynchronously load subtables. | [Tree table](demo#tree-form) |
-| loadAllChildrenTable | `Promise` | -- | Optional. It is the callback for expanding all subtables in the table header. It is used to asynchronously load all subtables. | [Tree table](demo#tree-form) |
-| colDraggable | `boolean` | false | Optional. Whether columns can be dragged or sorted | [Column dragging](demo#column-dragging) |
-| colDropFreezeTo | `number` | 0 | Optional. The first n columns cannot be dragged when the table columns can be sorted. | [Column dragging](demo#column-dragging) |
-| virtualScroll | `boolean` | false | Optional. Specifies whether to enable virtual scrolling. | [Virtual scrolling](demo#virtual-scroll) |
-| virtualItemSize | `number` | 40 | Optional. Height of each row during virtual scrolling. The default value is 40`px`. | [Virtual scrolling](demo#virtual-scroll) |
-| virtualMinBufferPx | `number` | 80 | Optional. Minimum pixel height of the buffer during virtual scrolling. If the pixel height is less than this value, the new structure is loaded. | [Virtual scrolling](demo#virtual-scroll) |
-| virtualMaxBufferPx | `number` | 200 | Optional. Maximum pixel height of the buffer during virtual scrolling | [virtual scrolling](demo#virtual-scroll) |
-| tableWidthConfig | [`TableWidthConfig[]`](#tablewidthconfig) | [] | Optional. It is used to configure the column width of the table. | [Basic usage](demo#basic-usage) |
-| checkable | `boolean` | -- | Optional. Whether the Datatable provides the function of selecting rows. | [Table interaction](demo#table-interaction) |
-| checkOptions | [`TableCheckOptions[]`](#tablecheckoptions) | -- | Optional. drop-down list box in the table header and operations | [Customized table selection](demo#table-check-options) |
-| headerCheckDisabled | `boolean` | -- | Optional. Indicates whether the header checkbox is disabled. |
-| headerCheckVisible | `boolean` | true | Optional. Indicates whether the checkbox in the header is visible. |
-| showExpandToggle | `boolean` | -- |: Indicates whether to display extended rows. If the value is true, an operation button is generated before the row where extended rows are configured. | [Extended row](demo#expand-row) |
-| showSortIcon | `boolean` | true | Optional. Indicates whether to display the inactive sorting icon. The icon is displayed by default. | [Table interaction](demo#table-interaction) |
-| showOperationArea | `boolean` | false | Optional. Indicates whether to display the operation area when the table header operation is not activated. Not displayed by default. | [Table interaction](demo#table-interaction) |
-| hideColumn | `string[]` | -- | Optional. Used to hide columns |
-| pageAllChecked | `boolean` | -- | Optional. Select all rows on the current page. |
-| onlyOneColumnSort | `boolean` | -- | Optional. Whether to restrict the output of multi-column sorting to one item | [Table interaction](demo#table-interaction) |
-| multiSort | [`SortEventArg[]`](#sorteventarg) | [] | Optional. It is a multi-column selection array, which is used to guide the columns to be sorted. | [Table interaction](demo#table-interaction) |
-| resizeable | `boolean` | -- | Optional. Whether the column width can be adjusted by dragging. | [Table interaction](demo#table-interaction) |
-| timeout | `number` | 300 | Optional. This parameter is used to distinguish the click interval when the click and double-click events are bound at the same time. The default value is 300`ms`. You can set this parameter to 0 when the two events are used at the same time. |
-| headerExpandConfig | [`TableExpandConfig`](#tableexpandconfig) | -- | Optional. Extra content under the header | [Extended line](demo#expand-row) |
-| beforeCellEdit | `Promise` | -- | Optional. Interception method before cell editing. resolve(extraOptions) updates extraOptions of the column. | [edit cell](demo#edit-cell) |
-| headerBg | `boolean` | false | Optional. Indicating whether to display the background color in the table header | [Table style](demo#mutil-styles) |
-| tableLayout | `'fixed'\|'auto'` | 'fixed' | Optional. Table layout | [Table style](demo#mutil-styles) |
-| borderType | `''\|'bordered'\|'borderless'` | '' | Optional. Table border type. The default value is row border. The options are bordered (full border) and borderless (no border). | [Table style](demo#mutil-styles) |
-| striped | `boolean` | false | Optional. Whether to display the table with zebra stripes. | [Table style](demo#mutil-styles) |
-
-## d-data-table event
-
-| Event | Type | Description | Jump to Demo |
-| :-------------------: | :------------------------------------: | :------------------------------------------------------: | :------------------------------------------------------: |
-| rowCheckChange | `EventEmitter` | Selected status change event of a line |
-| checkAllChange | `EventEmitter` | Event of Selecting All Current Pages |
-| resize | `EventEmitter` | Column Width Change Event, Returning Cell Information | [Table Interaction](demo#table-interaction) |
-| childrenTableClose | `EventEmitter` | Event for closing a sublist. The list row information is returned. |
-| allChildrenTableClose | `EventEmitter` | All Sublist Close Event |
-| multiSortChange | `EventEmitter` | Change event, which is used to update the multi-column selection array and return cell information. | [Table interaction](demo#table-interaction) |
-| cellClick | `EventEmitter` | Cell Click Event, Returning Cell Information | [Table Interaction](demo#table-interaction) |
-| cellDBClick | `EventEmitter` | Cell Double-click Event, Returning Cell Information | [Table Interaction](demo#table-interaction) |
-| rowClick | `EventEmitter` | Table row click event, which returns row information | [Table interaction](demo#table-interaction) |
-| rowDBClick | `EventEmitter` | Double-clicking a table row. Row information is returned. | [Table interaction](demo#table-interaction) |
-| detialToggle | `EventEmitter` | Extended row expansion/collapse event. The row status information is returned. |
-| cellEditStart | `EventEmitter` | Cell Editing Start Event, Returning Cell Information |
-| cellEditEnd | `EventEmitter` | Table cell editing end event. Cell information is returned. | [Edit cell](demo#edit-cell) |
-| tableScrollEvent | `EventEmitter` | Table Internal Rolling Event |
-
-## d-data-table public method
-
-| Method name | Parameter | Default value | Description | Jump to Demo |
-| :--------------------------: | :-----------------------: | :----- | :------------------------------------------------------------------: | :------------------------------------------------------: |
-| getCheckedRows | -- | -- | Obtain the data of the selected row. | [Table interaction](demo#table-interaction) |
-| setRowCheckStatus | [`RowCheckChangeEventArg`](#rowcheckchangeeventarg) | -- | Sets the selection status of a row, and can process the selection relationship between table headers and parent-child tables. | [Table interaction](demo#table-interaction) |
-| setTableCheckStatus | [`TableCheckStatusArg`](#tablecheckstatusarg) | -- | Sets the status of all or half selection of the current table. |
-| setRowChildToggleStatus | [`RowToggleStatusEventArg`](#RowToggleStatusEventArg) | -- | Sets the expanded or collapsed status of a subtable in a row. This command is invoked to process the selected status of the subtable in asynchronous loading mode. | [Tree table](demo#tree-form) |
-| setTableChildrenToggleStatus | `open: boolean` | -- | Sets the expansion and collapse status of all subtables in the current table. | [Tree table](demo#tree-form) |
-| cancelEditingStatus | -- | -- | Cancel the editing status of the cell being edited. | [Editing cell](demo#edit-cell) |
-
-## rowItem parameter (rowItem is the array element of dataSource. You can initialize the following fields to configure the table behavior.)
-
-| Parameter | Type | Default value | Description | Jump to Demo |
-| :---------------: | :-------: | :----- | :--------------------------: | :------------------------------------------------------: |
-| $checked | `boolean` | false | Optional. Whether the row is selected. | [Table interaction](demo#table-interaction) |
-| $halfChecked | `boolean` | false | Optional. Whether to select half of the row | [Table interaction](demo#table-interaction) |
-| $isChildTableOpen | `boolean` | false | Optional. Whether to expand the subtable in the row | [Tree table](demo#tree-form) |
-| children | array | -- | Optional. Configure the subtable data of the row. | [Tree table](demo#tree-form) |
-| $checkDisabled | `boolean` | false | Optional. Whether to disable this row | [Table interaction](demo#table-interaction) |
-| $checkBoxTips | `string` | -- | Optional. Configure the checkbox prompt for this row. | [Table interaction](demo#table-interaction) |
-
-# dTableHead
-
-## dTableHead Parameter
-
-| Parameter name | Type | Default value | Description | Jump to Demo |
-| :-----------: | :-------------------: | :----- | :------------------------------------------------------------------: | :------------------------------------------------------------------- |
-| checkable | `boolean` | -- | Optional. The checkbox is displayed in the first column of the table header for selecting all data. The checkbox can be associated with the selection status of the row data. | [Table interaction](demo#table-interaction) |
-| checkOptions | `TableCheckOptions[]` | -- | Optional. Drop-down list box in the table header and operations | [Customized table selection](demo#table-check-options) |
-| checkDisabled | `boolean` | -- | Optional. Indicates whether the header checkbox is disabled. |
-
-## dHeadCell Parameter
-
-| Parameter name | Type | Default value | Description | Jump to Demo |
-| :------------------: | :----------------------------------------: | :----- | :-----------------------------------------------------------: | :------------------------------------------------------- |
-| resizeEnabled | `boolean` | -- | Optional. Whether the column width can be adjusted | [Table interaction](demo#table-interaction) |
-| maxWidth | `string` | -- | Optional. Maximum width during width adjustment. Unit: `px`|
-| minWidth | `string` | -- | Optional. Minimum width for adjusting the width. Unit: `px`|
-| filterable | `boolean` | -- | Optional. Whether the column width can be filtered. | [Table interaction](demo#table-interaction) |
-| closeFilterWhenScroll | `boolean` | -- | Optional. Specifies whether to close the filter box when a table or body is scrolled. | [Table interaction](demo#table-interaction) |
-| customFilterTemplate | `TemplateRef` | -- | Optional. This parameter specifies the customized template for filtering pop-up boxes. | [Table interaction](demo#table-interaction) |
-| extraFilterTemplate | `TemplateRef` | -- | Optional. This parameter specifies the extra template for filtering pop-up boxes. | [Table interaction](demo#table-interaction) |
-| searchFn | `(term: string) => Observable>` | | Optional. The matching method of input keywords when filtering |
-| filterList | `array` | -- | Optional. Filter list. This parameter is mandatory when filterable is set to true. | [Table interaction](demo#table-interaction) |
-| filterMultiple | `boolean` | -- | Optional. Sets the column to be selected. true indicates that multiple choices are selected, and false indicates that only one choice is selected. | [Table interaction](demo#table-interaction) |
-| filterBoxWidth | `string` | -- | Optional. Width of the filter dialog box, for example, 300px. |
-| filterBoxHeight | `string` | -- | Optional. Height of the filter dialog box, for example, 400px. |
-| beforeFilter | `function\|Promise\|Observable` | -- | Optional. Callback function before the table filtering dialog box is displayed. If false is returned, the dialog box is blocked. | [Table interaction](demo#table-interaction) |
-| sortable | `boolean` | -- | Optional. Whether the column can be sorted | [Table interaction](demo#table-interaction) |
-| sortDirection | `SortDirection` | -- | Optional. Sets the sorting status of the column. | [Table interaction](demo#table-interaction) |
-| nestedColumn | `boolean` | -- | Optional. Indicates whether to display the expand or collapse icon of the table header in the tree table. | [Tree table](demo#tree-form) |
-| iconFoldTable | `DOMString` | -- | Optional. Customize the collapse icon of the tree table | [Tree table](demo#tree-form) |
-| iconUnFoldTable | `DOMString` | -- | Optional. Customize the expansion icon of the tree table | [Tree table](demo#tree-form) |
-| fixedLeft | `string` | -- | Optional. The value is fixed to the left of the column, for example, 100px. | [Fixed column](demo#fixed-column) |
-| fixedRight | `string` | -- | Optional. The value is fixed to the right of the column, for example, 100px | [fixed column](demo#fixed-column) |
-
-## dHeadCell Event
-
-| Event | Type | Description | Jump to Demo |
-| :----------------------: | :-----------------: | :-------------------------------------------------: | :------------------------------------------------------- |
-| filterChange | `FilterConfig[]` | Callback event for confirming the filtering and returning the selected filtering array. | [Table interaction](demo#table-interaction) |
-| sortChange | `SortEventArg` | Sorting callback event, which returns the sorting information of the column. | [Table interaction](demo#table-interaction) |
-| resizeStartEvent | `MouseEvent` | Event when the column width adjustment starts |
-| resizingEvent | `{width: string}` | Event that the column width is being adjusted |
-| resizeEndEvent | `{width: string}` | Event when the column width adjustment ends | [Table interaction](demo#table-interaction) |
-| toggleChildrenTableEvent | `boolean` | Event for expanding and collapsing all subtables. The value true indicates expanding, and the value false indicates collapse. |
-
-# dTableCell
-
-## dTableCell Parameter
-
-| Parameter name | Type | Default value | Description | Jump to Demo |
-| :-------------: | :-----------------------------: | :----- | :------------------------------------------------------------: | :------------------------------------------------- |
-| editable | `boolean` | -- | Optional. Whether a cell can be edited | [edit cell](demo#edit-cell) |
-| editableTip | `'hover'\|'btn'` | -- | Optional. This parameter indicates the editing prompt. The background color of the hover changes. The edit button is displayed in the btn. | [edit cell](demo#edit-cell) |
-| nestedColumn | `boolean` | -- | Optional. Display the expansion and collapse icons when the row in the tree table contains subtables. | [Tree table](demo#tree-form) |
-| nestedLayer | `number` | | Layer in a tree table. This parameter is mandatory when nestedColumn is set to true. | [Tree table](demo#tree-form) |
-| rowItem | `array` | -- | Row data. This parameter is mandatory when nestedColumn is set to true and can also be used as the callback parameter for cell editing. | [Tree table](demo#tree-form) |
-| beforeEditStart | `function\|Promise\|Observable` | -- | Optional. Callback before the cell starts editing. If false is returned, the cell starts editing. | [Edit cell](demo#edit-cell) |
-| beforeEditEnd | `function\|Promise\|Observable` | -- | Optional. Callback function before the cell edit ends. If false is returned, the cell edit stops. | [Edit cell](demo#edit-cell) |
-| iconFoldTable | `DOMString` | -- | Optional. Customize the collapse icon of the tree table | [Tree table](demo#tree-form) |
-| iconUnFoldTable | `DOMString` | -- | Optional. Customize the expansion icon of the tree table | [Tree table](demo#tree-form) |
-| fixedLeft | `string` | -- | Optional. The value is fixed to the left of the column, for example, 100px. | [Fixed column](demo#fixed-column) |
-| fixedRight | `string` | -- | Optional. The value is fixed to the right of the column, for example, 100px | [fixed column](demo#fixed-column) |
-| editing | `boolean` | -- | Optional. Use [(editing)] to obtain and control the cell editing status. | [editing cell](demo#edit-cell) |
-| field | `string` | -- | Field in the column to which the cell belongs, which is used as the parameter beforeEditStart and beforeEditEnd. | [Edit cell](demo#edit-cell) |
-
-## dTableCell Event
-
-| Event | Type | Description | Jump to Demo |
-| :-------------------: | :-------: | :-----------------------------------------------------: | :------------------------------------------------- |
-| editStatusEvent | `boolean` | Cell editing status event | [edit cell](demo#edit-cell) |
-| toggleChildTableEvent | `boolean` | Event for expanding and collapsing the subtable in the current row. The options are true and false. | [Tree table](demo#tree-form) |
-
-#### Configure the row template of the dTableBody when the user-defined template is used.
-
-For details, see (demo#tree-form)**.
-
-``` html
-
-
-
-// rowItem: row data
-// rowIndex: row number.
-// nestedLayer: level of the table to which the row belongs in the tree table, which is generated by the component. The outermost table is 0 and increases ascending order.
-// nestedIndex: row index in the tree table, which is generated by the component.
-```
-
-#### Template for prompting that the configuration data is empty
-
-The table accepts the `#noResultTemplateRef` template. For details, see **[Asynchronous data loading](demo#async-loading)**.
-
-#### Custom Filter dialog box
-
-For details, see (demo#table-interaction)**.
-
-``` html
-
-
-
-// filterListDisplay: value of the input filterList.
-// dropdown: Obtains the dropdown reference, which is used to control whether to enable or disable the pop-up dialog box.
-// column: metadata of the current column, which is implemented using the column configuration, corresponding to the DataTableColumnTmplComponent class.
-```
-
-## CheckableRelation
-
-``` ts
-export interface CheckableRelation {
- upward: boolean; // Select the child association parent.
- downward: boolean; // Select the parent associated child.
-}
-```
-
-## TableWidthConfig
-
-```ts
-export interface TableWidthConfig {
- field: string; // Column name
- width: string; // Width, in px.
-}
-```
-
-## TableCheckOptions
-
-```ts
-export interface TableCheckOptions {
- label: string;
- onChecked: Function;
-}
-```
-
-## SortEventArg
-
-```ts
-export interface SortEventArg {
- field?: string; // Column name
- direction: SortDirection; // Sequence
-}
-```
-
-## TableExpandConfig
-
-```ts
-export interface TableExpandConfig {
- expand ? : boolean, // Whether to expand
- expandTemplateRef ? : ElementRef, // Custom template
- description ? : string // Simple description
-}
-```
-
-## RowCheckChangeEventArg
-
-```ts
-export interface RowCheckChangeEventArg {
- rowIndex: number; // Row No.
- nestedIndex: string; // Row index in the tree table, which is generated by the component.
- rowItem: any; // Row data
- checked: boolean; // Indicates whether to select the check box.
-}
-```
-
-## TableCheckStatusArg
-
-```ts
-export interface TableCheckStatusArg {
- pageAllChecked?: boolean; // Select all.
- pageHalfChecked?: boolean; // Partially selected
-}
-```
-
-## RowToggleStatusEventArg
-
-```ts
-export interface RowToggleStatusEventArg {
- rowItem: any; // Row data
- open: boolean; // Indicates whether to expand the subtable.
-}
-```
-
-## FilterConfig
-
-```ts
-export interface FilterConfig {
- id: number | string;
- name: string;
- value: any;
- checked?: boolean;
-}
-```
-
-## SortDirection
-
-```ts
-export enum SortDirection {
- ASC = 'ASC',
- DESC = 'DESC',
- default = ''
-}
-```
-
-# The following table describes the parameters and methods that are available only when a table is implemented by configuring columns.
-
-## d-column parameter
-| Parameter | Type | Default value | Description | Jump to Demo |
-| :-------------------------------: | :-----------------------------: | :---------------- | :-------------------------------------------------------------------------------------: | :------------------------------------------------------- |
-| editable | `boolean` | false | Optional. Specifies whether the column can be edited on the d-column. | [edit cell](demo#edit-cell) |
-| maxWidth | `string px` | -- | Optional. Maximum width |
-| minWidth | `string px` | -- | Optional. Minimum width |
-| field | `string` | -- | Required. Fields in this column | [Basic usage](demo#basic-usage) |
-| header | `string` | -- | Text in the column header | [Basic usage](demo#basic-usage) |
-| sortable | `boolean` | -- | Optional. indicating whether to sort data | [Table interaction](demo#table-interaction) |
-| editable | `boolean` | -- | Optional. Whether the table can be edited | [Table interaction](demo#table-interaction) |
-| width | `string px,%` | -- | width | [basic usage](demo#basic-usage) |
-| nestedColumn | `Boolean` | false | Optional. Specifies the column as the operation column of the tree table. That is, the expand/collapse button and the content indentation button are available to indicate the hierarchy. | [Tree table](demo#tree-form) |
-| extraOptions.editableTip | `btn', ''` | -- | Optional. This parameter is optional and can be edited. 'btn' indicates that the edit button is displayed when you move the mouse pointer over a cell. When this parameter is not configured, the background color of the cell changes. | [Edit cell](demo#edit-cell) |
-| extraOptions.iconFoldTable | `Template` | -- | Optional. The collapse icon of the tree table is automatically defined. | [Tree table](demo#tree-form) |
-| extraOptions.iconUnFoldTable | `Template` | -- | Optional. The expansion icon of the tree table is automatically defined. | [Tree table](demo#tree-form) |
-| extraOptions.showHeadTableToggler | `boolean` | false | Optional. Indicates whether to display the expand/collapse icon in the header of the tree table. | [Tree table](demo#tree-form) |
-| order | `number` | Number. MAX_VALUE | Optional. Column number | [Basic usage](demo#basic-usage) |
-| filterable | `boolean` | -- | Optional. indicating whether to filter. | [Table interaction](demo#table-interaction) |
-| closeFilterWhenScroll | `boolean` | -- | Optional. Specifies whether to close the filter box when a table or body is scrolled. | [Table interaction](demo#table-interaction) |
-| filterList | `array` | -- | Optional. Transfer the filtering list to be operated. This parameter is mandatory when filterable is set to true. | [Table interaction](demo#table-interaction) |
-| filterMultiple | `boolean` | true | Optional. The options are as follows: true: multi-choice; false: single-choice. | [Table interaction](demo#table-interaction) |
-| customFilterTemplate | `TemplateRef` | -- | Optional. This parameter specifies the customized template of the table filtering dialog box. For details, see the "Customized Filtering Dialog Box" in the DOC. | [Table Interaction](demo#table-interaction) |
-| extraFilterTemplate | `TemplateRef` | -- | Optional. This parameter specifies the extra template of the table filtering dialog box. | [Table Interaction](demo#table-interaction) |
-| beforeFilter | `function, Promise, Observable` | -- | Optional. Callback function before the table filtering dialog box is displayed. If false is returned, the dialog box is blocked. | [Table interaction](demo#table-interaction) |
-| cellClass | `string` | -- | Optional. Custom class of the cell in the column |
-| fixedLeft | `string` | -- | Optional. Fixed distance from the column to the left, for example, '100px' | [Fixed column](demo#fixed-column) |
-| fixedRight | `string` | -- | Optional. Fixed distance from the column to the right, for example, '100px' | [Fixed column](demo#fixed-column) |
-| filterBoxWidth | `any` | -- | Optional. Width of the filter dialog box, for example, 300px. |
-| filterBoxHeight | `any` | -- | Optional. Height of the filter dialog box, for example, 400px. |
-
-## d-column event
-
-| Event | Type | Description | Jump to Demo |
-| :----------: | :--------------: | :----------------------------------: | :------------------------------------------------------- |
-| filterChange | `FilterConfig[]` | Callback event for confirming the filtering and returning the selected filtering array. | [Table interaction](demo#table-interaction) |
-
-## rowItem parameter
-
-| Parameter | Type | Default value | Description |
-| :---------------: | :-----------------: | :----- | :-------------------------------------------------------------------------------------------------------: |
-| $editDeniedConfig | `array` | -- | Optional. This parameter is used with column to configure the edit permission on some cells in the row. For example, if this parameter is set to ['age'], the cell whose field is age cannot be edited. |
-| $expandConfig | [`TableExpandConfig`](#tableexpandconfig) | -- | Optional. Configure additional content in this line. |
-| $rowClass | `string` | -- | Optional. Configure the user-defined class of the line. |
-| $hovered | `boolean` | false | The value is true when the cursor moves over the element in the row, and false when leaves the row. |
-
-#### Custom Cells
-
-When the cell data (cellItem, which is obtained by rowItem[column.field]) is of the string type, the widget can be directly displayed. When the cell data is of the object type or the special behavior of the cell needs to be defined, the cell needs to be customized for display.
-For example, we want to capitalize the data in the `Gender' column and display a prompt when you move the mouse. The relevant code is as follows:
-```
-
-
-
-
-{{cellItem.toUpperCase()}}
-
-
-
-
-```
-
-#### Customizing a Cell Editing Template
-
-The Datatable allows users to customize cell editing using a template.
-```
-
-
-
-
-
-
-
-```
-The complete template for editing customized cells and configuration cells is as follows:
-``` xml
-
-
-
-// rowIndex: row number.
-// colIndex: column sequence number
-// rowItem: data in the current row, corresponding to the key-value pair of filed and cellItem.
-// column: metadata of the current column, corresponding to the DataTableColumnTmplComponent class
-// cellItem: value of the current cell. The value is obtained from rowItem[column.field].
-// tableLevel: indicates the level of the table in the tree table. The outermost value is 0. The value increases automatically.
-```
-#### Customizing a Table Header Cell
-If a table header cell is required, the system displays the message "Gender is a head cell template" when you move the mouse over the table.
-``` xml
-
-
-
-
-{{column.header}}
-
-
-
-
-// column: Enter a column value, corresponding to the `DataTableColumnTmplComponent` class.
-```
-#### Multi-row Header and Table Header Combine Cells
-* Add this parameter when the d-column is used.
-``` javascript
-advancedHeader: Array < {
-header: string;
-rowspan: number;
-colspan: number;
-}
-```
-Note: Empty cells also need to be indicated. Set rowspan/colspan to 0 based on the content. If column width dragging and multi-row headers are used at the same time, attach the width to the column content. If the column width of the first row is incorrect, manually add the $width attribute for advancedHeader[rowNumber].
diff --git a/devui/datepicker/datepicker.tsx b/devui/datepicker/datepicker.tsx
deleted file mode 100644
index 1b01bbc08caf0c3220a958347bb9b49c924010e6..0000000000000000000000000000000000000000
--- a/devui/datepicker/datepicker.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-datepicker',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-datepicker
- }
- }
-})
\ No newline at end of file
diff --git a/devui/datepicker/demo/datepicker-demo.tsx b/devui/datepicker/demo/datepicker-demo.tsx
deleted file mode 100644
index 995d9cdaafb96b1162276f7bad158fe70ead3d15..0000000000000000000000000000000000000000
--- a/devui/datepicker/demo/datepicker-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-datepicker-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-datepicker-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/datepicker/demo/datepicker.route.ts b/devui/datepicker/demo/datepicker.route.ts
deleted file mode 100644
index d8cb903977efdd2b2714144a9c7ac02a3e391e2f..0000000000000000000000000000000000000000
--- a/devui/datepicker/demo/datepicker.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import DatepickerDemoComponent from './datepicker-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: DatepickerDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/datepicker/doc/api-cn.md b/devui/datepicker/doc/api-cn.md
deleted file mode 100644
index a3d06c7d94b324c9c07d88c5408a73e93d0ccb8b..0000000000000000000000000000000000000000
--- a/devui/datepicker/doc/api-cn.md
+++ /dev/null
@@ -1,217 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { DatepickerModule } from 'ng-devui/datepicker';
-```
-
-在页面中使用:
-
-```
-
-```
-
-# dDatepicker
-
-## dDatepicker 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------------: | :-------------------------------------------------------------------------------: | :-----------------------------: | :-----------------------------------------------------: | ------------------------------------------------ |
-| cssClass | `string` | -- | 可选,自定义 class | [基本用法](demo#datepicker-default) |
-| mode | `'year' \| 'month' \| 'date'` | 'date' | 可选,类型,根据 `dateFormat`参数设置不同的格式化 | [设置日期选择器的类型](demo#datepicker-set-mode) |
-| locale(国际化后暂无作用) | `string` | 'zh-cn' | 可选,时区 |
-| showTime | `boolean` | false | 可选,是否显示时分秒 | [格式化](demo#datepicker-format) |
-| disabled | `boolean` | false | 可选,禁用选择 | [基本用法](demo#datepicker-default) |
-| direction | `'up' \| 'down'` | 'down' | 可选,日期弹出方向 | [格式化](demo#datepicker-format) |
-| dateConverter | `function` | DefaultDateConverter | 可选,日期格式化、解析函数 |
-| dateConfig | `DateConfig` | 见下方介绍 | 可选,配置参数 | [基本用法](demo#datepicker-default) |
-| dateFormat | [ng 自定义日期格式](https://angular.cn/api/common/DatePipe#custom-format-options) | 'y/MM/dd' \| 'y/MM/dd HH:mm' | 可选,传入格式化,根据是否 showTime 区别不同默认值 | [格式化](demo#datepicker-format) |
-| minDate | `Date` | new Date('01/01/1900 00:00:00') | 可选,限制最小可选日期 | [限制最大最小日期](demo#datepicker-min-max) |
-| maxDate | `Date` | new Date('11/31/2099 23:59:59') | 可选,限制最大可选日期 | [限制最大最小日期](demo#datepicker-min-max) |
-| autoOpen | `boolean` | false | 可选,初始化是否直接展开 | [限制最大最小日期](demo#datepicker-min-max) |
-| customViewTemplate | `template` | -- | 可选,自定义快捷设置日期或自定义操作区内容,用法见 demo | [自定义操作区](demo#custom-view-template) |
-
-## dDatepicker 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :----------------: | :--------------------: | :------------------------------------------: | ----------------------------------- |
-| selectedDateChange | `EventEmitter` | 可选,子项切换的时候会发出新激活的子项的数据 | [基本用法](demo#datepicker-default) |
-
-## appendToBody(dDatepicker 附加指令组件)
-
-搭配 dDatepicker 使用该指令后,会被附加到 body,可以防止 datepicker 在滚动条内被遮挡。
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :--------------------: | :-------------------------------------------------: | :----------------------------------------------: | :------------------------------: | ------------------------------------------------ |
-| appendToBodyDirections | `Array` | `['rightDown', 'leftDown', 'rightUp', 'leftUp']` | 方向数组优先采用数组里靠前的位置 | [附着在 body 上](demo#datepicker-append-to-body) |
-
-注意: 使用 appendToBody 后需要在有滚动条的地方使用`cdkScrollable`
-
-```terminal
-npm install @angular/cdk --save
-```
-
-```TypeScript
-import { ScrollDispatchModule } from '@angular/cdk/scrolling';
-
-@NgModule({
- imports: [
- // ...
- ScrollDispatchModule,
- // ...
- ]
-})
-```
-
-```html
-
-
-
-```
-
-## ConnectedPosition 类型定义
-
-引用自`@angular/cdk/overlay`
-
-```TypeScript
-export interface ConnectedPosition {
- originX: 'start' | 'center' | 'end';
- originY: 'top' | 'center' | 'bottom';
-
- overlayX: 'start' | 'center' | 'end';
- overlayY: 'top' | 'center' | 'bottom';
-
- weight?: number;
- offsetX?: number;
- offsetY?: number;
- panelClass?: string | string[];
-}
-```
-
-## AppendToBodyDirection 类型定义
-
-```typescript
-export type AppendToBodyDirection = 'rightDown' | 'rightUp' | 'leftUp' | 'leftDown' | 'centerDown' | 'centerUp';
-```
-
-简化的几个基础的方向为名字
-
-| 简化名 | 意义 |
-| :--------: | :-------------------------------------------------------------------------: |
-| rightDown | 相对于对齐对象显示在`右下`方向, 即左对齐,显示在下方(注意右下是左对齐的) |
-| rightUp | 相对于对齐对象显示在`右上`方向, 即左对齐,显示在上方 |
-| leftUp | 相对于对齐对象显示在`左上`方向, 即右对齐,显示在上方 |
-| leftDown | 相对于对齐对象显示在`左下`方向, 即右对齐,显示在下方 |
-| centerDown | 相对于对齐对象显示在`居中下`方向, 即居中对齐,显示在下方 |
-| centerUp | 相对于对齐对象显示在`居中上`方向, 即居中对齐,显示在上方 |
-
-简化了 6 个方向的命名,其余方向可以通过 angular/cdk/overlay 的 ConnectedPosition 进行使用。
-
-appendToBodyDirections 默认的显示顺序为 ['rightDown', 'leftDown', 'rightUp', 'leftUp'],
-会尝试第一个位置,第一个位置放不下会尝试第二个位置,依此类推。
-
-## DateConfig
-
-```
-interface DateConfig{
- timePicker: boolean, // 默认false
- dateConverter: any,
- min: number, // 默认1900
- max: number, // 默认 2099
- format: {
- date: string, // 默认 'y/MM/dd'
- time: string // 默认 'y/MM/dd HH:mm'
- }
-}
-```
-
-# dDateRangePicker
-
-## dDateRangePicker 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------------: | :-------------------------------------------------------------------------------: | :-------------------------------: | :------------------------------------------------------ | ----------------------------------------------------------------- |
-| cssClass | `string` | -- | 可选,自定义 class | [范围日期选择器 集成模式](demo#datepicker-range-basic) |
-| locale(国际化后暂无作用) | `string` | 'zh-cn' | 可选,时区 |
-| showTime | `boolean` | false | 可选,是否显示时分秒 | [日期范围选择器 选择时间](demo#datepicker-range-time) |
-| disabled | `boolean` | false | 可选,禁用选择 | [禁止输入态](demo#datepicker-range-disabled) |
-| dateConverter | `function` | DefaultDateConverter | 可选,日期格式化、解析函数 |
-| dateConfig | `DateConfig` | 见下方介绍 | 可选,配置参数 | [日期范围选择器 格式化](demo#datepicker-range-format) |
-| dateFormat | [ng 自定义日期格式](https://angular.cn/api/common/DatePipe#custom-format-options) | `'y/MM/dd' \| 'y/MM/dd HH:mm'` | 可选,传入格式化 | [日期范围选择器 格式化](demo#datepicker-range-format) |
-| minDate | `Date` | `new Date('01/01/1900 00:00:00')` | 可选,限制最小可选日期 | [日期范围选择器 可选范围](demo#datepicker-range-restricted-range) |
-| maxDate | `Date` | `new Date('11/31/2099 23:59:59')` | 可选,限制最大可选日期 | [日期范围选择器 可选范围](demo#datepicker-range-restricted-range) |
-| splitter | `string` | `' - '` | 可选,两日期间的分隔符 | [日期范围选择器 格式化](demo#datepicker-range-format) |
-| selectedRange | `[Date, Date]` | `[null, null]` | 可选,时选择的日期 | [范围日期选择器 集成模式](demo#datepicker-range-basic) |
-| customViewTemplate | `template` | -- | 可选,自定义快捷设置日期或自定义操作区内容,用法见 demo | [自定义操作区](demo#datepicker-clear-button) |
-| hideOnRangeSelected | `boolean` | false | 可选,是否在选择完日期后隐藏面板 | [范围日期选择器 集成模式](demo#datepicker-range-basic) |
-
-## dDateRangePicker 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :-----------------: | :--------------------: | :--------------- | --------- |
-| selectedRangeChange | `EventEmitter` | 日期发生变化回调 |
-
-## 使用 reason 限制插件 emit 的 reason 导出
-
-datepicker 通过
-
-```TypeScript
-import { SelectDateChangeReason } from 'ng-devui/zh-cn/datepicker';
-```
-
-dateRangePicker 通过
-
-```TypeScript
-import { SelectDateRangeChangeReason } from 'ng-devui/zh-cn/datepicker';
-```
-
-来引入 reason 限制插件,如何使用可以自由发挥,清除按钮 demo 就提供了一种方式
-
-如下所示,reason 是枚举类型,所以需要根据`selectedDateChange`(dateRangePicker 为`selectedRangeChange`)返回的`reason`字段的数字进行判断,reason 当前可选值:
-
-```TypeScript
-enum SelectDateChangeReason {
- date, // 返回值为`reason:0`,代表选择日期时触发的reason
- time, // 返回值为`reason:1`,代表showTime时修改时间触发的reason
- button, // 返回值为`reason:2`,代表自带的按钮(例如清除和确定)触发时的reason
- format, // 返回值为`reason:3`,代表改变格式化时触发的reason
- custom // 返回值为`reason:4`,代表用户传入的变更触发的reason
-}
-```
-
-SelectDateRangeChangeReason 与上述用法相同
-
-# dTwoDatePicker
-
-## dTwoDatePicker 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------------: | :-------------------------------------------------------------------------------: | :-------------------------------: | :------------------------------- | -------------------------------------------------- |
-| cssClass | `string` | -- | 可选,自定义 class | [双日期选择器](demo#two-date-picker-basic) |
-| locale(国际化后暂无作用) | `string` | 'zh-cn' | 可选,时区 |
-| disabled | `boolean` | false | 可选,禁用选择 | [双日期选择器](demo#two-date-picker-basic) |
-| dateConverter | `function` | DefaultDateConverter | 可选,日期格式化、解析函数 |
-| dateConfig | `DateConfig` | 见下方介绍 | 可选,配置参数 | [双日期选择器 格式化](demo#two-date-picker-format) |
-| dateFormat | [ng 自定义日期格式](https://angular.cn/api/common/DatePipe#custom-format-options) | `'y/MM/dd' \| 'y/MM/dd HH:mm'` | 可选,传入格式化 | [双日期选择器 格式化](demo#two-date-picker-format) |
-| minDate | `Date` | `new Date('01/01/1900 00:00:00')` | 可选,限制最小可选日期 | [双日期选择器 格式化](demo#two-date-picker-format) |
-| maxDate | `Date` | `new Date('11/31/2099 23:59:59')` | 可选,限制最大可选日期 | [双日期选择器 格式化](demo#two-date-picker-format) |
-| hideOnRangeSelected | `boolean` | true | 可选,是否在选择完日期后隐藏面板 | [双日期选择器](demo#two-date-picker-basic) |
-
-## dTwoDatePicker 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :-----------------: | :--------------------: | :--------------- | ------------------------------------------ |
-| selectedRangeChange | `EventEmitter` | 日期发生变化回调 | [双日期选择器](demo#two-date-picker-basic) |
-
-## dTwoDatePickerStart 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :---------: | :--------------------: | :--------------- | ------------------------------------------ |
-| selectStart | `EventEmitter` | 日期发生变化回调 | [双日期选择器](demo#two-date-picker-basic) |
-
-## dTwoDatePickerEnd 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :-------: | :--------------------: | :--------------- | ------------------------------------------ |
-| selectEnd | `EventEmitter` | 日期发生变化回调 | [双日期选择器](demo#two-date-picker-basic) |
diff --git a/devui/datepicker/doc/api-en.md b/devui/datepicker/doc/api-en.md
deleted file mode 100644
index 1aa3b2d7a1eef32ee0b451b28d41b7d878c5a9ab..0000000000000000000000000000000000000000
--- a/devui/datepicker/doc/api-en.md
+++ /dev/null
@@ -1,217 +0,0 @@
-# How to use
-
-Import into module:
-
-```ts
-import { DatepickerModule } from 'ng-devui/datepicker';
-```
-
-In the page:
-
-```
-
-```
-
-# dDatepicker
-
-## dDatepicker parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :------------------------------------------------------------: | :------------------------------------------------------------------------------------: | :-----------------------------: | :-----------------------------------------------------------------------------------------------------: | ------------------------------------------------------ |
-| cssClass | `string` | -- | Optional, user-defined class | [Basic usage](demo#datepicker-default) |
-| mode | `'year' \| 'month' \| 'date'` | 'date' | Optional, Mode, Formatting based on the value of the `dateFormat` parameter | [Set Mode](demo#datepicker-set-mode) |
-| locale (This parameter is invalid after internationalization.) | `string` | 'zh-cn' | Optional, Time zone |
-| showTime | `boolean` | false | Optional, indicating whether to display hour, minute, and second. | [Format](demo#datepicker-format) |
-| disabled | `boolean` | false | Optional, Disable selection. | [Basic usage](demo#datepicker-default) |
-| direction | `'up '\|'down'` | 'down' | Optional, date pop-up direction | [formatting](demo#datepicker-format) |
-| dateConverter | `function` | DefaultDateConverter | Optional, formatting and parsing functions. |
-| dateConfig | `DateConfig` | See the following description. | Optional, It is a configuration parameter. | [Basic usage](demo#datepicker-default) |
-| dateFormat | [ng cunstom date format](https://angular.cn/api/common/DatePipe#custom-format-options) | 'y/MM/dd'\| 'y/MM/dd HH:mm' | Optional, Formatting is supported. The default value varies depending on whether showTime is specified. | [Format](demo#datepicker-format) |
-| minDate | `Date` | new Date('01/01/1900 00:00:00') | Optional, The minimum date can be selected. | [Maximum and minimum dates](demo#datepicker-min-max) |
-| maxDate | `Date` | new Date('11/31/2099 23:59:59') | Optional, The maximum number of available dates is limited. | [Maximum and minimum dates](demo#datepicker-min-max) |
-| autoOpen | `boolean` | false | Optional, indicating whether to expand during initialization. | [Maximum and minimum dates](demo#datepicker-min-max) |
-| customViewTemplate | `template` | -- | Optional, Customize the date or content in the operation area. For details, see demo | [Customized operation area](demo#custom-view-template) |
-
-## dDatepicker Event
-
-| Event | Type | Description | Jump to Demo |
-| :----------------: | :--------------------: | :--------------------------------------------------------------------------------------: | -------------------------------------- |
-| selectedDateChange | `EventEmitter` | Optional, When a sub-item is switched, the data of the newly activated sub-item is sent. | [Basic usage](demo#datepicker-default) |
-
-## appendToBody (dDatepicker additional instruction component)
-
-When this command is used together with dDatepicker, it is attached to the body to prevent datepicker from being blocked in the scroll bar.
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------------------: | :-------------------------------------------------: | :--------------------------------------------: | :-------------------------------------------------------------------: | ----------------------------------------------------------------------------------- |
-| appendToBodyDirections | `Array` | ` ['rightDown','leftDown','rightUp','leftUp']` | The first position in the array is preferred for the direction array. | [Attached to the body](/componentsen-us//datepicker/demo#datepicker-append-to-body) |
-
-Note: After appendToBody is used, use `cdkScrollable` where the scroll bar exists.
-
-```terminal
-npm install @angular/cdk --save
-```
-
-```TypeScript
-import {ScrollDispatchModule} from '@angular/cdk/scrolling';
-
-@NgModule({
-imports: [
-//...
-ScrollDispatchModule,
-//...
-]
-})
-```
-
-```html
-
-
-
-```
-
-## ConnectedPosition Type Definition
-
-Quoted from `@angular/cdk/overlay`
-
-```TypeScript
-export interface ConnectedPosition {
-originX: 'start' | 'center' | 'end';
-originY: 'top' | 'center' | 'bottom';
-
-overlayX: 'start' | 'center' | 'end';
-overlayY: 'top' | 'center' | 'bottom';
-
-weight? : number;
-offsetX? : number;
-offsetY? : number;
-panelClass? : string | string[];
-}
-```
-
-## AppendToBodyDirection Type Definition
-
-```typescript
-export type AppendToBodyDirection = 'rightDown' | 'rightUp' | 'leftUp' | 'leftDown' | 'centerDown' | 'centerUp';
-```
-
-Simplify several basic directions for the name.
-
-| Simplified name | Meaning |
-| :-------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------: |
-| rightDown | Display in the lower right direction relative to the aligned object, that is, the object is left aligned. (Note that the lower right is left aligned.) |
-| rightUp | Display in the upper right direction relative to the aligned object. That is, the object is left aligned and displayed at the top. |
-| leftUp | Display in the `up-left' direction relative to the aligned object, that is, right-aligned and displayed above. |
-| leftDown | Display in the lower-left direction relative to the aligned object, that is, right-aligned and displayed below. |
-| centerDown | Display in the `center-bottom' direction relative to the aligned object. That is, the object is center-aligned and displayed below. |
-| centerUp | Display in the "center-up" direction relative to the aligned object, that is, display in the center-aligned direction. |
-
-The naming of six directions is simplified. Other directions can be used by using the ConnectedPosition of angular/cdk/overlay.
-
-appendToBodyDirections: The default display sequence is ['rightDown','leftDown','rightUp','leftUp'].
-Try the first position, try the second position, and so on.
-
-## DateConfig
-
-```
-interface DateConfig{
- timePicker: boolean, // default false
- dateConverter: any,
- min: number, // default 1900
- max: number, // default 2099
- format: {
- date: string, // default 'y/MM/dd'
- time: string // default 'y/MM/dd HH:mm'
- }
-}
-```
-
-# dDateRangePicker
-
-## dDateRangePicker Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :------------------------------------------------------------: | :------------------------------------------------------------------------------------: | :-------------------------------: | :----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
-| cssClass | `string` | -- | Optional, customized class | [Integration mode of the range date selector](demo#datepicker-range-basic) |
-| locale (This parameter is invalid after internationalization.) | `string` | 'zh-cn' | Optional, Time zone |
-| showTime | `boolean` | false | Optional, indicating whether to display the hour, minute, and second. | [Time selected by the date range selector](demo#datepicker-range-time) |
-| disabled | `boolean` | false | Optional, Disable selection. | [Forbidden input](demo#datepicker-range-disabled) |
-| dateConverter | `function` | DefaultDateConverter | Optional, date formatting and parsing functions. |
-| dateConfig | `DateConfig` | See the following description. | Optional, It is a configuration parameter. | [Date range selector formatting](demo#datepicker-range-format) |
-| dateFormat | [ng cunstom date format](https://angular.cn/api/common/DatePipe#custom-format-options) | `'y/MM/dd'\|'y/MM/dd HH:mm'` | Optional, Formatting the input data | [Date range selector formatting](demo#datepicker-range-format) |
-| minDate | `Date` | `new Date('01/01/1900 00:00:00')` | Optional, The minimum available date is restricted. | [The date range selector can be selected](demo#datepicker-range-restricted-range) |
-| maxDate | `Date` | `new Date('11/31/2099 23:59:59')` | Optional, The maximum date can be selected is restricted. | [The date range selector can be selected](demo#datepicker-range-restricted-range) |
-| splitter | `string` | `' - '` | Optional, separator of two days | [Date range selector formatting](demo#datepicker-range-format) |
-| selectedRange | `[Date, Date]` | `[null, null]` | Optional, Date selected when | [Integration mode of the range date selector](demo#datepicker-range-basic) |
-| customViewTemplate | `template` | -- | Optional, Customize the date or content in the operation area. For details, see demo | [Customized operation area](demo#datepicker-clear-button) |
-| hideOnRangeSelected | `boolean` | false | Optional, Whether to hide the panel after selecting a date | [Integration mode of the range date selector](demo#datepicker-range-basic) |
-
-## dDateRangePicker Event
-
-| Event | Type | Description | Jump to Demo |
-| :-----------------: | :--------------------: | :------------------- | ------------ |
-| selectedRangeChange | `EventEmitter` | Date Change Callback |
-
-## Use reason to restrict the reason export of the plug-in emit.
-
-The datepicker passes the test.
-
-```TypeScript
-import {SelectDateChangeReason} from' ng-devui/datepicker';
-```
-
-dateRangePicker Pass
-
-```TypeScript
-import {SelectDateRangeChangeReason} from' ng-devui/datepicker';
-```
-
-To introduce the reason limit plug-in, how can be used freely, the clear button demo provides a way.
-
-As shown in the following figure, reason is of the enumerated type. Therefore, the value of reason must be determined based on the value of reason returned by `selectedDateChange` (dateRangePicker is `selectedRangeChange`). The value of reason is available.
-
-```TypeScript
-enum SelectDateChangeReason {
-date, // The return value is `reason:0`, which indicates the reason triggered when a date is selected.
-time, // The return value is `reason:1`, which indicates the reason triggered by time modification during showTime.
-button, // The return value is `reason:2`, indicating the reason when the built-in button (such as clear and OK) is triggered.
-format, // The return value is `reason:3`, indicating that the reason triggered during formatting is changed.
-custom // The return value is `reason:4`, which indicates the change-triggered reason transferred by the user.
-}
-```
-
-SelectDateRangeChangeReason is used in the same way as above
-
-# dTwoDatePicker
-
-## dTwoDatePicker Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :------------------------------------------------------------: | :------------------------------------------------------------------------------------: | :-------------------------------: | :------------------------------------------------------------- | ------------------------------------------------------------ |
-| cssClass | `string` | -- | Optional, custom class | [Dual date selector](demo#two-date-picker-basic) |
-| locale (This parameter is invalid after internationalization.) | `string` | 'zh-cn' | Optional, Time zone |
-| disabled | `boolean` | false | Optional, The selection is disabled. | [Dual date selector](demo#two-date-picker-basic) |
-| dateConverter | `function` | DefaultDateConverter | Optional, formatting and parsing functions. |
-| dateConfig | `DateConfig` | See the following description. | Optional, It is a configuration parameter. | [Dual date selector formatting](demo#two-date-picker-format) |
-| dateFormat | [ng cunstom date format](https://angular.cn/api/common/DatePipe#custom-format-options) | `'y/MM/dd'\|'y/MM/dd HH:mm'` | Optional, Formatting the input data | [Dual-date selector formatting](demo#two-date-picker-format) |
-| minDate | `Date` | `new Date('01/01/1900 00:00:00')` | Optional, The minimum date can be selected. | [Dual-date selector formatting](demo#two-date-picker-format) |
-| maxDate | `Date` | `new Date('11/31/2099 23:59:59')` | Optional, The maximum date that can be selected is restricted. | [Dual-date selector formatting](demo#two-date-picker-format) |
-| hideOnRangeSelected | `boolean` | true | Optional, Whether to hide the panel after a date is selected. | [Dual-date selector](demo#two-date-picker-basic) |
-
-## dTwoDatePicker Event
-
-| Event | Type | Description | Jump to Demo |
-| :-----------------: | :--------------------: | :------------------- | ------------------------------------------------ |
-| selectedRangeChange | `EventEmitter` | Date Change Callback | [Dual Date Selector](demo#two-date-picker-basic) |
-
-## dTwoDatePickerStart Event
-
-| Event | Type | Description | Jump to Demo |
-| :---------: | :--------------------: | :------------------- | ------------------------------------------------ |
-| selectStart | `EventEmitter` | Date Change Callback | [Dual Date Selector](demo#two-date-picker-basic) |
-
-## dTwoDatePickerEnd Event
-
-| Event | Type | Description | Jump to Demo |
-| :-------: | :--------------------: | :------------------- | ------------------------------------------------ |
-| selectEnd | `EventEmitter` | Date Change Callback | [Dual Date Selector](demo#two-date-picker-basic) |
diff --git a/devui/dragdrop/demo/dragdrop-demo.tsx b/devui/dragdrop/demo/dragdrop-demo.tsx
deleted file mode 100644
index 76a4853d5d465334888f68655eb3a1254b15c1c3..0000000000000000000000000000000000000000
--- a/devui/dragdrop/demo/dragdrop-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-dragdrop-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-dragdrop-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/dragdrop/demo/dragdrop.route.ts b/devui/dragdrop/demo/dragdrop.route.ts
deleted file mode 100644
index 2edce0c7575ef73ae9a61b6677c7d2955a279224..0000000000000000000000000000000000000000
--- a/devui/dragdrop/demo/dragdrop.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import DragDropDemoComponent from './dragdrop-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: DragDropDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': '',
- 'en-us': ''
- }}
-]
-
-export default routes
diff --git a/devui/dragdrop/doc/api-cn.md b/devui/dragdrop/doc/api-cn.md
deleted file mode 100644
index 2121f5e1847dd0cf461f3a1a6f73fe3084dae772..0000000000000000000000000000000000000000
--- a/devui/dragdrop/doc/api-cn.md
+++ /dev/null
@@ -1,383 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```typescript
-import { DragDropModule } from' ng-devui/dragdrop';
-```
-
-## Dragdrop
-
-提供 dDraggable 和 dDroppable(dSortable)指令
-
-## dDraggable 指令
-
-### dDraggable 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---------------------------- | :--------------------------------------------------------------------------------------------------------------- | :-------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------ |
-| dragData | `any` | -- | 可选,转递给 `DropEvent`事件的数据. | [基本用法](demo#basic-usage) |
-| dragScope | `string \| Array` | 'default' | 可选,限制 drop 的位置,必须匹配对应的 `dropScope` | [基本用法](demo#basic-usage) |
-| dragOverClass | `string` | -- | 可选,拖动时被拖动元素的 css | [拖拽实体元素跟随](demo#drag-entity-elements-to-follow) |
-| dragHandleClass | `string` | -- | 可选,拖动句柄,css 选择器,只有被选中的元素才能响应拖动事件 | [基本用法](demo#basic-usage) |
-| disabled | `boolean` | false | 可选,控制当前元素是否可拖动 false 为可以,true 为不可以 | [基本用法](demo#basic-usage) |
-| enableDragFollow | `boolean` | false | 可选,是否启用实体元素跟随(可以添加更多特效,如阴影等) | [拖拽实体元素跟随](demo#drag-entity-elements-to-follow) |
-| dragFollowOption | `{appendToBody?: boolean}` | -- | 可选,用于控制实体拖拽的一些配置 | [拖拽实体元素跟随](demo#drag-entity-elements-to-follow) |
-| dragFollowOption.appendToBody | `boolean` | false | 可选,用于控制实体拖拽的克隆元素插入的位置。默认 false 会插入到源元素父元素所有子的最后,设置为 true 会附着到。见说明 1 | [拖拽实体元素跟随](demo#drag-entity-elements-to-follow) |
-| originPlaceholder | `{show?: boolean; tag?: string; style?: {cssProperties: string]: string}; text?: string; removeDelay?: number;}` | -- | 可选,设置源占位符号,用于被拖拽元素原始位置占位 | [源占位符](demo#source-placeholder) |
-| originPlaceholder.show | `boolean` | true | 可选,是否显示,默认 originPlaceholder 有 Input 则显示,特殊情况可以关闭 |
-| originPlaceholder.tag | `string` | 'div' | 可选,使用 tag 名,默认 originPlaceholder 使用'div',特殊情况可以置换 |
-| originPlaceholder.style | `Object` | -- | 可选,传 style 对象,key 为样式属性,value 为样式值 | [源占位符](demo#source-placeholder) |
-| originPlaceholder.text | `string` | -- | 可选,placeholder 内的文字 | [源占位符](demo#source-placeholder) |
-| originPlaceholder.removeDelay | `number` | -- | 可选,用于希望源占位符在拖拽之后的延时里再删除,方便做动画,单位为 ms 毫秒 | [源占位符](demo#source-placeholder) |
-| dragIdentity | `any` | -- | 可选,用于虚拟滚动的恢复,虚拟滚动过程中会删除元素(溢出画面)然后又重新生成来恢复元素(回到画面),需要唯一识别值来恢复原始事件拖拽事件监听和源占位符等 |
-| dragItemParentName | `string` | -- | 可选,选择器名,和 dragItemChildrenName 搭配用于拖拽截断看不见的列表内元素以提高性能, 从 dragItemParentName 匹配的选择器里边查询匹配 dragItemChildrenName 的元素,通常是列表里查找条目,把超出可视范围的条目克隆的时候剔除 | 暂无 |
-| dragItemChildrenName | `string` | -- | 可选,选择器名,和 dragItemParentName 搭配用于拖拽截断看不见的列表内元素以提高性能,功能见 dragItemParentName 的描述 | 暂无 |
-
-说明 1:dragFollowOptions 的 appendToBody 的使用场景:当拖拽离开后源位置的父对象会被销毁的话,需要把克隆体附着到 body 上防止被销毁。默认会通过复制样式保证克隆到 body 的实体的样式是正确的,但部分深度依赖 DOM 节点位置的样式和属性可能会失败,需要手动调整部分样式。
-
-### dDraggable 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :------------- | :------------------------ | :------------------------ | :--------------------------- |
-| dragStartEvent | `EventEmitter` | 开始拖动的 DragStart 事件 | [基本用法](demo#basic-usage) |
-| dragEndEvent | `EventEmitter` | 拖动结束的 DragEnd 事件 | [基本用法](demo#basic-usage) |
-| dropEndEvent | `EventEmitter` | 放置结束的 Drop 事件 | [基本用法](demo#basic-usage) |
-
-Drag DOM Events 详情: [DragEvent](https://developer.mozilla.org/en-US/docs/Web/API/DragEvent)
-
-### batchDrag 附加指令
-
-使用方法 dDraggable batchDrag
-
-#### dDraggable batchDrag 属性
-
-| 名字 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---------------------------------- | :------------------------ | :----------------- | :--------------------------------------------------------------------------------------------- | :----------------------------------- |
-| batchDragGroup | `string` | 'default' | 可选,批量拖拽分组组名,不同组名 |
-| batchDragActive | `boolean` | false | 可选,是否把元素加入到批量拖拽组. 见说明 1。 | [批量拖拽](demo#batch-drag-and-drop) |
-| batchDragLastOneAutoActiveEventKeys | `Array` | ['ctrlKey'] | 可选,通过过拖拽可以激活批量选中的拖拽事件判断。见说明 2。 |
-| batchDragStyle | `Array` | ['badge', 'stack'] | 可选,批量拖拽的效果,badge 代表右上角有统计数字,stack 代表有堆叠效果,数组里有该字符串则有效 | [批量拖拽](demo#batch-drag-and-drop) |
-
-说明 1: `batchDragActive`为`true`的时候会把元素加入组里,加入顺序为变为 true 的顺序,先加入的在数组前面。第一个元素会确认批量的组名,如果后加入的组名和先加入的组名不一致,则后者无法加入。
-说明 2: `batchDragLastOneAutoActiveEventKeys`的默认值为['ctrlKey'], 即可以通过按住 ctrl 键拖动最后一个元素, 该元素自动加入批量拖拽的组,判断条件是 dragStart 事件里的 ctrlKey 事件为 true。目前仅支持判断 true/false。该参数为数组,可以判断任意一个属性值为 true 则生效,可用于不同操作系统的按键申明。
-
-#### dDraggable batchDrag 事件
-
-| 名字 | 类型 | 描述 | 跳转 Demo |
-| :------------------- | :--------------------------------------- | :------------------------------------------------- | :----------------------------------- |
-| batchDragActiveEvent | `EventEmitter<{el: Element, data: any}>` | 通过拖拽把元素加入了批量拖拽组,通知外部选中该元素 | [批量拖拽](demo#batch-drag-and-drop) |
-
-## dDroppable 指令
-
-### dDroppable 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------------------------- | :--------------------------------------------- | :------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------- |
-| dropScope | `string \| Array` | 'default' | 可选,限制 drop 的区域,对应 dragScope | [基本用法](demo#basic-usage) |
-| dragOverClass | `string` | -- | 可选,dragover 时 drop 元素上应用的 css |
-| placeholderStyle | `Object` | {backgroundColor: '#6A98E3', opacity: '.4'} | 可选,允许 sort 时,用于占位显示 | [源占位符](demo#source-placeholder) |
-| placeholderText | `string` | '' | 可选,允许 sort 时,用于占位显示内部的文字 |
-| allowDropOnItem | `boolean` | false | 可选,允许 sort 时,用于允许拖动到元素上,方便树形结构的拖动可以成为元素的子节点 | [多层树状拖拽](demo#multi-level-tree-drag) |
-| dragOverItemClass | `string` | -- | 可选,`allowDropOnItem`为`true`时,才有效,用于允许拖动到元素上后,被命中的元素增加样式 | [多层树状拖拽](demo#multi-level-tree-drag) |
-| nestingTargetRect | `{height?: number, width?: number}` | -- | 可选,用于修正有内嵌列表后,父项高度被撑大,此处 height,width 为父项自己的高度(用于纵向拖动),宽度(用于横向拖动) | [多层树状拖拽](demo#multi-level-tree-drag) |
-| defaultDropPosition | `'closest' \| 'before' \| 'after'` | 'closest' | 可选,设置拖拽到可放置区域但不在列表区域的放置位置,`'closest'` 为就近放下, `'before'`为加到列表头部, `'after'`为加到列表尾部 | [外部放置位置](demo#external-location) |
-| dropSortCountSelector | `string` | -- | 可选,带有 sortable 的容器的情况下排序,计数的内容的选择器名称,可以用于过滤掉不应该被计数的元素 |
-| dropSortVirtualScrollOption | `{totalLength?: number; startIndex?: number;}` | -- | 可选,用于虚拟滚动列表中返回正确的 dropIndex 需要接收 totalLength 为列表的真实总长度, startIndex 为当前排序区域显示的第一个 dom 的在列表内的 index 值 |
-
-### dDroppable 事件
-
-| 事件 | 类型 | 描述 | 跳转 Demo |
-| :------------- | :------------------------------------------ | :------------------------------------------------------------------------------ | :--------------------------- |
-| dragEnterEvent | `EventEmitter` | drag 元素进入的 dragenter 事件 | [基本用法](demo#basic-usage) |
-| dragOverEvent | `EventEmitter` | drag 元素在 drop 区域上的 dragover 事件 | [基本用法](demo#basic-usage) |
-| dragLeaveEvent | `EventEmitter` | drag 元素离开的 dragleave 事件 | [基本用法](demo#basic-usage) |
-| dropEvent | `EventEmitter<`[`DropEvent`](#dropevent)`>` | 放置一个元素, 接收的事件,其中 nativeEvent 表示原生的 drop 事件,其他见定义注释 | [基本用法](demo#basic-usage) |
-
-### DropEvent
-
-```typescript
-type DropEvent = {
- nativeEvent: any; // 原生的drop事件
- dragData: any; // drag元素的dragData数据
- dropSubject: Subject; //drop事件的Subject
- dropIndex?: number; // drop的位置在列表的index
- dragFromIndex?: number; // drag元素在原来的列表的index,注意使用虚拟滚动数据无效
- dropOnItem?: boolean; // 是否drop到了元素的上面,搭配allowDropOnItem使用
-```
-
-## dSortable 指令
-
-指定需要参与排序的 Dom 父容器(因为 drop 只是限定可拖拽区域,具体渲染由使用者控制)
-
-### dSortable 参数
-
-| 名字 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :------------- | :----------- | :----- | :------------------------------ | :-------- |
-| dSortDirection | `'v' \| 'h'` | 'v' | 'v'垂直排序,'h'水平排序 |
-| dSortableZMode | `boolean` | false | 是否是 z 模式折回排序,见说明 1 |
-
-说明 1: z 自行排序最后是以大方向为准的,如果从左到右排遇到行末换行,需要使用的垂直排序+z 模式,因为最后数据是从上到下的只是局部的数据是从左到右。
-
-### dDropScrollEnhanced 参数
-
-| 名字 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :----------------- | :---------------------------------------------------------------------------------------------- | :------- | :------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------- |
-| direction | [`DropScrollDirection`](#dropscrolldirection)即`'v'\|'h'` | 'v' | 滚动方向,垂直滚动`'v'`, 水平滚动 `'h'` | [拖拽滚动容器增强](demo#drag-and-roll-container-enhancement) |
-| responseEdgeWidth | `string \| ((total: number) => string)` | '100px' | 响应自动滚动边缘宽度, 函数的情况传入的为列表容器同个方向相对宽度 | [拖拽滚动容器增强](demo#drag-and-roll-container-enhancement) |
-| speedFn | [`DropScrollSpeedFunction`](#dropscrolldirection) | 内置函数 | 速率函数,见备注 |
-| minSpeed | `DropScrollSpeed`即`number` | 50 | 响应最小速度 ,函数计算小于这个速度的时候,以最小速度为准 |
-| maxSpeed | `DropScrollSpeed`即`number` | 1000 | 响应最大速度 ,函数计算大于这个速度的时候,以最大速度为准 |
-| viewOffset | {forward?: [`DropScrollAreaOffset`](#dropScrollAreaOffset); backward?: `DropScrollAreaOffset`;} | -- | 设置拖拽区域的偏移,用于某些位置修正 |
-| dropScrollScope | `string\| Array` | -- | 允许触发滚动 scope,不配置为默认接收所有 scope,配置情况下,draggable 的`dragScope`和`dropScrollScope`匹配得上才能触发滚动 | [拖拽滚动容器增强](demo#drag-and-roll-container-enhancement) |
-| backSpaceDroppable | `boolean` | true | 是否允许在滚动面板上同时触发放置到滚动面板的下边的具体可以放置元素,默认为 true,设置为 false 则不能边滚动边放置 |
-
-备注: speedFn 默认函数为`(x: number) => Math.ceil((1 - x) * 18) * 100`,传入数字`x`是 鼠标位置距离边缘的距离占全响应宽度的百分比,
-最终速度将会是 speedFn(x),但不会小于最小速度`minSpeed`或者大于最大速度`maxSpeed`。
-
-相关类型定义:
-
-#### DropScrollDirection
-
-```typescript
-export type DropScrollDirection = 'h' | 'v';
-```
-
-#### DropScrollSpeed
-
-```typescript
-export type DropScrollEdgeDistancePercent = number; // unit: 1
-export type DropScrollSpeed = number; // Unit: px/s
-export type DropScrollSpeedFunction = (x: DropScrollEdgeDistancePercent) => DropScrollSpeed;
-```
-
-#### DropScrollAreaOffset
-
-```typescript
-export type DropScrollAreaOffset = {
- left?: number;
- right?: number;
- top?: number;
- bottom?: number;
- widthOffset?: number;
- heightOffset?: number;
-};
-
-export enum DropScrollOrientation {
- forward, // Forward, right/bottom
- backward, // Backward, left/up
-}
-export type DropScrollTriggerEdge = 'left' | 'right' | 'top' | 'bottom';
-```
-
-`DropScrollAreaOffset` 仅重要和次要定位边有效, forward 代表后右或者往下滚动,backward 表示往左或者往上滚动
-
-| direction | `v` 上下滚动 | `h` 左右滚动 |
-| :------------------ | :--------------- | :------------- |
-| forward 往下或往右 | `left` ,`bottom` | `top` ,`right` |
-| backward 往左或网上 | `left`,`top` | `top`,`left` |
-
-### dDropScrollEnhancedSide 附属指令
-
-如果需要同时两个方向都有滚动条,则需要使用 dDropScrollEnhanced 的同时使用 dDropScrollEnhancedSide,参数列表同 dDropScrollEnhanced 指令,唯一不同是 direction,如果为`'v'`则 side 附属指令的实际方向为`'h'`。
-
-| 名字 | 类型 | 默认值 | 描述 |
-| :----------------- | :--------------------------------------------------------------------- | :------- | :------------------------------------------------------------------------------------------------------------------------- |
-| direction | `DropScrollSpeed`即`'v'\|'h'` | 'v' | 滚动方向,垂直滚动`'v'`, 水平滚动 `'h'` |
-| responseEdgeWidth | `string \| ((total: number) => string)` | '100px' | 响应自动滚动边缘宽度, 函数的情况传入的为列表容器同个方向相对宽度 |
-| speedFn | `DropScrollSpeedFunction` | 内置函数 | 速率函数,见备注 |
-| minSpeed | `DropScrollSpeed`即`number` | 50 | 响应最小速度 ,函数计算小于这个速度的时候,以最小速度为准 |
-| maxSpeed | `DropScrollSpeed`即`number` | 1000 | 响应最大速度 ,函数计算大于这个速度的时候,以最大速度为准 |
-| viewOffset | {forward?: `DropScrollAreaOffset`; backward?: `DropScrollAreaOffset`;} | -- | 设置拖拽区域的偏移,用于某些位置修正 |
-| dropScrollScope | `string\| Array` | -- | 允许触发滚动 scope,不配置为默认接收所有 scope,配置情况下,draggable 的`dragScope`和`dropScrollScope`匹配得上才能触发滚动 |
-| backSpaceDroppable | `boolean` | true | 是否允许在滚动面板上同时触发放置到滚动面板的下边的具体可以放置元素,默认为 true,设置为 false 则不能边滚动边放置 |
-
-## 使用 `dDraggable` & `dDroppable` 指令
-
-```html
-
-```
-
-```html
-
-```
-
-## CSS
-
-`dDraggable` & `dDroppable` 指令都有`[dragOverClass]`作为输入.
- 提供 drag 和 drop 时的 hover 样式,注意是`字符串`
-
-```html
-
-```
-
-## 限制 Drop 区域
-
-用[dragScope]和[dropScope]限制拖动区域,可以是字符串或数组,只有 drag 和 drop 的区域对应上才能放进去
-
-```html
-
- Coffee
- Tea
- Biryani
- Kebab
- ...
-
-```
-
-```html
-
-
只有 Drinks 可以放在这个container里
-
-
-
-
Meal 和 Drinks 可以放在这个container里
-
-```
-
-## 传递数据
-
-`dDraggable`可以用[dragData]向`droppable`传递数据
-`dDroppable`用`(dropEvent)`事件接收数据
-
-```html
-
-
-
-
Drop Items here
-
-
{{item.name}}
-
-
-```
-
-```typescript
-export class Component {
- items = [
- { name: 'Apple', type: 'fruit' },
- { name: 'Carrot', type: 'vegetable' },
- { name: 'Orange', type: 'fruit' },
- ];
-
- onItemDrop(e: any) {
- // Get the dropped data here
- this.droppedItems.push(e.dragData);
- }
- constructor() {}
-}
-```
-
-## Drag Handle
-
-Drag 句柄可以指定实际响应 draggable 事件的元素,而不是 draggable 本身
-这个参数必须是一个字符串,实际上是一个 css 选择器
-
-```html
-
- 只有.drag-handle可以响应拖动事件来拖起li
-
-
-```
-
-## 异步 DropEnd,通知 Drag 元素
-
-`dDraggable`有一个`dropEndEvent`事件,此事件非浏览器默认事件而是自定义事件,非组件自动触发触发方式是在`dDroppable`的`dropEvent`事件的参数中有一个 dropSubject,当需要触发 drag 元素上的 dropEndEvent 事件的时候调用 dropSubject.next(params) 一般是在接口返回之后 例如:
-
-```html
-
-
-
-
Drop Items here
-
-
{{item.name}}
-
-
-```
-
-```js
-export class Component {
- onItemDrop(e: any) {
- ajax.onSuccess(() => {
- e.dropSubject.next(params); //此时才触发dragComponent的dropEnd 并且params对应onDropEnd的$event;
- });
- }
- constructor() {}
-}
-export class dragComponent {
- onDropEnd($event, i) {}
-}
-```
-
-# 协同拖拽, 用于二维拖拽,跨纬度拖拽场景
-
-## 协同拖 dDragSync
-
-用于 dDraggle 对象和同时会被拖走的对象。
-
-### dDragSync 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------- | :------- | :----- | :--------------------------------------------------------------- | :-------------------------------------------------- |
-| dDragSync | `string` | '' | 必选,拖同步的组名,为空或者空字符串的时候无效,不与其他内容同步 | [二维拖拽和拖拽预览](demo#2D-drag-and-drop-preview) |
-
-## 协同放 dDropSortSync
-
-用于 dDroppable 对象和与 droppable 内 sortable 结构相同的 sortable 区域, 注意 dDroppable 对象里是与 dDroppable 对象同个对象上注册 dDropSortSync,其他不带 dDroppable 的与放置在排序区域。
-
-### dDropSortSync 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :----------------- | :---------- | :----- | :--------------------------------------------------------------- | :-------------------------------------------------- |
-| dDropSortSync | `string` | '' | 必选,放同步的组名,为空或者空字符串的时候无效,不与其他内容同步 | [二维拖拽和拖拽预览](demo#2D-drag-and-drop-preview) |
-| dDropSyncDirection | `'v'\| 'h'` | 'v' | 可选,与 dSortable 的方向正交 |
-
-## 协同监听盒子 dDragDropSyncBox
-
-用于统计 dDragSync 和 dDropSortSync 的公共父祖先。
-无参数,放置在公共统计区域则可。
-
-# 拖拽预览, 用于需要替换拖拽预览的场景
-
-## 拖拽预览 dDragPreview
-
-需要和 dDraggable 搭配使用, 用于拖起的时候拖动对象的模板
-
-### dDragPreview 参数
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :---------------------------------- | :------------------------------ | :----- | :--------------------------------------------------------------------------------- | :-------------------------------------------------- |
-| dDragPreview | `TemplateRef` | -- | 必选,预览的模板引用 | [二维拖拽和拖拽预览](demo#2D-drag-and-drop-preview) |
-| dragPreviewData | `any` | -- | 可选,自定义数据,将由模板变量获得 |
-| dragPreviewOptions | `{ skipBatchPreview : boolean}` | -- | 可选,预览选项 |
-| dragPreviewOptions.skipBatchPreview | `boolean` | false | 可选,预览选项, 是否跳过批量预览的样式处理。建议自行处理批量拖拽预览模板的可以跳过 |
-
-### dDragPreview 模板可用变量
-
-| 变量 | 类型 | 变量含义说明 |
-| :-----------------: | :------------------: | :-----------------------------------------------------------------------------------------: |
-| data | `any` | 从拖拽预览传入的 dragPreviewData 数据 |
-| draggedEl | `HTMLElement` | 被拖拽的 DOM 元素 |
-| dragData | `any` | 被拖拽元素携带的 dragData 数据 |
-| batchDragData | `Array` | 被批量拖拽的对象的 dragData 数据的数组, 含被拖拽元素的 dragData, 并且 dragData 处于第一位 |
-| dragSyncDOMElements | `Array` | 被协同拖拽的 DOM 元素, 不包括 draggedEl 指向的 DOM 元素 |
-
-## 拖拽预览辅助克隆节点
-
-可以从节点的引用中恢复 DOM 的克隆对象作为预览
-
-| 参数 | 类型 | 默认值 | 描述 | 跳转 Demo |
-| :-------- | :------------ | :----- | :----------------------------------------- | :-------- |
-| domRef | `HTMLElement` | -- | 必选,否则无意义,克隆节点的 DOM 引用 |
-| copyStyle | `boolean` | true | 可选,是否克隆节点的时候对节点依次克隆样式 |
diff --git a/devui/dragdrop/doc/api-en.md b/devui/dragdrop/doc/api-en.md
deleted file mode 100644
index 51c074ebceb34e40c9ce36f0fec1edd9309eebe6..0000000000000000000000000000000000000000
--- a/devui/dragdrop/doc/api-en.md
+++ /dev/null
@@ -1,378 +0,0 @@
-# How to use
-
-Import into module:
-
-```typescript
-import { DragDropModule } from' ng-devui/dragdrop';
-```
-
-## Dragdrop
-
-Provides the dDraggable and dDroppable(dSortable) instructions.
-
-## dDraggable directive
-
-### dDraggable Parameter
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :---------------------------- | :--------------------------------------------------------------------------------------------------------------- | :------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------- |
-| dragData | `any` | -- | Optional. Data transmitted to the `DropEvent` event. | [Basic Usage](demo#basic-usage) |
-| dragScope | `string \| Array` | 'default ' | Optional. Restricts the drop position. It must match the corresponding `dropScope`. | [Basic Usage](demo#basic-usage) |
-| dragOverClass | `string` | -- | Optional. CSS of the dragged element. | [Drag Entity Element to Follow](demo#drag-entity-elements-to-follow) |
-| dragHandleClass | `string` | -- | Optional. Drag handle. CSS selector. Only selected elements can respond to drag events. | [Basic Usage](demo#basic-usage) |
-| disabled | `boolean` | false | Optional. Specifies whether the current element can be dragged. false: yes; true: no. | [Basic Usage](demo#basic-usage) |
-| enableDragFollow | `boolean` | false | Optional. Whether to enable entity element follow (more special effects such as shadow can be added) | [Drag Entity Element to Follow](demo#drag-entity-elements-to-follow) |
-| dragFollowOption | `{appendToBody?: boolean}` | -- | Optional. It is used to control some configuration of entity dragging. | [Drag Entity Element to Follow](demo#drag-entity-elements-to-follow) |
-| dragFollowOption.appendToBody | `boolean` | false | Optional. controls the position of the clone element to be inserted in entity dragging. The default value false is inserted at the end of all children of the source element's parent element, and the value true is attached to. See Note 1 | [Drag Entity Element to Follow](demo#drag-entity-elements-to-follow) |
-| originPlaceholder | `{show?: boolean; tag?: string; style?: {cssProperties: string]: string}; text?: string; removeDelay?: number;}` | -- | Optional. Sets the Source Placeholder for the original position of the dragged element. | [Source Placeholder](demo#source-placeholder) |
-| originPlaceholder.show | `boolean` | true | Optional. It indicates whether to display the Source Placeholder. By default, the Source Placeholder is displayed if there is an input. You can disable the Source Placeholder in special cases. |
-| originPlaceholder.tag | `string` | 'div' | Optional. Whether to display originPlaceholder. By default, originPlaceholder is displayed if there is an input. This parameter can be disabled in special cases. |
-| originPlaceholder.style | `Object` | -- | Optional. The style object is transferred. The key indicates the style attribute, and the value indicates the style value. | [Source Placeholder](demo#source-placeholder) |
-| originPlaceholder.text | `string` | -- | Optional. text in placeholder | [Source Placeholder](demo#source-placeholder) |
-| originPlaceholder.removeDelay | `number` | -- | Optional. It is used to delete the Source Placeholder in the delay after dragging to facilitate animation. The unit is ms. | [Source Placeholder](demo#source-placeholder) |
-| dragIdentity | `any` | -- | Optional. This parameter is used to restore virtual scrolling. During virtual scrolling, the element is deleted (overflow) and then regenerated to restore the element (back to the image). A unique identifier is required to restore the original event drag event listening and Source Placeholder. |
-| dragItemParentName | `string` | -- | Optional. Selector name. This parameter is used with dragItemChildrenName to truncate invisible elements in the list to improve performance, query elements matching dragItemChildrenName from the selector matching dragItemParentName. Generally, search for items in the list and delete items beyond the visible scope when cloning. | None |
-| dragItemChildrenName | `string` | -- | Optional. Selector name, used with dragItemParentName to drag and truncate the invisible elements in the list to improve performance, see the description of dragItemParentName for the function. | None. |
-
-Note 1: AppendToBody of dragFollowOptions is used as follows: If the parent object in the source position is destroyed after dragFollowOptions is dragged away, the clone must be attached to the body to prevent it from being destroyed. By default, the style of the entity to be cloned is copied to ensure that the style of the entity to be cloned is correct. However, some styles and attributes that depend on the DOM node location may fail. You need to manually adjust some styles.
-
-### dDraggable Event
-
-| Event | Type | Description | Jump to Demo |
-| :------------- | :------------------------ | :---------------------------------------- | :------------------------------ |
-| dragStartEvent | `EventEmitter` | DragStart event that starts to be dragged | [Basic Usage](demo#basic-usage) |
-| dragEndEvent | `EventEmitter` | DragEnd event for ending dragging | [Basic Usage](demo#basic-usage) |
-| dropEndEvent | `EventEmitter` | Drop event when the placement ends | [Basic Usage](demo#basic-usage) |
-
-Drag DOM Events Details: [DragEvent](https://developer.mozilla.org/en-US/docs/Web/API/DragEvent)
-
-### batchDrag Additional Instructions
-
-Usage: dDraggable batchDrag
-
-#### dDraggable batchDrag Attribute
-
-| Name | Type | Default value | Description | Jump to Demo |
-| :---------------------------------- | :------------------------ | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------- |
-| batchDragGroup | `string` | 'default' | Optional. This parameter indicates the name of a group in which a group is dragged in batches. The group name varies according to the group name. |
-| batchDragActive | `boolean` | false | Optional. indicates whether to add elements to the batch dragging group. For details, see Note 1. | [Batch dragging](demo#batch-drag-and-drop) |
-| batchDragLastOneAutoActiveEventKeys | `Array` | ['ctrlKey'] | Optional. You can activate the judgment of drag events selected in batches by dragging. See Note 2. |
-| batchDragStyle | `Array` | ['badge','stack'] | Optional. This parameter indicates the effect of dragging data in batches. Badge indicates that statistics are displayed in the upper right corner, and stack indicates that stacking is displayed. This parameter is valid only when the string exists in the array. | [Batch dragging](demo#batch-drag-and-drop) |
-
-Note 1: When `batchDragActive` is set to `true`, elements are added to the group in the sequence of changing to true. The elements added first are in front of the array. The first element confirms the names of the groups to be added in batches. If the name of the group to be added later is different from that of the group to be added earlier, the group cannot be added later.
-Note 2: The default value of `batchDragLastOneAutoActiveEventKeys` is ['ctrlKey']. That is, you can hold down Ctrl and drag the last element. The element is automatically added to the group to be dragged in batches. The judgment condition is that the ctrlKey event in the dragStart event is true. Currently, only true or false is supported. This parameter is an array. This parameter is valid only when any attribute value is true and can be used for key declarations in different operating systems.
-
-#### dDraggable batchDrag Event
-
-| Name | Type | Description | Jump to Demo |
-| :------------------- | :--------------------------------------- | :------------------------------------------------------------------------------------------------------------------ | :----------------------------------------- |
-| batchDragActiveEvent | `EventEmitter<{el: Element, data: any}>` | Adds an element to a batch dragging group through dragging and instructs the external system to select the element. | [Batch dragging](demo#batch-drag-and-drop) |
-
-## dDropable Instruction
-
-### dDroppable Parameter
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :-------------------------- | :--------------------------------------------- | :------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------ |
-| dropScope | `string \| Array` | 'default' | Optional. restricting the drop area, corresponding to dragScope. | [Basic Usage](demo#basic-usage) |
-| dragOverClass | `string` | -- | Optional. CSS applied on the drop element during dragover |
-| placeholderStyle | `Object` | {backgroundColor: '#6A98E3', opacity: '.4'} | Optional. It is used for placeholder display when sort is allowed. | [Source Placeholder](demo#source-placeholder) |
-| placeholderText | `string` | '' | Optional. This parameter is used to display internal text when sorting is allowed. |
-| allowDropOnItem | `boolean` | false | Optional. When sorting is allowed, this parameter can be dragged to an element so that the tree structure can be dragged as a subnode of an element. | [Multi-layer tree dragging](demo#multi-level-tree-drag) |
-| dragOverItemClass | `string` | -- | Optional. This parameter is valid only when `allowDropOnItem` is set to `true` and is used to add styles to hit elements after dragging to elements. | [Multi-layer tree dragging](demo#multi-level-tree-drag) |
-| nestingTargetRect | `{height?: number, width?: number}` | -- | Optional. It is used to increase the height of the parent item after the embedded list is corrected. Here, height and width are the height of the parent item (for dragging vertically) and width (for dragging horizontally) | [Multi-layer tree dragging](demo#multi-level-tree-drag) |
-| defaultDropPosition | `'closest' \| 'before' \| 'after'` | `'closest'` | Optional. Sets the position where a device can be dragged to a place that is not in the list area, `closest'` indicates the nearest place, `before'` indicates the place to be added to the list header, and `after'` indicates the place to be added to the list tail. | [External Placement Position](demo#external-location) |
-| dropSortCountSelector | `string` | -- | Optional. This parameter specifies the name of the selector for counting content in the case of sortable containers. It can be used to filter out elements that should not be counted. |
-| dropSortVirtualScrollOption | `{totalLength?: number; startIndex?: number;}` | -- | Optional. It is used to return a correct dropIndex in the virtual scrolling list. The value of totalLength is the actual total length of the list, and the value of startIndex is the index value of the first dom displayed in the current sorting area in the list. |
-
-### dDroppable Event
-
-| Event | Type | Description | Jump to Demo |
-| :------------- | :---------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------- | :------------------------------ |
-| dragEnterEvent | `EventEmitter` | dragenter event entered by the drag element | [Basic Usage](demo#basic-usage) |
-| dragOverEvent | `EventEmitter` | The dragover event of the drag element on the drop area | [Basic Usage](demo#basic-usage) |
-| dragLeaveEvent | `EventEmitter` | dragleave event when the drag element leaves | [Basic Usage](demo#basic-usage) |
-| dropEvent | `EventEmitter`(See definition below) | Place an element and receive the event, where nativeEvent represents the native drop event, see definition notes for others | [Basic Usage](demo#basic-usage) |
-
-### DropEventModel Definition
-
-```typescript
-type DropEvent = {
-nativeEvent: any; // Native drop event
-dragData: any; // dragData of the drag element
-dropSubject: Subject; //Subject of the drop event
-dropIndex?: number; // The drop position is in the index of the list.
-dragFromIndex?: number; // Index of the drag element in the original list. The virtual scrolling data is invalid.
-dropOnItem?: boolean; // Indicates whether to drop the element. This parameter is used with allowDropOnItem.
-```
-
-## dSortable instruction
-
-Specifies the parent Dom container that needs to be sorted. (The drop parameter specifies only the dragable area, and the rendering is controlled by the user.)
-
-### dSortable Parameter
-
-| Name | Type | Default value | Description | Jump to Demo |
-| :------------- | :--------- | :------------ | :------------------------------------- | :----------- |
-| dSortDirection | `v'\| 'h'` | 'v' | 'v' vertical sort, 'h' horizontal sort |
-| dSortableZMode | `boolean` | false | is in Z mode. For details, see Note 1. |
-
-Note 1: Z is used to sort data based on the larger direction. If a line break occurs at the end of a row from left to right, use the vertical sorting +z mode because only partial data is from left to right.
-
-### dDropScrollEnhanced Parameter
-
-| Name | Type | Default value | Description | Jump to Demo |
-| :----------------- | :---------------------------------------------------------------------------------------------- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------- |
-| direction | [`DropScrollDirection`](#dropscrolldirection), that is, `'v'\|'h'` | 'v' | scrolling direction. Vertical scrolling `'v'` and horizontal scrolling `'h'` | [Drag and scroll container enhancement](demo#drag-and-roll-container-enhancement) |
-| responseEdgeWidth | `string \| ((total: number) => string)` | '100px' | Edge width of the response to automatic scrolling. The value of this parameter is the relative width of the list container in the same direction. | [Drag and scroll container enhancement](demo#drag-and-roll-container-enhancement) |
-| speedFn | [`DropScrollSpeedFunction`](#dropscrolldirection) | built-in function | Rate function. For details, see Remarks. |
-| minSpeed | `DropScrollSpeed` indicates `number` | 50 | Minimum response speed. If the value is less than the value, the minimum response speed prevails. |
-| maxSpeed | `DropScrollSpeed` indicates `number` | 1000 | Maximum response speed. If the value is greater than this value, the maximum response speed prevails. |
-| viewOffset | {forward?: [`DropScrollAreaOffset`](#dropscrollareaOffset); backward?: `DropScrollAreaOffset`;} | -- | Sets the offset of the dragged area, which is used to correct some positions. |
-| dropScrollScope | `string\| Array` | -- | allows scrolling. If this parameter is not configured, all scopes are received by default. If this parameter is configured, scrolling can be triggered only when `dragScope` and `dropScrollScope` of dragable match. | [Drag and scroll container enhancement](demo#drag-and-roll-container-enhancement) |
-| backSpaceDroppable | `boolean` | true | : whether to trigger elements that can be placed under the scroll panel. The default value is true. If the value is false, elements cannot be placed while scrolling. |
-
-Note: The default speedFn function is `(x: number) => Math.ceil((1 - x) * 18) * 100`. The input digit `x` indicates the percentage of the distance between the mouse position and the edge to the full response width,
-The final speed will be speedFn(x), but will not be less than the minimum speed `minSpeed` or greater than the maximum speed `maxSpeed`.
-Definition of related types:
-
-#### DropScrollDirection
-
-```typescript
-export type DropScrollDirection = 'h' | 'v';
-```
-
-#### DropScrollSpeed
-
-```typescript
-export type DropScrollEdgeDistancePercent = number; // unit: 1
-export type DropScrollSpeed = number; // Unit: px/s
-export type DropScrollSpeedFunction = (x: DropScrollEdgeDistancePercent) => DropScrollSpeed;
-```
-
-#### DropScrollAreaOffset
-
-```typescript
-export type DropScrollAreaOffset = {
- left?: number;
- right?: number;
- top?: number;
- bottom?: number;
- widthOffset?: number;
- heightOffset?: number;
-};
-
-export enum DropScrollOrientation {
- forward, // Forward, right/bottom
- backward, // Backward, left/up
-}
-export type DropScrollTriggerEdge = 'left' | 'right' | 'top' | 'bottom';
-```
-
-`DropScrollAreaOffset` is valid only for the major and minor positioning edges. forward indicates scrolling to the right or downward, and backward indicates scrolling to the left or upward.
-
-| direction | `v` Scroll up or down | `h` Scroll right or left |
-| :------------------------------ | :-------------------- | :----------------------- |
-| forward Down or right | `left` ,`bottom` | `top` ,`right` |
-| backward to the left or network | `left`,`top` | `top`,`left` |
-
-### dDropScrollEnhancedSide Subsidiary Instructions
-
-If scroll bars are required in both directions, you need to use both dDropScrollEnhanced and dDropScrollEnhancedSide. The parameter list is the same as that of the dDropScrollEnhanced command. The only difference is direction, if `v'`, the actual direction of the side subsidiary directive is `'h'`.
-
-| Name | Type | Default value | Description |
-| :----------------- | :--------------------------------------------------------------------- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| direction | `DropScrollSpeed`, that is, `v'\|'h'` | 'v' | Scrolling direction, vertical scrolling `'v'`, horizontal scrolling `'h'` |
-| responseEdgeWidth | `string \| ((total: number) => string)` | '100px' | Edge width of the response to automatic scrolling. The value is the relative width of the list container in the same direction. |
-| speedFn | `DropScrollSpeedFunction` | built-in function | Rate function. For details, see Remarks. |
-| minSpeed | `DropScrollSpeed` indicates `number` | 50 | Minimum response speed. If the value is less than the value, the minimum response speed prevails. |
-| maxSpeed | `DropScrollSpeed` indicates `number` | 1000 | Maximum response speed. If the value is greater than this value, the maximum response speed prevails. |
-| viewOffset | {forward?: `DropScrollAreaOffset`; backward?: `DropScrollAreaOffset`;} | -- | Sets the offset of the dragged area, which is used to correct certain positions. |
-| dropScrollScope | `string\| Array` | -- | allows the scrolling scope to be triggered. If this parameter is not configured, all scopes are received by default. If this parameter is configured, the scrolling scope can be triggered only when `dragScope` and `dropScrollScope` of dragable match. |
-| backSpaceDroppable | `boolean` | true | whether to trigger elements that can be placed under the scroll panel. The default value is true. If the value is false, elements cannot be placed while scrolling. |
-
-## Using the `dDraggable` & `dDroppable` Directive
-
-```html
-
-```
-
-```html
-
-```
-
-## CSS
-
-The `dDraggable` & `dDroppable` instruction has `[dragOverClass]` as the input.
-Hover styles for drag and drop are provided. Note that the value is `string'.
-
-```html
-
-```
-
-## Restrict the Drop area.
-
-Use [dragScope] and [dropScope] to restrict the drag area. The drag area can be a string or an array. Only the drag area and drop area can be placed.
-
-```html
-
- Coffee
- Tea
- Biryani
- Kebab
- ...
-
-```
-
-```html
-
-
Only Drinks can be placed in this container.
-
-
-
Meal and Drinks can be placed in this container.
-
-```
-
-## Transfer data.
-
-`dDraggable` can use [dragData] to transfer data to `droppable`
-`dDropable` uses the `(dropEvent)` event to receive data.
-
-```html
-
-
-
Drop Items here
-
-
{{item.name}}
-
-
-```
-
-```typescript
-export class Component {
- items = [
- { name: 'Apple', type: 'fruit' },
- { name: 'Carrot', type: 'vegetable' },
- { name: 'Orange', type: 'fruit' },
- ];
- onItemDrop(e: any) {
- // Get the dropped data here
- this.droppedItems.push(e.dragData);
- }
- constructor() {}
-}
-```
-
-## Drag Handle
-
-The drag handle can specify the element that actually responds to the dragable event, not the dragable itself.
-This parameter must be a string, and is actually a css selector.
-
-```html
-
- Only .drag-handle can respond to drag events to drag li.
-
-
-```
-
-## Asynchronous DropEnd, notifying the Drag element
-
-The `dDraggable` event has a `dropEndEvent` event, which is not a default event of the browser but a user-defined event. The non-component automatic triggering mode is that the `dropEvent` event of the `dDropgable` contains a dropSubject, when the dropEndEvent event on the drag element needs to be triggered, call dropSubject.next(params) after the interface returns. For example:
-
-```html
-
-
-
Drop Items here
-
-
{{item.name}}
-
-
-```
-
-```js
-export class Component {
- onItemDrop(e: any) {
- ajax.onSuccess(() => {
- e.dropSubject.next(params); //The dropEnd of dragComponent is triggered and params corresponds to $event of onDropEnd.
- });
- }
- constructor() {}
-}
-export class dragComponent {
- onDropEnd($event, i) {}
-}
-```
-
-# Collaborative dragging, used in two-dimensional dragging and cross-dimension dragging scenarios
-
-## Collaborative drag dDragSync
-
-Used for dDraggle objects and objects that can be dragged at the same time.
-
-### dDragSync Parameter
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :-------- | :------- | :------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |
-| dDragSync | `string` | '' | Mandatory, Name of the group to be synchronized. This parameter is invalid when the parameter is left blank or an empty string and is not synchronized with other content. | [Two-dimensional drag and preview](demo#2D-drag-and-drop-preview) |
-
-## Collaborative distribution dDropSortSync
-
-Used for the dDropable object and the sortable area with the same structure as the sortable area in the dropable object. Note that dDropSortSync is registered on the same object as the dDropable object, the AND without dDropable is placed in the sorting area.
-
-### dDropSortSync Parameter
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :----------------- | :-------- | :------------ | :------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |
-| dDropSortSync | `string` | '' | Mandatory, Name of the group to be synchronized. This parameter is invalid when the value is empty or an empty string. The value | [Two-dimensional drag and preview](demo#2D-drag-and-drop-preview) | is not synchronized to other content. |
-| dDropSyncDirection | `v'\|'h'` | 'v' | Optional. orthogonal to the direction of dSortable |
-
-## Collaborative listening box dDragDropSyncBox
-
-Used to collect statistics on the common parent ancestors of dDragSync and dDropSortSync.
-No parameter is available. You can place the parameter in the public statistical area.
-
-# Drag and preview, which is used in the scenario where drag and preview need to be replaced.
-
-## Drag and preview dDragPreview
-
-This parameter is used together with dDraggable to drag an object template.
-
-### dDragPreview Parameter
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :---------------------------------- | :---------------------------- | :------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |
-| dDragPreview | `TemplateRef` | -- | Required. The preview profile references | [Two-dimensional drag and preview](demo#2D-drag-and-drop-preview) |
-| dragPreviewData | `any` | -- | Optional. Customized data, which is obtained from template variables. |
-| dragPreviewOptions | `{skipBatchPreview: boolean}` | -- | Optional. preview option |
-| dragPreviewOptions.skipBatchPreview | `boolean` | false | Optional. preview option, whether to skip the batch preview style processing. It is recommended that you can skip the batch drag and drop preview template by yourself. |
-
-### Available variables in the dDragPreview template
-
-| Variable | Type | Variable Description |
-| :-----------------: | :------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------: |
-| data | `any` | dragPreviewData data transferred from drag preview |
-| draggedEl | `HTMLElement` | Dragged DOM element |
-| dragData | `any` | DragData carried by the drag element |
-| batchDragData | `Array` | An array of dragData data of the objects being dragged in batches, including dragData of the dragged element, and dragData is in the first place. |
-| dragSyncDOMElements | `Array` | DOM elements that are dragged collaboratively, excluding the DOM elements pointed to by draggedEl |
-
-## Dragging and previewing the auxiliary clone node
-
-You can restore the cloned object of the DOM from the node's reference as a preview.
-
-| Parameter | Type | Default Value | Description | Jump to Demo |
-| :-------- | :------------ | :------------ | :--------------------------------------------------------------------- | :----------- |
-| domRef | `HTMLElement` | -- | Mandatory, Otherwise meaningless, clone the DOM reference of the node. |
-| copyStyle | `boolean` | true | Optional. whether to clone nodes in sequence when cloning nodes. |
diff --git a/devui/dragdrop/dragdrop.tsx b/devui/dragdrop/dragdrop.tsx
deleted file mode 100644
index a2e25f330aa6c7eed93b3cf3ad3f47f9aad7d431..0000000000000000000000000000000000000000
--- a/devui/dragdrop/dragdrop.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-dragdrop',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-dragdrop
- }
- }
-})
\ No newline at end of file
diff --git a/devui/drawer/demo/drawer-demo.tsx b/devui/drawer/demo/drawer-demo.tsx
deleted file mode 100644
index 7df9498f8bca9e56d2ed02a0c5e35a18d7112da8..0000000000000000000000000000000000000000
--- a/devui/drawer/demo/drawer-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-drawer-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-drawer-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/drawer/demo/drawer.route.ts b/devui/drawer/demo/drawer.route.ts
deleted file mode 100644
index 2a7b3de733305a8f6ccda0933140c0ad8147eb32..0000000000000000000000000000000000000000
--- a/devui/drawer/demo/drawer.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import DrawerDemoComponent from './drawer-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: DrawerDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/drawer/doc/api-cn.md b/devui/drawer/doc/api-cn.md
deleted file mode 100644
index d6879a339149cc95bcd5bb1aa94fdd40d680e614..0000000000000000000000000000000000000000
--- a/devui/drawer/doc/api-cn.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { DrawerModule } from 'ng-devui/drawer';
-```
-
-在页面中使用:
-
-```html
-click me! 通过openDrawer函数中调用drawerService.open()打开抽屉板
-```
-
-**打开 Drawer 层**:drawerService.**open** ( ~ : **IDrawerOptions** ) : **IDrawerOpenResult**
-
-```ts
-openDrawer() {
- this.results = this.drawerService.open({
- drawerContentComponent: DrawerContentComponent,
- width: '50%',
- zIndex: 1000,
- isCover: true,
- fullScreen: true,
- backdropCloseable: true,
- escKeyCloseable: true,
- position: 'left',
- onClose: () => {
- console.log('on drawer closed');
- },
- data: {
- text: 'hello',
- name: 'tom1'
- }
- });
- }
-```
-
-注意:传递给 API 中 drawerContentComponent 的组件需要在当前 Module 的\`declarations\`和\`entryComponents\`属性中注册。
-
-# Drawer
-
-## IDrawerOptions 参数
-
-| 属性 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------------------: | :-------------------------------------------: | :-----: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------- |
-| drawerContentComponent | `Type` | -- | 必要参数,传入自定义的 component | [基本用法](demo#basic-usage) |
-| componentFactoryResolver | `ComponentFactoryResolver` | 内置 | 可选,一般不需要设置 |
-| injector | `Injector` | -- | 可选,一般不需要设置 |
-| width | `string` | '300px' | 可选,设置 drawer 的宽度 | [基本用法](demo#basic-usage) |
-| zIndex | `number` | 1000 | 可选,设置 drawer 的 z-index 值 | [基本用法](demo#basic-usage) |
-| isCover | `boolean` | true | 可选,是否有遮罩层 | [基本用法](demo#basic-usage) |
-| data | `any` | -- | 可选,可以传入任意对象给 drawerContentComponent 使用 | [基本用法](demo#basic-usage) |
-| backdropCloseable | `boolean` | true | 可选,设置可否通过点击背景来关闭 drawer 层 | [基本用法](demo#basic-usage) |
-| escKeyCloseable | `boolean` | true | 可选,设置可否通过 esc 按键来关闭 drawer 层 | [基本用法](demo#basic-usage) |
-| onClose | `Function` | -- | 可选,关闭 drawer 时候调用 | [基本用法](demo#basic-usage) |
-| afterOpened | `Function` | -- | \可选,打开 drawer 后时候调用 |
-| beforeHidden | `Function\|Promise\|()=> Observable` | -- | 可选, 关闭 drawer 前调用,返回 boolean 类型,返回 false 可以阻止关闭 drawer 层 | [基本用法](demo#basic-usage) |
-| clickDoms | `array` | [] | 可选,isCover 为 false 的情况下,点击 Dom 关闭侧滑栏 | [关闭后不销毁](demo#do-not-destroy-after-closing) |
-| destroyOnHide | `boolean` | true | 可选,关闭 drawer 时是否销毁 DrawerComponent,默认销毁 | [关闭后不销毁](demo#do-not-destroy-after-closing) |
-| position | `string` | 'right' | 可选,抽屉板出现的位置,'left'或者'right' | [基本用法](demo#basic-usage) |
-| bodyScrollable | `boolean` | true | 可选,drawer 打开后,body 是否可滚动,默认为可滚动,false 时隐藏滚动,隐藏滚动条可能会产生抖动,可以通过设置外层 fixed 来同时避免滚动与抖动,可参考 modal 的解决方案 | [解决抖动滚动问题](demo#template-fixed) |
-
-## IDrawerOpenResult 参数
-
-| 属性 | 类型 | 说明 | 跳转 Demo |
-| :-------------------: | :---------------: | :-------------------------------------------: | ---------------------------- |
-| drawerInstance | `DrawerComponent` | 返回 Drawer 对象 | [基本用法](demo#basic-usage) |
-| drawerContentInstance | `Type` | 返回 Drawer 的承载内容的对象,包括传入的 data | [基本用法](demo#basic-usage) |
-
-## drawerInstance API
-
-- **切换 drawer 的全屏状态**:drawerInstance.**toggleFullScreen**(): void
-
-- **设置 drawer 的全屏状态**:drawerInstance.**setFullScreen**(fullScreen: boolean): void
-
-- **触发打开 drawer 层**:drawerInstance.**show**(): void
-
-- **触发关闭 drawer 层**:drawerInstance.**hide**(): void, 该函数会先检查 beforeHidden,如果返回 true 才关闭
-
-- **触发销毁 drawer 层**:drawerInstance.**destroy**(): void, destroyOnHide 为 false 且 drawer 层关闭时可以调用 destroy 方法销毁
-- **设置宽度**:drawerInstance.**setWidth**(width: string): void
diff --git a/devui/drawer/doc/api-en.md b/devui/drawer/doc/api-en.md
deleted file mode 100644
index 1e48bafe425cef5912b5fdb11e548eb6fb914814..0000000000000000000000000000000000000000
--- a/devui/drawer/doc/api-en.md
+++ /dev/null
@@ -1,79 +0,0 @@
-# How to use
-Import into module:
-```ts
-import { DrawerModule } from 'ng-devui/drawer';
-```
-
-In the page:
-```html
-click me!
-Call drawerService.open() in the openDrawer function to open the drawer board.
-```
-**Open the drawer layer**: drawerService.**open** (~: **IDrawerOptions**): **IDrawerOpenResult**
-
-```ts
-openDrawer() {
- this.results = this.drawerService.open({
- drawerContentComponent: DrawerContentComponent,
- width: '50%',
- zIndex: 1000,
- isCover: true,
- fullScreen: true,
- backdropCloseable: true,
- escKeyCloseable: true,
- position: 'left',
- onClose: () => {
- console.log('on drawer closed');
- },
- data: {
- text: 'hello',
- name: 'tom1'
- }
- });
- }
-```
-Note: Components passed to drawerContentComponent in the API need to be registered in the \`declarations\` and \`entryComponents\` properties of the current module.
-
-# Drawer
-
-
-## IDrawerOptions Parameter
-
-| Attribute | Type | Default | Description | Jump to Demo |
-| :----------------------: | :------------------------: | :------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------------------- |
-| drawerContentComponent | `Type` | -- | Required. The user-defined component is transferred. | [Basic Usage](demo#basic-usage) |
-| componentFactoryResolver | `ComponentFactoryResolver` | Built-in | Optional. Generally this parameter is not required. |
-| injector | `Injector` | -- | Optional. You do not need to set this parameter. |
-| width | `string` | '300px' | Optional. Sets the width of the drawer. | [Basic Usage](demo#basic-usage) |
-| zIndex | `number` | 1000 | Optional. Sets the z-index value of the drawer. | [Basic Usage](demo#basic-usage) |
-| isCover | `boolean` | true | Optional. Indicating whether a mask is available. | [Basic Usage](demo#basic-usage) |
-| data | `any` | -- | Optional. Any object can be transferred for the drawerContentComponent. | [Basic Usage](demo#basic-usage) |
-| backdropCloseable | `boolean` | true | Optional. Specifies whether to close the drawer layer by clicking the background. | [Basic Usage](demo#basic-usage) |
-| escKeyCloseable | `boolean` | true | Optional. Sets whether the drawer layer can be closed by pressing the esc key. | [Basic Usage](demo#basic-usage) |
-| onClose | `Function` | -- | Optional. This command is invoked when the drawer is disabled. | [Basic Usage](demo#basic-usage) |
-| afterOpened | `Function` | -- | This command is optional. It is invoked when the drawer is opened. |
-| beforeHidden | `Function\|Promise\|()=> Observable` | -- | Optional. This API is invoked before the drawer is disabled. The value of the boolean type is returned. The value false can prevent the drawer layer from being disabled. | [basic usage](demo#basic-usage) |
-| clickDoms | `array` | [] | Optional. When isCover is set to false, click Dom to close the side slide bar. | [Do not destroy after being closed](demo#do-not-destroy-after-closing) |
-| destroyOnHide | `boolean` | true | Optional. Whether to destroy the drawer component when the drawer is disabled. The default value is yes. | [Do not destroy after being closed](demo#do-not-destroy-after-closing) |
-| position | `string` | 'right' | Optional. The value can be left or right. | [Basic Usage](demo#basic-usage) |
-| bodyScrollable | `boolean` | true | Optional. Whether the body can be scrolled when the drawer opens. The default value is false. If the scroll bar is hidden, the scroll bar may jitter. You need to resolve the problem in the page layout. |
-
-## IDrawerOpenResult Parameter
-
-| Attribute | Type | Description | Jump to Demo |
-| :-------------------: | :---------------: | :-------------------------------------------: | ----------------------------------------------- |
-| drawerInstance | `DrawerComponent` | Returns a Drawer object. | [Basic Usage](demo#basic-usage) |
-| drawerContentInstance | `Type` | Returns the object that carries the content of the Drawer, including the incoming data. | [Basic Usage](demo#basic-usage) |
-
-## drawerInstance API
-
-- **Switch the full screen status of the drawer**: drawerInstance.**toggleFullScreen**(): void
-
-- **Set the full-screen status of the drawer**: drawerInstance.**setFullScreen**(fullScreen: boolean): void
-
-- **Trigger opening of the drawer layer**:drawerInstance.**show**(): void
-
-- **Trigger the drawer layer to be disabled**: drawerInstance.**hide**(): void. This function checks beforeHidden first. If true is returned, the function is disabled.
-
-- **Trigger the destruction of the drawer layer**: drawerInstance.**destroy**(): void. When destroyOnHide is set to false and the drawer layer is disabled, the destroy method can be invoked to destroy the drawer layer.
-- **Set the width**: drawerInstance.**setWidth**(width: string): void
diff --git a/devui/drawer/drawer.tsx b/devui/drawer/drawer.tsx
deleted file mode 100644
index ad2892bc439c0f65d3d7dd03884bdeaf0ec96080..0000000000000000000000000000000000000000
--- a/devui/drawer/drawer.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-drawer',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-drawer
- }
- }
-})
\ No newline at end of file
diff --git a/devui/dropdown/demo/dropdown-demo.tsx b/devui/dropdown/demo/dropdown-demo.tsx
deleted file mode 100644
index e4139fe985e0796e05f6168ff796d996d61a91c9..0000000000000000000000000000000000000000
--- a/devui/dropdown/demo/dropdown-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-dropdown-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-dropdown-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/dropdown/demo/dropdown.route.ts b/devui/dropdown/demo/dropdown.route.ts
deleted file mode 100644
index 8e55c740a86e6b2b50b2e50bdc7cc7a35e900984..0000000000000000000000000000000000000000
--- a/devui/dropdown/demo/dropdown.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import DropdownDemoComponent from './dropdown-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: DropdownDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/dropdown/doc/api-cn.md b/devui/dropdown/doc/api-cn.md
deleted file mode 100644
index eb8e23da3e277b3eae4504b7d7f716b686546aa9..0000000000000000000000000000000000000000
--- a/devui/dropdown/doc/api-cn.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```typescript
-import { DragDropModule } from ' ng-devui/dragdrop';
-```
-
-## dDropDown
-
-> 使用指定的本地变量 #dropdown="d-dropdown"
-
-### dDropDown 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-------------------: | :----------------------------: | :-----: | :-------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------ |
-| isOpen | `boolean` | false | 可选,可以显示指定 dropdown 是否打开 | [设置 isOpen 控制下拉](demo#dropdown-set-is-open) |
-| disabled | `boolean` | false | 可选,设置为 true 禁用 dropdown |
-| trigger | `'click'\|'hover'\|'manually'` | 'click' | 可选,dropdown 触发方式, click 为点击,hover 为悬停(也包含点击)、manually 为完全手动控制 | [悬浮下拉](demo#suspension-drop-down) |
-| closeScope | `'all'\|'blank'\|'none'` | 'all' | 可选,点击关闭区域,blank 点击非菜单空白才关闭, all 点击菜单内外都关闭,none 菜单内外均不关闭仅下拉按键可以关闭 | [关闭触发点设置](demo#turn-off-trigger-point-settings) |
-| closeOnMouseLeaveMenu | `boolean` | false | 可选,是否进入菜单后离开菜单的时候关闭菜单 | [多级下拉菜单](demo#multi-level-drop-down-menu) |
-
-### dDropDown 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :---------: | :---------------------: | :--------------------------------------------------------------------: | ---------------------------- |
-| toggleEvent | `EventEmitter` | dropdown 菜单展开和收起的布尔值,true 表示将要展开,false 表示将要关闭 | [基本用法](demo#basic-usage) |
-
-## appendToBody(dDropDown 附加指令组件)
-
-搭配 dDropDown 使用该指令后,dDropDownMenu 会被附加到 body,可以防止 dropdown 在滚动条内被遮挡。
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :--------------------: | :-------------------------------------------------------------------------------------------------------: | :----------------------------------------------: | :-------------------------------------: | ------------------------------------------------ |
-| alignOrigin | `HTMLElement` | 可选,dDropDownToggle 所在对象 | 指定对齐的对象 | [设置展开位置处理](demo#when-using-appendtobody) |
-| appendToBodyDirections | `Array<`[`AppendToBodyDirection`](#appendtobodydirection)`\|`[`ConnectedPosition`](#connectedposition)`>` | `['rightDown', 'leftDown', 'rightUp', 'leftUp']` | 可选, 方向数组优先采用数组里靠前的位置 | [设置展开位置处理](demo#when-using-appendtobody) |
-
-注意: 使用 appendToBody 后需要在有滚动条的地方使用`cdkScrollable`
-
-```terminal
-npm install @angular/cdk --save
-```
-
-```TypeScript
-import { ScrollDispatchModule } from '@angular/cdk/scrolling';
-
-@NgModule({
- imports: [
- // ...
- ScrollDispatchModule,
- // ...
- ]
-})
-```
-
-```html
-
-
-
-```
-
-类型定义:
-
-### ConnectedPosition
-
-引用自`@angular/cdk/overlay`
-
-```typescript
-export interface ConnectedPosition {
- originX: 'start' | 'center' | 'end';
- originY: 'top' | 'center' | 'bottom';
-
- overlayX: 'start' | 'center' | 'end';
- overlayY: 'top' | 'center' | 'bottom';
-
- weight?: number;
- offsetX?: number;
- offsetY?: number;
- panelClass?: string | string[];
-}
-```
-
-### AppendToBodyDirection
-
-```typescript
-export type AppendToBodyDirection = 'rightDown' | 'rightUp' | 'leftUp' | 'leftDown' | 'centerDown' | 'centerUp';
-```
-
-简化的几个基础的方向为名字
-
-| 简化名 | 意义 |
-| :--------: | :-------------------------------------------------------------------------: |
-| rightDown | 相对于对齐对象显示在`右下`方向, 即左对齐,显示在下方(注意右下是左对齐的) |
-| rightUp | 相对于对齐对象显示在`右上`方向, 即左对齐,显示在上方 |
-| leftUp | 相对于对齐对象显示在`左上`方向, 即右对齐,显示在上方 |
-| leftDown | 相对于对齐对象显示在`左下`方向, 即右对齐,显示在下方 |
-| centerDown | 相对于对齐对象显示在`居中下`方向, 即居中对齐,显示在下方 |
-| centerUp | 相对于对齐对象显示在`居中上`方向, 即居中对齐,显示在上方 |
-
-简化了 6 个方向的命名,其余方向可以通过 angular/cdk/overlay 的 ConnectedPosition 进行使用。
-
-appendToBodyDirections 默认的显示顺序为 ['rightDown', 'leftDown', 'rightUp', 'leftUp'],
-会尝试第一个位置,第一个位置放不下会尝试第二个位置,依此类推。
-
-## dDropDownToggle
-
-用在菜单的控制对象上,参考 demo。
-
-### dDropDownToggle 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-----------: | :-------: | :---: | :-------------------------------: | ----------------------------------------------------- |
-| toggleOnFocus | `boolean` | false | 可选,通过 Tab 聚焦的时候自动展开 | [自动展开和自动聚焦](demo#auto-expand-and-auto-focus) |
-| autoFocus | `boolean` | false | 可选,实例化后自动聚焦 | [自动展开和自动聚焦](demo#auto-expand-and-auto-focus) |
-
-## dDropDownMenu
-
-用在需要展开和关闭的菜单内容上,参考 demo。
diff --git a/devui/dropdown/doc/api-en.md b/devui/dropdown/doc/api-en.md
deleted file mode 100644
index bba7c6ff8b0c3ed4eb844c622e833e0609c12cdc..0000000000000000000000000000000000000000
--- a/devui/dropdown/doc/api-en.md
+++ /dev/null
@@ -1,114 +0,0 @@
-# How to use
-
-Import into module:
-
-```typescript
-import { DropDownModule } from ' ng-devui/dropdown';
-```
-
-## dDropDown
-
-> Use the specified local variable #dropdown="d-dropdown"
-
-### dDropDown Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-------------------: | :---------------------------: | :-----: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------------------- |
-| isOpen | `boolean` | false | Optional. It indicates whether dropdown is enabled. | [Control dropdown meanu with isOpen](demo#dropdown-set-is-open) |
-| disabled | `boolean` | false | Optional. Set this parameter to true to disable dropdown. |
-| trigger | `click'\|'hover'\|'manually'` | 'click' | Optional. Dropdown trigger mode. Click indicates click, hover indicates hover (including click), and manually indicates manual control. | [Hover dropdown](demo#suspension-drop-down) |
-| closeScope | `'all'\|'blank'\|'none'` | 'all' | Optional. Click the blank area to close the blank area. Click all to close the blank area, the none menu can be closed either inside or outside. Only the drop-down button can be closed. | [Close Trigger Point Settings](demo#turn-off-trigger-point-settings) |
-| closeOnMouseLeaveMenu | `boolean` | false | Optional. Whether to close the menu when you exit the menu after entering the menu | [Multi-level drop-down menu](demo#multi-level-drop-down-menu) |
-
-### dDropDown Event
-
-| Event | Type | Description | Jump to Demo |
-| :---------: | :---------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------- |
-| toggleEvent | `EventEmitter` | dropdown Boolean value for expanding or collapsed menus. true indicates that the menu is to be expanded and false indicates that the menu is to be disabled. | [Basic usage](demo#basic-usage) |
-
-## appendToBody (dDropDown additional instruction component)
-
-If this command is used together with dDropDown, dDropDownMenu is attached to the body to prevent dropdown from being blocked in the scroll bar.
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :--------------------: | :-------------------------------------------------------------------------------------------------------: | :-----------------------------------------------: | :---------------------------------------------------------------------------------------: | --------------------------------------------------------------------- |
-| alignOrigin | `HTMLElement` | dDropDownToggle Element | Optional. Specify the aligned object | [Set the expansion position processing](demo#when-using-appendtobody) |
-| appendToBodyDirections | `Array<`[`AppendToBodyDirection`](#appendtobodydirection)`\|`[`ConnectedPosition`](#connectedposition)`>` | ` ['rightDown', 'leftDown', 'rightUp', 'leftUp']` | Optional. The direction array preferentially uses the position in the front of the array. | [Set the expansion position processing](demo#when-using-appendtobody) |
-
-Note: After appendToBody is used, use `cdkScrollable` where the scroll bar is available.
-
-```terminal
-npm install @angular/cdk --save
-```
-
-```TypeScript
-import {ScrollDispatchModule} from '@angular/cdk/scrolling';
-@NgModule({
-imports: [
-//...
-ScrollDispatchModule,
-//...
-]
-})
-```
-
-```html
-
-
-
-```
-
-Type Definition:
-
-### ConnectedPosition
-
-Quoted from `@angular/cdk/overlay`
-
-```TypeScript
-export interface ConnectedPosition {
-originX: 'start' | 'center' | 'end';
-originY: 'top' | 'center' | 'bottom';
-overlayX: 'start' | 'center' | 'end';
-overlayY: 'top' | 'center' | 'bottom';
-weight?: number;
-offsetX?: number;
-offsetY?: number;
-panelClass?: string | string[];
-}
-```
-
-### AppendToBodyDirection
-
-```typescript
-export type AppendToBodyDirection = 'rightDown' | 'rightUp' | 'leftUp' | 'leftDown' | 'centerDown' | 'centerUp';
-```
-
-Simplify several basic directions for the name.
-
-| Simplified name | Meaning |
-| :-------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------: |
-| rightDown | Display in the lower right direction relative to the aligned object, that is, the object is left aligned. (Note that the lower right is left aligned.) |
-| rightUp | Display in the upper right direction relative to the aligned object. That is, the object is left aligned and displayed at the top. |
-| leftUp | Display in the `leftUp` direction relative to the aligned object, that is, right-aligned and displayed above. |
-| leftDown | Display in the `left bottom` direction relative to the aligned object, that is, right-aligned and displayed below. |
-| centerDown | Display in the `center-bottom` direction relative to the aligned object. That is, the object is center-aligned and displayed below. |
-| centerUp | Display in the `center-up` direction relative to the aligned object, that is, display in the center-aligned direction. |
-
-The naming of six directions is simplified. Other directions can be used by using the ConnectedPosition of angular/cdk/overlay.
-appendToBodyDirections: The default display sequence is ['rightDown','leftDown','rightUp','leftUp'].
-Try the first position, try the second position, and so on.
-
-## dDropDownToggle
-
-Used for menu control objects. For details, see demo.
-
-### dDropDownToggle Parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :-----------: | :-------: | :-----: | :-------------------------------------------------------: | -------------------------------------------------------------------- |
-| toggleOnFocus | `boolean` | false | Optional. Automatically expands when you focus on the tab | [Auto Expand and Auto Focus](demo#auto-expand-and-auto-focus) |
-| autoFocus | `boolean` | false | Optional. Automatic focus after instantiation | [Automatic expansion and autofocus](demo#auto-expand-and-auto-focus) |
-
-## dDropDownMenu
-
-Used to expand and close menus. For details, see the demo.
diff --git a/devui/dropdown/dropdown.tsx b/devui/dropdown/dropdown.tsx
deleted file mode 100644
index 8feb8bd1f4bdcef0fa7d4aee6d854796f158c14b..0000000000000000000000000000000000000000
--- a/devui/dropdown/dropdown.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-dropdown',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-dropdown
- }
- }
-})
\ No newline at end of file
diff --git a/devui/editable-select/demo/editable-select-demo.tsx b/devui/editable-select/demo/editable-select-demo.tsx
deleted file mode 100644
index 227f7f002e2384ed0b68832cc264ad2887ab1d3a..0000000000000000000000000000000000000000
--- a/devui/editable-select/demo/editable-select-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-editable-select-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-editable-select-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/editable-select/demo/editable-select.route.ts b/devui/editable-select/demo/editable-select.route.ts
deleted file mode 100644
index 91469c39774b77e75551f82580b301fcbd092908..0000000000000000000000000000000000000000
--- a/devui/editable-select/demo/editable-select.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import EditableSelectDemoComponent from './editable-select-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: EditableSelectDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/editable-select/doc/api-cn.md b/devui/editable-select/doc/api-cn.md
deleted file mode 100644
index 266c13e1c728e3130ff390c450f1d8f643096c36..0000000000000000000000000000000000000000
--- a/devui/editable-select/doc/api-cn.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# 如何使用
-在module中引入:
-```ts
-import { EditableSelectModule } from 'ng-devui/editable-select';
-```
-在页面中使用:
-```html
-
-```
-# d-editable-select
-## d-editable-select 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :------------------: | :------------: | :---------------------------------: | :--------------------------------------------- | ------------------------------------------------------------------------- |
-| appendToBody | `boolean` | false | 可选,下拉是否 appendToBody | [基本用法](demo#basic-usage) |
-| width | `number` | -- | 可选,控制下拉框宽度,搭配 appendToBody 使用(`px`) |
-| ngModel | `any` | -- | 可选,绑定选中对象,可双向绑定 | [基本用法](demo#basic-usage) |
-| source | `Array` | -- | 必选,数据列表 | [基本用法](demo#basic-usage) |
-| disabled | `boolean` | false | 可选,值为 true 禁用下拉框 |
-| disabledKey | `string` | -- | 可选,设置禁用选项的 Key 值 | [设置禁用选项](demo#disable-data-with-source) |
-| placeholder | `string` | '' | 可选,没有选中项的时候提示文字 |
-| itemTemplate | `TemplateRef` | -- | 可选,下拉菜单条目的模板 |
-| noResultItemTemplate | `TemplateRef` | -- | 可选,下拉菜单条目搜索后没有结果的模板 |
-| maxHeight | `number` | -- | 可选,下拉菜单的最大高度(`px`) | [基本用法](demo#basic-usage) |
-| searchFn | `(term: string) => Observable` | [`defaultSearchFn`](#defaultsearchfn) | 可选,自定义搜索函数 | [自定义匹配方法](demo#with-search-function) |
-| enableLazyLoad | `boolean` | false | 可选,是否允许懒加载 | [数据懒加载](demo#lazy-load) |
-
-## d-editable-select 事件
-
-| 事件 | 类型 | 说明 | 跳转 Demo |
-| :------: | :-----------------: | :-----------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------- |
-| loadMore | `EventEmitter>` | 懒加载触发事件,配合`enableLazyLoad`使用,使用`$event.loadFinish()`关闭 loading 状态,其中\$event 为 AutoCompletePopupComponent 的实例 | [数据懒加载](demo#lazy-load) |
-
-# 接口 & 类型定义
-### defaultSearchFn
-
-```ts
-defaultSearchFn = (term) => {
- return of(this.source.filter((lang) => this.formatter(lang).toLowerCase().indexOf(term.toLowerCase()) !== -1));
-};
-```
-term 为输入的关键字。
diff --git a/devui/editable-select/doc/api-en.md b/devui/editable-select/doc/api-en.md
deleted file mode 100644
index 0e513fcc14f7e5447f4074357f3b1e65e21eb6cd..0000000000000000000000000000000000000000
--- a/devui/editable-select/doc/api-en.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# How to use
-Import into module
-```ts
-import { EditableSelectModule } from' ng-devui/editable-select';
-```
-On the page
-```html
-
-```
-# d-editable-select
-## d-editable-select parameter
-
-| Parameter | Type | Default | Description | Jump to Demo |
-| :------------------: | :------------: | :---------------------------------: | :--------------------------------------------- | ------------------------------------------------------------------------- |
-| appendToBody | `boolean` | false | Optional. Whether to appendToBody in the drop-down list box | [Basic usage](demo#basic-usage) |
-| width | `number` | -- | Optional. Controls the width of the drop-down list box. This parameter is used with appendToBody (`px`) |
-| ngModel | `any` | -- | Optional. Selected objects can be bound in both directions. | [Basic usage](demo#basic-usage) |
-| source | `Array` | -- | Required. Data list | [Basic usage](demo#basic-usage) |
-| disabled | `boolean` | false | Optional. The value true indicates that the drop-down list box is disabled. |
-| disabledKey | `string` | -- | Optional. Sets the key value of the disabled option. | [Set disable options](demo#disable-data-with-source) |
-| placeholder | `string` |'' | Optional. This field is displayed when no item is selected. |
-| itemTemplate | `TemplateRef` | -- | Optional, Dropdown list item template |
-| noResultItemTemplate | `TemplateRef` | -- | Optional. Template for which no result is found after the drop-down list item is searched. |
-| maxHeight | `number` | -- | Optional. Maximum height of the drop-down list box (`px`) | [Basic usage](demo#basic-usage) |
-| searchFn | `(term: string) => Observable` | [`defaultSearchFn`](#defaultsearchfn) | Optional. User-defined search function | [Customized data matching method](demo#with-search-function) |
-| enableLazyLoad | `boolean` | false | Optional. Whether lazy loading is allowed | [Enable lazy load](demo#lazy-load) |
-
-## d-editable-select event
-
-| Event | Type | Description | Jump to Demo |
-| :------: | :-----------------: | :-----------------------------------------------------------------------------------------------------------------------------------: | -------------------------------------------------------- |
-| loadMore | `EventEmitter>` | lazy loading trigger event. This event is used together with `enableLazyLoad' to disable the loading status. \$event indicates the instance of AutoCompletePopupComponent | [Enable lazy load](demo#lazy-load) |
-
-# Interface & Type Definition
-### defaultSearchFn
-
-```ts
-defaultSearchFn = (term) => {
-return of(this.source.filter((lang) => this.formatter(lang).toLowerCase().indexOf(term.toLowerCase()) !== -1));
-};
-```
-term indicates the entered keyword.
diff --git a/devui/editable-select/editable-select.tsx b/devui/editable-select/editable-select.tsx
deleted file mode 100644
index c7c03585a780d9e6ee2236a028b5e8981c482df1..0000000000000000000000000000000000000000
--- a/devui/editable-select/editable-select.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-editable-select',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-editable-select
- }
- }
-})
\ No newline at end of file
diff --git a/devui/form/demo/form-demo.tsx b/devui/form/demo/form-demo.tsx
deleted file mode 100644
index a3a1b427060f8d43ef0cf757c051478b40fa3cac..0000000000000000000000000000000000000000
--- a/devui/form/demo/form-demo.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import { defineComponent } from 'vue'
-
-export default defineComponent({
- name: 'd-form-demo',
- props: {
- },
- setup(props, ctx) {
- return () => {
- return devui-form-demo
- }
- }
-})
\ No newline at end of file
diff --git a/devui/form/demo/form.route.ts b/devui/form/demo/form.route.ts
deleted file mode 100644
index e92a96e3b78a6bf7d95f6262c3b31ca1b62ae2ef..0000000000000000000000000000000000000000
--- a/devui/form/demo/form.route.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import FormDemoComponent from './form-demo'
-import DevUIApiComponent from '../../shared/devui-api/devui-api'
-
-import ApiCn from '../doc/api-cn.md'
-import ApiEn from '../doc/api-en.md'
-const routes = [
- { path: '', redirectTo: 'demo' },
- { path: 'demo', component: FormDemoComponent},
- { path: 'api', component: DevUIApiComponent, meta: {
- 'zh-cn': ApiCn,
- 'en-us': ApiEn
- }}
-]
-
-export default routes
diff --git a/devui/form/doc/api-cn.md b/devui/form/doc/api-cn.md
deleted file mode 100644
index 0baf4b6ea16ea2c10b762bf7fdf6ca37a661b619..0000000000000000000000000000000000000000
--- a/devui/form/doc/api-cn.md
+++ /dev/null
@@ -1,283 +0,0 @@
-# 如何使用
-
-在 module 中引入:
-
-```ts
-import { FormModule } from 'ng-devui/form';
-```
-
-如果你需使用到 NgForm,则引入:
-
-```ts
-import { FormsModule } from '@angular/forms';
-```
-
-在页面中使用:
-
-```html
-
-
-
-
-```
-
-# dForm
-
-## dForm 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :-------: | :-----------------------------------: | :----------: | :------------------------------------------------------------------------- | -------------------------------------------- |
-| layout | `'horizontal'\|'vertical'\|'columns'` | 'horizontal' | 可选,设置表单的排列方式 | [基本用法](demo#basic-usage) |
-| labelSize | `'sm' \| '' \| 'lg'` | '' | 可选,设置 label 的占宽,未设置默认为 100px,'sm'对应 80px,'lg'对应 150px | [label 横向排列](demo#demo-label-horizontal) |
-| labelAlign | `'start' \| 'center' \| 'end'` | 'start' | 可选,设置水平布局方式下,label对齐方式 | [label 横向排列](demo#demo-label-horizontal) |
-
-## dForm 事件
-
-| 参数 | 类型 | 说明 | 跳转 Demo |
-| :------: | :-----------------: | :-------------------------------------------------------------------------------------- | ---------------------------------------------- |
-| dSubmit | `EventEmitter<{valid: boolean, directive: `[`DFormGroupRuleDirective`](#dformgroupruledirective) `\| AbstractControlDirective}, errors: {[key: string]: ValidationErrors}>` | 可选,使用dFormSubmit绑定元素触发提交时,响应事件 | [模板驱动表单验证(推荐)](demo#demo-validate-template) |
-
-# d-form-item
-
-## d-form-item 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :----------: | :-------: | :---: | :------------------------------------------ | --------------------------------------------- |
-| dHasFeedback | `boolean` | false | 可选,设置当前 formControl 是否显示反馈图标 | [响应式表单验证](demo#demo-validate-reactive) |
-
-# d-form-label
-
-## d-form-label 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :------: | :-------: | :---: | :------------------------------------------------- | ---------------------------- |
-| required | `boolean` | false | 可选,表单选项是否必填 | [基本用法](demo#basic-usage) |
-| hasHelp | `boolean` | false | 可选,表单项是否需要帮助指引 | [基本用法](demo#basic-usage) |
-| helpTips | `string` | '' | 可选,表单项帮助指引提示内容,需配合 `hasHelp`使用 | [基本用法](demo#basic-usage) |
-
-# d-form-control
-
-## d-form-control 参数
-
-| 参数 | 类型 | 默认 | 说明 | 跳转 Demo |
-| :------------: | :-----------------------------------------: | :--: | :----------------------------------------- | -------------------------------------------- |
-| extraInfo | `string \| TemplateRef` | -- | 可选,附件信息,一般用于补充表单选项的说明 | [label 横向排列](demo#demo-label-horizontal) |
-| feedbackStatus | [`DFormControlStatus`](#dformcontrolstatus) | -- | 可选,手动指定当前 control 状态反馈 | [指定表单状态](demo#demo-custom-status) |
-| suffixTemplate | `TemplateRef` | -- | 可选,可传入图标模板作为输入框后缀 |
-
-# dFormSubmit
-
-- 在`