cnhis-design-vue 3.2.1-beta.7 → 3.2.1-release.0

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 (65) hide show
  1. package/README.md +87 -87
  2. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  3. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  4. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  5. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  6. package/es/components/button-print/index.d.ts +0 -1
  7. package/es/components/button-print/src/ButtonPrint.vue.d.ts +0 -1
  8. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  9. package/es/components/button-print/src/utils/print.d.ts +3 -15
  10. package/es/components/button-print/src/utils/print.js +1 -1
  11. package/es/components/calendar/index.d.ts +11 -1
  12. package/es/components/calendar/src/Calendar.vue.d.ts +11 -1
  13. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  14. package/es/components/classification/src/index.vue.d.ts +3 -3
  15. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  16. package/es/components/field-set/index.d.ts +1 -1
  17. package/es/components/field-set/src/FieldColor.vue.d.ts +1 -2
  18. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -2
  19. package/es/components/field-set/src/Index.vue.d.ts +1 -1
  20. package/es/components/field-set/src/Index.vue2.js +1 -1
  21. package/es/components/field-set/src/components/Row.vue.d.ts +1 -2
  22. package/es/components/field-set/src/components/Row.vue2.js +1 -1
  23. package/es/components/field-set/src/types/index.d.ts +1 -1
  24. package/es/components/field-set/style/index.css +1 -1
  25. package/es/components/iho-table/src/plugins/headerPlugin.js +1 -1
  26. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin.js +1 -1
  27. package/es/components/iho-table/src/plugins/verticalTablePlugin/index.js +1 -1
  28. package/es/components/iho-table/src/plugins/verticalTablePlugin/types.d.ts +7 -11
  29. package/es/components/iho-table/src/plugins/verticalTablePlugin/utils.d.ts +4 -7
  30. package/es/components/iho-table/src/plugins/verticalTablePlugin/utils.js +1 -1
  31. package/es/components/iho-table/src/utils/index.d.ts +0 -1
  32. package/es/components/iho-table/src/utils/index.js +1 -1
  33. package/es/components/index.css +1 -1
  34. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  35. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  36. package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
  37. package/es/components/steps-wheel/src/StepsWheel.vue2.js +1 -1
  38. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +3 -0
  39. package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -1
  40. package/es/components/table-export-field/style/index.css +1 -1
  41. package/es/env.d.ts +25 -25
  42. package/es/shared/assets/img/failure.png.js +1 -1
  43. package/es/shared/assets/img/no-permission.png.js +1 -1
  44. package/es/shared/assets/img/nodata.png.js +1 -1
  45. package/es/shared/assets/img/notfound.png.js +1 -1
  46. package/es/shared/assets/img/qr.png.js +1 -1
  47. package/es/shared/assets/img/success.png.js +1 -1
  48. package/es/shared/assets/img/video.png.js +1 -1
  49. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  50. package/es/shared/assets/img/xb_big.png.js +1 -1
  51. package/es/shared/assets/img/xb_small.png.js +1 -1
  52. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  53. package/es/shared/package.json.js +1 -1
  54. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  55. package/es/shared/utils/index.js +1 -1
  56. package/es/shared/utils/tapable/index.d.ts +139 -0
  57. package/package.json +2 -3
  58. package/es/components/field-set/src/TableStyle.vue.d.ts +0 -71
  59. package/es/components/field-set/src/TableStyle.vue.js +0 -1
  60. package/es/components/field-set/src/TableStyle.vue2.js +0 -1
  61. package/es/components/table-export-field/style/table-export-field-iconfont.ttf +0 -0
  62. package/es/shared/assets/img/table_style_1.png.js +0 -1
  63. package/es/shared/assets/img/table_style_2.png.js +0 -1
  64. package/es/shared/assets/img/table_style_3.png.js +0 -1
  65. package/es/shared/assets/img/table_style_4.png.js +0 -1
@@ -469,7 +469,6 @@ declare const _default: import("vue").DefineComponent<{
469
469
  ReorderTwoOutline: 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<{}>>, {}>;
470
470
  TrashOutline: 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<{}>>, {}>;
471
471
  CreateOutline: 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<{}>>, {}>;
472
- HelpCircleOutline: 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<{}>>, {}>;
473
472
  isFunction: (value: any) => value is (...args: any[]) => any;
474
473
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("edit" | "updateChecked")[], "edit" | "updateChecked", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
475
474
  element: {
@@ -575,9 +574,9 @@ declare const _default: import("vue").DefineComponent<{
575
574
  requiredDisable: boolean;
576
575
  hide: boolean;
577
576
  }>;
578
- isHighlightRow: boolean;
579
577
  idx: number;
580
578
  isHighlight: boolean;
579
+ isHighlightRow: boolean;
581
580
  }>;
582
581
  isArray: {
583
582
  (value?: any): value is any[];
@@ -59,7 +59,7 @@ declare const _default: import("vue").DefineComponent<{
59
59
  }[]>;
60
60
  onSave: () => void;
61
61
  setRef: (e: any, id: string) => void;
62
- getTableFields: (type?: 'field' | 'fieldColor' | 'highlightRow' | 'tableStyle') => any;
62
+ getTableFields: (type?: 'field' | 'fieldColor' | 'highlightRow') => any;
63
63
  NTabs: any;
64
64
  NTabPane: import("vue").DefineComponent<{
65
65
  readonly tab: PropType<string | number | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
@@ -1 +1 @@
1
- import{defineComponent as e,provide as l,reactive as t,ref as i,computed as o,openBlock as a,createElementBlock as r,normalizeStyle as s,unref as d,createBlock as n,withCtx as f,Fragment as m,renderList as u,resolveDynamicComponent as b,mergeProps as y,createSlots as h,renderSlot as p,h as v}from"vue";import{useThemeVars as g,NTabs as c,NTabPane as F}from"naive-ui";import C from"./FieldSet.vue.js";import w from"./FieldColor.vue.js";import T from"./TableStyle.vue.js";import{InjectionFieldList as L,InjectionQueryWordbookData as S}from"./constants/index.js";var _=e({__name:"Index",props:{showTabNames:{type:Array,default:()=>["field"]},fieldColorList:{type:Array,default:()=>[]},highlightRowColorList:{type:Array,default:()=>[]},fieldList:{type:Object},queryWordbookData:{type:Function}},emits:["save"],setup(e,{expose:_,emit:$}){const j=e;l(L,j.fieldList),l(S,j.queryWordbookData);const k=t({}),x=i(g().value.primaryColor),R=o((()=>[{name:"field",tab:"字段设置",render:()=>v(C,{rowHeight:52})},{name:"fieldColor",tab:"字段颜色",render:()=>v(w,{isFieldColor:!0,defaultList:j.fieldColorList})},{name:"highlightRow",tab:"高亮行",render:()=>v(w,{isFieldColor:!1,defaultList:j.highlightRowColorList})},{name:"tableStyle",tab:"表格样式",render:()=>v(T)}].filter((e=>j.showTabNames.includes(e.name)))));function A(){var e,l,t,i;$("save",{tableFields:null==(e=k.field)?void 0:e.getTableFields(),tableFieldColors:null==(l=k.fieldColor)?void 0:l.getTableFields(),tableHighlightRows:null==(t=k.highlightRow)?void 0:t.getTableFields(),tableStyle:null==(i=k.tableStyle)?void 0:i.getTableFields()})}function q(e,l){k[l]=e}return _({getTableFields:function(e){var l;return null==(l=k[e||"field"])?void 0:l.getTableFields()}}),(e,l)=>(a(),r("div",{class:"c-field-set",style:s({"--row-height":"52px","--primary-color":x.value})},[d(R).length>1?(a(),n(d(c),{key:0,type:"line",naimated:""},{default:f((()=>[(a(!0),r(m,null,u(d(R),(l=>(a(),n(d(F),{key:l.name,name:l.name,tab:l.tab,"display-directive":"show"},{default:f((()=>[(a(),n(b(l.render()),y(e.$attrs,{ref_for:!0,ref:e=>q(e,l.name),onSave:A}),h({_:2},[u(e.$slots,((l,t)=>({name:t,fn:f((()=>[p(e.$slots,t)]))})))]),1040))])),_:2},1032,["name","tab"])))),128))])),_:3})):(a(),n(b(d(R)[0].render()),y({key:1},e.$attrs,{ref:e=>q(e,d(R)[0].name),onSave:A}),h({_:2},[u(e.$slots,((l,t)=>({name:t,fn:f((()=>[p(e.$slots,t)]))})))]),1040))],4))}});export{_ as default};
1
+ import{defineComponent as e,provide as t,reactive as l,ref as i,computed as o,openBlock as a,createElementBlock as r,normalizeStyle as s,unref as d,createBlock as n,withCtx as f,Fragment as m,renderList as u,resolveDynamicComponent as h,mergeProps as p,createSlots as b,renderSlot as v,h as g}from"vue";import{useThemeVars as y,NTabs as c,NTabPane as F}from"naive-ui";import C from"./FieldSet.vue.js";import w from"./FieldColor.vue.js";import{InjectionFieldList as L,InjectionQueryWordbookData as T}from"./constants/index.js";var _=e({__name:"Index",props:{showTabNames:{type:Array,default:()=>["field"]},fieldColorList:{type:Array,default:()=>[]},highlightRowColorList:{type:Array,default:()=>[]},fieldList:{type:Object},queryWordbookData:{type:Function}},emits:["save"],setup(e,{expose:_,emit:$}){const k=e;t(L,k.fieldList),t(T,k.queryWordbookData);const x=l({}),R=i(y().value.primaryColor),j=o((()=>[{name:"field",tab:"字段设置",render:()=>g(C,{rowHeight:52})},{name:"fieldColor",tab:"字段颜色",render:()=>g(w,{isFieldColor:!0,defaultList:k.fieldColorList})},{name:"highlightRow",tab:"高亮行",render:()=>g(w,{isFieldColor:!1,defaultList:k.highlightRowColorList})}].filter((e=>k.showTabNames.includes(e.name)))));function A(){var e,t,l;$("save",{tableFields:null==(e=x.field)?void 0:e.getTableFields(),tableFieldColors:null==(t=x.fieldColor)?void 0:t.getTableFields(),tableHighlightRows:null==(l=x.highlightRow)?void 0:l.getTableFields()})}function S(e,t){x[t]=e}return _({getTableFields:function(e){var t;return null==(t=x[e||"field"])?void 0:t.getTableFields()}}),(e,t)=>(a(),r("div",{class:"c-field-set",style:s({"--row-height":"52px","--primary-color":R.value})},[d(j).length>1?(a(),n(d(c),{key:0,type:"line",naimated:""},{default:f((()=>[(a(!0),r(m,null,u(d(j),(t=>(a(),n(d(F),{key:t.name,name:t.name,tab:t.tab,"display-directive":"show"},{default:f((()=>[(a(),n(h(t.render()),p(e.$attrs,{ref_for:!0,ref:e=>S(e,t.name),onSave:A}),b({_:2},[u(e.$slots,((t,l)=>({name:l,fn:f((()=>[v(e.$slots,l)]))})))]),1040))])),_:2},1032,["name","tab"])))),128))])),_:3})):(a(),n(h(d(j)[0].render()),p({key:1},e.$attrs,{ref:e=>S(e,d(j)[0].name),onSave:A}),b({_:2},[u(e.$slots,((t,l)=>({name:l,fn:f((()=>[v(e.$slots,l)]))})))]),1040))],4))}});export{_ as default};
@@ -176,7 +176,6 @@ declare const _default: import("vue").DefineComponent<{
176
176
  ReorderTwoOutline: 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<{}>>, {}>;
177
177
  TrashOutline: 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<{}>>, {}>;
178
178
  CreateOutline: 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<{}>>, {}>;
179
- HelpCircleOutline: 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<{}>>, {}>;
180
179
  isFunction: (value: any) => value is (...args: any[]) => any;
181
180
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("edit" | "updateChecked")[], "edit" | "updateChecked", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
182
181
  element: {
@@ -282,8 +281,8 @@ declare const _default: import("vue").DefineComponent<{
282
281
  requiredDisable: boolean;
283
282
  hide: boolean;
284
283
  }>;
285
- isHighlightRow: boolean;
286
284
  idx: number;
287
285
  isHighlight: boolean;
286
+ isHighlightRow: boolean;
288
287
  }>;
289
288
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,openBlock as l,createElementBlock as t,Fragment as i,renderList as n,normalizeStyle as o,unref as a,createVNode as r,withCtx as d,createBlock as u,createElementVNode as c,toDisplayString as s,createCommentVNode as f,normalizeClass as p,withDirectives as m,vShow as v,resolveDynamicComponent as y,createTextVNode as h}from"vue";import{NTooltip as g,NIcon as b,NCheckbox as k,NSelect as x,NColorPicker as w,NInput as N,NInputNumber as U,NPopconfirm as S}from"naive-ui";import{setStyle as _,setColorInfo as C,isDisable as H}from"../utils/index.js";import{ReorderTwoOutline as D,HelpCircleOutline as E,CreateOutline as O,TrashOutline as P}from"@vicons/ionicons5";import{isFunction as R,range as j}from"lodash-es";import{COLOR_MAP as M}from"../constants/index.js";const A={class:"row"},F=["title"],B=c("span",null,"拖拽调整顺序",-1);var T=e({__name:"Row",props:{element:{type:Object,default:()=>({})},columns:{type:Array,default:()=>[]},idx:{type:Number,default:1},data:{type:Array,default:()=>[]},isHighlight:{type:Boolean},index:{type:Number,default:0},isHighlightRow:{type:Boolean,default:!1}},emits:["updateChecked","edit"],setup(e,{emit:T}){const V=e,W=[{label:"不固定",value:"NONE"},{label:"左固定",value:"LEFT"},{label:"右固定",value:"RIGHT"}],q=[{label:"不排序",value:"NONE"},{label:"升序",value:"ASC"},{label:"降序",value:"DESC"}],G=[{label:"字体",value:"font"},{label:"背景",value:"background"}],I=Object.entries(M).map((([e])=>e));function L(){V.data.splice(V.index,1)}function z(){T("edit",V.element)}function J(e){switch(e.field){case"fixedWay":return W;case"sortDirection":return q;case"sortPriority":return function(){const e=j(1,V.data.length+1).map((e=>({label:e.toString(),value:e}))),l=V.data.filter((e=>!!e.sortPriority&&e.uuid!==V.element.uuid)).map((e=>e.sortPriority));return e.filter((e=>!l.includes(e.value)))}();case"colorScope":return G;default:return[]}}function K(e){var l;if(1==V.element.defaultMark||"color"===e.type&&V.isHighlightRow)return!0;if("checkbox"===e.type)return"show"===e.field&&e.fieldShowMaxValue?!V.element[e.field]&&(null==(l=V.data.filter((l=>l[e.field])))?void 0:l.length)===e.fieldShowMaxValue:H(V.element,e.field);if("sortPriority"!==e.field)return!1;const{sortDirection:t}=V.element;return!t||"NONE"===t}function Q(e){return["title","result"].includes(e.field)&&V.element.style||{}}return(H,j)=>(l(),t("div",A,[(l(!0),t(i,null,n(e.columns,((n,H)=>{return l(),t(i,{key:H},[n.isShow?(l(),t("span",{key:0,class:"table-cell",title:e.element[n.field],style:o(a(_)(n,H))},["text"===n.type?(l(),t(i,{key:0},[0===H?(l(),t(i,{key:0},[r(a(g),{trigger:"hover"},{trigger:d((()=>[r(a(b),{style:{"margin-right":"5px",top:"2px"},component:a(D)},null,8,["component"])])),default:d((()=>[B])),_:1}),"title"===n.field&&e.element.feildDescribe?(l(),u(a(g),{key:0,trigger:"hover"},{trigger:d((()=>[r(a(b),{style:{"margin-right":"5px",top:"2px"},component:a(E)},null,8,["component"])])),default:d((()=>[c("span",null,s(e.element.feildDescribe),1)])),_:1})):f("v-if",!0)],64)):f("v-if",!0),c("span",{class:p([e.isHighlight&&"title"===n.field?"highlight":""]),style:o(Q(n))},s("seq"===n.field?e.idx:e.element[n.field]),7)],64)):f("v-if",!0),"checkbox"===n.type?m((l(),u(a(k),{key:1,disabled:K(n),checked:e.element[n.field],"onUpdate:checked":[l=>e.element[n.field]=l,e=>function(e,l){T("updateChecked",{checked:e,column:l})}(e,n)]},null,8,["disabled","checked","onUpdate:checked"])),[[v,(M=e.element,A=n.field,"isShowHeaderFilter"===A?M.isConfiguredHeaderFilter&&"0001"!=V.element.id:"0001"!=V.element.id)]]):f("v-if",!0),"select"===n.type?m((l(),u(a(x),{key:2,clearable:"",disabled:K(n),value:e.element[n.field],"onUpdate:value":[l=>e.element[n.field]=l,e=>function(e,l){"sortDirection"===l.field&&"NONE"===e&&(V.element.sortPriority=null),"colorScope"===l.field&&C(V.element)}(e,n)],options:J(n)},null,8,["disabled","value","onUpdate:value","options"])),[[v,"fixedWay"===n.field||"0001"!=e.element.id]]):f("v-if",!0),"color"===n.type?(l(),u(a(w),{key:3,class:"c-field-set__color-picker",clearable:"",disabled:K(n),value:e.element[n.field],"onUpdate:value":[l=>e.element[n.field]=l,j[0]||(j[0]=l=>a(C)(e.element))],"show-preview":"",modes:["hex"],swatches:a(I)},null,8,["disabled","value","onUpdate:value","swatches"])):f("v-if",!0),"input"===n.type?m((l(),u(a(N),{key:4,value:e.element[n.field],"onUpdate:value":l=>e.element[n.field]=l,clearable:""},null,8,["value","onUpdate:value"])),[[v,"0001"!=e.element.id]]):f("v-if",!0),"inputNumber"===n.type?(l(),u(a(U),{key:5,value:e.element[n.field],"onUpdate:value":l=>e.element[n.field]=l},null,8,["value","onUpdate:value"])):f("v-if",!0),"custom"===n.type&&a(R)(n.contentRender)?(l(),u(y((()=>n.contentRender(n,e.element))),{key:6})):f("v-if",!0),"custom"===n.type&&"opt"===n.field&&1!=e.element.defaultMark?(l(),t(i,{key:7},[r(a(g),{trigger:"hover"},{trigger:d((()=>[r(a(b),{component:a(O),onClick:z},null,8,["component"])])),default:d((()=>[h(" 编辑 ")])),_:1}),r(a(S),{onPositiveClick:L},{trigger:d((()=>[r(a(g),{trigger:"hover"},{trigger:d((()=>[r(a(b),{component:a(P)},null,8,["component"])])),default:d((()=>[h(" 删除 ")])),_:1})])),default:d((()=>[h(" 是否确认删除? ")])),_:1})],64)):f("v-if",!0)],12,F)):f("v-if",!0)],64);var M,A})),128))]))}});export{T as default};
1
+ import{defineComponent as e,openBlock as l,createElementBlock as t,Fragment as i,renderList as n,normalizeStyle as a,unref as o,createBlock as r,withCtx as d,createVNode as u,createCommentVNode as c,createElementVNode as s,normalizeClass as f,toDisplayString as m,withDirectives as p,vShow as v,resolveDynamicComponent as y,createTextVNode as h}from"vue";import{NTooltip as g,NIcon as b,NCheckbox as k,NSelect as x,NColorPicker as w,NInput as N,NInputNumber as U,NPopconfirm as S}from"naive-ui";import{setStyle as _,setColorInfo as C,isDisable as H}from"../utils/index.js";import{ReorderTwoOutline as E,CreateOutline as O,TrashOutline as P}from"@vicons/ionicons5";import{isFunction as R,range as j}from"lodash-es";import{COLOR_MAP as D}from"../constants/index.js";const M={class:"row"},A=["title"],F=s("span",null,"拖拽调整顺序",-1);var B=e({__name:"Row",props:{element:{type:Object,default:()=>({})},columns:{type:Array,default:()=>[]},idx:{type:Number,default:1},data:{type:Array,default:()=>[]},isHighlight:{type:Boolean},index:{type:Number,default:0},isHighlightRow:{type:Boolean,default:!1}},emits:["updateChecked","edit"],setup(e,{emit:B}){const T=e,V=[{label:"不固定",value:"NONE"},{label:"左固定",value:"LEFT"},{label:"右固定",value:"RIGHT"}],W=[{label:"不排序",value:"NONE"},{label:"升序",value:"ASC"},{label:"降序",value:"DESC"}],q=[{label:"字体",value:"font"},{label:"背景",value:"background"}],G=Object.entries(D).map((([e])=>e));function I(){T.data.splice(T.index,1)}function L(){B("edit",T.element)}function z(e){switch(e.field){case"fixedWay":return V;case"sortDirection":return W;case"sortPriority":return function(){const e=j(1,T.data.length+1).map((e=>({label:e.toString(),value:e}))),l=T.data.filter((e=>!!e.sortPriority&&e.uuid!==T.element.uuid)).map((e=>e.sortPriority));return e.filter((e=>!l.includes(e.value)))}();case"colorScope":return q;default:return[]}}function J(e){var l;if(1==T.element.defaultMark||"color"===e.type&&T.isHighlightRow)return!0;if("checkbox"===e.type)return"show"===e.field&&e.fieldShowMaxValue?!T.element[e.field]&&(null==(l=T.data.filter((l=>l[e.field])))?void 0:l.length)===e.fieldShowMaxValue:H(T.element,e.field);if("sortPriority"!==e.field)return!1;const{sortDirection:t}=T.element;return!t||"NONE"===t}function K(e){return["title","result"].includes(e.field)&&T.element.style||{}}return(H,j)=>(l(),t("div",M,[(l(!0),t(i,null,n(e.columns,((n,H)=>{return l(),t(i,{key:H},[n.isShow?(l(),t("span",{key:0,class:"table-cell",title:e.element[n.field],style:a(o(_)(n,H))},["text"===n.type?(l(),t(i,{key:0},[0===H?(l(),r(o(g),{key:0,trigger:"hover"},{trigger:d((()=>[u(o(b),{style:{"margin-right":"5px",top:"2px"},component:o(E)},null,8,["component"])])),default:d((()=>[F])),_:1})):c("v-if",!0),s("span",{class:f([e.isHighlight&&"title"===n.field?"highlight":""]),style:a(K(n))},m("seq"===n.field?e.idx:e.element[n.field]),7)],64)):c("v-if",!0),"checkbox"===n.type?p((l(),r(o(k),{key:1,disabled:J(n),checked:e.element[n.field],"onUpdate:checked":[l=>e.element[n.field]=l,e=>function(e,l){B("updateChecked",{checked:e,column:l})}(e,n)]},null,8,["disabled","checked","onUpdate:checked"])),[[v,(D=e.element,M=n.field,"isShowHeaderFilter"===M?D.isConfiguredHeaderFilter&&"0001"!=T.element.id:"0001"!=T.element.id)]]):c("v-if",!0),"select"===n.type?p((l(),r(o(x),{key:2,clearable:"",disabled:J(n),value:e.element[n.field],"onUpdate:value":[l=>e.element[n.field]=l,e=>function(e,l){"sortDirection"===l.field&&"NONE"===e&&(T.element.sortPriority=null),"colorScope"===l.field&&C(T.element)}(e,n)],options:z(n)},null,8,["disabled","value","onUpdate:value","options"])),[[v,"fixedWay"===n.field||"0001"!=e.element.id]]):c("v-if",!0),"color"===n.type?(l(),r(o(w),{key:3,class:"c-field-set__color-picker",clearable:"",disabled:J(n),value:e.element[n.field],"onUpdate:value":[l=>e.element[n.field]=l,j[0]||(j[0]=l=>o(C)(e.element))],"show-preview":"",modes:["hex"],swatches:o(G)},null,8,["disabled","value","onUpdate:value","swatches"])):c("v-if",!0),"input"===n.type?p((l(),r(o(N),{key:4,value:e.element[n.field],"onUpdate:value":l=>e.element[n.field]=l,clearable:""},null,8,["value","onUpdate:value"])),[[v,"0001"!=e.element.id]]):c("v-if",!0),"inputNumber"===n.type?(l(),r(o(U),{key:5,value:e.element[n.field],"onUpdate:value":l=>e.element[n.field]=l},null,8,["value","onUpdate:value"])):c("v-if",!0),"custom"===n.type&&o(R)(n.contentRender)?(l(),r(y((()=>n.contentRender(n,e.element))),{key:6})):c("v-if",!0),"custom"===n.type&&"opt"===n.field&&1!=e.element.defaultMark?(l(),t(i,{key:7},[u(o(g),{trigger:"hover"},{trigger:d((()=>[u(o(b),{component:o(O),onClick:L},null,8,["component"])])),default:d((()=>[h(" 编辑 ")])),_:1}),u(o(S),{onPositiveClick:I},{trigger:d((()=>[u(o(g),{trigger:"hover"},{trigger:d((()=>[u(o(b),{component:o(P)},null,8,["component"])])),default:d((()=>[h(" 删除 ")])),_:1})])),default:d((()=>[h(" 是否确认删除? ")])),_:1})],64)):c("v-if",!0)],12,A)):c("v-if",!0)],64);var D,M})),128))]))}});export{B as default};
@@ -30,7 +30,7 @@ export declare type FieldSetColumnItem = {
30
30
  contentRender?: (column: AnyObject, row: AnyObject) => VNode | String;
31
31
  [key: string]: any;
32
32
  };
33
- export declare type FieldSetTab = 'field' | 'fieldColor' | 'highlightRow' | 'tableStyle';
33
+ export declare type FieldSetTab = 'field' | 'fieldColor' | 'highlightRow';
34
34
  export declare type ColorSetItem = {
35
35
  name: string;
36
36
  columnName?: string;
@@ -1 +1 @@
1
- .c-field-set{height:100%;width:100%}.c-field-set__color-picker .n-color-picker-trigger__value{display:none}.c-field-set .main-wrapper{display:flex;flex-flow:column nowrap;height:100%;width:100%}.c-field-set .main-wrapper__search-wrapper.n-input{margin-bottom:12px;width:50%}.c-field-set .main-wrapper .item{background:#fff}.c-field-set .main-wrapper .item:active{background:#f2f2f2;box-shadow:0 0 10px 0 #d5d5d5}.c-field-set .main-wrapper .item:focus{background-color:#f2f2f2}.c-field-set .main-wrapper .item.disabled{cursor:not-allowed}.c-field-set .main-wrapper .item .row{align-items:center;border-bottom:1px solid #e8e8e8;display:flex;height:var(--row-height);padding:5px 0}.c-field-set .main-wrapper .table-cell{box-sizing:border-box;color:inherit;display:inline-block;padding:0 5px}.c-field-set .main-wrapper .table-cell .highlight{background-color:var(--primary-color);color:#fff}.c-field-set .main-wrapper .table-cell .c-field-set__color-picker{display:block}.c-field-set .main-wrapper__table-header{align-items:center;background:#f2f2f4;border:1px solid #f2f2f2;display:flex;height:52px}.c-field-set .main-wrapper__table-header .n-checkbox.n-checkbox--disabled .n-checkbox__label{color:var(--n-text-color)}.c-field-set .main-wrapper__table-body{flex:1;overflow-y:auto}.c-field-set .main-wrapper__table-footer{border-top:1px solid #d5d5d5;padding:12px 0}.c-field-set .main-wrapper .set-item{padding:10px 0}.c-field-set .main-wrapper .set-item.table-item{border-top:1px solid #e8e8e8;width:50%}.c-field-set .main-wrapper .set-item.table-item h4{font-size:16px;font-weight:400;margin-bottom:12px}.c-field-set .main-wrapper .set-item.table-item .table-style{background:#e5e5e5;border:2px solid #cfcfcf;border-radius:4px;cursor:pointer;margin-bottom:10px;padding:20px 0 0}.c-field-set .main-wrapper .set-item.table-item .table-style .table-bg{background:#fff;border-radius:5px;margin:0 20px 20px;padding:10px}.c-field-set .main-wrapper .set-item.table-item .table-style .table-bg img{width:100%}.c-field-set .main-wrapper .set-item.table-item .table-style__desc{align-items:center;background:#fff;display:flex;padding:10px}.c-field-set .main-wrapper .set-item.table-item .table-style__desc .n-icon{color:var(--c-primary-color);font-size:20px}.c-field-set .main-wrapper .set-item.table-item .table-style__desc .circle{border:1px solid #d5d5d5;border-radius:50%;display:inline-block;height:18px;width:18px}.c-field-set .main-wrapper .set-item.table-item .table-style__desc span{margin-left:5px}.c-field-set .main-wrapper .set-item.table-item .table-style.active{background:#e2ebfa;border:2px solid var(--c-primary-color)}.c-field-set__color-block{display:inline-block;margin-left:20px;position:relative}.c-field-set__color-block:before{background-color:var(--color);border-radius:2px;content:"";height:14px;left:-20px;position:absolute;top:3px;width:14px}.c-field-set__space{width:100%}.c-field-set__space>div:first-child{width:80%}.c-field-set__space .filter-btn{color:var(--c-primary-color);cursor:pointer}.c-field-set__condition .opt-btn{cursor:pointer;display:inline-flex}.c-field-set__condition .condition-wrapper__item{align-items:center;display:flex;margin-top:10px}.c-field-set__condition .condition-wrapper__item .item-index{margin-right:10px}.c-field-set__condition .condition-wrapper__item>.n-date-picker,.c-field-set__condition .condition-wrapper__item>.n-input,.c-field-set__condition .condition-wrapper__item>.n-input-number,.c-field-set__condition .condition-wrapper__item>.n-select{margin-right:10px;width:20%}.c-field-set__condition .sql-expression-wrapper{margin-top:10px}
1
+ .c-field-set{height:100%;width:100%}.c-field-set__color-picker .n-color-picker-trigger__value{display:none}.c-field-set .main-wrapper{display:flex;flex-flow:column nowrap;height:100%;width:100%}.c-field-set .main-wrapper__search-wrapper.n-input{margin-bottom:12px;width:50%}.c-field-set .main-wrapper .item{background:#fff}.c-field-set .main-wrapper .item:active{background:#f2f2f2;box-shadow:0 0 10px 0 #d5d5d5}.c-field-set .main-wrapper .item:focus{background-color:#f2f2f2}.c-field-set .main-wrapper .item.disabled{cursor:not-allowed}.c-field-set .main-wrapper .item .row{align-items:center;border-bottom:1px solid #e8e8e8;display:flex;height:var(--row-height);padding:5px 0}.c-field-set .main-wrapper .table-cell{box-sizing:border-box;color:inherit;display:inline-block;padding:0 5px}.c-field-set .main-wrapper .table-cell .highlight{background-color:var(--primary-color);color:#fff}.c-field-set .main-wrapper .table-cell .c-field-set__color-picker{display:block}.c-field-set .main-wrapper__table-header{align-items:center;background:#f2f2f4;border:1px solid #f2f2f2;display:flex;height:52px}.c-field-set .main-wrapper__table-header .n-checkbox.n-checkbox--disabled .n-checkbox__label{color:var(--n-text-color)}.c-field-set .main-wrapper__table-body{flex:1;overflow-y:auto}.c-field-set .main-wrapper__table-footer{border-top:1px solid #d5d5d5;padding:12px 0}.c-field-set__color-block{display:inline-block;margin-left:20px;position:relative}.c-field-set__color-block:before{background-color:var(--color);border-radius:2px;content:"";height:14px;left:-20px;position:absolute;top:3px;width:14px}.c-field-set__space{width:100%}.c-field-set__space>div:first-child{width:80%}.c-field-set__space .filter-btn{color:var(--c-primary-color);cursor:pointer}.c-field-set__condition .opt-btn{cursor:pointer;display:inline-flex}.c-field-set__condition .condition-wrapper__item{align-items:center;display:flex;margin-top:10px}.c-field-set__condition .condition-wrapper__item .item-index{margin-right:10px}.c-field-set__condition .condition-wrapper__item>.n-date-picker,.c-field-set__condition .condition-wrapper__item>.n-input,.c-field-set__condition .condition-wrapper__item>.n-input-number,.c-field-set__condition .condition-wrapper__item>.n-select{margin-right:10px;width:20%}.c-field-set__condition .sql-expression-wrapper{margin-top:10px}
@@ -1 +1 @@
1
- import{useAttrs as e,onBeforeUnmount as t,inject as l,createVNode as o}from"vue";import{arrayed as n,widthAppend as a}from"../../../../shared/utils/index.js";import{isObject as r,isString as i,isFunction as s}from"lodash-es";import u from"../../../annotation-edit/index.js";import"../../index.js";import{InjectionIhoTableAnnotation as d,InjectionIhoTableConfig as m}from"../constants/index.js";import{getLowCodeFieldFromField as h,IhoTableRenderHelper as c}from"../utils/index.js";import{defineTablePlugin as p}from"../hooks/useTablePlugin.js";function f(){const f="headerPlugin";return p({name:f,apply(p){let v=null;p.setupHooks.setup.tap(f,(()=>{v=e(),t((()=>{v=null}))})),p.fieldHooks.field.tap(f,(e=>{var t;const p=null==(t=e.slots)?void 0:t.header;return e.slots={...e.slots,header:t=>function(e,t,h){const p=l(d),f=l(m),x=l("$xetable"),b=e.column||{},j=r(null==p?void 0:p.value)&&!1!==t.annotation,g=c.isEditableColumn(f.value,b),w=c.hasFilter(t)||c.hasDateFiler(t),W=c.hasTitlePrefix(t),k=i(h)?h:s(h)?h(e):null;let y=!1;if(f.value){const e=f.value.editRules&&f.value.editRules[b.field];e&&(y=n(e).some((e=>e.required)))}const D=f.value.border?Math.max(2,Math.ceil(x.reactData.scrollbarWidth/x.reactData.tableColumn.length)):1,M=a(Math.max(0,b.renderWidth-20-D-(y?14:0)-(j?18:0)-(w?23:0)-(g?22:0)-(W?20:0)-(b.sortable?23:0)));return o("section",{class:"iho-table__headerWrapper"},[o("section",{style:{width:M}},[null!=k?k:o("div",{style:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},[function(){const e=b.title,t=/\\n|\n|\r/g;if(!t.test(e))return e;const l=e.replace(t,"<br>").split("<br>");return l.map(((e,t)=>[e,t===l.length-1?null:o("br",null,null)]))}()])]),j?o(u,{modelValue:p.value[b.field],"onUpdate:modelValue":e=>p.value[b.field]=e,shortcuts:v&&(v["annotation-shortcuts"]||v.annotationShortcuts)||[]},null):null])}(t,h(e),p)},e}))}})}export{f as default};
1
+ import{useAttrs as e,onBeforeUnmount as t,inject as l,createVNode as o}from"vue";import{arrayed as n,widthAppend as a}from"../../../../shared/utils/index.js";import{isObject as r,isString as i,isFunction as s}from"lodash-es";import u from"../../../annotation-edit/index.js";import"../../index.js";import{InjectionIhoTableAnnotation as d,InjectionIhoTableConfig as m}from"../constants/index.js";import{getLowCodeFieldFromField as c,IhoTableRenderHelper as h}from"../utils/index.js";import{defineTablePlugin as p}from"../hooks/useTablePlugin.js";function f(){const f="headerPlugin";return p({name:f,apply(p){let v=null;p.setupHooks.setup.tap(f,(()=>{v=e(),t((()=>{v=null}))})),p.fieldHooks.field.tap(f,(e=>{var t;const p=null==(t=e.slots)?void 0:t.header;return e.slots={...e.slots,header:t=>function(e,t,c){var p;const f=l(d),x=l(m),b=l("$xetable"),j=e.column||{},g=r(null==f?void 0:f.value)&&!1!==t.annotation,w=h.isEditableColumn(x.value,j),W=h.hasFilter(t)||h.hasDateFiler(t),k=null==(p=t.titlePrefix)?void 0:p.content,y=i(c)?c:s(c)?c(e):null;let D=!1;if(x.value){const e=x.value.editRules&&x.value.editRules[j.field];e&&(D=n(e).some((e=>e.required)))}const M=x.value.border?Math.max(2,Math.ceil(b.reactData.scrollbarWidth/b.reactData.tableColumn.length)):1,P=a(Math.max(0,j.renderWidth-20-M-(D?14:0)-(g?18:0)-(W?23:0)-(w?22:0)-(k?20:0)-(j.sortable?23:0)));return o("section",{class:"iho-table__headerWrapper"},[o("section",{style:{width:P}},[null!=y?y:o("div",{style:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},[function(){const e=j.title,t=/\\n|\n|\r/g;if(!t.test(e))return e;const l=e.replace(t,"<br>").split("<br>");return l.map(((e,t)=>[e,t===l.length-1?null:o("br",null,null)]))}()])]),g?o(u,{modelValue:f.value[j.field],"onUpdate:modelValue":e=>f.value[j.field]=e,shortcuts:v&&(v["annotation-shortcuts"]||v.annotationShortcuts)||[]},null):null])}(t,c(e),p)},e}))}})}export{f as default};
@@ -1 +1 @@
1
- import{isObject as e,isFunction as t,cloneDeep as i}from"lodash-es";import{toRaw as l,h as o}from"vue";import{HIGHEST_PRIORITY as s,IHO_TABLE_FIXED_STATUS as n,WIDGET_TYPE as r}from"../constants/index.js";import{defineTablePlugin as d}from"../hooks/useTablePlugin.js";import{getDefaultValue as a}from"./rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";import{IhoTableStatusHelper as f,IhoTableUtils as c,IhoTableRenderHelper as m}from"../utils/index.js";function p(){const p="lowCodeFieldAdaptorPlugin";return d({name:p,apply(d){d.fieldHooks.field.tap({name:p,stage:s},((s,d,p)=>{const u=s,b={className:u.bold?"iho-table__boldCell":"",field:u.columnName,showOverflow:"ellipsis",visible:f.notNegative(u.isShow),minWidth:u.colWidth,sortable:f.isPositive(u.isSort),fixed:n[u.isFixed],...u,title:u.alias||u.title};return function(e,i){const l={default:i.slotFn,header:i.headerSlotFn,edit:i.editSlotFn,footer:i.footerSlotFn,...i.slots};if(t(i.checkEditStatus)){const{default:e}=l;t(e)&&(l.default=t=>i.checkEditStatus(t)?e(t):[o("span",null,a(t.row,t.column.editRender.props))])}e.slots=l}(b,u),function(o,s,n){var d,a,p;const u=i(l(s));u.componentProps={size:"mini"===n.size?"small":n.size,...u.componentProps},n.forceClearable&&(u.componentProps.clearable=!0);o.editRender={name:c.getCellType(s),...o.editRender,props:u},o.editRender.enabled=!Reflect.get(r,o.editRender.name),!o.editRender.enabled&&t(null==(d=o.slots)?void 0:d.default)&&(o.editRender.enabled=t(null==(a=o.slots)?void 0:a.edit));if(!e(s.settingObj))return;Reflect.has(s.settingObj,"isHide")&&(o.visible=o.visible&&f.notPositive(s.settingObj.isHide));m.hasTitlePrefix(s)&&(o.titlePrefix={content:(null==(p=s.titlePrefix)?void 0:p.content)||s.settingObj.feildDescribe})}(b,u,p),b})),d.fieldHooks.field.tap({name:p+"After",stage:1e3},(t=>(e(t.slots)&&Object.entries(t.slots).forEach((([e,i])=>{null==i&&Reflect.deleteProperty(t.slots,e)})),t)))}})}export{p as lowCodeFieldAdaptorPlugin};
1
+ import{isObject as e,isFunction as t,cloneDeep as i}from"lodash-es";import{toRaw as o,h as l}from"vue";import{HIGHEST_PRIORITY as s,IHO_TABLE_FIXED_STATUS as n,WIDGET_TYPE as d}from"../constants/index.js";import{defineTablePlugin as r}from"../hooks/useTablePlugin.js";import{getDefaultValue as a}from"./rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";import{IhoTableStatusHelper as f,IhoTableUtils as c}from"../utils/index.js";function m(){const m="lowCodeFieldAdaptorPlugin";return r({name:m,apply(r){r.fieldHooks.field.tap({name:m,stage:s},((s,r,m)=>{const p=s,u={className:p.bold?"iho-table__boldCell":"",field:p.columnName,showOverflow:"ellipsis",visible:f.notNegative(p.isShow),minWidth:p.colWidth,sortable:f.isPositive(p.isSort),fixed:n[p.isFixed],...p,title:p.alias||p.title};return function(e,i){const o={default:i.slotFn,header:i.headerSlotFn,edit:i.editSlotFn,footer:i.footerSlotFn,...i.slots};if(t(i.checkEditStatus)){const{default:e}=o;t(e)&&(o.default=t=>i.checkEditStatus(t)?e(t):[l("span",null,a(t.row,t.column.editRender.props))])}e.slots=o}(u,p),function(l,s,n){var r,a;const m=i(o(s));m.componentProps={size:"mini"===n.size?"small":n.size,...m.componentProps},n.forceClearable&&(m.componentProps.clearable=!0);l.editRender={name:c.getCellType(s),...l.editRender,props:m},l.editRender.enabled=!Reflect.get(d,l.editRender.name),!l.editRender.enabled&&t(null==(r=l.slots)?void 0:r.default)&&(l.editRender.enabled=t(null==(a=l.slots)?void 0:a.edit));if(!e(s.settingObj))return;Reflect.has(s.settingObj,"isHide")&&(l.visible=l.visible&&f.notPositive(s.settingObj.isHide))}(u,p,m),u})),r.fieldHooks.field.tap({name:m+"After",stage:1e3},(t=>(e(t.slots)&&Object.entries(t.slots).forEach((([e,i])=>{null==i&&Reflect.deleteProperty(t.slots,e)})),t)))}})}export{m as lowCodeFieldAdaptorPlugin};
@@ -1 +1 @@
1
- import{useThrottleFn as e}from"@vueuse/core";import{promiseTimeout as o}from"@vueuse/shared";import{pick as r,property as n,isArray as t,isFunction as i}from"lodash-es";import{onBeforeUnmount as l,unref as a}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as s,WIDGET_TYPE as d}from"../../constants/index.js";import{useUUIDMap as u}from"../../utils/index.js";import{VERTICAL_CELL_TYPE as c}from"./constants.js";import{renderHeader as f}from"./renderer.js";import{isVerticalTable as g,isVerticalHeader as m,getSpanInfo as p,getHeaderDepthByField as v,getVerticalInfoFromEvent as w,createVerticalFieldList as b,getFieldListDepth as h,bindHeaderInfoAndFlatten as x,isVerticalBody as C}from"./utils.js";import{defineTablePlugin as D}from"../../hooks/useTablePlugin.js";const y=["RADIO","SWITCH"];function R(){const R="verticalTablePlugin",{getItemFromUUID:j,removeItemFromUUID:I}=u((()=>({})));return D({name:R,vxe(e){function o(o){return(r,t)=>{var l,a;const{row:s,column:u}=t;if(m(u.field))return f(s,u);const c=v(u.field),g=n(`originalData.${c}`)(s),p=n("originalField")(s),{originalField:{editRender:w={},slots:b={}}={}}=s,h={$table:t.$table,row:g,rowIndex:c,$rowIndex:c,column:p,columnIndex:t.rowIndex,$columnIndex:t.rowIndex,fixed:p.fixed,isHidden:t.isHidden,rowid:t.rowid,type:p.type};if(i(b[o]))return b[o](h);if("seq"===h.type)return c+1;const x=w.name||d.DEFAULT,C=e.renderer.get(x);return C?"default"===o?null==(l=C.renderCell)?void 0:l.call(C,w,h):null==(a=C.renderEdit)?void 0:a.call(C,w,h):{}}}e.renderer.add(c,{renderCell:o("default"),renderEdit:o("edit")})},apply(i){i.configHooks.config.tap({name:R,stage:s},(t=>{if(!t.uuid||!g(t))return t;const{uuid:i}=t,l=j(i);return l.originalTableConfig=t,Reflect.set(window,"__state",l),{uuid:i,showHeader:!1,...r(t,["border","height","verticalConfig","showSeq","size","rowGroupSetting","keyboardConfig"]),cellClassName({column:e}){const o=m(e.field);return{"vxe-header--column":o,"vxe-table--header":o,[e.field]:!0}},cellStyle({column:e,row:o}){const r={};if(p(o,e).colspan>1&&Object.assign(r,{textAlign:"center"}),!m(e.field)){const o=v(e.field),{originalData:n=[]}=l;n[o]===l.hoveringRow&&Object.assign(r,{backgroundColor:"var(--c-hover-color)"}),n[o]===l.currentRow&&Object.assign(r,{backgroundColor:"var(--c-primary-color-opacity2)"})}return r},spanMethod:({row:e,column:o})=>p(e,o),editConfig:{...t.editConfig,beforeEditMethod({row:e,column:o}){var r;const{originalField:n={}}=e;if(m(o.field))return!1;const{editRender:{name:t=d.DEFAULT}={}}=n;return!Object.values(d).concat(y).includes(t)&&(!(null==(r=n.slots)?void 0:r.default)||!!n.slots.edit)}},onCellClick({column:e}){if(m(e.field))return;const{originalData:o=[]}=l,r=o[v(e.field)];l.currentRow=!1!==n("originalTableConfig.rowConfig.clickToCancel")(l)&&l.currentRow===r?null:r},onMousemove:e((e=>{var o,r;const n=w(e);if(!n||"body"!==n.type)return l.hoveringRow=null;l.hoveringRow=null!=(r=null==(o=l.originalData)?void 0:o[n.sequence])?r:null}),100),async onMouseleave(){await o(101),l.hoveringRow=null},async onScroll(){await o(101),l.hoveringRow=null}}})),i.fieldHooks.fieldList.tap({name:R,stage:s},((e,o,{globProps:r})=>{const{uuid:n}=o;if(!n||!g(o))return e;const i=j(n);return i?(i.originalFieldList=e,t(r.tableData)?i.verticalFieldList=b(r.tableData,i.headerDepth=h(e)):[]):e})),i.dataHooks.dataList.tap({name:R,stage:s},((e,o)=>{const{uuid:r}=o;if(!r||!g(o))return e;const n=j(r);if(!n)return e;n.originalData=e;const{originalFieldList:t=[],headerDepth:i=0}=n;return n.verticalData=x(t,i).map((o=>function(e,o){return new Proxy({},{get(r,n){var t;if("originalField"===n)return e;if("originalData"===n)return o;if(m(n))return e[n];if(C(n)){const r=v(n);return"seq"===e.type?r+1:null==(t=o[r])?void 0:t[e.field]}},set(r,n,t){if(!m(n)){const r=v(n);r>=0&&o[r]&&(o[r][e.field]=t)}return!0}})}(o,e)))})),i.setupHooks.setup.tap(R,(e=>{l((()=>{const{uuid:o}=a(e)||{};o&&I(o)}))})),i.exposeHooks.expose.tap(R,(e=>Object.assign(e,{verticalTable:{insertRow(){}}})))}})}export{R 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,12 +1,8 @@
1
1
  import { AnyObject } from '../../../../../shared/types';
2
- import { IhoTableConfig, IhoTableFieldItem } from '../../../../../components/iho-table';
3
- export declare type IhoTableVerticalState = Partial<{
4
- originalTableConfig: IhoTableConfig;
5
- originalFieldList: IhoTableFieldItem[];
6
- originalData: AnyObject[];
7
- verticalFieldList: IhoTableFieldItem[];
8
- verticalData: AnyObject[];
9
- headerDepth: number;
10
- currentRow: AnyObject | null;
11
- hoveringRow: AnyObject | null;
12
- }>;
2
+ import { IhoTableFieldItem } from '../../../../../components/iho-table';
3
+ export declare type IhoTableVerticalState = {
4
+ originalFieldList?: IhoTableFieldItem[];
5
+ verticalFieldList?: IhoTableFieldItem[];
6
+ verticalData?: AnyObject[];
7
+ headerDepth?: number;
8
+ };
@@ -3,16 +3,13 @@ import { VxeTableDefines } from 'vxe-table';
3
3
  import { IhoTableConfig, IhoTableFieldItem } from '../../../../../components/iho-table';
4
4
  export declare function isVerticalTable(tableConfig: IhoTableConfig): boolean;
5
5
  export declare function getFieldListDepth(fieldList: IhoTableFieldItem[]): number;
6
- export declare function isVerticalHeader(field: string): boolean;
7
- export declare function isVerticalBody(field: string): boolean;
8
- export declare function getHeaderDepthByField(field: string): number;
6
+ export declare function isVerticalHeader({ field }: IhoTableFieldItem): boolean;
7
+ export declare function isVerticalBody({ field }: IhoTableFieldItem): boolean;
8
+ export declare function getHeaderDepthByField({ field }: IhoTableFieldItem): number;
9
9
  export declare function bindHeaderInfoAndFlatten(fieldList: IhoTableFieldItem[], depth: number): IhoTableFieldItem[];
10
+ export declare function pickHeaderInfo(fieldItem: IhoTableFieldItem): Pick<IhoTableFieldItem, string>;
10
11
  export declare function getSpanInfo(row: AnyObject, column: VxeTableDefines.ColumnInfo): {
11
12
  rowspan: any;
12
13
  colspan: any;
13
14
  };
14
15
  export declare function createVerticalFieldList(tableData: AnyObject[], headerDepth: number): IhoTableFieldItem[];
15
- export declare function getVerticalInfoFromEvent(event: MouseEvent): {
16
- type: string;
17
- sequence: number;
18
- } | undefined;
@@ -1 +1 @@
1
- import{traverse as n,findAncestor as e}from"../../../../../shared/utils/index.js";import{isString as t,range as r}from"lodash-es";import{VERTICAL_CELL_TYPE as i}from"./constants.js";function o(n){var e;return!!(null==(e=n.verticalConfig)?void 0:e.enable)}function a(n){let e=0;return function n(t,r=0){t.forEach((t=>{t.children?n(t.children,r+1):e=Math.max(e,r)}))}(n),e}function c(n){return!!t(n)&&n.startsWith("header_")}function l(n){return!!t(n)&&n.startsWith("body_")}function u(n){var e;return t(n)?+(null!=(e=n.split("_")[1])?e:0):0}function s(e,t){const i=[];return n(e,((n,e,a)=>{n.parent=a,n.children||(!function(n,e){let t=n,i=e;if(!n.parent)return n[`header_${e}`]=n.title,void r(e+1).forEach((t=>{n[`header_${t}_colspan`]=t===e?e+1:0,n[`header_${t}_rowspan`]=t===e?1:0}));for(;t;)n[`header_${i}`]=t.title,n[`header_${i}_rowspan`]=o(t),n[`header_${i}_colspan`]=1,i--,t=t.parent}(n,t),i.push(n))})),i.forEach(((n,e)=>{const t=i[e-1];t&&Object.entries(n).forEach((([e,r])=>{e.match(/^header_(\d+)$/)&&r===t[e]&&(n[`${e}_colspan`]=0,n[`${e}_rowspan`]=0)}))})),i;function o(e){if(!e.children)return 1;let t=0;return n(e.children,(n=>{n.children||t++})),t}}function d(n,e){var t,r;return c(e.field)?{rowspan:null!=(t=n[e.field+"_rowspan"])?t:1,colspan:null!=(r=n[e.field+"_colspan"])?r:1}:{colspan:1,rowspan:1}}const f=({cell:n}={})=>{const e=n&&n.querySelector("input,.n-input__input-el");return e&&e.click(),e};function p(n,e){return[...r(e+1).map((n=>({field:`header_${n}`,title:`header_${n}`,minWidth:120,fixed:"left"}))),...n.map(((n,e)=>({field:`body_${e}`,title:`body_${e}`,minWidth:120,editRender:{name:i,props:{},enable:!0,autofocus:f}})))]}function h(n){const t=e(n.target,(n=>"TD"===n.tagName));if(!t)return;const r=t.className.match(/(body|header)_(\d+)/);if(!r)return;const[,i,o]=r;return{type:i,sequence:+o}}f.toString=()=>"input,.n-input__input-el";export{s as bindHeaderInfoAndFlatten,p as createVerticalFieldList,a as getFieldListDepth,u as getHeaderDepthByField,d as getSpanInfo,h as getVerticalInfoFromEvent,l as isVerticalBody,c as isVerticalHeader,o as isVerticalTable};
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};
@@ -37,7 +37,6 @@ export declare const IhoTableRenderHelper: Readonly<{
37
37
  isEditableColumn(config: IhoTableConfig, column: IhoTableFieldItem): boolean | undefined;
38
38
  hasFilter(lowCodeField: LowCodeTableFieldItem): boolean;
39
39
  hasDateFiler(lowCodeField: LowCodeTableFieldItem): boolean | undefined;
40
- hasTitlePrefix(lowCodeField: LowCodeTableFieldItem): unknown;
41
40
  }>;
42
41
  export declare const IhoTableStatusHelper: Readonly<{
43
42
  isPositive(value: string | number | undefined | null): 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}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 g,IHO_TABLE_STRING_STATUS as h,IHO_TABLE_NUMBER_STATUS as I,IHO_TABLE_TREE_TYPE as E,EDITABLE_WIDGET_TYPE as T,InjectionIhoTableUUID as w}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 O(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=x(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),O(e,n,r,o,i-1))}function A(e){const o=n(g);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 $=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(w),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:U(r,e),class:"iho-table__colorAndIcon"},[e])]}}},createRenderEdit:function(e){return function({props:n},t){return e({...t,fieldItem:n||{},...A(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(H(e))return!0;let n=e.fieldSetting;return f(n)&&(n=i(n||"")),p(n)&&((t=n).notParticipatingSearch!==h.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},hasTitlePrefix(e){var n,t;return(null==(n=null==e?void 0:e.titlePrefix)?void 0:n.content)||(null==(t=null==e?void 0:e.settingObj)?void 0:t.feildDescribe)}}),N=Object.freeze({isPositive:e=>e===I.POSITIVE||e===h.POSITIVE,isNegative:e=>e===I.NEGATIVE||e===h.NEGATIVE,notPositive:e=>e!==I.POSITIVE&&e!==h.POSITIVE,notNegative:e=>e!==I.NEGATIVE&&e!==h.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 j(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 y=["SEARCH","SELECT","RADIO","CHECKBOX"];function H(e){return e.notParticipatingSearch===I.NEGATIVE&&y.includes(S.getCellType(e))&&m(e.options)&&e.options.length}function U(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))!==T.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{$ as IhoTableRenderHelper,N as IhoTableStatusHelper,S as IhoTableUtils,C as IhoTableWarn,D as eventListener2EventName,P as eventName2EventListener,O as getColumnRenderWidth,x as getLowCodeFieldFromField,F as getRowHeight,U as getTitle,H as isCompatibleColumn,G as isInvalidDate,M as isInvalidTime,W as isRichContent,V as isTransformTreeType,L as isVariableHeightColumn,k as isVariableHeightTable,j as parseMergeField,_ as parseRichContent,A as useIhoTableFormEvent,b 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};