@party-stack/ontology 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (401) hide show
  1. package/lib/OntologyPullConfig.d.ts +15 -13
  2. package/lib/OntologyPullConfig.d.ts.map +1 -1
  3. package/lib/OntologyPullConfig.js +0 -1
  4. package/lib/cli/format.d.ts +4 -0
  5. package/lib/cli/format.d.ts.map +1 -0
  6. package/lib/cli/format.js +19 -0
  7. package/lib/cli/format.js.map +1 -0
  8. package/lib/cli/generate.d.ts +6 -5
  9. package/lib/cli/generate.d.ts.map +1 -1
  10. package/lib/cli/generate.js +86 -110
  11. package/lib/cli/generate.js.map +1 -1
  12. package/lib/cli/index.d.ts +1 -3
  13. package/lib/cli/index.js +42 -59
  14. package/lib/cli/index.js.map +1 -1
  15. package/lib/cli/pull.d.ts +3 -1
  16. package/lib/cli/pull.d.ts.map +1 -1
  17. package/lib/cli/pull.js +42 -60
  18. package/lib/cli/pull.js.map +1 -1
  19. package/lib/examples/blog.d.ts +347 -345
  20. package/lib/examples/blog.d.ts.map +1 -1
  21. package/lib/examples/blog.js +350 -337
  22. package/lib/examples/blog.js.map +1 -1
  23. package/lib/examples/blog.live-queries.d.ts +8 -3
  24. package/lib/examples/blog.live-queries.d.ts.map +1 -1
  25. package/lib/examples/blog.live-queries.js +28 -44
  26. package/lib/examples/blog.live-queries.js.map +1 -1
  27. package/lib/examples/generated/constants.d.ts +1 -2
  28. package/lib/examples/generated/constants.js +0 -2
  29. package/lib/examples/generated/live.d.ts +5 -3
  30. package/lib/examples/generated/live.d.ts.map +1 -1
  31. package/lib/examples/generated/live.js +12 -8
  32. package/lib/examples/generated/live.js.map +1 -1
  33. package/lib/examples/generated/types.d.ts +52 -50
  34. package/lib/examples/generated/types.d.ts.map +1 -1
  35. package/lib/examples/generated/types.js +0 -2
  36. package/lib/generate/builders.d.ts +8 -5
  37. package/lib/generate/builders.d.ts.map +1 -1
  38. package/lib/generate/builders.js +53 -55
  39. package/lib/generate/builders.js.map +1 -1
  40. package/lib/generate/constants.d.ts +3 -1
  41. package/lib/generate/constants.d.ts.map +1 -1
  42. package/lib/generate/constants.js +23 -26
  43. package/lib/generate/constants.js.map +1 -1
  44. package/lib/generate/index.d.ts +6 -6
  45. package/lib/generate/index.js +6 -6
  46. package/lib/generate/live.d.ts +8 -6
  47. package/lib/generate/live.d.ts.map +1 -1
  48. package/lib/generate/live.js +43 -42
  49. package/lib/generate/live.js.map +1 -1
  50. package/lib/generate/ontology.d.ts +4 -2
  51. package/lib/generate/ontology.d.ts.map +1 -1
  52. package/lib/generate/ontology.js +453 -354
  53. package/lib/generate/ontology.js.map +1 -1
  54. package/lib/generate/types.d.ts +7 -5
  55. package/lib/generate/types.d.ts.map +1 -1
  56. package/lib/generate/types.js +190 -262
  57. package/lib/generate/types.js.map +1 -1
  58. package/lib/generate/utils/buildJsDocs.d.ts +7 -4
  59. package/lib/generate/utils/buildJsDocs.d.ts.map +1 -1
  60. package/lib/generate/utils/buildJsDocs.js +14 -10
  61. package/lib/generate/utils/buildJsDocs.js.map +1 -1
  62. package/lib/index.d.ts +30 -13
  63. package/lib/index.js +18 -10
  64. package/lib/infer.d.ts +129 -151
  65. package/lib/infer.d.ts.map +1 -1
  66. package/lib/infer.js +10 -6
  67. package/lib/infer.js.map +1 -1
  68. package/lib/installation/createMetaOntologyConfiguration.d.ts +6 -3
  69. package/lib/installation/createMetaOntologyConfiguration.d.ts.map +1 -1
  70. package/lib/installation/createMetaOntologyConfiguration.js +13 -11
  71. package/lib/installation/createMetaOntologyConfiguration.js.map +1 -1
  72. package/lib/installation/createOntologyBackendInstallation.d.ts +3 -1
  73. package/lib/installation/createOntologyBackendInstallation.d.ts.map +1 -1
  74. package/lib/installation/createOntologyBackendInstallation.js +205 -268
  75. package/lib/installation/createOntologyBackendInstallation.js.map +1 -1
  76. package/lib/installation/index.d.ts +4 -4
  77. package/lib/installation/index.js +3 -3
  78. package/lib/installation/types.d.ts +83 -80
  79. package/lib/installation/types.d.ts.map +1 -1
  80. package/lib/installation/types.js +0 -1
  81. package/lib/ir/generated/builders.d.ts +294 -382
  82. package/lib/ir/generated/builders.d.ts.map +1 -1
  83. package/lib/ir/generated/builders.js +180 -119
  84. package/lib/ir/generated/builders.js.map +1 -1
  85. package/lib/ir/generated/constants.d.ts +137 -135
  86. package/lib/ir/generated/constants.d.ts.map +1 -1
  87. package/lib/ir/generated/constants.js +162 -129
  88. package/lib/ir/generated/constants.js.map +1 -1
  89. package/lib/ir/generated/types.d.ts +236 -234
  90. package/lib/ir/generated/types.d.ts.map +1 -1
  91. package/lib/ir/generated/types.js +0 -2
  92. package/lib/ir/index.d.ts +4 -4
  93. package/lib/ir/index.js +3 -4
  94. package/lib/ir/schema.d.ts +2174 -2172
  95. package/lib/ir/schema.d.ts.map +1 -1
  96. package/lib/ir/schema.js +1184 -1343
  97. package/lib/ir/schema.js.map +1 -1
  98. package/lib/ir/validate.d.ts +5 -3
  99. package/lib/ir/validate.d.ts.map +1 -1
  100. package/lib/ir/validate.js +589 -707
  101. package/lib/ir/validate.js.map +1 -1
  102. package/lib/json/index.d.ts +10 -8
  103. package/lib/json/index.d.ts.map +1 -1
  104. package/lib/json/index.js +101 -135
  105. package/lib/json/index.js.map +1 -1
  106. package/lib/lenses.d.ts +7 -4
  107. package/lib/lenses.d.ts.map +1 -1
  108. package/lib/lenses.js +96 -132
  109. package/lib/lenses.js.map +1 -1
  110. package/lib/live/LiveOntology.d.ts +55 -60
  111. package/lib/live/LiveOntology.d.ts.map +1 -1
  112. package/lib/live/LiveOntology.js +98 -124
  113. package/lib/live/LiveOntology.js.map +1 -1
  114. package/lib/live/OntologyBackendAdapter.d.ts +84 -77
  115. package/lib/live/OntologyBackendAdapter.d.ts.map +1 -1
  116. package/lib/live/OntologyBackendAdapter.js +0 -1
  117. package/lib/live/actions/createLiveOntologyAction.d.ts +27 -24
  118. package/lib/live/actions/createLiveOntologyAction.d.ts.map +1 -1
  119. package/lib/live/actions/createLiveOntologyAction.js +24 -21
  120. package/lib/live/actions/createLiveOntologyAction.js.map +1 -1
  121. package/lib/live/actions/createLiveOntologyActions.d.ts +23 -20
  122. package/lib/live/actions/createLiveOntologyActions.d.ts.map +1 -1
  123. package/lib/live/actions/createLiveOntologyActions.js +131 -161
  124. package/lib/live/actions/createLiveOntologyActions.js.map +1 -1
  125. package/lib/live/actions/prepareActionParameters.d.ts +14 -11
  126. package/lib/live/actions/prepareActionParameters.d.ts.map +1 -1
  127. package/lib/live/actions/prepareActionParameters.js +190 -228
  128. package/lib/live/actions/prepareActionParameters.js.map +1 -1
  129. package/lib/live/attachments/attachmentSources.d.ts +7 -4
  130. package/lib/live/attachments/attachmentSources.d.ts.map +1 -1
  131. package/lib/live/attachments/attachmentSources.js +55 -71
  132. package/lib/live/attachments/attachmentSources.js.map +1 -1
  133. package/lib/live/attachments/createLiveOntologyAttachments.d.ts +47 -44
  134. package/lib/live/attachments/createLiveOntologyAttachments.d.ts.map +1 -1
  135. package/lib/live/attachments/createLiveOntologyAttachments.js +65 -83
  136. package/lib/live/attachments/createLiveOntologyAttachments.js.map +1 -1
  137. package/lib/live/attachments/types.d.ts +10 -8
  138. package/lib/live/attachments/types.d.ts.map +1 -1
  139. package/lib/live/attachments/types.js +0 -1
  140. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.d.ts +3 -1
  141. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.d.ts.map +1 -1
  142. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.js +5 -3
  143. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.js.map +1 -1
  144. package/lib/live/expression.d.ts +16 -13
  145. package/lib/live/expression.d.ts.map +1 -1
  146. package/lib/live/expression.js +142 -223
  147. package/lib/live/expression.js.map +1 -1
  148. package/lib/live/index.d.ts +12 -9
  149. package/lib/live/index.js +6 -8
  150. package/lib/live/mutators/OntologyEdits.d.ts +12 -9
  151. package/lib/live/mutators/OntologyEdits.d.ts.map +1 -1
  152. package/lib/live/mutators/OntologyEdits.js +57 -74
  153. package/lib/live/mutators/OntologyEdits.js.map +1 -1
  154. package/lib/live/mutators/createMutatorTx.d.ts +7 -5
  155. package/lib/live/mutators/createMutatorTx.d.ts.map +1 -1
  156. package/lib/live/mutators/createMutatorTx.js +53 -69
  157. package/lib/live/mutators/createMutatorTx.js.map +1 -1
  158. package/lib/live/mutators/runOptimisticAction.d.ts +16 -13
  159. package/lib/live/mutators/runOptimisticAction.d.ts.map +1 -1
  160. package/lib/live/mutators/runOptimisticAction.js +26 -26
  161. package/lib/live/mutators/runOptimisticAction.js.map +1 -1
  162. package/lib/live/mutators/types.d.ts +18 -16
  163. package/lib/live/mutators/types.d.ts.map +1 -1
  164. package/lib/live/mutators/types.js +0 -1
  165. package/lib/live/objects/OntologyObject.d.ts +2 -0
  166. package/lib/live/objects/OntologyObject.d.ts.map +1 -1
  167. package/lib/live/objects/OntologyObject.js +0 -1
  168. package/lib/live/objects/createLiveOntologyObjectCollection.d.ts +14 -11
  169. package/lib/live/objects/createLiveOntologyObjectCollection.d.ts.map +1 -1
  170. package/lib/live/objects/createLiveOntologyObjectCollection.js +62 -49
  171. package/lib/live/objects/createLiveOntologyObjectCollection.js.map +1 -1
  172. package/lib/live/objects/ontologyObjectCollectionId.d.ts +2 -0
  173. package/lib/live/objects/ontologyObjectCollectionId.d.ts.map +1 -1
  174. package/lib/live/objects/ontologyObjectCollectionId.js +6 -2
  175. package/lib/live/objects/ontologyObjectCollectionId.js.map +1 -1
  176. package/lib/live/outbox/createOntologyOutbox.d.ts +16 -14
  177. package/lib/live/outbox/createOntologyOutbox.d.ts.map +1 -1
  178. package/lib/live/outbox/createOntologyOutbox.js +275 -326
  179. package/lib/live/outbox/createOntologyOutbox.js.map +1 -1
  180. package/lib/live/outbox/leaderExecutor.d.ts +15 -13
  181. package/lib/live/outbox/leaderExecutor.d.ts.map +1 -1
  182. package/lib/live/outbox/leaderExecutor.js +114 -153
  183. package/lib/live/outbox/leaderExecutor.js.map +1 -1
  184. package/lib/live/outbox/outboxService.d.ts +4 -2
  185. package/lib/live/outbox/outboxService.d.ts.map +1 -1
  186. package/lib/live/outbox/outboxService.js +66 -71
  187. package/lib/live/outbox/outboxService.js.map +1 -1
  188. package/lib/live/outbox/projectionManager.d.ts +26 -24
  189. package/lib/live/outbox/projectionManager.d.ts.map +1 -1
  190. package/lib/live/outbox/projectionManager.js +121 -147
  191. package/lib/live/outbox/projectionManager.js.map +1 -1
  192. package/lib/live/outbox/repository.d.ts +27 -25
  193. package/lib/live/outbox/repository.d.ts.map +1 -1
  194. package/lib/live/outbox/repository.js +192 -241
  195. package/lib/live/outbox/repository.js.map +1 -1
  196. package/lib/live/outbox/service.d.ts +52 -50
  197. package/lib/live/outbox/service.d.ts.map +1 -1
  198. package/lib/live/outbox/service.js +5 -1
  199. package/lib/live/outbox/service.js.map +1 -1
  200. package/lib/live/outbox/types.d.ts +35 -33
  201. package/lib/live/outbox/types.d.ts.map +1 -1
  202. package/lib/live/outbox/types.js +10 -6
  203. package/lib/live/outbox/types.js.map +1 -1
  204. package/lib/live/waitForCollectionReady.d.ts +3 -1
  205. package/lib/live/waitForCollectionReady.d.ts.map +1 -1
  206. package/lib/live/waitForCollectionReady.js +44 -65
  207. package/lib/live/waitForCollectionReady.js.map +1 -1
  208. package/lib/meta/createLocalMetaOntologyBackendAdapter.d.ts +5 -2
  209. package/lib/meta/createLocalMetaOntologyBackendAdapter.d.ts.map +1 -1
  210. package/lib/meta/createLocalMetaOntologyBackendAdapter.js +37 -39
  211. package/lib/meta/createLocalMetaOntologyBackendAdapter.js.map +1 -1
  212. package/lib/meta/generated/constants.d.ts +137 -135
  213. package/lib/meta/generated/constants.d.ts.map +1 -1
  214. package/lib/meta/generated/constants.js +162 -129
  215. package/lib/meta/generated/constants.js.map +1 -1
  216. package/lib/meta/generated/live.d.ts +5 -2
  217. package/lib/meta/generated/live.d.ts.map +1 -1
  218. package/lib/meta/generated/live.js +12 -8
  219. package/lib/meta/generated/live.js.map +1 -1
  220. package/lib/meta/generated/types.d.ts +233 -231
  221. package/lib/meta/generated/types.d.ts.map +1 -1
  222. package/lib/meta/generated/types.js +0 -2
  223. package/lib/meta/ontology.d.ts +23 -21
  224. package/lib/meta/ontology.d.ts.map +1 -1
  225. package/lib/meta/ontology.js +100 -104
  226. package/lib/meta/ontology.js.map +1 -1
  227. package/lib/meta/pull.d.ts +8 -6
  228. package/lib/meta/pull.d.ts.map +1 -1
  229. package/lib/meta/pull.js +39 -52
  230. package/lib/meta/pull.js.map +1 -1
  231. package/lib/utils/index.d.ts +8 -8
  232. package/lib/utils/index.js +5 -6
  233. package/lib/utils/links.d.ts +34 -31
  234. package/lib/utils/links.d.ts.map +1 -1
  235. package/lib/utils/links.js +10 -17
  236. package/lib/utils/links.js.map +1 -1
  237. package/lib/utils/paths.d.ts +2 -0
  238. package/lib/utils/paths.d.ts.map +1 -1
  239. package/lib/utils/paths.js +32 -44
  240. package/lib/utils/paths.js.map +1 -1
  241. package/lib/utils/provide.d.ts +2 -0
  242. package/lib/utils/provide.d.ts.map +1 -1
  243. package/lib/utils/provide.js +7 -9
  244. package/lib/utils/provide.js.map +1 -1
  245. package/lib/utils/targets.d.ts +20 -18
  246. package/lib/utils/targets.d.ts.map +1 -1
  247. package/lib/utils/targets.js +0 -1
  248. package/lib/utils/typeNames.d.ts +10 -8
  249. package/lib/utils/typeNames.d.ts.map +1 -1
  250. package/lib/utils/typeNames.js +0 -1
  251. package/lib/utils/types.d.ts +6 -4
  252. package/lib/utils/types.d.ts.map +1 -1
  253. package/lib/utils/types.js +38 -38
  254. package/lib/utils/types.js.map +1 -1
  255. package/lib/utils/uncertain.d.ts +5 -3
  256. package/lib/utils/uncertain.d.ts.map +1 -1
  257. package/lib/utils/uncertain.js +11 -9
  258. package/lib/utils/uncertain.js.map +1 -1
  259. package/lib/utils/validation.d.ts +4 -2
  260. package/lib/utils/validation.d.ts.map +1 -1
  261. package/lib/utils/validation.js +0 -1
  262. package/lib/utils/values.d.ts +18 -18
  263. package/lib/utils/values.d.ts.map +1 -1
  264. package/lib/utils/values.js +0 -1
  265. package/package.json +22 -26
  266. package/lib/OntologyPullConfig.js.map +0 -1
  267. package/lib/cli/index.d.ts.map +0 -1
  268. package/lib/cli/index.test.d.ts +0 -2
  269. package/lib/cli/index.test.d.ts.map +0 -1
  270. package/lib/cli/index.test.js +0 -34
  271. package/lib/cli/index.test.js.map +0 -1
  272. package/lib/cli/pull.test.d.ts +0 -2
  273. package/lib/cli/pull.test.d.ts.map +0 -1
  274. package/lib/cli/pull.test.js +0 -125
  275. package/lib/cli/pull.test.js.map +0 -1
  276. package/lib/examples/generated/constants.d.ts.map +0 -1
  277. package/lib/examples/generated/constants.js.map +0 -1
  278. package/lib/examples/generated/types.js.map +0 -1
  279. package/lib/generate/builders.test.d.ts +0 -2
  280. package/lib/generate/builders.test.d.ts.map +0 -1
  281. package/lib/generate/builders.test.js +0 -49
  282. package/lib/generate/builders.test.js.map +0 -1
  283. package/lib/generate/index.d.ts.map +0 -1
  284. package/lib/generate/index.js.map +0 -1
  285. package/lib/generate/live.test.d.ts +0 -2
  286. package/lib/generate/live.test.d.ts.map +0 -1
  287. package/lib/generate/live.test.js +0 -22
  288. package/lib/generate/live.test.js.map +0 -1
  289. package/lib/generate/ontology.test.d.ts +0 -2
  290. package/lib/generate/ontology.test.d.ts.map +0 -1
  291. package/lib/generate/ontology.test.js +0 -157
  292. package/lib/generate/ontology.test.js.map +0 -1
  293. package/lib/generate/types.test.d.ts +0 -2
  294. package/lib/generate/types.test.d.ts.map +0 -1
  295. package/lib/generate/types.test.js +0 -304
  296. package/lib/generate/types.test.js.map +0 -1
  297. package/lib/index.d.ts.map +0 -1
  298. package/lib/index.js.map +0 -1
  299. package/lib/infer.test.d.ts +0 -2
  300. package/lib/infer.test.d.ts.map +0 -1
  301. package/lib/infer.test.js +0 -125
  302. package/lib/infer.test.js.map +0 -1
  303. package/lib/installation/createMetaOntologyConfiguration.test.d.ts +0 -2
  304. package/lib/installation/createMetaOntologyConfiguration.test.d.ts.map +0 -1
  305. package/lib/installation/createMetaOntologyConfiguration.test.js +0 -20
  306. package/lib/installation/createMetaOntologyConfiguration.test.js.map +0 -1
  307. package/lib/installation/createOntologyBackendInstallation.test.d.ts +0 -2
  308. package/lib/installation/createOntologyBackendInstallation.test.d.ts.map +0 -1
  309. package/lib/installation/createOntologyBackendInstallation.test.js +0 -320
  310. package/lib/installation/createOntologyBackendInstallation.test.js.map +0 -1
  311. package/lib/installation/index.d.ts.map +0 -1
  312. package/lib/installation/index.js.map +0 -1
  313. package/lib/installation/types.js.map +0 -1
  314. package/lib/ir/generated/types.js.map +0 -1
  315. package/lib/ir/index.d.ts.map +0 -1
  316. package/lib/ir/index.js.map +0 -1
  317. package/lib/ir/validate.test.d.ts +0 -2
  318. package/lib/ir/validate.test.d.ts.map +0 -1
  319. package/lib/ir/validate.test.js +0 -1061
  320. package/lib/ir/validate.test.js.map +0 -1
  321. package/lib/json/index.test.d.ts +0 -2
  322. package/lib/json/index.test.d.ts.map +0 -1
  323. package/lib/json/index.test.js +0 -142
  324. package/lib/json/index.test.js.map +0 -1
  325. package/lib/lenses.test.d.ts +0 -2
  326. package/lib/lenses.test.d.ts.map +0 -1
  327. package/lib/lenses.test.js +0 -80
  328. package/lib/lenses.test.js.map +0 -1
  329. package/lib/live/LiveOntology.test.d.ts +0 -2
  330. package/lib/live/LiveOntology.test.d.ts.map +0 -1
  331. package/lib/live/LiveOntology.test.js +0 -507
  332. package/lib/live/LiveOntology.test.js.map +0 -1
  333. package/lib/live/OntologyBackendAdapter.js.map +0 -1
  334. package/lib/live/actions/createLiveOntologyAction.test.d.ts +0 -2
  335. package/lib/live/actions/createLiveOntologyAction.test.d.ts.map +0 -1
  336. package/lib/live/actions/createLiveOntologyAction.test.js +0 -232
  337. package/lib/live/actions/createLiveOntologyAction.test.js.map +0 -1
  338. package/lib/live/actions/prepareActionParameters.test.d.ts +0 -2
  339. package/lib/live/actions/prepareActionParameters.test.d.ts.map +0 -1
  340. package/lib/live/actions/prepareActionParameters.test.js +0 -165
  341. package/lib/live/actions/prepareActionParameters.test.js.map +0 -1
  342. package/lib/live/attachments/attachmentMetadata.test.d.ts +0 -2
  343. package/lib/live/attachments/attachmentMetadata.test.d.ts.map +0 -1
  344. package/lib/live/attachments/attachmentMetadata.test.js +0 -73
  345. package/lib/live/attachments/attachmentMetadata.test.js.map +0 -1
  346. package/lib/live/attachments/createLiveOntologyAttachments.test.d.ts +0 -2
  347. package/lib/live/attachments/createLiveOntologyAttachments.test.d.ts.map +0 -1
  348. package/lib/live/attachments/createLiveOntologyAttachments.test.js +0 -363
  349. package/lib/live/attachments/createLiveOntologyAttachments.test.js.map +0 -1
  350. package/lib/live/attachments/types.js.map +0 -1
  351. package/lib/live/expression.test.d.ts +0 -2
  352. package/lib/live/expression.test.d.ts.map +0 -1
  353. package/lib/live/expression.test.js +0 -311
  354. package/lib/live/expression.test.js.map +0 -1
  355. package/lib/live/index.d.ts.map +0 -1
  356. package/lib/live/index.js.map +0 -1
  357. package/lib/live/mutators/OntologyEdits.test.d.ts +0 -2
  358. package/lib/live/mutators/OntologyEdits.test.d.ts.map +0 -1
  359. package/lib/live/mutators/OntologyEdits.test.js +0 -85
  360. package/lib/live/mutators/OntologyEdits.test.js.map +0 -1
  361. package/lib/live/mutators/createMutatorTx.test.d.ts +0 -2
  362. package/lib/live/mutators/createMutatorTx.test.d.ts.map +0 -1
  363. package/lib/live/mutators/createMutatorTx.test.js +0 -180
  364. package/lib/live/mutators/createMutatorTx.test.js.map +0 -1
  365. package/lib/live/mutators/types.js.map +0 -1
  366. package/lib/live/objects/OntologyObject.js.map +0 -1
  367. package/lib/live/objects/createLiveOntologyObjectCollection.test.d.ts +0 -2
  368. package/lib/live/objects/createLiveOntologyObjectCollection.test.d.ts.map +0 -1
  369. package/lib/live/objects/createLiveOntologyObjectCollection.test.js +0 -310
  370. package/lib/live/objects/createLiveOntologyObjectCollection.test.js.map +0 -1
  371. package/lib/live/outbox/createOntologyOutbox.test.d.ts +0 -2
  372. package/lib/live/outbox/createOntologyOutbox.test.d.ts.map +0 -1
  373. package/lib/live/outbox/createOntologyOutbox.test.js +0 -1030
  374. package/lib/live/outbox/createOntologyOutbox.test.js.map +0 -1
  375. package/lib/meta/generated/types.js.map +0 -1
  376. package/lib/meta/ontology.test.d.ts +0 -2
  377. package/lib/meta/ontology.test.d.ts.map +0 -1
  378. package/lib/meta/ontology.test.js +0 -84
  379. package/lib/meta/ontology.test.js.map +0 -1
  380. package/lib/utils/index.d.ts.map +0 -1
  381. package/lib/utils/index.js.map +0 -1
  382. package/lib/utils/links.test.d.ts +0 -2
  383. package/lib/utils/links.test.d.ts.map +0 -1
  384. package/lib/utils/links.test.js +0 -109
  385. package/lib/utils/links.test.js.map +0 -1
  386. package/lib/utils/paths.test.d.ts +0 -2
  387. package/lib/utils/paths.test.d.ts.map +0 -1
  388. package/lib/utils/paths.test.js +0 -33
  389. package/lib/utils/paths.test.js.map +0 -1
  390. package/lib/utils/targets.js.map +0 -1
  391. package/lib/utils/typeNames.js.map +0 -1
  392. package/lib/utils/types.test.d.ts +0 -2
  393. package/lib/utils/types.test.d.ts.map +0 -1
  394. package/lib/utils/types.test.js +0 -157
  395. package/lib/utils/types.test.js.map +0 -1
  396. package/lib/utils/uncertain.test.d.ts +0 -2
  397. package/lib/utils/uncertain.test.d.ts.map +0 -1
  398. package/lib/utils/uncertain.test.js +0 -14
  399. package/lib/utils/uncertain.test.js.map +0 -1
  400. package/lib/utils/validation.js.map +0 -1
  401. package/lib/utils/values.js.map +0 -1
@@ -1,45 +1,47 @@
1
- import type { Collection } from "@tanstack/db";
1
+ import { Collection } from "@tanstack/db";
2
+ //#region src/live/outbox/types.d.ts
2
3
  export type OntologyOutboxStatus = "queued" | "executing" | "failed";
3
4
  export declare class NonRetryableError extends Error {
4
- constructor(message: string, options?: ErrorOptions);
5
+ constructor(message: string, options?: ErrorOptions);
5
6
  }
6
7
  export interface OntologyActionRequest {
7
- actionTypeName: string;
8
- parameters: Record<string, unknown>;
9
- idempotencyKey: string;
8
+ actionTypeName: string;
9
+ parameters: Record<string, unknown>;
10
+ idempotencyKey: string;
10
11
  }
11
12
  export interface OntologyOutboxEntry {
12
- id: string;
13
- sequence: number;
14
- request: OntologyActionRequest;
15
- visibility?: "confirmed" | "optimistic";
16
- status: OntologyOutboxStatus;
17
- createdAt: number;
18
- updatedAt: number;
19
- attempts: number;
20
- retryable: boolean;
21
- nextAttemptAt: number;
22
- executionId?: string;
23
- lastError?: {
24
- name: string;
25
- message: string;
26
- };
13
+ id: string;
14
+ sequence: number;
15
+ request: OntologyActionRequest;
16
+ visibility?: "confirmed" | "optimistic";
17
+ status: OntologyOutboxStatus;
18
+ createdAt: number;
19
+ updatedAt: number;
20
+ attempts: number;
21
+ retryable: boolean;
22
+ nextAttemptAt: number;
23
+ executionId?: string;
24
+ lastError?: {
25
+ name: string;
26
+ message: string;
27
+ };
27
28
  }
28
29
  export interface EnqueuedOntologyAction<Result = unknown> {
29
- entry: OntologyOutboxEntry;
30
- completed: Promise<Result>;
30
+ entry: OntologyOutboxEntry;
31
+ completed: Promise<Result>;
31
32
  }
32
33
  export interface OntologyOutbox {
33
- readonly collection: Collection<OntologyOutboxEntry, string>;
34
- readonly ready: Promise<void>;
35
- enqueue<Result = unknown>(request: Omit<OntologyActionRequest, "idempotencyKey"> & {
36
- idempotencyKey?: string;
37
- }, options?: {
38
- visibility?: "confirmed" | "optimistic";
39
- }): Promise<EnqueuedOntologyAction<Result>>;
40
- edit(id: string, update: (request: OntologyActionRequest) => void): Promise<OntologyOutboxEntry>;
41
- remove(id: string): Promise<void>;
42
- retry(id: string): Promise<void>;
43
- cleanup(): Promise<void>;
34
+ readonly collection: Collection<OntologyOutboxEntry, string>;
35
+ readonly ready: Promise<void>;
36
+ enqueue<Result = unknown>(request: Omit<OntologyActionRequest, "idempotencyKey"> & {
37
+ idempotencyKey?: string;
38
+ }, options?: {
39
+ visibility?: "confirmed" | "optimistic";
40
+ }): Promise<EnqueuedOntologyAction<Result>>;
41
+ edit(id: string, update: (request: OntologyActionRequest) => void): Promise<OntologyOutboxEntry>;
42
+ remove(id: string): Promise<void>;
43
+ retry(id: string): Promise<void>;
44
+ cleanup(): Promise<void>;
44
45
  }
46
+ //#endregion
45
47
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/live/outbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAErE,qBAAa,iBAAkB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAItD;AAED,MAAM,WAAW,qBAAqB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,UAAU,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC;IACxC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACnB,CAAC;CACL;AAED,MAAM,WAAW,sBAAsB,CAAC,MAAM,GAAG,OAAO;IACpD,KAAK,EAAE,mBAAmB,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,OAAO,CAAC,MAAM,GAAG,OAAO,EACpB,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,GAAG;QACrD,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,EACD,OAAO,CAAC,EAAE;QACN,UAAU,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC;KAC3C,GACF,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/live/outbox/types.ts"],"mappings":";;YAEY;qBAEC,0BAA0B;EACnC,YAAY,iBAAiB,UAAU;;iBAM1B;EACb;EACA,YAAY;EACZ;;iBAGa;EACb;EACA;EACA,SAAS;EACT;EACA,QAAQ;EACR;EACA;EACA;EACA;EACA;EACA;EACA;IACI;IACA;;;iBAIS,uBAAuB;EACpC,OAAO;EACP,WAAW,QAAQ;;iBAGN;WACJ,YAAY,WAAW;WACvB,OAAO;EAChB,QAAQ,kBACJ,SAAS,KAAK;IACV;KAEJ;IACI;MAEL,QAAQ,uBAAuB;EAClC,KAAK,YAAY,SAAS,SAAS,iCAAiC,QAAQ;EAC5E,OAAO,aAAa;EACpB,MAAM,aAAa;EACnB,WAAW"}
@@ -1,7 +1,11 @@
1
- export class NonRetryableError extends Error {
2
- constructor(message, options) {
3
- super(message, options);
4
- this.name = "NonRetryableError";
5
- }
6
- }
1
+ //#region src/live/outbox/types.ts
2
+ var NonRetryableError = class extends Error {
3
+ constructor(message, options) {
4
+ super(message, options);
5
+ this.name = "NonRetryableError";
6
+ }
7
+ };
8
+ //#endregion
9
+ export { NonRetryableError };
10
+
7
11
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/live/outbox/types.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACxC,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACpC,CAAC;CACJ"}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/live/outbox/types.ts"],"sourcesContent":["import type { Collection } from \"@tanstack/db\";\n\nexport type OntologyOutboxStatus = \"queued\" | \"executing\" | \"failed\";\n\nexport class NonRetryableError extends Error {\n constructor(message: string, options?: ErrorOptions) {\n super(message, options);\n this.name = \"NonRetryableError\";\n }\n}\n\nexport interface OntologyActionRequest {\n actionTypeName: string;\n parameters: Record<string, unknown>;\n idempotencyKey: string;\n}\n\nexport interface OntologyOutboxEntry {\n id: string;\n sequence: number;\n request: OntologyActionRequest;\n visibility?: \"confirmed\" | \"optimistic\";\n status: OntologyOutboxStatus;\n createdAt: number;\n updatedAt: number;\n attempts: number;\n retryable: boolean;\n nextAttemptAt: number;\n executionId?: string;\n lastError?: {\n name: string;\n message: string;\n };\n}\n\nexport interface EnqueuedOntologyAction<Result = unknown> {\n entry: OntologyOutboxEntry;\n completed: Promise<Result>;\n}\n\nexport interface OntologyOutbox {\n readonly collection: Collection<OntologyOutboxEntry, string>;\n readonly ready: Promise<void>;\n enqueue<Result = unknown>(\n request: Omit<OntologyActionRequest, \"idempotencyKey\"> & {\n idempotencyKey?: string;\n },\n options?: {\n visibility?: \"confirmed\" | \"optimistic\";\n }\n ): Promise<EnqueuedOntologyAction<Result>>;\n edit(id: string, update: (request: OntologyActionRequest) => void): Promise<OntologyOutboxEntry>;\n remove(id: string): Promise<void>;\n retry(id: string): Promise<void>;\n cleanup(): Promise<void>;\n}\n"],"mappings":";AAIA,IAAa,oBAAb,cAAuC,MAAM;CACzC,YAAY,SAAiB,SAAwB;EACjD,MAAM,SAAS,OAAO;EACtB,KAAK,OAAO;CAChB;AACJ"}
@@ -1,3 +1,5 @@
1
- import type { Collection } from "@tanstack/db";
1
+ import { Collection } from "@tanstack/db";
2
+ //#region src/live/waitForCollectionReady.d.ts
2
3
  export declare function waitForCollectionsReady(collections: Iterable<Collection<Record<string, unknown>, string | number>>): Promise<void>;
4
+ //#endregion
3
5
  //# sourceMappingURL=waitForCollectionReady.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"waitForCollectionReady.d.ts","sourceRoot":"","sources":["../../src/live/waitForCollectionReady.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAkE/C,wBAAsB,uBAAuB,CACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,GAC5E,OAAO,CAAC,IAAI,CAAC,CAEf"}
1
+ {"version":3,"file":"waitForCollectionReady.d.ts","names":[],"sources":["../../src/live/waitForCollectionReady.ts"],"mappings":";;wBAkEsB,wBAClB,aAAa,SAAS,WAAW,6CAClC"}
@@ -1,70 +1,49 @@
1
+ //#region src/live/waitForCollectionReady.ts
1
2
  /**
2
- * Starts idle/on-demand collection synchronization and waits until the
3
- * collection is ready.
4
- *
5
- * TanStack's `onFirstReady` only registers a callback: it does not start an
6
- * idle collection, report terminal errors, or distinguish cleanup from
7
- * readiness. Pending callbacks are also invoked during cleanup. This helper
8
- * starts sync, returns an awaitable promise, and rejects on error or cleanup.
9
- *
10
- * Race-safe: status listeners are registered before starting sync / reading
11
- * the current status, so a transition cannot be missed.
12
- */
3
+ * Starts idle/on-demand collection synchronization and waits until the
4
+ * collection is ready.
5
+ *
6
+ * TanStack's `onFirstReady` only registers a callback: it does not start an
7
+ * idle collection, report terminal errors, or distinguish cleanup from
8
+ * readiness. Pending callbacks are also invoked during cleanup. This helper
9
+ * starts sync, returns an awaitable promise, and rejects on error or cleanup.
10
+ *
11
+ * Race-safe: status listeners are registered before starting sync / reading
12
+ * the current status, so a transition cannot be missed.
13
+ */
13
14
  async function waitForCollectionReady(collection) {
14
- if (collection.status === "ready")
15
- return;
16
- if (collection.status === "error") {
17
- throw new Error(`Collection "${collection.id}" is in an error state.`);
18
- }
19
- if (collection.status === "cleaned-up") {
20
- throw new Error(`Collection "${collection.id}" has been cleaned up.`);
21
- }
22
- await new Promise((resolve, reject) => {
23
- let settled = false;
24
- const finish = (error) => {
25
- if (settled)
26
- return;
27
- settled = true;
28
- off();
29
- if (error)
30
- reject(error);
31
- else
32
- resolve();
33
- };
34
- const off = collection.on("status:change", (event) => {
35
- if (event.status === "ready") {
36
- finish();
37
- }
38
- else if (event.status === "error") {
39
- finish(new Error(`Collection "${collection.id}" is in an error state.`));
40
- }
41
- else if (event.status === "cleaned-up") {
42
- finish(new Error(`Collection "${collection.id}" has been cleaned up.`));
43
- }
44
- });
45
- // Start sync after the listener is attached so we cannot miss ready.
46
- if (collection.status === "idle") {
47
- try {
48
- collection.startSyncImmediate();
49
- }
50
- catch (error) {
51
- finish(error instanceof Error ? error : new Error(String(error)));
52
- return;
53
- }
54
- }
55
- // Close the TOCTOU window for a status that was already terminal.
56
- if (collection.status === "ready") {
57
- finish();
58
- }
59
- else if (collection.status === "error") {
60
- finish(new Error(`Collection "${collection.id}" is in an error state.`));
61
- }
62
- else if (collection.status === "cleaned-up") {
63
- finish(new Error(`Collection "${collection.id}" has been cleaned up.`));
64
- }
65
- });
15
+ if (collection.status === "ready") return;
16
+ if (collection.status === "error") throw new Error(`Collection "${collection.id}" is in an error state.`);
17
+ if (collection.status === "cleaned-up") throw new Error(`Collection "${collection.id}" has been cleaned up.`);
18
+ await new Promise((resolve, reject) => {
19
+ let settled = false;
20
+ const finish = (error) => {
21
+ if (settled) return;
22
+ settled = true;
23
+ off();
24
+ if (error) reject(error);
25
+ else resolve();
26
+ };
27
+ const off = collection.on("status:change", (event) => {
28
+ if (event.status === "ready") finish();
29
+ else if (event.status === "error") finish(/* @__PURE__ */ new Error(`Collection "${collection.id}" is in an error state.`));
30
+ else if (event.status === "cleaned-up") finish(/* @__PURE__ */ new Error(`Collection "${collection.id}" has been cleaned up.`));
31
+ });
32
+ if (collection.status === "idle") try {
33
+ collection.startSyncImmediate();
34
+ } catch (error) {
35
+ finish(error instanceof Error ? error : new Error(String(error)));
36
+ return;
37
+ }
38
+ if (collection.status === "ready") finish();
39
+ else if (collection.status === "error") finish(/* @__PURE__ */ new Error(`Collection "${collection.id}" is in an error state.`));
40
+ else if (collection.status === "cleaned-up") finish(/* @__PURE__ */ new Error(`Collection "${collection.id}" has been cleaned up.`));
41
+ });
66
42
  }
67
- export async function waitForCollectionsReady(collections) {
68
- await Promise.all([...collections].map((collection) => waitForCollectionReady(collection)));
43
+ async function waitForCollectionsReady(collections) {
44
+ await Promise.all([...collections].map((collection) => waitForCollectionReady(collection)));
69
45
  }
46
+ //#endregion
47
+ export { waitForCollectionsReady };
48
+
70
49
  //# sourceMappingURL=waitForCollectionReady.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"waitForCollectionReady.js","sourceRoot":"","sources":["../../src/live/waitForCollectionReady.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,sBAAsB,CACjC,UAAgE;IAEhE,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO;IAC1C,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,yBAAyB,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,wBAAwB,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;YAC7B,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,GAAG,EAAE,CAAC;YACN,IAAI,KAAK;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;;gBACpB,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC;QAEF,MAAM,GAAG,GAAG,UAAU,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;YACjD,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC3B,MAAM,EAAE,CAAC;YACb,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC;YAC7E,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,wBAAwB,CAAC,CAAC,CAAC;YAC5E,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACD,UAAU,CAAC,kBAAkB,EAAE,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClE,OAAO;YACX,CAAC;QACL,CAAC;QAED,kEAAkE;QAClE,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAChC,MAAM,EAAE,CAAC;QACb,CAAC;aAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,IAAI,UAAU,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,EAAE,wBAAwB,CAAC,CAAC,CAAC;QAC5E,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CACzC,WAA2E;IAE3E,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"waitForCollectionReady.js","names":[],"sources":["../../src/live/waitForCollectionReady.ts"],"sourcesContent":["import type { Collection } from \"@tanstack/db\";\n\n/**\n * Starts idle/on-demand collection synchronization and waits until the\n * collection is ready.\n *\n * TanStack's `onFirstReady` only registers a callback: it does not start an\n * idle collection, report terminal errors, or distinguish cleanup from\n * readiness. Pending callbacks are also invoked during cleanup. This helper\n * starts sync, returns an awaitable promise, and rejects on error or cleanup.\n *\n * Race-safe: status listeners are registered before starting sync / reading\n * the current status, so a transition cannot be missed.\n */\nasync function waitForCollectionReady(\n collection: Collection<Record<string, unknown>, string | number>\n): Promise<void> {\n if (collection.status === \"ready\") return;\n if (collection.status === \"error\") {\n throw new Error(`Collection \"${collection.id}\" is in an error state.`);\n }\n if (collection.status === \"cleaned-up\") {\n throw new Error(`Collection \"${collection.id}\" has been cleaned up.`);\n }\n\n await new Promise<void>((resolve, reject) => {\n let settled = false;\n const finish = (error?: Error) => {\n if (settled) return;\n settled = true;\n off();\n if (error) reject(error);\n else resolve();\n };\n\n const off = collection.on(\"status:change\", (event) => {\n if (event.status === \"ready\") {\n finish();\n } else if (event.status === \"error\") {\n finish(new Error(`Collection \"${collection.id}\" is in an error state.`));\n } else if (event.status === \"cleaned-up\") {\n finish(new Error(`Collection \"${collection.id}\" has been cleaned up.`));\n }\n });\n\n // Start sync after the listener is attached so we cannot miss ready.\n if (collection.status === \"idle\") {\n try {\n collection.startSyncImmediate();\n } catch (error) {\n finish(error instanceof Error ? error : new Error(String(error)));\n return;\n }\n }\n\n // Close the TOCTOU window for a status that was already terminal.\n if (collection.status === \"ready\") {\n finish();\n } else if (collection.status === \"error\") {\n finish(new Error(`Collection \"${collection.id}\" is in an error state.`));\n } else if (collection.status === \"cleaned-up\") {\n finish(new Error(`Collection \"${collection.id}\" has been cleaned up.`));\n }\n });\n}\n\nexport async function waitForCollectionsReady(\n collections: Iterable<Collection<Record<string, unknown>, string | number>>\n): Promise<void> {\n await Promise.all([...collections].map((collection) => waitForCollectionReady(collection)));\n}\n"],"mappings":";;;;;;;;;;;;;AAcA,eAAe,uBACX,YACa;CACb,IAAI,WAAW,WAAW,SAAS;CACnC,IAAI,WAAW,WAAW,SACtB,MAAM,IAAI,MAAM,eAAe,WAAW,GAAG,wBAAwB;CAEzE,IAAI,WAAW,WAAW,cACtB,MAAM,IAAI,MAAM,eAAe,WAAW,GAAG,uBAAuB;CAGxE,MAAM,IAAI,SAAe,SAAS,WAAW;EACzC,IAAI,UAAU;EACd,MAAM,UAAU,UAAkB;GAC9B,IAAI,SAAS;GACb,UAAU;GACV,IAAI;GACJ,IAAI,OAAO,OAAO,KAAK;QAClB,QAAQ;EACjB;EAEA,MAAM,MAAM,WAAW,GAAG,kBAAkB,UAAU;GAClD,IAAI,MAAM,WAAW,SACjB,OAAO;QACJ,IAAI,MAAM,WAAW,SACxB,uBAAO,IAAI,MAAM,eAAe,WAAW,GAAG,wBAAwB,CAAC;QACpE,IAAI,MAAM,WAAW,cACxB,uBAAO,IAAI,MAAM,eAAe,WAAW,GAAG,uBAAuB,CAAC;EAE9E,CAAC;EAGD,IAAI,WAAW,WAAW,QACtB,IAAI;GACA,WAAW,mBAAmB;EAClC,SAAS,OAAO;GACZ,OAAO,iBAAiB,QAAQ,QAAQ,IAAI,MAAM,OAAO,KAAK,CAAC,CAAC;GAChE;EACJ;EAIJ,IAAI,WAAW,WAAW,SACtB,OAAO;OACJ,IAAI,WAAW,WAAW,SAC7B,uBAAO,IAAI,MAAM,eAAe,WAAW,GAAG,wBAAwB,CAAC;OACpE,IAAI,WAAW,WAAW,cAC7B,uBAAO,IAAI,MAAM,eAAe,WAAW,GAAG,uBAAuB,CAAC;CAE9E,CAAC;AACL;AAEA,eAAsB,wBAClB,aACa;CACb,MAAM,QAAQ,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,KAAK,eAAe,uBAAuB,UAAU,CAAC,CAAC;AAC9F"}
@@ -1,4 +1,7 @@
1
- import type { OntologyIR } from "../ir/index.js";
2
- import type { OntologyBackendAdapter } from "../live/OntologyBackendAdapter.js";
1
+ import { OntologyIR } from "../ir/generated/types.js";
2
+ import "../ir/index.js";
3
+ import { OntologyBackendAdapter } from "../live/OntologyBackendAdapter.js";
4
+ //#region src/meta/createLocalMetaOntologyBackendAdapter.d.ts
3
5
  export declare function createLocalMetaOntologyBackendAdapter(ir: OntologyIR): OntologyBackendAdapter;
6
+ //#endregion
4
7
  //# sourceMappingURL=createLocalMetaOntologyBackendAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createLocalMetaOntologyBackendAdapter.d.ts","sourceRoot":"","sources":["../../src/meta/createLocalMetaOntologyBackendAdapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAA6B,MAAM,mCAAmC,CAAC;AAiB3G,wBAAgB,qCAAqC,CAAC,EAAE,EAAE,UAAU,GAAG,sBAAsB,CAmC5F"}
1
+ {"version":3,"file":"createLocalMetaOntologyBackendAdapter.d.ts","names":[],"sources":["../../src/meta/createLocalMetaOntologyBackendAdapter.ts"],"mappings":";;;;wBAmBgB,sCAAsC,IAAI,aAAa"}
@@ -1,46 +1,44 @@
1
1
  import { localOnlyCollectionOptions } from "@tanstack/db";
2
+ //#region src/meta/createLocalMetaOntologyBackendAdapter.ts
2
3
  function localId(kind, name) {
3
- return `local:${kind}:${encodeURIComponent(name)}`;
4
+ return `local:${kind}:${encodeURIComponent(name)}`;
4
5
  }
5
6
  function collectionOptions(rows, getKey) {
6
- return localOnlyCollectionOptions({
7
- getKey,
8
- initialData: rows,
9
- });
7
+ return localOnlyCollectionOptions({
8
+ getKey,
9
+ initialData: rows
10
+ });
10
11
  }
11
- export function createLocalMetaOntologyBackendAdapter(ir) {
12
- const objectTypes = ir.objectTypes.map((objectType) => ({
13
- ...objectType,
14
- id: localId("ObjectType", objectType.name),
15
- properties: objectType.properties.map((property) => ({
16
- ...property,
17
- id: localId("Property", `${objectType.name}.${property.name}`),
18
- })),
19
- }));
20
- const actionTypes = ir.actionTypes.map((actionType) => ({
21
- ...actionType,
22
- id: localId("ActionType", actionType.name),
23
- }));
24
- return {
25
- name: "local-metadata",
26
- getCollectionOptions(objectType) {
27
- switch (objectType) {
28
- case "ObjectType":
29
- return collectionOptions(objectTypes, (row) => row.name);
30
- case "ValueType":
31
- return collectionOptions(ir.types, (row) => row.name);
32
- case "LinkType":
33
- return collectionOptions(ir.linkTypes, (row) => row.id);
34
- case "ActionType":
35
- return collectionOptions(actionTypes, (row) => row.name);
36
- case "QueryFunctionType":
37
- return collectionOptions(ir.queryFunctionTypes, (row) => row.name);
38
- default:
39
- throw new Error(`Unsupported local metadata object type "${objectType}".`);
40
- }
41
- },
42
- applyAction: () => Promise.reject(new Error("Local metadata is read-only.")),
43
- runQueryFunction: () => Promise.reject(new Error("Local metadata has no query functions.")),
44
- };
12
+ function createLocalMetaOntologyBackendAdapter(ir) {
13
+ const objectTypes = ir.objectTypes.map((objectType) => ({
14
+ ...objectType,
15
+ id: localId("ObjectType", objectType.name),
16
+ properties: objectType.properties.map((property) => ({
17
+ ...property,
18
+ id: localId("Property", `${objectType.name}.${property.name}`)
19
+ }))
20
+ }));
21
+ const actionTypes = ir.actionTypes.map((actionType) => ({
22
+ ...actionType,
23
+ id: localId("ActionType", actionType.name)
24
+ }));
25
+ return {
26
+ name: "local-metadata",
27
+ getCollectionOptions(objectType) {
28
+ switch (objectType) {
29
+ case "ObjectType": return collectionOptions(objectTypes, (row) => row.name);
30
+ case "ValueType": return collectionOptions(ir.types, (row) => row.name);
31
+ case "LinkType": return collectionOptions(ir.linkTypes, (row) => row.id);
32
+ case "ActionType": return collectionOptions(actionTypes, (row) => row.name);
33
+ case "QueryFunctionType": return collectionOptions(ir.queryFunctionTypes, (row) => row.name);
34
+ default: throw new Error(`Unsupported local metadata object type "${objectType}".`);
35
+ }
36
+ },
37
+ applyAction: () => Promise.reject(/* @__PURE__ */ new Error("Local metadata is read-only.")),
38
+ runQueryFunction: () => Promise.reject(/* @__PURE__ */ new Error("Local metadata has no query functions."))
39
+ };
45
40
  }
41
+ //#endregion
42
+ export { createLocalMetaOntologyBackendAdapter };
43
+
46
44
  //# sourceMappingURL=createLocalMetaOntologyBackendAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createLocalMetaOntologyBackendAdapter.js","sourceRoot":"","sources":["../../src/meta/createLocalMetaOntologyBackendAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK1D,SAAS,OAAO,CAAC,IAA8C,EAAE,IAAY;IACzE,OAAO,SAAS,IAAI,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CACtB,IAAS,EACT,MAA0B;IAE1B,OAAO,0BAA0B,CAAC;QAC9B,MAAM;QACN,WAAW,EAAE,IAAI;KACpB,CAAyC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,EAAc;IAChE,MAAM,WAAW,GAAiB,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAClE,GAAG,UAAU;QACb,EAAE,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC;QAC1C,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,GAAG,QAAQ;YACX,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;SACjE,CAAC,CAAC;KACN,CAAC,CAAC,CAAC;IACJ,MAAM,WAAW,GAAiB,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAClE,GAAG,UAAU;QACb,EAAE,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC;KAC7C,CAAC,CAAC,CAAC;IAEJ,OAAO;QACH,IAAI,EAAE,gBAAgB;QACtB,oBAAoB,CAAC,UAAU;YAC3B,QAAQ,UAAU,EAAE,CAAC;gBACjB,KAAK,YAAY;oBACb,OAAO,iBAAiB,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC7D,KAAK,WAAW;oBACZ,OAAO,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1D,KAAK,UAAU;oBACX,OAAO,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5D,KAAK,YAAY;oBACb,OAAO,iBAAiB,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC7D,KAAK,mBAAmB;oBACpB,OAAO,iBAAiB,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvE;oBACI,MAAM,IAAI,KAAK,CAAC,2CAA2C,UAAU,IAAI,CAAC,CAAC;YACnF,CAAC;QACL,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC5E,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;KAC9F,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"createLocalMetaOntologyBackendAdapter.js","names":[],"sources":["../../src/meta/createLocalMetaOntologyBackendAdapter.ts"],"sourcesContent":["import { localOnlyCollectionOptions } from \"@tanstack/db\";\nimport type { OntologyIR } from \"../ir/index.js\";\nimport type { OntologyBackendAdapter, OntologyCollectionOptions } from \"../live/OntologyBackendAdapter.js\";\nimport type { ActionType, ObjectType } from \"./generated/types.js\";\n\nfunction localId(kind: \"ActionType\" | \"ObjectType\" | \"Property\", name: string): string {\n return `local:${kind}:${encodeURIComponent(name)}`;\n}\n\nfunction collectionOptions<T extends object>(\n rows: T[],\n getKey: (row: T) => string\n): OntologyCollectionOptions {\n return localOnlyCollectionOptions({\n getKey,\n initialData: rows,\n }) as unknown as OntologyCollectionOptions;\n}\n\nexport function createLocalMetaOntologyBackendAdapter(ir: OntologyIR): OntologyBackendAdapter {\n const objectTypes: ObjectType[] = ir.objectTypes.map((objectType) => ({\n ...objectType,\n id: localId(\"ObjectType\", objectType.name),\n properties: objectType.properties.map((property) => ({\n ...property,\n id: localId(\"Property\", `${objectType.name}.${property.name}`),\n })),\n }));\n const actionTypes: ActionType[] = ir.actionTypes.map((actionType) => ({\n ...actionType,\n id: localId(\"ActionType\", actionType.name),\n }));\n\n return {\n name: \"local-metadata\",\n getCollectionOptions(objectType) {\n switch (objectType) {\n case \"ObjectType\":\n return collectionOptions(objectTypes, (row) => row.name);\n case \"ValueType\":\n return collectionOptions(ir.types, (row) => row.name);\n case \"LinkType\":\n return collectionOptions(ir.linkTypes, (row) => row.id);\n case \"ActionType\":\n return collectionOptions(actionTypes, (row) => row.name);\n case \"QueryFunctionType\":\n return collectionOptions(ir.queryFunctionTypes, (row) => row.name);\n default:\n throw new Error(`Unsupported local metadata object type \"${objectType}\".`);\n }\n },\n applyAction: () => Promise.reject(new Error(\"Local metadata is read-only.\")),\n runQueryFunction: () => Promise.reject(new Error(\"Local metadata has no query functions.\")),\n };\n}\n"],"mappings":";;AAKA,SAAS,QAAQ,MAAgD,MAAsB;CACnF,OAAO,SAAS,KAAK,GAAG,mBAAmB,IAAI;AACnD;AAEA,SAAS,kBACL,MACA,QACyB;CACzB,OAAO,2BAA2B;EAC9B;EACA,aAAa;CACjB,CAAC;AACL;AAEA,SAAgB,sCAAsC,IAAwC;CAC1F,MAAM,cAA4B,GAAG,YAAY,KAAK,gBAAgB;EAClE,GAAG;EACH,IAAI,QAAQ,cAAc,WAAW,IAAI;EACzC,YAAY,WAAW,WAAW,KAAK,cAAc;GACjD,GAAG;GACH,IAAI,QAAQ,YAAY,GAAG,WAAW,KAAK,GAAG,SAAS,MAAM;EACjE,EAAE;CACN,EAAE;CACF,MAAM,cAA4B,GAAG,YAAY,KAAK,gBAAgB;EAClE,GAAG;EACH,IAAI,QAAQ,cAAc,WAAW,IAAI;CAC7C,EAAE;CAEF,OAAO;EACH,MAAM;EACN,qBAAqB,YAAY;GAC7B,QAAQ,YAAR;IACI,KAAK,cACD,OAAO,kBAAkB,cAAc,QAAQ,IAAI,IAAI;IAC3D,KAAK,aACD,OAAO,kBAAkB,GAAG,QAAQ,QAAQ,IAAI,IAAI;IACxD,KAAK,YACD,OAAO,kBAAkB,GAAG,YAAY,QAAQ,IAAI,EAAE;IAC1D,KAAK,cACD,OAAO,kBAAkB,cAAc,QAAQ,IAAI,IAAI;IAC3D,KAAK,qBACD,OAAO,kBAAkB,GAAG,qBAAqB,QAAQ,IAAI,IAAI;IACrE,SACI,MAAM,IAAI,MAAM,2CAA2C,WAAW,GAAG;GACjF;EACJ;EACA,mBAAmB,QAAQ,uBAAO,IAAI,MAAM,8BAA8B,CAAC;EAC3E,wBAAwB,QAAQ,uBAAO,IAAI,MAAM,wCAAwC,CAAC;CAC9F;AACJ"}