@hashgraphonline/standards-sdk 0.1.143 → 0.1.144-feat-solana-register.canary.5001619.81
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/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
- package/dist/cjs/hcs-10/sdk.d.ts +8 -0
- package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
- package/dist/cjs/hcs-11/client.d.ts +2 -2
- package/dist/cjs/hcs-11/client.d.ts.map +1 -1
- package/dist/cjs/hcs-11/person-builder.d.ts +1 -0
- package/dist/cjs/hcs-11/person-builder.d.ts.map +1 -1
- package/dist/cjs/hcs-11/types.d.ts +1 -0
- package/dist/cjs/hcs-11/types.d.ts.map +1 -1
- package/dist/cjs/hcs-12/rendering/resource-manager.d.ts.map +1 -1
- package/dist/cjs/hcs-12/validation/schemas.d.ts +8 -8
- package/dist/cjs/hcs-14/issuers/hiero.d.ts.map +1 -1
- package/dist/cjs/hcs-15/browser.d.ts +2 -0
- package/dist/cjs/hcs-15/browser.d.ts.map +1 -1
- package/dist/cjs/hcs-15/sdk.d.ts +7 -1
- package/dist/cjs/hcs-15/sdk.d.ts.map +1 -1
- package/dist/cjs/hcs-15/tx.d.ts +4 -0
- package/dist/cjs/hcs-15/tx.d.ts.map +1 -1
- package/dist/cjs/hcs-15/types.d.ts +16 -1
- package/dist/cjs/hcs-15/types.d.ts.map +1 -1
- package/dist/cjs/hcs-16/browser.d.ts +11 -2
- package/dist/cjs/hcs-16/browser.d.ts.map +1 -1
- package/dist/cjs/hcs-16/sdk.d.ts +62 -1
- package/dist/cjs/hcs-16/sdk.d.ts.map +1 -1
- package/dist/cjs/hcs-16/tx.d.ts +21 -3
- package/dist/cjs/hcs-16/tx.d.ts.map +1 -1
- package/dist/cjs/hcs-17/base-client.d.ts +1 -0
- package/dist/cjs/hcs-17/base-client.d.ts.map +1 -1
- package/dist/cjs/hcs-17/sdk.d.ts.map +1 -1
- package/dist/cjs/hcs-17/tx.d.ts +2 -0
- package/dist/cjs/hcs-17/tx.d.ts.map +1 -1
- package/dist/cjs/hcs-17/types.d.ts +4 -0
- package/dist/cjs/hcs-17/types.d.ts.map +1 -1
- package/dist/cjs/hcs-21/types.d.ts +75 -75
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/client/adapters.d.ts +20 -0
- package/dist/cjs/services/registry-broker/client/adapters.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/agents.d.ts +16 -0
- package/dist/cjs/services/registry-broker/client/agents.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/base-client.d.ts +70 -0
- package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/chat-history.d.ts +23 -0
- package/dist/cjs/services/registry-broker/client/chat-history.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/chat.d.ts +33 -0
- package/dist/cjs/services/registry-broker/client/chat.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/credits.d.ts +40 -0
- package/dist/cjs/services/registry-broker/client/credits.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts +35 -0
- package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/encryption.d.ts +33 -0
- package/dist/cjs/services/registry-broker/client/encryption.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/errors.d.ts +19 -0
- package/dist/cjs/services/registry-broker/client/errors.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/feedback.d.ts +2 -0
- package/dist/cjs/services/registry-broker/client/feedback.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts +10 -0
- package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/search.d.ts +19 -0
- package/dist/cjs/services/registry-broker/client/search.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/utils.d.ts +21 -0
- package/dist/cjs/services/registry-broker/client/utils.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client.d.ts +2 -205
- package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/private-key-signer.d.ts +1 -0
- package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/schemas.d.ts +2509 -816
- package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/types.d.ts +64 -2
- package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
- package/dist/cjs/standards-sdk.cjs +3 -3
- package/dist/cjs/standards-sdk.cjs.map +1 -1
- package/dist/cjs/utils/crypto-abstraction.d.ts.map +1 -1
- package/dist/cjs/utils/crypto-env.d.ts.map +1 -1
- package/dist/cjs/utils/dynamic-import.d.ts +5 -1
- package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
- package/dist/cjs/utils/hash-adapter.d.ts.map +1 -1
- package/dist/es/hcs-10/base-client.d.ts.map +1 -1
- package/dist/es/hcs-10/sdk.d.ts +8 -0
- package/dist/es/hcs-10/sdk.d.ts.map +1 -1
- package/dist/es/hcs-11/client.d.ts +2 -2
- package/dist/es/hcs-11/client.d.ts.map +1 -1
- package/dist/es/hcs-11/person-builder.d.ts +1 -0
- package/dist/es/hcs-11/person-builder.d.ts.map +1 -1
- package/dist/es/hcs-11/types.d.ts +1 -0
- package/dist/es/hcs-11/types.d.ts.map +1 -1
- package/dist/es/hcs-12/rendering/resource-manager.d.ts.map +1 -1
- package/dist/es/hcs-12/validation/schemas.d.ts +8 -8
- package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
- package/dist/es/hcs-15/browser.d.ts +2 -0
- package/dist/es/hcs-15/browser.d.ts.map +1 -1
- package/dist/es/hcs-15/sdk.d.ts +7 -1
- package/dist/es/hcs-15/sdk.d.ts.map +1 -1
- package/dist/es/hcs-15/tx.d.ts +4 -0
- package/dist/es/hcs-15/tx.d.ts.map +1 -1
- package/dist/es/hcs-15/types.d.ts +16 -1
- package/dist/es/hcs-15/types.d.ts.map +1 -1
- package/dist/es/hcs-16/browser.d.ts +11 -2
- package/dist/es/hcs-16/browser.d.ts.map +1 -1
- package/dist/es/hcs-16/sdk.d.ts +62 -1
- package/dist/es/hcs-16/sdk.d.ts.map +1 -1
- package/dist/es/hcs-16/tx.d.ts +21 -3
- package/dist/es/hcs-16/tx.d.ts.map +1 -1
- package/dist/es/hcs-17/base-client.d.ts +1 -0
- package/dist/es/hcs-17/base-client.d.ts.map +1 -1
- package/dist/es/hcs-17/sdk.d.ts.map +1 -1
- package/dist/es/hcs-17/tx.d.ts +2 -0
- package/dist/es/hcs-17/tx.d.ts.map +1 -1
- package/dist/es/hcs-17/types.d.ts +4 -0
- package/dist/es/hcs-17/types.d.ts.map +1 -1
- package/dist/es/hcs-21/types.d.ts +75 -75
- package/dist/es/index.d.ts.map +1 -1
- package/dist/es/services/registry-broker/client/adapters.d.ts +20 -0
- package/dist/es/services/registry-broker/client/adapters.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/agents.d.ts +16 -0
- package/dist/es/services/registry-broker/client/agents.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/base-client.d.ts +70 -0
- package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/chat-history.d.ts +23 -0
- package/dist/es/services/registry-broker/client/chat-history.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/chat.d.ts +33 -0
- package/dist/es/services/registry-broker/client/chat.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/credits.d.ts +40 -0
- package/dist/es/services/registry-broker/client/credits.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts +35 -0
- package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/encryption.d.ts +33 -0
- package/dist/es/services/registry-broker/client/encryption.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/errors.d.ts +19 -0
- package/dist/es/services/registry-broker/client/errors.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/feedback.d.ts +2 -0
- package/dist/es/services/registry-broker/client/feedback.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/ledger-auth.d.ts +10 -0
- package/dist/es/services/registry-broker/client/ledger-auth.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/search.d.ts +19 -0
- package/dist/es/services/registry-broker/client/search.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/utils.d.ts +21 -0
- package/dist/es/services/registry-broker/client/utils.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client.d.ts +2 -205
- package/dist/es/services/registry-broker/client.d.ts.map +1 -1
- package/dist/es/services/registry-broker/private-key-signer.d.ts +1 -0
- package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
- package/dist/es/services/registry-broker/schemas.d.ts +2509 -816
- package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/es/services/registry-broker/types.d.ts +64 -2
- package/dist/es/services/registry-broker/types.d.ts.map +1 -1
- package/dist/es/standards-sdk.es.js +148 -133
- package/dist/es/standards-sdk.es.js.map +1 -1
- package/dist/es/standards-sdk.es10.js +70 -90
- package/dist/es/standards-sdk.es10.js.map +1 -1
- package/dist/es/standards-sdk.es100.js +229 -26
- package/dist/es/standards-sdk.es100.js.map +1 -1
- package/dist/es/standards-sdk.es101.js +109 -228
- package/dist/es/standards-sdk.es101.js.map +1 -1
- package/dist/es/standards-sdk.es102.js +15 -94
- package/dist/es/standards-sdk.es102.js.map +1 -1
- package/dist/es/standards-sdk.es103.js +80 -30
- package/dist/es/standards-sdk.es103.js.map +1 -1
- package/dist/es/standards-sdk.es104.js +27 -80
- package/dist/es/standards-sdk.es104.js.map +1 -1
- package/dist/es/standards-sdk.es105.js +136 -25
- package/dist/es/standards-sdk.es105.js.map +1 -1
- package/dist/es/standards-sdk.es106.js +27 -140
- package/dist/es/standards-sdk.es106.js.map +1 -1
- package/dist/es/standards-sdk.es107.js +20 -27
- package/dist/es/standards-sdk.es107.js.map +1 -1
- package/dist/es/standards-sdk.es108.js +156 -18
- package/dist/es/standards-sdk.es108.js.map +1 -1
- package/dist/es/standards-sdk.es109.js +198 -148
- package/dist/es/standards-sdk.es109.js.map +1 -1
- package/dist/es/standards-sdk.es11.js +121 -45
- package/dist/es/standards-sdk.es11.js.map +1 -1
- package/dist/es/standards-sdk.es110.js +747 -160
- package/dist/es/standards-sdk.es110.js.map +1 -1
- package/dist/es/standards-sdk.es111.js +9 -786
- package/dist/es/standards-sdk.es111.js.map +1 -1
- package/dist/es/standards-sdk.es112.js +567 -13
- package/dist/es/standards-sdk.es112.js.map +1 -1
- package/dist/es/standards-sdk.es113.js +576 -541
- package/dist/es/standards-sdk.es113.js.map +1 -1
- package/dist/es/standards-sdk.es114.js +12 -601
- package/dist/es/standards-sdk.es114.js.map +1 -1
- package/dist/es/standards-sdk.es115.js +2 -13
- package/dist/es/standards-sdk.es115.js.map +1 -1
- package/dist/es/standards-sdk.es116.js +87 -2
- package/dist/es/standards-sdk.es116.js.map +1 -1
- package/dist/es/standards-sdk.es117.js +37 -80
- package/dist/es/standards-sdk.es117.js.map +1 -1
- package/dist/es/standards-sdk.es118.js +2 -39
- package/dist/es/standards-sdk.es118.js.map +1 -1
- package/dist/es/standards-sdk.es119.js +231 -2
- package/dist/es/standards-sdk.es119.js.map +1 -1
- package/dist/es/standards-sdk.es12.js +60 -159
- package/dist/es/standards-sdk.es12.js.map +1 -1
- package/dist/es/standards-sdk.es120.js +1110 -193
- package/dist/es/standards-sdk.es120.js.map +1 -1
- package/dist/es/standards-sdk.es121.js +225 -1059
- package/dist/es/standards-sdk.es121.js.map +1 -1
- package/dist/es/standards-sdk.es122.js +419 -303
- package/dist/es/standards-sdk.es122.js.map +1 -1
- package/dist/es/standards-sdk.es123.js +351 -418
- package/dist/es/standards-sdk.es123.js.map +1 -1
- package/dist/es/standards-sdk.es124.js +872 -347
- package/dist/es/standards-sdk.es124.js.map +1 -1
- package/dist/es/standards-sdk.es125.js +182 -854
- package/dist/es/standards-sdk.es125.js.map +1 -1
- package/dist/es/standards-sdk.es126.js +1512 -153
- package/dist/es/standards-sdk.es126.js.map +1 -1
- package/dist/es/standards-sdk.es127.js +157 -1547
- package/dist/es/standards-sdk.es127.js.map +1 -1
- package/dist/es/standards-sdk.es128.js +184 -2190
- package/dist/es/standards-sdk.es128.js.map +1 -1
- package/dist/es/standards-sdk.es129.js +100 -63
- package/dist/es/standards-sdk.es129.js.map +1 -1
- package/dist/es/standards-sdk.es13.js +200 -60
- package/dist/es/standards-sdk.es13.js.map +1 -1
- package/dist/es/standards-sdk.es130.js +112 -78
- package/dist/es/standards-sdk.es130.js.map +1 -1
- package/dist/es/standards-sdk.es131.js +232 -144
- package/dist/es/standards-sdk.es131.js.map +1 -1
- package/dist/es/standards-sdk.es132.js +181 -8
- package/dist/es/standards-sdk.es132.js.map +1 -1
- package/dist/es/standards-sdk.es133.js +118 -82
- package/dist/es/standards-sdk.es133.js.map +1 -1
- package/dist/es/standards-sdk.es134.js +322 -61
- package/dist/es/standards-sdk.es134.js.map +1 -1
- package/dist/es/standards-sdk.es135.js +464 -28
- package/dist/es/standards-sdk.es135.js.map +1 -1
- package/dist/es/standards-sdk.es136.js +14 -135
- package/dist/es/standards-sdk.es136.js.map +1 -1
- package/dist/es/standards-sdk.es137.js +78 -39
- package/dist/es/standards-sdk.es137.js.map +1 -1
- package/dist/es/standards-sdk.es138.js +85 -764
- package/dist/es/standards-sdk.es138.js.map +1 -1
- package/dist/es/standards-sdk.es139.js +135 -12250
- package/dist/es/standards-sdk.es139.js.map +1 -1
- package/dist/es/standards-sdk.es14.js +149 -178
- package/dist/es/standards-sdk.es14.js.map +1 -1
- package/dist/es/standards-sdk.es140.js +7 -56
- package/dist/es/standards-sdk.es140.js.map +1 -1
- package/dist/es/standards-sdk.es141.js +72 -68
- package/dist/es/standards-sdk.es141.js.map +1 -1
- package/dist/es/standards-sdk.es142.js +61 -13
- package/dist/es/standards-sdk.es142.js.map +1 -1
- package/dist/es/standards-sdk.es143.js +30 -172
- package/dist/es/standards-sdk.es143.js.map +1 -1
- package/dist/es/standards-sdk.es144.js +34 -322
- package/dist/es/standards-sdk.es144.js.map +1 -1
- package/dist/es/standards-sdk.es145.js +28 -346
- package/dist/es/standards-sdk.es145.js.map +1 -1
- package/dist/es/standards-sdk.es146.js +112 -427
- package/dist/es/standards-sdk.es146.js.map +1 -1
- package/dist/es/standards-sdk.es147.js +40 -329
- package/dist/es/standards-sdk.es147.js.map +1 -1
- package/dist/es/standards-sdk.es148.js +958 -76
- package/dist/es/standards-sdk.es148.js.map +1 -1
- package/dist/es/standards-sdk.es149.js +12292 -0
- package/dist/es/standards-sdk.es149.js.map +1 -0
- package/dist/es/standards-sdk.es15.js +152 -151
- package/dist/es/standards-sdk.es15.js.map +1 -1
- package/dist/es/standards-sdk.es150.js +59 -0
- package/dist/es/standards-sdk.es150.js.map +1 -0
- package/dist/es/standards-sdk.es151.js +87 -0
- package/dist/es/standards-sdk.es151.js.map +1 -0
- package/dist/es/standards-sdk.es152.js +20 -0
- package/dist/es/standards-sdk.es152.js.map +1 -0
- package/dist/es/standards-sdk.es153.js +175 -0
- package/dist/es/standards-sdk.es153.js.map +1 -0
- package/dist/es/standards-sdk.es154.js +325 -0
- package/dist/es/standards-sdk.es154.js.map +1 -0
- package/dist/es/standards-sdk.es155.js +349 -0
- package/dist/es/standards-sdk.es155.js.map +1 -0
- package/dist/es/standards-sdk.es156.js +456 -0
- package/dist/es/standards-sdk.es156.js.map +1 -0
- package/dist/es/standards-sdk.es157.js +334 -0
- package/dist/es/standards-sdk.es157.js.map +1 -0
- package/dist/es/standards-sdk.es158.js +79 -0
- package/dist/es/standards-sdk.es158.js.map +1 -0
- package/dist/es/standards-sdk.es159.js +242 -0
- package/dist/es/standards-sdk.es159.js.map +1 -0
- package/dist/es/standards-sdk.es16.js +917 -136
- package/dist/es/standards-sdk.es16.js.map +1 -1
- package/dist/es/standards-sdk.es160.js +247 -0
- package/dist/es/standards-sdk.es160.js.map +1 -0
- package/dist/es/standards-sdk.es17.js +23 -938
- package/dist/es/standards-sdk.es17.js.map +1 -1
- package/dist/es/standards-sdk.es18.js +2422 -24
- package/dist/es/standards-sdk.es18.js.map +1 -1
- package/dist/es/standards-sdk.es19.js +826 -2075
- package/dist/es/standards-sdk.es19.js.map +1 -1
- package/dist/es/standards-sdk.es2.js +654 -189
- package/dist/es/standards-sdk.es2.js.map +1 -1
- package/dist/es/standards-sdk.es20.js +205 -1086
- package/dist/es/standards-sdk.es20.js.map +1 -1
- package/dist/es/standards-sdk.es21.js +858 -221
- package/dist/es/standards-sdk.es21.js.map +1 -1
- package/dist/es/standards-sdk.es22.js +179 -903
- package/dist/es/standards-sdk.es22.js.map +1 -1
- package/dist/es/standards-sdk.es23.js +164 -179
- package/dist/es/standards-sdk.es23.js.map +1 -1
- package/dist/es/standards-sdk.es24.js +62 -118
- package/dist/es/standards-sdk.es24.js.map +1 -1
- package/dist/es/standards-sdk.es25.js +377 -52
- package/dist/es/standards-sdk.es25.js.map +1 -1
- package/dist/es/standards-sdk.es26.js +36 -394
- package/dist/es/standards-sdk.es26.js.map +1 -1
- package/dist/es/standards-sdk.es27.js +901 -50
- package/dist/es/standards-sdk.es27.js.map +1 -1
- package/dist/es/standards-sdk.es28.js +134 -897
- package/dist/es/standards-sdk.es28.js.map +1 -1
- package/dist/es/standards-sdk.es29.js +7 -134
- package/dist/es/standards-sdk.es29.js.map +1 -1
- package/dist/es/standards-sdk.es3.js +63 -680
- package/dist/es/standards-sdk.es3.js.map +1 -1
- package/dist/es/standards-sdk.es30.js +344 -7
- package/dist/es/standards-sdk.es30.js.map +1 -1
- package/dist/es/standards-sdk.es31.js +302 -287
- package/dist/es/standards-sdk.es31.js.map +1 -1
- package/dist/es/standards-sdk.es32.js +94 -322
- package/dist/es/standards-sdk.es32.js.map +1 -1
- package/dist/es/standards-sdk.es33.js +458 -101
- package/dist/es/standards-sdk.es33.js.map +1 -1
- package/dist/es/standards-sdk.es34.js +132 -451
- package/dist/es/standards-sdk.es34.js.map +1 -1
- package/dist/es/standards-sdk.es35.js +216 -130
- package/dist/es/standards-sdk.es35.js.map +1 -1
- package/dist/es/standards-sdk.es36.js +274 -191
- package/dist/es/standards-sdk.es36.js.map +1 -1
- package/dist/es/standards-sdk.es37.js +148 -87
- package/dist/es/standards-sdk.es37.js.map +1 -1
- package/dist/es/standards-sdk.es38.js +183 -320
- package/dist/es/standards-sdk.es38.js.map +1 -1
- package/dist/es/standards-sdk.es39.js +238 -161
- package/dist/es/standards-sdk.es39.js.map +1 -1
- package/dist/es/standards-sdk.es4.js +425 -63
- package/dist/es/standards-sdk.es4.js.map +1 -1
- package/dist/es/standards-sdk.es40.js +136 -254
- package/dist/es/standards-sdk.es40.js.map +1 -1
- package/dist/es/standards-sdk.es41.js +225 -176
- package/dist/es/standards-sdk.es41.js.map +1 -1
- package/dist/es/standards-sdk.es42.js +199 -261
- package/dist/es/standards-sdk.es42.js.map +1 -1
- package/dist/es/standards-sdk.es43.js +237 -199
- package/dist/es/standards-sdk.es43.js.map +1 -1
- package/dist/es/standards-sdk.es44.js +209 -201
- package/dist/es/standards-sdk.es44.js.map +1 -1
- package/dist/es/standards-sdk.es45.js +305 -201
- package/dist/es/standards-sdk.es45.js.map +1 -1
- package/dist/es/standards-sdk.es46.js +371 -261
- package/dist/es/standards-sdk.es46.js.map +1 -1
- package/dist/es/standards-sdk.es47.js +316 -371
- package/dist/es/standards-sdk.es47.js.map +1 -1
- package/dist/es/standards-sdk.es48.js +404 -336
- package/dist/es/standards-sdk.es48.js.map +1 -1
- package/dist/es/standards-sdk.es49.js +83 -449
- package/dist/es/standards-sdk.es49.js.map +1 -1
- package/dist/es/standards-sdk.es5.js +232 -354
- package/dist/es/standards-sdk.es5.js.map +1 -1
- package/dist/es/standards-sdk.es50.js +179 -89
- package/dist/es/standards-sdk.es50.js.map +1 -1
- package/dist/es/standards-sdk.es51.js +231 -165
- package/dist/es/standards-sdk.es51.js.map +1 -1
- package/dist/es/standards-sdk.es52.js +25 -262
- package/dist/es/standards-sdk.es52.js.map +1 -1
- package/dist/es/standards-sdk.es53.js +56 -26
- package/dist/es/standards-sdk.es53.js.map +1 -1
- package/dist/es/standards-sdk.es54.js +12 -57
- package/dist/es/standards-sdk.es54.js.map +1 -1
- package/dist/es/standards-sdk.es55.js +49 -12
- package/dist/es/standards-sdk.es55.js.map +1 -1
- package/dist/es/standards-sdk.es56.js +115 -43
- package/dist/es/standards-sdk.es56.js.map +1 -1
- package/dist/es/standards-sdk.es57.js +42 -115
- package/dist/es/standards-sdk.es57.js.map +1 -1
- package/dist/es/standards-sdk.es58.js +52 -43
- package/dist/es/standards-sdk.es58.js.map +1 -1
- package/dist/es/standards-sdk.es59.js +36 -50
- package/dist/es/standards-sdk.es59.js.map +1 -1
- package/dist/es/standards-sdk.es6.js +125 -246
- package/dist/es/standards-sdk.es6.js.map +1 -1
- package/dist/es/standards-sdk.es60.js +207 -39
- package/dist/es/standards-sdk.es60.js.map +1 -1
- package/dist/es/standards-sdk.es61.js +24 -195
- package/dist/es/standards-sdk.es61.js.map +1 -1
- package/dist/es/standards-sdk.es62.js +87 -25
- package/dist/es/standards-sdk.es62.js.map +1 -1
- package/dist/es/standards-sdk.es63.js +3 -51
- package/dist/es/standards-sdk.es63.js.map +1 -1
- package/dist/es/standards-sdk.es64.js +100 -3
- package/dist/es/standards-sdk.es64.js.map +1 -1
- package/dist/es/standards-sdk.es65.js +61 -62
- package/dist/es/standards-sdk.es65.js.map +1 -1
- package/dist/es/standards-sdk.es66.js +17 -98
- package/dist/es/standards-sdk.es66.js.map +1 -1
- package/dist/es/standards-sdk.es67.js +77 -19
- package/dist/es/standards-sdk.es67.js.map +1 -1
- package/dist/es/standards-sdk.es68.js +458 -77
- package/dist/es/standards-sdk.es68.js.map +1 -1
- package/dist/es/standards-sdk.es69.js +106 -240
- package/dist/es/standards-sdk.es69.js.map +1 -1
- package/dist/es/standards-sdk.es7.js +28 -183
- package/dist/es/standards-sdk.es7.js.map +1 -1
- package/dist/es/standards-sdk.es70.js +170 -286
- package/dist/es/standards-sdk.es70.js.map +1 -1
- package/dist/es/standards-sdk.es71.js +71 -207
- package/dist/es/standards-sdk.es71.js.map +1 -1
- package/dist/es/standards-sdk.es72.js +71 -72
- package/dist/es/standards-sdk.es72.js.map +1 -1
- package/dist/es/standards-sdk.es73.js +143 -71
- package/dist/es/standards-sdk.es73.js.map +1 -1
- package/dist/es/standards-sdk.es74.js +62 -136
- package/dist/es/standards-sdk.es74.js.map +1 -1
- package/dist/es/standards-sdk.es75.js +380 -45
- package/dist/es/standards-sdk.es75.js.map +1 -1
- package/dist/es/standards-sdk.es76.js +222 -130
- package/dist/es/standards-sdk.es76.js.map +1 -1
- package/dist/es/standards-sdk.es77.js +320 -444
- package/dist/es/standards-sdk.es77.js.map +1 -1
- package/dist/es/standards-sdk.es78.js +88 -364
- package/dist/es/standards-sdk.es78.js.map +1 -1
- package/dist/es/standards-sdk.es79.js +125 -89
- package/dist/es/standards-sdk.es79.js.map +1 -1
- package/dist/es/standards-sdk.es8.js +80 -29
- package/dist/es/standards-sdk.es8.js.map +1 -1
- package/dist/es/standards-sdk.es80.js +8 -125
- package/dist/es/standards-sdk.es80.js.map +1 -1
- package/dist/es/standards-sdk.es81.js +45 -6
- package/dist/es/standards-sdk.es81.js.map +1 -1
- package/dist/es/standards-sdk.es82.js +98 -44
- package/dist/es/standards-sdk.es82.js.map +1 -1
- package/dist/es/standards-sdk.es83.js +331 -84
- package/dist/es/standards-sdk.es83.js.map +1 -1
- package/dist/es/standards-sdk.es84.js +93 -160
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es85.js +55 -275
- package/dist/es/standards-sdk.es85.js.map +1 -1
- package/dist/es/standards-sdk.es86.js +43 -55
- package/dist/es/standards-sdk.es86.js.map +1 -1
- package/dist/es/standards-sdk.es87.js +145 -22
- package/dist/es/standards-sdk.es87.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +34 -47
- package/dist/es/standards-sdk.es88.js.map +1 -1
- package/dist/es/standards-sdk.es89.js +22 -57
- package/dist/es/standards-sdk.es89.js.map +1 -1
- package/dist/es/standards-sdk.es9.js +104 -80
- package/dist/es/standards-sdk.es9.js.map +1 -1
- package/dist/es/standards-sdk.es90.js +23 -28
- package/dist/es/standards-sdk.es90.js.map +1 -1
- package/dist/es/standards-sdk.es91.js +238 -23
- package/dist/es/standards-sdk.es91.js.map +1 -1
- package/dist/es/standards-sdk.es92.js +265 -152
- package/dist/es/standards-sdk.es92.js.map +1 -1
- package/dist/es/standards-sdk.es93.js +95 -68
- package/dist/es/standards-sdk.es93.js.map +1 -1
- package/dist/es/standards-sdk.es94.js +124 -136
- package/dist/es/standards-sdk.es94.js.map +1 -1
- package/dist/es/standards-sdk.es95.js +42 -138
- package/dist/es/standards-sdk.es95.js.map +1 -1
- package/dist/es/standards-sdk.es96.js +259 -42
- package/dist/es/standards-sdk.es96.js.map +1 -1
- package/dist/es/standards-sdk.es97.js +82 -243
- package/dist/es/standards-sdk.es97.js.map +1 -1
- package/dist/es/standards-sdk.es98.js +48 -47
- package/dist/es/standards-sdk.es98.js.map +1 -1
- package/dist/es/standards-sdk.es99.js +29 -100
- package/dist/es/standards-sdk.es99.js.map +1 -1
- package/dist/es/utils/crypto-abstraction.d.ts.map +1 -1
- package/dist/es/utils/crypto-env.d.ts.map +1 -1
- package/dist/es/utils/dynamic-import.d.ts +5 -1
- package/dist/es/utils/dynamic-import.d.ts.map +1 -1
- package/dist/es/utils/hash-adapter.d.ts.map +1 -1
- package/package.json +16 -16
- package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
- package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
- package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
- package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es2.js","sources":["../../src/patches/topic-autorenew-patch.ts"],"sourcesContent":["type TopicCreateTransactionCtor =\n (typeof import('@hashgraph/sdk'))['TopicCreateTransaction'];\ntype AccountIdCtor = (typeof import('@hashgraph/sdk'))['AccountId'];\ntype AccountIdInstance = InstanceType<AccountIdCtor>;\ntype NodeRequire = (moduleId: string) => unknown;\ntype ModuleConstructor = {\n createRequire?: (url: string | URL | undefined) => NodeRequire;\n};\n\ndeclare const module: ModuleConstructor | undefined;\ndeclare const require: NodeRequire | undefined;\n\nconst accountIdPattern = /^\\d+\\.\\d+\\.\\d+$/u;\nconst prototypeMarker = Symbol.for('standards-sdk.topic-auto-renew.patch');\nconst accountMarker = Symbol.for('standards-sdk.account-id.patch');\n\nconst nodeRequire = getNodeRequire();\n\nif (nodeRequire) {\n bootstrap(nodeRequire);\n} else {\n Reflect.set(globalThis, '__standardsSdkTopicAutoRenewPatched', false);\n}\n\nfunction bootstrap(requireFn: NodeRequire): void {\n const accountModule = safeRequire<{ default: AccountIdCtor }>(\n requireFn,\n '@hashgraph/sdk/lib/account/AccountId.cjs',\n );\n const topicModule = safeRequire<{ default: TopicCreateTransactionCtor }>(\n requireFn,\n '@hashgraph/sdk/lib/topic/TopicCreateTransaction.cjs',\n );\n const sdkModule = safeRequire<{\n AccountId?: AccountIdCtor;\n TopicCreateTransaction?: TopicCreateTransactionCtor;\n default?: {\n AccountId?: AccountIdCtor;\n TopicCreateTransaction?: TopicCreateTransactionCtor;\n };\n }>(requireFn, '@hashgraph/sdk');\n\n const candidates: Array<{\n accountId?: AccountIdCtor;\n topic?: TopicCreateTransactionCtor;\n }> = [];\n\n if (accountModule?.default && topicModule?.default) {\n candidates.push({\n accountId: accountModule.default,\n topic: topicModule.default,\n });\n }\n\n if (sdkModule) {\n candidates.push({\n accountId: sdkModule.AccountId ?? sdkModule.default?.AccountId,\n topic:\n sdkModule.TopicCreateTransaction ??\n sdkModule.default?.TopicCreateTransaction,\n });\n }\n\n for (const candidate of candidates) {\n patchTopicModule(candidate.topic, candidate.accountId);\n }\n\n Reflect.set(globalThis, '__standardsSdkTopicAutoRenewPatched', true);\n}\n\nfunction getNodeRequire(): NodeRequire | null {\n const moduleConstructor = getModuleConstructor();\n\n if (moduleConstructor?.createRequire) {\n try {\n return moduleConstructor.createRequire(import.meta.url);\n } catch {\n return null;\n }\n }\n\n if (typeof require === 'function') {\n return require;\n }\n\n return null;\n}\n\nfunction getModuleConstructor(): ModuleConstructor | null {\n try {\n if (typeof module !== 'undefined' && module?.createRequire) {\n return module;\n }\n } catch {}\n\n try {\n if (typeof require === 'function') {\n const requiredModule = require('module') as ModuleConstructor;\n\n if (requiredModule?.createRequire) {\n return requiredModule;\n }\n }\n } catch {}\n\n return null;\n}\n\nfunction safeRequire<T>(requireFn: NodeRequire, moduleId: string): T | null {\n try {\n return requireFn(moduleId) as T;\n } catch {\n return null;\n }\n}\n\nfunction patchTopicModule(\n topicCtor?: TopicCreateTransactionCtor,\n accountCtor?: AccountIdCtor,\n): void {\n if (!topicCtor || !accountCtor) {\n return;\n }\n\n patchAccountId(accountCtor);\n\n const prototype = topicCtor.prototype;\n\n if (Reflect.get(prototype, prototypeMarker)) {\n return;\n }\n\n const originalSet = prototype.setAutoRenewAccountId;\n const originalFreeze = prototype.freezeWith;\n\n prototype.setAutoRenewAccountId = function setAutoRenewAccountIdPatched(\n this: TopicPrototype,\n autoRenewAccountId: unknown,\n ) {\n const resolved = resolveAccountId(autoRenewAccountId, accountCtor);\n\n if (resolved) {\n requireNotFrozen(this);\n this._autoRenewAccountId = resolved;\n return this;\n }\n\n return originalSet.call(\n this,\n autoRenewAccountId as AccountIdInstance | string,\n );\n };\n\n prototype.freezeWith = function freezeWithPatched(\n this: TopicPrototype,\n client?: unknown,\n ) {\n if (\n !this.getAutoRenewAccountId ||\n typeof this.getAutoRenewAccountId !== 'function'\n ) {\n return originalFreeze.call(this, client);\n }\n\n const current = this.getAutoRenewAccountId();\n\n if (!current) {\n const transactionAccountId = this.transactionId?.accountId;\n const operatorAccountId = (client as ClientLike | null | undefined)\n ?.operatorAccountId;\n const resolved =\n resolveAccountId(transactionAccountId, accountCtor) ??\n resolveAccountId(operatorAccountId, accountCtor);\n\n if (resolved) {\n this._autoRenewAccountId = resolved;\n }\n }\n\n return originalFreeze.call(this, client);\n };\n\n Reflect.set(prototype, prototypeMarker, true);\n}\n\nfunction patchAccountId(accountCtor: AccountIdCtor): void {\n if (Reflect.get(accountCtor, accountMarker)) {\n return;\n }\n\n const originalFromString = accountCtor.fromString.bind(accountCtor);\n\n accountCtor.fromString = function accountIdFromStringPatched(\n value: unknown,\n ): AccountIdInstance {\n if (typeof value === 'string') {\n return originalFromString(value);\n }\n\n const extracted = extractAccountIdString(value);\n\n if (extracted) {\n return originalFromString(extracted);\n }\n\n if (isProtoAccountId(value)) {\n const shard = toNumericString(value.shard);\n const realm = toNumericString(value.realm);\n const num = toNumericString(value.num);\n\n if (shard && realm && num) {\n return originalFromString(`${shard}.${realm}.${num}`);\n }\n }\n\n return originalFromString(value as string);\n };\n\n Reflect.set(accountCtor, accountMarker, true);\n}\n\nfunction resolveAccountId(\n value: unknown,\n accountCtor: AccountIdCtor,\n): AccountIdInstance | null {\n if (value instanceof accountCtor) {\n return value;\n }\n\n if (typeof value === 'string' && accountIdPattern.test(value)) {\n return accountCtor.fromString(value);\n }\n\n const normalized = normalizeAutoRenewValue(value);\n\n if (normalized) {\n return accountCtor.fromString(normalized);\n }\n\n return null;\n}\n\nfunction normalizeAutoRenewValue(value: unknown): string | null {\n if (typeof value === 'string' && accountIdPattern.test(value)) {\n return value;\n }\n\n const extracted = extractAccountIdString(value);\n\n if (extracted) {\n return extracted;\n }\n\n if (isProtoAccountId(value)) {\n const shard = toNumericString(value.shard);\n const realm = toNumericString(value.realm);\n const num = toNumericString(value.num);\n\n if (shard && realm && num) {\n const composed = `${shard}.${realm}.${num}`;\n if (accountIdPattern.test(composed)) {\n return composed;\n }\n }\n }\n\n return null;\n}\n\nfunction extractAccountIdString(value: unknown): string | null {\n if (typeof value !== 'object' || value === null) {\n return null;\n }\n\n const candidate = value as { toString?: () => unknown };\n const method = candidate.toString;\n\n if (typeof method !== 'function') {\n return null;\n }\n\n const result = method.call(value);\n\n if (typeof result !== 'string') {\n return null;\n }\n\n return accountIdPattern.test(result) ? result : null;\n}\n\nfunction isProtoAccountId(value: unknown): value is {\n shard: { toString: () => string };\n realm: { toString: () => string };\n num: { toString: () => string };\n} {\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n\n const candidate = value as Record<string, unknown>;\n\n return (\n hasToString(candidate.shard) &&\n hasToString(candidate.realm) &&\n hasToString(candidate.num)\n );\n}\n\nfunction hasToString(value: unknown): value is { toString: () => string } {\n return (\n typeof value === 'object' &&\n value !== null &&\n typeof (value as { toString?: unknown }).toString === 'function'\n );\n}\n\nfunction toNumericString(value: unknown): string | null {\n if (typeof value === 'number' && Number.isFinite(value)) {\n return String(Math.trunc(value));\n }\n\n if (typeof value === 'bigint') {\n return value.toString();\n }\n\n if (hasToString(value)) {\n const result = value.toString();\n if (/^\\d+$/u.test(result)) {\n return result;\n }\n }\n\n return null;\n}\n\nfunction requireNotFrozen(target: TopicPrototype): void {\n const candidate = target as { _requireNotFrozen?: () => void };\n candidate._requireNotFrozen?.();\n}\n\ntype ClientLike = {\n operatorAccountId?: unknown;\n};\n\ntype TopicPrototype = {\n setAutoRenewAccountId?: (...args: unknown[]) => unknown;\n freezeWith?: (...args: unknown[]) => unknown;\n getAutoRenewAccountId?: () => AccountIdInstance | null;\n transactionId?: { accountId?: unknown } | null;\n _autoRenewAccountId?: AccountIdInstance | null;\n [key: string]: unknown;\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es2.js","sources":["../../src/hcs-3/src/index.ts"],"sourcesContent":["import {\n HCSSDK,\n LoadQueueItem,\n HCSConfigMapping,\n HCSConfig,\n LoadType,\n} from './types';\nimport { Logger, ILogger } from '../../utils/logger';\nimport { sleep } from '../../utils/sleep';\n\nexport class HCS implements HCSSDK {\n config: HCSConfig;\n configMapping: HCSConfigMapping;\n LoadedScripts: Record<string, string>;\n LoadedWasm: Record<string, WebAssembly.Instance>;\n LoadedImages: Record<string, string>;\n LoadedVideos: Record<string, string>;\n LoadedAudios: Record<string, HTMLAudioElement>;\n LoadedAudioUrls: Record<string, string>;\n LoadedGLBs: Record<string, string>;\n scriptLoadedEvent: Event;\n loadQueue: LoadQueueItem[];\n isProcessingQueue: boolean;\n private modelViewerLoaded: boolean = false;\n private modelViewerLoading: Promise<void> | null = null;\n private logger: ILogger;\n\n constructor() {\n this.config = {\n cdnUrl: 'https://kiloscribe.com/api/inscription-cdn/',\n network: 'mainnet',\n retryAttempts: 3,\n retryBackoff: 300,\n debug: false,\n showLoadingIndicator: false,\n loadingCallbackName: null,\n };\n this.configMapping = {\n hcsCdnUrl: 'cdnUrl',\n hcsNetwork: 'network',\n hcsRetryAttempts: 'retryAttempts',\n hcsRetryBackoff: 'retryBackoff',\n hcsDebug: 'debug',\n hcsShowLoadingIndicator: 'showLoadingIndicator',\n hcsLoadingCallbackName: 'loadingCallbackName',\n };\n this.LoadedScripts = {};\n this.LoadedWasm = {};\n this.LoadedImages = {};\n this.LoadedVideos = {};\n this.LoadedAudios = {};\n this.LoadedAudioUrls = {};\n this.LoadedGLBs = {};\n this.scriptLoadedEvent = new Event('HCSScriptLoaded');\n this.loadQueue = [] as LoadQueueItem[];\n this.isProcessingQueue = false;\n\n try {\n this.logger = Logger.getInstance({\n module: 'HCS-3',\n level: this.config.debug ? 'debug' : 'error',\n });\n } catch (e) {\n this.logger = this.createFallbackLogger();\n }\n }\n\n private createFallbackLogger(): Logger {\n const fallbackLogger = {\n debug: (...args: any[]) =>\n this.config.debug && console.debug('[HCS-3]', ...args),\n info: (...args: any[]) =>\n this.config.debug && console.info('[HCS-3]', ...args),\n warn: (...args: any[]) => console.warn('[HCS-3]', ...args),\n error: (...args: any[]) => console.error('[HCS-3]', ...args),\n setLogLevel: (level: string) => {\n this.config.debug = level === 'debug';\n },\n } as unknown as Logger;\n\n return fallbackLogger;\n }\n\n log(...args: any[]): void {\n if (args.length === 0) {\n this.logger.debug('');\n } else if (args.length === 1) {\n this.logger.debug(String(args[0]));\n } else {\n const message = String(args[0]);\n const data = args.slice(1);\n this.logger.debug(message, data);\n }\n }\n\n error(...args: any[]): void {\n if (args.length === 0) {\n this.logger.error('');\n } else if (args.length === 1) {\n this.logger.error(String(args[0]));\n } else {\n const message = String(args[0]);\n const data = args.slice(1);\n this.logger.error(message, data);\n }\n }\n\n loadConfigFromHTML(): void {\n const configScript = document.querySelector(\n 'script[data-hcs-config]',\n ) as HTMLScriptElement | null;\n if (configScript) {\n Object.keys(this.configMapping).forEach(dataAttr => {\n if (configScript.dataset[dataAttr]) {\n const configKey =\n this.configMapping[dataAttr as keyof HCSConfigMapping];\n let value: any = configScript.dataset[dataAttr];\n\n if (value === 'true') value = true;\n if (value === 'false') value = false;\n if (!isNaN(Number(value)) && value !== '') value = Number(value);\n\n (this.config as any)[configKey] = value;\n }\n });\n\n this.logger.setLogLevel(this.config.debug ? 'debug' : 'error');\n }\n this.log('Loaded config:', this.config);\n }\n\n updateLoadingStatus(id: string, status: string): void {\n if (this.LoadedScripts[id] === 'loaded') {\n return;\n }\n if (this.config.showLoadingIndicator) {\n console.log('[HCS Loading] ' + id + ' : ' + status);\n }\n this.LoadedScripts[id] = status;\n if (\n this.config.loadingCallbackName &&\n typeof (window as any)[this.config.loadingCallbackName] === 'function'\n ) {\n const callback = (window as any)[this.config.loadingCallbackName];\n if (typeof callback === 'function') {\n callback(id, status);\n }\n }\n }\n\n async fetchWithRetry(\n url: string,\n retries: number = this.config.retryAttempts,\n backoff: number = this.config.retryBackoff,\n ): Promise<Response> {\n try {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error('HTTP error! status: ' + response.status);\n }\n return response;\n } catch (error) {\n if (retries > 0) {\n this.log(\n 'Retrying fetch for ' + url + ' Attempts left: ' + (retries - 1),\n );\n await this.sleep(backoff);\n return this.fetchWithRetry(url, retries - 1, backoff * 2);\n }\n throw error;\n }\n }\n\n sleep(ms: number) {\n return sleep(ms);\n }\n\n isDuplicate(topicId: string): boolean {\n return !!this.LoadedScripts[topicId];\n }\n\n async retrieveHCS1Data(\n topicId: string,\n cdnUrl: string = this.config.cdnUrl,\n network: string = this.config.network,\n ): Promise<Blob> {\n const cleanNetwork = network.replace(/['\"]+/g, '');\n const response = await this.fetchWithRetry(\n cdnUrl + topicId + '?network=' + cleanNetwork,\n );\n return await response.blob();\n }\n\n async loadScript(scriptElement: HTMLElement): Promise<void> {\n const src = scriptElement.getAttribute('data-src');\n const scriptId = scriptElement.getAttribute('data-script-id');\n const topicId = src?.split('/').pop();\n const type = scriptElement.getAttribute('type');\n const isRequired = scriptElement.hasAttribute('data-required');\n const isModule = scriptElement.getAttribute('type') === 'module';\n\n if (this.isDuplicate(topicId || '')) {\n return;\n }\n\n this.updateLoadingStatus(scriptId!, 'loading');\n\n try {\n const cdnUrl =\n scriptElement.getAttribute('data-cdn-url') || this.config.cdnUrl;\n const network =\n scriptElement.getAttribute('data-network') || this.config.network;\n\n const blob = await this.retrieveHCS1Data(topicId!, cdnUrl, network);\n\n if (type === 'wasm') {\n const arrayBuffer = await blob.arrayBuffer();\n const wasmModule = await WebAssembly.compile(arrayBuffer);\n this.LoadedWasm[scriptId!] = await WebAssembly.instantiate(wasmModule, {\n env: {},\n ...(scriptElement.dataset as any),\n });\n this.updateLoadingStatus(scriptId!, 'loaded');\n window.dispatchEvent(this.scriptLoadedEvent);\n this.log('Loaded wasm: ' + scriptId);\n } else {\n const content = await blob.text();\n const script = document.createElement('script');\n script.textContent = content;\n script.className = 'hcs-inline-script';\n if (scriptId) {\n script.setAttribute('data-loaded-script-id', scriptId);\n }\n\n if (isModule) {\n script.type = 'module';\n const moduleBlob = new Blob([content], {\n type: 'application/javascript',\n });\n script.src = URL.createObjectURL(moduleBlob);\n }\n\n document.body.appendChild(script);\n\n this.updateLoadingStatus(scriptId!, 'loaded');\n window.dispatchEvent(this.scriptLoadedEvent);\n this.log('Loaded script: ' + scriptId);\n\n script.onerror = error => {\n this.error('Failed to load ' + type + ': ' + scriptId, error);\n this.updateLoadingStatus(scriptId!, 'failed');\n if (isRequired) {\n throw error;\n }\n };\n }\n } catch (error) {\n this.error('Failed to load ' + type + ': ' + scriptId, error);\n this.updateLoadingStatus(scriptId!, 'failed');\n if (isRequired) {\n throw error;\n }\n }\n }\n\n async loadModuleExports(scriptId: string): Promise<any> {\n const script = document.querySelector(\n 'script[data-loaded-script-id=\"' + scriptId + '\"]',\n );\n if (!script) {\n throw new Error('Module script with id ' + scriptId + ' not found');\n }\n const scriptSrc = script.getAttribute('src');\n if (!scriptSrc) {\n throw new Error('Module script ' + scriptId + ' has no src attribute');\n }\n\n try {\n const importModule = new Function('url', 'return import(url)');\n return await importModule(scriptSrc);\n } catch (error) {\n this.error('Failed to import module', error);\n throw error;\n }\n }\n\n async loadStylesheet(linkElement: HTMLElement): Promise<void> {\n const src = linkElement.getAttribute('data-src');\n const stylesheetId = linkElement.getAttribute('data-script-id');\n const topicId = src?.split('/').pop();\n const isRequired = linkElement.hasAttribute('data-required');\n if (this.isDuplicate(topicId || '')) {\n return;\n }\n\n this.updateLoadingStatus(stylesheetId!, 'loading');\n\n try {\n const cdnUrl =\n linkElement.getAttribute('data-cdn-url') || this.config.cdnUrl;\n const network =\n linkElement.getAttribute('data-network') || this.config.network;\n\n const blob = await this.retrieveHCS1Data(topicId!, cdnUrl, network);\n const cssContent = await blob.text();\n const style = document.createElement('style');\n style.textContent = cssContent;\n document.head.appendChild(style);\n\n this.updateLoadingStatus(stylesheetId!, 'loaded');\n window.dispatchEvent(this.scriptLoadedEvent);\n this.log('Loaded and inlined stylesheet: ' + stylesheetId);\n } catch (error) {\n this.error('Failed to load stylesheet: ' + stylesheetId, error);\n this.updateLoadingStatus(stylesheetId!, 'failed');\n if (isRequired) {\n throw error;\n }\n }\n }\n\n async loadImage(imageElement: HTMLElement): Promise<void> {\n const src = imageElement.getAttribute('data-src');\n const topicId = src?.split('/').pop();\n\n this.log('Loading image: ' + topicId);\n this.updateLoadingStatus('Image: ' + topicId!, 'loaded');\n\n try {\n const cdnUrl =\n imageElement.getAttribute('data-cdn-url') || this.config.cdnUrl;\n const network =\n imageElement.getAttribute('data-network') || this.config.network;\n\n const blob = await this.retrieveHCS1Data(topicId!, cdnUrl, network);\n const objectURL = URL.createObjectURL(blob);\n (imageElement as HTMLImageElement).src = objectURL;\n this.LoadedImages[topicId!] = objectURL;\n this.updateLoadingStatus('Image: ' + topicId!, 'loaded');\n this.log('Loaded image: ' + topicId);\n } catch (error) {\n this.error('Failed to load image: ' + topicId, error);\n this.updateLoadingStatus('Image: ' + topicId!, 'failed');\n }\n }\n\n async loadMedia(\n mediaElement: HTMLElement,\n mediaType: 'video' | 'audio',\n ): Promise<void> {\n const src = mediaElement.getAttribute('data-src');\n const topicId = src?.split('/').pop();\n\n this.log('Loading ' + mediaType + ': ' + topicId);\n this.updateLoadingStatus(mediaType + ': ' + topicId!, 'loading');\n\n try {\n const cdnUrl =\n mediaElement.getAttribute('data-cdn-url') || this.config.cdnUrl;\n const network =\n mediaElement.getAttribute('data-network') || this.config.network;\n\n const blob = await this.retrieveHCS1Data(topicId!, cdnUrl, network);\n const objectURL = URL.createObjectURL(blob);\n (mediaElement as HTMLMediaElement).src = objectURL;\n\n if (mediaType === 'video') {\n this.LoadedVideos[topicId!] = objectURL;\n } else {\n this.LoadedAudioUrls[topicId!] = objectURL;\n }\n\n this.updateLoadingStatus(mediaType + ': ' + topicId!, 'loaded');\n this.log('Loaded ' + mediaType + ': ' + topicId);\n } catch (error) {\n this.error('Failed to load ' + mediaType + ': ' + topicId, error);\n this.updateLoadingStatus(mediaType + ': ' + topicId!, 'failed');\n }\n }\n\n private async loadModelViewer(): Promise<void> {\n if (this.modelViewerLoading) return this.modelViewerLoading;\n if (this.modelViewerLoaded) return Promise.resolve();\n\n this.modelViewerLoading = new Promise<void>(resolve => {\n const modelViewerScript = document.createElement('script');\n modelViewerScript.setAttribute('data-src', 'hcs://1/0.0.7293044');\n modelViewerScript.setAttribute('data-script-id', 'model-viewer');\n modelViewerScript.setAttribute('type', 'module');\n\n window.addEventListener(\n 'HCSScriptLoaded',\n () => {\n this.modelViewerLoaded = true;\n resolve();\n },\n { once: true },\n );\n\n this.loadScript(modelViewerScript);\n });\n\n return this.modelViewerLoading;\n }\n\n async loadGLB(glbElement: HTMLElement): Promise<void> {\n await this.loadModelViewer();\n\n const src = glbElement.getAttribute('data-src');\n const topicId = src?.split('/').pop();\n\n this.log('Loading GLB: ' + topicId);\n this.updateLoadingStatus('GLB: ' + topicId!, 'loading');\n\n try {\n const cdnUrl =\n glbElement.getAttribute('data-cdn-url') || this.config.cdnUrl;\n const network =\n glbElement.getAttribute('data-network') || this.config.network;\n\n let modelViewer: HTMLElement;\n if (glbElement.tagName.toLowerCase() !== 'model-viewer') {\n modelViewer = document.createElement('model-viewer');\n Array.from(glbElement.attributes).forEach(attr => {\n modelViewer.setAttribute(attr.name, attr.value);\n });\n modelViewer.setAttribute('camera-controls', '');\n modelViewer.setAttribute('auto-rotate', '');\n modelViewer.setAttribute('ar', '');\n glbElement.parentNode?.replaceChild(modelViewer, glbElement);\n } else {\n modelViewer = glbElement;\n }\n\n const blob = await this.retrieveHCS1Data(topicId!, cdnUrl, network);\n const objectURL = URL.createObjectURL(blob);\n modelViewer.setAttribute('src', objectURL);\n this.LoadedGLBs[topicId!] = objectURL;\n\n this.updateLoadingStatus('GLB: ' + topicId!, 'loaded');\n this.log('Loaded GLB: ' + topicId);\n } catch (error) {\n this.error('Failed to load GLB: ' + topicId, error);\n this.updateLoadingStatus('GLB: ' + topicId!, 'failed');\n }\n }\n\n async loadResource(\n element: HTMLElement,\n type: LoadType,\n order: number,\n ): Promise<void> {\n return new Promise(resolve => {\n this.loadQueue.push({ element, type, order, resolve });\n this.processQueue();\n });\n }\n\n async processQueue(): Promise<void> {\n if (this.isProcessingQueue) return;\n this.isProcessingQueue = true;\n\n while (this.loadQueue.length > 0) {\n const item = this.loadQueue.shift()!;\n try {\n if (item.type === 'script') {\n await this.loadScript(item.element);\n } else if (item.type === 'image') {\n await this.loadImage(item.element);\n } else if (item.type === 'video' || item.type === 'audio') {\n await this.loadMedia(item.element, item.type as 'video' | 'audio');\n } else if (item.type === 'glb') {\n await this.loadGLB(item.element);\n } else if (item.type === 'css') {\n await this.loadStylesheet(item.element);\n }\n item.resolve();\n } catch (error) {\n this.error('Error processing queue item:', error);\n if (\n item.type === 'script' &&\n item.element.hasAttribute('data-required')\n ) {\n break;\n }\n }\n }\n\n this.isProcessingQueue = false;\n }\n\n private async replaceHCSInStyle(styleContent: string): Promise<string> {\n let newContent = styleContent;\n let startIndex = newContent.indexOf('hcs://');\n\n while (startIndex !== -1) {\n let endIndex = startIndex;\n while (\n endIndex < newContent.length &&\n ![\"'\", '\"', ' ', ')'].includes(newContent[endIndex])\n ) {\n endIndex++;\n }\n\n const hcsUrl = newContent.substring(startIndex, endIndex);\n const topicId = hcsUrl.split('/').pop()!;\n\n try {\n const cdnUrl = this.config.cdnUrl;\n const network = this.config.network;\n\n const blob = await this.retrieveHCS1Data(topicId, cdnUrl, network);\n const objectURL = URL.createObjectURL(blob);\n\n newContent =\n newContent.substring(0, startIndex) +\n objectURL +\n newContent.substring(endIndex);\n\n this.LoadedImages[topicId] = objectURL;\n this.log('Replaced CSS HCS URL: ' + hcsUrl + ' with ' + objectURL);\n } catch (error) {\n this.error('Failed to load CSS image: ' + topicId, error);\n }\n\n startIndex = newContent.indexOf('hcs://', startIndex + 1);\n }\n\n return newContent;\n }\n\n private async processInlineStyles(): Promise<void> {\n const elementsWithStyle = document.querySelectorAll('[style*=\"hcs://\"]');\n this.log(\n 'Found ' +\n elementsWithStyle.length +\n ' elements with HCS style references',\n );\n\n for (const element of Array.from(elementsWithStyle)) {\n const style = element.getAttribute('style');\n if (style) {\n this.log('Processing style: ' + style);\n const newStyle = await this.replaceHCSInStyle(style);\n if (style !== newStyle) {\n element.setAttribute('style', newStyle);\n this.log('Updated style to: ' + newStyle);\n }\n }\n }\n\n const styleTags = document.querySelectorAll('style');\n for (const styleTag of Array.from(styleTags)) {\n if (styleTag.textContent?.includes('hcs://')) {\n const newContent = await this.replaceHCSInStyle(styleTag.textContent);\n if (styleTag.textContent !== newContent) {\n styleTag.textContent = newContent;\n }\n }\n }\n }\n\n async init(): Promise<void> {\n this.loadConfigFromHTML();\n\n return new Promise(resolve => {\n const initializeObserver = async () => {\n const scriptElements = document.querySelectorAll(\n 'script[data-src^=\"hcs://\"]',\n );\n const imageElements = document.querySelectorAll(\n 'img[data-src^=\"hcs://\"], img[src^=\"hcs://\"]',\n );\n const videoElements = document.querySelectorAll(\n 'video[data-src^=\"hcs://\"], video[src^=\"hcs://\"]',\n );\n const audioElements = document.querySelectorAll(\n 'audio[data-src^=\"hcs://\"], audio[src^=\"hcs://\"]',\n );\n const glbElements = document.querySelectorAll(\n 'model-viewer[data-src^=\"hcs://\"]',\n );\n const cssElements = document.querySelectorAll(\n 'link[data-src^=\"hcs://\"]',\n );\n\n document.querySelectorAll('[src^=\"hcs://\"]').forEach(element => {\n const src = element.getAttribute('src');\n if (src) {\n element.setAttribute('data-src', src);\n element.removeAttribute('src');\n }\n });\n\n await this.processInlineStyles();\n\n const loadPromises: Promise<void>[] = [];\n\n [\n { elements: scriptElements, type: 'script' },\n { elements: imageElements, type: 'image' },\n { elements: videoElements, type: 'video' },\n { elements: audioElements, type: 'audio' },\n { elements: glbElements, type: 'glb' },\n { elements: cssElements, type: 'css' },\n ].forEach(({ elements, type }) => {\n elements.forEach(element => {\n const order =\n parseInt(element.getAttribute('data-load-order') || '') ||\n Infinity;\n loadPromises.push(\n this.loadResource(\n element as HTMLElement,\n type as LoadType,\n order,\n ),\n );\n });\n });\n\n await Promise.all(loadPromises);\n\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n mutation.addedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n const element = node as HTMLElement;\n\n if (element.getAttribute('style')?.includes('hcs://')) {\n this.processInlineStyles();\n }\n\n if (\n element.tagName.toLowerCase() === 'style' &&\n element.textContent?.includes('hcs://')\n ) {\n this.processInlineStyles();\n }\n\n if (element.getAttribute('src')?.startsWith('hcs://')) {\n const src = element.getAttribute('src')!;\n element.setAttribute('data-src', src);\n element.removeAttribute('src');\n\n const tagName = element.tagName.toLowerCase();\n switch (tagName) {\n case 'img':\n this.loadResource(element, 'image', Infinity);\n break;\n case 'video':\n this.loadResource(element, 'video', Infinity);\n break;\n case 'audio':\n this.loadResource(element, 'audio', Infinity);\n break;\n case 'script':\n this.loadResource(element, 'script', Infinity);\n break;\n }\n }\n\n if (element.matches('script[data-src^=\"hcs://\"]')) {\n this.loadResource(element, 'script', Infinity);\n } else if (element.matches('img[data-src^=\"hcs://\"]')) {\n this.loadResource(element, 'image', Infinity);\n } else if (element.matches('video[data-src^=\"hcs://\"]')) {\n this.loadResource(element, 'video', Infinity);\n } else if (element.matches('audio[data-src^=\"hcs://\"]')) {\n this.loadResource(element, 'audio', Infinity);\n } else if (\n element.matches('model-viewer[data-src^=\"hcs://\"]')\n ) {\n this.loadResource(element, 'glb', Infinity);\n } else if (element.matches('link[data-src^=\"hcs://\"]')) {\n this.loadResource(element, 'css', Infinity);\n }\n\n const childrenWithHCS = element.querySelectorAll(\n '[data-src^=\"hcs://\"], [src^=\"hcs://\"]',\n );\n childrenWithHCS.forEach(child => {\n const childElement = child as HTMLElement;\n const tagName = childElement.tagName.toLowerCase();\n\n const src = childElement.getAttribute('src');\n if (src?.startsWith('hcs://')) {\n childElement.setAttribute('data-src', src);\n childElement.removeAttribute('src');\n }\n\n switch (tagName) {\n case 'script':\n this.loadResource(childElement, 'script', Infinity);\n break;\n case 'img':\n this.loadResource(childElement, 'image', Infinity);\n break;\n case 'video':\n this.loadResource(childElement, 'video', Infinity);\n break;\n case 'audio':\n this.loadResource(childElement, 'audio', Infinity);\n break;\n case 'model-viewer':\n this.loadResource(childElement, 'glb', Infinity);\n break;\n case 'link':\n this.loadResource(childElement, 'css', Infinity);\n break;\n }\n });\n }\n });\n\n if (mutation.type === 'attributes') {\n const element = mutation.target as HTMLElement;\n if (\n mutation.attributeName === 'style' &&\n element.getAttribute('style')?.includes('hcs://')\n ) {\n this.processInlineStyles();\n } else if (mutation.attributeName === 'src') {\n const src = element.getAttribute('src');\n if (src?.startsWith('hcs://')) {\n element.setAttribute('data-src', src);\n element.removeAttribute('src');\n const type = element.tagName.toLowerCase();\n if (['img', 'video', 'audio'].includes(type)) {\n this.loadResource(element, type as LoadType, Infinity);\n }\n }\n }\n }\n });\n });\n\n if (document.body) {\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['style', 'src', 'data-src'],\n });\n } else {\n document.addEventListener('DOMContentLoaded', () => {\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['style', 'src', 'data-src'],\n });\n });\n }\n\n resolve();\n };\n\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', initializeObserver);\n } else {\n initializeObserver();\n }\n });\n }\n\n async preloadImage(topicId: string): Promise<string> {\n this.log('Loading image:' + topicId);\n this.updateLoadingStatus('image: ' + topicId, 'loading');\n const blob = await this.retrieveHCS1Data(topicId);\n const objectURL = URL.createObjectURL(blob);\n this.LoadedImages[topicId!] = objectURL;\n this.updateLoadingStatus('image: ' + topicId, 'loaded');\n return objectURL;\n }\n\n async preloadAudio(topicId: string): Promise<string> {\n const audioElement = document.createElement('audio');\n audioElement.setAttribute('data-topic-id', topicId);\n audioElement.setAttribute('data-src', 'hcs://1/' + topicId);\n document.body.appendChild(audioElement);\n\n await this.loadMedia(audioElement, 'audio');\n\n const cachedAudio = document.querySelector(\n 'audio[data-topic-id=\"' + topicId + '\"]',\n ) as HTMLAudioElement;\n\n if (cachedAudio) {\n this.LoadedAudioUrls[topicId] = cachedAudio.src;\n } else {\n console.error('Failed to preload audio: ' + topicId);\n }\n return this.LoadedAudioUrls[topicId];\n }\n\n async playAudio(topicId: string, volume = 1.0) {\n const audioUrl = this.LoadedAudioUrls[topicId];\n\n if (audioUrl) {\n const audio = new Audio(audioUrl);\n audio.volume = volume;\n this.LoadedAudios[topicId] = audio;\n\n audio.play().catch(error => {\n console.error('Failed to play audio:', error);\n });\n\n audio.addEventListener('ended', () => {\n audio.remove();\n delete this.LoadedAudios[topicId];\n });\n } else {\n console.error('Audio not preloaded: ' + topicId);\n }\n }\n\n async pauseAudio(topicId: string) {\n const audioElement = document.querySelector(\n 'audio[data-topic-id=\"' + topicId + '\"]',\n ) as HTMLAudioElement;\n\n if (audioElement) {\n console.log('found element', audioElement);\n audioElement.pause();\n this.LoadedAudios[topicId]?.pause();\n } else {\n this.LoadedAudios[topicId]?.pause();\n }\n }\n\n async loadAndPlayAudio(topicId: string, autoplay = false, volume = 1.0) {\n let existingAudioElement = document.querySelector(\n 'audio[data-topic-id=\"' + topicId + '\"]',\n ) as HTMLAudioElement;\n\n if (existingAudioElement) {\n existingAudioElement.volume = volume;\n await existingAudioElement.play();\n } else {\n const audioElement = document.createElement('audio');\n audioElement.volume = volume;\n if (autoplay) {\n audioElement.setAttribute('autoplay', 'autoplay');\n }\n audioElement.setAttribute('data-topic-id', topicId);\n audioElement.setAttribute('data-src', 'hcs://1/' + topicId);\n\n document.body.appendChild(audioElement);\n\n await this.loadMedia(audioElement, 'audio');\n\n existingAudioElement = document.querySelector(\n 'audio[data-topic-id=\"' + topicId + '\"]',\n ) as HTMLAudioElement;\n if (!autoplay) {\n await existingAudioElement.play();\n }\n }\n }\n}\n"],"names":[],"mappings":"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"}
|