@ryuzaki13/react-foundation-lib 2.28.0 → 2.30.0

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.
Files changed (38) hide show
  1. package/README.md +1 -0
  2. package/dist/analytical-table/index.js +2 -2
  3. package/dist/chunks/{formatters-B_NcT2pe.js → formatters-CZnnbdud.js} +3 -3
  4. package/dist/chunks/{formatters-B_NcT2pe.js.map → formatters-CZnnbdud.js.map} +1 -1
  5. package/dist/chunks/formulas-BXT_XBWI.js +236 -0
  6. package/dist/chunks/formulas-BXT_XBWI.js.map +1 -0
  7. package/dist/chunks/{validate-C8cQm_9m.js → validate-CEQHqevt.js} +2 -2
  8. package/dist/chunks/{validate-C8cQm_9m.js.map → validate-CEQHqevt.js.map} +1 -1
  9. package/dist/error-report/index.js +1 -1
  10. package/dist/excel/index.js +1 -1
  11. package/dist/formatters/index.js +2 -2
  12. package/dist/formatters/pipeline/types.d.ts +2 -2
  13. package/dist/formatters/pipeline/types.d.ts.map +1 -1
  14. package/dist/formulas/execute.d.ts +4 -4
  15. package/dist/formulas/execute.d.ts.map +1 -1
  16. package/dist/formulas/formatTableFormulaExpression.d.ts +3 -2
  17. package/dist/formulas/formatTableFormulaExpression.d.ts.map +1 -1
  18. package/dist/formulas/index.js +2 -198
  19. package/dist/formulas/isTableFormulaDependency.d.ts +4 -0
  20. package/dist/formulas/isTableFormulaDependency.d.ts.map +1 -0
  21. package/dist/formulas/types.d.ts +11 -0
  22. package/dist/formulas/types.d.ts.map +1 -1
  23. package/dist/formulas/validate.d.ts +3 -2
  24. package/dist/formulas/validate.d.ts.map +1 -1
  25. package/dist/value-transformers/execute.d.ts +16 -0
  26. package/dist/value-transformers/execute.d.ts.map +1 -0
  27. package/dist/value-transformers/index.d.ts +4 -0
  28. package/dist/value-transformers/index.d.ts.map +1 -0
  29. package/dist/value-transformers/index.js +69 -0
  30. package/dist/value-transformers/index.js.map +1 -0
  31. package/dist/value-transformers/registry.d.ts +15 -0
  32. package/dist/value-transformers/registry.d.ts.map +1 -0
  33. package/dist/value-transformers/types.d.ts +32 -0
  34. package/dist/value-transformers/types.d.ts.map +1 -0
  35. package/package.json +5 -1
  36. package/src/formulas/README.mdx +24 -14
  37. package/src/value-transformers/README.md +56 -0
  38. package/dist/formulas/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/formatters/pipeline/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,uBAAuB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAEpI;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,8BAA8B,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,KAAK,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,CAAC;IAChD,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,KAAK,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0CAA0C,GACrD,uCAAuC,GAAG,2CAA2C,CAAC;AAEvF;;GAEG;AACH,MAAM,MAAM,6CAA6C,GAAG;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,6CAA6C,GAAG;IAC3D,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,+CAA+C,GAAG;IAC7D,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wCAAwC,GACnD,6CAA6C,GAAG,+CAA+C,CAAC;AAEjG;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,CAAC,EAAE,6CAA6C,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,EAAE,wCAAwC,CAAC;CACjD,CAAC;AAEF,iEAAiE;AACjE,MAAM,MAAM,uCAAuC,GAAG;IACrD,IAAI,EAAE,OAAO,CAAC;CACd,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,yCAAyC,GAAG;IACvD,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,kCAAkC,GAAG,uCAAuC,GAAG,yCAAyC,CAAC;AAErI,MAAM,MAAM,yCAAyC,GAAG;IACvD,QAAQ,EAAE,0CAA0C,CAAC;IACrD,IAAI,CAAC,EAAE,wCAAwC,CAAC;IAChD,qFAAqF;IACrF,WAAW,CAAC,EAAE,kCAAkC,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,EAAE,yCAAyC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACtD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAGxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,CAAC,EAAE,wCAAwC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC/B,4BAA4B,GAC5B,0BAA0B,GAC1B,2CAA2C,GAC3C,sCAAsC,GACtC,uCAAuC,GACvC,sCAAsC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACrC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;KACb,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,CAAC,EAAE,6CAA6C,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,wCAAwC,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,yCAAyC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,CAAC,EAAE,wCAAwC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC/B,2CAA2C,GAC3C,sCAAsC,GACtC,uCAAuC,GACvC,sCAAsC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACpC,KAAK,EAAE,sBAAsB,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,EAAE,yBAAyB,CAAC;IACnC;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC/C,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,2BAA2B,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,8BAA8B,CAAC;IAC7C,mBAAmB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACxC,OAAO,EAAE,CAAC,GAAG,EAAE,kCAAkC,KAAK,iCAAiC,CAAC;IACxF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,8BAA8B,GAAG,mCAAmC,GAAG;IAClF,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gFAAgF;IAChF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C,+EAA+E;IAC/E,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;CACxD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,+BAA+B,CAAC,MAAM,SAAS,8BAA8B,GAAG,8BAA8B,IAAI,QAAQ,CACrI,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC5C,+CAA+C;IAC/C,KAAK,EAAE,OAAO,CAAC;IACf,wCAAwC;IACxC,KAAK,EAAE,KAAK,CAAC;IACb,wCAAwC;IACxC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IACnC,oCAAoC;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,YAAY,EAAE,8BAA8B,CAAC;IAC7C,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,8BAA8B,CAAC,MAAM,SAAS,8BAA8B,GAAG,8BAA8B,IAAI;IAC5H,yCAAyC;IACzC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACzB,kDAAkD;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,qEAAqE;IACrE,wBAAwB,CAAC,EAAE,mBAAmB,CAAC;IAC/C,mEAAmE;IACnE,OAAO,EAAE,yBAAyB,CAAC;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/formatters/pipeline/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1H,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,uBAAuB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAEpI;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,8BAA8B,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,KAAK,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,CAAC;IAChD,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,KAAK,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0CAA0C,GACrD,uCAAuC,GAAG,2CAA2C,CAAC;AAEvF;;GAEG;AACH,MAAM,MAAM,6CAA6C,GAAG;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,6CAA6C,GAAG;IAC3D,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,+CAA+C,GAAG;IAC7D,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wCAAwC,GACnD,6CAA6C,GAAG,+CAA+C,CAAC;AAEjG;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,CAAC,EAAE,6CAA6C,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,EAAE,wCAAwC,CAAC;CACjD,CAAC;AAEF,iEAAiE;AACjE,MAAM,MAAM,uCAAuC,GAAG;IACrD,IAAI,EAAE,OAAO,CAAC;CACd,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,yCAAyC,GAAG;IACvD,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,kCAAkC,GAAG,uCAAuC,GAAG,yCAAyC,CAAC;AAErI,MAAM,MAAM,yCAAyC,GAAG;IACvD,QAAQ,EAAE,0CAA0C,CAAC;IACrD,IAAI,CAAC,EAAE,wCAAwC,CAAC;IAChD,qFAAqF;IACrF,WAAW,CAAC,EAAE,kCAAkC,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,EAAE,yCAAyC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACtD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAGxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;IACF,MAAM,CAAC,EAAE,wCAAwC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACV,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC/B,4BAA4B,GAC5B,0BAA0B,GAC1B,2CAA2C,GAC3C,sCAAsC,GACtC,uCAAuC,GACvC,sCAAsC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACrC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;KACb,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,CAAC,EAAE,6CAA6C,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,wCAAwC,CAAC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,yCAAyC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sCAAsC,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,CAAC,EAAE,wCAAwC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC/B,2CAA2C,GAC3C,sCAAsC,GACtC,uCAAuC,GACvC,sCAAsC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACpC,KAAK,EAAE,sBAAsB,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,sBAAsB,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,EAAE,yBAAyB,CAAC;IACnC;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC/C,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,2BAA2B,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,8BAA8B,CAAC;IAC7C,mBAAmB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACxC,OAAO,EAAE,CAAC,GAAG,EAAE,kCAAkC,KAAK,iCAAiC,CAAC;IACxF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,8BAA8B,GAAG,mCAAmC,GAAG;IAClF,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,mBAAmB,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACxD,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gFAAgF;IAChF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C,+EAA+E;IAC/E,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;CACxD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,+BAA+B,CAAC,MAAM,SAAS,8BAA8B,GAAG,8BAA8B,IAAI,QAAQ,CACrI,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC5C,+CAA+C;IAC/C,KAAK,EAAE,OAAO,CAAC;IACf,wCAAwC;IACxC,KAAK,EAAE,KAAK,CAAC;IACb,wCAAwC;IACxC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IACnC,oCAAoC;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,YAAY,EAAE,8BAA8B,CAAC;IAC7C,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,8BAA8B,CAAC,MAAM,SAAS,8BAA8B,GAAG,8BAA8B,IAAI;IAC5H,yCAAyC;IACzC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACzB,kDAAkD;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,qEAAqE;IACrE,wBAAwB,CAAC,EAAE,mBAAmB,CAAC;IAC/C,mEAAmE;IACnE,OAAO,EAAE,yBAAyB,CAAC;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,CAAC"}
@@ -1,11 +1,11 @@
1
- import type { TableFormulaContext, TableFormulaRowData } from "./types";
1
+ import { type TableFormulaContext, type TableFormulaDependency, type TableFormulaRowData } from "./types";
2
2
  type TableFormulaContextInstrumentation = {
3
3
  onReadIndex?: (index: number) => void;
4
4
  onOutOfRangeIndex?: (index: number) => void;
5
5
  };
6
6
  export declare function createTableFormulaContext(args: {
7
7
  rowData: TableFormulaRowData;
8
- keys?: readonly string[];
8
+ keys?: readonly TableFormulaDependency[];
9
9
  instrumentation?: TableFormulaContextInstrumentation;
10
10
  }): TableFormulaContext;
11
11
  export type TableFormulaExecutionResult = {
@@ -25,12 +25,12 @@ type CompileTableFormulaResult = {
25
25
  };
26
26
  export declare function compileTableFormula(args: {
27
27
  formulaId: string | undefined;
28
- keys?: readonly string[];
28
+ keys?: readonly TableFormulaDependency[];
29
29
  }): CompileTableFormulaResult;
30
30
  export declare function executeTableFormula(args: {
31
31
  formulaId: string | undefined;
32
32
  rowData: TableFormulaRowData;
33
- keys?: readonly string[];
33
+ keys?: readonly TableFormulaDependency[];
34
34
  }): TableFormulaExecutionResult;
35
35
  export {};
36
36
  //# sourceMappingURL=execute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/formulas/execute.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAExE,KAAK,kCAAkC,GAAG;IACzC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAOF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC/C,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,eAAe,CAAC,EAAE,kCAAkC,CAAC;CACrD,GAAG,mBAAmB,CA+BtB;AAED,MAAM,MAAM,2BAA2B,GACpC;IACA,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACb,GACD;IACA,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,eAAe,CAAC;CAChE,CAAC;AAEL,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,EAAE,mBAAmB,KAAK,2BAA2B,CAAC;AAEzG,KAAK,yBAAyB,GAC3B;IACA,EAAE,EAAE,IAAI,CAAC;IACT,OAAO,EAAE,4BAA4B,CAAC;CACrC,GACD;IACA,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,mBAAmB,CAAC;CAC3B,CAAC;AAEL,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG,yBAAyB,CAyChI;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,GAAG,2BAA2B,CAU9B"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/formulas/execute.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE1G,KAAK,kCAAkC,GAAG;IACzC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAkBF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC/C,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACzC,eAAe,CAAC,EAAE,kCAAkC,CAAC;CACrD,GAAG,mBAAmB,CAiCtB;AAED,MAAM,MAAM,2BAA2B,GACpC;IACA,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACb,GACD;IACA,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,eAAe,CAAC;CAChE,CAAC;AAEL,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,EAAE,mBAAmB,KAAK,2BAA2B,CAAC;AAEzG,KAAK,yBAAyB,GAC3B;IACA,EAAE,EAAE,IAAI,CAAC;IACT,OAAO,EAAE,4BAA4B,CAAC;CACrC,GACD;IACA,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,mBAAmB,CAAC;CAC3B,CAAC;AAEL,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACzC,GAAG,yBAAyB,CAmD5B;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACzC,GAAG,2BAA2B,CAU9B"}
@@ -1,9 +1,10 @@
1
+ import { type TableFormulaDependency } from "./types";
1
2
  /**
2
- * Подставляет ID упорядоченных зависимостей в шаблон превью формулы.
3
+ * Подставляет ID полей и числовые константы в шаблон превью формулы.
3
4
  *
4
5
  * Незаданные позиции остаются в виде $n, чтобы редактор мог показывать неполный
5
6
  * черновик. Подстановка однопроходная: ID сохраняются буквально, а полученный
6
7
  * текст предназначен только для отображения и никогда не исполняется.
7
8
  */
8
- export declare function formatTableFormulaExpression(expressionTemplate: string, dependencies: readonly string[]): string;
9
+ export declare function formatTableFormulaExpression(expressionTemplate: string, dependencies: readonly TableFormulaDependency[]): string;
9
10
  //# sourceMappingURL=formatTableFormulaExpression.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatTableFormulaExpression.d.ts","sourceRoot":"","sources":["../../src/formulas/formatTableFormulaExpression.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAKhH"}
1
+ {"version":3,"file":"formatTableFormulaExpression.d.ts","sourceRoot":"","sources":["../../src/formulas/formatTableFormulaExpression.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,sBAAsB,EAAE,GAAG,MAAM,CAShI"}
@@ -1,198 +1,2 @@
1
- //#region src/formulas/registry.ts
2
- function e(e) {
3
- let t = /* @__PURE__ */ new Map(), n = [];
4
- for (let r of e) {
5
- let e = r.id.trim();
6
- if (!e) throw Error("Formula id не может быть пустым");
7
- if (t.has(e)) throw Error(`Найден дублирующийся formulaId: ${e}`);
8
- let i = Object.freeze({
9
- ...r,
10
- id: e,
11
- name: r.name.trim(),
12
- description: r.description.trim(),
13
- keywords: r.keywords ? [...r.keywords] : void 0
14
- });
15
- t.set(e, i), n.push(i);
16
- }
17
- return Object.freeze({
18
- list: Object.freeze(n),
19
- byId: t
20
- });
21
- }
22
- var t = e([]);
23
- function n(e) {
24
- t = e;
25
- }
26
- function r() {
27
- return t.list;
28
- }
29
- function i(e) {
30
- let n = e?.trim();
31
- if (n) return t.byId.get(n);
32
- }
33
- //#endregion
34
- //#region src/formulas/execute.ts
35
- function a(e) {
36
- let t = Number(e);
37
- return Number.isFinite(t) ? t : 0;
38
- }
39
- function o(e) {
40
- let t = [...e.keys ?? []], n = (n) => {
41
- if (!Number.isInteger(n) || n < 0) {
42
- e.instrumentation?.onOutOfRangeIndex?.(n);
43
- return;
44
- }
45
- if (e.instrumentation?.onReadIndex?.(n), n >= t.length) {
46
- e.instrumentation?.onOutOfRangeIndex?.(n);
47
- return;
48
- }
49
- return t[n];
50
- }, r = (t) => {
51
- let r = n(t);
52
- if (r) return e.rowData[r];
53
- };
54
- return {
55
- key: n,
56
- value: r,
57
- num: (e) => a(r(e))
58
- };
59
- }
60
- function s(e) {
61
- let t = i(e.formulaId);
62
- if (!t) return {
63
- ok: !1,
64
- reason: "formula_not_found"
65
- };
66
- let n = [...e.keys ?? []], r = {}, o = {
67
- key: (e) => Number.isInteger(e) && e >= 0 && e < n.length ? n[e] : void 0,
68
- value: (e) => {
69
- if (!Number.isInteger(e) || e < 0 || e >= n.length) return;
70
- let t = n[e];
71
- if (t) return r[t];
72
- },
73
- num: (e) => {
74
- if (!Number.isInteger(e) || e < 0 || e >= n.length) return 0;
75
- let t = n[e];
76
- return t ? a(r[t]) : 0;
77
- }
78
- };
79
- return {
80
- ok: !0,
81
- execute: (e) => {
82
- r = e;
83
- try {
84
- let e = t.fn(o);
85
- return Number.isFinite(e) ? {
86
- ok: !0,
87
- value: e
88
- } : {
89
- ok: !1,
90
- reason: "invalid_result"
91
- };
92
- } catch {
93
- return {
94
- ok: !1,
95
- reason: "runtime_error"
96
- };
97
- }
98
- }
99
- };
100
- }
101
- function c(e) {
102
- let t = s({
103
- formulaId: e.formulaId,
104
- keys: e.keys
105
- });
106
- return t.ok ? t.execute(e.rowData) : {
107
- ok: !1,
108
- reason: t.reason
109
- };
110
- }
111
- //#endregion
112
- //#region src/formulas/formatTableFormulaExpression.ts
113
- function l(e, t) {
114
- return e.replace(/\$([0-9]+)/g, (e, n) => {
115
- let r = t[Number(n)];
116
- return r === void 0 || r === "" ? e : r;
117
- });
118
- }
119
- //#endregion
120
- //#region src/formulas/validate.ts
121
- function u(e) {
122
- return [...e].sort((e, t) => e - t);
123
- }
124
- function d(e, t) {
125
- return e.reduce((e, n, r) => (e[n] = (r + 1) * t, e), {});
126
- }
127
- function f(e) {
128
- let t = [], n = [], r = i(e.formulaId), a = [...e.dependencies ?? []], s = e.availableColumnIds ?? [];
129
- if (!r) return t.push({
130
- code: "formula_not_found",
131
- message: "Формула не найдена в реестре."
132
- }), {
133
- ok: !1,
134
- errors: t,
135
- warnings: n,
136
- usage: {
137
- usedDependencyIndexes: [],
138
- usedDependencyIds: [],
139
- requiredDependencyCount: 0
140
- }
141
- };
142
- let c = new Set(s), l = a.filter((e) => !c.has(e));
143
- l.length > 0 && t.push({
144
- code: "dependency_not_available",
145
- message: `Не найдены среди доступных полей: ${l.join(", ")}.`
146
- });
147
- let f = /* @__PURE__ */ new Set(), p = /* @__PURE__ */ new Set(), m = 0, h = (e) => {
148
- try {
149
- let t = o({
150
- rowData: e,
151
- keys: a,
152
- instrumentation: {
153
- onReadIndex: (e) => {
154
- f.add(e);
155
- },
156
- onOutOfRangeIndex: (e) => {
157
- p.add(e);
158
- }
159
- }
160
- });
161
- r.fn(t);
162
- } catch {
163
- m += 1;
164
- }
165
- };
166
- h(d(a, 100)), h(d(a, -100));
167
- let g = u(f), _ = g.length > 0 ? g[g.length - 1] + 1 : 0;
168
- p.size > 0 && t.push({
169
- code: "dependency_index_out_of_range",
170
- message: `Формула обращается к несуществующим индексам. Минимально требуется зависимостей: ${_}, выбрано: ${a.length}.`
171
- }), g.length === 0 && n.push({
172
- code: "formula_does_not_use_dependencies",
173
- message: "Формула не использует dependencies."
174
- });
175
- let v = a.filter((e, t) => !f.has(t));
176
- v.length > 0 && n.push({
177
- code: "unused_dependencies",
178
- message: `Выбраны, но не используются формулой: ${v.join(", ")}.`
179
- }), m > 0 && n.push({
180
- code: "formula_runtime_error",
181
- message: "На тестовых данных формула завершилась с ошибкой."
182
- });
183
- let y = g.map((e) => a[e]).filter(Boolean);
184
- return {
185
- ok: t.length === 0,
186
- errors: t,
187
- warnings: n,
188
- usage: {
189
- usedDependencyIndexes: g,
190
- usedDependencyIds: y,
191
- requiredDependencyCount: _
192
- }
193
- };
194
- }
195
- //#endregion
196
- export { s as compileTableFormula, n as configureTableFormulaRegistry, o as createTableFormulaContext, e as createTableFormulaRegistry, c as executeTableFormula, l as formatTableFormulaExpression, i as getTableFormulaById, r as getTableFormulaList, f as validateTableFormulaDependencies };
197
-
198
- //# sourceMappingURL=index.js.map
1
+ import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../chunks/formulas-BXT_XBWI.js";
2
+ export { o as compileTableFormula, a as configureTableFormulaRegistry, n as createTableFormulaContext, s as createTableFormulaRegistry, e as executeTableFormula, i as formatTableFormulaExpression, t as getTableFormulaById, r as getTableFormulaList, c as validateTableFormulaDependencies };
@@ -0,0 +1,4 @@
1
+ import { type TableFormulaDependency } from "./types";
2
+ /** Проверяет внешний аргумент без приведения пустых строк или нечисловых значений к нулю. */
3
+ export declare function isTableFormulaDependency(value: unknown): value is TableFormulaDependency;
4
+ //# sourceMappingURL=isTableFormulaDependency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isTableFormulaDependency.d.ts","sourceRoot":"","sources":["../../src/formulas/isTableFormulaDependency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,6FAA6F;AAC7F,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,sBAAsB,CAOxF"}
@@ -1,5 +1,16 @@
1
1
  export type TableFormulaRowData = Record<string, unknown>;
2
+ /**
3
+ * Позиционный аргумент формулы: ID поля строки либо конечная числовая константа.
4
+ *
5
+ * Константа занимает обычную позицию аргумента, но не создаёт зависимости от
6
+ * данных строки. Строковая форма сохраняет контракт существующих consumers.
7
+ */
8
+ export type TableFormulaDependency = string | {
9
+ readonly kind: "constant";
10
+ readonly value: number;
11
+ };
2
12
  export interface TableFormulaContext {
13
+ /** Возвращает ID только для аргумента-поля; у константы ключа строки нет. */
3
14
  key: (index: number) => string | undefined;
4
15
  value: (index: number) => unknown;
5
16
  num: (index: number) => number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/formulas/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IACnC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC3C,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,mBAAmB,KAAK,MAAM,CAAC;AAElE,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,EAAE,EAAE,cAAc,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/formulas/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpG,MAAM,WAAW,mBAAmB;IACnC,6EAA6E;IAC7E,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC3C,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,mBAAmB,KAAK,MAAM,CAAC;AAElE,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,EAAE,EAAE,cAAc,CAAC;CACnB"}
@@ -1,4 +1,5 @@
1
- type ValidationCode = "formula_not_found" | "dependency_index_out_of_range" | "dependency_not_available" | "unused_dependencies" | "formula_does_not_use_dependencies" | "formula_runtime_error";
1
+ import { type TableFormulaDependency } from "./types";
2
+ type ValidationCode = "formula_not_found" | "dependency_index_out_of_range" | "dependency_not_available" | "invalid_constant" | "unused_dependencies" | "formula_does_not_use_dependencies" | "formula_runtime_error";
2
3
  export interface TableFormulaValidationMessage {
3
4
  code: ValidationCode;
4
5
  message: string;
@@ -15,7 +16,7 @@ export interface TableFormulaDependenciesValidationResult {
15
16
  }
16
17
  export declare function validateTableFormulaDependencies(args: {
17
18
  formulaId: string | undefined;
18
- dependencies?: readonly string[];
19
+ dependencies?: readonly TableFormulaDependency[];
19
20
  availableColumnIds?: readonly string[];
20
21
  }): TableFormulaDependenciesValidationResult;
21
22
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/formulas/validate.ts"],"names":[],"mappings":"AAGA,KAAK,cAAc,GAChB,mBAAmB,GACnB,+BAA+B,GAC/B,0BAA0B,GAC1B,qBAAqB,GACrB,mCAAmC,GACnC,uBAAuB,CAAC;AAE3B,MAAM,WAAW,6BAA6B;IAC7C,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,wCAAwC;IACxD,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACxC,QAAQ,EAAE,6BAA6B,EAAE,CAAC;IAC1C,KAAK,EAAE;QACN,qBAAqB,EAAE,MAAM,EAAE,CAAC;QAChC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,uBAAuB,EAAE,MAAM,CAAC;KAChC,CAAC;CACF;AAaD,wBAAgB,gCAAgC,CAAC,IAAI,EAAE;IACtD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,GAAG,wCAAwC,CA2G3C"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/formulas/validate.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,KAAK,cAAc,GAChB,mBAAmB,GACnB,+BAA+B,GAC/B,0BAA0B,GAC1B,kBAAkB,GAClB,qBAAqB,GACrB,mCAAmC,GACnC,uBAAuB,CAAC;AAE3B,MAAM,WAAW,6BAA6B;IAC7C,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,wCAAwC;IACxD,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACxC,QAAQ,EAAE,6BAA6B,EAAE,CAAC;IAC1C,KAAK,EAAE;QACN,qBAAqB,EAAE,MAAM,EAAE,CAAC;QAChC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,uBAAuB,EAAE,MAAM,CAAC;KAChC,CAAC;CACF;AAcD,wBAAgB,gCAAgC,CAAC,IAAI,EAAE;IACtD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjD,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,GAAG,wCAAwC,CAqH3C"}
@@ -0,0 +1,16 @@
1
+ import { type ValueTransformerCompileResult, type ValueTransformerExecutionResult } from "./types";
2
+ /**
3
+ * Фиксирует доверенную функцию один раз для многократной обработки значений.
4
+ *
5
+ * Вход и результат не приводятся к числу и не заменяются значением по умолчанию:
6
+ * parsing и правила пустых данных принадлежат самой функции преобразования.
7
+ */
8
+ export declare function compileValueTransformer(args: {
9
+ transformerId: string | undefined;
10
+ }): ValueTransformerCompileResult;
11
+ /** Разовый запуск через активный реестр; для строк таблицы предпочтительна предварительная компиляция. */
12
+ export declare function executeValueTransformer(args: {
13
+ transformerId: string | undefined;
14
+ value: unknown;
15
+ }): ValueTransformerExecutionResult;
16
+ //# sourceMappingURL=execute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/value-transformers/execute.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,6BAA6B,EAAE,KAAK,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAEnG;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,6BAA6B,CAelH;AAED,0GAA0G;AAC1G,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,+BAA+B,CAGpI"}
@@ -0,0 +1,4 @@
1
+ export { compileValueTransformer, executeValueTransformer } from "./execute";
2
+ export { configureValueTransformerRegistry, createValueTransformerRegistry, getValueTransformerById, getValueTransformerList, type ValueTransformerRegistry } from "./registry";
3
+ export { type ValueTransformerCompiledExecutor, type ValueTransformerCompileResult, type ValueTransformerDefinition, type ValueTransformerExecutionResult, type ValueTransformerFn } from "./types";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/value-transformers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EACN,iCAAiC,EACjC,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,kBAAkB,EACvB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,69 @@
1
+ //#region src/value-transformers/registry.ts
2
+ function e(e) {
3
+ let t = /* @__PURE__ */ new Map(), n = [];
4
+ for (let r of e) {
5
+ let e = r.id.trim();
6
+ if (!e) throw Error("ID преобразования значения не может быть пустым.");
7
+ if (t.has(e)) throw Error(`Найден дублирующийся transformerId: ${e}.`);
8
+ let i = Object.freeze({
9
+ ...r,
10
+ id: e,
11
+ name: r.name.trim(),
12
+ description: r.description.trim(),
13
+ ...r.keywords === void 0 ? {} : { keywords: Object.freeze([...r.keywords]) }
14
+ });
15
+ t.set(e, i), n.push(i);
16
+ }
17
+ return Object.freeze({
18
+ list: Object.freeze(n),
19
+ byId: t
20
+ });
21
+ }
22
+ var t = e([]);
23
+ function n(e) {
24
+ t = e;
25
+ }
26
+ function r() {
27
+ return t.list;
28
+ }
29
+ function i(e) {
30
+ let n = e?.trim();
31
+ return n ? t.byId.get(n) : void 0;
32
+ }
33
+ //#endregion
34
+ //#region src/value-transformers/execute.ts
35
+ function a(e) {
36
+ let t = i(e.transformerId);
37
+ if (!t) return {
38
+ ok: !1,
39
+ reason: "transformer_not_found"
40
+ };
41
+ let n = t.fn;
42
+ return {
43
+ ok: !0,
44
+ execute: (e) => {
45
+ try {
46
+ return {
47
+ ok: !0,
48
+ value: n(e)
49
+ };
50
+ } catch {
51
+ return {
52
+ ok: !1,
53
+ reason: "runtime_error"
54
+ };
55
+ }
56
+ }
57
+ };
58
+ }
59
+ function o(e) {
60
+ let t = a(e);
61
+ return t.ok ? t.execute(e.value) : {
62
+ ok: !1,
63
+ reason: t.reason
64
+ };
65
+ }
66
+ //#endregion
67
+ export { a as compileValueTransformer, n as configureValueTransformerRegistry, e as createValueTransformerRegistry, o as executeValueTransformer, i as getValueTransformerById, r as getValueTransformerList };
68
+
69
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/value-transformers/registry.ts","../../src/value-transformers/execute.ts"],"sourcesContent":["import { type ValueTransformerDefinition } from \"./types\";\n\nexport type ValueTransformerRegistry = Readonly<{\n\tlist: readonly ValueTransformerDefinition[];\n\tbyId: ReadonlyMap<string, ValueTransformerDefinition>;\n}>;\n\n/** Создаёт независимый каталог с устойчивыми ID и неизменяемыми метаданными. */\nexport function createValueTransformerRegistry(definitions: readonly ValueTransformerDefinition[]): ValueTransformerRegistry {\n\tconst byId = new Map<string, ValueTransformerDefinition>();\n\tconst list: ValueTransformerDefinition[] = [];\n\n\tfor (const definition of definitions) {\n\t\tconst id = definition.id.trim();\n\t\tif (!id) throw new Error(\"ID преобразования значения не может быть пустым.\");\n\t\tif (byId.has(id)) throw new Error(`Найден дублирующийся transformerId: ${id}.`);\n\n\t\tconst normalizedDefinition: ValueTransformerDefinition = Object.freeze({\n\t\t\t...definition,\n\t\t\tid,\n\t\t\tname: definition.name.trim(),\n\t\t\tdescription: definition.description.trim(),\n\t\t\t...(definition.keywords === undefined ? {} : { keywords: Object.freeze([...definition.keywords]) })\n\t\t});\n\t\tbyId.set(id, normalizedDefinition);\n\t\tlist.push(normalizedDefinition);\n\t}\n\n\treturn Object.freeze({ list: Object.freeze(list), byId });\n}\n\nlet valueTransformerRegistry = createValueTransformerRegistry([]);\n\n/**\n * Устанавливает каталог host-приложения до первого чтения или компиляции.\n * Библиотека предоставляет механизм и не регистрирует прикладные преобразования.\n */\nexport function configureValueTransformerRegistry(registry: ValueTransformerRegistry): void {\n\tvalueTransformerRegistry = registry;\n}\n\nexport function getValueTransformerList(): readonly ValueTransformerDefinition[] {\n\treturn valueTransformerRegistry.list;\n}\n\nexport function getValueTransformerById(transformerId: string | undefined): ValueTransformerDefinition | undefined {\n\tconst id = transformerId?.trim();\n\treturn id ? valueTransformerRegistry.byId.get(id) : undefined;\n}\n","import { getValueTransformerById } from \"./registry\";\nimport { type ValueTransformerCompileResult, type ValueTransformerExecutionResult } from \"./types\";\n\n/**\n * Фиксирует доверенную функцию один раз для многократной обработки значений.\n *\n * Вход и результат не приводятся к числу и не заменяются значением по умолчанию:\n * parsing и правила пустых данных принадлежат самой функции преобразования.\n */\nexport function compileValueTransformer(args: { transformerId: string | undefined }): ValueTransformerCompileResult {\n\tconst definition = getValueTransformerById(args.transformerId);\n\tif (!definition) return { ok: false, reason: \"transformer_not_found\" };\n\tconst fn = definition.fn;\n\n\treturn {\n\t\tok: true,\n\t\texecute: (value) => {\n\t\t\ttry {\n\t\t\t\treturn { ok: true, value: fn(value) };\n\t\t\t} catch {\n\t\t\t\treturn { ok: false, reason: \"runtime_error\" };\n\t\t\t}\n\t\t}\n\t};\n}\n\n/** Разовый запуск через активный реестр; для строк таблицы предпочтительна предварительная компиляция. */\nexport function executeValueTransformer(args: { transformerId: string | undefined; value: unknown }): ValueTransformerExecutionResult {\n\tconst compiled = compileValueTransformer(args);\n\treturn compiled.ok ? compiled.execute(args.value) : { ok: false, reason: compiled.reason };\n}\n"],"mappings":";AAQA,SAAgB,EAA+B,GAA8E;CAC5H,IAAM,oBAAO,IAAI,IAAwC,GACnD,IAAqC,CAAC;CAE5C,KAAK,IAAM,KAAc,GAAa;EACrC,IAAM,IAAK,EAAW,GAAG,KAAK;EAC9B,IAAI,CAAC,GAAI,MAAU,MAAM,kDAAkD;EAC3E,IAAI,EAAK,IAAI,CAAE,GAAG,MAAU,MAAM,uCAAuC,EAAG,EAAE;EAE9E,IAAM,IAAmD,OAAO,OAAO;GACtE,GAAG;GACH;GACA,MAAM,EAAW,KAAK,KAAK;GAC3B,aAAa,EAAW,YAAY,KAAK;GACzC,GAAI,EAAW,aAAa,KAAA,IAAY,CAAC,IAAI,EAAE,UAAU,OAAO,OAAO,CAAC,GAAG,EAAW,QAAQ,CAAC,EAAE;EAClG,CAAC;EAED,AADA,EAAK,IAAI,GAAI,CAAoB,GACjC,EAAK,KAAK,CAAoB;CAC/B;CAEA,OAAO,OAAO,OAAO;EAAE,MAAM,OAAO,OAAO,CAAI;EAAG;CAAK,CAAC;AACzD;AAEA,IAAI,IAA2B,EAA+B,CAAC,CAAC;AAMhE,SAAgB,EAAkC,GAA0C;CAC3F,IAA2B;AAC5B;AAEA,SAAgB,IAAiE;CAChF,OAAO,EAAyB;AACjC;AAEA,SAAgB,EAAwB,GAA2E;CAClH,IAAM,IAAK,GAAe,KAAK;CAC/B,OAAO,IAAK,EAAyB,KAAK,IAAI,CAAE,IAAI,KAAA;AACrD;;;ACvCA,SAAgB,EAAwB,GAA4E;CACnH,IAAM,IAAa,EAAwB,EAAK,aAAa;CAC7D,IAAI,CAAC,GAAY,OAAO;EAAE,IAAI;EAAO,QAAQ;CAAwB;CACrE,IAAM,IAAK,EAAW;CAEtB,OAAO;EACN,IAAI;EACJ,UAAU,MAAU;GACnB,IAAI;IACH,OAAO;KAAE,IAAI;KAAM,OAAO,EAAG,CAAK;IAAE;GACrC,QAAQ;IACP,OAAO;KAAE,IAAI;KAAO,QAAQ;IAAgB;GAC7C;EACD;CACD;AACD;AAGA,SAAgB,EAAwB,GAA8F;CACrI,IAAM,IAAW,EAAwB,CAAI;CAC7C,OAAO,EAAS,KAAK,EAAS,QAAQ,EAAK,KAAK,IAAI;EAAE,IAAI;EAAO,QAAQ,EAAS;CAAO;AAC1F"}
@@ -0,0 +1,15 @@
1
+ import { type ValueTransformerDefinition } from "./types";
2
+ export type ValueTransformerRegistry = Readonly<{
3
+ list: readonly ValueTransformerDefinition[];
4
+ byId: ReadonlyMap<string, ValueTransformerDefinition>;
5
+ }>;
6
+ /** Создаёт независимый каталог с устойчивыми ID и неизменяемыми метаданными. */
7
+ export declare function createValueTransformerRegistry(definitions: readonly ValueTransformerDefinition[]): ValueTransformerRegistry;
8
+ /**
9
+ * Устанавливает каталог host-приложения до первого чтения или компиляции.
10
+ * Библиотека предоставляет механизм и не регистрирует прикладные преобразования.
11
+ */
12
+ export declare function configureValueTransformerRegistry(registry: ValueTransformerRegistry): void;
13
+ export declare function getValueTransformerList(): readonly ValueTransformerDefinition[];
14
+ export declare function getValueTransformerById(transformerId: string | undefined): ValueTransformerDefinition | undefined;
15
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/value-transformers/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC/C,IAAI,EAAE,SAAS,0BAA0B,EAAE,CAAC;IAC5C,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;CACtD,CAAC,CAAC;AAEH,gFAAgF;AAChF,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,SAAS,0BAA0B,EAAE,GAAG,wBAAwB,CAqB3H;AAID;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI,CAE1F;AAED,wBAAgB,uBAAuB,IAAI,SAAS,0BAA0B,EAAE,CAE/E;AAED,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,0BAA0B,GAAG,SAAS,CAGjH"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Синхронное преобразование одного исходного значения в числовое значение.
3
+ *
4
+ * Функция владеет разбором входа и решением для пустых или ошибочных данных.
5
+ * Runtime сохраняет её результат буквально, включая null и undefined.
6
+ */
7
+ export type ValueTransformerFn = (value: unknown) => number | null | undefined;
8
+ /** Метаданные доверенной функции; прикладной каталог определяет host-приложение. */
9
+ export type ValueTransformerDefinition = Readonly<{
10
+ id: string;
11
+ name: string;
12
+ description: string;
13
+ keywords?: readonly string[];
14
+ fn: ValueTransformerFn;
15
+ }>;
16
+ /** Ошибка механизма отделена от значения, которое решила вернуть сама функция. */
17
+ export type ValueTransformerExecutionResult = {
18
+ ok: true;
19
+ value: number | null | undefined;
20
+ } | {
21
+ ok: false;
22
+ reason: "transformer_not_found" | "runtime_error";
23
+ };
24
+ export type ValueTransformerCompiledExecutor = (value: unknown) => ValueTransformerExecutionResult;
25
+ export type ValueTransformerCompileResult = {
26
+ ok: true;
27
+ execute: ValueTransformerCompiledExecutor;
28
+ } | {
29
+ ok: false;
30
+ reason: "transformer_not_found";
31
+ };
32
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/value-transformers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAE/E,oFAAoF;AACpF,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,EAAE,EAAE,kBAAkB,CAAC;CACvB,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,MAAM,+BAA+B,GAC1C;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,uBAAuB,GAAG,eAAe,CAAA;CAAE,CAAC;AAEnH,MAAM,MAAM,gCAAgC,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,+BAA+B,CAAC;AAEnG,MAAM,MAAM,6BAA6B,GACxC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gCAAgC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,uBAAuB,CAAA;CAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ryuzaki13/react-foundation-lib",
3
- "version": "2.28.0",
3
+ "version": "2.30.0",
4
4
  "description": "Reusable React and TypeScript foundation utilities, hooks, and primitives.",
5
5
  "license": "MIT",
6
6
  "author": "Ryuzaki13",
@@ -217,6 +217,10 @@
217
217
  "types": "./dist/validators/index.d.ts",
218
218
  "import": "./dist/validators/index.js"
219
219
  },
220
+ "./value-transformers": {
221
+ "types": "./dist/value-transformers/index.d.ts",
222
+ "import": "./dist/value-transformers/index.js"
223
+ },
220
224
  "./virtualizer": {
221
225
  "types": "./dist/virtualizer/index.d.ts",
222
226
  "import": "./dist/virtualizer/index.js"