@party-stack/ontology 0.18.0 → 0.19.1

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 (406) 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/_virtual/_rolldown/runtime.js +13 -0
  5. package/lib/cli/format.d.ts +4 -0
  6. package/lib/cli/format.d.ts.map +1 -0
  7. package/lib/cli/format.js +19 -0
  8. package/lib/cli/format.js.map +1 -0
  9. package/lib/cli/generate.d.ts +6 -5
  10. package/lib/cli/generate.d.ts.map +1 -1
  11. package/lib/cli/generate.js +86 -110
  12. package/lib/cli/generate.js.map +1 -1
  13. package/lib/cli/index.d.ts +1 -3
  14. package/lib/cli/index.js +42 -59
  15. package/lib/cli/index.js.map +1 -1
  16. package/lib/cli/pull.d.ts +3 -1
  17. package/lib/cli/pull.d.ts.map +1 -1
  18. package/lib/cli/pull.js +42 -60
  19. package/lib/cli/pull.js.map +1 -1
  20. package/lib/examples/blog.d.ts +347 -345
  21. package/lib/examples/blog.d.ts.map +1 -1
  22. package/lib/examples/blog.js +350 -337
  23. package/lib/examples/blog.js.map +1 -1
  24. package/lib/examples/blog.live-queries.d.ts +8 -3
  25. package/lib/examples/blog.live-queries.d.ts.map +1 -1
  26. package/lib/examples/blog.live-queries.js +28 -44
  27. package/lib/examples/blog.live-queries.js.map +1 -1
  28. package/lib/examples/generated/constants.d.ts +1 -2
  29. package/lib/examples/generated/constants.js +0 -2
  30. package/lib/examples/generated/live.d.ts +5 -3
  31. package/lib/examples/generated/live.d.ts.map +1 -1
  32. package/lib/examples/generated/live.js +12 -8
  33. package/lib/examples/generated/live.js.map +1 -1
  34. package/lib/examples/generated/types.d.ts +52 -50
  35. package/lib/examples/generated/types.d.ts.map +1 -1
  36. package/lib/examples/generated/types.js +0 -2
  37. package/lib/generate/builders.d.ts +8 -5
  38. package/lib/generate/builders.d.ts.map +1 -1
  39. package/lib/generate/builders.js +53 -55
  40. package/lib/generate/builders.js.map +1 -1
  41. package/lib/generate/constants.d.ts +3 -1
  42. package/lib/generate/constants.d.ts.map +1 -1
  43. package/lib/generate/constants.js +23 -26
  44. package/lib/generate/constants.js.map +1 -1
  45. package/lib/generate/index.d.ts +6 -6
  46. package/lib/generate/index.js +6 -6
  47. package/lib/generate/live.d.ts +8 -6
  48. package/lib/generate/live.d.ts.map +1 -1
  49. package/lib/generate/live.js +43 -42
  50. package/lib/generate/live.js.map +1 -1
  51. package/lib/generate/ontology.d.ts +4 -2
  52. package/lib/generate/ontology.d.ts.map +1 -1
  53. package/lib/generate/ontology.js +453 -354
  54. package/lib/generate/ontology.js.map +1 -1
  55. package/lib/generate/types.d.ts +7 -6
  56. package/lib/generate/types.d.ts.map +1 -1
  57. package/lib/generate/types.js +190 -262
  58. package/lib/generate/types.js.map +1 -1
  59. package/lib/generate/utils/buildJsDocs.d.ts +7 -4
  60. package/lib/generate/utils/buildJsDocs.d.ts.map +1 -1
  61. package/lib/generate/utils/buildJsDocs.js +14 -10
  62. package/lib/generate/utils/buildJsDocs.js.map +1 -1
  63. package/lib/index.d.ts +30 -13
  64. package/lib/index.js +18 -10
  65. package/lib/infer.d.ts +129 -152
  66. package/lib/infer.d.ts.map +1 -1
  67. package/lib/infer.js +10 -6
  68. package/lib/infer.js.map +1 -1
  69. package/lib/installation/createMetaOntologyConfiguration.d.ts +6 -3
  70. package/lib/installation/createMetaOntologyConfiguration.d.ts.map +1 -1
  71. package/lib/installation/createMetaOntologyConfiguration.js +13 -11
  72. package/lib/installation/createMetaOntologyConfiguration.js.map +1 -1
  73. package/lib/installation/createOntologyBackendInstallation.d.ts +3 -1
  74. package/lib/installation/createOntologyBackendInstallation.d.ts.map +1 -1
  75. package/lib/installation/createOntologyBackendInstallation.js +205 -268
  76. package/lib/installation/createOntologyBackendInstallation.js.map +1 -1
  77. package/lib/installation/index.d.ts +4 -4
  78. package/lib/installation/index.js +3 -3
  79. package/lib/installation/types.d.ts +83 -80
  80. package/lib/installation/types.d.ts.map +1 -1
  81. package/lib/installation/types.js +0 -1
  82. package/lib/ir/generated/builders.d.ts +294 -382
  83. package/lib/ir/generated/builders.d.ts.map +1 -1
  84. package/lib/ir/generated/builders.js +180 -119
  85. package/lib/ir/generated/builders.js.map +1 -1
  86. package/lib/ir/generated/constants.d.ts +137 -135
  87. package/lib/ir/generated/constants.d.ts.map +1 -1
  88. package/lib/ir/generated/constants.js +162 -129
  89. package/lib/ir/generated/constants.js.map +1 -1
  90. package/lib/ir/generated/types.d.ts +239 -234
  91. package/lib/ir/generated/types.d.ts.map +1 -1
  92. package/lib/ir/generated/types.js +0 -2
  93. package/lib/ir/index.d.ts +4 -4
  94. package/lib/ir/index.js +3 -4
  95. package/lib/ir/schema.d.ts +2174 -2172
  96. package/lib/ir/schema.d.ts.map +1 -1
  97. package/lib/ir/schema.js +1184 -1343
  98. package/lib/ir/schema.js.map +1 -1
  99. package/lib/ir/validate.d.ts +5 -3
  100. package/lib/ir/validate.d.ts.map +1 -1
  101. package/lib/ir/validate.js +589 -707
  102. package/lib/ir/validate.js.map +1 -1
  103. package/lib/json/index.d.ts +10 -8
  104. package/lib/json/index.d.ts.map +1 -1
  105. package/lib/json/index.js +101 -135
  106. package/lib/json/index.js.map +1 -1
  107. package/lib/lenses.d.ts +7 -4
  108. package/lib/lenses.d.ts.map +1 -1
  109. package/lib/lenses.js +96 -132
  110. package/lib/lenses.js.map +1 -1
  111. package/lib/live/LiveOntology.d.ts +55 -60
  112. package/lib/live/LiveOntology.d.ts.map +1 -1
  113. package/lib/live/LiveOntology.js +98 -124
  114. package/lib/live/LiveOntology.js.map +1 -1
  115. package/lib/live/OntologyBackendAdapter.d.ts +79 -76
  116. package/lib/live/OntologyBackendAdapter.d.ts.map +1 -1
  117. package/lib/live/OntologyBackendAdapter.js +0 -1
  118. package/lib/live/actions/createLiveOntologyAction.d.ts +27 -24
  119. package/lib/live/actions/createLiveOntologyAction.d.ts.map +1 -1
  120. package/lib/live/actions/createLiveOntologyAction.js +24 -21
  121. package/lib/live/actions/createLiveOntologyAction.js.map +1 -1
  122. package/lib/live/actions/createLiveOntologyActions.d.ts +23 -20
  123. package/lib/live/actions/createLiveOntologyActions.d.ts.map +1 -1
  124. package/lib/live/actions/createLiveOntologyActions.js +131 -161
  125. package/lib/live/actions/createLiveOntologyActions.js.map +1 -1
  126. package/lib/live/actions/prepareActionParameters.d.ts +14 -11
  127. package/lib/live/actions/prepareActionParameters.d.ts.map +1 -1
  128. package/lib/live/actions/prepareActionParameters.js +190 -228
  129. package/lib/live/actions/prepareActionParameters.js.map +1 -1
  130. package/lib/live/attachments/attachmentSources.d.ts +7 -4
  131. package/lib/live/attachments/attachmentSources.d.ts.map +1 -1
  132. package/lib/live/attachments/attachmentSources.js +55 -71
  133. package/lib/live/attachments/attachmentSources.js.map +1 -1
  134. package/lib/live/attachments/createLiveOntologyAttachments.d.ts +47 -45
  135. package/lib/live/attachments/createLiveOntologyAttachments.d.ts.map +1 -1
  136. package/lib/live/attachments/createLiveOntologyAttachments.js +65 -83
  137. package/lib/live/attachments/createLiveOntologyAttachments.js.map +1 -1
  138. package/lib/live/attachments/types.d.ts +10 -9
  139. package/lib/live/attachments/types.d.ts.map +1 -1
  140. package/lib/live/attachments/types.js +0 -1
  141. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.d.ts +3 -1
  142. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.d.ts.map +1 -1
  143. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.js +5 -3
  144. package/lib/live/attachments/unsupportedOntologyAttachmentsAdapter.js.map +1 -1
  145. package/lib/live/expression.d.ts +16 -14
  146. package/lib/live/expression.d.ts.map +1 -1
  147. package/lib/live/expression.js +142 -223
  148. package/lib/live/expression.js.map +1 -1
  149. package/lib/live/index.d.ts +12 -9
  150. package/lib/live/index.js +6 -8
  151. package/lib/live/mutators/OntologyEdits.d.ts +12 -9
  152. package/lib/live/mutators/OntologyEdits.d.ts.map +1 -1
  153. package/lib/live/mutators/OntologyEdits.js +57 -74
  154. package/lib/live/mutators/OntologyEdits.js.map +1 -1
  155. package/lib/live/mutators/createMutatorTx.d.ts +7 -5
  156. package/lib/live/mutators/createMutatorTx.d.ts.map +1 -1
  157. package/lib/live/mutators/createMutatorTx.js +53 -69
  158. package/lib/live/mutators/createMutatorTx.js.map +1 -1
  159. package/lib/live/mutators/runOptimisticAction.d.ts +16 -13
  160. package/lib/live/mutators/runOptimisticAction.d.ts.map +1 -1
  161. package/lib/live/mutators/runOptimisticAction.js +26 -26
  162. package/lib/live/mutators/runOptimisticAction.js.map +1 -1
  163. package/lib/live/mutators/types.d.ts +18 -16
  164. package/lib/live/mutators/types.d.ts.map +1 -1
  165. package/lib/live/mutators/types.js +0 -1
  166. package/lib/live/objects/OntologyObject.d.ts +2 -0
  167. package/lib/live/objects/OntologyObject.d.ts.map +1 -1
  168. package/lib/live/objects/OntologyObject.js +0 -1
  169. package/lib/live/objects/createLiveOntologyObjectCollection.d.ts +13 -10
  170. package/lib/live/objects/createLiveOntologyObjectCollection.d.ts.map +1 -1
  171. package/lib/live/objects/createLiveOntologyObjectCollection.js +49 -53
  172. package/lib/live/objects/createLiveOntologyObjectCollection.js.map +1 -1
  173. package/lib/live/objects/ontologyObjectCollectionId.d.ts +2 -0
  174. package/lib/live/objects/ontologyObjectCollectionId.d.ts.map +1 -1
  175. package/lib/live/objects/ontologyObjectCollectionId.js +6 -2
  176. package/lib/live/objects/ontologyObjectCollectionId.js.map +1 -1
  177. package/lib/live/outbox/createOntologyOutbox.d.ts +16 -14
  178. package/lib/live/outbox/createOntologyOutbox.d.ts.map +1 -1
  179. package/lib/live/outbox/createOntologyOutbox.js +275 -326
  180. package/lib/live/outbox/createOntologyOutbox.js.map +1 -1
  181. package/lib/live/outbox/leaderExecutor.d.ts +15 -13
  182. package/lib/live/outbox/leaderExecutor.d.ts.map +1 -1
  183. package/lib/live/outbox/leaderExecutor.js +114 -153
  184. package/lib/live/outbox/leaderExecutor.js.map +1 -1
  185. package/lib/live/outbox/outboxService.d.ts +4 -2
  186. package/lib/live/outbox/outboxService.d.ts.map +1 -1
  187. package/lib/live/outbox/outboxService.js +66 -71
  188. package/lib/live/outbox/outboxService.js.map +1 -1
  189. package/lib/live/outbox/projectionManager.d.ts +26 -24
  190. package/lib/live/outbox/projectionManager.d.ts.map +1 -1
  191. package/lib/live/outbox/projectionManager.js +121 -147
  192. package/lib/live/outbox/projectionManager.js.map +1 -1
  193. package/lib/live/outbox/repository.d.ts +27 -25
  194. package/lib/live/outbox/repository.d.ts.map +1 -1
  195. package/lib/live/outbox/repository.js +192 -241
  196. package/lib/live/outbox/repository.js.map +1 -1
  197. package/lib/live/outbox/service.d.ts +52 -50
  198. package/lib/live/outbox/service.d.ts.map +1 -1
  199. package/lib/live/outbox/service.js +5 -1
  200. package/lib/live/outbox/service.js.map +1 -1
  201. package/lib/live/outbox/types.d.ts +35 -33
  202. package/lib/live/outbox/types.d.ts.map +1 -1
  203. package/lib/live/outbox/types.js +10 -6
  204. package/lib/live/outbox/types.js.map +1 -1
  205. package/lib/live/waitForCollectionReady.d.ts +3 -1
  206. package/lib/live/waitForCollectionReady.d.ts.map +1 -1
  207. package/lib/live/waitForCollectionReady.js +44 -65
  208. package/lib/live/waitForCollectionReady.js.map +1 -1
  209. package/lib/meta/createLocalMetaOntologyBackendAdapter.d.ts +5 -2
  210. package/lib/meta/createLocalMetaOntologyBackendAdapter.d.ts.map +1 -1
  211. package/lib/meta/createLocalMetaOntologyBackendAdapter.js +37 -39
  212. package/lib/meta/createLocalMetaOntologyBackendAdapter.js.map +1 -1
  213. package/lib/meta/generated/constants.d.ts +137 -135
  214. package/lib/meta/generated/constants.d.ts.map +1 -1
  215. package/lib/meta/generated/constants.js +162 -129
  216. package/lib/meta/generated/constants.js.map +1 -1
  217. package/lib/meta/generated/live.d.ts +5 -2
  218. package/lib/meta/generated/live.d.ts.map +1 -1
  219. package/lib/meta/generated/live.js +12 -8
  220. package/lib/meta/generated/live.js.map +1 -1
  221. package/lib/meta/generated/types.d.ts +233 -231
  222. package/lib/meta/generated/types.d.ts.map +1 -1
  223. package/lib/meta/generated/types.js +0 -2
  224. package/lib/meta/ontology.d.ts +23 -21
  225. package/lib/meta/ontology.d.ts.map +1 -1
  226. package/lib/meta/ontology.js +100 -104
  227. package/lib/meta/ontology.js.map +1 -1
  228. package/lib/meta/pull.d.ts +8 -6
  229. package/lib/meta/pull.d.ts.map +1 -1
  230. package/lib/meta/pull.js +39 -52
  231. package/lib/meta/pull.js.map +1 -1
  232. package/lib/utils/index.d.ts +8 -8
  233. package/lib/utils/index.js +5 -6
  234. package/lib/utils/links.d.ts +34 -32
  235. package/lib/utils/links.d.ts.map +1 -1
  236. package/lib/utils/links.js +10 -17
  237. package/lib/utils/links.js.map +1 -1
  238. package/lib/utils/paths.d.ts +2 -0
  239. package/lib/utils/paths.d.ts.map +1 -1
  240. package/lib/utils/paths.js +32 -44
  241. package/lib/utils/paths.js.map +1 -1
  242. package/lib/utils/provide.d.ts +2 -0
  243. package/lib/utils/provide.d.ts.map +1 -1
  244. package/lib/utils/provide.js +7 -9
  245. package/lib/utils/provide.js.map +1 -1
  246. package/lib/utils/targets.d.ts +20 -18
  247. package/lib/utils/targets.d.ts.map +1 -1
  248. package/lib/utils/targets.js +0 -1
  249. package/lib/utils/typeNames.d.ts +10 -8
  250. package/lib/utils/typeNames.d.ts.map +1 -1
  251. package/lib/utils/typeNames.js +0 -1
  252. package/lib/utils/types.d.ts +6 -4
  253. package/lib/utils/types.d.ts.map +1 -1
  254. package/lib/utils/types.js +38 -38
  255. package/lib/utils/types.js.map +1 -1
  256. package/lib/utils/uncertain.d.ts +5 -3
  257. package/lib/utils/uncertain.d.ts.map +1 -1
  258. package/lib/utils/uncertain.js +11 -9
  259. package/lib/utils/uncertain.js.map +1 -1
  260. package/lib/utils/validation.d.ts +4 -2
  261. package/lib/utils/validation.d.ts.map +1 -1
  262. package/lib/utils/validation.js +0 -1
  263. package/lib/utils/values.d.ts +21 -18
  264. package/lib/utils/values.d.ts.map +1 -1
  265. package/lib/utils/values.js +0 -1
  266. package/package.json +22 -25
  267. package/lib/OntologyPullConfig.js.map +0 -1
  268. package/lib/cli/index.d.ts.map +0 -1
  269. package/lib/cli/index.test.d.ts +0 -2
  270. package/lib/cli/index.test.d.ts.map +0 -1
  271. package/lib/cli/index.test.js +0 -34
  272. package/lib/cli/index.test.js.map +0 -1
  273. package/lib/cli/pull.test.d.ts +0 -2
  274. package/lib/cli/pull.test.d.ts.map +0 -1
  275. package/lib/cli/pull.test.js +0 -125
  276. package/lib/cli/pull.test.js.map +0 -1
  277. package/lib/examples/generated/constants.d.ts.map +0 -1
  278. package/lib/examples/generated/constants.js.map +0 -1
  279. package/lib/examples/generated/types.js.map +0 -1
  280. package/lib/generate/builders.test.d.ts +0 -2
  281. package/lib/generate/builders.test.d.ts.map +0 -1
  282. package/lib/generate/builders.test.js +0 -49
  283. package/lib/generate/builders.test.js.map +0 -1
  284. package/lib/generate/index.d.ts.map +0 -1
  285. package/lib/generate/index.js.map +0 -1
  286. package/lib/generate/live.test.d.ts +0 -2
  287. package/lib/generate/live.test.d.ts.map +0 -1
  288. package/lib/generate/live.test.js +0 -22
  289. package/lib/generate/live.test.js.map +0 -1
  290. package/lib/generate/ontology.test.d.ts +0 -2
  291. package/lib/generate/ontology.test.d.ts.map +0 -1
  292. package/lib/generate/ontology.test.js +0 -157
  293. package/lib/generate/ontology.test.js.map +0 -1
  294. package/lib/generate/types.test.d.ts +0 -2
  295. package/lib/generate/types.test.d.ts.map +0 -1
  296. package/lib/generate/types.test.js +0 -304
  297. package/lib/generate/types.test.js.map +0 -1
  298. package/lib/index.d.ts.map +0 -1
  299. package/lib/index.js.map +0 -1
  300. package/lib/infer.test.d.ts +0 -2
  301. package/lib/infer.test.d.ts.map +0 -1
  302. package/lib/infer.test.js +0 -125
  303. package/lib/infer.test.js.map +0 -1
  304. package/lib/installation/createMetaOntologyConfiguration.test.d.ts +0 -2
  305. package/lib/installation/createMetaOntologyConfiguration.test.d.ts.map +0 -1
  306. package/lib/installation/createMetaOntologyConfiguration.test.js +0 -20
  307. package/lib/installation/createMetaOntologyConfiguration.test.js.map +0 -1
  308. package/lib/installation/createOntologyBackendInstallation.test.d.ts +0 -2
  309. package/lib/installation/createOntologyBackendInstallation.test.d.ts.map +0 -1
  310. package/lib/installation/createOntologyBackendInstallation.test.js +0 -320
  311. package/lib/installation/createOntologyBackendInstallation.test.js.map +0 -1
  312. package/lib/installation/index.d.ts.map +0 -1
  313. package/lib/installation/index.js.map +0 -1
  314. package/lib/installation/types.js.map +0 -1
  315. package/lib/ir/generated/types.js.map +0 -1
  316. package/lib/ir/index.d.ts.map +0 -1
  317. package/lib/ir/index.js.map +0 -1
  318. package/lib/ir/validate.test.d.ts +0 -2
  319. package/lib/ir/validate.test.d.ts.map +0 -1
  320. package/lib/ir/validate.test.js +0 -1061
  321. package/lib/ir/validate.test.js.map +0 -1
  322. package/lib/json/index.test.d.ts +0 -2
  323. package/lib/json/index.test.d.ts.map +0 -1
  324. package/lib/json/index.test.js +0 -142
  325. package/lib/json/index.test.js.map +0 -1
  326. package/lib/lenses.test.d.ts +0 -2
  327. package/lib/lenses.test.d.ts.map +0 -1
  328. package/lib/lenses.test.js +0 -80
  329. package/lib/lenses.test.js.map +0 -1
  330. package/lib/live/LiveOntology.test.d.ts +0 -2
  331. package/lib/live/LiveOntology.test.d.ts.map +0 -1
  332. package/lib/live/LiveOntology.test.js +0 -507
  333. package/lib/live/LiveOntology.test.js.map +0 -1
  334. package/lib/live/OntologyBackendAdapter.js.map +0 -1
  335. package/lib/live/actions/createLiveOntologyAction.test.d.ts +0 -2
  336. package/lib/live/actions/createLiveOntologyAction.test.d.ts.map +0 -1
  337. package/lib/live/actions/createLiveOntologyAction.test.js +0 -232
  338. package/lib/live/actions/createLiveOntologyAction.test.js.map +0 -1
  339. package/lib/live/actions/prepareActionParameters.test.d.ts +0 -2
  340. package/lib/live/actions/prepareActionParameters.test.d.ts.map +0 -1
  341. package/lib/live/actions/prepareActionParameters.test.js +0 -165
  342. package/lib/live/actions/prepareActionParameters.test.js.map +0 -1
  343. package/lib/live/attachments/attachmentMetadata.test.d.ts +0 -2
  344. package/lib/live/attachments/attachmentMetadata.test.d.ts.map +0 -1
  345. package/lib/live/attachments/attachmentMetadata.test.js +0 -73
  346. package/lib/live/attachments/attachmentMetadata.test.js.map +0 -1
  347. package/lib/live/attachments/createLiveOntologyAttachments.test.d.ts +0 -2
  348. package/lib/live/attachments/createLiveOntologyAttachments.test.d.ts.map +0 -1
  349. package/lib/live/attachments/createLiveOntologyAttachments.test.js +0 -363
  350. package/lib/live/attachments/createLiveOntologyAttachments.test.js.map +0 -1
  351. package/lib/live/attachments/types.js.map +0 -1
  352. package/lib/live/expression.test.d.ts +0 -2
  353. package/lib/live/expression.test.d.ts.map +0 -1
  354. package/lib/live/expression.test.js +0 -281
  355. package/lib/live/expression.test.js.map +0 -1
  356. package/lib/live/index.d.ts.map +0 -1
  357. package/lib/live/index.js.map +0 -1
  358. package/lib/live/mutators/OntologyEdits.test.d.ts +0 -2
  359. package/lib/live/mutators/OntologyEdits.test.d.ts.map +0 -1
  360. package/lib/live/mutators/OntologyEdits.test.js +0 -85
  361. package/lib/live/mutators/OntologyEdits.test.js.map +0 -1
  362. package/lib/live/mutators/createMutatorTx.test.d.ts +0 -2
  363. package/lib/live/mutators/createMutatorTx.test.d.ts.map +0 -1
  364. package/lib/live/mutators/createMutatorTx.test.js +0 -182
  365. package/lib/live/mutators/createMutatorTx.test.js.map +0 -1
  366. package/lib/live/mutators/types.js.map +0 -1
  367. package/lib/live/objects/OntologyObject.js.map +0 -1
  368. package/lib/live/objects/createLiveOntologyObjectCollection.test.d.ts +0 -2
  369. package/lib/live/objects/createLiveOntologyObjectCollection.test.d.ts.map +0 -1
  370. package/lib/live/objects/createLiveOntologyObjectCollection.test.js +0 -181
  371. package/lib/live/objects/createLiveOntologyObjectCollection.test.js.map +0 -1
  372. package/lib/live/outbox/createOntologyOutbox.test.d.ts +0 -2
  373. package/lib/live/outbox/createOntologyOutbox.test.d.ts.map +0 -1
  374. package/lib/live/outbox/createOntologyOutbox.test.js +0 -1007
  375. package/lib/live/outbox/createOntologyOutbox.test.js.map +0 -1
  376. package/lib/live/outbox/outboxValues.d.ts +0 -7
  377. package/lib/live/outbox/outboxValues.d.ts.map +0 -1
  378. package/lib/live/outbox/outboxValues.js +0 -76
  379. package/lib/live/outbox/outboxValues.js.map +0 -1
  380. package/lib/meta/generated/types.js.map +0 -1
  381. package/lib/meta/ontology.test.d.ts +0 -2
  382. package/lib/meta/ontology.test.d.ts.map +0 -1
  383. package/lib/meta/ontology.test.js +0 -84
  384. package/lib/meta/ontology.test.js.map +0 -1
  385. package/lib/utils/index.d.ts.map +0 -1
  386. package/lib/utils/index.js.map +0 -1
  387. package/lib/utils/links.test.d.ts +0 -2
  388. package/lib/utils/links.test.d.ts.map +0 -1
  389. package/lib/utils/links.test.js +0 -109
  390. package/lib/utils/links.test.js.map +0 -1
  391. package/lib/utils/paths.test.d.ts +0 -2
  392. package/lib/utils/paths.test.d.ts.map +0 -1
  393. package/lib/utils/paths.test.js +0 -33
  394. package/lib/utils/paths.test.js.map +0 -1
  395. package/lib/utils/targets.js.map +0 -1
  396. package/lib/utils/typeNames.js.map +0 -1
  397. package/lib/utils/types.test.d.ts +0 -2
  398. package/lib/utils/types.test.d.ts.map +0 -1
  399. package/lib/utils/types.test.js +0 -157
  400. package/lib/utils/types.test.js.map +0 -1
  401. package/lib/utils/uncertain.test.d.ts +0 -2
  402. package/lib/utils/uncertain.test.d.ts.map +0 -1
  403. package/lib/utils/uncertain.test.js +0 -14
  404. package/lib/utils/uncertain.test.js.map +0 -1
  405. package/lib/utils/validation.js.map +0 -1
  406. package/lib/utils/values.js.map +0 -1
package/lib/lenses.js CHANGED
@@ -1,146 +1,110 @@
1
- import { capitalCase } from "change-case";
2
1
  import { getAtPath, setAtPath, unsetAtPath } from "./utils/paths.js";
2
+ import { capitalCase } from "change-case";
3
+ //#region src/lenses.ts
3
4
  function structFields(type) {
4
- if (type.kind === "struct")
5
- return type.value.fields;
6
- if (type.kind === "optional" && type.value.type.kind === "struct") {
7
- return type.value.type.value.fields;
8
- }
9
- return undefined;
5
+ if (type.kind === "struct") return type.value.fields;
6
+ if (type.kind === "optional" && type.value.type.kind === "struct") return type.value.type.value.fields;
10
7
  }
11
8
  function removeField(fields, path) {
12
- const [name, ...rest] = path;
13
- if (!name)
14
- throw new Error("Lens paths must not be empty.");
15
- const index = fields.findIndex((field) => field.name === name);
16
- if (index < 0)
17
- throw new Error(`Lens source path "${path.join(".")}" does not exist.`);
18
- if (rest.length === 0)
19
- return fields.splice(index, 1)[0];
20
- const nested = structFields(fields[index].type);
21
- if (!nested)
22
- throw new Error(`Lens source path "${path.join(".")}" does not traverse a struct.`);
23
- return removeField(nested, rest);
9
+ const [name, ...rest] = path;
10
+ if (!name) throw new Error("Lens paths must not be empty.");
11
+ const index = fields.findIndex((field) => field.name === name);
12
+ if (index < 0) throw new Error(`Lens source path "${path.join(".")}" does not exist.`);
13
+ if (rest.length === 0) return fields.splice(index, 1)[0];
14
+ const nested = structFields(fields[index].type);
15
+ if (!nested) throw new Error(`Lens source path "${path.join(".")}" does not traverse a struct.`);
16
+ return removeField(nested, rest);
24
17
  }
25
18
  function insertField(fields, path, field) {
26
- const [name, ...rest] = path;
27
- if (!name)
28
- throw new Error("Lens paths must not be empty.");
29
- if (rest.length === 0) {
30
- if (fields.some((candidate) => candidate.name === name)) {
31
- throw new Error(`Lens target path "${path.join(".")}" already exists.`);
32
- }
33
- fields.push({
34
- ...field,
35
- name,
36
- displayName: capitalCase(name),
37
- });
38
- return;
39
- }
40
- const parent = fields.find((candidate) => candidate.name === name);
41
- if (!parent)
42
- throw new Error(`Lens target parent "${path.slice(0, -1).join(".")}" does not exist.`);
43
- const nested = structFields(parent.type);
44
- if (!nested)
45
- throw new Error(`Lens target path "${path.join(".")}" does not traverse a struct.`);
46
- insertField(nested, rest, field);
19
+ const [name, ...rest] = path;
20
+ if (!name) throw new Error("Lens paths must not be empty.");
21
+ if (rest.length === 0) {
22
+ if (fields.some((candidate) => candidate.name === name)) throw new Error(`Lens target path "${path.join(".")}" already exists.`);
23
+ fields.push({
24
+ ...field,
25
+ name,
26
+ displayName: capitalCase(name)
27
+ });
28
+ return;
29
+ }
30
+ const parent = fields.find((candidate) => candidate.name === name);
31
+ if (!parent) throw new Error(`Lens target parent "${path.slice(0, -1).join(".")}" does not exist.`);
32
+ const nested = structFields(parent.type);
33
+ if (!nested) throw new Error(`Lens target path "${path.join(".")}" does not traverse a struct.`);
34
+ insertField(nested, rest, field);
47
35
  }
48
- export function applyLensToObjectType(source, lens, options) {
49
- const target = structuredClone(source);
50
- target.name = options.name;
51
- target.displayName = options.displayName ?? capitalCase(options.name);
52
- target.pluralDisplayName = options.pluralDisplayName ?? `${target.displayName}s`;
53
- for (const operation of lens.operations) {
54
- switch (operation.kind) {
55
- case "move": {
56
- const field = removeField(target.properties, operation.value.from);
57
- insertField(target.properties, operation.value.to, field);
58
- if (operation.value.from.length === 1 && operation.value.from[0] === target.primaryKey) {
59
- if (operation.value.to.length !== 1) {
60
- throw new Error("An object primary key cannot be moved into a nested path.");
61
- }
62
- target.primaryKey = operation.value.to[0];
63
- }
64
- if (operation.value.from.length === 1 && operation.value.from[0] === target.title) {
65
- target.title = operation.value.to.length === 1 ? operation.value.to[0] : undefined;
66
- }
67
- break;
68
- }
69
- case "select": {
70
- const selected = new Set(operation.value.properties);
71
- target.properties = target.properties.filter((property) => selected.has(property.name));
72
- if (!selected.has(target.primaryKey)) {
73
- throw new Error(`Lens selection must retain primary key "${target.primaryKey}".`);
74
- }
75
- if (target.title && !selected.has(target.title))
76
- target.title = undefined;
77
- break;
78
- }
79
- }
80
- }
81
- return target;
36
+ function applyLensToObjectType(source, lens, options) {
37
+ const target = structuredClone(source);
38
+ target.name = options.name;
39
+ target.displayName = options.displayName ?? capitalCase(options.name);
40
+ target.pluralDisplayName = options.pluralDisplayName ?? `${target.displayName}s`;
41
+ for (const operation of lens.operations) switch (operation.kind) {
42
+ case "move": {
43
+ const field = removeField(target.properties, operation.value.from);
44
+ insertField(target.properties, operation.value.to, field);
45
+ if (operation.value.from.length === 1 && operation.value.from[0] === target.primaryKey) {
46
+ if (operation.value.to.length !== 1) throw new Error("An object primary key cannot be moved into a nested path.");
47
+ target.primaryKey = operation.value.to[0];
48
+ }
49
+ if (operation.value.from.length === 1 && operation.value.from[0] === target.title) target.title = operation.value.to.length === 1 ? operation.value.to[0] : void 0;
50
+ break;
51
+ }
52
+ case "select": {
53
+ const selected = new Set(operation.value.properties);
54
+ target.properties = target.properties.filter((property) => selected.has(property.name));
55
+ if (!selected.has(target.primaryKey)) throw new Error(`Lens selection must retain primary key "${target.primaryKey}".`);
56
+ if (target.title && !selected.has(target.title)) target.title = void 0;
57
+ break;
58
+ }
59
+ }
60
+ return target;
82
61
  }
83
62
  function cloneLensValue(value) {
84
- if (Array.isArray(value)) {
85
- return value.map(cloneLensValue);
86
- }
87
- if (value && typeof value === "object") {
88
- const prototype = Object.getPrototypeOf(value);
89
- if (prototype === Object.prototype || prototype === null) {
90
- return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, cloneLensValue(entry)]));
91
- }
92
- }
93
- return value;
63
+ if (Array.isArray(value)) return value.map(cloneLensValue);
64
+ if (value && typeof value === "object") {
65
+ const prototype = Object.getPrototypeOf(value);
66
+ if (prototype === Object.prototype || prototype === null) return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, cloneLensValue(entry)]));
67
+ }
68
+ return value;
94
69
  }
95
- export function applyLensToObject(source, lens) {
96
- let target = cloneLensValue(source);
97
- for (const operation of lens.operations) {
98
- switch (operation.kind) {
99
- case "move": {
100
- const value = getAtPath(target, operation.value.from);
101
- target = unsetAtPath(target, operation.value.from);
102
- target = setAtPath(target, operation.value.to, value);
103
- break;
104
- }
105
- case "select": {
106
- const selected = new Set(operation.value.properties);
107
- for (const property of Object.keys(target)) {
108
- if (!selected.has(property))
109
- delete target[property];
110
- }
111
- break;
112
- }
113
- }
114
- }
115
- return target;
70
+ function applyLensToObject(source, lens) {
71
+ let target = cloneLensValue(source);
72
+ for (const operation of lens.operations) switch (operation.kind) {
73
+ case "move": {
74
+ const value = getAtPath(target, operation.value.from);
75
+ target = unsetAtPath(target, operation.value.from);
76
+ target = setAtPath(target, operation.value.to, value);
77
+ break;
78
+ }
79
+ case "select": {
80
+ const selected = new Set(operation.value.properties);
81
+ for (const property of Object.keys(target)) if (!selected.has(property)) delete target[property];
82
+ break;
83
+ }
84
+ }
85
+ return target;
116
86
  }
117
87
  /**
118
- * Maps a target-model field path back to its source-model path so simple
119
- * target-side queries can be pushed through a lens. This is path provenance,
120
- * not a general inverse for values or schemas: selected-out data cannot be
121
- * reconstructed. A future lens query compiler can use this as its direct-path
122
- * primitive while handling computed/list operations, local evaluation, and
123
- * unsupported query rewrites at the expression or query-plan level.
124
- */
125
- export function mapTargetPathToSourceWithLens(path, lens) {
126
- let rewritten = [...path];
127
- for (const operation of [...lens.operations].reverse()) {
128
- switch (operation.kind) {
129
- case "move": {
130
- const target = operation.value.to;
131
- if (rewritten.length >= target.length &&
132
- target.every((segment, index) => rewritten[index] === segment)) {
133
- rewritten = [...operation.value.from, ...rewritten.slice(target.length)];
134
- }
135
- break;
136
- }
137
- case "select":
138
- if (rewritten[0] && !operation.value.properties.includes(rewritten[0])) {
139
- throw new Error(`Lens target path "${path.join(".")}" is not selected.`);
140
- }
141
- break;
142
- }
143
- }
144
- return rewritten;
88
+ * Maps a target-model field path back to its source-model path so simple
89
+ * target-side queries can be pushed through a lens. This is path provenance,
90
+ * not a general inverse for values or schemas: selected-out data cannot be
91
+ * reconstructed. A future lens query compiler can use this as its direct-path
92
+ * primitive while handling computed/list operations, local evaluation, and
93
+ * unsupported query rewrites at the expression or query-plan level.
94
+ */
95
+ function mapTargetPathToSourceWithLens(path, lens) {
96
+ let rewritten = [...path];
97
+ for (const operation of [...lens.operations].reverse()) switch (operation.kind) {
98
+ case "move": {
99
+ const target = operation.value.to;
100
+ if (rewritten.length >= target.length && target.every((segment, index) => rewritten[index] === segment)) rewritten = [...operation.value.from, ...rewritten.slice(target.length)];
101
+ break;
102
+ }
103
+ case "select": if (rewritten[0] && !operation.value.properties.includes(rewritten[0])) throw new Error(`Lens target path "${path.join(".")}" is not selected.`);
104
+ }
105
+ return rewritten;
145
106
  }
107
+ //#endregion
108
+ export { applyLensToObject, applyLensToObjectType, mapTargetPathToSourceWithLens };
109
+
146
110
  //# sourceMappingURL=lenses.js.map
package/lib/lenses.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lenses.js","sourceRoot":"","sources":["../src/lenses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lenses.js","names":[],"sources":["../src/lenses.ts"],"sourcesContent":["import { capitalCase } from \"change-case\";\nimport { getAtPath, setAtPath, unsetAtPath } from \"./utils/paths.js\";\nimport type { FieldDef, Lens, ObjectTypeDef, PropertyDef, TypeDef } from \"./ir/index.js\";\n\nexport interface ApplyObjectTypeLensOptions {\n name: string;\n displayName?: string;\n pluralDisplayName?: string;\n}\n\nfunction structFields(type: TypeDef): FieldDef[] | undefined {\n if (type.kind === \"struct\") return type.value.fields;\n if (type.kind === \"optional\" && type.value.type.kind === \"struct\") {\n return type.value.type.value.fields;\n }\n return undefined;\n}\n\nfunction removeField(fields: PropertyDef[] | FieldDef[], path: readonly string[]): PropertyDef | FieldDef {\n const [name, ...rest] = path;\n if (!name) throw new Error(\"Lens paths must not be empty.\");\n const index = fields.findIndex((field) => field.name === name);\n if (index < 0) throw new Error(`Lens source path \"${path.join(\".\")}\" does not exist.`);\n if (rest.length === 0) return fields.splice(index, 1)[0]!;\n\n const nested = structFields(fields[index]!.type);\n if (!nested) throw new Error(`Lens source path \"${path.join(\".\")}\" does not traverse a struct.`);\n return removeField(nested, rest);\n}\n\nfunction insertField(\n fields: PropertyDef[] | FieldDef[],\n path: readonly string[],\n field: PropertyDef | FieldDef\n): void {\n const [name, ...rest] = path;\n if (!name) throw new Error(\"Lens paths must not be empty.\");\n if (rest.length === 0) {\n if (fields.some((candidate) => candidate.name === name)) {\n throw new Error(`Lens target path \"${path.join(\".\")}\" already exists.`);\n }\n fields.push({\n ...field,\n name,\n displayName: capitalCase(name),\n });\n return;\n }\n\n const parent = fields.find((candidate) => candidate.name === name);\n if (!parent) throw new Error(`Lens target parent \"${path.slice(0, -1).join(\".\")}\" does not exist.`);\n const nested = structFields(parent.type);\n if (!nested) throw new Error(`Lens target path \"${path.join(\".\")}\" does not traverse a struct.`);\n insertField(nested, rest, field);\n}\n\nexport function applyLensToObjectType(\n source: ObjectTypeDef,\n lens: Lens,\n options: ApplyObjectTypeLensOptions\n): ObjectTypeDef {\n const target = structuredClone(source);\n target.name = options.name;\n target.displayName = options.displayName ?? capitalCase(options.name);\n target.pluralDisplayName = options.pluralDisplayName ?? `${target.displayName}s`;\n\n for (const operation of lens.operations) {\n switch (operation.kind) {\n case \"move\": {\n const field = removeField(target.properties, operation.value.from);\n insertField(target.properties, operation.value.to, field);\n if (operation.value.from.length === 1 && operation.value.from[0] === target.primaryKey) {\n if (operation.value.to.length !== 1) {\n throw new Error(\"An object primary key cannot be moved into a nested path.\");\n }\n target.primaryKey = operation.value.to[0]!;\n }\n if (operation.value.from.length === 1 && operation.value.from[0] === target.title) {\n target.title = operation.value.to.length === 1 ? operation.value.to[0] : undefined;\n }\n break;\n }\n case \"select\": {\n const selected = new Set(operation.value.properties);\n target.properties = target.properties.filter((property) => selected.has(property.name));\n if (!selected.has(target.primaryKey)) {\n throw new Error(`Lens selection must retain primary key \"${target.primaryKey}\".`);\n }\n if (target.title && !selected.has(target.title)) target.title = undefined;\n break;\n }\n }\n }\n\n return target;\n}\n\nfunction cloneLensValue(value: unknown): unknown {\n if (Array.isArray(value)) {\n return value.map(cloneLensValue);\n }\n if (value && typeof value === \"object\") {\n const prototype = Object.getPrototypeOf(value) as unknown;\n if (prototype === Object.prototype || prototype === null) {\n return Object.fromEntries(\n Object.entries(value).map(([key, entry]) => [key, cloneLensValue(entry)])\n );\n }\n }\n return value;\n}\n\nexport function applyLensToObject<\n Source extends Record<string, unknown>,\n Target extends Record<string, unknown>,\n>(source: Source, lens: Lens): Target {\n let target = cloneLensValue(source) as Record<string, unknown>;\n for (const operation of lens.operations) {\n switch (operation.kind) {\n case \"move\": {\n const value = getAtPath(target, operation.value.from);\n target = unsetAtPath(target, operation.value.from);\n target = setAtPath(target, operation.value.to, value);\n break;\n }\n case \"select\": {\n const selected = new Set(operation.value.properties);\n for (const property of Object.keys(target)) {\n if (!selected.has(property)) delete target[property];\n }\n break;\n }\n }\n }\n return target as Target;\n}\n\n/**\n * Maps a target-model field path back to its source-model path so simple\n * target-side queries can be pushed through a lens. This is path provenance,\n * not a general inverse for values or schemas: selected-out data cannot be\n * reconstructed. A future lens query compiler can use this as its direct-path\n * primitive while handling computed/list operations, local evaluation, and\n * unsupported query rewrites at the expression or query-plan level.\n */\nexport function mapTargetPathToSourceWithLens(path: readonly string[], lens: Lens): string[] {\n let rewritten = [...path];\n for (const operation of [...lens.operations].reverse()) {\n switch (operation.kind) {\n case \"move\": {\n const target = operation.value.to;\n if (\n rewritten.length >= target.length &&\n target.every((segment, index) => rewritten[index] === segment)\n ) {\n rewritten = [...operation.value.from, ...rewritten.slice(target.length)];\n }\n break;\n }\n case \"select\":\n if (rewritten[0] && !operation.value.properties.includes(rewritten[0])) {\n throw new Error(`Lens target path \"${path.join(\".\")}\" is not selected.`);\n }\n break;\n }\n }\n return rewritten;\n}\n"],"mappings":"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"}
@@ -1,78 +1,71 @@
1
- import { type RuntimeAdapterProvider } from "@party-stack/runtime";
2
- import type { ConnectionMonitor } from "@party-stack/connections";
3
- import { type LiveOntologyAttachments } from "./attachments/createLiveOntologyAttachments.js";
4
- import type { LiveOntologyAction } from "./actions/createLiveOntologyAction.js";
5
- import type { OntologyMutatorRegistry } from "./mutators/types.js";
6
- import type { OntologyCollection } from "./objects/createLiveOntologyObjectCollection.js";
7
- import type { OntologyObject } from "./objects/OntologyObject.js";
8
- import type { OntologyBackendAdapterProvider } from "./OntologyBackendAdapter.js";
9
- import type { OntologyOutbox } from "./outbox/types.js";
10
- import type { OntologyIR } from "../ir/index.js";
11
- export type { LiveOntologyAction, LiveOntologyActionOptions } from "./actions/createLiveOntologyAction.js";
12
- export type { LiveOntologyAttachments } from "./attachments/createLiveOntologyAttachments.js";
13
- export type { OntologyCollection } from "./objects/createLiveOntologyObjectCollection.js";
1
+ import { OntologyIR } from "../ir/generated/types.js";
2
+ import "../ir/index.js";
3
+ import { OntologyBackendAdapterProvider } from "./OntologyBackendAdapter.js";
4
+ import { LiveOntologyAttachments } from "./attachments/createLiveOntologyAttachments.js";
5
+ import { OntologyObject } from "./objects/OntologyObject.js";
6
+ import { OntologyCollection } from "./objects/createLiveOntologyObjectCollection.js";
7
+ import { OntologyOutbox } from "./outbox/types.js";
8
+ import { LiveOntologyAction, LiveOntologyActionOptions } from "./actions/createLiveOntologyAction.js";
9
+ import { OntologyMutatorRegistry } from "./mutators/types.js";
10
+ import { RuntimeAdapterProvider } from "@party-stack/runtime";
11
+ import { ConnectionMonitor } from "@party-stack/connections";
12
+ //#region src/live/LiveOntology.d.ts
14
13
  export type LiveOntologyWriteMode = "direct" | "outbox";
15
14
  export type LiveOntologyWriteVisibility = "confirmed" | "optimistic";
16
15
  export type LiveOntologyOutboxFailureStrategy = "pause" | "discard-all";
17
16
  export interface LiveOntologyOutboxOptions {
18
- failureStrategy?: LiveOntologyOutboxFailureStrategy;
19
- maxRetries?: number;
17
+ failureStrategy?: LiveOntologyOutboxFailureStrategy;
18
+ maxRetries?: number;
20
19
  }
21
20
  export interface LiveOntologyWrites {
22
- defaultMode?: LiveOntologyWriteMode;
23
- defaultVisibility?: LiveOntologyWriteVisibility;
24
- mutators?: OntologyMutatorRegistry;
25
- outbox?: LiveOntologyOutboxOptions;
21
+ defaultMode?: LiveOntologyWriteMode;
22
+ defaultVisibility?: LiveOntologyWriteVisibility;
23
+ mutators?: OntologyMutatorRegistry;
24
+ outbox?: LiveOntologyOutboxOptions;
26
25
  }
27
26
  export interface OntologyDefinition {
28
- context?: Record<string, unknown>;
29
- objectTypes: Record<string, OntologyObject>;
30
- actionTypes: Record<string, {
31
- parameters: Record<string, unknown>;
32
- }>;
33
- queryFunctionTypes: Record<string, {
34
- parameters: Record<string, unknown>;
35
- returnType: unknown;
36
- }>;
27
+ context?: Record<string, unknown>;
28
+ objectTypes: Record<string, OntologyObject>;
29
+ actionTypes: Record<string, {
30
+ parameters: Record<string, unknown>;
31
+ }>;
32
+ queryFunctionTypes: Record<string, {
33
+ parameters: Record<string, unknown>;
34
+ returnType: unknown;
35
+ }>;
37
36
  }
38
37
  type OntologyContext<Ontology extends OntologyDefinition> = Ontology extends {
39
- context: infer Context extends Record<string, unknown>;
38
+ context: infer Context extends Record<string, unknown>;
40
39
  } ? Context : Record<string, unknown>;
41
40
  export type LiveOntologyQueryFunction<Parameters extends Record<string, unknown> = Record<string, unknown>, Return = unknown> = (parameters: Parameters) => Promise<Return>;
42
- export type LiveOntologyObjects<ObjectTypes extends OntologyDefinition["objectTypes"] = OntologyDefinition["objectTypes"]> = {
43
- [ObjectTypeName in keyof ObjectTypes]: OntologyCollection<ObjectTypes[ObjectTypeName]>;
44
- };
45
- export type LiveOntologyActions<ActionTypes extends OntologyDefinition["actionTypes"]> = {
46
- [ActionTypeName in keyof ActionTypes]: LiveOntologyAction<ActionTypes[ActionTypeName]["parameters"]>;
47
- };
48
- export type LiveOntologyQueryFunctions<QueryFunctionTypes extends OntologyDefinition["queryFunctionTypes"]> = {
49
- [QueryFunctionTypeName in keyof QueryFunctionTypes]: LiveOntologyQueryFunction<QueryFunctionTypes[QueryFunctionTypeName]["parameters"], QueryFunctionTypes[QueryFunctionTypeName]["returnType"]>;
50
- };
41
+ export type LiveOntologyObjects<ObjectTypes extends OntologyDefinition["objectTypes"] = OntologyDefinition["objectTypes"]> = { [ObjectTypeName in keyof ObjectTypes]: OntologyCollection<ObjectTypes[ObjectTypeName]>; };
42
+ export type LiveOntologyActions<ActionTypes extends OntologyDefinition["actionTypes"]> = { [ActionTypeName in keyof ActionTypes]: LiveOntologyAction<ActionTypes[ActionTypeName]["parameters"]>; };
43
+ export type LiveOntologyQueryFunctions<QueryFunctionTypes extends OntologyDefinition["queryFunctionTypes"]> = { [QueryFunctionTypeName in keyof QueryFunctionTypes]: LiveOntologyQueryFunction<QueryFunctionTypes[QueryFunctionTypeName]["parameters"], QueryFunctionTypes[QueryFunctionTypeName]["returnType"]>; };
51
44
  export interface LiveOntology<Ontology extends OntologyDefinition = OntologyDefinition> {
52
- readonly ir: OntologyIR;
53
- readonly context: OntologyContext<Ontology>;
54
- /**
55
- * Resolves once outbox and blob metadata subsystems have finished starting.
56
- * Object collections remain on-demand unless explicitly preloaded.
57
- */
58
- readonly ready: Promise<void>;
59
- objects: LiveOntologyObjects<Ontology["objectTypes"]>;
60
- actions: LiveOntologyActions<Ontology["actionTypes"]>;
61
- queryFunctions: LiveOntologyQueryFunctions<Ontology["queryFunctionTypes"]>;
62
- attachments: LiveOntologyAttachments<Ontology>;
63
- outbox: OntologyOutbox;
64
- cleanup: () => Promise<void>;
65
- destroy: () => Promise<void>;
45
+ readonly ir: OntologyIR;
46
+ readonly context: OntologyContext<Ontology>;
47
+ /**
48
+ * Resolves once outbox and blob metadata subsystems have finished starting.
49
+ * Object collections remain on-demand unless explicitly preloaded.
50
+ */
51
+ readonly ready: Promise<void>;
52
+ objects: LiveOntologyObjects<Ontology["objectTypes"]>;
53
+ actions: LiveOntologyActions<Ontology["actionTypes"]>;
54
+ queryFunctions: LiveOntologyQueryFunctions<Ontology["queryFunctionTypes"]>;
55
+ attachments: LiveOntologyAttachments<Ontology>;
56
+ outbox: OntologyOutbox;
57
+ cleanup: () => Promise<void>;
58
+ destroy: () => Promise<void>;
66
59
  }
67
60
  export interface CreateLiveOntologyOpts<Context extends Record<string, unknown> = Record<string, unknown>> {
68
- id?: string;
69
- ir: OntologyIR;
70
- backend: OntologyBackendAdapterProvider<NoInfer<Context>>;
71
- runtime?: RuntimeAdapterProvider;
72
- persistObjects?: boolean;
73
- writes?: LiveOntologyWrites;
74
- context?: Context;
75
- connection?: ConnectionMonitor;
61
+ id?: string;
62
+ ir: OntologyIR;
63
+ backend: OntologyBackendAdapterProvider<NoInfer<Context>>;
64
+ runtime?: RuntimeAdapterProvider;
65
+ persistObjects?: boolean;
66
+ writes?: LiveOntologyWrites;
67
+ context?: Context;
68
+ connection?: ConnectionMonitor;
76
69
  }
77
70
  /**
78
71
  * Waits for LiveOntology subsystems required before safe use.
@@ -80,4 +73,6 @@ export interface CreateLiveOntologyOpts<Context extends Record<string, unknown>
80
73
  */
81
74
  export declare function waitForLiveOntologyReady(ontology: LiveOntology): Promise<void>;
82
75
  export declare function createLiveOntology<Ontology extends OntologyDefinition = OntologyDefinition, Context extends Record<string, unknown> = Record<string, unknown>>(opts: CreateLiveOntologyOpts<Context>): Promise<LiveOntology<Ontology>>;
76
+ //#endregion
77
+ export type { LiveOntologyAction, LiveOntologyActionOptions, LiveOntologyAttachments, OntologyCollection };
83
78
  //# sourceMappingURL=LiveOntology.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiveOntology.d.ts","sourceRoot":"","sources":["../../src/live/LiveOntology.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LiveOntology.d.ts","names":[],"sources":["../../src/live/LiveOntology.ts"],"mappings":";;;;;;;;;;;;YA0BY;YAEA;YAEA;iBAEK;EACb,kBAAkB;EAClB;;iBAGa;EACb,cAAc;EACd,oBAAoB;EACpB,WAAW;EACX,SAAS;;iBAGI;EACb,UAAU;EACV,aAAa,eAAe;EAC5B,aAAa;IAGL,YAAY;;EAGpB,oBAAoB;IAGZ,YAAY;IACZ;;;KAKP,gBAAgB,iBAAiB,sBAAsB;EACxD,eAAe,gBAAgB;IAE7B,UACA;YAEM,0BACR,mBAAmB,0BAA0B,yBAC7C,qBACC,YAAY,eAAe,QAAQ;YAE5B,oBACR,oBAAoB,oCAAoC,wCAEvD,wBAAwB,cAAc,mBAAmB,YAAY;YAG9D,oBAAoB,oBAAoB,wCAC/C,wBAAwB,cAAc,mBAAmB,YAAY;YAG9D,2BAA2B,2BAA2B,+CAEzD,+BAA+B,qBAAqB,0BACjD,mBAAmB,sCACnB,mBAAmB;iBAId,aAAa,iBAAiB,qBAAqB;WACvD,IAAI;WACJ,SAAS,gBAAgB;;;;;WAKzB,OAAO;EAChB,SAAS,oBAAoB;EAC7B,SAAS,oBAAoB;EAC7B,gBAAgB,2BAA2B;EAC3C,aAAa,wBAAwB;EACrC,QAAQ;EACR,eAAe;EACf,eAAe;;iBAGF,uBAAuB,gBAAgB,0BAA0B;EAC9E;EACA,IAAI;EACJ,SAAS,+BAA+B,QAAQ;EAChD,UAAU;EACV;EACA,SAAS;EACT,UAAU;EACV,aAAa;;;;;;wBAWK,yBAAyB,UAAU,eAAe;wBAOlD,mBAClB,iBAAiB,qBAAqB,oBACtC,gBAAgB,0BAA0B,yBAC5C,MAAM,uBAAuB,WAAW,QAAQ,aAAa"}