cnhis-design-vue 3.1.43-release.1 → 3.1.43-release.3

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 (127) hide show
  1. package/README.md +87 -87
  2. package/es/components/base-search/index.d.ts +50 -114
  3. package/es/components/base-search/src/index.vue.d.ts +50 -114
  4. package/es/components/base-search/src/index.vue.js +1 -1
  5. package/es/components/base-search/style/index.css +1 -1
  6. package/es/components/classification/index.d.ts +9 -6
  7. package/es/components/classification/src/components/search-filter/index.vue.d.ts +3 -0
  8. package/es/components/classification/src/components/set-classification/index.vue.d.ts +8 -5
  9. package/es/components/classification/src/components/set-classification/index.vue.js +1 -1
  10. package/es/components/classification/src/components/table-modal/index.vue.d.ts +2 -2
  11. package/es/components/classification/src/index.vue.d.ts +9 -6
  12. package/es/components/fabric-chart/index.d.ts +1 -1
  13. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +2 -2
  14. package/es/components/fabric-chart/src/hooks/useBirthProcess.d.ts +1 -1
  15. package/es/components/fabric-chart/src/hooks/useBirthProcessChart.d.ts +2 -1
  16. package/es/components/fabric-chart/src/hooks/useCenter.d.ts +4 -4
  17. package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -1
  18. package/es/components/fabric-chart/src/hooks/useEvent.d.ts +1 -1
  19. package/es/components/fabric-chart/src/hooks/useEvent.js +1 -1
  20. package/es/components/fabric-chart/src/hooks/useLeft.d.ts +1 -1
  21. package/es/components/fabric-chart/src/hooks/useOther.js +1 -1
  22. package/es/components/fabric-chart/src/hooks/useTemperatureChart.d.ts +3 -2
  23. package/es/components/fabric-chart/src/hooks/useTemperatureChart.js +1 -1
  24. package/es/components/form-config/index.d.ts +8 -8
  25. package/es/components/form-config/src/FormConfig.vue.d.ts +8 -8
  26. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +4 -4
  27. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +4 -4
  28. package/es/components/form-render/index.d.ts +4 -4
  29. package/es/components/form-render/src/FormRender.vue.d.ts +4 -4
  30. package/es/components/form-render/src/FormRender.vue.js +1 -1
  31. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +4 -4
  32. package/es/components/form-render/src/components/renderer/radio&checkbox.d.ts +6 -0
  33. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  34. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  35. package/es/components/form-render/src/components/renderer/select.js +1 -1
  36. package/es/components/form-render/src/hooks/useAnchor.js +1 -1
  37. package/es/components/form-render/style/index.css +1 -1
  38. package/es/components/guide/index.d.ts +2 -0
  39. package/es/components/guide/index.js +1 -0
  40. package/es/components/guide/src/renderer.d.ts +37 -0
  41. package/es/components/guide/src/renderer.js +1 -0
  42. package/es/components/guide/src/types/index.d.ts +40 -0
  43. package/es/components/guide/src/useGuide.d.ts +6 -0
  44. package/es/components/guide/src/useGuide.js +1 -0
  45. package/es/components/guide/src/utils/index.d.ts +14 -0
  46. package/es/components/guide/src/utils/index.js +1 -0
  47. package/es/components/iho-table/index.d.ts +9 -2
  48. package/es/components/iho-table/src/IhoTable.vue.d.ts +9 -2
  49. package/es/components/iho-table/src/IhoTable.vue.js +1 -1
  50. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.d.ts +2 -2
  51. package/es/components/iho-table/src/plugins/anchorPlugin/tableAnchor.js +1 -1
  52. package/es/components/iho-table/src/plugins/anchorPlugin/useAnchor.d.ts +4 -1
  53. package/es/components/iho-table/src/plugins/anchorPlugin/useAnchor.js +1 -1
  54. package/es/components/iho-table/src/plugins/filterDaterangeRenderPlugin/index.js +1 -1
  55. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +3 -11
  56. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.js +1 -1
  57. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  58. package/es/components/iho-table/src/plugins/keyboardEventPlugin/index.js +1 -1
  59. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
  60. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +2 -3
  61. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.js +1 -1
  62. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.d.ts +2 -0
  63. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useSelectOption.js +1 -0
  64. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  65. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.d.ts +1 -0
  66. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js +1 -1
  67. package/es/components/iho-table/src/types/index.d.ts +4 -1
  68. package/es/components/iho-table/style/iconfont.ttf +0 -0
  69. package/es/components/iho-table/style/index.css +1 -1
  70. package/es/components/index.css +1 -1
  71. package/es/components/index.d.ts +1 -0
  72. package/es/components/index.js +1 -1
  73. package/es/components/info-header/index.d.ts +8 -8
  74. package/es/components/info-header/src/InfoHeader.vue.d.ts +8 -8
  75. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +4 -4
  76. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +4 -4
  77. package/es/components/keyboard/src/components/InputNumber.vue.js +1 -1
  78. package/es/components/quick-search/index.d.ts +54 -224
  79. package/es/components/quick-search/src/index.vue.d.ts +54 -224
  80. package/es/components/quick-search/src/index.vue.js +1 -1
  81. package/es/components/quick-search/style/index.css +1 -1
  82. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  83. package/es/components/scale-view/src/components/formitem/standard-modal.d.ts +1 -1
  84. package/es/components/select-label/src/LabelFormContent.vue.js +1 -1
  85. package/es/components/select-person/src/SearchMultiple.vue.d.ts +6 -0
  86. package/es/components/shortcut-setter/index.d.ts +4 -4
  87. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +4 -4
  88. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +3 -0
  89. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +3 -0
  90. package/es/components/table-filter/src/components/render-widget/basicData.d.ts +4 -0
  91. package/es/components/table-filter/src/components/render-widget/basicData.js +1 -0
  92. package/es/components/table-filter/src/components/render-widget/components/Date.vue.d.ts +84 -0
  93. package/es/components/table-filter/src/components/render-widget/components/Date.vue.js +1 -0
  94. package/es/components/table-filter/src/components/render-widget/components/DateRange.vue.d.ts +118 -0
  95. package/es/components/table-filter/src/components/render-widget/components/DateRange.vue.js +1 -0
  96. package/es/components/table-filter/src/components/render-widget/components/InputNumberGroup.vue.d.ts +67 -0
  97. package/es/components/table-filter/src/components/render-widget/components/InputNumberGroup.vue.js +1 -0
  98. package/es/components/table-filter/src/components/render-widget/components/Select.vue.d.ts +26 -7
  99. package/es/components/table-filter/src/components/render-widget/components/Select.vue.js +1 -1
  100. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +4 -2
  101. package/es/components/table-filter/src/components/render-widget/components/index.js +1 -1
  102. package/es/components/table-filter/src/components/render-widget/enums.d.ts +17 -0
  103. package/es/components/table-filter/src/components/render-widget/enums.js +1 -1
  104. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +5 -0
  105. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +1 -1
  106. package/es/components/table-filter/src/components/render-widget/index.vue.d.ts +13 -3
  107. package/es/components/table-filter/src/components/render-widget/index.vue.js +1 -1
  108. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +240 -15
  109. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +1 -1
  110. package/es/components/table-filter/src/hooks/useAdvanced.d.ts +6 -2
  111. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  112. package/es/components/table-filter/src/hooks/useRenderWidget.js +1 -1
  113. package/es/components/table-filter/src/types/enums.d.ts +3 -0
  114. package/es/components/table-filter/src/types/enums.js +1 -1
  115. package/es/components/table-filter/src/types/index.d.ts +27 -87
  116. package/es/env.d.ts +25 -25
  117. package/es/shared/package.json.js +1 -1
  118. package/package.json +2 -2
  119. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  120. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  121. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  122. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  123. package/es/components/fabric-chart/src/utils/index.d.ts +0 -6823
  124. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useTriggerEvent.d.ts +0 -0
  125. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  126. package/es/shared/utils/tapable/index.d.ts +0 -139
  127. /package/es/components/{iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useTriggerEvent.js → guide/src/types/index.js} +0 -0
@@ -0,0 +1,37 @@
1
+ import { ComponentInternalInstance, PropType } from 'vue';
2
+ import { GuideDefine } from '../../../../es/components/guide/src/types';
3
+ export declare function createGuideStep(instance?: ComponentInternalInstance | null): import("vue").DefineComponent<{
4
+ config: {
5
+ type: PropType<GuideDefine.Config>;
6
+ required: true;
7
+ default: () => {};
8
+ };
9
+ index: {
10
+ type: NumberConstructor;
11
+ required: true;
12
+ };
13
+ length: {
14
+ type: NumberConstructor;
15
+ required: true;
16
+ };
17
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "next" | "toNext")[], "cancel" | "next" | "toNext", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
18
+ config: {
19
+ type: PropType<GuideDefine.Config>;
20
+ required: true;
21
+ default: () => {};
22
+ };
23
+ index: {
24
+ type: NumberConstructor;
25
+ required: true;
26
+ };
27
+ length: {
28
+ type: NumberConstructor;
29
+ required: true;
30
+ };
31
+ }>> & {
32
+ onCancel?: ((...args: any[]) => any) | undefined;
33
+ onNext?: ((...args: any[]) => any) | undefined;
34
+ onToNext?: ((...args: any[]) => any) | undefined;
35
+ }, {
36
+ config: GuideDefine.Config;
37
+ }> | import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,createVNode as t,provide as r}from"vue";import{useTheme as s}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isFunction as n,range as i}from"lodash-es";import{widthAppend as o}from"../../../shared/utils/index.js";import{NSpace as l,NButton as u}from"naive-ui";const d=e({props:{config:{type:Object,required:!0,default:()=>({})},index:{type:Number,required:!0},length:{type:Number,required:!0}},emits:["cancel","next","toNext"],setup(e,{emit:r,slots:d}){const p=s();function a(e,{skippable:s=!0,skipText:o="跳过",nextText:d="下一步",endText:p="结束引导"},a,c){var f;return t("footer",{class:"guide__stepFooter"},[null!=(f=n(e)?e():null)?f:t(l,{justify:"end",wrapItem:!1},{default:()=>[m(),s?t(u,{ghost:!0,bordered:!1,class:"guide__stepSkipBtn",textColor:"#c5c5c5",onClick:()=>r("cancel")},{default:()=>o}):null,t(u,{type:"primary",class:"guide__stepNextBtn",onClick:()=>r("next")},{default:()=>a===c-1?p:d})]})]);function m(){return t(l,{justify:"start",style:"flex:1"},{default:function(){return i(c).map((e=>t(u,{class:"guide__stepToBtn",bordered:!1,onClick:()=>r("toNext",e)},{default:()=>t("i",{class:["guide__stepToBtnContent",{guide__stepActiveBtn:e===a}]},null)})))}})}}return()=>{const{minWidth:r=240,maxWidth:s=300,pointer:i=!0}=e.config;return t("section",{class:"guide__stepContentWrapper",style:{minWidth:o(r),maxWidth:o(s),...p.value}},[i?t("div",{class:"guide__stepPointerWrapper"},[t("div",{class:"guide__stepPointer"},null),t("div",{class:"guide__stepPointerLine"},null)]):null,(u=d.header,t("header",{class:"guide__stepHeader"},[n(u)?u():null])),(l=d.body,t("section",{class:"guide__stepBody"},[n(l)?l():null])),a(d.footer,e.config,e.index,e.length)]);var l,u}}});function p(s){return s?e({setup(e,{attrs:n,slots:i}){const o=[];let l=(null==s?void 0:s.parent)&&Reflect.get(s.parent,"provides");for(;l;)Object.entries(l).forEach((([e,t])=>{o.includes(e)||(o.push(e),r(e,t))})),l=Object.getPrototypeOf(l);return()=>t(d,n,i)}}):d}export{p as createGuideStep};
@@ -0,0 +1,40 @@
1
+ import { AnyObject } from '../../../../../es/shared/types';
2
+ import { ComponentInternalInstance, CSSProperties } from 'vue';
3
+ export declare namespace GuideDefine {
4
+ type StepRender = string | ((next: () => void, cancel: () => void, to: (idx: number) => void) => any);
5
+ type StepGuard = (step: Step, index: number) => unknown | Promise<unknown>;
6
+ type Step = Partial<{
7
+ title: StepRender;
8
+ content: StepRender;
9
+ target: string | HTMLElement;
10
+ footer: StepRender;
11
+ }>;
12
+ type DomProps = Partial<{
13
+ class: unknown;
14
+ style: CSSProperties;
15
+ }> & AnyObject;
16
+ type Placement = 'top-start' | 'top' | 'top-end' | 'right-start' | 'right' | 'right-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left-start' | 'left' | 'left-end';
17
+ type Config = Partial<{
18
+ to: string | HTMLElement;
19
+ placement: Placement;
20
+ pointer: boolean;
21
+ vueInstance: ComponentInternalInstance | null;
22
+ esc: boolean;
23
+ zIndex: number;
24
+ minWidth: string | number;
25
+ maxWidth: string | number;
26
+ offset: number;
27
+ skipText: string;
28
+ nextText: string;
29
+ endText: string;
30
+ skippable: boolean;
31
+ anime: boolean;
32
+ wrapperProps: DomProps;
33
+ stepProps: DomProps;
34
+ beforeStep: StepGuard;
35
+ afterStep: StepGuard;
36
+ beforeSkip: () => unknown | Promise<unknown>;
37
+ }> & {
38
+ steps: Step[];
39
+ };
40
+ }
@@ -0,0 +1,6 @@
1
+ import { GuideDefine } from '../../../../es/components/guide/src/types';
2
+ declare function start(config: GuideDefine.Config): () => Promise<void>;
3
+ export declare function useGuide(): {
4
+ start: typeof start;
5
+ };
6
+ export {};
@@ -0,0 +1 @@
1
+ import{render as e,createVNode as t,mergeProps as n}from"vue";import{promiseTimeout as o}from"@vueuse/shared";import{isArray as s,isNumber as i,isFunction as a,isString as r}from"lodash-es";import{createGuideStep as l}from"./renderer.js";import{GuideError as c,GuideUtils as p,useGuideStyle as u}from"./utils/index.js";function d(s,{config:i,length:c,index:u,prevTop:d,prevLeft:y,wrapper:m},f,h,v){const{anime:w=!0,beforeSkip:g,beforeStep:E,afterStep:x,offset:b,stepProps:C,vueInstance:S,placement:_}=i;return{mount:async function(){try{await(a(E)&&E(s,u))}catch(e){return v(u-1),void f([y,d])}const{target:k,title:L,content:P,footer:T}=s,j=p.findElement(k);p.setShadowEle(m,j);const M=p.createEle("div",{class:"guide__stepWrapper",style:{top:d,left:y}});"0"===y&&"0"===d||!w||p.setStyle(M,{transition:"all .2s linear"}),m.appendChild(M);const z=l(S);async function I(t,n=!0){var s;t(),n&&(p.setStyle(M,{transition:"opacity .2s linear"}),M.style.opacity="0",await o(200)),e(null,M),null==(s=M.parentElement)||s.removeChild(M)}let N="0",q="0";const A=async()=>{await(a(x)&&x(s,u)),I((()=>f([N,q])),u===c-1)},F=async()=>{await(a(g)&&g()),I(h)},O=async e=>{e!==u&&(v(e),A())};e(t(z,n(C,{index:u,length:c,config:i,onCancel:F,onNext:A,onToNext:O}),{header:a(L)?()=>L(A,F,O):r(L)?()=>L:null,body:a(P)?()=>P(A,F,O):r(P)?()=>P:null,footer:a(T)?()=>T(A,F,O):r(T)?()=>T:null}),M),setTimeout((()=>{[N,q]=p.syncPosition(M,j,b,_)}),0)}}}function y(e){const{to:t=document.body,steps:n=[]}=e;if(!s(n)||!n.length)throw new c("empty steps");const a=p.findElement(t),{unmount:r,mount:l,wrapper:y}=function(e,{zIndex:t=3e3,esc:n,wrapperProps:s={},anime:i=!0}){const{load:a,unload:r}=u(),l=p.createEle("div",{class:"guide__shadowEle"});i&&Object.assign(l.style,{transition:"all 0.2s linear"});const c=p.createEle("section",{class:["guide__wrapper",s.class?s.class:""],style:{"z-index":t,...s.style}});c.appendChild(l);const d=e.style.position;d&&"static"!==d||(e.style.position="relative");const y=async()=>{c.style.opacity="0",await o(200),e.removeChild(c),e.style.position=d,r()};if(n){const e=async t=>{if("Escape"===t.key)return await y(),void document.body.removeEventListener("keyup",e)};document.body.addEventListener("keyup",e)}return{wrapper:c,unmount:y,mount:()=>{a(),e.appendChild(c),requestAnimationFrame((()=>c.style.opacity="1"))}}}(a,e);return l(),(async()=>{try{let t="0",o="0";for(let s=0;s<n.length;s++){const a=n[s];[t,o]=await new Promise(((r,l)=>{d(a,{config:e,index:s,wrapper:y,length:n.length,prevLeft:t,prevTop:o},r,l,(e=>{if(i(e))return e<0?l():void(s=Math.min(n.length-1,Math.abs(Math.floor(e)))-1)})).mount()}))}}finally{r()}})(),r}function m(){return{start:y}}export{m as useGuide};
@@ -0,0 +1,14 @@
1
+ import { CSSProperties } from 'vue';
2
+ import { GuideDefine } from '../../../../../es/components/guide/src/types';
3
+ export declare class GuideError extends Error {
4
+ constructor(message: string);
5
+ }
6
+ export declare const GuideUtils: Readonly<{
7
+ createEle<T extends keyof HTMLElementTagNameMap>(tag: T, props?: GuideDefine.DomProps): HTMLElementTagNameMap[T];
8
+ setStyle(ele: HTMLElement, styles: CSSProperties): void;
9
+ findElement(target: unknown): HTMLElement;
10
+ getShadowEleFromWrapper(wrapper: HTMLElement): HTMLElement | null;
11
+ setShadowEle(wrapper: HTMLElement, target: HTMLElement): void;
12
+ syncPosition(ele: HTMLElement, target: HTMLElement, offset?: number, placement?: GuideDefine.Placement): [string, string];
13
+ }>;
14
+ export declare const useGuideStyle: () => import("@vueuse/core").UseStyleTagReturn;
@@ -0,0 +1 @@
1
+ import{widthAppend as t}from"../../../../shared/utils/index.js";import{useStyleTag as e}from"@vueuse/core";import{isString as i,isObject as o}from"lodash-es";import{normalizeClass as r}from"vue";class n extends Error{constructor(t){super(`[CGuide]: ${t}`)}}const p=Object.freeze({createEle(t,e={}){const i=document.createElement(t);return e.class&&i.classList.add(r(e.class)),e.style&&this.setStyle(i,e.style),i},setStyle(t,e){Object.assign(t.style,e)},findElement(t){const e=i(t)?document.querySelector(t):o(t)?t:void 0;if(!o(e))throw new n(`can't find target element by ${t}`);return e},getShadowEleFromWrapper:t=>t.querySelector(".guide__shadowEle"),setShadowEle(e,i){const o=this.getShadowEleFromWrapper(e);if(!o)return;const{left:r,top:n}=i.getBoundingClientRect();Object.assign(o.style,{left:t(r),top:t(n),width:t(i.clientWidth),height:t(i.clientHeight)})},syncPosition(e,i,o=24,r="right-start"){const{top:n,left:p,right:s,bottom:l,width:d,height:a}=i.getBoundingClientRect(),{clientHeight:h,clientWidth:c}=e,{clientHeight:g,clientWidth:f}=document.body,u=e.querySelector(".guide__stepPointerWrapper"),m=u&&u.querySelector(".guide__stepPointerLine"),x={},b=f-s-o>=c,w=p-o>=c,_=p+d/2>=c/2&&f-s+d/2>=c/2,y=n+h-18<=g,v=l+18>=h,S=s>c,D=p+c<f,E=n-18>=h,W=n+a/2>=h/2&&g-l+a/2>=h/2,B=g-l-18>=h,j={"top-start":D&&E,top:E&&_,"top-end":S&&E,"left-start":w&&y,left:w&&W,"left-end":w&&v,"right-start":b&&y,right:b&&W,"right-end":b&&v,"bottom-start":D&&B,bottom:B&&_,"bottom-end":S&&B},k=t(s+o),O=t(p-o-c),P=t(n-o-h),C=t(l+o),q=t(n-18),H=t(Math.floor((n+l-h)/2)),M=t(l-h+18),z=t(p),L=t(Math.floor(p+s-c)/2),F=t(s-c),R=t(Math.min(26,18+a-6)),T=t(Math.min(26,d-8)),X=[["right-start",{step:{left:k,top:q},pointer:{left:t(-o),flexDirection:"row-reverse",top:R},line:{width:t(o+4)}}],["right-end",{step:{left:k,top:M},pointer:{left:t(-o),flexDirection:"row-reverse",bottom:R},line:{width:t(o+4)}}],["right",{step:{left:k,top:H},pointer:{left:t(-o),flexDirection:"row-reverse",top:"50%",transform:"translateY(-50%)"},line:{width:t(o+4)}}],["left-start",{step:{left:O,top:q},pointer:{right:t(-o),top:R},line:{width:t(o+4)}}],["left-end",{step:{left:O,top:M},pointer:{right:t(-o),bottom:R},line:{width:t(o+4)}}],["left",{step:{left:O,top:H},pointer:{right:t(-o),top:"50%",transform:"translateY(-50%)"},line:{width:t(o+4)}}],["top-start",{step:{left:z,top:P},pointer:{left:T,flexDirection:"column",bottom:t(-o)},line:{width:t(3),height:t(o+4)}}],["top-end",{step:{left:F,top:P},pointer:{right:T,flexDirection:"column",bottom:t(-o)},line:{width:t(3),height:t(o+4)}}],["top",{step:{left:L,top:P},pointer:{left:"50%",transform:"translateX(-50%)",flexDirection:"column",bottom:t(-o)},line:{width:t(3),height:t(o+4)}}],["bottom-start",{step:{left:z,top:C},pointer:{left:T,flexDirection:"column-reverse",top:t(-o)},line:{width:t(3),height:t(o+4)}}],["bottom-end",{step:{left:F,top:C},pointer:{right:T,flexDirection:"column-reverse",top:t(-o)},line:{width:t(3),height:t(o+4)}}],["bottom",{step:{left:L,top:C},pointer:{left:"50%",transform:"translateX(-50%)",flexDirection:"column-reverse",top:t(-o)},line:{width:t(3),height:t(o+4)}}]],[,Y]=(j[r]?X.find((t=>t[0]===r)):X.find((t=>j[t[0]])))||X.find((t=>t[0]===r))||X[0];return Object.assign(x,Y.step),u&&Object.assign(u.style,Y.pointer),m&&Object.assign(m.style,Y.line),this.setStyle(e,x),[x.left,x.top]}}),s=()=>e("\n\t.guide__wrapper{position: absolute;top: 0;bottom: 0;left: 0;right: 0;opacity: 0;transition: opacity .2s linear;}\n\t.guide__shadowEle{position: fixed;background: transparent;box-shadow: 0 0 0 10000px rgba(0,0,0,0.3)}\n\t.guide__stepWrapper{position: fixed;z-index: 1;opacity: 1}\n\t.guide__stepPointerWrapper{position:absolute;display:flex;flex-wrap:nowrap;align-items:center;}\n\t.guide__stepPointer{border-radius:50%;width:12px;height:12px;background:var(--c-primary-color);margin:-1px;}\n\t.guide__stepPointerLine{background:var(--c-primary-color);height:3px;}\n\t.guide__stepContentWrapper{background: white;min-width: 260px;padding: 24px;display: flex;flex-direction: column;gap: 8px;border-radius: 4px;position:relative}\n\t.guide__stepHeader{font-size:20px;}\n\t.guide__stepBody{margin:12px 0 16px 0;color:#a5a5a5}\n\t.guide__stepSkipBtn{}\n\t.guide__stepNextBtn{width:120px}\n\t.guide__stepToBtn{padding:0}\n\t.guide__stepToBtnContent{border-radius:50%;width:8px;height:8px;background:#c5c5c5}\n\t.guide__stepActiveBtn{width:10px;height:10px;background:var(--c-primary-color)}\n\t");export{n as GuideError,p as GuideUtils,s as useGuideStyle};
@@ -2159,7 +2159,10 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
2159
2159
  list: string[];
2160
2160
  }[] | undefined;
2161
2161
  } | undefined;
2162
- anchorList?: string[] | undefined;
2162
+ anchorList?: (string | {
2163
+ name?: string | undefined;
2164
+ field: string;
2165
+ })[] | undefined;
2163
2166
  sortableConfig?: {
2164
2167
  [x: string]: any;
2165
2168
  enable?: boolean | undefined;
@@ -4573,7 +4576,10 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4573
4576
  list: string[];
4574
4577
  }[] | undefined;
4575
4578
  } | undefined;
4576
- anchorList?: string[] | undefined;
4579
+ anchorList?: (string | {
4580
+ name?: string | undefined;
4581
+ field: string;
4582
+ })[] | undefined;
4577
4583
  sortableConfig?: {
4578
4584
  [x: string]: any;
4579
4585
  enable?: boolean | undefined;
@@ -4586,6 +4592,7 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4586
4592
  updateState: () => void;
4587
4593
  header: any;
4588
4594
  footer: any;
4595
+ slotPropertiesPicker: (args: import("../../../es/shared/types").AnyObject) => Pick<import("../../../es/shared/types").AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4589
4596
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "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")[], "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "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", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4590
4597
  tableConfig: {
4591
4598
  type: import("vue").PropType<import("../../../es/components/iho-table/src/types").IhoTableConfig>;
@@ -2158,7 +2158,10 @@ declare const _default: import("vue").DefineComponent<{
2158
2158
  list: string[];
2159
2159
  }[] | undefined;
2160
2160
  } | undefined;
2161
- anchorList?: string[] | undefined;
2161
+ anchorList?: (string | {
2162
+ name?: string | undefined;
2163
+ field: string;
2164
+ })[] | undefined;
2162
2165
  sortableConfig?: {
2163
2166
  [x: string]: any;
2164
2167
  enable?: boolean | undefined;
@@ -4572,7 +4575,10 @@ declare const _default: import("vue").DefineComponent<{
4572
4575
  list: string[];
4573
4576
  }[] | undefined;
4574
4577
  } | undefined;
4575
- anchorList?: string[] | undefined;
4578
+ anchorList?: (string | {
4579
+ name?: string | undefined;
4580
+ field: string;
4581
+ })[] | undefined;
4576
4582
  sortableConfig?: {
4577
4583
  [x: string]: any;
4578
4584
  enable?: boolean | undefined;
@@ -4585,6 +4591,7 @@ declare const _default: import("vue").DefineComponent<{
4585
4591
  updateState: () => void;
4586
4592
  header: any;
4587
4593
  footer: any;
4594
+ slotPropertiesPicker: (args: AnyObject) => Pick<AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4588
4595
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "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")[], "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "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", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4589
4596
  tableConfig: {
4590
4597
  type: PropType<IhoTableConfig>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,provide as a,ref as o,watch as l,resolveComponent as s,openBlock as n,createElementBlock as i,unref as r,normalizeStyle as u,createBlock as c,resolveDynamicComponent as f,createElementVNode as d,createVNode as m,mergeProps as p,createSlots as v,renderList as b,withCtx as h,createCommentVNode as g,renderSlot as x}from"vue";import{useTheme as k}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as y}from"@vueuse/core";import"date-fns";import{isString as C,isFunction as D}from"lodash-es";import{widthAppend as j,uuidGenerator as $}from"../../../shared/utils/index.js";import{promiseTimeout as _}from"@vueuse/shared";import{VxeTableEventNameList as H,InjectionIhoTableEmits as T,InjectionIhoTableAnnotation as w,InjectionIhoTableUUID as A,InjectionIhoTableInstance as L,InjectionIhoTableConfig as R,InjectionIhoTableFieldList as E,InjectionIhoTableHandler as F}from"./constants/index.js";import{createTableHooks as I,applyTableConfigHooks as O,applyTableFieldHooks as S,createTableEventHandlers as W,createDomInsertComponent as q,createDataTransfer as z}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as B}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as G}from"./utils/index.js";import J from"../../../_virtual/plugin-vue_export-helper.js";const K=["id"];var M=J(e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...H],setup(e,{expose:H,emit:J}){var M,N;const P=e,Q=k({"--c-border-color":"#e2e2e2","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#f7f7f7"}),U=t((()=>{var e,t;const a=null!=(t=null==(e=P.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===a?"100%":C(a)&&(a.includes("calc")||a.endsWith("%"))?a:j(a)}})),V=B(),X=function(e,...t){J(e,...t);const a=r(te)[G(e)];D(a)&&a(...t),V.trigger(e,...t)};a(T,X);const Y=I();a(w,t((()=>P.annotation)));const Z=$();a(A,Z);const ee=o();a(L,ee);const te=o({uuid:null!=(N=null==(M=P.tableConfig)?void 0:M.uuid)?N:Z});a(R,te);const ae=y(oe,10);function oe(){te.value=O(Y,P.tableConfig,{$table:ee,emits:X}),te.value.uuid=Z}const le=o([]);a(E,le);const se=y(ne,10);function ne(){le.value=S(Y,P.fieldList,te.value,{$table:ee,emits:X})}const ie=z(Y,te,ee),re=o([]);async function ue(){var e;re.value=await ie(P.tableData),null==(e=ee.value)||e.recalculate(!0)}const ce={updateTableDataRef:y(ue,10),updateConfigRef:ae,updateFieldListRef:se};a(F,ce);const fe=W({hooks:Y,config:te,$table:ee,context:ce,emits:X}),de=t((()=>({...te.value,...fe})));let me=!1,pe=!1,ve=!1;const be=y((()=>{me&&oe(),pe&&ne(),ve&&ue(),me=!1,pe=!1,ve=!1}),10);l((()=>P.tableConfig),(()=>{me=!0,pe=!0,ve=!0,be()}),{deep:!0}),l((()=>P.fieldList),(()=>{pe=!0,ve=!0,be()}),{deep:!0}),l([()=>[...P.tableData],()=>{var e;return null==(e=P.tableData)?void 0:e.length}],(()=>{ve=!0,be()})),l([()=>P.tableData,()=>{var e;return null==(e=P.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=te.value.treeConfig)?void 0:e.expandAll)&&(await _(11),null==(t=ee.value)||t.setAllTreeExpand(!0))})),oe(),ne(),ue();const{header:he,footer:ge}=q(Y);return H({$table:ee,async loadData(e){var t;null==(t=ee.value)||t.loadData(await ie(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),...Y.exposeHooks.expose.call({},te,{$table:ee,emits:X})}),Y.setupHooks.setup.call(te,le,{$table:ee,emits:X}),(e,t)=>{const a=s("vxe-grid");return n(),i("section",{class:"iho-table",id:r(Z),style:u(r(Q))},[(n(),c(f(r(he)))),d("section",{style:u(r(U))},[m(a,p({ref_key:"$table",ref:ee},r(de),{columns:le.value,data:re.value}),v({_:2},[b(e.$slots,((t,a)=>({name:a,fn:h((()=>[g(" 实际上所有的vxe-grid插槽都支持 "),x(e.$slots,a)]))})))]),1040,["columns","data"])],4),(n(),c(f(r(ge))))],12,K)}}}),[["__file","IhoTable.vue"]]);export{M as default};
1
+ import{defineComponent as e,computed as t,provide as o,ref as a,watch as l,resolveComponent as n,openBlock as s,createElementBlock as r,unref as i,normalizeStyle as u,createBlock as c,resolveDynamicComponent as d,createElementVNode as f,createVNode as m,mergeProps as p,createSlots as v,renderList as b,withCtx as h,createCommentVNode as g,renderSlot as x,normalizeProps as k,guardReactiveProps as y}from"vue";import{useTheme as $}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as C}from"@vueuse/core";import"date-fns";import{isString as D,isFunction as j,pick as _}from"lodash-es";import{widthAppend as w,uuidGenerator as I}from"../../../shared/utils/index.js";import{promiseTimeout as H}from"@vueuse/shared";import{VxeTableEventNameList as T,InjectionIhoTableEmits as A,InjectionIhoTableAnnotation as L,InjectionIhoTableUUID as R,InjectionIhoTableInstance as E,InjectionIhoTableConfig as F,InjectionIhoTableFieldList as O,InjectionIhoTableHandler as S}from"./constants/index.js";import{createTableHooks as W,applyTableConfigHooks as q,applyTableFieldHooks as z,createTableEventHandlers as B,createDomInsertComponent as G,createDataTransfer as J}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as K}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as M}from"./utils/index.js";import N from"../../../_virtual/plugin-vue_export-helper.js";const P=["id"];var Q=N(e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...T],setup(e,{expose:T,emit:N}){var Q,U;const V=e,X=$({"--c-border-color":"#e2e2e2","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#f7f7f7"}),Y=t((()=>{var e,t;const o=null!=(t=null==(e=V.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===o?"100%":D(o)&&(o.includes("calc")||o.endsWith("%"))?o:w(o)}})),Z=K(),ee=function(e,...t){N(e,...t);const o=i(le)[M(e)];j(o)&&o(...t),Z.trigger(e,...t)};o(A,ee);const te=W();o(L,t((()=>V.annotation)));const oe=I();o(R,oe);const ae=a();o(E,ae);const le=a({uuid:null!=(U=null==(Q=V.tableConfig)?void 0:Q.uuid)?U:oe});o(F,le);const ne=C(se,10);function se(){le.value=q(te,V.tableConfig,{$table:ae,emits:ee}),le.value.uuid=oe}const re=a([]);o(O,re);const ie=C(ue,10);function ue(){re.value=z(te,V.fieldList,le.value,{$table:ae,emits:ee})}const ce=J(te,le,ae),de=a([]);async function fe(){var e;de.value=await ce(V.tableData),null==(e=ae.value)||e.recalculate(!0)}const me={updateTableDataRef:C(fe,10),updateConfigRef:ne,updateFieldListRef:ie};o(S,me);const pe=B({hooks:te,config:le,$table:ae,context:me,emits:ee}),ve=t((()=>({...le.value,...pe})));let be=!1,he=!1,ge=!1;const xe=C((()=>{be&&se(),he&&ue(),ge&&fe(),be=!1,he=!1,ge=!1}),10);l((()=>V.tableConfig),(()=>{be=!0,he=!0,ge=!0,xe()}),{deep:!0}),l((()=>V.fieldList),(()=>{he=!0,ge=!0,xe()}),{deep:!0}),l([()=>[...V.tableData],()=>{var e;return null==(e=V.tableData)?void 0:e.length}],(()=>{ge=!0,xe()})),l([()=>V.tableData,()=>{var e;return null==(e=V.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=le.value.treeConfig)?void 0:e.expandAll)&&(await H(11),null==(t=ae.value)||t.setAllTreeExpand(!0))})),se(),ue(),fe();const{header:ke,footer:ye}=G(te);function $e(e){return _(e,["row","rowIndex","$rowIndex","column","columnIndex","$columnIndex","_columnIndex","checked","disabled","indeterminate"])}return T({$table:ae,async loadData(e){var t;null==(t=ae.value)||t.loadData(await ce(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),...te.exposeHooks.expose.call({},le,{$table:ae,emits:ee})}),te.setupHooks.setup.call(le,re,{$table:ae,emits:ee}),(e,t)=>{const o=n("vxe-grid");return s(),r("section",{class:"iho-table",id:i(oe),style:u(i(X))},[(s(),c(d(i(ke)))),f("section",{style:u(i(Y))},[m(o,p({ref_key:"$table",ref:ae},i(ve),{columns:re.value,data:de.value}),v({_:2},[b(e.$slots,((t,o)=>({name:o,fn:h((t=>[g(" 实际上所有的vxe-grid插槽都支持 "),x(e.$slots,o,k(y($e(t))))]))})))]),1040,["columns","data"])],4),(s(),c(d(i(ye))))],12,P)}}}),[["__file","IhoTable.vue"]]);export{Q as default};
@@ -2,7 +2,7 @@ import { AnyObject } from '../../../../../../es/shared/types';
2
2
  import { AsyncParallelHook, AsyncSeriesHook } from '../../../../../../es/shared/utils/tapable';
3
3
  import { AbstractDataHooks } from '../../../../../../es/components/iho-table/src/types';
4
4
  declare class TableDataHooks extends AbstractDataHooks {
5
- readonly dataStart: AsyncParallelHook<WithTableConfig, import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
5
+ readonly dataStart: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
6
6
  readonly data: AsyncSeriesHook<[AnyObject, import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, {
7
7
  remove(): void;
8
8
  $table: import("@vueuse/shared").MaybeRef<import("../../../../../../es/shared/types").Nullable<import("vxe-table").VxeTableInstance>>;
@@ -10,7 +10,7 @@ declare class TableDataHooks extends AbstractDataHooks {
10
10
  insertBefore(data: import("../../../../../../es/shared/types").ArrayAble<AnyObject>): void;
11
11
  insertAfter(data: import("../../../../../../es/shared/types").ArrayAble<AnyObject>): void;
12
12
  }], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
13
- readonly dataEnd: AsyncParallelHook<WithTableConfig, import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
13
+ readonly dataEnd: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
14
14
  }
15
15
  export declare function useDataHooks(): {
16
16
  create: () => TableDataHooks;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,createVNode as l,isVNode as n}from"vue";import{NTabs as a,NTabPane as o}from"naive-ui";import{useAnchor as r}from"./useAnchor.js";import{useTableContext as u}from"../../hooks/useTableContext.js";var i=e({name:"IhoTableAnchor",setup(){const{configRef:e,eventListener:i,fieldListRef:c,$table:p}=u(),{updateAnchor:s,onScroll:f,currentAnchorList:v,anchorValue:d}=r(t((()=>{var t;return null!=(t=e.value.anchorList)?t:[]})),p,c);return i.addEventListener("scroll",f),()=>{let e;return v.value.length>0?l(a,{type:"line",animated:!0,"pane-style":"padding: 0",value:d.value,"onUpdate:value":e=>d.value=e},"function"==typeof(t=e=v.value.map((e=>l(o,{name:e.field,tab:e.title,key:e.field,tabProps:{onClick:()=>s(e.field)}},null))))||"[object Object]"===Object.prototype.toString.call(t)&&!n(t)?e:{default:()=>[e]}):null;var t}}});export{i as default};
1
+ import{defineComponent as e,computed as t,createVNode as l,isVNode as n}from"vue";import{NTabs as a,NTabPane as o}from"naive-ui";import{useAnchor as r}from"./useAnchor.js";import{useTableContext as i}from"../../hooks/useTableContext.js";var u=e({name:"IhoTableAnchor",setup(){const{configRef:e,eventListener:u,fieldListRef:p,$table:c}=i(),{updateAnchor:f,onScroll:s,currentAnchorList:d,anchorValue:v}=r(t((()=>{var t;return(null!=(t=e.value.anchorList)?t:[]).map((e=>"string"==typeof e?{field:e}:{...e}))})),c,p);return u.addEventListener("scroll",s),()=>{let e;return d.value.length>0?l(a,{type:"line",animated:!0,"pane-style":"padding: 0",value:v.value,"onUpdate:value":e=>v.value=e},"function"==typeof(t=e=d.value.map((e=>l(o,{name:e.field,tab:e.title,key:e.field,tabProps:{onClick:()=>f(e.field)}},null))))||"[object Object]"===Object.prototype.toString.call(t)&&!n(t)?e:{default:()=>[e]}):null;var t}}});export{u as default};
@@ -1,7 +1,10 @@
1
1
  import { ComputedRef, Ref } from 'vue';
2
2
  import { VxeTableInstance } from 'vxe-table';
3
3
  import { IhoTableFieldItem, IhoTableEmitPayload } from '../../../../../../es/components/iho-table/src/types';
4
- export declare const useAnchor: (anchorList: ComputedRef<string[]>, $table: Ref<VxeTableInstance | undefined>, fieldListRef: Ref<IhoTableFieldItem[]>) => {
4
+ export declare const useAnchor: (anchorList: ComputedRef<{
5
+ name?: string;
6
+ field: string;
7
+ }[]>, $table: Ref<VxeTableInstance | undefined>, fieldListRef: Ref<IhoTableFieldItem[]>) => {
5
8
  updateAnchor: (field: string) => Promise<void>;
6
9
  onScroll: ({ scrollLeft, bodyWidth }: IhoTableEmitPayload<'scroll'>[0]) => void;
7
10
  currentAnchorList: Ref<{
@@ -1 +1 @@
1
- import{shallowOmit as l}from"../../../../../shared/utils/index.js";import{ref as e,watch as t,unref as i}from"vue";import{useThrottleFn as n}from"@vueuse/core";import{cloneDeep as o,findLastIndex as u}from"lodash-es";function r(e,t){e.forEach((e=>{var i;if(null==(i=e.children)?void 0:i.length){const i=l(o(e),["children"]);i.width=0,t.push(i),r(e.children,t)}else(function(l){return l.visible||!Reflect.has(l,"visible")})(e)&&t.push(e)}))}const a=(l,a,c)=>{const d=e([]),f=e();let v=!0;const s=n((function({scrollLeft:l,bodyWidth:e}){if(!d.value.length||!v)return;const t=l+e/2,i=u(d.value,(l=>t>=l.left));~i&&(f.value=d.value[i].field)}),800);return t([()=>c.value,()=>l.value],(()=>{!function(){var e,t,n;if(d.value=[],null==(e=i(l))?void 0:e.length){let e=0;const u=[];r(o(c.value),u),u.forEach((t=>{var n;const{field:o="",minWidth:u,width:r,fixed:a,title:c=""}=t,f=+(null!=(n=null!=u?u:r)?n:0);"left"==a||(e+=f,i(l).find((l=>l===o))&&d.value.push({field:o,title:c,left:e-f}))})),f.value=(null==(n=null==(t=d.value)?void 0:t[0])?void 0:n.field)||""}}()}),{immediate:!0,deep:!0}),{updateAnchor:async function(l){var e,t;v=!1;const i=d.value.find((e=>e.field===l));await(null==(t=a.value)?void 0:t.scrollTo(null!=(e=null==i?void 0:i.left)?e:0)),setTimeout((()=>{v=!0}),900)},onScroll:s,currentAnchorList:d,anchorValue:f}};export{a as useAnchor};
1
+ import{shallowOmit as l}from"../../../../../shared/utils/index.js";import{ref as e,watch as i,unref as t}from"vue";import{useThrottleFn as n}from"@vueuse/core";import{cloneDeep as o,findLastIndex as u}from"lodash-es";function r(e,i){e.forEach((e=>{var t;if(null==(t=e.children)?void 0:t.length){const t=l(o(e),["children"]);t.width=0,i.push(t),r(e.children,i)}else(function(l){return l.visible||!Reflect.has(l,"visible")})(e)&&i.push(e)}))}const a=(l,a,f)=>{const c=e([]),d=e();let s=!0;const v=n((function({scrollLeft:l,bodyWidth:e}){if(!c.value.length||!s)return;const i=l+e/2,t=u(c.value,(l=>i>=l.left));~t&&(d.value=c.value[t].field)}),800);return i([()=>f.value,()=>l.value],(()=>{!function(){var e,i,n;if(c.value=[],null==(e=t(l))?void 0:e.length){let e=0;const u=[];r(o(f.value),u),u.forEach((i=>{var n;const{field:o="",minWidth:u,width:r,fixed:a,title:f=""}=i,d=+(null!=(n=null!=u?u:r)?n:0);if("left"==a);else{e+=d;const i=t(l).find((l=>l.field===o));i&&c.value.push({field:o,title:i.name||f,left:e-d})}})),d.value=(null==(n=null==(i=c.value)?void 0:i[0])?void 0:n.field)||""}}()}),{immediate:!0,deep:!0}),{updateAnchor:async function(l){var e,i;s=!1;const t=c.value.find((e=>e.field===l));await(null==(i=a.value)?void 0:i.scrollTo(null!=(e=null==t?void 0:t.left)?e:0)),setTimeout((()=>{s=!0}),900)},onScroll:v,currentAnchorList:c,anchorValue:d}};export{a as useAnchor};
@@ -1 +1 @@
1
- import{createVNode as e}from"vue";import"../../../index.js";import t from"./filter.vue.js";import{isValid as i,compareDesc as r}from"date-fns";import{isObject as n,isArray as o}from"@vue/shared";import{defineTablePlugin as l}from"../../hooks/useTablePlugin.js";function a(){const a="filterDaterangeRenderPlugin";return l({name:a,vxe(i){i.renderer.mixin({filterDaterangeRenderPlugin:{showFilterFooter:!1,renderFilter:(i,r)=>e(t,{payload:r,key:r.column.field},null)}})},apply(e){e.fieldHooks.field.tap(a,((e,t,l,{$table:a})=>{var f,d,s,u;const c=null==(f=e.editRender)?void 0:f.props;if(!n(c))return e;if(!(null==(d=null==c?void 0:c.filterSetting)?void 0:d.daterange))return e;e.filterRender={name:"filterDaterangeRenderPlugin"};const m=null==(s=a.value)?void 0:s.getColumnByField(e.field),h={};return m&&o(m.filters)&&Object.assign(h,{...(null==(u=m.filters)?void 0:u[0])||{}}),e.filters=[{data:void 0,...h}],e.filterMethod||(e.filterMethod=function({option:e,row:t,column:n}){const{data:o}=e,l=t[n.field];return!!i(new Date(l))&&(r(new Date(l),new Date(o[0]))<=0&&r(new Date(l),new Date(o[1]))>=0)}),e.sortable?e.headerClassName=({$table:e,column:t})=>{const i=["iho-table__hideSortIcon"];return e.isSort(t)&&i.push("is--filter-active"),i}:e.headerClassName="iho-table__hideSortIcon",l.filterConfig={iconMatch:"iho-table--iconfont iho-table-icon-filter",iconNone:"iho-table--iconfont iho-table-icon-filter",...l.filterConfig},e}))}})}export{a as filterDaterangeRenderPlugin};
1
+ import{createVNode as e}from"vue";import"../../../index.js";import t from"./filter.vue.js";import{isValid as i,compareDesc as o}from"date-fns";import{isObject as n,isArray as r}from"@vue/shared";import{defineTablePlugin as l}from"../../hooks/useTablePlugin.js";function f(){const f="filterDaterangeRenderPlugin";return l({name:f,vxe(i){i.renderer.mixin({[f]:{showFilterFooter:!1,renderFilter:(i,o)=>e(t,{payload:o,key:o.column.field},null)}})},apply(e){e.fieldHooks.field.tap(f,((e,t,l,{$table:a})=>{var d,u,s,m;const c=null==(d=e.editRender)?void 0:d.props;if(!n(c))return e;if(!(null==(u=null==c?void 0:c.filterSetting)?void 0:u.daterange))return e;e.filterRender={name:f};const p=null==(s=a.value)?void 0:s.getColumnByField(e.field),v={};return p&&r(p.filters)&&Object.assign(v,{...(null==(m=p.filters)?void 0:m[0])||{}}),e.filters=[{data:void 0,...v}],e.filterMethod||(e.filterMethod=function({option:e,row:t,column:n}){const{data:r}=e,l=t[n.field];return!!i(new Date(l))&&(o(new Date(l),new Date(r[0]))<=0&&o(new Date(l),new Date(r[1]))>=0)}),l.filterConfig={iconMatch:"iho-table--iconfont iho-table-icon-filter",iconNone:"iho-table--iconfont iho-table-icon-filter",...l.filterConfig},e}))}})}export{f as filterDaterangeRenderPlugin};
@@ -1,5 +1,5 @@
1
1
  import { CSSProperties, PropType, ref } from 'vue';
2
- import { VxeColumnPropTypes, VxeTableConstructor, VxeTableDefines, VxeTableMethods, VxeTablePrivateMethods, VxeTablePropTypes } from 'vxe-table';
2
+ import { VxeColumnPropTypes, VxeTableConstructor, VxeTableMethods, VxeTablePrivateMethods } from 'vxe-table';
3
3
  declare const _default: import("vue").DefineComponent<{
4
4
  payload: {
5
5
  type: PropType<VxeColumnPropTypes.FilterSlotParams>;
@@ -12,17 +12,15 @@ declare const _default: import("vue").DefineComponent<{
12
12
  required: true;
13
13
  };
14
14
  }>> & {}>>;
15
- sortable: import("vue").ComputedRef<any>;
16
- optionsRef: import("vue").ComputedRef<VxeTableDefines.FilterOption[] & VxeColumnPropTypes.Filter[]>;
15
+ optionsRef: import("vue").ComputedRef<import("vxe-table").VxeTableDefines.FilterOption[] & VxeColumnPropTypes.Filter[]>;
17
16
  checkedRef: import("vue").WritableComputedRef<string[]>;
18
17
  $table: (VxeTableConstructor & VxeTablePrivateMethods & VxeTableMethods) | undefined;
19
- sortStatusRef: import("vue").WritableComputedRef<"desc" | "asc" | null>;
20
18
  checkedCacheRef: import("vue").Ref<string[]>;
21
19
  searchFilterText: import("vue").Ref<string>;
22
20
  close: () => void;
23
21
  OPTION_ITEM_HEIGHT: number;
24
22
  viewCapacity: import("vue").ComputedRef<number>;
25
- list: import("vue").Ref<import("@vueuse/core").UseVirtualListItem<VxeTableDefines.FilterOption>[]>;
23
+ list: import("vue").Ref<import("@vueuse/core").UseVirtualListItem<import("vxe-table").VxeTableDefines.FilterOption>[]>;
26
24
  containerProps: {
27
25
  ref: import("vue").Ref<any>;
28
26
  onScroll: () => void;
@@ -40,12 +38,6 @@ declare const _default: import("vue").DefineComponent<{
40
38
  containerStyleWithHeight: import("vue").ComputedRef<CSSProperties>;
41
39
  confirmFilter: () => void;
42
40
  reset: () => void;
43
- sortStatusList: {
44
- status: VxeTablePropTypes.SortOrder;
45
- text: string;
46
- }[];
47
- setSort: (value: VxeTablePropTypes.SortOrder) => void;
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<{}>>, {}>;
49
41
  NButton: any;
50
42
  NButtonGroup: any;
51
43
  NCheckbox: any;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,inject as t,ref as a,onDeactivated as o,openBlock as u,createElementBlock as n,unref as r,Fragment as i,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{isNumber as x}from"lodash-es";import{NInput as S,NCheckbox as $,NCheckboxGroup as E,NButtonGroup as j,NButton as w}from"naive-ui";import A from"../../../../../_virtual/plugin-vue_export-helper.js";const I={class:"iho-table__filterWrapper"},L={key:0},U=["onClick"],B={class:"iho-table__filterListItem"},F={class:"iho-table__filterFooter"};var O=A(e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const A=e,O=l((()=>{var e,l,t;return null==(t=null==(l=null==(e=A.payload)?void 0:e.column.editRender)?void 0:l.props)?void 0:t.sortable})),P=l((()=>{var e,l,t;return null!=(t=null==(l=null==(e=A.payload)?void 0:e.column)?void 0:l.filters)?t:[]})),R=l({get:()=>P.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(A.payload)return P.value.forEach((l=>{A.payload.$panel.changeOption(null,e.includes(l.value),l)})),A.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=A.payload)?void 0:l.column)}));return e?e.order:null},set(e){W&&A.payload&&A.payload.$panel&&W.triggerSortEvent(new CustomEvent("click"),A.payload.column,e)}}),q=a([...R.value]),z=a("");function D(){W&&(W.reactData.filterStore.visible=!1)}o(D);const H=l((()=>{var e,l;if(!A.payload||!A.payload.column)return 10;const{filterCapacity:t}=null!=(l=null==(e=A.payload.column.editRender)?void 0:e.props)?l:{};return x(t)&&t>0?t:10})),{list:G,containerProps:J,wrapperProps:K}=C(l((()=>z.value?P.value.filter((e=>`${e.label}`.includes(z.value))):P.value)),{itemHeight:32,overscan:3}),M=l((()=>!!q.value.length&&q.value.length!==P.value.length)),N=l({get:()=>q.value.length===P.value.length&&0!==P.value.length,set:e=>{q.value=e?P.value.map((e=>e.value)):[]}}),Q=l((()=>({...J.style,height:b(32*H.value)})));function T(){R.value=q.value,D()}function V(){q.value=[]}const X=[{status:"asc",text:"升序 A to Z"},{status:"desc",text:"降序 Z to A"}];return(e,l)=>(u(),n("section",I,[r(O)?(u(),n("div",L,[(u(),n(i,null,s(X,(e=>v("div",{key:e.status,class:c(["iho-table__filterButton",{"iho-table__filterButton--active":r(Z)===e.status}]),onClick:l=>{return t=e.status,Z.value=t,void D();var t}},[r(Z)===e.status?(u(),d(r(k),{key:0,class:"iho-table__sortActiveIcon"})):p("v-if",!0),f(" "+m(e.text),1)],10,U))),64))])):p("v-if",!0),r(P).length>5?(u(),d(r(S),{key:1,value:z.value,"onUpdate:value":l[0]||(l[0]=e=>z.value=e)},null,8,["value"])):p("v-if",!0),v("div",B,[h(r($),{label:"全选",checked:r(N),"onUpdate:checked":l[1]||(l[1]=e=>_(N)?N.value=e:null),indeterminate:r(M)},null,8,["checked","indeterminate"])]),h(r(E),{value:q.value,"onUpdate:value":l[3]||(l[3]=e=>q.value=e)},{default:y((()=>[v("section",{ref:r(J).ref,style:g(r(Q)),onScroll:l[2]||(l[2]=(...e)=>r(J).onScroll&&r(J).onScroll(...e)),class:"iho-table__filterListWrapper"},[v("section",{style:g(r(K).style)},[(u(!0),n(i,null,s(r(G),(e=>(u(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[h(r($),{value:e.data.value,label:e.data.label},null,8,["value","label"])])))),128))],4)],36)])),_:1},8,["value"]),v("footer",F,[v("section",null,m(`已选择${q.value.length}项`),1),h(r(j),{size:"small"},{default:y((()=>[h(r(w),{onClick:V},{default:y((()=>[f("清空")])),_:1}),h(r(w),{onClick:D},{default:y((()=>[f("取消")])),_:1}),h(r(w),{type:"primary",onClick:T},{default:y((()=>[f("确定")])),_:1})])),_:1})])]))}}),[["__file","filter.vue"]]);export{O as default};
1
+ import{defineComponent as e,computed as l,inject as a,ref as t,onDeactivated as u,openBlock as r,createElementBlock as o,unref as i,createBlock as n,createCommentVNode as v,createElementVNode as s,createVNode as c,isRef as p,withCtx as d,normalizeStyle as f,Fragment as h,renderList as m,toDisplayString as _,createTextVNode as y}from"vue";import{widthAppend as g}from"../../../../../shared/utils/index.js";import{useVirtualList as b}from"@vueuse/core";import{isNumber as k}from"lodash-es";import{NInput as C,NCheckbox as $,NCheckboxGroup as x,NButtonGroup as S,NButton as j}from"naive-ui";import L from"../../../../../_virtual/plugin-vue_export-helper.js";const U={class:"iho-table__filterWrapper"},w={class:"iho-table__filterListItem"},E={class:"iho-table__filterFooter"};var F=L(e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const L=e,F=l((()=>{var e,l,a;return null!=(a=null==(l=null==(e=L.payload)?void 0:e.column)?void 0:l.filters)?a:[]})),I=l({get:()=>F.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(L.payload)return F.value.forEach((l=>{L.payload.$panel.changeOption(null,e.includes(l.value),l)})),L.payload.$panel.confirmFilter(new CustomEvent("click"))}}),O=a("$xetable"),P=t([...I.value]),W=t("");function q(){O&&(O.reactData.filterStore.visible=!1)}u(q);const z=l((()=>{var e,l;if(!L.payload||!L.payload.column)return 10;const{filterCapacity:a}=null!=(l=null==(e=L.payload.column.editRender)?void 0:e.props)?l:{};return k(a)&&a>0?a:10})),{list:D,containerProps:H,wrapperProps:R}=b(l((()=>W.value?F.value.filter((e=>`${e.label}`.includes(W.value))):F.value)),{itemHeight:32,overscan:3}),A=l((()=>!!P.value.length&&P.value.length!==F.value.length)),B=l({get:()=>P.value.length===F.value.length&&0!==F.value.length,set:e=>{P.value=e?F.value.map((e=>e.value)):[]}}),G=l((()=>({...H.style,height:g(32*z.value)})));function J(){I.value=P.value,q()}function K(){P.value=[]}return(e,l)=>(r(),o("section",U,[i(F).length>5?(r(),n(i(C),{key:0,value:W.value,"onUpdate:value":l[0]||(l[0]=e=>W.value=e)},null,8,["value"])):v("v-if",!0),s("div",w,[c(i($),{label:"全选",checked:i(B),"onUpdate:checked":l[1]||(l[1]=e=>p(B)?B.value=e:null),indeterminate:i(A)},null,8,["checked","indeterminate"])]),c(i(x),{value:P.value,"onUpdate:value":l[3]||(l[3]=e=>P.value=e)},{default:d((()=>[s("section",{ref:i(H).ref,style:f(i(G)),onScroll:l[2]||(l[2]=(...e)=>i(H).onScroll&&i(H).onScroll(...e)),class:"iho-table__filterListWrapper"},[s("section",{style:f(i(R).style)},[(r(!0),o(h,null,m(i(D),(e=>(r(),o("div",{class:"iho-table__filterListItem",key:e.data.value},[c(i($),{value:e.data.value,label:e.data.label},null,8,["value","label"])])))),128))],4)],36)])),_:1},8,["value"]),s("footer",E,[s("section",null,_(`已选择${P.value.length}项`),1),c(i(S),{size:"small"},{default:d((()=>[c(i(j),{onClick:K},{default:d((()=>[y("清空")])),_:1}),c(i(j),{onClick:q},{default:d((()=>[y("取消")])),_:1}),c(i(j),{type:"primary",onClick:J},{default:d((()=>[y("确定")])),_:1})])),_:1})])]))}}),[["__file","filter.vue"]]);export{F as default};
@@ -1 +1 @@
1
- import{createVNode as e,nextTick as l}from"vue";import{jsonParse as r,traverse as t,arrayed as i}from"../../../../../shared/utils/index.js";import{isObject as o}from"@vue/shared";import{isArray as n,first as s,isString as u}from"lodash-es";import"../../../index.js";import{IhoTableRenderHelper as a,isCompatibleColumn as d,parseRichContent as f}from"../../utils/index.js";import c from"./filter.vue.js";import{defineTablePlugin as p}from"../../hooks/useTablePlugin.js";function v(){const v="filterRenderPlugin";return p({name:v,vxe(l){l.renderer.mixin({filterRenderPlugin:{showFilterFooter:!1,renderFilter:(l,r)=>e(c,{payload:r,key:r.column.field},null)}})},apply(e){let c=[];e.fieldHooks.field.tap(v,((e,l,t,{$table:i})=>{var c,p,v,h,m,b,g,k;const C=null==(c=e.editRender)?void 0:c.props;if(!o(C))return e;const R=r(C.fieldSetting||"");if(!a.hasFilter(C))return e;e.editRender={...e.editRender,props:{...null==(p=e.editRender)?void 0:p.props,sortable:e.sortable}},e.filterRender={name:"filterRenderPlugin"};const x=null==(v=i.value)?void 0:v.getColumnByField(e.field),y={};x&&n(x.filters)&&x.filters.forEach((e=>{e&&(y[`${e.label}_${e.value}`]=e.checked)}));let F=null!=(b=null==(m=null==(h=R.mapping)?void 0:h.mappingFiled)?void 0:m.reduce(((e,l)=>{const r=s(l.value);return o(r)&&e.push({label:r.key,value:r.value,data:r.value}),e}),[]))?b:[];if(d(C)&&(F=null!=(g=C.options)?g:[]),e.filters=F.reduce(((e,l)=>(o(l)&&e.push({...l,checked:!!y[`${l.label}_${l.value}`]}),e)),[]),!e.filterMethod){const l=null==(k=t.treeConfig)?void 0:k.children;e.filterMethod=function({option:e,column:r,row:t}){if(l&&n(t[l])&&t[l].length)return!1;const i=t[r.field];if(!u(i))return!1;if(i===e.value||i===e.label)return!0;const{value:o,change_text:s}=f(i);return s===e.label||o===e.value}}return e.sortable?e.headerClassName=({$table:e,column:l})=>{const r=["iho-table__hideSortIcon"];return e.isSort(l)&&r.push("is--filter-active"),r}:e.headerClassName="iho-table__hideSortIcon",t.filterConfig={iconMatch:"iho-table--iconfont iho-table-icon-filter",iconNone:"iho-table--iconfont iho-table-icon-filter",...t.filterConfig},e})),e.fieldHooks.fieldList.tap(v,(e=>c=e)),e.fieldHooks.fieldEnd.tapPromise(v,(async(e,{$table:r})=>{var i;try{if(await l(),!r.value)return;const n=null!=(i=r.value.getColumns())?i:[],s=[];if(t(c,(e=>{n.find((l=>l.field===e.field))||s.push(e)})),!s.length)return;setTimeout((()=>{var l,t;if(null==(l=e.sortConfig)?void 0:l.multiple){const e=null!=(t=r.value.getColumns())?t:[],l=s.concat(e).reduce(((e,l)=>{var r;const t=null==(r=l.editRender)?void 0:r.props;return o(t)&&h(t.isOrder)&&e.push({field:l.field,order:t.isOrder}),e}),[]);r.value.sort(l)}else s.reverse().some((e=>{var l;const t=null==(l=e.editRender)?void 0:l.props;if(o(t)&&h(t.isOrder))return e&&r.value.sort(e.field,t.isOrder),!0}))}),100)}finally{c=[]}})),e.exposeHooks.expose.tap(v,((e,l,{$table:r})=>(Object.assign(e,{setSort(e,l){r.value&&r.value.sort(e,l)},setFilter(e,l){if(!r.value)return;const t=r.value.getColumnByField(e);if(!t||!n(t.filters))return;const o=i(l);t.filters.forEach((e=>{e.checked=o.includes(e.value)})),r.value.updateData()}}),e)))}})}function h(e){return["asc","desc",null].includes(e)}export{v as filterRenderPlugin};
1
+ import{createVNode as e,nextTick as l}from"vue";import{jsonParse as r,traverse as t,arrayed as i}from"../../../../../shared/utils/index.js";import{isObject as o}from"@vue/shared";import{isArray as n,first as u,isString as s}from"lodash-es";import"../../../index.js";import{IhoTableRenderHelper as a,isCompatibleColumn as d,parseRichContent as f}from"../../utils/index.js";import c from"./filter.vue.js";import{defineTablePlugin as p}from"../../hooks/useTablePlugin.js";function v(){const v="filterRenderPlugin";return p({name:v,vxe(l){l.renderer.mixin({[v]:{showFilterFooter:!1,renderFilter:(l,r)=>e(c,{payload:r,key:r.column.field},null)}})},apply(e){let c=[];e.fieldHooks.field.tap(v,((e,l,t,{$table:i})=>{var c,p,m,h,g,b,k,x;const y=null==(c=e.editRender)?void 0:c.props;if(!o(y))return e;const C=r(y.fieldSetting||"");if(!a.hasFilter(y))return e;e.editRender={...e.editRender,props:{...null==(p=e.editRender)?void 0:p.props,sortable:e.sortable}},e.filterRender={name:v};const F=null==(m=i.value)?void 0:m.getColumnByField(e.field),R={};F&&n(F.filters)&&F.filters.forEach((e=>{e&&(R[`${e.label}_${e.value}`]=e.checked)}));let $=null!=(b=null==(g=null==(h=C.mapping)?void 0:h.mappingFiled)?void 0:g.reduce(((e,l)=>{const r=u(l.value);return o(r)&&e.push({label:r.key,value:r.value,data:r.value}),e}),[]))?b:[];if(d(y)&&($=null!=(k=y.options)?k:[]),e.filters=$.reduce(((e,l)=>(o(l)&&e.push({...l,checked:!!R[`${l.label}_${l.value}`]}),e)),[]),!e.filterMethod){const l=null==(x=t.treeConfig)?void 0:x.children;e.filterMethod=function({option:e,column:r,row:t}){if(l&&n(t[l])&&t[l].length)return!1;const i=t[r.field];if(!s(i))return!1;if(i===e.value||i===e.label)return!0;const{value:o,change_text:u}=f(i);return u===e.label||o===e.value}}return t.filterConfig={iconMatch:"iho-table--iconfont iho-table-icon-filter",iconNone:"iho-table--iconfont iho-table-icon-filter",...t.filterConfig},e})),e.fieldHooks.fieldList.tap(v,(e=>c=e)),e.fieldHooks.fieldEnd.tapPromise(v,(async(e,{$table:r})=>{var i;try{if(await l(),!r.value)return;const n=null!=(i=r.value.getColumns())?i:[],u=[];if(t(c,(e=>{n.find((l=>l.field===e.field))||u.push(e)})),!u.length)return;setTimeout((()=>{var l,t;if(null==(l=e.sortConfig)?void 0:l.multiple){const e=null!=(t=r.value.getColumns())?t:[],l=u.concat(e).reduce(((e,l)=>{var r;const t=null==(r=l.editRender)?void 0:r.props;return o(t)&&m(t.isOrder)&&e.push({field:l.field,order:t.isOrder}),e}),[]);r.value.sort(l)}else u.reverse().some((e=>{var l;const t=null==(l=e.editRender)?void 0:l.props;if(o(t)&&m(t.isOrder))return e&&r.value.sort(e.field,t.isOrder),!0}))}),100)}finally{c=[]}})),e.exposeHooks.expose.tap(v,((e,l,{$table:r})=>(Object.assign(e,{setSort(e,l){r.value&&r.value.sort(e,l)},setFilter(e,l){if(!r.value)return;const t=r.value.getColumnByField(e);if(!t||!n(t.filters))return;const o=i(l);t.filters.forEach((e=>{e.checked=o.includes(e.value)})),r.value.updateData()}}),e)))}})}function m(e){return["asc","desc",null].includes(e)}export{v as filterRenderPlugin};
@@ -1 +1 @@
1
- import{promiseTimeout as e}from"@vueuse/shared";import"../../../index.js";import{defineTablePlugin as o}from"../../hooks/useTablePlugin.js";function t(){const t="keyboardEventPlugin";return o({name:t,apply(o){o.eventHooks.onKeydown.tap(t,(async({$event:o,$table:t},n,{emits:r})=>{await e(0);const{row:i,column:a}=t.getSelectedCell()||t.getEditRecord()||{};if(!i||!a)return;r("keyboard",{key:o.key,index:t.getRowIndex(i),value:i[a.field],row:i,column:a})}))}})}export{t as keyboardEventPlugin};
1
+ import{promiseTimeout as e}from"@vueuse/shared";import"../../../index.js";import{useSessionStorage as n}from"@vueuse/core";import{isEqual as o,isFunction as t}from"lodash-es";import{selectOptionsMap as l}from"../rendererPlugins/editableWidgets/hooks/useSelectOption.js";import{IhoTableUtils as i}from"../../utils/index.js";import{EDITABLE_WIDGET_TYPE as r}from"../../constants/index.js";import{defineTablePlugin as u}from"../../hooks/useTablePlugin.js";function d(){const d="keyboardEventPlugin",s=n("ihoTableClipData",null);return u({name:d,apply(n){function u(e,n,u,d,c){var p,f;if(!(null==(p=null==u?void 0:u.keyboardConfig)?void 0:p.isClip))return;const{row:v,column:m}=n.getSelectedCell()||n.getEditRecord()||{};if(!v||!m||!a(m)&&s.value===v[m.field])return;const g=u.uuid&&a(m)&&l.get(u.uuid)[m.field],b=v[m.field];if("copy"===e){const e=(null==(f=(g||[]).filter((e=>b.includes(e.value))))?void 0:f.map((e=>e.label)).join(","))||b;s.value=e}else{if(!function(e){var n;const o=null==(n=e.editRender)?void 0:n.props;return o&&Object.keys(r).includes(i.getCellType(o))}(m)||v.$__SEPARATE||!function(e,n,o,l){var i,r;const{beforeEditMethod:u}=n.editConfig||{},d={rowIndex:null!=(i=e.getRowIndex(o))?i:0,columnIndex:null!=(r=e.getColumnIndex(l))?r:0};return!u||t(u)&&u({row:o,column:l,...d,$table:e,$grid:void 0})}(n,u,v,m))return;let e=s.value||"";if(function(e){var n,o;const t=null==(n=e.editRender)?void 0:n.props;return a(e)&&(null==(o=t.componentProps)?void 0:o.multiple)}(m)){const n=(g||[]).filter((n=>e.split(",").includes(n.label))).map((e=>e.value));if(!(null==n?void 0:n.length)||o(b,n))return;e=n}else{const n=(g||[]).find((n=>n.label===e));if(g&&(!n||b===n.value))return;n&&(e=n.value)}v[m.field]=e,d("formChange",{column:m,row:v,oldValue:b,value:e,index:n.getRowIndex(v)}),function(e){var n;const o=null==(n=e.editRender)?void 0:n.props;return o&&"SEPARATE"===i.getCellType(o)}(m)&&(null==c||c())}}function a(e){var n;const o=null==(n=e.editRender)?void 0:n.props;return o&&"SELECT"===i.getCellType(o)}n.eventHooks.onCopy.tap(d,(({$table:e},n,{emits:o})=>u("copy",e,n,o))),n.eventHooks.onPaste.tap(d,(({$table:e},n,{emits:o,updateTableDataRef:t})=>u("paste",e,n,o,t))),n.eventHooks.onKeydown.tap(d,(async({$event:n,$table:o},t,{emits:l})=>{await e(0);const{row:i,column:r}=o.getSelectedCell()||o.getEditRecord()||{};if(!i||!r)return;l("keyboard",{key:n.key,index:o.getRowIndex(i),value:i[r.field],row:i,column:r})}))}})}export{d as keyboardEventPlugin};
@@ -1 +1 @@
1
- import{toRaw as e,h as t,inject as l,createVNode as i}from"vue";import{arrayed as o,widthAppend as s}from"../../../../../shared/utils/index.js";import{isObject as n,isFunction as d,cloneDeep as a,isString as r}from"lodash-es";import{NEllipsis as u}from"naive-ui";import f from"../../../../annotation-edit/index.js";import{HIGHEST_PRIORITY as m,IHO_TABLE_FIXED_STATUS as c,LOWEST_PRIORITY as p,WIDGET_TYPE as h,InjectionIhoTableAnnotation as v,InjectionIhoTableConfig as b}from"../../constants/index.js";import{defineTablePlugin as g}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as R,IhoTableUtils as j,IhoTableRenderHelper as x}from"../../utils/index.js";import{getDefaultValue as P}from"../rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";function F(){const F="lowCodeFieldAdaptorPlugin";return g({name:F,apply(g){g.fieldHooks.field.tap({name:F,stage:m},((m,p,g)=>{const F=m,S={className:F.bold?"iho-table__boldCell":"",field:F.columnName,showOverflow:"tooltip",visible:R.notNegative(F.isShow),minWidth:F.colWidth,sortable:R.isPositive(F.isSort),fixed:c[F.isFixed],...F,title:F.alias||F.title};return function(e,a){const m={default:a.slotFn,header:a.headerSlotFn,edit:a.editSlotFn,footer:a.footerSlotFn,...a.slots};if(d(a.checkEditStatus)){const{default:e}=m;d(e)&&(m.default=l=>a.checkEditStatus(l)?e(l):[t("span",null,P(l.row,l.column.editRender.props))])}const c=m.header;m.header=e=>function(e,t,a){const m=l(v),c=l(b),p=e.column||{},h=n(null==m?void 0:m.value)&&!1!==t.annotation,g=x.isEditableColumn(c.value,p),R=p.sortable||x.hasFilter(t)||x.hasDateFiler(t),j=r(a)?a:d(a)?a(e):null;let P=!1;if(c.value){const e=c.value.editRules&&c.value.editRules[p.field];e&&(P=o(e).some((e=>e.required)))}return i("section",{class:"iho-table__headerWrapper"},[i("section",{style:{width:s(Math.max(0,p.renderWidth-20-(P?14:0)-(h?18:0)-(R?23:0)-(g?22:0)))}},[null!=j?j:i(u,{style:{maxWidth:"100%"}},{default:()=>p.title})]),h?i(f,{modelValue:m.value[p.field],"onUpdate:modelValue":e=>m.value[p.field]=e},null):null])}(e,a,c),e.slots=m}(S,F),function(t,l,i){var o,s;const r=a(e(l));r.componentProps={size:"mini"===i.size?"small":i.size,...r.componentProps},t.editRender={autofocus:"input",name:j.getCellType(l),props:r},t.editRender.enabled=!Reflect.get(h,t.editRender.name),d(null==(o=t.slots)?void 0:o.default)&&(t.editRender.enabled=t.editRender.enabled&&d(null==(s=t.slots)?void 0:s.edit));if(!n(l.settingObj))return;Reflect.has(l.settingObj,"isHide")&&(t.visible=t.visible&&R.notPositive(l.settingObj.isHide))}(S,F,g),S})),g.fieldHooks.field.tap({name:F+"After",stage:p},(e=>(n(e.slots)&&Object.entries(e.slots).forEach((([t,l])=>{null==l&&Reflect.deleteProperty(e.slots,t)})),e)))}})}export{F as lowCodeFieldAdaptorPlugin};
1
+ import{toRaw as e,h as t,inject as l,createVNode as i}from"vue";import{arrayed as o,widthAppend as s}from"../../../../../shared/utils/index.js";import{isObject as n,isFunction as d,cloneDeep as a,isString as r}from"lodash-es";import{NEllipsis as u}from"naive-ui";import f from"../../../../annotation-edit/index.js";import{HIGHEST_PRIORITY as m,IHO_TABLE_FIXED_STATUS as c,LOWEST_PRIORITY as p,WIDGET_TYPE as h,InjectionIhoTableAnnotation as v,InjectionIhoTableConfig as b}from"../../constants/index.js";import{defineTablePlugin as g}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as R,IhoTableUtils as j,IhoTableRenderHelper as x}from"../../utils/index.js";import{getDefaultValue as P}from"../rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";function F(){const F="lowCodeFieldAdaptorPlugin";return g({name:F,apply(g){g.fieldHooks.field.tap({name:F,stage:m},((m,p,g)=>{const F=m,S={className:F.bold?"iho-table__boldCell":"",field:F.columnName,showOverflow:"tooltip",visible:R.notNegative(F.isShow),minWidth:F.colWidth,sortable:R.isPositive(F.isSort),fixed:c[F.isFixed],...F,title:F.alias||F.title};return function(e,a){const m={default:a.slotFn,header:a.headerSlotFn,edit:a.editSlotFn,footer:a.footerSlotFn,...a.slots};if(d(a.checkEditStatus)){const{default:e}=m;d(e)&&(m.default=l=>a.checkEditStatus(l)?e(l):[t("span",null,P(l.row,l.column.editRender.props))])}const c=m.header;m.header=e=>function(e,t,a){const m=l(v),c=l(b),p=e.column||{},h=n(null==m?void 0:m.value)&&!1!==t.annotation,g=x.isEditableColumn(c.value,p),R=x.hasFilter(t)||x.hasDateFiler(t),j=r(a)?a:d(a)?a(e):null;let P=!1;if(c.value){const e=c.value.editRules&&c.value.editRules[p.field];e&&(P=o(e).some((e=>e.required)))}return i("section",{class:"iho-table__headerWrapper"},[i("section",{style:{width:s(Math.max(0,p.renderWidth-20-(P?14:0)-(h?18:0)-(R?23:0)-(g?22:0)-(p.sortable?23:0)))}},[null!=j?j:i(u,{style:{maxWidth:"100%"}},{default:()=>p.title})]),h?i(f,{modelValue:m.value[p.field],"onUpdate:modelValue":e=>m.value[p.field]=e},null):null])}(e,a,c),e.slots=m}(S,F),function(t,l,i){var o,s;const r=a(e(l));r.componentProps={size:"mini"===i.size?"small":i.size,...r.componentProps},t.editRender={autofocus:"input",name:j.getCellType(l),props:r},t.editRender.enabled=!Reflect.get(h,t.editRender.name),d(null==(o=t.slots)?void 0:o.default)&&(t.editRender.enabled=t.editRender.enabled&&d(null==(s=t.slots)?void 0:s.edit));if(!n(l.settingObj))return;Reflect.has(l.settingObj,"isHide")&&(t.visible=t.visible&&R.notPositive(l.settingObj.isHide))}(S,F,g),S})),g.fieldHooks.field.tap({name:F+"After",stage:p},(e=>(n(e.slots)&&Object.entries(e.slots).forEach((([t,l])=>{null==l&&Reflect.deleteProperty(e.slots,t)})),e)))}})}export{F as lowCodeFieldAdaptorPlugin};
@@ -1,5 +1,5 @@
1
1
  import { Func } from '../../../../../../../../es/shared/types';
2
- import { PropType } from 'vue';
2
+ import { type PropType } from 'vue';
3
3
  import { VxeTableDefines } from 'vxe-table';
4
4
  import { AnyObject } from '../../../../../../../../es/shared/types';
5
5
  declare const _default: import("vue").DefineComponent<{
@@ -43,8 +43,7 @@ declare const _default: import("vue").DefineComponent<{
43
43
  }>>;
44
44
  emitFormChangeWithParams: (params?: AnyObject) => void;
45
45
  emit: (event: "update:value", ...args: any[]) => void;
46
- formRef: import("vue").Ref<HTMLElement | null>;
47
- isShow: import("vue").Ref<boolean>;
46
+ formRef: import("vue").Ref<any>;
48
47
  formattedValue: any;
49
48
  onConfirm: (value: any) => void;
50
49
  isStartDate: any;
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as t,ref as r,computed as o,watch as i,openBlock as a,createBlock as s,unref as u,mergeProps as l,isRef as n}from"vue";import{generateTimeFormat as m}from"../../../../../../../shared/utils/index.js";import{isFunction as d}from"lodash-es";import{useIhoTableFormEvent as p}from"../../../../utils/index.js";import{useAutoFocus as c}from"../hooks/useAutoFocus.js";import f from"../../../../../../date-picker/index.js";import w from"../../../../../../../_virtual/plugin-vue_export-helper.js";var v=w(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:w}){const v=e,D=t(),{emitFormChangeWithParams:g}=p(v),{formRef:h,isShow:y}=c(),b=r(v.value),j=e=>{b.value=e;const t=v.value;w("update:value",e),g({oldValue:t})},{isStartDate:S=!1,isEndDate:T=!1}=D,$=D.connectField||"",_=(e,t)=>S&&$?e>t:!(!T||!$)&&e<t,x=e=>{const t=new Date(v.row[$]),r=new Date(e),o=t.getHours(),i=t.getMinutes(),a=t.getSeconds(),s=(e,t,r,o)=>!(T&&r>o)&&(!(S&&r<o)&&_(e,t));return{isHourDisabled:t=>{if(!v.row[$])return!1;const i=new Date(`${v.row[$].split(" ")[0]} 00:00:00`).getTime(),a=r.getMinutes(),u=r.getSeconds();return s(t,o,e-60*t*60*1e3-60*a*1e3-1e3*u,i)},isMinuteDisabled:t=>{if(!v.row[$])return!1;const a=new Date(`${v.row[$].split(" ")[0]} ${o}:00:00`).getTime(),u=r.getSeconds();return s(t,i,e-60*t*1e3-1e3*u,a)},isSecondDisabled:t=>{if(!v.row[$])return!1;const r=new Date(`${v.row[$].split(" ")[0]} ${o}:${i}:00`).getTime();return s(t,a,e-1e3*t,r)}}};function F(e){return d(e)?t=>e(t,v.row):null}const M=o((()=>{const e=D.valueFormat||"yyyy-MM-dd HH:mm:ss";return{valueFormat:e,format:e,timePickerProps:{format:m(e)}}})),k={type:D.type||"datetime",clearable:!0,placeholder:D.placeholder||"请选择",...D,...M.value,isDateDisabled:F(D.isDateDisabled)||(e=>!!v.row[$]&&_(e,T?new Date(`${v.row[$].split(" ")[0]} 00:00:00`).getTime():new Date(v.row[$]).getTime()))};return k.type.includes("time")&&(k.isTimeDisabled=F(D.isTimeDisabled)||x),i((()=>v.value),(e=>{b.value=e})),(e,t)=>(a(),s(u(f),l({ref_key:"formRef",ref:h,show:u(y),"onUpdate:show":t[0]||(t[0]=e=>n(y)?y.value=e:null),"formatted-value":b.value},u(k),{"onUpdate:formattedValue":j}),null,16,["show","formatted-value"]))}}),[["__file","editDate.vue"]]);export{v as default};
1
+ import{defineComponent as e,useAttrs as t,ref as r,computed as i,watch as a,onMounted as l,openBlock as o,createBlock as u,unref as n,mergeProps as s}from"vue";import{generateTimeFormat as d}from"../../../../../../../shared/utils/index.js";import{isFunction as m}from"lodash-es";import{useIhoTableFormEvent as p}from"../../../../utils/index.js";import c from"../../../../../../date-picker/index.js";import v from"../../../../../../../_virtual/plugin-vue_export-helper.js";var f=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 f=e,w=t(),{emitFormChangeWithParams:D}=p(f),g=r(),y=r(f.value),b=e=>{y.value=e;const t=f.value;t!==e&&(v("update:value",e),D({oldValue:t}))},{isStartDate:$=!1,isEndDate:h=!1}=w,S=w.connectField||"",T=(e,t)=>$&&S?e>t:!(!h||!S)&&e<t,_=e=>{const t=new Date(f.row[S]),r=new Date(e),i=t.getHours(),a=t.getMinutes(),l=t.getSeconds(),o=(e,t,r,i)=>!(h&&r>i)&&(!($&&r<i)&&T(e,t));return{isHourDisabled:t=>{if(!f.row[S])return!1;const a=new Date(`${f.row[S].split(" ")[0]} 00:00:00`).getTime(),l=r.getMinutes(),u=r.getSeconds();return o(t,i,e-60*t*60*1e3-60*l*1e3-1e3*u,a)},isMinuteDisabled:t=>{if(!f.row[S])return!1;const l=new Date(`${f.row[S].split(" ")[0]} ${i}:00:00`).getTime(),u=r.getSeconds();return o(t,a,e-60*t*1e3-1e3*u,l)},isSecondDisabled:t=>{if(!f.row[S])return!1;const r=new Date(`${f.row[S].split(" ")[0]} ${i}:${a}:00`).getTime();return o(t,l,e-1e3*t,r)}}};function j(e){return m(e)?t=>e(t,f.row):null}const x=i((()=>{const e=w.valueFormat||"yyyy-MM-dd HH:mm:ss";return{valueFormat:e,format:e,timePickerProps:{format:d(e)}}})),M={type:w.type||"datetime",clearable:!0,placeholder:w.placeholder||"请选择",...w,...x.value,isDateDisabled:j(w.isDateDisabled)||(e=>!!f.row[S]&&T(e,h?new Date(`${f.row[S].split(" ")[0]} 00:00:00`).getTime():new Date(f.row[S]).getTime()))};return M.type.includes("time")&&(M.isTimeDisabled=j(w.isTimeDisabled)||_),a((()=>f.value),(e=>{y.value=e})),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(),u(n(c),s({ref_key:"formRef",ref:g,"formatted-value":y.value},n(M),{"onUpdate:formattedValue":b}),null,16,["formatted-value"]))}}),[["__file","editDate.vue"]]);export{f as default};
@@ -0,0 +1,2 @@
1
+ import { AnyObject } from '../../../../../../../../es/shared/types';
2
+ export declare const selectOptionsMap: Map<string, Record<string, AnyObject[]>>;
@@ -0,0 +1 @@
1
+ import{reactive as o}from"vue";const e=o(new Map);export{e as selectOptionsMap};
@@ -1 +1 @@
1
- import{reactive as e,inject as t,createVNode as o,mergeProps as i,onBeforeUnmount as n}from"vue";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as l,InjectionIhoTableUUID as r}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as s,IhoTableRenderHelper as d,IhoTableUtils as u}from"../../../../utils/index.js";import p from"./editSelect.js";import{getDefaultValue as a}from"./selectUtils.js";import{defineTablePlugin as c}from"../../../../hooks/useTablePlugin.js";function f(){const f="selectRendererPlugin",m=e(new Map),v=e(new Map);return c({name:f,vxe(e){e.interceptor.add("event.clearActived",s(l.SELECT,(e=>e.classList.contains("iho-table__selectMenu")))),e.renderer.add(l.SELECT,{renderCell({props:e},{row:i,column:n}){const l=t(r),s=m.get(l)[n.field]||[];return[o("span",null,[a(i,e,s)])]},renderEdit:d.createRenderEdit((({fieldItem:e,emitFormClick:n,row:l,column:s,$rowIndex:d})=>{const u=t(r),a=m.get(u)[s.field]||[];return[o(p,i({queryOptions:e.queryOptions,options:a},e.componentProps,{column:s,row:l,"row-index":d,value:l[s.field],"onUpdate:value":e=>l[s.field]=e,onClick:n}),null)]}))})},apply(e){e.fieldHooks.fieldList.tap(f,((e,{uuid:t})=>(t&&(v.set(t,e),m.set(t,{})),e))),e.fieldHooks.fieldEnd.tapPromise(f,(async({uuid:e})=>{if(!e)return;const t=v.get(e),o=m.get(e);t.forEach((async e=>{var t,i;const n=null==(t=e.editRender)?void 0:t.props;if(e.field&&n&&"SELECT"===u.getCellType(n)){if(o[e.field])return;let t=n.options||[];if(n.queryOptions)try{const o={column:e,isFullData:!0};t=await(null==(i=n.queryOptions)?void 0:i.call(n,o))}catch(e){console.log(`获取${n.field}_options错误`)}o[e.field]=t}}))})),e.setupHooks.setup.tap(f,(e=>{n((()=>{e.value.uuid&&(v.delete(e.value.uuid),m.delete(e.value.uuid))}))}))}})}export{f as selectRendererPlugin};
1
+ import{inject as e,createVNode as o,mergeProps as t,onBeforeUnmount as i}from"vue";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as l,InjectionIhoTableUUID as n}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as r,IhoTableRenderHelper as s,IhoTableUtils as u}from"../../../../utils/index.js";import d from"./editSelect.js";import{getDefaultValue as p,getArray as c}from"./selectUtils.js";import{selectOptionsMap as a}from"../hooks/useSelectOption.js";import{defineTablePlugin as f}from"../../../../hooks/useTablePlugin.js";function m(){const m="selectRendererPlugin";return f({name:m,vxe(i){i.interceptor.add("event.clearActived",r(l.SELECT,(e=>e.classList.contains("iho-table__selectMenu")))),i.renderer.add(l.SELECT,{renderCell({props:t},{row:i,column:l}){const r=e(n),s=a.get(r)[l.field]||[];return[o("span",null,[p(i,t,s)])]},renderEdit:s.createRenderEdit((({fieldItem:i,emitFormClick:l,row:r,column:s,$rowIndex:u})=>{const p=e(n),c=a.get(p)[s.field]||[];return[o(d,t({queryOptions:i.queryOptions},i.componentProps,{options:c,column:s,row:r,"row-index":u,value:r[s.field],"onUpdate:value":e=>r[s.field]=e,onClick:l}),null)]}))})},apply(e){let o=null;e.fieldHooks.fieldList.tap(m,((e,{uuid:t})=>(o=e,t&&a.set(t,{}),e))),e.fieldHooks.fieldEnd.tapPromise(m,(async({uuid:e})=>{if(!e)return;const t=a.get(e);null==o||o.forEach((async e=>{var o,i,l;const n=null==(o=e.editRender)?void 0:o.props;if(e.field&&n&&"SELECT"===u.getCellType(n)){if(t[e.field])return;let o=c(n.options)||c(null==(i=n.componentProps)?void 0:i.options)||[];if(n.queryOptions)try{const t={column:e,isFullData:!0};o=await(null==(l=n.queryOptions)?void 0:l.call(n,t))}catch(e){console.log(`获取${n.field}_options错误`)}t[e.field]=o}})),o=null})),e.setupHooks.setup.tap(m,(e=>{i((()=>{e.value.uuid&&a.delete(e.value.uuid)}))}))}})}export{m as selectRendererPlugin};
@@ -1,3 +1,4 @@
1
1
  import { AnyObject } from '../../../../../../../../es/shared/types';
2
2
  import { LowCodeTableFieldItem } from '../../../../../../../../es/components/iho-table/src/types';
3
3
  export declare function getDefaultValue(row: AnyObject, item: LowCodeTableFieldItem | any, options?: AnyObject[]): any;
4
+ export declare function getArray(list: AnyObject[] | undefined): AnyObject[] | null | undefined;
@@ -1 +1 @@
1
- function n(n,o,r=[]){const i=n[o.columnName];return Array.isArray(i)?i.map((n=>l(n))).join(","):l(i);function l(n){var i;return l=(null==(i=o.componentProps)?void 0:i.options)||o.options||r,(null==(t=null==l?void 0:l.find((o=>o.value==n)))?void 0:t.label)||n||"";var l,t}}export{n as getDefaultValue};
1
+ function n(n,l,u=[]){const a=n[l.columnName];return Array.isArray(a)?a.map((n=>i(n))).join(","):i(a);function i(n){return l=r(u)||[],(null==(a=null==l?void 0:l.find((r=>r.value==n)))?void 0:a.label)||n||"";var l,a}}function r(n){return Array.isArray(n)&&!n.length?null:n}export{r as getArray,n as getDefaultValue};
@@ -19,7 +19,10 @@ export declare type IhoTableConfig = VxeTableProps & Partial<{
19
19
  showSeq: boolean;
20
20
  selectType: Exclude<VxeTableDefines.ColumnInfo['type'], 'seq' | 'expand' | 'html'>;
21
21
  rowGroupSetting: Partial<Record<TupleToUnion<typeof IhoTableRowGroupSequence>, IhoTableRowGroupItem[]>>;
22
- anchorList: string[];
22
+ anchorList: Array<{
23
+ name?: string;
24
+ field: string;
25
+ } | string>;
23
26
  rowConfig: Partial<VxeTableProps['rowConfig'] & {
24
27
  clickToCancel: boolean;
25
28
  }>;
@@ -1 +1 @@
1
- .iho-table{height:100%}.iho-table .vxe-body--column.col--drag{cursor:move}.iho-table .vxe-table.size--mini{font-size:14px}.iho-table .vxe-table.size--mini .vxe-body--column:not(.col--ellipsis),.iho-table .vxe-table.size--mini .vxe-footer--column:not(.col--ellipsis),.iho-table .vxe-table.size--mini .vxe-header--column:not(.col--ellipsis){padding:4px 0}.iho-table .vxe-table.size--mini .vxe-sort--asc-btn{top:-2px}.iho-table .vxe-table.size--mini .vxe-sort--desc-btn{bottom:0}.iho-table__headerWrapper{display:inline-flex;flex-wrap:nowrap}.iho-table__boldCell{font-weight:700}.iho-table .vxe-table .vxe-table--header-wrapper,.iho-table .vxe-table.vxe-table--render-default{color:#212121}.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-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.iho-table .vxe-table--render-default .vxe-body--row.row--hover,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--stripe{background-color:var(--c-hover-color)}.iho-table .vxe-table--render-default .vxe-body--row.row--checked,.iho-table .vxe-table--render-default .vxe-body--row.row--current,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--checked,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--current,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--radio,.iho-table .vxe-table--render-default .vxe-body--row.row--radio{background-color:var(--c-primary-color-opacity2);font-weight:700}.iho-table .vxe-body--expanded-column,.iho-table .vxe-table--border-line{border-color:var(--c-border-color)!important}.iho-table .vxe-table--footer-wrapper{border-top-color:var(--c-border-color)!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(var(--c-border-color),var(--c-border-color))!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(var(--c-border-color),var(--c-border-color)),linear-gradient(var(--c-border-color),var(--c-border-color))!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(var(--c-border-color),var(--c-border-color))!important}.iho-table .vxe-table--header-border-line{border-bottom-color:var(--c-border-color)!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 .is--filter-active .vxe-cell--filter .vxe-filter--btn{color:var(--c-primary-color)}.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:var(--c-primary-color)}.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:var(--c-primary-color)}.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 .variable-height .vxe-cell,.iho-table .variable-height .vxe-cell--tree-node,.iho-table .variable-height .vxe-tree-cell{max-height:fit-content!important;white-space:break-spaces!important}.iho-table__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar,.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.iho-table__selectMenu .v-vl-items{min-width:100%;width:max-content}.iho-table__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.iho-table .is--checked.vxe-checkbox,.iho-table .is--checked.vxe-checkbox .vxe-checkbox--icon,.iho-table .is--checked.vxe-custom--option,.iho-table .is--checked.vxe-custom--option .vxe-checkbox--icon,.iho-table .is--checked.vxe-export--panel-column-option,.iho-table .is--checked.vxe-export--panel-column-option .vxe-checkbox--icon,.iho-table .is--checked.vxe-table--filter-option,.iho-table .is--checked.vxe-table--filter-option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-checkbox,.iho-table .is--indeterminate.vxe-checkbox .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-custom--option,.iho-table .is--indeterminate.vxe-custom--option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-export--panel-column-option,.iho-table .is--indeterminate.vxe-export--panel-column-option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-table--filter-option,.iho-table .is--indeterminate.vxe-table--filter-option .vxe-checkbox--icon,.iho-table .vxe-checkbox:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-custom--option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-export--panel-column-option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-table .vxe-sort--asc-btn.sort--active,.iho-table .vxe-table .vxe-sort--desc-btn.sort--active,.iho-table .vxe-table--filter-option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-table--render-default .is--checked.vxe-cell--checkbox,.iho-table .vxe-table--render-default .is--checked.vxe-cell--checkbox .vxe-checkbox--icon,.iho-table .vxe-table--render-default .is--indeterminate.vxe-cell--checkbox,.iho-table .vxe-table--render-default .is--indeterminate.vxe-cell--checkbox .vxe-checkbox--icon,.iho-table .vxe-table--render-default .vxe-cell--checkbox:not(.is--disabled):hover .vxe-checkbox--icon{color:var(--c-primary-color)}.iho-table .vxe-header--column [annotation-hover-show=true]{visibility:hidden}.iho-table .vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}@font-face{font-family:iho-table-iconfont;src:url(iconfont.ttf) format("truetype")}.iho-table .iho-table--iconfont{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iho-table-iconfont!important;font-size:15px;font-style:normal}.iho-table .iho-table-icon-filter{display:inline-block;transform:translateY(-1px)}.iho-table .iho-table-icon-filter:before{content:"\c2001"}.iho-table .row--custom{background-color:var(--row-background-color)}
1
+ .iho-table{height:100%}.iho-table .vxe-body--column.col--drag{cursor:move}.iho-table .vxe-table.size--mini{font-size:14px}.iho-table .vxe-table.size--mini .vxe-body--column:not(.col--ellipsis),.iho-table .vxe-table.size--mini .vxe-footer--column:not(.col--ellipsis),.iho-table .vxe-table.size--mini .vxe-header--column:not(.col--ellipsis){padding:4px 0}.iho-table .vxe-table.size--mini .vxe-sort--asc-btn{top:-2px}.iho-table .vxe-table.size--mini .vxe-sort--desc-btn{bottom:0}.iho-table__headerWrapper{display:inline-flex;flex-wrap:nowrap}.iho-table__boldCell{font-weight:700}.iho-table .vxe-table .vxe-table--header-wrapper,.iho-table .vxe-table.vxe-table--render-default{color:#212121}.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-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.iho-table .vxe-table--render-default .vxe-body--column.col--selected{box-shadow:inset 0 0 0 2px var(--c-primary-color)}.iho-table .vxe-table--render-default .vxe-body--row.row--hover,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--stripe{background-color:var(--c-hover-color)}.iho-table .vxe-table--render-default .vxe-body--row.row--checked,.iho-table .vxe-table--render-default .vxe-body--row.row--current,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--checked,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--current,.iho-table .vxe-table--render-default .vxe-body--row.row--hover.row--radio,.iho-table .vxe-table--render-default .vxe-body--row.row--radio{background-color:var(--c-primary-color-opacity2);text-shadow:0 0 1px}.iho-table .vxe-body--expanded-column,.iho-table .vxe-table--border-line{border-color:var(--c-border-color)!important}.iho-table .vxe-table--footer-wrapper{border-top-color:var(--c-border-color)!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(var(--c-border-color),var(--c-border-color))!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(var(--c-border-color),var(--c-border-color)),linear-gradient(var(--c-border-color),var(--c-border-color))!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(var(--c-border-color),var(--c-border-color))!important}.iho-table .vxe-table--header-border-line{border-bottom-color:var(--c-border-color)!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 .is--filter-active .vxe-cell--filter .vxe-filter--btn{color:var(--c-primary-color)}.iho-table__filterIcon{cursor:pointer;padding:0 4px}.iho-table__filterIcon:hover{opacity:.7}.iho-table__filterIcon.is-active{color:var(--c-primary-color)}.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:var(--c-primary-color)}.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 .variable-height .vxe-cell,.iho-table .variable-height .vxe-cell--tree-node,.iho-table .variable-height .vxe-tree-cell{max-height:fit-content!important;white-space:break-spaces!important}.iho-table__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar,.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.iho-table__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.iho-table__selectMenu .v-vl-items{min-width:100%;width:max-content}.iho-table__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.iho-table .is--checked.vxe-checkbox,.iho-table .is--checked.vxe-checkbox .vxe-checkbox--icon,.iho-table .is--checked.vxe-custom--option,.iho-table .is--checked.vxe-custom--option .vxe-checkbox--icon,.iho-table .is--checked.vxe-export--panel-column-option,.iho-table .is--checked.vxe-export--panel-column-option .vxe-checkbox--icon,.iho-table .is--checked.vxe-table--filter-option,.iho-table .is--checked.vxe-table--filter-option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-checkbox,.iho-table .is--indeterminate.vxe-checkbox .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-custom--option,.iho-table .is--indeterminate.vxe-custom--option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-export--panel-column-option,.iho-table .is--indeterminate.vxe-export--panel-column-option .vxe-checkbox--icon,.iho-table .is--indeterminate.vxe-table--filter-option,.iho-table .is--indeterminate.vxe-table--filter-option .vxe-checkbox--icon,.iho-table .vxe-checkbox:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-custom--option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-export--panel-column-option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-table .vxe-sort--asc-btn.sort--active,.iho-table .vxe-table .vxe-sort--desc-btn.sort--active,.iho-table .vxe-table--filter-option:not(.is--disabled):hover .vxe-checkbox--icon,.iho-table .vxe-table--render-default .is--checked.vxe-cell--checkbox,.iho-table .vxe-table--render-default .is--checked.vxe-cell--checkbox .vxe-checkbox--icon,.iho-table .vxe-table--render-default .is--indeterminate.vxe-cell--checkbox,.iho-table .vxe-table--render-default .is--indeterminate.vxe-cell--checkbox .vxe-checkbox--icon,.iho-table .vxe-table--render-default .vxe-cell--checkbox:not(.is--disabled):hover .vxe-checkbox--icon{color:var(--c-primary-color)}.iho-table .vxe-header--column [annotation-hover-show=true]{visibility:hidden}.iho-table .vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}@font-face{font-family:iho-table-iconfont;src:url(iconfont.ttf) format("truetype")}.iho-table .iho-table--iconfont{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:iho-table-iconfont!important;font-size:15px;font-style:normal}.iho-table .iho-table-icon-filter{display:inline-block;font-size:17px;transform:translateY(-1px);vertical-align:middle}.iho-table .iho-table-icon-filter:before{content:"\c2001"}.iho-table .iho-table-icon-date-filter{display:inline-block;transform:translateY(-1px)}.iho-table .iho-table-icon-date-filter:before{content:"\c2002"}.iho-table .row--custom{background-color:var(--row-background-color)}