cnhis-design-vue 3.1.5-beta.10 → 3.1.5-beta.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/es/packages/big-table/index.d.ts +3 -2
  3. package/es/packages/big-table/src/BigTable.vue.d.ts +3 -2
  4. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.mjs +44 -71
  5. package/es/packages/big-table/src/bigTableEmits2.mjs +2 -1
  6. package/es/packages/button-print/index.d.ts +51 -87
  7. package/es/packages/button-print/src/ButtonPrint.vue.d.ts +60 -87
  8. package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.mjs +27 -39
  9. package/es/packages/form-render/index.d.ts +281 -3
  10. package/es/packages/form-render/index.mjs +2 -0
  11. package/es/packages/form-render/index2.mjs +1 -0
  12. package/es/packages/form-render/src/FormRender.vue.d.ts +283 -5
  13. package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.mjs +47 -23
  14. package/es/packages/form-render/src/components/cascader.d.ts +10 -2
  15. package/es/packages/form-render/src/components/cascader2.mjs +38 -20
  16. package/es/packages/form-render/src/components/combination2.mjs +2 -2
  17. package/es/packages/form-render/src/components/complex.d.ts +13 -0
  18. package/es/packages/form-render/src/components/complex.mjs +1 -0
  19. package/es/packages/form-render/src/components/complex2.mjs +31 -0
  20. package/es/packages/form-render/src/components/date.d.ts +6 -5037
  21. package/es/packages/form-render/src/components/date2.mjs +20 -3
  22. package/es/packages/form-render/src/components/index.d.ts +1 -0
  23. package/es/packages/form-render/src/components/index.mjs +1 -0
  24. package/es/packages/form-render/src/components/index2.mjs +1 -0
  25. package/es/packages/form-render/src/components/inputNumber.d.ts +4 -2182
  26. package/es/packages/form-render/src/components/inputNumber2.mjs +12 -1
  27. package/es/packages/form-render/src/components/select.d.ts +20 -4
  28. package/es/packages/form-render/src/components/select2.mjs +70 -30
  29. package/es/packages/form-render/src/components/switch.d.ts +3 -1
  30. package/es/packages/form-render/src/components/switch2.mjs +6 -7
  31. package/es/packages/form-render/src/constants/index.d.ts +8 -3
  32. package/es/packages/form-render/src/constants/index.mjs +1 -1
  33. package/es/packages/form-render/src/constants/index2.mjs +5 -1
  34. package/es/packages/form-render/src/hooks/index.d.ts +11 -9
  35. package/es/packages/form-render/src/hooks/index.mjs +2 -0
  36. package/es/packages/form-render/src/hooks/useAsyncQueue.d.ts +13 -33
  37. package/es/packages/form-render/src/hooks/useBusinessBinding.d.ts +7 -5
  38. package/es/packages/form-render/src/hooks/useBusinessBinding2.mjs +25 -13
  39. package/es/packages/form-render/src/hooks/useChangeContext.d.ts +11 -0
  40. package/es/packages/form-render/src/hooks/useChangeContext.mjs +1 -0
  41. package/es/packages/form-render/src/hooks/useChangeContext2.mjs +21 -0
  42. package/es/packages/form-render/src/hooks/useFieldList2Schema2.mjs +10 -1
  43. package/es/packages/form-render/src/hooks/useFormField.d.ts +1 -0
  44. package/es/packages/form-render/src/hooks/useFormField2.mjs +7 -1
  45. package/es/packages/form-render/src/hooks/useFormItemDeps.d.ts +8 -0
  46. package/es/packages/form-render/src/hooks/useFormItemDeps.mjs +1 -0
  47. package/es/packages/form-render/src/hooks/useFormItemDeps2.mjs +29 -0
  48. package/es/packages/form-render/src/hooks/useFormValidator2.mjs +1 -1
  49. package/es/packages/form-render/src/types/fieldItem.d.ts +2 -0
  50. package/es/packages/form-render/src/types/index.d.ts +16 -6
  51. package/es/packages/form-render/src/utils/index.d.ts +5 -3
  52. package/es/packages/form-render/src/utils/index.mjs +1 -1
  53. package/es/packages/form-render/src/utils/index2.mjs +13 -1
  54. package/es/packages/form-render/style/index.css +8 -0
  55. package/es/packages/form-render/style/index.less +8 -0
  56. package/es/packages/index.css +35 -23
  57. package/es/packages/index.d.ts +2 -2
  58. package/es/packages/index.less +25 -14
  59. package/es/packages/index.mjs +3 -1
  60. package/es/packages/index2.mjs +2 -2
  61. package/es/packages/info-header/index.d.ts +38 -18
  62. package/es/packages/info-header/src/HiddenContent.vue.d.ts +29 -13
  63. package/es/packages/info-header/src/HiddenContent.vue_vue_type_script_setup_true_lang.mjs +6 -4
  64. package/es/packages/info-header/src/InfoHeader.vue.d.ts +38 -18
  65. package/es/packages/info-header/src/InfoHeader.vue_vue_type_script_setup_true_lang.mjs +22 -10
  66. package/es/packages/info-header/style/index.css +0 -3
  67. package/es/packages/info-header/style/index.less +0 -4
  68. package/es/packages/scale-view/index.d.ts +13 -12
  69. package/es/packages/scale-view/src/ScaleView.vue.d.ts +13 -15
  70. package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.mjs +11 -4
  71. package/es/packages/scale-view/src/components/formitem/r-address2.mjs +1 -1
  72. package/es/packages/scale-view/src/components/formitem/r-checkbox2.mjs +10 -4
  73. package/es/packages/scale-view/src/components/formitem/r-collection2.mjs +0 -1
  74. package/es/packages/scale-view/src/components/formitem/r-datetime2.mjs +20 -11
  75. package/es/packages/scale-view/src/components/formitem/r-input2.mjs +1 -1
  76. package/es/packages/scale-view/src/components/formitem/r-map2.mjs +2 -1
  77. package/es/packages/scale-view/src/components/formitem/r-radio2.mjs +10 -4
  78. package/es/packages/scale-view/src/components/formitem/r-select2.mjs +6 -1
  79. package/es/packages/scale-view/src/hooks/scaleview-computed2.mjs +11 -12
  80. package/es/packages/scale-view/src/hooks/scaleview-init2.mjs +4 -3
  81. package/es/packages/scale-view/src/hooks/scaleview-props.d.ts +3 -3
  82. package/es/packages/scale-view/src/hooks/scaleview-props2.mjs +3 -3
  83. package/es/packages/scale-view/src/hooks/scaleview-validate2.mjs +85 -64
  84. package/es/packages/scale-view/src/hooks/use-component.d.ts +10 -6
  85. package/es/packages/scale-view/src/hooks/use-component2.mjs +4 -4
  86. package/es/packages/scale-view/style/index.css +27 -20
  87. package/es/packages/scale-view/style/index.less +17 -10
  88. package/es/packages/select-label/index.d.ts +8 -4
  89. package/es/packages/select-label/src/SelectLabel.vue.d.ts +13 -15
  90. package/es/packages/select-label/src/SelectLabel.vue_vue_type_script_setup_true_lang.mjs +4 -4
  91. package/es/packages/select-person/src/SelectPerson.vue.d.ts +3 -4
  92. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.mjs +49 -33
  93. package/es/packages/select-person/src/utils/index.d.ts +4 -4
  94. package/es/packages/select-person/src/utils/index2.mjs +32 -5
  95. package/es/src/types/index.d.ts +1 -0
  96. package/package.json +132 -127
  97. package/sync-w.sh +13 -0
@@ -1,6 +1,6 @@
1
1
  import { AnyObject } from 'cnhis-design-vue/es/src/types';
2
- import { FieldItem, FieldVisitor } from "./types";
3
- import { Component, FunctionalComponent, PropType } from "vue";
2
+ import { FieldItem, FieldVisitor } from './types';
3
+ import { Component, FunctionalComponent, PropType } from 'vue';
4
4
  declare const _default: import("vue").DefineComponent<{
5
5
  fieldList: {
6
6
  type: PropType<FieldItem[]>;
@@ -87,6 +87,10 @@ declare const _default: import("vue").DefineComponent<{
87
87
  type: PropType<AnyObject>;
88
88
  default: () => {};
89
89
  };
90
+ consumer: {
91
+ type: BooleanConstructor;
92
+ default: boolean;
93
+ };
90
94
  }, {
91
95
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
92
96
  fieldList: {
@@ -174,13 +178,17 @@ declare const _default: import("vue").DefineComponent<{
174
178
  type: PropType<AnyObject>;
175
179
  default: () => {};
176
180
  };
181
+ consumer: {
182
+ type: BooleanConstructor;
183
+ default: boolean;
184
+ };
177
185
  }>> & {
178
186
  onFormChange?: ((...args: any[]) => any) | undefined;
179
187
  }>>;
180
188
  emit: (event: "formChange", ...args: any[]) => void;
181
- create: () => import("./hooks").BusinessCollector;
182
- trigger: (collector: import("./hooks").BusinessCollector, formModel: import("@formily/core").Form<any>, fieldName: string, value: unknown) => void;
183
- collector: import("./hooks").BusinessCollector;
189
+ businessCollector: import("./hooks").BusinessCollector;
190
+ changeContextCollector: import("./hooks").ContextCollector;
191
+ formItemDepsCollector: import("./hooks").FormItemDepsCollector;
184
192
  formModel: import("@formily/core").Form<{
185
193
  [x: string]: any;
186
194
  }>;
@@ -304,6 +312,271 @@ declare const _default: import("vue").DefineComponent<{
304
312
  FormProvider: import("vue").DefineComponent<Record<"form", any>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<Record<"form", any>>>, {
305
313
  form: any;
306
314
  }>;
315
+ FormConsumer: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
316
+ NForm: import("vue").DefineComponent<{
317
+ readonly inline: BooleanConstructor;
318
+ readonly labelWidth: PropType<string | number>;
319
+ readonly labelAlign: PropType<import("naive-ui/es/form/src/interface").LabelAlign>;
320
+ readonly labelPlacement: {
321
+ readonly type: PropType<import("naive-ui/es/form/src/interface").LabelPlacement>;
322
+ readonly default: "top";
323
+ };
324
+ readonly model: {
325
+ readonly type: PropType<Record<string, any>>;
326
+ readonly default: () => void;
327
+ };
328
+ readonly rules: PropType<import("naive-ui").FormRules>;
329
+ readonly disabled: BooleanConstructor;
330
+ readonly size: PropType<import("naive-ui/es/form/src/interface").Size>;
331
+ readonly showRequireMark: {
332
+ readonly type: PropType<boolean | undefined>;
333
+ readonly default: undefined;
334
+ };
335
+ readonly requireMarkPlacement: PropType<"left" | "right" | "right-hanging">;
336
+ readonly showFeedback: {
337
+ readonly type: BooleanConstructor;
338
+ readonly default: true;
339
+ };
340
+ readonly onSubmit: {
341
+ readonly type: PropType<(e: Event) => void>;
342
+ readonly default: (e: Event) => void;
343
+ };
344
+ readonly showLabel: {
345
+ readonly type: PropType<boolean | undefined>;
346
+ readonly default: undefined;
347
+ };
348
+ readonly validateMessages: PropType<Partial<import("naive-ui/es/form/src/interface").FormValidateMessages>>;
349
+ readonly theme: PropType<import("naive-ui/es/_mixins").Theme<"Form", {
350
+ blankHeightSmall: string;
351
+ blankHeightMedium: string;
352
+ blankHeightLarge: string;
353
+ lineHeight: string;
354
+ labelTextColor: string;
355
+ asteriskColor: string;
356
+ feedbackTextColorError: string;
357
+ feedbackTextColorWarning: string;
358
+ feedbackTextColor: string;
359
+ feedbackPadding: string;
360
+ feedbackHeightSmall: string;
361
+ feedbackHeightMedium: string;
362
+ feedbackHeightLarge: string;
363
+ feedbackFontSizeSmall: string;
364
+ feedbackFontSizeMedium: string;
365
+ feedbackFontSizeLarge: string;
366
+ labelFontSizeLeftSmall: string;
367
+ labelFontSizeLeftMedium: string;
368
+ labelFontSizeLeftLarge: string;
369
+ labelFontSizeTopSmall: string;
370
+ labelFontSizeTopMedium: string;
371
+ labelFontSizeTopLarge: string;
372
+ labelHeightSmall: string;
373
+ labelHeightMedium: string;
374
+ labelHeightLarge: string;
375
+ labelPaddingVertical: string;
376
+ labelPaddingHorizontal: string;
377
+ labelTextAlignVertical: string;
378
+ labelTextAlignHorizontal: string;
379
+ }, any>>;
380
+ readonly themeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Form", {
381
+ blankHeightSmall: string;
382
+ blankHeightMedium: string;
383
+ blankHeightLarge: string;
384
+ lineHeight: string;
385
+ labelTextColor: string;
386
+ asteriskColor: string;
387
+ feedbackTextColorError: string;
388
+ feedbackTextColorWarning: string;
389
+ feedbackTextColor: string;
390
+ feedbackPadding: string;
391
+ feedbackHeightSmall: string;
392
+ feedbackHeightMedium: string;
393
+ feedbackHeightLarge: string;
394
+ feedbackFontSizeSmall: string;
395
+ feedbackFontSizeMedium: string;
396
+ feedbackFontSizeLarge: string;
397
+ labelFontSizeLeftSmall: string;
398
+ labelFontSizeLeftMedium: string;
399
+ labelFontSizeLeftLarge: string;
400
+ labelFontSizeTopSmall: string;
401
+ labelFontSizeTopMedium: string;
402
+ labelFontSizeTopLarge: string;
403
+ labelHeightSmall: string;
404
+ labelHeightMedium: string;
405
+ labelHeightLarge: string;
406
+ labelPaddingVertical: string;
407
+ labelPaddingHorizontal: string;
408
+ labelTextAlignVertical: string;
409
+ labelTextAlignHorizontal: string;
410
+ }, any>>>;
411
+ readonly builtinThemeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Form", {
412
+ blankHeightSmall: string;
413
+ blankHeightMedium: string;
414
+ blankHeightLarge: string;
415
+ lineHeight: string;
416
+ labelTextColor: string;
417
+ asteriskColor: string;
418
+ feedbackTextColorError: string;
419
+ feedbackTextColorWarning: string;
420
+ feedbackTextColor: string;
421
+ feedbackPadding: string;
422
+ feedbackHeightSmall: string;
423
+ feedbackHeightMedium: string;
424
+ feedbackHeightLarge: string;
425
+ feedbackFontSizeSmall: string;
426
+ feedbackFontSizeMedium: string;
427
+ feedbackFontSizeLarge: string;
428
+ labelFontSizeLeftSmall: string;
429
+ labelFontSizeLeftMedium: string;
430
+ labelFontSizeLeftLarge: string;
431
+ labelFontSizeTopSmall: string;
432
+ labelFontSizeTopMedium: string;
433
+ labelFontSizeTopLarge: string;
434
+ labelHeightSmall: string;
435
+ labelHeightMedium: string;
436
+ labelHeightLarge: string;
437
+ labelPaddingVertical: string;
438
+ labelPaddingHorizontal: string;
439
+ labelTextAlignVertical: string;
440
+ labelTextAlignHorizontal: string;
441
+ }, any>>>;
442
+ }, import("naive-ui").FormInst & {
443
+ mergedClsPrefix: import("vue").ComputedRef<string>;
444
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
445
+ readonly inline: BooleanConstructor;
446
+ readonly labelWidth: PropType<string | number>;
447
+ readonly labelAlign: PropType<import("naive-ui/es/form/src/interface").LabelAlign>;
448
+ readonly labelPlacement: {
449
+ readonly type: PropType<import("naive-ui/es/form/src/interface").LabelPlacement>;
450
+ readonly default: "top";
451
+ };
452
+ readonly model: {
453
+ readonly type: PropType<Record<string, any>>;
454
+ readonly default: () => void;
455
+ };
456
+ readonly rules: PropType<import("naive-ui").FormRules>;
457
+ readonly disabled: BooleanConstructor;
458
+ readonly size: PropType<import("naive-ui/es/form/src/interface").Size>;
459
+ readonly showRequireMark: {
460
+ readonly type: PropType<boolean | undefined>;
461
+ readonly default: undefined;
462
+ };
463
+ readonly requireMarkPlacement: PropType<"left" | "right" | "right-hanging">;
464
+ readonly showFeedback: {
465
+ readonly type: BooleanConstructor;
466
+ readonly default: true;
467
+ };
468
+ readonly onSubmit: {
469
+ readonly type: PropType<(e: Event) => void>;
470
+ readonly default: (e: Event) => void;
471
+ };
472
+ readonly showLabel: {
473
+ readonly type: PropType<boolean | undefined>;
474
+ readonly default: undefined;
475
+ };
476
+ readonly validateMessages: PropType<Partial<import("naive-ui/es/form/src/interface").FormValidateMessages>>;
477
+ readonly theme: PropType<import("naive-ui/es/_mixins").Theme<"Form", {
478
+ blankHeightSmall: string;
479
+ blankHeightMedium: string;
480
+ blankHeightLarge: string;
481
+ lineHeight: string;
482
+ labelTextColor: string;
483
+ asteriskColor: string;
484
+ feedbackTextColorError: string;
485
+ feedbackTextColorWarning: string;
486
+ feedbackTextColor: string;
487
+ feedbackPadding: string;
488
+ feedbackHeightSmall: string;
489
+ feedbackHeightMedium: string;
490
+ feedbackHeightLarge: string;
491
+ feedbackFontSizeSmall: string;
492
+ feedbackFontSizeMedium: string;
493
+ feedbackFontSizeLarge: string;
494
+ labelFontSizeLeftSmall: string;
495
+ labelFontSizeLeftMedium: string;
496
+ labelFontSizeLeftLarge: string;
497
+ labelFontSizeTopSmall: string;
498
+ labelFontSizeTopMedium: string;
499
+ labelFontSizeTopLarge: string;
500
+ labelHeightSmall: string;
501
+ labelHeightMedium: string;
502
+ labelHeightLarge: string;
503
+ labelPaddingVertical: string;
504
+ labelPaddingHorizontal: string;
505
+ labelTextAlignVertical: string;
506
+ labelTextAlignHorizontal: string;
507
+ }, any>>;
508
+ readonly themeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Form", {
509
+ blankHeightSmall: string;
510
+ blankHeightMedium: string;
511
+ blankHeightLarge: string;
512
+ lineHeight: string;
513
+ labelTextColor: string;
514
+ asteriskColor: string;
515
+ feedbackTextColorError: string;
516
+ feedbackTextColorWarning: string;
517
+ feedbackTextColor: string;
518
+ feedbackPadding: string;
519
+ feedbackHeightSmall: string;
520
+ feedbackHeightMedium: string;
521
+ feedbackHeightLarge: string;
522
+ feedbackFontSizeSmall: string;
523
+ feedbackFontSizeMedium: string;
524
+ feedbackFontSizeLarge: string;
525
+ labelFontSizeLeftSmall: string;
526
+ labelFontSizeLeftMedium: string;
527
+ labelFontSizeLeftLarge: string;
528
+ labelFontSizeTopSmall: string;
529
+ labelFontSizeTopMedium: string;
530
+ labelFontSizeTopLarge: string;
531
+ labelHeightSmall: string;
532
+ labelHeightMedium: string;
533
+ labelHeightLarge: string;
534
+ labelPaddingVertical: string;
535
+ labelPaddingHorizontal: string;
536
+ labelTextAlignVertical: string;
537
+ labelTextAlignHorizontal: string;
538
+ }, any>>>;
539
+ readonly builtinThemeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Form", {
540
+ blankHeightSmall: string;
541
+ blankHeightMedium: string;
542
+ blankHeightLarge: string;
543
+ lineHeight: string;
544
+ labelTextColor: string;
545
+ asteriskColor: string;
546
+ feedbackTextColorError: string;
547
+ feedbackTextColorWarning: string;
548
+ feedbackTextColor: string;
549
+ feedbackPadding: string;
550
+ feedbackHeightSmall: string;
551
+ feedbackHeightMedium: string;
552
+ feedbackHeightLarge: string;
553
+ feedbackFontSizeSmall: string;
554
+ feedbackFontSizeMedium: string;
555
+ feedbackFontSizeLarge: string;
556
+ labelFontSizeLeftSmall: string;
557
+ labelFontSizeLeftMedium: string;
558
+ labelFontSizeLeftLarge: string;
559
+ labelFontSizeTopSmall: string;
560
+ labelFontSizeTopMedium: string;
561
+ labelFontSizeTopLarge: string;
562
+ labelHeightSmall: string;
563
+ labelHeightMedium: string;
564
+ labelHeightLarge: string;
565
+ labelPaddingVertical: string;
566
+ labelPaddingHorizontal: string;
567
+ labelTextAlignVertical: string;
568
+ labelTextAlignHorizontal: string;
569
+ }, any>>>;
570
+ }>>, {
571
+ readonly inline: boolean;
572
+ readonly disabled: boolean;
573
+ readonly onSubmit: (e: Event) => void;
574
+ readonly labelPlacement: import("naive-ui/es/form/src/interface").LabelPlacement;
575
+ readonly model: Record<string, any>;
576
+ readonly showRequireMark: boolean | undefined;
577
+ readonly showFeedback: boolean;
578
+ readonly showLabel: boolean | undefined;
579
+ }>;
307
580
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "formChange"[], "formChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
308
581
  fieldList: {
309
582
  type: PropType<FieldItem[]>;
@@ -390,6 +663,10 @@ declare const _default: import("vue").DefineComponent<{
390
663
  type: PropType<AnyObject>;
391
664
  default: () => {};
392
665
  };
666
+ consumer: {
667
+ type: BooleanConstructor;
668
+ default: boolean;
669
+ };
393
670
  }>> & {
394
671
  onFormChange?: ((...args: any[]) => any) | undefined;
395
672
  }, {
@@ -398,5 +675,6 @@ declare const _default: import("vue").DefineComponent<{
398
675
  initialData: AnyObject;
399
676
  parallelism: number;
400
677
  scope: AnyObject;
678
+ consumer: boolean;
401
679
  }>;
402
680
  export default _default;
@@ -1,16 +1,20 @@
1
- import { defineComponent, computed, openBlock, createElementBlock, normalizeStyle, createVNode, unref, withCtx, renderSlot } from 'vue';
1
+ import { defineComponent, provide, computed, openBlock, createBlock, unref, normalizeStyle, withCtx, createVNode, renderSlot, createElementVNode, toDisplayString, createCommentVNode } from 'vue';
2
2
  import { injectOrProvide } from './utils/index2.mjs';
3
3
  import { cloneDeep } from 'lodash-es';
4
- import { InjectionBusinessCollector, InjectAsyncQueue, InjectionSchemaField } from './constants/index2.mjs';
4
+ import { InjectionBusinessCollector, InjectionChangeContextCollector, InjectionFormItemDepsCollector, InjectAsyncQueue, InjectionSchemaField } from './constants/index2.mjs';
5
5
  import { useFieldList2Schema } from './hooks/useFieldList2Schema2.mjs';
6
- import { FormProvider, createSchemaField } from '@formily/vue';
6
+ import { FormProvider, FormConsumer, createSchemaField } from '@formily/vue';
7
7
  import { useAsyncQueue } from './hooks/useAsyncQueue2.mjs';
8
8
  import { useFieldVisitor } from './hooks/useFieldVisitor2.mjs';
9
9
  import '@vueuse/core';
10
10
  import { useBusinessBinding } from './hooks/useBusinessBinding2.mjs';
11
+ import { useChangeContext } from './hooks/useChangeContext2.mjs';
12
+ import { useFormItemDeps } from './hooks/useFormItemDeps2.mjs';
11
13
  import * as index from './components/index2.mjs';
12
14
  import { createForm, onFieldValueChange } from '@formily/core';
15
+ import { NForm } from 'naive-ui';
13
16
 
17
+ const _hoisted_1 = { style: { "white-space": "pre" } };
14
18
  var script = /* @__PURE__ */ defineComponent({
15
19
  __name: "FormRender",
16
20
  props: {
@@ -24,25 +28,35 @@ var script = /* @__PURE__ */ defineComponent({
24
28
  type: Object,
25
29
  default: () => ({})
26
30
  },
27
- scope: { type: Object, default: () => ({}) }
31
+ scope: { type: Object, default: () => ({}) },
32
+ consumer: { type: Boolean, default: false }
28
33
  },
29
- emits: ["formChange"],
34
+ emits: [
35
+ "formChange"
36
+ ],
30
37
  setup(__props, { expose, emit }) {
31
38
  const props = __props;
32
- const { create, trigger } = useBusinessBinding();
33
- const collector = injectOrProvide(InjectionBusinessCollector, create);
34
39
  injectOrProvide(InjectAsyncQueue, () => useAsyncQueue().create(props.parallelism));
40
+ const businessCollector = useBusinessBinding().create();
41
+ provide(InjectionBusinessCollector, businessCollector);
42
+ const changeContextCollector = useChangeContext().create();
43
+ provide(InjectionChangeContextCollector, changeContextCollector);
44
+ const formItemDepsCollector = useFormItemDeps().create();
45
+ provide(InjectionFormItemDepsCollector, formItemDepsCollector);
35
46
  const formModel = createForm({
36
47
  initialValues: props.initialData,
37
48
  effects() {
38
49
  onFieldValueChange("*", (field) => {
50
+ const fieldKey = field.props.name.toString();
39
51
  emit("formChange", {
40
52
  fieldInstance: field,
41
- fieldKey: field.props.name,
53
+ fieldKey,
42
54
  fieldName: field.title,
43
- value: field.value
55
+ value: field.value,
56
+ context: changeContextCollector.getContext(fieldKey)
44
57
  });
45
- trigger(collector, formModel, field.props.name, field.value);
58
+ businessCollector.trigger(formModel, fieldKey, field.value);
59
+ formItemDepsCollector.trigger(fieldKey);
46
60
  });
47
61
  }
48
62
  });
@@ -51,11 +65,12 @@ var script = /* @__PURE__ */ defineComponent({
51
65
  scope: props.scope
52
66
  }).SchemaField);
53
67
  const { traverse } = useFieldVisitor();
54
- const { transform } = useFieldList2Schema(collector);
68
+ const { transform } = useFieldList2Schema(businessCollector);
55
69
  const renderSchema = computed(() => {
56
70
  if (props.schema) {
57
71
  return props.schema;
58
- } else if (props.fieldList) {
72
+ }
73
+ if (props.fieldList) {
59
74
  const _fieldList = traverse(cloneDeep(props.fieldList), props.fieldVisitor);
60
75
  return { type: "object", properties: transform(_fieldList) };
61
76
  }
@@ -72,19 +87,28 @@ var script = /* @__PURE__ */ defineComponent({
72
87
  setFieldState: formModel.setFieldState.bind(formModel)
73
88
  });
74
89
  return (_ctx, _cache) => {
75
- return openBlock(), createElementBlock("section", {
90
+ return openBlock(), createBlock(unref(NForm), {
76
91
  class: "form-render__wrapper",
77
92
  style: normalizeStyle({ "--column": __props.column })
78
- }, [
79
- createVNode(unref(FormProvider), { form: unref(formModel) }, {
80
- default: withCtx(() => [
81
- renderSlot(_ctx.$slots, "default", { schemaFiled: unref(SchemaField) }, () => [
82
- createVNode(unref(SchemaField), { schema: unref(renderSchema) }, null, 8, ["schema"])
83
- ])
84
- ]),
85
- _: 3
86
- }, 8, ["form"])
87
- ], 4);
93
+ }, {
94
+ default: withCtx(() => [
95
+ createVNode(unref(FormProvider), { form: unref(formModel) }, {
96
+ default: withCtx(() => [
97
+ renderSlot(_ctx.$slots, "default", { schemaFiled: unref(SchemaField) }, () => [
98
+ createVNode(unref(SchemaField), { schema: unref(renderSchema) }, null, 8, ["schema"])
99
+ ]),
100
+ __props.consumer ? (openBlock(), createBlock(unref(FormConsumer), { key: 0 }, {
101
+ default: withCtx(({ form }) => [
102
+ createElementVNode("div", _hoisted_1, toDisplayString(JSON.stringify(form.values, null, 2)), 1)
103
+ ]),
104
+ _: 1
105
+ })) : createCommentVNode("v-if", true)
106
+ ]),
107
+ _: 3
108
+ }, 8, ["form"])
109
+ ]),
110
+ _: 3
111
+ }, 8, ["style"]);
88
112
  };
89
113
  }
90
114
  });
@@ -1,10 +1,14 @@
1
- import { AnyObject } from 'cnhis-design-vue/es/src/types';
1
+ import { AnyObject, ArrayAble } from 'cnhis-design-vue/es/src/types';
2
2
  import { FormRequestType } from '../types';
3
3
  import { PropType } from 'vue';
4
+ declare type DependKeyObj = {
5
+ paramName: string;
6
+ paramValue: string;
7
+ };
4
8
  declare type UrlConfig = {
5
9
  method: FormRequestType;
6
10
  nameKey: string;
7
- dependKey: string;
11
+ dependKey: ArrayAble<string> | ArrayAble<DependKeyObj>;
8
12
  url: string;
9
13
  valueKey: string;
10
14
  };
@@ -20,6 +24,8 @@ export declare const SEARCH_CASCADE: import("vue").DefineComponent<{
20
24
  urlConfig: {
21
25
  type: PropType<UrlConfig>;
22
26
  };
27
+ onChange: {};
28
+ value: {};
23
29
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
24
30
  options: {
25
31
  type: PropType<AnyObject[]>;
@@ -32,6 +38,8 @@ export declare const SEARCH_CASCADE: import("vue").DefineComponent<{
32
38
  urlConfig: {
33
39
  type: PropType<UrlConfig>;
34
40
  };
41
+ onChange: {};
42
+ value: {};
35
43
  }>> & {
36
44
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
37
45
  }, {
@@ -1,8 +1,10 @@
1
- import { defineComponent, ref, inject, computed, watch, createVNode, Fragment, mergeProps } from 'vue';
1
+ import { defineComponent, ref, inject, computed, watch, createVNode } from 'vue';
2
+ import { isObject, isString } from 'lodash-es';
2
3
  import { InjectAsyncQueue } from '../constants/index2.mjs';
3
- import { assignUpdateValue, formRenderLog } from '../utils/index2.mjs';
4
- import { isObject } from '@vueuse/core';
4
+ import { assignUpdateValue, formRenderLog, arrayed } from '../utils/index2.mjs';
5
+ import '@vueuse/core';
5
6
  import { useFormField } from '../hooks/useFormField2.mjs';
7
+ import 'cnhis-design-vue/es/packages/form-render/src/utils';
6
8
  import { connect, mapProps } from '@formily/vue';
7
9
  import { NCascader } from 'naive-ui';
8
10
 
@@ -19,7 +21,9 @@ const script = defineComponent({
19
21
  },
20
22
  urlConfig: {
21
23
  type: Object
22
- }
24
+ },
25
+ onChange: {},
26
+ value: {}
23
27
  },
24
28
  emits: ["update:value"],
25
29
  setup(props, {
@@ -50,11 +54,17 @@ const script = defineComponent({
50
54
  lvlnr: parentDepth + 1 + ""
51
55
  };
52
56
  if (option) {
53
- if (!props.urlConfig.dependKey) {
54
- formRenderLog(`invalid urlConfig.dependKey ${props.urlConfig.dependKey} in CASCADER => ${title.value}`, "warn");
57
+ if (!config.dependKey) {
58
+ formRenderLog(`invalid urlConfig.dependKey ${config.dependKey} in CASCADER => ${title.value}`, "warn");
55
59
  return;
56
60
  }
57
- params[props.urlConfig.dependKey] = option[config.valueKey];
61
+ arrayed(config.dependKey).forEach((key) => {
62
+ if (isString(key)) {
63
+ params[key] = option[config.valueKey];
64
+ } else if (isObject(key)) {
65
+ params[key.paramName] = option[key.paramValue];
66
+ }
67
+ });
58
68
  }
59
69
  const data = await asyncQueue.addAsync({
60
70
  ...config,
@@ -75,18 +85,13 @@ const script = defineComponent({
75
85
  const renderOptions = computed(() => {
76
86
  return _options.value || props.options || [];
77
87
  });
78
- watch(() => attrs.value, (n, o) => {
88
+ watch(() => props.value, (n, o) => {
79
89
  if (n != null && o == null) {
80
90
  fetchData();
81
91
  }
82
92
  }, {
83
93
  immediate: true
84
94
  });
85
- function updateValue(v, _, options) {
86
- var _a;
87
- const payload = (_a = options == null ? void 0 : options.map((option) => option[labelKey.value])) == null ? void 0 : _a.join(" / ");
88
- emit("update:value", payload);
89
- }
90
95
  const labelKey = computed(() => {
91
96
  var _a, _b;
92
97
  return (_b = (_a = props.urlConfig) == null ? void 0 : _a.nameKey) != null ? _b : "text";
@@ -95,14 +100,27 @@ const script = defineComponent({
95
100
  var _a, _b;
96
101
  return (_b = (_a = props.urlConfig) == null ? void 0 : _a.valueKey) != null ? _b : "value";
97
102
  });
98
- const _attrs = computed(() => {
99
- return {
100
- ...attrs,
101
- onChange: void 0
102
- };
103
+ const _value = computed(() => {
104
+ try {
105
+ const parsed = Array.isArray(props.value) ? props.value : JSON.parse(props.value || "");
106
+ if (Array.isArray(parsed)) {
107
+ return parsed.map((option) => option[labelKey.value]).join(" / ");
108
+ }
109
+ } catch (e) {
110
+ return "";
111
+ }
103
112
  });
113
+ function updateValue(v, _, options) {
114
+ const payload = Array.isArray(options) ? options.map((option) => ({
115
+ ...option,
116
+ label: option[labelKey.value],
117
+ children: void 0
118
+ })) : options;
119
+ emit("update:value", payload);
120
+ }
104
121
  return () => {
105
- return createVNode(Fragment, null, [createVNode(NCascader, mergeProps(_attrs.value, {
122
+ return createVNode(NCascader, {
123
+ "value": _value.value,
106
124
  "onUpdate:value": updateValue,
107
125
  "remote": true,
108
126
  "labelField": labelKey.value,
@@ -111,7 +129,7 @@ const script = defineComponent({
111
129
  "checkStrategy": "child",
112
130
  "onLoad": fetchData,
113
131
  "onUpdate:show": (show) => show && fetchData()
114
- }), slots)]);
132
+ }, slots);
115
133
  };
116
134
  }
117
135
  });
@@ -71,11 +71,11 @@ const script = defineComponent({
71
71
  event.stopPropagation();
72
72
  }
73
73
  function onChange(idx, {
74
- field,
74
+ fieldKey,
75
75
  value
76
76
  }) {
77
77
  !_values.value[idx] && (_values.value[idx] = {});
78
- _values.value[idx][field] = value;
78
+ _values.value[idx][fieldKey] = value;
79
79
  emitChange();
80
80
  }
81
81
  const FormRenderComponent = script$1;
@@ -0,0 +1,13 @@
1
+ export declare const COMPLEX: import("vue").DefineComponent<{
2
+ span: {
3
+ type: NumberConstructor;
4
+ default: number;
5
+ };
6
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ span: {
8
+ type: NumberConstructor;
9
+ default: number;
10
+ };
11
+ }>>, {
12
+ span: number;
13
+ }>;
@@ -0,0 +1 @@
1
+ export { COMPLEX } from './complex2.mjs';
@@ -0,0 +1,31 @@
1
+ import { defineComponent, createVNode } from 'vue';
2
+ import { connect, mapProps } from '@formily/vue';
3
+ import { assignUpdateValue } from 'cnhis-design-vue/es/packages/form-render/src/utils';
4
+
5
+ const script = defineComponent({
6
+ props: {
7
+ span: {
8
+ type: Number,
9
+ default: 6
10
+ }
11
+ },
12
+ setup(props, {
13
+ slots,
14
+ attrs
15
+ }) {
16
+ function onChange(e) {
17
+ e.stopPropagation();
18
+ }
19
+ return () => {
20
+ return createVNode("section", {
21
+ "class": "form-render__complex"
22
+ }, [createVNode("section", {
23
+ "class": "form-render__complexContent",
24
+ "onChange": onChange
25
+ }, [slots.default && slots.default()])]);
26
+ };
27
+ }
28
+ });
29
+ const COMPLEX = connect(script, mapProps(assignUpdateValue));
30
+
31
+ export { COMPLEX };