@party-stack/foundry-ontology 0.17.0 → 0.18.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 (253) hide show
  1. package/lib/adapter/convertLoadSubsetOptions.d.ts +2 -0
  2. package/lib/adapter/convertLoadSubsetOptions.d.ts.map +1 -1
  3. package/lib/adapter/convertLoadSubsetOptions.js +158 -191
  4. package/lib/adapter/convertLoadSubsetOptions.js.map +1 -1
  5. package/lib/adapter/createFoundryOntologyBackendAdapter.d.ts +17 -15
  6. package/lib/adapter/createFoundryOntologyBackendAdapter.d.ts.map +1 -1
  7. package/lib/adapter/createFoundryOntologyBackendAdapter.js +288 -400
  8. package/lib/adapter/createFoundryOntologyBackendAdapter.js.map +1 -1
  9. package/lib/adapter/foundryActionValidation.d.ts +17 -15
  10. package/lib/adapter/foundryActionValidation.d.ts.map +1 -1
  11. package/lib/adapter/foundryActionValidation.js +206 -305
  12. package/lib/adapter/foundryActionValidation.js.map +1 -1
  13. package/lib/adapter/foundryCodec.d.ts +10 -9
  14. package/lib/adapter/foundryCodec.d.ts.map +1 -1
  15. package/lib/adapter/foundryCodec.js +180 -287
  16. package/lib/adapter/foundryCodec.js.map +1 -1
  17. package/lib/adapter/foundryMediaId.d.ts +6 -4
  18. package/lib/adapter/foundryMediaId.d.ts.map +1 -1
  19. package/lib/adapter/foundryMediaId.js +31 -32
  20. package/lib/adapter/foundryMediaId.js.map +1 -1
  21. package/lib/adapter/index.d.ts +4 -4
  22. package/lib/adapter/index.js +4 -4
  23. package/lib/adapter/objectCollectionOptions.d.ts +17 -18
  24. package/lib/adapter/objectCollectionOptions.d.ts.map +1 -1
  25. package/lib/adapter/objectCollectionOptions.js +417 -538
  26. package/lib/adapter/objectCollectionOptions.js.map +1 -1
  27. package/lib/config/applyAttachmentConstraintOverrides.d.ts +6 -4
  28. package/lib/config/applyAttachmentConstraintOverrides.d.ts.map +1 -1
  29. package/lib/config/applyAttachmentConstraintOverrides.js +45 -49
  30. package/lib/config/applyAttachmentConstraintOverrides.js.map +1 -1
  31. package/lib/config/index.d.ts +17 -15
  32. package/lib/config/index.d.ts.map +1 -1
  33. package/lib/config/index.js +56 -81
  34. package/lib/config/index.js.map +1 -1
  35. package/lib/connection.d.ts +28 -26
  36. package/lib/connection.d.ts.map +1 -1
  37. package/lib/connection.js +183 -215
  38. package/lib/connection.js.map +1 -1
  39. package/lib/index.d.ts +9 -5
  40. package/lib/index.js +9 -5
  41. package/lib/installation/createFoundryBackendInstallation.d.ts +21 -20
  42. package/lib/installation/createFoundryBackendInstallation.d.ts.map +1 -1
  43. package/lib/installation/createFoundryBackendInstallation.js +52 -62
  44. package/lib/installation/createFoundryBackendInstallation.js.map +1 -1
  45. package/lib/installation/index.d.ts +2 -2
  46. package/lib/installation/index.js +2 -2
  47. package/lib/meta/actionTypeCollectionOptions.d.ts +8 -6
  48. package/lib/meta/actionTypeCollectionOptions.d.ts.map +1 -1
  49. package/lib/meta/actionTypeCollectionOptions.js +49 -49
  50. package/lib/meta/actionTypeCollectionOptions.js.map +1 -1
  51. package/lib/meta/convertActionTypeLoadSubsetOptions.d.ts +3 -1
  52. package/lib/meta/convertActionTypeLoadSubsetOptions.d.ts.map +1 -1
  53. package/lib/meta/convertActionTypeLoadSubsetOptions.js +69 -75
  54. package/lib/meta/convertActionTypeLoadSubsetOptions.js.map +1 -1
  55. package/lib/meta/convertMetaActionType.d.ts +7 -5
  56. package/lib/meta/convertMetaActionType.d.ts.map +1 -1
  57. package/lib/meta/convertMetaActionType.js +458 -581
  58. package/lib/meta/convertMetaActionType.js.map +1 -1
  59. package/lib/meta/convertMetaLinkType.d.ts +4 -2
  60. package/lib/meta/convertMetaLinkType.d.ts.map +1 -1
  61. package/lib/meta/convertMetaLinkType.js +37 -43
  62. package/lib/meta/convertMetaLinkType.js.map +1 -1
  63. package/lib/meta/convertMetaObjectType.d.ts +4 -2
  64. package/lib/meta/convertMetaObjectType.d.ts.map +1 -1
  65. package/lib/meta/convertMetaObjectType.js +34 -35
  66. package/lib/meta/convertMetaObjectType.js.map +1 -1
  67. package/lib/meta/convertMetaQueryFunctionType.d.ts +4 -2
  68. package/lib/meta/convertMetaQueryFunctionType.d.ts.map +1 -1
  69. package/lib/meta/convertMetaQueryFunctionType.js +113 -94
  70. package/lib/meta/convertMetaQueryFunctionType.js.map +1 -1
  71. package/lib/meta/convertMetaTypeDef.d.ts +4 -2
  72. package/lib/meta/convertMetaTypeDef.d.ts.map +1 -1
  73. package/lib/meta/convertMetaTypeDef.js +178 -176
  74. package/lib/meta/convertMetaTypeDef.js.map +1 -1
  75. package/lib/meta/convertMetaValueType.d.ts +4 -2
  76. package/lib/meta/convertMetaValueType.d.ts.map +1 -1
  77. package/lib/meta/convertMetaValueType.js +11 -7
  78. package/lib/meta/convertMetaValueType.js.map +1 -1
  79. package/lib/meta/convertOmsActionParameterMetadata.d.ts +4 -2
  80. package/lib/meta/convertOmsActionParameterMetadata.d.ts.map +1 -1
  81. package/lib/meta/convertOmsActionParameterMetadata.js +107 -163
  82. package/lib/meta/convertOmsActionParameterMetadata.js.map +1 -1
  83. package/lib/meta/createFoundryMetaOntologyBackendAdapter.d.ts +7 -5
  84. package/lib/meta/createFoundryMetaOntologyBackendAdapter.d.ts.map +1 -1
  85. package/lib/meta/createFoundryMetaOntologyBackendAdapter.js +39 -41
  86. package/lib/meta/createFoundryMetaOntologyBackendAdapter.js.map +1 -1
  87. package/lib/meta/entityCollectionOptions.d.ts +12 -11
  88. package/lib/meta/entityCollectionOptions.d.ts.map +1 -1
  89. package/lib/meta/entityCollectionOptions.js +59 -62
  90. package/lib/meta/entityCollectionOptions.js.map +1 -1
  91. package/lib/meta/foundryAttachmentMetadata.d.ts +2 -0
  92. package/lib/meta/foundryAttachmentMetadata.d.ts.map +1 -1
  93. package/lib/meta/foundryAttachmentMetadata.js +13 -14
  94. package/lib/meta/foundryAttachmentMetadata.js.map +1 -1
  95. package/lib/meta/index.d.ts +5 -5
  96. package/lib/meta/index.js +5 -5
  97. package/lib/meta/loadActionTypeOmsMetadata.d.ts +5 -4
  98. package/lib/meta/loadActionTypeOmsMetadata.d.ts.map +1 -1
  99. package/lib/meta/loadActionTypeOmsMetadata.js +102 -139
  100. package/lib/meta/loadActionTypeOmsMetadata.js.map +1 -1
  101. package/lib/meta/queryFunctionTypeCollectionOptions.d.ts +7 -5
  102. package/lib/meta/queryFunctionTypeCollectionOptions.d.ts.map +1 -1
  103. package/lib/meta/queryFunctionTypeCollectionOptions.js +47 -49
  104. package/lib/meta/queryFunctionTypeCollectionOptions.js.map +1 -1
  105. package/lib/stagedWrites.d.ts +26 -24
  106. package/lib/stagedWrites.d.ts.map +1 -1
  107. package/lib/stagedWrites.js +55 -66
  108. package/lib/stagedWrites.js.map +1 -1
  109. package/lib/users/createFoundryAdminOntologyRoute.d.ts +47 -17366
  110. package/lib/users/createFoundryAdminOntologyRoute.d.ts.map +1 -1
  111. package/lib/users/createFoundryAdminOntologyRoute.js +29 -37
  112. package/lib/users/createFoundryAdminOntologyRoute.js.map +1 -1
  113. package/lib/users/createFoundryUsersIntegration.d.ts +6 -4
  114. package/lib/users/createFoundryUsersIntegration.d.ts.map +1 -1
  115. package/lib/users/createFoundryUsersIntegration.js +28 -30
  116. package/lib/users/createFoundryUsersIntegration.js.map +1 -1
  117. package/lib/users/foundryUser.d.ts +4 -2
  118. package/lib/users/foundryUser.d.ts.map +1 -1
  119. package/lib/users/foundryUser.js +69 -74
  120. package/lib/users/foundryUser.js.map +1 -1
  121. package/lib/users/index.d.ts +5 -5
  122. package/lib/users/index.js +5 -5
  123. package/lib/users/userCollectionOptions.d.ts +13 -12
  124. package/lib/users/userCollectionOptions.d.ts.map +1 -1
  125. package/lib/users/userCollectionOptions.js +82 -100
  126. package/lib/users/userCollectionOptions.js.map +1 -1
  127. package/lib/utils/AsyncIterable.d.ts +2 -0
  128. package/lib/utils/AsyncIterable.d.ts.map +1 -1
  129. package/lib/utils/AsyncIterable.js +26 -34
  130. package/lib/utils/AsyncIterable.js.map +1 -1
  131. package/lib/utils/actionTypeName.d.ts +2 -0
  132. package/lib/utils/actionTypeName.d.ts.map +1 -1
  133. package/lib/utils/actionTypeName.js +9 -7
  134. package/lib/utils/actionTypeName.js.map +1 -1
  135. package/lib/utils/chunk.d.ts +2 -0
  136. package/lib/utils/chunk.d.ts.map +1 -1
  137. package/lib/utils/chunk.js +8 -6
  138. package/lib/utils/chunk.js.map +1 -1
  139. package/package.json +21 -27
  140. package/lib/adapter/convertLoadSubsetOptions.test.d.ts +0 -2
  141. package/lib/adapter/convertLoadSubsetOptions.test.d.ts.map +0 -1
  142. package/lib/adapter/convertLoadSubsetOptions.test.js +0 -213
  143. package/lib/adapter/convertLoadSubsetOptions.test.js.map +0 -1
  144. package/lib/adapter/createFoundryOntologyBackendAdapter.test.d.ts +0 -2
  145. package/lib/adapter/createFoundryOntologyBackendAdapter.test.d.ts.map +0 -1
  146. package/lib/adapter/createFoundryOntologyBackendAdapter.test.js +0 -628
  147. package/lib/adapter/createFoundryOntologyBackendAdapter.test.js.map +0 -1
  148. package/lib/adapter/foundryActionValidation.test.d.ts +0 -2
  149. package/lib/adapter/foundryActionValidation.test.d.ts.map +0 -1
  150. package/lib/adapter/foundryActionValidation.test.js +0 -243
  151. package/lib/adapter/foundryActionValidation.test.js.map +0 -1
  152. package/lib/adapter/foundryCodec.test.d.ts +0 -2
  153. package/lib/adapter/foundryCodec.test.d.ts.map +0 -1
  154. package/lib/adapter/foundryCodec.test.js +0 -137
  155. package/lib/adapter/foundryCodec.test.js.map +0 -1
  156. package/lib/adapter/foundryMediaId.test.d.ts +0 -2
  157. package/lib/adapter/foundryMediaId.test.d.ts.map +0 -1
  158. package/lib/adapter/foundryMediaId.test.js +0 -23
  159. package/lib/adapter/foundryMediaId.test.js.map +0 -1
  160. package/lib/adapter/index.d.ts.map +0 -1
  161. package/lib/adapter/index.js.map +0 -1
  162. package/lib/adapter/objectCollectionOptions.test.d.ts +0 -2
  163. package/lib/adapter/objectCollectionOptions.test.d.ts.map +0 -1
  164. package/lib/adapter/objectCollectionOptions.test.js +0 -1289
  165. package/lib/adapter/objectCollectionOptions.test.js.map +0 -1
  166. package/lib/config/connectionPull.test.d.ts +0 -2
  167. package/lib/config/connectionPull.test.d.ts.map +0 -1
  168. package/lib/config/connectionPull.test.js +0 -151
  169. package/lib/config/connectionPull.test.js.map +0 -1
  170. package/lib/config/index.test.d.ts +0 -2
  171. package/lib/config/index.test.d.ts.map +0 -1
  172. package/lib/config/index.test.js +0 -182
  173. package/lib/config/index.test.js.map +0 -1
  174. package/lib/connection.test.d.ts +0 -2
  175. package/lib/connection.test.d.ts.map +0 -1
  176. package/lib/connection.test.js +0 -162
  177. package/lib/connection.test.js.map +0 -1
  178. package/lib/index.d.ts.map +0 -1
  179. package/lib/index.js.map +0 -1
  180. package/lib/installation/createFoundryBackendInstallation.test.d.ts +0 -2
  181. package/lib/installation/createFoundryBackendInstallation.test.d.ts.map +0 -1
  182. package/lib/installation/createFoundryBackendInstallation.test.js +0 -83
  183. package/lib/installation/createFoundryBackendInstallation.test.js.map +0 -1
  184. package/lib/installation/index.d.ts.map +0 -1
  185. package/lib/installation/index.js.map +0 -1
  186. package/lib/meta/actionTypeCollectionOptions.test.d.ts +0 -2
  187. package/lib/meta/actionTypeCollectionOptions.test.d.ts.map +0 -1
  188. package/lib/meta/actionTypeCollectionOptions.test.js +0 -24
  189. package/lib/meta/actionTypeCollectionOptions.test.js.map +0 -1
  190. package/lib/meta/actionTypeIdQuery.test.d.ts +0 -2
  191. package/lib/meta/actionTypeIdQuery.test.d.ts.map +0 -1
  192. package/lib/meta/actionTypeIdQuery.test.js +0 -131
  193. package/lib/meta/actionTypeIdQuery.test.js.map +0 -1
  194. package/lib/meta/convertActionTypeLoadSubsetOptions.test.d.ts +0 -2
  195. package/lib/meta/convertActionTypeLoadSubsetOptions.test.d.ts.map +0 -1
  196. package/lib/meta/convertActionTypeLoadSubsetOptions.test.js +0 -138
  197. package/lib/meta/convertActionTypeLoadSubsetOptions.test.js.map +0 -1
  198. package/lib/meta/convertMetaActionType.test.d.ts +0 -2
  199. package/lib/meta/convertMetaActionType.test.d.ts.map +0 -1
  200. package/lib/meta/convertMetaActionType.test.js +0 -1565
  201. package/lib/meta/convertMetaActionType.test.js.map +0 -1
  202. package/lib/meta/convertMetaLinkType.test.d.ts +0 -2
  203. package/lib/meta/convertMetaLinkType.test.d.ts.map +0 -1
  204. package/lib/meta/convertMetaLinkType.test.js +0 -110
  205. package/lib/meta/convertMetaLinkType.test.js.map +0 -1
  206. package/lib/meta/convertMetaObjectType.test.d.ts +0 -2
  207. package/lib/meta/convertMetaObjectType.test.d.ts.map +0 -1
  208. package/lib/meta/convertMetaObjectType.test.js +0 -250
  209. package/lib/meta/convertMetaObjectType.test.js.map +0 -1
  210. package/lib/meta/convertMetaQueryFunctionType.test.d.ts +0 -2
  211. package/lib/meta/convertMetaQueryFunctionType.test.d.ts.map +0 -1
  212. package/lib/meta/convertMetaQueryFunctionType.test.js +0 -134
  213. package/lib/meta/convertMetaQueryFunctionType.test.js.map +0 -1
  214. package/lib/meta/createFoundryMetaOntologyBackendAdapter.test.d.ts +0 -2
  215. package/lib/meta/createFoundryMetaOntologyBackendAdapter.test.d.ts.map +0 -1
  216. package/lib/meta/createFoundryMetaOntologyBackendAdapter.test.js +0 -49
  217. package/lib/meta/createFoundryMetaOntologyBackendAdapter.test.js.map +0 -1
  218. package/lib/meta/entityCollectionOptions.test.d.ts +0 -2
  219. package/lib/meta/entityCollectionOptions.test.d.ts.map +0 -1
  220. package/lib/meta/entityCollectionOptions.test.js +0 -98
  221. package/lib/meta/entityCollectionOptions.test.js.map +0 -1
  222. package/lib/meta/index.d.ts.map +0 -1
  223. package/lib/meta/index.js.map +0 -1
  224. package/lib/meta/loadActionTypeOmsMetadata.test.d.ts +0 -2
  225. package/lib/meta/loadActionTypeOmsMetadata.test.d.ts.map +0 -1
  226. package/lib/meta/loadActionTypeOmsMetadata.test.js +0 -218
  227. package/lib/meta/loadActionTypeOmsMetadata.test.js.map +0 -1
  228. package/lib/stagedWrites.test.d.ts +0 -2
  229. package/lib/stagedWrites.test.d.ts.map +0 -1
  230. package/lib/stagedWrites.test.js +0 -71
  231. package/lib/stagedWrites.test.js.map +0 -1
  232. package/lib/users/createFoundryUsersIntegration.test.d.ts +0 -2
  233. package/lib/users/createFoundryUsersIntegration.test.d.ts.map +0 -1
  234. package/lib/users/createFoundryUsersIntegration.test.js +0 -32
  235. package/lib/users/createFoundryUsersIntegration.test.js.map +0 -1
  236. package/lib/users/foundryUser.test.d.ts +0 -2
  237. package/lib/users/foundryUser.test.d.ts.map +0 -1
  238. package/lib/users/foundryUser.test.js +0 -45
  239. package/lib/users/foundryUser.test.js.map +0 -1
  240. package/lib/users/index.d.ts.map +0 -1
  241. package/lib/users/index.js.map +0 -1
  242. package/lib/users/userCollectionOptions.test.d.ts +0 -2
  243. package/lib/users/userCollectionOptions.test.d.ts.map +0 -1
  244. package/lib/users/userCollectionOptions.test.js +0 -18
  245. package/lib/users/userCollectionOptions.test.js.map +0 -1
  246. package/lib/utils/AsyncIterable.test.d.ts +0 -2
  247. package/lib/utils/AsyncIterable.test.d.ts.map +0 -1
  248. package/lib/utils/AsyncIterable.test.js +0 -17
  249. package/lib/utils/AsyncIterable.test.js.map +0 -1
  250. package/lib/utils/actionTypeName.test.d.ts +0 -2
  251. package/lib/utils/actionTypeName.test.d.ts.map +0 -1
  252. package/lib/utils/actionTypeName.test.js +0 -30
  253. package/lib/utils/actionTypeName.test.js.map +0 -1
@@ -1,28 +1,29 @@
1
- import type { OntologyIR, OntologyMutator, OntologyMutatorObjects, OntologyMutatorTx } from "@party-stack/ontology";
2
- import type { InitialQueryBuilder } from "@tanstack/db";
1
+ import { InitialQueryBuilder } from "@tanstack/db";
2
+ import { OntologyIR, OntologyMutator, OntologyMutatorObjects, OntologyMutatorTx } from "@party-stack/ontology";
3
+ //#region src/stagedWrites.d.ts
3
4
  /**
4
5
  * Structural subset of Foundry's staged-write `WriteableClient`.
5
6
  * Generated Foundry clients can be passed directly.
6
7
  */
7
8
  export interface FoundryStagedWriteClient {
8
- create(objectType: unknown, object: Record<string, unknown>): Promise<unknown>;
9
- update(object: {
10
- $apiName: string;
11
- $primaryKey: string | number;
12
- }, changes: Record<string, unknown>): Promise<unknown>;
13
- delete(object: {
14
- $apiName: string;
15
- $primaryKey: string | number;
16
- }): Promise<unknown>;
17
- query?<T>(build: (query: InitialQueryBuilder, objects: OntologyMutatorObjects) => unknown): Promise<T>;
9
+ create(objectType: unknown, object: Record<string, unknown>): Promise<unknown>;
10
+ update(object: {
11
+ $apiName: string;
12
+ $primaryKey: string | number;
13
+ }, changes: Record<string, unknown>): Promise<unknown>;
14
+ delete(object: {
15
+ $apiName: string;
16
+ $primaryKey: string | number;
17
+ }): Promise<unknown>;
18
+ query?<T>(build: (query: InitialQueryBuilder, objects: OntologyMutatorObjects) => unknown): Promise<T>;
18
19
  }
19
20
  export interface CreateFoundryStagedWriteMutatorTxOptions {
20
- client: FoundryStagedWriteClient;
21
- /**
22
- * Generated OSDK object type tokens, keyed by ontology API name. Required
23
- * for creates when the client cannot accept an `$apiName` placeholder.
24
- */
25
- objectTypes?: Record<string, unknown>;
21
+ client: FoundryStagedWriteClient;
22
+ /**
23
+ * Generated OSDK object type tokens, keyed by ontology API name. Required
24
+ * for creates when the client cannot accept an `$apiName` placeholder.
25
+ */
26
+ objectTypes?: Record<string, unknown>;
26
27
  }
27
28
  export declare function createFoundryStagedWriteMutatorTx(options: CreateFoundryStagedWriteMutatorTxOptions): OntologyMutatorTx;
28
29
  /**
@@ -30,11 +31,12 @@ export declare function createFoundryStagedWriteMutatorTx(options: CreateFoundry
30
31
  * transaction. Foundry provides atomic commit/rollback and read-after-write.
31
32
  */
32
33
  export declare function runFoundryOntologyMutator(options: {
33
- ir: OntologyIR;
34
- client: FoundryStagedWriteClient;
35
- mutator: OntologyMutator;
36
- args: Record<string, unknown>;
37
- context?: Record<string, unknown>;
38
- objectTypes?: Record<string, unknown>;
34
+ ir: OntologyIR;
35
+ client: FoundryStagedWriteClient;
36
+ mutator: OntologyMutator;
37
+ args: Record<string, unknown>;
38
+ context?: Record<string, unknown>;
39
+ objectTypes?: Record<string, unknown>;
39
40
  }): Promise<void>;
41
+ //#endregion
40
42
  //# sourceMappingURL=stagedWrites.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stagedWrites.d.ts","sourceRoot":"","sources":["../src/stagedWrites.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EAEpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACrC,MAAM,CACF,UAAU,EAAE,OAAO,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,MAAM,CACF,MAAM,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;KAChC,EACD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,MAAM,CAAC,MAAM,EAAE;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;KAChC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,KAAK,CAAC,CAAC,CAAC,EACJ,KAAK,EAAE,CACH,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,sBAAsB,KAC9B,OAAO,GACb,OAAO,CAAC,CAAC,CAAC,CAAC;CACjB;AAED,MAAM,WAAW,wCAAwC;IACrD,MAAM,EAAE,wBAAwB,CAAC;IACjC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAmCD,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,wCAAwC,GAClD,iBAAiB,CAyDnB;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE;IACrD,EAAE,EAAE,UAAU,CAAC;IACf,MAAM,EAAE,wBAAwB,CAAC;IACjC,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhB"}
1
+ {"version":3,"file":"stagedWrites.d.ts","names":[],"sources":["../src/stagedWrites.ts"],"mappings":";;;;;;;iBAaiB;EACb,OAAO,qBAAqB,QAAQ,0BAA0B;EAC9D,OACI;IACI;IACA;KAEJ,SAAS,0BACV;EACH,OAAO;IAAU;IAAkB;MAAiC;EACpE,OAAO,GAAG,QAAQ,OAAO,qBAAqB,SAAS,qCAAqC,QAAQ;;iBAGvF;EACb,QAAQ;;;;;EAKR,cAAc;;wBA0BF,kCACZ,SAAS,2CACV;;;;;wBAuDmB,0BAA0B;EAC5C,IAAI;EACJ,QAAQ;EACR,SAAS;EACT,MAAM;EACN,UAAU;EACV,cAAc;IACd"}
@@ -1,74 +1,63 @@
1
+ //#region src/stagedWrites.ts
1
2
  function setPath(object, path, value) {
2
- let target = object;
3
- for (const segment of path.slice(0, -1)) {
4
- const existing = target[segment];
5
- if (typeof existing !== "object" ||
6
- existing === null ||
7
- Array.isArray(existing)) {
8
- target[segment] = {};
9
- }
10
- target = target[segment];
11
- }
12
- target[path.at(-1)] = value;
3
+ let target = object;
4
+ for (const segment of path.slice(0, -1)) {
5
+ const existing = target[segment];
6
+ if (typeof existing !== "object" || existing === null || Array.isArray(existing)) target[segment] = {};
7
+ target = target[segment];
8
+ }
9
+ target[path.at(-1)] = value;
13
10
  }
14
11
  function changesToRecord(changes) {
15
- if (!Array.isArray(changes))
16
- return changes;
17
- const record = {};
18
- for (const change of changes) {
19
- setPath(record, change.path, change.value);
20
- }
21
- return record;
12
+ if (!Array.isArray(changes)) return changes;
13
+ const record = {};
14
+ for (const change of changes) setPath(record, change.path, change.value);
15
+ return record;
22
16
  }
23
- export function createFoundryStagedWriteMutatorTx(options) {
24
- return {
25
- query: async (build) => {
26
- if (!options.client.query) {
27
- throw new Error("Foundry staged-write mutator queries require a query adapter backed by the ambient staged-write client.");
28
- }
29
- return options.client.query(build);
30
- },
31
- mutate: new Proxy({}, {
32
- get: (_target, objectType) => {
33
- if (typeof objectType !== "string") {
34
- return undefined;
35
- }
36
- return {
37
- create: async (object) => {
38
- await options.client.create(options.objectTypes?.[objectType] ?? {
39
- $apiName: objectType,
40
- }, object);
41
- },
42
- update: async (key, changes) => {
43
- await options.client.update({
44
- $apiName: objectType,
45
- $primaryKey: key,
46
- }, changesToRecord(changes));
47
- },
48
- delete: async (key) => {
49
- await options.client.delete({
50
- $apiName: objectType,
51
- $primaryKey: key,
52
- });
53
- },
54
- };
55
- },
56
- }),
57
- };
17
+ function createFoundryStagedWriteMutatorTx(options) {
18
+ return {
19
+ query: async (build) => {
20
+ if (!options.client.query) throw new Error("Foundry staged-write mutator queries require a query adapter backed by the ambient staged-write client.");
21
+ return options.client.query(build);
22
+ },
23
+ mutate: new Proxy({}, { get: (_target, objectType) => {
24
+ if (typeof objectType !== "string") return;
25
+ return {
26
+ create: async (object) => {
27
+ await options.client.create(options.objectTypes?.[objectType] ?? { $apiName: objectType }, object);
28
+ },
29
+ update: async (key, changes) => {
30
+ await options.client.update({
31
+ $apiName: objectType,
32
+ $primaryKey: key
33
+ }, changesToRecord(changes));
34
+ },
35
+ delete: async (key) => {
36
+ await options.client.delete({
37
+ $apiName: objectType,
38
+ $primaryKey: key
39
+ });
40
+ }
41
+ };
42
+ } })
43
+ };
58
44
  }
59
45
  /**
60
- * Run a Party Stack ontology mutator inside Foundry's ambient staged-write
61
- * transaction. Foundry provides atomic commit/rollback and read-after-write.
62
- */
63
- export async function runFoundryOntologyMutator(options) {
64
- const tx = createFoundryStagedWriteMutatorTx({
65
- client: options.client,
66
- objectTypes: options.objectTypes,
67
- });
68
- await options.mutator({
69
- tx,
70
- args: options.args,
71
- context: options.context ?? {},
72
- });
46
+ * Run a Party Stack ontology mutator inside Foundry's ambient staged-write
47
+ * transaction. Foundry provides atomic commit/rollback and read-after-write.
48
+ */
49
+ async function runFoundryOntologyMutator(options) {
50
+ const tx = createFoundryStagedWriteMutatorTx({
51
+ client: options.client,
52
+ objectTypes: options.objectTypes
53
+ });
54
+ await options.mutator({
55
+ tx,
56
+ args: options.args,
57
+ context: options.context ?? {}
58
+ });
73
59
  }
60
+ //#endregion
61
+ export { createFoundryStagedWriteMutatorTx, runFoundryOntologyMutator };
62
+
74
63
  //# sourceMappingURL=stagedWrites.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stagedWrites.js","sourceRoot":"","sources":["../src/stagedWrites.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stagedWrites.js","names":[],"sources":["../src/stagedWrites.ts"],"sourcesContent":["import type {\n OntologyIR,\n OntologyMutator,\n OntologyMutatorObjects,\n OntologyMutatorTx,\n OntologyPropertyChange,\n} from \"@party-stack/ontology\";\nimport type { InitialQueryBuilder } from \"@tanstack/db\";\n\n/**\n * Structural subset of Foundry's staged-write `WriteableClient`.\n * Generated Foundry clients can be passed directly.\n */\nexport interface FoundryStagedWriteClient {\n create(objectType: unknown, object: Record<string, unknown>): Promise<unknown>;\n update(\n object: {\n $apiName: string;\n $primaryKey: string | number;\n },\n changes: Record<string, unknown>\n ): Promise<unknown>;\n delete(object: { $apiName: string; $primaryKey: string | number }): Promise<unknown>;\n query?<T>(build: (query: InitialQueryBuilder, objects: OntologyMutatorObjects) => unknown): Promise<T>;\n}\n\nexport interface CreateFoundryStagedWriteMutatorTxOptions {\n client: FoundryStagedWriteClient;\n /**\n * Generated OSDK object type tokens, keyed by ontology API name. Required\n * for creates when the client cannot accept an `$apiName` placeholder.\n */\n objectTypes?: Record<string, unknown>;\n}\n\nfunction setPath(object: Record<string, unknown>, path: string[], value: unknown): void {\n let target = object;\n for (const segment of path.slice(0, -1)) {\n const existing = target[segment];\n if (typeof existing !== \"object\" || existing === null || Array.isArray(existing)) {\n target[segment] = {};\n }\n target = target[segment] as Record<string, unknown>;\n }\n target[path.at(-1)!] = value;\n}\n\nfunction changesToRecord(\n changes: Record<string, unknown> | OntologyPropertyChange[]\n): Record<string, unknown> {\n if (!Array.isArray(changes)) return changes;\n const record: Record<string, unknown> = {};\n for (const change of changes) {\n setPath(record, change.path, change.value);\n }\n return record;\n}\n\nexport function createFoundryStagedWriteMutatorTx(\n options: CreateFoundryStagedWriteMutatorTxOptions\n): OntologyMutatorTx {\n return {\n query: async (build) => {\n if (!options.client.query) {\n throw new Error(\n \"Foundry staged-write mutator queries require a query adapter backed by the ambient staged-write client.\"\n );\n }\n return options.client.query(build);\n },\n mutate: new Proxy(\n {},\n {\n get: (_target, objectType) => {\n if (typeof objectType !== \"string\") {\n return undefined;\n }\n return {\n create: async (object: Record<string, unknown>) => {\n await options.client.create(\n options.objectTypes?.[objectType] ?? {\n $apiName: objectType,\n },\n object\n );\n },\n update: async (\n key: string | number,\n changes: Record<string, unknown> | OntologyPropertyChange[]\n ) => {\n await options.client.update(\n {\n $apiName: objectType,\n $primaryKey: key,\n },\n changesToRecord(changes)\n );\n },\n delete: async (key: string | number) => {\n await options.client.delete({\n $apiName: objectType,\n $primaryKey: key,\n });\n },\n };\n },\n }\n ),\n };\n}\n\n/**\n * Run a Party Stack ontology mutator inside Foundry's ambient staged-write\n * transaction. Foundry provides atomic commit/rollback and read-after-write.\n */\nexport async function runFoundryOntologyMutator(options: {\n ir: OntologyIR;\n client: FoundryStagedWriteClient;\n mutator: OntologyMutator;\n args: Record<string, unknown>;\n context?: Record<string, unknown>;\n objectTypes?: Record<string, unknown>;\n}): Promise<void> {\n const tx = createFoundryStagedWriteMutatorTx({\n client: options.client,\n objectTypes: options.objectTypes,\n });\n await options.mutator({\n tx,\n args: options.args,\n context: options.context ?? {},\n });\n}\n"],"mappings":";AAmCA,SAAS,QAAQ,QAAiC,MAAgB,OAAsB;CACpF,IAAI,SAAS;CACb,KAAK,MAAM,WAAW,KAAK,MAAM,GAAG,EAAE,GAAG;EACrC,MAAM,WAAW,OAAO;EACxB,IAAI,OAAO,aAAa,YAAY,aAAa,QAAQ,MAAM,QAAQ,QAAQ,GAC3E,OAAO,WAAW,CAAC;EAEvB,SAAS,OAAO;CACpB;CACA,OAAO,KAAK,GAAG,EAAE,KAAM;AAC3B;AAEA,SAAS,gBACL,SACuB;CACvB,IAAI,CAAC,MAAM,QAAQ,OAAO,GAAG,OAAO;CACpC,MAAM,SAAkC,CAAC;CACzC,KAAK,MAAM,UAAU,SACjB,QAAQ,QAAQ,OAAO,MAAM,OAAO,KAAK;CAE7C,OAAO;AACX;AAEA,SAAgB,kCACZ,SACiB;CACjB,OAAO;EACH,OAAO,OAAO,UAAU;GACpB,IAAI,CAAC,QAAQ,OAAO,OAChB,MAAM,IAAI,MACN,yGACJ;GAEJ,OAAO,QAAQ,OAAO,MAAM,KAAK;EACrC;EACA,QAAQ,IAAI,MACR,CAAC,GACD,EACI,MAAM,SAAS,eAAe;GAC1B,IAAI,OAAO,eAAe,UACtB;GAEJ,OAAO;IACH,QAAQ,OAAO,WAAoC;KAC/C,MAAM,QAAQ,OAAO,OACjB,QAAQ,cAAc,eAAe,EACjC,UAAU,WACd,GACA,MACJ;IACJ;IACA,QAAQ,OACJ,KACA,YACC;KACD,MAAM,QAAQ,OAAO,OACjB;MACI,UAAU;MACV,aAAa;KACjB,GACA,gBAAgB,OAAO,CAC3B;IACJ;IACA,QAAQ,OAAO,QAAyB;KACpC,MAAM,QAAQ,OAAO,OAAO;MACxB,UAAU;MACV,aAAa;KACjB,CAAC;IACL;GACJ;EACJ,EACJ,CACJ;CACJ;AACJ;;;;;AAMA,eAAsB,0BAA0B,SAO9B;CACd,MAAM,KAAK,kCAAkC;EACzC,QAAQ,QAAQ;EAChB,aAAa,QAAQ;CACzB,CAAC;CACD,MAAM,QAAQ,QAAQ;EAClB;EACA,MAAM,QAAQ;EACd,SAAS,QAAQ,WAAW,CAAC;CACjC,CAAC;AACL"}