@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 @@
1
+ {"version":3,"sources":["../../src/lib/A-Frame/A-Frame.context.ts","../../src/lib/A-FrameStorage/A-FrameStorage.constants.ts","../../src/lib/A-FrameStorage/A-FrameStorageOperation.context.ts","../../src/lib/A-FrameStorage/A-FrameStorage.error.ts","../../src/lib/A-FrameStorage/A-FrameStorage.component.ts","../../src/lib/A-FrameStorage/node/A-FrameNodeStorage.component.ts"],"names":["A_Fragment","A_Error"],"mappings":"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","file":"chunk-A4CVDMSV.mjs","sourcesContent":["import { A_Fragment } from \"@adaas/a-concept\"\nimport { A_FrameChannelRequest } from \"../A-FrameChannel/A-FrameChannelRequest.context\";\nimport { A_Frame_CredentialResponse } from \"../A-FrameChannel/A-FrameChannel.types\";\nimport { A_FrameCredentials } from \"../A-FrameCredentials/A-FrameCredentials.entity\";\n\n\nexport class A_FrameContext extends A_Fragment {\n\n private _credentials?: A_FrameCredentials;\n\n\n constructor() {\n super({ name: 'a-frame-context' });\n }\n\n\n get encryptionKey(): string | undefined {\n return this._credentials?.encryptionKey;\n }\n\n\n get serverVersion(): string | undefined {\n return this._credentials?.serverVersion;\n }\n\n\n isAuthenticated(): boolean {\n return !!this._credentials?.isAuthenticated;\n }\n\n\n setCredentials(credentialsRequest: A_FrameChannelRequest<A_Frame_CredentialResponse>) {\n if (credentialsRequest.error || !credentialsRequest.response) {\n this._credentials = undefined;\n return;\n }\n\n this._credentials = new A_FrameCredentials(credentialsRequest.response);\n }\n\n}","\n\nexport const A_FrameStorageFeatures = {\n SaveDefinitions: '_A_FRAME_STORAGE_SAVE',\n LoadDefinitions: '_A_FRAME_STORAGE_LOAD',\n DestroyDefinitions: '_A_FRAME_STORAGE_DESTROY',\n \n SaveNamespaces: '_A_FRAME_STORAGE_SAVE_NAMESPACES',\n LoadNamespaces: '_A_FRAME_STORAGE_LOAD_NAMESPACES',\n DestroyNamespaces: '_A_FRAME_STORAGE_DESTROY_NAMESPACES',\n} as const","import { A_Error, A_Fragment } from \"@adaas/a-concept\";\n\n\nexport class A_FrameStorageOperation<\n _ParamsType = any,\n _ResultType = any\n> extends A_Fragment {\n\n protected _result?: _ResultType;\n\n protected _error?: A_Error;\n\n protected _params!: _ParamsType;\n\n\n constructor(\n params: _ParamsType\n ) {\n super({ name: 'a-frame-storage-operation' });\n this._params = params;\n }\n\n\n /**\n * If the operation succeeded, this will contain the result data. If the operation failed, this will be undefined.\n */\n get result(): _ResultType | undefined {\n return this._result;\n }\n /**\n * If the operation failed, this will contain an error object with details about the failure. If the operation succeeded, this will be undefined.\n */\n get error(): A_Error | undefined {\n return this._error;\n }\n /**\n * Parameters used to execute the operation, e.g. definitionId and namespaceId for a saveDefinition operation.\n */\n get params(): _ParamsType {\n return this._params;\n }\n /**\n * Marks the operation as completed successfully with the given result. This will set the `result` property and leave `error` as undefined.\n * \n * @param result \n */\n complete(result: _ResultType): void {\n this._result = result;\n }\n /**\n * Marks the operation as failed with the given error. This will set the `error` property and leave `result` as undefined.\n * \n * @param error \n */\n fail(error: A_Error): void {\n this._error = error;\n }\n\n}\n","import { A_Error } from \"@adaas/a-concept\";\n\n\n\nexport class A_FrameStorageError extends A_Error {\n static readonly SaveDefinitionFailed = 'SaveDefinitionFailed';\n static readonly LoadDefinitionsFailed = 'LoadDefinitionsFailed';\n static readonly DestroyDefinitionsFailed = 'DestroyDefinitionsFailed';\n static readonly SaveNamespaceFailed = 'SaveNamespaceFailed';\n static readonly LoadNamespacesFailed = 'LoadNamespacesFailed';\n static readonly DestroyNamespacesFailed = 'DestroyNamespacesFailed';\n\n}","import { A_Component, A_Context, A_Scope } from '@adaas/a-concept';\nimport { A_FrameNamespace_Serialized } from '../A-FrameNamespace/A-FrameNamespace.types';\nimport { A_FrameStorageFeatures } from './A-FrameStorage.constants';\nimport { A_FrameStorageOperation } from './A-FrameStorageOperation.context';\nimport { A_FrameStorageError } from './A-FrameStorage.error';\nimport { A_FrameStorageDestroyDefinitionsOperation, A_FrameStorageDestroyDefinitionsOperationParams, A_FrameStorageDestroyDefinitionsOperationResult, A_FrameStorageDestroyNamespacesOperation, A_FrameStorageDestroyNamespacesOperationParams, A_FrameStorageDestroyNamespacesOperationResult, A_FrameStorageLoadDefinitionsOperation, A_FrameStorageLoadDefinitionsOperationParams, A_FrameStorageLoadDefinitionsOperationResult, A_FrameStorageLoadNamespacesOperation, A_FrameStorageLoadNamespacesOperationParams, A_FrameStorageLoadNamespacesOperationResult, A_FrameStorageSaveDefinitionOperation, A_FrameStorageSaveDefinitionOperationParams, A_FrameStorageSaveDefinitionOperationResult, A_FrameStorageSaveNamespaceOperation, A_FrameStorageSaveNamespaceOperationParams, A_FrameStorageSaveNamespaceOperationResult } from './A-FrameStorage.types';\nimport { A_FrameDefinition_Serialized } from '../A-FrameDefinition/A-FrameDefinition.types';\n\n\nexport class A_FrameStorage extends A_Component {\n\n async saveDefinitions(definitions: Array<A_FrameDefinition_Serialized>): Promise<A_FrameStorageSaveDefinitionOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageSaveDefinitionOperationParams, A_FrameStorageSaveDefinitionOperationResult>({\n records: definitions\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.saveDefinitions',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.SaveDefinitions, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.SaveDefinitionFailed,\n description: `Failed to save definition records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n\n async loadDefinitions(namespaceId: string, definitionId: string): Promise<A_FrameStorageLoadDefinitionsOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageLoadDefinitionsOperationParams, A_FrameStorageLoadDefinitionsOperationResult>({\n namespaceId,\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.loadDefinitions',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.LoadDefinitions, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.LoadDefinitionsFailed,\n description: `Failed to load definition records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n\n\n async destroyDefinitions(namespaceId: string, definitionId: string): Promise<A_FrameStorageDestroyDefinitionsOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageDestroyDefinitionsOperationParams, A_FrameStorageDestroyDefinitionsOperationResult>({\n namespaceId,\n definitionId\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.destroyDefinitions',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.DestroyDefinitions, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.DestroyDefinitionsFailed,\n description: `Failed to destroy definition records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n\n\n\n async saveNamespaces(namespaces: A_FrameNamespace_Serialized[]): Promise<A_FrameStorageSaveNamespaceOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageSaveNamespaceOperationParams, A_FrameStorageSaveNamespaceOperationResult>({\n records: namespaces\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.saveNamespaces',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.SaveNamespaces, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.SaveNamespaceFailed,\n description: `Failed to save namespace records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n\n async loadNamespaces(\n namespaceIds: string[]\n ): Promise<A_FrameStorageLoadNamespacesOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageLoadNamespacesOperationParams, A_FrameStorageLoadNamespacesOperationResult>({\n namespaces: namespaceIds\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.loadNamespaces',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.LoadNamespaces, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.LoadNamespacesFailed,\n description: `Failed to load namespace records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n\n async destroyNamespaces(namespacesIds: string[]): Promise<A_FrameStorageDestroyNamespacesOperation> {\n const context = new A_FrameStorageOperation<A_FrameStorageDestroyNamespacesOperationParams, A_FrameStorageDestroyNamespacesOperationResult>({\n namespaces: namespacesIds\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameStorage.destroyNamespaces',\n fragments: [context]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameStorageFeatures.DestroyNamespaces, executionScope);\n executionScope.destroy();\n\n return context;\n } catch (error) {\n\n context.fail(new A_FrameStorageError({\n title: A_FrameStorageError.DestroyNamespacesFailed,\n description: `Failed to destroy namespace records.`,\n }));\n\n executionScope.destroy();\n\n return context;\n }\n }\n}\n","import { A_Caller, A_Feature, A_Inject } from \"@adaas/a-concept\";\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { A_FrameStorageFeatures } from \"../A-FrameStorage.constants\";\nimport { A_FrameStorage } from \"../A-FrameStorage.component\";\nimport { A_FrameEnv } from \"../../A-FrameEnv/A-FrameEnv.fragment.env-node\";\nimport { A_FrameStorageOperation } from \"../A-FrameStorageOperation.context\";\nimport { A_FrameCrypto } from \"../../A-FrameCrypto/A-FrameCrypto.component.env-node\";\nimport { A_FrameNamespace_Serialized } from \"../../A-FrameNamespace/A-FrameNamespace.types\";\nimport { A_FrameStorageCodec } from \"../A-FrameStorage.codec\";\nimport { A_FrameDefinitionFeatures } from \"../../A-FrameDefinition/A-FrameDefinition.constants\";\nimport { A_FrameDefinition } from \"../../A-FrameDefinition\";\nimport { A_FrameDefinition_Serialized } from \"../../A-FrameDefinition/A-FrameDefinition.types\";\nimport { A_FrameContext } from \"../../A-Frame/A-Frame.context\";\nimport { A_FrameNamespace } from \"../../A-FrameNamespace\";\nimport { A_FrameNamespaceFeatures } from \"../../A-FrameNamespace/A-FrameNamespace.constants\";\nimport { A_FrameStorageDestroyDefinitionsOperation, A_FrameStorageDestroyNamespacesOperation, A_FrameStorageLoadDefinitionsOperation, A_FrameStorageLoadNamespacesOperation, A_FrameStorageSaveDefinitionOperation, A_FrameStorageSaveNamespaceOperation } from \"../A-FrameStorage.types\";\nimport { A_FrameStorageError } from \"../A-FrameStorage.error\";\n\n\n/** Reserved filename for the namespace binary index */\n\n/**\n * A_FrameStorageProvider — Node.js environment\n *\n * Reads and writes encrypted binary index files (*.bin) on the local filesystem.\n * Definition records are grouped by namespace into <namespace>.bin files.\n * Namespace records are stored in the reserved __namespaces.bin file.\n *\n * File layout on disk: [IV 12B][AuthTag 16B][Ciphertext ...]\n */\nexport class A_FrameNodeStorage extends A_FrameStorage {\n\n /** Returns file contents, or null when the file does not exist yet. Re-throws all other I/O errors. */\n private async tryReadFile(filePath: string): Promise<Buffer | null> {\n try {\n return await fs.readFile(filePath);\n } catch (err: any) {\n if (err?.code === 'ENOENT') return null;\n throw err;\n }\n }\n\n /**\n * Resolves extra storage directories by expanding each comma-separated glob\n * pattern in `pattern`. Returns an empty array when `pattern` is blank or\n * when no paths match. Errors from unsupported patterns are swallowed so\n * that a bad env value never breaks the application.\n */\n private async listExtraStorageDirs(pattern: string): Promise<string[]> {\n if (!pattern) return [];\n const dirs: string[] = [];\n for (const p of pattern.split(',').map(s => s.trim()).filter(Boolean)) {\n try {\n for await (const match of fs.glob(p)) {\n dirs.push(match);\n }\n } catch {\n // unsupported pattern or no matches — skip silently\n }\n }\n return dirs;\n }\n\n //---------------------------------------------------------------------------------------\n //--------------------------Definition Features Extensions-------------------------------\n //---------------------------------------------------------------------------------------\n /**\n * Save a single definition to local file storage. This is called as part of A_FrameDefinition.save() when using the local file storage provider. It reads the existing namespace file, merges in the new or updated definition, and writes back the encrypted file.\n * \n * @param definition \n * @param env \n * @param context \n * @param codec \n */\n @A_Feature.Extend({\n name: A_FrameDefinitionFeatures.Save,\n scope: [A_FrameDefinition]\n })\n async saveDefinitionToDisk(\n @A_Inject(A_Caller) definition: A_FrameDefinition,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const namespace = definition.namespace\n\n const incoming = definition.toJSON();\n if (!incoming.embedding)\n throw new Error('Only definitions with embeddings can be saved to storage');\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace.id)));\n const existing: A_FrameDefinition_Serialized[] = rawBuf\n ? codec.decodePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const merged = new Map<string, A_FrameDefinition_Serialized>();\n for (const r of existing) merged.set(r.hash, r);\n merged.set(incoming.hash, incoming);\n\n const records = Array.from(merged.values());\n const payload = codec.encodePayload(records);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace.id)), encrypted);\n }\n /**\n * Load a single definition from local file storage. This is called as part of A_FrameDefinition.load() when using the local file storage provider. It reads the namespace file, finds the record for the requested definition, and if found and hash matches, populates the definition with the stored data.\n */\n @A_Feature.Extend({\n name: A_FrameDefinitionFeatures.Load,\n scope: [A_FrameDefinition]\n })\n async loadDefinitionFromDisk(\n @A_Inject(A_Caller) definition: A_FrameDefinition,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n // 1. Try primary storage dir\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(definition.namespace.id)));\n if (rawBuf) {\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!);\n const record = codec.decodePayload(plain).find(r => r.aseid === definition.aseid.toString());\n if (record && record.hash === definition.hash && record.aFrameServerVersion === context.serverVersion) {\n definition.fromJSON(record);\n return;\n }\n }\n\n // 2. Scan extra storage directories discovered via A_FRAME_STORAGE_PATTERN\n for (const dir of await this.listExtraStorageDirs(env.A_FRAME_STORAGE_PATTERN)) {\n const extraBuf = await this.tryReadFile(path.join(dir, codec.getDefinitionsFileName(definition.namespace.id)));\n if (!extraBuf) continue;\n try {\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(extraBuf), context.encryptionKey!);\n const record = codec.decodePayload(plain).find(r => r.aseid === definition.aseid.toString());\n if (record && record.hash === definition.hash && record.aFrameServerVersion === context.serverVersion) {\n definition.fromJSON(record);\n return;\n }\n } catch {\n // skip unreadable extra storage\n }\n }\n }\n /**\n * Delete a single definition from local file storage. This is called as part of A_FrameDefinition.destroy() when using the local file storage provider. It reads the namespace file, removes the record for the requested definition, and writes back the encrypted file.\n * \n * @param definition \n * @param env \n * @param context \n * @param codec \n */\n @A_Feature.Extend({\n name: A_FrameDefinitionFeatures.Destroy,\n scope: [A_FrameDefinition]\n })\n async destroyDefinitionFromDisk(\n @A_Inject(A_Caller) definition: A_FrameDefinition,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n\n ): Promise<void> {\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(definition.namespace.id)));\n if (!rawBuf) return;\n\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!);\n const records = codec.decodePayload(plain);\n\n const filtered = records.filter(r => r.aseid !== definition.aseid.toString());\n\n const payload = codec.encodePayload(filtered);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(definition.namespace.id)), encrypted);\n }\n\n // ---------------------------------------------------------------------------------------\n //--------------------------Namespaces Features Extensions-------------------------------\n //---------------------------------------------------------------------------------------\n\n @A_Feature.Extend({\n name: A_FrameNamespaceFeatures.Save,\n scope: [A_FrameNamespace]\n })\n async saveNamespaceToDisk(\n @A_Inject(A_Caller) namespace: A_FrameNamespace,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const incoming = namespace.toJSON();\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n const existing: A_FrameNamespace_Serialized[] = rawBuf\n ? codec.decodeNamespacePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const merged = new Map<string, A_FrameNamespace_Serialized>();\n for (const r of existing) merged.set(r.aseid, r);\n merged.set(incoming.aseid.toString(), incoming);\n\n const records = Array.from(merged.values());\n const payload = codec.encodeNamespacePayload(records);\n\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()), encrypted);\n }\n\n @A_Feature.Extend({\n name: A_FrameNamespaceFeatures.Load,\n scope: [A_FrameNamespace]\n })\n async loadNamespaceFromDisk(\n @A_Inject(A_Caller) namespace: A_FrameNamespace,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n ): Promise<void> {\n // 1. Try primary storage dir\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n if (rawBuf) {\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!);\n const record = codec.decodeNamespacePayload(plain).find(r => r.aseid === namespace.aseid.toString());\n if (record && record.hash === namespace.hash && record.aFrameServerVersion === context.serverVersion) {\n namespace.fromJSON(record);\n return;\n }\n }\n\n // 2. Scan extra storage directories discovered via A_FRAME_STORAGE_PATTERN\n for (const dir of await this.listExtraStorageDirs(env.A_FRAME_STORAGE_PATTERN)) {\n const extraBuf = await this.tryReadFile(path.join(dir, codec.getNamespaceFileName()));\n if (!extraBuf) continue;\n try {\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(extraBuf), context.encryptionKey!);\n const record = codec.decodeNamespacePayload(plain).find(r => r.aseid === namespace.aseid.toString());\n if (record && record.hash === namespace.hash && record.aFrameServerVersion === context.serverVersion) {\n namespace.fromJSON(record);\n return;\n }\n } catch {\n // skip unreadable extra storage\n }\n }\n }\n\n @A_Feature.Extend({\n name: A_FrameNamespaceFeatures.Destroy,\n scope: [A_FrameNamespace]\n })\n async destroyNamespaceFromLocalFileStorage(\n @A_Inject(A_Caller) namespace: A_FrameNamespace,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n if (!rawBuf) return;\n\n const plain = await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!);\n const records = codec.decodeNamespacePayload(plain);\n\n const filtered = records.filter(r => r.aseid !== namespace.aseid.toString());\n\n const payload = codec.encodeNamespacePayload(filtered);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()), encrypted);\n\n /**\n * 2. Then drop definitions file related to the namespace.\n */\n try {\n await fs.unlink(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace.id)));\n } catch {\n // no-op if file doesn't exist\n }\n }\n\n\n\n\n\n // ---------------------------------------------------------------------------------------\n //--------------------------Storage Features Extensions-------------------------------\n //---------------------------------------------------------------------------------------\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.SaveDefinitions,\n scope: [A_FrameStorage]\n })\n async saveDefinitionsToDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageSaveDefinitionOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const records = operation.params.records;\n const namespace = records[0].namespace;\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace)));\n const existing: A_FrameDefinition_Serialized[] = rawBuf\n ? codec.decodePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const merged = new Map<string, A_FrameDefinition_Serialized>();\n for (const r of existing) merged.set(r.hash, r);\n for (const d of records) merged.set(d.hash, d);\n\n const result = Array.from(merged.values());\n const payload = codec.encodePayload(result);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace)), encrypted);\n\n operation.complete({\n saved: records.length\n });\n }\n\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.LoadDefinitions,\n scope: [A_FrameStorage]\n })\n async loadDefinitionsFromDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageLoadDefinitionsOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const namespace = operation.params.namespaceId;\n\n // 1. Primary storage\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace)));\n const primaryRecords: A_FrameDefinition_Serialized[] = rawBuf\n ? codec.decodePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n // 2. Merge extra storage directories (read-only; primary records take precedence)\n const merged = new Map<string, A_FrameDefinition_Serialized>();\n for (const r of primaryRecords) merged.set(r.hash, r);\n\n for (const dir of await this.listExtraStorageDirs(env.A_FRAME_STORAGE_PATTERN)) {\n const extraBuf = await this.tryReadFile(path.join(dir, codec.getDefinitionsFileName(namespace)));\n if (!extraBuf) continue;\n try {\n const extraRecords = codec.decodePayload(\n await aFrameCrypto.decryptBytes(new Uint8Array(extraBuf), context.encryptionKey!)\n );\n for (const r of extraRecords) {\n if (!merged.has(r.hash)) merged.set(r.hash, r);\n }\n } catch {\n // skip unreadable extra storage\n }\n }\n\n operation.complete({\n records: Array.from(merged.values())\n });\n }\n\n\n\n\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.DestroyDefinitions,\n scope: [A_FrameStorage]\n })\n async destroyDefinitionsFromDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageDestroyDefinitionsOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const namespace = operation.params.namespaceId;\n const definitionId = operation.params.definitionId;\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace)));\n const records: A_FrameDefinition_Serialized[] = rawBuf\n ? codec.decodePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const filtered = records.filter(r => r.aseid !== definitionId);\n\n const payload = codec.encodePayload(filtered);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(namespace)), encrypted);\n\n operation.complete({\n records: filtered\n });\n }\n\n\n\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.SaveNamespaces,\n scope: [A_FrameStorage]\n })\n async saveNamespacesToDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageSaveNamespaceOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const records = operation.params.records;\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n const existing: A_FrameNamespace_Serialized[] = rawBuf\n ? codec.decodeNamespacePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const merged = new Map<string, A_FrameNamespace_Serialized>();\n for (const r of existing) merged.set(r.aseid, r);\n for (const d of records) merged.set(d.aseid.toString(), d);\n\n const result = Array.from(merged.values());\n const payload = codec.encodeNamespacePayload(result);\n\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()), encrypted);\n\n operation.complete({\n success: true\n });\n }\n\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.LoadNamespaces,\n scope: [A_FrameStorage]\n })\n async loadNamespacesFromDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageLoadNamespacesOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const ids = operation.params.namespaces;\n\n // 1. Primary storage\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n const primaryRecords: A_FrameNamespace_Serialized[] = rawBuf\n ? codec.decodeNamespacePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n // 2. Merge extra storage directories (read-only; primary records take precedence)\n const merged = new Map<string, A_FrameNamespace_Serialized>();\n for (const r of primaryRecords) merged.set(r.aseid, r);\n\n for (const dir of await this.listExtraStorageDirs(env.A_FRAME_STORAGE_PATTERN)) {\n const extraBuf = await this.tryReadFile(path.join(dir, codec.getNamespaceFileName()));\n if (!extraBuf) continue;\n try {\n const extraRecords = codec.decodeNamespacePayload(\n await aFrameCrypto.decryptBytes(new Uint8Array(extraBuf), context.encryptionKey!)\n );\n for (const r of extraRecords) {\n if (!merged.has(r.aseid)) merged.set(r.aseid, r);\n }\n } catch {\n // skip unreadable extra storage\n }\n }\n\n const allRecords = Array.from(merged.values());\n operation.complete({\n records: ids ? allRecords.filter(r => ids.includes(r.name)) : allRecords\n });\n }\n\n\n\n @A_Feature.Extend({\n name: A_FrameStorageFeatures.DestroyNamespaces,\n scope: [A_FrameStorage]\n })\n async destroyNamespacesFromDisk(\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n @A_Inject(A_FrameStorageOperation) operation: A_FrameStorageDestroyNamespacesOperation,\n @A_Inject(A_FrameContext) context: A_FrameContext,\n @A_Inject(A_FrameStorageCodec) codec: A_FrameStorageCodec,\n @A_Inject(A_FrameCrypto) aFrameCrypto: A_FrameCrypto,\n ): Promise<void> {\n const ids = operation.params.namespaces;\n\n const rawBuf = await this.tryReadFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()));\n const records: A_FrameNamespace_Serialized[] = rawBuf\n ? codec.decodeNamespacePayload(await aFrameCrypto.decryptBytes(new Uint8Array(rawBuf), context.encryptionKey!))\n : [];\n\n const filtered = records.filter(r => !ids.includes(r.aseid));\n\n const payload = codec.encodeNamespacePayload(filtered);\n const encrypted = await aFrameCrypto.encryptBytes(payload, context.encryptionKey!);\n\n await fs.mkdir(env.A_FRAME_STORAGE_DIR, { recursive: true });\n await fs.writeFile(path.join(env.A_FRAME_STORAGE_DIR, codec.getNamespaceFileName()), encrypted);\n\n /**\n * 2. Then drop definitions file related to the namespace.\n */\n try {\n for (const id of ids) {\n await fs.unlink(path.join(env.A_FRAME_STORAGE_DIR, codec.getDefinitionsFileName(id)));\n }\n operation.complete({\n success: true\n });\n } catch (error) {\n\n operation.fail(new A_FrameStorageError({\n title: A_FrameStorageError.DestroyNamespacesFailed,\n description: `Failed to destroy namespace records.`,\n }));\n\n operation.complete({\n success: false\n });\n }\n }\n\n}\n"]}
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=chunk-A7CJIUYY.cjs.map
4
+ //# sourceMappingURL=chunk-A7CJIUYY.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-A7CJIUYY.cjs"}
@@ -0,0 +1,163 @@
1
+ import { A_FrameHashHelper } from './chunk-442DXGOD.mjs';
2
+ import { A_FrameVector } from './chunk-IAL2NK2V.mjs';
3
+ import { A_FRAME_MODELS } from './chunk-2HUSP34L.mjs';
4
+ import { A_Entity } from '@adaas/a-concept';
5
+
6
+ // src/lib/A-FrameSegment/A-FrameSegment.constants.ts
7
+ var A_FRAME_DEFAULT_SEGMENT_KEY = "default";
8
+ var A_FrameSegmentFeatures = {
9
+ Load: "_A_FRAME_SEGMENT_LOAD",
10
+ Save: "_A_FRAME_SEGMENT_SAVE",
11
+ Embed: "_A_FRAME_SEGMENT_EMBED",
12
+ Destroy: "_A_FRAME_SEGMENT_DESTROY"
13
+ };
14
+
15
+ // src/lib/A-FrameSegment/A-FrameSegment.entity.ts
16
+ var A_FrameSegment = class extends A_Entity {
17
+ static get concept() {
18
+ return "a-frame";
19
+ }
20
+ // ─── Getters ──────────────────────────────────────────────────────────────
21
+ get id() {
22
+ return this.aseid.id;
23
+ }
24
+ get content() {
25
+ return this._content;
26
+ }
27
+ get hash() {
28
+ return this._hash;
29
+ }
30
+ get vector() {
31
+ return this._vector;
32
+ }
33
+ get embedding() {
34
+ return this._vector?.values ?? null;
35
+ }
36
+ //-----------------------------------------------------------------------------------------------------
37
+ //--------------------------------------- Computed properties -----------------------------------------
38
+ //-----------------------------------------------------------------------------------------------------
39
+ get aFrameServerVersion() {
40
+ return this._aFrameServerVersion;
41
+ }
42
+ get aFrameVersion() {
43
+ return this._aFrameVersion;
44
+ }
45
+ get isEmbed() {
46
+ return this._vector !== void 0;
47
+ }
48
+ get options() {
49
+ return this._options;
50
+ }
51
+ /**
52
+ * Saves Segment to storage. The actual implementation of saving is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.Save, scope);
59
+ }
60
+ /**
61
+ * Deletes the namespace from storage. The actual implementation of deletion is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.Destroy, scope);
68
+ }
69
+ /**
70
+ * Loads the namespace from storage. The actual implementation of loading is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.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.content) this._content = updates.content;
85
+ }
86
+ /**
87
+ * Generates an embedding vector for the namespace using the A_FrameSegmentFeatures.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.
88
+ *
89
+ * @param scope
90
+ * @returns
91
+ */
92
+ embed(scope) {
93
+ return this.call(A_FrameSegmentFeatures.Embed, scope);
94
+ }
95
+ // ─── A_Entity lifecycle ───────────────────────────────────────────────────
96
+ fromNew(init) {
97
+ super.fromNew(init);
98
+ this._content = init.content;
99
+ this._options = { model: A_FRAME_MODELS.ANTARES, ...init.options };
100
+ const hashSource = this._content;
101
+ this._hash = A_FrameHashHelper.fnv1a(hashSource);
102
+ }
103
+ fromJSON(serialized) {
104
+ this._content = serialized.content;
105
+ this._hash = serialized.hash;
106
+ this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : void 0;
107
+ this._embeddedAt = serialized.embeddedAt;
108
+ this._model = serialized.model;
109
+ this._credentialId = serialized.credentialId;
110
+ this._aFrameVersion = serialized.aFrameVersion;
111
+ this._aFrameServerVersion = serialized.aFrameServerVersion;
112
+ if (serialized.task) {
113
+ this._options = { ...this._options, task: serialized.task };
114
+ }
115
+ }
116
+ toJSON() {
117
+ return {
118
+ ...super.toJSON(),
119
+ hash: this._hash,
120
+ content: this._content,
121
+ embedding: this._vector?.values,
122
+ embeddedAt: this._embeddedAt ?? (/* @__PURE__ */ new Date()).toISOString(),
123
+ task: this._options?.task,
124
+ model: this._model,
125
+ credentialId: this._credentialId,
126
+ aFrameVersion: this._aFrameVersion,
127
+ aFrameServerVersion: this._aFrameServerVersion
128
+ };
129
+ }
130
+ // ─── Embedding hydration ──────────────────────────────────────────────────
131
+ hydrateFromRecord(record) {
132
+ if (record.hash !== this._hash) {
133
+ throw new Error(
134
+ `A_FrameSegment.hydrateFromRecord: hash mismatch for "${this._content}" (expected ${this._hash}, got ${record.hash})`
135
+ );
136
+ }
137
+ this._vector = new A_FrameVector(record.embedding);
138
+ this._embeddedAt = record.embeddedAt;
139
+ if (record.task) {
140
+ this._options = { ...this._options, task: record.task };
141
+ }
142
+ }
143
+ /**
144
+ * Populate the embedding vector directly from a raw `Float32Array`.
145
+ * Use this when the vector is obtained externally (e.g. from a server
146
+ * response) without going through the full `embed()` feature pipeline.
147
+ */
148
+ hydrateFromEmbedding(embedding) {
149
+ this._vector = new A_FrameVector(embedding);
150
+ }
151
+ /**
152
+ * Build the text string sent to the embedding model.
153
+ * Uses content so the vector captures semantic intent.
154
+ */
155
+ toString() {
156
+ const parts = [`// content: ${this._content}`];
157
+ return parts.join("\n");
158
+ }
159
+ };
160
+
161
+ export { A_FRAME_DEFAULT_SEGMENT_KEY, A_FrameSegment, A_FrameSegmentFeatures };
162
+ //# sourceMappingURL=chunk-ALFFUJ2J.mjs.map
163
+ //# sourceMappingURL=chunk-ALFFUJ2J.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/A-FrameSegment/A-FrameSegment.constants.ts","../../src/lib/A-FrameSegment/A-FrameSegment.entity.ts"],"names":[],"mappings":"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","file":"chunk-ALFFUJ2J.mjs","sourcesContent":["import { A_FrameSegment } from \"./A-FrameSegment.entity\";\n\n\nexport const A_FRAME_DEFAULT_SEGMENT_KEY = 'default';\n\n\nexport const A_FrameSegmentFeatures = {\n Load: '_A_FRAME_SEGMENT_LOAD',\n Save: '_A_FRAME_SEGMENT_SAVE',\n Embed: '_A_FRAME_SEGMENT_EMBED',\n Destroy: '_A_FRAME_SEGMENT_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_FrameSegment_Init,\n A_FrameSegment_Serialized,\n A_FrameSegment_Record,\n A_FrameSegment_EmbeddingMeta,\n A_FrameSegmentOptions,\n} from \"./A-FrameSegment.types\";\nimport { A_FrameHashHelper } from \"@adaas/a-frame/helpers/Hash.helper\";\nimport { A_FrameSegmentFeatures } from \"./A-FrameSegment.constants\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels\";\n\n\nexport class A_FrameSegment extends A_Entity<A_FrameSegment_Init, A_FrameSegment_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n protected _content!: string;\n protected _hash!: string;\n protected _vector?: A_FrameVector;\n protected _embeddedAt?: string;\n protected _model?: string;\n protected _credentialId?: string;\n protected _aFrameVersion?: string;\n protected _aFrameServerVersion?: string;\n protected _options?: Partial<A_FrameSegmentOptions>;\n\n\n // ─── Getters ──────────────────────────────────────────────────────────────\n\n get id(): string {\n return this.aseid.id;\n }\n\n get content(): string {\n return this._content;\n }\n\n get hash(): string {\n return this._hash;\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 get options(): Partial<A_FrameSegmentOptions> | undefined {\n return this._options;\n }\n /**\n * Saves Segment to storage. The actual implementation of saving is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.Save, scope);\n }\n /**\n * Deletes the namespace from storage. The actual implementation of deletion is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.Destroy, scope);\n }\n /**\n * Loads the namespace from storage. The actual implementation of loading is handled by the A_FrameSegmentFeatures.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_FrameSegmentFeatures.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_FrameSegment, 'content'>>): void {\n if (updates.content) this._content = updates.content;\n }\n /**\n * Generates an embedding vector for the namespace using the A_FrameSegmentFeatures.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 return this.call(A_FrameSegmentFeatures.Embed, scope);\n }\n\n // ─── A_Entity lifecycle ───────────────────────────────────────────────────\n\n fromNew(init: A_FrameSegment_Init): void {\n super.fromNew(init);\n\n this._content = init.content;\n this._options = { model: A_FRAME_MODELS.ANTARES, ...init.options };\n\n const hashSource = this._content;\n\n this._hash = A_FrameHashHelper.fnv1a(hashSource);\n }\n\n fromJSON(serialized: A_FrameSegment_Serialized): void {\n this._content = serialized.content;\n this._hash = serialized.hash;\n this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : undefined;\n this._embeddedAt = serialized.embeddedAt;\n this._model = serialized.model;\n this._credentialId = serialized.credentialId;\n this._aFrameVersion = serialized.aFrameVersion;\n this._aFrameServerVersion = serialized.aFrameServerVersion;\n if (serialized.task) {\n this._options = { ...this._options, task: serialized.task };\n }\n }\n\n\n\n toJSON(): A_FrameSegment_Serialized {\n return {\n ...super.toJSON(),\n hash: this._hash,\n content: this._content,\n embedding: this._vector?.values,\n embeddedAt: this._embeddedAt ?? new Date().toISOString(),\n task: this._options?.task,\n model: this._model,\n credentialId: this._credentialId,\n aFrameVersion: this._aFrameVersion,\n aFrameServerVersion: this._aFrameServerVersion,\n };\n }\n\n\n // ─── Embedding hydration ──────────────────────────────────────────────────\n\n hydrateFromRecord(record: A_FrameSegment_Record): void {\n if (record.hash !== this._hash) {\n throw new Error(\n `A_FrameSegment.hydrateFromRecord: hash mismatch for \"${this._content}\" ` +\n `(expected ${this._hash}, got ${record.hash})`\n );\n }\n this._vector = new A_FrameVector(record.embedding);\n this._embeddedAt = record.embeddedAt;\n if (record.task) {\n this._options = { ...this._options, task: record.task };\n }\n }\n\n /**\n * Populate the embedding vector directly from a raw `Float32Array`.\n * Use this when the vector is obtained externally (e.g. from a server\n * response) without going through the full `embed()` feature pipeline.\n */\n hydrateFromEmbedding(embedding: Float32Array): void {\n this._vector = new A_FrameVector(embedding);\n }\n\n /**\n * Build the text string sent to the embedding model.\n * Uses content so the vector captures semantic intent.\n */\n toString(): string {\n const parts: string[] = [`// content: ${this._content}`];\n return parts.join('\\n');\n }\n}\n\n"]}
@@ -0,0 +1,179 @@
1
+ import { A_FrameHashHelper } from './chunk-442DXGOD.mjs';
2
+ import { A_FrameVector } from './chunk-IAL2NK2V.mjs';
3
+ import { A_FRAME_MODELS } from './chunk-2HUSP34L.mjs';
4
+ import { A_Entity, A_FormatterHelper } from '@adaas/a-concept';
5
+
6
+ // src/lib/A-FrameNamespace/A-FrameNamespace.constants.ts
7
+ var A_FRAME_DEFAULT_NAMESPACE_KEY = "default";
8
+ var A_FrameNamespaceFeatures = {
9
+ Load: "_A_FRAME_NAMESPACE_LOAD",
10
+ Save: "_A_FRAME_NAMESPACE_SAVE",
11
+ Embed: "_A_FRAME_NAMESPACE_EMBED",
12
+ Destroy: "_A_FRAME_NAMESPACE_DESTROY"
13
+ };
14
+ var A_FrameNamespace = class extends A_Entity {
15
+ static get concept() {
16
+ return "a-frame";
17
+ }
18
+ // ─── Getters ──────────────────────────────────────────────────────────────
19
+ get id() {
20
+ return this.aseid.id;
21
+ }
22
+ get name() {
23
+ return this._name;
24
+ }
25
+ get hash() {
26
+ return this._hash;
27
+ }
28
+ get description() {
29
+ return this._description;
30
+ }
31
+ get metadata() {
32
+ return this._metadata || {};
33
+ }
34
+ get vector() {
35
+ return this._vector;
36
+ }
37
+ get embedding() {
38
+ return this._vector?.values ?? null;
39
+ }
40
+ //-----------------------------------------------------------------------------------------------------
41
+ //--------------------------------------- Computed properties -----------------------------------------
42
+ //-----------------------------------------------------------------------------------------------------
43
+ get aFrameServerVersion() {
44
+ return this._aFrameServerVersion;
45
+ }
46
+ get aFrameVersion() {
47
+ return this._aFrameVersion;
48
+ }
49
+ get isEmbed() {
50
+ return this._vector !== void 0;
51
+ }
52
+ /**
53
+ * The model requested for embedding at init time. Defaults to `A_FRAME_MODELS.ANTARES`.
54
+ * Sent to the server in the embed request body as the `model` field.
55
+ */
56
+ get requestedModel() {
57
+ return this._requestedModel;
58
+ }
59
+ /**
60
+ * 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.
61
+ *
62
+ * @param scope
63
+ * @returns
64
+ */
65
+ save(scope) {
66
+ return this.call(A_FrameNamespaceFeatures.Save, scope);
67
+ }
68
+ /**
69
+ * 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.
70
+ *
71
+ * @param scope
72
+ * @returns
73
+ */
74
+ destroy(scope) {
75
+ return this.call(A_FrameNamespaceFeatures.Destroy, scope);
76
+ }
77
+ /**
78
+ * 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.
79
+ *
80
+ * @param scope
81
+ * @returns
82
+ */
83
+ async load(scope) {
84
+ return this.call(A_FrameNamespaceFeatures.Load, scope);
85
+ }
86
+ /**
87
+ * 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.
88
+ *
89
+ * @param updates
90
+ */
91
+ update(updates) {
92
+ if (updates.name) this._name = updates.name;
93
+ if (updates.description !== void 0) this._description = updates.description;
94
+ if (updates.metadata !== void 0) this._metadata = updates.metadata;
95
+ }
96
+ /**
97
+ * 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.
98
+ *
99
+ * @param scope
100
+ * @returns
101
+ */
102
+ embed(scope) {
103
+ console.log(`Embedding namespace "${this._name}"...`);
104
+ return this.call(A_FrameNamespaceFeatures.Embed, scope);
105
+ }
106
+ // ─── A_Entity lifecycle ───────────────────────────────────────────────────
107
+ fromNew(init) {
108
+ this.aseid = this.generateASEID({
109
+ id: A_FormatterHelper.toKebabCase(init.name),
110
+ scope: "a-frame"
111
+ });
112
+ this._name = init.name;
113
+ const hashSource = this._name + (init.description || "") + (init.metadata ? JSON.stringify(init.metadata) : "");
114
+ this._hash = A_FrameHashHelper.fnv1a(hashSource);
115
+ this._description = init.description;
116
+ this._metadata = init.metadata;
117
+ this._requestedModel = init.model ?? A_FRAME_MODELS.ANTARES;
118
+ }
119
+ fromJSON(serialized) {
120
+ this._name = serialized.name;
121
+ this._hash = serialized.hash;
122
+ this._description = serialized.description;
123
+ this._metadata = serialized.metadata;
124
+ this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : void 0;
125
+ this._embeddedAt = serialized.embeddedAt;
126
+ this._embeddingModel = serialized.embeddingModel;
127
+ this._credentialId = serialized.credentialId;
128
+ this._aFrameVersion = serialized.aFrameVersion;
129
+ this._aFrameServerVersion = serialized.aFrameServerVersion;
130
+ }
131
+ toJSON() {
132
+ return {
133
+ ...super.toJSON(),
134
+ hash: this._hash,
135
+ name: this._name,
136
+ description: this._description,
137
+ metadata: this._metadata,
138
+ embedding: this._vector?.values,
139
+ embeddedAt: this._embeddedAt ?? Date.now(),
140
+ embeddingModel: this._embeddingModel,
141
+ credentialId: this._credentialId,
142
+ aFrameVersion: this._aFrameVersion,
143
+ aFrameServerVersion: this._aFrameServerVersion
144
+ };
145
+ }
146
+ // ─── Embedding hydration ──────────────────────────────────────────────────
147
+ hydrateFromRecord(record) {
148
+ if (record.hash !== this._hash) {
149
+ throw new Error(
150
+ `A_FrameNamespace.hydrateFromRecord: hash mismatch for "${this._name}" (expected ${this._hash}, got ${record.hash})`
151
+ );
152
+ }
153
+ this._vector = new A_FrameVector(record.embedding);
154
+ this._embeddedAt = record.embeddedAt;
155
+ }
156
+ hydrateFromEmbedding(embedding, meta) {
157
+ this._vector = new A_FrameVector(embedding);
158
+ this._embeddedAt = Date.now();
159
+ if (meta) {
160
+ this._embeddingModel = meta.model;
161
+ this._credentialId = meta.credentialId ?? void 0;
162
+ this._aFrameVersion = meta.aFrameVersion;
163
+ this._aFrameServerVersion = meta.aFrameServerVersion;
164
+ }
165
+ }
166
+ /**
167
+ * Build the text string sent to the embedding model.
168
+ * Uses name + description so the vector captures semantic intent.
169
+ */
170
+ toString() {
171
+ const parts = [`// namespace: ${this._name}`];
172
+ if (this._description) parts.push(`// ${this._description}`);
173
+ return parts.join("\n");
174
+ }
175
+ };
176
+
177
+ export { A_FRAME_DEFAULT_NAMESPACE_KEY, A_FrameNamespace, A_FrameNamespaceFeatures };
178
+ //# sourceMappingURL=chunk-AMMQ76RJ.mjs.map
179
+ //# sourceMappingURL=chunk-AMMQ76RJ.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-AMMQ76RJ.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\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels\";\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; protected _requestedModel!: string; 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 * The model requested for embedding at init time. Defaults to `A_FRAME_MODELS.ANTARES`.\n * Sent to the server in the embed request body as the `model` field.\n */\n get requestedModel(): string {\n return this._requestedModel;\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 this._requestedModel = init.model ?? A_FRAME_MODELS.ANTARES;\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"]}