aontu 0.62.0 → 0.64.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 (373) hide show
  1. package/README.md +7 -7
  2. package/dist/agentsmd.js +0 -27
  3. package/dist/agentsmd.js.map +1 -1
  4. package/dist/alias.js.map +1 -1
  5. package/dist/allow.js +0 -92
  6. package/dist/allow.js.map +1 -1
  7. package/dist/aontu.d.ts +3 -3
  8. package/dist/aontu.js +4 -84
  9. package/dist/aontu.js.map +1 -1
  10. package/dist/aontumodel.d.ts +4 -0
  11. package/dist/aontumodel.js +27 -0
  12. package/dist/aontumodel.js.map +1 -0
  13. package/dist/casing.d.ts +5 -0
  14. package/dist/casing.js +90 -0
  15. package/dist/casing.js.map +1 -0
  16. package/dist/cli.d.ts +2 -2
  17. package/dist/cli.js +228 -935
  18. package/dist/cli.js.map +1 -1
  19. package/dist/ctx.js +0 -48
  20. package/dist/ctx.js.map +1 -1
  21. package/dist/diff.js +0 -32
  22. package/dist/diff.js.map +1 -1
  23. package/dist/err.js +0 -40
  24. package/dist/err.js.map +1 -1
  25. package/dist/escape.js +0 -45
  26. package/dist/escape.js.map +1 -1
  27. package/dist/exactjson.d.ts +0 -35
  28. package/dist/exactjson.js +0 -131
  29. package/dist/exactjson.js.map +1 -1
  30. package/dist/format.js +13 -203
  31. package/dist/format.js.map +1 -1
  32. package/dist/grammar.d.ts +9 -0
  33. package/dist/grammar.js +54 -0
  34. package/dist/grammar.js.map +1 -0
  35. package/dist/graph.js +0 -26
  36. package/dist/graph.js.map +1 -1
  37. package/dist/hcanon.js +0 -82
  38. package/dist/hcanon.js.map +1 -1
  39. package/dist/helpdoc.js +2 -2
  40. package/dist/helpdoc.js.map +1 -1
  41. package/dist/hints.d.ts +0 -6
  42. package/dist/hints.js +57 -55
  43. package/dist/hints.js.map +1 -1
  44. package/dist/jsonschema.js +0 -114
  45. package/dist/jsonschema.js.map +1 -1
  46. package/dist/keyorder.d.ts +0 -7
  47. package/dist/keyorder.js +0 -41
  48. package/dist/keyorder.js.map +1 -1
  49. package/dist/lang.js +17 -915
  50. package/dist/lang.js.map +1 -1
  51. package/dist/lsp-server.js +0 -16
  52. package/dist/lsp-server.js.map +1 -1
  53. package/dist/lsp.d.ts +1 -1
  54. package/dist/lsp.js +12 -159
  55. package/dist/lsp.js.map +1 -1
  56. package/dist/mcp-server.js +0 -26
  57. package/dist/mcp-server.js.map +1 -1
  58. package/dist/mcp.js +0 -149
  59. package/dist/mcp.js.map +1 -1
  60. package/dist/mod-tool.js +16 -131
  61. package/dist/mod-tool.js.map +1 -1
  62. package/dist/mod.js +0 -162
  63. package/dist/mod.js.map +1 -1
  64. package/dist/patch.js +0 -217
  65. package/dist/patch.js.map +1 -1
  66. package/dist/profile.d.ts +9 -0
  67. package/dist/profile.js +28 -0
  68. package/dist/profile.js.map +1 -0
  69. package/dist/provenance.js +0 -140
  70. package/dist/provenance.js.map +1 -1
  71. package/dist/query.js +0 -75
  72. package/dist/query.js.map +1 -1
  73. package/dist/reach.js +0 -43
  74. package/dist/reach.js.map +1 -1
  75. package/dist/relation.js +0 -61
  76. package/dist/relation.js.map +1 -1
  77. package/dist/report-sarif.d.ts +0 -11
  78. package/dist/report-sarif.js +0 -28
  79. package/dist/report-sarif.js.map +1 -1
  80. package/dist/sig.js +0 -35
  81. package/dist/sig.js.map +1 -1
  82. package/dist/sigdecl.js +1 -1
  83. package/dist/sigdecl.js.map +1 -1
  84. package/dist/siggate.js +0 -4
  85. package/dist/siggate.js.map +1 -1
  86. package/dist/site.js +3 -29
  87. package/dist/site.js.map +1 -1
  88. package/dist/subsume.d.ts +0 -10
  89. package/dist/subsume.js +0 -137
  90. package/dist/subsume.js.map +1 -1
  91. package/dist/template.d.ts +2 -1
  92. package/dist/template.js +58 -138
  93. package/dist/template.js.map +1 -1
  94. package/dist/trace.d.ts +21 -0
  95. package/dist/trace.js +107 -0
  96. package/dist/trace.js.map +1 -0
  97. package/dist/trim.js +0 -41
  98. package/dist/trim.js.map +1 -1
  99. package/dist/tsconfig.tsbuildinfo +1 -1
  100. package/dist/type.js.map +1 -1
  101. package/dist/unify.js +13 -248
  102. package/dist/unify.js.map +1 -1
  103. package/dist/utility.js +0 -22
  104. package/dist/utility.js.map +1 -1
  105. package/dist/val/AbnfFuncVal.d.ts +18 -0
  106. package/dist/val/AbnfFuncVal.js +132 -0
  107. package/dist/val/AbnfFuncVal.js.map +1 -0
  108. package/dist/val/AbsentVal.d.ts +11 -0
  109. package/dist/val/AbsentVal.js +30 -0
  110. package/dist/val/AbsentVal.js.map +1 -0
  111. package/dist/val/AggFuncVal.d.ts +10 -1
  112. package/dist/val/AggFuncVal.js +104 -116
  113. package/dist/val/AggFuncVal.js.map +1 -1
  114. package/dist/val/ArithFuncVal.js +0 -12
  115. package/dist/val/ArithFuncVal.js.map +1 -1
  116. package/dist/val/BagVal.js +1 -78
  117. package/dist/val/BagVal.js.map +1 -1
  118. package/dist/val/BigDecimalVal.js +0 -16
  119. package/dist/val/BigDecimalVal.js.map +1 -1
  120. package/dist/val/BigIntegerVal.js +0 -16
  121. package/dist/val/BigIntegerVal.js.map +1 -1
  122. package/dist/val/CloseFuncVal.js +0 -9
  123. package/dist/val/CloseFuncVal.js.map +1 -1
  124. package/dist/val/CmpFuncVal.d.ts +2 -0
  125. package/dist/val/CmpFuncVal.js +49 -72
  126. package/dist/val/CmpFuncVal.js.map +1 -1
  127. package/dist/val/ConjunctVal.js +0 -29
  128. package/dist/val/ConjunctVal.js.map +1 -1
  129. package/dist/val/ConstraintVal.js +0 -500
  130. package/dist/val/ConstraintVal.js.map +1 -1
  131. package/dist/val/ContainerKindVal.js +0 -2
  132. package/dist/val/ContainerKindVal.js.map +1 -1
  133. package/dist/val/CopyFuncVal.js +0 -3
  134. package/dist/val/CopyFuncVal.js.map +1 -1
  135. package/dist/val/Decimal.js +0 -179
  136. package/dist/val/Decimal.js.map +1 -1
  137. package/dist/val/DeprecateFuncVal.js.map +1 -1
  138. package/dist/val/DisjunctVal.js +0 -152
  139. package/dist/val/DisjunctVal.js.map +1 -1
  140. package/dist/val/EachFuncVal.js +0 -3
  141. package/dist/val/EachFuncVal.js.map +1 -1
  142. package/dist/val/EmitFuncVal.d.ts +1 -1
  143. package/dist/val/EmitFuncVal.js +6 -119
  144. package/dist/val/EmitFuncVal.js.map +1 -1
  145. package/dist/val/ExpectVal.js +0 -62
  146. package/dist/val/ExpectVal.js.map +1 -1
  147. package/dist/val/FilterFuncVal.js +0 -25
  148. package/dist/val/FilterFuncVal.js.map +1 -1
  149. package/dist/val/FuncBaseVal.d.ts +1 -0
  150. package/dist/val/FuncBaseVal.js +7 -127
  151. package/dist/val/FuncBaseVal.js.map +1 -1
  152. package/dist/val/GraphAtomVal.js +0 -15
  153. package/dist/val/GraphAtomVal.js.map +1 -1
  154. package/dist/val/HideFuncVal.js +0 -13
  155. package/dist/val/HideFuncVal.js.map +1 -1
  156. package/dist/val/IntegerVal.js +0 -61
  157. package/dist/val/IntegerVal.js.map +1 -1
  158. package/dist/val/JunctionVal.js +0 -20
  159. package/dist/val/JunctionVal.js.map +1 -1
  160. package/dist/val/KeyFuncVal.js +0 -46
  161. package/dist/val/KeyFuncVal.js.map +1 -1
  162. package/dist/val/ListVal.js +0 -57
  163. package/dist/val/ListVal.js.map +1 -1
  164. package/dist/val/LowerFuncVal.js +0 -11
  165. package/dist/val/LowerFuncVal.js.map +1 -1
  166. package/dist/val/MapVal.js +0 -151
  167. package/dist/val/MapVal.js.map +1 -1
  168. package/dist/val/MatchFuncVal.js +0 -27
  169. package/dist/val/MatchFuncVal.js.map +1 -1
  170. package/dist/val/{FormFuncVal.d.ts → MaybeFuncVal.d.ts} +5 -5
  171. package/dist/val/MaybeFuncVal.js +50 -0
  172. package/dist/val/MaybeFuncVal.js.map +1 -0
  173. package/dist/val/MoveFuncVal.js +0 -18
  174. package/dist/val/MoveFuncVal.js.map +1 -1
  175. package/dist/val/NilVal.js +0 -60
  176. package/dist/val/NilVal.js.map +1 -1
  177. package/dist/val/NomFuncVal.js +18 -54
  178. package/dist/val/NomFuncVal.js.map +1 -1
  179. package/dist/val/NumberVal.js +0 -15
  180. package/dist/val/NumberVal.js.map +1 -1
  181. package/dist/val/OpBaseVal.d.ts +1 -0
  182. package/dist/val/OpBaseVal.js +3 -15
  183. package/dist/val/OpBaseVal.js.map +1 -1
  184. package/dist/val/PackFuncVal.js +0 -34
  185. package/dist/val/PackFuncVal.js.map +1 -1
  186. package/dist/val/PathFuncVal.js +0 -6
  187. package/dist/val/PathFuncVal.js.map +1 -1
  188. package/dist/val/PathVal.js +0 -41
  189. package/dist/val/PathVal.js.map +1 -1
  190. package/dist/val/PlaceVal.js +0 -25
  191. package/dist/val/PlaceVal.js.map +1 -1
  192. package/dist/val/PlusOpVal.d.ts +1 -7
  193. package/dist/val/PlusOpVal.js +13 -74
  194. package/dist/val/PlusOpVal.js.map +1 -1
  195. package/dist/val/PrefFuncVal.js +0 -1
  196. package/dist/val/PrefFuncVal.js.map +1 -1
  197. package/dist/val/PrefVal.js +0 -167
  198. package/dist/val/PrefVal.js.map +1 -1
  199. package/dist/val/RecurseVal.js +0 -55
  200. package/dist/val/RecurseVal.js.map +1 -1
  201. package/dist/val/RefVal.js +0 -282
  202. package/dist/val/RefVal.js.map +1 -1
  203. package/dist/val/ReferFuncVal.js +3 -232
  204. package/dist/val/ReferFuncVal.js.map +1 -1
  205. package/dist/val/ScalarKindVal.js +0 -49
  206. package/dist/val/ScalarKindVal.js.map +1 -1
  207. package/dist/val/ScalarVal.js +0 -11
  208. package/dist/val/ScalarVal.js.map +1 -1
  209. package/dist/val/StrFuncVal.js +0 -18
  210. package/dist/val/StrFuncVal.js.map +1 -1
  211. package/dist/val/SuperFuncVal.js +0 -32
  212. package/dist/val/SuperFuncVal.js.map +1 -1
  213. package/dist/val/TopVal.js +0 -1
  214. package/dist/val/TopVal.js.map +1 -1
  215. package/dist/val/TranslateFuncVal.js +1 -3
  216. package/dist/val/TranslateFuncVal.js.map +1 -1
  217. package/dist/val/UpperFuncVal.js +0 -11
  218. package/dist/val/UpperFuncVal.js.map +1 -1
  219. package/dist/val/Val.d.ts +1 -0
  220. package/dist/val/Val.js +2 -133
  221. package/dist/val/Val.js.map +1 -1
  222. package/dist/val/VarVal.js +0 -12
  223. package/dist/val/VarVal.js.map +1 -1
  224. package/dist/val/arith.js +0 -37
  225. package/dist/val/arith.js.map +1 -1
  226. package/dist/val/caserange.js +0 -61
  227. package/dist/val/caserange.js.map +1 -1
  228. package/dist/val/members.js +0 -6
  229. package/dist/val/members.js.map +1 -1
  230. package/dist/val/numcmp.js +0 -11
  231. package/dist/val/numcmp.js.map +1 -1
  232. package/dist/val/numkind.js +0 -145
  233. package/dist/val/numkind.js.map +1 -1
  234. package/dist/val/valutil.js +0 -16
  235. package/dist/val/valutil.js.map +1 -1
  236. package/dist/vet.js +0 -461
  237. package/dist/vet.js.map +1 -1
  238. package/dist/view.js +0 -414
  239. package/dist/view.js.map +1 -1
  240. package/dist/walk.js +0 -41
  241. package/dist/walk.js.map +1 -1
  242. package/grammar/aontu.abnf +8 -6
  243. package/grammar/aontu.gbnf +4 -4
  244. package/grammar/aontu.lark +4 -4
  245. package/grammar/aontu.tmLanguage.json +1 -1
  246. package/package.json +4 -2
  247. package/skill/tasks.md +9 -7
  248. package/src/agentsmd.ts +0 -35
  249. package/src/alias.ts +0 -39
  250. package/src/allow.ts +1 -96
  251. package/src/aontu.ts +4 -116
  252. package/src/aontumodel.ts +26 -0
  253. package/src/casing.ts +95 -0
  254. package/src/cli.ts +258 -1024
  255. package/src/ctx.ts +0 -103
  256. package/src/diff.ts +0 -40
  257. package/src/err.ts +0 -40
  258. package/src/escape.ts +0 -46
  259. package/src/exactjson.ts +0 -131
  260. package/src/format.ts +14 -257
  261. package/src/grammar.ts +72 -0
  262. package/src/graph.ts +0 -61
  263. package/src/hcanon.ts +0 -82
  264. package/src/helpdoc.ts +2 -2
  265. package/src/hints.ts +69 -57
  266. package/src/jsonschema.ts +0 -123
  267. package/src/keyorder.ts +0 -42
  268. package/src/lang.ts +19 -931
  269. package/src/lsp-server.ts +0 -16
  270. package/src/lsp.ts +12 -180
  271. package/src/mcp-server.ts +0 -31
  272. package/src/mcp.ts +0 -169
  273. package/src/mod-tool.ts +18 -159
  274. package/src/mod.ts +0 -178
  275. package/src/patch.ts +0 -232
  276. package/src/profile.ts +42 -0
  277. package/src/provenance.ts +0 -183
  278. package/src/query.ts +0 -84
  279. package/src/reach.ts +0 -53
  280. package/src/relation.ts +0 -84
  281. package/src/report-sarif.ts +0 -48
  282. package/src/sig.ts +0 -35
  283. package/src/sigdecl.ts +1 -1
  284. package/src/siggate.ts +0 -30
  285. package/src/site.ts +3 -29
  286. package/src/subsume.ts +1 -161
  287. package/src/template.ts +69 -140
  288. package/src/trace.ts +157 -0
  289. package/src/trim.ts +0 -53
  290. package/src/type.ts +2 -45
  291. package/src/unify.ts +14 -257
  292. package/src/utility.ts +0 -31
  293. package/src/val/AbnfFuncVal.ts +181 -0
  294. package/src/val/AbsentVal.ts +54 -0
  295. package/src/val/AggFuncVal.ts +152 -188
  296. package/src/val/ArithFuncVal.ts +0 -20
  297. package/src/val/BagVal.ts +1 -78
  298. package/src/val/BigDecimalVal.ts +0 -16
  299. package/src/val/BigIntegerVal.ts +0 -16
  300. package/src/val/CloseFuncVal.ts +0 -9
  301. package/src/val/CmpFuncVal.ts +68 -184
  302. package/src/val/ConjunctVal.ts +0 -33
  303. package/src/val/ConstraintVal.ts +2 -537
  304. package/src/val/ContainerKindVal.ts +0 -18
  305. package/src/val/CopyFuncVal.ts +0 -5
  306. package/src/val/Decimal.ts +1 -185
  307. package/src/val/DeprecateFuncVal.ts +0 -10
  308. package/src/val/DisjunctVal.ts +0 -157
  309. package/src/val/EachFuncVal.ts +0 -40
  310. package/src/val/EmitFuncVal.ts +8 -208
  311. package/src/val/ExpectVal.ts +0 -62
  312. package/src/val/FilterFuncVal.ts +0 -55
  313. package/src/val/FuncBaseVal.ts +9 -130
  314. package/src/val/GraphAtomVal.ts +0 -42
  315. package/src/val/HideFuncVal.ts +0 -15
  316. package/src/val/IntegerVal.ts +0 -61
  317. package/src/val/JunctionVal.ts +0 -20
  318. package/src/val/KeyFuncVal.ts +0 -48
  319. package/src/val/ListVal.ts +0 -59
  320. package/src/val/LowerFuncVal.ts +0 -12
  321. package/src/val/MapVal.ts +0 -151
  322. package/src/val/MatchFuncVal.ts +0 -59
  323. package/src/val/MaybeFuncVal.ts +86 -0
  324. package/src/val/MoveFuncVal.ts +0 -20
  325. package/src/val/NilVal.ts +0 -60
  326. package/src/val/NomFuncVal.ts +10 -99
  327. package/src/val/NumberVal.ts +0 -16
  328. package/src/val/OpBaseVal.ts +4 -17
  329. package/src/val/PackFuncVal.ts +0 -63
  330. package/src/val/PathFuncVal.ts +0 -32
  331. package/src/val/PathVal.ts +0 -66
  332. package/src/val/PlaceVal.ts +0 -45
  333. package/src/val/PlusOpVal.ts +18 -75
  334. package/src/val/PrefFuncVal.ts +0 -1
  335. package/src/val/PrefVal.ts +0 -179
  336. package/src/val/RecurseVal.ts +0 -81
  337. package/src/val/RefVal.ts +1 -285
  338. package/src/val/ReferFuncVal.ts +4 -255
  339. package/src/val/ScalarKindVal.ts +0 -50
  340. package/src/val/ScalarVal.ts +0 -12
  341. package/src/val/StrFuncVal.ts +0 -44
  342. package/src/val/SuperFuncVal.ts +0 -42
  343. package/src/val/TopVal.ts +0 -1
  344. package/src/val/TranslateFuncVal.ts +1 -51
  345. package/src/val/UpperFuncVal.ts +0 -12
  346. package/src/val/Val.ts +3 -192
  347. package/src/val/VarVal.ts +0 -15
  348. package/src/val/arith.ts +0 -92
  349. package/src/val/caserange.ts +0 -62
  350. package/src/val/members.ts +0 -23
  351. package/src/val/numcmp.ts +1 -27
  352. package/src/val/numkind.ts +0 -149
  353. package/src/val/valutil.ts +0 -16
  354. package/src/vet.ts +1 -582
  355. package/src/view.ts +0 -507
  356. package/src/walk.ts +0 -41
  357. package/dist/lower.d.ts +0 -23
  358. package/dist/lower.js +0 -578
  359. package/dist/lower.js.map +0 -1
  360. package/dist/render.d.ts +0 -53
  361. package/dist/render.js +0 -547
  362. package/dist/render.js.map +0 -1
  363. package/dist/std.d.ts +0 -3
  364. package/dist/std.js +0 -672
  365. package/dist/std.js.map +0 -1
  366. package/dist/val/FormFuncVal.js +0 -55
  367. package/dist/val/FormFuncVal.js.map +0 -1
  368. package/dist/val/NamerFuncVal.d.ts +0 -12
  369. package/dist/val/NamerFuncVal.js +0 -176
  370. package/dist/val/NamerFuncVal.js.map +0 -1
  371. package/src/lower.ts +0 -636
  372. package/src/render.ts +0 -732
  373. package/src/std.ts +0 -683
@@ -1,55 +0,0 @@
1
- "use strict";
2
- /* Copyright (c) 2025 Richard Rodger, MIT License */
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.FormFuncVal = void 0;
5
- const err_1 = require("../err");
6
- const ListVal_1 = require("./ListVal");
7
- const FuncBaseVal_1 = require("./FuncBaseVal");
8
- const Val_1 = require("./Val");
9
- const PlaceVal_1 = require("./PlaceVal");
10
- const members_1 = require("./members");
11
- class FormFuncVal extends FuncBaseVal_1.FuncBaseVal {
12
- constructor(spec, ctx) {
13
- super(spec, ctx);
14
- this.isFormFunc = true;
15
- // THE STAGING RULE, for the reason given in PackFuncVal: the data
16
- // is not settled merely by being `done` once.
17
- this.staged = true;
18
- }
19
- funcname() {
20
- return 'form';
21
- }
22
- // The template is not an argument to drive (see PackFuncVal.prepare).
23
- prepare(_ctx, _args) {
24
- return null;
25
- }
26
- unify(peer, ctx) {
27
- // ONE argument is driven: the data. The template is not (see
28
- // prepare above).
29
- if (!this.stagedReady(peer, ctx, 1)) {
30
- return this.residuate(peer, ctx);
31
- }
32
- return super.unify(peer, ctx);
33
- }
34
- resolve(ctx, args) {
35
- const vals = (0, members_1.memberVals)(args?.[0], ctx);
36
- if (undefined === vals) {
37
- return (0, err_1.makeNilErr)(ctx, 'form_data', this);
38
- }
39
- // Arity is checked at parse (funcArity), so the template is here.
40
- const tmpl = args[1];
41
- const peg = [];
42
- for (let i = 0; i < vals.length; i++) {
43
- const elctx = ctx.descend(String(i));
44
- // A FULL INSTANCE per element, to the leaves (`dup`, ADR-005),
45
- // at the element's own position -- see PackFuncVal.resolve --
46
- // with `_` bound to the source child and NOTHING met into it.
47
- const inst = tmpl.clone(elctx, { dup: true });
48
- (0, Val_1.repathInstance)(inst, inst.path);
49
- peg.push((0, PlaceVal_1.fillPlace)(inst, vals[i], elctx));
50
- }
51
- return new ListVal_1.ListVal({ peg }, ctx);
52
- }
53
- } /* node:coverage ignore next 6 */
54
- exports.FormFuncVal = FormFuncVal;
55
- //# sourceMappingURL=FormFuncVal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormFuncVal.js","sourceRoot":"","sources":["../../src/val/FormFuncVal.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAkDpD,gCAAmC;AACnC,uCAAmC;AACnC,+CAA2C;AAC3C,+BAAsC;AACtC,yCAAsC;AACtC,uCAAsC;AAGtC,MAAM,WAAY,SAAQ,yBAAW;IAOnC,YACE,IAAa,EACb,GAAkB;QAElB,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAVlB,eAAU,GAAG,IAAI,CAAA;QAEjB,kEAAkE;QAClE,8CAA8C;QAC9C,WAAM,GAAG,IAAI,CAAA;IAOb,CAAC;IAGD,QAAQ;QACN,OAAO,MAAM,CAAA;IACf,CAAC;IAGD,sEAAsE;IACtE,OAAO,CAAC,IAAkB,EAAE,KAAY;QACtC,OAAO,IAAI,CAAA;IACb,CAAC;IAGD,KAAK,CAAC,IAAS,EAAE,GAAiB;QAChC,6DAA6D;QAC7D,kBAAkB;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAClC,CAAC;QAED,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC/B,CAAC;IAGD,OAAO,CAAC,GAAiB,EAAE,IAAW;QACpC,MAAM,IAAI,GAAG,IAAA,oBAAU,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QACvC,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,IAAA,gBAAU,EAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;QAC3C,CAAC;QAED,kEAAkE;QAClE,MAAM,IAAI,GAAQ,IAAI,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,GAAG,GAAU,EAAE,CAAA;QAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YACpC,+DAA+D;YAC/D,8DAA8D;YAC9D,8DAA8D;YAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;YAC7C,IAAA,oBAAc,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,GAAG,CAAC,IAAI,CAAC,IAAA,oBAAS,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QAC3C,CAAC;QAED,OAAO,IAAI,iBAAO,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;IAClC,CAAC;CAEF,CAAC,iCAAiC;QAIjC,WAAW"}
@@ -1,12 +0,0 @@
1
- import type { Val, ValSpec } from '../type';
2
- import { AontuContext } from '../ctx';
3
- import { FuncBaseVal } from './FuncBaseVal';
4
- declare const NAMER_STYLES: string[];
5
- declare class NamerFuncVal extends FuncBaseVal {
6
- isNamerFunc: boolean;
7
- constructor(spec: ValSpec, ctx?: AontuContext);
8
- make(_ctx: AontuContext, spec: ValSpec): Val;
9
- funcname(): string;
10
- resolve(ctx: AontuContext, args: Val[]): Val;
11
- }
12
- export { NAMER_STYLES, NamerFuncVal, };
@@ -1,176 +0,0 @@
1
- "use strict";
2
- /* Copyright (c) 2026 Richard Rodger, MIT License */
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.NamerFuncVal = exports.NAMER_STYLES = void 0;
5
- const err_1 = require("../err");
6
- const lower_1 = require("../lower");
7
- const MapVal_1 = require("./MapVal");
8
- const StringVal_1 = require("./StringVal");
9
- const FuncBaseVal_1 = require("./FuncBaseVal");
10
- // The styles, and the map's keys. The first five are `caseName`'s --
11
- // `aontu:profile`'s `%case` vocabulary, shared with the renderer --
12
- // and the last four are namer's own (see the note above). `as-is` is
13
- // not among them: it is the profile's way of saying "do nothing",
14
- // which is not a spelling anyone asks a namer for.
15
- const NAMER_STYLES = [
16
- 'camel', // userId
17
- 'dot', // user.id
18
- 'human', // User id
19
- 'kebab', // user-id
20
- 'pascal', // UserId
21
- 'path', // user/id
22
- 'screaming', // USER_ID
23
- 'snake', // user_id
24
- 'title', // User Id
25
- ];
26
- exports.NAMER_STYLES = NAMER_STYLES;
27
- const CASENAME_STYLES = ['camel', 'kebab', 'pascal', 'screaming', 'snake'];
28
- // One name in one style, or undefined when the style is not one, or
29
- // when the name holds no words at all.
30
- function styleName(name, style, acronyms) {
31
- // `.` and `/` are namer's separators, folded before the shared
32
- // splitter is asked (see the note above). Everything else that is
33
- // not a separator is word content: a `$` or a `@` rides into the
34
- // word it sits in, which is why `namer` renames a spelled path's
35
- // text and does not tidy it.
36
- const src = name.replace(/[./]/g, '_');
37
- // A NAME WITH NO WORDS IS NOT A NAME, and it is refused in every
38
- // style. `caseName` answers its INPUT for one (it is lowering a
39
- // declaration, where the name has already been vetted), so
40
- // `namer("_", pascal)` came back as `"_"` while `namer("_")`
41
- // refused -- the same argument, accepted by one spelling of the
42
- // call and refused by the other.
43
- const words = (0, lower_1.splitWords)(src);
44
- if (0 === words.length) {
45
- return undefined;
46
- }
47
- if (CASENAME_STYLES.includes(style)) {
48
- return (0, lower_1.caseName)(src, style, acronyms);
49
- }
50
- if ('dot' === style) {
51
- return words.map(lower_1.lowerASCII).join('.');
52
- }
53
- if ('path' === style) {
54
- return words.map(lower_1.lowerASCII).join('/');
55
- }
56
- if ('title' === style) {
57
- return words.map((w) => (0, lower_1.capitalise)(w, acronyms)).join(' ');
58
- }
59
- if ('human' === style) {
60
- // Sentence case: the first word capitalised, the rest lower --
61
- // EXCEPT an acronym, which stays one, because `ledger id` loses
62
- // what `ID` was. Membership in the set decides that, not how the
63
- // input happened to spell the word: asking whether `capitalise`
64
- // changed it made `namer("ledgerId", human, [ID])` answer
65
- // `Ledger id` while `namer("ledgerID", human, [ID])` answered
66
- // `Ledger ID` -- the same name, two answers, decided by its
67
- // source spelling, which is the one thing a namer must not do.
68
- const isAcronym = (w) => acronyms.some((a) => (0, lower_1.lowerASCII)(a) === (0, lower_1.lowerASCII)(w));
69
- return [(0, lower_1.capitalise)(words[0], acronyms)]
70
- .concat(words.slice(1).map((w) => isAcronym(w) ? (0, lower_1.capitalise)(w, acronyms) : (0, lower_1.lowerASCII)(w)))
71
- .join(' ');
72
- }
73
- return undefined;
74
- }
75
- // The text a value carries, when it is a concrete string. A path is a
76
- // string too (ScalarKindVal's Path sits under String), so a spelled
77
- // address may be renamed like any other text.
78
- function textOf(v) {
79
- const s = v;
80
- return (true === s?.isScalar && 'string' === typeof s.peg) ? s.peg : undefined;
81
- }
82
- // An acronym set: a list of concrete strings, or undefined when the
83
- // value is not one.
84
- function acronymsOf(v) {
85
- const l = v;
86
- if (true !== l?.isList) {
87
- return undefined;
88
- }
89
- const out = [];
90
- for (const el of l.peg) {
91
- const t = textOf(el);
92
- if (undefined === t || '' === t) {
93
- return undefined;
94
- }
95
- out.push(t);
96
- }
97
- return out;
98
- }
99
- class NamerFuncVal extends FuncBaseVal_1.FuncBaseVal {
100
- constructor(spec, ctx) {
101
- super(spec, ctx);
102
- this.isNamerFunc = true;
103
- }
104
- make(_ctx, spec) {
105
- return new NamerFuncVal(spec);
106
- }
107
- funcname() {
108
- return 'namer';
109
- }
110
- resolve(ctx, args) {
111
- if (args.length < 1 || 3 < args.length) {
112
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, undefined, 'arity');
113
- }
114
- const name = textOf(args[0]);
115
- if (undefined === name || '' === name) {
116
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, args[0], 'name');
117
- }
118
- // THE SECOND ARGUMENT SAYS WHICH OF THE FOUR CALLS THIS IS, by
119
- // its shape rather than by its position: a STRING is the style, a
120
- // LIST is the acronym set. The same rule the component primitives
121
- // read their spec by, and it is what keeps the acronym set
122
- // reachable from the map form without a placeholder argument.
123
- let style;
124
- let acronyms = [];
125
- if (2 <= args.length) {
126
- const second = args[1];
127
- if (true === second?.isList) {
128
- if (3 === args.length) {
129
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, args[2], 'arity');
130
- }
131
- const acr = acronymsOf(second);
132
- if (undefined === acr) {
133
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, second, 'acronyms');
134
- }
135
- acronyms = acr;
136
- }
137
- else {
138
- style = textOf(second);
139
- if (undefined === style) {
140
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, second, 'style');
141
- }
142
- if (3 === args.length) {
143
- const acr = acronymsOf(args[2]);
144
- if (undefined === acr) {
145
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, args[2], 'acronyms');
146
- }
147
- acronyms = acr;
148
- }
149
- }
150
- }
151
- // One style: the string.
152
- if (undefined !== style) {
153
- const out = styleName(name, style, acronyms);
154
- if (undefined === out) {
155
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, args[1], 'style');
156
- }
157
- return this.place(new StringVal_1.StringVal({ peg: out }, ctx));
158
- }
159
- // Every style: the map. Closed, because the nine keys ARE the
160
- // vocabulary and a tenth is a typo -- `namer($.n).pascel` is
161
- // refused where every other mistake in an aontu document is.
162
- const peg = {};
163
- for (const s of NAMER_STYLES) {
164
- const out = styleName(name, s, acronyms);
165
- if (undefined === out) {
166
- return (0, err_1.makeNilErr)(ctx, 'invalid-arg', this, args[0], 'name');
167
- }
168
- peg[s] = new StringVal_1.StringVal({ peg: out }, ctx);
169
- }
170
- const map = new MapVal_1.MapVal({ peg }, ctx);
171
- map.closed = true;
172
- return this.place(map);
173
- }
174
- } /* node:coverage ignore next 6 */
175
- exports.NamerFuncVal = NamerFuncVal;
176
- //# sourceMappingURL=NamerFuncVal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NamerFuncVal.js","sourceRoot":"","sources":["../../src/val/NamerFuncVal.ts"],"names":[],"mappings":"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"}