@wallfree-dev/angular-core 0.0.59-beta.1
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/README.md +60 -0
- package/esm2022/lib/airgap-angular-core.module.mjs +63 -0
- package/esm2022/lib/base/base.component.mjs +38 -0
- package/esm2022/lib/base/base.facade.mjs +37 -0
- package/esm2022/lib/capacitor-plugins/definitions.mjs +15 -0
- package/esm2022/lib/capacitor-plugins/injection-tokens.mjs +11 -0
- package/esm2022/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin-wrapper.mjs +67 -0
- package/esm2022/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin.mjs +247 -0
- package/esm2022/lib/components/account-item/account-item.component.mjs +30 -0
- package/esm2022/lib/components/account-selection/account-selection.component.mjs +61 -0
- package/esm2022/lib/components/components.module.mjs +97 -0
- package/esm2022/lib/components/currency-symbol/currency-symbol.component.mjs +45 -0
- package/esm2022/lib/components/currency-symbol/currency-symbol.facade.mjs +8 -0
- package/esm2022/lib/components/currency-symbol/currency-symbol.types.mjs +2 -0
- package/esm2022/lib/components/from-to/from-to.component.mjs +100 -0
- package/esm2022/lib/components/iac-qr/iac-qr.component.mjs +192 -0
- package/esm2022/lib/components/identicon/identicon.component.mjs +51 -0
- package/esm2022/lib/components/isolated-modules-badges/isolated-modules-badges.component.mjs +16 -0
- package/esm2022/lib/components/isolated-modules-details/isolated-modules-details.component.mjs +43 -0
- package/esm2022/lib/components/isolated-modules-details/isolated-modules-details.facade.mjs +7 -0
- package/esm2022/lib/components/isolated-modules-list/isolated-modules-list.component.mjs +50 -0
- package/esm2022/lib/components/isolated-modules-list/isolated-modules-list.facade.mjs +7 -0
- package/esm2022/lib/components/isolated-modules-onboarding/isolated-modules-onboarding.component.mjs +12 -0
- package/esm2022/lib/components/network-badge/network-badge.component.mjs +19 -0
- package/esm2022/lib/components/qr/qr.component.mjs +36 -0
- package/esm2022/lib/components/qr-settings/qr-settings.component.mjs +30 -0
- package/esm2022/lib/components/titled-address/titled-address.component.mjs +31 -0
- package/esm2022/lib/components/titled-text/titled-text.component.mjs +28 -0
- package/esm2022/lib/config/app-config.mjs +3 -0
- package/esm2022/lib/pages/isolated-modules-list/isolated-modules-list.facade.mjs +7 -0
- package/esm2022/lib/pipes/amount-converter/amount-converter.pipe.mjs +82 -0
- package/esm2022/lib/pipes/fee-converter/fee-converter.pipe.mjs +36 -0
- package/esm2022/lib/pipes/pipes.module.mjs +19 -0
- package/esm2022/lib/pipes/wallet-filter/wallet-filter.pipe.mjs +36 -0
- package/esm2022/lib/protocol/adapter/protocol-v0-adapter.mjs +880 -0
- package/esm2022/lib/protocol/isolated/base-isolated.mjs +27 -0
- package/esm2022/lib/protocol/isolated/block-explorer-isolated.mjs +32 -0
- package/esm2022/lib/protocol/isolated/protocol-offline-isolated.mjs +37 -0
- package/esm2022/lib/protocol/isolated/protocol-online-isolated.mjs +52 -0
- package/esm2022/lib/protocol/isolated/v3-serializer-companion-isolated.mjs +35 -0
- package/esm2022/lib/services/address/address.service.mjs +78 -0
- package/esm2022/lib/services/clipboard/clipboard.service.mjs +48 -0
- package/esm2022/lib/services/deeplink/deeplink.service.mjs +73 -0
- package/esm2022/lib/services/environment/base-environment.service.mjs +6 -0
- package/esm2022/lib/services/filesystem/filesystem.service.mjs +291 -0
- package/esm2022/lib/services/iac/base.iac.service.mjs +155 -0
- package/esm2022/lib/services/iac/message-handler-single.mjs +48 -0
- package/esm2022/lib/services/iac/message-handler.mjs +22 -0
- package/esm2022/lib/services/iac/qr-generator.mjs +17 -0
- package/esm2022/lib/services/image/fetcher/image-direct.fetcher.mjs +16 -0
- package/esm2022/lib/services/image/fetcher/image-proxy.fetcher.mjs +45 -0
- package/esm2022/lib/services/image/image.service.mjs +39 -0
- package/esm2022/lib/services/key-pair/key-pair.service.mjs +57 -0
- package/esm2022/lib/services/language/language.service.mjs +47 -0
- package/esm2022/lib/services/modules/base-modules.service.mjs +157 -0
- package/esm2022/lib/services/modules/controller/base-modules.controller.mjs +2 -0
- package/esm2022/lib/services/modules/controller/integral/integral-modules.controller.mjs +91 -0
- package/esm2022/lib/services/modules/controller/isolated/isolated-modules.controller.mjs +190 -0
- package/esm2022/lib/services/modules/controller/modules.controller.mjs +85 -0
- package/esm2022/lib/services/permissions/permissions.service.mjs +140 -0
- package/esm2022/lib/services/protocol/defaults.mjs +55 -0
- package/esm2022/lib/services/protocol/protocol.service.mjs +230 -0
- package/esm2022/lib/services/protocol/store/base-protocol-store.service.mjs +63 -0
- package/esm2022/lib/services/protocol/store/main/main-protocol-store.service.mjs +91 -0
- package/esm2022/lib/services/protocol/store/sub/sub-protocol-store.service.mjs +174 -0
- package/esm2022/lib/services/qr/qr-generators/bc-ur-generator.mjs +127 -0
- package/esm2022/lib/services/qr/qr-generators/metamask-generator.mjs +117 -0
- package/esm2022/lib/services/qr/qr-generators/output-descriptor-generator.mjs +49 -0
- package/esm2022/lib/services/qr/qr-generators/serializer-v2-generator.mjs +30 -0
- package/esm2022/lib/services/qr/qr-generators/serializer-v3-generator.mjs +45 -0
- package/esm2022/lib/services/qr/qr-generators/xpub-generator.mjs +38 -0
- package/esm2022/lib/services/qr/qr-handler/serializer-v2-handler.mjs +114 -0
- package/esm2022/lib/services/qr/qr-handler/serializer-v3-handler.mjs +274 -0
- package/esm2022/lib/services/qr-scanner/qr-scanner.service.mjs +61 -0
- package/esm2022/lib/services/serializer/serializer.service.mjs +181 -0
- package/esm2022/lib/services/storage/base.storage.mjs +30 -0
- package/esm2022/lib/services/storage/storage.service.mjs +33 -0
- package/esm2022/lib/services/token/token.service.mjs +52 -0
- package/esm2022/lib/services/transaction/transaction.service.mjs +67 -0
- package/esm2022/lib/services/ui-event/ui-event.service.mjs +198 -0
- package/esm2022/lib/services/ui-event-elements/ui-event-elements.service.mjs +122 -0
- package/esm2022/lib/services/uri/uri.service.mjs +51 -0
- package/esm2022/lib/translation/AirGapTranslateLoader.mjs +26 -0
- package/esm2022/lib/types/Either.mjs +2 -0
- package/esm2022/lib/types/ExternalAliasResolver.mjs +2 -0
- package/esm2022/lib/types/RuntimeMode.mjs +6 -0
- package/esm2022/lib/types/SupportedLanguage.mjs +2 -0
- package/esm2022/lib/types/Token.mjs +2 -0
- package/esm2022/lib/types/isolated-modules/IsolatedModule.mjs +2 -0
- package/esm2022/lib/types/isolated-modules/IsolatedModuleManifest.mjs +2 -0
- package/esm2022/lib/types/isolated-modules/IsolatedModuleMetadata.mjs +2 -0
- package/esm2022/lib/types/ui/UIAction.mjs +6 -0
- package/esm2022/lib/types/ui/UIResource.mjs +8 -0
- package/esm2022/lib/utils/ExposedPromise.mjs +103 -0
- package/esm2022/lib/utils/airgap-transaction.mjs +23 -0
- package/esm2022/lib/utils/array.mjs +32 -0
- package/esm2022/lib/utils/modules/isolated/isolated-modules-metadata.mjs +10 -0
- package/esm2022/lib/utils/modules/load-protocol.mjs +19 -0
- package/esm2022/lib/utils/not-initialized.mjs +7 -0
- package/esm2022/lib/utils/protocol/delegation.mjs +33 -0
- package/esm2022/lib/utils/protocol/protocol-identifier.mjs +4 -0
- package/esm2022/lib/utils/protocol/protocol-network-identifier.mjs +18 -0
- package/esm2022/lib/utils/protocol/protocol-options.mjs +114 -0
- package/esm2022/lib/utils/protocol/protocol-v0-adapter.mjs +390 -0
- package/esm2022/lib/utils/utils.mjs +80 -0
- package/esm2022/lib/utils/worker.mjs +28 -0
- package/esm2022/public-api.mjs +102 -0
- package/esm2022/wallfree-dev-angular-core.mjs +5 -0
- package/fesm2022/wallfree-dev-angular-core.mjs +6933 -0
- package/fesm2022/wallfree-dev-angular-core.mjs.map +1 -0
- package/index.d.ts +6 -0
- package/lib/airgap-angular-core.module.d.ts +25 -0
- package/lib/airgap-angular-core.module.d.ts.map +1 -0
- package/lib/base/base.component.d.ts +18 -0
- package/lib/base/base.component.d.ts.map +1 -0
- package/lib/base/base.facade.d.ts +16 -0
- package/lib/base/base.facade.d.ts.map +1 -0
- package/lib/capacitor-plugins/definitions.d.ts +122 -0
- package/lib/capacitor-plugins/definitions.d.ts.map +1 -0
- package/lib/capacitor-plugins/injection-tokens.d.ts +18 -0
- package/lib/capacitor-plugins/injection-tokens.d.ts.map +1 -0
- package/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin-wrapper.d.ts +20 -0
- package/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin-wrapper.d.ts.map +1 -0
- package/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin.d.ts +38 -0
- package/lib/capacitor-plugins/isolated-modules/isolated-modules.plugin.d.ts.map +1 -0
- package/lib/components/account-item/account-item.component.d.ts +15 -0
- package/lib/components/account-item/account-item.component.d.ts.map +1 -0
- package/lib/components/account-selection/account-selection.component.d.ts +23 -0
- package/lib/components/account-selection/account-selection.component.d.ts.map +1 -0
- package/lib/components/components.module.d.ts +28 -0
- package/lib/components/components.module.d.ts.map +1 -0
- package/lib/components/currency-symbol/currency-symbol.component.d.ts +20 -0
- package/lib/components/currency-symbol/currency-symbol.component.d.ts.map +1 -0
- package/lib/components/currency-symbol/currency-symbol.facade.d.ts +16 -0
- package/lib/components/currency-symbol/currency-symbol.facade.d.ts.map +1 -0
- package/lib/components/currency-symbol/currency-symbol.types.d.ts +35 -0
- package/lib/components/currency-symbol/currency-symbol.types.d.ts.map +1 -0
- package/lib/components/from-to/from-to.component.d.ts +33 -0
- package/lib/components/from-to/from-to.component.d.ts.map +1 -0
- package/lib/components/iac-qr/iac-qr.component.d.ts +45 -0
- package/lib/components/iac-qr/iac-qr.component.d.ts.map +1 -0
- package/lib/components/identicon/identicon.component.d.ts +14 -0
- package/lib/components/identicon/identicon.component.d.ts.map +1 -0
- package/lib/components/isolated-modules-badges/isolated-modules-badges.component.d.ts +8 -0
- package/lib/components/isolated-modules-badges/isolated-modules-badges.component.d.ts.map +1 -0
- package/lib/components/isolated-modules-details/isolated-modules-details.component.d.ts +17 -0
- package/lib/components/isolated-modules-details/isolated-modules-details.component.d.ts.map +1 -0
- package/lib/components/isolated-modules-details/isolated-modules-details.facade.d.ts +17 -0
- package/lib/components/isolated-modules-details/isolated-modules-details.facade.d.ts.map +1 -0
- package/lib/components/isolated-modules-list/isolated-modules-list.component.d.ts +20 -0
- package/lib/components/isolated-modules-list/isolated-modules-list.component.d.ts.map +1 -0
- package/lib/components/isolated-modules-list/isolated-modules-list.facade.d.ts +15 -0
- package/lib/components/isolated-modules-list/isolated-modules-list.facade.d.ts.map +1 -0
- package/lib/components/isolated-modules-onboarding/isolated-modules-onboarding.component.d.ts +6 -0
- package/lib/components/isolated-modules-onboarding/isolated-modules-onboarding.component.d.ts.map +1 -0
- package/lib/components/network-badge/network-badge.component.d.ts +9 -0
- package/lib/components/network-badge/network-badge.component.d.ts.map +1 -0
- package/lib/components/qr/qr.component.d.ts +16 -0
- package/lib/components/qr/qr.component.d.ts.map +1 -0
- package/lib/components/qr-settings/qr-settings.component.d.ts +12 -0
- package/lib/components/qr-settings/qr-settings.component.d.ts.map +1 -0
- package/lib/components/titled-address/titled-address.component.d.ts +13 -0
- package/lib/components/titled-address/titled-address.component.d.ts.map +1 -0
- package/lib/components/titled-text/titled-text.component.d.ts +11 -0
- package/lib/components/titled-text/titled-text.component.d.ts.map +1 -0
- package/lib/config/app-config.d.ts +15 -0
- package/lib/config/app-config.d.ts.map +1 -0
- package/lib/pages/isolated-modules-list/isolated-modules-list.facade.d.ts +16 -0
- package/lib/pages/isolated-modules-list/isolated-modules-list.facade.d.ts.map +1 -0
- package/lib/pipes/amount-converter/amount-converter.pipe.d.ts +29 -0
- package/lib/pipes/amount-converter/amount-converter.pipe.d.ts.map +1 -0
- package/lib/pipes/fee-converter/fee-converter.pipe.d.ts +20 -0
- package/lib/pipes/fee-converter/fee-converter.pipe.d.ts.map +1 -0
- package/lib/pipes/pipes.module.d.ts +10 -0
- package/lib/pipes/pipes.module.d.ts.map +1 -0
- package/lib/pipes/wallet-filter/wallet-filter.pipe.d.ts +15 -0
- package/lib/pipes/wallet-filter/wallet-filter.pipe.d.ts.map +1 -0
- package/lib/protocol/adapter/protocol-v0-adapter.d.ts +231 -0
- package/lib/protocol/adapter/protocol-v0-adapter.d.ts.map +1 -0
- package/lib/protocol/isolated/base-isolated.d.ts +11 -0
- package/lib/protocol/isolated/base-isolated.d.ts.map +1 -0
- package/lib/protocol/isolated/block-explorer-isolated.d.ts +14 -0
- package/lib/protocol/isolated/block-explorer-isolated.d.ts.map +1 -0
- package/lib/protocol/isolated/protocol-offline-isolated.d.ts +17 -0
- package/lib/protocol/isolated/protocol-offline-isolated.d.ts.map +1 -0
- package/lib/protocol/isolated/protocol-online-isolated.d.ts +21 -0
- package/lib/protocol/isolated/protocol-online-isolated.d.ts.map +1 -0
- package/lib/protocol/isolated/v3-serializer-companion-isolated.d.ts +17 -0
- package/lib/protocol/isolated/v3-serializer-companion-isolated.d.ts.map +1 -0
- package/lib/services/address/address.service.d.ts +26 -0
- package/lib/services/address/address.service.d.ts.map +1 -0
- package/lib/services/clipboard/clipboard.service.d.ts +14 -0
- package/lib/services/clipboard/clipboard.service.d.ts.map +1 -0
- package/lib/services/deeplink/deeplink.service.d.ts +18 -0
- package/lib/services/deeplink/deeplink.service.d.ts.map +1 -0
- package/lib/services/environment/base-environment.service.d.ts +6 -0
- package/lib/services/environment/base-environment.service.d.ts.map +1 -0
- package/lib/services/filesystem/filesystem.service.d.ts +42 -0
- package/lib/services/filesystem/filesystem.service.d.ts.map +1 -0
- package/lib/services/iac/base.iac.service.d.ts +41 -0
- package/lib/services/iac/base.iac.service.d.ts.map +1 -0
- package/lib/services/iac/message-handler-single.d.ts +20 -0
- package/lib/services/iac/message-handler-single.d.ts.map +1 -0
- package/lib/services/iac/message-handler.d.ts +34 -0
- package/lib/services/iac/message-handler.d.ts.map +1 -0
- package/lib/services/iac/qr-generator.d.ts +13 -0
- package/lib/services/iac/qr-generator.d.ts.map +1 -0
- package/lib/services/image/fetcher/image-direct.fetcher.d.ts +9 -0
- package/lib/services/image/fetcher/image-direct.fetcher.d.ts.map +1 -0
- package/lib/services/image/fetcher/image-proxy.fetcher.d.ts +9 -0
- package/lib/services/image/fetcher/image-proxy.fetcher.d.ts.map +1 -0
- package/lib/services/image/image.service.d.ts +20 -0
- package/lib/services/image/image.service.d.ts.map +1 -0
- package/lib/services/key-pair/key-pair.service.d.ts +14 -0
- package/lib/services/key-pair/key-pair.service.d.ts.map +1 -0
- package/lib/services/language/language.service.d.ts +21 -0
- package/lib/services/language/language.service.d.ts.map +1 -0
- package/lib/services/modules/base-modules.service.d.ts +34 -0
- package/lib/services/modules/base-modules.service.d.ts.map +1 -0
- package/lib/services/modules/controller/base-modules.controller.d.ts +19 -0
- package/lib/services/modules/controller/base-modules.controller.d.ts.map +1 -0
- package/lib/services/modules/controller/integral/integral-modules.controller.d.ts +22 -0
- package/lib/services/modules/controller/integral/integral-modules.controller.d.ts.map +1 -0
- package/lib/services/modules/controller/isolated/isolated-modules.controller.d.ts +32 -0
- package/lib/services/modules/controller/isolated/isolated-modules.controller.d.ts.map +1 -0
- package/lib/services/modules/controller/modules.controller.d.ts +27 -0
- package/lib/services/modules/controller/modules.controller.d.ts.map +1 -0
- package/lib/services/permissions/permissions.service.d.ts +39 -0
- package/lib/services/permissions/permissions.service.d.ts.map +1 -0
- package/lib/services/protocol/defaults.d.ts +6 -0
- package/lib/services/protocol/defaults.d.ts.map +1 -0
- package/lib/services/protocol/protocol.service.d.ts +47 -0
- package/lib/services/protocol/protocol.service.d.ts.map +1 -0
- package/lib/services/protocol/store/base-protocol-store.service.d.ts +36 -0
- package/lib/services/protocol/store/base-protocol-store.service.d.ts.map +1 -0
- package/lib/services/protocol/store/main/main-protocol-store.service.d.ts +21 -0
- package/lib/services/protocol/store/main/main-protocol-store.service.d.ts.map +1 -0
- package/lib/services/protocol/store/sub/sub-protocol-store.service.d.ts +31 -0
- package/lib/services/protocol/store/sub/sub-protocol-store.service.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/bc-ur-generator.d.ts +16 -0
- package/lib/services/qr/qr-generators/bc-ur-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/metamask-generator.d.ts +16 -0
- package/lib/services/qr/qr-generators/metamask-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/output-descriptor-generator.d.ts +13 -0
- package/lib/services/qr/qr-generators/output-descriptor-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/serializer-v2-generator.d.ts +13 -0
- package/lib/services/qr/qr-generators/serializer-v2-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/serializer-v3-generator.d.ts +12 -0
- package/lib/services/qr/qr-generators/serializer-v3-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-generators/xpub-generator.d.ts +12 -0
- package/lib/services/qr/qr-generators/xpub-generator.d.ts.map +1 -0
- package/lib/services/qr/qr-handler/serializer-v2-handler.d.ts +20 -0
- package/lib/services/qr/qr-handler/serializer-v2-handler.d.ts.map +1 -0
- package/lib/services/qr/qr-handler/serializer-v3-handler.d.ts +23 -0
- package/lib/services/qr/qr-handler/serializer-v3-handler.d.ts.map +1 -0
- package/lib/services/qr-scanner/qr-scanner.service.d.ts +23 -0
- package/lib/services/qr-scanner/qr-scanner.service.d.ts.map +1 -0
- package/lib/services/serializer/serializer.service.d.ts +34 -0
- package/lib/services/serializer/serializer.service.d.ts.map +1 -0
- package/lib/services/storage/base.storage.d.ts +15 -0
- package/lib/services/storage/base.storage.d.ts.map +1 -0
- package/lib/services/storage/storage.service.d.ts +28 -0
- package/lib/services/storage/storage.service.d.ts.map +1 -0
- package/lib/services/token/token.service.d.ts +11 -0
- package/lib/services/token/token.service.d.ts.map +1 -0
- package/lib/services/transaction/transaction.service.d.ts +21 -0
- package/lib/services/transaction/transaction.service.d.ts.map +1 -0
- package/lib/services/ui-event/ui-event.service.d.ts +58 -0
- package/lib/services/ui-event/ui-event.service.d.ts.map +1 -0
- package/lib/services/ui-event-elements/ui-event-elements.service.d.ts +16 -0
- package/lib/services/ui-event-elements/ui-event-elements.service.d.ts.map +1 -0
- package/lib/services/uri/uri.service.d.ts +15 -0
- package/lib/services/uri/uri.service.d.ts.map +1 -0
- package/lib/translation/AirGapTranslateLoader.d.ts +15 -0
- package/lib/translation/AirGapTranslateLoader.d.ts.map +1 -0
- package/lib/types/Either.d.ts +2 -0
- package/lib/types/Either.d.ts.map +1 -0
- package/lib/types/ExternalAliasResolver.d.ts +6 -0
- package/lib/types/ExternalAliasResolver.d.ts.map +1 -0
- package/lib/types/RuntimeMode.d.ts +5 -0
- package/lib/types/RuntimeMode.d.ts.map +1 -0
- package/lib/types/SupportedLanguage.d.ts +2 -0
- package/lib/types/SupportedLanguage.d.ts.map +1 -0
- package/lib/types/Token.d.ts +9 -0
- package/lib/types/Token.d.ts.map +1 -0
- package/lib/types/isolated-modules/IsolatedModule.d.ts +28 -0
- package/lib/types/isolated-modules/IsolatedModule.d.ts.map +1 -0
- package/lib/types/isolated-modules/IsolatedModuleManifest.d.ts +24 -0
- package/lib/types/isolated-modules/IsolatedModuleManifest.d.ts.map +1 -0
- package/lib/types/isolated-modules/IsolatedModuleMetadata.d.ts +21 -0
- package/lib/types/isolated-modules/IsolatedModuleMetadata.d.ts.map +1 -0
- package/lib/types/ui/UIAction.d.ts +10 -0
- package/lib/types/ui/UIAction.d.ts.map +1 -0
- package/lib/types/ui/UIResource.d.ts +11 -0
- package/lib/types/ui/UIResource.d.ts.map +1 -0
- package/lib/utils/ExposedPromise.d.ts +40 -0
- package/lib/utils/ExposedPromise.d.ts.map +1 -0
- package/lib/utils/airgap-transaction.d.ts +4 -0
- package/lib/utils/airgap-transaction.d.ts.map +1 -0
- package/lib/utils/array.d.ts +6 -0
- package/lib/utils/array.d.ts.map +1 -0
- package/lib/utils/modules/isolated/isolated-modules-metadata.d.ts +3 -0
- package/lib/utils/modules/isolated/isolated-modules-metadata.d.ts.map +1 -0
- package/lib/utils/modules/load-protocol.d.ts +4 -0
- package/lib/utils/modules/load-protocol.d.ts.map +1 -0
- package/lib/utils/not-initialized.d.ts +2 -0
- package/lib/utils/not-initialized.d.ts.map +1 -0
- package/lib/utils/protocol/delegation.d.ts +6 -0
- package/lib/utils/protocol/delegation.d.ts.map +1 -0
- package/lib/utils/protocol/protocol-identifier.d.ts +3 -0
- package/lib/utils/protocol/protocol-identifier.d.ts.map +1 -0
- package/lib/utils/protocol/protocol-network-identifier.d.ts +8 -0
- package/lib/utils/protocol/protocol-network-identifier.d.ts.map +1 -0
- package/lib/utils/protocol/protocol-options.d.ts +6 -0
- package/lib/utils/protocol/protocol-options.d.ts.map +1 -0
- package/lib/utils/protocol/protocol-v0-adapter.d.ts +75 -0
- package/lib/utils/protocol/protocol-v0-adapter.d.ts.map +1 -0
- package/lib/utils/utils.d.ts +9 -0
- package/lib/utils/utils.d.ts.map +1 -0
- package/lib/utils/worker.d.ts +11 -0
- package/lib/utils/worker.d.ts.map +1 -0
- package/package.json +88 -0
- package/public-api.d.ts +87 -0
- package/public-api.d.ts.map +1 -0
- package/src/assets/i18n-common/de.json +112 -0
- package/src/assets/i18n-common/en.json +112 -0
- package/src/assets/i18n-common/es.json +112 -0
- package/src/assets/i18n-common/fr.json +112 -0
- package/src/assets/i18n-common/pt_BR.json +112 -0
- package/src/assets/i18n-common/ru.json +112 -0
- package/src/assets/i18n-common/zh_CN.json +112 -0
- package/src/assets/img/identicon_placeholder.png +0 -0
- package/src/assets/native/isolated_modules/isolated-modules.js-engine-android.js +34 -0
- package/src/assets/native/isolated_modules/isolated-modules.script.js +304 -0
- package/src/assets/symbols/abt.svg +1 -0
- package/src/assets/symbols/adx.svg +1 -0
- package/src/assets/symbols/ae.svg +17 -0
- package/src/assets/symbols/agi.svg +1 -0
- package/src/assets/symbols/aion.svg +1 -0
- package/src/assets/symbols/amb.svg +1 -0
- package/src/assets/symbols/ampl.svg +7 -0
- package/src/assets/symbols/ant.svg +1 -0
- package/src/assets/symbols/aoa.svg +7 -0
- package/src/assets/symbols/appc.svg +1 -0
- package/src/assets/symbols/aqua.svg +5 -0
- package/src/assets/symbols/arn.svg +1 -0
- package/src/assets/symbols/ary.svg +1 -0
- package/src/assets/symbols/ast.svg +1 -0
- package/src/assets/symbols/astr.png +0 -0
- package/src/assets/symbols/atm.svg +1 -0
- package/src/assets/symbols/atom.svg +1 -0
- package/src/assets/symbols/auto.svg +1 -0
- package/src/assets/symbols/bal.svg +7 -0
- package/src/assets/symbols/band.svg +7 -0
- package/src/assets/symbols/bat.svg +1 -0
- package/src/assets/symbols/bcbc.svg +1 -0
- package/src/assets/symbols/bcpt.svg +1 -0
- package/src/assets/symbols/bix.svg +1 -0
- package/src/assets/symbols/blz.svg +1 -0
- package/src/assets/symbols/bnb.svg +1 -0
- package/src/assets/symbols/bnt.svg +1 -0
- package/src/assets/symbols/bnty.svg +1 -0
- package/src/assets/symbols/bpt.svg +1 -0
- package/src/assets/symbols/brc.svg +7 -0
- package/src/assets/symbols/brd.svg +1 -0
- package/src/assets/symbols/btc.svg +1 -0
- package/src/assets/symbols/btctz.png +0 -0
- package/src/assets/symbols/btm.svg +1 -0
- package/src/assets/symbols/busd.svg +7 -0
- package/src/assets/symbols/bytom.svg +7 -0
- package/src/assets/symbols/cacu.svg +1 -0
- package/src/assets/symbols/cdt.svg +1 -0
- package/src/assets/symbols/cel.svg +7 -0
- package/src/assets/symbols/cennz.svg +7 -0
- package/src/assets/symbols/cfx.svg +1 -0
- package/src/assets/symbols/chsb.svg +7 -0
- package/src/assets/symbols/chz.svg +7 -0
- package/src/assets/symbols/ckbtc.png +0 -0
- package/src/assets/symbols/cmt.svg +1 -0
- package/src/assets/symbols/cnd.svg +1 -0
- package/src/assets/symbols/cob.svg +1 -0
- package/src/assets/symbols/comp.svg +7 -0
- package/src/assets/symbols/coreum.png +0 -0
- package/src/assets/symbols/cred.svg +1 -0
- package/src/assets/symbols/cro.svg +7 -0
- package/src/assets/symbols/crpt.svg +1 -0
- package/src/assets/symbols/crv.svg +7 -0
- package/src/assets/symbols/cs.svg +1 -0
- package/src/assets/symbols/ctez.svg +1 -0
- package/src/assets/symbols/ctr.svg +1 -0
- package/src/assets/symbols/ctxc.svg +1 -0
- package/src/assets/symbols/cusdc.svg +7 -0
- package/src/assets/symbols/cvc.svg +1 -0
- package/src/assets/symbols/cvt.svg +7 -0
- package/src/assets/symbols/czrx.svg +7 -0
- package/src/assets/symbols/dai.svg +7 -0
- package/src/assets/symbols/dat.svg +1 -0
- package/src/assets/symbols/data.svg +1 -0
- package/src/assets/symbols/dcn.svg +1 -0
- package/src/assets/symbols/deez.svg +1 -0
- package/src/assets/symbols/dent.svg +1 -0
- package/src/assets/symbols/dew.svg +1 -0
- package/src/assets/symbols/dgd.svg +1 -0
- package/src/assets/symbols/dia.svg +7 -0
- package/src/assets/symbols/divx.svg +7 -0
- package/src/assets/symbols/dlt.svg +1 -0
- package/src/assets/symbols/dnt.svg +1 -0
- package/src/assets/symbols/dock.svg +1 -0
- package/src/assets/symbols/doga.png +0 -0
- package/src/assets/symbols/dot.svg +14 -0
- package/src/assets/symbols/drgn.svg +1 -0
- package/src/assets/symbols/drop.svg +1 -0
- package/src/assets/symbols/dth.svg +1 -0
- package/src/assets/symbols/dtr.svg +1 -0
- package/src/assets/symbols/dx.svg +7 -0
- package/src/assets/symbols/edg.svg +1 -0
- package/src/assets/symbols/edo.svg +1 -0
- package/src/assets/symbols/elf.svg +1 -0
- package/src/assets/symbols/elix.svg +1 -0
- package/src/assets/symbols/eng.svg +1 -0
- package/src/assets/symbols/enj.svg +1 -0
- package/src/assets/symbols/entrp.svg +1 -0
- package/src/assets/symbols/eos.svg +1 -0
- package/src/assets/symbols/eth.svg +1 -0
- package/src/assets/symbols/ethtz.png +0 -0
- package/src/assets/symbols/eurc.svg +8 -0
- package/src/assets/symbols/evx.svg +1 -0
- package/src/assets/symbols/fet.svg +7 -0
- package/src/assets/symbols/frax.svg +26 -0
- package/src/assets/symbols/fsn.svg +1 -0
- package/src/assets/symbols/ftc.svg +1 -0
- package/src/assets/symbols/ftm.svg +7 -0
- package/src/assets/symbols/fuel.svg +1 -0
- package/src/assets/symbols/fun.svg +1 -0
- package/src/assets/symbols/gbx.svg +1 -0
- package/src/assets/symbols/generic-coin.svg +1 -0
- package/src/assets/symbols/glmr.svg +1 -0
- package/src/assets/symbols/gno.svg +1 -0
- package/src/assets/symbols/gnt.svg +1 -0
- package/src/assets/symbols/grs.svg +1 -0
- package/src/assets/symbols/gsc.svg +1 -0
- package/src/assets/symbols/gto.svg +1 -0
- package/src/assets/symbols/gup.svg +1 -0
- package/src/assets/symbols/gusd.svg +1 -0
- package/src/assets/symbols/gvt.svg +1 -0
- package/src/assets/symbols/gzr.svg +1 -0
- package/src/assets/symbols/hedg.svg +7 -0
- package/src/assets/symbols/hodl.svg +1 -0
- package/src/assets/symbols/hot.svg +7 -0
- package/src/assets/symbols/hpb.svg +1 -0
- package/src/assets/symbols/ht.svg +1 -0
- package/src/assets/symbols/husd.svg +7 -0
- package/src/assets/symbols/icn.svg +1 -0
- package/src/assets/symbols/icp.svg +16 -0
- package/src/assets/symbols/icx.svg +1 -0
- package/src/assets/symbols/inb.svg +7 -0
- package/src/assets/symbols/ino.svg +7 -0
- package/src/assets/symbols/ins.svg +1 -0
- package/src/assets/symbols/iost.svg +1 -0
- package/src/assets/symbols/iotx.svg +1 -0
- package/src/assets/symbols/itc.svg +1 -0
- package/src/assets/symbols/jnt.svg +1 -0
- package/src/assets/symbols/kcs.svg +7 -0
- package/src/assets/symbols/kin.svg +1 -0
- package/src/assets/symbols/knc.svg +1 -0
- package/src/assets/symbols/ksm.svg +1 -0
- package/src/assets/symbols/kusd.svg +1 -0
- package/src/assets/symbols/ldo.svg +97 -0
- package/src/assets/symbols/lend.svg +1 -0
- package/src/assets/symbols/leo.svg +7 -0
- package/src/assets/symbols/link.svg +7 -0
- package/src/assets/symbols/loom.svg +1 -0
- package/src/assets/symbols/lpt.svg +1 -0
- package/src/assets/symbols/lrc.svg +1 -0
- package/src/assets/symbols/lun.svg +1 -0
- package/src/assets/symbols/mana.svg +1 -0
- package/src/assets/symbols/matic.svg +7 -0
- package/src/assets/symbols/mcap.svg +1 -0
- package/src/assets/symbols/mco.svg +1 -0
- package/src/assets/symbols/mda.svg +1 -0
- package/src/assets/symbols/mds.svg +1 -0
- package/src/assets/symbols/mkr.svg +1 -0
- package/src/assets/symbols/mln.svg +7 -0
- package/src/assets/symbols/mnw.svg +1 -0
- package/src/assets/symbols/mod.svg +1 -0
- package/src/assets/symbols/movr.svg +10 -0
- package/src/assets/symbols/mth.svg +1 -0
- package/src/assets/symbols/mtl.svg +1 -0
- package/src/assets/symbols/mxc.svg +7 -0
- package/src/assets/symbols/nas.svg +1 -0
- package/src/assets/symbols/ncash.svg +1 -0
- package/src/assets/symbols/neu.svg +1 -0
- package/src/assets/symbols/nexo.svg +1 -0
- package/src/assets/symbols/ngc.svg +1 -0
- package/src/assets/symbols/nio.svg +1 -0
- package/src/assets/symbols/nmr.svg +7 -0
- package/src/assets/symbols/noah.svg +7 -0
- package/src/assets/symbols/npxs.svg +1 -0
- package/src/assets/symbols/nuls.svg +1 -0
- package/src/assets/symbols/nxm.svg +7 -0
- package/src/assets/symbols/oax.svg +1 -0
- package/src/assets/symbols/ocean.svg +7 -0
- package/src/assets/symbols/okb.svg +7 -0
- package/src/assets/symbols/omg.svg +1 -0
- package/src/assets/symbols/ong.svg +1 -0
- package/src/assets/symbols/op.svg +21 -0
- package/src/assets/symbols/ost.svg +1 -0
- package/src/assets/symbols/pax.svg +1 -0
- package/src/assets/symbols/paxg.svg +7 -0
- package/src/assets/symbols/pay.svg +1 -0
- package/src/assets/symbols/plenty.svg +1 -0
- package/src/assets/symbols/plr.svg +1 -0
- package/src/assets/symbols/pnk.svg +7 -0
- package/src/assets/symbols/poe.svg +1 -0
- package/src/assets/symbols/poly.svg +1 -0
- package/src/assets/symbols/powr.svg +1 -0
- package/src/assets/symbols/ppp.svg +1 -0
- package/src/assets/symbols/ppt.svg +1 -0
- package/src/assets/symbols/prl.svg +1 -0
- package/src/assets/symbols/qash.svg +1 -0
- package/src/assets/symbols/qnt.svg +7 -0
- package/src/assets/symbols/qrl.svg +1 -0
- package/src/assets/symbols/qsp.svg +1 -0
- package/src/assets/symbols/qtum.svg +1 -0
- package/src/assets/symbols/quipu.png +0 -0
- package/src/assets/symbols/r.svg +1 -0
- package/src/assets/symbols/rcn.svg +1 -0
- package/src/assets/symbols/rdn.svg +1 -0
- package/src/assets/symbols/ren.svg +7 -0
- package/src/assets/symbols/rep.svg +1 -0
- package/src/assets/symbols/repv2.svg +7 -0
- package/src/assets/symbols/req.svg +1 -0
- package/src/assets/symbols/rev.svg +7 -0
- package/src/assets/symbols/rhoc.svg +1 -0
- package/src/assets/symbols/rlc.svg +1 -0
- package/src/assets/symbols/rsr.svg +7 -0
- package/src/assets/symbols/sai.svg +7 -0
- package/src/assets/symbols/salt.svg +1 -0
- package/src/assets/symbols/san.svg +1 -0
- package/src/assets/symbols/sdn.svg +1 -0
- package/src/assets/symbols/shx.svg +32 -0
- package/src/assets/symbols/sirs.svg +1 -0
- package/src/assets/symbols/smart.svg +1 -0
- package/src/assets/symbols/sngls.svg +1 -0
- package/src/assets/symbols/snm.svg +1 -0
- package/src/assets/symbols/snt.svg +1 -0
- package/src/assets/symbols/snx.svg +7 -0
- package/src/assets/symbols/soc.svg +1 -0
- package/src/assets/symbols/sol.svg +1 -0
- package/src/assets/symbols/spank.svg +1 -0
- package/src/assets/symbols/sphtx.svg +1 -0
- package/src/assets/symbols/srm.svg +7 -0
- package/src/assets/symbols/srn.svg +1 -0
- package/src/assets/symbols/stake.svg +7 -0
- package/src/assets/symbols/stellar.png +0 -0
- package/src/assets/symbols/storj.svg +1 -0
- package/src/assets/symbols/storm.svg +1 -0
- package/src/assets/symbols/stq.svg +1 -0
- package/src/assets/symbols/stxtz.svg +18 -0
- package/src/assets/symbols/sub.svg +1 -0
- package/src/assets/symbols/sushi.svg +7 -0
- package/src/assets/symbols/sxp.svg +7 -0
- package/src/assets/symbols/sxtz.svg +6 -0
- package/src/assets/symbols/taas.svg +1 -0
- package/src/assets/symbols/tau.svg +1 -0
- package/src/assets/symbols/tbx.svg +1 -0
- package/src/assets/symbols/tel.svg +1 -0
- package/src/assets/symbols/ten.svg +1 -0
- package/src/assets/symbols/theta.svg +1 -0
- package/src/assets/symbols/tix.svg +1 -0
- package/src/assets/symbols/tkn.svg +1 -0
- package/src/assets/symbols/tnt.svg +1 -0
- package/src/assets/symbols/tomo.svg +1 -0
- package/src/assets/symbols/trac.svg +7 -0
- package/src/assets/symbols/trb.svg +7 -0
- package/src/assets/symbols/trx.svg +1 -0
- package/src/assets/symbols/tusd.svg +1 -0
- package/src/assets/symbols/tzbtc.svg +1 -0
- package/src/assets/symbols/ubt.svg +7 -0
- package/src/assets/symbols/ubtc.svg +1 -0
- package/src/assets/symbols/udefi.svg +1 -0
- package/src/assets/symbols/uma.svg +7 -0
- package/src/assets/symbols/usdc.svg +1 -0
- package/src/assets/symbols/usdt.png +0 -0
- package/src/assets/symbols/usdt.svg +1 -0
- package/src/assets/symbols/usdtz.svg +17 -0
- package/src/assets/symbols/ust.svg +1 -0
- package/src/assets/symbols/utk.svg +1 -0
- package/src/assets/symbols/uusd.svg +1 -0
- package/src/assets/symbols/uxtz.svg +1 -0
- package/src/assets/symbols/velo.svg +5 -0
- package/src/assets/symbols/ven.svg +7 -0
- package/src/assets/symbols/veri.svg +1 -0
- package/src/assets/symbols/verse.svg +1 -0
- package/src/assets/symbols/vest.svg +7 -0
- package/src/assets/symbols/vib.svg +1 -0
- package/src/assets/symbols/vibe.svg +1 -0
- package/src/assets/symbols/wabi.svg +1 -0
- package/src/assets/symbols/wax.svg +1 -0
- package/src/assets/symbols/wbtc.svg +7 -0
- package/src/assets/symbols/weth.svg +18 -0
- package/src/assets/symbols/wic.svg +7 -0
- package/src/assets/symbols/wings.svg +1 -0
- package/src/assets/symbols/wnxm.svg +7 -0
- package/src/assets/symbols/wpr.svg +1 -0
- package/src/assets/symbols/wrap.png +0 -0
- package/src/assets/symbols/wtc.svg +1 -0
- package/src/assets/symbols/wusdc.png +0 -0
- package/src/assets/symbols/xchf.svg +1 -0
- package/src/assets/symbols/xdce.svg +7 -0
- package/src/assets/symbols/xin.svg +7 -0
- package/src/assets/symbols/xpa.svg +1 -0
- package/src/assets/symbols/xpl.svg +1 -0
- package/src/assets/symbols/xtz.svg +5 -0
- package/src/assets/symbols/yfi.svg +7 -0
- package/src/assets/symbols/you.svg +1 -0
- package/src/assets/symbols/yoyow.svg +1 -0
- package/src/assets/symbols/ytez.svg +1 -0
- package/src/assets/symbols/zb.svg +7 -0
- package/src/assets/symbols/zil.svg +1 -0
- package/src/assets/symbols/zrx.svg +1 -0
- package/src/assets/workers/airgap-coin-lib.js +119 -0
- package/wallfree-dev-angular-core.d.ts.map +1 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/* eslint-disable max-classes-per-file */
|
|
2
|
+
export var ExposedPromiseStatus;
|
|
3
|
+
(function (ExposedPromiseStatus) {
|
|
4
|
+
ExposedPromiseStatus["PENDING"] = "pending";
|
|
5
|
+
ExposedPromiseStatus["RESOLVED"] = "resolved";
|
|
6
|
+
ExposedPromiseStatus["REJECTED"] = "rejected";
|
|
7
|
+
})(ExposedPromiseStatus || (ExposedPromiseStatus = {}));
|
|
8
|
+
const notInitialized = () => {
|
|
9
|
+
throw new Error('ExposedPromise not initialized yet.');
|
|
10
|
+
};
|
|
11
|
+
export class ExposedPromise {
|
|
12
|
+
get promise() {
|
|
13
|
+
return this._promise;
|
|
14
|
+
}
|
|
15
|
+
get resolve() {
|
|
16
|
+
return this._resolve;
|
|
17
|
+
}
|
|
18
|
+
get reject() {
|
|
19
|
+
return this._reject;
|
|
20
|
+
}
|
|
21
|
+
get status() {
|
|
22
|
+
return this._status;
|
|
23
|
+
}
|
|
24
|
+
get promiseResult() {
|
|
25
|
+
return this._promiseResult;
|
|
26
|
+
}
|
|
27
|
+
get promiseError() {
|
|
28
|
+
return this._promiseError;
|
|
29
|
+
}
|
|
30
|
+
constructor() {
|
|
31
|
+
this._resolve = notInitialized;
|
|
32
|
+
this._reject = notInitialized;
|
|
33
|
+
this._status = ExposedPromiseStatus.PENDING;
|
|
34
|
+
this._promise = new Promise((innerResolve, innerReject) => {
|
|
35
|
+
this._resolve = (value) => {
|
|
36
|
+
if (this.isSettled()) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
this._promiseResult = value;
|
|
40
|
+
innerResolve(value);
|
|
41
|
+
this._status = ExposedPromiseStatus.RESOLVED;
|
|
42
|
+
return;
|
|
43
|
+
};
|
|
44
|
+
this._reject = (reason) => {
|
|
45
|
+
if (this.isSettled()) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
this._promiseError = reason;
|
|
49
|
+
innerReject(reason);
|
|
50
|
+
this._status = ExposedPromiseStatus.REJECTED;
|
|
51
|
+
return;
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
static resolve(value) {
|
|
56
|
+
const promise = new ExposedPromise();
|
|
57
|
+
promise.resolve(value);
|
|
58
|
+
return promise;
|
|
59
|
+
}
|
|
60
|
+
static reject(reason) {
|
|
61
|
+
const promise = new ExposedPromise();
|
|
62
|
+
promise.reject(reason);
|
|
63
|
+
return promise;
|
|
64
|
+
}
|
|
65
|
+
isPending() {
|
|
66
|
+
return this.status === ExposedPromiseStatus.PENDING;
|
|
67
|
+
}
|
|
68
|
+
isResolved() {
|
|
69
|
+
return this.status === ExposedPromiseStatus.RESOLVED;
|
|
70
|
+
}
|
|
71
|
+
isRejected() {
|
|
72
|
+
return this.status === ExposedPromiseStatus.REJECTED;
|
|
73
|
+
}
|
|
74
|
+
isSettled() {
|
|
75
|
+
return this.isResolved() || this.isRejected();
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export class ExposedPromiseRegistry {
|
|
79
|
+
constructor() {
|
|
80
|
+
this.exposedPromises = {};
|
|
81
|
+
}
|
|
82
|
+
resolve(key, value) {
|
|
83
|
+
this.getIfNotSettled(key)?.resolve(value);
|
|
84
|
+
}
|
|
85
|
+
reject(key, error) {
|
|
86
|
+
this.getIfNotSettled(key)?.reject(error);
|
|
87
|
+
}
|
|
88
|
+
async yield(key) {
|
|
89
|
+
const exposedPromise = new ExposedPromise();
|
|
90
|
+
this.exposedPromises[key] = exposedPromise;
|
|
91
|
+
const value = await exposedPromise.promise;
|
|
92
|
+
this.exposedPromises[key] = undefined;
|
|
93
|
+
return value;
|
|
94
|
+
}
|
|
95
|
+
getIfNotSettled(key) {
|
|
96
|
+
const promise = this.exposedPromises[key];
|
|
97
|
+
if (promise?.isSettled()) {
|
|
98
|
+
throw new Error('Promise is already settled');
|
|
99
|
+
}
|
|
100
|
+
return promise;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3NlZFByb21pc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL0V4cG9zZWRQcm9taXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlDQUF5QztBQUV6QyxNQUFNLENBQU4sSUFBWSxvQkFJWDtBQUpELFdBQVksb0JBQW9CO0lBQzlCLDJDQUFtQixDQUFBO0lBQ25CLDZDQUFxQixDQUFBO0lBQ3JCLDZDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFKVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBSS9CO0FBS0QsTUFBTSxjQUFjLEdBQUcsR0FBVSxFQUFFO0lBQ2pDLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQTtBQUN4RCxDQUFDLENBQUE7QUFFRCxNQUFNLE9BQU8sY0FBYztJQVN6QixJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0lBQ3RCLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0lBQ3RCLENBQUM7SUFDRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUE7SUFDckIsQ0FBQztJQUNELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBQ0QsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUM1QixDQUFDO0lBQ0QsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQTtJQUMzQixDQUFDO0lBRUQ7UUExQlEsYUFBUSxHQUFlLGNBQWMsQ0FBQTtRQUNyQyxZQUFPLEdBQWMsY0FBYyxDQUFBO1FBQ25DLFlBQU8sR0FBeUIsb0JBQW9CLENBQUMsT0FBTyxDQUFBO1FBeUJsRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksT0FBTyxDQUFJLENBQUMsWUFBd0IsRUFBRSxXQUFzQixF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QztZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUE7UUFDL0MsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFBO0lBQ2hCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG1heC1jbGFzc2VzLXBlci1maWxlICovXG5cbmV4cG9ydCBlbnVtIEV4cG9zZWRQcm9taXNlU3RhdHVzIHtcbiAgUEVORElORyA9ICdwZW5kaW5nJyxcbiAgUkVTT0xWRUQgPSAncmVzb2x2ZWQnLFxuICBSRUpFQ1RFRCA9ICdyZWplY3RlZCdcbn1cblxudHlwZSBSZXNvbHZlPFQ+ID0gKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pID0+IHZvaWRcbnR5cGUgUmVqZWN0PFU+ID0gKHJlYXNvbj86IFUpID0+IHZvaWRcblxuY29uc3Qgbm90SW5pdGlhbGl6ZWQgPSAoKTogbmV2ZXIgPT4ge1xuICB0aHJvdyBuZXcgRXJyb3IoJ0V4cG9zZWRQcm9taXNlIG5vdCBpbml0aWFsaXplZCB5ZXQuJylcbn1cblxuZXhwb3J0IGNsYXNzIEV4cG9zZWRQcm9taXNlPFQgPSB1bmtub3duLCBVID0gdW5rbm93bj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wcm9taXNlOiBQcm9taXNlPFQ+XG5cbiAgcHJpdmF0ZSBfcmVzb2x2ZTogUmVzb2x2ZTxUPiA9IG5vdEluaXRpYWxpemVkXG4gIHByaXZhdGUgX3JlamVjdDogUmVqZWN0PFU+ID0gbm90SW5pdGlhbGl6ZWRcbiAgcHJpdmF0ZSBfc3RhdHVzOiBFeHBvc2VkUHJvbWlzZVN0YXR1cyA9IEV4cG9zZWRQcm9taXNlU3RhdHVzLlBFTkRJTkdcbiAgcHJpdmF0ZSBfcHJvbWlzZVJlc3VsdDogVCB8IFByb21pc2VMaWtlPFQ+IHwgdW5kZWZpbmVkXG4gIHByaXZhdGUgX3Byb21pc2VFcnJvcjogVSB8IHVuZGVmaW5lZFxuXG4gIHB1YmxpYyBnZXQgcHJvbWlzZSgpOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fcHJvbWlzZVxuICB9XG5cbiAgcHVibGljIGdldCByZXNvbHZlKCk6IFJlc29sdmU8VD4ge1xuICAgIHJldHVybiB0aGlzLl9yZXNvbHZlXG4gIH1cbiAgcHVibGljIGdldCByZWplY3QoKTogUmVqZWN0PFU+IHtcbiAgICByZXR1cm4gdGhpcy5fcmVqZWN0XG4gIH1cbiAgcHVibGljIGdldCBzdGF0dXMoKTogRXhwb3NlZFByb21pc2VTdGF0dXMge1xuICAgIHJldHVybiB0aGlzLl9zdGF0dXNcbiAgfVxuICBwdWJsaWMgZ2V0IHByb21pc2VSZXN1bHQoKTogVCB8IFByb21pc2VMaWtlPFQ+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fcHJvbWlzZVJlc3VsdFxuICB9XG4gIHB1YmxpYyBnZXQgcHJvbWlzZUVycm9yKCk6IFUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9wcm9taXNlRXJyb3JcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3Byb21pc2UgPSBuZXcgUHJvbWlzZTxUPigoaW5uZXJSZXNvbHZlOiBSZXNvbHZlPFQ+LCBpbm5lclJlamVjdDogUmVqZWN0PFU+KTogdm9pZCA9PiB7XG4gICAgICB0aGlzLl9yZXNvbHZlID0gKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNTZXR0bGVkKCkpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3Byb21pc2VSZXN1bHQgPSB2YWx1ZVxuXG4gICAgICAgIGlubmVyUmVzb2x2ZSh2YWx1ZSlcblxuICAgICAgICB0aGlzLl9zdGF0dXMgPSBFeHBvc2VkUHJvbWlzZVN0YXR1cy5SRVNPTFZFRFxuXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgdGhpcy5fcmVqZWN0ID0gKHJlYXNvbj86IFUpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNTZXR0bGVkKCkpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3Byb21pc2VFcnJvciA9IHJlYXNvblxuXG4gICAgICAgIGlubmVyUmVqZWN0KHJlYXNvbilcblxuICAgICAgICB0aGlzLl9zdGF0dXMgPSBFeHBvc2VkUHJvbWlzZVN0YXR1cy5SRUpFQ1RFRFxuXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHJlc29sdmU8VD4odmFsdWU6IFQpOiBFeHBvc2VkUHJvbWlzZTxUPiB7XG4gICAgY29uc3QgcHJvbWlzZSA9IG5ldyBFeHBvc2VkUHJvbWlzZTxUPigpXG4gICAgcHJvbWlzZS5yZXNvbHZlKHZhbHVlKVxuXG4gICAgcmV0dXJuIHByb21pc2VcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgcmVqZWN0PFQgPSBuZXZlciwgVSA9IHVua25vd24+KHJlYXNvbj86IFUpOiBFeHBvc2VkUHJvbWlzZTxULCBVPiB7XG4gICAgY29uc3QgcHJvbWlzZSA9IG5ldyBFeHBvc2VkUHJvbWlzZTxULCBVPigpXG4gICAgcHJvbWlzZS5yZWplY3QocmVhc29uKVxuXG4gICAgcmV0dXJuIHByb21pc2VcbiAgfVxuXG4gIHB1YmxpYyBpc1BlbmRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBFeHBvc2VkUHJvbWlzZVN0YXR1cy5QRU5ESU5HXG4gIH1cblxuICBwdWJsaWMgaXNSZXNvbHZlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IEV4cG9zZWRQcm9taXNlU3RhdHVzLlJFU09MVkVEXG4gIH1cblxuICBwdWJsaWMgaXNSZWplY3RlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IEV4cG9zZWRQcm9taXNlU3RhdHVzLlJFSkVDVEVEXG4gIH1cblxuICBwdWJsaWMgaXNTZXR0bGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzUmVzb2x2ZWQoKSB8fCB0aGlzLmlzUmVqZWN0ZWQoKVxuICB9XG59XG5cbnR5cGUgUmVzb2x2ZVR5cGVzPEsgZXh0ZW5kcyBzdHJpbmc+ID0gUmVjb3JkPEssIHVua25vd24+XG50eXBlIFJlamVjdFR5cGVzPEsgZXh0ZW5kcyBzdHJpbmc+ID0gUmVjb3JkPEssIHVua25vd24+IHwgdW5rbm93blxudHlwZSBFcnJvcjxLIGV4dGVuZHMgc3RyaW5nLCBFIGV4dGVuZHMgUmVqZWN0VHlwZXM8Sz4+ID0gRSBleHRlbmRzIFJlY29yZDxLLCB1bmtub3duPiA/IEVbS10gOiB1bmtub3duXG5leHBvcnQgY2xhc3MgRXhwb3NlZFByb21pc2VSZWdpc3RyeTxcbiAgS2V5IGV4dGVuZHMgc3RyaW5nLFxuICBSZXNvbHZlVHlwZSBleHRlbmRzIFJlc29sdmVUeXBlczxLZXk+LFxuICBSZWplY3RUeXBlIGV4dGVuZHMgUmVqZWN0VHlwZXM8S2V5PiA9IHVua25vd25cbj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGV4cG9zZWRQcm9taXNlczogeyBba2V5IGluIEtleV0/OiBFeHBvc2VkUHJvbWlzZTxSZXNvbHZlVHlwZVtrZXldLCBFcnJvcjxrZXksIFJlamVjdFR5cGU+PiB9ID0ge31cblxuICBwdWJsaWMgcmVzb2x2ZTxLIGV4dGVuZHMgS2V5PihrZXk6IEssIHZhbHVlOiBSZXNvbHZlVHlwZVtLXSk6IHZvaWQge1xuICAgIHRoaXMuZ2V0SWZOb3RTZXR0bGVkKGtleSk/LnJlc29sdmUodmFsdWUpXG4gIH1cblxuICBwdWJsaWMgcmVqZWN0PEsgZXh0ZW5kcyBLZXk+KGtleTogSywgZXJyb3I6IEVycm9yPEssIFJlamVjdFR5cGU+KTogdm9pZCB7XG4gICAgdGhpcy5nZXRJZk5vdFNldHRsZWQoa2V5KT8ucmVqZWN0KGVycm9yKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHlpZWxkPEsgZXh0ZW5kcyBLZXk+KGtleTogSyk6IFByb21pc2U8UmVzb2x2ZVR5cGVbS10+IHtcbiAgICBjb25zdCBleHBvc2VkUHJvbWlzZTogRXhwb3NlZFByb21pc2U8UmVzb2x2ZVR5cGVbS10sIEVycm9yPEssIFJlamVjdFR5cGU+PiA9IG5ldyBFeHBvc2VkUHJvbWlzZSgpXG4gICAgdGhpcy5leHBvc2VkUHJvbWlzZXNba2V5XSA9IGV4cG9zZWRQcm9taXNlXG5cbiAgICBjb25zdCB2YWx1ZTogUmVzb2x2ZVR5cGVbS10gPSBhd2FpdCBleHBvc2VkUHJvbWlzZS5wcm9taXNlXG4gICAgdGhpcy5leHBvc2VkUHJvbWlzZXNba2V5XSA9IHVuZGVmaW5lZFxuXG4gICAgcmV0dXJuIHZhbHVlXG4gIH1cblxuICBwcml2YXRlIGdldElmTm90U2V0dGxlZDxLIGV4dGVuZHMgS2V5PihrZXk6IEspOiBFeHBvc2VkUHJvbWlzZTxSZXNvbHZlVHlwZVtLXSwgRXJyb3I8SywgUmVqZWN0VHlwZT4+IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBwcm9taXNlOiBFeHBvc2VkUHJvbWlzZTxSZXNvbHZlVHlwZVtLXSwgRXJyb3I8SywgUmVqZWN0VHlwZT4+IHwgdW5kZWZpbmVkID0gdGhpcy5leHBvc2VkUHJvbWlzZXNba2V5XVxuICAgIGlmIChwcm9taXNlPy5pc1NldHRsZWQoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQcm9taXNlIGlzIGFscmVhZHkgc2V0dGxlZCcpXG4gICAgfVxuXG4gICAgcmV0dXJuIHByb21pc2VcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { flattened } from './array';
|
|
3
|
+
export function flattenAirGapTxAddresses(airGapTxs, field) {
|
|
4
|
+
if (!airGapTxs || !Array.isArray(airGapTxs)) {
|
|
5
|
+
return [];
|
|
6
|
+
}
|
|
7
|
+
return flattened(airGapTxs.map((tx) => tx[field]));
|
|
8
|
+
}
|
|
9
|
+
export function sumAirGapTxValues(airGapTxs, field) {
|
|
10
|
+
if (!airGapTxs || !Array.isArray(airGapTxs)) {
|
|
11
|
+
return '0';
|
|
12
|
+
}
|
|
13
|
+
return airGapTxs
|
|
14
|
+
.reduce((sum, next) => {
|
|
15
|
+
let nextValue = new BigNumber(next[field]);
|
|
16
|
+
if (nextValue.isNaN()) {
|
|
17
|
+
nextValue = new BigNumber(0);
|
|
18
|
+
}
|
|
19
|
+
return sum.plus(nextValue);
|
|
20
|
+
}, new BigNumber(0))
|
|
21
|
+
.toFixed();
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWlyZ2FwLXRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9haXJnYXAtdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxTQUFTLE1BQU0sY0FBYyxDQUFBO0FBRXBDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFFbkMsTUFBTSxVQUFVLHdCQUF3QixDQUFDLFNBQStCLEVBQUUsS0FBb0Q7SUFDNUgsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUM1QyxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBc0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUN4RSxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFNBQStCLEVBQUUsS0FBdUQ7SUFDeEgsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUM1QyxPQUFPLEdBQUcsQ0FBQTtJQUNaLENBQUM7SUFDRCxPQUFPLFNBQVM7U0FDYixNQUFNLENBQUMsQ0FBQyxHQUFjLEVBQUUsSUFBd0IsRUFBRSxFQUFFO1FBQ25ELElBQUksU0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1FBQ3JELElBQUksU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDdEIsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlCLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDNUIsQ0FBQyxFQUFFLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25CLE9BQU8sRUFBRSxDQUFBO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBaXJHYXBUcmFuc2FjdGlvbiB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvY29pbmxpYi1jb3JlJ1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnXG5cbmltcG9ydCB7IGZsYXR0ZW5lZCB9IGZyb20gJy4vYXJyYXknXG5cbmV4cG9ydCBmdW5jdGlvbiBmbGF0dGVuQWlyR2FwVHhBZGRyZXNzZXMoYWlyR2FwVHhzOiBJQWlyR2FwVHJhbnNhY3Rpb25bXSwgZmllbGQ6IGtleW9mIFBpY2s8SUFpckdhcFRyYW5zYWN0aW9uLCAnZnJvbScgfCAndG8nPik6IHN0cmluZ1tdIHtcbiAgaWYgKCFhaXJHYXBUeHMgfHwgIUFycmF5LmlzQXJyYXkoYWlyR2FwVHhzKSkge1xuICAgIHJldHVybiBbXVxuICB9XG4gIHJldHVybiBmbGF0dGVuZWQoYWlyR2FwVHhzLm1hcCgodHg6IElBaXJHYXBUcmFuc2FjdGlvbikgPT4gdHhbZmllbGRdKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN1bUFpckdhcFR4VmFsdWVzKGFpckdhcFR4czogSUFpckdhcFRyYW5zYWN0aW9uW10sIGZpZWxkOiBrZXlvZiBQaWNrPElBaXJHYXBUcmFuc2FjdGlvbiwgJ2Ftb3VudCcgfCAnZmVlJz4pOiBzdHJpbmcge1xuICBpZiAoIWFpckdhcFR4cyB8fCAhQXJyYXkuaXNBcnJheShhaXJHYXBUeHMpKSB7XG4gICAgcmV0dXJuICcwJ1xuICB9XG4gIHJldHVybiBhaXJHYXBUeHNcbiAgICAucmVkdWNlKChzdW06IEJpZ051bWJlciwgbmV4dDogSUFpckdhcFRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICBsZXQgbmV4dFZhbHVlOiBCaWdOdW1iZXIgPSBuZXcgQmlnTnVtYmVyKG5leHRbZmllbGRdKVxuICAgICAgaWYgKG5leHRWYWx1ZS5pc05hTigpKSB7XG4gICAgICAgIG5leHRWYWx1ZSA9IG5ldyBCaWdOdW1iZXIoMClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN1bS5wbHVzKG5leHRWYWx1ZSlcbiAgICB9LCBuZXcgQmlnTnVtYmVyKDApKVxuICAgIC50b0ZpeGVkKClcbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export function duplicatesRemoved(array) {
|
|
2
|
+
return array.filter((item, index, arr) => arr.indexOf(item) === index);
|
|
3
|
+
}
|
|
4
|
+
export function partition(array, isValid) {
|
|
5
|
+
const pass = [];
|
|
6
|
+
const fail = [];
|
|
7
|
+
array.forEach((element) => {
|
|
8
|
+
if (isValid(element)) {
|
|
9
|
+
pass.push(element);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
fail.push(element);
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
return [pass, fail];
|
|
16
|
+
}
|
|
17
|
+
export function flattened(array) {
|
|
18
|
+
return array.reduce((output, next) => output.concat(next), []);
|
|
19
|
+
}
|
|
20
|
+
export function merged(array) {
|
|
21
|
+
return array.reduce((output, next) => {
|
|
22
|
+
const [t, r] = next;
|
|
23
|
+
if (t !== undefined) {
|
|
24
|
+
output[0].push(t);
|
|
25
|
+
}
|
|
26
|
+
if (r !== undefined) {
|
|
27
|
+
output[1].push(r);
|
|
28
|
+
}
|
|
29
|
+
return output;
|
|
30
|
+
}, [[], []]);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL2FycmF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxLQUFVO0lBQzdDLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQU8sRUFBRSxLQUFhLEVBQUUsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFBO0FBQ3hGLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFJLEtBQVUsRUFBRSxPQUFnQztJQUN2RSxNQUFNLElBQUksR0FBUSxFQUFFLENBQUE7SUFDcEIsTUFBTSxJQUFJLEdBQVEsRUFBRSxDQUFBO0lBQ3BCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFVLEVBQUUsRUFBRTtRQUMzQixJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDcEIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3BCLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQTtJQUVGLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFDckIsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUksS0FBWTtJQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsSUFBUyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQzFFLENBQUM7QUFFRCxNQUFNLFVBQVUsTUFBTSxDQUFPLEtBQXFCO0lBQ2hELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FDakIsQ0FBQyxNQUFrQixFQUFFLElBQWtCLEVBQUUsRUFBRTtRQUN6QyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFpQixJQUFJLENBQUE7UUFDakMsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDcEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNuQixDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDcEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNuQixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDLEVBQ0QsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQ1QsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFaXRoZXIgfSBmcm9tICcuLi90eXBlcy9FaXRoZXInXG5cbmV4cG9ydCBmdW5jdGlvbiBkdXBsaWNhdGVzUmVtb3ZlZDxUPihhcnJheTogVFtdKTogVFtdIHtcbiAgcmV0dXJuIGFycmF5LmZpbHRlcigoaXRlbTogVCwgaW5kZXg6IG51bWJlciwgYXJyOiBUW10pID0+IGFyci5pbmRleE9mKGl0ZW0pID09PSBpbmRleClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnRpdGlvbjxUPihhcnJheTogVFtdLCBpc1ZhbGlkOiAoZWxlbWVudDogVCkgPT4gYm9vbGVhbik6IFtUW10sIFRbXV0ge1xuICBjb25zdCBwYXNzOiBUW10gPSBbXVxuICBjb25zdCBmYWlsOiBUW10gPSBbXVxuICBhcnJheS5mb3JFYWNoKChlbGVtZW50OiBUKSA9PiB7XG4gICAgaWYgKGlzVmFsaWQoZWxlbWVudCkpIHtcbiAgICAgIHBhc3MucHVzaChlbGVtZW50KVxuICAgIH0gZWxzZSB7XG4gICAgICBmYWlsLnB1c2goZWxlbWVudClcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIFtwYXNzLCBmYWlsXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmxhdHRlbmVkPFQ+KGFycmF5OiBUW11bXSk6IFRbXSB7XG4gIHJldHVybiBhcnJheS5yZWR1Y2UoKG91dHB1dDogVFtdLCBuZXh0OiBUW10pID0+IG91dHB1dC5jb25jYXQobmV4dCksIFtdKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VkPFQsIFI+KGFycmF5OiBFaXRoZXI8VCwgUj5bXSk6IFtUW10sIFJbXV0ge1xuICByZXR1cm4gYXJyYXkucmVkdWNlKFxuICAgIChvdXRwdXQ6IFtUW10sIFJbXV0sIG5leHQ6IEVpdGhlcjxULCBSPikgPT4ge1xuICAgICAgY29uc3QgW3QsIHJdOiBFaXRoZXI8VCwgUj4gPSBuZXh0XG4gICAgICBpZiAodCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG91dHB1dFswXS5wdXNoKHQpXG4gICAgICB9XG5cbiAgICAgIGlmIChyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgb3V0cHV0WzFdLnB1c2gocilcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG91dHB1dFxuICAgIH0sXG4gICAgW1tdLCBbXV1cbiAgKVxufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { implementsInterface } from '@wallfree-dev/module-kit';
|
|
2
|
+
export function isIsolatedModuleMetadata(object) {
|
|
3
|
+
return implementsInterface(object, {
|
|
4
|
+
type: 'required',
|
|
5
|
+
module: 'required',
|
|
6
|
+
manifest: 'required',
|
|
7
|
+
source: 'required'
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvbGF0ZWQtbW9kdWxlcy1tZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvbW9kdWxlcy9pc29sYXRlZC9pc29sYXRlZC1tb2R1bGVzLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRzlELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxNQUFlO0lBQ3RELE9BQU8sbUJBQW1CLENBQXlCLE1BQU0sRUFBRTtRQUN6RCxJQUFJLEVBQUUsVUFBVTtRQUNoQixNQUFNLEVBQUUsVUFBVTtRQUNsQixRQUFRLEVBQUUsVUFBVTtRQUNwQixNQUFNLEVBQUUsVUFBVTtLQUNuQixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW1wbGVtZW50c0ludGVyZmFjZSB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvbW9kdWxlLWtpdCdcbmltcG9ydCB7IElzb2xhdGVkTW9kdWxlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9pc29sYXRlZC1tb2R1bGVzL0lzb2xhdGVkTW9kdWxlTWV0YWRhdGEnXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0lzb2xhdGVkTW9kdWxlTWV0YWRhdGEob2JqZWN0OiB1bmtub3duKTogb2JqZWN0IGlzIElzb2xhdGVkTW9kdWxlTWV0YWRhdGEge1xuICByZXR1cm4gaW1wbGVtZW50c0ludGVyZmFjZTxJc29sYXRlZE1vZHVsZU1ldGFkYXRhPihvYmplY3QsIHtcbiAgICB0eXBlOiAncmVxdWlyZWQnLFxuICAgIG1vZHVsZTogJ3JlcXVpcmVkJyxcbiAgICBtYW5pZmVzdDogJ3JlcXVpcmVkJyxcbiAgICBzb3VyY2U6ICdyZXF1aXJlZCdcbiAgfSlcbn1cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export function getOfflineProtocolConfiguration(configuration, protocolType) {
|
|
2
|
+
return protocolType === 'offline' || protocolType === 'full' || protocolType === undefined
|
|
3
|
+
? configuration.type === 'offline'
|
|
4
|
+
? configuration
|
|
5
|
+
: configuration.type === 'full'
|
|
6
|
+
? configuration.offline
|
|
7
|
+
: undefined
|
|
8
|
+
: undefined;
|
|
9
|
+
}
|
|
10
|
+
export function getOnlineProtocolConfiguration(configuration, protocolType) {
|
|
11
|
+
return protocolType === 'online' || protocolType === 'full' || protocolType === undefined
|
|
12
|
+
? configuration.type === 'online'
|
|
13
|
+
? configuration
|
|
14
|
+
: configuration.type === 'full'
|
|
15
|
+
? configuration.online
|
|
16
|
+
: undefined
|
|
17
|
+
: undefined;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1wcm90b2NvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvbW9kdWxlcy9sb2FkLXByb3RvY29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSwrQkFBK0IsQ0FDN0MsYUFBb0MsRUFDcEMsWUFBNEM7SUFFNUMsT0FBTyxZQUFZLEtBQUssU0FBUyxJQUFJLFlBQVksS0FBSyxNQUFNLElBQUksWUFBWSxLQUFLLFNBQVM7UUFDeEYsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssU0FBUztZQUNoQyxDQUFDLENBQUMsYUFBYTtZQUNmLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLE1BQU07Z0JBQy9CLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTztnQkFDdkIsQ0FBQyxDQUFDLFNBQVM7UUFDYixDQUFDLENBQUMsU0FBUyxDQUFBO0FBQ2YsQ0FBQztBQUVELE1BQU0sVUFBVSw4QkFBOEIsQ0FDNUMsYUFBb0MsRUFDcEMsWUFBNEM7SUFFNUMsT0FBTyxZQUFZLEtBQUssUUFBUSxJQUFJLFlBQVksS0FBSyxNQUFNLElBQUksWUFBWSxLQUFLLFNBQVM7UUFDdkYsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssUUFBUTtZQUMvQixDQUFDLENBQUMsYUFBYTtZQUNmLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLE1BQU07Z0JBQy9CLENBQUMsQ0FBQyxhQUFhLENBQUMsTUFBTTtnQkFDdEIsQ0FBQyxDQUFDLFNBQVM7UUFDYixDQUFDLENBQUMsU0FBUyxDQUFBO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9mZmxpbmVQcm90b2NvbENvbmZpZ3VyYXRpb24sIE9ubGluZVByb3RvY29sQ29uZmlndXJhdGlvbiwgUHJvdG9jb2xDb25maWd1cmF0aW9uIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9tb2R1bGUta2l0J1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2ZmbGluZVByb3RvY29sQ29uZmlndXJhdGlvbihcbiAgY29uZmlndXJhdGlvbjogUHJvdG9jb2xDb25maWd1cmF0aW9uLFxuICBwcm90b2NvbFR5cGU/OiBQcm90b2NvbENvbmZpZ3VyYXRpb25bJ3R5cGUnXVxuKTogT2ZmbGluZVByb3RvY29sQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBwcm90b2NvbFR5cGUgPT09ICdvZmZsaW5lJyB8fCBwcm90b2NvbFR5cGUgPT09ICdmdWxsJyB8fCBwcm90b2NvbFR5cGUgPT09IHVuZGVmaW5lZFxuICAgID8gY29uZmlndXJhdGlvbi50eXBlID09PSAnb2ZmbGluZSdcbiAgICAgID8gY29uZmlndXJhdGlvblxuICAgICAgOiBjb25maWd1cmF0aW9uLnR5cGUgPT09ICdmdWxsJ1xuICAgICAgPyBjb25maWd1cmF0aW9uLm9mZmxpbmVcbiAgICAgIDogdW5kZWZpbmVkXG4gICAgOiB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9ubGluZVByb3RvY29sQ29uZmlndXJhdGlvbihcbiAgY29uZmlndXJhdGlvbjogUHJvdG9jb2xDb25maWd1cmF0aW9uLFxuICBwcm90b2NvbFR5cGU/OiBQcm90b2NvbENvbmZpZ3VyYXRpb25bJ3R5cGUnXVxuKTogT25saW5lUHJvdG9jb2xDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHByb3RvY29sVHlwZSA9PT0gJ29ubGluZScgfHwgcHJvdG9jb2xUeXBlID09PSAnZnVsbCcgfHwgcHJvdG9jb2xUeXBlID09PSB1bmRlZmluZWRcbiAgICA/IGNvbmZpZ3VyYXRpb24udHlwZSA9PT0gJ29ubGluZSdcbiAgICAgID8gY29uZmlndXJhdGlvblxuICAgICAgOiBjb25maWd1cmF0aW9uLnR5cGUgPT09ICdmdWxsJ1xuICAgICAgPyBjb25maWd1cmF0aW9uLm9ubGluZVxuICAgICAgOiB1bmRlZmluZWRcbiAgICA6IHVuZGVmaW5lZFxufVxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export function createNotInitialized(name, details) {
|
|
2
|
+
return () => {
|
|
3
|
+
const error = [`${name} not initialized yet.`, details].filter((part) => part !== undefined).join(' ');
|
|
4
|
+
throw new Error(error);
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWluaXRpYWxpemVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9ub3QtaW5pdGlhbGl6ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLElBQVksRUFBRSxPQUFnQjtJQUNqRSxPQUFPLEdBQUcsRUFBRTtRQUNWLE1BQU0sS0FBSyxHQUFXLENBQUMsR0FBRyxJQUFJLHVCQUF1QixFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQXdCLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDbEksTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN4QixDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU5vdEluaXRpYWxpemVkKG5hbWU6IHN0cmluZywgZGV0YWlscz86IHN0cmluZyk6ICgpID0+IG5ldmVyIHtcbiAgcmV0dXJuICgpID0+IHtcbiAgICBjb25zdCBlcnJvcjogc3RyaW5nID0gW2Ake25hbWV9IG5vdCBpbml0aWFsaXplZCB5ZXQuYCwgZGV0YWlsc10uZmlsdGVyKChwYXJ0OiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IHBhcnQgIT09IHVuZGVmaW5lZCkuam9pbignICcpXG4gICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/* eslint-disable no-implicit-coercion */
|
|
2
|
+
import { MainProtocolSymbols, SubProtocolSymbols } from '@wallfree-dev/coinlib-core';
|
|
3
|
+
import { TezosProtocol } from '@wallfree-dev/tezos/v0';
|
|
4
|
+
export function supportsV0Delegation(protocol) {
|
|
5
|
+
const delegateProtocol = protocol;
|
|
6
|
+
// temporary until Tezos subprotocols stop inherit TezosProtocol and implement ICoinDelegateProtocol
|
|
7
|
+
const supportingTezosProtocols = [MainProtocolSymbols.XTZ, SubProtocolSymbols.XTZ_KT];
|
|
8
|
+
if (delegateProtocol instanceof TezosProtocol && !supportingTezosProtocols.includes(delegateProtocol.identifier)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
return (!!delegateProtocol.getDefaultDelegatee &&
|
|
12
|
+
!!delegateProtocol.getCurrentDelegateesForPublicKey &&
|
|
13
|
+
!!delegateProtocol.getCurrentDelegateesForAddress &&
|
|
14
|
+
!!delegateProtocol.getDelegateeDetails &&
|
|
15
|
+
!!delegateProtocol.isPublicKeyDelegating &&
|
|
16
|
+
!!delegateProtocol.isAddressDelegating &&
|
|
17
|
+
!!delegateProtocol.getDelegationDetailsFromPublicKey &&
|
|
18
|
+
!!delegateProtocol.getDelegationDetailsFromAddress &&
|
|
19
|
+
!!delegateProtocol.prepareDelegatorActionFromPublicKey);
|
|
20
|
+
}
|
|
21
|
+
export function supportsV1Delegation(protocol) {
|
|
22
|
+
const delegateProtocol = protocol;
|
|
23
|
+
return (!!delegateProtocol.getDefaultDelegatee &&
|
|
24
|
+
!!delegateProtocol.getCurrentDelegateesForPublicKey &&
|
|
25
|
+
!!delegateProtocol.getCurrentDelegateesForAddress &&
|
|
26
|
+
!!delegateProtocol.getDelegateeDetails &&
|
|
27
|
+
!!delegateProtocol.isPublicKeyDelegating &&
|
|
28
|
+
!!delegateProtocol.isAddressDelegating &&
|
|
29
|
+
!!delegateProtocol.getDelegationDetailsFromPublicKey &&
|
|
30
|
+
!!delegateProtocol.getDelegationDetailsFromAddress &&
|
|
31
|
+
!!delegateProtocol.prepareDelegatorActionFromPublicKey);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvcHJvdG9jb2wvZGVsZWdhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5Q0FBeUM7QUFDekMsT0FBTyxFQUF3QyxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBRzFILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUV0RCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsUUFBdUI7SUFDMUQsTUFBTSxnQkFBZ0IsR0FBRyxRQUFpQyxDQUFBO0lBRTFELG9HQUFvRztJQUNwRyxNQUFNLHdCQUF3QixHQUFhLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQy9GLElBQUksZ0JBQWdCLFlBQVksYUFBYSxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDakgsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBRUQsT0FBTyxDQUNMLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUI7UUFDdEMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGdDQUFnQztRQUNuRCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsOEJBQThCO1FBQ2pELENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUI7UUFDdEMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQjtRQUN4QyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CO1FBQ3RDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxpQ0FBaUM7UUFDcEQsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLCtCQUErQjtRQUNsRCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsbUNBQW1DLENBQ3ZELENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLFFBQTJCO0lBQzlELE1BQU0sZ0JBQWdCLEdBQUcsUUFBc0QsQ0FBQTtJQUUvRSxPQUFPLENBQ0wsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQjtRQUN0QyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZ0NBQWdDO1FBQ25ELENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyw4QkFBOEI7UUFDakQsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQjtRQUN0QyxDQUFDLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCO1FBQ3hDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUI7UUFDdEMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGlDQUFpQztRQUNwRCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsK0JBQStCO1FBQ2xELENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxtQ0FBbUMsQ0FDdkQsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1pbXBsaWNpdC1jb2VyY2lvbiAqL1xuaW1wb3J0IHsgSUNvaW5EZWxlZ2F0ZVByb3RvY29sLCBJQ29pblByb3RvY29sLCBNYWluUHJvdG9jb2xTeW1ib2xzLCBTdWJQcm90b2NvbFN5bWJvbHMgfSBmcm9tICdAd2FsbGZyZWUtZGV2L2NvaW5saWItY29yZSdcbmltcG9ydCB7IEFpckdhcEFueVByb3RvY29sIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9tb2R1bGUta2l0J1xuaW1wb3J0IHsgQWlyR2FwRGVsZWdhdGVQcm90b2NvbCB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvbW9kdWxlLWtpdC9pbnRlcm5hbCdcbmltcG9ydCB7IFRlem9zUHJvdG9jb2wgfSBmcm9tICdAd2FsbGZyZWUtZGV2L3Rlem9zL3YwJ1xuXG5leHBvcnQgZnVuY3Rpb24gc3VwcG9ydHNWMERlbGVnYXRpb24ocHJvdG9jb2w6IElDb2luUHJvdG9jb2wpOiBwcm90b2NvbCBpcyBJQ29pbkRlbGVnYXRlUHJvdG9jb2wge1xuICBjb25zdCBkZWxlZ2F0ZVByb3RvY29sID0gcHJvdG9jb2wgYXMgSUNvaW5EZWxlZ2F0ZVByb3RvY29sXG5cbiAgLy8gdGVtcG9yYXJ5IHVudGlsIFRlem9zIHN1YnByb3RvY29scyBzdG9wIGluaGVyaXQgVGV6b3NQcm90b2NvbCBhbmQgaW1wbGVtZW50IElDb2luRGVsZWdhdGVQcm90b2NvbFxuICBjb25zdCBzdXBwb3J0aW5nVGV6b3NQcm90b2NvbHM6IHN0cmluZ1tdID0gW01haW5Qcm90b2NvbFN5bWJvbHMuWFRaLCBTdWJQcm90b2NvbFN5bWJvbHMuWFRaX0tUXVxuICBpZiAoZGVsZWdhdGVQcm90b2NvbCBpbnN0YW5jZW9mIFRlem9zUHJvdG9jb2wgJiYgIXN1cHBvcnRpbmdUZXpvc1Byb3RvY29scy5pbmNsdWRlcyhkZWxlZ2F0ZVByb3RvY29sLmlkZW50aWZpZXIpKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICByZXR1cm4gKFxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWZhdWx0RGVsZWdhdGVlICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldEN1cnJlbnREZWxlZ2F0ZWVzRm9yUHVibGljS2V5ICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldEN1cnJlbnREZWxlZ2F0ZWVzRm9yQWRkcmVzcyAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWxlZ2F0ZWVEZXRhaWxzICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmlzUHVibGljS2V5RGVsZWdhdGluZyAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5pc0FkZHJlc3NEZWxlZ2F0aW5nICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldERlbGVnYXRpb25EZXRhaWxzRnJvbVB1YmxpY0tleSAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWxlZ2F0aW9uRGV0YWlsc0Zyb21BZGRyZXNzICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLnByZXBhcmVEZWxlZ2F0b3JBY3Rpb25Gcm9tUHVibGljS2V5XG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN1cHBvcnRzVjFEZWxlZ2F0aW9uKHByb3RvY29sOiBBaXJHYXBBbnlQcm90b2NvbCk6IHByb3RvY29sIGlzIEFpckdhcEFueVByb3RvY29sICYgQWlyR2FwRGVsZWdhdGVQcm90b2NvbCB7XG4gIGNvbnN0IGRlbGVnYXRlUHJvdG9jb2wgPSBwcm90b2NvbCBhcyBBaXJHYXBBbnlQcm90b2NvbCAmIEFpckdhcERlbGVnYXRlUHJvdG9jb2xcblxuICByZXR1cm4gKFxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWZhdWx0RGVsZWdhdGVlICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldEN1cnJlbnREZWxlZ2F0ZWVzRm9yUHVibGljS2V5ICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldEN1cnJlbnREZWxlZ2F0ZWVzRm9yQWRkcmVzcyAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWxlZ2F0ZWVEZXRhaWxzICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmlzUHVibGljS2V5RGVsZWdhdGluZyAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5pc0FkZHJlc3NEZWxlZ2F0aW5nICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLmdldERlbGVnYXRpb25EZXRhaWxzRnJvbVB1YmxpY0tleSAmJlxuICAgICEhZGVsZWdhdGVQcm90b2NvbC5nZXREZWxlZ2F0aW9uRGV0YWlsc0Zyb21BZGRyZXNzICYmXG4gICAgISFkZWxlZ2F0ZVByb3RvY29sLnByZXBhcmVEZWxlZ2F0b3JBY3Rpb25Gcm9tUHVibGljS2V5XG4gIClcbn1cbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export function getMainIdentifier(subIdentifier) {
|
|
2
|
+
return subIdentifier.split('-')[0];
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9jb2wtaWRlbnRpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvcHJvdG9jb2wvcHJvdG9jb2wtaWRlbnRpZmllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsYUFBOEI7SUFDOUQsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBd0IsQ0FBQTtBQUMzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdG9jb2xTeW1ib2xzLCBNYWluUHJvdG9jb2xTeW1ib2xzIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9jb2lubGliLWNvcmUnXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYWluSWRlbnRpZmllcihzdWJJZGVudGlmaWVyOiBQcm90b2NvbFN5bWJvbHMpOiBNYWluUHJvdG9jb2xTeW1ib2xzIHtcbiAgcmV0dXJuIHN1YklkZW50aWZpZXIuc3BsaXQoJy0nKVswXSBhcyBNYWluUHJvdG9jb2xTeW1ib2xzXG59XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RuntimeMode } from '../../types/RuntimeMode';
|
|
2
|
+
export async function getProtocolAndNetworkIdentifier(mode, protocol, network) {
|
|
3
|
+
const protocolIdentifier = typeof protocol === 'string' ? protocol : await protocol.getIdentifier();
|
|
4
|
+
if (mode === RuntimeMode.OFFLINE) {
|
|
5
|
+
return protocolIdentifier;
|
|
6
|
+
}
|
|
7
|
+
const networkIdentifier = typeof protocol !== 'string'
|
|
8
|
+
? (await protocol.getOptions()).network.identifier
|
|
9
|
+
: typeof network === 'string'
|
|
10
|
+
? network
|
|
11
|
+
: network?.identifier;
|
|
12
|
+
return networkIdentifier !== undefined ? `${protocolIdentifier}:${networkIdentifier}` : protocolIdentifier;
|
|
13
|
+
}
|
|
14
|
+
export function splitProtocolNetworkIdentifier(protocolAndNetworkIdentifier) {
|
|
15
|
+
const [protocol, network] = protocolAndNetworkIdentifier.split(':', 2);
|
|
16
|
+
return { protocol: protocol, network };
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9jb2wtbmV0d29yay1pZGVudGlmaWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9wcm90b2NvbC9wcm90b2NvbC1uZXR3b3JrLWlkZW50aWZpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBRXJELE1BQU0sQ0FBQyxLQUFLLFVBQVUsK0JBQStCLENBQ25ELElBQWlCLEVBQ2pCLFFBQXlDLEVBQ3pDLE9BQWtDO0lBRWxDLE1BQU0sa0JBQWtCLEdBQVcsT0FBTyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzNHLElBQUksSUFBSSxLQUFLLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQyxPQUFPLGtCQUFrQixDQUFBO0lBQzNCLENBQUM7SUFFRCxNQUFNLGlCQUFpQixHQUNyQixPQUFPLFFBQVEsS0FBSyxRQUFRO1FBQzFCLENBQUMsQ0FBQyxDQUFDLE1BQU0sUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVU7UUFDbEQsQ0FBQyxDQUFDLE9BQU8sT0FBTyxLQUFLLFFBQVE7WUFDN0IsQ0FBQyxDQUFDLE9BQU87WUFDVCxDQUFDLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQTtJQUV6QixPQUFPLGlCQUFpQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxrQkFBa0IsSUFBSSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQTtBQUM1RyxDQUFDO0FBRUQsTUFBTSxVQUFVLDhCQUE4QixDQUFDLDRCQUFvQztJQUNqRixNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFhLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFFaEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUEyQixFQUFFLE9BQU8sRUFBRSxDQUFBO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ29pblByb3RvY29sLCBQcm90b2NvbE5ldHdvcmssIFByb3RvY29sU3ltYm9scyB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvY29pbmxpYi1jb3JlJ1xuaW1wb3J0IHsgUnVudGltZU1vZGUgfSBmcm9tICcuLi8uLi90eXBlcy9SdW50aW1lTW9kZSdcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFByb3RvY29sQW5kTmV0d29ya0lkZW50aWZpZXIoXG4gIG1vZGU6IFJ1bnRpbWVNb2RlLFxuICBwcm90b2NvbDogSUNvaW5Qcm90b2NvbCB8IFByb3RvY29sU3ltYm9scyxcbiAgbmV0d29yaz86IFByb3RvY29sTmV0d29yayB8IHN0cmluZ1xuKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgcHJvdG9jb2xJZGVudGlmaWVyOiBzdHJpbmcgPSB0eXBlb2YgcHJvdG9jb2wgPT09ICdzdHJpbmcnID8gcHJvdG9jb2wgOiBhd2FpdCBwcm90b2NvbC5nZXRJZGVudGlmaWVyKClcbiAgaWYgKG1vZGUgPT09IFJ1bnRpbWVNb2RlLk9GRkxJTkUpIHtcbiAgICByZXR1cm4gcHJvdG9jb2xJZGVudGlmaWVyXG4gIH1cblxuICBjb25zdCBuZXR3b3JrSWRlbnRpZmllcjogc3RyaW5nIHwgdW5kZWZpbmVkID1cbiAgICB0eXBlb2YgcHJvdG9jb2wgIT09ICdzdHJpbmcnXG4gICAgICA/IChhd2FpdCBwcm90b2NvbC5nZXRPcHRpb25zKCkpLm5ldHdvcmsuaWRlbnRpZmllclxuICAgICAgOiB0eXBlb2YgbmV0d29yayA9PT0gJ3N0cmluZydcbiAgICAgID8gbmV0d29ya1xuICAgICAgOiBuZXR3b3JrPy5pZGVudGlmaWVyXG5cbiAgcmV0dXJuIG5ldHdvcmtJZGVudGlmaWVyICE9PSB1bmRlZmluZWQgPyBgJHtwcm90b2NvbElkZW50aWZpZXJ9OiR7bmV0d29ya0lkZW50aWZpZXJ9YCA6IHByb3RvY29sSWRlbnRpZmllclxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRQcm90b2NvbE5ldHdvcmtJZGVudGlmaWVyKHByb3RvY29sQW5kTmV0d29ya0lkZW50aWZpZXI6IHN0cmluZyk6IHsgcHJvdG9jb2w6IFByb3RvY29sU3ltYm9sczsgbmV0d29yaz86IHN0cmluZyB9IHtcbiAgY29uc3QgW3Byb3RvY29sLCBuZXR3b3JrXTogc3RyaW5nW10gPSBwcm90b2NvbEFuZE5ldHdvcmtJZGVudGlmaWVyLnNwbGl0KCc6JywgMilcblxuICByZXR1cm4geyBwcm90b2NvbDogcHJvdG9jb2wgYXMgUHJvdG9jb2xTeW1ib2xzLCBuZXR3b3JrIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/* eslint-disable complexity */
|
|
2
|
+
import { AeternityProtocolNetwork, AeternityProtocolOptions } from '@wallfree-dev/aeternity/v0';
|
|
3
|
+
import { BitcoinProtocolNetwork, BitcoinProtocolOptions } from '@wallfree-dev/bitcoin/v0';
|
|
4
|
+
import { CosmosProtocolNetwork, CosmosProtocolOptions } from '@wallfree-dev/cosmos/v0';
|
|
5
|
+
import { EthereumProtocolNetwork, EthereumProtocolOptions } from '@wallfree-dev/ethereum/v0';
|
|
6
|
+
import { GroestlcoinProtocolNetwork, GroestlcoinProtocolOptions } from '@wallfree-dev/groestlcoin/v0';
|
|
7
|
+
import { KusamaProtocolNetwork, KusamaProtocolOptions, PolkadotProtocolNetwork, PolkadotProtocolOptions } from '@wallfree-dev/polkadot/v0';
|
|
8
|
+
import { MoonbaseProtocolNetwork, MoonbaseProtocolOptions, MoonriverProtocolNetwork, MoonriverProtocolOptions } from '@wallfree-dev/moonbeam/v0';
|
|
9
|
+
import { AstarProtocolNetwork, AstarProtocolOptions, ShidenProtocolNetwork, ShidenProtocolOptions } from '@wallfree-dev/astar/v0';
|
|
10
|
+
import { TezosBTCProtocolConfig, TezosBTCTezProtocolConfig, TezosCTezProtocolConfig, TezosDOGAProtocolConfig, TezosFAProtocolOptions, TezosKolibriUSDProtocolConfig, TezosPlentyProtocolConfig, TezosProtocolNetwork, TezosProtocolOptions, TezosQUIPUProtocolConfig, TezosSaplingProtocolOptions, TezosShieldedTezProtocolConfig, TezosSIRSProtocolConfig, TezosStakerProtocolConfig, TezosUBTCProtocolConfig, TezosUDEFIProtocolConfig, TezosUSDProtocolConfig, TezosUSDTProtocolConfig, TezosUUSDProtocolConfig, TezosWrappedProtocolConfig, TezosWRAPProtocolConfig, TezosYOUProtocolConfig } from '@wallfree-dev/tezos/v0';
|
|
11
|
+
import { MainProtocolSymbols, SubProtocolSymbols, Domain } from '@wallfree-dev/coinlib-core';
|
|
12
|
+
import { NotFoundError } from '@wallfree-dev/coinlib-core/errors';
|
|
13
|
+
import { MoonbeamProtocolOptions, MoonbeamProtocolNetwork } from '@wallfree-dev/moonbeam/v0/protocol/moonbeam/MoonbeamProtocolOptions';
|
|
14
|
+
import { TezosETHtzProtocolConfig } from '@wallfree-dev/tezos/v0/protocol/fa/TezosFAProtocolOptions';
|
|
15
|
+
import { ProtocolOptionsAdapter } from '../../protocol/adapter/protocol-v0-adapter';
|
|
16
|
+
import { convertNetworkV1ToV0 } from './protocol-v0-adapter';
|
|
17
|
+
export const getProtocolOptionsByIdentifierLegacy = (identifier, network) => {
|
|
18
|
+
switch (identifier) {
|
|
19
|
+
case MainProtocolSymbols.AE:
|
|
20
|
+
return new AeternityProtocolOptions(network ? network : new AeternityProtocolNetwork());
|
|
21
|
+
case MainProtocolSymbols.BTC:
|
|
22
|
+
case MainProtocolSymbols.BTC_SEGWIT:
|
|
23
|
+
return new BitcoinProtocolOptions(network ? network : new BitcoinProtocolNetwork());
|
|
24
|
+
case MainProtocolSymbols.ETH:
|
|
25
|
+
case SubProtocolSymbols.ETH_ERC20_XCHF:
|
|
26
|
+
case SubProtocolSymbols.ETH_ERC20:
|
|
27
|
+
return new EthereumProtocolOptions(network ? network : new EthereumProtocolNetwork());
|
|
28
|
+
case MainProtocolSymbols.GRS:
|
|
29
|
+
return new GroestlcoinProtocolOptions(network ? network : new GroestlcoinProtocolNetwork());
|
|
30
|
+
case MainProtocolSymbols.COSMOS:
|
|
31
|
+
return new CosmosProtocolOptions(network ? network : new CosmosProtocolNetwork());
|
|
32
|
+
case MainProtocolSymbols.POLKADOT:
|
|
33
|
+
return new PolkadotProtocolOptions(network ? network : new PolkadotProtocolNetwork());
|
|
34
|
+
case MainProtocolSymbols.KUSAMA:
|
|
35
|
+
return new KusamaProtocolOptions(network ? network : new KusamaProtocolNetwork());
|
|
36
|
+
case MainProtocolSymbols.MOONBASE:
|
|
37
|
+
return new MoonbaseProtocolOptions(network ? network : new MoonbaseProtocolNetwork());
|
|
38
|
+
case MainProtocolSymbols.MOONRIVER:
|
|
39
|
+
return new MoonriverProtocolOptions(network ? network : new MoonriverProtocolNetwork());
|
|
40
|
+
case MainProtocolSymbols.MOONBEAM:
|
|
41
|
+
return new MoonbeamProtocolOptions(network ? network : new MoonbeamProtocolNetwork());
|
|
42
|
+
case MainProtocolSymbols.ASTAR:
|
|
43
|
+
return new AstarProtocolOptions(network ? network : new AstarProtocolNetwork());
|
|
44
|
+
case MainProtocolSymbols.SHIDEN:
|
|
45
|
+
return new ShidenProtocolOptions(network ? network : new ShidenProtocolNetwork());
|
|
46
|
+
case MainProtocolSymbols.XTZ:
|
|
47
|
+
case SubProtocolSymbols.XTZ_KT:
|
|
48
|
+
return new TezosProtocolOptions(network ? network : new TezosProtocolNetwork());
|
|
49
|
+
case MainProtocolSymbols.XTZ_SHIELDED:
|
|
50
|
+
return network
|
|
51
|
+
? new TezosSaplingProtocolOptions(network, new TezosShieldedTezProtocolConfig())
|
|
52
|
+
: new TezosSaplingProtocolOptions();
|
|
53
|
+
case SubProtocolSymbols.XTZ_BTC:
|
|
54
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosBTCProtocolConfig());
|
|
55
|
+
case SubProtocolSymbols.XTZ_ETHTZ:
|
|
56
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosETHtzProtocolConfig());
|
|
57
|
+
case SubProtocolSymbols.XTZ_UUSD:
|
|
58
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosUUSDProtocolConfig());
|
|
59
|
+
case SubProtocolSymbols.XTZ_UBTC:
|
|
60
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosUBTCProtocolConfig());
|
|
61
|
+
case SubProtocolSymbols.XTZ_YOU:
|
|
62
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosYOUProtocolConfig());
|
|
63
|
+
case SubProtocolSymbols.XTZ_W:
|
|
64
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosWrappedProtocolConfig());
|
|
65
|
+
case SubProtocolSymbols.XTZ_KUSD:
|
|
66
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosKolibriUSDProtocolConfig());
|
|
67
|
+
case SubProtocolSymbols.XTZ_USD:
|
|
68
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosUSDProtocolConfig());
|
|
69
|
+
case SubProtocolSymbols.XTZ_USDT:
|
|
70
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosUSDTProtocolConfig());
|
|
71
|
+
case SubProtocolSymbols.XTZ_STKR:
|
|
72
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosStakerProtocolConfig());
|
|
73
|
+
case SubProtocolSymbols.XTZ_UDEFI:
|
|
74
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosUDEFIProtocolConfig());
|
|
75
|
+
case SubProtocolSymbols.XTZ_CTEZ:
|
|
76
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosCTezProtocolConfig());
|
|
77
|
+
case SubProtocolSymbols.XTZ_PLENTY:
|
|
78
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosPlentyProtocolConfig());
|
|
79
|
+
case SubProtocolSymbols.XTZ_WRAP:
|
|
80
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosWRAPProtocolConfig());
|
|
81
|
+
case SubProtocolSymbols.XTZ_QUIPU:
|
|
82
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosQUIPUProtocolConfig());
|
|
83
|
+
case SubProtocolSymbols.XTZ_DOGA:
|
|
84
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosDOGAProtocolConfig());
|
|
85
|
+
case SubProtocolSymbols.XTZ_SIRS:
|
|
86
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosSIRSProtocolConfig());
|
|
87
|
+
case SubProtocolSymbols.XTZ_BTC_TEZ:
|
|
88
|
+
return new TezosFAProtocolOptions(network ? network : new TezosProtocolNetwork(), new TezosBTCTezProtocolConfig());
|
|
89
|
+
default:
|
|
90
|
+
// Maybe we get an identifier of a sub-protocol that is not in the known list. In that case, get the options of the parent
|
|
91
|
+
if (identifier.includes('-')) {
|
|
92
|
+
return getProtocolOptionsByIdentifierLegacy(identifier.split('-')[0]);
|
|
93
|
+
}
|
|
94
|
+
throw new NotFoundError(Domain.UTILS, `No protocol options found for ${identifier}`);
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
const cache = {};
|
|
98
|
+
export const getProtocolOptionsByIdentifier = async (modulesController, identifier, network) => {
|
|
99
|
+
try {
|
|
100
|
+
return getProtocolOptionsByIdentifierLegacy(identifier, network);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
if (network) {
|
|
104
|
+
return new ProtocolOptionsAdapter(network);
|
|
105
|
+
}
|
|
106
|
+
if (!cache[identifier]) {
|
|
107
|
+
const defaultNetwork = await modulesController.getProtocolNetwork(identifier);
|
|
108
|
+
const blockExplorer = defaultNetwork ? await modulesController.getProtocolBlockExplorer(identifier, defaultNetwork) : undefined;
|
|
109
|
+
cache[identifier] = new ProtocolOptionsAdapter(convertNetworkV1ToV0(defaultNetwork ?? { name: 'Mainnet', type: 'mainnet', rpcUrl: '', blockExplorerUrl: '' }, blockExplorer));
|
|
110
|
+
}
|
|
111
|
+
return cache[identifier];
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9jb2wtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvcHJvdG9jb2wvcHJvdG9jb2wtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFDL0IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFDL0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDdEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDNUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDckcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDMUksT0FBTyxFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDaEosT0FBTyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFHakksT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsNkJBQTZCLEVBQzdCLHlCQUF5QixFQUN6QixvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLHdCQUF3QixFQUN4QiwyQkFBMkIsRUFDM0IsOEJBQThCLEVBQzlCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsdUJBQXVCLEVB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aUJBQW9DLEVBQ3BDLFVBQTJCLEVBQzNCLE9BQXlCLEVBQ0MsRUFBRTtJQUM1QixJQUFJLENBQUM7UUFDSCxPQUFPLG9DQUFvQyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNsRSxDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUM1QyxDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sY0FBYyxHQUFHLE1BQU0saUJBQWlCLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0UsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxNQUFNLGlCQUFpQixDQUFDLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO1lBRS9ILEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLHNCQUFzQixDQUM1QyxvQkFBb0IsQ0FBQyxjQUFjLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FDOUgsQ0FBQTtRQUNILENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUMxQixDQUFDO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgY29tcGxleGl0eSAqL1xuaW1wb3J0IHsgQWV0ZXJuaXR5UHJvdG9jb2xOZXR3b3JrLCBBZXRlcm5pdHlQcm90b2NvbE9wdGlvbnMgfSBmcm9tICdAd2FsbGZyZWUtZGV2L2FldGVybml0eS92MCdcbmltcG9ydCB7IEJpdGNvaW5Qcm90b2NvbE5ldHdvcmssIEJpdGNvaW5Qcm90b2NvbE9wdGlvbnMgfSBmcm9tICdAd2FsbGZyZWUtZGV2L2JpdGNvaW4vdjAnXG5pbXBvcnQgeyBDb3Ntb3NQcm90b2NvbE5ldHdvcmssIENvc21vc1Byb3RvY29sT3B0aW9ucyB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvY29zbW9zL3YwJ1xuaW1wb3J0IHsgRXRoZXJldW1Qcm90b2NvbE5ldHdvcmssIEV0aGVyZXVtUHJvdG9jb2xPcHRpb25zIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9ldGhlcmV1bS92MCdcbmltcG9ydCB7IEdyb2VzdGxjb2luUHJvdG9jb2xOZXR3b3JrLCBHcm9lc3RsY29pblByb3RvY29sT3B0aW9ucyB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvZ3JvZXN0bGNvaW4vdjAnXG5pbXBvcnQgeyBLdXNhbWFQcm90b2NvbE5ldHdvcmssIEt1c2FtYVByb3RvY29sT3B0aW9ucywgUG9sa2Fkb3RQcm90b2NvbE5ldHdvcmssIFBvbGthZG90UHJvdG9jb2xPcHRpb25zIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9wb2xrYWRvdC92MCdcbmltcG9ydCB7IE1vb25iYXNlUHJvdG9jb2xOZXR3b3JrLCBNb29uYmFzZVByb3RvY29sT3B0aW9ucywgTW9vbnJpdmVyUHJvdG9jb2xOZXR3b3JrLCBNb29ucml2ZXJQcm90b2NvbE9wdGlvbnMgfSBmcm9tICdAd2FsbGZyZWUtZGV2L21vb25iZWFtL3YwJ1xuaW1wb3J0IHsgQXN0YXJQcm90b2NvbE5ldHdvcmssIEFzdGFyUHJvdG9jb2xPcHRpb25zLCBTaGlkZW5Qcm90b2NvbE5ldHdvcmssIFNoaWRlblByb3RvY29sT3B0aW9ucyB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvYXN0YXIvdjAnXG5pbXBvcnQgeyBTb2xhbmFCbG9ja0V4cGxvcmVyIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9zb2xhbmEvdjEvYmxvY2stZXhwbG9yZXIvU29sYW5hQmxvY2tFeHBsb3JlcidcbmltcG9ydCB7IFNvbGFuYVByb3RvY29sTmV0d29yaywgU29sYW5hUHJvdG9jb2xPcHRpb25zIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9zb2xhbmEnXG5pbXBvcnQge1xuICBUZXpvc0JUQ1Byb3RvY29sQ29uZmlnLFxuICBUZXpvc0JUQ1RlelByb3RvY29sQ29uZmlnLFxuICBUZXpvc0NUZXpQcm90b2NvbENvbmZpZyxcbiAgVGV6b3NET0dBUHJvdG9jb2xDb25maWcsXG4gIFRlem9zRkFQcm90b2NvbE9wdGlvbnMsXG4gIFRlem9zS29saWJyaVVTRFByb3RvY29sQ29uZmlnLFxuICBUZXpvc1BsZW50eVByb3RvY29sQ29uZmlnLFxuICBUZXpvc1Byb3RvY29sTmV0d29yayxcbiAgVGV6b3NQcm90b2NvbE9wdGlvbnMsXG4gIFRlem9zUVVJUFVQcm90b2NvbENvbmZpZyxcbiAgVGV6b3NTYXBsaW5nUHJvdG9jb2xPcHRpb25zLFxuICBUZXpvc1NoaWVsZGVkVGV6UHJvdG9jb2xDb25maWcsXG4gIFRlem9zU0lSU1Byb3RvY29sQ29uZmlnLFxuICBUZXpvc1N0YWtlclByb3RvY29sQ29uZmlnLFxuICBUZXpvc1VCVENQcm90b2NvbENvbmZpZyxcbiAgVGV6b3NVREVGSVByb3RvY29sQ29uZmlnLFxuICBUZXpvc1VTRFByb3RvY29sQ29uZmlnLFxuICBUZXpvc1VTRFRQcm90b2NvbENvbmZpZyxcbiAgVGV6b3NVVVNEUHJvdG9jb2xDb25maWcsXG4gIFRlem9zV3JhcHBlZFByb3RvY29sQ29uZmlnLFxuICBUZXpvc1dSQVBQcm90b2NvbENvbmZpZyxcbiAgVGV6b3NZT1VQcm90b2NvbENvbmZpZ1xufSBmcm9tICdAd2FsbGZyZWUtZGV2L3Rlem9zL3YwJ1xuaW1wb3J0IHsgUHJvdG9jb2xTeW1ib2xzLCBQcm90b2NvbE5ldHdvcmssIE1haW5Qcm90b2NvbFN5bWJvbHMsIFN1YlByb3RvY29sU3ltYm9scywgRG9tYWluIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9jb2lubGliLWNvcmUnXG5pbXBvcnQgeyBOb3RGb3VuZEVycm9yIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9jb2lubGliLWNvcmUvZXJyb3JzJ1xuaW1wb3J0IHsgUHJvdG9jb2xPcHRpb25zIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9jb2lubGliLWNvcmUvdXRpbHMvUHJvdG9jb2xPcHRpb25zJ1xuaW1wb3J0IHsgTW9vbmJlYW1Qcm90b2NvbE9wdGlvbnMsIE1vb25iZWFtUHJvdG9jb2xOZXR3b3JrIH0gZnJvbSAnQHdhbGxmcmVlLWRldi9tb29uYmVhbS92MC9wcm90b2NvbC9tb29uYmVhbS9Nb29uYmVhbVByb3RvY29sT3B0aW9ucydcbmltcG9ydCB7IFRlem9zRVRIdHpQcm90b2NvbENvbmZpZyB9IGZyb20gJ0B3YWxsZnJlZS1kZXYvdGV6b3MvdjAvcHJvdG9jb2wvZmEvVGV6b3NGQVByb3RvY29sT3B0aW9ucydcbmltcG9ydCB7IFByb3RvY29sT3B0aW9uc0FkYXB0ZXIgfSBmcm9tICcuLi8uLi9wcm90b2NvbC9hZGFwdGVyL3Byb3RvY29sLXYwLWFkYXB0ZXInXG5pbXBvcnQgeyBNb2R1bGVzQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21vZHVsZXMvY29udHJvbGxlci9tb2R1bGVzLmNvbnRyb2xsZXInXG5pbXBvcnQgeyBjb252ZXJ0TmV0d29ya1YxVG9WMCB9IGZyb20gJy4vcHJvdG9jb2wtdjAtYWRhcHRlcidcblxuZXhwb3J0IGNvbnN0IGdldFByb3RvY29sT3B0aW9uc0J5SWRlbnRpZmllckxlZ2FjeTogKGlkZW50aWZpZXI6IFByb3RvY29sU3ltYm9scywgbmV0d29yaz86IFByb3RvY29sTmV0d29yaykgPT4gUHJvdG9jb2xPcHRpb25zID0gKFxuICBpZGVudGlmaWVyOiBQcm90b2NvbFN5bWJvbHMsXG4gIG5ldHdvcms/OiBQcm90b2NvbE5ldHdvcmtcbik6IFByb3RvY29sT3B0aW9ucyA9PiB7XG4gIHN3aXRjaCAoaWRlbnRpZmllcikge1xuICAgIGNhc2UgTWFpblByb3RvY29sU3ltYm9scy5BRTpcbiAgICAgIHJldHVybiBuZXcgQWV0ZXJuaXR5UHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBBZXRlcm5pdHlQcm90b2NvbE5ldHdvcmspIDogbmV3IEFldGVybml0eVByb3RvY29sTmV0d29yaygpKVxuICAgIGNhc2UgTWFpblByb3RvY29sU3ltYm9scy5CVEM6XG4gICAgY2FzZSBNYWluUHJvdG9jb2xTeW1ib2xzLkJUQ19TRUdXSVQ6XG4gICAgICByZXR1cm4gbmV3IEJpdGNvaW5Qcm90b2NvbE9wdGlvbnMobmV0d29yayA/IChuZXR3b3JrIGFzIEJpdGNvaW5Qcm90b2NvbE5ldHdvcmspIDogbmV3IEJpdGNvaW5Qcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuRVRIOlxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLkVUSF9FUkMyMF9YQ0hGOlxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLkVUSF9FUkMyMDpcbiAgICAgIHJldHVybiBuZXcgRXRoZXJldW1Qcm90b2NvbE9wdGlvbnMobmV0d29yayA/IChuZXR3b3JrIGFzIEV0aGVyZXVtUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBFdGhlcmV1bVByb3RvY29sTmV0d29yaygpKVxuICAgIGNhc2UgTWFpblByb3RvY29sU3ltYm9scy5HUlM6XG4gICAgICByZXR1cm4gbmV3IEdyb2VzdGxjb2luUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBHcm9lc3RsY29pblByb3RvY29sTmV0d29yaykgOiBuZXcgR3JvZXN0bGNvaW5Qcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuQ09TTU9TOlxuICAgICAgcmV0dXJuIG5ldyBDb3Ntb3NQcm90b2NvbE9wdGlvbnMobmV0d29yayA/IChuZXR3b3JrIGFzIENvc21vc1Byb3RvY29sTmV0d29yaykgOiBuZXcgQ29zbW9zUHJvdG9jb2xOZXR3b3JrKCkpXG4gICAgY2FzZSBNYWluUHJvdG9jb2xTeW1ib2xzLlBPTEtBRE9UOlxuICAgICAgcmV0dXJuIG5ldyBQb2xrYWRvdFByb3RvY29sT3B0aW9ucyhuZXR3b3JrID8gKG5ldHdvcmsgYXMgUG9sa2Fkb3RQcm90b2NvbE5ldHdvcmspIDogbmV3IFBvbGthZG90UHJvdG9jb2xOZXR3b3JrKCkpXG4gICAgY2FzZSBNYWluUHJvdG9jb2xTeW1ib2xzLktVU0FNQTpcbiAgICAgIHJldHVybiBuZXcgS3VzYW1hUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBLdXNhbWFQcm90b2NvbE5ldHdvcmspIDogbmV3IEt1c2FtYVByb3RvY29sTmV0d29yaygpKVxuICAgIGNhc2UgTWFpblByb3RvY29sU3ltYm9scy5NT09OQkFTRTpcbiAgICAgIHJldHVybiBuZXcgTW9vbmJhc2VQcm90b2NvbE9wdGlvbnMobmV0d29yayA/IChuZXR3b3JrIGFzIE1vb25iYXNlUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBNb29uYmFzZVByb3RvY29sTmV0d29yaygpKVxuICAgIGNhc2UgTWFpblByb3RvY29sU3ltYm9scy5NT09OUklWRVI6XG4gICAgICByZXR1cm4gbmV3IE1vb25yaXZlclByb3RvY29sT3B0aW9ucyhuZXR3b3JrID8gKG5ldHdvcmsgYXMgTW9vbnJpdmVyUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBNb29ucml2ZXJQcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuTU9PTkJFQU06XG4gICAgICByZXR1cm4gbmV3IE1vb25iZWFtUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBNb29uYmVhbVByb3RvY29sTmV0d29yaykgOiBuZXcgTW9vbmJlYW1Qcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuQVNUQVI6XG4gICAgICByZXR1cm4gbmV3IEFzdGFyUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBBc3RhclByb3RvY29sTmV0d29yaykgOiBuZXcgQXN0YXJQcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuU0hJREVOOlxuICAgICAgcmV0dXJuIG5ldyBTaGlkZW5Qcm90b2NvbE9wdGlvbnMobmV0d29yayA/IChuZXR3b3JrIGFzIFNoaWRlblByb3RvY29sTmV0d29yaykgOiBuZXcgU2hpZGVuUHJvdG9jb2xOZXR3b3JrKCkpXG4gICAgY2FzZSBNYWluUHJvdG9jb2xTeW1ib2xzLlhUWjpcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfS1Q6XG4gICAgICByZXR1cm4gbmV3IFRlem9zUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSlcbiAgICBjYXNlIE1haW5Qcm90b2NvbFN5bWJvbHMuWFRaX1NISUVMREVEOlxuICAgICAgcmV0dXJuIG5ldHdvcmtcbiAgICAgICAgPyBuZXcgVGV6b3NTYXBsaW5nUHJvdG9jb2xPcHRpb25zKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmssIG5ldyBUZXpvc1NoaWVsZGVkVGV6UHJvdG9jb2xDb25maWcoKSlcbiAgICAgICAgOiBuZXcgVGV6b3NTYXBsaW5nUHJvdG9jb2xPcHRpb25zKClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfQlRDOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc0JUQ1Byb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfRVRIVFo6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zRVRIdHpQcm90b2NvbENvbmZpZygpXG4gICAgICApXG4gICAgY2FzZSBTdWJQcm90b2NvbFN5bWJvbHMuWFRaX1VVU0Q6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zVVVTRFByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfVUJUQzpcbiAgICAgIHJldHVybiBuZXcgVGV6b3NGQVByb3RvY29sT3B0aW9ucyhcbiAgICAgICAgbmV0d29yayA/IChuZXR3b3JrIGFzIFRlem9zUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBUZXpvc1Byb3RvY29sTmV0d29yaygpLFxuICAgICAgICBuZXcgVGV6b3NVQlRDUHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLlhUWl9ZT1U6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zWU9VUHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLlhUWl9XOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc1dyYXBwZWRQcm90b2NvbENvbmZpZygpXG4gICAgICApXG4gICAgY2FzZSBTdWJQcm90b2NvbFN5bWJvbHMuWFRaX0tVU0Q6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zS29saWJyaVVTRFByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfVVNEOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc1VTRFByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfVVNEVDpcbiAgICAgIHJldHVybiBuZXcgVGV6b3NGQVByb3RvY29sT3B0aW9ucyhcbiAgICAgICAgbmV0d29yayA/IChuZXR3b3JrIGFzIFRlem9zUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBUZXpvc1Byb3RvY29sTmV0d29yaygpLFxuICAgICAgICBuZXcgVGV6b3NVU0RUUHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLlhUWl9TVEtSOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc1N0YWtlclByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfVURFRkk6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zVURFRklQcm90b2NvbENvbmZpZygpXG4gICAgICApXG4gICAgY2FzZSBTdWJQcm90b2NvbFN5bWJvbHMuWFRaX0NURVo6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zQ1RlelByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfUExFTlRZOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc1BsZW50eVByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfV1JBUDpcbiAgICAgIHJldHVybiBuZXcgVGV6b3NGQVByb3RvY29sT3B0aW9ucyhcbiAgICAgICAgbmV0d29yayA/IChuZXR3b3JrIGFzIFRlem9zUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBUZXpvc1Byb3RvY29sTmV0d29yaygpLFxuICAgICAgICBuZXcgVGV6b3NXUkFQUHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLlhUWl9RVUlQVTpcbiAgICAgIHJldHVybiBuZXcgVGV6b3NGQVByb3RvY29sT3B0aW9ucyhcbiAgICAgICAgbmV0d29yayA/IChuZXR3b3JrIGFzIFRlem9zUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBUZXpvc1Byb3RvY29sTmV0d29yaygpLFxuICAgICAgICBuZXcgVGV6b3NRVUlQVVByb3RvY29sQ29uZmlnKClcbiAgICAgIClcbiAgICBjYXNlIFN1YlByb3RvY29sU3ltYm9scy5YVFpfRE9HQTpcbiAgICAgIHJldHVybiBuZXcgVGV6b3NGQVByb3RvY29sT3B0aW9ucyhcbiAgICAgICAgbmV0d29yayA/IChuZXR3b3JrIGFzIFRlem9zUHJvdG9jb2xOZXR3b3JrKSA6IG5ldyBUZXpvc1Byb3RvY29sTmV0d29yaygpLFxuICAgICAgICBuZXcgVGV6b3NET0dBUHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGNhc2UgU3ViUHJvdG9jb2xTeW1ib2xzLlhUWl9TSVJTOlxuICAgICAgcmV0dXJuIG5ldyBUZXpvc0ZBUHJvdG9jb2xPcHRpb25zKFxuICAgICAgICBuZXR3b3JrID8gKG5ldHdvcmsgYXMgVGV6b3NQcm90b2NvbE5ldHdvcmspIDogbmV3IFRlem9zUHJvdG9jb2xOZXR3b3JrKCksXG4gICAgICAgIG5ldyBUZXpvc1NJUlNQcm90b2NvbENvbmZpZygpXG4gICAgICApXG4gICAgY2FzZSBTdWJQcm90b2NvbFN5bWJvbHMuWFRaX0JUQ19URVo6XG4gICAgICByZXR1cm4gbmV3IFRlem9zRkFQcm90b2NvbE9wdGlvbnMoXG4gICAgICAgIG5ldHdvcmsgPyAobmV0d29yayBhcyBUZXpvc1Byb3RvY29sTmV0d29yaykgOiBuZXcgVGV6b3NQcm90b2NvbE5ldHdvcmsoKSxcbiAgICAgICAgbmV3IFRlem9zQlRDVGV6UHJvdG9jb2xDb25maWcoKVxuICAgICAgKVxuICAgIGRlZmF1bHQ6XG4gICAgICAvLyBNYXliZSB3ZSBnZXQgYW4gaWRlbnRpZmllciBvZiBhIHN1Yi1wcm90b2NvbCB0aGF0IGlzIG5vdCBpbiB0aGUga25vd24gbGlzdC4gSW4gdGhhdCBjYXNlLCBnZXQgdGhlIG9wdGlvbnMgb2YgdGhlIHBhcmVudFxuICAgICAgaWYgKChpZGVudGlmaWVyIGFzIHN0cmluZykuaW5jbHVkZXMoJy0nKSkge1xuICAgICAgICByZXR1cm4gZ2V0UHJvdG9jb2xPcHRpb25zQnlJZGVudGlmaWVyTGVnYWN5KChpZGVudGlmaWVyIGFzIHN0cmluZykuc3BsaXQoJy0nKVswXSBhcyBhbnkpXG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihEb21haW4uVVRJTFMsIGBObyBwcm90b2NvbCBvcHRpb25zIGZvdW5kIGZvciAke2lkZW50aWZpZXJ9YClcbiAgfVxufVxuXG5jb25zdCBjYWNoZTogUmVjb3JkPHN0cmluZywgUHJvdG9jb2xPcHRpb25zPiA9IHt9XG5leHBvcnQgY29uc3QgZ2V0UHJvdG9jb2xPcHRpb25zQnlJZGVudGlmaWVyOiAoXG4gIG1vZHVsZXNDb250cm9sbGVyOiBNb2R1bGVzQ29udHJvbGxlcixcbiAgaWRlbnRpZmllcjogUHJvdG9jb2xTeW1ib2xzLFxuICBuZXR3b3JrPzogUHJvdG9jb2xOZXR3b3JrXG4pID0+IFByb21pc2U8UHJvdG9jb2xPcHRpb25zPiA9IGFzeW5jIChcbiAgbW9kdWxlc0NvbnRyb2xsZXI6IE1vZHVsZXNDb250cm9sbGVyLFxuICBpZGVudGlmaWVyOiBQcm90b2NvbFN5bWJvbHMsXG4gIG5ldHdvcms/OiBQcm90b2NvbE5ldHdvcmtcbik6IFByb21pc2U8UHJvdG9jb2xPcHRpb25zPiA9PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGdldFByb3RvY29sT3B0aW9uc0J5SWRlbnRpZmllckxlZ2FjeShpZGVudGlmaWVyLCBuZXR3b3JrKVxuICB9IGNhdGNoIHtcbiAgICBpZiAobmV0d29yaykge1xuICAgICAgcmV0dXJuIG5ldyBQcm90b2NvbE9wdGlvbnNBZGFwdGVyKG5ldHdvcmspXG4gICAgfVxuXG4gICAgaWYgKCFjYWNoZVtpZGVudGlmaWVyXSkge1xuICAgICAgY29uc3QgZGVmYXVsdE5ldHdvcmsgPSBhd2FpdCBtb2R1bGVzQ29udHJvbGxlci5nZXRQcm90b2NvbE5ldHdvcmsoaWRlbnRpZmllcilcbiAgICAgIGNvbnN0IGJsb2NrRXhwbG9yZXIgPSBkZWZhdWx0TmV0d29yayA/IGF3YWl0IG1vZHVsZXNDb250cm9sbGVyLmdldFByb3RvY29sQmxvY2tFeHBsb3JlcihpZGVudGlmaWVyLCBkZWZhdWx0TmV0d29yaykgOiB1bmRlZmluZWRcblxuICAgICAgY2FjaGVbaWRlbnRpZmllcl0gPSBuZXcgUHJvdG9jb2xPcHRpb25zQWRhcHRlcihcbiAgICAgICAgY29udmVydE5ldHdvcmtWMVRvVjAoZGVmYXVsdE5ldHdvcmsgPz8geyBuYW1lOiAnTWFpbm5ldCcsIHR5cGU6ICdtYWlubmV0JywgcnBjVXJsOiAnJywgYmxvY2tFeHBsb3JlclVybDogJycgfSwgYmxvY2tFeHBsb3JlcilcbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gY2FjaGVbaWRlbnRpZmllcl1cbiAgfVxufVxuIl19
|