cnhis-design-vue 3.1.52-beta.1 → 3.1.52-beta.11

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 (100) hide show
  1. package/README.md +87 -87
  2. package/es/components/body-select/index.d.ts +47 -0
  3. package/es/components/body-select/index.js +1 -0
  4. package/es/components/body-select/src/config/index.d.ts +101 -0
  5. package/es/components/body-select/src/config/index.js +1 -0
  6. package/es/components/body-select/src/hooks/renderCanvas.d.ts +6 -0
  7. package/es/components/body-select/src/hooks/renderCanvas.js +1 -0
  8. package/es/components/body-select/src/index.vue.d.ts +48 -0
  9. package/es/components/body-select/src/index.vue.js +1 -0
  10. package/es/components/body-select/src/index.vue2.js +1 -0
  11. package/es/components/body-select/style/index.css +1 -0
  12. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  13. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  14. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  15. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  16. package/es/components/callback/src/components/render/popupMaps.d.ts +1 -1
  17. package/es/components/classification/index.d.ts +40 -6
  18. package/es/components/classification/src/components/search-filter/index.vue.d.ts +40 -6
  19. package/es/components/classification/src/components/set-classification/index.vue.d.ts +40 -6
  20. package/es/components/classification/src/index.vue.d.ts +40 -6
  21. package/es/components/date-picker/index.d.ts +20 -3
  22. package/es/components/date-picker/src/DatePicker.vue.d.ts +20 -3
  23. package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
  24. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  25. package/es/components/form-config/index.d.ts +9 -2
  26. package/es/components/form-config/src/FormConfig.vue.d.ts +9 -2
  27. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -1
  28. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +4 -1
  29. package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
  30. package/es/components/form-render/index.d.ts +1 -1
  31. package/es/components/form-render/src/FormRender.vue.d.ts +1 -1
  32. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +1 -1
  33. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  34. package/es/components/form-render/src/components/renderer/radio&checkbox.d.ts +18 -0
  35. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  36. package/es/components/form-render/src/hooks/useComplexOptions.d.ts +2 -1
  37. package/es/components/form-render/src/hooks/useComplexOptions.js +1 -1
  38. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  39. package/es/components/form-render/src/hooks/useFormEvent.d.ts +2 -2
  40. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  41. package/es/components/form-render/src/types/fieldItem.d.ts +1 -0
  42. package/es/components/form-render/src/types/index.d.ts +2 -2
  43. package/es/components/form-render/style/index.css +1 -1
  44. package/es/components/iho-table/src/plugins/defaultValuePlugin.js +1 -1
  45. package/es/components/iho-table/src/plugins/filterDaterangeRenderPlugin/filter.vue.d.ts +20 -3
  46. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +20 -3
  47. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue2.js +1 -1
  48. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  49. package/es/components/index.css +1 -1
  50. package/es/components/index.d.ts +2 -1
  51. package/es/components/index.js +1 -1
  52. package/es/components/info-header/index.d.ts +2 -2
  53. package/es/components/info-header/src/InfoHeader.vue.d.ts +2 -2
  54. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +1 -1
  55. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +1 -1
  56. package/es/components/recommend-search/index.d.ts +1 -1
  57. package/es/components/recommend-search/src/RecommendSearch.vue.d.ts +1 -1
  58. package/es/components/recommend-search/src/components/RecommendInput.vue.d.ts +1 -1
  59. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  60. package/es/components/scale-view/src/components/formitem/r-map.js +1 -1
  61. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  62. package/es/components/scale-view/style/index.css +1 -1
  63. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  64. package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
  65. package/es/components/select-person/src/SearchOrgAndStaff.vue2.js +1 -1
  66. package/es/components/shortcut-setter/index.d.ts +2 -1
  67. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +2 -1
  68. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +3 -0
  69. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +40 -6
  70. package/es/components/table-filter/src/components/classify-filter/components/Date.vue.d.ts +20 -3
  71. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue.d.ts +20 -3
  72. package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +40 -6
  73. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +40 -6
  74. package/es/components/table-filter/src/components/render-widget/components/DateInner.vue.d.ts +20 -3
  75. package/es/components/table-filter/src/components/render-widget/components/DateOut.vue.d.ts +20 -3
  76. package/es/components/table-filter/src/components/render-widget/components/DateRangeInner.vue.d.ts +20 -3
  77. package/es/components/table-filter/src/components/render-widget/components/DateRangeOut.vue.d.ts +20 -3
  78. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +80 -12
  79. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +80 -12
  80. package/es/components/time-picker/src/TimePicker.vue2.js +1 -1
  81. package/es/env.d.ts +25 -25
  82. package/es/shared/assets/img/failure.png.js +1 -1
  83. package/es/shared/assets/img/no-permission.png.js +1 -1
  84. package/es/shared/assets/img/nodata.png.js +1 -1
  85. package/es/shared/assets/img/notfound.png.js +1 -1
  86. package/es/shared/assets/img/qr.png.js +1 -1
  87. package/es/shared/assets/img/success.png.js +1 -1
  88. package/es/shared/assets/img/video.png.js +1 -1
  89. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  90. package/es/shared/assets/img/xb_big.png.js +1 -1
  91. package/es/shared/assets/img/xb_small.png.js +1 -1
  92. package/es/shared/components/InputNumberSlash/InputNumberSlash.d.ts +9 -0
  93. package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -1
  94. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  95. package/es/shared/hooks/useDateTime.d.ts +7 -2
  96. package/es/shared/hooks/useDateTime.js +1 -1
  97. package/es/shared/package.json.js +1 -1
  98. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  99. package/es/shared/utils/tapable/index.d.ts +139 -0
  100. package/package.json +2 -2
@@ -1933,6 +1933,7 @@ declare const _default: import("vue").DefineComponent<{
1933
1933
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
1934
1934
  } | undefined;
1935
1935
  childFieldStrategy?: "checked" | "all" | undefined;
1936
+ childWidthMode?: "inner" | "outer" | undefined;
1936
1937
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
1937
1938
  reactions?: {
1938
1939
  [x: string]: any;
@@ -3667,6 +3668,7 @@ declare const _default: import("vue").DefineComponent<{
3667
3668
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
3668
3669
  } | undefined;
3669
3670
  childFieldStrategy?: "checked" | "all" | undefined;
3671
+ childWidthMode?: "inner" | "outer" | undefined;
3670
3672
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
3671
3673
  reactions?: {
3672
3674
  [x: string]: any;
@@ -5426,6 +5428,7 @@ declare const _default: import("vue").DefineComponent<{
5426
5428
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
5427
5429
  } | undefined;
5428
5430
  childFieldStrategy?: "checked" | "all" | undefined;
5431
+ childWidthMode?: "inner" | "outer" | undefined;
5429
5432
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
5430
5433
  reactions?: {
5431
5434
  [x: string]: any;
@@ -7160,6 +7163,7 @@ declare const _default: import("vue").DefineComponent<{
7160
7163
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
7161
7164
  } | undefined;
7162
7165
  childFieldStrategy?: "checked" | "all" | undefined;
7166
+ childWidthMode?: "inner" | "outer" | undefined;
7163
7167
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
7164
7168
  reactions?: {
7165
7169
  [x: string]: any;
@@ -7844,7 +7848,7 @@ declare const _default: import("vue").DefineComponent<{
7844
7848
  onKeydown: (event: KeyboardEvent) => Promise<void>;
7845
7849
  clearSpan: (uuid: string) => void;
7846
7850
  exposeEvent: {
7847
- validate(path?: string, { force }?: {
7851
+ validate(path?: string | ((field: import("../../../../es/components/form-render").Field<any, any, any, any>) => boolean), { force }?: {
7848
7852
  force?: boolean | undefined;
7849
7853
  }): Promise<void>;
7850
7854
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -10166,6 +10170,7 @@ declare const _default: import("vue").DefineComponent<{
10166
10170
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
10167
10171
  } | undefined;
10168
10172
  childFieldStrategy?: "checked" | "all" | undefined;
10173
+ childWidthMode?: "inner" | "outer" | undefined;
10169
10174
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
10170
10175
  reactions?: {
10171
10176
  [x: string]: any;
@@ -11911,6 +11916,7 @@ declare const _default: import("vue").DefineComponent<{
11911
11916
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
11912
11917
  } | undefined;
11913
11918
  childFieldStrategy?: "checked" | "all" | undefined;
11919
+ childWidthMode?: "inner" | "outer" | undefined;
11914
11920
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
11915
11921
  reactions?: {
11916
11922
  [x: string]: any;
@@ -13629,6 +13635,7 @@ declare const _default: import("vue").DefineComponent<{
13629
13635
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
13630
13636
  } | undefined;
13631
13637
  childFieldStrategy?: "checked" | "all" | undefined;
13638
+ childWidthMode?: "inner" | "outer" | undefined;
13632
13639
  validator?: ((value: unknown, fieldItem: import("../../../../es/components/form-render").FieldItem) => string | void) | undefined;
13633
13640
  reactions?: {
13634
13641
  [x: string]: any;
@@ -14231,7 +14238,7 @@ declare const _default: import("vue").DefineComponent<{
14231
14238
  onKeydown: (event: KeyboardEvent) => Promise<void>;
14232
14239
  clearSpan: (uuid: string) => void;
14233
14240
  exposeEvent: {
14234
- validate(path?: string, { force }?: {
14241
+ validate(path?: string | ((field: import("../../../../es/components/form-render").Field<any, any, any, any>) => boolean), { force }?: {
14235
14242
  force?: boolean | undefined;
14236
14243
  }): Promise<void>;
14237
14244
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -576,7 +576,7 @@ declare const _default: import("vue").DefineComponent<{}, {
576
576
  onKeydown: (event: KeyboardEvent) => Promise<void>;
577
577
  clearSpan: (uuid: string) => void;
578
578
  exposeEvent: {
579
- validate(path?: string, { force }?: {
579
+ validate(path?: string | ((field: import("../../../../../es/components/form-render").Field<any, any, any, any>) => boolean), { force }?: {
580
580
  force?: boolean | undefined;
581
581
  }): Promise<void>;
582
582
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -1883,6 +1883,7 @@ declare const _default: import("vue").DefineComponent<{
1883
1883
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
1884
1884
  } | undefined;
1885
1885
  childFieldStrategy?: "checked" | "all" | undefined;
1886
+ childWidthMode?: "inner" | "outer" | undefined;
1886
1887
  validator?: ((value: unknown, fieldItem: FieldItem) => string | void) | undefined;
1887
1888
  reactions?: {
1888
1889
  [x: string]: any;
@@ -3628,6 +3629,7 @@ declare const _default: import("vue").DefineComponent<{
3628
3629
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
3629
3630
  } | undefined;
3630
3631
  childFieldStrategy?: "checked" | "all" | undefined;
3632
+ childWidthMode?: "inner" | "outer" | undefined;
3631
3633
  validator?: ((value: unknown, fieldItem: FieldItem) => string | void) | undefined;
3632
3634
  reactions?: {
3633
3635
  [x: string]: any;
@@ -5346,6 +5348,7 @@ declare const _default: import("vue").DefineComponent<{
5346
5348
  "vector-effect"?: import("csstype").VectorEffectProperty | undefined;
5347
5349
  } | undefined;
5348
5350
  childFieldStrategy?: "checked" | "all" | undefined;
5351
+ childWidthMode?: "inner" | "outer" | undefined;
5349
5352
  validator?: ((value: unknown, fieldItem: FieldItem) => string | void) | undefined;
5350
5353
  reactions?: {
5351
5354
  [x: string]: any;
@@ -5948,7 +5951,7 @@ declare const _default: import("vue").DefineComponent<{
5948
5951
  onKeydown: (event: KeyboardEvent) => Promise<void>;
5949
5952
  clearSpan: (uuid: string) => void;
5950
5953
  exposeEvent: {
5951
- validate(path?: string, { force }?: {
5954
+ validate(path?: string | ((field: import("../../../../../es/components/form-render").Field<any, any, any, any>) => boolean), { force }?: {
5952
5955
  force?: boolean | undefined;
5953
5956
  }): Promise<void>;
5954
5957
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -1 +1 @@
1
- import{omit as e,pick as t}from"lodash-es";import{EditAbleField as l,widgetWidthOptionConfig as i,isShowOptionConfig as _,isNotFoldOptionConfig as a,isEditOptionConfig as o,isNullOptionConfig as m,isVisibleOptionConfig as s,rowsOptionConfig as n}from"../constants/index.js";import"../../../form-render/index.js";import{useFieldNormalize as r}from"../../../form-render/src/hooks/useFieldNormalize.js";const{FieldNormalizeWaterfallHook:d}=r();function E(){const r=new Map([[l.NAME,()=>({alias:"名称",elem_width:6,is_null:"0",html_type:"INPUT"})],[l.NOTES,()=>({alias:"问号提示",elem_width:6,html_type:"INPUT",is_empty:"0"})],[l.DEFAULT_VALUE,(l,i)=>{const _=d.call(Object.assign({},null==l?void 0:l.originalSetting,i),{});return{alias:"默认值",elem_width:6,html_type:"INPUT",is_empty:"0",componentProps:e(_.componentProps,["class","style","disabled"]),...t(_,["html_type","validate","option","multi_select","multi_select_value","wordbook","open","close","date_format","step_length","urlConfig","autograph","defined_error_msg","free_entry","validator","is_allow_check_mid","allow_check_mid_level"])}}],[l.LAYOUT_WIDTH_ENUM,()=>({alias:"宽度",fieldType:"number",html_type:"SELECT",elem_width:6,...i()})],[l.DESC,()=>({alias:"说明文本",elem_width:6,html_type:"INPUT",is_empty:"0",validate:{max_length:30}})],[l.DEFAULT_EXPAND,()=>({alias:"是否默认展开",html_type:"SWITCH",elem_width:6,..._()})],[l.FOLD,()=>({alias:"是否可折叠",html_type:"SWITCH",elem_width:6,...a()})],[l.EDITABLE,e=>({alias:"是否可编辑",html_type:"SWITCH",elem_width:6,is_edit:(null==e?void 0:e.editableDisabled)?"0":"1",...o()})],[l.REQUIRED,e=>({alias:"是否必填",html_type:"SWITCH",elem_width:6,is_edit:(null==e?void 0:e.requiredDisabled)?"0":"1",...m()})],[l.SHOW,e=>({alias:"是否显示",html_type:"SWITCH",elem_width:6,is_show:(null==e?void 0:e.__isCombinationChild)?"1":"0",...s()})],[l.ROWS,()=>({alias:"高度",elem_width:6,remark:"默认为3行高度,可调整为1-10行高度",default_val:3,is_empty:"0",html_type:"SELECT",...n()})]]);function E(e,t,l){return e.map((e=>{var i,_;return{...null!=(_=null==(i=r.get(e))?void 0:i(t,l))?_:{},val_key:e}}))}const p=new Map([["LINE_BAR",[l.NAME,l.LAYOUT_WIDTH_ENUM,l.NOTES,l.DEFAULT_EXPAND,l.FOLD]],...["NEWLINE","COMPLEX","COMBINATION"].map((e=>[e,[l.NAME,l.LAYOUT_WIDTH_ENUM]]))]),h=[l.NAME,l.DEFAULT_VALUE,l.LAYOUT_WIDTH_ENUM,l.DESC,l.NOTES,l.EDITABLE,l.REQUIRED,l.SHOW];return{generateFieldListByKeys:E,generateFieldListByFormConfigItem:function(e,t){var i;const _=p.get(e.type)||h;return"TEXTAREA"===(t?t.html_type:null==(i=e.originalSetting)?void 0:i.html_type)&&_.splice(3,0,l.ROWS),E(_,e,t)}}}export{E as useConfigurationField};
1
+ import{omit as e,pick as t}from"lodash-es";import{EditAbleField as l,widgetWidthOptionConfig as i,isShowOptionConfig as a,isNotFoldOptionConfig as _,isEditOptionConfig as o,isNullOptionConfig as s,isVisibleOptionConfig as m,rowsOptionConfig as n}from"../constants/index.js";import"../../../form-render/index.js";import{useFieldNormalize as r}from"../../../form-render/src/hooks/useFieldNormalize.js";const{FieldNormalizeWaterfallHook:d}=r();function E(){const r=new Map([[l.NAME,()=>({alias:"名称",elem_width:6,is_null:"0",html_type:"INPUT"})],[l.NOTES,()=>({alias:"问号提示",elem_width:6,html_type:"INPUT",is_empty:"0"})],[l.DEFAULT_VALUE,(l,i)=>{const a=d.call(Object.assign({},null==l?void 0:l.originalSetting,i),{});return{alias:"默认值",elem_width:6,html_type:"INPUT",is_empty:"0",componentProps:e(a.componentProps,["class","style","disabled"]),...t(a,["html_type","validate","option","multi_select","multi_select_value","wordbook","open","close","date_format","step_length","urlConfig","autograph","defined_error_msg","free_entry","validator","allowSlash","is_allow_check_mid","allow_check_mid_level"])}}],[l.LAYOUT_WIDTH_ENUM,()=>({alias:"宽度",fieldType:"number",html_type:"SELECT",elem_width:6,...i()})],[l.DESC,()=>({alias:"说明文本",elem_width:6,html_type:"INPUT",is_empty:"0",validate:{max_length:30}})],[l.DEFAULT_EXPAND,()=>({alias:"是否默认展开",html_type:"SWITCH",elem_width:6,...a()})],[l.FOLD,()=>({alias:"是否可折叠",html_type:"SWITCH",elem_width:6,..._()})],[l.EDITABLE,e=>({alias:"是否可编辑",html_type:"SWITCH",elem_width:6,is_edit:(null==e?void 0:e.editableDisabled)?"0":"1",...o()})],[l.REQUIRED,e=>({alias:"是否必填",html_type:"SWITCH",elem_width:6,is_edit:(null==e?void 0:e.requiredDisabled)?"0":"1",...s()})],[l.SHOW,e=>({alias:"是否显示",html_type:"SWITCH",elem_width:6,is_show:(null==e?void 0:e.__isCombinationChild)?"1":"0",...m()})],[l.ROWS,()=>({alias:"高度",elem_width:6,remark:"默认为3行高度,可调整为1-10行高度",default_val:3,is_empty:"0",html_type:"SELECT",...n()})]]);function E(e,t,l){return e.map((e=>{var i,a;return{...null!=(a=null==(i=r.get(e))?void 0:i(t,l))?a:{},val_key:e}}))}const p=new Map([["LINE_BAR",[l.NAME,l.LAYOUT_WIDTH_ENUM,l.NOTES,l.DEFAULT_EXPAND,l.FOLD]],...["NEWLINE","COMPLEX","COMBINATION"].map((e=>[e,[l.NAME,l.LAYOUT_WIDTH_ENUM]]))]),h=[l.NAME,l.DEFAULT_VALUE,l.LAYOUT_WIDTH_ENUM,l.DESC,l.NOTES,l.EDITABLE,l.REQUIRED,l.SHOW];return{generateFieldListByKeys:E,generateFieldListByFormConfigItem:function(e,t){var i;const a=p.get(e.type)||h;return"TEXTAREA"===(t?t.html_type:null==(i=e.originalSetting)?void 0:i.html_type)&&a.splice(3,0,l.ROWS),E(a,e,t)}}}export{E as useConfigurationField};
@@ -563,7 +563,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
563
563
  onKeydown: (event: KeyboardEvent) => Promise<void>;
564
564
  clearSpan: (uuid: string) => void;
565
565
  exposeEvent: {
566
- validate(path?: string, { force }?: {
566
+ validate(path?: string | ((field: import("@formily/core/esm/models/Field").Field<any, any, any, any>) => boolean), { force }?: {
567
567
  force?: boolean | undefined;
568
568
  }): Promise<void>;
569
569
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -558,7 +558,7 @@ declare const _default: import("vue").DefineComponent<{
558
558
  onKeydown: (event: KeyboardEvent) => Promise<void>;
559
559
  clearSpan: (uuid: string) => void;
560
560
  exposeEvent: {
561
- validate(path?: string, { force }?: {
561
+ validate(path?: string | ((field: Field<any, any, any, any>) => boolean), { force }?: {
562
562
  force?: boolean | undefined;
563
563
  }): Promise<void>;
564
564
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -561,7 +561,7 @@ declare const _default: import("vue").DefineComponent<{}, {
561
561
  onKeydown: (event: KeyboardEvent) => Promise<void>;
562
562
  clearSpan: (uuid: string) => void;
563
563
  exposeEvent: {
564
- validate(path?: string, { force }?: {
564
+ validate(path?: string | ((field: import("../../../../es/components/form-render").Field<any, any, any, any>) => boolean), { force }?: {
565
565
  force?: boolean | undefined;
566
566
  }): Promise<void>;
567
567
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as r,computed as o,ref as l,onUnmounted as t,createVNode as n,mergeProps as i}from"vue";import{arrayed as a,widthAppend as s}from"../../../../../shared/utils/index.js";import{isVoidField as m}from"@formily/core";import{observe as u,autorun as d}from"@formily/reactive";import{connect as f,mapProps as p}from"@formily/vue";import{useDebounceFn as v}from"@vueuse/core";import{isString as c,isArray as b,isFunction as y}from"lodash-es";import{NFormItem as _}from"naive-ui";import g from"../../../../annotation-edit/index.js";import"../../../index.js";import x from"../tooltipMessage.vue.js";import{InjectionFormUUID as j,InjectionFormGraph as I,InjectionAnnotation as k,InjectionFormGlobalProps as F}from"../../constants/index.js";import{useComplexOptionsSpan as h}from"../../hooks/useComplexOptions.js";import{dotEscape as R}from"../../utils/schema.js";import{validateMessageParser as L}from"../../utils/index.js";import{useFormField as q}from"../../hooks/useFormField.js";const K=f(e({name:"FormRenderItem",props:{label:String,propertyKey:String,remark:String,span:{type:Number,default:6},suffixFields:{type:Array},labelRender:Function,annotation:{},fieldItem:{type:Object}},setup(e,{slots:a}){const{field:f,fieldKey:p,fieldAddress:c}=q(),L=r(j),K=o((()=>R(`${L}-${c.value}`))),S=l(!1);if(m(f.value)&&b(e.suffixFields)){const o=r(I);t(u(o,v((()=>{m(f.value)&&b(e.suffixFields)&&(S.value=e.suffixFields.some((e=>{const r=f.value.form.query(e).take();return r&&Reflect.get(r,"required")})))}),100)))}else t(d((()=>{S.value=Reflect.get(f.value,"required")})));const A=r(k),E=o({get(){var r,o;return null!=(o=null==(r=A.value)?void 0:r[e.propertyKey])?o:""},set(r){A.value={property:e.propertyKey,value:r}}});const O=o((()=>A.value&&!1!==e.annotation)),V=o((()=>e.label&&" "!==e.label)),$=o((()=>{let r=0;return O.value&&(r+=18),e.remark&&(r+=18),r})),w=r(F,{}),C=o((()=>{var r;const o=null==(r=e.fieldItem)?void 0:r.bordered;return null==o?w.bordered:o}));function M(){return V.value?n("section",{class:"form-render__formItemLabel"},[n("span",{class:"form-render__formItemLabel--text",style:{marginRight:s($.value)}},[y(e.labelRender)?e.labelRender(e.label):e.label]),$.value?n("section",{class:"form-render__formItemLabel--operation"},[e.remark?n("div",{class:"form-render__formItemLabel--tooltip"},[n(x,{message:e.remark},null)]):null,O.value?n(g,{class:"form-render__formItemLabel--annotation",modelValue:E.value,"onUpdate:modelValue":e=>E.value=e},null):null]):null]):null}const{getSpan:N}=h();return()=>n(_,i({class:["form-render__formItem",{"form-render--no-border":!C.value,"form-render--underline":"underline"===C.value}],style:{"--form-item-column":N(L,f.value.address,!1)+e.span}},{id:K.value,uuid:L,"widget-type":f.value.componentType,"field-key":R(p.value),"field-address":R(c.value),required:S.value}),{...a,label:M})}}),p({title:"label"},((e,r)=>{const o=m(r)?void 0:a(r.selfErrors).length?function(e,r){if(!c(r.defined_error_msg)||!r.defined_error_msg)return e.map((e=>L(e,r))).join(",");return L(r.defined_error_msg,r)}(a(r.selfErrors),e.fieldItem):void 0;return{...e,fieldItem:void 0,feedback:o,"validation-status":o?"error":void 0}})));export{K as FORM_ITEM};
1
+ import{defineComponent as e,inject as r,computed as l,ref as o,onUnmounted as t,createVNode as n,mergeProps as i}from"vue";import{arrayed as a,widthAppend as s}from"../../../../../shared/utils/index.js";import{isVoidField as m}from"@formily/core";import{observe as u,autorun as d}from"@formily/reactive";import{connect as f,mapProps as p}from"@formily/vue";import{useDebounceFn as v}from"@vueuse/core";import{isString as c,isArray as b,isFunction as y}from"lodash-es";import{NFormItem as _}from"naive-ui";import g from"../../../../annotation-edit/index.js";import"../../../index.js";import x from"../tooltipMessage.vue.js";import{InjectionFormUUID as I,InjectionFormGraph as j,InjectionAnnotation as h,InjectionFormGlobalProps as k}from"../../constants/index.js";import{useComplexOptionsSpan as F}from"../../hooks/useComplexOptions.js";import{dotEscape as R}from"../../utils/schema.js";import{validateMessageParser as L}from"../../utils/index.js";import{useFormField as q}from"../../hooks/useFormField.js";const K=f(e({name:"FormRenderItem",props:{label:String,propertyKey:String,remark:String,span:{type:Number,default:6},suffixFields:{type:Array},labelRender:Function,annotation:{},fieldItem:{type:Object}},setup(e,{slots:a}){const{field:f,fieldKey:p,fieldAddress:c}=q(),L=r(I),K=l((()=>R(`${L}-${c.value}`))),S=o(!1);if(m(f.value)&&b(e.suffixFields)){const l=r(j);t(u(l,v((()=>{m(f.value)&&b(e.suffixFields)&&(S.value=e.suffixFields.some((e=>{const r=f.value.form.query(e).take();return r&&Reflect.get(r,"required")})))}),100)))}else t(d((()=>{S.value=Reflect.get(f.value,"required")})));const A=r(h),E=l({get(){var r,l;return null!=(l=null==(r=A.value)?void 0:r[e.propertyKey])?l:""},set(r){A.value={property:e.propertyKey,value:r}}});const M=l((()=>A.value&&!1!==e.annotation)),O=l((()=>e.label&&" "!==e.label)),V=l((()=>{let r=0;return M.value&&(r+=18),e.remark&&(r+=18),r})),$=r(k,{}),w=l((()=>{var r;const l=null==(r=e.fieldItem)?void 0:r.bordered;return null==l?$.bordered:l}));function C(){return O.value?n("section",{class:"form-render__formItemLabel"},[n("span",{class:"form-render__formItemLabel--text",style:{marginRight:s(V.value)}},[y(e.labelRender)?e.labelRender(e.label):e.label]),V.value?n("section",{class:"form-render__formItemLabel--operation"},[e.remark?n("div",{class:"form-render__formItemLabel--tooltip"},[n(x,{message:e.remark},null)]):null,M.value?n(g,{class:"form-render__formItemLabel--annotation",modelValue:E.value,"onUpdate:modelValue":e=>E.value=e},null):null]):null]):null}const{getSpan:N}=F();return()=>{return n(_,i({class:["form-render__formItem",{"form-render--no-border":!w.value,"form-render--underline":"underline"===w.value}],style:{"--form-item-column":"inner"===(null==(r=e.fieldItem)?void 0:r.childWidthMode)?e.span:N(L,f.value.address,!1)+e.span}},{id:K.value,uuid:L,"widget-type":f.value.componentType,"field-key":R(p.value),"field-address":R(c.value),required:S.value}),{...a,label:C});var r}}}),p({title:"label"},((e,r)=>{const l=m(r)?void 0:a(r.selfErrors).length?function(e,r){if(!c(r.defined_error_msg)||!r.defined_error_msg)return e.map((e=>L(e,r))).join(",");return L(r.defined_error_msg,r)}(a(r.selfErrors),e.fieldItem):void 0;return{...e,fieldItem:void 0,feedback:l,"validation-status":l?"error":void 0}})));export{K as FORM_ITEM};
@@ -64,6 +64,10 @@ export declare const RADIO: import("vue").DefineComponent<{
64
64
  type: PropType<"checked" | "all">;
65
65
  default: string;
66
66
  };
67
+ childWidthMode: {
68
+ type: PropType<"inner" | "outer">;
69
+ default: string;
70
+ };
67
71
  clearable: BooleanConstructor;
68
72
  onChange: {};
69
73
  }, () => 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<{
@@ -129,6 +133,10 @@ export declare const RADIO: import("vue").DefineComponent<{
129
133
  type: PropType<"checked" | "all">;
130
134
  default: string;
131
135
  };
136
+ childWidthMode: {
137
+ type: PropType<"inner" | "outer">;
138
+ default: string;
139
+ };
132
140
  clearable: BooleanConstructor;
133
141
  onChange: {};
134
142
  }>> & {
@@ -141,6 +149,7 @@ export declare const RADIO: import("vue").DefineComponent<{
141
149
  lazyRequest: boolean;
142
150
  requestCache: boolean;
143
151
  childFieldStrategy: "checked" | "all";
152
+ childWidthMode: "inner" | "outer";
144
153
  clearable: boolean;
145
154
  }>;
146
155
  export declare const CHECKBOX: import("vue").DefineComponent<{
@@ -206,6 +215,10 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
206
215
  type: PropType<"checked" | "all">;
207
216
  default: string;
208
217
  };
218
+ childWidthMode: {
219
+ type: PropType<"inner" | "outer">;
220
+ default: string;
221
+ };
209
222
  clearable: BooleanConstructor;
210
223
  onChange: {};
211
224
  }, () => 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<{
@@ -271,6 +284,10 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
271
284
  type: PropType<"checked" | "all">;
272
285
  default: string;
273
286
  };
287
+ childWidthMode: {
288
+ type: PropType<"inner" | "outer">;
289
+ default: string;
290
+ };
274
291
  clearable: BooleanConstructor;
275
292
  onChange: {};
276
293
  }>> & {
@@ -283,5 +300,6 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
283
300
  lazyRequest: boolean;
284
301
  requestCache: boolean;
285
302
  childFieldStrategy: "checked" | "all";
303
+ childWidthMode: "inner" | "outer";
286
304
  clearable: boolean;
287
305
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,createVNode as o,isVNode as a}from"vue";import l from"../../../../../shared/components/CancelRadio/CancelRadio.js";import{connect as r,mapProps as i}from"@formily/vue";import{isNumber as u}from"lodash-es";import{NSpace as n,NRadioGroup as p,NCheckbox as s,NCheckboxGroup as c}from"naive-ui";import"../../../index.js";import{useComplexOptions as d}from"../../hooks/useComplexOptions.js";import"../../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"date-fns";import{assignUpdateValue as m,createVisitedSetter as v}from"../../utils/schema.js";import{useUrlConfigOptions as f,useAutographOptions as y}from"../../hooks/useFormRenderOptions.js";import{useCommonInjection as h}from"../../hooks/useCommonInjection.js";import{useFormField as b}from"../../hooks/useFormField.js";function j(l,r,i){return e({name:l,props:{value:{type:[String,Number,Object,Array]},options:{type:Array,default:()=>[]},urlConfig:{type:Object},autograph:{type:String},lazyRequest:{type:Boolean,default:!1},requestCache:{type:Boolean,default:!0},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},wordbook:{type:Object},vertical:{type:Boolean,default:!1},childFieldStrategy:{type:String,default:"checked"},clearable:Boolean,onChange:{}},emits:["update:value"],setup(e,{emit:l}){const{field:p}=b();const s=t({get(){return t=e.value,u(t)?t+"":t;var t},set(e){l("update:value",e)}}),{renderComplexOption:c}=d(e,s),{labelKey:m,valueKey:j,fullOptions:g}=e.urlConfig?f(e,s):y(e,s),{injectValueBindKey:C,injectValueValidate:S}=h();S(s);const k=C(s);function F(){s.value=null}return()=>o(r,{key:k.value,value:s.value,"onUpdate:value":e=>s.value=e,onClick:v(p)},{default:()=>[o(n,{vertical:e.vertical,"vertical-space":e.vertical},{default:()=>{var t;return[null==(t=g.value)?void 0:t.map((t=>{let l;return o(i,{key:t[j.value],value:t[j.value],disabled:t.disabled,currentValue:s.value,cancelable:e.clearable,onCancel:F},"function"==typeof(r=l=c({value:s.value,option:t,valueKey:j.value,labelKey:m.value,childFieldStrategy:e.childFieldStrategy}))||"[object Object]"===Object.prototype.toString.call(r)&&!a(r)?l:{default:()=>[l]});var r}))]}})]})}})}const g=r(j("FormRadio",p,l),i({dataSource:"options"},m)),C=r(j("FormCheckbox",c,s),i({dataSource:"options"},m));export{C as CHECKBOX,g as RADIO};
1
+ import{defineComponent as e,computed as t,createVNode as o,isVNode as l}from"vue";import a from"../../../../../shared/components/CancelRadio/CancelRadio.js";import{connect as i,mapProps as r}from"@formily/vue";import{isNumber as n,isEmpty as u,isArray as d}from"lodash-es";import{NRadioGroup as s,NCheckboxGroup as c,NCheckbox as p}from"naive-ui";import"../../../index.js";import{useComplexOptions as m}from"../../hooks/useComplexOptions.js";import"../../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"date-fns";import{assignUpdateValue as f,createVisitedSetter as v}from"../../utils/schema.js";import{useUrlConfigOptions as y,useAutographOptions as h}from"../../hooks/useFormRenderOptions.js";import{useCommonInjection as j}from"../../hooks/useCommonInjection.js";import{useFormField as b}from"../../hooks/useFormField.js";function g(a,i,r){return e({name:a,props:{value:{type:[String,Number,Object,Array]},options:{type:Array,default:()=>[]},urlConfig:{type:Object},autograph:{type:String},lazyRequest:{type:Boolean,default:!1},requestCache:{type:Boolean,default:!0},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},wordbook:{type:Object},vertical:{type:Boolean,default:!1},childFieldStrategy:{type:String,default:"checked"},childWidthMode:{type:String,default:"outer"},clearable:Boolean,onChange:{}},emits:["update:value"],setup(e,{emit:a}){const{field:s}=b();const c=t({get(){return t=e.value,n(t)?t+"":t;var t},set(e){a("update:value",e)}}),{renderComplexOption:p}=m(e,c),{labelKey:f,valueKey:g,fullOptions:x}=e.urlConfig?y(e,c):h(e,c),{injectValueBindKey:C,injectValueValidate:F}=j();F(c);const S=C(c);function k(){c.value=null}function O(t){let a;const i={display:"flex",alignItems:"center"};if(t.__spanPercent&&"inner"===e.childWidthMode){const e=`${t.__spanPercent}%`;i.maxWidth=e,function(e,t){return!u(t.childrenFields)&&(d(e)?e.includes(t[g.value]):e===t[g.value])}(c.value,t)&&(i.width=e)}return o(r,{key:t[g.value],value:t[g.value],disabled:t.disabled,currentValue:c.value,cancelable:e.clearable,onCancel:k,style:i},"function"==typeof(n=a=p({value:c.value,option:t,valueKey:g.value,labelKey:f.value,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode}))||"[object Object]"===Object.prototype.toString.call(n)&&!l(n)?a:{default:()=>[a]});var n}return()=>{const t=x.value.map((e=>{var t;const o=null==(t=e.childrenFields)?void 0:t.reduce(((e,t)=>e+ +(t.elem_width||3)),0);return{...e,__spanPercent:(o||0)/12*100}})),l={display:"flex",flexDirection:e.vertical?"column":"row",flexWrap:"wrap",justifyItems:"flex-start",alignItems:"center",width:"100%"};return o(i,{key:S.value,value:c.value,"onUpdate:value":e=>c.value=e,onClick:v(s),style:{width:"100%"}},{default:()=>[o("section",{style:l},[t.map(O)])]})}}})}const x=i(g("FormRadio",s,a),r({dataSource:"options"},f)),C=i(g("FormCheckbox",c,p),r({dataSource:"options"},f));export{C as CHECKBOX,x as RADIO};
@@ -10,12 +10,13 @@ export declare function useComplexOptions(props: {
10
10
  options: AnyObject[];
11
11
  value: unknown;
12
12
  }, valueRef: Ref): {
13
- renderComplexOption: ({ value, option, valueKey, labelKey, childFieldStrategy, renderLabel, attrs }: {
13
+ renderComplexOption: ({ value, option, valueKey, labelKey, childFieldStrategy, childWidthMode, renderLabel, attrs }: {
14
14
  value: unknown;
15
15
  option: FormOptionItem;
16
16
  valueKey?: string | undefined;
17
17
  labelKey?: string | undefined;
18
18
  childFieldStrategy: 'checked' | 'all';
19
+ childWidthMode?: "inner" | "outer" | undefined;
19
20
  renderLabel?: boolean | undefined;
20
21
  attrs?: AnyObject | undefined;
21
22
  }) => any[];
@@ -1 +1 @@
1
- import{reactive as e,computed as t,createVNode as r,mergeProps as n,defineComponent as l,inject as o,provide as i,watch as s,onUnmounted as a,onMounted as c,withModifiers as u}from"vue";import{checkInSetupEnv as d}from"../../../../shared/utils/index.js";import{useField as p,useForm as m,RecursionField as f}from"@formily/vue";import{isArray as v,noop as h}from"lodash-es";import"../../index.js";import{InjectionFormUUID as y,InjectionBusinessCollector as g}from"../constants/index.js";import{renderDescOption as b}from"../utils/index.js";import{useFieldListAdaptor as F}from"./useFieldListAdaptor.js";import{createObjSchema as x}from"../utils/schema.js";const j=e(new Map);function S(e,t,r=0){j.set(e,j.get(e)||{});j.get(e)[t+""]=r}function O(e,t,r=!0){const n=j.get(e);return n?Object.entries(n).reduce(((e,[n,l])=>r&&n===`${t}`||n.startsWith(`${t}.`)?e+l:e),0):0}function $(e,t){const r=j.get(e);r&&Reflect.deleteProperty(r,t+"")}function k(e){j.delete(e)}const E=l({props:{fieldItems:{type:Array,default:()=>[]},childFieldStrategy:{type:String,default:"checked"},name:{type:String,required:!0}},setup(e){const l=o(y),d=o(g),v=p(),b=o(l+"_virtualParent",""),j=`${b?b+".":""}${v.value.address}`;function k(e){return`${j}.${e}`}i(l+"_virtualParent",j);const{schemaAdaptor:E}=F(d);function K(t){var r,n;return Object.assign(t,{"x-decorator-props":{...t["x-decorator-props"],labelPlacement:"left",showFeedback:!1},"x-component-props":{...t["x-component-props"],childFieldStrategy:null!=(n=null==(r=t["x-component-props"])?void 0:r.childFieldStrategy)?n:e.childFieldStrategy,size:"small"}})}const P=t((()=>{const t=E(e.fieldItems);return Object.values(t).forEach(K),x(t)}));s(P,(()=>{return e=P.value,void Object.values(e.properties||{}).forEach((e=>{var t;S(l,k(e.name),null==(t=null==e?void 0:e["x-decorator-props"])?void 0:t.span)}));var e}),{immediate:!0});const _=m();function I(){return e.fieldItems.map((e=>_.value.query(e.val_key).take()))}a((()=>{var e;I().forEach((e=>{e&&e.setDisplay("none")})),e=P.value,Object.values(e.properties||{}).forEach((e=>{$(l,k(e.name))}))})),c((()=>{I().forEach((e=>{e&&e.setDisplay("visible")}))}));const w=u(h,["stop"]),A=["onClick","onKeydown","onKeyup","onKeypress"].reduce(((e,t)=>(e[t]=w,e)),{});return()=>{return r("section",n({class:"form-render__labelField",style:{"--column":(e=P.value,Object.values(e.properties||{}).reduce(((e,t)=>e+O(l,k(t.name))),0))}},A),[r(f,{basePath:".",schema:P.value},null)]);var e}}});function K(e,l){d();const o=t((()=>e.options.some((e=>v(e.childrenFields)&&e.childrenFields.length))));function i(e,t,r="value"){if(v(e)?e.includes(t[r]):e===t[r])return v(t.childrenFields)&&t.childrenFields.length}return{renderComplexOption:function({value:e,option:t,valueKey:l="value",labelKey:s="label",childFieldStrategy:a,renderLabel:c=!0,attrs:u}){return[c?t.desc?b(t[s],t):t[s]:null,o.value&&("all"===a||i(e,t,l))?r(E,n({fieldItems:t.childrenFields,name:t[l],childFieldStrategy:a},u),null):null]},valueRef:l,hasComplexOption:o}}function P(){return{getSpan:O,setSpan:S,deleteSpan:$,clearSpan:k}}export{K as useComplexOptions,P as useComplexOptionsSpan};
1
+ import{reactive as e,computed as t,createVNode as r,mergeProps as l,defineComponent as n,inject as o,provide as i,watch as a,onUnmounted as s,onMounted as d,withModifiers as c}from"vue";import{checkInSetupEnv as u}from"../../../../shared/utils/index.js";import{useField as p,useForm as m,RecursionField as h}from"@formily/vue";import{isArray as f,noop as v,isEmpty as y}from"lodash-es";import"../../index.js";import{InjectionFormUUID as g,InjectionBusinessCollector as x}from"../constants/index.js";import{renderDescOption as b}from"../utils/index.js";import{useFieldListAdaptor as F}from"./useFieldListAdaptor.js";import{createObjSchema as S}from"../utils/schema.js";const j=e(new Map);function O(e,t,r=0){j.set(e,j.get(e)||{});j.get(e)[t+""]=r}function M(e,t,r=!0){const l=j.get(e);return l?Object.entries(l).reduce(((e,[l,n])=>r&&l===`${t}`||l.startsWith(`${t}.`)?e+n:e),0):0}function W(e,t){const r=j.get(e);r&&Reflect.deleteProperty(r,t+"")}function $(e){j.delete(e)}const k=n({props:{fieldItems:{type:Array,default:()=>[]},childFieldStrategy:{type:String,default:"checked"},childWidthMode:{type:String,default:"outer"},name:{type:String,required:!0}},setup(e){const n=o(g),u=o(x),f=p(),y=o(n+"_virtualParent",""),b=`${y?y+".":""}${f.value.address}`;function j(e){return`${b}.${e}`}i(n+"_virtualParent",b);const{schemaAdaptor:$}=F(u);function k(t){var r,l,n,o;return Object.assign(t,{"x-decorator-props":{...t["x-decorator-props"],labelPlacement:"left",showFeedback:!1},"x-component-props":{...t["x-component-props"],childFieldStrategy:null!=(l=null==(r=t["x-component-props"])?void 0:r.childFieldStrategy)?l:e.childFieldStrategy,childWidthMode:null!=(o=null==(n=t["x-component-props"])?void 0:n.childWidthMode)?o:e.childWidthMode,size:"small"}})}const E=t((()=>{const t=$(e.fieldItems);return Object.values(t).forEach(k),S(t)}));a(E,(()=>{return e=E.value,void Object.values(e.properties||{}).forEach((e=>{var t;O(n,j(e.name),null==(t=null==e?void 0:e["x-decorator-props"])?void 0:t.span)}));var e}),{immediate:!0});const K=m();function P(){return e.fieldItems.map((e=>K.value.query(e.val_key).take()))}s((()=>{var e;P().forEach((e=>{e&&e.setDisplay("none")})),e=E.value,Object.values(e.properties||{}).forEach((e=>{W(n,j(e.name))}))})),d((()=>{P().forEach((e=>{e&&e.setDisplay("visible")}))}));const _=c(v,["stop"]),I=["onClick","onKeydown","onKeyup","onKeypress"].reduce(((e,t)=>(e[t]=_,e)),{});return()=>{return r("section",l({class:"form-render__labelField",style:{"--column":(e=E.value,Object.values(e.properties||{}).reduce(((e,t)=>e+M(n,j(t.name))),0)),flex:"1"}},I),[r(h,{basePath:".",schema:E.value},null)]);var e}}});function E(e,n){u();const o=t((()=>e.options.some((e=>f(e.childrenFields)&&e.childrenFields.length))));function i(e,t,r="value"){return!y(t.childrenFields)&&(f(e)?e.includes(t[r]):e===t[r])}return{renderComplexOption:function({value:e,option:t,valueKey:n="value",labelKey:a="label",childFieldStrategy:s,childWidthMode:d,renderLabel:c=!0,attrs:u}){return[c?t.desc?b(t[a],t):t[a]:null,o.value&&("all"===s||i(e,t,n))?r(k,l({fieldItems:t.childrenFields,name:t[n],childFieldStrategy:s,childWidthMode:d},u),null):null]},valueRef:n,hasComplexOption:o}}function K(){return{getSpan:M,setSpan:O,deleteSpan:W,clearSpan:$}}export{E as useComplexOptions,K as useComplexOptionsSpan};
@@ -1 +1 @@
1
- import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as n}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as i,formRenderLog as r}from"../utils/index.js";import{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as p,createLinebarId as a}from"../utils/schema.js";import{useFormValidator as l}from"./useFormValidator.js";import{transformDateFormat as c}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...n(o,["wordbook","autograph"])})}function d(e,o){Object.assign(e["x-component-props"],{...n(o,["urlConfig","wordbook"])})}function u(u){const{createValidatorSchema:f}=l(),x=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const n=f(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},_=e=>{var o,t,r,s,p;const a=x(e);e.urlConfig?d(a,e):e.autograph&&m(a,e);const l=!!e.__multiple,c="1"===e.allowModify;return Object.assign(a["x-component-props"],{multiple:l,options:e.option||(null==(o=e.componentProps)?void 0:o.options),allowModify:c,allowCreate:"1"===e.free_entry||!!a["x-component-props"].allowCreate||c,shouldSave:"1"===e.save_free_entry,showField:null!=(r=e.show_key)?r:null==(t=e.componentProps)?void 0:t.showField,maxTagCount:null!=(p=i(e.multi_select_value))?p:null==(s=a["x-component-props"])?void 0:s.maxTagCount,...n(e,["lazyRequest","requestCache"])}),l&&(a.type="array"),a},h=e=>{const o=x(e);return Object.assign(o["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,vertical:e.__vertical}),e.urlConfig?d(o,e):e.autograph&&m(o,e),o},g=e=>{const t=x(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},y=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:a(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),b=new Map([["LINEBAR",y],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=x(e);return Object.assign(o["x-component-props"],{...n(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=x(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=x(e),{decimal_length:t,validate:n,allowSlash:i}=e;return!0!==i&&"1"!==i||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:null!=t?t:null==n?void 0:n.decimal_length,whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",_],["REMOTE_SEARCH",_],["DATE",e=>{const o=x(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=x(e);return Object.assign(o["x-component-props"],{...n(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=x(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=x(e);return o.type="array",!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",h],["CHECKBOX",h],["SWITCH",e=>{const o=x(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close}),o}],["SLIDER",e=>{const o=x(e);return Object.assign(o["x-component-props"],{step:i(e.step_length),max:i(e.max_length),min:i(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=x(e);Array.isArray(e.properties)&&r("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?j(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],n(e,["wrapperStyle","display"])),o}]]),v=e=>{if(e.suffixConfig)return w(e);return(b.get(e.html_type)||g)(e)},w=o=>{if(!o.suffixConfig&&!o.prefixConfig)return v(o);const t=o.suffixConfig?e(o.suffixConfig):[],n=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],i=x(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:p(n),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...i["x-decorator-props"],showFeedback:!1,suffixFields:n.map((e=>e.val_key))},properties:j(n)}),i},{FieldNormalizeWaterfallHook:C,FieldListNormalizeWaterfallHook:O}=s();function j(o,n={column:9999}){let i=null;return O.call(t(o),n).reduce(((e,o,p)=>{var a;const l=null==(a=(o=C.call(o,n)).validate)?void 0:a.obj_type;return l&&u&&u.collect(l,t(o)),"LINEBAR"===o.html_type?(e[s(o)]=r(y(o),p),i=e[s(o)].properties={}):i?i[s(o)]=r(v(o),p):(i=null,e[s(o)]=r(v(o),p)),e}),{});function r(e,o){return e["x-index"]=o,e}function s(o){return o.suffixConfig?p([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:j}}export{u as useFieldListAdaptor};
1
+ import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as i}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as n,formRenderLog as r}from"../utils/index.js";import{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as p,createLinebarId as a}from"../utils/schema.js";import{useFormValidator as l}from"./useFormValidator.js";import{transformDateFormat as c}from"../utils/business.js";function d(e,o){Object.assign(e["x-component-props"],{...i(o,["wordbook","autograph"])})}function m(e,o){Object.assign(e["x-component-props"],{...i(o,["urlConfig","wordbook"])})}function u(u){const{createValidatorSchema:f}=l(),x=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const i=f(e);return i&&(t["x-validator"]=i),"0"===e.is_null&&(t.required=!0),t},_=e=>{var o,t,r,s,p;const a=x(e);e.urlConfig?m(a,e):e.autograph&&d(a,e);const l=!!e.__multiple,c="1"===e.allowModify;return Object.assign(a["x-component-props"],{multiple:l,options:e.option||(null==(o=e.componentProps)?void 0:o.options),allowModify:c,allowCreate:"1"===e.free_entry||!!a["x-component-props"].allowCreate||c,shouldSave:"1"===e.save_free_entry,showField:null!=(r=e.show_key)?r:null==(t=e.componentProps)?void 0:t.showField,maxTagCount:null!=(p=n(e.multi_select_value))?p:null==(s=a["x-component-props"])?void 0:s.maxTagCount,...i(e,["lazyRequest","requestCache"])}),l&&(a.type="array"),a},h=e=>{const o=x(e);return Object.assign(o["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode,vertical:e.__vertical}),e.urlConfig?m(o,e):e.autograph&&d(o,e),o},g=e=>{const t=x(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},y=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:a(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),b=new Map([["LINEBAR",y],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=x(e);return Object.assign(o["x-component-props"],{...i(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=x(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=x(e),{decimal_length:t,validate:i,allowSlash:n}=e;return!0!==n&&"1"!==n||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:null!=t?t:null==i?void 0:i.decimal_length,whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",_],["REMOTE_SEARCH",_],["DATE",e=>{const o=x(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=x(e);return Object.assign(o["x-component-props"],{...i(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=x(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=x(e);return o.type="array",!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",h],["CHECKBOX",h],["SWITCH",e=>{const o=x(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close}),o}],["SLIDER",e=>{const o=x(e);return Object.assign(o["x-component-props"],{step:n(e.step_length),max:n(e.max_length),min:n(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=x(e);Array.isArray(e.properties)&&r("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?j(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],i(e,["wrapperStyle","display"])),o}]]),v=e=>{if(e.suffixConfig)return w(e);return(b.get(e.html_type)||g)(e)},w=o=>{if(!o.suffixConfig&&!o.prefixConfig)return v(o);const t=o.suffixConfig?e(o.suffixConfig):[],i=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],n=x(o),r=i.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(n,{type:"void",name:p(i),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...n["x-decorator-props"],showFeedback:!1,suffixFields:i.map((e=>e.val_key))},properties:j(i)}),n},{FieldNormalizeWaterfallHook:C,FieldListNormalizeWaterfallHook:O}=s();function j(o,i={column:9999}){let n=null;return O.call(t(o),i).reduce(((e,o,p)=>{var a;const l=null==(a=(o=C.call(o,i)).validate)?void 0:a.obj_type;return l&&u&&u.collect(l,t(o)),"LINEBAR"===o.html_type?(e[s(o)]=r(y(o),p),n=e[s(o)].properties={}):n?n[s(o)]=r(v(o),p):(n=null,e[s(o)]=r(v(o),p)),e}),{});function r(e,o){return e["x-index"]=o,e}function s(o){return o.suffixConfig?p([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:j}}export{u as useFieldListAdaptor};
@@ -1,5 +1,5 @@
1
1
  import { AnyObject } from '../../../../../es/shared/types';
2
- import { Form, IFieldState } from '@formily/core';
2
+ import { Field, Form, IFieldState } from '@formily/core';
3
3
  import { Ref } from 'vue';
4
4
  import { FieldItem, FormItemDepsCollector, FormRenderProps } from '../../../../../es/components/form-render';
5
5
  export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID, getFieldList, formItemDepsCollector }: {
@@ -9,7 +9,7 @@ export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID,
9
9
  getFieldList: () => FieldItem[];
10
10
  formItemDepsCollector: FormItemDepsCollector;
11
11
  }): {
12
- validate(path?: string, { force }?: {
12
+ validate(path?: string | ((field: Field) => boolean), { force }?: {
13
13
  force?: boolean | undefined;
14
14
  }): Promise<void>;
15
15
  getFormValues(needCombineExtendKey?: boolean): any;
@@ -1 +1 @@
1
- import{arrayed as e,findAncestor as t}from"../../../../shared/utils/index.js";import{isField as r}from"@formily/core";import{Path as o}from"@formily/path";import{isObject as i}from"@vue/shared";import{promiseTimeout as n}from"@vueuse/shared";import{isArray as a,isString as s,isFunction as m}from"lodash-es";import{nextTick as f}from"vue";import"../../index.js";import{FormItemLineBarDepKeyPrepend as u,NESTED_FORM_ITEM_TYPE as l}from"../constants/index.js";import{queryDecoratorByAddress as d,queryInput as c,queryDecoratorByFieldKey as p,findNextWidget as g}from"../utils/dom.js";import{validateMessageParser as v,combineExtendKey as y,splitExtendKey as h}from"../utils/index.js";import{getParentLinebar as x}from"../utils/schema.js";function I({formModel:t,formRenderRef:n,formUUID:m,getFieldList:l,formItemDepsCollector:g}){return{validate(o="*",{force:f}={}){const u=[];f&&t.setFieldState(o,(e=>{"visible"===e.display&&"editable"!==e.pattern&&r(e)&&(u.push({pattern:e.pattern,state:e}),e.pattern="editable")}));const l=t.validate(o).catch((e=>Promise.reject(Array.isArray(e)?e.reduce(p,[]):e)));return f&&u.forEach((({pattern:e,state:t})=>t.pattern=e)),l;function p(t,r){if(!i(r))return t;let o=!1;return a(r.messages)&&r.messages.forEach((r=>{i(r)&&(t.push(...e(r).map(g)),o=!0)})),!o&&t.push(g(r)),t}function g(e){if(e.decoratorElement)return e;const r=t.query(e.path),o=r.get("title"),a=e.messages.map((e=>function(e,t){if(!t||!i(t.fieldItem))return e;const r=t.fieldItem.defined_error_msg;return v(r&&s(r)?r:e,t.fieldItem)}(e,r.get("decoratorProps")))),f=d(e.address,n.value,m);return{...e,messages:a,title:o,decoratorElement:f,...c(f)}}},getFormValues(e=!0){let r=t.getFormState().values;return e&&(r=y(l(),r)),r},setFormValues(e,i=!0,n=!0){i&&(e=h(l(),e)),t.setFieldState("*",(t=>{r(t)&&(n||o.existIn(e,t.path))&&(t.value=o.getIn(e,t.path))}))},setFieldState(e,r){t.setFieldState(e,r)},resetFields:(e="*")=>t.reset(e),queryWidget:async e=>n.value?await async function(e,t,r){if(!n.value)return a();const o=p(e,t,m);if(o)return a(o);const i=x(e,r);return i?(g.trigger(u+i,!0),await f(),a(p(e,t,m))):a();function a(e){return{decoratorElement:e,...c(e)}}}(e,n.value,l()):null}}function F({props:e,formRenderRef:r,formModel:o}){return{onKeydown:async function i(a){var s;if(e.enterToNextWidget&&a.target){if("TEXTAREA"===a.target.tagName&&!a.ctrlKey)return;a.preventDefault()}if(await n(0),Reflect.get(a,"stopCapture")||!e.enterToNextWidget||!r.value)return;const f=t(a.target,(e=>e.classList.contains("form-render__formItem")));if(!f)return;const u=`.form-render__formItem${l.map((e=>`:not([widget-type=${e}])`)).join("")}`,d=Array.from(r.value.querySelectorAll(u)),c=d.findIndex((e=>e.id===f.id));if(!~c)return;const{widget:p,field:v}=g(d,c,a.target);if(p)if(m(e.enterToNextWidget)){const t=v&&o.query(v).take();!t||e.enterToNextWidget(null==(s=t.decoratorProps)?void 0:s.fieldItem)?y():i({target:p})}else y();async function y(){await n(0),p.focus()}}}}export{F as useFormDomEvent,I as useFormExposeEvent};
1
+ import{arrayed as e,findAncestor as t}from"../../../../shared/utils/index.js";import{isField as r}from"@formily/core";import{Path as o}from"@formily/path";import{isObject as i}from"@vue/shared";import{promiseTimeout as n}from"@vueuse/shared";import{isFunction as s,isArray as a,isString as f}from"lodash-es";import{nextTick as m}from"vue";import"../../index.js";import{FormItemLineBarDepKeyPrepend as l,NESTED_FORM_ITEM_TYPE as u}from"../constants/index.js";import{queryDecoratorByAddress as d,queryInput as c,queryDecoratorByFieldKey as p,findNextWidget as g}from"../utils/dom.js";import{validateMessageParser as h,combineExtendKey as v,splitExtendKey as y}from"../utils/index.js";import{getParentLinebar as x}from"../utils/schema.js";function I({formModel:t,formRenderRef:n,formUUID:u,getFieldList:g,formItemDepsCollector:I}){return{validate(o="*",{force:m}={}){if(s(o)){const e=Object.entries(t.fields).reduce(((e,[t,r])=>(o(r)&&e.push(t),e)),[]);if(!e.length)return Promise.resolve();o=e.length?`*(${e.join(",")})`:"*"}const l=[];m&&t.setFieldState(o,(e=>{"visible"===e.display&&"editable"!==e.pattern&&r(e)&&(l.push({pattern:e.pattern,state:e}),e.pattern="editable")}));const p=t.validate(o).catch((e=>Promise.reject(Array.isArray(e)?e.reduce(g,[]):e)));return m&&l.forEach((({pattern:e,state:t})=>t.pattern=e)),p;function g(t,r){if(!i(r))return t;let o=!1;return a(r.messages)&&r.messages.forEach((r=>{i(r)&&(t.push(...e(r).map(v)),o=!0)})),!o&&t.push(v(r)),t}function v(e){if(e.decoratorElement)return e;const r=t.query(e.path),o=r.get("title"),s=e.messages.map((e=>function(e,t){if(!t||!i(t.fieldItem))return e;const r=t.fieldItem.defined_error_msg;return h(r&&f(r)?r:e,t.fieldItem)}(e,r.get("decoratorProps")))),a=d(e.address,n.value,u);return{...e,messages:s,title:o,decoratorElement:a,...c(a)}}},getFormValues(e=!0){let r=t.getFormState().values;return e&&(r=v(g(),r)),r},setFormValues(e,i=!0,n=!0){i&&(e=y(g(),e)),t.setFieldState("*",(t=>{r(t)&&(n||o.existIn(e,t.path))&&(t.value=o.getIn(e,t.path))}))},setFieldState(e,r){t.setFieldState(e,r)},resetFields:(e="*")=>t.reset(e),queryWidget:async e=>n.value?await async function(e,t,r){if(!n.value)return s();const o=p(e,t,u);if(o)return s(o);const i=x(e,r);return i?(I.trigger(l+i,!0),await m(),s(p(e,t,u))):s();function s(e){return{decoratorElement:e,...c(e)}}}(e,n.value,g()):null}}function j({props:e,formRenderRef:r,formModel:o}){return{onKeydown:async function i(a){var f;if(e.enterToNextWidget&&a.target){if("TEXTAREA"===a.target.tagName&&!a.ctrlKey)return;a.preventDefault()}if(await n(0),Reflect.get(a,"stopCapture")||!e.enterToNextWidget||!r.value)return;const m=t(a.target,(e=>e.classList.contains("form-render__formItem")));if(!m)return;const l=`.form-render__formItem${u.map((e=>`:not([widget-type=${e}])`)).join("")}`,d=Array.from(r.value.querySelectorAll(l)),c=d.findIndex((e=>e.id===m.id));if(!~c)return;const{widget:p,field:h}=g(d,c,a.target);if(p)if(s(e.enterToNextWidget)){const t=h&&o.query(h).take();!t||e.enterToNextWidget(null==(f=t.decoratorProps)?void 0:f.fieldItem)?v():i({target:p})}else v();async function v(){await n(0),p.focus()}}}}export{j as useFormDomEvent,I as useFormExposeEvent};
@@ -170,6 +170,7 @@ export declare type FieldItem = {
170
170
  slots: Record<string, (...args: unknown[]) => unknown>;
171
171
  wrapperStyle: CSSProperties | Record<string, string>;
172
172
  childFieldStrategy?: 'checked' | 'all';
173
+ childWidthMode?: 'inner' | 'outer';
173
174
  /**
174
175
  * 自定义校验规则
175
176
  * @param value 表单当前控件的值
@@ -31,11 +31,11 @@ export declare type FormRenderExpose = {
31
31
  formModel: Form;
32
32
  /**
33
33
  * @desc 触发表单校验
34
- * @param {string} path 目标路径, 支持Path语法
34
+ * @param {string|((field:Field)=>boolean)} path 目标路径, 支持Path语法
35
35
  * @param {{force?:boolean}} options 校验选项, force代表强制校验不可编辑项
36
36
  * @return {void | Promise<Object[]>}
37
37
  */
38
- validate(path?: string, options?: {
38
+ validate(path?: string | ((field: Field) => boolean), options?: {
39
39
  force?: boolean;
40
40
  }): Promise<unknown>;
41
41
  /**
@@ -1 +1 @@
1
- .annotation-edit{align-items:center;color:var(--c-primary-color);cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:var(--c-primary-color);filter:hue-rotate(140deg)}.annotation-edit__icon{align-items:center;display:inline-flex}.annotation-edit__textarea{min-width:200px}.annotation-edit__footer{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;opacity:.5}.annotation-edit__footer>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-edit__footer>div:first-of-type{min-width:30%}.recommend-search__menu{min-height:100px}.recommend-search__menuRecommendList{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.recommend-search__menuRecommendList .n-tag{cursor:pointer}.recommend-search__recentRecommend{margin-bottom:8px}.recommend-search__recentRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__recentRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__commonRecommend{margin-bottom:8px}.recommend-search__commonRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__commonRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__option{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:32px;justify-content:space-between;padding:0 8px}.recommend-search__optionText{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recommend-search__option.is-active{color:var(--n-color)!important}.recommend-search__option.is-active .n-icon{font-size:20px}.recommend-search__option:hover{background:rgba(0,0,0,.03)}.recommend-search__optionContainer{margin:-8px -10px}.recommend-search__empty{align-items:center;color:rgba(0,0,0,.3);display:flex;height:100px;justify-content:center}.search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;min-width:100%;padding:0 8px 0 16px;width:fit-content}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{white-space:nowrap}.search-cascader__optionText--active{color:var(--c-primary-color)}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.form-render__wrapper{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));max-height:var(--form-height);overflow-y:auto;position:relative}.form-render__formItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column));position:relative}.form-render__formItem .n-date-picker,.form-render__formItem .n-input-number{width:100%}.form-render__formItemLabel{align-items:center;display:inline-flex;justify-content:space-between;position:relative}.form-render__formItemLabel--operation{align-items:center;display:flex;gap:2px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.form-render__formItemLabel--tooltip{font-size:0;line-height:1;width:16px}.form-render__formItemLabel--text{white-space:nowrap}.form-render__formItem .n-form-item-label{display:inline-flex}.form-render__formItem .n-form-item-label [annotation-hover-show=true]{visibility:hidden}.form-render__formItem .n-form-item-label:hover [annotation-hover-show=true]{visibility:visible}.form-render__linebar{grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column))}.form-render__linebarHeader{align-items:center;background:var(--c-primary-color-opacity2)!important;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:space-between;margin-bottom:8px;padding:0 16px}.form-render__linebarHeader>svg{color:rgba(33,33,33,.4);width:14px}.form-render__linebarHeaderTitle{align-items:center;display:flex;font-size:15px;gap:4px;vertical-align:middle}.form-render__linebarHeaderTitle svg{height:16px;transform:translateY(-1px)}.form-render__linebarHeader--disabled{cursor:auto}.form-render__linebarItem{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__linebreaks{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup{align-items:start;display:grid!important;gap:0 16px;gap:0;grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column));grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__inputGroup>div{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup>div:not(:last-of-type) .n-base-selection__border,.form-render__inputGroup>div:not(:last-of-type) .n-input__border{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0}.form-render__inputGroup>div:last-of-type .n-base-selection__border,.form-render__inputGroup>div:last-of-type .n-input__border{border-bottom-left-radius:0;border-top-left-radius:0}.form-render__inputGroup .n-form-item--left-labelled:not(:first-of-type)>label{display:none}.form-render__combination{width:100%}.form-render__combinationHeader{display:flex;gap:12px}.form-render__combinationHeader>h3{font-size:16px;font-weight:700;margin:0;padding:0}.form-render__combinationHeader .n-button__icon{font-size:14px;margin:0 2px 0 0}.form-render__combinationHeaderText{font-size:16px;font-weight:500}.form-render__combinationClose{font-size:16px;height:14px;position:absolute;right:5px;top:5px;width:14px}.form-render__combinationContentJson{position:relative}.form-render__combinationContent{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));position:relative}.form-render__complex{width:100%}.form-render__complexContent--grid{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__complexContent--flex{display:flex!important;gap:0 8px}.form-render__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar,.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.form-render__selectMenu .v-vl-items{min-width:100%;width:max-content}.form-render__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.form-render__labelField{align-items:start;display:grid!important;display:inline-grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));grid-template-columns:repeat(var(--column),auto)!important;margin-left:16px}.form-render__labelField .n-form-item{display:inline-grid}.form-render__labelField label.n-form-item-label.n-form-item-label--left-mark{align-items:center}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box{background-color:transparent}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-icon .check-icon{opacity:0}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box__border{border:var(--n-border)}.form-render .form-render__formItem .n-checkbox,.form-render .form-render__formItem .n-radio{align-items:center}.form-render .form-render__formItem .n-radio-input{left:auto;right:auto}.form-render .form-render__formItem .n-checkbox-group>.n-space:not([vertical-space=true]),.form-render .form-render__formItem .n-radio-group>.n-space:not([vertical-space=true]){align-items:center!important}.form-render .form-render__formItem .n-checkbox__label{align-items:center;display:inline-flex}.form-render--no-border .n-input{border-radius:0}.form-render--no-border .n-input__border,.form-render--no-border .n-input__state-border{border-width:0!important}.form-render--no-border .n-input:hover .n-input__state-border{border-bottom-width:1px!important}.form-render--no-border .n-input--focus{border-radius:0}.form-render--no-border .n-input--focus .n-input__state-border{border-bottom-width:1px!important;box-shadow:none!important}.form-render--no-border .n-base-selection--active .n-base-selection__state-border,.form-render--no-border .n-base-selection--focus .n-base-selection__state-border,.form-render--no-border .n-base-selection:hover .n-base-selection__state-border,.form-render--no-border .n-base-selection__border,.form-render--no-border .n-base-selection__state-border{border-width:0!important;box-shadow:none!important}.form-render--underline .n-input{border-radius:0}.form-render--underline .n-input__border,.form-render--underline .n-input__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important}.form-render--underline .n-input--focus{border-radius:0}.form-render--underline .n-input--focus .n-input__state-border{box-shadow:none!important}.form-render--underline .n-base-selection--active .n-base-selection__state-border,.form-render--underline .n-base-selection--focus .n-base-selection__state-border,.form-render--underline .n-base-selection:hover .n-base-selection__state-border,.form-render--underline .n-base-selection__border,.form-render--underline .n-base-selection__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important;box-shadow:none!important}.form-render__selectChildField{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));width:100%}.form-render__selectChildFieldItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render--out-border .form-render__wrapper{border:1px solid #1f2225;padding:0 8px}.form-render__selectOption.n-base-select-option--disabled .n-base-select-option__content{color:rgba(0,0,0,.4)}
1
+ .annotation-edit{align-items:center;color:var(--c-primary-color);cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:var(--c-primary-color);filter:hue-rotate(140deg)}.annotation-edit__icon{align-items:center;display:inline-flex}.annotation-edit__textarea{min-width:200px}.annotation-edit__footer{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;opacity:.5}.annotation-edit__footer>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-edit__footer>div:first-of-type{min-width:30%}.recommend-search__menu{min-height:100px}.recommend-search__menuRecommendList{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.recommend-search__menuRecommendList .n-tag{cursor:pointer}.recommend-search__recentRecommend{margin-bottom:8px}.recommend-search__recentRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__recentRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__commonRecommend{margin-bottom:8px}.recommend-search__commonRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__commonRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__option{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:32px;justify-content:space-between;padding:0 8px}.recommend-search__optionText{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recommend-search__option.is-active{color:var(--n-color)!important}.recommend-search__option.is-active .n-icon{font-size:20px}.recommend-search__option:hover{background:rgba(0,0,0,.03)}.recommend-search__optionContainer{margin:-8px -10px}.recommend-search__empty{align-items:center;color:rgba(0,0,0,.3);display:flex;height:100px;justify-content:center}.search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;min-width:100%;padding:0 8px 0 16px;width:fit-content}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{white-space:nowrap}.search-cascader__optionText--active{color:var(--c-primary-color)}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.form-render__wrapper{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));max-height:var(--form-height);overflow-y:auto;position:relative}.form-render__formItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column));position:relative}.form-render__formItem .n-date-picker,.form-render__formItem .n-input-number{width:100%}.form-render__formItemLabel{align-items:center;display:inline-flex;justify-content:space-between;position:relative}.form-render__formItemLabel--operation{align-items:center;display:flex;gap:2px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.form-render__formItemLabel--tooltip{font-size:0;line-height:1;width:16px}.form-render__formItemLabel--text{white-space:nowrap}.form-render__formItem .n-form-item-label{display:inline-flex}.form-render__formItem .n-form-item-label [annotation-hover-show=true]{visibility:hidden}.form-render__formItem .n-form-item-label:hover [annotation-hover-show=true]{visibility:visible}.form-render__linebar{grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column))}.form-render__linebarHeader{align-items:center;background:var(--c-primary-color-opacity2)!important;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:space-between;margin-bottom:8px;padding:0 16px}.form-render__linebarHeader>svg{color:rgba(33,33,33,.4);width:14px}.form-render__linebarHeaderTitle{align-items:center;display:flex;font-size:15px;gap:4px;vertical-align:middle}.form-render__linebarHeaderTitle svg{height:16px;transform:translateY(-1px)}.form-render__linebarHeader--disabled{cursor:auto}.form-render__linebarItem{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__linebreaks{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup{align-items:start;display:grid!important;gap:0 16px;gap:0;grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column));grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__inputGroup>div{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup>div:not(:last-of-type) .n-base-selection__border,.form-render__inputGroup>div:not(:last-of-type) .n-input__border{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0}.form-render__inputGroup>div:last-of-type .n-base-selection__border,.form-render__inputGroup>div:last-of-type .n-input__border{border-bottom-left-radius:0;border-top-left-radius:0}.form-render__inputGroup .n-form-item--left-labelled:not(:first-of-type)>label{display:none}.form-render__combination{width:100%}.form-render__combinationHeader{display:flex;gap:12px}.form-render__combinationHeader>h3{font-size:16px;font-weight:700;margin:0;padding:0}.form-render__combinationHeader .n-button__icon{font-size:14px;margin:0 2px 0 0}.form-render__combinationHeaderText{font-size:16px;font-weight:500}.form-render__combinationClose{font-size:16px;height:14px;position:absolute;right:5px;top:5px;width:14px}.form-render__combinationContentJson{position:relative}.form-render__combinationContent{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));position:relative}.form-render__complex{width:100%}.form-render__complexContent--grid{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__complexContent--flex{display:flex!important;gap:0 8px}.form-render__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar,.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.form-render__selectMenu .v-vl-items{min-width:100%;width:max-content}.form-render__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.form-render__labelField{align-items:start;display:grid!important;display:inline-grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));grid-template-columns:repeat(var(--column),auto)!important;margin-left:16px}.form-render__labelField .n-form-item{display:inline-grid}.form-render__labelField label.n-form-item-label.n-form-item-label--left-mark{align-items:center}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box{background-color:transparent}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-icon .check-icon{opacity:0}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box__border{border:var(--n-border)}.form-render .form-render__formItem .n-checkbox,.form-render .form-render__formItem .n-radio{align-items:center}.form-render .form-render__formItem .n-radio-input{left:auto;right:auto}.form-render .form-render__formItem .n-checkbox-group>.n-space:not([vertical-space=true]),.form-render .form-render__formItem .n-radio-group>.n-space:not([vertical-space=true]){align-items:center!important}.form-render .form-render__formItem .n-checkbox__label{align-items:center;display:inline-flex;flex:1;flex-wrap:wrap}.form-render--no-border .n-input{border-radius:0}.form-render--no-border .n-input__border,.form-render--no-border .n-input__state-border{border-width:0!important}.form-render--no-border .n-input:hover .n-input__state-border{border-bottom-width:1px!important}.form-render--no-border .n-input--focus{border-radius:0}.form-render--no-border .n-input--focus .n-input__state-border{border-bottom-width:1px!important;box-shadow:none!important}.form-render--no-border .n-base-selection--active .n-base-selection__state-border,.form-render--no-border .n-base-selection--focus .n-base-selection__state-border,.form-render--no-border .n-base-selection:hover .n-base-selection__state-border,.form-render--no-border .n-base-selection__border,.form-render--no-border .n-base-selection__state-border{border-width:0!important;box-shadow:none!important}.form-render--underline .n-input{border-radius:0}.form-render--underline .n-input__border,.form-render--underline .n-input__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important}.form-render--underline .n-input--focus{border-radius:0}.form-render--underline .n-input--focus .n-input__state-border{box-shadow:none!important}.form-render--underline .n-base-selection--active .n-base-selection__state-border,.form-render--underline .n-base-selection--focus .n-base-selection__state-border,.form-render--underline .n-base-selection:hover .n-base-selection__state-border,.form-render--underline .n-base-selection__border,.form-render--underline .n-base-selection__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important;box-shadow:none!important}.form-render__selectChildField{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));width:100%}.form-render__selectChildFieldItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render--out-border .form-render__wrapper{border:1px solid #1f2225;padding:0 8px}.form-render__selectOption.n-base-select-option--disabled .n-base-select-option__content{color:rgba(0,0,0,.4)}
@@ -1 +1 @@
1
- import{format as e}from"date-fns";import"../../index.js";import{EDITABLE_WIDGET_TYPE as t}from"../constants/index.js";import{getLowCodeFieldFromField as a}from"../utils/index.js";import{defineTablePlugin as l}from"../hooks/useTablePlugin.js";function n(){const n="defaultValuePlugin",o=new Map([[[t.TIME],({defaultValue:t,valueFormat:a="HH:mm"})=>"current"===t?e(Date.now(),a):t],[[t.DATE],({defaultValue:t,valueFormat:a="yyyy-MM-dd HH:mm:ss"})=>"current"===t?e(Date.now(),a):t]]);return l({name:n,apply(e){let t=[];e.fieldHooks.fieldList.tap(n,(e=>(t=e,e))),e.dataHooks.data.tap(n,(e=>{t.length&&t.forEach((t=>{var l;const n=a(t);if(null==(null==n?void 0:n.defaultValue))return;const d=null==(l=t.editRender)?void 0:l.name,[,u]=[...o.entries()].find((([e])=>e.includes(d)))||[];null==e[t.field]&&(e[t.field]=u?u(n):n.defaultValue)}))})),e.dataHooks.dataEnd.tap(n,(()=>{t=[]}))}})}export{n as defaultValuePlugin};
1
+ import{format as e}from"date-fns";import"../../index.js";import{EDITABLE_WIDGET_TYPE as t}from"../constants/index.js";import{getLowCodeFieldFromField as n}from"../utils/index.js";import{defineTablePlugin as a}from"../hooks/useTablePlugin.js";function l(){const l="defaultValuePlugin",o=new Map([[t.TIME,({defaultValue:t,valueFormat:n="HH:mm"})=>"current"===t?e(Date.now(),n):t],[t.DATE,({defaultValue:t,valueFormat:n="yyyy-MM-dd HH:mm:ss"})=>"current"===t?e(Date.now(),n):t]]);function u(e){var t;const a=n(e);if(!a||null==a.defaultValue)return null;const l=null==(t=e.editRender)?void 0:t.name,u=l&&o.get(l);return u?u(a):a.defaultValue}return a({name:l,apply(e){const t=Object.freeze([]);let n=t;e.fieldHooks.field.tap(l,(e=>{const t=u(e);return null!=t&&(e.editRender={defaultValue:t,...e.editRender}),e})),e.fieldHooks.fieldList.tap(l,(e=>n=e)),e.dataHooks.data.tap(l,(e=>{n.length&&n.forEach((t=>{if(null!=e[t.field])return;const n=u(t);null!=n&&(e[t.field]=n)}))})),e.dataHooks.dataEnd.tap(l,(()=>n=t))}})}export{l as defaultValuePlugin};
@@ -32,6 +32,9 @@ declare const _default: import("vue").DefineComponent<{
32
32
  onConfirm: {
33
33
  type: FunctionConstructor;
34
34
  };
35
+ formattedValue: {
36
+ type: StringConstructor;
37
+ };
35
38
  }, {
36
39
  attrs: {
37
40
  [x: string]: unknown;
@@ -43,9 +46,17 @@ declare const _default: import("vue").DefineComponent<{
43
46
  onConfirm: {
44
47
  type: FunctionConstructor;
45
48
  };
46
- }>> & {}>>;
49
+ formattedValue: {
50
+ type: StringConstructor;
51
+ };
52
+ }>> & {
53
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
54
+ }>>;
55
+ emit: (event: "update:formatted-value", ...args: any[]) => void;
47
56
  datePickerRef: import("vue").Ref<import("../../../../../../es/shared/types").AnyObject | null>;
48
57
  panelInstRef: import("vue").Ref<null>;
58
+ placeholder: import("vue").Ref<any>;
59
+ currentFormattedValue: import("vue").WritableComputedRef<string | undefined>;
49
60
  isDateTime: import("vue").ComputedRef<boolean>;
50
61
  formatRef: import("vue").ComputedRef<string>;
51
62
  panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
@@ -54,15 +65,21 @@ declare const _default: import("vue").DefineComponent<{
54
65
  handleConfirm: (target: HTMLInputElement) => void;
55
66
  onUpdateShow: (show: boolean) => void;
56
67
  onConfirm: (...args: any[]) => Promise<void>;
68
+ isOtherValue: (value?: string) => boolean;
57
69
  NDatePicker: any;
58
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
70
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:formatted-value"[], "update:formatted-value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
59
71
  updateUnchangedValue: {
60
72
  type: BooleanConstructor;
61
73
  };
62
74
  onConfirm: {
63
75
  type: FunctionConstructor;
64
76
  };
65
- }>>, {
77
+ formattedValue: {
78
+ type: StringConstructor;
79
+ };
80
+ }>> & {
81
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
82
+ }, {
66
83
  updateUnchangedValue: boolean;
67
84
  }>>;
68
85
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -76,6 +76,9 @@ declare const _default: import("vue").DefineComponent<{
76
76
  onConfirm: {
77
77
  type: FunctionConstructor;
78
78
  };
79
+ formattedValue: {
80
+ type: StringConstructor;
81
+ };
79
82
  }, {
80
83
  attrs: {
81
84
  [x: string]: unknown;
@@ -87,9 +90,17 @@ declare const _default: import("vue").DefineComponent<{
87
90
  onConfirm: {
88
91
  type: FunctionConstructor;
89
92
  };
90
- }>> & {}>>;
93
+ formattedValue: {
94
+ type: StringConstructor;
95
+ };
96
+ }>> & {
97
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
98
+ }>>;
99
+ emit: (event: "update:formatted-value", ...args: any[]) => void;
91
100
  datePickerRef: import("vue").Ref<AnyObject | null>;
92
101
  panelInstRef: import("vue").Ref<null>;
102
+ placeholder: import("vue").Ref<any>;
103
+ currentFormattedValue: import("vue").WritableComputedRef<string | undefined>;
93
104
  isDateTime: import("vue").ComputedRef<boolean>;
94
105
  formatRef: import("vue").ComputedRef<string>;
95
106
  panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
@@ -98,15 +109,21 @@ declare const _default: import("vue").DefineComponent<{
98
109
  handleConfirm: (target: HTMLInputElement) => void;
99
110
  onUpdateShow: (show: boolean) => void;
100
111
  onConfirm: (...args: any[]) => Promise<void>;
112
+ isOtherValue: (value?: string) => boolean;
101
113
  NDatePicker: any;
102
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
114
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:formatted-value"[], "update:formatted-value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
103
115
  updateUnchangedValue: {
104
116
  type: BooleanConstructor;
105
117
  };
106
118
  onConfirm: {
107
119
  type: FunctionConstructor;
108
120
  };
109
- }>>, {
121
+ formattedValue: {
122
+ type: StringConstructor;
123
+ };
124
+ }>> & {
125
+ "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
126
+ }, {
110
127
  updateUnchangedValue: boolean;
111
128
  }>>;
112
129
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as t,inject as r,ref as i,computed as a,onMounted as l,openBlock as o,createBlock as n,unref as u,mergeProps as s,isRef as d}from"vue";import{generateTimeFormat as m}from"../../../../../../../shared/utils/index.js";import{isFunction as p}from"lodash-es";import{useIhoTableFormEvent as c}from"../../../../utils/index.js";import f from"../../../../../../date-picker/index.js";var v=e({__name:"editDate",props:{value:{type:String,default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:value"],setup(e,{emit:v}){const w=e,D=t(),b=r("$xetable"),{emitFormChangeWithParams:y}=c({...w,$table:b}),g=i(),$=a({get:()=>w.value,set(e){const t=w.value;t!==e&&(v("update:value",e),y({oldValue:t}))}}),h=a((()=>{const e=D.valueFormat||"yyyy-MM-dd HH:mm:ss";return{valueFormat:e,format:e,timePickerProps:{format:m(e)}}})),{isStartDate:T=!1,isEndDate:x=!1}=D,j=D.connectField||"",S=(e,t)=>T&&j?e>t:!(!x||!j)&&e<t,k=e=>{const t=new Date(w.row[j]),r=new Date(e),{h:i,m:a,s:l}=H(t),o=(e,t,r,i)=>!(x&&r>i)&&(!(T&&r<i)&&S(e,t));return{isHourDisabled:t=>{if(!w.row[j])return!1;const a=new Date(`${w.row[j].split(" ")[0]} 00:00:00`).getTime(),{m:l,s:n}=H(r);return o(t,i,e-60*t*60*1e3-60*l*1e3-1e3*n,a)},isMinuteDisabled:t=>{if(!w.row[j])return!1;const l=new Date(`${w.row[j].split(" ")[0]} ${i}:00:00`).getTime(),{s:n}=H(r);return o(t,a,e-60*t*1e3-1e3*n,l)},isSecondDisabled:t=>{if(!w.row[j])return!1;const r=new Date(`${w.row[j].split(" ")[0]} ${i}:${a}:00`).getTime();return o(t,l,e-1e3*t,r)}}},q={type:D.type||"datetime",clearable:!0,placeholder:D.placeholder||"请选择",...D,...h.value,isDateDisabled:F(D.isDateDisabled)||(e=>!!w.row[j]&&S(e,x?new Date(`${w.row[j].split(" ")[0]} 00:00:00`).getTime():new Date(w.row[j]).getTime()))};function F(e){return p(e)?t=>e(t,w.row):null}function H(e){return{h:e.getHours(),m:e.getMinutes(),s:e.getSeconds()}}return q.type.includes("time")&&(q.isTimeDisabled=F(D.isTimeDisabled)||k),l((()=>{var e,t,r,i,a,l,o;return null==(o=null==(a=null==(r=null==(t=null==(e=g.value)?void 0:e.$datePicker)?void 0:t.inputInstRef)?void 0:(i=r.$el).querySelector)?void 0:(l=a.call(i,"input")).select)?void 0:o.call(l)})),(e,t)=>(o(),n(u(f),s({ref_key:"formRef",ref:g},u(q),{"formatted-value":u($),"onUpdate:formatted-value":t[0]||(t[0]=e=>d($)?$.value=e:null)}),null,16,["formatted-value"]))}});export{v as default};
1
+ import{defineComponent as e,useAttrs as t,inject as r,ref as i,computed as a,onMounted as l,openBlock as o,createBlock as n,unref as u,mergeProps as s,isRef as d}from"vue";import{generateTimeFormat as m}from"../../../../../../../shared/utils/index.js";import{isFunction as p}from"lodash-es";import{useIhoTableFormEvent as c}from"../../../../utils/index.js";import f from"../../../../../../date-picker/index.js";var v=e({__name:"editDate",props:{value:{type:String,default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:value"],setup(e,{emit:v}){const w=e,D=t(),b=r("$xetable"),{emitFormChangeWithParams:y}=c({...w,$table:b}),g=i(),$=a({get:()=>w.value,set(e){const t=w.value;t===e||!e&&"-"===t||(v("update:value",e),y({oldValue:t}))}}),T=a((()=>{const e=D.valueFormat||"yyyy-MM-dd HH:mm:ss";return{valueFormat:e,format:e,timePickerProps:{format:m(e)}}})),{isStartDate:h=!1,isEndDate:x=!1}=D,j=D.connectField||"",S=(e,t)=>h&&j?e>t:!(!x||!j)&&e<t,k=e=>{const t=new Date(w.row[j]),r=new Date(e),{h:i,m:a,s:l}=H(t),o=(e,t,r,i)=>!(x&&r>i)&&(!(h&&r<i)&&S(e,t));return{isHourDisabled:t=>{if(!w.row[j])return!1;const a=new Date(`${w.row[j].split(" ")[0]} 00:00:00`).getTime(),{m:l,s:n}=H(r);return o(t,i,e-60*t*60*1e3-60*l*1e3-1e3*n,a)},isMinuteDisabled:t=>{if(!w.row[j])return!1;const l=new Date(`${w.row[j].split(" ")[0]} ${i}:00:00`).getTime(),{s:n}=H(r);return o(t,a,e-60*t*1e3-1e3*n,l)},isSecondDisabled:t=>{if(!w.row[j])return!1;const r=new Date(`${w.row[j].split(" ")[0]} ${i}:${a}:00`).getTime();return o(t,l,e-1e3*t,r)}}},q={type:D.type||"datetime",clearable:!0,...D,...T.value,isDateDisabled:F(D.isDateDisabled)||(e=>!!w.row[j]&&S(e,x?new Date(`${w.row[j].split(" ")[0]} 00:00:00`).getTime():new Date(w.row[j]).getTime()))};function F(e){return p(e)?t=>e(t,w.row):null}function H(e){return{h:e.getHours(),m:e.getMinutes(),s:e.getSeconds()}}return q.type.includes("time")&&(q.isTimeDisabled=F(D.isTimeDisabled)||k),l((()=>{var e,t,r,i,a,l,o;return null==(o=null==(a=null==(r=null==(t=null==(e=g.value)?void 0:e.$datePicker)?void 0:t.inputInstRef)?void 0:(i=r.$el).querySelector)?void 0:(l=a.call(i,"input")).select)?void 0:o.call(l)})),(e,t)=>(o(),n(u(f),s({ref_key:"formRef",ref:g},u(q),{"formatted-value":u($),"onUpdate:formatted-value":t[0]||(t[0]=e=>d($)?$.value=e:null)}),null,16,["formatted-value"]))}});export{v as default};