@adaas/a-frame 0.0.23 → 0.1.2

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 (672) hide show
  1. package/.conf/tsconfig.browser.json +7 -1
  2. package/.conf/tsconfig.node.json +7 -1
  3. package/dist/browser/A-FrameBrowserStorageBlobs.context-CZTTvpn2.d.mts +53 -0
  4. package/dist/browser/A-FrameBrowserStorageBlobs.context-CaGTyatz.d.mts +40 -0
  5. package/dist/browser/A-FrameBrowserStorageBlobs.context-DjeEH8cn.d.mts +53 -0
  6. package/dist/browser/A-FrameBrowserStorageBlobs.context-vCsuTea9.d.mts +40 -0
  7. package/dist/browser/A-FrameBundle.types-LzfgdMiQ.d.mts +71 -0
  8. package/dist/browser/A-FrameChannel.component-4mTNctXL.d.mts +704 -0
  9. package/dist/browser/A-FrameChannel.types-BXEKJK9t.d.mts +205 -0
  10. package/dist/browser/A-FrameChannel.types-Ba3wgUZj.d.mts +199 -0
  11. package/dist/browser/A-FrameChannel.types-BfINhQZe.d.mts +145 -0
  12. package/dist/browser/A-FrameChannel.types-DfacgYL1.d.mts +199 -0
  13. package/dist/browser/A-FrameCompletion.entity-Dzy9sIa8.d.mts +72 -0
  14. package/dist/browser/A-FrameDefinition.entity-C1aK-gdl.d.mts +370 -0
  15. package/dist/browser/A-FrameDefinition.entity-CKPXsarS.d.mts +358 -0
  16. package/dist/browser/A-FrameDefinition.entity-yA0GsBoe.d.mts +143 -0
  17. package/dist/browser/A-FrameDefinition.types-BT02yAhQ.d.mts +232 -0
  18. package/dist/browser/A-FrameDynamicContentOperation.context-CoViNb19.d.mts +297 -0
  19. package/dist/browser/A-FrameDynamicContentOperation.context-Dd7Lb7X2.d.mts +266 -0
  20. package/dist/browser/A-FrameDynamicPatch.entity-BRuF1tqs.d.mts +29 -0
  21. package/dist/browser/A-FrameDynamicStructure.entity-DMvI_EPT.d.mts +210 -0
  22. package/dist/browser/A-FrameDynamicStructure.entity-DxkPP9mR.d.mts +235 -0
  23. package/dist/browser/A-FrameEnv.types-DnK-CYVk.d.mts +21 -0
  24. package/dist/browser/A-FrameNamespace.entity-BDg1FUgo.d.mts +136 -0
  25. package/dist/browser/A-FrameSchema.entity-DjYIhsoj.d.mts +141 -0
  26. package/dist/browser/A-FrameSegment.entity-D1xjjWvG.d.mts +161 -0
  27. package/dist/browser/A-FrameSegment.entity-D7Aj39Wh.d.mts +146 -0
  28. package/dist/browser/bundle.d.mts +6 -2
  29. package/dist/browser/bundle.mjs +1 -1
  30. package/dist/browser/bundle.mjs.map +1 -1
  31. package/dist/browser/channel.d.mts +51 -74
  32. package/dist/browser/channel.mjs +1 -2
  33. package/dist/browser/channel.mjs.map +1 -1
  34. package/dist/browser/chunk-2RNFZSBL.mjs +2 -0
  35. package/dist/browser/chunk-2RNFZSBL.mjs.map +1 -0
  36. package/dist/browser/chunk-46LRNZRG.mjs +2 -0
  37. package/dist/browser/chunk-46LRNZRG.mjs.map +1 -0
  38. package/dist/browser/chunk-52HFO3OY.mjs +2 -0
  39. package/dist/browser/chunk-52HFO3OY.mjs.map +1 -0
  40. package/dist/browser/chunk-643KGQKR.mjs +3 -0
  41. package/dist/browser/chunk-643KGQKR.mjs.map +1 -0
  42. package/dist/browser/chunk-66BBIZAM.mjs +3 -0
  43. package/dist/browser/chunk-66BBIZAM.mjs.map +1 -0
  44. package/dist/browser/chunk-6NPQURSO.mjs +2 -0
  45. package/dist/browser/chunk-6NPQURSO.mjs.map +1 -0
  46. package/dist/browser/chunk-6WAOMX7M.mjs +2 -0
  47. package/dist/browser/chunk-6WAOMX7M.mjs.map +1 -0
  48. package/dist/browser/chunk-77HU5SRQ.mjs +2 -0
  49. package/dist/browser/chunk-77HU5SRQ.mjs.map +1 -0
  50. package/dist/browser/chunk-AET6XULU.mjs +2 -0
  51. package/dist/browser/chunk-AET6XULU.mjs.map +1 -0
  52. package/dist/browser/chunk-BIBPE2GT.mjs +3 -0
  53. package/dist/browser/chunk-BIBPE2GT.mjs.map +1 -0
  54. package/dist/browser/chunk-CDJKU4DK.mjs +2 -0
  55. package/dist/browser/chunk-CDJKU4DK.mjs.map +1 -0
  56. package/dist/browser/chunk-CT67Y46H.mjs +3 -0
  57. package/dist/browser/chunk-CT67Y46H.mjs.map +1 -0
  58. package/dist/browser/chunk-EFC7OUNO.mjs +2 -0
  59. package/dist/browser/chunk-EFC7OUNO.mjs.map +1 -0
  60. package/dist/browser/chunk-EJIX7H7A.mjs +2 -0
  61. package/dist/browser/chunk-EJIX7H7A.mjs.map +1 -0
  62. package/dist/browser/chunk-FHJ5ATND.mjs +3 -0
  63. package/dist/browser/chunk-FHJ5ATND.mjs.map +1 -0
  64. package/dist/browser/chunk-FVH2EEVP.mjs +3 -0
  65. package/dist/browser/chunk-FVH2EEVP.mjs.map +1 -0
  66. package/dist/browser/chunk-G6ULYKSU.mjs +2 -0
  67. package/dist/browser/chunk-G6ULYKSU.mjs.map +1 -0
  68. package/dist/browser/chunk-G7MKGKG5.mjs +2 -0
  69. package/dist/browser/chunk-G7MKGKG5.mjs.map +1 -0
  70. package/dist/browser/chunk-GOADBDTE.mjs +2 -0
  71. package/dist/browser/chunk-GOADBDTE.mjs.map +1 -0
  72. package/dist/browser/chunk-GOMJPGVB.mjs +3 -0
  73. package/dist/browser/chunk-GOMJPGVB.mjs.map +1 -0
  74. package/dist/browser/chunk-INQV5UZA.mjs +2 -0
  75. package/dist/browser/chunk-INQV5UZA.mjs.map +1 -0
  76. package/dist/browser/chunk-INXPVBTZ.mjs +2 -0
  77. package/dist/browser/chunk-INXPVBTZ.mjs.map +1 -0
  78. package/dist/browser/chunk-KFMVTZ7T.mjs +2 -0
  79. package/dist/browser/chunk-KFMVTZ7T.mjs.map +1 -0
  80. package/dist/browser/chunk-LK6C7C3S.mjs +2 -0
  81. package/dist/browser/chunk-LK6C7C3S.mjs.map +1 -0
  82. package/dist/browser/chunk-LOGRQOWP.mjs +3 -0
  83. package/dist/browser/chunk-LOGRQOWP.mjs.map +1 -0
  84. package/dist/browser/chunk-LZACYSUC.mjs +3 -0
  85. package/dist/browser/chunk-LZACYSUC.mjs.map +1 -0
  86. package/dist/browser/chunk-NTOIVRX3.mjs +2 -0
  87. package/dist/browser/chunk-NTOIVRX3.mjs.map +1 -0
  88. package/dist/browser/chunk-OES2N3X7.mjs +3 -0
  89. package/dist/browser/chunk-OES2N3X7.mjs.map +1 -0
  90. package/dist/browser/chunk-OFKV5GNB.mjs +1 -1
  91. package/dist/browser/chunk-OFKV5GNB.mjs.map +1 -1
  92. package/dist/browser/chunk-OVLM5A32.mjs +3 -0
  93. package/dist/browser/chunk-OVLM5A32.mjs.map +1 -0
  94. package/dist/browser/chunk-QATIN7CO.mjs +1 -1
  95. package/dist/browser/chunk-QATIN7CO.mjs.map +1 -1
  96. package/dist/browser/chunk-QOL7CAUZ.mjs +2 -0
  97. package/dist/browser/chunk-QOL7CAUZ.mjs.map +1 -0
  98. package/dist/browser/chunk-RCB3PX4V.mjs +2 -0
  99. package/dist/browser/chunk-RCB3PX4V.mjs.map +1 -0
  100. package/dist/browser/chunk-RWQSCROK.mjs +3 -0
  101. package/dist/browser/chunk-RWQSCROK.mjs.map +1 -0
  102. package/dist/browser/chunk-TIAUMK2X.mjs +2 -0
  103. package/dist/browser/chunk-TIAUMK2X.mjs.map +1 -0
  104. package/dist/browser/chunk-TQPC5MYM.mjs +3 -0
  105. package/dist/browser/chunk-TQPC5MYM.mjs.map +1 -0
  106. package/dist/browser/chunk-UNIKTCXL.mjs +3 -0
  107. package/dist/browser/chunk-UNIKTCXL.mjs.map +1 -0
  108. package/dist/browser/chunk-UULJJ5C5.mjs +3 -0
  109. package/dist/browser/chunk-UULJJ5C5.mjs.map +1 -0
  110. package/dist/browser/chunk-VSSANMPF.mjs +2 -0
  111. package/dist/browser/chunk-VSSANMPF.mjs.map +1 -0
  112. package/dist/browser/chunk-VW2BZYNY.mjs +2 -0
  113. package/dist/browser/chunk-VW2BZYNY.mjs.map +1 -0
  114. package/dist/browser/chunk-WAXBOWM6.mjs +3 -0
  115. package/dist/browser/chunk-WAXBOWM6.mjs.map +1 -0
  116. package/dist/browser/chunk-WXCQCHAX.mjs +2 -0
  117. package/dist/browser/chunk-WXCQCHAX.mjs.map +1 -0
  118. package/dist/browser/chunk-XKKBIIZG.mjs +3 -0
  119. package/dist/browser/chunk-XKKBIIZG.mjs.map +1 -0
  120. package/dist/browser/chunk-XR7FVA5M.mjs +3 -0
  121. package/dist/browser/chunk-XR7FVA5M.mjs.map +1 -0
  122. package/dist/browser/chunk-YQJFTBGV.mjs +3 -0
  123. package/dist/browser/chunk-YQJFTBGV.mjs.map +1 -0
  124. package/dist/browser/chunk-YTAMZDWC.mjs +3 -0
  125. package/dist/browser/chunk-YTAMZDWC.mjs.map +1 -0
  126. package/dist/browser/chunk-ZEONOTRL.mjs +2 -0
  127. package/dist/browser/chunk-ZEONOTRL.mjs.map +1 -0
  128. package/dist/browser/completion.d.mts +10 -0
  129. package/dist/browser/completion.mjs +2 -0
  130. package/dist/browser/completion.mjs.map +1 -0
  131. package/dist/browser/core.d.mts +8 -7
  132. package/dist/browser/core.mjs +1 -1
  133. package/dist/browser/core.mjs.map +1 -1
  134. package/dist/browser/credentials.d.mts +74 -0
  135. package/dist/browser/credentials.mjs +2 -0
  136. package/dist/browser/credentials.mjs.map +1 -0
  137. package/dist/browser/definition.d.mts +3 -2
  138. package/dist/browser/definition.mjs +1 -1
  139. package/dist/browser/dynamic-content.d.mts +13 -0
  140. package/dist/browser/dynamic-content.mjs +2 -0
  141. package/dist/browser/dynamic-content.mjs.map +1 -0
  142. package/dist/browser/dynamic-feature.d.mts +66 -6
  143. package/dist/browser/dynamic-feature.mjs +3 -1
  144. package/dist/browser/dynamic-feature.mjs.map +1 -1
  145. package/dist/browser/dynamic-structure.d.mts +77 -3
  146. package/dist/browser/dynamic-structure.mjs +1 -1
  147. package/dist/browser/dynamic-structure.mjs.map +1 -1
  148. package/dist/browser/env.d.mts +16 -2
  149. package/dist/browser/env.mjs +1 -1
  150. package/dist/browser/frame-index.d.mts +70 -9
  151. package/dist/browser/frame-index.mjs +1 -1
  152. package/dist/browser/models.d.mts +64 -0
  153. package/dist/browser/models.mjs +2 -0
  154. package/dist/browser/models.mjs.map +1 -0
  155. package/dist/browser/namespace.d.mts +1 -1
  156. package/dist/browser/namespace.mjs +1 -1
  157. package/dist/browser/schema.d.mts +10 -0
  158. package/dist/browser/schema.mjs +2 -0
  159. package/dist/browser/schema.mjs.map +1 -0
  160. package/dist/browser/segment.d.mts +13 -0
  161. package/dist/browser/segment.mjs +2 -0
  162. package/dist/browser/segment.mjs.map +1 -0
  163. package/dist/browser/storage.d.mts +13 -7
  164. package/dist/browser/storage.mjs +1 -1
  165. package/dist/browser/vector.d.mts +7 -0
  166. package/dist/browser/vector.mjs +1 -1
  167. package/dist/cli.cjs +5593 -0
  168. package/dist/cli.cjs.map +1 -0
  169. package/dist/node/A-FrameChannel.component--YErPxf4.d.mts +97 -0
  170. package/dist/node/A-FrameChannel.component-BjgqMh1B.d.ts +97 -0
  171. package/dist/node/A-FrameChannel.component-C0O3TaRD.d.ts +679 -0
  172. package/dist/node/A-FrameChannel.component-CgBZYBz0.d.mts +379 -0
  173. package/dist/node/A-FrameChannel.component-CkZserv3.d.ts +97 -0
  174. package/dist/node/A-FrameChannel.component-DMA-3sUB.d.mts +679 -0
  175. package/dist/node/A-FrameChannel.component-DYV8omYR.d.ts +379 -0
  176. package/dist/node/A-FrameChannel.component-DwgYNfFn.d.mts +97 -0
  177. package/dist/node/A-FrameChannel.types-B3_xWKEO.d.mts +151 -0
  178. package/dist/node/A-FrameChannel.types-BGcVXTqa.d.ts +205 -0
  179. package/dist/node/A-FrameChannel.types-Boi8QqDK.d.mts +205 -0
  180. package/dist/node/A-FrameChannel.types-BsE6bNky.d.mts +205 -0
  181. package/dist/node/A-FrameChannel.types-C-gxXl8m.d.ts +151 -0
  182. package/dist/node/A-FrameChannel.types-DD2B11rf.d.ts +205 -0
  183. package/dist/node/A-FrameChannel.types-DYMgRiCF.d.mts +205 -0
  184. package/dist/node/A-FrameChannel.types-DwyZRsOy.d.ts +205 -0
  185. package/dist/node/A-FrameCompletion.entity-Brx11JMp.d.ts +72 -0
  186. package/dist/node/A-FrameCompletion.entity-Dzy9sIa8.d.mts +72 -0
  187. package/dist/node/A-FrameDefinition.entity-BIF0sclD.d.ts +370 -0
  188. package/dist/node/A-FrameDefinition.entity-Bt9ua6cn.d.ts +358 -0
  189. package/dist/node/A-FrameDefinition.entity-C0kzaGJ0.d.ts +143 -0
  190. package/dist/node/A-FrameDefinition.entity-C1aK-gdl.d.mts +370 -0
  191. package/dist/node/A-FrameDefinition.entity-CKPXsarS.d.mts +358 -0
  192. package/dist/node/A-FrameDefinition.entity-yA0GsBoe.d.mts +143 -0
  193. package/dist/node/A-FrameDefinition.types-BA_pLGpo.d.ts +232 -0
  194. package/dist/node/A-FrameDefinition.types-BT02yAhQ.d.mts +232 -0
  195. package/dist/node/A-FrameDynamicContentOperation.context-C_aH1gEn.d.ts +297 -0
  196. package/dist/node/A-FrameDynamicContentOperation.context-CoViNb19.d.mts +297 -0
  197. package/dist/node/A-FrameDynamicContentOperation.context-DRqH2c3o.d.ts +266 -0
  198. package/dist/node/A-FrameDynamicContentOperation.context-Dd7Lb7X2.d.mts +266 -0
  199. package/dist/node/A-FrameDynamicPatch.entity-BRuF1tqs.d.mts +29 -0
  200. package/dist/node/A-FrameDynamicPatch.entity-BRuF1tqs.d.ts +29 -0
  201. package/dist/node/A-FrameDynamicStructure.entity-BVCbolMd.d.ts +210 -0
  202. package/dist/node/A-FrameDynamicStructure.entity-DMvI_EPT.d.mts +210 -0
  203. package/dist/node/A-FrameDynamicStructure.entity-DxkPP9mR.d.mts +235 -0
  204. package/dist/node/A-FrameDynamicStructure.entity-DxkPP9mR.d.ts +235 -0
  205. package/dist/node/A-FrameLogger.component.env-node-DIDBeuiz.d.mts +114 -0
  206. package/dist/node/A-FrameLogger.component.env-node-DIDBeuiz.d.ts +114 -0
  207. package/dist/node/A-FrameNamespace.entity-BDg1FUgo.d.mts +136 -0
  208. package/dist/node/A-FrameNamespace.entity-HDXcLGcS.d.ts +136 -0
  209. package/dist/node/A-FrameSchema.entity-DjYIhsoj.d.mts +141 -0
  210. package/dist/node/A-FrameSchema.entity-DjYIhsoj.d.ts +141 -0
  211. package/dist/node/A-FrameSegment.entity-C0izuOmC.d.ts +161 -0
  212. package/dist/node/A-FrameSegment.entity-CMCgFCWU.d.ts +146 -0
  213. package/dist/node/A-FrameSegment.entity-D1xjjWvG.d.mts +161 -0
  214. package/dist/node/A-FrameSegment.entity-D7Aj39Wh.d.mts +146 -0
  215. package/dist/node/A-FrameStorage.component-BnNKzvpY.d.mts +107 -0
  216. package/dist/node/A-FrameStorage.component-CDztogHV.d.mts +107 -0
  217. package/dist/node/A-FrameStorage.component-CW0YgKDI.d.mts +107 -0
  218. package/dist/node/A-FrameStorage.component-D4UEkIBx.d.mts +107 -0
  219. package/dist/node/A-FrameStorage.component-DV_jwK6r.d.ts +107 -0
  220. package/dist/node/A-FrameStorage.component-Di4EvbtC.d.ts +107 -0
  221. package/dist/node/A-FrameStorage.component-emIH1a1M.d.ts +107 -0
  222. package/dist/node/A-FrameStorage.component-y-JPiIQ4.d.ts +107 -0
  223. package/dist/node/bundle.cjs +66 -21
  224. package/dist/node/bundle.cjs.map +1 -1
  225. package/dist/node/bundle.d.mts +88 -24
  226. package/dist/node/bundle.d.ts +88 -24
  227. package/dist/node/bundle.mjs +65 -20
  228. package/dist/node/bundle.mjs.map +1 -1
  229. package/dist/node/channel.cjs +33 -26
  230. package/dist/node/channel.d.mts +10 -6
  231. package/dist/node/channel.d.ts +10 -6
  232. package/dist/node/channel.mjs +13 -6
  233. package/dist/node/chunk-2HUSP34L.mjs +55 -0
  234. package/dist/node/chunk-2HUSP34L.mjs.map +1 -0
  235. package/dist/node/chunk-2KXGI2E5.cjs +474 -0
  236. package/dist/node/chunk-2KXGI2E5.cjs.map +1 -0
  237. package/dist/node/chunk-2OQMOIR5.mjs +170 -0
  238. package/dist/node/chunk-2OQMOIR5.mjs.map +1 -0
  239. package/dist/node/chunk-2UI7RJ4Q.mjs +207 -0
  240. package/dist/node/chunk-2UI7RJ4Q.mjs.map +1 -0
  241. package/dist/node/chunk-3SLICJ3L.cjs +265 -0
  242. package/dist/node/chunk-3SLICJ3L.cjs.map +1 -0
  243. package/dist/node/chunk-3ZDHQOIU.cjs +92 -0
  244. package/dist/node/chunk-3ZDHQOIU.cjs.map +1 -0
  245. package/dist/node/chunk-5BKCX2RO.mjs +33 -0
  246. package/dist/node/chunk-5BKCX2RO.mjs.map +1 -0
  247. package/dist/node/chunk-5NCGXLP2.mjs +6 -0
  248. package/dist/node/chunk-5NCGXLP2.mjs.map +1 -0
  249. package/dist/node/chunk-5OTXZ7BB.mjs +53 -0
  250. package/dist/node/chunk-5OTXZ7BB.mjs.map +1 -0
  251. package/dist/node/chunk-5PYIATGT.mjs +469 -0
  252. package/dist/node/chunk-5PYIATGT.mjs.map +1 -0
  253. package/dist/node/chunk-64QCZG53.cjs +57 -0
  254. package/dist/node/chunk-64QCZG53.cjs.map +1 -0
  255. package/dist/node/chunk-652OEICJ.cjs +4 -0
  256. package/dist/node/chunk-652OEICJ.cjs.map +1 -0
  257. package/dist/node/chunk-674ZX6XJ.mjs +187 -0
  258. package/dist/node/chunk-674ZX6XJ.mjs.map +1 -0
  259. package/dist/node/chunk-6ID2IXYX.mjs +6 -0
  260. package/dist/node/chunk-6ID2IXYX.mjs.map +1 -0
  261. package/dist/node/chunk-6KAGWGTE.mjs +529 -0
  262. package/dist/node/chunk-6KAGWGTE.mjs.map +1 -0
  263. package/dist/node/chunk-7EM3Q7HA.mjs +655 -0
  264. package/dist/node/chunk-7EM3Q7HA.mjs.map +1 -0
  265. package/dist/node/chunk-7MVVMISA.cjs +293 -0
  266. package/dist/node/chunk-7MVVMISA.cjs.map +1 -0
  267. package/dist/node/chunk-7NSLGCAZ.mjs +1395 -0
  268. package/dist/node/chunk-7NSLGCAZ.mjs.map +1 -0
  269. package/dist/node/chunk-7OLLATCC.mjs +1289 -0
  270. package/dist/node/chunk-7OLLATCC.mjs.map +1 -0
  271. package/dist/node/chunk-7SEZMRLI.cjs +183 -0
  272. package/dist/node/chunk-7SEZMRLI.cjs.map +1 -0
  273. package/dist/node/chunk-A4CVDMSV.mjs +608 -0
  274. package/dist/node/chunk-A4CVDMSV.mjs.map +1 -0
  275. package/dist/node/chunk-A7CJIUYY.cjs +4 -0
  276. package/dist/node/chunk-A7CJIUYY.cjs.map +1 -0
  277. package/dist/node/chunk-ALFFUJ2J.mjs +163 -0
  278. package/dist/node/chunk-ALFFUJ2J.mjs.map +1 -0
  279. package/dist/node/chunk-AMMQ76RJ.mjs +179 -0
  280. package/dist/node/chunk-AMMQ76RJ.mjs.map +1 -0
  281. package/dist/node/chunk-AUKWKGVA.cjs +688 -0
  282. package/dist/node/chunk-AUKWKGVA.cjs.map +1 -0
  283. package/dist/node/chunk-AY6UMDWD.cjs +270 -0
  284. package/dist/node/chunk-AY6UMDWD.cjs.map +1 -0
  285. package/dist/node/chunk-B7ZDJXD3.cjs +1 -1
  286. package/dist/node/chunk-B7ZDJXD3.cjs.map +1 -1
  287. package/dist/node/chunk-BBYOL3LM.cjs +1308 -0
  288. package/dist/node/chunk-BBYOL3LM.cjs.map +1 -0
  289. package/dist/node/chunk-BINGAHFW.cjs +1308 -0
  290. package/dist/node/chunk-BINGAHFW.cjs.map +1 -0
  291. package/dist/node/chunk-BSBY37MG.cjs +55 -0
  292. package/dist/node/chunk-BSBY37MG.cjs.map +1 -0
  293. package/dist/node/chunk-BWX7HFTH.cjs +209 -0
  294. package/dist/node/chunk-BWX7HFTH.cjs.map +1 -0
  295. package/dist/node/chunk-C37B34MH.cjs +188 -0
  296. package/dist/node/chunk-C37B34MH.cjs.map +1 -0
  297. package/dist/node/chunk-C6BBKHQG.cjs +250 -0
  298. package/dist/node/chunk-C6BBKHQG.cjs.map +1 -0
  299. package/dist/node/chunk-CLCAS67N.cjs +8 -0
  300. package/dist/node/chunk-CLCAS67N.cjs.map +1 -0
  301. package/dist/node/chunk-CNU3CRTR.mjs +43 -0
  302. package/dist/node/chunk-CNU3CRTR.mjs.map +1 -0
  303. package/dist/node/chunk-CV5FPKU6.mjs +6 -0
  304. package/dist/node/chunk-CV5FPKU6.mjs.map +1 -0
  305. package/dist/node/chunk-CZYOAFIR.mjs +129 -0
  306. package/dist/node/chunk-CZYOAFIR.mjs.map +1 -0
  307. package/dist/node/chunk-D2HTYEJZ.cjs +209 -0
  308. package/dist/node/chunk-D2HTYEJZ.cjs.map +1 -0
  309. package/dist/node/chunk-EMLZZPOT.cjs +1446 -0
  310. package/dist/node/chunk-EMLZZPOT.cjs.map +1 -0
  311. package/dist/node/chunk-EOIXXXBV.cjs +55 -0
  312. package/dist/node/chunk-EOIXXXBV.cjs.map +1 -0
  313. package/dist/node/chunk-F46TSY2K.cjs +541 -0
  314. package/dist/node/chunk-F46TSY2K.cjs.map +1 -0
  315. package/dist/node/chunk-F4UCOZW5.mjs +1 -1
  316. package/dist/node/chunk-F4UCOZW5.mjs.map +1 -1
  317. package/dist/node/chunk-F64CK4NI.mjs +53 -0
  318. package/dist/node/chunk-F64CK4NI.mjs.map +1 -0
  319. package/dist/node/chunk-FAV62EUG.cjs +35 -0
  320. package/dist/node/chunk-FAV62EUG.cjs.map +1 -0
  321. package/dist/node/chunk-GHSPKZUN.mjs +529 -0
  322. package/dist/node/chunk-GHSPKZUN.mjs.map +1 -0
  323. package/dist/node/chunk-GRNVK7DW.mjs +97 -0
  324. package/dist/node/chunk-GRNVK7DW.mjs.map +1 -0
  325. package/dist/node/chunk-GRR6NNWY.cjs +688 -0
  326. package/dist/node/chunk-GRR6NNWY.cjs.map +1 -0
  327. package/dist/node/chunk-H5VGRPD5.cjs +8 -0
  328. package/dist/node/chunk-H5VGRPD5.cjs.map +1 -0
  329. package/dist/node/chunk-HAMDDCPS.cjs +8 -0
  330. package/dist/node/chunk-HAMDDCPS.cjs.map +1 -0
  331. package/dist/node/chunk-HAORARSB.cjs +75 -0
  332. package/dist/node/chunk-HAORARSB.cjs.map +1 -0
  333. package/dist/node/chunk-HELNAM5Y.cjs +8 -0
  334. package/dist/node/chunk-HELNAM5Y.cjs.map +1 -0
  335. package/dist/node/chunk-HET6L5PD.mjs +530 -0
  336. package/dist/node/chunk-HET6L5PD.mjs.map +1 -0
  337. package/dist/node/chunk-HI5SEX53.mjs +264 -0
  338. package/dist/node/chunk-HI5SEX53.mjs.map +1 -0
  339. package/dist/node/chunk-HZGFXE4Q.mjs +6 -0
  340. package/dist/node/chunk-HZGFXE4Q.mjs.map +1 -0
  341. package/dist/node/chunk-IAL2NK2V.mjs +73 -0
  342. package/dist/node/chunk-IAL2NK2V.mjs.map +1 -0
  343. package/dist/node/chunk-IHELFDCW.mjs +327 -0
  344. package/dist/node/chunk-IHELFDCW.mjs.map +1 -0
  345. package/dist/node/chunk-ILD6OSYW.mjs +966 -0
  346. package/dist/node/chunk-ILD6OSYW.mjs.map +1 -0
  347. package/dist/node/chunk-IP6DFAO7.mjs +264 -0
  348. package/dist/node/chunk-IP6DFAO7.mjs.map +1 -0
  349. package/dist/node/chunk-IYEDO7OQ.cjs +276 -0
  350. package/dist/node/chunk-IYEDO7OQ.cjs.map +1 -0
  351. package/dist/node/chunk-JFPGFPQD.mjs +1413 -0
  352. package/dist/node/chunk-JFPGFPQD.mjs.map +1 -0
  353. package/dist/node/chunk-JHZGTVYF.cjs +999 -0
  354. package/dist/node/chunk-JHZGTVYF.cjs.map +1 -0
  355. package/dist/node/chunk-JN3UJBUH.mjs +608 -0
  356. package/dist/node/chunk-JN3UJBUH.mjs.map +1 -0
  357. package/dist/node/chunk-JNPDXCCN.mjs +530 -0
  358. package/dist/node/chunk-JNPDXCCN.mjs.map +1 -0
  359. package/dist/node/chunk-JQBYDEMW.mjs +1 -1
  360. package/dist/node/chunk-JQBYDEMW.mjs.map +1 -1
  361. package/dist/node/chunk-JQJ7N4NL.cjs +267 -0
  362. package/dist/node/chunk-JQJ7N4NL.cjs.map +1 -0
  363. package/dist/node/chunk-K4AJBPPY.cjs +174 -0
  364. package/dist/node/chunk-K4AJBPPY.cjs.map +1 -0
  365. package/dist/node/chunk-K7SXPJPK.cjs +131 -0
  366. package/dist/node/chunk-K7SXPJPK.cjs.map +1 -0
  367. package/dist/node/chunk-KFW4GE7H.mjs +1289 -0
  368. package/dist/node/chunk-KFW4GE7H.mjs.map +1 -0
  369. package/dist/node/chunk-KKL2DF2D.cjs +518 -0
  370. package/dist/node/chunk-KKL2DF2D.cjs.map +1 -0
  371. package/dist/node/chunk-KKMKQGTR.cjs +620 -0
  372. package/dist/node/chunk-KKMKQGTR.cjs.map +1 -0
  373. package/dist/node/chunk-KNTO7FCZ.mjs +207 -0
  374. package/dist/node/chunk-KNTO7FCZ.mjs.map +1 -0
  375. package/dist/node/chunk-KTKVW3PH.mjs +286 -0
  376. package/dist/node/chunk-KTKVW3PH.mjs.map +1 -0
  377. package/dist/node/chunk-KZPSF32W.mjs +33 -0
  378. package/dist/node/chunk-KZPSF32W.mjs.map +1 -0
  379. package/dist/node/chunk-LWKFCMA7.mjs +129 -0
  380. package/dist/node/chunk-LWKFCMA7.mjs.map +1 -0
  381. package/dist/node/chunk-M2ZSE6YJ.mjs +512 -0
  382. package/dist/node/chunk-M2ZSE6YJ.mjs.map +1 -0
  383. package/dist/node/chunk-M6DJYGDO.cjs +167 -0
  384. package/dist/node/chunk-M6DJYGDO.cjs.map +1 -0
  385. package/dist/node/chunk-MAHKDTOQ.mjs +3 -0
  386. package/dist/node/chunk-MAHKDTOQ.mjs.map +1 -0
  387. package/dist/node/chunk-MM2R2OM6.cjs +541 -0
  388. package/dist/node/chunk-MM2R2OM6.cjs.map +1 -0
  389. package/dist/node/chunk-MSOD5UQH.cjs +45 -0
  390. package/dist/node/chunk-MSOD5UQH.cjs.map +1 -0
  391. package/dist/node/chunk-MVAWR76Q.cjs +276 -0
  392. package/dist/node/chunk-MVAWR76Q.cjs.map +1 -0
  393. package/dist/node/chunk-MXUO7OR5.cjs +97 -0
  394. package/dist/node/chunk-MXUO7OR5.cjs.map +1 -0
  395. package/dist/node/chunk-N4THTV6P.cjs +131 -0
  396. package/dist/node/chunk-N4THTV6P.cjs.map +1 -0
  397. package/dist/node/chunk-NIXKAQVP.cjs +1 -1
  398. package/dist/node/chunk-NIXKAQVP.cjs.map +1 -1
  399. package/dist/node/chunk-NUPXUUPM.cjs +1428 -0
  400. package/dist/node/chunk-NUPXUUPM.cjs.map +1 -0
  401. package/dist/node/chunk-NWOUVAIS.cjs +45 -0
  402. package/dist/node/chunk-NWOUVAIS.cjs.map +1 -0
  403. package/dist/node/chunk-OK7I5OQ3.mjs +89 -0
  404. package/dist/node/chunk-OK7I5OQ3.mjs.map +1 -0
  405. package/dist/node/chunk-OMGYXCFM.mjs +248 -0
  406. package/dist/node/chunk-OMGYXCFM.mjs.map +1 -0
  407. package/dist/node/chunk-OYC6L5NX.mjs +6 -0
  408. package/dist/node/chunk-OYC6L5NX.mjs.map +1 -0
  409. package/dist/node/chunk-OYZAQMKD.mjs +263 -0
  410. package/dist/node/chunk-OYZAQMKD.mjs.map +1 -0
  411. package/dist/node/chunk-P2LULMNL.cjs +189 -0
  412. package/dist/node/chunk-P2LULMNL.cjs.map +1 -0
  413. package/dist/node/chunk-PABEFHCO.mjs +63 -0
  414. package/dist/node/chunk-PABEFHCO.mjs.map +1 -0
  415. package/dist/node/chunk-Q5NYJQP2.cjs +8 -0
  416. package/dist/node/chunk-Q5NYJQP2.cjs.map +1 -0
  417. package/dist/node/chunk-QCEWWJ3N.cjs +65 -0
  418. package/dist/node/chunk-QCEWWJ3N.cjs.map +1 -0
  419. package/dist/node/chunk-QW4AZ3Z2.cjs +542 -0
  420. package/dist/node/chunk-QW4AZ3Z2.cjs.map +1 -0
  421. package/dist/node/chunk-R2H234YO.cjs +8 -0
  422. package/dist/node/chunk-R2H234YO.cjs.map +1 -0
  423. package/dist/node/chunk-RK5WSZ5J.mjs +43 -0
  424. package/dist/node/chunk-RK5WSZ5J.mjs.map +1 -0
  425. package/dist/node/chunk-RPHYBPXT.mjs +30 -0
  426. package/dist/node/chunk-RPHYBPXT.mjs.map +1 -0
  427. package/dist/node/chunk-RVXASBMQ.mjs +273 -0
  428. package/dist/node/chunk-RVXASBMQ.mjs.map +1 -0
  429. package/dist/node/chunk-RVZTZD32.mjs +187 -0
  430. package/dist/node/chunk-RVZTZD32.mjs.map +1 -0
  431. package/dist/node/chunk-RWLKISZQ.mjs +273 -0
  432. package/dist/node/chunk-RWLKISZQ.mjs.map +1 -0
  433. package/dist/node/chunk-SDKIJDMH.mjs +655 -0
  434. package/dist/node/chunk-SDKIJDMH.mjs.map +1 -0
  435. package/dist/node/chunk-SESXQJDD.cjs +999 -0
  436. package/dist/node/chunk-SESXQJDD.cjs.map +1 -0
  437. package/dist/node/chunk-SKIEPTFS.mjs +6 -0
  438. package/dist/node/chunk-SKIEPTFS.mjs.map +1 -0
  439. package/dist/node/chunk-SL7FT5R5.mjs +94 -0
  440. package/dist/node/chunk-SL7FT5R5.mjs.map +1 -0
  441. package/dist/node/chunk-SXHQW74T.mjs +43 -0
  442. package/dist/node/chunk-SXHQW74T.mjs.map +1 -0
  443. package/dist/node/chunk-TEJKDVNT.cjs +620 -0
  444. package/dist/node/chunk-TEJKDVNT.cjs.map +1 -0
  445. package/dist/node/chunk-TQS5WYND.cjs +352 -0
  446. package/dist/node/chunk-TQS5WYND.cjs.map +1 -0
  447. package/dist/node/chunk-UCAWV2IG.mjs +184 -0
  448. package/dist/node/chunk-UCAWV2IG.mjs.map +1 -0
  449. package/dist/node/chunk-UDUJDEAO.cjs +189 -0
  450. package/dist/node/chunk-UDUJDEAO.cjs.map +1 -0
  451. package/dist/node/chunk-VMJDL4SS.cjs +542 -0
  452. package/dist/node/chunk-VMJDL4SS.cjs.map +1 -0
  453. package/dist/node/chunk-VNOZTB3B.cjs +8 -0
  454. package/dist/node/chunk-VNOZTB3B.cjs.map +1 -0
  455. package/dist/node/chunk-VPMBZGYR.mjs +327 -0
  456. package/dist/node/chunk-VPMBZGYR.mjs.map +1 -0
  457. package/dist/node/chunk-WEPNBKOA.mjs +6 -0
  458. package/dist/node/chunk-WEPNBKOA.mjs.map +1 -0
  459. package/dist/node/chunk-WTBRJXFG.cjs +100 -0
  460. package/dist/node/chunk-WTBRJXFG.cjs.map +1 -0
  461. package/dist/node/chunk-WXCQCHAX.mjs +3 -0
  462. package/dist/node/chunk-WXCQCHAX.mjs.map +1 -0
  463. package/dist/node/chunk-X3TRPYGV.cjs +352 -0
  464. package/dist/node/chunk-X3TRPYGV.cjs.map +1 -0
  465. package/dist/node/chunk-XFUF7SDO.cjs +35 -0
  466. package/dist/node/chunk-XFUF7SDO.cjs.map +1 -0
  467. package/dist/node/chunk-XP2EPEBM.mjs +966 -0
  468. package/dist/node/chunk-XP2EPEBM.mjs.map +1 -0
  469. package/dist/node/chunk-XPIJ6BKP.cjs +45 -0
  470. package/dist/node/chunk-XPIJ6BKP.cjs.map +1 -0
  471. package/dist/node/chunk-YRVBMP7I.cjs +542 -0
  472. package/dist/node/chunk-YRVBMP7I.cjs.map +1 -0
  473. package/dist/node/chunk-ZIHSN5EE.mjs +530 -0
  474. package/dist/node/chunk-ZIHSN5EE.mjs.map +1 -0
  475. package/dist/node/chunk-ZNQMUU7I.cjs +32 -0
  476. package/dist/node/chunk-ZNQMUU7I.cjs.map +1 -0
  477. package/dist/node/completion.cjs +23 -0
  478. package/dist/node/completion.cjs.map +1 -0
  479. package/dist/node/completion.d.mts +10 -0
  480. package/dist/node/completion.d.ts +10 -0
  481. package/dist/node/completion.mjs +6 -0
  482. package/dist/node/completion.mjs.map +1 -0
  483. package/dist/node/core.cjs +69 -42
  484. package/dist/node/core.cjs.map +1 -1
  485. package/dist/node/core.d.mts +14 -9
  486. package/dist/node/core.d.ts +14 -9
  487. package/dist/node/core.mjs +60 -33
  488. package/dist/node/core.mjs.map +1 -1
  489. package/dist/node/credentials.cjs +17 -0
  490. package/dist/node/credentials.cjs.map +1 -0
  491. package/dist/node/credentials.d.mts +74 -0
  492. package/dist/node/credentials.d.ts +74 -0
  493. package/dist/node/credentials.mjs +4 -0
  494. package/dist/node/credentials.mjs.map +1 -0
  495. package/dist/node/definition.cjs +6 -4
  496. package/dist/node/definition.d.mts +3 -2
  497. package/dist/node/definition.d.ts +3 -2
  498. package/dist/node/definition.mjs +4 -2
  499. package/dist/node/dynamic-content.cjs +30 -0
  500. package/dist/node/dynamic-content.cjs.map +1 -0
  501. package/dist/node/dynamic-content.d.mts +13 -0
  502. package/dist/node/dynamic-content.d.ts +13 -0
  503. package/dist/node/dynamic-content.mjs +9 -0
  504. package/dist/node/dynamic-content.mjs.map +1 -0
  505. package/dist/node/dynamic-feature.cjs +41 -7
  506. package/dist/node/dynamic-feature.cjs.map +1 -1
  507. package/dist/node/dynamic-feature.d.mts +66 -6
  508. package/dist/node/dynamic-feature.d.ts +66 -6
  509. package/dist/node/dynamic-feature.mjs +16 -9
  510. package/dist/node/dynamic-feature.mjs.map +1 -1
  511. package/dist/node/dynamic-structure.cjs +45 -136
  512. package/dist/node/dynamic-structure.cjs.map +1 -1
  513. package/dist/node/dynamic-structure.d.mts +77 -3
  514. package/dist/node/dynamic-structure.d.ts +77 -3
  515. package/dist/node/dynamic-structure.mjs +16 -135
  516. package/dist/node/dynamic-structure.mjs.map +1 -1
  517. package/dist/node/env.cjs +3 -3
  518. package/dist/node/env.d.mts +26 -0
  519. package/dist/node/env.d.ts +26 -0
  520. package/dist/node/env.mjs +2 -2
  521. package/dist/node/frame-index.cjs +7 -4
  522. package/dist/node/frame-index.d.mts +70 -9
  523. package/dist/node/frame-index.d.ts +70 -9
  524. package/dist/node/frame-index.mjs +6 -3
  525. package/dist/node/logger.d.mts +4 -113
  526. package/dist/node/logger.d.ts +4 -113
  527. package/dist/node/models.cjs +14 -0
  528. package/dist/node/models.cjs.map +1 -0
  529. package/dist/node/models.d.mts +64 -0
  530. package/dist/node/models.d.ts +64 -0
  531. package/dist/node/models.mjs +5 -0
  532. package/dist/node/models.mjs.map +1 -0
  533. package/dist/node/namespace.cjs +7 -5
  534. package/dist/node/namespace.d.mts +1 -1
  535. package/dist/node/namespace.d.ts +1 -1
  536. package/dist/node/namespace.mjs +4 -2
  537. package/dist/node/schema.cjs +22 -0
  538. package/dist/node/schema.cjs.map +1 -0
  539. package/dist/node/schema.d.mts +10 -0
  540. package/dist/node/schema.d.ts +10 -0
  541. package/dist/node/schema.mjs +5 -0
  542. package/dist/node/schema.mjs.map +1 -0
  543. package/dist/node/segment.cjs +25 -0
  544. package/dist/node/segment.cjs.map +1 -0
  545. package/dist/node/segment.d.mts +13 -0
  546. package/dist/node/segment.d.ts +13 -0
  547. package/dist/node/segment.mjs +8 -0
  548. package/dist/node/segment.mjs.map +1 -0
  549. package/dist/node/storage.cjs +17 -14
  550. package/dist/node/storage.d.mts +18 -6
  551. package/dist/node/storage.d.ts +18 -6
  552. package/dist/node/storage.mjs +11 -8
  553. package/dist/node/vector.cjs +2 -2
  554. package/dist/node/vector.d.mts +7 -0
  555. package/dist/node/vector.d.ts +7 -0
  556. package/dist/node/vector.mjs +1 -1
  557. package/examples/article/main.ts +358 -0
  558. package/examples/components.ts +660 -0
  559. package/examples/feature/file-system.components.ts +211 -0
  560. package/examples/feature/main.ts +374 -0
  561. package/examples/interaction/main.ts +426 -0
  562. package/examples/logger.ts +126 -0
  563. package/examples/structure/main.ts +195 -0
  564. package/examples/structure/renderer.ts +296 -0
  565. package/examples/structure/server-app.components.ts +387 -0
  566. package/jest.config.browser.ts +9 -0
  567. package/jest.config.examples.ts +49 -0
  568. package/jest.config.integration.ts +38 -0
  569. package/jest.config.ts +56 -27
  570. package/jest.config.unit.ts +38 -0
  571. package/package.json +75 -7
  572. package/src/index.ts +13 -0
  573. package/src/lib/A-Frame/A-Frame.component.env-browser.ts +19 -6
  574. package/src/lib/A-Frame/A-Frame.component.env-node.ts +48 -19
  575. package/src/lib/A-Frame/A-Frame.context.ts +9 -8
  576. package/src/lib/A-Frame/decorators/A-FrameDefine.decorator.ts +4 -4
  577. package/src/lib/A-FrameBundle/A-FrameBundle.builder.env-node.ts +95 -25
  578. package/src/lib/A-FrameBundle/A-FrameBundle.constants.ts +1 -1
  579. package/src/lib/A-FrameBundle/A-FrameBundle.types.ts +54 -13
  580. package/src/lib/A-FrameBundle/index.browser.ts +1 -1
  581. package/src/lib/A-FrameBundle/index.ts +1 -1
  582. package/src/lib/A-FrameCLI/A-FrameCLI.container.ts +18 -7
  583. package/src/lib/A-FrameChannel/A-FrameChannel.component.env-browser.ts +0 -2
  584. package/src/lib/A-FrameChannel/A-FrameChannel.component.env-node.ts +14 -15
  585. package/src/lib/A-FrameChannel/A-FrameChannel.component.ts +542 -7
  586. package/src/lib/A-FrameChannel/A-FrameChannel.constants.ts +2 -0
  587. package/src/lib/A-FrameChannel/A-FrameChannel.types.ts +65 -1
  588. package/src/lib/A-FrameChannel/A-FrameChannelDsgStream.entity.ts +112 -0
  589. package/src/lib/A-FrameChannel/A-FrameChannelStream.entity.ts +1 -0
  590. package/src/lib/A-FrameChannel/index.browser.ts +5 -0
  591. package/src/lib/A-FrameCompletion/A-FrameCompletion.constants.ts +3 -0
  592. package/src/lib/A-FrameCompletion/A-FrameCompletion.entity.ts +128 -0
  593. package/src/lib/A-FrameCompletion/A-FrameCompletion.types.ts +40 -0
  594. package/src/lib/A-FrameCompletion/index.ts +3 -0
  595. package/src/lib/A-FrameCredentials/A-FrameCredentials.constants.ts +5 -0
  596. package/src/lib/A-FrameCredentials/A-FrameCredentials.entity.ts +120 -0
  597. package/src/lib/A-FrameCredentials/A-FrameCredentials.types.ts +39 -0
  598. package/src/lib/A-FrameCredentials/index.ts +3 -0
  599. package/src/lib/A-FrameDefinition/A-FrameDefinition.entity.ts +23 -1
  600. package/src/lib/A-FrameDefinition/A-FrameDefinition.types.ts +34 -1
  601. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.constants.ts +5 -0
  602. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.entity.ts +348 -0
  603. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.error.ts +10 -0
  604. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.types.ts +116 -0
  605. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContentIndex.context.ts +288 -0
  606. package/src/lib/A-FrameDynamicContent/A-FrameDynamicContentOperation.context.ts +26 -0
  607. package/src/lib/A-FrameDynamicContent/index.ts +5 -0
  608. package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.constants.ts +6 -0
  609. package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.entity.ts +253 -4
  610. package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.error.ts +11 -0
  611. package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.types.ts +188 -4
  612. package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeatureOperation.context.ts +33 -0
  613. package/src/lib/A-FrameDynamicFeature/A-FrameMethodMapIndex.context.ts +99 -0
  614. package/src/lib/A-FrameDynamicFeature/A-FrameMethodMapper.component.ts +182 -0
  615. package/src/lib/A-FrameDynamicFeature/index.ts +6 -1
  616. package/src/lib/A-FrameDynamicPatch/index.ts +2 -0
  617. package/src/lib/A-FrameDynamicStructure/A-FrameComponentMapIndex.context.ts +99 -0
  618. package/src/lib/A-FrameDynamicStructure/A-FrameComponentMapper.component.ts +320 -0
  619. package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.constants.ts +2 -1
  620. package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.entity.ts +240 -128
  621. package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.types.ts +183 -87
  622. package/src/lib/A-FrameDynamicStructure/index.ts +3 -0
  623. package/src/lib/A-FrameEnv/A-FrameEnv.fragment.env-browser.ts +5 -1
  624. package/src/lib/A-FrameEnv/A-FrameEnv.fragment.env-node.ts +23 -1
  625. package/src/lib/A-FrameEnv/A-FrameEnv.types.ts +12 -0
  626. package/src/lib/A-FrameIndex/A-FrameIndex.context.ts +63 -13
  627. package/src/lib/A-FrameIndex/A-FrameIndex.types.ts +53 -0
  628. package/src/lib/A-FrameModels/A-FrameModels.constants.ts +75 -0
  629. package/src/lib/A-FrameModels/index.ts +1 -0
  630. package/src/lib/A-FrameNamespace/A-FrameNamespace.entity.ts +10 -3
  631. package/src/lib/A-FrameNamespace/A-FrameNamespace.types.ts +5 -0
  632. package/src/lib/A-FrameSchema/A-FrameSchema.constants.ts +4 -0
  633. package/src/lib/A-FrameSchema/A-FrameSchema.entity.ts +154 -0
  634. package/src/lib/A-FrameSchema/A-FrameSchema.types.ts +88 -0
  635. package/src/lib/A-FrameSchema/index.ts +3 -0
  636. package/src/lib/A-FrameSegment/A-FrameSegment.constants.ts +12 -0
  637. package/src/lib/A-FrameSegment/A-FrameSegment.entity.ts +221 -0
  638. package/src/lib/A-FrameSegment/A-FrameSegment.types.ts +91 -0
  639. package/src/lib/A-FrameSegment/index.ts +3 -0
  640. package/src/lib/A-FrameStorage/A-FrameStorage.codec.ts +10 -4
  641. package/src/lib/A-FrameStorage/browser/A-FrameBrowserStorage.component.ts +21 -0
  642. package/src/lib/A-FrameStorage/browser/A-FrameBrowserStorageBlobs.context.ts +39 -21
  643. package/src/lib/A-FrameStorage/node/A-FrameNodeStorage.component.ts +124 -42
  644. package/src/lib/A-FrameVector/A-FrameVector.entity.ts +24 -0
  645. package/tests/A-Frame.browser.test.ts +167 -57
  646. package/tests/A-FrameDynamicContent.browser.test.ts +74 -0
  647. package/tests/integration/A-Frame.integration.test.ts +272 -0
  648. package/tests/integration/A-FrameCompletion.integration.test.ts +88 -0
  649. package/tests/integration/A-FrameContentMapping.integration.test.ts +261 -0
  650. package/tests/integration/A-FrameDefinition.integration.test.ts +154 -0
  651. package/tests/integration/A-FrameDynamicContent.integration.test.ts +126 -0
  652. package/tests/integration/A-FrameDynamicFeature.integration.test.ts +337 -0
  653. package/tests/integration/A-FrameDynamicStructure.integration.test.ts +264 -0
  654. package/tests/integration/A-FrameNamespace.integration.test.ts +109 -0
  655. package/tests/integration/A-FrameSchema.integration.test.ts +74 -0
  656. package/tests/integration/A-FrameSegment.integration.test.ts +102 -0
  657. package/tests/integration/A-FrameStorage.integration.test.ts +598 -0
  658. package/tests/jest.setup.browser.ts +1 -1
  659. package/tests/jest.setup.ts +4 -0
  660. package/tests/jest.setup.unit.ts +30 -0
  661. package/tests/unit/A-FrameChannel.unit.test.ts +124 -0
  662. package/tests/unit/A-FrameCompletion.unit.test.ts +25 -0
  663. package/tests/unit/A-FrameDefinition.unit.test.ts +36 -0
  664. package/tests/unit/A-FrameDynamicContent.unit.test.ts +28 -0
  665. package/tests/unit/A-FrameNamespace.unit.test.ts +35 -0
  666. package/tests/unit/A-FrameSchema.unit.test.ts +31 -0
  667. package/tests/unit/A-FrameSegment.unit.test.ts +20 -0
  668. package/tests/unit/mocks/MockA_FrameChannel.ts +112 -0
  669. package/tsconfig.browser.json +2 -0
  670. package/tsconfig.json +6 -0
  671. package/tsup.config.ts +52 -0
  672. package/tests/A-Frame.test.ts +0 -96
@@ -0,0 +1,170 @@
1
+ import { A_FrameHashHelper } from './chunk-442DXGOD.mjs';
2
+ import { A_FrameVector } from './chunk-PABEFHCO.mjs';
3
+ import { A_Entity, A_FormatterHelper } from '@adaas/a-concept';
4
+
5
+ // src/lib/A-FrameNamespace/A-FrameNamespace.constants.ts
6
+ var A_FRAME_DEFAULT_NAMESPACE_KEY = "default";
7
+ var A_FrameNamespaceFeatures = {
8
+ Load: "_A_FRAME_NAMESPACE_LOAD",
9
+ Save: "_A_FRAME_NAMESPACE_SAVE",
10
+ Embed: "_A_FRAME_NAMESPACE_EMBED",
11
+ Destroy: "_A_FRAME_NAMESPACE_DESTROY"
12
+ };
13
+ var A_FrameNamespace = class extends A_Entity {
14
+ static get concept() {
15
+ return "a-frame";
16
+ }
17
+ // ─── Getters ──────────────────────────────────────────────────────────────
18
+ get id() {
19
+ return this.aseid.id;
20
+ }
21
+ get name() {
22
+ return this._name;
23
+ }
24
+ get hash() {
25
+ return this._hash;
26
+ }
27
+ get description() {
28
+ return this._description;
29
+ }
30
+ get metadata() {
31
+ return this._metadata || {};
32
+ }
33
+ get vector() {
34
+ return this._vector;
35
+ }
36
+ get embedding() {
37
+ return this._vector?.values ?? null;
38
+ }
39
+ //-----------------------------------------------------------------------------------------------------
40
+ //--------------------------------------- Computed properties -----------------------------------------
41
+ //-----------------------------------------------------------------------------------------------------
42
+ get aFrameServerVersion() {
43
+ return this._aFrameServerVersion;
44
+ }
45
+ get aFrameVersion() {
46
+ return this._aFrameVersion;
47
+ }
48
+ get isEmbed() {
49
+ return this._vector !== void 0;
50
+ }
51
+ /**
52
+ * Saves Namespace to storage. The actual implementation of saving is handled by the A_FrameNamespaceFeatures.Save feature, which can be implemented by the environment to persist the definition to a database, file system, or other storage mechanism.
53
+ *
54
+ * @param scope
55
+ * @returns
56
+ */
57
+ save(scope) {
58
+ return this.call(A_FrameNamespaceFeatures.Save, scope);
59
+ }
60
+ /**
61
+ * Deletes the namespace from storage. The actual implementation of deletion is handled by the A_FrameNamespaceFeatures.Destroy feature, which can be implemented by the environment to remove the namespace from the database, file system, or other storage mechanism.
62
+ *
63
+ * @param scope
64
+ * @returns
65
+ */
66
+ destroy(scope) {
67
+ return this.call(A_FrameNamespaceFeatures.Destroy, scope);
68
+ }
69
+ /**
70
+ * Loads the namespace from storage. The actual implementation of loading is handled by the A_FrameNamespaceFeatures.Load feature, which can be implemented by the environment to retrieve the namespace from the database, file system, or other storage mechanism and populate the entity's properties accordingly.
71
+ *
72
+ * @param scope
73
+ * @returns
74
+ */
75
+ async load(scope) {
76
+ return this.call(A_FrameNamespaceFeatures.Load, scope);
77
+ }
78
+ /**
79
+ * Updates the definition's properties. This can be used to modify the source code, description, metadata, or namespace of the definition. After updating, you may want to call `embed()` again to refresh the embedding based on the new content.
80
+ *
81
+ * @param updates
82
+ */
83
+ update(updates) {
84
+ if (updates.name) this._name = updates.name;
85
+ if (updates.description !== void 0) this._description = updates.description;
86
+ if (updates.metadata !== void 0) this._metadata = updates.metadata;
87
+ }
88
+ /**
89
+ * Generates an embedding vector for the namespace using the A_FrameNamespaceFeatures.Embed feature. This typically involves sending the namespace's content (name + description) to an embedding model and storing the resulting vector in the entity. Once embedded, the namespace can be searched using its vector representation.
90
+ *
91
+ * @param scope
92
+ * @returns
93
+ */
94
+ embed(scope) {
95
+ console.log(`Embedding namespace "${this._name}"...`);
96
+ return this.call(A_FrameNamespaceFeatures.Embed, scope);
97
+ }
98
+ // ─── A_Entity lifecycle ───────────────────────────────────────────────────
99
+ fromNew(init) {
100
+ this.aseid = this.generateASEID({
101
+ id: A_FormatterHelper.toKebabCase(init.name),
102
+ scope: "a-frame"
103
+ });
104
+ this._name = init.name;
105
+ const hashSource = this._name + (init.description || "") + (init.metadata ? JSON.stringify(init.metadata) : "");
106
+ this._hash = A_FrameHashHelper.fnv1a(hashSource);
107
+ this._description = init.description;
108
+ this._metadata = init.metadata;
109
+ }
110
+ fromJSON(serialized) {
111
+ this._name = serialized.name;
112
+ this._hash = serialized.hash;
113
+ this._description = serialized.description;
114
+ this._metadata = serialized.metadata;
115
+ this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : void 0;
116
+ this._embeddedAt = serialized.embeddedAt;
117
+ this._embeddingModel = serialized.embeddingModel;
118
+ this._credentialId = serialized.credentialId;
119
+ this._aFrameVersion = serialized.aFrameVersion;
120
+ this._aFrameServerVersion = serialized.aFrameServerVersion;
121
+ }
122
+ toJSON() {
123
+ return {
124
+ ...super.toJSON(),
125
+ hash: this._hash,
126
+ name: this._name,
127
+ description: this._description,
128
+ metadata: this._metadata,
129
+ embedding: this._vector?.values,
130
+ embeddedAt: this._embeddedAt ?? Date.now(),
131
+ embeddingModel: this._embeddingModel,
132
+ credentialId: this._credentialId,
133
+ aFrameVersion: this._aFrameVersion,
134
+ aFrameServerVersion: this._aFrameServerVersion
135
+ };
136
+ }
137
+ // ─── Embedding hydration ──────────────────────────────────────────────────
138
+ hydrateFromRecord(record) {
139
+ if (record.hash !== this._hash) {
140
+ throw new Error(
141
+ `A_FrameNamespace.hydrateFromRecord: hash mismatch for "${this._name}" (expected ${this._hash}, got ${record.hash})`
142
+ );
143
+ }
144
+ this._vector = new A_FrameVector(record.embedding);
145
+ this._embeddedAt = record.embeddedAt;
146
+ }
147
+ hydrateFromEmbedding(embedding, meta) {
148
+ this._vector = new A_FrameVector(embedding);
149
+ this._embeddedAt = Date.now();
150
+ if (meta) {
151
+ this._embeddingModel = meta.model;
152
+ this._credentialId = meta.credentialId ?? void 0;
153
+ this._aFrameVersion = meta.aFrameVersion;
154
+ this._aFrameServerVersion = meta.aFrameServerVersion;
155
+ }
156
+ }
157
+ /**
158
+ * Build the text string sent to the embedding model.
159
+ * Uses name + description so the vector captures semantic intent.
160
+ */
161
+ toString() {
162
+ const parts = [`// namespace: ${this._name}`];
163
+ if (this._description) parts.push(`// ${this._description}`);
164
+ return parts.join("\n");
165
+ }
166
+ };
167
+
168
+ export { A_FRAME_DEFAULT_NAMESPACE_KEY, A_FrameNamespace, A_FrameNamespaceFeatures };
169
+ //# sourceMappingURL=chunk-2OQMOIR5.mjs.map
170
+ //# sourceMappingURL=chunk-2OQMOIR5.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-FrameNamespace/A-FrameNamespace.constants.ts","../../src/lib/A-FrameNamespace/A-FrameNamespace.entity.ts"],"names":[],"mappings":"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","file":"chunk-2OQMOIR5.mjs","sourcesContent":["import { A_FrameNamespace } from \"./A-FrameNamespace.entity\";\n\n\nexport const A_FRAME_DEFAULT_NAMESPACE_KEY = 'default';\n\n\nexport const A_FrameNamespaceFeatures = {\n Load: '_A_FRAME_NAMESPACE_LOAD',\n Save: '_A_FRAME_NAMESPACE_SAVE',\n Embed: '_A_FRAME_NAMESPACE_EMBED',\n Destroy: '_A_FRAME_NAMESPACE_DESTROY',\n} as const;","import { A_Context, A_Entity, A_FormatterHelper, A_Scope } from \"@adaas/a-concept\";\nimport { A_FrameVector } from \"../A-FrameVector/A-FrameVector.entity\";\nimport {\n A_FrameNamespace_Init,\n A_FrameNamespace_Serialized,\n A_FrameNamespace_Record,\n A_FrameNamespace_EmbeddingMeta,\n} from \"./A-FrameNamespace.types\";\nimport { A_FrameHashHelper } from \"@adaas/a-frame/helpers/Hash.helper\";\nimport { A_FrameNamespaceFeatures } from \"./A-FrameNamespace.constants\";\n\n\nexport class A_FrameNamespace extends A_Entity<A_FrameNamespace_Init, A_FrameNamespace_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n protected _name!: string;\n protected _hash!: string;\n protected _description?: string;\n protected _metadata?: Record<string, any>;\n protected _vector?: A_FrameVector;\n protected _embeddedAt?: number;\n // ─── Provenance ───────────────────────────────────────────────────────────\n protected _embeddingModel?: string;\n protected _credentialId?: string;\n protected _aFrameVersion?: string;\n protected _aFrameServerVersion?: string;\n\n\n // ─── Getters ──────────────────────────────────────────────────────────────\n\n get id(): string {\n return this.aseid.id;\n }\n\n get name(): string {\n return this._name;\n }\n\n get hash(): string {\n return this._hash;\n }\n\n get description(): string | undefined {\n return this._description;\n }\n\n get metadata(): Record<string, any> {\n return this._metadata || {};\n }\n\n get vector(): A_FrameVector | undefined {\n return this._vector;\n }\n\n get embedding(): Float32Array | null {\n return this._vector?.values ?? null;\n }\n\n //-----------------------------------------------------------------------------------------------------\n //--------------------------------------- Computed properties -----------------------------------------\n //-----------------------------------------------------------------------------------------------------\n get aFrameServerVersion(): string | undefined {\n return this._aFrameServerVersion;\n }\n\n get aFrameVersion(): string | undefined {\n return this._aFrameVersion;\n }\n\n get isEmbed(): boolean {\n return this._vector !== undefined;\n }\n /**\n * Saves Namespace to storage. The actual implementation of saving is handled by the A_FrameNamespaceFeatures.Save feature, which can be implemented by the environment to persist the definition to a database, file system, or other storage mechanism.\n * \n * @param scope \n * @returns \n */\n save(scope?: A_Scope): Promise<void> | void {\n return this.call(A_FrameNamespaceFeatures.Save, scope);\n }\n /**\n * Deletes the namespace from storage. The actual implementation of deletion is handled by the A_FrameNamespaceFeatures.Destroy feature, which can be implemented by the environment to remove the namespace from the database, file system, or other storage mechanism.\n * \n * @param scope \n * @returns \n */\n destroy(scope?: A_Scope): Promise<void> | void {\n return this.call(A_FrameNamespaceFeatures.Destroy, scope);\n }\n /**\n * Loads the namespace from storage. The actual implementation of loading is handled by the A_FrameNamespaceFeatures.Load feature, which can be implemented by the environment to retrieve the namespace from the database, file system, or other storage mechanism and populate the entity's properties accordingly.\n * \n * @param scope \n * @returns \n */\n async load(scope?: A_Scope): Promise<void> {\n return this.call(A_FrameNamespaceFeatures.Load, scope);\n }\n /**\n * Updates the definition's properties. This can be used to modify the source code, description, metadata, or namespace of the definition. After updating, you may want to call `embed()` again to refresh the embedding based on the new content.\n * \n * @param updates \n */\n update(updates: Partial<Pick<A_FrameNamespace, 'name' | 'description' | 'metadata'>>): void {\n if (updates.name) this._name = updates.name;\n if (updates.description !== undefined) this._description = updates.description;\n if (updates.metadata !== undefined) this._metadata = updates.metadata;\n }\n /**\n * Generates an embedding vector for the namespace using the A_FrameNamespaceFeatures.Embed feature. This typically involves sending the namespace's content (name + description) to an embedding model and storing the resulting vector in the entity. Once embedded, the namespace can be searched using its vector representation.\n * \n * @param scope \n * @returns \n */\n embed(scope?: A_Scope): Promise<void> | void {\n console.log(`Embedding namespace \"${this._name}\"...`);\n return this.call(A_FrameNamespaceFeatures.Embed, scope);\n }\n\n // ─── A_Entity lifecycle ───────────────────────────────────────────────────\n\n fromNew(init: A_FrameNamespace_Init): void {\n\n this.aseid = this.generateASEID({\n id: A_FormatterHelper.toKebabCase(init.name),\n scope: 'a-frame',\n });\n\n this._name = init.name;\n\n const hashSource = this._name\n + (init.description || '')\n + (init.metadata ? JSON.stringify(init.metadata) : '');\n\n this._hash = A_FrameHashHelper.fnv1a(hashSource);\n this._description = init.description;\n this._metadata = init.metadata;\n }\n\n fromJSON(serialized: A_FrameNamespace_Serialized): void {\n this._name = serialized.name;\n this._hash = serialized.hash;\n this._description = serialized.description;\n this._metadata = serialized.metadata;\n this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : undefined;\n this._embeddedAt = serialized.embeddedAt;\n this._embeddingModel = serialized.embeddingModel;\n this._credentialId = serialized.credentialId;\n this._aFrameVersion = serialized.aFrameVersion;\n this._aFrameServerVersion = serialized.aFrameServerVersion;\n }\n\n\n\n toJSON(): A_FrameNamespace_Serialized {\n return {\n ...super.toJSON(),\n hash: this._hash,\n name: this._name,\n description: this._description,\n metadata: this._metadata,\n embedding: this._vector?.values,\n embeddedAt: this._embeddedAt ?? Date.now(),\n embeddingModel: this._embeddingModel,\n credentialId: this._credentialId,\n aFrameVersion: this._aFrameVersion,\n aFrameServerVersion: this._aFrameServerVersion,\n };\n }\n\n\n // ─── Embedding hydration ──────────────────────────────────────────────────\n\n hydrateFromRecord(record: A_FrameNamespace_Record): void {\n if (record.hash !== this._hash) {\n throw new Error(\n `A_FrameNamespace.hydrateFromRecord: hash mismatch for \"${this._name}\" ` +\n `(expected ${this._hash}, got ${record.hash})`\n );\n }\n this._vector = new A_FrameVector(record.embedding);\n this._embeddedAt = record.embeddedAt;\n }\n\n hydrateFromEmbedding(embedding: Float32Array, meta?: A_FrameNamespace_EmbeddingMeta): void {\n this._vector = new A_FrameVector(embedding);\n this._embeddedAt = Date.now();\n if (meta) {\n this._embeddingModel = meta.model;\n this._credentialId = meta.credentialId ?? undefined;\n this._aFrameVersion = meta.aFrameVersion;\n this._aFrameServerVersion = meta.aFrameServerVersion;\n }\n }\n\n /**\n * Build the text string sent to the embedding model.\n * Uses name + description so the vector captures semantic intent.\n */\n toString(): string {\n const parts: string[] = [`// namespace: ${this._name}`];\n if (this._description) parts.push(`// ${this._description}`);\n return parts.join('\\n');\n }\n}\n\n"]}
@@ -0,0 +1,207 @@
1
+ import { A_FRAME_DEFAULT_NAMESPACE_KEY, A_FrameNamespace } from './chunk-AMMQ76RJ.mjs';
2
+ import { A_Fragment, A_Scope, ASEID } from '@adaas/a-concept';
3
+
4
+ var A_FrameIndex = class _A_FrameIndex extends A_Fragment {
5
+ constructor() {
6
+ if (_A_FrameIndex._instance)
7
+ return _A_FrameIndex._instance;
8
+ super({ name: "A_FrameIndex" });
9
+ // -------------------------------------------------------------------------------------
10
+ // ------------------------------ Instance State --------------------------------------
11
+ // -------------------------------------------------------------------------------------
12
+ this.definitions = /* @__PURE__ */ new Map();
13
+ this.namespaces = /* @__PURE__ */ new Map();
14
+ this.scope = new A_Scope({ name: "A_FrameIndexScope" });
15
+ }
16
+ static get instance() {
17
+ if (!_A_FrameIndex._instance) {
18
+ _A_FrameIndex._instance = new _A_FrameIndex();
19
+ }
20
+ return _A_FrameIndex._instance;
21
+ }
22
+ static get indexSize() {
23
+ return _A_FrameIndex.instance.indexSize;
24
+ }
25
+ // ------------------------------------------------------------------------------------
26
+ // --------------------Static Access to Instance Methods-------------------------------
27
+ // ------------------------------------------------------------------------------------
28
+ static inherit(scope) {
29
+ _A_FrameIndex.instance.inherit(scope);
30
+ }
31
+ static addDefinition(def) {
32
+ _A_FrameIndex.instance.addDefinition(def);
33
+ }
34
+ static getDefinition(nameOrHash) {
35
+ return _A_FrameIndex.instance.getDefinition(nameOrHash);
36
+ }
37
+ static listDefinitions(filter) {
38
+ return _A_FrameIndex.instance.listDefinitions(filter);
39
+ }
40
+ static removeDefinition(def) {
41
+ _A_FrameIndex.instance.removeDefinition(def);
42
+ }
43
+ static addNamespace(namespace) {
44
+ _A_FrameIndex.instance.addNamespace(namespace);
45
+ }
46
+ static getDefaultNamespace() {
47
+ return _A_FrameIndex.instance.getDefaultNamespace();
48
+ }
49
+ static getNamespace(nameOrASEID) {
50
+ return _A_FrameIndex.instance.getNamespace(nameOrASEID);
51
+ }
52
+ static listNamespaces() {
53
+ return _A_FrameIndex.instance.listNamespaces();
54
+ }
55
+ static removeNamespace(namespace) {
56
+ _A_FrameIndex.instance.removeNamespace(namespace);
57
+ }
58
+ static search(vector, options = {}) {
59
+ return _A_FrameIndex.instance.search(vector, options);
60
+ }
61
+ /** Number of loaded records */
62
+ get indexSize() {
63
+ return this.definitions.size;
64
+ }
65
+ // static searchByText(
66
+ // query: string,
67
+ // channel: A_FrameChannel,
68
+ // options: A_FrameSearchOptions = {},
69
+ // ): Promise<A_FrameDefinition_SearchResult[]> {
70
+ // return A_FrameIndex.instance.searchByText(query, channel, options);
71
+ // }
72
+ // ------------------------------------------------------------------------------------
73
+ // ------------------------------ Instance Methods ------------------------------------
74
+ // ------------------------------------------------------------------------------------
75
+ inherit(scope) {
76
+ this.scope.inherit(scope);
77
+ }
78
+ addDefinition(def) {
79
+ this.scope.register(def);
80
+ const existingNamespace = this.namespaces.get(def.namespace.id);
81
+ if (!existingNamespace) {
82
+ this.addNamespace(def.namespace);
83
+ }
84
+ this.definitions.set(def.id, def);
85
+ }
86
+ getDefinition(name) {
87
+ for (const def of this.definitions.values()) {
88
+ if (def.name === name) {
89
+ return def;
90
+ }
91
+ }
92
+ return void 0;
93
+ }
94
+ listDefinitions(filter = {}) {
95
+ const namespaceName = filter.namespace ? typeof filter.namespace === "string" ? ASEID.isASEID(filter.namespace) ? new ASEID(filter.namespace).id : filter.namespace : filter.namespace.id : void 0;
96
+ return [...this.definitions.values()].filter((r) => !namespaceName || r.namespace.name === namespaceName);
97
+ }
98
+ removeDefinition(def) {
99
+ this.scope.deregister(def);
100
+ }
101
+ addNamespace(namespace) {
102
+ this.scope.register(namespace);
103
+ this.namespaces.set(namespace.id, namespace);
104
+ }
105
+ getNamespace(nameOrASEID) {
106
+ const targetKey = typeof nameOrASEID === "string" ? ASEID.isASEID(nameOrASEID) ? new ASEID(nameOrASEID).id : nameOrASEID : nameOrASEID.id;
107
+ return this.namespaces.get(targetKey);
108
+ }
109
+ getDefaultNamespace() {
110
+ let defaultNamespace = this.getNamespace(A_FRAME_DEFAULT_NAMESPACE_KEY);
111
+ if (!defaultNamespace) {
112
+ defaultNamespace = new A_FrameNamespace({
113
+ name: A_FRAME_DEFAULT_NAMESPACE_KEY
114
+ });
115
+ this.addNamespace(defaultNamespace);
116
+ }
117
+ return defaultNamespace;
118
+ }
119
+ listNamespaces() {
120
+ return [...this.namespaces.values()];
121
+ }
122
+ removeNamespace(namespace) {
123
+ this.scope.deregister(namespace);
124
+ this.namespaces.delete(namespace.id);
125
+ }
126
+ /**
127
+ * Search by a pre-computed embedding vector (cosine similarity).
128
+ */
129
+ search(vector, options = {}) {
130
+ const { topK = 10, namespace, minScore = 0 } = options;
131
+ const pool = namespace ? [...this.definitions.values()].filter((r) => r.namespace.id === namespace) : [...this.definitions.values()];
132
+ const scored = pool.map((r) => ({
133
+ record: r,
134
+ score: this.cosineSimilarity(vector, r.vector)
135
+ }));
136
+ return scored.filter((s) => s.score >= minScore).sort((a, b) => b.score - a.score).slice(0, topK).map(({ record: r, score }) => ({
137
+ record: r,
138
+ score
139
+ }));
140
+ }
141
+ // protected cosineSimilarity(vectorA: A_FrameVector, vectorB?: A_FrameVector): number {
142
+ // const a = vectorA.values ?? new Float32Array();
143
+ // const b = vectorB?.values ?? new Float32Array();
144
+ // if (a.length !== b.length) {
145
+ // throw new Error(`A_FrameIndex: dimension mismatch ${a.length} vs ${b.length}`);
146
+ // }
147
+ // let dot = 0, normA = 0, normB = 0;
148
+ // for (let i = 0; i < a.length; i++) {
149
+ // dot += a[i] * b[i];
150
+ // normA += a[i] * a[i];
151
+ // normB += b[i] * b[i];
152
+ // }
153
+ // const denom = Math.sqrt(normA) * Math.sqrt(normB);
154
+ // return denom === 0 ? 0 : dot / denom;
155
+ // }
156
+ cosineSimilarity(a, b) {
157
+ if (!b) return 0;
158
+ const dot = a.dot(b);
159
+ const mag = a.magnitude() * b.magnitude();
160
+ return mag === 0 ? 0 : dot / mag;
161
+ }
162
+ euclideanDistance(a, b) {
163
+ this.assertSameLength(a, b);
164
+ let sum = 0;
165
+ for (let i = 0; i < a.length; i++) {
166
+ const diff = a.values[i] - b.values[i];
167
+ sum += diff * diff;
168
+ }
169
+ return Math.sqrt(sum);
170
+ }
171
+ nearest(query, vectors, limit = 1) {
172
+ return [...vectors].map((v) => ({
173
+ vector: v,
174
+ score: this.cosineSimilarity(query, v)
175
+ })).sort((a, b) => b.score - a.score).slice(0, limit).map((r) => r.vector);
176
+ }
177
+ rank(query, vectors) {
178
+ return vectors.map((v) => ({
179
+ vector: v,
180
+ score: this.cosineSimilarity(query, v)
181
+ })).sort((a, b) => b.score - a.score);
182
+ }
183
+ assertSameLength(a, b) {
184
+ if (a.length !== b.length) {
185
+ throw new Error(
186
+ `Embedding dimension mismatch: ${a.length} vs ${b.length}`
187
+ );
188
+ }
189
+ }
190
+ /**
191
+ * Search by plain text — sends the query to the embed server via channel first.
192
+ */
193
+ // async searchByText(
194
+ // query: string,
195
+ // channel: A_FrameChannel,
196
+ // options: A_FrameSearchOptions = {},
197
+ // ): Promise<A_FrameDefinition_SearchResult[]> {
198
+ // this.assertLoaded();
199
+ // const resp = await channel.embed(query);
200
+ // const queryEmbedding = new Float32Array(resp.data[0].embedding);
201
+ // return this.search(queryEmbedding, options);
202
+ // }
203
+ };
204
+
205
+ export { A_FrameIndex };
206
+ //# sourceMappingURL=chunk-2UI7RJ4Q.mjs.map
207
+ //# sourceMappingURL=chunk-2UI7RJ4Q.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-FrameIndex/A-FrameIndex.context.ts"],"names":[],"mappings":"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","file":"chunk-2UI7RJ4Q.mjs","sourcesContent":["import { A_Dependency, A_Fragment, A_Scope, ASEID } from \"@adaas/a-concept\";\nimport { A_FrameVector } from \"../A-FrameVector/A-FrameVector.entity\";\nimport { A_FrameNamespace } from \"../A-FrameNamespace/A-FrameNamespace.entity\";\nimport { A_FrameDefinition_SearchResult, A_FrameSearchOptions } from \"./A-FrameIndex.types\";\nimport { A_FrameDefinition } from \"../A-FrameDefinition\";\nimport { A_FRAME_DEFAULT_NAMESPACE_KEY } from \"../A-FrameNamespace/A-FrameNamespace.constants\";\n\n\n\nexport class A_FrameIndex extends A_Fragment {\n\n private static _instance: A_FrameIndex;\n\n static get instance(): A_FrameIndex {\n if (!A_FrameIndex._instance) {\n A_FrameIndex._instance = new A_FrameIndex();\n }\n return A_FrameIndex._instance;\n }\n\n static get indexSize(): number {\n return A_FrameIndex.instance.indexSize;\n }\n\n // ------------------------------------------------------------------------------------\n // --------------------Static Access to Instance Methods-------------------------------\n // ------------------------------------------------------------------------------------\n static inherit(scope: A_Scope) {\n A_FrameIndex.instance.inherit(scope);\n }\n static addDefinition(def: A_FrameDefinition): void {\n A_FrameIndex.instance.addDefinition(def);\n }\n static getDefinition(nameOrHash: string): A_FrameDefinition | undefined {\n return A_FrameIndex.instance.getDefinition(nameOrHash);\n }\n static listDefinitions(filter: {\n namespace?: string | A_FrameNamespace\n }): A_FrameDefinition[] {\n return A_FrameIndex.instance.listDefinitions(filter);\n }\n static removeDefinition(def: A_FrameDefinition): void {\n A_FrameIndex.instance.removeDefinition(def);\n }\n static addNamespace(namespace: A_FrameNamespace): void {\n A_FrameIndex.instance.addNamespace(namespace);\n }\n static getDefaultNamespace(): A_FrameNamespace {\n return A_FrameIndex.instance.getDefaultNamespace();\n }\n static getNamespace(nameOrASEID: string | ASEID): A_FrameNamespace | undefined {\n return A_FrameIndex.instance.getNamespace(nameOrASEID);\n }\n static listNamespaces(): A_FrameNamespace[] {\n return A_FrameIndex.instance.listNamespaces();\n }\n static removeNamespace(namespace: A_FrameNamespace): void {\n A_FrameIndex.instance.removeNamespace(namespace);\n }\n static search(\n vector: A_FrameVector,\n options: A_FrameSearchOptions = {},\n ): A_FrameDefinition_SearchResult[] {\n return A_FrameIndex.instance.search(vector, options);\n }\n\n // -------------------------------------------------------------------------------------\n // ------------------------------ Instance State --------------------------------------\n // -------------------------------------------------------------------------------------\n\n private definitions: Map<string, A_FrameDefinition> = new Map();\n\n private namespaces: Map<string, A_FrameNamespace> = new Map();\n\n private _index!: {\n\n namespaceToDefinitions: WeakMap<A_FrameNamespace, Set<A_FrameDefinition>>,\n\n definitionToNamespace: WeakMap<A_FrameDefinition, A_FrameNamespace>,\n };\n /**\n * Scope where all definitions and namespaces are registered as dependencies, allowing for lookup by ASEID or constructor reference.\n */\n private scope!: A_Scope\n\n\n constructor() {\n if (A_FrameIndex._instance)\n return A_FrameIndex._instance;\n\n super({ name: 'A_FrameIndex' });\n\n this.scope = new A_Scope({ name: 'A_FrameIndexScope' });\n }\n\n /** Number of loaded records */\n get indexSize(): number {\n return this.definitions.size;\n }\n\n\n // static searchByText(\n // query: string,\n // channel: A_FrameChannel,\n // options: A_FrameSearchOptions = {},\n // ): Promise<A_FrameDefinition_SearchResult[]> {\n // return A_FrameIndex.instance.searchByText(query, channel, options);\n // }\n\n\n // ------------------------------------------------------------------------------------\n // ------------------------------ Instance Methods ------------------------------------\n // ------------------------------------------------------------------------------------\n inherit(scope: A_Scope) {\n this.scope.inherit(scope);\n }\n\n addDefinition(def: A_FrameDefinition): void {\n this.scope.register(def);\n\n const existingNamespace = this.namespaces.get(def.namespace.id);\n if (!existingNamespace) {\n this.addNamespace(def.namespace);\n }\n\n this.definitions.set(def.id, def);\n }\n\n getDefinition(name: string): A_FrameDefinition | undefined {\n // Then try name lookup\n for (const def of this.definitions.values()) {\n if (def.name === name) {\n return def;\n }\n }\n\n return undefined;\n }\n\n listDefinitions(filter: {\n namespace?: string | A_FrameNamespace\n } = {}): A_FrameDefinition[] {\n const namespaceName = filter.namespace\n ? typeof filter.namespace === 'string'\n ? ASEID.isASEID(filter.namespace)\n ? new ASEID(filter.namespace).id\n : filter.namespace\n : filter.namespace.id\n : undefined;\n\n return [...this.definitions.values()].filter(r => !namespaceName || r.namespace.name === namespaceName);\n }\n\n removeDefinition(def: A_FrameDefinition): void {\n this.scope.deregister(def);\n }\n\n addNamespace(namespace: A_FrameNamespace): void {\n this.scope.register(namespace);\n\n this.namespaces.set(namespace.id, namespace);\n }\n\n getNamespace(nameOrASEID: string | ASEID): A_FrameNamespace | undefined {\n const targetKey = typeof nameOrASEID === 'string'\n ? ASEID.isASEID(nameOrASEID)\n ? new ASEID(nameOrASEID).id\n : nameOrASEID\n : nameOrASEID.id;\n\n return this.namespaces.get(targetKey);\n }\n\n getDefaultNamespace(): A_FrameNamespace {\n // Ensure default namespace always exists\n let defaultNamespace = this.getNamespace(A_FRAME_DEFAULT_NAMESPACE_KEY);\n if (!defaultNamespace) {\n defaultNamespace = new A_FrameNamespace({\n name: A_FRAME_DEFAULT_NAMESPACE_KEY,\n });\n this.addNamespace(defaultNamespace);\n }\n return defaultNamespace;\n }\n\n listNamespaces(): A_FrameNamespace[] {\n return [...this.namespaces.values()];\n }\n\n removeNamespace(namespace: A_FrameNamespace): void {\n this.scope.deregister(namespace);\n this.namespaces.delete(namespace.id);\n }\n\n\n /**\n * Search by a pre-computed embedding vector (cosine similarity).\n */\n search(\n vector: A_FrameVector,\n options: A_FrameSearchOptions = {},\n ): A_FrameDefinition_SearchResult[] {\n\n const { topK = 10, namespace, minScore = 0 } = options;\n\n const pool = namespace\n ? [...this.definitions.values()].filter(r => r.namespace.id === namespace)\n : [...this.definitions.values()];\n\n const scored = pool.map(r => ({\n record: r,\n score: this.cosineSimilarity(vector, r.vector),\n }));\n\n return scored\n .filter(s => s.score >= minScore)\n .sort((a, b) => b.score - a.score)\n .slice(0, topK)\n .map(({ record: r, score }) => ({\n record: r,\n score,\n }));\n }\n\n // protected cosineSimilarity(vectorA: A_FrameVector, vectorB?: A_FrameVector): number {\n // const a = vectorA.values ?? new Float32Array();\n // const b = vectorB?.values ?? new Float32Array();\n\n // if (a.length !== b.length) {\n // throw new Error(`A_FrameIndex: dimension mismatch ${a.length} vs ${b.length}`);\n // }\n // let dot = 0, normA = 0, normB = 0;\n // for (let i = 0; i < a.length; i++) {\n // dot += a[i] * b[i];\n // normA += a[i] * a[i];\n // normB += b[i] * b[i];\n // }\n // const denom = Math.sqrt(normA) * Math.sqrt(normB);\n // return denom === 0 ? 0 : dot / denom;\n // }\n\n cosineSimilarity(\n a: A_FrameVector,\n b?: A_FrameVector\n ): number {\n if (!b) return 0\n\n const dot = a.dot(b)\n const mag = a.magnitude() * b.magnitude()\n return mag === 0 ? 0 : dot / mag\n }\n\n euclideanDistance(\n a: A_FrameVector,\n b: A_FrameVector\n ): number {\n this.assertSameLength(a, b)\n\n let sum = 0\n for (let i = 0; i < a.length; i++) {\n const diff = a.values[i] - b.values[i]\n sum += diff * diff\n }\n return Math.sqrt(sum)\n }\n\n nearest(\n query: A_FrameVector,\n vectors: readonly A_FrameVector[],\n limit = 1\n ): A_FrameVector[] {\n return [...vectors]\n .map(v => ({\n vector: v,\n score: this.cosineSimilarity(query, v),\n }))\n .sort((a, b) => b.score - a.score)\n .slice(0, limit)\n .map(r => r.vector)\n }\n\n rank(\n query: A_FrameVector,\n vectors: readonly A_FrameVector[]\n ): Array<{ vector: A_FrameVector; score: number }> {\n return vectors\n .map(v => ({\n vector: v,\n score: this.cosineSimilarity(query, v),\n }))\n .sort((a, b) => b.score - a.score)\n }\n\n private assertSameLength(\n a: A_FrameVector,\n b: A_FrameVector\n ) {\n if (a.length !== b.length) {\n throw new Error(\n `Embedding dimension mismatch: ${a.length} vs ${b.length}`\n )\n }\n }\n\n\n\n /**\n * Search by plain text — sends the query to the embed server via channel first.\n */\n // async searchByText(\n // query: string,\n // channel: A_FrameChannel,\n // options: A_FrameSearchOptions = {},\n // ): Promise<A_FrameDefinition_SearchResult[]> {\n // this.assertLoaded();\n // const resp = await channel.embed(query);\n // const queryEmbedding = new Float32Array(resp.data[0].embedding);\n // return this.search(queryEmbedding, options);\n // }\n\n}"]}