@owlmeans/server-planning 0.1.18-rc.9 → 0.1.18

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 (438) hide show
  1. package/README.md +92 -19
  2. package/agent-meta/manifest.json +105 -4
  3. package/agent-meta/skills/server-planning/SKILL.md +89 -138
  4. package/agent-meta/skills/server-planning/parts/auxiliary.md +54 -0
  5. package/agent-meta/skills/server-planning/parts/executor.md +82 -0
  6. package/agent-meta/skills/server-planning/parts/schemas.md +26 -0
  7. package/agent-meta/skills/server-planning/parts/serving.md +88 -0
  8. package/agent-meta/skills/server-planning/parts/stores.md +91 -0
  9. package/build/actions/apply-schema-request.d.ts +8 -0
  10. package/build/actions/apply-schema-request.d.ts.map +1 -0
  11. package/build/actions/apply-schema-request.js +33 -0
  12. package/build/actions/apply-schema-request.js.map +1 -0
  13. package/build/actions/commit.d.ts +3 -3
  14. package/build/actions/commit.d.ts.map +1 -1
  15. package/build/actions/commit.js +5 -4
  16. package/build/actions/commit.js.map +1 -1
  17. package/build/actions/define-schemas.d.ts +13 -0
  18. package/build/actions/define-schemas.d.ts.map +1 -0
  19. package/build/actions/define-schemas.js +28 -0
  20. package/build/actions/define-schemas.js.map +1 -0
  21. package/build/actions/execute.d.ts +11 -10
  22. package/build/actions/execute.d.ts.map +1 -1
  23. package/build/actions/execute.js +17 -27
  24. package/build/actions/execute.js.map +1 -1
  25. package/build/actions/execution/types.d.ts +34 -0
  26. package/build/actions/execution/types.d.ts.map +1 -0
  27. package/build/actions/execution/types.js +2 -0
  28. package/build/actions/execution/types.js.map +1 -0
  29. package/build/actions/execution.d.ts +4 -0
  30. package/build/actions/execution.d.ts.map +1 -0
  31. package/build/actions/execution.js +88 -0
  32. package/build/actions/execution.js.map +1 -0
  33. package/build/actions/get-card.d.ts +6 -0
  34. package/build/actions/get-card.d.ts.map +1 -0
  35. package/build/actions/get-card.js +9 -0
  36. package/build/actions/get-card.js.map +1 -0
  37. package/build/actions/get-specification.d.ts +6 -0
  38. package/build/actions/get-specification.d.ts.map +1 -0
  39. package/build/actions/get-specification.js +9 -0
  40. package/build/actions/get-specification.js.map +1 -0
  41. package/build/actions/index.d.ts +12 -3
  42. package/build/actions/index.d.ts.map +1 -1
  43. package/build/actions/index.js +11 -3
  44. package/build/actions/index.js.map +1 -1
  45. package/build/actions/links.d.ts +3 -3
  46. package/build/actions/links.d.ts.map +1 -1
  47. package/build/actions/links.js +6 -5
  48. package/build/actions/links.js.map +1 -1
  49. package/build/actions/list-card-specifications.d.ts +6 -0
  50. package/build/actions/list-card-specifications.d.ts.map +1 -0
  51. package/build/actions/list-card-specifications.js +11 -0
  52. package/build/actions/list-card-specifications.js.map +1 -0
  53. package/build/actions/list-card-transitions.d.ts +6 -0
  54. package/build/actions/list-card-transitions.d.ts.map +1 -0
  55. package/build/actions/list-card-transitions.js +11 -0
  56. package/build/actions/list-card-transitions.js.map +1 -0
  57. package/build/actions/list-cards.d.ts +6 -0
  58. package/build/actions/list-cards.d.ts.map +1 -0
  59. package/build/actions/list-cards.js +10 -0
  60. package/build/actions/list-cards.js.map +1 -0
  61. package/build/actions/list-schemas.d.ts +13 -0
  62. package/build/actions/list-schemas.d.ts.map +1 -0
  63. package/build/actions/list-schemas.js +20 -0
  64. package/build/actions/list-schemas.js.map +1 -0
  65. package/build/actions/list-specification-revisions.d.ts +6 -0
  66. package/build/actions/list-specification-revisions.d.ts.map +1 -0
  67. package/build/actions/list-specification-revisions.js +10 -0
  68. package/build/actions/list-specification-revisions.js.map +1 -0
  69. package/build/actions/resources.d.ts +5 -0
  70. package/build/actions/resources.d.ts.map +1 -0
  71. package/build/actions/resources.js +111 -0
  72. package/build/actions/resources.js.map +1 -0
  73. package/build/actions/summarize-cards.d.ts +6 -0
  74. package/build/actions/summarize-cards.d.ts.map +1 -0
  75. package/build/actions/summarize-cards.js +11 -0
  76. package/build/actions/summarize-cards.js.map +1 -0
  77. package/build/actions/transitions.d.ts +3 -3
  78. package/build/actions/transitions.d.ts.map +1 -1
  79. package/build/actions/transitions.js +4 -3
  80. package/build/actions/transitions.js.map +1 -1
  81. package/build/actions/types.d.ts +6 -0
  82. package/build/actions/types.d.ts.map +1 -0
  83. package/build/actions/types.js +2 -0
  84. package/build/actions/types.js.map +1 -0
  85. package/build/actions/watch.d.ts +2 -2
  86. package/build/actions/watch.d.ts.map +1 -1
  87. package/build/actions/watch.js +8 -6
  88. package/build/actions/watch.js.map +1 -1
  89. package/build/conformance/assert/types.d.ts +19 -0
  90. package/build/conformance/assert/types.d.ts.map +1 -0
  91. package/build/conformance/assert/types.js +2 -0
  92. package/build/conformance/assert/types.js.map +1 -0
  93. package/build/conformance/assert.d.ts +15 -0
  94. package/build/conformance/assert.d.ts.map +1 -0
  95. package/build/conformance/assert.js +52 -0
  96. package/build/conformance/assert.js.map +1 -0
  97. package/build/conformance/cases.d.ts +7 -0
  98. package/build/conformance/cases.d.ts.map +1 -0
  99. package/build/conformance/cases.js +544 -0
  100. package/build/conformance/cases.js.map +1 -0
  101. package/build/conformance/clock.d.ts +6 -0
  102. package/build/conformance/clock.d.ts.map +1 -0
  103. package/build/conformance/clock.js +12 -0
  104. package/build/conformance/clock.js.map +1 -0
  105. package/build/conformance/consts.d.ts +30 -0
  106. package/build/conformance/consts.d.ts.map +1 -0
  107. package/build/conformance/consts.js +159 -0
  108. package/build/conformance/consts.js.map +1 -0
  109. package/build/conformance/errors.d.ts +5 -0
  110. package/build/conformance/errors.d.ts.map +1 -0
  111. package/build/conformance/errors.js +8 -0
  112. package/build/conformance/errors.js.map +1 -0
  113. package/build/conformance/fixtures/types.d.ts +13 -0
  114. package/build/conformance/fixtures/types.d.ts.map +1 -0
  115. package/build/conformance/fixtures/types.js +2 -0
  116. package/build/conformance/fixtures/types.js.map +1 -0
  117. package/build/conformance/fixtures.d.ts +14 -0
  118. package/build/conformance/fixtures.d.ts.map +1 -0
  119. package/build/conformance/fixtures.js +26 -0
  120. package/build/conformance/fixtures.js.map +1 -0
  121. package/build/conformance/index.d.ts +15 -0
  122. package/build/conformance/index.d.ts.map +1 -0
  123. package/build/conformance/index.js +12 -0
  124. package/build/conformance/index.js.map +1 -0
  125. package/build/conformance/resources.d.ts +4 -0
  126. package/build/conformance/resources.d.ts.map +1 -0
  127. package/build/conformance/resources.js +228 -0
  128. package/build/conformance/resources.js.map +1 -0
  129. package/build/conformance/types.d.ts +18 -0
  130. package/build/conformance/types.d.ts.map +1 -0
  131. package/build/conformance/types.js +2 -0
  132. package/build/conformance/types.js.map +1 -0
  133. package/build/consts.d.ts +5 -0
  134. package/build/consts.d.ts.map +1 -1
  135. package/build/consts.js +5 -0
  136. package/build/consts.js.map +1 -1
  137. package/build/definitions.d.ts +18 -0
  138. package/build/definitions.d.ts.map +1 -0
  139. package/build/definitions.js +225 -0
  140. package/build/definitions.js.map +1 -0
  141. package/build/executor/changes/types.d.ts +36 -0
  142. package/build/executor/changes/types.d.ts.map +1 -0
  143. package/build/executor/changes/types.js +2 -0
  144. package/build/executor/changes/types.js.map +1 -0
  145. package/build/executor/changes.d.ts +3 -30
  146. package/build/executor/changes.d.ts.map +1 -1
  147. package/build/executor/changes.js +42 -51
  148. package/build/executor/changes.js.map +1 -1
  149. package/build/executor/code/types.d.ts +17 -0
  150. package/build/executor/code/types.d.ts.map +1 -0
  151. package/build/executor/code/types.js +2 -0
  152. package/build/executor/code/types.js.map +1 -0
  153. package/build/executor/code.d.ts +3 -14
  154. package/build/executor/code.d.ts.map +1 -1
  155. package/build/executor/code.js +50 -54
  156. package/build/executor/code.js.map +1 -1
  157. package/build/executor/consts.local.d.ts +5 -0
  158. package/build/executor/consts.local.d.ts.map +1 -0
  159. package/build/executor/consts.local.js +6 -0
  160. package/build/executor/consts.local.js.map +1 -0
  161. package/build/executor/creator/types.d.ts +33 -0
  162. package/build/executor/creator/types.d.ts.map +1 -0
  163. package/build/executor/creator/types.js +2 -0
  164. package/build/executor/creator/types.js.map +1 -0
  165. package/build/executor/creator.d.ts +11 -0
  166. package/build/executor/creator.d.ts.map +1 -0
  167. package/build/executor/creator.js +32 -0
  168. package/build/executor/creator.js.map +1 -0
  169. package/build/executor/resolve/types.d.ts +30 -0
  170. package/build/executor/resolve/types.d.ts.map +1 -0
  171. package/build/executor/resolve/types.js +2 -0
  172. package/build/executor/resolve/types.js.map +1 -0
  173. package/build/executor/resolve.d.ts +5 -34
  174. package/build/executor/resolve.d.ts.map +1 -1
  175. package/build/executor/resolve.js +169 -110
  176. package/build/executor/resolve.js.map +1 -1
  177. package/build/executor/types.d.ts +23 -0
  178. package/build/executor/types.d.ts.map +1 -0
  179. package/build/executor/types.js +2 -0
  180. package/build/executor/types.js.map +1 -0
  181. package/build/executor/validate.d.ts +6 -5
  182. package/build/executor/validate.d.ts.map +1 -1
  183. package/build/executor/validate.js +38 -27
  184. package/build/executor/validate.js.map +1 -1
  185. package/build/executor.d.ts +11 -7
  186. package/build/executor.d.ts.map +1 -1
  187. package/build/executor.js +27 -21
  188. package/build/executor.js.map +1 -1
  189. package/build/facade.d.ts +20 -2
  190. package/build/facade.d.ts.map +1 -1
  191. package/build/facade.js +144 -22
  192. package/build/facade.js.map +1 -1
  193. package/build/helper.d.ts +5 -9
  194. package/build/helper.d.ts.map +1 -1
  195. package/build/helper.js +12 -11
  196. package/build/helper.js.map +1 -1
  197. package/build/hierarchy/types.d.ts +20 -0
  198. package/build/hierarchy/types.d.ts.map +1 -0
  199. package/build/hierarchy/types.js +2 -0
  200. package/build/hierarchy/types.js.map +1 -0
  201. package/build/hierarchy.d.ts +5 -0
  202. package/build/hierarchy.d.ts.map +1 -0
  203. package/build/hierarchy.js +133 -0
  204. package/build/hierarchy.js.map +1 -0
  205. package/build/index.d.ts +1 -0
  206. package/build/index.d.ts.map +1 -1
  207. package/build/index.js +1 -0
  208. package/build/index.js.map +1 -1
  209. package/build/invariants/types.d.ts +6 -0
  210. package/build/invariants/types.d.ts.map +1 -0
  211. package/build/invariants/types.js +2 -0
  212. package/build/invariants/types.js.map +1 -0
  213. package/build/invariants.d.ts +5 -0
  214. package/build/invariants.d.ts.map +1 -0
  215. package/build/invariants.js +126 -0
  216. package/build/invariants.js.map +1 -0
  217. package/build/projection.d.ts +4 -10
  218. package/build/projection.d.ts.map +1 -1
  219. package/build/projection.js +7 -5
  220. package/build/projection.js.map +1 -1
  221. package/build/queue/consts.d.ts +5 -0
  222. package/build/queue/consts.d.ts.map +1 -0
  223. package/build/queue/consts.js +5 -0
  224. package/build/queue/consts.js.map +1 -0
  225. package/build/queue/declare.d.ts +5 -0
  226. package/build/queue/declare.d.ts.map +1 -0
  227. package/build/queue/declare.js +5 -0
  228. package/build/queue/declare.js.map +1 -0
  229. package/build/queue/index.d.ts +3 -18
  230. package/build/queue/index.d.ts.map +1 -1
  231. package/build/queue/index.js +2 -7
  232. package/build/queue/index.js.map +1 -1
  233. package/build/queue/types.d.ts +13 -0
  234. package/build/queue/types.d.ts.map +1 -0
  235. package/build/queue/types.js +2 -0
  236. package/build/queue/types.js.map +1 -0
  237. package/build/registry.d.ts +5 -22
  238. package/build/registry.d.ts.map +1 -1
  239. package/build/registry.js +16 -10
  240. package/build/registry.js.map +1 -1
  241. package/build/resources.d.ts +5 -0
  242. package/build/resources.d.ts.map +1 -0
  243. package/build/resources.js +287 -0
  244. package/build/resources.js.map +1 -0
  245. package/build/service.d.ts +3 -16
  246. package/build/service.d.ts.map +1 -1
  247. package/build/service.js +12 -0
  248. package/build/service.js.map +1 -1
  249. package/build/store/commits.d.ts.map +1 -1
  250. package/build/store/commits.js +3 -1
  251. package/build/store/commits.js.map +1 -1
  252. package/build/store/composite.d.ts +1 -0
  253. package/build/store/composite.d.ts.map +1 -1
  254. package/build/store/composite.js +7 -2
  255. package/build/store/composite.js.map +1 -1
  256. package/build/store/consts.local.d.ts +2 -0
  257. package/build/store/consts.local.d.ts.map +1 -0
  258. package/build/store/consts.local.js +2 -0
  259. package/build/store/consts.local.js.map +1 -0
  260. package/build/store/fold/types.d.ts +43 -0
  261. package/build/store/fold/types.d.ts.map +1 -0
  262. package/build/store/fold/types.js +2 -0
  263. package/build/store/fold/types.js.map +1 -0
  264. package/build/store/fold.d.ts +8 -30
  265. package/build/store/fold.d.ts.map +1 -1
  266. package/build/store/fold.js +190 -198
  267. package/build/store/fold.js.map +1 -1
  268. package/build/store/index.d.ts +1 -0
  269. package/build/store/index.d.ts.map +1 -1
  270. package/build/store/index.js.map +1 -1
  271. package/build/store/memory.d.ts +12 -0
  272. package/build/store/memory.d.ts.map +1 -1
  273. package/build/store/memory.js +0 -0
  274. package/build/store/memory.js.map +1 -1
  275. package/build/store/types.d.ts +15 -1
  276. package/build/store/types.d.ts.map +1 -1
  277. package/build/store/types.local.d.ts +5 -0
  278. package/build/store/types.local.d.ts.map +1 -0
  279. package/build/store/types.local.js +2 -0
  280. package/build/store/types.local.js.map +1 -0
  281. package/build/types.d.ts +126 -2
  282. package/build/types.d.ts.map +1 -1
  283. package/build/types.local.d.ts +7 -0
  284. package/build/types.local.d.ts.map +1 -0
  285. package/build/types.local.js +2 -0
  286. package/build/types.local.js.map +1 -0
  287. package/build/utils/access/types.d.ts +30 -0
  288. package/build/utils/access/types.d.ts.map +1 -0
  289. package/build/utils/access/types.js +2 -0
  290. package/build/utils/access/types.js.map +1 -0
  291. package/build/utils/access.d.ts +4 -0
  292. package/build/utils/access.d.ts.map +1 -0
  293. package/build/utils/access.js +28 -0
  294. package/build/utils/access.js.map +1 -0
  295. package/build/utils/guard/types.d.ts +23 -0
  296. package/build/utils/guard/types.d.ts.map +1 -0
  297. package/build/utils/guard/types.js +2 -0
  298. package/build/utils/guard/types.js.map +1 -0
  299. package/build/utils/guard.d.ts +7 -10
  300. package/build/utils/guard.d.ts.map +1 -1
  301. package/build/utils/guard.js +36 -32
  302. package/build/utils/guard.js.map +1 -1
  303. package/build/utils/handler/types.d.ts +26 -0
  304. package/build/utils/handler/types.d.ts.map +1 -0
  305. package/build/utils/handler/types.js +2 -0
  306. package/build/utils/handler/types.js.map +1 -0
  307. package/build/utils/handler.d.ts +6 -0
  308. package/build/utils/handler.d.ts.map +1 -0
  309. package/build/utils/handler.js +21 -0
  310. package/build/utils/handler.js.map +1 -0
  311. package/build/utils/index.d.ts +8 -0
  312. package/build/utils/index.d.ts.map +1 -1
  313. package/build/utils/index.js +3 -0
  314. package/build/utils/index.js.map +1 -1
  315. package/build/utils/request/types.d.ts +23 -0
  316. package/build/utils/request/types.d.ts.map +1 -0
  317. package/build/utils/request/types.js +2 -0
  318. package/build/utils/request/types.js.map +1 -0
  319. package/build/utils/request.d.ts +4 -0
  320. package/build/utils/request.d.ts.map +1 -0
  321. package/build/utils/request.js +27 -0
  322. package/build/utils/request.js.map +1 -0
  323. package/build/utils/scope.d.ts +17 -13
  324. package/build/utils/scope.d.ts.map +1 -1
  325. package/build/utils/scope.js +21 -35
  326. package/build/utils/scope.js.map +1 -1
  327. package/build/utils/types.d.ts +8 -0
  328. package/build/utils/types.d.ts.map +1 -0
  329. package/build/utils/types.js +2 -0
  330. package/build/utils/types.js.map +1 -0
  331. package/package.json +30 -22
  332. package/src/actions/apply-schema-request.ts +36 -0
  333. package/src/actions/commit.ts +7 -5
  334. package/src/actions/define-schemas.ts +34 -0
  335. package/src/actions/execute.ts +32 -34
  336. package/src/actions/execution/types.ts +34 -0
  337. package/src/actions/execution.ts +100 -0
  338. package/src/actions/get-card.ts +14 -0
  339. package/src/actions/get-specification.ts +14 -0
  340. package/src/actions/index.ts +13 -3
  341. package/src/actions/links.ts +8 -6
  342. package/src/actions/list-card-specifications.ts +15 -0
  343. package/src/actions/list-card-transitions.ts +15 -0
  344. package/src/actions/list-cards.ts +14 -0
  345. package/src/actions/list-schemas.ts +29 -0
  346. package/src/actions/list-specification-revisions.ts +15 -0
  347. package/src/actions/resources.ts +79 -0
  348. package/src/actions/summarize-cards.ts +15 -0
  349. package/src/actions/transitions.ts +6 -4
  350. package/src/actions/types.ts +5 -0
  351. package/src/actions/watch.ts +11 -7
  352. package/src/conformance/assert/types.ts +16 -0
  353. package/src/conformance/assert.ts +67 -0
  354. package/src/conformance/cases.ts +631 -0
  355. package/src/conformance/clock.ts +11 -0
  356. package/src/conformance/consts.ts +165 -0
  357. package/src/conformance/errors.ts +7 -0
  358. package/src/conformance/fixtures/types.ts +11 -0
  359. package/src/conformance/fixtures.ts +46 -0
  360. package/src/conformance/index.ts +14 -0
  361. package/src/conformance/resources.ts +227 -0
  362. package/src/conformance/types.ts +20 -0
  363. package/src/consts.ts +6 -0
  364. package/src/definitions.ts +264 -0
  365. package/src/executor/changes/types.ts +38 -0
  366. package/src/executor/changes.ts +49 -68
  367. package/src/executor/code/types.ts +23 -0
  368. package/src/executor/code.ts +62 -69
  369. package/src/executor/consts.local.ts +8 -0
  370. package/src/executor/creator/types.ts +33 -0
  371. package/src/executor/creator.ts +43 -0
  372. package/src/executor/resolve/types.ts +30 -0
  373. package/src/executor/resolve.ts +181 -139
  374. package/src/executor/types.ts +23 -0
  375. package/src/executor/validate.ts +40 -38
  376. package/src/executor.ts +33 -27
  377. package/src/facade.ts +132 -29
  378. package/src/helper.ts +12 -11
  379. package/src/hierarchy/types.ts +20 -0
  380. package/src/hierarchy.ts +113 -0
  381. package/src/index.ts +1 -0
  382. package/src/invariants/types.ts +6 -0
  383. package/src/invariants.ts +106 -0
  384. package/src/projection.ts +12 -18
  385. package/src/queue/consts.ts +5 -0
  386. package/src/queue/declare.ts +7 -0
  387. package/src/queue/index.ts +3 -25
  388. package/src/queue/types.ts +14 -0
  389. package/src/registry.ts +18 -36
  390. package/src/resources.ts +256 -0
  391. package/src/service.ts +16 -20
  392. package/src/store/commits.ts +5 -4
  393. package/src/store/composite.ts +7 -2
  394. package/src/store/consts.local.ts +1 -0
  395. package/src/store/fold/types.ts +44 -0
  396. package/src/store/fold.ts +214 -212
  397. package/src/store/index.ts +1 -0
  398. package/src/store/memory.ts +0 -0
  399. package/src/store/types.local.ts +3 -0
  400. package/src/store/types.ts +16 -1
  401. package/src/types.local.ts +7 -0
  402. package/src/types.ts +139 -6
  403. package/src/utils/access/types.ts +30 -0
  404. package/src/utils/access.ts +33 -0
  405. package/src/utils/guard/types.ts +21 -0
  406. package/src/utils/guard.ts +44 -31
  407. package/src/utils/handler/types.ts +28 -0
  408. package/src/utils/handler.ts +35 -0
  409. package/src/utils/index.ts +9 -0
  410. package/src/utils/request/types.ts +23 -0
  411. package/src/utils/request.ts +40 -0
  412. package/src/utils/scope.ts +39 -42
  413. package/src/utils/types.ts +8 -0
  414. package/tests/access.spec.ts +160 -0
  415. package/tests/app.spec.ts +112 -0
  416. package/tests/conformance.spec.ts +47 -0
  417. package/tests/create-example.spec.ts +202 -0
  418. package/tests/creator.spec.ts +257 -0
  419. package/tests/entrypoints.spec.ts +5 -0
  420. package/tests/memory-store.spec.ts +52 -0
  421. package/tests/narrowing.spec.ts +94 -0
  422. package/tests/plugins.spec.ts +4 -3
  423. package/tests/writes.spec.ts +140 -0
  424. package/build/actions/cards.d.ts +0 -16
  425. package/build/actions/cards.d.ts.map +0 -1
  426. package/build/actions/cards.js +0 -32
  427. package/build/actions/cards.js.map +0 -1
  428. package/build/actions/schemas.d.ts +0 -6
  429. package/build/actions/schemas.d.ts.map +0 -1
  430. package/build/actions/schemas.js +0 -9
  431. package/build/actions/schemas.js.map +0 -1
  432. package/build/actions/specs.d.ts +0 -10
  433. package/build/actions/specs.d.ts.map +0 -1
  434. package/build/actions/specs.js +0 -14
  435. package/build/actions/specs.js.map +0 -1
  436. package/src/actions/cards.ts +0 -52
  437. package/src/actions/schemas.ts +0 -15
  438. package/src/actions/specs.ts +0 -23
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/executor/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/executor/validate.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
- import type { ExecuteOptions, PlanningFacade, TransitionExecution, TransitionReceipt } from '@owlmeans/planning';
2
- import type { PlanningRuntime } from './service.js';
1
+ import { type ExecuteOptions, type PlanningFacade, type TransitionExecution, type TransitionReceipt } from '@owlmeans/planning';
2
+ import type { PlanningRuntime } from './types.js';
3
+ export { assertCreatorFixed, createCreatorHelper, creatorHelper, creatorOf, withCreator } from './executor/creator.js';
4
+ export type * from './executor/creator/types.js';
3
5
  /**
4
6
  * THE write path. Nothing is appended before step 11, so every refusal leaves the log untouched.
5
7
  *
6
- * 1 normalize → 2 scope → 3 idempotency (a known `key` answers its first receipt, before any
7
- * validation) → 4 resolve → 5 the plugins' `before` chain (re-resolved once when it moved the type
8
- * or the parent) → 6 validate → 7 allocate the card id → 8 code → 9 changes (an update changing
9
- * nothing answers the current receipt and appends nothing) → 10 seq, a CAS against the head →
10
- * 11 append → 12 request the projection → 13 receipt → 14 `wait`.
8
+ * 1 normalize (a create's `createdBy` defaults to the scope's subject — `creatorHelper.withCreator`) →
9
+ * 2 scope → 3 idempotency (a known `key` answers its first receipt, before any validation) →
10
+ * 4 resolve → 5 the plugins' `before` chain (re-resolved once when it moved the type or the parent)
11
+ * → 6 validate (a `createdBy` in `changes`/`unset` is refused — `creatorHelper.assertCreatorFixed`) →
12
+ * 7 allocate the card id → 8 code → 9 changes (an update changing nothing answers
13
+ * the current receipt and appends nothing) → 10 seq, a CAS against the head → 11 append →
14
+ * 12 request the projection → 13 receipt → 14 `wait`.
11
15
  *
12
16
  * `after` hooks are NOT run here — the process that folds runs them, once per commit.
13
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,cAAc,EAAuB,cAAc,EACnD,mBAAmB,EAAE,iBAAiB,EACvC,MAAM,oBAAoB,CAAA;AAO3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAkDnD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,YACnB,eAAe,UAAU,cAAc,SAAS,mBAAmB,SAAS,cAAc,KAClG,OAAO,CAAC,iBAAiB,CAwE3B,CAAA"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqE,KAAK,cAAc,EAA4B,KAAK,cAAc,EAA4D,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAOtR,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAIjD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACtH,mBAAmB,6BAA6B,CAAA;AAkDhD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,YACnB,eAAe,UAAU,cAAc,SAAS,mBAAmB,SAAS,cAAc,KAClG,OAAO,CAAC,iBAAiB,CA2E3B,CAAA"}
package/build/executor.js CHANGED
@@ -1,10 +1,12 @@
1
- import { uuid } from '@owlmeans/basic-ids';
2
- import { PlanningError, PlanningUnsupported, WorkcardConflict } from '@owlmeans/planning';
3
- import { changeSetOf, transitionOf } from './executor/changes.js';
4
- import { assignCode } from './executor/code.js';
1
+ import { applyHelper, PlanningError, PlanningUnsupported, WorkcardConflict } from '@owlmeans/planning';
2
+ import { changesUtils } from './executor/changes.js';
3
+ import { codeUtils } from './executor/code.js';
4
+ import { creatorHelper } from './executor/creator.js';
5
5
  import { makeReceipt } from './executor/receipt.js';
6
- import { normalizeExecution, projectFor, resolveExecution } from './executor/resolve.js';
7
6
  import { validateExecution } from './executor/validate.js';
7
+ import { resolveUtilsOf } from './executor/resolve.js';
8
+ import { idHelper } from '@owlmeans/basic-ids';
9
+ export { assertCreatorFixed, createCreatorHelper, creatorHelper, creatorOf, withCreator } from './executor/creator.js';
8
10
  const isoNow = () => new Date().toISOString();
9
11
  /** What a type/parent change by a middleware is judged by. */
10
12
  const identityOf = (exec) => typeof exec.card === 'string'
@@ -13,7 +15,7 @@ const identityOf = (exec) => typeof exec.card === 'string'
13
15
  const execContextOf = (runtime, facade, resolved) => (plugin) => ({
14
16
  context: runtime.context(),
15
17
  scope: facade.scope,
16
- schemas: runtime.service().schemas,
18
+ schemas: resolved.schemas,
17
19
  store: resolved.store,
18
20
  facade,
19
21
  plugin,
@@ -43,19 +45,21 @@ const currentReceipt = async (store, resolved, entityId, opts) => {
43
45
  /**
44
46
  * THE write path. Nothing is appended before step 11, so every refusal leaves the log untouched.
45
47
  *
46
- * 1 normalize → 2 scope → 3 idempotency (a known `key` answers its first receipt, before any
47
- * validation) → 4 resolve → 5 the plugins' `before` chain (re-resolved once when it moved the type
48
- * or the parent) → 6 validate → 7 allocate the card id → 8 code → 9 changes (an update changing
49
- * nothing answers the current receipt and appends nothing) → 10 seq, a CAS against the head →
50
- * 11 append → 12 request the projection → 13 receipt → 14 `wait`.
48
+ * 1 normalize (a create's `createdBy` defaults to the scope's subject — `creatorHelper.withCreator`) →
49
+ * 2 scope → 3 idempotency (a known `key` answers its first receipt, before any validation) →
50
+ * 4 resolve → 5 the plugins' `before` chain (re-resolved once when it moved the type or the parent)
51
+ * → 6 validate (a `createdBy` in `changes`/`unset` is refused — `creatorHelper.assertCreatorFixed`) →
52
+ * 7 allocate the card id → 8 code → 9 changes (an update changing nothing answers
53
+ * the current receipt and appends nothing) → 10 seq, a CAS against the head → 11 append →
54
+ * 12 request the projection → 13 receipt → 14 `wait`.
51
55
  *
52
56
  * `after` hooks are NOT run here — the process that folds runs them, once per commit.
53
57
  */
54
58
  export const executeTransition = async (runtime, facade, input, opts) => {
55
59
  const scope = facade.scope;
56
- const service = runtime.service();
57
60
  const at = (runtime.options.now ?? isoNow)();
58
- let exec = normalizeExecution(input);
61
+ const resolve = resolveUtilsOf(runtime);
62
+ let exec = creatorHelper.withCreator(resolve.normalizeExecution(input), scope);
59
63
  if (scope.entityId == null || scope.entityId === '') {
60
64
  throw new PlanningError('malformed:scope-without-entity');
61
65
  }
@@ -65,11 +69,11 @@ export const executeTransition = async (runtime, facade, input, opts) => {
65
69
  return await makeReceipt(found.store, found.transition, opts);
66
70
  }
67
71
  }
68
- let resolved = await resolveExecution(runtime, facade, exec);
72
+ let resolved = await resolve.resolveExecution(facade, exec);
69
73
  const before = identityOf(exec);
70
- exec = normalizeExecution(await runtime.registry.before(exec, execContextOf(runtime, facade, resolved)));
74
+ exec = resolve.normalizeExecution(await runtime.registry.before(exec, execContextOf(runtime, facade, resolved)));
71
75
  if (identityOf(exec) !== before) {
72
- resolved = await resolveExecution(runtime, facade, exec);
76
+ resolved = await resolve.resolveExecution(facade, exec);
73
77
  }
74
78
  await validateExecution(runtime, facade, exec, resolved);
75
79
  const store = resolved.store;
@@ -78,20 +82,22 @@ export const executeTransition = async (runtime, facade, input, opts) => {
78
82
  throw new PlanningUnsupported(`transitions:${store.alias ?? resolved.type.type}`);
79
83
  }
80
84
  const cardId = resolved.create
81
- ? store.newId?.() ?? runtime.options.ids?.() ?? uuid()
85
+ ? store.newId?.() ?? runtime.options.ids?.() ?? idHelper.uuid()
82
86
  : resolved.card.id;
83
- exec = await assignCode(exec, resolved, scope, runtime.registry, execContextOf(runtime, facade, resolved));
84
- const { set, empty } = changeSetOf(exec, resolved, service.schemas, at);
87
+ exec = await codeUtils.assignCode(exec, resolved, scope, runtime.registry, execContextOf(runtime, facade, resolved));
88
+ const { set, empty } = changesUtils.changeSetOf(exec, resolved, resolved.schemas, at);
85
89
  if (empty) {
86
90
  return await currentReceipt(store, resolved, scope.entityId, opts);
87
91
  }
92
+ const preview = changesUtils.transitionOf({ exec, resolved, scope, set, cardId, seq: (resolved.card?.seq ?? 0) + 1, at, project: resolve.projectFor(resolved, exec, cardId) });
93
+ await store.validateProjection?.(resolved.card ?? null, applyHelper.applyTransition(resolved.card, preview), preview);
88
94
  const seq = await transitions.nextSeq(cardId, resolved.create ? null : exec.expectSeq ?? null);
89
95
  if (resolved.create && seq !== 1) {
90
96
  throw new WorkcardConflict(`${cardId}:create:${seq}`);
91
97
  }
92
- const transition = transitionOf({
98
+ const transition = changesUtils.transitionOf({
93
99
  exec, resolved, scope, set, cardId, seq, at,
94
- project: projectFor(resolved, exec, cardId),
100
+ project: resolve.projectFor(resolved, exec, cardId),
95
101
  });
96
102
  let appended;
97
103
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
package/build/facade.d.ts CHANGED
@@ -1,5 +1,13 @@
1
- import type { PlanningFacade, PlanningScope } from '@owlmeans/planning';
2
- import type { PlanningRuntime } from './service.js';
1
+ import { type PlanningFacade, type PlanningScope, type Workcard } from '@owlmeans/planning';
2
+ import type { Criteria } from '@owlmeans/resource';
3
+ import type { PlanningRuntime } from './types.js';
4
+ /**
5
+ * The criteria a scope narrowed to `projects` adds to every card list, count and summary: the
6
+ * projects themselves, every card whose `parents` name one of them, and the specifications whose
7
+ * parent card is one of `through` — the cards of those projects a specification is seen through,
8
+ * exactly as a single read sees it (a specification's `parents` hold only its own card).
9
+ */
10
+ export declare const projectCriteriaOf: (projects: readonly string[], through?: readonly string[]) => Criteria<Workcard>;
3
11
  /**
4
12
  * The scoped facade over the service's stores.
5
13
  *
@@ -7,6 +15,16 @@ import type { PlanningRuntime } from './service.js';
7
15
  * a card of another entity is simply absent — `load` answers `null`, `get` throws
8
16
  * `WorkcardNotFound`, exactly as for an id that never existed. Reads go through the composite
9
17
  * store (the default store plus the stores plugins own); writes go through the executor.
18
+ *
19
+ * A scope naming `projects` sees those projects, the cards whose `parents` name one of them, and a
20
+ * specification whose parent card is one of those (a card's specification through its card);
21
+ * everything else reads as absent. Lists, counts and summaries are narrowed by an AND'd criteria
22
+ * that admits the same cards a single read does — the parent cards a specification is seen through
23
+ * are resolved once per call ({@link projectCriteriaOf}) — and commit events and transitions
24
+ * outside the set are dropped or refused.
25
+ *
26
+ * `definitions` is present when the default store holds data-defined schemas; a model is then
27
+ * built over the registry of the card's own project.
10
28
  */
11
29
  export declare const makeStoreFacade: (runtime: PlanningRuntime, scope: PlanningScope) => PlanningFacade;
12
30
  //# sourceMappingURL=facade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACI,cAAc,EAAE,aAAa,EAC5C,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGnD;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,YAAa,eAAe,SAAS,aAAa,KAAG,cA8IhF,CAAA"}
1
+ {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyK,KAAK,cAAc,EAAE,KAAK,aAAa,EAA0D,KAAK,QAAQ,EAA0C,MAAM,oBAAoB,CAAA;AAElW,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAIlD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAIjD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAAc,SAAS,MAAM,EAAE,YAAW,SAAS,MAAM,EAAE,KAAQ,QAAQ,CAAC,QAAQ,CAM1F,CAAA;AAExB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,YAAa,eAAe,SAAS,aAAa,KAAG,cA8NhF,CAAA"}
package/build/facade.js CHANGED
@@ -1,5 +1,22 @@
1
- import { criteriaOf, currentSpecification, isSpecification, linkWhereOf, listOptionsOf, modelOf, PlanningUnsupported, specCriteriaOf, transitionWhereOf, WorkcardKind, WorkcardNotFound, } from '@owlmeans/planning';
1
+ import { cardHelper, modelOf, PlanningResourceKind, PlanningUnsupported, queryHelper, specificationHelper, WorkcardKind, WorkcardNotFound } from '@owlmeans/planning';
2
+ import { recordQueryHelper } from '@owlmeans/resource';
3
+ import { makeResourceFacade } from './resources.js';
4
+ import { makeDefinitions } from './definitions.js';
2
5
  import { executeTransition } from './executor.js';
6
+ import { makePlanningHierarchy } from './hierarchy.js';
7
+ /**
8
+ * The criteria a scope narrowed to `projects` adds to every card list, count and summary: the
9
+ * projects themselves, every card whose `parents` name one of them, and the specifications whose
10
+ * parent card is one of `through` — the cards of those projects a specification is seen through,
11
+ * exactly as a single read sees it (a specification's `parents` hold only its own card).
12
+ */
13
+ export const projectCriteriaOf = (projects, through = []) => ({
14
+ $or: [
15
+ { id: { $in: [...projects] } },
16
+ { parents: { $overlaps: [...projects] } },
17
+ ...(through.length > 0 ? [{ kind: WorkcardKind.Specification, parent: { $in: [...through] } }] : []),
18
+ ],
19
+ });
3
20
  /**
4
21
  * The scoped facade over the service's stores.
5
22
  *
@@ -7,11 +24,42 @@ import { executeTransition } from './executor.js';
7
24
  * a card of another entity is simply absent — `load` answers `null`, `get` throws
8
25
  * `WorkcardNotFound`, exactly as for an id that never existed. Reads go through the composite
9
26
  * store (the default store plus the stores plugins own); writes go through the executor.
27
+ *
28
+ * A scope naming `projects` sees those projects, the cards whose `parents` name one of them, and a
29
+ * specification whose parent card is one of those (a card's specification through its card);
30
+ * everything else reads as absent. Lists, counts and summaries are narrowed by an AND'd criteria
31
+ * that admits the same cards a single read does — the parent cards a specification is seen through
32
+ * are resolved once per call ({@link projectCriteriaOf}) — and commit events and transitions
33
+ * outside the set are dropped or refused.
34
+ *
35
+ * `definitions` is present when the default store holds data-defined schemas; a model is then
36
+ * built over the registry of the card's own project.
10
37
  */
11
38
  export const makeStoreFacade = (runtime, scope) => {
12
39
  const entityId = scope.entityId;
40
+ const projects = scope.projects != null ? [...new Set(scope.projects)] : undefined;
13
41
  const reader = () => runtime.reader();
14
42
  const mine = (record) => record != null && record.entityId === entityId ? record : null;
43
+ const hierarchy = makePlanningHierarchy(runtime);
44
+ const visible = async (card) => card != null && await hierarchy.visible(card, projects) ? card : null;
45
+ const allowedIds = async () => {
46
+ if (projects == null)
47
+ return [];
48
+ const result = new Set();
49
+ for (const project of projects) {
50
+ const root = mine(await reader().cards.get(project, entityId));
51
+ if (root == null)
52
+ continue;
53
+ result.add(project);
54
+ for (const card of await hierarchy.descendants(project, entityId))
55
+ result.add(card.id);
56
+ }
57
+ return [...result];
58
+ };
59
+ const narrow = async (where) => projects == null ? where
60
+ : { ...where, $and: [...(where.$and ?? []), { id: { $in: await allowedIds() } }] };
61
+ const narrowed = async (query) => await narrow(queryHelper.criteriaOf(query, scope));
62
+ const projectVisible = (project) => projects == null || (project != null && projects.includes(project));
15
63
  const commitSource = () => {
16
64
  const commits = reader().commits;
17
65
  if (commits == null) {
@@ -19,25 +67,34 @@ export const makeStoreFacade = (runtime, scope) => {
19
67
  }
20
68
  return commits;
21
69
  };
22
- /** The transition is this entity's — its row, or the remembered commit of a purged one. */
70
+ /** The transition is this entity's (and this scope's) — its row, or the remembered commit of a purged one. */
71
+ const transitionVisible = async (row) => {
72
+ if (projects == null)
73
+ return true;
74
+ const card = mine(await reader().cards.get(row.card, entityId));
75
+ return card != null ? await hierarchy.visible(card, projects) : projectVisible(row.project);
76
+ };
23
77
  const assertTransition = async (transition) => {
24
78
  const row = await reader().transitions?.get(transition);
25
79
  if (row != null) {
26
- if (row.entityId !== entityId) {
80
+ if (row.entityId !== entityId || !await transitionVisible(row)) {
27
81
  throw new WorkcardNotFound(`transition:${transition}`);
28
82
  }
29
83
  return;
30
84
  }
31
85
  const recalled = reader().commits?.recall?.(transition);
32
- if (recalled == null || recalled.entityId !== entityId) {
86
+ if (recalled == null || recalled.entityId !== entityId || !projectVisible(recalled.project)) {
33
87
  throw new WorkcardNotFound(`transition:${transition}`);
34
88
  }
35
89
  };
90
+ /** The project a card resolves its data-defined types in. */
91
+ const projectFor = async (card) => await hierarchy.project(card);
36
92
  const facade = {
37
- scope: Object.freeze({ ...scope }),
93
+ ...makeResourceFacade(runtime, () => facade),
94
+ scope: Object.freeze({ ...scope, ...(projects != null ? { projects } : {}) }),
38
95
  schemas: runtime.service().schemas,
39
96
  cards: {
40
- load: async (id) => mine(await reader().cards.get(id, entityId)),
97
+ load: async (id) => await visible(mine(await reader().cards.get(id, entityId))),
41
98
  get: async (id) => {
42
99
  const card = await facade.cards.load(id);
43
100
  if (card == null) {
@@ -45,31 +102,37 @@ export const makeStoreFacade = (runtime, scope) => {
45
102
  }
46
103
  return card;
47
104
  },
48
- list: async (query) => await reader().cards.list(criteriaOf(query, scope), listOptionsOf(query)),
49
- count: async (query) => await reader().cards.count(criteriaOf(query, scope)),
105
+ list: async (query) => await reader().cards.list(await narrowed(query), queryHelper.listOptionsOf(query)),
106
+ count: async (query) => await reader().cards.count(await narrowed(query)),
50
107
  summary: async (parents, query) => parents.length === 0
51
108
  ? {}
52
- : await reader().cards.summary(parents, criteriaOf({ kind: query?.kind, type: query?.type }, scope)),
109
+ : await reader().cards.summary(parents, await narrow(queryHelper.criteriaOf({ kind: query?.kind, type: query?.type }, scope))),
53
110
  },
54
111
  specifications: {
55
112
  current: async (parent, category) => {
113
+ if (projects != null && await facade.cards.load(parent) == null) {
114
+ return null;
115
+ }
56
116
  const specs = reader().specs;
57
117
  if (specs != null) {
58
118
  return mine(await specs.current(parent, category, entityId));
59
119
  }
60
- const listed = await reader().cards.list(specCriteriaOf(parent, { category }, scope), { size: 0 });
61
- return currentSpecification(listed.items, category);
120
+ const listed = await reader().cards.list(queryHelper.specCriteriaOf(parent, { category }, scope), { size: 0 });
121
+ return specificationHelper.currentSpecification(listed.items, category);
62
122
  },
63
123
  list: async (parent, query) => {
124
+ if (projects != null && await facade.cards.load(parent) == null) {
125
+ return { items: [], total: 0 };
126
+ }
64
127
  const specs = reader().specs;
65
128
  if (specs != null) {
66
129
  return await specs.list(parent, entityId, query);
67
130
  }
68
- return await reader().cards.list(specCriteriaOf(parent, query, scope), listOptionsOf(query));
131
+ return await reader().cards.list(queryHelper.specCriteriaOf(parent, query, scope), queryHelper.listOptionsOf(query));
69
132
  },
70
133
  get: async (id) => {
71
134
  const card = await facade.cards.load(id);
72
- if (card == null || !isSpecification(card)) {
135
+ if (card == null || !cardHelper.isSpecification(card)) {
73
136
  throw new WorkcardNotFound(id);
74
137
  }
75
138
  return card;
@@ -86,24 +149,73 @@ export const makeStoreFacade = (runtime, scope) => {
86
149
  relationships: {
87
150
  list: async (query) => {
88
151
  const links = reader().links;
89
- return links == null
90
- ? { items: [], total: 0 }
91
- : await links.list(linkWhereOf(query, scope), listOptionsOf(query));
152
+ if (links == null) {
153
+ return { items: [], total: 0 };
154
+ }
155
+ const where = queryHelper.linkWhereOf(query, scope);
156
+ // Inverse names are views over the canonical edge, never separately stored links.
157
+ const stored = await links.list(query?.type != null ? { entityId, id: where.id, project: where.project } : where, { size: 0 });
158
+ const names = query?.type == null ? undefined : Array.isArray(query.type) ? query.type : [query.type];
159
+ const presented = [];
160
+ for (const link of stored.items) {
161
+ if (names == null || names.includes(link.type))
162
+ presented.push(link);
163
+ if (names == null || (link.fromKind ?? PlanningResourceKind.Workcard) !== PlanningResourceKind.Workcard)
164
+ continue;
165
+ const source = await reader().cards.get(link.from, entityId);
166
+ if (source == null)
167
+ continue;
168
+ const rules = (await runtime.schemasFor(entityId, await hierarchy.project(source))).type(source.type).relationships ?? [];
169
+ for (const rule of rules)
170
+ if (rule.name === link.type && rule.inverse != null && names.includes(rule.inverse)) {
171
+ presented.push({ ...link, type: rule.inverse, from: link.to, to: link.from,
172
+ fromKind: link.toKind ?? PlanningResourceKind.Workcard, toKind: link.fromKind ?? PlanningResourceKind.Workcard });
173
+ }
174
+ }
175
+ const items = [];
176
+ for (const link of presented) {
177
+ if (projects == null) {
178
+ items.push(link);
179
+ continue;
180
+ }
181
+ const endpoints = [];
182
+ if ((link.fromKind ?? PlanningResourceKind.Workcard) === PlanningResourceKind.Workcard)
183
+ endpoints.push(link.from);
184
+ if ((link.toKind ?? PlanningResourceKind.Workcard) === PlanningResourceKind.Workcard)
185
+ endpoints.push(link.to);
186
+ if (endpoints.length === 0)
187
+ continue;
188
+ let admitted = true;
189
+ for (const id of endpoints)
190
+ if (await facade.cards.load(id) == null) {
191
+ admitted = false;
192
+ break;
193
+ }
194
+ if (admitted)
195
+ items.push(link);
196
+ }
197
+ return recordQueryHelper.applyQuery(items, where, queryHelper.listOptionsOf(query));
92
198
  },
93
199
  },
94
200
  transitions: {
95
201
  get: async (id) => {
96
202
  const transition = mine(await reader().transitions?.get(id));
97
- if (transition == null) {
203
+ if (transition == null || !await transitionVisible(transition)) {
98
204
  throw new WorkcardNotFound(`transition:${id}`);
99
205
  }
100
206
  return transition;
101
207
  },
102
208
  list: async (query) => {
103
209
  const transitions = reader().transitions;
104
- return transitions == null
105
- ? { items: [], total: 0 }
106
- : await transitions.list(transitionWhereOf(query, scope), listOptionsOf(query));
210
+ if (transitions == null) {
211
+ return { items: [], total: 0 };
212
+ }
213
+ const listed = await transitions.list(queryHelper.transitionWhereOf(query, scope), { size: 0 });
214
+ const items = [];
215
+ for (const transition of listed.items)
216
+ if (await transitionVisible(transition))
217
+ items.push(transition);
218
+ return recordQueryHelper.applyQuery(items, undefined, queryHelper.listOptionsOf(query));
107
219
  },
108
220
  },
109
221
  commits: {
@@ -111,7 +223,9 @@ export const makeStoreFacade = (runtime, scope) => {
111
223
  await assertTransition(transition);
112
224
  return await commitSource().status(transition);
113
225
  },
114
- subscribe: (listener, filter) => commitSource().subscribe(listener, { ...filter, entityId }),
226
+ subscribe: (listener, filter) => commitSource().subscribe(projects == null
227
+ ? listener
228
+ : async (event) => await transitionVisible(event) ? await listener(event) : undefined, { ...filter, entityId }),
115
229
  wait: async (transition, opts) => {
116
230
  await assertTransition(transition);
117
231
  return await commitSource().wait(transition, opts);
@@ -123,9 +237,17 @@ export const makeStoreFacade = (runtime, scope) => {
123
237
  if (record.entityId !== entityId) {
124
238
  throw new WorkcardNotFound(record.id ?? WorkcardKind.Card);
125
239
  }
126
- return modelOf(record, facade);
240
+ if (runtime.schemaStore() == null) {
241
+ return modelOf(record, facade);
242
+ }
243
+ // A data-defined type answers from the registry of the card's own project.
244
+ const schemas = await runtime.schemasFor(entityId, await projectFor(record));
245
+ return modelOf(record, { ...facade, schemas });
127
246
  },
128
247
  };
248
+ if (runtime.schemaStore() != null) {
249
+ facade.definitions = makeDefinitions(runtime, facade);
250
+ }
129
251
  return facade;
130
252
  };
131
253
  //# sourceMappingURL=facade.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"facade.js","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facade.js","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"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"}
package/build/helper.d.ts CHANGED
@@ -4,15 +4,11 @@ import type { PlanningFacade, PlanningProtocols, PlanningScope } from '@owlmeans
4
4
  import type { PlanningHandlerOptions } from './types.js';
5
5
  /**
6
6
  * Bind this package's handlers to a tree declared by `makePlanningProtocols` — one binding per
7
- * protocol, the base included. Pass the tree itself, never a flattened list; an application that
8
- * wants its own handler for one leaf binds that protocol afterwards.
9
- */
10
- export declare const servePlanningEntrypoints: (protocols: PlanningProtocols, opts?: PlanningHandlerOptions) => import("@owlmeans/server-entrypoint").ServerProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocolDeclaration>[];
11
- /**
12
- * The facade a hand-written handler works through: the request's entity and subject, plus `extra`
13
- * (a `channel`) — never an entity from the request body.
14
- *
15
- * @throws {AuthorizationError} when the request carries no organization
7
+ * protocol, the base included (and `schema.define` when the tree declares it). Pass the tree
8
+ * itself, never a flattened list; an application that wants its own handler for one leaf binds
9
+ * that protocol afterwards.
16
10
  */
11
+ export declare const servePlanningEntrypoints: (protocols: PlanningProtocols, opts?: PlanningHandlerOptions) => import("@owlmeans/server-entrypoint").ServerProtocolEntrypoint<any>[];
12
+ /** @deprecated compat:factory-refactor — use `planningHandlerOf(ctx).planningFor(…)` */
17
13
  export declare const planningFor: (ctx: BasicContext<BasicConfig>, req: AbstractRequest, extra?: Partial<PlanningScope>, opts?: Pick<PlanningHandlerOptions, 'service'>) => PlanningFacade;
18
14
  //# sourceMappingURL=helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAO1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAGxD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,cAAe,iBAAiB,SAAS,sBAAsB,mIAenG,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QACjB,YAAY,CAAC,WAAW,CAAC,OAAO,eAAe,UAAU,OAAO,CAAC,aAAa,CAAC,SAC7E,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAC7C,cAAuE,CAAA"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAO1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAGxD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,cAAe,iBAAiB,SAAS,sBAAsB,0EAmBnG,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,WAAW,QACjB,YAAY,CAAC,WAAW,CAAC,OAAO,eAAe,UAAU,OAAO,CAAC,aAAa,CAAC,SAC7E,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAC7C,cAAsE,CAAA"}