@xyo-network/diviner-temporal-indexing-memory 2.80.12 → 2.80.14

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 (370) hide show
  1. package/dist/browser/Diviner.d.cts +12 -5
  2. package/dist/browser/Diviner.d.cts.map +1 -1
  3. package/dist/browser/Diviner.d.mts +12 -5
  4. package/dist/browser/Diviner.d.mts.map +1 -1
  5. package/dist/browser/Diviner.d.ts +12 -5
  6. package/dist/browser/Diviner.d.ts.map +1 -1
  7. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.cts +42 -0
  8. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.cts.map +1 -0
  9. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.mts +42 -0
  10. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.mts.map +1 -0
  11. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.ts +42 -0
  12. package/dist/browser/DivinerQueryToIndexQueryDiviner/Diviner.d.ts.map +1 -0
  13. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.cts +2 -0
  14. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.cts.map +1 -0
  15. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.mts +2 -0
  16. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.mts.map +1 -0
  17. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.ts +2 -0
  18. package/dist/browser/DivinerQueryToIndexQueryDiviner/index.d.ts.map +1 -0
  19. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.cts +9 -9
  20. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.cts.map +1 -1
  21. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.mts +9 -9
  22. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.mts.map +1 -1
  23. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.ts +9 -9
  24. package/dist/browser/IndexCandidateToIndexDiviner/Diviner.d.ts.map +1 -1
  25. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.cts +47 -0
  26. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.cts.map +1 -0
  27. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.mts +47 -0
  28. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.mts.map +1 -0
  29. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.ts +47 -0
  30. package/dist/browser/IndexCandidateToIndexDiviner/_Diviner.d.ts.map +1 -0
  31. package/dist/browser/IndexCandidateToIndexDiviner/index.d.cts +0 -3
  32. package/dist/browser/IndexCandidateToIndexDiviner/index.d.cts.map +1 -1
  33. package/dist/browser/IndexCandidateToIndexDiviner/index.d.mts +0 -3
  34. package/dist/browser/IndexCandidateToIndexDiviner/index.d.mts.map +1 -1
  35. package/dist/browser/IndexCandidateToIndexDiviner/index.d.ts +0 -3
  36. package/dist/browser/IndexCandidateToIndexDiviner/index.d.ts.map +1 -1
  37. package/dist/browser/{IndexQueryResponseToDivinerQueryResponseDiviner.d.mts → IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.cts} +3 -2
  38. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.cts.map +1 -0
  39. package/dist/browser/{IndexQueryResponseToDivinerQueryResponseDiviner.d.ts → IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.mts} +3 -2
  40. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.mts.map +1 -0
  41. package/dist/{node/IndexQueryResponseToDivinerQueryResponseDiviner.d.cts → browser/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.ts} +3 -2
  42. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.ts.map +1 -0
  43. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.cts +2 -0
  44. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.cts.map +1 -0
  45. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.mts +2 -0
  46. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.mts.map +1 -0
  47. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.ts +2 -0
  48. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.ts.map +1 -0
  49. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.cts +7 -6
  50. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.cts.map +1 -1
  51. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.mts +7 -6
  52. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.mts.map +1 -1
  53. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.ts +7 -6
  54. package/dist/browser/StateToIndexCandidateDiviner/Diviner.d.ts.map +1 -1
  55. package/dist/browser/index.cjs +453 -26
  56. package/dist/browser/index.cjs.map +1 -1
  57. package/dist/browser/index.d.cts +4 -0
  58. package/dist/browser/index.d.cts.map +1 -1
  59. package/dist/browser/index.d.mts +4 -0
  60. package/dist/browser/index.d.mts.map +1 -1
  61. package/dist/browser/index.d.ts +4 -0
  62. package/dist/browser/index.d.ts.map +1 -1
  63. package/dist/browser/index.js +457 -26
  64. package/dist/browser/index.js.map +1 -1
  65. package/dist/browser/jsonpath/index.d.cts +4 -0
  66. package/dist/browser/jsonpath/index.d.cts.map +1 -0
  67. package/dist/browser/jsonpath/index.d.mts +4 -0
  68. package/dist/browser/jsonpath/index.d.mts.map +1 -0
  69. package/dist/browser/jsonpath/index.d.ts +4 -0
  70. package/dist/browser/jsonpath/index.d.ts.map +1 -0
  71. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.cts +10 -0
  72. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.cts.map +1 -0
  73. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.mts +10 -0
  74. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.mts.map +1 -0
  75. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.ts +10 -0
  76. package/dist/browser/jsonpath/jsonPathToTransformersDictionary.d.ts.map +1 -0
  77. package/dist/browser/jsonpath/reducePayloads.d.cts +27 -0
  78. package/dist/browser/jsonpath/reducePayloads.d.cts.map +1 -0
  79. package/dist/browser/jsonpath/reducePayloads.d.mts +27 -0
  80. package/dist/browser/jsonpath/reducePayloads.d.mts.map +1 -0
  81. package/dist/browser/jsonpath/reducePayloads.d.ts +27 -0
  82. package/dist/browser/jsonpath/reducePayloads.d.ts.map +1 -0
  83. package/dist/browser/jsonpath/toPayloadTransformer.d.cts +8 -0
  84. package/dist/browser/jsonpath/toPayloadTransformer.d.cts.map +1 -0
  85. package/dist/browser/jsonpath/toPayloadTransformer.d.mts +8 -0
  86. package/dist/browser/jsonpath/toPayloadTransformer.d.mts.map +1 -0
  87. package/dist/browser/jsonpath/toPayloadTransformer.d.ts +8 -0
  88. package/dist/browser/jsonpath/toPayloadTransformer.d.ts.map +1 -0
  89. package/dist/node/Diviner.d.cts +12 -5
  90. package/dist/node/Diviner.d.cts.map +1 -1
  91. package/dist/node/Diviner.d.mts +12 -5
  92. package/dist/node/Diviner.d.mts.map +1 -1
  93. package/dist/node/Diviner.d.ts +12 -5
  94. package/dist/node/Diviner.d.ts.map +1 -1
  95. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.cts +42 -0
  96. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.cts.map +1 -0
  97. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.mts +42 -0
  98. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.mts.map +1 -0
  99. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.ts +42 -0
  100. package/dist/node/DivinerQueryToIndexQueryDiviner/Diviner.d.ts.map +1 -0
  101. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.cts +2 -0
  102. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.cts.map +1 -0
  103. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.mts +2 -0
  104. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.mts.map +1 -0
  105. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.ts +2 -0
  106. package/dist/node/DivinerQueryToIndexQueryDiviner/index.d.ts.map +1 -0
  107. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.cts +9 -9
  108. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.cts.map +1 -1
  109. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.mts +9 -9
  110. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.mts.map +1 -1
  111. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.ts +9 -9
  112. package/dist/node/IndexCandidateToIndexDiviner/Diviner.d.ts.map +1 -1
  113. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.cts +47 -0
  114. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.cts.map +1 -0
  115. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.mts +47 -0
  116. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.mts.map +1 -0
  117. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.ts +47 -0
  118. package/dist/node/IndexCandidateToIndexDiviner/_Diviner.d.ts.map +1 -0
  119. package/dist/node/IndexCandidateToIndexDiviner/index.d.cts +0 -3
  120. package/dist/node/IndexCandidateToIndexDiviner/index.d.cts.map +1 -1
  121. package/dist/node/IndexCandidateToIndexDiviner/index.d.mts +0 -3
  122. package/dist/node/IndexCandidateToIndexDiviner/index.d.mts.map +1 -1
  123. package/dist/node/IndexCandidateToIndexDiviner/index.d.ts +0 -3
  124. package/dist/node/IndexCandidateToIndexDiviner/index.d.ts.map +1 -1
  125. package/dist/{browser/IndexQueryResponseToDivinerQueryResponseDiviner.d.cts → node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.cts} +3 -2
  126. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.cts.map +1 -0
  127. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.mts +13 -0
  128. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.mts.map +1 -0
  129. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.ts +13 -0
  130. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.d.ts.map +1 -0
  131. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.cts +2 -0
  132. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.cts.map +1 -0
  133. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.mts +2 -0
  134. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.mts.map +1 -0
  135. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.ts +2 -0
  136. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner/index.d.ts.map +1 -0
  137. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.cts +7 -6
  138. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.cts.map +1 -1
  139. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.mts +7 -6
  140. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.mts.map +1 -1
  141. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.ts +7 -6
  142. package/dist/node/StateToIndexCandidateDiviner/Diviner.d.ts.map +1 -1
  143. package/dist/node/index.d.cts +4 -0
  144. package/dist/node/index.d.cts.map +1 -1
  145. package/dist/node/index.d.mts +4 -0
  146. package/dist/node/index.d.mts.map +1 -1
  147. package/dist/node/index.d.ts +4 -0
  148. package/dist/node/index.d.ts.map +1 -1
  149. package/dist/node/index.js +476 -27
  150. package/dist/node/index.js.map +1 -1
  151. package/dist/node/index.mjs +475 -26
  152. package/dist/node/index.mjs.map +1 -1
  153. package/dist/node/jsonpath/index.d.cts +4 -0
  154. package/dist/node/jsonpath/index.d.cts.map +1 -0
  155. package/dist/node/jsonpath/index.d.mts +4 -0
  156. package/dist/node/jsonpath/index.d.mts.map +1 -0
  157. package/dist/node/jsonpath/index.d.ts +4 -0
  158. package/dist/node/jsonpath/index.d.ts.map +1 -0
  159. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.cts +10 -0
  160. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.cts.map +1 -0
  161. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.mts +10 -0
  162. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.mts.map +1 -0
  163. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.ts +10 -0
  164. package/dist/node/jsonpath/jsonPathToTransformersDictionary.d.ts.map +1 -0
  165. package/dist/node/jsonpath/reducePayloads.d.cts +27 -0
  166. package/dist/node/jsonpath/reducePayloads.d.cts.map +1 -0
  167. package/dist/node/jsonpath/reducePayloads.d.mts +27 -0
  168. package/dist/node/jsonpath/reducePayloads.d.mts.map +1 -0
  169. package/dist/node/jsonpath/reducePayloads.d.ts +27 -0
  170. package/dist/node/jsonpath/reducePayloads.d.ts.map +1 -0
  171. package/dist/node/jsonpath/toPayloadTransformer.d.cts +8 -0
  172. package/dist/node/jsonpath/toPayloadTransformer.d.cts.map +1 -0
  173. package/dist/node/jsonpath/toPayloadTransformer.d.mts +8 -0
  174. package/dist/node/jsonpath/toPayloadTransformer.d.mts.map +1 -0
  175. package/dist/node/jsonpath/toPayloadTransformer.d.ts +8 -0
  176. package/dist/node/jsonpath/toPayloadTransformer.d.ts.map +1 -0
  177. package/package.json +29 -28
  178. package/src/Diviner.ts +119 -27
  179. package/src/DivinerQueryToIndexQueryDiviner/Diviner.ts +120 -0
  180. package/src/DivinerQueryToIndexQueryDiviner/index.ts +1 -0
  181. package/src/IndexCandidateToIndexDiviner/Diviner.ts +40 -57
  182. package/src/IndexCandidateToIndexDiviner/_Diviner.ts +135 -0
  183. package/src/IndexCandidateToIndexDiviner/index.ts +0 -3
  184. package/src/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.ts +26 -0
  185. package/src/IndexQueryResponseToDivinerQueryResponseDiviner/index.ts +1 -0
  186. package/src/StateToIndexCandidateDiviner/Diviner.ts +25 -13
  187. package/src/index.ts +4 -0
  188. package/src/jsonpath/index.ts +3 -0
  189. package/src/jsonpath/jsonPathToTransformersDictionary.ts +21 -0
  190. package/src/jsonpath/reducePayloads.ts +50 -0
  191. package/src/jsonpath/toPayloadTransformer.ts +23 -0
  192. package/src/spec/{ImageThumbnailDivinerManifest.json → TemporalDiviner.json} +70 -7
  193. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.cts +0 -12
  194. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.cts.map +0 -1
  195. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.mts +0 -12
  196. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.mts.map +0 -1
  197. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.ts +0 -12
  198. package/dist/browser/DivinerQueryToIndexQueryDiviner.d.ts.map +0 -1
  199. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.cts +0 -10
  200. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.cts.map +0 -1
  201. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.mts +0 -10
  202. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.mts.map +0 -1
  203. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.ts +0 -10
  204. package/dist/browser/IndexCandidateToIndexDiviner/Config.d.ts.map +0 -1
  205. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.cts +0 -5
  206. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.cts.map +0 -1
  207. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.mts +0 -5
  208. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.mts.map +0 -1
  209. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.ts +0 -5
  210. package/dist/browser/IndexCandidateToIndexDiviner/Params.d.ts.map +0 -1
  211. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.cts +0 -4
  212. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.cts.map +0 -1
  213. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.mts +0 -4
  214. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.mts.map +0 -1
  215. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.ts +0 -4
  216. package/dist/browser/IndexCandidateToIndexDiviner/Schema.d.ts.map +0 -1
  217. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner.d.cts.map +0 -1
  218. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner.d.mts.map +0 -1
  219. package/dist/browser/IndexQueryResponseToDivinerQueryResponseDiviner.d.ts.map +0 -1
  220. package/dist/browser/StateToIndexCandidateDiviner/Config.d.cts +0 -19
  221. package/dist/browser/StateToIndexCandidateDiviner/Config.d.cts.map +0 -1
  222. package/dist/browser/StateToIndexCandidateDiviner/Config.d.mts +0 -19
  223. package/dist/browser/StateToIndexCandidateDiviner/Config.d.mts.map +0 -1
  224. package/dist/browser/StateToIndexCandidateDiviner/Config.d.ts +0 -19
  225. package/dist/browser/StateToIndexCandidateDiviner/Config.d.ts.map +0 -1
  226. package/dist/browser/StateToIndexCandidateDiviner/Params.d.cts +0 -5
  227. package/dist/browser/StateToIndexCandidateDiviner/Params.d.cts.map +0 -1
  228. package/dist/browser/StateToIndexCandidateDiviner/Params.d.mts +0 -5
  229. package/dist/browser/StateToIndexCandidateDiviner/Params.d.mts.map +0 -1
  230. package/dist/browser/StateToIndexCandidateDiviner/Params.d.ts +0 -5
  231. package/dist/browser/StateToIndexCandidateDiviner/Params.d.ts.map +0 -1
  232. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.cts +0 -4
  233. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.cts.map +0 -1
  234. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.mts +0 -4
  235. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.mts.map +0 -1
  236. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.ts +0 -4
  237. package/dist/browser/StateToIndexCandidateDiviner/Schema.d.ts.map +0 -1
  238. package/dist/browser/lib/index.d.cts +0 -2
  239. package/dist/browser/lib/index.d.cts.map +0 -1
  240. package/dist/browser/lib/index.d.mts +0 -2
  241. package/dist/browser/lib/index.d.mts.map +0 -1
  242. package/dist/browser/lib/index.d.ts +0 -2
  243. package/dist/browser/lib/index.d.ts.map +0 -1
  244. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.cts +0 -15
  245. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.cts.map +0 -1
  246. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.mts +0 -15
  247. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.mts.map +0 -1
  248. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.ts +0 -15
  249. package/dist/browser/lib/jsonpath/JsonPathTransformExpression.d.ts.map +0 -1
  250. package/dist/browser/lib/jsonpath/PayloadTransformer.d.cts +0 -3
  251. package/dist/browser/lib/jsonpath/PayloadTransformer.d.cts.map +0 -1
  252. package/dist/browser/lib/jsonpath/PayloadTransformer.d.mts +0 -3
  253. package/dist/browser/lib/jsonpath/PayloadTransformer.d.mts.map +0 -1
  254. package/dist/browser/lib/jsonpath/PayloadTransformer.d.ts +0 -3
  255. package/dist/browser/lib/jsonpath/PayloadTransformer.d.ts.map +0 -1
  256. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.cts +0 -12
  257. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.cts.map +0 -1
  258. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.mts +0 -12
  259. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.mts.map +0 -1
  260. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.ts +0 -12
  261. package/dist/browser/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.ts.map +0 -1
  262. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.cts +0 -5
  263. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.cts.map +0 -1
  264. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.mts +0 -5
  265. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.mts.map +0 -1
  266. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.ts +0 -5
  267. package/dist/browser/lib/jsonpath/StringToPayloadTransformersDictionary.d.ts.map +0 -1
  268. package/dist/browser/lib/jsonpath/index.d.cts +0 -5
  269. package/dist/browser/lib/jsonpath/index.d.cts.map +0 -1
  270. package/dist/browser/lib/jsonpath/index.d.mts +0 -5
  271. package/dist/browser/lib/jsonpath/index.d.mts.map +0 -1
  272. package/dist/browser/lib/jsonpath/index.d.ts +0 -5
  273. package/dist/browser/lib/jsonpath/index.d.ts.map +0 -1
  274. package/dist/node/DivinerQueryToIndexQueryDiviner.d.cts +0 -12
  275. package/dist/node/DivinerQueryToIndexQueryDiviner.d.cts.map +0 -1
  276. package/dist/node/DivinerQueryToIndexQueryDiviner.d.mts +0 -12
  277. package/dist/node/DivinerQueryToIndexQueryDiviner.d.mts.map +0 -1
  278. package/dist/node/DivinerQueryToIndexQueryDiviner.d.ts +0 -12
  279. package/dist/node/DivinerQueryToIndexQueryDiviner.d.ts.map +0 -1
  280. package/dist/node/IndexCandidateToIndexDiviner/Config.d.cts +0 -10
  281. package/dist/node/IndexCandidateToIndexDiviner/Config.d.cts.map +0 -1
  282. package/dist/node/IndexCandidateToIndexDiviner/Config.d.mts +0 -10
  283. package/dist/node/IndexCandidateToIndexDiviner/Config.d.mts.map +0 -1
  284. package/dist/node/IndexCandidateToIndexDiviner/Config.d.ts +0 -10
  285. package/dist/node/IndexCandidateToIndexDiviner/Config.d.ts.map +0 -1
  286. package/dist/node/IndexCandidateToIndexDiviner/Params.d.cts +0 -5
  287. package/dist/node/IndexCandidateToIndexDiviner/Params.d.cts.map +0 -1
  288. package/dist/node/IndexCandidateToIndexDiviner/Params.d.mts +0 -5
  289. package/dist/node/IndexCandidateToIndexDiviner/Params.d.mts.map +0 -1
  290. package/dist/node/IndexCandidateToIndexDiviner/Params.d.ts +0 -5
  291. package/dist/node/IndexCandidateToIndexDiviner/Params.d.ts.map +0 -1
  292. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.cts +0 -4
  293. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.cts.map +0 -1
  294. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.mts +0 -4
  295. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.mts.map +0 -1
  296. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.ts +0 -4
  297. package/dist/node/IndexCandidateToIndexDiviner/Schema.d.ts.map +0 -1
  298. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner.d.cts.map +0 -1
  299. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner.d.mts +0 -12
  300. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner.d.mts.map +0 -1
  301. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner.d.ts +0 -12
  302. package/dist/node/IndexQueryResponseToDivinerQueryResponseDiviner.d.ts.map +0 -1
  303. package/dist/node/StateToIndexCandidateDiviner/Config.d.cts +0 -19
  304. package/dist/node/StateToIndexCandidateDiviner/Config.d.cts.map +0 -1
  305. package/dist/node/StateToIndexCandidateDiviner/Config.d.mts +0 -19
  306. package/dist/node/StateToIndexCandidateDiviner/Config.d.mts.map +0 -1
  307. package/dist/node/StateToIndexCandidateDiviner/Config.d.ts +0 -19
  308. package/dist/node/StateToIndexCandidateDiviner/Config.d.ts.map +0 -1
  309. package/dist/node/StateToIndexCandidateDiviner/Params.d.cts +0 -5
  310. package/dist/node/StateToIndexCandidateDiviner/Params.d.cts.map +0 -1
  311. package/dist/node/StateToIndexCandidateDiviner/Params.d.mts +0 -5
  312. package/dist/node/StateToIndexCandidateDiviner/Params.d.mts.map +0 -1
  313. package/dist/node/StateToIndexCandidateDiviner/Params.d.ts +0 -5
  314. package/dist/node/StateToIndexCandidateDiviner/Params.d.ts.map +0 -1
  315. package/dist/node/StateToIndexCandidateDiviner/Schema.d.cts +0 -4
  316. package/dist/node/StateToIndexCandidateDiviner/Schema.d.cts.map +0 -1
  317. package/dist/node/StateToIndexCandidateDiviner/Schema.d.mts +0 -4
  318. package/dist/node/StateToIndexCandidateDiviner/Schema.d.mts.map +0 -1
  319. package/dist/node/StateToIndexCandidateDiviner/Schema.d.ts +0 -4
  320. package/dist/node/StateToIndexCandidateDiviner/Schema.d.ts.map +0 -1
  321. package/dist/node/lib/index.d.cts +0 -2
  322. package/dist/node/lib/index.d.cts.map +0 -1
  323. package/dist/node/lib/index.d.mts +0 -2
  324. package/dist/node/lib/index.d.mts.map +0 -1
  325. package/dist/node/lib/index.d.ts +0 -2
  326. package/dist/node/lib/index.d.ts.map +0 -1
  327. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.cts +0 -15
  328. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.cts.map +0 -1
  329. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.mts +0 -15
  330. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.mts.map +0 -1
  331. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.ts +0 -15
  332. package/dist/node/lib/jsonpath/JsonPathTransformExpression.d.ts.map +0 -1
  333. package/dist/node/lib/jsonpath/PayloadTransformer.d.cts +0 -3
  334. package/dist/node/lib/jsonpath/PayloadTransformer.d.cts.map +0 -1
  335. package/dist/node/lib/jsonpath/PayloadTransformer.d.mts +0 -3
  336. package/dist/node/lib/jsonpath/PayloadTransformer.d.mts.map +0 -1
  337. package/dist/node/lib/jsonpath/PayloadTransformer.d.ts +0 -3
  338. package/dist/node/lib/jsonpath/PayloadTransformer.d.ts.map +0 -1
  339. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.cts +0 -12
  340. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.cts.map +0 -1
  341. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.mts +0 -12
  342. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.mts.map +0 -1
  343. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.ts +0 -12
  344. package/dist/node/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.d.ts.map +0 -1
  345. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.cts +0 -5
  346. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.cts.map +0 -1
  347. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.mts +0 -5
  348. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.mts.map +0 -1
  349. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.ts +0 -5
  350. package/dist/node/lib/jsonpath/StringToPayloadTransformersDictionary.d.ts.map +0 -1
  351. package/dist/node/lib/jsonpath/index.d.cts +0 -5
  352. package/dist/node/lib/jsonpath/index.d.cts.map +0 -1
  353. package/dist/node/lib/jsonpath/index.d.mts +0 -5
  354. package/dist/node/lib/jsonpath/index.d.mts.map +0 -1
  355. package/dist/node/lib/jsonpath/index.d.ts +0 -5
  356. package/dist/node/lib/jsonpath/index.d.ts.map +0 -1
  357. package/src/DivinerQueryToIndexQueryDiviner.ts +0 -34
  358. package/src/IndexCandidateToIndexDiviner/Config.ts +0 -12
  359. package/src/IndexCandidateToIndexDiviner/Params.ts +0 -6
  360. package/src/IndexCandidateToIndexDiviner/Schema.ts +0 -4
  361. package/src/IndexQueryResponseToDivinerQueryResponseDiviner.ts +0 -21
  362. package/src/StateToIndexCandidateDiviner/Config.ts +0 -21
  363. package/src/StateToIndexCandidateDiviner/Params.ts +0 -6
  364. package/src/StateToIndexCandidateDiviner/Schema.ts +0 -4
  365. package/src/lib/index.ts +0 -1
  366. package/src/lib/jsonpath/JsonPathTransformExpression.ts +0 -14
  367. package/src/lib/jsonpath/PayloadTransformer.ts +0 -3
  368. package/src/lib/jsonpath/StringToJsonPathTransformExpressionDictionary.ts +0 -8
  369. package/src/lib/jsonpath/StringToPayloadTransformersDictionary.ts +0 -3
  370. package/src/lib/jsonpath/index.ts +0 -4
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
8
  var __export = (target, all) => {
7
9
  for (var name in all)
@@ -15,45 +17,389 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
29
 
20
30
  // src/index.ts
21
31
  var src_exports = {};
22
32
  __export(src_exports, {
23
- TemporalIndexingDiviner: () => TemporalIndexingDiviner
33
+ TemporalIndexingDiviner: () => TemporalIndexingDiviner,
34
+ TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner: () => TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner,
35
+ TemporalIndexingDivinerIndexCandidateToIndexDiviner: () => TemporalIndexingDivinerIndexCandidateToIndexDiviner,
36
+ TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner: () => TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner,
37
+ TemporalIndexingDivinerStateToIndexCandidateDiviner: () => TemporalIndexingDivinerStateToIndexCandidateDiviner
24
38
  });
25
39
  module.exports = __toCommonJS(src_exports);
26
40
 
27
41
  // src/Diviner.ts
42
+ var import_assert3 = require("@xylabs/assert");
28
43
  var import_diviner_indexing_memory = require("@xyo-network/diviner-indexing-memory");
29
44
  var import_diviner_indexing_model = require("@xyo-network/diviner-indexing-model");
45
+ var import_diviner_model5 = require("@xyo-network/diviner-model");
46
+ var import_diviner_temporal_indexing_model5 = require("@xyo-network/diviner-temporal-indexing-model");
47
+ var import_node_model = require("@xyo-network/node-model");
48
+
49
+ // src/DivinerQueryToIndexQueryDiviner/Diviner.ts
50
+ var import_abstract_diviner = require("@xyo-network/abstract-diviner");
30
51
  var import_diviner_model = require("@xyo-network/diviner-model");
52
+ var import_diviner_payload_model = require("@xyo-network/diviner-payload-model");
53
+ var import_diviner_temporal_indexing_model = require("@xyo-network/diviner-temporal-indexing-model");
54
+ var import_payload_builder2 = require("@xyo-network/payload-builder");
55
+ var import_payload_model = require("@xyo-network/payload-model");
56
+
57
+ // src/jsonpath/toPayloadTransformer.ts
58
+ var import_jsonpath = __toESM(require("jsonpath"));
59
+ var toPayloadTransformer = (transformExpression) => {
60
+ const { defaultValue, destinationField, sourcePathExpression } = transformExpression;
61
+ const transformer = (x) => {
62
+ const source = import_jsonpath.default.value(x, sourcePathExpression);
63
+ const transformed = {};
64
+ const destinationValue = source === void 0 ? defaultValue : source;
65
+ if (destinationValue !== void 0)
66
+ transformed[destinationField] = destinationValue;
67
+ return transformed;
68
+ };
69
+ return transformer;
70
+ };
71
+
72
+ // src/jsonpath/jsonPathToTransformersDictionary.ts
73
+ var jsonPathToTransformersDictionary = (schemaTransforms) => {
74
+ return Object.fromEntries(
75
+ Object.entries(schemaTransforms).map(([schema, jsonPathTransformerExpressions]) => {
76
+ const transformers = jsonPathTransformerExpressions.map(toPayloadTransformer);
77
+ return [schema, transformers];
78
+ })
79
+ );
80
+ };
81
+
82
+ // src/jsonpath/reducePayloads.ts
83
+ var import_core = require("@xyo-network/core");
84
+ var import_payload_builder = require("@xyo-network/payload-builder");
85
+ var reducePayloads = async (payloads, payloadTransformers, destinationSchema) => {
86
+ const indexFields = payloads.map((payload) => {
87
+ const transformers = payloadTransformers[payload.schema];
88
+ return transformers ? transformers.map((transform) => transform(payload)) : [];
89
+ }).flat();
90
+ const sources = (await import_core.PayloadHasher.hashPairs([...payloads])).map(([, hash]) => hash);
91
+ return new import_payload_builder.PayloadBuilder({ schema: destinationSchema }).fields(Object.assign({ sources }, ...indexFields)).build();
92
+ };
93
+
94
+ // src/DivinerQueryToIndexQueryDiviner/Diviner.ts
95
+ var TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner = class extends import_abstract_diviner.AbstractDiviner {
96
+ static configSchema = import_diviner_temporal_indexing_model.TemporalIndexingDivinerDivinerQueryToIndexQueryDivinerConfigSchema;
97
+ static configSchemas = [import_diviner_model.DivinerConfigSchema, import_diviner_temporal_indexing_model.TemporalIndexingDivinerDivinerQueryToIndexQueryDivinerConfigSchema];
98
+ static labels = {
99
+ "network.xyo.diviner.stage": "divinerQueryToIndexQueryDiviner"
100
+ };
101
+ _indexableSchemas;
102
+ _payloadTransformers;
103
+ /**
104
+ * The schema of the diviner query payloads
105
+ */
106
+ get divinerQuerySchema() {
107
+ return this.config.divinerQuerySchema ?? import_diviner_payload_model.PayloadDivinerQuerySchema;
108
+ }
109
+ /**
110
+ * The schema of the index query payloads
111
+ */
112
+ get indexQuerySchema() {
113
+ return this.config.indexQuerySchema ?? import_diviner_payload_model.PayloadDivinerQuerySchema;
114
+ }
115
+ /**
116
+ * The schema of the index payloads
117
+ */
118
+ get indexSchema() {
119
+ return this.config.indexSchema ?? import_diviner_temporal_indexing_model.TemporalIndexingDivinerResultIndexSchema;
120
+ }
121
+ /**
122
+ * List of indexable schemas for this diviner
123
+ */
124
+ get indexableSchemas() {
125
+ if (!this._indexableSchemas)
126
+ this._indexableSchemas = [...Object.keys(this.schemaTransforms)];
127
+ return this._indexableSchemas;
128
+ }
129
+ /**
130
+ * Dictionary of schemas to payload transformers for creating indexes
131
+ * from the payloads within a Bound Witness
132
+ */
133
+ get payloadTransformers() {
134
+ if (!this._payloadTransformers)
135
+ this._payloadTransformers = jsonPathToTransformersDictionary(this.schemaTransforms);
136
+ return this._payloadTransformers;
137
+ }
138
+ /**
139
+ * The dictionary of schemas to JSON Path transform expressions for creating indexes
140
+ * from the payloads within a Bound Witness
141
+ */
142
+ get schemaTransforms() {
143
+ var _a;
144
+ return ((_a = this.config) == null ? void 0 : _a.schemaTransforms) ?? {
145
+ [this.divinerQuerySchema]: [
146
+ {
147
+ defaultValue: 1,
148
+ destinationField: "limit",
149
+ sourcePathExpression: "$.limit"
150
+ },
151
+ {
152
+ defaultValue: 0,
153
+ destinationField: "offset",
154
+ sourcePathExpression: "$.offset"
155
+ },
156
+ {
157
+ defaultValue: "desc",
158
+ destinationField: "order",
159
+ sourcePathExpression: "$.order"
160
+ }
161
+ ]
162
+ };
163
+ }
164
+ async divineHandler(payloads = []) {
165
+ const queries = payloads.filter((0, import_payload_model.isPayloadOfSchemaType)(this.divinerQuerySchema));
166
+ if (queries.length) {
167
+ const results = await Promise.all(
168
+ queries.map(async (query) => {
169
+ const fields = await reducePayloads(
170
+ [query],
171
+ this.payloadTransformers,
172
+ this.indexQuerySchema
173
+ );
174
+ fields.schemas = [this.indexSchema];
175
+ delete fields.sources;
176
+ return new import_payload_builder2.PayloadBuilder({ schema: this.indexQuerySchema }).fields(fields).build();
177
+ })
178
+ );
179
+ return results;
180
+ }
181
+ return Promise.resolve([]);
182
+ }
183
+ };
184
+
185
+ // src/IndexCandidateToIndexDiviner/Diviner.ts
186
+ var import_array = require("@xylabs/array");
187
+ var import_assert = require("@xylabs/assert");
188
+ var import_exists = require("@xylabs/exists");
189
+ var import_abstract_diviner2 = require("@xyo-network/abstract-diviner");
190
+ var import_boundwitness_model = require("@xyo-network/boundwitness-model");
191
+ var import_core2 = require("@xyo-network/core");
192
+ var import_diviner_model2 = require("@xyo-network/diviner-model");
193
+ var import_diviner_temporal_indexing_model2 = require("@xyo-network/diviner-temporal-indexing-model");
194
+ var import_payload_builder3 = require("@xyo-network/payload-builder");
195
+ var moduleName = "TemporalIndexingDivinerIndexCandidateToIndexDiviner";
196
+ var TemporalIndexingDivinerIndexCandidateToIndexDiviner = class extends import_abstract_diviner2.AbstractDiviner {
197
+ static configSchema = import_diviner_temporal_indexing_model2.TemporalIndexingDivinerIndexCandidateToIndexDivinerConfigSchema;
198
+ static configSchemas = [import_diviner_model2.DivinerConfigSchema, import_diviner_temporal_indexing_model2.TemporalIndexingDivinerIndexCandidateToIndexDivinerConfigSchema];
199
+ static labels = {
200
+ "network.xyo.diviner.stage": "indexCandidateToIndexDiviner"
201
+ };
202
+ _indexableSchemas;
203
+ _payloadTransformers;
204
+ /**
205
+ * List of indexable schemas for this diviner
206
+ */
207
+ get indexableSchemas() {
208
+ if (!this._indexableSchemas)
209
+ this._indexableSchemas = [...Object.keys(this.schemaTransforms)];
210
+ return this._indexableSchemas;
211
+ }
212
+ /**
213
+ * Dictionary of schemas to payload transformers for creating indexes
214
+ * from the payloads within a Bound Witness
215
+ */
216
+ get payloadTransformers() {
217
+ if (!this._payloadTransformers)
218
+ this._payloadTransformers = jsonPathToTransformersDictionary(this.schemaTransforms);
219
+ return this._payloadTransformers;
220
+ }
221
+ /**
222
+ * The dictionary of schemas to JSON Path transform expressions for creating indexes
223
+ * from the payloads within a Bound Witness
224
+ */
225
+ get schemaTransforms() {
226
+ var _a;
227
+ return (0, import_assert.assertEx)((_a = this.config) == null ? void 0 : _a.schemaTransforms, () => `${moduleName}: Missing config.schemaTransforms section`);
228
+ }
229
+ async divineHandler(payloads = []) {
230
+ const bws = payloads.filter(import_boundwitness_model.isBoundWitness);
231
+ const indexablePayloads = payloads.filter((p) => this.isIndexablePayload(p));
232
+ if (bws.length && indexablePayloads.length) {
233
+ const payloadDictionary = await import_core2.PayloadHasher.toMap(payloads);
234
+ const validIndexableTuples = bws.reduce((indexableTuples, bw) => {
235
+ if (!(0, import_array.containsAll)(bw.payload_schemas, this.indexableSchemas))
236
+ return indexableTuples;
237
+ const indexablePayloadPositions = this.indexableSchemas.map((schema) => bw.payload_schemas.indexOf(schema));
238
+ const indexablePayloadHashes = indexablePayloadPositions.map((index) => {
239
+ var _a;
240
+ return (_a = bw.payload_hashes) == null ? void 0 : _a[index];
241
+ });
242
+ const indexablePayloads2 = indexablePayloadHashes.map((hash) => payloadDictionary[hash]).filter(import_exists.exists);
243
+ if (indexablePayloads2.length === this.indexableSchemas.length)
244
+ indexableTuples.push([bw, ...indexablePayloads2]);
245
+ return indexableTuples;
246
+ }, []);
247
+ const indexes = await Promise.all(
248
+ validIndexableTuples.map(async ([bw, ...sourcePayloads]) => {
249
+ const indexFields = sourcePayloads.map((payload) => {
250
+ const transformers = this.payloadTransformers[payload.schema];
251
+ return transformers ? transformers.map((transform) => transform(payload)) : [];
252
+ }).flat();
253
+ const sources = Object.keys(await import_core2.PayloadHasher.toMap([bw, ...sourcePayloads]));
254
+ return new import_payload_builder3.PayloadBuilder({ schema: import_diviner_temporal_indexing_model2.TemporalIndexingDivinerResultIndexSchema }).fields(Object.assign({ sources }, ...indexFields)).build();
255
+ })
256
+ );
257
+ return indexes.flat();
258
+ }
259
+ return Promise.resolve([]);
260
+ }
261
+ /**
262
+ * Identifies if a payload is one that is indexed by this diviner
263
+ * @param x The candidate payload
264
+ * @returns True if the payload is one indexed by this diviner, false otherwise
265
+ */
266
+ isIndexablePayload = (x) => {
267
+ return this.indexableSchemas.includes(x == null ? void 0 : x.schema);
268
+ };
269
+ /**
270
+ * Identifies if a schema is one that is indexed by this diviner
271
+ * @param schema The candidate schema
272
+ * @returns True if this schema is one indexed by this diviner, false otherwise
273
+ */
274
+ isIndexableSchema = (schema) => {
275
+ return this.indexableSchemas.some((s) => s === schema);
276
+ };
277
+ };
278
+
279
+ // src/IndexQueryResponseToDivinerQueryResponseDiviner/Diviner.ts
280
+ var import_abstract_diviner3 = require("@xyo-network/abstract-diviner");
281
+ var import_diviner_model3 = require("@xyo-network/diviner-model");
282
+ var import_diviner_payload_model2 = require("@xyo-network/diviner-payload-model");
283
+ var import_diviner_temporal_indexing_model3 = require("@xyo-network/diviner-temporal-indexing-model");
284
+ var TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner = class extends import_abstract_diviner3.AbstractDiviner {
285
+ static configSchema = import_diviner_temporal_indexing_model3.TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDivinerConfigSchema;
286
+ static configSchemas = [import_diviner_model3.DivinerConfigSchema, import_diviner_temporal_indexing_model3.TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDivinerConfigSchema];
287
+ static labels = {
288
+ "network.xyo.diviner.stage": "indexQueryResponseToDivinerQueryResponseDiviner"
289
+ };
290
+ async divineHandler(payloads = []) {
291
+ const responses = payloads.filter((p) => !(0, import_diviner_payload_model2.isPayloadDivinerQueryPayload)(p));
292
+ return await Promise.resolve(responses);
293
+ }
294
+ };
295
+
296
+ // src/StateToIndexCandidateDiviner/Diviner.ts
297
+ var import_assert2 = require("@xylabs/assert");
298
+ var import_exists2 = require("@xylabs/exists");
299
+ var import_abstract_diviner4 = require("@xyo-network/abstract-diviner");
300
+ var import_archivist_wrapper = require("@xyo-network/archivist-wrapper");
301
+ var import_boundwitness_model2 = require("@xyo-network/boundwitness-model");
302
+ var import_diviner_boundwitness_model = require("@xyo-network/diviner-boundwitness-model");
303
+ var import_diviner_model4 = require("@xyo-network/diviner-model");
304
+ var import_diviner_temporal_indexing_model4 = require("@xyo-network/diviner-temporal-indexing-model");
305
+ var import_diviner_wrapper = require("@xyo-network/diviner-wrapper");
306
+ var import_module_model = require("@xyo-network/module-model");
307
+ var import_payload_builder4 = require("@xyo-network/payload-builder");
308
+ var import_payload_model2 = require("@xyo-network/payload-model");
309
+ var import_witness_timestamp = require("@xyo-network/witness-timestamp");
310
+ var order = "asc";
311
+ var moduleName2 = "TemporalIndexingDivinerStateToIndexCandidateDiviner";
312
+ var TemporalIndexingDivinerStateToIndexCandidateDiviner = class extends import_abstract_diviner4.AbstractDiviner {
313
+ static configSchema = import_diviner_temporal_indexing_model4.TemporalIndexingDivinerStateToIndexCandidateDivinerConfigSchema;
314
+ static configSchemas = [import_diviner_model4.DivinerConfigSchema, import_diviner_temporal_indexing_model4.TemporalIndexingDivinerStateToIndexCandidateDivinerConfigSchema];
315
+ static labels = {
316
+ "network.xyo.diviner.stage": "stateToIndexCandidateDiviner"
317
+ };
318
+ get payloadDivinerLimit() {
319
+ return this.config.payloadDivinerLimit ?? 1e3;
320
+ }
321
+ /**
322
+ * The required payload_schemas within BoundWitnesses to identify index candidates
323
+ */
324
+ get payload_schemas() {
325
+ var _a;
326
+ const schemas = (_a = this.config.filter) == null ? void 0 : _a.payload_schemas;
327
+ return [import_witness_timestamp.TimestampSchema, ...schemas ?? []];
328
+ }
329
+ async divineHandler(payloads = []) {
330
+ const lastState = payloads.find(import_module_model.isModuleState);
331
+ if (!lastState)
332
+ return [{ schema: import_module_model.ModuleStateSchema, state: { offset: 0 } }];
333
+ const { offset } = lastState.state;
334
+ const boundWitnessDiviner = await this.getBoundWitnessDivinerForStore();
335
+ if (!boundWitnessDiviner)
336
+ return [lastState];
337
+ const query = new import_payload_builder4.PayloadBuilder({ schema: import_diviner_boundwitness_model.BoundWitnessDivinerQuerySchema }).fields({ limit: this.payloadDivinerLimit, offset, order, payload_schemas: this.payload_schemas }).build();
338
+ const batch = await boundWitnessDiviner.divine([query]);
339
+ if (batch.length === 0)
340
+ return [lastState];
341
+ const sourceArchivist = await this.getArchivistForStore();
342
+ if (!sourceArchivist)
343
+ return [lastState];
344
+ const indexCandidates = (await Promise.all(batch.filter(import_boundwitness_model2.isBoundWitness).map((bw) => this.getPayloadsInBoundWitness(bw, sourceArchivist)))).filter(import_exists2.exists).flat();
345
+ const nextState = { schema: import_module_model.ModuleStateSchema, state: { ...lastState.state, offset: offset + batch.length } };
346
+ return [nextState, ...indexCandidates];
347
+ }
348
+ /**
349
+ * Retrieves the archivist for the payloadStore
350
+ * @returns The archivist for the payloadStore or undefined if not resolvable
351
+ */
352
+ async getArchivistForStore() {
353
+ var _a, _b;
354
+ const name = (0, import_assert2.assertEx)((_b = (_a = this.config) == null ? void 0 : _a.payloadStore) == null ? void 0 : _b.archivist, () => `${moduleName2}: Config for payloadStore.archivist not specified`);
355
+ const mod = await this.resolve(name);
356
+ if (!mod)
357
+ return void 0;
358
+ return import_archivist_wrapper.ArchivistWrapper.wrap(mod, this.account);
359
+ }
360
+ /**
361
+ * Retrieves the BoundWitness Diviner for the payloadStore
362
+ * @returns The BoundWitness Diviner for the payloadStore or undefined if not resolvable
363
+ */
364
+ async getBoundWitnessDivinerForStore() {
365
+ var _a, _b;
366
+ const name = (0, import_assert2.assertEx)(
367
+ (_b = (_a = this.config) == null ? void 0 : _a.payloadStore) == null ? void 0 : _b.boundWitnessDiviner,
368
+ () => `${moduleName2}: Config for payloadStore.boundWitnessDiviner not specified`
369
+ );
370
+ const mod = await this.resolve(name);
371
+ if (!mod)
372
+ return void 0;
373
+ return import_diviner_wrapper.DivinerWrapper.wrap(mod, this.account);
374
+ }
375
+ async getPayloadsInBoundWitness(bw, archivist) {
376
+ const indexes = this.payload_schemas.map((schema) => {
377
+ var _a;
378
+ return (_a = bw.payload_schemas) == null ? void 0 : _a.findIndex((s) => s === schema);
379
+ });
380
+ const hashes = indexes.map((index) => {
381
+ var _a;
382
+ return (_a = bw.payload_hashes) == null ? void 0 : _a[index];
383
+ });
384
+ const results = await archivist.get(hashes);
385
+ const indexCandidateIdentityFunctions = this.payload_schemas.map(import_payload_model2.isPayloadOfSchemaType);
386
+ const filteredResults = indexCandidateIdentityFunctions.map((is) => results.find(is));
387
+ if (filteredResults.some((f) => f === void 0))
388
+ return void 0;
389
+ const indexCandidates = filteredResults.filter(import_exists2.exists);
390
+ return [bw, ...indexCandidates];
391
+ }
392
+ };
393
+
394
+ // src/Diviner.ts
395
+ var moduleName3 = "TemporalIndexingDiviner";
31
396
  var TemporalIndexingDiviner = class extends import_diviner_indexing_memory.IndexingDiviner {
32
- static configSchemas = [import_diviner_indexing_model.IndexingDivinerConfigSchema, import_diviner_model.DivinerConfigSchema];
397
+ static configSchema = import_diviner_temporal_indexing_model5.TemporalIndexingDivinerConfigSchema;
398
+ static configSchemas = [import_diviner_temporal_indexing_model5.TemporalIndexingDivinerConfigSchema, import_diviner_indexing_model.IndexingDivinerConfigSchema, import_diviner_model5.DivinerConfigSchema];
33
399
  _divinerQueryToIndexQueryDiviner;
34
400
  _indexCandidateToIndexDiviner;
35
401
  _indexQueryResponseToDivinerQueryResponseDiviner;
36
402
  _stateToIndexCandidateDiviner;
37
- get divinerQueryToIndexQueryDiviner() {
38
- if (this._divinerQueryToIndexQueryDiviner)
39
- return this._divinerQueryToIndexQueryDiviner;
40
- throw new Error("TODO: Create diviner");
41
- }
42
- get indexCandidateToIndexDiviner() {
43
- if (this._indexCandidateToIndexDiviner)
44
- return this._indexCandidateToIndexDiviner;
45
- throw new Error("TODO: Create diviner");
46
- }
47
- get indexQueryResponseToDivinerQueryResponseDiviner() {
48
- if (this._indexQueryResponseToDivinerQueryResponseDiviner)
49
- return this._indexQueryResponseToDivinerQueryResponseDiviner;
50
- throw new Error("TODO: Create diviner");
51
- }
52
- get stateToIndexCandidateDiviner() {
53
- if (this._stateToIndexCandidateDiviner)
54
- return this._stateToIndexCandidateDiviner;
55
- throw new Error("TODO: Create diviner");
56
- }
57
403
  /**
58
404
  * Gets the Diviner for the supplied Indexing Diviner stage
59
405
  * @param transform The Indexing Diviner stage
@@ -62,22 +408,125 @@ var TemporalIndexingDiviner = class extends import_diviner_indexing_memory.Index
62
408
  getIndexingDivinerStage(transform) {
63
409
  switch (transform) {
64
410
  case "divinerQueryToIndexQueryDiviner":
65
- return Promise.resolve(this.divinerQueryToIndexQueryDiviner);
411
+ return this.getDivinerQueryToIndexQueryDiviner();
66
412
  case "indexCandidateToIndexDiviner":
67
- return Promise.resolve(this.indexCandidateToIndexDiviner);
413
+ return this.getIndexCandidateToIndexDiviner();
68
414
  case "indexQueryResponseToDivinerQueryResponseDiviner":
69
- return Promise.resolve(this.indexQueryResponseToDivinerQueryResponseDiviner);
415
+ return this.getIndexQueryResponseToDivinerQueryResponseDiviner();
70
416
  case "stateToIndexCandidateDiviner":
71
- return Promise.resolve(this.stateToIndexCandidateDiviner);
417
+ return this.getStateToIndexCandidateDiviner();
72
418
  }
73
419
  }
74
420
  async startHandler() {
75
421
  await super.startHandler();
76
422
  return true;
77
423
  }
424
+ /**
425
+ * Adds the supplied module to the parent Node of this Diviner
426
+ * @param mod The module to add to the parent Node of this Diviner
427
+ * @returns
428
+ */
429
+ async attachModuleToParentNode(mod) {
430
+ const parent = (await this.resolve({ maxDepth: 1, query: [["network.xyo.query.node.attach"]] })).shift();
431
+ if (parent) {
432
+ const node = (0, import_node_model.asNodeInstance)(parent);
433
+ if (node) {
434
+ await node.register(mod);
435
+ await node.attach(mod.address, false);
436
+ }
437
+ }
438
+ }
439
+ async getDivinerQueryToIndexQueryDiviner() {
440
+ var _a, _b;
441
+ if (!this._divinerQueryToIndexQueryDiviner) {
442
+ const name = (_a = this.config.indexingDivinerStages) == null ? void 0 : _a.divinerQueryToIndexQueryDiviner;
443
+ if (name) {
444
+ this._divinerQueryToIndexQueryDiviner = await this.resolve(name);
445
+ } else {
446
+ const stageConfig = (_b = this.config.stageConfigs) == null ? void 0 : _b.divinerQueryToIndexQueryDiviner;
447
+ if (stageConfig) {
448
+ const config = { schema: import_diviner_temporal_indexing_model5.TemporalIndexingDivinerDivinerQueryToIndexQueryDivinerConfigSchema, ...stageConfig };
449
+ const stage = await TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner.create({ config });
450
+ await this.attachModuleToParentNode(stage);
451
+ this._divinerQueryToIndexQueryDiviner = stage;
452
+ }
453
+ }
454
+ }
455
+ return (0, import_assert3.assertEx)(
456
+ this._divinerQueryToIndexQueryDiviner,
457
+ () => `${moduleName3}: Failed to resolve indexing diviner stage for divinerQueryToIndexQueryDiviner`
458
+ );
459
+ }
460
+ async getIndexCandidateToIndexDiviner() {
461
+ var _a, _b;
462
+ if (!this._indexCandidateToIndexDiviner) {
463
+ const name = (_a = this.config.indexingDivinerStages) == null ? void 0 : _a.indexCandidateToIndexDiviner;
464
+ if (name) {
465
+ this._indexCandidateToIndexDiviner = await this.resolve(name);
466
+ } else {
467
+ const stageConfig = (_b = this.config.stageConfigs) == null ? void 0 : _b.indexCandidateToIndexDiviner;
468
+ if (stageConfig) {
469
+ const config = { schema: import_diviner_temporal_indexing_model5.TemporalIndexingDivinerIndexCandidateToIndexDivinerConfigSchema, ...stageConfig };
470
+ const stage = await TemporalIndexingDivinerIndexCandidateToIndexDiviner.create({ config });
471
+ await this.attachModuleToParentNode(stage);
472
+ this._indexCandidateToIndexDiviner = stage;
473
+ }
474
+ }
475
+ }
476
+ return (0, import_assert3.assertEx)(
477
+ this._indexCandidateToIndexDiviner,
478
+ () => `${moduleName3}: Failed to resolve indexing diviner stage for indexCandidateToIndexDiviner`
479
+ );
480
+ }
481
+ async getIndexQueryResponseToDivinerQueryResponseDiviner() {
482
+ var _a, _b;
483
+ if (!this._indexQueryResponseToDivinerQueryResponseDiviner) {
484
+ const name = (_a = this.config.indexingDivinerStages) == null ? void 0 : _a.indexQueryResponseToDivinerQueryResponseDiviner;
485
+ if (name) {
486
+ this._indexQueryResponseToDivinerQueryResponseDiviner = await this.resolve(name);
487
+ } else {
488
+ const stageConfig = (_b = this.config.stageConfigs) == null ? void 0 : _b.indexQueryResponseToDivinerQueryResponseDiviner;
489
+ if (stageConfig) {
490
+ const config = { schema: import_diviner_temporal_indexing_model5.TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDivinerConfigSchema, ...stageConfig };
491
+ const stage = await TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner.create({ config });
492
+ await this.attachModuleToParentNode(stage);
493
+ this._indexQueryResponseToDivinerQueryResponseDiviner = stage;
494
+ }
495
+ }
496
+ }
497
+ return (0, import_assert3.assertEx)(
498
+ this._indexQueryResponseToDivinerQueryResponseDiviner,
499
+ () => `${moduleName3}: Failed to resolve indexing diviner stage for indexQueryResponseToDivinerQueryResponseDiviner`
500
+ );
501
+ }
502
+ async getStateToIndexCandidateDiviner() {
503
+ var _a, _b;
504
+ if (!this._stateToIndexCandidateDiviner) {
505
+ const name = (_a = this.config.indexingDivinerStages) == null ? void 0 : _a.stateToIndexCandidateDiviner;
506
+ if (name) {
507
+ this._stateToIndexCandidateDiviner = await this.resolve(name);
508
+ } else {
509
+ const stageConfig = (_b = this.config.stageConfigs) == null ? void 0 : _b.stateToIndexCandidateDiviner;
510
+ if (stageConfig) {
511
+ const config = { schema: import_diviner_temporal_indexing_model5.TemporalIndexingDivinerStateToIndexCandidateDivinerConfigSchema, ...stageConfig };
512
+ const stage = await TemporalIndexingDivinerStateToIndexCandidateDiviner.create({ config });
513
+ await this.attachModuleToParentNode(stage);
514
+ this._stateToIndexCandidateDiviner = stage;
515
+ }
516
+ }
517
+ }
518
+ return (0, import_assert3.assertEx)(
519
+ this._stateToIndexCandidateDiviner,
520
+ () => `${moduleName3}: Failed to resolve indexing diviner stage for stateToIndexCandidateDiviner`
521
+ );
522
+ }
78
523
  };
79
524
  // Annotate the CommonJS export names for ESM import in node:
80
525
  0 && (module.exports = {
81
- TemporalIndexingDiviner
526
+ TemporalIndexingDiviner,
527
+ TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner,
528
+ TemporalIndexingDivinerIndexCandidateToIndexDiviner,
529
+ TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner,
530
+ TemporalIndexingDivinerStateToIndexCandidateDiviner
82
531
  });
83
532
  //# sourceMappingURL=index.js.map