@shwfed/config 2.9.11 → 2.9.13
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/dist/mcp.mjs +112 -50
- package/dist/module.json +1 -1
- package/dist/preview/assets/{FieldGroup.vue_vue_type_script_setup_true_lang-CN4xD2hQ.js → FieldGroup.vue_vue_type_script_setup_true_lang-DZ_H-YRf.js} +1 -1
- package/dist/preview/assets/{badge-CzfW1Ked.js → badge-DoNuZh0A.js} +1 -1
- package/dist/preview/assets/{config-Bzwfqv6w.js → config-BDDuqAht.js} +1 -1
- package/dist/preview/assets/{config-CCXJvpik.js → config-Bhc_Vu67.js} +1 -1
- package/dist/preview/assets/{config-CPuERNUd.js → config-BrNZsgV0.js} +1 -1
- package/dist/preview/assets/{config-Op5IHwI_.js → config-C6Cm7DWx.js} +1 -1
- package/dist/preview/assets/{config-D37gWDMV.js → config-CIYui2J_.js} +1 -1
- package/dist/preview/assets/{config-DbNukLyq.js → config-CLsjWZz2.js} +1 -1
- package/dist/preview/assets/{config-e5aOGFb2.js → config-Cla0Qngs.js} +1 -1
- package/dist/preview/assets/{config-CDYZN7EX.js → config-D4rFsdGO.js} +1 -1
- package/dist/preview/assets/{config-BdX3zl4t.js → config-DTEJOYqA.js} +1 -1
- package/dist/preview/assets/{config-jJQ2fulH.js → config-YGBoSq6x.js} +1 -1
- package/dist/preview/assets/{config-C2y2XI2Q.js → config-tdZMdIN3.js} +1 -1
- package/dist/preview/assets/{config-jzfHh7bp.js → config-ugF_BOWz.js} +1 -1
- package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-BgssDGxW.js → definition.vue_vue_type_script_setup_true_lang-CgNXv26P.js} +1 -1
- package/dist/preview/assets/index-B-QhiviS.js +1 -0
- package/dist/preview/assets/{index-CAIvIAWJ.js → index-C3FdepLE.js} +1 -1
- package/dist/preview/assets/{index-Cyjm-GKs.js → index-CWMhB7z4.js} +204 -203
- package/dist/preview/assets/index-CzzwZ7bp.css +1 -0
- package/dist/preview/assets/{item-CUoRMMz1.js → item-DecwNzYq.js} +1 -1
- package/dist/preview/assets/{runtime-CWt21RRo.js → runtime-BK7KNEyN.js} +1 -1
- package/dist/preview/assets/{runtime-DWKqftSK.js → runtime-C3dmOj9s.js} +1 -1
- package/dist/preview/assets/{runtime-D3TnRYXn.js → runtime-C5hqSHRW.js} +1 -1
- package/dist/preview/assets/{runtime-C_epees8.js → runtime-C8Ufkmiw.js} +1 -1
- package/dist/preview/assets/{runtime-V_usL1Fa.js → runtime-CYpXd7Pq.js} +1 -1
- package/dist/preview/assets/{runtime-CU5fYNMI.js → runtime-CjPtRd-T.js} +1 -1
- package/dist/preview/assets/{runtime-BALr-Cq0.js → runtime-DSUjc0Pk.js} +1 -1
- package/dist/preview/assets/{runtime-CHQwYQ80.js → runtime-DZ_AwduQ.js} +1 -1
- package/dist/preview/assets/{runtime-BvcTYin8.js → runtime-DtP98Km5.js} +1 -1
- package/dist/preview/assets/{runtime-wAz72cCJ.js → runtime-blb90Fhv.js} +1 -1
- package/dist/preview/assets/{schema-meta-DwWuSVqk.js → schema-meta-DWUHNP8E.js} +1 -1
- package/dist/preview/index.html +2 -2
- package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.d.ts +15 -0
- package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.js +57 -1
- package/dist/runtime/components/block-layout-editor/index.vue +10 -2
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +134 -0
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +134 -0
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +134 -0
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +134 -0
- package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +195 -0
- package/dist/runtime/components/form/config.vue +38 -1
- package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/config.d.vue.ts +2 -0
- package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/config.vue.d.ts +2 -0
- package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.d.ts +2 -0
- package/dist/runtime/components/form/index.vue +8 -1
- package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/runtime.js +5 -3
- package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/schema.js +3 -2
- package/dist/runtime/components/table/config.d.vue.ts +3 -3
- package/dist/runtime/components/table/config.vue +62 -22
- package/dist/runtime/components/table/config.vue.d.ts +3 -3
- package/dist/runtime/components/table/index.d.vue.ts +2 -0
- package/dist/runtime/components/table/index.vue +12 -3
- package/dist/runtime/components/table/index.vue.d.ts +2 -0
- package/dist/runtime/components/table/schema.d.ts +263 -0
- package/dist/runtime/components/table/schema.js +8 -4
- package/dist/runtime/components/ui/expression-editor/ExpressionEditor.vue +2 -2
- package/dist/runtime/components/ui/expression-editor/picker-entries.d.ts +1 -0
- package/dist/runtime/components/ui/expression-editor/picker-entries.js +12 -0
- package/dist/runtime/components/ui/expression-editor/scope-refs.js +1 -1
- package/dist/runtime/utils/cel-context.d.ts +21 -0
- package/package.json +1 -1
- package/dist/preview/assets/index-0vF7XQ-J.js +0 -1
- package/dist/preview/assets/index-D0eGXK5P.css +0 -1
|
@@ -234,6 +234,73 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
|
|
|
234
234
|
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
235
235
|
}[];
|
|
236
236
|
} | undefined;
|
|
237
|
+
readonly bottomActions?: {
|
|
238
|
+
readonly size: "default" | "sm" | "xs";
|
|
239
|
+
readonly style?: string | undefined;
|
|
240
|
+
readonly gap: number;
|
|
241
|
+
readonly items: readonly (import("../actions/schema.js").RegistryItemValue | {
|
|
242
|
+
readonly disabled?: string | undefined;
|
|
243
|
+
readonly id: string;
|
|
244
|
+
readonly title: readonly [{
|
|
245
|
+
readonly locale: "zh";
|
|
246
|
+
readonly message: string;
|
|
247
|
+
}, ...{
|
|
248
|
+
readonly locale: "en" | "ja" | "ko";
|
|
249
|
+
readonly message: string;
|
|
250
|
+
}[]];
|
|
251
|
+
readonly icon?: string | undefined;
|
|
252
|
+
readonly hidden?: string | undefined;
|
|
253
|
+
readonly tooltip?: readonly [{
|
|
254
|
+
readonly locale: "zh";
|
|
255
|
+
readonly message: string;
|
|
256
|
+
}, ...{
|
|
257
|
+
readonly locale: "en" | "ja" | "ko";
|
|
258
|
+
readonly message: string;
|
|
259
|
+
}[]] | undefined;
|
|
260
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
261
|
+
readonly action?: any;
|
|
262
|
+
readonly groupId: string;
|
|
263
|
+
readonly hideTitle?: boolean | undefined;
|
|
264
|
+
} | {
|
|
265
|
+
readonly id: string;
|
|
266
|
+
readonly title: readonly [{
|
|
267
|
+
readonly locale: "zh";
|
|
268
|
+
readonly message: string;
|
|
269
|
+
}, ...{
|
|
270
|
+
readonly locale: "en" | "ja" | "ko";
|
|
271
|
+
readonly message: string;
|
|
272
|
+
}[]];
|
|
273
|
+
readonly icon?: string | undefined;
|
|
274
|
+
readonly items: readonly (import("../actions/schema.js").RegistrySubItemValue | {
|
|
275
|
+
readonly disabled?: string | undefined;
|
|
276
|
+
readonly id: string;
|
|
277
|
+
readonly title: readonly [{
|
|
278
|
+
readonly locale: "zh";
|
|
279
|
+
readonly message: string;
|
|
280
|
+
}, ...{
|
|
281
|
+
readonly locale: "en" | "ja" | "ko";
|
|
282
|
+
readonly message: string;
|
|
283
|
+
}[]];
|
|
284
|
+
readonly icon?: string | undefined;
|
|
285
|
+
readonly hidden?: string | undefined;
|
|
286
|
+
readonly tooltip?: readonly [{
|
|
287
|
+
readonly locale: "zh";
|
|
288
|
+
readonly message: string;
|
|
289
|
+
}, ...{
|
|
290
|
+
readonly locale: "en" | "ja" | "ko";
|
|
291
|
+
readonly message: string;
|
|
292
|
+
}[]] | undefined;
|
|
293
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
294
|
+
readonly action?: any;
|
|
295
|
+
})[];
|
|
296
|
+
readonly groupId: string;
|
|
297
|
+
readonly hideTitle?: boolean | undefined;
|
|
298
|
+
})[];
|
|
299
|
+
readonly groups: readonly {
|
|
300
|
+
readonly id: string;
|
|
301
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
302
|
+
}[];
|
|
303
|
+
} | undefined;
|
|
237
304
|
readonly rowKey?: string | undefined;
|
|
238
305
|
readonly cellStyle?: string | undefined;
|
|
239
306
|
readonly pagination?: {
|
|
@@ -441,6 +508,134 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
|
|
|
441
508
|
readonly hideTitle?: boolean | undefined;
|
|
442
509
|
}, never>>;
|
|
443
510
|
}>>;
|
|
511
|
+
bottomActions: Schema.optional<Schema.Struct<{
|
|
512
|
+
size: Schema.optionalWith<Schema.Literal<["default", "sm", "xs"]>, {
|
|
513
|
+
default: () => "default";
|
|
514
|
+
}>;
|
|
515
|
+
gap: Schema.optionalWith<Schema.filter<Schema.filter<typeof Schema.Number>>, {
|
|
516
|
+
default: () => number;
|
|
517
|
+
}>;
|
|
518
|
+
style: Schema.optional<typeof Schema.String>;
|
|
519
|
+
groups: Schema.Array$<Schema.Struct<{
|
|
520
|
+
id: Schema.refine<string, typeof Schema.String>;
|
|
521
|
+
variant: Schema.optional<Schema.Literal<["default", "primary", "destructive", "ghost", "link"]>>;
|
|
522
|
+
}>>;
|
|
523
|
+
items: Schema.Array$<Schema.Schema<import("../actions/schema.js").RegistryItemValue | {
|
|
524
|
+
readonly disabled?: string | undefined;
|
|
525
|
+
readonly id: string;
|
|
526
|
+
readonly title: readonly [{
|
|
527
|
+
readonly locale: "zh";
|
|
528
|
+
readonly message: string;
|
|
529
|
+
}, ...{
|
|
530
|
+
readonly locale: "en" | "ja" | "ko";
|
|
531
|
+
readonly message: string;
|
|
532
|
+
}[]];
|
|
533
|
+
readonly icon?: string | undefined;
|
|
534
|
+
readonly hidden?: string | undefined;
|
|
535
|
+
readonly tooltip?: readonly [{
|
|
536
|
+
readonly locale: "zh";
|
|
537
|
+
readonly message: string;
|
|
538
|
+
}, ...{
|
|
539
|
+
readonly locale: "en" | "ja" | "ko";
|
|
540
|
+
readonly message: string;
|
|
541
|
+
}[]] | undefined;
|
|
542
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
543
|
+
readonly action?: any;
|
|
544
|
+
readonly groupId: string;
|
|
545
|
+
readonly hideTitle?: boolean | undefined;
|
|
546
|
+
} | {
|
|
547
|
+
readonly id: string;
|
|
548
|
+
readonly title: readonly [{
|
|
549
|
+
readonly locale: "zh";
|
|
550
|
+
readonly message: string;
|
|
551
|
+
}, ...{
|
|
552
|
+
readonly locale: "en" | "ja" | "ko";
|
|
553
|
+
readonly message: string;
|
|
554
|
+
}[]];
|
|
555
|
+
readonly icon?: string | undefined;
|
|
556
|
+
readonly items: readonly (import("../actions/schema.js").RegistrySubItemValue | {
|
|
557
|
+
readonly disabled?: string | undefined;
|
|
558
|
+
readonly id: string;
|
|
559
|
+
readonly title: readonly [{
|
|
560
|
+
readonly locale: "zh";
|
|
561
|
+
readonly message: string;
|
|
562
|
+
}, ...{
|
|
563
|
+
readonly locale: "en" | "ja" | "ko";
|
|
564
|
+
readonly message: string;
|
|
565
|
+
}[]];
|
|
566
|
+
readonly icon?: string | undefined;
|
|
567
|
+
readonly hidden?: string | undefined;
|
|
568
|
+
readonly tooltip?: readonly [{
|
|
569
|
+
readonly locale: "zh";
|
|
570
|
+
readonly message: string;
|
|
571
|
+
}, ...{
|
|
572
|
+
readonly locale: "en" | "ja" | "ko";
|
|
573
|
+
readonly message: string;
|
|
574
|
+
}[]] | undefined;
|
|
575
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
576
|
+
readonly action?: any;
|
|
577
|
+
})[];
|
|
578
|
+
readonly groupId: string;
|
|
579
|
+
readonly hideTitle?: boolean | undefined;
|
|
580
|
+
}, import("../actions/schema.js").RegistryItemValue | {
|
|
581
|
+
readonly id: string;
|
|
582
|
+
readonly title: readonly [{
|
|
583
|
+
readonly locale: "zh";
|
|
584
|
+
readonly message: string;
|
|
585
|
+
}, ...{
|
|
586
|
+
readonly locale: "en" | "ja" | "ko";
|
|
587
|
+
readonly message: string;
|
|
588
|
+
}[]];
|
|
589
|
+
readonly groupId: string;
|
|
590
|
+
readonly disabled?: string | undefined;
|
|
591
|
+
readonly icon?: string | undefined;
|
|
592
|
+
readonly hidden?: string | undefined;
|
|
593
|
+
readonly tooltip?: readonly [{
|
|
594
|
+
readonly locale: "zh";
|
|
595
|
+
readonly message: string;
|
|
596
|
+
}, ...{
|
|
597
|
+
readonly locale: "en" | "ja" | "ko";
|
|
598
|
+
readonly message: string;
|
|
599
|
+
}[]] | undefined;
|
|
600
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
601
|
+
readonly action?: any;
|
|
602
|
+
readonly hideTitle?: boolean | undefined;
|
|
603
|
+
} | {
|
|
604
|
+
readonly id: string;
|
|
605
|
+
readonly title: readonly [{
|
|
606
|
+
readonly locale: "zh";
|
|
607
|
+
readonly message: string;
|
|
608
|
+
}, ...{
|
|
609
|
+
readonly locale: "en" | "ja" | "ko";
|
|
610
|
+
readonly message: string;
|
|
611
|
+
}[]];
|
|
612
|
+
readonly items: readonly (import("../actions/schema.js").RegistrySubItemValue | {
|
|
613
|
+
readonly id: string;
|
|
614
|
+
readonly title: readonly [{
|
|
615
|
+
readonly locale: "zh";
|
|
616
|
+
readonly message: string;
|
|
617
|
+
}, ...{
|
|
618
|
+
readonly locale: "en" | "ja" | "ko";
|
|
619
|
+
readonly message: string;
|
|
620
|
+
}[]];
|
|
621
|
+
readonly disabled?: string | undefined;
|
|
622
|
+
readonly icon?: string | undefined;
|
|
623
|
+
readonly hidden?: string | undefined;
|
|
624
|
+
readonly tooltip?: readonly [{
|
|
625
|
+
readonly locale: "zh";
|
|
626
|
+
readonly message: string;
|
|
627
|
+
}, ...{
|
|
628
|
+
readonly locale: "en" | "ja" | "ko";
|
|
629
|
+
readonly message: string;
|
|
630
|
+
}[]] | undefined;
|
|
631
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
632
|
+
readonly action?: any;
|
|
633
|
+
})[];
|
|
634
|
+
readonly groupId: string;
|
|
635
|
+
readonly icon?: string | undefined;
|
|
636
|
+
readonly hideTitle?: boolean | undefined;
|
|
637
|
+
}, never>>;
|
|
638
|
+
}>>;
|
|
444
639
|
query: Schema.optional<Schema.refine<{
|
|
445
640
|
readonly style?: string | undefined;
|
|
446
641
|
readonly id?: string | undefined;
|
|
@@ -684,6 +879,73 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
|
|
|
684
879
|
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
685
880
|
}[];
|
|
686
881
|
} | undefined;
|
|
882
|
+
bottomActions?: {
|
|
883
|
+
readonly size: "default" | "sm" | "xs";
|
|
884
|
+
readonly style?: string | undefined;
|
|
885
|
+
readonly gap: number;
|
|
886
|
+
readonly items: readonly (import("../actions/schema.js").RegistryItemValue | {
|
|
887
|
+
readonly disabled?: string | undefined;
|
|
888
|
+
readonly id: string;
|
|
889
|
+
readonly title: readonly [{
|
|
890
|
+
readonly locale: "zh";
|
|
891
|
+
readonly message: string;
|
|
892
|
+
}, ...{
|
|
893
|
+
readonly locale: "en" | "ja" | "ko";
|
|
894
|
+
readonly message: string;
|
|
895
|
+
}[]];
|
|
896
|
+
readonly icon?: string | undefined;
|
|
897
|
+
readonly hidden?: string | undefined;
|
|
898
|
+
readonly tooltip?: readonly [{
|
|
899
|
+
readonly locale: "zh";
|
|
900
|
+
readonly message: string;
|
|
901
|
+
}, ...{
|
|
902
|
+
readonly locale: "en" | "ja" | "ko";
|
|
903
|
+
readonly message: string;
|
|
904
|
+
}[]] | undefined;
|
|
905
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
906
|
+
readonly action?: any;
|
|
907
|
+
readonly groupId: string;
|
|
908
|
+
readonly hideTitle?: boolean | undefined;
|
|
909
|
+
} | {
|
|
910
|
+
readonly id: string;
|
|
911
|
+
readonly title: readonly [{
|
|
912
|
+
readonly locale: "zh";
|
|
913
|
+
readonly message: string;
|
|
914
|
+
}, ...{
|
|
915
|
+
readonly locale: "en" | "ja" | "ko";
|
|
916
|
+
readonly message: string;
|
|
917
|
+
}[]];
|
|
918
|
+
readonly icon?: string | undefined;
|
|
919
|
+
readonly items: readonly (import("../actions/schema.js").RegistrySubItemValue | {
|
|
920
|
+
readonly disabled?: string | undefined;
|
|
921
|
+
readonly id: string;
|
|
922
|
+
readonly title: readonly [{
|
|
923
|
+
readonly locale: "zh";
|
|
924
|
+
readonly message: string;
|
|
925
|
+
}, ...{
|
|
926
|
+
readonly locale: "en" | "ja" | "ko";
|
|
927
|
+
readonly message: string;
|
|
928
|
+
}[]];
|
|
929
|
+
readonly icon?: string | undefined;
|
|
930
|
+
readonly hidden?: string | undefined;
|
|
931
|
+
readonly tooltip?: readonly [{
|
|
932
|
+
readonly locale: "zh";
|
|
933
|
+
readonly message: string;
|
|
934
|
+
}, ...{
|
|
935
|
+
readonly locale: "en" | "ja" | "ko";
|
|
936
|
+
readonly message: string;
|
|
937
|
+
}[]] | undefined;
|
|
938
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
939
|
+
readonly action?: any;
|
|
940
|
+
})[];
|
|
941
|
+
readonly groupId: string;
|
|
942
|
+
readonly hideTitle?: boolean | undefined;
|
|
943
|
+
})[];
|
|
944
|
+
readonly groups: readonly {
|
|
945
|
+
readonly id: string;
|
|
946
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
947
|
+
}[];
|
|
948
|
+
} | undefined;
|
|
687
949
|
rowKey?: string | undefined;
|
|
688
950
|
cellStyle?: string | undefined;
|
|
689
951
|
pagination?: {
|
|
@@ -759,6 +1021,7 @@ export type TableConfigValue = Readonly<{
|
|
|
759
1021
|
groups: ReadonlyArray<ColumnGroupValue>;
|
|
760
1022
|
dataSource?: DataSourceValue;
|
|
761
1023
|
actions?: TableActionsValue;
|
|
1024
|
+
bottomActions?: TableActionsValue;
|
|
762
1025
|
query?: FormConfigValue;
|
|
763
1026
|
rowKey?: string;
|
|
764
1027
|
cellStyle?: string;
|
|
@@ -306,8 +306,12 @@ export function TableConfig(configure) {
|
|
|
306
306
|
description: "\u6570\u636E\u6E90\u914D\u7F6E"
|
|
307
307
|
})),
|
|
308
308
|
actions: Schema.optional(TableActions).annotations({
|
|
309
|
-
title: "\u64CD\u4F5C",
|
|
310
|
-
description: "\u8868\u683C\
|
|
309
|
+
title: "\u4E0A\u65B9\u64CD\u4F5C",
|
|
310
|
+
description: "\u6E32\u67D3\u5728\u8868\u683C\u4E0A\u65B9\u7684\u64CD\u4F5C\u6309\u94AE"
|
|
311
|
+
}),
|
|
312
|
+
bottomActions: Schema.optional(TableActions).annotations({
|
|
313
|
+
title: "\u4E0B\u65B9\u64CD\u4F5C",
|
|
314
|
+
description: "\u6E32\u67D3\u5728\u8868\u683C\uFF08\u542B\u5206\u9875\u5668\uFF09\u4E0B\u65B9\u7684\u64CD\u4F5C\u6309\u94AE\uFF1B\u4E0E\u4E0A\u65B9\u64CD\u4F5C\u5171\u4EAB\u540C\u4E00\u4F5C\u7528\u57DF\uFF08`selected` / `query` / `sorts`\uFF09"
|
|
311
315
|
}),
|
|
312
316
|
query: Schema.optional(Query).annotations({
|
|
313
317
|
title: "\u641C\u7D22\u6761\u4EF6",
|
|
@@ -329,8 +333,8 @@ export function TableConfig(configure) {
|
|
|
329
333
|
title: "\u5206\u9875"
|
|
330
334
|
}),
|
|
331
335
|
persistQuery: Schema.optional(Schema.Boolean.annotations({
|
|
332
|
-
title: "\u641C\u7D22\u6761\u4EF6
|
|
333
|
-
description: "\u5F00\
|
|
336
|
+
title: "\u4FDD\u7559\u641C\u7D22\u6761\u4EF6",
|
|
337
|
+
description: "\u6253\u5F00\u540E\uFF0C\u641C\u7D22\u6761\u4EF6\u4EC5\u5728\u7528\u6237\u5173\u95ED\u5F53\u524D\u9875\u7B7E\u65F6\u6E05\u7A7A"
|
|
334
338
|
})),
|
|
335
339
|
initialState: Schema.optional(InitialState)
|
|
336
340
|
}).pipe(Schema.filter((cfg) => {
|
|
@@ -8,7 +8,7 @@ import CodeMirrorInput from "./CodeMirrorInput.vue";
|
|
|
8
8
|
import { buildScopeLookup } from "./scope-refs";
|
|
9
9
|
import { buildSelectionLookup } from "./selection-refs";
|
|
10
10
|
import { buildStepLookup } from "./step-refs";
|
|
11
|
-
import { buildScopeEntries, buildSelectionEntries, buildStepEntries, buildVarEntries } from "./picker-entries";
|
|
11
|
+
import { buildScopeEntries, buildSelectionEntries, buildStepEntries, buildVarEntries, selectShadowedScopes } from "./picker-entries";
|
|
12
12
|
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList } from "../command";
|
|
13
13
|
import { InputGroup, InputGroupAddon, InputGroupButton } from "../input-group";
|
|
14
14
|
import { Popover, PopoverContent, PopoverTrigger } from "../popover";
|
|
@@ -29,7 +29,7 @@ const scopeAncestry = useScopeAncestry();
|
|
|
29
29
|
const selectionRoster = useSelectionRoster();
|
|
30
30
|
const stepRoster = useStepRoster();
|
|
31
31
|
const varEntries = computed(() => buildVarEntries(celContext, props.extraVars));
|
|
32
|
-
const scopeEntries = computed(() => buildScopeEntries(scopeAncestry.value
|
|
32
|
+
const scopeEntries = computed(() => buildScopeEntries(selectShadowedScopes(scopeAncestry.value)));
|
|
33
33
|
const selectionEntries = computed(() => buildSelectionEntries(selectionRoster.value));
|
|
34
34
|
const stepEntries = computed(() => buildStepEntries(stepRoster.value));
|
|
35
35
|
const scopeLookup = computed(() => buildScopeLookup(scopeAncestry.value));
|
|
@@ -16,4 +16,5 @@ export type PickVarMeta = {
|
|
|
16
16
|
export declare function buildVarEntries(celContext: Record<string, PickVarMeta>, extraVars?: Record<string, PickVarMeta>): PickEntry[];
|
|
17
17
|
export declare function buildSelectionEntries(roster: ReadonlyArray<SelectionFieldRef>): PickEntry[];
|
|
18
18
|
export declare function buildStepEntries(roster: ReadonlyArray<StepRef>): PickEntry[];
|
|
19
|
+
export declare function selectShadowedScopes(ancestry: ReadonlyArray<ScopeAncestor>): ScopeAncestor[];
|
|
19
20
|
export declare function buildScopeEntries(ancestry: ReadonlyArray<ScopeAncestor>): PickEntry[];
|
|
@@ -36,6 +36,18 @@ export function buildStepEntries(roster) {
|
|
|
36
36
|
description: step.description
|
|
37
37
|
}));
|
|
38
38
|
}
|
|
39
|
+
export function selectShadowedScopes(ancestry) {
|
|
40
|
+
const claimed = /* @__PURE__ */ new Set();
|
|
41
|
+
const out = [];
|
|
42
|
+
for (const frame of ancestry) {
|
|
43
|
+
const members = frame.members.filter((m) => claimed.has(m.shortcut ?? m.key));
|
|
44
|
+
if (members.length > 0) out.push({ ...frame, members });
|
|
45
|
+
for (const s of frame.shadows ?? frame.members.map((m) => m.shortcut ?? m.key)) {
|
|
46
|
+
claimed.add(s);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return out;
|
|
50
|
+
}
|
|
39
51
|
export function buildScopeEntries(ancestry) {
|
|
40
52
|
const out = [];
|
|
41
53
|
for (const ancestor of ancestry) {
|
|
@@ -3,7 +3,7 @@ export function scopeOrigin(ancestor) {
|
|
|
3
3
|
return ancestor.name ? `${ancestor.typeName}\u300C${ancestor.name}\u300D` : ancestor.typeName;
|
|
4
4
|
}
|
|
5
5
|
const SCOPE_REF_RE = new RegExp(
|
|
6
|
-
`${SCOPE_ADDRESS_VAR}\\[("(?:[^"\\\\]|\\\\.)*")\\]\\.([A-Za-z_$][\\w$]*)`,
|
|
6
|
+
`${SCOPE_ADDRESS_VAR}\\[("(?:[^"\\\\]|\\\\.)*")\\]\\.([A-Za-z_$][\\w$]*(?:\\["(?:[^"\\\\]|\\\\.)*"\\])?)`,
|
|
7
7
|
"g"
|
|
8
8
|
);
|
|
9
9
|
export function scanScopeRefs(text) {
|
|
@@ -21,6 +21,16 @@ export type ScopeAncestorMember = Readonly<{
|
|
|
21
21
|
/** CEL type shown as the picker badge. */
|
|
22
22
|
type: string;
|
|
23
23
|
description?: string;
|
|
24
|
+
/**
|
|
25
|
+
* The relative shortcut this member mirrors — used by the picker to decide if
|
|
26
|
+
* the member is worth offering cross-layer (it is, only when a nearer frame
|
|
27
|
+
* shadows that shortcut; otherwise the relative name already reaches it).
|
|
28
|
+
* Defaults to `key`. Set explicitly when the addressed key isn't the bare
|
|
29
|
+
* shortcut — a form's selection member has `key = selections["<uuid>"]` but
|
|
30
|
+
* `shortcut = "selections"`, since it's the relative `selections` map that an
|
|
31
|
+
* inner row/subform shadows.
|
|
32
|
+
*/
|
|
33
|
+
shortcut?: string;
|
|
24
34
|
}>;
|
|
25
35
|
/** A scope-exposing ancestor instance, as seen by an expression-editor picker. */
|
|
26
36
|
export type ScopeAncestor = Readonly<{
|
|
@@ -33,6 +43,17 @@ export type ScopeAncestor = Readonly<{
|
|
|
33
43
|
/** Component type icon (from type metadata). */
|
|
34
44
|
typeIcon?: string;
|
|
35
45
|
members: ReadonlyArray<ScopeAncestorMember>;
|
|
46
|
+
/**
|
|
47
|
+
* The relative shortcut names this host *rebinds* at runtime — i.e. the
|
|
48
|
+
* shortcuts it shadows for everything below it. The picker uses this (not the
|
|
49
|
+
* host type) to decide which of a farther frame's members are genuinely
|
|
50
|
+
* shadowed and thus worth offering cross-layer. It is broader than `members`:
|
|
51
|
+
* a table offers only `row`/`index` cross-layer but its row-provider also
|
|
52
|
+
* rebinds `selections`, so a table must list `selections` here to (correctly)
|
|
53
|
+
* shadow an enclosing form's selection options. Defaults to the members'
|
|
54
|
+
* `shortcut`s when omitted.
|
|
55
|
+
*/
|
|
56
|
+
shadows?: ReadonlyArray<string>;
|
|
36
57
|
}>;
|
|
37
58
|
/**
|
|
38
59
|
* Contribute one scope-exposing ancestor frame. Descendant editors see it
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ba as e}from"./index-Cyjm-GKs.js";import{bb as f,bc as r,bd as s}from"./index-Cyjm-GKs.js";export{f as TableConfig,r as createTableConfig,e as default,s as getColumnTechnicalKey};
|