@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
@@ -1,10 +1,194 @@
1
- import { A_TYPES__Entity_Serialized } from "@adaas/a-concept"
1
+ import { A_Component, A_Fragment, A_TYPES__Ctor, A_TYPES__Entity_Serialized } from "@adaas/a-concept";
2
+ import { A_FrameDynamicPatch_Serialized } from "../A-FrameDynamicPatch/A-FrameDynamicPatch.types";
3
+ import { A_FrameDynamicFeatureFeatures } from "./A-FrameDynamicFeature.constants";
2
4
 
3
5
 
4
- export type A_FrameDynamicFeature_Init = {
6
+ // ── Options ────────────────────────────────────────────────────────────────────
5
7
 
6
- }
8
+ export type A_FrameDynamicFeatureOptions = {
9
+ /**
10
+ * Which AI model to use for workflow generation.
11
+ * Defaults to `A_FRAME_MODELS.PULSAR` — the architecture model.
12
+ */
13
+ model?: string;
14
+
15
+ /**
16
+ * Additional context hint forwarded to the AI — e.g. "microservices",
17
+ * "monolith", "event-driven".
18
+ */
19
+ context?: string;
20
+
21
+ /**
22
+ * Only consider methods whose owning class's base is in this allowlist.
23
+ * Accepts string names or constructors.
24
+ */
25
+ includeBases?: Array<string | A_TYPES__Ctor<A_Component | A_Fragment>>;
26
+
27
+ /**
28
+ * Exclude methods whose owning class's base is in this denylist.
29
+ */
30
+ excludeBases?: Array<string | A_TYPES__Ctor<A_Component | A_Fragment>>;
31
+
32
+ /**
33
+ * Explicit allowlist of component/fragment names the AI may reference.
34
+ */
35
+ enabledComponents?: Array<string | A_TYPES__Ctor<A_Component | A_Fragment>>;
36
+
37
+ /**
38
+ * Minimum cosine-similarity score (0–1) for a workflow step to be matched
39
+ * to a registered method. Default: `0.7`
40
+ */
41
+ minScore?: number;
42
+
43
+ /**
44
+ * How many server refinement retries before a step is marked unmatched.
45
+ * Default: `3`
46
+ */
47
+ maxRetries?: number;
48
+ };
49
+
50
+
51
+ // ── Init / Serialized ──────────────────────────────────────────────────────────
52
+
53
+ export type A_FrameDynamicFeature_Init = {
54
+ /** Goal or capability driving workflow generation. */
55
+ prompt: string;
56
+ /** Optional generation / filtering options. */
57
+ options?: Partial<A_FrameDynamicFeatureOptions>;
58
+ };
7
59
 
8
60
  export type A_FrameDynamicFeature_Serialized = {
61
+ name: string;
62
+ description?: string;
63
+ metadata?: Record<string, unknown>;
64
+ history: Array<A_FrameDynamicPatch_Serialized>;
65
+ } & A_TYPES__Entity_Serialized;
66
+
67
+
68
+ // ── Feature name union ──────────────────────────────────────────────────────
69
+
70
+ export type A_FrameDynamicFeatureFeatureNames =
71
+ typeof A_FrameDynamicFeatureFeatures[keyof typeof A_FrameDynamicFeatureFeatures];
72
+
73
+
74
+ // ── Domain types ───────────────────────────────────────────────────────────────
75
+
76
+ /**
77
+ * A single parameter in a workflow step — describes what the caller should
78
+ * provide or what the step will produce.
79
+ */
80
+ export type A_FrameDynamicFeatureParam = {
81
+ /** Parameter name (camelCase). */
82
+ name: string;
83
+ /** TypeScript type string, e.g. `"string"`, `"number"`, `"UserEntity"`. */
84
+ type: string;
85
+ /** Human-readable purpose of this parameter. */
86
+ description: string;
87
+ /** Whether this parameter must be provided (`true`) or is optional. */
88
+ required: boolean;
89
+ };
90
+
91
+ /**
92
+ * A single step in the generated workflow definition.
93
+ * Each step corresponds to one method call on a component or fragment.
94
+ */
95
+ export type A_FrameDynamicFeatureStep = {
96
+ /**
97
+ * One-sentence description of this step's purpose — used as the primary
98
+ * key for semantic matching against the A_FrameIndex.
99
+ */
100
+ prompt: string;
101
+ /** Ordered list of input parameters for this step. */
102
+ inputs: A_FrameDynamicFeatureParam[];
103
+ /** Ordered list of output values produced by this step. */
104
+ outputs: A_FrameDynamicFeatureParam[];
105
+ /** @internal Server-computed search vector (consumed during mapping). */
106
+ embedding?: number[];
107
+ };
108
+
109
+ /**
110
+ * Full workflow definition produced by `generate()` or `patch()`.
111
+ */
112
+ export type A_FrameDynamicFeatureDefinition = {
113
+ /**
114
+ * Short title for the workflow, e.g. "User Registration".
115
+ */
116
+ title: string;
117
+ /**
118
+ * Description of what the workflow accomplishes end-to-end,
119
+ * what the caller must supply, and what will be returned.
120
+ */
121
+ description: string;
122
+ /** Ordered sequence of steps that make up the workflow. */
123
+ steps: A_FrameDynamicFeatureStep[];
124
+ /**
125
+ * Supporting components (stateless services / controllers) whose methods
126
+ * are used in the steps. No container grouping — workflows are
127
+ * cross-cutting by nature.
128
+ */
129
+ components: Array<{ prompt: string; embedding?: number[] }>;
130
+ /** Supporting fragments (stateful context objects) referenced in the steps. */
131
+ fragments: Array<{ prompt: string; embedding?: number[] }>;
132
+ /** Supporting entities / domain models referenced in step parameters. */
133
+ entities: Array<{ prompt: string; embedding?: number[]; parameters?: A_FrameDynamicFeatureParam[] }>;
134
+ };
135
+
136
+
137
+ // ── Map types ──────────────────────────────────────────────────────────────────
138
+
139
+ /**
140
+ * Result of matching one workflow step against the A_FrameIndex.
141
+ */
142
+ export type A_FrameDynamicFeatureStepMapEntry = {
143
+ prompt: string;
144
+ inputs: A_FrameDynamicFeatureParam[];
145
+ outputs: A_FrameDynamicFeatureParam[];
146
+ /** Matched class name, or `null` if unresolved. */
147
+ matchedClass: string | null;
148
+ /** Matched method name, or `null` if unresolved. */
149
+ matchedMethod: string | null;
150
+ /** Cosine-similarity score of the best match (0–1). */
151
+ matchScore: number;
152
+ /** Error details when matching failed after all retries. */
153
+ matchError?: { title: string; description: string } | null;
154
+ };
155
+
156
+ /**
157
+ * Result of matching a supporting element (component / fragment / entity)
158
+ * against the A_FrameIndex.
159
+ */
160
+ export type A_FrameDynamicFeatureElementMapEntry = {
161
+ prompt: string;
162
+ matchedClass: string | null;
163
+ matchScore: number;
164
+ matchError?: { title: string; description: string } | null;
165
+ };
166
+
167
+ /**
168
+ * Full map result produced by `map()` after matching every element against
169
+ * the local A_FrameIndex.
170
+ */
171
+ export type A_FrameDynamicFeatureMapResult = {
172
+ steps: A_FrameDynamicFeatureStepMapEntry[];
173
+ components: A_FrameDynamicFeatureElementMapEntry[];
174
+ fragments: A_FrameDynamicFeatureElementMapEntry[];
175
+ entities: A_FrameDynamicFeatureElementMapEntry[];
176
+ };
177
+
178
+
179
+ // ── Wire transport types ───────────────────────────────────────────────────────
180
+
181
+ export interface A_FrameFeatureGenerateResponse {
182
+ definition: A_FrameDynamicFeatureDefinition;
183
+ model: string;
184
+ date: string;
185
+ meta: { server_version: string };
186
+ }
9
187
 
10
- } & A_TYPES__Entity_Serialized
188
+ export interface A_FrameFeaturePatchResponse {
189
+ patchSummary: string;
190
+ definition: A_FrameDynamicFeatureDefinition;
191
+ model: string;
192
+ date: string;
193
+ meta: { server_version: string };
194
+ }
@@ -0,0 +1,33 @@
1
+ import { A_Fragment } from "@adaas/a-concept";
2
+
3
+
4
+ /**
5
+ * Thin context fragment that carries parameters for a single DynamicFeature
6
+ * operation (generate or patch). Injected into the feature execution scope and
7
+ * resolved by channel feature-extension handlers via `@A_Inject`.
8
+ */
9
+ export class A_FrameDynamicFeatureOperation<
10
+ _InputParams = any,
11
+ > extends A_Fragment {
12
+
13
+ protected _meta: Map<string, any> = new Map();
14
+
15
+ constructor(
16
+ params: _InputParams = {} as _InputParams
17
+ ) {
18
+ super({ name: 'a-frame-dynamic-feature-operation-context' });
19
+ this._meta.set('params', params);
20
+ }
21
+
22
+ get params(): _InputParams {
23
+ return this._meta.get('params');
24
+ }
25
+
26
+ get(key: string): any {
27
+ return this._meta.get(key);
28
+ }
29
+
30
+ set(key: string, value: any): void {
31
+ this._meta.set(key, value);
32
+ }
33
+ }
@@ -0,0 +1,99 @@
1
+ import { A_Fragment } from "@adaas/a-concept";
2
+ import {
3
+ A_FrameDynamicFeatureDefinition,
4
+ A_FrameDynamicFeatureElementMapEntry,
5
+ A_FrameDynamicFeatureMapResult,
6
+ A_FrameDynamicFeatureStep,
7
+ A_FrameDynamicFeatureStepMapEntry,
8
+ } from "./A-FrameDynamicFeature.types";
9
+
10
+
11
+ /**
12
+ * Context fragment that accumulates the method/component-mapping results
13
+ * produced by `A_FrameMethodMapper.mapFeature()`.
14
+ *
15
+ * Uses `prompt` as the unique key — same approach as `A_FrameComponentMapIndex`.
16
+ * Call `toResult(definition)` after the mapper finishes to build the fully
17
+ * structured `A_FrameDynamicFeatureMapResult`.
18
+ */
19
+ export class A_FrameMethodMapIndex extends A_Fragment {
20
+
21
+ private _stepEntries: Map<string, A_FrameDynamicFeatureStepMapEntry> = new Map();
22
+ private _elementEntries: Map<string, A_FrameDynamicFeatureElementMapEntry> = new Map();
23
+
24
+ constructor() {
25
+ super({ name: 'a-frame-method-map-index' });
26
+ }
27
+
28
+ // ── Step entries ─────────────────────────────────────────────────────────
29
+
30
+ setStep(entry: A_FrameDynamicFeatureStepMapEntry): void {
31
+ this._stepEntries.set(entry.prompt, entry);
32
+ }
33
+
34
+ getStep(prompt: string): A_FrameDynamicFeatureStepMapEntry | undefined {
35
+ return this._stepEntries.get(prompt);
36
+ }
37
+
38
+ // ── Element entries (components / fragments / entities) ───────────────────
39
+
40
+ setElement(entry: A_FrameDynamicFeatureElementMapEntry): void {
41
+ this._elementEntries.set(entry.prompt, entry);
42
+ }
43
+
44
+ getElement(prompt: string): A_FrameDynamicFeatureElementMapEntry | undefined {
45
+ return this._elementEntries.get(prompt);
46
+ }
47
+
48
+ // ── Accessors ─────────────────────────────────────────────────────────────
49
+
50
+ clear(): void {
51
+ this._stepEntries.clear();
52
+ this._elementEntries.clear();
53
+ }
54
+
55
+ get stepCount(): number { return this._stepEntries.size; }
56
+ get elementCount(): number { return this._elementEntries.size; }
57
+
58
+ get matchedSteps(): A_FrameDynamicFeatureStepMapEntry[] {
59
+ return Array.from(this._stepEntries.values()).filter(e => e.matchedMethod !== null);
60
+ }
61
+
62
+ get unmatchedSteps(): A_FrameDynamicFeatureStepMapEntry[] {
63
+ return Array.from(this._stepEntries.values()).filter(e => e.matchedMethod === null);
64
+ }
65
+
66
+ // ── Result building ───────────────────────────────────────────────────────
67
+
68
+ /**
69
+ * Construct a fully structured `A_FrameDynamicFeatureMapResult` from the
70
+ * accumulated entries and the provided definition.
71
+ */
72
+ toResult(definition: A_FrameDynamicFeatureDefinition): A_FrameDynamicFeatureMapResult {
73
+ const getStep = (step: A_FrameDynamicFeatureStep): A_FrameDynamicFeatureStepMapEntry => {
74
+ const existing = this._stepEntries.get(step.prompt);
75
+ if (existing) return existing;
76
+ return {
77
+ prompt: step.prompt,
78
+ inputs: step.inputs,
79
+ outputs: step.outputs,
80
+ matchedClass: null,
81
+ matchedMethod: null,
82
+ matchScore: 0,
83
+ };
84
+ };
85
+
86
+ const getElement = (el: { prompt: string }): A_FrameDynamicFeatureElementMapEntry => {
87
+ const existing = this._elementEntries.get(el.prompt);
88
+ if (existing) return existing;
89
+ return { prompt: el.prompt, matchedClass: null, matchScore: 0 };
90
+ };
91
+
92
+ return {
93
+ steps: definition.steps.map(getStep),
94
+ components: definition.components.map(getElement),
95
+ fragments: definition.fragments.map(getElement),
96
+ entities: definition.entities.map(getElement),
97
+ };
98
+ }
99
+ }
@@ -0,0 +1,182 @@
1
+ import { A_Caller, A_Component, A_Context, A_Feature, A_Inject, A_Scope } from "@adaas/a-concept";
2
+ import { A_FrameChannel } from "../A-FrameChannel/A-FrameChannel.component";
3
+ import { A_FrameFeatures } from "../A-FrameChannel/A-FrameChannel.constants";
4
+ import { A_FrameChannelRequest } from "../A-FrameChannel/A-FrameChannelRequest.context";
5
+ import { A_FrameIndex } from "../A-FrameIndex/A-FrameIndex.context";
6
+ import { A_FrameVector } from "../A-FrameVector/A-FrameVector.entity";
7
+ import { A_FrameDynamicFeature } from "./A-FrameDynamicFeature.entity";
8
+ import { A_FrameDynamicFeatureFeatures } from "./A-FrameDynamicFeature.constants";
9
+ import { A_FrameDynamicFeatureError } from "./A-FrameDynamicFeature.error";
10
+ import {
11
+ A_FrameDynamicFeatureDefinition,
12
+ A_FrameDynamicFeatureElementMapEntry,
13
+ A_FrameDynamicFeatureStep,
14
+ A_FrameDynamicFeatureStepMapEntry,
15
+ A_FrameFeaturePatchResponse,
16
+ } from "./A-FrameDynamicFeature.types";
17
+ import { A_FrameMethodMapIndex } from "./A-FrameMethodMapIndex.context";
18
+
19
+
20
+ /**
21
+ * Stateless component that implements the `Map` feature for
22
+ * `A_FrameDynamicFeature`.
23
+ *
24
+ * Algorithm:
25
+ * 1. Read `feature.definition` (includes server-computed embeddings on steps
26
+ * and supporting elements).
27
+ * 2. Run cosine-similarity search against `A_FrameIndex` for every step and
28
+ * every supporting element.
29
+ * 3. For steps that remain unmatched, issue a server patch to refine their
30
+ * descriptions (up to `feature.maxRetries` times), then re-match.
31
+ * 4. Mark any still-unmatched steps with a `matchError`.
32
+ * 5. Hydrate the feature with `mapIndex.toResult(def)`.
33
+ */
34
+ export class A_FrameMethodMapper extends A_Component {
35
+
36
+ @A_Feature.Extend({
37
+ name: A_FrameDynamicFeatureFeatures.Map,
38
+ scope: [A_FrameDynamicFeature],
39
+ })
40
+ async mapFeature(
41
+ @A_Inject(A_Caller) feature: A_FrameDynamicFeature,
42
+ @A_Inject(A_FrameMethodMapIndex) mapIndex: A_FrameMethodMapIndex,
43
+ @A_Inject(A_FrameIndex) frameIndex: A_FrameIndex,
44
+ @A_Inject(A_FrameChannel) channel: A_FrameChannel,
45
+ ): Promise<void> {
46
+
47
+ const def = feature.definition;
48
+ if (!def) return;
49
+
50
+ // ── helpers ──────────────────────────────────────────────────────────
51
+
52
+ const tryMatchStep = (
53
+ step: A_FrameDynamicFeatureStep,
54
+ minScore: number,
55
+ ): Pick<A_FrameDynamicFeatureStepMapEntry, 'matchedClass' | 'matchedMethod' | 'matchScore'> => {
56
+ if (!step.embedding?.length) {
57
+ return { matchedClass: null, matchedMethod: null, matchScore: 0 };
58
+ }
59
+ const results = frameIndex.search(new A_FrameVector(step.embedding), { topK: 1 });
60
+ const top = results[0];
61
+ if (top && top.score >= minScore) {
62
+ // Method definitions store name = "methodName" and dependency.name = "ClassName".
63
+ // Class definitions store both name and dependency.name as the class name.
64
+ const matchedClass = top.record.dependency.name;
65
+ const matchedMethod = top.record.name;
66
+ return { matchedClass, matchedMethod, matchScore: top.score };
67
+ }
68
+ return { matchedClass: null, matchedMethod: null, matchScore: top?.score ?? 0 };
69
+ };
70
+
71
+ const tryMatchElement = (
72
+ el: { prompt: string; class?: string; embedding?: number[] },
73
+ minScore: number,
74
+ ): Pick<A_FrameDynamicFeatureElementMapEntry, 'matchedClass' | 'matchScore'> => {
75
+ if (!el.embedding?.length) {
76
+ return { matchedClass: null, matchScore: 0 };
77
+ }
78
+ const results = frameIndex.search(new A_FrameVector(el.embedding), { topK: 1 });
79
+ const top = results[0];
80
+ if (top && top.score >= minScore) {
81
+ return { matchedClass: top.record.name, matchScore: top.score };
82
+ }
83
+ return { matchedClass: null, matchScore: top?.score ?? 0 };
84
+ };
85
+
86
+ const stripEmbeddings = (d: A_FrameDynamicFeatureDefinition): A_FrameDynamicFeatureDefinition => {
87
+ const strip = (el: any): any => { const { embedding, ...rest } = el; return rest; };
88
+ return {
89
+ ...d,
90
+ steps: d.steps.map(strip),
91
+ components: d.components.map(strip),
92
+ fragments: d.fragments.map(strip),
93
+ entities: d.entities.map(strip),
94
+ };
95
+ };
96
+
97
+ const matchAll = (d: A_FrameDynamicFeatureDefinition): void => {
98
+ mapIndex.clear();
99
+ for (const step of d.steps) {
100
+ mapIndex.setStep({
101
+ prompt: step.prompt,
102
+ inputs: step.inputs,
103
+ outputs: step.outputs,
104
+ ...tryMatchStep(step, feature.minScore),
105
+ });
106
+ }
107
+ for (const el of d.components) {
108
+ mapIndex.setElement({ prompt: el.prompt, ...tryMatchElement(el, feature.minScore) });
109
+ }
110
+ for (const el of d.fragments) {
111
+ mapIndex.setElement({ prompt: el.prompt, ...tryMatchElement(el, feature.minScore) });
112
+ }
113
+ for (const el of d.entities) {
114
+ mapIndex.setElement({ prompt: el.prompt, ...tryMatchElement(el, feature.minScore) });
115
+ }
116
+ };
117
+
118
+ // ── initial matching pass ─────────────────────────────────────────────
119
+
120
+ let workingDef = def;
121
+ matchAll(workingDef);
122
+
123
+ // ── retry loop: refine unmatched steps via server patch ───────────────
124
+
125
+ for (let retry = 0; retry < feature.maxRetries; retry++) {
126
+ const unmatchedSteps = workingDef.steps.filter(
127
+ step => step.embedding?.length && mapIndex.getStep(step.prompt)?.matchedMethod === null,
128
+ );
129
+ if (unmatchedSteps.length === 0) break;
130
+
131
+ const refinementInstruction = [
132
+ `The following workflow steps could not be matched to any registered method.`,
133
+ `Please re-describe each step with more specific, method-oriented language:`,
134
+ unmatchedSteps.map(s => `- "${s.prompt}"`).join('\n'),
135
+ ].join('\n');
136
+
137
+ const patchReq = new A_FrameChannelRequest<A_FrameFeaturePatchResponse>(
138
+ 'POST',
139
+ '/api/v1/feature/patch',
140
+ {
141
+ originalPrompt: feature.prompt,
142
+ definition: stripEmbeddings(workingDef),
143
+ patchInstruction: refinementInstruction,
144
+ model: feature.modelName,
145
+ context: feature.contextHint,
146
+ },
147
+ );
148
+
149
+ const patchScope = new A_Scope({
150
+ name: `A_FrameMethodMapper.mapFeature:retry${retry}`,
151
+ fragments: [patchReq],
152
+ }).inherit(A_Context.scope(channel));
153
+
154
+ await channel.call(A_FrameFeatures.Request, patchScope);
155
+ patchScope.destroy();
156
+
157
+ if (!patchReq.response) break;
158
+
159
+ workingDef = patchReq.response.definition;
160
+ matchAll(workingDef);
161
+ }
162
+
163
+ // ── finalize: mark remaining unmatched steps with an error ────────────
164
+
165
+ for (const step of workingDef.steps) {
166
+ const entry = mapIndex.getStep(step.prompt);
167
+ if (entry && entry.matchedMethod === null && step.embedding?.length) {
168
+ mapIndex.setStep({
169
+ ...entry,
170
+ matchError: {
171
+ title: A_FrameDynamicFeatureError.MethodNotFound,
172
+ description: `Unable to match "${step.prompt}" to any registered method after ${feature.maxRetries} retries.`,
173
+ },
174
+ });
175
+ }
176
+ }
177
+
178
+ // ── hydrate the feature with the map result ───────────────────────────
179
+
180
+ feature.hydrateFromMap(mapIndex.toResult(workingDef));
181
+ }
182
+ }
@@ -1,2 +1,7 @@
1
+ export * from './A-FrameDynamicFeature.constants';
1
2
  export * from './A-FrameDynamicFeature.entity';
2
- export * from './A-FrameDynamicFeature.types';
3
+ export * from './A-FrameDynamicFeature.types';
4
+ export * from './A-FrameDynamicFeature.error';
5
+ export * from './A-FrameDynamicFeatureOperation.context';
6
+ export * from './A-FrameMethodMapIndex.context';
7
+ export * from './A-FrameMethodMapper.component';
@@ -0,0 +1,2 @@
1
+ export * from './A-FrameDynamicPatch.entity';
2
+ export * from './A-FrameDynamicPatch.types';
@@ -0,0 +1,99 @@
1
+ import { A_Fragment } from "@adaas/a-concept";
2
+ import {
3
+ A_FrameComponentMapEntry,
4
+ A_FrameComponentMapResult,
5
+ A_FrameDynamicStructureDefinition,
6
+ A_FrameDynamicStructureDefinitionEntity,
7
+ } from "./A-FrameDynamicStructure.types";
8
+
9
+
10
+ /**
11
+ * Context fragment that accumulates component-mapping results produced by
12
+ * `A_FrameComponentMapper.mapStructure()`.
13
+ *
14
+ * Uses a flat `prompt → A_FrameComponentMapEntry` map so lookups are O(1).
15
+ * Call `toResult(definition)` after the mapper has finished to build the
16
+ * structured `A_FrameComponentMapResult` that mirrors the definition layout.
17
+ */
18
+ export class A_FrameComponentMapIndex extends A_Fragment {
19
+
20
+ private _entries: Map<string, A_FrameComponentMapEntry> = new Map();
21
+
22
+ constructor() {
23
+ super({ name: 'a-frame-component-map-index' });
24
+ }
25
+
26
+ // ── Basic mutation ───────────────────────────────────────────────────────
27
+
28
+ /**
29
+ * Store (or overwrite) a map entry for the element identified by `entry.prompt`.
30
+ */
31
+ set(entry: A_FrameComponentMapEntry): void {
32
+ this._entries.set(entry.prompt, entry);
33
+ }
34
+
35
+ /**
36
+ * Retrieve the map entry for the given prompt, or `undefined` if not yet stored.
37
+ */
38
+ get(prompt: string): A_FrameComponentMapEntry | undefined {
39
+ return this._entries.get(prompt);
40
+ }
41
+
42
+ /** Remove all stored entries. */
43
+ clear(): void {
44
+ this._entries.clear();
45
+ }
46
+
47
+ // ── Accessors ────────────────────────────────────────────────────────────
48
+
49
+ /** Total number of stored entries. */
50
+ get size(): number {
51
+ return this._entries.size;
52
+ }
53
+
54
+ /** All stored entries in insertion order. */
55
+ list(): A_FrameComponentMapEntry[] {
56
+ return Array.from(this._entries.values());
57
+ }
58
+
59
+ /** Entries that have been successfully matched to a registered class. */
60
+ get matched(): A_FrameComponentMapEntry[] {
61
+ return this.list().filter(e => e.matchedClass !== null);
62
+ }
63
+
64
+ /** Entries where no matching registered class was found. */
65
+ get unmatched(): A_FrameComponentMapEntry[] {
66
+ return this.list().filter(e => e.matchedClass === null);
67
+ }
68
+
69
+ // ── Result building ──────────────────────────────────────────────────────
70
+
71
+ /**
72
+ * Construct a fully structured `A_FrameComponentMapResult` from the
73
+ * accumulated entries and the provided definition.
74
+ *
75
+ * For each element in the definition the method looks up its entry by
76
+ * prompt. If no entry exists (element had no server embedding), a default
77
+ * unmatched entry is generated so the result shape always matches the
78
+ * definition shape.
79
+ */
80
+ toResult(definition: A_FrameDynamicStructureDefinition): A_FrameComponentMapResult {
81
+ const getEntry = (el: A_FrameDynamicStructureDefinitionEntity): A_FrameComponentMapEntry => {
82
+ const existing = this._entries.get(el.prompt);
83
+ if (existing) return existing;
84
+ return { prompt: el.prompt, role: el.role, class: el.class, matchedClass: null, matchScore: 0 };
85
+ };
86
+
87
+ return {
88
+ containers: definition.containers.map(c => ({
89
+ ...getEntry(c),
90
+ components: (c.components ?? []).map(getEntry),
91
+ fragments: (c.fragments ?? []).map(getEntry),
92
+ entities: (c.entities ?? []).map(getEntry),
93
+ })),
94
+ components: definition.components.map(getEntry),
95
+ fragments: definition.fragments.map(getEntry),
96
+ entities: definition.entities.map(getEntry),
97
+ };
98
+ }
99
+ }