@x12i/catalox 3.1.1 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +6 -1
  2. package/dist/src/catalox/backup-data.d.ts +1 -6
  3. package/dist/src/catalox/backup-data.d.ts.map +1 -1
  4. package/dist/src/catalox/backup-data.js +71 -418
  5. package/dist/src/catalox/backup-data.js.map +1 -1
  6. package/dist/src/catalox/catalox-bound.d.ts +1 -2
  7. package/dist/src/catalox/catalox-bound.d.ts.map +1 -1
  8. package/dist/src/catalox/catalox-bound.js +0 -3
  9. package/dist/src/catalox/catalox-bound.js.map +1 -1
  10. package/dist/src/catalox/catalox.d.ts +2 -7
  11. package/dist/src/catalox/catalox.d.ts.map +1 -1
  12. package/dist/src/catalox/catalox.js +2 -16
  13. package/dist/src/catalox/catalox.js.map +1 -1
  14. package/dist/src/catalox/create-catalox.d.ts.map +1 -1
  15. package/dist/src/catalox/create-catalox.js +4 -1
  16. package/dist/src/catalox/create-catalox.js.map +1 -1
  17. package/dist/src/catalox/index.d.ts +2 -2
  18. package/dist/src/catalox/index.d.ts.map +1 -1
  19. package/dist/src/catalox/index.js +2 -2
  20. package/dist/src/catalox/index.js.map +1 -1
  21. package/dist/src/catalox/record-history.d.ts.map +1 -1
  22. package/dist/src/catalox/record-history.js +34 -0
  23. package/dist/src/catalox/record-history.js.map +1 -1
  24. package/dist/src/catalox/restore-firestore-backup.d.ts +6 -3
  25. package/dist/src/catalox/restore-firestore-backup.d.ts.map +1 -1
  26. package/dist/src/catalox/restore-firestore-backup.js +3 -224
  27. package/dist/src/catalox/restore-firestore-backup.js.map +1 -1
  28. package/dist/src/cli/index.js +27 -66
  29. package/dist/src/cli/index.js.map +1 -1
  30. package/dist/src/contracts/backup.d.ts +2 -2
  31. package/dist/src/contracts/backup.d.ts.map +1 -1
  32. package/dist/src/contracts/index.d.ts +1 -1
  33. package/dist/src/contracts/index.d.ts.map +1 -1
  34. package/dist/src/contracts/index.js.map +1 -1
  35. package/dist/src/contracts/restore.d.ts +0 -39
  36. package/dist/src/contracts/restore.d.ts.map +1 -1
  37. package/dist/src/firebase/catalog-item-history-store.d.ts.map +1 -1
  38. package/dist/src/firebase/catalog-item-history-store.js +35 -6
  39. package/dist/src/firebase/catalog-item-history-store.js.map +1 -1
  40. package/package.json +6 -3
  41. package/dist/adapters/api/api-adapter.d.ts +0 -22
  42. package/dist/adapters/api/api-adapter.d.ts.map +0 -1
  43. package/dist/adapters/api/api-adapter.js +0 -60
  44. package/dist/adapters/api/api-adapter.js.map +0 -1
  45. package/dist/adapters/api/index.d.ts +0 -2
  46. package/dist/adapters/api/index.d.ts.map +0 -1
  47. package/dist/adapters/api/index.js +0 -2
  48. package/dist/adapters/api/index.js.map +0 -1
  49. package/dist/adapters/mongo/index.d.ts +0 -3
  50. package/dist/adapters/mongo/index.d.ts.map +0 -1
  51. package/dist/adapters/mongo/index.js +0 -3
  52. package/dist/adapters/mongo/index.js.map +0 -1
  53. package/dist/adapters/mongo/mongo-adapter.d.ts +0 -21
  54. package/dist/adapters/mongo/mongo-adapter.d.ts.map +0 -1
  55. package/dist/adapters/mongo/mongo-adapter.js +0 -57
  56. package/dist/adapters/mongo/mongo-adapter.js.map +0 -1
  57. package/dist/adapters/mongo/resolve-db.d.ts +0 -4
  58. package/dist/adapters/mongo/resolve-db.d.ts.map +0 -1
  59. package/dist/adapters/mongo/resolve-db.js +0 -10
  60. package/dist/adapters/mongo/resolve-db.js.map +0 -1
  61. package/dist/bindings/index.d.ts +0 -2
  62. package/dist/bindings/index.d.ts.map +0 -1
  63. package/dist/bindings/index.js +0 -3
  64. package/dist/bindings/index.js.map +0 -1
  65. package/dist/catalox/authorization.d.ts +0 -11
  66. package/dist/catalox/authorization.d.ts.map +0 -1
  67. package/dist/catalox/authorization.js +0 -37
  68. package/dist/catalox/authorization.js.map +0 -1
  69. package/dist/catalox/catalox.d.ts +0 -80
  70. package/dist/catalox/catalox.d.ts.map +0 -1
  71. package/dist/catalox/catalox.js +0 -492
  72. package/dist/catalox/catalox.js.map +0 -1
  73. package/dist/catalox/context.d.ts +0 -17
  74. package/dist/catalox/context.d.ts.map +0 -1
  75. package/dist/catalox/context.js +0 -21
  76. package/dist/catalox/context.js.map +0 -1
  77. package/dist/catalox/identity.d.ts +0 -7
  78. package/dist/catalox/identity.d.ts.map +0 -1
  79. package/dist/catalox/identity.js +0 -26
  80. package/dist/catalox/identity.js.map +0 -1
  81. package/dist/catalox/index.d.ts +0 -6
  82. package/dist/catalox/index.d.ts.map +0 -1
  83. package/dist/catalox/index.js +0 -6
  84. package/dist/catalox/index.js.map +0 -1
  85. package/dist/catalox/json-io.d.ts +0 -3
  86. package/dist/catalox/json-io.d.ts.map +0 -1
  87. package/dist/catalox/json-io.js +0 -7
  88. package/dist/catalox/json-io.js.map +0 -1
  89. package/dist/contracts/adapters.d.ts +0 -40
  90. package/dist/contracts/adapters.d.ts.map +0 -1
  91. package/dist/contracts/adapters.js +0 -2
  92. package/dist/contracts/adapters.js.map +0 -1
  93. package/dist/contracts/apps.d.ts +0 -11
  94. package/dist/contracts/apps.d.ts.map +0 -1
  95. package/dist/contracts/apps.js +0 -2
  96. package/dist/contracts/apps.js.map +0 -1
  97. package/dist/contracts/bindings.d.ts +0 -26
  98. package/dist/contracts/bindings.d.ts.map +0 -1
  99. package/dist/contracts/bindings.js +0 -2
  100. package/dist/contracts/bindings.js.map +0 -1
  101. package/dist/contracts/bootstrap.d.ts +0 -7
  102. package/dist/contracts/bootstrap.d.ts.map +0 -1
  103. package/dist/contracts/bootstrap.js +0 -2
  104. package/dist/contracts/bootstrap.js.map +0 -1
  105. package/dist/contracts/catalogs.d.ts +0 -51
  106. package/dist/contracts/catalogs.d.ts.map +0 -1
  107. package/dist/contracts/catalogs.js +0 -2
  108. package/dist/contracts/catalogs.js.map +0 -1
  109. package/dist/contracts/config.d.ts +0 -14
  110. package/dist/contracts/config.d.ts.map +0 -1
  111. package/dist/contracts/config.js +0 -2
  112. package/dist/contracts/config.js.map +0 -1
  113. package/dist/contracts/context.d.ts +0 -11
  114. package/dist/contracts/context.d.ts.map +0 -1
  115. package/dist/contracts/context.js +0 -2
  116. package/dist/contracts/context.js.map +0 -1
  117. package/dist/contracts/descriptors.d.ts +0 -73
  118. package/dist/contracts/descriptors.d.ts.map +0 -1
  119. package/dist/contracts/descriptors.js +0 -2
  120. package/dist/contracts/descriptors.js.map +0 -1
  121. package/dist/contracts/discovery.d.ts +0 -25
  122. package/dist/contracts/discovery.d.ts.map +0 -1
  123. package/dist/contracts/discovery.js +0 -2
  124. package/dist/contracts/discovery.js.map +0 -1
  125. package/dist/contracts/errors.d.ts +0 -32
  126. package/dist/contracts/errors.d.ts.map +0 -1
  127. package/dist/contracts/errors.js +0 -53
  128. package/dist/contracts/errors.js.map +0 -1
  129. package/dist/contracts/ids.d.ts +0 -7
  130. package/dist/contracts/ids.d.ts.map +0 -1
  131. package/dist/contracts/ids.js +0 -2
  132. package/dist/contracts/ids.js.map +0 -1
  133. package/dist/contracts/index.d.ts +0 -21
  134. package/dist/contracts/index.d.ts.map +0 -1
  135. package/dist/contracts/index.js +0 -2
  136. package/dist/contracts/index.js.map +0 -1
  137. package/dist/contracts/inputs.d.ts +0 -19
  138. package/dist/contracts/inputs.d.ts.map +0 -1
  139. package/dist/contracts/inputs.js +0 -2
  140. package/dist/contracts/inputs.js.map +0 -1
  141. package/dist/contracts/item-validation.d.ts +0 -11
  142. package/dist/contracts/item-validation.d.ts.map +0 -1
  143. package/dist/contracts/item-validation.js +0 -2
  144. package/dist/contracts/item-validation.js.map +0 -1
  145. package/dist/contracts/items.d.ts +0 -49
  146. package/dist/contracts/items.d.ts.map +0 -1
  147. package/dist/contracts/items.js +0 -2
  148. package/dist/contracts/items.js.map +0 -1
  149. package/dist/contracts/mappings.d.ts +0 -35
  150. package/dist/contracts/mappings.d.ts.map +0 -1
  151. package/dist/contracts/mappings.js +0 -2
  152. package/dist/contracts/mappings.js.map +0 -1
  153. package/dist/contracts/query.d.ts +0 -10
  154. package/dist/contracts/query.d.ts.map +0 -1
  155. package/dist/contracts/query.js +0 -2
  156. package/dist/contracts/query.js.map +0 -1
  157. package/dist/contracts/references.d.ts +0 -11
  158. package/dist/contracts/references.d.ts.map +0 -1
  159. package/dist/contracts/references.js +0 -2
  160. package/dist/contracts/references.js.map +0 -1
  161. package/dist/contracts/sync.d.ts +0 -7
  162. package/dist/contracts/sync.d.ts.map +0 -1
  163. package/dist/contracts/sync.js +0 -2
  164. package/dist/contracts/sync.js.map +0 -1
  165. package/dist/contracts/validation.d.ts +0 -12
  166. package/dist/contracts/validation.d.ts.map +0 -1
  167. package/dist/contracts/validation.js +0 -2
  168. package/dist/contracts/validation.js.map +0 -1
  169. package/dist/errors/index.d.ts +0 -2
  170. package/dist/errors/index.d.ts.map +0 -1
  171. package/dist/errors/index.js +0 -3
  172. package/dist/errors/index.js.map +0 -1
  173. package/dist/firebase/adapter-store.d.ts +0 -15
  174. package/dist/firebase/adapter-store.d.ts.map +0 -1
  175. package/dist/firebase/adapter-store.js +0 -18
  176. package/dist/firebase/adapter-store.js.map +0 -1
  177. package/dist/firebase/app-store.d.ts +0 -11
  178. package/dist/firebase/app-store.d.ts.map +0 -1
  179. package/dist/firebase/app-store.js +0 -18
  180. package/dist/firebase/app-store.js.map +0 -1
  181. package/dist/firebase/binding-store.d.ts +0 -13
  182. package/dist/firebase/binding-store.d.ts.map +0 -1
  183. package/dist/firebase/binding-store.js +0 -35
  184. package/dist/firebase/binding-store.js.map +0 -1
  185. package/dist/firebase/catalog-store.d.ts +0 -12
  186. package/dist/firebase/catalog-store.d.ts.map +0 -1
  187. package/dist/firebase/catalog-store.js +0 -22
  188. package/dist/firebase/catalog-store.js.map +0 -1
  189. package/dist/firebase/definition-store.d.ts +0 -39
  190. package/dist/firebase/definition-store.d.ts.map +0 -1
  191. package/dist/firebase/definition-store.js +0 -18
  192. package/dist/firebase/definition-store.js.map +0 -1
  193. package/dist/firebase/descriptor-store.d.ts +0 -11
  194. package/dist/firebase/descriptor-store.d.ts.map +0 -1
  195. package/dist/firebase/descriptor-store.js +0 -18
  196. package/dist/firebase/descriptor-store.js.map +0 -1
  197. package/dist/firebase/firestore-store.d.ts +0 -14
  198. package/dist/firebase/firestore-store.d.ts.map +0 -1
  199. package/dist/firebase/firestore-store.js +0 -15
  200. package/dist/firebase/firestore-store.js.map +0 -1
  201. package/dist/firebase/index.d.ts +0 -12
  202. package/dist/firebase/index.d.ts.map +0 -1
  203. package/dist/firebase/index.js +0 -12
  204. package/dist/firebase/index.js.map +0 -1
  205. package/dist/firebase/mapping-store.d.ts +0 -11
  206. package/dist/firebase/mapping-store.d.ts.map +0 -1
  207. package/dist/firebase/mapping-store.js +0 -18
  208. package/dist/firebase/mapping-store.js.map +0 -1
  209. package/dist/firebase/native-item-store.d.ts +0 -20
  210. package/dist/firebase/native-item-store.d.ts.map +0 -1
  211. package/dist/firebase/native-item-store.js +0 -55
  212. package/dist/firebase/native-item-store.js.map +0 -1
  213. package/dist/firebase/reference-store.d.ts +0 -17
  214. package/dist/firebase/reference-store.d.ts.map +0 -1
  215. package/dist/firebase/reference-store.js +0 -27
  216. package/dist/firebase/reference-store.js.map +0 -1
  217. package/dist/firebase/snapshot-store.d.ts +0 -11
  218. package/dist/firebase/snapshot-store.d.ts.map +0 -1
  219. package/dist/firebase/snapshot-store.js +0 -22
  220. package/dist/firebase/snapshot-store.js.map +0 -1
  221. package/dist/index.d.ts +0 -10
  222. package/dist/index.d.ts.map +0 -1
  223. package/dist/index.js +0 -10
  224. package/dist/index.js.map +0 -1
  225. package/dist/mapping/execute-mapping.d.ts +0 -8
  226. package/dist/mapping/execute-mapping.d.ts.map +0 -1
  227. package/dist/mapping/execute-mapping.js +0 -78
  228. package/dist/mapping/execute-mapping.js.map +0 -1
  229. package/dist/mapping/helper-gap-report.d.ts +0 -7
  230. package/dist/mapping/helper-gap-report.d.ts.map +0 -1
  231. package/dist/mapping/helper-gap-report.js +0 -2
  232. package/dist/mapping/helper-gap-report.js.map +0 -1
  233. package/dist/mapping/index.d.ts +0 -4
  234. package/dist/mapping/index.d.ts.map +0 -1
  235. package/dist/mapping/index.js +0 -4
  236. package/dist/mapping/index.js.map +0 -1
  237. package/dist/mapping/validate-mapping.d.ts +0 -3
  238. package/dist/mapping/validate-mapping.d.ts.map +0 -1
  239. package/dist/mapping/validate-mapping.js +0 -32
  240. package/dist/mapping/validate-mapping.js.map +0 -1
  241. package/dist/test/integration/firestore.emulator.test.d.ts +0 -2
  242. package/dist/test/integration/firestore.emulator.test.d.ts.map +0 -1
  243. package/dist/test/integration/firestore.emulator.test.js +0 -117
  244. package/dist/test/integration/firestore.emulator.test.js.map +0 -1
  245. package/dist/test/integration/record-history.live.test.d.ts +0 -2
  246. package/dist/test/integration/record-history.live.test.d.ts.map +0 -1
  247. package/dist/test/integration/record-history.live.test.js +0 -126
  248. package/dist/test/integration/record-history.live.test.js.map +0 -1
  249. package/dist/test/unit/backup-timestamp.test.d.ts +0 -2
  250. package/dist/test/unit/backup-timestamp.test.d.ts.map +0 -1
  251. package/dist/test/unit/backup-timestamp.test.js +0 -11
  252. package/dist/test/unit/backup-timestamp.test.js.map +0 -1
  253. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.d.ts +0 -2
  254. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.d.ts.map +0 -1
  255. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.js +0 -20
  256. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.js.map +0 -1
  257. package/dist/test/unit/compact-catalog-filter.test.d.ts +0 -2
  258. package/dist/test/unit/compact-catalog-filter.test.d.ts.map +0 -1
  259. package/dist/test/unit/compact-catalog-filter.test.js +0 -18
  260. package/dist/test/unit/compact-catalog-filter.test.js.map +0 -1
  261. package/dist/test/unit/field-source-resolution.test.d.ts +0 -2
  262. package/dist/test/unit/field-source-resolution.test.d.ts.map +0 -1
  263. package/dist/test/unit/field-source-resolution.test.js +0 -45
  264. package/dist/test/unit/field-source-resolution.test.js.map +0 -1
  265. package/dist/test/unit/gcs-backup-run-folder.test.d.ts +0 -2
  266. package/dist/test/unit/gcs-backup-run-folder.test.d.ts.map +0 -1
  267. package/dist/test/unit/gcs-backup-run-folder.test.js +0 -10
  268. package/dist/test/unit/gcs-backup-run-folder.test.js.map +0 -1
  269. package/dist/test/unit/gcs-firestore-compare.test.d.ts +0 -2
  270. package/dist/test/unit/gcs-firestore-compare.test.d.ts.map +0 -1
  271. package/dist/test/unit/gcs-firestore-compare.test.js +0 -14
  272. package/dist/test/unit/gcs-firestore-compare.test.js.map +0 -1
  273. package/dist/test/unit/gcs-firestore-paths.test.d.ts +0 -2
  274. package/dist/test/unit/gcs-firestore-paths.test.d.ts.map +0 -1
  275. package/dist/test/unit/gcs-firestore-paths.test.js +0 -16
  276. package/dist/test/unit/gcs-firestore-paths.test.js.map +0 -1
  277. package/dist/test/unit/identity.test.d.ts +0 -2
  278. package/dist/test/unit/identity.test.d.ts.map +0 -1
  279. package/dist/test/unit/identity.test.js +0 -18
  280. package/dist/test/unit/identity.test.js.map +0 -1
  281. package/dist/test/unit/jsx-snippets.test.d.ts +0 -2
  282. package/dist/test/unit/jsx-snippets.test.d.ts.map +0 -1
  283. package/dist/test/unit/jsx-snippets.test.js +0 -35
  284. package/dist/test/unit/jsx-snippets.test.js.map +0 -1
  285. package/dist/test/unit/mapping.test.d.ts +0 -2
  286. package/dist/test/unit/mapping.test.d.ts.map +0 -1
  287. package/dist/test/unit/mapping.test.js +0 -19
  288. package/dist/test/unit/mapping.test.js.map +0 -1
  289. package/dist/test/unit/markdown-and-diagrams.test.d.ts +0 -2
  290. package/dist/test/unit/markdown-and-diagrams.test.d.ts.map +0 -1
  291. package/dist/test/unit/markdown-and-diagrams.test.js +0 -62
  292. package/dist/test/unit/markdown-and-diagrams.test.js.map +0 -1
  293. package/dist/test/unit/native-catalog-merge.test.d.ts +0 -2
  294. package/dist/test/unit/native-catalog-merge.test.d.ts.map +0 -1
  295. package/dist/test/unit/native-catalog-merge.test.js +0 -33
  296. package/dist/test/unit/native-catalog-merge.test.js.map +0 -1
  297. package/dist/test/unit/native-scope.test.d.ts +0 -2
  298. package/dist/test/unit/native-scope.test.d.ts.map +0 -1
  299. package/dist/test/unit/native-scope.test.js +0 -29
  300. package/dist/test/unit/native-scope.test.js.map +0 -1
  301. package/dist/test/unit/record-history-path.test.d.ts +0 -2
  302. package/dist/test/unit/record-history-path.test.d.ts.map +0 -1
  303. package/dist/test/unit/record-history-path.test.js +0 -24
  304. package/dist/test/unit/record-history-path.test.js.map +0 -1
  305. package/dist/test/unit/renderer-metadata-migration.test.d.ts +0 -2
  306. package/dist/test/unit/renderer-metadata-migration.test.d.ts.map +0 -1
  307. package/dist/test/unit/renderer-metadata-migration.test.js +0 -33
  308. package/dist/test/unit/renderer-metadata-migration.test.js.map +0 -1
  309. package/dist/test/unit/renderer-metadata.test.d.ts +0 -2
  310. package/dist/test/unit/renderer-metadata.test.d.ts.map +0 -1
  311. package/dist/test/unit/renderer-metadata.test.js +0 -10
  312. package/dist/test/unit/renderer-metadata.test.js.map +0 -1
  313. package/dist/test/unit/resolve-native-items-layout.test.d.ts +0 -2
  314. package/dist/test/unit/resolve-native-items-layout.test.d.ts.map +0 -1
  315. package/dist/test/unit/resolve-native-items-layout.test.js +0 -50
  316. package/dist/test/unit/resolve-native-items-layout.test.js.map +0 -1
  317. package/dist/test/unit/ui-spec-validation.test.d.ts +0 -2
  318. package/dist/test/unit/ui-spec-validation.test.d.ts.map +0 -1
  319. package/dist/test/unit/ui-spec-validation.test.js +0 -90
  320. package/dist/test/unit/ui-spec-validation.test.js.map +0 -1
  321. package/dist/validation/index.d.ts +0 -2
  322. package/dist/validation/index.d.ts.map +0 -1
  323. package/dist/validation/index.js +0 -3
  324. package/dist/validation/index.js.map +0 -1
@@ -1,18 +0,0 @@
1
- import { FirestoreStore } from "./firestore-store.js";
2
- export class MappingStore {
3
- store;
4
- constructor(store) {
5
- this.store = store;
6
- }
7
- docRef(mappingId) {
8
- return this.store.collection("catalogMappings").doc(mappingId);
9
- }
10
- async get(mappingId) {
11
- const snap = await this.docRef(mappingId).get();
12
- return snap.exists ? snap.data() : null;
13
- }
14
- async upsert(record) {
15
- await this.docRef(record.mappingId).set(record, { merge: true });
16
- }
17
- }
18
- //# sourceMappingURL=mapping-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapping-store.js","sourceRoot":"","sources":["../../src/firebase/mapping-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,OAAO,YAAY;IACM;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAE9C,MAAM,CAAC,SAAoB;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,SAAoB;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,EAA2B,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAA4B;QACvC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;CACF"}
@@ -1,20 +0,0 @@
1
- import type { CatalogId, ItemId } from "../contracts/ids.js";
2
- import type { NativeCatalogItemRecord } from "../contracts/items.js";
3
- import { FirestoreStore } from "./firestore-store.js";
4
- export type NativeCatalogStoredRecord = NativeCatalogItemRecord;
5
- export declare class NativeItemStore {
6
- private readonly store;
7
- constructor(store: FirestoreStore);
8
- private itemDocRef;
9
- get(catalogId: CatalogId, itemId: ItemId): Promise<NativeCatalogStoredRecord | null>;
10
- upsert(catalogId: CatalogId, record: NativeCatalogStoredRecord): Promise<void>;
11
- delete(catalogId: CatalogId, itemId: ItemId): Promise<void>;
12
- batchUpsert(catalogId: CatalogId, records: NativeCatalogStoredRecord[]): Promise<void>;
13
- list(catalogId: CatalogId, options?: {
14
- limit?: number;
15
- offset?: number;
16
- filterEq?: Record<string, unknown>;
17
- sort?: Record<string, 1 | -1>;
18
- }): Promise<NativeCatalogStoredRecord[]>;
19
- }
20
- //# sourceMappingURL=native-item-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"native-item-store.d.ts","sourceRoot":"","sources":["../../src/firebase/native-item-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AAEhE,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,cAAc;IAElD,OAAO,CAAC,UAAU;IAQZ,GAAG,CACP,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAKtC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9E,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,WAAW,CACf,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC;IAYV,IAAI,CACR,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAC/B,GACA,OAAO,CAAC,yBAAyB,EAAE,CAAC;CAuBxC"}
@@ -1,55 +0,0 @@
1
- import { FirestoreStore } from "./firestore-store.js";
2
- export class NativeItemStore {
3
- store;
4
- constructor(store) {
5
- this.store = store;
6
- }
7
- itemDocRef(catalogId, itemId) {
8
- return this.store
9
- .collection("catalogData")
10
- .doc(String(catalogId))
11
- .collection("items")
12
- .doc(String(itemId));
13
- }
14
- async get(catalogId, itemId) {
15
- const snap = await this.itemDocRef(catalogId, itemId).get();
16
- return snap.exists ? snap.data() : null;
17
- }
18
- async upsert(catalogId, record) {
19
- await this.itemDocRef(catalogId, record.itemId).set(record, { merge: true });
20
- }
21
- async delete(catalogId, itemId) {
22
- await this.itemDocRef(catalogId, itemId).delete();
23
- }
24
- async batchUpsert(catalogId, records) {
25
- const chunkSize = 450; // keep below Firestore 500 writes
26
- for (let i = 0; i < records.length; i += chunkSize) {
27
- const chunk = records.slice(i, i + chunkSize);
28
- const batch = this.store.firestore.batch();
29
- for (const r of chunk) {
30
- batch.set(this.itemDocRef(catalogId, r.itemId), r, { merge: true });
31
- }
32
- await batch.commit();
33
- }
34
- }
35
- async list(catalogId, options) {
36
- let q = this.store
37
- .collection("catalogData")
38
- .doc(String(catalogId))
39
- .collection("items");
40
- const filterEq = options?.filterEq ?? {};
41
- for (const [k, v] of Object.entries(filterEq)) {
42
- q = q.where(`indexed.${k}`, "==", v);
43
- }
44
- const sort = options?.sort ?? {};
45
- for (const [k, dir] of Object.entries(sort)) {
46
- q = q.orderBy(`indexed.${k}`, dir === -1 ? "desc" : "asc");
47
- }
48
- const offset = options?.offset ?? 0;
49
- const limit = options?.limit ?? 100;
50
- // Firestore doesn't support skip/offset directly; emulate by reading + slicing.
51
- const snap = await q.limit(offset + limit).get();
52
- return snap.docs.slice(offset, offset + limit).map((d) => d.data());
53
- }
54
- }
55
- //# sourceMappingURL=native-item-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"native-item-store.js","sourceRoot":"","sources":["../../src/firebase/native-item-store.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import type { CatalogItemReference } from "../contracts/references.js";
2
- import type { CatalogId, ItemId } from "../contracts/ids.js";
3
- import { FirestoreStore } from "./firestore-store.js";
4
- export type CatalogReferenceRecord = CatalogItemReference & {
5
- referenceId: string;
6
- createdAt: string;
7
- updatedAt: string;
8
- };
9
- export declare class ReferenceStore {
10
- private readonly store;
11
- constructor(store: FirestoreStore);
12
- private collectionRef;
13
- listByCatalog(catalogId: CatalogId): Promise<CatalogReferenceRecord[]>;
14
- listByItem(catalogId: CatalogId, itemId: ItemId): Promise<CatalogReferenceRecord[]>;
15
- upsert(record: CatalogReferenceRecord): Promise<void>;
16
- }
17
- //# sourceMappingURL=reference-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reference-store.d.ts","sourceRoot":"","sources":["../../src/firebase/reference-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,MAAM,sBAAsB,GAAG,oBAAoB,GAAG;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,cAAc;IAElD,OAAO,CAAC,aAAa;IAIf,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAOtE,UAAU,CACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAQ9B,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;CAG5D"}
@@ -1,27 +0,0 @@
1
- import { FirestoreStore } from "./firestore-store.js";
2
- export class ReferenceStore {
3
- store;
4
- constructor(store) {
5
- this.store = store;
6
- }
7
- collectionRef() {
8
- return this.store.collection("catalogReferences");
9
- }
10
- async listByCatalog(catalogId) {
11
- const snap = await this.collectionRef()
12
- .where("fromCatalogId", "==", catalogId)
13
- .get();
14
- return snap.docs.map((d) => d.data());
15
- }
16
- async listByItem(catalogId, itemId) {
17
- const snap = await this.collectionRef()
18
- .where("fromCatalogId", "==", catalogId)
19
- .where("fromItemId", "==", itemId)
20
- .get();
21
- return snap.docs.map((d) => d.data());
22
- }
23
- async upsert(record) {
24
- await this.collectionRef().doc(record.referenceId).set(record, { merge: true });
25
- }
26
- }
27
- //# sourceMappingURL=reference-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reference-store.js","sourceRoot":"","sources":["../../src/firebase/reference-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAQtD,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAE9C,aAAa;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAoB;QACtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE;aACpC,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC;aACvC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAA4B,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,UAAU,CACd,SAAoB,EACpB,MAAc;QAEd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE;aACpC,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC;aACvC,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC;aACjC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAA4B,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAA8B;QACzC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;CACF"}
@@ -1,11 +0,0 @@
1
- import type { CatalogId, ItemId } from "../contracts/ids.js";
2
- import type { SnapshotCatalogItemRecord } from "../contracts/items.js";
3
- import { FirestoreStore } from "./firestore-store.js";
4
- export declare class SnapshotStore {
5
- private readonly store;
6
- constructor(store: FirestoreStore);
7
- private itemDocRef;
8
- get(catalogId: CatalogId, itemId: ItemId): Promise<SnapshotCatalogItemRecord | null>;
9
- upsert(catalogId: CatalogId, record: SnapshotCatalogItemRecord): Promise<void>;
10
- }
11
- //# sourceMappingURL=snapshot-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snapshot-store.d.ts","sourceRoot":"","sources":["../../src/firebase/snapshot-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,cAAc;IAElD,OAAO,CAAC,UAAU;IAQZ,GAAG,CACP,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAKtC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrF"}
@@ -1,22 +0,0 @@
1
- import { FirestoreStore } from "./firestore-store.js";
2
- export class SnapshotStore {
3
- store;
4
- constructor(store) {
5
- this.store = store;
6
- }
7
- itemDocRef(catalogId, itemId) {
8
- return this.store
9
- .collection("catalogSnapshots")
10
- .doc(String(catalogId))
11
- .collection("items")
12
- .doc(String(itemId));
13
- }
14
- async get(catalogId, itemId) {
15
- const snap = await this.itemDocRef(catalogId, itemId).get();
16
- return snap.exists ? snap.data() : null;
17
- }
18
- async upsert(catalogId, record) {
19
- await this.itemDocRef(catalogId, record.itemId).set(record, { merge: true });
20
- }
21
- }
22
- //# sourceMappingURL=snapshot-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snapshot-store.js","sourceRoot":"","sources":["../../src/firebase/snapshot-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAE9C,UAAU,CAAC,SAAoB,EAAE,MAAc;QACrD,OAAO,IAAI,CAAC,KAAK;aACd,UAAU,CAAC,kBAAkB,CAAC;aAC9B,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aACtB,UAAU,CAAC,OAAO,CAAC;aACnB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,GAAG,CACP,SAAoB,EACpB,MAAc;QAEd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,EAAgC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAoB,EAAE,MAAiC;QAClE,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC;CACF"}
package/dist/index.d.ts DELETED
@@ -1,10 +0,0 @@
1
- export * from "./contracts/index.js";
2
- export * from "./catalox/index.js";
3
- export * from "./firebase/index.js";
4
- export * from "./adapters/mongo/index.js";
5
- export * from "./adapters/api/index.js";
6
- export * from "./mapping/index.js";
7
- export * from "./bindings/index.js";
8
- export * from "./validation/index.js";
9
- export * from "./errors/index.js";
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
package/dist/index.js DELETED
@@ -1,10 +0,0 @@
1
- export * from "./contracts/index.js";
2
- export * from "./catalox/index.js";
3
- export * from "./firebase/index.js";
4
- export * from "./adapters/mongo/index.js";
5
- export * from "./adapters/api/index.js";
6
- export * from "./mapping/index.js";
7
- export * from "./bindings/index.js";
8
- export * from "./validation/index.js";
9
- export * from "./errors/index.js";
10
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { CatalogFieldMappingSpec, MappingExecutionOptions, MappingExecutionResult } from "../contracts/mappings.js";
2
- type HelpersObjectMapper = {
3
- deepGet?: (obj: unknown, path: string) => unknown;
4
- deepSet?: (obj: unknown, path: string, value: unknown) => void;
5
- };
6
- export declare function executeMapping<T = Record<string, unknown>>(source: Record<string, unknown>, mapping: CatalogFieldMappingSpec[], options?: MappingExecutionOptions, helpers?: HelpersObjectMapper): MappingExecutionResult<T>;
7
- export {};
8
- //# sourceMappingURL=execute-mapping.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-mapping.d.ts","sourceRoot":"","sources":["../../src/mapping/execute-mapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EAEvB,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAElC,KAAK,mBAAmB,GAAG;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAChE,CAAC;AAkBF,wBAAgB,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,uBAAuB,EAAE,EAClC,OAAO,CAAC,EAAE,uBAAuB,EACjC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,sBAAsB,CAAC,CAAC,CAAC,CAmE3B"}
@@ -1,78 +0,0 @@
1
- function parseStringSpec(spec) {
2
- const parts = spec.split("->").map((s) => s.trim());
3
- if (parts.length !== 2)
4
- return null;
5
- const [from, to] = parts;
6
- if (!from || !to)
7
- return null;
8
- return { from, to };
9
- }
10
- function applyTemplate(template, source, deepGet) {
11
- return template.replace(/\{([^}]+)\}/g, (_m, rawPath) => {
12
- const path = String(rawPath).trim();
13
- const v = deepGet ? deepGet(source, path) : source?.[path];
14
- return v == null ? "" : String(v);
15
- });
16
- }
17
- export function executeMapping(source, mapping, options, helpers) {
18
- const issues = [];
19
- const out = options?.preserveUnknownFields ? { ...source } : {};
20
- const deepGet = helpers?.deepGet;
21
- const deepSet = helpers?.deepSet;
22
- const setValue = (path, value) => {
23
- if (deepSet) {
24
- deepSet(out, path, value);
25
- return;
26
- }
27
- // Fallback: shallow set if no deepSet available.
28
- out[path] = value;
29
- };
30
- const getValue = (path) => {
31
- if (deepGet)
32
- return deepGet(source, path);
33
- return source?.[path];
34
- };
35
- for (const entry of mapping) {
36
- if (typeof entry === "string") {
37
- const parsed = parseStringSpec(entry);
38
- if (!parsed) {
39
- issues.push({
40
- code: "mapping.invalid_string",
41
- message: `Invalid mapping string: "${entry}"`,
42
- severity: "error",
43
- });
44
- continue;
45
- }
46
- const v = getValue(parsed.from);
47
- if (v === undefined && options?.ignoreUndefined)
48
- continue;
49
- if (v === null && options?.ignoreNull)
50
- continue;
51
- setValue(parsed.to, v);
52
- continue;
53
- }
54
- const value = entry.template != null
55
- ? applyTemplate(entry.template, source, deepGet)
56
- : entry.from
57
- ? getValue(entry.from)
58
- : undefined;
59
- const resolved = value === undefined ? entry.defaultValue : value;
60
- if (resolved === undefined && options?.ignoreUndefined)
61
- continue;
62
- if (resolved === null && options?.ignoreNull)
63
- continue;
64
- if (entry.required && (resolved === undefined || resolved === null || resolved === "")) {
65
- const baseIssue = {
66
- code: "mapping.required_missing",
67
- message: `Required field missing for target "${entry.to}".`,
68
- severity: "error",
69
- targetPath: entry.to,
70
- };
71
- issues.push(entry.from ? { ...baseIssue, sourcePath: entry.from } : baseIssue);
72
- continue;
73
- }
74
- setValue(entry.to, resolved);
75
- }
76
- return issues.length ? { data: out, issues } : { data: out };
77
- }
78
- //# sourceMappingURL=execute-mapping.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute-mapping.js","sourceRoot":"","sources":["../../src/mapping/execute-mapping.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export type HelperGapReport = {
2
- area: "mapping" | "api" | "http" | "firebase";
3
- title: string;
4
- reason: string;
5
- requestedEnhancement: string;
6
- };
7
- //# sourceMappingURL=helper-gap-report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helper-gap-report.d.ts","sourceRoot":"","sources":["../../src/mapping/helper-gap-report.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=helper-gap-report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helper-gap-report.js","sourceRoot":"","sources":["../../src/mapping/helper-gap-report.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- export * from "./execute-mapping.js";
2
- export * from "./validate-mapping.js";
3
- export * from "./helper-gap-report.js";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mapping/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from "./execute-mapping.js";
2
- export * from "./validate-mapping.js";
3
- export * from "./helper-gap-report.js";
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mapping/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { CatalogFieldMappingSpec, CatalogMappingIssue } from "../contracts/mappings.js";
2
- export declare function validateMappingSpec(mapping: CatalogFieldMappingSpec[]): CatalogMappingIssue[];
3
- //# sourceMappingURL=validate-mapping.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-mapping.d.ts","sourceRoot":"","sources":["../../src/mapping/validate-mapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAElC,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,uBAAuB,EAAE,GACjC,mBAAmB,EAAE,CAkCvB"}
@@ -1,32 +0,0 @@
1
- export function validateMappingSpec(mapping) {
2
- const issues = [];
3
- for (const entry of mapping) {
4
- if (typeof entry === "string") {
5
- const parts = entry.split("->").map((s) => s.trim());
6
- if (parts.length !== 2 || !parts[0] || !parts[1]) {
7
- issues.push({
8
- code: "mapping.invalid_string",
9
- message: `Invalid mapping string: "${entry}"`,
10
- severity: "error",
11
- });
12
- }
13
- continue;
14
- }
15
- if (!entry.to || typeof entry.to !== "string") {
16
- issues.push({
17
- code: "mapping.missing_to",
18
- message: "Mapping entry missing required 'to' field.",
19
- severity: "error",
20
- });
21
- }
22
- if (!entry.from && !entry.template) {
23
- issues.push({
24
- code: "mapping.missing_from_or_template",
25
- message: "Mapping entry must have either 'from' or 'template'.",
26
- severity: "error",
27
- });
28
- }
29
- }
30
- return issues;
31
- }
32
- //# sourceMappingURL=validate-mapping.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-mapping.js","sourceRoot":"","sources":["../../src/mapping/validate-mapping.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,mBAAmB,CACjC,OAAkC;IAElC,MAAM,MAAM,GAA0B,EAAE,CAAC;IAEzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACrD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,wBAAwB;oBAC9B,OAAO,EAAE,4BAA4B,KAAK,GAAG;oBAC7C,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,4CAA4C;gBACrD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,kCAAkC;gBACxC,OAAO,EAAE,sDAAsD;gBAC/D,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=firestore.emulator.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"firestore.emulator.test.d.ts","sourceRoot":"","sources":["../../../test/integration/firestore.emulator.test.ts"],"names":[],"mappings":""}
@@ -1,117 +0,0 @@
1
- import test from "node:test";
2
- import assert from "node:assert/strict";
3
- import path from "node:path";
4
- import { loadDotenv } from "@x12i/env";
5
- import { initializeApp, cert, getApps, deleteApp } from "firebase-admin/app";
6
- import { getFirestore } from "firebase-admin/firestore";
7
- import { createCatalox } from "../../src/catalox/create-catalox.js";
8
- import { AppStore } from "../../src/firebase/app-store.js";
9
- import { DescriptorStore } from "../../src/firebase/descriptor-store.js";
10
- import { FirestoreStore } from "../../src/firebase/firestore-store.js";
11
- loadDotenv(path.resolve(process.cwd(), ".env"));
12
- function requireEnv(name) {
13
- const v = process.env[name];
14
- if (!v)
15
- throw new Error(`Missing required env: ${name}`);
16
- return v;
17
- }
18
- function requireLiveTestsEnabled() {
19
- if (process.env.FIRESTORE_LIVE_TESTS !== "1") {
20
- throw new Error("Live tests disabled. Set FIRESTORE_LIVE_TESTS=1 to run integration tests against a real Firestore project.");
21
- }
22
- }
23
- test("Firestore live integration: discovery + native upsert/list + descriptor", async () => {
24
- requireLiveTestsEnabled();
25
- const serviceAccountPath = requireEnv("FIREBASE_SERVICE_ACCOUNT_PATH");
26
- const projectId = requireEnv("FIREBASE_PROJECT_ID");
27
- const appName = `catalox-test-${Date.now()}`;
28
- const app = initializeApp({ credential: cert(serviceAccountPath), projectId }, appName);
29
- const firestore = getFirestore(app);
30
- const store = new FirestoreStore({ firestore, app });
31
- const apps = new AppStore(store);
32
- const descriptors = new DescriptorStore(store);
33
- const catalox = createCatalox({ firestore, firebaseApp: app });
34
- const runId = `${Date.now()}`;
35
- const appId = `catalox_live_${runId}`;
36
- const catalogId = `signals_${runId}`;
37
- const ctx = { appId };
38
- await apps.upsert({
39
- appId,
40
- name: "App A",
41
- status: "active",
42
- createdAt: new Date().toISOString(),
43
- updatedAt: new Date().toISOString(),
44
- });
45
- await catalox.createCatalog(ctx, {
46
- catalogId,
47
- name: "Signals",
48
- sourceMode: "native",
49
- native: { type: "native" },
50
- });
51
- await catalox.bindCatalogToApp(ctx, {
52
- appId,
53
- catalogId,
54
- access: { canRead: true, canWrite: true, canAdmin: true },
55
- });
56
- const discovered = await catalox.listAppCatalogs(ctx, { appId });
57
- assert.equal(discovered.length, 1);
58
- assert.equal(discovered[0]?.catalogId, catalogId);
59
- const descriptor = await catalox.getCatalogDescriptor(ctx, catalogId);
60
- assert.ok(descriptor);
61
- assert.equal(descriptor?.catalogId, catalogId);
62
- // Patch descriptor: composite identity + queryableFields with indexed:true so deriveIndexed
63
- // populates indexed.* for Firestore equality filters (see README native section).
64
- await descriptors.upsert({
65
- catalogId,
66
- descriptorVersion: "2",
67
- descriptor: {
68
- ...descriptor,
69
- identity: {
70
- itemIdStrategy: "composite",
71
- compositeFields: ["categoryId", "code"],
72
- titleField: "title",
73
- },
74
- queryableFields: [
75
- { key: "categoryId", label: "Category", type: "string", indexed: true, filterable: true },
76
- { key: "code", label: "Code", type: "string", indexed: true, filterable: true },
77
- { key: "title", label: "Title", type: "string" },
78
- ],
79
- },
80
- createdAt: new Date().toISOString(),
81
- updatedAt: new Date().toISOString(),
82
- });
83
- await catalox.upsertNativeCatalogItem(ctx, catalogId, {
84
- categoryId: "core",
85
- code: "S1",
86
- title: "Example",
87
- indexed: { categoryId: "core", code: "S1" },
88
- });
89
- const listed = await catalox.listCatalogItems(ctx, catalogId, {
90
- filter: { categoryId: "core" },
91
- });
92
- assert.equal(listed.listOutcome, "ok");
93
- assert.equal(listed.items.length, 1);
94
- assert.equal(listed.items[0]?.itemId, "core:S1");
95
- const got = await catalox.getCatalogItem(ctx, catalogId, "core:S1");
96
- assert.equal(got.outcome, "found");
97
- if (got.outcome === "found")
98
- assert.equal(got.item.title, "Example");
99
- // Best-effort cleanup: delete the docs created by this test only.
100
- const nativeCol = firestore.collection(`catalogData-${catalogId}-items`);
101
- const nativeSnap = await nativeCol.get();
102
- for (const d of nativeSnap.docs)
103
- await d.ref.delete().catch(() => { });
104
- await firestore.collection("apps").doc(appId).delete().catch(() => { });
105
- await firestore.collection("catalogs").doc(catalogId).delete().catch(() => { });
106
- await firestore.collection("catalogBindings").doc(`${appId}:${catalogId}`).delete().catch(() => { });
107
- await firestore.collection("catalogDefinitions").doc(catalogId).delete().catch(() => { });
108
- await firestore.collection("catalogDescriptors").doc(catalogId).delete().catch(() => { });
109
- await firestore.collection("catalogData").doc(catalogId).delete().catch(() => { });
110
- // Cleanup app instance.
111
- await deleteApp(app);
112
- for (const a of getApps()) {
113
- if (a.name === appName)
114
- await deleteApp(a);
115
- }
116
- });
117
- //# sourceMappingURL=firestore.emulator.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"firestore.emulator.test.js","sourceRoot":"","sources":["../../../test/integration/firestore.emulator.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=record-history.live.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"record-history.live.test.d.ts","sourceRoot":"","sources":["../../../test/integration/record-history.live.test.ts"],"names":[],"mappings":""}