@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.
- package/.conf/tsconfig.browser.json +7 -1
- package/.conf/tsconfig.node.json +7 -1
- package/dist/browser/A-FrameBrowserStorageBlobs.context-CZTTvpn2.d.mts +53 -0
- package/dist/browser/A-FrameBrowserStorageBlobs.context-CaGTyatz.d.mts +40 -0
- package/dist/browser/A-FrameBrowserStorageBlobs.context-DjeEH8cn.d.mts +53 -0
- package/dist/browser/A-FrameBrowserStorageBlobs.context-vCsuTea9.d.mts +40 -0
- package/dist/browser/A-FrameBundle.types-LzfgdMiQ.d.mts +71 -0
- package/dist/browser/A-FrameChannel.component-4mTNctXL.d.mts +704 -0
- package/dist/browser/A-FrameChannel.types-BXEKJK9t.d.mts +205 -0
- package/dist/browser/A-FrameChannel.types-Ba3wgUZj.d.mts +199 -0
- package/dist/browser/A-FrameChannel.types-BfINhQZe.d.mts +145 -0
- package/dist/browser/A-FrameChannel.types-DfacgYL1.d.mts +199 -0
- package/dist/browser/A-FrameCompletion.entity-Dzy9sIa8.d.mts +72 -0
- package/dist/browser/A-FrameDefinition.entity-C1aK-gdl.d.mts +370 -0
- package/dist/browser/A-FrameDefinition.entity-CKPXsarS.d.mts +358 -0
- package/dist/browser/A-FrameDefinition.entity-yA0GsBoe.d.mts +143 -0
- package/dist/browser/A-FrameDefinition.types-BT02yAhQ.d.mts +232 -0
- package/dist/browser/A-FrameDynamicContentOperation.context-CoViNb19.d.mts +297 -0
- package/dist/browser/A-FrameDynamicContentOperation.context-Dd7Lb7X2.d.mts +266 -0
- package/dist/browser/A-FrameDynamicPatch.entity-BRuF1tqs.d.mts +29 -0
- package/dist/browser/A-FrameDynamicStructure.entity-DMvI_EPT.d.mts +210 -0
- package/dist/browser/A-FrameDynamicStructure.entity-DxkPP9mR.d.mts +235 -0
- package/dist/browser/A-FrameEnv.types-DnK-CYVk.d.mts +21 -0
- package/dist/browser/A-FrameNamespace.entity-BDg1FUgo.d.mts +136 -0
- package/dist/browser/A-FrameSchema.entity-DjYIhsoj.d.mts +141 -0
- package/dist/browser/A-FrameSegment.entity-D1xjjWvG.d.mts +161 -0
- package/dist/browser/A-FrameSegment.entity-D7Aj39Wh.d.mts +146 -0
- package/dist/browser/bundle.d.mts +6 -2
- package/dist/browser/bundle.mjs +1 -1
- package/dist/browser/bundle.mjs.map +1 -1
- package/dist/browser/channel.d.mts +51 -74
- package/dist/browser/channel.mjs +1 -2
- package/dist/browser/channel.mjs.map +1 -1
- package/dist/browser/chunk-2RNFZSBL.mjs +2 -0
- package/dist/browser/chunk-2RNFZSBL.mjs.map +1 -0
- package/dist/browser/chunk-46LRNZRG.mjs +2 -0
- package/dist/browser/chunk-46LRNZRG.mjs.map +1 -0
- package/dist/browser/chunk-52HFO3OY.mjs +2 -0
- package/dist/browser/chunk-52HFO3OY.mjs.map +1 -0
- package/dist/browser/chunk-643KGQKR.mjs +3 -0
- package/dist/browser/chunk-643KGQKR.mjs.map +1 -0
- package/dist/browser/chunk-66BBIZAM.mjs +3 -0
- package/dist/browser/chunk-66BBIZAM.mjs.map +1 -0
- package/dist/browser/chunk-6NPQURSO.mjs +2 -0
- package/dist/browser/chunk-6NPQURSO.mjs.map +1 -0
- package/dist/browser/chunk-6WAOMX7M.mjs +2 -0
- package/dist/browser/chunk-6WAOMX7M.mjs.map +1 -0
- package/dist/browser/chunk-77HU5SRQ.mjs +2 -0
- package/dist/browser/chunk-77HU5SRQ.mjs.map +1 -0
- package/dist/browser/chunk-AET6XULU.mjs +2 -0
- package/dist/browser/chunk-AET6XULU.mjs.map +1 -0
- package/dist/browser/chunk-BIBPE2GT.mjs +3 -0
- package/dist/browser/chunk-BIBPE2GT.mjs.map +1 -0
- package/dist/browser/chunk-CDJKU4DK.mjs +2 -0
- package/dist/browser/chunk-CDJKU4DK.mjs.map +1 -0
- package/dist/browser/chunk-CT67Y46H.mjs +3 -0
- package/dist/browser/chunk-CT67Y46H.mjs.map +1 -0
- package/dist/browser/chunk-EFC7OUNO.mjs +2 -0
- package/dist/browser/chunk-EFC7OUNO.mjs.map +1 -0
- package/dist/browser/chunk-EJIX7H7A.mjs +2 -0
- package/dist/browser/chunk-EJIX7H7A.mjs.map +1 -0
- package/dist/browser/chunk-FHJ5ATND.mjs +3 -0
- package/dist/browser/chunk-FHJ5ATND.mjs.map +1 -0
- package/dist/browser/chunk-FVH2EEVP.mjs +3 -0
- package/dist/browser/chunk-FVH2EEVP.mjs.map +1 -0
- package/dist/browser/chunk-G6ULYKSU.mjs +2 -0
- package/dist/browser/chunk-G6ULYKSU.mjs.map +1 -0
- package/dist/browser/chunk-G7MKGKG5.mjs +2 -0
- package/dist/browser/chunk-G7MKGKG5.mjs.map +1 -0
- package/dist/browser/chunk-GOADBDTE.mjs +2 -0
- package/dist/browser/chunk-GOADBDTE.mjs.map +1 -0
- package/dist/browser/chunk-GOMJPGVB.mjs +3 -0
- package/dist/browser/chunk-GOMJPGVB.mjs.map +1 -0
- package/dist/browser/chunk-INQV5UZA.mjs +2 -0
- package/dist/browser/chunk-INQV5UZA.mjs.map +1 -0
- package/dist/browser/chunk-INXPVBTZ.mjs +2 -0
- package/dist/browser/chunk-INXPVBTZ.mjs.map +1 -0
- package/dist/browser/chunk-KFMVTZ7T.mjs +2 -0
- package/dist/browser/chunk-KFMVTZ7T.mjs.map +1 -0
- package/dist/browser/chunk-LK6C7C3S.mjs +2 -0
- package/dist/browser/chunk-LK6C7C3S.mjs.map +1 -0
- package/dist/browser/chunk-LOGRQOWP.mjs +3 -0
- package/dist/browser/chunk-LOGRQOWP.mjs.map +1 -0
- package/dist/browser/chunk-LZACYSUC.mjs +3 -0
- package/dist/browser/chunk-LZACYSUC.mjs.map +1 -0
- package/dist/browser/chunk-NTOIVRX3.mjs +2 -0
- package/dist/browser/chunk-NTOIVRX3.mjs.map +1 -0
- package/dist/browser/chunk-OES2N3X7.mjs +3 -0
- package/dist/browser/chunk-OES2N3X7.mjs.map +1 -0
- package/dist/browser/chunk-OFKV5GNB.mjs +1 -1
- package/dist/browser/chunk-OFKV5GNB.mjs.map +1 -1
- package/dist/browser/chunk-OVLM5A32.mjs +3 -0
- package/dist/browser/chunk-OVLM5A32.mjs.map +1 -0
- package/dist/browser/chunk-QATIN7CO.mjs +1 -1
- package/dist/browser/chunk-QATIN7CO.mjs.map +1 -1
- package/dist/browser/chunk-QOL7CAUZ.mjs +2 -0
- package/dist/browser/chunk-QOL7CAUZ.mjs.map +1 -0
- package/dist/browser/chunk-RCB3PX4V.mjs +2 -0
- package/dist/browser/chunk-RCB3PX4V.mjs.map +1 -0
- package/dist/browser/chunk-RWQSCROK.mjs +3 -0
- package/dist/browser/chunk-RWQSCROK.mjs.map +1 -0
- package/dist/browser/chunk-TIAUMK2X.mjs +2 -0
- package/dist/browser/chunk-TIAUMK2X.mjs.map +1 -0
- package/dist/browser/chunk-TQPC5MYM.mjs +3 -0
- package/dist/browser/chunk-TQPC5MYM.mjs.map +1 -0
- package/dist/browser/chunk-UNIKTCXL.mjs +3 -0
- package/dist/browser/chunk-UNIKTCXL.mjs.map +1 -0
- package/dist/browser/chunk-UULJJ5C5.mjs +3 -0
- package/dist/browser/chunk-UULJJ5C5.mjs.map +1 -0
- package/dist/browser/chunk-VSSANMPF.mjs +2 -0
- package/dist/browser/chunk-VSSANMPF.mjs.map +1 -0
- package/dist/browser/chunk-VW2BZYNY.mjs +2 -0
- package/dist/browser/chunk-VW2BZYNY.mjs.map +1 -0
- package/dist/browser/chunk-WAXBOWM6.mjs +3 -0
- package/dist/browser/chunk-WAXBOWM6.mjs.map +1 -0
- package/dist/browser/chunk-WXCQCHAX.mjs +2 -0
- package/dist/browser/chunk-WXCQCHAX.mjs.map +1 -0
- package/dist/browser/chunk-XKKBIIZG.mjs +3 -0
- package/dist/browser/chunk-XKKBIIZG.mjs.map +1 -0
- package/dist/browser/chunk-XR7FVA5M.mjs +3 -0
- package/dist/browser/chunk-XR7FVA5M.mjs.map +1 -0
- package/dist/browser/chunk-YQJFTBGV.mjs +3 -0
- package/dist/browser/chunk-YQJFTBGV.mjs.map +1 -0
- package/dist/browser/chunk-YTAMZDWC.mjs +3 -0
- package/dist/browser/chunk-YTAMZDWC.mjs.map +1 -0
- package/dist/browser/chunk-ZEONOTRL.mjs +2 -0
- package/dist/browser/chunk-ZEONOTRL.mjs.map +1 -0
- package/dist/browser/completion.d.mts +10 -0
- package/dist/browser/completion.mjs +2 -0
- package/dist/browser/completion.mjs.map +1 -0
- package/dist/browser/core.d.mts +8 -7
- package/dist/browser/core.mjs +1 -1
- package/dist/browser/core.mjs.map +1 -1
- package/dist/browser/credentials.d.mts +74 -0
- package/dist/browser/credentials.mjs +2 -0
- package/dist/browser/credentials.mjs.map +1 -0
- package/dist/browser/definition.d.mts +3 -2
- package/dist/browser/definition.mjs +1 -1
- package/dist/browser/dynamic-content.d.mts +13 -0
- package/dist/browser/dynamic-content.mjs +2 -0
- package/dist/browser/dynamic-content.mjs.map +1 -0
- package/dist/browser/dynamic-feature.d.mts +66 -6
- package/dist/browser/dynamic-feature.mjs +3 -1
- package/dist/browser/dynamic-feature.mjs.map +1 -1
- package/dist/browser/dynamic-structure.d.mts +77 -3
- package/dist/browser/dynamic-structure.mjs +1 -1
- package/dist/browser/dynamic-structure.mjs.map +1 -1
- package/dist/browser/env.d.mts +16 -2
- package/dist/browser/env.mjs +1 -1
- package/dist/browser/frame-index.d.mts +70 -9
- package/dist/browser/frame-index.mjs +1 -1
- package/dist/browser/models.d.mts +64 -0
- package/dist/browser/models.mjs +2 -0
- package/dist/browser/models.mjs.map +1 -0
- package/dist/browser/namespace.d.mts +1 -1
- package/dist/browser/namespace.mjs +1 -1
- package/dist/browser/schema.d.mts +10 -0
- package/dist/browser/schema.mjs +2 -0
- package/dist/browser/schema.mjs.map +1 -0
- package/dist/browser/segment.d.mts +13 -0
- package/dist/browser/segment.mjs +2 -0
- package/dist/browser/segment.mjs.map +1 -0
- package/dist/browser/storage.d.mts +13 -7
- package/dist/browser/storage.mjs +1 -1
- package/dist/browser/vector.d.mts +7 -0
- package/dist/browser/vector.mjs +1 -1
- package/dist/cli.cjs +5593 -0
- package/dist/cli.cjs.map +1 -0
- package/dist/node/A-FrameChannel.component--YErPxf4.d.mts +97 -0
- package/dist/node/A-FrameChannel.component-BjgqMh1B.d.ts +97 -0
- package/dist/node/A-FrameChannel.component-C0O3TaRD.d.ts +679 -0
- package/dist/node/A-FrameChannel.component-CgBZYBz0.d.mts +379 -0
- package/dist/node/A-FrameChannel.component-CkZserv3.d.ts +97 -0
- package/dist/node/A-FrameChannel.component-DMA-3sUB.d.mts +679 -0
- package/dist/node/A-FrameChannel.component-DYV8omYR.d.ts +379 -0
- package/dist/node/A-FrameChannel.component-DwgYNfFn.d.mts +97 -0
- package/dist/node/A-FrameChannel.types-B3_xWKEO.d.mts +151 -0
- package/dist/node/A-FrameChannel.types-BGcVXTqa.d.ts +205 -0
- package/dist/node/A-FrameChannel.types-Boi8QqDK.d.mts +205 -0
- package/dist/node/A-FrameChannel.types-BsE6bNky.d.mts +205 -0
- package/dist/node/A-FrameChannel.types-C-gxXl8m.d.ts +151 -0
- package/dist/node/A-FrameChannel.types-DD2B11rf.d.ts +205 -0
- package/dist/node/A-FrameChannel.types-DYMgRiCF.d.mts +205 -0
- package/dist/node/A-FrameChannel.types-DwyZRsOy.d.ts +205 -0
- package/dist/node/A-FrameCompletion.entity-Brx11JMp.d.ts +72 -0
- package/dist/node/A-FrameCompletion.entity-Dzy9sIa8.d.mts +72 -0
- package/dist/node/A-FrameDefinition.entity-BIF0sclD.d.ts +370 -0
- package/dist/node/A-FrameDefinition.entity-Bt9ua6cn.d.ts +358 -0
- package/dist/node/A-FrameDefinition.entity-C0kzaGJ0.d.ts +143 -0
- package/dist/node/A-FrameDefinition.entity-C1aK-gdl.d.mts +370 -0
- package/dist/node/A-FrameDefinition.entity-CKPXsarS.d.mts +358 -0
- package/dist/node/A-FrameDefinition.entity-yA0GsBoe.d.mts +143 -0
- package/dist/node/A-FrameDefinition.types-BA_pLGpo.d.ts +232 -0
- package/dist/node/A-FrameDefinition.types-BT02yAhQ.d.mts +232 -0
- package/dist/node/A-FrameDynamicContentOperation.context-C_aH1gEn.d.ts +297 -0
- package/dist/node/A-FrameDynamicContentOperation.context-CoViNb19.d.mts +297 -0
- package/dist/node/A-FrameDynamicContentOperation.context-DRqH2c3o.d.ts +266 -0
- package/dist/node/A-FrameDynamicContentOperation.context-Dd7Lb7X2.d.mts +266 -0
- package/dist/node/A-FrameDynamicPatch.entity-BRuF1tqs.d.mts +29 -0
- package/dist/node/A-FrameDynamicPatch.entity-BRuF1tqs.d.ts +29 -0
- package/dist/node/A-FrameDynamicStructure.entity-BVCbolMd.d.ts +210 -0
- package/dist/node/A-FrameDynamicStructure.entity-DMvI_EPT.d.mts +210 -0
- package/dist/node/A-FrameDynamicStructure.entity-DxkPP9mR.d.mts +235 -0
- package/dist/node/A-FrameDynamicStructure.entity-DxkPP9mR.d.ts +235 -0
- package/dist/node/A-FrameLogger.component.env-node-DIDBeuiz.d.mts +114 -0
- package/dist/node/A-FrameLogger.component.env-node-DIDBeuiz.d.ts +114 -0
- package/dist/node/A-FrameNamespace.entity-BDg1FUgo.d.mts +136 -0
- package/dist/node/A-FrameNamespace.entity-HDXcLGcS.d.ts +136 -0
- package/dist/node/A-FrameSchema.entity-DjYIhsoj.d.mts +141 -0
- package/dist/node/A-FrameSchema.entity-DjYIhsoj.d.ts +141 -0
- package/dist/node/A-FrameSegment.entity-C0izuOmC.d.ts +161 -0
- package/dist/node/A-FrameSegment.entity-CMCgFCWU.d.ts +146 -0
- package/dist/node/A-FrameSegment.entity-D1xjjWvG.d.mts +161 -0
- package/dist/node/A-FrameSegment.entity-D7Aj39Wh.d.mts +146 -0
- package/dist/node/A-FrameStorage.component-BnNKzvpY.d.mts +107 -0
- package/dist/node/A-FrameStorage.component-CDztogHV.d.mts +107 -0
- package/dist/node/A-FrameStorage.component-CW0YgKDI.d.mts +107 -0
- package/dist/node/A-FrameStorage.component-D4UEkIBx.d.mts +107 -0
- package/dist/node/A-FrameStorage.component-DV_jwK6r.d.ts +107 -0
- package/dist/node/A-FrameStorage.component-Di4EvbtC.d.ts +107 -0
- package/dist/node/A-FrameStorage.component-emIH1a1M.d.ts +107 -0
- package/dist/node/A-FrameStorage.component-y-JPiIQ4.d.ts +107 -0
- package/dist/node/bundle.cjs +66 -21
- package/dist/node/bundle.cjs.map +1 -1
- package/dist/node/bundle.d.mts +88 -24
- package/dist/node/bundle.d.ts +88 -24
- package/dist/node/bundle.mjs +65 -20
- package/dist/node/bundle.mjs.map +1 -1
- package/dist/node/channel.cjs +33 -26
- package/dist/node/channel.d.mts +10 -6
- package/dist/node/channel.d.ts +10 -6
- package/dist/node/channel.mjs +13 -6
- package/dist/node/chunk-2HUSP34L.mjs +55 -0
- package/dist/node/chunk-2HUSP34L.mjs.map +1 -0
- package/dist/node/chunk-2KXGI2E5.cjs +474 -0
- package/dist/node/chunk-2KXGI2E5.cjs.map +1 -0
- package/dist/node/chunk-2OQMOIR5.mjs +170 -0
- package/dist/node/chunk-2OQMOIR5.mjs.map +1 -0
- package/dist/node/chunk-2UI7RJ4Q.mjs +207 -0
- package/dist/node/chunk-2UI7RJ4Q.mjs.map +1 -0
- package/dist/node/chunk-3SLICJ3L.cjs +265 -0
- package/dist/node/chunk-3SLICJ3L.cjs.map +1 -0
- package/dist/node/chunk-3ZDHQOIU.cjs +92 -0
- package/dist/node/chunk-3ZDHQOIU.cjs.map +1 -0
- package/dist/node/chunk-5BKCX2RO.mjs +33 -0
- package/dist/node/chunk-5BKCX2RO.mjs.map +1 -0
- package/dist/node/chunk-5NCGXLP2.mjs +6 -0
- package/dist/node/chunk-5NCGXLP2.mjs.map +1 -0
- package/dist/node/chunk-5OTXZ7BB.mjs +53 -0
- package/dist/node/chunk-5OTXZ7BB.mjs.map +1 -0
- package/dist/node/chunk-5PYIATGT.mjs +469 -0
- package/dist/node/chunk-5PYIATGT.mjs.map +1 -0
- package/dist/node/chunk-64QCZG53.cjs +57 -0
- package/dist/node/chunk-64QCZG53.cjs.map +1 -0
- package/dist/node/chunk-652OEICJ.cjs +4 -0
- package/dist/node/chunk-652OEICJ.cjs.map +1 -0
- package/dist/node/chunk-674ZX6XJ.mjs +187 -0
- package/dist/node/chunk-674ZX6XJ.mjs.map +1 -0
- package/dist/node/chunk-6ID2IXYX.mjs +6 -0
- package/dist/node/chunk-6ID2IXYX.mjs.map +1 -0
- package/dist/node/chunk-6KAGWGTE.mjs +529 -0
- package/dist/node/chunk-6KAGWGTE.mjs.map +1 -0
- package/dist/node/chunk-7EM3Q7HA.mjs +655 -0
- package/dist/node/chunk-7EM3Q7HA.mjs.map +1 -0
- package/dist/node/chunk-7MVVMISA.cjs +293 -0
- package/dist/node/chunk-7MVVMISA.cjs.map +1 -0
- package/dist/node/chunk-7NSLGCAZ.mjs +1395 -0
- package/dist/node/chunk-7NSLGCAZ.mjs.map +1 -0
- package/dist/node/chunk-7OLLATCC.mjs +1289 -0
- package/dist/node/chunk-7OLLATCC.mjs.map +1 -0
- package/dist/node/chunk-7SEZMRLI.cjs +183 -0
- package/dist/node/chunk-7SEZMRLI.cjs.map +1 -0
- package/dist/node/chunk-A4CVDMSV.mjs +608 -0
- package/dist/node/chunk-A4CVDMSV.mjs.map +1 -0
- package/dist/node/chunk-A7CJIUYY.cjs +4 -0
- package/dist/node/chunk-A7CJIUYY.cjs.map +1 -0
- package/dist/node/chunk-ALFFUJ2J.mjs +163 -0
- package/dist/node/chunk-ALFFUJ2J.mjs.map +1 -0
- package/dist/node/chunk-AMMQ76RJ.mjs +179 -0
- package/dist/node/chunk-AMMQ76RJ.mjs.map +1 -0
- package/dist/node/chunk-AUKWKGVA.cjs +688 -0
- package/dist/node/chunk-AUKWKGVA.cjs.map +1 -0
- package/dist/node/chunk-AY6UMDWD.cjs +270 -0
- package/dist/node/chunk-AY6UMDWD.cjs.map +1 -0
- package/dist/node/chunk-B7ZDJXD3.cjs +1 -1
- package/dist/node/chunk-B7ZDJXD3.cjs.map +1 -1
- package/dist/node/chunk-BBYOL3LM.cjs +1308 -0
- package/dist/node/chunk-BBYOL3LM.cjs.map +1 -0
- package/dist/node/chunk-BINGAHFW.cjs +1308 -0
- package/dist/node/chunk-BINGAHFW.cjs.map +1 -0
- package/dist/node/chunk-BSBY37MG.cjs +55 -0
- package/dist/node/chunk-BSBY37MG.cjs.map +1 -0
- package/dist/node/chunk-BWX7HFTH.cjs +209 -0
- package/dist/node/chunk-BWX7HFTH.cjs.map +1 -0
- package/dist/node/chunk-C37B34MH.cjs +188 -0
- package/dist/node/chunk-C37B34MH.cjs.map +1 -0
- package/dist/node/chunk-C6BBKHQG.cjs +250 -0
- package/dist/node/chunk-C6BBKHQG.cjs.map +1 -0
- package/dist/node/chunk-CLCAS67N.cjs +8 -0
- package/dist/node/chunk-CLCAS67N.cjs.map +1 -0
- package/dist/node/chunk-CNU3CRTR.mjs +43 -0
- package/dist/node/chunk-CNU3CRTR.mjs.map +1 -0
- package/dist/node/chunk-CV5FPKU6.mjs +6 -0
- package/dist/node/chunk-CV5FPKU6.mjs.map +1 -0
- package/dist/node/chunk-CZYOAFIR.mjs +129 -0
- package/dist/node/chunk-CZYOAFIR.mjs.map +1 -0
- package/dist/node/chunk-D2HTYEJZ.cjs +209 -0
- package/dist/node/chunk-D2HTYEJZ.cjs.map +1 -0
- package/dist/node/chunk-EMLZZPOT.cjs +1446 -0
- package/dist/node/chunk-EMLZZPOT.cjs.map +1 -0
- package/dist/node/chunk-EOIXXXBV.cjs +55 -0
- package/dist/node/chunk-EOIXXXBV.cjs.map +1 -0
- package/dist/node/chunk-F46TSY2K.cjs +541 -0
- package/dist/node/chunk-F46TSY2K.cjs.map +1 -0
- package/dist/node/chunk-F4UCOZW5.mjs +1 -1
- package/dist/node/chunk-F4UCOZW5.mjs.map +1 -1
- package/dist/node/chunk-F64CK4NI.mjs +53 -0
- package/dist/node/chunk-F64CK4NI.mjs.map +1 -0
- package/dist/node/chunk-FAV62EUG.cjs +35 -0
- package/dist/node/chunk-FAV62EUG.cjs.map +1 -0
- package/dist/node/chunk-GHSPKZUN.mjs +529 -0
- package/dist/node/chunk-GHSPKZUN.mjs.map +1 -0
- package/dist/node/chunk-GRNVK7DW.mjs +97 -0
- package/dist/node/chunk-GRNVK7DW.mjs.map +1 -0
- package/dist/node/chunk-GRR6NNWY.cjs +688 -0
- package/dist/node/chunk-GRR6NNWY.cjs.map +1 -0
- package/dist/node/chunk-H5VGRPD5.cjs +8 -0
- package/dist/node/chunk-H5VGRPD5.cjs.map +1 -0
- package/dist/node/chunk-HAMDDCPS.cjs +8 -0
- package/dist/node/chunk-HAMDDCPS.cjs.map +1 -0
- package/dist/node/chunk-HAORARSB.cjs +75 -0
- package/dist/node/chunk-HAORARSB.cjs.map +1 -0
- package/dist/node/chunk-HELNAM5Y.cjs +8 -0
- package/dist/node/chunk-HELNAM5Y.cjs.map +1 -0
- package/dist/node/chunk-HET6L5PD.mjs +530 -0
- package/dist/node/chunk-HET6L5PD.mjs.map +1 -0
- package/dist/node/chunk-HI5SEX53.mjs +264 -0
- package/dist/node/chunk-HI5SEX53.mjs.map +1 -0
- package/dist/node/chunk-HZGFXE4Q.mjs +6 -0
- package/dist/node/chunk-HZGFXE4Q.mjs.map +1 -0
- package/dist/node/chunk-IAL2NK2V.mjs +73 -0
- package/dist/node/chunk-IAL2NK2V.mjs.map +1 -0
- package/dist/node/chunk-IHELFDCW.mjs +327 -0
- package/dist/node/chunk-IHELFDCW.mjs.map +1 -0
- package/dist/node/chunk-ILD6OSYW.mjs +966 -0
- package/dist/node/chunk-ILD6OSYW.mjs.map +1 -0
- package/dist/node/chunk-IP6DFAO7.mjs +264 -0
- package/dist/node/chunk-IP6DFAO7.mjs.map +1 -0
- package/dist/node/chunk-IYEDO7OQ.cjs +276 -0
- package/dist/node/chunk-IYEDO7OQ.cjs.map +1 -0
- package/dist/node/chunk-JFPGFPQD.mjs +1413 -0
- package/dist/node/chunk-JFPGFPQD.mjs.map +1 -0
- package/dist/node/chunk-JHZGTVYF.cjs +999 -0
- package/dist/node/chunk-JHZGTVYF.cjs.map +1 -0
- package/dist/node/chunk-JN3UJBUH.mjs +608 -0
- package/dist/node/chunk-JN3UJBUH.mjs.map +1 -0
- package/dist/node/chunk-JNPDXCCN.mjs +530 -0
- package/dist/node/chunk-JNPDXCCN.mjs.map +1 -0
- package/dist/node/chunk-JQBYDEMW.mjs +1 -1
- package/dist/node/chunk-JQBYDEMW.mjs.map +1 -1
- package/dist/node/chunk-JQJ7N4NL.cjs +267 -0
- package/dist/node/chunk-JQJ7N4NL.cjs.map +1 -0
- package/dist/node/chunk-K4AJBPPY.cjs +174 -0
- package/dist/node/chunk-K4AJBPPY.cjs.map +1 -0
- package/dist/node/chunk-K7SXPJPK.cjs +131 -0
- package/dist/node/chunk-K7SXPJPK.cjs.map +1 -0
- package/dist/node/chunk-KFW4GE7H.mjs +1289 -0
- package/dist/node/chunk-KFW4GE7H.mjs.map +1 -0
- package/dist/node/chunk-KKL2DF2D.cjs +518 -0
- package/dist/node/chunk-KKL2DF2D.cjs.map +1 -0
- package/dist/node/chunk-KKMKQGTR.cjs +620 -0
- package/dist/node/chunk-KKMKQGTR.cjs.map +1 -0
- package/dist/node/chunk-KNTO7FCZ.mjs +207 -0
- package/dist/node/chunk-KNTO7FCZ.mjs.map +1 -0
- package/dist/node/chunk-KTKVW3PH.mjs +286 -0
- package/dist/node/chunk-KTKVW3PH.mjs.map +1 -0
- package/dist/node/chunk-KZPSF32W.mjs +33 -0
- package/dist/node/chunk-KZPSF32W.mjs.map +1 -0
- package/dist/node/chunk-LWKFCMA7.mjs +129 -0
- package/dist/node/chunk-LWKFCMA7.mjs.map +1 -0
- package/dist/node/chunk-M2ZSE6YJ.mjs +512 -0
- package/dist/node/chunk-M2ZSE6YJ.mjs.map +1 -0
- package/dist/node/chunk-M6DJYGDO.cjs +167 -0
- package/dist/node/chunk-M6DJYGDO.cjs.map +1 -0
- package/dist/node/chunk-MAHKDTOQ.mjs +3 -0
- package/dist/node/chunk-MAHKDTOQ.mjs.map +1 -0
- package/dist/node/chunk-MM2R2OM6.cjs +541 -0
- package/dist/node/chunk-MM2R2OM6.cjs.map +1 -0
- package/dist/node/chunk-MSOD5UQH.cjs +45 -0
- package/dist/node/chunk-MSOD5UQH.cjs.map +1 -0
- package/dist/node/chunk-MVAWR76Q.cjs +276 -0
- package/dist/node/chunk-MVAWR76Q.cjs.map +1 -0
- package/dist/node/chunk-MXUO7OR5.cjs +97 -0
- package/dist/node/chunk-MXUO7OR5.cjs.map +1 -0
- package/dist/node/chunk-N4THTV6P.cjs +131 -0
- package/dist/node/chunk-N4THTV6P.cjs.map +1 -0
- package/dist/node/chunk-NIXKAQVP.cjs +1 -1
- package/dist/node/chunk-NIXKAQVP.cjs.map +1 -1
- package/dist/node/chunk-NUPXUUPM.cjs +1428 -0
- package/dist/node/chunk-NUPXUUPM.cjs.map +1 -0
- package/dist/node/chunk-NWOUVAIS.cjs +45 -0
- package/dist/node/chunk-NWOUVAIS.cjs.map +1 -0
- package/dist/node/chunk-OK7I5OQ3.mjs +89 -0
- package/dist/node/chunk-OK7I5OQ3.mjs.map +1 -0
- package/dist/node/chunk-OMGYXCFM.mjs +248 -0
- package/dist/node/chunk-OMGYXCFM.mjs.map +1 -0
- package/dist/node/chunk-OYC6L5NX.mjs +6 -0
- package/dist/node/chunk-OYC6L5NX.mjs.map +1 -0
- package/dist/node/chunk-OYZAQMKD.mjs +263 -0
- package/dist/node/chunk-OYZAQMKD.mjs.map +1 -0
- package/dist/node/chunk-P2LULMNL.cjs +189 -0
- package/dist/node/chunk-P2LULMNL.cjs.map +1 -0
- package/dist/node/chunk-PABEFHCO.mjs +63 -0
- package/dist/node/chunk-PABEFHCO.mjs.map +1 -0
- package/dist/node/chunk-Q5NYJQP2.cjs +8 -0
- package/dist/node/chunk-Q5NYJQP2.cjs.map +1 -0
- package/dist/node/chunk-QCEWWJ3N.cjs +65 -0
- package/dist/node/chunk-QCEWWJ3N.cjs.map +1 -0
- package/dist/node/chunk-QW4AZ3Z2.cjs +542 -0
- package/dist/node/chunk-QW4AZ3Z2.cjs.map +1 -0
- package/dist/node/chunk-R2H234YO.cjs +8 -0
- package/dist/node/chunk-R2H234YO.cjs.map +1 -0
- package/dist/node/chunk-RK5WSZ5J.mjs +43 -0
- package/dist/node/chunk-RK5WSZ5J.mjs.map +1 -0
- package/dist/node/chunk-RPHYBPXT.mjs +30 -0
- package/dist/node/chunk-RPHYBPXT.mjs.map +1 -0
- package/dist/node/chunk-RVXASBMQ.mjs +273 -0
- package/dist/node/chunk-RVXASBMQ.mjs.map +1 -0
- package/dist/node/chunk-RVZTZD32.mjs +187 -0
- package/dist/node/chunk-RVZTZD32.mjs.map +1 -0
- package/dist/node/chunk-RWLKISZQ.mjs +273 -0
- package/dist/node/chunk-RWLKISZQ.mjs.map +1 -0
- package/dist/node/chunk-SDKIJDMH.mjs +655 -0
- package/dist/node/chunk-SDKIJDMH.mjs.map +1 -0
- package/dist/node/chunk-SESXQJDD.cjs +999 -0
- package/dist/node/chunk-SESXQJDD.cjs.map +1 -0
- package/dist/node/chunk-SKIEPTFS.mjs +6 -0
- package/dist/node/chunk-SKIEPTFS.mjs.map +1 -0
- package/dist/node/chunk-SL7FT5R5.mjs +94 -0
- package/dist/node/chunk-SL7FT5R5.mjs.map +1 -0
- package/dist/node/chunk-SXHQW74T.mjs +43 -0
- package/dist/node/chunk-SXHQW74T.mjs.map +1 -0
- package/dist/node/chunk-TEJKDVNT.cjs +620 -0
- package/dist/node/chunk-TEJKDVNT.cjs.map +1 -0
- package/dist/node/chunk-TQS5WYND.cjs +352 -0
- package/dist/node/chunk-TQS5WYND.cjs.map +1 -0
- package/dist/node/chunk-UCAWV2IG.mjs +184 -0
- package/dist/node/chunk-UCAWV2IG.mjs.map +1 -0
- package/dist/node/chunk-UDUJDEAO.cjs +189 -0
- package/dist/node/chunk-UDUJDEAO.cjs.map +1 -0
- package/dist/node/chunk-VMJDL4SS.cjs +542 -0
- package/dist/node/chunk-VMJDL4SS.cjs.map +1 -0
- package/dist/node/chunk-VNOZTB3B.cjs +8 -0
- package/dist/node/chunk-VNOZTB3B.cjs.map +1 -0
- package/dist/node/chunk-VPMBZGYR.mjs +327 -0
- package/dist/node/chunk-VPMBZGYR.mjs.map +1 -0
- package/dist/node/chunk-WEPNBKOA.mjs +6 -0
- package/dist/node/chunk-WEPNBKOA.mjs.map +1 -0
- package/dist/node/chunk-WTBRJXFG.cjs +100 -0
- package/dist/node/chunk-WTBRJXFG.cjs.map +1 -0
- package/dist/node/chunk-WXCQCHAX.mjs +3 -0
- package/dist/node/chunk-WXCQCHAX.mjs.map +1 -0
- package/dist/node/chunk-X3TRPYGV.cjs +352 -0
- package/dist/node/chunk-X3TRPYGV.cjs.map +1 -0
- package/dist/node/chunk-XFUF7SDO.cjs +35 -0
- package/dist/node/chunk-XFUF7SDO.cjs.map +1 -0
- package/dist/node/chunk-XP2EPEBM.mjs +966 -0
- package/dist/node/chunk-XP2EPEBM.mjs.map +1 -0
- package/dist/node/chunk-XPIJ6BKP.cjs +45 -0
- package/dist/node/chunk-XPIJ6BKP.cjs.map +1 -0
- package/dist/node/chunk-YRVBMP7I.cjs +542 -0
- package/dist/node/chunk-YRVBMP7I.cjs.map +1 -0
- package/dist/node/chunk-ZIHSN5EE.mjs +530 -0
- package/dist/node/chunk-ZIHSN5EE.mjs.map +1 -0
- package/dist/node/chunk-ZNQMUU7I.cjs +32 -0
- package/dist/node/chunk-ZNQMUU7I.cjs.map +1 -0
- package/dist/node/completion.cjs +23 -0
- package/dist/node/completion.cjs.map +1 -0
- package/dist/node/completion.d.mts +10 -0
- package/dist/node/completion.d.ts +10 -0
- package/dist/node/completion.mjs +6 -0
- package/dist/node/completion.mjs.map +1 -0
- package/dist/node/core.cjs +69 -42
- package/dist/node/core.cjs.map +1 -1
- package/dist/node/core.d.mts +14 -9
- package/dist/node/core.d.ts +14 -9
- package/dist/node/core.mjs +60 -33
- package/dist/node/core.mjs.map +1 -1
- package/dist/node/credentials.cjs +17 -0
- package/dist/node/credentials.cjs.map +1 -0
- package/dist/node/credentials.d.mts +74 -0
- package/dist/node/credentials.d.ts +74 -0
- package/dist/node/credentials.mjs +4 -0
- package/dist/node/credentials.mjs.map +1 -0
- package/dist/node/definition.cjs +6 -4
- package/dist/node/definition.d.mts +3 -2
- package/dist/node/definition.d.ts +3 -2
- package/dist/node/definition.mjs +4 -2
- package/dist/node/dynamic-content.cjs +30 -0
- package/dist/node/dynamic-content.cjs.map +1 -0
- package/dist/node/dynamic-content.d.mts +13 -0
- package/dist/node/dynamic-content.d.ts +13 -0
- package/dist/node/dynamic-content.mjs +9 -0
- package/dist/node/dynamic-content.mjs.map +1 -0
- package/dist/node/dynamic-feature.cjs +41 -7
- package/dist/node/dynamic-feature.cjs.map +1 -1
- package/dist/node/dynamic-feature.d.mts +66 -6
- package/dist/node/dynamic-feature.d.ts +66 -6
- package/dist/node/dynamic-feature.mjs +16 -9
- package/dist/node/dynamic-feature.mjs.map +1 -1
- package/dist/node/dynamic-structure.cjs +45 -136
- package/dist/node/dynamic-structure.cjs.map +1 -1
- package/dist/node/dynamic-structure.d.mts +77 -3
- package/dist/node/dynamic-structure.d.ts +77 -3
- package/dist/node/dynamic-structure.mjs +16 -135
- package/dist/node/dynamic-structure.mjs.map +1 -1
- package/dist/node/env.cjs +3 -3
- package/dist/node/env.d.mts +26 -0
- package/dist/node/env.d.ts +26 -0
- package/dist/node/env.mjs +2 -2
- package/dist/node/frame-index.cjs +7 -4
- package/dist/node/frame-index.d.mts +70 -9
- package/dist/node/frame-index.d.ts +70 -9
- package/dist/node/frame-index.mjs +6 -3
- package/dist/node/logger.d.mts +4 -113
- package/dist/node/logger.d.ts +4 -113
- package/dist/node/models.cjs +14 -0
- package/dist/node/models.cjs.map +1 -0
- package/dist/node/models.d.mts +64 -0
- package/dist/node/models.d.ts +64 -0
- package/dist/node/models.mjs +5 -0
- package/dist/node/models.mjs.map +1 -0
- package/dist/node/namespace.cjs +7 -5
- package/dist/node/namespace.d.mts +1 -1
- package/dist/node/namespace.d.ts +1 -1
- package/dist/node/namespace.mjs +4 -2
- package/dist/node/schema.cjs +22 -0
- package/dist/node/schema.cjs.map +1 -0
- package/dist/node/schema.d.mts +10 -0
- package/dist/node/schema.d.ts +10 -0
- package/dist/node/schema.mjs +5 -0
- package/dist/node/schema.mjs.map +1 -0
- package/dist/node/segment.cjs +25 -0
- package/dist/node/segment.cjs.map +1 -0
- package/dist/node/segment.d.mts +13 -0
- package/dist/node/segment.d.ts +13 -0
- package/dist/node/segment.mjs +8 -0
- package/dist/node/segment.mjs.map +1 -0
- package/dist/node/storage.cjs +17 -14
- package/dist/node/storage.d.mts +18 -6
- package/dist/node/storage.d.ts +18 -6
- package/dist/node/storage.mjs +11 -8
- package/dist/node/vector.cjs +2 -2
- package/dist/node/vector.d.mts +7 -0
- package/dist/node/vector.d.ts +7 -0
- package/dist/node/vector.mjs +1 -1
- package/examples/article/main.ts +358 -0
- package/examples/components.ts +660 -0
- package/examples/feature/file-system.components.ts +211 -0
- package/examples/feature/main.ts +374 -0
- package/examples/interaction/main.ts +426 -0
- package/examples/logger.ts +126 -0
- package/examples/structure/main.ts +195 -0
- package/examples/structure/renderer.ts +296 -0
- package/examples/structure/server-app.components.ts +387 -0
- package/jest.config.browser.ts +9 -0
- package/jest.config.examples.ts +49 -0
- package/jest.config.integration.ts +38 -0
- package/jest.config.ts +56 -27
- package/jest.config.unit.ts +38 -0
- package/package.json +75 -7
- package/src/index.ts +13 -0
- package/src/lib/A-Frame/A-Frame.component.env-browser.ts +19 -6
- package/src/lib/A-Frame/A-Frame.component.env-node.ts +48 -19
- package/src/lib/A-Frame/A-Frame.context.ts +9 -8
- package/src/lib/A-Frame/decorators/A-FrameDefine.decorator.ts +4 -4
- package/src/lib/A-FrameBundle/A-FrameBundle.builder.env-node.ts +95 -25
- package/src/lib/A-FrameBundle/A-FrameBundle.constants.ts +1 -1
- package/src/lib/A-FrameBundle/A-FrameBundle.types.ts +54 -13
- package/src/lib/A-FrameBundle/index.browser.ts +1 -1
- package/src/lib/A-FrameBundle/index.ts +1 -1
- package/src/lib/A-FrameCLI/A-FrameCLI.container.ts +18 -7
- package/src/lib/A-FrameChannel/A-FrameChannel.component.env-browser.ts +0 -2
- package/src/lib/A-FrameChannel/A-FrameChannel.component.env-node.ts +14 -15
- package/src/lib/A-FrameChannel/A-FrameChannel.component.ts +542 -7
- package/src/lib/A-FrameChannel/A-FrameChannel.constants.ts +2 -0
- package/src/lib/A-FrameChannel/A-FrameChannel.types.ts +65 -1
- package/src/lib/A-FrameChannel/A-FrameChannelDsgStream.entity.ts +112 -0
- package/src/lib/A-FrameChannel/A-FrameChannelStream.entity.ts +1 -0
- package/src/lib/A-FrameChannel/index.browser.ts +5 -0
- package/src/lib/A-FrameCompletion/A-FrameCompletion.constants.ts +3 -0
- package/src/lib/A-FrameCompletion/A-FrameCompletion.entity.ts +128 -0
- package/src/lib/A-FrameCompletion/A-FrameCompletion.types.ts +40 -0
- package/src/lib/A-FrameCompletion/index.ts +3 -0
- package/src/lib/A-FrameCredentials/A-FrameCredentials.constants.ts +5 -0
- package/src/lib/A-FrameCredentials/A-FrameCredentials.entity.ts +120 -0
- package/src/lib/A-FrameCredentials/A-FrameCredentials.types.ts +39 -0
- package/src/lib/A-FrameCredentials/index.ts +3 -0
- package/src/lib/A-FrameDefinition/A-FrameDefinition.entity.ts +23 -1
- package/src/lib/A-FrameDefinition/A-FrameDefinition.types.ts +34 -1
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.constants.ts +5 -0
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.entity.ts +348 -0
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.error.ts +10 -0
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContent.types.ts +116 -0
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContentIndex.context.ts +288 -0
- package/src/lib/A-FrameDynamicContent/A-FrameDynamicContentOperation.context.ts +26 -0
- package/src/lib/A-FrameDynamicContent/index.ts +5 -0
- package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.constants.ts +6 -0
- package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.entity.ts +253 -4
- package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.error.ts +11 -0
- package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.types.ts +188 -4
- package/src/lib/A-FrameDynamicFeature/A-FrameDynamicFeatureOperation.context.ts +33 -0
- package/src/lib/A-FrameDynamicFeature/A-FrameMethodMapIndex.context.ts +99 -0
- package/src/lib/A-FrameDynamicFeature/A-FrameMethodMapper.component.ts +182 -0
- package/src/lib/A-FrameDynamicFeature/index.ts +6 -1
- package/src/lib/A-FrameDynamicPatch/index.ts +2 -0
- package/src/lib/A-FrameDynamicStructure/A-FrameComponentMapIndex.context.ts +99 -0
- package/src/lib/A-FrameDynamicStructure/A-FrameComponentMapper.component.ts +320 -0
- package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.constants.ts +2 -1
- package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.entity.ts +240 -128
- package/src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.types.ts +183 -87
- package/src/lib/A-FrameDynamicStructure/index.ts +3 -0
- package/src/lib/A-FrameEnv/A-FrameEnv.fragment.env-browser.ts +5 -1
- package/src/lib/A-FrameEnv/A-FrameEnv.fragment.env-node.ts +23 -1
- package/src/lib/A-FrameEnv/A-FrameEnv.types.ts +12 -0
- package/src/lib/A-FrameIndex/A-FrameIndex.context.ts +63 -13
- package/src/lib/A-FrameIndex/A-FrameIndex.types.ts +53 -0
- package/src/lib/A-FrameModels/A-FrameModels.constants.ts +75 -0
- package/src/lib/A-FrameModels/index.ts +1 -0
- package/src/lib/A-FrameNamespace/A-FrameNamespace.entity.ts +10 -3
- package/src/lib/A-FrameNamespace/A-FrameNamespace.types.ts +5 -0
- package/src/lib/A-FrameSchema/A-FrameSchema.constants.ts +4 -0
- package/src/lib/A-FrameSchema/A-FrameSchema.entity.ts +154 -0
- package/src/lib/A-FrameSchema/A-FrameSchema.types.ts +88 -0
- package/src/lib/A-FrameSchema/index.ts +3 -0
- package/src/lib/A-FrameSegment/A-FrameSegment.constants.ts +12 -0
- package/src/lib/A-FrameSegment/A-FrameSegment.entity.ts +221 -0
- package/src/lib/A-FrameSegment/A-FrameSegment.types.ts +91 -0
- package/src/lib/A-FrameSegment/index.ts +3 -0
- package/src/lib/A-FrameStorage/A-FrameStorage.codec.ts +10 -4
- package/src/lib/A-FrameStorage/browser/A-FrameBrowserStorage.component.ts +21 -0
- package/src/lib/A-FrameStorage/browser/A-FrameBrowserStorageBlobs.context.ts +39 -21
- package/src/lib/A-FrameStorage/node/A-FrameNodeStorage.component.ts +124 -42
- package/src/lib/A-FrameVector/A-FrameVector.entity.ts +24 -0
- package/tests/A-Frame.browser.test.ts +167 -57
- package/tests/A-FrameDynamicContent.browser.test.ts +74 -0
- package/tests/integration/A-Frame.integration.test.ts +272 -0
- package/tests/integration/A-FrameCompletion.integration.test.ts +88 -0
- package/tests/integration/A-FrameContentMapping.integration.test.ts +261 -0
- package/tests/integration/A-FrameDefinition.integration.test.ts +154 -0
- package/tests/integration/A-FrameDynamicContent.integration.test.ts +126 -0
- package/tests/integration/A-FrameDynamicFeature.integration.test.ts +337 -0
- package/tests/integration/A-FrameDynamicStructure.integration.test.ts +264 -0
- package/tests/integration/A-FrameNamespace.integration.test.ts +109 -0
- package/tests/integration/A-FrameSchema.integration.test.ts +74 -0
- package/tests/integration/A-FrameSegment.integration.test.ts +102 -0
- package/tests/integration/A-FrameStorage.integration.test.ts +598 -0
- package/tests/jest.setup.browser.ts +1 -1
- package/tests/jest.setup.ts +4 -0
- package/tests/jest.setup.unit.ts +30 -0
- package/tests/unit/A-FrameChannel.unit.test.ts +124 -0
- package/tests/unit/A-FrameCompletion.unit.test.ts +25 -0
- package/tests/unit/A-FrameDefinition.unit.test.ts +36 -0
- package/tests/unit/A-FrameDynamicContent.unit.test.ts +28 -0
- package/tests/unit/A-FrameNamespace.unit.test.ts +35 -0
- package/tests/unit/A-FrameSchema.unit.test.ts +31 -0
- package/tests/unit/A-FrameSegment.unit.test.ts +20 -0
- package/tests/unit/mocks/MockA_FrameChannel.ts +112 -0
- package/tsconfig.browser.json +2 -0
- package/tsconfig.json +6 -0
- package/tsup.config.ts +52 -0
- package/tests/A-Frame.test.ts +0 -96
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameChannel/A-FrameChannel.constants.ts","../../src/lib/A-FrameChannel/A-FrameChannelRequest.context.ts","../../src/lib/A-FrameChannel/A-FrameChannel.error.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.constants.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.error.ts","../../src/lib/A-FrameDynamicStructure/A-FrameComponentMapIndex.context.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructureOperation.context.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.entity.ts","../../src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.constants.ts","../../src/lib/A-FrameDynamicFeature/A-FrameDynamicFeatureOperation.context.ts","../../src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.error.ts","../../src/lib/A-FrameDynamicFeature/A-FrameMethodMapIndex.context.ts","../../src/lib/A-FrameDynamicFeature/A-FrameDynamicFeature.entity.ts","../../src/lib/A-FrameEnv/A-FrameEnv.fragment.env-node.ts","../../src/lib/A-FrameChannel/A-FrameChannel.component.ts"],"names":["A_FrameFeatures","A_FrameChannelStreamStatuses","A_FrameChannelStreamFeatures","A_FrameChannelSocketStatuses","A_FrameChannelSocketFeatures","A_FrameChannelRequest","A_Fragment","method","path","body","response","error","A_FrameChannelError","A_Error","A_FrameDynamicStructureFeatures","A_FrameDynamicStructureEvents","A_FrameDynamicStructureError","A_FrameComponentMapIndex","entry","prompt","e","definition","getEntry","el","existing","c","A_FrameDynamicStructureOperation","params","key","value","A_FrameDynamicStructure","A_Entity","options","A_FRAME_MODELS","b","A_CommonHelper","operation","executionScope","A_Scope","A_Context","err","instruction","mapIndex","meta","A_FrameDynamicPatch","patchSummary","prevCount","result","elementCount","p","def","strip","embedding","rest","A_FrameDynamicFeatureFeatures","A_FrameDynamicFeatureOperation","A_FrameDynamicFeatureError","A_FrameMethodMapIndex","getStep","step","getElement","A_FrameDynamicFeature","prevSteps","A_FrameEnv","version","raw","parsed","A_FrameChannel","A_Component","request","input","env","vector","namespace","segment","structure","requestScope","resp","feature","content","segments","w","seg","A_FrameSegment","wireIdToAseid","wireSegments","s","idx","wireId","translatedOperations","op","completion","scheme","__decorateClass","A_Feature","A_FrameDefinitionFeatures","A_FrameDefinition","__decorateParam","A_Inject","A_Caller","A_FrameNamespaceFeatures","A_FrameNamespace","A_FrameSegmentFeatures","A_FrameDynamicContentFeatures","A_FrameDynamicContent","A_FrameDynamicContentOperation","A_FrameCompletionFeatures","A_FrameCompletion","A_FrameSchemaFeatures","A_FrameSchema"],"mappings":"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","file":"chunk-FHJ5ATND.mjs","sourcesContent":["\n\nexport const A_FrameFeatures = {\n Request: '_A_FRAME_REQUEST',\n Socket: '_A_FRAME_SOCKET',\n Stream: '_A_FRAME_STREAM',\n Send: '_A_FRAME_SEND',\n} as const;\n\n\n\nexport const A_FrameChannelStreamStatuses = {\n Open: 'open',\n Closed: 'closed',\n} as const;\n\n\nexport const A_FrameChannelStreamFeatures = {\n open: '_A_FRAME_CHANNEL_STREAM_OPEN',\n send: '_A_FRAME_CHANNEL_STREAM_SEND',\n onEvent: '_A_FRAME_CHANNEL_STREAM_ON_EVENT',\n onError: '_A_FRAME_CHANNEL_STREAM_ON_ERROR',\n onComplete: '_A_FRAME_CHANNEL_STREAM_ON_COMPLETE',\n onClose: '_A_FRAME_CHANNEL_STREAM_ON_CLOSE',\n} as const;\n\n\n// ─── WebSocket socket entity constants ───────────────────────────────────────\n\nexport const A_FrameChannelSocketStatuses = {\n Connecting: 'connecting',\n Open: 'open',\n Closed: 'closed',\n} as const;\n\nexport const A_FrameChannelSocketFeatures = {\n onEvent: '_A_FRAME_CHANNEL_SOCKET_ON_EVENT',\n onError: '_A_FRAME_CHANNEL_SOCKET_ON_ERROR',\n onOpen: '_A_FRAME_CHANNEL_SOCKET_ON_OPEN',\n onClose: '_A_FRAME_CHANNEL_SOCKET_ON_CLOSE',\n} as const;\n","import { A_Error, A_Fragment } from \"@adaas/a-concept\";\n\n\nexport class A_FrameChannelRequest<\n _Response = any\n> extends A_Fragment {\n\n protected _response?: _Response;\n\n protected _error?: A_Error;\n\n\n constructor(\n public method: string,\n public path: string,\n public body?: unknown\n ) {\n super({ name: 'a-frame-channel-request' });\n }\n\n complete(response: _Response): void {\n this._response = response;\n }\n\n fail(error: A_Error): void {\n this._error = error;\n }\n\n get response(): _Response | undefined {\n return this._response;\n }\n\n get error(): A_Error | undefined {\n return this._error;\n }\n}\n","import { A_Error } from \"@adaas/a-concept\";\n\n\n\nexport class A_FrameChannelError extends A_Error{\n static readonly InvalidRequest = 'InvalidRequest';\n static readonly Timeout = 'Timeout';\n static readonly RequestFailed = 'RequestFailed';\n}\n ","\n\n\nexport const A_FrameDynamicStructureFeatures = {\n Load: '_A_FRAME_DYNAMIC_STRUCTURE_LOAD',\n Patch: '_A_FRAME_DYNAMIC_STRUCTURE_PATCH',\n Generate: '_A_FRAME_DYNAMIC_STRUCTURE_GENERATE',\n Map: '_A_FRAME_DYNAMIC_STRUCTURE_MAP',\n} as const;\n\n\nexport const A_FrameDynamicStructureEvents = {\n Updated: '_A_FRAME_DYNAMIC_STRUCTURE_UPDATED',\n} as const;","import { A_Error } from \"@adaas/a-concept\";\n\n\nexport class A_FrameDynamicStructureError extends A_Error {\n\n static readonly InvalidPatch = 'InvalidPatch';\n static readonly VersionMismatch = 'VersionMismatch';\n static readonly ComponentNotFound = 'ComponentNotFound';\n static readonly InvalidOperation = 'InvalidOperation';\n\n static readonly GenerationFailed = 'GenerationFailed';\n \n}","import { A_Fragment } from \"@adaas/a-concept\";\nimport {\n A_FrameComponentMapEntry,\n A_FrameComponentMapResult,\n A_FrameDynamicStructureDefinition,\n A_FrameDynamicStructureDefinitionEntity,\n} from \"./A-FrameDynamicStructure.types\";\n\n\n/**\n * Context fragment that accumulates component-mapping results produced by\n * `A_FrameComponentMapper.mapStructure()`.\n *\n * Uses a flat `prompt → A_FrameComponentMapEntry` map so lookups are O(1).\n * Call `toResult(definition)` after the mapper has finished to build the\n * structured `A_FrameComponentMapResult` that mirrors the definition layout.\n */\nexport class A_FrameComponentMapIndex extends A_Fragment {\n\n private _entries: Map<string, A_FrameComponentMapEntry> = new Map();\n\n constructor() {\n super({ name: 'a-frame-component-map-index' });\n }\n\n // ── Basic mutation ───────────────────────────────────────────────────────\n\n /**\n * Store (or overwrite) a map entry for the element identified by `entry.prompt`.\n */\n set(entry: A_FrameComponentMapEntry): void {\n this._entries.set(entry.prompt, entry);\n }\n\n /**\n * Retrieve the map entry for the given prompt, or `undefined` if not yet stored.\n */\n get(prompt: string): A_FrameComponentMapEntry | undefined {\n return this._entries.get(prompt);\n }\n\n /** Remove all stored entries. */\n clear(): void {\n this._entries.clear();\n }\n\n // ── Accessors ────────────────────────────────────────────────────────────\n\n /** Total number of stored entries. */\n get size(): number {\n return this._entries.size;\n }\n\n /** All stored entries in insertion order. */\n list(): A_FrameComponentMapEntry[] {\n return Array.from(this._entries.values());\n }\n\n /** Entries that have been successfully matched to a registered class. */\n get matched(): A_FrameComponentMapEntry[] {\n return this.list().filter(e => e.matchedClass !== null);\n }\n\n /** Entries where no matching registered class was found. */\n get unmatched(): A_FrameComponentMapEntry[] {\n return this.list().filter(e => e.matchedClass === null);\n }\n\n // ── Result building ──────────────────────────────────────────────────────\n\n /**\n * Construct a fully structured `A_FrameComponentMapResult` from the\n * accumulated entries and the provided definition.\n *\n * For each element in the definition the method looks up its entry by\n * prompt. If no entry exists (element had no server embedding), a default\n * unmatched entry is generated so the result shape always matches the\n * definition shape.\n */\n toResult(definition: A_FrameDynamicStructureDefinition): A_FrameComponentMapResult {\n const getEntry = (el: A_FrameDynamicStructureDefinitionEntity): A_FrameComponentMapEntry => {\n const existing = this._entries.get(el.prompt);\n if (existing) return existing;\n return { prompt: el.prompt, role: el.role, class: el.class, matchedClass: null, matchScore: 0 };\n };\n\n return {\n containers: definition.containers.map(c => ({\n ...getEntry(c),\n components: (c.components ?? []).map(getEntry),\n fragments: (c.fragments ?? []).map(getEntry),\n entities: (c.entities ?? []).map(getEntry),\n })),\n components: definition.components.map(getEntry),\n fragments: definition.fragments.map(getEntry),\n entities: definition.entities.map(getEntry),\n };\n }\n}\n","import { A_Fragment } from \"@adaas/a-concept\"\n\n\nexport class A_FrameDynamicStructureOperation<\n _InputParams = any,\n> extends A_Fragment {\n\n protected _meta: Map<string, any> = new Map();\n\n constructor(\n params: _InputParams = {} as _InputParams\n ) {\n super({ name: 'a-frame-dynamic-structure-operation-context' });\n this._meta.set('params', params);\n\n }\n\n get params(): _InputParams {\n return this._meta.get('params');\n }\n\n\n get(key: string) {\n return this._meta.get(key);\n }\n\n\n set(key: string, value: any) {\n this._meta.set(key, value);\n }\n\n}\n","import { A_CommonHelper, A_Context, A_Entity, A_Scope } from \"@adaas/a-concept\";\nimport {\n A_FrameDynamicStructure_Init,\n A_FrameDynamicStructure_Serialized,\n A_FrameDynamicStructureDefinition,\n A_FrameComponentMapResult,\n} from \"./A-FrameDynamicStructure.types\";\nimport { A_FrameDynamicStructureFeatures } from \"./A-FrameDynamicStructure.constants\";\nimport { A_FrameDynamicStructureOperation } from \"./A-FrameDynamicStructureOperation.context\";\nimport { A_FrameDynamicStructureError } from \"./A-FrameDynamicStructure.error\";\nimport { A_FrameDynamicPatch } from \"../A-FrameDynamicPatch/A-FrameDynamicPatch.entity\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels/A-FrameModels.constants\";\nimport { A_FrameComponentMapIndex } from \"./A-FrameComponentMapIndex.context\";\n\n\nexport class A_FrameDynamicStructure extends A_Entity<A_FrameDynamicStructure_Init, A_FrameDynamicStructure_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n // ── Identity ─────────────────────────────────────────────────────────────\n prompt!: string;\n createdAt!: number;\n\n // ── Config ───────────────────────────────────────────────────────────────\n private model!: string;\n private _context!: string;\n private _metaHint!: string;\n private _includeBases!: string[];\n private _excludeBases!: string[];\n private _enabledComponents!: string[];\n private _minScore!: number;\n private _maxRetries!: number;\n private _candidateCount!: number;\n\n // ── State ─────────────────────────────────────────────────────────────────\n private _definition!: A_FrameDynamicStructureDefinition | null;\n private _mapResult!: A_FrameComponentMapResult | null;\n private _history!: A_FrameDynamicPatch[];\n private _version!: number;\n\n fromNew(options: A_FrameDynamicStructure_Init) {\n super.fromNew(options);\n\n this.createdAt = Date.now();\n this.prompt = options.prompt;\n this.model = options.options?.model || A_FRAME_MODELS.PULSAR;\n this._context = options.options?.context ?? '';\n this._metaHint = options.options?.metaHint ?? '';\n this._includeBases = (options.options?.includeBases || [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this._excludeBases = (options.options?.excludeBases || [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this._enabledComponents = (options.options?.enabledComponents || [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n\n this._minScore = options.options?.minScore ?? 0.7;\n this._maxRetries = options.options?.maxRetries ?? 3;\n this._candidateCount = options.options?.candidateCount ?? 5;\n\n this._definition = null;\n this._mapResult = null;\n this._history = [];\n this._version = 0;\n }\n\n // ── Accessors ─────────────────────────────────────────────────────────────\n\n /** The AI model name used for generation / patching. */\n get modelName(): string { return this.model; }\n\n /** Context hint forwarded to the AI for scoping architecture style. */\n get contextHint(): string { return this._context; }\n\n /** Meta/prop hint forwarded to the AI for component selection. */\n get metaHintValue(): string { return this._metaHint; }\n\n /** Base-class allowlist (string names). */\n get includedBases(): string[] { return this._includeBases; }\n\n /** Base-class denylist (string names). */\n get excludedBases(): string[] { return this._excludeBases; }\n\n /** Explicit component allowlist (string names). */\n get enabledComponentsList(): string[] { return this._enabledComponents; }\n\n /** Minimum cosine-similarity score (0–1) required for a component match. */\n get minScore(): number { return this._minScore; }\n\n /** Max server refinement retries per unmatched element. */\n get maxRetries(): number { return this._maxRetries; }\n\n /** Number of top candidates to send to the AI on each retry. */\n get candidateCount(): number { return this._candidateCount; }\n\n /** Current architecture definition as a raw object, or null before first generate(). */\n get definition(): A_FrameDynamicStructureDefinition | null { return this._definition; }\n\n /**\n * Current architecture definition serialised to a formatted JSON string,\n * with server embeddings stripped for readability.\n * Returns an empty-definition JSON before generate() is called.\n */\n get structure(): string {\n if (!this._definition) {\n return JSON.stringify({ containers: [], components: [], fragments: [], entities: [] }, null, 2);\n }\n return JSON.stringify(this._stripEmbeddings(this._definition), null, 2);\n }\n\n /** Component-mapping result produced by map(), or null before map() is called. */\n get mapResult(): A_FrameComponentMapResult | null { return this._mapResult; }\n\n /** Immutable patch history. */\n get history(): ReadonlyArray<A_FrameDynamicPatch> { return this._history; }\n\n /** Current definition version (increments with each patch). */\n get version(): number { return this._version; }\n\n // ── Main pipeline ─────────────────────────────────────────────────────────\n\n /**\n * Generate the architecture definition from the entity's prompt.\n * Calls the server's /api/v1/structure/generate endpoint via the A_FrameChannel feature.\n */\n async generate(): Promise<void> {\n const operation = new A_FrameDynamicStructureOperation();\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-structure-generate',\n fragments: [operation],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicStructureFeatures.Generate, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicStructureError({\n title: A_FrameDynamicStructureError.GenerationFailed,\n description: `Failed to generate structure: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Apply a natural-language patch instruction to the current definition.\n * Calls the server's /api/v1/structure/patch endpoint via the A_FrameChannel feature.\n */\n async patch(instruction: string): Promise<void> {\n const operation = new A_FrameDynamicStructureOperation({ instruction });\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-structure-patch',\n fragments: [operation],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicStructureFeatures.Patch, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicStructureError({\n title: A_FrameDynamicStructureError.GenerationFailed,\n description: `Failed to patch structure: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Match every element in the current definition against the local A_FrameIndex.\n * Retries unmatched elements via server-side refinement patches.\n *\n * Results are stored separately from the raw definition and are available\n * via `mapResult` after this call completes.\n */\n async map(): Promise<void> {\n const mapIndex = new A_FrameComponentMapIndex();\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-structure-map',\n fragments: [mapIndex],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicStructureFeatures.Map, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicStructureError({\n title: A_FrameDynamicStructureError.GenerationFailed,\n description: `Failed to map structure: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n // ── Hydration ─────────────────────────────────────────────────────────────\n\n /**\n * Populate the definition from a server generate response.\n * Creates the first history entry.\n */\n hydrateFromGeneration(\n definition: A_FrameDynamicStructureDefinition,\n meta: { model: string; serverVersion: string },\n ): void {\n this._definition = definition;\n this._mapResult = null;\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: `Generated for: \"${this.prompt}\"`,\n encoded: Buffer.from(JSON.stringify(this._stripEmbeddings(definition))).toString('base64'),\n delta: this._countElements(definition),\n }));\n }\n\n /**\n * Replace the current definition with a patched version from the server.\n * Increments the version and records a history entry.\n */\n hydrateFromPatch(\n definition: A_FrameDynamicStructureDefinition,\n patchSummary: string,\n meta: { model: string; serverVersion: string },\n ): void {\n const prevCount = this._definition ? this._countElements(this._definition) : 0;\n this._definition = definition;\n this._mapResult = null; // previous map result is now stale\n this._version++;\n\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: patchSummary,\n encoded: Buffer.from(JSON.stringify(this._stripEmbeddings(definition))).toString('base64'),\n delta: this._countElements(definition) - prevCount,\n }));\n }\n\n /**\n * Store the component-mapping result produced by `A_FrameComponentMapper`.\n * Called by the mapper after it finishes matching all elements.\n */\n hydrateFromMap(result: A_FrameComponentMapResult): void {\n this._mapResult = result;\n }\n\n // ── Serialisation ─────────────────────────────────────────────────────────\n\n toJSON(): A_FrameDynamicStructure_Serialized {\n const elementCount = this._definition ? this._countElements(this._definition) : 0;\n return {\n ...super.toJSON(),\n name: this.prompt,\n description: `DynamicStructure with ${elementCount} elements and ${this._history.length} patches`,\n metadata: {\n model: this.model,\n context: this._context,\n metaHint: this._metaHint,\n includeBases: this._includeBases,\n excludeBases: this._excludeBases,\n enabledComponents: this._enabledComponents,\n candidateCount: this._candidateCount,\n createdAt: this.createdAt,\n },\n history: this._history.map(p => p.toJSON()),\n };\n }\n\n // ── Private helpers ───────────────────────────────────────────────────────\n\n private _countElements(def: A_FrameDynamicStructureDefinition): number {\n return (def.containers?.length ?? 0)\n + (def.components?.length ?? 0)\n + (def.fragments?.length ?? 0)\n + (def.entities?.length ?? 0);\n }\n\n /** Return a copy of the definition with all `embedding` arrays removed. */\n private _stripEmbeddings(def: A_FrameDynamicStructureDefinition): A_FrameDynamicStructureDefinition {\n const strip = (el: any): any => {\n const { embedding, ...rest } = el;\n return rest;\n };\n return {\n containers: def.containers.map(c => ({\n ...strip(c),\n components: (c.components ?? []).map(strip),\n fragments: (c.fragments ?? []).map(strip),\n entities: (c.entities ?? []).map(strip),\n })),\n components: def.components.map(strip),\n fragments: def.fragments.map(strip),\n entities: def.entities.map(strip),\n };\n }\n}\n","\nexport const A_FrameDynamicFeatureFeatures = {\n Generate: '_A_FRAME_DYNAMIC_FEATURE_GENERATE',\n Patch: '_A_FRAME_DYNAMIC_FEATURE_PATCH',\n Map: '_A_FRAME_DYNAMIC_FEATURE_MAP',\n} as const;\n","import { A_Fragment } from \"@adaas/a-concept\";\n\n\n/**\n * Thin context fragment that carries parameters for a single DynamicFeature\n * operation (generate or patch). Injected into the feature execution scope and\n * resolved by channel feature-extension handlers via `@A_Inject`.\n */\nexport class A_FrameDynamicFeatureOperation<\n _InputParams = any,\n> extends A_Fragment {\n\n protected _meta: Map<string, any> = new Map();\n\n constructor(\n params: _InputParams = {} as _InputParams\n ) {\n super({ name: 'a-frame-dynamic-feature-operation-context' });\n this._meta.set('params', params);\n }\n\n get params(): _InputParams {\n return this._meta.get('params');\n }\n\n get(key: string): any {\n return this._meta.get(key);\n }\n\n set(key: string, value: any): void {\n this._meta.set(key, value);\n }\n}\n","import { A_Error } from \"@adaas/a-concept\";\n\n\nexport class A_FrameDynamicFeatureError extends A_Error {\n\n static readonly GenerationFailed = 'GenerationFailed';\n static readonly PatchFailed = 'PatchFailed';\n static readonly MappingFailed = 'MappingFailed';\n static readonly MethodNotFound = 'MethodNotFound';\n static readonly InvalidOperation = 'InvalidOperation';\n}\n","import { A_Fragment } from \"@adaas/a-concept\";\nimport {\n A_FrameDynamicFeatureDefinition,\n A_FrameDynamicFeatureElementMapEntry,\n A_FrameDynamicFeatureMapResult,\n A_FrameDynamicFeatureStep,\n A_FrameDynamicFeatureStepMapEntry,\n} from \"./A-FrameDynamicFeature.types\";\n\n\n/**\n * Context fragment that accumulates the method/component-mapping results\n * produced by `A_FrameMethodMapper.mapFeature()`.\n *\n * Uses `prompt` as the unique key — same approach as `A_FrameComponentMapIndex`.\n * Call `toResult(definition)` after the mapper finishes to build the fully\n * structured `A_FrameDynamicFeatureMapResult`.\n */\nexport class A_FrameMethodMapIndex extends A_Fragment {\n\n private _stepEntries: Map<string, A_FrameDynamicFeatureStepMapEntry> = new Map();\n private _elementEntries: Map<string, A_FrameDynamicFeatureElementMapEntry> = new Map();\n\n constructor() {\n super({ name: 'a-frame-method-map-index' });\n }\n\n // ── Step entries ─────────────────────────────────────────────────────────\n\n setStep(entry: A_FrameDynamicFeatureStepMapEntry): void {\n this._stepEntries.set(entry.prompt, entry);\n }\n\n getStep(prompt: string): A_FrameDynamicFeatureStepMapEntry | undefined {\n return this._stepEntries.get(prompt);\n }\n\n // ── Element entries (components / fragments / entities) ───────────────────\n\n setElement(entry: A_FrameDynamicFeatureElementMapEntry): void {\n this._elementEntries.set(entry.prompt, entry);\n }\n\n getElement(prompt: string): A_FrameDynamicFeatureElementMapEntry | undefined {\n return this._elementEntries.get(prompt);\n }\n\n // ── Accessors ─────────────────────────────────────────────────────────────\n\n clear(): void {\n this._stepEntries.clear();\n this._elementEntries.clear();\n }\n\n get stepCount(): number { return this._stepEntries.size; }\n get elementCount(): number { return this._elementEntries.size; }\n\n get matchedSteps(): A_FrameDynamicFeatureStepMapEntry[] {\n return Array.from(this._stepEntries.values()).filter(e => e.matchedMethod !== null);\n }\n\n get unmatchedSteps(): A_FrameDynamicFeatureStepMapEntry[] {\n return Array.from(this._stepEntries.values()).filter(e => e.matchedMethod === null);\n }\n\n // ── Result building ───────────────────────────────────────────────────────\n\n /**\n * Construct a fully structured `A_FrameDynamicFeatureMapResult` from the\n * accumulated entries and the provided definition.\n */\n toResult(definition: A_FrameDynamicFeatureDefinition): A_FrameDynamicFeatureMapResult {\n const getStep = (step: A_FrameDynamicFeatureStep): A_FrameDynamicFeatureStepMapEntry => {\n const existing = this._stepEntries.get(step.prompt);\n if (existing) return existing;\n return {\n prompt: step.prompt,\n inputs: step.inputs,\n outputs: step.outputs,\n matchedClass: null,\n matchedMethod: null,\n matchScore: 0,\n };\n };\n\n const getElement = (el: { prompt: string }): A_FrameDynamicFeatureElementMapEntry => {\n const existing = this._elementEntries.get(el.prompt);\n if (existing) return existing;\n return { prompt: el.prompt, matchedClass: null, matchScore: 0 };\n };\n\n return {\n steps: definition.steps.map(getStep),\n components: definition.components.map(getElement),\n fragments: definition.fragments.map(getElement),\n entities: definition.entities.map(getElement),\n };\n }\n}\n","import { A_CommonHelper, A_Context, A_Entity, A_Scope } from \"@adaas/a-concept\";\nimport {\n A_FrameDynamicFeature_Init,\n A_FrameDynamicFeature_Serialized,\n A_FrameDynamicFeatureDefinition,\n A_FrameDynamicFeatureMapResult,\n} from \"./A-FrameDynamicFeature.types\";\nimport { A_FrameDynamicFeatureFeatures } from \"./A-FrameDynamicFeature.constants\";\nimport { A_FrameDynamicFeatureOperation } from \"./A-FrameDynamicFeatureOperation.context\";\nimport { A_FrameDynamicFeatureError } from \"./A-FrameDynamicFeature.error\";\nimport { A_FrameDynamicPatch } from \"../A-FrameDynamicPatch/A-FrameDynamicPatch.entity\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels/A-FrameModels.constants\";\nimport { A_FrameMethodMapIndex } from \"./A-FrameMethodMapIndex.context\";\n\n\nexport class A_FrameDynamicFeature extends A_Entity<A_FrameDynamicFeature_Init, A_FrameDynamicFeature_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n // ── Identity ────────────────────────────────────────────────────────────────\n prompt!: string;\n createdAt!: number;\n\n // ── Config ───────────────────────────────────────────────────────────────\n private _model!: string;\n private _context!: string;\n private _includeBases!: string[];\n private _excludeBases!: string[];\n private _enabledComponents!: string[];\n private _minScore!: number;\n private _maxRetries!: number;\n\n // ── State ───────────────────────────────────────────────────────────────────\n private _definition!: A_FrameDynamicFeatureDefinition | null;\n private _mapResult!: A_FrameDynamicFeatureMapResult | null;\n private _history!: A_FrameDynamicPatch[];\n private _version!: number;\n\n fromNew(options: A_FrameDynamicFeature_Init) {\n super.fromNew(options);\n\n this.createdAt = Date.now();\n this.prompt = options.prompt;\n this._model = options.options?.model ?? A_FRAME_MODELS.PULSAR;\n this._context = options.options?.context ?? '';\n this._includeBases = (options.options?.includeBases ?? [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this._excludeBases = (options.options?.excludeBases ?? [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this._enabledComponents = (options.options?.enabledComponents ?? [])\n .map(b => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this._minScore = options.options?.minScore ?? 0.7;\n this._maxRetries = options.options?.maxRetries ?? 3;\n\n this._definition = null;\n this._mapResult = null;\n this._history = [];\n this._version = 0;\n }\n\n // ── Accessors ───────────────────────────────────────────────────────────────\n\n get modelName(): string { return this._model; }\n get contextHint(): string { return this._context; }\n get includedBases(): string[] { return this._includeBases; }\n get excludedBases(): string[] { return this._excludeBases; }\n get enabledComponentsList():string[] { return this._enabledComponents; }\n get minScore(): number { return this._minScore; }\n get maxRetries(): number { return this._maxRetries; }\n\n /** Current workflow definition, or `null` before first `generate()`. */\n get definition(): A_FrameDynamicFeatureDefinition | null { return this._definition; }\n\n /**\n * Serialised workflow definition (no embedding arrays) — safe to\n * log or persist. Returns an empty shell before `generate()` is called.\n */\n get workflow(): string {\n if (!this._definition) {\n return JSON.stringify({ title: '', description: '', steps: [], components: [], fragments: [], entities: [] }, null, 2);\n }\n return JSON.stringify(this._stripEmbeddings(this._definition), null, 2);\n }\n\n /** Component-mapping result produced by `map()`, or `null` before that call. */\n get mapResult(): A_FrameDynamicFeatureMapResult | null { return this._mapResult; }\n\n /** Immutable patch history. */\n get history(): ReadonlyArray<A_FrameDynamicPatch> { return this._history; }\n\n /** Version counter — increments with each `patch()` call. */\n get version(): number { return this._version; }\n\n // ── Main pipeline ───────────────────────────────────────────────────────────────\n\n /**\n * Generate the workflow definition from the entity's prompt.\n *\n * Calls the server's `/api/v1/feature/generate` endpoint. The server\n * returns an ordered list of steps (with embeddings), a list of supporting\n * components/fragments/entities, and a human-readable title + description\n * of the workflow.\n *\n * After this call succeeds, invoke `map()` to match each element to a\n * registered class/method in the local A_FrameIndex.\n */\n async generate(): Promise<void> {\n const operation = new A_FrameDynamicFeatureOperation();\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-feature-generate',\n fragments: [operation],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicFeatureFeatures.Generate, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicFeatureError({\n title: A_FrameDynamicFeatureError.GenerationFailed,\n description: `Failed to generate feature workflow: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Apply a natural-language patch instruction to refine the current workflow.\n *\n * Calls the server's `/api/v1/feature/patch` endpoint. Increments the\n * version and records a history entry. A previous `map()` result is\n * invalidated — call `map()` again after patching.\n */\n async patch(instruction: string): Promise<void> {\n const operation = new A_FrameDynamicFeatureOperation({ instruction });\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-feature-patch',\n fragments: [operation],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicFeatureFeatures.Patch, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicFeatureError({\n title: A_FrameDynamicFeatureError.PatchFailed,\n description: `Failed to patch feature workflow: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Match every step and supporting element in the current workflow definition\n * against the local A_FrameIndex.\n *\n * Steps are matched to registered *methods* (via embedded method-level\n * definitions indexed with `@A_Frame.Define`). Supporting components,\n * fragments, and entities are matched to registered classes.\n *\n * Unmatched steps are retried via server-side refinement patches (up to\n * `maxRetries` times) before being marked with a `matchError`.\n *\n * Results are stored in `mapResult` after this call completes.\n */\n async map(): Promise<void> {\n const mapIndex = new A_FrameMethodMapIndex();\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-feature-map',\n fragments: [mapIndex],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicFeatureFeatures.Map, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicFeatureError({\n title: A_FrameDynamicFeatureError.MappingFailed,\n description: `Failed to map feature workflow: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n // ── Hydration ───────────────────────────────────────────────────────────────\n\n hydrateFromGeneration(\n definition: A_FrameDynamicFeatureDefinition,\n meta: { model: string; serverVersion: string },\n ): void {\n this._definition = definition;\n this._mapResult = null;\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: `Generated for: \"${this.prompt}\"`,\n encoded: Buffer.from(JSON.stringify(this._stripEmbeddings(definition))).toString('base64'),\n delta: definition.steps.length,\n }));\n }\n\n hydrateFromPatch(\n definition: A_FrameDynamicFeatureDefinition,\n patchSummary: string,\n meta: { model: string; serverVersion: string },\n ): void {\n const prevSteps = this._definition?.steps.length ?? 0;\n this._definition = definition;\n this._mapResult = null;\n this._version++;\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: patchSummary,\n encoded: Buffer.from(JSON.stringify(this._stripEmbeddings(definition))).toString('base64'),\n delta: definition.steps.length - prevSteps,\n }));\n }\n\n hydrateFromMap(result: A_FrameDynamicFeatureMapResult): void {\n this._mapResult = result;\n }\n\n // ── Serialisation ──────────────────────────────────────────────────────────────\n\n toJSON(): A_FrameDynamicFeature_Serialized {\n return {\n ...super.toJSON(),\n name: this.prompt,\n description: `DynamicFeature with ${this._definition?.steps.length ?? 0} steps and ${this._history.length} patches`,\n metadata: {\n model: this._model,\n context: this._context,\n includeBases: this._includeBases,\n excludeBases: this._excludeBases,\n enabledComponents: this._enabledComponents,\n createdAt: this.createdAt,\n },\n history: this._history.map(p => p.toJSON()),\n };\n }\n\n // ── Private helpers ──────────────────────────────────────────────────────────────\n\n private _stripEmbeddings(def: A_FrameDynamicFeatureDefinition): A_FrameDynamicFeatureDefinition {\n const strip = (el: any): any => {\n const { embedding, ...rest } = el;\n return rest;\n };\n return {\n ...def,\n steps: def.steps.map(strip),\n components: def.components.map(strip),\n fragments: def.fragments.map(strip),\n entities: def.entities.map(strip),\n };\n }\n}\n","import { A_Fragment } from \"@adaas/a-concept\";\nimport * as pkg from '../../../package.json';\nimport { IA_FrameEnv } from \"./A-FrameEnv.types\";\n\n\nexport class A_FrameEnv extends A_Fragment implements IA_FrameEnv {\n\n get A_FRAME_FILE_EXTENSION() {\n return '.aframe';\n }\n\n get A_FRAME_NAMESPACES_BIN() {\n return `__namespaces${this.A_FRAME_FILE_EXTENSION}`;\n }\n\n get A_FRAME_SYNC() {\n return process.env.A_FRAME_SYNC === 'false' ? false : true;\n }\n\n get A_FRAME_TOKEN() {\n return process.env.A_FRAME_TOKEN || '';\n }\n\n get A_FRAME_SERVER_URL() {\n return process.env.A_FRAME_SERVER_URL || 'http://localhost:3663';\n }\n\n get A_FRAME_SERVER_API_KEY() {\n return process.env.A_FRAME_SERVER_API_KEY || '';\n }\n\n get A_FRAME_STORAGE_DIR() {\n return process.env.A_FRAME_STORAGE_DIR || '.aframe';\n }\n\n /**\n * Comma-separated glob pattern(s) used to discover additional storage\n * directories at startup (read-only merge source).\n *\n * Each pattern is resolved relative to `process.cwd()`.\n * Default scans for any `.aframe` folder inside node_modules packages.\n */\n get A_FRAME_STORAGE_PATTERN() {\n return process.env.A_FRAME_STORAGE_PATTERN ?? 'node_modules/**/.aframe';\n }\n\n get A_FRAME_VERSION() {\n return pkg.version || '0.0.1';\n }\n\n /**\n * Maximum time (ms) the HTTP client waits for a single response.\n * AI inference can be slow; default is 120 seconds.\n * Override with A_FRAME_REQUEST_TIMEOUT env var.\n */\n get A_FRAME_REQUEST_TIMEOUT(): number {\n const raw = process.env.A_FRAME_REQUEST_TIMEOUT;\n const parsed = raw ? parseInt(raw, 10) : NaN;\n return isNaN(parsed) ? 120_000 : parsed;\n }\n}","import { A_Caller, A_Component, A_Context, A_Feature, A_Inject, A_Scope } from \"@adaas/a-concept\";\nimport { IA_Frame_Channel, A_Frame_EmbedResponse, A_Frame_GenerateResponse, A_Frame_CredentialResponse, A_FrameEmbedOptions } from \"./A-FrameChannel.types\";\nimport { A_FrameEnv } from \"../A-FrameEnv/A-FrameEnv.fragment.env-node\";\nimport { A_FrameFeatures } from \"./A-FrameChannel.constants\";\nimport { A_FrameChannelRequest } from \"./A-FrameChannelRequest.context\";\nimport { A_FrameChannelError } from \"./A-FrameChannel.error\";\nimport { A_FrameDefinition } from \"../A-FrameDefinition\";\nimport { A_FrameDefinitionFeatures } from \"../A-FrameDefinition/A-FrameDefinition.constants\";\nimport { A_FrameNamespaceFeatures } from \"../A-FrameNamespace/A-FrameNamespace.constants\";\nimport { A_FrameNamespace } from \"../A-FrameNamespace\";\nimport { A_FrameDynamicStructure } from \"../A-FrameDynamicStructure/A-FrameDynamicStructure.entity\";\nimport { A_FrameDynamicStructureOperation } from \"../A-FrameDynamicStructure/A-FrameDynamicStructureOperation.context\";\nimport { A_FrameDynamicStructureFeatures } from \"../A-FrameDynamicStructure/A-FrameDynamicStructure.constants\";\nimport { A_FrameStructureGenerateResponse, A_FrameStructurePatchResponse, A_FrameDynamicStructureDefinition, A_FrameDynamicStructureDefinitionEntity } from \"../A-FrameDynamicStructure/A-FrameDynamicStructure.types\";\nimport { A_FrameChannelSocket } from \"./A-FrameChannelSocket.entity\";\nimport { A_FrameDynamicContent } from \"../A-FrameDynamicContent/A-FrameDynamicContent.entity\";\nimport { A_FrameDynamicContentOperation } from \"../A-FrameDynamicContent/A-FrameDynamicContentOperation.context\";\nimport { A_FrameDynamicContentFeatures } from \"../A-FrameDynamicContent/A-FrameDynamicContent.constants\";\nimport { A_FrameContentGenerateResponse, A_FrameContentPatchResponse } from \"../A-FrameDynamicContent/A-FrameDynamicContent.types\";\nimport { A_Frame_CompletionResponse } from \"./A-FrameChannel.types\";\nimport { A_FrameSegment, A_FrameSegmentFeatures } from \"../A-FrameSegment\";\nimport { A_FrameCompletion, A_FrameCompletionFeatures } from \"../A-FrameCompletion\";\nimport { A_FrameSchema, A_FrameSchemaFeatures } from \"../A-FrameSchema\";\nimport { A_Frame_SchemaResponse } from \"./A-FrameChannel.types\";\nimport { A_FrameDynamicFeature } from \"../A-FrameDynamicFeature/A-FrameDynamicFeature.entity\";\nimport { A_FrameDynamicFeatureOperation } from \"../A-FrameDynamicFeature/A-FrameDynamicFeatureOperation.context\";\nimport { A_FrameDynamicFeatureFeatures } from \"../A-FrameDynamicFeature/A-FrameDynamicFeature.constants\";\nimport {\n A_FrameDynamicFeatureDefinition,\n A_FrameFeatureGenerateResponse,\n A_FrameFeaturePatchResponse,\n} from \"../A-FrameDynamicFeature/A-FrameDynamicFeature.types\";\n\n/**\n * A_FrameChannel — Node.js environment\n *\n * HTTP client for the embed-server API.\n * Configuration is resolved from process.env via A_FrameEnv injected at\n * feature execution time — no state is stored on the component itself.\n *\n * Uses the global fetch (available in Node 18+; no extra dependency needed).\n */\nexport class A_FrameChannel extends A_Component implements IA_Frame_Channel {\n\n async generate(prompt: string): Promise<A_FrameChannelRequest<A_Frame_GenerateResponse>> {\n const request = new A_FrameChannelRequest<A_Frame_GenerateResponse>('POST', '/api/v1/completions', { prompt, max_tokens: 512 });\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.generate',\n fragments: [request],\n })\n .inherit(A_Context.scope(this));\n\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n return request;\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to generate completion: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n async embed(input: string | string[], options?: A_FrameEmbedOptions): Promise<A_FrameChannelRequest<A_Frame_EmbedResponse>> {\n const request = new A_FrameChannelRequest<A_Frame_EmbedResponse>('POST', '/api/v1/embeddings', {\n input,\n ...(options?.model && { model: options.model }),\n ...(options?.task && { task: options.task }),\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.embed',\n fragments: [request],\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n return request;\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to embed input: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n async getCredentials(): Promise<A_FrameChannelRequest<A_Frame_CredentialResponse>> {\n const request = new A_FrameChannelRequest<A_Frame_CredentialResponse>('GET', '/api/v1/credentials/me');\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.getCredentials',\n fragments: [request],\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n return request;\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to get credentials: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n async ping(): Promise<A_FrameChannelRequest<boolean>> {\n const request = new A_FrameChannelRequest<boolean>('GET', '/health');\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.ping',\n fragments: [request],\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n return request;\n\n } catch {\n executionScope.destroy();\n\n return request;\n }\n }\n\n\n\n // ─── Feature implementation ───────────────────────────────────────────────\n @A_Feature.Extend({\n name: A_FrameDefinitionFeatures.Embed,\n scope: [A_FrameDefinition],\n })\n async embedDefinition(\n @A_Inject(A_Caller) definition: A_FrameDefinition,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n const request = new A_FrameChannelRequest<A_Frame_EmbedResponse>('POST', '/api/v1/definition/embed', {\n definition: definition.toJSON(),\n model: definition.requestedModel,\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.embedDefinition',\n fragments: [request]\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope) as A_Frame_EmbedResponse;\n executionScope.destroy();\n\n const response = request.response!;\n if (!response.data || !response.data[0] || !response.data[0].embedding) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.InvalidRequest,\n description: `Invalid embedding response for definition \"${definition.name}\"`,\n });\n }\n\n const vector = new Float32Array(response.data[0].embedding);\n\n definition.hydrateFromEmbedding(vector, {\n model: response.model,\n dimensions: response.meta.dimensions,\n inputCount: response.meta.input_count,\n aFrameServerVersion: response.meta.server_version!,\n aFrameVersion: env.A_FRAME_VERSION!,\n credentialId: response.meta.credential_id!,\n date: response.date,\n aFrameMeta: response.aFrameMeta,\n });\n } catch (err) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to embed definition \"${definition.name}\": ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n\n }\n\n\n\n @A_Feature.Extend({\n name: A_FrameNamespaceFeatures.Embed,\n scope: [A_FrameNamespace],\n })\n async embedNamespace(\n @A_Inject(A_Caller) namespace: A_FrameNamespace,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n\n const request = new A_FrameChannelRequest<A_Frame_EmbedResponse>('POST', '/api/v1/namespace/embed', {\n namespace: namespace.toJSON(),\n model: namespace.requestedModel,\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.embedNamespace',\n fragments: [request]\n })\n .inherit(A_Context.scope(this));\n\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope) as A_Frame_EmbedResponse;\n executionScope.destroy();\n\n const response = request.response!;\n if (!response.data || !response.data[0] || !response.data[0].embedding) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.InvalidRequest,\n description: `Invalid embedding response for namespace \"${namespace.name}\"`,\n });\n }\n\n const vector = new Float32Array(response.data[0].embedding);\n\n namespace.hydrateFromEmbedding(vector, {\n model: response.model,\n dimensions: response.meta.dimensions,\n inputCount: response.meta.input_count,\n aFrameServerVersion: response.meta.server_version!,\n aFrameVersion: env.A_FRAME_VERSION!,\n credentialId: response.meta.credential_id!,\n date: response.date,\n });\n } catch (err) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to embed namespace \"${namespace.name}\": ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n\n }\n\n\n @A_Feature.Extend({\n name: A_FrameSegmentFeatures.Embed,\n scope: [A_FrameSegment],\n })\n async embedSegment(\n @A_Inject(A_Caller) segment: A_FrameSegment,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n\n const request = new A_FrameChannelRequest<A_Frame_EmbedResponse>('POST', '/api/v1/segment/embed', {\n segment: segment.toJSON(),\n task: segment.options?.task,\n model: segment.options?.model,\n });\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.embedNamespace',\n fragments: [request]\n })\n .inherit(A_Context.scope(this));\n\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope) as A_Frame_EmbedResponse;\n executionScope.destroy();\n\n const response = request.response!;\n if (!response.data || !response.data[0] || !response.data[0].embedding) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.InvalidRequest,\n description: `Error during embed a segment: ${segment.content}`\n });\n }\n\n const vector = new Float32Array(response.data[0].embedding);\n\n segment.fromJSON({\n aseid: segment.aseid.toString(),\n content: segment.content,\n hash: segment.hash,\n embedding: vector,\n model: response.model,\n // dimensions: response.meta.dimensions,\n // inputCount: response.meta.input_count,\n aFrameServerVersion: response.meta.server_version!,\n aFrameVersion: env.A_FRAME_VERSION!,\n credentialId: response.meta.credential_id!,\n embeddedAt: response.date,\n });\n } catch (err) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to embed segment with content \"${segment.content}\": ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n\n }\n\n\n\n /**\n * Feature implementation for A_FrameDynamicStructure.generate().\n *\n * Calls POST /api/v1/structure/generate — the server returns element\n * descriptions with embeddings. The raw definition (embeddings included) is\n * stored on the entity so the separate `map()` phase can use them later.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicStructureFeatures.Generate,\n scope: [A_FrameDynamicStructure],\n })\n async generateDynamicStructure(\n @A_Inject(A_Caller) structure: A_FrameDynamicStructure,\n @A_Inject(A_FrameDynamicStructureOperation) operation: A_FrameDynamicStructureOperation,\n ) {\n const request = new A_FrameChannelRequest<A_FrameStructureGenerateResponse>(\n 'POST',\n '/api/v1/structure/generate',\n {\n prompt: structure.prompt,\n model: structure.modelName,\n context: structure.contextHint,\n metaHint: structure.metaHintValue,\n includeBases: structure.includedBases,\n excludeBases: structure.excludedBases,\n enabledComponents: structure.enabledComponentsList,\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.generateDynamicStructure',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n\n structure.hydrateFromGeneration(resp.definition, {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n });\n }\n\n /**\n * Feature implementation for A_FrameDynamicStructure.patch().\n *\n * Calls POST /api/v1/structure/patch — the server returns an updated\n * definition with fresh embeddings. The raw definition is stored on the\n * entity; run `map()` afterwards to update the component-mapping result.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicStructureFeatures.Patch,\n scope: [A_FrameDynamicStructure],\n })\n async patchDynamicStructure(\n @A_Inject(A_Caller) structure: A_FrameDynamicStructure,\n @A_Inject(A_FrameDynamicStructureOperation) operation: A_FrameDynamicStructureOperation,\n ) {\n const { instruction } = operation.params as { instruction: string };\n\n const request = new A_FrameChannelRequest<A_FrameStructurePatchResponse>(\n 'POST',\n '/api/v1/structure/patch',\n {\n originalPrompt: structure.prompt,\n definition: this._stripStructureEmbeddings(structure.definition ?? { containers: [], components: [], fragments: [], entities: [] }),\n patchInstruction: instruction,\n model: structure.modelName,\n context: structure.contextHint,\n metaHint: structure.metaHintValue,\n includeBases: structure.includedBases,\n excludeBases: structure.excludedBases,\n enabledComponents: structure.enabledComponentsList,\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.patchDynamicStructure',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n\n structure.hydrateFromPatch(resp.definition, resp.patchSummary, {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n });\n }\n\n // ─── Structure helpers ─────────────────────────────────────────────────────\n\n /**\n * Strip embedding arrays and any client-side match fields from a definition\n * before sending it to the server (the server does not need embeddings back).\n */\n private _stripStructureEmbeddings(def: A_FrameDynamicStructureDefinition): A_FrameDynamicStructureDefinition {\n const strip = (el: A_FrameDynamicStructureDefinitionEntity): A_FrameDynamicStructureDefinitionEntity => {\n const { embedding, ...rest } = el as any;\n return rest as A_FrameDynamicStructureDefinitionEntity;\n };\n\n return {\n containers: def.containers.map(c => ({\n ...strip(c),\n components: (c.components ?? []).map(strip),\n fragments: (c.fragments ?? []).map(strip),\n entities: (c.entities ?? []).map(strip),\n })),\n components: def.components.map(strip),\n fragments: def.fragments.map(strip),\n entities: def.entities.map(strip),\n };\n }\n\n // ─── DynamicFeature channel extensions ────────────────────────────────────\n\n /**\n * Feature implementation for A_FrameDynamicFeature.generate().\n *\n * Calls POST /api/v1/feature/generate — the server decomposes the prompt\n * into an ordered workflow: title, description, steps (with embeddings),\n * and supporting components/fragments/entities.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicFeatureFeatures.Generate,\n scope: [A_FrameDynamicFeature],\n })\n async generateDynamicFeature(\n @A_Inject(A_Caller) feature: A_FrameDynamicFeature,\n @A_Inject(A_FrameDynamicFeatureOperation) operation: A_FrameDynamicFeatureOperation,\n ) {\n const request = new A_FrameChannelRequest<A_FrameFeatureGenerateResponse>(\n 'POST',\n '/api/v1/feature/generate',\n {\n prompt: feature.prompt,\n model: feature.modelName,\n context: feature.contextHint,\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.generateDynamicFeature',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n feature.hydrateFromGeneration(resp.definition, {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n });\n }\n\n /**\n * Feature implementation for A_FrameDynamicFeature.patch().\n *\n * Calls POST /api/v1/feature/patch — the server returns an updated workflow\n * definition with fresh embeddings on all steps and elements.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicFeatureFeatures.Patch,\n scope: [A_FrameDynamicFeature],\n })\n async patchDynamicFeature(\n @A_Inject(A_Caller) feature: A_FrameDynamicFeature,\n @A_Inject(A_FrameDynamicFeatureOperation) operation: A_FrameDynamicFeatureOperation,\n ) {\n const { instruction } = operation.params as { instruction: string };\n\n const request = new A_FrameChannelRequest<A_FrameFeaturePatchResponse>(\n 'POST',\n '/api/v1/feature/patch',\n {\n originalPrompt: feature.prompt,\n definition: this._stripFeatureEmbeddings(\n feature.definition ?? {\n title: '', description: '', steps: [], components: [], fragments: [], entities: []\n }\n ),\n patchInstruction: instruction,\n model: feature.modelName,\n context: feature.contextHint,\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.patchDynamicFeature',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n feature.hydrateFromPatch(resp.definition, resp.patchSummary, {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n });\n }\n\n private _stripFeatureEmbeddings(def: A_FrameDynamicFeatureDefinition): A_FrameDynamicFeatureDefinition {\n const strip = (el: any): any => { const { embedding, ...rest } = el; return rest; };\n return {\n ...def,\n steps: def.steps.map(strip),\n components: def.components.map(strip),\n fragments: def.fragments.map(strip),\n entities: def.entities.map(strip),\n };\n }\n\n\n // /**\n // * Open a bidirectional WebSocket connection to the server.\n // *\n // * The method resolves once the connection is closed (server close frame or\n // * transport end). While it is pending, call `socket.send(event)` to push\n // * frames to the server. Incoming frames are dispatched automatically to\n // * any `@A_FrameChannelSocket.onEvent()` handlers registered on `socket`.\n // *\n // * @param socket - Pre-configured socket entity (optionally a subclass with\n // * event handlers pre-registered via `@onEvent` decorators).\n // */\n // async connect(socket: A_FrameChannelSocket): Promise<void> {\n // const executionScope = new A_Scope({\n // name: 'A_FrameChannel.connect',\n // entities: [socket],\n // }).inherit(A_Context.scope(this));\n\n // try {\n // await this.call(A_FrameFeatures.Socket, executionScope);\n // executionScope.destroy();\n // } catch (err) {\n // executionScope.destroy();\n // throw new A_FrameChannelError({\n // title: A_FrameChannelError.RequestFailed,\n // description: `WebSocket connection to ${socket.path} failed: ${err instanceof Error ? err.message : String(err)}`,\n // });\n // }\n // }\n\n\n // ─── Dynamic Content ──────────────────────────────────────────────────────\n\n /**\n * Feature implementation for A_FrameDynamicContent.generate().\n *\n * Calls POST /api/v1/content/generate on the server and hydrates the\n * content entity from the returned piece list.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicContentFeatures.Generate,\n scope: [A_FrameDynamicContent],\n })\n async generateDynamicContent(\n @A_Inject(A_Caller) content: A_FrameDynamicContent,\n @A_Inject(A_FrameDynamicContentOperation) operation: A_FrameDynamicContentOperation,\n ) {\n const request = new A_FrameChannelRequest<A_FrameContentGenerateResponse>(\n 'POST',\n '/api/v1/content/generate',\n {\n prompt: content.prompt,\n model: content.modelName,\n ...(content.systemPrompt !== undefined ? { system: content.systemPrompt } : {}),\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.generateDynamicContent',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n\n // Convert wire segments to proper A_FrameSegment domain objects.\n // The channel is the adapter layer — it never passes raw serialized\n // objects into the domain; it always constructs instances.\n const segments = (resp.segments ?? []).map(w => {\n const seg = new A_FrameSegment({ content: w.content, options: { task: 'document' } });\n if (w.embedding?.length) {\n seg.hydrateFromEmbedding(new Float32Array(w.embedding));\n }\n return seg;\n });\n\n content.hydrateFromGeneration(segments, {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n });\n }\n\n /**\n * Feature implementation for A_FrameDynamicContent.patch().\n *\n * Sends the current piece list and a patch instruction to the server,\n * then applies the returned operations to the content entity.\n */\n @A_Feature.Extend({\n name: A_FrameDynamicContentFeatures.Patch,\n scope: [A_FrameDynamicContent],\n })\n async patchDynamicContent(\n @A_Inject(A_Caller) content: A_FrameDynamicContent,\n @A_Inject(A_FrameDynamicContentOperation) operation: A_FrameDynamicContentOperation,\n ) {\n const { instruction, segments } = operation.params as { instruction: string; segments: A_FrameSegment[] };\n\n // Use short positional wire IDs (s0, s1, …) to maximise LLM reliability\n // when the model echoes them back as targetId values.\n // We keep a reverse map to translate back to the real ASEID ids.\n const wireIdToAseid = new Map<string, string>();\n const wireSegments = segments.map((s, idx) => {\n const wireId = `s${idx}`;\n wireIdToAseid.set(wireId, String(s.id));\n return {\n id: wireId,\n index: idx,\n text: s.content,\n vector: s.vector ? Array.from(s.vector.values) : undefined,\n };\n });\n\n const request = new A_FrameChannelRequest<A_FrameContentPatchResponse>(\n 'POST',\n '/api/v1/content/patch',\n {\n prompt: content.prompt,\n segments: wireSegments,\n instruction,\n model: content.modelName,\n ...(content.systemPrompt !== undefined ? { system: content.systemPrompt } : {}),\n },\n );\n\n const requestScope = new A_Scope({\n name: 'A_FrameChannel.patchDynamicContent',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n await this.call(A_FrameFeatures.Request, requestScope);\n requestScope.destroy();\n\n const resp = request.response!;\n\n // Translate wire ids (s0, s1, …) in targetId back to real ASEID ids\n // so that applyOperation can look them up in the index.\n const translatedOperations = resp.operations.map(op => ({\n ...op,\n targetId: op.targetId\n ? (wireIdToAseid.get(op.targetId) ?? op.targetId)\n : op.targetId,\n }));\n\n content.hydrateFromPatch(\n { ...resp, operations: translatedOperations },\n {\n model: resp.model,\n serverVersion: resp.meta?.server_version ?? '0.0.0',\n },\n );\n }\n\n\n // ─── Completion ───────────────────────────────────────────────────────────\n\n /**\n * Feature implementation for A_FrameCompletion.generate().\n *\n * Calls POST /api/v1/completions/generate on the server, which performs a\n * text completion followed by an embedding of the result in a single\n * round-trip, then hydrates the entity with both values.\n */\n @A_Feature.Extend({\n name: A_FrameCompletionFeatures.Generate,\n scope: [A_FrameCompletion],\n })\n async generateCompletion(\n @A_Inject(A_Caller) completion: A_FrameCompletion,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n const request = new A_FrameChannelRequest<A_Frame_CompletionResponse>(\n 'POST',\n '/api/v1/completions/generate',\n {\n prompt: completion.prompt,\n options: completion.options,\n },\n );\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.generateCompletion',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n const response = request.response!;\n\n if (!response.text) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.InvalidRequest,\n description: `Invalid completion response for prompt \"${completion.prompt}\"`,\n });\n }\n\n completion.hydrateFromGeneration({\n text: response.text,\n embedding: new Float32Array(response.embedding),\n model: response.model,\n date: response.date,\n aFrameVersion: env.A_FRAME_VERSION!,\n aFrameServerVersion: response.meta.server_version,\n });\n } catch (err) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to generate completion for prompt \"${completion.prompt}\": ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Calls POST /api/v1/schema/extract on the server.\n *\n * Sends the prompt and schema descriptor to the Nova model, which returns\n * a structured JSON object matching the schema. Hydrates the entity with\n * the extracted data and provenance metadata.\n */\n @A_Feature.Extend({\n name: A_FrameSchemaFeatures.Extract,\n scope: [A_FrameSchema],\n })\n async extractSchema<T extends Record<string, unknown>>(\n @A_Inject(A_Caller) scheme: A_FrameSchema<T>,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n const request = new A_FrameChannelRequest<A_Frame_SchemaResponse<T>>(\n 'POST',\n '/api/v1/schema/extract',\n {\n prompt: scheme.prompt,\n schema: scheme.schema,\n options: scheme.options,\n },\n );\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannel.extractSchema',\n fragments: [request],\n }).inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameFeatures.Request, executionScope);\n executionScope.destroy();\n\n const response = request.response!;\n\n if (!response.data) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.InvalidRequest,\n description: `Invalid scheme extraction response for prompt \"${scheme.prompt}\"`,\n });\n }\n\n scheme.hydrateFromExtraction(response.data, {\n model: response.model,\n date: response.date,\n aFrameVersion: env.A_FRAME_VERSION!,\n aFrameServerVersion: response.meta.server_version,\n });\n } catch (err) {\n throw new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Failed to extract scheme for prompt \"${scheme.prompt}\": ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n}\n\n\n\n\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {a}from'./chunk-H6OZP4ZV.mjs';import {a as a$2}from'./chunk-46LRNZRG.mjs';import {a as a$1}from'./chunk-G7MKGKG5.mjs';import {A_Entity,A_Dependency,A_FormatterHelper}from'@adaas/a-concept';var r={Load:"_A_FRAME_DEFINITION_LOAD",Save:"_A_FRAME_DEFINITION_SAVE",Embed:"_A_FRAME_DEFINITION_EMBED",Destroy:"_A_FRAME_DEFINITION_DESTROY"};var s=class extends A_Entity{static get concept(){return "a-frame"}get id(){return this.aseid.id}get type(){return this._type}get name(){return this._name}get description(){return this._description}get dependency(){return new A_Dependency(this._dependency)}get source(){return this._source}get vector(){return this._vector}get namespace(){return this._namespace}get metadata(){return this._metadata||{}}get hash(){return this._hash}get date(){return this._date}get model(){return this._model}get requestedModel(){return this._requestedModel}get credentialId(){return this._credentialId}get aFrameVersion(){return this._aFrameVersion}get aFrameServerVersion(){return this._aFrameServerVersion}get aFrameMeta(){return this._aFrameMeta}get isEmbed(){return this._vector!==void 0}save(e){return this.call(r.Save,e)}destroy(e){return this.call(r.Destroy,e)}load(e){return this.call(r.Load,e)}update(e){e.source&&(this._source=e.source),e.description!==void 0&&(this._description=e.description),e.metadata!==void 0&&(this._metadata=e.metadata),e.namespace!==void 0&&(this._namespace=e.namespace);}embed(e){return this.call(r.Embed,e)}fromNew(e){this._type=e.type,this.aseid=this.generateASEID({id:A_FormatterHelper.toKebabCase(e.dependency+"-"+e.name),scope:"a-frame"}),this._name=e.name;let t=this._name+"//"+(e.description||"")+"//"+(e.metadata?JSON.stringify(e.metadata):"")+"//"+e.source+"//Namespace: "+e.namespace.id;this._hash=a.fnv1a(t),this._source=e.source,this._description=e.description,this._namespace=e.namespace,this._metadata=e.metadata,this._dependency=e.dependency,this._requestedModel=e.model??a$1.ANTARES;}fromJSON(e){this._name=e.name,this._hash=e.hash,this._source=e.source||"",this._description=e.description,this._metadata=e.metadata,this._vector=e.embedding?new a$2(e.embedding):void 0,this._date=e.date,this._model=e.model,this._credentialId=e.credentialId,this._aFrameVersion=e.aFrameVersion,this._aFrameServerVersion=e.aFrameServerVersion,this._aFrameMeta=e.aFrameMeta;}toJSON(){return {...super.toJSON(),hash:this._hash,name:this._name,source:this._source,description:this._description,metadata:this._metadata,namespace:this._namespace.aseid.toString(),embedding:this._vector?.values,date:this._date??new Date().toISOString(),model:this._model,credentialId:this._credentialId,aFrameVersion:this._aFrameVersion,aFrameServerVersion:this._aFrameServerVersion,aFrameMeta:this._aFrameMeta}}hydrateFromEmbedding(e,t){this._vector=new a$2(e),this._date=new Date().toISOString(),t&&(this._model=t.model,this._credentialId=t.credentialId??void 0,this._aFrameVersion=t.aFrameVersion,this._aFrameServerVersion=t.aFrameServerVersion,t.aFrameMeta&&(this._aFrameMeta=t.aFrameMeta));}toString(){let e=[];return e.push(`// ${this._name}`),this._description&&e.push(`// ${this._description}`),e.push(this._source),e.join(`
|
|
2
|
+
`)}};export{r as a,s as b};//# sourceMappingURL=chunk-FVH2EEVP.mjs.map
|
|
3
|
+
//# sourceMappingURL=chunk-FVH2EEVP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameDefinition/A-FrameDefinition.constants.ts","../../src/lib/A-FrameDefinition/A-FrameDefinition.entity.ts"],"names":["A_FrameDefinitionFeatures","A_FrameDefinition","A_Entity","A_Dependency","scope","updates","newEntity","A_FormatterHelper","hashSource","A_FrameHashHelper","A_FRAME_MODELS","serialized","A_FrameVector","embedding","meta","parts"],"mappings":"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","file":"chunk-FVH2EEVP.mjs","sourcesContent":["\n\nexport const A_FrameDefinitionFeatures = {\n Load: '_A_FRAME_DEFINITION_LOAD',\n Save: '_A_FRAME_DEFINITION_SAVE',\n Embed: '_A_FRAME_DEFINITION_EMBED',\n Destroy: '_A_FRAME_DEFINITION_DESTROY',\n} as const;","import { A_Dependency, A_Entity, A_FormatterHelper, A_Scope } from \"@adaas/a-concept\";\nimport {\n A_FrameDefinition_EmbeddingMeta,\n A_FrameDefinition_Init,\n A_FrameDefinition_Serialized,\n DefinitionExtractedMeta,\n} from \"./A-FrameDefinition.types\";\nimport { A_FrameVector } from \"../A-FrameVector/A-FrameVector.entity\";\nimport { A_FrameNamespace } from \"../A-FrameNamespace\";\nimport { A_FrameHashHelper } from \"@adaas/a-frame/helpers/Hash.helper\";\nimport { A_FrameDefinitionFeatures } from \"./A-FrameDefinition.constants\";\nimport { A_FrameTargetType } from \"../A-Frame/A-Frame.types\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels\";\n\nexport class A_FrameDefinition extends A_Entity<A_FrameDefinition_Init, A_FrameDefinition_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n protected _name!: string;\n protected _type!: A_FrameTargetType;\n protected _source!: string;\n protected _dependency!: string;\n protected _description?: string;\n protected _namespace!: A_FrameNamespace;\n protected _metadata?: Record<string, any>;\n protected _vector?: A_FrameVector;\n\n\n /**\n * Common properties for all definition types (component, entity, container, fragment, method\n */\n protected _hash!: string;\n protected _date?: string;\n protected _model!: string;\n protected _requestedModel!: string;\n protected _credentialId!: string;\n protected _aFrameVersion!: string;\n protected _aFrameServerVersion!: string;\n protected _aFrameMeta?: DefinitionExtractedMeta;\n\n //-----------------------------------------------------------------------------------------------------\n //---------------------------------------- Primary properties -----------------------------------------\n //-----------------------------------------------------------------------------------------------------\n /**\n * Definition Identifier from ASEID unique name \n */\n get id(): string {\n return this.aseid.id;\n }\n /**\n * The type of the definition target (component, entity, container, fragment, or method)\n */\n get type(): A_FrameTargetType {\n return this._type;\n }\n /**\n * The name of the defined feature (e.g. \"MyComponent\", \"myMethod\", etc.)\n */\n get name(): string {\n return this._name;\n }\n /**\n * Description that explains the purpose of the defined feature, its inputs/outputs, or any other relevant information.\n */\n get description(): string | undefined {\n return this._description;\n }\n\n get dependency(): A_Dependency {\n return new A_Dependency(this._dependency);\n }\n /**\n * The original source code string that implements the defined feature. This is the main content that gets embedded and indexed for search.\n */\n get source(): string {\n return this._source;\n }\n /**\n * The vector embedding representing the definition's source and metadata. This is populated after embedding and is used for similarity search in the index.\n */\n get vector(): A_FrameVector | undefined {\n return this._vector;\n }\n /**\n * Namespace to which this definition belongs. Used for scoping search and organizing definitions. If not specified, defaults to the global namespace.\n */\n get namespace(): A_FrameNamespace {\n return this._namespace;\n }\n /**\n * Additional metadata about the definition, stored as key-value pairs. This can include any relevant information that doesn't fit into the other properties but may be useful for search or organization.\n */\n get metadata(): Record<string, any> {\n return this._metadata || {};\n }\n //-----------------------------------------------------------------------------------------------------\n //----------------------------------- Common State properties -----------------------------------------\n //-----------------------------------------------------------------------------------------------------\n /**\n * A unique hash string computed from the definition's name, source, description, and metadata. This is used to identify identical definitions and avoid duplicates in the index.\n */\n get hash(): string {\n return this._hash;\n }\n /**\n * The timestamp (in milliseconds since epoch) when the definition was embedded. This is used for tracking the freshness of the embedding and can be useful for re-embedding stale definitions.\n */\n get date(): string | undefined {\n return this._date;\n }\n /**\n * The name of the embedding model used to produce the vector. This is important for understanding the characteristics of the embedding and for debugging purposes.\n */\n get model(): string {\n return this._model;\n }\n /**\n * The model requested for embedding at init time. Defaults to `A_FRAME_MODELS.ANTARES`\n * if not explicitly overridden. Sent to the server in the embed request.\n */\n get requestedModel(): string {\n return this._requestedModel;\n }\n /**\n * ID of the server credential (API key) used during embedding. This is useful for auditing and debugging embedding operations, especially when multiple credentials are in use.\n */\n get credentialId(): string | undefined {\n return this._credentialId;\n }\n /**\n * Version of @adaas/a-frame that produced this record. This helps track compatibility and understand which version of the library was used to create the definition.\n */\n get aFrameVersion(): string | undefined {\n return this._aFrameVersion;\n }\n /**\n * Version of a-frame-server that produced the vector. This is useful for debugging embedding issues and ensuring compatibility between the library and the embed server.\n */\n get aFrameServerVersion(): string | undefined {\n return this._aFrameServerVersion;\n }\n /**\n * Structural metadata extracted server-side when the definition was embedded.\n * Includes discovered methods, @A_Inject dependencies, and @A_Feature.Extend names.\n */\n get aFrameMeta(): DefinitionExtractedMeta | undefined {\n return this._aFrameMeta;\n }\n //-----------------------------------------------------------------------------------------------------\n //--------------------------------------- Computed properties -----------------------------------------\n //-----------------------------------------------------------------------------------------------------\n get isEmbed(): boolean {\n return this._vector !== undefined;\n }\n /**\n * Saves the definition to storage. The actual implementation of saving is handled by the A_FrameDefinitionFeatures.Save feature, which can be implemented by the environment (e.g. browser, Node.js) to persist the definition in 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_FrameDefinitionFeatures.Save, scope);\n }\n /**\n * Deletes the definition from storage. The actual implementation of deletion is handled by the A_FrameDefinitionFeatures.Destroy feature, which can be implemented by the environment to remove the definition 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_FrameDefinitionFeatures.Destroy, scope);\n }\n /**\n * Loads the definition from storage. The actual implementation of loading is handled by the A_FrameDefinitionFeatures.Load feature, which can be implemented by the environment to retrieve the definition from the database, file system, or other storage mechanism and populate the entity's properties accordingly.\n * \n * @param scope \n * @returns \n */\n load(scope?: A_Scope): Promise<void> | void {\n return this.call(A_FrameDefinitionFeatures.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_FrameDefinition, 'source' | 'description' | 'metadata' | 'namespace'>>): void {\n if (updates.source) this._source = updates.source;\n if (updates.description !== undefined) this._description = updates.description;\n if (updates.metadata !== undefined) this._metadata = updates.metadata;\n if (updates.namespace !== undefined) this._namespace = updates.namespace;\n }\n /**\n * Generates the embedding for the definition's source and metadata. \n * \n * @param scope \n * @returns \n */\n embed(scope?: A_Scope): Promise<void> | void {\n return this.call(A_FrameDefinitionFeatures.Embed, scope);\n }\n\n\n fromNew(newEntity: A_FrameDefinition_Init): void {\n this._type = newEntity.type;\n\n this.aseid = this.generateASEID({\n id: A_FormatterHelper.toKebabCase(newEntity.dependency + '-' + newEntity.name),\n scope: 'a-frame',\n });\n\n this._name = newEntity.name;\n\n const hashSource = this._name + '//'\n + (newEntity.description || '') + '//'\n + (newEntity.metadata ? JSON.stringify(newEntity.metadata) : '') + '//'\n + newEntity.source + '//'\n + 'Namespace: ' + newEntity.namespace.id;\n\n this._hash = A_FrameHashHelper.fnv1a(hashSource);\n\n this._source = newEntity.source;\n this._description = newEntity.description;\n this._namespace = newEntity.namespace;\n this._metadata = newEntity.metadata;\n this._dependency = newEntity.dependency;\n this._requestedModel = newEntity.model ?? A_FRAME_MODELS.ANTARES;\n }\n\n fromJSON(serialized: A_FrameDefinition_Serialized): void {\n this._name = serialized.name;\n this._hash = serialized.hash;\n this._source = serialized.source || '';\n this._description = serialized.description;\n this._metadata = serialized.metadata;\n this._vector = serialized.embedding ? new A_FrameVector(serialized.embedding) : undefined;\n this._date = serialized.date;\n this._model = serialized.model;\n this._credentialId = serialized.credentialId;\n this._aFrameVersion = serialized.aFrameVersion;\n this._aFrameServerVersion = serialized.aFrameServerVersion;\n this._aFrameMeta = serialized.aFrameMeta;\n }\n\n toJSON(): A_FrameDefinition_Serialized {\n return {\n ...super.toJSON(),\n hash: this._hash,\n name: this._name,\n source: this._source,\n description: this._description,\n metadata: this._metadata,\n namespace: this._namespace.aseid.toString(),\n embedding: this._vector?.values,\n date: this._date ?? new Date().toISOString(),\n model: this._model,\n credentialId: this._credentialId,\n aFrameVersion: this._aFrameVersion,\n aFrameServerVersion: this._aFrameServerVersion,\n aFrameMeta: this._aFrameMeta,\n };\n }\n\n\n // ─── Embedding hydration ──────────────────────────────────────────────────\n\n /** Populate the vector from a pre-existing storage record */\n // hydrateFromRecord(record: A_FrameDefinition_Record): void {\n // if (record.hash !== this._hash) {\n // throw new Error(\n // `A_FrameDefinition.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 // this._model = record.model;\n // this._credentialId = record.credentialId;\n // this._aFrameVersion = record.aFrameVersion;\n // this._aFrameServerVersion = record.aFrameServerVersion;\n // }\n\n /** Populate the vector from a freshly-fetched embedding */\n hydrateFromEmbedding(embedding: Float32Array, meta?: A_FrameDefinition_EmbeddingMeta): void {\n this._vector = new A_FrameVector(embedding);\n this._date = new Date().toISOString();\n if (meta) {\n this._model = meta.model;\n this._credentialId = meta.credentialId ?? undefined;\n this._aFrameVersion = meta.aFrameVersion;\n this._aFrameServerVersion = meta.aFrameServerVersion;\n if (meta.aFrameMeta)\n this._aFrameMeta = meta.aFrameMeta;\n }\n }\n\n // ─── Embedding input ──────────────────────────────────────────────────────\n\n /**\n * Build the text string sent to the embedding model.\n * Concatenates name + description + source so the resulting\n * vector captures both intent and implementation.\n */\n toString(): string {\n const parts: string[] = [];\n parts.push(`// ${this._name}`);\n if (this._description) parts.push(`// ${this._description}`);\n parts.push(this._source);\n return parts.join('\\n');\n }\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {A_Error,A_Entity,A_Fragment,A_CommonHelper,A_Scope,A_Context}from'@adaas/a-concept';var h={Load:"_A_FRAME_DYNAMIC_STRUCTURE_LOAD",Update:"_A_FRAME_DYNAMIC_STRUCTURE_UPDATE",Generate:"_A_FRAME_DYNAMIC_STRUCTURE_GENERATE"},F={Updated:"_A_FRAME_DYNAMIC_STRUCTURE_UPDATED"};var s=class extends A_Error{};s.InvalidPatch="InvalidPatch",s.VersionMismatch="VersionMismatch",s.ComponentNotFound="ComponentNotFound",s.InvalidOperation="InvalidOperation",s.GenerationFailed="GenerationFailed";var m=class extends A_Entity{static get concept(){return "a-frame"}fromNew(a){this.version=a.version,this.timestamp=a.timestamp,this.reason=a.reason,this.encoded=a.encoded,this.delta=a.delta;}toJSON(){return {...super.toJSON(),version:this.version,timestamp:this.timestamp,reason:this.reason,encoded:this.encoded,delta:this.delta}}};var c=class extends A_Fragment{constructor(e={}){super({name:"a-frame-dynamic-structure-operation-context"});this._meta=new Map;this._meta.set("params",e);}get params(){return this._meta.get("params")}get(e){return this._meta.get(e)}set(e,t){this._meta.set(e,t);}};var y=class extends A_Entity{constructor(){super(...arguments);this._version=0;}static get concept(){return "a-frame"}fromNew(e){this.aseid=this.generateASEID(),this.createdAt=Date.now(),this._components=[],this._history=[],this._version=0,this.listeners=new Map,this.prompt=e.prompt,this.model=e.model,this.context=e.context??"generic",this.metaHint=e.metaHint??"",this.includeBases=(e.includeBases||[]).map(t=>typeof t=="string"?t:A_CommonHelper.getComponentName(t)),this.excludeBases=(e.excludeBases||[]).map(t=>typeof t=="string"?t:A_CommonHelper.getComponentName(t)),this.enabledComponents=(e.enabledComponents||[]).map(t=>typeof t=="string"?t:A_CommonHelper.getComponentName(t));}get components(){return this._components}get history(){return this._history}get version(){return this._version}get modelName(){return this.model}async generate(){let e=new c,t=new A_Scope({name:"a-frame-dynamic-structure-generate",fragments:[e]}).inherit(A_Context.scope(this));try{await this.call(h.Generate,t),t.destroy();}catch(r){throw t.destroy(),new s({title:s.GenerationFailed,description:`Failed to generate structure: ${r instanceof Error?r.message:String(r)}`})}}async patch(e){let t=new c({prompt:e}),r=new A_Scope({name:"a-frame-dynamic-structure-patch",fragments:[t]}).inherit(A_Context.scope(this));try{await this.call(h.Update,r),r.destroy();}catch(i){throw r.destroy(),new s({title:s.GenerationFailed,description:`Failed to patch structure: ${i instanceof Error?i.message:String(i)}`})}}hydrateFromResolved(e,t){this._components=e.map((r,i)=>({component:r.component,score:r.score,meta:{...r.meta||{},id:r.meta?.id??`c-${i}`}})),this._history.push(new m({version:this._version,timestamp:Date.now(),reason:`Generated for: "${this.prompt}"`,encoded:Buffer.from(JSON.stringify(this._components)).toString("base64"),delta:this._components.length}));}hydrateFromGeneration(e,t){this._components=e.map((r,i)=>({component:r.prompt,score:1,meta:{id:`c-${i}`,type:r.type,role:r.role,sourceText:r.sourceText}})),this._history.push(new m({version:this._version,timestamp:Date.now(),reason:`Generated for: "${this.prompt}"`,encoded:Buffer.from(JSON.stringify(this._components)).toString("base64"),delta:this._components.length}));}hydrateFromPatch(e,t){let r=this._components.length;this._components=this._components.filter(n=>!e.removals.includes(n.meta.id));for(let n of e.modifications){let o=this._components.find(p=>p.meta.id===n.componentId);o&&(o.component=n.newPrompt,o.meta.role=n.newRole);}let i=this._components.reduce((n,o)=>{let p=parseInt((o.meta.id??"c-0").replace("c-",""),10);return isNaN(p)?n:Math.max(n,p)},-1),g=e.additions.map((n,o)=>({component:n.prompt,score:1,meta:{id:`c-${i+1+o}`,type:n.type,role:n.role,sourceText:n.sourceText}}));this._components=[...this._components,...g],this._version++,this._history.push(new m({version:this._version,timestamp:Date.now(),reason:e.patchSummary,encoded:Buffer.from(JSON.stringify(this._components)).toString("base64"),delta:this._components.length-r}));}revertTo(e){return this}toJSON(){return {...super.toJSON(),name:this.prompt,description:`DynamicStructure with ${this._components.length} components and ${this._history.length} patches`,metadata:{model:this.model,context:this.context,metaHint:this.metaHint,includeBases:this.includeBases,excludeBases:this.excludeBases,enabledComponents:this.enabledComponents,createdAt:this.createdAt},history:this._history.map(e=>e.toJSON())}}subscribe(e,t){this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t);}unsubscribe(e,t){this.listeners.get(e)?.delete(t);}emit(e,t){this.listeners.get(e)?.forEach(r=>r(t));}};export{h as a,F as b,m as c,s as d,c as e,y as f};//# sourceMappingURL=chunk-G6ULYKSU.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-G6ULYKSU.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.constants.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.error.ts","../../src/lib/A-FrameDynamicPatch/A-FrameDynamicPatch.entity.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructureOperation.context.ts","../../src/lib/A-FrameDynamicStructure/A-FrameDynamicStructure.entity.ts"],"names":["A_FrameDynamicStructureFeatures","A_FrameDynamicStructureEvents","A_FrameDynamicStructureError","A_Error","A_FrameDynamicPatch","A_Entity","options","A_FrameDynamicStructureOperation","A_Fragment","params","key","value","A_FrameDynamicStructure","b","A_CommonHelper","operation","executionScope","A_Scope","A_Context","err","prompt","components","meta","c","guesses","g","patchResult","prevCount","mod","comp","maxId","max","n","additions","a","i","version","item","feature","listener","stage","context"],"mappings":"4FAGO,IAAMA,CAAAA,CAAkC,CAC3C,IAAA,CAAM,iCAAA,CACN,OAAQ,mCAAA,CACR,QAAA,CAAU,qCACd,CAAA,CAGaC,CAAAA,CAAgC,CACzC,QAAS,oCACb,MCTaC,CAAAA,CAAN,cAA2CC,OAAQ,GAA7CD,CAAAA,CAEO,aAAe,cAAA,CAFtBA,CAAAA,CAGO,eAAA,CAAkB,iBAAA,CAHzBA,CAAAA,CAIO,iBAAA,CAAoB,oBAJ3BA,CAAAA,CAKO,gBAAA,CAAmB,kBAAA,CAL1BA,CAAAA,CAOO,gBAAA,CAAmB,kBAAA,KCN1BE,CAAAA,CAAN,cAAkCC,QAAmE,CAExG,WAAW,SAAkB,CACzB,OAAO,SACX,CAUA,OAAA,CAAQC,CAAAA,CAAmC,CACvC,IAAA,CAAK,OAAA,CAAUA,CAAAA,CAAQ,OAAA,CACvB,IAAA,CAAK,SAAA,CAAYA,EAAQ,SAAA,CACzB,IAAA,CAAK,MAAA,CAASA,CAAAA,CAAQ,MAAA,CACtB,IAAA,CAAK,QAAUA,CAAAA,CAAQ,OAAA,CACvB,IAAA,CAAK,KAAA,CAAQA,CAAAA,CAAQ,MACzB,CAGA,MAAA,EAAyC,CACrC,OAAO,CACH,GAAG,KAAA,CAAM,QAAO,CAChB,OAAA,CAAS,IAAA,CAAK,OAAA,CACd,SAAA,CAAW,IAAA,CAAK,UAChB,MAAA,CAAQ,IAAA,CAAK,MAAA,CACb,OAAA,CAAS,IAAA,CAAK,OAAA,CACd,MAAO,IAAA,CAAK,KAChB,CACJ,CACJ,EClCO,IAAMC,CAAAA,CAAN,cAEGC,UAAW,CAIjB,WAAA,CACIC,CAAAA,CAAuB,EAAC,CAC1B,CACE,MAAM,CAAE,IAAA,CAAM,6CAA8C,CAAC,CAAA,CALjE,IAAA,CAAU,MAA0B,IAAI,GAAA,CAMpC,IAAA,CAAK,KAAA,CAAM,GAAA,CAAI,QAAA,CAAUA,CAAM,EAEnC,CAEA,IAAI,MAAA,EAAuB,CACvB,OAAO,KAAK,KAAA,CAAM,GAAA,CAAI,QAAQ,CAClC,CAGA,GAAA,CAAIC,EAAa,CACb,OAAO,IAAA,CAAK,KAAA,CAAM,GAAA,CAAIA,CAAG,CAC7B,CAGA,GAAA,CAAIA,CAAAA,CAAaC,CAAAA,CAAY,CACzB,IAAA,CAAK,MAAM,GAAA,CAAID,CAAAA,CAAKC,CAAK,EAC7B,CAEJ,MCLaC,CAAAA,CAAN,cAAsCP,QAA2E,CAAjH,WAAA,EAAA,CAAA,KAAA,CAAA,GAAA,SAAA,CAAA,CAoBH,IAAA,CAAQ,SAAW,EAAA,CAlBnB,WAAW,OAAA,EAAkB,CACzB,OAAO,SACX,CAoBA,OAAA,CAAQC,CAAAA,CAAuC,CAC3C,IAAA,CAAK,KAAA,CAAQ,IAAA,CAAK,eAAc,CAChC,IAAA,CAAK,SAAA,CAAY,IAAA,CAAK,GAAA,EAAI,CAE1B,KAAK,WAAA,CAAc,EAAC,CACpB,IAAA,CAAK,QAAA,CAAW,GAChB,IAAA,CAAK,QAAA,CAAW,CAAA,CAEhB,IAAA,CAAK,SAAA,CAAY,IAAI,IAErB,IAAA,CAAK,MAAA,CAASA,EAAQ,MAAA,CACtB,IAAA,CAAK,MAAQA,CAAAA,CAAQ,KAAA,CACrB,IAAA,CAAK,OAAA,CAAUA,CAAAA,CAAQ,OAAA,EAAW,UAClC,IAAA,CAAK,QAAA,CAAWA,CAAAA,CAAQ,QAAA,EAAY,EAAA,CACpC,IAAA,CAAK,cAAgBA,CAAAA,CAAQ,YAAA,EAAgB,EAAC,EAAG,GAAA,CAAKO,CAAAA,EAAM,OAAOA,CAAAA,EAAM,QAAA,CAAWA,CAAAA,CAAIC,cAAAA,CAAe,gBAAA,CAAiBD,CAAC,CAAC,CAAA,CAC1H,IAAA,CAAK,YAAA,CAAA,CAAgBP,CAAAA,CAAQ,YAAA,EAAgB,IAAI,GAAA,CAAKO,CAAAA,EAAM,OAAOA,CAAAA,EAAM,QAAA,CAAWA,CAAAA,CAAIC,eAAe,gBAAA,CAAiBD,CAAC,CAAC,CAAA,CAC1H,IAAA,CAAK,iBAAA,CAAA,CAAqBP,EAAQ,iBAAA,EAAqB,IAAI,GAAA,CAAKO,CAAAA,EAAM,OAAOA,CAAAA,EAAM,QAAA,CAAWA,CAAAA,CAAIC,cAAAA,CAAe,gBAAA,CAAiBD,CAAC,CAAC,EACxI,CAKA,IAAI,UAAA,EAAsE,CACtE,OAAO,KAAK,WAChB,CAGA,IAAI,OAAA,EAA8C,CAC9C,OAAO,KAAK,QAChB,CAGA,IAAI,OAAA,EAAkB,CAClB,OAAO,KAAK,QAChB,CAGA,IAAI,SAAA,EAAoB,CACpB,OAAO,KAAK,KAChB,CAWA,MAAM,QAAA,EAA0B,CAC5B,IAAME,EAAY,IAAIR,CAAAA,CAEhBS,CAAAA,CAAiB,IAAIC,OAAAA,CAAQ,CAC/B,KAAM,oCAAA,CACN,SAAA,CAAW,CAACF,CAAS,CACzB,CAAC,CAAA,CACI,OAAA,CAAQG,SAAAA,CAAU,KAAA,CAAM,IAAI,CAAC,EAElC,GAAI,CACA,MAAM,IAAA,CAAK,IAAA,CAAKlB,CAAAA,CAAgC,SAAUgB,CAAc,CAAA,CACxEA,CAAAA,CAAe,OAAA,GACnB,CAAA,MAASG,EAAK,CACV,MAAAH,CAAAA,CAAe,OAAA,EAAQ,CACjB,IAAId,EAA6B,CACnC,KAAA,CAAOA,CAAAA,CAA6B,gBAAA,CACpC,WAAA,CAAa,CAAA,8BAAA,EAAiCiB,aAAe,KAAA,CAAQA,CAAAA,CAAI,OAAA,CAAU,MAAA,CAAOA,CAAG,CAAC,EAClG,CAAC,CACL,CACJ,CAGA,MAAM,KAAA,CAAMC,EAA+B,CACvC,IAAML,CAAAA,CAAY,IAAIR,CAAAA,CAAiC,CAAE,OAAAa,CAAO,CAAC,CAAA,CAE3DJ,CAAAA,CAAiB,IAAIC,OAAAA,CAAQ,CAC/B,IAAA,CAAM,iCAAA,CACN,SAAA,CAAW,CAACF,CAAS,CACzB,CAAC,CAAA,CACI,OAAA,CAAQG,SAAAA,CAAU,KAAA,CAAM,IAAI,CAAC,EAElC,GAAI,CACA,MAAM,IAAA,CAAK,IAAA,CAAKlB,CAAAA,CAAgC,OAAQgB,CAAc,CAAA,CACtEA,CAAAA,CAAe,OAAA,GACnB,CAAA,MAASG,EAAK,CACV,MAAAH,CAAAA,CAAe,OAAA,EAAQ,CACjB,IAAId,EAA6B,CACnC,KAAA,CAAOA,CAAAA,CAA6B,gBAAA,CACpC,WAAA,CAAa,CAAA,2BAAA,EAA8BiB,aAAe,KAAA,CAAQA,CAAAA,CAAI,QAAU,MAAA,CAAOA,CAAG,CAAC,CAAA,CAC/F,CAAC,CACL,CACJ,CASA,mBAAA,CACIE,EACAC,CAAAA,CACI,CACJ,IAAA,CAAK,WAAA,CAAcD,CAAAA,CAAW,GAAA,CAAI,CAACE,CAAAA,CAAG,CAAA,IAAO,CACzC,SAAA,CAAWA,CAAAA,CAAE,SAAA,CACb,MAAOA,CAAAA,CAAE,KAAA,CACT,IAAA,CAAM,CAAE,GAAIA,CAAAA,CAAE,MAAQ,EAAC,CAAI,EAAA,CAAKA,CAAAA,CAAE,IAAA,EAAc,EAAA,EAAM,KAAK,CAAC,CAAA,CAAG,CACnE,CAAA,CAAE,CAAA,CAEF,IAAA,CAAK,SAAS,IAAA,CAAK,IAAInB,CAAAA,CAAoB,CACvC,OAAA,CAAW,IAAA,CAAK,SAChB,SAAA,CAAW,IAAA,CAAK,KAAI,CACpB,MAAA,CAAW,mBAAmB,IAAA,CAAK,MAAM,CAAA,CAAA,CAAA,CACzC,OAAA,CAAW,MAAA,CAAO,IAAA,CAAK,KAAK,SAAA,CAAU,IAAA,CAAK,WAAW,CAAC,CAAA,CAAE,QAAA,CAAS,QAAQ,CAAA,CAC1E,KAAA,CAAW,IAAA,CAAK,WAAA,CAAY,MAChC,CAAC,CAAC,EACN,CAMA,qBAAA,CACIoB,CAAAA,CACAF,CAAAA,CACI,CACJ,KAAK,WAAA,CAAcE,CAAAA,CAAQ,GAAA,CAAI,CAACC,CAAAA,CAAG,CAAA,IAAO,CACtC,SAAA,CAAWA,CAAAA,CAAE,MAAA,CACb,KAAA,CAAO,CAAA,CACP,IAAA,CAAM,CAAE,EAAA,CAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAA,CAAI,IAAA,CAAMA,CAAAA,CAAE,KAAM,IAAA,CAAMA,CAAAA,CAAE,KAAM,UAAA,CAAYA,CAAAA,CAAE,UAAW,CAC/E,CAAA,CAAE,CAAA,CAEF,IAAA,CAAK,QAAA,CAAS,IAAA,CAAK,IAAIrB,CAAAA,CAAoB,CACvC,OAAA,CAAW,IAAA,CAAK,QAAA,CAChB,SAAA,CAAW,KAAK,GAAA,EAAI,CACpB,MAAA,CAAW,CAAA,gBAAA,EAAmB,IAAA,CAAK,MAAM,IACzC,OAAA,CAAW,MAAA,CAAO,IAAA,CAAK,IAAA,CAAK,SAAA,CAAU,IAAA,CAAK,WAAW,CAAC,CAAA,CAAE,QAAA,CAAS,QAAQ,CAAA,CAC1E,KAAA,CAAW,KAAK,WAAA,CAAY,MAChC,CAAC,CAAC,EACN,CAMA,iBACIsB,CAAAA,CACAJ,CAAAA,CACI,CACJ,IAAMK,CAAAA,CAAY,IAAA,CAAK,YAAY,MAAA,CAGnC,IAAA,CAAK,WAAA,CAAc,IAAA,CAAK,WAAA,CAAY,MAAA,CAChCJ,GAAK,CAACG,CAAAA,CAAY,QAAA,CAAS,QAAA,CAAUH,CAAAA,CAAE,IAAA,CAAa,EAAE,CAC1D,CAAA,CAGA,IAAA,IAAWK,CAAAA,IAAOF,CAAAA,CAAY,aAAA,CAAe,CACzC,IAAMG,CAAAA,CAAO,IAAA,CAAK,WAAA,CAAY,IAAA,CAAKN,CAAAA,EAAMA,EAAE,IAAA,CAAa,EAAA,GAAOK,CAAAA,CAAI,WAAW,CAAA,CAC1EC,CAAAA,GACAA,EAAK,SAAA,CAAYD,CAAAA,CAAI,SAAA,CACpBC,CAAAA,CAAK,IAAA,CAAa,IAAA,CAAOD,EAAI,OAAA,EAEtC,CAGA,IAAME,CAAAA,CAAQ,IAAA,CAAK,WAAA,CAAY,OAAO,CAACC,CAAAA,CAAKR,CAAAA,GAAM,CAC9C,IAAMS,CAAAA,CAAI,UAAWT,CAAAA,CAAE,IAAA,CAAa,IAAM,KAAA,EAAO,OAAA,CAAQ,KAAM,EAAE,CAAA,CAAG,EAAE,CAAA,CACtE,OAAO,KAAA,CAAMS,CAAC,CAAA,CAAID,CAAAA,CAAM,IAAA,CAAK,GAAA,CAAIA,CAAAA,CAAKC,CAAC,CAC3C,CAAA,CAAG,EAAE,CAAA,CAECC,CAAAA,CAAYP,CAAAA,CAAY,SAAA,CAAU,IAAI,CAACQ,CAAAA,CAAGC,CAAAA,IAAO,CACnD,SAAA,CAAWD,CAAAA,CAAE,OACb,KAAA,CAAO,CAAA,CACP,IAAA,CAAM,CAAE,EAAA,CAAI,CAAA,EAAA,EAAKJ,EAAQ,CAAA,CAAIK,CAAC,CAAA,CAAA,CAAI,IAAA,CAAMD,CAAAA,CAAE,IAAA,CAAM,KAAMA,CAAAA,CAAE,IAAA,CAAM,UAAA,CAAYA,CAAAA,CAAE,UAAW,CAC3F,EAAE,CAAA,CAEF,IAAA,CAAK,WAAA,CAAc,CAAC,GAAG,IAAA,CAAK,YAAa,GAAGD,CAAS,CAAA,CACrD,IAAA,CAAK,QAAA,EAAA,CAEL,IAAA,CAAK,SAAS,IAAA,CAAK,IAAI7B,CAAAA,CAAoB,CACvC,OAAA,CAAW,IAAA,CAAK,SAChB,SAAA,CAAW,IAAA,CAAK,GAAA,EAAI,CACpB,MAAA,CAAWsB,CAAAA,CAAY,aACvB,OAAA,CAAW,MAAA,CAAO,IAAA,CAAK,IAAA,CAAK,SAAA,CAAU,IAAA,CAAK,WAAW,CAAC,CAAA,CAAE,QAAA,CAAS,QAAQ,CAAA,CAC1E,KAAA,CAAW,KAAK,WAAA,CAAY,MAAA,CAASC,CACzC,CAAC,CAAC,EACN,CAMA,QAAA,CAASS,CAAAA,CAAuB,CAG5B,OAAO,IACX,CAmCA,QAA6C,CACzC,OAAO,CACH,GAAG,KAAA,CAAM,QAAO,CAChB,IAAA,CAAM,IAAA,CAAK,MAAA,CACX,WAAA,CAAa,CAAA,sBAAA,EAAyB,KAAK,WAAA,CAAY,MAAM,CAAA,gBAAA,EAAmB,IAAA,CAAK,QAAA,CAAS,MAAM,WACpG,QAAA,CAAU,CACN,KAAA,CAAO,IAAA,CAAK,KAAA,CACZ,OAAA,CAAS,KAAK,OAAA,CACd,QAAA,CAAU,IAAA,CAAK,QAAA,CACf,YAAA,CAAc,IAAA,CAAK,aACnB,YAAA,CAAc,IAAA,CAAK,YAAA,CACnB,iBAAA,CAAmB,IAAA,CAAK,iBAAA,CACxB,UAAW,IAAA,CAAK,SACpB,CAAA,CACA,OAAA,CAAS,IAAA,CAAK,QAAA,CAAS,IAAIC,CAAAA,EAAQA,CAAAA,CAAK,MAAA,EAAQ,CACpD,CACJ,CAGA,SAAA,CAAUC,CAAAA,CAA4CC,CAAAA,CAAiD,CAC9F,IAAA,CAAK,SAAA,CAAU,IAAID,CAAO,CAAA,EAC3B,IAAA,CAAK,SAAA,CAAU,GAAA,CAAIA,CAAAA,CAAS,IAAI,GAAK,CAAA,CAEzC,IAAA,CAAK,SAAA,CAAU,GAAA,CAAIA,CAAO,EAAG,GAAA,CAAIC,CAAQ,EAC7C,CAEA,WAAA,CAAYD,CAAAA,CAA4CC,EAAiD,CACrG,IAAA,CAAK,SAAA,CAAU,GAAA,CAAID,CAAO,CAAA,EAAG,OAAOC,CAAQ,EAChD,CAGA,IAAA,CAAKC,CAAAA,CAA0CC,CAAAA,CAAoB,CAC/D,IAAA,CAAK,SAAA,CAAU,GAAA,CAAID,CAAK,CAAA,EAAG,OAAA,CAAQD,GAAYA,CAAAA,CAASE,CAAO,CAAC,EACpE,CAEJ","file":"chunk-G6ULYKSU.mjs","sourcesContent":["\n\n\nexport const A_FrameDynamicStructureFeatures = {\n Load: '_A_FRAME_DYNAMIC_STRUCTURE_LOAD',\n Update: '_A_FRAME_DYNAMIC_STRUCTURE_UPDATE',\n Generate: '_A_FRAME_DYNAMIC_STRUCTURE_GENERATE',\n} as const;\n\n\nexport const A_FrameDynamicStructureEvents = {\n Updated: '_A_FRAME_DYNAMIC_STRUCTURE_UPDATED',\n} as const;","import { A_Error } from \"@adaas/a-concept\";\n\n\nexport class A_FrameDynamicStructureError extends A_Error {\n\n static readonly InvalidPatch = 'InvalidPatch';\n static readonly VersionMismatch = 'VersionMismatch';\n static readonly ComponentNotFound = 'ComponentNotFound';\n static readonly InvalidOperation = 'InvalidOperation';\n\n static readonly GenerationFailed = 'GenerationFailed';\n \n}","import { A_Entity } from \"@adaas/a-concept\";\nimport { A_FrameDynamicPatch_Init, A_FrameDynamicPatch_Serialized } from \"./A-FrameDynamicPatch.types\";\n\n\nexport class A_FrameDynamicPatch extends A_Entity<A_FrameDynamicPatch_Init, A_FrameDynamicPatch_Serialized> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n version!: number;\n timestamp!: number;\n reason!: string;\n encoded!: string; // base64-encoded snapshot of components at this version\n delta!: number; // component count change vs. previous patch\n\n\n\n fromNew(options: A_FrameDynamicPatch_Init) {\n this.version = options.version;\n this.timestamp = options.timestamp;\n this.reason = options.reason;\n this.encoded = options.encoded;\n this.delta = options.delta;\n }\n\n\n toJSON(): A_FrameDynamicPatch_Serialized {\n return {\n ...super.toJSON(),\n version: this.version,\n timestamp: this.timestamp,\n reason: this.reason,\n encoded: this.encoded,\n delta: this.delta,\n }\n }\n}","import { A_Fragment } from \"@adaas/a-concept\"\n\n\nexport class A_FrameDynamicStructureOperation<\n _InputParams = any,\n> extends A_Fragment {\n\n protected _meta: Map<string, any> = new Map();\n\n constructor(\n params: _InputParams = {} as _InputParams\n ) {\n super({ name: 'a-frame-dynamic-structure-operation-context' });\n this._meta.set('params', params);\n\n }\n\n get params(): _InputParams {\n return this._meta.get('params');\n }\n\n\n get(key: string) {\n return this._meta.get(key);\n }\n\n\n set(key: string, value: any) {\n this._meta.set(key, value);\n }\n\n}\n","import { A_CommonHelper, A_Context, A_Entity, A_Scope, A_TYPES__A_DependencyInjectable } from \"@adaas/a-concept\";\nimport { A_FrameDynamicStructure_Init, A_FrameDynamicStructure_Serialized, A_FrameDynamicStructureEventNames, A_FrameDynamicStructureListener, A_FrameDynamicStructureResolvedComponent } from \"./A-FrameDynamicStructure.types\";\nimport { A_FrameDynamicStructureFeatures } from \"./A-FrameDynamicStructure.constants\";\nimport { A_FrameDynamicPatch } from \"../A-FrameDynamicPatch/A-FrameDynamicPatch.entity\";\nimport { A_FrameDynamicStructureError } from \"./A-FrameDynamicStructure.error\";\nimport { A_FrameDynamicStructureOperation } from \"./A-FrameDynamicStructureOperation.context\";\n\n\n/** Guess item as returned by POST /api/v1/structure/generate */\nexport interface A_FrameStructureGuessItem {\n sourceText: string;\n type: string;\n prompt: string;\n role: string;\n}\n\n/** Patch diff as returned by POST /api/v1/structure/patch */\nexport interface A_FrameStructurePatchResult {\n patchSummary: string;\n additions: A_FrameStructureGuessItem[];\n removals: string[];\n modifications: Array<{ componentId: string; newRole: string; newPrompt: string }>;\n}\n\n\n\nexport class A_FrameDynamicStructure extends A_Entity<A_FrameDynamicStructure_Init, A_FrameDynamicStructure_Serialized> {\n \n static get concept(): string {\n return 'a-frame';\n }\n\n // ── Identity ────────────────────────────────────────────────────────────────\n prompt!: string;\n createdAt!: number;\n\n // ── Config ──────────────────────────────────────────────────────────────────\n private model!: string;\n private context!: string;\n private metaHint!: string;\n private includeBases!: string[];\n private excludeBases!: string[];\n private enabledComponents!: string[];\n // ── State ───────────────────────────────────────────────────────────────────\n private _components!: A_FrameDynamicStructureResolvedComponent[]\n private _history!: A_FrameDynamicPatch[]\n private _version = 0;\n\n private listeners!: Map<string, Set<A_FrameDynamicStructureListener>>;\n\n fromNew(options: A_FrameDynamicStructure_Init) {\n this.aseid = this.generateASEID();\n this.createdAt = Date.now();\n\n this._components = [];\n this._history = [];\n this._version = 0;\n\n this.listeners = new Map();\n\n this.prompt = options.prompt;\n this.model = options.model;\n this.context = options.context ?? 'generic';\n this.metaHint = options.metaHint ?? '';\n this.includeBases = (options.includeBases || []).map((b) => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this.excludeBases = (options.excludeBases || []).map((b) => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n this.enabledComponents = (options.enabledComponents || []).map((b) => typeof b === 'string' ? b : A_CommonHelper.getComponentName(b));\n }\n\n // ── Public read-only accessors ───────────────────────────────────────────────\n\n /** The current resolved component list (output of the last generate or patch). */\n get components(): ReadonlyArray<A_FrameDynamicStructureResolvedComponent> {\n return this._components;\n }\n\n /** Immutable patch history. */\n get history(): ReadonlyArray<A_FrameDynamicPatch> {\n return this._history;\n }\n\n /** Current schema version (increments with each patch). */\n get version(): number {\n return this._version;\n }\n\n /** The AI model name to use for generation / patching. */\n get modelName(): string {\n return this.model;\n }\n\n\n // ── Main pipeline ────────────────────────────────────────────────────────────\n\n /**\n * Run the full generation pipeline:\n * content generation → structure mapping → encode → patch\n *\n * @returns The resolved component list.\n */\n async generate(): Promise<void> {\n const operation = new A_FrameDynamicStructureOperation();\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-structure-generate',\n fragments: [operation],\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicStructureFeatures.Generate, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicStructureError({\n title: A_FrameDynamicStructureError.GenerationFailed,\n description: `Failed to generate structure: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n\n async patch(prompt: string): Promise<void> {\n const operation = new A_FrameDynamicStructureOperation({ prompt });\n\n const executionScope = new A_Scope({\n name: 'a-frame-dynamic-structure-patch',\n fragments: [operation],\n })\n .inherit(A_Context.scope(this));\n\n try {\n await this.call(A_FrameDynamicStructureFeatures.Update, executionScope);\n executionScope.destroy();\n } catch (err) {\n executionScope.destroy();\n throw new A_FrameDynamicStructureError({\n title: A_FrameDynamicStructureError.GenerationFailed,\n description: `Failed to patch structure: ${err instanceof Error ? err.message : String(err)}`,\n });\n }\n }\n\n /**\n * Populate the component list from pre-resolved components produced by an\n * SSE-driven generate pipeline (where a server and client cooperate to map\n * AI guesses to actual registered components).\n *\n * Creates the first history entry, identical to `hydrateFromGeneration`.\n */\n hydrateFromResolved(\n components: A_FrameDynamicStructureResolvedComponent[],\n meta: { model: string; serverVersion: string },\n ): void {\n this._components = components.map((c, i) => ({\n component: c.component,\n score: c.score,\n meta: { ...(c.meta || {}), id: (c.meta as any)?.id ?? `c-${i}` },\n }));\n\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: `Generated for: \"${this.prompt}\"`,\n encoded: Buffer.from(JSON.stringify(this._components)).toString('base64'),\n delta: this._components.length,\n }));\n }\n\n /**\n * Populate the component list from a freshly-received generate response.\n * Creates the first history entry.\n */\n hydrateFromGeneration(\n guesses: A_FrameStructureGuessItem[],\n meta: { model: string; serverVersion: string },\n ): void {\n this._components = guesses.map((g, i) => ({\n component: g.prompt,\n score: 1.0,\n meta: { id: `c-${i}`, type: g.type, role: g.role, sourceText: g.sourceText },\n }));\n\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: `Generated for: \"${this.prompt}\"`,\n encoded: Buffer.from(JSON.stringify(this._components)).toString('base64'),\n delta: this._components.length,\n }));\n }\n\n /**\n * Apply an AI-computed patch diff to the current component list.\n * Increments the version and records a new history entry.\n */\n hydrateFromPatch(\n patchResult: A_FrameStructurePatchResult,\n meta: { model: string; serverVersion: string },\n ): void {\n const prevCount = this._components.length;\n\n // Removals\n this._components = this._components.filter(\n c => !patchResult.removals.includes((c.meta as any).id)\n );\n\n // Modifications\n for (const mod of patchResult.modifications) {\n const comp = this._components.find(c => (c.meta as any).id === mod.componentId);\n if (comp) {\n comp.component = mod.newPrompt;\n (comp.meta as any).role = mod.newRole;\n }\n }\n\n // Additions — generate new IDs from current max index\n const maxId = this._components.reduce((max, c) => {\n const n = parseInt(((c.meta as any).id ?? 'c-0').replace('c-', ''), 10);\n return isNaN(n) ? max : Math.max(max, n);\n }, -1);\n\n const additions = patchResult.additions.map((a, i) => ({\n component: a.prompt,\n score: 1.0,\n meta: { id: `c-${maxId + 1 + i}`, type: a.type, role: a.role, sourceText: a.sourceText },\n }));\n\n this._components = [...this._components, ...additions];\n this._version++;\n\n this._history.push(new A_FrameDynamicPatch({\n version: this._version,\n timestamp: Date.now(),\n reason: patchResult.patchSummary,\n encoded: Buffer.from(JSON.stringify(this._components)).toString('base64'),\n delta: this._components.length - prevCount,\n }));\n }\n\n /**\n * Restore the component list to a specific version from history.\n * Creates a new patch entry so the revert itself is tracked.\n */\n revertTo(version: number): this {\n // this._currentVersion = version;\n\n return this;\n }\n\n // ── Serialisation ─────────────────────────────────────────────────────────────\n\n // /**\n // * Encode the complete DynamicStructure state to an opaque base64 string.\n // * Suitable for storage, transport, or embedding in another system.\n // */\n // serialize(): string {\n // const payload: SerializedDynamicStructure = {\n // id: this.id,\n // version: this._version,\n // prompt: this.prompt,\n // components: [...this._components],\n // history: this._history.map(({ version, timestamp, reason }) => ({\n // version,\n // timestamp,\n // reason,\n // })),\n // };\n // return encode(payload);\n // }\n\n // /**\n // * Decode a serialised string back to its raw payload.\n // * Note: this is a static factory that returns the data only —\n // * it does not reconstruct a live DynamicStructure instance.\n // *\n // * To reconstruct a live instance, create a new DynamicStructure and\n // * call .patch() with the decoded components.\n // */\n // static deserialize(encoded: string): SerializedDynamicStructure {\n // return decode<SerializedDynamicStructure>(encoded);\n // }\n\n toJSON(): A_FrameDynamicStructure_Serialized {\n return {\n ...super.toJSON(),\n name: this.prompt,\n description: `DynamicStructure with ${this._components.length} components and ${this._history.length} patches`,\n metadata: {\n model: this.model,\n context: this.context,\n metaHint: this.metaHint,\n includeBases: this.includeBases,\n excludeBases: this.excludeBases,\n enabledComponents: this.enabledComponents,\n createdAt: this.createdAt,\n },\n history: this._history.map(item => item.toJSON()),\n }\n }\n\n // ── Internals ──────────────────────────────────────────────────────────────\n subscribe(feature: A_FrameDynamicStructureEventNames, listener: A_FrameDynamicStructureListener): void {\n if (!this.listeners.has(feature)) {\n this.listeners.set(feature, new Set());\n }\n this.listeners.get(feature)!.add(listener);\n }\n\n unsubscribe(feature: A_FrameDynamicStructureEventNames, listener: A_FrameDynamicStructureListener): void {\n this.listeners.get(feature)?.delete(listener);\n }\n\n\n emit(stage: A_FrameDynamicStructureEventNames, context: any): void {\n this.listeners.get(stage)?.forEach(listener => listener(context));\n }\n\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameModels/A-FrameModels.constants.ts"],"names":["A_FRAME_MODELS"],"mappings":"AAcO,IAAMA,CAAAA,CAAiB,CAW1B,OAAA,CAAS,kBAAA,CAQT,IAAA,CAAM,eAAA,CAWN,KAAA,CAAO,gBAAA,CASP,MAAA,CAAQ,iBAAA,CASR,IAAA,CAAM,eAAA,CAQN,KAAM,eAEV","file":"chunk-G7MKGKG5.mjs","sourcesContent":["/**\n * Adaas named model identifiers — client-side mirror of the server catalog.\n *\n * These are the stable logical identifiers for each model role. Pass them\n * wherever an entity or channel method accepts a `model` option to target a\n * specific named model on the server.\n *\n * The server resolves these IDs to physical backend models (e.g. Ollama,\n * OpenAI) and applies any required task prefixes automatically. Swapping to a\n * dedicated fine-tuned model in the future requires no changes on the client.\n *\n * @see adaas-a-frame-mcp/README.models.md\n */\n\nexport const A_FRAME_MODELS = {\n\n // ── Embedding ─────────────────────────────────────────────────────────────\n\n /**\n * Antares — component definition embedding model.\n *\n * Indexes component sources and namespace definitions with the\n * `search_document:` prefix. The reference system everything navigates\n * against. Use when storing content that will be retrieved later.\n */\n ANTARES: 'adaas-antares-v1' as const,\n\n /**\n * Vega — search query embedding model.\n *\n * Produces `search_query:` prefixed vectors for retrieval against the\n * Antares index. Use when embedding a user query or search term.\n */\n VEGA: 'adaas-vega-v1' as const,\n\n // ── Completion ────────────────────────────────────────────────────────────\n\n /**\n * Rigel — code completion model.\n *\n * Generates TypeScript/JavaScript code with syntax precision.\n * Default model for `A_FrameCompletion` — use for code generation,\n * scaffolding, and structured source output.\n */\n RIGEL: 'adaas-rigel-v1' as const,\n\n /**\n * Pulsar — software architecture completion model.\n *\n * Decomposes requirements into structured component designs.\n * Use for architecture analysis, DSG structure generation, and\n * patch planning.\n */\n PULSAR: 'adaas-pulsar-v1' as const,\n\n /**\n * Lyra — bridge/classifier model.\n *\n * Translates content semantics into structured text.\n * Default model for `A_FrameDynamicContent` — use for content\n * generation and patching.\n */\n LYRA: 'adaas-lyra-v1' as const,\n\n /**\n * Nova — param extraction model.\n *\n * Illuminates structured JSON parameters hidden inside unstructured text.\n * Outputs constrained JSON by default.\n */\n NOVA: 'adaas-nova-v1' as const,\n\n} as const;\n\nexport type A_FrameModelId = typeof A_FRAME_MODELS[keyof typeof A_FRAME_MODELS];\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {b as b$1}from'./chunk-YQJFTBGV.mjs';import {c,b as b$3}from'./chunk-AYN7KUQT.mjs';import {a as a$2}from'./chunk-INS7RO3B.mjs';import {b as b$2,a as a$1}from'./chunk-ZVCTU2DN.mjs';import {a,b}from'./chunk-DMGQW3AO.mjs';import {A_Concept,A_Inject,A_Scope,A_Feature,A_Caller,A_Error,A_Fragment,A_Component,A_Context}from'@adaas/a-concept';var w=class extends A_Fragment{constructor(){super({name:"a-frame-context"});}get encryptionKey(){return this.credentials?.encryption_key}get serverVersion(){return this.credentials?.server_version}isAuthenticated(){return !!this.credentials}setCredentials(s){if(s.error){this.credentials=void 0;return}this.credentials=s.response||void 0;}};var S={SaveDefinitions:"_A_FRAME_STORAGE_SAVE",LoadDefinitions:"_A_FRAME_STORAGE_LOAD",DestroyDefinitions:"_A_FRAME_STORAGE_DESTROY",SaveNamespaces:"_A_FRAME_STORAGE_SAVE_NAMESPACES",LoadNamespaces:"_A_FRAME_STORAGE_LOAD_NAMESPACES",DestroyNamespaces:"_A_FRAME_STORAGE_DESTROY_NAMESPACES"};var g=class extends A_Fragment{constructor(s){super({name:"a-frame-storage-operation"}),this._params=s;}get result(){return this._result}get error(){return this._error}get params(){return this._params}complete(s){this._result=s;}fail(s){this._error=s;}};var _=class extends A_Error{};_.SaveDefinitionFailed="SaveDefinitionFailed",_.LoadDefinitionsFailed="LoadDefinitionsFailed",_.DestroyDefinitionsFailed="DestroyDefinitionsFailed",_.SaveNamespaceFailed="SaveNamespaceFailed",_.LoadNamespacesFailed="LoadNamespacesFailed",_.DestroyNamespacesFailed="DestroyNamespacesFailed";var R=class extends A_Component{async saveDefinitions(s){let e=new g({records:s}),t=new A_Scope({name:"A_FrameStorage.saveDefinitions",fragments:[e]}).inherit(A_Context.scope(this));try{return await this.call(S.SaveDefinitions,t),t.destroy(),e}catch{return e.fail(new _({title:_.SaveDefinitionFailed,description:"Failed to save definition records."})),t.destroy(),e}}async loadDefinitions(s,e){let t=new g({namespaceId:s}),a=new A_Scope({name:"A_FrameStorage.loadDefinitions",fragments:[t]}).inherit(A_Context.scope(this));try{return await this.call(S.LoadDefinitions,a),a.destroy(),t}catch{return t.fail(new _({title:_.LoadDefinitionsFailed,description:"Failed to load definition records."})),a.destroy(),t}}async destroyDefinitions(s,e){let t=new g({namespaceId:s,definitionId:e}),a=new A_Scope({name:"A_FrameStorage.destroyDefinitions",fragments:[t]}).inherit(A_Context.scope(this));try{return await this.call(S.DestroyDefinitions,a),a.destroy(),t}catch{return t.fail(new _({title:_.DestroyDefinitionsFailed,description:"Failed to destroy definition records."})),a.destroy(),t}}async saveNamespaces(s){let e=new g({records:s}),t=new A_Scope({name:"A_FrameStorage.saveNamespaces",fragments:[e]}).inherit(A_Context.scope(this));try{return await this.call(S.SaveNamespaces,t),t.destroy(),e}catch{return e.fail(new _({title:_.SaveNamespaceFailed,description:"Failed to save namespace records."})),t.destroy(),e}}async loadNamespaces(s){let e=new g({namespaces:s}),t=new A_Scope({name:"A_FrameStorage.loadNamespaces",fragments:[e]}).inherit(A_Context.scope(this));try{return await this.call(S.LoadNamespaces,t),t.destroy(),e}catch{return e.fail(new _({title:_.LoadNamespacesFailed,description:"Failed to load namespace records."})),t.destroy(),e}}async destroyNamespaces(s){let e=new g({namespaces:s}),t=new A_Scope({name:"A_FrameStorage.destroyNamespaces",fragments:[e]}).inherit(A_Context.scope(this));try{return await this.call(S.DestroyNamespaces,t),t.destroy(),e}catch{return e.fail(new _({title:_.DestroyNamespacesFailed,description:"Failed to destroy namespace records."})),t.destroy(),e}}};function G(F){if(typeof atob=="function"){let s=atob(F),e=new Uint8Array(s.length);for(let t=0;t<s.length;t++)e[t]=s.charCodeAt(t);return e}return new Uint8Array(Buffer.from(F,"base64"))}var D=class F extends A_Fragment{constructor(){if(F._instance)return F._instance;super({name:"a-frame-browser-storage-blobs"});this.store=new Map;this.namespaceBlob=null;this.bundleMeta=null;}static get instance(){return F._instance||(F._instance=new F),F._instance}static fromBundle(e){let t=F.instance;return t.seedFromBundle(e),t}seedFromBundle(e){e.namespaces&&(this.namespaceBlob=G(e.namespaces));for(let[t,a]of Object.entries(e.definitions))this.store.set(t,G(a));this.bundleMeta={aFrameVersion:e.aFrameVersion,serverVersion:e.serverVersion,builtAt:e.builtAt};}};var I=new TextEncoder,C=new TextDecoder,N=class F extends A_Fragment{constructor(){super(...arguments);this.enc=new TextEncoder;this.dec=new TextDecoder;this.A_FRAME_FILE_MAGIC=1162691147;this.A_FRAME_FILE_VERSION=1;this.A_FRAME_HEADER_SIZE=20;}static get fileExtension(){return ".aframe"}getFileName(e){return `${e}${F.fileExtension}`}getNamespaceFileName(){return `__namespaces${F.fileExtension}`}encodePayload(e){let t=[];if(e.some(r=>!r.embedding))throw new Error("All records must have embeddings to be encoded");let a=new Uint8Array(this.A_FRAME_HEADER_SIZE),i=new DataView(a.buffer);i.setUint32(0,this.A_FRAME_FILE_MAGIC,true),a[4]=this.A_FRAME_FILE_VERSION,i.setUint32(5,e.length,true);let d=e[0]?.embedding.length??0;i.setUint16(9,d,true),t.push(a);for(let r of e){let p=I.encode(r.aseid.toString()),y=I.encode(r.name),x=JSON.stringify({hash:r.hash,source:r.source,type:r.type,description:r.description,metadata:r.metadata,namespace:r.namespace,date:r.date,model:r.model,credentialId:r.credentialId,aFrameVersion:r.aFrameVersion,aFrameServerVersion:r.aFrameServerVersion}),E=I.encode(x),b=2+p.length+2+y.length+r.embedding.length*4+4+E.length,f=new Uint8Array(b),h=new DataView(f.buffer),o=0;h.setUint16(o,p.length,true),o+=2,f.set(p,o),o+=p.length,h.setUint16(o,y.length,true),o+=2,f.set(y,o),o+=y.length;for(let u=0;u<r.embedding.length;u++)h.setFloat32(o,r.embedding[u],true),o+=4;h.setUint32(o,E.length,true),o+=4,f.set(E,o),t.push(f);}let l=t.reduce((r,p)=>r+p.length,0),A=new Uint8Array(l),n=0;for(let r of t)A.set(r,n),n+=r.length;return A}decodePayload(e){if(e.length<this.A_FRAME_HEADER_SIZE)throw new Error("Corrupt index: too short for header");let t=new DataView(e.buffer,e.byteOffset,e.byteLength),a=t.getUint32(0,true);if(a!==this.A_FRAME_FILE_MAGIC)throw new Error(`Corrupt index: bad magic 0x${a.toString(16)}`);let i=e[4];if(i!==this.A_FRAME_FILE_VERSION)throw new Error(`Unsupported index version: ${i}`);let d=t.getUint32(5,true),l=t.getUint16(9,true),A=[],n=this.A_FRAME_HEADER_SIZE;for(let r=0;r<d;r++){let p=t.getUint16(n,true);n+=2;let y=C.decode(e.slice(n,n+p));n+=p;let x=t.getUint16(n,true);n+=2;let E=C.decode(e.slice(n,n+x));n+=x;let b=new Float32Array(l);for(let u=0;u<l;u++)b[u]=t.getFloat32(n,true),n+=4;let f=t.getUint32(n,true);n+=4;let h=C.decode(e.slice(n,n+f));n+=f;let o=JSON.parse(h);A.push({aseid:y,hash:o.hash??y,name:E,type:o.type,embedding:b,source:o.source,description:o.description,metadata:o.metadata,namespace:o.namespace,date:o.date,model:o.model,credentialId:o.credentialId,aFrameVersion:o.aFrameVersion,aFrameServerVersion:o.aFrameServerVersion});}return A}encodeNamespacePayload(e){let t=[];if(e.some(r=>!r.embedding))throw new Error("All records must have embeddings to be encoded");let a=new Uint8Array(this.A_FRAME_HEADER_SIZE),i=new DataView(a.buffer);i.setUint32(0,this.A_FRAME_FILE_MAGIC,true),a[4]=this.A_FRAME_FILE_VERSION,i.setUint32(5,e.length,true);let d=e[0]?.embedding.length??0;i.setUint16(9,d,true),t.push(a);for(let r of e){let p=I.encode(r.aseid.toString()),y=I.encode(r.name),x=JSON.stringify({hash:r.hash,description:r.description,metadata:r.metadata,embeddedAt:r.embeddedAt,embeddingModel:r.embeddingModel,credentialId:r.credentialId,aFrameVersion:r.aFrameVersion,aFrameServerVersion:r.aFrameServerVersion}),E=I.encode(x),b=2+p.length+2+y.length+r.embedding.length*4+4+E.length,f=new Uint8Array(b),h=new DataView(f.buffer),o=0;h.setUint16(o,p.length,true),o+=2,f.set(p,o),o+=p.length,h.setUint16(o,y.length,true),o+=2,f.set(y,o),o+=y.length;for(let u=0;u<r.embedding.length;u++)h.setFloat32(o,r.embedding[u],true),o+=4;h.setUint32(o,E.length,true),o+=4,f.set(E,o),t.push(f);}let l=t.reduce((r,p)=>r+p.length,0),A=new Uint8Array(l),n=0;for(let r of t)A.set(r,n),n+=r.length;return A}decodeNamespacePayload(e){if(e.length<this.A_FRAME_HEADER_SIZE)throw new Error("Corrupt namespace index: too short for header");let t=new DataView(e.buffer,e.byteOffset,e.byteLength),a=t.getUint32(0,true);if(a!==this.A_FRAME_FILE_MAGIC)throw new Error(`Corrupt namespace index: bad magic 0x${a.toString(16)}`);let i=e[4];if(i!==this.A_FRAME_FILE_VERSION)throw new Error(`Unsupported namespace index version: ${i}`);let d=t.getUint32(5,true),l=t.getUint16(9,true),A=[],n=this.A_FRAME_HEADER_SIZE;for(let r=0;r<d;r++){let p=t.getUint16(n,true);n+=2;let y=C.decode(e.slice(n,n+p));n+=p;let x=t.getUint16(n,true);n+=2;let E=C.decode(e.slice(n,n+x));n+=x;let b=new Float32Array(l);for(let u=0;u<l;u++)b[u]=t.getFloat32(n,true),n+=4;let f=t.getUint32(n,true);n+=4;let h=C.decode(e.slice(n,n+f));n+=f;let o=JSON.parse(h);A.push({aseid:y,hash:o.hash??y,name:E,embedding:b,description:o.description,metadata:o.metadata,embeddedAt:o.embeddedAt,embeddingModel:o.embeddingModel,credentialId:o.credentialId,aFrameVersion:o.aFrameVersion,aFrameServerVersion:o.aFrameServerVersion});}return A}};var v=class extends R{onLoad(s,e){e||s.register(D.instance);}async saveDefinitionsToMemory(s,e,t,a,i){let d=e.params.records,l=d[0].namespace,A=await this._loadDefinitionsFromMemory(i.store,l,t.encryptionKey,a),n=new Map;for(let p of A)n.set(p.aseid,p);for(let p of d)n.set(p.aseid.toString(),p);let r=a.encodePayload(Array.from(n.values()));i.store.set(l,await a$2.encryptBytes(r,t.encryptionKey)),e.complete({saved:d.length});}async loadDefinitionsFromMemory(s,e,t,a,i){let d=e.params.namespaceId,l=await this._loadDefinitionsFromMemory(i.store,d,t.encryptionKey,a);e.complete({records:l});}async destroyDefinitionsFromMemory(s,e,t,a,i){let d=e.params.namespaceId,l=e.params.definitionId,n=(await this._loadDefinitionsFromMemory(i.store,d,t.encryptionKey,a)).filter(p=>p.aseid!==l),r=a.encodePayload(n);i.store.set(d,await a$2.encryptBytes(r,t.encryptionKey)),e.complete({records:n});}async saveNamespacesToMemory(s,e,t,a,i){let d=e.params.records,l=await this._loadNamespacesFromMemory(i,t.encryptionKey,a),A=new Map;for(let r of l)A.set(r.aseid,r);for(let r of d)A.set(r.aseid.toString(),r);let n=a.encodeNamespacePayload(Array.from(A.values()));i.namespaceBlob=await a$2.encryptBytes(n,t.encryptionKey),e.complete({success:true});}async loadNamespacesFromMemory(s,e,t,a,i){let d=e.params.namespaces,l=await this._loadNamespacesFromMemory(i,t.encryptionKey,a);e.complete({records:d?l.filter(A=>d.includes(A.name)):l});}async destroyNamespacesFromMemory(s,e,t,a,i){let d=e.params.namespaces,A=(await this._loadNamespacesFromMemory(i,t.encryptionKey,a)).filter(r=>!d.includes(r.aseid)),n=a.encodeNamespacePayload(A);i.namespaceBlob=await a$2.encryptBytes(n,t.encryptionKey);try{for(let r of d)i.store.delete(r);e.complete({success:!0});}catch{e.fail(new _({title:_.DestroyNamespacesFailed,description:"Failed to destroy namespace records."})),e.complete({success:false});}}async loadDefinitionFromBlobs(s,e,t,a){if(!e.encryptionKey)return;let i=await this._loadDefinitionsFromMemory(a.store,s.namespace.id,e.encryptionKey,t);if(i.length===0)return;let d=i.find(l=>l.aseid===s.aseid.toString());d&&d.hash===s.hash&&d.aFrameServerVersion===e.serverVersion&&s.fromJSON(d);}async loadNamespaceFromBlobs(s,e,t,a){if(!e.encryptionKey)return;let i=await this._loadNamespacesFromMemory(a,e.encryptionKey,t);if(i.length===0)return;let d=i.find(l=>l.aseid===s.aseid.toString());d&&d.hash===s.hash&&d.aFrameServerVersion===e.serverVersion&&s.fromJSON(d);}async _loadDefinitionsFromMemory(s,e,t,a){let i=s.get(e);if(!i)return [];try{let d=await a$2.decryptBytes(i,t);return a.decodePayload(d)}catch{return []}}async _loadNamespacesFromMemory(s,e,t){let a=s.namespaceBlob;if(!a)return [];try{let i=await a$2.decryptBytes(a,e);return t.decodeNamespacePayload(i)}catch{return []}}};a([A_Concept.Load(),b(0,A_Inject(A_Scope)),b(1,A_Inject(D))],v.prototype,"onLoad",1),a([A_Feature.Extend({name:S.SaveDefinitions,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"saveDefinitionsToMemory",1),a([A_Feature.Extend({name:S.LoadDefinitions,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"loadDefinitionsFromMemory",1),a([A_Feature.Extend({name:S.DestroyDefinitions,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"destroyDefinitionsFromMemory",1),a([A_Feature.Extend({name:S.SaveNamespaces,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"saveNamespacesToMemory",1),a([A_Feature.Extend({name:S.LoadNamespaces,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"loadNamespacesFromMemory",1),a([A_Feature.Extend({name:S.DestroyNamespaces,scope:[R]}),b(0,A_Inject(b$1)),b(1,A_Inject(g)),b(2,A_Inject(w)),b(3,A_Inject(N)),b(4,A_Inject(D))],v.prototype,"destroyNamespacesFromMemory",1),a([A_Feature.Extend({name:a$1.Load,scope:[b$2]}),b(0,A_Inject(A_Caller)),b(1,A_Inject(w)),b(2,A_Inject(N)),b(3,A_Inject(D))],v.prototype,"loadDefinitionFromBlobs",1),a([A_Feature.Extend({name:b$3.Load,scope:[c]}),b(0,A_Inject(A_Caller)),b(1,A_Inject(w)),b(2,A_Inject(N)),b(3,A_Inject(D))],v.prototype,"loadNamespaceFromBlobs",1);export{w as a,S as b,g as c,_ as d,R as e,D as f,N as g,v as h};//# sourceMappingURL=chunk-GOADBDTE.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-GOADBDTE.mjs.map
|