@robot-admin/naive-ui-components 0.24.5 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/README.md +9 -1
- package/README_EN.md +9 -1
- package/dist/C_Form.base.css +23 -11
- package/dist/C_Form.css +23 -11
- package/dist/C_FormModal.css +1 -3
- package/dist/C_FormModal2.cjs +1 -1
- package/dist/C_FormModal2.js +1 -1
- package/dist/C_FormSearch.css +79 -79
- package/dist/C_Table.base.css +145 -121
- package/dist/C_Table.css +122 -110
- package/dist/C_Table2.cjs +3 -3
- package/dist/C_Table2.js +3 -3
- package/dist/config.d.cts +2 -2
- package/dist/config.d.ts +2 -2
- package/dist/constants2.d.cts +4 -4
- package/dist/constants2.d.ts +4 -4
- package/dist/constants3.d.cts +1 -1
- package/dist/constants3.d.ts +1 -1
- package/dist/constants5.d.cts +2 -2
- package/dist/constants5.d.ts +2 -2
- package/dist/data.d.cts +2 -2
- package/dist/data.d.ts +2 -2
- package/dist/data2.d.cts +1 -1
- package/dist/data2.d.ts +1 -1
- package/dist/dictionary.cjs +1 -1
- package/dist/dictionary.d.cts +10 -1
- package/dist/dictionary.d.ts +10 -1
- package/dist/dictionary.js +1 -1
- package/dist/formModal.cjs +1 -0
- package/dist/formModal.js +1 -0
- package/dist/helpers.cjs +1 -1
- package/dist/helpers.js +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.vue.d.cts +5 -5
- package/dist/index.vue.d.ts +5 -5
- package/dist/index10.vue.d.cts +1 -1
- package/dist/index10.vue.d.ts +1 -1
- package/dist/index11.vue.d.cts +1 -1
- package/dist/index13.vue.d.ts +3 -3
- package/dist/index14.vue.d.cts +3 -3
- package/dist/index15.vue.d.ts +7 -7
- package/dist/index16.vue.d.cts +7 -7
- package/dist/index17.vue.d.ts +1 -1
- package/dist/index18.vue.d.cts +1 -1
- package/dist/index18.vue.d.ts +1 -1
- package/dist/index19.vue.d.cts +1 -1
- package/dist/index19.vue.d.ts +2 -2
- package/dist/index2.vue.d.cts +3 -3
- package/dist/index2.vue.d.ts +3 -3
- package/dist/index20.vue.d.cts +2 -2
- package/dist/index21.vue.d.ts +1 -1
- package/dist/index22.vue.d.cts +1 -1
- package/dist/index22.vue.d.ts +1 -1
- package/dist/index23.vue.d.cts +1 -1
- package/dist/index25.vue.d.cts +1 -1
- package/dist/index25.vue.d.ts +1 -1
- package/dist/index26.vue.d.cts +1 -1
- package/dist/index26.vue.d.ts +1 -1
- package/dist/index28.vue.d.cts +2 -2
- package/dist/index28.vue.d.ts +2 -2
- package/dist/index29.vue.d.cts +3 -3
- package/dist/index29.vue.d.ts +3 -3
- package/dist/index3.vue.d.cts +4 -4
- package/dist/index3.vue.d.ts +4 -4
- package/dist/index7.vue.d.ts +1 -1
- package/dist/index8.vue.d.cts +1 -1
- package/dist/index9.vue.d.ts +1 -1
- package/dist/mapUtils.d.cts +3 -3
- package/dist/mapUtils.d.ts +3 -3
- package/dist/serializeSearch.cjs +1 -1
- package/dist/serializeSearch.js +1 -1
- package/dist/style.css +225 -203
- package/dist/useCollapsePanel.d.cts +5 -5
- package/dist/useCollapsePanel.d.ts +5 -5
- package/dist/useComponentLocale.cjs +1 -1
- package/dist/useComponentLocale.js +1 -1
- package/dist/useCropperCore.d.cts +6 -6
- package/dist/useCropperCore.d.ts +6 -6
- package/dist/useDictionary.cjs +1 -1
- package/dist/useDictionary.js +1 -1
- package/dist/useDynamicFormState.d.cts +21 -12
- package/dist/useDynamicFormState.d.ts +21 -12
- package/dist/useEdgeInteraction.d.cts +1 -1
- package/dist/useEdgeInteraction.d.ts +1 -1
- package/dist/useFormConfig.d.cts +2 -0
- package/dist/useFormConfig.d.ts +2 -0
- package/dist/useInfiniteScroll.d.cts +2 -2
- package/dist/useInfiniteScroll.d.ts +2 -2
- package/dist/useQRCode.d.cts +3 -3
- package/dist/useQRCode.d.ts +3 -3
- package/dist/useSignatureHistory.d.cts +3 -3
- package/dist/useSignatureHistory.d.ts +3 -3
- package/dist/useSplitResize.d.cts +9 -9
- package/dist/useSplitResize.d.ts +9 -9
- package/dist/useWorkflowValidation.d.cts +32 -32
- package/dist/useWorkflowValidation.d.ts +32 -32
- package/dist/verification.d.cts +2 -2
- package/dist/verification.d.ts +2 -2
- package/docs/guides/data-workflows.md +9 -0
- package/docs/guides/form-density.en.md +2 -0
- package/docs/guides/form-density.md +2 -0
- package/package.json +1 -1
|
@@ -261,16 +261,16 @@ declare const __VLS_export: vue.DefineComponent<WorkflowProps, {
|
|
|
261
261
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
262
262
|
"update:modelValue": (value: WorkflowData) => any;
|
|
263
263
|
change: (value: WorkflowData) => any;
|
|
264
|
-
save: (data: WorkflowData) => any;
|
|
265
264
|
"node-click": (node: WorkflowNode<NodeType>) => any;
|
|
266
265
|
"edge-click": (edge: WorkflowEdge) => any;
|
|
266
|
+
save: (data: WorkflowData) => any;
|
|
267
267
|
"validate-error": (errors: ValidationError[]) => any;
|
|
268
268
|
}, string, vue.PublicProps, Readonly<WorkflowProps> & Readonly<{
|
|
269
269
|
"onUpdate:modelValue"?: ((value: WorkflowData) => any) | undefined;
|
|
270
270
|
onChange?: ((value: WorkflowData) => any) | undefined;
|
|
271
|
-
onSave?: ((data: WorkflowData) => any) | undefined;
|
|
272
271
|
"onNode-click"?: ((node: WorkflowNode<NodeType>) => any) | undefined;
|
|
273
272
|
"onEdge-click"?: ((edge: WorkflowEdge) => any) | undefined;
|
|
273
|
+
onSave?: ((data: WorkflowData) => any) | undefined;
|
|
274
274
|
"onValidate-error"?: ((errors: ValidationError[]) => any) | undefined;
|
|
275
275
|
}>, {
|
|
276
276
|
theme: "light" | "dark";
|
|
@@ -337,9 +337,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
337
337
|
zIndex?: number | undefined;
|
|
338
338
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
339
339
|
expandParent?: boolean | undefined;
|
|
340
|
-
type: "
|
|
340
|
+
type: "copy";
|
|
341
341
|
data: {
|
|
342
|
-
|
|
342
|
+
copyUsers?: {
|
|
343
343
|
id: string;
|
|
344
344
|
name: string;
|
|
345
345
|
avatar?: string | undefined;
|
|
@@ -348,7 +348,6 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
348
348
|
email?: string | undefined;
|
|
349
349
|
phone?: string | undefined;
|
|
350
350
|
}[] | undefined;
|
|
351
|
-
approvalMode?: ApprovalMode | undefined;
|
|
352
351
|
title: string;
|
|
353
352
|
status?: NodeStatus | undefined;
|
|
354
353
|
config?: Record<string, unknown> | undefined;
|
|
@@ -380,9 +379,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
380
379
|
zIndex?: number | undefined;
|
|
381
380
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
382
381
|
expandParent?: boolean | undefined;
|
|
383
|
-
type: "
|
|
382
|
+
type: "approval";
|
|
384
383
|
data: {
|
|
385
|
-
|
|
384
|
+
approvers?: {
|
|
386
385
|
id: string;
|
|
387
386
|
name: string;
|
|
388
387
|
avatar?: string | undefined;
|
|
@@ -391,6 +390,7 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
391
390
|
email?: string | undefined;
|
|
392
391
|
phone?: string | undefined;
|
|
393
392
|
}[] | undefined;
|
|
393
|
+
approvalMode?: ApprovalMode | undefined;
|
|
394
394
|
title: string;
|
|
395
395
|
status?: NodeStatus | undefined;
|
|
396
396
|
config?: Record<string, unknown> | undefined;
|
|
@@ -495,9 +495,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
495
495
|
zIndex?: number | undefined;
|
|
496
496
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
497
497
|
expandParent?: boolean | undefined;
|
|
498
|
-
type: "
|
|
498
|
+
type: "copy";
|
|
499
499
|
data: {
|
|
500
|
-
|
|
500
|
+
copyUsers?: {
|
|
501
501
|
id: string;
|
|
502
502
|
name: string;
|
|
503
503
|
avatar?: string | undefined;
|
|
@@ -506,7 +506,6 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
506
506
|
email?: string | undefined;
|
|
507
507
|
phone?: string | undefined;
|
|
508
508
|
}[] | undefined;
|
|
509
|
-
approvalMode?: ApprovalMode | undefined;
|
|
510
509
|
title: string;
|
|
511
510
|
status?: NodeStatus | undefined;
|
|
512
511
|
config?: Record<string, unknown> | undefined;
|
|
@@ -538,9 +537,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
538
537
|
zIndex?: number | undefined;
|
|
539
538
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
540
539
|
expandParent?: boolean | undefined;
|
|
541
|
-
type: "
|
|
540
|
+
type: "approval";
|
|
542
541
|
data: {
|
|
543
|
-
|
|
542
|
+
approvers?: {
|
|
544
543
|
id: string;
|
|
545
544
|
name: string;
|
|
546
545
|
avatar?: string | undefined;
|
|
@@ -549,6 +548,7 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
549
548
|
email?: string | undefined;
|
|
550
549
|
phone?: string | undefined;
|
|
551
550
|
}[] | undefined;
|
|
551
|
+
approvalMode?: ApprovalMode | undefined;
|
|
552
552
|
title: string;
|
|
553
553
|
status?: NodeStatus | undefined;
|
|
554
554
|
config?: Record<string, unknown> | undefined;
|
|
@@ -706,9 +706,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
706
706
|
zIndex?: number | undefined;
|
|
707
707
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
708
708
|
expandParent?: boolean | undefined;
|
|
709
|
-
type: "
|
|
709
|
+
type: "copy";
|
|
710
710
|
data: {
|
|
711
|
-
|
|
711
|
+
copyUsers?: {
|
|
712
712
|
id: string;
|
|
713
713
|
name: string;
|
|
714
714
|
avatar?: string | undefined;
|
|
@@ -717,7 +717,6 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
717
717
|
email?: string | undefined;
|
|
718
718
|
phone?: string | undefined;
|
|
719
719
|
}[] | undefined;
|
|
720
|
-
approvalMode?: ApprovalMode | undefined;
|
|
721
720
|
title: string;
|
|
722
721
|
status?: NodeStatus | undefined;
|
|
723
722
|
config?: Record<string, unknown> | undefined;
|
|
@@ -749,9 +748,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
749
748
|
zIndex?: number | undefined;
|
|
750
749
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
751
750
|
expandParent?: boolean | undefined;
|
|
752
|
-
type: "
|
|
751
|
+
type: "approval";
|
|
753
752
|
data: {
|
|
754
|
-
|
|
753
|
+
approvers?: {
|
|
755
754
|
id: string;
|
|
756
755
|
name: string;
|
|
757
756
|
avatar?: string | undefined;
|
|
@@ -760,6 +759,7 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
760
759
|
email?: string | undefined;
|
|
761
760
|
phone?: string | undefined;
|
|
762
761
|
}[] | undefined;
|
|
762
|
+
approvalMode?: ApprovalMode | undefined;
|
|
763
763
|
title: string;
|
|
764
764
|
status?: NodeStatus | undefined;
|
|
765
765
|
config?: Record<string, unknown> | undefined;
|
|
@@ -864,9 +864,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
864
864
|
zIndex?: number | undefined;
|
|
865
865
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
866
866
|
expandParent?: boolean | undefined;
|
|
867
|
-
type: "
|
|
867
|
+
type: "copy";
|
|
868
868
|
data: {
|
|
869
|
-
|
|
869
|
+
copyUsers?: {
|
|
870
870
|
id: string;
|
|
871
871
|
name: string;
|
|
872
872
|
avatar?: string | undefined;
|
|
@@ -875,7 +875,6 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
875
875
|
email?: string | undefined;
|
|
876
876
|
phone?: string | undefined;
|
|
877
877
|
}[] | undefined;
|
|
878
|
-
approvalMode?: ApprovalMode | undefined;
|
|
879
878
|
title: string;
|
|
880
879
|
status?: NodeStatus | undefined;
|
|
881
880
|
config?: Record<string, unknown> | undefined;
|
|
@@ -907,9 +906,9 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
907
906
|
zIndex?: number | undefined;
|
|
908
907
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
909
908
|
expandParent?: boolean | undefined;
|
|
910
|
-
type: "
|
|
909
|
+
type: "approval";
|
|
911
910
|
data: {
|
|
912
|
-
|
|
911
|
+
approvers?: {
|
|
913
912
|
id: string;
|
|
914
913
|
name: string;
|
|
915
914
|
avatar?: string | undefined;
|
|
@@ -918,6 +917,7 @@ declare function useWorkflowNodes(props: WorkflowProps, emit: EmitFn$1, vueFlowR
|
|
|
918
917
|
email?: string | undefined;
|
|
919
918
|
phone?: string | undefined;
|
|
920
919
|
}[] | undefined;
|
|
920
|
+
approvalMode?: ApprovalMode | undefined;
|
|
921
921
|
title: string;
|
|
922
922
|
status?: NodeStatus | undefined;
|
|
923
923
|
config?: Record<string, unknown> | undefined;
|
|
@@ -1088,9 +1088,9 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1088
1088
|
zIndex?: number | undefined;
|
|
1089
1089
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
1090
1090
|
expandParent?: boolean | undefined;
|
|
1091
|
-
type: "
|
|
1091
|
+
type: "copy";
|
|
1092
1092
|
data: {
|
|
1093
|
-
|
|
1093
|
+
copyUsers?: {
|
|
1094
1094
|
id: string;
|
|
1095
1095
|
name: string;
|
|
1096
1096
|
avatar?: string | undefined;
|
|
@@ -1099,7 +1099,6 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1099
1099
|
email?: string | undefined;
|
|
1100
1100
|
phone?: string | undefined;
|
|
1101
1101
|
}[] | undefined;
|
|
1102
|
-
approvalMode?: ApprovalMode | undefined;
|
|
1103
1102
|
title: string;
|
|
1104
1103
|
status?: NodeStatus | undefined;
|
|
1105
1104
|
config?: Record<string, unknown> | undefined;
|
|
@@ -1131,9 +1130,9 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1131
1130
|
zIndex?: number | undefined;
|
|
1132
1131
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
1133
1132
|
expandParent?: boolean | undefined;
|
|
1134
|
-
type: "
|
|
1133
|
+
type: "approval";
|
|
1135
1134
|
data: {
|
|
1136
|
-
|
|
1135
|
+
approvers?: {
|
|
1137
1136
|
id: string;
|
|
1138
1137
|
name: string;
|
|
1139
1138
|
avatar?: string | undefined;
|
|
@@ -1142,6 +1141,7 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1142
1141
|
email?: string | undefined;
|
|
1143
1142
|
phone?: string | undefined;
|
|
1144
1143
|
}[] | undefined;
|
|
1144
|
+
approvalMode?: ApprovalMode | undefined;
|
|
1145
1145
|
title: string;
|
|
1146
1146
|
status?: NodeStatus | undefined;
|
|
1147
1147
|
config?: Record<string, unknown> | undefined;
|
|
@@ -1263,9 +1263,9 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1263
1263
|
zIndex?: number | undefined;
|
|
1264
1264
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
1265
1265
|
expandParent?: boolean | undefined;
|
|
1266
|
-
type: "
|
|
1266
|
+
type: "copy";
|
|
1267
1267
|
data: {
|
|
1268
|
-
|
|
1268
|
+
copyUsers?: {
|
|
1269
1269
|
id: string;
|
|
1270
1270
|
name: string;
|
|
1271
1271
|
avatar?: string | undefined;
|
|
@@ -1274,7 +1274,6 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1274
1274
|
email?: string | undefined;
|
|
1275
1275
|
phone?: string | undefined;
|
|
1276
1276
|
}[] | undefined;
|
|
1277
|
-
approvalMode?: ApprovalMode | undefined;
|
|
1278
1277
|
title: string;
|
|
1279
1278
|
status?: NodeStatus | undefined;
|
|
1280
1279
|
config?: Record<string, unknown> | undefined;
|
|
@@ -1306,9 +1305,9 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1306
1305
|
zIndex?: number | undefined;
|
|
1307
1306
|
extent?: "parent" | [[number, number], [number, number]] | undefined;
|
|
1308
1307
|
expandParent?: boolean | undefined;
|
|
1309
|
-
type: "
|
|
1308
|
+
type: "approval";
|
|
1310
1309
|
data: {
|
|
1311
|
-
|
|
1310
|
+
approvers?: {
|
|
1312
1311
|
id: string;
|
|
1313
1312
|
name: string;
|
|
1314
1313
|
avatar?: string | undefined;
|
|
@@ -1317,6 +1316,7 @@ declare function useWorkflowPreview(nodes: Ref<WorkflowNode[]>, edges: Ref<Workf
|
|
|
1317
1316
|
email?: string | undefined;
|
|
1318
1317
|
phone?: string | undefined;
|
|
1319
1318
|
}[] | undefined;
|
|
1319
|
+
approvalMode?: ApprovalMode | undefined;
|
|
1320
1320
|
title: string;
|
|
1321
1321
|
status?: NodeStatus | undefined;
|
|
1322
1322
|
config?: Record<string, unknown> | undefined;
|
package/dist/verification.d.cts
CHANGED
|
@@ -77,16 +77,16 @@ declare const __VLS_export: vue.DefineComponent<CaptchaProps, {
|
|
|
77
77
|
show: () => void;
|
|
78
78
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
79
79
|
change: (valid: boolean) => any;
|
|
80
|
-
success: (data: CaptchaSuccessPayload) => any;
|
|
81
80
|
reset: () => any;
|
|
81
|
+
success: (data: CaptchaSuccessPayload) => any;
|
|
82
82
|
fail: (error: string) => any;
|
|
83
83
|
"verify-error": (error: unknown) => any;
|
|
84
84
|
"load-error": (error: unknown) => any;
|
|
85
85
|
"visible-change": (visible: boolean) => any;
|
|
86
86
|
}, string, vue.PublicProps, Readonly<CaptchaProps> & Readonly<{
|
|
87
87
|
onChange?: ((valid: boolean) => any) | undefined;
|
|
88
|
-
onSuccess?: ((data: CaptchaSuccessPayload) => any) | undefined;
|
|
89
88
|
onReset?: (() => any) | undefined;
|
|
89
|
+
onSuccess?: ((data: CaptchaSuccessPayload) => any) | undefined;
|
|
90
90
|
onFail?: ((error: string) => any) | undefined;
|
|
91
91
|
"onVerify-error"?: ((error: unknown) => any) | undefined;
|
|
92
92
|
"onLoad-error"?: ((error: unknown) => any) | undefined;
|
package/dist/verification.d.ts
CHANGED
|
@@ -77,16 +77,16 @@ declare const __VLS_export: vue.DefineComponent<CaptchaProps, {
|
|
|
77
77
|
show: () => void;
|
|
78
78
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
|
|
79
79
|
change: (valid: boolean) => any;
|
|
80
|
-
success: (data: CaptchaSuccessPayload) => any;
|
|
81
80
|
reset: () => any;
|
|
81
|
+
success: (data: CaptchaSuccessPayload) => any;
|
|
82
82
|
fail: (error: string) => any;
|
|
83
83
|
"verify-error": (error: unknown) => any;
|
|
84
84
|
"load-error": (error: unknown) => any;
|
|
85
85
|
"visible-change": (visible: boolean) => any;
|
|
86
86
|
}, string, vue.PublicProps, Readonly<CaptchaProps> & Readonly<{
|
|
87
87
|
onChange?: ((valid: boolean) => any) | undefined;
|
|
88
|
-
onSuccess?: ((data: CaptchaSuccessPayload) => any) | undefined;
|
|
89
88
|
onReset?: (() => any) | undefined;
|
|
89
|
+
onSuccess?: ((data: CaptchaSuccessPayload) => any) | undefined;
|
|
90
90
|
onFail?: ((error: string) => any) | undefined;
|
|
91
91
|
"onVerify-error"?: ((error: unknown) => any) | undefined;
|
|
92
92
|
"onLoad-error"?: ((error: unknown) => any) | undefined;
|
|
@@ -30,11 +30,20 @@ app.use(Components, {
|
|
|
30
30
|
- `getOptions()`:同步快照,编码保留 string/number/boolean 类型。
|
|
31
31
|
- `load({ signal })`:可选的异步准备;视图会忽略已失效的请求。
|
|
32
32
|
- `subscribe(listener)`:可选的更新通知,返回取消订阅函数。
|
|
33
|
+
- `getState()`:可选的共享状态快照,`status` 为 `idle/loading/ready/empty/error`,失败时可带 `error`。提供它时,订阅同时通知状态变化;源应先更新快照再通知。未提供时保持原有协议。
|
|
34
|
+
|
|
35
|
+
状态快照可选带 `options`,这代表该数组不可变,并且与 `getOptions()` 返回同一份数据。此时仅加载/失败变化不会复制选项或重建翻译索引。未提供这个承诺的旧源仍支持修改原数组后发出订阅通知。
|
|
36
|
+
|
|
37
|
+
初次绑定调用 `load({ signal })`,字段或表格的显式重试调用 `load({ signal, force: true })`。源负责合并同一字典的并发请求,某个控件卸载仅取消自己的等待,不能打断其他使用者。空数组是成功的空字典,不应通过抛错表示空结果。
|
|
38
|
+
|
|
39
|
+
表单和搜索就地显示失败与重试,表格只显示一条按字典源去重的状态条;失败保留旧标签和原值,不逐单元格弹消息。`C_Form.getDictionaryError(field)` 可读取诊断,显式 `config.onError` 仍可观测表单异常。组件不把字典错误当作字段业务校验错误,也不会覆盖校验提示。表格的显式 `feedback.error` 继续可选接管诊断。
|
|
33
40
|
|
|
34
41
|
应用已有 store/resolver 时直接桥接,不叠加第二套 TTL 缓存。源负责组织、租户、语言和业务参数隔离:请求开始时捕获作用域,参数切换后不得把旧响应写进新作用域。可由 `getDictionary` 返回该作用域的稳定源,或发布当前快照变更通知。组件仅管理可销毁的选项视图及派生索引。
|
|
35
42
|
|
|
36
43
|
选项必须是有效且唯一的原始编码、字符串标签及可选 boolean disabled。空数组是已提供的空选项,不回退到旧数据。未知编码原样回显;停用历史编码可以保留在源中供展示。重复标签在反向解析时报告歧义,不自动选择第一项。高频展示使用 `createDictionaryLabelResolver(options)`,快照变化时重建一次索引。
|
|
37
44
|
|
|
45
|
+
数组编码逐项翻译,以 `、` 连接;空数组显示为空。字符串编码不按逗号或其他字符自动拆分。普通枚举仅负责文字转换,状态色仍由表格列的 `status` 显式声明。
|
|
46
|
+
|
|
38
47
|
## 数值:存储、显示和校验分别定义
|
|
39
48
|
|
|
40
49
|
```ts
|
|
@@ -45,6 +45,8 @@ Density presets are plain data and preserve lazy loading of layouts and fields.
|
|
|
45
45
|
|
|
46
46
|
Compact modals leave 10px between the header and first field and 12px on either side. Bottom spacing does not constrain real validation feedback. Viewport limits keep the header and footer visible while long content scrolls. Native Card section styles affect only the modal shell, preserving nested cards and slots without adding per-field measurements or watchers.
|
|
47
47
|
|
|
48
|
+
`C_Table` editor dialogs share these section styles and viewport limits. `edit.modalWidth` is in pixels and defaults to 600. A configured width of 700 remains 700px on desktop and is capped at the viewport width minus 24px on narrow screens. Fields collapse from two columns to one as needed. Invalid numeric widths fall back to the default; saving, cancellation and validation retain their existing edit-session behavior.
|
|
49
|
+
|
|
48
50
|
## Application defaults with on-demand imports
|
|
49
51
|
|
|
50
52
|
Provide defaults once during application startup. Local `config.density` takes precedence; search inherits only density, not form layout, callbacks or size.
|
|
@@ -62,6 +62,8 @@ const largeFields = { density: 'compact', size: 'large' } as const
|
|
|
62
62
|
|
|
63
63
|
紧凑弹窗在标题底部与首行字段之间保留 10px,内容两侧为 12px;末行保留底部留白,不压缩实际校验提示。弹窗宽高受视口约束,长表单仅内容区滚动,标题和页脚保持可见。外壳使用原生 Card 分区样式,不修改内嵌业务卡片或插槽的间距,也不增加逐字段测量或监听。
|
|
64
64
|
|
|
65
|
+
`C_Table` 的编辑弹窗共用这套分区与视口约束。`edit.modalWidth` 单位为 px,默认 600;如配置 700,桌面以 700px 居中,窄屏最多为视口宽度减 24px。表单按容器宽度从两列收为单列,数值宽度必须为有限正数,无效数值使用默认宽度。保存、取消及校验职责保持在表格原有编辑会话中。
|
|
66
|
+
|
|
65
67
|
## 按需设置应用默认值
|
|
66
68
|
|
|
67
69
|
在应用启动时提供一次即可,局部的 `config.density` 优先,搜索只继承密度,不继承表单布局、回调或尺寸。
|