@owlmeans/viable-common 0.0.44 → 0.0.45

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 (589) hide show
  1. package/README.md +3 -3
  2. package/agent-meta/manifest.json +2 -2
  3. package/agent-meta/skills/agent-presentation/SKILL.md +4 -4
  4. package/agent-meta/skills/viable-common/SKILL.md +40 -28
  5. package/build/agent/index.d.ts +1 -0
  6. package/build/agent/index.d.ts.map +1 -1
  7. package/build/agent/index.js.map +1 -1
  8. package/build/agent/presentation/types.d.ts +21 -0
  9. package/build/agent/presentation/types.d.ts.map +1 -0
  10. package/build/agent/presentation/types.js.map +1 -0
  11. package/build/agent/presentation.d.ts +10 -8
  12. package/build/agent/presentation.d.ts.map +1 -1
  13. package/build/agent/presentation.js +216 -195
  14. package/build/agent/presentation.js.map +1 -1
  15. package/build/agent/types.local.d.ts +3 -1
  16. package/build/agent/types.local.d.ts.map +1 -1
  17. package/build/areas/index.d.ts +1 -0
  18. package/build/areas/index.d.ts.map +1 -1
  19. package/build/areas/index.js.map +1 -1
  20. package/build/areas/tenancy/types.d.ts +23 -0
  21. package/build/areas/tenancy/types.d.ts.map +1 -0
  22. package/build/areas/tenancy/types.js +2 -0
  23. package/build/areas/tenancy/types.js.map +1 -0
  24. package/build/areas/tenancy.d.ts +5 -14
  25. package/build/areas/tenancy.d.ts.map +1 -1
  26. package/build/areas/tenancy.js +20 -26
  27. package/build/areas/tenancy.js.map +1 -1
  28. package/build/ba/connecting/types.d.ts +45 -0
  29. package/build/ba/connecting/types.d.ts.map +1 -0
  30. package/build/ba/connecting/types.js +2 -0
  31. package/build/ba/connecting/types.js.map +1 -0
  32. package/build/ba/connecting.d.ts +4 -0
  33. package/build/ba/connecting.d.ts.map +1 -0
  34. package/build/ba/connecting.js +47 -0
  35. package/build/ba/connecting.js.map +1 -0
  36. package/build/ba/helpers.d.ts +4 -39
  37. package/build/ba/helpers.d.ts.map +1 -1
  38. package/build/ba/helpers.js +5 -79
  39. package/build/ba/helpers.js.map +1 -1
  40. package/build/ba/index.d.ts +2 -0
  41. package/build/ba/index.d.ts.map +1 -1
  42. package/build/ba/index.js +1 -0
  43. package/build/ba/index.js.map +1 -1
  44. package/build/blueprint/types.d.ts +1 -2
  45. package/build/blueprint/types.d.ts.map +1 -1
  46. package/build/connect/branding/types.d.ts +28 -0
  47. package/build/connect/branding/types.d.ts.map +1 -0
  48. package/build/connect/branding/types.js +2 -0
  49. package/build/connect/branding/types.js.map +1 -0
  50. package/build/connect/consts.d.ts +2 -0
  51. package/build/connect/consts.d.ts.map +1 -1
  52. package/build/connect/consts.js +2 -0
  53. package/build/connect/consts.js.map +1 -1
  54. package/build/connect/conversion/types.d.ts +93 -0
  55. package/build/connect/conversion/types.d.ts.map +1 -0
  56. package/build/connect/conversion/types.js +2 -0
  57. package/build/connect/conversion/types.js.map +1 -0
  58. package/build/connect/entrypoints/types.d.ts +30 -0
  59. package/build/connect/entrypoints/types.d.ts.map +1 -0
  60. package/build/connect/entrypoints/types.js +2 -0
  61. package/build/connect/entrypoints/types.js.map +1 -0
  62. package/build/connect/entrypoints.d.ts +17 -11
  63. package/build/connect/entrypoints.d.ts.map +1 -1
  64. package/build/connect/entrypoints.js.map +1 -1
  65. package/build/connect/errors/types.d.ts +20 -0
  66. package/build/connect/errors/types.d.ts.map +1 -0
  67. package/build/connect/errors/types.js +2 -0
  68. package/build/connect/errors/types.js.map +1 -0
  69. package/build/connect/errors.d.ts +1 -1
  70. package/build/connect/errors.d.ts.map +1 -1
  71. package/build/connect/index.d.ts +13 -3
  72. package/build/connect/index.d.ts.map +1 -1
  73. package/build/connect/index.js +1 -1
  74. package/build/connect/index.js.map +1 -1
  75. package/build/connect/kit/types.d.ts +52 -0
  76. package/build/connect/kit/types.d.ts.map +1 -0
  77. package/build/connect/kit/types.js +2 -0
  78. package/build/connect/{types.js.map → kit/types.js.map} +1 -1
  79. package/build/connect/model-tier/types.d.ts +16 -0
  80. package/build/connect/model-tier/types.d.ts.map +1 -0
  81. package/build/connect/model-tier/types.js +2 -0
  82. package/build/connect/model-tier/types.js.map +1 -0
  83. package/build/connect/model-tier.d.ts +4 -0
  84. package/build/connect/model-tier.d.ts.map +1 -0
  85. package/build/connect/model-tier.js +21 -0
  86. package/build/connect/model-tier.js.map +1 -0
  87. package/build/connect/{ops.d.ts → ops/types.d.ts} +13 -4
  88. package/build/connect/ops/types.d.ts.map +1 -0
  89. package/build/connect/ops/types.js +2 -0
  90. package/build/connect/ops/types.js.map +1 -0
  91. package/build/connect/pipeline/types.d.ts +39 -0
  92. package/build/connect/pipeline/types.d.ts.map +1 -0
  93. package/build/connect/pipeline/types.js +2 -0
  94. package/build/connect/pipeline/types.js.map +1 -0
  95. package/build/connect/project/types.d.ts +127 -0
  96. package/build/connect/project/types.d.ts.map +1 -0
  97. package/build/connect/project/types.js +2 -0
  98. package/build/connect/project/types.js.map +1 -0
  99. package/build/connect/references/types.d.ts +157 -0
  100. package/build/connect/references/types.d.ts.map +1 -0
  101. package/build/connect/references/types.js +2 -0
  102. package/build/connect/references/types.js.map +1 -0
  103. package/build/connect/references/types.local.d.ts +5 -0
  104. package/build/connect/references/types.local.d.ts.map +1 -0
  105. package/build/connect/references/types.local.js.map +1 -0
  106. package/build/connect/references.d.ts +1 -1
  107. package/build/connect/references.d.ts.map +1 -1
  108. package/build/connect/references.js.map +1 -1
  109. package/build/connect/schemas.d.ts +8 -5
  110. package/build/connect/schemas.d.ts.map +1 -1
  111. package/build/connect/schemas.js +1 -3
  112. package/build/connect/schemas.js.map +1 -1
  113. package/build/connect/session/types.d.ts +73 -0
  114. package/build/connect/session/types.d.ts.map +1 -0
  115. package/build/connect/session/types.js +2 -0
  116. package/build/connect/session/types.js.map +1 -0
  117. package/build/connect/settings/types.d.ts +48 -0
  118. package/build/connect/settings/types.d.ts.map +1 -0
  119. package/build/connect/settings/types.js +2 -0
  120. package/build/connect/settings/types.js.map +1 -0
  121. package/build/convert/analysis/types.d.ts +93 -0
  122. package/build/convert/analysis/types.d.ts.map +1 -0
  123. package/build/convert/analysis/types.js +2 -0
  124. package/build/convert/analysis/types.js.map +1 -0
  125. package/build/convert/{consts.local.d.ts → census/consts.local.d.ts} +1 -1
  126. package/build/convert/census/consts.local.d.ts.map +1 -0
  127. package/build/convert/{consts.local.js → census/consts.local.js} +1 -1
  128. package/build/convert/census/consts.local.js.map +1 -0
  129. package/build/convert/census/types.d.ts +176 -0
  130. package/build/convert/census/types.d.ts.map +1 -0
  131. package/build/convert/census/types.js +2 -0
  132. package/build/convert/census/types.js.map +1 -0
  133. package/build/convert/census.d.ts +4 -0
  134. package/build/convert/census.d.ts.map +1 -0
  135. package/build/convert/census.js +83 -0
  136. package/build/convert/census.js.map +1 -0
  137. package/build/convert/consts.d.ts +4 -0
  138. package/build/convert/consts.d.ts.map +1 -1
  139. package/build/convert/consts.js +4 -0
  140. package/build/convert/consts.js.map +1 -1
  141. package/build/convert/detection/types.d.ts +67 -0
  142. package/build/convert/detection/types.d.ts.map +1 -0
  143. package/build/convert/detection/types.js +2 -0
  144. package/build/convert/detection/types.js.map +1 -0
  145. package/build/convert/docs/types.d.ts +129 -0
  146. package/build/convert/docs/types.d.ts.map +1 -0
  147. package/build/convert/docs/types.js +2 -0
  148. package/build/convert/docs/types.js.map +1 -0
  149. package/build/convert/docs.d.ts +4 -0
  150. package/build/convert/docs.d.ts.map +1 -0
  151. package/build/convert/docs.js +9 -0
  152. package/build/convert/docs.js.map +1 -0
  153. package/build/convert/estimate/types.d.ts +77 -0
  154. package/build/convert/estimate/types.d.ts.map +1 -0
  155. package/build/convert/estimate/types.js +2 -0
  156. package/build/convert/estimate/types.js.map +1 -0
  157. package/build/convert/estimate.d.ts +11 -0
  158. package/build/convert/estimate.d.ts.map +1 -0
  159. package/build/convert/estimate.js +18 -0
  160. package/build/convert/estimate.js.map +1 -0
  161. package/build/convert/helpers.d.ts +14 -78
  162. package/build/convert/helpers.d.ts.map +1 -1
  163. package/build/convert/helpers.js +27 -199
  164. package/build/convert/helpers.js.map +1 -1
  165. package/build/convert/index.d.ts +14 -0
  166. package/build/convert/index.d.ts.map +1 -1
  167. package/build/convert/index.js +5 -0
  168. package/build/convert/index.js.map +1 -1
  169. package/build/convert/origin/types.d.ts +41 -0
  170. package/build/convert/origin/types.d.ts.map +1 -0
  171. package/build/convert/origin/types.js +2 -0
  172. package/build/convert/origin/types.js.map +1 -0
  173. package/build/convert/origin.d.ts +4 -0
  174. package/build/convert/origin.d.ts.map +1 -0
  175. package/build/convert/origin.js +25 -0
  176. package/build/convert/origin.js.map +1 -0
  177. package/build/convert/record/types.d.ts +98 -0
  178. package/build/convert/record/types.d.ts.map +1 -0
  179. package/build/convert/record/types.js +2 -0
  180. package/build/convert/record/types.js.map +1 -0
  181. package/build/convert/schemas.d.ts +7 -6
  182. package/build/convert/schemas.d.ts.map +1 -1
  183. package/build/convert/schemas.js +1 -5
  184. package/build/convert/schemas.js.map +1 -1
  185. package/build/convert/stage/types.d.ts +27 -0
  186. package/build/convert/stage/types.d.ts.map +1 -0
  187. package/build/convert/stage/types.js +2 -0
  188. package/build/convert/stage/types.js.map +1 -0
  189. package/build/convert/stage.d.ts +4 -0
  190. package/build/convert/stage.d.ts.map +1 -0
  191. package/build/convert/stage.js +25 -0
  192. package/build/convert/stage.js.map +1 -0
  193. package/build/convert/taxonomy/types.d.ts +71 -0
  194. package/build/convert/taxonomy/types.d.ts.map +1 -0
  195. package/build/convert/taxonomy/types.js +2 -0
  196. package/build/convert/taxonomy/types.js.map +1 -0
  197. package/build/convert/types.d.ts +1 -657
  198. package/build/convert/types.d.ts.map +1 -1
  199. package/build/convert/utils.d.ts +2 -1
  200. package/build/convert/utils.d.ts.map +1 -1
  201. package/build/convert/utils.js +5 -4
  202. package/build/convert/utils.js.map +1 -1
  203. package/build/design/helpers.d.ts +9 -49
  204. package/build/design/helpers.d.ts.map +1 -1
  205. package/build/design/helpers.js +17 -224
  206. package/build/design/helpers.js.map +1 -1
  207. package/build/design/index.d.ts +3 -0
  208. package/build/design/index.d.ts.map +1 -1
  209. package/build/design/index.js +1 -0
  210. package/build/design/index.js.map +1 -1
  211. package/build/design/runtime/types.d.ts +16 -0
  212. package/build/design/runtime/types.d.ts.map +1 -0
  213. package/build/design/runtime/types.js +2 -0
  214. package/build/design/runtime/types.js.map +1 -0
  215. package/build/design/runtime.d.ts +6 -2
  216. package/build/design/runtime.d.ts.map +1 -1
  217. package/build/design/runtime.js +13 -5
  218. package/build/design/runtime.js.map +1 -1
  219. package/build/design/story/types.d.ts +67 -0
  220. package/build/design/story/types.d.ts.map +1 -0
  221. package/build/design/story/types.js +2 -0
  222. package/build/design/story/types.js.map +1 -0
  223. package/build/design/story.d.ts +4 -0
  224. package/build/design/story.d.ts.map +1 -0
  225. package/build/design/story.js +184 -0
  226. package/build/design/story.js.map +1 -0
  227. package/build/dev/types.local.d.ts +2 -1
  228. package/build/dev/types.local.d.ts.map +1 -1
  229. package/build/integrity/index.d.ts +4 -0
  230. package/build/integrity/index.d.ts.map +1 -1
  231. package/build/integrity/index.js +2 -0
  232. package/build/integrity/index.js.map +1 -1
  233. package/build/integrity/layout/consts.d.ts +59 -0
  234. package/build/integrity/layout/consts.d.ts.map +1 -0
  235. package/build/integrity/layout/consts.js +66 -0
  236. package/build/integrity/layout/consts.js.map +1 -0
  237. package/build/integrity/layout/consts.local.d.ts +18 -0
  238. package/build/integrity/layout/consts.local.d.ts.map +1 -0
  239. package/build/integrity/layout/consts.local.js +176 -0
  240. package/build/integrity/layout/consts.local.js.map +1 -0
  241. package/build/integrity/layout/types.d.ts +35 -0
  242. package/build/integrity/layout/types.d.ts.map +1 -0
  243. package/build/integrity/layout/types.js +2 -0
  244. package/build/integrity/layout/types.js.map +1 -0
  245. package/build/integrity/layout.d.ts +4 -0
  246. package/build/integrity/layout.d.ts.map +1 -0
  247. package/build/integrity/layout.js +25 -0
  248. package/build/integrity/layout.js.map +1 -0
  249. package/build/integrity/types.d.ts +3 -1
  250. package/build/integrity/types.d.ts.map +1 -1
  251. package/build/integrity/utils.d.ts +6 -81
  252. package/build/integrity/utils.d.ts.map +1 -1
  253. package/build/integrity/utils.js +11 -279
  254. package/build/integrity/utils.js.map +1 -1
  255. package/build/integrity/verify/types.d.ts +26 -0
  256. package/build/integrity/verify/types.d.ts.map +1 -0
  257. package/build/integrity/verify/types.js +2 -0
  258. package/build/integrity/verify/types.js.map +1 -0
  259. package/build/integrity/verify.d.ts +5 -19
  260. package/build/integrity/verify.d.ts.map +1 -1
  261. package/build/integrity/verify.js +164 -175
  262. package/build/integrity/verify.js.map +1 -1
  263. package/build/intent/consts.d.ts +16 -0
  264. package/build/intent/consts.d.ts.map +1 -1
  265. package/build/intent/consts.js +63 -0
  266. package/build/intent/consts.js.map +1 -1
  267. package/build/intent/entrypoints.d.ts +2 -11
  268. package/build/intent/entrypoints.d.ts.map +1 -1
  269. package/build/intent/entrypoints.js.map +1 -1
  270. package/build/intent/index.d.ts +0 -1
  271. package/build/intent/index.d.ts.map +1 -1
  272. package/build/intent/index.js +0 -1
  273. package/build/intent/index.js.map +1 -1
  274. package/build/intent/types.d.ts +13 -2
  275. package/build/intent/types.d.ts.map +1 -1
  276. package/build/moderation/index.d.ts +2 -0
  277. package/build/moderation/index.d.ts.map +1 -1
  278. package/build/moderation/index.js +1 -0
  279. package/build/moderation/index.js.map +1 -1
  280. package/build/moderation/utils.d.ts +3 -15
  281. package/build/moderation/utils.d.ts.map +1 -1
  282. package/build/moderation/utils.js +5 -30
  283. package/build/moderation/utils.js.map +1 -1
  284. package/build/moderation/verdict/types.d.ts +24 -0
  285. package/build/moderation/verdict/types.d.ts.map +1 -0
  286. package/build/moderation/verdict/types.js +2 -0
  287. package/build/moderation/verdict/types.js.map +1 -0
  288. package/build/moderation/verdict.d.ts +4 -0
  289. package/build/moderation/verdict.d.ts.map +1 -0
  290. package/build/moderation/verdict.js +21 -0
  291. package/build/moderation/verdict.js.map +1 -0
  292. package/build/planning/card/types.d.ts +42 -0
  293. package/build/planning/card/types.d.ts.map +1 -0
  294. package/build/planning/card/types.js +2 -0
  295. package/build/planning/card/types.js.map +1 -0
  296. package/build/planning/card.d.ts +4 -0
  297. package/build/planning/card.d.ts.map +1 -0
  298. package/build/planning/card.js +51 -0
  299. package/build/planning/card.js.map +1 -0
  300. package/build/planning/helpers.d.ts +11 -37
  301. package/build/planning/helpers.d.ts.map +1 -1
  302. package/build/planning/helpers.js +24 -103
  303. package/build/planning/helpers.js.map +1 -1
  304. package/build/planning/index.d.ts +5 -0
  305. package/build/planning/index.d.ts.map +1 -1
  306. package/build/planning/index.js +2 -0
  307. package/build/planning/index.js.map +1 -1
  308. package/build/planning/landing/types.d.ts +16 -0
  309. package/build/planning/landing/types.d.ts.map +1 -0
  310. package/build/planning/landing/types.js +2 -0
  311. package/build/planning/landing/types.js.map +1 -0
  312. package/build/planning/landing.d.ts +5 -10
  313. package/build/planning/landing.d.ts.map +1 -1
  314. package/build/planning/landing.js +20 -22
  315. package/build/planning/landing.js.map +1 -1
  316. package/build/planning/schemas.d.ts +1 -5
  317. package/build/planning/schemas.d.ts.map +1 -1
  318. package/build/planning/schemas.js +3 -3
  319. package/build/planning/schemas.js.map +1 -1
  320. package/build/planning/spec/types.d.ts +22 -0
  321. package/build/planning/spec/types.d.ts.map +1 -0
  322. package/build/planning/spec/types.js +2 -0
  323. package/build/planning/spec/types.js.map +1 -0
  324. package/build/planning/spec.d.ts +4 -0
  325. package/build/planning/spec.d.ts.map +1 -0
  326. package/build/planning/spec.js +30 -0
  327. package/build/planning/spec.js.map +1 -0
  328. package/build/planning/types.d.ts +4 -3
  329. package/build/planning/types.d.ts.map +1 -1
  330. package/build/scaffold/consts.d.ts +40 -1
  331. package/build/scaffold/consts.d.ts.map +1 -1
  332. package/build/scaffold/consts.js +52 -0
  333. package/build/scaffold/consts.js.map +1 -1
  334. package/build/scaffold/helpers.d.ts +4 -16
  335. package/build/scaffold/helpers.d.ts.map +1 -1
  336. package/build/scaffold/helpers.js +9 -64
  337. package/build/scaffold/helpers.js.map +1 -1
  338. package/build/scaffold/index.d.ts +4 -0
  339. package/build/scaffold/index.d.ts.map +1 -1
  340. package/build/scaffold/index.js +2 -0
  341. package/build/scaffold/index.js.map +1 -1
  342. package/build/scaffold/landing/types.d.ts +48 -0
  343. package/build/scaffold/landing/types.d.ts.map +1 -0
  344. package/build/scaffold/landing/types.js +2 -0
  345. package/build/scaffold/landing/types.js.map +1 -0
  346. package/build/scaffold/landing.d.ts +4 -0
  347. package/build/scaffold/landing.d.ts.map +1 -0
  348. package/build/scaffold/landing.js +95 -0
  349. package/build/scaffold/landing.js.map +1 -0
  350. package/build/scaffold/schemas.d.ts +3 -2
  351. package/build/scaffold/schemas.d.ts.map +1 -1
  352. package/build/scaffold/schemas.js +177 -7
  353. package/build/scaffold/schemas.js.map +1 -1
  354. package/build/scaffold/share/types.d.ts +35 -0
  355. package/build/scaffold/share/types.d.ts.map +1 -0
  356. package/build/scaffold/share/types.js +2 -0
  357. package/build/scaffold/share/types.js.map +1 -0
  358. package/build/scaffold/share.d.ts +4 -0
  359. package/build/scaffold/share.d.ts.map +1 -0
  360. package/build/scaffold/share.js +42 -0
  361. package/build/scaffold/share.js.map +1 -0
  362. package/build/scaffold/types.d.ts +112 -2
  363. package/build/scaffold/types.d.ts.map +1 -1
  364. package/build/skills/consts.d.ts +42 -0
  365. package/build/skills/consts.d.ts.map +1 -1
  366. package/build/skills/consts.js +43 -0
  367. package/build/skills/consts.js.map +1 -1
  368. package/build/skills/index.d.ts +0 -1
  369. package/build/skills/index.d.ts.map +1 -1
  370. package/build/skills/index.js +0 -1
  371. package/build/skills/index.js.map +1 -1
  372. package/build/slot/command/types.d.ts +21 -0
  373. package/build/slot/command/types.d.ts.map +1 -0
  374. package/build/slot/command/types.js +2 -0
  375. package/build/slot/command/types.js.map +1 -0
  376. package/build/slot/command.d.ts +4 -0
  377. package/build/slot/command.d.ts.map +1 -0
  378. package/build/slot/command.js +31 -0
  379. package/build/slot/command.js.map +1 -0
  380. package/build/slot/helpers.d.ts +2 -16
  381. package/build/slot/helpers.d.ts.map +1 -1
  382. package/build/slot/helpers.js +5 -26
  383. package/build/slot/helpers.js.map +1 -1
  384. package/build/slot/index.d.ts +5 -0
  385. package/build/slot/index.d.ts.map +1 -1
  386. package/build/slot/index.js +2 -0
  387. package/build/slot/index.js.map +1 -1
  388. package/build/slot/layout/types.d.ts +17 -0
  389. package/build/slot/layout/types.d.ts.map +1 -0
  390. package/build/slot/layout/types.js +2 -0
  391. package/build/slot/layout/types.js.map +1 -0
  392. package/build/slot/layout.d.ts +4 -9
  393. package/build/slot/layout.d.ts.map +1 -1
  394. package/build/slot/layout.js +13 -15
  395. package/build/slot/layout.js.map +1 -1
  396. package/build/slot/origin/types.d.ts +23 -0
  397. package/build/slot/origin/types.d.ts.map +1 -0
  398. package/build/slot/origin/types.js +2 -0
  399. package/build/slot/origin/types.js.map +1 -0
  400. package/build/slot/origin.d.ts +4 -0
  401. package/build/slot/origin.d.ts.map +1 -0
  402. package/build/slot/origin.js +15 -0
  403. package/build/slot/origin.js.map +1 -0
  404. package/build/slot/types.d.ts.map +1 -1
  405. package/build/slot/utils.d.ts +3 -15
  406. package/build/slot/utils.d.ts.map +1 -1
  407. package/build/slot/utils.js +5 -40
  408. package/build/slot/utils.js.map +1 -1
  409. package/build/topology/card/types.d.ts +21 -0
  410. package/build/topology/card/types.d.ts.map +1 -0
  411. package/build/topology/card/types.js +2 -0
  412. package/build/topology/card/types.js.map +1 -0
  413. package/build/topology/card.d.ts +6 -13
  414. package/build/topology/card.d.ts.map +1 -1
  415. package/build/topology/card.js +83 -86
  416. package/build/topology/card.js.map +1 -1
  417. package/build/topology/helpers.d.ts +7 -33
  418. package/build/topology/helpers.d.ts.map +1 -1
  419. package/build/topology/helpers.js +15 -111
  420. package/build/topology/helpers.js.map +1 -1
  421. package/build/topology/index.d.ts +3 -0
  422. package/build/topology/index.d.ts.map +1 -1
  423. package/build/topology/index.js +1 -0
  424. package/build/topology/index.js.map +1 -1
  425. package/build/topology/resolve/types.d.ts +47 -0
  426. package/build/topology/resolve/types.d.ts.map +1 -0
  427. package/build/topology/resolve/types.js +2 -0
  428. package/build/topology/resolve/types.js.map +1 -0
  429. package/build/topology/resolve.d.ts +4 -0
  430. package/build/topology/resolve.d.ts.map +1 -0
  431. package/build/topology/resolve.js +89 -0
  432. package/build/topology/resolve.js.map +1 -0
  433. package/package.json +11 -11
  434. package/src/agent/index.ts +1 -0
  435. package/src/agent/presentation/types.ts +21 -0
  436. package/src/agent/presentation.ts +199 -165
  437. package/src/agent/types.local.ts +3 -1
  438. package/src/areas/index.ts +1 -0
  439. package/src/areas/tenancy/types.ts +23 -0
  440. package/src/areas/tenancy.ts +26 -25
  441. package/src/ba/connecting/types.ts +45 -0
  442. package/src/ba/connecting.ts +64 -0
  443. package/src/ba/helpers.ts +8 -92
  444. package/src/ba/index.ts +2 -0
  445. package/src/blueprint/types.ts +2 -2
  446. package/src/connect/branding/types.ts +29 -0
  447. package/src/connect/consts.ts +3 -0
  448. package/src/connect/conversion/types.ts +96 -0
  449. package/src/connect/entrypoints/types.ts +25 -0
  450. package/src/connect/entrypoints.ts +13 -2
  451. package/src/connect/errors/types.ts +22 -0
  452. package/src/connect/errors.ts +1 -1
  453. package/src/connect/index.ts +13 -3
  454. package/src/connect/kit/types.ts +56 -0
  455. package/src/connect/model-tier/types.ts +16 -0
  456. package/src/connect/model-tier.ts +22 -0
  457. package/src/connect/{ops.ts → ops/types.ts} +13 -3
  458. package/src/connect/pipeline/types.ts +41 -0
  459. package/src/connect/project/types.ts +127 -0
  460. package/src/connect/references/types.local.ts +5 -0
  461. package/src/connect/references/types.ts +73 -0
  462. package/src/connect/references.ts +13 -2
  463. package/src/connect/schemas.ts +9 -13
  464. package/src/connect/session/types.ts +81 -0
  465. package/src/connect/settings/types.ts +52 -0
  466. package/src/convert/analysis/types.ts +89 -0
  467. package/src/convert/{consts.local.ts → census/consts.local.ts} +1 -1
  468. package/src/convert/census/types.ts +181 -0
  469. package/src/convert/census.ts +95 -0
  470. package/src/convert/consts.ts +5 -0
  471. package/src/convert/detection/types.ts +74 -0
  472. package/src/convert/docs/types.ts +151 -0
  473. package/src/convert/docs.ts +15 -0
  474. package/src/convert/estimate/types.ts +75 -0
  475. package/src/convert/estimate.ts +19 -0
  476. package/src/convert/helpers.ts +29 -210
  477. package/src/convert/index.ts +14 -0
  478. package/src/convert/origin/types.ts +43 -0
  479. package/src/convert/origin.ts +33 -0
  480. package/src/convert/record/types.ts +105 -0
  481. package/src/convert/schemas.ts +13 -12
  482. package/src/convert/stage/types.ts +27 -0
  483. package/src/convert/stage.ts +31 -0
  484. package/src/convert/taxonomy/types.ts +74 -0
  485. package/src/convert/types.ts +5 -709
  486. package/src/convert/utils.ts +5 -6
  487. package/src/design/helpers.ts +20 -245
  488. package/src/design/index.ts +3 -0
  489. package/src/design/runtime/types.ts +14 -0
  490. package/src/design/runtime.ts +22 -7
  491. package/src/design/story/types.ts +67 -0
  492. package/src/design/story.ts +221 -0
  493. package/src/dev/types.local.ts +1 -1
  494. package/src/integrity/index.ts +4 -0
  495. package/src/integrity/layout/consts.local.ts +188 -0
  496. package/src/integrity/layout/consts.ts +79 -0
  497. package/src/integrity/layout/types.ts +35 -0
  498. package/src/integrity/layout.ts +39 -0
  499. package/src/integrity/types.ts +3 -1
  500. package/src/integrity/utils.ts +14 -313
  501. package/src/integrity/verify/types.ts +26 -0
  502. package/src/integrity/verify.ts +177 -181
  503. package/src/intent/consts.ts +67 -0
  504. package/src/intent/entrypoints.ts +2 -2
  505. package/src/intent/index.ts +0 -1
  506. package/src/intent/types.ts +9 -2
  507. package/src/moderation/index.ts +2 -0
  508. package/src/moderation/utils.ts +7 -30
  509. package/src/moderation/verdict/types.ts +22 -0
  510. package/src/moderation/verdict.ts +28 -0
  511. package/src/planning/card/types.ts +44 -0
  512. package/src/planning/card.ts +77 -0
  513. package/src/planning/helpers.ts +28 -116
  514. package/src/planning/index.ts +5 -0
  515. package/src/planning/landing/types.ts +15 -0
  516. package/src/planning/landing.ts +27 -24
  517. package/src/planning/schemas.ts +3 -3
  518. package/src/planning/spec/types.ts +22 -0
  519. package/src/planning/spec.ts +41 -0
  520. package/src/planning/types.ts +4 -4
  521. package/src/scaffold/consts.ts +65 -1
  522. package/src/scaffold/helpers.ts +14 -77
  523. package/src/scaffold/index.ts +4 -0
  524. package/src/scaffold/landing/types.ts +48 -0
  525. package/src/scaffold/landing.ts +120 -0
  526. package/src/scaffold/schemas.ts +183 -7
  527. package/src/scaffold/share/types.ts +35 -0
  528. package/src/scaffold/share.ts +60 -0
  529. package/src/scaffold/types.ts +120 -1
  530. package/src/skills/consts.ts +46 -0
  531. package/src/skills/index.ts +0 -1
  532. package/src/slot/command/types.ts +21 -0
  533. package/src/slot/command.ts +38 -0
  534. package/src/slot/helpers.ts +5 -25
  535. package/src/slot/index.ts +5 -0
  536. package/src/slot/layout/types.ts +17 -0
  537. package/src/slot/layout.ts +19 -16
  538. package/src/slot/origin/types.ts +23 -0
  539. package/src/slot/origin.ts +20 -0
  540. package/src/slot/types.ts +1 -0
  541. package/src/slot/utils.ts +8 -43
  542. package/src/topology/card/types.ts +21 -0
  543. package/src/topology/card.ts +84 -82
  544. package/src/topology/helpers.ts +20 -125
  545. package/src/topology/index.ts +3 -0
  546. package/src/topology/resolve/types.ts +47 -0
  547. package/src/topology/resolve.ts +118 -0
  548. package/tests/blueprint.spec.ts +1 -2
  549. package/tests/connect-errors.spec.ts +1 -1
  550. package/tests/convert.spec.ts +50 -50
  551. package/tests/design.spec.ts +13 -16
  552. package/tests/planning.spec.ts +57 -59
  553. package/tests/presentation.spec.ts +20 -20
  554. package/tests/scaffold.spec.ts +286 -6
  555. package/tests/tenancy.spec.ts +21 -21
  556. package/build/connect/ops.d.ts.map +0 -1
  557. package/build/connect/ops.js +0 -2
  558. package/build/connect/ops.js.map +0 -1
  559. package/build/connect/types.d.ts +0 -650
  560. package/build/connect/types.d.ts.map +0 -1
  561. package/build/connect/types.local.d.ts +0 -4
  562. package/build/connect/types.local.d.ts.map +0 -1
  563. package/build/connect/types.local.js.map +0 -1
  564. package/build/connect/utils.d.ts +0 -12
  565. package/build/connect/utils.d.ts.map +0 -1
  566. package/build/connect/utils.js +0 -25
  567. package/build/connect/utils.js.map +0 -1
  568. package/build/convert/consts.local.d.ts.map +0 -1
  569. package/build/convert/consts.local.js.map +0 -1
  570. package/build/intent/consts.local.d.ts +0 -4
  571. package/build/intent/consts.local.d.ts.map +0 -1
  572. package/build/intent/consts.local.js +0 -3
  573. package/build/intent/consts.local.js.map +0 -1
  574. package/build/intent/flow.d.ts +0 -17
  575. package/build/intent/flow.d.ts.map +0 -1
  576. package/build/intent/flow.js +0 -65
  577. package/build/intent/flow.js.map +0 -1
  578. package/build/skills/roles.d.ts +0 -43
  579. package/build/skills/roles.d.ts.map +0 -1
  580. package/build/skills/roles.js +0 -44
  581. package/build/skills/roles.js.map +0 -1
  582. package/src/connect/types.local.ts +0 -5
  583. package/src/connect/types.ts +0 -589
  584. package/src/connect/utils.ts +0 -23
  585. package/src/intent/consts.local.ts +0 -3
  586. package/src/intent/flow.ts +0 -66
  587. package/src/skills/roles.ts +0 -46
  588. /package/build/{connect → agent/presentation}/types.js +0 -0
  589. /package/build/connect/{types.local.js → references/types.local.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,mBAAmB,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,oBAAoB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export * from './consts.js';
2
2
  export * from './schemas.js';
3
+ export * from './verdict.js';
3
4
  export * from './utils.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA"}
@@ -1,20 +1,8 @@
1
- import { ModerationCategory } from './consts.js';
1
+ import type { ModerationCategory } from './consts.js';
2
2
  import type { ModerationAction, ModerationPolicy, ModerationVerdict } from './types.js';
3
- /**
4
- * Narrow whatever the model put in `category` to a real one, or to nothing.
5
- *
6
- * The wire field is a free string on purpose — see {@link ModerationVerdictSchema}. A model
7
- * that is allowing has nothing to categorise and still fills the field, so anything
8
- * unrecognized is treated as absent rather than as a failure.
9
- */
3
+ /** @deprecated compat:factory-refactor — use `moderationVerdictHelper.normalizeCategory(…)` */
10
4
  export declare const normalizeCategory: (category?: string) => ModerationCategory | undefined;
11
- /**
12
- * What to do about a verdict.
13
- *
14
- * Pure, because this is the part with the operational levers on it and the part most likely
15
- * to be wrong in a hurry: `enforce` turns the whole gate into an observer without a deploy,
16
- * and `bypassEntities` releases one entity when a real customer is wrongly refused.
17
- */
5
+ /** @deprecated compat:factory-refactor — use `moderationVerdictHelper.decideModeration(…)` */
18
6
  export declare const decideModeration: (verdict: ModerationVerdict, policy?: ModerationPolicy & {
19
7
  entityId?: string;
20
8
  }) => ModerationAction;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/moderation/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEvF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,cAAe,MAAM,KAAG,kBAAkB,GAAG,SAM1E,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,YAClB,iBAAiB,WAAU,gBAAgB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3E,gBAOF,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/moderation/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGvF,+FAA+F;AAC/F,eAAO,MAAM,iBAAiB,cAAe,MAAM,KAAG,kBAAkB,GAAG,SACtB,CAAA;AAErD,8FAA8F;AAC9F,eAAO,MAAM,gBAAgB,YAClB,iBAAiB,WAAU,gBAAgB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3E,gBAA6E,CAAA"}
@@ -1,31 +1,6 @@
1
- import { ModerationCategory } from './consts.js';
2
- /**
3
- * Narrow whatever the model put in `category` to a real one, or to nothing.
4
- *
5
- * The wire field is a free string on purpose — see {@link ModerationVerdictSchema}. A model
6
- * that is allowing has nothing to categorise and still fills the field, so anything
7
- * unrecognized is treated as absent rather than as a failure.
8
- */
9
- export const normalizeCategory = (category) => {
10
- const values = Object.values(ModerationCategory);
11
- return category != null && values.includes(category)
12
- ? category
13
- : undefined;
14
- };
15
- /**
16
- * What to do about a verdict.
17
- *
18
- * Pure, because this is the part with the operational levers on it and the part most likely
19
- * to be wrong in a hurry: `enforce` turns the whole gate into an observer without a deploy,
20
- * and `bypassEntities` releases one entity when a real customer is wrongly refused.
21
- */
22
- export const decideModeration = (verdict, policy = {}) => {
23
- if (verdict.allowed)
24
- return 'allow';
25
- if (policy.entityId != null && policy.bypassEntities?.includes(policy.entityId) === true)
26
- return 'allow';
27
- // Defaults to ON: a gate that has to be switched on is a gate that is off in every
28
- // environment nobody remembered to configure.
29
- return policy.enforce !== false ? 'refuse' : 'shadow';
30
- };
1
+ import { moderationVerdictHelper } from './verdict.js';
2
+ /** @deprecated compat:factory-refactor — use `moderationVerdictHelper.normalizeCategory(…)` */
3
+ export const normalizeCategory = (category) => moderationVerdictHelper.normalizeCategory(category);
4
+ /** @deprecated compat:factory-refactor — use `moderationVerdictHelper.decideModeration(…)` */
5
+ export const decideModeration = (verdict, policy = {}) => moderationVerdictHelper.decideModeration(verdict, policy);
31
6
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/moderation/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGhD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAiB,EAAkC,EAAE;IACrF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAa,CAAA;IAE5D,OAAO,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAClD,CAAC,CAAC,QAA8B;QAChC,CAAC,CAAC,SAAS,CAAA;AACf,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA0B,EAAE,MAAM,GAA6C,EAAE,EAC/D,EAAE;IACpB,IAAI,OAAO,CAAC,OAAO;QAAE,OAAO,OAAO,CAAA;IACnC,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI;QAAE,OAAO,OAAO,CAAA;IAExG,mFAAmF;IACnF,8CAA8C;IAC9C,OAAO,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;AACvD,CAAC,CAAA"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/moderation/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAEtD,+FAA+F;AAC/F,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAiB,EAAkC,EAAE,CACrF,uBAAuB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;AAErD,8FAA8F;AAC9F,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA0B,EAAE,MAAM,GAA6C,EAAE,EAC/D,EAAE,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import type { ModerationCategory } from '../consts.js';
2
+ import type { ModerationAction, ModerationPolicy, ModerationVerdict } from '../types.js';
3
+ /** Reading a moderation verdict: its category, and what to do about it. */
4
+ export interface ModerationVerdictHelper {
5
+ /**
6
+ * Narrow whatever the model put in `category` to a real one, or to nothing.
7
+ *
8
+ * The wire field is a free string on purpose — see {@link ModerationVerdictSchema}. A model
9
+ * that is allowing has nothing to categorise and still fills the field, so anything
10
+ * unrecognized is treated as absent rather than as a failure.
11
+ */
12
+ normalizeCategory: (category?: string) => ModerationCategory | undefined;
13
+ /**
14
+ * What to do about a verdict.
15
+ *
16
+ * Pure, because this is the part with the operational levers on it and the part most likely
17
+ * to be wrong in a hurry: `enforce` turns the whole gate into an observer without a deploy,
18
+ * and `bypassEntities` releases one entity when a real customer is wrongly refused.
19
+ */
20
+ decideModeration: (verdict: ModerationVerdict, policy?: ModerationPolicy & {
21
+ entityId?: string;
22
+ }) => ModerationAction;
23
+ }
24
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/moderation/verdict/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAExF,2EAA2E;AAC3E,MAAM,WAAW,uBAAuB;IACtC;;;;;;OAMG;IACH,iBAAiB,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,kBAAkB,GAAG,SAAS,CAAA;IACxE;;;;;;OAMG;IACH,gBAAgB,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,gBAAgB,CAAA;CACtH"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/moderation/verdict/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { ModerationVerdictHelper } from './verdict/types.js';
2
+ export declare const createModerationVerdictHelper: () => ModerationVerdictHelper;
3
+ export declare const moderationVerdictHelper: ModerationVerdictHelper;
4
+ //# sourceMappingURL=verdict.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../src/moderation/verdict.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAEjE,eAAO,MAAM,6BAA6B,QAAO,uBAqBhD,CAAA;AAED,eAAO,MAAM,uBAAuB,yBAAkC,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { ModerationCategory } from './consts.js';
2
+ export const createModerationVerdictHelper = () => {
3
+ const normalizeCategory = (category) => {
4
+ const values = Object.values(ModerationCategory);
5
+ return category != null && values.includes(category)
6
+ ? category
7
+ : undefined;
8
+ };
9
+ const decideModeration = (verdict, policy = {}) => {
10
+ if (verdict.allowed)
11
+ return 'allow';
12
+ if (policy.entityId != null && policy.bypassEntities?.includes(policy.entityId) === true)
13
+ return 'allow';
14
+ // Defaults to ON: a gate that has to be switched on is a gate that is off in every
15
+ // environment nobody remembered to configure.
16
+ return policy.enforce !== false ? 'refuse' : 'shadow';
17
+ };
18
+ return { normalizeCategory, decideModeration };
19
+ };
20
+ export const moderationVerdictHelper = createModerationVerdictHelper();
21
+ //# sourceMappingURL=verdict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/moderation/verdict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAIhD,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAA4B,EAAE;IACzE,MAAM,iBAAiB,GAAG,CAAC,QAAiB,EAAkC,EAAE;QAC9E,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAa,CAAA;QAE5D,OAAO,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAClD,CAAC,CAAC,QAA8B;YAChC,CAAC,CAAC,SAAS,CAAA;IACf,CAAC,CAAA;IAED,MAAM,gBAAgB,GAAG,CACvB,OAA0B,EAAE,MAAM,GAA6C,EAAE,EAC/D,EAAE;QACpB,IAAI,OAAO,CAAC,OAAO;YAAE,OAAO,OAAO,CAAA;QACnC,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI;YAAE,OAAO,OAAO,CAAA;QAExG,mFAAmF;QACnF,8CAA8C;QAC9C,OAAO,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;IACvD,CAAC,CAAA;IAED,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;AAChD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,EAAE,CAAA"}
@@ -0,0 +1,42 @@
1
+ import type { Workcard } from '@owlmeans/planning';
2
+ import type { StoryDraft } from '../../areas/types.js';
3
+ import type { UserStory } from '../../ba/types.js';
4
+ import type { StoryDesign } from '../../design/types.js';
5
+ import type { StoryWriteInput } from '../../metadata/types.js';
6
+ import type { StoryWriteContent, ViableProjectCard, ViableProjectFields, ViableStoryCard, ViableStoryFields } from '../types.js';
7
+ /** Reading Viable's planning cards — a project, a user story — and what a write carries. */
8
+ export interface ViableCardHelper {
9
+ /** A `viable:project` card — kind AND type, since a foreign provider may share either alone. */
10
+ isViableProject: (card?: Workcard | null) => card is ViableProjectCard;
11
+ /** A `viable:user-story` card. */
12
+ isViableStory: (card?: Workcard | null) => card is ViableStoryCard;
13
+ /** Whether a write came from a person (`web`, `connect`) rather than the platform's own runs. */
14
+ isUserChannel: (channel?: string | null) => boolean;
15
+ projectFieldsOf: (card: Workcard) => ViableProjectFields;
16
+ /**
17
+ * A story card's fields, with the two required ones always answered.
18
+ *
19
+ * An absent area reads as `guest` — the area that guards nothing — and an absent primary flag as
20
+ * `false`, so a reader never branches on a card written by a store that dropped them.
21
+ */
22
+ storyFieldsOf: (card: Workcard) => ViableStoryFields;
23
+ /** The draft shape the analysis prompts and moderation take, from a card. */
24
+ storyDraftOf: (card: Workcard) => StoryDraft;
25
+ /**
26
+ * The aggregate the coders take, for a story CARD.
27
+ *
28
+ * The card wins on the narrative, the code, the area and the actor — a person may have changed any
29
+ * of them since the design was written. The design supplies what only it knows: the entities and
30
+ * the screens. Without a design the aggregate has no screens yet.
31
+ */
32
+ userStoryOf: (card: Workcard, design?: StoryDesign | null) => UserStory;
33
+ /**
34
+ * What the metadata store writes to `docs/stories/<code>.md`, from the card and a run's content.
35
+ *
36
+ * The CODE is the target's only story identifier — a card id never reaches a target file — so a
37
+ * story card without one is refused rather than filed under its id. The landing flag is carried
38
+ * only when it is set, so every other story's frontmatter keeps the shape it always had.
39
+ */
40
+ storyWriteInputOf: (card: Workcard, content: StoryWriteContent) => StoryWriteInput;
41
+ }
42
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/planning/card/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EACV,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAC9F,MAAM,aAAa,CAAA;AAEpB,4FAA4F;AAC5F,MAAM,WAAW,gBAAgB;IAC/B,gGAAgG;IAChG,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,IAAI,iBAAiB,CAAA;IACtE,kCAAkC;IAClC,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,IAAI,eAAe,CAAA;IAClE,iGAAiG;IACjG,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IACnD,eAAe,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,mBAAmB,CAAA;IACxD;;;;;OAKG;IACH,aAAa,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,iBAAiB,CAAA;IACpD,6EAA6E;IAC7E,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,UAAU,CAAA;IAC5C;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,KAAK,SAAS,CAAA;IACvE;;;;;;OAMG;IACH,iBAAiB,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,KAAK,eAAe,CAAA;CACnF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/planning/card/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { ViableCardHelper } from './card/types.js';
2
+ export declare const createViableCardHelper: () => ViableCardHelper;
3
+ export declare const viableCardHelper: ViableCardHelper;
4
+ //# sourceMappingURL=card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/planning/card.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvD,eAAO,MAAM,sBAAsB,QAAO,gBA2DzC,CAAA;AAED,eAAO,MAAM,gBAAgB,kBAA2B,CAAA"}
@@ -0,0 +1,51 @@
1
+ import { WorkcardKind } from '@owlmeans/planning';
2
+ import { ProjectArea } from '../areas/consts.js';
3
+ import { storyDesignHelper } from '../design/story.js';
4
+ import { VIABLE_PROJECT_TYPE, VIABLE_STORY_TYPE, VIABLE_USER_CHANNELS } from './consts.js';
5
+ import { ProjectStoryMissconfigured } from './errors.js';
6
+ export const createViableCardHelper = () => {
7
+ const isViableProject = (card) => card != null && card.kind === WorkcardKind.Project && card.type === VIABLE_PROJECT_TYPE;
8
+ const isViableStory = (card) => card != null && card.kind === WorkcardKind.Card && card.type === VIABLE_STORY_TYPE;
9
+ const isUserChannel = (channel) => channel != null && VIABLE_USER_CHANNELS.includes(channel);
10
+ const projectFieldsOf = (card) => (card.fields ?? {});
11
+ const storyFieldsOf = (card) => {
12
+ const fields = (card.fields ?? {});
13
+ return { ...fields, area: fields.area ?? ProjectArea.Guest, primary: fields.primary === true };
14
+ };
15
+ const storyDraftOf = (card) => ({ story: card.title, area: storyFieldsOf(card).area });
16
+ const userStoryOf = (card, design) => {
17
+ const fields = storyFieldsOf(card);
18
+ const base = design != null
19
+ ? storyDesignHelper.userStoryOfDesign(design)
20
+ : { story: card.title, area: fields.area, entity: null, entities: [], screens: [] };
21
+ const code = card.code ?? base.code;
22
+ return {
23
+ ...base,
24
+ story: card.title,
25
+ ...(code != null ? { code } : {}),
26
+ area: fields.area,
27
+ ...(fields.actor != null ? { actor: fields.actor } : {}),
28
+ };
29
+ };
30
+ const storyWriteInputOf = (card, content) => {
31
+ if (card.code == null || card.code === '') {
32
+ throw new ProjectStoryMissconfigured('no-code');
33
+ }
34
+ const { status, ...rest } = content;
35
+ const fields = storyFieldsOf(card);
36
+ return {
37
+ ...rest,
38
+ code: card.code,
39
+ narrative: card.title,
40
+ status: status ?? card.status,
41
+ primary: fields.primary,
42
+ ...(fields.landing === true ? { landing: true } : {}),
43
+ };
44
+ };
45
+ return {
46
+ isViableProject, isViableStory, isUserChannel, projectFieldsOf, storyFieldsOf, storyDraftOf, userStoryOf,
47
+ storyWriteInputOf,
48
+ };
49
+ };
50
+ export const viableCardHelper = createViableCardHelper();
51
+ //# sourceMappingURL=card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.js","sourceRoot":"","sources":["../../src/planning/card.ts"],"names":[],"mappings":"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"}
@@ -4,52 +4,26 @@ import type { AgentProject, UserStory } from '../ba/types.js';
4
4
  import type { StoryDesign } from '../design/types.js';
5
5
  import type { StoryWriteInput } from '../metadata/types.js';
6
6
  import type { StoryWriteContent, ViableProjectCard, ViableProjectFields, ViableStoryCard, ViableStoryFields } from './types.js';
7
- /** A `viable:project` card — kind AND type, since a foreign provider may share either alone. */
7
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isViableProject(…)` */
8
8
  export declare const isViableProject: (card?: Workcard | null) => card is ViableProjectCard;
9
- /** A `viable:user-story` card. */
9
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isViableStory(…)` */
10
10
  export declare const isViableStory: (card?: Workcard | null) => card is ViableStoryCard;
11
- /** Whether a write came from a person (`web`, `connect`) rather than the platform's own runs. */
11
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isUserChannel(…)` */
12
12
  export declare const isUserChannel: (channel?: string | null) => boolean;
13
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.projectFieldsOf(…)` */
13
14
  export declare const projectFieldsOf: (card: Workcard) => ViableProjectFields;
14
- /**
15
- * A story card's fields, with the two required ones always answered.
16
- *
17
- * An absent area reads as `guest` — the area that guards nothing — and an absent primary flag as
18
- * `false`, so a reader never branches on a card written by a store that dropped them.
19
- */
15
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyFieldsOf(…)` */
20
16
  export declare const storyFieldsOf: (card: Workcard) => ViableStoryFields;
21
- /** The draft shape the analysis prompts and moderation take, from a card. */
17
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyDraftOf(…)` */
22
18
  export declare const storyDraftOf: (card: Workcard) => StoryDraft;
23
- /**
24
- * The aggregate the coders take, for a story CARD.
25
- *
26
- * The card wins on the narrative, the code, the area and the actor — a person may have changed any
27
- * of them since the design was written. The design supplies what only it knows: the entities and
28
- * the screens. Without a design the aggregate has no screens yet.
29
- */
19
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.userStoryOf(…)` */
30
20
  export declare const userStoryOf: (card: Workcard, design?: StoryDesign | null) => UserStory;
31
- /**
32
- * The current document of one category among a card's specifications.
33
- *
34
- * The highest revision wins, then the most recently updated; a category nobody wrote answers
35
- * `null`.
36
- */
21
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.currentSpecOf(…)` */
37
22
  export declare const currentSpecOf: (specs: readonly Specification[], category: string) => Specification | null;
38
- /** The body of a category's current document, `''` when there is none. */
23
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.currentSpecBody(…)` */
39
24
  export declare const currentSpecBody: (specs: readonly Specification[], category: string) => string;
40
- /**
41
- * The brief a generator reads, assembled from the project card and its specifications.
42
- *
43
- * `name` is the card's title and `alias` its code; a brief part nobody wrote is `''`, which is
44
- * what every prompt already treats as "not stated".
45
- */
25
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.projectBriefOf(…)` */
46
26
  export declare const projectBriefOf: (project: Workcard, specs: readonly Specification[]) => AgentProject;
47
- /**
48
- * What the metadata store writes to `docs/stories/<code>.md`, from the card and a run's content.
49
- *
50
- * The CODE is the target's only story identifier — a card id never reaches a target file — so a
51
- * story card without one is refused rather than filed under its id. The landing flag is carried
52
- * only when it is set, so every other story's frontmatter keeps the shape it always had.
53
- */
27
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyWriteInputOf(…)` */
54
28
  export declare const storyWriteInputOf: (card: Workcard, content: StoryWriteContent) => StoryWriteInput;
55
29
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/planning/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,OAAO,KAAK,EACV,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAC9F,MAAM,YAAY,CAAA;AAEnB,gGAAgG;AAChG,eAAO,MAAM,eAAe,UAAW,QAAQ,GAAG,IAAI,KAAG,IAAI,IAAI,iBACwB,CAAA;AAEzF,kCAAkC;AAClC,eAAO,MAAM,aAAa,UAAW,QAAQ,GAAG,IAAI,KAAG,IAAI,IAAI,eACqB,CAAA;AAEpF,iGAAiG;AACjG,eAAO,MAAM,aAAa,aAAc,MAAM,GAAG,IAAI,KAAG,OACG,CAAA;AAE3D,eAAO,MAAM,eAAe,SAAU,QAAQ,KAAG,mBACL,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,aAAa,SAAU,QAAQ,KAAG,iBAI9C,CAAA;AAED,6EAA6E;AAC7E,eAAO,MAAM,YAAY,SAAU,QAAQ,KAAG,UACW,CAAA;AAEzD;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,SAAU,QAAQ,WAAW,WAAW,GAAG,IAAI,KAAG,SAczE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,UACjB,SAAS,aAAa,EAAE,YAAY,MAAM,KAChD,aAAa,GAAG,IASP,CAAA;AAEZ,0EAA0E;AAC1E,eAAO,MAAM,eAAe,UAAW,SAAS,aAAa,EAAE,YAAY,MAAM,KAAG,MACxC,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,cAAc,YAAa,QAAQ,SAAS,SAAS,aAAa,EAAE,KAAG,YAYnF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,SAAU,QAAQ,WAAW,iBAAiB,KAAG,eAe9E,CAAA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/planning/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAG3D,OAAO,KAAK,EACV,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAC9F,MAAM,YAAY,CAAA;AAEnB,sFAAsF;AACtF,eAAO,MAAM,eAAe,UAAW,QAAQ,GAAG,IAAI,KAAG,IAAI,IAAI,iBAA2D,CAAA;AAE5H,oFAAoF;AACpF,eAAO,MAAM,aAAa,UAAW,QAAQ,GAAG,IAAI,KAAG,IAAI,IAAI,eAAuD,CAAA;AAEtH,oFAAoF;AACpF,eAAO,MAAM,aAAa,aAAc,MAAM,GAAG,IAAI,KAAG,OAAkD,CAAA;AAE1G,sFAAsF;AACtF,eAAO,MAAM,eAAe,SAAU,QAAQ,KAAG,mBAA6D,CAAA;AAE9G,oFAAoF;AACpF,eAAO,MAAM,aAAa,SAAU,QAAQ,KAAG,iBAAyD,CAAA;AAExG,mFAAmF;AACnF,eAAO,MAAM,YAAY,SAAU,QAAQ,KAAG,UAAiD,CAAA;AAE/F,kFAAkF;AAClF,eAAO,MAAM,WAAW,SAAU,QAAQ,WAAW,WAAW,GAAG,IAAI,KAAG,SAC9B,CAAA;AAE5C,oFAAoF;AACpF,eAAO,MAAM,aAAa,UAAW,SAAS,aAAa,EAAE,YAAY,MAAM,KAAG,aAAa,GAAG,IACjD,CAAA;AAEjD,sFAAsF;AACtF,eAAO,MAAM,eAAe,UAAW,SAAS,aAAa,EAAE,YAAY,MAAM,KAAG,MACjC,CAAA;AAEnD,qFAAqF;AACrF,eAAO,MAAM,cAAc,YAAa,QAAQ,SAAS,SAAS,aAAa,EAAE,KAAG,YACnC,CAAA;AAEjD,wFAAwF;AACxF,eAAO,MAAM,iBAAiB,SAAU,QAAQ,WAAW,iBAAiB,KAAG,eAC5B,CAAA"}
@@ -1,104 +1,25 @@
1
- import { WorkcardKind } from '@owlmeans/planning';
2
- import { ProjectArea } from '../areas/consts.js';
3
- import { userStoryOfDesign } from '../design/helpers.js';
4
- import { VIABLE_PROJECT_TYPE, VIABLE_STORY_TYPE, VIABLE_USER_CHANNELS, ViableSpecCategory, } from './consts.js';
5
- import { ProjectStoryMissconfigured } from './errors.js';
6
- /** A `viable:project` card — kind AND type, since a foreign provider may share either alone. */
7
- export const isViableProject = (card) => card != null && card.kind === WorkcardKind.Project && card.type === VIABLE_PROJECT_TYPE;
8
- /** A `viable:user-story` card. */
9
- export const isViableStory = (card) => card != null && card.kind === WorkcardKind.Card && card.type === VIABLE_STORY_TYPE;
10
- /** Whether a write came from a person (`web`, `connect`) rather than the platform's own runs. */
11
- export const isUserChannel = (channel) => channel != null && VIABLE_USER_CHANNELS.includes(channel);
12
- export const projectFieldsOf = (card) => (card.fields ?? {});
13
- /**
14
- * A story card's fields, with the two required ones always answered.
15
- *
16
- * An absent area reads as `guest` — the area that guards nothing — and an absent primary flag as
17
- * `false`, so a reader never branches on a card written by a store that dropped them.
18
- */
19
- export const storyFieldsOf = (card) => {
20
- const fields = (card.fields ?? {});
21
- return { ...fields, area: fields.area ?? ProjectArea.Guest, primary: fields.primary === true };
22
- };
23
- /** The draft shape the analysis prompts and moderation take, from a card. */
24
- export const storyDraftOf = (card) => ({ story: card.title, area: storyFieldsOf(card).area });
25
- /**
26
- * The aggregate the coders take, for a story CARD.
27
- *
28
- * The card wins on the narrative, the code, the area and the actor — a person may have changed any
29
- * of them since the design was written. The design supplies what only it knows: the entities and
30
- * the screens. Without a design the aggregate has no screens yet.
31
- */
32
- export const userStoryOf = (card, design) => {
33
- const fields = storyFieldsOf(card);
34
- const base = design != null
35
- ? userStoryOfDesign(design)
36
- : { story: card.title, area: fields.area, entity: null, entities: [], screens: [] };
37
- const code = card.code ?? base.code;
38
- return {
39
- ...base,
40
- story: card.title,
41
- ...(code != null ? { code } : {}),
42
- area: fields.area,
43
- ...(fields.actor != null ? { actor: fields.actor } : {}),
44
- };
45
- };
46
- /**
47
- * The current document of one category among a card's specifications.
48
- *
49
- * The highest revision wins, then the most recently updated; a category nobody wrote answers
50
- * `null`.
51
- */
52
- export const currentSpecOf = (specs, category) => specs
53
- .filter(spec => spec.category === category)
54
- .reduce((best, spec) => {
55
- if (best == null)
56
- return spec;
57
- const byRevision = (spec.revision ?? 0) - (best.revision ?? 0);
58
- if (byRevision !== 0)
59
- return byRevision > 0 ? spec : best;
60
- return (spec.updatedAt ?? spec.createdAt) > (best.updatedAt ?? best.createdAt) ? spec : best;
61
- }, null);
62
- /** The body of a category's current document, `''` when there is none. */
63
- export const currentSpecBody = (specs, category) => currentSpecOf(specs, category)?.body ?? '';
64
- /**
65
- * The brief a generator reads, assembled from the project card and its specifications.
66
- *
67
- * `name` is the card's title and `alias` its code; a brief part nobody wrote is `''`, which is
68
- * what every prompt already treats as "not stated".
69
- */
70
- export const projectBriefOf = (project, specs) => {
71
- const { language } = projectFieldsOf(project);
72
- return {
73
- name: project.title,
74
- ...(project.code != null ? { alias: project.code } : {}),
75
- description: project.description ?? '',
76
- specification: currentSpecBody(specs, ViableSpecCategory.Specification),
77
- designSystem: currentSpecBody(specs, ViableSpecCategory.DesignSystem),
78
- vision: currentSpecBody(specs, ViableSpecCategory.Vision),
79
- ...(language != null ? { language } : {}),
80
- };
81
- };
82
- /**
83
- * What the metadata store writes to `docs/stories/<code>.md`, from the card and a run's content.
84
- *
85
- * The CODE is the target's only story identifier — a card id never reaches a target file — so a
86
- * story card without one is refused rather than filed under its id. The landing flag is carried
87
- * only when it is set, so every other story's frontmatter keeps the shape it always had.
88
- */
89
- export const storyWriteInputOf = (card, content) => {
90
- if (card.code == null || card.code === '') {
91
- throw new ProjectStoryMissconfigured('no-code');
92
- }
93
- const { status, ...rest } = content;
94
- const fields = storyFieldsOf(card);
95
- return {
96
- ...rest,
97
- code: card.code,
98
- narrative: card.title,
99
- status: status ?? card.status,
100
- primary: fields.primary,
101
- ...(fields.landing === true ? { landing: true } : {}),
102
- };
103
- };
1
+ import { viableCardHelper } from './card.js';
2
+ import { viableSpecHelper } from './spec.js';
3
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isViableProject(…)` */
4
+ export const isViableProject = (card) => viableCardHelper.isViableProject(card);
5
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isViableStory(…)` */
6
+ export const isViableStory = (card) => viableCardHelper.isViableStory(card);
7
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.isUserChannel(…)` */
8
+ export const isUserChannel = (channel) => viableCardHelper.isUserChannel(channel);
9
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.projectFieldsOf(…)` */
10
+ export const projectFieldsOf = (card) => viableCardHelper.projectFieldsOf(card);
11
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyFieldsOf(…)` */
12
+ export const storyFieldsOf = (card) => viableCardHelper.storyFieldsOf(card);
13
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyDraftOf(…)` */
14
+ export const storyDraftOf = (card) => viableCardHelper.storyDraftOf(card);
15
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.userStoryOf(…)` */
16
+ export const userStoryOf = (card, design) => viableCardHelper.userStoryOf(card, design);
17
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.currentSpecOf(…)` */
18
+ export const currentSpecOf = (specs, category) => viableSpecHelper.currentSpecOf(specs, category);
19
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.currentSpecBody(…)` */
20
+ export const currentSpecBody = (specs, category) => viableSpecHelper.currentSpecBody(specs, category);
21
+ /** @deprecated compat:factory-refactor — use `viableSpecHelper.projectBriefOf(…)` */
22
+ export const projectBriefOf = (project, specs) => viableSpecHelper.projectBriefOf(project, specs);
23
+ /** @deprecated compat:factory-refactor — use `viableCardHelper.storyWriteInputOf(…)` */
24
+ export const storyWriteInputOf = (card, content) => viableCardHelper.storyWriteInputOf(card, content);
104
25
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/planning/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,OAAO,EACL,mBAAmB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,GACjF,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAKxD,gGAAgG;AAChG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAsB,EAA6B,EAAE,CACnF,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAA;AAEzF,kCAAkC;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAsB,EAA2B,EAAE,CAC/E,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,CAAA;AAEpF,iGAAiG;AACjG,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAuB,EAAW,EAAE,CAChE,OAAO,IAAI,IAAI,IAAI,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;AAE3D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAc,EAAuB,EAAE,CACrE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAc,EAAqB,EAAE;IACjE,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAA+B,CAAA;IAEhE,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAA;AAChG,CAAC,CAAA;AAED,6EAA6E;AAC7E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAc,EAAc,EAAE,CACzD,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,MAA2B,EAAa,EAAE;IACpF,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,IAAI,GAAc,MAAM,IAAI,IAAI;QACpC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAC3B,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAyB,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAC1G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAA;IAEnC,OAAO;QACL,GAAG,IAAI;QACP,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,CAAA;AACH,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,KAA+B,EAAE,QAAgB,EAC3B,EAAE,CACxB,KAAK;KACF,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;KAC1C,MAAM,CAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;IAC3C,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IAC7B,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;IAC9D,IAAI,UAAU,KAAK,CAAC;QAAE,OAAO,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAEzD,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC9F,CAAC,EAAE,IAAI,CAAC,CAAA;AAEZ,0EAA0E;AAC1E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAA+B,EAAE,QAAgB,EAAU,EAAE,CAC3F,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAiB,EAAE,KAA+B,EAAgB,EAAE;IACjG,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IAE7C,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,KAAK;QACnB,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;QACtC,aAAa,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC;QACvE,YAAY,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,YAAY,CAAC;QACrE,MAAM,EAAE,eAAe,CAAC,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC;QACzD,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1C,CAAA;AACH,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAc,EAAE,OAA0B,EAAmB,EAAE;IAC/F,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,0BAA0B,CAAC,SAAS,CAAC,CAAA;IACjD,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;IACnC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAElC,OAAO;QACL,GAAG,IAAI;QACP,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,KAAK;QACrB,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM;QAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/planning/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAK5C,sFAAsF;AACtF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAsB,EAA6B,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AAE5H,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAsB,EAA2B,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;AAEtH,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAuB,EAAW,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;AAE1G,sFAAsF;AACtF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAc,EAAuB,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;AAE9G,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAc,EAAqB,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;AAExG,mFAAmF;AACnF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAc,EAAc,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AAE/F,kFAAkF;AAClF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,MAA2B,EAAa,EAAE,CACpF,gBAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AAE5C,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAA+B,EAAE,QAAgB,EAAwB,EAAE,CACvG,gBAAgB,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAEjD,sFAAsF;AACtF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAA+B,EAAE,QAAgB,EAAU,EAAE,CAC3F,gBAAgB,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAEnD,qFAAqF;AACrF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAiB,EAAE,KAA+B,EAAgB,EAAE,CACjG,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAEjD,wFAAwF;AACxF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAc,EAAE,OAA0B,EAAmB,EAAE,CAC/F,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA"}
@@ -1,7 +1,12 @@
1
1
  export * from './consts.js';
2
2
  export * from './errors.js';
3
3
  export * from './schemas.js';
4
+ export * from './card.js';
5
+ export * from './spec.js';
4
6
  export * from './helpers.js';
5
7
  export * from './landing.js';
6
8
  export type * from './types.js';
9
+ export type * from './card/types.js';
10
+ export type * from './spec/types.js';
11
+ export type * from './landing/types.js';
7
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/planning/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,mBAAmB,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/planning/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,iBAAiB,CAAA;AACpC,mBAAmB,iBAAiB,CAAA;AACpC,mBAAmB,oBAAoB,CAAA"}
@@ -1,6 +1,8 @@
1
1
  export * from './consts.js';
2
2
  export * from './errors.js';
3
3
  export * from './schemas.js';
4
+ export * from './card.js';
5
+ export * from './spec.js';
4
6
  export * from './helpers.js';
5
7
  export * from './landing.js';
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/planning/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/planning/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
@@ -0,0 +1,16 @@
1
+ /** The landing sentence a landing-gate story's narrative carries. */
2
+ export interface LandingSentenceHelper {
3
+ /** Whether a narrative already carries the landing sentence, whatever whitespace surrounds it. */
4
+ hasLandingSentence: (title: string) => boolean;
5
+ /**
6
+ * The narrative with the landing sentence appended once.
7
+ *
8
+ * Idempotent — a narrative that already carries the sentence comes back unchanged, so a decision
9
+ * step that is resumed after it wrote the card never appends a second copy. It never produces a
10
+ * title longer than a card accepts (`TITLE_MAX`): a narrative with no room left is returned as it
11
+ * is rather than cut, because a person's words are worth more than the note, and the flag on the
12
+ * card still carries the fact.
13
+ */
14
+ withLandingSentence: (title: string) => string;
15
+ }
16
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/planning/landing/types.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,kGAAkG;IAClG,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;IAC9C;;;;;;;;OAQG;IACH,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CAC/C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/planning/landing/types.ts"],"names":[],"mappings":""}
@@ -1,13 +1,8 @@
1
- /** Whether a narrative already carries the landing sentence, whatever whitespace surrounds it. */
1
+ import type { LandingSentenceHelper } from './landing/types.js';
2
+ export declare const createLandingSentenceHelper: () => LandingSentenceHelper;
3
+ export declare const landingSentenceHelper: LandingSentenceHelper;
4
+ /** @deprecated compat:factory-refactor — use `landingSentenceHelper.hasLandingSentence(…)` */
2
5
  export declare const hasLandingSentence: (title: string) => boolean;
3
- /**
4
- * The narrative with the landing sentence appended once.
5
- *
6
- * Idempotent — a narrative that already carries the sentence comes back unchanged, so a decision
7
- * step that is resumed after it wrote the card never appends a second copy. It never produces a
8
- * title longer than a card accepts (`TITLE_MAX`): a narrative with no room left is returned as it
9
- * is rather than cut, because a person's words are worth more than the note, and the flag on the
10
- * card still carries the fact.
11
- */
6
+ /** @deprecated compat:factory-refactor — use `landingSentenceHelper.withLandingSentence(…)` */
12
7
  export declare const withLandingSentence: (title: string) => string;
13
8
  //# sourceMappingURL=landing.d.ts.map