神仙都没用 1 yıl önce
ebeveyn
işleme
e019f75456

+ 1 - 1
.gitignore

@@ -3,4 +3,4 @@ node_modules
 dist
 dist-ssr
 *.local
-pnpm-lock.yaml
+pnpm-lock.yaml

+ 1 - 1
package.json

@@ -9,7 +9,7 @@
 		"lint:eslint": "eslint \"{src}/**/*.{vue,ts,tsx}\" --fix"
 	},
 	"dependencies": {
-		"@cool-vue/crud": "^7.0.1-beta2",
+		"@cool-vue/crud": "^7.0.1-beta3",
 		"@element-plus/icons-vue": "^2.1.0",
 		"@vueuse/core": "^10.4.0",
 		"@wangeditor/editor": "^5.1.23",

+ 1 - 1
packages/crud/package.json

@@ -1,6 +1,6 @@
 {
 	"name": "@cool-vue/crud",
-	"version": "7.0.1-beta2",
+	"version": "7.0.1-beta3",
 	"private": false,
 	"main": "./dist/index.umd.min.js",
 	"typings": "types/index.d.ts",

+ 2 - 1
packages/crud/src/components/crud/helper.ts

@@ -1,7 +1,8 @@
 import { ElMessageBox, ElMessage } from "element-plus";
 import { Mitt } from "../../utils/mitt";
 import { ref } from "vue";
-import { isArray, isFunction, merge } from "lodash-es";
+import { isArray, isFunction } from "lodash-es";
+import { merge } from "../../utils";
 
 interface Options {
 	mitt: Mitt;

+ 2 - 2
packages/crud/src/components/form/index.tsx

@@ -1,8 +1,8 @@
 import { defineComponent, h, nextTick } from "vue";
-import { cloneDeep, isBoolean, isEmpty, merge } from "lodash-es";
+import { cloneDeep, isBoolean, isEmpty } from "lodash-es";
 import { useAction, useForm, usePlugins, useTabs } from "./helper";
 import { useBrowser, useConfig, useElApi } from "../../hooks";
-import { getValue } from "../../utils";
+import { getValue, merge } from "../../utils";
 import formHook from "../../utils/form-hook";
 import { renderNode } from "../../utils/vnode";
 import { parseFormHidden } from "../../utils/parse";

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

@@ -7,7 +7,7 @@ declare const _default: import("vue").DefineComponent<{
     };
     title: StringConstructor;
     size: {
-        type: (StringConstructor | NumberConstructor)[];
+        type: (NumberConstructor | StringConstructor)[];
         default: string;
     };
     op: {
@@ -22,7 +22,7 @@ declare const _default: import("vue").DefineComponent<{
     };
     title: StringConstructor;
     size: {
-        type: (StringConstructor | NumberConstructor)[];
+        type: (NumberConstructor | StringConstructor)[];
         default: string;
     };
     op: {

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

@@ -1,6 +1,6 @@
 import { PropType } from "vue";
 declare const _default: import("vue").DefineComponent<{
-    modelValue: (StringConstructor | NumberConstructor)[];
+    modelValue: (NumberConstructor | StringConstructor)[];
     labels: {
         type: ArrayConstructor;
         default: () => never[];
@@ -14,7 +14,7 @@ declare const _default: import("vue").DefineComponent<{
         default: string;
     };
 }, () => 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: (StringConstructor | NumberConstructor)[];
+    modelValue: (NumberConstructor | StringConstructor)[];
     labels: {
         type: ArrayConstructor;
         default: () => never[];

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

@@ -15,7 +15,7 @@ declare const _default: import("vue").DefineComponent<{
     onSearch: FunctionConstructor;
     placeholder: StringConstructor;
     width: {
-        type: (StringConstructor | NumberConstructor)[];
+        type: (NumberConstructor | StringConstructor)[];
         default: number;
     };
 }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue" | "field-change")[], "change" | "update:modelValue" | "field-change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -34,7 +34,7 @@ declare const _default: import("vue").DefineComponent<{
     onSearch: FunctionConstructor;
     placeholder: StringConstructor;
     width: {
-        type: (StringConstructor | NumberConstructor)[];
+        type: (NumberConstructor | StringConstructor)[];
         default: number;
     };
 }>> & {

+ 3 - 0
src/modules/demo/components/form-btn.vue

@@ -129,6 +129,9 @@ function open() {
 				}
 			}
 		],
+		op: {
+			// buttons: ["save"]
+		},
 		on: {
 			open() {
 				refs.name.focus();

+ 4 - 3
src/modules/dict/types/index.d.ts

@@ -1,12 +1,13 @@
 export namespace Dict {
-	type List = {
+	interface Item {
 		id: string;
 		label: string;
 		value: any;
+		children?: Item[];
 		[key: string]: any;
-	}[];
+	}
 
 	interface Data {
-		[key: string]: List;
+		[key: string]: Item[];
 	}
 }

+ 4 - 4
yarn.lock

@@ -282,10 +282,10 @@
     "@babel/helper-validator-identifier" "^7.22.20"
     to-fast-properties "^2.0.0"
 
-"@cool-vue/crud@^7.0.1-beta2":
-  version "7.0.1-beta2"
-  resolved "https://registry.yarnpkg.com/@cool-vue/crud/-/crud-7.0.1-beta2.tgz#1c43ad0d5af3fe009bfcfa312c71d8b99a676213"
-  integrity sha512-CN9hlfsWKOU/qf7E1COjgLqEqJBOd3v8v8bHeivFt7BHdDmwxrgqGZWXvZ6zp4LXSBq7dacF7dqn1FOe7TYzCQ==
+"@cool-vue/crud@^7.0.1-beta3":
+  version "7.0.1-beta3"
+  resolved "https://registry.yarnpkg.com/@cool-vue/crud/-/crud-7.0.1-beta3.tgz#70d116bc81fcb665a8abfe7adee6d3951fdd318b"
+  integrity sha512-/vKd3WRdtwx6kD6H5YAqJt0bWPRdGhCElkx/i7QqUOszBKvpWVSeEvb+8NdVLG3w9s+xgz83+kTNJcq1L6PenQ==
   dependencies:
     array.prototype.flat "^1.2.4"
     core-js "^3.21.1"