Move type-only imports (w/ verbatimModuleSyntax) (#1245)

This commit is contained in:
Jaco
2023-04-02 11:49:57 +03:00
committed by GitHub
parent f5a0912953
commit a5380d268f
32 changed files with 72 additions and 48 deletions
+1 -1
View File
@@ -40,7 +40,7 @@
"watch": "cd packages/extension && yarn polkadot-exec-webpack --config webpack.watch.cjs --mode development --watch"
},
"devDependencies": {
"@polkadot/dev": "^0.72.29",
"@polkadot/dev": "^0.72.32",
"@types/node": "^18.15.11",
"i18next-scanner": "^4.2.0",
"sinon-chrome": "^3.0.1"
@@ -11,6 +11,7 @@ import type { KeyringPair } from '@polkadot/keyring/types';
import type { ExtDef } from '@polkadot/types/extrinsic/signedExtensions/types';
import type { SignerPayloadJSON } from '@polkadot/types/types';
import type { KeypairType } from '@polkadot/util-crypto/types';
import type { AuthUrls } from './State.js';
import { TypeRegistry } from '@polkadot/types';
import keyring from '@polkadot/ui-keyring';
@@ -18,7 +19,7 @@ import { cryptoWaitReady } from '@polkadot/util-crypto';
import { AccountsStore } from '../../stores/index.js';
import Extension from './Extension.js';
import State, { AuthUrls } from './State.js';
import State from './State.js';
import Tabs from './Tabs.js';
describe('Extension', () => {
@@ -7,6 +7,7 @@ import type { Registry, SignerPayloadJSON, SignerPayloadRaw } from '@polkadot/ty
import type { SubjectInfo } from '@polkadot/ui-keyring/observable/types';
import type { KeypairType } from '@polkadot/util-crypto/types';
import type { AccountJson, AllowedPath, AuthorizeRequest, MessageTypes, MetadataRequest, RequestAccountBatchExport, RequestAccountChangePassword, RequestAccountCreateExternal, RequestAccountCreateHardware, RequestAccountCreateSuri, RequestAccountEdit, RequestAccountExport, RequestAccountForget, RequestAccountShow, RequestAccountTie, RequestAccountValidate, RequestActiveTabsUrlUpdate, RequestAuthorizeApprove, RequestBatchRestore, RequestDeriveCreate, RequestDeriveValidate, RequestJsonRestore, RequestMetadataApprove, RequestMetadataReject, RequestSeedCreate, RequestSeedValidate, RequestSigningApprovePassword, RequestSigningApproveSignature, RequestSigningCancel, RequestSigningIsLocked, RequestTypes, RequestUpdateAuthorizedAccounts, ResponseAccountExport, ResponseAccountsExport, ResponseAuthorizeList, ResponseDeriveValidate, ResponseJsonGetAccountInfo, ResponseSeedCreate, ResponseSeedValidate, ResponseSigningIsLocked, ResponseType, SigningRequest } from '../types.js';
import type { AuthorizedAccountsDiff } from './State.js';
import { ALLOWED_PATH, PASSWORD_EXPIRY_MS } from '@polkadot/extension-base/defaults';
import { metadataExpand } from '@polkadot/extension-chains';
@@ -17,7 +18,7 @@ import { assert, isHex } from '@polkadot/util';
import { keyExtractSuri, mnemonicGenerate, mnemonicValidate } from '@polkadot/util-crypto';
import { withErrorLog } from './helpers.js';
import State, { AuthorizedAccountsDiff } from './State.js';
import State from './State.js';
import { createSubscription, unsubscribe } from './subscriptions.js';
type CachedUnlocks = Record<string, number>;
@@ -8,6 +8,7 @@ import type { JsonRpcResponse } from '@polkadot/rpc-provider/types';
import type { SignerPayloadJSON, SignerPayloadRaw } from '@polkadot/types/types';
import type { SubjectInfo } from '@polkadot/ui-keyring/observable/types';
import type { MessageTypes, RequestAccountList, RequestAccountUnsubscribe, RequestAuthorizeTab, RequestRpcSend, RequestRpcSubscribe, RequestRpcUnsubscribe, RequestTypes, ResponseRpcListProviders, ResponseSigning, ResponseTypes, SubscriptionMessageTypes } from '../types.js';
import type { AuthResponse } from './State.js';
import { PHISHING_PAGE_REDIRECT } from '@polkadot/extension-base/defaults';
import { canDerive } from '@polkadot/extension-base/utils';
@@ -19,7 +20,7 @@ import { assert, isNumber } from '@polkadot/util';
import RequestBytesSign from '../RequestBytesSign.js';
import RequestExtrinsicSign from '../RequestExtrinsicSign.js';
import { withErrorLog } from './helpers.js';
import State, { AuthResponse } from './State.js';
import State from './State.js';
import { createSubscription, unsubscribe } from './subscriptions.js';
interface AccountSub {
@@ -10,9 +10,9 @@ import type { Registry, SignerPayloadJSON, SignerPayloadRaw } from '@polkadot/ty
import type { KeyringPairs$Json } from '@polkadot/ui-keyring/types';
import type { HexString } from '@polkadot/util/types';
import type { KeypairType } from '@polkadot/util-crypto/types';
import type { AuthResponse, AuthUrls } from './handlers/State.js';
import { ALLOWED_PATH } from '../defaults.js';
import { AuthResponse, AuthUrls } from './handlers/State.js';
type KeysWithDefinedValues<T> = {
[K in keyof T]: T[K] extends undefined ? never : K
+1 -1
View File
@@ -1,7 +1,7 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { MetadataDef } from '@polkadot/extension-inject/types';
import type { MetadataDef } from '@polkadot/extension-inject/types';
const metadataGets = new Map<string, Promise<MetadataDef | null>>();
@@ -6,6 +6,7 @@
import '@polkadot/extension-mocks/chrome';
import type { ReactWrapper } from 'enzyme';
import type { Theme } from '../../components/index.js';
import Adapter from '@wojtekmaj/enzyme-adapter-react-17';
import enzyme from 'enzyme';
@@ -14,7 +15,7 @@ import { act } from 'react-dom/test-utils';
import { MemoryRouter } from 'react-router';
import { ThemeProvider } from 'styled-components';
import { Theme, themes } from '../../components/index.js';
import { themes } from '../../components/index.js';
import * as messaging from '../../messaging.js';
import { flushAllPromises } from '../../testHelpers.js';
import Account from './Account.js';
@@ -2,11 +2,11 @@
// SPDX-License-Identifier: Apache-2.0
import type { AccountJson } from '@polkadot/extension-base/background/types';
import type { ThemeProps } from '../../types.js';
import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';
import { canDerive } from '@polkadot/extension-base/utils';
import { ThemeProps } from '@polkadot/extension-ui/types';
import { AccountContext, Address, Checkbox, Dropdown, Link, MenuDivider } from '../../components/index.js';
import useGenesisHashOptions from '../../hooks/useGenesisHashOptions.js';
@@ -1,11 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { AccountWithChildren } from '@polkadot/extension-base/background/types';
import type { ThemeProps } from '../../types.js';
import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';
import { AccountWithChildren } from '@polkadot/extension-base/background/types';
import getNetworkMap from '@polkadot/extension-ui/util/getNetworkMap';
import { AccountContext } from '../../components/index.js';
@@ -1,12 +1,12 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { AuthUrlInfo } from '@polkadot/extension-base/background/handlers/State';
import type { ThemeProps } from '../../types.js';
import React, { useCallback } from 'react';
import { Link } from 'react-router-dom';
import { AuthUrlInfo } from '@polkadot/extension-base/background/handlers/State';
import { useTranslation } from '@polkadot/extension-ui/components/translate';
import RemoveAuth from '../../components/RemoveAuth.js';
@@ -1,12 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { AuthUrlInfo, AuthUrls } from '@polkadot/extension-base/background/handlers/State';
import type { ThemeProps } from '../../types.js';
import React, { useCallback, useEffect, useMemo, useState } from 'react';
import { AuthUrlInfo, AuthUrls } from '@polkadot/extension-base/background/handlers/State';
import InputFilter from '../../components/InputFilter.js';
import useTranslation from '../../hooks/useTranslation.js';
import { getAuthList, removeAuthorization } from '../../messaging.js';
+2 -1
View File
@@ -1,11 +1,12 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { RouteComponentProps } from 'react-router';
import type { ThemeProps } from '../types.js';
import fileSaver from 'file-saver';
import React, { useCallback, useContext, useState } from 'react';
import { RouteComponentProps, withRouter } from 'react-router';
import { withRouter } from 'react-router';
import { ActionBar, ActionContext, ActionText, Address, Button, InputWithLabel, Warning } from '../components/index.js';
import useTranslation from '../hooks/useTranslation.js';
@@ -1,11 +1,12 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { RouteComponentProps } from 'react-router';
import type { ThemeProps } from '../types.js';
import fileSaver from 'file-saver';
import React, { useCallback, useContext, useState } from 'react';
import { RouteComponentProps, withRouter } from 'react-router';
import { withRouter } from 'react-router';
import { AccountContext, ActionBar, ActionContext, ActionText, Button, InputWithLabel, Warning } from '../components/index.js';
import useTranslation from '../hooks/useTranslation.js';
+2 -1
View File
@@ -1,10 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { RouteComponentProps } from 'react-router';
import type { ThemeProps } from '../types.js';
import React, { useCallback, useContext, useState } from 'react';
import { RouteComponentProps, withRouter } from 'react-router';
import { withRouter } from 'react-router';
import { ActionBar, ActionContext, ActionText, Address, Button, Warning } from '../components/index.js';
import useTranslation from '../hooks/useTranslation.js';
@@ -1,6 +1,8 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ThemeProps } from '../types.js';
import { faSync } from '@fortawesome/free-solid-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import React, { useCallback, useContext, useEffect, useRef, useState } from 'react';
@@ -13,7 +15,6 @@ import useTranslation from '../hooks/useTranslation.js';
import { createAccountHardware } from '../messaging.js';
import { Header, Name } from '../partials/index.js';
import { styled } from '../styled.js';
import { ThemeProps } from '../types.js';
import ledgerChains from '../util/legerChains.js';
interface AccOption {
@@ -1,11 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { TFunction } from 'i18next';
import type { Chain } from '@polkadot/extension-chains/types';
import type { Call, ExtrinsicEra, ExtrinsicPayload } from '@polkadot/types/interfaces';
import type { AnyJson, SignerPayloadJSON } from '@polkadot/types/types';
import { TFunction } from 'i18next';
import React, { useMemo, useRef } from 'react';
import { BN, bnToBn, formatNumber } from '@polkadot/util';
@@ -1,7 +1,7 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { MetadataDef } from '@polkadot/extension-inject/types';
import type { MetadataDef } from '@polkadot/extension-inject/types';
export const westendMetadata = {
chain: 'Westend',
@@ -2,10 +2,11 @@
// SPDX-License-Identifier: Apache-2.0
import type { IconDefinition } from '@fortawesome/fontawesome-svg-core';
import type { MouseEventHandler } from 'react';
import type { ThemeProps } from '../types.js';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import React, { MouseEventHandler } from 'react';
import React from 'react';
import { styled } from '../styled.js';
@@ -1,8 +1,9 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributor
// SPDX-License-Identifier: Apache-2.0
import type { WithTranslation } from 'react-i18next';
import React from 'react';
import { WithTranslation } from 'react-i18next';
import Header from '../partials/Header.js';
import Button from './Button.js';
@@ -1,10 +1,11 @@
// Copyright 2017-2023 @polkadot/react-components authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { DropzoneRef } from 'react-dropzone';
import type { ThemeProps } from '../types.js';
import React, { createRef, useCallback, useState } from 'react';
import Dropzone, { DropzoneRef } from 'react-dropzone';
import Dropzone from 'react-dropzone';
import { formatNumber, hexToU8a, isHex, u8aToString } from '@polkadot/util';
@@ -1,12 +1,13 @@
// Copyright 2017-2023 @polkadot/react-components authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { ThemeProps } from '../types.js';
import { faTimes } from '@fortawesome/free-solid-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import React, { useCallback, useRef } from 'react';
import { styled } from '../styled.js';
import { ThemeProps } from '../types.js';
import { Input } from './TextInputs.js';
interface Props extends ThemeProps {
@@ -1,10 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { MouseEventHandler } from 'react';
import type { ThemeProps } from '../types.js';
import { faCopy } from '@fortawesome/free-regular-svg-icons';
import React, { MouseEventHandler } from 'react';
import React from 'react';
import CopyToClipboard from 'react-copy-to-clipboard';
import useTranslation from '../hooks/useTranslation.js';
@@ -1,10 +1,12 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Validator } from '../util/validators.js';
import React, { useEffect, useState } from 'react';
import useIsMounted from '../hooks/useIsMounted.js';
import { Result, Validator } from '../util/validators.js';
import { Result } from '../util/validators.js';
import Warning from './Warning.js';
interface BasicProps {
@@ -2,12 +2,13 @@
// SPDX-License-Identifier: Apache-2.0
import type { ThemeProps } from '../types.js';
import type { AvailableThemes } from './index.js';
import React, { useCallback, useState } from 'react';
import { createGlobalStyle, ThemeProvider } from 'styled-components';
// FIXME We should not import from index when this one is imported there as well
import { AvailableThemes, chooseTheme, Main, themes, ThemeSwitchContext } from './index.js';
import { chooseTheme, Main, themes, ThemeSwitchContext } from './index.js';
interface Props {
children: React.ReactNode;
@@ -1,7 +1,9 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { useTranslation as useTranslationBase, UseTranslationResponse, withTranslation } from 'react-i18next';
import type { UseTranslationResponse } from 'react-i18next';
import { useTranslation as useTranslationBase, withTranslation } from 'react-i18next';
export function useTranslation (): UseTranslationResponse<string, undefined> {
return useTranslationBase();
+2 -1
View File
@@ -1,10 +1,11 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Network } from '@polkadot/networks/types';
import { useCallback, useEffect, useMemo, useState } from 'react';
import { Ledger } from '@polkadot/hw-ledger';
import { Network } from '@polkadot/networks/types';
import uiSettings from '@polkadot/ui-settings';
import { assert } from '@polkadot/util';
@@ -1,7 +1,9 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { RefObject, useCallback, useEffect } from 'react';
import type { RefObject } from 'react';
import { useCallback, useEffect } from 'react';
export default function useOutsideClick (refs: RefObject<HTMLDivElement>[], callback: () => void): void {
const handleClick = useCallback((e: MouseEvent): void => {
+1 -1
View File
@@ -4,6 +4,7 @@
import type { AccountJson, AllowedPath, AuthorizeRequest, ConnectedTabsUrlResponse, MessageTypes, MessageTypesWithNoSubscriptions, MessageTypesWithNullRequest, MessageTypesWithSubscriptions, MetadataRequest, RequestTypes, ResponseAuthorizeList, ResponseDeriveValidate, ResponseJsonGetAccountInfo, ResponseSigningIsLocked, ResponseTypes, SeedLengths, SigningRequest, SubscriptionMessageTypes } from '@polkadot/extension-base/background/types';
import type { Message } from '@polkadot/extension-base/types';
import type { Chain } from '@polkadot/extension-chains/types';
import type { MetadataDef } from '@polkadot/extension-inject/types';
import type { KeyringPair$Json } from '@polkadot/keyring/types';
import type { KeyringPairs$Json } from '@polkadot/ui-keyring/types';
import type { HexString } from '@polkadot/util/types';
@@ -12,7 +13,6 @@ import type { KeypairType } from '@polkadot/util-crypto/types';
import { PORT_EXTENSION } from '@polkadot/extension-base/defaults';
import { getId } from '@polkadot/extension-base/utils/getId';
import { metadataExpand } from '@polkadot/extension-chains';
import { MetadataDef } from '@polkadot/extension-inject/types';
import allChains from './util/chains.js';
import { getSavedMeta, setSavedMeta } from './MetadataCache.js';
@@ -1,11 +1,13 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Validator } from '../util/validators.js';
import React, { useCallback, useEffect, useMemo, useState } from 'react';
import { InputWithLabel, ValidatedInput } from '../components/index.js';
import useTranslation from '../hooks/useTranslation.js';
import { allOf, isNotShorterThan, isSameAs, Validator } from '../util/validators.js';
import { allOf, isNotShorterThan, isSameAs } from '../util/validators.js';
interface Props {
isFocussed?: boolean;
+3 -1
View File
@@ -1,7 +1,9 @@
// Copyright 2019-2023 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
import styledComponents, { StyledInterface } from 'styled-components';
import type { StyledInterface } from 'styled-components';
import styledComponents from 'styled-components';
// In styled-components v6, there is a named export which can be used
// directly, i.e. "import { styled } from ..." with no more magic. Until
+1 -1
View File
@@ -23,7 +23,7 @@
"tslib": "^2.5.0"
},
"devDependencies": {
"@polkadot/dev": "^0.72.29",
"@polkadot/dev": "^0.72.32",
"browser-resolve": "^2.0.0",
"buffer": "^6.0.3",
"copy-webpack-plugin": "^11.0.0",
+16 -16
View File
@@ -1012,34 +1012,34 @@ __metadata:
languageName: node
linkType: hard
"@polkadot/dev-test@npm:^0.72.29":
version: 0.72.29
resolution: "@polkadot/dev-test@npm:0.72.29"
"@polkadot/dev-test@npm:^0.72.32":
version: 0.72.32
resolution: "@polkadot/dev-test@npm:0.72.32"
dependencies:
jsdom: ^21.1.1
tslib: ^2.5.0
checksum: f82b2be6539dc359b9d6574f9694266ebd6b63cd686630a9049b9bf88d86d13f96b8763b514a074007bfa5cfec27d3fc58db4e002c022237ad54416752d76d17
checksum: 81f6649827db6f43efdf6ea7f7b13b83e9ca9be9058c588cde62e695836e26c135dba26804c4832288c2690ed174a24dfd11d574c49053dfedd5bb30e913a801
languageName: node
linkType: hard
"@polkadot/dev-ts@npm:^0.72.29":
version: 0.72.29
resolution: "@polkadot/dev-ts@npm:0.72.29"
"@polkadot/dev-ts@npm:^0.72.32":
version: 0.72.32
resolution: "@polkadot/dev-ts@npm:0.72.32"
dependencies:
json5: ^2.2.3
tslib: ^2.5.0
typescript: ^5.0.3
checksum: 97af0e678ed25d5538d435f8e091564f462411d79b024e3ccc45eba55f3c05e4e476cc402039d6bb9dc2542a585b082833f484e71bc49a9ce3d2ead07971c5d1
checksum: 4d9783e83cde12ba1677273cbb89e56223d0b6d4b75452f14dd0ab612f264e40a888d79b081044f447815f7aaf584ccd5f299dce0291e9a0443135a9b070b546
languageName: node
linkType: hard
"@polkadot/dev@npm:^0.72.29":
version: 0.72.29
resolution: "@polkadot/dev@npm:0.72.29"
"@polkadot/dev@npm:^0.72.32":
version: 0.72.32
resolution: "@polkadot/dev@npm:0.72.32"
dependencies:
"@eslint/js": ^8.37.0
"@polkadot/dev-test": ^0.72.29
"@polkadot/dev-ts": ^0.72.29
"@polkadot/dev-test": ^0.72.32
"@polkadot/dev-ts": ^0.72.32
"@rollup/plugin-alias": ^4.0.3
"@rollup/plugin-commonjs": ^24.0.1
"@rollup/plugin-dynamic-import-vars": ^2.0.3
@@ -1100,7 +1100,7 @@ __metadata:
polkadot-exec-rollup: scripts/polkadot-exec-rollup.mjs
polkadot-exec-tsc: scripts/polkadot-exec-tsc.mjs
polkadot-exec-webpack: scripts/polkadot-exec-webpack.mjs
checksum: d7b62ff4405b35626f07b9b9a4401b3a45db5cb3cc5f2bbccba583c1ffbb24e8327e757cf98894fc47f9176fbc95d859e1ea286d1e9fd6805994f739f98698ab
checksum: f4ab710a54a211bf5b99e88eaae73945312952213c0d405590348fd14576887d401a44546659773b0801ae77204973808f5b0eb8cf39cad1a910520a1b8b506f
languageName: node
linkType: hard
@@ -1255,7 +1255,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "@polkadot/extension@workspace:packages/extension"
dependencies:
"@polkadot/dev": ^0.72.29
"@polkadot/dev": ^0.72.32
"@polkadot/extension-base": ^0.45.5
"@polkadot/extension-inject": ^0.45.5
"@polkadot/extension-ui": ^0.45.5
@@ -12585,7 +12585,7 @@ fsevents@~2.3.2:
version: 0.0.0-use.local
resolution: "root-workspace-0b6124@workspace:."
dependencies:
"@polkadot/dev": ^0.72.29
"@polkadot/dev": ^0.72.32
"@types/node": ^18.15.11
i18next-scanner: ^4.2.0
sinon-chrome: ^3.0.1