@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
package/dist/node/storage.d.mts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { A as A_FrameStorage, a as A_FrameContext, b as A_FrameStorageSaveDefinitionOperation, c as A_FrameStorageLoadDefinitionsOperation, d as A_FrameStorageDestroyDefinitionsOperation, e as A_FrameStorageSaveNamespaceOperation, f as A_FrameStorageLoadNamespacesOperation, g as A_FrameStorageDestroyNamespacesOperation } from './A-FrameStorage.component-
|
|
2
|
-
export { h as A_FrameStorageDestroyDefinitionsOperationParams, i as A_FrameStorageDestroyDefinitionsOperationResult, j as A_FrameStorageDestroyNamespacesOperationParams, k as A_FrameStorageDestroyNamespacesOperationResult, l as A_FrameStorageLoadDefinitionsOperationParams, m as A_FrameStorageLoadDefinitionsOperationResult, n as A_FrameStorageLoadNamespacesOperationParams, o as A_FrameStorageLoadNamespacesOperationResult, p as A_FrameStorageOperation, q as A_FrameStorageSaveDefinitionOperationParams, r as A_FrameStorageSaveDefinitionOperationResult, s as A_FrameStorageSaveNamespaceOperationParams, t as A_FrameStorageSaveNamespaceOperationResult, I as IA_FrameStorage } from './A-FrameStorage.component-
|
|
1
|
+
import { A as A_FrameStorage, a as A_FrameContext, b as A_FrameStorageSaveDefinitionOperation, c as A_FrameStorageLoadDefinitionsOperation, d as A_FrameStorageDestroyDefinitionsOperation, e as A_FrameStorageSaveNamespaceOperation, f as A_FrameStorageLoadNamespacesOperation, g as A_FrameStorageDestroyNamespacesOperation } from './A-FrameStorage.component-CDztogHV.mjs';
|
|
2
|
+
export { h as A_FrameStorageDestroyDefinitionsOperationParams, i as A_FrameStorageDestroyDefinitionsOperationResult, j as A_FrameStorageDestroyNamespacesOperationParams, k as A_FrameStorageDestroyNamespacesOperationResult, l as A_FrameStorageLoadDefinitionsOperationParams, m as A_FrameStorageLoadDefinitionsOperationResult, n as A_FrameStorageLoadNamespacesOperationParams, o as A_FrameStorageLoadNamespacesOperationResult, p as A_FrameStorageOperation, q as A_FrameStorageSaveDefinitionOperationParams, r as A_FrameStorageSaveDefinitionOperationResult, s as A_FrameStorageSaveNamespaceOperationParams, t as A_FrameStorageSaveNamespaceOperationResult, I as IA_FrameStorage } from './A-FrameStorage.component-CDztogHV.mjs';
|
|
3
3
|
import { A_Fragment, A_Error } from '@adaas/a-concept';
|
|
4
|
-
import { e as A_FrameNamespace_Serialized, A as A_FrameNamespace } from './A-FrameNamespace.entity-
|
|
5
|
-
import {
|
|
4
|
+
import { e as A_FrameNamespace_Serialized, A as A_FrameNamespace } from './A-FrameNamespace.entity-BDg1FUgo.mjs';
|
|
5
|
+
import { b as A_FrameDefinition_Serialized } from './A-FrameDefinition.types-BT02yAhQ.mjs';
|
|
6
6
|
import { A_FrameEnv } from './env.mjs';
|
|
7
7
|
import { A_FrameCrypto } from './crypto.mjs';
|
|
8
|
-
import './A-
|
|
8
|
+
import { A as A_FrameDefinition } from './A-FrameDefinition.entity-yA0GsBoe.mjs';
|
|
9
|
+
import './A-FrameChannel.types-BsE6bNky.mjs';
|
|
9
10
|
import './vector.mjs';
|
|
10
11
|
|
|
11
12
|
/**
|
|
@@ -35,8 +36,12 @@ declare class A_FrameStorageCodec extends A_Fragment {
|
|
|
35
36
|
A_FRAME_FILE_VERSION: number;
|
|
36
37
|
A_FRAME_HEADER_SIZE: number;
|
|
37
38
|
static get fileExtension(): string;
|
|
38
|
-
|
|
39
|
+
/** Returns the definitions file name for a given namespace id, e.g. `my-ns.definitions.aframe` */
|
|
40
|
+
getDefinitionsFileName(namespaceId: string): string;
|
|
41
|
+
/** Returns the reserved namespaces index file name: `.namespaces.aframe` */
|
|
39
42
|
getNamespaceFileName(): string;
|
|
43
|
+
/** Glob pattern that matches all definitions files under a directory, e.g. `*.definitions.aframe` */
|
|
44
|
+
static get definitionsFilePattern(): string;
|
|
40
45
|
encodePayload(records: A_FrameDefinition_Serialized[]): Uint8Array;
|
|
41
46
|
decodePayload(data: Uint8Array): A_FrameDefinition_Serialized[];
|
|
42
47
|
encodeNamespacePayload(records: A_FrameNamespace_Serialized[]): Uint8Array;
|
|
@@ -74,6 +79,13 @@ declare const A_FrameStorageFeatures: {
|
|
|
74
79
|
declare class A_FrameNodeStorage extends A_FrameStorage {
|
|
75
80
|
/** Returns file contents, or null when the file does not exist yet. Re-throws all other I/O errors. */
|
|
76
81
|
private tryReadFile;
|
|
82
|
+
/**
|
|
83
|
+
* Resolves extra storage directories by expanding each comma-separated glob
|
|
84
|
+
* pattern in `pattern`. Returns an empty array when `pattern` is blank or
|
|
85
|
+
* when no paths match. Errors from unsupported patterns are swallowed so
|
|
86
|
+
* that a bad env value never breaks the application.
|
|
87
|
+
*/
|
|
88
|
+
private listExtraStorageDirs;
|
|
77
89
|
/**
|
|
78
90
|
* Save a single definition to local file storage. This is called as part of A_FrameDefinition.save() when using the local file storage provider. It reads the existing namespace file, merges in the new or updated definition, and writes back the encrypted file.
|
|
79
91
|
*
|
package/dist/node/storage.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { A as A_FrameStorage, a as A_FrameContext, b as A_FrameStorageSaveDefinitionOperation, c as A_FrameStorageLoadDefinitionsOperation, d as A_FrameStorageDestroyDefinitionsOperation, e as A_FrameStorageSaveNamespaceOperation, f as A_FrameStorageLoadNamespacesOperation, g as A_FrameStorageDestroyNamespacesOperation } from './A-FrameStorage.component-
|
|
2
|
-
export { h as A_FrameStorageDestroyDefinitionsOperationParams, i as A_FrameStorageDestroyDefinitionsOperationResult, j as A_FrameStorageDestroyNamespacesOperationParams, k as A_FrameStorageDestroyNamespacesOperationResult, l as A_FrameStorageLoadDefinitionsOperationParams, m as A_FrameStorageLoadDefinitionsOperationResult, n as A_FrameStorageLoadNamespacesOperationParams, o as A_FrameStorageLoadNamespacesOperationResult, p as A_FrameStorageOperation, q as A_FrameStorageSaveDefinitionOperationParams, r as A_FrameStorageSaveDefinitionOperationResult, s as A_FrameStorageSaveNamespaceOperationParams, t as A_FrameStorageSaveNamespaceOperationResult, I as IA_FrameStorage } from './A-FrameStorage.component-
|
|
1
|
+
import { A as A_FrameStorage, a as A_FrameContext, b as A_FrameStorageSaveDefinitionOperation, c as A_FrameStorageLoadDefinitionsOperation, d as A_FrameStorageDestroyDefinitionsOperation, e as A_FrameStorageSaveNamespaceOperation, f as A_FrameStorageLoadNamespacesOperation, g as A_FrameStorageDestroyNamespacesOperation } from './A-FrameStorage.component-emIH1a1M.js';
|
|
2
|
+
export { h as A_FrameStorageDestroyDefinitionsOperationParams, i as A_FrameStorageDestroyDefinitionsOperationResult, j as A_FrameStorageDestroyNamespacesOperationParams, k as A_FrameStorageDestroyNamespacesOperationResult, l as A_FrameStorageLoadDefinitionsOperationParams, m as A_FrameStorageLoadDefinitionsOperationResult, n as A_FrameStorageLoadNamespacesOperationParams, o as A_FrameStorageLoadNamespacesOperationResult, p as A_FrameStorageOperation, q as A_FrameStorageSaveDefinitionOperationParams, r as A_FrameStorageSaveDefinitionOperationResult, s as A_FrameStorageSaveNamespaceOperationParams, t as A_FrameStorageSaveNamespaceOperationResult, I as IA_FrameStorage } from './A-FrameStorage.component-emIH1a1M.js';
|
|
3
3
|
import { A_Fragment, A_Error } from '@adaas/a-concept';
|
|
4
|
-
import { e as A_FrameNamespace_Serialized, A as A_FrameNamespace } from './A-FrameNamespace.entity-
|
|
5
|
-
import {
|
|
4
|
+
import { e as A_FrameNamespace_Serialized, A as A_FrameNamespace } from './A-FrameNamespace.entity-HDXcLGcS.js';
|
|
5
|
+
import { b as A_FrameDefinition_Serialized } from './A-FrameDefinition.types-BA_pLGpo.js';
|
|
6
6
|
import { A_FrameEnv } from './env.js';
|
|
7
7
|
import { A_FrameCrypto } from './crypto.js';
|
|
8
|
-
import './A-
|
|
8
|
+
import { A as A_FrameDefinition } from './A-FrameDefinition.entity-C0kzaGJ0.js';
|
|
9
|
+
import './A-FrameChannel.types-DD2B11rf.js';
|
|
9
10
|
import './vector.js';
|
|
10
11
|
|
|
11
12
|
/**
|
|
@@ -35,8 +36,12 @@ declare class A_FrameStorageCodec extends A_Fragment {
|
|
|
35
36
|
A_FRAME_FILE_VERSION: number;
|
|
36
37
|
A_FRAME_HEADER_SIZE: number;
|
|
37
38
|
static get fileExtension(): string;
|
|
38
|
-
|
|
39
|
+
/** Returns the definitions file name for a given namespace id, e.g. `my-ns.definitions.aframe` */
|
|
40
|
+
getDefinitionsFileName(namespaceId: string): string;
|
|
41
|
+
/** Returns the reserved namespaces index file name: `.namespaces.aframe` */
|
|
39
42
|
getNamespaceFileName(): string;
|
|
43
|
+
/** Glob pattern that matches all definitions files under a directory, e.g. `*.definitions.aframe` */
|
|
44
|
+
static get definitionsFilePattern(): string;
|
|
40
45
|
encodePayload(records: A_FrameDefinition_Serialized[]): Uint8Array;
|
|
41
46
|
decodePayload(data: Uint8Array): A_FrameDefinition_Serialized[];
|
|
42
47
|
encodeNamespacePayload(records: A_FrameNamespace_Serialized[]): Uint8Array;
|
|
@@ -74,6 +79,13 @@ declare const A_FrameStorageFeatures: {
|
|
|
74
79
|
declare class A_FrameNodeStorage extends A_FrameStorage {
|
|
75
80
|
/** Returns file contents, or null when the file does not exist yet. Re-throws all other I/O errors. */
|
|
76
81
|
private tryReadFile;
|
|
82
|
+
/**
|
|
83
|
+
* Resolves extra storage directories by expanding each comma-separated glob
|
|
84
|
+
* pattern in `pattern`. Returns an empty array when `pattern` is blank or
|
|
85
|
+
* when no paths match. Errors from unsupported patterns are swallowed so
|
|
86
|
+
* that a bad env value never breaks the application.
|
|
87
|
+
*/
|
|
88
|
+
private listExtraStorageDirs;
|
|
77
89
|
/**
|
|
78
90
|
* Save a single definition to local file storage. This is called as part of A_FrameDefinition.save() when using the local file storage provider. It reads the existing namespace file, merges in the new or updated definition, and writes back the encrypted file.
|
|
79
91
|
*
|
package/dist/node/storage.mjs
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
export { A_FrameNodeStorage, A_FrameStorage, A_FrameStorageError, A_FrameStorageFeatures, A_FrameStorageOperation } from './chunk-
|
|
2
|
-
export { A_FrameStorageCodec } from './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-K4MZY4ME.mjs';
|
|
5
|
-
import './chunk-APRYHBEF.mjs';
|
|
6
|
-
import './chunk-OYC6L5NX.mjs';
|
|
1
|
+
export { A_FrameNodeStorage, A_FrameStorage, A_FrameStorageError, A_FrameStorageFeatures, A_FrameStorageOperation } from './chunk-JN3UJBUH.mjs';
|
|
2
|
+
export { A_FrameStorageCodec } from './chunk-OYZAQMKD.mjs';
|
|
3
|
+
import './chunk-SL7FT5R5.mjs';
|
|
7
4
|
import './chunk-UPA7VN4R.mjs';
|
|
8
|
-
import './chunk-
|
|
5
|
+
import './chunk-5OTXZ7BB.mjs';
|
|
6
|
+
import './chunk-K4MZY4ME.mjs';
|
|
7
|
+
import './chunk-AMMQ76RJ.mjs';
|
|
8
|
+
import './chunk-SKIEPTFS.mjs';
|
|
9
|
+
import './chunk-RVXASBMQ.mjs';
|
|
9
10
|
import './chunk-442DXGOD.mjs';
|
|
10
|
-
import './chunk-
|
|
11
|
+
import './chunk-WXCQCHAX.mjs';
|
|
12
|
+
import './chunk-IAL2NK2V.mjs';
|
|
13
|
+
import './chunk-2HUSP34L.mjs';
|
|
11
14
|
import './chunk-OI76LHVT.mjs';
|
|
12
15
|
//# sourceMappingURL=storage.mjs.map
|
|
13
16
|
//# sourceMappingURL=storage.mjs.map
|
package/dist/node/vector.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkHAORARSB_cjs = require('./chunk-HAORARSB.cjs');
|
|
4
4
|
require('./chunk-QFHZIG7Y.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "A_FrameVector", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkHAORARSB_cjs.A_FrameVector; }
|
|
11
11
|
});
|
|
12
12
|
//# sourceMappingURL=vector.cjs.map
|
|
13
13
|
//# sourceMappingURL=vector.cjs.map
|
package/dist/node/vector.d.mts
CHANGED
|
@@ -4,10 +4,17 @@ declare class A_FrameVector extends A_Entity {
|
|
|
4
4
|
static get concept(): string;
|
|
5
5
|
readonly values: Float32Array;
|
|
6
6
|
constructor(values: number[] | Float32Array);
|
|
7
|
+
get dimensions(): number;
|
|
7
8
|
get length(): number;
|
|
9
|
+
isEqualTo(vector: A_FrameVector): boolean;
|
|
8
10
|
magnitude(): number;
|
|
9
11
|
normalize(): A_FrameVector;
|
|
10
12
|
dot(other: A_FrameVector): number;
|
|
13
|
+
/**
|
|
14
|
+
* Returns the cosine similarity between this vector and `other` (range −1 to 1).
|
|
15
|
+
* Vectors with zero magnitude return 0.
|
|
16
|
+
*/
|
|
17
|
+
cosineSimilarity(other: A_FrameVector): number;
|
|
11
18
|
private assertSameLength;
|
|
12
19
|
toArray(): number[];
|
|
13
20
|
}
|
package/dist/node/vector.d.ts
CHANGED
|
@@ -4,10 +4,17 @@ declare class A_FrameVector extends A_Entity {
|
|
|
4
4
|
static get concept(): string;
|
|
5
5
|
readonly values: Float32Array;
|
|
6
6
|
constructor(values: number[] | Float32Array);
|
|
7
|
+
get dimensions(): number;
|
|
7
8
|
get length(): number;
|
|
9
|
+
isEqualTo(vector: A_FrameVector): boolean;
|
|
8
10
|
magnitude(): number;
|
|
9
11
|
normalize(): A_FrameVector;
|
|
10
12
|
dot(other: A_FrameVector): number;
|
|
13
|
+
/**
|
|
14
|
+
* Returns the cosine similarity between this vector and `other` (range −1 to 1).
|
|
15
|
+
* Vectors with zero magnitude return 0.
|
|
16
|
+
*/
|
|
17
|
+
cosineSimilarity(other: A_FrameVector): number;
|
|
11
18
|
private assertSameLength;
|
|
12
19
|
toArray(): number[];
|
|
13
20
|
}
|
package/dist/node/vector.mjs
CHANGED
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic Article Generator — Incremental Content → Component Rendering
|
|
3
|
+
*
|
|
4
|
+
* Usage:
|
|
5
|
+
* npx ts-node generate-article.ts "The History of Jazz Music"
|
|
6
|
+
* npx ts-node generate-article.ts "Popular Dog Breeds"
|
|
7
|
+
*
|
|
8
|
+
* What you'll see:
|
|
9
|
+
* Clean terminal output — each section appears as a rendered UI component
|
|
10
|
+
* the moment it's generated. No logs, no debug noise.
|
|
11
|
+
*
|
|
12
|
+
* Where the details go:
|
|
13
|
+
* logs/<timestamp>_<topic>.log — full prompt/response traces, embeddings,
|
|
14
|
+
* scores, timings, errors. Everything you need for analysis.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { A_Component, A_Concept, A_Container, A_Error } from '@adaas/a-concept';
|
|
18
|
+
import { A_Frame } from '@adaas/a-frame/core';
|
|
19
|
+
import { A_FrameIndex } from '@adaas/a-frame/index';
|
|
20
|
+
import { A_FrameSegment } from '@adaas/a-frame/segment';
|
|
21
|
+
import { A_FrameSchema } from '@adaas/a-frame/schema';
|
|
22
|
+
import { A_FrameCompletion } from '@adaas/a-frame/completion';
|
|
23
|
+
import { config } from 'dotenv';
|
|
24
|
+
import { FileLogger } from '../logger';
|
|
25
|
+
import { ALL_COMPONENTS, Paragraph, RENDERERS } from '../components';
|
|
26
|
+
|
|
27
|
+
config();
|
|
28
|
+
// A_FRAME_SYNC=true lets concept.load() handle embedding with storage caching:
|
|
29
|
+
// first run embeds all definitions in parallel and saves them to .aframe/;
|
|
30
|
+
// subsequent runs load from cache and skip the embedding API calls entirely.
|
|
31
|
+
|
|
32
|
+
// ─── Config ───────────────────────────────────────────────────────────────────
|
|
33
|
+
|
|
34
|
+
const MAX_RETRIES = 2;
|
|
35
|
+
const MIN_SCORE = 0.50;
|
|
36
|
+
|
|
37
|
+
// ─── Terminal rendering ───────────────────────────────────────────────────────
|
|
38
|
+
|
|
39
|
+
const ESC = '\x1b[';
|
|
40
|
+
const S = {
|
|
41
|
+
reset: `${ESC}0m`, bold: `${ESC}1m`, dim: `${ESC}2m`, italic: `${ESC}3m`,
|
|
42
|
+
cyan: `${ESC}36m`, bcyan: `${ESC}96m`, green: `${ESC}32m`, bgreen: `${ESC}92m`,
|
|
43
|
+
yellow: `${ESC}33m`, blue: `${ESC}34m`, bblue: `${ESC}94m`, magenta: `${ESC}35m`,
|
|
44
|
+
red: `${ESC}31m`, gray: `${ESC}90m`, white: `${ESC}37m`,
|
|
45
|
+
};
|
|
46
|
+
const c = (s: string, ...styles: string[]) => styles.join('') + s + S.reset;
|
|
47
|
+
|
|
48
|
+
type P = { content: string } & Record<string, string | undefined>;
|
|
49
|
+
|
|
50
|
+
function wrap(text: string, width = 72): string[] {
|
|
51
|
+
const words = text.split(/\s+/);
|
|
52
|
+
const lines: string[] = [];
|
|
53
|
+
let line = '';
|
|
54
|
+
for (const w of words) {
|
|
55
|
+
const next = line ? `${line} ${w}` : w;
|
|
56
|
+
if (next.length > width) { lines.push(line); line = w; } else line = next;
|
|
57
|
+
}
|
|
58
|
+
if (line) lines.push(line);
|
|
59
|
+
return lines;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// ─── Prompts ──────────────────────────────────────────────────────────────────
|
|
63
|
+
|
|
64
|
+
const PLAN_SYSTEM = [
|
|
65
|
+
'You are an editorial planner. Return a JSON array of article sections.',
|
|
66
|
+
'Each object: {"title": "…", "type": "…", "prompt": "…"}',
|
|
67
|
+
'type must be one of: title, paragraph, profile_card, bar_chart, data_table, stat_callout, list, image.',
|
|
68
|
+
'prompt is a concise imperative instruction for generating that section.',
|
|
69
|
+
'Use VARIED types across the article — never more than 2 consecutive paragraphs.',
|
|
70
|
+
'Return 6–10 sections. Output ONLY the JSON array, no markdown fences.',
|
|
71
|
+
].join('\n');
|
|
72
|
+
|
|
73
|
+
const COMPONENT_SELECTOR_SYSTEM = [
|
|
74
|
+
'You are a UI component selector. Given a piece of article content, describe in 1–2 sentences',
|
|
75
|
+
'the most appropriate visual UI component to display it.',
|
|
76
|
+
'Available types: Title/Headline, Paragraph, Profile Card (entity attributes), Bar Chart (comparative numbers),',
|
|
77
|
+
'Data Table (attribute-value pairs), Stat Callout (single prominent figure + context),',
|
|
78
|
+
'Bulleted List, Image Block (scene description).',
|
|
79
|
+
'Output ONLY the component description. No preamble, no markdown, no punctuation at end.',
|
|
80
|
+
'Example: "A bar chart component showing comparative numerical values across named categories"',
|
|
81
|
+
].join('\n');
|
|
82
|
+
|
|
83
|
+
function contentSystem(type: string): string {
|
|
84
|
+
const rules: Record<string, string> = {
|
|
85
|
+
title: 'Write a single compelling headline. No markdown, no #, just the text.',
|
|
86
|
+
paragraph: 'Write 2–4 sentences of clear prose. No headings, no markdown.',
|
|
87
|
+
profile_card: 'Write key attributes as "Label: value" lines. First line is the entity name alone.',
|
|
88
|
+
bar_chart: 'Write "Category: number" lines with real or realistic data. One per line.',
|
|
89
|
+
data_table: 'Write "Attribute | Value" lines for comparison. One pair per line.',
|
|
90
|
+
stat_callout: 'Write one prominent number/fact on the first line, then one line of context.',
|
|
91
|
+
list: 'Write a set of short items, one per line, starting with a dash.',
|
|
92
|
+
image: 'Write a single line describing what the image shows.',
|
|
93
|
+
};
|
|
94
|
+
return `You are a content writer. ${rules[type] ?? rules.paragraph} Be specific. No markdown headings.`;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// ─── Helpers ──────────────────────────────────────────────────────────────────
|
|
98
|
+
|
|
99
|
+
function parseJson<T>(raw: string | undefined, label: string): T {
|
|
100
|
+
if (!raw?.trim()) throw new Error(`${label}: empty`);
|
|
101
|
+
const m = raw.match(/```(?:json)?\s*([\s\S]*?)```/);
|
|
102
|
+
return JSON.parse((m ? m[1] : raw).trim()) as T;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function sleep(ms: number): Promise<void> {
|
|
106
|
+
return new Promise(r => setTimeout(r, ms));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// ─── Spinner ─────────────────────────────────────────────────────────────────
|
|
110
|
+
|
|
111
|
+
class Spinner {
|
|
112
|
+
private readonly frames = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
|
|
113
|
+
private idx = 0;
|
|
114
|
+
private timer: ReturnType<typeof setInterval> | null = null;
|
|
115
|
+
private label = '';
|
|
116
|
+
|
|
117
|
+
start(label: string): this {
|
|
118
|
+
this.stop();
|
|
119
|
+
this.label = label;
|
|
120
|
+
this.idx = 0;
|
|
121
|
+
this.timer = setInterval(() => {
|
|
122
|
+
const frame = this.frames[this.idx++ % this.frames.length];
|
|
123
|
+
process.stdout.write(`\r ${S.cyan}${frame}${S.reset} ${S.dim}${this.label}${S.reset} `);
|
|
124
|
+
}, 80);
|
|
125
|
+
return this;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
update(label: string): void {
|
|
129
|
+
this.label = label;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
stop(message?: string): void {
|
|
133
|
+
if (this.timer) {
|
|
134
|
+
clearInterval(this.timer);
|
|
135
|
+
this.timer = null;
|
|
136
|
+
}
|
|
137
|
+
process.stdout.write('\r\x1b[2K');
|
|
138
|
+
if (message) console.log(message);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
143
|
+
|
|
144
|
+
async function askTopic(): Promise<string> {
|
|
145
|
+
const readline = await import('readline');
|
|
146
|
+
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
147
|
+
return new Promise(resolve => {
|
|
148
|
+
rl.question(`${S.bcyan}${S.bold}Enter article topic:${S.reset} `, answer => {
|
|
149
|
+
rl.close();
|
|
150
|
+
resolve(answer.trim());
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// ─── Main ─────────────────────────────────────────────────────────────────────
|
|
156
|
+
|
|
157
|
+
async function main(): Promise<void> {
|
|
158
|
+
let topic = process.argv.slice(2).join(' ').trim();
|
|
159
|
+
if (!topic) {
|
|
160
|
+
topic = await askTopic();
|
|
161
|
+
}
|
|
162
|
+
if (!topic) {
|
|
163
|
+
console.error('No topic provided.');
|
|
164
|
+
process.exit(1);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
const log = new FileLogger(topic);
|
|
168
|
+
const spinner = new Spinner();
|
|
169
|
+
|
|
170
|
+
// ── Setup ─────────────────────────────────────────────────────────────
|
|
171
|
+
|
|
172
|
+
const container = new A_Container({ name: 'ArticleUI', components: ALL_COMPONENTS });
|
|
173
|
+
const concept = new A_Concept({ name: 'ArticleGenerator', components: [A_Frame], containers: [container] });
|
|
174
|
+
|
|
175
|
+
spinner.start('Loading framework + embedding definitions…');
|
|
176
|
+
await concept.load();
|
|
177
|
+
spinner.stop();
|
|
178
|
+
|
|
179
|
+
const index = concept.scope.resolve(A_FrameIndex)!;
|
|
180
|
+
const defs = index.listDefinitions();
|
|
181
|
+
|
|
182
|
+
log.info('Concept loaded', { components: ALL_COMPONENTS.length, indexed: defs.length });
|
|
183
|
+
|
|
184
|
+
// ── Plan ──────────────────────────────────────────────────────────────
|
|
185
|
+
|
|
186
|
+
const planPrompt = `Create an article plan about: "${topic}". Return 6–10 sections with varied visual types.`;
|
|
187
|
+
|
|
188
|
+
log.prompt('PLAN', planPrompt);
|
|
189
|
+
|
|
190
|
+
const planner = new A_FrameCompletion({
|
|
191
|
+
prompt: planPrompt,
|
|
192
|
+
options: { system: PLAN_SYSTEM, max_tokens: 800 },
|
|
193
|
+
});
|
|
194
|
+
container.scope.register(planner);
|
|
195
|
+
|
|
196
|
+
spinner.start('Planning article structure…');
|
|
197
|
+
const planStart = Date.now();
|
|
198
|
+
await planner.generate();
|
|
199
|
+
const planMs = Date.now() - planStart;
|
|
200
|
+
spinner.stop();
|
|
201
|
+
|
|
202
|
+
log.prompt('PLAN (response)', planPrompt, planner.text, planMs);
|
|
203
|
+
|
|
204
|
+
type Section = { title: string; type: string; prompt: string };
|
|
205
|
+
const sections = parseJson<Section[]>(planner.text, 'plan');
|
|
206
|
+
|
|
207
|
+
log.info('Plan parsed', { count: sections.length, sections: sections.map(s => `[${s.type}] ${s.title}`) });
|
|
208
|
+
|
|
209
|
+
console.log(`\n ${c('✦', S.bcyan)} ${c('Article:', S.dim)} ${c(topic, S.bold, S.bcyan)}\n`);
|
|
210
|
+
|
|
211
|
+
// ── Incremental: generate → map → render each section ────────────────
|
|
212
|
+
|
|
213
|
+
for (let i = 0; i < sections.length; i++) {
|
|
214
|
+
const sec = sections[i];
|
|
215
|
+
|
|
216
|
+
log.header(`SECTION ${i + 1}/${sections.length}`, { title: sec.title, type: sec.type });
|
|
217
|
+
|
|
218
|
+
let rendered = false;
|
|
219
|
+
|
|
220
|
+
for (let attempt = 1; attempt <= MAX_RETRIES; attempt++) {
|
|
221
|
+
try {
|
|
222
|
+
// 1. Generate content
|
|
223
|
+
const genStart = Date.now();
|
|
224
|
+
spinner.start(`[${i + 1}/${sections.length}] ${sec.type} — ${sec.title}`);
|
|
225
|
+
const gen = new A_FrameCompletion({
|
|
226
|
+
prompt: sec.prompt,
|
|
227
|
+
options: { system: contentSystem(sec.type), max_tokens: 300 },
|
|
228
|
+
});
|
|
229
|
+
container.scope.register(gen);
|
|
230
|
+
await gen.generate();
|
|
231
|
+
spinner.stop();
|
|
232
|
+
const genMs = Date.now() - genStart;
|
|
233
|
+
|
|
234
|
+
const body = gen.text?.trim() ?? '';
|
|
235
|
+
if (!body) { log.warn('Empty content, retrying'); continue; }
|
|
236
|
+
|
|
237
|
+
log.prompt(`CONTENT [${sec.title}]`, sec.prompt, body, genMs);
|
|
238
|
+
|
|
239
|
+
// 2. Generate component descriptor (bridge: content → search query)
|
|
240
|
+
spinner.start('Selecting component type…');
|
|
241
|
+
const selectorStart = Date.now();
|
|
242
|
+
const selector = new A_FrameCompletion({
|
|
243
|
+
prompt: body, //`Content:\n${body.slice(0, 400)}`,
|
|
244
|
+
options: { system: COMPONENT_SELECTOR_SYSTEM, max_tokens: 80 },
|
|
245
|
+
});
|
|
246
|
+
container.scope.register(selector);
|
|
247
|
+
await selector.generate();
|
|
248
|
+
const selectorMs = Date.now() - selectorStart;
|
|
249
|
+
spinner.stop();
|
|
250
|
+
|
|
251
|
+
const componentQuery = selector.text?.trim() ?? body.slice(0, 200);
|
|
252
|
+
log.prompt(`COMPONENT QUERY [${sec.title}]`, body.slice(0, 100), componentQuery, selectorMs);
|
|
253
|
+
|
|
254
|
+
// 3. Embed the component descriptor and search index
|
|
255
|
+
spinner.start('Mapping to component…');
|
|
256
|
+
const embedStart = Date.now();
|
|
257
|
+
const contentSegment = new A_FrameSegment({ content: componentQuery });
|
|
258
|
+
container.scope.register(contentSegment);
|
|
259
|
+
await contentSegment.embed();
|
|
260
|
+
const embedMs = Date.now() - embedStart;
|
|
261
|
+
spinner.stop();
|
|
262
|
+
|
|
263
|
+
log.info('Embedded component query', { query: componentQuery, ms: embedMs });
|
|
264
|
+
|
|
265
|
+
const results = index.search(contentSegment.vector!, { topK: 3 });
|
|
266
|
+
|
|
267
|
+
log.searchResults(body.slice(0, 100), results.map(r => ({
|
|
268
|
+
name: r.record.name,
|
|
269
|
+
score: r.score,
|
|
270
|
+
description: r.record.description,
|
|
271
|
+
})));
|
|
272
|
+
|
|
273
|
+
const best = results[0];
|
|
274
|
+
if (!best || best.score < MIN_SCORE) {
|
|
275
|
+
log.warn(`Score too low: ${best?.score.toFixed(3) ?? 'none'} < ${MIN_SCORE}`);
|
|
276
|
+
if (attempt < MAX_RETRIES) { await sleep(400); continue; }
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// 4. Extract draw params
|
|
280
|
+
let drawParams: P = { content: body };
|
|
281
|
+
const meta = (best.record.metadata as any)?.params as Record<string, string> | undefined;
|
|
282
|
+
|
|
283
|
+
if (meta && Object.keys(meta).length > 0) {
|
|
284
|
+
// Build schema descriptor: key → type hint from component metadata
|
|
285
|
+
const schemaDescriptor: Record<string, string> = {};
|
|
286
|
+
for (const [k, v] of Object.entries(meta)) schemaDescriptor[k] = String(v);
|
|
287
|
+
|
|
288
|
+
try {
|
|
289
|
+
spinner.start('Extracting params…');
|
|
290
|
+
const extStart = Date.now();
|
|
291
|
+
|
|
292
|
+
// 3. Use A_FrameSchema to extract typed params from raw content
|
|
293
|
+
const extractor = new A_FrameSchema({
|
|
294
|
+
prompt: body.slice(0, 500),
|
|
295
|
+
schema: schemaDescriptor,
|
|
296
|
+
});
|
|
297
|
+
container.scope.register(extractor);
|
|
298
|
+
await extractor.extract();
|
|
299
|
+
const extMs = Date.now() - extStart;
|
|
300
|
+
spinner.stop();
|
|
301
|
+
|
|
302
|
+
drawParams = { content: body, ...(extractor.data as Record<string, string> ?? {}) };
|
|
303
|
+
|
|
304
|
+
log.prompt(`EXTRACT [${sec.title}]`, body.slice(0, 100), JSON.stringify(extractor.data), extMs);
|
|
305
|
+
} catch (e) {
|
|
306
|
+
spinner.stop();
|
|
307
|
+
log.error('Param extraction failed — using raw content', e);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
// 5. RENDER immediately
|
|
312
|
+
const renderer = best.record.name ? RENDERERS.get(best.record.name) : undefined;
|
|
313
|
+
if (renderer) {
|
|
314
|
+
renderer(drawParams);
|
|
315
|
+
} else {
|
|
316
|
+
// Fallback: print as paragraph
|
|
317
|
+
Paragraph.render(drawParams);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
log.mapped({
|
|
321
|
+
title: sec.title,
|
|
322
|
+
type: sec.type,
|
|
323
|
+
component: best.record.name,
|
|
324
|
+
score: best.score,
|
|
325
|
+
params: drawParams,
|
|
326
|
+
ms: Date.now() - genStart,
|
|
327
|
+
});
|
|
328
|
+
|
|
329
|
+
rendered = true;
|
|
330
|
+
break;
|
|
331
|
+
|
|
332
|
+
} catch (err) {
|
|
333
|
+
spinner.stop();
|
|
334
|
+
log.error(`Attempt ${attempt} failed`, err);
|
|
335
|
+
if (attempt < MAX_RETRIES) await sleep(400 * attempt);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
if (!rendered) {
|
|
340
|
+
log.error(`Section "${sec.title}" failed after ${MAX_RETRIES} attempts`);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
// Done
|
|
345
|
+
console.log(c(`\n${'─'.repeat(72)}`, S.gray));
|
|
346
|
+
console.log(c(` ✓ Article complete · ${sections.length} sections · log: ${log.path}`, S.dim));
|
|
347
|
+
console.log(c('─'.repeat(72), S.gray));
|
|
348
|
+
console.log();
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
main().catch((err) => {
|
|
352
|
+
if (err instanceof A_Error) {
|
|
353
|
+
console.error(`\n${c('✗ A_Error:', S.red)}`, JSON.stringify(err.toJSON(), null, 2));
|
|
354
|
+
} else {
|
|
355
|
+
console.error(`\n${c('✗ Error:', S.red)}`, err);
|
|
356
|
+
}
|
|
357
|
+
process.exit(1);
|
|
358
|
+
});
|