cnhis-design-vue 3.1.41-release.5 → 3.1.41-release.6

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 (130) hide show
  1. package/es/components/button-print/src/utils/print.js +1 -1
  2. package/es/components/fabric-chart/src/hooks/useBirthProcess.js +1 -1
  3. package/es/components/fabric-chart/src/hooks/useDraw.d.ts +1 -0
  4. package/es/components/fabric-chart/src/hooks/useDraw.js +1 -1
  5. package/es/components/fabric-chart/src/hooks/useLeft.js +1 -1
  6. package/es/components/fabric-chart/src/hooks/useOther.js +1 -1
  7. package/es/components/fabric-chart/src/hooks/useTop.js +1 -1
  8. package/es/components/field-set/index.d.ts +8 -0
  9. package/es/components/field-set/src/FieldSet.vue.d.ts +5 -0
  10. package/es/components/field-set/src/FieldSet.vue.js +1 -1
  11. package/es/components/field-set/style/index.css +1 -1
  12. package/es/components/form-config/index.d.ts +6755 -44
  13. package/es/components/form-config/src/FormConfig.vue.d.ts +6897 -185
  14. package/es/components/form-config/src/FormConfig.vue.js +1 -1
  15. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -1
  16. package/es/components/form-config/src/components/FormConfigCreator.vue.js +1 -1
  17. package/es/components/form-config/src/components/FormConfigDragDisplay.vue.d.ts +4 -4
  18. package/es/components/form-config/src/components/FormConfigDragDisplay.vue.js +1 -1
  19. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +3410 -58
  20. package/es/components/form-config/src/components/FormConfigEdit.vue.js +1 -1
  21. package/es/components/form-config/src/components/FormConfigMaterialItem.d.ts +2 -2
  22. package/es/components/form-config/src/components/FormConfigMaterialItem.js +1 -1
  23. package/es/components/form-config/src/components/renderer/CloseButton.vue.d.ts +3 -3
  24. package/es/components/form-config/src/components/renderer/CloseButton.vue.js +1 -1
  25. package/es/components/form-config/src/components/renderer/ComplexNode.vue.d.ts +10 -10
  26. package/es/components/form-config/src/components/renderer/ComplexNode.vue.js +1 -1
  27. package/es/components/form-config/src/components/renderer/DefaultNode.vue.d.ts +6 -6
  28. package/es/components/form-config/src/components/renderer/DefaultNode.vue.js +1 -1
  29. package/es/components/form-config/src/hooks/useConfigurationField.d.ts +2 -3
  30. package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
  31. package/es/components/form-config/src/hooks/useDataNormalize.d.ts +4 -2
  32. package/es/components/form-config/src/hooks/useDataNormalize.js +1 -1
  33. package/es/components/form-config/src/hooks/usePresetRenderer.d.ts +1 -1
  34. package/es/components/form-config/src/types/index.d.ts +8 -2
  35. package/es/components/form-config/src/utils/index.d.ts +4 -1
  36. package/es/components/form-config/src/utils/index.js +1 -1
  37. package/es/components/form-config/style/index.css +1 -1
  38. package/es/components/form-render/index.d.ts +1 -1
  39. package/es/components/form-render/src/FormRender.vue.js +1 -1
  40. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +21 -20
  41. package/es/components/form-render/src/FormRenderWrapper.vue.js +1 -1
  42. package/es/components/form-render/src/constants/index.d.ts +0 -12
  43. package/es/components/form-render/src/constants/index.js +1 -1
  44. package/es/components/form-render/src/hooks/useLowCodeReactions.js +1 -1
  45. package/es/components/form-render/src/types/index.d.ts +4 -2
  46. package/es/components/iho-table/index.d.ts +2 -2
  47. package/es/components/iho-table/src/IhoTable.vue.d.ts +2 -2
  48. package/es/components/iho-table/src/IhoTable.vue.js +1 -1
  49. package/es/components/iho-table/src/plugins/{filterPlugin → filterRenderPlugin}/filter.vue.d.ts +15 -74
  50. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.js +1 -0
  51. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.d.ts +1 -0
  52. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -0
  53. package/es/components/iho-table/src/plugins/index.js +1 -1
  54. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +85 -0
  55. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.js +1 -0
  56. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/{timeRendererPlugin.d.ts → timeRendererPlugin/index.d.ts} +1 -1
  57. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/index.js +1 -0
  58. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/timeUtils.d.ts +2 -0
  59. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/timeUtils.js +1 -0
  60. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/defaultRendererPlugin.js +1 -1
  61. package/es/components/iho-table/src/types/index.d.ts +20 -11
  62. package/es/components/iho-table/src/utils/index.js +1 -1
  63. package/es/components/iho-table/style/index.css +1 -1
  64. package/es/components/index.css +1 -1
  65. package/es/components/info-header/index.d.ts +289 -155
  66. package/es/components/info-header/src/InfoHeader.vue.d.ts +293 -160
  67. package/es/components/info-header/src/InfoHeader.vue.js +1 -1
  68. package/es/components/info-header/src/components/index.d.ts +3 -0
  69. package/es/components/info-header/src/components/index.js +1 -0
  70. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.js +1 -0
  71. package/es/components/info-header/src/components/infoDescription/InfoEllipsis.vue.js +1 -0
  72. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +266 -0
  73. package/es/components/info-header/src/components/infoDescription/index.vue.js +1 -0
  74. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +38 -0
  75. package/es/components/info-header/src/components/patientInfo/index.vue.js +1 -0
  76. package/es/components/info-header/src/types/index.d.ts +29 -0
  77. package/es/components/scale-view/index.d.ts +1 -2
  78. package/es/components/scale-view/src/ScaleView.vue.d.ts +1 -5
  79. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  80. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +1 -0
  81. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  82. package/es/components/scale-view/src/hooks/scaleview-submit.js +1 -1
  83. package/es/components/scale-view/src/utils/judge-types.js +1 -1
  84. package/es/components/scale-view/style/index.css +1 -1
  85. package/es/components/shortcut-setter/index.d.ts +1 -1
  86. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +1 -1
  87. package/es/components/table-filter/index.d.ts +12 -77
  88. package/es/components/table-filter/src/base-search-com/BaseSearch.vue.d.ts +4 -2
  89. package/es/components/table-filter/src/base-search-com/BaseSearch.vue.js +1 -1
  90. package/es/components/table-filter/src/classification/Classification-com.vue.d.ts +4 -22
  91. package/es/components/table-filter/src/classification/Classification-com.vue.js +1 -1
  92. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +2 -2
  93. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +2 -2
  94. package/es/components/table-filter/src/components/classify-filter/index.vue.js +1 -1
  95. package/es/components/table-filter/src/components/search-filter/index.vue.d.ts +2 -2
  96. package/es/components/table-filter/src/components/search-filter/index.vue.js +1 -1
  97. package/es/components/table-filter/src/components/set-classification/index.vue.d.ts +4 -20
  98. package/es/components/table-filter/src/components/set-classification/index.vue.js +1 -1
  99. package/es/components/table-filter/src/components/table-modal/index.vue.js +1 -1
  100. package/es/components/table-filter/src/hooks/useMixins.js +1 -1
  101. package/es/components/table-filter/src/quick-search/QuickSearch.vue.d.ts +4 -53
  102. package/es/components/table-filter/src/quick-search/QuickSearch.vue.js +1 -1
  103. package/es/components/table-filter/style/index.css +1 -1
  104. package/es/shared/components/no-data/NoData.vue.d.ts +5 -0
  105. package/es/shared/components/no-data/NoData.vue.js +1 -1
  106. package/es/shared/utils/index.d.ts +16 -0
  107. package/es/shared/utils/index.js +1 -1
  108. package/package.json +1 -1
  109. package/es/components/iho-table/src/plugins/filterPlugin/filter.vue.js +0 -1
  110. package/es/components/iho-table/src/plugins/filterPlugin/index.d.ts +0 -1
  111. package/es/components/iho-table/src/plugins/filterPlugin/index.js +0 -1
  112. package/es/components/iho-table/src/plugins/filterPlugin/types.d.ts +0 -7
  113. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin.js +0 -1
  114. package/es/components/info-header/src/HiddenContent.vue.js +0 -1
  115. package/es/components/info-header/src/InfoEllipsis.vue.js +0 -1
  116. package/es/components/table-filter/src/components/age-com/index.vue.d.ts +0 -119
  117. package/es/components/table-filter/src/components/button-group/ButtonGroup.vue.d.ts +0 -199
  118. package/es/components/table-filter/src/components/button-icon/getBtnIcon.d.ts +0 -2
  119. package/es/components/table-filter/src/components/button-icon/getBtnIcon.js +0 -1
  120. package/es/components/table-filter/src/components/c-tree-select/tree-select.vue.d.ts +0 -90
  121. package/es/components/table-filter/src/components/multi-select/multi-select.vue.d.ts +0 -113
  122. package/es/components/table-filter/src/components/out-quick-search/out-quick-search.vue.d.ts +0 -266
  123. package/es/components/table-filter/src/components/range-age/index.vue.d.ts +0 -248
  124. package/es/components/table-filter/src/const/dataOptions.d.ts +0 -12
  125. package/es/components/table-filter/src/const/dataOptions.js +0 -1
  126. package/es/components/table-filter/src/directive/preventReClick.d.ts +0 -4
  127. package/es/components/table-filter/src/directive/preventReClick.js +0 -1
  128. package/es/components/info-header/src/{HiddenContent.vue.d.ts → components/infoDescription/HiddenContent.vue.d.ts} +2 -2
  129. package/es/components/info-header/src/{InfoEllipsis.vue.d.ts → components/infoDescription/InfoEllipsis.vue.d.ts} +1 -1
  130. /package/es/components/{iho-table/src/plugins/filterPlugin/types.js → info-header/src/types/index.js} +0 -0
@@ -1 +1 @@
1
- import{isField as e}from"@formily/core";import{isArray as r,isString as o,includes as i,isEmpty as n,negate as t,gt as c,gte as l,lt as d,lte as u}from"lodash-es";import{computed as a,unref as f}from"vue";import{Path as s}from"@formily/path";function b(b,m){const y={EQ:(e,r)=>`${e}`===r,NEQ:(e,r)=>`${e}`!==r,CL:(e,n)=>!(!r(e)&&!o(e))&&i(e,n),NC:(e,n)=>!r(e)&&!o(e)||!i(e,n),NULL:n,NOT_NULL:t(n),BIG:c,BIGEQ:l,LESS:d,LESSEQ:u},E={hideField:h((e=>e.setDisplay("none"))),showField:h((e=>e.setDisplay("visible"))),requiredField:h((e=>e.required=!0)),notRequiredField:h((e=>{e.required=!1,e.validate()})),enabledField:h((e=>e.editable=!0)),disabledField:h((e=>e.editable=!1))};function h(r){return o=>{o.forEach((o=>{const i=m.query(o).take();i&&e(i)&&r(i)}))}}const p=a((()=>f(b)?f(b).reduce(((e,o)=>(r(o.conObj)&&o.conObj.forEach((r=>e.push(r.field_key))),e)),[]):[]));function v(e,r,o){if(o.field_key!==e)return;return(y[o.con]||(()=>!1))(r,`${o.value}`)}function F(e){Object.entries(e).forEach((([e,r])=>E[e]&&E[e](r)))}return{lowCodeReactionsHandler:function(e,r){const o=f(b);o&&p.value.includes(e)&&o.forEach((o=>{var i,n;i=e,n=r,o.conObj.every((e=>v(i,n,e)))&&F(o)}))},triggerAllReactionsHandler:function(){const e=f(b);if(!e)return;const o=m.getFormState().values;e.forEach((e=>{(function(e,o){if(!r(o.conObj))return;return o.conObj.every((r=>v(r.field_key,s.getIn(e,r.field_key),r)))})(o,e)&&F(e)}))}}}export{b as useLowCodeReactions};
1
+ import{isMatchLowCodeCondition as e}from"../../../../shared/utils/index.js";import{isField as r}from"@formily/core";import{Path as i}from"@formily/path";import{isArray as o}from"lodash-es";import{computed as n,unref as t}from"vue";function l(l,c){const d={hideField:f((e=>e.setDisplay("none"))),showField:f((e=>e.setDisplay("visible"))),requiredField:f((e=>e.required=!0)),notRequiredField:f((e=>{e.required=!1,e.validate()})),enabledField:f((e=>e.editable=!0)),disabledField:f((e=>e.editable=!1))};function f(e){return i=>{i.forEach((i=>{const o=c.query(i).take();o&&r(o)&&e(o)}))}}const a=n((()=>t(l)?t(l).reduce(((e,r)=>(o(r.conObj)&&r.conObj.forEach((r=>e.push(r.field_key))),e)),[]):[]));function u(r,i,o){if(o.field_key===r)return e(i,o)}function s(e){Object.entries(e).forEach((([e,r])=>d[e]&&d[e](r)))}return{lowCodeReactionsHandler:function(e,r){const i=t(l);i&&a.value.includes(e)&&i.forEach((i=>{var o,n;o=e,n=r,i.conObj.every((e=>u(o,n,e)))&&s(i)}))},triggerAllReactionsHandler:function(){const e=t(l);if(!e)return;const r=c.getFormState().values;e.forEach((e=>{(function(e,r){if(!o(r.conObj))return;return r.conObj.every((r=>u(r.field_key,i.getIn(e,r.field_key),r)))})(r,e)&&s(e)}))}}}export{l as useLowCodeReactions};
@@ -1,8 +1,9 @@
1
1
  import { AnyObject, UndefinedAble } from '../../../../../es/shared/types';
2
+ import { LOW_CODE_VALUE_RELATION } from '../../../../../es/shared/utils';
2
3
  import { DataField, Field, Form } from '@formily/core';
3
4
  import { ISchema } from '@formily/json-schema/esm/types';
4
5
  import { Component, FunctionalComponent } from 'vue';
5
- import { FIELD_BUSINESS_TYPE, LOW_CODE_VALUE_RELATION } from '../../../../../es/components/form-render/src/constants';
6
+ import { FIELD_BUSINESS_TYPE } from '../../../../../es/components/form-render/src/constants';
6
7
  import { FieldItem } from '../types';
7
8
  import { AsyncQueue, RequestInstance } from '../hooks';
8
9
  export * from './fieldItem';
@@ -37,6 +38,7 @@ export declare type FormRenderExpose = {
37
38
  widgetElementList: HTMLInputElement[];
38
39
  decoratorElement: HTMLElement | null;
39
40
  }>;
41
+ getFieldList(): FieldItem[] | null;
40
42
  reload(): Promise<any>;
41
43
  };
42
44
  export declare type FormChangeContext = Partial<{
@@ -86,7 +88,7 @@ export declare type FormBusinessFormatter = (payload: {
86
88
  }) => unknown;
87
89
  export declare namespace FormLowCodeReactions {
88
90
  type ConObj = {
89
- con: LOW_CODE_VALUE_RELATION | string;
91
+ con: LOW_CODE_VALUE_RELATION & string;
90
92
  field_key: string;
91
93
  value: unknown;
92
94
  };
@@ -104,8 +104,6 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
104
104
  __emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
105
105
  eventListener: import("./src/hooks/tapHooks/useEventHooks").IhoTableEventListener;
106
106
  emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
107
- uuid: string;
108
- $table: import("vue").Ref<import("vxe-table").VxeTableInstance | undefined>;
109
107
  hooks: Readonly<{
110
108
  configHooks: import("../../../es/components/iho-table/src/types").AbstractConfigHooks;
111
109
  fieldHooks: import("../../../es/components/iho-table/src/types").AbstractFieldHooks;
@@ -115,6 +113,8 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
115
113
  domInsertHooks: import("../../../es/components/iho-table/src/types").AbstractDomInsertHooks;
116
114
  exposeHooks: import("../../../es/components/iho-table/src/types").AbstractExposeHooks;
117
115
  }>;
116
+ uuid: string;
117
+ $table: import("vue").Ref<import("vxe-table").VxeTableInstance | undefined>;
118
118
  configRef: import("vue").Ref<{
119
119
  [x: string]: unknown;
120
120
  size?: import("vxe-table").SizeType | undefined;
@@ -103,8 +103,6 @@ declare const _default: import("vue").DefineComponent<{
103
103
  __emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
104
104
  eventListener: import("../../../../es/components/iho-table/src/hooks/tapHooks/useEventHooks").IhoTableEventListener;
105
105
  emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd", ...args: any[]) => void;
106
- uuid: string;
107
- $table: import("vue").Ref<VxeTableInstance | undefined>;
108
106
  hooks: Readonly<{
109
107
  configHooks: import("../../../../es/components/iho-table/src/types").AbstractConfigHooks;
110
108
  fieldHooks: import("../../../../es/components/iho-table/src/types").AbstractFieldHooks;
@@ -114,6 +112,8 @@ declare const _default: import("vue").DefineComponent<{
114
112
  domInsertHooks: import("../../../../es/components/iho-table/src/types").AbstractDomInsertHooks;
115
113
  exposeHooks: import("../../../../es/components/iho-table/src/types").AbstractExposeHooks;
116
114
  }>;
115
+ uuid: string;
116
+ $table: import("vue").Ref<VxeTableInstance | undefined>;
117
117
  configRef: import("vue").Ref<{
118
118
  [x: string]: unknown;
119
119
  size?: import("vxe-table").SizeType | undefined;
@@ -1 +1 @@
1
- import{defineComponent as e,provide as t,computed as a,ref as o,watch as l,resolveComponent as s,openBlock as n,createElementBlock as i,unref as r,createBlock as u,resolveDynamicComponent as d,createVNode as f,mergeProps as c,createSlots as p,renderList as m,withCtx as v,createCommentVNode as b,renderSlot as g}from"vue";import{uuidGenerator as x}from"../../../shared/utils/index.js";import{useDebounceFn as h}from"@vueuse/core";import{promiseTimeout as k}from"@vueuse/shared";import{isFunction as y}from"lodash-es";import{VxeTableEventNameList as C,InjectionIhoTableEmits as j,InjectionIhoTableAnnotation as D,InjectionIhoTableUUID as _,InjectionIhoTableInstance as $,InjectionIhoTableConfig as H,InjectionIhoTableFieldList as A,InjectionIhoTableHandler as L}from"./constants/index.js";import{createTableHooks as T,applyTableConfigHooks as w,applyTableFieldHooks as R,createTableEventHandlers as E,createDomInsertComponent as F,createDataTransfer as I}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as O}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as N}from"./utils/index.js";import S from"../../../_virtual/plugin-vue_export-helper.js";const q=["id"];var z=S(e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object}},emits:["formChange","settingClick","formClick","keyboard",...C],setup(e,{expose:C,emit:S}){var z,B;const G=e,J=O(),K=function(e,...t){S(e,...t);const a=r(U)[N(e)];y(a)&&a(...t),J.trigger(e,...t)};t(j,K),t(D,a((()=>G.annotation)));const M=x();t(_,M);const P=o();t($,P);const Q=T(),U=o({uuid:null!=(B=null==(z=G.tableConfig)?void 0:z.uuid)?B:M});t(H,U);const V=h(W,10);function W(){U.value=w(Q,G.tableConfig),U.value.uuid=M}const X=o([]);t(A,X);const Y=h(Z,10);function Z(){X.value=R(Q,G.fieldList,U.value,{$table:P,emits:K})}const ee=I(Q,U,P),te=o([]),ae=h(oe,10);async function oe(){var e;te.value=await ee(G.tableData),null==(e=P.value)||e.recalculate(!0)}const le={updateTableDataRef:ae,updateConfigRef:V,updateFieldListRef:Y};t(L,le);const se=E({hooks:Q,config:U,$table:P,context:le,emits:K}),ne=a((()=>({...U.value,...se})));l((()=>G.tableConfig),(()=>{V(),Y(),ae()}),{deep:!0}),l((()=>G.fieldList),(()=>{Y(),ae()}),{deep:!0}),l([()=>G.tableData,()=>{var e;return null==(e=G.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=U.value.treeConfig)?void 0:e.expandAll)&&(await k(11),null==(t=P.value)||t.setAllTreeExpand(!0))})),l((()=>[...G.tableData]),ae),W(),Z(),oe();const{header:ie,footer:re}=F(Q);return C({$table:P,async loadData(e){var t;null==(t=P.value)||t.loadData(await ee(e))},setFilterState:(e,t)=>({fieldName:e,value:t}),...Q.exposeHooks.expose.call({},U,{$table:P,emits:K})}),Q.setupHooks.setup.call(U,X),(e,t)=>{const a=s("vxe-grid");return n(),i("section",{class:"iho-table",id:r(M)},[(n(),u(d(r(ie)))),f(a,c({ref_key:"$table",ref:P},r(ne),{columns:X.value,data:te.value}),p({_:2},[m(e.$slots,((t,a)=>({name:a,fn:v((()=>[b(" 实际上所有的vxe-grid插槽都支持 "),g(e.$slots,a)]))})))]),1040,["columns","data"]),(n(),u(d(r(re))))],8,q)}}}),[["__file","IhoTable.vue"]]);export{z as default};
1
+ import{defineComponent as e,provide as t,computed as a,ref as o,watch as l,resolveComponent as s,openBlock as n,createElementBlock as i,unref as r,createBlock as u,resolveDynamicComponent as d,createVNode as f,mergeProps as c,createSlots as p,renderList as v,withCtx as m,createCommentVNode as b,renderSlot as g}from"vue";import{uuidGenerator as x}from"../../../shared/utils/index.js";import{useDebounceFn as h}from"@vueuse/core";import{promiseTimeout as k}from"@vueuse/shared";import{isFunction as y}from"lodash-es";import{VxeTableEventNameList as C,InjectionIhoTableEmits as j,InjectionIhoTableAnnotation as D,InjectionIhoTableUUID as _,InjectionIhoTableInstance as $,InjectionIhoTableConfig as H,InjectionIhoTableFieldList as A,InjectionIhoTableHandler as L}from"./constants/index.js";import{createTableHooks as T,applyTableConfigHooks as w,applyTableFieldHooks as R,createTableEventHandlers as E,createDomInsertComponent as F,createDataTransfer as I}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as O}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as S}from"./utils/index.js";import q from"../../../_virtual/plugin-vue_export-helper.js";const z=["id"];var B=q(e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object}},emits:["formChange","settingClick","formClick","keyboard",...C],setup(e,{expose:C,emit:q}){var B,G;const J=e,K=O(),M=function(e,...t){q(e,...t);const a=r(U)[S(e)];y(a)&&a(...t),K.trigger(e,...t)};t(j,M);const N=T();t(D,a((()=>J.annotation)));const P=x();t(_,P);const Q=o();t($,Q);const U=o({uuid:null!=(G=null==(B=J.tableConfig)?void 0:B.uuid)?G:P});t(H,U);const V=h(W,10);function W(){U.value=w(N,J.tableConfig),U.value.uuid=P}const X=o([]);t(A,X);const Y=h(Z,10);function Z(){X.value=R(N,J.fieldList,U.value,{$table:Q,emits:M})}const ee=I(N,U,Q),te=o([]),ae=h(oe,10);async function oe(){var e;te.value=await ee(J.tableData),null==(e=Q.value)||e.recalculate(!0)}const le={updateTableDataRef:ae,updateConfigRef:V,updateFieldListRef:Y};t(L,le);const se=E({hooks:N,config:U,$table:Q,context:le,emits:M}),ne=a((()=>({...U.value,...se})));l((()=>J.tableConfig),(()=>{V(),Y(),ae()}),{deep:!0}),l((()=>J.fieldList),(()=>{Y(),ae()}),{deep:!0}),l([()=>J.tableData,()=>{var e;return null==(e=J.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=U.value.treeConfig)?void 0:e.expandAll)&&(await k(11),null==(t=Q.value)||t.setAllTreeExpand(!0))})),l((()=>[...J.tableData]),ae),W(),Z(),oe();const{header:ie,footer:re}=F(N);return C({$table:Q,async loadData(e){var t;null==(t=Q.value)||t.loadData(await ee(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),...N.exposeHooks.expose.call({},U,{$table:Q,emits:M})}),N.setupHooks.setup.call(U,X),(e,t)=>{const a=s("vxe-grid");return n(),i("section",{class:"iho-table",id:r(P)},[(n(),u(d(r(ie)))),f(a,c({ref_key:"$table",ref:Q},r(ne),{columns:X.value,data:te.value}),p({_:2},[v(e.$slots,((t,a)=>({name:a,fn:m((()=>[b(" 实际上所有的vxe-grid插槽都支持 "),g(e.$slots,a)]))})))]),1040,["columns","data"]),(n(),u(d(r(re))))],8,z)}}}),[["__file","IhoTable.vue"]]);export{B as default};
@@ -1,62 +1,28 @@
1
- import { AnyObject } from '../../../../../../es/shared/types';
2
1
  import { CSSProperties, PropType, ref } from 'vue';
3
- import { VxeColumnPropTypes, VxeTablePropTypes } from 'vxe-table';
2
+ import { VxeColumnPropTypes, VxeTableConstructor, VxeTableDefines, VxeTableMethods, VxeTablePrivateMethods, VxeTablePropTypes } from 'vxe-table';
4
3
  declare const _default: import("vue").DefineComponent<{
5
4
  payload: {
6
- type: PropType<VxeColumnPropTypes.HeaderSlotParams>;
5
+ type: PropType<VxeColumnPropTypes.FilterSlotParams>;
7
6
  required: true;
8
7
  };
9
- sortable: {
10
- type: BooleanConstructor;
11
- };
12
- options: {
13
- type: PropType<AnyObject[]>;
14
- default: () => never[];
15
- };
16
- checked: {
17
- type: PropType<string[]>;
18
- required: true;
19
- };
20
- sortStatus: {
21
- type: PropType<VxeTablePropTypes.SortOrder>;
22
- };
23
8
  }, {
24
9
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
25
10
  payload: {
26
- type: PropType<VxeColumnPropTypes.HeaderSlotParams>;
27
- required: true;
28
- };
29
- sortable: {
30
- type: BooleanConstructor;
31
- };
32
- options: {
33
- type: PropType<AnyObject[]>;
34
- default: () => never[];
35
- };
36
- checked: {
37
- type: PropType<string[]>;
11
+ type: PropType<VxeColumnPropTypes.FilterSlotParams>;
38
12
  required: true;
39
13
  };
40
- sortStatus: {
41
- type: PropType<VxeTablePropTypes.SortOrder>;
42
- };
43
- }>> & {
44
- "onUpdate:checked"?: ((...args: any[]) => any) | undefined;
45
- "onUpdate:sortStatus"?: ((...args: any[]) => any) | undefined;
46
- }>>;
47
- emits: (event: "update:checked" | "update:sortStatus", ...args: any[]) => void;
48
- uuid: string;
49
- configRef: import("vue").Ref<import("../../types").IhoTableConfig>;
50
- checkedRef: import("vue").Ref<string[]> | import("vue").WritableComputedRef<string[]>;
51
- sortStatusRef: import("vue").Ref<VxeTablePropTypes.SortOrder | undefined> | import("vue").WritableComputedRef<VxeTablePropTypes.SortOrder | undefined>;
14
+ }>> & {}>>;
15
+ sortable: import("vue").ComputedRef<any>;
16
+ optionsRef: import("vue").ComputedRef<VxeTableDefines.FilterOption[] & VxeColumnPropTypes.Filter[]>;
17
+ checkedRef: import("vue").WritableComputedRef<string[]>;
18
+ $table: (VxeTableConstructor & VxeTablePrivateMethods & VxeTableMethods) | undefined;
19
+ sortStatusRef: import("vue").WritableComputedRef<"desc" | "asc" | null>;
52
20
  checkedCacheRef: import("vue").Ref<string[]>;
53
- filterVisible: import("vue").Ref<boolean>;
54
21
  searchFilterText: import("vue").Ref<string>;
55
- toggleFilterVisible: () => void;
56
22
  close: () => void;
57
23
  OPTION_ITEM_HEIGHT: number;
58
24
  VIEW_CAPACITY: number;
59
- list: import("vue").Ref<import("@vueuse/core").UseVirtualListItem<AnyObject>[]>;
25
+ list: import("vue").Ref<import("@vueuse/core").UseVirtualListItem<VxeTableDefines.FilterOption>[]>;
60
26
  containerProps: {
61
27
  ref: import("vue").Ref<any>;
62
28
  onScroll: () => void;
@@ -73,15 +39,13 @@ declare const _default: import("vue").DefineComponent<{
73
39
  checkAll: import("vue").WritableComputedRef<boolean>;
74
40
  containerStyleWithHeight: import("vue").ComputedRef<CSSProperties>;
75
41
  confirmFilter: () => void;
42
+ reset: () => void;
76
43
  sortStatusList: {
77
44
  status: VxeTablePropTypes.SortOrder;
78
45
  text: string;
79
46
  }[];
80
47
  setSort: (value: VxeTablePropTypes.SortOrder) => void;
81
- iconActive: import("vue").ComputedRef<number | VxeTablePropTypes.SortOrder | undefined>;
82
- editable: import("vue").ComputedRef<boolean | undefined>;
83
- wrapperStyle: import("vue").ComputedRef<CSSProperties>;
84
- FunnelSharp: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
48
+ CheckmarkOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
85
49
  NButton: any;
86
50
  NButtonGroup: any;
87
51
  NCheckbox: any;
@@ -135,35 +99,12 @@ declare const _default: import("vue").DefineComponent<{
135
99
  readonly disabled: boolean | undefined;
136
100
  readonly defaultValue: (string | number)[] | null;
137
101
  }>;
138
- NEllipsis: any;
139
- NIcon: any;
140
102
  NInput: any;
141
- NPopover: any;
142
103
  ref: typeof ref;
143
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:checked" | "update:sortStatus")[], "update:checked" | "update:sortStatus", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
104
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
144
105
  payload: {
145
- type: PropType<VxeColumnPropTypes.HeaderSlotParams>;
146
- required: true;
147
- };
148
- sortable: {
149
- type: BooleanConstructor;
150
- };
151
- options: {
152
- type: PropType<AnyObject[]>;
153
- default: () => never[];
154
- };
155
- checked: {
156
- type: PropType<string[]>;
106
+ type: PropType<VxeColumnPropTypes.FilterSlotParams>;
157
107
  required: true;
158
108
  };
159
- sortStatus: {
160
- type: PropType<VxeTablePropTypes.SortOrder>;
161
- };
162
- }>> & {
163
- "onUpdate:checked"?: ((...args: any[]) => any) | undefined;
164
- "onUpdate:sortStatus"?: ((...args: any[]) => any) | undefined;
165
- }, {
166
- options: AnyObject[];
167
- sortable: boolean;
168
- }>;
109
+ }>>, {}>;
169
110
  export default _default;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,computed as l,inject as t,ref as a,onDeactivated as u,openBlock as o,createElementBlock as n,unref as i,Fragment as r,renderList as s,createElementVNode as v,normalizeClass as c,createBlock as d,createCommentVNode as p,createTextVNode as f,toDisplayString as m,createVNode as h,isRef as _,withCtx as y,normalizeStyle as g}from"vue";import{widthAppend as b}from"../../../../../shared/utils/index.js";import{CheckmarkOutline as k}from"@vicons/ionicons5";import{useVirtualList as C}from"@vueuse/core";import{NInput as x,NCheckbox as S,NCheckboxGroup as $,NButtonGroup as E,NButton as j}from"naive-ui";import w from"../../../../../_virtual/plugin-vue_export-helper.js";const A={class:"iho-table__filterWrapper"},I={key:0},L=["onClick"],U={class:"iho-table__filterListItem"},B={class:"iho-table__filterFooter"};var F=w(e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const w=e,F=l((()=>{var e,l,t;return null==(t=null==(l=null==(e=w.payload)?void 0:e.column.editRender)?void 0:l.props)?void 0:t.sortable})),O=l((()=>{var e,l,t;return null!=(t=null==(l=null==(e=w.payload)?void 0:e.column)?void 0:l.filters)?t:[]})),P=l({get:()=>O.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(w.payload)return O.value.forEach((l=>{w.payload.$panel.changeOption(null,e.includes(l.value),l)})),w.payload.$panel.confirmFilter(new CustomEvent("click"))}}),W=t("$xetable"),Z=l({get(){if(!W)return null;const e=W.getSortColumns().find((e=>{var l;return e.column===(null==(l=w.payload)?void 0:l.column)}));return e?e.order:null},set(e){W&&w.payload&&w.payload.$panel&&W.triggerSortEvent(new CustomEvent("click"),w.payload.column,e)}}),q=a([...P.value]),z=a("");function D(){W&&(W.reactData.filterStore.visible=!1)}u(D);const{list:H,containerProps:R,wrapperProps:G}=C(l((()=>z.value?O.value.filter((e=>`${e.label}`.includes(z.value))):O.value)),{itemHeight:32,overscan:3}),J=l((()=>!!q.value.length&&q.value.length!==O.value.length)),K=l({get:()=>q.value.length===O.value.length&&0!==O.value.length,set:e=>{q.value=e?O.value.map((e=>e.value)):[]}}),M=l((()=>({...R.style,height:b(320)})));function N(){P.value=q.value,D()}function Q(){q.value=[]}const T=[{status:"asc",text:"升序 A to Z"},{status:"desc",text:"降序 Z to A"}];return(e,l)=>(o(),n("section",A,[i(F)?(o(),n("div",I,[(o(),n(r,null,s(T,(e=>v("div",{key:e.status,class:c(["iho-table__filterButton",{"iho-table__filterButton--active":i(Z)===e.status}]),onClick:l=>{return t=e.status,Z.value=t,void D();var t}},[i(Z)===e.status?(o(),d(i(k),{key:0,class:"iho-table__sortActiveIcon"})):p("v-if",!0),f(" "+m(e.text),1)],10,L))),64))])):p("v-if",!0),i(O).length>5?(o(),d(i(x),{key:1,value:z.value,"onUpdate:value":l[0]||(l[0]=e=>z.value=e)},null,8,["value"])):p("v-if",!0),v("div",U,[h(i(S),{label:"全选",checked:i(K),"onUpdate:checked":l[1]||(l[1]=e=>_(K)?K.value=e:null),indeterminate:i(J)},null,8,["checked","indeterminate"])]),h(i($),{value:q.value,"onUpdate:value":l[3]||(l[3]=e=>q.value=e)},{default:y((()=>[v("section",{ref:i(R).ref,style:g(i(M)),onScroll:l[2]||(l[2]=(...e)=>i(R).onScroll&&i(R).onScroll(...e)),class:"iho-table__filterListWrapper"},[v("section",{style:g(i(G).style)},[(o(!0),n(r,null,s(i(H),(e=>(o(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[h(i(S),{value:e.data.value,label:e.data.label},null,8,["value","label"])])))),128))],4)],36)])),_:1},8,["value"]),v("footer",B,[v("section",null,m(`已选择${q.value.length}项`),1),h(i(E),{size:"small"},{default:y((()=>[h(i(j),{onClick:Q},{default:y((()=>[f("清空")])),_:1}),h(i(j),{onClick:D},{default:y((()=>[f("取消")])),_:1}),h(i(j),{type:"primary",onClick:N},{default:y((()=>[f("确定")])),_:1})])),_:1})])]))}}),[["__file","filter.vue"]]);export{F as default};
@@ -0,0 +1 @@
1
+ export declare function filterRenderPlugin(): import("../../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{createVNode as e,nextTick as r}from"vue";import{jsonParse as t,traverse as l,arrayed as i}from"../../../../../shared/utils/index.js";import{isObject as n,first as o,isArray as s}from"lodash-es";import"../../../index.js";import{IHO_TABLE_NUMBER_STATUS as u}from"../../constants/index.js";import{IhoTableRenderHelper as a,IhoTableUtils as d}from"../../utils/index.js";import f from"./filter.vue.js";import{defineTablePlugin as p}from"../../hooks/useTablePlugin.js";function c(){const c="filterRenderPlugin";return p({name:c,vxe(r){r.renderer.mixin({filterRenderPlugin:{showFilterFooter:!1,renderFilter:(r,t)=>e(f,{payload:t},null)}})},apply(e){let f=[];e.fieldHooks.field.tap(c,(e=>{var r,l,i,f,p,c;const v=null==(r=e.editRender)?void 0:r.props;if(!n(v))return e;const m=t(v.fieldSetting||"");if(!a.hasFilter(m))return e;e.editRender={...e.editRender,props:{...null==(l=e.editRender)?void 0:l.props,sortable:e.sortable}},e.filterRender={name:"filterRenderPlugin"};let h=null!=(p=null==(f=null==(i=m.mapping)?void 0:i.mappingFiled)?void 0:f.reduce(((e,r)=>{const t=o(r.value);return n(t)&&e.push({label:t.key,value:t.value,data:t.value}),e}),[]))?p:[];return function(e){const r=["SEARCH","SELECT","RADIO","CHECKBOX"];return(e.notParticipatingSearch||"")!==u.POSITIVE&&r.includes(d.getCellType(e))&&s(e.options)&&e.options.length}(v)&&(h=null!=(c=v.options)?c:[]),e.filters=h,e.sortable?e.headerClassName=({$table:e,column:r})=>{const t=["iho-table__hideSortIcon"];return e.isSort(r)&&t.push("is--filter-active"),t}:e.headerClassName="iho-table__hideSortIcon",e})),e.fieldHooks.fieldList.tap(c,(e=>f=e)),e.fieldHooks.fieldEnd.tapPromise(c,(async(e,{$table:t})=>{var i;try{if(await r(),!t.value)return;const o=null!=(i=t.value.getColumns())?i:[],s=[];if(l(f,(e=>{o.find((r=>r.field===e.field))||s.push(e)})),!s.length)return;setTimeout((()=>{var r,l;if(null==(r=e.sortConfig)?void 0:r.multiple){const e=null!=(l=t.value.getColumns())?l:[],r=s.concat(e).reduce(((e,r)=>{var t;const l=null==(t=r.editRender)?void 0:t.props;return n(l)&&v(l.isOrder)&&e.push({field:r.field,order:l.isOrder}),e}),[]);t.value.sort(r)}else s.reverse().some((e=>{var r;const l=null==(r=e.editRender)?void 0:r.props;if(n(l)&&v(l.isOrder))return e&&t.value.sort(e.field,l.isOrder),!0}))}),100)}finally{f=[]}})),e.exposeHooks.expose.tap(c,((e,r,{$table:t})=>(Object.assign(e,{setSort(e,r){t.value&&t.value.sort(e,r)},setFilter(e,r){if(!t.value)return;const l=t.value.getColumnByField(e);if(!l||!s(l.filters))return;const n=i(r);l.filters.forEach((e=>{e.checked=n.includes(e.value)})),t.value.updateData()}}),e)))}})}function v(e){return["asc","desc",null].includes(e)}export{c as filterRenderPlugin};
@@ -1 +1 @@
1
- import*as e from"./anchorPlugin/index.js";import*as r from"./defaultConfigPlugin/index.js";import*as i from"./filterPlugin/index.js";import*as n from"./keyboardEventPlugin/index.js";import*as d from"./lowCodeFieldAdaptorPlugin/index.js";import*as s from"./rendererPlugins/editableWidgets/dateRendererPlugin/index.js";import*as t from"./rendererPlugins/editableWidgets/inputRendererPlugin.js";import*as l from"./rendererPlugins/editableWidgets/numberRendererPlugin.js";import*as g from"./rendererPlugins/editableWidgets/selectRendererPlugin/index.js";import*as u from"./rendererPlugins/editableWidgets/separateRendererPlugin/index.js";import*as o from"./rendererPlugins/editableWidgets/timeRendererPlugin.js";import*as P from"./rendererPlugins/widgets/checkRendererPlugin.js";import*as a from"./rendererPlugins/widgets/colorRendererPlugin.js";import*as m from"./rendererPlugins/widgets/defaultRendererPlugin.js";import*as x from"./rendererPlugins/widgets/labelRendererPlugin.js";import*as p from"./rendererPlugins/widgets/pictureRendererPlugin.js";import*as f from"./rendererPlugins/widgets/seqRendererPlugin.js";import*as R from"./rowClickPlugin/index.js";import*as j from"./rowGroupSettingPlugin/index.js";import*as b from"./virtualTreePlugin/index.js";import{separateMetaModule as w}from"../../../../shared/utils/index.js";var c=w(Object.assign({"./anchorPlugin/index.tsx":e,"./defaultConfigPlugin/index.ts":r,"./filterPlugin/index.tsx":i,"./keyboardEventPlugin/index.ts":n,"./lowCodeFieldAdaptorPlugin/index.tsx":d,"./rendererPlugins/editableWidgets/dateRendererPlugin/index.tsx":s,"./rendererPlugins/editableWidgets/inputRendererPlugin.tsx":t,"./rendererPlugins/editableWidgets/numberRendererPlugin.tsx":l,"./rendererPlugins/editableWidgets/selectRendererPlugin/index.tsx":g,"./rendererPlugins/editableWidgets/separateRendererPlugin/index.tsx":u,"./rendererPlugins/editableWidgets/timeRendererPlugin.tsx":o,"./rendererPlugins/widgets/checkRendererPlugin.tsx":P,"./rendererPlugins/widgets/colorRendererPlugin.tsx":a,"./rendererPlugins/widgets/defaultRendererPlugin.tsx":m,"./rendererPlugins/widgets/labelRendererPlugin.tsx":x,"./rendererPlugins/widgets/pictureRendererPlugin.tsx":p,"./rendererPlugins/widgets/seqRendererPlugin.tsx":f,"./rowClickPlugin/index.ts":R,"./rowGroupSettingPlugin/index.ts":j,"./virtualTreePlugin/index.ts":b}));export{c as default};
1
+ import*as e from"./anchorPlugin/index.js";import*as r from"./defaultConfigPlugin/index.js";import*as i from"./filterRenderPlugin/index.js";import*as n from"./keyboardEventPlugin/index.js";import*as d from"./lowCodeFieldAdaptorPlugin/index.js";import*as s from"./rendererPlugins/editableWidgets/dateRendererPlugin/index.js";import*as t from"./rendererPlugins/editableWidgets/inputRendererPlugin.js";import*as l from"./rendererPlugins/editableWidgets/numberRendererPlugin.js";import*as g from"./rendererPlugins/editableWidgets/selectRendererPlugin/index.js";import*as u from"./rendererPlugins/editableWidgets/separateRendererPlugin/index.js";import*as o from"./rendererPlugins/editableWidgets/timeRendererPlugin/index.js";import*as P from"./rendererPlugins/widgets/checkRendererPlugin.js";import*as a from"./rendererPlugins/widgets/colorRendererPlugin.js";import*as m from"./rendererPlugins/widgets/defaultRendererPlugin.js";import*as x from"./rendererPlugins/widgets/labelRendererPlugin.js";import*as p from"./rendererPlugins/widgets/pictureRendererPlugin.js";import*as f from"./rendererPlugins/widgets/seqRendererPlugin.js";import*as R from"./rowClickPlugin/index.js";import*as j from"./rowGroupSettingPlugin/index.js";import*as b from"./virtualTreePlugin/index.js";import{separateMetaModule as w}from"../../../../shared/utils/index.js";var c=w(Object.assign({"./anchorPlugin/index.tsx":e,"./defaultConfigPlugin/index.ts":r,"./filterRenderPlugin/index.tsx":i,"./keyboardEventPlugin/index.ts":n,"./lowCodeFieldAdaptorPlugin/index.tsx":d,"./rendererPlugins/editableWidgets/dateRendererPlugin/index.tsx":s,"./rendererPlugins/editableWidgets/inputRendererPlugin.tsx":t,"./rendererPlugins/editableWidgets/numberRendererPlugin.tsx":l,"./rendererPlugins/editableWidgets/selectRendererPlugin/index.tsx":g,"./rendererPlugins/editableWidgets/separateRendererPlugin/index.tsx":u,"./rendererPlugins/editableWidgets/timeRendererPlugin/index.tsx":o,"./rendererPlugins/widgets/checkRendererPlugin.tsx":P,"./rendererPlugins/widgets/colorRendererPlugin.tsx":a,"./rendererPlugins/widgets/defaultRendererPlugin.tsx":m,"./rendererPlugins/widgets/labelRendererPlugin.tsx":x,"./rendererPlugins/widgets/pictureRendererPlugin.tsx":p,"./rendererPlugins/widgets/seqRendererPlugin.tsx":f,"./rowClickPlugin/index.ts":R,"./rowGroupSettingPlugin/index.ts":j,"./virtualTreePlugin/index.ts":b}));export{c as default};
@@ -0,0 +1,85 @@
1
+ import { PropType } from 'vue';
2
+ import { VxeTableDefines } from 'vxe-table';
3
+ import { AnyObject } from '../../../../../../../../es/shared/types';
4
+ declare const _default: import("vue").DefineComponent<{
5
+ formattedValue: {
6
+ type: StringConstructor;
7
+ default: undefined;
8
+ };
9
+ column: {
10
+ type: PropType<VxeTableDefines.ColumnInfo>;
11
+ required: true;
12
+ };
13
+ row: {
14
+ type: PropType<AnyObject>;
15
+ required: true;
16
+ };
17
+ rowIndex: {
18
+ type: NumberConstructor;
19
+ required: true;
20
+ };
21
+ }, {
22
+ attr: AnyObject;
23
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
24
+ formattedValue: {
25
+ type: StringConstructor;
26
+ default: undefined;
27
+ };
28
+ column: {
29
+ type: PropType<VxeTableDefines.ColumnInfo>;
30
+ required: true;
31
+ };
32
+ row: {
33
+ type: PropType<AnyObject>;
34
+ required: true;
35
+ };
36
+ rowIndex: {
37
+ type: NumberConstructor;
38
+ required: true;
39
+ };
40
+ }>> & {
41
+ onClick?: ((...args: any[]) => any) | undefined;
42
+ "onUpdate:formattedValue"?: ((...args: any[]) => any) | undefined;
43
+ }>>;
44
+ emitFormChangeWithParams: (params?: AnyObject) => void;
45
+ emit: (event: "click" | "update:formattedValue", ...args: any[]) => void;
46
+ formRef: import("vue").Ref<HTMLElement | null>;
47
+ isShow: import("vue").Ref<boolean>;
48
+ __formattedValue: import("vue").Ref<string | undefined>;
49
+ oldValue: string | undefined;
50
+ placeholder: any;
51
+ valueFormat: any;
52
+ shortcutOptions: any;
53
+ timeConfig: AnyObject;
54
+ clickShortcutOption: (item: string) => void;
55
+ onBlur: () => void;
56
+ NTimePicker: any;
57
+ NInput: any;
58
+ NPopover: any;
59
+ NSpace: any;
60
+ NButton: any;
61
+ NScrollbar: any;
62
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click" | "update:formattedValue")[], "click" | "update:formattedValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
63
+ formattedValue: {
64
+ type: StringConstructor;
65
+ default: undefined;
66
+ };
67
+ column: {
68
+ type: PropType<VxeTableDefines.ColumnInfo>;
69
+ required: true;
70
+ };
71
+ row: {
72
+ type: PropType<AnyObject>;
73
+ required: true;
74
+ };
75
+ rowIndex: {
76
+ type: NumberConstructor;
77
+ required: true;
78
+ };
79
+ }>> & {
80
+ onClick?: ((...args: any[]) => any) | undefined;
81
+ "onUpdate:formattedValue"?: ((...args: any[]) => any) | undefined;
82
+ }, {
83
+ formattedValue: string;
84
+ }>;
85
+ export default _default;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,useAttrs as t,ref as a,openBlock as l,createBlock as o,unref as r,mergeProps as u,withCtx as i,createVNode as m,isRef as d,createElementBlock as s,Fragment as f,renderList as n,createTextVNode as p,toDisplayString as c,createCommentVNode as v}from"vue";import{NPopover as _,NInput as h,NSpace as y,NTimePicker as V,NScrollbar as k,NButton as g}from"naive-ui";import{useIhoTableFormEvent as w}from"../../../../utils/index.js";import{useAutoFocus as b}from"../hooks/useAutoFocus.js";import{isValidTime as F,getFormatTime as j}from"./timeUtils.js";import C from"../../../../../../../_virtual/plugin-vue_export-helper.js";var U=C(e({__name:"editTime",props:{formattedValue:{type:String,default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:formattedValue","click"],setup(e,{emit:C}){const U=e,x=t(),{emitFormChangeWithParams:H}=w(U),{formRef:q,isShow:N}=b(),O=a(U.formattedValue);let $=U.formattedValue;const{placeholder:A="请选择",valueFormat:M="HH:mm",shortcutOptions:R=[]}=x,S={placeholder:A,valueFormat:M,format:M||"yyyy-MM-dd HH:mm:ss",onUpdateFormattedValue:e=>{$!==e&&(C("update:formattedValue",e),H({oldValue:$}),$=e)},onConfirm:()=>N.value=!1};function T(){let e=U.formattedValue;if(!F(e,M))if(isNaN(e)||!/^\d{4}$/.test(e)&&!/^\d{6}$/.test(e))e="";else{const t=j(e,M);e=F(t,M)?t:""}e=e||void 0,S.onUpdateFormattedValue(e),O.value=e}return(t,a)=>(l(),o(r(_),u({show:r(N),trigger:"click",showArrow:!1,placement:"bottom-start",style:{padding:"0"}},t.$attrs,{onClickoutside:a[3]||(a[3]=()=>N.value=!1)}),{trigger:i((()=>[m(r(h),{ref_key:"formRef",ref:q,clearable:"",value:e.formattedValue,"onUpdate:value":a[0]||(a[0]=e=>d(formattedValue)?formattedValue.value=e:null),onClick:a[1]||(a[1]=()=>N.value=!0),onBlur:T},null,8,["value"])])),default:i((()=>[m(r(y),null,{default:i((()=>[m(r(V),u({show:"","formatted-value":O.value,"onUpdate:formatted-value":a[2]||(a[2]=e=>O.value=e)},r(S),{class:"iho-table__time-picker",to:!1}),null,16,["formatted-value"]),m(r(k),{class:"iho-table__scrollbar"},{default:i((()=>[r(R).length?(l(),o(r(y),{key:0,vertical:"",wrap:!1},{default:i((()=>[(l(!0),s(f,null,n(r(R),(e=>(l(),o(r(g),{size:"tiny",key:e,onClick:t=>function(e){O.value=e,S.onUpdateFormattedValue(e),N.value=!1}(e)},{default:i((()=>[p(c(e),1)])),_:2},1032,["onClick"])))),128))])),_:1})):v("v-if",!0)])),_:1})])),_:1})])),_:1},16,["show"]))}}),[["__file","editTime.vue"]]);export{U as default};
@@ -1 +1 @@
1
- export declare function timeRendererPlugin(): import("../../../../../../../es/components/iho-table").TablePlugin;
1
+ export declare function timeRendererPlugin(): import("../../../../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{createVNode as e,mergeProps as r}from"vue";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as o}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as t,IhoTableRenderHelper as n}from"../../../../utils/index.js";import i from"./editTime.vue.js";import{defineTablePlugin as d}from"../../../../hooks/useTablePlugin.js";function l(){return d({name:"timeRendererPlugin",vxe(d){d.interceptor.add("event.clearActived",t(o.TIME,(e=>e.classList.contains("n-popover")))),d.renderer.add(o.TIME,{renderCell:n.createDefaultRenderCell(),renderEdit:n.createRenderEdit((({fieldItem:o,emitFormClick:t,row:n,column:d,$rowIndex:l})=>[e(i,r({formattedValue:n[d.field],"onUpdate:formattedValue":e=>n[d.field]=e,column:d,row:n,"row-index":l},o.componentProps,{onClick:t}),null)]))})}})}export{l as timeRendererPlugin};
@@ -0,0 +1,2 @@
1
+ export declare function getFormatTime(time: string, valueFormat: string): string | undefined;
2
+ export declare function isValidTime(time: string, valueFormat: string): boolean;
@@ -0,0 +1 @@
1
+ function t(t,d){if(!t)return"";return d.includes(":")?((t,d)=>{const n=new RegExp("\\w{1,"+d+"}","g"),e=t.match(n);return null==e?void 0:e.join(":")})(t,2):t}function d(t,d){if(/^(0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$/.test(t)&&"HH:mm"===d||/^(0\d{1}|1\d{1}):([0-5]\d{1})$/.test(t)&&"hh:mm"===d||/^(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/.test(t)&&"HH:mm:ss"===d||/^(0\d{1}|1\d{1}):[0-5]\d{1}:([0-5]\d{1})$/.test(t)&&"hh:mm:ss"===d){const d=t.split(":");return 60*+d[0]*60+60*+d[1]+(d[3]?+d[3]:0)<86400}return!1}export{t as getFormatTime,d as isValidTime};
@@ -1 +1 @@
1
- import{createVNode as r}from"vue";import{isString as e}from"lodash-es";import"../../../../index.js";import{WIDGET_TYPE as n}from"../../../constants/index.js";import{IhoTableWarn as t}from"../../../utils/index.js";import{defineTablePlugin as o}from"../../../hooks/useTablePlugin.js";function i(){return o({name:"defaultRendererPlugin",vxe(o){o.renderer.add(n.DEFAULT,{renderCell(n,{row:o,column:i}){const l=o[i.field];return e(c=l)&&c.match(/^###\{[^{}]+}$/)?function(e){const n=function(r){try{return JSON.parse(r.replace(/^###/,""))}catch(e){return t(`invalid json-content ${r}`),{}}}(e);return[r("div",{style:{color:n.background}},[function(e){if(!e)return null;if(e.match(/#[\da-f]{6}|[\da-f]{3}/i))return r("i",{class:"icon-dot",style:{"--table-icon-color":e,"--table-icon-shadow":e}},null);return r("i",{class:n.icon},null)}(n.icon),n.change_text])]}(l):[l];var c}}),o.renderer.add(n.STATUS,o.renderer.get(n.DEFAULT))}})}export{i as defaultRendererPlugin};
1
+ import{createVNode as n}from"vue";import{isMatchLowCodeCondition as r}from"../../../../../../shared/utils/index.js";import{isString as o,isObject as e,isArray as t}from"lodash-es";import"../../../../index.js";import{WIDGET_TYPE as i}from"../../../constants/index.js";import{IhoTableWarn as c}from"../../../utils/index.js";import{defineTablePlugin as l}from"../../../hooks/useTablePlugin.js";function d(){return l({name:"defaultRendererPlugin",vxe(l){l.renderer.add(i.DEFAULT,{renderCell(i,{row:l,column:d}){const u=l[d.field],s=function(n){return o(n)&&!!n.match(/^###\{[^{}]+}$/)}(u)?function(r){const o=t(r);return[n("div",{style:{color:o.background||o.icon}},[e(o.icon),o.change_text])];function e(r){return r?r.match(/#[\da-f]{6}|[\da-f]{3}/i)?n("i",{class:"icon-dot",style:{"--table-icon-color":r,"--table-icon-shadow":r}},null):n("i",{class:o.icon},null):null}function t(n){try{return JSON.parse(n.replace(/^###/,""))}catch(r){return c(`invalid json-content ${n}`),{}}}}(u):[u];return function(o,e,i,c){if(!t(o)||!o.length)return c;const l=o.find((n=>n.condition&&n.condition.find((n=>{const o=e[n.field_key||i.field];return r(o,n)}))));return l?n("div",{style:{color:l.color},class:l.icon},[c]):c}(function(n){var r,o,t;const i=null==(r=n.editRender)?void 0:r.props;if(!e(i))return;return null!=(t=i.colorAndIcon)?t:null==(o=i.settingObj)?void 0:o.colorAndIcon}(d),l,d,s)}}),l.renderer.add(i.STATUS,l.renderer.get(i.DEFAULT))}})}export{d as defaultRendererPlugin};
@@ -1,8 +1,8 @@
1
- import { AnyObject, MaybeString, TupleToUnion } from '../../../../../es/shared/types';
2
- import { VxeTableProps, VxeTableDefines, VxeTableInstance, VxeColumnPropTypes } from 'vxe-table';
1
+ import { AnyObject, ArrayAble, MaybeString, TupleToUnion } from '../../../../../es/shared/types';
2
+ import { LOW_CODE_VALUE_RELATION } from '../../../../../es/shared/utils';
3
+ import { VxeTableProps, VxeTableDefines, VxeTableInstance, VxeColumnPropTypes, VxeTablePropTypes } from 'vxe-table';
3
4
  import { VxeTableListeners } from 'vxe-table/types/table';
4
5
  import { IHO_TABLE_STRING_STATUS, IhoTableEventNameTuple, IhoTableRowGroupSequence } from '../../../../../es/components/iho-table/src/constants';
5
- import { FilterState } from '../../../../../es/components/iho-table/src/plugins/filterPlugin/types';
6
6
  export * from './pluginType';
7
7
  export interface IhoTableRowGroupItem {
8
8
  groupName?: string;
@@ -38,15 +38,23 @@ export declare namespace IhoTableLowCodeField {
38
38
  mapping?: {
39
39
  type: string;
40
40
  mappingFiled: Array<{
41
- value: Array<{
42
- options: AnyObject[];
43
- }>;
41
+ value: Array<Record<'key' | 'value', string>>;
44
42
  }>;
45
43
  };
46
44
  };
45
+ type ColorAndIconItem = {
46
+ condition?: {
47
+ con: LOW_CODE_VALUE_RELATION & string;
48
+ value: unknown;
49
+ field_key?: string;
50
+ }[];
51
+ color?: string;
52
+ icon?: string;
53
+ };
47
54
  type SettingObj = Partial<{
48
55
  attr: string;
49
56
  isHide: MaybeString<0 | 1>;
57
+ colorAndIcon: ColorAndIconItem[];
50
58
  [K: string]: unknown;
51
59
  }>;
52
60
  }
@@ -62,11 +70,13 @@ export declare type LowCodeTableFieldItem = {
62
70
  treeNode: boolean;
63
71
  isShow: MaybeString<0 | 1>;
64
72
  isSort: MaybeString<0 | 1>;
73
+ isOrder: MaybeString<0> | VxeTablePropTypes.SortOrder;
65
74
  formType: string;
66
75
  fieldSetting: string;
67
76
  componentProps: AnyObject;
68
77
  options: {
69
78
  label?: string;
79
+ key?: string;
70
80
  value: string;
71
81
  disabled?: boolean;
72
82
  }[];
@@ -75,15 +85,12 @@ export declare type LowCodeTableFieldItem = {
75
85
  headerSlotFn: NonNullable<IhoTableFieldItem['slots']>['header'];
76
86
  editSlotFn: NonNullable<IhoTableFieldItem['slots']>['edit'];
77
87
  footerSlotFn: NonNullable<IhoTableFieldItem['slots']>['footer'];
78
- filterDefaultValue: Partial<{
79
- checked: string[];
80
- sortStatus: null | 'asc' | 'desc';
81
- }>;
82
88
  /**
83
89
  * 即将被废弃,请使用表格外层的beforeEditMethod属性
84
90
  * @deprecated
85
91
  */
86
92
  checkEditStatus: (payload: VxeTableDefines.CellRenderBodyParams) => boolean | void;
93
+ colorAndIcon: IhoTableLowCodeField.ColorAndIconItem[];
87
94
  }> & Partial<VxeTableDefines.ColumnInfo>;
88
95
  export declare type IhoTableFormChangePayload = {
89
96
  column: IhoTableFieldItem;
@@ -109,5 +116,7 @@ export declare type IhoTableAnchorItem = {
109
116
  };
110
117
  export declare type IhoTableExpose = {
111
118
  $table: VxeTableInstance;
112
- setFilterState(fieldName: string, value: Partial<Omit<FilterState, 'options'>>): void;
119
+ loadData(data: AnyObject[]): void;
120
+ setSort(field: string, value: 'asc' | 'desc' | null): void;
121
+ setFilter(field: string, value: ArrayAble<string>): void;
113
122
  };
@@ -1 +1 @@
1
- import{inject as e,reactive as n,unref as t,toRaw as r,createVNode as o}from"vue";import{jsonParse as i,findAncestor as u}from"../../../../shared/utils/index.js";import{promiseTimeout as l}from"@vueuse/shared";import{isNumber as c,cloneDeep as a,isString as d,isObject as s}from"lodash-es";import{InjectionIhoTableEmits as m,InjectionIhoTableConfig as f,IHO_TABLE_STRING_STATUS as v,IHO_TABLE_NUMBER_STATUS as p}from"../constants/index.js";function I(e){return console.warn(`[IhoTable]: ${e}`)}const g=Object.freeze({getCellType(e){var n;return((null==(n=e.settingObj)?void 0:n.attr)||e.formType||"DEFAULT").toUpperCase()}});function h(){var n,t,r;const o=e(f);return o||I("this function(getRowHeight) only can be used in setup environment"),null!=(r=null==(t=null==(n=null==o?void 0:o.value)?void 0:n.rowConfig)?void 0:t.height)?r:32}function E(e){const n=e.slice(2);return`${n[0].toLowerCase()}${n.slice(1)}`}function w(e){return`on${e[0].toUpperCase()}${e.slice(1)}`}function C(e,t=!0){const r=t?n(new Map):new Map;return{getItemFromUUID:function(n){return r.set(n,r.get(n)||e()).get(n)},removeItemFromUUID:function(e){r.delete(e)}}}async function T(e,n){return r()||await l(0),r()||function(){const n=+e.colWidth;return c(n)?n:64}();function r(){var r,o;return null==(o=null==(r=t(n))?void 0:r.getColumnByField(e.field))?void 0:o.renderWidth}}function P(n){const t=e(m);function o(){var e;return{value:n.row[n.column.field],row:n.row,column:{...n.column,...null==(e=n.column.editRender)?void 0:e.props},index:n.rowIndex>-1?n.rowIndex:n.$rowIndex}}function i(e={}){t("formChange",{...o(),...a(r(e))})}function u(e={}){t("formClick",{...o(),...a(r(e))})}return{emitFormChange:function(){i()},emitFormClick:function(){u()},emitFormChangeWithParams:i,emitFormClickWithParams:u}}const F=Object.freeze({createDefaultRenderCell:function(){return function(e,{row:n,column:t}){return[o("span",null,[n[t.field]])]}},createRenderEdit:function(e){return function({props:n},t){return e({...t,fieldItem:n||{},...P(t)})}},isEditableColumn(e,n){var t;return!1!==(null==(t=e.editConfig)?void 0:t.showIcon)&&n.editRender&&!1!==n.editRender.enabled},hasFilter(e){return d(e)&&(e=i(e||"")),s(e)&&((n=e).notParticipatingSearch!==v.POSITIVE&&"manual"===(null==(t=n.mapping)?void 0:t.type));var n,t}}),O=Object.freeze({isPositive:e=>e===p.POSITIVE||e===v.POSITIVE,isNegative:e=>e===p.NEGATIVE||e===v.NEGATIVE,notPositive:e=>e!==p.POSITIVE&&e!==v.POSITIVE,notNegative:e=>e!==p.NEGATIVE&&e!==v.NEGATIVE}),V=(e,n)=>({$event:t,column:r})=>{var o;if((null==(o=r.editRender)?void 0:o.name)!==e)return!0;const i=null==t?void 0:t.target;return!s(i)||!u(i,n)};export{F as IhoTableRenderHelper,O as IhoTableStatusHelper,g as IhoTableUtils,I as IhoTableWarn,V as createIhoTableClearActivedInterceptor,E as eventListener2EventName,w as eventName2EventListener,T as getColumnRenderWidth,h as getRowHeight,P as useIhoTableFormEvent,C as useUUIDMap};
1
+ import{inject as e,unref as n,toRaw as t,createVNode as r}from"vue";import{jsonParse as o,findAncestor as i}from"../../../../shared/utils/index.js";import{promiseTimeout as u}from"@vueuse/shared";import{isNumber as l,cloneDeep as c,isString as a,isObject as d}from"lodash-es";import{InjectionIhoTableEmits as s,InjectionIhoTableConfig as f,IHO_TABLE_STRING_STATUS as m,IHO_TABLE_NUMBER_STATUS as v}from"../constants/index.js";function p(e){return console.warn(`[IhoTable]: ${e}`)}const I=Object.freeze({getCellType(e){var n;return((null==(n=e.settingObj)?void 0:n.attr)||e.formType||"DEFAULT").toUpperCase()}});function h(){var n,t,r;const o=e(f);return o||p("this function(getRowHeight) only can be used in setup environment"),null!=(r=null==(t=null==(n=null==o?void 0:o.value)?void 0:n.rowConfig)?void 0:t.height)?r:32}function g(e){const n=e.slice(2);return`${n[0].toLowerCase()}${n.slice(1)}`}function E(e){return`on${e[0].toUpperCase()}${e.slice(1)}`}async function C(e,t){return r()||await u(0),r()||function(){const n=+e.colWidth;return l(n)?n:64}();function r(){var r,o;return null==(o=null==(r=n(t))?void 0:r.getColumnByField(e.field))?void 0:o.renderWidth}}function w(n){const r=e(s);function o(){var e;return{value:n.row[n.column.field],row:n.row,column:{...n.column,...null==(e=n.column.editRender)?void 0:e.props},index:n.rowIndex>-1?n.rowIndex:n.$rowIndex}}function i(e={}){r("formChange",{...o(),...c(t(e))})}function u(e={}){r("formClick",{...o(),...c(t(e))})}return{emitFormChange:function(){i()},emitFormClick:function(){u()},emitFormChangeWithParams:i,emitFormClickWithParams:u}}const T=Object.freeze({createDefaultRenderCell:function(){return function(e,{row:n,column:t}){return[r("span",null,[n[t.field]])]}},createRenderEdit:function(e){return function({props:n},t){return e({...t,fieldItem:n||{},...w(t)})}},isEditableColumn(e,n){var t;return!1!==(null==(t=e.editConfig)?void 0:t.showIcon)&&n.editRender&&!1!==n.editRender.enabled},hasFilter(e){return a(e)&&(e=o(e||"")),d(e)&&((n=e).notParticipatingSearch!==m.POSITIVE&&"manual"===(null==(t=n.mapping)?void 0:t.type));var n,t}}),P=Object.freeze({isPositive:e=>e===v.POSITIVE||e===m.POSITIVE,isNegative:e=>e===v.NEGATIVE||e===m.NEGATIVE,notPositive:e=>e!==v.POSITIVE&&e!==m.POSITIVE,notNegative:e=>e!==v.NEGATIVE&&e!==m.NEGATIVE}),O=(e,n)=>({$event:t,column:r})=>{var o;if((null==(o=r.editRender)?void 0:o.name)!==e)return!0;const u=null==t?void 0:t.target;return!d(u)||!i(u,n)};export{T as IhoTableRenderHelper,P as IhoTableStatusHelper,I as IhoTableUtils,p as IhoTableWarn,O as createIhoTableClearActivedInterceptor,g as eventListener2EventName,E as eventName2EventListener,C as getColumnRenderWidth,h as getRowHeight,w as useIhoTableFormEvent};
@@ -1 +1 @@
1
- .iho-table__boldCell{font-weight:700}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#f2f2f2;border:3px dashed transparent;border-radius:5px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.iho-table .vxe-table--empty-content{height:100%;width:100%}.iho-table .vxe-table--empty-content>div,.iho-table .vxe-tree-cell{height:100%}.iho-table .vxe-table--header{background-color:#f2f2f2}.iho-table .vxe-cell--title{color:#35393c}.iho-table .vxe-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.iho-table .vxe-body--expanded-column,.iho-table .vxe-table--border-line{border-color:#d5d5d599!important}.iho-table .vxe-table--footer-wrapper{border-top-color:#d5d5d599!important}.iho-table .border--default .vxe-body--column,.iho-table .border--default .vxe-footer--column,.iho-table .border--default .vxe-header--column,.iho-table .border--inner .vxe-body--column,.iho-table .border--inner .vxe-footer--column,.iho-table .border--inner .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .border--full .vxe-body--column,.iho-table .border--full .vxe-footer--column,.iho-table .border--full .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599),linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .border--default .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--full .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--inner .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--outer .vxe-header--row:last-child .vxe-header--gutter{background-image:linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .vxe-table--header-border-line{border-bottom-color:#d5d5d599!important}.iho-table .vxe-table--fixed-left-wrapper.scrolling--middle{box-shadow:7px 0 8px -3px rgba(0,0,0,.15)!important}.iho-table .vxe-table--fixed-right-wrapper.scrolling--middle{box-shadow:-7px 0 8px -3px rgba(0,0,0,.15)!important}.iho-table .icon-dot{background:var(--table-icon-color);box-shadow:0 2px 4px 0 var(--table-icon-shadow)}.iho-table .icon-dot,.iho-table .icon-dot-red{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-red{background:red;box-shadow:0 2px 4px 0 rgba(255,0,0,.5)}.iho-table .icon-dot-blue{background:blue;box-shadow:0 2px 4px 0 rgba(0,0,255,.5)}.iho-table .icon-dot-blue,.iho-table .icon-dot-green{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-green{background:green;box-shadow:0 2px 4px 0 rgba(0,128,0,.5)}.iho-table .icon-dot-gray{background:gray;box-shadow:0 2px 4px 0 hsla(0,0%,50%,.5)}.iho-table .icon-dot-gray,.iho-table .icon-dot-yellow{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-yellow{background:#ff0;box-shadow:0 2px 4px 0 rgba(255,255,0,.5)}.iho-table .icon-dot-resolved{background:#36be8c;box-shadow:0 2px 4px 0 rgba(54,190,140,.5)}.iho-table .icon-dot-huifu,.iho-table .icon-dot-resolved{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-huifu{background:#42d0f6;box-shadow:0 2px 4px 0 rgba(66,208,246,.5)}.iho-table .icon-dot-close{background:#718391;box-shadow:0 2px 4px 0 rgba(113,131,145,.5)}.iho-table .icon-dot-audit,.iho-table .icon-dot-close{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-audit{background:#f4ba32;box-shadow:0 2px 4px 0 rgba(244,186,50,.5)}.iho-table .icon-dot-design{background:#927ce1;box-shadow:0 2px 4px 0 rgba(146,124,225,.5)}.iho-table .icon-dot-design,.iho-table .icon-dot-develop{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-develop{background:#4eb0ef;box-shadow:0 2px 4px 0 rgba(78,176,239,.5)}.iho-table .icon-dot-develop-complete{background:#6381f9;border-radius:50%;box-shadow:0 2px 4px 0 rgba(99,129,249,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table__filterIcon{cursor:pointer;padding:0 4px}.iho-table__filterIcon:hover{opacity:.7}.iho-table__filterIcon.is-active{color:#5585f5}.iho-table__filterWrapper{display:flex;flex-direction:column;gap:8px;width:200px}.iho-table__filterButton{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:30px;padding:0 8px}.iho-table__filterButton--active{color:#5585f5}.iho-table__filterButton:hover{background:rgba(0,0,0,.05)}.iho-table__filterListWrapper{border:1px solid rgba(0,0,0,.05)}.iho-table__filterListItem{align-items:center;border-radius:4px;display:flex;height:32px;padding:0 8px}.iho-table__filterListItem:hover{background:rgba(0,0,0,.05)}.iho-table__filterFooter{display:flex;justify-content:space-between}.iho-table{height:100%}.iho-table .vxe-header--column [annotation-hover-show=true]{visibility:hidden}.iho-table .vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}.iho-table__headerWrapper{display:inline-flex}
1
+ .iho-table__boldCell{font-weight:700}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#f2f2f2;border:3px dashed transparent;border-radius:5px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.iho-table .vxe-table--empty-content{height:100%;width:100%}.iho-table .vxe-table--empty-content>div,.iho-table .vxe-tree-cell{height:100%}.iho-table .vxe-table--header{background-color:#f2f2f2}.iho-table .vxe-cell--title{color:#35393c}.iho-table .vxe-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.iho-table .vxe-body--expanded-column,.iho-table .vxe-table--border-line{border-color:#d5d5d599!important}.iho-table .vxe-table--footer-wrapper{border-top-color:#d5d5d599!important}.iho-table .border--default .vxe-body--column,.iho-table .border--default .vxe-footer--column,.iho-table .border--default .vxe-header--column,.iho-table .border--inner .vxe-body--column,.iho-table .border--inner .vxe-footer--column,.iho-table .border--inner .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .border--full .vxe-body--column,.iho-table .border--full .vxe-footer--column,.iho-table .border--full .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599),linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .border--default .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--full .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--inner .vxe-header--row:last-child .vxe-header--gutter,.iho-table .border--outer .vxe-header--row:last-child .vxe-header--gutter{background-image:linear-gradient(#d5d5d599,#d5d5d599)!important}.iho-table .vxe-table--header-border-line{border-bottom-color:#d5d5d599!important}.iho-table .vxe-table--fixed-left-wrapper.scrolling--middle{box-shadow:7px 0 8px -3px rgba(0,0,0,.15)!important}.iho-table .vxe-table--fixed-right-wrapper.scrolling--middle{box-shadow:-7px 0 8px -3px rgba(0,0,0,.15)!important}.iho-table .icon-dot{background:var(--table-icon-color);box-shadow:0 2px 4px 0 var(--table-icon-shadow)}.iho-table .icon-dot,.iho-table .icon-dot-red{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-red{background:red;box-shadow:0 2px 4px 0 rgba(255,0,0,.5)}.iho-table .icon-dot-blue{background:blue;box-shadow:0 2px 4px 0 rgba(0,0,255,.5)}.iho-table .icon-dot-blue,.iho-table .icon-dot-green{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-green{background:green;box-shadow:0 2px 4px 0 rgba(0,128,0,.5)}.iho-table .icon-dot-gray{background:gray;box-shadow:0 2px 4px 0 hsla(0,0%,50%,.5)}.iho-table .icon-dot-gray,.iho-table .icon-dot-yellow{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-yellow{background:#ff0;box-shadow:0 2px 4px 0 rgba(255,255,0,.5)}.iho-table .icon-dot-resolved{background:#36be8c;box-shadow:0 2px 4px 0 rgba(54,190,140,.5)}.iho-table .icon-dot-huifu,.iho-table .icon-dot-resolved{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-huifu{background:#42d0f6;box-shadow:0 2px 4px 0 rgba(66,208,246,.5)}.iho-table .icon-dot-close{background:#718391;box-shadow:0 2px 4px 0 rgba(113,131,145,.5)}.iho-table .icon-dot-audit,.iho-table .icon-dot-close{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-audit{background:#f4ba32;box-shadow:0 2px 4px 0 rgba(244,186,50,.5)}.iho-table .icon-dot-design{background:#927ce1;box-shadow:0 2px 4px 0 rgba(146,124,225,.5)}.iho-table .icon-dot-design,.iho-table .icon-dot-develop{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-develop{background:#4eb0ef;box-shadow:0 2px 4px 0 rgba(78,176,239,.5)}.iho-table .icon-dot-develop-complete{background:#6381f9;border-radius:50%;box-shadow:0 2px 4px 0 rgba(99,129,249,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table__hideSortIcon .vxe-cell--sort{display:none!important}.iho-table__sortActiveIcon{margin-right:4px;width:14px}.iho-table__filterIcon{cursor:pointer;padding:0 4px}.iho-table__filterIcon:hover{opacity:.7}.iho-table__filterIcon.is-active{color:#5585f5}.iho-table__filterWrapper{display:flex;flex-direction:column;gap:8px;margin:8px 12px;width:240px}.iho-table__filterButton{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:30px;padding:0 8px}.iho-table__filterButton--active{color:#5585f5}.iho-table__filterButton:hover{background:rgba(0,0,0,.05)}.iho-table__filterListWrapper{border:1px solid rgba(0,0,0,.05)}.iho-table__filterListItem{align-items:center;border-radius:4px;display:flex;height:32px;padding:0 8px}.iho-table__filterListItem:hover{background:rgba(0,0,0,.05)}.iho-table__filterListItem .n-checkbox{width:100%}.iho-table__filterFooter{display:flex;justify-content:space-between}.iho-table__time-picker{position:unset}.iho-table__time-picker .n-input{display:none}.iho-table__time-picker .v-binder-follower-container{height:auto;position:unset}.iho-table__time-picker .v-binder-follower-container .v-binder-follower-content{position:unset;transform:none!important}.iho-table__time-picker .v-binder-follower-container .v-binder-follower-content .n-time-picker-panel{box-shadow:none}.iho-table__scrollbar{margin:8px 8px 8px 0;max-height:255px}.iho-table{height:100%}.iho-table .vxe-header--column [annotation-hover-show=true]{visibility:hidden}.iho-table .vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}.iho-table__headerWrapper{display:inline-flex}