@nocobase/plugin-action-bulk-edit 0.20.0-alpha.4 → 0.20.0-alpha.6
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.
- package/dist/client/index.js +2 -2
- package/dist/externalVersion.js +4 -4
- package/package.json +2 -2
package/dist/client/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
(function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("@nocobase/client"),require("react/jsx-runtime"),require("@formily/react"),require("react-i18next"),require("react"),require("antd"),require("react-router-dom"),require("lodash"),require("@nocobase/utils/client"),require("@emotion/css"),require("@formily/shared"),require("@ant-design/icons"),require("@formily/antd-v5")):typeof define=="function"&&define.amd?define(["exports","@nocobase/client","react/jsx-runtime","@formily/react","react-i18next","react","antd","react-router-dom","lodash","@nocobase/utils/client","@emotion/css","@formily/shared","@ant-design/icons","@formily/antd-v5"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s["@nocobase/plugin-action-bulk-edit"]={},s["@nocobase/client"],s.jsxRuntime,s["@formily/react"],s["react-i18next"],s.react,s.antd,s["react-router-dom"],s.lodash,s["@nocobase/utils"],s["@emotion/css"],s["@formily/shared"],s["@ant-design/icons"],s["@formily/antd-v5"]))})(this,function(s,e,
|
|
1
|
+
(function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("@nocobase/client"),require("react/jsx-runtime"),require("@formily/react"),require("react-i18next"),require("react"),require("antd"),require("react-router-dom"),require("lodash"),require("@nocobase/utils/client"),require("@emotion/css"),require("@formily/shared"),require("@ant-design/icons"),require("@formily/antd-v5")):typeof define=="function"&&define.amd?define(["exports","@nocobase/client","react/jsx-runtime","@formily/react","react-i18next","react","antd","react-router-dom","lodash","@nocobase/utils/client","@emotion/css","@formily/shared","@ant-design/icons","@formily/antd-v5"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s["@nocobase/plugin-action-bulk-edit"]={},s["@nocobase/client"],s.jsxRuntime,s["@formily/react"],s["react-i18next"],s.react,s.antd,s["react-router-dom"],s.lodash,s["@nocobase/utils"],s["@emotion/css"],s["@formily/shared"],s["@ant-design/icons"],s["@formily/antd-v5"]))})(this,function(s,e,a,l,g,I,k,w,b,P,oe,ne,ie,N){"use strict";var be=Object.defineProperty,Ie=Object.defineProperties;var Fe=Object.getOwnPropertyDescriptors;var j=Object.getOwnPropertySymbols;var Z=Object.prototype.hasOwnProperty,ee=Object.prototype.propertyIsEnumerable;var Y=(s,e,a)=>e in s?be(s,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[e]=a,z=(s,e)=>{for(var a in e||(e={}))Z.call(e,a)&&Y(s,a,e[a]);if(j)for(var a of j(e))ee.call(e,a)&&Y(s,a,e[a]);return s},T=(s,e)=>Ie(s,Fe(e));var te=(s,e)=>{var a={};for(var l in s)Z.call(s,l)&&e.indexOf(l)<0&&(a[l]=s[l]);if(s!=null&&j)for(var l of j(s))e.indexOf(l)<0&&ee.call(s,l)&&(a[l]=s[l]);return a};var D=(s,e,a)=>new Promise((l,g)=>{var I=b=>{try{w(a.next(b))}catch(P){g(P)}},k=b=>{try{w(a.throw(b))}catch(P){g(P)}},w=b=>b.done?l(b.value):Promise.resolve(b.value).then(I,k);w((a=a.apply(s,e)).next())});function $(){var r;const{dn:t}=e.useDesignable(),{t:o}=g.useTranslation(),n=l.useFieldSchema();return a.jsx(e.SchemaSettingsSelectItem,{title:o("Data will be updated"),options:[{label:o("Selected"),value:"selected"},{label:o("All"),value:"all"}],value:(r=n==null?void 0:n["x-action-settings"])==null?void 0:r.updateMode,onChange:c=>{n["x-action-settings"].updateMode=c,t.emit("patch",{schema:{"x-uid":n["x-uid"],"x-action-settings":n["x-action-settings"]}}),t.refresh()}})}function U(t={}){const{t:o}=g.useTranslation(),n=l.useFieldSchema();return!((n==null?void 0:n.parent["x-component"])==="CollectionField")&&a.jsxs(a.Fragment,{children:[a.jsx(e.SchemaSettingsDivider,{}),a.jsx(e.SchemaSettingsRemove,{removeParentsIfNoChildren:!0,breakRemoveOn:c=>c["x-component"]==="Space"||c["x-component"].endsWith("ActionBar"),confirm:{title:o("Delete action"),onOk:t.onConfirmOk}})]})}const se=new e.SchemaSettings({name:"ActionSettings:customize:bulkEdit",items:[{name:"editButton",Component:e.ActionDesigner.ButtonEditor,useComponentProps(){const{buttonEditorProps:t}=e.useSchemaToolbar();return t}},{name:"openMode",Component:e.SchemaInitializerOpenModeSchemaItems,useComponentProps(){const t=l.useFieldSchema(),o=["create","update","view","customize:popup","duplicate","customize:create"].includes(t["x-action"]||"");return{openMode:o,openSize:o}}},{name:"updateMode",Component:$},{name:"remove",sort:100,Component:U,useComponentProps(){const{removeButtonProps:t}=e.useSchemaToolbar();return t}}]}),ae=new e.SchemaSettings({name:"actionSettings:bulkEdit",items:[{name:"editButton",Component:e.ActionDesigner.ButtonEditor,useComponentProps(){const{buttonEditorProps:t}=e.useSchemaToolbar();return t}},{name:"openMode",Component:e.SchemaInitializerOpenModeSchemaItems,useComponentProps(){const t=l.useFieldSchema(),o=["create","update","view","customize:popup","duplicate","customize:create"].includes(t["x-action"]||"");return{openMode:o,openSize:o}}},{name:"updateMode",Component:$},{name:"remove",sort:100,Component:U,useComponentProps(){const{removeButtonProps:t}=e.useSchemaToolbar();return t}}]}),re=t=>{const o=l.useField(),n=l.useFieldSchema(),{name:r,interface:c,uiSchema:d}=e.useCollectionField_deprecated(),m=e.useComponent(d==null?void 0:d["x-component"]),y=e.useCompile(),p=(h,x)=>{o[h]=typeof o[h]=="undefined"?x:o[h]},u=()=>{typeof n.required=="undefined"&&(o.required=!!d.required)},i=e.useFormBlockContext();return I.useEffect(()=>{i!=null&&i.field&&(i.field.added=i.field.added||new Set,i.field.added.add(n.name))}),I.useEffect(()=>{if(!d)return;p("content",d["x-content"]),p("description",d.description),p("initialValue",d.default),n["x-disabled"]===!0&&(o.disabled=!0),n["x-read-pretty"]===!0&&(o.readPretty=!0),u(),o.dataSource=d.enum;const h=y(d["x-component-props"])||{},x=ne.merge(h,o.componentProps||{});o.componentProps=x},[JSON.stringify(d)]),d?I.createElement(m,t,t.children):null},ce=l.connect(t=>{const o=l.useFieldSchema();return a.jsx(e.CollectionFieldProvider,{name:o.name,children:a.jsx(re,z({},t))})});var E=(t=>(t[t.RemainsTheSame=1]="RemainsTheSame",t[t.ChangedTo=2]="ChangedTo",t[t.Clear=3]="Clear",t[t.AddAttach=4]="AddAttach",t))(E||{});const le=t=>{const{t:o}=g.useTranslation(),n=l.useFieldSchema(),r=l.useField(),[c,d]=I.useState(2),[m,y]=I.useState(null),{getField:p}=e.useCollection_deprecated(),u=p(n.name)||{};I.useEffect(()=>{r.value={[c]:m}},[c,m]);const i=x=>{d(x)},h=x=>{var S,f,v,B;y((B=(v=(S=x==null?void 0:x.target)==null?void 0:S.value)!=null?v:(f=x==null?void 0:x.target)==null?void 0:f.checked)!=null?B:x)};return a.jsxs(k.Space,{className:oe.css`
|
|
2
2
|
display: flex;
|
|
3
3
|
> .ant-space-item {
|
|
4
4
|
width: 100%;
|
|
5
5
|
}
|
|
6
|
-
`,children:[r.jsxs(k.Select,{defaultValue:c,value:c,onChange:i,children:[r.jsx(k.Select.Option,{value:1,children:o("Remains the same")}),r.jsx(k.Select.Option,{value:2,children:o("Changed to")}),r.jsx(k.Select.Option,{value:3,children:o("Clear")}),["subTable","linkTo","m2m","o2m","o2o","oho","obo","m2o"].includes(u==null?void 0:u.interface)&&r.jsx(k.Select.Option,{value:4,children:o("Add attach")})]}),[2,4].includes(c)&&(u==null?void 0:u.interface)!=="checkbox"&&r.jsx(ce,T(z({},t),{value:m,onChange:h,style:{minWidth:150}})),[2,4].includes(c)&&(u==null?void 0:u.interface)==="checkbox"&&r.jsx(k.Checkbox,{checked:m,onChange:h})]})},de=t=>{const{name:o,fields:n}=e.useCollection_deprecated(),{getInterface:a,getCollection:c}=e.useCollectionManager_deprecated(),d=l.useForm(),{readPretty:m=d.readPretty,block:y="Form"}=t||{},p=e.useRemoveGridFormItem();return I.useMemo(()=>n==null?void 0:n.filter(i=>{var h;return(i==null?void 0:i.interface)&&!((h=i==null?void 0:i.uiSchema)!=null&&h["x-read-pretty"])&&i.interface!=="snapshot"&&i.type!=="sequence"}).map(i=>{var S,f,v;const h=a(i.interface),x={type:"string",name:i.name,title:((S=i==null?void 0:i.uiSchema)==null?void 0:S.title)||i.name,"x-toolbar":"FormItemSchemaToolbar","x-settings":"fieldSettings:BulkEditFormItem","x-component":"BulkEditField","x-decorator":"FormItem","x-collection-field":`${o}.${i.name}`};return{name:((f=i==null?void 0:i.uiSchema)==null?void 0:f.title)||i.name,type:"item",title:((v=i==null?void 0:i.uiSchema)==null?void 0:v.title)||i.name,Component:"CollectionFieldInitializer",remove:p,schemaInitialize:B=>{var M;(M=h==null?void 0:h.schemaInitialize)==null||M.call(h,B,{field:i,block:y,readPretty:m,targetCollection:c(i.target)})},schema:x}}),[n])},pe=()=>{var B,M,W,J;const t=l.useForm(),{t:o}=g.useTranslation(),{field:n,resource:a,__parent:c}=e.useBlockRequestContext(),d=I.useContext(l.SchemaExpressionScopeContext),m=e.useActionContext(),y=w.useNavigate(),p=e.useCompile(),u=l.useField(),i=e.useTableBlockContext(),{modal:h}=k.App.useApp(),{rowKey:x}=i,S=(J=(W=(M=(B=i.field)==null?void 0:B.data)==null?void 0:M.selectedRowKeys)!=null?W:d==null?void 0:d.selectedRecordKeys)!=null?J:{},{setVisible:f,fieldSchema:v}=m;return{onClick(){return D(this,null,function*(){var _,H,K,Q,O,R,q,X;const{onSuccess:C,skipValidator:ge,updateMode:ye}=(_=v==null?void 0:v["x-action-settings"])!=null?_:{},{filter:ke}=(K=(H=c.service.params)==null?void 0:H[0])!=null?K:{};ge||(yield t.submit());const A=b.cloneDeep(t.values);u.data=n.data||{},u.data.loading=!0;for(const F in A)if(Object.prototype.hasOwnProperty.call(A,F)){const G=A[F];E.Clear in G?A[F]=null:E.ChangedTo in G?A[F]=G[E.ChangedTo]:E.RemainsTheSame in G&&delete A[F]}try{const F={values:A,filter:ke,forceUpdate:!1};if(ye==="selected"){if(!(S!=null&&S.length)){k.message.error(o("Please select the records to be updated"));return}F.filter={$and:[{[x||"id"]:{$in:S}}]}}if(F.filter||(F.forceUpdate=!0),yield a.update(F),u.data.loading=!1,a instanceof e.TableFieldResource||(R=(O=(Q=c==null?void 0:c.__parent)==null?void 0:Q.service)==null?void 0:O.refresh)==null||R.call(O),(X=(q=c==null?void 0:c.service)==null?void 0:q.refresh)==null||X.call(q),f==null||f(!1),!(C!=null&&C.successMessage))return;C!=null&&C.manualClose?h.success({title:p(C==null?void 0:C.successMessage),onOk:()=>D(this,null,function*(){yield t.reset(),C!=null&&C.redirecting&&(C!=null&&C.redirectTo)&&(P.isURL(C.redirectTo)?window.location.href=C.redirectTo:y(C.redirectTo))})}):k.message.success(p(C==null?void 0:C.successMessage))}finally{u.data.loading=!1}})}}},me=new e.SchemaInitializer({name:"BulkEditFormItemInitializers",wrap:e.gridRowColWrap,icon:"SettingOutlined",title:'{{t("Configure fields")}}',items:[{name:"displayFields",type:"itemGroup",title:'{{t("Display fields")}}',useChildren:de},{name:"divider",type:"divider"},{name:"addText",title:'{{t("Add text")}}',Component:"BlockItemInitializer",schema:{type:"void","x-editable":!1,"x-decorator":"FormItem","x-toolbar":"BlockSchemaToolbar","x-settings":"blockSettings:markdown","x-component":"Markdown.Void","x-component-props":{content:'{{t("This is a demo text, **supports Markdown syntax**.")}}'}}}]}),V=()=>{const u=e.useSchemaInitializerItem(),{onCreateBlockSchema:o,componentType:n,createBlockSchema:a}=u,c=te(u,["onCreateBlockSchema","componentType","createBlockSchema"]),{insert:d}=e.useSchemaInitializer(),{getTemplateSchemaByMode:m}=e.useSchemaTemplateManager(),y=e.useBlockAssociationContext(),p=e.useCollection_deprecated();return r.jsx(e.SchemaInitializerItem,T(z({icon:r.jsx(ie.FormOutlined,{})},c),{onClick:h=>D(this,[h],function*({item:i}){if(i.template){const x=yield m(i);if(i.template.componentName==="FormItem"){const S=e.createFormBlockSchema({actionInitializers:"CreateFormActionInitializers",association:y,collection:p.name,dataSource:p.dataSource,template:x});i.mode==="reference"&&(S["x-template-key"]=i.template.key),d(S)}else d(x)}else d(e.createFormBlockSchema({formItemInitializers:"BulkEditFormItemInitializers",actionInitializers:"BulkEditFormActionInitializers",association:y,collection:p.name,dataSource:p.dataSource}))}),items:e.useRecordCollectionDataSourceItems("FormItem")}))},ue=new e.SchemaInitializer({name:"CreateFormBulkEditBlockInitializers",wrap:e.gridRowColWrap,title:'{{t("Add block")}}',icon:"PlusOutlined",items:[{type:"itemGroup",title:'{{t("Data blocks")}}',name:"dataBlocks",children:[{name:"form",title:'{{t("Form")}}',Component:V}]},{type:"itemGroup",title:'{{t("Other blocks")}}',name:"otherBlocks",children:[{name:"markdown",title:'{{t("Markdown")}}',Component:"MarkdownBlockInitializer"}]}]}),he=new e.SchemaInitializer({name:"BulkEditBlockInitializers",wrap:e.gridRowColWrap,title:'{{t("Add block")}}',icon:"PlusOutlined",items:[{type:"itemGroup",title:'{{t("Data blocks")}}',name:"dataBlocks",children:[{name:"form",title:'{{t("Form")}}',Component:V}]},{type:"itemGroup",title:'{{t("Other blocks")}}',name:"otherBlocks",children:[{name:"markdown",title:'{{t("Markdown")}}',Component:"MarkdownBlockInitializer"}]}]}),xe=t=>{const o={title:'{{ t("Submit") }}',"x-action":"submit","x-component":"Action","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:updateSubmit","x-component-props":{type:"primary",htmlType:"submit",useProps:"{{ useCustomizeBulkEditActionProps }}"}};return r.jsx(e.ActionInitializer,T(z({},t),{schema:o}))},Ce=new e.SchemaInitializer({name:"BulkEditFormActionInitializers",title:'{{t("Configure actions")}}',icon:"SettingOutlined",items:[{type:"itemGroup",title:'{{t("Enable actions")}}',name:"enableActions",children:[{name:"submit",title:'{{t("Submit")}}',Component:xe,schema:{"x-action-settings":{}}}]}]}),fe=()=>{const t={type:"void",title:'{{t("Bulk edit")}}',"x-component":"Action","x-action":"customize:bulkEdit","x-action-settings":{updateMode:"selected"},"x-component-props":{openMode:"drawer",icon:"EditOutlined"},properties:{drawer:{type:"void",title:'{{t("Bulk edit")}}',"x-component":"Action.Container","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"TabPaneInitializersForBulkEditFormBlock",properties:{tab1:{type:"void",title:'{{t("Bulk edit")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":"BulkEditBlockInitializers",properties:{}}}}}}}}}},o=e.useSchemaInitializerItem();return r.jsx(e.BlockInitializer,T(z({},o),{schema:t,item:o}))},Se=new e.SchemaSettings({name:"fieldSettings:BulkEditFormItem",items:[{name:"decoratorOptions",type:"itemGroup",hideIfNoChildren:!0,useComponentProps(){const{t}=g.useTranslation();return{title:t("Generic properties")}},useChildren(){return[{name:"editFieldTitle",type:"modal",useComponentProps(){var y;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),a=l.useFieldSchema(),{getCollectionJoinField:c}=e.useCollectionManager_deprecated(),{getField:d}=e.useCollection(),m=d(a.name)||c(a["x-collection-field"]);return{title:t("Edit field title"),schema:{type:"object",title:t("Edit field title"),properties:{title:{title:t("Field title"),default:n==null?void 0:n.title,description:`${t("Original field title: ")}${(y=m==null?void 0:m.uiSchema)==null?void 0:y.title}`,"x-decorator":"FormItem","x-component":"Input","x-component-props":{}}}},onSubmit({title:p}){p&&(n.title=p,a.title=p,o.emit("patch",{schema:{"x-uid":a["x-uid"],title:a.title}})),o.refresh()}}}},{name:"displayTitle",type:"switch",useComponentProps(){var c,d;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),a=l.useFieldSchema();return{title:t("Display title"),checked:(d=(c=a["x-decorator-props"])==null?void 0:c.showTitle)!=null?d:!0,onChange(m){a["x-decorator-props"]=a["x-decorator-props"]||{},a["x-decorator-props"].showTitle=m,n.decoratorProps.showTitle=m,o.emit("patch",{schema:{"x-uid":a["x-uid"],"x-decorator-props":T(z({},a["x-decorator-props"]),{showTitle:m})}}),o.refresh()}}}},{name:"editDescription",type:"modal",useComponentProps(){const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),a=l.useFieldSchema();return{title:t("Edit description"),schema:{type:"object",title:t("Edit description"),properties:{description:{default:n==null?void 0:n.description,"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{}}}},onSubmit({description:c}){n.description=c,a.description=c,o.emit("patch",{schema:{"x-uid":a["x-uid"],description:a.description}}),o.refresh()}}}},{name:"editTooltip",type:"modal",useComponentProps(){var c;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),a=l.useFieldSchema();return{title:t("Edit tooltip"),schema:{type:"object",title:t("Edit tooltip"),properties:{tooltip:{default:(c=a==null?void 0:a["x-decorator-props"])==null?void 0:c.tooltip,"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{}}}},onSubmit({tooltip:d}){n.decoratorProps.tooltip=d,a["x-decorator-props"]=a["x-decorator-props"]||{},a["x-decorator-props"].tooltip=d,o.emit("patch",{schema:{"x-uid":a["x-uid"],"x-decorator-props":a["x-decorator-props"]}}),o.refresh()}}}},{name:"setValidationRules",type:"modal",useComponentProps(){const{t}=g.useTranslation(),o=l.useField(),n=l.useFieldSchema(),{dn:a,refresh:c}=e.useDesignable(),d=e.useValidateSchema(),{getCollectionJoinField:m}=e.useCollectionManager_deprecated(),{getField:y}=e.useCollection(),p=y(n.name)||m(n["x-collection-field"]);return{title:t("Set validation rules"),components:{ArrayCollapse:N.ArrayCollapse,FormLayout:N.FormLayout},schema:{type:"object",title:t("Set validation rules"),properties:{rules:{type:"array",default:n==null?void 0:n["x-validator"],"x-component":"ArrayCollapse","x-decorator":"FormItem","x-component-props":{accordion:!0},maxItems:3,items:{type:"object","x-component":"ArrayCollapse.CollapsePanel","x-component-props":{header:'{{ t("Validation rule") }}'},properties:{index:{type:"void","x-component":"ArrayCollapse.Index"},layout:{type:"void","x-component":"FormLayout","x-component-props":{labelStyle:{marginTop:"6px"},labelCol:8,wrapperCol:16},properties:T(z({},d),{message:{type:"string",title:'{{ t("Error message") }}',"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{autoSize:{minRows:2,maxRows:2}}}})},remove:{type:"void","x-component":"ArrayCollapse.Remove"},moveUp:{type:"void","x-component":"ArrayCollapse.MoveUp"},moveDown:{type:"void","x-component":"ArrayCollapse.MoveDown"}}},properties:{add:{type:"void",title:'{{ t("Add validation rule") }}',"x-component":"ArrayCollapse.Addition","x-reactions":{dependencies:["rules"],fulfill:{state:{disabled:"{{$deps[0].length >= 3}}"}}}}}}}},onSubmit(u){var S;const i=[];for(const f of u.rules)i.push(b.pickBy(f,b.identity));const h={"x-uid":n["x-uid"]};if(["percent"].includes(p==null?void 0:p.interface))for(const f of i)(f.maxValue||f.minValue)&&(f.percentMode=!0),f.percentFormat&&(f.percentFormats=!0);const x=b.concat([],((S=p==null?void 0:p.uiSchema)==null?void 0:S["x-validator"])||[],i);o.validator=x,n["x-validator"]=i,h["x-validator"]=i,a.emit("patch",{schema:h}),c()}}},useVisible(){const{form:t}=e.useFormBlockContext(),o=e.useIsFormReadPretty(),n=e.useValidateSchema();return t&&!o&&n}}]}},{name:"componentOptions",type:"itemGroup",hideIfNoChildren:!0,useComponentProps(){const{t}=g.useTranslation();return{title:t("Specific properties")}},useChildren(){const t=e.useApp(),o=e.useFieldComponentName(),n=t.schemaSettingsManager.get(`fieldSettings:component:${o}`);return(n==null?void 0:n.items)||[]}},{name:"divider",type:"divider"},{name:"delete",type:"remove",sort:100,useComponentProps(){const{t}=g.useTranslation();return{removeParentsIfNoChildren:!0,confirm:{title:t("Delete field")},breakRemoveOn:{"x-component":"Grid"}}}}]});class L extends e.Plugin{load(){return D(this,null,function*(){this.app.addComponents({BulkEditField:le}),this.app.addScopes({useCustomizeBulkEditActionProps:pe}),this.app.schemaSettingsManager.add(se),this.app.schemaSettingsManager.add(ae),this.app.schemaSettingsManager.add(Se),this.app.schemaInitializerManager.add(me),this.app.schemaInitializerManager.add(ue),this.app.schemaInitializerManager.add(he),this.app.schemaInitializerManager.add(Ce);const o={type:"item",title:'{{t("Bulk edit")}}',name:"bulkEdit",Component:fe,schema:{"x-align":"right","x-decorator":"ACLActionProvider","x-action":"customize:bulkEdit","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:bulkEdit","x-acl-action":"update","x-acl-action-props":{skipScopeCheck:!0}},useVisible(){const n=e.useCollection_deprecated();return(n.template!=="view"||(n==null?void 0:n.writableView))&&n.template!=="file"&&n.template!=="sql"}};this.app.schemaInitializerManager.addItem("TableActionInitializers","customize.bulkEdit",o),this.app.schemaInitializerManager.addItem("GanttActionInitializers","customize.bulkEdit",o),this.app.schemaInitializerManager.addItem("MapActionInitializers","customize.bulkEdit",o)})}}s.BulkEditPlugin=L,s.default=L,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
6
|
+
`,children:[a.jsxs(k.Select,{defaultValue:c,value:c,onChange:i,children:[a.jsx(k.Select.Option,{value:1,children:o("Remains the same")}),a.jsx(k.Select.Option,{value:2,children:o("Changed to")}),a.jsx(k.Select.Option,{value:3,children:o("Clear")}),["subTable","linkTo","m2m","o2m","o2o","oho","obo","m2o"].includes(u==null?void 0:u.interface)&&a.jsx(k.Select.Option,{value:4,children:o("Add attach")})]}),[2,4].includes(c)&&(u==null?void 0:u.interface)!=="checkbox"&&a.jsx(ce,T(z({},t),{value:m,onChange:h,style:{minWidth:150}})),[2,4].includes(c)&&(u==null?void 0:u.interface)==="checkbox"&&a.jsx(k.Checkbox,{checked:m,onChange:h})]})},de=t=>{const{name:o,fields:n}=e.useCollection_deprecated(),{getInterface:r,getCollection:c}=e.useCollectionManager_deprecated(),d=l.useForm(),{readPretty:m=d.readPretty,block:y="Form"}=t||{},p=e.useRemoveGridFormItem();return I.useMemo(()=>n==null?void 0:n.filter(i=>{var h;return(i==null?void 0:i.interface)&&!((h=i==null?void 0:i.uiSchema)!=null&&h["x-read-pretty"])&&i.interface!=="snapshot"&&i.type!=="sequence"}).map(i=>{var S,f,v;const h=r(i.interface),x={type:"string",name:i.name,title:((S=i==null?void 0:i.uiSchema)==null?void 0:S.title)||i.name,"x-toolbar":"FormItemSchemaToolbar","x-settings":"fieldSettings:BulkEditFormItem","x-component":"BulkEditField","x-decorator":"FormItem","x-collection-field":`${o}.${i.name}`};return{name:((f=i==null?void 0:i.uiSchema)==null?void 0:f.title)||i.name,type:"item",title:((v=i==null?void 0:i.uiSchema)==null?void 0:v.title)||i.name,Component:"CollectionFieldInitializer",remove:p,schemaInitialize:B=>{var M;(M=h==null?void 0:h.schemaInitialize)==null||M.call(h,B,{field:i,block:y,readPretty:m,targetCollection:c(i.target)})},schema:x}}),[n])},pe=()=>{var B,M,W,_;const t=l.useForm(),{t:o}=g.useTranslation(),{field:n,resource:r,__parent:c}=e.useBlockRequestContext(),d=I.useContext(l.SchemaExpressionScopeContext),m=e.useActionContext(),y=w.useNavigate(),p=e.useCompile(),u=l.useField(),i=e.useTableBlockContext(),{modal:h}=k.App.useApp(),{rowKey:x}=i,S=(_=(W=(M=(B=i.field)==null?void 0:B.data)==null?void 0:M.selectedRowKeys)!=null?W:d==null?void 0:d.selectedRecordKeys)!=null?_:{},{setVisible:f,fieldSchema:v}=m;return{onClick(){return D(this,null,function*(){var J,H,K,Q,O,R,q,X;const{onSuccess:C,skipValidator:ge,updateMode:ye}=(J=v==null?void 0:v["x-action-settings"])!=null?J:{},{filter:ke}=(K=(H=c.service.params)==null?void 0:H[0])!=null?K:{};ge||(yield t.submit());const A=b.cloneDeep(t.values);u.data=n.data||{},u.data.loading=!0;for(const F in A)if(Object.prototype.hasOwnProperty.call(A,F)){const G=A[F];E.Clear in G?A[F]=null:E.ChangedTo in G?A[F]=G[E.ChangedTo]:E.RemainsTheSame in G&&delete A[F]}try{const F={values:A,filter:ke,forceUpdate:!1};if(ye==="selected"){if(!(S!=null&&S.length)){k.message.error(o("Please select the records to be updated"));return}F.filter={$and:[{[x||"id"]:{$in:S}}]}}if(F.filter||(F.forceUpdate=!0),yield r.update(F),u.data.loading=!1,r instanceof e.TableFieldResource||(R=(O=(Q=c==null?void 0:c.__parent)==null?void 0:Q.service)==null?void 0:O.refresh)==null||R.call(O),(X=(q=c==null?void 0:c.service)==null?void 0:q.refresh)==null||X.call(q),f==null||f(!1),!(C!=null&&C.successMessage))return;C!=null&&C.manualClose?h.success({title:p(C==null?void 0:C.successMessage),onOk:()=>D(this,null,function*(){yield t.reset(),C!=null&&C.redirecting&&(C!=null&&C.redirectTo)&&(P.isURL(C.redirectTo)?window.location.href=C.redirectTo:y(C.redirectTo))})}):k.message.success(p(C==null?void 0:C.successMessage))}finally{u.data.loading=!1}})}}},me=new e.SchemaInitializer({name:"BulkEditFormItemInitializers",wrap:e.gridRowColWrap,icon:"SettingOutlined",title:'{{t("Configure fields")}}',items:[{name:"displayFields",type:"itemGroup",title:'{{t("Display fields")}}',useChildren:de},{name:"divider",type:"divider"},{name:"addText",title:'{{t("Add text")}}',Component:"BlockItemInitializer",schema:{type:"void","x-editable":!1,"x-decorator":"FormItem","x-toolbar":"BlockSchemaToolbar","x-settings":"blockSettings:markdown","x-component":"Markdown.Void","x-component-props":{content:'{{t("This is a demo text, **supports Markdown syntax**.")}}'}}}]}),V=()=>{const u=e.useSchemaInitializerItem(),{onCreateBlockSchema:o,componentType:n,createBlockSchema:r}=u,c=te(u,["onCreateBlockSchema","componentType","createBlockSchema"]),{insert:d}=e.useSchemaInitializer(),{getTemplateSchemaByMode:m}=e.useSchemaTemplateManager(),y=e.useBlockAssociationContext(),p=e.useCollection_deprecated();return a.jsx(e.SchemaInitializerItem,T(z({icon:a.jsx(ie.FormOutlined,{})},c),{onClick:h=>D(this,[h],function*({item:i}){if(i.template){const x=yield m(i);if(i.template.componentName==="FormItem"){const S=e.createFormBlockSchema({actionInitializers:"CreateFormActionInitializers",association:y,collection:p.name,dataSource:p.dataSource,template:x});i.mode==="reference"&&(S["x-template-key"]=i.template.key),d(S)}else d(x)}else d(e.createFormBlockSchema({formItemInitializers:"BulkEditFormItemInitializers",actionInitializers:"BulkEditFormActionInitializers",association:y,collection:p.name,dataSource:p.dataSource}))}),items:e.useRecordCollectionDataSourceItems("FormItem")}))},ue=new e.SchemaInitializer({name:"CreateFormBulkEditBlockInitializers",wrap:e.gridRowColWrap,title:'{{t("Add block")}}',icon:"PlusOutlined",items:[{type:"itemGroup",title:'{{t("Data blocks")}}',name:"dataBlocks",children:[{name:"form",title:'{{t("Form")}}',Component:V}]},{type:"itemGroup",title:'{{t("Other blocks")}}',name:"otherBlocks",children:[{name:"markdown",title:'{{t("Markdown")}}',Component:"MarkdownBlockInitializer"}]}]}),he=new e.SchemaInitializer({name:"BulkEditBlockInitializers",wrap:e.gridRowColWrap,title:'{{t("Add block")}}',icon:"PlusOutlined",items:[{type:"itemGroup",title:'{{t("Data blocks")}}',name:"dataBlocks",children:[{name:"form",title:'{{t("Form")}}',Component:V}]},{type:"itemGroup",title:'{{t("Other blocks")}}',name:"otherBlocks",children:[{name:"markdown",title:'{{t("Markdown")}}',Component:"MarkdownBlockInitializer"}]}]}),xe=t=>{const o={title:'{{ t("Submit") }}',"x-action":"submit","x-component":"Action","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:updateSubmit","x-component-props":{type:"primary",htmlType:"submit",useProps:"{{ useCustomizeBulkEditActionProps }}"}};return a.jsx(e.ActionInitializer,T(z({},t),{schema:o}))},Ce=new e.SchemaInitializer({name:"BulkEditFormActionInitializers",title:'{{t("Configure actions")}}',icon:"SettingOutlined",items:[{type:"itemGroup",title:'{{t("Enable actions")}}',name:"enableActions",children:[{name:"submit",title:'{{t("Submit")}}',Component:xe,schema:{"x-action-settings":{}}}]}]}),fe=()=>{const t={type:"void",title:'{{t("Bulk edit")}}',"x-component":"Action","x-action":"customize:bulkEdit","x-action-settings":{updateMode:"selected"},"x-component-props":{openMode:"drawer",icon:"EditOutlined"},properties:{drawer:{type:"void",title:'{{t("Bulk edit")}}',"x-component":"Action.Container","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"TabPaneInitializersForBulkEditFormBlock",properties:{tab1:{type:"void",title:'{{t("Bulk edit")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":"BulkEditBlockInitializers",properties:{}}}}}}}}}},o=e.useSchemaInitializerItem();return a.jsx(e.BlockInitializer,T(z({},o),{schema:t,item:o}))},Se=new e.SchemaSettings({name:"fieldSettings:BulkEditFormItem",items:[{name:"decoratorOptions",type:"itemGroup",hideIfNoChildren:!0,useComponentProps(){const{t}=g.useTranslation();return{title:t("Generic properties")}},useChildren(){return[{name:"editFieldTitle",type:"modal",useComponentProps(){var y;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),r=l.useFieldSchema(),{getCollectionJoinField:c}=e.useCollectionManager_deprecated(),{dataSource:d}=e.useCollection_deprecated(),m=c(r["x-collection-field"],d);return{title:t("Edit field title"),schema:{type:"object",title:t("Edit field title"),properties:{title:{title:t("Field title"),default:n==null?void 0:n.title,description:`${t("Original field title: ")}${(y=m==null?void 0:m.uiSchema)==null?void 0:y.title}`,"x-decorator":"FormItem","x-component":"Input","x-component-props":{}}}},onSubmit({title:p}){p&&(n.title=p,r.title=p,o.emit("patch",{schema:{"x-uid":r["x-uid"],title:r.title}})),o.refresh()}}}},{name:"displayTitle",type:"switch",useComponentProps(){var c,d;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),r=l.useFieldSchema();return{title:t("Display title"),checked:(d=(c=r["x-decorator-props"])==null?void 0:c.showTitle)!=null?d:!0,onChange(m){r["x-decorator-props"]=r["x-decorator-props"]||{},r["x-decorator-props"].showTitle=m,n.decoratorProps.showTitle=m,o.emit("patch",{schema:{"x-uid":r["x-uid"],"x-decorator-props":T(z({},r["x-decorator-props"]),{showTitle:m})}}),o.refresh()}}}},{name:"editDescription",type:"modal",useComponentProps(){const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),r=l.useFieldSchema();return{title:t("Edit description"),schema:{type:"object",title:t("Edit description"),properties:{description:{default:n==null?void 0:n.description,"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{}}}},onSubmit({description:c}){n.description=c,r.description=c,o.emit("patch",{schema:{"x-uid":r["x-uid"],description:r.description}}),o.refresh()}}}},{name:"editTooltip",type:"modal",useComponentProps(){var c;const{t}=g.useTranslation(),{dn:o}=e.useDesignable(),n=l.useField(),r=l.useFieldSchema();return{title:t("Edit tooltip"),schema:{type:"object",title:t("Edit tooltip"),properties:{tooltip:{default:(c=r==null?void 0:r["x-decorator-props"])==null?void 0:c.tooltip,"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{}}}},onSubmit({tooltip:d}){n.decoratorProps.tooltip=d,r["x-decorator-props"]=r["x-decorator-props"]||{},r["x-decorator-props"].tooltip=d,o.emit("patch",{schema:{"x-uid":r["x-uid"],"x-decorator-props":r["x-decorator-props"]}}),o.refresh()}}}},{name:"setValidationRules",type:"modal",useComponentProps(){const{t}=g.useTranslation(),o=l.useField(),n=l.useFieldSchema(),{dn:r,refresh:c}=e.useDesignable(),d=e.useValidateSchema(),{getCollectionJoinField:m}=e.useCollectionManager_deprecated(),{dataSource:y}=e.useCollection_deprecated(),p=m(n["x-collection-field"],y);return{title:t("Set validation rules"),components:{ArrayCollapse:N.ArrayCollapse,FormLayout:N.FormLayout},schema:{type:"object",title:t("Set validation rules"),properties:{rules:{type:"array",default:n==null?void 0:n["x-validator"],"x-component":"ArrayCollapse","x-decorator":"FormItem","x-component-props":{accordion:!0},maxItems:3,items:{type:"object","x-component":"ArrayCollapse.CollapsePanel","x-component-props":{header:'{{ t("Validation rule") }}'},properties:{index:{type:"void","x-component":"ArrayCollapse.Index"},layout:{type:"void","x-component":"FormLayout","x-component-props":{labelStyle:{marginTop:"6px"},labelCol:8,wrapperCol:16},properties:T(z({},d),{message:{type:"string",title:'{{ t("Error message") }}',"x-decorator":"FormItem","x-component":"Input.TextArea","x-component-props":{autoSize:{minRows:2,maxRows:2}}}})},remove:{type:"void","x-component":"ArrayCollapse.Remove"},moveUp:{type:"void","x-component":"ArrayCollapse.MoveUp"},moveDown:{type:"void","x-component":"ArrayCollapse.MoveDown"}}},properties:{add:{type:"void",title:'{{ t("Add validation rule") }}',"x-component":"ArrayCollapse.Addition","x-reactions":{dependencies:["rules"],fulfill:{state:{disabled:"{{$deps[0].length >= 3}}"}}}}}}}},onSubmit(u){var S;const i=[];for(const f of u.rules)i.push(b.pickBy(f,b.identity));const h={"x-uid":n["x-uid"]};if(["percent"].includes(p==null?void 0:p.interface))for(const f of i)(f.maxValue||f.minValue)&&(f.percentMode=!0),f.percentFormat&&(f.percentFormats=!0);const x=b.concat([],((S=p==null?void 0:p.uiSchema)==null?void 0:S["x-validator"])||[],i);o.validator=x,n["x-validator"]=i,h["x-validator"]=i,r.emit("patch",{schema:h}),c()}}},useVisible(){const{form:t}=e.useFormBlockContext(),o=e.useIsFormReadPretty(),n=e.useValidateSchema();return t&&!o&&n}}]}},{name:"componentOptions",type:"itemGroup",hideIfNoChildren:!0,useComponentProps(){const{t}=g.useTranslation();return{title:t("Specific properties")}},useChildren(){const t=e.useApp(),o=e.useFieldComponentName(),n=t.schemaSettingsManager.get(`fieldSettings:component:${o}`);return(n==null?void 0:n.items)||[]}},{name:"divider",type:"divider"},{name:"delete",type:"remove",sort:100,useComponentProps(){const{t}=g.useTranslation();return{removeParentsIfNoChildren:!0,confirm:{title:t("Delete field")},breakRemoveOn:{"x-component":"Grid"}}}}]});class L extends e.Plugin{load(){return D(this,null,function*(){this.app.addComponents({BulkEditField:le}),this.app.addScopes({useCustomizeBulkEditActionProps:pe}),this.app.schemaSettingsManager.add(se),this.app.schemaSettingsManager.add(ae),this.app.schemaSettingsManager.add(Se),this.app.schemaInitializerManager.add(me),this.app.schemaInitializerManager.add(ue),this.app.schemaInitializerManager.add(he),this.app.schemaInitializerManager.add(Ce);const o={type:"item",title:'{{t("Bulk edit")}}',name:"bulkEdit",Component:fe,schema:{"x-align":"right","x-decorator":"ACLActionProvider","x-action":"customize:bulkEdit","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:bulkEdit","x-acl-action":"update","x-acl-action-props":{skipScopeCheck:!0}},useVisible(){const n=e.useCollection_deprecated();return(n.template!=="view"||(n==null?void 0:n.writableView))&&n.template!=="file"&&n.template!=="sql"}};this.app.schemaInitializerManager.addItem("TableActionInitializers","customize.bulkEdit",o),this.app.schemaInitializerManager.addItem("GanttActionInitializers","customize.bulkEdit",o),this.app.schemaInitializerManager.addItem("MapActionInitializers","customize.bulkEdit",o)})}}s.BulkEditPlugin=L,s.default=L,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
package/dist/externalVersion.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
module.exports = {
|
|
2
2
|
"@formily/react": "2.3.0",
|
|
3
|
-
"@nocobase/client": "0.20.0-alpha.
|
|
3
|
+
"@nocobase/client": "0.20.0-alpha.6",
|
|
4
4
|
"antd": "5.12.8",
|
|
5
5
|
"react": "18.2.0",
|
|
6
6
|
"react-i18next": "11.18.6",
|
|
@@ -9,9 +9,9 @@ module.exports = {
|
|
|
9
9
|
"@formily/core": "2.3.0",
|
|
10
10
|
"lodash": "4.17.21",
|
|
11
11
|
"react-router-dom": "6.21.0",
|
|
12
|
-
"@nocobase/utils": "0.20.0-alpha.
|
|
13
|
-
"@nocobase/server": "0.20.0-alpha.
|
|
14
|
-
"@nocobase/test": "0.20.0-alpha.
|
|
12
|
+
"@nocobase/utils": "0.20.0-alpha.6",
|
|
13
|
+
"@nocobase/server": "0.20.0-alpha.6",
|
|
14
|
+
"@nocobase/test": "0.20.0-alpha.6",
|
|
15
15
|
"@emotion/css": "11.11.2",
|
|
16
16
|
"@formily/shared": "2.3.0"
|
|
17
17
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nocobase/plugin-action-bulk-edit",
|
|
3
|
-
"version": "0.20.0-alpha.
|
|
3
|
+
"version": "0.20.0-alpha.6",
|
|
4
4
|
"main": "dist/server/index.js",
|
|
5
5
|
"homepage": "https://docs.nocobase.com/handbook/action-bulk-edit",
|
|
6
6
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-edit",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"@nocobase/server": "0.x",
|
|
15
15
|
"@nocobase/test": "0.x"
|
|
16
16
|
},
|
|
17
|
-
"gitHead": "
|
|
17
|
+
"gitHead": "281767b02ce11f9172fb72e5e53ff98bc80b6eaf",
|
|
18
18
|
"keywords": [
|
|
19
19
|
"Actions"
|
|
20
20
|
]
|