Эх сурвалжийг харах

【v7.3】路由支持动态参数、优化编译方式

神仙都没用 9 сар өмнө
parent
commit
32c5e4bc39
100 өөрчлөгдсөн 4345 нэмэгдсэн , 4928 устгасан
  1. 1 5
      .editorconfig
  2. 0 3
      .eslintignore
  3. 0 47
      .eslintrc.js
  4. 0 8
      .prettierrc
  5. 10 0
      .prettierrc.json
  6. 8 0
      .vscode/extensions.json
  7. 12 2
      .vscode/settings.json
  8. 0 0
      env.d.ts
  9. 73 0
      eslint.config.js
  10. 45 34
      package.json
  11. 3 3
      packages/crud/index.d.ts
  12. 1 1
      packages/crud/src/components/form/helper/index.ts
  13. 14 3
      packages/crud/src/components/search/index.tsx
  14. 1 1
      packages/crud/src/components/table/helper/render.tsx
  15. 1 1
      packages/crud/src/utils/form-hook.ts
  16. 1 1
      packages/crud/src/utils/mitt.ts
  17. 16 1
      packages/crud/types/components/add-btn.d.ts
  18. 22 1
      packages/crud/types/components/add-btn/index.d.ts
  19. 16 1
      packages/crud/types/components/adv-btn.d.ts
  20. 64 47
      packages/crud/types/components/adv-search.d.ts
  21. 47 3
      packages/crud/types/components/adv/btn.d.ts
  22. 87 40
      packages/crud/types/components/adv/search.d.ts
  23. 50 26
      packages/crud/types/components/context-menu/index.d.ts
  24. 16 16
      packages/crud/types/components/crud/helper.d.ts
  25. 42 18
      packages/crud/types/components/crud/index.d.ts
  26. 179 82
      packages/crud/types/components/dialog/index.d.ts
  27. 22 5
      packages/crud/types/components/error-message.d.ts
  28. 29 5
      packages/crud/types/components/error-message/index.d.ts
  29. 55 38
      packages/crud/types/components/filter-group.d.ts
  30. 22 5
      packages/crud/types/components/filter.d.ts
  31. 50 33
      packages/crud/types/components/filter/group.d.ts
  32. 29 5
      packages/crud/types/components/filter/index.d.ts
  33. 16 1
      packages/crud/types/components/flex1.d.ts
  34. 22 1
      packages/crud/types/components/flex1/index.d.ts
  35. 41 24
      packages/crud/types/components/form-card.d.ts
  36. 97 27
      packages/crud/types/components/form-card/index.d.ts
  37. 74 57
      packages/crud/types/components/form-tabs.d.ts
  38. 64 36
      packages/crud/types/components/form-tabs/index.d.ts
  39. 31 34
      packages/crud/types/components/form/helper.d.ts
  40. 19 15
      packages/crud/types/components/form/helper/action.d.ts
  41. 1 3
      packages/crud/types/components/form/helper/api.d.ts
  42. 325 230
      packages/crud/types/components/form/helper/index.d.ts
  43. 10 5
      packages/crud/types/components/form/helper/plugins.d.ts
  44. 11 18
      packages/crud/types/components/form/helper/tabs.d.ts
  45. 43 19
      packages/crud/types/components/form/index.d.ts
  46. 1 1
      packages/crud/types/components/index.d.ts
  47. 16 1
      packages/crud/types/components/multi-delete-btn.d.ts
  48. 22 1
      packages/crud/types/components/multi-delete-btn/index.d.ts
  49. 23 8
      packages/crud/types/components/pagination.d.ts
  50. 28 3
      packages/crud/types/components/pagination/index.d.ts
  51. 57 38
      packages/crud/types/components/query.d.ts
  52. 48 31
      packages/crud/types/components/query/index.d.ts
  53. 16 1
      packages/crud/types/components/refresh-btn.d.ts
  54. 22 1
      packages/crud/types/components/refresh-btn/index.d.ts
  55. 16 1
      packages/crud/types/components/row.d.ts
  56. 22 1
      packages/crud/types/components/row/index.d.ts
  57. 80 59
      packages/crud/types/components/search-key.d.ts
  58. 81 53
      packages/crud/types/components/search-key/index.d.ts
  59. 79 55
      packages/crud/types/components/search/index.d.ts
  60. 61 57
      packages/crud/types/components/table/helper.d.ts
  61. 8 5
      packages/crud/types/components/table/helper/data.d.ts
  62. 8 5
      packages/crud/types/components/table/helper/height.d.ts
  63. 199 166
      packages/crud/types/components/table/helper/index.d.ts
  64. 6 8
      packages/crud/types/components/table/helper/op.d.ts
  65. 1 1
      packages/crud/types/components/table/helper/plugins.d.ts
  66. 12 5
      packages/crud/types/components/table/helper/render.d.ts
  67. 15 11
      packages/crud/types/components/table/helper/row.d.ts
  68. 3 5
      packages/crud/types/components/table/helper/selection.d.ts
  69. 19 16
      packages/crud/types/components/table/helper/sort.d.ts
  70. 90 60
      packages/crud/types/components/table/index.d.ts
  71. 61 37
      packages/crud/types/components/upsert/index.d.ts
  72. 4 4
      packages/crud/types/hooks/browser.d.ts
  73. 31 28
      packages/crud/types/hooks/core.d.ts
  74. 20 7
      packages/crud/types/hooks/crud.d.ts
  75. 2 2
      packages/crud/types/hooks/form.d.ts
  76. 6 6
      packages/crud/types/hooks/index.d.ts
  77. 6 3
      packages/crud/types/index.d.ts
  78. 29 29
      packages/crud/types/locale/en.d.ts
  79. 124 124
      packages/crud/types/locale/index.d.ts
  80. 29 29
      packages/crud/types/locale/ja.d.ts
  81. 29 29
      packages/crud/types/locale/zh-cn.d.ts
  82. 29 29
      packages/crud/types/locale/zh-tw.d.ts
  83. 29 31
      packages/crud/types/test/service.d.ts
  84. 3 3
      packages/crud/types/utils/form-hook.d.ts
  85. 3 3
      packages/crud/types/utils/global.d.ts
  86. 7 3
      packages/crud/types/utils/index.d.ts
  87. 6 6
      packages/crud/types/utils/mitt.d.ts
  88. 19 8
      packages/crud/types/utils/parse.d.ts
  89. 3 3
      packages/crud/types/utils/temp.d.ts
  90. 32 29
      packages/crud/types/utils/test.d.ts
  91. 8 8
      packages/crud/types/utils/vnode.d.ts
  92. 1 1
      packages/vite-plugin/src/eps/index.ts
  93. 2 2
      packages/vite-plugin/src/tag/index.ts
  94. 1199 2948
      pnpm-lock.yaml
  95. 2 2
      src/App.vue
  96. 6 6
      src/config/dev.ts
  97. 15 15
      src/config/index.ts
  98. 3 3
      src/config/prod.ts
  99. 6 6
      src/config/proxy.ts
  100. 28 26
      src/cool/bootstrap/eps.ts

+ 1 - 5
.editorconfig

@@ -1,8 +1,4 @@
-# 🎨 editorconfig.org
-
-root = true
-
-[*]
+[*.{js,jsx,mjs,cjs,ts,tsx,mts,cts,vue}]
 charset = utf-8
 end_of_line = lf
 indent_style = tab

+ 0 - 3
.eslintignore

@@ -1,3 +0,0 @@
-packages/
-dist/
-node_modules/

+ 0 - 47
.eslintrc.js

@@ -1,47 +0,0 @@
-/* eslint-env node */
-require("@rushstack/eslint-patch/modern-module-resolution");
-
-module.exports = {
-	root: true,
-	extends: [
-		"plugin:vue/vue3-essential",
-		"eslint:recommended",
-		"@vue/eslint-config-typescript",
-		"@vue/eslint-config-prettier/skip-formatting"
-	],
-	parserOptions: {
-		ecmaVersion: "latest"
-	},
-	rules: {
-		"@typescript-eslint/ban-ts-ignore": "off",
-		"@typescript-eslint/explicit-function-return-type": "off",
-		"@typescript-eslint/no-explicit-any": "off",
-		"@typescript-eslint/no-var-requires": "off",
-		"@typescript-eslint/no-empty-function": "off",
-		"vue/no-mutating-props": "off",
-		"vue/component-name-in-template-casing": ["error", "kebab-case"],
-		"vue/component-definition-name-casing": ["error", "kebab-case"],
-		"no-use-before-define": "off",
-		"no-unused-vars": "off",
-		"@typescript-eslint/no-use-before-define": "off",
-		"@typescript-eslint/ban-ts-comment": "off",
-		"@typescript-eslint/ban-types": "off",
-		"@typescript-eslint/no-non-null-assertion": "off",
-		"@typescript-eslint/explicit-module-boundary-types": "off",
-		"@typescript-eslint/no-namespace": "off",
-		"@typescript-eslint/no-unused-vars": "off",
-		"space-before-function-paren": "off",
-		"vue/attributes-order": "off",
-		"vue/one-component-per-file": "off",
-		"vue/html-closing-bracket-newline": "off",
-		"vue/max-attributes-per-line": "off",
-		"vue/multiline-html-element-content-newline": "off",
-		"vue/multi-word-component-names": "off",
-		"vue/singleline-html-element-content-newline": "off",
-		"vue/attribute-hyphenation": "off",
-		"vue/html-self-closing": "off",
-		"vue/require-default-prop": "off",
-		"vue/v-on-event-hyphenation": "off",
-		"no-self-assign": "off"
-	}
-};

+ 0 - 8
.prettierrc

@@ -1,8 +0,0 @@
-{
-	"tabWidth": 4,
-	"useTabs": true,
-	"semi": true,
-	"singleQuote": false,
-	"printWidth": 100,
-	"trailingComma": "none"
-}

+ 10 - 0
.prettierrc.json

@@ -0,0 +1,10 @@
+{
+	"$schema": "https://json.schemastore.org/prettierrc",
+	"semi": true,
+	"useTabs": true,
+	"tabWidth": 4,
+	"printWidth": 100,
+	"singleQuote": true,
+  "arrowParens": "avoid",
+	"trailingComma": "none"
+}

+ 8 - 0
.vscode/extensions.json

@@ -0,0 +1,8 @@
+{
+  "recommendations": [
+    "Vue.volar",
+    "vitest.explorer",
+    "dbaeumer.vscode-eslint",
+    "esbenp.prettier-vscode"
+  ]
+}

+ 12 - 2
.vscode/settings.json

@@ -1,4 +1,14 @@
 {
-	"editor.cursorSmoothCaretAnimation": "on",
-	"editor.formatOnSave": true,
+  "editor.cursorSmoothCaretAnimation": "on",
+  "explorer.fileNesting.enabled": true,
+  "explorer.fileNesting.patterns": {
+    "tsconfig.json": "tsconfig.*.json, env.d.ts",
+    "vite.config.*": "jsconfig*, vitest.config.*, cypress.config.*, playwright.config.*",
+    "package.json": "package-lock.json, pnpm*, .yarnrc*, yarn*, .eslint*, eslint*, .prettier*, prettier*, .editorconfig"
+  },
+  "editor.codeActionsOnSave": {
+    "source.fixAll": "explicit"
+  },
+  "editor.formatOnSave": true,
+  "editor.defaultFormatter": "esbenp.prettier-vscode"
 }

+ 0 - 0
src/vite-env.d.ts → env.d.ts


+ 73 - 0
eslint.config.js

@@ -0,0 +1,73 @@
+import pluginVue from 'eslint-plugin-vue';
+import vueTsEslintConfig from '@vue/eslint-config-typescript';
+import prettier from 'eslint-plugin-prettier';
+import skipFormatting from '@vue/eslint-config-prettier/skip-formatting';
+
+export default [
+	{
+		name: 'app/files-to-lint',
+		files: ['**/*.{ts,mts,tsx,vue}'],
+	},
+
+	{
+		name: 'app/files-to-ignore',
+		ignores: [
+			'**/dist/**',
+			'**/dist-ssr/**',
+			'**/coverage/**',
+			'**/packages/**',
+			'**/build/**',
+		],
+	},
+
+	...pluginVue.configs['flat/recommended'],
+	...vueTsEslintConfig(),
+	skipFormatting,
+
+	{
+		languageOptions: {
+			parserOptions: {
+				ecmaVersion: 2020,
+				ecmaFeatures: {
+					jsx: true,
+				},
+			},
+		},
+		rules: {
+			'@typescript-eslint/ban-ts-ignore': 'off',
+			'@typescript-eslint/explicit-function-return-type': 'off',
+			'@typescript-eslint/no-explicit-any': 'off',
+			'@typescript-eslint/no-var-requires': 'off',
+			'@typescript-eslint/no-empty-function': 'off',
+			'@typescript-eslint/no-use-before-define': 'off',
+			'@typescript-eslint/ban-ts-comment': 'off',
+			'@typescript-eslint/ban-types': 'off',
+			'@typescript-eslint/no-non-null-assertion': 'off',
+			'@typescript-eslint/explicit-module-boundary-types': 'off',
+			'@typescript-eslint/no-namespace': 'off',
+			'@typescript-eslint/no-unused-vars': 'off',
+			'@typescript-eslint/no-empty-object-type': 'off',
+			'space-before-function-paren': 'off',
+			'no-unused-vars': 'off',
+			'no-use-before-define': 'off',
+			'no-self-assign': 'off',
+			'vue/no-mutating-props': 'off',
+			'vue/no-template-shadow': 'off',
+			'vue/no-v-html': 'off',
+			'vue/component-name-in-template-casing': ['error', 'kebab-case'],
+			'vue/component-definition-name-casing': ['error', 'kebab-case'],
+			'vue/attributes-order': 'off',
+			'vue/one-component-per-file': 'off',
+			'vue/html-closing-bracket-newline': 'off',
+			'vue/max-attributes-per-line': 'off',
+			'vue/multiline-html-element-content-newline': 'off',
+			'vue/multi-word-component-names': 'off',
+			'vue/singleline-html-element-content-newline': 'off',
+			'vue/attribute-hyphenation': 'off',
+			'vue/html-self-closing': 'off',
+			'vue/require-default-prop': 'off',
+			'vue/v-on-event-hyphenation': 'off',
+			'vue/block-lang': 'off',
+		},
+	},
+];

+ 45 - 34
package.json

@@ -1,64 +1,75 @@
 {
 	"name": "cool-admin",
-	"version": "7.2.0",
+	"version": "7.3.0",
+	"type": "module",
 	"scripts": {
 		"dev": "vite --host",
-		"build": "vite build",
+		"build": "run-p type-check \"build-only {@}\" --",
 		"preview": "vite preview",
-		"format": "prettier --write src/",
-		"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .eslintignore"
+		"build-only": "vite build",
+		"type-check": "vue-tsc --build --force",
+		"lint": "eslint . --fix",
+		"format": "prettier --write src/"
 	},
 	"dependencies": {
 		"@cool-vue/crud": "^7.2.2",
 		"@element-plus/icons-vue": "^2.3.1",
-		"@vueuse/core": "^10.4.0",
+		"@vueuse/core": "^11.1.0",
 		"@wangeditor/editor": "^5.1.23",
 		"@wangeditor/editor-for-vue": "^5.1.12",
-		"axios": "^1.7.2",
+		"axios": "^1.7.7",
 		"chardet": "^2.0.0",
-		"core-js": "^3.32.1",
-		"dayjs": "^1.11.10",
-		"echarts": "^5.4.3",
-		"element-plus": "^2.8.3",
+		"core-js": "^3.38.1",
+		"dayjs": "^1.11.13",
+		"echarts": "^5.5.1",
+		"element-plus": "^2.8.4",
 		"file-saver": "^2.0.5",
 		"lodash-es": "^4.17.21",
-		"marked": "^11.1.1",
+		"marked": "^14.1.3",
 		"mitt": "^3.0.1",
 		"mockjs": "^1.1.0",
-		"monaco-editor": "0.49.0",
+		"monaco-editor": "0.52.0",
 		"nprogress": "^0.2.0",
-		"pinia": "^2.1.7",
-		"socket.io-client": "^4.7.2",
+		"pinia": "^2.2.4",
+		"socket.io-client": "^4.8.0",
 		"store": "^2.0.12",
-		"vue": "^3.5.6",
-		"vue-echarts": "^6.6.1",
-		"vue-router": "^4.4.0",
+		"vue": "^3.5.12",
+		"vue-echarts": "^7.0.3",
+		"vue-router": "^4.4.5",
 		"vuedraggable": "^4.1.0",
 		"xlsx": "^0.18.5"
 	},
 	"devDependencies": {
 		"@cool-vue/vite-plugin": "^7.2.4",
-		"@rushstack/eslint-patch": "^1.8.0",
+		"@rushstack/eslint-patch": "^1.10.4",
+		"@tsconfig/node20": "^20.1.4",
 		"@types/file-saver": "^2.0.7",
-		"@types/lodash-es": "^4.17.8",
-		"@types/mockjs": "^1.0.7",
-		"@types/node": "^20.14.5",
-		"@types/nprogress": "^0.2.0",
-		"@types/store": "^2.0.2",
+		"@types/jsdom": "^21.1.7",
+		"@types/lodash-es": "^4.17.12",
+		"@types/mockjs": "^1.0.10",
+		"@types/node": "^20.16.11",
+		"@types/nprogress": "^0.2.3",
+		"@types/store": "^2.0.5",
 		"@vitejs/plugin-vue": "^5.1.4",
 		"@vitejs/plugin-vue-jsx": "^4.0.1",
-		"@vue/compiler-sfc": "^3.5.6",
-		"@vue/eslint-config-prettier": "^9.0.0",
-		"@vue/eslint-config-typescript": "^13.0.0",
-		"eslint": "^8.57.0",
-		"eslint-plugin-vue": "^9.23.0",
+		"@vue/compiler-sfc": "^3.5.12",
+		"@vue/eslint-config-prettier": "^10.0.0",
+		"@vue/eslint-config-typescript": "^14.0.1",
+		"@vue/test-utils": "^2.4.6",
+		"@vue/tsconfig": "^0.5.1",
+		"eslint": "^9.12.0",
+		"eslint-plugin-prettier": "^5.2.1",
+		"eslint-plugin-vue": "^9.29.0",
+		"jsdom": "^25.0.1",
+		"npm-run-all2": "^6.2.3",
 		"prettier": "^3.3.3",
-		"rollup-plugin-visualizer": "^5.9.2",
-		"sass": "^1.53.0",
-		"terser": "^5.27.0",
-		"typescript": "^5.4.0",
-		"vite": "^5.3.4",
+		"rollup-plugin-visualizer": "^5.12.0",
+		"sass": "^1.77.0",
+		"terser": "^5.36.0",
+		"typescript": "~5.5.4",
+		"vite": "^5.4.8",
 		"vite-plugin-compression": "^0.5.1",
-		"vite-plugin-vue-devtools": "^7.3.1"
+		"vite-plugin-vue-devtools": "^7.5.2",
+		"vue-tsc": "^2.1.6"
 	}
 }

+ 3 - 3
packages/crud/index.d.ts

@@ -40,8 +40,8 @@ declare type obj = {
 declare type DeepPartial<T> = T extends Function
 	? T
 	: T extends object
-	  ? { [P in keyof T]?: DeepPartial<T[P]> }
-	  : T;
+		? { [P in keyof T]?: DeepPartial<T[P]> }
+		: T;
 
 // 合并
 declare type Merge<A, B> = Omit<A, keyof B> & B;
@@ -307,7 +307,7 @@ declare namespace ClTable {
 		search: {
 			isInput: boolean;
 			value: any;
-			refreshOnChange: Boolean;
+			refreshOnChange: boolean;
 			component: Render.Component;
 		};
 		dict: DictOptions | Vue.Ref<DictOptions>;

+ 1 - 1
packages/crud/src/components/form/helper/index.ts

@@ -54,7 +54,7 @@ export function useForm() {
 		() => form,
 		(val) => {
 			if (config.on?.change) {
-				for (let i in val) {
+				for (const i in val) {
 					if (form[i] !== oldForm.value[i]) {
 						config.on?.change(val, i);
 					}

+ 14 - 3
packages/crud/src/components/search/index.tsx

@@ -1,6 +1,17 @@
 import { useConfig, useCore, useForm } from "../../hooks";
 import { isEmpty, keys } from "lodash-es";
-import { onMounted, PropType, defineComponent, ref, h, reactive, inject, mergeProps, watch, watchEffect } from "vue";
+import {
+	onMounted,
+	PropType,
+	defineComponent,
+	ref,
+	h,
+	reactive,
+	inject,
+	mergeProps,
+	watch,
+	watchEffect
+} from "vue";
 import { useApi } from "../form/helper";
 
 export default defineComponent({
@@ -13,7 +24,7 @@ export default defineComponent({
 		},
 		props: {
 			type: Object,
-			default: () => { }
+			default: () => {}
 		},
 
 		// 表单值
@@ -132,7 +143,7 @@ export default defineComponent({
 						config.onLoad?.(data);
 					},
 					change(data, prop) {
-						config.onChange?.(data, prop)
+						config.onChange?.(data, prop);
 					}
 				}
 			});

+ 1 - 1
packages/crud/src/components/table/helper/render.tsx

@@ -142,7 +142,7 @@ export function useRender() {
 	}
 
 	// 插槽 empty
-	function renderEmpty(emptyText: String) {
+	function renderEmpty(emptyText: string) {
 		return (
 			<div class="cl-table__empty">
 				{slots.empty ? (

+ 1 - 1
packages/crud/src/utils/form-hook.ts

@@ -100,7 +100,7 @@ function parse(method: "submit" | "bind", { value, hook: pipe, form, prop }: any
 	} else if (isArray(pipe)) {
 		pipes = pipe;
 	} else if (isObject(pipe)) {
-		// @ts-ignore
+		// @ts-expect-error
 		pipes = isArray(pipe[method]) ? pipe[method] : [pipe[method]];
 	} else if (isFunction(pipe)) {
 		pipes = [pipe];

+ 1 - 1
packages/crud/src/utils/mitt.ts

@@ -10,7 +10,7 @@ class Mitt {
 	}
 
 	send(type: "emit" | "off" | "on", name: string, ...args: any[]) {
-		// @ts-ignore
+		// @ts-expect-error
 		mitt[type](`${this.id}__${name}`, ...args);
 	}
 

+ 16 - 1
packages/crud/types/components/add-btn.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => false | JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => false | JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 22 - 1
packages/crud/types/components/add-btn/index.d.ts

@@ -1,2 +1,23 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 16 - 1
packages/crud/types/components/adv-btn.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 64 - 47
packages/crud/types/components/adv-search.d.ts

@@ -1,50 +1,67 @@
 /// <reference types="../index" />
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<{
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    title: StringConstructor;
-    size: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: string;
-    };
-    op: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    onSearch: FunctionConstructor;
-}, {
-    open: () => void;
-    close: () => void;
-    reset: () => void;
-    clear: () => void;
-    search: () => void;
-    Drawer: import("vue").Ref<any>;
-    Form: import("vue").Ref<ClForm.Ref | undefined>;
-    visible: import("vue").Ref<boolean>;
-}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("clear" | "reset")[], "clear" | "reset", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    title: StringConstructor;
-    size: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: string;
-    };
-    op: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    onSearch: FunctionConstructor;
-}>> & {
-    onReset?: ((...args: any[]) => any) | undefined;
-    onClear?: ((...args: any[]) => any) | undefined;
-}, {
-    items: ClForm.Item[];
-    op: unknown[];
-    size: string | number;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		items: {
+			type: PropType<ClForm.Item[]>;
+			default: () => never[];
+		};
+		title: StringConstructor;
+		size: {
+			type: (NumberConstructor | StringConstructor)[];
+			default: string;
+		};
+		op: {
+			type: ArrayConstructor;
+			default: () => string[];
+		};
+		onSearch: FunctionConstructor;
+	},
+	{
+		open: () => void;
+		close: () => void;
+		reset: () => void;
+		clear: () => void;
+		search: () => void;
+		Drawer: import("vue").Ref<any>;
+		Form: import("vue").Ref<ClForm.Ref | undefined>;
+		visible: import("vue").Ref<boolean>;
+	},
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("clear" | "reset")[],
+	"clear" | "reset",
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			items: {
+				type: PropType<ClForm.Item[]>;
+				default: () => never[];
+			};
+			title: StringConstructor;
+			size: {
+				type: (NumberConstructor | StringConstructor)[];
+				default: string;
+			};
+			op: {
+				type: ArrayConstructor;
+				default: () => string[];
+			};
+			onSearch: FunctionConstructor;
+		}>
+	> & {
+		onReset?: ((...args: any[]) => any) | undefined;
+		onClear?: ((...args: any[]) => any) | undefined;
+	},
+	{
+		items: ClForm.Item[];
+		op: unknown[];
+		size: string | number;
+	}
+>;
 export default _default;

+ 47 - 3
packages/crud/types/components/adv/btn.d.ts

@@ -1,4 +1,48 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {
-    Search: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{
+		Search: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+	},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 87 - 40
packages/crud/types/components/adv/search.d.ts

@@ -1,43 +1,90 @@
 /// <reference types="../index" />
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    items: {
-        type: PropType<ClForm.Item<any>[]>;
-        default: () => never[];
-    };
-    title: StringConstructor;
-    size: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: string;
-    };
-    op: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    onSearch: FunctionConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("clear" | "reset")[], "clear" | "reset", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    items: {
-        type: PropType<ClForm.Item<any>[]>;
-        default: () => never[];
-    };
-    title: StringConstructor;
-    size: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: string;
-    };
-    op: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    onSearch: FunctionConstructor;
-}>> & Readonly<{
-    onReset?: ((...args: any[]) => any) | undefined;
-    onClear?: ((...args: any[]) => any) | undefined;
-}>, {
-    size: string | number;
-    items: ClForm.Item<any>[];
-    op: unknown[];
-}, {}, {
-    Close: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		items: {
+			type: PropType<ClForm.Item<any>[]>;
+			default: () => never[];
+		};
+		title: StringConstructor;
+		size: {
+			type: (NumberConstructor | StringConstructor)[];
+			default: string;
+		};
+		op: {
+			type: ArrayConstructor;
+			default: () => string[];
+		};
+		onSearch: FunctionConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("clear" | "reset")[],
+	"clear" | "reset",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			items: {
+				type: PropType<ClForm.Item<any>[]>;
+				default: () => never[];
+			};
+			title: StringConstructor;
+			size: {
+				type: (NumberConstructor | StringConstructor)[];
+				default: string;
+			};
+			op: {
+				type: ArrayConstructor;
+				default: () => string[];
+			};
+			onSearch: FunctionConstructor;
+		}>
+	> &
+		Readonly<{
+			onReset?: ((...args: any[]) => any) | undefined;
+			onClear?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		size: string | number;
+		items: ClForm.Item<any>[];
+		op: unknown[];
+	},
+	{},
+	{
+		Close: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+	},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 50 - 26
packages/crud/types/components/context-menu/index.d.ts

@@ -1,31 +1,55 @@
 /// <reference types="../index" />
 import { type PropType } from "vue";
-declare const ClContextMenu: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    show: BooleanConstructor;
-    options: {
-        type: PropType<ClContextMenu.Options>;
-        default: () => {};
-    };
-    event: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    show: BooleanConstructor;
-    options: {
-        type: PropType<ClContextMenu.Options>;
-        default: () => {};
-    };
-    event: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-}>> & Readonly<{}>, {
-    options: ClContextMenu.Options;
-    show: boolean;
-    event: Record<string, any>;
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const ClContextMenu: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		show: BooleanConstructor;
+		options: {
+			type: PropType<ClContextMenu.Options>;
+			default: () => {};
+		};
+		event: {
+			type: ObjectConstructor;
+			default: () => {};
+		};
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			show: BooleanConstructor;
+			options: {
+				type: PropType<ClContextMenu.Options>;
+				default: () => {};
+			};
+			event: {
+				type: ObjectConstructor;
+				default: () => {};
+			};
+		}>
+	> &
+		Readonly<{}>,
+	{
+		options: ClContextMenu.Options;
+		show: boolean;
+		event: Record<string, any>;
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export declare const ContextMenu: {
-    open(event: any, options: ClContextMenu.Options): ClContextMenu.Exposed;
+	open(event: any, options: ClContextMenu.Options): ClContextMenu.Exposed;
 };
 export default ClContextMenu;

+ 16 - 16
packages/crud/types/components/crud/helper.d.ts

@@ -1,23 +1,23 @@
 /// <reference types="../index" />
 import { Mitt } from "../../utils/mitt";
 interface Options {
-    mitt: Mitt;
-    config: ClCrud.Config;
-    crud: ClCrud.Ref;
+	mitt: Mitt;
+	config: ClCrud.Config;
+	crud: ClCrud.Ref;
 }
 export declare function useHelper({ config, crud, mitt }: Options): {
-    proxy: (name: string, data?: any[]) => void;
-    set: (key: string, value: any) => false | undefined;
-    on: (name: string, callback: fn) => void;
-    rowInfo: (data: any) => void;
-    rowAdd: () => void;
-    rowEdit: (data: any) => void;
-    rowAppend: (data: any) => void;
-    rowDelete: (...selection: any[]) => void;
-    rowClose: () => void;
-    refresh: (params?: obj) => Promise<unknown>;
-    getPermission: (key: "page" | "list" | "info" | "update" | "add" | "delete") => boolean;
-    paramsReplace: (params: obj) => any;
-    getParams: () => obj;
+	proxy: (name: string, data?: any[]) => void;
+	set: (key: string, value: any) => false | undefined;
+	on: (name: string, callback: fn) => void;
+	rowInfo: (data: any) => void;
+	rowAdd: () => void;
+	rowEdit: (data: any) => void;
+	rowAppend: (data: any) => void;
+	rowDelete: (...selection: any[]) => void;
+	rowClose: () => void;
+	refresh: (params?: obj) => Promise<unknown>;
+	getPermission: (key: "page" | "list" | "info" | "update" | "add" | "delete") => boolean;
+	paramsReplace: (params: obj) => any;
+	getParams: () => obj;
 };
 export {};

+ 42 - 18
packages/crud/types/components/crud/index.d.ts

@@ -1,19 +1,43 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    name: StringConstructor;
-    border: BooleanConstructor;
-    padding: {
-        type: StringConstructor;
-        default: string;
-    };
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    name: StringConstructor;
-    border: BooleanConstructor;
-    padding: {
-        type: StringConstructor;
-        default: string;
-    };
-}>> & Readonly<{}>, {
-    border: boolean;
-    padding: string;
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		name: StringConstructor;
+		border: BooleanConstructor;
+		padding: {
+			type: StringConstructor;
+			default: string;
+		};
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			name: StringConstructor;
+			border: BooleanConstructor;
+			padding: {
+				type: StringConstructor;
+				default: string;
+			};
+		}>
+	> &
+		Readonly<{}>,
+	{
+		border: boolean;
+		padding: string;
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 179 - 82
packages/crud/types/components/dialog/index.d.ts

@@ -1,83 +1,180 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    modelValue: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    props: ObjectConstructor;
-    title: {
-        type: StringConstructor;
-        default: string;
-    };
-    height: StringConstructor;
-    width: {
-        type: StringConstructor;
-        default: string;
-    };
-    padding: {
-        type: StringConstructor;
-        default: string;
-    };
-    keepAlive: BooleanConstructor;
-    fullscreen: BooleanConstructor;
-    controls: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    hideHeader: BooleanConstructor;
-    beforeClose: FunctionConstructor;
-    scrollbar: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-    [key: string]: any;
-}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "fullscreen-change")[], "update:modelValue" | "fullscreen-change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    props: ObjectConstructor;
-    title: {
-        type: StringConstructor;
-        default: string;
-    };
-    height: StringConstructor;
-    width: {
-        type: StringConstructor;
-        default: string;
-    };
-    padding: {
-        type: StringConstructor;
-        default: string;
-    };
-    keepAlive: BooleanConstructor;
-    fullscreen: BooleanConstructor;
-    controls: {
-        type: ArrayConstructor;
-        default: () => string[];
-    };
-    hideHeader: BooleanConstructor;
-    beforeClose: FunctionConstructor;
-    scrollbar: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>> & Readonly<{
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-    "onFullscreen-change"?: ((...args: any[]) => any) | undefined;
-}>, {
-    title: string;
-    padding: string;
-    width: string;
-    keepAlive: boolean;
-    hideHeader: boolean;
-    controls: unknown[];
-    fullscreen: boolean;
-    modelValue: boolean;
-    scrollbar: boolean;
-}, {}, {
-    Close: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-    FullScreen: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-    Minus: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		modelValue: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		props: ObjectConstructor;
+		title: {
+			type: StringConstructor;
+			default: string;
+		};
+		height: StringConstructor;
+		width: {
+			type: StringConstructor;
+			default: string;
+		};
+		padding: {
+			type: StringConstructor;
+			default: string;
+		};
+		keepAlive: BooleanConstructor;
+		fullscreen: BooleanConstructor;
+		controls: {
+			type: ArrayConstructor;
+			default: () => string[];
+		};
+		hideHeader: BooleanConstructor;
+		beforeClose: FunctionConstructor;
+		scrollbar: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+	}>,
+	() => import("vue").VNode<
+		import("vue").RendererNode,
+		import("vue").RendererElement,
+		{
+			[key: string]: any;
+		}
+	>,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("update:modelValue" | "fullscreen-change")[],
+	"update:modelValue" | "fullscreen-change",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			props: ObjectConstructor;
+			title: {
+				type: StringConstructor;
+				default: string;
+			};
+			height: StringConstructor;
+			width: {
+				type: StringConstructor;
+				default: string;
+			};
+			padding: {
+				type: StringConstructor;
+				default: string;
+			};
+			keepAlive: BooleanConstructor;
+			fullscreen: BooleanConstructor;
+			controls: {
+				type: ArrayConstructor;
+				default: () => string[];
+			};
+			hideHeader: BooleanConstructor;
+			beforeClose: FunctionConstructor;
+			scrollbar: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+		}>
+	> &
+		Readonly<{
+			"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+			"onFullscreen-change"?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		title: string;
+		padding: string;
+		width: string;
+		keepAlive: boolean;
+		hideHeader: boolean;
+		controls: unknown[];
+		fullscreen: boolean;
+		modelValue: boolean;
+		scrollbar: boolean;
+	},
+	{},
+	{
+		Close: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+		FullScreen: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+		Minus: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+	},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 22 - 5
packages/crud/types/components/error-message.d.ts

@@ -1,6 +1,23 @@
-declare const _default: import("vue").DefineComponent<{
-    title: StringConstructor;
-}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    title: StringConstructor;
-}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		title: StringConstructor;
+	},
+	() => JSX.Element,
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			title: StringConstructor;
+		}>
+	>,
+	{}
+>;
 export default _default;

+ 29 - 5
packages/crud/types/components/error-message/index.d.ts

@@ -1,6 +1,30 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    title: StringConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    title: StringConstructor;
-}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		title: StringConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			title: StringConstructor;
+		}>
+	> &
+		Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 55 - 38
packages/crud/types/components/filter-group.d.ts

@@ -1,41 +1,58 @@
 /// <reference types="../index" />
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<{
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onSearch: FunctionConstructor;
-}, {
-    Form: import("vue").Ref<ClForm.Ref | undefined>;
-    loading: import("vue").Ref<boolean>;
-    search: () => void;
-    reset: () => void;
-}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onSearch: FunctionConstructor;
-}>>, {
-    items: ClForm.Item[];
-    data: Record<string, any>;
-    resetBtn: boolean;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		data: {
+			type: ObjectConstructor;
+			default: () => {};
+		};
+		items: {
+			type: PropType<ClForm.Item[]>;
+			default: () => never[];
+		};
+		resetBtn: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		onSearch: FunctionConstructor;
+	},
+	{
+		Form: import("vue").Ref<ClForm.Ref | undefined>;
+		loading: import("vue").Ref<boolean>;
+		search: () => void;
+		reset: () => void;
+	},
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			data: {
+				type: ObjectConstructor;
+				default: () => {};
+			};
+			items: {
+				type: PropType<ClForm.Item[]>;
+				default: () => never[];
+			};
+			resetBtn: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			onSearch: FunctionConstructor;
+		}>
+	>,
+	{
+		items: ClForm.Item[];
+		data: Record<string, any>;
+		resetBtn: boolean;
+	}
+>;
 export default _default;

+ 22 - 5
packages/crud/types/components/filter.d.ts

@@ -1,6 +1,23 @@
-declare const _default: import("vue").DefineComponent<{
-    label: StringConstructor;
-}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		label: StringConstructor;
+	},
+	unknown,
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			label: StringConstructor;
+		}>
+	>,
+	{}
+>;
 export default _default;

+ 50 - 33
packages/crud/types/components/filter/group.d.ts

@@ -1,36 +1,53 @@
 /// <reference types="../index" />
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<{
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onSearch: FunctionConstructor;
-}, () => true | JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onSearch: FunctionConstructor;
-}>>, {
-    items: ClForm.Item[];
-    data: Record<string, any>;
-    resetBtn: boolean;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		data: {
+			type: ObjectConstructor;
+			default: () => {};
+		};
+		items: {
+			type: PropType<ClForm.Item[]>;
+			default: () => never[];
+		};
+		resetBtn: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		onSearch: FunctionConstructor;
+	},
+	() => true | JSX.Element,
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			data: {
+				type: ObjectConstructor;
+				default: () => {};
+			};
+			items: {
+				type: PropType<ClForm.Item[]>;
+				default: () => never[];
+			};
+			resetBtn: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			onSearch: FunctionConstructor;
+		}>
+	>,
+	{
+		items: ClForm.Item[];
+		data: Record<string, any>;
+		resetBtn: boolean;
+	}
+>;
 export default _default;

+ 29 - 5
packages/crud/types/components/filter/index.d.ts

@@ -1,6 +1,30 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		label: StringConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			label: StringConstructor;
+		}>
+	> &
+		Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 16 - 1
packages/crud/types/components/flex1.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 22 - 1
packages/crud/types/components/flex1/index.d.ts

@@ -1,2 +1,23 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 41 - 24
packages/crud/types/components/form-card.d.ts

@@ -1,25 +1,42 @@
-declare const _default: import("vue").DefineComponent<{
-    label: StringConstructor;
-    expand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    isExpand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-    expand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    isExpand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>>, {
-    expand: boolean;
-    isExpand: boolean;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		label: StringConstructor;
+		expand: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		isExpand: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+	},
+	() => JSX.Element,
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			label: StringConstructor;
+			expand: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			isExpand: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+		}>
+	>,
+	{
+		expand: boolean;
+		isExpand: boolean;
+	}
+>;
 export default _default;

+ 97 - 27
packages/crud/types/components/form-card/index.d.ts

@@ -1,28 +1,98 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-    expand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    isExpand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    label: StringConstructor;
-    expand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    isExpand: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>> & Readonly<{}>, {
-    expand: boolean;
-    isExpand: boolean;
-}, {}, {
-    ArrowDown: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-    ArrowUp: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
-}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		label: StringConstructor;
+		expand: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		isExpand: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			label: StringConstructor;
+			expand: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			isExpand: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+		}>
+	> &
+		Readonly<{}>,
+	{
+		expand: boolean;
+		isExpand: boolean;
+	},
+	{},
+	{
+		ArrowDown: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+		ArrowUp: import("vue").DefineComponent<
+			{},
+			{},
+			{},
+			{},
+			{},
+			import("vue").ComponentOptionsMixin,
+			import("vue").ComponentOptionsMixin,
+			{},
+			string,
+			import("vue").VNodeProps &
+				import("vue").AllowedComponentProps &
+				import("vue").ComponentCustomProps,
+			Readonly<import("vue").ExtractPropTypes<{}>>,
+			{},
+			{},
+			{},
+			{},
+			string,
+			import("vue").ComponentProvideOptions,
+			true,
+			{},
+			any
+		>;
+	},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 74 - 57
packages/crud/types/components/form-tabs.d.ts

@@ -1,59 +1,76 @@
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<{
-    modelValue: (NumberConstructor | StringConstructor)[];
-    labels: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    justify: {
-        type: StringConstructor;
-        default: string;
-    };
-    color: {
-        type: StringConstructor;
-        default: string;
-    };
-    type: {
-        type: PropType<"default" | "card">;
-        default: string;
-    };
-}, {
-    active: import("vue").Ref<string>;
-    list: import("vue").Ref<any[]>;
-    line: {
-        width: string;
-        offsetLeft: string;
-        transform: string;
-        backgroundColor: string;
-    };
-    refs: any;
-    setRefs: (index: number) => (el: HTMLElement) => void;
-    update: (val: any) => false | undefined;
-}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: (NumberConstructor | StringConstructor)[];
-    labels: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    justify: {
-        type: StringConstructor;
-        default: string;
-    };
-    color: {
-        type: StringConstructor;
-        default: string;
-    };
-    type: {
-        type: PropType<"default" | "card">;
-        default: string;
-    };
-}>> & {
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-}, {
-    type: "default" | "card";
-    labels: unknown[];
-    justify: string;
-    color: string;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		modelValue: (NumberConstructor | StringConstructor)[];
+		labels: {
+			type: ArrayConstructor;
+			default: () => never[];
+		};
+		justify: {
+			type: StringConstructor;
+			default: string;
+		};
+		color: {
+			type: StringConstructor;
+			default: string;
+		};
+		type: {
+			type: PropType<"default" | "card">;
+			default: string;
+		};
+	},
+	{
+		active: import("vue").Ref<string>;
+		list: import("vue").Ref<any[]>;
+		line: {
+			width: string;
+			offsetLeft: string;
+			transform: string;
+			backgroundColor: string;
+		};
+		refs: any;
+		setRefs: (index: number) => (el: HTMLElement) => void;
+		update: (val: any) => false | undefined;
+	},
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("update:modelValue" | "change")[],
+	"update:modelValue" | "change",
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: (NumberConstructor | StringConstructor)[];
+			labels: {
+				type: ArrayConstructor;
+				default: () => never[];
+			};
+			justify: {
+				type: StringConstructor;
+				default: string;
+			};
+			color: {
+				type: StringConstructor;
+				default: string;
+			};
+			type: {
+				type: PropType<"default" | "card">;
+				default: string;
+			};
+		}>
+	> & {
+		onChange?: ((...args: any[]) => any) | undefined;
+		"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+	},
+	{
+		type: "default" | "card";
+		labels: unknown[];
+		justify: string;
+		color: string;
+	}
+>;
 export default _default;

+ 64 - 36
packages/crud/types/components/form-tabs/index.d.ts

@@ -1,38 +1,66 @@
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    modelValue: (NumberConstructor | StringConstructor)[];
-    labels: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    justify: {
-        type: PropType<"center" | "justify" | "left" | "right" | "start" | "end" | "match-parent">;
-        default: string;
-    };
-    type: {
-        type: PropType<"default" | "card">;
-        default: string;
-    };
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: (NumberConstructor | StringConstructor)[];
-    labels: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    justify: {
-        type: PropType<"center" | "justify" | "left" | "right" | "start" | "end" | "match-parent">;
-        default: string;
-    };
-    type: {
-        type: PropType<"default" | "card">;
-        default: string;
-    };
-}>> & Readonly<{
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-}>, {
-    type: "default" | "card";
-    labels: unknown[];
-    justify: "center" | "justify" | "left" | "right" | "start" | "end" | "match-parent";
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		modelValue: (NumberConstructor | StringConstructor)[];
+		labels: {
+			type: ArrayConstructor;
+			default: () => never[];
+		};
+		justify: {
+			type: PropType<
+				"center" | "justify" | "left" | "right" | "start" | "end" | "match-parent"
+			>;
+			default: string;
+		};
+		type: {
+			type: PropType<"default" | "card">;
+			default: string;
+		};
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("change" | "update:modelValue")[],
+	"change" | "update:modelValue",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: (NumberConstructor | StringConstructor)[];
+			labels: {
+				type: ArrayConstructor;
+				default: () => never[];
+			};
+			justify: {
+				type: PropType<
+					"center" | "justify" | "left" | "right" | "start" | "end" | "match-parent"
+				>;
+				default: string;
+			};
+			type: {
+				type: PropType<"default" | "card">;
+				default: string;
+			};
+		}>
+	> &
+		Readonly<{
+			onChange?: ((...args: any[]) => any) | undefined;
+			"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		type: "default" | "card";
+		labels: unknown[];
+		justify: "center" | "justify" | "left" | "right" | "start" | "end" | "match-parent";
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 31 - 34
packages/crud/types/components/form/helper.d.ts

@@ -2,43 +2,40 @@
 import { Ref } from "vue";
 declare type Config = ClForm.Config;
 declare type Form = Vue.Ref<any>;
-export declare function useAction({ config, form, Form }: {
-    config: Config;
-    form: obj;
-    Form: Form;
+export declare function useAction({
+	config,
+	form,
+	Form
+}: {
+	config: Config;
+	form: obj;
+	Form: Form;
 }): {
-    getForm: (prop: string) => any;
-    setForm: (prop: string, value: any) => void;
-    setData: (prop: string, value: any) => void;
-    setConfig: (path: string, value: any) => void;
-    setOptions: (prop: string, value: any[]) => void;
-    setProps: (prop: string, value: any) => void;
-    toggleItem: (prop: string, value?: boolean) => void;
-    hideItem: (...props: string[]) => void;
-    showItem: (...props: string[]) => void;
-    setTitle: (value: string) => void;
-    collapseItem: (e: any) => void;
+	getForm: (prop: string) => any;
+	setForm: (prop: string, value: any) => void;
+	setData: (prop: string, value: any) => void;
+	setConfig: (path: string, value: any) => void;
+	setOptions: (prop: string, value: any[]) => void;
+	setProps: (prop: string, value: any) => void;
+	toggleItem: (prop: string, value?: boolean) => void;
+	hideItem: (...props: string[]) => void;
+	showItem: (...props: string[]) => void;
+	setTitle: (value: string) => void;
+	collapseItem: (e: any) => void;
 };
-export declare function useTabs({ config, Form }: {
-    config: Config;
-    Form: Form;
-}): {
-    active: Ref<any>;
-    get: () => ClForm.Item | undefined;
-    set: (data: any) => void;
-    change: (value: any, isValid?: boolean) => Promise<unknown>;
-    clear: () => void;
-    mergeProp: (item: ClForm.Item) => void;
+export declare function useTabs({ config, Form }: { config: Config; Form: Form }): {
+	active: Ref<any>;
+	get: () => ClForm.Item | undefined;
+	set: (data: any) => void;
+	change: (value: any, isValid?: boolean) => Promise<unknown>;
+	clear: () => void;
+	mergeProp: (item: ClForm.Item) => void;
 };
-export declare function useApi({ Form }: {
-    Form: Form;
-}): {
-    [key: string]: any;
+export declare function useApi({ Form }: { Form: Form }): {
+	[key: string]: any;
 };
-export declare function usePlugins({ visible }: {
-    visible: Ref<boolean>;
-}): {
-    create: (plugins?: ClForm.Plugin[]) => void;
-    submit: (data: any) => Promise<any>;
+export declare function usePlugins({ visible }: { visible: Ref<boolean> }): {
+	create: (plugins?: ClForm.Plugin[]) => void;
+	submit: (data: any) => Promise<any>;
 };
 export {};

+ 19 - 15
packages/crud/types/components/form/helper/action.d.ts

@@ -1,18 +1,22 @@
 /// <reference types="../index" />
-export declare function useAction({ config, form, Form }: {
-    config: ClForm.Config;
-    form: obj;
-    Form: Vue.Ref<any>;
+export declare function useAction({
+	config,
+	form,
+	Form
+}: {
+	config: ClForm.Config;
+	form: obj;
+	Form: Vue.Ref<any>;
 }): {
-    getForm: (prop: string) => any;
-    setForm: (prop: string, value: any) => void;
-    setData: (prop: string, value: any) => void;
-    setConfig: (path: string, value: any) => void;
-    setOptions: (prop: string, value: any[]) => void;
-    setProps: (prop: string, value: any) => void;
-    toggleItem: (prop: string, value?: boolean) => void;
-    hideItem: (...props: string[]) => void;
-    showItem: (...props: string[]) => void;
-    setTitle: (value: string) => void;
-    collapseItem: (e: any) => void;
+	getForm: (prop: string) => any;
+	setForm: (prop: string, value: any) => void;
+	setData: (prop: string, value: any) => void;
+	setConfig: (path: string, value: any) => void;
+	setOptions: (prop: string, value: any[]) => void;
+	setProps: (prop: string, value: any) => void;
+	toggleItem: (prop: string, value?: boolean) => void;
+	hideItem: (...props: string[]) => void;
+	showItem: (...props: string[]) => void;
+	setTitle: (value: string) => void;
+	collapseItem: (e: any) => void;
 };

+ 1 - 3
packages/crud/types/components/form/helper/api.d.ts

@@ -1,4 +1,2 @@
 /// <reference types="../index" />
-export declare function useApi({ Form }: {
-    Form: Vue.Ref<any>;
-}): obj;
+export declare function useApi({ Form }: { Form: Vue.Ref<any> }): obj;

+ 325 - 230
packages/crud/types/components/form/helper/index.d.ts

@@ -1,235 +1,330 @@
 /// <reference types="../index" />
 export declare function useForm(): {
-    Form: import("vue").Ref<any, any>;
-    config: {
-        [x: string]: any;
-        title?: any;
-        height?: any;
-        width?: any;
-        props: {
-            [x: string]: any;
-            inline?: boolean | undefined;
-            labelPosition?: "left" | "right" | "top" | undefined;
-            labelWidth?: string | number | undefined;
-            labelSuffix?: string | undefined;
-            hideRequiredAsterisk?: boolean | undefined;
-            showMessage?: boolean | undefined;
-            inlineMessage?: boolean | undefined;
-            statusIcon?: boolean | undefined;
-            validateOnRuleChange?: boolean | undefined;
-            size?: ElementPlus.Size | undefined;
-            disabled?: boolean | undefined;
-        };
-        items: {
-            [x: string]: any;
-            type?: "tabs" | undefined;
-            prop?: (string & {}) | undefined;
-            props?: {
-                [x: string]: any;
-                labels?: {
-                    [x: string]: any;
-                    label: string;
-                    value: string;
-                    name?: string | undefined;
-                    icon?: any;
-                    lazy?: boolean | undefined;
-                }[] | undefined;
-                justify?: "center" | "left" | "right" | undefined;
-                color?: string | undefined;
-                mergeProp?: boolean | undefined;
-                labelWidth?: string | undefined;
-                error?: string | undefined;
-                showMessage?: boolean | undefined;
-                inlineMessage?: boolean | undefined;
-                size?: "default" | "small" | "medium" | undefined;
-            } | undefined;
-            span?: number | undefined;
-            col?: {
-                span: number;
-                offset: number;
-                push: number;
-                pull: number;
-                xs: any;
-                sm: any;
-                md: any;
-                lg: any;
-                xl: any;
-                tag: string;
-            } | undefined;
-            group?: string | undefined;
-            collapse?: boolean | undefined;
-            value?: any;
-            label?: string | undefined;
-            renderLabel?: any;
-            flex?: boolean | undefined;
-            hook?: ClForm.HookKey | {
-                bind?: ClForm.HookPipe | ClForm.HookPipe[] | undefined;
-                submit?: ClForm.HookPipe | ClForm.HookPipe[] | undefined;
-            } | undefined;
-            hidden?: boolean | ((options: {
-                scope: obj;
-            }) => boolean) | undefined;
-            prepend?: {
-                [x: string]: any;
-                name?: string | undefined;
-                options?: {
-                    [x: string]: any;
-                    label?: string | undefined;
-                    value?: any;
-                    color?: string | undefined;
-                    type?: string | undefined;
-                }[] | {
-                    value: {
-                        [x: string]: any;
-                        label?: string | undefined;
-                        value?: any;
-                        color?: string | undefined;
-                        type?: string | undefined;
-                    }[];
-                } | undefined;
-                props?: {
-                    [x: string]: any;
-                    onChange?: ((value: any) => void) | undefined;
-                } | {
-                    value: {
-                        [x: string]: any;
-                        onChange?: ((value: any) => void) | undefined;
-                    };
-                } | undefined;
-                style?: obj | undefined;
-                slots?: {
-                    [key: string]: (data?: any) => any;
-                } | undefined;
-                vm?: any;
-            } | undefined;
-            component?: {
-                [x: string]: any;
-                name?: string | undefined;
-                options?: {
-                    [x: string]: any;
-                    label?: string | undefined;
-                    value?: any;
-                    color?: string | undefined;
-                    type?: string | undefined;
-                }[] | {
-                    value: {
-                        [x: string]: any;
-                        label?: string | undefined;
-                        value?: any;
-                        color?: string | undefined;
-                        type?: string | undefined;
-                    }[];
-                } | undefined;
-                props?: {
-                    [x: string]: any;
-                    onChange?: ((value: any) => void) | undefined;
-                } | {
-                    value: {
-                        [x: string]: any;
-                        onChange?: ((value: any) => void) | undefined;
-                    };
-                } | undefined;
-                style?: obj | undefined;
-                slots?: {
-                    [key: string]: (data?: any) => any;
-                } | undefined;
-                vm?: any;
-            } | undefined;
-            append?: {
-                [x: string]: any;
-                name?: string | undefined;
-                options?: {
-                    [x: string]: any;
-                    label?: string | undefined;
-                    value?: any;
-                    color?: string | undefined;
-                    type?: string | undefined;
-                }[] | {
-                    value: {
-                        [x: string]: any;
-                        label?: string | undefined;
-                        value?: any;
-                        color?: string | undefined;
-                        type?: string | undefined;
-                    }[];
-                } | undefined;
-                props?: {
-                    [x: string]: any;
-                    onChange?: ((value: any) => void) | undefined;
-                } | {
-                    value: {
-                        [x: string]: any;
-                        onChange?: ((value: any) => void) | undefined;
-                    };
-                } | undefined;
-                style?: obj | undefined;
-                slots?: {
-                    [key: string]: (data?: any) => any;
-                } | undefined;
-                vm?: any;
-            } | undefined;
-            rules?: {
-                [x: string]: any;
-                type?: "string" | "number" | "boolean" | "object" | "method" | "regexp" | "integer" | "float" | "array" | "enum" | "date" | "url" | "hex" | "email" | "any" | undefined;
-                required?: boolean | undefined;
-                message?: string | undefined;
-                min?: number | undefined;
-                max?: number | undefined;
-                trigger?: any;
-                validator?: ((rule: any, value: any, callback: (error?: Error | undefined) => void) => void) | undefined;
-            } | {
-                [x: string]: any;
-                type?: "string" | "number" | "boolean" | "object" | "method" | "regexp" | "integer" | "float" | "array" | "enum" | "date" | "url" | "hex" | "email" | "any" | undefined;
-                required?: boolean | undefined;
-                message?: string | undefined;
-                min?: number | undefined;
-                max?: number | undefined;
-                trigger?: any;
-                validator?: ((rule: any, value: any, callback: (error?: Error | undefined) => void) => void) | undefined;
-            }[] | undefined;
-            required?: boolean | undefined;
-            children?: any[] | undefined;
-        }[];
-        form: obj;
-        isReset?: boolean | undefined;
-        on?: {
-            open?: ((data: any) => void) | undefined;
-            close?: ((action: ClForm.CloseAction, done: fn) => void) | undefined;
-            submit?: ((data: any, event: {
-                close: fn;
-                done: fn;
-            }) => void) | undefined;
-            change?: ((data: any, prop: string) => void) | undefined;
-        } | undefined;
-        op: {
-            hidden?: boolean | undefined;
-            saveButtonText?: string | undefined;
-            closeButtonText?: string | undefined;
-            justify?: "center" | "flex-start" | "flex-end" | undefined;
-            buttons?: (ClForm.CloseAction | `slot-${string}` | {
-                [x: string]: any;
-                label: string;
-                type?: string | undefined;
-                hidden?: boolean | undefined;
-                onClick: (options: {
-                    scope: obj;
-                }) => void;
-            })[] | undefined;
-        };
-        dialog: {
-            [x: string]: any;
-            title?: any;
-            height?: string | undefined;
-            width?: string | undefined;
-            hideHeader?: boolean | undefined;
-            controls?: ("close" | AnyString | "fullscreen")[] | undefined;
-        };
-    };
-    form: obj;
-    visible: import("vue").Ref<boolean, boolean>;
-    saving: import("vue").Ref<boolean, boolean>;
-    loading: import("vue").Ref<boolean, boolean>;
-    disabled: import("vue").Ref<boolean, boolean>;
+	Form: import("vue").Ref<any, any>;
+	config: {
+		[x: string]: any;
+		title?: any;
+		height?: any;
+		width?: any;
+		props: {
+			[x: string]: any;
+			inline?: boolean | undefined;
+			labelPosition?: "left" | "right" | "top" | undefined;
+			labelWidth?: string | number | undefined;
+			labelSuffix?: string | undefined;
+			hideRequiredAsterisk?: boolean | undefined;
+			showMessage?: boolean | undefined;
+			inlineMessage?: boolean | undefined;
+			statusIcon?: boolean | undefined;
+			validateOnRuleChange?: boolean | undefined;
+			size?: ElementPlus.Size | undefined;
+			disabled?: boolean | undefined;
+		};
+		items: {
+			[x: string]: any;
+			type?: "tabs" | undefined;
+			prop?: (string & {}) | undefined;
+			props?:
+				| {
+						[x: string]: any;
+						labels?:
+							| {
+									[x: string]: any;
+									label: string;
+									value: string;
+									name?: string | undefined;
+									icon?: any;
+									lazy?: boolean | undefined;
+							  }[]
+							| undefined;
+						justify?: "center" | "left" | "right" | undefined;
+						color?: string | undefined;
+						mergeProp?: boolean | undefined;
+						labelWidth?: string | undefined;
+						error?: string | undefined;
+						showMessage?: boolean | undefined;
+						inlineMessage?: boolean | undefined;
+						size?: "default" | "small" | "medium" | undefined;
+				  }
+				| undefined;
+			span?: number | undefined;
+			col?:
+				| {
+						span: number;
+						offset: number;
+						push: number;
+						pull: number;
+						xs: any;
+						sm: any;
+						md: any;
+						lg: any;
+						xl: any;
+						tag: string;
+				  }
+				| undefined;
+			group?: string | undefined;
+			collapse?: boolean | undefined;
+			value?: any;
+			label?: string | undefined;
+			renderLabel?: any;
+			flex?: boolean | undefined;
+			hook?:
+				| ClForm.HookKey
+				| {
+						bind?: ClForm.HookPipe | ClForm.HookPipe[] | undefined;
+						submit?: ClForm.HookPipe | ClForm.HookPipe[] | undefined;
+				  }
+				| undefined;
+			hidden?: boolean | ((options: { scope: obj }) => boolean) | undefined;
+			prepend?:
+				| {
+						[x: string]: any;
+						name?: string | undefined;
+						options?:
+							| {
+									[x: string]: any;
+									label?: string | undefined;
+									value?: any;
+									color?: string | undefined;
+									type?: string | undefined;
+							  }[]
+							| {
+									value: {
+										[x: string]: any;
+										label?: string | undefined;
+										value?: any;
+										color?: string | undefined;
+										type?: string | undefined;
+									}[];
+							  }
+							| undefined;
+						props?:
+							| {
+									[x: string]: any;
+									onChange?: ((value: any) => void) | undefined;
+							  }
+							| {
+									value: {
+										[x: string]: any;
+										onChange?: ((value: any) => void) | undefined;
+									};
+							  }
+							| undefined;
+						style?: obj | undefined;
+						slots?:
+							| {
+									[key: string]: (data?: any) => any;
+							  }
+							| undefined;
+						vm?: any;
+				  }
+				| undefined;
+			component?:
+				| {
+						[x: string]: any;
+						name?: string | undefined;
+						options?:
+							| {
+									[x: string]: any;
+									label?: string | undefined;
+									value?: any;
+									color?: string | undefined;
+									type?: string | undefined;
+							  }[]
+							| {
+									value: {
+										[x: string]: any;
+										label?: string | undefined;
+										value?: any;
+										color?: string | undefined;
+										type?: string | undefined;
+									}[];
+							  }
+							| undefined;
+						props?:
+							| {
+									[x: string]: any;
+									onChange?: ((value: any) => void) | undefined;
+							  }
+							| {
+									value: {
+										[x: string]: any;
+										onChange?: ((value: any) => void) | undefined;
+									};
+							  }
+							| undefined;
+						style?: obj | undefined;
+						slots?:
+							| {
+									[key: string]: (data?: any) => any;
+							  }
+							| undefined;
+						vm?: any;
+				  }
+				| undefined;
+			append?:
+				| {
+						[x: string]: any;
+						name?: string | undefined;
+						options?:
+							| {
+									[x: string]: any;
+									label?: string | undefined;
+									value?: any;
+									color?: string | undefined;
+									type?: string | undefined;
+							  }[]
+							| {
+									value: {
+										[x: string]: any;
+										label?: string | undefined;
+										value?: any;
+										color?: string | undefined;
+										type?: string | undefined;
+									}[];
+							  }
+							| undefined;
+						props?:
+							| {
+									[x: string]: any;
+									onChange?: ((value: any) => void) | undefined;
+							  }
+							| {
+									value: {
+										[x: string]: any;
+										onChange?: ((value: any) => void) | undefined;
+									};
+							  }
+							| undefined;
+						style?: obj | undefined;
+						slots?:
+							| {
+									[key: string]: (data?: any) => any;
+							  }
+							| undefined;
+						vm?: any;
+				  }
+				| undefined;
+			rules?:
+				| {
+						[x: string]: any;
+						type?:
+							| "string"
+							| "number"
+							| "boolean"
+							| "object"
+							| "method"
+							| "regexp"
+							| "integer"
+							| "float"
+							| "array"
+							| "enum"
+							| "date"
+							| "url"
+							| "hex"
+							| "email"
+							| "any"
+							| undefined;
+						required?: boolean | undefined;
+						message?: string | undefined;
+						min?: number | undefined;
+						max?: number | undefined;
+						trigger?: any;
+						validator?:
+							| ((
+									rule: any,
+									value: any,
+									callback: (error?: Error | undefined) => void
+							  ) => void)
+							| undefined;
+				  }
+				| {
+						[x: string]: any;
+						type?:
+							| "string"
+							| "number"
+							| "boolean"
+							| "object"
+							| "method"
+							| "regexp"
+							| "integer"
+							| "float"
+							| "array"
+							| "enum"
+							| "date"
+							| "url"
+							| "hex"
+							| "email"
+							| "any"
+							| undefined;
+						required?: boolean | undefined;
+						message?: string | undefined;
+						min?: number | undefined;
+						max?: number | undefined;
+						trigger?: any;
+						validator?:
+							| ((
+									rule: any,
+									value: any,
+									callback: (error?: Error | undefined) => void
+							  ) => void)
+							| undefined;
+				  }[]
+				| undefined;
+			required?: boolean | undefined;
+			children?: any[] | undefined;
+		}[];
+		form: obj;
+		isReset?: boolean | undefined;
+		on?:
+			| {
+					open?: ((data: any) => void) | undefined;
+					close?: ((action: ClForm.CloseAction, done: fn) => void) | undefined;
+					submit?:
+						| ((
+								data: any,
+								event: {
+									close: fn;
+									done: fn;
+								}
+						  ) => void)
+						| undefined;
+					change?: ((data: any, prop: string) => void) | undefined;
+			  }
+			| undefined;
+		op: {
+			hidden?: boolean | undefined;
+			saveButtonText?: string | undefined;
+			closeButtonText?: string | undefined;
+			justify?: "center" | "flex-start" | "flex-end" | undefined;
+			buttons?:
+				| (
+						| ClForm.CloseAction
+						| `slot-${string}`
+						| {
+								[x: string]: any;
+								label: string;
+								type?: string | undefined;
+								hidden?: boolean | undefined;
+								onClick: (options: { scope: obj }) => void;
+						  }
+				  )[]
+				| undefined;
+		};
+		dialog: {
+			[x: string]: any;
+			title?: any;
+			height?: string | undefined;
+			width?: string | undefined;
+			hideHeader?: boolean | undefined;
+			controls?: ("close" | AnyString | "fullscreen")[] | undefined;
+		};
+	};
+	form: obj;
+	visible: import("vue").Ref<boolean, boolean>;
+	saving: import("vue").Ref<boolean, boolean>;
+	loading: import("vue").Ref<boolean, boolean>;
+	disabled: import("vue").Ref<boolean, boolean>;
 };
 export * from "./action";
 export * from "./api";

+ 10 - 5
packages/crud/types/components/form/helper/plugins.d.ts

@@ -1,8 +1,13 @@
 /// <reference types="../index" />
 import { Ref } from "vue";
-export declare function usePlugins(enable: boolean, { visible }: {
-    visible: Ref<boolean>;
-}): {
-    create: (plugins?: ClForm.Plugin[]) => false | undefined;
-    submit: (data: any) => Promise<any>;
+export declare function usePlugins(
+	enable: boolean,
+	{
+		visible
+	}: {
+		visible: Ref<boolean>;
+	}
+): {
+	create: (plugins?: ClForm.Plugin[]) => false | undefined;
+	submit: (data: any) => Promise<any>;
 };

+ 11 - 18
packages/crud/types/components/form/helper/tabs.d.ts

@@ -1,20 +1,13 @@
 /// <reference types="../index" />
-export declare function useTabs({ config, Form }: {
-    config: ClForm.Config;
-    Form: Vue.Ref<any>;
-}): {
-    active: import("vue").Ref<string | undefined, string | undefined>;
-    list: import("vue").ComputedRef<ClFormTabs.labels>;
-    isLoaded: (value: any) => any;
-    onLoad: (value: any) => void;
-    get: () => ClForm.Item<any> | undefined;
-    set: (data: any) => void;
-    change: (value: any, isValid?: boolean) => Promise<unknown>;
-    clear: () => void;
-    mergeProp: (item: ClForm.Item) => void;
-    toGroup: (opts: {
-        config: ClForm.Config;
-        prop: string;
-        refs: any;
-    }) => void;
+export declare function useTabs({ config, Form }: { config: ClForm.Config; Form: Vue.Ref<any> }): {
+	active: import("vue").Ref<string | undefined, string | undefined>;
+	list: import("vue").ComputedRef<ClFormTabs.labels>;
+	isLoaded: (value: any) => any;
+	onLoad: (value: any) => void;
+	get: () => ClForm.Item<any> | undefined;
+	set: (data: any) => void;
+	change: (value: any, isValid?: boolean) => Promise<unknown>;
+	clear: () => void;
+	mergeProp: (item: ClForm.Item) => void;
+	toGroup: (opts: { config: ClForm.Config; prop: string; refs: any }) => void;
 };

+ 43 - 19
packages/crud/types/components/form/index.d.ts

@@ -1,20 +1,44 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    inner: BooleanConstructor;
-    inline: BooleanConstructor;
-    enablePlugin: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    inner: BooleanConstructor;
-    inline: BooleanConstructor;
-    enablePlugin: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-}>> & Readonly<{}>, {
-    inline: boolean;
-    inner: boolean;
-    enablePlugin: boolean;
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		inner: BooleanConstructor;
+		inline: BooleanConstructor;
+		enablePlugin: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			inner: BooleanConstructor;
+			inline: BooleanConstructor;
+			enablePlugin: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+		}>
+	> &
+		Readonly<{}>,
+	{
+		inline: boolean;
+		inner: boolean;
+		enablePlugin: boolean;
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 1 - 1
packages/crud/types/components/index.d.ts

@@ -1,5 +1,5 @@
 import { App } from "vue";
 export declare const components: {
-    [key: string]: any;
+	[key: string]: any;
 };
 export declare function useComponent(app: App): void;

+ 16 - 1
packages/crud/types/components/multi-delete-btn.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => false | JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => false | JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 22 - 1
packages/crud/types/components/multi-delete-btn/index.d.ts

@@ -1,2 +1,23 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 23 - 8
packages/crud/types/components/pagination.d.ts

@@ -1,9 +1,24 @@
-declare const _default: import("vue").DefineComponent<{}, {
-    total: import("vue").Ref<number>;
-    currentPage: import("vue").Ref<number>;
-    pageSize: import("vue").Ref<number>;
-    onCurrentChange: (index: number) => void;
-    onSizeChange: (size: number) => void;
-    setPagination: (res: any) => void;
-}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	{
+		total: import("vue").Ref<number>;
+		currentPage: import("vue").Ref<number>;
+		pageSize: import("vue").Ref<number>;
+		onCurrentChange: (index: number) => void;
+		onSizeChange: (size: number) => void;
+		setPagination: (res: any) => void;
+	},
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 28 - 3
packages/crud/types/components/pagination/index.d.ts

@@ -1,4 +1,29 @@
-declare const _default: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-    [key: string]: any;
-}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => import("vue").VNode<
+		import("vue").RendererNode,
+		import("vue").RendererElement,
+		{
+			[key: string]: any;
+		}
+	>,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 57 - 38
packages/crud/types/components/query.d.ts

@@ -1,39 +1,58 @@
-declare const _default: import("vue").DefineComponent<{
-    modelValue: null;
-    list: {
-        type: ArrayConstructor;
-        required: true;
-    };
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    multiple: BooleanConstructor;
-    callback: FunctionConstructor;
-}, {
-    list: import("vue").Ref<{
-        label: string;
-        value: any;
-        active: boolean;
-    }[]>;
-    selectItem: (event: any, item: any) => void;
-}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: null;
-    list: {
-        type: ArrayConstructor;
-        required: true;
-    };
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    multiple: BooleanConstructor;
-    callback: FunctionConstructor;
-}>> & {
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-}, {
-    field: string;
-    multiple: boolean;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		modelValue: null;
+		list: {
+			type: ArrayConstructor;
+			required: true;
+		};
+		field: {
+			type: StringConstructor;
+			default: string;
+		};
+		multiple: BooleanConstructor;
+		callback: FunctionConstructor;
+	},
+	{
+		list: import("vue").Ref<
+			{
+				label: string;
+				value: any;
+				active: boolean;
+			}[]
+		>;
+		selectItem: (event: any, item: any) => void;
+	},
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("update:modelValue" | "change")[],
+	"update:modelValue" | "change",
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: null;
+			list: {
+				type: ArrayConstructor;
+				required: true;
+			};
+			field: {
+				type: StringConstructor;
+				default: string;
+			};
+			multiple: BooleanConstructor;
+			callback: FunctionConstructor;
+		}>
+	> & {
+		onChange?: ((...args: any[]) => any) | undefined;
+		"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+	},
+	{
+		field: string;
+		multiple: boolean;
+	}
+>;
 export default _default;

+ 48 - 31
packages/crud/types/components/query/index.d.ts

@@ -1,32 +1,49 @@
-declare const _default: import("vue").DefineComponent<{
-    modelValue: null;
-    list: {
-        type: ArrayConstructor;
-        required: true;
-    };
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    multiple: BooleanConstructor;
-    callback: FunctionConstructor;
-}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: null;
-    list: {
-        type: ArrayConstructor;
-        required: true;
-    };
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    multiple: BooleanConstructor;
-    callback: FunctionConstructor;
-}>> & {
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-}, {
-    field: string;
-    multiple: boolean;
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		modelValue: null;
+		list: {
+			type: ArrayConstructor;
+			required: true;
+		};
+		field: {
+			type: StringConstructor;
+			default: string;
+		};
+		multiple: BooleanConstructor;
+		callback: FunctionConstructor;
+	},
+	() => JSX.Element,
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("change" | "update:modelValue")[],
+	"change" | "update:modelValue",
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: null;
+			list: {
+				type: ArrayConstructor;
+				required: true;
+			};
+			field: {
+				type: StringConstructor;
+				default: string;
+			};
+			multiple: BooleanConstructor;
+			callback: FunctionConstructor;
+		}>
+	> & {
+		onChange?: ((...args: any[]) => any) | undefined;
+		"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+	},
+	{
+		field: string;
+		multiple: boolean;
+	}
+>;
 export default _default;

+ 16 - 1
packages/crud/types/components/refresh-btn.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 22 - 1
packages/crud/types/components/refresh-btn/index.d.ts

@@ -1,2 +1,23 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 16 - 1
packages/crud/types/components/row.d.ts

@@ -1,2 +1,17 @@
-declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => JSX.Element,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<import("vue").ExtractPropTypes<{}>>,
+	{}
+>;
 export default _default;

+ 22 - 1
packages/crud/types/components/row/index.d.ts

@@ -1,2 +1,23 @@
-declare const _default: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	{},
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	{},
+	string,
+	import("vue").PublicProps,
+	Readonly<{}> & Readonly<{}>,
+	{},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 80 - 59
packages/crud/types/components/search-key.d.ts

@@ -1,61 +1,82 @@
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<{
-    modelValue: StringConstructor;
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    fieldList: {
-        type: PropType<{
-            label: string;
-            value: string;
-        }[]>;
-        default: () => never[];
-    };
-    onSearch: FunctionConstructor;
-    placeholder: StringConstructor;
-    width: {
-        type: StringConstructor;
-        default: string;
-    };
-}, {
-    value: import("vue").Ref<string>;
-    placeholder: import("vue").ComputedRef<string>;
-    selectField: import("vue").Ref<string>;
-    search: (this: any, ...args: any[]) => any;
-    onKeydown: ({ keyCode }: any) => void;
-    onInput: (val: string) => void;
-    onChange: () => void;
-    onFieldChange: () => void;
-}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "field-change")[], "update:modelValue" | "change" | "field-change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: StringConstructor;
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    fieldList: {
-        type: PropType<{
-            label: string;
-            value: string;
-        }[]>;
-        default: () => never[];
-    };
-    onSearch: FunctionConstructor;
-    placeholder: StringConstructor;
-    width: {
-        type: StringConstructor;
-        default: string;
-    };
-}>> & {
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-    "onField-change"?: ((...args: any[]) => any) | undefined;
-}, {
-    width: string;
-    field: string;
-    fieldList: {
-        label: string;
-        value: string;
-    }[];
-}>;
+declare const _default: import("vue").DefineComponent<
+	{
+		modelValue: StringConstructor;
+		field: {
+			type: StringConstructor;
+			default: string;
+		};
+		fieldList: {
+			type: PropType<
+				{
+					label: string;
+					value: string;
+				}[]
+			>;
+			default: () => never[];
+		};
+		onSearch: FunctionConstructor;
+		placeholder: StringConstructor;
+		width: {
+			type: StringConstructor;
+			default: string;
+		};
+	},
+	{
+		value: import("vue").Ref<string>;
+		placeholder: import("vue").ComputedRef<string>;
+		selectField: import("vue").Ref<string>;
+		search: (this: any, ...args: any[]) => any;
+		onKeydown: ({ keyCode }: any) => void;
+		onInput: (val: string) => void;
+		onChange: () => void;
+		onFieldChange: () => void;
+	},
+	unknown,
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("update:modelValue" | "change" | "field-change")[],
+	"update:modelValue" | "change" | "field-change",
+	import("vue").VNodeProps &
+		import("vue").AllowedComponentProps &
+		import("vue").ComponentCustomProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: StringConstructor;
+			field: {
+				type: StringConstructor;
+				default: string;
+			};
+			fieldList: {
+				type: PropType<
+					{
+						label: string;
+						value: string;
+					}[]
+				>;
+				default: () => never[];
+			};
+			onSearch: FunctionConstructor;
+			placeholder: StringConstructor;
+			width: {
+				type: StringConstructor;
+				default: string;
+			};
+		}>
+	> & {
+		onChange?: ((...args: any[]) => any) | undefined;
+		"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+		"onField-change"?: ((...args: any[]) => any) | undefined;
+	},
+	{
+		width: string;
+		field: string;
+		fieldList: {
+			label: string;
+			value: string;
+		}[];
+	}
+>;
 export default _default;

+ 81 - 53
packages/crud/types/components/search-key/index.d.ts

@@ -1,55 +1,83 @@
 import { type PropType } from "vue";
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    modelValue: StringConstructor;
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    fieldList: {
-        type: PropType<{
-            label: string;
-            value: string;
-        }[]>;
-        default: () => never[];
-    };
-    onSearch: FunctionConstructor;
-    placeholder: StringConstructor;
-    width: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: number;
-    };
-    refreshOnInput: BooleanConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue" | "field-change")[], "change" | "update:modelValue" | "field-change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    modelValue: StringConstructor;
-    field: {
-        type: StringConstructor;
-        default: string;
-    };
-    fieldList: {
-        type: PropType<{
-            label: string;
-            value: string;
-        }[]>;
-        default: () => never[];
-    };
-    onSearch: FunctionConstructor;
-    placeholder: StringConstructor;
-    width: {
-        type: (NumberConstructor | StringConstructor)[];
-        default: number;
-    };
-    refreshOnInput: BooleanConstructor;
-}>> & Readonly<{
-    onChange?: ((...args: any[]) => any) | undefined;
-    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
-    "onField-change"?: ((...args: any[]) => any) | undefined;
-}>, {
-    width: string | number;
-    refreshOnInput: boolean;
-    field: string;
-    fieldList: {
-        label: string;
-        value: string;
-    }[];
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		modelValue: StringConstructor;
+		field: {
+			type: StringConstructor;
+			default: string;
+		};
+		fieldList: {
+			type: PropType<
+				{
+					label: string;
+					value: string;
+				}[]
+			>;
+			default: () => never[];
+		};
+		onSearch: FunctionConstructor;
+		placeholder: StringConstructor;
+		width: {
+			type: (NumberConstructor | StringConstructor)[];
+			default: number;
+		};
+		refreshOnInput: BooleanConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("change" | "update:modelValue" | "field-change")[],
+	"change" | "update:modelValue" | "field-change",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			modelValue: StringConstructor;
+			field: {
+				type: StringConstructor;
+				default: string;
+			};
+			fieldList: {
+				type: PropType<
+					{
+						label: string;
+						value: string;
+					}[]
+				>;
+				default: () => never[];
+			};
+			onSearch: FunctionConstructor;
+			placeholder: StringConstructor;
+			width: {
+				type: (NumberConstructor | StringConstructor)[];
+				default: number;
+			};
+			refreshOnInput: BooleanConstructor;
+		}>
+	> &
+		Readonly<{
+			onChange?: ((...args: any[]) => any) | undefined;
+			"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
+			"onField-change"?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		width: string | number;
+		refreshOnInput: boolean;
+		field: string;
+		fieldList: {
+			label: string;
+			value: string;
+		}[];
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 79 - 55
packages/crud/types/components/search/index.d.ts

@@ -1,58 +1,82 @@
 /// <reference types="../index" />
 import { PropType } from "vue";
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    inline: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    props: {
-        type: ObjectConstructor;
-        default: () => void;
-    };
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item<any>[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onLoad: FunctionConstructor;
-    onSearch: FunctionConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "reset"[], "reset", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    inline: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    props: {
-        type: ObjectConstructor;
-        default: () => void;
-    };
-    data: {
-        type: ObjectConstructor;
-        default: () => {};
-    };
-    items: {
-        type: PropType<ClForm.Item<any>[]>;
-        default: () => never[];
-    };
-    resetBtn: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    onLoad: FunctionConstructor;
-    onSearch: FunctionConstructor;
-}>> & Readonly<{
-    onReset?: ((...args: any[]) => any) | undefined;
-}>, {
-    items: ClForm.Item<any>[];
-    props: Record<string, any>;
-    inline: boolean;
-    data: Record<string, any>;
-    resetBtn: boolean;
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		inline: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		props: {
+			type: ObjectConstructor;
+			default: () => void;
+		};
+		data: {
+			type: ObjectConstructor;
+			default: () => {};
+		};
+		items: {
+			type: PropType<ClForm.Item<any>[]>;
+			default: () => never[];
+		};
+		resetBtn: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		onLoad: FunctionConstructor;
+		onSearch: FunctionConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	"reset"[],
+	"reset",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			inline: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			props: {
+				type: ObjectConstructor;
+				default: () => void;
+			};
+			data: {
+				type: ObjectConstructor;
+				default: () => {};
+			};
+			items: {
+				type: PropType<ClForm.Item<any>[]>;
+				default: () => never[];
+			};
+			resetBtn: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			onLoad: FunctionConstructor;
+			onSearch: FunctionConstructor;
+		}>
+	> &
+		Readonly<{
+			onReset?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		items: ClForm.Item<any>[];
+		props: Record<string, any>;
+		inline: boolean;
+		data: Record<string, any>;
+		resetBtn: boolean;
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 61 - 57
packages/crud/types/components/table/helper.d.ts

@@ -3,72 +3,76 @@ declare type Emit = (name: "selection-change" | "sort-change", ...args: any[]) =
 declare type Table = Vue.Ref<any>;
 declare type Config = ClTable.Config;
 declare interface Sort {
-    defaultSort: {
-        prop?: string;
-        order?: string;
-    };
-    changeSort(prop: string, order: string): void;
+	defaultSort: {
+		prop?: string;
+		order?: string;
+	};
+	changeSort(prop: string, order: string): void;
 }
-export declare function useSort({ config, emit, Table }: {
-    config: Config;
-    emit: Emit;
-    Table: Table;
+export declare function useSort({
+	config,
+	emit,
+	Table
+}: {
+	config: Config;
+	emit: Emit;
+	Table: Table;
 }): {
-    defaultSort: {
-        prop: string;
-        order: "descending" | "ascending";
-    } | {
-        prop?: undefined;
-        order?: undefined;
-    };
-    onSortChange: ({ prop, order }: {
-        prop: string | undefined;
-        order: string;
-    }) => void;
-    changeSort: (prop: string, order: string) => void;
+	defaultSort:
+		| {
+				prop: string;
+				order: "descending" | "ascending";
+		  }
+		| {
+				prop?: undefined;
+				order?: undefined;
+		  };
+	onSortChange: ({ prop, order }: { prop: string | undefined; order: string }) => void;
+	changeSort: (prop: string, order: string) => void;
 };
-export declare function useRow({ Table, config, Sort }: {
-    Table: Table;
-    config: Config;
-    Sort: Sort;
+export declare function useRow({
+	Table,
+	config,
+	Sort
+}: {
+	Table: Table;
+	config: Config;
+	Sort: Sort;
 }): {
-    onRowContextMenu: (row: any, column: any, event: any) => void;
+	onRowContextMenu: (row: any, column: any, event: any) => void;
 };
-export declare function useHeight({ config, Table }: {
-    Table: Table;
-    config: Config;
-}): {
-    isAuto: import("vue").ComputedRef<boolean>;
-    maxHeight: import("vue").Ref<number>;
-    calcMaxHeight: (this: any, ...args: any[]) => any;
+export declare function useHeight({ config, Table }: { Table: Table; config: Config }): {
+	isAuto: import("vue").ComputedRef<boolean>;
+	maxHeight: import("vue").Ref<number>;
+	calcMaxHeight: (this: any, ...args: any[]) => any;
 };
-export declare function useSelection({ emit }: {
-    emit: Emit;
-}): {
-    selection: obj[];
-    onSelectionChange: (selection: any[]) => void;
+export declare function useSelection({ emit }: { emit: Emit }): {
+	selection: obj[];
+	onSelectionChange: (selection: any[]) => void;
 };
-export declare function useData({ config, Table }: {
-    config: Config;
-    Table: Table;
-}): {
-    data: import("vue").Ref<any[]>;
-    setData: (list: any[]) => void;
+export declare function useData({ config, Table }: { config: Config; Table: Table }): {
+	data: import("vue").Ref<any[]>;
+	setData: (list: any[]) => void;
 };
-export declare function useOp({ config }: {
-    config: Config;
-}): {
-    visible: import("vue").Ref<boolean>;
-    reBuild: (cb?: fn) => Promise<void>;
-    showColumn: (prop: string | string[], status?: boolean) => void;
-    hideColumn: (prop: string | string[]) => void;
-    setColumns: (list: ClTable.Column[]) => void;
+export declare function useOp({ config }: { config: Config }): {
+	visible: import("vue").Ref<boolean>;
+	reBuild: (cb?: fn) => Promise<void>;
+	showColumn: (prop: string | string[], status?: boolean) => void;
+	hideColumn: (prop: string | string[]) => void;
+	setColumns: (list: ClTable.Column[]) => void;
 };
 export declare function useRender(): {
-    renderColumn: (columns: ClTable.Column[]) => (import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-        [key: string]: any;
-    }> | null)[];
-    renderEmpty: (emptyText: String) => JSX.Element;
-    renderAppend: () => JSX.Element;
+	renderColumn: (columns: ClTable.Column[]) => (
+		| import("vue").VNode<
+				import("vue").RendererNode,
+				import("vue").RendererElement,
+				{
+					[key: string]: any;
+				}
+		  >
+		| null
+	)[];
+	renderEmpty: (emptyText: string) => JSX.Element;
+	renderAppend: () => JSX.Element;
 };
 export {};

+ 8 - 5
packages/crud/types/components/table/helper/data.d.ts

@@ -1,8 +1,11 @@
 /// <reference types="../index" />
-export declare function useData({ config, Table }: {
-    config: ClTable.Config;
-    Table: Vue.Ref<any>;
+export declare function useData({
+	config,
+	Table
+}: {
+	config: ClTable.Config;
+	Table: Vue.Ref<any>;
 }): {
-    data: import("vue").Ref<obj[], obj[]>;
-    setData: (list: obj[]) => void;
+	data: import("vue").Ref<obj[], obj[]>;
+	setData: (list: obj[]) => void;
 };

+ 8 - 5
packages/crud/types/components/table/helper/height.d.ts

@@ -1,8 +1,11 @@
 /// <reference types="../index" />
-export declare function useHeight({ config, Table }: {
-    Table: Vue.Ref<any>;
-    config: ClTable.Config;
+export declare function useHeight({
+	config,
+	Table
+}: {
+	Table: Vue.Ref<any>;
+	config: ClTable.Config;
 }): {
-    maxHeight: import("vue").Ref<number, number>;
-    calcMaxHeight: import("lodash-es").DebouncedFunc<() => Promise<void>>;
+	maxHeight: import("vue").Ref<number, number>;
+	calcMaxHeight: import("lodash-es").DebouncedFunc<() => Promise<void>>;
 };

+ 199 - 166
packages/crud/types/components/table/helper/index.d.ts

@@ -1,171 +1,204 @@
 /// <reference types="../index" />
 export declare function useTable(props: any): {
-    Table: import("vue").Ref<any, any>;
-    config: {
-        columns: {
-            [x: string]: any;
-            type: ClTable.ColumnType;
-            hidden: boolean | {
-                value: boolean;
-            };
-            component: {
-                [x: string]: any;
-                name?: string | undefined;
-                options?: {
-                    [x: string]: any;
-                    label?: string | undefined;
-                    value?: any;
-                    color?: string | undefined;
-                    type?: string | undefined;
-                }[] | {
-                    value: {
-                        [x: string]: any;
-                        label?: string | undefined;
-                        value?: any;
-                        color?: string | undefined;
-                        type?: string | undefined;
-                    }[];
-                } | undefined;
-                props?: {
-                    [x: string]: any;
-                    onChange?: ((value: any) => void) | undefined;
-                } | {
-                    value: {
-                        [x: string]: any;
-                        onChange?: ((value: any) => void) | undefined;
-                    };
-                } | undefined;
-                style?: obj | undefined;
-                slots?: {
-                    [key: string]: (data?: any) => any;
-                } | undefined;
-                vm?: any;
-            };
-            search: {
-                isInput: boolean;
-                value: any;
-                refreshOnChange: {
-                    valueOf: () => boolean;
-                };
-                component: {
-                    [x: string]: any;
-                    name?: string | undefined;
-                    options?: {
-                        [x: string]: any;
-                        label?: string | undefined;
-                        value?: any;
-                        color?: string | undefined;
-                        type?: string | undefined;
-                    }[] | {
-                        value: {
-                            [x: string]: any;
-                            label?: string | undefined;
-                            value?: any;
-                            color?: string | undefined;
-                            type?: string | undefined;
-                        }[];
-                    } | undefined;
-                    props?: {
-                        [x: string]: any;
-                        onChange?: ((value: any) => void) | undefined;
-                    } | {
-                        value: {
-                            [x: string]: any;
-                            onChange?: ((value: any) => void) | undefined;
-                        };
-                    } | undefined;
-                    style?: obj | undefined;
-                    slots?: {
-                        [key: string]: (data?: any) => any;
-                    } | undefined;
-                    vm?: any;
-                };
-            };
-            dict: {
-                [x: string]: any;
-                label?: string | undefined;
-                value?: any;
-                color?: string | undefined;
-                type?: string | undefined;
-            }[] | {
-                value: {
-                    [x: string]: any;
-                    label?: string | undefined;
-                    value?: any;
-                    color?: string | undefined;
-                    type?: string | undefined;
-                }[];
-            };
-            dictFormatter: (values: DictOptions) => string;
-            dictColor: boolean;
-            dictSeparator: string;
-            dictAllLevels: boolean;
-            buttons: ((options: {
-                scope: any;
-            }) => ClTable.OpButton) | ("info" | "delete" | "edit" | AnyString | `slot-${string}` | {
-                [x: string]: any;
-                label: string;
-                type?: string | undefined;
-                hidden?: boolean | undefined;
-                onClick: (options: {
-                    scope: obj;
-                }) => void;
-            })[];
-            align: ElementPlus.Align;
-            label: any;
-            className: string;
-            prop: string & {};
-            orderNum: number;
-            width: number;
-            minWidth: string | number;
-            renderHeader: (options: {
-                column: any;
-                $index: number;
-            }) => any;
-            sortable: boolean | "asc" | "desc" | "custom" | "descending" | "ascending";
-            sortMethod: fn;
-            sortBy: string | any[] | ((row: any, index: number) => any);
-            resizable: boolean;
-            columnKey: string;
-            headerAlign: ElementPlus.Align;
-            showOverflowTooltip: boolean;
-            fixed: string | boolean;
-            formatter: (row: any, column: any, value: any, index: number) => any;
-            selectable: (row: any, index: number) => boolean;
-            reserveSelection: boolean;
-            filterMethod: fn;
-            filteredValue: unknown[];
-            filters: unknown[];
-            filterPlacement: string;
-            filterMultiple: boolean;
-            index: number | ((index: number) => number);
-            sortOrders: unknown[];
-            children: any[];
-        }[];
-        autoHeight: boolean;
-        height: any;
-        contextMenu: ("info" | "update" | "delete" | "edit" | "refresh" | {
-            [x: string]: any;
-            label: string;
-            prefixIcon?: any;
-            suffixIcon?: any;
-            ellipsis?: boolean | undefined;
-            disabled?: boolean | undefined;
-            hidden?: boolean | undefined;
-            children?: any[] | undefined;
-            showChildren?: boolean | undefined;
-            callback?: ((done: fn) => void) | undefined;
-        } | ((row: obj, column: obj, event: PointerEvent) => ClContextMenu.Item) | "check" | "order-desc" | "order-asc")[];
-        defaultSort: {
-            prop: string;
-            order: "descending" | "ascending";
-        };
-        sortRefresh: boolean;
-        emptyText: string;
-        rowKey: string;
-        plugins?: ClTable.Plugin[] | undefined;
-        onRowContextmenu?: ((row: any, column: any, event: any) => void) | undefined;
-    };
+	Table: import("vue").Ref<any, any>;
+	config: {
+		columns: {
+			[x: string]: any;
+			type: ClTable.ColumnType;
+			hidden:
+				| boolean
+				| {
+						value: boolean;
+				  };
+			component: {
+				[x: string]: any;
+				name?: string | undefined;
+				options?:
+					| {
+							[x: string]: any;
+							label?: string | undefined;
+							value?: any;
+							color?: string | undefined;
+							type?: string | undefined;
+					  }[]
+					| {
+							value: {
+								[x: string]: any;
+								label?: string | undefined;
+								value?: any;
+								color?: string | undefined;
+								type?: string | undefined;
+							}[];
+					  }
+					| undefined;
+				props?:
+					| {
+							[x: string]: any;
+							onChange?: ((value: any) => void) | undefined;
+					  }
+					| {
+							value: {
+								[x: string]: any;
+								onChange?: ((value: any) => void) | undefined;
+							};
+					  }
+					| undefined;
+				style?: obj | undefined;
+				slots?:
+					| {
+							[key: string]: (data?: any) => any;
+					  }
+					| undefined;
+				vm?: any;
+			};
+			search: {
+				isInput: boolean;
+				value: any;
+				refreshOnChange: {
+					valueOf: () => boolean;
+				};
+				component: {
+					[x: string]: any;
+					name?: string | undefined;
+					options?:
+						| {
+								[x: string]: any;
+								label?: string | undefined;
+								value?: any;
+								color?: string | undefined;
+								type?: string | undefined;
+						  }[]
+						| {
+								value: {
+									[x: string]: any;
+									label?: string | undefined;
+									value?: any;
+									color?: string | undefined;
+									type?: string | undefined;
+								}[];
+						  }
+						| undefined;
+					props?:
+						| {
+								[x: string]: any;
+								onChange?: ((value: any) => void) | undefined;
+						  }
+						| {
+								value: {
+									[x: string]: any;
+									onChange?: ((value: any) => void) | undefined;
+								};
+						  }
+						| undefined;
+					style?: obj | undefined;
+					slots?:
+						| {
+								[key: string]: (data?: any) => any;
+						  }
+						| undefined;
+					vm?: any;
+				};
+			};
+			dict:
+				| {
+						[x: string]: any;
+						label?: string | undefined;
+						value?: any;
+						color?: string | undefined;
+						type?: string | undefined;
+				  }[]
+				| {
+						value: {
+							[x: string]: any;
+							label?: string | undefined;
+							value?: any;
+							color?: string | undefined;
+							type?: string | undefined;
+						}[];
+				  };
+			dictFormatter: (values: DictOptions) => string;
+			dictColor: boolean;
+			dictSeparator: string;
+			dictAllLevels: boolean;
+			buttons:
+				| ((options: { scope: any }) => ClTable.OpButton)
+				| (
+						| "info"
+						| "delete"
+						| "edit"
+						| AnyString
+						| `slot-${string}`
+						| {
+								[x: string]: any;
+								label: string;
+								type?: string | undefined;
+								hidden?: boolean | undefined;
+								onClick: (options: { scope: obj }) => void;
+						  }
+				  )[];
+			align: ElementPlus.Align;
+			label: any;
+			className: string;
+			prop: string & {};
+			orderNum: number;
+			width: number;
+			minWidth: string | number;
+			renderHeader: (options: { column: any; $index: number }) => any;
+			sortable: boolean | "asc" | "desc" | "custom" | "descending" | "ascending";
+			sortMethod: fn;
+			sortBy: string | any[] | ((row: any, index: number) => any);
+			resizable: boolean;
+			columnKey: string;
+			headerAlign: ElementPlus.Align;
+			showOverflowTooltip: boolean;
+			fixed: string | boolean;
+			formatter: (row: any, column: any, value: any, index: number) => any;
+			selectable: (row: any, index: number) => boolean;
+			reserveSelection: boolean;
+			filterMethod: fn;
+			filteredValue: unknown[];
+			filters: unknown[];
+			filterPlacement: string;
+			filterMultiple: boolean;
+			index: number | ((index: number) => number);
+			sortOrders: unknown[];
+			children: any[];
+		}[];
+		autoHeight: boolean;
+		height: any;
+		contextMenu: (
+			| "info"
+			| "update"
+			| "delete"
+			| "edit"
+			| "refresh"
+			| {
+					[x: string]: any;
+					label: string;
+					prefixIcon?: any;
+					suffixIcon?: any;
+					ellipsis?: boolean | undefined;
+					disabled?: boolean | undefined;
+					hidden?: boolean | undefined;
+					children?: any[] | undefined;
+					showChildren?: boolean | undefined;
+					callback?: ((done: fn) => void) | undefined;
+			  }
+			| ((row: obj, column: obj, event: PointerEvent) => ClContextMenu.Item)
+			| "check"
+			| "order-desc"
+			| "order-asc"
+		)[];
+		defaultSort: {
+			prop: string;
+			order: "descending" | "ascending";
+		};
+		sortRefresh: boolean;
+		emptyText: string;
+		rowKey: string;
+		plugins?: ClTable.Plugin[] | undefined;
+		onRowContextmenu?: ((row: any, column: any, event: any) => void) | undefined;
+	};
 };
 export * from "./data";
 export * from "./height";

+ 6 - 8
packages/crud/types/components/table/helper/op.d.ts

@@ -1,10 +1,8 @@
 /// <reference types="../index" />
-export declare function useOp({ config }: {
-    config: ClTable.Config;
-}): {
-    visible: import("vue").Ref<boolean, boolean>;
-    reBuild: (cb?: fn) => Promise<void>;
-    showColumn: (prop: string | string[], status?: boolean) => void;
-    hideColumn: (prop: string | string[]) => void;
-    setColumns: (list: ClTable.Column[]) => void;
+export declare function useOp({ config }: { config: ClTable.Config }): {
+	visible: import("vue").Ref<boolean, boolean>;
+	reBuild: (cb?: fn) => Promise<void>;
+	showColumn: (prop: string | string[], status?: boolean) => void;
+	hideColumn: (prop: string | string[]) => void;
+	setColumns: (list: ClTable.Column[]) => void;
 };

+ 1 - 1
packages/crud/types/components/table/helper/plugins.d.ts

@@ -1,4 +1,4 @@
 /// <reference types="../index" />
 export declare function usePlugins(): {
-    create: (plugins?: ClTable.Plugin[]) => void;
+	create: (plugins?: ClTable.Plugin[]) => void;
 };

+ 12 - 5
packages/crud/types/components/table/helper/render.d.ts

@@ -1,8 +1,15 @@
 /// <reference types="../index" />
 export declare function useRender(): {
-    renderColumn: (columns: ClTable.Column[]) => (import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-        [key: string]: any;
-    }> | null)[];
-    renderEmpty: (emptyText: String) => any;
-    renderAppend: () => any;
+	renderColumn: (columns: ClTable.Column[]) => (
+		| import("vue").VNode<
+				import("vue").RendererNode,
+				import("vue").RendererElement,
+				{
+					[key: string]: any;
+				}
+		  >
+		| null
+	)[];
+	renderEmpty: (emptyText: string) => any;
+	renderAppend: () => any;
 };

+ 15 - 11
packages/crud/types/components/table/helper/row.d.ts

@@ -1,14 +1,18 @@
 /// <reference types="../index" />
-export declare function useRow({ Table, config, Sort }: {
-    Table: Vue.Ref<any>;
-    config: ClTable.Config;
-    Sort: {
-        defaultSort: {
-            prop?: string;
-            order?: string;
-        };
-        changeSort(prop: string, order: string): void;
-    };
+export declare function useRow({
+	Table,
+	config,
+	Sort
+}: {
+	Table: Vue.Ref<any>;
+	config: ClTable.Config;
+	Sort: {
+		defaultSort: {
+			prop?: string;
+			order?: string;
+		};
+		changeSort(prop: string, order: string): void;
+	};
 }): {
-    onRowContextMenu: (row: obj, column: obj, event: PointerEvent) => void;
+	onRowContextMenu: (row: obj, column: obj, event: PointerEvent) => void;
 };

+ 3 - 5
packages/crud/types/components/table/helper/selection.d.ts

@@ -1,7 +1,5 @@
 /// <reference types="../index" />
-export declare function useSelection({ emit }: {
-    emit: Vue.Emit;
-}): {
-    selection: obj[];
-    onSelectionChange: (selection: any[]) => void;
+export declare function useSelection({ emit }: { emit: Vue.Emit }): {
+	selection: obj[];
+	onSelectionChange: (selection: any[]) => void;
 };

+ 19 - 16
packages/crud/types/components/table/helper/sort.d.ts

@@ -1,19 +1,22 @@
 /// <reference types="../index" />
-export declare function useSort({ config, Table, emit }: {
-    config: ClTable.Config;
-    Table: Vue.Ref<any>;
-    emit: Vue.Emit;
+export declare function useSort({
+	config,
+	Table,
+	emit
+}: {
+	config: ClTable.Config;
+	Table: Vue.Ref<any>;
+	emit: Vue.Emit;
 }): {
-    defaultSort: {
-        prop: string;
-        order: "descending" | "ascending";
-    } | {
-        prop?: undefined;
-        order?: undefined;
-    };
-    onSortChange: ({ prop, order }: {
-        prop: string | undefined;
-        order: string;
-    }) => void;
-    changeSort: (prop: string, order: string) => void;
+	defaultSort:
+		| {
+				prop: string;
+				order: "descending" | "ascending";
+		  }
+		| {
+				prop?: undefined;
+				order?: undefined;
+		  };
+	onSortChange: ({ prop, order }: { prop: string | undefined; order: string }) => void;
+	changeSort: (prop: string, order: string) => void;
 };

+ 90 - 60
packages/crud/types/components/table/index.d.ts

@@ -1,61 +1,91 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    columns: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    autoHeight: {
-        type: BooleanConstructor;
-        default: null;
-    };
-    height: null;
-    contextMenu: {
-        type: (BooleanConstructor | ArrayConstructor)[];
-        default: null;
-    };
-    defaultSort: ObjectConstructor;
-    sortRefresh: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    emptyText: StringConstructor;
-    rowKey: {
-        type: StringConstructor;
-        default: string;
-    };
-}>, () => false | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-    [key: string]: any;
-}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("selection-change" | "sort-change")[], "selection-change" | "sort-change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    columns: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    autoHeight: {
-        type: BooleanConstructor;
-        default: null;
-    };
-    height: null;
-    contextMenu: {
-        type: (BooleanConstructor | ArrayConstructor)[];
-        default: null;
-    };
-    defaultSort: ObjectConstructor;
-    sortRefresh: {
-        type: BooleanConstructor;
-        default: boolean;
-    };
-    emptyText: StringConstructor;
-    rowKey: {
-        type: StringConstructor;
-        default: string;
-    };
-}>> & Readonly<{
-    "onSelection-change"?: ((...args: any[]) => any) | undefined;
-    "onSort-change"?: ((...args: any[]) => any) | undefined;
-}>, {
-    columns: unknown[];
-    autoHeight: boolean;
-    contextMenu: boolean | unknown[];
-    sortRefresh: boolean;
-    rowKey: string;
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		columns: {
+			type: ArrayConstructor;
+			default: () => never[];
+		};
+		autoHeight: {
+			type: BooleanConstructor;
+			default: null;
+		};
+		height: null;
+		contextMenu: {
+			type: (BooleanConstructor | ArrayConstructor)[];
+			default: null;
+		};
+		defaultSort: ObjectConstructor;
+		sortRefresh: {
+			type: BooleanConstructor;
+			default: boolean;
+		};
+		emptyText: StringConstructor;
+		rowKey: {
+			type: StringConstructor;
+			default: string;
+		};
+	}>,
+	() =>
+		| false
+		| import("vue").VNode<
+				import("vue").RendererNode,
+				import("vue").RendererElement,
+				{
+					[key: string]: any;
+				}
+		  >,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("selection-change" | "sort-change")[],
+	"selection-change" | "sort-change",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			columns: {
+				type: ArrayConstructor;
+				default: () => never[];
+			};
+			autoHeight: {
+				type: BooleanConstructor;
+				default: null;
+			};
+			height: null;
+			contextMenu: {
+				type: (BooleanConstructor | ArrayConstructor)[];
+				default: null;
+			};
+			defaultSort: ObjectConstructor;
+			sortRefresh: {
+				type: BooleanConstructor;
+				default: boolean;
+			};
+			emptyText: StringConstructor;
+			rowKey: {
+				type: StringConstructor;
+				default: string;
+			};
+		}>
+	> &
+		Readonly<{
+			"onSelection-change"?: ((...args: any[]) => any) | undefined;
+			"onSort-change"?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		columns: unknown[];
+		autoHeight: boolean;
+		contextMenu: boolean | unknown[];
+		sortRefresh: boolean;
+		rowKey: string;
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 61 - 37
packages/crud/types/components/upsert/index.d.ts

@@ -1,38 +1,62 @@
-declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
-    items: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    props: ObjectConstructor;
-    sync: BooleanConstructor;
-    op: ObjectConstructor;
-    dialog: ObjectConstructor;
-    onOpen: FunctionConstructor;
-    onOpened: FunctionConstructor;
-    onClose: FunctionConstructor;
-    onClosed: FunctionConstructor;
-    onInfo: FunctionConstructor;
-    onSubmit: FunctionConstructor;
-}>, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("opened" | "closed")[], "opened" | "closed", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
-    items: {
-        type: ArrayConstructor;
-        default: () => never[];
-    };
-    props: ObjectConstructor;
-    sync: BooleanConstructor;
-    op: ObjectConstructor;
-    dialog: ObjectConstructor;
-    onOpen: FunctionConstructor;
-    onOpened: FunctionConstructor;
-    onClose: FunctionConstructor;
-    onClosed: FunctionConstructor;
-    onInfo: FunctionConstructor;
-    onSubmit: FunctionConstructor;
-}>> & Readonly<{
-    onOpened?: ((...args: any[]) => any) | undefined;
-    onClosed?: ((...args: any[]) => any) | undefined;
-}>, {
-    sync: boolean;
-    items: unknown[];
-}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
+declare const _default: import("vue").DefineComponent<
+	import("vue").ExtractPropTypes<{
+		items: {
+			type: ArrayConstructor;
+			default: () => never[];
+		};
+		props: ObjectConstructor;
+		sync: BooleanConstructor;
+		op: ObjectConstructor;
+		dialog: ObjectConstructor;
+		onOpen: FunctionConstructor;
+		onOpened: FunctionConstructor;
+		onClose: FunctionConstructor;
+		onClosed: FunctionConstructor;
+		onInfo: FunctionConstructor;
+		onSubmit: FunctionConstructor;
+	}>,
+	() => any,
+	{},
+	{},
+	{},
+	import("vue").ComponentOptionsMixin,
+	import("vue").ComponentOptionsMixin,
+	("opened" | "closed")[],
+	"opened" | "closed",
+	import("vue").PublicProps,
+	Readonly<
+		import("vue").ExtractPropTypes<{
+			items: {
+				type: ArrayConstructor;
+				default: () => never[];
+			};
+			props: ObjectConstructor;
+			sync: BooleanConstructor;
+			op: ObjectConstructor;
+			dialog: ObjectConstructor;
+			onOpen: FunctionConstructor;
+			onOpened: FunctionConstructor;
+			onClose: FunctionConstructor;
+			onClosed: FunctionConstructor;
+			onInfo: FunctionConstructor;
+			onSubmit: FunctionConstructor;
+		}>
+	> &
+		Readonly<{
+			onOpened?: ((...args: any[]) => any) | undefined;
+			onClosed?: ((...args: any[]) => any) | undefined;
+		}>,
+	{
+		sync: boolean;
+		items: unknown[];
+	},
+	{},
+	{},
+	{},
+	string,
+	import("vue").ComponentProvideOptions,
+	true,
+	{},
+	any
+>;
 export default _default;

+ 4 - 4
packages/crud/types/hooks/browser.d.ts

@@ -1,9 +1,9 @@
 import { App } from "vue";
 export declare type Browser = {
-    screen: string;
-    isMini: boolean;
+	screen: string;
+	isMini: boolean;
 };
 export declare function useBrowser(app?: App): {
-    screen: string;
-    isMini: boolean;
+	screen: string;
+	isMini: boolean;
 };

+ 31 - 28
packages/crud/types/hooks/core.d.ts

@@ -1,40 +1,43 @@
 /// <reference types="../index" />
 import { Browser } from "./browser";
 export declare function useRefs(): {
-    refs: {
-        [key: string]: obj;
-    };
-    setRefs: (name: string) => (el: any) => void;
+	refs: {
+		[key: string]: obj;
+	};
+	setRefs: (name: string) => (el: any) => void;
 };
 export declare function useGlobal(): GlobalOptions;
 export declare function useTools(): {
-    slots: Readonly<{
-        [name: string]: import("vue").Slot | undefined;
-    }>;
-    getValue: (data: any, params?: any) => any;
-    dict: ClCrud.Dict;
-    permission: ClCrud.Permission;
-    style: {
-        size: ElementPlus.Size;
-    };
-    events: {
-        [key: string]: (...args: any[]) => any;
-    };
-    render: {
-        autoHeight: boolean;
-        functionSlots: {
-            exclude: string[];
-        };
-    };
-    crud: any;
-    browser: Browser;
+	slots: Readonly<{
+		[name: string]: import("vue").Slot | undefined;
+	}>;
+	getValue: (data: any, params?: any) => any;
+	dict: ClCrud.Dict;
+	permission: ClCrud.Permission;
+	style: {
+		size: ElementPlus.Size;
+	};
+	events: {
+		[key: string]: (...args: any[]) => any;
+	};
+	render: {
+		autoHeight: boolean;
+		functionSlots: {
+			exclude: string[];
+		};
+	};
+	crud: any;
+	browser: Browser;
 };
 export declare function useCore(): {
-    crud: ClCrud.Provide;
-    mitt: Emitter;
+	crud: ClCrud.Provide;
+	mitt: Emitter;
 };
-export declare function useElApi(keys: string[], el: any): {
-    [key: string]: any;
+export declare function useElApi(
+	keys: string[],
+	el: any
+): {
+	[key: string]: any;
 };
 export declare function useConfig({ props }: any): any;
 export declare function useEventListener(name: string, cb: () => any): void;

+ 20 - 7
packages/crud/types/hooks/crud.d.ts

@@ -1,11 +1,24 @@
 /// <reference types="../index" />
 import { Ref } from "vue";
-export declare function useCrud(options?: ClCrud.Options, cb?: (app: ClCrud.Ref) => void): Ref<ClCrud.Ref | undefined, ClCrud.Ref | undefined>;
-export declare function useUpsert<T = any>(options?: ClUpsert.Options<T>): Ref<ClUpsert.Ref<any> | undefined, ClUpsert.Ref<any> | undefined>;
-export declare function useTable<T = any>(options?: ClTable.Options<T>): Ref<ClTable.Ref<T> | undefined, ClTable.Ref<T> | undefined>;
-export declare function useForm<T = any>(cb?: (app: ClForm.Ref<T>) => void): Ref<ClForm.Ref<T> | undefined, ClForm.Ref<T> | undefined>;
-export declare function useAdvSearch<T = any>(options?: ClAdvSearch.Options<T>): Ref<ClAdvSearch.Ref<T> | undefined, ClAdvSearch.Ref<T> | undefined>;
-export declare function useSearch<T = any>(options?: ClSearch.Options<T>): Ref<ClSearch.Ref<T> | undefined, ClSearch.Ref<T> | undefined>;
+export declare function useCrud(
+	options?: ClCrud.Options,
+	cb?: (app: ClCrud.Ref) => void
+): Ref<ClCrud.Ref | undefined, ClCrud.Ref | undefined>;
+export declare function useUpsert<T = any>(
+	options?: ClUpsert.Options<T>
+): Ref<ClUpsert.Ref<any> | undefined, ClUpsert.Ref<any> | undefined>;
+export declare function useTable<T = any>(
+	options?: ClTable.Options<T>
+): Ref<ClTable.Ref<T> | undefined, ClTable.Ref<T> | undefined>;
+export declare function useForm<T = any>(
+	cb?: (app: ClForm.Ref<T>) => void
+): Ref<ClForm.Ref<T> | undefined, ClForm.Ref<T> | undefined>;
+export declare function useAdvSearch<T = any>(
+	options?: ClAdvSearch.Options<T>
+): Ref<ClAdvSearch.Ref<T> | undefined, ClAdvSearch.Ref<T> | undefined>;
+export declare function useSearch<T = any>(
+	options?: ClSearch.Options<T>
+): Ref<ClSearch.Ref<T> | undefined, ClSearch.Ref<T> | undefined>;
 export declare function useDialog(options?: {
-    onFullscreen(visible: boolean): void;
+	onFullscreen(visible: boolean): void;
 }): ClDialog.Provide;

+ 2 - 2
packages/crud/types/hooks/form.d.ts

@@ -1,6 +1,6 @@
 export declare const format: any;
 declare const _default: {
-    bind(data: any): any;
-    submit(data: any): any;
+	bind(data: any): any;
+	submit(data: any): any;
 };
 export default _default;

+ 6 - 6
packages/crud/types/hooks/index.d.ts

@@ -1,16 +1,16 @@
 /// <reference types="../index" />
 import { Mitt } from "../utils/mitt";
 export declare function useCore(): {
-    crud: ClCrud.Ref;
-    mitt: Mitt;
+	crud: ClCrud.Ref;
+	mitt: Mitt;
 };
 export declare function useConfig(): Config;
 export declare function useBrowser(): Browser;
 export declare function useRefs(): {
-    refs: {
-        [key: string]: obj;
-    };
-    setRefs: (name: string) => (el: any) => void;
+	refs: {
+		[key: string]: obj;
+	};
+	setRefs: (name: string) => (el: any) => void;
 };
 export declare function useProxy(ctx: any): any;
 export declare function useElApi(keys: string[], el: any): obj;

+ 6 - 3
packages/crud/types/index.d.ts

@@ -2,9 +2,12 @@
 import type { App } from "vue";
 import "./static/index.scss";
 declare const Crud: {
-    install(app: App, options?: Options): {
-        name: string;
-    };
+	install(
+		app: App,
+		options?: Options
+	): {
+		name: string;
+	};
 };
 export default Crud;
 export * from "./emitter";

+ 29 - 29
packages/crud/types/locale/en.d.ts

@@ -1,32 +1,32 @@
 declare const _default: {
-    op: string;
-    add: string;
-    delete: string;
-    multiDelete: string;
-    update: string;
-    refresh: string;
-    info: string;
-    search: string;
-    reset: string;
-    clear: string;
-    save: string;
-    close: string;
-    confirm: string;
-    advSearch: string;
-    searchKey: string;
-    placeholder: string;
-    placeholderSelect: string;
-    tips: string;
-    saveSuccess: string;
-    deleteSuccess: string;
-    deleteConfirm: string;
-    empty: string;
-    desc: string;
-    asc: string;
-    select: string;
-    deselect: string;
-    seeMore: string;
-    hideContent: string;
-    nonEmpty: string;
+	op: string;
+	add: string;
+	delete: string;
+	multiDelete: string;
+	update: string;
+	refresh: string;
+	info: string;
+	search: string;
+	reset: string;
+	clear: string;
+	save: string;
+	close: string;
+	confirm: string;
+	advSearch: string;
+	searchKey: string;
+	placeholder: string;
+	placeholderSelect: string;
+	tips: string;
+	saveSuccess: string;
+	deleteSuccess: string;
+	deleteConfirm: string;
+	empty: string;
+	desc: string;
+	asc: string;
+	select: string;
+	deselect: string;
+	seeMore: string;
+	hideContent: string;
+	nonEmpty: string;
 };
 export default _default;

+ 124 - 124
packages/crud/types/locale/index.d.ts

@@ -1,126 +1,126 @@
 export declare const locale: {
-    en: {
-        op: string;
-        add: string;
-        delete: string;
-        multiDelete: string;
-        update: string;
-        refresh: string;
-        info: string;
-        search: string;
-        reset: string;
-        clear: string;
-        save: string;
-        close: string;
-        confirm: string;
-        advSearch: string;
-        searchKey: string;
-        placeholder: string;
-        placeholderSelect: string;
-        tips: string;
-        saveSuccess: string;
-        deleteSuccess: string;
-        deleteConfirm: string;
-        empty: string;
-        desc: string;
-        asc: string;
-        select: string;
-        deselect: string;
-        seeMore: string;
-        hideContent: string;
-        nonEmpty: string;
-    };
-    ja: {
-        op: string;
-        add: string;
-        delete: string;
-        multiDelete: string;
-        update: string;
-        refresh: string;
-        info: string;
-        search: string;
-        reset: string;
-        clear: string;
-        save: string;
-        close: string;
-        confirm: string;
-        advSearch: string;
-        searchKey: string;
-        placeholder: string;
-        placeholderSelect: string;
-        tips: string;
-        saveSuccess: string;
-        deleteSuccess: string;
-        deleteConfirm: string;
-        empty: string;
-        desc: string;
-        asc: string;
-        select: string;
-        deselect: string;
-        seeMore: string;
-        hideContent: string;
-        nonEmpty: string;
-    };
-    zhCn: {
-        op: string;
-        add: string;
-        delete: string;
-        multiDelete: string;
-        update: string;
-        refresh: string;
-        info: string;
-        search: string;
-        reset: string;
-        clear: string;
-        save: string;
-        close: string;
-        confirm: string;
-        advSearch: string;
-        searchKey: string;
-        placeholder: string;
-        placeholderSelect: string;
-        tips: string;
-        saveSuccess: string;
-        deleteSuccess: string;
-        deleteConfirm: string;
-        empty: string;
-        desc: string;
-        asc: string;
-        select: string;
-        deselect: string;
-        seeMore: string;
-        hideContent: string;
-        nonEmpty: string;
-    };
-    zhTw: {
-        op: string;
-        add: string;
-        delete: string;
-        multiDelete: string;
-        update: string;
-        refresh: string;
-        info: string;
-        search: string;
-        reset: string;
-        clear: string;
-        save: string;
-        close: string;
-        confirm: string;
-        advSearch: string;
-        searchKey: string;
-        placeholder: string;
-        placeholderSelect: string;
-        tips: string;
-        saveSuccess: string;
-        deleteSuccess: string;
-        deleteConfirm: string;
-        empty: string;
-        desc: string;
-        asc: string;
-        select: string;
-        deselect: string;
-        seeMore: string;
-        hideContent: string;
-        nonEmpty: string;
-    };
+	en: {
+		op: string;
+		add: string;
+		delete: string;
+		multiDelete: string;
+		update: string;
+		refresh: string;
+		info: string;
+		search: string;
+		reset: string;
+		clear: string;
+		save: string;
+		close: string;
+		confirm: string;
+		advSearch: string;
+		searchKey: string;
+		placeholder: string;
+		placeholderSelect: string;
+		tips: string;
+		saveSuccess: string;
+		deleteSuccess: string;
+		deleteConfirm: string;
+		empty: string;
+		desc: string;
+		asc: string;
+		select: string;
+		deselect: string;
+		seeMore: string;
+		hideContent: string;
+		nonEmpty: string;
+	};
+	ja: {
+		op: string;
+		add: string;
+		delete: string;
+		multiDelete: string;
+		update: string;
+		refresh: string;
+		info: string;
+		search: string;
+		reset: string;
+		clear: string;
+		save: string;
+		close: string;
+		confirm: string;
+		advSearch: string;
+		searchKey: string;
+		placeholder: string;
+		placeholderSelect: string;
+		tips: string;
+		saveSuccess: string;
+		deleteSuccess: string;
+		deleteConfirm: string;
+		empty: string;
+		desc: string;
+		asc: string;
+		select: string;
+		deselect: string;
+		seeMore: string;
+		hideContent: string;
+		nonEmpty: string;
+	};
+	zhCn: {
+		op: string;
+		add: string;
+		delete: string;
+		multiDelete: string;
+		update: string;
+		refresh: string;
+		info: string;
+		search: string;
+		reset: string;
+		clear: string;
+		save: string;
+		close: string;
+		confirm: string;
+		advSearch: string;
+		searchKey: string;
+		placeholder: string;
+		placeholderSelect: string;
+		tips: string;
+		saveSuccess: string;
+		deleteSuccess: string;
+		deleteConfirm: string;
+		empty: string;
+		desc: string;
+		asc: string;
+		select: string;
+		deselect: string;
+		seeMore: string;
+		hideContent: string;
+		nonEmpty: string;
+	};
+	zhTw: {
+		op: string;
+		add: string;
+		delete: string;
+		multiDelete: string;
+		update: string;
+		refresh: string;
+		info: string;
+		search: string;
+		reset: string;
+		clear: string;
+		save: string;
+		close: string;
+		confirm: string;
+		advSearch: string;
+		searchKey: string;
+		placeholder: string;
+		placeholderSelect: string;
+		tips: string;
+		saveSuccess: string;
+		deleteSuccess: string;
+		deleteConfirm: string;
+		empty: string;
+		desc: string;
+		asc: string;
+		select: string;
+		deselect: string;
+		seeMore: string;
+		hideContent: string;
+		nonEmpty: string;
+	};
 };

+ 29 - 29
packages/crud/types/locale/ja.d.ts

@@ -1,32 +1,32 @@
 declare const _default: {
-    op: string;
-    add: string;
-    delete: string;
-    multiDelete: string;
-    update: string;
-    refresh: string;
-    info: string;
-    search: string;
-    reset: string;
-    clear: string;
-    save: string;
-    close: string;
-    confirm: string;
-    advSearch: string;
-    searchKey: string;
-    placeholder: string;
-    placeholderSelect: string;
-    tips: string;
-    saveSuccess: string;
-    deleteSuccess: string;
-    deleteConfirm: string;
-    empty: string;
-    desc: string;
-    asc: string;
-    select: string;
-    deselect: string;
-    seeMore: string;
-    hideContent: string;
-    nonEmpty: string;
+	op: string;
+	add: string;
+	delete: string;
+	multiDelete: string;
+	update: string;
+	refresh: string;
+	info: string;
+	search: string;
+	reset: string;
+	clear: string;
+	save: string;
+	close: string;
+	confirm: string;
+	advSearch: string;
+	searchKey: string;
+	placeholder: string;
+	placeholderSelect: string;
+	tips: string;
+	saveSuccess: string;
+	deleteSuccess: string;
+	deleteConfirm: string;
+	empty: string;
+	desc: string;
+	asc: string;
+	select: string;
+	deselect: string;
+	seeMore: string;
+	hideContent: string;
+	nonEmpty: string;
 };
 export default _default;

+ 29 - 29
packages/crud/types/locale/zh-cn.d.ts

@@ -1,32 +1,32 @@
 declare const _default: {
-    op: string;
-    add: string;
-    delete: string;
-    multiDelete: string;
-    update: string;
-    refresh: string;
-    info: string;
-    search: string;
-    reset: string;
-    clear: string;
-    save: string;
-    close: string;
-    confirm: string;
-    advSearch: string;
-    searchKey: string;
-    placeholder: string;
-    placeholderSelect: string;
-    tips: string;
-    saveSuccess: string;
-    deleteSuccess: string;
-    deleteConfirm: string;
-    empty: string;
-    desc: string;
-    asc: string;
-    select: string;
-    deselect: string;
-    seeMore: string;
-    hideContent: string;
-    nonEmpty: string;
+	op: string;
+	add: string;
+	delete: string;
+	multiDelete: string;
+	update: string;
+	refresh: string;
+	info: string;
+	search: string;
+	reset: string;
+	clear: string;
+	save: string;
+	close: string;
+	confirm: string;
+	advSearch: string;
+	searchKey: string;
+	placeholder: string;
+	placeholderSelect: string;
+	tips: string;
+	saveSuccess: string;
+	deleteSuccess: string;
+	deleteConfirm: string;
+	empty: string;
+	desc: string;
+	asc: string;
+	select: string;
+	deselect: string;
+	seeMore: string;
+	hideContent: string;
+	nonEmpty: string;
 };
 export default _default;

+ 29 - 29
packages/crud/types/locale/zh-tw.d.ts

@@ -1,32 +1,32 @@
 declare const _default: {
-    op: string;
-    add: string;
-    delete: string;
-    multiDelete: string;
-    update: string;
-    refresh: string;
-    info: string;
-    search: string;
-    reset: string;
-    clear: string;
-    save: string;
-    close: string;
-    confirm: string;
-    advSearch: string;
-    searchKey: string;
-    placeholder: string;
-    placeholderSelect: string;
-    tips: string;
-    saveSuccess: string;
-    deleteSuccess: string;
-    deleteConfirm: string;
-    empty: string;
-    desc: string;
-    asc: string;
-    select: string;
-    deselect: string;
-    seeMore: string;
-    hideContent: string;
-    nonEmpty: string;
+	op: string;
+	add: string;
+	delete: string;
+	multiDelete: string;
+	update: string;
+	refresh: string;
+	info: string;
+	search: string;
+	reset: string;
+	clear: string;
+	save: string;
+	close: string;
+	confirm: string;
+	advSearch: string;
+	searchKey: string;
+	placeholder: string;
+	placeholderSelect: string;
+	tips: string;
+	saveSuccess: string;
+	deleteSuccess: string;
+	deleteConfirm: string;
+	empty: string;
+	desc: string;
+	asc: string;
+	select: string;
+	deselect: string;
+	seeMore: string;
+	hideContent: string;
+	nonEmpty: string;
 };
 export default _default;

+ 29 - 31
packages/crud/types/test/service.d.ts

@@ -1,34 +1,32 @@
 declare class TestService {
-    page(params: any): Promise<unknown>;
-    update(params: {
-        id: any;
-        [key: string]: any;
-    }): Promise<void>;
-    add(params: any): Promise<string>;
-    info(params: {
-        id: any;
-    }): Promise<{
-        id: number;
-        name: string;
-        createTime: string;
-        wages: number;
-        status: number;
-        account: string;
-        occupation: number;
-        phone: number;
-    } | undefined>;
-    delete(params: {
-        ids: any[];
-    }): Promise<void>;
-    list(): Promise<{
-        id: number;
-        name: string;
-        createTime: string;
-        wages: number;
-        status: number;
-        account: string;
-        occupation: number;
-        phone: number;
-    }[]>;
+	page(params: any): Promise<unknown>;
+	update(params: { id: any; [key: string]: any }): Promise<void>;
+	add(params: any): Promise<string>;
+	info(params: { id: any }): Promise<
+		| {
+				id: number;
+				name: string;
+				createTime: string;
+				wages: number;
+				status: number;
+				account: string;
+				occupation: number;
+				phone: number;
+		  }
+		| undefined
+	>;
+	delete(params: { ids: any[] }): Promise<void>;
+	list(): Promise<
+		{
+			id: number;
+			name: string;
+			createTime: string;
+			wages: number;
+			status: number;
+			account: string;
+			occupation: number;
+			phone: number;
+		}[]
+	>;
 }
 export { TestService };

+ 3 - 3
packages/crud/types/utils/form-hook.d.ts

@@ -1,10 +1,10 @@
 /// <reference types="../index" />
 export declare const format: {
-    [key: string]: ClForm.HookFn;
+	[key: string]: ClForm.HookFn;
 };
 declare const formHook: {
-    bind(data: any): void;
-    submit(data: any): void;
+	bind(data: any): void;
+	submit(data: any): void;
 };
 export declare function registerFormHook(name: string, fn: ClForm.HookFn): void;
 export default formHook;

+ 3 - 3
packages/crud/types/utils/global.d.ts

@@ -1,7 +1,7 @@
 import { App } from "vue";
 declare const _default: {
-    readonly vue: App<any>;
-    get(key: string): any;
-    set(key: string, value: any): void;
+	readonly vue: App<any>;
+	get(key: string): any;
+	set(key: string, value: any): void;
 };
 export default _default;

+ 7 - 3
packages/crud/types/utils/index.d.ts

@@ -7,7 +7,11 @@ export declare function merge(d1: any, d2: any): any;
 export declare function addClass(el: Element, name: string): void;
 export declare function removeClass(el: Element, name: string): void;
 export declare function getValue(data: any, params?: any): any;
-export declare function deepFind(value: any, list: any[], options?: {
-    allLevels: boolean;
-}): any;
+export declare function deepFind(
+	value: any,
+	list: any[],
+	options?: {
+		allLevels: boolean;
+	}
+): any;
 export declare function uuid(separator?: string): string;

+ 6 - 6
packages/crud/types/utils/mitt.d.ts

@@ -1,10 +1,10 @@
 declare const mitt: import("mitt").Emitter<Record<import("mitt").EventType, unknown>>;
 declare class Mitt {
-    id: number;
-    constructor(id?: number);
-    send(type: "emit" | "off" | "on", name: string, ...args: any[]): void;
-    emit(name: string, ...args: any[]): void;
-    off(name: string, handler: (...args: any[]) => void): void;
-    on(name: string, handler: (...args: any[]) => void): void;
+	id: number;
+	constructor(id?: number);
+	send(type: "emit" | "off" | "on", name: string, ...args: any[]): void;
+	emit(name: string, ...args: any[]): void;
+	off(name: string, handler: (...args: any[]) => void): void;
+	on(name: string, handler: (...args: any[]) => void): void;
 }
 export { Mitt, mitt };

+ 19 - 8
packages/crud/types/utils/parse.d.ts

@@ -6,9 +6,18 @@ export declare function parseFormHidden(value: any, { scope }: any): any;
 /**
  * 解析 table.dict
  */
-export declare function parseTableDict(value: any, item: ClTable.Column): string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
-    [key: string]: any;
-}>[];
+export declare function parseTableDict(
+	value: any,
+	item: ClTable.Column
+):
+	| string
+	| import("vue").VNode<
+			import("vue").RendererNode,
+			import("vue").RendererElement,
+			{
+				[key: string]: any;
+			}
+	  >[];
 /**
  * 解析 table.op.buttons
  */
@@ -16,8 +25,10 @@ export declare function parseTableOpButtons(buttons: any[], { scope }: any): any
 /**
  * 解析扩展组件
  */
-export declare function parseExtensionComponent(vnode: any): {
-    children: any;
-} | {
-    children?: undefined;
-};
+export declare function parseExtensionComponent(vnode: any):
+	| {
+			children: any;
+	  }
+	| {
+			children?: undefined;
+	  };

+ 3 - 3
packages/crud/types/utils/temp.d.ts

@@ -1,7 +1,7 @@
 import { App } from "vue";
 declare const _default: {
-    readonly vue: App<any>;
-    get(key: string): any;
-    set(key: string, value: any): void;
+	readonly vue: App<any>;
+	get(key: string): any;
+	set(key: string, value: any): void;
 };
 export default _default;

+ 32 - 29
packages/crud/types/utils/test.d.ts

@@ -1,31 +1,34 @@
-export declare const UserList: ({
-    id: number;
-    name: string;
-    createTime: string;
-    price: number;
-    status: number;
-    hook: string;
-    user: {
-        name: string;
-    };
-    t2: string;
-    tags: number[];
-} | {
-    id: number;
-    name: string;
-    createTime: string;
-    price: number;
-    status: number;
-    tags: number[];
-    hook?: undefined;
-    user?: undefined;
-    t2?: undefined;
-})[];
+export declare const UserList: (
+	| {
+			id: number;
+			name: string;
+			createTime: string;
+			price: number;
+			status: number;
+			hook: string;
+			user: {
+				name: string;
+			};
+			t2: string;
+			tags: number[];
+	  }
+	| {
+			id: number;
+			name: string;
+			createTime: string;
+			price: number;
+			status: number;
+			tags: number[];
+			hook?: undefined;
+			user?: undefined;
+			t2?: undefined;
+	  }
+)[];
 export declare const TestService: {
-    page: (p: any) => Promise<unknown>;
-    list: (p: any) => Promise<unknown>;
-    info: (d: any) => Promise<unknown>;
-    add: (d: any) => Promise<void>;
-    delete: (d: any) => Promise<unknown>;
-    update: (d: any) => Promise<void>;
+	page: (p: any) => Promise<unknown>;
+	list: (p: any) => Promise<unknown>;
+	info: (d: any) => Promise<unknown>;
+	add: (d: any) => Promise<void>;
+	delete: (d: any) => Promise<unknown>;
+	update: (d: any) => Promise<void>;
 };

+ 8 - 8
packages/crud/types/utils/vnode.d.ts

@@ -1,13 +1,13 @@
 import { VNode } from "vue";
 interface Options {
-    prop?: string;
-    scope?: any;
-    item?: any;
-    slots?: any;
-    children?: any[] & any;
-    custom?: (vnode: any) => any;
-    render?: "slot" | null;
-    [key: string]: any;
+	prop?: string;
+	scope?: any;
+	item?: any;
+	slots?: any;
+	children?: any[] & any;
+	custom?: (vnode: any) => any;
+	render?: "slot" | null;
+	[key: string]: any;
 }
 export declare function parseNode(vnode: any, options: Options): VNode;
 export declare function renderNode(vnode: any, options: Options): any;

+ 1 - 1
packages/vite-plugin/src/eps/index.ts

@@ -7,7 +7,7 @@ import prettier from "prettier";
 import { config } from "../config";
 import type { Eps } from "../../types";
 
-let service = {};
+const service = {};
 let list: Eps.Entity[] = [];
 let customList: Eps.Entity[] = [];
 

+ 2 - 2
packages/vite-plugin/src/tag/index.ts

@@ -18,12 +18,12 @@ export function createTag(code: string, id: string) {
 					export default defineComponent({
 						name: "${name}"
 					})
-				<\/script>`
+				<\/script>`,
 			);
 
 			return {
 				map: str().generateMap(),
-				code: str().toString()
+				code: str().toString(),
 			};
 		}
 	}

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 1199 - 2948
pnpm-lock.yaml


+ 2 - 2
src/App.vue

@@ -5,6 +5,6 @@
 </template>
 
 <script lang="ts" setup>
-import { ElConfigProvider } from "element-plus";
-import zhCn from "element-plus/dist/locale/zh-cn.mjs";
+import { ElConfigProvider } from 'element-plus';
+import zhCn from 'element-plus/dist/locale/zh-cn.mjs';
 </script>

+ 6 - 6
src/config/dev.ts

@@ -1,18 +1,18 @@
-import { getUrlParam, storage } from "/@/cool/utils";
-import { proxy } from "./proxy";
+import { getUrlParam, storage } from '/@/cool/utils';
+import { proxy } from './proxy';
 
 export default {
 	// 根地址
-	host: proxy["/dev/"].target,
+	host: proxy['/dev/'].target,
 
 	// 请求地址
 	get baseUrl() {
-		let proxy = getUrlParam("proxy");
+		let proxy = getUrlParam('proxy');
 
 		if (proxy) {
-			storage.set("proxy", proxy);
+			storage.set('proxy', proxy);
 		} else {
-			proxy = storage.get("proxy") || "dev";
+			proxy = storage.get('proxy') || 'dev';
 		}
 
 		return `/${proxy}`;

+ 15 - 15
src/config/index.ts

@@ -1,5 +1,5 @@
-import dev from "./dev";
-import prod from "./prod";
+import dev from './dev';
+import prod from './prod';
 
 // 是否开发模式
 export const isDev = import.meta.env.DEV;
@@ -21,9 +21,9 @@ export const config = {
 		// 路由
 		router: {
 			// 模式
-			mode: "history",
+			mode: 'history',
 			// 转场动画
-			transition: "slide"
+			transition: 'slide'
 		},
 
 		// 字体图标库
@@ -34,22 +34,22 @@ export const config = {
 	ignore: {
 		// 不显示请求进度条
 		NProgress: [
-			"/__cool_eps",
-			"/base/open/eps",
-			"/base/comm/person",
-			"/base/comm/permmenu",
-			"/base/comm/upload",
-			"/base/comm/uploadMode",
-			"/dict/info/data",
-			"/space/info/add"
+			'/__cool_eps',
+			'/base/open/eps',
+			'/base/comm/person',
+			'/base/comm/permmenu',
+			'/base/comm/upload',
+			'/base/comm/uploadMode',
+			'/dict/info/data',
+			'/space/info/add'
 		],
 		// 页面不需要登录验证
-		token: ["/login", "/401", "/403", "/404", "/500", "/502"]
+		token: ['/login', '/401', '/403', '/404', '/500', '/502']
 	},
 
 	// 调试
 	test: {
-		token: "",
+		token: '',
 		eps: true
 	},
 
@@ -57,4 +57,4 @@ export const config = {
 	...(isDev ? dev : prod)
 };
 
-export * from "./proxy";
+export * from './proxy';

+ 3 - 3
src/config/prod.ts

@@ -1,9 +1,9 @@
-import { proxy } from "./proxy";
+import { proxy } from './proxy';
 
 export default {
 	// 根地址
-	host: proxy["/prod/"].target,
+	host: proxy['/prod/'].target,
 
 	// 请求地址
-	baseUrl: "/api"
+	baseUrl: '/api'
 };

+ 6 - 6
src/config/proxy.ts

@@ -1,13 +1,13 @@
 export const proxy = {
-	"/dev/": {
-		target: "http://127.0.0.1:8001",
+	'/dev/': {
+		target: 'http://127.0.0.1:8888',
 		changeOrigin: true,
-		rewrite: (path: string) => path.replace(/^\/dev/, "")
+		rewrite: (path: string) => path.replace(/^\/dev/, '')
 	},
 
-	"/prod/": {
-		target: "https://show.cool-admin.com",
+	'/prod/': {
+		target: 'https://show.cool-admin.com',
 		changeOrigin: true,
-		rewrite: (path: string) => path.replace(/^\/prod/, "/api")
+		rewrite: (path: string) => path.replace(/^\/prod/, '/api')
 	}
 };

+ 28 - 26
src/cool/bootstrap/eps.ts

@@ -1,11 +1,11 @@
-import { cloneDeep, merge } from "lodash-es";
-import { BaseService, service } from "../service";
-import { Module } from "../types";
-import { path2Obj } from "../utils";
-import { config, isDev } from "/@/config";
-import { eps } from "virtual:eps";
-import { hmr } from "../hooks";
-import { module } from "../module";
+import { cloneDeep, merge } from 'lodash-es';
+import { BaseService, service } from '../service';
+import type { Module } from '../types';
+import { path2Obj } from '../utils';
+import { config, isDev } from '/@/config';
+import { eps } from 'virtual:eps';
+import { hmr } from '../hooks';
+import { module } from '../module';
 
 // 更新事件
 function onUpdate() {
@@ -15,22 +15,24 @@ function onUpdate() {
 			const a = new BaseService(d.namespace);
 
 			for (const i in d) {
-				const { path, method = "get" } = d[i];
+				const { path, method = 'get' } = d[i];
 
 				if (path) {
 					a.request = a.request;
 
+					// @ts-ignore
 					a[i] = function (data?: any) {
 						return this.request({
 							url: path,
 							method,
-							[method.toLocaleLowerCase() == "post" ? "data" : "params"]: data
+							[method.toLocaleLowerCase() == 'post' ? 'data' : 'params']: data
 						});
 					};
 				}
 			}
 
 			for (const i in a) {
+				// @ts-ignore
 				d[i] = a[i];
 			}
 		} else {
@@ -59,11 +61,11 @@ function onUpdate() {
 	);
 
 	// 热更新处理
-	hmr.setData("service", service);
+	hmr.setData('service', service);
 
 	// 提示
 	if (isDev) {
-		console.log("[cool-eps] updated");
+		console.log('[cool-eps] updated');
 	}
 }
 
@@ -76,21 +78,21 @@ export function createEps(modules: Module[]) {
 		const list: any[] = [];
 
 		// 模拟 eps 数据
-		modules.forEach((m) => {
-			m.services?.forEach((s) => {
+		modules.forEach(m => {
+			m.services?.forEach(s => {
 				const api = Array.from(
 					new Set([
 						...Object.getOwnPropertyNames(s.value.constructor.prototype),
-						"page",
-						"list",
-						"info",
-						"delete",
-						"update",
-						"add"
+						'page',
+						'list',
+						'info',
+						'delete',
+						'update',
+						'add'
 					])
 				)
-					.filter((e) => !["constructor", "namespace"].includes(e))
-					.map((e) => {
+					.filter(e => !['constructor', 'namespace'].includes(e))
+					.map(e => {
 						return {
 							path: `/${e}`
 						};
@@ -99,7 +101,7 @@ export function createEps(modules: Module[]) {
 				list.push({
 					api,
 					module: m.name,
-					name: s.value.constructor.name + "Entity",
+					name: s.value.constructor.name + 'Entity',
 					prefix: `/admin/${s.path}`,
 					isLocal: true
 				});
@@ -108,8 +110,8 @@ export function createEps(modules: Module[]) {
 
 		// 生成文件
 		service.request({
-			url: "/__cool_eps",
-			method: "POST",
+			url: '/__cool_eps',
+			method: 'POST',
 			proxy: false,
 			data: {
 				list
@@ -120,7 +122,7 @@ export function createEps(modules: Module[]) {
 
 // 监听 vite 触发事件
 if (import.meta.hot) {
-	import.meta.hot.on("eps-update", ({ service }) => {
+	import.meta.hot.on('eps-update', ({ service }) => {
 		if (service) {
 			eps.service = service;
 		}

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно