@aplus-frontend/ui 0.0.22 → 0.0.23

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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),E=require("ant-design-vue"),d=require("../ap-form/index.js"),i=require("lodash-unified");require("../config-provider/index.js");require("../hooks/index.js");const N=require("../utils/index.js"),S=require("./hooks/use-get-columns.js");require("./style/index.css");const k=require("../config-provider/hooks/use-namespace.js"),P=require("../config-provider/hooks/use-global-config.js"),L=require("../hooks/useControllableValue.js"),j=e.defineComponent({name:"EditableTable",__name:"index",props:{dropdownPrefixCls:{},pagination:{type:[Boolean,Object],default:!1},loading:{type:[Boolean,Object],default:void 0},size:{default:"middle"},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},rowSelection:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!0},prefixCls:{},rowKey:{default:"key"},tableLayout:{default:"fixed"},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},value:{},defaultValue:{},"onUpdate:value":{},maxLength:{},name:{default:"ap-editable-table-inner-name"},onFieldChange:{}},emits:["update:value"],setup(p,{expose:m,emit:x}){const l=p,{b:f,em:C}=k.useNamespace("editable-table"),g=P.useGlobalConfig("uiMode","aplus"),h=e.useSlots(),w=x,{value:u,updateValue:y}=L.useControllableValue(l,w),s=e.ref(),b=d.ApForm.useWatch(l.name,s);e.watch(()=>b.value,n=>{var o;y(n),(o=l.onChange)==null||o.call(l,n)});const v=S.default(l);function R(){var n;(n=s.value)==null||n.resetFields()}async function B(n,o){var t;const a=await((t=s.value)==null?void 0:t.validateFields(n,o));return a==null?void 0:a[l.name]}function q(n){var a,t,r;const o=((a=e.unref(u))==null?void 0:a.length)||0;N.isDef(l.maxLength)&&o>=l.maxLength||(r=(t=s.value)==null?void 0:t.setFieldValue)==null||r.call(t,l.name,[...e.unref(u)||[],n||{}])}function F(n){var a,t;const o=i.cloneDeep(e.unref(u)||[]);o.splice(n,1),(t=(a=s.value)==null?void 0:a.setFieldValue)==null||t.call(a,l.name,[...o])}function D(){return e.unref(u)}function V(n){var o;return(o=e.unref(u))==null?void 0:o[n]}function _(n,o){var t,r;const a=i.cloneDeep(e.unref(u));a[n]&&(a[n]={...a[n],...o},(r=(t=s.value)==null?void 0:t.setFieldValue)==null||r.call(t,l.name,[...a]))}return m({resetFields:R,validateFields:B,add:q,remove:F,getRowData:V,getRowsData:D,setRowData:_}),(n,o)=>(e.openBlock(),e.createBlock(e.unref(d.ApForm),{"initial-values":{[l.name]:e.unref(u)},ref_key:"formRef",ref:s},{default:e.withCtx(()=>[e.createVNode(e.unref(d.ApForm).FormItem,{name:n.name,"no-style":""},{default:e.withCtx(()=>[e.createVNode(e.unref(E.Table),e.mergeProps(e.unref(i.omit)(l,["name","value","onUpdate:value","maxLength"]),{class:[e.unref(f)(),e.unref(g)==="admin"?e.unref(f)("admin"):null],columns:e.unref(v),"data-source":e.unref(u)}),e.createSlots({headerCell:e.withCtx(({column:a})=>{var t,r,c;return[(t=a==null?void 0:a.fieldProps)!=null&&t.required||(c=(r=a==null?void 0:a.fieldProps)==null?void 0:r.rules)!=null&&c.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(C)("header-cell","required"))},"*",2),e.createElementVNode("span",null,e.toDisplayString(a.title),1)],64)):e.createCommentVNode("",!0)]}),_:2},[e.renderList(h,(a,t)=>({name:t,fn:e.withCtx(r=>[e.renderSlot(n.$slots,t,e.normalizeProps(e.guardReactiveProps(r||{})))])}))]),1040,["class","columns","data-source"])]),_:3},8,["name"])]),_:3},8,["initial-values"]))}});exports.default=j;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),P=require("ant-design-vue"),p=require("../ap-form/index.js"),f=require("lodash-unified");require("../config-provider/index.js");require("../hooks/index.js");const m=require("../utils/index.js"),A=require("./hooks/use-get-columns.js");require("./style/index.css");const j=require("../config-provider/hooks/use-namespace.js"),z=require("../config-provider/hooks/use-global-config.js"),M=require("../hooks/useControllableValue.js"),O=e.defineComponent({name:"EditableTable",__name:"index",props:{dropdownPrefixCls:{},pagination:{type:[Boolean,Object],default:!1},loading:{type:[Boolean,Object],default:void 0},size:{default:"middle"},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},rowSelection:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!0},prefixCls:{},rowKey:{default:"key"},tableLayout:{default:"fixed"},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},value:{},defaultValue:{},"onUpdate:value":{},maxLength:{},name:{default:"ap-editable-table-inner-name"},onFieldChange:{}},emits:["update:value"],setup(g,{expose:C,emit:w}){const l=g,{b:h,em:b}=j.useNamespace("editable-table"),y=z.useGlobalConfig("uiMode","aplus"),v=e.useSlots(),R=w,{value:s,updateValue:D}=M.useControllableValue(l,R),i=e.ref(),B=p.ApForm.useWatch(l.name,i);e.watch(()=>B.value,n=>{var o;D(n),(o=l.onChange)==null||o.call(l,n)});const F=A.default(l);function q(){var n;(n=i.value)==null||n.resetFields()}async function N(n,o){var t;const a=await((t=i.value)==null?void 0:t.validateFields(n,o));return a==null?void 0:a[l.name]}function V(n,o){var r,u,d;const a=((r=e.unref(s))==null?void 0:r.length)||0;if(m.isDef(l.maxLength)&&a>=l.maxLength)return;const t=[...e.unref(s)||[]];m.isDef(o)?t.splice(o,0,{...n||{}}):t.push({...n||{}}),(d=(u=i.value)==null?void 0:u.setFieldValue)==null||d.call(u,l.name,t)}function _(n,o="suffix"){var d,c,x;const a=((d=e.unref(s))==null?void 0:d.length)||0,t=f.isNumber(n)?n:n.length;if(m.isDef(l.maxLength)&&a+t>l.maxLength)return;const r=[...e.unref(s)||[]],u=f.isNumber(n)?new Array(n).fill({}):f.cloneDeep(n);o==="suffix"?r.push(...u):r.unshift(...u),(x=(c=i.value)==null?void 0:c.setFieldValue)==null||x.call(c,l.name,r)}function E(n){var t,r;let o=f.cloneDeep(e.unref(s)||[]);const a=f.isNumber(n)?[n]:n;o=o.filter((u,d)=>!a.includes(d)),(r=(t=i.value)==null?void 0:t.setFieldValue)==null||r.call(t,l.name,o)}function S(){return e.unref(s)}function k(n){var o;return(o=e.unref(s))==null?void 0:o[n]}function L(n,o){var t,r;const a=f.cloneDeep(e.unref(s));a[n]&&(a[n]={...a[n],...o},(r=(t=i.value)==null?void 0:t.setFieldValue)==null||r.call(t,l.name,[...a]))}return C({resetFields:q,validateFields:N,add:V,remove:E,getRowData:k,getRowsData:S,setRowData:L,addMultiple:_}),(n,o)=>(e.openBlock(),e.createBlock(e.unref(p.ApForm),{"initial-values":{[l.name]:e.unref(s)},ref_key:"formRef",ref:i},{default:e.withCtx(()=>[e.createVNode(e.unref(p.ApForm).FormItem,{name:n.name,"no-style":""},{default:e.withCtx(()=>[e.createVNode(e.unref(P.Table),e.mergeProps(e.unref(f.omit)(l,["name","value","onUpdate:value","maxLength"]),{class:[e.unref(h)(),e.unref(y)==="admin"?e.unref(h)("admin"):null],columns:e.unref(F),"data-source":e.unref(s)}),e.createSlots({headerCell:e.withCtx(({column:a})=>{var t,r,u;return[(t=a==null?void 0:a.fieldProps)!=null&&t.required||(u=(r=a==null?void 0:a.fieldProps)==null?void 0:r.rules)!=null&&u.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(b)("header-cell","required"))},"*",2),e.createElementVNode("span",null,e.toDisplayString(a.title),1)],64)):e.createCommentVNode("",!0)]}),_:2},[e.renderList(v,(a,t)=>({name:t,fn:e.withCtx(r=>[e.renderSlot(n.$slots,t,e.normalizeProps(e.guardReactiveProps(r||{})))])}))]),1040,["class","columns","data-source"])]),_:3},8,["name"])]),_:3},8,["initial-values"]))}});exports.default=O;
@@ -124,17 +124,23 @@ export type EditableTableExpose<ModelType = any, RecordType = any> = {
124
124
  */
125
125
  validateFields: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<ModelType>> | undefined;
126
126
  /**
127
- * 添加一行数据
128
- * @param defaultValue
129
- * @returns
127
+ * 添加单条数据
128
+ * @param defaultValue 默认值,如果需要设置`insertIndex`,可以设置`defaultValue`为`{}`
129
+ * @param insertIndex 数据插入的位置
130
+ */
131
+ add: (defaultValue?: Partial<RecordType>, insertIndex?: number) => void;
132
+ /**
133
+ * 添加多条数据
134
+ * @param list 添加的条数或数据
135
+ * @param insetIn 插入的位置(前/后)
130
136
  */
131
- add: (defaultValue?: Partial<RecordType>) => void;
137
+ addMultiple: (list: number | Partial<RecordType>[], insetIn?: 'prefix' | 'suffix') => void;
132
138
  /**
133
139
  * 删除一行数据
134
140
  * @param index
135
141
  * @returns
136
142
  */
137
- remove: (index: number) => void;
143
+ remove: (index: number | number[]) => void;
138
144
  /**
139
145
  * 获取所有行的数据
140
146
  * @returns
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aplus-frontend/ui",
3
- "version": "0.0.22",
3
+ "version": "0.0.23",
4
4
  "main": "lib/index.js",
5
5
  "module": "es/index.mjs",
6
6
  "files": [
@@ -58,14 +58,14 @@
58
58
  "dayjs": "^1.11.11",
59
59
  "lodash-unified": "^1.0.3",
60
60
  "sortablejs": "^1.15.2",
61
- "@aplus-frontend/oss": "^1.0.11",
62
61
  "mime": "^4.0.3",
63
62
  "@aplus-frontend/hooks": "1.0.6",
64
63
  "@aplus-frontend/utils": "1.0.23"
65
64
  },
66
65
  "peerDependencies": {
67
66
  "ant-design-vue": "^4.2.1",
68
- "vue": "^3.4.29"
67
+ "vue": "^3.4.29",
68
+ "@aplus-frontend/oss": "^1.0.17"
69
69
  },
70
70
  "scripts": {
71
71
  "pub:cb": "pnpm publish --access public",