├── .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 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/extension/src/public/assets/svg/arrow-right-outline.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/extension/src/public/assets/svg/arrow-right-primary.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 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 | --------------------------------------------------------------------------------