@nocobase/plugin-field-sequence 1.6.0-alpha.3 → 1.6.0-alpha.30

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.
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("antd"),require("react-i18next"),require("@formily/react"),require("@nocobase/utils/client"),require("@formily/core"),require("@nocobase/client"),require("@formily/antd-v5"),require("react")):"function"==typeof define&&define.amd?define("@nocobase/plugin-field-sequence",["antd","react-i18next","@formily/react","@nocobase/utils/client","@formily/core","@nocobase/client","@formily/antd-v5","react"],t):"object"==typeof exports?exports["@nocobase/plugin-field-sequence"]=t(require("antd"),require("react-i18next"),require("@formily/react"),require("@nocobase/utils/client"),require("@formily/core"),require("@nocobase/client"),require("@formily/antd-v5"),require("react")):e["@nocobase/plugin-field-sequence"]=t(e.antd,e["react-i18next"],e["@formily/react"],e["@nocobase/utils/client"],e["@formily/core"],e["@nocobase/client"],e["@formily/antd-v5"],e.react)}(self,function(e,t,n,r,o,c,i,a){return function(){"use strict";var u,l={632:function(e){e.exports=i},563:function(e){e.exports=o},505:function(e){e.exports=n},772:function(e){e.exports=c},584:function(e){e.exports=r},721:function(t){t.exports=e},156:function(e){e.exports=a},238:function(e){e.exports=t}},s={};function p(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={exports:{}};return l[e](n,n.exports,p),n.exports}p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,{a:t}),t},p.d=function(e,t){for(var n in t)p.o(t,n)&&!p.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var f={};p.r(f),p.d(f,{PluginFieldSequenceClient:function(){return W},default:function(){return J}});var y=p("772"),m=p("156"),d=p.n(m),b=p("632"),v=p("563"),x=p("505"),g=p("584"),h=p("721"),O=p("238"),j="field-sequence";function w(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function P(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e){return(S=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function E(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){P(e,t,n[t])})}return e}function q(e,t){return(q=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function C(e,t){return!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function F(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(F=function(){return!!e})()}function D(){var e=C(["\n display: flex;\n gap: 1em;\n flex-wrap: wrap;\n "]);return D=function(){return e},e}function I(){var e=C(["\n margin: 0;\n padding: 0;\n "]);return I=function(){return e},e}function k(){var e=C(["\n margin-bottom: 0;\n "]);return k=function(){return e},e}function T(){var e=C(["\n justify-content: flex-end;\n "]);return T=function(){return e},e}function Y(){var e=C(["\n > *:not(:last-child) {\n margin-right: 0.5em;\n }\n button {\n padding: 0;\n }\n "]);return Y=function(){return e},e}function M(e){var t=(0,y.useCompile)(),n=(0,x.useForm)().setValuesIn,r=b.ArrayTable.useIndex();return(0,x.useFormEffects)(function(){(0,v.onFieldValueChange)("patterns.".concat(r,".type"),function(e){var t=R[e.value];n("patterns.".concat(r,".options"),t.defaults?E({},t.defaults):{})})}),d().createElement(h.Select,E({popupMatchSelectWidth:!1},e),Object.keys(R).map(function(e){return d().createElement(h.Select.Option,{key:e,value:e},t(R[e].title))}))}function _(){var e=(0,y.useCompile)(),t=(0,x.useForm)().values,n=b.ArrayTable.useIndex(),r=t.patterns[n],o=r.type,c=r.options,i=R[o];return d().createElement("div",{className:(0,y.css)(D())},Object.keys(c).filter(function(e){return void 0!==c[e]&&i.optionRenders[e]}).map(function(t){var n=i.optionRenders[t],r=i.fieldset[t].title;return n?d().createElement("dl",{key:t,className:(0,y.css)(I())},d().createElement("dt",null,e(r)),d().createElement("dd",{className:(0,y.css)(k())},d().createElement(n,{key:t,value:c[t]}))):null}))}var R={string:{title:'{{t("Fixed text", { ns: "'.concat(j,'" })}}'),optionRenders:{value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{value:""};return d().createElement("code",null,e.value)}},fieldset:{value:{type:"string",title:'{{t("Text content", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Input"}}},integer:{title:'{{t("Autoincrement", { ns: "'.concat(j,'" })}}'),optionRenders:{digits:function(e){var t=e.value;return d().createElement("code",null,t)},start:function(e){var t=e.value;return d().createElement("code",null,t)},cycle:y.Cron.ReadPretty},fieldset:{digits:{type:"number",title:'{{t("Digits", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{min:1,max:10},required:!0,default:1,"x-reactions":{target:"start",fulfill:{schema:{"x-component-props.max":"{{ 10 ** $self.value - 1 }}"}}}},start:{type:"number",title:'{{t("Start from", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{min:0},required:!0,default:0},cycle:(P(u={type:"string",title:'{{t("Reset cycle", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem"},"x-component",function(e){var t=e.value,n=e.onChange,r=[{label:"No reset",value:0},{label:"Daily",value:1,cron:"0 0 * * *"},{label:"Every Monday",value:2,cron:"0 0 * * 1"},{label:"Monthly",value:3,cron:"0 0 1 * *"},{label:"Yearly",value:4,cron:"0 0 1 1 *"},{label:"Customize",value:5,cron:"* * * * *"}],o=void 0===t?r[0]:r.find(function(e){return e.cron==t})||r[5];return d().createElement("fieldset",null,d().createElement(h.Select,{value:o.value,onChange:function(e){return n(r[e].cron)}},r.map(function(e){return d().createElement(h.Select.Option,{key:e.value,value:e.value},function(e){var t,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return y.i18n.t(e,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,c;r=e,o=t,c=n[t],o in r?Object.defineProperty(r,o,{value:c,enumerable:!0,configurable:!0,writable:!0}):r[o]=c})}return e}({},r),n=(n={ns:j},n),Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}(e.label))})),5===o.value?d().createElement(y.Cron,{value:t,onChange:n,clearButton:!1}):null)}),P(u,"default",null),u)},defaults:{digits:4,start:1}},date:{title:'{{t("Date", { ns: "'.concat(j,'" })}}'),optionRenders:{format:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{value:"YYYYMMDD"};return d().createElement("code",null,e.value)}},fieldset:{format:{type:"string",title:'{{t("Date format", { ns: "'.concat(j,'" })}}'),description:'{{t(\'Supports all formats of the Day.js library, such as "YYYYMMDD", "YYYY-MM-DD", etc.\', { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Input",default:"YYYYMMDD"}},defaults:{format:"YYYYMMDD"}}};function A(){var e=(0,O.useTranslation)().t,t=(0,y.useCompile)(),n=(0,m.useContext)(x.SchemaOptionsContext),r=(0,x.useForm)(),o=r.values,c=r.setValuesIn,i=b.ArrayTable.useIndex(),a=o.patterns[i],u=a.type,l=a.options,s=R[u],p=(0,y.useToken)().token;return(null==s?void 0:s.fieldset)?d().createElement(h.Button,{type:"link",onClick:function(){(0,b.FormDrawer)({title:t(s.title),zIndex:p.zIndexPopupBase+1e3},function(){return d().createElement(b.FormLayout,{layout:"vertical"},d().createElement(y.SchemaComponentOptions,{scope:n.scope,components:n.components},d().createElement(y.SchemaComponent,{schema:{type:"object","x-component":"fieldset",properties:s.fieldset}})),d().createElement(b.FormDrawer.Footer,null,d().createElement(b.FormButtonGroup,{className:(0,y.css)(T())},d().createElement(b.Submit,{onSubmit:function(e){return e}},e("Submit")))))}).open({initialValues:l}).then(function(e){c("patterns.".concat(i),{type:u,options:E({},e)})}).catch(function(e){(0,g.error)(e)})}},e("Configure")):null}var B=function(e){var t,n,r;function o(){var e,t,n,r,c,i;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),t=this,n=o,r=arguments,n=S(n),P(e=function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(t,F()?Reflect.construct(n,r||[],S(t).constructor):n.apply(t,r)),"name","sequence"),P(e,"type","object"),P(e,"group","advanced"),P(e,"order",3),P(e,"title",'{{t("Sequence", { ns: "'.concat(j,'" })}}')),P(e,"description",'{{t("Automatically generate codes based on configured rules, supporting combinations of dates, numbers, and text.", { ns: "'.concat(j,'" })}}')),P(e,"sortable",!0),P(e,"default",{type:"sequence",uiSchema:{type:"string","x-component":"Input","x-component-props":{}}}),P(e,"availableTypes",["string"]),P(e,"hasDefaultValue",!1),P(e,"filterable",{operators:y.interfacesProperties.operators.string}),P(e,"titleUsable",!0),P(e,"properties",(c=E({},y.interfacesProperties.defaultProps),i=(i={unique:y.interfacesProperties.unique,patterns:{type:"array",title:'{{t("Sequence rules", { ns: "'.concat(j,'" })}}'),required:!0,"x-decorator":"FormItem","x-component":"ArrayTable",items:{type:"object",properties:{sort:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},type:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Type", { ns: "'.concat(j,'" })}}')},properties:{type:{type:"string",name:"type",required:!0,"x-decorator":"FormItem","x-component":M}}},options:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Rule content", { ns: "'.concat(j,'" })}}')},properties:{options:{type:"object",name:"options","x-component":_}}},operations:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Operations", { ns: "'.concat(j,'" })}}'),dataIndex:"operations",fixed:"right",className:(0,y.css)(Y())},properties:{config:{type:"void",properties:{options:{type:"object","x-component":A}}},remove:{type:"void","x-component":"ArrayTable.Remove"}}}}},properties:{add:{type:"void","x-component":"ArrayTable.Addition","x-component-props":{defaultValue:{type:"integer",options:E({},R.integer.defaults)}},title:'{{t("Add rule", { ns: "'.concat(j,'" })}}')}}},inputable:{type:"boolean",title:'{{t("Inputable", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Checkbox"},match:{type:"boolean",title:'{{t("Match rules", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Checkbox","x-reactions":{dependencies:["inputable"],fulfill:{state:{value:"{{$deps[0] && $self.value}}",visible:"{{$deps[0] === true}}"}}}}},i),Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(i)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(i)).forEach(function(e){Object.defineProperty(c,e,Object.getOwnPropertyDescriptor(i,e))}),c)),e}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&q(e,t)}(o,e),t=o,n=[{key:"schemaInitialize",value:function(e,t){var n=t.block,r=t.field;return"Form"===n&&Object.assign(e["x-component-props"],{disabled:!r.inputable}),e}}],w(t.prototype,n),o}(y.CollectionFieldInterface),N=function(e){return d().createElement(y.SchemaComponentOptions,{components:{RuleConfigForm:A}},e.children)};function z(e,t,n,r,o,c,i){try{var a=e[c](i),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function V(e,t,n){return(V=U()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&H(o,n.prototype),o}).apply(null,arguments)}function $(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function G(e){return(G=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function H(e,t){return(H=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function L(e){var t="function"==typeof Map?new Map:void 0;return(L=function(e){var n;if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return V(e,arguments,G(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),H(r,e)})(e)}function U(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(U=function(){return!!e})()}var W=function(e){var t,n,r;function o(){var e,t,n;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),e=this,t=o,n=arguments,t=G(t),function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,U()?Reflect.construct(t,n||[],G(e).constructor):t.apply(e,n))}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&H(e,t)}(o,e),t=o,n=[{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var n,r,o,c,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return c={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function a(c){return function(a){return function(c){if(n)throw TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,a])}}}(this,function(e){return t.app.use(N),t.app.dataSourceManager.addFieldInterfaces([B]),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var c=e.apply(t,n);function i(e){z(c,r,o,i,a,"next",e)}function a(e){z(c,r,o,i,a,"throw",e)}i(void 0)})})()}}],$(t.prototype,n),o}(L(y.Plugin)),J=W;return f}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("antd"),require("react-i18next"),require("@formily/react"),require("@nocobase/utils/client"),require("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/antd-v5")):"function"==typeof define&&define.amd?define("@nocobase/plugin-field-sequence",["antd","react-i18next","@formily/react","@nocobase/utils/client","@formily/core","@nocobase/client","react","@formily/antd-v5"],t):"object"==typeof exports?exports["@nocobase/plugin-field-sequence"]=t(require("antd"),require("react-i18next"),require("@formily/react"),require("@nocobase/utils/client"),require("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/antd-v5")):e["@nocobase/plugin-field-sequence"]=t(e.antd,e["react-i18next"],e["@formily/react"],e["@nocobase/utils/client"],e["@formily/core"],e["@nocobase/client"],e.react,e["@formily/antd-v5"])}(self,function(e,t,n,r,o,c,a,i){return function(){"use strict";var u,l={632:function(e){e.exports=i},563:function(e){e.exports=o},505:function(e){e.exports=n},772:function(e){e.exports=c},584:function(e){e.exports=r},721:function(t){t.exports=e},156:function(e){e.exports=a},238:function(e){e.exports=t}},s={};function p(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={exports:{}};return l[e](n,n.exports,p),n.exports}p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,{a:t}),t},p.d=function(e,t){for(var n in t)p.o(t,n)&&!p.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var f={};p.r(f),p.d(f,{PluginFieldSequenceClient:function(){return W},default:function(){return H}});var m=p("772"),d=p("156"),y=p.n(d),b=p("632"),v=p("563"),h=p("505"),x=p("584"),g=p("721"),O=p("238"),j="field-sequence";function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S(e){return(S=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function P(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){w(e,t,n[t])})}return e}function E(e,t){return(E=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function q(e,t){return!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function C(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(C=function(){return!!e})()}function I(){var e=q(["\n display: flex;\n gap: 1em;\n flex-wrap: wrap;\n "]);return I=function(){return e},e}function F(){var e=q(["\n margin: 0;\n padding: 0;\n "]);return F=function(){return e},e}function D(){var e=q(["\n margin-bottom: 0;\n "]);return D=function(){return e},e}function T(){var e=q(["\n justify-content: flex-end;\n "]);return T=function(){return e},e}function k(){var e=q(["\n > *:not(:last-child) {\n margin-right: 0.5em;\n }\n button {\n padding: 0;\n }\n "]);return k=function(){return e},e}function Y(e){var t=(0,m.useCompile)(),n=(0,h.useForm)().setValuesIn,r=b.ArrayTable.useIndex();return(0,h.useFormEffects)(function(){(0,v.onFieldValueChange)("patterns.".concat(r,".type"),function(e){var t=_[e.value];n("patterns.".concat(r,".options"),t.defaults?P({},t.defaults):{})})}),y().createElement(g.Select,P({popupMatchSelectWidth:!1},e),Object.keys(_).map(function(e){return y().createElement(g.Select.Option,{key:e,value:e},t(_[e].title))}))}function M(){var e=(0,m.useCompile)(),t=(0,h.useForm)().values,n=b.ArrayTable.useIndex(),r=t.patterns[n],o=r.type,c=r.options,a=_[o];return y().createElement("div",{className:(0,m.css)(I())},Object.keys(c).filter(function(e){return void 0!==c[e]&&a.optionRenders[e]}).map(function(t){var n=a.optionRenders[t],r=a.fieldset[t].title;return n?y().createElement("dl",{key:t,className:(0,m.css)(F())},y().createElement("dt",null,e(r)),y().createElement("dd",{className:(0,m.css)(D())},y().createElement(n,{key:t,value:c[t]}))):null}))}var _={string:{title:'{{t("Fixed text", { ns: "'.concat(j,'" })}}'),optionRenders:{value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{value:""};return y().createElement("code",null,e.value)}},fieldset:{value:{type:"string",title:'{{t("Text content", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Input"}}},randomChar:{title:'{{t("Random character", { ns: "'.concat(j,'" })}}'),optionRenders:{length:function(e){var t=e.value;return y().createElement("code",null,t)},charsets:function(e){var t=e.value,n=(0,O.useTranslation)().t,r={number:n("Number",{ns:j}),lowercase:n("Lowercase letters",{ns:j}),uppercase:n("Uppercase letters",{ns:j}),symbol:n("Symbols",{ns:j})};return y().createElement("code",null,(null==t?void 0:t.map(function(e){return r[e]}).join(", "))||n("Number",{ns:j}))}},fieldset:{length:{type:"number",title:'{{t("Length", { ns: "'.concat(j,'" })}}'),description:'{{t("Will generate random characters with specified length.", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{min:1,max:32},required:!0,default:6},charsets:{type:"array",title:'{{t("Character sets", { ns: "'.concat(j,'" })}}'),description:'{{t("Select character sets to generate random characters.", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Select","x-component-props":{mode:"multiple",allowClear:!1},enum:[{value:"number",label:'{{t("Number", { ns: "'.concat(j,'" })}}')},{value:"lowercase",label:'{{t("Lowercase letters", { ns: "'.concat(j,'" })}}')},{value:"uppercase",label:'{{t("Uppercase letters", { ns: "'.concat(j,'" })}}')},{value:"symbol",label:'{{t("Symbols", { ns: "'.concat(j,'" })}}')}],required:!0,default:["number"],"x-validator":{minItems:1,message:'{{t("At least one character set should be selected", { ns: "'.concat(j,'" })}}')}}},defaults:{length:6,charsets:["number"]}},integer:{title:'{{t("Autoincrement", { ns: "'.concat(j,'" })}}'),optionRenders:{digits:function(e){var t=e.value;return y().createElement("code",null,t)},start:function(e){var t=e.value;return y().createElement("code",null,t)},cycle:m.Cron.ReadPretty},fieldset:{digits:{type:"number",title:'{{t("Digits", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{min:1,max:10},required:!0,default:1,"x-reactions":{target:"start",fulfill:{schema:{"x-component-props.max":"{{ 10 ** $self.value - 1 }}"}}}},start:{type:"number",title:'{{t("Start from", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{min:0},required:!0,default:0},cycle:(w(u={type:"string",title:'{{t("Reset cycle", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem"},"x-component",function(e){var t=e.value,n=e.onChange,r=[{label:"No reset",value:0},{label:"Daily",value:1,cron:"0 0 * * *"},{label:"Every Monday",value:2,cron:"0 0 * * 1"},{label:"Monthly",value:3,cron:"0 0 1 * *"},{label:"Yearly",value:4,cron:"0 0 1 1 *"},{label:"Customize",value:5,cron:"* * * * *"}],o=void 0===t?r[0]:r.find(function(e){return e.cron==t})||r[5];return y().createElement("fieldset",null,y().createElement(g.Select,{value:o.value,onChange:function(e){return n(r[e].cron)}},r.map(function(e){return y().createElement(g.Select.Option,{key:e.value,value:e.value},function(e){var t,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m.i18n.t(e,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,c;r=e,o=t,c=n[t],o in r?Object.defineProperty(r,o,{value:c,enumerable:!0,configurable:!0,writable:!0}):r[o]=c})}return e}({},r),n=(n={ns:j},n),Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}(e.label))})),5===o.value?y().createElement(m.Cron,{value:t,onChange:n,clearButton:!1}):null)}),w(u,"default",null),u)},defaults:{digits:4,start:1}},date:{title:'{{t("Date", { ns: "'.concat(j,'" })}}'),optionRenders:{format:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{value:"YYYYMMDD"};return y().createElement("code",null,e.value)}},fieldset:{format:{type:"string",title:'{{t("Date format", { ns: "'.concat(j,'" })}}'),description:'{{t(\'Supports all formats of the Day.js library, such as "YYYYMMDD", "YYYY-MM-DD", etc.\', { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Input",default:"YYYYMMDD"}},defaults:{format:"YYYYMMDD"}}};function R(){var e=(0,O.useTranslation)().t,t=(0,m.useCompile)(),n=(0,d.useContext)(h.SchemaOptionsContext),r=(0,h.useForm)(),o=r.values,c=r.setValuesIn,a=b.ArrayTable.useIndex(),i=o.patterns[a],u=i.type,l=i.options,s=_[u],p=(0,m.useToken)().token;return(null==s?void 0:s.fieldset)?y().createElement(g.Button,{type:"link",onClick:function(){(0,b.FormDrawer)({title:t(s.title),zIndex:p.zIndexPopupBase+1e3},function(){return y().createElement(b.FormLayout,{layout:"vertical"},y().createElement(m.SchemaComponentOptions,{scope:n.scope,components:n.components},y().createElement(m.SchemaComponent,{schema:{type:"object","x-component":"fieldset",properties:s.fieldset}})),y().createElement(b.FormDrawer.Footer,null,y().createElement(b.FormButtonGroup,{className:(0,m.css)(T())},y().createElement(b.Submit,{onSubmit:function(e){return e}},e("Submit")))))}).open({initialValues:l}).then(function(e){c("patterns.".concat(a),{type:u,options:P({},e)})}).catch(function(e){(0,x.error)(e)})}},e("Configure")):null}var A=function(e){function t(){var e,n,r,o,c,a;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,t),n=this,r=t,o=arguments,r=S(r),w(e=function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(n,C()?Reflect.construct(r,o||[],S(n).constructor):r.apply(n,o)),"name","sequence"),w(e,"type","object"),w(e,"group","advanced"),w(e,"order",3),w(e,"title",'{{t("Sequence", { ns: "'.concat(j,'" })}}')),w(e,"description",'{{t("Automatically generate codes based on configured rules, supporting combinations of dates, numbers, and text.", { ns: "'.concat(j,'" })}}')),w(e,"sortable",!0),w(e,"default",{type:"sequence",uiSchema:{type:"string","x-component":"Input","x-component-props":{}}}),w(e,"availableTypes",["string"]),w(e,"hasDefaultValue",!1),w(e,"filterable",{operators:m.interfacesProperties.operators.string}),w(e,"titleUsable",!0),w(e,"properties",(c=P({},m.interfacesProperties.defaultProps),a=(a={unique:m.interfacesProperties.unique,patterns:{type:"array",title:'{{t("Sequence rules", { ns: "'.concat(j,'" })}}'),required:!0,"x-decorator":"FormItem","x-component":"ArrayTable",items:{type:"object",properties:{sort:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},type:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Type", { ns: "'.concat(j,'" })}}')},properties:{type:{type:"string",name:"type",required:!0,"x-decorator":"FormItem","x-component":Y}}},options:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Rule content", { ns: "'.concat(j,'" })}}')},properties:{options:{type:"object",name:"options","x-component":M}}},operations:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Operations", { ns: "'.concat(j,'" })}}'),dataIndex:"operations",fixed:"right",className:(0,m.css)(k())},properties:{config:{type:"void",properties:{options:{type:"object","x-component":R}}},remove:{type:"void","x-component":"ArrayTable.Remove"}}}}},properties:{add:{type:"void","x-component":"ArrayTable.Addition","x-component-props":{defaultValue:{type:"integer",options:P({},_.integer.defaults)}},title:'{{t("Add rule", { ns: "'.concat(j,'" })}}')}}},inputable:{type:"boolean",title:'{{t("Inputable", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Checkbox"},match:{type:"boolean",title:'{{t("Match rules", { ns: "'.concat(j,'" })}}'),"x-decorator":"FormItem","x-component":"Checkbox","x-reactions":{dependencies:["inputable"],fulfill:{state:{value:"{{$deps[0] && $self.value}}",visible:"{{$deps[0] === true}}"}}}}},a),Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(a)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(a)).forEach(function(e){Object.defineProperty(c,e,Object.getOwnPropertyDescriptor(a,e))}),c)),e}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&E(e,t)}(t,e),t}(m.CollectionFieldInterface),N=function(e){return y().createElement(m.SchemaComponentOptions,{components:{RuleConfigForm:R}},e.children)};function B(e,t,n,r,o,c,a){try{var i=e[c](a),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,o)}function V(e,t,n){return(V=G()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&$(o,n.prototype),o}).apply(null,arguments)}function z(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function L(e){return(L=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function $(e,t){return($=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function U(e){var t="function"==typeof Map?new Map:void 0;return(U=function(e){var n;if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return V(e,arguments,L(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),$(r,e)})(e)}function G(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(G=function(){return!!e})()}var W=function(e){var t,n,r;function o(){var e,t,n;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),e=this,t=o,n=arguments,t=L(t),function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,G()?Reflect.construct(t,n||[],L(e).constructor):t.apply(e,n))}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&$(e,t)}(o,e),t=o,n=[{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var n,r,o,c,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return c={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function i(c){return function(i){return function(c){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,i])}}}(this,function(e){return t.app.use(N),t.app.dataSourceManager.addFieldInterfaces([A]),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var c=e.apply(t,n);function a(e){B(c,r,o,a,i,"next",e)}function i(e){B(c,r,o,a,i,"throw",e)}a(void 0)})})()}}],z(t.prototype,n),o}(U(m.Plugin)),H=W;return f}()});
@@ -6,7 +6,6 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import { ISchema } from '@formily/react';
10
9
  import { CollectionFieldInterface } from '@nocobase/client';
11
10
  import React from 'react';
12
11
  declare function RuleTypeSelect(props: any): React.JSX.Element;
@@ -49,66 +48,6 @@ export declare class SequenceFieldInterface extends CollectionFieldInterface {
49
48
  })[];
50
49
  };
51
50
  titleUsable: boolean;
52
- schemaInitialize(schema: ISchema, { block, field }: {
53
- block: any;
54
- field: any;
55
- }): import("@formily/react").Stringify<{
56
- [key: symbol]: any;
57
- [key: `x-${string}`]: any;
58
- [key: `x-${number}`]: any;
59
- version?: string;
60
- name?: import("@formily/react").SchemaKey;
61
- title?: any;
62
- description?: any;
63
- default?: any;
64
- readOnly?: boolean;
65
- writeOnly?: boolean;
66
- type?: import("@formily/react").SchemaTypes;
67
- enum?: import("@formily/react").SchemaEnum<any>;
68
- const?: any;
69
- multipleOf?: number;
70
- maximum?: number;
71
- exclusiveMaximum?: number;
72
- minimum?: number;
73
- exclusiveMinimum?: number;
74
- maxLength?: number;
75
- minLength?: number;
76
- pattern?: string | RegExp;
77
- maxItems?: number;
78
- minItems?: number;
79
- uniqueItems?: boolean;
80
- maxProperties?: number;
81
- minProperties?: number;
82
- required?: string | boolean | string[];
83
- format?: string;
84
- $ref?: string;
85
- $namespace?: string;
86
- definitions?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
87
- properties?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
88
- items?: import("@formily/react").SchemaItems<any, any, any, any, any, any, any, any>;
89
- additionalItems?: import("@formily/react").Stringify<any>;
90
- patternProperties?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
91
- additionalProperties?: import("@formily/react").Stringify<any>;
92
- "x-value"?: any;
93
- "x-index"?: number;
94
- "x-pattern"?: any;
95
- "x-display"?: any;
96
- "x-validator"?: any;
97
- "x-decorator"?: any;
98
- "x-decorator-props"?: any;
99
- "x-component"?: any;
100
- "x-component-props"?: any;
101
- "x-reactions"?: import("@formily/react").SchemaReactions<any>;
102
- "x-content"?: any;
103
- "x-data"?: any;
104
- "x-visible"?: boolean;
105
- "x-hidden"?: boolean;
106
- "x-disabled"?: boolean;
107
- "x-editable"?: boolean;
108
- "x-read-only"?: boolean;
109
- "x-read-pretty"?: boolean;
110
- "x-compile-omitted"?: string[];
111
- }>;
112
51
  properties: {
113
52
  unique: {
114
53
  type: string;
@@ -9,15 +9,15 @@
9
9
 
10
10
  module.exports = {
11
11
  "react": "18.2.0",
12
- "@nocobase/client": "1.6.0-alpha.3",
12
+ "@nocobase/client": "1.6.0-alpha.30",
13
13
  "@formily/antd-v5": "1.1.9",
14
14
  "@formily/core": "2.3.0",
15
15
  "@formily/react": "2.3.0",
16
- "@nocobase/utils": "1.6.0-alpha.3",
16
+ "@nocobase/utils": "1.6.0-alpha.30",
17
17
  "antd": "5.12.8",
18
18
  "react-i18next": "11.18.6",
19
- "@nocobase/server": "1.6.0-alpha.3",
20
- "@nocobase/database": "1.6.0-alpha.3",
19
+ "@nocobase/server": "1.6.0-alpha.30",
20
+ "@nocobase/database": "1.6.0-alpha.30",
21
21
  "dayjs": "1.11.10",
22
22
  "lodash": "4.17.21"
23
23
  };
@@ -24,5 +24,14 @@
24
24
  "Monthly": "每月",
25
25
  "Yearly": "每年",
26
26
  "Operations": "操作",
27
- "Customize": "自定义"
27
+ "Customize": "自定义",
28
+ "Random character": "随机字符",
29
+ "Length": "长度",
30
+ "Will generate random characters with specified length.": "将生成指定长度的随机字符。",
31
+ "Character sets": "字符集",
32
+ "Select character sets to generate random characters.": "选择用于生成随机字符的字符集。",
33
+ "Number": "数字",
34
+ "Lowercase letters": "小写字母",
35
+ "Uppercase letters": "大写字母",
36
+ "Symbols": "符号"
28
37
  }
@@ -1 +1 @@
1
- {"name":"cron-parser","version":"4.4.0","description":"Node.js library for parsing crontab instructions","main":"lib/parser.js","types":"index.d.ts","typesVersions":{"<4.1":{"*":["types/ts3/*"]}},"directories":{"test":"test"},"scripts":{"test:tsd":"tsd","test:unit":"TZ=UTC tap ./test/*.js","test:cover":"TZ=UTC tap --coverage-report=html ./test/*.js","lint":"eslint .","lint:fix":"eslint --fix .","test":"npm run lint && npm run test:unit && npm run test:tsd"},"repository":{"type":"git","url":"https://github.com/harrisiirak/cron-parser.git"},"keywords":["cron","crontab","parser"],"author":"Harri Siirak","contributors":["Nicholas Clawson","Daniel Prentis <daniel@salsitasoft.com>","Renault John Lecoultre","Richard Astbury <richard.astbury@gmail.com>","Meaglin Wasabi <Meaglin.wasabi@gmail.com>","Mike Kusold <hello@mikekusold.com>","Alex Kit <alex.kit@atmajs.com>","Santiago Gimeno <santiago.gimeno@gmail.com>","Daniel <darc.tec@gmail.com>","Christian Steininger <christian.steininger.cs@gmail.com>","Mykola Piskovyi <m.piskovyi@gmail.com>","Brian Vaughn <brian.david.vaughn@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Yasuhiroki <yasuhiroki.duck@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Brendan Warkentin <faazshift@gmail.com>","Charlie Fish <fishcharlie.code@gmail.com>","Ian Graves <ian+diskimage@iangrav.es>","Andy Thompson <me@andytson.com>","Regev Brody <regevbr@gmail.com>"],"license":"MIT","dependencies":{"luxon":"^1.28.0"},"devDependencies":{"eslint":"^8.2.0","sinon":"^10.0.0","tap":"^16.0.1","tsd":"^0.19.0"},"engines":{"node":">=0.8"},"browser":{"fs":false},"tap":{"check-coverage":false},"tsd":{"directory":"test","compilerOptions":{"lib":["es2017","dom"]}},"_lastModified":"2024-12-09T02:50:03.394Z"}
1
+ {"name":"cron-parser","version":"4.4.0","description":"Node.js library for parsing crontab instructions","main":"lib/parser.js","types":"index.d.ts","typesVersions":{"<4.1":{"*":["types/ts3/*"]}},"directories":{"test":"test"},"scripts":{"test:tsd":"tsd","test:unit":"TZ=UTC tap ./test/*.js","test:cover":"TZ=UTC tap --coverage-report=html ./test/*.js","lint":"eslint .","lint:fix":"eslint --fix .","test":"npm run lint && npm run test:unit && npm run test:tsd"},"repository":{"type":"git","url":"https://github.com/harrisiirak/cron-parser.git"},"keywords":["cron","crontab","parser"],"author":"Harri Siirak","contributors":["Nicholas Clawson","Daniel Prentis <daniel@salsitasoft.com>","Renault John Lecoultre","Richard Astbury <richard.astbury@gmail.com>","Meaglin Wasabi <Meaglin.wasabi@gmail.com>","Mike Kusold <hello@mikekusold.com>","Alex Kit <alex.kit@atmajs.com>","Santiago Gimeno <santiago.gimeno@gmail.com>","Daniel <darc.tec@gmail.com>","Christian Steininger <christian.steininger.cs@gmail.com>","Mykola Piskovyi <m.piskovyi@gmail.com>","Brian Vaughn <brian.david.vaughn@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Yasuhiroki <yasuhiroki.duck@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Brendan Warkentin <faazshift@gmail.com>","Charlie Fish <fishcharlie.code@gmail.com>","Ian Graves <ian+diskimage@iangrav.es>","Andy Thompson <me@andytson.com>","Regev Brody <regevbr@gmail.com>"],"license":"MIT","dependencies":{"luxon":"^1.28.0"},"devDependencies":{"eslint":"^8.2.0","sinon":"^10.0.0","tap":"^16.0.1","tsd":"^0.19.0"},"engines":{"node":">=0.8"},"browser":{"fs":false},"tap":{"check-coverage":false},"tsd":{"directory":"test","compilerOptions":{"lib":["es2017","dom"]}},"_lastModified":"2025-03-07T08:31:28.507Z"}
@@ -72,6 +72,7 @@ var sequences_default = (0, import_database.defineCollection)({
72
72
  });
73
73
  }
74
74
  },
75
+ migrationRules: ["overwrite", "schema-only"],
75
76
  name: "sequences",
76
77
  shared: true,
77
78
  fields: [
@@ -266,6 +266,65 @@ sequencePatterns.register("date", {
266
266
  return `.{${((_a = options == null ? void 0 : options.format) == null ? void 0 : _a.length) ?? 8}}`;
267
267
  }
268
268
  });
269
+ const CHAR_SETS = {
270
+ number: "0123456789",
271
+ lowercase: "abcdefghijklmnopqrstuvwxyz",
272
+ uppercase: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
273
+ // 符号只保留常用且安全的符号,有需要的可以自己加比如[]{}|;:,.<>放在链接或者文件名里容易出问题的字符
274
+ symbol: "!@#$%^&*_-+"
275
+ };
276
+ sequencePatterns.register("randomChar", {
277
+ validate(options) {
278
+ if (!(options == null ? void 0 : options.length) || options.length < 1) {
279
+ return "options.length should be configured as a positive integer";
280
+ }
281
+ if (!(options == null ? void 0 : options.charsets) || options.charsets.length === 0) {
282
+ return "At least one character set should be selected";
283
+ }
284
+ if (options.charsets.some((charset) => !CHAR_SETS[charset])) {
285
+ return "Invalid charset selected";
286
+ }
287
+ return null;
288
+ },
289
+ generate(instance, options) {
290
+ const { length = 6, charsets = ["number"] } = options;
291
+ const chars = [...new Set(charsets.reduce((acc, charset) => acc + CHAR_SETS[charset], ""))];
292
+ const getRandomChar = () => {
293
+ const randomIndex = Math.floor(Math.random() * chars.length);
294
+ return chars[randomIndex];
295
+ };
296
+ return Array.from({ length }, () => getRandomChar()).join("");
297
+ },
298
+ batchGenerate(instances, values, options) {
299
+ instances.forEach((instance, i) => {
300
+ values[i] = sequencePatterns.get("randomChar").generate.call(this, instance, options);
301
+ });
302
+ },
303
+ getLength(options) {
304
+ return options.length || 6;
305
+ },
306
+ getMatcher(options) {
307
+ const pattern = [
308
+ ...new Set(
309
+ (options.charsets || ["number"]).reduce((acc, charset) => {
310
+ switch (charset) {
311
+ case "number":
312
+ return acc + "0-9";
313
+ case "lowercase":
314
+ return acc + "a-z";
315
+ case "uppercase":
316
+ return acc + "A-Z";
317
+ case "symbol":
318
+ return acc + CHAR_SETS.symbol.replace("-", "").replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&") + "-";
319
+ default:
320
+ return acc;
321
+ }
322
+ }, "")
323
+ )
324
+ ].join("");
325
+ return `[${pattern}]{${options.length || 6}}`;
326
+ }
327
+ });
269
328
  class SequenceField extends import_database.Field {
270
329
  matcher;
271
330
  get dataType() {
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "displayName.zh-CN": "数据表字段:自动编码",
5
5
  "description": "Automatically generate codes based on configured rules, supporting combinations of dates, numbers, and text.",
6
6
  "description.zh-CN": "根据配置的规则自动生成编码,支持日期、数字、文本的组合。",
7
- "version": "1.6.0-alpha.3",
7
+ "version": "1.6.0-alpha.30",
8
8
  "license": "AGPL-3.0",
9
9
  "main": "./dist/server/index.js",
10
10
  "homepage": "https://docs.nocobase.com/handbook/field-sequence",
@@ -29,7 +29,7 @@
29
29
  "@nocobase/test": "1.x",
30
30
  "@nocobase/utils": "1.x"
31
31
  },
32
- "gitHead": "205b4aca5556d5af70679fa401394943a9e51670",
32
+ "gitHead": "4d092cae372fada3df9b57c55705ea3b7dfa6786",
33
33
  "keywords": [
34
34
  "Collection fields"
35
35
  ]