@adaas/a-frame 0.1.1 → 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-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 +1 -1
- package/dist/browser/chunk-YQJFTBGV.mjs.map +1 -1
- 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 +7 -6
- 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 +1 -1
- package/dist/node/chunk-5BKCX2RO.mjs.map +1 -1
- 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-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-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-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-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-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-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 +1 -1
- package/dist/node/chunk-XFUF7SDO.cjs.map +1 -1
- 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 +67 -38
- package/dist/node/core.cjs.map +1 -1
- package/dist/node/core.d.mts +13 -8
- package/dist/node/core.d.ts +13 -8
- package/dist/node/core.mjs +58 -29
- 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 +14 -3
- package/src/lib/A-Frame/A-Frame.component.env-node.ts +45 -15
- 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 -98
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunk64QCZG53_cjs = require('./chunk-64QCZG53.cjs');
|
|
4
|
+
var aConcept = require('@adaas/a-concept');
|
|
5
|
+
|
|
6
|
+
// src/lib/A-FrameSchema/A-FrameSchema.constants.ts
|
|
7
|
+
var A_FrameSchemaFeatures = {
|
|
8
|
+
/** POST /api/v1/schema/extract — extract structured data from a prompt */
|
|
9
|
+
Extract: "_A_FRAME_SCHEMA_EXTRACT"
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
// src/lib/A-FrameSchema/A-FrameSchema.entity.ts
|
|
13
|
+
var A_FrameSchema = class extends aConcept.A_Entity {
|
|
14
|
+
static get concept() {
|
|
15
|
+
return "a-frame";
|
|
16
|
+
}
|
|
17
|
+
// ─── Getters ──────────────────────────────────────────────────────────────
|
|
18
|
+
/** The natural-language input prompt used for extraction. */
|
|
19
|
+
get prompt() {
|
|
20
|
+
return this._prompt;
|
|
21
|
+
}
|
|
22
|
+
/** The schema descriptor passed at construction time. */
|
|
23
|
+
get schema() {
|
|
24
|
+
return this._schema;
|
|
25
|
+
}
|
|
26
|
+
/** Configured options (model, system, temperature, max_tokens). */
|
|
27
|
+
get options() {
|
|
28
|
+
return this._options;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* The structured data extracted by the model.
|
|
32
|
+
* Returns `undefined` until `extract()` has been called successfully.
|
|
33
|
+
*/
|
|
34
|
+
get data() {
|
|
35
|
+
return this._data;
|
|
36
|
+
}
|
|
37
|
+
/** Physical model name returned by the server after extraction. */
|
|
38
|
+
get model() {
|
|
39
|
+
return this._model;
|
|
40
|
+
}
|
|
41
|
+
/** ISO timestamp string of when the extraction was performed. */
|
|
42
|
+
get date() {
|
|
43
|
+
return this._date;
|
|
44
|
+
}
|
|
45
|
+
/** `true` once `extract()` has been called and data is populated. */
|
|
46
|
+
get isExtracted() {
|
|
47
|
+
return this._data !== void 0;
|
|
48
|
+
}
|
|
49
|
+
// ─── Lifecycle ────────────────────────────────────────────────────────────
|
|
50
|
+
fromNew(init) {
|
|
51
|
+
super.fromNew(init);
|
|
52
|
+
this._prompt = init.prompt;
|
|
53
|
+
this._schema = init.schema;
|
|
54
|
+
this._options = init.options?.model ? init.options : { model: chunk64QCZG53_cjs.A_FRAME_MODELS.NOVA, ...init.options };
|
|
55
|
+
}
|
|
56
|
+
fromJSON(serialized) {
|
|
57
|
+
this._prompt = serialized.prompt;
|
|
58
|
+
this._schema = serialized.schema;
|
|
59
|
+
this._data = serialized.data;
|
|
60
|
+
this._model = serialized.model;
|
|
61
|
+
this._date = serialized.date;
|
|
62
|
+
this._aFrameVersion = serialized.aFrameVersion;
|
|
63
|
+
this._aFrameServerVersion = serialized.aFrameServerVersion;
|
|
64
|
+
}
|
|
65
|
+
toJSON() {
|
|
66
|
+
return {
|
|
67
|
+
...super.toJSON(),
|
|
68
|
+
prompt: this._prompt,
|
|
69
|
+
schema: this._schema,
|
|
70
|
+
data: this._data,
|
|
71
|
+
model: this._model,
|
|
72
|
+
date: this._date,
|
|
73
|
+
aFrameVersion: this._aFrameVersion,
|
|
74
|
+
aFrameServerVersion: this._aFrameServerVersion
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
// ─── Operations ───────────────────────────────────────────────────────────
|
|
78
|
+
/**
|
|
79
|
+
* Sends the prompt and schema to the server for structured extraction.
|
|
80
|
+
* After completion, `data` will be populated with a typed `T` object.
|
|
81
|
+
*
|
|
82
|
+
* The feature is implemented by `A_FrameChannel.extractSchema`.
|
|
83
|
+
*/
|
|
84
|
+
extract(scope) {
|
|
85
|
+
return this.call(A_FrameSchemaFeatures.Extract, scope);
|
|
86
|
+
}
|
|
87
|
+
// ─── Hydration ────────────────────────────────────────────────────────────
|
|
88
|
+
hydrateFromExtraction(data, meta) {
|
|
89
|
+
this._data = data;
|
|
90
|
+
this._model = meta.model;
|
|
91
|
+
this._date = meta.date;
|
|
92
|
+
this._aFrameVersion = meta.aFrameVersion;
|
|
93
|
+
this._aFrameServerVersion = meta.aFrameServerVersion;
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
exports.A_FrameSchema = A_FrameSchema;
|
|
98
|
+
exports.A_FrameSchemaFeatures = A_FrameSchemaFeatures;
|
|
99
|
+
//# sourceMappingURL=chunk-WTBRJXFG.cjs.map
|
|
100
|
+
//# sourceMappingURL=chunk-WTBRJXFG.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameSchema/A-FrameSchema.constants.ts","../../src/lib/A-FrameSchema/A-FrameSchema.entity.ts"],"names":["A_Entity","A_FRAME_MODELS"],"mappings":"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","file":"chunk-WTBRJXFG.cjs","sourcesContent":["export const A_FrameSchemaFeatures = {\n /** POST /api/v1/schema/extract — extract structured data from a prompt */\n Extract: '_A_FRAME_SCHEMA_EXTRACT',\n} as const;\n","import { A_Entity, A_Scope } from \"@adaas/a-concept\";\nimport {\n A_FrameSchema_Init,\n A_FrameSchema_Serialized,\n A_FrameSchema_ExtractionMeta,\n A_FrameSchemaOptions,\n} from \"./A-FrameSchema.types\";\nimport { A_FrameSchemaFeatures } from \"./A-FrameSchema.constants\";\nimport { A_FRAME_MODELS } from \"../A-FrameModels/A-FrameModels.constants\";\n\n\n/**\n * A_FrameSchema<T>\n *\n * Sends a natural-language prompt together with a schema descriptor to the\n * server's `/api/v1/schema/extract` endpoint (Nova model). The server\n * returns a structured JSON object that maps the prompt's content to the\n * fields described by `schema`.\n *\n * Generic parameter `T` constrains the shape of the extracted `data` getter\n * so call-sites get full type-safety without casting.\n *\n * Usage:\n * ```ts\n * const scheme = new A_FrameSchema<{ city: string; date: string }>({\n * prompt: 'Book a flight to Paris next Monday.',\n * schema: { city: 'string', date: 'string' },\n * });\n * container.scope.register(scheme);\n * await scheme.extract();\n *\n * console.log(scheme.data); // { city: 'Paris', date: '...' }\n * console.log(scheme.model); // physical model name returned by the server\n * console.log(scheme.isExtracted); // true\n * ```\n */\nexport class A_FrameSchema<T extends Record<string, unknown> = Record<string, unknown>>\n extends A_Entity<A_FrameSchema_Init<T>, A_FrameSchema_Serialized<T>> {\n\n static get concept(): string {\n return 'a-frame';\n }\n\n protected _prompt!: string;\n protected _schema!: Record<keyof T, string | Record<string, string>>;\n protected _options?: A_FrameSchemaOptions;\n\n protected _data?: T;\n protected _model?: string;\n protected _date?: string;\n protected _aFrameVersion?: string;\n protected _aFrameServerVersion?: string;\n\n\n // ─── Getters ──────────────────────────────────────────────────────────────\n\n /** The natural-language input prompt used for extraction. */\n get prompt(): string {\n return this._prompt;\n }\n\n /** The schema descriptor passed at construction time. */\n get schema(): Record<keyof T, string | Record<string, string>> {\n return this._schema;\n }\n\n /** Configured options (model, system, temperature, max_tokens). */\n get options(): A_FrameSchemaOptions | undefined {\n return this._options;\n }\n\n /**\n * The structured data extracted by the model.\n * Returns `undefined` until `extract()` has been called successfully.\n */\n get data(): T | undefined {\n return this._data;\n }\n\n /** Physical model name returned by the server after extraction. */\n get model(): string | undefined {\n return this._model;\n }\n\n /** ISO timestamp string of when the extraction was performed. */\n get date(): string | undefined {\n return this._date;\n }\n\n /** `true` once `extract()` has been called and data is populated. */\n get isExtracted(): boolean {\n return this._data !== undefined;\n }\n\n\n // ─── Lifecycle ────────────────────────────────────────────────────────────\n\n fromNew(init: A_FrameSchema_Init<T>): void {\n super.fromNew(init);\n this._prompt = init.prompt;\n this._schema = init.schema;\n // Default to Nova — the structured-extraction model\n this._options = init.options?.model\n ? init.options\n : { model: A_FRAME_MODELS.NOVA, ...init.options };\n }\n\n fromJSON(serialized: A_FrameSchema_Serialized<T>): void {\n this._prompt = serialized.prompt;\n this._schema = serialized.schema as Record<keyof T, string | Record<string, string>>;\n this._data = serialized.data;\n this._model = serialized.model;\n this._date = serialized.date;\n this._aFrameVersion = serialized.aFrameVersion;\n this._aFrameServerVersion = serialized.aFrameServerVersion;\n }\n\n toJSON(): A_FrameSchema_Serialized<T> {\n return {\n ...super.toJSON(),\n prompt: this._prompt,\n schema: this._schema as Record<string, string | Record<string, string>>,\n data: this._data,\n model: this._model,\n date: this._date,\n aFrameVersion: this._aFrameVersion,\n aFrameServerVersion: this._aFrameServerVersion,\n };\n }\n\n\n // ─── Operations ───────────────────────────────────────────────────────────\n\n /**\n * Sends the prompt and schema to the server for structured extraction.\n * After completion, `data` will be populated with a typed `T` object.\n *\n * The feature is implemented by `A_FrameChannel.extractSchema`.\n */\n extract(scope?: A_Scope): Promise<void> | void {\n return this.call(A_FrameSchemaFeatures.Extract, scope);\n }\n\n\n // ─── Hydration ────────────────────────────────────────────────────────────\n\n hydrateFromExtraction(data: T, meta: A_FrameSchema_ExtractionMeta): void {\n this._data = data;\n this._model = meta.model;\n this._date = meta.date;\n this._aFrameVersion = meta.aFrameVersion;\n this._aFrameServerVersion = meta.aFrameServerVersion;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-WXCQCHAX.mjs"}
|
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkBBYOL3LM_cjs = require('./chunk-BBYOL3LM.cjs');
|
|
4
|
+
var chunkBSBY37MG_cjs = require('./chunk-BSBY37MG.cjs');
|
|
5
|
+
var chunkQFHZIG7Y_cjs = require('./chunk-QFHZIG7Y.cjs');
|
|
6
|
+
var aConcept = require('@adaas/a-concept');
|
|
7
|
+
var http = require('http');
|
|
8
|
+
var https = require('https');
|
|
9
|
+
|
|
10
|
+
function _interopNamespace(e) {
|
|
11
|
+
if (e && e.__esModule) return e;
|
|
12
|
+
var n = Object.create(null);
|
|
13
|
+
if (e) {
|
|
14
|
+
Object.keys(e).forEach(function (k) {
|
|
15
|
+
if (k !== 'default') {
|
|
16
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
17
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
get: function () { return e[k]; }
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
n.default = e;
|
|
25
|
+
return Object.freeze(n);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
var http__namespace = /*#__PURE__*/_interopNamespace(http);
|
|
29
|
+
var https__namespace = /*#__PURE__*/_interopNamespace(https);
|
|
30
|
+
|
|
31
|
+
var A_FrameChannelEvent = class extends aConcept.A_Fragment {
|
|
32
|
+
constructor(name, data) {
|
|
33
|
+
super({ name: "a-frame-channel-event-" + name });
|
|
34
|
+
this._data = data;
|
|
35
|
+
this._eventName = name;
|
|
36
|
+
}
|
|
37
|
+
get name() {
|
|
38
|
+
return this._eventName;
|
|
39
|
+
}
|
|
40
|
+
get data() {
|
|
41
|
+
return this._data;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
var A_FrameChannelStream = class extends aConcept.A_Entity {
|
|
45
|
+
static onEvent(name) {
|
|
46
|
+
const eventName = (name || "all") + chunkBBYOL3LM_cjs.A_FrameChannelStreamFeatures.onEvent;
|
|
47
|
+
return (target, propertyKey, descriptor) => {
|
|
48
|
+
return aConcept.A_Feature.Extend({
|
|
49
|
+
name: eventName,
|
|
50
|
+
scope: [target.constructor]
|
|
51
|
+
})(target, propertyKey, descriptor);
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The scope of the session, Will be destroyed after the session is closed.
|
|
56
|
+
*/
|
|
57
|
+
get scope() {
|
|
58
|
+
if (!this._scope) {
|
|
59
|
+
this._scope = aConcept.A_Context.allocate(this, new aConcept.A_Scope({ name: `${this.aseid.id}-scope` }));
|
|
60
|
+
}
|
|
61
|
+
return this._scope;
|
|
62
|
+
}
|
|
63
|
+
get method() {
|
|
64
|
+
return this._method;
|
|
65
|
+
}
|
|
66
|
+
get path() {
|
|
67
|
+
return this._path;
|
|
68
|
+
}
|
|
69
|
+
get body() {
|
|
70
|
+
return this._body;
|
|
71
|
+
}
|
|
72
|
+
get status() {
|
|
73
|
+
return this._status;
|
|
74
|
+
}
|
|
75
|
+
get error() {
|
|
76
|
+
return this._error;
|
|
77
|
+
}
|
|
78
|
+
get initDate() {
|
|
79
|
+
return new Date(this._initDate);
|
|
80
|
+
}
|
|
81
|
+
complete() {
|
|
82
|
+
this._status = chunkBBYOL3LM_cjs.A_FrameChannelStreamStatuses.Closed;
|
|
83
|
+
}
|
|
84
|
+
fail(error) {
|
|
85
|
+
this._status = chunkBBYOL3LM_cjs.A_FrameChannelStreamStatuses.Closed;
|
|
86
|
+
this._error = error;
|
|
87
|
+
}
|
|
88
|
+
destroy() {
|
|
89
|
+
this.scope.destroy();
|
|
90
|
+
}
|
|
91
|
+
async open() {
|
|
92
|
+
await this.call(chunkBBYOL3LM_cjs.A_FrameChannelStreamFeatures.open);
|
|
93
|
+
}
|
|
94
|
+
async send() {
|
|
95
|
+
await this.call(chunkBBYOL3LM_cjs.A_FrameChannelStreamFeatures.send);
|
|
96
|
+
}
|
|
97
|
+
async propagate(name, data) {
|
|
98
|
+
const request = new A_FrameChannelEvent(name, data);
|
|
99
|
+
const executionScope = new aConcept.A_Scope({
|
|
100
|
+
name: "A_FrameChannelStream.propagate",
|
|
101
|
+
fragments: [request]
|
|
102
|
+
}).inherit(this.scope);
|
|
103
|
+
try {
|
|
104
|
+
const callName = (name || "all") + chunkBBYOL3LM_cjs.A_FrameChannelStreamFeatures.onEvent;
|
|
105
|
+
await this.call(callName, executionScope);
|
|
106
|
+
executionScope.destroy();
|
|
107
|
+
} catch {
|
|
108
|
+
executionScope.destroy();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
fromNew(newEntity) {
|
|
112
|
+
this.aseid = this.generateASEID();
|
|
113
|
+
this._method = newEntity.method;
|
|
114
|
+
this._path = newEntity.path;
|
|
115
|
+
this._body = newEntity.body;
|
|
116
|
+
this._initDate = (/* @__PURE__ */ new Date()).toISOString();
|
|
117
|
+
}
|
|
118
|
+
fromJSON(serialized) {
|
|
119
|
+
this._method = serialized.method;
|
|
120
|
+
this._path = serialized.path;
|
|
121
|
+
this._body = serialized.body;
|
|
122
|
+
this._initDate = serialized.initDate;
|
|
123
|
+
}
|
|
124
|
+
toJSON() {
|
|
125
|
+
return {
|
|
126
|
+
...super.toJSON(),
|
|
127
|
+
initDate: this._initDate,
|
|
128
|
+
status: this._status,
|
|
129
|
+
error: this._error ? this._error.toJSON() : void 0,
|
|
130
|
+
method: this._method,
|
|
131
|
+
path: this._path,
|
|
132
|
+
body: this._body
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
var A_FrameNodeChannel = class extends chunkBBYOL3LM_cjs.A_FrameChannel {
|
|
137
|
+
async request(context, env) {
|
|
138
|
+
const url = `${env.A_FRAME_SERVER_URL}${context.path}`;
|
|
139
|
+
const parsedUrl = new URL(url);
|
|
140
|
+
const client = parsedUrl.protocol === "https:" ? https__namespace : http__namespace;
|
|
141
|
+
const payload = context.body !== void 0 ? JSON.stringify(context.body) : void 0;
|
|
142
|
+
const result = await new Promise((resolve, reject) => {
|
|
143
|
+
const req = client.request(
|
|
144
|
+
{
|
|
145
|
+
protocol: parsedUrl.protocol,
|
|
146
|
+
hostname: parsedUrl.hostname,
|
|
147
|
+
port: parsedUrl.port,
|
|
148
|
+
path: `${parsedUrl.pathname}${parsedUrl.search}`,
|
|
149
|
+
method: context.method,
|
|
150
|
+
headers: {
|
|
151
|
+
...payload ? { "Content-Type": "application/json", "Content-Length": Buffer.byteLength(payload) } : {},
|
|
152
|
+
Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`
|
|
153
|
+
}
|
|
154
|
+
},
|
|
155
|
+
(res) => {
|
|
156
|
+
const chunks = [];
|
|
157
|
+
res.on("data", (chunk) => chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk)));
|
|
158
|
+
res.on("end", () => {
|
|
159
|
+
const raw = Buffer.concat(chunks).toString("utf8");
|
|
160
|
+
if ((res.statusCode ?? 500) >= 400) {
|
|
161
|
+
console.error(`[A-FrameChannel] <-- ${res.statusCode} ${context.method} ${url}`);
|
|
162
|
+
reject(
|
|
163
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
164
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.RequestFailed,
|
|
165
|
+
description: `Request to ${context.path} failed with status ${res.statusCode}`
|
|
166
|
+
})
|
|
167
|
+
);
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
if (!raw) {
|
|
171
|
+
resolve(void 0);
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
try {
|
|
175
|
+
const parsed = JSON.parse(raw);
|
|
176
|
+
resolve(parsed);
|
|
177
|
+
} catch {
|
|
178
|
+
reject(
|
|
179
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
180
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.RequestFailed,
|
|
181
|
+
description: `Invalid JSON response from ${context.path}`
|
|
182
|
+
})
|
|
183
|
+
);
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
);
|
|
188
|
+
req.setTimeout(env.A_FRAME_REQUEST_TIMEOUT, () => {
|
|
189
|
+
console.error(`[A-FrameChannel] TIMEOUT ${context.method} ${url}`);
|
|
190
|
+
req.destroy(
|
|
191
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
192
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.Timeout,
|
|
193
|
+
description: `Request to ${context.path} timed out after ${env.A_FRAME_REQUEST_TIMEOUT}ms`
|
|
194
|
+
})
|
|
195
|
+
);
|
|
196
|
+
});
|
|
197
|
+
req.on("error", (err) => reject(err));
|
|
198
|
+
if (payload) req.write(payload);
|
|
199
|
+
req.end();
|
|
200
|
+
});
|
|
201
|
+
context.complete(result);
|
|
202
|
+
}
|
|
203
|
+
async stream(stream, env) {
|
|
204
|
+
const url = `${env.A_FRAME_SERVER_URL}${stream.path}`;
|
|
205
|
+
const parsedUrl = new URL(url);
|
|
206
|
+
const client = parsedUrl.protocol === "https:" ? https__namespace : http__namespace;
|
|
207
|
+
const payload = stream.body !== void 0 ? JSON.stringify(stream.body) : void 0;
|
|
208
|
+
await new Promise((resolve, reject) => {
|
|
209
|
+
const req = client.request(
|
|
210
|
+
{
|
|
211
|
+
protocol: parsedUrl.protocol,
|
|
212
|
+
hostname: parsedUrl.hostname,
|
|
213
|
+
port: parsedUrl.port,
|
|
214
|
+
path: `${parsedUrl.pathname}${parsedUrl.search}`,
|
|
215
|
+
method: stream.method,
|
|
216
|
+
headers: {
|
|
217
|
+
...payload ? { "Content-Type": "application/json" } : {},
|
|
218
|
+
Accept: "text/event-stream",
|
|
219
|
+
Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`,
|
|
220
|
+
...payload ? { "Content-Length": Buffer.byteLength(payload) } : {}
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
(res) => {
|
|
224
|
+
if ((res.statusCode ?? 500) >= 400) {
|
|
225
|
+
console.error(`[A-FrameChannel] <-- ${res.statusCode} ${stream.method} ${url}`);
|
|
226
|
+
reject(
|
|
227
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
228
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.RequestFailed,
|
|
229
|
+
description: `Stream request to ${stream.path} failed with status ${res.statusCode}`
|
|
230
|
+
})
|
|
231
|
+
);
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
let buffer = "";
|
|
235
|
+
res.on("data", async (chunk) => {
|
|
236
|
+
buffer += Buffer.isBuffer(chunk) ? chunk.toString("utf8") : String(chunk);
|
|
237
|
+
const lines = buffer.split("\n");
|
|
238
|
+
buffer = lines.pop() || "";
|
|
239
|
+
for (const line of lines) {
|
|
240
|
+
if (!line.startsWith("data: ")) continue;
|
|
241
|
+
const data = line.slice(6).trim();
|
|
242
|
+
if (data === "[DONE]") continue;
|
|
243
|
+
try {
|
|
244
|
+
const event = JSON.parse(data);
|
|
245
|
+
await stream.propagate(event.type, event.data);
|
|
246
|
+
} catch {
|
|
247
|
+
console.error(`[A-FrameChannel] Invalid SSE payload from ${stream.path}: ${data}`);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
res.on("end", () => {
|
|
252
|
+
resolve();
|
|
253
|
+
});
|
|
254
|
+
res.on("error", (err) => reject(err));
|
|
255
|
+
}
|
|
256
|
+
);
|
|
257
|
+
req.setTimeout(3e5, () => {
|
|
258
|
+
console.error(`[A-FrameChannel] TIMEOUT ${stream.method} ${url}`);
|
|
259
|
+
req.destroy(
|
|
260
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
261
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.Timeout,
|
|
262
|
+
description: `Stream request to ${stream.path} timed out after 300 seconds`
|
|
263
|
+
})
|
|
264
|
+
);
|
|
265
|
+
});
|
|
266
|
+
req.on("error", (err) => reject(err));
|
|
267
|
+
if (payload) req.write(payload);
|
|
268
|
+
req.end();
|
|
269
|
+
});
|
|
270
|
+
stream.complete();
|
|
271
|
+
}
|
|
272
|
+
async send(stream, event, env) {
|
|
273
|
+
const url = `${env.A_FRAME_SERVER_URL}${stream.path}/send`;
|
|
274
|
+
const parsedUrl = new URL(url);
|
|
275
|
+
const client = parsedUrl.protocol === "https:" ? https__namespace : http__namespace;
|
|
276
|
+
const payload = JSON.stringify({ type: event.name, data: event.data });
|
|
277
|
+
await new Promise((resolve, reject) => {
|
|
278
|
+
const req = client.request(
|
|
279
|
+
{
|
|
280
|
+
protocol: parsedUrl.protocol,
|
|
281
|
+
hostname: parsedUrl.hostname,
|
|
282
|
+
port: parsedUrl.port,
|
|
283
|
+
path: `${parsedUrl.pathname}${parsedUrl.search}`,
|
|
284
|
+
method: "POST",
|
|
285
|
+
headers: {
|
|
286
|
+
"Content-Type": "application/json",
|
|
287
|
+
Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`,
|
|
288
|
+
"Content-Length": Buffer.byteLength(payload)
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
(res) => {
|
|
292
|
+
res.resume();
|
|
293
|
+
res.on("end", () => {
|
|
294
|
+
if ((res.statusCode ?? 500) >= 400) {
|
|
295
|
+
console.error(`[A-FrameChannel] <-- ${res.statusCode} POST ${url}`);
|
|
296
|
+
reject(
|
|
297
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
298
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.RequestFailed,
|
|
299
|
+
description: `Send event "${event.name}" to ${stream.path} failed with status ${res.statusCode}`
|
|
300
|
+
})
|
|
301
|
+
);
|
|
302
|
+
return;
|
|
303
|
+
}
|
|
304
|
+
resolve();
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
);
|
|
308
|
+
req.setTimeout(15e3, () => {
|
|
309
|
+
req.destroy(
|
|
310
|
+
new chunkBBYOL3LM_cjs.A_FrameChannelError({
|
|
311
|
+
title: chunkBBYOL3LM_cjs.A_FrameChannelError.Timeout,
|
|
312
|
+
description: `Send event "${event.name}" to ${stream.path} timed out after 15 seconds`
|
|
313
|
+
})
|
|
314
|
+
);
|
|
315
|
+
});
|
|
316
|
+
req.on("error", (err) => reject(err));
|
|
317
|
+
req.write(payload);
|
|
318
|
+
req.end();
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
};
|
|
322
|
+
chunkQFHZIG7Y_cjs.__decorateClass([
|
|
323
|
+
aConcept.A_Feature.Extend({
|
|
324
|
+
name: chunkBBYOL3LM_cjs.A_FrameFeatures.Request,
|
|
325
|
+
scope: [chunkBBYOL3LM_cjs.A_FrameChannel]
|
|
326
|
+
}),
|
|
327
|
+
chunkQFHZIG7Y_cjs.__decorateParam(0, aConcept.A_Inject(chunkBBYOL3LM_cjs.A_FrameChannelRequest)),
|
|
328
|
+
chunkQFHZIG7Y_cjs.__decorateParam(1, aConcept.A_Inject(chunkBSBY37MG_cjs.A_FrameEnv))
|
|
329
|
+
], A_FrameNodeChannel.prototype, "request", 1);
|
|
330
|
+
chunkQFHZIG7Y_cjs.__decorateClass([
|
|
331
|
+
aConcept.A_Feature.Extend({
|
|
332
|
+
name: chunkBBYOL3LM_cjs.A_FrameFeatures.Stream,
|
|
333
|
+
scope: [chunkBBYOL3LM_cjs.A_FrameChannel]
|
|
334
|
+
}),
|
|
335
|
+
chunkQFHZIG7Y_cjs.__decorateParam(0, aConcept.A_Inject(A_FrameChannelStream)),
|
|
336
|
+
chunkQFHZIG7Y_cjs.__decorateParam(1, aConcept.A_Inject(chunkBSBY37MG_cjs.A_FrameEnv))
|
|
337
|
+
], A_FrameNodeChannel.prototype, "stream", 1);
|
|
338
|
+
chunkQFHZIG7Y_cjs.__decorateClass([
|
|
339
|
+
aConcept.A_Feature.Extend({
|
|
340
|
+
name: chunkBBYOL3LM_cjs.A_FrameFeatures.Send,
|
|
341
|
+
scope: [chunkBBYOL3LM_cjs.A_FrameChannel]
|
|
342
|
+
}),
|
|
343
|
+
chunkQFHZIG7Y_cjs.__decorateParam(0, aConcept.A_Inject(A_FrameChannelStream)),
|
|
344
|
+
chunkQFHZIG7Y_cjs.__decorateParam(1, aConcept.A_Inject(A_FrameChannelEvent)),
|
|
345
|
+
chunkQFHZIG7Y_cjs.__decorateParam(2, aConcept.A_Inject(chunkBSBY37MG_cjs.A_FrameEnv))
|
|
346
|
+
], A_FrameNodeChannel.prototype, "send", 1);
|
|
347
|
+
|
|
348
|
+
exports.A_FrameChannelEvent = A_FrameChannelEvent;
|
|
349
|
+
exports.A_FrameChannelStream = A_FrameChannelStream;
|
|
350
|
+
exports.A_FrameNodeChannel = A_FrameNodeChannel;
|
|
351
|
+
//# sourceMappingURL=chunk-X3TRPYGV.cjs.map
|
|
352
|
+
//# sourceMappingURL=chunk-X3TRPYGV.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameChannel/A-FrameChannelEvent.context.ts","../../src/lib/A-FrameChannel/A-FrameChannelStream.entity.ts","../../src/lib/A-FrameChannel/A-FrameChannel.component.env-node.ts"],"names":["A_Fragment","A_Entity","A_FrameChannelStreamFeatures","A_Feature","A_Context","A_Scope","A_FrameChannelStreamStatuses","A_FrameChannel","https","http","A_FrameChannelError","__decorateClass","A_FrameFeatures","__decorateParam","A_FrameChannelRequest","A_FrameEnv"],"mappings":"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","file":"chunk-X3TRPYGV.cjs","sourcesContent":["import { A_Error, A_Fragment } from \"@adaas/a-concept\";\n\n\nexport class A_FrameChannelEvent<\n T extends Record<string, any> = any,\n> extends A_Fragment {\n\n protected _data?: T;\n protected _eventName!: string;\n\n constructor(\n name: string,\n data?: T\n ) {\n super({ name: 'a-frame-channel-event-' + name });\n this._data = data as T;\n this._eventName = name;\n }\n\n get name(): string {\n return this._eventName;\n }\n\n get data(): T | undefined {\n return this._data;\n }\n\n}\n","import { A_Context, A_Entity, A_Error, A_Feature, A_Scope } from \"@adaas/a-concept\";\nimport { A_FrameChannelStream_Init, A_FrameChannelStream_Serialized, A_FrameChannelStreamStatusNames } from \"./A-FrameChannel.types\";\nimport { A_FrameChannelStreamFeatures, A_FrameChannelStreamStatuses } from \"./A-FrameChannel.constants\";\nimport { A_FrameChannelEvent } from \"./A-FrameChannelEvent.context\";\n\n\n\nexport class A_FrameChannelStream<\n T extends Record<string, any> = Record<string, any>\n> extends A_Entity<\n A_FrameChannelStream_Init<T>,\n A_FrameChannelStream_Serialized<T>\n> {\n\n\n static onEvent(name?: string) {\n\n const eventName = (name || 'all') + A_FrameChannelStreamFeatures.onEvent;\n\n\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n return A_Feature.Extend({\n name: eventName,\n scope: [target.constructor],\n })(target, propertyKey, descriptor);\n }\n }\n\n\n protected _method!: string;\n protected _path!: string;\n protected _body?: T;\n protected _scope!: A_Scope\n protected _error?: A_Error;\n protected _status!: A_FrameChannelStreamStatusNames;\n protected _initDate!: string;\n\n /**\n * The scope of the session, Will be destroyed after the session is closed.\n */\n get scope(): A_Scope {\n\n if (!this._scope) {\n this._scope = A_Context.allocate(this, new A_Scope({ name: `${this.aseid.id}-scope` }));\n }\n\n return this._scope;\n }\n\n get method(): string {\n return this._method;\n }\n\n get path(): string {\n return this._path;\n }\n\n get body(): T | undefined {\n return this._body;\n }\n\n get status(): A_FrameChannelStreamStatusNames {\n return this._status;\n }\n\n get error(): A_Error | undefined {\n return this._error;\n }\n\n get initDate(): Date {\n return new Date(this._initDate);\n }\n\n complete(): void {\n this._status = A_FrameChannelStreamStatuses.Closed;\n }\n\n fail(error: A_Error): void {\n this._status = A_FrameChannelStreamStatuses.Closed;\n this._error = error;\n }\n\n destroy(): Promise<void> | void {\n this.scope.destroy();\n }\n\n async open(){\n await this.call(A_FrameChannelStreamFeatures.open);\n }\n\n async send(){\n await this.call(A_FrameChannelStreamFeatures.send);\n }\n\n\n async propagate<T extends Record<string, any>>(name: string, data?: T): Promise<void> {\n const request = new A_FrameChannelEvent<T>(name, data);\n\n const executionScope = new A_Scope({\n name: 'A_FrameChannelStream.propagate',\n fragments: [request],\n })\n .inherit(this.scope);\n\n try {\n\n const callName = (name || 'all') + A_FrameChannelStreamFeatures.onEvent;\n\n await this.call(callName, executionScope);\n executionScope.destroy();\n\n } catch {\n executionScope.destroy();\n }\n }\n\n fromNew(newEntity: A_FrameChannelStream_Init<T>): void {\n this.aseid = this.generateASEID();\n this._method = newEntity.method;\n this._path = newEntity.path;\n this._body = newEntity.body;\n this._initDate = new Date().toISOString();\n }\n\n fromJSON(serialized: A_FrameChannelStream_Serialized<T>): void {\n this._method = serialized.method;\n this._path = serialized.path;\n this._body = serialized.body;\n this._initDate = serialized.initDate;\n }\n\n\n toJSON(): A_FrameChannelStream_Serialized<T> {\n return {\n ...super.toJSON(),\n initDate: this._initDate,\n status: this._status,\n error: this._error ? this._error.toJSON() : undefined,\n method: this._method,\n path: this._path,\n body: this._body,\n }\n }\n\n}","import { A_Feature, A_Inject } from \"@adaas/a-concept\";\nimport { A_FrameFeatures } from \"./A-FrameChannel.constants\";\nimport { A_FrameChannelRequest } from \"./A-FrameChannelRequest.context\";\nimport { A_FrameEnv } from \"../A-FrameEnv/A-FrameEnv.fragment.env-node\";\nimport { A_FrameChannelError } from \"./A-FrameChannel.error\";\nimport { A_FrameChannel } from \"./A-FrameChannel.component\";\nimport * as http from \"http\";\nimport * as https from \"https\";\n// import * as crypto from \"crypto\";\n// import * as net from \"net\";\n// import * as tls from \"tls\";\nimport { A_FrameChannelStream } from \"./A-FrameChannelStream.entity\";\nimport { A_FrameChannelEvent } from \"./A-FrameChannelEvent.context\";\n\nexport class A_FrameNodeChannel extends A_FrameChannel {\n\n @A_Feature.Extend({\n name: A_FrameFeatures.Request,\n scope: [A_FrameChannel],\n })\n async request(\n @A_Inject(A_FrameChannelRequest) context: A_FrameChannelRequest,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n const url = `${env.A_FRAME_SERVER_URL}${context.path}`;\n const parsedUrl = new URL(url);\n const client = parsedUrl.protocol === \"https:\" ? https : http;\n const payload = context.body !== undefined ? JSON.stringify(context.body) : undefined;\n\n const result = await new Promise<unknown>((resolve, reject) => {\n const req = client.request(\n {\n protocol: parsedUrl.protocol,\n hostname: parsedUrl.hostname,\n port: parsedUrl.port,\n path: `${parsedUrl.pathname}${parsedUrl.search}`,\n method: context.method,\n headers: {\n ...(payload ? { \"Content-Type\": \"application/json\", \"Content-Length\": Buffer.byteLength(payload) } : {}),\n Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`,\n },\n },\n (res) => {\n const chunks: Buffer[] = [];\n\n res.on(\"data\", (chunk) => chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk)));\n res.on(\"end\", () => {\n const raw = Buffer.concat(chunks).toString(\"utf8\");\n\n if ((res.statusCode ?? 500) >= 400) {\n console.error(`[A-FrameChannel] <-- ${res.statusCode} ${context.method} ${url}`);\n reject(\n new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Request to ${context.path} failed with status ${res.statusCode}`,\n }),\n );\n return;\n }\n\n if (!raw) {\n resolve(undefined);\n return;\n }\n\n try {\n const parsed = JSON.parse(raw);\n resolve(parsed);\n } catch {\n reject(\n new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Invalid JSON response from ${context.path}`,\n }),\n );\n }\n });\n },\n );\n\n req.setTimeout(env.A_FRAME_REQUEST_TIMEOUT, () => {\n console.error(`[A-FrameChannel] TIMEOUT ${context.method} ${url}`);\n req.destroy(\n new A_FrameChannelError({\n title: A_FrameChannelError.Timeout,\n description: `Request to ${context.path} timed out after ${env.A_FRAME_REQUEST_TIMEOUT}ms`,\n }),\n );\n });\n\n req.on(\"error\", (err) => reject(err));\n\n if (payload) req.write(payload);\n req.end();\n });\n\n context.complete(result);\n\n }\n\n\n\n\n @A_Feature.Extend({\n name: A_FrameFeatures.Stream,\n scope: [A_FrameChannel],\n })\n async stream(\n @A_Inject(A_FrameChannelStream) stream: A_FrameChannelStream,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n const url = `${env.A_FRAME_SERVER_URL}${stream.path}`;\n const parsedUrl = new URL(url);\n const client = parsedUrl.protocol === \"https:\" ? https : http;\n const payload = stream.body !== undefined ? JSON.stringify(stream.body) : undefined;\n\n await new Promise<void>((resolve, reject) => {\n\n const req = client.request(\n {\n protocol: parsedUrl.protocol,\n hostname: parsedUrl.hostname,\n port: parsedUrl.port,\n path: `${parsedUrl.pathname}${parsedUrl.search}`,\n method: stream.method,\n headers: {\n ...(payload ? { \"Content-Type\": \"application/json\" } : {}),\n Accept: \"text/event-stream\",\n Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`,\n ...(payload ? { \"Content-Length\": Buffer.byteLength(payload) } : {}),\n },\n },\n (res) => {\n if ((res.statusCode ?? 500) >= 400) {\n console.error(`[A-FrameChannel] <-- ${res.statusCode} ${stream.method} ${url}`);\n reject(\n new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Stream request to ${stream.path} failed with status ${res.statusCode}`,\n }),\n );\n return;\n }\n\n let buffer = '';\n\n res.on(\"data\", async (chunk) => {\n buffer += Buffer.isBuffer(chunk) ? chunk.toString(\"utf8\") : String(chunk);\n const lines = buffer.split('\\n');\n // Keep the last incomplete line in the buffer for the next chunk\n buffer = lines.pop() || '';\n\n for (const line of lines) {\n // SSE spec: only lines prefixed with \"data: \" carry event payloads\n if (!line.startsWith('data: ')) continue;\n\n const data = line.slice(6).trim();\n\n // SSE end-of-stream sentinel — no payload to process\n if (data === '[DONE]') continue;\n\n // ──────────────────────────────────────────────────\n // SERVER ACTION DISPATCH\n // Each parsed event is expected to carry a `type`\n // field that identifies the action sent by the server.\n //\n // Add new cases here as the server-side action set\n // grows. The raw event is also pushed to `events` so\n // callers receive the full history via context.complete.\n //\n // Example shape: { type: 'some_action', data: { ... } }\n // ──────────────────────────────────────────────────\n try {\n const event = JSON.parse(data);\n\n await stream.propagate(event.type, event.data);\n } catch {\n console.error(`[A-FrameChannel] Invalid SSE payload from ${stream.path}: ${data}`);\n }\n }\n });\n\n res.on(\"end\", () => {\n resolve();\n });\n\n res.on(\"error\", (err) => reject(err));\n },\n );\n\n req.setTimeout(300_000, () => {\n console.error(`[A-FrameChannel] TIMEOUT ${stream.method} ${url}`);\n req.destroy(\n new A_FrameChannelError({\n title: A_FrameChannelError.Timeout,\n description: `Stream request to ${stream.path} timed out after 300 seconds`,\n }),\n );\n });\n\n req.on(\"error\", (err) => reject(err));\n\n if (payload) req.write(payload);\n req.end();\n });\n\n stream.complete();\n }\n\n\n @A_Feature.Extend({\n name: A_FrameFeatures.Send,\n scope: [A_FrameChannel],\n })\n async send(\n @A_Inject(A_FrameChannelStream) stream: A_FrameChannelStream,\n @A_Inject(A_FrameChannelEvent) event: A_FrameChannelEvent,\n @A_Inject(A_FrameEnv) env: A_FrameEnv,\n ) {\n // SSE is server-to-client only; to push data back to the server\n // during an active stream session we make a separate HTTP POST to\n // a companion endpoint.\n //\n // Convention: same base path as the stream with \"/send\" appended —\n // adjust to match your server-side routing.\n const url = `${env.A_FRAME_SERVER_URL}${stream.path}/send`;\n const parsedUrl = new URL(url);\n const client = parsedUrl.protocol === \"https:\" ? https : http;\n\n // Always serialise as { type, data } so the server can dispatch\n // the same way it dispatches events back to the client.\n const payload = JSON.stringify({ type: event.name, data: event.data });\n\n await new Promise<void>((resolve, reject) => {\n const req = client.request(\n {\n protocol: parsedUrl.protocol,\n hostname: parsedUrl.hostname,\n port: parsedUrl.port,\n path: `${parsedUrl.pathname}${parsedUrl.search}`,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${env.A_FRAME_SERVER_API_KEY}`,\n \"Content-Length\": Buffer.byteLength(payload),\n },\n },\n (res) => {\n // Drain the response so the socket can be freed/reused.\n res.resume();\n\n res.on(\"end\", () => {\n if ((res.statusCode ?? 500) >= 400) {\n console.error(`[A-FrameChannel] <-- ${res.statusCode} POST ${url}`);\n reject(\n new A_FrameChannelError({\n title: A_FrameChannelError.RequestFailed,\n description: `Send event \"${event.name}\" to ${stream.path} failed with status ${res.statusCode}`,\n }),\n );\n return;\n }\n\n resolve();\n });\n },\n );\n\n req.setTimeout(15_000, () => {\n req.destroy(\n new A_FrameChannelError({\n title: A_FrameChannelError.Timeout,\n description: `Send event \"${event.name}\" to ${stream.path} timed out after 15 seconds`,\n }),\n );\n });\n\n req.on(\"error\", (err) => reject(err));\n\n req.write(payload);\n req.end();\n });\n }\n}\n\n// // ─── WebSocket feature ────────────────────────────────────────────────────\n\n// @A_Feature.Extend({\n// name: A_FrameFeatures.Socket,\n// scope: [A_FrameChannel],\n// })\n// async socket(\n// @A_Inject(A_FrameChannelSocket) socket: A_FrameChannelSocket,\n// @A_Inject(A_FrameEnv) env: A_FrameEnv,\n// ) {\n// const url = `${env.A_FRAME_SERVER_URL}${socket.path}`;\n// const parsedUrl = new URL(url);\n\n// // Both http→ws and https→wss are TLS-detected the same way\n// const isSecure =\n// parsedUrl.protocol === \"https:\" || parsedUrl.protocol === \"wss:\";\n\n// const hostname = parsedUrl.hostname;\n// const port = parsedUrl.port\n// ? parseInt(parsedUrl.port, 10)\n// : isSecure ? 443 : 80;\n// const wsPath = `${parsedUrl.pathname}${parsedUrl.search}`;\n// const hostHeader = parsedUrl.port ? `${hostname}:${parsedUrl.port}` : hostname;\n\n// // ── WebSocket opening handshake (RFC 6455 §4.1) ─────────────────────\n// // Generate a fresh 16-byte random key. The server must echo it back\n// // as SHA-1(\"key\" + magic) in Sec-WebSocket-Accept, which we verify to\n// // guard against accidental plain-HTTP responses being accepted as WS.\n// const wsKey = crypto.randomBytes(16).toString(\"base64\");\n// const expectedAccept = crypto\n// .createHash(\"sha1\")\n// .update(wsKey + \"258EAFA5-E914-47DA-95CA-C5AB0DC85B11\")\n// .digest(\"base64\");\n\n// await new Promise<void>((resolve, reject) => {\n// // Establish raw TCP (or TLS) transport without HTTP machinery\n// const rawSocket: net.Socket = isSecure\n// ? tls.connect({ host: hostname, port, servername: hostname })\n// : net.connect({ host: hostname, port });\n\n// let handshakeDone = false;\n// let frameBuffer = Buffer.alloc(0);\n\n// // ── Send the HTTP/1.1 Upgrade request once transport is ready ────\n// function sendHandshake() {\n// // If the caller provided a body, encode it in a custom header so\n// // it survives the GET-only WebSocket upgrade request.\n// const initHeader = socket.body !== undefined\n// ? [`X-A-Frame-Init: ${Buffer.from(JSON.stringify(socket.body)).toString(\"base64\")}`]\n// : [];\n\n// const lines = [\n// `GET ${wsPath} HTTP/1.1`,\n// `Host: ${hostHeader}`,\n// \"Upgrade: websocket\",\n// \"Connection: Upgrade\",\n// `Sec-WebSocket-Key: ${wsKey}`,\n// \"Sec-WebSocket-Version: 13\",\n// // Auth header — same Bearer token used by all other methods\n// `Authorization: Bearer ${env.A_FRAME_SERVER_API_KEY}`,\n// ...initHeader,\n// \"\", // produces the mandatory blank CRLF line\n// \"\",\n// ];\n\n// rawSocket.write(lines.join(\"\\r\\n\"));\n// }\n\n// // For TLS, wait until the TLS handshake finishes before writing\n// if (isSecure) {\n// (rawSocket as tls.TLSSocket).once(\"secureConnect\", sendHandshake);\n// } else {\n// rawSocket.once(\"connect\", sendHandshake);\n// }\n\n// rawSocket.on(\"data\", async (chunk: Buffer) => {\n// frameBuffer = Buffer.concat([frameBuffer, chunk]);\n\n// // ── Phase 1: wait for the HTTP 101 response header block ─────\n// if (!handshakeDone) {\n// const headEnd = frameBuffer.indexOf(\"\\r\\n\\r\\n\");\n// if (headEnd === -1) return; // headers still arriving\n\n// const statusBlock = frameBuffer.slice(0, headEnd).toString(\"utf8\");\n// frameBuffer = frameBuffer.slice(headEnd + 4);\n\n// // Reject anything that isn't a 101 Switching Protocols\n// const statusLine = statusBlock.split(\"\\r\\n\")[0];\n// if (!statusLine.includes(\"101\")) {\n// rawSocket.destroy();\n// reject(\n// new A_FrameChannelError({\n// title: A_FrameChannelError.RequestFailed,\n// description: `WebSocket upgrade rejected: ${statusLine}`,\n// }),\n// );\n// return;\n// }\n\n// // ── Sec-WebSocket-Accept verification ────────────────────\n// // Confirms the server is a genuine WebSocket endpoint and not\n// // an HTTP proxy replaying our request unchanged.\n// const acceptMatch = statusBlock.match(/Sec-WebSocket-Accept:\\s*([^\\r\\n]+)/i);\n// if (!acceptMatch || acceptMatch[1].trim() !== expectedAccept) {\n// rawSocket.destroy();\n// reject(\n// new A_FrameChannelError({\n// title: A_FrameChannelError.RequestFailed,\n// description:\n// \"WebSocket handshake failed: invalid Sec-WebSocket-Accept — possible MITM or non-WS endpoint\",\n// }),\n// );\n// return;\n// }\n\n// handshakeDone = true;\n\n// // Attach the send capability now that the socket is open\n// socket.attachSendFn((data: string) => {\n// rawSocket.write(encodeWebSocketFrame(data));\n// });\n\n// }\n\n// // ── Phase 2: parse and dispatch complete WS frames ───────────\n// while (frameBuffer.length >= 2) {\n// const { frame, consumed } = tryParseWebSocketFrame(frameBuffer);\n// if (!frame || consumed === 0) break; // incomplete frame — wait for more data\n\n// frameBuffer = frameBuffer.slice(consumed);\n\n// switch (frame.opcode) {\n// case 0x8: {\n// // Close frame — echo it back and tear down gracefully\n// rawSocket.write(encodeWebSocketFrame(\"\", 0x8));\n// rawSocket.end();\n// socket.complete();\n// resolve();\n// return;\n// }\n\n// case 0x9: {\n// // Ping — must reply with Pong carrying the same payload (RFC 6455 §5.5.2)\n// rawSocket.write(encodeWebSocketFrame(frame.payload.toString(\"utf8\"), 0xa));\n// break;\n// }\n\n// case 0x1:\n// case 0x2: {\n// // ──────────────────────────────────────────────────\n// // SERVER ACTION DISPATCH\n// // Each text/binary frame carries a JSON payload shaped\n// // as { type: string, data: any }.\n// //\n// // Add new cases in a subclass via:\n// // @A_FrameChannelSocket.onEvent('type_name')\n// // async onTypeName(@A_Inject(A_FrameChannelEvent) event) { ... }\n// // ──────────────────────────────────────────────────\n// const text = frame.payload.toString(\"utf8\");\n// try {\n// const event = JSON.parse(text);\n// await socket.propagate(event.type, event.data);\n// } catch {\n// console.error(\n// `[A-FrameChannel] Invalid WS payload from ${socket.path}: ${text}`,\n// );\n// }\n// break;\n// }\n// }\n// }\n// });\n\n// rawSocket.on(\"end\", () => {\n// socket.complete();\n// resolve();\n// });\n\n// rawSocket.on(\"error\", (err) => {\n// socket.fail(\n// new A_FrameChannelError({\n// title: A_FrameChannelError.RequestFailed,\n// description: `WebSocket error on ${socket.path}: ${err.message}`,\n// }),\n// );\n// reject(err);\n// });\n\n// // 60 s idle timeout — same as stream; adjust per use-case\n// rawSocket.setTimeout(60_000, () => {\n// console.error(`[A-FrameChannel] WS TIMEOUT ${url}`);\n// rawSocket.destroy(\n// new A_FrameChannelError({\n// title: A_FrameChannelError.Timeout,\n// description: `WebSocket connection to ${socket.path} timed out after 60 seconds`,\n// }),\n// );\n// });\n// });\n// }\n// }\n\n\n// // =============================================================================\n// // WebSocket frame helpers (RFC 6455)\n// // Module-level pure functions — no external dependencies required.\n// // =============================================================================\n\n// /**\n// * Encode `data` as a masked WebSocket text frame (opcode 0x1).\n// * Client → server frames MUST be masked per RFC 6455 §5.3.\n// * Pass opcode 0x8 for a close frame, 0xa for pong, etc.\n// */\n// function encodeWebSocketFrame(data: string, opcode: number = 0x1): Buffer {\n// const payload = Buffer.from(data, \"utf8\");\n// const len = payload.length;\n\n// // 4-byte random masking key — new key per frame (RFC 6455 §10.3)\n// const mask = crypto.randomBytes(4);\n\n// // Header size: 2 base bytes + 0/2/8 extended length bytes + 4 mask bytes\n// let headerLen = 6;\n// if (len > 65535) headerLen += 8;\n// else if (len > 125) headerLen += 2;\n\n// const frame = Buffer.allocUnsafe(headerLen + len);\n// frame[0] = 0x80 | (opcode & 0x0f); // FIN=1, opcode\n\n// let offset = 1;\n// if (len <= 125) {\n// frame[offset++] = 0x80 | len; // MASK=1, 7-bit length\n// } else if (len <= 65535) {\n// frame[offset++] = 0x80 | 126; // MASK=1, 16-bit extended length\n// frame.writeUInt16BE(len, offset);\n// offset += 2;\n// } else {\n// frame[offset++] = 0x80 | 127; // MASK=1, 64-bit extended length\n// frame.writeBigUInt64BE(BigInt(len), offset);\n// offset += 8;\n// }\n\n// mask.copy(frame, offset);\n// offset += 4;\n\n// for (let i = 0; i < len; i++) {\n// frame[offset + i] = payload[i] ^ mask[i % 4];\n// }\n\n// return frame;\n// }\n\n// /**\n// * Attempt to parse one complete WebSocket frame from `buf`.\n// * Returns `{ frame: null, consumed: 0 }` if the buffer does not yet contain a\n// * complete frame — the caller should buffer more data and retry.\n// *\n// * Server → client frames are never masked, so no unmasking is needed here.\n// * If the server incorrectly sends a masked frame it is unmasked anyway.\n// */\n// function tryParseWebSocketFrame(\n// buf: Buffer,\n// ): { frame: { opcode: number; payload: Buffer; fin: boolean } | null; consumed: number } {\n// if (buf.length < 2) return { frame: null, consumed: 0 };\n\n// const fin = (buf[0] & 0x80) !== 0;\n// const opcode = buf[0] & 0x0f;\n// const masked = (buf[1] & 0x80) !== 0;\n// let payloadLen = buf[1] & 0x7f;\n// let offset = 2;\n\n// if (payloadLen === 126) {\n// if (buf.length < 4) return { frame: null, consumed: 0 };\n// payloadLen = buf.readUInt16BE(2);\n// offset = 4;\n// } else if (payloadLen === 127) {\n// if (buf.length < 10) return { frame: null, consumed: 0 };\n// payloadLen = Number(buf.readBigUInt64BE(2));\n// offset = 10;\n// }\n\n// const maskBytes = masked ? 4 : 0;\n// if (buf.length < offset + maskBytes + payloadLen) {\n// return { frame: null, consumed: 0 };\n// }\n\n// let maskKey: Buffer | null = null;\n// if (masked) {\n// maskKey = buf.slice(offset, offset + 4);\n// offset += 4;\n// }\n\n// const payload = Buffer.from(buf.slice(offset, offset + payloadLen));\n// if (masked && maskKey) {\n// for (let i = 0; i < payload.length; i++) {\n// payload[i] ^= maskKey[i % 4];\n// }\n// }\n\n// return { frame: { opcode, payload, fin }, consumed: offset + payloadLen };\n// }\n"]}
|
|
@@ -23,7 +23,7 @@ var A_FrameEnv = class extends aConcept.A_Fragment {
|
|
|
23
23
|
return process.env.A_FRAME_SERVER_API_KEY || "";
|
|
24
24
|
}
|
|
25
25
|
get A_FRAME_STORAGE_DIR() {
|
|
26
|
-
return process.env.A_FRAME_STORAGE_DIR || ".
|
|
26
|
+
return process.env.A_FRAME_STORAGE_DIR || ".aframe";
|
|
27
27
|
}
|
|
28
28
|
get A_FRAME_VERSION() {
|
|
29
29
|
return chunkR2H234YO_cjs.version || "0.0.1";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/A-FrameEnv/A-FrameEnv.fragment.env-node.ts"],"names":["A_Fragment","version"],"mappings":";;;;;AAKO,IAAM,UAAA,GAAN,cAAyBA,mBAAA,CAAkC;AAAA,EAE9D,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,SAAA;AAAA,EACX;AAAA,EAEA,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,CAAA,YAAA,EAAe,KAAK,sBAAsB,CAAA,CAAA;AAAA,EACrD;AAAA,EAEA,IAAI,YAAA,GAAe;AACf,IAAA,OAAO,OAAA,CAAQ,GAAA,CAAI,YAAA,KAAiB,OAAA,GAAU,KAAA,GAAQ,IAAA;AAAA,EAC1D;AAAA,EAEA,IAAI,aAAA,GAAgB;AAChB,IAAA,OAAO,OAAA,CAAQ,IAAI,aAAA,IAAiB,EAAA;AAAA,EACxC;AAAA,EAEA,IAAI,kBAAA,GAAqB;AACrB,IAAA,OAAO,OAAA,CAAQ,IAAI,kBAAA,IAAsB,uBAAA;AAAA,EAC7C;AAAA,EAEA,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,OAAA,CAAQ,IAAI,sBAAA,IAA0B,EAAA;AAAA,EACjD;AAAA,EAEA,IAAI,mBAAA,GAAsB;AACtB,IAAA,OAAO,OAAA,CAAQ,IAAI,mBAAA,IAAuB,YAAA;AAAA,EAC9C;AAAA,EAEA,IAAI,eAAA,GAAkB;AAClB,IAAA,OAAWC,yBAAA,IAAW,OAAA;AAAA,EAC1B;AACJ","file":"chunk-XFUF7SDO.cjs","sourcesContent":["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 || '.
|
|
1
|
+
{"version":3,"sources":["../../src/lib/A-FrameEnv/A-FrameEnv.fragment.env-node.ts"],"names":["A_Fragment","version"],"mappings":";;;;;AAKO,IAAM,UAAA,GAAN,cAAyBA,mBAAA,CAAkC;AAAA,EAE9D,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,SAAA;AAAA,EACX;AAAA,EAEA,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,CAAA,YAAA,EAAe,KAAK,sBAAsB,CAAA,CAAA;AAAA,EACrD;AAAA,EAEA,IAAI,YAAA,GAAe;AACf,IAAA,OAAO,OAAA,CAAQ,GAAA,CAAI,YAAA,KAAiB,OAAA,GAAU,KAAA,GAAQ,IAAA;AAAA,EAC1D;AAAA,EAEA,IAAI,aAAA,GAAgB;AAChB,IAAA,OAAO,OAAA,CAAQ,IAAI,aAAA,IAAiB,EAAA;AAAA,EACxC;AAAA,EAEA,IAAI,kBAAA,GAAqB;AACrB,IAAA,OAAO,OAAA,CAAQ,IAAI,kBAAA,IAAsB,uBAAA;AAAA,EAC7C;AAAA,EAEA,IAAI,sBAAA,GAAyB;AACzB,IAAA,OAAO,OAAA,CAAQ,IAAI,sBAAA,IAA0B,EAAA;AAAA,EACjD;AAAA,EAEA,IAAI,mBAAA,GAAsB;AACtB,IAAA,OAAO,OAAA,CAAQ,IAAI,mBAAA,IAAuB,YAAA;AAAA,EAC9C;AAAA,EAEA,IAAI,eAAA,GAAkB;AAClB,IAAA,OAAWC,yBAAA,IAAW,OAAA;AAAA,EAC1B;AACJ","file":"chunk-XFUF7SDO.cjs","sourcesContent":["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 get A_FRAME_VERSION() {\n return pkg.version || '0.0.1';\n }\n}"]}
|