ideaz-element
Version:
<p align="center"> <a href="" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/logo.svg" alt="Ideaz Element" width="180" style="width: 180px;" /> </a> </p>
3 lines (2 loc) • 3.3 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../../utils/index.cjs");require("../../../../node_modules/.pnpm/lodash-unified@1.0.3_@types_lodash-es@4.17.12_lodash-es@4.17.21_lodash@4.17.21/node_modules/lodash-unified/import.cjs");const q=require("../../../dialog/src/dialog.cjs"),b=require("vue"),F=require("../../../../hooks/useLocale.cjs"),d=require("../../../../utils/is.cjs"),R=require("../../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isEqual.cjs"),m=require("../../../../utils/uid.cjs");function k(e,f=!1){for(const a in e)if(a.endsWith("Prop")){const s=a.slice(0,-4);Object.hasOwnProperty.call(e,s)&&(f?e[s]=e[a]:e[a]=e[s])}return e}function S(e,f,a){const s=b.ref(d.isObject(e.editable)&&e.editable.type||"single"),c=b.ref(),v=b.ref([]),{t:o}=F.useLocale(),{editable:y}=e,O=t=>a.value.length?Object.keys(a.value[0]).map(r=>`tableData.${t}.${r}`):[],_=()=>({label:o("common.edit"),type:"primary",link:!0,hide:({row:t})=>t.__isEdit||s.value==="multiple",onClick:({row:t,$index:r,column:l})=>{var n,u;d.isObject(e.editable)&&d.isFunction((n=e.editable)==null?void 0:n.onEdit)?(u=e.editable)==null||u.onEdit({row:t,$index:r,column:l,formRef:c.value}):(t.__isEdit=!0,f("update:data",a.value))}}),g=()=>({label:o("common.save"),type:"primary",link:!0,hide:({row:t})=>!t.__isEdit||s.value==="multiple",onClick:({row:t,$index:r,column:l})=>{var n,u;c.value&&(d.isObject(e.editable)&&d.isFunction((n=e.editable)==null?void 0:n.onSave)?(u=e.editable)==null||u.onSave({row:t,$index:r,column:l,formRef:c.value}):c.value.validateField&&c.value.validateField(O(r),i=>{i&&(k(t),t.__isEdit=!1,f("update:data",a.value))}))}}),E=()=>({label:o("common.cancel"),type:"primary",link:!0,hide:({row:t})=>!t.__isEdit||s.value==="multiple",onClick:({row:t,$index:r,column:l})=>{var n,u;d.isObject(e.editable)&&d.isFunction((n=e.editable)==null?void 0:n.onCancel)?(u=e.editable)==null||u.onCancel({row:t,$index:r,column:l,formRef:c.value}):(k(t,!0),t.__isEdit=!1,f("update:data",a.value))}}),h=()=>({label:o("common.delete"),type:"primary",link:!0,onClick:({row:t,$index:r,column:l})=>{var u;const n=()=>{var i,C;d.isObject(e.editable)&&d.isFunction((i=e.editable)==null?void 0:i.onDelete)?(C=e.editable)==null||C.onDelete({row:t,$index:r,column:l,formRef:c.value}):(a.value.splice(r,1),f("update:data",a.value))};d.isObject(e.editable)&&((u=e.editable)!=null&&u.deleteConfirm)?q({type:"warning",title:o("dialog.tip"),message:o("table.deleteTip"),onConfirm:({done:i})=>{i(),n()}}):n()}});return b.watch(()=>e.columns,(t,r)=>{var n,u;if(R(t,r))return;const l=e.columns.map(i=>i.type==="sort"?{width:48,...i,__uid:m.uid()}:d.isObject(i.component)?{...i,__uid:m.uid(),component:b.markRaw(i.component)}:{...i,__uid:m.uid()});y&&l.length>0&&((n=l[l.length-1])==null?void 0:n.type)!=="button"?v.value=l.concat({type:"button",__uid:m.uid(),label:o("table.action"),buttons:[_(),g(),E(),h()]}):y&&l.length>0&&((u=l[l.length-1])==null?void 0:u.type)==="button"?v.value=l.map(i=>(i.type==="button"&&d.isFunction(i.buttons)&&(i.buttons=i.buttons({renderEdit:_(),renderSave:g(),renderCancel:E(),renderDelete:h()},a)),i)):v.value=l},{immediate:!0,deep:!0}),{columns:v,zTableFormRef:c}}exports.useEditableColumns=S;
//# sourceMappingURL=useEditableColumns.cjs.map