cnhis-design-vue 3.2.1-beta.4 → 3.2.1-beta.7

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 (56) hide show
  1. package/README.md +87 -87
  2. package/es/components/button-print/index.d.ts +1 -0
  3. package/es/components/button-print/src/ButtonPrint.vue.d.ts +1 -0
  4. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  5. package/es/components/button-print/src/utils/print.d.ts +15 -3
  6. package/es/components/button-print/src/utils/print.js +1 -1
  7. package/es/components/classification/src/components/table-modal/index.vue.d.ts +3 -0
  8. package/es/components/classification/src/index.vue.d.ts +3 -3
  9. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  10. package/es/components/field-set/src/FieldColor.vue.d.ts +2 -2
  11. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  12. package/es/components/field-set/src/TableStyle.vue.d.ts +10 -4835
  13. package/es/components/field-set/src/TableStyle.vue2.js +1 -1
  14. package/es/components/field-set/src/components/Row.vue.d.ts +1 -1
  15. package/es/components/field-set/src/components/edit-dialog.vue.d.ts +1 -1
  16. package/es/components/field-set/style/index.css +1 -1
  17. package/es/components/iho-table/src/plugins/headerPlugin.js +1 -1
  18. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin.js +1 -1
  19. package/es/components/iho-table/src/plugins/verticalTablePlugin/index.js +1 -1
  20. package/es/components/iho-table/src/plugins/verticalTablePlugin/renderer.d.ts +1 -3
  21. package/es/components/iho-table/src/plugins/verticalTablePlugin/renderer.js +1 -1
  22. package/es/components/iho-table/src/plugins/verticalTablePlugin/utils.d.ts +4 -0
  23. package/es/components/iho-table/src/plugins/verticalTablePlugin/utils.js +1 -1
  24. package/es/components/iho-table/src/utils/index.d.ts +1 -0
  25. package/es/components/iho-table/src/utils/index.js +1 -1
  26. package/es/components/index.css +1 -1
  27. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  28. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  29. package/es/components/select-person/src/SearchMultiple.vue.d.ts +6 -0
  30. package/es/env.d.ts +25 -25
  31. package/es/shared/assets/img/failure.png.js +1 -1
  32. package/es/shared/assets/img/no-permission.png.js +1 -1
  33. package/es/shared/assets/img/nodata.png.js +1 -1
  34. package/es/shared/assets/img/notfound.png.js +1 -1
  35. package/es/shared/assets/img/qr.png.js +1 -1
  36. package/es/shared/assets/img/success.png.js +1 -1
  37. package/es/shared/assets/img/table_style_1.png.js +1 -0
  38. package/es/shared/assets/img/table_style_2.png.js +1 -0
  39. package/es/shared/assets/img/table_style_3.png.js +1 -0
  40. package/es/shared/assets/img/table_style_4.png.js +1 -0
  41. package/es/shared/assets/img/video.png.js +1 -1
  42. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  43. package/es/shared/assets/img/xb_big.png.js +1 -1
  44. package/es/shared/assets/img/xb_small.png.js +1 -1
  45. package/es/shared/package.json.js +1 -1
  46. package/package.json +3 -2
  47. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  48. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  49. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  50. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  51. package/es/components/field-set/src/components/table-demo.vue.d.ts +0 -4817
  52. package/es/components/field-set/src/components/table-demo.vue.js +0 -1
  53. package/es/components/field-set/src/components/table-demo.vue2.js +0 -1
  54. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  55. package/es/shared/utils/fabricjs/index.d.ts +0 -6823
  56. package/es/shared/utils/tapable/index.d.ts +0 -139
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,computed as t,openBlock as a,createElementBlock as i,createElementVNode as o,createVNode as r,unref as n,isRef as s,Fragment as u,renderList as b,toDisplayString as v,normalizeClass as p,withDirectives as c,vShow as d,withCtx as f,createTextVNode as m}from"vue";import{NSwitch as g,NIcon as C,NButton as y}from"naive-ui";import _ from"./components/table-demo.vue.js";import{CheckmarkCircle as k}from"@vicons/ionicons5";const S={class:"main-wrapper"},h={class:"set-item"},x=o("span",{style:{"margin-right":"20px"}},"开启斑马线",-1),j={class:"set-item table-item"},w=["onClickCapture"],z={class:"table-style__desc"},T={class:"circle"},E={class:"main-wrapper__table-footer"};var F=e({__name:"TableStyle",props:{tableStyleConfig:{type:Object,default:()=>({stripe:!1,border:!0})}},emits:["save","close"],setup(e,{expose:F,emit:O}){var U,q;const A=e,B=l([{title:"样式一",label:"无列分割线",tableConfig:{stripe:!1,border:!(null==(U=A.tableStyleConfig)?void 0:U.border)}},{title:"样式二",border:!0,label:"列分割线",tableConfig:{stripe:!1,border:null==(q=A.tableStyleConfig)?void 0:q.border}}]),D=t({get(){var e;return null==(e=A.tableStyleConfig)?void 0:e.stripe},set(e){B.value.forEach((l=>l.tableConfig.stripe=e))}}),G=l(!0);function H(){O("close")}function I(){O("save")}return F({getTableFields:function(){return{stripe:D.value,border:G.value}}}),(e,l)=>(a(),i("div",S,[o("div",h,[x,r(n(g),{value:n(D),"onUpdate:value":l[0]||(l[0]=e=>s(D)?D.value=e:null),size:"small"},null,8,["value"])]),o("div",j,[(a(!0),i(u,null,b(B.value,((e,l)=>(a(),i(u,{key:l},[o("h4",null,v(e.title),1),o("div",{class:p(["table-style",{active:e.tableConfig.border===G.value}]),onClickCapture:()=>{return l=e.tableConfig.border,void(G.value=l);var l}},[r(_,{tableConfig:e.tableConfig},null,8,["tableConfig"]),o("div",z,[c(r(n(C),{size:20,component:n(k)},null,8,["component"]),[[d,e.tableConfig.border===G.value]]),c(o("i",T,null,512),[[d,e.tableConfig.border!==G.value]]),o("span",null,v(e.label),1)])],42,w)],64)))),128))]),o("div",E,[r(n(y),{style:{"margin-right":"8px"},onClick:H},{default:f((()=>[m("取消")])),_:1}),r(n(y),{type:"primary",onClick:I},{default:f((()=>[m("保存")])),_:1})])]))}});export{F as default};
1
+ import{defineComponent as e,ref as t,reactive as r,watch as l,openBlock as s,createElementBlock as a,createElementVNode as i,createVNode as o,unref as n,Fragment as d,renderList as p,toDisplayString as b,normalizeClass as m,withDirectives as c,vShow as u,withCtx as v,createTextVNode as f}from"vue";import{NSwitch as g,NIcon as y,NButton as _}from"naive-ui";import{CheckmarkCircle as C}from"@vicons/ionicons5";import h from"../../../shared/assets/img/table_style_1.png.js";import S from"../../../shared/assets/img/table_style_2.png.js";import j from"../../../shared/assets/img/table_style_3.png.js";import k from"../../../shared/assets/img/table_style_4.png.js";const x={class:"main-wrapper"},w={class:"set-item"},z=i("span",{style:{"margin-right":"20px"}},"开启斑马线",-1),T={class:"set-item table-item"},F=["onClickCapture"],O={class:"table-bg"},U=["src"],q={class:"table-style__desc"},A={class:"circle"},B={class:"main-wrapper__table-footer"};var D=e({__name:"TableStyle",props:{tableStyleConfig:{type:Object,default:()=>({stripe:!1,border:!0})}},emits:["save","close"],setup(e,{expose:D,emit:E}){var G,H;const I=e,J=t([{title:"样式一",label:"无列分割线",border:!(null==(G=I.tableStyleConfig)?void 0:G.border)},{title:"样式二",label:"列分割线",border:!!(null==(H=I.tableStyleConfig)?void 0:H.border)}]),K=r(I.tableStyleConfig);function L(){E("close")}function M(){E("save")}return l((()=>I.tableStyleConfig),(e=>{const{stripe:t=!1,border:r=!0}=e;K.stripe=t,K.border=r}),{immediate:!0,deep:!0}),D({getTableFields:function(){return K}}),(e,t)=>(s(),a("div",x,[i("div",w,[z,o(n(g),{value:K.stripe,"onUpdate:value":t[0]||(t[0]=e=>K.stripe=e),size:"small"},null,8,["value"])]),i("div",T,[(s(!0),a(d,null,p(J.value,((e,t)=>{return s(),a(d,{key:t},[i("h4",null,b(e.title),1),i("div",{class:m(["table-style",{active:e.border===K.border}]),onClickCapture:()=>{return t=e.border,void(K.border=t);var t}},[i("div",O,[i("img",{src:(r=e.border,K.stripe?r?h:j:r?S:k),alt:""},null,8,U)]),i("div",q,[c(o(n(y),{size:20,component:n(C)},null,8,["component"]),[[u,e.border===K.border]]),c(i("i",A,null,512),[[u,e.border!==K.border]]),i("span",null,b(e.label),1)])],42,F)],64);var r})),128))]),i("div",B,[o(n(_),{style:{"margin-right":"8px"},onClick:L},{default:v((()=>[f("取消")])),_:1}),o(n(_),{type:"primary",onClick:M},{default:v((()=>[f("保存")])),_:1})])]))}});export{D as default};
@@ -282,8 +282,8 @@ declare const _default: import("vue").DefineComponent<{
282
282
  requiredDisable: boolean;
283
283
  hide: boolean;
284
284
  }>;
285
+ isHighlightRow: boolean;
285
286
  idx: number;
286
287
  isHighlight: boolean;
287
- isHighlightRow: boolean;
288
288
  }>;
289
289
  export default _default;
@@ -44,7 +44,7 @@ declare const _default: import("vue").DefineComponent<{
44
44
  formRef: import("vue").Ref<any>;
45
45
  conditionRef: import("vue").Ref<any>;
46
46
  filterVisible: import("vue").Ref<boolean>;
47
- title: import("vue").ComputedRef<"修改" | "新增" | "过滤条件">;
47
+ title: import("vue").ComputedRef<"新增" | "修改" | "过滤条件">;
48
48
  model: {
49
49
  name: string;
50
50
  color: 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__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 .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 +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 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
+ 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 +1 @@
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
+ 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 +1 @@
1
- import{findAncestor as e}from"../../../../../shared/utils/index.js";import{pick as r,property as o,isArray as t,isFunction as n}from"lodash-es";import{onBeforeUnmount as i,unref as l}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as a,WIDGET_TYPE as s}from"../../constants/index.js";import{useUUIDMap as u}from"../../utils/index.js";import{VERTICAL_CELL_TYPE as d}from"./constants.js";import{renderHeader as c,renderSlot as f}from"./renderer.js";import{isVerticalTable as g,isVerticalHeader as m,getSpanInfo as p,getHeaderDepthByField as v,createVerticalFieldList as b,getFieldListDepth as h,bindHeaderInfoAndFlatten as w,isVerticalBody as C}from"./utils.js";import{defineTablePlugin as D}from"../../hooks/useTablePlugin.js";const j=["RADIO","SWITCH"];function x(){const x="verticalTablePlugin",{getItemFromUUID:R,removeItemFromUUID:k}=u((()=>({})));return D({name:x,vxe(e){function r(r){return(o,t)=>{var i,l;const{row:a,column:u}=t;if(m(u.field))return c(a,u);const{originalField:{editRender:d={},slots:g={}}={}}=a;if(n(g[r]))return f(g[r],a,u,t);const p=d.name||s.DEFAULT,v=e.renderer.get(p);return v?"default"===r?null==(i=v.renderCell)?void 0:i.call(v,d,t):null==(l=v.renderEdit)?void 0:l.call(v,d,t):{}}}e.renderer.add(d,{renderCell:r("default"),renderEdit:r("edit")})},apply(n){n.configHooks.config.tap({name:x,stage:a},(t=>{if(!t.uuid||!g(t))return t;const{uuid:n}=t,i=R(n);return i.originalTableConfig=t,Reflect.set(window,"__state",i),{uuid:n,showHeader:!1,...r(t,["border","height","verticalConfig","showSeq","size","rowGroupSetting","keyboardConfig"]),cellClassName({column:e}){const r=m(e.field);return{"vxe-header--column":r,"vxe-table--header":r,[e.field]:!0}},cellStyle({column:e,row:r}){const o={};if(p(r,e).colspan>1&&Object.assign(o,{textAlign:"center"}),!m(e.field)){const r=v(e.field),{originalData:t=[]}=i;t[r]===i.hoveringRow&&Object.assign(o,{backgroundColor:"var(--c-hover-color)"}),t[r]===i.currentRow&&Object.assign(o,{backgroundColor:"var(--c-primary-color-opacity2)"})}return o},spanMethod:({row:e,column:r})=>p(e,r),editConfig:{...t.editConfig,beforeEditMethod({row:e,column:r}){var o;const{originalField:t={}}=e;if(m(r.field))return!1;const{editRender:{name:n=s.DEFAULT}={}}=t;return!Object.values(s).concat(j).includes(n)&&(!(null==(o=t.slots)?void 0:o.default)||!!t.slots.edit)}},onCellClick({column:e}){if(m(e.field))return;const{originalData:r=[]}=i,t=r[v(e.field)];i.currentRow=!1!==o("originalTableConfig.rowConfig.clickToCancel")(i)&&i.currentRow===t?null:t},onMousemove(r){var o,t;const n=e(r.target,(e=>"TD"===e.tagName));if(!n)return;const[,l,a]=n.className.match(/(body|header)_(\d+)/)||[];if("body"!==l)return i.hoveringRow=null;i.hoveringRow=null!=(t=null==(o=i.originalData)?void 0:o[Number(a)])?t:null},onMouseleave(){i.hoveringRow=null}}})),n.fieldHooks.fieldList.tap({name:x,stage:a},((e,r,{globProps:o})=>{const{uuid:n}=r;if(!n||!g(r))return e;const i=R(n);return i?(i.originalFieldList=e,t(o.tableData)?i.verticalFieldList=b(o.tableData,i.headerDepth=h(e)):[]):e})),n.dataHooks.dataList.tap({name:x,stage:a},((e,r)=>{const{uuid:o}=r;if(!o||!g(r))return e;const t=R(o);if(!t)return e;t.originalData=e;const{originalFieldList:n=[],headerDepth:i=0}=t;return t.verticalData=w(n,i).map((r=>function(e,r){return new Proxy({},{get(o,t){var n;if("originalField"===t)return e;if("originalData"===t)return r;if(m(t))return e[t];if(C(t)){const o=v(t);return"seq"===e.type?o+1:null==(n=r[o])?void 0:n[e.field]}},set(o,t,n){if(!m(t)){const o=v(t);o>=0&&r[o]&&(r[o][e.field]=n)}return!0}})}(r,e)))})),n.setupHooks.setup.tap(x,(e=>{i((()=>{const{uuid:r}=l(e)||{};r&&k(r)}))})),n.exposeHooks.expose.tap(x,(e=>Object.assign(e,{verticalTable:{insertRow(){}}})))}})}export{x as verticalTablePlugin};
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,5 +1,3 @@
1
- import { AnyFn, AnyObject } from '../../../../../shared/types';
1
+ import { AnyObject } from '../../../../../shared/types';
2
2
  import { VxeTableDefines } from 'vxe-table';
3
- import { VxeGlobalRendererHandles } from 'vxe-table/types/v-x-e-table/renderer';
4
3
  export declare function renderHeader(row: AnyObject, column: VxeTableDefines.ColumnInfo): any;
5
- export declare function renderSlot(fn: AnyFn, row: AnyObject, column: VxeTableDefines.ColumnInfo, payload: VxeGlobalRendererHandles.RenderCellParams): any;
@@ -1 +1 @@
1
- import{property as o}from"lodash-es";import{getHeaderDepthByField as n}from"./utils.js";function r(o,n){return o[n.field]}function e(r,e,i,l){const t=n(i.field);return r({$table:l.$table,row:o(`originalData.${t}`)(e),rowIndex:t,$rowIndex:t,column:o("originalField")(e),columnIndex:l.rowIndex,$columnIndex:l.rowIndex})}export{r as renderHeader,e as renderSlot};
1
+ function e(e,n){return e[n.field]}export{e as renderHeader};
@@ -12,3 +12,7 @@ export declare function getSpanInfo(row: AnyObject, column: VxeTableDefines.Colu
12
12
  colspan: any;
13
13
  };
14
14
  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}from"../../../../../shared/utils/index.js";import{isString as e,range as r}from"lodash-es";import{VERTICAL_CELL_TYPE as t}from"./constants.js";function i(n){var e;return!!(null==(e=n.verticalConfig)?void 0:e.enable)}function o(n){let e=0;return function n(r,t=0){r.forEach((r=>{r.children?n(r.children,t+1):e=Math.max(e,t)}))}(n),e}function a(n){return!!e(n)&&n.startsWith("header_")}function l(n){return!!e(n)&&n.startsWith("body_")}function c(n){var r;return e(n)?+(null!=(r=n.split("_")[1])?r:0):0}function u(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((r=>{n[`header_${r}_colspan`]=r===e?e+1:0,n[`header_${r}_rowspan`]=r===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 r=i[e-1];r&&Object.entries(n).forEach((([e,t])=>{e.match(/^header_(\d+)$/)&&t===r[e]&&(n[`${e}_colspan`]=0,n[`${e}_rowspan`]=0)}))})),i;function o(e){if(!e.children)return 1;let r=0;return n(e.children,(n=>{n.children||r++})),r}}function d(n,e){var r,t;return a(e.field)?{rowspan:null!=(r=n[e.field+"_rowspan"])?r:1,colspan:null!=(t=n[e.field+"_colspan"])?t:1}:{colspan:1,rowspan:1}}const s=({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:t,props:{},enable:!0,autofocus:s}})))]}s.toString=()=>"input,.n-input__input-el";export{u as bindHeaderInfoAndFlatten,p as createVerticalFieldList,o as getFieldListDepth,c as getHeaderDepthByField,d as getSpanInfo,l as isVerticalBody,a as isVerticalHeader,i as isVerticalTable};
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};
@@ -37,6 +37,7 @@ 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;
40
41
  }>;
41
42
  export declare const IhoTableStatusHelper: Readonly<{
42
43
  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 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};
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};