@nocobase/plugin-field-formula 2.0.0-alpha.50 → 2.0.0-alpha.51
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 +1 -1
- package/dist/externalVersion.js +7 -7
- package/package.json +2 -2
package/dist/client/index.js
CHANGED
|
@@ -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("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/reactive"),require("@nocobase/flow-engine"),require("@formily/react"),require("@nocobase/evaluators/client"),require("lodash"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-field-formula",["@formily/core","@nocobase/client","react","@formily/reactive","@nocobase/flow-engine","@formily/react","@nocobase/evaluators/client","lodash","@nocobase/utils/client","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-field-formula"]=t(require("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/reactive"),require("@nocobase/flow-engine"),require("@formily/react"),require("@nocobase/evaluators/client"),require("lodash"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):e["@nocobase/plugin-field-formula"]=t(e["@formily/core"],e["@nocobase/client"],e.react,e["@formily/reactive"],e["@nocobase/flow-engine"],e["@formily/react"],e["@nocobase/evaluators/client"],e.lodash,e["@nocobase/utils/client"],e.antd,e["react-i18next"])}(self,function(e,t,r,n,o,i,u,a,l,c,f){return function(){"use strict";var s={563:function(t){t.exports=e},505:function(e){e.exports=i},229:function(e){e.exports=n},772:function(e){e.exports=t},47:function(e){e.exports=u},667:function(e){e.exports=o},584:function(e){e.exports=l},721:function(e){e.exports=c},467:function(e){e.exports=a},156:function(e){e.exports=r},238:function(e){e.exports=f}},p={};function b(e){var t=p[e];if(void 0!==t)return t.exports;var r=p[e]={exports:{}};return s[e](r,r.exports,b),r.exports}b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var r in t)b.o(t,r)&&!b.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},b.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};return!function(){b.r(d),b.d(d,{PluginFieldFormulaClient:function(){return en},default:function(){return eo}});var e=b(772),t=b(505),r=b(156),n=b.n(r),o=b(563),i=b(229),u=b(467),a=b.n(u),l=b(47),c=b(584),f={boolean:Boolean,integer:{boolean:function(e){return Number(e)},number:function(e){return e>=0?Math.floor(e):Math.ceil(e)},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseInt(e,10);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},bigInt:{boolean:function(e){return Number(e)},number:function(e){return Math.floor(e>=0?Math.floor(e):Math.ceil(e))},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseInt(e,10);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},double:{boolean:function(e){return Number(e)},number:function(e){return e},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseFloat(e);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},decimal:{boolean:function(e){return Number(e)},number:function(e){return e},bigint:function(e){return e},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},string:{boolean:function(e){return e.toString()},number:function(e){return e.toString()},bigint:function(e){return e.toString()},string:function(e){return e},date:function(e){return e.toISOString()}},date:{boolean:function(e){return null},number:function(e){var t=new Date(e);return Number.isNaN(t.valueOf())?null:t},bigint:function(e){var t=new Date(Number(e));return Number.isNaN(t.valueOf())?null:t},string:function(e){var t=Date.parse(e);return Number.isNaN(t)?null:new Date(t)},date:function(e){return new Date(e)}}};function s(e,t){if(null==e)return null;var r,n=void 0===e?"undefined":e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e;"object"==n&&(null!=(r=Date)&&"undefined"!=typeof Symbol&&r[Symbol.hasInstance]?!!r[Symbol.hasInstance](e):e instanceof r)&&(n="date");var o=f[t];if(!o)return null;if("function"==typeof o)return o(e);var i=o[n];return i?i(e):null}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var y={boolean:e.Checkbox.ReadPretty,integer:e.InputNumber.ReadPretty,bigInt:e.InputNumber.ReadPretty,double:e.InputNumber.ReadPretty,decimal:e.InputNumber.ReadPretty,date:e.DatePicker.ReadPretty,string:e.Input.ReadPretty};function m(r){for(var n,o=(0,t.useFieldSchema)(),i=r||o,u=(0,e.useCollection_deprecated)(),a=(0,e.useCollectionManager_deprecated)(),l=a.getCollection,c=a.getCollectionField,f=(null==i||null==(n=i.name)?void 0:n.split("."))||[],s=u,p=0;p<f.length-1;p++)s=l(s.getField(f[p]).target);return c("".concat(s.name,".").concat(f[f.length-1]))}var v=function(){return null};v.Expression=function(t){var r,o=t.value,i=t.useCurrentFields,u=t.onChange,a=(0,e.useApp)().pm.get("field-formula").expressionFields,l=(0,e.useCompile)(),c=(0,e.useCollectionManager_deprecated)().interfaces,f=(null!=(r=null==i?void 0:i())?r:[]).filter(function(e){return a.includes(e.interface)}).map(function(e){var t,r;return{label:l(e.uiSchema.title),value:e.name,children:null==(t=(r=c[e.interface]).usePathOptions)?void 0:t.call(r,e)}});return n().createElement(e.Variable.TextArea,{value:void 0===o?"":o,onChange:u,scope:f})},v.Result=(0,t.connect)(function(u){var f,b,d,v,h,g,O=u.value,S=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(u,["value"]),j=(0,t.useFieldSchema)(),x=null!=(h=m())?h:{},w=x.dataType,P=x.expression,F=x.engine,N=(f=(0,r.useState)(O),function(e){if(Array.isArray(e))return e}(f)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(f,2)||function(e,t){if(e){if("string"==typeof e)return p(e,2);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return p(e,t)}}(f,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),I=N[0],D=N[1],E=l.evaluators.get(void 0===F?"math.js":F).evaluate,T=(0,e.useFormBlockContext)(),M=(0,t.useField)(),A=null==M||null==(v=M.path)?void 0:v.entire,_=null==A?void 0:A.replace(".".concat(j.name),"");(0,r.useEffect)(function(){D(O)},[O]),(0,t.useFormEffects)(function(){(0,o.onFormValuesChange)(function(e){if(!(j.name.indexOf(".")>=0)&&(null==T?void 0:T.form)&&(null==(t=T.form)||!t.readPretty)&&"FormItem"===j["x-decorator"]){var t,r,n=(0,i.toJS)(function(e,t){for(var r=t.split("."),n=0,o=e;n<r.length;){var i=r[n],u=parseInt(null==r?void 0:r[n+1]);o=function(e,t,r){var n=e[t];return Array.isArray(n)?n[r]:n&&(void 0===n?"undefined":n&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)=="object"?n:e}(o,i,u),n+=u>=0?2:1}return o}(e.values,_));try{r=(r=E(P,n))&&s(r,w)}catch(e){r=null}null==r&&null==I&&D(r),D(r)}})}),(0,r.useEffect)(function(){var e,t;e=M.value,t=I,((a().isString(e)&&!isNaN(Date.parse(e))&&(e=new Date(e)),a().isString(t)&&!isNaN(Date.parse(t))&&(t=new Date(t)),a().isDate(e)&&a().isDate(t))?e.getTime()===t.getTime():a().isEqual(e,t))||setTimeout(function(){M.value=I})},[I]);var C=null!=(g=y[w])?g:e.Input;return n().createElement(C,(b=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},S),d=d={value:"double"===w?(0,c.toFixedByStep)(I,u.step):I},Object.getOwnPropertyDescriptors?Object.defineProperties(b,Object.getOwnPropertyDescriptors(d)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(d)).forEach(function(e){Object.defineProperty(b,e,Object.getOwnPropertyDescriptor(d,e))}),b))});var h=new e.SchemaSettings({name:"fieldSettings:component:Formula.Result",items:[{name:"displayFormat",Component:e.SchemaSettingsNumberFormat,useComponentProps:function(){var r=(0,t.useFieldSchema)();return{fieldSchema:(0,e.useColumnSchema)().fieldSchema||r}},useVisible:function(){var r=(0,t.useFieldSchema)(),n=["integer","bigInt","double","decimal"].includes((m((0,e.useColumnSchema)().fieldSchema||r)||{}).dataType);return(0,e.useIsFieldReadPretty)()&&n}}]}),g=b(238),O="field-formula";function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function j(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function x(e){return(x=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function w(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){j(e,t,r[t])})}return e}function P(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function F(e,t){return(F=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function N(e){return function(e){if(Array.isArray(e))return S(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||I(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){if(e){if("string"==typeof e)return S(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return S(e,t)}}function D(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(D=function(){return!!e})()}var E=[{dependencies:["dataType"],fulfill:{state:{display:'{{["double", "decimal"].includes($deps[0]) ? "visible" : "none"}}'}}}],T=[{dependencies:["dataType"],fulfill:{state:{display:'{{$deps[0] === "date" ? "visible" : "none"}}'}}}],M=e.interfacesProperties.defaultProps,A=e.interfacesProperties.dateTimeProps,_=e.interfacesProperties.operators,C={"uiSchema.x-component-props.dateFormat":P(w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.dateFormat"])),{"x-reactions":T}),"uiSchema.x-component-props.showTime":P(w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.showTime"])),{"x-reactions":N(A["uiSchema.x-component-props.showTime"]["x-reactions"]).concat(N(T))}),"uiSchema.x-component-props.timeFormat":w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.timeFormat"]))},R=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,r,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");return r=t,n=arguments,r=x(r),j(e=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,D()?Reflect.construct(r,n||[],x(this).constructor):r.apply(this,n)),"name","formula"),j(e,"type","object"),j(e,"group","advanced"),j(e,"order",1),j(e,"title",'{{t("Formula", { ns: "'.concat(O,'" })}}')),j(e,"description",'{{t("Configure and store the results of calculations between multiple field values in the same record, supporting both Math.js and Excel formula functions.", { ns: "'.concat(O,'" })}}')),j(e,"sortable",!0),j(e,"default",{type:"formula",uiSchema:{type:"string","x-component":"Formula.Result","x-component-props":{stringMode:!0,step:"1"},"x-read-pretty":!0}}),j(e,"properties",P(w(P(w({},M),{dataType:{type:"string",title:'{{t("Storage type")}}',"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}",enum:[{value:"boolean",label:"Boolean"},{value:"integer",label:"Integer"},{value:"bigInt",label:"Big integer"},{value:"double",label:"Double"},{value:"string",label:"String"},{value:"date",label:"Datetime"}],required:!0,default:"double"},"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision")}}',"x-component":"Select","x-decorator":"FormItem",required:!0,default:"0",enum:[{value:"0",label:"1"},{value:"0.1",label:"1.0"},{value:"0.01",label:"1.00"},{value:"0.001",label:"1.000"},{value:"0.0001",label:"1.0000"},{value:"0.00001",label:"1.00000"}],"x-reactions":E}}),C),{engine:{type:"string",title:'{{t("Calculation engine", { ns: "'.concat(O,'" })}}'),"x-decorator":"FormItem","x-component":"Radio.Group",enum:Array.from(l.evaluators.getEntities()).reduce(function(e,t){var r=function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(t,2)||I(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),n=r[0],o=r[1];return e.concat(w({value:n},o))},[]),required:!0,default:"formula.js"},expression:{type:"string",title:'{{t("Expression", { ns: "'.concat(O,'" })}}'),required:!0,"x-component":"Formula.Expression","x-decorator":"FormItem","x-component-props":{useCurrentFields:"{{ useCurrentFields }}"},"x-reactions":{dependencies:["engine"],fulfill:{schema:{description:"{{renderExpressionDescription($deps[0])}}"}}}}})),j(e,"filterable",{operators:_.number}),j(e,"titleUsable",!0),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&F(t,e),t}(e.CollectionFieldInterface);function k(){var e,t,r=(e=["\n &:after {\n content: ':';\n }\n & + a {\n margin-left: 0.25em;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return k=function(){return r},r}function q(t){var r=l.evaluators.get(t);return(null==r?void 0:r.link)?n().createElement(n().Fragment,null,n().createElement("span",{className:(0,e.css)(k())},e.i18n.t("Syntax references",{ns:O})),n().createElement("a",{href:r.link,target:"_blank",rel:"noreferrer"},r.label)):null}var B=b(667),$=b(721);function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function G(e){return(G=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function U(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function z(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function J(e,t){return(J=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function W(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function H(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(H=function(){return!!e})()}var K={boolean:e.Checkbox.ReadPretty,integer:e.InputNumber.ReadPretty,bigInt:e.InputNumber.ReadPretty,double:e.InputNumber.ReadPretty,decimal:e.InputNumber.ReadPretty,date:e.DatePicker.ReadPretty,string:e.Input.ReadPretty};function L(t){var o,u,f=t.value,p=t.collectionField,b=t.form,d=t.id,y=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,["value","collectionField","form","id"]),m=(null==p?void 0:p.options)||{},v=m.dataType,h=m.expression,O=m.engine,S=(o=(0,r.useState)(f),function(e){if(Array.isArray(e))return e}(o)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(o,2)||function(e,t){if(e){if("string"==typeof e)return V(e,2);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return V(e,t)}}(o,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),j=S[0],x=S[1],w=l.evaluators.get(void 0===O?"math.js":O).evaluate,P=$.Form.useWatch([],b),F=Array.isArray(d)?null==d?void 0:d.join("."):d;(0,g.useTranslation)().t,(0,r.useEffect)(function(){x(f)},[f]),(0,r.useEffect)(function(){if(null==b||!b.readPretty){var e,t=(0,i.toJS)(function(e,t){for(var r=t.split("."),n=0,o=e||{};n<r.length;){var i=r[n],u=parseInt(null==r?void 0:r[n+1]);o=function(e,t,r){var n=null==e?void 0:e[t];return Array.isArray(n)?n[r]:n&&(void 0===n?"undefined":W(n))==="object"?n:e}(o,i,u),n+=u>=0?2:1}return o}(b.getFieldsValue(),F));try{e=(e=w(h,t))&&s(e,v)}catch(t){e=null}null==e&&null==j&&x(e),x(e)}},[P]),(0,r.useEffect)(function(){var e,t;e=f,t=j,((a().isString(e)&&!isNaN(Date.parse(e))&&(e=new Date(e)),a().isString(t)&&!isNaN(Date.parse(t))&&(t=new Date(t)),a().isDate(e)&&a().isDate(t))?e.getTime()===t.getTime():a().isEqual(e,t))||setTimeout(function(){b.setFieldValue(F,j)})},[j]);var N=null!=(u=K[v])?u:e.Input;if(p)return n().createElement(N,z(U({},y),{value:"double"===v?(0,c.toFixedByStep)(j,t.step):j}))}var Q=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=G(e),function(e,t){if(t&&("object"===W(t)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,H()?Reflect.construct(e,t||[],G(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&J(r,e),t=[{key:"render",value:function(){return n().createElement(L,z(U({},this.props),{collectionField:this.context.collectionField,form:this.context.form}))}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(e.FieldModel);function X(e,t,r,n,o,i,u){try{var a=e[i](u),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(n,o)}function Y(e,t,r){return(Y=er()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&ee(o,r.prototype),o}).apply(null,arguments)}B.EditableItemModel.bindModelToInterface("FormulaFieldModel",["formula"],{isDefault:!0}),B.DisplayItemModel.bindModelToInterface("DisplayCheckboxFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"boolean"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayDateTimeFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"date"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayTextFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"string"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayNumberFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||["double","bigint","integer"].includes(t.dataType)}});function Z(e){return(Z=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ee(e,t){return(ee=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function et(e){var t="function"==typeof Map?new Map:void 0;return(et=function(e){if(null===e||-1===Function.toString.call(e).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 Y(e,arguments,Z(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),ee(r,e)})(e)}function er(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(er=function(){return!!e})()}var en=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t,n,o,i;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return t=r,n=arguments,t=Z(t),e=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,er()?Reflect.construct(t,n||[],Z(this).constructor):t.apply(this,n)),i=["checkbox","number","percent","integer","number","percent","input","textarea","email","phone","date","datetime","datetimeNoTz","unixTimestamp","createdAt","updatedAt","radioGroup","checkboxGroup","select","multipleSelect"],(o="expressionFields")in e?Object.defineProperty(e,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[o]=i,e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&ee(r,e),t=[{key:"registerExpressionFieldInterface",value:function(e){if(Array.isArray(e)){var t=this.expressionFields.concat(e);this.expressionFields=t}else this.expressionFields.push(e)}},{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var r,n,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;u;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return u.label++,{value:l[1],done:!1};case 5:u.label++,n=l[1],l=[0];continue;case 7:l=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){u=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){u.label=l[1];break}if(6===l[0]&&u.label<o[1]){u.label=o[1],o=l;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(l);break}o[2]&&u.ops.pop(),u.trys.pop();continue}l=t.call(e,u)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return t.app.addComponents({Formula:v}),t.app.addScopes({renderExpressionDescription:q}),t.app.dataSourceManager.addFieldInterfaces([R]),t.app.schemaSettingsManager.add(h),t.flowEngine.registerModels({FormulaFieldModel:Q}),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function u(e){X(i,n,o,u,a,"next",e)}function a(e){X(i,n,o,u,a,"throw",e)}u(void 0)})})()}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(et(e.Plugin)),eo=en}(),d}()});
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/reactive"),require("@nocobase/flow-engine"),require("@formily/react"),require("@nocobase/evaluators/client"),require("lodash"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-field-formula",["@formily/core","@nocobase/client","react","@formily/reactive","@nocobase/flow-engine","@formily/react","@nocobase/evaluators/client","lodash","@nocobase/utils/client","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-field-formula"]=t(require("@formily/core"),require("@nocobase/client"),require("react"),require("@formily/reactive"),require("@nocobase/flow-engine"),require("@formily/react"),require("@nocobase/evaluators/client"),require("lodash"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):e["@nocobase/plugin-field-formula"]=t(e["@formily/core"],e["@nocobase/client"],e.react,e["@formily/reactive"],e["@nocobase/flow-engine"],e["@formily/react"],e["@nocobase/evaluators/client"],e.lodash,e["@nocobase/utils/client"],e.antd,e["react-i18next"])}(self,function(e,t,r,n,o,i,u,a,l,c,f){return function(){"use strict";var s={563:function(t){t.exports=e},505:function(e){e.exports=i},229:function(e){e.exports=n},772:function(e){e.exports=t},47:function(e){e.exports=u},667:function(e){e.exports=o},584:function(e){e.exports=l},721:function(e){e.exports=c},467:function(e){e.exports=a},156:function(e){e.exports=r},238:function(e){e.exports=f}},p={};function b(e){var t=p[e];if(void 0!==t)return t.exports;var r=p[e]={exports:{}};return s[e](r,r.exports,b),r.exports}b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var r in t)b.o(t,r)&&!b.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},b.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};return!function(){b.r(d),b.d(d,{PluginFieldFormulaClient:function(){return en},default:function(){return eo}});var e=b(772),t=b(505),r=b(156),n=b.n(r),o=b(563),i=b(229),u=b(467),a=b.n(u),l=b(47),c=b(584),f={boolean:Boolean,integer:{boolean:function(e){return Number(e)},number:function(e){return e>=0?Math.floor(e):Math.ceil(e)},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseInt(e,10);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},bigInt:{boolean:function(e){return Number(e)},number:function(e){return Math.floor(e>=0?Math.floor(e):Math.ceil(e))},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseInt(e,10);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},double:{boolean:function(e){return Number(e)},number:function(e){return e},bigint:function(e){return Number(e)},string:function(e){var t=Number.parseFloat(e);return Number.isNaN(t)||!Number.isFinite(t)?null:t},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},decimal:{boolean:function(e){return Number(e)},number:function(e){return e},bigint:function(e){return e},date:function(e){var t=e.valueOf();return Number.isNaN(t)?null:t}},string:{boolean:function(e){return e.toString()},number:function(e){return e.toString()},bigint:function(e){return e.toString()},string:function(e){return e},date:function(e){return e.toISOString()}},date:{boolean:function(e){return null},number:function(e){var t=new Date(e);return Number.isNaN(t.valueOf())?null:t},bigint:function(e){var t=new Date(Number(e));return Number.isNaN(t.valueOf())?null:t},string:function(e){var t=Date.parse(e);return Number.isNaN(t)?null:new Date(t)},date:function(e){return new Date(e)}}};function s(e,t){if(null==e)return null;var r,n=void 0===e?"undefined":e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e;"object"==n&&(null!=(r=Date)&&"undefined"!=typeof Symbol&&r[Symbol.hasInstance]?!!r[Symbol.hasInstance](e):e instanceof r)&&(n="date");var o=f[t];if(!o)return null;if("function"==typeof o)return o(e);var i=o[n];return i?i(e):null}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var y={boolean:e.Checkbox.ReadPretty,integer:e.InputNumber.ReadPretty,bigInt:e.InputNumber.ReadPretty,double:e.InputNumber.ReadPretty,decimal:e.InputNumber.ReadPretty,date:e.DatePicker.ReadPretty,string:e.Input.ReadPretty};function m(r){for(var n,o=(0,t.useFieldSchema)(),i=r||o,u=(0,e.useCollection_deprecated)(),a=(0,e.useCollectionManager_deprecated)(),l=a.getCollection,c=a.getCollectionField,f=(null==i||null==(n=i.name)?void 0:n.split("."))||[],s=u,p=0;p<f.length-1;p++)s=l(s.getField(f[p]).target);return c("".concat(s.name,".").concat(f[f.length-1]))}var v=function(){return null};v.Expression=function(t){var r,o=t.value,i=t.useCurrentFields,u=t.onChange,a=(0,e.useApp)().pm.get("field-formula").expressionFields,l=(0,e.useCompile)(),c=(0,e.useCollectionManager_deprecated)().interfaces,f=(null!=(r=null==i?void 0:i())?r:[]).filter(function(e){return a.includes(e.interface)}).map(function(e){var t,r;return{label:l(e.uiSchema.title),value:e.name,children:null==(t=(r=c[e.interface]).usePathOptions)?void 0:t.call(r,e)}});return n().createElement(e.Variable.TextArea,{value:void 0===o?"":o,onChange:u,scope:f})},v.Result=(0,t.connect)(function(u){var f,b,d,v,h,g,O=u.value,S=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(u,["value"]),j=(0,t.useFieldSchema)(),x=null!=(h=m())?h:{},w=x.dataType,P=x.expression,F=x.engine,N=(f=(0,r.useState)(O),function(e){if(Array.isArray(e))return e}(f)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(f,2)||function(e,t){if(e){if("string"==typeof e)return p(e,2);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return p(e,t)}}(f,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),I=N[0],D=N[1],E=l.evaluators.get(void 0===F?"math.js":F).evaluate,T=(0,e.useFormBlockContext)(),M=(0,t.useField)(),A=null==M||null==(v=M.path)?void 0:v.entire,_=null==A?void 0:A.replace(".".concat(j.name),"");(0,r.useEffect)(function(){D(O)},[O]),(0,t.useFormEffects)(function(){(0,o.onFormValuesChange)(function(e){if(!(j.name.indexOf(".")>=0)&&(null==T?void 0:T.form)&&(null==(t=T.form)||!t.readPretty)&&"FormItem"===j["x-decorator"]){var t,r,n=(0,i.toJS)(function(e,t){for(var r=t.split("."),n=0,o=e;n<r.length;){var i=r[n],u=parseInt(null==r?void 0:r[n+1]);o=function(e,t,r){var n=e[t];return Array.isArray(n)?n[r]:n&&(void 0===n?"undefined":n&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)=="object"?n:e}(o,i,u),n+=u>=0?2:1}return o}(e.values,_));try{r=(r=E(P,n))&&s(r,w)}catch(e){r=null}null==r&&null==I&&D(r),D(r)}})}),(0,r.useEffect)(function(){var e,t;e=M.value,t=I,((a().isString(e)&&!isNaN(Date.parse(e))&&(e=new Date(e)),a().isString(t)&&!isNaN(Date.parse(t))&&(t=new Date(t)),a().isDate(e)&&a().isDate(t))?e.getTime()===t.getTime():a().isEqual(e,t))||setTimeout(function(){M.value=I})},[I]);var C=null!=(g=y[w])?g:e.Input;return n().createElement(C,(b=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},S),d=d={value:"double"===w?(0,c.toFixedByStep)(I,u.step):I},Object.getOwnPropertyDescriptors?Object.defineProperties(b,Object.getOwnPropertyDescriptors(d)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(d)).forEach(function(e){Object.defineProperty(b,e,Object.getOwnPropertyDescriptor(d,e))}),b))});var h=new e.SchemaSettings({name:"fieldSettings:component:Formula.Result",items:[{name:"displayFormat",Component:e.SchemaSettingsNumberFormat,useComponentProps:function(){var r=(0,t.useFieldSchema)();return{fieldSchema:(0,e.useColumnSchema)().fieldSchema||r}},useVisible:function(){var r=(0,t.useFieldSchema)(),n=["integer","bigInt","double","decimal"].includes((m((0,e.useColumnSchema)().fieldSchema||r)||{}).dataType);return(0,e.useIsFieldReadPretty)()&&n}}]}),g=b(238),O="field-formula";function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function j(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function x(e){return(x=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function w(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){j(e,t,r[t])})}return e}function P(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function F(e,t){return(F=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function N(e){return function(e){if(Array.isArray(e))return S(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||I(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){if(e){if("string"==typeof e)return S(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return S(e,t)}}function D(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(D=function(){return!!e})()}var E=[{dependencies:["dataType"],fulfill:{state:{display:'{{["double", "decimal"].includes($deps[0]) ? "visible" : "none"}}'}}}],T=[{dependencies:["dataType"],fulfill:{state:{display:'{{$deps[0] === "date" ? "visible" : "none"}}'}}}],M=e.interfacesProperties.defaultProps,A=e.interfacesProperties.dateTimeProps,_=e.interfacesProperties.operators,C={"uiSchema.x-component-props.dateFormat":P(w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.dateFormat"])),{"x-reactions":T}),"uiSchema.x-component-props.showTime":P(w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.showTime"])),{"x-reactions":N(A["uiSchema.x-component-props.showTime"]["x-reactions"]).concat(N(T))}),"uiSchema.x-component-props.timeFormat":w({},c.lodash.cloneDeep(A["uiSchema.x-component-props.timeFormat"]))},R=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,r,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");return r=t,n=arguments,r=x(r),j(e=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,D()?Reflect.construct(r,n||[],x(this).constructor):r.apply(this,n)),"name","formula"),j(e,"type","object"),j(e,"group","advanced"),j(e,"order",1),j(e,"title",'{{t("Formula", { ns: "'.concat(O,'" })}}')),j(e,"description",'{{t("Configure and store the results of calculations between multiple field values in the same record, supporting both Math.js and Excel formula functions.", { ns: "'.concat(O,'" })}}')),j(e,"sortable",!0),j(e,"default",{type:"formula",uiSchema:{type:"string","x-component":"Formula.Result","x-component-props":{stringMode:!0,step:"1"},"x-read-pretty":!0}}),j(e,"properties",P(w(P(w({},M),{dataType:{type:"string",title:'{{t("Storage type")}}',"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}",enum:[{value:"boolean",label:"Boolean"},{value:"integer",label:"Integer"},{value:"bigInt",label:"Big integer"},{value:"double",label:"Double"},{value:"string",label:"String"},{value:"date",label:"Datetime"}],required:!0,default:"double"},"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision")}}',"x-component":"Select","x-decorator":"FormItem",required:!0,default:"0",enum:[{value:"0",label:"1"},{value:"0.1",label:"1.0"},{value:"0.01",label:"1.00"},{value:"0.001",label:"1.000"},{value:"0.0001",label:"1.0000"},{value:"0.00001",label:"1.00000"}],"x-reactions":E}}),C),{engine:{type:"string",title:'{{t("Calculation engine", { ns: "'.concat(O,'" })}}'),"x-decorator":"FormItem","x-component":"Radio.Group",enum:Array.from(l.evaluators.getEntities()).reduce(function(e,t){var r=function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(t,2)||I(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),n=r[0],o=r[1];return e.concat(w({value:n},o))},[]),required:!0,default:"formula.js"},expression:{type:"string",title:'{{t("Expression", { ns: "'.concat(O,'" })}}'),required:!0,"x-component":"Formula.Expression","x-decorator":"FormItem","x-component-props":{useCurrentFields:"{{ useCurrentFields }}"},"x-reactions":{dependencies:["engine"],fulfill:{schema:{description:"{{renderExpressionDescription($deps[0])}}"}}}}})),j(e,"filterable",{operators:_.number}),j(e,"titleUsable",!0),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&F(t,e),t}(e.CollectionFieldInterface);function k(){var e,t,r=(e=["\n &:after {\n content: ':';\n }\n & + a {\n margin-left: 0.25em;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return k=function(){return r},r}function q(t){var r=l.evaluators.get(t);return(null==r?void 0:r.link)?n().createElement(n().Fragment,null,n().createElement("span",{className:(0,e.css)(k())},e.i18n.t("Syntax references")),n().createElement("a",{href:e.i18n.t(r.link),target:"_blank",rel:"noreferrer"},r.label)):null}var B=b(667),$=b(721);function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function G(e){return(G=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function U(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function z(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function J(e,t){return(J=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function W(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function H(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(H=function(){return!!e})()}var K={boolean:e.Checkbox.ReadPretty,integer:e.InputNumber.ReadPretty,bigInt:e.InputNumber.ReadPretty,double:e.InputNumber.ReadPretty,decimal:e.InputNumber.ReadPretty,date:e.DatePicker.ReadPretty,string:e.Input.ReadPretty};function L(t){var o,u,f=t.value,p=t.collectionField,b=t.form,d=t.id,y=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,["value","collectionField","form","id"]),m=(null==p?void 0:p.options)||{},v=m.dataType,h=m.expression,O=m.engine,S=(o=(0,r.useState)(f),function(e){if(Array.isArray(e))return e}(o)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(o,2)||function(e,t){if(e){if("string"==typeof e)return V(e,2);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return V(e,t)}}(o,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),j=S[0],x=S[1],w=l.evaluators.get(void 0===O?"math.js":O).evaluate,P=$.Form.useWatch([],b),F=Array.isArray(d)?null==d?void 0:d.join("."):d;(0,g.useTranslation)().t,(0,r.useEffect)(function(){x(f)},[f]),(0,r.useEffect)(function(){if(null==b||!b.readPretty){var e,t=(0,i.toJS)(function(e,t){for(var r=t.split("."),n=0,o=e||{};n<r.length;){var i=r[n],u=parseInt(null==r?void 0:r[n+1]);o=function(e,t,r){var n=null==e?void 0:e[t];return Array.isArray(n)?n[r]:n&&(void 0===n?"undefined":W(n))==="object"?n:e}(o,i,u),n+=u>=0?2:1}return o}(b.getFieldsValue(),F));try{e=(e=w(h,t))&&s(e,v)}catch(t){e=null}null==e&&null==j&&x(e),x(e)}},[P]),(0,r.useEffect)(function(){var e,t;e=f,t=j,((a().isString(e)&&!isNaN(Date.parse(e))&&(e=new Date(e)),a().isString(t)&&!isNaN(Date.parse(t))&&(t=new Date(t)),a().isDate(e)&&a().isDate(t))?e.getTime()===t.getTime():a().isEqual(e,t))||setTimeout(function(){b.setFieldValue(F,j)})},[j]);var N=null!=(u=K[v])?u:e.Input;if(p)return n().createElement(N,z(U({},y),{value:"double"===v?(0,c.toFixedByStep)(j,t.step):j}))}var Q=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=G(e),function(e,t){if(t&&("object"===W(t)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,H()?Reflect.construct(e,t||[],G(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&J(r,e),t=[{key:"render",value:function(){return n().createElement(L,z(U({},this.props),{collectionField:this.context.collectionField,form:this.context.form}))}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(e.FieldModel);function X(e,t,r,n,o,i,u){try{var a=e[i](u),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(n,o)}function Y(e,t,r){return(Y=er()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&ee(o,r.prototype),o}).apply(null,arguments)}B.EditableItemModel.bindModelToInterface("FormulaFieldModel",["formula"],{isDefault:!0}),B.DisplayItemModel.bindModelToInterface("DisplayCheckboxFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"boolean"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayDateTimeFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"date"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayTextFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||"string"===t.dataType}}),B.DisplayItemModel.bindModelToInterface("DisplayNumberFieldModel",["formula"],{isDefault:!0,when:function(e,t){return"formula"!==t.type||["double","bigint","integer"].includes(t.dataType)}}),B.FilterableItemModel.bindModelToInterface("FormulaFieldModel",["formula"],{isDefault:!0});function Z(e){return(Z=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ee(e,t){return(ee=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function et(e){var t="function"==typeof Map?new Map:void 0;return(et=function(e){if(null===e||-1===Function.toString.call(e).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 Y(e,arguments,Z(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),ee(r,e)})(e)}function er(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(er=function(){return!!e})()}var en=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t,n,o,i;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return t=r,n=arguments,t=Z(t),e=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,er()?Reflect.construct(t,n||[],Z(this).constructor):t.apply(this,n)),i=["checkbox","number","percent","integer","number","percent","input","textarea","email","phone","date","datetime","datetimeNoTz","unixTimestamp","createdAt","updatedAt","radioGroup","checkboxGroup","select","multipleSelect"],(o="expressionFields")in e?Object.defineProperty(e,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[o]=i,e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&ee(r,e),t=[{key:"registerExpressionFieldInterface",value:function(e){if(Array.isArray(e)){var t=this.expressionFields.concat(e);this.expressionFields=t}else this.expressionFields.push(e)}},{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var r,n,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;u;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return u.label++,{value:l[1],done:!1};case 5:u.label++,n=l[1],l=[0];continue;case 7:l=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){u=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){u.label=l[1];break}if(6===l[0]&&u.label<o[1]){u.label=o[1],o=l;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(l);break}o[2]&&u.ops.pop(),u.trys.pop();continue}l=t.call(e,u)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return t.app.addComponents({Formula:v}),t.app.addScopes({renderExpressionDescription:q}),t.app.dataSourceManager.addFieldInterfaces([R]),t.app.schemaSettingsManager.add(h),t.flowEngine.registerModels({FormulaFieldModel:Q}),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function u(e){X(i,n,o,u,a,"next",e)}function a(e){X(i,n,o,u,a,"throw",e)}u(void 0)})})()}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(et(e.Plugin)),eo=en}(),d}()});
|
package/dist/externalVersion.js
CHANGED
|
@@ -9,17 +9,17 @@
|
|
|
9
9
|
|
|
10
10
|
module.exports = {
|
|
11
11
|
"@formily/react": "2.3.7",
|
|
12
|
-
"@nocobase/client": "2.0.0-alpha.
|
|
12
|
+
"@nocobase/client": "2.0.0-alpha.51",
|
|
13
13
|
"react-i18next": "11.18.6",
|
|
14
14
|
"@formily/reactive": "2.3.7",
|
|
15
|
-
"@nocobase/flow-engine": "2.0.0-alpha.
|
|
15
|
+
"@nocobase/flow-engine": "2.0.0-alpha.51",
|
|
16
16
|
"antd": "5.24.2",
|
|
17
|
-
"@nocobase/evaluators": "2.0.0-alpha.
|
|
18
|
-
"@nocobase/utils": "2.0.0-alpha.
|
|
17
|
+
"@nocobase/evaluators": "2.0.0-alpha.51",
|
|
18
|
+
"@nocobase/utils": "2.0.0-alpha.51",
|
|
19
19
|
"lodash": "4.17.21",
|
|
20
20
|
"react": "18.2.0",
|
|
21
|
-
"@nocobase/database": "2.0.0-alpha.
|
|
22
|
-
"@nocobase/server": "2.0.0-alpha.
|
|
23
|
-
"@nocobase/test": "2.0.0-alpha.
|
|
21
|
+
"@nocobase/database": "2.0.0-alpha.51",
|
|
22
|
+
"@nocobase/server": "2.0.0-alpha.51",
|
|
23
|
+
"@nocobase/test": "2.0.0-alpha.51",
|
|
24
24
|
"@formily/core": "2.3.7"
|
|
25
25
|
};
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"description": "Configure and store the results of calculations between multiple field values in the same record, supporting both Math.js and Excel formula functions.",
|
|
7
7
|
"description.zh-CN": "可以配置并存储同一条记录的多字段值之间的计算结果,支持 Math.js 和 Excel formula functions 两种引擎",
|
|
8
8
|
"description.ru-RU": "Настройка и сохранение результатов вычислений между значениями нескольких полей в одной записи с поддержкой движков Math.js и Excel formula functions.",
|
|
9
|
-
"version": "2.0.0-alpha.
|
|
9
|
+
"version": "2.0.0-alpha.51",
|
|
10
10
|
"license": "AGPL-3.0",
|
|
11
11
|
"main": "./dist/server/index.js",
|
|
12
12
|
"homepage": "https://docs.nocobase.com/handbook/field-formula",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@nocobase/test": "2.x",
|
|
29
29
|
"@nocobase/utils": "2.x"
|
|
30
30
|
},
|
|
31
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "a1e34dd97f370d54f3d80a6b83ab7ddb9c72dc18",
|
|
32
32
|
"keywords": [
|
|
33
33
|
"Collection fields"
|
|
34
34
|
]
|