├── .dockerignore
├── .eslintignore
├── .eslintrc.js
├── .gitattributes
├── .github
    ├── CODEOWNERS
    ├── ISSUE_TEMPLATE
    │   ├── config.yml
    │   ├── feature_request.md
    │   ├── keplr-dashboard-bug-report.md
    │   ├── keplr-extension-bug-report.md
    │   ├── keplr-mobile-bug-report.md
    │   └── libraries-bug-report.md
    └── workflows
    │   ├── chromatic.yml
    │   ├── lint.yml
    │   ├── publish.yml
    │   └── test.yml
├── .gitignore
├── .gitmodules
├── .husky
    └── pre-commit
├── .prettierignore
├── .prettierrc.js
├── .yarn
    ├── plugins
    │   └── @yarnpkg
    │   │   └── plugin-typescript.cjs
    └── releases
    │   └── yarn-3.4.1.cjs
├── .yarnrc.yml
├── LICENSE
├── README.md
├── apps
    ├── extension
    │   ├── .babelrc.json
    │   ├── .eslintignore
    │   ├── .infisical.json
    │   ├── .prettierignore
    │   ├── .storybook
    │   │   ├── main.js
    │   │   └── preview.js
    │   ├── jest.config.js
    │   ├── noop-keplr-wallet-private
    │   │   ├── build
    │   │   │   ├── index.d.ts
    │   │   │   ├── index.js
    │   │   │   └── index.js.map
    │   │   ├── index.ts
    │   │   └── package.json
    │   ├── package.json
    │   ├── scripts
    │   │   ├── lerna-lifecyle-version.mjs
    │   │   └── post-build.mjs
    │   ├── src
    │   │   ├── @types
    │   │   │   └── scrypt-js
    │   │   │   │   └── index.d.ts
    │   │   ├── analytics-amplitude.ts
    │   │   ├── analytics.ts
    │   │   ├── background.html
    │   │   ├── background
    │   │   │   └── background.ts
    │   │   ├── blocklist.html
    │   │   ├── bottom-tabs.tsx
    │   │   ├── components
    │   │   │   ├── address-book-modal
    │   │   │   │   └── index.tsx
    │   │   │   ├── address-item
    │   │   │   │   └── index.tsx
    │   │   │   ├── axis
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── types.ts
    │   │   │   │   ├── x.tsx
    │   │   │   │   └── y.tsx
    │   │   │   ├── bleed
    │   │   │   │   ├── bleed.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── box
    │   │   │   │   ├── box.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── button-text
    │   │   │   │   ├── button-text.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── button
    │   │   │   │   ├── approve-icon.tsx
    │   │   │   │   ├── button.stories.mdx
    │   │   │   │   ├── button.tsx
    │   │   │   │   ├── cancel-icon.tsx
    │   │   │   │   ├── helper._stories.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── left-arrow-icon.tsx
    │   │   │   │   ├── right-arrow-icon.tsx
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── checkbox
    │   │   │   │   ├── check-icon.tsx
    │   │   │   │   ├── checkbox.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── minus-icon.tsx
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── collapsible-list
    │   │   │   │   ├── collapsible-list.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── column
    │   │   │   │   ├── column.tsx
    │   │   │   │   ├── columns.stories.tsx
    │   │   │   │   ├── columns.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── contract-address-book-modal
    │   │   │   │   └── index.tsx
    │   │   │   ├── contract-item
    │   │   │   │   └── index.tsx
    │   │   │   ├── divder
    │   │   │   │   └── index.tsx
    │   │   │   ├── dropdown
    │   │   │   │   ├── dropdown.stories.tsx
    │   │   │   │   ├── dropdown.tsx
    │   │   │   │   ├── floating
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── empty-view
    │   │   │   │   └── index.tsx
    │   │   │   ├── full-horizontal-silder
    │   │   │   │   └── index.tsx
    │   │   │   ├── guide-box
    │   │   │   │   ├── guide-box.stories.tsx
    │   │   │   │   ├── guide-box.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── gutter
    │   │   │   │   └── index.tsx
    │   │   │   ├── icon-button
    │   │   │   │   └── index.tsx
    │   │   │   ├── icon
    │   │   │   │   ├── adjustment.tsx
    │   │   │   │   ├── apple.tsx
    │   │   │   │   ├── arrow-across.tsx
    │   │   │   │   ├── arrow-down-tray.tsx
    │   │   │   │   ├── arrow-down.tsx
    │   │   │   │   ├── arrow-drop-down.tsx
    │   │   │   │   ├── arrow-left.tsx
    │   │   │   │   ├── arrow-right-solid.tsx
    │   │   │   │   ├── arrow-right.tsx
    │   │   │   │   ├── arrow-top-right-on-square.tsx
    │   │   │   │   ├── arrow-up.tsx
    │   │   │   │   ├── article-outline.tsx
    │   │   │   │   ├── camera.tsx
    │   │   │   │   ├── check-circle.tsx
    │   │   │   │   ├── check-toggle.tsx
    │   │   │   │   ├── check.tsx
    │   │   │   │   ├── close.tsx
    │   │   │   │   ├── code-bracket.tsx
    │   │   │   │   ├── coin-outline.tsx
    │   │   │   │   ├── coins-plus-outline.tsx
    │   │   │   │   ├── copy-fill.tsx
    │   │   │   │   ├── copy-outline.tsx
    │   │   │   │   ├── diamond-star.tsx
    │   │   │   │   ├── document-text.tsx
    │   │   │   │   ├── ellipsis.tsx
    │   │   │   │   ├── exclamation-triangle.tsx
    │   │   │   │   ├── eye-slash.tsx
    │   │   │   │   ├── eye.tsx
    │   │   │   │   ├── folder-minus.tsx
    │   │   │   │   ├── google.tsx
    │   │   │   │   ├── graph-rising.tsx
    │   │   │   │   ├── home.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── information-outline.tsx
    │   │   │   │   ├── information-plain.tsx
    │   │   │   │   ├── information.tsx
    │   │   │   │   ├── key.tsx
    │   │   │   │   ├── keystone-text.tsx
    │   │   │   │   ├── keystone.tsx
    │   │   │   │   ├── link.tsx
    │   │   │   │   ├── loading.tsx
    │   │   │   │   ├── long-arrow-down.tsx
    │   │   │   │   ├── menu.tsx
    │   │   │   │   ├── message-icon.tsx
    │   │   │   │   ├── msg-adr36.tsx
    │   │   │   │   ├── msg-approve.tsx
    │   │   │   │   ├── msg-cancel-undelegate.tsx
    │   │   │   │   ├── msg-claim-reward.tsx
    │   │   │   │   ├── msg-custom.tsx
    │   │   │   │   ├── msg-delegate.tsx
    │   │   │   │   ├── msg-execute-contract.tsx
    │   │   │   │   ├── msg-receive.tsx
    │   │   │   │   ├── msg-redelegate.tsx
    │   │   │   │   ├── msg-register.tsx
    │   │   │   │   ├── msg-send.tsx
    │   │   │   │   ├── msg-swap.tsx
    │   │   │   │   ├── msg-undelegate.tsx
    │   │   │   │   ├── msg-vote.tsx
    │   │   │   │   ├── native-chain-mark.tsx
    │   │   │   │   ├── percentage.tsx
    │   │   │   │   ├── plus.tsx
    │   │   │   │   ├── profile-circle.tsx
    │   │   │   │   ├── profile-outlined.tsx
    │   │   │   │   ├── profile.tsx
    │   │   │   │   ├── qr-code.tsx
    │   │   │   │   ├── question.tsx
    │   │   │   │   ├── right-arrow.tsx
    │   │   │   │   ├── rocket-launch.tsx
    │   │   │   │   ├── search.tsx
    │   │   │   │   ├── setting.tsx
    │   │   │   │   ├── shield-exclamation.tsx
    │   │   │   │   ├── stack.tsx
    │   │   │   │   ├── star.tsx
    │   │   │   │   ├── trash.tsx
    │   │   │   │   ├── tree.tsx
    │   │   │   │   ├── types.ts
    │   │   │   │   ├── wallet.tsx
    │   │   │   │   ├── warning.tsx
    │   │   │   │   └── x-mark.tsx
    │   │   │   ├── image
    │   │   │   │   └── index.tsx
    │   │   │   ├── input
    │   │   │   │   ├── amount-input
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── input.tsx
    │   │   │   │   ├── fee-control
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── modal.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── label
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── memo-input
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── input.tsx
    │   │   │   │   ├── reciepient-input
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── input.tsx
    │   │   │   │   ├── search-text-input
    │   │   │   │   │   └── index.tsx
    │   │   │   │   └── text-input
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── password-text-input.tsx
    │   │   │   │   │   ├── styles.ts
    │   │   │   │   │   ├── text-input.stories.tsx
    │   │   │   │   │   ├── text-input.tsx
    │   │   │   │   │   └── types.ts
    │   │   │   ├── keystone
    │   │   │   │   ├── error.tsx
    │   │   │   │   └── progress.tsx
    │   │   │   ├── modal
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── internal
    │   │   │   │   │   ├── context.tsx
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── modal.tsx
    │   │   │   │   └── types.ts
    │   │   │   ├── radio-group
    │   │   │   │   ├── horizontal.stories.tsx
    │   │   │   │   ├── horizontal.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── layered
    │   │   │   │   │   ├── comp.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── styles.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── skeleton
    │   │   │   │   └── index.tsx
    │   │   │   ├── special-button
    │   │   │   │   ├── button.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── splash
    │   │   │   │   └── index.tsx
    │   │   │   ├── stack
    │   │   │   │   └── index.tsx
    │   │   │   ├── tag
    │   │   │   │   └── index.tsx
    │   │   │   ├── toggle
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── styles.ts
    │   │   │   │   ├── toggle.stories.tsx
    │   │   │   │   ├── toggle.tsx
    │   │   │   │   └── types.ts
    │   │   │   ├── tooltip
    │   │   │   │   ├── index.tsx
    │   │   │   │   └── portal.tsx
    │   │   │   ├── top-up
    │   │   │   │   └── index.tsx
    │   │   │   ├── transition
    │   │   │   │   ├── horizontal-collapse
    │   │   │   │   │   ├── collapse.stories.tsx
    │   │   │   │   │   ├── collapse.tsx
    │   │   │   │   │   ├── hook.ts
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── internal
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── vertical-resize
    │   │   │   │   │   │   ├── container.tsx
    │   │   │   │   │   │   ├── hook.ts
    │   │   │   │   │   │   └── index.ts
    │   │   │   │   ├── scene
    │   │   │   │   │   ├── fixed-width.stories.tsx
    │   │   │   │   │   ├── fixed-width.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── internal
    │   │   │   │   │   │   ├── base.tsx
    │   │   │   │   │   │   ├── context.ts
    │   │   │   │   │   │   ├── hook.ts
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   ├── resize-registry.tsx
    │   │   │   │   │   │   └── types.ts
    │   │   │   │   │   ├── scene.stories.tsx
    │   │   │   │   │   ├── scene.tsx
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── vertical-collapse
    │   │   │   │   │   ├── collapse.stories.tsx
    │   │   │   │   │   ├── collapse.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   └── vertical-size
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── internal
    │   │   │   │   │       ├── context.ts
    │   │   │   │   │       └── index.ts
    │   │   │   │   │   ├── types.ts
    │   │   │   │   │   ├── vertical-size.stories.tsx
    │   │   │   │   │   └── vertical-size.tsx
    │   │   │   ├── typography
    │   │   │   │   ├── base.tsx
    │   │   │   │   ├── body1.tsx
    │   │   │   │   ├── body2.tsx
    │   │   │   │   ├── body3.tsx
    │   │   │   │   ├── button1.tsx
    │   │   │   │   ├── button2.tsx
    │   │   │   │   ├── caption1.tsx
    │   │   │   │   ├── caption2.tsx
    │   │   │   │   ├── h1.tsx
    │   │   │   │   ├── h2.tsx
    │   │   │   │   ├── h3.tsx
    │   │   │   │   ├── h4.tsx
    │   │   │   │   ├── h5.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── mobile-h3.tsx
    │   │   │   │   ├── subtitle1.tsx
    │   │   │   │   ├── subtitle2.tsx
    │   │   │   │   ├── subtitle3.tsx
    │   │   │   │   └── subtitle4.tsx
    │   │   │   └── warning-box
    │   │   │   │   └── index.tsx
    │   │   ├── config.ts
    │   │   ├── config.ui.ts
    │   │   ├── content-scripts
    │   │   │   ├── content-scripts.ts
    │   │   │   ├── events.ts
    │   │   │   └── inject
    │   │   │   │   └── injected-script.ts
    │   │   ├── env.d.ts
    │   │   ├── error-boundary.tsx
    │   │   ├── font.d.ts
    │   │   ├── hooks
    │   │   │   ├── bitcoin
    │   │   │   │   ├── use-bitcoin-network-config.ts
    │   │   │   │   ├── use-get-inscriptions.ts
    │   │   │   │   ├── use-get-runes-outputs.ts
    │   │   │   │   ├── use-get-utxos.ts
    │   │   │   │   ├── use-psbt-validate.ts
    │   │   │   │   └── use-tx-configs-query-string.ts
    │   │   │   ├── claim
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── use-claim-all-each-state.ts
    │   │   │   │   ├── use-cosmos-claim-rewards.ts
    │   │   │   │   └── use-starknet-claim-rewards.ts
    │   │   │   ├── confirm
    │   │   │   │   ├── hook.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── internal.ts
    │   │   │   │   ├── provider.tsx
    │   │   │   │   └── types.ts
    │   │   │   ├── ethereum
    │   │   │   │   └── use-eip712-intent.ts
    │   │   │   ├── global-simplebar
    │   │   │   │   ├── hook.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── internal.ts
    │   │   │   │   ├── provider.tsx
    │   │   │   │   └── types.ts
    │   │   │   ├── index.ts
    │   │   │   ├── interaction.ts
    │   │   │   ├── notification
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── internal
    │   │   │   │   │   ├── context.tsx
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── provider.tsx
    │   │   │   │   └── types.ts
    │   │   │   ├── starknet
    │   │   │   │   └── use-tx-configs-query-string.ts
    │   │   │   ├── use-buy-support-service-infos.ts
    │   │   │   ├── use-copy-address.ts
    │   │   │   ├── use-earn-feature.ts
    │   │   │   ├── use-effect-once.ts
    │   │   │   ├── use-focus-on-mount.ts
    │   │   │   ├── use-get-all-non-native-chain.ts
    │   │   │   ├── use-get-apy.tsx
    │   │   │   ├── use-get-search-chains.ts
    │   │   │   ├── use-grouped-tokens-map.ts
    │   │   │   ├── use-ibc-channel-config-query-string.ts
    │   │   │   ├── use-previous.ts
    │   │   │   ├── use-price-change.ts
    │   │   │   ├── use-search.ts
    │   │   │   ├── use-token-tag.ts
    │   │   │   ├── use-topup.ts
    │   │   │   ├── use-tx-config-query-string.ts
    │   │   │   └── use-unmount.ts
    │   │   ├── index.html
    │   │   ├── index.tsx
    │   │   ├── keplr-earn-product-terms.html
    │   │   ├── languages
    │   │   │   ├── en.json
    │   │   │   ├── index.tsx
    │   │   │   ├── ko.json
    │   │   │   └── zh-cn.json
    │   │   ├── layouts
    │   │   │   └── header
    │   │   │   │   ├── components
    │   │   │   │       ├── back-button
    │   │   │   │       │   └── index.tsx
    │   │   │   │       ├── index.ts
    │   │   │   │       └── profile-button
    │   │   │   │       │   └── index.tsx
    │   │   │   │   ├── header.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   └── types.ts
    │   │   ├── ledger-grant.tsx
    │   │   ├── manifest.v2.firefox.json
    │   │   ├── manifest.v2.json
    │   │   ├── manifest.v3.json
    │   │   ├── pages
    │   │   │   ├── activities
    │   │   │   │   └── index.tsx
    │   │   │   ├── bitcoin
    │   │   │   │   ├── components
    │   │   │   │   │   ├── address-book-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── address-item
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── guide-box
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── input
    │   │   │   │   │   │   ├── amount-input
    │   │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   │   └── input.tsx
    │   │   │   │   │   │   ├── fee-control
    │   │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   │   ├── fee-summary
    │   │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   │   └── recipient-input
    │   │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   │   └── input.tsx
    │   │   │   │   │   └── transaction-fee-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── send
    │   │   │   │   │   └── index.tsx
    │   │   │   │   └── sign
    │   │   │   │   │   ├── message
    │   │   │   │   │       ├── index.ts
    │   │   │   │   │       ├── view.tsx
    │   │   │   │   │       └── wrapper.tsx
    │   │   │   │   │   └── tx
    │   │   │   │   │       ├── index.tsx
    │   │   │   │   │       ├── view.tsx
    │   │   │   │   │       └── wrapper.tsx
    │   │   │   ├── blocklist
    │   │   │   │   └── index.tsx
    │   │   │   ├── earn
    │   │   │   │   ├── amount
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── components
    │   │   │   │   │   ├── chip.tsx
    │   │   │   │   │   ├── description-modal.tsx
    │   │   │   │   │   ├── estimation-section.tsx
    │   │   │   │   │   ├── input.tsx
    │   │   │   │   │   ├── overview-balance-section.tsx
    │   │   │   │   │   ├── overview-claim-section.tsx
    │   │   │   │   │   ├── overview-external-link.tsx
    │   │   │   │   │   ├── overview-history-section.tsx
    │   │   │   │   │   └── use-earn-bottom-tag.ts
    │   │   │   │   ├── confirm-usdn-estimation
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── intro
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── noble-terms
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── overview
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── tutorial-modal
    │   │   │   │   │   │   ├── earn-claim-content.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── manage-earn-content.tsx
    │   │   │   │   ├── transfer
    │   │   │   │   │   ├── amount.tsx
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── intro.tsx
    │   │   │   │   ├── utils.ts
    │   │   │   │   └── withdraw
    │   │   │   │   │   └── amount.tsx
    │   │   │   ├── history-detail
    │   │   │   │   ├── common-bottom-section.tsx
    │   │   │   │   ├── decorate-msg-type.spec.ts
    │   │   │   │   ├── decorate-msg-type.ts
    │   │   │   │   ├── icon-base.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── msgs
    │   │   │   │   │   ├── delegate.tsx
    │   │   │   │   │   ├── evm-approve.tsx
    │   │   │   │   │   ├── evm-contract-call.tsx
    │   │   │   │   │   ├── evm-receive.tsx
    │   │   │   │   │   ├── evm-send.tsx
    │   │   │   │   │   ├── ibc-send-receive.tsx
    │   │   │   │   │   ├── ibc-send.tsx
    │   │   │   │   │   ├── ibc-swap-receive.tsx
    │   │   │   │   │   ├── ibc-swap.tsx
    │   │   │   │   │   ├── merged-claim-rewards.tsx
    │   │   │   │   │   ├── receive.tsx
    │   │   │   │   │   ├── redelegate.tsx
    │   │   │   │   │   ├── send.tsx
    │   │   │   │   │   ├── undelegate.tsx
    │   │   │   │   │   └── vote.tsx
    │   │   │   │   └── top-section.tsx
    │   │   │   ├── ibc-swap
    │   │   │   │   ├── components
    │   │   │   │   │   ├── slippage-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── swap-asset-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── swap-fee-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── swap-not-available-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── hooks
    │   │   │   │   │   └── use-swap-analytics.ts
    │   │   │   │   ├── index.tsx
    │   │   │   │   └── select-asset
    │   │   │   │   │   └── index.tsx
    │   │   │   ├── ibc-transfer
    │   │   │   │   ├── add-channel-modal
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── amount
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   └── select-channel
    │   │   │   │   │   └── index.tsx
    │   │   │   ├── main
    │   │   │   │   ├── available.tsx
    │   │   │   │   ├── components
    │   │   │   │   │   ├── available-tab-link-button-list
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── buttons
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── buy-crypto-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── chart
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── claim-all
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── connected-ecosystems
    │   │   │   │   │   │   ├── chain-selector.tsx
    │   │   │   │   │   │   ├── ecosystem-selector.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   ├── option-selector.tsx
    │   │   │   │   │   │   ├── types.ts
    │   │   │   │   │   │   └── utils.ts
    │   │   │   │   │   ├── context-menu
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── copy-address
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── deposit-modal
    │   │   │   │   │   │   ├── copy-address-scene.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── qr-code.tsx
    │   │   │   │   │   ├── empty-view
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── ibc-history-view
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── ibc-transfer-view
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── looking-for-chains
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── menu-bar
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── stake-with-keplr-dashboard-button
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── token-found-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── token
    │   │   │   │   │   │   ├── copy-address-button.tsx
    │   │   │   │   │   │   ├── grouped.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   ├── price-change-tag.tsx
    │   │   │   │   │   │   ├── token-tag.tsx
    │   │   │   │   │   │   └── wrapper-with-bottom-tag.tsx
    │   │   │   │   │   └── update-note-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── hooks
    │   │   │   │   │   └── use-balance-analytics.ts
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── layouts
    │   │   │   │   │   └── header.tsx
    │   │   │   │   ├── new-side-panel-header-top.tsx
    │   │   │   │   ├── staked.tsx
    │   │   │   │   └── token-detail
    │   │   │   │   │   ├── address-chip
    │   │   │   │   │       └── index.tsx
    │   │   │   │   │   ├── banners
    │   │   │   │   │       └── earn-apy-banner.tsx
    │   │   │   │   │   ├── circle-button.tsx
    │   │   │   │   │   ├── constants.ts
    │   │   │   │   │   ├── hook.ts
    │   │   │   │   │   ├── icon-in-circle.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── messages.tsx
    │   │   │   │   │   ├── mint-photon-button.tsx
    │   │   │   │   │   ├── modal.tsx
    │   │   │   │   │   ├── msg-items
    │   │   │   │   │       ├── atomone-mint-photon.tsx
    │   │   │   │   │       ├── base.tsx
    │   │   │   │   │       ├── bbn-claim-reward-from-btc-staking.tsx
    │   │   │   │   │       ├── bbn-create-btc-delegation.tsx
    │   │   │   │   │       ├── cancel-undelegate.tsx
    │   │   │   │   │       ├── delegate.tsx
    │   │   │   │   │       ├── evm-approve.tsx
    │   │   │   │   │       ├── evm-contract-call.tsx
    │   │   │   │   │       ├── evm-receive.tsx
    │   │   │   │   │       ├── evm-send.tsx
    │   │   │   │   │       ├── ibc-send-receive.tsx
    │   │   │   │   │       ├── ibc-send-refunded.tsx
    │   │   │   │   │       ├── ibc-send.tsx
    │   │   │   │   │       ├── ibc-swap-receive.tsx
    │   │   │   │   │       ├── ibc-swap-refunded.tsx
    │   │   │   │   │       ├── ibc-swap.tsx
    │   │   │   │   │       ├── index.tsx
    │   │   │   │   │       ├── logo.tsx
    │   │   │   │   │       ├── merged-claim-rewards.tsx
    │   │   │   │   │       ├── noble-deposit-usdc.tsx
    │   │   │   │   │       ├── noble-withdraw-usdc.tsx
    │   │   │   │   │       ├── receive.tsx
    │   │   │   │   │       ├── redelegate.tsx
    │   │   │   │   │       ├── send.tsx
    │   │   │   │   │       ├── skeleton.tsx
    │   │   │   │   │       ├── undelegate.tsx
    │   │   │   │   │       ├── unknown-chain-image.tsx
    │   │   │   │   │       └── vote.tsx
    │   │   │   │   │   ├── receive-modal
    │   │   │   │   │       └── index.tsx
    │   │   │   │   │   ├── staked-balance.tsx
    │   │   │   │   │   ├── token-info.tsx
    │   │   │   │   │   └── types.ts
    │   │   │   ├── manage-chains
    │   │   │   │   ├── components
    │   │   │   │   │   ├── all-native-toggle-item.tsx
    │   │   │   │   │   ├── chain-toggle-item.tsx
    │   │   │   │   │   ├── connect-ledger-modal.tsx
    │   │   │   │   │   ├── ecosystem-filter-dropdown.tsx
    │   │   │   │   │   ├── nested-token-item.tsx
    │   │   │   │   │   ├── select-derivation-path-modal.tsx
    │   │   │   │   │   └── toggle-item-header.tsx
    │   │   │   │   ├── hooks
    │   │   │   │   │   └── use-key-coin-type-finalize.ts
    │   │   │   │   └── index.tsx
    │   │   │   ├── manage-view-asset-token-list
    │   │   │   │   └── index.tsx
    │   │   │   ├── permission
    │   │   │   │   ├── basic-access-for-bitcoin
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── basic-access-for-evm
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── basic-access-for-starknet
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── basic-access
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── get-chain-infos
    │   │   │   │   │   └── index.tsx
    │   │   │   │   └── index.tsx
    │   │   │   ├── register
    │   │   │   │   ├── back-up-private-key
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── components
    │   │   │   │   │   ├── bip-44-path
    │   │   │   │   │   │   ├── hook.ts
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   ├── state.ts
    │   │   │   │   │   │   ├── styles.ts
    │   │   │   │   │   │   └── view.tsx
    │   │   │   │   │   ├── copy-to-clipboard
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── form
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   └── name-password.tsx
    │   │   │   │   │   ├── header
    │   │   │   │   │   │   ├── context.tsx
    │   │   │   │   │   │   ├── header.tsx
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   └── types.ts
    │   │   │   │   │   ├── help-desk-button
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── register-scene-box
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── typography
    │   │   │   │   │   │   ├── base.tsx
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   ├── register-h1.tsx
    │   │   │   │   │   │   ├── register-h2.tsx
    │   │   │   │   │   │   ├── register-h3.tsx
    │   │   │   │   │   │   └── register-h4.tsx
    │   │   │   │   ├── connect-hardware
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── connect-keystone
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   ├── scan.tsx
    │   │   │   │   │   └── usb.tsx
    │   │   │   │   ├── connect-ledger
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── enable-chains
    │   │   │   │   │   ├── components
    │   │   │   │   │   │   ├── chain-item.tsx
    │   │   │   │   │   │   ├── enable-chains-arrow-down-icon.tsx
    │   │   │   │   │   │   ├── enable-chains-arrow-up-icon.tsx
    │   │   │   │   │   │   ├── native-chain-section-icon-dm.tsx
    │   │   │   │   │   │   ├── native-chain-section-icon-lm.tsx
    │   │   │   │   │   │   ├── native-chain-section.tsx
    │   │   │   │   │   │   └── next-step-chain-item.tsx
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── finalize-key
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── intro-existing-user
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── intro-new-user
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── intro
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── name-password-hardware
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── name-password
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── new-mnemonic
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── styles.ts
    │   │   │   │   ├── pages
    │   │   │   │   │   └── welcome
    │   │   │   │   │   │   ├── components
    │   │   │   │   │   │       ├── check-icon
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │       ├── index.ts
    │   │   │   │   │   │       ├── link-item
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │       ├── pin-icon
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │       ├── pin-view
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │       ├── puzzle-icon
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │       └── twitter-icon
    │   │   │   │   │   │       │   └── index.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── styled.ts
    │   │   │   │   ├── recover-mnemonic
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── select-derivation-path
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── styles.ts
    │   │   │   │   ├── utils
    │   │   │   │   │   └── check-button-position-and-scroll-to-button.ts
    │   │   │   │   └── verify-mnemonic
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── verifying-box.tsx
    │   │   │   ├── send
    │   │   │   │   ├── amount
    │   │   │   │   │   ├── ibc-transfer
    │   │   │   │   │   │   ├── destination-chain-view.tsx
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   └── modal.tsx
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── swap-fee-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   └── select-asset
    │   │   │   │   │   └── index.tsx
    │   │   │   ├── setting
    │   │   │   │   ├── about
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── advanced
    │   │   │   │   │   ├── delete-suggest-chain
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── endpoint
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── components
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── page-button
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── styles.ts
    │   │   │   │   │   └── setting-list
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── contacts
    │   │   │   │   │   ├── add
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── list
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── general
    │   │   │   │   │   ├── authz
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── revoke
    │   │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── fiat
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   ├── language
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── link-keplr-mobile
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── theme
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── security
    │   │   │   │   │   ├── auto-lock
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── change-password
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   └── permission
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   └── token
    │   │   │   │   │   ├── add
    │   │   │   │   │       └── index.tsx
    │   │   │   │   │   └── manage
    │   │   │   │   │       └── index.tsx
    │   │   │   ├── sign
    │   │   │   │   ├── components
    │   │   │   │   │   ├── amount-view
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── styles.ts
    │   │   │   │   │   ├── arbitrary-message
    │   │   │   │   │   │   ├── arbitrary-message-data-view.tsx
    │   │   │   │   │   │   ├── arbitrary-message-header.tsx
    │   │   │   │   │   │   ├── arbitrary-message-origin.tsx
    │   │   │   │   │   │   └── arbitrary-message-wallet-details.tsx
    │   │   │   │   │   ├── eth-tx
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   ├── registry.tsx
    │   │   │   │   │   │   ├── render
    │   │   │   │   │   │   │   ├── execute-contract.tsx
    │   │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   │   ├── send-token.tsx
    │   │   │   │   │   │   │   └── tx-base.tsx
    │   │   │   │   │   │   └── types.ts
    │   │   │   │   │   ├── fee-summary
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── high-fee-warning
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── keystone-usb-box.tsx
    │   │   │   │   │   ├── keystone
    │   │   │   │   │   │   ├── display.tsx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   └── scan.tsx
    │   │   │   │   │   ├── ledger-guide-box.tsx
    │   │   │   │   │   ├── message-item
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── messages
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   ├── registry.tsx
    │   │   │   │   │   │   ├── render
    │   │   │   │   │   │   │   ├── agoric-provision.tsx
    │   │   │   │   │   │   │   ├── agoric-wallet-spend-action.tsx
    │   │   │   │   │   │   │   ├── atomone-mint-photon.tsx
    │   │   │   │   │   │   │   ├── claim-btc-delegation-reward.tsx
    │   │   │   │   │   │   │   ├── claim-rewards.tsx
    │   │   │   │   │   │   │   ├── create-btc-delegation.tsx
    │   │   │   │   │   │   │   ├── custom-icon.tsx
    │   │   │   │   │   │   │   ├── delegate.tsx
    │   │   │   │   │   │   │   ├── execute-contract.tsx
    │   │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   │   ├── msg-skeleton.tsx
    │   │   │   │   │   │   │   ├── pay-packet-fee.tsx
    │   │   │   │   │   │   │   ├── redelegate.tsx
    │   │   │   │   │   │   │   ├── send.tsx
    │   │   │   │   │   │   │   ├── transfer.tsx
    │   │   │   │   │   │   │   ├── undelegate.tsx
    │   │   │   │   │   │   │   ├── vote.tsx
    │   │   │   │   │   │   │   └── wasm-message-view.tsx
    │   │   │   │   │   │   └── types.ts
    │   │   │   │   │   └── view-data-button
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── cosmos
    │   │   │   │   │   ├── adr36.tsx
    │   │   │   │   │   ├── icns
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── tx
    │   │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   │   ├── view.tsx
    │   │   │   │   │   │   └── wrapper.tsx
    │   │   │   │   ├── ethereum
    │   │   │   │   │   ├── index.tsx
    │   │   │   │   │   ├── views
    │   │   │   │   │   │   ├── sign-eip712-view.tsx
    │   │   │   │   │   │   ├── sign-message-view.tsx
    │   │   │   │   │   │   └── sign-tx-view.tsx
    │   │   │   │   │   └── wrapper.tsx
    │   │   │   │   └── utils
    │   │   │   │   │   ├── agoric
    │   │   │   │   │       ├── display-amount.ts
    │   │   │   │   │       └── unmarshal.ts
    │   │   │   │   │   ├── cosmos-ledger-sign.ts
    │   │   │   │   │   ├── handle-bitcoin-sign.ts
    │   │   │   │   │   ├── handle-cosmos-sign.ts
    │   │   │   │   │   ├── handle-eth-sign.ts
    │   │   │   │   │   ├── handle-starknet-sign.ts
    │   │   │   │   │   ├── keystone.ts
    │   │   │   │   │   └── ledger-types.ts
    │   │   │   ├── starknet
    │   │   │   │   ├── components
    │   │   │   │   │   ├── account-activation-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── address-book-modal
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── address-item
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── input
    │   │   │   │   │   │   ├── amount-input
    │   │   │   │   │   │       ├── index.ts
    │   │   │   │   │   │       └── input.tsx
    │   │   │   │   │   │   ├── fee-control
    │   │   │   │   │   │       ├── index.tsx
    │   │   │   │   │   │       └── modal.tsx
    │   │   │   │   │   │   └── reciepient-input
    │   │   │   │   │   │       ├── index.ts
    │   │   │   │   │   │       └── input.tsx
    │   │   │   │   ├── send
    │   │   │   │   │   └── index.tsx
    │   │   │   │   └── sign
    │   │   │   │   │   ├── message
    │   │   │   │   │       ├── index.tsx
    │   │   │   │   │       └── view.tsx
    │   │   │   │   │   └── tx
    │   │   │   │   │       ├── index.tsx
    │   │   │   │   │       └── view.tsx
    │   │   │   ├── suggest-chain
    │   │   │   │   ├── components
    │   │   │   │   │   ├── community-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── origin-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   │   └── raw-info
    │   │   │   │   │   │   └── index.tsx
    │   │   │   │   └── index.tsx
    │   │   │   ├── tx-result
    │   │   │   │   ├── failed.tsx
    │   │   │   │   ├── index.tsx
    │   │   │   │   ├── pending.tsx
    │   │   │   │   └── success.tsx
    │   │   │   ├── unlock
    │   │   │   │   └── index.tsx
    │   │   │   └── wallet
    │   │   │   │   ├── change-name
    │   │   │   │       └── index.tsx
    │   │   │   │   ├── delete
    │   │   │   │       └── index.tsx
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── select
    │   │   │   │       └── index.tsx
    │   │   │   │   └── show-sensitive
    │   │   │   │       └── index.tsx
    │   │   ├── popup-size.ts
    │   │   ├── public
    │   │   │   └── assets
    │   │   │   │   ├── brand-sub-text.png
    │   │   │   │   ├── brand-text-fit-logo-height.png
    │   │   │   │   ├── brand-text.png
    │   │   │   │   ├── font
    │   │   │   │       ├── Inter-Black.ttf
    │   │   │   │       ├── Inter-Bold.ttf
    │   │   │   │       ├── Inter-ExtraBold.ttf
    │   │   │   │       ├── Inter-ExtraLight.ttf
    │   │   │   │       ├── Inter-Light.ttf
    │   │   │   │       ├── Inter-Medium.ttf
    │   │   │   │       ├── Inter-Regular.ttf
    │   │   │   │       ├── Inter-SemiBold.ttf
    │   │   │   │       ├── Inter-Thin.ttf
    │   │   │   │       ├── NotoSansKR-Bold.woff2
    │   │   │   │       ├── NotoSansKR-Medium.woff2
    │   │   │   │       ├── NotoSansKR-Regular.woff2
    │   │   │   │       └── ko-text-range.txt
    │   │   │   │   ├── icns-logo.png
    │   │   │   │   ├── icns-logo.svg
    │   │   │   │   ├── icon-click-cursor.png
    │   │   │   │   ├── icon
    │   │   │   │       ├── icon-128.png
    │   │   │   │       ├── icon-16.png
    │   │   │   │       ├── icon-48.png
    │   │   │   │       ├── icon-beta-128.png
    │   │   │   │       ├── icon-beta-16.png
    │   │   │   │       └── icon-beta-48.png
    │   │   │   │   ├── img
    │   │   │   │       ├── atom-o.svg
    │   │   │   │       ├── blocklist.svg
    │   │   │   │       ├── broken-link.svg
    │   │   │   │       ├── chain-icon-alt.png
    │   │   │   │       ├── circle-wave.png
    │   │   │   │       ├── congrats-bird-dark.png
    │   │   │   │       ├── congrats-bird-light.png
    │   │   │   │       ├── copy-address-no-search-result-light.png
    │   │   │   │       ├── copy-address-no-search-result.png
    │   │   │   │       ├── dapp-icon-alt.svg
    │   │   │   │       ├── earn-usdc-dark.png
    │   │   │   │       ├── earn-usdc-light.png
    │   │   │   │       ├── ethereum.svg
    │   │   │   │       ├── ext_btc-dark.gif
    │   │   │   │       ├── ext_btc-light.gif
    │   │   │   │       ├── fiat-on-ramp
    │   │   │   │       │   ├── moonpay.svg
    │   │   │   │       │   ├── swapped.svg
    │   │   │   │       │   └── transak.svg
    │   │   │   │       ├── icns-banner.png
    │   │   │   │       ├── icns-icon-light.png
    │   │   │   │       ├── icns-icon.png
    │   │   │   │       ├── icns-mark.png
    │   │   │   │       ├── icon-click-pointer.png
    │   │   │   │       ├── icons8-cancel.svg
    │   │   │   │       ├── icons8-checked.svg
    │   │   │   │       ├── icons8-lock.svg
    │   │   │   │       ├── icons8-pen.svg
    │   │   │   │       ├── icons8-test-tube.svg
    │   │   │   │       ├── icons8-trash-can.svg
    │   │   │   │       ├── icons8-usb-2.svg
    │   │   │   │       ├── intro-hardware-wallet.png
    │   │   │   │       ├── intro-logo-light.png
    │   │   │   │       ├── intro-logo.png
    │   │   │   │       ├── keystone
    │   │   │   │       │   ├── tutorial1.png
    │   │   │   │       │   ├── tutorial2.png
    │   │   │   │       │   ├── tutorial3.png
    │   │   │   │       │   └── tutorial4.png
    │   │   │   │       ├── ledger-terra.svg
    │   │   │   │       ├── locked-keplr-logo-128.png
    │   │   │   │       ├── main-empty-balance-light.png
    │   │   │   │       ├── main-empty-balance.png
    │   │   │   │       ├── main-empty-staking.png
    │   │   │   │       ├── register-new-recovery-phrase-blur-light.png
    │   │   │   │       ├── register-new-recovery-phrase-blur.png
    │   │   │   │       ├── side-menu-classic-mode.png
    │   │   │   │       ├── side-menu-side-panel-ribbon-light.png
    │   │   │   │       ├── side-menu-side-panel-ribbon.png
    │   │   │   │       ├── side-menu-side-panel.png
    │   │   │   │       ├── sign-adr36.png
    │   │   │   │       ├── stargaze_banner.png
    │   │   │   │       ├── trash.svg
    │   │   │   │       ├── unlock-dark.png
    │   │   │   │       ├── unlock-light.png
    │   │   │   │       └── unlock.png
    │   │   │   │   ├── logo-256.png
    │   │   │   │   ├── logo-beta-256.png
    │   │   │   │   ├── lottie
    │   │   │   │       ├── register
    │   │   │   │       │   ├── check-circle-icon-light.json
    │   │   │   │       │   ├── check-circle-icon.json
    │   │   │   │       │   ├── creating-light.json
    │   │   │   │       │   ├── creating.json
    │   │   │   │       │   ├── intro.json
    │   │   │   │       │   └── seed.json
    │   │   │   │       ├── tx-result
    │   │   │   │       │   ├── failed.json
    │   │   │   │       │   ├── pending.json
    │   │   │   │       │   └── success.json
    │   │   │   │       ├── unlock
    │   │   │   │       │   ├── logo-light.json
    │   │   │   │       │   └── logo.json
    │   │   │   │       └── wallet
    │   │   │   │       │   ├── delete.json
    │   │   │   │       │   ├── mnemonic.json
    │   │   │   │       │   ├── scan.json
    │   │   │   │       │   ├── shield-light.json
    │   │   │   │       │   └── shield.json
    │   │   │   │   └── svg
    │   │   │   │       ├── arrow-left.svg
    │   │   │   │       ├── arrow-right-outline.svg
    │   │   │   │       ├── arrow-right-primary.svg
    │   │   │   │       ├── error.svg
    │   │   │   │       ├── export-to-mobile.svg
    │   │   │   │       ├── for-developer.svg
    │   │   │   │       ├── github-dark.svg
    │   │   │   │       ├── info-mark.svg
    │   │   │   │       ├── loading.svg
    │   │   │   │       ├── megaphone.svg
    │   │   │   │       ├── scanner.svg
    │   │   │   │       └── warning-primary.svg
    │   │   ├── register.tsx
    │   │   ├── route-page-analytics.tsx
    │   │   ├── stores
    │   │   │   ├── chain
    │   │   │   │   └── index.tsx
    │   │   │   ├── huge-queries
    │   │   │   │   ├── all-token-map-state.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── sort.spec.ts
    │   │   │   │   └── sort.ts
    │   │   │   ├── index.tsx
    │   │   │   ├── root.tsx
    │   │   │   ├── token-contracts
    │   │   │   │   ├── contracts.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   └── types.ts
    │   │   │   └── ui-config
    │   │   │   │   ├── address-book.ts
    │   │   │   │   ├── changelog.ts
    │   │   │   │   ├── copy-address.ts
    │   │   │   │   ├── ibc-swap.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── manage-view-asset-token.ts
    │   │   │   │   ├── new-chain.ts
    │   │   │   │   └── select-wallet.ts
    │   │   ├── stories
    │   │   │   ├── docs
    │   │   │   │   └── main.stories.mdx
    │   │   │   └── example
    │   │   │   │   ├── fluent-button.stories.mdx
    │   │   │   │   └── helper._stories.tsx
    │   │   ├── styles
    │   │   │   ├── colors.ts
    │   │   │   ├── global-popup.ts
    │   │   │   ├── global-side-panel.ts
    │   │   │   ├── global.ts
    │   │   │   ├── index.ts
    │   │   │   ├── scrollbar.ts
    │   │   │   └── spring.ts
    │   │   ├── theme
    │   │   │   ├── index.tsx
    │   │   │   └── styled.d.ts
    │   │   ├── use-auto-lock-monitoring.ts
    │   │   ├── use-load-fonts.ts
    │   │   ├── use-page-change-scroll-top.tsx
    │   │   ├── utils
    │   │   │   ├── amount-to-ambiguous-string.ts
    │   │   │   ├── browser-api.ts
    │   │   │   ├── fragment.ts
    │   │   │   ├── get-babylon-unbonding-remaining-time.ts
    │   │   │   ├── global-events.ts
    │   │   │   ├── hex-to-rgba.ts
    │   │   │   ├── index.ts
    │   │   │   ├── keystone.ts
    │   │   │   ├── ledger.ts
    │   │   │   ├── set-interaction-data-href.ts
    │   │   │   ├── should-top-up-sign-options.ts
    │   │   │   └── side-panel.ts
    │   │   └── window.d.ts
    │   ├── tsconfig.json
    │   ├── tsconfig.noop.json
    │   └── webpack.config.js
    ├── hooks-internal
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── ibc-swap
    │   │   │   ├── amount.ts
    │   │   │   ├── index.ts
    │   │   │   └── use.ts
    │   │   ├── index.ts
    │   │   └── noble-earn
    │   │   │   ├── amount.ts
    │   │   │   └── index.ts
    │   └── tsconfig.json
    └── stores-internal
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │       ├── index.ts
    │       ├── internal
    │       │   ├── chain-info.ts
    │       │   └── index.ts
    │       ├── price-changes
    │       │   ├── index.ts
    │       │   └── types.ts
    │       ├── skip
    │       │   ├── assets-from-source.ts
    │       │   ├── assets.ts
    │       │   ├── chains.ts
    │       │   ├── ibc-pfm-transfer.ts
    │       │   ├── ibc-swap.ts
    │       │   ├── index.ts
    │       │   ├── msgs-direct.ts
    │       │   ├── queries.ts
    │       │   ├── route.ts
    │       │   └── types.ts
    │       └── swap-usage
    │       │   ├── index.ts
    │       │   ├── queries.ts
    │       │   └── swap-usage.ts
    │   └── tsconfig.json
├── docker
    ├── Dockerfile
    └── create-firefox-archive
    │   └── Dockerfile
├── docs
    ├── .eslintignore
    ├── .eslintrc.js
    ├── .gitignore
    ├── docs
    │   ├── getting-started
    │   │   ├── connect-to-keplr.mdx
    │   │   └── typescript-support.md
    │   ├── guide
    │   │   ├── broadcast-tx.md
    │   │   ├── custom-event.md
    │   │   ├── enable-connection.mdx
    │   │   ├── get-key.md
    │   │   ├── rainbowkit-custom-wallet.md
    │   │   ├── sign-a-message.md
    │   │   ├── sign-arbitrary.md
    │   │   └── suggest-chain.md
    │   ├── intro
    │   │   └── index.md
    │   ├── mobile
    │   │   ├── deeplink.md
    │   │   └── wallet-connect.md
    │   ├── multi-ecosystem-support
    │   │   ├── bitcoin.md
    │   │   ├── evm.md
    │   │   └── starknet.md
    │   └── use-with
    │   │   ├── cosmjs.md
    │   │   └── secretjs.md
    ├── docusaurus.config.ts
    ├── package.json
    ├── sidebars.ts
    ├── src
    │   ├── css
    │   │   └── custom.css
    │   └── pages
    │   │   ├── index.module.css
    │   │   ├── index.tsx
    │   │   └── markdown-page.md
    ├── static
    │   ├── .nojekyll
    │   ├── img
    │   │   ├── favicon.ico
    │   │   ├── guide
    │   │   │   ├── enable-chain-evm-example.png
    │   │   │   ├── enable-chain-example.png
    │   │   │   ├── enable-chain-starknet-example.png
    │   │   │   ├── manage-wc-example.png
    │   │   │   ├── sign-arbitrary-example.png
    │   │   │   ├── sign-message-evm-example.png
    │   │   │   ├── sign-message-example.png
    │   │   │   └── wc-request-example.png
    │   │   ├── keplr-logo-256.png
    │   │   └── keplr-logo.svg
    │   └── og-image.png
    ├── tsconfig.json
    └── yarn.lock
├── etc
    └── noop
    │   ├── README.md
    │   ├── index.js
    │   └── package.json
├── lerna.json
├── package.json
├── packages
    ├── analytics
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── package.json
    │   ├── src
    │   │   └── index.tsx
    │   └── tsconfig.json
    ├── background
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── analytics
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── auto-lock-account
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.spec.ts
    │   │   │   └── service.ts
    │   │   ├── chains-ui
    │   │   │   ├── constants.ts
    │   │   │   ├── foreground
    │   │   │   │   ├── constants.ts
    │   │   │   │   ├── handler.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── init.ts
    │   │   │   │   ├── messages.ts
    │   │   │   │   └── service.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── chains-update
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── chains
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── index.ts
    │   │   ├── interaction
    │   │   │   ├── constants.ts
    │   │   │   ├── foreground
    │   │   │   │   ├── constants.ts
    │   │   │   │   ├── handler.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── init.ts
    │   │   │   │   ├── messages.ts
    │   │   │   │   ├── service.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── keyring-bitcoin
    │   │   │   ├── bip322.ts
    │   │   │   ├── bip380.ts
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── helper.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── rate-limiter.test.ts
    │   │   │   ├── rate-limiter.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-cosmos
    │   │   │   ├── amino-sign-doc.spec.ts
    │   │   │   ├── amino-sign-doc.ts
    │   │   │   ├── constants.ts
    │   │   │   ├── eip712.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-ethereum
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── helper.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-keystone
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── keyring-ledger
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-mnemonic
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-private-key
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   └── service.ts
    │   │   ├── keyring-starknet
    │   │   │   ├── account-impl.ts
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── keyring
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── legacy
    │   │   │   │   ├── crypto.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── manage-view-asset-token
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── permission-interactive
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── permission
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── helper.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── migrate
    │   │   │   │   └── index.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── phishing-list
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.spec.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.spec.ts
    │   │   │   ├── service.ts
    │   │   │   ├── utils.spec.ts
    │   │   │   └── utils.ts
    │   │   ├── recent-send-history
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── secret-wasm
    │   │   │   ├── constants.ts
    │   │   │   ├── enigma-utils.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── settings
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── side-panel
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── token-cw20
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── token-erc20
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── token-scan
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── tx-ethereum
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── tx
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── messages.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   │   ├── utils
    │   │   │   └── index.ts
    │   │   └── vault
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── service.spec.ts
    │   │   │   ├── service.ts
    │   │   │   └── types.ts
    │   └── tsconfig.json
    ├── chain-validator
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── basic.ts
    │   │   ├── connection.ts
    │   │   ├── feature.spec.ts
    │   │   ├── feature.ts
    │   │   ├── index.ts
    │   │   ├── schema.spec.ts
    │   │   └── schema.ts
    │   └── tsconfig.json
    ├── common
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── coin
    │   │   │   └── index.ts
    │   │   ├── denom
    │   │   │   ├── denom.spec.ts
    │   │   │   └── index.ts
    │   │   ├── escape
    │   │   │   ├── escape.spec.ts
    │   │   │   └── index.ts
    │   │   ├── icns
    │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── json
    │   │   │   ├── index.ts
    │   │   │   ├── sort.spec.ts
    │   │   │   └── sort.ts
    │   │   ├── kv-store
    │   │   │   ├── base.spec.ts
    │   │   │   ├── base.ts
    │   │   │   ├── extension.ts
    │   │   │   ├── index.ts
    │   │   │   ├── indexed-db.ts
    │   │   │   ├── interface.ts
    │   │   │   ├── local.ts
    │   │   │   ├── memory.ts
    │   │   │   ├── multi-get.ts
    │   │   │   └── prefix.ts
    │   │   ├── mnemonic
    │   │   │   └── index.ts
    │   │   ├── mobx
    │   │   │   ├── etc.ts
    │   │   │   └── index.ts
    │   │   ├── retry
    │   │   │   └── index.ts
    │   │   ├── service-worker
    │   │   │   └── index.ts
    │   │   ├── sleep
    │   │   │   └── index.ts
    │   │   └── utils
    │   │   │   ├── debouncer.spec.ts
    │   │   │   ├── debouncer.ts
    │   │   │   └── index.ts
    │   └── tsconfig.json
    ├── cosmjs-test
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   └── cosmjs.spec.ts
    │   └── tsconfig.json
    ├── cosmos
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── account
    │   │   │   ├── account.spec.ts
    │   │   │   └── index.ts
    │   │   ├── adr-36
    │   │   │   ├── amino.spec.ts
    │   │   │   ├── amino.ts
    │   │   │   └── index.ts
    │   │   ├── bech32
    │   │   │   ├── index.ts
    │   │   │   └── test.spec.ts
    │   │   ├── chain-id
    │   │   │   ├── cosmos.ts
    │   │   │   ├── ethermint.ts
    │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── signing
    │   │   │   ├── encode.ts
    │   │   │   └── index.ts
    │   │   ├── stargate
    │   │   │   ├── codec
    │   │   │   │   ├── index.ts
    │   │   │   │   └── unknown.ts
    │   │   │   ├── decoder
    │   │   │   │   ├── decode.spec.ts
    │   │   │   │   └── index.ts
    │   │   │   ├── index.ts
    │   │   │   └── wrapper
    │   │   │   │   └── index.ts
    │   │   └── tx-tracer
    │   │   │   └── index.ts
    │   └── tsconfig.json
    ├── crypto
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── ecc-adapter.ts
    │   │   ├── hash.spec.ts
    │   │   ├── hash.ts
    │   │   ├── index.ts
    │   │   ├── key.spec.ts
    │   │   ├── key.ts
    │   │   ├── mnemonic.spec.ts
    │   │   └── mnemonic.ts
    │   └── tsconfig.json
    ├── hooks-bitcoin
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── index.ts
    │   │   └── tx
    │   │   │   ├── amount.ts
    │   │   │   ├── available-balance.ts
    │   │   │   ├── chain.ts
    │   │   │   ├── errors.ts
    │   │   │   ├── fee-rate.ts
    │   │   │   ├── fee.ts
    │   │   │   ├── index.ts
    │   │   │   ├── psbt-simulator.ts
    │   │   │   ├── recipient.ts
    │   │   │   ├── send-tx.ts
    │   │   │   ├── sender.ts
    │   │   │   ├── tx-size.ts
    │   │   │   ├── types.ts
    │   │   │   └── validate.ts
    │   └── tsconfig.json
    ├── hooks-starknet
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── index.ts
    │   │   └── tx
    │   │   │   ├── amount.ts
    │   │   │   ├── chain.ts
    │   │   │   ├── errors.ts
    │   │   │   ├── fee.ts
    │   │   │   ├── gas-simulator.ts
    │   │   │   ├── gas.ts
    │   │   │   ├── index.ts
    │   │   │   ├── name-service-starknet-id.ts
    │   │   │   ├── name-service.ts
    │   │   │   ├── noop-amount.ts
    │   │   │   ├── recipient.ts
    │   │   │   ├── send-tx.ts
    │   │   │   ├── sender.ts
    │   │   │   ├── types.ts
    │   │   │   └── validate.ts
    │   └── tsconfig.json
    ├── hooks
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── ibc
    │   │   │   ├── amount.ts
    │   │   │   ├── channel.ts
    │   │   │   ├── errors.ts
    │   │   │   ├── index.ts
    │   │   │   ├── reciepient.ts
    │   │   │   ├── send-ibc-transfer.ts
    │   │   │   └── types.ts
    │   │   ├── index.ts
    │   │   ├── sign-doc
    │   │   │   ├── amount.ts
    │   │   │   ├── helper.ts
    │   │   │   └── index.ts
    │   │   └── tx
    │   │   │   ├── amount.ts
    │   │   │   ├── chain.ts
    │   │   │   ├── delegate-tx.ts
    │   │   │   ├── errors.ts
    │   │   │   ├── fee.ts
    │   │   │   ├── gas-simulator.ts
    │   │   │   ├── gas.ts
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   ├── memo.ts
    │   │   │   ├── name-service-ens.ts
    │   │   │   ├── name-service-icns.ts
    │   │   │   ├── name-service.ts
    │   │   │   ├── recipient.ts
    │   │   │   ├── redelegate-tx.ts
    │   │   │   ├── send-tx.ts
    │   │   │   ├── send-types.ts
    │   │   │   ├── sender.ts
    │   │   │   ├── staked-amount.ts
    │   │   │   ├── types.ts
    │   │   │   ├── undelegate-tx.ts
    │   │   │   └── validate.ts
    │   └── tsconfig.json
    ├── ledger-cosmos
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── app.ts
    │   │   ├── constants.ts
    │   │   ├── device.ts
    │   │   ├── index.ts
    │   │   └── types.ts
    │   └── tsconfig.json
    ├── mobx-utils
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── index.ts
    │   │   └── mobx
    │   │   │   ├── debounce.ts
    │   │   │   ├── etc.ts
    │   │   │   └── index.ts
    │   └── tsconfig.json
    ├── popup
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   └── index.ts
    │   └── tsconfig.json
    ├── proto-types
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── README.md
    │   ├── outputHash
    │   ├── package.json
    │   └── proto-types-gen
    │   │   ├── proto
    │   │       ├── agoric
    │   │       │   └── swingset
    │   │       │   │   └── msgs.proto
    │   │       ├── amino
    │   │       │   └── amino.proto
    │   │       ├── atomone
    │   │       │   ├── feemarket
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── gov
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   ├── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── gov.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── gov.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   └── photon
    │   │       │   │   └── v1
    │   │       │   │       ├── genesis.proto
    │   │       │   │       ├── photon.proto
    │   │       │   │       ├── query.proto
    │   │       │   │       └── tx.proto
    │   │       ├── babylon
    │   │       │   ├── btccheckpoint
    │   │       │   │   └── v1
    │   │       │   │   │   ├── btccheckpoint.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── btclightclient
    │   │       │   │   └── v1
    │   │       │   │   │   ├── btclightclient.proto
    │   │       │   │   │   ├── event.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── btcstaking
    │   │       │   │   └── v1
    │   │       │   │   │   ├── btcstaking.proto
    │   │       │   │   │   ├── events.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── pop.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── checkpointing
    │   │       │   │   └── v1
    │   │       │   │   │   ├── bls_key.proto
    │   │       │   │   │   ├── checkpoint.proto
    │   │       │   │   │   ├── events.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── epoching
    │   │       │   │   └── v1
    │   │       │   │   │   ├── epoching.proto
    │   │       │   │   │   ├── events.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── finality
    │   │       │   │   └── v1
    │   │       │   │   │   ├── events.proto
    │   │       │   │   │   ├── finality.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── incentive
    │   │       │   │   ├── genesis.proto
    │   │       │   │   ├── incentive.proto
    │   │       │   │   ├── params.proto
    │   │       │   │   ├── query.proto
    │   │       │   │   ├── rewards.proto
    │   │       │   │   └── tx.proto
    │   │       │   ├── mint
    │   │       │   │   └── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── mint.proto
    │   │       │   │   │   └── query.proto
    │   │       │   └── monitor
    │   │       │   │   └── v1
    │   │       │   │       ├── genesis.proto
    │   │       │   │       └── query.proto
    │   │       ├── circle
    │   │       │   └── cctp
    │   │       │   │   └── v1
    │   │       │   │       └── tx.proto
    │   │       ├── cosmos
    │   │       │   ├── auth
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── auth.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   └── query.proto
    │   │       │   ├── authz
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── authz.proto
    │   │       │   │   │   ├── event.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── bank
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── authz.proto
    │   │       │   │   │   ├── bank.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── base
    │   │       │   │   ├── abci
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── abci.proto
    │   │       │   │   ├── kv
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── kv.proto
    │   │       │   │   ├── query
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── pagination.proto
    │   │       │   │   ├── reflection
    │   │       │   │   │   ├── v1beta1
    │   │       │   │   │   │   └── reflection.proto
    │   │       │   │   │   └── v2alpha1
    │   │       │   │   │   │   └── reflection.proto
    │   │       │   │   ├── snapshots
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── snapshot.proto
    │   │       │   │   ├── store
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   ├── commit_info.proto
    │   │       │   │   │   │   ├── listening.proto
    │   │       │   │   │   │   └── snapshot.proto
    │   │       │   │   ├── tendermint
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── query.proto
    │   │       │   │   └── v1beta1
    │   │       │   │   │   └── coin.proto
    │   │       │   ├── capability
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── capability.proto
    │   │       │   │   │   └── genesis.proto
    │   │       │   ├── crisis
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── crypto
    │   │       │   │   ├── ed25519
    │   │       │   │   │   └── keys.proto
    │   │       │   │   ├── multisig
    │   │       │   │   │   ├── keys.proto
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── multisig.proto
    │   │       │   │   ├── secp256k1
    │   │       │   │   │   └── keys.proto
    │   │       │   │   └── secp256r1
    │   │       │   │   │   └── keys.proto
    │   │       │   ├── distribution
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── distribution.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── evidence
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── evidence.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── feegrant
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── feegrant.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── genutil
    │   │       │   │   └── v1beta1
    │   │       │   │   │   └── genesis.proto
    │   │       │   ├── gov
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── gov.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── mint
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── mint.proto
    │   │       │   │   │   └── query.proto
    │   │       │   ├── msg
    │   │       │   │   └── v1
    │   │       │   │   │   └── msg.proto
    │   │       │   ├── params
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   └── query.proto
    │   │       │   ├── slashing
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── slashing.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── staking
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── authz.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── staking.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── tx
    │   │       │   │   ├── signing
    │   │       │   │   │   └── v1beta1
    │   │       │   │   │   │   └── signing.proto
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── service.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── upgrade
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── upgrade.proto
    │   │       │   └── vesting
    │   │       │   │   └── v1beta1
    │   │       │   │       ├── tx.proto
    │   │       │   │       └── vesting.proto
    │   │       ├── cosmwasm
    │   │       │   └── wasm
    │   │       │   │   └── v1
    │   │       │   │       ├── genesis.proto
    │   │       │   │       ├── ibc.proto
    │   │       │   │       ├── proposal.proto
    │   │       │   │       ├── query.proto
    │   │       │   │       ├── tx.proto
    │   │       │   │       └── types.proto
    │   │       ├── ethermint
    │   │       │   ├── crypto
    │   │       │   │   └── v1
    │   │       │   │   │   └── ethsecp256k1
    │   │       │   │   │       └── keys.proto
    │   │       │   ├── evm
    │   │       │   │   └── v1
    │   │       │   │   │   ├── evm.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── feemarket
    │   │       │   │   └── v1
    │   │       │   │   │   ├── feemarket.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   └── query.proto
    │   │       │   └── types
    │   │       │   │   └── v1
    │   │       │   │       ├── account.proto
    │   │       │   │       ├── indexer.proto
    │   │       │   │       └── web3.proto
    │   │       ├── ibc
    │   │       │   ├── applications
    │   │       │   │   ├── fee
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   ├── ack.proto
    │   │       │   │   │   │   ├── fee.proto
    │   │       │   │   │   │   ├── genesis.proto
    │   │       │   │   │   │   ├── metadata.proto
    │   │       │   │   │   │   ├── query.proto
    │   │       │   │   │   │   └── tx.proto
    │   │       │   │   └── transfer
    │   │       │   │   │   ├── v1
    │   │       │   │   │       ├── genesis.proto
    │   │       │   │   │       ├── query.proto
    │   │       │   │   │       ├── transfer.proto
    │   │       │   │   │       └── tx.proto
    │   │       │   │   │   └── v2
    │   │       │   │   │       └── packet.proto
    │   │       │   ├── core
    │   │       │   │   ├── channel
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   ├── channel.proto
    │   │       │   │   │   │   ├── genesis.proto
    │   │       │   │   │   │   ├── query.proto
    │   │       │   │   │   │   └── tx.proto
    │   │       │   │   ├── client
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   ├── client.proto
    │   │       │   │   │   │   ├── genesis.proto
    │   │       │   │   │   │   ├── query.proto
    │   │       │   │   │   │   └── tx.proto
    │   │       │   │   ├── commitment
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── commitment.proto
    │   │       │   │   ├── connection
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   ├── connection.proto
    │   │       │   │   │   │   ├── genesis.proto
    │   │       │   │   │   │   ├── query.proto
    │   │       │   │   │   │   └── tx.proto
    │   │       │   │   ├── port
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── query.proto
    │   │       │   │   └── types
    │   │       │   │   │   └── v1
    │   │       │   │   │       └── genesis.proto
    │   │       │   └── lightclients
    │   │       │   │   ├── localhost
    │   │       │   │       └── v1
    │   │       │   │       │   └── localhost.proto
    │   │       │   │   ├── solomachine
    │   │       │   │       ├── v1
    │   │       │   │       │   └── solomachine.proto
    │   │       │   │       └── v2
    │   │       │   │       │   └── solomachine.proto
    │   │       │   │   └── tendermint
    │   │       │   │       └── v1
    │   │       │   │           └── tendermint.proto
    │   │       ├── initia
    │   │       │   ├── bank
    │   │       │   │   └── v1
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── crypto
    │   │       │   │   └── v1beta1
    │   │       │   │   │   └── ethsecp256k1
    │   │       │   │   │       └── keys.proto
    │   │       │   ├── distribution
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── distribution.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── gov
    │   │       │   │   └── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── gov.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── ibchooks
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── tx.proto
    │   │       │   │   │   └── types.proto
    │   │       │   ├── intertx
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── move
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── auth.proto
    │   │       │   │   │   ├── authz.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── tx.proto
    │   │       │   │   │   └── types.proto
    │   │       │   ├── mstaking
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── authz.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── staking.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   ├── reward
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   └── v1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   ├── tx.proto
    │   │       │   │   │   └── types.proto
    │   │       │   └── tx
    │   │       │   │   └── v1
    │   │       │   │       └── query.proto
    │   │       ├── noble
    │   │       │   ├── dollar
    │   │       │   │   ├── module
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   └── module.proto
    │   │       │   │   ├── portal
    │   │       │   │   │   ├── ntt
    │   │       │   │   │   │   └── v1
    │   │       │   │   │   │   │   ├── manager.proto
    │   │       │   │   │   │   │   ├── ntt.proto
    │   │       │   │   │   │   │   └── transceiver.proto
    │   │       │   │   │   └── v1
    │   │       │   │   │   │   ├── events.proto
    │   │       │   │   │   │   ├── genesis.proto
    │   │       │   │   │   │   ├── injection.proto
    │   │       │   │   │   │   ├── portal.proto
    │   │       │   │   │   │   ├── query.proto
    │   │       │   │   │   │   └── tx.proto
    │   │       │   │   ├── v1
    │   │       │   │   │   ├── dollar.proto
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── tx.proto
    │   │       │   │   └── vaults
    │   │       │   │   │   └── v1
    │   │       │   │   │       ├── genesis.proto
    │   │       │   │   │       ├── query.proto
    │   │       │   │   │       ├── tx.proto
    │   │       │   │   │       └── vaults.proto
    │   │       │   └── swap
    │   │       │   │   ├── module
    │   │       │   │       └── v1
    │   │       │   │       │   └── module.proto
    │   │       │   │   ├── stableswap
    │   │       │   │       └── v1
    │   │       │   │       │   ├── events.proto
    │   │       │   │       │   ├── genesis.proto
    │   │       │   │       │   ├── pool.proto
    │   │       │   │       │   ├── position.proto
    │   │       │   │       │   ├── query.proto
    │   │       │   │       │   └── tx.proto
    │   │       │   │   └── v1
    │   │       │   │       ├── algorithm.proto
    │   │       │   │       ├── events.proto
    │   │       │   │       ├── genesis.proto
    │   │       │   │       ├── pool.proto
    │   │       │   │       ├── query.proto
    │   │       │   │       ├── rate.proto
    │   │       │   │       ├── swap.proto
    │   │       │   │       └── tx.proto
    │   │       ├── secret
    │   │       │   ├── compute
    │   │       │   │   └── v1beta1
    │   │       │   │   │   ├── genesis.proto
    │   │       │   │   │   ├── msg.proto
    │   │       │   │   │   ├── params.proto
    │   │       │   │   │   ├── query.proto
    │   │       │   │   │   └── types.proto
    │   │       │   └── registration
    │   │       │   │   └── v1beta1
    │   │       │   │       ├── genesis.proto
    │   │       │   │       ├── msg.proto
    │   │       │   │       ├── query.proto
    │   │       │   │       ├── remote_attestation
    │   │       │   │           └── types.proto
    │   │       │   │       └── types.proto
    │   │       ├── stride
    │   │       │   ├── stakedym
    │   │       │   │   ├── genesis.proto
    │   │       │   │   ├── query.proto
    │   │       │   │   ├── stakedym.proto
    │   │       │   │   └── tx.proto
    │   │       │   ├── stakeibc
    │   │       │   │   ├── README.md
    │   │       │   │   ├── address_unbonding.proto
    │   │       │   │   ├── callbacks.proto
    │   │       │   │   ├── epoch_tracker.proto
    │   │       │   │   ├── genesis.proto
    │   │       │   │   ├── gov.proto
    │   │       │   │   ├── host_zone.proto
    │   │       │   │   ├── ica_account.proto
    │   │       │   │   ├── packet.proto
    │   │       │   │   ├── params.proto
    │   │       │   │   ├── query.proto
    │   │       │   │   ├── tx.proto
    │   │       │   │   └── validator.proto
    │   │       │   └── staketia
    │   │       │   │   ├── genesis.proto
    │   │       │   │   ├── query.proto
    │   │       │   │   ├── staketia.proto
    │   │       │   │   └── tx.proto
    │   │       └── thorchain
    │   │       │   └── v1
    │   │       │       ├── common
    │   │       │           └── common.proto
    │   │       │       ├── thorchain
    │   │       │           └── genesis.proto
    │   │       │       └── types
    │   │       │           ├── genesis.proto
    │   │       │           ├── misc.proto
    │   │       │           ├── msg_add_liquidity.proto
    │   │       │           ├── msg_ban.proto
    │   │       │           ├── msg_bond.proto
    │   │       │           ├── msg_consolidate.proto
    │   │       │           ├── msg_deposit.proto
    │   │       │           ├── msg_donate.proto
    │   │       │           ├── msg_errata.proto
    │   │       │           ├── msg_leave.proto
    │   │       │           ├── msg_loan.proto
    │   │       │           ├── msg_manage_thorname.proto
    │   │       │           ├── msg_migrate.proto
    │   │       │           ├── msg_mimir.proto
    │   │       │           ├── msg_network_fee.proto
    │   │       │           ├── msg_node_pause_chain.proto
    │   │       │           ├── msg_noop.proto
    │   │       │           ├── msg_observed_txin.proto
    │   │       │           ├── msg_observed_txout.proto
    │   │       │           ├── msg_ragnarok.proto
    │   │       │           ├── msg_refund.proto
    │   │       │           ├── msg_reserve_contributor.proto
    │   │       │           ├── msg_rune_pool.proto
    │   │       │           ├── msg_secured_asset.proto
    │   │       │           ├── msg_send.proto
    │   │       │           ├── msg_set_ip_address.proto
    │   │       │           ├── msg_set_node_keys.proto
    │   │       │           ├── msg_solvency.proto
    │   │       │           ├── msg_swap.proto
    │   │       │           ├── msg_trade_account.proto
    │   │       │           ├── msg_tss_keysign_fail.proto
    │   │       │           ├── msg_tss_pool.proto
    │   │       │           ├── msg_tx_outbound.proto
    │   │       │           ├── msg_unbond.proto
    │   │       │           ├── msg_upgrade.proto
    │   │       │           ├── msg_version.proto
    │   │       │           ├── msg_withdraw_liquidity.proto
    │   │       │           ├── query.proto
    │   │       │           ├── query_account.proto
    │   │       │           ├── query_balance_module.proto
    │   │       │           ├── query_ban.proto
    │   │       │           ├── query_bank.proto
    │   │       │           ├── query_block.proto
    │   │       │           ├── query_borrower.proto
    │   │       │           ├── query_constant_values.proto
    │   │       │           ├── query_derived_pool.proto
    │   │       │           ├── query_export.proto
    │   │       │           ├── query_inbound_address.proto
    │   │       │           ├── query_invariants.proto
    │   │       │           ├── query_keystore.proto
    │   │       │           ├── query_last_block.proto
    │   │       │           ├── query_liquidity_provider.proto
    │   │       │           ├── query_mimir.proto
    │   │       │           ├── query_network.proto
    │   │       │           ├── query_node.proto
    │   │       │           ├── query_outbound.proto
    │   │       │           ├── query_outbound_fee.proto
    │   │       │           ├── query_pool.proto
    │   │       │           ├── query_pool_slip.proto
    │   │       │           ├── query_queue.proto
    │   │       │           ├── query_quotes.proto
    │   │       │           ├── query_ragnarok.proto
    │   │       │           ├── query_rune_pool.proto
    │   │       │           ├── query_rune_provider.proto
    │   │       │           ├── query_saver.proto
    │   │       │           ├── query_secured_asset.proto
    │   │       │           ├── query_streaming_swap.proto
    │   │       │           ├── query_swap_queue.proto
    │   │       │           ├── query_swapper_clout.proto
    │   │       │           ├── query_thorname.proto
    │   │       │           ├── query_trade_account.proto
    │   │       │           ├── query_trade_unit.proto
    │   │       │           ├── query_tss.proto
    │   │       │           ├── query_tx.proto
    │   │       │           ├── query_upgrade.proto
    │   │       │           ├── query_vault.proto
    │   │       │           ├── query_version.proto
    │   │       │           ├── tx.proto
    │   │       │           ├── type_affiliate_fee_collector.proto
    │   │       │           ├── type_ban_voter.proto
    │   │       │           ├── type_blame.proto
    │   │       │           ├── type_chain_contract.proto
    │   │       │           ├── type_clout.proto
    │   │       │           ├── type_errata_tx_voter.proto
    │   │       │           ├── type_events.proto
    │   │       │           ├── type_jail.proto
    │   │       │           ├── type_keygen.proto
    │   │       │           ├── type_liquidity_provider.proto
    │   │       │           ├── type_loan.proto
    │   │       │           ├── type_mimir.proto
    │   │       │           ├── type_network.proto
    │   │       │           ├── type_network_fee.proto
    │   │       │           ├── type_node_account.proto
    │   │       │           ├── type_node_pause_chain.proto
    │   │       │           ├── type_observed_network_fee.proto
    │   │       │           ├── type_observed_tx.proto
    │   │       │           ├── type_pol.proto
    │   │       │           ├── type_pool.proto
    │   │       │           ├── type_ragnarok.proto
    │   │       │           ├── type_reserve_contributor.proto
    │   │       │           ├── type_rune_pool.proto
    │   │       │           ├── type_rune_provider.proto
    │   │       │           ├── type_secured_asset.proto
    │   │       │           ├── type_solvency_voter.proto
    │   │       │           ├── type_streaming_swap.proto
    │   │       │           ├── type_thorname.proto
    │   │       │           ├── type_trade_account.proto
    │   │       │           ├── type_tss.proto
    │   │       │           ├── type_tss_keysign.proto
    │   │       │           ├── type_tss_metric.proto
    │   │       │           ├── type_tx_out.proto
    │   │       │           └── type_vault.proto
    │   │   ├── scripts
    │   │       ├── clean.mjs
    │   │       └── proto-gen.mjs
    │   │   ├── third_party
    │   │       └── proto
    │   │       │   ├── confio
    │   │       │       └── proofs.proto
    │   │       │   ├── cosmos_proto
    │   │       │       └── cosmos.proto
    │   │       │   ├── gogoproto
    │   │       │       └── gogo.proto
    │   │       │   ├── google
    │   │       │       ├── api
    │   │       │       │   ├── annotations.proto
    │   │       │       │   ├── http.proto
    │   │       │       │   └── httpbody.proto
    │   │       │       └── protobuf
    │   │       │       │   └── any.proto
    │   │       │   └── tendermint
    │   │       │       ├── abci
    │   │       │           └── types.proto
    │   │       │       ├── crypto
    │   │       │           ├── keys.proto
    │   │       │           └── proof.proto
    │   │       │       ├── libs
    │   │       │           └── bits
    │   │       │           │   └── types.proto
    │   │       │       ├── p2p
    │   │       │           └── types.proto
    │   │       │       ├── types
    │   │       │           ├── block.proto
    │   │       │           ├── evidence.proto
    │   │       │           ├── params.proto
    │   │       │           ├── types.proto
    │   │       │           └── validator.proto
    │   │       │       └── version
    │   │       │           └── types.proto
    │   │   └── tsconfig.json
    ├── provider-extension
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── scripts
    │   │   ├── build.mjs
    │   │   └── lerna-lifecyle-version.mjs
    │   ├── src
    │   │   ├── constants.ts
    │   │   ├── cosmjs.ts
    │   │   ├── enigma.ts
    │   │   ├── hex.ts
    │   │   ├── index.ts
    │   │   ├── keplr-fallback.ts
    │   │   ├── keplr.ts
    │   │   ├── uint8-array.spec.ts
    │   │   ├── uint8-array.ts
    │   │   └── version.ts
    │   └── tsconfig.json
    ├── provider-mock
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── index.ts
    │   │   └── mock.ts
    │   └── tsconfig.json
    ├── provider
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── core-types.ts
    │   │   ├── core.ts
    │   │   ├── cosmjs.ts
    │   │   ├── enigma.ts
    │   │   ├── index.ts
    │   │   └── inject.ts
    │   └── tsconfig.json
    ├── router-extension
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── env
    │   │   │   ├── content-script.ts
    │   │   │   ├── extension.spec.ts
    │   │   │   ├── extension.ts
    │   │   │   └── index.ts
    │   │   ├── guard
    │   │   │   ├── content-script.ts
    │   │   │   ├── extension.ts
    │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── interaction-addon
    │   │   │   ├── constants.ts
    │   │   │   ├── handler.ts
    │   │   │   ├── index.ts
    │   │   │   ├── init.ts
    │   │   │   ├── messages.ts
    │   │   │   └── service.ts
    │   │   ├── requester
    │   │   │   ├── content-script.ts
    │   │   │   ├── extension.ts
    │   │   │   └── index.ts
    │   │   ├── router
    │   │   │   ├── extension.ts
    │   │   │   └── index.ts
    │   │   ├── utils
    │   │   │   └── index.ts
    │   │   └── window.d.ts
    │   └── tsconfig.json
    ├── router-mock
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── env
    │   │   │   └── index.ts
    │   │   ├── guard
    │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── mock
    │   │   │   └── mock.spec.ts
    │   │   ├── requester
    │   │   │   └── index.ts
    │   │   └── router
    │   │   │   └── index.ts
    │   └── tsconfig.json
    ├── router
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── constant.ts
    │   │   ├── encoding
    │   │   │   └── index.ts
    │   │   ├── error.ts
    │   │   ├── handler.ts
    │   │   ├── hex.ts
    │   │   ├── index.ts
    │   │   ├── interfaces.ts
    │   │   ├── message.ts
    │   │   ├── router
    │   │   │   └── index.ts
    │   │   ├── simple.spec.ts
    │   │   ├── simple.ts
    │   │   ├── types.ts
    │   │   ├── uint8-array.spec.ts
    │   │   └── uint8-array.ts
    │   └── tsconfig.json
    ├── simple-fetch
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── error.ts
    │   │   ├── fetch.ts
    │   │   ├── index.ts
    │   │   └── types.ts
    │   └── tsconfig.json
    ├── stores-bitcoin
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── account
    │   │   │   ├── base.ts
    │   │   │   ├── constant.ts
    │   │   │   ├── index.ts
    │   │   │   ├── store.ts
    │   │   │   ├── tx-size-estimator.ts
    │   │   │   └── types.ts
    │   │   ├── index.ts
    │   │   └── queries
    │   │   │   ├── bitcoin-indexer.ts
    │   │   │   ├── index.ts
    │   │   │   ├── indexer
    │   │   │       ├── address-txs.ts
    │   │   │       ├── balance.ts
    │   │   │       ├── fee-estimates.ts
    │   │   │       ├── index.ts
    │   │   │       ├── tx.ts
    │   │   │       └── utxos.ts
    │   │   │   └── types.ts
    │   └── tsconfig.json
    ├── stores-core
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── core
    │   │   │   ├── chains-ui
    │   │   │   │   └── index.ts
    │   │   │   ├── index.ts
    │   │   │   ├── interaction
    │   │   │   │   ├── bitcoin-sign-message.ts
    │   │   │   │   ├── bitcoin-sign-tx.ts
    │   │   │   │   ├── chain-suggest.ts
    │   │   │   │   ├── eth-sign.ts
    │   │   │   │   ├── icns.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── interaction.ts
    │   │   │   │   ├── permission.ts
    │   │   │   │   ├── sign.ts
    │   │   │   │   ├── starknet-sign-message.ts
    │   │   │   │   └── starknet-sign-tx.ts
    │   │   │   ├── keyring.ts
    │   │   │   ├── permission-manager.ts
    │   │   │   └── tokens.ts
    │   │   └── index.ts
    │   └── tsconfig.json
    ├── stores-etc
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── axelar
    │   │   │   ├── currency-registrar.ts
    │   │   │   ├── index.ts
    │   │   │   ├── token-info.ts
    │   │   │   └── types.ts
    │   │   ├── erc20
    │   │   │   ├── index.ts
    │   │   │   └── query
    │   │   │   │   └── index.ts
    │   │   ├── gravity-bridge
    │   │   │   ├── currency-registrar.ts
    │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── initia
    │   │   │   └── dynamicfee
    │   │   │   │   ├── index.ts
    │   │   │   │   └── types.ts
    │   │   ├── queries.ts
    │   │   ├── terra-classic
    │   │   │   └── treasury
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── query.ts
    │   │   │   │   └── types.ts
    │   │   ├── token-info
    │   │   │   ├── index.ts
    │   │   │   └── query.ts
    │   │   ├── top-up-status
    │   │   │   ├── index.ts
    │   │   │   └── query.ts
    │   │   └── tx-msg-decoder
    │   │   │   ├── get-tx-interpreter-url-prefix.ts
    │   │   │   ├── index.ts
    │   │   │   └── query.ts
    │   └── tsconfig.json
    ├── stores-eth
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── account
    │   │   │   ├── base.ts
    │   │   │   ├── index.ts
    │   │   │   └── store.ts
    │   │   ├── constants.ts
    │   │   ├── currency-registrar.ts
    │   │   ├── index.ts
    │   │   ├── queries
    │   │   │   ├── balance.ts
    │   │   │   ├── block.ts
    │   │   │   ├── coingecko-token-info.ts
    │   │   │   ├── erc20-balance.ts
    │   │   │   ├── erc20-balances.ts
    │   │   │   ├── erc20-contract-info.ts
    │   │   │   ├── erc20-metadata.ts
    │   │   │   ├── evm-chain-json-rpc.ts
    │   │   │   ├── fee-histroy.ts
    │   │   │   ├── gas-price.ts
    │   │   │   ├── index.ts
    │   │   │   └── max-priority-fee.ts
    │   │   └── types.ts
    │   └── tsconfig.json
    ├── stores-ibc
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── channel.ts
    │   │   ├── currency-registrar.ts
    │   │   ├── index.ts
    │   │   └── types.ts
    │   └── tsconfig.json
    ├── stores-starknet
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── account
    │   │   │   ├── base.ts
    │   │   │   ├── index.ts
    │   │   │   ├── internal.ts
    │   │   │   └── store.ts
    │   │   ├── constants.ts
    │   │   ├── index.ts
    │   │   └── queries
    │   │   │   ├── account-nonce.ts
    │   │   │   ├── erc20-balance.ts
    │   │   │   ├── erc20-contract-info.ts
    │   │   │   ├── index.ts
    │   │   │   ├── staking
    │   │   │       ├── apr.ts
    │   │   │       ├── index.ts
    │   │   │       ├── pool-member-info.ts
    │   │   │       ├── types.ts
    │   │   │       └── validators.ts
    │   │   │   ├── starknet-chain-json-rpc.ts
    │   │   │   └── token-contracts.ts
    │   └── tsconfig.json
    ├── stores
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── account
    │   │   │   ├── babylon.ts
    │   │   │   ├── base.spec.ts
    │   │   │   ├── base.ts
    │   │   │   ├── context.ts
    │   │   │   ├── cosmos.ts
    │   │   │   ├── cosmwasm.ts
    │   │   │   ├── get-keplr.ts
    │   │   │   ├── index.ts
    │   │   │   ├── noble.ts
    │   │   │   ├── secret.ts
    │   │   │   ├── store.ts
    │   │   │   ├── types.ts
    │   │   │   └── utils.ts
    │   │   ├── chain
    │   │   │   ├── base.ts
    │   │   │   ├── index.ts
    │   │   │   └── types.ts
    │   │   ├── common
    │   │   │   ├── index.ts
    │   │   │   ├── map
    │   │   │   │   └── index.ts
    │   │   │   ├── merge.spec.ts
    │   │   │   ├── merge.ts
    │   │   │   ├── query
    │   │   │   │   ├── context.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── json-rpc.ts
    │   │   │   │   ├── post-query.spec.ts
    │   │   │   │   ├── post-query.ts
    │   │   │   │   ├── query.spec.ts
    │   │   │   │   └── query.ts
    │   │   │   ├── types.ts
    │   │   │   └── utils
    │   │   │   │   └── index.ts
    │   │   ├── index.ts
    │   │   ├── lsm
    │   │   │   ├── currency-registrar.ts
    │   │   │   └── index.ts
    │   │   ├── price
    │   │   │   ├── index.ts
    │   │   │   └── types.ts
    │   │   ├── query
    │   │   │   ├── agoric
    │   │   │   │   ├── board-aux.ts
    │   │   │   │   ├── brands.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   ├── types.ts
    │   │   │   │   └── vbank-assets.ts
    │   │   │   ├── babylon
    │   │   │   │   ├── epoching
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── last-epoch-msgs.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   └── queries.ts
    │   │   │   ├── balances.ts
    │   │   │   ├── chain-query.ts
    │   │   │   ├── chain-rpc-query.ts
    │   │   │   ├── cosmos
    │   │   │   │   ├── account
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── authz
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── balance
    │   │   │   │   │   ├── balances.ts
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── spendable.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── distribution
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── params.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── evm
    │   │   │   │   │   └── feemarket
    │   │   │   │   │   │   ├── index.ts
    │   │   │   │   │   │   └── types.ts
    │   │   │   │   ├── feemarket
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── ibc
    │   │   │   │   │   ├── channel.ts
    │   │   │   │   │   ├── client-state-v2.ts
    │   │   │   │   │   ├── client-state.ts
    │   │   │   │   │   ├── denom-trace.ts
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   ├── staking
    │   │   │   │   │   ├── babylon-btc-delegation-reward.ts
    │   │   │   │   │   ├── delegations.ts
    │   │   │   │   │   ├── endpoint-by-chain-id.ts
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── initia-delegations.ts
    │   │   │   │   │   ├── initia-unbonding-delegations.ts
    │   │   │   │   │   ├── initia-validators.ts
    │   │   │   │   │   ├── params.ts
    │   │   │   │   │   ├── pool.ts
    │   │   │   │   │   ├── rewards.ts
    │   │   │   │   │   ├── types.ts
    │   │   │   │   │   ├── unbonding-delegations.ts
    │   │   │   │   │   └── validators.ts
    │   │   │   │   └── status
    │   │   │   │   │   └── index.ts
    │   │   │   ├── cosmwasm
    │   │   │   │   ├── contract-query.ts
    │   │   │   │   ├── cw20-balance.ts
    │   │   │   │   ├── cw20-contract-info.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── neutron
    │   │   │   │   │   ├── staking-rewards-config.ts
    │   │   │   │   │   └── staking-rewards.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── icns
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── names.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   └── types.ts
    │   │   │   ├── index.ts
    │   │   │   ├── noble
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   ├── swap
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── pools.ts
    │   │   │   │   │   ├── rates.ts
    │   │   │   │   │   ├── simulate-swap.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   └── yield
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   ├── types.ts
    │   │   │   │   │   └── yield.ts
    │   │   │   ├── osmosis
    │   │   │   │   ├── base-fee
    │   │   │   │   │   ├── index.ts
    │   │   │   │   │   └── types.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   └── txfees
    │   │   │   │   │   ├── base-denom
    │   │   │   │   │       ├── index.ts
    │   │   │   │   │       └── types.ts
    │   │   │   │   │   ├── fee-tokens
    │   │   │   │   │       ├── index.ts
    │   │   │   │   │       └── types.ts
    │   │   │   │   │   └── spot-price-by-denom
    │   │   │   │   │       ├── index.ts
    │   │   │   │   │       └── types.ts
    │   │   │   ├── queries.ts
    │   │   │   ├── secret-wasm
    │   │   │   │   ├── contract-hash.ts
    │   │   │   │   ├── contract-query.ts
    │   │   │   │   ├── errors.ts
    │   │   │   │   ├── index.ts
    │   │   │   │   ├── queries.ts
    │   │   │   │   ├── secret20-balance.ts
    │   │   │   │   ├── secret20-contract-info.ts
    │   │   │   │   └── types.ts
    │   │   │   └── simple.ts
    │   │   ├── token-factory
    │   │   │   ├── currency-registrar.ts
    │   │   │   └── index.ts
    │   │   └── window.d.ts
    │   └── tsconfig.json
    ├── topup-client
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── client.ts
    │   │   ├── index.ts
    │   │   ├── types.ts
    │   │   └── utils.ts
    │   └── tsconfig.json
    ├── types
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── bech32.ts
    │   │   ├── bip44.ts
    │   │   ├── chain-info.ts
    │   │   ├── cosmjs-alt.ts
    │   │   ├── cosmjs.ts
    │   │   ├── currency.ts
    │   │   ├── ethereum.ts
    │   │   ├── index.ts
    │   │   ├── secretjs.ts
    │   │   ├── settled.ts
    │   │   ├── wallet
    │   │   │   ├── bitcoin.ts
    │   │   │   ├── eip6963.ts
    │   │   │   ├── ethereum.ts
    │   │   │   ├── index.ts
    │   │   │   ├── keplr.ts
    │   │   │   └── starknet.ts
    │   │   └── window.ts
    │   └── tsconfig.json
    ├── unit
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   ├── coin-pretty.spec.ts
    │   │   ├── coin-pretty.ts
    │   │   ├── coin-utils.spec.ts
    │   │   ├── coin-utils.ts
    │   │   ├── coin.spec.ts
    │   │   ├── coin.ts
    │   │   ├── dec-utils.spec.ts
    │   │   ├── dec-utils.ts
    │   │   ├── decimal.spec.ts
    │   │   ├── decimal.ts
    │   │   ├── etc.spec.ts
    │   │   ├── etc.ts
    │   │   ├── index.ts
    │   │   ├── int-pretty.spec.ts
    │   │   ├── int-pretty.ts
    │   │   ├── int.spec.ts
    │   │   ├── int.ts
    │   │   ├── price-pretty.spec.ts
    │   │   ├── price-pretty.ts
    │   │   ├── rate-pretty.spec.ts
    │   │   ├── rate-pretty.ts
    │   │   └── utils.ts
    │   └── tsconfig.json
    ├── wc-client-example
    │   ├── package.json
    │   ├── src
    │   │   ├── app.tsx
    │   │   ├── config.ts
    │   │   ├── get-wc-keplr.ts
    │   │   ├── index.html
    │   │   ├── index.tsx
    │   │   └── stores
    │   │   │   ├── index.tsx
    │   │   │   └── root.ts
    │   └── tsconfig.json
    ├── wc-client
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │   │   └── index.ts
    │   └── tsconfig.json
    └── wc-qrcode-modal
    │   ├── .eslintignore
    │   ├── .prettierignore
    │   ├── jest.config.js
    │   ├── package.json
    │   ├── src
    │       ├── index.tsx
    │       ├── modal.tsx
    │       └── util.ts
    │   └── tsconfig.json
├── scripts
    ├── firefox-distribution-diff-check.mjs
    ├── lerna-lifecyle-check-version.mjs
    ├── monorepo-deps-version-check.mjs
    ├── post-install.mjs
    └── publish.mjs
├── tsconfig.json
└── yarn.lock
/.gitattributes:
--------------------------------------------------------------------------------
1 | .yarn/releases/*.js linguist-vendored
2 | 
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @chainapsis/keplr-wallet-codeowners
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | contact_links:
2 |     - name: Questions and Help
3 |       url: https://keplr.crunch.help
4 |       about: This issue tracker is not for support questions. Please refer to the Keplr help desk.
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/libraries-bug-report.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | name: Libraries Bug report
 3 | about: Create a report to help us improve the libraries (@keplr-wallet/*)
 4 | title: ''
 5 | labels: bug
 6 | assignees: ''
 7 | 
 8 | ---
 9 | 
10 | 
11 | 
--------------------------------------------------------------------------------
/.github/workflows/lint.yml:
--------------------------------------------------------------------------------
 1 | name: Lint
 2 | on:
 3 |   pull_request:
 4 |   push:
 5 | 
 6 | jobs:
 7 |   lint:
 8 |     name: Lint code base
 9 |     runs-on: ubuntu-24.04
10 |     timeout-minutes: 30
11 |     steps:
12 |       - uses: actions/checkout@v3
13 |       - name: Setup node
14 |         uses: actions/setup-node@v3
15 |         with:
16 |           node-version: '18'
17 |       - run: npm install --global yarn
18 |       - run: yarn install --immutable
19 |       - run: yarn ci-lint
20 | 
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "apps/extension/src/keplr-wallet-private"]
2 | 	path = apps/extension/src/keplr-wallet-private
3 | 	url = https://github.com/chainapsis/keplr-wallet-private
4 | 
--------------------------------------------------------------------------------
/.husky/pre-commit:
--------------------------------------------------------------------------------
1 | npm run pre-commit
2 | 
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
 1 | module.exports = {
 2 |   overrides: [
 3 |     {
 4 |       files: ["*.mdx"],
 5 |       options: {
 6 |         parser: "mdx",
 7 |       },
 8 |     },
 9 |   ],
10 | };
11 | 
--------------------------------------------------------------------------------
/.yarnrc.yml:
--------------------------------------------------------------------------------
1 | nodeLinker: node-modules
2 | 
3 | plugins:
4 |   - path: .yarn/plugins/@yarnpkg/plugin-typescript.cjs
5 |     spec: "@yarnpkg/plugin-typescript"
6 | 
7 | yarnPath: .yarn/releases/yarn-3.4.1.cjs
8 | 
--------------------------------------------------------------------------------
/apps/extension/.babelrc.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "sourceType": "unambiguous",
 3 |   "presets": [
 4 |     [
 5 |       "@babel/preset-env",
 6 |       {
 7 |         "targets": {
 8 |           "chrome": 100,
 9 |           "safari": 15,
10 |           "firefox": 91
11 |         }
12 |       }
13 |     ],
14 |     "@babel/preset-typescript",
15 |     "@babel/preset-react"
16 |   ],
17 |   "plugins": []
18 | }
19 | 
--------------------------------------------------------------------------------
/apps/extension/.eslintignore:
--------------------------------------------------------------------------------
 1 | **/*.scss
 2 | **/*.html
 3 | **/*.json
 4 | **/*.png
 5 | **/*.svg
 6 | **/*.ttf
 7 | **/*.woff
 8 | **/*.woff2
 9 | **/*.secret
10 | **/*.md
11 | **/*.log
12 | **/*.webm
13 | **/*.txt
14 | **/*.gif
15 | .DS_Store
16 | 
17 | .gitignore
18 | 
19 | node_modules
20 | 
21 | dist/*
22 | prod/*
23 | build/*
24 | 
25 | noop-keplr-wallet-private/build
26 | 
27 | yarn.lock
28 | 
29 | noop-alt-sign-in
30 | 
--------------------------------------------------------------------------------
/apps/extension/.infisical.json:
--------------------------------------------------------------------------------
1 | {
2 |   "workspaceId": "655c4c9013c9b9239b375a45",
3 |   "defaultEnvironment": "dev",
4 |   "gitBranchToEnvironmentMapping": null
5 | }
6 | 
--------------------------------------------------------------------------------
/apps/extension/.prettierignore:
--------------------------------------------------------------------------------
 1 | **/*.png
 2 | **/*.svg
 3 | **/*.ttf
 4 | **/*.woff
 5 | **/*.woff2
 6 | **/*.secret
 7 | **/*.md
 8 | **/*.log
 9 | **/*.webm
10 | **/*.txt
11 | **/*.html
12 | **/*.gif
13 | .DS_Store
14 | 
15 | .gitignore
16 | 
17 | node_modules
18 | 
19 | dist/*
20 | prod/*
21 | build/*
22 | 
23 | noop-keplr-wallet-private/build
24 | 
25 | yarn.lock
26 | 
27 | noop-alt-sign-in
28 | 
--------------------------------------------------------------------------------
/apps/extension/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   moduleNameMapper: {
5 |     "\\.(css|scss|sass)$": "identity-obj-proxy",
6 |   },
7 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
8 | };
9 | 
--------------------------------------------------------------------------------
/apps/extension/noop-keplr-wallet-private/build/index.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAGa,QAAA,YAAY,GAA2C,SAAS,CAAC;AAEjE,QAAA,cAAc,GAIrB,EAAE,CAAC;AAEI,QAAA,mBAAmB,GAKhB,SAAS,CAAC;AAEnB,MAAM,kCAAkC,GAAG,CAChD,KAAa,EACb,cAAsC,EACxB,EAAE;IAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAC7C,CAAC,CAAC;AALW,QAAA,kCAAkC,sCAK7C;AAEK,MAAM,YAAY,GAAG,CAC1B,cAAsB,EAGd,EAAE;IACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAC7C,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB"}
--------------------------------------------------------------------------------
/apps/extension/noop-keplr-wallet-private/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "noop-keplr-wallet-private",
 3 |   "version": "0.0.1",
 4 |   "main": "build/index.js",
 5 |   "sideEffects": false,
 6 |   "dependencies": {},
 7 |   "peerDependencies": {
 8 |     "@keplr-wallet/simple-fetch": "*",
 9 |     "react": "^16.8.0 || ^17 || ^18",
10 |     "styled-components": "*"
11 |   }
12 | }
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/background.html:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 |   
 4 |     
 5 |     
 6 |     Keplr background service
 7 |     
 8 |   
 9 | 
10 | 
--------------------------------------------------------------------------------
/apps/extension/src/blocklist.html:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 |   
 4 |     
 5 |     
 6 |     Keplr
 7 |   
 8 |   
 9 |     
10 |   
11 | 
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/axis/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./types";
3 | export * from "./x";
4 | export * from "./y";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/axis/types.ts:
--------------------------------------------------------------------------------
 1 | export type AxisAlignX = "left" | "right" | "center";
 2 | export type AxisAlignY = "top" | "bottom" | "center";
 3 | 
 4 | export interface XAxisProps {
 5 |   alignY?: AxisAlignY;
 6 |   wrap?: "nowrap" | "wrap" | "wrap-reverse";
 7 |   gap?: string;
 8 | }
 9 | 
10 | export interface YAxisProps {
11 |   alignX?: AxisAlignX;
12 |   gap?: string;
13 | }
14 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/bleed/bleed.tsx:
--------------------------------------------------------------------------------
 1 | import React, { FunctionComponent, PropsWithChildren } from "react";
 2 | import { Styles } from "./styles";
 3 | import { BleedProps } from "./types";
 4 | 
 5 | export const Bleed: FunctionComponent> = ({
 6 |   children,
 7 |   ...props
 8 | }) => {
 9 |   return {children};
10 | };
11 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/bleed/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./bleed";
2 | export * from "./styles";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/bleed/types.ts:
--------------------------------------------------------------------------------
1 | export interface BleedProps {
2 |   top?: string;
3 |   bottom?: string;
4 |   left?: string;
5 |   right?: string;
6 |   vertical?: string;
7 |   horizontal?: string;
8 | }
9 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/box/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./box";
2 | export * from "./styles";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/button-text/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./styles";
2 | export * from "./types";
3 | export * from "./button-text";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/button/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./button";
3 | export * from "./styles";
4 | export * from "./approve-icon";
5 | export * from "./cancel-icon";
6 | export * from "./left-arrow-icon";
7 | export * from "./right-arrow-icon";
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/checkbox/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./styles";
2 | export * from "./types";
3 | export * from "./checkbox";
4 | export * from "./check-icon";
5 | export * from "./minus-icon";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/checkbox/types.ts:
--------------------------------------------------------------------------------
 1 | export type CheckBoxSize = "extra-small" | "small" | "large";
 2 | 
 3 | export interface CheckBoxProps {
 4 |   size?: CheckBoxSize;
 5 |   checked: boolean;
 6 |   onChange: (checked: boolean) => void;
 7 | 
 8 |   disabled?: boolean;
 9 | }
10 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/collapsible-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./collapsible-list";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/collapsible-list/types.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | 
 3 | export interface CollapsibleListProps {
 4 |   title: React.ReactNode;
 5 |   items: React.ReactNode[];
 6 | 
 7 |   lenAlwaysShown?: number;
 8 | 
 9 |   // privacy mode를 위해서 대충 추가됨
10 |   hideNumInTitle?: boolean;
11 | 
12 |   // 이걸 키면 리스트가 길때 성능이 조금 더 좋아진다.
13 |   // 하지만 부작용으로 펼칠때는 트랜지션없이 즉각적으로 펼쳐진다.
14 |   notRenderHiddenItems?: boolean;
15 | 
16 |   altViewMoreIntlTextId?: string;
17 | 
18 |   onCollapse?: (isCollapsed: boolean) => void;
19 | }
20 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/column/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./column";
3 | export * from "./columns";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/column/types.ts:
--------------------------------------------------------------------------------
 1 | export interface ColumnProps {
 2 |   weight: number;
 3 | }
 4 | 
 5 | export type ColumnsColumnAlign = "left" | "right" | "center";
 6 | export type ColumnsAlignY = "top" | "bottom" | "center";
 7 | 
 8 | export interface ColumnsProps {
 9 |   sum: number;
10 | 
11 |   columnAlign?: ColumnsColumnAlign;
12 |   alignY?: ColumnsAlignY;
13 |   gutter?: string;
14 | }
15 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/dropdown/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./dropdown";
2 | export * from "./styles";
3 | export * from "./types";
4 | 
5 | export * from "./floating";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/guide-box/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./styles";
2 | export * from "./types";
3 | export * from "./guide-box";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/guide-box/types.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | 
 3 | export type GuideBoxColor = "default" | "safe" | "warning" | "danger";
 4 | 
 5 | export interface GuideBoxProps {
 6 |   title: string;
 7 |   paragraph?: string | React.ReactNode;
 8 |   bottom?: React.ReactNode;
 9 |   titleRight?: React.ReactNode;
10 |   color?: GuideBoxColor;
11 | 
12 |   hideInformationIcon?: boolean;
13 |   backgroundColor?: string;
14 | }
15 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/icon/types.ts:
--------------------------------------------------------------------------------
1 | export interface IconProps {
2 |   width?: number | string;
3 |   height?: number | string;
4 |   color?: string;
5 | }
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/input/amount-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./text-input";
2 | export * from "./reciepient-input";
3 | export * from "./amount-input";
4 | export * from "./search-text-input";
5 | export * from "./label";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/input/memo-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/input/reciepient-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/input/text-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./styles";
2 | export * from "./types";
3 | export * from "./text-input";
4 | export * from "./password-text-input";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/modal/index.ts:
--------------------------------------------------------------------------------
1 | export { ModalRootProvider } from "./internal";
2 | export * from "./modal";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/modal/internal/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./context";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/modal/types.ts:
--------------------------------------------------------------------------------
 1 | export interface ModalProps {
 2 |   isOpen: boolean;
 3 |   close: () => void;
 4 | 
 5 |   onCloseTransitionEnd?: () => void;
 6 | 
 7 |   // XXX: 세로로 애니메이션할 때는 height를 결정지을 수 없다.
 8 |   //      그러므로 center, bottom일 때는 screen height에 대해서 상대적으로 설정할 수 없다.
 9 |   align: "center" | "bottom" | "left" | "right";
10 | 
11 |   maxHeight?: string;
12 | 
13 |   forceNotUseSimplebar?: boolean;
14 |   forceNotOverflowAuto?: boolean;
15 | 
16 |   disableBackdrop?: boolean;
17 | }
18 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/radio-group/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./horizontal";
2 | export * from "./styles";
3 | export * from "./types";
4 | export * from "./layered";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/radio-group/layered/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./comp";
2 | export * from "./styles";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/radio-group/types.ts:
--------------------------------------------------------------------------------
 1 | import { CSSProperties } from "react";
 2 | 
 3 | export interface RadioGroupProps {
 4 |   size?: "default" | "large";
 5 | 
 6 |   selectedKey?: string;
 7 |   items: {
 8 |     key: string;
 9 |     text: string;
10 |   }[];
11 |   onSelect: (key: string) => void;
12 | 
13 |   itemMinWidth?: string;
14 | 
15 |   className?: string;
16 |   style?: CSSProperties;
17 | }
18 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/special-button/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./button";
3 | export * from "./styles";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/special-button/types.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | import { ButtonSize } from "../button";
 3 | 
 4 | export interface SpecialButtonProps {
 5 |   size?: ButtonSize;
 6 |   left?: React.ReactNode;
 7 |   text?: string;
 8 |   right?: React.ReactNode;
 9 |   disabled?: boolean;
10 |   onClick?: () => void;
11 | 
12 |   isLoading?: boolean;
13 |   textOverrideIcon?: React.ReactNode;
14 | }
15 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/toggle/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./toggle";
2 | export * from "./styles";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/toggle/types.ts:
--------------------------------------------------------------------------------
1 | export interface ToggleProps {
2 |   isOpen: boolean;
3 |   setIsOpen?: (isOpen: boolean) => void;
4 |   disabled?: boolean;
5 |   size?: "large" | "small" | "smaller" | "extra-small";
6 | }
7 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/horizontal-collapse/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./collapse";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/horizontal-collapse/types.ts:
--------------------------------------------------------------------------------
1 | export interface HorizontalCollapseTransitionProps {
2 |   collapsed: boolean;
3 | }
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./vertical-size";
2 | export * from "./scene";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/internal/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./vertical-resize";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/internal/vertical-resize/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./hook";
2 | export * from "./container";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/scene/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./scene";
 2 | export * from "./types";
 3 | export * from "./fixed-width";
 4 | 
 5 | export type {
 6 |   SceneTransitionContext,
 7 |   SceneTransitionRef,
 8 |   Scene,
 9 |   SceneProps,
10 | } from "./internal";
11 | 
12 | export { useSceneTransition, useSceneEvents } from "./internal";
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/scene/internal/hook.ts:
--------------------------------------------------------------------------------
 1 | import { SceneTransitionContextBase } from "./context";
 2 | import { useContext } from "react";
 3 | import { SceneTransitionContext } from "./types";
 4 | 
 5 | export const useSceneTransition = (): SceneTransitionContext => {
 6 |   const context = useContext(SceneTransitionContextBase);
 7 |   if (!context) {
 8 |     throw new Error("Component is not under SceneTransition");
 9 |   }
10 | 
11 |   return context;
12 | };
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/scene/internal/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./context";
3 | export * from "./resize-registry";
4 | export * from "./base";
5 | export * from "./hook";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/scene/scene.tsx:
--------------------------------------------------------------------------------
 1 | import React, { forwardRef } from "react";
 2 | import { SceneTransitionProps } from "./types";
 3 | import { SceneTransitionRef, SceneTransitionBase } from "./internal";
 4 | 
 5 | // eslint-disable-next-line react/display-name
 6 | export const SceneTransition = forwardRef<
 7 |   SceneTransitionRef,
 8 |   SceneTransitionProps
 9 | >((props, ref) => {
10 |   return ;
11 | });
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/scene/types.ts:
--------------------------------------------------------------------------------
 1 | import { Scene, SceneTransitionBaseProps } from "./internal";
 2 | 
 3 | export type SceneTransitionProps = {
 4 |   width?: string;
 5 | } & Omit;
 6 | 
 7 | export interface FixedWidthScene extends Scene {
 8 |   width: string;
 9 | }
10 | 
11 | export type FixedWidthSceneTransitionProps = Omit<
12 |   SceneTransitionBaseProps,
13 |   "width"
14 | >;
15 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/vertical-collapse/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./collapse";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/vertical-size/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./vertical-size";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/transition/vertical-size/internal/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./context";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/base.tsx:
--------------------------------------------------------------------------------
 1 | import styled, { css } from "styled-components";
 2 | 
 3 | type BaseTypographyProps = {
 4 |   color?: string;
 5 | 
 6 |   hoverColor?: string;
 7 | };
 8 | 
 9 | export const BaseTypography = styled.div`
10 |   color: ${({ color }) => (color ? color : "inherit")};
11 | 
12 |   ${({ hoverColor }) => {
13 |     if (hoverColor) {
14 |       return css`
15 |         &:hover {
16 |           color: ${hoverColor};
17 |         }
18 |       `;
19 |     }
20 |   }}
21 | `;
22 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/body1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Body1 = styled(BaseTypography)`
5 |   font-weight: 400;
6 |   font-size: 1rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/body2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Body2 = styled(BaseTypography)`
5 |   font-weight: 400;
6 |   font-size: 0.875rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/body3.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Body3 = styled(BaseTypography)`
5 |   font-weight: 400;
6 |   font-size: 0.8125rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/button1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Button1 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 1rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/button2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Button2 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 0.875rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/caption1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Caption1 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 0.75rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/caption2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Caption2 = styled(BaseTypography)`
5 |   font-weight: 400;
6 |   font-size: 0.75rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/h1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const H1 = styled(BaseTypography)`
5 |   font-weight: 700;
6 |   font-size: 1.5rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/h2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const H2 = styled(BaseTypography)`
5 |   font-weight: 700;
6 |   font-size: 1.375rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/h3.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const H3 = styled(BaseTypography)`
5 |   font-weight: 600;
6 |   font-size: 1.25rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/h4.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const H4 = styled(BaseTypography)`
5 |   font-weight: 600;
6 |   font-size: 1.125rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/h5.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const H5 = styled(BaseTypography)`
5 |   font-weight: 600;
6 |   font-size: 0.875rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/mobile-h3.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const MobileH3 = styled(BaseTypography)`
5 |   font-weight: 700;
6 |   font-size: 1.75rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/subtitle1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Subtitle1 = styled(BaseTypography)`
5 |   font-weight: 600;
6 |   font-size: 1rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/subtitle2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Subtitle2 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 1rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/subtitle3.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Subtitle3 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 0.875rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/components/typography/subtitle4.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "./base";
3 | 
4 | export const Subtitle4 = styled(BaseTypography)`
5 |   font-weight: 500;
6 |   font-size: 0.8125rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/font.d.ts:
--------------------------------------------------------------------------------
1 | declare module "*.ttf";
2 | declare module "*.woff";
3 | declare module "*.woff2";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/claim/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./use-claim-all-each-state";
2 | export * from "./use-cosmos-claim-rewards";
3 | export * from "./use-starknet-claim-rewards";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/confirm/hook.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | import { Confirm } from "./types";
 3 | import { ConfirmContext } from "./internal";
 4 | 
 5 | export const useConfirm = (): Confirm => {
 6 |   const context = React.useContext(ConfirmContext);
 7 |   if (!context) {
 8 |     throw new Error("You have forgot to use ConfirmProvider");
 9 |   }
10 |   return context;
11 | };
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/confirm/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./provider";
2 | export * from "./types";
3 | export * from "./hook";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/confirm/internal.ts:
--------------------------------------------------------------------------------
1 | import { createContext } from "react";
2 | import { Confirm } from "./types";
3 | 
4 | export const ConfirmContext = createContext(null);
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/confirm/types.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | 
 3 | export interface Confirm {
 4 |   confirm: (
 5 |     title: string,
 6 |     paragraph: string | React.ReactNode,
 7 |     options?: {
 8 |       forceYes?: boolean;
 9 |       yesText?: string;
10 |       cancelText?: string;
11 |     }
12 |   ) => Promise;
13 | }
14 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/global-simplebar/hook.ts:
--------------------------------------------------------------------------------
 1 | import React from "react";
 2 | import { GlobalSimpleBar } from "./types";
 3 | import { GlobalSimpleBarContext } from "./internal";
 4 | 
 5 | export const useGlobarSimpleBar = (): GlobalSimpleBar => {
 6 |   const context = React.useContext(GlobalSimpleBarContext);
 7 |   if (!context) {
 8 |     throw new Error("You have forgot to use GlobalSimpleBarProvider");
 9 |   }
10 |   return context;
11 | };
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/global-simplebar/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./provider";
2 | export * from "./types";
3 | export * from "./hook";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/global-simplebar/internal.ts:
--------------------------------------------------------------------------------
1 | import { createContext } from "react";
2 | import { GlobalSimpleBar } from "./types";
3 | 
4 | export const GlobalSimpleBarContext = createContext(
5 |   null
6 | );
7 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/global-simplebar/types.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import SimpleBarCore from "simplebar-core";
3 | 
4 | export interface GlobalSimpleBar {
5 |   ref: React.MutableRefObject;
6 | }
7 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./interaction";
2 | export * from "./use-copy-address";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/notification/index.ts:
--------------------------------------------------------------------------------
1 | export { useNotification, NotificationProvider } from "./internal";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/notification/internal/context.tsx:
--------------------------------------------------------------------------------
 1 | import React, { createContext } from "react";
 2 | import { Notification } from "../types";
 3 | 
 4 | export const NotificationContext = createContext(null);
 5 | 
 6 | export const useNotification = (): Notification => {
 7 |   const context = React.useContext(NotificationContext);
 8 |   if (!context) {
 9 |     throw new Error("You have forgot to use NotificationProvider");
10 |   }
11 |   return context;
12 | };
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/notification/internal/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./context";
2 | export * from "./provider";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/notification/types.ts:
--------------------------------------------------------------------------------
1 | export interface Notification {
2 |   show(
3 |     mode: "success" | "failed" | "plain",
4 |     title: string,
5 |     paragraph: string
6 |   ): string;
7 |   hide(id: string): void;
8 | }
9 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/use-effect-once.ts:
--------------------------------------------------------------------------------
 1 | import { EffectCallback, useEffect, useLayoutEffect } from "react";
 2 | 
 3 | export const useEffectOnce = (effect: EffectCallback) => {
 4 |   // eslint-disable-next-line react-hooks/exhaustive-deps
 5 |   useEffect(effect, []);
 6 | };
 7 | 
 8 | export const useLayoutEffectOnce = (effect: EffectCallback) => {
 9 |   // eslint-disable-next-line react-hooks/exhaustive-deps
10 |   useLayoutEffect(effect, []);
11 | };
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/use-focus-on-mount.ts:
--------------------------------------------------------------------------------
 1 | import { useEffect, useRef } from "react";
 2 | 
 3 | export const useFocusOnMount = [() => {
 4 |   const ref = useRef][(null);
 5 |   useEffect(() => {
 6 |     if (ref.current) {
 7 |       ref.current.focus();
 8 |     }
 9 |   }, []);
10 |   return ref;
11 | };
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/hooks/use-unmount.ts:
--------------------------------------------------------------------------------
 1 | import { useEffect, useRef } from "react";
 2 | 
 3 | export const useUnmount = (fn: () => void) => {
 4 |   const fnRef = useRef(fn);
 5 |   fnRef.current = fn;
 6 | 
 7 |   useEffect(() => {
 8 |     return () => {
 9 |       fnRef.current();
10 |     };
11 |   }, []);
12 | };
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/index.html:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 |   
 4 |     
 5 |     
 6 |     Keplr
 7 |     
 8 |   
 9 |   
10 |     
11 |   
12 | 
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/layouts/header/components/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./back-button";
2 | export * from "./profile-button";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/layouts/header/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./header";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/bitcoin/components/input/amount-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/bitcoin/components/input/recipient-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/bitcoin/sign/message/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./wrapper";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/bitcoin/sign/tx/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./wrapper";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/earn/transfer/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./amount";
2 | export * from "./intro";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/main/components/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./claim-all";
 2 | export * from "./buttons";
 3 | export * from "./buy-crypto-modal";
 4 | export * from "./token";
 5 | export * from "./menu-bar";
 6 | export * from "./copy-address";
 7 | export * from "./empty-view";
 8 | export * from "./ibc-transfer-view";
 9 | export * from "./token-found-modal";
10 | export * from "./stake-with-keplr-dashboard-button";
11 | export * from "./looking-for-chains";
12 | export * from "./update-note-modal";
13 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/main/token-detail/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./modal";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/bip-44-path/hook.ts:
--------------------------------------------------------------------------------
 1 | import { useState } from "react";
 2 | import { BIP44PathState } from "./state";
 3 | 
 4 | // CONTRACT: Use with `observer`
 5 | export const useBIP44PathState = (isLedger?: boolean) => {
 6 |   const [state] = useState(() => new BIP44PathState(isLedger));
 7 |   state.setIsLedger(isLedger ?? false);
 8 |   return state;
 9 | };
10 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/bip-44-path/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./styles";
2 | export * from "./view";
3 | export * from "./state";
4 | export * from "./hook";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/form/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./name-password";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/header/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./header";
2 | export * from "./context";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/base.tsx:
--------------------------------------------------------------------------------
 1 | import styled from "styled-components";
 2 | 
 3 | type BaseTypographyProps = {
 4 |   color?: string;
 5 | };
 6 | 
 7 | export const BaseHafferTypography = styled.div`
 8 |   font-family: "Haffer", "Inter", sans-serif;
 9 | 
10 |   color: ${({ color }) => (color ? color : "inherit")};
11 | `;
12 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./base";
2 | export * from "./register-h1";
3 | export * from "./register-h2";
4 | export * from "./register-h3";
5 | export * from "./register-h4";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/register-h1.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseHafferTypography } from "./base";
3 | 
4 | export const RegisterH1 = styled(BaseHafferTypography)`
5 |   font-weight: 600;
6 |   font-size: 3rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/register-h2.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseTypography } from "../../../../components/typography";
3 | 
4 | export const RegisterH2 = styled(BaseTypography)`
5 |   font-weight: 600;
6 |   font-size: 2.25rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/register-h3.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseHafferTypography } from "./base";
3 | 
4 | export const RegisterH3 = styled(BaseHafferTypography)`
5 |   font-weight: 600;
6 |   font-size: 1.5rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/components/typography/register-h4.tsx:
--------------------------------------------------------------------------------
1 | import styled from "styled-components";
2 | import { BaseHafferTypography } from "./base";
3 | 
4 | export const RegisterH4 = styled(BaseHafferTypography)`
5 |   font-weight: 500;
6 |   font-size: 1.25rem;
7 | `;
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/register/pages/welcome/components/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./link-item";
2 | export * from "./twitter-icon";
3 | export * from "./check-icon";
4 | export * from "./pin-icon";
5 | export * from "./pin-view";
6 | export * from "./puzzle-icon";
7 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/send/amount/ibc-transfer/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./modal";
2 | export * from "./destination-chain-view";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/setting/components/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./page-button";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/components/eth-tx/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/components/eth-tx/render/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./send-token";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/components/messages/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/components/messages/render/custom-icon.tsx:
--------------------------------------------------------------------------------
 1 | import React, { FunctionComponent } from "react";
 2 | import { ItemLogo } from "../../../../main/token-detail/msg-items/logo";
 3 | import { MessageCustomIcon } from "../../../../../components/icon";
 4 | 
 5 | export const CustomIcon: FunctionComponent = () => {
 6 |   return (
 7 |     }
11 |     />
12 |   );
13 | };
14 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/cosmos/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./tx";
2 | export * from "./adr36";
3 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/cosmos/tx/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./wrapper";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/ethereum/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./wrapper";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/sign/utils/ledger-types.ts:
--------------------------------------------------------------------------------
 1 | export const ErrModuleLedgerSign = "ledger-sign";
 2 | export const ErrFailedInit = 1;
 3 | export const ErrCodeUnsupportedApp = 2;
 4 | export const ErrCodeDeviceLocked = 3;
 5 | export const ErrFailedGetPublicKey = 4;
 6 | export const ErrPublicKeyUnmatched = 5;
 7 | export const ErrFailedSign = 6;
 8 | export const ErrSignRejected = 7;
 9 | 
10 | export interface LedgerOptions {
11 |   useWebHID: boolean;
12 |   signEthPlainJSON?: boolean;
13 | }
14 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/starknet/components/input/amount-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/starknet/components/input/reciepient-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./input";
2 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/suggest-chain/components/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./raw-info";
2 | export * from "./community-info";
3 | export * from "./origin-info";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/tx-result/index.tsx:
--------------------------------------------------------------------------------
1 | export * from "./pending";
2 | export * from "./success";
3 | export * from "./failed";
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/pages/wallet/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./select";
2 | export * from "./delete";
3 | export * from "./change-name";
4 | export * from "./show-sensitive";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/brand-sub-text.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/brand-sub-text.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/brand-text-fit-logo-height.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/brand-text-fit-logo-height.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/brand-text.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/brand-text.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Black.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Black.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Bold.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-ExtraBold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-ExtraBold.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-ExtraLight.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-ExtraLight.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Light.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Medium.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Regular.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-SemiBold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-SemiBold.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/Inter-Thin.ttf
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/NotoSansKR-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/NotoSansKR-Bold.woff2
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/NotoSansKR-Medium.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/NotoSansKR-Medium.woff2
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/NotoSansKR-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/font/NotoSansKR-Regular.woff2
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icns-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icns-logo.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon-click-cursor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon-click-cursor.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-128.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-16.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-48.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-beta-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-beta-128.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-beta-16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-beta-16.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon/icon-beta-48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/icon/icon-beta-48.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/chain-icon-alt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/chain-icon-alt.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/circle-wave.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/circle-wave.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/congrats-bird-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/congrats-bird-dark.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/congrats-bird-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/congrats-bird-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/copy-address-no-search-result-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/copy-address-no-search-result-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/copy-address-no-search-result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/copy-address-no-search-result.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/earn-usdc-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/earn-usdc-dark.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/earn-usdc-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/earn-usdc-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/ext_btc-dark.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/ext_btc-dark.gif
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/ext_btc-light.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/ext_btc-light.gif
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icns-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/icns-banner.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icns-icon-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/icns-icon-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icns-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/icns-icon.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icns-mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/icns-mark.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icon-click-pointer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/icon-click-pointer.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/icons8-usb-2.svg:
--------------------------------------------------------------------------------
1 | 
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/intro-hardware-wallet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/intro-hardware-wallet.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/intro-logo-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/intro-logo-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/intro-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/intro-logo.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/keystone/tutorial1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/keystone/tutorial1.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/keystone/tutorial2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/keystone/tutorial2.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/keystone/tutorial3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/keystone/tutorial3.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/keystone/tutorial4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/keystone/tutorial4.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/locked-keplr-logo-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/locked-keplr-logo-128.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/main-empty-balance-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/main-empty-balance-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/main-empty-balance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/main-empty-balance.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/main-empty-staking.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/main-empty-staking.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/register-new-recovery-phrase-blur-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/register-new-recovery-phrase-blur-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/register-new-recovery-phrase-blur.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/register-new-recovery-phrase-blur.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/side-menu-classic-mode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/side-menu-classic-mode.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/side-menu-side-panel-ribbon-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/side-menu-side-panel-ribbon-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/side-menu-side-panel-ribbon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/side-menu-side-panel-ribbon.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/side-menu-side-panel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/side-menu-side-panel.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/sign-adr36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/sign-adr36.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/stargaze_banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/stargaze_banner.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/unlock-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/unlock-dark.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/unlock-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/unlock-light.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/unlock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/img/unlock.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/logo-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/logo-256.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/logo-beta-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/apps/extension/src/public/assets/logo-beta-256.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/svg/arrow-left.svg:
--------------------------------------------------------------------------------
1 | 
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/svg/arrow-right-outline.svg:
--------------------------------------------------------------------------------
1 | 
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/svg/arrow-right-primary.svg:
--------------------------------------------------------------------------------
1 | 
4 | 
--------------------------------------------------------------------------------
/apps/extension/src/stores/token-contracts/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./contracts";
2 | export * from "./queries";
3 | 
4 | export * from "./types";
5 | 
--------------------------------------------------------------------------------
/apps/extension/src/stores/token-contracts/types.ts:
--------------------------------------------------------------------------------
 1 | export interface TokenContract {
 2 |   contractAddress: string;
 3 |   imageUrl?: string;
 4 |   metadata: {
 5 |     name: string;
 6 |     symbol: string;
 7 |     decimals: number;
 8 |   };
 9 |   coinGeckoId?: string;
10 | }
11 | 
--------------------------------------------------------------------------------
/apps/extension/src/stories/example/helper._stories.tsx:
--------------------------------------------------------------------------------
1 | import React, { FunctionComponent } from "react";
2 | 
3 | export const PlaceHolder: FunctionComponent<{
4 |   width: string;
5 |   height: string;
6 | }> = ({ width, height }) => {
7 |   return ;
8 | };
9 | 
--------------------------------------------------------------------------------
/apps/extension/src/styles/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./colors";
2 | export * from "./global";
3 | export * from "./global-popup";
4 | export * from "./global-side-panel";
5 | export * from "./scrollbar";
6 | 
--------------------------------------------------------------------------------
/apps/extension/src/styles/spring.ts:
--------------------------------------------------------------------------------
1 | import { SpringConfig } from "@react-spring/web";
2 | 
3 | export const defaultSpringConfig: SpringConfig = {
4 |   mass: 0.8,
5 |   tension: 210,
6 |   friction: 26,
7 | };
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/theme/styled.d.ts:
--------------------------------------------------------------------------------
1 | import "styled-components";
2 | 
3 | declare module "styled-components" {
4 |   export interface DefaultTheme {
5 |     mode: "dark" | "light";
6 |   }
7 | }
8 | 
--------------------------------------------------------------------------------
/apps/extension/src/utils/browser-api.ts:
--------------------------------------------------------------------------------
 1 | export const getActiveTabOrigin = async (): Promise => {
 2 |   const tabs = await browser.tabs.query({ active: true, currentWindow: true });
 3 |   if (tabs.length === 0) {
 4 |     console.error("No active tab found");
 5 |     return;
 6 |   }
 7 | 
 8 |   const activeTab = tabs[0];
 9 |   if (!activeTab.url) {
10 |     console.error("No active tab URL found");
11 |     return;
12 |   }
13 | 
14 |   const url = new URL(activeTab.url);
15 |   return url.origin;
16 | };
17 | 
--------------------------------------------------------------------------------
/apps/extension/src/utils/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./fragment";
2 | export * from "./ledger";
3 | export * from "./amount-to-ambiguous-string";
4 | export * from "./side-panel";
5 | export * from "./set-interaction-data-href";
6 | export * from "./hex-to-rgba";
7 | 
--------------------------------------------------------------------------------
/apps/extension/tsconfig.noop.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": "noop-keplr-wallet-private",
 5 |     "outDir": "noop-keplr-wallet-private/build",
 6 |     "declaration": true,
 7 |     "rootDir": "noop-keplr-wallet-private"
 8 |   },
 9 |   "include": ["noop-keplr-wallet-private/**/*"]
10 | }
11 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/src/ibc-swap/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./use";
2 | export * from "./amount";
3 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./ibc-swap";
2 | export * from "./noble-earn";
3 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/src/noble-earn/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./amount";
2 | 
--------------------------------------------------------------------------------
/apps/hooks-internal/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/apps/stores-internal/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/apps/stores-internal/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/apps/stores-internal/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./skip";
2 | export * from "./price-changes";
3 | export * from "./swap-usage";
4 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/internal/chain-info.ts:
--------------------------------------------------------------------------------
1 | import { IChainStore } from "@keplr-wallet/stores";
2 | import { ChainInfo } from "@keplr-wallet/types";
3 | 
4 | export interface InternalChainStore
5 |   extends IChainStore {
6 |   isInChainInfosInListUI(chainId: string): boolean;
7 | }
8 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/internal/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./chain-info";
2 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/price-changes/types.ts:
--------------------------------------------------------------------------------
1 | export type ResPrice24hChanges = {
2 |   [coinId: string]: number | undefined;
3 | };
4 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/skip/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./assets";
3 | export * from "./assets-from-source";
4 | export * from "./queries";
5 | export * from "./route";
6 | export * from "./chains";
7 | export * from "./ibc-pfm-transfer";
8 | export * from "./ibc-swap";
9 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/swap-usage/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | export * from "./swap-usage";
3 | 
--------------------------------------------------------------------------------
/apps/stores-internal/src/swap-usage/queries.ts:
--------------------------------------------------------------------------------
 1 | import { QuerySharedContext } from "@keplr-wallet/stores";
 2 | import { DeepReadonly } from "utility-types";
 3 | import { ObservableQuerySwapUsage } from "./swap-usage";
 4 | 
 5 | export class SwapUsageQueries {
 6 |   public readonly querySwapUsage: DeepReadonly;
 7 | 
 8 |   constructor(sharedContext: QuerySharedContext, baseURL: string) {
 9 |     this.querySwapUsage = new ObservableQuerySwapUsage(sharedContext, baseURL);
10 |   }
11 | }
12 | 
--------------------------------------------------------------------------------
/apps/stores-internal/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/docker/create-firefox-archive/Dockerfile:
--------------------------------------------------------------------------------
 1 | FROM ubuntu:24.04
 2 | 
 3 | RUN mkdir app
 4 | 
 5 | COPY ./ /app
 6 | 
 7 | WORKDIR /app
 8 | 
 9 | # Remove all .DS_Store files which exist only in OSX
10 | RUN find . -name .DS_Store -exec rm {} \;
11 | 
12 | RUN tar cvzf /firefox-archive.tar.gz .
13 | 
14 | VOLUME /data
15 | 
16 | WORKDIR /data
17 | 
18 | CMD mkdir -p ./build && cp /firefox-archive.tar.gz /data/build/firefox-archive.tar.gz
19 | 
--------------------------------------------------------------------------------
/docs/.eslintignore:
--------------------------------------------------------------------------------
1 | **/*.{css,scss,sass}
--------------------------------------------------------------------------------
/docs/.eslintrc.js:
--------------------------------------------------------------------------------
 1 | module.exports = {
 2 |   extends: ["plugin:@docusaurus/recommended", "prettier"],
 3 |   rules: {
 4 |     "react/react-in-jsx-scope": "off",
 5 |     "import/no-default-export": "off",
 6 |     "import/no-unresolved": "off",
 7 |   },
 8 |   overrides: [
 9 |     {
10 |       files: ["*.css", "*.scss", "*.sass"],
11 |       rules: {}, // No rules applied for CSS/SCSS/SASS files
12 |     },
13 |   ],
14 | };
15 | 
--------------------------------------------------------------------------------
/docs/.gitignore:
--------------------------------------------------------------------------------
 1 | # Dependencies
 2 | /node_modules
 3 | 
 4 | # Production
 5 | /build
 6 | 
 7 | # Generated files
 8 | .docusaurus
 9 | .cache-loader
10 | 
11 | # Misc
12 | .DS_Store
13 | .env.local
14 | .env.development.local
15 | .env.test.local
16 | .env.production.local
17 | 
18 | npm-debug.log*
19 | yarn-debug.log*
20 | yarn-error.log*
21 | .vercel
22 | .env
23 | 
--------------------------------------------------------------------------------
/docs/docs/guide/rainbowkit-custom-wallet.md:
--------------------------------------------------------------------------------
1 | # RainbowKit Custom Wallet
2 | 
3 | To add Keplr as a custom wallet in [RainbowKit](https://rainbowkit.com/) for your dApp, please refer to the [GitHub repository](https://github.com/chainapsis/keplr-rainbow-connector/blob/main/packages/rainbow-connector/README.md) or the [npm package](https://www.npmjs.com/package/@keplr-wallet/rainbow-connector).
--------------------------------------------------------------------------------
/docs/src/pages/index.module.css:
--------------------------------------------------------------------------------
 1 | /**
 2 |  * CSS files with the .module.css suffix will be treated as CSS modules
 3 |  * and scoped locally.
 4 |  */
 5 | 
 6 | .heroBanner {
 7 |   padding: 4rem 0;
 8 |   text-align: center;
 9 |   position: relative;
10 |   overflow: hidden;
11 | }
12 | 
13 | @media screen and (max-width: 996px) {
14 |   .heroBanner {
15 |     padding: 2rem;
16 |   }
17 | }
18 | 
19 | .buttons {
20 |   display: flex;
21 |   align-items: center;
22 |   justify-content: center;
23 | }
24 | 
--------------------------------------------------------------------------------
/docs/src/pages/index.tsx:
--------------------------------------------------------------------------------
 1 | import { useEffect } from "react";
 2 | import { useHistory } from "@docusaurus/router";
 3 | 
 4 | export default function Home(): JSX.Element {
 5 |   const history = useHistory();
 6 | 
 7 |   useEffect(() => {
 8 |     history.replace("/api/intro");
 9 |   }, [history]);
10 | 
11 |   return null;
12 | }
13 | 
--------------------------------------------------------------------------------
/docs/src/pages/markdown-page.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Markdown page example
3 | ---
4 | 
5 | # Markdown page example
6 | 
7 | You don't need React to write simple standalone pages.
8 | 
--------------------------------------------------------------------------------
/docs/static/.nojekyll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/.nojekyll
--------------------------------------------------------------------------------
/docs/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/favicon.ico
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-evm-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/enable-chain-evm-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/enable-chain-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-starknet-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/enable-chain-starknet-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/manage-wc-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/manage-wc-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-arbitrary-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/sign-arbitrary-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-message-evm-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/sign-message-evm-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-message-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/sign-message-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/wc-request-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/guide/wc-request-example.png
--------------------------------------------------------------------------------
/docs/static/img/keplr-logo-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/img/keplr-logo-256.png
--------------------------------------------------------------------------------
/docs/static/og-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/docs/static/og-image.png
--------------------------------------------------------------------------------
/docs/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 |   // This file is not used in compilation. It is here just for a nice editor experience.
3 |   "extends": "@docusaurus/tsconfig",
4 |   "compilerOptions": {
5 |     "baseUrl": "."
6 |   },
7 |   "exclude": [".docusaurus", "build"]
8 | }
9 | 
--------------------------------------------------------------------------------
/etc/noop/README.md:
--------------------------------------------------------------------------------
1 | This directory isn’t actually used, and would be preferred to not be added. But it is needed to explicitly ignore specific libraries used by the dependency. Specifically, libsodium isn’t actually used and WebAssembly can’t be used in the extension’s sandbox environment but creates various errors so the directory exists to ignore libsodium.
2 | 
--------------------------------------------------------------------------------
/etc/noop/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {};
2 | 
--------------------------------------------------------------------------------
/etc/noop/package.json:
--------------------------------------------------------------------------------
1 | {
2 |   "name": "noop",
3 |   "version": "0.0.1",
4 |   "main": "index.js",
5 |   "private": true,
6 |   "scripts": {},
7 |   "dependencies": {}
8 | }
9 | 
--------------------------------------------------------------------------------
/lerna.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "version": "0.12.285",
 3 |   "useWorkspaces": true,
 4 |   "npmClient": "yarn",
 5 |   "command": {
 6 |     "version": {
 7 |       "forcePublish": true,
 8 |       "exact": true
 9 |     }
10 |   }
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/analytics/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/analytics/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/analytics/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "jsx": "react",
 5 |     "baseUrl": ".",
 6 |     "outDir": "build",
 7 |     "declaration": true,
 8 |     "rootDir": "src",
 9 |     "skipLibCheck": true
10 |   },
11 |   "include": ["src/**/*"]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/background/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/background/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/background/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/background/src/analytics/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "analytics";
2 | 
3 | export const KEPLR_EXT_ANALYTICS_API_URL =
4 |   process.env["KEPLR_EXT_ANALYTICS_API_URL"];
5 | 
6 | export const KEPLR_EXT_ANALYTICS_API_AUTH_TOKEN =
7 |   process.env["KEPLR_EXT_ANALYTICS_API_AUTH_TOKEN"];
8 | 
--------------------------------------------------------------------------------
/packages/background/src/analytics/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/analytics/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/auto-lock-account/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "auto-lock-account";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/auto-lock-account/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/auto-lock-account/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-ui/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "chains-ui";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-ui/foreground/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "chains-ui-foreground";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-ui/foreground/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./init";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-ui/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
4 | export * from "./foreground";
5 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-ui/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-update/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "chains-update";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-update/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/chains-update/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/chains/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "chains";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/chains/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/chains/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/chains/types.ts:
--------------------------------------------------------------------------------
 1 | import { ChainInfo } from "@keplr-wallet/types";
 2 | 
 3 | export type ChainInfoWithSuggestedOptions = ChainInfo & {
 4 |   readonly updateFromRepoDisabled?: boolean;
 5 | };
 6 | 
 7 | export type ChainInfoWithCoreTypes = ChainInfoWithSuggestedOptions & {
 8 |   readonly embedded?: boolean;
 9 | };
10 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "interaction";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/foreground/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "interaction-foreground";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/foreground/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | export * from "./init";
5 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/foreground/types.ts:
--------------------------------------------------------------------------------
 1 | import { InteractionWaitingData } from "../types";
 2 | 
 3 | export interface InteractionForegroundHandler {
 4 |   onInteractionDataReceived: (data: InteractionWaitingData) => void;
 5 |   onEventDataReceived: (
 6 |     data: Omit<
 7 |       InteractionWaitingData,
 8 |       "id" | "uri" | "isInternal" | "tabId" | "windowId"
 9 |     >
10 |   ) => void;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
5 | export * from "./foreground";
6 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/interaction/types.ts:
--------------------------------------------------------------------------------
 1 | export interface InteractionWaitingData {
 2 |   id: string;
 3 |   type: string;
 4 |   isInternal: boolean;
 5 |   data: T;
 6 |   tabId: number | undefined;
 7 |   windowId: number | undefined;
 8 |   uri: string;
 9 | }
10 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-bitcoin/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./helper";
4 | export * from "./bip322";
5 | export * from "./bip380";
6 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-bitcoin/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-cosmos/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "keyring-cosmos";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-cosmos/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./messages";
2 | export * from "./service";
3 | export * from "./eip712";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-cosmos/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-ethereum/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "keyring-ethereum";
2 | 
3 | export const enableAccessSkippedEVMJSONRPCMethods = [
4 |   "keplr_initProviderState",
5 |   "eth_accounts",
6 | ];
7 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-ethereum/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./messages";
2 | export * from "./service";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-ethereum/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-keystone/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-keystone/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-ledger/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-ledger/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-mnemonic/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-mnemonic/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-private-key/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-private-key/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-starknet/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "keyring-starknet";
2 | 
3 | export const enableAccessSkippedStarknetJSONRPCMethods = [
4 |   "keplr_initStarknetProviderState",
5 |   "wallet_getPermissions",
6 |   "wallet_requestAccounts",
7 | ];
8 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-starknet/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./messages";
2 | export * from "./service";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring-starknet/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "keyring-v2";
2 | export const DEFAULT_BIP44_PURPOSE = 44;
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./messages";
3 | export * from "./service";
4 | export * from "./constants";
5 | export * as KeyRingLegacy from "./legacy";
6 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/keyring/legacy/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./crypto";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/manage-view-asset-token/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "manage-view-asset-token";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/manage-view-asset-token/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/manage-view-asset-token/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/manage-view-asset-token/types.ts:
--------------------------------------------------------------------------------
1 | export type ViewAssetToken = {
2 |   chainId: string;
3 |   coinMinimalDenom: string;
4 | };
5 | 
--------------------------------------------------------------------------------
/packages/background/src/permission-interactive/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "permission-interactive";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/permission-interactive/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/permission-interactive/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/permission/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "permission";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/permission/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./types";
3 | export * from "./messages";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/permission/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/phishing-list/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "phishing-list";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/phishing-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/phishing-list/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/recent-send-history/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "recent-send-history";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/recent-send-history/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/recent-send-history/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/secret-wasm/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "secret-wasm";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/secret-wasm/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/secret-wasm/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/settings/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "settings";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/settings/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/settings/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/side-panel/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "side-panel";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/side-panel/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./messages";
2 | export * from "./service";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/side-panel/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/token-cw20/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "token-cw20";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/token-cw20/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/token-cw20/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/token-cw20/types.ts:
--------------------------------------------------------------------------------
 1 | import { AppCurrency } from "@keplr-wallet/types";
 2 | 
 3 | export interface TokenInfo {
 4 |   // Hex encoded
 5 |   // Token은 계정당이 아니라 글로벌하게 다뤄짐.
 6 |   // 근데 secret20은 viewing key때메 계정에 귀속되어야 함;
 7 |   // secret20 때메 어쩔 수 없기 로직이 좀 괴랄해짐.
 8 |   // cw20일때는 associatedAccountAddress는 넣으면 안됨.
 9 |   associatedAccountAddress?: string;
10 |   currency: AppCurrency;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/background/src/token-erc20/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "token-erc20";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/token-erc20/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/token-erc20/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/token-erc20/types.ts:
--------------------------------------------------------------------------------
1 | import { TokenInfo } from "../token-cw20";
2 | 
3 | export type ERC20TokenInfo = TokenInfo;
4 | 
--------------------------------------------------------------------------------
/packages/background/src/token-scan/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "token-scan";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/token-scan/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/token-scan/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/tx-ethereum/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "background-tx-ethereum";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/tx-ethereum/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/tx-ethereum/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/tx/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "background-tx";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/tx/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/background/src/tx/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./init";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/tx/types.ts:
--------------------------------------------------------------------------------
1 | export interface Notification {
2 |   create: (params: {
3 |     iconRelativeUrl?: string;
4 |     title: string;
5 |     message: string;
6 |   }) => void;
7 | }
8 | 
--------------------------------------------------------------------------------
/packages/background/src/vault/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./types";
3 | 
--------------------------------------------------------------------------------
/packages/background/src/vault/internal.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | 
--------------------------------------------------------------------------------
/packages/background/src/vault/types.ts:
--------------------------------------------------------------------------------
 1 | type Primitive = string | number | boolean;
 2 | export type PlainObject = {
 3 |   [key: string]: PlainObject | Primitive | undefined;
 4 | };
 5 | 
 6 | export interface Vault {
 7 |   id: string;
 8 |   insensitive: PlainObject;
 9 |   sensitive: Uint8Array;
10 | }
11 | 
--------------------------------------------------------------------------------
/packages/background/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   }
 9 | }
10 | 
--------------------------------------------------------------------------------
/packages/chain-validator/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/chain-validator/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/chain-validator/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/chain-validator/src/basic.ts:
--------------------------------------------------------------------------------
 1 | import { ChainInfo } from "@keplr-wallet/types";
 2 | import { ChainInfoSchema } from "./schema";
 3 | 
 4 | export async function validateBasicChainInfoType(
 5 |   chainInfo: ChainInfo,
 6 |   stripUnknown: boolean = true
 7 | ): Promise {
 8 |   return await ChainInfoSchema.validateAsync(chainInfo, {
 9 |     stripUnknown,
10 |   });
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/chain-validator/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./schema";
2 | export * from "./basic";
3 | export * from "./connection";
4 | export * from "./feature";
5 | 
--------------------------------------------------------------------------------
/packages/chain-validator/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/common/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/common/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/common/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/common/src/denom/denom.spec.ts:
--------------------------------------------------------------------------------
 1 | import { DenomHelper } from "./index";
 2 | 
 3 | describe("Test Denom helper methods", () => {
 4 |   test("Test ibc denom", () => {
 5 |     expect(
 6 |       DenomHelper.ibcDenom(
 7 |         [
 8 |           {
 9 |             portId: "transfer",
10 |             channelId: "channel-0",
11 |           },
12 |         ],
13 |         "uatom"
14 |       )
15 |     ).toBe(
16 |       "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2"
17 |     );
18 |   });
19 | });
20 | 
--------------------------------------------------------------------------------
/packages/common/src/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./kv-store";
 2 | export * from "./denom";
 3 | export * from "./mobx";
 4 | export * from "./utils";
 5 | export * from "./escape";
 6 | export * from "./json";
 7 | export * from "./icns";
 8 | export * from "./retry";
 9 | export * from "./sleep";
10 | export * from "./mnemonic";
11 | export * from "./coin";
12 | export * from "./service-worker";
13 | 
--------------------------------------------------------------------------------
/packages/common/src/json/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./sort";
2 | 
--------------------------------------------------------------------------------
/packages/common/src/kv-store/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./interface";
2 | export * from "./extension";
3 | export * from "./base";
4 | export * from "./memory";
5 | export * from "./local";
6 | export * from "./indexed-db";
7 | export * from "./prefix";
8 | export * from "./multi-get";
9 | 
--------------------------------------------------------------------------------
/packages/common/src/kv-store/interface.ts:
--------------------------------------------------------------------------------
 1 | export interface KVStore {
 2 |   get(key: string): Promise;
 3 |   set(key: string, data: T | null): Promise;
 4 |   prefix(): string;
 5 | }
 6 | 
 7 | export interface MultiGet {
 8 |   multiGet(keys: string[]): Promise<{ [key: string]: any }>;
 9 | }
10 | 
11 | export interface KVStoreProvider {
12 |   get(key: string): Promise<{ [key: string]: any }>;
13 |   set(items: { [key: string]: any }): Promise;
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/common/src/mobx/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./etc";
2 | 
--------------------------------------------------------------------------------
/packages/common/src/service-worker/index.ts:
--------------------------------------------------------------------------------
 1 | export const isServiceWorker = (): boolean => {
 2 |   return (
 3 |     typeof self !== "undefined" &&
 4 |     // eslint-disable-next-line @typescript-eslint/ban-ts-comment
 5 |     // @ts-ignore
 6 |     typeof ServiceWorkerGlobalScope !== "undefined" &&
 7 |     // eslint-disable-next-line @typescript-eslint/ban-ts-comment
 8 |     // @ts-ignore
 9 |     self instanceof ServiceWorkerGlobalScope
10 |   );
11 | };
12 | 
--------------------------------------------------------------------------------
/packages/common/src/sleep/index.ts:
--------------------------------------------------------------------------------
1 | export function sleep(ms: number): Promise {
2 |   return new Promise((resolve) => setTimeout(resolve, ms));
3 | }
4 | 
--------------------------------------------------------------------------------
/packages/common/src/utils/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./debouncer";
2 | 
--------------------------------------------------------------------------------
/packages/common/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/cosmjs-test/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/cosmjs-test/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/cosmjs-test/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/cosmjs-test/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "declaration": true,
 6 |     "rootDir": "src",
 7 |     "noEmit": true,
 8 |     // Secretjs uses nodejs 18 as typing.
 9 |     // However, keplr uses 16. And, it makes type conflicts.
10 |     // This package is not used as public and not included to product.
11 |     // So, just ignore the error from node_modules.
12 |     "skipLibCheck": true
13 |   }
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/cosmos/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/cosmos/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/cosmos/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/cosmos/src/adr-36/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./amino";
2 | 
--------------------------------------------------------------------------------
/packages/cosmos/src/chain-id/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./cosmos";
2 | export * from "./ethermint";
3 | 
--------------------------------------------------------------------------------
/packages/cosmos/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./account";
2 | export * from "./bech32";
3 | export * from "./chain-id";
4 | export * from "./tx-tracer";
5 | export * from "./stargate";
6 | export * from "./adr-36";
7 | export * from "./signing";
8 | 
--------------------------------------------------------------------------------
/packages/cosmos/src/signing/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./encode";
2 | 
--------------------------------------------------------------------------------
/packages/cosmos/src/stargate/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./codec";
2 | export * from "./decoder";
3 | export * from "./wrapper";
4 | 
--------------------------------------------------------------------------------
/packages/cosmos/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/crypto/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/crypto/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/crypto/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/crypto/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./mnemonic";
2 | export * from "./key";
3 | export * from "./hash";
4 | 
--------------------------------------------------------------------------------
/packages/crypto/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./tx";
2 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/src/tx/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./send-tx";
 2 | export * from "./types";
 3 | export * from "./chain";
 4 | export * from "./amount";
 5 | export * from "./recipient";
 6 | export * from "./sender";
 7 | export * from "./errors";
 8 | export * from "./fee-rate";
 9 | export * from "./fee";
10 | export * from "./psbt-simulator";
11 | export * from "./validate";
12 | export * from "./tx-size";
13 | export * from "./available-balance";
14 | 
--------------------------------------------------------------------------------
/packages/hooks-bitcoin/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./tx";
2 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/src/tx/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./errors";
 2 | export * from "./types";
 3 | export * from "./fee";
 4 | export * from "./gas";
 5 | export * from "./recipient";
 6 | export * from "./amount";
 7 | export * from "./sender";
 8 | export * from "./send-tx";
 9 | export * from "./chain";
10 | export * from "./gas-simulator";
11 | export * from "./validate";
12 | export * from "./noop-amount";
13 | export * from "./name-service";
14 | 
--------------------------------------------------------------------------------
/packages/hooks-starknet/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/hooks/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/hooks/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/hooks/src/ibc/errors.ts:
--------------------------------------------------------------------------------
1 | export class ChannelNotSetError extends Error {
2 |   constructor(m: string) {
3 |     super(m);
4 |     // Set the prototype explicitly.
5 |     Object.setPrototypeOf(this, ChannelNotSetError.prototype);
6 |   }
7 | }
8 | 
--------------------------------------------------------------------------------
/packages/hooks/src/ibc/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./amount";
2 | export * from "./channel";
3 | export * from "./errors";
4 | export * from "./send-ibc-transfer";
5 | export * from "./types";
6 | export * from "./reciepient";
7 | 
--------------------------------------------------------------------------------
/packages/hooks/src/ibc/types.ts:
--------------------------------------------------------------------------------
 1 | import { UIProperties } from "../tx";
 2 | 
 3 | export interface Channel {
 4 |   portId: string;
 5 |   channelId: string;
 6 |   counterpartyChainId: string;
 7 | }
 8 | 
 9 | export interface IIBCChannelConfig {
10 |   channels: Channel[];
11 |   setChannels(channels: Channel[]): void;
12 | 
13 |   uiProperties: UIProperties;
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/hooks/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./tx";
2 | export * from "./sign-doc";
3 | export * from "./ibc";
4 | 
--------------------------------------------------------------------------------
/packages/hooks/src/sign-doc/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./amount";
2 | export * from "./helper";
3 | 
--------------------------------------------------------------------------------
/packages/hooks/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/ledger-cosmos/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/ledger-cosmos/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/ledger-cosmos/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/ledger-cosmos/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./constants";
3 | export * from "./app";
4 | export { getAppInfo } from "./device";
5 | 
--------------------------------------------------------------------------------
/packages/ledger-cosmos/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./mobx";
2 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/src/mobx/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./etc";
2 | export * from "./debounce";
3 | 
--------------------------------------------------------------------------------
/packages/mobx-utils/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/popup/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/popup/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/popup/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/popup/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/.eslintignore:
--------------------------------------------------------------------------------
1 | !(proto-types-gen)/**/*.ts
2 | !(proto-types-gen)/**/*.js
3 | !(proto-types-gen)/**/*.mjs
4 | !(proto-types-gen)/**/*.cjs
5 | !(proto-types-gen)/**/*.map
6 | outputHash
7 | .DS_Store
8 | 
--------------------------------------------------------------------------------
/packages/proto-types/.prettierignore:
--------------------------------------------------------------------------------
1 | !(proto-types-gen)/**/*.ts
2 | !(proto-types-gen)/**/*.js
3 | !(proto-types-gen)/**/*.mjs
4 | !(proto-types-gen)/**/*.cjs
5 | !(proto-types-gen)/**/*.map
6 | outputHash
7 | .DS_Store
8 | 
--------------------------------------------------------------------------------
/packages/proto-types/README.md:
--------------------------------------------------------------------------------
1 | This package is used inside the keplr-wallet library.  
2 | The protobuf option differs from cosmjs. There’s no guarantee that this could be used with cosmjs, as it’s also not recommended.  
3 | 
4 | This package is created by proto-types-gen directory.  
5 | Reference the proto-types-gen directory for more information on how it’s created.  
6 | 
--------------------------------------------------------------------------------
/packages/proto-types/outputHash:
--------------------------------------------------------------------------------
1 | 47xVj6yH8GxPnu1BOIH1MiJVtlE6POLMYvtUZYTBu/5MPH+/VZKmDQ2RjbwGQPI3Dh7hk8SpsJifN5sqiEPggprqn2RtVKJsuO2Y8DLAOmluJs1QiWK+48s6QFCj1ngJHTbcYyx8zscGTLTJpxn9rxdR/+cPKXJdeaqXzulJEYlXTSU7x80PSUD7rlp2mWT0RYGFDIN+Fik5sFOv7Um1WRmAnzsEu+hDNatREyB47p1Gxms6JX0klLRyAyxUnUJRvDIjqQiAHvjtBGK0z5Fgtw08ei6MwIGQTf1GQHMO/FAQfd3uq8plIG5KNxinIvHE3P5IvnCYz0WJEl0GSVw6Za2nX8xGXkhuw9I+u+EdP2Sj3Gc0rf1SQCQY5IcqvdnIm4v3f89u5VMRD8rqlR06rzkzLExuT0v7bDG5uo7SViLFwaPQwr+SGmUELNRuyT3H804T5oz89t26sCwaz+7L7/QacaP7ruNW
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/atomone/photon/v1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package atomone.photon.v1;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | import "atomone/photon/v1/photon.proto";
 6 | import "amino/amino.proto";
 7 | 
 8 | option go_package = "github.com/atomone-hub/atomone/x/photon/types";
 9 | 
10 | // GenesisState defines the x/photon module's genesis state.
11 | message GenesisState {
12 | 	Params params = 1 [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ];
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/babylon/btccheckpoint/v1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package babylon.btccheckpoint.v1;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | import "babylon/btccheckpoint/v1/params.proto";
 6 | 
 7 | option go_package = "github.com/babylonlabs-io/babylon/x/btccheckpoint/types";
 8 | 
 9 | // GenesisState defines the btccheckpoint module's genesis state.
10 | message GenesisState { Params params = 1 [ (gogoproto.nullable) = false ]; }
11 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/babylon/epoching/v1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package babylon.epoching.v1;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | import "babylon/epoching/v1/params.proto";
 6 | 
 7 | option go_package = "github.com/babylonlabs-io/babylon/x/epoching/types";
 8 | 
 9 | // GenesisState defines the epoching module's genesis state.
10 | message GenesisState { Params params = 1 [ (gogoproto.nullable) = false ]; }
11 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/babylon/mint/v1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package babylon.mint.v1;
 3 | 
 4 | option go_package = "github.com/babylonlabs-io/babylon/x/mint/types";
 5 | 
 6 | // GenesisState defines the mint module's genesis state.
 7 | message GenesisState {
 8 |   reserved 1; // 1 was previously used for the `Minter` field.
 9 | 
10 |   // BondDenom is the denomination of the token that should be minted.
11 |   string bond_denom = 2;
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/babylon/monitor/v1/genesis.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 | package babylon.monitor.v1;
3 | 
4 | option go_package = "github.com/babylonlabs-io/babylon/x/monitor/types";
5 | 
6 | // GenesisState defines the monitor module's genesis state.
7 | message GenesisState {}
8 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/cosmos/base/kv/v1beta1/kv.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package cosmos.base.kv.v1beta1;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | 
 6 | option go_package = "github.com/cosmos/cosmos-sdk/types/kv";
 7 | 
 8 | // Pairs defines a repeated slice of Pair objects.
 9 | message Pairs {
10 |   repeated Pair pairs = 1 [(gogoproto.nullable) = false];
11 | }
12 | 
13 | // Pair defines a key/value bytes tuple.
14 | message Pair {
15 |   bytes key   = 1;
16 |   bytes value = 2;
17 | }
18 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/cosmos/evidence/v1beta1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package cosmos.evidence.v1beta1;
 3 | 
 4 | option go_package = "github.com/cosmos/cosmos-sdk/x/evidence/types";
 5 | 
 6 | import "google/protobuf/any.proto";
 7 | 
 8 | // GenesisState defines the evidence module's genesis state.
 9 | message GenesisState {
10 |   // evidence defines all the evidence at genesis.
11 |   repeated google.protobuf.Any evidence = 1;
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/cosmos/feegrant/v1beta1/genesis.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package cosmos.feegrant.v1beta1;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | import "cosmos/feegrant/v1beta1/feegrant.proto";
 6 | 
 7 | option go_package = "github.com/cosmos/cosmos-sdk/x/feegrant";
 8 | 
 9 | // GenesisState contains a set of fee allowances, persisted from the store
10 | message GenesisState {
11 |   repeated Grant allowances = 1 [(gogoproto.nullable) = false];
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/initia/intertx/module/v1/module.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package initia.intertx.module.v1;
 4 | 
 5 | import "cosmos/app/v1alpha1/module.proto";
 6 | 
 7 | // Module is the config object of the builder module.
 8 | message Module {
 9 |   option (cosmos.app.v1alpha1.module) = {go_import: "github.com/initia-labs/initia/x/intertx"};
10 | 
11 |   // Authority defines the custom module authority.
12 |   // If not set, defaults to the governance module.
13 |   string authority = 2;
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/initia/move/module/v1/module.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package initia.move.module.v1;
 4 | 
 5 | import "cosmos/app/v1alpha1/module.proto";
 6 | 
 7 | // Module is the config object of the builder module.
 8 | message Module {
 9 |   option (cosmos.app.v1alpha1.module) = {go_import: "github.com/initia-labs/initia/x/move"};
10 | 
11 |   // Authority defines the custom module authority.
12 |   // If not set, defaults to the governance module.
13 |   string authority = 2;
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/initia/reward/module/v1/module.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package initia.reward.module.v1;
 4 | 
 5 | import "cosmos/app/v1alpha1/module.proto";
 6 | 
 7 | // Module is the config object of the builder module.
 8 | message Module {
 9 |   option (cosmos.app.v1alpha1.module) = {go_import: "github.com/initia-labs/initia/x/reward"};
10 | 
11 |   // Authority defines the custom module authority.
12 |   // If not set, defaults to the governance module.
13 |   string authority = 2;
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/noble/dollar/portal/v1/injection.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package noble.dollar.portal.v1;
 4 | 
 5 | option go_package = "dollar.noble.xyz/types/portal";
 6 | 
 7 | // MsgDeliverInjection is an internal message type used for delivering Noble
 8 | // Dollar Portal messages. It is specifically used to insert VAA's into the top
 9 | // of a block via ABCI++.
10 | message MsgDeliverInjection {
11 |   bytes vaa = 1;
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/noble/dollar/portal/v1/portal.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package noble.dollar.portal.v1;
 4 | 
 5 | option go_package = "dollar.noble.xyz/types/portal";
 6 | 
 7 | // Peer is the type that stores information about a peer.
 8 | message Peer {
 9 |   bytes transceiver = 1;
10 |   bytes manager = 2;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/noble/swap/v1/algorithm.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | 
 3 | package noble.swap.v1;
 4 | 
 5 | import "gogoproto/gogo.proto";
 6 | 
 7 | option go_package = "swap.noble.xyz/types";
 8 | 
 9 | // buf:lint:ignore ENUM_VALUE_PREFIX
10 | enum Algorithm {
11 |   option (gogoproto.goproto_enum_prefix) = false;
12 | 
13 |   // buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX
14 |   UNSPECIFIED = 0;
15 |   STABLESWAP = 1;
16 |   PERFECTPRICE = 2;
17 | }
18 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/stride/stakeibc/README.md:
--------------------------------------------------------------------------------
1 | Some of the data structures used in this module were inspired by Quicksilver.
2 | 
3 | Specifically, we used their modeling of interchain accounts and zones (although the implementation has since diverged) for the following data structures
4 | - Icaaccount
5 | - HostZone
6 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/stride/stakeibc/epoch_tracker.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package stride.stakeibc;
 3 | 
 4 | option go_package = "github.com/Stride-Labs/stride/v15/x/stakeibc/types";
 5 | 
 6 | message EpochTracker {
 7 |   string epoch_identifier = 1;
 8 |   uint64 epoch_number = 2;
 9 |   uint64 next_epoch_start_time = 3;
10 |   uint64 duration = 4;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/stride/stakeibc/ica_account.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package stride.stakeibc;
 3 | 
 4 | option go_package = "github.com/Stride-Labs/stride/v15/x/stakeibc/types";
 5 | 
 6 | enum ICAAccountType {
 7 |   DELEGATION = 0;
 8 |   FEE = 1;
 9 |   WITHDRAWAL = 2;
10 |   REDEMPTION = 3;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/genesis.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 | package types;
3 | 
4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
5 | 
6 | // GenesisState defines the capability module's genesis state.
7 | message GenesisState {
8 | }
9 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/msg_consolidate.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "types/type_observed_tx.proto";
 7 | import "gogoproto/gogo.proto";
 8 | 
 9 | message MsgConsolidate {
10 |   ObservedTx observed_tx = 1 [(gogoproto.nullable) = false];
11 |   bytes signer = 2  [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/msg_migrate.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "types/type_observed_tx.proto";
 7 | import "gogoproto/gogo.proto";
 8 | 
 9 | message MsgMigrate {
10 |   ObservedTx tx = 1 [(gogoproto.nullable) = false];
11 |   int64 block_height = 2;
12 |   bytes signer = 3  [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/msg_noop.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "types/type_observed_tx.proto";
 7 | import "gogoproto/gogo.proto";
 8 | 
 9 | message MsgNoOp {
10 |   ObservedTx observed_tx = 1 [(gogoproto.nullable) = false];
11 |   bytes signer = 2  [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
12 |   string action = 3;
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/msg_ragnarok.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "types/type_observed_tx.proto";
 7 | import "gogoproto/gogo.proto";
 8 | 
 9 | message MsgRagnarok {
10 |   ObservedTx tx = 1 [(gogoproto.nullable) = false];
11 |   int64 block_height = 2;
12 |   bytes signer = 3  [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/query_ban.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | option (gogoproto.marshaler_all) = true;
 9 | 
10 | message QueryBanRequest{
11 |   string address = 1;
12 |   string height = 2;
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/query_export.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | option (gogoproto.marshaler_all) = true;
 9 | 
10 | message QueryExportRequest{
11 |   string height = 1;
12 | }
13 | 
14 | message QueryExportResponse{
15 |   bytes content = 1;
16 | }
17 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/query_ragnarok.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | option (gogoproto.marshaler_all) = true;
 9 | 
10 | message QueryRagnarokRequest{
11 |   string height = 1;
12 | }
13 | 
14 | message QueryRagnarokResponse{
15 |   bool in_progress = 1;
16 | }
17 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/query_swap_queue.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | import "types/msg_swap.proto";
 8 | 
 9 | option (gogoproto.marshaler_all) = true;
10 | 
11 | message QuerySwapQueueRequest{
12 |   string height = 1;
13 | }
14 | 
15 | message QuerySwapQueueResponse{
16 |   repeated MsgSwap swap_queue = 1;
17 | }
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/query_swapper_clout.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | option (gogoproto.marshaler_all) = true;
 9 | 
10 | message QuerySwapperCloutRequest{
11 |   string address = 1;
12 |   string height = 2;
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_affiliate_fee_collector.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | message AffiliateFeeCollector {
 9 |   bytes owner_address = 1 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
10 |   string rune_amount = 2 [(gogoproto.customtype) = "cosmossdk.io/math.Uint", (gogoproto.nullable) = false];
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_jail.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | message Jail {
 9 |   bytes node_address = 1 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
10 |   int64 release_height = 2;
11 |   string reason = 3;
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_mimir.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | import "gogoproto/gogo.proto";
 5 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 6 | 
 7 | 
 8 | message NodeMimir {
 9 |   string key = 1;
10 |   int64 value = 2;
11 |   bytes signer = 3 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
12 | }
13 | 
14 | message NodeMimirs {
15 |   repeated NodeMimir mimirs = 1 [(gogoproto.nullable) = false];
16 | }
17 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_node_pause_chain.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | message NodePauseChain {
 9 |   bytes node_address = 1 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress"];
10 |   int64 block_height = 2;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_pol.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | message ProtocolOwnedLiquidity {
 9 |   string rune_deposited = 1 [(gogoproto.customtype) = "cosmossdk.io/math.Uint", (gogoproto.nullable) = false];
10 |   string rune_withdrawn = 2 [(gogoproto.customtype) = "cosmossdk.io/math.Uint", (gogoproto.nullable) = false];
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_ragnarok.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 |   
 6 | import "common/common.proto";
 7 | import "gogoproto/gogo.proto";
 8 | 
 9 | message RagnarokWithdrawPosition {
10 |   int64 number = 1;
11 |   common.Asset pool = 2 [(gogoproto.nullable) = false, (gogoproto.customtype) = "gitlab.com/thorchain/thornode/v3/common.Asset"];
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/type_reserve_contributor.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package types;
 3 | 
 4 | option go_package = "gitlab.com/thorchain/thornode/v3/x/thorchain/types";
 5 | 
 6 | import "gogoproto/gogo.proto";
 7 | 
 8 | message ReserveContributor {
 9 |   string address = 1 [(gogoproto.casttype) = "gitlab.com/thorchain/thornode/v3/common.Address"];
10 |   string amount = 2 [(gogoproto.customtype) = "cosmossdk.io/math.Uint", (gogoproto.nullable) = false];
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/third_party/proto/tendermint/libs/bits/types.proto:
--------------------------------------------------------------------------------
 1 | syntax = "proto3";
 2 | package tendermint.libs.bits;
 3 | 
 4 | option go_package = "github.com/tendermint/tendermint/proto/tendermint/libs/bits";
 5 | 
 6 | message BitArray {
 7 |   int64           bits  = 1;
 8 |   repeated uint64 elems = 2;
 9 | }
10 | 
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": ".",
 6 |     "declaration": true,
 7 |     "rootDir": "proto-types-gen/src"
 8 |   },
 9 |   "exclude": [],
10 |   "include": [
11 |     "proto-types-gen/src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/provider-extension/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider-extension/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider-extension/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/provider-extension/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./keplr";
2 | export * from "./keplr-fallback";
3 | 
--------------------------------------------------------------------------------
/packages/provider-extension/src/version.ts:
--------------------------------------------------------------------------------
1 | export const BUILD_VERSION = "0.12.285";
2 | 
--------------------------------------------------------------------------------
/packages/provider-extension/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/provider-mock/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider-mock/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider-mock/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/provider-mock/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./mock";
2 | 
--------------------------------------------------------------------------------
/packages/provider-mock/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/provider/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/provider/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/provider/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./core";
2 | export * from "./cosmjs";
3 | export * from "./enigma";
4 | export * from "./inject";
5 | 
--------------------------------------------------------------------------------
/packages/provider/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/router-extension/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router-extension/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router-extension/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/env/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./extension";
2 | export * from "./content-script";
3 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/guard/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./extension";
2 | export * from "./content-script";
3 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./router";
2 | export * from "./requester";
3 | export * from "./guard";
4 | export * from "./env";
5 | export * as InteractionAddon from "./interaction-addon";
6 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/interaction-addon/constants.ts:
--------------------------------------------------------------------------------
1 | export const ROUTE = "extension-interaction-addon";
2 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/interaction-addon/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 | export * from "./init";
4 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/interaction-addon/init.ts:
--------------------------------------------------------------------------------
 1 | import { Router } from "@keplr-wallet/router";
 2 | import { ROUTE } from "./constants";
 3 | import { InteractionAddonService } from "./service";
 4 | import { getHandler } from "./handler";
 5 | import { ReplacePageMsg } from "./messages";
 6 | 
 7 | export function init(router: Router, service: InteractionAddonService): void {
 8 |   router.registerMessage(ReplacePageMsg);
 9 | 
10 |   router.addHandler(ROUTE, getHandler(service));
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/interaction-addon/service.ts:
--------------------------------------------------------------------------------
1 | export class InteractionAddonService {
2 |   async replacePage(url: string): Promise {
3 |     if (typeof window !== "undefined") {
4 |       window.location.href = url;
5 |     }
6 |   }
7 | }
8 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/requester/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./extension";
2 | export * from "./content-script";
3 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/router/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./extension";
2 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/utils/index.ts:
--------------------------------------------------------------------------------
 1 | /**
 2 |  * getKeplrExtensionRouterId returns the `window.keplrExtensionRouterId`.
 3 |  * If the `window.keplrExtensionRouterId` is not initialized, it will be initialized and returned.
 4 |  */
 5 | export function getKeplrExtensionRouterId(): number {
 6 |   if (globalThis.keplrExtensionRouterId == null) {
 7 |     globalThis.keplrExtensionRouterId = Math.floor(
 8 |       Math.random() * Number.MAX_SAFE_INTEGER
 9 |     );
10 |   }
11 |   return globalThis.keplrExtensionRouterId;
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/router-extension/src/window.d.ts:
--------------------------------------------------------------------------------
1 | export {};
2 | 
3 | declare global {
4 |   // eslint-disable-next-line no-var
5 |   var keplrExtensionRouterId: number | undefined | null;
6 | }
7 | 
--------------------------------------------------------------------------------
/packages/router-extension/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/router-mock/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router-mock/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router-mock/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/router-mock/src/guard/index.ts:
--------------------------------------------------------------------------------
 1 | import { Guard } from "@keplr-wallet/router";
 2 | import { ExtensionGuards } from "@keplr-wallet/router-extension";
 3 | 
 4 | export class MockGuards {
 5 |   static readonly checkOriginIsValid: Guard =
 6 |     ExtensionGuards.checkOriginIsValid;
 7 | 
 8 |   static readonly checkMessageIsInternal: Guard =
 9 |     ExtensionGuards.checkMessageIsInternal;
10 | }
11 | 
--------------------------------------------------------------------------------
/packages/router-mock/src/index.ts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/7d58472a1f7a2ed2a86a310f0319b9bb3bc0268b/packages/router-mock/src/index.ts
--------------------------------------------------------------------------------
/packages/router-mock/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/router/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/router/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/router/src/constant.ts:
--------------------------------------------------------------------------------
1 | export const BACKGROUND_PORT = "background";
2 | export const APP_PORT = "popup";
3 | export const WEBPAGE_PORT = "webpage";
4 | 
--------------------------------------------------------------------------------
/packages/router/src/handler.ts:
--------------------------------------------------------------------------------
 1 | import { Message } from "./message";
 2 | import { Env } from "./types";
 3 | 
 4 | export type Handler = (env: Env, msg: Message) => any;
 5 | export type InternalHandler> = (
 6 |   env: Env,
 7 |   msg: M
 8 | ) =>
 9 |   | (M extends Message ? R : never)
10 |   | Promise ? R : never>;
11 | 
--------------------------------------------------------------------------------
/packages/router/src/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./router";
 2 | export * from "./handler";
 3 | export * from "./interfaces";
 4 | export * from "./types";
 5 | export * from "./error";
 6 | export * from "./message";
 7 | export * from "./constant";
 8 | export * from "./encoding";
 9 | export * from "./simple";
10 | export * from "./uint8-array";
11 | 
--------------------------------------------------------------------------------
/packages/router/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./fetch";
2 | export * from "./error";
3 | export * from "./types";
4 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/src/types.ts:
--------------------------------------------------------------------------------
 1 | export interface SimpleFetchRequestOptions extends RequestInit {
 2 |   validateStatus?: (status: number) => boolean;
 3 | }
 4 | 
 5 | export interface SimpleFetchResponse {
 6 |   readonly url: string;
 7 |   readonly data: R;
 8 |   readonly headers: Headers;
 9 |   readonly status: number;
10 |   readonly statusText: string;
11 | }
12 | 
--------------------------------------------------------------------------------
/packages/simple-fetch/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/src/account/constant.ts:
--------------------------------------------------------------------------------
1 | export const DUST_THRESHOLD = 546;
2 | export const BRANCH_AND_BOUND_TIMEOUT_MS = 1000;
3 | export const MIN_RELAY_FEE = 157;
4 | export const MAX_SAFE_OUTPUT = 2 ** 53 - 1;
5 | export const MAX_BITCOIN_SUPPLY = 210000000000000;
6 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/src/account/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./base";
2 | export * from "./store";
3 | export * from "./types";
4 | export * from "./constant";
5 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./account";
2 | export * from "./queries";
3 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/src/queries/indexer/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./address-txs";
2 | export * from "./balance";
3 | export * from "./fee-estimates";
4 | export * from "./tx";
5 | export * from "./utxos";
6 | 
--------------------------------------------------------------------------------
/packages/stores-bitcoin/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-core/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-core/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-core/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-core/src/core/chains-ui/index.ts:
--------------------------------------------------------------------------------
 1 | import {
 2 |   chainsUIForegroundInit,
 3 |   ChainsUIForegroundService,
 4 | } from "@keplr-wallet/background";
 5 | import { Router } from "@keplr-wallet/router";
 6 | 
 7 | export class ChainsUIForegroundStore {
 8 |   constructor(
 9 |     protected readonly router: Router,
10 |     protected readonly handler: (vaultId: string) => void
11 |   ) {
12 |     const service = new ChainsUIForegroundService(handler);
13 |     chainsUIForegroundInit(router, service);
14 |   }
15 | }
16 | 
--------------------------------------------------------------------------------
/packages/stores-core/src/core/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./interaction";
2 | export * from "./keyring";
3 | export * from "./tokens";
4 | export * from "./permission-manager";
5 | export * from "./chains-ui";
6 | 
--------------------------------------------------------------------------------
/packages/stores-core/src/core/interaction/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./interaction";
 2 | export * from "./permission";
 3 | export * from "./sign";
 4 | export * from "./chain-suggest";
 5 | export * from "./icns";
 6 | export * from "./eth-sign";
 7 | export * from "./starknet-sign-tx";
 8 | export * from "./starknet-sign-message";
 9 | export * from "./bitcoin-sign-tx";
10 | export * from "./bitcoin-sign-message";
11 | 
--------------------------------------------------------------------------------
/packages/stores-core/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./core";
2 | 
--------------------------------------------------------------------------------
/packages/stores-core/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-etc/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-etc/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-etc/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/axelar/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./currency-registrar";
2 | export * from "./token-info";
3 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/axelar/types.ts:
--------------------------------------------------------------------------------
 1 | export type TokenInfo = {
 2 |   asset: string;
 3 |   details: {
 4 |     token_name: string;
 5 |     symbol: string;
 6 |     decimals: number;
 7 |     capacity: string;
 8 |   };
 9 |   address: string;
10 |   confirmed: boolean;
11 |   is_external: boolean;
12 |   burner_code_hash: string;
13 | };
14 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/erc20/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/gravity-bridge/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./currency-registrar";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | export * from "./erc20";
3 | export * from "./gravity-bridge";
4 | export * from "./axelar";
5 | export * from "./terra-classic/treasury";
6 | export * from "./token-info";
7 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/initia/dynamicfee/types.ts:
--------------------------------------------------------------------------------
1 | export interface DynamicFeeParams {
2 |   params: {
3 |     base_gas_price: string;
4 |   };
5 | }
6 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/terra-classic/treasury/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/terra-classic/treasury/types.ts:
--------------------------------------------------------------------------------
 1 | export type TaxCaps = {
 2 |   tax_caps:
 3 |     | {
 4 |         denom: string;
 5 |         tax_cap: string;
 6 |       }[]
 7 |     | null;
 8 | };
 9 | 
10 | export type TaxRate = {
11 |   tax_rate: string;
12 | };
13 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/token-info/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/top-up-status/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/src/tx-msg-decoder/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | 
--------------------------------------------------------------------------------
/packages/stores-etc/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-eth/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-eth/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-eth/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-eth/src/account/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./base";
2 | export * from "./store";
3 | 
--------------------------------------------------------------------------------
/packages/stores-eth/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | export * from "./account";
3 | export * from "./constants";
4 | export * from "./currency-registrar";
5 | export * from "./types";
6 | 
--------------------------------------------------------------------------------
/packages/stores-eth/src/types.ts:
--------------------------------------------------------------------------------
 1 | import { UnsignedTransaction } from "@ethersproject/transactions";
 2 | 
 3 | export type UnsignedEVMTransaction = UnsignedTransaction;
 4 | 
 5 | export type UnsignedEVMTransactionWithErc20Approvals =
 6 |   UnsignedEVMTransaction & {
 7 |     requiredErc20Approvals?: {
 8 |       amount: string;
 9 |       spender: string;
10 |       tokenAddress: string;
11 |     }[];
12 |   };
13 | 
--------------------------------------------------------------------------------
/packages/stores-eth/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./channel";
2 | export * from "./currency-registrar";
3 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface Channel {
2 |   portId: string;
3 |   channelId: string;
4 |   counterpartyChainId: string;
5 | }
6 | 
--------------------------------------------------------------------------------
/packages/stores-ibc/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/src/account/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./base";
2 | export * from "./store";
3 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | export * from "./constants";
3 | export * from "./account";
4 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/src/queries/staking/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./validators";
2 | export * from "./pool-member-info";
3 | export * from "./types";
4 | export * from "./apr";
5 | 
--------------------------------------------------------------------------------
/packages/stores-starknet/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/stores/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/stores/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores/src/account/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./types";
 2 | export * from "./base";
 3 | export * from "./cosmos";
 4 | export * from "./get-keplr";
 5 | export * from "./secret";
 6 | export * from "./store";
 7 | export * from "./cosmwasm";
 8 | export * from "./utils";
 9 | export * from "./context";
10 | export * from "./noble";
11 | export * from "./babylon";
12 | 
--------------------------------------------------------------------------------
/packages/stores/src/chain/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./base";
3 | 
--------------------------------------------------------------------------------
/packages/stores/src/common/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./map";
2 | export * from "./query";
3 | export * from "./utils";
4 | export * from "./types";
5 | export * from "./merge";
6 | 
--------------------------------------------------------------------------------
/packages/stores/src/common/query/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./query";
2 | export * from "./post-query";
3 | export * from "./json-rpc";
4 | export * from "./context";
5 | 
--------------------------------------------------------------------------------
/packages/stores/src/common/types.ts:
--------------------------------------------------------------------------------
1 | export type CoinPrimitive = {
2 |   denom: string;
3 |   amount: string;
4 | };
5 | 
--------------------------------------------------------------------------------
/packages/stores/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./account";
2 | export * from "./common";
3 | export * from "./price";
4 | export * from "./query";
5 | export * from "./chain";
6 | export * from "./lsm";
7 | export * from "./token-factory";
8 | 
--------------------------------------------------------------------------------
/packages/stores/src/lsm/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./currency-registrar";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/price/types.ts:
--------------------------------------------------------------------------------
1 | export type CoinGeckoSimplePrice = {
2 |   [coinId: string]: {
3 |     [vsCurrency: string]: number;
4 |   };
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/agoric/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/agoric/types.ts:
--------------------------------------------------------------------------------
1 | export type VstorageResult = {
2 |   value: string;
3 | };
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/babylon/epoching/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./last-epoch-msgs";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/babylon/epoching/types.ts:
--------------------------------------------------------------------------------
 1 | export interface EpochMessage {
 2 |   tx_id: string;
 3 |   msg_id: string;
 4 |   block_height: string;
 5 |   block_time: string;
 6 |   msg: string;
 7 | }
 8 | 
 9 | export interface LatestEpochMessagesResponse {
10 |   latest_epoch_msgs: {
11 |     epoch_number: string;
12 |     msgs: EpochMessage[];
13 |   }[];
14 | }
15 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/babylon/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./queries";
2 | export * from "./epoching";
3 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/account/types.ts:
--------------------------------------------------------------------------------
1 | export type AuthAccount = {
2 |   account: any;
3 | };
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/balance/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./balances";
2 | export * from "./spendable";
3 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/balance/types.ts:
--------------------------------------------------------------------------------
 1 | import { CoinPrimitive } from "../../../common";
 2 | 
 3 | export type Balances = {
 4 |   balances: CoinPrimitive[];
 5 |   // TODO: Handle pagination?
 6 |   // pagination: {};
 7 | };
 8 | 
 9 | export type SpendableBalances = {
10 |   balances: CoinPrimitive[];
11 |   // TODO: Handle pagination?
12 |   // pagination: {};
13 | };
14 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/distribution/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./params";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/distribution/types.ts:
--------------------------------------------------------------------------------
1 | export type DistributionParams = {
2 |   params: {
3 |     community_tax: string;
4 |     base_proposer_reward: string;
5 |     bonus_proposer_reward: string;
6 |     withdraw_addr_enabled: boolean;
7 |   };
8 | };
9 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/evm/feemarket/types.ts:
--------------------------------------------------------------------------------
1 | export interface BaseFee {
2 |   base_fee: string;
3 | }
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/feemarket/types.ts:
--------------------------------------------------------------------------------
1 | export interface GasPrices {
2 |   prices: {
3 |     denom: string;
4 |     amount: string;
5 |   }[];
6 | }
7 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/ibc/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./channel";
2 | export * from "./client-state";
3 | export * from "./denom-trace";
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./staking";
 2 | export * from "./account";
 3 | export * from "./ibc";
 4 | export * from "./balance";
 5 | export * from "./authz";
 6 | 
 7 | export * as Staking from "./staking/types";
 8 | export * as Account from "./account/types";
 9 | export * as IBC from "./ibc/types";
10 | export * as Balance from "./balance/types";
11 | export * as AuthZ from "./authz/types";
12 | 
13 | export * from "./queries";
14 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/staking/endpoint-by-chain-id.ts:
--------------------------------------------------------------------------------
1 | export const ENDPOINT_BY_CHAIN_ID: Record> = {
2 |   "interwoven-1": {
3 |     pool: "/initia/mstaking/v1/pool",
4 |     params: "/initia/mstaking/v1/params",
5 |     validators: "/initia/mstaking/v1/validators",
6 |   },
7 | };
8 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmos/staking/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./delegations";
2 | export * from "./rewards";
3 | export * from "./unbonding-delegations";
4 | export * from "./validators";
5 | export * from "./pool";
6 | export * from "./params";
7 | export * from "./babylon-btc-delegation-reward";
8 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmwasm/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./cw20-balance";
2 | export * as CosmWasm from "./types";
3 | export * from "./queries";
4 | export * from "./neutron/staking-rewards";
5 | export * from "./neutron/staking-rewards-config";
6 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/cosmwasm/types.ts:
--------------------------------------------------------------------------------
 1 | export type Cw20ContractBalance = {
 2 |   balance: string;
 3 | };
 4 | 
 5 | export type Cw20ContractTokenInfo = {
 6 |   decimals: number;
 7 |   name: string;
 8 |   symbol: string;
 9 |   total_supply: string;
10 | };
11 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/icns/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./names";
2 | export * from "./queries";
3 | 
4 | export * as ICNS from "./types";
5 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/icns/types.ts:
--------------------------------------------------------------------------------
1 | export interface ICNSNames {
2 |   names: string[];
3 |   primary_name: string;
4 | }
5 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./queries";
 2 | export * from "./chain-query";
 3 | export * from "./balances";
 4 | 
 5 | export * from "./agoric";
 6 | export * from "./cosmos";
 7 | export * from "./cosmwasm";
 8 | export * from "./secret-wasm";
 9 | export * from "./osmosis";
10 | export * from "./icns";
11 | export * from "./noble";
12 | export * from "./babylon";
13 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/noble/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./swap";
2 | 
3 | export * from "./queries";
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/noble/swap/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./rates";
2 | export * from "./pools";
3 | export * from "./simulate-swap";
4 | export * from "./types";
5 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/noble/yield/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./yield";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/noble/yield/types.ts:
--------------------------------------------------------------------------------
1 | export interface NobleYield {
2 |   claimable_amount: string;
3 | }
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/osmosis/base-fee/types.ts:
--------------------------------------------------------------------------------
1 | export type BaseFee = {
2 |   base_fee: string;
3 | };
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/osmosis/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./txfees/fee-tokens";
 2 | export * from "./txfees/spot-price-by-denom";
 3 | export * from "./txfees/base-denom";
 4 | export * from "./base-fee";
 5 | 
 6 | export * as TxFeesFeeTokens from "./txfees/fee-tokens/types";
 7 | export * as TxFeesSpotPriceByDenom from "./txfees/spot-price-by-denom/types";
 8 | export * as TxFeesBaseDenom from "./txfees/base-denom/types";
 9 | export * as BaseFee from "./base-fee/types";
10 | 
11 | export * from "./queries";
12 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/osmosis/txfees/base-denom/types.ts:
--------------------------------------------------------------------------------
1 | export type BaseDenom = {
2 |   base_denom: string;
3 | };
4 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/osmosis/txfees/fee-tokens/types.ts:
--------------------------------------------------------------------------------
1 | export type FeeTokens = {
2 |   fee_tokens: {
3 |     denom: string;
4 |     poolID: string;
5 |   }[];
6 | };
7 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/osmosis/txfees/spot-price-by-denom/types.ts:
--------------------------------------------------------------------------------
1 | export type SpotPriceByDenom = {
2 |   poolID: string;
3 |   // Dec
4 |   spot_price: string;
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/secret-wasm/errors.ts:
--------------------------------------------------------------------------------
1 | export class WrongViewingKeyError extends Error {
2 |   constructor(m: string) {
3 |     super(m);
4 |     // Set the prototype explicitly.
5 |     Object.setPrototypeOf(this, WrongViewingKeyError.prototype);
6 |   }
7 | }
8 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/secret-wasm/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./contract-hash";
2 | export * from "./secret20-balance";
3 | export * from "./errors";
4 | 
5 | export * as SecretWasm from "./types";
6 | 
7 | export * from "./queries";
8 | 
--------------------------------------------------------------------------------
/packages/stores/src/query/secret-wasm/types.ts:
--------------------------------------------------------------------------------
 1 | export type SecretContractCodeHash = {
 2 |   code_hash: string;
 3 | };
 4 | 
 5 | export type Secret20ContractTokenInfo = {
 6 |   token_info: {
 7 |     decimals: number;
 8 |     name: string;
 9 |     symbol: string;
10 |     // TODO: Add the `total_supply`
11 |   };
12 | };
13 | 
--------------------------------------------------------------------------------
/packages/stores/src/token-factory/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./currency-registrar";
2 | 
--------------------------------------------------------------------------------
/packages/stores/src/window.d.ts:
--------------------------------------------------------------------------------
1 | import { Window as KeplrWindow } from "@keplr-wallet/types";
2 | 
3 | declare global {
4 |   // eslint-disable-next-line @typescript-eslint/no-empty-interface
5 |   interface Window extends KeplrWindow {}
6 | }
7 | 
--------------------------------------------------------------------------------
/packages/stores/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/topup-client/jest.config.js:
--------------------------------------------------------------------------------
 1 | module.exports = {
 2 |   preset: "ts-jest",
 3 |   testEnvironment: "node",
 4 |   testMatch: ["**/__tests__/**/*.ts", "**/?(*.)+(spec|test).ts"],
 5 |   moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"],
 6 |   transform: {
 7 |     "^.+\\.ts$": "ts-jest",
 8 |   },
 9 |   collectCoverageFrom: ["src/**/*.ts", "!src/**/*.d.ts"],
10 | };
11 | 
--------------------------------------------------------------------------------
/packages/topup-client/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./types";
2 | export * from "./utils";
3 | export * from "./client";
4 | 
5 | export { TopUpClient } from "./client";
6 | export { generateTraceId } from "./utils";
7 | export type { TopUpRequestBody, TopUpResponseBody } from "./types";
8 | 
--------------------------------------------------------------------------------
/packages/topup-client/src/types.ts:
--------------------------------------------------------------------------------
 1 | import type { StdFee } from "@keplr-wallet/types";
 2 | 
 3 | export type TopUpRequestBody = {
 4 |   chainId: string;
 5 |   recipientAddress: string;
 6 |   fee: Omit;
 7 | };
 8 | 
 9 | export type ErrorResponseBody = {
10 |   error: string;
11 | };
12 | 
13 | export type TopUpResponseBody =
14 |   | {
15 |       txHash: string;
16 |     }
17 |   | ErrorResponseBody;
18 | 
--------------------------------------------------------------------------------
/packages/topup-client/src/utils.ts:
--------------------------------------------------------------------------------
1 | /**
2 |  * Generate a unique trace ID for request tracking
3 |  * @returns A unique trace ID string
4 |  */
5 | export function generateTraceId(): string {
6 |   return `topup_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
7 | }
8 | 
--------------------------------------------------------------------------------
/packages/topup-client/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "outDir": "build",
 5 |     "skipLibCheck": true,
 6 |     "declaration": true
 7 |   },
 8 |   "include": ["src/**/*"],
 9 |   "exclude": ["node_modules", "build"]
10 | }
11 | 
--------------------------------------------------------------------------------
/packages/types/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/types/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/types/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/types/src/bech32.ts:
--------------------------------------------------------------------------------
1 | export interface Bech32Config {
2 |   readonly bech32PrefixAccAddr: string;
3 |   readonly bech32PrefixAccPub: string;
4 |   readonly bech32PrefixValAddr: string;
5 |   readonly bech32PrefixValPub: string;
6 |   readonly bech32PrefixConsAddr: string;
7 |   readonly bech32PrefixConsPub: string;
8 | }
9 | 
--------------------------------------------------------------------------------
/packages/types/src/bip44.ts:
--------------------------------------------------------------------------------
1 | export interface BIP44 {
2 |   readonly coinType: number;
3 |   readonly purpose?: number;
4 | }
5 | 
--------------------------------------------------------------------------------
/packages/types/src/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./currency";
 2 | export * from "./bech32";
 3 | export * from "./bip44";
 4 | export * from "./chain-info";
 5 | export * from "./wallet";
 6 | export * from "./window";
 7 | export * from "./ethereum";
 8 | export * from "./cosmjs";
 9 | export * from "./cosmjs-alt";
10 | export * from "./secretjs";
11 | export * from "./settled";
12 | 
--------------------------------------------------------------------------------
/packages/types/src/secretjs.ts:
--------------------------------------------------------------------------------
 1 | export interface SecretUtils {
 2 |   getPubkey: () => Promise;
 3 |   decrypt: (ciphertext: Uint8Array, nonce: Uint8Array) => Promise;
 4 |   encrypt: (
 5 |     contractCodeHash: string,
 6 |     // eslint-disable-next-line @typescript-eslint/ban-types
 7 |     msg: object
 8 |   ) => Promise;
 9 |   getTxEncryptionKey: (nonce: Uint8Array) => Promise;
10 | }
11 | 
--------------------------------------------------------------------------------
/packages/types/src/settled.ts:
--------------------------------------------------------------------------------
 1 | export type SettledResponse =
 2 |   | {
 3 |       status: "fulfilled";
 4 |       value: T;
 5 |     }
 6 |   | {
 7 |       status: "rejected";
 8 |       reason: Error;
 9 |     };
10 | 
11 | export type SettledResponses = SettledResponse[];
12 | 
--------------------------------------------------------------------------------
/packages/types/src/wallet/eip6963.ts:
--------------------------------------------------------------------------------
 1 | import { IEthereumProvider } from "./ethereum";
 2 | 
 3 | export enum EIP6963EventNames {
 4 |   Announce = "eip6963:announceProvider",
 5 |   Request = "eip6963:requestProvider",
 6 | }
 7 | 
 8 | export type EIP6963ProviderInfo = {
 9 |   uuid: string;
10 |   name: string;
11 |   icon: string;
12 |   rdns: string;
13 | };
14 | 
15 | export type EIP6963ProviderDetail = {
16 |   info: EIP6963ProviderInfo;
17 |   provider: IEthereumProvider;
18 | };
19 | 
--------------------------------------------------------------------------------
/packages/types/src/wallet/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./keplr";
2 | export * from "./eip6963";
3 | export * from "./ethereum";
4 | export * from "./starknet";
5 | export * from "./bitcoin";
6 | 
--------------------------------------------------------------------------------
/packages/types/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/unit/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/unit/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/unit/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/unit/src/index.ts:
--------------------------------------------------------------------------------
 1 | export * from "./int-pretty";
 2 | export * from "./coin-pretty";
 3 | export * from "./coin";
 4 | export * from "./int";
 5 | export * from "./decimal";
 6 | export * from "./coin-utils";
 7 | export * from "./dec-utils";
 8 | export * from "./price-pretty";
 9 | export * from "./rate-pretty";
10 | 
--------------------------------------------------------------------------------
/packages/unit/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src"
 8 |   },
 9 |   "include": [
10 |     "src/**/*"
11 |   ]
12 | }
13 | 
--------------------------------------------------------------------------------
/packages/wc-client-example/src/index.html:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 |     
 4 |         
 5 |         
 6 |         
 7 |         Keplr WC Example
 8 |     
 9 |     
10 |         
11 |         
12 |         
13 |     
14 | 
15 | 
--------------------------------------------------------------------------------
/packages/wc-client-example/src/index.tsx:
--------------------------------------------------------------------------------
 1 | // eslint-disable-next-line import/no-extraneous-dependencies
 2 | import "regenerator-runtime/runtime";
 3 | 
 4 | import ReactDOM from "react-dom";
 5 | import { StoreProvider } from "./stores";
 6 | import React from "react";
 7 | import { App } from "./app";
 8 | 
 9 | ReactDOM.render(
10 |   
11 |     
12 |   ,
13 |   document.getElementById("root")
14 | );
15 | 
--------------------------------------------------------------------------------
/packages/wc-client-example/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/wc-client/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/wc-client/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/wc-client/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/wc-client/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "skipLibCheck": true
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
/packages/wc-qrcode-modal/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/wc-qrcode-modal/.prettierignore:
--------------------------------------------------------------------------------
1 | build/*
2 | .DS_Store
3 | 
--------------------------------------------------------------------------------
/packages/wc-qrcode-modal/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 |   preset: "ts-jest",
3 |   testEnvironment: "node",
4 |   testMatch: ["**/src/**/?(*.)+(spec|test).[jt]s?(x)"],
5 | };
6 | 
--------------------------------------------------------------------------------
/packages/wc-qrcode-modal/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "extends": "../../tsconfig.json",
 3 |   "compilerOptions": {
 4 |     "baseUrl": ".",
 5 |     "outDir": "build",
 6 |     "declaration": true,
 7 |     "rootDir": "src",
 8 |     "jsx": "react"
 9 |   },
10 |   "include": [
11 |     "src/**/*"
12 |   ]
13 | }
14 | 
--------------------------------------------------------------------------------
]