cnhis-design-vue 3.1.57-beta.27 → 3.1.57-beta.32

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 (38) hide show
  1. package/es/components/calendar/index.d.ts +13 -12
  2. package/es/components/calendar/src/Calendar.vue.d.ts +13 -12
  3. package/es/components/calendar/src/Calendar.vue2.js +1 -1
  4. package/es/components/callback/src/components/render/popupMaps.d.ts +1 -0
  5. package/es/components/drag-scroll/index.d.ts +2 -0
  6. package/es/components/drag-scroll/index.js +1 -0
  7. package/es/components/drag-scroll/src/index.d.ts +4 -0
  8. package/es/components/drag-scroll/src/index.js +1 -0
  9. package/es/components/drag-scroll/src/types.d.ts +19 -0
  10. package/es/components/drag-scroll/src/types.js +1 -0
  11. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
  12. package/es/components/iho-table/index.d.ts +1 -0
  13. package/es/components/iho-table/src/IhoTable.vue.d.ts +1 -0
  14. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  15. package/es/components/iho-table/src/plugins/dragScrollPlugin.js +1 -1
  16. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +1 -1
  17. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue2.js +1 -1
  18. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/index.js +1 -1
  19. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +1 -1
  20. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +1 -1
  21. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  22. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  23. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/index.js +1 -1
  24. package/es/components/iho-table/src/plugins/varialbleHeightPlugin.js +1 -1
  25. package/es/components/iho-table/src/plugins/verticalTablePlugin/constants.d.ts +1 -0
  26. package/es/components/iho-table/src/plugins/verticalTablePlugin/constants.js +1 -0
  27. package/es/components/iho-table/src/plugins/verticalTablePlugin/index.js +1 -1
  28. package/es/components/iho-table/src/plugins/verticalTablePlugin/utils.js +1 -1
  29. package/es/components/iho-table/src/types/index.d.ts +2 -1
  30. package/es/components/iho-table/src/utils/index.d.ts +4 -7
  31. package/es/components/iho-table/src/utils/index.js +1 -1
  32. package/es/components/index.d.ts +1 -0
  33. package/es/components/index.js +1 -1
  34. package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -1
  35. package/es/shared/package.json.js +1 -1
  36. package/es/shared/utils/index.d.ts +2 -1
  37. package/es/shared/utils/index.js +1 -1
  38. package/package.json +2 -2
@@ -2,14 +2,14 @@
2
2
  import { SFCWithInstall } from '../../shared/types';
3
3
  export * from './src/types';
4
4
  declare const Calendar: SFCWithInstall<import("vue").DefineComponent<{
5
- date: {
6
- type: DateConstructor;
7
- default: Date;
8
- };
9
5
  showDateNavigation: {
10
6
  type: BooleanConstructor;
11
7
  default: boolean;
12
8
  };
9
+ date: {
10
+ type: DateConstructor;
11
+ default: Date;
12
+ };
13
13
  events: {
14
14
  type: import("vue").PropType<import("../../shared/types").AnyObject[]>;
15
15
  default: () => never[];
@@ -36,14 +36,14 @@ declare const Calendar: SFCWithInstall<import("vue").DefineComponent<{
36
36
  dayNames: string[];
37
37
  cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
38
38
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
39
- date: {
40
- type: DateConstructor;
41
- default: Date;
42
- };
43
39
  showDateNavigation: {
44
40
  type: BooleanConstructor;
45
41
  default: boolean;
46
42
  };
43
+ date: {
44
+ type: DateConstructor;
45
+ default: Date;
46
+ };
47
47
  events: {
48
48
  type: import("vue").PropType<import("../../shared/types").AnyObject[]>;
49
49
  default: () => never[];
@@ -224,20 +224,21 @@ declare const Calendar: SFCWithInstall<import("vue").DefineComponent<{
224
224
  [key: string]: any;
225
225
  }>;
226
226
  update: (before: () => void) => Promise<void>;
227
+ gotoDate: (date: Date) => void;
227
228
  NIcon: any;
228
229
  ChevronBackOutline: 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<{}>>, {}>;
229
230
  ChevronForwardOutline: 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<{}>>, {}>;
230
231
  FullCalendar: any;
231
232
  isSameDay: typeof import("date-fns").isSameDay;
232
233
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange")[], "select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
233
- date: {
234
- type: DateConstructor;
235
- default: Date;
236
- };
237
234
  showDateNavigation: {
238
235
  type: BooleanConstructor;
239
236
  default: boolean;
240
237
  };
238
+ date: {
239
+ type: DateConstructor;
240
+ default: Date;
241
+ };
241
242
  events: {
242
243
  type: import("vue").PropType<import("../../shared/types").AnyObject[]>;
243
244
  default: () => never[];
@@ -3,14 +3,14 @@ import { isSameDay } from 'date-fns';
3
3
  import { IDayItem } from './types';
4
4
  import { AnyObject } from '../../../shared/types';
5
5
  declare const _default: import("vue").DefineComponent<{
6
- date: {
7
- type: DateConstructor;
8
- default: Date;
9
- };
10
6
  showDateNavigation: {
11
7
  type: BooleanConstructor;
12
8
  default: boolean;
13
9
  };
10
+ date: {
11
+ type: DateConstructor;
12
+ default: Date;
13
+ };
14
14
  events: {
15
15
  type: PropType<AnyObject[]>;
16
16
  default: () => never[];
@@ -33,14 +33,14 @@ declare const _default: import("vue").DefineComponent<{
33
33
  dayNames: string[];
34
34
  cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
35
35
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
36
- date: {
37
- type: DateConstructor;
38
- default: Date;
39
- };
40
36
  showDateNavigation: {
41
37
  type: BooleanConstructor;
42
38
  default: boolean;
43
39
  };
40
+ date: {
41
+ type: DateConstructor;
42
+ default: Date;
43
+ };
44
44
  events: {
45
45
  type: PropType<AnyObject[]>;
46
46
  default: () => never[];
@@ -217,20 +217,21 @@ declare const _default: import("vue").DefineComponent<{
217
217
  [key: string]: any;
218
218
  }>;
219
219
  update: (before: () => void) => Promise<void>;
220
+ gotoDate: (date: Date) => void;
220
221
  NIcon: any;
221
222
  ChevronBackOutline: 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<{}>>, {}>;
222
223
  ChevronForwardOutline: 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<{}>>, {}>;
223
224
  FullCalendar: any;
224
225
  isSameDay: typeof isSameDay;
225
226
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange")[], "select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
226
- date: {
227
- type: DateConstructor;
228
- default: Date;
229
- };
230
227
  showDateNavigation: {
231
228
  type: BooleanConstructor;
232
229
  default: boolean;
233
230
  };
231
+ date: {
232
+ type: DateConstructor;
233
+ default: Date;
234
+ };
234
235
  events: {
235
236
  type: PropType<AnyObject[]>;
236
237
  default: () => never[];
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,reactive as n,createVNode as a,createTextVNode as o,watch as r,openBlock as s,createElementBlock as i,normalizeStyle as l,unref as d,createElementVNode as c,Fragment as u,renderList as m,normalizeClass as p,toDisplayString as v,createCommentVNode as y,createBlock as f,nextTick as h}from"vue";import{NIcon as C}from"naive-ui";import{ChevronBackOutline as g,ChevronForwardOutline as M}from"@vicons/ionicons5";import D from"@fullcalendar/vue3";import k from"@fullcalendar/resource-timegrid";import w from"@fullcalendar/scrollgrid";import b from"@fullcalendar/interaction";import{useTheme as H}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import{format as R,isSameDay as x,toDate as L,startOfMonth as j,endOfMonth as N,eachDayOfInterval as z,getDay as O,isSameMonth as S,startOfDay as T,endOfDay as F}from"date-fns";import{isFunction as I,cloneDeep as _}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";const A={key:0,class:"select-day-wrapper"},E={class:"day-wrapper"},G=["onClick"];var P=e({__name:"Calendar",props:{date:{type:Date,default:new Date},showDateNavigation:{type:Boolean,default:!0},events:{type:Array,default:()=>[]},resources:{type:Array,default:()=>[]},eventContentRender:{type:Function},resourceLabelContentRender:{type:Function},options:{type:Object,default:()=>({})}},emits:["select","eventDrag","eventClick","eventResize","dateChange"],setup(e,{emit:P}){const B=e,K=["周一","周二","周三","周四","周五","周六","周日"],V=H(),W=t(),q=t(new Date),J=t([]),Q=t(!1),U=n({schedulerLicenseKey:"GPL-My-Project-Is-Open-Source",plugins:[k,w,b],initialView:"resourceTimeGridDay",initialDate:R(q.value,"yyyy-MM-dd"),headerToolbar:{left:"",center:"",right:""},allDaySlot:!1,slotLabelInterval:{minute:30},slotLabelFormat:{hour:"2-digit",minute:"2-digit",meridiem:!1,hour12:!1},slotLabelContent:e=>R(e.date,"HH:mm"),nowIndicator:!0,dayMaxEvents:!0,eventOverlap:!1,slotMinTime:{hour:0},slotMaxTime:{hour:24},dayMinWidth:100,expandRows:!0,droppable:!0,editable:!0,selectable:!0,refetchResourcesOnNavigate:!0,resources:[],events:[],dayCellClassNames:["custom-day-cell"],eventClassNames:["custom-event"],eventContent:function(e){const{start:t,end:n,title:r}=e.event;return I(B.eventContentRender)?B.eventContentRender(e):[a("p",{class:"text"},[R(t,"HH:mm"),o("-"),R(n,"HH:mm")]),a("p",{class:"text"},[r])]},resourceLabelContent:function(e){const{title:t}=e.resource;return I(B.resourceLabelContentRender)?B.resourceLabelContentRender(e):a("span",null,[t])},select:(...e)=>P("select",...e),eventDrop:(...e)=>P("eventDrag",...e),eventResize:(...e)=>P("eventResize",...e),eventClick:(...e)=>P("eventClick",...e)});function X(e){const t=L(q.value);"prev"===e?t.setMonth(t.getMonth()-1):t.setMonth(t.getMonth()+1),Y(t),P("dateChange",Z())}function Y(e){const t=j(e),n=N(e),a=z({start:t,end:n});J.value=a.map((e=>({date:e,formatDate:R(e,"yyyy-MM-dd HH:mm:ss"),day:e.getDate(),week:K[O(e)]}))),q.value=S(e,new Date)?new Date:J.value[0].date}function Z(){const e=T(q.value),t=F(q.value);return{start:e,end:t,startStr:R(e,"yyyy-MM-dd HH:mm:ss"),endStr:R(t,"yyyy-MM-dd HH:mm:ss")}}return r((()=>q.value),(e=>{!async function(e){Q.value=!1,await h(),e(),Q.value=!0}((()=>{U.initialDate=R(e,"yyyy-MM-dd")}))})),r((()=>B.date),(e=>{Y(e)}),{immediate:!0}),r((()=>B.events),(e=>{U.events=_(e).map((e=>({...e,resourceEditable:!1})))}),{deep:!0,immediate:!0}),r((()=>B.resources),(e=>{U.resources=_(e)}),{deep:!0,immediate:!0}),r((()=>B.options),(()=>{Object.assign(U,B.options)}),{deep:!0,immediate:!0}),(t,n)=>(s(),i("div",{class:"c-calendar",style:l({...d(V),"--nav-height":e.showDateNavigation?"70px":"0px"})},[e.showDateNavigation?(s(),i("div",A,[a(d(C),{size:"20",component:d(g),onClick:n[0]||(n[0]=()=>X("prev"))},null,8,["component"]),c("div",E,[(s(!0),i(u,null,m(J.value,((e,t)=>(s(),i("div",{class:p(["day",{"day--active":d(x)(e.date,q.value)}]),key:t,onClick:()=>async function(e){q.value=e.date,P("dateChange",Z())}(e)},[c("p",null,v(e.day),1),c("span",null,v(e.week),1)],10,G)))),128))]),a(d(C),{size:"20",component:d(M),onClick:n[1]||(n[1]=()=>X("next"))},null,8,["component"])])):y("v-if",!0),Q.value?(s(),f(d(D),{key:1,ref_key:"calendarRef",ref:W,options:U},null,8,["options"])):y("v-if",!0)],4))}});export{P as default};
1
+ import{defineComponent as e,ref as t,reactive as n,createVNode as a,createTextVNode as o,watch as r,openBlock as s,createElementBlock as i,normalizeStyle as l,unref as d,createElementVNode as u,Fragment as c,renderList as m,normalizeClass as p,toDisplayString as v,createCommentVNode as y,createBlock as f,nextTick as h}from"vue";import{NIcon as C}from"naive-ui";import{ChevronBackOutline as g,ChevronForwardOutline as M}from"@vicons/ionicons5";import D from"@fullcalendar/vue3";import k from"@fullcalendar/resource-timegrid";import w from"@fullcalendar/scrollgrid";import b from"@fullcalendar/interaction";import{useTheme as H}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import{format as R,isSameDay as x,toDate as L,startOfMonth as j,endOfMonth as N,eachDayOfInterval as z,getDay as O,isSameMonth as S,startOfDay as T,endOfDay as F}from"date-fns";import{isFunction as I,cloneDeep as _}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";const A={key:0,class:"select-day-wrapper"},E={class:"day-wrapper"},G=["onClick"];var P=e({__name:"Calendar",props:{showDateNavigation:{type:Boolean,default:!0},date:{type:Date,default:new Date},events:{type:Array,default:()=>[]},resources:{type:Array,default:()=>[]},eventContentRender:{type:Function},resourceLabelContentRender:{type:Function},options:{type:Object,default:()=>({})}},emits:["select","eventDrag","eventClick","eventResize","dateChange"],setup(e,{expose:P,emit:B}){const K=e,V=["周一","周二","周三","周四","周五","周六","周日"],W=H(),q=t(),J=t(new Date),Q=t([]),U=t(!1),X=n({schedulerLicenseKey:"GPL-My-Project-Is-Open-Source",plugins:[k,w,b],initialView:"resourceTimeGridDay",initialDate:R(J.value,"yyyy-MM-dd"),headerToolbar:{left:"",center:"",right:""},allDaySlot:!1,slotLabelInterval:{minute:30},slotLabelFormat:{hour:"2-digit",minute:"2-digit",meridiem:!1,hour12:!1},slotLabelContent:e=>R(e.date,"HH:mm"),nowIndicator:!0,dayMaxEvents:!0,eventOverlap:!1,slotMinTime:{hour:0},slotMaxTime:{hour:24},dayMinWidth:100,expandRows:!0,droppable:!0,editable:!0,selectable:!0,refetchResourcesOnNavigate:!0,resources:[],events:[],dayCellClassNames:["custom-day-cell"],eventClassNames:["custom-event"],eventContent:function(e){const{start:t,end:n,title:r}=e.event;return I(K.eventContentRender)?K.eventContentRender(e):[a("p",{class:"text"},[R(t,"HH:mm"),o("-"),R(n,"HH:mm")]),a("p",{class:"text"},[r])]},resourceLabelContent:function(e){const{title:t}=e.resource;return I(K.resourceLabelContentRender)?K.resourceLabelContentRender(e):a("span",null,[t])},select:(...e)=>B("select",...e),eventDrop:(...e)=>B("eventDrag",...e),eventResize:(...e)=>B("eventResize",...e),eventClick:(...e)=>B("eventClick",...e)});function Y(e){const t=L(J.value);"prev"===e?t.setMonth(t.getMonth()-1):t.setMonth(t.getMonth()+1),Z(t),B("dateChange",$())}function Z(e){const t=j(e),n=N(e),a=z({start:t,end:n});Q.value=a.map((e=>({date:e,formatDate:R(e,"yyyy-MM-dd HH:mm:ss"),day:e.getDate(),week:V[O(e)]}))),J.value=S(e,new Date)?new Date:Q.value[0].date}function $(){const e=T(J.value),t=F(J.value);return{start:e,end:t,startStr:R(e,"yyyy-MM-dd HH:mm:ss"),endStr:R(t,"yyyy-MM-dd HH:mm:ss")}}return r((()=>J.value),(e=>{!async function(e){U.value=!1,await h(),e(),U.value=!0}((()=>{X.initialDate=R(e,"yyyy-MM-dd")}))})),r((()=>K.date),(e=>{Z(e)}),{immediate:!0}),r((()=>K.events),(e=>{X.events=_(e).map((e=>({...e,resourceEditable:!1})))}),{deep:!0,immediate:!0}),r((()=>K.resources),(e=>{X.resources=_(e)}),{deep:!0,immediate:!0}),r((()=>K.options),(()=>{Object.assign(X,K.options)}),{deep:!0,immediate:!0}),P({gotoDate:function(e){J.value=e}}),(t,n)=>(s(),i("div",{class:"c-calendar",style:l({...d(W),"--nav-height":e.showDateNavigation?"70px":"0px"})},[e.showDateNavigation?(s(),i("div",A,[a(d(C),{size:"20",component:d(g),onClick:n[0]||(n[0]=()=>Y("prev"))},null,8,["component"]),u("div",E,[(s(!0),i(c,null,m(Q.value,((e,t)=>(s(),i("div",{class:p(["day",{"day--active":d(x)(e.date,J.value)}]),key:t,onClick:()=>async function(e){J.value=e.date,B("dateChange",$())}(e)},[u("p",null,v(e.day),1),u("span",null,v(e.week),1)],10,G)))),128))]),a(d(C),{size:"20",component:d(M),onClick:n[1]||(n[1]=()=>Y("next"))},null,8,["component"])])):y("v-if",!0),U.value?(s(),f(d(D),{key:1,ref_key:"calendarRef",ref:q,options:X},null,8,["options"])):y("v-if",!0)],4))}});export{P as default};
@@ -5592,6 +5592,7 @@ export declare const CallbackMaps: Map<string, {
5592
5592
  footer: any;
5593
5593
  slotPropertiesPicker: (args: import("../../../..").AnyObject) => Pick<import("../../../..").AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
5594
5594
  useVersion: typeof import("../../../..").useVersion;
5595
+ NConfigProvider: any;
5595
5596
  }, 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" | "pageChange")[], "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" | "pageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
5596
5597
  tableConfig: {
5597
5598
  type: import("vue").PropType<import("../../../../../components/iho-table").IhoTableConfig>;
@@ -0,0 +1,2 @@
1
+ export * from './src';
2
+ export * from './src/types';
@@ -0,0 +1 @@
1
+ export{DragScroll,useDragScroll}from"./src/index.js";
@@ -0,0 +1,4 @@
1
+ import { Directive } from 'vue';
2
+ import { DragScrollConfig } from '../../../components/drag-scroll';
3
+ export declare function useDragScroll(uuid: any, config: DragScrollConfig): () => void;
4
+ export declare const DragScroll: Directive<HTMLElement, Partial<DragScrollConfig>>;
@@ -0,0 +1 @@
1
+ import{findAncestor as e,isHTMLElement as t}from"../../../shared/utils/index.js";import{useThrottleFn as r}from"@vueuse/core";import{isFunction as s,isObject as l,isString as o,flow as n}from"lodash-es";import{unref as a}from"vue";const i={events:new Map,regist(e,t,r){window.addEventListener(t,r);const s=this.events.get(e)||[];s.push((()=>window.removeEventListener(t,r))),this.events.set(e,s)},stopper(e){var t;n(null!=(t=this.events.get(e))?t:[])(),this.events.delete(e)}};class c{constructor(){this.queue=[],this.lock=!1}add(e){this.queue.push(e),this.execute()}async execute(){if(!this.lock){this.lock=!0;try{for(;this.queue.length;)await this.queue.shift()()}finally{this.lock=!1}}}clear(){this.queue.length=0}}function u(t,o){var n;i.stopper(t);let a=0,u=0,g=0,d=0,p=!1;const f=new c;return i.regist(t,"mousemove",r((t=>{var r;if(!p){const r=h(o.dragEle);if(!r)return;if(!1!==o.changeCursor){const l=t.target;if(!e(l,(e=>e===r)))return;const n=!s(o.isDraggableEle)||o.isDraggableEle(t);r.style.cursor=n?"grab":"default"}return}const{pageX:l,pageY:n}=t,i=l-a,c=n-u;f.add((()=>{var e;s(o.setScrollState)?o.setScrollState(o.scrollTarget,{scrollLeft:Math.max(0,g-i),scrollTop:Math.max(0,d-c)}):null==(e=h(o.scrollTarget))||e.scrollTo(g-i,d-c)})),window.getSelection&&(null==(r=window.getSelection())||r.removeAllRanges())}),null!=(n=o.duration)?n:50)),i.regist(t,"mousedown",(t=>{const r=h(o.dragEle);if(!r)return;const n=t.target;if(!e(n,(e=>e===r)))return;if(!(!s(o.isDraggableEle)||o.isDraggableEle(t)))return;const i=s(o.getScrollState)?o.getScrollState(o.scrollTarget):h(o.scrollTarget);l(i)&&(a=t.pageX,u=t.pageY,g=i.scrollLeft,d=i.scrollTop,p=!0)})),i.regist(t,"mouseup",(()=>{p=!1,f.clear()})),()=>i.stopper(t)}const g={mounted(e,t){u(e,Object.assign({dragEle:e,scrollTarget:e},t.value))},unmounted(e){i.stopper(e)}};function h(e){return e=a(e),o(e)?document.querySelector(e):t(e)?e:l(e)?Reflect.get(e,"$el"):null}export{g as DragScroll,u as useDragScroll};
@@ -0,0 +1,19 @@
1
+ import { MaybeRef } from '@vueuse/shared';
2
+ import { Component } from 'vue';
3
+ declare type TargetType = MaybeRef<HTMLElement | string | Component>;
4
+ export declare type DragScrollConfig = Partial<{
5
+ dragEle: TargetType;
6
+ changeCursor: boolean;
7
+ scrollTarget: TargetType;
8
+ duration: number;
9
+ isDraggableEle: (event: MouseEvent) => boolean;
10
+ getScrollState: (target: TargetType | undefined) => {
11
+ scrollTop: number;
12
+ scrollLeft: number;
13
+ };
14
+ setScrollState: (target: TargetType | undefined, state: {
15
+ scrollTop: number;
16
+ scrollLeft: number;
17
+ }) => void;
18
+ }>;
19
+ export {};
@@ -1 +1 @@
1
- import{fabric as t}from"../../../../../shared/utils/fabricjs/index.js";import{drawTextGroup as e,defaultRectStyle as i,drawTextAndIconGroup as o,drawText as n,defaultTextStyle as r,defaultStyle as l}from"../useDraw.js";import{useBirthProcessCumputedPoint as s}from"../useCumputedPoint.js";import"../useEvent.js";import{drawScaleNumber as a}from"../useScaleColumn.js";import{useCommon as u}from"../useCommon.js";import"vue";import{getScaleNumberList as d}from"../../utils/index.js";import{cloneDeep as c}from"lodash-es";import"date-fns";import"../temperature/useShadow.js";import"naive-ui";import"@vueuse/core";function p(p,h,f,m,g,v,y,k){const{getYValue:w,getXValue:j}=s(h),{getEqualXTypes:x,handleAddPrevent:b,isGridLimit:W}=u(p,f,h),{originY:X,endY:C,borderStyle:E,left:S,itemList:Y,scaleValues:K,originX:L,endX:V,yCellHeight:G,markHeight:H,canvasWidth:N,canvasHeight:T,xCellWidth:M}=h;!function(){if(!S)return;const{title:t,titleWidth:i,titleStyle:o}=S,n=e({width:i,height:C-X+H,...E},{value:t.split("").join("\n"),...o||{}},{left:0,top:X},!0);p.value.add(n)}(),K.forEach(((e,i)=>{var o,s;const u="left"===e.layout?L-5:V+5,{range:c,spaceValue:h,title:f,unit:m,titleStyle:g,spaceGridNumber:v=1,showNumber:y,showMaxMinNumber:k}=e,w=[],j=d(c,h),x=j.length;j.forEach(((t,i)=>{const o=0===i?C-5:C-i*G*v;!y||(0===i||i===x-1)&&!k||w.push(a(String(t),{...e,position:e.layout},u,o))}));const b=f&&n(["left"===e.layout?S.width/2:V+(N-V)/2,(null!=(s=null==(o=w.at(-1))?void 0:o.top)?s:330)-G],{value:`${f}${m?"\n"+m:""}`,...r,...g}),W=new t.Group([...w,...b?[b]:[]],{objectCaching:!1,...l});p.value.add(W),W.sendToBack()})),function(){const e=new t.Rect({width:L-S.titleWidth,height:C-X+H,left:S.titleWidth,top:X,...i,originX:"left",originY:"top",...E});p.value.add(e);const n=c(Y),r=c(S.externalIconList||[]).map((t=>({...t,isExternal:!0})));let l=C;const s=S.titleWidth+15;r.concat(n.reverse()).forEach((t=>{l-=10;const e=t.title,{text:i,icon:n}=o(e,t,{text:{left:s,top:l},icon:{leftX:s,topY:l,...t.isExternal?{evented:!1,selectable:!1}:{},origin:{linkKey:t.linkKey}}});var r;l-=i.height||30,(r=n).on("moving",(()=>{r.set("originX","center"),W(r)?(g(r),v(r)):m.show=!1})),r.on("mouseup:before",(t=>{if(m.show=!1,0===t.e.button&&W(r)){const t=r.origin.linkKey||r.origin.key;if(x(k(),r.left,"key",2*M).includes(t))b("repeat");else{const e={data:{time:j(r.left),value:w(r.origin.type,r.top),...r.origin.linkKey?{key:r.origin.key}:{}},...r.origin};f("add",e),y({...e,key:t})}}!function(t){t.setCoords().set({originX:"left",left:t.originLeft,top:t.originTop})}(r)})),p.value.add(i,n)}))}(),p.value.add(new t.Rect({left:0,top:0,width:N-E.strokeWidth,height:T-E.strokeWidth,fill:"transparent",...E}))}export{p as useLeft};
1
+ import{fabric as t}from"../../../../../shared/utils/fabricjs/index.js";import{drawTextGroup as e,defaultRectStyle as i,drawTextAndIconGroup as o,drawText as n,defaultTextStyle as r,defaultStyle as l}from"../useDraw.js";import{useBirthProcessCumputedPoint as a}from"../useCumputedPoint.js";import"../useEvent.js";import{drawScaleNumber as s}from"../useScaleColumn.js";import{useCommon as u}from"../useCommon.js";import"vue";import{getScaleNumberList as d}from"../../utils/index.js";import{cloneDeep as c}from"lodash-es";import"date-fns";import"../temperature/useShadow.js";import"naive-ui";import"@vueuse/core";function f(f,p,g,h,m,v,y,k){const{getYValue:w,getXValue:j}=a(p),{getEqualXTypes:x,handleAddPrevent:b,isGridLimit:X}=u(f,g,p),{originY:W,endY:C,borderStyle:E,left:S,itemList:Y,scaleValues:K,originX:L,endX:M,yCellHeight:N,markHeight:V,canvasWidth:G,canvasHeight:H,xCellWidth:T}=p;!function(){if(!S)return;const{title:t,titleWidth:i,titleStyle:o}=S,n=e({width:i,height:C-W+V,...E},{value:t.split("").join("\n"),...o||{}},{left:0,top:W},!0);f.value.add(n)}(),K.forEach(((e,i)=>{var o,a;const{range:u,spaceValue:c,title:p,unit:g,titleStyle:h,spaceGridNumber:m=1,showNumber:v,showMaxMinNumber:y,titleMargin:k=[5,30],margin:w=5}=e,j="left"===e.layout?L-w:M+w,x=[],b=d(u,c),X=b.length;b.forEach(((t,i)=>{const o=0===i?C-5:C-i*N*m;!v||(0===i||i===X-1)&&!y||x.push(s(String(t),{...e,position:e.layout},j,o))}));const W="left"===e.layout?"right":"left",E=p&&n(["left"===e.layout?L-k[0]:M+k[0],(null!=(a=null==(o=x.at(-1))?void 0:o.top)?a:330)-N-k[1]],{value:`${p}${g?"\n"+g:""}`,...r,...h,textAlign:W,originX:W,originY:"bottom"}),S=new t.Group([...x,...E?[E]:[]],{objectCaching:!1,...l});f.value.add(S),S.sendToBack()})),function(){const e=new t.Rect({width:L-S.titleWidth,height:C-W+V,left:S.titleWidth,top:W,...i,originX:"left",originY:"top",...E});f.value.add(e);const n=c(Y),r=c(S.externalIconList||[]).map((t=>({...t,isExternal:!0}))),{projectNameMargin:l=[5,30],titleWidth:a=20}=S;let s=C+V-l[0];const u=a+l[1];r.concat(n.reverse()).forEach((t=>{s-=10;const e=t.title,{text:i,icon:n}=o(e,t,{text:{left:u,top:s},icon:{leftX:u,topY:s,originX:"center",...t.isExternal?{evented:!1,selectable:!1}:{},origin:{linkKey:t.linkKey}}});var r;s-=i.height||30,n.set("left",n.left+n.width/2),(r=n).on("moving",(()=>{r.set("originX","center"),X(r)?(m(r),v(r)):h.show=!1})),r.on("mouseup:before",(t=>{if(h.show=!1,0===t.e.button&&X(r)){const t=r.origin.linkKey||r.origin.key;if(x(k(),r.left,"key",2*T).includes(t))b("repeat");else{const e={data:{time:j(r.left),value:w(r.origin.type,r.top),...r.origin.linkKey?{key:r.origin.key}:{}},...r.origin};g("add",e),y({...e,key:t})}}!function(t){t.setCoords().set({originX:"left",left:t.originLeft,top:t.originTop})}(r)})),f.value.add(i,n)}))}(),f.value.add(new t.Rect({left:0,top:0,width:G-E.strokeWidth,height:H-E.strokeWidth,fill:"transparent",...E}))}export{f as useLeft};
@@ -4711,6 +4711,7 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4711
4711
  footer: any;
4712
4712
  slotPropertiesPicker: (args: import("../../shared/types").AnyObject) => Pick<import("../../shared/types").AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4713
4713
  useVersion: typeof import("..").useVersion;
4714
+ NConfigProvider: any;
4714
4715
  }, 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" | "pageChange")[], "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" | "pageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4715
4716
  tableConfig: {
4716
4717
  type: import("vue").PropType<import("../../components/iho-table/src/types").IhoTableConfig>;
@@ -4712,6 +4712,7 @@ declare const _default: import("vue").DefineComponent<{
4712
4712
  footer: any;
4713
4713
  slotPropertiesPicker: (args: AnyObject) => Pick<AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4714
4714
  useVersion: typeof useVersion;
4715
+ NConfigProvider: any;
4715
4716
  }, 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" | "pageChange")[], "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" | "pageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4716
4717
  tableConfig: {
4717
4718
  type: PropType<IhoTableConfig>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,provide as o,ref as a,toRaw as l,watch as n,resolveComponent as s,openBlock as r,createElementBlock as i,mergeProps as u,unref as d,createBlock as c,resolveDynamicComponent as f,createElementVNode as m,normalizeStyle as p,createVNode as v,createSlots as b,renderList as h,withCtx as g,createCommentVNode as x,renderSlot as k,normalizeProps as y,guardReactiveProps as C}from"vue";import{useTheme as D}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as j}from"@vueuse/core";import"date-fns";import{isString as $,isEqualWith as I,isFunction as w,pick as q}from"lodash-es";import{useFormAsyncQueue as R,presetRequestHandler as H}from"../../../shared/hooks/useFormRequest/index.js";import{promiseTimeout as T}from"@vueuse/shared";import{widthAppend as _,uuidGenerator as A}from"../../../shared/utils/index.js";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import"naive-ui";import{useVersion as L}from"../../../shared/hooks/useVersion.js";import{VxeTableEventNameList as S,InjectionIhoTableEmits as F,InjectionTableAsyncQueue as O,InjectionIhoTableAnnotation as B,InjectionIhoTableUUID as E,InjectionIhoTableInstance as P,InjectionIhoTableConfig as N,InjectionIhoTableFieldList as V,InjectionIhoTableHandler as W}from"./constants/index.js";import{createTableHooks as z,applyTableConfigHooks as G,applyTableFieldHooks as J,createTableEventHandlers as K,createDomInsertComponent as M,createDataTransfer as Q}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as U}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as X}from"./utils/index.js";const Y=["id"];var Z=e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object},requestInstance:{type:Object},uniqueCacheData:{type:Boolean,default:!1},parallelism:{type:Number,default:3}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...S],setup(e,{expose:S,emit:Z}){var ee,te;const oe=e,ae=D({"--c-border-color":"#d0d0d0","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#e6e6e6","--c-stripe-color":"#f6f6f6"}),le=t((()=>{var e,t;const o=null!=(t=null==(e=oe.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===o?"100%":$(o)&&(o.includes("calc")||o.endsWith("%"))?o:_(o)}})),ne=U(),se=function(e,...t){Z(e,...t);const o=d(ce)[X(e)];w(o)&&o(...t),ne.trigger(e,...t)};o(F,se);const re=R(t((()=>oe.requestInstance)),t((()=>!!oe.uniqueCacheData))).create(oe.parallelism,{beforeRequest:(e,t)=>t,afterRequest:(e,t)=>H(t)});o(O,re);const ie=z();o(B,t((()=>oe.annotation)));const ue=A();o(E,ue);const de=a();o(P,de);const ce=a({uuid:null!=(te=null==(ee=oe.tableConfig)?void 0:ee.uuid)?te:ue});o(N,ce);const fe=j(me,10);function me(){var e,t;ce.value=G(ie,{...oe.tableConfig,uuid:null!=(t=null==(e=oe.tableConfig)?void 0:e.uuid)?t:ue},{$table:de,emits:se,globProps:oe})}const pe=a([]);o(V,pe);const ve=j(be,10);function be(){const e=J(ie,oe.fieldList,ce.value,{$table:de,emits:se,globProps:oe});I(e,l(pe.value),((e,t)=>{if(w(e)&&w(t))return e.toString()===t.toString()}))||(pe.value=e)}const he=Q(ie,ce,de),ge=a([]);async function xe(){var e,t;const o=await he(oe.tableData),a=null==(e=de.value)?void 0:e.getTableData().fullData;if(a){let e=0;if(!(a.some((t=>{var a;if(!(null==(a=de.value)?void 0:a.isInsertByRow(t))){if(t!==o[e])return!0;e++}}))||e!==o.length))return}ge.value=o,null==(t=de.value)||t.recalculate(!0)}const ke={updateTableDataRef:j(xe,10),updateConfigRef:fe,updateFieldListRef:ve};o(W,ke);const ye=K({hooks:ie,config:ce,$table:de,context:ke,emits:se}),Ce=t((()=>({...ce.value,...ye})));let De=!1,je=!1,$e=!1;const Ie=j((()=>{De&&me(),je&&be(),$e&&xe(),De=!1,je=!1,$e=!1}),10);n((()=>oe.tableConfig),(()=>{De=!0,je=!0,$e=!0,Ie()}),{deep:!0}),n((()=>oe.fieldList),(()=>{je=!0,$e=!0,Ie()}),{deep:!0}),n([()=>[...oe.tableData],()=>{var e;return null==(e=oe.tableData)?void 0:e.length}],(()=>{$e=!0,Ie()})),n([()=>oe.tableData,()=>{var e;return null==(e=oe.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=ce.value.treeConfig)?void 0:e.expandAll)&&(await T(11),null==(t=de.value)||t.setAllTreeExpand(!0))})),me(),be(),xe();const{header:we,footer:qe}=M(ie);function Re(e){return q(e,["row","rowIndex","$rowIndex","column","columnIndex","$columnIndex","_columnIndex","checked","disabled","indeterminate"])}return S({$table:de,async loadData(e){var t;null==(t=de.value)||t.loadData(await he(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),reload(){var e,t;null==(e=de.value)||e.loadColumn([]),null==(t=de.value)||t.loadData([]),me(),be(),xe()},...ie.exposeHooks.expose.call({},ce,{$table:de,emits:se})}),ie.setupHooks.setup.call(ce,pe,{$table:de,emits:se}),(e,t)=>{const o=s("vxe-grid");return r(),i("section",u({class:"iho-table",id:d(ue),style:d(ae)},d(L)()),[(r(),c(f(d(we)))),m("section",{style:p(d(le))},[v(o,u({ref_key:"$table",ref:de},d(Ce),{columns:pe.value,data:ge.value}),b({_:2},[h(e.$slots,((t,o)=>({name:o,fn:g((t=>[x(" 实际上所有的vxe-grid插槽都支持 "),k(e.$slots,o,y(C(Re(t))))]))})))]),1040,["columns","data"])],4),(r(),c(f(d(qe))))],16,Y)}}});export{Z as default};
1
+ import{defineComponent as e,computed as t,provide as o,ref as a,toRaw as l,watch as n,resolveComponent as s,openBlock as r,createElementBlock as i,mergeProps as u,unref as c,createBlock as d,resolveDynamicComponent as f,createElementVNode as m,normalizeStyle as p,createVNode as v,withCtx as b,createSlots as h,renderList as g,createCommentVNode as x,renderSlot as k,normalizeProps as y,guardReactiveProps as C}from"vue";import{useTheme as D}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as j}from"@vueuse/core";import"date-fns";import{isString as $,isEqualWith as I,isFunction as w,pick as q}from"lodash-es";import{useFormAsyncQueue as R,presetRequestHandler as H}from"../../../shared/hooks/useFormRequest/index.js";import{promiseTimeout as _}from"@vueuse/shared";import{widthAppend as T,uuidGenerator as A}from"../../../shared/utils/index.js";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NConfigProvider as L}from"naive-ui";import{useVersion as P}from"../../../shared/hooks/useVersion.js";import{VxeTableEventNameList as S,InjectionIhoTableEmits as F,InjectionTableAsyncQueue as O,InjectionIhoTableAnnotation as B,InjectionIhoTableUUID as E,InjectionIhoTableInstance as N,InjectionIhoTableConfig as V,InjectionIhoTableFieldList as W,InjectionIhoTableHandler as z}from"./constants/index.js";import{createTableHooks as G,applyTableConfigHooks as J,applyTableFieldHooks as K,createTableEventHandlers as M,createDomInsertComponent as Q,createDataTransfer as U}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as X}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as Y}from"./utils/index.js";const Z=["id"];var ee=e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object},requestInstance:{type:Object},uniqueCacheData:{type:Boolean,default:!1},parallelism:{type:Number,default:3}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...S],setup(e,{expose:S,emit:ee}){var te,oe;const ae=e,le=D({"--c-border-color":"#d0d0d0","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#e6e6e6","--c-stripe-color":"#f6f6f6"}),ne=t((()=>{var e,t;const o=null!=(t=null==(e=ae.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===o?"100%":$(o)&&(o.includes("calc")||o.endsWith("%"))?o:T(o)}})),se=X(),re=function(e,...t){ee(e,...t);const o=c(fe)[Y(e)];w(o)&&o(...t),se.trigger(e,...t)};o(F,re);const ie=R(t((()=>ae.requestInstance)),t((()=>!!ae.uniqueCacheData))).create(ae.parallelism,{beforeRequest:(e,t)=>t,afterRequest:(e,t)=>H(t)});o(O,ie);const ue=G();o(B,t((()=>ae.annotation)));const ce=A();o(E,ce);const de=a();o(N,de);const fe=a({uuid:null!=(oe=null==(te=ae.tableConfig)?void 0:te.uuid)?oe:ce});o(V,fe);const me=j(pe,10);function pe(){var e,t;fe.value=J(ue,{...ae.tableConfig,uuid:null!=(t=null==(e=ae.tableConfig)?void 0:e.uuid)?t:ce},{$table:de,emits:re,globProps:ae})}const ve=a([]);o(W,ve);const be=j(he,10);function he(){const e=K(ue,ae.fieldList,fe.value,{$table:de,emits:re,globProps:ae});I(e,l(ve.value),((e,t)=>{if(w(e)&&w(t))return e.toString()===t.toString()}))||(ve.value=e)}const ge=U(ue,fe,de),xe=a([]);async function ke(){var e,t;const o=await ge(ae.tableData),a=null==(e=de.value)?void 0:e.getTableData().fullData;if(a){let e=0;if(!(a.some((t=>{var a;if(!(null==(a=de.value)?void 0:a.isInsertByRow(t))){if(t!==o[e])return!0;e++}}))||e!==o.length))return}xe.value=o,null==(t=de.value)||t.recalculate(!0)}const ye={updateTableDataRef:j(ke,10),updateConfigRef:me,updateFieldListRef:be};o(z,ye);const Ce=M({hooks:ue,config:fe,$table:de,context:ye,emits:re}),De=t((()=>({...fe.value,...Ce})));let je=!1,$e=!1,Ie=!1;const we=j((()=>{je&&pe(),$e&&he(),Ie&&ke(),je=!1,$e=!1,Ie=!1}),10);n((()=>ae.tableConfig),(()=>{je=!0,$e=!0,Ie=!0,we()}),{deep:!0}),n((()=>ae.fieldList),(()=>{$e=!0,Ie=!0,we()}),{deep:!0}),n([()=>[...ae.tableData],()=>{var e;return null==(e=ae.tableData)?void 0:e.length}],(()=>{Ie=!0,we()})),n([()=>ae.tableData,()=>{var e;return null==(e=ae.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=fe.value.treeConfig)?void 0:e.expandAll)&&(await _(11),null==(t=de.value)||t.setAllTreeExpand(!0))})),pe(),he(),ke();const{header:qe,footer:Re}=Q(ue);function He(e){return q(e,["row","rowIndex","$rowIndex","column","columnIndex","$columnIndex","_columnIndex","checked","disabled","indeterminate"])}return S({$table:de,async loadData(e){var t;null==(t=de.value)||t.loadData(await ge(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),reload(){var e,t;null==(e=de.value)||e.loadColumn([]),null==(t=de.value)||t.loadData([]),pe(),he(),ke()},...ue.exposeHooks.expose.call({},fe,{$table:de,emits:re,globProps:ae})}),ue.setupHooks.setup.call(fe,ve,{$table:de,emits:re,globProps:ae}),(e,t)=>{const o=s("vxe-grid");return r(),i("section",u({class:"iho-table",id:c(ce),style:c(le)},c(P)()),[(r(),d(f(c(qe)))),m("section",{style:p(c(ne))},[v(c(L),{abstract:"",namespace:"vxe-table--ignore-clear"},{default:b((()=>[v(o,u({ref_key:"$table",ref:de},c(De),{columns:ve.value,data:xe.value}),h({_:2},[g(e.$slots,((t,o)=>({name:o,fn:b((t=>[x(" 实际上所有的vxe-grid插槽都支持 "),k(e.$slots,o,y(C(He(t))))]))})))]),1040,["columns","data"])])),_:3})],4),(r(),d(f(c(Re))))],16,Z)}}});export{ee as default};
@@ -1 +1 @@
1
- import{findAncestor as e}from"../../../../shared/utils/index.js";import{useThrottleFn as t}from"@vueuse/core";import{flow as o}from"lodash-es";import{onBeforeUnmount as s,unref as r}from"vue";import"../../index.js";import{defineTablePlugin as n}from"../hooks/useTablePlugin.js";function u(){const e="dragScrollPlugin";return n({name:e,apply(r){const n={events:new Map,regist(e,t,o){document.body.addEventListener(t,o);const s=this.events.get(e)||[];s.push((()=>document.body.removeEventListener(t,o))),this.events.set(e,s)},stopper(e){var t;o(null!=(t=this.events.get(e))?t:[])(),this.events.delete(e)}};r.configHooks.config.tap(e,((e,{$table:o})=>{if(!1===e.dragScroll||!e.uuid)return e;n.stopper(e.uuid);let s=0,r=0,u=0,l=0,a=!1;const c={queue:[],lock:!1,add(e){this.queue.push(e),this.execute()},async execute(){if(!this.lock){this.lock=!0;try{for(;this.queue.length;)await this.queue.shift()()}finally{this.lock=!1}}},clear(){this.queue=[]}};return n.regist(e.uuid,"mousemove",t((e=>{var t;if(!a){const{bodyEle:t,inEmptyArea:s}=i(e,o);return void(t&&(t.style.cursor=s?"grab":"default"))}const{pageX:n,pageY:p}=e,d=n-s,m=p-r;c.add((()=>o.value.scrollTo(Math.max(0,u-d),Math.max(0,l-m)))),window.getSelection&&(null==(t=window.getSelection())||t.removeAllRanges())}),50)),n.regist(e.uuid,"mousedown",(e=>{const{bodyEle:t,inEmptyArea:n}=i(e,o);if(!t||!n)return;s=e.pageX,r=e.pageY;const{scrollTop:c,scrollLeft:p}=o.value.getScroll();u=p,l=c,a=!0})),n.regist(e.uuid,"mouseup",(()=>{a=!1,c.clear()})),e})),r.setupHooks.setup.tap(e,(e=>{s((()=>e.value.uuid&&n.stopper(e.value.uuid)))}))}})}function i(e,t){const o=e.target,s="TD"===o.tagName||o.classList.contains("vxe-cell"),n=r(t);return n?{target:o,bodyEle:l(o,n),inEmptyArea:s}:{target:o,inEmptyArea:s,bodyEle:null}}function l(t,o){const s=r(o.getRefMaps().refElem);let n=!1,u=!1,i=null;return e(t,(e=>(n||(n=e===s),u||(u=e.classList.contains("vxe-table--body-wrapper"),i=e),n&&u)))?i:null}export{u as dragScrollPlugin};
1
+ import{findAncestor as e}from"../../../../shared/utils/index.js";import{noop as t}from"lodash-es";import{computed as l,unref as r,onBeforeUnmount as o}from"vue";import{useDragScroll as a}from"../../../drag-scroll/src/index.js";import"../../index.js";import{useUUIDMap as s}from"../utils/index.js";import{defineTablePlugin as u}from"../hooks/useTablePlugin.js";function n(){const e="dragScrollPlugin";return u({name:e,apply(u){const{getItemFromUUID:n,setItemFromUUID:m,removeItemFromUUID:c}=s((()=>t),!1);u.configHooks.config.tap(e,((e,{$table:t})=>!1!==e.dragScroll&&e.uuid?(m(e.uuid,a(e.uuid,{dragEle:l((()=>{var e;return r(null==(e=t.value)?void 0:e.getRefMaps().refElem)})),isDraggableEle(e){const{bodyEle:l,inEmptyArea:o}=function(e,t){const l=e.target,o="TD"===l.tagName||l.classList.contains("vxe-cell"),a=r(t);return a?{target:l,bodyEle:i(l,a),inEmptyArea:o}:{target:l,inEmptyArea:o,bodyEle:null}}(e,t);return!!l&&o},getScrollState:()=>t.value.getScroll(),setScrollState:(e,l)=>t.value.scrollTo(l.scrollLeft,l.scrollTop)})),e):e)),u.setupHooks.setup.tap(e,(e=>{o((()=>{var t;e.value.uuid&&(null==(t=n(e.value.uuid))||t(),c(e.value.uuid))}))}))}})}function i(t,l){const o=r(l.getRefMaps().refElem);let a=!1,s=!1,u=null;return e(t,(e=>(a||(a=e===o),s||(s=e.classList.contains("vxe-table--body-wrapper"),u=e),a&&s)))?u:null}export{n as dragScrollPlugin};
@@ -18,7 +18,7 @@ declare const _default: import("vue").DefineComponent<{
18
18
  checkedRef: import("vue").WritableComputedRef<string[]>;
19
19
  checkedCacheRef: import("vue").Ref<string[]>;
20
20
  searchFilterText: import("vue").Ref<string>;
21
- close: () => void;
21
+ close: () => Promise<void>;
22
22
  OPTION_ITEM_HEIGHT: number;
23
23
  viewCapacity: import("vue").ComputedRef<number>;
24
24
  filteredList: import("vue").ComputedRef<import("vxe-table").VxeTableDefines.FilterOption[]>;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,computed as a,ref as t,onDeactivated as u,onMounted as i,toRaw as o,openBlock as r,createElementBlock as n,unref as v,createBlock as c,createCommentVNode as s,createElementVNode as d,createVNode as p,isRef as f,withCtx as h,mergeProps as m,normalizeProps as _,guardReactiveProps as y,Fragment as b,renderList as k,toDisplayString as g,createTextVNode as C,normalizeStyle as L}from"vue";import I from"../../../../../shared/components/CancelRadio/CancelRadio.js";import{keywordMatcher as w,widthAppend as D}from"../../../../../shared/utils/index.js";import{useVirtualList as S}from"@vueuse/core";import{isNumber as x,isString as U,isFunction as F,isEqual as R}from"lodash-es";import{NInput as W,NCheckbox as Y,NSpin as j,NCheckboxGroup as E,NRadioGroup as $,NButtonGroup as O,NButton as P}from"naive-ui";const V={class:"iho-table__filterWrapper"},q={key:1,class:"iho-table__filterCheckAllWrapper"},z={class:"iho-table__filterListItem"},A={class:"iho-table__filterListItem"},H=["title"],M=["title"],B={class:"iho-table__filterListItemContent"},G={class:"iho-table__filterFooter"};var J=e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const J=e,K=l("$xetable"),N=a((()=>{var e;return!!(null==(e=J.payload)?void 0:e.column.filterMultiple)})),Q=a((()=>{var e,l,a;return null!=(a=null==(l=null==(e=J.payload)?void 0:e.column)?void 0:l.filters)?a:[]})),T=a({get:()=>Q.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(!J.payload||!K)return;const l=K.reactData.filterStore.options||[];N.value?(l.forEach((l=>l._checked=e.includes(l.value))),K.checkFilterOptions()):l.forEach((l=>l._checked=l.value===e[0]));const{startIndex:a,endIndex:t}=K.internalData.scrollYStore;if(0===a&&1===t||K.reactData.scrollYLoad)return u();function u(){J.payload.$panel.confirmFilter(new CustomEvent("click"))}K.reactData.scrollYLoad=!0,u(),K.reactData.scrollYLoad=!1}}),X=t([...T.value]),Z=t("");function ee(){K&&(K.reactData.filterStore.visible=!1)}u(ee);const le=a((()=>{var e,l;if(!J.payload||!J.payload.column)return 10;const{filterCapacity:a}=null!=(l=null==(e=J.payload.column.editRender)?void 0:e.props)?l:{};return x(a)&&a>0?a:10})),ae=a((()=>Z.value?Q.value.filter((e=>!!`${e.label}`.includes(Z.value)||(U(e.data)?w(Z.value,e.data):void 0))):Q.value)),{list:te,containerProps:ue,wrapperProps:ie}=S(ae,{itemHeight:32,overscan:3}),oe=a({get:()=>ae.value.every((e=>X.value.includes(e.value))),set(e){X.value=e?[...new Set([...X.value,...ae.value.map((e=>e.value))])]:X.value.filter((e=>ae.value.every((l=>l.value!==e))))}}),re=a((()=>ae.value.some((e=>X.value.includes(e.value)))&&!oe.value)),ne=a({get:()=>X.value.length===Q.value.length&&0!==Q.value.length,set:e=>{X.value=e?Q.value.map((e=>e.value)):[]}}),ve=a((()=>!!X.value.length&&!ne.value)),ce=a((()=>({height:D(32*le.value)})));function se(){T.value=N.value?X.value:R(X.value[0],null)?[]:[X.value[0]],ee()}function de(){X.value=N.value?[]:[null]}const pe=t(!1);return i((async()=>{var e;if(!K)return;const l=null==(e=J.payload.column.editRender.props)?void 0:e.onFilterShow;if(F(l))try{pe.value=!0,await l(J.payload);const{filterStore:e}=K.reactData;o(e.options)!==o(Q.value)&&(e.options=Q.value)}finally{pe.value=!1}})),(e,l)=>(r(),n("section",V,[v(Q).length>5?(r(),c(v(W),{key:0,value:Z.value,"onUpdate:value":l[0]||(l[0]=e=>Z.value=e)},null,8,["value"])):s("v-if",!0),v(N)?(r(),n("div",q,[d("div",z,[p(v(Y),{label:"全选当前",checked:v(oe),"onUpdate:checked":l[1]||(l[1]=e=>f(oe)?oe.value=e:null),indeterminate:v(re)},null,8,["checked","indeterminate"])]),d("div",A,[p(v(Y),{label:"全选所有",checked:v(ne),"onUpdate:checked":l[2]||(l[2]=e=>f(ne)?ne.value=e:null),indeterminate:v(ve)},null,8,["checked","indeterminate"])])])):s("v-if",!0),p(v(j),{show:pe.value},{default:h((()=>[v(N)?(r(),c(v(E),{key:0,value:X.value,"onUpdate:value":l[3]||(l[3]=e=>X.value=e)},{default:h((()=>[d("section",m(v(ue),{style:v(ce),class:"iho-table__filterListWrapper"}),[d("section",_(y(v(ie))),[(r(!0),n(b,null,k(v(te),(e=>(r(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[p(v(Y),{value:e.data.value},{default:h((()=>[d("div",{class:"iho-table__filterListItemContent",title:e.data.label},g(e.data.label),9,H)])),_:2},1032,["value"])])))),128))],16)],16)])),_:1},8,["value"])):(r(),c(v($),{key:1,value:X.value[0],"onUpdate:value":l[5]||(l[5]=e=>X.value[0]=e)},{default:h((()=>[d("section",m(v(ue),{style:v(ce),class:"iho-table__filterListWrapper"}),[d("section",_(y(v(ie))),[(r(!0),n(b,null,k(v(te),(e=>(r(),n("div",{class:"iho-table__filterListItem",key:e.data.value,title:e.data.label},[p(v(I),{value:e.data.value,currentValue:X.value[0],cancelable:"",onCancel:l[4]||(l[4]=e=>X.value=[null])},{default:h((()=>[d("div",B,g(e.data.label),1)])),_:2},1032,["value","currentValue"])],8,M)))),128))],16)],16)])),_:1},8,["value"]))])),_:1},8,["show"]),d("footer",G,[d("section",null,[v(N)?(r(),n(b,{key:0},[C(" 已选择 "),d("span",{style:L({color:"var(--c-primary-color)"})},g(X.value.length),5),C(" 项 ")],64)):s("v-if",!0)]),p(v(O),{size:"small"},{default:h((()=>[p(v(P),{onClick:de},{default:h((()=>[C("清空")])),_:1}),p(v(P),{onClick:ee},{default:h((()=>[C("取消")])),_:1}),p(v(P),{type:"primary",onClick:se},{default:h((()=>[C("确定")])),_:1})])),_:1})])]))}});export{J as default};
1
+ import{defineComponent as e,inject as l,computed as a,ref as t,onDeactivated as u,onMounted as i,toRaw as o,openBlock as r,createElementBlock as n,unref as v,createBlock as c,createCommentVNode as s,createElementVNode as d,createVNode as p,isRef as f,withCtx as h,mergeProps as m,normalizeProps as _,guardReactiveProps as y,Fragment as b,renderList as k,toDisplayString as g,createTextVNode as C,normalizeStyle as L}from"vue";import w from"../../../../../shared/components/CancelRadio/CancelRadio.js";import{keywordMatcher as I,widthAppend as D}from"../../../../../shared/utils/index.js";import{useVirtualList as S}from"@vueuse/core";import{isNumber as U,isString as j,isFunction as x,isEqual as F}from"lodash-es";import{NInput as R,NCheckbox as W,NSpin as E,NCheckboxGroup as $,NRadioGroup as O,NButtonGroup as P,NButton as V}from"naive-ui";import{isVariableHeightTable as Y}from"../../utils/index.js";const q={class:"iho-table__filterWrapper"},z={key:1,class:"iho-table__filterCheckAllWrapper"},A={class:"iho-table__filterListItem"},H={class:"iho-table__filterListItem"},M=["title"],B=["title"],G={class:"iho-table__filterListItemContent"},J={class:"iho-table__filterFooter"};var K=e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const K=e,N=l("$xetable"),Q=a((()=>{var e;return!!(null==(e=K.payload)?void 0:e.column.filterMultiple)})),T=a((()=>{var e,l,a;return null!=(a=null==(l=null==(e=K.payload)?void 0:e.column)?void 0:l.filters)?a:[]})),X=a({get:()=>T.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),async set(e){if(!K.payload||!N)return;const l=N.reactData.filterStore.options||[];if(Q.value?(l.forEach((l=>l._checked=e.includes(l.value))),N.checkFilterOptions()):l.forEach((l=>l._checked=l.value===e[0])),!Y(N))return a();function a(){K.payload.$panel.confirmFilter(new CustomEvent("click"))}N.reactData.scrollYLoad=!0,a(),N.reactData.scrollYLoad=!1}}),Z=t([...X.value]),ee=t("");async function le(){N&&(N.reactData.filterStore.visible=!1)}u(le);const ae=a((()=>{var e,l;if(!K.payload||!K.payload.column)return 10;const{filterCapacity:a}=null!=(l=null==(e=K.payload.column.editRender)?void 0:e.props)?l:{};return U(a)&&a>0?a:10})),te=a((()=>ee.value?T.value.filter((e=>!!`${e.label}`.includes(ee.value)||(j(e.data)?I(ee.value,e.data):void 0))):T.value)),{list:ue,containerProps:ie,wrapperProps:oe}=S(te,{itemHeight:32,overscan:3}),re=a({get:()=>te.value.every((e=>Z.value.includes(e.value))),set(e){Z.value=e?[...new Set([...Z.value,...te.value.map((e=>e.value))])]:Z.value.filter((e=>te.value.every((l=>l.value!==e))))}}),ne=a((()=>te.value.some((e=>Z.value.includes(e.value)))&&!re.value)),ve=a({get:()=>Z.value.length===T.value.length&&0!==T.value.length,set:e=>{Z.value=e?T.value.map((e=>e.value)):[]}}),ce=a((()=>!!Z.value.length&&!ve.value)),se=a((()=>({height:D(32*ae.value)})));function de(){X.value=Q.value?Z.value:F(Z.value[0],null)?[]:[Z.value[0]],le()}function pe(){Z.value=Q.value?[]:[null]}const fe=t(!1);return i((async()=>{var e;if(!N)return;const l=null==(e=K.payload.column.editRender.props)?void 0:e.onFilterShow;if(x(l))try{fe.value=!0,await l(K.payload);const{filterStore:e}=N.reactData;o(e.options)!==o(T.value)&&(e.options=T.value)}finally{fe.value=!1}})),(e,l)=>(r(),n("section",q,[v(T).length>5?(r(),c(v(R),{key:0,value:ee.value,"onUpdate:value":l[0]||(l[0]=e=>ee.value=e)},null,8,["value"])):s("v-if",!0),v(Q)?(r(),n("div",z,[d("div",A,[p(v(W),{label:"全选当前",checked:v(re),"onUpdate:checked":l[1]||(l[1]=e=>f(re)?re.value=e:null),indeterminate:v(ne)},null,8,["checked","indeterminate"])]),d("div",H,[p(v(W),{label:"全选所有",checked:v(ve),"onUpdate:checked":l[2]||(l[2]=e=>f(ve)?ve.value=e:null),indeterminate:v(ce)},null,8,["checked","indeterminate"])])])):s("v-if",!0),p(v(E),{show:fe.value},{default:h((()=>[v(Q)?(r(),c(v($),{key:0,value:Z.value,"onUpdate:value":l[3]||(l[3]=e=>Z.value=e)},{default:h((()=>[d("section",m(v(ie),{style:v(se),class:"iho-table__filterListWrapper"}),[d("section",_(y(v(oe))),[(r(!0),n(b,null,k(v(ue),(e=>(r(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[p(v(W),{value:e.data.value},{default:h((()=>[d("div",{class:"iho-table__filterListItemContent",title:e.data.label},g(e.data.label),9,M)])),_:2},1032,["value"])])))),128))],16)],16)])),_:1},8,["value"])):(r(),c(v(O),{key:1,value:Z.value[0],"onUpdate:value":l[5]||(l[5]=e=>Z.value[0]=e)},{default:h((()=>[d("section",m(v(ie),{style:v(se),class:"iho-table__filterListWrapper"}),[d("section",_(y(v(oe))),[(r(!0),n(b,null,k(v(ue),(e=>(r(),n("div",{class:"iho-table__filterListItem",key:e.data.value,title:e.data.label},[p(v(w),{value:e.data.value,currentValue:Z.value[0],cancelable:"",onCancel:l[4]||(l[4]=e=>Z.value=[null])},{default:h((()=>[d("div",G,g(e.data.label),1)])),_:2},1032,["value","currentValue"])],8,B)))),128))],16)],16)])),_:1},8,["value"]))])),_:1},8,["show"]),d("footer",J,[d("section",null,[v(Q)?(r(),n(b,{key:0},[C(" 已选择 "),d("span",{style:L({color:"var(--c-primary-color)"})},g(Z.value.length),5),C(" 项 ")],64)):s("v-if",!0)]),p(v(P),{size:"small"},{default:h((()=>[p(v(V),{onClick:pe},{default:h((()=>[C("清空")])),_:1}),p(v(V),{onClick:le},{default:h((()=>[C("取消")])),_:1}),p(v(V),{type:"primary",onClick:de},{default:h((()=>[C("确定")])),_:1})])),_:1})])]))}});export{K as default};
@@ -1 +1 @@
1
- import{createVNode as e,mergeProps as o}from"vue";import{format as t}from"date-fns";import{isFunction as n}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as r}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{createIhoTableClearActivedInterceptor as d,IhoTableRenderHelper as l,isInvalidDate as a,getLowCodeFieldFromField as u}from"../../../../utils/index.js";import m from"./editDate.vue.js";import{defineTablePlugin as s}from"../../../../hooks/useTablePlugin.js";function c(){const c="dateRendererPlugin";return s({name:c,vxe(t){t.interceptor.add("event.clearActived",d(r.DATE,(e=>e.classList.contains("n-date-panel")))),t.renderer.add(r.DATE,{renderCell:l.createDefaultRenderCell(),renderEdit:l.createRenderEdit((({fieldItem:t,emitFormClick:n,row:r,column:i,$rowIndex:d})=>[e(m,o({value:r[i.field],"onUpdate:value":e=>r[i.field]=e,isStartDate:t.isStartDate,isEndDate:t.isEndDate,connectField:t.connectField,valueFormat:t.valueFormat},t.componentProps,{column:i,row:r,"row-index":d,onClick:n}),null)]))})},apply(e){i(e).bindAutoFocusConfig(c,r.DATE,".n-input__input-el",{after:e=>(Reflect.set(e.editRender,"autoselect",!0),e)}),e.eventHooks.onCellDblclick.tap(c,(({row:e,column:o,columnIndex:i,rowIndex:d,$rowIndex:l},m,{$table:s,emits:c})=>{var f,p,v,x;if((null==(f=o.editRender)?void 0:f.name)!==r.DATE||e[o.field])return;if(n(null==(p=m.editConfig)?void 0:p.beforeEditMethod)){if(!(null==(v=m.editConfig)?void 0:v.beforeEditMethod({row:e,column:o,columnIndex:i,rowIndex:d,$table:s,$grid:s})))return}const D=new Date;if(a(o,e,D))return;const w=e[o.field];e[o.field]=t(D,(null==(x=u(o))?void 0:x.valueFormat)||"yyyy-MM-dd HH:mm:ss"),c("formChange",{oldValue:w,index:d>-1?d:l,value:e[o.field],row:e,column:o,$table:s})}))}})}export{c as dateRendererPlugin};
1
+ import{createVNode as e,mergeProps as o}from"vue";import{format as t}from"date-fns";import{isFunction as n}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as r}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{IhoTableRenderHelper as l,isInvalidDate as d,getLowCodeFieldFromField as a}from"../../../../utils/index.js";import u from"./editDate.vue.js";import{defineTablePlugin as m}from"../../../../hooks/useTablePlugin.js";function s(){const s="dateRendererPlugin";return m({name:s,vxe(t){t.renderer.add(r.DATE,{renderCell:l.createDefaultRenderCell(),renderEdit:l.createRenderEdit((({fieldItem:t,emitFormClick:n,row:r,column:i,$rowIndex:l})=>[e(u,o({value:r[i.field],"onUpdate:value":e=>r[i.field]=e,isStartDate:t.isStartDate,isEndDate:t.isEndDate,connectField:t.connectField,valueFormat:t.valueFormat},t.componentProps,{column:i,row:r,"row-index":l,onClick:n}),null)]))})},apply(e){i(e).bindAutoFocusConfig(s,r.DATE,".n-input__input-el",{after:e=>(Reflect.set(e.editRender,"autoselect",!0),e)}),e.eventHooks.onCellDblclick.tap(s,(({row:e,column:o,columnIndex:i,rowIndex:l,$rowIndex:u},m,{$table:s,emits:f})=>{var c,p,v,x;if((null==(c=o.editRender)?void 0:c.name)!==r.DATE||e[o.field])return;if(n(null==(p=m.editConfig)?void 0:p.beforeEditMethod)){if(!(null==(v=m.editConfig)?void 0:v.beforeEditMethod({row:e,column:o,columnIndex:i,rowIndex:l,$table:s,$grid:s})))return}const w=new Date;if(d(o,e,w))return;const D=e[o.field];e[o.field]=t(w,(null==(x=a(o))?void 0:x.valueFormat)||"yyyy-MM-dd HH:mm:ss"),f("formChange",{oldValue:D,index:l>-1?l:u,value:e[o.field],row:e,column:o,$table:s})}))}})}export{s as dateRendererPlugin};
@@ -1 +1 @@
1
- import{createVNode as o,computed as e,mergeProps as r}from"vue";import{isString as n,isArray as t}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as l}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{getLowCodeFieldFromField as d,IhoTableRenderHelper as a,createIhoTableClearActivedInterceptor as s}from"../../../../utils/index.js";import u from"./levelSearchCascade.vue.js";import{defineTablePlugin as c}from"../../../../hooks/useTablePlugin.js";function m(){const m="levelSearchCascadePlugin";return c({name:m,vxe(i){i.renderer.add(l.LEVEL_SEARCH_CASCADE,{renderCell:(e,{column:r,row:l})=>{const i=l[r.field];return n(i)?a(i):t(i)?a(function(o){var e,n,t;const l=d(r);if(!l)return"";const i=(null==(n=null==(e=l.wordbook)?void 0:e.show_key)?void 0:n[0])||(null==(t=l.componentProps)?void 0:t.labelField)||"text";return o.reduce(((o,e,r)=>0===r?e[i]:o+" / "+e[i]),"")}(i)):"";function a(e){return o("span",{title:e,class:"iho-table__colorAndIcon"},[e])}},renderEdit:a.createRenderEdit((({fieldItem:n,row:t,column:l,emitFormClick:i,emitFormChangeWithParams:d,rowIndex:a,columnIndex:s})=>{const c=e({get:()=>t[l.field],set(o){const e=t[l.field];t[l.field]=o,d({oldValue:e})}});return[o(u,r({value:c.value,"onUpdate:value":o=>c.value=o,options:n.options,wordbook:n.wordbook,autograph:n.autograph,onClick:i},n.componentProps,{fieldKey:l.field,payload:{row:t,column:l,rowIndex:a,columnIndex:s}}),null)]}))}),i.interceptor.add("event.clearActived",s(l.LEVEL_SEARCH_CASCADE,(o=>o.classList.contains("search-cascader__menuWrapper"))))},apply(o){i(o).bindAutoFocusConfig(m,l.LEVEL_SEARCH_CASCADE,"input")}})}export{m as levelSearchCascadePlugin};
1
+ import{createVNode as o,computed as e,mergeProps as n}from"vue";import{isString as r,isArray as t}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as l}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{getLowCodeFieldFromField as d,IhoTableRenderHelper as u}from"../../../../utils/index.js";import s from"./levelSearchCascade.vue.js";import{defineTablePlugin as a}from"../../../../hooks/useTablePlugin.js";function c(){const c="levelSearchCascadePlugin";return a({name:c,vxe(i){i.renderer.add(l.LEVEL_SEARCH_CASCADE,{renderCell:(e,{column:n,row:l})=>{const i=l[n.field];return r(i)?u(i):t(i)?u(function(o){var e,r,t;const l=d(n);if(!l)return"";const i=(null==(r=null==(e=l.wordbook)?void 0:e.show_key)?void 0:r[0])||(null==(t=l.componentProps)?void 0:t.labelField)||"text";return o.reduce(((o,e,n)=>0===n?e[i]:o+" / "+e[i]),"")}(i)):"";function u(e){return o("span",{title:e,class:"iho-table__colorAndIcon"},[e])}},renderEdit:u.createRenderEdit((({fieldItem:r,row:t,column:l,emitFormClick:i,emitFormChangeWithParams:d,rowIndex:u,columnIndex:a})=>{const c=e({get:()=>t[l.field],set(o){const e=t[l.field];t[l.field]=o,d({oldValue:e})}});return[o(s,n({value:c.value,"onUpdate:value":o=>c.value=o,options:r.options,wordbook:r.wordbook,autograph:r.autograph,onClick:i},r.componentProps,{fieldKey:l.field,payload:{row:t,column:l,rowIndex:u,columnIndex:a}}),null)]}))})},apply(o){i(o).bindAutoFocusConfig(c,l.LEVEL_SEARCH_CASCADE,"input")}})}export{c as levelSearchCascadePlugin};
@@ -1 +1 @@
1
- import{createVNode as e,mergeProps as o,defineComponent as l,computed as t}from"vue";import n from"../../../../../../shared/components/InputNumberSlash/InputNumberSlash.js";import{isNumber as r}from"lodash-es";import{NInputNumber as a}from"naive-ui";import"../../../../index.js";import{EDITABLE_WIDGET_TYPE as u}from"../../../constants/index.js";import{useAutoFocus as i}from"./hooks/useAutoFocus.js";import{createIhoTableClearActivedInterceptor as s,IhoTableRenderHelper as p}from"../../../utils/index.js";import{defineTablePlugin as m}from"../../../hooks/useTablePlugin.js";const c=l({name:"IhoTableInputNumber",props:{value:[String,Number]},emits:["update:value"],setup(o,{emit:l}){const n=t({get:()=>r(o.value)?o.value:o.value&&r(+o.value)?+o.value:null,set(e){l("update:value",e)}});return()=>e(a,{value:n.value,"onUpdate:value":e=>n.value=e},null)}});function d(){const l="numberRendererPlugin";return m({name:l,vxe(l){l.interceptor.add("event.clearActived",s(u.NUMBER,(e=>e.classList.contains("iho-table_numberInputSlashPopper")))),l.renderer.add(u.NUMBER,{renderCell:p.createDefaultRenderCell(),renderEdit:p.createRenderEdit((({row:l,column:t,fieldItem:r,emitFormClick:a,emitFormChangeWithParams:u,$table:i})=>{var s;const{placeholder:p="请输入"}=r.componentProps||{};function m(e){const o=l[t.field];l[t.field]=e,u({oldValue:o})}const d={clearable:!0,placeholder:p,onBlur:()=>u({type:"blur",oldValue:l[t.field]}),onClick:a};return!0===r.allowSlash||"1"===r.allowSlash?e(n,o({value:l[t.field],onChange:m,onSelect:function(){i.internalData.isActivated=!0}},d,{whiteList:r.whiteList},r.componentProps,{popperProps:{...null==(s=r.componentProps)?void 0:s.popperProps,class:"iho-table_numberInputSlashPopper"}}),null):e(c,o({value:l[t.field],"onUpdate:value":m},d,r.componentProps),null)}))})},apply(e){i(e).bindAutoFocusConfig(l,u.NUMBER,".n-input__input-el",{focusType:"class"})}})}export{d as numberRendererPlugin};
1
+ import{createVNode as e,mergeProps as o,defineComponent as l,computed as n}from"vue";import t from"../../../../../../shared/components/InputNumberSlash/InputNumberSlash.js";import{isNumber as r}from"lodash-es";import{NInputNumber as u}from"naive-ui";import"../../../../index.js";import{EDITABLE_WIDGET_TYPE as a}from"../../../constants/index.js";import{useAutoFocus as i}from"./hooks/useAutoFocus.js";import{IhoTableRenderHelper as s}from"../../../utils/index.js";import{defineTablePlugin as p}from"../../../hooks/useTablePlugin.js";const m=l({name:"IhoTableInputNumber",props:{value:[String,Number]},emits:["update:value"],setup(o,{emit:l}){const t=n({get:()=>r(o.value)?o.value:o.value&&r(+o.value)?+o.value:null,set(e){l("update:value",e)}});return()=>e(u,{value:t.value,"onUpdate:value":e=>t.value=e},null)}});function d(){const l="numberRendererPlugin";return p({name:l,vxe(l){l.renderer.add(a.NUMBER,{renderCell:s.createDefaultRenderCell(),renderEdit:s.createRenderEdit((({row:l,column:n,fieldItem:r,emitFormClick:u,emitFormChangeWithParams:a,$table:i})=>{var s;const{placeholder:p="请输入"}=r.componentProps||{};function d(e){const o=l[n.field];l[n.field]=e,a({oldValue:o})}const c={clearable:!0,placeholder:p,onBlur:()=>a({type:"blur",oldValue:l[n.field]}),onClick:u};return!0===r.allowSlash||"1"===r.allowSlash?e(t,o({value:l[n.field],onChange:d,onSelect:function(){i.internalData.isActivated=!0}},c,{whiteList:r.whiteList},r.componentProps,{popperProps:{...null==(s=r.componentProps)?void 0:s.popperProps,class:"iho-table_numberInputSlashPopper"}}),null):e(m,o({value:l[n.field],"onUpdate:value":d},c,r.componentProps),null)}))})},apply(e){i(e).bindAutoFocusConfig(l,a.NUMBER,".n-input__input-el",{focusType:"class"})}})}export{d as numberRendererPlugin};
@@ -1 +1 @@
1
- import{reactive as e,inject as o,createVNode as t,mergeProps as n,onBeforeUnmount as l}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as r,InjectionIhoTableUUID as s}from"../../../../constants/index.js";import{useAutoFocus as u}from"../hooks/useAutoFocus.js";import{createIhoTableClearActivedInterceptor as d,getTitle as a,IhoTableRenderHelper as c,IhoTableUtils as p}from"../../../../utils/index.js";import f from"./editSelect.js";import{getDefaultValue as m,isConnectField as v,getArray as w}from"./selectUtils.js";import{getSelectOptions as h,selectOptionsMap as b}from"../hooks/useSelectOption.js";import{cloneDeep as g,isFunction as y,isEqual as C}from"lodash-es";import{defineTablePlugin as E}from"../../../../hooks/useTablePlugin.js";function x(){const x="selectRendererPlugin",k=e(new Map);function j(e){return!0===e||"1"===e}return E({name:x,vxe(e){e.interceptor.add("event.clearActived",d(r.SELECT,(e=>e.classList.contains("iho-table__selectMenu")))),e.renderer.add(r.SELECT,{renderCell({props:e},{row:n,column:l,$table:r}){var u;const d=o(s),c=h(d,l.field,n,r),p=m(n,e,c),f=i(p).join(","),v=e&&(j(e.variableHeight)||(null==(u=e.componentProps)?void 0:u.indexedText));return[t("span",{title:a(l,f),class:"iho-table__colorAndIcon"},[v?i(p).reduce(((e,o)=>(null!=o&&e.push([o,";",t("br",null,null)]),e)),[]):f])]},renderEdit:c.createRenderEdit((({fieldItem:e,emitFormClick:l,row:i,column:r,$rowIndex:u,$table:d})=>{var a,c,p,m;const v=o(s),w=h(v,r.field,i,d),b=j(null!=(c=null==(a=e.componentProps)?void 0:a.allowModify)?c:e.allowModify),g=j(null!=(m=null==(p=e.componentProps)?void 0:p.allowCreate)?m:e.allowCreate)||b;return[t(f,n({queryOptions:e.queryOptions},e.componentProps,{options:w,column:r,row:i,"row-index":u,value:i[r.field],"onUpdate:value":e=>i[r.field]=e,allowModify:b,allowCreate:g,onClick:l}),null)]}))})},apply(e){async function o(e,o={}){var t,n,l;const i=null==(t=e.editRender)?void 0:t.props;if(!i)return[];let r=w(i.options)||w(null==(n=i.componentProps)?void 0:n.options)||[];if(i.queryOptions)try{const t={column:e,isFullData:!0,...o};r=await(null==(l=i.queryOptions)?void 0:l.call(i,t))}catch(e){console.log(`获取${i.field}_options错误`)}return r}function t(e){return e&&p.getCellType(e)===r.SELECT}u(e).bindAutoFocusConfig(x,r.SELECT,".n-base-selection-input,.n-base-selection-tags"),e.fieldHooks.fieldList.tap(x,((e,{uuid:n})=>{if(n){b.get(n)||b.set(n,{}),k.set(n,g(e));const l=b.get(n);e.forEach((async n=>{var i;const r=null==(i=n.editRender)?void 0:i.props;if(n.field&&r&&t(r)&&!v(e,n.field)){if(y(r.queryOptions)&&l[n.field])return;l[n.field]=[],l[n.field]=await o(n)}}))}return e})),e.dataHooks.data.tap(x,((e,{uuid:n},l)=>{if(!n)return;const i=k.get(n);if(!i||!i.length)return;const r=b.get(n);i.forEach((async n=>{var l;const s=null==(l=n.editRender)?void 0:l.props;if(n.field&&s&&t(s)&&(null==s?void 0:s.connectField)){const t=s.connectField.split(","),l=e[s.columnName];t.forEach((async t=>{const u=null==i?void 0:i.find((e=>e.field===t));if(!u)return;const d=l?`${t}__${s.columnName}-${l}`:t;r[d]||(r[d]=[],r[d]=await o(u,{row:e,connectColumn:n}))}))}}))})),e.setupHooks.setup.tap(x,(e=>{l((()=>{var o;const t=null==(o=e.value)?void 0:o.uuid;t&&(b.delete(t),k.delete(t))}))})),e.eventHooks.onCellDblclick.tap(x,(({$table:e},o,{emits:n})=>{var l;const{column:i,row:r}=e.reactData.editStore.actived;if(!i||!r)return;const s=null==(l=i.editRender)?void 0:l.props,{cellDblclickSelectable:u=!1,multiple:d=!1,valueField:a="value"}=s.componentProps||{};if(!u||!t(s))return;const c=o.uuid&&h(o.uuid,i.field,r,e);if(1!==(null==c?void 0:c.length))return;const p=d?[c[0][a]]:c[0][a],f=r[i.field];e.clearEdit(),C(p,f)||(r[i.field]=p,n("formChange",{column:i,row:r,oldValue:f,value:p,index:e.getRowIndex(r),$table:e,option:c[0]}))}))}})}export{x as selectRendererPlugin};
1
+ import{reactive as e,inject as o,createVNode as n,mergeProps as t,onBeforeUnmount as l}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as r,InjectionIhoTableUUID as s}from"../../../../constants/index.js";import{useAutoFocus as u}from"../hooks/useAutoFocus.js";import{getTitle as d,IhoTableRenderHelper as a,IhoTableUtils as c}from"../../../../utils/index.js";import p from"./editSelect.js";import{getDefaultValue as f,isConnectField as m,getArray as v}from"./selectUtils.js";import{getSelectOptions as w,selectOptionsMap as g}from"../hooks/useSelectOption.js";import{cloneDeep as h,isFunction as y,isEqual as b}from"lodash-es";import{defineTablePlugin as C}from"../../../../hooks/useTablePlugin.js";function x(){const x="selectRendererPlugin",E=e(new Map);function k(e){return!0===e||"1"===e}return C({name:x,vxe(e){e.renderer.add(r.SELECT,{renderCell({props:e},{row:t,column:l,$table:r}){var u;const a=o(s),c=w(a,l.field,t,r),p=f(t,e,c),m=i(p).join(","),v=e&&(k(e.variableHeight)||(null==(u=e.componentProps)?void 0:u.indexedText));return[n("span",{title:d(l,m),class:"iho-table__colorAndIcon"},[v?i(p).reduce(((e,o)=>(null!=o&&e.push([o,";",n("br",null,null)]),e)),[]):m])]},renderEdit:a.createRenderEdit((({fieldItem:e,emitFormClick:l,row:i,column:r,$rowIndex:u,$table:d})=>{var a,c,f,m;const v=o(s),g=w(v,r.field,i,d),h=k(null!=(c=null==(a=e.componentProps)?void 0:a.allowModify)?c:e.allowModify),y=k(null!=(m=null==(f=e.componentProps)?void 0:f.allowCreate)?m:e.allowCreate)||h;return[n(p,t({queryOptions:e.queryOptions},e.componentProps,{options:g,column:r,row:i,"row-index":u,value:i[r.field],"onUpdate:value":e=>i[r.field]=e,allowModify:h,allowCreate:y,onClick:l}),null)]}))})},apply(e){async function o(e,o={}){var n,t,l;const i=null==(n=e.editRender)?void 0:n.props;if(!i)return[];let r=v(i.options)||v(null==(t=i.componentProps)?void 0:t.options)||[];if(i.queryOptions)try{const n={column:e,isFullData:!0,...o};r=await(null==(l=i.queryOptions)?void 0:l.call(i,n))}catch(e){console.log(`获取${i.field}_options错误`)}return r}function n(e){return e&&c.getCellType(e)===r.SELECT}u(e).bindAutoFocusConfig(x,r.SELECT,".n-base-selection-input,.n-base-selection-tags"),e.fieldHooks.fieldList.tap(x,((e,{uuid:t})=>{if(t){g.get(t)||g.set(t,{}),E.set(t,h(e));const l=g.get(t);e.forEach((async t=>{var i;const r=null==(i=t.editRender)?void 0:i.props;if(t.field&&r&&n(r)&&!m(e,t.field)){if(y(r.queryOptions)&&l[t.field])return;l[t.field]=[],l[t.field]=await o(t)}}))}return e})),e.dataHooks.data.tap(x,((e,{uuid:t},l)=>{if(!t)return;const i=E.get(t);if(!i||!i.length)return;const r=g.get(t);i.forEach((async t=>{var l;const s=null==(l=t.editRender)?void 0:l.props;if(t.field&&s&&n(s)&&(null==s?void 0:s.connectField)){const n=s.connectField.split(","),l=e[s.columnName];n.forEach((async n=>{const u=null==i?void 0:i.find((e=>e.field===n));if(!u)return;const d=l?`${n}__${s.columnName}-${l}`:n;r[d]||(r[d]=[],r[d]=await o(u,{row:e,connectColumn:t}))}))}}))})),e.setupHooks.setup.tap(x,(e=>{l((()=>{var o;const n=null==(o=e.value)?void 0:o.uuid;n&&(g.delete(n),E.delete(n))}))})),e.eventHooks.onCellDblclick.tap(x,(({$table:e},o,{emits:t})=>{var l;const{column:i,row:r}=e.reactData.editStore.actived;if(!i||!r)return;const s=null==(l=i.editRender)?void 0:l.props,{cellDblclickSelectable:u=!1,multiple:d=!1,valueField:a="value"}=s.componentProps||{};if(!u||!n(s))return;const c=o.uuid&&w(o.uuid,i.field,r,e);if(1!==(null==c?void 0:c.length))return;const p=d?[c[0][a]]:c[0][a],f=r[i.field];e.clearEdit(),b(p,f)||(r[i.field]=p,t("formChange",{column:i,row:r,oldValue:f,value:p,index:e.getRowIndex(r),$table:e,option:c[0]}))}))}})}export{x as selectRendererPlugin};
@@ -1 +1 @@
1
- import{reactive as e,inject as t,createVNode as a,toRaw as o,h as r,onBeforeUnmount as n}from"vue";import{traverse as i,arrayed as u}from"../../../../../../../shared/utils/index.js";import{isFunction as l,isObject as s,isArray as d,compact as p,range as c,uniq as f,flatten as _}from"lodash-es";import{NInput as m}from"naive-ui";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as E,InjectionIhoTableUUID as A,InjectionIhoTableHandler as h}from"../../../../constants/index.js";import{useAutoFocus as v}from"../hooks/useAutoFocus.js";import{createIhoTableClearActivedInterceptor as R,getLowCodeFieldFromField as g,IhoTableRenderHelper as T,getRowHeight as D,getColumnRenderWidth as w,parseMergeField as b}from"../../../../utils/index.js";import P from"./editSeparate.vue.js";import{contentSeparate as $,getLengthDiffArray as x,getColumnInfoMaxLength as C,generateSeparateRowData as S,isSeparateColumn as k}from"./separateUtils.js";import{getSeparateInfo as H,setSeparateInfo as j,deleteSeparateInfo as M}from"../../../../utils/separateMap.js";import{defineTablePlugin as O}from"../../../../hooks/useTablePlugin.js";function F(){const F="separateRendererPlugins",I=e(new Map);return O({name:F,vxe(e){e.interceptor.add("event.clearActived",R(E.SEPARATE,(e=>e.classList.contains("v-binder-follower-content")))),e.renderer.add(E.SEPARATE,{renderCell(e,{column:o,row:r}){var n,i;const u=t(A),l=null!=(i=null==(n=H(u,r))?void 0:n.separateData)?i:{},s=g(o),d=(null==s?void 0:s.separateFormatter)?s.separateFormatter(l[o.field]):l[o.field];return a("section",{class:"iho-table__ellipsis iho-table__colorAndIcon",title:d},[d])},renderEdit:T.createRenderEdit((({fieldItem:e,column:n,row:i,emitFormClick:u})=>{var d,p;const c=t(A),f=H(c,i),_=D(),E={};let v=null!=(p=null==(d=e.componentProps)?void 0:d.separateSlot)?p:e.separateSlot;return v&&(v=o(v),E.menu=l(v)?v:s(v)?e=>r(v,e):void 0),e.separateRowEdit?function(){if(!f)return[];if(f.ihoTableHandler=t(h),f.separateData["__"+n.field]=f.separateData["__"+n.field]||f.separateData[n.field],E.menu){const e=E.menu;return a(e,{column:n,col:n,row:i,value:f.separateData["__"+n.field],"onUpdate:value":e=>f.separateData["__"+n.field]=e},null)}return a(m,{value:f.separateData["__"+n.field],"onUpdate:value":e=>f.separateData["__"+n.field]=e},null)}():function(){var t;const o=null==(t=null==f?void 0:f.separateData)?void 0:t[n.field],r=l(e.separateFormatter)?e.separateFormatter(o):o;return[a(P,{value:i[n.field],"onUpdate:value":e=>i[n.field]=e,"row-index":null==f?void 0:f.index,height:_,column:n,row:i,"display-content":r,onClick:u},E)]}()}))})},apply(e){function t(e){return(...t)=>{var a;return!(null==(a=t[0].row)?void 0:a.$__SEPARATE)&&(!l(e)||e(...t))}}v(e).bindAutoFocusConfig(F,E.SEPARATE,".iho-table__separateText"),e.eventHooks.onEditClosed.tap(F,(({row:e,column:t,$table:a},o,{emits:r})=>{if(!e.$__uuid)return;const n=g(t);if(!n||!n.separateRowEdit)return;const i=H(e.$__uuid,e);if(!i)return;const{separateData:u,originalData:l,ihoTableHandler:s,index:p}=i,{field:c}=t;if(u["__"+c]&&u["__"+c]!==u[c]&&d(l.$__SEPARATE_DATA)){const e=l.$__SEPARATE_DATA.map((e=>{var t;return null!=(t=e["__"+c])?t:e[c]})),o=l[c];l[c]=d(l[c])?e:e.join(""),r("formChange",{value:l[c],oldValue:o,row:l,column:t,index:p,$table:a}),null==s||s.updateTableDataRef()}})),e.fieldHooks.fieldList.tap(F,((e,{uuid:t})=>(t&&I.set(t,e.reduce(((e,t)=>(i(t,(t=>{k(t)&&(e.push(o(t)),t.showOverflow="ellipsis")})),e)),[])),e))),e.dataHooks.data.tapPromise(F,(async(e,t,{insertAfter:a,index:o,$table:r})=>{var n;if(!t.uuid)return;const i=I.get(t.uuid);if(!i||!i.length)return;const l=[];for(const t of i){if(!t.field)continue;const a=await w(t,e,o,r),i={field:t.field,column:t,data:$(b(e,t),t,a,null==(n=g(t))?void 0:n.separateDeep)};l.push(i)}function s(e){return l.find((t=>t.field===e))}l.forEach((e=>{const{column:t}=e,a=g(t);if(!a)return;if(!a.separateDeep||!a.separateBinder)return;const o=p(u(a.separateBinder).map(s));if(!o.length)return;const r=o.concat(e),n=Math.max(...r.map((e=>e.data.length)));c(n).forEach((e=>{const t=r.map((t=>({item:t.data[e],data:t.data}))),a=t.map((({item:e})=>n(e)));if(1===f(a).length)return;const o=Math.max(...a);function n(e){return d(e)?e.length:1}t.forEach((({item:t,data:a})=>{const r=n(t);r!==o&&(d(t)?t.push(...x(o,r)):a[e]=c(o).map(((e,a)=>0===a?t:"")))}))}))})),l.forEach((e=>{e.data=_(e.data)})),c(C(l)).forEach(((r,n,i)=>{var u;const s=S(l,n),d={index:o,originalData:e,separateData:s,separateIndex:n,separateLength:i.length,isOriginRow:0===n,isLastRow:n===i.length-1};if(0===n)return e.$__SEPARATE_DATA=[s],e.$__SEPARATE_ROW_CACHE=e.$__SEPARATE_ROW_CACHE||[],e.$__uuid=t.uuid,void j(t.uuid,e,d);const p=null!=(u=e.$__SEPARATE_ROW_CACHE[n-1])?u:e.$__SEPARATE_ROW_CACHE[n-1]={$__SEPARATE:!0,$__uuid:t.uuid,$__SEPARATE_INDEX:n};p.$__ORIGIN_INDEX=o,j(t.uuid,p,d),e.$__SEPARATE_DATA.push(s),a(p)}))})),e.eventHooks.onResizableChange.tap(F,(async(e,t,a)=>{a.updateTableDataRef()})),e.configHooks.editConfig.tap(F,((e={},t)=>{const a=e.beforeEditMethod;return e.beforeEditMethod=(...e)=>{var o;if(!t.uuid)return c();const r=I.get(t.uuid);if(!r||!r.length)return c();const{row:n,column:i}=e[0],u=H(t.uuid,n);if(!u)return c();const s=null==(o=i.editRender)?void 0:o.props;if(!s||s.separateRowEdit)return c();const{isOriginRow:d,isLastRow:p}=u;return("bottom"===s.separatePlacement?p:d)&&c();function c(){return!l(a)||a(...e)}},e})),e.configHooks.checkboxConfig.tap(F,((e={},a)=>(e.checkMethod=t(e.checkMethod),e.visibleMethod=t(e.visibleMethod),e))),e.setupHooks.setup.tap(F,(e=>{n((()=>{e.value.uuid&&(I.delete(e.value.uuid),M(e.value.uuid))}))}))}})}export{F as separateRendererPlugins};
1
+ import{reactive as e,inject as t,createVNode as a,toRaw as o,h as r,onBeforeUnmount as n}from"vue";import{traverse as i,arrayed as u}from"../../../../../../../shared/utils/index.js";import{isFunction as l,isObject as s,isArray as d,compact as p,range as f,uniq as c,flatten as _}from"lodash-es";import{NInput as m}from"naive-ui";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as E,InjectionIhoTableUUID as h,InjectionIhoTableHandler as A}from"../../../../constants/index.js";import{useAutoFocus as v}from"../hooks/useAutoFocus.js";import{getLowCodeFieldFromField as R,IhoTableRenderHelper as g,getRowHeight as D,getColumnRenderWidth as T,parseMergeField as w}from"../../../../utils/index.js";import b from"./editSeparate.vue.js";import{contentSeparate as $,getLengthDiffArray as P,getColumnInfoMaxLength as x,generateSeparateRowData as C,isSeparateColumn as S}from"./separateUtils.js";import{getSeparateInfo as k,setSeparateInfo as H,deleteSeparateInfo as j}from"../../../../utils/separateMap.js";import{defineTablePlugin as M}from"../../../../hooks/useTablePlugin.js";function O(){const O="separateRendererPlugins",F=e(new Map);return M({name:O,vxe(e){e.renderer.add(E.SEPARATE,{renderCell(e,{column:o,row:r}){var n,i;const u=t(h),l=null!=(i=null==(n=k(u,r))?void 0:n.separateData)?i:{},s=R(o),d=(null==s?void 0:s.separateFormatter)?s.separateFormatter(l[o.field]):l[o.field];return a("section",{class:"iho-table__ellipsis iho-table__colorAndIcon",title:d},[d])},renderEdit:g.createRenderEdit((({fieldItem:e,column:n,row:i,emitFormClick:u})=>{var d,p;const f=t(h),c=k(f,i),_=D(),E={};let v=null!=(p=null==(d=e.componentProps)?void 0:d.separateSlot)?p:e.separateSlot;return v&&(v=o(v),E.menu=l(v)?v:s(v)?e=>r(v,e):void 0),e.separateRowEdit?function(){if(!c)return[];if(c.ihoTableHandler=t(A),c.separateData["__"+n.field]=c.separateData["__"+n.field]||c.separateData[n.field],E.menu){const e=E.menu;return a(e,{column:n,col:n,row:i,value:c.separateData["__"+n.field],"onUpdate:value":e=>c.separateData["__"+n.field]=e},null)}return a(m,{value:c.separateData["__"+n.field],"onUpdate:value":e=>c.separateData["__"+n.field]=e},null)}():function(){var t;const o=null==(t=null==c?void 0:c.separateData)?void 0:t[n.field],r=l(e.separateFormatter)?e.separateFormatter(o):o;return[a(b,{value:i[n.field],"onUpdate:value":e=>i[n.field]=e,"row-index":null==c?void 0:c.index,height:_,column:n,row:i,"display-content":r,onClick:u},E)]}()}))})},apply(e){function t(e){return(...t)=>{var a;return!(null==(a=t[0].row)?void 0:a.$__SEPARATE)&&(!l(e)||e(...t))}}v(e).bindAutoFocusConfig(O,E.SEPARATE,".iho-table__separateText"),e.eventHooks.onEditClosed.tap(O,(({row:e,column:t,$table:a},o,{emits:r})=>{if(!e.$__uuid)return;const n=R(t);if(!n||!n.separateRowEdit)return;const i=k(e.$__uuid,e);if(!i)return;const{separateData:u,originalData:l,ihoTableHandler:s,index:p}=i,{field:f}=t;if(u["__"+f]&&u["__"+f]!==u[f]&&d(l.$__SEPARATE_DATA)){const e=l.$__SEPARATE_DATA.map((e=>{var t;return null!=(t=e["__"+f])?t:e[f]})),o=l[f];l[f]=d(l[f])?e:e.join(""),r("formChange",{value:l[f],oldValue:o,row:l,column:t,index:p,$table:a}),null==s||s.updateTableDataRef()}})),e.fieldHooks.fieldList.tap(O,((e,{uuid:t})=>(t&&F.set(t,e.reduce(((e,t)=>(i(t,(t=>{S(t)&&(e.push(o(t)),t.showOverflow="ellipsis")})),e)),[])),e))),e.dataHooks.data.tapPromise(O,(async(e,t,{insertAfter:a,index:o,$table:r})=>{var n;if(!t.uuid)return;const i=F.get(t.uuid);if(!i||!i.length)return;const l=[];for(const t of i){if(!t.field)continue;const a=await T(t,e,o,r),i={field:t.field,column:t,data:$(w(e,t),t,a,null==(n=R(t))?void 0:n.separateDeep)};l.push(i)}function s(e){return l.find((t=>t.field===e))}l.forEach((e=>{const{column:t}=e,a=R(t);if(!a)return;if(!a.separateDeep||!a.separateBinder)return;const o=p(u(a.separateBinder).map(s));if(!o.length)return;const r=o.concat(e),n=Math.max(...r.map((e=>e.data.length)));f(n).forEach((e=>{const t=r.map((t=>({item:t.data[e],data:t.data}))),a=t.map((({item:e})=>n(e)));if(1===c(a).length)return;const o=Math.max(...a);function n(e){return d(e)?e.length:1}t.forEach((({item:t,data:a})=>{const r=n(t);r!==o&&(d(t)?t.push(...P(o,r)):a[e]=f(o).map(((e,a)=>0===a?t:"")))}))}))})),l.forEach((e=>{e.data=_(e.data)})),f(x(l)).forEach(((r,n,i)=>{var u;const s=C(l,n),d={index:o,originalData:e,separateData:s,separateIndex:n,separateLength:i.length,isOriginRow:0===n,isLastRow:n===i.length-1};if(0===n)return e.$__SEPARATE_DATA=[s],e.$__SEPARATE_ROW_CACHE=e.$__SEPARATE_ROW_CACHE||[],e.$__uuid=t.uuid,void H(t.uuid,e,d);const p=null!=(u=e.$__SEPARATE_ROW_CACHE[n-1])?u:e.$__SEPARATE_ROW_CACHE[n-1]={$__SEPARATE:!0,$__uuid:t.uuid,$__SEPARATE_INDEX:n};p.$__ORIGIN_INDEX=o,H(t.uuid,p,d),e.$__SEPARATE_DATA.push(s),a(p)}))})),e.eventHooks.onResizableChange.tap(O,(async(e,t,a)=>{a.updateTableDataRef()})),e.configHooks.editConfig.tap(O,((e={},t)=>{const a=e.beforeEditMethod;return e.beforeEditMethod=(...e)=>{var o;if(!t.uuid)return f();const r=F.get(t.uuid);if(!r||!r.length)return f();const{row:n,column:i}=e[0],u=k(t.uuid,n);if(!u)return f();const s=null==(o=i.editRender)?void 0:o.props;if(!s||s.separateRowEdit)return f();const{isOriginRow:d,isLastRow:p}=u;return("bottom"===s.separatePlacement?p:d)&&f();function f(){return!l(a)||a(...e)}},e})),e.configHooks.checkboxConfig.tap(O,((e={},a)=>(e.checkMethod=t(e.checkMethod),e.visibleMethod=t(e.visibleMethod),e))),e.setupHooks.setup.tap(O,(e=>{n((()=>{e.value.uuid&&(F.delete(e.value.uuid),j(e.value.uuid))}))}))}})}export{O as separateRendererPlugins};
@@ -1 +1 @@
1
- import{createVNode as e,mergeProps as o}from"vue";import{format as t}from"date-fns";import{isFunction as r}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as n}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{createIhoTableClearActivedInterceptor as l,IhoTableRenderHelper as d,getLowCodeFieldFromField as m,isInvalidTime as u}from"../../../../utils/index.js";import a from"./editTime.vue.js";import{defineTablePlugin as f}from"../../../../hooks/useTablePlugin.js";function s(){const s="timeRendererPlugin";return f({name:s,vxe(t){t.interceptor.add("event.clearActived",l(n.TIME,(e=>e.classList.contains("n-popover")))),t.renderer.add(n.TIME,{renderCell:d.createDefaultRenderCell(),renderEdit:d.createRenderEdit((({fieldItem:t,emitFormClick:r,row:n,column:i,$rowIndex:l})=>[e(a,o({formattedValue:n[i.field],"onUpdate:formattedValue":e=>n[i.field]=e,column:i,row:n,"row-index":l,valueFormat:t.valueFormat},t.componentProps,{onClick:r}),null)]))})},apply(e){i(e).bindAutoFocusConfig(s,n.TIME,".n-input__input-el",{after:e=>(Reflect.set(e.editRender,"autoselect",!0),e)}),e.eventHooks.onCellDblclick.tap(s,(({row:e,column:o,columnIndex:i,rowIndex:l,$rowIndex:d},a,{$table:f,emits:s})=>{var c,p,v,x;if((null==(c=o.editRender)?void 0:c.name)!==n.TIME||e[o.field])return;if(r(null==(p=a.editConfig)?void 0:p.beforeEditMethod)){if(!(null==(v=a.editConfig)?void 0:v.beforeEditMethod({row:e,column:o,columnIndex:i,rowIndex:l,$table:f,$grid:f})))return}const w=t(new Date,(null==(x=m(o))?void 0:x.valueFormat)||"HH:mm");if(u(o,w))return;const I=e[o.field];e[o.field]=w,s("formChange",{oldValue:I,index:l>-1?l:d,value:e[o.field],row:e,column:o,$table:f})}))}})}export{s as timeRendererPlugin};
1
+ import{createVNode as e,mergeProps as o}from"vue";import{format as r}from"date-fns";import{isFunction as t}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as n}from"../../../../constants/index.js";import{useAutoFocus as i}from"../hooks/useAutoFocus.js";import{IhoTableRenderHelper as l,getLowCodeFieldFromField as d,isInvalidTime as m}from"../../../../utils/index.js";import u from"./editTime.vue.js";import{defineTablePlugin as a}from"../../../../hooks/useTablePlugin.js";function f(){const f="timeRendererPlugin";return a({name:f,vxe(r){r.renderer.add(n.TIME,{renderCell:l.createDefaultRenderCell(),renderEdit:l.createRenderEdit((({fieldItem:r,emitFormClick:t,row:n,column:i,$rowIndex:l})=>[e(u,o({formattedValue:n[i.field],"onUpdate:formattedValue":e=>n[i.field]=e,column:i,row:n,"row-index":l,valueFormat:r.valueFormat},r.componentProps,{onClick:t}),null)]))})},apply(e){i(e).bindAutoFocusConfig(f,n.TIME,".n-input__input-el",{after:e=>(Reflect.set(e.editRender,"autoselect",!0),e)}),e.eventHooks.onCellDblclick.tap(f,(({row:e,column:o,columnIndex:i,rowIndex:l,$rowIndex:u},a,{$table:f,emits:s})=>{var c,p,v,x;if((null==(c=o.editRender)?void 0:c.name)!==n.TIME||e[o.field])return;if(t(null==(p=a.editConfig)?void 0:p.beforeEditMethod)){if(!(null==(v=a.editConfig)?void 0:v.beforeEditMethod({row:e,column:o,columnIndex:i,rowIndex:l,$table:f,$grid:f})))return}const w=r(new Date,(null==(x=d(o))?void 0:x.valueFormat)||"HH:mm");if(m(o,w))return;const I=e[o.field];e[o.field]=w,s("formChange",{oldValue:I,index:l>-1?l:u,value:e[o.field],row:e,column:o,$table:f})}))}})}export{f as timeRendererPlugin};
@@ -1 +1 @@
1
- import{unref as e,onBeforeUnmount as t,shallowReactive as o,createVNode as l,defineComponent as n,inject as r,ref as a,computed as s,provide as i,watch as u,onMounted as d,h as c}from"vue";import{traverse as p,widthAppend as f}from"../../../../shared/utils/index.js";import{doAnimation as m}from"../../../../shared/utils/anime.js";import{useThrottleFn as h}from"@vueuse/core";import{promiseTimeout as g}from"@vueuse/shared";import{last as v,isFunction as x,isNumber as y}from"lodash-es";import"../../index.js";import{EDITABLE_WIDGET_TYPE as b,InjectionIhoTableUUID as I}from"../constants/index.js";import{useUUIDMap as T,IhoTableUtils as w}from"../utils/index.js";import{defineTablePlugin as R}from"../hooks/useTablePlugin.js";class D{constructor(){this.records={},this.maxRecords=o(new Map)}set(e,t,o){if(this.records[e]||(this.records[e]={}),this.records[e][t]===o)return;this.records[e][t]=o;const l=Math.max(...Object.values(this.records[e]),0);this.maxRecords.get(e)!==l&&this.maxRecords.set(e,l)}getMax(e){return this.maxRecords.get(e)||0}}const{getItemFromUUID:H,removeItemFromUUID:M}=T((()=>new D),!0),{getItemFromUUID:S,removeItemFromUUID:C,setItemFromUUID:U}=T((()=>null)),{getItemFromUUID:$,removeItemFromUUID:k,setItemFromUUID:F}=T((()=>{}));let j={};function E(t,o,{scrollTop:l=0}){var n,r;const{uuid:a,rowConfig:s={}}=o;if(!a)return;const i=H(a),{oSize:u=0,gt:d=100}=null!=(n=$(a))?n:{},{internalData:c,reactData:p}=t,{scrollYStore:f,elemStore:m,afterFullData:h,fullDataRowIdData:g}=c;if(d>h.length)return;const y=null!=(r=s.height)?r:36,b=m["main-body-wrapper"],I=b?e(b):null;let T=I?Math.max(8,Math.ceil(I.clientHeight/y)+2+u):8;const w=[0];let R=0;if(l&&h.find(((e,o)=>{const n=t.getRowSeq(e),r=(v(w)||0)+Math.max(y,i.getMax(n));if(w.push(r),r>l)return R=Math.max(0,o-u),T+=Math.min(R,u),!0})),R>0&&x(o.spanMethod)){const{spanMethod:e}=o,l={rowspan:1,colspan:1};for(;R>0;){if(!t.getColumns().some(((t,o)=>{const{rowspan:n,colspan:r}=e({column:t,columnIndex:o,$columnIndex:o,row:h[R],rowIndex:R,$rowIndex:R,_rowIndex:R,isHidden:!t.visible,fixed:t.fixed,type:t.type,visibleData:h})||l;if(0===n&&0===r)return R--,!0})))break}}const D=`${w[R]}px`,M=`${h.reduce(((e,o)=>{const l=t.getRowSeq(o);return e+Math.max(y,i.getMax(l))}),0)}px`;["main","left","right"].forEach((t=>{const o=m[`${t}-body-table`],n=o?e(o):null;n&&(n.style.marginTop=D,n.scrollTop=l),["header","body","footer"].forEach((o=>{const l=m[`${t}-${o}-ySpace`],n=l?e(l):null;n&&(n.style.height=M)}))}));const S=Math.min(h.length,R+T);if(f.startIndex===R&&f.endIndex===S)return;f.startIndex=R,f.endIndex=S;const C=h.slice(f.startIndex,f.endIndex);C.forEach(((e,o)=>{const l=t.getRowid(e),n=g[l];n&&(n.$index=o)})),p.tableData.length=0,p.tableData.push(...C)}const Y=h(E,300);function q(e){var t,o;return(!0===e.variableHeight||"1"===e.variableHeight)&&(null!=(o=null==(t=e.editRender)?void 0:t.name)?o:w.getCellType(e))!==b.SEPARATE}function L(){const o="variableHeightRendererPlugin";return R({name:o,vxe(e){j=n({props:{payload:{type:Object,required:!0}},setup(t){const o=r(I),n=r("$xetable"),p=a(),m=H(o),h=s((()=>t.payload.row[t.payload.column.field]));function v(){const{row:e,column:o}=t.payload,l=n.getRowSeq(e);if(!m||null==l||!p.value)return;const r=p.value.clientHeight;m.set(l,o.field,r)}i("updateCellHeight",v),u([()=>t.payload.rowIndex,()=>t.payload.column.field,h,()=>t.payload.column.renderWidth],(async()=>{await g(0),v()})),d((()=>{n&&!S(o)&&U(o,n),v()}));const b=s((()=>{var o,l,n,r,a;const s=null!=(l=null==(o=t.payload.column.editRender)?void 0:o.props)?l:{},i=null!=(r=null==(n=s.slots)?void 0:n.default)?r:s.slotFn;if(x(i))return i;const u=null==(a=t.payload.column.editRender)?void 0:a.name;if(u){const o=e.renderer.get(u);if(null==o?void 0:o.renderCell)return()=>o.renderCell(t.payload.column.editRender,t.payload)}return()=>h.value})),T=s((()=>{if(t.payload.column.treeNode)return"";const e=t.payload.column.renderWidth;return y(e)&&e>0?f(e-20-2):""}));return()=>l("div",{ref:p,style:{padding:"7px 0",width:T.value,overflow:"hidden"}},[c(b.value,t.payload)])}})},apply(n){function r(t){const o=S(t.uuid);if(!o)return;t.scrollY={enabled:!1},o.reactData.scrollYLoad=!1;const l=function(t){const o=t.internalData.elemStore["main-body-wrapper"];return o?e(o):null}(o);l&&E(o,t,{scrollTop:l.scrollTop})}function a(e){if(!e.uuid)return;const t=$(e.uuid);t&&(e.scrollY=t),setTimeout((()=>r(e)),300)}function s(e){return l(j,{payload:e},null)}n.dataHooks.dataStart.tap(o,a),n.eventHooks.onFilterChange.tap(o,((e,t)=>a(t))),n.eventHooks.onSortChange.tap(o,((e,t)=>a(t))),n.eventHooks.onToggleTreeExpand.tap(o,((e,t)=>a(t))),n.eventHooks.onResizableChange.tap(o,(async({column:e},t)=>{e.editRender&&e.editRender.props&&q(e.editRender.props)&&a(t)})),n.eventHooks.onScroll.tap(o,h(((e,t)=>{if(e.isX)return;const{uuid:o}=t;if(!o)return;const l=S(o);l&&E(l,t,e)}),100,!0,!0)),n.fieldHooks.field.tap(o,(e=>{if(q(e)){e.slots={...e.slots,default:s};const t=e.className,o="variable-height";e.className=t?function(e){return x(t)?[t(e),o]:[t,o]}:o}return e})),n.fieldHooks.fieldList.tap(o,((t,o,{$table:l})=>(o.uuid&&p(t,((t,n)=>{var a,s;if(q(t)){const t=null!=(s=null==(a=o.rowConfig)?void 0:a.height)?s:36,i=H(o.uuid),u=o.cellStyle;if(o.cellStyle=function(e){const o={};if(l.value){const n=Math.max(t,i.getMax(l.value.getRowSeq(e.row)));o.height=`${n}px`}return Object.assign(o,u?x(u)?u(e):u:null)},o.sortableConfig&&o.sortableConfig.enable){const t=o.sortableConfig.onEnd;o.sortableConfig.onEnd=function(l){const n=S(o.uuid);if(n){const{internalData:{elemStore:t}}=n,l=t["main-table-body"];l&&e(l)&&E(n,o,{scrollTop:e(l).scrollTop})}x(t)&&t(l)}}o.scrollY={...o.scrollY,mode:"default"},o.onWheel=function(t){let o=null,l=0,n=!0;return function(r){if(!t.uuid)return;const a=S(t.uuid);if(!a)return;const{internalData:s}=a,{isHover:i}=t.rowConfig||{},{deltaX:u,deltaY:d}=r,{refTableLeftBody:c,refTableRightBody:p,refTableBody:f}=a.getRefMaps(),h=d,g=u,v=h<0,x=e(f),y=x?x.$el:null;if(!y)return;if(v?y.scrollTop<=0:y.scrollTop>=y.scrollHeight-y.clientHeight)return;const b=y.scrollTop+h,I=y.scrollLeft+g;if(b===s.lastScrollTop)return;r.preventDefault(),s.lastScrollTop=b,s.lastScrollLeft=I,s.lastScrollTime=Date.now(),i&&a.clearHoverRow();const T=c.value,w=p.value,R=T?T.$el:null,D=w?w.$el:null,H=Math.min(100,Math.abs(Math.floor(h/2)));n&&(l=y.scrollTop,n=!1),l+=H*(v?-1:1),o&&o(),o=m(y.scrollTop,l,400,(e=>{y.scrollTop=e,R&&(R.scrollTop=e),D&&(D.scrollTop=e)}),"easeOutCubic",(()=>{l=y.scrollTop,n=!0})),Y(a,t,y)}}(o),setTimeout((()=>{F(o.uuid,o.scrollY),r(o)}),300),n()}})),t))),n.setupHooks.setup.tap(o,(e=>{t((()=>{e.value.uuid&&(M(e.value.uuid),C(e.value.uuid),k(e.value.uuid))}))}))}})}export{L as variableHeightRendererPlugin};
1
+ import{unref as e,onBeforeUnmount as t,shallowReactive as o,createVNode as l,defineComponent as n,inject as r,ref as a,computed as s,provide as i,watch as u,onMounted as c,h as d}from"vue";import{traverse as p,widthAppend as f}from"../../../../shared/utils/index.js";import{doAnimation as m}from"../../../../shared/utils/anime.js";import{useThrottleFn as h}from"@vueuse/core";import{promiseTimeout as g}from"@vueuse/shared";import{last as v,isFunction as x,isNumber as y}from"lodash-es";import"../../index.js";import{InjectionIhoTableUUID as b}from"../constants/index.js";import{useUUIDMap as I,isVariableHeightColumn as w}from"../utils/index.js";import{defineTablePlugin as T}from"../hooks/useTablePlugin.js";class D{constructor(){this.records={},this.maxRecords=o(new Map)}set(e,t,o){if(this.records[e]||(this.records[e]={}),this.records[e][t]===o)return;this.records[e][t]=o;const l=Math.max(...Object.values(this.records[e]),0);this.maxRecords.get(e)!==l&&this.maxRecords.set(e,l)}getMax(e){return this.maxRecords.get(e)||0}}const{getItemFromUUID:R,removeItemFromUUID:M}=I((()=>new D),!0),{getItemFromUUID:S,removeItemFromUUID:H,setItemFromUUID:U}=I((()=>null)),{getItemFromUUID:C,removeItemFromUUID:$,setItemFromUUID:k}=I((()=>{}));let F={};function j(t,o,{scrollTop:l=0}){var n,r;const{uuid:a,rowConfig:s={}}=o;if(!a)return;const i=R(a),{oSize:u=0,gt:c=100}=null!=(n=C(a))?n:{},{internalData:d,reactData:p}=t,{scrollYStore:f,elemStore:m,afterFullData:h,fullDataRowIdData:g}=d;if(c>h.length)return;const y=null!=(r=s.height)?r:36,b=m["main-body-wrapper"],I=b?e(b):null;let w=I?Math.max(8,Math.ceil(I.clientHeight/y)+2+u):8;const T=[0];let D=0;if(l&&h.find(((e,o)=>{const n=t.getRowSeq(e),r=(v(T)||0)+Math.max(y,i.getMax(n));if(T.push(r),r>l)return D=Math.max(0,o-u),w+=Math.min(D,u),!0})),D>0&&x(o.spanMethod)){const{spanMethod:e}=o,l={rowspan:1,colspan:1};for(;D>0;){if(!t.getColumns().some(((t,o)=>{const{rowspan:n,colspan:r}=e({column:t,columnIndex:o,$columnIndex:o,row:h[D],rowIndex:D,$rowIndex:D,_rowIndex:D,isHidden:!t.visible,fixed:t.fixed,type:t.type,visibleData:h})||l;if(0===n&&0===r)return D--,!0})))break}}const M=`${T[D]}px`,S=`${h.reduce(((e,o)=>{const l=t.getRowSeq(o);return e+Math.max(y,i.getMax(l))}),0)}px`;["main","left","right"].forEach((t=>{const o=m[`${t}-body-table`],n=o?e(o):null;n&&(n.style.marginTop=M,n.scrollTop=l),["header","body","footer"].forEach((o=>{const l=m[`${t}-${o}-ySpace`],n=l?e(l):null;n&&(n.style.height=S)}))}));const H=Math.min(h.length,D+w);if(f.startIndex===D&&f.endIndex===H)return;f.startIndex=D,f.endIndex=H;const U=h.slice(f.startIndex,f.endIndex);U.forEach(((e,o)=>{const l=t.getRowid(e),n=g[l];n&&(n.$index=o)})),p.tableData.length=0,p.tableData.push(...U)}const Y=h(j,300);function E(){const o="variableHeightRendererPlugin";return T({name:o,vxe(e){F=n({props:{payload:{type:Object,required:!0}},setup(t){const o=r(b),n=r("$xetable"),p=a(),m=R(o),h=s((()=>t.payload.row[t.payload.column.field]));function v(){const{row:e,column:o}=t.payload,l=n.getRowSeq(e);if(!m||null==l||!p.value)return;const r=p.value.clientHeight;m.set(l,o.field,r)}i("updateCellHeight",v),u([()=>t.payload.rowIndex,()=>t.payload.column.field,h,()=>t.payload.column.renderWidth],(async()=>{await g(0),v()})),c((()=>{n&&!S(o)&&U(o,n),v()}));const I=s((()=>{var o,l,n,r,a;const s=null!=(l=null==(o=t.payload.column.editRender)?void 0:o.props)?l:{},i=null!=(r=null==(n=s.slots)?void 0:n.default)?r:s.slotFn;if(x(i))return i;const u=null==(a=t.payload.column.editRender)?void 0:a.name;if(u){const o=e.renderer.get(u);if(null==o?void 0:o.renderCell)return()=>o.renderCell(t.payload.column.editRender,t.payload)}return()=>h.value})),w=s((()=>{if(t.payload.column.treeNode)return"";const e=t.payload.column.renderWidth;return y(e)&&e>0?f(e-20-2):""}));return()=>l("div",{ref:p,style:{padding:"7px 0",width:w.value,overflow:"hidden"}},[d(I.value,t.payload)])}})},apply(n){function r(t){const o=S(t.uuid);if(!o)return;t.scrollY={enabled:!1},o.reactData.scrollYLoad=!1;const l=function(t){const o=t.internalData.elemStore["main-body-wrapper"];return o?e(o):null}(o);l&&j(o,t,{scrollTop:l.scrollTop})}function a(e){if(!e.uuid)return;const t=C(e.uuid);t&&(e.scrollY=t),setTimeout((()=>r(e)),300)}function s(e){return l(F,{payload:e},null)}n.dataHooks.dataStart.tap(o,a),n.eventHooks.onFilterChange.tap(o,((e,t)=>a(t))),n.eventHooks.onSortChange.tap(o,((e,t)=>a(t))),n.eventHooks.onToggleTreeExpand.tap(o,((e,t)=>a(t))),n.eventHooks.onResizableChange.tap(o,(async({column:e},t)=>{e.editRender&&e.editRender.props&&w(e.editRender.props)&&a(t)})),n.eventHooks.onScroll.tap(o,h(((e,t)=>{if(e.isX)return;const{uuid:o}=t;if(!o)return;const l=S(o);l&&j(l,t,e)}),100,!0,!0)),n.fieldHooks.field.tap(o,(e=>{if(w(e)){e.slots={...e.slots,default:s};const t=e.className,o="variable-height";e.className=t?function(e){return x(t)?[t(e),o]:[t,o]}:o}return e})),n.fieldHooks.fieldList.tap(o,((t,o,{$table:l})=>(o.uuid&&p(t,((t,n)=>{var a,s;if(w(t)){const t=null!=(s=null==(a=o.rowConfig)?void 0:a.height)?s:36,i=R(o.uuid),u=o.cellStyle;if(o.cellStyle=function(e){const o={};if(l.value){const n=Math.max(t,i.getMax(l.value.getRowSeq(e.row)));o.height=`${n}px`}return Object.assign(o,u?x(u)?u(e):u:null)},o.sortableConfig&&o.sortableConfig.enable){const t=o.sortableConfig.onEnd;o.sortableConfig.onEnd=function(l){const n=S(o.uuid);if(n){const{internalData:{elemStore:t}}=n,l=t["main-table-body"];l&&e(l)&&j(n,o,{scrollTop:e(l).scrollTop})}x(t)&&t(l)}}o.scrollY={...o.scrollY,mode:"default"},o.onWheel=function(t){let o=null,l=0,n=!0;return function(r){if(!t.uuid)return;const a=S(t.uuid);if(!a)return;const{internalData:s}=a,{isHover:i}=t.rowConfig||{},{deltaX:u,deltaY:c}=r,{refTableLeftBody:d,refTableRightBody:p,refTableBody:f}=a.getRefMaps(),h=c,g=u,v=h<0,x=e(f),y=x?x.$el:null;if(!y)return;if(v?y.scrollTop<=0:y.scrollTop>=y.scrollHeight-y.clientHeight)return;const b=y.scrollTop+h,I=y.scrollLeft+g;if(b===s.lastScrollTop)return;r.preventDefault(),s.lastScrollTop=b,s.lastScrollLeft=I,s.lastScrollTime=Date.now(),i&&a.clearHoverRow();const w=d.value,T=p.value,D=w?w.$el:null,R=T?T.$el:null,M=Math.min(100,Math.abs(Math.floor(h/2)));n&&(l=y.scrollTop,n=!1),l+=M*(v?-1:1),o&&o(),o=m(y.scrollTop,l,400,(e=>{y.scrollTop=e,D&&(D.scrollTop=e),R&&(R.scrollTop=e)}),"easeOutCubic",(()=>{l=y.scrollTop,n=!0})),Y(a,t,y)}}(o),setTimeout((()=>{k(o.uuid,o.scrollY),r(o)}),300),n()}})),t))),n.setupHooks.setup.tap(o,(e=>{t((()=>{e.value.uuid&&(M(e.value.uuid),H(e.value.uuid),$(e.value.uuid))}))}))}})}export{E as variableHeightRendererPlugin};
@@ -0,0 +1 @@
1
+ export declare const VERTICAL_CELL_TYPE = "VERTICAL_CELL_TYPE";
@@ -0,0 +1 @@
1
+ const E="VERTICAL_CELL_TYPE";export{E as VERTICAL_CELL_TYPE};
@@ -1 +1 @@
1
- import{flow as e,method as t,pick as r,isArray as i,mapValues as n}from"lodash-es";import{onBeforeUnmount as o,unref as l}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as s,WIDGET_TYPE as d}from"../../constants/index.js";import{renderHeader as a}from"./renderer.js";import{useUUIDMap as u}from"../../utils/index.js";import{isVerticalTable as c,isVerticalHeader as f,getSpanInfo as m,createVerticalFieldList as p,getFieldListDepth as g,bindHeaderInfoAndFlatten as h,isVerticalBody as v,getHeaderDepthByField as F}from"./utils.js";import{defineTablePlugin as L}from"../../hooks/useTablePlugin.js";function w(){const w="verticalTablePlugin";return L({name:w,vxe(r){function i(e,t){const{row:i,column:o}=t,{originalField:l={}}=i;if(f(o))return a(i,o);const{editRender:s={}}=l,u=s.name||d.DEFAULT,c=r.renderer.get(u);return c?n(c,(r=>r.bind(c,e,t))):{}}r.renderer.add("VERTICAL_TABLE_CELL",{renderCell:e(i,t(["renderCell"])),renderEdit:e(i,t(["renderEdit"]))})},apply(e){const{getItemFromUUID:t,removeItemFromUUID:n,setItemFromUUID:a}=u((()=>({})),!1);e.configHooks.config.tap({name:w,stage:s},(e=>{if(!e.uuid||!c(e))return e;const{uuid:i}=e;return a(i,{}),Reflect.set(window,"__state",t(i)),{uuid:i,showHeader:!1,...r(e,["border","height","verticalConfig","showSeq","size","rowGroupSetting"]),cellClassName({column:e}){const t=f(e);return{"vxe-header--column":t,"vxe-table--header":t}},cellStyle({column:e,row:t}){if(m(t,e).colspan>1)return{textAlign:"center"}},spanMethod:({row:e,column:t})=>m(e,t),editConfig:{...e.editConfig,beforeEditMethod({row:e,column:t}){const{originalField:r={}}=e;if(f(t))return!1;const{editRender:{name:i=d.DEFAULT}={}}=r;return!Reflect.get(d,i)}}}})),e.fieldHooks.fieldList.tap({name:w,stage:s},((e,r,{globProps:n})=>{const{uuid:o}=r;if(!o||!c(r))return e;const l=t(o);return l?(l.originalFieldList=e,i(n.tableData)?l.verticalFieldList=p(e,l.headerDepth=g(e)):[]):e})),e.dataHooks.dataList.tap({name:w,stage:s},((e,r)=>{const{uuid:i}=r;if(!i||!c(r))return e;const n=t(i);if(!n)return e;const{originalFieldList:o=[],headerDepth:l=0}=n,s=h(o,l);return n.verticalData=s.map((t=>new Proxy({},{get(r,i){var n;if("originalField"===i)return t;if(f({field:i}))return t[i];if(v({field:i})){const r=F({field:i});return"seq"===t.type?r+1:null==(n=e[r])?void 0:n[t.field]}return r[i]},set(r,i,n){if(!f({field:i})){const r=F({field:i});r>=0&&e[r]&&(e[r][t.field]=n)}return!0}})))})),e.setupHooks.setup.tap(w,(e=>{o((()=>{const{uuid:t}=l(e)||{};t&&n(t)}))}))}})}export{w as verticalTablePlugin};
1
+ import{flow as e,method as t,pick as r,isArray as n,mapValues as i}from"lodash-es";import{onBeforeUnmount as o,unref as s}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as l,WIDGET_TYPE as d}from"../../constants/index.js";import{VERTICAL_CELL_TYPE as a}from"./constants.js";import{renderHeader as u}from"./renderer.js";import{useUUIDMap as c}from"../../utils/index.js";import{isVerticalTable as f,isVerticalHeader as m,getSpanInfo as p,createVerticalFieldList as g,getFieldListDepth as h,bindHeaderInfoAndFlatten as v,isVerticalBody as b,getHeaderDepthByField as w}from"./utils.js";import{defineTablePlugin as D}from"../../hooks/useTablePlugin.js";const F=["RADIO","SWITCH"];function x(){const x="verticalTablePlugin";return D({name:x,vxe(n){function o(e,t){const{row:o,column:s}=t,{originalField:l={}}=o;if(m(s))return u(o,s);const{editRender:a={}}=l,c=a.name||d.DEFAULT,f=n.renderer.get(c);return f?i(f,(e=>e.bind(f,a,{...t,column:{...l,...r(s,["field"])}}))):{}}n.renderer.add(a,{renderCell:e(o,t(["renderCell"])),renderEdit:e(o,t(["renderEdit"]))})},apply(e){const{getItemFromUUID:t,removeItemFromUUID:i}=c((()=>({})),!1);e.configHooks.config.tap({name:x,stage:l},(e=>{if(!e.uuid||!f(e))return e;const{uuid:n}=e;return Reflect.set(window,"__state",t(n)),{uuid:n,showHeader:!1,...r(e,["border","height","verticalConfig","showSeq","size","rowGroupSetting","keyboardConfig"]),cellClassName({column:e}){const t=m(e);return{"vxe-header--column":t,"vxe-table--header":t}},cellStyle({column:e,row:t}){if(p(t,e).colspan>1)return{textAlign:"center"}},spanMethod:({row:e,column:t})=>p(e,t),editConfig:{...e.editConfig,beforeEditMethod({row:e,column:t}){const{originalField:r={}}=e;if(m(t))return!1;const{editRender:{name:n=d.DEFAULT}={}}=r;return!Object.values(d).concat(F).includes(n)}}}})),e.fieldHooks.fieldList.tap({name:x,stage:l},((e,r,{globProps:i})=>{const{uuid:o}=r;if(!o||!f(r))return e;const s=t(o);return s?(s.originalFieldList=e,n(i.tableData)?s.verticalFieldList=g(i.tableData,s.headerDepth=h(e)):[]):e})),e.dataHooks.dataList.tap({name:x,stage:l},((e,r)=>{const{uuid:n}=r;if(!n||!f(r))return e;const i=t(n);if(!i)return e;const{originalFieldList:o=[],headerDepth:s=0}=i,l=v(o,s);return i.verticalData=l.map((t=>new Proxy({},{get(r,n){var i;if("originalField"===n)return t;if(m({field:n}))return t[n];if(b({field:n})){const r=w({field:n});return"seq"===t.type?r+1:null==(i=e[r])?void 0:i[t.field]}return r[n]},set(r,n,i){if(!m({field:n})){const r=w({field:n});r>=0&&e[r]&&(e[r][t.field]=i)}return!0}})))})),e.setupHooks.setup.tap(x,(e=>{o((()=>{const{uuid:t}=s(e)||{};t&&i(t)}))}))}})}export{x as verticalTablePlugin};
@@ -1 +1 @@
1
- import{traverse as e}from"../../../../../shared/utils/index.js";import{isString as n,pick as r,range as t}from"lodash-es";function i(e){var n;return!!(null==(n=e.verticalConfig)?void 0:n.enable)}function a(e){let n=0;return function e(r,t=0){r.forEach((r=>{r.children?e(r.children,t+1):n=Math.max(n,t)}))}(e),n}function l({field:e}){return!!n(e)&&(null==e?void 0:e.startsWith("header_"))}function o({field:e}){return!!n(e)&&(null==e?void 0:e.startsWith("body_"))}function d({field:e}){var r;return n(e)?+(null!=(r=e.split("_")[1])?r:0):0}function c(n,r){const i=[];return e(n,((e,n,l)=>{e.parent=l,e.children||(!function(e,n){let r=e,i=n;if(!e.parent)return e[`header_${n}`]=e.title,void t(n+1).forEach((r=>{e[`header_${r}_colspan`]=r===n?n+1:0,e[`header_${r}_rowspan`]=r===n?1:0}));for(;r;)e[`header_${i}`]=r.title,e[`header_${i}_rowspan`]=a(r),e[`header_${i}_colspan`]=1,i--,r=r.parent}(e,r),i.push(e))})),i.forEach(((e,n)=>{const r=i[n-1];r&&Object.entries(e).forEach((([n,t])=>{n.match(/^header_(\d+)$/)&&t===r[n]&&(e[`${n}_colspan`]=0,e[`${n}_rowspan`]=0)}))})),i;function a(n){if(!n.children)return 1;let r=0;return e(n.children,(e=>{e.children||r++})),r}}function f(e){return r(e,Object.keys(e).filter((e=>e.startsWith("header_"))))}function u(e,n){var r,t;return l(n)?{rowspan:null!=(r=e[n.field+"_rowspan"])?r:1,colspan:null!=(t=e[n.field+"_colspan"])?t:1}:{colspan:1,rowspan:1}}function h(e,n){return[...t(n+1).map((e=>({field:`header_${e}`,title:`header_${e}`,minWidth:100,fixed:"left"}))),...e.map(((e,n)=>({field:`body_${n}`,title:`body_${n}`,minWidth:100,editRender:{name:"VERTICAL_TABLE_CELL",props:{},enable:!0}})))]}export{c as bindHeaderInfoAndFlatten,h as createVerticalFieldList,a as getFieldListDepth,d as getHeaderDepthByField,u as getSpanInfo,o as isVerticalBody,l as isVerticalHeader,i as isVerticalTable,f as pickHeaderInfo};
1
+ import{traverse as e}from"../../../../../shared/utils/index.js";import{isString as n,pick as r,range as t}from"lodash-es";import{VERTICAL_CELL_TYPE as i}from"./constants.js";function o(e){var n;return!!(null==(n=e.verticalConfig)?void 0:n.enable)}function a(e){let n=0;return function e(r,t=0){r.forEach((r=>{r.children?e(r.children,t+1):n=Math.max(n,t)}))}(e),n}function l({field:e}){return!!n(e)&&(null==e?void 0:e.startsWith("header_"))}function d({field:e}){return!!n(e)&&(null==e?void 0:e.startsWith("body_"))}function c({field:e}){var r;return n(e)?+(null!=(r=e.split("_")[1])?r:0):0}function f(n,r){const i=[];return e(n,((e,n,a)=>{e.parent=a,e.children||(!function(e,n){let r=e,i=n;if(!e.parent)return e[`header_${n}`]=e.title,void t(n+1).forEach((r=>{e[`header_${r}_colspan`]=r===n?n+1:0,e[`header_${r}_rowspan`]=r===n?1:0}));for(;r;)e[`header_${i}`]=r.title,e[`header_${i}_rowspan`]=o(r),e[`header_${i}_colspan`]=1,i--,r=r.parent}(e,r),i.push(e))})),i.forEach(((e,n)=>{const r=i[n-1];r&&Object.entries(e).forEach((([n,t])=>{n.match(/^header_(\d+)$/)&&t===r[n]&&(e[`${n}_colspan`]=0,e[`${n}_rowspan`]=0)}))})),i;function o(n){if(!n.children)return 1;let r=0;return e(n.children,(e=>{e.children||r++})),r}}function s(e){return r(e,Object.keys(e).filter((e=>e.startsWith("header_"))))}function u(e,n){var r,t;return l(n)?{rowspan:null!=(r=e[n.field+"_rowspan"])?r:1,colspan:null!=(t=e[n.field+"_colspan"])?t:1}:{colspan:1,rowspan:1}}function h(e,n){return[...t(n+1).map((e=>({field:`header_${e}`,title:`header_${e}`,minWidth:100,fixed:"left"}))),...e.map(((e,n)=>({field:`body_${n}`,title:`body_${n}`,minWidth:100,editRender:{name:i,props:{},enable:!0}})))]}export{f as bindHeaderInfoAndFlatten,h as createVerticalFieldList,a as getFieldListDepth,c as getHeaderDepthByField,u as getSpanInfo,d as isVerticalBody,l as isVerticalHeader,o as isVerticalTable,s as pickHeaderInfo};
@@ -1,11 +1,12 @@
1
1
  import { AnyObject, ArrayAble, AnyFn, MaybeString, LowCodeTypes, TupleToUnion } from '../../../../shared/types';
2
- import { VxeTableProps, VxeTableDefines, VxeTableInstance, VxeColumnPropTypes, VxeTablePropTypes, VxeTableConstructor } from 'vxe-table';
2
+ import { VxeTableProps, VxeTableDefines, VxeTableInstance, VxeColumnPropTypes, VxeTablePropTypes, VxeTableConstructor, VxeTableMethods } from 'vxe-table';
3
3
  import { VxePagerEventProps } from 'vxe-table/types/pager';
4
4
  import { VxeTableEventProps, VxeTableListeners, VxeTablePrivateMethods } from 'vxe-table/types/table';
5
5
  import { AnnotationItem } from '../../../../components/annotation-edit/src/type';
6
6
  import { IHO_TABLE_STRING_STATUS, IhoTableEventNameTuple, IhoTableRowGroupSequence } from '../../../../components/iho-table/src/constants';
7
7
  import Sortable from 'sortablejs';
8
8
  export * from './pluginType';
9
+ export declare type $VxeTable = VxeTableConstructor & VxeTableMethods & VxeTablePrivateMethods;
9
10
  export interface IhoTableRowGroupItem {
10
11
  groupName?: string;
11
12
  title: string;
@@ -1,9 +1,8 @@
1
- import { AnyObject, ArrayAble, Nullable } from '../../../../shared/types';
1
+ import { AnyObject, Nullable } from '../../../../shared/types';
2
2
  import { MaybeRef } from '@vueuse/core';
3
3
  import { VxeTableDefines, VxeTableInstance } from 'vxe-table';
4
4
  import { VxeGlobalRendererHandles } from 'vxe-table/types/v-x-e-table/renderer';
5
- import { EventListenerToEventName, EventNameToEventListener, IhoTableConfig, IhoTableFieldItem, LowCodeTableFieldItem } from '../../../../components/iho-table';
6
- import { EDITABLE_WIDGET_TYPE } from '../../../../components/iho-table/src/constants';
5
+ import { $VxeTable, EventListenerToEventName, EventNameToEventListener, IhoTableConfig, IhoTableFieldItem, LowCodeTableFieldItem } from '../../../../components/iho-table';
7
6
  export * from './separateMap';
8
7
  export declare function IhoTableLog(message: string): void;
9
8
  export declare function IhoTableWarn(message: string): void;
@@ -45,10 +44,6 @@ export declare const IhoTableStatusHelper: Readonly<{
45
44
  notPositive(value: string | number | undefined | null): boolean;
46
45
  notNegative(value: string | number | undefined | null): boolean;
47
46
  }>;
48
- export declare const createIhoTableClearActivedInterceptor: (type: ArrayAble<EDITABLE_WIDGET_TYPE>, solution: (ele: HTMLElement) => boolean) => ({ $event, column }: {
49
- $event: Event;
50
- column: VxeTableDefines.ColumnInfo;
51
- }) => boolean;
52
47
  export declare function isTransformTreeType(config: IhoTableConfig): boolean;
53
48
  export declare function isRichContent(content: string): content is string;
54
49
  export declare function parseRichContent(richContent: string): any;
@@ -57,3 +52,5 @@ export declare function isCompatibleColumn(field: LowCodeTableFieldItem): number
57
52
  export declare function getTitle(column: VxeTableDefines.ColumnInfo, value?: unknown): string;
58
53
  export declare function isInvalidTime(column: VxeTableDefines.ColumnInfo, newValue: MaybeRef<any>): boolean;
59
54
  export declare function isInvalidDate(column: VxeTableDefines.ColumnInfo, row: AnyObject, newValue: MaybeRef<any>): any;
55
+ export declare function isVariableHeightColumn(field: AnyObject): boolean;
56
+ export declare function isVariableHeightTable($table: $VxeTable): boolean;
@@ -1 +1 @@
1
- import{reactive as e,inject as n,unref as t,toRaw as r,createVNode as o}from"vue";import{jsonParse as i,arrayed as l,findAncestor as u}from"../../../../shared/utils/index.js";import{promiseTimeout as a}from"@vueuse/shared";import{parse as c,isValid as d,compareDesc as s}from"date-fns";import{isNumber as f,isFunction as p,isString as m,isObject as v,isArray as I}from"lodash-es";import{InjectionIhoTableConfig as g,InjectionIhoTableEmits as h,IHO_TABLE_STRING_STATUS as E,IHO_TABLE_NUMBER_STATUS as w,IHO_TABLE_TREE_TYPE as T,InjectionIhoTableUUID as R}from"../constants/index.js";import{getSeparateInfo as S}from"./separateMap.js";export{deleteSeparateInfo,getSeparateInfo,setSeparateInfo}from"./separateMap.js";function C(e){return console.warn(`[IhoTable]: ${e}`)}const F=Object.freeze({getCellType(e){var n;return((null==(n=e.settingObj)?void 0:n.attr)||e.formType||"DEFAULT").toUpperCase()}});function D(){var e,t,r;const o=n(g);return o||C("this function(getRowHeight) only can be used in setup environment"),null!=(r=null==(t=null==(e=null==o?void 0:o.value)?void 0:e.rowConfig)?void 0:t.height)?r:32}function O(e){const n=e.slice(2);return`${n[0].toLowerCase()}${n.slice(1)}`}function P(e){return`on${e[0].toUpperCase()}${e.slice(1)}`}function A(n,t=!0){const r=t?e(new Map):new Map;return{getItemFromUUID:function(e){return r.set(e,r.get(e)||n()).get(e)},setItemFromUUID:function(e,n){r.set(e,n)},removeItemFromUUID:function(e){r.delete(e)}}}async function b(e,n,r,o,i=2){const l=function(){var i;const l=null==(i=t(o))?void 0:i.getColumnByField(e.field);if(!l)return;const u=x(l);return u?p(u.separateWidth)?u.separateWidth({column:l,row:n,rowIndex:r,$table:t(o)}):f(u.separateWidth)?u.separateWidth:l.renderWidth:l.renderWidth}();return f(l)&&l>0?l:i<=0?function(){const n=+e.colWidth;return f(n)?n:64}():(await a(0),b(e,n,r,o,i-1))}function $(e){const o=n(h);function i(){var n;const r=t(e);return{$table:r.$table,value:r.row[r.column.field],row:r.row,column:{...r.column,...null==(n=r.column.editRender)?void 0:n.props},index:r.rowIndex>-1?r.rowIndex:r.$rowIndex}}function l(e={}){o("formChange",{...i(),...r(e)})}function u(e={}){o("formClick",{...i(),...r(e)})}return{emitFormChange:function(){l()},emitFormClick:function(){u()},emitFormChangeWithParams:l,emitFormClickWithParams:u}}function x(e){var n;return null==(n=e.editRender)?void 0:n.props}const N=Object.freeze({createDefaultRenderCell:function(){return function({props:e},{row:t,column:r}){if("bottom"!==(null==e?void 0:e.separatePlacement))return c(t[r.field]);const i=n(R),l=S(i,t);if(!l)return c(t[r.field]);const{originalData:u=t,isLastRow:a}=l;return c(a?u[r.field]:null);function c(e){return[o("span",{title:G(r,e),class:"iho-table__colorAndIcon"},[e])]}}},createRenderEdit:function(e){return function({props:n},t){return e({...t,fieldItem:n||{},...$(t)})}},isEditableColumn(e,n){var t;return!1!==(null==(t=e.editConfig)?void 0:t.showIcon)&&n.editRender&&!1!==n.editRender.enabled},hasFilter(e){if(M(e))return!0;let n=e.fieldSetting;return m(n)&&(n=i(n||"")),v(n)&&((t=n).notParticipatingSearch!==E.POSITIVE&&"manual"===(null==(r=t.mapping)?void 0:r.type));var t,r},hasDateFiler(e){var n;return null==(n=null==e?void 0:e.filterSetting)?void 0:n.daterange}}),V=Object.freeze({isPositive:e=>e===w.POSITIVE||e===E.POSITIVE,isNegative:e=>e===w.NEGATIVE||e===E.NEGATIVE,notPositive:e=>e!==w.POSITIVE&&e!==E.POSITIVE,notNegative:e=>e!==w.NEGATIVE&&e!==E.NEGATIVE}),W=(e,n)=>({$event:t,column:r})=>{var o;if(!l(e).includes(null==(o=r.editRender)?void 0:o.name))return!0;const i=null==t?void 0:t.target;return!v(i)||!u(i,n)};function _(e){return[T.TRANSFORM_WITH_SPAN_METHOD,T.TRANSFORM_TREE_TYPE].includes(`${e.isTree}`)}function U(e){return m(e)&&!!e.match(/^###\{[^{}]+}$/)}function j(e){try{return JSON.parse(e.replace(/^###/,""))}catch(e){return{}}}function y(e,n){if(e.$__SEPARATE||!n.editRender||!n.editRender.props)return e[n.field];const{fieldSetting:t}=n.editRender.props;if(!m(t))return e[n.field];const{mergedFeildExpression:r}=i(t);return r&&m(r)?r.replace(/#{(.+?)}/g,(function(n,t){let r=t?e[t.trim()]:null;U(r)&&(r=j(r).change_text);return r||(null==r?"--":r)})):e[n.field]}const H=["SEARCH","SELECT","RADIO","CHECKBOX"];function M(e){return e.notParticipatingSearch===w.NEGATIVE&&H.includes(F.getCellType(e))&&I(e.options)&&e.options.length}function G(e,n=""){return"tooltip"!==e.showOverflow&&m(n)?n:""}function L(e,n){var r,o,i;n=t(n)||"";const l=null!=(o=null==(r=e.editRender)?void 0:r.props)?o:{},u=c(n,(null==(i=null==l?void 0:l.componentProps)?void 0:i.valueFormat)||"HH:mm",new Date);return!d(u)}function k(e,n,r){var o,i;const l=null!=(i=null==(o=e.editRender)?void 0:o.props)?i:{};return r=t(r)||"",!d(new Date(r))||m(l.connectField)&&n[l.connectField]&&(l.isStartDate&&s(new Date(r),new Date(n[l.connectField]))<0||l.isEndDate&&s(new Date(r),new Date(n[l.connectField]))>0)}export{N as IhoTableRenderHelper,V as IhoTableStatusHelper,F as IhoTableUtils,C as IhoTableWarn,W as createIhoTableClearActivedInterceptor,O as eventListener2EventName,P as eventName2EventListener,b as getColumnRenderWidth,x as getLowCodeFieldFromField,D as getRowHeight,G as getTitle,M as isCompatibleColumn,k as isInvalidDate,L as isInvalidTime,U as isRichContent,_ as isTransformTreeType,y as parseMergeField,j as parseRichContent,$ as useIhoTableFormEvent,A as useUUIDMap};
1
+ import{reactive as e,inject as n,unref as t,toRaw as r,createVNode as o}from"vue";import{jsonParse as i}from"../../../../shared/utils/index.js";import{promiseTimeout as l}from"@vueuse/shared";import{parse as u,isValid as a,compareDesc as c}from"date-fns";import{isNumber as d,isFunction as s,isString as f,isObject as p,isArray as m}from"lodash-es";import{InjectionIhoTableConfig as v,InjectionIhoTableEmits as I,IHO_TABLE_STRING_STATUS as g,IHO_TABLE_NUMBER_STATUS as h,IHO_TABLE_TREE_TYPE as E,EDITABLE_WIDGET_TYPE as w,InjectionIhoTableUUID as T}from"../constants/index.js";import{getSeparateInfo as R}from"./separateMap.js";export{deleteSeparateInfo,getSeparateInfo,setSeparateInfo}from"./separateMap.js";function C(e){return console.warn(`[IhoTable]: ${e}`)}const S=Object.freeze({getCellType(e){var n;return((null==(n=e.settingObj)?void 0:n.attr)||e.formType||"DEFAULT").toUpperCase()}});function F(){var e,t,r;const o=n(v);return o||C("this function(getRowHeight) only can be used in setup environment"),null!=(r=null==(t=null==(e=null==o?void 0:o.value)?void 0:e.rowConfig)?void 0:t.height)?r:32}function D(e){const n=e.slice(2);return`${n[0].toLowerCase()}${n.slice(1)}`}function P(e){return`on${e[0].toUpperCase()}${e.slice(1)}`}function b(n,t=!0){const r=t?e(new Map):new Map;return{getItemFromUUID:function(e){return r.set(e,r.get(e)||n()).get(e)},setItemFromUUID:function(e,n){r.set(e,n)},removeItemFromUUID:function(e){r.delete(e)}}}async function A(e,n,r,o,i=2){const u=function(){var i;const l=null==(i=t(o))?void 0:i.getColumnByField(e.field);if(!l)return;const u=$(l);return u?s(u.separateWidth)?u.separateWidth({column:l,row:n,rowIndex:r,$table:t(o)}):d(u.separateWidth)?u.separateWidth:l.renderWidth:l.renderWidth}();return d(u)&&u>0?u:i<=0?function(){const n=+e.colWidth;return d(n)?n:64}():(await l(0),A(e,n,r,o,i-1))}function O(e){const o=n(I);function i(){var n;const r=t(e);return{$table:r.$table,value:r.row[r.column.field],row:r.row,column:{...r.column,...null==(n=r.column.editRender)?void 0:n.props},index:r.rowIndex>-1?r.rowIndex:r.$rowIndex}}function l(e={}){o("formChange",{...i(),...r(e)})}function u(e={}){o("formClick",{...i(),...r(e)})}return{emitFormChange:function(){l()},emitFormClick:function(){u()},emitFormChangeWithParams:l,emitFormClickWithParams:u}}function $(e){var n;return null==(n=e.editRender)?void 0:n.props}const x=Object.freeze({createDefaultRenderCell:function(){return function({props:e},{row:t,column:r}){if("bottom"!==(null==e?void 0:e.separatePlacement))return c(t[r.field]);const i=n(T),l=R(i,t);if(!l)return c(t[r.field]);const{originalData:u=t,isLastRow:a}=l;return c(a?u[r.field]:null);function c(e){return[o("span",{title:j(r,e),class:"iho-table__colorAndIcon"},[e])]}}},createRenderEdit:function(e){return function({props:n},t){return e({...t,fieldItem:n||{},...O(t)})}},isEditableColumn(e,n){var t;return!1!==(null==(t=e.editConfig)?void 0:t.showIcon)&&n.editRender&&!1!==n.editRender.enabled},hasFilter(e){if(U(e))return!0;let n=e.fieldSetting;return f(n)&&(n=i(n||"")),p(n)&&((t=n).notParticipatingSearch!==g.POSITIVE&&"manual"===(null==(r=t.mapping)?void 0:r.type));var t,r},hasDateFiler(e){var n;return null==(n=null==e?void 0:e.filterSetting)?void 0:n.daterange}}),N=Object.freeze({isPositive:e=>e===h.POSITIVE||e===g.POSITIVE,isNegative:e=>e===h.NEGATIVE||e===g.NEGATIVE,notPositive:e=>e!==h.POSITIVE&&e!==g.POSITIVE,notNegative:e=>e!==h.NEGATIVE&&e!==g.NEGATIVE});function V(e){return[E.TRANSFORM_WITH_SPAN_METHOD,E.TRANSFORM_TREE_TYPE].includes(`${e.isTree}`)}function W(e){return f(e)&&!!e.match(/^###\{[^{}]+}$/)}function _(e){try{return JSON.parse(e.replace(/^###/,""))}catch(e){return{}}}function y(e,n){if(e.$__SEPARATE||!n.editRender||!n.editRender.props)return e[n.field];const{fieldSetting:t}=n.editRender.props;if(!f(t))return e[n.field];const{mergedFeildExpression:r}=i(t);return r&&f(r)?r.replace(/#{(.+?)}/g,(function(n,t){let r=t?e[t.trim()]:null;W(r)&&(r=_(r).change_text);return r||(null==r?"--":r)})):e[n.field]}const H=["SEARCH","SELECT","RADIO","CHECKBOX"];function U(e){return e.notParticipatingSearch===h.NEGATIVE&&H.includes(S.getCellType(e))&&m(e.options)&&e.options.length}function j(e,n=""){return"tooltip"!==e.showOverflow&&f(n)?n:""}function M(e,n){var r,o,i;n=t(n)||"";const l=null!=(o=null==(r=e.editRender)?void 0:r.props)?o:{},c=u(n,(null==(i=null==l?void 0:l.componentProps)?void 0:i.valueFormat)||"HH:mm",new Date);return!a(c)}function G(e,n,r){var o,i;const l=null!=(i=null==(o=e.editRender)?void 0:o.props)?i:{};return r=t(r)||"",!a(new Date(r))||f(l.connectField)&&n[l.connectField]&&(l.isStartDate&&c(new Date(r),new Date(n[l.connectField]))<0||l.isEndDate&&c(new Date(r),new Date(n[l.connectField]))>0)}function L(e){var n,t;return(!0===e.variableHeight||"1"===e.variableHeight)&&(null!=(t=null==(n=e.editRender)?void 0:n.name)?t:S.getCellType(e))!==w.SEPARATE}function k(e){const n=e.internalData.tableFullColumn;return!!m(n)&&n.some((e=>{var n,t;return L(null!=(t=null==(n=e.editRender)?void 0:n.props)?t:{})}))}export{x as IhoTableRenderHelper,N as IhoTableStatusHelper,S as IhoTableUtils,C as IhoTableWarn,D as eventListener2EventName,P as eventName2EventListener,A as getColumnRenderWidth,$ as getLowCodeFieldFromField,F as getRowHeight,j as getTitle,U as isCompatibleColumn,G as isInvalidDate,M as isInvalidTime,W as isRichContent,V as isTransformTreeType,L as isVariableHeightColumn,k as isVariableHeightTable,y as parseMergeField,_ as parseRichContent,O as useIhoTableFormEvent,b as useUUIDMap};
@@ -51,6 +51,7 @@ export * from '../shared/types';
51
51
  export * from '../shared/hooks';
52
52
  export * from '../shared/directive';
53
53
  export * from './guide';
54
+ export * from './drag-scroll';
54
55
  export * from './select-label';
55
56
  export * from './card-reader-sdk';
56
57
  export * from './slider-tree';
@@ -1 +1 @@
1
- import e from"./grid/index.js";export{default as CGrid}from"./grid/index.js";import r from"./big-table/index.js";export{default as CBigTable}from"./big-table/index.js";import o from"./field-set/index.js";export{default as CFieldSet}from"./field-set/index.js";import s from"./button-print/index.js";export{default as CButtonPrint}from"./button-print/index.js";import t from"./select-person/index.js";export{default as CSelectPerson}from"./select-person/index.js";import i,{CLabelFormContent as a}from"./select-label/index.js";export{CLabelFormContent,default as CSelectLabel}from"./select-label/index.js";import d from"./map/index.js";export{default as CMap}from"./map/index.js";import n from"./vod-chunk-upload/index.js";export{default as CVodChunkUpload}from"./vod-chunk-upload/index.js";import{CScaleView as m,CRadio as f,CCheckbox as p,CSelect as l,CDatetime as u}from"./scale-view/index.js";export{CCheckbox,CDatetime,CRadio,CScaleView,CSelect}from"./scale-view/index.js";import c from"./info-header/index.js";export{default as CInfoHeader}from"./info-header/index.js";import x from"./time-line/index.js";export{default as CTimeLine}from"./time-line/index.js";import C from"./base-search/index.js";export{default as CBaseSearch}from"./base-search/index.js";import h from"./quick-search/index.js";export{default as CQuickSearch}from"./quick-search/index.js";import j from"./classification/index.js";export{default as CClassification}from"./classification/index.js";import k from"./bpmn-workflow/index.js";export{default as CBpmnWorkflow}from"./bpmn-workflow/index.js";import b from"./steps-wheel/index.js";export{default as CStepsWheel}from"./steps-wheel/index.js";import S from"./editor/index.js";export{default as CEditor}from"./editor/index.js";import g from"./form-render/index.js";export{default as CFormRender}from"./form-render/index.js";import F from"./fabric-chart/index.js";export{default as CFabricChart}from"./fabric-chart/index.js";import T from"./shortcut-provider/index.js";export{default as CShortcutProvider}from"./shortcut-provider/index.js";import v from"./shortcut-setter/index.js";export{default as CShortcutSetter}from"./shortcut-setter/index.js";import y from"./form-config/index.js";export{default as CFormConfig}from"./form-config/index.js";import P from"./iho-table/index.js";export{default as CIhoTable,useIhoTablePresetPlugins}from"./iho-table/index.js";import D from"./keyboard/index.js";export{default as CKeyboard}from"./keyboard/index.js";import R from"./search-cascader/index.js";export{default as CSearchCascader}from"./search-cascader/index.js";import w from"./recommend-search/index.js";export{default as CRecommendSearch}from"./recommend-search/index.js";import A from"./date-picker/index.js";export{default as CDatePicker}from"./date-picker/index.js";import L from"./time-picker/index.js";export{default as CTimePicker}from"./time-picker/index.js";import B from"./config-provider/index.js";export{default as CConfigProvider}from"./config-provider/index.js";import E from"./picture-clipper/index.js";export{default as CPictureClipper}from"./picture-clipper/index.js";import I from"./table-export-field/index.js";export{default as CTableExportField}from"./table-export-field/index.js";import O from"./expand-field/index.js";export{default as CExpandField}from"./expand-field/index.js";import V from"./biunique-chat/index.js";export{default as CBiuniqueChat}from"./biunique-chat/index.js";import H from"./callback/index.js";export{default as CCallback}from"./callback/index.js";import K from"./slider-tree/index.js";export{default as CSliderTree}from"./slider-tree/index.js";import q from"./body-select/index.js";export{default as CBodySelect}from"./body-select/index.js";import N from"./calendar/index.js";export{default as CCalendar}from"./calendar/index.js";export{default as CInsuranceSDK}from"./card-reader-sdk/src/insuranceSDK.js";export{default as CCardReaderSDK}from"./card-reader-sdk/src/cardReaderSDK.js";export{formatDateRangeInfo,presetValToDateRangestr,presetValToTimestamp}from"./table-filter/src/components/render-widget/helpers/presetValToTimestamp.js";export{DatePresetValEnums,DateRangeInnerValEnums,DateRangeOutDefEnums}from"./table-filter/src/components/render-widget/enums.js";export{useTheme}from"../shared/hooks/useTheme.js";export{useDateTime}from"../shared/hooks/useDateTime.js";export{AsyncQueue,ENTRY_STATE}from"../shared/hooks/useAsyncQueue/index.js";export{presetRequestHandler,useFormAsyncQueue,useFormRequest}from"../shared/hooks/useFormRequest/index.js";export{useLevelSearchCascader}from"../shared/hooks/useLevelSearchCascader.js";export{useSelectAllowModify}from"../shared/hooks/selectHooks/useSelectAllowModify.js";export{useOptionFiltered}from"../shared/hooks/selectHooks/useOptionFiltered.js";export{searchContentMatcher,useSearchContent}from"../shared/hooks/selectHooks/useSearchContent.js";export{useSelectRenders}from"../shared/hooks/selectHooks/useSelectRenders.js";export{useVersion}from"../shared/hooks/useVersion.js";export{vFlexibleResize}from"../shared/directive/flexibleResize.js";export{useGuide}from"./guide/src/useGuide.js";export{default as CAudioSDK}from"./audio-sdk/src/audioSDK.js";export{useAnchor}from"./form-render/src/hooks/useAnchor.js";export{useAutoHidden}from"./form-render/src/hooks/useAutoHidden.js";export{BusinessCollector,useBusinessBinding}from"./form-render/src/hooks/useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./form-render/src/hooks/useChangeContext.js";export{useCommonInjection,useSelectOptionProps}from"./form-render/src/hooks/useCommonInjection.js";export{useCommonLog}from"./form-render/src/hooks/useCommonLog.js";export{useComplexOptions,useComplexOptionsSpan}from"./form-render/src/hooks/useComplexOptions.js";export{useFieldListAdaptor}from"./form-render/src/hooks/useFieldListAdaptor.js";export{useFieldNormalize}from"./form-render/src/hooks/useFieldNormalize.js";export{useFieldVisitor}from"./form-render/src/hooks/useFieldVisitor.js";export{useFormContext}from"./form-render/src/hooks/useFormContext.js";export{useFormDomEvent,useFormExposeEvent}from"./form-render/src/hooks/useFormEvent.js";export{useFormField}from"./form-render/src/hooks/useFormField.js";export{useFormGraph}from"./form-render/src/hooks/useFormGraph.js";export{FormItemDepsCollector,useFormItemDeps}from"./form-render/src/hooks/useFormItemDeps.js";export{useFormRenderLifeCycle}from"./form-render/src/hooks/useFormRenderLifeCycle.js";export{useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./form-render/src/hooks/useFormRenderOptions.js";export{useFormValidator,validateMessageLocale}from"./form-render/src/hooks/useFormValidator.js";export{useLowCodeEvent}from"./form-render/src/hooks/useLowCodeEvent.js";export{useLowCodeReactions}from"./form-render/src/hooks/useLowCodeReactions.js";export{useNuiThemeOverrides}from"./form-render/src/hooks/useNuiThemeOverrides.js";export{useOperationalForm}from"./form-render/src/hooks/useOperationalForm.js";export{usePresetScope}from"./form-render/src/hooks/usePresetScope.js";export{useWordbookSetting,wordbookSettingHandler}from"./form-render/src/hooks/useWordbookSetting.js";export{useNewLowCodeReactions}from"./form-render/src/hooks/useNewLowCodeReactions.js";export{businessDateParser,isIdCard,isMobile,parseAge2Birthday,parseAgeFromContext,parseBirthday,parseIdCard,transformDateFormat}from"./form-render/src/utils/business.js";export{findNextWidget,queryDecoratorByAddress,queryDecoratorByFieldKey,queryInput}from"./form-render/src/utils/dom.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./form-render/src/utils/schema.js";export{combineExtendKey,createInputSlot,createSlot,formRenderLog,getAbsoluteKey,injectOrProvide,isNestedFieldType,isNestedType,mergeDeepProperties,parseNumberFromMaybeString,renderDescOption,splitExtendKey,validateMessageParser}from"./form-render/src/utils/index.js";export{GlobalShortcutProvider,ShortcutManager,useShortcuts}from"./shortcut-provider/src/hooks/useShortcuts.js";export{useShortcutSignature}from"./shortcut-provider/src/hooks/useShortcutSignature.js";export{defineTablePlugin,useTablePlugin}from"./iho-table/src/hooks/useTablePlugin.js";export{useColumnConfigAdaptor}from"./iho-table/src/hooks/useColumnConfigAdaptor.js";export{AbstractConfigHooks,AbstractDataHooks,AbstractDomInsertHooks,AbstractEventHooks,AbstractExposeHooks,AbstractFieldHooks,AbstractSetupHooks}from"./iho-table/src/types/pluginType.js";export{Print}from"./button-print/src/utils/print.js";export{getFileUrl,isIReport,useBrowserPrint}from"./button-print/src/utils/browserPrint.js";export{transformOriginToTree}from"./slider-tree/src/utils/index.js";const M={CGrid:e,CBigTable:r,CFieldSet:o,CButtonPrint:s,CSelectPerson:t,CSelectLabel:i,CLabelFormContent:a,CScaleView:m,CMap:d,CVodChunkUpload:n,CRadio:f,CCheckbox:p,CSelect:l,CDatetime:u,CInfoHeader:c,CTimeLine:x,CBaseSearch:C,CQuickSearch:h,CClassification:j,CBpmnWorkflow:k,CStepsWheel:b,CEditor:S,CFormRender:g,CFabricChart:F,CShortcutProvider:T,CShortcutSetter:v,CFormConfig:y,CIhoTable:P,CKeyboard:D,CSearchCascader:R,CRecommendSearch:w,CDatePicker:A,CTimePicker:L,CConfigProvider:B,CPictureClipper:E,CTableExportField:I,CExpandField:O,CBiuniqueChat:V,CCallback:H,CSliderTree:K,CBodySelect:q,CCalendar:N};var G={install:function(e){Object.values(M).forEach((r=>{r.install(e)}))},...M};export{G as default};
1
+ import e from"./grid/index.js";export{default as CGrid}from"./grid/index.js";import r from"./big-table/index.js";export{default as CBigTable}from"./big-table/index.js";import o from"./field-set/index.js";export{default as CFieldSet}from"./field-set/index.js";import s from"./button-print/index.js";export{default as CButtonPrint}from"./button-print/index.js";import t from"./select-person/index.js";export{default as CSelectPerson}from"./select-person/index.js";import i,{CLabelFormContent as a}from"./select-label/index.js";export{CLabelFormContent,default as CSelectLabel}from"./select-label/index.js";import d from"./map/index.js";export{default as CMap}from"./map/index.js";import n from"./vod-chunk-upload/index.js";export{default as CVodChunkUpload}from"./vod-chunk-upload/index.js";import{CScaleView as m,CRadio as f,CCheckbox as p,CSelect as l,CDatetime as u}from"./scale-view/index.js";export{CCheckbox,CDatetime,CRadio,CScaleView,CSelect}from"./scale-view/index.js";import c from"./info-header/index.js";export{default as CInfoHeader}from"./info-header/index.js";import x from"./time-line/index.js";export{default as CTimeLine}from"./time-line/index.js";import C from"./base-search/index.js";export{default as CBaseSearch}from"./base-search/index.js";import h from"./quick-search/index.js";export{default as CQuickSearch}from"./quick-search/index.js";import j from"./classification/index.js";export{default as CClassification}from"./classification/index.js";import k from"./bpmn-workflow/index.js";export{default as CBpmnWorkflow}from"./bpmn-workflow/index.js";import b from"./steps-wheel/index.js";export{default as CStepsWheel}from"./steps-wheel/index.js";import S from"./editor/index.js";export{default as CEditor}from"./editor/index.js";import g from"./form-render/index.js";export{default as CFormRender}from"./form-render/index.js";import F from"./fabric-chart/index.js";export{default as CFabricChart}from"./fabric-chart/index.js";import T from"./shortcut-provider/index.js";export{default as CShortcutProvider}from"./shortcut-provider/index.js";import v from"./shortcut-setter/index.js";export{default as CShortcutSetter}from"./shortcut-setter/index.js";import y from"./form-config/index.js";export{default as CFormConfig}from"./form-config/index.js";import D from"./iho-table/index.js";export{default as CIhoTable,useIhoTablePresetPlugins}from"./iho-table/index.js";import P from"./keyboard/index.js";export{default as CKeyboard}from"./keyboard/index.js";import R from"./search-cascader/index.js";export{default as CSearchCascader}from"./search-cascader/index.js";import w from"./recommend-search/index.js";export{default as CRecommendSearch}from"./recommend-search/index.js";import A from"./date-picker/index.js";export{default as CDatePicker}from"./date-picker/index.js";import L from"./time-picker/index.js";export{default as CTimePicker}from"./time-picker/index.js";import B from"./config-provider/index.js";export{default as CConfigProvider}from"./config-provider/index.js";import E from"./picture-clipper/index.js";export{default as CPictureClipper}from"./picture-clipper/index.js";import I from"./table-export-field/index.js";export{default as CTableExportField}from"./table-export-field/index.js";import O from"./expand-field/index.js";export{default as CExpandField}from"./expand-field/index.js";import V from"./biunique-chat/index.js";export{default as CBiuniqueChat}from"./biunique-chat/index.js";import H from"./callback/index.js";export{default as CCallback}from"./callback/index.js";import K from"./slider-tree/index.js";export{default as CSliderTree}from"./slider-tree/index.js";import q from"./body-select/index.js";export{default as CBodySelect}from"./body-select/index.js";import N from"./calendar/index.js";export{default as CCalendar}from"./calendar/index.js";export{default as CInsuranceSDK}from"./card-reader-sdk/src/insuranceSDK.js";export{default as CCardReaderSDK}from"./card-reader-sdk/src/cardReaderSDK.js";export{formatDateRangeInfo,presetValToDateRangestr,presetValToTimestamp}from"./table-filter/src/components/render-widget/helpers/presetValToTimestamp.js";export{DatePresetValEnums,DateRangeInnerValEnums,DateRangeOutDefEnums}from"./table-filter/src/components/render-widget/enums.js";export{useTheme}from"../shared/hooks/useTheme.js";export{useDateTime}from"../shared/hooks/useDateTime.js";export{AsyncQueue,ENTRY_STATE}from"../shared/hooks/useAsyncQueue/index.js";export{presetRequestHandler,useFormAsyncQueue,useFormRequest}from"../shared/hooks/useFormRequest/index.js";export{useLevelSearchCascader}from"../shared/hooks/useLevelSearchCascader.js";export{useSelectAllowModify}from"../shared/hooks/selectHooks/useSelectAllowModify.js";export{useOptionFiltered}from"../shared/hooks/selectHooks/useOptionFiltered.js";export{searchContentMatcher,useSearchContent}from"../shared/hooks/selectHooks/useSearchContent.js";export{useSelectRenders}from"../shared/hooks/selectHooks/useSelectRenders.js";export{useVersion}from"../shared/hooks/useVersion.js";export{vFlexibleResize}from"../shared/directive/flexibleResize.js";export{useGuide}from"./guide/src/useGuide.js";export{DragScroll,useDragScroll}from"./drag-scroll/src/index.js";export{default as CAudioSDK}from"./audio-sdk/src/audioSDK.js";export{useAnchor}from"./form-render/src/hooks/useAnchor.js";export{useAutoHidden}from"./form-render/src/hooks/useAutoHidden.js";export{BusinessCollector,useBusinessBinding}from"./form-render/src/hooks/useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./form-render/src/hooks/useChangeContext.js";export{useCommonInjection,useSelectOptionProps}from"./form-render/src/hooks/useCommonInjection.js";export{useCommonLog}from"./form-render/src/hooks/useCommonLog.js";export{useComplexOptions,useComplexOptionsSpan}from"./form-render/src/hooks/useComplexOptions.js";export{useFieldListAdaptor}from"./form-render/src/hooks/useFieldListAdaptor.js";export{useFieldNormalize}from"./form-render/src/hooks/useFieldNormalize.js";export{useFieldVisitor}from"./form-render/src/hooks/useFieldVisitor.js";export{useFormContext}from"./form-render/src/hooks/useFormContext.js";export{useFormDomEvent,useFormExposeEvent}from"./form-render/src/hooks/useFormEvent.js";export{useFormField}from"./form-render/src/hooks/useFormField.js";export{useFormGraph}from"./form-render/src/hooks/useFormGraph.js";export{FormItemDepsCollector,useFormItemDeps}from"./form-render/src/hooks/useFormItemDeps.js";export{useFormRenderLifeCycle}from"./form-render/src/hooks/useFormRenderLifeCycle.js";export{useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./form-render/src/hooks/useFormRenderOptions.js";export{useFormValidator,validateMessageLocale}from"./form-render/src/hooks/useFormValidator.js";export{useLowCodeEvent}from"./form-render/src/hooks/useLowCodeEvent.js";export{useLowCodeReactions}from"./form-render/src/hooks/useLowCodeReactions.js";export{useNuiThemeOverrides}from"./form-render/src/hooks/useNuiThemeOverrides.js";export{useOperationalForm}from"./form-render/src/hooks/useOperationalForm.js";export{usePresetScope}from"./form-render/src/hooks/usePresetScope.js";export{useWordbookSetting,wordbookSettingHandler}from"./form-render/src/hooks/useWordbookSetting.js";export{useNewLowCodeReactions}from"./form-render/src/hooks/useNewLowCodeReactions.js";export{businessDateParser,isIdCard,isMobile,parseAge2Birthday,parseAgeFromContext,parseBirthday,parseIdCard,transformDateFormat}from"./form-render/src/utils/business.js";export{findNextWidget,queryDecoratorByAddress,queryDecoratorByFieldKey,queryInput}from"./form-render/src/utils/dom.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./form-render/src/utils/schema.js";export{combineExtendKey,createInputSlot,createSlot,formRenderLog,getAbsoluteKey,injectOrProvide,isNestedFieldType,isNestedType,mergeDeepProperties,parseNumberFromMaybeString,renderDescOption,splitExtendKey,validateMessageParser}from"./form-render/src/utils/index.js";export{GlobalShortcutProvider,ShortcutManager,useShortcuts}from"./shortcut-provider/src/hooks/useShortcuts.js";export{useShortcutSignature}from"./shortcut-provider/src/hooks/useShortcutSignature.js";export{defineTablePlugin,useTablePlugin}from"./iho-table/src/hooks/useTablePlugin.js";export{useColumnConfigAdaptor}from"./iho-table/src/hooks/useColumnConfigAdaptor.js";export{AbstractConfigHooks,AbstractDataHooks,AbstractDomInsertHooks,AbstractEventHooks,AbstractExposeHooks,AbstractFieldHooks,AbstractSetupHooks}from"./iho-table/src/types/pluginType.js";export{Print}from"./button-print/src/utils/print.js";export{getFileUrl,isIReport,useBrowserPrint}from"./button-print/src/utils/browserPrint.js";export{transformOriginToTree}from"./slider-tree/src/utils/index.js";const M={CGrid:e,CBigTable:r,CFieldSet:o,CButtonPrint:s,CSelectPerson:t,CSelectLabel:i,CLabelFormContent:a,CScaleView:m,CMap:d,CVodChunkUpload:n,CRadio:f,CCheckbox:p,CSelect:l,CDatetime:u,CInfoHeader:c,CTimeLine:x,CBaseSearch:C,CQuickSearch:h,CClassification:j,CBpmnWorkflow:k,CStepsWheel:b,CEditor:S,CFormRender:g,CFabricChart:F,CShortcutProvider:T,CShortcutSetter:v,CFormConfig:y,CIhoTable:D,CKeyboard:P,CSearchCascader:R,CRecommendSearch:w,CDatePicker:A,CTimePicker:L,CConfigProvider:B,CPictureClipper:E,CTableExportField:I,CExpandField:O,CBiuniqueChat:V,CCallback:H,CSliderTree:K,CBodySelect:q,CCalendar:N};var G={install:function(e){Object.values(M).forEach((r=>{r.install(e)}))},...M};export{G as default};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,ref as t,watch as u,createVNode as n,mergeProps as o}from"vue";import{findAncestor as a}from"../../utils/index.js";import{isArray as s,isString as i,isNumber as r,isObject as v}from"lodash-es";import{NInput as c,NDropdown as p}from"naive-ui";import"../../../components/form-render/index.js";import{createInputSlot as m}from"../../../components/form-render/src/utils/index.js";var f=e({props:{value:{type:[Number,String]},onChange:{type:Function,default:()=>({})},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]},precision:{type:Number},whiteList:{type:Array},inputProps:{type:Object},popperProps:{type:Object},slashSymbol:{type:String,default:"/"}},emits:["select"],setup(e,{emit:f}){const d=m(e),h=l((()=>s(e.whiteList)?e.whiteList.reduce(((e,l)=>(i(l)&&e.push({label:l,value:l}),e)),[]):[]));const b=t(),g=l({get:()=>b.value,set:l=>r(l)?b.value=l+"":i(l)?l.endsWith(e.slashSymbol)?b.value=e.slashSymbol:void(b.value=h.value.some((e=>e.label!==l&&e.label.includes(l)))?"":l):void 0});function y(e=-1){const l=r(+e)&&e>=0?+e:null;return new RegExp(`^-?(0|[1-9][0-9]*)?${0===l?"":`(\\.[0-9]${r(l)?`{0,${l}}`:"*"})?`}$`)}u((()=>e.value),(e=>g.value=e),{immediate:!0});const S=y();function j(){if(g.value===e.slashSymbol||function(e,l=!1){return h.value.length&&h.value.some((({value:t})=>l?t.includes(e):t===e))}(g.value))e.onChange(g.value);else if(i(g.value)&&"-"!==g.value)if(S.test(g.value)){const l=g.value.endsWith(".")?g.value.slice(0,-1):g.value;e.onChange(g.value=l)}else g.value=e.value;else g.value=e.value}const w=t(!1),x=t();function $(){w.value=!0}function C(e){var l;if(!e.target)return;const t=e.target;(null==(l=x.value)?void 0:l.$el)&&a(t,(e=>e===x.value.$el))||(w.value=!1)}function F(e,l){var t,u;v(l)&&(g.value=l.value,null==(u=null==(t=x.value)?void 0:t.focus)||u.call(t),f("select",l))}const O=l((()=>y(e.precision)));function P(l){return!(null!=l&&""!==l&&l!==e.slashSymbol&&i(l)&&!l.endsWith(e.slashSymbol))||(!(!h.value.length||!h.value.some((e=>e.label.includes(l))))||O.value.test(l)&&"-."!==l&&!l.startsWith("."))}return()=>{const l=n(c,o({ref:x,value:g.value,"onUpdate:value":e=>g.value=e,"allow-input":P,onBlur:j,onClick:$,onFocus:$},e.inputProps),d.value);return h.value.length?n(p,o({onSelect:F,options:h.value,show:w.value,width:"trigger",onClickoutside:C},e.popperProps),{default:()=>l}):l}}});export{f as default};
1
+ import{defineComponent as e,computed as l,ref as t,watch as u,createVNode as n,mergeProps as o}from"vue";import{findAncestor as a}from"../../utils/index.js";import{isArray as s,isString as i,isNumber as r,isObject as v}from"lodash-es";import{NInput as p,NDropdown as c}from"naive-ui";import"../../../components/form-render/index.js";import{createInputSlot as m}from"../../../components/form-render/src/utils/index.js";var f=e({props:{value:{type:[Number,String]},onChange:{type:Function,default:()=>({})},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]},precision:{type:Number},whiteList:{type:Array},inputProps:{type:Object},popperProps:{type:Object},slashSymbol:{type:String,default:"/"}},emits:["select"],setup(e,{emit:f}){const d=m(e),h=l((()=>s(e.whiteList)?e.whiteList.reduce(((e,l)=>(i(l)&&e.push({label:l,value:l}),e)),[]):[]));function g(e=-1){const l=r(+e)&&e>=0?+e:null;return new RegExp(`^-?(0|[1-9][0-9]*)?${0===l?"":`(\\.[0-9]${r(l)?`{0,${l}}`:"*"})?`}$`)}const y=g(),b=t(),S=l({get:()=>b.value,set:l=>r(l)?b.value=l+"":i(l)?l.endsWith(e.slashSymbol)?b.value=e.slashSymbol:void(b.value=h.value.some((e=>e.label===l))||y.test(l)?l:""):void 0});function j(){if(S.value===e.slashSymbol||function(e,l=!1){return h.value.length&&h.value.some((({value:t})=>l?t.includes(e):t===e))}(S.value))e.onChange(S.value);else if(i(S.value)&&"-"!==S.value)if(y.test(S.value)){const l=S.value.endsWith(".")?S.value.slice(0,-1):S.value;e.onChange(S.value=l)}else S.value=e.value;else S.value=e.value}u((()=>e.value),(e=>S.value=e),{immediate:!0});const w=t(!1),x=t();function $(){w.value=!0}function C(e){var l;if(!e.target)return;const t=e.target;(null==(l=x.value)?void 0:l.$el)&&a(t,(e=>e===x.value.$el))||(w.value=!1)}function F(e,l){var t,u;console.log("option=>",l),v(l)&&(S.value=l.value,null==(u=null==(t=x.value)?void 0:t.focus)||u.call(t),f("select",l))}const O=l((()=>g(e.precision)));function P(l){return!(null!=l&&""!==l&&l!==e.slashSymbol&&i(l)&&!l.endsWith(e.slashSymbol))||(!(!h.value.length||!h.value.some((e=>e.label.includes(l))))||O.value.test(l)&&"-."!==l&&!l.startsWith("."))}return()=>{const l=n(p,o({ref:x,value:S.value,"onUpdate:value":e=>S.value=e,"allow-input":P,onBlur:j,onClick:$,onFocus:$},e.inputProps),d.value);return h.value.length?n(c,o({onSelect:F,options:h.value,show:w.value,width:"trigger",onClickoutside:C},e.popperProps),{default:()=>l}):l}}});export{f as default};
@@ -1 +1 @@
1
- var e="@cnhis-design-vue/shared",i="3.1.57-beta.27",s="index.ts",n={"naive-ui":"^2.30.0",vue:"^3.2.0"},a={"@vicons/ionicons5":"^0.12.0","lodash-es":"^4.17.21",moment:"^2.29.1","video.js":"^7.19.2","videojs-contrib-hls":"^5.15.0",viewerjs:"^1.10.5","xe-utils":"^3.5.4"},d={name:e,version:"3.1.57-beta.27",private:!0,main:"index.ts",peerDependencies:n,dependencies:a};export{d as default,a as dependencies,s as main,e as name,n as peerDependencies,i as version};
1
+ var e="@cnhis-design-vue/shared",i="3.1.57-beta.32",s="index.ts",n={"naive-ui":"^2.30.0",vue:"^3.2.0"},a={"@vicons/ionicons5":"^0.12.0","lodash-es":"^4.17.21",moment:"^2.29.1","video.js":"^7.19.2","videojs-contrib-hls":"^5.15.0",viewerjs:"^1.10.5","xe-utils":"^3.5.4"},d={name:e,version:"3.1.57-beta.32",private:!0,main:"index.ts",peerDependencies:n,dependencies:a};export{d as default,a as dependencies,s as main,e as name,n as peerDependencies,i as version};
@@ -14,8 +14,9 @@ export declare function findAncestor(ele: HTMLElement | null, finder: (ele: HTML
14
14
  export declare function widthAppend(value: string | number, append?: string): string;
15
15
  export declare function targetStringIncludes(arr: string[], target: string): boolean;
16
16
  export declare const jsonParse: import("@vueuse/core").UseMemoizedFn<any, [value: string]>;
17
- export declare function shallowOmit<T, K extends Array<keyof T>>(target: T, keys: K): Omit<T, K[number]>;
17
+ export declare function shallowOmit<T extends object, K extends Array<keyof T>>(target: T, keys: K): Omit<T, K[number]>;
18
18
  export declare function checkInSetupEnv(message?: string): void;
19
19
  export declare function hex2rgba(hex: string, defaultAlpha?: number): readonly [number, number, number, number];
20
20
  export declare function createProviderWrapper(instance?: ComponentInternalInstance): 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<{}>>, {}>;
21
21
  export declare const keywordMatcher: import("@vueuse/core").UseMemoizedFn<boolean, [text: unknown, keyword: unknown]>;
22
+ export declare function isHTMLElement(target: unknown): target is HTMLElement;
@@ -1 +1 @@
1
- import{getCurrentInstance as t,defineComponent as e,provide as n,createVNode as r}from"vue";import{useMemoize as o}from"@vueuse/core";import{isString as i,isObject as s,isNumber as u,isArray as c,isFunction as a}from"lodash-es";import f from"../package.json.js";export{getBindEventSettingTrigger,getDateOperationalFormHandler,getOperationalFormHandler,isConditionsMatchSqlExpression,isMatchLowCodeCondition,isMatchLowCodeConditionsWithSqlExpression,isMatchNewLowCodeConditionsWithSqlExpression}from"./business.js";function l(t,e,n="children",r){let o=!1;function i(){o=!0}!function t(e,n,r="children",s){r=x(r),e=x(e);for(let u=0;u<e.length;u++){if(n(e[u],i,s),o)return;for(let i=0;i<r.length;i++){const s=e[u][r[i]];if(Array.isArray(s)&&t(s,n,r,e[u]),o)return}}}(t,e,n,r)}function d(t,e,n=e.name,r){if(!n)throw new Error(`[CUI]: invalid component name for ${e}`);const{components:o={}}=t._context;o[n]||(!Reflect.get(t,"__cnhis_version")&&s(f)&&Reflect.set(t,"__cnhis_version",f.version),r?r():t.component(n,e))}function p(t){if(!i(t))return;const e=t.match(/[Hms:]+/);return e?e[0]:void 0}function x(t){return Array.isArray(t)?t:[t]}function h(){return`key${"xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){const e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}`}const m=o((function(t){if(!t)return 0;let e="";return[...t].reduce(((t,n)=>{const r=e;return e=n,/[a-z]/.test(n)?t+8.05:/[A-Z]/.test(n)?t+9.13:/\d/.test(n)?t+8.9:/[.,]/.test(n)?t+4.03:/[)(]/.test(n)?t+5.17:/[\u4e00-\u9fa5():,。]/.test(n)?t+13.95:/[-+]/.test(n)?t+7.51:/[/\\]/.test(n)?t+4.11:/%/.test(n)?t+12.68:/‰/.test(n)?t+17.75:" "===n?" "===r?t:t+4:t+6}),0)})),g=Object.seal(Object.create(null));function v(t,e){return function t(e,n){return s(e)?c(e)?e.map((e=>t(e,n))):Object.entries(e).reduce(((e,[r,o])=>(n.includes(r)||(s(o)&&!a(o)?e[r]=t(o,n):e[r]=o),e)),{}):e}(t,e)}function y(t){return Object.values(t).reduce(((t,e)=>Object.assign(t,e)),{})}function w(t,e){if(!t)return t;if(e(t))return t;let n=t.parentElement;for(;n&&!e(n);)n=n.parentElement;return n}function O(t,e="px"){if(u(t))return`${t}${e}`;if(i(t))return t.endsWith(e)?t:`${t}${e}`;throw new Error(`invalid width value ${t}, it need to be a string or number!`)}const b=o((t=>{try{return JSON.parse(t)}catch(t){return{}}}),{getKey:t=>t});function j(t,e){if(!s(t))return t;const n={...t};for(let t=0;t<e.length;t++)Reflect.deleteProperty(n,e[t]);return n}function E(e){if(!t())throw new Error(e||"can't use this hook out of setup environment")}function C(t,e=1){const[n,r,o,i,s]=t.match(/^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i)||[];if(!n)return[255,255,255,e];const c=s&&parseInt(s,16)/255;return[parseInt(r,16),parseInt(o,16),parseInt(i,16),+(u(c)?c.toFixed(2):e)]}function S(t){return e({setup(e,{slots:o}){let i=(null==t?void 0:t.parent)&&Reflect.get(t.parent,"provides");const s=[];for(;i;)Object.entries(i).forEach((([t,e])=>{s.includes(t)||(s.push(t),n(t,e))})),i=Object.getPrototypeOf(i);return()=>{var t;return r("div",null,[null==(t=o.default)?void 0:t.call(o)])}}})}const $=o((function(t,e){return!(!i(e)||!i(t))&&e.split(",").some((e=>e.trim().includes(t)))}),{getKey:(...t)=>t.reduce(((t,e)=>String(t)+"_"+String(e)),"")});export{g as DMZ,x as arrayed,E as checkInSetupEnv,S as createProviderWrapper,v as deepOmit,w as findAncestor,p as generateTimeFormat,m as getStringWidth,C as hex2rgba,b as jsonParse,$ as keywordMatcher,d as safeComponentRegister,y as separateMetaModule,j as shallowOmit,l as traverse,h as uuidGenerator,O as widthAppend};
1
+ import{getCurrentInstance as t,defineComponent as e,provide as n,createVNode as r}from"vue";import{isObject as o}from"@vue/shared";import{useMemoize as i}from"@vueuse/core";import{isString as s,isNumber as u,isArray as c,isFunction as a}from"lodash-es";import f from"../package.json.js";export{getBindEventSettingTrigger,getDateOperationalFormHandler,getOperationalFormHandler,isConditionsMatchSqlExpression,isMatchLowCodeCondition,isMatchLowCodeConditionsWithSqlExpression,isMatchNewLowCodeConditionsWithSqlExpression}from"./business.js";function l(t,e,n="children",r){let o=!1;function i(){o=!0}!function t(e,n,r="children",s){r=x(r),e=x(e);for(let u=0;u<e.length;u++){if(n(e[u],i,s),o)return;for(let i=0;i<r.length;i++){const s=e[u][r[i]];if(Array.isArray(s)&&t(s,n,r,e[u]),o)return}}}(t,e,n,r)}function d(t,e,n=e.name,r){if(!n)throw new Error(`[CUI]: invalid component name for ${e}`);const{components:i={}}=t._context;i[n]||(!Reflect.get(t,"__cnhis_version")&&o(f)&&Reflect.set(t,"__cnhis_version",f.version),r?r():t.component(n,e))}function p(t){if(!s(t))return;const e=t.match(/[Hms:]+/);return e?e[0]:void 0}function x(t){return Array.isArray(t)?t:[t]}function m(){return`key${"xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){const e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}`}const h=i((function(t){if(!t)return 0;let e="";return[...t].reduce(((t,n)=>{const r=e;return e=n,/[a-z]/.test(n)?t+8.05:/[A-Z]/.test(n)?t+9.13:/\d/.test(n)?t+8.9:/[.,]/.test(n)?t+4.03:/[)(]/.test(n)?t+5.17:/[\u4e00-\u9fa5():,。]/.test(n)?t+13.95:/[-+]/.test(n)?t+7.51:/[/\\]/.test(n)?t+4.11:/%/.test(n)?t+12.68:/‰/.test(n)?t+17.75:" "===n?" "===r?t:t+4:t+6}),0)})),g=Object.seal(Object.create(null));function v(t,e){return function t(e,n){return o(e)?c(e)?e.map((e=>t(e,n))):Object.entries(e).reduce(((e,[r,i])=>(n.includes(r)||(o(i)&&!a(i)?e[r]=t(i,n):e[r]=i),e)),{}):e}(t,e)}function y(t){return Object.values(t).reduce(((t,e)=>Object.assign(t,e)),{})}function w(t,e){if(!t)return t;if(e(t))return t;let n=t.parentElement;for(;n&&!e(n);)n=n.parentElement;return n}function E(t,e="px"){if(u(t))return`${t}${e}`;if(s(t))return t.endsWith(e)?t:`${t}${e}`;throw new Error(`invalid width value ${t}, it need to be a string or number!`)}const O=i((t=>{try{return JSON.parse(t)}catch(t){return{}}}),{getKey:t=>t});function b(t,e){if(!o(t))return t;const n={...t};for(let t=0;t<e.length;t++)Reflect.deleteProperty(n,e[t]);return n}function j(e){if(!t())throw new Error(e||"can't use this hook out of setup environment")}function C(t,e=1){const[n,r,o,i,s]=t.match(/^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i)||[];if(!n)return[255,255,255,e];const c=s&&parseInt(s,16)/255;return[parseInt(r,16),parseInt(o,16),parseInt(i,16),+(u(c)?c.toFixed(2):e)]}function S(t){return e({setup(e,{slots:o}){let i=(null==t?void 0:t.parent)&&Reflect.get(t.parent,"provides");const s=[];for(;i;)Object.entries(i).forEach((([t,e])=>{s.includes(t)||(s.push(t),n(t,e))})),i=Object.getPrototypeOf(i);return()=>{var t;return r("div",null,[null==(t=o.default)?void 0:t.call(o)])}}})}const $=i((function(t,e){return!(!s(e)||!s(t))&&e.split(",").some((e=>e.trim().includes(t)))}),{getKey:(...t)=>t.reduce(((t,e)=>String(t)+"_"+String(e)),"")});function _(t){try{return t instanceof HTMLElement}catch(e){return o(t)&&1===t.nodeType&&o(t.style)&&o(t.ownerDocument)}}export{g as DMZ,x as arrayed,j as checkInSetupEnv,S as createProviderWrapper,v as deepOmit,w as findAncestor,p as generateTimeFormat,h as getStringWidth,C as hex2rgba,_ as isHTMLElement,O as jsonParse,$ as keywordMatcher,d as safeComponentRegister,y as separateMetaModule,b as shallowOmit,l as traverse,m as uuidGenerator,E as widthAppend};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
- "version": "3.1.57-beta.27",
3
+ "version": "3.1.57-beta.32",
4
4
  "license": "ISC",
5
5
  "module": "./es/components/index.js",
6
6
  "main": "./es/components/index.js",
@@ -70,5 +70,5 @@
70
70
  "iOS 7",
71
71
  "last 3 iOS versions"
72
72
  ],
73
- "gitHead": "d8a9e865d79748c20eb9a5e62e4f1c7165f77000"
73
+ "gitHead": "a5bb20f1c26022147f0547bec49074add58afd3d"
74
74
  }