@jxsuite/formulas 0.0.13 → 0.0.15
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/README.md +6 -6
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @jxsuite/formulas
|
|
2
2
|
|
|
3
3
|
Composite **pure formulas** for Jx, authored as declarative `$expression` JSON
|
|
4
|
-
(spec §19.4c). Each formula is a named, parameterized computation
|
|
5
|
-
`sum`, `average`, `truncate`, `initials`, …
|
|
4
|
+
(spec §19.4c). Each formula is a named, parameterized computation (`clamp`,
|
|
5
|
+
`sum`, `average`, `truncate`, `initials`, …) whose body is built exclusively
|
|
6
6
|
from blessed operators, pure standard-library method operators (§19.4d), and
|
|
7
7
|
blessed globals. No JavaScript source anywhere: every formula is inspectable
|
|
8
8
|
data that the visual editor can open, badge with live values, and recompose.
|
|
@@ -12,13 +12,13 @@ data that the visual editor can open, badge with live values, and recompose.
|
|
|
12
12
|
This package is a **studio/tooling dependency**, deliberately _not_ a runtime
|
|
13
13
|
or project dependency. Jx documents stay self-contained plain JSON:
|
|
14
14
|
|
|
15
|
-
- **In Jx Studio
|
|
15
|
+
- **In Jx Studio**, the formula catalog lists these formulas alongside
|
|
16
16
|
operators and blessed globals. Picking one **copies its state entry into the
|
|
17
17
|
document** (vendoring the JSON) and inserts a `call` node referencing it.
|
|
18
18
|
From that moment the project owns the formula: no package resolution at
|
|
19
19
|
build or run time, no version coupling, and the user can edit their copy
|
|
20
20
|
like any other named formula.
|
|
21
|
-
- **Programmatically
|
|
21
|
+
- **Programmatically**, `formulaEntries()` returns the catalog as
|
|
22
22
|
ready-to-merge `state` entries for tooling that seeds documents or
|
|
23
23
|
`project.json` state (starters, importers, AI agents):
|
|
24
24
|
|
|
@@ -30,7 +30,7 @@ or project dependency. Jx documents stay self-contained plain JSON:
|
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
Because consumption is copy-in, publishing a new package version never changes
|
|
33
|
-
existing projects
|
|
33
|
+
existing projects. A project upgrades a formula by re-inserting it.
|
|
34
34
|
|
|
35
35
|
## Authoring a formula
|
|
36
36
|
|
|
@@ -50,7 +50,7 @@ bun run generate
|
|
|
50
50
|
The generator (`bin/generate.ts`) emits `src/catalog.ts` and **fails the build
|
|
51
51
|
on anything impure**: unknown or mutating operators, or `call` targets outside
|
|
52
52
|
the blessed pure globals (`window#/Math/…`, `window#/JSON/…`, …). Descriptions
|
|
53
|
-
are mandatory
|
|
53
|
+
are mandatory because they double as editor tooltips and the LLM contract.
|
|
54
54
|
|
|
55
55
|
## Releases
|
|
56
56
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jxsuite/formulas",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "Composite pure formulas for Jx, authored as declarative $expression JSON",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
"test": "bun test --isolate"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@jxsuite/schema": "^
|
|
28
|
+
"@jxsuite/schema": "^2.0.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@jxsuite/runtime": "^
|
|
31
|
+
"@jxsuite/runtime": "^3.0.0"
|
|
32
32
|
}
|
|
33
33
|
}
|