├── .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
│ ├── mobile-publish.yml
│ ├── publish.yml
│ └── test.yml
├── .gitignore
├── .gitmodules
├── .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
│ │ │ │ ├── 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-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
│ │ │ ├── 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
│ │ │ ├── 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-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
│ │ │ ├── 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
│ │ │ │ │ ├── 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
│ │ │ │ ├── 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
│ │ │ │ │ ├── modal.tsx
│ │ │ │ │ ├── msg-items
│ │ │ │ │ ├── base.tsx
│ │ │ │ │ ├── bbn-claim-reward-from-btc-staking.tsx
│ │ │ │ │ ├── bbn-create-btc-delegation.tsx
│ │ │ │ │ ├── cancel-undelegate.tsx
│ │ │ │ │ ├── delegate.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-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
│ │ │ │ ├── advanced
│ │ │ │ │ ├── delete-suggest-chain
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── endpoint
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── index.tsx
│ │ │ │ ├── components
│ │ │ │ │ ├── index.ts
│ │ │ │ │ └── page-button
│ │ │ │ │ │ ├── index.tsx
│ │ │ │ │ │ └── styles.ts
│ │ │ │ ├── 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
│ │ │ │ │ │ │ ├── claim-btc-delegation-reward.tsx
│ │ │ │ │ │ │ ├── claim-rewards.tsx
│ │ │ │ │ │ │ ├── create-btc-delegation.tsx
│ │ │ │ │ │ │ ├── custom-icon.tsx
│ │ │ │ │ │ │ ├── delegate.tsx
│ │ │ │ │ │ │ ├── execute-contract.tsx
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── 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
│ │ │ │ │ ├── sign-arbitrary-page.tsx
│ │ │ │ │ ├── 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
│ │ │ │ ├── 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.png
│ │ │ │ ├── logo-256.png
│ │ │ │ ├── logo-beta-256.png
│ │ │ │ ├── lottie
│ │ │ │ ├── register
│ │ │ │ │ ├── check-circle-icon-light.json
│ │ │ │ │ ├── check-circle-icon.json
│ │ │ │ │ ├── congrats.webm
│ │ │ │ │ ├── creating-light.json
│ │ │ │ │ ├── creating.json
│ │ │ │ │ ├── intro.webm
│ │ │ │ │ └── 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
│ │ │ └── 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
│ │ ├── 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
│ │ │ ├── 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
│ │ │ └── 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
│ │ ├── 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
│ │ │ ├── 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
│ └── 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
│ │ │ │ ├── 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
│ │ │ │ ├── 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
├── 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
├── mobile-publish
│ ├── .yarnrc.yml
│ ├── package.json
│ ├── publish.mjs
│ ├── repository-dispatch.mjs
│ └── yarn.lock
├── 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 |
--------------------------------------------------------------------------------
/.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 | gap?: string;
7 | }
8 |
9 | export interface YAxisProps {
10 | alignX?: AxisAlignX;
11 | gap?: string;
12 | }
13 |
--------------------------------------------------------------------------------
/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" | "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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/brand-text.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/font/Inter-Black.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/font/NotoSansKR-Regular.woff2
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icns-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/icns-logo.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/icon-click-cursor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/img/circle-wave.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/copy-address-no-search-result-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/img/stargaze_banner.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/img/unlock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/img/unlock.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/logo-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/logo-256.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/logo-beta-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/logo-beta-256.png
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/lottie/register/congrats.webm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/lottie/register/congrats.webm
--------------------------------------------------------------------------------
/apps/extension/src/public/assets/lottie/register/intro.webm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/apps/extension/src/public/assets/lottie/register/intro.webm
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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/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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/.nojekyll
--------------------------------------------------------------------------------
/docs/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/favicon.ico
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-evm-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/enable-chain-evm-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/enable-chain-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/enable-chain-starknet-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/enable-chain-starknet-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/manage-wc-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/manage-wc-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-arbitrary-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/sign-arbitrary-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-message-evm-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/sign-message-evm-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/sign-message-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/sign-message-example.png
--------------------------------------------------------------------------------
/docs/static/img/guide/wc-request-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/guide/wc-request-example.png
--------------------------------------------------------------------------------
/docs/static/img/keplr-logo-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/docs/static/img/keplr-logo-256.png
--------------------------------------------------------------------------------
/docs/static/og-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chainapsis/keplr-wallet/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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.238",
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/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@keplr-wallet/analytics",
3 | "version": "0.12.238",
4 | "main": "build/index.js",
5 | "author": "chainapsis",
6 | "license": "Apache-2.0",
7 | "publishConfig": {
8 | "access": "public"
9 | },
10 | "scripts": {
11 | "clean": "rm -rf node_modules; rm -rf build",
12 | "build": "tsc",
13 | "dev": "tsc -w",
14 | "lint-test": "eslint \"src/**/*\" && prettier --check \"src/**/*\"",
15 | "lint-fix": "eslint --fix \"src/**/*\" && prettier --write \"src/**/*\""
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/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/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./service";
2 | export * from "./messages";
3 |
--------------------------------------------------------------------------------
/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/init.ts:
--------------------------------------------------------------------------------
1 | import { Router } from "@keplr-wallet/router";
2 | import { GetThemeOptionMsg, SetThemeOptionMsg } from "./messages";
3 | import { ROUTE } from "./constants";
4 | import { getHandler } from "./handler";
5 | import { SettingsService } from "./service";
6 |
7 | export function init(router: Router, service: SettingsService): void {
8 | router.registerMessage(GetThemeOptionMsg);
9 | router.registerMessage(SetThemeOptionMsg);
10 |
11 | router.addHandler(ROUTE, getHandler(service));
12 | }
13 |
--------------------------------------------------------------------------------
/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/init.ts:
--------------------------------------------------------------------------------
1 | import { Router } from "@keplr-wallet/router";
2 | import { GetTokenScansMsg, RevalidateTokenScansMsg } from "./messages";
3 | import { ROUTE } from "./constants";
4 | import { getHandler } from "./handler";
5 | import { TokenScanService } from "./service";
6 |
7 | export function init(router: Router, service: TokenScanService): void {
8 | router.registerMessage(GetTokenScansMsg);
9 | router.registerMessage(RevalidateTokenScansMsg);
10 |
11 | router.addHandler(ROUTE, getHandler(service));
12 | }
13 |
--------------------------------------------------------------------------------
/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/src/tx/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./errors";
2 | export * from "./types";
3 | export * from "./memo";
4 | export * from "./fee";
5 | export * from "./gas";
6 | export * from "./recipient";
7 | export * from "./amount";
8 | export * from "./sender";
9 | export * from "./send-tx";
10 | export * from "./chain";
11 | export * from "./gas-simulator";
12 | export * from "./validate";
13 | export * from "./delegate-tx";
14 | export * from "./undelegate-tx";
15 | export * from "./redelegate-tx";
16 | export * from "./name-service";
17 |
--------------------------------------------------------------------------------
/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+/VZKmDYhD4IKa6p9kbVSibLjtmPAywDppbibNUIlivuPLOkBQo9Z4CR023GMsfM7HBky0yacZ/a8XUf/nDylyXXmql87pSRGJV00lO8fND0lA+65adplk9EWBhQyDfhYpObBTr+1JtVkZgJ87BLvoQzWrURMgeO6dRsZrOiV9JJS0cgMsVJ1CUbwyI6kIgB747QRitM+RYLcNPHoujMCBkE39RkBzDvxQEH3d7qvKZSBuSjcYpyLxxNz+SL5wmM9FiRJdBklcOmWtp1/MRl5IbsPSPrvhHT9ko9xnNK39UkAkGOSHKr3ZyJuL93/PbuVTEQ/K6pUdOq85MyxMbk9L+2wxubqO0lYixcGj0MK/khplBCzUbsk9x/NOE+aM/PbdurAsGs/uy+/0GnGj+67jVg==
--------------------------------------------------------------------------------
/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/distribution/module/v1/module.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package initia.distribution.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/distribution"};
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/ibchooks/module/v1/module.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package initia.ibchooks.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/ibc-hooks"};
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/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/mstaking/module/v1/module.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package initia.mstaking.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/mstaking"};
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_mimir.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 "amino/amino.proto";
8 |
9 | message MsgMimir {
10 | option (amino.name) = "thorchain/MsgMimir";
11 |
12 | string key = 1;
13 | int64 value = 2;
14 | bytes signer = 3 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress", (amino.encoding) = "bech32"];
15 | }
16 |
--------------------------------------------------------------------------------
/packages/proto-types/proto-types-gen/proto/thorchain/v1/types/msg_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 | import "amino/amino.proto";
8 |
9 | message MsgNodePauseChain {
10 | option (amino.name) = "thorchain/MsgNodePauseChain";
11 |
12 | int64 value = 1;
13 | bytes signer = 2 [(gogoproto.casttype) = "github.com/cosmos/cosmos-sdk/types.AccAddress", (amino.encoding) = "bech32"];
14 | }
15 |
--------------------------------------------------------------------------------
/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.238";
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/6e6d2e383dc17e2352d8cd5cebced2904bc2a099/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/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./interaction";
2 | export * from "./keyring";
3 | export * from "./tokens";
4 | export * from "./permission-manager";
5 |
--------------------------------------------------------------------------------
/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/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"
--------------------------------------------------------------------------------
/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 "./json-rpc";
3 | export * from "./context";
4 |
--------------------------------------------------------------------------------
/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/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/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 |
--------------------------------------------------------------------------------
/scripts/mobile-publish/.yarnrc.yml:
--------------------------------------------------------------------------------
1 | nodeLinker: node-modules
2 |
3 | yarnPath: ../../.yarn/releases/yarn-3.4.1.cjs
4 |
--------------------------------------------------------------------------------
/scripts/mobile-publish/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mobile-publish-repository-dispatch",
3 | "version": "0.0.0",
4 | "private": true,
5 | "scripts": {
6 | "repository-dispatch": "zx ./repository-dispatch.mjs",
7 | "publish-ios": "zx ./publish.mjs ios",
8 | "publish-android": "zx ./publish.mjs android"
9 | },
10 | "devDependencies": {
11 | "@octokit/core": "^3.5.1",
12 | "semver": "^7.6.0",
13 | "zx": "^4.3.0"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
]