@party-stack/foundry-ontology 0.18.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 +17 -23
  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 -1290
  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,6 +1,8 @@
1
1
  import { SearchJsonQueryV2, SearchOrderByV2 } from "@osdk/foundry.ontologies";
2
2
  import { LoadSubsetOptions } from "@tanstack/db";
3
+ //#region src/adapter/convertLoadSubsetOptions.d.ts
3
4
  export declare function isAlwaysFalseFilter(filter: SearchJsonQueryV2 | undefined): boolean;
4
5
  export declare function convertLoadSubsetFilter(filter: LoadSubsetOptions["where"]): SearchJsonQueryV2 | undefined;
5
6
  export declare function convertLoadSubsetOrderBy(orderBy: LoadSubsetOptions["orderBy"]): SearchOrderByV2 | undefined;
7
+ //#endregion
6
8
  //# sourceMappingURL=convertLoadSubsetOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convertLoadSubsetOptions.d.ts","sourceRoot":"","sources":["../../src/adapter/convertLoadSubsetOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,iBAAiB,EACjB,eAAe,EAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAa,iBAAiB,EAAgD,MAAM,cAAc,CAAC;AAyJ1G,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,SAAS,GAAG,OAAO,CAElF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,iBAAiB,GAAG,SAAS,CA0FzG;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,eAAe,GAAG,SAAS,CAS3G"}
1
+ {"version":3,"file":"convertLoadSubsetOptions.d.ts","names":[],"sources":["../../src/adapter/convertLoadSubsetOptions.ts"],"mappings":";;;wBA8JgB,oBAAoB,QAAQ;wBAI5B,wBAAwB,QAAQ,6BAA6B;wBA4F7D,yBAAyB,SAAS,+BAA+B"}
@@ -1,211 +1,178 @@
1
1
  import { parseOrderByExpression, parseWhereExpression } from "@tanstack/db";
2
2
  import { Temporal } from "temporal-polyfill";
3
- const ALWAYS_FALSE_FILTER = { type: "or", value: [] };
4
- const ALWAYS_TRUE_FILTER = { type: "and", value: [] };
3
+ //#region src/adapter/convertLoadSubsetOptions.ts
4
+ const ALWAYS_FALSE_FILTER = {
5
+ type: "or",
6
+ value: []
7
+ };
8
+ const ALWAYS_TRUE_FILTER = {
9
+ type: "and",
10
+ value: []
11
+ };
5
12
  function pushdown(query, safeToNegate = true) {
6
- return { query, safeToNegate };
13
+ return {
14
+ query,
15
+ safeToNegate
16
+ };
7
17
  }
8
18
  function parseLikePattern(pattern) {
9
- const parts = [];
10
- let literal = "";
11
- const flushLiteral = () => {
12
- if (literal) {
13
- parts.push({ type: "literal", value: literal });
14
- literal = "";
15
- }
16
- };
17
- for (let index = 0; index < pattern.length; index++) {
18
- const character = pattern[index];
19
- if (character === "\\") {
20
- const escaped = pattern[index + 1];
21
- if (escaped === "%" || escaped === "_" || escaped === "\\") {
22
- literal += escaped;
23
- index++;
24
- }
25
- else {
26
- literal += character;
27
- }
28
- }
29
- else if (character === "%") {
30
- flushLiteral();
31
- parts.push({ type: "many" });
32
- }
33
- else if (character === "_") {
34
- flushLiteral();
35
- parts.push({ type: "single" });
36
- }
37
- else {
38
- literal += character;
39
- }
40
- }
41
- flushLiteral();
42
- return parts;
19
+ const parts = [];
20
+ let literal = "";
21
+ const flushLiteral = () => {
22
+ if (literal) {
23
+ parts.push({
24
+ type: "literal",
25
+ value: literal
26
+ });
27
+ literal = "";
28
+ }
29
+ };
30
+ for (let index = 0; index < pattern.length; index++) {
31
+ const character = pattern[index];
32
+ if (character === "\\") {
33
+ const escaped = pattern[index + 1];
34
+ if (escaped === "%" || escaped === "_" || escaped === "\\") {
35
+ literal += escaped;
36
+ index++;
37
+ } else literal += character;
38
+ } else if (character === "%") {
39
+ flushLiteral();
40
+ parts.push({ type: "many" });
41
+ } else if (character === "_") {
42
+ flushLiteral();
43
+ parts.push({ type: "single" });
44
+ } else literal += character;
45
+ }
46
+ flushLiteral();
47
+ return parts;
43
48
  }
44
49
  function escapeFoundryWildcardLiteral(value) {
45
- return value.replace(/[\\*?]/g, "\\$&");
50
+ return value.replace(/[\\*?]/g, "\\$&");
46
51
  }
47
52
  function convertLikeFilter(field, value) {
48
- const parts = parseLikePattern(value.toLowerCase());
49
- const hasLeadingWildcard = parts[0]?.type === "many";
50
- const hasTrailingWildcard = parts.at(-1)?.type === "many";
51
- const propertyIdentifier = fieldPathToPropertyIdentifier(field);
52
- if (hasLeadingWildcard && hasTrailingWildcard) {
53
- const terms = parts.flatMap((part) => (part.type === "literal" && part.value ? [part.value] : []));
54
- const queries = terms.map((term) => ({
55
- // This is Foundry's substring/phrase query. It can over-fetch because
56
- // wildcard-delimited terms are not required to be adjacent or ordered.
57
- type: "containsAllTermsInOrder",
58
- propertyIdentifier,
59
- value: term,
60
- }));
61
- const query = queries.length === 0
62
- ? ALWAYS_TRUE_FILTER
63
- : queries.length === 1
64
- ? queries[0]
65
- : { type: "and", value: queries };
66
- // Contains is an approximation of SQL LIKE. Negating this superset
67
- // would produce a subset and could hide exact matches.
68
- return pushdown(query, false);
69
- }
70
- const wildcard = parts
71
- .map((part) => {
72
- if (part.type === "many")
73
- return "*";
74
- if (part.type === "single")
75
- return "?";
76
- return escapeFoundryWildcardLiteral(part.value);
77
- })
78
- .join("");
79
- return pushdown({
80
- type: "wildcard",
81
- propertyIdentifier,
82
- value: wildcard,
83
- });
53
+ const parts = parseLikePattern(value.toLowerCase());
54
+ const hasLeadingWildcard = parts[0]?.type === "many";
55
+ const hasTrailingWildcard = parts.at(-1)?.type === "many";
56
+ const propertyIdentifier = fieldPathToPropertyIdentifier(field);
57
+ if (hasLeadingWildcard && hasTrailingWildcard) {
58
+ const queries = parts.flatMap((part) => part.type === "literal" && part.value ? [part.value] : []).map((term) => ({
59
+ type: "containsAllTermsInOrder",
60
+ propertyIdentifier,
61
+ value: term
62
+ }));
63
+ return pushdown(queries.length === 0 ? ALWAYS_TRUE_FILTER : queries.length === 1 ? queries[0] : {
64
+ type: "and",
65
+ value: queries
66
+ }, false);
67
+ }
68
+ return pushdown({
69
+ type: "wildcard",
70
+ propertyIdentifier,
71
+ value: parts.map((part) => {
72
+ if (part.type === "many") return "*";
73
+ if (part.type === "single") return "?";
74
+ return escapeFoundryWildcardLiteral(part.value);
75
+ }).join("")
76
+ });
84
77
  }
85
78
  function convertQueryValue(value) {
86
- if (value instanceof Date) {
87
- return value.toISOString();
88
- }
89
- if (value instanceof Temporal.Instant ||
90
- value instanceof Temporal.PlainDate ||
91
- value instanceof Temporal.PlainDateTime) {
92
- return value.toString();
93
- }
94
- return value;
79
+ if (value instanceof Date) return value.toISOString();
80
+ if (value instanceof Temporal.Instant || value instanceof Temporal.PlainDate || value instanceof Temporal.PlainDateTime) return value.toString();
81
+ return value;
95
82
  }
96
83
  function fieldPathToPropertyIdentifier(fieldPath) {
97
- if (fieldPath.length === 1) {
98
- return {
99
- type: "property",
100
- apiName: fieldPath[0],
101
- };
102
- }
103
- else if (fieldPath.length === 2) {
104
- return {
105
- type: "structField",
106
- propertyApiName: fieldPath[0],
107
- structFieldApiName: fieldPath[1],
108
- };
109
- }
110
- throw new Error(`Invalid field path: ${fieldPath.join(".")}`);
84
+ if (fieldPath.length === 1) return {
85
+ type: "property",
86
+ apiName: fieldPath[0]
87
+ };
88
+ else if (fieldPath.length === 2) return {
89
+ type: "structField",
90
+ propertyApiName: fieldPath[0],
91
+ structFieldApiName: fieldPath[1]
92
+ };
93
+ throw new Error(`Invalid field path: ${fieldPath.join(".")}`);
111
94
  }
112
95
  function convertInFilter(fieldOrValue, valuesOrField) {
113
- if (!Array.isArray(valuesOrField)) {
114
- throw new Error("Expected the second inArray argument to be an array or field path");
115
- }
116
- if (!Array.isArray(fieldOrValue)) {
117
- return pushdown({
118
- type: "contains",
119
- propertyIdentifier: fieldPathToPropertyIdentifier(valuesOrField),
120
- value: convertQueryValue(fieldOrValue),
121
- });
122
- }
123
- const field = fieldOrValue;
124
- const values = valuesOrField;
125
- return pushdown({
126
- type: "in",
127
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
128
- value: values
129
- .filter((entry) => entry !== null && entry !== undefined)
130
- .map(convertQueryValue),
131
- });
96
+ if (!Array.isArray(valuesOrField)) throw new Error("Expected the second inArray argument to be an array or field path");
97
+ if (!Array.isArray(fieldOrValue)) return pushdown({
98
+ type: "contains",
99
+ propertyIdentifier: fieldPathToPropertyIdentifier(valuesOrField),
100
+ value: convertQueryValue(fieldOrValue)
101
+ });
102
+ const field = fieldOrValue;
103
+ const values = valuesOrField;
104
+ return pushdown({
105
+ type: "in",
106
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
107
+ value: values.filter((entry) => entry !== null && entry !== void 0).map(convertQueryValue)
108
+ });
132
109
  }
133
- export function isAlwaysFalseFilter(filter) {
134
- return filter?.type === "or" && filter.value.length === 0;
110
+ function isAlwaysFalseFilter(filter) {
111
+ return filter?.type === "or" && filter.value.length === 0;
135
112
  }
136
- export function convertLoadSubsetFilter(filter) {
137
- return (parseWhereExpression(filter, {
138
- handlers: {
139
- and: (...filters) => pushdown({ type: "and", value: filters.map(({ query }) => query) }, filters.every(({ safeToNegate }) => safeToNegate)),
140
- or: (...filters) => pushdown({ type: "or", value: filters.map(({ query }) => query) }, filters.every(({ safeToNegate }) => safeToNegate)),
141
- not: (filter) => filter.safeToNegate
142
- ? pushdown({ type: "not", value: filter.query })
143
- : pushdown(ALWAYS_TRUE_FILTER, false),
144
- eq: (field, value) => pushdown(value === null
145
- ? ALWAYS_FALSE_FILTER
146
- : value === undefined
147
- ? {
148
- type: "isNull",
149
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
150
- value: true,
151
- }
152
- : {
153
- type: "eq",
154
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
155
- value: convertQueryValue(value),
156
- }),
157
- gt: (field, value) => pushdown(value == null
158
- ? ALWAYS_FALSE_FILTER
159
- : {
160
- type: "gt",
161
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
162
- value: convertQueryValue(value),
163
- }),
164
- gte: (field, value) => pushdown(value == null
165
- ? ALWAYS_FALSE_FILTER
166
- : {
167
- type: "gte",
168
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
169
- value: convertQueryValue(value),
170
- }),
171
- lt: (field, value) => pushdown(value == null
172
- ? ALWAYS_FALSE_FILTER
173
- : {
174
- type: "lt",
175
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
176
- value: convertQueryValue(value),
177
- }),
178
- lte: (field, value) => pushdown(value == null
179
- ? ALWAYS_FALSE_FILTER
180
- : {
181
- type: "lte",
182
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
183
- value: convertQueryValue(value),
184
- }),
185
- isUndefined: (field) => ({
186
- query: {
187
- type: "isNull",
188
- propertyIdentifier: fieldPathToPropertyIdentifier(field),
189
- value: true,
190
- },
191
- safeToNegate: true,
192
- }),
193
- in: convertInFilter,
194
- ilike: convertLikeFilter,
195
- // Foundry wildcard and contains searches are case-insensitive,
196
- // so LIKE can over-fetch while TanStack applies exact casing.
197
- like: convertLikeFilter,
198
- },
199
- })?.query ?? undefined);
113
+ function convertLoadSubsetFilter(filter) {
114
+ return parseWhereExpression(filter, { handlers: {
115
+ and: (...filters) => pushdown({
116
+ type: "and",
117
+ value: filters.map(({ query }) => query)
118
+ }, filters.every(({ safeToNegate }) => safeToNegate)),
119
+ or: (...filters) => pushdown({
120
+ type: "or",
121
+ value: filters.map(({ query }) => query)
122
+ }, filters.every(({ safeToNegate }) => safeToNegate)),
123
+ not: (filter) => filter.safeToNegate ? pushdown({
124
+ type: "not",
125
+ value: filter.query
126
+ }) : pushdown(ALWAYS_TRUE_FILTER, false),
127
+ eq: (field, value) => pushdown(value === null ? ALWAYS_FALSE_FILTER : value === void 0 ? {
128
+ type: "isNull",
129
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
130
+ value: true
131
+ } : {
132
+ type: "eq",
133
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
134
+ value: convertQueryValue(value)
135
+ }),
136
+ gt: (field, value) => pushdown(value == null ? ALWAYS_FALSE_FILTER : {
137
+ type: "gt",
138
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
139
+ value: convertQueryValue(value)
140
+ }),
141
+ gte: (field, value) => pushdown(value == null ? ALWAYS_FALSE_FILTER : {
142
+ type: "gte",
143
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
144
+ value: convertQueryValue(value)
145
+ }),
146
+ lt: (field, value) => pushdown(value == null ? ALWAYS_FALSE_FILTER : {
147
+ type: "lt",
148
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
149
+ value: convertQueryValue(value)
150
+ }),
151
+ lte: (field, value) => pushdown(value == null ? ALWAYS_FALSE_FILTER : {
152
+ type: "lte",
153
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
154
+ value: convertQueryValue(value)
155
+ }),
156
+ isUndefined: (field) => ({
157
+ query: {
158
+ type: "isNull",
159
+ propertyIdentifier: fieldPathToPropertyIdentifier(field),
160
+ value: true
161
+ },
162
+ safeToNegate: true
163
+ }),
164
+ in: convertInFilter,
165
+ ilike: convertLikeFilter,
166
+ like: convertLikeFilter
167
+ } })?.query ?? void 0;
200
168
  }
201
- export function convertLoadSubsetOrderBy(orderBy) {
202
- return orderBy
203
- ? {
204
- fields: parseOrderByExpression(orderBy).map((ordering) => ({
205
- field: ordering.field[0],
206
- direction: ordering.direction,
207
- })),
208
- }
209
- : undefined;
169
+ function convertLoadSubsetOrderBy(orderBy) {
170
+ return orderBy ? { fields: parseOrderByExpression(orderBy).map((ordering) => ({
171
+ field: ordering.field[0],
172
+ direction: ordering.direction
173
+ })) } : void 0;
210
174
  }
175
+ //#endregion
176
+ export { convertLoadSubsetFilter, convertLoadSubsetOrderBy, isAlwaysFalseFilter };
177
+
211
178
  //# sourceMappingURL=convertLoadSubsetOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"convertLoadSubsetOptions.js","sourceRoot":"","sources":["../../src/adapter/convertLoadSubsetOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convertLoadSubsetOptions.js","names":[],"sources":["../../src/adapter/convertLoadSubsetOptions.ts"],"sourcesContent":["import {\n PropertyApiName,\n PropertyIdentifier,\n SearchJsonQueryV2,\n SearchOrderByV2,\n StructFieldApiName,\n} from \"@osdk/foundry.ontologies\";\nimport { FieldPath, LoadSubsetOptions, parseOrderByExpression, parseWhereExpression } from \"@tanstack/db\";\nimport { Temporal } from \"temporal-polyfill\";\n\nconst ALWAYS_FALSE_FILTER: SearchJsonQueryV2 = { type: \"or\", value: [] };\nconst ALWAYS_TRUE_FILTER: SearchJsonQueryV2 = { type: \"and\", value: [] };\n\ntype LikePatternPart = { type: \"literal\"; value: string } | { type: \"many\" } | { type: \"single\" };\n\ninterface PushdownFilter {\n query: SearchJsonQueryV2;\n safeToNegate: boolean;\n}\n\nfunction pushdown(query: SearchJsonQueryV2, safeToNegate = true): PushdownFilter {\n return { query, safeToNegate };\n}\n\nfunction parseLikePattern(pattern: string): LikePatternPart[] {\n const parts: LikePatternPart[] = [];\n let literal = \"\";\n\n const flushLiteral = () => {\n if (literal) {\n parts.push({ type: \"literal\", value: literal });\n literal = \"\";\n }\n };\n\n for (let index = 0; index < pattern.length; index++) {\n const character = pattern[index]!;\n if (character === \"\\\\\") {\n const escaped = pattern[index + 1];\n if (escaped === \"%\" || escaped === \"_\" || escaped === \"\\\\\") {\n literal += escaped;\n index++;\n } else {\n literal += character;\n }\n } else if (character === \"%\") {\n flushLiteral();\n parts.push({ type: \"many\" });\n } else if (character === \"_\") {\n flushLiteral();\n parts.push({ type: \"single\" });\n } else {\n literal += character;\n }\n }\n flushLiteral();\n\n return parts;\n}\n\nfunction escapeFoundryWildcardLiteral(value: string): string {\n return value.replace(/[\\\\*?]/g, \"\\\\$&\");\n}\n\nfunction convertLikeFilter(field: FieldPath, value: string): PushdownFilter {\n const parts = parseLikePattern(value.toLowerCase());\n const hasLeadingWildcard = parts[0]?.type === \"many\";\n const hasTrailingWildcard = parts.at(-1)?.type === \"many\";\n const propertyIdentifier = fieldPathToPropertyIdentifier(field);\n\n if (hasLeadingWildcard && hasTrailingWildcard) {\n const terms = parts.flatMap((part) => (part.type === \"literal\" && part.value ? [part.value] : []));\n const queries = terms.map<SearchJsonQueryV2>((term) => ({\n // This is Foundry's substring/phrase query. It can over-fetch because\n // wildcard-delimited terms are not required to be adjacent or ordered.\n type: \"containsAllTermsInOrder\",\n propertyIdentifier,\n value: term,\n }));\n const query: SearchJsonQueryV2 =\n queries.length === 0\n ? ALWAYS_TRUE_FILTER\n : queries.length === 1\n ? queries[0]!\n : { type: \"and\", value: queries };\n\n // Contains is an approximation of SQL LIKE. Negating this superset\n // would produce a subset and could hide exact matches.\n return pushdown(query, false);\n }\n\n const wildcard = parts\n .map((part) => {\n if (part.type === \"many\") return \"*\";\n if (part.type === \"single\") return \"?\";\n return escapeFoundryWildcardLiteral(part.value);\n })\n .join(\"\");\n\n return pushdown({\n type: \"wildcard\",\n propertyIdentifier,\n value: wildcard,\n });\n}\n\nfunction convertQueryValue(value: unknown): unknown {\n if (value instanceof Date) {\n return value.toISOString();\n }\n if (\n value instanceof Temporal.Instant ||\n value instanceof Temporal.PlainDate ||\n value instanceof Temporal.PlainDateTime\n ) {\n return value.toString();\n }\n return value;\n}\n\nfunction fieldPathToPropertyIdentifier(fieldPath: FieldPath): PropertyIdentifier {\n if (fieldPath.length === 1) {\n return {\n type: \"property\",\n apiName: fieldPath[0]! as PropertyApiName,\n };\n } else if (fieldPath.length === 2) {\n return {\n type: \"structField\",\n propertyApiName: fieldPath[0]! as PropertyApiName,\n structFieldApiName: fieldPath[1]! as StructFieldApiName,\n };\n }\n throw new Error(`Invalid field path: ${fieldPath.join(\".\")}`);\n}\n\nfunction convertInFilter(fieldOrValue: unknown, valuesOrField: unknown): PushdownFilter {\n if (!Array.isArray(valuesOrField)) {\n throw new Error(\"Expected the second inArray argument to be an array or field path\");\n }\n\n if (!Array.isArray(fieldOrValue)) {\n return pushdown({\n type: \"contains\",\n propertyIdentifier: fieldPathToPropertyIdentifier(valuesOrField as FieldPath),\n value: convertQueryValue(fieldOrValue),\n });\n }\n\n const field = fieldOrValue as FieldPath;\n const values = valuesOrField as unknown[];\n return pushdown({\n type: \"in\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: values.filter((entry) => entry !== null && entry !== undefined).map(convertQueryValue),\n });\n}\n\nexport function isAlwaysFalseFilter(filter: SearchJsonQueryV2 | undefined): boolean {\n return filter?.type === \"or\" && filter.value.length === 0;\n}\n\nexport function convertLoadSubsetFilter(filter: LoadSubsetOptions[\"where\"]): SearchJsonQueryV2 | undefined {\n return (\n parseWhereExpression<PushdownFilter>(filter, {\n handlers: {\n and: (...filters: PushdownFilter[]) =>\n pushdown(\n { type: \"and\", value: filters.map(({ query }) => query) },\n filters.every(({ safeToNegate }) => safeToNegate)\n ),\n or: (...filters: PushdownFilter[]) =>\n pushdown(\n { type: \"or\", value: filters.map(({ query }) => query) },\n filters.every(({ safeToNegate }) => safeToNegate)\n ),\n not: (filter: PushdownFilter) =>\n filter.safeToNegate\n ? pushdown({ type: \"not\", value: filter.query })\n : pushdown(ALWAYS_TRUE_FILTER, false),\n eq: (field: FieldPath, value) =>\n pushdown(\n value === null\n ? ALWAYS_FALSE_FILTER\n : value === undefined\n ? {\n type: \"isNull\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: true,\n }\n : {\n type: \"eq\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: convertQueryValue(value),\n }\n ),\n gt: (field: FieldPath, value) =>\n pushdown(\n value == null\n ? ALWAYS_FALSE_FILTER\n : {\n type: \"gt\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: convertQueryValue(value),\n }\n ),\n gte: (field: FieldPath, value) =>\n pushdown(\n value == null\n ? ALWAYS_FALSE_FILTER\n : {\n type: \"gte\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: convertQueryValue(value),\n }\n ),\n lt: (field: FieldPath, value) =>\n pushdown(\n value == null\n ? ALWAYS_FALSE_FILTER\n : {\n type: \"lt\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: convertQueryValue(value),\n }\n ),\n lte: (field: FieldPath, value) =>\n pushdown(\n value == null\n ? ALWAYS_FALSE_FILTER\n : {\n type: \"lte\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: convertQueryValue(value),\n }\n ),\n isUndefined: (field: FieldPath) => ({\n query: {\n type: \"isNull\",\n propertyIdentifier: fieldPathToPropertyIdentifier(field),\n value: true,\n },\n safeToNegate: true,\n }),\n in: convertInFilter,\n ilike: convertLikeFilter,\n // Foundry wildcard and contains searches are case-insensitive,\n // so LIKE can over-fetch while TanStack applies exact casing.\n like: convertLikeFilter,\n },\n })?.query ?? undefined\n );\n}\n\nexport function convertLoadSubsetOrderBy(orderBy: LoadSubsetOptions[\"orderBy\"]): SearchOrderByV2 | undefined {\n return orderBy\n ? {\n fields: parseOrderByExpression(orderBy).map((ordering) => ({\n field: ordering.field[0]! as PropertyApiName,\n direction: ordering.direction,\n })),\n }\n : undefined;\n}\n"],"mappings":"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"}
@@ -1,27 +1,29 @@
1
- import { type PartialAttachmentMetadata, type OntologyBackendAdapter, type OntologyBackendAdapterProvider, type OntologyCollectionOptions, type OntologyIR } from "@party-stack/ontology";
2
- import type { OntologyClient } from "@party-stack/foundry-client";
3
- import type { attachment } from "@party-stack/ontology/values";
1
+ import { OntologyClient } from "@party-stack/foundry-client";
2
+ import { OntologyBackendAdapter, OntologyBackendAdapterProvider, OntologyCollectionOptions, OntologyIR, PartialAttachmentMetadata } from "@party-stack/ontology";
3
+ import { attachment } from "@party-stack/ontology/values";
4
+ //#region src/adapter/createFoundryOntologyBackendAdapter.d.ts
4
5
  export declare function isFoundryNotFoundError(error: unknown): boolean;
5
6
  export interface FoundryUsersIntegration {
6
- objectType: string;
7
- getCollectionOptions(client: OntologyClient): OntologyCollectionOptions;
8
- getAttachmentContent?(client: OntologyClient, attachment: attachment): Promise<Blob | undefined>;
9
- getAttachmentMetadata?(client: OntologyClient, attachment: attachment, selection: readonly (keyof PartialAttachmentMetadata)[]): Promise<PartialAttachmentMetadata | undefined>;
7
+ objectType: string;
8
+ getCollectionOptions(client: OntologyClient): OntologyCollectionOptions;
9
+ getAttachmentContent?(client: OntologyClient, attachment: attachment): Promise<Blob | undefined>;
10
+ getAttachmentMetadata?(client: OntologyClient, attachment: attachment, selection: readonly (keyof PartialAttachmentMetadata)[]): Promise<PartialAttachmentMetadata | undefined>;
10
11
  }
11
12
  export interface CreateFoundryOntologyBackendAdapterOptions {
12
- client: OntologyClient;
13
- ir: OntologyIR;
14
- users?: FoundryUsersIntegration;
15
- live?: boolean;
13
+ client: OntologyClient;
14
+ ir: OntologyIR;
15
+ users?: FoundryUsersIntegration;
16
+ live?: boolean;
16
17
  }
17
18
  export declare function createFoundryOntologyBackendAdapter(opts: CreateFoundryOntologyBackendAdapterOptions): OntologyBackendAdapter;
18
19
  export type CreateFoundryOntologyBackendOptions<Context extends Record<string, unknown> = Record<string, unknown>> = ({
19
- client: OntologyClient;
20
+ client: OntologyClient;
20
21
  } | {
21
- createClient: (ir: OntologyIR, context: Context) => OntologyClient | Promise<OntologyClient>;
22
+ createClient: (ir: OntologyIR, context: Context) => OntologyClient | Promise<OntologyClient>;
22
23
  }) & {
23
- users?: FoundryUsersIntegration;
24
- live?: boolean;
24
+ users?: FoundryUsersIntegration;
25
+ live?: boolean;
25
26
  };
26
27
  export declare function createFoundryOntologyBackend<Context extends Record<string, unknown> = Record<string, unknown>>(opts: CreateFoundryOntologyBackendOptions<Context>): OntologyBackendAdapterProvider<Context>;
28
+ //#endregion
27
29
  //# sourceMappingURL=createFoundryOntologyBackendAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createFoundryOntologyBackendAdapter.d.ts","sourceRoot":"","sources":["../../src/adapter/createFoundryOntologyBackendAdapter.ts"],"names":[],"mappings":"AASA,OAAO,EAIH,KAAK,yBAAyB,EAE9B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAE9B,KAAK,UAAU,EAElB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAiB/D,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAS9D;AAED,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,yBAAyB,CAAC;IACxE,oBAAoB,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IACjG,qBAAqB,CAAC,CAClB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,CAAC,MAAM,yBAAyB,CAAC,EAAE,GACxD,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;CACrD;AAsID,MAAM,WAAW,0CAA0C;IACvD,MAAM,EAAE,cAAc,CAAC;IACvB,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,0CAA0C,GACjD,sBAAsB,CAkYxB;AAED,MAAM,MAAM,mCAAmC,CAC3C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACjE,CACE;IACI,MAAM,EAAE,cAAc,CAAC;CAC1B,GACD;IACI,YAAY,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,KAAK,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAChG,CACN,GAAG;IACA,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,4BAA4B,CACxC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,IAAI,EAAE,mCAAmC,CAAC,OAAO,CAAC,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAQ7F"}
1
+ {"version":3,"file":"createFoundryOntologyBackendAdapter.d.ts","names":[],"sources":["../../src/adapter/createFoundryOntologyBackendAdapter.ts"],"mappings":";;;;wBA2CgB,uBAAuB;iBAWtB;EACb;EACA,qBAAqB,QAAQ,iBAAiB;EAC9C,sBAAsB,QAAQ,gBAAgB,YAAY,aAAa,QAAQ;EAC/E,uBACI,QAAQ,gBACR,YAAY,YACZ,2BAA2B,+BAC5B,QAAQ;;iBAoIE;EACb,QAAQ;EACR,IAAI;EACJ,QAAQ;EACR;;wBAGY,oCACZ,MAAM,6CACP;YAqXS,oCACR,gBAAgB,0BAA0B;EAGpC,QAAQ;;EAGR,eAAe,IAAI,YAAY,SAAS,YAAY,iBAAiB,QAAQ;;EAGnF,QAAQ;EACR;;wBAGY,6BACZ,gBAAgB,0BAA0B,yBAC5C,MAAM,oCAAoC,WAAW,+BAA+B"}