diff --git a/.github/scripts/get-next-semver-version.sh b/.github/scripts/get-next-semver-version.sh index 552e1fa7061..9af9b2d163d 100755 --- a/.github/scripts/get-next-semver-version.sh +++ b/.github/scripts/get-next-semver-version.sh @@ -21,7 +21,7 @@ VERSION_PACKAGE=$(node -p "require('../../package.json').version") # Compare versions and keep the highest one HIGHEST_VERSION=$(printf "%s\n%s\n%s" "$VERSION_BRANCHES" "$VERSION_TAGS" "$VERSION_PACKAGE" | sort --version-sort | tail -n 1) -# Increment the minor version of the highest version found -NEXT_VERSION=$(echo "$HIGHEST_VERSION" | awk -F. -v OFS=. '{$2++; print}') +# Increment the minor version of the highest version found and reset the patch version to 0 +NEXT_VERSION=$(echo "$HIGHEST_VERSION" | awk -F. -v OFS=. '{$2++; $3=0; print}') echo "NEXT_SEMVER_VERSION=${NEXT_VERSION}" >> "$GITHUB_ENV" diff --git a/.nvmrc b/.nvmrc index 3516580bbbc..2a393af592b 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20.17.0 +20.18.0 diff --git a/.storybook/storybook.requires.js b/.storybook/storybook.requires.js index c08c085d9a9..bdf663ae293 100644 --- a/.storybook/storybook.requires.js +++ b/.storybook/storybook.requires.js @@ -126,6 +126,7 @@ const getStories = () => { "./app/components/Views/confirmations/components/UI/InfoRow/InfoRow.stories.tsx": require("../app/components/Views/confirmations/components/UI/InfoRow/InfoRow.stories.tsx"), "./app/components/Views/confirmations/components/UI/ExpandableSection/ExpandableSection.stories.tsx": require("../app/components/Views/confirmations/components/UI/ExpandableSection/ExpandableSection.stories.tsx"), "./app/components/Views/confirmations/components/UI/Tooltip/Tooltip.stories.tsx": require("../app/components/Views/confirmations/components/UI/Tooltip/Tooltip.stories.tsx"), + "./app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.stories.tsx": require("../app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.stories.tsx"), "./app/component-library/components/Texts/SensitiveText/SensitiveText.stories.tsx": require("../app/component-library/components/Texts/SensitiveText/SensitiveText.stories.tsx"), }; }; diff --git a/CHANGELOG.md b/CHANGELOG.md index 0cfee4c59bf..8a753df77c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,77 @@ ## Current Main Branch +## 7.38.0 - Jan 16, 2024 +### Added +- [#12427](https://github.com/MetaMask/metamask-mobile/pull/12427): feat: implement remote feature flag controller (#12427) +- [#12507](https://github.com/MetaMask/metamask-mobile/pull/12507): feat: activate portfolio view (#12507) +- [#12540](https://github.com/MetaMask/metamask-mobile/pull/12540): feat: migrate Base network RPC from https://mainnet.base.org to base-… (#12540) +- [#12505](https://github.com/MetaMask/metamask-mobile/pull/12505): feat: add aggregated portfolio balance cross chains (#12505) +- [#12417](https://github.com/MetaMask/metamask-mobile/pull/12417): feat: multichain detect tokens feat (#12417) +- [#12419](https://github.com/MetaMask/metamask-mobile/pull/12419): feat: upgrade transaction controller to get incoming transactions using accounts API (#12419) +- [#12537](https://github.com/MetaMask/metamask-mobile/pull/12537): feat: enable ledger clear signing feature (#12537) +- [#12622](https://github.com/MetaMask/metamask-mobile/pull/12622): feat: Hide the smart transaction status page if we return a txHash asap (#12622) +- [#12244](https://github.com/MetaMask/metamask-mobile/pull/12244): feat(ci): Expo (#12244) +- [#12459](https://github.com/MetaMask/metamask-mobile/pull/12459): feat: upgrade profile-sync-controller to 1.0.0 (#12459) +- [#12294](https://github.com/MetaMask/metamask-mobile/pull/12294): feat: Add Bitcoin accounts (Flask Only) (#12294) +- [#12243](https://github.com/MetaMask/metamask-mobile/pull/12243): feat: cicd e2e label requirements + pr automation (#12243) +- [#12495](https://github.com/MetaMask/metamask-mobile/pull/12495): feat: Support gas fee flows in swaps (#12495) +- [#12431](https://github.com/MetaMask/metamask-mobile/pull/12431): feat: multi chain asset list (#12431) + +### Changed +- [#12623](https://github.com/MetaMask/metamask-mobile/pull/12623): chore: update bug template to include feature branches (#12623) +- [#12538](https://github.com/MetaMask/metamask-mobile/pull/12538): chore: Chore/12435 mvp handle engine does not exist (#12538) +- [#12617](https://github.com/MetaMask/metamask-mobile/pull/12617): docs: Update README.md with new expo instructions (#12617) +- [#12559](https://github.com/MetaMask/metamask-mobile/pull/12559): test: move remaining modal pages and selectors to their respective folders (#12559) +- [#12556](https://github.com/MetaMask/metamask-mobile/pull/12556): test: remove redundent tests in quarantine folder (#12556) +- [#12558](https://github.com/MetaMask/metamask-mobile/pull/12558): test: Create e2e tag for multi chain (#12558) +- [#12531](https://github.com/MetaMask/metamask-mobile/pull/12531): test: Move files to Wallet folder (#12531) +- [#12511](https://github.com/MetaMask/metamask-mobile/pull/12511): test: Move files to Onboarding folder (#12511) +- [#12512](https://github.com/MetaMask/metamask-mobile/pull/12512): test: address regression pipeline slow down (#12512) +- [#12513](https://github.com/MetaMask/metamask-mobile/pull/12513): ci: disable security e2e tests (#12513) +- [#12602](https://github.com/MetaMask/metamask-mobile/pull/12602): chore: Additional e2e test to support `PortfolioView` (#12602) +- [#12321](https://github.com/MetaMask/metamask-mobile/pull/12321): refactor: remove global network from transaction controller (#12321) +- [#12536](https://github.com/MetaMask/metamask-mobile/pull/12536): test: fix mock server (#12536) +- [#12288](https://github.com/MetaMask/metamask-mobile/pull/12288): test: add e2e test for security alert api (#12288) +- [#12597](https://github.com/MetaMask/metamask-mobile/pull/12597): test(3615): additional e2e scenarios editing permissions and non permitted networks (#12597) +- [#12488](https://github.com/MetaMask/metamask-mobile/pull/12488): test(3615): add new e2e test for initial dapp connection and non permitted flow (#12488) +- [#12532](https://github.com/MetaMask/metamask-mobile/pull/12532): refactor: de-anonymize insensitive properties of swaps events (#12532) +- [#12485](https://github.com/MetaMask/metamask-mobile/pull/12485): chore: Stop suppressing pod install failures (#12485) +- [#12574](https://github.com/MetaMask/metamask-mobile/pull/12574): chore: Add option to skip pod install setup step (#12574) +- [#12609](https://github.com/MetaMask/metamask-mobile/pull/12609): chore: update user storage E2E framework (#12609) +- [#12569](https://github.com/MetaMask/metamask-mobile/pull/12569): chore: transfer ownership of auth & profile sync E2E from notifications to identity (#12569) +- [#12534](https://github.com/MetaMask/metamask-mobile/pull/12534): chore: change ownership of profile sync from notifications to identity (#12534) +- [#12543](https://github.com/MetaMask/metamask-mobile/pull/12543): chore: Decrease hot and cold start app to wallet view time (#12543) +- [#12428](https://github.com/MetaMask/metamask-mobile/pull/12428): chore: Add eth hd keyring and key tree to decrease unlock time (#12428) +- [#12555](https://github.com/MetaMask/metamask-mobile/pull/12555): chore: Update accounts packages (#12555) +- [#12563](https://github.com/MetaMask/metamask-mobile/pull/12563): chore: cicd e2e hardening (#12563) +- [#12554](https://github.com/MetaMask/metamask-mobile/pull/12554): chore: fail status when on no labels for retro-label changes (#12554) +- [#12295](https://github.com/MetaMask/metamask-mobile/pull/12295): chore: use getShares contract method from stake-sdk for unstake all flow (#12295) +- [#12551](https://github.com/MetaMask/metamask-mobile/pull/12551): chore: Bump Snaps packages (#12551) + +### Fixed +- [#12650](https://github.com/MetaMask/metamask-mobile/pull/12650): fix: fix swaps button on asset overview page for multichain feature (#12650) +- [#12659](https://github.com/MetaMask/metamask-mobile/pull/12659): fix: fix token details navigation (#12659) +- [#12624](https://github.com/MetaMask/metamask-mobile/pull/12624): fix: add new translations (#12624) +- [#12373](https://github.com/MetaMask/metamask-mobile/pull/12373): fix: circular dependencies engine-network-handleNetworkSwitch (#12373) +- [#12663](https://github.com/MetaMask/metamask-mobile/pull/12663): fix: disable flaky tests on incoming-transactions.spec (#12663) +- [#12598](https://github.com/MetaMask/metamask-mobile/pull/12598): fix: disable mock poc test (#12598) +- [#12230](https://github.com/MetaMask/metamask-mobile/pull/12230): fix: Jest timer error in unit test (#12230) +- [#12626](https://github.com/MetaMask/metamask-mobile/pull/12626): fix: fix flaky test (#12626) +- [#12372](https://github.com/MetaMask/metamask-mobile/pull/12372): fix: abstract out circular dependencies between engine and networks util (#12372) +- [#12641](https://github.com/MetaMask/metamask-mobile/pull/12641): fix: fix network selector (#12641) +- [#12637](https://github.com/MetaMask/metamask-mobile/pull/12637): fix: fix native tokens filter when all networks is selected (#12637) +- [#12529](https://github.com/MetaMask/metamask-mobile/pull/12529): fix: fix NFTs disappearing after killing app (#12529) +- [#12562](https://github.com/MetaMask/metamask-mobile/pull/12562): fix: Move `AssetPollingProvider` from Root to Nav/Main/index.js (#12562) +- [#12607](https://github.com/MetaMask/metamask-mobile/pull/12607): fix: e2e regression gas api (#12607) +- [#12460](https://github.com/MetaMask/metamask-mobile/pull/12460): fix: add source when local PPOM fails (#12460) +- [#12199](https://github.com/MetaMask/metamask-mobile/pull/12199): fix: 10967 User able to add Ledger account with existing account name (#12199) +- [#12566](https://github.com/MetaMask/metamask-mobile/pull/12566): fix(12527): sdk connection with unknown url causes a bug (#12566) +- [#12405](https://github.com/MetaMask/metamask-mobile/pull/12405): fix(431-2): active network icon has too much margin and adding optional prop (#12405) +- [#12591](https://github.com/MetaMask/metamask-mobile/pull/12591): fix: add resolution for express to fix failing audit on path-to-regexp (#12591) +- [#12567](https://github.com/MetaMask/metamask-mobile/pull/12567): fix: update input handling in useInputHandler to support BACK key functionality (#12567) +- [#12630](https://github.com/MetaMask/metamask-mobile/pull/12630): fix: hide tokens without balance for multichain (#12630) + ## 7.37.1 - Dec 16, 2024 ### Fixed - [#12577](https://github.com/MetaMask/metamask-mobile/pull/12577): chore: bump {gas-fee,network,selected-network,notification-services,profile-sync,signature}-controller (#12577) diff --git a/android/app/build.gradle b/android/app/build.gradle index 7c37abf3371..d934382fa02 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -178,8 +178,8 @@ android { applicationId "io.metamask" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionName "7.37.1" - versionCode 1534 + versionName "7.38.0" + versionCode 1528 testBuildType System.getProperty('testBuildType', 'debug') missingDimensionStrategy 'react-native-camera', 'general' testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/actions/multichain/state.ts b/app/actions/multichain/state.ts index 643638e0e91..a2015e89b59 100644 --- a/app/actions/multichain/state.ts +++ b/app/actions/multichain/state.ts @@ -1,4 +1,7 @@ +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) export interface MultichainSettingsState { bitcoinSupportEnabled: boolean; bitcoinTestnetSupportEnabled: boolean; + solanaSupportEnabled: boolean; } +///: END:ONLY_INCLUDE_IF diff --git a/app/component-library/base-components/TagBase/__snapshots__/TagBase.test.tsx.snap b/app/component-library/base-components/TagBase/__snapshots__/TagBase.test.tsx.snap index a3be1a262ef..a3df343ffb5 100644 --- a/app/component-library/base-components/TagBase/__snapshots__/TagBase.test.tsx.snap +++ b/app/component-library/base-components/TagBase/__snapshots__/TagBase.test.tsx.snap @@ -9,7 +9,7 @@ exports[`TagBase should render TagBase 1`] = ` { "alignSelf": "flex-start", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 999, "borderWidth": 0, "color": "#141618", diff --git a/app/component-library/components-temp/CellSelectWithMenu/__snapshots__/CellSelectWithMenu.test.tsx.snap b/app/component-library/components-temp/CellSelectWithMenu/__snapshots__/CellSelectWithMenu.test.tsx.snap index f0bc6875e36..036368b43bd 100644 --- a/app/component-library/components-temp/CellSelectWithMenu/__snapshots__/CellSelectWithMenu.test.tsx.snap +++ b/app/component-library/components-temp/CellSelectWithMenu/__snapshots__/CellSelectWithMenu.test.tsx.snap @@ -284,7 +284,7 @@ exports[`CellSelectWithMenu should render with default settings correctly 1`] = style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 10, "borderWidth": 1, "height": 24, diff --git a/app/component-library/components/Badges/Badge/variants/BadgeNetwork/__snapshots__/BadgeNetwork.test.tsx.snap b/app/component-library/components/Badges/Badge/variants/BadgeNetwork/__snapshots__/BadgeNetwork.test.tsx.snap index aed137096c5..726b40dac34 100644 --- a/app/component-library/components/Badges/Badge/variants/BadgeNetwork/__snapshots__/BadgeNetwork.test.tsx.snap +++ b/app/component-library/components/Badges/Badge/variants/BadgeNetwork/__snapshots__/BadgeNetwork.test.tsx.snap @@ -27,7 +27,7 @@ exports[`BadgeNetwork should render BadgeNetwork 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, diff --git a/app/component-library/components/Banners/Banner/__snapshots__/Banner.test.tsx.snap b/app/component-library/components/Banners/Banner/__snapshots__/Banner.test.tsx.snap index 39786758805..7e99d8d276c 100644 --- a/app/component-library/components/Banners/Banner/__snapshots__/Banner.test.tsx.snap +++ b/app/component-library/components/Banners/Banner/__snapshots__/Banner.test.tsx.snap @@ -4,7 +4,7 @@ exports[`Banner should render correctly 1`] = ` = ({ - style, - size = DEFAULT_TEXTFIELD_SIZE, - startAccessory, - endAccessory, - isError = false, - inputElement, - isDisabled = false, - autoFocus = false, - onBlur, - onFocus, - ...props -}) => { +const TextField = React.forwardRef(( + { + style, + size = DEFAULT_TEXTFIELD_SIZE, + startAccessory, + endAccessory, + isError = false, + inputElement, + isDisabled = false, + autoFocus = false, + onBlur, + onFocus, + ...props + }, + ref +) => { const [isFocused, setIsFocused] = useState(autoFocus); const { styles } = useStyles(styleSheet, { @@ -87,6 +90,7 @@ const TextField: React.FC = ({ onBlur={onBlurHandler} onFocus={onFocusHandler} {...props} + ref={ref} isStateStylesDisabled /> )} @@ -101,6 +105,6 @@ const TextField: React.FC = ({ )} ); -}; +}); export default TextField; diff --git a/app/component-library/components/Form/TextField/__snapshots__/TextField.test.tsx.snap b/app/component-library/components/Form/TextField/__snapshots__/TextField.test.tsx.snap index 96b84e5d5da..dfe8245cb0b 100644 --- a/app/component-library/components/Form/TextField/__snapshots__/TextField.test.tsx.snap +++ b/app/component-library/components/Form/TextField/__snapshots__/TextField.test.tsx.snap @@ -6,7 +6,7 @@ exports[`TextField should render default settings correctly 1`] = ` { "alignItems": "center", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexDirection": "row", @@ -24,7 +24,7 @@ exports[`TextField should render default settings correctly 1`] = ` } } > - = ({ +const Input = React.forwardRef(({ style, textVariant = DEFAULT_TEXT_VARIANT, isStateStylesDisabled, @@ -23,7 +23,7 @@ const Input: React.FC = ({ onFocus, autoFocus = true, ...props -}) => { +}, ref) => { const [isFocused, setIsFocused] = useState(autoFocus); const { styles } = useStyles(styleSheet, { @@ -67,8 +67,9 @@ const Input: React.FC = ({ autoFocus={autoFocus} onBlur={onBlurHandler} onFocus={onFocusHandler} + ref={ref} /> ); -}; +}); export default Input; diff --git a/app/component-library/components/Form/TextFieldSearch/__snapshots__/TextFieldSearch.test.tsx.snap b/app/component-library/components/Form/TextFieldSearch/__snapshots__/TextFieldSearch.test.tsx.snap index af34f91633b..130ad728b8d 100644 --- a/app/component-library/components/Form/TextFieldSearch/__snapshots__/TextFieldSearch.test.tsx.snap +++ b/app/component-library/components/Form/TextFieldSearch/__snapshots__/TextFieldSearch.test.tsx.snap @@ -1,7 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`TextFieldSearch should render default settings correctly 1`] = ` - ( component={AddAsset} options={AddAsset.navigationOptions} /> - StyleSheet.create({ diff --git a/app/components/UI/AccountFromToInfoCard/__snapshots__/AccountFromToInfoCard.test.tsx.snap b/app/components/UI/AccountFromToInfoCard/__snapshots__/AccountFromToInfoCard.test.tsx.snap index c7913411afa..e4c4e3c70e4 100644 --- a/app/components/UI/AccountFromToInfoCard/__snapshots__/AccountFromToInfoCard.test.tsx.snap +++ b/app/components/UI/AccountFromToInfoCard/__snapshots__/AccountFromToInfoCard.test.tsx.snap @@ -39,7 +39,7 @@ exports[`AccountFromToInfoCard should match snapshot 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 1, "flexDirection": "row", @@ -269,7 +269,7 @@ exports[`AccountFromToInfoCard should match snapshot 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -433,7 +433,7 @@ exports[`AccountFromToInfoCard should match snapshot 1`] = ` "paddingHorizontal": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } diff --git a/app/components/UI/AccountInfoCard/__snapshots__/index.test.tsx.snap b/app/components/UI/AccountInfoCard/__snapshots__/index.test.tsx.snap index a1cbf235331..707e9f509e6 100644 --- a/app/components/UI/AccountInfoCard/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/AccountInfoCard/__snapshots__/index.test.tsx.snap @@ -5,7 +5,7 @@ exports[`AccountInfoCard should match snapshot 1`] = ` style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 10, "borderWidth": 1, "flexDirection": "row", diff --git a/app/components/UI/AccountOverview/__snapshots__/index.test.tsx.snap b/app/components/UI/AccountOverview/__snapshots__/index.test.tsx.snap index 75060e240a8..603b0d0074f 100644 --- a/app/components/UI/AccountOverview/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/AccountOverview/__snapshots__/index.test.tsx.snap @@ -160,7 +160,7 @@ exports[`AccountOverview should render correctly 1`] = ` onPress={[Function]} style={ { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "borderRadius": 40, "marginBottom": 20, "marginTop": 20, diff --git a/app/components/UI/AccountRightButton/__snapshots__/index.test.tsx.snap b/app/components/UI/AccountRightButton/__snapshots__/index.test.tsx.snap index c798c9e9f88..b80c4f54dc7 100644 --- a/app/components/UI/AccountRightButton/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/AccountRightButton/__snapshots__/index.test.tsx.snap @@ -524,7 +524,7 @@ exports[`AccountRightButton should render correctly 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, diff --git a/app/components/UI/AccountSelectorList/__snapshots__/AccountSelector.test.tsx.snap b/app/components/UI/AccountSelectorList/__snapshots__/AccountSelector.test.tsx.snap index dd4954812d8..c4498419f07 100644 --- a/app/components/UI/AccountSelectorList/__snapshots__/AccountSelector.test.tsx.snap +++ b/app/components/UI/AccountSelectorList/__snapshots__/AccountSelector.test.tsx.snap @@ -61,7 +61,7 @@ exports[`AccountSelectorList renders all accounts with balances 1`] = ` style={ { "alignItems": "center", - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "flexDirection": "row", } } @@ -385,7 +385,7 @@ exports[`AccountSelectorList renders all accounts with balances 1`] = ` accessible={true} style={ { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "bottom": 0, "flexDirection": "row", "left": 0, @@ -1617,7 +1617,7 @@ exports[`AccountSelectorList renders correctly 1`] = ` style={ { "alignItems": "center", - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "flexDirection": "row", } } @@ -1941,7 +1941,7 @@ exports[`AccountSelectorList renders correctly 1`] = ` accessible={true} style={ { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "bottom": 0, "flexDirection": "row", "left": 0, @@ -2442,7 +2442,7 @@ exports[`AccountSelectorList should render all accounts but only the balance for style={ { "alignItems": "center", - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "flexDirection": "row", } } @@ -2650,7 +2650,7 @@ exports[`AccountSelectorList should render all accounts but only the balance for accessible={true} style={ { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "bottom": 0, "flexDirection": "row", "left": 0, diff --git a/app/components/UI/AddCustomToken/__snapshots__/index.test.tsx.snap b/app/components/UI/AddCustomToken/__snapshots__/index.test.tsx.snap index d2af139ec0f..81ef0037a49 100644 --- a/app/components/UI/AddCustomToken/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/AddCustomToken/__snapshots__/index.test.tsx.snap @@ -23,7 +23,7 @@ exports[`AddCustomToken render matches previous snapshot 1`] = ` }, undefined, { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "borderColor": "#0376c9", }, { @@ -163,7 +163,7 @@ exports[`AddCustomToken render matches previous snapshot 1`] = ` returnKeyType="next" style={ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "color": "#141618", diff --git a/app/components/UI/AddressInputs/__snapshots__/index.test.jsx.snap b/app/components/UI/AddressInputs/__snapshots__/index.test.jsx.snap index be35d0b77fb..9cdcbdd7409 100644 --- a/app/components/UI/AddressInputs/__snapshots__/index.test.jsx.snap +++ b/app/components/UI/AddressInputs/__snapshots__/index.test.jsx.snap @@ -39,7 +39,7 @@ exports[`AddressInputs AddressFrom should match default snapshot 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flex": 1, @@ -50,7 +50,7 @@ exports[`AddressInputs AddressFrom should match default snapshot 1`] = ` "padding": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } @@ -220,7 +220,7 @@ exports[`AddressInputs AddressFrom should match snapshot when layout is vertical style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flex": 1, @@ -231,7 +231,7 @@ exports[`AddressInputs AddressFrom should match snapshot when layout is vertical "padding": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } @@ -413,7 +413,7 @@ exports[`AddressInputs AddressTo should match default snapshot 1`] = ` "paddingHorizontal": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } @@ -684,7 +684,7 @@ exports[`AddressInputs AddressTo should match snapshot when layout is vertical 1 "paddingHorizontal": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } diff --git a/app/components/UI/ApprovalTagUrl/__snapshots__/ApprovalTagUrl.test.tsx.snap b/app/components/UI/ApprovalTagUrl/__snapshots__/ApprovalTagUrl.test.tsx.snap index b68dc550e4d..e5554cae4b3 100644 --- a/app/components/UI/ApprovalTagUrl/__snapshots__/ApprovalTagUrl.test.tsx.snap +++ b/app/components/UI/ApprovalTagUrl/__snapshots__/ApprovalTagUrl.test.tsx.snap @@ -7,7 +7,7 @@ exports[`ApprovalTagUrl renders correctly 1`] = ` "alignItems": "center", "alignSelf": "center", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 99, "borderWidth": 1, "flexDirection": "row", diff --git a/app/components/UI/AssetOverview/AssetOverview.test.tsx b/app/components/UI/AssetOverview/AssetOverview.test.tsx index 8be0735dace..2afe8c93a52 100644 --- a/app/components/UI/AssetOverview/AssetOverview.test.tsx +++ b/app/components/UI/AssetOverview/AssetOverview.test.tsx @@ -128,7 +128,12 @@ describe('AssetOverview', () => { it('should render correctly', async () => { const container = renderWithProvider( - , + , { state: mockInitialState }, ); expect(container).toMatchSnapshot(); @@ -138,7 +143,12 @@ describe('AssetOverview', () => { jest.spyOn(networks, 'isPortfolioViewEnabled').mockReturnValue(true); const container = renderWithProvider( - , + , { state: mockInitialState }, ); expect(container).toMatchSnapshot(); @@ -146,7 +156,12 @@ describe('AssetOverview', () => { it('should handle buy button press', async () => { const { getByTestId } = renderWithProvider( - , + , { state: mockInitialState }, ); @@ -163,7 +178,12 @@ describe('AssetOverview', () => { it('should handle send button press', async () => { const { getByTestId } = renderWithProvider( - , + , { state: mockInitialState }, ); @@ -175,7 +195,12 @@ describe('AssetOverview', () => { it('should handle swap button press', async () => { const { getByTestId } = renderWithProvider( - , + , { state: mockInitialState }, ); @@ -232,6 +257,7 @@ describe('AssetOverview', () => { asset={asset} displayBuyButton={false} displaySwapsButton + swapsIsLive />, { state: mockInitialState }, ); diff --git a/app/components/UI/AssetOverview/AssetOverview.tsx b/app/components/UI/AssetOverview/AssetOverview.tsx index c7270e4af75..d098316e0fa 100644 --- a/app/components/UI/AssetOverview/AssetOverview.tsx +++ b/app/components/UI/AssetOverview/AssetOverview.tsx @@ -74,12 +74,14 @@ interface AssetOverviewProps { asset: TokenI; displayBuyButton?: boolean; displaySwapsButton?: boolean; + swapsIsLive?: boolean; } const AssetOverview: React.FC = ({ asset, displayBuyButton, displaySwapsButton, + swapsIsLive, }: AssetOverviewProps) => { const navigation = useNavigation(); const [timePeriod, setTimePeriod] = React.useState('1d'); @@ -434,6 +436,7 @@ const AssetOverview: React.FC = ({ { + describe('Header', () => { + it('renders header correctly when asset name and symbol are provided', () => { + const props = { + ...mockProps, + asset: { + ...mockProps.asset, + ticker: '', + }, + }; + + const { getByText } = render(); + + expect( + getByText(`${mockProps.asset.name} (${mockProps.asset.symbol})`), + ).toBeTruthy(); + }); + + it('renders header correctly when name not provided and symbol is provided', () => { + const props = { + ...mockProps, + asset: { + ...mockProps.asset, + name: '', + ticker: '', + }, + }; + + const { getByText } = render(); + + expect(getByText(`${mockProps.asset.symbol}`)).toBeTruthy(); + }); + + it('renders header correctly when name and ticker are provided', () => { + const { getByText } = render(); + + expect( + getByText(`${mockProps.asset.name} (${mockProps.asset.ticker})`), + ).toBeTruthy(); + }); + }); + + it('shows loading state when isLoading is true', () => { + const { getByTestId } = render( + , + ); + + expect(getByTestId('loading-price-diff')).toBeTruthy(); + }); +}); diff --git a/app/components/UI/AssetOverview/Price/Price.tsx b/app/components/UI/AssetOverview/Price/Price.tsx index 9e65e259d4c..1fdc4db8be4 100644 --- a/app/components/UI/AssetOverview/Price/Price.tsx +++ b/app/components/UI/AssetOverview/Price/Price.tsx @@ -75,7 +75,7 @@ const Price = ({ : priceDiff; const { styles } = useStyles(styleSheet, { priceDiff: diff }); - + const ticker = asset.ticker || asset.symbol; return ( <> @@ -84,10 +84,10 @@ const Price = ({ variant={TextVariant.BodyMDMedium} color={TextColor.Alternative} > - {asset.name} ({asset.symbol}) + {asset.name} ({ticker}) ) : ( - {asset.symbol} + {ticker} )} {!isNaN(price) && ( {isLoading ? ( - + diff --git a/app/components/UI/BrowserBottomBar/__snapshots__/index.test.tsx.snap b/app/components/UI/BrowserBottomBar/__snapshots__/index.test.tsx.snap index a1ea3530ab2..be03def149b 100644 --- a/app/components/UI/BrowserBottomBar/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/BrowserBottomBar/__snapshots__/index.test.tsx.snap @@ -13,7 +13,7 @@ exports[`BrowserBottomBar should render correctly 1`] = ` }, { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopWidth": 0.5, "flex": 0, "flexDirection": "row", diff --git a/app/components/UI/BrowserUrlBar/__snapshots__/BrowserUrlBar.test.tsx.snap b/app/components/UI/BrowserUrlBar/__snapshots__/BrowserUrlBar.test.tsx.snap index d4cd3407d2a..957386ff187 100644 --- a/app/components/UI/BrowserUrlBar/__snapshots__/BrowserUrlBar.test.tsx.snap +++ b/app/components/UI/BrowserUrlBar/__snapshots__/BrowserUrlBar.test.tsx.snap @@ -39,7 +39,7 @@ exports[`BrowserUrlBar should render correctly 1`] = ` onChangeText={[Function]} onFocus={[Function]} onSubmitEditing={[Function]} - placeholder="Search or Type URL" + placeholder="Search by site or address" placeholderTextColor="#9fa6ae" returnKeyType="go" selectTextOnFocus={true} @@ -200,7 +200,7 @@ exports[`BrowserUrlBar should render correctly when url bar is not focused 1`] = onChangeText={[Function]} onFocus={[Function]} onSubmitEditing={[Function]} - placeholder="Search or Type URL" + placeholder="Search by site or address" placeholderTextColor="#9fa6ae" returnKeyType="go" selectTextOnFocus={true} @@ -322,7 +322,7 @@ exports[`BrowserUrlBar should render correctly when url bar is not focused 1`] = "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, diff --git a/app/components/UI/CollectibleContractElement/index.js b/app/components/UI/CollectibleContractElement/index.js deleted file mode 100644 index 25eddc35f18..00000000000 --- a/app/components/UI/CollectibleContractElement/index.js +++ /dev/null @@ -1,334 +0,0 @@ -import React, { useEffect, useState, useCallback, useRef } from 'react'; -import PropTypes from 'prop-types'; -import { StyleSheet, View, TouchableOpacity, Alert } from 'react-native'; -import { connect } from 'react-redux'; -import { fontStyles } from '../../../styles/common'; -import CollectibleMedia from '../CollectibleMedia'; -import Device from '../../../util/device'; -import Text from '../../Base/Text'; -import ActionSheet from '@metamask/react-native-actionsheet'; -import { strings } from '../../../../locales/i18n'; -import Engine from '../../../core/Engine'; -import { removeFavoriteCollectible } from '../../../actions/collectibles'; -import { collectibleContractsSelector } from '../../../reducers/collectibles'; -import { useTheme } from '../../../util/theme'; -import { selectChainId } from '../../../selectors/networkController'; -import { selectSelectedInternalAccountFormattedAddress } from '../../../selectors/accountsController'; -import Icon, { - IconName, - IconColor, - IconSize, -} from '../../../component-library/components/Icons/Icon'; -import { - MetaMetricsEvents, - useMetrics, -} from '../../../components/hooks/useMetrics'; -import { getDecimalChainId } from '../../../util/networks'; - -const DEVICE_WIDTH = Device.getDeviceWidth(); -const COLLECTIBLE_WIDTH = (DEVICE_WIDTH - 30 - 16) / 3; - -const createStyles = (colors, brandColors) => - StyleSheet.create({ - itemWrapper: { - paddingHorizontal: 15, - paddingBottom: 16, - }, - collectibleContractIcon: { width: 30, height: 30 }, - collectibleContractIconContainer: { marginHorizontal: 8, borderRadius: 30 }, - titleContainer: { - flex: 1, - flexDirection: 'row', - }, - verticalAlignedContainer: { - flexDirection: 'row', - alignItems: 'center', - }, - titleText: { - fontSize: 18, - color: colors.text.default, - ...fontStyles.normal, - }, - collectibleIcon: { - width: COLLECTIBLE_WIDTH, - height: COLLECTIBLE_WIDTH, - }, - collectibleInTheMiddle: { - marginHorizontal: 8, - }, - collectiblesRowContainer: { - flex: 1, - flexDirection: 'row', - marginTop: 15, - }, - collectibleBox: { - flex: 1, - flexDirection: 'row', - }, - favoritesLogoWrapper: { - flex: 1, - flexDirection: 'row', - justifyContent: 'center', - alignItems: 'center', - width: 32, - height: 32, - borderRadius: 16, - backgroundColor: brandColors.yellow500, - }, - }); - -const splitIntoSubArrays = (array, count) => { - const newArray = []; - while (array.length > 0) { - newArray.push(array.splice(0, count)); - } - return newArray; -}; - -/** - * Customizable view to render assets in lists - */ -function CollectibleContractElement({ - asset, - contractCollectibles, - collectiblesVisible: propsCollectiblesVisible, - onPress, - collectibleContracts, - chainId, - selectedAddress, - removeFavoriteCollectible, -}) { - const [collectiblesGrid, setCollectiblesGrid] = useState([]); - const [collectiblesVisible, setCollectiblesVisible] = useState( - propsCollectiblesVisible, - ); - const actionSheetRef = useRef(); - const longPressedCollectible = useRef(null); - const { colors, themeAppearance, brandColors } = useTheme(); - const styles = createStyles(colors, brandColors); - const { trackEvent, createEventBuilder } = useMetrics(); - - const toggleCollectibles = useCallback(() => { - setCollectiblesVisible(!collectiblesVisible); - }, [collectiblesVisible, setCollectiblesVisible]); - - const onPressCollectible = useCallback( - (collectible) => { - const contractName = collectibleContracts.find( - ({ address }) => address === collectible.address, - )?.name; - onPress(collectible, contractName || collectible.name); - }, - [collectibleContracts, onPress], - ); - - const onLongPressCollectible = useCallback((collectible) => { - actionSheetRef.current.show(); - longPressedCollectible.current = collectible; - }, []); - - const removeNft = () => { - const { NftController } = Engine.context; - removeFavoriteCollectible( - selectedAddress, - chainId, - longPressedCollectible.current, - ); - NftController.removeAndIgnoreNft( - longPressedCollectible.current.address, - longPressedCollectible.current.tokenId, - ); - trackEvent( - createEventBuilder(MetaMetricsEvents.COLLECTIBLE_REMOVED) - .addProperties({ - chain_id: getDecimalChainId(chainId), - }) - .build(), - ); - Alert.alert( - strings('wallet.collectible_removed_title'), - strings('wallet.collectible_removed_desc'), - ); - }; - - const refreshMetadata = () => { - const { NftController } = Engine.context; - - NftController.addNft( - longPressedCollectible.current.address, - longPressedCollectible.current.tokenId, - ); - }; - - const handleMenuAction = (index) => { - if (index === 1) { - removeNft(); - } else if (index === 0) { - refreshMetadata(); - } - }; - - const renderCollectible = useCallback( - (collectible, index) => { - if (!collectible) return null; - const name = - collectible.name || - collectibleContracts.find( - ({ address }) => address === collectible.address, - )?.name; - const onPress = () => onPressCollectible({ ...collectible, name }); - const onLongPress = () => - !asset.favorites - ? onLongPressCollectible({ ...collectible, name }) - : null; - return ( - - - - - - - - ); - }, - [ - asset.favorites, - collectibleContracts, - onPressCollectible, - onLongPressCollectible, - styles, - ], - ); - - useEffect(() => { - const temp = splitIntoSubArrays(contractCollectibles, 3); - setCollectiblesGrid(temp); - }, [contractCollectibles, setCollectiblesGrid]); - - return ( - - - - - - - {!asset.favorites ? ( - - ) : ( - - - - )} - - - - {asset?.name || strings('collectible.untitled_collection')} - - - - {collectiblesVisible && ( - - {collectiblesGrid.map((row, i) => ( - - {row.map((collectible, index) => - renderCollectible({ ...collectible, logo: asset.logo }, index), - )} - - ))} - - )} - - - ); -} - -CollectibleContractElement.propTypes = { - /** - * Object being rendered - */ - asset: PropTypes.object, - /** - * Array of collectibles - */ - contractCollectibles: PropTypes.array, - /** - * Whether the collectibles are visible or not - */ - collectiblesVisible: PropTypes.bool, - /** - * Called when the collectible is pressed - */ - onPress: PropTypes.func, - collectibleContracts: PropTypes.array, - /** - * Selected address - */ - selectedAddress: PropTypes.string, - /** - * Chain id - */ - chainId: PropTypes.string, - /** - * Dispatch remove collectible from favorites action - */ - removeFavoriteCollectible: PropTypes.func, -}; - -const mapStateToProps = (state) => ({ - collectibleContracts: collectibleContractsSelector(state), - chainId: selectChainId(state), - selectedAddress: selectSelectedInternalAccountFormattedAddress(state), -}); - -const mapDispatchToProps = (dispatch) => ({ - removeFavoriteCollectible: (selectedAddress, chainId, collectible) => - dispatch(removeFavoriteCollectible(selectedAddress, chainId, collectible)), -}); - -export default connect( - mapStateToProps, - mapDispatchToProps, -)(CollectibleContractElement); diff --git a/app/components/UI/CollectibleContractInformation/__snapshots__/index.test.tsx.snap b/app/components/UI/CollectibleContractInformation/__snapshots__/index.test.tsx.snap deleted file mode 100644 index 7036107cf0d..00000000000 --- a/app/components/UI/CollectibleContractInformation/__snapshots__/index.test.tsx.snap +++ /dev/null @@ -1,42 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`CollectibleContractInformation should render correctly 1`] = ` - - - -`; diff --git a/app/components/UI/CollectibleContractInformation/index.js b/app/components/UI/CollectibleContractInformation/index.js deleted file mode 100644 index dfd9733e0f1..00000000000 --- a/app/components/UI/CollectibleContractInformation/index.js +++ /dev/null @@ -1,229 +0,0 @@ -import React, { PureComponent } from 'react'; -import PropTypes from 'prop-types'; -import { - ScrollView, - TouchableOpacity, - StyleSheet, - Text, - View, - SafeAreaView, - InteractionManager, - Image, -} from 'react-native'; -import { fontStyles } from '../../../styles/common'; -import { strings } from '../../../../locales/i18n'; -import Device from '../../../util/device'; -import { connect } from 'react-redux'; -import { isMainNet } from '../../../util/networks'; -import { ThemeContext, mockTheme } from '../../../util/theme'; -import { selectChainId } from '../../../selectors/networkController'; - -const createStyles = (colors) => - StyleSheet.create({ - wrapper: { - backgroundColor: colors.background.default, - borderRadius: 10, - minHeight: 450, - }, - titleWrapper: { - borderBottomWidth: StyleSheet.hairlineWidth, - borderColor: colors.border.muted, - }, - title: { - textAlign: 'center', - fontSize: 18, - marginVertical: 12, - marginHorizontal: 20, - color: colors.text.default, - ...fontStyles.bold, - }, - label: { - marginTop: 0, - borderColor: colors.border.muted, - ...fontStyles.bold, - color: colors.text.default, - }, - informationWrapper: { - flex: 1, - paddingHorizontal: 20, - }, - content: { - fontSize: 16, - color: colors.text.alternative, - paddingTop: 10, - ...fontStyles.normal, - }, - address: { - fontSize: 12, - }, - row: { - marginVertical: 10, - }, - footer: { - borderTopWidth: StyleSheet.hairlineWidth, - borderColor: colors.border.muted, - height: 60, - justifyContent: 'center', - flexDirection: 'row', - alignItems: 'center', - }, - footerButton: { - flex: 1, - alignContent: 'center', - alignItems: 'center', - justifyContent: 'center', - height: 60, - }, - closeButton: { - fontSize: 16, - color: colors.primary.default, - ...fontStyles.normal, - }, - opensea: { - fontSize: 8, - textAlignVertical: 'center', - paddingRight: 5, - marginTop: Device.isAndroid() ? -2 : 4, - color: colors.text.alternative, - ...fontStyles.light, - }, - credits: { - flex: 1, - flexDirection: 'row', - alignItems: 'center', - textAlign: 'center', - }, - openSeaLogo: { - width: 80, - height: 20, - resizeMode: 'contain', - }, - creditsView: { - alignItems: 'center', - marginTop: 15, - }, - creditsElements: { - flexDirection: 'row', - }, - }); - -const openSeaLogo = require('../../../images/opensea-logo-flat-colored-blue.png'); // eslint-disable-line - -/** - * View that contains a collectible contract information as description, total supply and address - */ -class CollectibleContractInformation extends PureComponent { - static propTypes = { - /** - * Navigation object required to push - * the Asset detail view - */ - navigation: PropTypes.object, - /** - * An function to handle the close event - */ - onClose: PropTypes.func, - /** - * Collectible contract object - */ - collectibleContract: PropTypes.object, - /** - * The chain ID for the current selected network - */ - chainId: PropTypes.string.isRequired, - }; - - closeModal = () => { - this.props.onClose(true); - }; - - goToOpenSea = () => { - const openSeaUrl = 'https://opensea.io/'; - InteractionManager.runAfterInteractions(() => { - this.closeModal(); - this.props.navigation.push('Webview', { - screen: 'SimpleWebview', - params: { - url: openSeaUrl, - title: 'OpenSea', - }, - }); - }); - }; - - render = () => { - const { - collectibleContract: { name, description, totalSupply, address }, - chainId, - } = this.props; - const colors = this.context.colors || mockTheme.colors; - const styles = createStyles(colors); - const is_main_net = isMainNet(chainId); - - return ( - - - - {name} - - - - {description && ( - - - {strings('asset_overview.description')} - - {description} - - )} - {totalSupply && ( - - - {strings('asset_overview.totalSupply')} - - {totalSupply} - - )} - - - {strings('asset_overview.address')} - - {address} - - {is_main_net && ( - - - - - {strings('collectible.powered_by_opensea')} - - - - - - )} - - - - - {strings('networks.close')} - - - - ); - }; -} - -const mapStateToProps = (state) => ({ - chainId: selectChainId(state), -}); - -CollectibleContractInformation.contextType = ThemeContext; - -export default connect(mapStateToProps)(CollectibleContractInformation); diff --git a/app/components/UI/CollectibleContractInformation/index.test.tsx b/app/components/UI/CollectibleContractInformation/index.test.tsx deleted file mode 100644 index 2629113abd8..00000000000 --- a/app/components/UI/CollectibleContractInformation/index.test.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import React from 'react'; -import { shallow } from 'enzyme'; -import CollectibleContractInformation from './'; -import configureMockStore from 'redux-mock-store'; -import { Provider } from 'react-redux'; -import { backgroundState } from '../../../util/test/initial-root-state'; - -const mockStore = configureMockStore(); -const initialState = { - engine: { - backgroundState, - }, -}; -const store = mockStore(initialState); - -describe('CollectibleContractInformation', () => { - it('should render correctly', () => { - const wrapper = shallow( - - - , - ); - expect(wrapper).toMatchSnapshot(); - }); -}); diff --git a/app/components/UI/CollectibleContractOverview/__snapshots__/index.test.tsx.snap b/app/components/UI/CollectibleContractOverview/__snapshots__/index.test.tsx.snap deleted file mode 100644 index 18873220956..00000000000 --- a/app/components/UI/CollectibleContractOverview/__snapshots__/index.test.tsx.snap +++ /dev/null @@ -1,42 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`CollectibleContractOverview should render correctly 1`] = ` - - - -`; diff --git a/app/components/UI/CollectibleContractOverview/index.js b/app/components/UI/CollectibleContractOverview/index.js deleted file mode 100644 index 94942c48f33..00000000000 --- a/app/components/UI/CollectibleContractOverview/index.js +++ /dev/null @@ -1,177 +0,0 @@ -import React, { PureComponent } from 'react'; -import { StyleSheet, Text, View } from 'react-native'; -import PropTypes from 'prop-types'; -import { fontStyles } from '../../../styles/common'; -import { strings } from '../../../../locales/i18n'; -import CollectibleMedia from '../CollectibleMedia'; -import AssetActionButton from '../AssetOverview/AssetActionButton'; -import Device from '../../../util/device'; -import { toggleCollectibleContractModal } from '../../../actions/modals'; -import { connect } from 'react-redux'; -import collectiblesTransferInformation from '../../../util/collectibles-transfer'; -import { newAssetTransaction } from '../../../actions/transaction'; -import { toLowerCaseEquals } from '../../../util/general'; -import { collectiblesSelector } from '../../../reducers/collectibles'; -import { ThemeContext, mockTheme } from '../../../util/theme'; -import { TokenOverviewSelectorsIDs } from '../../../../e2e/selectors/wallet/TokenOverview.selectors'; -import { WalletViewSelectorsIDs } from '../../../../e2e/selectors/wallet/WalletView.selectors'; - -const createStyles = (colors) => - StyleSheet.create({ - wrapper: { - flex: 1, - paddingHorizontal: 20, - borderBottomWidth: StyleSheet.hairlineWidth, - borderBottomColor: colors.border.muted, - alignContent: 'center', - alignItems: 'center', - paddingBottom: 30, - }, - assetLogo: { - marginTop: 20, - }, - information: { - flex: 1, - flexDirection: 'row', - marginTop: 10, - marginBottom: 20, - }, - name: { - fontSize: 30, - textAlign: 'center', - color: colors.text.default, - ...fontStyles.normal, - }, - actions: { - width: Device.isSmallDevice() ? '65%' : '50%', - justifyContent: 'space-around', - alignItems: 'flex-start', - flexDirection: 'row', - }, - }); - -/** - * View that displays a specific collectible contract - * including the overview (name, address, symbol, logo, description, total supply) - */ -class CollectibleContractOverview extends PureComponent { - static propTypes = { - /** - * Object that represents the asset to be displayed - */ - collectibleContract: PropTypes.object, - /** - * Array of ERC721 assets - */ - collectibles: PropTypes.array, - /** - * Navigation object required to push - * the Asset detail view - */ - navigation: PropTypes.object, - /** - * How many collectibles are owned by the user - */ - ownerOf: PropTypes.number, - /** - * Action that sets a collectible contract type transaction - */ - toggleCollectibleContractModal: PropTypes.func.isRequired, - /** - * Start transaction with asset - */ - newAssetTransaction: PropTypes.func, - }; - - onAdd = () => { - const { navigation, collectibleContract } = this.props; - navigation.push('AddAsset', { - assetType: 'collectible', - collectibleContract, - }); - }; - - onSend = () => { - const { collectibleContract, collectibles } = this.props; - const collectible = collectibles.find((collectible) => - toLowerCaseEquals(collectible.address, collectibleContract.address), - ); - this.props.newAssetTransaction(collectible); - this.props.navigation.navigate('SendFlowView'); - }; - - onInfo = () => this.props.toggleCollectibleContractModal(); - - renderLogo = () => { - const { - collectibleContract: { logo, address }, - } = this.props; - return ; - }; - - render() { - const { - collectibleContract: { name, address }, - ownerOf, - } = this.props; - const colors = this.context.colors || mockTheme.colors; - const styles = createStyles(colors); - const lowerAddress = address.toLowerCase(); - const leftActionButtonText = - lowerAddress in collectiblesTransferInformation - ? collectiblesTransferInformation[lowerAddress].tradable && - strings('asset_overview.send_button') - : strings('asset_overview.send_button'); - return ( - - {this.renderLogo()} - - - {ownerOf} {name} - - - - - - - - - - ); - } -} - -const mapStateToProps = (state) => ({ - collectibles: collectiblesSelector(state), -}); - -const mapDispatchToProps = (dispatch) => ({ - toggleCollectibleContractModal: () => - dispatch(toggleCollectibleContractModal()), - newAssetTransaction: (selectedAsset) => - dispatch(newAssetTransaction(selectedAsset)), -}); - -CollectibleContractOverview.contextType = ThemeContext; - -export default connect( - mapStateToProps, - mapDispatchToProps, -)(CollectibleContractOverview); diff --git a/app/components/UI/CollectibleContractOverview/index.test.tsx b/app/components/UI/CollectibleContractOverview/index.test.tsx deleted file mode 100644 index 94b7f7cf9c9..00000000000 --- a/app/components/UI/CollectibleContractOverview/index.test.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import React from 'react'; -import CollectibleContractOverview from './'; -import configureMockStore from 'redux-mock-store'; -import { shallow } from 'enzyme'; -import { Provider } from 'react-redux'; -import { CHAIN_IDS } from '@metamask/transaction-controller'; -import { backgroundState } from '../../../util/test/initial-root-state'; -import { mockNetworkState } from '../../../util/test/network'; - -const mockStore = configureMockStore(); - -const initialState = { - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - }, - }, -}; -const store = mockStore(initialState); - -describe('CollectibleContractOverview', () => { - it('should render correctly', () => { - const wrapper = shallow( - - - , - ); - expect(wrapper).toMatchSnapshot(); - }); -}); diff --git a/app/components/UI/CollectibleContracts/__snapshots__/index.test.tsx.snap b/app/components/UI/CollectibleContracts/__snapshots__/index.test.tsx.snap deleted file mode 100644 index ab35bdf6fa8..00000000000 --- a/app/components/UI/CollectibleContracts/__snapshots__/index.test.tsx.snap +++ /dev/null @@ -1,32 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`CollectibleContracts should render correctly 1`] = ` - - - -`; diff --git a/app/components/UI/CollectibleContracts/constants.ts b/app/components/UI/CollectibleContracts/constants.ts deleted file mode 100644 index 2682130644b..00000000000 --- a/app/components/UI/CollectibleContracts/constants.ts +++ /dev/null @@ -1,2 +0,0 @@ -export const RefreshTestId = 'refreshControl'; -export const SpinnerTestId = 'spinner'; diff --git a/app/components/UI/CollectibleContracts/index.js b/app/components/UI/CollectibleContracts/index.js deleted file mode 100644 index 3bc6e7776c2..00000000000 --- a/app/components/UI/CollectibleContracts/index.js +++ /dev/null @@ -1,462 +0,0 @@ -import React, { useState, useEffect, useCallback } from 'react'; -import PropTypes from 'prop-types'; -import { - TouchableOpacity, - StyleSheet, - View, - Image, - FlatList, - RefreshControl, - ActivityIndicator, -} from 'react-native'; -import { connect } from 'react-redux'; -import { fontStyles } from '../../../styles/common'; -import { strings } from '../../../../locales/i18n'; -import Engine from '../../../core/Engine'; -import CollectibleContractElement from '../CollectibleContractElement'; -import { MetaMetricsEvents } from '../../../core/Analytics'; -import { - collectibleContractsSelector, - collectiblesSelector, - favoritesCollectiblesSelector, - isNftFetchingProgressSelector, -} from '../../../reducers/collectibles'; -import { removeFavoriteCollectible } from '../../../actions/collectibles'; -import Text from '../../Base/Text'; -import AppConstants from '../../../core/AppConstants'; -import { toLowerCaseEquals } from '../../../util/general'; -import { compareTokenIds } from '../../../util/tokens'; -import CollectibleDetectionModal from '../CollectibleDetectionModal'; -import { useTheme } from '../../../util/theme'; -import { MAINNET } from '../../../constants/network'; -import { - selectChainId, - selectProviderType, -} from '../../../selectors/networkController'; -import { - selectDisplayNftMedia, - selectIsIpfsGatewayEnabled, - selectUseNftDetection, -} from '../../../selectors/preferencesController'; -import { selectSelectedInternalAccountFormattedAddress } from '../../../selectors/accountsController'; -import { WalletViewSelectorsIDs } from '../../../../e2e/selectors/wallet/WalletView.selectors'; -import { useMetrics } from '../../../components/hooks/useMetrics'; -import { RefreshTestId, SpinnerTestId } from './constants'; -import { debounce } from 'lodash'; - -const createStyles = (colors) => - StyleSheet.create({ - wrapper: { - backgroundColor: colors.background.default, - flex: 1, - marginTop: 16, - }, - emptyView: { - justifyContent: 'center', - alignItems: 'center', - }, - addText: { - fontSize: 14, - color: colors.primary.default, - ...fontStyles.normal, - }, - footer: { - flex: 1, - alignItems: 'center', - marginTop: 8, - }, - emptyContainer: { - flex: 1, - alignItems: 'center', - }, - emptyImageContainer: { - width: 76, - height: 76, - marginTop: 30, - marginBottom: 12, - tintColor: colors.icon.muted, - }, - emptyTitleText: { - fontSize: 24, - color: colors.text.alternative, - }, - emptyText: { - color: colors.text.alternative, - marginBottom: 8, - fontSize: 14, - }, - spinner: { - marginBottom: 8, - }, - }); - -const debouncedNavigation = debounce((navigation, collectible) => { - navigation.navigate('NftDetails', { collectible }); -}, 200); - -/** - * View that renders a list of CollectibleContract - * ERC-721 and ERC-1155 - */ -const CollectibleContracts = ({ - selectedAddress, - chainId, - networkType, - navigation, - collectibleContracts, - collectibles: allCollectibles, - isNftFetchingProgress, - favoriteCollectibles, - removeFavoriteCollectible, - useNftDetection, - isIpfsGatewayEnabled, - displayNftMedia, -}) => { - const collectibles = allCollectibles.filter( - (singleCollectible) => singleCollectible.isCurrentlyOwned === true, - ); - const { colors } = useTheme(); - const { trackEvent, createEventBuilder } = useMetrics(); - const styles = createStyles(colors); - const [isAddNFTEnabled, setIsAddNFTEnabled] = useState(true); - const [refreshing, setRefreshing] = useState(false); - - const isCollectionDetectionBannerVisible = - networkType === MAINNET && !useNftDetection; - - const onItemPress = useCallback( - (collectible) => { - debouncedNavigation(navigation, collectible); - }, - [navigation], - ); - - /** - * Method that checks if the collectible is inside the collectibles array. If it is not it means the - * collectible has been ignored, hence we should not call the updateMetadata which executes the addNft fct - * - * @returns Boolean indicating if the collectible is ignored or not. - */ - const isCollectibleIgnored = useCallback( - (collectible) => { - const found = collectibles.find( - (elm) => - elm.address === collectible.address && - elm.tokenId === collectible.tokenId, - ); - if (found) return false; - return true; - }, - [collectibles], - ); - - /** - * Method to check the token id data type of the current collectibles. - * - * @param collectible - Collectible object. - * @returns Boolean indicating if the collectible should be updated. - */ - const shouldUpdateCollectibleMetadata = (collectible) => - typeof collectible.tokenId === 'number' || - (typeof collectible.tokenId === 'string' && !isNaN(collectible.tokenId)); - - const updateAllCollectibleMetadata = useCallback( - async (collectibles) => { - const { NftController } = Engine.context; - // Filter out ignored collectibles - const filteredcollectibles = collectibles.filter( - (collectible) => !isCollectibleIgnored(collectible), - ); - - // filter removable collectible - const removable = filteredcollectibles.filter((single) => - String(single.tokenId).includes('e+'), - ); - const updatable = filteredcollectibles.filter( - (single) => !String(single.tokenId).includes('e+'), - ); - - removable.forEach((elm) => { - removeFavoriteCollectible(selectedAddress, chainId, elm); - }); - - filteredcollectibles.forEach((collectible) => { - if (String(collectible.tokenId).includes('e+')) { - removeFavoriteCollectible(selectedAddress, chainId, collectible); - } - }); - - if (updatable.length !== 0) { - await NftController.updateNftMetadata({ - nfts: updatable, - userAddress: selectedAddress, - }); - } - }, - [isCollectibleIgnored, removeFavoriteCollectible, chainId, selectedAddress], - ); - - useEffect(() => { - if (!isIpfsGatewayEnabled && !displayNftMedia) { - return; - } - // TO DO: Move this fix to the controllers layer - const updatableCollectibles = collectibles.filter((single) => - shouldUpdateCollectibleMetadata(single), - ); - if (updatableCollectibles.length !== 0 && !useNftDetection) { - updateAllCollectibleMetadata(updatableCollectibles); - } - }, [ - collectibles, - updateAllCollectibleMetadata, - isIpfsGatewayEnabled, - displayNftMedia, - useNftDetection, - ]); - - const goToAddCollectible = useCallback(() => { - setIsAddNFTEnabled(false); - navigation.push('AddAsset', { assetType: 'collectible' }); - trackEvent( - createEventBuilder(MetaMetricsEvents.WALLET_ADD_COLLECTIBLES).build(), - ); - setIsAddNFTEnabled(true); - }, [navigation, trackEvent, createEventBuilder]); - - const renderFooter = useCallback( - () => ( - - {isNftFetchingProgress ? ( - - ) : null} - - - {strings('wallet.no_collectibles')} - - - - {strings('wallet.add_collectibles')} - - - - ), - [goToAddCollectible, isAddNFTEnabled, styles, isNftFetchingProgress], - ); - - const renderCollectibleContract = useCallback( - (item, index) => { - const contractCollectibles = collectibles?.filter((collectible) => - toLowerCaseEquals(collectible.address, item.address), - ); - return ( - - ); - }, - [collectibles, onItemPress], - ); - - const renderFavoriteCollectibles = useCallback(() => { - const filteredCollectibles = favoriteCollectibles.map((collectible) => - collectibles.find( - ({ tokenId, address }) => - compareTokenIds(collectible.tokenId, tokenId) && - collectible.address === address, - ), - ); - return ( - Boolean(filteredCollectibles.length) && ( - - ) - ); - }, [favoriteCollectibles, collectibles, onItemPress]); - const onRefresh = useCallback(async () => { - requestAnimationFrame(async () => { - setRefreshing(true); - const { NftDetectionController, NftController } = Engine.context; - const actions = [ - NftDetectionController.detectNfts(), - NftController.checkAndUpdateAllNftsOwnershipStatus(), - ]; - await Promise.allSettled(actions); - setRefreshing(false); - }); - }, [setRefreshing]); - - const goToLearnMore = useCallback( - () => - navigation.navigate('Webview', { - screen: 'SimpleWebview', - params: { url: AppConstants.URLS.NFT }, - }), - [navigation], - ); - - const renderEmpty = useCallback( - () => ( - - - - {strings('wallet.no_nfts_yet')} - - - {strings('wallet.learn_more')} - - - ), - [goToLearnMore, styles], - ); - - const renderList = useCallback( - () => ( - - {isCollectionDetectionBannerVisible && ( - - - - )} - {renderFavoriteCollectibles()} - - } - data={collectibleContracts} - renderItem={({ item, index }) => renderCollectibleContract(item, index)} - keyExtractor={(_, index) => index.toString()} - testID={RefreshTestId} - refreshControl={ - - } - ListEmptyComponent={renderEmpty()} - ListFooterComponent={renderFooter()} - /> - ), - [ - renderFavoriteCollectibles, - collectibleContracts, - colors.primary.default, - colors.icon.default, - refreshing, - onRefresh, - renderCollectibleContract, - renderFooter, - renderEmpty, - isCollectionDetectionBannerVisible, - styles.emptyView, - ], - ); - - return ( - - {renderList()} - - ); -}; - -CollectibleContracts.propTypes = { - /** - * Network type - */ - networkType: PropTypes.string, - /** - * Chain id - */ - chainId: PropTypes.string, - /** - * Selected address - */ - selectedAddress: PropTypes.string, - /** - * Array of collectibleContract objects - */ - collectibleContracts: PropTypes.array, - /** - * Array of collectibles objects - */ - collectibles: PropTypes.array, - /** - * boolean indicating if fetching status is - * still in progress - */ - isNftFetchingProgress: PropTypes.bool, - /** - * Navigation object required to push - * the Asset detail view - */ - navigation: PropTypes.object, - /** - * Object of collectibles - */ - favoriteCollectibles: PropTypes.array, - /** - * Dispatch remove collectible from favorites action - */ - removeFavoriteCollectible: PropTypes.func, - /** - * Boolean to show if NFT detection is enabled - */ - useNftDetection: PropTypes.bool, - /** - * Boolean to show content stored on IPFS - */ - isIpfsGatewayEnabled: PropTypes.bool, - /** - * Boolean to show Nfts media stored on third parties - */ - displayNftMedia: PropTypes.bool, -}; - -const mapStateToProps = (state) => ({ - networkType: selectProviderType(state), - chainId: selectChainId(state), - selectedAddress: selectSelectedInternalAccountFormattedAddress(state), - useNftDetection: selectUseNftDetection(state), - collectibleContracts: collectibleContractsSelector(state), - collectibles: collectiblesSelector(state), - isNftFetchingProgress: isNftFetchingProgressSelector(state), - favoriteCollectibles: favoritesCollectiblesSelector(state), - isIpfsGatewayEnabled: selectIsIpfsGatewayEnabled(state), - displayNftMedia: selectDisplayNftMedia(state), -}); - -const mapDispatchToProps = (dispatch) => ({ - removeFavoriteCollectible: (selectedAddress, chainId, collectible) => - dispatch(removeFavoriteCollectible(selectedAddress, chainId, collectible)), -}); - -export default connect( - mapStateToProps, - mapDispatchToProps, -)(CollectibleContracts); diff --git a/app/components/UI/CollectibleContracts/index.test.tsx b/app/components/UI/CollectibleContracts/index.test.tsx deleted file mode 100644 index 8ed9f29a830..00000000000 --- a/app/components/UI/CollectibleContracts/index.test.tsx +++ /dev/null @@ -1,601 +0,0 @@ -import React from 'react'; -import { shallow } from 'enzyme'; -import CollectibleContracts from './'; -import configureMockStore from 'redux-mock-store'; -import { Provider } from 'react-redux'; -import { backgroundState } from '../../../util/test/initial-root-state'; -import renderWithProvider, { - DeepPartial, -} from '../../../util/test/renderWithProvider'; -import { act } from '@testing-library/react-hooks'; - -// eslint-disable-next-line import/no-namespace -import * as allSelectors from '../../../../app/reducers/collectibles/index.js'; -import { cleanup, waitFor } from '@testing-library/react-native'; -import Engine from '../../../core/Engine'; - -import TestHelpers from '../../../../e2e/helpers'; -import { createMockAccountsControllerState } from '../../../util/test/accountsControllerTestUtils'; -import { RootState } from '../../../reducers'; -import { mockNetworkState } from '../../../util/test/network'; -import { CHAIN_IDS } from '@metamask/transaction-controller'; - -jest.mock('@react-navigation/native', () => { - const actualReactNavigation = jest.requireActual('@react-navigation/native'); - return { - ...actualReactNavigation, - useNavigation: () => ({ - navigate: jest.fn(), - setOptions: jest.fn(), - goBack: jest.fn(), - reset: jest.fn(), - dangerouslyGetParent: () => ({ - pop: jest.fn(), - }), - }), - }; -}); - -jest.mock('../../../core/Engine', () => ({ - context: { - NftController: { - addNft: jest.fn(), - updateNftMetadata: jest.fn(), - checkAndUpdateAllNftsOwnershipStatus: jest.fn(), - }, - NftDetectionController: { - detectNfts: jest.fn(), - }, - }, -})); - -const mockStore = configureMockStore(); - -const initialState = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState, - }, -}; -const store = mockStore(initialState); - -const MOCK_ADDRESS = '0xd018538C87232FF95acbCe4870629b75640a78E7'; -const MOCK_ACCOUNTS_CONTROLLER_STATE = createMockAccountsControllerState([ - MOCK_ADDRESS, -]); - -describe('CollectibleContracts', () => { - afterEach(cleanup); - it('should render correctly', () => { - const wrapper = shallow( - - - , - ); - expect(wrapper).toMatchSnapshot(); - }); - - it('should only get owned collectibles', () => { - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [MOCK_ADDRESS]: { balance: '0' } }, - }, - AccountsController: MOCK_ACCOUNTS_CONTROLLER_STATE, - NftController: { - allNfts: { - [MOCK_ADDRESS.toLowerCase()]: { - '0x1': [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/113', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/113', - isCurrentlyOwned: false, - name: 'Lil Pudgy #114', - standard: 'ERC721', - tokenId: '114', - tokenURI: 'https://api.pudgypenguins.io/lil/114', - }, - ], - }, - }, - allNftContracts: { - [MOCK_ADDRESS.toLowerCase()]: { - '0x1': [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - name: 'MyToken', - symbol: 'MTK', - }, - ], - }, - }, - }, - }, - }, - }; - const { queryByTestId } = renderWithProvider(, { - state: mockState, - }); - - const ownedNft = queryByTestId('collectible-Lil Pudgy #113-113'); - const nonOwnedNft = queryByTestId('collectible-Lil Pudgy #114-114'); - - expect(ownedNft).toBeTruthy(); - expect(nonOwnedNft).toBeNull(); - }); - - it('UI refresh changes NFT image when metadata image changes - detection disabled', async () => { - const collectibleData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - name: 'MyToken', - symbol: 'MTK', - }, - ]; - const nftItemData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/11222', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - - const nftItemDataUpdated = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/updated.png', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [MOCK_ADDRESS]: { balance: '0' } }, - }, - PreferencesController: { - displayNftMedia: true, - }, - AccountsController: MOCK_ACCOUNTS_CONTROLLER_STATE, - NftController: { - allNfts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - allNftContracts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - }, - }, - }, - }; - - const spyOnCollectibles = jest - .spyOn(allSelectors, 'collectiblesSelector') - .mockReturnValueOnce(nftItemData) - .mockReturnValueOnce(nftItemDataUpdated); - const spyOnContracts = jest - .spyOn(allSelectors, 'collectibleContractsSelector') - .mockReturnValue(collectibleData); - const spyOnUpdateNftMetadata = jest - .spyOn(Engine.context.NftController, 'updateNftMetadata') - .mockImplementation(async () => undefined); - - const { getByTestId } = renderWithProvider(, { - state: mockState, - }); - const nftImageBefore = getByTestId('nft-image'); - expect(nftImageBefore.props.source.uri).toEqual(nftItemData[0].image); - - const { queryByTestId } = renderWithProvider(, { - state: mockState, - }); - - await waitFor(() => { - expect(spyOnUpdateNftMetadata).toHaveBeenCalled(); - const nftImageAfter = queryByTestId('nft-image'); - expect(nftImageAfter.props.source.uri).toEqual( - nftItemDataUpdated[0].image, - ); - }); - - spyOnCollectibles.mockRestore(); - spyOnContracts.mockRestore(); - spyOnUpdateNftMetadata.mockRestore(); - }); - - it('UI refresh changes NFT image when metadata image changes - detection enabled', async () => { - const collectibleData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - name: 'MyToken', - symbol: 'MTK', - }, - ]; - const nftItemData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/11222', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - - const nftItemDataUpdated = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/updated.png', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [MOCK_ADDRESS]: { balance: '0' } }, - }, - PreferencesController: { - useNftDetection: true, - displayNftMedia: true, - }, - AccountsController: MOCK_ACCOUNTS_CONTROLLER_STATE, - NftController: { - allNfts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - allNftContracts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - }, - }, - }, - }; - - const spyOnCollectibles = jest - .spyOn(allSelectors, 'collectiblesSelector') - .mockReturnValueOnce(nftItemData) - .mockReturnValueOnce(nftItemDataUpdated); - const spyOnContracts = jest - .spyOn(allSelectors, 'collectibleContractsSelector') - .mockReturnValue(collectibleData); - const spyOnUpdateNftMetadata = jest - .spyOn(Engine.context.NftController, 'updateNftMetadata') - .mockImplementation(async () => undefined); - - const { getByTestId } = renderWithProvider(, { - state: mockState, - }); - const nftImageBefore = getByTestId('nft-image'); - expect(nftImageBefore.props.source.uri).toEqual(nftItemData[0].image); - - const { queryByTestId } = renderWithProvider(, { - state: mockState, - }); - - await waitFor(() => { - expect(spyOnUpdateNftMetadata).toHaveBeenCalledTimes(0); - const nftImageAfter = queryByTestId('nft-image'); - expect(nftImageAfter.props.source.uri).toEqual( - nftItemDataUpdated[0].image, - ); - }); - - spyOnCollectibles.mockRestore(); - spyOnContracts.mockRestore(); - spyOnUpdateNftMetadata.mockRestore(); - }); - - it('UI pull down experience should call detectNfts when detection is enabled', async () => { - const collectibleData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - name: 'MyToken', - symbol: 'MTK', - }, - ]; - const nftItemData = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/11222', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - - const nftItemDataUpdated = [ - { - address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', - description: - 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', - error: 'Opensea import error', - favorite: false, - image: 'https://api.pudgypenguins.io/lil/image/updated.png', - isCurrentlyOwned: true, - name: 'Lil Pudgy #113', - standard: 'ERC721', - tokenId: '113', - tokenURI: 'https://api.pudgypenguins.io/lil/113', - }, - ]; - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [MOCK_ADDRESS]: { balance: '0' } }, - }, - PreferencesController: { - useNftDetection: true, - displayNftMedia: true, - }, - NftController: { - allNfts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - allNftContracts: { - [MOCK_ADDRESS]: { - '0x1': [], - }, - }, - }, - }, - }, - }; - - jest - .spyOn(allSelectors, 'collectiblesSelector') - .mockReturnValueOnce(nftItemData) - .mockReturnValueOnce(nftItemDataUpdated); - jest - .spyOn(allSelectors, 'collectibleContractsSelector') - .mockReturnValue(collectibleData); - const spyOnUpdateNftMetadata = jest - .spyOn(Engine.context.NftController, 'updateNftMetadata') - .mockImplementation(async () => undefined); - - const spyOnDetectNfts = jest - .spyOn(Engine.context.NftDetectionController, 'detectNfts') - .mockImplementation(async () => undefined); - - const { getByTestId } = renderWithProvider(, { - state: mockState, - }); - const scrollView = getByTestId('refreshControl'); - - expect(scrollView).toBeDefined(); - - const { refreshControl } = scrollView.props; - await act(async () => { - await refreshControl.props.onRefresh(); - }); - - await TestHelpers.delay(1000); - - expect(spyOnUpdateNftMetadata).toHaveBeenCalledTimes(0); - expect(spyOnDetectNfts).toHaveBeenCalledTimes(1); - }); - - it('shows spinner if nfts are still being fetched', async () => { - const CURRENT_ACCOUNT = '0x1a'; - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - isNftFetchingProgress: true, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [CURRENT_ACCOUNT]: { balance: '0' } }, - }, - PreferencesController: { - useNftDetection: true, - displayNftMedia: true, - selectedAddress: CURRENT_ACCOUNT, - identities: { - [CURRENT_ACCOUNT]: { - address: CURRENT_ACCOUNT, - name: 'Account 1', - }, - }, - }, - NftController: { - allNfts: { - [CURRENT_ACCOUNT]: { - '0x1': [], - }, - }, - allNftContracts: { - [CURRENT_ACCOUNT]: { - '0x1': [], - }, - }, - }, - }, - }, - }; - const { queryByTestId } = renderWithProvider(, { - state: mockState, - }); - - const spinner = queryByTestId('spinner'); - expect(spinner).not.toBeNull(); - }); - - it('Does not show spinner if nfts are not still being fetched', async () => { - const CURRENT_ACCOUNT = '0x1a'; - const mockState: DeepPartial = { - collectibles: { - favorites: {}, - }, - engine: { - backgroundState: { - ...backgroundState, - NetworkController: { - ...mockNetworkState({ - chainId: CHAIN_IDS.MAINNET, - id: 'mainnet', - nickname: 'Ethereum Mainnet', - ticker: 'ETH', - }), - }, - AccountTrackerController: { - accounts: { [CURRENT_ACCOUNT]: { balance: '0' } }, - }, - PreferencesController: { - useNftDetection: true, - displayNftMedia: true, - selectedAddress: CURRENT_ACCOUNT, - identities: { - [CURRENT_ACCOUNT]: { - address: CURRENT_ACCOUNT, - name: 'Account 1', - }, - }, - }, - NftController: { - allNfts: { - [CURRENT_ACCOUNT]: { - '0x1': [], - }, - }, - allNftContracts: { - [CURRENT_ACCOUNT]: { - '0x1': [], - }, - }, - }, - }, - }, - }; - - const { queryByTestId } = renderWithProvider(, { - state: mockState, - }); - - const spinner = queryByTestId('spinner'); - expect(spinner).toBeNull(); - }); -}); diff --git a/app/components/UI/CollectibleMedia/CollectibleMedia.styles.ts b/app/components/UI/CollectibleMedia/CollectibleMedia.styles.ts index c8b6470930a..e656d4b6a17 100644 --- a/app/components/UI/CollectibleMedia/CollectibleMedia.styles.ts +++ b/app/components/UI/CollectibleMedia/CollectibleMedia.styles.ts @@ -48,6 +48,12 @@ const styleSheet = (params: { image: { borderRadius: 12, }, + imageHidden: { + borderRadius: 12, + backgroundColor: colors.background.alternative, + justifyContent: 'center', + alignItems: 'center', + }, textContainer: { alignItems: 'center', justifyContent: 'flex-start', diff --git a/app/components/UI/CollectibleMedia/CollectibleMedia.tsx b/app/components/UI/CollectibleMedia/CollectibleMedia.tsx index e73a5519537..5631db40236 100644 --- a/app/components/UI/CollectibleMedia/CollectibleMedia.tsx +++ b/app/components/UI/CollectibleMedia/CollectibleMedia.tsx @@ -18,10 +18,15 @@ import { ButtonVariants, } from '../../../component-library/components/Buttons/Button'; import Button from '../../../component-library/components/Buttons/Button/Button'; +import Icon, { + IconSize, + IconName, +} from '../../../component-library/components/Icons/Icon'; import { strings } from '../../../../locales/i18n'; import { useNavigation } from '@react-navigation/native'; import Routes from '../../../constants/navigation/Routes'; import { useStyles } from '../../../component-library/hooks'; +import { useTheme } from '../../../util/theme'; const CollectibleMedia: React.FC = ({ collectible, @@ -35,12 +40,14 @@ const CollectibleMedia: React.FC = ({ onPressColectible, isTokenImage, isFullRatio, + privacyMode = false, }) => { const [sourceUri, setSourceUri] = useState(null); const isIpfsGatewayEnabled = useSelector(selectIsIpfsGatewayEnabled); const displayNftMedia = useSelector(selectDisplayNftMedia); const { navigate } = useNavigation(); + const { colors } = useTheme(); const { styles } = useStyles(createStyles, { backgroundColor: collectible.backgroundColor, }); @@ -161,6 +168,26 @@ const CollectibleMedia: React.FC = ({ ); const renderMedia = useCallback(() => { + if (privacyMode) { + return ( + + + + ); + } if ( displayNftMedia || (!displayNftMedia && isIpfsGatewayEnabled && isIPFSUri(sourceUri)) @@ -223,6 +250,9 @@ const CollectibleMedia: React.FC = ({ styles.tinyImage, styles.smallImage, styles.bigImage, + styles.imageHidden, + colors.text.muted, + privacyMode, cover, style, tiny, diff --git a/app/components/UI/CollectibleMedia/CollectibleMedia.types.ts b/app/components/UI/CollectibleMedia/CollectibleMedia.types.ts index 760cc9584cf..6132fd8f4b9 100644 --- a/app/components/UI/CollectibleMedia/CollectibleMedia.types.ts +++ b/app/components/UI/CollectibleMedia/CollectibleMedia.types.ts @@ -31,4 +31,5 @@ export interface CollectibleMediaProps { onPressColectible?: () => void; isTokenImage?: boolean; isFullRatio?: boolean; + privacyMode?: boolean; } diff --git a/app/components/UI/CollectibleModal/__snapshots__/CollectibleModal.test.tsx.snap b/app/components/UI/CollectibleModal/__snapshots__/CollectibleModal.test.tsx.snap index 14dd7d35efd..061f1c7d419 100644 --- a/app/components/UI/CollectibleModal/__snapshots__/CollectibleModal.test.tsx.snap +++ b/app/components/UI/CollectibleModal/__snapshots__/CollectibleModal.test.tsx.snap @@ -276,7 +276,7 @@ exports[`CollectibleModal should render correctly 1`] = ` - + {strings('transaction.back')} @@ -660,7 +665,6 @@ export function getOnboardingNavbarOptions( source={metamask_name} style={innerStyles.metamaskName} resizeMethod={'auto'} - /> ), @@ -917,10 +921,9 @@ export function getWalletNavbarOptions( let formattedAddress = toChecksumHexAddress(selectedInternalAccount.address); ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) - if (isBtcAccount(selectedInternalAccount)) { - // BTC addresses are not checksummed - formattedAddress = selectedInternalAccount.address; - } + formattedAddress = getFormattedAddressFromInternalAccount( + selectedInternalAccount, + ); ///: END:ONLY_INCLUDE_IF const onScanSuccess = (data, content) => { @@ -1018,6 +1021,18 @@ export function getWalletNavbarOptions( ); ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) + if (isSolanaAccount(selectedInternalAccount)) { + networkPicker = ( + + ); + } + if (isBtcAccount(selectedInternalAccount)) { networkPicker = ( ); } + ///: END:ONLY_INCLUDE_IF return {networkPicker}; diff --git a/app/components/UI/NetworkCell/__snapshots__/NetworkCell.test.tsx.snap b/app/components/UI/NetworkCell/__snapshots__/NetworkCell.test.tsx.snap index c42f8ba6009..28b2fa79f4d 100644 --- a/app/components/UI/NetworkCell/__snapshots__/NetworkCell.test.tsx.snap +++ b/app/components/UI/NetworkCell/__snapshots__/NetworkCell.test.tsx.snap @@ -13,7 +13,7 @@ exports[`NetworkCell should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "padding": 16, @@ -123,7 +123,7 @@ exports[`NetworkCell should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -131,7 +131,7 @@ exports[`NetworkCell should render correctly 1`] = ` } testID="incoming-mainnet-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> diff --git a/app/components/UI/NetworkModal/__snapshots__/index.test.tsx.snap b/app/components/UI/NetworkModal/__snapshots__/index.test.tsx.snap index f770473ec63..14432055966 100644 --- a/app/components/UI/NetworkModal/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/NetworkModal/__snapshots__/index.test.tsx.snap @@ -122,7 +122,7 @@ exports[`NetworkDetails renders correctly 1`] = ` StyleSheet.create({ diff --git a/app/components/UI/NetworkVerificationInfo/__snapshots__/NetworkVerificationInfo.test.tsx.snap b/app/components/UI/NetworkVerificationInfo/__snapshots__/NetworkVerificationInfo.test.tsx.snap index 4c4dababc3e..c3e90cdf813 100644 --- a/app/components/UI/NetworkVerificationInfo/__snapshots__/NetworkVerificationInfo.test.tsx.snap +++ b/app/components/UI/NetworkVerificationInfo/__snapshots__/NetworkVerificationInfo.test.tsx.snap @@ -144,7 +144,7 @@ exports[`NetworkVerificationInfo renders correctly 1`] = ` + StyleSheet.create({ + collectibleIcon: { + width: '100%', + aspectRatio: 1, + }, + collectibleCard: { + flexBasis: '33%', + padding: 10, + marginBottom: 10, + justifyContent: 'center', + alignItems: 'center', + }, + footer: { + alignItems: 'center', + }, + spinner: { + marginBottom: 8, + }, + emptyContainer: { + flex: 1, + alignItems: 'center', + outline: 'solid red 2px', + }, + emptyImageContainer: { + width: 30, + height: 30, + tintColor: colors.background, + }, + headingMd: { + marginTop: 10, + }, + emptyText: { + color: colors.text.alternative, + marginBottom: 8, + fontSize: 14, + }, + }); + +export default styleSheet; diff --git a/app/components/UI/NftGrid/NftGrid.test.tsx b/app/components/UI/NftGrid/NftGrid.test.tsx new file mode 100644 index 00000000000..c3e144df1df --- /dev/null +++ b/app/components/UI/NftGrid/NftGrid.test.tsx @@ -0,0 +1,552 @@ +import React from 'react'; +import { + render, + fireEvent, + waitFor, + cleanup, + act, +} from '@testing-library/react-native'; +import NftGridFooter from './NftGridFooter'; +import { WalletViewSelectorsIDs } from '../../../../e2e/selectors/wallet/WalletView.selectors'; +import { StackNavigationProp } from '@react-navigation/stack'; +import NftGridEmpty from './NftGridEmpty'; +import NftGridItem from './NftGridItem'; +import { Nft } from '@metamask/assets-controllers'; +import renderWithProvider, { + DeepPartial, +} from '../../../util/test/renderWithProvider'; +import { RootState } from '../../../reducers'; +import { useNavigation } from '@react-navigation/native'; +import NftGrid from './NftGrid'; +import { mockNetworkState } from '../../../util/test/network'; +import { backgroundState } from '../../../util/test/initial-root-state'; +import { CHAIN_IDS } from '@metamask/transaction-controller'; +import { createMockAccountsControllerState } from '../../../util/test/accountsControllerTestUtils'; +// eslint-disable-next-line import/no-namespace +import * as allSelectors from '../../../../app/reducers/collectibles/index.js'; +import Engine from '../../../core/Engine'; +import TestHelpers from '../../../../e2e/helpers'; + +jest.mock('../../../core/Engine', () => ({ + context: { + NftController: { + addNft: jest.fn(), + updateNftMetadata: jest.fn(), + checkAndUpdateAllNftsOwnershipStatus: jest.fn(), + }, + NftDetectionController: { + detectNfts: jest.fn(), + }, + }, +})); + +jest.mock('@react-navigation/native', () => ({ + ...jest.requireActual('@react-navigation/native'), + useNavigation: jest.fn(), +})); + +type MockNavigation = StackNavigationProp< + { + AddAsset: { assetType: string }; + [key: string]: object | undefined; + }, + 'AddAsset' +>; + +const mockNavigation: MockNavigation = { + push: jest.fn(), + navigate: jest.fn(), + goBack: jest.fn(), + pop: jest.fn(), + replace: jest.fn(), + reset: jest.fn(), + popToTop: jest.fn(), + isFocused: jest.fn(), + canGoBack: jest.fn(), + setParams: jest.fn(), + getParent: jest.fn(), +} as unknown as MockNavigation; + +const MOCK_ADDRESS = '0xd018538C87232FF95acbCe4870629b75640a78E7'; +const MOCK_CONTRACT_ADDRESS = '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42'; +const MOCK_ACCOUNTS_CONTROLLER_STATE = createMockAccountsControllerState([ + MOCK_ADDRESS, +]); + +const mockState: DeepPartial = { + collectibles: { + favorites: {}, + isNftFetchingProgress: false, + }, + engine: { + backgroundState: { + ...backgroundState, + NetworkController: { + ...mockNetworkState({ + chainId: CHAIN_IDS.MAINNET, + id: 'mainnet', + nickname: 'Ethereum Mainnet', + ticker: 'ETH', + }), + }, + AccountTrackerController: { + accounts: { [MOCK_ADDRESS]: { balance: '0' } }, + }, + PreferencesController: { + useNftDetection: true, + displayNftMedia: true, + }, + AccountsController: MOCK_ACCOUNTS_CONTROLLER_STATE, + NftController: { + allNfts: { + [MOCK_ADDRESS.toLowerCase()]: { + [CHAIN_IDS.MAINNET]: [ + { + address: MOCK_CONTRACT_ADDRESS, + description: + 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', + favorite: false, + image: 'https://api.pudgypenguins.io/lil/image/113', + isCurrentlyOwned: true, + name: 'Lil Pudgy #113', + standard: 'ERC721', + tokenId: '113', + tokenURI: 'https://api.pudgypenguins.io/lil/113', + }, + { + address: MOCK_CONTRACT_ADDRESS, + description: + 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', + favorite: false, + image: 'https://api.pudgypenguins.io/lil/image/113', + isCurrentlyOwned: false, + name: 'Lil Pudgy #114', + standard: 'ERC721', + tokenId: '114', + tokenURI: 'https://api.pudgypenguins.io/lil/114', + }, + ], + }, + }, + allNftContracts: { + [MOCK_ADDRESS]: { + [CHAIN_IDS.MAINNET]: [ + { + address: MOCK_CONTRACT_ADDRESS, + name: 'MyToken', + symbol: 'MTK', + }, + ], + }, + }, + }, + }, + }, +}; + +const nftItemData = [ + { + address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', + description: + 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', + error: 'Opensea import error', + favorite: false, + image: 'https://api.pudgypenguins.io/lil/image/11222', + isCurrentlyOwned: true, + name: 'Lil Pudgy #113', + standard: 'ERC721', + tokenId: '113', + tokenURI: 'https://api.pudgypenguins.io/lil/113', + }, +]; + +const nftItemDataUpdated = [ + { + address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', + description: + 'Lil Pudgys are a collection of 22,222 randomly generated NFTs minted on Ethereum.', + error: 'Opensea import error', + favorite: false, + image: 'https://api.pudgypenguins.io/lil/image/updated.png', + isCurrentlyOwned: true, + name: 'Lil Pudgy #113', + standard: 'ERC721', + tokenId: '113', + tokenURI: 'https://api.pudgypenguins.io/lil/113', + }, +]; + +const collectibleData = [ + { + address: '0x72b1FDb6443338A158DeC2FbF411B71aeB157A42', + name: 'MyToken', + symbol: 'MTK', + }, +]; + +describe('NftGrid', () => { + afterEach(cleanup); + const mockNavigate = jest.fn(); + (useNavigation as jest.Mock).mockReturnValue({ + navigate: mockNavigate, + goBack: jest.fn(), + push: jest.fn(), + replace: jest.fn(), + reset: jest.fn(), + popToTop: jest.fn(), + }); + + it('should only get owned collectibles', () => { + const { queryByTestId } = renderWithProvider( + , + { + state: mockState, + }, + ); + + const ownedNft = queryByTestId('Lil Pudgy #113'); + const nonOwnedNft = queryByTestId('Lil Pudgy #114'); + + expect(ownedNft).toBeTruthy(); + expect(nonOwnedNft).toBeNull(); + }); + + it('UI refresh changes NFT image when metadata image changes - detection disabled', async () => { + const testState: DeepPartial = { + ...mockState, + engine: { + ...mockState.engine, + backgroundState: { + ...mockState?.engine?.backgroundState, + PreferencesController: { + ...mockState?.engine?.backgroundState?.PreferencesController, + useNftDetection: false, + }, + }, + }, + }; + + const spyOnCollectibles = jest + .spyOn(allSelectors, 'collectiblesSelector') + .mockReturnValue(nftItemData); + + const spyOnUpdateNftMetadata = jest + .spyOn(Engine.context.NftController, 'updateNftMetadata') + .mockImplementation(async () => undefined); + + const { getByTestId: getByTestIdBefore } = renderWithProvider( + , + { + state: testState, + }, + ); + + jest.clearAllMocks(); + jest + .spyOn(allSelectors, 'collectiblesSelector') + .mockReturnValue(nftItemDataUpdated); + + const nftImageBefore = getByTestIdBefore('nft-image'); + expect(nftImageBefore.props.source.uri).toEqual(nftItemData[0].image); + + const { getByTestId: getByTestIdAfter } = renderWithProvider( + , + { + state: testState, + }, + ); + + await waitFor(() => { + // ensure only one call, and with the updated required updated metadata + expect(spyOnUpdateNftMetadata).toHaveBeenCalledTimes(1); + expect(spyOnUpdateNftMetadata).toHaveBeenCalledWith({ + nfts: nftItemDataUpdated, + userAddress: MOCK_ADDRESS, + }); + const nftImageAfter = getByTestIdAfter('nft-image'); + expect(nftImageAfter.props.source.uri).toEqual( + nftItemDataUpdated[0].image, + ); + }); + + spyOnCollectibles.mockRestore(); + spyOnUpdateNftMetadata.mockRestore(); + }); + + it('UI refresh changes NFT image when metadata image changes - detection enabled', async () => { + const testState: DeepPartial = { + ...mockState, + engine: { + ...mockState.engine, + backgroundState: { + ...mockState?.engine?.backgroundState, + PreferencesController: { + ...mockState?.engine?.backgroundState?.PreferencesController, + useNftDetection: true, // Override useNftDetection here + }, + }, + }, + }; + + const spyOnCollectibles = jest + .spyOn(allSelectors, 'collectiblesSelector') + .mockReturnValue(nftItemData); + + const spyOnUpdateNftMetadata = jest + .spyOn(Engine.context.NftController, 'updateNftMetadata') + .mockImplementation(async () => undefined); + + const { getByTestId } = renderWithProvider( + , + { + state: testState, + }, + ); + + jest.clearAllMocks(); + jest + .spyOn(allSelectors, 'collectiblesSelector') + .mockReturnValue(nftItemDataUpdated); + + const nftImageBefore = getByTestId('nft-image'); + expect(nftImageBefore.props.source.uri).toEqual(nftItemData[0].image); + + const { getByTestId: getAfterByTestId } = renderWithProvider( + , + { + state: testState, + }, + ); + + await waitFor(() => { + expect(spyOnUpdateNftMetadata).toHaveBeenCalledTimes(0); + const nftImageAfter = getAfterByTestId('nft-image'); + expect(nftImageAfter.props.source.uri).toEqual( + nftItemDataUpdated[0].image, + ); + }); + + spyOnCollectibles.mockRestore(); + spyOnUpdateNftMetadata.mockRestore(); + }); + + it('UI pull down experience should call detectNfts when detection is enabled', async () => { + const testState: DeepPartial = { + ...mockState, + engine: { + ...mockState.engine, + backgroundState: { + ...mockState?.engine?.backgroundState, + PreferencesController: { + ...mockState?.engine?.backgroundState?.PreferencesController, + useNftDetection: true, // Override useNftDetection here + }, + }, + }, + }; + + jest + .spyOn(allSelectors, 'collectiblesSelector') + .mockReturnValueOnce(nftItemData) + .mockReturnValueOnce(nftItemDataUpdated); + jest + .spyOn(allSelectors, 'collectibleContractsSelector') + .mockReturnValue(collectibleData); + const spyOnUpdateNftMetadata = jest + .spyOn(Engine.context.NftController, 'updateNftMetadata') + .mockImplementation(async () => undefined); + + const spyOnDetectNfts = jest + .spyOn(Engine.context.NftDetectionController, 'detectNfts') + .mockImplementation(async () => undefined); + + const { getByTestId } = renderWithProvider( + , + { + state: testState, + }, + ); + const scrollView = getByTestId('refreshControl'); + + expect(scrollView).toBeDefined(); + + const { refreshControl } = scrollView.props; + await act(async () => { + await refreshControl.props.onRefresh(); + }); + + await TestHelpers.delay(1000); + + expect(spyOnUpdateNftMetadata).toHaveBeenCalledTimes(0); + expect(spyOnDetectNfts).toHaveBeenCalledTimes(1); + }); + + it('shows spinner if nfts are still being fetched', async () => { + const testState: DeepPartial = { + ...mockState, + collectibles: { + ...mockState.collectibles, + favorites: {}, + isNftFetchingProgress: true, + }, + engine: { + ...mockState.engine, + backgroundState: { + ...mockState?.engine?.backgroundState, + PreferencesController: { + ...mockState?.engine?.backgroundState?.PreferencesController, + useNftDetection: true, // Override useNftDetection here + }, + }, + }, + }; + + const { queryByTestId } = renderWithProvider( + , + { + state: testState, + }, + ); + + const spinner = queryByTestId('spinner'); + expect(spinner).not.toBeNull(); + }); + + it('Does not show spinner if nfts are not still being fetched', async () => { + const testState: DeepPartial = { + collectibles: { + favorites: {}, + }, + engine: { + backgroundState: { + ...backgroundState, + NetworkController: { + ...mockNetworkState({ + chainId: CHAIN_IDS.MAINNET, + id: 'mainnet', + nickname: 'Ethereum Mainnet', + ticker: 'ETH', + }), + }, + AccountTrackerController: { + accounts: { [MOCK_ADDRESS.toLowerCase()]: { balance: '0' } }, + }, + PreferencesController: { + useNftDetection: true, + displayNftMedia: true, + selectedAddress: MOCK_ADDRESS.toLowerCase(), + identities: { + [MOCK_ADDRESS.toLowerCase()]: { + address: MOCK_ADDRESS.toLowerCase(), + name: 'Account 1', + }, + }, + }, + NftController: { + allNfts: { + [MOCK_ADDRESS.toLowerCase()]: { + '0x1': [], + }, + }, + allNftContracts: { + [MOCK_ADDRESS.toLowerCase()]: { + '0x1': [], + }, + }, + }, + }, + }, + }; + + const { queryByTestId } = renderWithProvider( + , + { + state: testState, + }, + ); + + const spinner = queryByTestId('spinner'); + expect(spinner).toBeNull(); + }); +}); + +describe('NftGridFooter', () => { + it('renders without crashing', () => { + const { getByText } = render(); + expect(getByText('Don’t see your NFT?')).toBeTruthy(); + expect(getByText('Import NFTs')).toBeTruthy(); + }); + + it('calls navigation.push when the button is pressed', () => { + const { getByTestId } = render( + , + ); + const button = getByTestId(WalletViewSelectorsIDs.IMPORT_NFT_BUTTON); + fireEvent.press(button); + expect(mockNavigation.push).toHaveBeenCalledWith('AddAsset', { + assetType: 'collectible', + }); + }); +}); + +describe('NftGridEmpty', () => { + it('renders without crashing', () => { + const { getByText } = render(); + expect(getByText('No NFTs yet')).toBeTruthy(); + expect(getByText('Learn more')).toBeTruthy(); + }); + + it('calls navigation.navigate when the button is pressed', () => { + const { getByText } = render(); + const learnMoreText = getByText('Learn more'); + fireEvent.press(learnMoreText); + + // TODO: actually test for learn more redirect + expect(mockNavigation.navigate).toHaveBeenCalledWith('Webview', { + screen: 'SimpleWebview', + params: { + url: 'https://support.metamask.io/nfts/nft-tokens-in-your-metamask-wallet/', + }, + }); + }); +}); + +describe('NftGridItem', () => { + const mockNft: Nft = { + address: '0x123', + tokenId: '1', + name: 'Test NFT', + image: 'https://example.com/image.png', + collection: { + name: 'Test Collection', + }, + description: '', + standard: 'erc721', + }; + + const mockNavigate = jest.fn(); + (useNavigation as jest.Mock).mockReturnValue({ + navigate: mockNavigate, + goBack: jest.fn(), + push: jest.fn(), + replace: jest.fn(), + reset: jest.fn(), + popToTop: jest.fn(), + }); + + it('renders correctly with a valid nft', () => { + const { getByText, getByTestId } = renderWithProvider( + , + { state: mockState }, + ); + + expect(getByTestId(mockNft.name as string)).toBeTruthy(); + expect(getByText('Test NFT')).toBeTruthy(); + expect(getByText('Test Collection')).toBeTruthy(); + }); +}); diff --git a/app/components/UI/NftGrid/NftGrid.tsx b/app/components/UI/NftGrid/NftGrid.tsx new file mode 100644 index 00000000000..55b3e9391cf --- /dev/null +++ b/app/components/UI/NftGrid/NftGrid.tsx @@ -0,0 +1,288 @@ +import React, { useCallback, useEffect, useRef, useState } from 'react'; +import { + View, + Alert, + ActivityIndicator, + FlatList, + RefreshControl, +} from 'react-native'; +import { useSelector } from 'react-redux'; +import ActionSheet from '@metamask/react-native-actionsheet'; +import { strings } from '../../../../locales/i18n'; +import Engine from '../../../core/Engine'; +import { removeFavoriteCollectible } from '../../../actions/collectibles'; +import { + collectiblesSelector, + isNftFetchingProgressSelector, +} from '../../../reducers/collectibles'; +import { useTheme } from '../../../util/theme'; +import { + MetaMetricsEvents, + useMetrics, +} from '../../../components/hooks/useMetrics'; +import { getDecimalChainId } from '../../../util/networks'; +import { Nft } from '@metamask/assets-controllers'; +import styleSheet from './NftGrid.styles'; +import { StackNavigationProp } from '@react-navigation/stack'; +import CollectibleDetectionModal from '../CollectibleDetectionModal'; +import { + selectDisplayNftMedia, + selectIsIpfsGatewayEnabled, + selectPrivacyMode, + selectUseNftDetection, +} from '../../../selectors/preferencesController'; +import NftGridItem from './NftGridItem'; +import NftGridEmpty from './NftGridEmpty'; +import NftGridFooter from './NftGridFooter'; +import { useNavigation } from '@react-navigation/native'; + +export const RefreshTestId = 'refreshControl'; +export const SpinnerTestId = 'spinner'; + +interface ActionSheetType { + show: () => void; +} + +export interface LongPressedCollectibleType { + address: string; + tokenId: string; +} + +interface NftGridNavigationParamList { + AddAsset: { assetType: string }; + [key: string]: undefined | object; +} + +interface NftGridProps { + chainId: string; + selectedAddress: string; +} + +function NftGrid({ chainId, selectedAddress }: NftGridProps) { + const navigation = + useNavigation< + StackNavigationProp + >(); + const collectibles = useSelector(collectiblesSelector).filter( + (singleCollectible: Nft) => singleCollectible.isCurrentlyOwned === true, + ); + const privacyMode = useSelector(selectPrivacyMode); + const isIpfsGatewayEnabled = useSelector(selectIsIpfsGatewayEnabled); + const displayNftMedia = useSelector(selectDisplayNftMedia); + const useNftDetection = useSelector(selectUseNftDetection); + const isNftFetchingProgress = useSelector(isNftFetchingProgressSelector); + const isNftDetectionEnabled = useSelector(selectUseNftDetection); + const actionSheetRef = useRef(null); + const longPressedCollectible = useRef( + null, + ); + const { themeAppearance, colors } = useTheme(); + const styles = styleSheet(colors); + const { trackEvent, createEventBuilder } = useMetrics(); + + const [refreshing, setRefreshing] = useState(false); + + const onRefresh = useCallback(async () => { + requestAnimationFrame(async () => { + setRefreshing(true); + const { NftDetectionController, NftController } = Engine.context; + const actions = [ + NftDetectionController.detectNfts(), + NftController.checkAndUpdateAllNftsOwnershipStatus(), + ]; + await Promise.allSettled(actions); + setRefreshing(false); + }); + }, [setRefreshing]); + + const removeNft = () => { + const { NftController } = Engine.context; + + if ( + !longPressedCollectible?.current?.address && + !longPressedCollectible?.current?.tokenId + ) { + return null; + } + + removeFavoriteCollectible( + selectedAddress, + chainId, + longPressedCollectible.current, + ); + NftController.removeAndIgnoreNft( + longPressedCollectible.current.address, + longPressedCollectible.current.tokenId, + ); + + trackEvent( + createEventBuilder(MetaMetricsEvents.COLLECTIBLE_REMOVED) + .addProperties({ + chain_id: getDecimalChainId(chainId), + }) + .build(), + ); + Alert.alert( + strings('wallet.collectible_removed_title'), + strings('wallet.collectible_removed_desc'), + ); + }; + + const refreshMetadata = () => { + const { NftController } = Engine.context; + + if ( + !longPressedCollectible?.current?.address && + !longPressedCollectible?.current?.tokenId + ) { + return null; + } + + NftController.addNft( + longPressedCollectible.current.address, + longPressedCollectible.current.tokenId, + ); + }; + + const FIRST_MENU_ACTION = 0; + const SECOND_MENU_ACTION = 1; + + const handleMenuAction = (index: number) => { + if (index === FIRST_MENU_ACTION) { + refreshMetadata(); + } else if (index === SECOND_MENU_ACTION) { + removeNft(); + } + }; + + const isCollectibleIgnored = useCallback( + (collectible) => { + const found = collectibles.find( + (elm: Nft) => + elm.address === collectible.address && + elm.tokenId === collectible.tokenId, + ); + if (found) return false; + return true; + }, + [collectibles], + ); + + const shouldUpdateCollectibleMetadata = (collectible: Nft) => + typeof collectible.tokenId === 'number' || + (typeof collectible.tokenId === 'string' && + !Number.isNaN(Number(collectible.tokenId))); + + const updateAllCollectibleMetadata = useCallback( + async (collectiblesArr: Nft[]) => { + const { NftController } = Engine.context; + // Filter out ignored collectibles + const filteredcollectibles = collectiblesArr.filter( + (collectible: Nft) => !isCollectibleIgnored(collectible), + ); + + // filter removable collectible + const removable = filteredcollectibles.filter((single: Nft) => + String(single.tokenId).includes('e+'), + ); + const updatable = filteredcollectibles.filter( + (single: Nft) => !String(single.tokenId).includes('e+'), + ); + + removable.forEach((elm: Nft) => { + removeFavoriteCollectible(selectedAddress, chainId, elm); + }); + + if (updatable.length !== 0) { + await NftController.updateNftMetadata({ + nfts: updatable, + userAddress: selectedAddress, + }); + } + }, + [isCollectibleIgnored, chainId, selectedAddress], + ); + + useEffect(() => { + if (!isIpfsGatewayEnabled && !displayNftMedia) { + return; + } + // TO DO: Move this fix to the controllers layer + const updatableCollectibles = collectibles.filter((single: Nft) => + shouldUpdateCollectibleMetadata(single), + ); + if (updatableCollectibles.length !== 0 && !useNftDetection) { + updateAllCollectibleMetadata(updatableCollectibles); + } + }, [ + collectibles, + updateAllCollectibleMetadata, + isIpfsGatewayEnabled, + displayNftMedia, + useNftDetection, + ]); + + return ( + + {!isNftDetectionEnabled && } + {/* fetching state */} + {isNftFetchingProgress && ( + + )} + {/* empty state */} + {!isNftFetchingProgress && collectibles.length === 0 && ( + <> + + + + )} + {/* nft grid */} + {!isNftFetchingProgress && collectibles.length > 0 && ( + ( + + )} + keyExtractor={(_, index) => index.toString()} + testID={RefreshTestId} + refreshControl={ + + } + ListFooterComponent={} + /> + )} + + + ); +} + +export default NftGrid; diff --git a/app/components/UI/NftGrid/NftGridEmpty.tsx b/app/components/UI/NftGrid/NftGridEmpty.tsx new file mode 100644 index 00000000000..d4ccf2db306 --- /dev/null +++ b/app/components/UI/NftGrid/NftGridEmpty.tsx @@ -0,0 +1,83 @@ +import React, { useCallback } from 'react'; +import { View, TouchableOpacity, Image } from 'react-native'; +import { strings } from '../../../../locales/i18n'; +import Text, { + TextColor, + TextVariant, +} from '../../../component-library/components/Texts/Text'; +import styleSheet from './NftGrid.styles'; +import { StackNavigationProp } from '@react-navigation/stack'; +import AppConstants from '../../../core/AppConstants'; + +import noNftPlaceholderSrc from '../../../images/no-nfts-placeholder.png'; +import { useTheme } from '../../../util/theme'; +interface NftGridNavigationParamList { + AddAsset: { assetType: string }; + [key: string]: undefined | object; +} + +interface NftGridProps { + navigation: StackNavigationProp; +} + +function NftGridEmpty({ navigation }: NftGridProps) { + const { colors } = useTheme(); + const styles = styleSheet(colors); + + const goToLearnMore = useCallback( + () => + navigation.navigate('Webview', { + screen: 'SimpleWebview', + params: { url: AppConstants.URLS.NFT }, + }), + [navigation], + ); + + return ( + + + + {strings('wallet.no_nfts_yet')} + + + navigation.navigate('Webview', { + screen: 'SimpleWebview', + params: { url: AppConstants.URLS.NFT }, + }) + } + > + + {strings('wallet.learn_more')} + + + + ); +} + +export default NftGridEmpty; diff --git a/app/components/UI/NftGrid/NftGridFooter.tsx b/app/components/UI/NftGrid/NftGridFooter.tsx new file mode 100644 index 00000000000..1668a6a35fe --- /dev/null +++ b/app/components/UI/NftGrid/NftGridFooter.tsx @@ -0,0 +1,47 @@ +import React from 'react'; +import { View, TouchableOpacity } from 'react-native'; +import { strings } from '../../../../locales/i18n'; +import Text, { + TextColor, + TextVariant, +} from '../../../component-library/components/Texts/Text'; +import { StackNavigationProp } from '@react-navigation/stack'; +import { WalletViewSelectorsIDs } from '../../../../e2e/selectors/wallet/WalletView.selectors'; + +interface NftGridNavigationParamList { + AddAsset: { assetType: string }; + [key: string]: undefined | object; +} + +interface NftGridFooterProps { + navigation: StackNavigationProp; +} + +function NftGridFooter({ navigation }: NftGridFooterProps) { + return ( + + + {strings('wallet.no_collectibles')} + + + navigation.push('AddAsset', { assetType: 'collectible' }) + } + disabled={false} + testID={WalletViewSelectorsIDs.IMPORT_NFT_BUTTON} + > + + {strings('wallet.add_collectibles')} + + + + ); +} + +export default NftGridFooter; diff --git a/app/components/UI/NftGrid/NftGridItem.tsx b/app/components/UI/NftGrid/NftGridItem.tsx new file mode 100644 index 00000000000..1c3e8d280c1 --- /dev/null +++ b/app/components/UI/NftGrid/NftGridItem.tsx @@ -0,0 +1,82 @@ +import React, { MutableRefObject, RefObject, useCallback } from 'react'; +import { TouchableOpacity } from 'react-native'; +import CollectibleMedia from '../CollectibleMedia'; +import Text from '../../../component-library/components/Texts/Text'; +import { Nft } from '@metamask/assets-controllers'; +import { debounce } from 'lodash'; +import styleSheet from './NftGrid.styles'; +import { StackNavigationProp } from '@react-navigation/stack'; +import { useTheme } from '../../../util/theme'; +import { LongPressedCollectibleType } from './NftGrid'; + +const debouncedNavigation = debounce((navigation, collectible) => { + navigation.navigate('NftDetails', { collectible }); +}, 200); + +interface ActionSheetType { + show: () => void; +} + +interface NftGridNavigationParamList { + AddAsset: { assetType: string }; + [key: string]: undefined | object; +} + +function NftGridItem({ + nft, + navigation, + privacyMode = false, + actionSheetRef, + longPressedCollectible, +}: { + nft: Nft; + navigation: StackNavigationProp; + privacyMode?: boolean; + actionSheetRef: RefObject; + longPressedCollectible: MutableRefObject; +}) { + const { colors } = useTheme(); + const styles = styleSheet(colors); + + const onLongPressCollectible = useCallback( + (collectible) => { + actionSheetRef?.current?.show(); + longPressedCollectible.current = collectible; + }, + [actionSheetRef, longPressedCollectible], + ); + + const onItemPress = useCallback( + (nftItem) => { + debouncedNavigation(navigation, nftItem); + }, + [navigation], + ); + + if (!nft) return null; + + return ( + onItemPress(nft)} + onLongPress={() => onLongPressCollectible(nft)} + testID={nft.name as string} + > + + + {nft.name} + + + {nft.collection?.name} + + + ); +} + +export default NftGridItem; diff --git a/app/components/UI/NftGrid/index.tsx b/app/components/UI/NftGrid/index.tsx new file mode 100644 index 00000000000..014cac6b75b --- /dev/null +++ b/app/components/UI/NftGrid/index.tsx @@ -0,0 +1 @@ +export { default } from './NftGrid'; diff --git a/app/components/UI/Notification/BaseNotification/__snapshots__/index.test.jsx.snap b/app/components/UI/Notification/BaseNotification/__snapshots__/index.test.jsx.snap index fc9fc68fc42..8a4fef419be 100644 --- a/app/components/UI/Notification/BaseNotification/__snapshots__/index.test.jsx.snap +++ b/app/components/UI/Notification/BaseNotification/__snapshots__/index.test.jsx.snap @@ -21,7 +21,7 @@ exports[`BaseNotification gets icon correctly for each status 1`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -216,7 +216,7 @@ exports[`BaseNotification gets icon correctly for each status 2`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -411,7 +411,7 @@ exports[`BaseNotification gets icon correctly for each status 3`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -606,7 +606,7 @@ exports[`BaseNotification gets icon correctly for each status 4`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -771,7 +771,7 @@ exports[`BaseNotification gets icon correctly for each status 5`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -936,7 +936,7 @@ exports[`BaseNotification gets icon correctly for each status 6`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -1101,7 +1101,7 @@ exports[`BaseNotification gets icon correctly for each status 7`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -1266,7 +1266,7 @@ exports[`BaseNotification gets icon correctly for each status 8`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -1431,7 +1431,7 @@ exports[`BaseNotification gets icon correctly for each status 9`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", @@ -1596,7 +1596,7 @@ exports[`BaseNotification gets icon correctly for each status 10`] = ` activeOpacity={0.8} style={ { - "backgroundColor": "#000000cc", + "backgroundColor": "#000000CC", "borderRadius": 8, "flex": 1, "flexDirection": "row", diff --git a/app/components/UI/Notification/Modal/styles.ts b/app/components/UI/Notification/Modal/styles.ts index 5234cc83fa5..e79ca6efa19 100644 --- a/app/components/UI/Notification/Modal/styles.ts +++ b/app/components/UI/Notification/Modal/styles.ts @@ -1,7 +1,6 @@ // Third party dependencies. import { StyleSheet, TextStyle } from 'react-native'; -import { typography } from '@metamask/design-tokens'; -import { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import { typography, ThemeColors } from '@metamask/design-tokens'; /** * Style sheet function for AmbiguousAddressSheet component. diff --git a/app/components/UI/Notification/ResetNotificationsModal/__snapshots__/ResetNotificationsModal.test.tsx.snap b/app/components/UI/Notification/ResetNotificationsModal/__snapshots__/ResetNotificationsModal.test.tsx.snap index ed08cd71f96..46e093abdfe 100644 --- a/app/components/UI/Notification/ResetNotificationsModal/__snapshots__/ResetNotificationsModal.test.tsx.snap +++ b/app/components/UI/Notification/ResetNotificationsModal/__snapshots__/ResetNotificationsModal.test.tsx.snap @@ -70,14 +70,14 @@ exports[`ProfileSyncingModal should render correctly 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1334, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -107,7 +107,7 @@ exports[`ProfileSyncingModal should render correctly 1`] = ` StyleSheet.create({ diff --git a/app/components/UI/OptinMetrics/index.js b/app/components/UI/OptinMetrics/index.js index 31a7812f9c8..8c2c03ec0a1 100644 --- a/app/components/UI/OptinMetrics/index.js +++ b/app/components/UI/OptinMetrics/index.js @@ -368,36 +368,35 @@ class OptinMetrics extends PureComponent { setDataCollectionForMarketing(false); } - InteractionManager.runAfterInteractions(async () => { - // consolidate device and user settings traits - const consolidatedTraits = { - ...dataCollectionForMarketingTraits, - is_metrics_opted_in: true, - ...generateDeviceAnalyticsMetaData(), - ...generateUserSettingsAnalyticsMetaData(), - }; - await metrics.addTraitsToUser(consolidatedTraits); - - // track onboarding events that were stored before user opted in - // only if the user eventually opts in. - if (events && events.length) { - let delay = 0; // Initialize delay - const eventTrackingDelay = 200; // ms delay between each event - events.forEach((eventArgs) => { - // delay each event to prevent them from - // being tracked with the same timestamp - // which would cause them to be grouped together - // by sentAt time in the Segment dashboard - // as precision is only to the milisecond - // and loop seems to runs faster than that - setTimeout(() => { - metrics.trackEvent(...eventArgs); - }, delay); - delay += eventTrackingDelay; - }); - } - this.props.clearOnboardingEvents(); - }); + // consolidate device and user settings traits + const consolidatedTraits = { + ...dataCollectionForMarketingTraits, + is_metrics_opted_in: true, + ...generateDeviceAnalyticsMetaData(), + ...generateUserSettingsAnalyticsMetaData(), + }; + await metrics.addTraitsToUser(consolidatedTraits); + + // track onboarding events that were stored before user opted in + // only if the user eventually opts in. + if (events && events.length) { + let delay = 0; // Initialize delay + const eventTrackingDelay = 200; // ms delay between each event + events.forEach((eventArgs) => { + // delay each event to prevent them from + // being tracked with the same timestamp + // which would cause them to be grouped together + // by sentAt time in the Segment dashboard + // as precision is only to the milisecond + // and loop seems to runs faster than that + setTimeout(() => { + metrics.trackEvent(...eventArgs); + }, delay); + delay += eventTrackingDelay; + }); + } + this.props.clearOnboardingEvents(); + this.continue(); }; diff --git a/app/components/UI/PaymentRequest/__snapshots__/index.test.tsx.snap b/app/components/UI/PaymentRequest/__snapshots__/index.test.tsx.snap index 9db1d0309f3..04d04cbf14b 100644 --- a/app/components/UI/PaymentRequest/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/PaymentRequest/__snapshots__/index.test.tsx.snap @@ -71,7 +71,7 @@ exports[`PaymentRequest renders correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexDirection": "row", @@ -177,7 +177,7 @@ exports[`PaymentRequest renders correctly 1`] = ` "borderWidth": 1, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "marginBottom": 8, @@ -326,7 +326,7 @@ exports[`PaymentRequest renders correctly 1`] = ` "borderWidth": 1, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "marginBottom": 8, diff --git a/app/components/UI/PermissionsSummary/__snapshots__/PermissionsSummary.test.tsx.snap b/app/components/UI/PermissionsSummary/__snapshots__/PermissionsSummary.test.tsx.snap index 606816b874f..67f8a5036e4 100644 --- a/app/components/UI/PermissionsSummary/__snapshots__/PermissionsSummary.test.tsx.snap +++ b/app/components/UI/PermissionsSummary/__snapshots__/PermissionsSummary.test.tsx.snap @@ -157,7 +157,7 @@ exports[`PermissionsSummary should render correctly 1`] = ` { "alignItems": "center", "alignSelf": "flex-start", - "backgroundColor": "#0000001a", + "backgroundColor": "#0000001A", "borderRadius": 16, "height": 32, "justifyContent": "center", @@ -441,7 +441,7 @@ exports[`PermissionsSummary should render correctly 1`] = ` { "alignItems": "center", "alignSelf": "flex-start", - "backgroundColor": "#0000001a", + "backgroundColor": "#0000001A", "borderRadius": 16, "height": 32, "justifyContent": "center", @@ -937,7 +937,7 @@ exports[`PermissionsSummary should render correctly for network switch 1`] = ` { "alignItems": "center", "alignSelf": "flex-start", - "backgroundColor": "#0000001a", + "backgroundColor": "#0000001A", "borderRadius": 16, "height": 32, "justifyContent": "center", diff --git a/app/components/UI/ProfileSyncing/ProfileSyncingModal/__snapshots__/ProfileSyncingModal.test.tsx.snap b/app/components/UI/ProfileSyncing/ProfileSyncingModal/__snapshots__/ProfileSyncingModal.test.tsx.snap index ee24fee702a..e98efc084f3 100644 --- a/app/components/UI/ProfileSyncing/ProfileSyncingModal/__snapshots__/ProfileSyncingModal.test.tsx.snap +++ b/app/components/UI/ProfileSyncing/ProfileSyncingModal/__snapshots__/ProfileSyncingModal.test.tsx.snap @@ -70,14 +70,14 @@ exports[`ProfileSyncingModal should render correctly 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1334, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -107,7 +107,7 @@ exports[`ProfileSyncingModal should render correctly 1`] = ` @@ -908,13 +908,13 @@ exports[`Settings Activation Keys renders correctly when is loading 1`] = ` "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -4269,13 +4269,13 @@ exports[`Settings renders correctly for internal builds 1`] = ` "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -4488,13 +4488,13 @@ exports[`Settings renders correctly for internal builds 1`] = ` "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/UI/Ramp/constants/index.ts b/app/components/UI/Ramp/constants/index.ts index 0c2efd8a9f6..d2f0f854cb6 100644 --- a/app/components/UI/Ramp/constants/index.ts +++ b/app/components/UI/Ramp/constants/index.ts @@ -1,5 +1 @@ -import { AnalyticsEvents } from '../types'; - -export const AnonymousEvents: (keyof AnalyticsEvents)[] = []; - export const RAMPS_SEND = 'RAMPS_SEND'; diff --git a/app/components/UI/Ramp/hooks/useAnalytics.test.ts b/app/components/UI/Ramp/hooks/useAnalytics.test.ts index 126f4baa866..f3a0f101a8e 100644 --- a/app/components/UI/Ramp/hooks/useAnalytics.test.ts +++ b/app/components/UI/Ramp/hooks/useAnalytics.test.ts @@ -38,27 +38,4 @@ describe('useAnalytics', () => { .build(), ); }); - - it('calls trackEvent for anonymous params', () => { - const testEvent = 'RAMP_REGION_SELECTED'; - const testEventParams = { - country_id: 'test-country-id', - is_unsupported_offramp: false, - is_unsupported_onramp: false, - } as const; - - jest.mock('../constants', () => ({ - AnonymousEvents: [testEvent], - })); - - const { result } = renderHookWithProvider(() => useAnalytics()); - - result.current(testEvent, testEventParams); - - expect(MetaMetrics.getInstance().trackEvent).toHaveBeenCalledWith( - MetricsEventBuilder.createEventBuilder(MetaMetricsEvents[testEvent]) - .addSensitiveProperties(testEventParams) - .build(), - ); - }); }); diff --git a/app/components/UI/Ramp/hooks/useAnalytics.ts b/app/components/UI/Ramp/hooks/useAnalytics.ts index 4e20373ef18..ae52532b5f5 100644 --- a/app/components/UI/Ramp/hooks/useAnalytics.ts +++ b/app/components/UI/Ramp/hooks/useAnalytics.ts @@ -1,7 +1,5 @@ import { useCallback } from 'react'; -import { InteractionManager } from 'react-native'; import { AnalyticsEvents } from '../types'; -import { AnonymousEvents } from '../constants'; import { MetaMetrics, MetaMetricsEvents } from '../../../../core/Analytics'; import { MetricsEventBuilder } from '../../../../core/Analytics/MetricsEventBuilder'; @@ -9,19 +7,13 @@ export function trackEvent( eventType: T, params: AnalyticsEvents[T], ) { - const anonymous = AnonymousEvents.includes(eventType); const metrics = MetaMetrics.getInstance(); - const event = MetricsEventBuilder.createEventBuilder( - MetaMetricsEvents[eventType], + metrics.trackEvent(MetricsEventBuilder.createEventBuilder( + MetaMetricsEvents[eventType], + ) + .addProperties({ ...params }) + .build() ); - - InteractionManager.runAfterInteractions(() => { - if (anonymous) { - metrics.trackEvent(event.addSensitiveProperties({ ...params }).build()); - } else { - metrics.trackEvent(event.addProperties({ ...params }).build()); - } - }); } function useAnalytics() { diff --git a/app/components/UI/SDKFeedback/index.tsx b/app/components/UI/SDKFeedback/index.tsx index eec9e5c2118..63c7c0cd05c 100644 --- a/app/components/UI/SDKFeedback/index.tsx +++ b/app/components/UI/SDKFeedback/index.tsx @@ -1,5 +1,4 @@ -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; -import type { ThemeTypography } from '@metamask/design-tokens/dist/types/js/typography'; +import type { ThemeColors, ThemeTypography } from '@metamask/design-tokens'; import Icon, { IconName, IconSize, diff --git a/app/components/UI/SDKLoading/index.tsx b/app/components/UI/SDKLoading/index.tsx index 0d8f92019c1..ccde7ecf154 100644 --- a/app/components/UI/SDKLoading/index.tsx +++ b/app/components/UI/SDKLoading/index.tsx @@ -1,5 +1,5 @@ /* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, import/no-commonjs */ -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import type { ThemeColors } from '@metamask/design-tokens'; import LottieView from 'lottie-react-native'; import React from 'react'; import { StyleSheet, View } from 'react-native'; diff --git a/app/components/UI/SearchTokenAutocomplete/__snapshots__/index.test.tsx.snap b/app/components/UI/SearchTokenAutocomplete/__snapshots__/index.test.tsx.snap index 1c23219c4e0..e799221d9fe 100644 --- a/app/components/UI/SearchTokenAutocomplete/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/SearchTokenAutocomplete/__snapshots__/index.test.tsx.snap @@ -327,7 +327,7 @@ exports[`SearchTokenAutocomplete should render correctly 1`] = ` [ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "color": "#141618", diff --git a/app/components/UI/SeedphraseModal/__snapshots__/index.test.tsx.snap b/app/components/UI/SeedphraseModal/__snapshots__/index.test.tsx.snap index 3ea81e8b70d..106b1b38fb5 100644 --- a/app/components/UI/SeedphraseModal/__snapshots__/index.test.tsx.snap +++ b/app/components/UI/SeedphraseModal/__snapshots__/index.test.tsx.snap @@ -320,7 +320,7 @@ exports[`SeedphraseModal should render correctly 1`] = ` style={ [ { - "borderTopColor": "#bbc0c566", + "borderTopColor": "#BBC0C566", "borderTopWidth": 1, "flexDirection": "row", "padding": 16, diff --git a/app/components/UI/SelectOptionSheet/__snapshots__/OptionSheet.test.tsx.snap b/app/components/UI/SelectOptionSheet/__snapshots__/OptionSheet.test.tsx.snap index a8e5049393f..ea3ed2f39d4 100644 --- a/app/components/UI/SelectOptionSheet/__snapshots__/OptionSheet.test.tsx.snap +++ b/app/components/UI/SelectOptionSheet/__snapshots__/OptionSheet.test.tsx.snap @@ -371,14 +371,14 @@ exports[`OptionSheet render matches snapshot 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1314, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -408,7 +408,7 @@ exports[`OptionSheet render matches snapshot 1`] = ` + StyleSheet.create({ + container: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + left: { + flexDirection: 'row', + alignItems: 'center', + gap: 16, + }, + right: { + alignItems: 'flex-end', + justifyContent: 'center', + }, + networkAvatar: { + height: 32, + width: 32, + flexShrink: 0, + }, + }); + +export default styleSheet; diff --git a/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.test.tsx b/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.test.tsx new file mode 100644 index 00000000000..40e28970ca4 --- /dev/null +++ b/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.test.tsx @@ -0,0 +1,88 @@ +import React from 'react'; +import { EarnTokenListItemProps } from './EarnTokenListItem.types'; +import EarnTokenListItem from '.'; +import { strings } from '../../../../../../locales/i18n'; +import renderWithProvider from '../../../../../util/test/renderWithProvider'; +import { useSelector } from 'react-redux'; +import { selectIsIpfsGatewayEnabled } from '../../../../../selectors/preferencesController'; +import { + TextColor, + TextVariant, +} from '../../../../../component-library/components/Texts/Text'; + +jest.mock('react-redux', () => ({ + ...jest.requireActual('react-redux'), + useSelector: jest.fn(), +})); + +describe('EarnTokenListItem', () => { + beforeEach(() => { + (useSelector as jest.Mock).mockImplementation((selector) => { + if (selector === selectIsIpfsGatewayEnabled) return true; + }); + }); + + afterEach(() => { + (useSelector as jest.Mock).mockClear(); + }); + + const baseProps: EarnTokenListItemProps = { + token: { + chainId: '0x1', + image: + 'https://static.cx.metamask.io/api/v1/tokenIcons/1/0x6b175474e89094c44da98b954eedeac495271d0f.png', + name: 'Dai Stablecoin', + symbol: 'DAI', + address: '0x6B175474E89094C44Da98b954EedeAC495271d0F', + aggregators: [], + decimals: 18, + balance: '', + balanceFiat: '', + logo: undefined, + isETH: false, + }, + primaryText: { + value: `3.0% ${strings('stake.apr')}`, + variant: TextVariant.BodyMDBold, + color: TextColor.Success, + }, + onPress: jest.fn(), + }; + + const secondaryText = { + value: '10,100.00 USDC', + variant: TextVariant.BodySMBold, + color: TextColor.Alternative, + }; + + it('render matches snapshot', () => { + const props: EarnTokenListItemProps = { + ...baseProps, + secondaryText, + }; + + const { toJSON } = renderWithProvider(); + + expect(toJSON()).toMatchSnapshot(); + }); + + it('renders primary text and secondary text', () => { + const props: EarnTokenListItemProps = { + ...baseProps, + secondaryText, + }; + + const { getByText } = renderWithProvider(); + + expect(getByText('Dai Stablecoin')).toBeDefined(); + expect(getByText('10,100.00 USDC')).toBeDefined(); + }); + + it('renders only primary text', () => { + const { getByText } = renderWithProvider( + , + ); + + expect(getByText('Dai Stablecoin')).toBeDefined(); + }); +}); diff --git a/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.types.ts b/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.types.ts new file mode 100644 index 00000000000..7f1152fda81 --- /dev/null +++ b/app/components/UI/Stake/components/EarnTokenListItem/EarnTokenListItem.types.ts @@ -0,0 +1,13 @@ +import { TextProps } from '../../../../../component-library/components/Texts/Text/Text.types'; +import { TokenI } from '../../../Tokens/types'; + +interface Text extends Omit { + value: string; +} + +export interface EarnTokenListItemProps { + token: TokenI; + primaryText: Text; + secondaryText?: Text; + onPress: (token: TokenI) => void; +} diff --git a/app/components/UI/Stake/components/EarnTokenListItem/__snapshots__/EarnTokenListItem.test.tsx.snap b/app/components/UI/Stake/components/EarnTokenListItem/__snapshots__/EarnTokenListItem.test.tsx.snap new file mode 100644 index 00000000000..c23dc7fe98c --- /dev/null +++ b/app/components/UI/Stake/components/EarnTokenListItem/__snapshots__/EarnTokenListItem.test.tsx.snap @@ -0,0 +1,200 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`EarnTokenListItem render matches snapshot 1`] = ` + + + + + + + + + + + + + + + + + + Dai Stablecoin + + + + + 3.0% [missing "en.stake.apr" translation] + + + 10,100.00 USDC + + + +`; diff --git a/app/components/UI/Stake/components/EarnTokenListItem/index.tsx b/app/components/UI/Stake/components/EarnTokenListItem/index.tsx new file mode 100644 index 00000000000..3f2567ba214 --- /dev/null +++ b/app/components/UI/Stake/components/EarnTokenListItem/index.tsx @@ -0,0 +1,99 @@ +import React from 'react'; +import { TouchableOpacity, View } from 'react-native'; +import { useSelector } from 'react-redux'; +import Badge, { + BadgeVariant, +} from '../../../../../component-library/components/Badges/Badge'; +import BadgeWrapper from '../../../../../component-library/components/Badges/BadgeWrapper'; +import Text, { + TextColor, + TextVariant, +} from '../../../../../component-library/components/Texts/Text'; +import { selectNetworkName } from '../../../../../selectors/networkInfos'; +import { useStyles } from '../../../../hooks/useStyles'; +import { EarnTokenListItemProps } from './EarnTokenListItem.types'; +import { getNetworkImageSource } from '../../../../../util/networks'; +import styleSheet from './EarnTokenListItem.styles'; +import { AvatarSize } from '../../../../../component-library/components/Avatars/Avatar'; +import AvatarToken from '../../../../../component-library/components/Avatars/Avatar/variants/AvatarToken'; +import NetworkAssetLogo from '../../../NetworkAssetLogo'; +import { TokenI } from '../../../Tokens/types'; + +interface EarnNetworkAvatarProps { + token: TokenI; +} + +const EarnNetworkAvatar = ({ token }: EarnNetworkAvatarProps) => { + const { styles } = useStyles(styleSheet, {}); + + if (token.isNative) { + return ( + + ); + } + + return ( + + ); +}; + +const EarnTokenListItem = ({ + token, + primaryText, + secondaryText, + onPress, +}: EarnTokenListItemProps) => { + const { styles } = useStyles(styleSheet, {}); + + const networkName = useSelector(selectNetworkName); + + return ( + onPress(token)}> + + + } + > + + + {token.name} + + + + {primaryText.value} + + {secondaryText?.value && ( + + {secondaryText.value} + + )} + + + ); +}; + +export default EarnTokenListItem; diff --git a/app/components/UI/Stake/components/GasImpactModal/__snapshots__/GasImpactModal.test.tsx.snap b/app/components/UI/Stake/components/GasImpactModal/__snapshots__/GasImpactModal.test.tsx.snap index 1643b96b393..7524889bc42 100644 --- a/app/components/UI/Stake/components/GasImpactModal/__snapshots__/GasImpactModal.test.tsx.snap +++ b/app/components/UI/Stake/components/GasImpactModal/__snapshots__/GasImpactModal.test.tsx.snap @@ -81,14 +81,14 @@ exports[`GasImpactModal render matches snapshot 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1334, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -118,7 +118,7 @@ exports[`GasImpactModal render matches snapshot 1`] = ` void; +} + +export const Result: React.FC = memo(({ result, onPress }) => { + const theme = useTheme(); + const styles = stylesheet({theme}); + + const name = typeof result.name === 'string' ? result.name : getHost(result.url); + + const dispatch = useDispatch(); + + const onPressRemove = useCallback(() => { + dispatch(removeBookmark(result)); + }, [dispatch, result]); + + return ( + + + + + + {name} + + + {result.url} + + + { + result.type === 'favorites' && ( + + ) + } + + + ); +}); diff --git a/app/components/UI/UrlAutocomplete/UrlAutocomplete.constants.ts b/app/components/UI/UrlAutocomplete/UrlAutocomplete.constants.ts new file mode 100644 index 00000000000..46218e10bd4 --- /dev/null +++ b/app/components/UI/UrlAutocomplete/UrlAutocomplete.constants.ts @@ -0,0 +1,2 @@ +export const MAX_RECENTS = 5; +export const ORDERED_CATEGORIES = ['sites', 'recents', 'favorites']; diff --git a/app/components/UI/UrlAutocomplete/__snapshots__/index.test.js.snap b/app/components/UI/UrlAutocomplete/__snapshots__/index.test.js.snap deleted file mode 100644 index 298e7109ac8..00000000000 --- a/app/components/UI/UrlAutocomplete/__snapshots__/index.test.js.snap +++ /dev/null @@ -1,44 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`UrlAutocomplete should render correctly 1`] = ` - - - -`; diff --git a/app/components/UI/UrlAutocomplete/index.test.js b/app/components/UI/UrlAutocomplete/index.test.js deleted file mode 100644 index e2b7a49feee..00000000000 --- a/app/components/UI/UrlAutocomplete/index.test.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import renderWithProvider from '../../../util/test/renderWithProvider'; -import UrlAutocomplete from './'; - -describe('UrlAutocomplete', () => { - it('should render correctly', () => { - const { toJSON } = renderWithProvider(, {}); - expect(toJSON()).toMatchSnapshot(); - }); -}); diff --git a/app/components/UI/UrlAutocomplete/index.test.tsx b/app/components/UI/UrlAutocomplete/index.test.tsx new file mode 100644 index 00000000000..f47a6b266d9 --- /dev/null +++ b/app/components/UI/UrlAutocomplete/index.test.tsx @@ -0,0 +1,58 @@ +import React from 'react'; +import UrlAutocomplete, { UrlAutocompleteRef } from './'; +import { deleteFavoriteTestId } from '../../../../wdio/screen-objects/testIDs/BrowserScreen/UrlAutocomplete.testIds'; +import { act, fireEvent, screen } from '@testing-library/react-native'; +import renderWithProvider from '../../../util/test/renderWithProvider'; +import { removeBookmark } from '../../../actions/bookmarks'; +import { noop } from 'lodash'; + +const defaultState = { browser: { history: [] }, bookmarks: [{url: 'https://www.bookmark.com', name: 'MyBookmark'}] }; + +describe('UrlAutocomplete', () => { + beforeAll(() => { + jest.useFakeTimers(); + }); + + afterAll(() => { + jest.useRealTimers(); + }); + + it('should show sites from dapp list', async () => { + const ref = React.createRef(); + renderWithProvider(, {state: defaultState}, false); + + act(() => { + ref.current?.search('uni'); + jest.runAllTimers(); + }); + + expect(await screen.findByText('Uniswap', {includeHiddenElements: true})).toBeDefined(); + }); + + it('should show sites from bookmarks', async () => { + const ref = React.createRef(); + renderWithProvider(, {state: defaultState}, false); + + act(() => { + ref.current?.search('MyBook'); + jest.runAllTimers(); + }); + + expect(await screen.findByText('MyBookmark', {includeHiddenElements: true})).toBeDefined(); + }); + + it('should delete a bookmark when pressing the trash icon', async () => { + const ref = React.createRef(); + const { store } = renderWithProvider(, {state: defaultState}, false); + store.dispatch = jest.fn(); + + act(() => { + ref.current?.search('MyBook'); + jest.runAllTimers(); + }); + + const deleteFavorite = await screen.findByTestId(deleteFavoriteTestId(defaultState.bookmarks[0].url), {includeHiddenElements: true}); + fireEvent.press(deleteFavorite); + expect(store.dispatch).toHaveBeenCalledWith(removeBookmark({...defaultState.bookmarks[0], type: 'favorites'})); + }); +}); diff --git a/app/components/UI/UrlAutocomplete/index.tsx b/app/components/UI/UrlAutocomplete/index.tsx index e724dc0c158..a04d43b92f3 100644 --- a/app/components/UI/UrlAutocomplete/index.tsx +++ b/app/components/UI/UrlAutocomplete/index.tsx @@ -3,20 +3,19 @@ import React, { useCallback, useEffect, useImperativeHandle, + useMemo, useRef, useState, } from 'react'; import { TouchableWithoutFeedback, View, - TouchableOpacity, Text, + SectionList, } from 'react-native'; import dappUrlList from '../../../util/dapp-url-list'; import Fuse from 'fuse.js'; import { useSelector } from 'react-redux'; -import WebsiteIcon from '../WebsiteIcon'; -import { getHost } from '../../../util/browser'; import styleSheet from './styles'; import { useStyles } from '../../../component-library/hooks'; import { @@ -24,11 +23,16 @@ import { FuseSearchResult, UrlAutocompleteRef, } from './types'; -import { selectBrowserHistory } from '../../../reducers/browser/selectors'; import { debounce } from 'lodash'; +import { strings } from '../../../../locales/i18n'; +import { selectBrowserBookmarksWithType, selectBrowserHistoryWithType } from '../../../selectors/browser'; +import { MAX_RECENTS, ORDERED_CATEGORIES } from './UrlAutocomplete.constants'; +import { Result } from './Result'; export * from './types'; +const dappsWithType = dappUrlList.map(i => ({...i, type: 'sites'})); + /** * Autocomplete list that appears when the browser url bar is focused */ @@ -36,9 +40,11 @@ const UrlAutocomplete = forwardRef< UrlAutocompleteRef, UrlAutocompleteComponentProps >(({ onSelect, onDismiss }, ref) => { - const [results, setResults] = useState([]); - // TODO: Browser history hasn't been working for a while. Need to either fix or remove. - const browserHistory = useSelector(selectBrowserHistory); + const [resultsByCategory, setResultsByCategory] = useState<{category: string, data: FuseSearchResult[]}[]>([]); + const hasResults = resultsByCategory.length > 0; + + const browserHistory = useSelector(selectBrowserHistoryWithType); + const bookmarks = useSelector(selectBrowserBookmarksWithType); const fuseRef = useRef | null>(null); const resultsRef = useRef(null); const { styles } = useStyles(styleSheet, {}); @@ -50,29 +56,59 @@ const UrlAutocomplete = forwardRef< resultsRef.current?.setNativeProps({ style: { display: 'flex' } }); }; - const search = (text: string) => { + const updateResults = useCallback((results: FuseSearchResult[]) => { + const newResultsByCategory = ORDERED_CATEGORIES.flatMap((category) => { + let data = results.filter((result, index, self) => + result.type === category && + index === self.findIndex(r => r.url === result.url && r.type === result.type) + ); + if (data.length === 0) { + return []; + } + if (category === 'recents') { + data = data.slice(0, MAX_RECENTS); + } + return { + category, + data, + }; + }); + + setResultsByCategory(newResultsByCategory); + }, []); + + const latestSearchTerm = useRef(null); + const search = useCallback((text: string) => { + latestSearchTerm.current = text; + if (!text) { + updateResults([ + ...browserHistory, + ...bookmarks, + ]); + return; + } const fuseSearchResult = fuseRef.current?.search(text); if (Array.isArray(fuseSearchResult)) { - setResults([...fuseSearchResult]); + updateResults([...fuseSearchResult]); } else { - setResults([]); + updateResults([]); } - }; + }, [updateResults, browserHistory, bookmarks]); /** * Debounce the search function */ - const debouncedSearchRef = useRef(debounce(search, 500)); + const debouncedSearch = useMemo(() => debounce(search, 100), [search]); /** * Hide the results view */ const hide = useCallback(() => { // Cancel the search - debouncedSearchRef.current.cancel(); + debouncedSearch.cancel(); resultsRef.current?.setNativeProps({ style: { display: 'none' } }); - setResults([]); - }, [setResults]); + setResultsByCategory([]); + }, [debouncedSearch]); const dismissAutocomplete = () => { hide(); @@ -81,26 +117,22 @@ const UrlAutocomplete = forwardRef< }; useImperativeHandle(ref, () => ({ - search: debouncedSearchRef.current, + search: debouncedSearch, hide, show, })); useEffect(() => { - const allUrls: FuseSearchResult[] = [browserHistory, ...dappUrlList]; - const singleUrlList: string[] = []; - const singleUrls: FuseSearchResult[] = []; - for (const el of allUrls) { - if (!singleUrlList.includes(el.url)) { - singleUrlList.push(el.url); - singleUrls.push(el); - } - } + const allUrls: FuseSearchResult[] = [ + ...dappsWithType, + ...browserHistory, + ...bookmarks, + ]; // Create the fuse search - fuseRef.current = new Fuse(singleUrls, { + fuseRef.current = new Fuse(allUrls, { shouldSort: true, - threshold: 0.45, + threshold: 0.4, location: 0, distance: 100, maxPatternLength: 32, @@ -110,56 +142,46 @@ const UrlAutocomplete = forwardRef< { name: 'url', weight: 0.5 }, ], }); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - const renderResult = useCallback( - (url: string, name: string, onPress: () => void) => { - name = typeof name === 'string' ? name : getHost(url); - - return ( - - - - - - {name} - - - {url} - - - - - ); - }, - [styles], - ); + if (latestSearchTerm.current !== null) { + search(latestSearchTerm.current); + } + }, [browserHistory, bookmarks, search]); - const renderResults = useCallback( - () => - results.slice(0, 3).map((result) => { - const { url, name } = result; - const onPress = () => { - hide(); - onSelect(url); - }; - return renderResult(url, name, onPress); - }), - [results, onSelect, hide, renderResult], - ); + const renderSectionHeader = useCallback(({section: {category}}) => ( + {strings(`autocomplete.${category}`)} + ), [styles]); + + const renderItem = useCallback(({item}) => ( + { + hide(); + onSelect(item.url); + }} + /> + ), [hide, onSelect]); + + if (!hasResults) { + return ( + + + + + + ); + } return ( - {renderResults()} - - - + `${item.type}-${item.url}`} + renderSectionHeader={renderSectionHeader} + renderItem={renderItem} + keyboardShouldPersistTaps="handled" + /> ); }); diff --git a/app/components/UI/UrlAutocomplete/styles.ts b/app/components/UI/UrlAutocomplete/styles.ts index eaa7bb06dc0..01a1e36e663 100644 --- a/app/components/UI/UrlAutocomplete/styles.ts +++ b/app/components/UI/UrlAutocomplete/styles.ts @@ -1,8 +1,7 @@ import { Theme } from '@metamask/design-tokens'; -import { StyleSheet } from 'react-native'; -import { fontStyles } from '../../../styles/common'; +import { StyleSheet, TextStyle } from 'react-native'; -const styleSheet = ({ theme: { colors } }: { theme: Theme }) => +const styleSheet = ({ theme: { colors, typography } }: { theme: Theme }) => StyleSheet.create({ wrapper: { ...StyleSheet.absoluteFillObject, @@ -11,6 +10,15 @@ const styleSheet = ({ theme: { colors } }: { theme: Theme }) => display: 'none', paddingTop: 8, }, + contentContainer: { + paddingVertical: 15, + }, + category: { + color: colors.text.default, + padding: 10, + backgroundColor: colors.background.default, + ...typography.lHeadingSM, + } as TextStyle, bookmarkIco: { width: 26, height: 26, @@ -21,15 +29,13 @@ const styleSheet = ({ theme: { colors } }: { theme: Theme }) => fontSize: 12, }, name: { - fontSize: 14, color: colors.text.default, - ...fontStyles.normal, - }, + ...typography.lBodyMDMedium, + } as TextStyle, url: { - fontSize: 12, color: colors.text.alternative, - ...fontStyles.normal, - }, + ...typography.lBodySM, + } as TextStyle, item: { paddingVertical: 8, marginBottom: 8, @@ -45,6 +51,9 @@ const styleSheet = ({ theme: { colors } }: { theme: Theme }) => bg: { flex: 1, }, + deleteFavorite: { + marginLeft: 10, + }, }); export default styleSheet; diff --git a/app/components/UI/UrlAutocomplete/types.ts b/app/components/UI/UrlAutocomplete/types.ts index e86416259ab..daa9e46cede 100644 --- a/app/components/UI/UrlAutocomplete/types.ts +++ b/app/components/UI/UrlAutocomplete/types.ts @@ -41,4 +41,5 @@ export type UrlAutocompleteRef = { export type FuseSearchResult = { url: string; name: string; + type: string; }; diff --git a/app/components/UI/WalletAccount/__snapshots__/WalletAccount.test.tsx.snap b/app/components/UI/WalletAccount/__snapshots__/WalletAccount.test.tsx.snap index b67b7e02b1d..3a26b689fcb 100644 --- a/app/components/UI/WalletAccount/__snapshots__/WalletAccount.test.tsx.snap +++ b/app/components/UI/WalletAccount/__snapshots__/WalletAccount.test.tsx.snap @@ -4,7 +4,7 @@ exports[`WalletAccount renders correctly 1`] = ` { + const actualNav = jest.requireActual('@react-navigation/native'); + return { + ...actualNav, + useNavigation: () => ({ + navigate: mockedNavigate, + }), + }; +}); + +const mockTrackEvent = jest.fn(); +jest.mock('../../../components/hooks/useMetrics', () => ({ + useMetrics: () => ({ + trackEvent: mockTrackEvent, + createEventBuilder: () => ({ + build: () => ({}), + }), + }), +})); + +jest.mock('../../../core/Engine', () => ({ + context: { + KeyringController: { + addNewAccount: jest.fn(), + }, + }, + setSelectedAddress: jest.fn(), +})); + +// Mock Logger +jest.mock('../../../util/Logger', () => ({ + error: jest.fn(), +})); + +const mockInitialState = { + engine: { + backgroundState: { + AccountsController: MOCK_ACCOUNTS_CONTROLLER_STATE, + KeyringController: MOCK_KEYRING_CONTROLLER, + }, + }, + multichainSettings: { + bitcoinSupportEnabled: true, + bitcoinTestnetSupportEnabled: true, + solanaSupportEnabled: true, + }, +}; + +const mockProps = { + onBack: jest.fn(), +}; + +describe('AddAccountActions', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('renders correctly', () => { + const wrapper = renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + expect(wrapper.toJSON()).toMatchSnapshot(); + }); + + it('shows all account creation options', () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + // Check for standard options + expect( + screen.getByTestId(AddAccountBottomSheetSelectorsIDs.NEW_ACCOUNT_BUTTON), + ).toBeDefined(); + expect( + screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.IMPORT_ACCOUNT_BUTTON, + ), + ).toBeDefined(); + + // Check for multichain options + expect(screen.getByText('Add a new Solana Account (Beta)')).toBeDefined(); + expect(screen.getByText('Add a new Bitcoin Account (Beta)')).toBeDefined(); + expect( + screen.getByText('Add a new Bitcoin Account (Testnet)'), + ).toBeDefined(); + }); + + it('creates new ETH account when clicking add new account', async () => { + const mockNewAddress = '0x123'; + ( + Engine.context.KeyringController.addNewAccount as jest.Mock + ).mockResolvedValueOnce(mockNewAddress); + + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const addButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.NEW_ACCOUNT_BUTTON, + ); + fireEvent.press(addButton); + + await waitFor(() => { + expect(Engine.context.KeyringController.addNewAccount).toHaveBeenCalled(); + expect(Engine.setSelectedAddress).toHaveBeenCalledWith(mockNewAddress); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + }); + + it('handles error when creating new ETH account fails', async () => { + const mockError = new Error('Failed to create account'); + ( + Engine.context.KeyringController.addNewAccount as jest.Mock + ).mockRejectedValueOnce(mockError); + + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const addButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.NEW_ACCOUNT_BUTTON, + ); + fireEvent.press(addButton); + + await waitFor(() => { + expect(Logger.error).toHaveBeenCalledWith( + mockError, + 'error while trying to add a new account', + ); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + }); + + it('navigates to import screen when clicking import account', () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const importButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.IMPORT_ACCOUNT_BUTTON, + ); + fireEvent.press(importButton); + + expect(mockedNavigate).toHaveBeenCalledWith('ImportPrivateKeyView'); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + + it('navigates to hardware wallet connection when clicking connect hardware wallet', () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const hardwareWalletButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_HARDWARE_WALLET_BUTTON, + ); + + expect(hardwareWalletButton.findByType(Text).props.children).toBe( + 'Add hardware wallet', + ); + fireEvent.press(hardwareWalletButton); + + expect(mockedNavigate).toHaveBeenCalledWith(Routes.HW.CONNECT); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + + describe('Multichain account creation', () => { + const MOCK_SOL_ADDRESS = 'ATrXkbX2eEPuusRoLyRMW88wcPT2aho2Lk3xErnjjFH'; + const MOCK_BTC_MAINNET_ADDRESS = + 'bc1qkv7xptmd7ejmnnd399z9p643updvula5j4g4nd'; + + const solAccount = createMockInternalAccount( + MOCK_SOL_ADDRESS, + 'Solana Account', + KeyringTypes.snap, + SolAccountType.DataAccount, + ); + + const btcMainnetAccount = createMockInternalAccount( + MOCK_BTC_MAINNET_ADDRESS, + 'Bitcoin Account', + KeyringTypes.snap, + BtcAccountType.P2wpkh, + ); + + it('does not disable Solana account creation when account already exists', () => { + const stateWithSolAccount = { + ...mockInitialState, + engine: { + ...mockInitialState.engine, + backgroundState: { + ...mockInitialState.engine.backgroundState, + AccountsController: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE, + internalAccounts: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE.internalAccounts, + accounts: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE.internalAccounts.accounts, + [solAccount.id]: solAccount, + }, + }, + }, + }, + }, + }; + + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: stateWithSolAccount, + }, + ); + + const solButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_SOLANA_ACCOUNT_BUTTON, + ); + expect(solButton.findByType(Text).props.children).toBe( + 'Add a new Solana Account (Beta)', + ); + expect(solButton.props.disabled).toBe(false); + }); + + it('disables Bitcoin account creation when account already exists', () => { + const stateWithBtcAccount = { + ...mockInitialState, + engine: { + ...mockInitialState.engine, + backgroundState: { + ...mockInitialState.engine.backgroundState, + AccountsController: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE, + internalAccounts: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE.internalAccounts, + accounts: { + ...MOCK_ACCOUNTS_CONTROLLER_STATE.internalAccounts.accounts, + [btcMainnetAccount.id]: btcMainnetAccount, + }, + }, + }, + }, + }, + }; + + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: stateWithBtcAccount, + }, + ); + + const btcButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_BITCOIN_ACCOUNT_BUTTON, + ); + expect(btcButton.findByType(Text).props.children).toBe( + 'Add a new Bitcoin Account (Beta)', + ); + expect(btcButton.props.disabled).toBe(true); + }); + + it('handles error when creating Bitcoin account fails', async () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const btcButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_BITCOIN_ACCOUNT_BUTTON, + ); + fireEvent.press(btcButton); + + await waitFor(() => { + expect(Logger.error).toHaveBeenCalledWith( + expect.any(Error), + 'Bitcoin account creation failed', + ); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + }); + + it('handles error when creating Solana account fails', async () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const solButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_SOLANA_ACCOUNT_BUTTON, + ); + fireEvent.press(solButton); + + await waitFor(() => { + expect(Logger.error).toHaveBeenCalledWith( + expect.any(Error), + 'Solana account creation failed', + ); + expect(mockProps.onBack).toHaveBeenCalled(); + }); + }); + + it('disables all buttons while loading', async () => { + renderScreen( + () => , + { + name: 'AddAccountActions', + }, + { + state: mockInitialState, + }, + ); + + const addButton = screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.NEW_ACCOUNT_BUTTON, + ); + fireEvent.press(addButton); + + // Check that all buttons are disabled while loading + expect( + screen.getByTestId(AddAccountBottomSheetSelectorsIDs.NEW_ACCOUNT_BUTTON) + .props.disabled, + ).toBe(true); + expect( + screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.IMPORT_ACCOUNT_BUTTON, + ).props.disabled, + ).toBe(true); + expect( + screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_SOLANA_ACCOUNT_BUTTON, + ).props.disabled, + ).toBe(true); + expect( + screen.getByTestId( + AddAccountBottomSheetSelectorsIDs.ADD_BITCOIN_ACCOUNT_BUTTON, + ).props.disabled, + ).toBe(true); + }); + }); +}); diff --git a/app/components/Views/AddAccountActions/AddAccountActions.tsx b/app/components/Views/AddAccountActions/AddAccountActions.tsx index 80c2d8021c7..7bff482b2f1 100644 --- a/app/components/Views/AddAccountActions/AddAccountActions.tsx +++ b/app/components/Views/AddAccountActions/AddAccountActions.tsx @@ -22,6 +22,7 @@ import { useMetrics } from '../../../components/hooks/useMetrics'; import { CaipChainId } from '@metamask/utils'; import { KeyringClient } from '@metamask/keyring-snap-client'; import { BitcoinWalletSnapSender } from '../../../core/SnapKeyring/BitcoinWalletSnap'; +import { SolanaWalletSnapSender } from '../../../core/SnapKeyring/SolanaWalletSnap'; import { MultichainNetworks } from '../../../core/Multichain/constants'; import { useSelector } from 'react-redux'; import { @@ -31,6 +32,7 @@ import { import { selectIsBitcoinSupportEnabled, selectIsBitcoinTestnetSupportEnabled, + selectIsSolanaSupportEnabled, } from '../../../selectors/multichain'; ///: END:ONLY_INCLUDE_IF @@ -87,12 +89,15 @@ const AddAccountActions = ({ onBack }: AddAccountActionsProps) => { selectIsBitcoinTestnetSupportEnabled, ); + const isSolanaSupportEnabled = useSelector(selectIsSolanaSupportEnabled); + const isBtcMainnetAccountAlreadyCreated = useSelector( hasCreatedBtcMainnetAccount, ); const isBtcTestnetAccountAlreadyCreated = useSelector( hasCreatedBtcTestnetAccount, ); + const createBitcoinAccount = async (scope: CaipChainId) => { try { setIsLoading(true); @@ -110,6 +115,24 @@ const AddAccountActions = ({ onBack }: AddAccountActionsProps) => { setIsLoading(false); } }; + + const createSolanaAccount = async (scope: CaipChainId) => { + try { + setIsLoading(true); + // Client to create the account using the Solana Snap + const client = new KeyringClient(new SolanaWalletSnapSender()); + + // This will trigger the Snap account creation flow (+ account renaming) + await client.createAccount({ + scope, + }); + } catch (error) { + Logger.error(error as Error, 'Solana account creation failed'); + } finally { + onBack(); + setIsLoading(false); + } + }; ///: END:ONLY_INCLUDE_IF return ( @@ -130,6 +153,19 @@ const AddAccountActions = ({ onBack }: AddAccountActionsProps) => { { ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) } + {isSolanaSupportEnabled && ( + { + await createSolanaAccount(MultichainNetworks.SOLANA); + }} + disabled={isLoading} + testID={ + AddAccountBottomSheetSelectorsIDs.ADD_SOLANA_ACCOUNT_BUTTON + } + /> + )} {isBitcoinSupportEnabled && ( { await createBitcoinAccount(MultichainNetworks.BITCOIN); }} disabled={isLoading || isBtcMainnetAccountAlreadyCreated} + testID={ + AddAccountBottomSheetSelectorsIDs.ADD_BITCOIN_ACCOUNT_BUTTON + } /> )} {isBitcoinTestnetSupportEnabled && ( @@ -152,6 +191,9 @@ const AddAccountActions = ({ onBack }: AddAccountActionsProps) => { await createBitcoinAccount(MultichainNetworks.BITCOIN_TESTNET); }} disabled={isLoading || isBtcTestnetAccountAlreadyCreated} + testID={ + AddAccountBottomSheetSelectorsIDs.ADD_BITCOIN_TESTNET_ACCOUNT_BUTTON + } /> )} { @@ -169,6 +211,9 @@ const AddAccountActions = ({ onBack }: AddAccountActionsProps) => { iconName={IconName.Hardware} onPress={openConnectHardwareWallet} disabled={isLoading} + testID={ + AddAccountBottomSheetSelectorsIDs.ADD_HARDWARE_WALLET_BUTTON + } /> diff --git a/app/components/Views/AddAccountActions/__snapshots__/AddAccountActions.test.tsx.snap b/app/components/Views/AddAccountActions/__snapshots__/AddAccountActions.test.tsx.snap new file mode 100644 index 00000000000..c6875d28e22 --- /dev/null +++ b/app/components/Views/AddAccountActions/__snapshots__/AddAccountActions.test.tsx.snap @@ -0,0 +1,653 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`AddAccountActions renders correctly 1`] = ` + + + + + + + + + + + + + AddAccountActions + + + + + + + + + + + + + + + + + + + + + + + + + Add account + + + + + + + + Add new account + + + + + + Add a new Solana Account (Beta) + + + + + + Add a new Bitcoin Account (Beta) + + + + + + Add a new Bitcoin Account (Testnet) + + + + + + Import account + + + + + + Add hardware wallet + + + + + + + + + + + + + + +`; diff --git a/app/components/Views/AddAsset/__snapshots__/AddAsset.test.tsx.snap b/app/components/Views/AddAsset/__snapshots__/AddAsset.test.tsx.snap index 9ba957f6497..030876693aa 100644 --- a/app/components/Views/AddAsset/__snapshots__/AddAsset.test.tsx.snap +++ b/app/components/Views/AddAsset/__snapshots__/AddAsset.test.tsx.snap @@ -21,7 +21,7 @@ exports[`AddAsset component renders correctly 1`] = ` diff --git a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.stories.tsx b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.stories.tsx index 3bf776efd37..f2684e82e9d 100644 --- a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.stories.tsx +++ b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.stories.tsx @@ -39,6 +39,7 @@ export const Default = Template.bind( { displayBuyButton: true, displaySwapsButton: true, + swapsIsLive: true, onBuy: () => null, goToSwaps: () => null, goToBridge: () => null, @@ -52,6 +53,7 @@ export const NoBuyButton = Template.bind( { displayBuyButton: false, displaySwapsButton: true, + swapsIsLive: true, onBuy: () => null, goToSwaps: () => null, goToBridge: () => null, @@ -65,6 +67,7 @@ export const NoSwapsButton = Template.bind( { displayBuyButton: true, displaySwapsButton: false, + swapsIsLive: false, onBuy: () => null, goToSwaps: () => null, goToBridge: () => null, @@ -78,6 +81,7 @@ export const NoButtons = Template.bind( { displayBuyButton: false, displaySwapsButton: false, + swapsIsLive: false, onBuy: () => null, goToSwaps: () => null, goToBridge: () => null, diff --git a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.test.tsx b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.test.tsx index 430a9436c14..6cb33d4f688 100644 --- a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.test.tsx +++ b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.test.tsx @@ -21,6 +21,7 @@ describe('AssetDetailsActions', () => { const defaultProps = { displayBuyButton: true, displaySwapsButton: true, + swapsIsLive: true, onBuy: mockOnBuy, goToSwaps: mockGoToSwaps, goToBridge: mockGoToBridge, diff --git a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.tsx b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.tsx index 38ee31abeac..f387a0c4f59 100644 --- a/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.tsx +++ b/app/components/Views/AssetDetails/AssetDetailsActions/AssetDetailsActions.tsx @@ -16,6 +16,7 @@ import { selectCanSignTransactions } from '../../../../selectors/accountsControl export interface AssetDetailsActionsProps { displayBuyButton: boolean | undefined; displaySwapsButton: boolean | undefined; + swapsIsLive: boolean | undefined; onBuy: () => void; goToSwaps: () => void; goToBridge: () => void; @@ -26,6 +27,7 @@ export interface AssetDetailsActionsProps { export const AssetDetailsActions: React.FC = ({ displayBuyButton, displaySwapsButton, + swapsIsLive, onBuy, goToSwaps, goToBridge, @@ -61,7 +63,7 @@ export const AssetDetailsActions: React.FC = ({ iconStyle={styles.icon} containerStyle={styles.containerStyle} iconSize={AvatarSize.Lg} - disabled={!canSignTransactions} + disabled={!canSignTransactions || !swapsIsLive} actionID={TokenOverviewSelectorsIDs.SWAP_BUTTON} /> diff --git a/app/components/Views/BrowserTab/BrowserTab.tsx b/app/components/Views/BrowserTab/BrowserTab.tsx index b88ab587ac9..be5271e2b9a 100644 --- a/app/components/Views/BrowserTab/BrowserTab.tsx +++ b/app/components/Views/BrowserTab/BrowserTab.tsx @@ -5,7 +5,7 @@ import React, { useCallback, useMemo, } from 'react'; -import { View, Alert, BackHandler, ImageSourcePropType } from 'react-native'; +import { View, Alert, BackHandler, ImageSourcePropType, KeyboardAvoidingView, Platform } from 'react-native'; import { isEqual } from 'lodash'; import { WebView, WebViewMessageEvent } from '@metamask/react-native-webview'; import BrowserBottomBar from '../../UI/BrowserBottomBar'; @@ -1305,111 +1305,116 @@ export const BrowserTab: React.FC = ({ */ return ( - - - - {renderProgressBar()} - - {!!entryScriptWeb3 && firstUrlLoaded && ( - <> - ( - + + + + {renderProgressBar()} + + {!!entryScriptWeb3 && firstUrlLoaded && ( + <> + ( + + )} + source={{ + uri: allowedInitialUrl, + ...(isExternalLink ? { headers: { Cookie: '' } } : null), + }} + injectedJavaScriptBeforeContentLoaded={entryScriptWeb3} + style={styles.webview} + onLoadStart={handleWebviewNavigationChange(OnLoadStart)} + onLoadEnd={handleWebviewNavigationChange(OnLoadEnd)} + onLoadProgress={handleWebviewNavigationChange(OnLoadProgress)} + onNavigationStateChange={handleOnNavigationStateChange} + onMessage={onMessage} + onShouldStartLoadWithRequest={onShouldStartLoadWithRequest} + allowsInlineMediaPlayback + testID={BrowserViewSelectorsIDs.BROWSER_WEBVIEW_ID} + applicationNameForUserAgent={'WebView MetaMaskMobile'} + onFileDownload={handleOnFileDownload} + webviewDebuggingEnabled={isTest} + /> + {ipfsBannerVisible && ( + )} - source={{ - uri: allowedInitialUrl, - ...(isExternalLink ? { headers: { Cookie: '' } } : null), - }} - injectedJavaScriptBeforeContentLoaded={entryScriptWeb3} - style={styles.webview} - onLoadStart={handleWebviewNavigationChange(OnLoadStart)} - onLoadEnd={handleWebviewNavigationChange(OnLoadEnd)} - onLoadProgress={handleWebviewNavigationChange(OnLoadProgress)} - onNavigationStateChange={handleOnNavigationStateChange} - onMessage={onMessage} - onShouldStartLoadWithRequest={onShouldStartLoadWithRequest} - allowsInlineMediaPlayback - testID={BrowserViewSelectorsIDs.BROWSER_WEBVIEW_ID} - applicationNameForUserAgent={'WebView MetaMaskMobile'} - onFileDownload={handleOnFileDownload} - webviewDebuggingEnabled={isTest} - /> - {ipfsBannerVisible && ( - - )} - - )} + + )} + + - + {isTabActive && ( + + )} + {isTabActive && showOptions && ( + + )} + + {renderBottomBar()} + {isTabActive && renderOnboardingWizard()} - {isTabActive && ( - - )} - {isTabActive && showOptions && ( - - )} - - {renderBottomBar()} - {isTabActive && renderOnboardingWizard()} - + ); }; diff --git a/app/components/Views/BrowserTab/components/IpfsBanner/__snapshots__/index.test.tsx.snap b/app/components/Views/BrowserTab/components/IpfsBanner/__snapshots__/index.test.tsx.snap index a64feef4758..9d16c653e74 100644 --- a/app/components/Views/BrowserTab/components/IpfsBanner/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/BrowserTab/components/IpfsBanner/__snapshots__/index.test.tsx.snap @@ -16,7 +16,7 @@ exports[`IpfsBanner should render banner correctly 1`] = ` - - -`; diff --git a/app/components/Views/Collectible/index.js b/app/components/Views/Collectible/index.js deleted file mode 100644 index 0af7da45279..00000000000 --- a/app/components/Views/Collectible/index.js +++ /dev/null @@ -1,180 +0,0 @@ -import React, { PureComponent } from 'react'; -import { RefreshControl, ScrollView, View, StyleSheet } from 'react-native'; -import PropTypes from 'prop-types'; -import { getNetworkNavbarOptions } from '../../UI/Navbar'; -import { connect } from 'react-redux'; -import Collectibles from '../../UI/Collectibles'; -import CollectibleContractOverview from '../../UI/CollectibleContractOverview'; -import Engine from '../../../core/Engine'; -import Modal from 'react-native-modal'; -import CollectibleContractInformation from '../../UI/CollectibleContractInformation'; -import { toggleCollectibleContractModal } from '../../../actions/modals'; -import { toLowerCaseEquals } from '../../../util/general'; -import { collectiblesSelector } from '../../../reducers/collectibles'; -import { ThemeContext, mockTheme } from '../../../util/theme'; - -const createStyles = (colors) => - StyleSheet.create({ - wrapper: { - backgroundColor: colors.background.default, - flex: 1, - }, - }); - -/** - * View that displays a specific collectible - * including the overview (name, address, symbol, logo, description, total supply) - * and also individual collectibles list - */ -class Collectible extends PureComponent { - static propTypes = { - /** - * Array of assets (in this case Collectibles) - */ - collectibles: PropTypes.array, - /** - /* navigation object required to access the props - /* passed by the parent component - */ - navigation: PropTypes.object, - /** - * Called to toggle collectible contract information modal - */ - toggleCollectibleContractModal: PropTypes.func, - /** - * Whether collectible contract information is visible - */ - collectibleContractModalVisible: PropTypes.bool, - /** - * Object that represents the current route info like params passed to it - */ - route: PropTypes.object, - }; - - state = { - refreshing: false, - collectibles: [], - }; - - updateNavBar = () => { - const { navigation, route } = this.props; - const colors = this.context.colors || mockTheme.colors; - getNetworkNavbarOptions( - route.params?.name ?? '', - false, - navigation, - colors, - ); - }; - - componentDidMount = () => { - this.updateNavBar(); - }; - - componentDidUpdate = () => { - this.updateNavBar(); - }; - - onRefresh = async () => { - this.setState({ refreshing: true }); - const { NftDetectionController } = Engine.context; - try { - await NftDetectionController.detectNfts(); - } finally { - this.setState({ refreshing: false }); - } - }; - - hideCollectibleContractModal = () => { - this.props.toggleCollectibleContractModal(); - }; - - render = () => { - const { - route: { params }, - navigation, - collectibleContractModalVisible, - } = this.props; - const collectibleContract = params; - const address = params.address; - const { collectibles } = this.props; - const colors = this.context.colors || mockTheme.colors; - const styles = createStyles(colors); - const filteredCollectibles = collectibles.filter((collectible) => - toLowerCaseEquals(collectible.address, address), - ); - filteredCollectibles.map((collectible) => { - if (!collectible.name || collectible.name === '') { - collectible.name = collectibleContract.name; - } - if (!collectible.image && collectibleContract.logo) { - collectible.image = collectibleContract.logo; - } - return collectible; - }); - - const ownerOf = filteredCollectibles.length; - - return ( - - - } - style={styles.wrapper} - > - - - - - - - - - - - - - - ); - }; -} - -const mapStateToProps = (state) => ({ - collectibles: collectiblesSelector(state), - collectibleContractModalVisible: state.modals.collectibleContractModalVisible, -}); - -const mapDispatchToProps = (dispatch) => ({ - toggleCollectibleContractModal: () => - dispatch(toggleCollectibleContractModal()), -}); - -Collectible.contextType = ThemeContext; - -export default connect(mapStateToProps, mapDispatchToProps)(Collectible); diff --git a/app/components/Views/Collectible/index.test.tsx b/app/components/Views/Collectible/index.test.tsx deleted file mode 100644 index 5b8343b6c89..00000000000 --- a/app/components/Views/Collectible/index.test.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import React from 'react'; -import { shallow } from 'enzyme'; -import Collectible from './'; -import configureMockStore from 'redux-mock-store'; -import { Provider } from 'react-redux'; -import { backgroundState } from '../../../util/test/initial-root-state'; - -const mockStore = configureMockStore(); -const initialState = { - engine: { - backgroundState, - }, - modals: { - collectibleContractModalVisible: false, - }, -}; -const store = mockStore(initialState); - -describe('Collectible', () => { - it('should render correctly', () => { - const wrapper = shallow( - - - , - ); - expect(wrapper).toMatchSnapshot(); - }); -}); diff --git a/app/components/Views/CollectibleView/index.js b/app/components/Views/CollectibleView/index.js deleted file mode 100644 index 17ecc850d95..00000000000 --- a/app/components/Views/CollectibleView/index.js +++ /dev/null @@ -1,138 +0,0 @@ -import React, { PureComponent } from 'react'; -import { ScrollView, View, StyleSheet, Text, SafeAreaView } from 'react-native'; -import PropTypes from 'prop-types'; -import CollectibleOverview from '../../UI/CollectibleOverview'; -import { getNetworkNavbarOptions } from '../../UI/Navbar'; -import StyledButton from '../../UI/StyledButton'; -import { strings } from '../../../../locales/i18n'; -import { fontStyles } from '../../../styles/common'; -import { connect } from 'react-redux'; -import collectiblesTransferInformation from '../../../util/collectibles-transfer'; -import { newAssetTransaction } from '../../../actions/transaction'; -import { ThemeContext, mockTheme } from '../../../util/theme'; - -const createStyles = (colors) => - StyleSheet.create({ - root: { - flex: 1, - backgroundColor: colors.background.default, - }, - wrapper: { - flex: 0.9, - }, - buttons: { - paddingVertical: 15, - flex: 0.1, - height: 4, - }, - button: { - marginHorizontal: 16, - flexDirection: 'row', - }, - buttonText: { - marginLeft: 8, - fontSize: 15, - color: colors.primary.inverse, - ...fontStyles.bold, - }, - }); - -/** - * View that displays a specific collectible asset - */ -class CollectibleView extends PureComponent { - static propTypes = { - /** - /* navigation object required to access the props - /* passed by the parent component - */ - navigation: PropTypes.object, - /** - * Start transaction with asset - */ - newAssetTransaction: PropTypes.func, - /** - * Object that represents the current route info like params passed to it - */ - route: PropTypes.object, - }; - - updateNavBar = () => { - const { navigation, route } = this.props; - const colors = this.context.colors || mockTheme.colors; - getNetworkNavbarOptions( - route.params?.contractName ?? '', - false, - navigation, - colors, - ); - }; - - componentDidMount = () => { - this.updateNavBar(); - }; - - componentDidUpdate = () => { - this.updateNavBar(); - }; - - onSend = async () => { - const { - route: { params }, - } = this.props; - this.props.newAssetTransaction(params); - this.props.navigation.navigate('SendFlowView'); - }; - - render() { - const { - route: { params }, - navigation, - } = this.props; - const collectible = params; - const colors = this.context.colors || mockTheme.colors; - const styles = createStyles(colors); - - const lowerAddress = collectible.address.toLowerCase(); - const tradable = - lowerAddress in collectiblesTransferInformation - ? collectiblesTransferInformation[lowerAddress].tradable - : true; - - return ( - - - - - - - {tradable && ( - - - - {strings('asset_overview.send_button').toUpperCase()} - - - - )} - - ); - } -} - -CollectibleView.contextType = ThemeContext; - -const mapDispatchToProps = (dispatch) => ({ - newAssetTransaction: (selectedAsset) => - dispatch(newAssetTransaction(selectedAsset)), -}); - -export default connect(null, mapDispatchToProps)(CollectibleView); diff --git a/app/components/Views/ConnectQRHardware/index.tsx b/app/components/Views/ConnectQRHardware/index.tsx index b028495afc3..82387c70726 100644 --- a/app/components/Views/ConnectQRHardware/index.tsx +++ b/app/components/Views/ConnectQRHardware/index.tsx @@ -30,7 +30,7 @@ import { useMetrics } from '../../../components/hooks/useMetrics'; import type { MetaMaskKeyring as QRKeyring } from '@keystonehq/metamask-airgapped-keyring'; import { KeyringTypes } from '@metamask/keyring-controller'; import { HardwareDeviceTypes } from '../../../constants/keyringTypes'; -import { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import { ThemeColors } from '@metamask/design-tokens'; import PAGINATION_OPERATIONS from '../../../constants/pagination'; interface IConnectQRHardwareProps { diff --git a/app/components/Views/DataCollectionModal/__snapshots__/index.test.tsx.snap b/app/components/Views/DataCollectionModal/__snapshots__/index.test.tsx.snap index 397ea4c37da..367936b0f44 100644 --- a/app/components/Views/DataCollectionModal/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/DataCollectionModal/__snapshots__/index.test.tsx.snap @@ -70,14 +70,14 @@ exports[`DataCollectionModal should render expected snapshot 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1333, "overflow": "hidden", "paddingBottom": 3, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -107,7 +107,7 @@ exports[`DataCollectionModal should render expected snapshot 1`] = ` { expect(toJSON()).toMatchSnapshot(); }); + it('renders correctly with token chainId', () => { + const { getByText, toJSON } = render( + , + ); + + // Verifying key elements render + expect(getByText('0 ABC')).toBeTruthy(); + expect(getByText('Token address:')).toBeTruthy(); + + // Snapshot test + expect(toJSON()).toMatchSnapshot(); + }); + it('expands token aggregator list on "show more" press', () => { const { getByText } = renderComponent(); diff --git a/app/components/Views/DetectedTokens/components/Token.tsx b/app/components/Views/DetectedTokens/components/Token.tsx index 1c113c6ef3f..d1d8ec4a3ba 100644 --- a/app/components/Views/DetectedTokens/components/Token.tsx +++ b/app/components/Views/DetectedTokens/components/Token.tsx @@ -112,11 +112,10 @@ const Token = ({ token, selected, toggleSelected }: Props) => { const tokenExchangeRates = tokenExchangeRatesAllChains[token.chainId]; const tokenBalancesAllChains = useSelector(selectTokensBalances); const balanceAllChainsForAccount = - tokenBalancesAllChains[accountAddress as Hex]; - const tokenBalances = - balanceAllChainsForAccount[(token.chainId as Hex) ?? currentChainId]; - const conversionRateByChainId = useSelector(selectCurrencyRates); + tokenBalancesAllChains?.[accountAddress as Hex] ?? {}; const chainIdToUse = token.chainId ?? currentChainId; + const tokenBalances = balanceAllChainsForAccount?.[chainIdToUse]; + const conversionRateByChainId = useSelector(selectCurrencyRates); const conversionRate = conversionRateByChainId[CURRENCY_SYMBOL_BY_CHAIN_ID[token.chainId]] diff --git a/app/components/Views/DetectedTokens/components/__snapshots__/Token.test.tsx.snap b/app/components/Views/DetectedTokens/components/__snapshots__/Token.test.tsx.snap index fcf1205fb50..c0c83fb43c0 100644 --- a/app/components/Views/DetectedTokens/components/__snapshots__/Token.test.tsx.snap +++ b/app/components/Views/DetectedTokens/components/__snapshots__/Token.test.tsx.snap @@ -67,7 +67,7 @@ exports[`Token Component matches snapshot when token is not selected 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -261,7 +261,7 @@ exports[`Token Component matches snapshot when token is not selected 1`] = ` } tintColors={ { - "false": "#bbc0c5", + "false": "#848c96", "true": "#0376c9", } } @@ -338,7 +338,7 @@ exports[`Token Component matches snapshot when token is selected 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -532,7 +532,7 @@ exports[`Token Component matches snapshot when token is selected 1`] = ` } tintColors={ { - "false": "#bbc0c5", + "false": "#848c96", "true": "#0376c9", } } @@ -609,7 +609,7 @@ exports[`Token Component renders correctly 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -803,7 +803,278 @@ exports[`Token Component renders correctly 1`] = ` } tintColors={ { - "false": "#bbc0c5", + "false": "#848c96", + "true": "#0376c9", + } + } + value={false} + /> + + +`; + +exports[`Token Component renders correctly with token chainId 1`] = ` + + + + + + + + + + + + + + 0 ABC + + + + Token address: + + + + 0xToke...ress + + +  + + + + + + Token lists: Aggregator1, Aggregator2 + + + + + 1 more + + + + + + ({ updateIncomingTransactions: jest.fn(), })); +const mockedNavigate = jest.fn(); +const mockedGoBack = jest.fn(); + +jest.mock('@react-navigation/native', () => { + const actualNav = jest.requireActual('@react-navigation/native'); + return { + ...actualNav, + useNavigation: () => ({ + navigate: mockedNavigate, + goBack: mockedGoBack, + }), + }; +}); + jest.mock('../../../core/Engine', () => ({ getTotalFiatAccountBalance: jest.fn(), context: { NetworkController: { setActiveNetwork: jest.fn(), setProviderType: jest.fn(), + updateNetwork: jest.fn(), getNetworkClientById: jest.fn().mockReturnValue({ chainId: '0x1' }), findNetworkClientIdByChainId: jest .fn() @@ -70,6 +90,9 @@ jest.mock('../../../core/Engine', () => ({ }, CurrencyRateController: { updateExchangeRate: jest.fn() }, AccountTrackerController: { refresh: jest.fn() }, + SelectedNetworkController: { + setNetworkClientIdForDomain: jest.fn(), + }, }, })); @@ -259,6 +282,31 @@ describe('Network Selector', () => { expect(toJSON()).toMatchSnapshot(); }); + it('renders correctly when network UI redesign is enabled and calls setNetworkClientIdForDomain', async () => { + const testMock = { + networkName: '', + networkImageSource: '', + domainNetworkClientId: '', + chainId: CHAIN_IDS.MAINNET, + rpcUrl: '', + domainIsConnectedDapp: true, + }; + jest.spyOn(networks, 'isMultichainV1Enabled').mockReturnValue(true); + jest + .spyOn(selectedNetworkControllerFcts, 'useNetworkInfo') + .mockImplementation(() => testMock); + (isNetworkUiRedesignEnabled as jest.Mock).mockImplementation(() => true); + const { getByText } = renderComponent(initialState); + const mainnetCell = getByText('Ethereum Mainnet'); + fireEvent.press(mainnetCell); + await waitFor(() => { + expect( + mockEngine.context.SelectedNetworkController + .setNetworkClientIdForDomain, + ).toBeCalled(); + }); + }); + it('shows popular networks when UI redesign is enabled', () => { (isNetworkUiRedesignEnabled as jest.Mock).mockImplementation(() => true); const { getByText } = renderComponent(initialState); diff --git a/app/components/Views/NetworkSelector/NetworkSelector.tsx b/app/components/Views/NetworkSelector/NetworkSelector.tsx index ce2c19daa8b..b8d5315b47f 100644 --- a/app/components/Views/NetworkSelector/NetworkSelector.tsx +++ b/app/components/Views/NetworkSelector/NetworkSelector.tsx @@ -30,13 +30,18 @@ import { selectIsAllNetworks, selectNetworkConfigurations, } from '../../../selectors/networkController'; -import { selectShowTestNetworks } from '../../../selectors/preferencesController'; +import { + selectShowTestNetworks, + selectTokenNetworkFilter, +} from '../../../selectors/preferencesController'; import Networks, { getAllNetworks, getDecimalChainId, isTestNet, getNetworkImageSource, isMainNet, + isPortfolioViewEnabled, + isMultichainV1Enabled, } from '../../../util/networks'; import { LINEA_MAINNET, MAINNET } from '../../../constants/network'; import Button from '../../../component-library/components/Buttons/Button/Button'; @@ -83,7 +88,6 @@ import hideProtocolFromUrl from '../../../util/hideProtocolFromUrl'; import { CHAIN_IDS } from '@metamask/transaction-controller'; import { useNetworkInfo } from '../../../selectors/selectedNetworkController'; import { NetworkConfiguration } from '@metamask/network-controller'; -import Logger from '../../../util/Logger'; import RpcSelectionModal from './RpcSelectionModal/RpcSelectionModal'; import { TraceName, @@ -96,6 +100,7 @@ import { store } from '../../../store'; import ReusableModal, { ReusableModalRef } from '../../UI/ReusableModal'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; import Device from '../../../util/device'; +import Logger from '../../../util/Logger'; interface infuraNetwork { name: string; @@ -131,6 +136,7 @@ const NetworkSelector = () => { const sheetRef = useRef(null); const showTestNetworks = useSelector(selectShowTestNetworks); const isAllNetwork = useSelector(selectIsAllNetworks); + const tokenNetworkFilter = useSelector(selectTokenNetworkFilter); const safeAreaInsets = useSafeAreaInsets(); const networkConfigurations = useSelector(selectNetworkConfigurations); @@ -189,7 +195,6 @@ const NetworkSelector = () => { chainId === CHAIN_IDS.MAINNET || chainId === CHAIN_IDS.LINEA_MAINNET || PopularList.some((network) => network.chainId === chainId); - const { PreferencesController } = Engine.context; if (!isAllNetwork && isPopularNetwork) { PreferencesController.setTokenNetworkFilter({ @@ -200,51 +205,6 @@ const NetworkSelector = () => { [isAllNetwork], ); - const onRpcSelect = useCallback( - async (clientId: string, chainId: `0x${string}`) => { - const { NetworkController } = Engine.context; - - const existingNetwork = networkConfigurations[chainId]; - if (!existingNetwork) { - Logger.error( - new Error(`No existing network found for chainId: ${chainId}`), - ); - return; - } - - const indexOfRpc = existingNetwork.rpcEndpoints.findIndex( - ({ networkClientId }) => clientId === networkClientId, - ); - - if (indexOfRpc === -1) { - Logger.error( - new Error( - `RPC endpoint with clientId: ${clientId} not found for chainId: ${chainId}`, - ), - ); - return; - } - - // Proceed to update the network with the correct index - await NetworkController.updateNetwork(existingNetwork.chainId, { - ...existingNetwork, - defaultRpcEndpointIndex: indexOfRpc, - }); - - // Set the active network - await NetworkController.setActiveNetwork(clientId); - - // Redirect to wallet page - navigate(Routes.WALLET.HOME, { - screen: Routes.WALLET.TAB_STACK_FLOW, - params: { - screen: Routes.WALLET_VIEW, - }, - }); - }, - [networkConfigurations, navigate], - ); - const [showMultiRpcSelectModal, setShowMultiRpcSelectModal] = useState<{ isVisible: boolean; chainId: string; @@ -279,7 +239,7 @@ const NetworkSelector = () => { const networkConfigurationId = rpcEndpoints[defaultRpcEndpointIndex].networkClientId; - if (domainIsConnectedDapp && process.env.MULTICHAIN_V1) { + if (domainIsConnectedDapp && isMultichainV1Enabled()) { SelectedNetworkController.setNetworkClientIdForDomain( origin, networkConfigurationId, @@ -291,11 +251,10 @@ const NetworkSelector = () => { } catch (error) { Logger.error(new Error(`Error in setActiveNetwork: ${error}`)); } - sheetRef.current?.dismissModal(); } setTokenNetworkFilter(chainId); - sheetRef.current?.dismissModal(); + if (!(domainIsConnectedDapp && isMultichainV1Enabled())) sheetRef.current?.dismissModal(); endTrace({ name: TraceName.SwitchCustomNetwork }); endTrace({ name: TraceName.NetworkSwitch }); trackEvent( @@ -403,8 +362,7 @@ const NetworkSelector = () => { AccountTrackerController, SelectedNetworkController, } = Engine.context; - - if (domainIsConnectedDapp && process.env.MULTICHAIN_V1) { + if (domainIsConnectedDapp && isMultichainV1Enabled()) { SelectedNetworkController.setNetworkClientIdForDomain(origin, type); } else { const networkConfiguration = @@ -888,6 +846,25 @@ const NetworkSelector = () => { const { NetworkController } = Engine.context; NetworkController.removeNetwork(chainId); + // set tokenNetworkFilter + if (isPortfolioViewEnabled()) { + const { PreferencesController } = Engine.context; + if (!isAllNetwork) { + PreferencesController.setTokenNetworkFilter({ + [chainId]: true, + }); + } else { + // Remove the chainId from the tokenNetworkFilter + const { [chainId]: _, ...newTokenNetworkFilter } = tokenNetworkFilter; + PreferencesController.setTokenNetworkFilter({ + // TODO fix type of preferences controller level + // setTokenNetworkFilter in preferences controller accepts Record while tokenNetworkFilter is Record + // eslint-disable-next-line @typescript-eslint/no-explicit-any + ...(newTokenNetworkFilter as any), + }); + } + } + setShowConfirmDeleteModal({ isVisible: false, networkName: '', @@ -1019,7 +996,6 @@ const NetworkSelector = () => { { jest.mock('../../../../core/Engine/Engine', () => ({ context: { + NetworkController: { + setActiveNetwork: jest.fn(), + setProviderType: jest.fn(), + updateNetwork: jest.fn(), + getNetworkClientById: jest.fn().mockReturnValue({ chainId: '0x1' }), + findNetworkClientIdByChainId: jest + .fn() + .mockReturnValue({ chainId: '0x1' }), + getNetworkConfigurationByChainId: jest.fn().mockReturnValue({ + blockExplorerUrls: [], + chainId: '0x1', + defaultRpcEndpointIndex: 0, + name: 'Mainnet', + nativeCurrency: 'ETH', + rpcEndpoints: [ + { + networkClientId: 'mainnet', + type: 'infura', + url: 'https://mainnet.infura.io/v3/{infuraProjectId}', + }, + ], + }), + }, PreferencesController: { setTokenNetworkFilter: jest.fn(), }, @@ -151,7 +194,6 @@ describe('RpcSelectionModal', () => { networkName: 'Mainnet', }, closeRpcModal: jest.fn(), - onRpcSelect: jest.fn(), rpcMenuSheetRef: mockRpcMenuSheetRef, networkConfigurations: MOCK_STORE_STATE.engine.backgroundState .NetworkController.networkConfigurations as unknown as Record< @@ -229,11 +271,7 @@ describe('RpcSelectionModal', () => { const rpcUrlElement = getByText('mainnet.infura.io/v3'); fireEvent.press(rpcUrlElement); - - expect(defaultProps.onRpcSelect).toHaveBeenCalledWith( - 'mainnet', - CHAIN_IDS.MAINNET, - ); + expect(NetworkController.updateNetwork).toHaveBeenCalled(); expect(defaultProps.closeRpcModal).toHaveBeenCalled(); }); @@ -261,4 +299,45 @@ describe('RpcSelectionModal', () => { 1, ); }); + + it('should not call preferences controller setTokenNetworkFilter when a popular networks filter is selected', () => { + (useSelector as jest.Mock).mockImplementation((selector) => { + if (selector === selectIsAllNetworks) { + return true; // to show all networks + } + return null; + }); + const { getByText } = renderWithProvider( + , + ); + const rpcUrlElement = getByText('mainnet.infura.io/v3'); + fireEvent.press(rpcUrlElement); + expect(PreferencesController.setTokenNetworkFilter).toHaveBeenCalledTimes( + 0, + ); + }); + + it('should not call preferences controller setTokenNetworkFilter when the network is not part of PopularList', () => { + (useSelector as jest.Mock).mockImplementation((selector) => { + if (selector === selectIsAllNetworks) { + return false; // to show current network + } + return null; + }); + const { getByText } = renderWithProvider( + , + ); + const rpcUrlElement = getByText('test.infura.io/v3'); + fireEvent.press(rpcUrlElement); + expect(PreferencesController.setTokenNetworkFilter).toHaveBeenCalledTimes( + 0, + ); + }); }); diff --git a/app/components/Views/NetworkSelector/RpcSelectionModal/RpcSelectionModal.tsx b/app/components/Views/NetworkSelector/RpcSelectionModal/RpcSelectionModal.tsx index ff5f31998af..fd124a62760 100644 --- a/app/components/Views/NetworkSelector/RpcSelectionModal/RpcSelectionModal.tsx +++ b/app/components/Views/NetworkSelector/RpcSelectionModal/RpcSelectionModal.tsx @@ -25,6 +25,9 @@ import { useSelector } from 'react-redux'; import { selectIsAllNetworks } from '../../../../selectors/networkController'; import { PopularList } from '../../../../util/networks/customNetworks'; import Engine from '../../../../core/Engine/Engine'; +import Logger from '../../../../util/Logger'; +import { useNavigation } from '@react-navigation/native'; +import Routes from '../../../../constants/navigation/Routes'; interface RpcSelectionModalProps { showMultiRpcSelectModal: { @@ -33,7 +36,6 @@ interface RpcSelectionModalProps { networkName: string; }; closeRpcModal: () => void; - onRpcSelect: (networkClientId: string, chainId: `0x${string}`) => void; rpcMenuSheetRef: React.RefObject; networkConfigurations: Record; styles: StyleSheet.NamedStyles<{ @@ -49,13 +51,51 @@ interface RpcSelectionModalProps { const RpcSelectionModal: FC = ({ showMultiRpcSelectModal, closeRpcModal, - onRpcSelect, rpcMenuSheetRef, networkConfigurations, styles, }) => { const isAllNetwork = useSelector(selectIsAllNetworks); + const { navigate } = useNavigation(); + + const onRpcSelect = useCallback( + async (clientId: string, chainId: `0x${string}`) => { + const { NetworkController } = Engine.context; + const existingNetwork = networkConfigurations[chainId]; + + const indexOfRpc = existingNetwork.rpcEndpoints.findIndex( + ({ networkClientId }) => clientId === networkClientId, + ); + + if (indexOfRpc === -1) { + Logger.error( + new Error( + `RPC endpoint with clientId: ${clientId} not found for chainId: ${chainId}`, + ), + ); + return; + } + + // Proceed to update the network with the correct index + await NetworkController.updateNetwork(existingNetwork.chainId, { + ...existingNetwork, + defaultRpcEndpointIndex: indexOfRpc, + }); + + // Set the active network + NetworkController.setActiveNetwork(clientId); + // Redirect to wallet page + navigate(Routes.WALLET.HOME, { + screen: Routes.WALLET.TAB_STACK_FLOW, + params: { + screen: Routes.WALLET_VIEW, + }, + }); + }, + [networkConfigurations, navigate], + ); + const setTokenNetworkFilter = useCallback( (chainId: string) => { const isPopularNetwork = diff --git a/app/components/Views/NetworkSelector/RpcSelectionModal/__snapshots__/RpcSelectionModal.test.tsx.snap b/app/components/Views/NetworkSelector/RpcSelectionModal/__snapshots__/RpcSelectionModal.test.tsx.snap index 03c7a775a93..cd6340df225 100644 --- a/app/components/Views/NetworkSelector/RpcSelectionModal/__snapshots__/RpcSelectionModal.test.tsx.snap +++ b/app/components/Views/NetworkSelector/RpcSelectionModal/__snapshots__/RpcSelectionModal.test.tsx.snap @@ -70,14 +70,14 @@ exports[`RpcSelectionModal should render correctly when visible 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1333, "overflow": "hidden", "paddingBottom": 3, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -107,7 +107,7 @@ exports[`RpcSelectionModal should render correctly when visible 1`] = ` @@ -1603,7 +1603,7 @@ exports[`Network Selector renders correctly when network UI redesign is enabled style={ { "alignSelf": "center", - "backgroundColor": "#bbc0c5", + "backgroundColor": "#848c96", "borderRadius": 4, "height": 5, "marginTop": 8, @@ -1642,7 +1642,7 @@ exports[`Network Selector renders correctly when network UI redesign is enabled style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 5, "borderWidth": 1, "color": "#141618", @@ -1680,7 +1680,7 @@ exports[`Network Selector renders correctly when network UI redesign is enabled placeholderTextColor="#141618" style={ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "color": "#141618", "flex": 1, "fontFamily": "EuclidCircularB-Regular", @@ -1741,7 +1741,7 @@ exports[`Network Selector renders correctly when network UI redesign is enabled style={ { "alignItems": "center", - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "flexDirection": "row", } } @@ -1917,7 +1917,7 @@ exports[`Network Selector renders correctly when network UI redesign is enabled accessible={true} style={ { - "backgroundColor": "#0376c91a", + "backgroundColor": "#0376C91A", "bottom": 0, "flexDirection": "row", "left": 0, @@ -3927,14 +3927,14 @@ exports[`Network Selector renders correctly when network UI redesign is enabled "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } testID="test-network-switch-id" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/NftDetails/NftDetailsBox.tsx b/app/components/Views/NftDetails/NftDetailsBox.tsx index 2aa3f99be9c..572494423fe 100644 --- a/app/components/Views/NftDetails/NftDetailsBox.tsx +++ b/app/components/Views/NftDetails/NftDetailsBox.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { StyleSheet, View, TouchableOpacity } from 'react-native'; import { useTheme } from '../../../util/theme'; import Text from '../../../component-library/components/Texts/Text'; -import { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import { ThemeColors } from '@metamask/design-tokens'; import { NftDetailsBoxProps } from './NftDetails.types'; const createStyles = (colors: ThemeColors) => diff --git a/app/components/Views/NftDetails/__snapshots__/NftDetails.test.ts.snap b/app/components/Views/NftDetails/__snapshots__/NftDetails.test.ts.snap index 245d0b1d685..920b73ad221 100644 --- a/app/components/Views/NftDetails/__snapshots__/NftDetails.test.ts.snap +++ b/app/components/Views/NftDetails/__snapshots__/NftDetails.test.ts.snap @@ -442,7 +442,7 @@ exports[`NftDetails should render correctly 1`] = ` "height": 16, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -574,7 +574,7 @@ exports[`NftDetails should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexGrow": 1, @@ -642,7 +642,7 @@ exports[`NftDetails should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexGrow": 1, @@ -743,7 +743,7 @@ exports[`NftDetails should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexGrow": 1, @@ -811,7 +811,7 @@ exports[`NftDetails should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexGrow": 1, @@ -1277,7 +1277,7 @@ exports[`NftDetails should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flexGrow": 1, diff --git a/app/components/Views/Notifications/Details/Badge/__snapshots__/index.test.tsx.snap b/app/components/Views/Notifications/Details/Badge/__snapshots__/index.test.tsx.snap index efdc00300ff..7f55e9352fd 100644 --- a/app/components/Views/Notifications/Details/Badge/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Notifications/Details/Badge/__snapshots__/index.test.tsx.snap @@ -121,7 +121,7 @@ exports[`NotificationBadge should renders correctly 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, diff --git a/app/components/Views/Notifications/Details/__snapshots__/index.test.tsx.snap b/app/components/Views/Notifications/Details/__snapshots__/index.test.tsx.snap index 1d2956543df..001927010ef 100644 --- a/app/components/Views/Notifications/Details/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Notifications/Details/__snapshots__/index.test.tsx.snap @@ -537,7 +537,7 @@ exports[`NotificationsDetails renders correctly 1`] = ` { "alignItems": "center", "alignSelf": "center", - "backgroundColor": "#1c82341a", + "backgroundColor": "#1C82341A", "borderRadius": 16, "height": 32, "justifyContent": "center", @@ -781,7 +781,7 @@ exports[`NotificationsDetails renders correctly 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, diff --git a/app/components/Views/OnboardingCarousel/index.tsx b/app/components/Views/OnboardingCarousel/index.tsx index 3a58f067b84..45b8794b1ac 100644 --- a/app/components/Views/OnboardingCarousel/index.tsx +++ b/app/components/Views/OnboardingCarousel/index.tsx @@ -8,7 +8,7 @@ import { Dimensions, Platform, } from 'react-native'; -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import type { ThemeColors } from '@metamask/design-tokens'; import { NavigationProp, ParamListBase } from '@react-navigation/native'; import { MetaMetricsEvents } from '../../../core/Analytics'; import { ITrackingEvent } from '../../../core/Analytics/MetaMetrics.types'; diff --git a/app/components/Views/OnboardingSuccess/OnboardingAssetsSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/OnboardingSuccess/OnboardingAssetsSettings/__snapshots__/index.test.tsx.snap index 8ef7ec8b43c..06c69757b35 100644 --- a/app/components/Views/OnboardingSuccess/OnboardingAssetsSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/OnboardingSuccess/OnboardingAssetsSettings/__snapshots__/index.test.tsx.snap @@ -74,7 +74,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -82,7 +82,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="token-detection-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -159,7 +159,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -167,7 +167,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="nft-display-media-mode-section" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -244,7 +244,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -252,7 +252,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="nft-opensea-autodetect-mode-section" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -329,7 +329,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -337,7 +337,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="IPFS_GATEWAY_SECTION" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -384,7 +384,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` @@ -577,7 +577,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "padding": 16, @@ -671,7 +671,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -679,7 +679,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="incoming-linea-mainnet-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -743,7 +743,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -751,7 +751,7 @@ exports[`OnboardingAssetSettings should render correctly 1`] = ` } testID="security-settings-multi-account-balances-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> diff --git a/app/components/Views/OnboardingSuccess/OnboardingGeneralSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/OnboardingSuccess/OnboardingGeneralSettings/__snapshots__/index.test.tsx.snap index fe1b8b6e1a7..2f8378aeb94 100644 --- a/app/components/Views/OnboardingSuccess/OnboardingGeneralSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/OnboardingSuccess/OnboardingGeneralSettings/__snapshots__/index.test.tsx.snap @@ -56,13 +56,13 @@ exports[`OnboardingGeneralSettings should render correctly 1`] = ` "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/OnboardingSuccess/OnboardingSecuritySettings/__snapshots__/index.test.tsx.snap b/app/components/Views/OnboardingSuccess/OnboardingSecuritySettings/__snapshots__/index.test.tsx.snap index ab1dc767165..2179aa0c73b 100644 --- a/app/components/Views/OnboardingSuccess/OnboardingSecuritySettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/OnboardingSuccess/OnboardingSecuritySettings/__snapshots__/index.test.tsx.snap @@ -67,7 +67,7 @@ exports[`OnboardingSecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -75,7 +75,7 @@ exports[`OnboardingSecuritySettings should render correctly 1`] = ` } testID="display-use-safe-list-validation" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/OriginSpamModal/__snapshots__/OriginSpamModal.test.tsx.snap b/app/components/Views/OriginSpamModal/__snapshots__/OriginSpamModal.test.tsx.snap index 160f84abdce..a6de76f711c 100644 --- a/app/components/Views/OriginSpamModal/__snapshots__/OriginSpamModal.test.tsx.snap +++ b/app/components/Views/OriginSpamModal/__snapshots__/OriginSpamModal.test.tsx.snap @@ -192,7 +192,7 @@ exports[`OriginSpamModal renders spam modal content by default 1`] = ` "alignItems": "center", "alignSelf": "center", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 99, "borderWidth": 1, "flexDirection": "row", diff --git a/app/components/Views/PickComponent/__snapshots__/index.test.tsx.snap b/app/components/Views/PickComponent/__snapshots__/index.test.tsx.snap index cebc2a1a747..c506b0b2618 100644 --- a/app/components/Views/PickComponent/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/PickComponent/__snapshots__/index.test.tsx.snap @@ -34,7 +34,7 @@ exports[`PickComponent should render correctly 1`] = ` { "alignItems": "center", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 99, "borderWidth": 2, "height": 20, diff --git a/app/components/Views/RestoreWallet/styles.ts b/app/components/Views/RestoreWallet/styles.ts index 16070c45870..d675612af60 100644 --- a/app/components/Views/RestoreWallet/styles.ts +++ b/app/components/Views/RestoreWallet/styles.ts @@ -1,5 +1,5 @@ /* eslint-disable import/prefer-default-export */ -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import type { ThemeColors } from '@metamask/design-tokens'; import { StyleSheet } from 'react-native'; export const createStyles = (colors: ThemeColors) => diff --git a/app/components/Views/RevealPrivateCredential/__snapshots__/index.test.tsx.snap b/app/components/Views/RevealPrivateCredential/__snapshots__/index.test.tsx.snap index 4a8e888f4a9..9ed02df8787 100644 --- a/app/components/Views/RevealPrivateCredential/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/RevealPrivateCredential/__snapshots__/index.test.tsx.snap @@ -157,7 +157,7 @@ exports[`RevealPrivateCredential renders reveal SRP correctly when the credentia @@ -335,14 +335,14 @@ exports[`AdvancedSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -421,14 +421,14 @@ exports[`AdvancedSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -507,7 +507,7 @@ exports[`AdvancedSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -515,7 +515,7 @@ exports[`AdvancedSettings should render correctly 1`] = ` } testID="token-detection-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -594,7 +594,7 @@ exports[`AdvancedSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -602,7 +602,7 @@ exports[`AdvancedSettings should render correctly 1`] = ` } testID="show-fiat-on-testnets" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/AppInformation/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/AppInformation/__snapshots__/index.test.tsx.snap index d487516769a..fb22f845532 100644 --- a/app/components/Views/Settings/AppInformation/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/AppInformation/__snapshots__/index.test.tsx.snap @@ -494,7 +494,7 @@ exports[`AppInformation should render correctly 1`] = ` diff --git a/app/components/Views/Settings/AutoDetectTokensSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/AutoDetectTokensSettings/__snapshots__/index.test.tsx.snap index 180daab2501..a324351f863 100644 --- a/app/components/Views/Settings/AutoDetectTokensSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/AutoDetectTokensSettings/__snapshots__/index.test.tsx.snap @@ -58,7 +58,7 @@ exports[`AssetSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -66,7 +66,7 @@ exports[`AssetSettings should render correctly 1`] = ` } testID="token-detection-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> diff --git a/app/components/Views/Settings/BatchAccountBalanceSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/BatchAccountBalanceSettings/__snapshots__/index.test.tsx.snap index b55d2c4c1e5..5d1d1eb96d0 100644 --- a/app/components/Views/Settings/BatchAccountBalanceSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/BatchAccountBalanceSettings/__snapshots__/index.test.tsx.snap @@ -57,7 +57,7 @@ exports[`BatchAccountBalanceSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -65,7 +65,7 @@ exports[`BatchAccountBalanceSettings should render correctly 1`] = ` } testID="security-settings-multi-account-balances-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/AmbiguousAddressSheet.styles.ts b/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/AmbiguousAddressSheet.styles.ts index f03505a6ba7..1b596f291bc 100644 --- a/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/AmbiguousAddressSheet.styles.ts +++ b/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/AmbiguousAddressSheet.styles.ts @@ -1,7 +1,6 @@ // Third party dependencies. import { StyleSheet, TextStyle } from 'react-native'; -import { typography } from '@metamask/design-tokens'; -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; +import { typography, ThemeColors } from '@metamask/design-tokens'; /** * Style sheet function for AmbiguousAddressSheet component. * diff --git a/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/__snapshots__/AmbiguousAddressSheet.test.tsx.snap b/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/__snapshots__/AmbiguousAddressSheet.test.tsx.snap index 4d390b981a9..880a7ab43d5 100644 --- a/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/__snapshots__/AmbiguousAddressSheet.test.tsx.snap +++ b/app/components/Views/Settings/Contacts/AmbiguousAddressSheet/__snapshots__/AmbiguousAddressSheet.test.tsx.snap @@ -371,14 +371,14 @@ exports[`AmbiguousAddressSheet should render correctly 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1314, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -408,7 +408,7 @@ exports[`AmbiguousAddressSheet should render correctly 1`] = ` diff --git a/app/components/Views/Settings/ExperimentalSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/ExperimentalSettings/__snapshots__/index.test.tsx.snap index 9f338464fc0..71203e9d1d6 100644 --- a/app/components/Views/Settings/ExperimentalSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/ExperimentalSettings/__snapshots__/index.test.tsx.snap @@ -148,13 +148,13 @@ exports[`ExperimentalSettings should render correctly 1`] = ` "alignSelf": "flex-end", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/IPFSGatewaySettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/IPFSGatewaySettings/__snapshots__/index.test.tsx.snap index 33852107326..d6793d0765f 100644 --- a/app/components/Views/Settings/IPFSGatewaySettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/IPFSGatewaySettings/__snapshots__/index.test.tsx.snap @@ -56,7 +56,7 @@ exports[`IPFSGatewaySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -64,7 +64,7 @@ exports[`IPFSGatewaySettings should render correctly 1`] = ` } testID="IPFS_GATEWAY_SECTION" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -111,7 +111,7 @@ exports[`IPFSGatewaySettings should render correctly 1`] = ` @@ -179,7 +179,7 @@ exports[`IncomingTransactionsSettings should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "padding": 16, @@ -273,7 +273,7 @@ exports[`IncomingTransactionsSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -281,7 +281,7 @@ exports[`IncomingTransactionsSettings should render correctly 1`] = ` } testID="incoming-linea-mainnet-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> diff --git a/app/components/Views/Settings/NetworkDetailsCheckSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/NetworkDetailsCheckSettings/__snapshots__/index.test.tsx.snap index a1aa508fe9e..a953e19c716 100644 --- a/app/components/Views/Settings/NetworkDetailsCheckSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/NetworkDetailsCheckSettings/__snapshots__/index.test.tsx.snap @@ -57,7 +57,7 @@ exports[`NetworkDetailsCheckSettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -65,7 +65,7 @@ exports[`NetworkDetailsCheckSettings should render correctly 1`] = ` } testID="display-use-safe-list-validation" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.js b/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.js index 2d23c4a48bc..b4c95f0c154 100644 --- a/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.js +++ b/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.js @@ -21,6 +21,7 @@ import Networks, { isPrivateConnection, getAllNetworks, getIsNetworkOnboarded, + isPortfolioViewEnabled, } from '../../../../../util/networks'; import Engine from '../../../../../core/Engine'; import { isWebUri } from 'valid-url'; @@ -51,6 +52,7 @@ import Button, { ButtonWidthTypes, } from '../../../../../component-library/components/Buttons/Button'; import { + selectIsAllNetworks, selectNetworkConfigurations, selectProviderConfig, } from '../../../../../selectors/networkController'; @@ -66,7 +68,10 @@ import { updateIncomingTransactions } from '../../../../../util/transaction-cont import { withMetricsAwareness } from '../../../../../components/hooks/useMetrics'; import { CHAIN_IDS } from '@metamask/transaction-controller'; import Routes from '../../../../../constants/navigation/Routes'; -import { selectUseSafeChainsListValidation } from '../../../../../../app/selectors/preferencesController'; +import { + selectTokenNetworkFilter, + selectUseSafeChainsListValidation, +} from '../../../../../../app/selectors/preferencesController'; import withIsOriginalNativeToken from './withIsOriginalNativeToken'; import { compose } from 'redux'; import Icon, { @@ -436,6 +441,16 @@ export class NetworkSettings extends PureComponent { * Matched object from third provider */ matchedChainNetwork: PropTypes.object, + + /** + * Checks if all networks are selected + */ + isAllNetworks: PropTypes.bool, + + /** + * Token network filter + */ + tokenNetworkFilter: PropTypes.object, }; state = { @@ -888,7 +903,13 @@ export class NetworkSettings extends PureComponent { } = this.state; const ticker = this.state.ticker && this.state.ticker.toUpperCase(); - const { navigation, networkOnboardedState, route } = this.props; + const { + navigation, + networkOnboardedState, + route, + isAllNetworks, + tokenNetworkFilter, + } = this.props; const isCustomMainnet = route.params?.isCustomMainnet; const shouldNetworkSwitchPopToWallet = @@ -934,6 +955,21 @@ export class NetworkSettings extends PureComponent { return; } + // Set tokenNetworkFilter + if (isPortfolioViewEnabled()) { + const { PreferencesController } = Engine.context; + if (!isAllNetworks) { + PreferencesController.setTokenNetworkFilter({ + [chainId]: true, + }); + } else { + PreferencesController.setTokenNetworkFilter({ + ...tokenNetworkFilter, + [chainId]: true, + }); + } + } + await this.handleNetworkUpdate({ rpcUrl, chainId, @@ -2566,6 +2602,8 @@ const mapStateToProps = (state) => ({ networkConfigurations: selectNetworkConfigurations(state), networkOnboardedState: state.networkOnboarded.networkOnboardedState, useSafeChainsListValidation: selectUseSafeChainsListValidation(state), + isAllNetworks: selectIsAllNetworks(state), + tokenNetworkFilter: selectTokenNetworkFilter(state), }); export default compose( diff --git a/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.test.tsx b/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.test.tsx index de3c01ccca5..2c0b8912034 100644 --- a/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.test.tsx +++ b/app/components/Views/Settings/NetworksSettings/NetworkSettings/index.test.tsx @@ -12,6 +12,9 @@ import { mockNetworkState } from '../../../../../util/test/network'; import * as jsonRequest from '../../../../../util/jsonRpcRequest'; import Logger from '../../../../../util/Logger'; import Engine from '../../../../../core/Engine'; +// eslint-disable-next-line import/no-namespace +import * as networks from '../../../../../util/networks'; +const { PreferencesController } = Engine.context; // Mock the entire module jest.mock('../../../../../util/networks/isNetworkUiRedesignEnabled', () => ({ @@ -58,6 +61,9 @@ jest.mock('../../../../../core/Engine', () => ({ CurrencyRateController: { updateExchangeRate: jest.fn(), }, + PreferencesController: { + setTokenNetworkFilter: jest.fn(), + }, }, })); @@ -1772,6 +1778,44 @@ describe('NetworkSettings', () => { }), ); }); + + it('should not call setTokenNetworkFilter when portfolio view is disabled', async () => { + jest.spyOn(networks, 'isPortfolioViewEnabled').mockReturnValue(false); + const tokenNetworkFilterSpy = jest.spyOn( + PreferencesController, + 'setTokenNetworkFilter', + ); + + wrapper.setState({ + rpcUrl: 'http://localhost:8545', + chainId: '0x1', + ticker: 'ETH', + nickname: 'Localhost', + enableAction: true, + }); + + await wrapper.instance().addRpcUrl(); + expect(tokenNetworkFilterSpy).toHaveBeenCalledTimes(0); + }); + + it('should call setTokenNetworkFilter when portfolio view is enabled', async () => { + jest.spyOn(networks, 'isPortfolioViewEnabled').mockReturnValue(true); + const tokenNetworkFilterSpy = jest.spyOn( + PreferencesController, + 'setTokenNetworkFilter', + ); + + wrapper.setState({ + rpcUrl: 'http://localhost:8545', + chainId: '0x1', + ticker: 'ETH', + nickname: 'Localhost', + enableAction: true, + }); + + await wrapper.instance().addRpcUrl(); + expect(tokenNetworkFilterSpy).toHaveBeenCalledTimes(1); + }); }); describe('checkIfNetworkExists', () => { diff --git a/app/components/Views/Settings/NetworksSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/NetworksSettings/__snapshots__/index.test.tsx.snap index cc90b47c6ef..f4277560fce 100644 --- a/app/components/Views/Settings/NetworksSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/NetworksSettings/__snapshots__/index.test.tsx.snap @@ -382,7 +382,7 @@ exports[`NetworksSettings should render correctly 1`] = ` style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 5, "borderWidth": 1, "color": "#141618", @@ -420,7 +420,7 @@ exports[`NetworksSettings should render correctly 1`] = ` placeholderTextColor="#141618" style={ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "color": "#141618", "flex": 1, "fontFamily": "EuclidCircularB-Regular", diff --git a/app/components/Views/Settings/NotificationsSettings/CustomNotificationsRow/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/NotificationsSettings/CustomNotificationsRow/__snapshots__/index.test.tsx.snap index a397ed5b8c6..2de1081e468 100644 --- a/app/components/Views/Settings/NotificationsSettings/CustomNotificationsRow/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/NotificationsSettings/CustomNotificationsRow/__snapshots__/index.test.tsx.snap @@ -81,14 +81,14 @@ exports[`CustomNotificationsRow should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/NotificationsSettings/__snapshots__/AccountsList.test.tsx.snap b/app/components/Views/Settings/NotificationsSettings/__snapshots__/AccountsList.test.tsx.snap index 621e0158390..350243af16a 100644 --- a/app/components/Views/Settings/NotificationsSettings/__snapshots__/AccountsList.test.tsx.snap +++ b/app/components/Views/Settings/NotificationsSettings/__snapshots__/AccountsList.test.tsx.snap @@ -268,14 +268,14 @@ exports[`AccountsList matches snapshot 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -501,14 +501,14 @@ exports[`AccountsList matches snapshot 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/NotificationsSettings/__snapshots__/index.test.tsx.snap b/app/components/Views/Settings/NotificationsSettings/__snapshots__/index.test.tsx.snap index 1859f635317..1931ade4828 100644 --- a/app/components/Views/Settings/NotificationsSettings/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Settings/NotificationsSettings/__snapshots__/index.test.tsx.snap @@ -55,14 +55,14 @@ exports[`NotificationsSettings render matches snapshot 1`] = ` "alignSelf": "flex-end", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/PermissionsSettings/PermissionsManager.tsx b/app/components/Views/Settings/PermissionsSettings/PermissionsManager.tsx index 49da558a078..3952a885a3b 100644 --- a/app/components/Views/Settings/PermissionsSettings/PermissionsManager.tsx +++ b/app/components/Views/Settings/PermissionsSettings/PermissionsManager.tsx @@ -7,8 +7,7 @@ import { EdgeInsets, useSafeAreaInsets } from 'react-native-safe-area-context'; import { strings } from '../../../../../locales/i18n'; import { useTheme } from '../../../../util/theme'; -import type { ThemeColors } from '@metamask/design-tokens/dist/types/js/themes/types'; -import type { ThemeTypography } from '@metamask/design-tokens/dist/types/js/typography'; +import type { ThemeColors, ThemeTypography } from '@metamask/design-tokens'; import { SDKSelectorsIDs } from '../../../../../e2e/selectors/Settings/SDK.selectors'; import Icon, { IconName, diff --git a/app/components/Views/Settings/SecuritySettings/Sections/MetaMetricsAndDataCollectionSection/__snapshots__/MetaMetricsAndDataCollectionSection.test.tsx.snap b/app/components/Views/Settings/SecuritySettings/Sections/MetaMetricsAndDataCollectionSection/__snapshots__/MetaMetricsAndDataCollectionSection.test.tsx.snap index be27f25d0a7..7c71fe2ef54 100644 --- a/app/components/Views/Settings/SecuritySettings/Sections/MetaMetricsAndDataCollectionSection/__snapshots__/MetaMetricsAndDataCollectionSection.test.tsx.snap +++ b/app/components/Views/Settings/SecuritySettings/Sections/MetaMetricsAndDataCollectionSection/__snapshots__/MetaMetricsAndDataCollectionSection.test.tsx.snap @@ -358,7 +358,7 @@ exports[`MetaMetricsAndDataCollectionSection render matches snapshot 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -366,7 +366,7 @@ exports[`MetaMetricsAndDataCollectionSection render matches snapshot 1`] = ` } testID="metametrics-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -480,7 +480,7 @@ exports[`MetaMetricsAndDataCollectionSection render matches snapshot 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -488,7 +488,7 @@ exports[`MetaMetricsAndDataCollectionSection render matches snapshot 1`] = ` } testID="data-collection-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/Settings/SecuritySettings/Sections/__snapshots__/BlockaidSettings.test.tsx.snap b/app/components/Views/Settings/SecuritySettings/Sections/__snapshots__/BlockaidSettings.test.tsx.snap index 2857d38420c..96b5536b78f 100644 --- a/app/components/Views/Settings/SecuritySettings/Sections/__snapshots__/BlockaidSettings.test.tsx.snap +++ b/app/components/Views/Settings/SecuritySettings/Sections/__snapshots__/BlockaidSettings.test.tsx.snap @@ -45,7 +45,7 @@ exports[`BlockaidSettings should render correctly 1`] = ` "alignSelf": "flex-end", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -53,7 +53,7 @@ exports[`BlockaidSettings should render correctly 1`] = ` } testID="security-alerts-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> , diff --git a/app/components/Views/Settings/SecuritySettings/__snapshots__/SecuritySettings.test.tsx.snap b/app/components/Views/Settings/SecuritySettings/__snapshots__/SecuritySettings.test.tsx.snap index e0e6c637858..3ef5a5f21dc 100644 --- a/app/components/Views/Settings/SecuritySettings/__snapshots__/SecuritySettings.test.tsx.snap +++ b/app/components/Views/Settings/SecuritySettings/__snapshots__/SecuritySettings.test.tsx.snap @@ -146,7 +146,7 @@ exports[`SecuritySettings should render correctly 1`] = ` @@ -680,7 +680,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-end", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -688,7 +688,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="security-alerts-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -814,13 +814,13 @@ exports[`SecuritySettings should render correctly 1`] = ` "width": 51, }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -1354,7 +1354,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -1362,7 +1362,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="display-use-safe-list-validation" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -1474,7 +1474,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -1482,7 +1482,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="security-settings-multi-account-balances-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -1563,7 +1563,7 @@ exports[`SecuritySettings should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "padding": 16, @@ -1657,7 +1657,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -1665,7 +1665,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="incoming-mainnet-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -1682,7 +1682,7 @@ exports[`SecuritySettings should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "padding": 16, @@ -1776,7 +1776,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -1784,7 +1784,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="incoming-linea-mainnet-toggle" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -1876,14 +1876,14 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], ] } thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -2011,7 +2011,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -2019,7 +2019,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="nft-display-media-mode-section" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -2097,7 +2097,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -2105,7 +2105,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="nft-opensea-autodetect-mode-section" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -2183,7 +2183,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -2191,7 +2191,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="IPFS_GATEWAY_SECTION" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={true} /> @@ -2238,7 +2238,7 @@ exports[`SecuritySettings should render correctly 1`] = ` @@ -2427,7 +2427,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -2435,7 +2435,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="metametrics-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> @@ -2549,7 +2549,7 @@ exports[`SecuritySettings should render correctly 1`] = ` "alignSelf": "flex-start", }, { - "backgroundColor": "#bbc0c566", + "backgroundColor": "#BBC0C566", "borderRadius": 16, }, ], @@ -2557,7 +2557,7 @@ exports[`SecuritySettings should render correctly 1`] = ` } testID="data-collection-switch" thumbTintColor="#ffffff" - tintColor="#bbc0c566" + tintColor="#BBC0C566" value={false} /> diff --git a/app/components/Views/ShowDisplayMediaNFTSheet/__snapshots__/ShowDisplayNFTMediaSheet.test.tsx.snap b/app/components/Views/ShowDisplayMediaNFTSheet/__snapshots__/ShowDisplayNFTMediaSheet.test.tsx.snap index 7d69a71c8b2..f032638081c 100644 --- a/app/components/Views/ShowDisplayMediaNFTSheet/__snapshots__/ShowDisplayNFTMediaSheet.test.tsx.snap +++ b/app/components/Views/ShowDisplayMediaNFTSheet/__snapshots__/ShowDisplayNFTMediaSheet.test.tsx.snap @@ -371,14 +371,14 @@ exports[`ShowNftSheet should render correctly 1`] = ` [ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderTopLeftRadius": 8, "borderTopRightRadius": 8, "borderWidth": 1, "maxHeight": 1314, "overflow": "hidden", "paddingBottom": 0, - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -408,7 +408,7 @@ exports[`ShowNftSheet should render correctly 1`] = ` { const chainIdDec = hexToDecimal(chainId); diff --git a/app/components/Views/Wallet/__snapshots__/index.test.tsx.snap b/app/components/Views/Wallet/__snapshots__/index.test.tsx.snap index dd7b9941997..2c5c3450b99 100644 --- a/app/components/Views/Wallet/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/Wallet/__snapshots__/index.test.tsx.snap @@ -56,12 +56,15 @@ exports[`Wallet should render correctly 1`] = ` { "backgroundColor": { "alternative": "#f2f4f6", - "alternativeHover": "#e7ebee", - "alternativePressed": "#dbe0e6", + "alternativeHover": "#E7EBEE", + "alternativePressed": "#DBE0E6", "default": "#ffffff", - "defaultHover": "#f5f5f5", - "defaultPressed": "#ebebeb", - "hover": "#0000000a", + "defaultHover": "#F5F5F5", + "defaultPressed": "#EBEBEB", + "hover": "#0000000A", + "muted": "#f2f4f6", + "mutedHover": "#E7EBEE", + "mutedPressed": "#DBE0E6", "pressed": "#00000014", }, "borderBottomColor": "rgb(216, 216, 216)", @@ -233,7 +236,7 @@ exports[`Wallet should render correctly 1`] = ` { "alignItems": "center", "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 0, "flexDirection": "row", @@ -779,7 +782,7 @@ exports[`Wallet should render correctly 1`] = ` - diff --git a/app/components/Views/WalletActions/WalletActions.test.tsx b/app/components/Views/WalletActions/WalletActions.test.tsx index 502541c7a97..9618ce5616f 100644 --- a/app/components/Views/WalletActions/WalletActions.test.tsx +++ b/app/components/Views/WalletActions/WalletActions.test.tsx @@ -15,6 +15,27 @@ import { expectedUuid2, MOCK_ACCOUNTS_CONTROLLER_STATE, } from '../../../util/test/accountsControllerTestUtils'; +import useStakingChain from '../../UI/Stake/hooks/useStakingChain'; +import Engine from '../../../core/Engine'; +import { isStablecoinLendingFeatureEnabled } from '../../UI/Stake/constants'; + +jest.mock('../../../components/UI/Stake/constants', () => ({ + isStablecoinLendingFeatureEnabled: jest.fn(), +})); + +jest.mock('../../../core/Engine', () => ({ + context: { + NetworkController: { + setActiveNetwork: jest.fn(), + }, + }, +})); +jest.mock('../../../components/UI/Stake/hooks/useStakingChain', () => ({ + __esModule: true, + default: jest.fn().mockReturnValue({ + isStakingSupportedChain: true, + }), +})); const mockInitialState: DeepPartial = { swaps: { '0x1': { isLive: true }, hasOnboarded: false, isLive: true }, @@ -103,6 +124,17 @@ describe('WalletActions', () => { ).toBeDefined(); }); + it('should render earn button if the stablecoin lending feature is enabled', () => { + (isStablecoinLendingFeatureEnabled as jest.Mock).mockReturnValue(true); + const { getByTestId } = renderWithProvider(, { + state: mockInitialState, + }); + + expect( + getByTestId(WalletActionsBottomSheetSelectorsIDs.EARN_BUTTON), + ).toBeDefined(); + }); + it('should not show the buy button and swap button if the chain does not allow buying', () => { const mockState: DeepPartial = { swaps: { '0x1': { isLive: false }, hasOnboarded: false, isLive: true }, @@ -142,7 +174,9 @@ describe('WalletActions', () => { state: mockState, }); - expect(queryByTestId(WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON)).toBeNull(); + expect( + queryByTestId(WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON), + ).toBeNull(); expect( queryByTestId(WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON), ).toBeNull(); @@ -156,7 +190,9 @@ describe('WalletActions', () => { state: mockInitialState, }); - fireEvent.press(getByTestId(WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON)); + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON), + ); expect(mockNavigate).toHaveBeenCalled(); }); @@ -165,7 +201,9 @@ describe('WalletActions', () => { state: mockInitialState, }); - fireEvent.press(getByTestId(WalletActionsBottomSheetSelectorsIDs.SEND_BUTTON)); + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.SEND_BUTTON), + ); expect(mockNavigate).toHaveBeenCalled(); }); @@ -174,7 +212,9 @@ describe('WalletActions', () => { state: mockInitialState, }); - fireEvent.press(getByTestId(WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON)); + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON), + ); expect(mockNavigate).toHaveBeenCalled(); }); @@ -183,10 +223,44 @@ describe('WalletActions', () => { state: mockInitialState, }); - fireEvent.press(getByTestId(WalletActionsBottomSheetSelectorsIDs.BRIDGE_BUTTON)); + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.BRIDGE_BUTTON), + ); expect(mockNavigate).toHaveBeenCalled(); }); + it('should call the onEarn function when the Earn button is pressed', () => { + (isStablecoinLendingFeatureEnabled as jest.Mock).mockReturnValue(true); + const { getByTestId } = renderWithProvider(, { + state: mockInitialState, + }); + + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.EARN_BUTTON), + ); + + expect(mockNavigate).toHaveBeenCalled(); + expect( + Engine.context.NetworkController.setActiveNetwork, + ).not.toHaveBeenCalled(); + }); + + it('should switch to mainnet when onEarn called on unsupported staking network', () => { + (isStablecoinLendingFeatureEnabled as jest.Mock).mockReturnValue(true); + (useStakingChain as jest.Mock).mockReturnValue({ + isStakingSupportedChain: false, + }); + const { getByTestId } = renderWithProvider(, { + state: mockInitialState, + }); + + fireEvent.press( + getByTestId(WalletActionsBottomSheetSelectorsIDs.EARN_BUTTON), + ); + expect( + Engine.context.NetworkController.setActiveNetwork, + ).toHaveBeenCalledWith('mainnet'); + }); it('disables action buttons when the account cannot sign transactions', () => { const mockStateWithoutSigning: DeepPartial = { ...mockInitialState, @@ -217,18 +291,30 @@ describe('WalletActions', () => { state: mockStateWithoutSigning, }); - const buyButton = getByTestId(WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON); - const sellButton = getByTestId(WalletActionsBottomSheetSelectorsIDs.SELL_BUTTON); - const sendButton = getByTestId(WalletActionsBottomSheetSelectorsIDs.SEND_BUTTON); - const swapButton = getByTestId(WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON); + const buyButton = getByTestId( + WalletActionsBottomSheetSelectorsIDs.BUY_BUTTON, + ); + const sellButton = getByTestId( + WalletActionsBottomSheetSelectorsIDs.SELL_BUTTON, + ); + const sendButton = getByTestId( + WalletActionsBottomSheetSelectorsIDs.SEND_BUTTON, + ); + const swapButton = getByTestId( + WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON, + ); const bridgeButton = getByTestId( WalletActionsBottomSheetSelectorsIDs.BRIDGE_BUTTON, ); + const earnButton = getByTestId( + WalletActionsBottomSheetSelectorsIDs.EARN_BUTTON, + ); expect(buyButton.props.disabled).toBe(true); expect(sellButton.props.disabled).toBe(true); expect(sendButton.props.disabled).toBe(true); expect(swapButton.props.disabled).toBe(true); expect(bridgeButton.props.disabled).toBe(true); + expect(earnButton.props.disabled).toBe(true); }); }); diff --git a/app/components/Views/WalletActions/WalletActions.tsx b/app/components/Views/WalletActions/WalletActions.tsx index 30dd0cfd47b..54ff78139c4 100644 --- a/app/components/Views/WalletActions/WalletActions.tsx +++ b/app/components/Views/WalletActions/WalletActions.tsx @@ -40,6 +40,9 @@ import { } from '../../UI/Ramp/routes/utils'; import { selectCanSignTransactions } from '../../../selectors/accountsController'; import { WalletActionType } from '../../UI/WalletAction/WalletAction.types'; +import Engine from '../../../core/Engine'; +import useStakingChain from '../../UI/Stake/hooks/useStakingChain'; +import { isStablecoinLendingFeatureEnabled } from '../../UI/Stake/constants'; const WalletActions = () => { const { styles } = useStyles(styleSheet, {}); @@ -51,7 +54,7 @@ const WalletActions = () => { const ticker = useSelector(selectTicker); const swapsIsLive = useSelector(swapsLivenessSelector); const dispatch = useDispatch(); - + const { isStakingSupportedChain } = useStakingChain(); const [isNetworkRampSupported] = useRampNetwork(); const { trackEvent, createEventBuilder } = useMetrics(); @@ -89,6 +92,32 @@ const WalletActions = () => { createEventBuilder, ]); + const onEarn = useCallback(async () => { + if (!isStakingSupportedChain) { + await Engine.context.NetworkController.setActiveNetwork('mainnet'); + } + + closeBottomSheetAndNavigate(() => { + navigate('StakeScreens', { screen: Routes.STAKING.STAKE }); + }); + trackEvent( + createEventBuilder(MetaMetricsEvents.EARN_BUTTON_CLICKED) + .addProperties({ + text: 'Earn', + location: 'TabBar', + chain_id_destination: getDecimalChainId(chainId), + }) + .build(), + ); + }, [ + closeBottomSheetAndNavigate, + navigate, + chainId, + createEventBuilder, + trackEvent, + isStakingSupportedChain, + ]); + const onBuy = useCallback(() => { closeBottomSheetAndNavigate(() => { navigate(...createBuyNavigationDetails()); @@ -222,7 +251,6 @@ const WalletActions = () => { /> )} {AppConstants.SWAPS.ACTIVE && - swapsIsLive && isSwapsAllowed(chainId) && ( { actionID={WalletActionsBottomSheetSelectorsIDs.SWAP_BUTTON} iconStyle={styles.icon} iconSize={AvatarSize.Md} - disabled={!canSignTransactions} + disabled={!canSignTransactions || !swapsIsLive} /> )} {isBridgeAllowed(chainId) && ( @@ -263,6 +291,17 @@ const WalletActions = () => { iconSize={AvatarSize.Md} disabled={false} /> + {isStablecoinLendingFeatureEnabled() && ( + + )} ); diff --git a/app/components/Views/WalletConnectSessions/__snapshots__/index.test.tsx.snap b/app/components/Views/WalletConnectSessions/__snapshots__/index.test.tsx.snap index 1429eb1fc7d..a58081bfae1 100644 --- a/app/components/Views/WalletConnectSessions/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/WalletConnectSessions/__snapshots__/index.test.tsx.snap @@ -1196,7 +1196,7 @@ exports[`WalletConnectSessions should render active sessions 1`] = ` onLongPress={[Function]} style={ { - "borderBottomColor": "#bbc0c566", + "borderBottomColor": "#BBC0C566", "borderBottomWidth": 1, "flexDirection": "row", "paddingHorizontal": 20, @@ -1313,7 +1313,7 @@ exports[`WalletConnectSessions should render active sessions 1`] = ` onLongPress={[Function]} style={ { - "borderBottomColor": "#bbc0c566", + "borderBottomColor": "#BBC0C566", "borderBottomWidth": 1, "flexDirection": "row", "paddingHorizontal": 20, diff --git a/app/components/Views/confirmations/Approval/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/Approval/__snapshots__/index.test.tsx.snap index 2ced70357f9..d74d9b1a64a 100644 --- a/app/components/Views/confirmations/Approval/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/Approval/__snapshots__/index.test.tsx.snap @@ -617,7 +617,7 @@ exports[`Approval render matches snapshot 1`] = ` style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 12, "borderWidth": 1, "color": "#141618", @@ -659,7 +659,7 @@ exports[`Approval render matches snapshot 1`] = ` style={ [ { - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderRadius": 8, "borderWidth": 1, "padding": 16, @@ -1025,7 +1025,7 @@ exports[`Approval render matches snapshot 1`] = ` style={ { "alignItems": "center", - "backgroundColor": "#d738471a", + "backgroundColor": "#D738471A", "borderColor": "#d73847", "borderRadius": 8, "borderWidth": 1, @@ -1349,7 +1349,7 @@ exports[`Approval render matches snapshot 1`] = ` transactionMeta.id === transaction.id, diff --git a/app/components/Views/confirmations/SendFlow/AddressFrom/__snapshots__/AddressFrom.test.tsx.snap b/app/components/Views/confirmations/SendFlow/AddressFrom/__snapshots__/AddressFrom.test.tsx.snap index 3fd50ae8989..109d5f44708 100644 --- a/app/components/Views/confirmations/SendFlow/AddressFrom/__snapshots__/AddressFrom.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/AddressFrom/__snapshots__/AddressFrom.test.tsx.snap @@ -39,7 +39,7 @@ exports[`SendFlowAddressFrom should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 8, "borderWidth": 1, "flex": 1, @@ -50,7 +50,7 @@ exports[`SendFlowAddressFrom should render correctly 1`] = ` "padding": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } diff --git a/app/components/Views/confirmations/SendFlow/AddressTo/__snapshots__/AddressTo.test.tsx.snap b/app/components/Views/confirmations/SendFlow/AddressTo/__snapshots__/AddressTo.test.tsx.snap index 37e775db1db..c41fc133e55 100644 --- a/app/components/Views/confirmations/SendFlow/AddressTo/__snapshots__/AddressTo.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/AddressTo/__snapshots__/AddressTo.test.tsx.snap @@ -49,7 +49,7 @@ exports[`SendFlowAddressTo should render correctly 1`] = ` "paddingHorizontal": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } diff --git a/app/components/Views/confirmations/SendFlow/Amount/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/SendFlow/Amount/__snapshots__/index.test.tsx.snap index 2141b9fedb0..efcacffe66c 100644 --- a/app/components/Views/confirmations/SendFlow/Amount/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/Amount/__snapshots__/index.test.tsx.snap @@ -6059,7 +6059,7 @@ exports[`Amount should render correctly 1`] = ` "paddingVertical": 8, }, { - "backgroundColor": "#bf52081a", + "backgroundColor": "#BF52081A", "borderColor": "#bf5208", }, { @@ -6769,7 +6769,7 @@ exports[`Amount should show a warning when conversion rate is not available 1`] "paddingVertical": 8, }, { - "backgroundColor": "#bf52081a", + "backgroundColor": "#BF52081A", "borderColor": "#bf5208", }, { @@ -7737,7 +7737,7 @@ exports[`Amount should show an error message if balance is insufficient 1`] = ` style={ { "alignItems": "center", - "backgroundColor": "#d738471a", + "backgroundColor": "#D738471A", "borderColor": "#d73847", "borderRadius": 8, "borderWidth": 1, diff --git a/app/components/Views/confirmations/SendFlow/Amount/index.js b/app/components/Views/confirmations/SendFlow/Amount/index.js index fee467612f8..0378afb6fb2 100644 --- a/app/components/Views/confirmations/SendFlow/Amount/index.js +++ b/app/components/Views/confirmations/SendFlow/Amount/index.js @@ -98,7 +98,10 @@ import { withMetricsAwareness } from '../../../../../components/hooks/useMetrics import { selectGasFeeEstimates } from '../../../../../selectors/confirmTransaction'; import { selectGasFeeControllerEstimateType } from '../../../../../selectors/gasFeeController'; import { createBuyNavigationDetails } from '../../../../UI/Ramp/routes/utils'; -import { selectNativeCurrencyByChainId, selectProviderTypeByChainId } from '../../../../../selectors/networkController'; +import { + selectNativeCurrencyByChainId, + selectProviderTypeByChainId, +} from '../../../../../selectors/networkController'; import { selectContractExchangeRatesByChainId } from '../../../../../selectors/tokenRatesController'; const KEYBOARD_OFFSET = Device.isSmallDevice() ? 80 : 120; @@ -1037,14 +1040,14 @@ class Amount extends PureComponent { }; handleSelectedAssetBalance = ( - { address, decimals, symbol, isETH }, + { address, decimals, symbol, isETH, isNative }, renderableBalance, ) => { const { accounts, selectedAddress, contractBalances } = this.props; let currentBalance; if (renderableBalance) { currentBalance = `${renderableBalance} ${symbol}`; - } else if (isETH) { + } else if (isETH || isNative) { currentBalance = `${renderFromWei( accounts[selectedAddress].balance, )} ${symbol}`; @@ -1586,7 +1589,7 @@ const mapStateToProps = (state, ownProps) => { chainId, networkClientId, }; -} +}; const mapDispatchToProps = (dispatch) => ({ setTransactionObject: (transaction) => diff --git a/app/components/Views/confirmations/SendFlow/Confirm/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/SendFlow/Confirm/__snapshots__/index.test.tsx.snap index e2636ab25ca..a95c7c6447e 100644 --- a/app/components/Views/confirmations/SendFlow/Confirm/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/Confirm/__snapshots__/index.test.tsx.snap @@ -469,7 +469,7 @@ exports[`Confirm should render correctly 1`] = ` style={ { "backgroundColor": "#ffffff", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 4, "borderWidth": 1, "flexDirection": "row", @@ -699,7 +699,7 @@ exports[`Confirm should render correctly 1`] = ` "height": 32, "justifyContent": "center", "overflow": "hidden", - "shadowColor": "#0000001a", + "shadowColor": "#0000001A", "shadowOffset": { "height": 2, "width": 0, @@ -863,7 +863,7 @@ exports[`Confirm should render correctly 1`] = ` "paddingHorizontal": 10, }, { - "borderColor": "#bbc0c5", + "borderColor": "#848c96", }, ] } @@ -1207,7 +1207,7 @@ exports[`Confirm should render correctly 1`] = ` style={ [ { - "borderColor": "#bbc0c566", + "borderColor": "#BBC0C566", "borderRadius": 8, "borderWidth": 1, "padding": 16, @@ -1486,7 +1486,7 @@ exports[`Confirm should render correctly 1`] = ` style={ [ { - "borderBottomColor": "#bbc0c566", + "borderBottomColor": "#BBC0C566", "borderBottomWidth": 1, "marginVertical": 6, }, diff --git a/app/components/Views/confirmations/SendFlow/Confirm/components/CustomGasModal/__snapshots__/CustomGasModal.test.tsx.snap b/app/components/Views/confirmations/SendFlow/Confirm/components/CustomGasModal/__snapshots__/CustomGasModal.test.tsx.snap index fb4545c66da..9c415e7612f 100644 --- a/app/components/Views/confirmations/SendFlow/Confirm/components/CustomGasModal/__snapshots__/CustomGasModal.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/Confirm/components/CustomGasModal/__snapshots__/CustomGasModal.test.tsx.snap @@ -384,7 +384,7 @@ exports[`CustomGasModal should render correctly 1`] = ` style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 6, "borderWidth": 1, "flexDirection": "row", @@ -760,7 +760,7 @@ exports[`CustomGasModal should render correctly 1`] = ` style={ { "alignItems": "center", - "borderColor": "#bbc0c5", + "borderColor": "#848c96", "borderRadius": 6, "borderWidth": 1, "flexDirection": "row", diff --git a/app/components/Views/confirmations/SendFlow/Confirm/index.js b/app/components/Views/confirmations/SendFlow/Confirm/index.js index ba28b91a446..79d968adc0d 100644 --- a/app/components/Views/confirmations/SendFlow/Confirm/index.js +++ b/app/components/Views/confirmations/SendFlow/Confirm/index.js @@ -134,7 +134,7 @@ import { // Pending updated multichain UX to specify the send chain. // eslint-disable-next-line no-restricted-syntax selectNetworkClientId, - selectProviderTypeByChainId + selectProviderTypeByChainId, } from '../../../../../selectors/networkController'; import { selectContractExchangeRatesByChainId } from '../../../../../selectors/tokenRatesController'; import { updateTransactionToMaxValue } from './utils'; @@ -472,7 +472,7 @@ class Confirm extends PureComponent { navigation, providerType, isPaymentRequest, - setTransactionId + setTransactionId, } = this.props; const { @@ -743,7 +743,8 @@ class Confirm extends PureComponent { let transactionValue, transactionValueFiat; const valueBN = hexToBN(value); - const parsedTicker = getTicker(ticker); + const symbol = ticker ?? selectedAsset?.symbol; + const parsedTicker = getTicker(symbol); if (selectedAsset.isETH) { transactionValue = `${renderFromWei(value)} ${parsedTicker}`; @@ -1617,8 +1618,7 @@ const mapStateToProps = (state) => { ), shouldUseSmartTransaction: selectShouldUseSmartTransaction(state), transactionMetricsById: selectTransactionMetrics(state), - transactionMetadata: - selectCurrentTransactionMetadata(state), + transactionMetadata: selectCurrentTransactionMetadata(state), useTransactionSimulations: selectUseTransactionSimulations(state), securityAlertResponse: selectCurrentTransactionSecurityAlertResponse(state), }; diff --git a/app/components/Views/confirmations/SendFlow/ErrorMessage/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/SendFlow/ErrorMessage/__snapshots__/index.test.tsx.snap index 1163afc4e32..807f74fd070 100644 --- a/app/components/Views/confirmations/SendFlow/ErrorMessage/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/ErrorMessage/__snapshots__/index.test.tsx.snap @@ -13,7 +13,7 @@ exports[`ErrorMessage should render correctly 1`] = ` }, undefined, { - "backgroundColor": "#d738471a", + "backgroundColor": "#D738471A", "borderColor": "#d73847", }, undefined, diff --git a/app/components/Views/confirmations/SendFlow/SendTo/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/SendFlow/SendTo/__snapshots__/index.test.tsx.snap index c5b2ba23d38..d5c7c223cbd 100644 --- a/app/components/Views/confirmations/SendFlow/SendTo/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/SendFlow/SendTo/__snapshots__/index.test.tsx.snap @@ -18,7 +18,7 @@ exports[`SendTo Component should render 1`] = ` ; reason: Reason; req?: Record; - result_type: ResultType; + result_type: BlockaidResultType; source?: SecurityAlertSource; } diff --git a/app/components/Views/confirmations/components/BlockaidBanner/__snapshots__/BlockaidBanner.test.tsx.snap b/app/components/Views/confirmations/components/BlockaidBanner/__snapshots__/BlockaidBanner.test.tsx.snap index 515328ab1ae..2a73b7a46bd 100644 --- a/app/components/Views/confirmations/components/BlockaidBanner/__snapshots__/BlockaidBanner.test.tsx.snap +++ b/app/components/Views/confirmations/components/BlockaidBanner/__snapshots__/BlockaidBanner.test.tsx.snap @@ -28,7 +28,7 @@ exports[`BlockaidBanner should render correctly 1`] = ` } style={ { - "backgroundColor": "#bf52081a", + "backgroundColor": "#BF52081A", "borderColor": "#bf5208", "borderLeftWidth": 4, "borderRadius": 4, @@ -181,7 +181,7 @@ exports[`BlockaidBanner should render correctly with list attack details 1`] = ` } style={ { - "backgroundColor": "#d738471a", + "backgroundColor": "#D738471A", "borderColor": "#d73847", "borderLeftWidth": 4, "borderRadius": 4, @@ -334,7 +334,7 @@ exports[`BlockaidBanner should render correctly with reason "raw_signature_farmi } style={ { - "backgroundColor": "#d738471a", + "backgroundColor": "#D738471A", "borderColor": "#d73847", "borderLeftWidth": 4, "borderRadius": 4, @@ -496,7 +496,7 @@ exports[`BlockaidBanner should render normal banner alert if resultType is faile = { + [Field.Deadline]: [...PRIMARY_TYPES_PERMIT], + [Field.EndTime]: [...PRIMARY_TYPES_ORDER], + [Field.Expiration]: [PrimaryType.PermitBatch, PrimaryType.PermitSingle], + [Field.Expiry]: [...PRIMARY_TYPES_PERMIT], + [Field.SigDeadline]: [...PRIMARY_TYPES_PERMIT], + [Field.StartTime]: [...PRIMARY_TYPES_ORDER], + [Field.ValidTo]: [...PRIMARY_TYPES_ORDER], +}; + +function isDateField(label: string, primaryType?: PrimaryType) { + return (FIELD_DATE_PRIMARY_TYPES[label] || [])?.includes(primaryType || ''); +} + const createStyles = (depth: number) => StyleSheet.create({ container: { @@ -23,25 +61,41 @@ const createStyles = (depth: number) => const DataField = memo( ({ + chainId, + depth, label, + primaryType, type, value, - chainId, - depth, }: { + chainId: string; + depth: number; label: string; + primaryType?: PrimaryType; type: string; value: string; - chainId: string; - depth: number; }) => { const styles = createStyles(depth); let fieldDisplay; if (type === 'address' && isValidHexAddress(value as Hex)) { fieldDisplay =
; + } else if (isDateField(label, primaryType) && Boolean(value)) { + const intValue = parseInt(value, 10); + + fieldDisplay = + intValue === NONE_DATE_VALUE ? ( + {strings('confirm.none')} + ) : ( + + ); } else if (typeof value === 'object' && value !== null) { fieldDisplay = ( - + ); } else { fieldDisplay = {value}; diff --git a/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.test.tsx b/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.test.tsx index f3ea36c677c..8cf8288c8ce 100644 --- a/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.test.tsx +++ b/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.test.tsx @@ -3,6 +3,10 @@ import React from 'react'; import renderWithProvider from '../../../../../../util/test/renderWithProvider'; import { backgroundState } from '../../../../../../util/test/initial-root-state'; import DataTree, { DataTreeInput } from './DataTree'; +import { PrimaryTypeOrder } from '../../../constants/signatures'; +import { NONE_DATE_VALUE } from '../../../utils/date'; + +const timestamp = 1647359825; // March 15, 2022 15:57:05 UTC const mockSanitizedTypedSignV3Message = { from: { @@ -25,12 +29,20 @@ const mockSanitizedTypedSignV3Message = { }, type: 'Person', }, + endTime: { + value: timestamp.toString(), + type: 'uint256', + }, + startTime: { + value: NONE_DATE_VALUE, + type: 'uint256', + }, contents: { value: 'Hello, Bob!', type: 'string' }, }; describe('NoChangeSimulation', () => { - it('should display types sign v1 message correctly', async () => { - const { getByText } = renderWithProvider( + it('displays types sign v1 message', async () => { + const { getByText, queryByText } = renderWithProvider( { expect(getByText('Hi, Alice!')).toBeDefined(); expect(getByText('A Number')).toBeDefined(); expect(getByText('1337')).toBeDefined(); + // date field not supported for v1 + expect(queryByText('15 March 2022, 15:57')).toBeNull(); }); - it('should display types sign v3/v4 message correctly', async () => { + it('displays types sign v3/v4 message', async () => { const { getByText, getAllByText } = renderWithProvider( , { state: { @@ -72,5 +87,8 @@ describe('NoChangeSimulation', () => { expect(getByText('Cow')).toBeDefined(); expect(getByText('To')).toBeDefined(); expect(getByText('Bob')).toBeDefined(); + // date field displayed for permit types + expect(getByText('15 March 2022, 15:57')).toBeDefined(); + expect(getByText('None')).toBeDefined(); }); }); diff --git a/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.tsx b/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.tsx index 5eba7b98ccf..63664d6b6bd 100644 --- a/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.tsx +++ b/app/components/Views/confirmations/components/Confirm/DataTree/DataTree.tsx @@ -1,6 +1,7 @@ import React from 'react'; import { StyleSheet, View } from 'react-native'; +import { PrimaryType } from '../../../constants/signatures'; import DataField from './DataField'; export type DataTreeInput = Record; @@ -16,20 +17,23 @@ const DataTree = ({ data, chainId, depth = 0, + primaryType, }: { data: DataTreeInput; chainId: string; depth?: number; + primaryType?: PrimaryType; }) => ( {Object.keys(data).map((dataKey: string, index: number) => { const datum = data[dataKey]; return ( ); diff --git a/app/components/Views/confirmations/components/Confirm/Footer/Footer.tsx b/app/components/Views/confirmations/components/Confirm/Footer/Footer.tsx index bbcbc7bb052..fdb41467912 100644 --- a/app/components/Views/confirmations/components/Confirm/Footer/Footer.tsx +++ b/app/components/Views/confirmations/components/Confirm/Footer/Footer.tsx @@ -9,9 +9,9 @@ import Button, { ButtonWidthTypes, } from '../../../../../../component-library/components/Buttons/Button'; import { useStyles } from '../../../../../../component-library/hooks'; +import { ResultType } from '../../../constants/signatures'; import { useConfirmActions } from '../../../hooks/useConfirmActions'; import { useSecurityAlertResponse } from '../../../hooks/useSecurityAlertResponse'; -import { ResultType } from '../../BlockaidBanner/BlockaidBanner.types'; import styleSheet from './Footer.styles'; const Footer = () => { diff --git a/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/Message.tsx b/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/Message.tsx index 3b70d40286b..93ca51bbc5d 100644 --- a/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/Message.tsx +++ b/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/Message.tsx @@ -6,6 +6,7 @@ import { parseSanitizeTypedDataMessage } from '../../../../utils/signatures'; import { strings } from '../../../../../../../../locales/i18n'; import { useSignatureRequest } from '../../../../hooks/useSignatureRequest'; import { useStyles } from '../../../../../../../component-library/hooks'; +import { useTypedSignSimulationEnabled } from '../../../../hooks/useTypedSignSimulationEnabled'; import InfoRow from '../../../UI/InfoRow'; import DataTree from '../../DataTree'; import SignatureMessageSection from '../../SignatureMessageSection'; @@ -14,6 +15,7 @@ import styleSheet from './Message.styles'; const Message = () => { const signatureRequest = useSignatureRequest(); + const isSimulationSupported = useTypedSignSimulationEnabled(); const chainId = signatureRequest?.chainId as Hex; const { styles } = useStyles(styleSheet, {}); @@ -31,12 +33,14 @@ const Message = () => { return ( - {primaryType} - + isSimulationSupported ? undefined : ( + + {primaryType} + + ) } messageExpanded={ @@ -50,6 +54,7 @@ const Message = () => { } diff --git a/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/TypedSignV3V4.test.tsx b/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/TypedSignV3V4.test.tsx index b02a9f7a8dd..55d916500e0 100644 --- a/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/TypedSignV3V4.test.tsx +++ b/app/components/Views/confirmations/components/Confirm/Info/TypedSignV3V4/TypedSignV3V4.test.tsx @@ -1,10 +1,22 @@ import React from 'react'; import renderWithProvider from '../../../../../../../util/test/renderWithProvider'; -import { typedSignV3ConfirmationState } from '../../../../../../../util/test/confirm-data-helpers'; +import { + typedSignV3ConfirmationState, + typedSignV4ConfirmationState, +} from '../../../../../../../util/test/confirm-data-helpers'; import TypedSignV3V4 from './TypedSignV3V4'; import { fireEvent } from '@testing-library/react-native'; +jest.mock('../../../../../../../core/Engine', () => ({ + resetState: jest.fn(), + context: { + NetworkController: { + findNetworkClientIdByChainId: () => 123, + }, + }, +})); + describe('TypedSignV3V4', () => { it('should contained required text', async () => { const { getByText } = renderWithProvider(, { @@ -17,6 +29,17 @@ describe('TypedSignV3V4', () => { expect(getByText('Mail')).toBeDefined(); }); + it('should not display primaty type if simulation section is displayed', async () => { + const { getByText, queryByText } = renderWithProvider(, { + state: typedSignV4ConfirmationState, + }); + expect(getByText('Request from')).toBeDefined(); + expect(getByText('metamask.github.io')).toBeDefined(); + expect(getByText('Message')).toBeDefined(); + expect(queryByText('Primary type')).toBeNull(); + expect(queryByText('Mail')).toBeNull(); + }); + it('should show detailed message when message section is clicked', async () => { const { getByText, getAllByText } = renderWithProvider(, { state: typedSignV3ConfirmationState, diff --git a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.test.tsx b/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.test.tsx deleted file mode 100644 index 838361aee88..00000000000 --- a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.test.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import React from 'react'; - -import renderWithProvider from '../../../../../../util/test/renderWithProvider'; -import { personalSignatureConfirmationState } from '../../../../../../util/test/confirm-data-helpers'; -import NoChangeSimulation from './NoChangeSimulation'; - -describe('NoChangeSimulation', () => { - it('should render text correctly', async () => { - const { getByText } = renderWithProvider(, { - state: personalSignatureConfirmationState, - }); - expect(getByText('Estimated changes')).toBeDefined(); - expect( - getByText( - "You're signing into a site and there are no predicted changes to your account." - ), - ).toBeDefined(); - }); - - it('should return null if preference useTransactionSimulations is not enabled', async () => { - const { queryByText } = renderWithProvider(, { - state: { - engine: { - backgroundState: { - ...personalSignatureConfirmationState, - PreferencesController: { - ...personalSignatureConfirmationState.engine.backgroundState - .PreferencesController, - useTransactionSimulations: false, - }, - }, - }, - }, - }); - expect(queryByText('Estimated changes')).toBeNull(); - }); -}); diff --git a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.tsx b/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.tsx deleted file mode 100644 index a62bf20c7ca..00000000000 --- a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/NoChangeSimulation.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import React from 'react'; -import { useSelector } from 'react-redux'; - -import { strings } from '../../../../../../../locales/i18n'; -import { selectUseTransactionSimulations } from '../../../../../../selectors/preferencesController'; -import InfoSection from '../../UI/InfoRow/InfoSection'; -import InfoRow from '../../UI/InfoRow'; - -// todo: this component can be deleted if not used anywhere -const NoChangeSimulation = () => { - const useTransactionSimulations = useSelector( - selectUseTransactionSimulations, - ); - - if (useTransactionSimulations !== true) { - return null; - } - - return ( - - - {strings('confirm.simulation.personal_sign_info')} - - - ); -}; - -export default NoChangeSimulation; diff --git a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/index.ts b/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/index.ts deleted file mode 100644 index 4221a223fe2..00000000000 --- a/app/components/Views/confirmations/components/Confirm/NoChangeSimulation/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default } from './NoChangeSimulation'; diff --git a/app/components/Views/confirmations/components/Confirm/SignatureMessageSection/SignatureMessageSection.tsx b/app/components/Views/confirmations/components/Confirm/SignatureMessageSection/SignatureMessageSection.tsx index 0f1706aab1e..3ff98b4f643 100644 --- a/app/components/Views/confirmations/components/Confirm/SignatureMessageSection/SignatureMessageSection.tsx +++ b/app/components/Views/confirmations/components/Confirm/SignatureMessageSection/SignatureMessageSection.tsx @@ -10,7 +10,7 @@ import { IconVerticalPosition } from '../../UI/ExpandableSection/ExpandableSecti import styleSheet from './SignatureMessageSection.styles'; interface SignatureMessageSectionProps { - messageCollapsed: ReactNode | string; + messageCollapsed?: ReactNode | string; messageExpanded: ReactNode; copyMessageText: string; } @@ -27,15 +27,17 @@ const SignatureMessageSection = ({ collapsedContent={ {strings('confirm.message')} - - {typeof messageCollapsed === 'string' ? ( - - {messageCollapsed} - - ) : ( - messageCollapsed - )} - + {messageCollapsed && ( + + {typeof messageCollapsed === 'string' ? ( + + {messageCollapsed} + + ) : ( + messageCollapsed + )} + + )} } expandedContent={ diff --git a/app/components/Views/confirmations/components/CustomNonce/__snapshots__/index.test.tsx.snap b/app/components/Views/confirmations/components/CustomNonce/__snapshots__/index.test.tsx.snap index a08fd7fcb33..caf1abdb4a7 100644 --- a/app/components/Views/confirmations/components/CustomNonce/__snapshots__/index.test.tsx.snap +++ b/app/components/Views/confirmations/components/CustomNonce/__snapshots__/index.test.tsx.snap @@ -4,7 +4,7 @@ exports[`CustomNonce should render correctly 1`] = ` { + it('renders date', async () => { + const { getByText } = render(); + expect(getByText('15 March 2022, 15:57')).toBeDefined(); + }); +}); diff --git a/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/InfoDate.tsx b/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/InfoDate.tsx new file mode 100644 index 00000000000..3c833bdbac7 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/InfoDate.tsx @@ -0,0 +1,14 @@ +import React from 'react'; +import { Text } from 'react-native'; + +import { formatUTCDateFromUnixTimestamp } from '../../../../../utils/date'; + +interface InfoDateProps { + unixTimestamp: number; +} + +const InfoDate = ({ unixTimestamp }: InfoDateProps) => ( + {formatUTCDateFromUnixTimestamp(unixTimestamp)} +); + +export default InfoDate; diff --git a/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/index.ts b/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/index.ts new file mode 100644 index 00000000000..c6148f66f1c --- /dev/null +++ b/app/components/Views/confirmations/components/UI/InfoRow/InfoValue/InfoDate/index.ts @@ -0,0 +1 @@ +export { default } from './InfoDate'; diff --git a/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.stories.tsx b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.stories.tsx new file mode 100644 index 00000000000..e69c55c8ee1 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.stories.tsx @@ -0,0 +1,24 @@ +import React from 'react'; +import { storiesOf } from '@storybook/react-native'; +import { StyleProp, Text, TextStyle, View } from 'react-native'; + +import TextWithTooltip from '.'; + +const style = { + container: { padding: 8 }, + title: { marginTop: 20, fontSize: 20, fontWeight: '700' }, +}; + +storiesOf('Confirmations / TextWithTooltip', module) + .addDecorator((getStory) => getStory()) + .add('Default', () => ( + + }> + Simple Text With Tooltip + + + + )); diff --git a/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.styles.ts b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.styles.ts new file mode 100644 index 00000000000..d4aa4e8f379 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.styles.ts @@ -0,0 +1,31 @@ +import { StyleSheet } from 'react-native'; + +import { Theme } from '../../../../../../util/theme/models'; +import { fontStyles } from '../../../../../../styles/common'; + +const styleSheet = (params: { theme: Theme }) => { + const { theme } = params; + + return StyleSheet.create({ + container: { + backgroundColor: theme.colors.background.default, + paddingHorizontal: 8, + paddingVertical: 8, + }, + tooltipText: { + fontSize: 16, + ...fontStyles.normal, + }, + tooltipHeader: { + paddingHorizontal: 8, + paddingVertical: 8, + }, + tooltipContext: { + paddingHorizontal: 40, + paddingTop: 40, + paddingBottom: 56, + }, + }); +}; + +export default styleSheet; diff --git a/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.test.tsx b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.test.tsx new file mode 100644 index 00000000000..cf7685008d5 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.test.tsx @@ -0,0 +1,30 @@ +import React from 'react'; +import { fireEvent, render } from '@testing-library/react-native'; + +import TextWithTooltip from './TextWithTooltip'; + +describe('TextWithTooltip', () => { + it('renders correctly', async () => { + const { getByText } = render( + , + ); + expect(getByText('some_dummy_value')).toBeDefined(); + }); + + it('should open modal when value pressed', async () => { + const { getByTestId, getByText } = render( + , + ); + expect(getByText('some_dummy_value')).toBeDefined(); + fireEvent.press(getByText('some_dummy_value')); + expect(getByText('some_dummy_tooltip')).toBeDefined(); + fireEvent.press(getByTestId('tooltipTestId')); + expect(getByText('some_dummy_value')).toBeDefined(); + }); +}); diff --git a/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.tsx b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.tsx new file mode 100644 index 00000000000..7420dfc2b23 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/TextWithTooltip/TextWithTooltip.tsx @@ -0,0 +1,55 @@ +import React, { useState } from 'react'; +import { Text, TouchableOpacity, View } from 'react-native'; + +import BottomModal from '../BottomModal'; +import { useStyles } from '../../../../../hooks/useStyles'; +import styleSheet from './TextWithTooltip.styles'; +import ButtonIcon from '../../../../../../component-library/components/Buttons/ButtonIcon'; +import { ButtonIconSizes } from '../../../../../../component-library/components/Buttons/ButtonIcon/ButtonIcon.types'; +import { + IconColor, + IconName, +} from '../../../../../../component-library/components/Icons/Icon'; + +interface TextWithTooltipProps { + text: string; + tooltip: string; + tooltipTestId?: string; +} + +const TextWithTooltip = ({ + text, + tooltip, + tooltipTestId, +}: TextWithTooltipProps) => { + const [isTooltipVisible, setTooltipVisible] = useState(false); + const { styles } = useStyles(styleSheet, {}); + + return ( + + setTooltipVisible(true)}> + {text} + + {isTooltipVisible && ( + setTooltipVisible(false)}> + + + setTooltipVisible(false)} + iconName={IconName.ArrowLeft} + testID={tooltipTestId ?? 'tooltipTestId'} + /> + + + {tooltip} + + + + )} + + ); +}; + +export default TextWithTooltip; diff --git a/app/components/Views/confirmations/components/UI/TextWithTooltip/index.ts b/app/components/Views/confirmations/components/UI/TextWithTooltip/index.ts new file mode 100644 index 00000000000..61aa67bd5d8 --- /dev/null +++ b/app/components/Views/confirmations/components/UI/TextWithTooltip/index.ts @@ -0,0 +1 @@ +export { default } from './TextWithTooltip'; diff --git a/app/components/Views/confirmations/constants/signatures.ts b/app/components/Views/confirmations/constants/signatures.ts index 79a6dfdf184..6b501dec49c 100644 --- a/app/components/Views/confirmations/constants/signatures.ts +++ b/app/components/Views/confirmations/constants/signatures.ts @@ -34,3 +34,13 @@ export const PRIMARY_TYPES_ORDER: PrimaryTypeOrder[] = export const PRIMARY_TYPES_PERMIT: PrimaryTypePermit[] = Object.values(PrimaryTypePermit); export const PRIMARY_TYPES: PrimaryType[] = Object.values(PrimaryType); + +export enum ResultType { + Benign = 'Benign', + Malicious = 'Malicious', + Warning = 'Warning', + + // MetaMask defined result types + Failed = 'Failed', + RequestInProgress = 'RequestInProgress', +} diff --git a/app/components/Views/confirmations/hooks/useConfirmActions.test.ts b/app/components/Views/confirmations/hooks/useConfirmActions.test.ts index 31a512d6997..b646820b915 100644 --- a/app/components/Views/confirmations/hooks/useConfirmActions.test.ts +++ b/app/components/Views/confirmations/hooks/useConfirmActions.test.ts @@ -1,6 +1,7 @@ import Engine from '../../../../core/Engine'; import { renderHookWithProvider } from '../../../../util/test/renderWithProvider'; import { personalSignatureConfirmationState } from '../../../../util/test/confirm-data-helpers'; +import PPOMUtil from '../../../../lib/ppom/ppom-util'; import { useConfirmActions } from './useConfirmActions'; jest.mock('../../../../core/Engine', () => ({ @@ -23,6 +24,10 @@ describe('useConfirmAction', () => { }); it('call required callbacks when confirm button is clicked', async () => { + const clearSecurityAlertResponseSpy = jest.spyOn( + PPOMUtil, + 'clearSignatureSecurityAlertResponse', + ); const { result } = renderHookWithProvider(() => useConfirmActions(), { state: personalSignatureConfirmationState, }); @@ -30,14 +35,20 @@ describe('useConfirmAction', () => { expect(Engine.acceptPendingApproval).toHaveBeenCalledTimes(1); await flushPromises(); expect(mockCaptureSignatureMetrics).toHaveBeenCalledTimes(1); + expect(clearSecurityAlertResponseSpy).toHaveBeenCalledTimes(1); }); it('call required callbacks when reject button is clicked', async () => { + const clearSecurityAlertResponseSpy = jest.spyOn( + PPOMUtil, + 'clearSignatureSecurityAlertResponse', + ); const { result } = renderHookWithProvider(() => useConfirmActions(), { state: personalSignatureConfirmationState, }); result?.current?.onReject(); expect(Engine.rejectPendingApproval).toHaveBeenCalledTimes(1); expect(mockCaptureSignatureMetrics).toHaveBeenCalledTimes(1); + expect(clearSecurityAlertResponseSpy).toHaveBeenCalledTimes(1); }); }); diff --git a/app/components/Views/confirmations/hooks/useConfirmActions.ts b/app/components/Views/confirmations/hooks/useConfirmActions.ts index 01ab81fe5c0..f4af7d4625c 100644 --- a/app/components/Views/confirmations/hooks/useConfirmActions.ts +++ b/app/components/Views/confirmations/hooks/useConfirmActions.ts @@ -1,5 +1,6 @@ import { useCallback } from 'react'; +import PPOMUtil from '../../../../lib/ppom/ppom-util'; import { MetaMetricsEvents } from '../../../hooks/useMetrics'; import { isSignatureRequest } from '../utils/confirm'; import useApprovalRequest from './useApprovalRequest'; @@ -24,6 +25,7 @@ export const useConfirmActions = () => { }); if (signatureRequest) { captureSignatureMetrics(MetaMetricsEvents.SIGNATURE_APPROVED); + PPOMUtil.clearSignatureSecurityAlertResponse(); } }, [captureSignatureMetrics, onRequestConfirm, signatureRequest]); @@ -31,6 +33,7 @@ export const useConfirmActions = () => { onRequestReject(); if (signatureRequest) { captureSignatureMetrics(MetaMetricsEvents.SIGNATURE_REJECTED); + PPOMUtil.clearSignatureSecurityAlertResponse(); } }, [captureSignatureMetrics, onRequestReject, signatureRequest]); diff --git a/app/components/Views/confirmations/utils/date.test.ts b/app/components/Views/confirmations/utils/date.test.ts new file mode 100644 index 00000000000..c117cc72d6a --- /dev/null +++ b/app/components/Views/confirmations/utils/date.test.ts @@ -0,0 +1,17 @@ +import { formatUTCDateFromUnixTimestamp } from './date'; + +describe('date util', () => { + describe('formatUTCDateFromUnixTimestamp', () => { + it('formats passed date string', () => { + expect(formatUTCDateFromUnixTimestamp(2036528542)).toStrictEqual( + '14 July 2034, 22:22', + ); + }); + + it('returns empty string if no value is passed', () => { + expect( + formatUTCDateFromUnixTimestamp(undefined as unknown as number), + ).toStrictEqual(undefined); + }); + }); +}); diff --git a/app/components/Views/confirmations/utils/date.ts b/app/components/Views/confirmations/utils/date.ts new file mode 100644 index 00000000000..57d662a4792 --- /dev/null +++ b/app/components/Views/confirmations/utils/date.ts @@ -0,0 +1,23 @@ +import { DateTime } from 'luxon'; + +/** + * @param {number} unixTimestamp - timestamp as seconds since unix epoch + * @returns {string} formatted date string e.g. "14 July 2034, 22:22" + */ +export const formatUTCDateFromUnixTimestamp = (unixTimestamp: number) => { + if (!unixTimestamp) { + return unixTimestamp; + } + + return DateTime.fromSeconds(unixTimestamp) + .toUTC() + .toFormat('dd LLLL yyyy, HH:mm'); +}; + +/** + * Date values may include -1 to represent a null value + * e.g. + * {@see {@link https://eips.ethereum.org/EIPS/eip-2612}} + * "The deadline argument can be set to uint(-1) to create Permits that effectively never expire." + */ +export const NONE_DATE_VALUE = -1; diff --git a/app/core/Analytics/MetaMetrics.events.ts b/app/core/Analytics/MetaMetrics.events.ts index a8a61fd698f..a8303c37787 100644 --- a/app/core/Analytics/MetaMetrics.events.ts +++ b/app/core/Analytics/MetaMetrics.events.ts @@ -356,7 +356,7 @@ enum EVENT_NAME { RECEIVE_BUTTON_CLICKED = 'Receive Button Clicked', SWAP_BUTTON_CLICKED = 'Swaps Button Clicked', SEND_BUTTON_CLICKED = 'Send Button Clicked', - + EARN_BUTTON_CLICKED = 'Earn Button Clicked', // Edit account name ACCOUNT_RENAMED = 'Account Renamed', @@ -820,6 +820,7 @@ const events = { RECEIVE_BUTTON_CLICKED: generateOpt(EVENT_NAME.RECEIVE_BUTTON_CLICKED), SWAP_BUTTON_CLICKED: generateOpt(EVENT_NAME.SWAP_BUTTON_CLICKED), SEND_BUTTON_CLICKED: generateOpt(EVENT_NAME.SEND_BUTTON_CLICKED), + EARN_BUTTON_CLICKED: generateOpt(EVENT_NAME.EARN_BUTTON_CLICKED), NETWORK_SELECTOR_PRESSED: generateOpt(EVENT_NAME.NETWORK_SELECTOR), // Edit account name diff --git a/app/core/Analytics/MetricsEventBuilder.test.ts b/app/core/Analytics/MetricsEventBuilder.test.ts index 38b7bfe75a9..b7e4125b0b2 100644 --- a/app/core/Analytics/MetricsEventBuilder.test.ts +++ b/app/core/Analytics/MetricsEventBuilder.test.ts @@ -1,4 +1,4 @@ -import { MetricsEventBuilder } from './MetricsEventBuilder'; +import {MetricsEventBuilder} from './MetricsEventBuilder'; import { IMetaMetricsEvent, JsonMap } from './MetaMetrics.types'; describe('MetricsEventBuilder', () => { @@ -80,24 +80,24 @@ describe('MetricsEventBuilder', () => { expect(rebuiltEvent.sensitiveProperties).toEqual(newSensitiveProps); }); - // test fix for https://github.com/MetaMask/metamask-mobile/issues/12728 - it('adds properties with legacy sensitive properties objects', () => { + it('compares events', () => { const newProps: JsonMap = { newProp: 'newValue', - newSensitiveLegacyProp: { value: 'newSensitiveLegacyValue', anonymous: true} }; - const event = MetricsEventBuilder.createEventBuilder(mockEvent) - .addProperties(newProps) + const event = MetricsEventBuilder.createEventBuilder(mockLegacyEvent) + .addSensitiveProperties(newProps) .build(); - expect(event.properties).toEqual({newProp: 'newValue'}); - expect(event.sensitiveProperties).toEqual({newSensitiveLegacyProp: 'newSensitiveLegacyValue'}); - const rebuiltEvent = MetricsEventBuilder.createEventBuilder(event) + const similarEvent = MetricsEventBuilder.createEventBuilder(mockLegacyEvent) + .addSensitiveProperties(newProps) + .build(); + expect(similarEvent).toEqual(event); + + const differentEvent = MetricsEventBuilder.createEventBuilder(mockLegacyEvent) .addProperties(newProps) .build(); - expect(rebuiltEvent.properties).toEqual({newProp: 'newValue'}); - expect(rebuiltEvent.sensitiveProperties).toEqual({newSensitiveLegacyProp: 'newSensitiveLegacyValue'}); + expect(differentEvent).not.toEqual(event); }); it('removes properties', () => { diff --git a/app/core/Analytics/MetricsEventBuilder.ts b/app/core/Analytics/MetricsEventBuilder.ts index ccf6093f58d..b4a5d11fc89 100644 --- a/app/core/Analytics/MetricsEventBuilder.ts +++ b/app/core/Analytics/MetricsEventBuilder.ts @@ -9,57 +9,29 @@ import { * the event tracking object to be produced by MetricsEventBuilder */ class TrackingEvent implements ITrackingEvent { - readonly #name: string; - #properties: JsonMap; - #sensitiveProperties: JsonMap; - #saveDataRecording: boolean; + readonly name: string; + properties: JsonMap; + sensitiveProperties: JsonMap; + saveDataRecording: boolean; constructor(event: IMetaMetricsEvent) { - this.#name = event.category; - this.#properties = event.properties || {}; - this.#sensitiveProperties = {}; - this.#saveDataRecording = true; - } - - get name(): string { - return this.#name; - } - - get properties(): JsonMap { - return this.#properties; - } - - set properties(properties: JsonMap) { - this.#properties = properties; - } - - get sensitiveProperties(): JsonMap { - return this.#sensitiveProperties; - } - - set sensitiveProperties(sensitiveProperties: JsonMap) { - this.#sensitiveProperties = sensitiveProperties; - } - - get saveDataRecording(): boolean { - return this.#saveDataRecording; - } - - set saveDataRecording(saveDataRecording: boolean) { - this.#saveDataRecording = saveDataRecording; + this.name = event.category; + this.properties = event.properties || {}; + this.sensitiveProperties = {}; + this.saveDataRecording = true; } get isAnonymous(): boolean { return !!( - this.#sensitiveProperties && Object.keys(this.#sensitiveProperties).length + this.sensitiveProperties && Object.keys(this.sensitiveProperties).length ); } get hasProperties(): boolean { return !!( - (this.#properties && Object.keys(this.#properties).length) || - (this.#sensitiveProperties && - Object.keys(this.#sensitiveProperties).length) + (this.properties && Object.keys(this.properties).length) || + (this.sensitiveProperties && + Object.keys(this.sensitiveProperties).length) ); } } @@ -85,6 +57,11 @@ class MetricsEventBuilder { protected constructor(event: IMetaMetricsEvent | ITrackingEvent) { if (isTrackingEvent(event)) { + // Be careful that in case the event is already a ITrackingEvent + // we don't want to create a new one so this passes the reference. + // Changes applied to the source event will be reflected in the new event. + // If at any point you need to clone the ITrackingEvent, it will require to + // create a new ITrackingEvent object by copying the values. this.#trackingEvent = event; return; } diff --git a/app/core/AppStateEventListener.test.ts b/app/core/AppStateEventListener.test.ts index ede6491cc96..02606e78299 100644 --- a/app/core/AppStateEventListener.test.ts +++ b/app/core/AppStateEventListener.test.ts @@ -79,25 +79,30 @@ describe('AppStateEventListener', () => { mockAppStateListener('active'); jest.advanceTimersByTime(2000); - expect(mockMetrics.trackEvent).toHaveBeenCalledWith( - MetricsEventBuilder.createEventBuilder(MetaMetricsEvents.APP_OPENED) - .addSensitiveProperties({ - attributionId: 'test123', - utm_source: 'source', - utm_medium: 'medium', - utm_campaign: 'campaign', - }) - .build(), - ); + const expectedEvent = MetricsEventBuilder.createEventBuilder(MetaMetricsEvents.APP_OPENED) + .addProperties({ + attributionId: 'test123', + utm_source: 'source', + utm_medium: 'medium', + utm_campaign: 'campaign', + }) + .build(); + + expect(mockMetrics.trackEvent).toHaveBeenCalledWith(expectedEvent); }); - it('does not track event when processAttribution returns undefined', () => { + it('tracks event when app becomes active without attribution data', () => { + jest + .spyOn(ReduxService, 'store', 'get') + .mockReturnValue({} as unknown as ReduxStore); (processAttribution as jest.Mock).mockReturnValue(undefined); mockAppStateListener('active'); jest.advanceTimersByTime(2000); - expect(mockMetrics.trackEvent).not.toHaveBeenCalled(); + expect(mockMetrics.trackEvent).toHaveBeenCalledWith( + MetricsEventBuilder.createEventBuilder(MetaMetricsEvents.APP_OPENED).build() + ); }); it('handles errors gracefully', () => { diff --git a/app/core/AppStateEventListener.ts b/app/core/AppStateEventListener.ts index 2376c337494..f6be9afc39c 100644 --- a/app/core/AppStateEventListener.ts +++ b/app/core/AppStateEventListener.ts @@ -48,18 +48,16 @@ export class AppStateEventListener { currentDeeplink: this.currentDeeplink, store: ReduxService.store, }); + const appOpenedEventBuilder = MetricsEventBuilder.createEventBuilder(MetaMetricsEvents.APP_OPENED); if (attribution) { const { attributionId, utm, ...utmParams } = attribution; DevLogger.log( `AppStateManager:: processAppStateChange:: sending event 'APP_OPENED' attributionId=${attribution.attributionId} utm=${attribution.utm}`, utmParams, ); - MetaMetrics.getInstance().trackEvent( - MetricsEventBuilder.createEventBuilder(MetaMetricsEvents.APP_OPENED) - .addSensitiveProperties({ attributionId, ...utmParams }) - .build(), - ); + appOpenedEventBuilder.addProperties({ attributionId, ...utmParams }); } + MetaMetrics.getInstance().trackEvent(appOpenedEventBuilder.build()); } catch (error) { Logger.error( error as Error, diff --git a/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.test.ts b/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.test.ts index b7eed8fd925..9c8020392f1 100644 --- a/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.test.ts +++ b/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.test.ts @@ -1,15 +1,14 @@ +import { Platform } from 'react-native'; import { ACTIONS, PREFIXES } from '../../../constants/deeplinks'; +import Routes from '../../../constants/navigation/Routes'; +import Device from '../../../util/device'; import AppConstants from '../../AppConstants'; -import { Minimizer } from '../../NativeModules'; +import handleDeeplink from '../../SDKConnect/handlers/handleDeeplink'; import SDKConnect from '../../SDKConnect/SDKConnect'; import WC2Manager from '../../WalletConnect/WalletConnectV2'; import DeeplinkManager from '../DeeplinkManager'; import extractURLParams from './extractURLParams'; import handleMetaMaskDeeplink from './handleMetaMaskDeeplink'; -import handleDeeplink from '../../SDKConnect/handlers/handleDeeplink'; -import Device from '../../../util/device'; -import { Platform } from 'react-native'; -import Routes from '../../../constants/navigation/Routes'; jest.mock('../../../core/AppConstants'); jest.mock('../../../core/SDKConnect/handlers/handleDeeplink'); @@ -269,49 +268,7 @@ describe('handleMetaMaskProtocol', () => { url = `${PREFIXES.METAMASK}${ACTIONS.CONNECT}`; }); - it('should call Minimizer.goBack if params.redirect is truthy on android', () => { - params.redirect = 'true'; - // Mock Device.isIos() to return true - jest.spyOn(Device, 'isIos').mockReturnValue(false); - - // Set Platform.Version to '16' to ensure it's less than 17 - Object.defineProperty(Platform, 'Version', { get: () => '16' }); - - handleMetaMaskDeeplink({ - instance, - handled, - params, - origin: AppConstants.DEEPLINKS.ORIGIN_DEEPLINK, - wcURL, - url, - }); - - expect(handled).toHaveBeenCalled(); - expect(Minimizer.goBack).toHaveBeenCalled(); - }); - - it('should call Minimizer.goBack if params.redirect is truthy on ios <17', () => { - params.redirect = 'true'; - // Mock Device.isIos() to return true - jest.spyOn(Device, 'isIos').mockReturnValue(true); - - // Set Platform.Version to '16' to ensure it's less than 17 - Object.defineProperty(Platform, 'Version', { get: () => '16' }); - - handleMetaMaskDeeplink({ - instance, - handled, - params, - origin: AppConstants.DEEPLINKS.ORIGIN_DEEPLINK, - wcURL, - url, - }); - - expect(handled).toHaveBeenCalled(); - expect(Minimizer.goBack).toHaveBeenCalled(); - }); - - it('should displays RETURN_TO_DAPP_MODAL if params.redirect is truthy on ios >17', () => { + it('should displays RETURN_TO_DAPP_MODAL', () => { params.redirect = 'true'; // Mock Device.isIos() to return true jest.spyOn(Device, 'isIos').mockReturnValue(true); @@ -332,7 +289,6 @@ describe('handleMetaMaskProtocol', () => { expect(mockNavigate).toHaveBeenCalledWith(Routes.MODAL.ROOT_MODAL_FLOW, { screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, }); - expect(Minimizer.goBack).not.toHaveBeenCalled(); }); diff --git a/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.ts b/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.ts index 6cb1fbabfee..544186f29d6 100644 --- a/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.ts +++ b/app/core/DeeplinkManager/ParseManager/handleMetaMaskDeeplink.ts @@ -1,18 +1,15 @@ import { OriginatorInfo } from '@metamask/sdk-communication-layer'; import { ACTIONS, PREFIXES } from '../../../constants/deeplinks'; +import Routes from '../../../constants/navigation/Routes'; import Logger from '../../../util/Logger'; -import { Minimizer } from '../../NativeModules'; +import AppConstants from '../../AppConstants'; import SDKConnect from '../../SDKConnect/SDKConnect'; import handleDeeplink from '../../SDKConnect/handlers/handleDeeplink'; import DevLogger from '../../SDKConnect/utils/DevLogger'; import WC2Manager from '../../WalletConnect/WalletConnectV2'; import DeeplinkManager from '../DeeplinkManager'; -import extractURLParams from './extractURLParams'; import parseOriginatorInfo from '../parseOriginatorInfo'; -import { Platform } from 'react-native'; -import Device from '../../../util/device'; -import Routes from '../../../constants/navigation/Routes'; -import AppConstants from '../../AppConstants'; +import extractURLParams from './extractURLParams'; export function handleMetaMaskDeeplink({ instance, handled, @@ -43,13 +40,9 @@ export function handleMetaMaskDeeplink({ if (url.startsWith(`${PREFIXES.METAMASK}${ACTIONS.CONNECT}`)) { if (params.redirect && origin === AppConstants.DEEPLINKS.ORIGIN_DEEPLINK) { - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - SDKConnect.getInstance().state.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } else { - Minimizer.goBack(); - } + SDKConnect.getInstance().state.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); } else if (params.channelId) { // differentiate between deeplink callback and socket connection if (params.comm === 'deeplinking') { diff --git a/app/core/DeeplinkManager/ParseManager/handleUniversalLink.test.ts b/app/core/DeeplinkManager/ParseManager/handleUniversalLink.test.ts index e0764f00e59..d26c869b286 100644 --- a/app/core/DeeplinkManager/ParseManager/handleUniversalLink.test.ts +++ b/app/core/DeeplinkManager/ParseManager/handleUniversalLink.test.ts @@ -2,7 +2,6 @@ import { Platform } from 'react-native'; import { ACTIONS } from '../../../constants/deeplinks'; import Device from '../../../util/device'; import AppConstants from '../../AppConstants'; -import { Minimizer } from '../../NativeModules'; import SDKConnect from '../../SDKConnect/SDKConnect'; import handleDeeplink from '../../SDKConnect/handlers/handleDeeplink'; import DevLogger from '../../SDKConnect/utils/DevLogger'; @@ -122,63 +121,7 @@ describe('handleUniversalLinks', () => { }); describe('ACTIONS.CONNECT', () => { - it('should call Minimizer.goBack if params.redirect is truthy on android', () => { - params.redirect = 'true'; - // Mock Device.isIos() to return true - jest.spyOn(Device, 'isIos').mockReturnValue(false); - - // Set Platform.Version to '16' to ensure it's less than 17 - Object.defineProperty(Platform, 'Version', { get: () => '16' }); - - urlObj = { - hostname: AppConstants.MM_UNIVERSAL_LINK_HOST, - pathname: `/${ACTIONS.CONNECT}/additional/path`, - } as ReturnType['urlObj']; - - handleUniversalLink({ - instance, - handled, - urlObj, - params, - browserCallBack: mockBrowserCallBack, - origin: AppConstants.DEEPLINKS.ORIGIN_DEEPLINK, - wcURL, - url, - }); - - expect(handled).toHaveBeenCalled(); - expect(Minimizer.goBack).toHaveBeenCalled(); - }); - - it('should call Minimizer.goBack if params.redirect is truthy on ios <17', () => { - params.redirect = 'true'; - // Mock Device.isIos() to return true - jest.spyOn(Device, 'isIos').mockReturnValue(false); - - // Set Platform.Version to '16' to ensure it's less than 17 - Object.defineProperty(Platform, 'Version', { get: () => '16' }); - - urlObj = { - hostname: AppConstants.MM_UNIVERSAL_LINK_HOST, - pathname: `/${ACTIONS.CONNECT}/additional/path`, - } as ReturnType['urlObj']; - - handleUniversalLink({ - instance, - handled, - urlObj, - params, - browserCallBack: mockBrowserCallBack, - origin: AppConstants.DEEPLINKS.ORIGIN_DEEPLINK, - wcURL, - url, - }); - - expect(handled).toHaveBeenCalled(); - expect(Minimizer.goBack).toHaveBeenCalled(); - }); - - it('should displays RETURN_TO_DAPP_MODAL if params.redirect is truthy on ios >17', () => { + it('should displays RETURN_TO_DAPP_MODAL', () => { params.redirect = 'true'; // Mock Device.isIos() to return true jest.spyOn(Device, 'isIos').mockReturnValue(true); @@ -215,30 +158,6 @@ describe('handleUniversalLinks', () => { expect(mockNavigate).toHaveBeenCalledWith(Routes.MODAL.ROOT_MODAL_FLOW, { screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, }); - expect(Minimizer.goBack).not.toHaveBeenCalled(); - }); - - it('should NOT call Minimizer.goBack if params.redirect is falsy', () => { - params.redirect = ''; - - urlObj = { - hostname: AppConstants.MM_UNIVERSAL_LINK_HOST, - pathname: `/${ACTIONS.CONNECT}/additional/path`, - } as ReturnType['urlObj']; - - handleUniversalLink({ - instance, - handled, - urlObj, - params, - browserCallBack: mockBrowserCallBack, - origin, - wcURL, - url, - }); - - expect(handled).toHaveBeenCalled(); - expect(Minimizer.goBack).not.toHaveBeenCalled(); }); }); diff --git a/app/core/DeeplinkManager/ParseManager/handleUniversalLink.ts b/app/core/DeeplinkManager/ParseManager/handleUniversalLink.ts index b447dd64f37..4ac42b61e7c 100644 --- a/app/core/DeeplinkManager/ParseManager/handleUniversalLink.ts +++ b/app/core/DeeplinkManager/ParseManager/handleUniversalLink.ts @@ -1,18 +1,15 @@ +import { OriginatorInfo } from '@metamask/sdk-communication-layer'; import { ACTIONS, PREFIXES, PROTOCOLS } from '../../../constants/deeplinks'; +import Routes from '../../../constants/navigation/Routes'; +import Logger from '../../../util/Logger'; import AppConstants from '../../AppConstants'; -import { Minimizer } from '../../NativeModules'; import SDKConnect from '../../SDKConnect/SDKConnect'; import handleDeeplink from '../../SDKConnect/handlers/handleDeeplink'; import DevLogger from '../../SDKConnect/utils/DevLogger'; import WC2Manager from '../../WalletConnect/WalletConnectV2'; -import Logger from '../../../util/Logger'; import DeeplinkManager from '../DeeplinkManager'; -import extractURLParams from './extractURLParams'; -import { OriginatorInfo } from '@metamask/sdk-communication-layer'; import parseOriginatorInfo from '../parseOriginatorInfo'; -import Device from '../../../util/device'; -import { Platform } from 'react-native'; -import Routes from '../../../constants/navigation/Routes'; +import extractURLParams from './extractURLParams'; function handleUniversalLink({ instance, @@ -57,13 +54,9 @@ function handleUniversalLink({ if (action === ACTIONS.CONNECT) { if (params.redirect && origin === AppConstants.DEEPLINKS.ORIGIN_DEEPLINK) { - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - SDKConnect.getInstance().state.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } else { - Minimizer.goBack(); - } + SDKConnect.getInstance().state.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); } else if (params.channelId) { const protocolVersion = parseInt(params.v ?? '1', 10); diff --git a/app/core/EngineService/EngineService.ts b/app/core/EngineService/EngineService.ts index 6285908493f..cae00ab9c54 100644 --- a/app/core/EngineService/EngineService.ts +++ b/app/core/EngineService/EngineService.ts @@ -1,5 +1,5 @@ -import Engine from '../Engine'; -import AppConstants from '../AppConstants'; +import UntypedEngine from '../Engine'; +import { Engine as TypedEngine } from '../Engine/Engine'; import { getVaultFromBackup } from '../BackupVault'; import Logger from '../../util/Logger'; import { @@ -9,6 +9,7 @@ import { import { getTraceTags } from '../../util/sentry/tags'; import { trace, endTrace, TraceName, TraceOperation } from '../../util/trace'; import getUIStartupSpan from '../Performance/UIStartup'; +import { BACKGROUND_STATE_CHANGE_EVENT_NAMES } from '../Engine/constants'; import ReduxService from '../redux'; import NavigationService from '../NavigationService'; import Routes from '../../constants/navigation/Routes'; @@ -52,7 +53,8 @@ export class EngineService { parentContext: getUIStartupSpan(), tags: getTraceTags(reduxState), }); - const state = reduxState?.engine?.backgroundState || {}; + const state = reduxState?.engine?.backgroundState ?? {}; + const Engine = UntypedEngine; try { Logger.log(`${LOG_TAG}: Initializing Engine:`, { hasState: Object.keys(state).length > 0, @@ -60,7 +62,8 @@ export class EngineService { const metaMetricsId = await MetaMetrics.getInstance().getMetaMetricsId(); Engine.init(state, null, metaMetricsId); - this.updateControllers(Engine); + // `Engine.init()` call mutates `typeof UntypedEngine` to `TypedEngine` + this.updateControllers(Engine as unknown as TypedEngine); } catch (error) { Logger.error( error as Error, @@ -74,9 +77,7 @@ export class EngineService { endTrace({ name: TraceName.EngineInitialization }); }; - // TODO: Replace "any" with type - // eslint-disable-next-line @typescript-eslint/no-explicit-any - private updateControllers = (engine: any) => { + private updateControllers = (engine: TypedEngine) => { if (!engine.context) { Logger.error( new Error( @@ -86,125 +87,6 @@ export class EngineService { return; } - const controllers = [ - { - name: 'AddressBookController', - key: `${engine.context.AddressBookController.name}:stateChange`, - }, - { name: 'NftController', key: 'NftController:stateChange' }, - { - name: 'TokensController', - key: `${engine.context.TokensController.name}:stateChange`, - }, - { - name: 'KeyringController', - key: `${engine.context.KeyringController.name}:stateChange`, - }, - { - name: 'AccountTrackerController', - key: 'AccountTrackerController:stateChange', - }, - { - name: 'NetworkController', - key: AppConstants.NETWORK_STATE_CHANGE_EVENT, - }, - { - name: 'PhishingController', - key: `${engine.context.PhishingController.name}:stateChange`, - }, - { - name: 'PreferencesController', - key: `${engine.context.PreferencesController.name}:stateChange`, - }, - { - name: 'RemoteFeatureFlagController', - key: `${engine.context.RemoteFeatureFlagController.name}:stateChange`, - }, - { - name: 'SelectedNetworkController', - key: `${engine.context.SelectedNetworkController.name}:stateChange`, - }, - { - name: 'TokenBalancesController', - key: `${engine.context.TokenBalancesController.name}:stateChange`, - }, - { name: 'TokenRatesController', key: 'TokenRatesController:stateChange' }, - { - name: 'TransactionController', - key: `${engine.context.TransactionController.name}:stateChange`, - }, - { - name: 'SmartTransactionsController', - key: `${engine.context.SmartTransactionsController.name}:stateChange`, - }, - { - name: 'SwapsController', - key: `${engine.context.SwapsController.name}:stateChange`, - }, - { - name: 'TokenListController', - key: `${engine.context.TokenListController.name}:stateChange`, - }, - { - name: 'CurrencyRateController', - key: `${engine.context.CurrencyRateController.name}:stateChange`, - }, - { - name: 'GasFeeController', - key: `${engine.context.GasFeeController.name}:stateChange`, - }, - { - name: 'ApprovalController', - key: `${engine.context.ApprovalController.name}:stateChange`, - }, - ///: BEGIN:ONLY_INCLUDE_IF(preinstalled-snaps,external-snaps) - { - name: 'SnapController', - key: `${engine.context.SnapController.name}:stateChange`, - }, - { - name: 'SubjectMetadataController', - key: `${engine.context.SubjectMetadataController.name}:stateChange`, - }, - { - name: 'AuthenticationController', - key: 'AuthenticationController:stateChange', - }, - { - name: 'UserStorageController', - key: 'UserStorageController:stateChange', - }, - { - name: 'NotificationServicesController', - key: 'NotificationServicesController:stateChange', - }, - { - name: 'NotificationServicesPushController', - key: 'NotificationServicesPushController:stateChange', - }, - ///: END:ONLY_INCLUDE_IF - { - name: 'PermissionController', - key: `${engine.context.PermissionController.name}:stateChange`, - }, - { - name: 'LoggingController', - key: `${engine.context.LoggingController.name}:stateChange`, - }, - { - name: 'AccountsController', - key: `${engine.context.AccountsController.name}:stateChange`, - }, - { - name: 'PPOMController', - key: `${engine.context.PPOMController.name}:stateChange`, - }, - { - name: 'SignatureController', - key: `${engine.context.SignatureController.name}:stateChange`, - }, - ]; - engine.controllerMessenger.subscribeOnceIf( 'ComposableController:stateChange', () => { @@ -217,18 +99,20 @@ export class EngineService { () => !this.engineInitialized, ); - controllers.forEach((controller) => { - const { name, key } = controller; - const update_bg_state_cb = () => { - if (!engine.context.KeyringController.metadata.vault) { - Logger.log('keyringController vault missing for UPDATE_BG_STATE_KEY'); - } - ReduxService.store.dispatch({ - type: UPDATE_BG_STATE_KEY, - payload: { key: name }, - }); - }; - engine.controllerMessenger.subscribe(key, update_bg_state_cb); + const update_bg_state_cb = (controllerName: string) => { + if (!engine.context.KeyringController.metadata.vault) { + Logger.log('keyringController vault missing for UPDATE_BG_STATE_KEY'); + } + ReduxService.store.dispatch({ + type: UPDATE_BG_STATE_KEY, + payload: { key: controllerName }, + }); + }; + + BACKGROUND_STATE_CHANGE_EVENT_NAMES.forEach((eventName) => { + engine.controllerMessenger.subscribe(eventName, () => + update_bg_state_cb(eventName.split(':')[0]), + ); }); }; @@ -244,7 +128,8 @@ export class EngineService { async initializeVaultFromBackup(): Promise { const keyringState = await getVaultFromBackup(); const reduxState = ReduxService.store.getState(); - const state = reduxState?.engine?.backgroundState || {}; + const state = reduxState?.engine?.backgroundState ?? {}; + const Engine = UntypedEngine; // This ensures we create an entirely new engine await Engine.destroyEngine(); this.engineInitialized = false; diff --git a/app/core/Multichain/constants.ts b/app/core/Multichain/constants.ts index 82cdb75b368..132c0ca3530 100644 --- a/app/core/Multichain/constants.ts +++ b/app/core/Multichain/constants.ts @@ -1,4 +1,8 @@ export enum MultichainNetworks { BITCOIN = 'bip122:000000000019d6689c085ae165831e93', BITCOIN_TESTNET = 'bip122:000000000933ea01ad0ee984209779ba', + + SOLANA = 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp', + SOLANA_DEVNET = 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1', + SOLANA_TESTNET = 'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z', } diff --git a/app/core/Multichain/test/utils.test.ts b/app/core/Multichain/test/utils.test.ts index 0553a6ae20d..51d3bb96418 100644 --- a/app/core/Multichain/test/utils.test.ts +++ b/app/core/Multichain/test/utils.test.ts @@ -5,6 +5,9 @@ import { BtcMethod, EthScopes, BtcScopes, + SolScopes, + SolAccountType, + SolMethod, } from '@metamask/keyring-api'; import { InternalAccount } from '@metamask/keyring-internal-api'; import { @@ -13,6 +16,7 @@ import { isBtcMainnetAddress, isBtcTestnetAddress, getFormattedAddressFromInternalAccount, + isSolanaAccount, } from '../utils'; import { KeyringTypes } from '@metamask/keyring-controller'; import { toChecksumHexAddress } from '@metamask/controller-utils'; @@ -25,7 +29,7 @@ const MOCK_BTC_MAINNET_ADDRESS_2 = '1P5ZEDWTKTFGxQjZphgWPQUpe554WKDfHQ'; const MOCK_BTC_TESTNET_ADDRESS = 'tb1q63st8zfndjh00gf9hmhsdg7l8umuxudrj4lucp'; const MOCK_ETH_ADDRESS = '0xC4955C0d639D99699Bfd7Ec54d9FaFEe40e4D272'; -const SOL_ADDRESSES = '7EcDhSYGxXyscszYEp35KHN8vvw3svAuLKTzXwCFLtV'; +const SOL_ADDRESS = '7EcDhSYGxXyscszYEp35KHN8vvw3svAuLKTzXwCFLtV'; const mockEthEOAAccount: InternalAccount = { address: MOCK_ETH_ADDRESS, @@ -79,7 +83,12 @@ const mockBTCAccount: InternalAccount = { name: 'Bitcoin Account', importTime: 1684232000456, keyring: { - type: KeyringTypes.hd, + type: KeyringTypes.snap, + }, + snap: { + id: 'npm:"@metamask/bitcoin-wallet-snap', + name: 'Bitcoin Wallet Snap', + enabled: true, }, }, options: {}, @@ -87,6 +96,27 @@ const mockBTCAccount: InternalAccount = { type: BtcAccountType.P2wpkh, }; +const mockSolAccount: InternalAccount = { + address: SOL_ADDRESS, + id: '1', + type: SolAccountType.DataAccount, + methods: [SolMethod.SendAndConfirmTransaction], + options: {}, + metadata: { + name: 'Solana Account', + importTime: 1684232000456, + keyring: { + type: KeyringTypes.snap, + }, + snap: { + id: 'npm:"@metamask/solana-wallet-snap', + name: 'Solana Wallet Snap', + enabled: true, + }, + }, + scopes: [SolScopes.Mainnet, SolScopes.Testnet, SolScopes.Devnet], +}; + describe('MultiChain utils', () => { describe('isEthAccount', () => { it('returns true for EOA accounts', () => { @@ -129,7 +159,7 @@ describe('MultiChain utils', () => { expect(isBtcMainnetAddress(MOCK_ETH_ADDRESS)).toBe(false); }); it('returns false for SOL addresses', () => { - expect(isBtcMainnetAddress(SOL_ADDRESSES)).toBe(false); + expect(isBtcMainnetAddress(SOL_ADDRESS)).toBe(false); }); }); @@ -147,9 +177,21 @@ describe('MultiChain utils', () => { expect(isBtcTestnetAddress(MOCK_ETH_ADDRESS)).toBe(false); }); it('returns false for SOL addresses', () => { - expect(isBtcTestnetAddress(SOL_ADDRESSES)).toBe(false); + expect(isBtcTestnetAddress(SOL_ADDRESS)).toBe(false); }); }); + + describe('isSolanaAccount', () => { + it('returns true for Solana accounts', () => { + expect(isSolanaAccount(mockSolAccount)).toBe(true); + }); + + it('returns false for non-Solana accounts', () => { + expect(isSolanaAccount(mockEthEOAAccount)).toBe(false); + expect(isSolanaAccount(mockBTCAccount)).toBe(false); + }); + }); + describe('getFormattedAddressFromInternalAccount', () => { it('returns checksummed address for ETH EOA accounts', () => { const formatted = diff --git a/app/core/Multichain/utils.ts b/app/core/Multichain/utils.ts index b853c207f97..199391044c5 100644 --- a/app/core/Multichain/utils.ts +++ b/app/core/Multichain/utils.ts @@ -8,6 +8,7 @@ import { } from '@metamask/keyring-api'; ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) import { validate, Network } from 'bitcoin-address-validation'; +import { isAddress as isSolanaAddress } from '@solana/addresses'; ///: END:ONLY_INCLUDE_IF /** @@ -77,4 +78,16 @@ export function isBtcMainnetAddress(address: string): boolean { export function isBtcTestnetAddress(address: string): boolean { return validate(address, Network.testnet); } + +/** + * Returns whether an address is a valid Solana address, specifically an account's. + * Derived addresses (like Program's) will return false. + * See: https://stackoverflow.com/questions/71200948/how-can-i-validate-a-solana-wallet-address-with-web3js + * + * @param address - The address to check. + * @returns `true` if the address is a valid Solana address, `false` otherwise. + */ +export function isSolanaAccount(account: InternalAccount): boolean { + return isSolanaAddress(account.address); +} ///: END:ONLY_INCLUDE_IF diff --git a/app/core/NotificationManager.js b/app/core/NotificationManager.js index ee50c425e43..9588923a4d0 100644 --- a/app/core/NotificationManager.js +++ b/app/core/NotificationManager.js @@ -234,14 +234,16 @@ class NotificationManager { // Detect assets and tokens for ERC20 txs // Detect assets for ERC721 txs // right after a transaction was confirmed - const pollPromises = [AccountTrackerController.refresh()]; + const pollPromises = [ + AccountTrackerController.refresh(), + TokenBalancesController.updateBalancesByChainId({ + chainId: transactionMeta.chainId, + }), + ]; switch (originalTransaction.assetType) { case 'ERC20': { pollPromises.push( ...[ - TokenBalancesController.updateBalancesByChainId({ - chainId: transactionMeta.chainId, - }), TokenDetectionController.detectTokens({ chainIds: [transactionMeta.chainId], }), @@ -430,10 +432,7 @@ class NotificationManager { */ gotIncomingTransaction = async (incomingTransactions) => { try { - const { - AccountTrackerController, - AccountsController, - } = Engine.context; + const { AccountTrackerController, AccountsController } = Engine.context; const selectedInternalAccount = AccountsController.getSelectedAccount(); @@ -446,13 +445,14 @@ class NotificationManager { // If a TX has been confirmed more than 10 min ago, it's considered old const oldestTimeAllowed = Date.now() - 1000 * 60 * 10; - const filteredTransactions = incomingTransactions.reverse() + const filteredTransactions = incomingTransactions + .reverse() .filter( (tx) => safeToChecksumAddress(tx.txParams?.to) === selectedInternalAccountChecksummedAddress && safeToChecksumAddress(tx.txParams?.from) !== - selectedInternalAccountChecksummedAddress && + selectedInternalAccountChecksummedAddress && tx.status === TransactionStatus.confirmed && tx.time > oldestTimeAllowed, ); @@ -462,7 +462,9 @@ class NotificationManager { } const nonce = hexToBN(filteredTransactions[0].txParams.nonce).toString(); - const amount = renderFromWei(hexToBN(filteredTransactions[0].txParams.value)); + const amount = renderFromWei( + hexToBN(filteredTransactions[0].txParams.value), + ); const id = filteredTransactions[0]?.id; this._showNotification({ @@ -480,7 +482,11 @@ class NotificationManager { // Update balance upon detecting a new incoming transaction AccountTrackerController.refresh(); } catch (error) { - Logger.log('Notifications', 'Error while processing incoming transaction', error); + Logger.log( + 'Notifications', + 'Error while processing incoming transaction', + error, + ); } }; } diff --git a/app/core/SDKConnect/AndroidSDK/AndroidService.ts b/app/core/SDKConnect/AndroidSDK/AndroidService.ts index d713a2397dc..727ab9df04a 100644 --- a/app/core/SDKConnect/AndroidSDK/AndroidService.ts +++ b/app/core/SDKConnect/AndroidSDK/AndroidService.ts @@ -2,7 +2,6 @@ import { NetworkController } from '@metamask/network-controller'; import { EventEmitter2 } from 'eventemitter2'; import { NativeModules } from 'react-native'; import Engine from '../../Engine'; -import { Minimizer } from '../../NativeModules'; import { RPCQueueManager } from '../RPCQueueManager'; import { @@ -36,6 +35,7 @@ import { DappClient, DappConnections } from './dapp-sdk-types'; import getDefaultBridgeParams from './getDefaultBridgeParams'; import { AccountsController } from '@metamask/accounts-controller'; import { toChecksumHexAddress } from '@metamask/controller-utils'; +import Routes from '../../../constants/navigation/Routes'; export default class AndroidService extends EventEmitter2 { public communicationClient = NativeModules.CommunicationClient; @@ -233,7 +233,9 @@ export default class AndroidService extends EventEmitter2 { `AndroidService::clients_connected error failed sending jsonrpc error to client`, ); }); - Minimizer.goBack(); + SDKConnect.getInstance().state.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); return; } diff --git a/app/core/SDKConnect/AndroidSDK/AndroidService/sendMessage.ts b/app/core/SDKConnect/AndroidSDK/AndroidService/sendMessage.ts index f9b6c6642f6..d46b4b22e6b 100644 --- a/app/core/SDKConnect/AndroidSDK/AndroidService/sendMessage.ts +++ b/app/core/SDKConnect/AndroidSDK/AndroidService/sendMessage.ts @@ -1,13 +1,12 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ -import Engine from '../../../Engine'; -import { Minimizer } from '../../../NativeModules'; +import { AccountsController } from '@metamask/accounts-controller'; import Logger from '../../../../util/Logger'; -import { wait } from '../../utils/wait.util'; -import AndroidService from '../AndroidService'; +import Engine from '../../../Engine'; import { METHODS_TO_DELAY, RPC_METHODS } from '../../SDKConnectConstants'; import handleBatchRpcResponse from '../../handlers/handleBatchRpcResponse'; import DevLogger from '../../utils/DevLogger'; -import { AccountsController } from '@metamask/accounts-controller'; +import { wait } from '../../utils/wait.util'; +import AndroidService from '../AndroidService'; async function sendMessage( instance: AndroidService, @@ -120,7 +119,6 @@ async function sendMessage( } DevLogger.log(`AndroidService::sendMessage empty --- goBack()`); - Minimizer.goBack(); } catch (error) { Logger.log(error, `AndroidService:: error waiting for empty rpc queue`); } diff --git a/app/core/SDKConnect/Connection/EventListenersHandlers/handleClientsReady.ts b/app/core/SDKConnect/Connection/EventListenersHandlers/handleClientsReady.ts index 7f7e6a19625..3dba91c3744 100644 --- a/app/core/SDKConnect/Connection/EventListenersHandlers/handleClientsReady.ts +++ b/app/core/SDKConnect/Connection/EventListenersHandlers/handleClientsReady.ts @@ -1,14 +1,12 @@ import { OriginatorInfo } from '@metamask/sdk-communication-layer'; -import { Platform } from 'react-native'; import Routes from '../../../../constants/navigation/Routes'; +import AppConstants from '../../../../core/AppConstants'; import Logger from '../../../../util/Logger'; -import Device from '../../../../util/device'; import Engine from '../../../Engine'; import SDKConnect, { approveHostProps } from '../../SDKConnect'; import handleConnectionReady from '../../handlers/handleConnectionReady'; import DevLogger from '../../utils/DevLogger'; import { Connection } from '../Connection'; -import AppConstants from '../../../../core/AppConstants'; function handleClientsReady({ instance, @@ -48,12 +46,9 @@ function handleClientsReady({ instance.trigger === 'deeplink' && instance.origin !== AppConstants.DEEPLINKS.ORIGIN_QR_CODE ) { - // Check for iOS 17 and above to use a custom modal, as Minimizer.goBack() is incompatible with these versions - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - instance.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } + instance.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); } }, disapprove, diff --git a/app/core/SDKConnect/ConnectionManagement/connectToChannel.ts b/app/core/SDKConnect/ConnectionManagement/connectToChannel.ts index ffc3fb6c0db..4ccf8ff18aa 100644 --- a/app/core/SDKConnect/ConnectionManagement/connectToChannel.ts +++ b/app/core/SDKConnect/ConnectionManagement/connectToChannel.ts @@ -1,21 +1,18 @@ import { MessageType, SendAnalytics, TrackingEvents } from '@metamask/sdk-communication-layer'; -import { Platform } from 'react-native'; import { resetConnections } from '../../../../app/actions/sdk'; import { store } from '../../../../app/store'; import Routes from '../../../constants/navigation/Routes'; import { selectChainId } from '../../../selectors/networkController'; -import Device from '../../../util/device'; +import Logger from '../../../util/Logger'; +import AppConstants from '../../AppConstants'; import Engine from '../../Engine'; -import { Minimizer } from '../../NativeModules'; import { getPermittedAccounts } from '../../Permissions'; import { Connection, ConnectionProps } from '../Connection'; import checkPermissions from '../handlers/checkPermissions'; import { DEFAULT_SESSION_TIMEOUT_MS } from '../SDKConnectConstants'; import DevLogger from '../utils/DevLogger'; -import { SDKConnect } from './../SDKConnect'; import { wait, waitForCondition } from '../utils/wait.util'; -import Logger from '../../../util/Logger'; -import AppConstants from '../../AppConstants'; +import { SDKConnect } from './../SDKConnect'; import packageJSON from '../../../../package.json'; const { version: walletVersion } = packageJSON; @@ -166,15 +163,9 @@ async function connectToChannel({ // cleanup connection await wait(100); // Add delay for connect modal to be fully closed await instance.updateSDKLoadingState({ channelId: id, loading: false }); - // Check for iOS 17 and above to use a custom modal, as Minimizer.goBack() is incompatible with these versions - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - connected.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } else { - DevLogger.log(`[handleSendMessage] goBack()`); - await Minimizer.goBack(); - } + connected.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); return; } } @@ -239,14 +230,10 @@ async function connectToChannel({ connected.trigger === AppConstants.DEEPLINKS.ORIGIN_DEEPLINK && connected.origin === AppConstants.DEEPLINKS.ORIGIN_DEEPLINK ) { - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - DevLogger.log(`[handleSendMessage] display RETURN_TO_DAPP_MODAL`); - connected.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } else { - await Minimizer.goBack(); - } + DevLogger.log(`[handleSendMessage] display RETURN_TO_DAPP_MODAL`); + connected.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); } } } catch (error) { diff --git a/app/core/SDKConnect/handlers/handleSendMessage.test.ts b/app/core/SDKConnect/handlers/handleSendMessage.test.ts index 07406a660a9..ee01e7cc5fb 100644 --- a/app/core/SDKConnect/handlers/handleSendMessage.test.ts +++ b/app/core/SDKConnect/handlers/handleSendMessage.test.ts @@ -1,6 +1,5 @@ /* eslint-disable @typescript-eslint/no-empty-function */ import Device from '../../../util/device'; -import { Minimizer } from '../../NativeModules'; import { Connection } from '../Connection'; import { RPC_METHODS } from '../SDKConnectConstants'; import DevLogger from '../utils/DevLogger'; @@ -27,7 +26,6 @@ describe('handleSendMessage', () => { const mockDevLogger = DevLogger.log as jest.MockedFunction< typeof DevLogger.log >; - const mockMinimizer = Minimizer as jest.MockedFunction; const mockSendMessage = jest.fn(); const mockSetLoading = jest.fn(); @@ -203,20 +201,6 @@ describe('handleSendMessage', () => { mockCanRedirect.mockReturnValue(true); mockConnection.trigger = 'deeplink'; }); - it('should handle deeplink trigger', async () => { - mockConnection.trigger = 'deeplink'; - - await handleSendMessage({ - msg: { - data: { - id: 1, - }, - }, - connection: mockConnection, - }); - - expect(mockMinimizer.goBack).toHaveBeenCalled(); - }); it('should wait for specific methods', async () => { mockRpcQueueManagerGetId.mockReturnValue(RPC_METHODS.METAMASK_BATCH); @@ -254,39 +238,6 @@ describe('handleSendMessage', () => { }); }); }); - - describe('When redirection is not allowed', () => { - beforeEach(() => { - mockRpcQueueManagerGetId.mockReturnValue('1'); - mockCanRedirect.mockReturnValue(false); - }); - it('should skip goBack if canRedirect is false', async () => { - await handleSendMessage({ - msg: { - data: { - id: 1, - }, - }, - connection: mockConnection, - }); - - expect(mockMinimizer.goBack).not.toHaveBeenCalled(); - }); - it('should skip goBack if trigger is not deeplink', async () => { - mockConnection.trigger = 'resume'; - - await handleSendMessage({ - msg: { - data: { - id: 1, - }, - }, - connection: mockConnection, - }); - - expect(mockMinimizer.goBack).not.toHaveBeenCalled(); - }); - }); }); describe('Final state update', () => { diff --git a/app/core/SDKConnect/handlers/handleSendMessage.ts b/app/core/SDKConnect/handlers/handleSendMessage.ts index d8790dfa0df..322e61e0712 100644 --- a/app/core/SDKConnect/handlers/handleSendMessage.ts +++ b/app/core/SDKConnect/handlers/handleSendMessage.ts @@ -1,9 +1,6 @@ -import { Platform } from 'react-native'; import Routes from '../../../../app/constants/navigation/Routes'; import AppConstants from '../../../../app/core/AppConstants'; import Logger from '../../../util/Logger'; -import Device from '../../../util/device'; -import { Minimizer } from '../../NativeModules'; import { Connection } from '../Connection'; import { METHODS_TO_DELAY, RPC_METHODS } from '../SDKConnectConstants'; import DevLogger from '../utils/DevLogger'; @@ -140,16 +137,9 @@ export const handleSendMessage = async ({ // Trigger should be removed after redirect so we don't redirect the dapp next time and go back to nothing. connection.trigger = 'resume'; - - // Check for iOS 17 and above to use a custom modal, as Minimizer.goBack() is incompatible with these versions - if (Device.isIos() && parseInt(Platform.Version as string) >= 17) { - connection.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { - screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, - }); - } else { - DevLogger.log(`[handleSendMessage] goBack()`); - await Minimizer.goBack(); - } + connection.navigation?.navigate(Routes.MODAL.ROOT_MODAL_FLOW, { + screen: Routes.SHEET.RETURN_TO_DAPP_MODAL, + }); } catch (err) { Logger.log( err, diff --git a/app/core/SnapKeyring/BitcoinWalletSnap.ts b/app/core/SnapKeyring/BitcoinWalletSnap.ts index b3da42ea99f..8c9780ca7f7 100644 --- a/app/core/SnapKeyring/BitcoinWalletSnap.ts +++ b/app/core/SnapKeyring/BitcoinWalletSnap.ts @@ -1,3 +1,4 @@ +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) import { SnapId } from '@metamask/snaps-sdk'; import { Sender } from '@metamask/keyring-snap-client'; import { HandlerType } from '@metamask/snaps-utils'; @@ -28,3 +29,4 @@ export class BitcoinWalletSnapSender implements Sender { request, })) as Json; } +///: END:ONLY_INCLUDE_IF diff --git a/app/core/SnapKeyring/SolanaWalletSnap.ts b/app/core/SnapKeyring/SolanaWalletSnap.ts new file mode 100644 index 00000000000..d95a0b3a170 --- /dev/null +++ b/app/core/SnapKeyring/SolanaWalletSnap.ts @@ -0,0 +1,31 @@ +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) +import { SnapId } from '@metamask/snaps-sdk'; +import { Sender } from '@metamask/keyring-snap-client'; +import { HandlerType } from '@metamask/snaps-utils'; +import { Json, JsonRpcRequest } from '@metamask/utils'; +// This dependency is still installed as part of the `package.json`, however +// the Snap is being pre-installed only for Flask build (for the moment). +import SolanaWalletSnap from '@metamask/solana-wallet-snap/dist/preinstalled-snap.json'; +import { handleSnapRequest } from '../Snaps/utils'; +import Engine from '../Engine'; + +export const SOLANA_WALLET_SNAP_ID: SnapId = SolanaWalletSnap.snapId as SnapId; + +export const SOLANA_WALLET_NAME: string = + SolanaWalletSnap.manifest.proposedName; + +const controllerMessenger = Engine.controllerMessenger; + +export class SolanaWalletSnapSender implements Sender { + // We assume the caller of this module is aware of this. If we try to use this module + // without having the pre-installed Snap, this will likely throw an error in + // the `handleSnapRequest` action. + send = async (request: JsonRpcRequest): Promise => + (await handleSnapRequest(controllerMessenger, { + origin: 'metamask', + snapId: SOLANA_WALLET_SNAP_ID, + handler: HandlerType.OnKeyringRequest, + request, + })) as Json; +} +///: END:ONLY_INCLUDE_IF diff --git a/app/images/solana-logo.png b/app/images/solana-logo.png new file mode 100644 index 00000000000..546c9d797ba Binary files /dev/null and b/app/images/solana-logo.png differ diff --git a/app/lib/ppom/ppom-util.test.ts b/app/lib/ppom/ppom-util.test.ts index 6d0ab6bc03d..5eb6ade7406 100644 --- a/app/lib/ppom/ppom-util.test.ts +++ b/app/lib/ppom/ppom-util.test.ts @@ -480,4 +480,14 @@ describe('PPOM Utils', () => { }, ); }); + + describe('clearSignatureSecurityAlertResponse', () => { + it('set call action to set securityAlertResponse for signature in redux state to undefined', async () => { + const spy = jest.spyOn(SignatureRequestActions, 'default'); + PPOMUtil.clearSignatureSecurityAlertResponse(); + expect(spy).toHaveBeenCalledTimes(1); + // function call with no arguments + expect(spy).toHaveBeenCalledWith(); + }); + }); }); diff --git a/app/lib/ppom/ppom-util.ts b/app/lib/ppom/ppom-util.ts index b76d4bf8f4b..14c3997107b 100644 --- a/app/lib/ppom/ppom-util.ts +++ b/app/lib/ppom/ppom-util.ts @@ -251,4 +251,12 @@ function normalizeRequest(request: PPOMRequest): PPOMRequest { }; } -export default { validateRequest, isChainSupported }; +function clearSignatureSecurityAlertResponse() { + store.dispatch(setSignatureRequestSecurityAlertResponse()); +} + +export default { + validateRequest, + isChainSupported, + clearSignatureSecurityAlertResponse, +}; diff --git a/app/lib/snaps/preinstalled-snaps.ts b/app/lib/snaps/preinstalled-snaps.ts index eee160e1148..6b81b326ca1 100644 --- a/app/lib/snaps/preinstalled-snaps.ts +++ b/app/lib/snaps/preinstalled-snaps.ts @@ -1,13 +1,15 @@ import type { PreinstalledSnap } from '@metamask/snaps-controllers'; import MessageSigningSnap from '@metamask/message-signing-snap/dist/preinstalled-snap.json'; ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) -import BitcoinSnap from '@metamask/bitcoin-wallet-snap/dist/preinstalled-snap.json'; +import BitcoinWalletSnap from '@metamask/bitcoin-wallet-snap/dist/preinstalled-snap.json'; +import SolanaWalletSnap from '@metamask/solana-wallet-snap/dist/preinstalled-snap.json'; ///: END:ONLY_INCLUDE_IF const PREINSTALLED_SNAPS: readonly PreinstalledSnap[] = Object.freeze([ MessageSigningSnap as PreinstalledSnap, ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) - BitcoinSnap as unknown as PreinstalledSnap, + BitcoinWalletSnap as unknown as PreinstalledSnap, + SolanaWalletSnap as unknown as PreinstalledSnap, ///: END:ONLY_INCLUDE_IF ]); diff --git a/app/reducers/multichain/index.ts b/app/reducers/multichain/index.ts index 667897d9023..64027883d97 100644 --- a/app/reducers/multichain/index.ts +++ b/app/reducers/multichain/index.ts @@ -1,10 +1,13 @@ +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) import { MultichainSettingsState } from '../../actions/multichain/state'; export const initialState: MultichainSettingsState = { - bitcoinSupportEnabled: false, - bitcoinTestnetSupportEnabled: false, + bitcoinSupportEnabled: true, + bitcoinTestnetSupportEnabled: true, + solanaSupportEnabled: true, }; const multichainReducer = (state = initialState) => state; export default multichainReducer; +///: END:ONLY_INCLUDE_IF diff --git a/app/selectors/accountsController.test.ts b/app/selectors/accountsController.test.ts index 92598446eef..3c33cdf3af9 100644 --- a/app/selectors/accountsController.test.ts +++ b/app/selectors/accountsController.test.ts @@ -192,42 +192,42 @@ describe('Accounts Controller Selectors', () => { }); }); -describe('Bitcoin Account Selectors', () => { - function getStateWithAccount(account: InternalAccount) { - return { - engine: { - backgroundState: { - AccountsController: { - internalAccounts: { - accounts: { - [account.id]: account, - }, - selectedAccount: account.id, +const MOCK_BTC_MAINNET_ADDRESS = 'bc1qkv7xptmd7ejmnnd399z9p643updvula5j4g4nd'; +const MOCK_BTC_TESTNET_ADDRESS = 'tb1q63st8zfndjh00gf9hmhsdg7l8umuxudrj4lucp'; + +function getStateWithAccount(account: InternalAccount) { + return { + engine: { + backgroundState: { + AccountsController: { + internalAccounts: { + accounts: { + [account.id]: account, }, + selectedAccount: account.id, }, - KeyringController: MOCK_KEYRING_CONTROLLER, }, + KeyringController: MOCK_KEYRING_CONTROLLER, }, - } as RootState; - } - - const MOCK_BTC_MAINNET_ADDRESS = 'bc1qkv7xptmd7ejmnnd399z9p643updvula5j4g4nd'; - const MOCK_BTC_TESTNET_ADDRESS = 'tb1q63st8zfndjh00gf9hmhsdg7l8umuxudrj4lucp'; + }, + } as RootState; +} - const btcMainnetAccount = createMockInternalAccount( - MOCK_BTC_MAINNET_ADDRESS, - 'Bitcoin Account', - KeyringTypes.snap, - BtcAccountType.P2wpkh, - ); +const btcMainnetAccount = createMockInternalAccount( + MOCK_BTC_MAINNET_ADDRESS, + 'Bitcoin Account', + KeyringTypes.snap, + BtcAccountType.P2wpkh, +); - const btcTestnetAccount = createMockInternalAccount( - MOCK_BTC_TESTNET_ADDRESS, - 'Bitcoin Testnet Account', - KeyringTypes.snap, - BtcAccountType.P2wpkh, - ); +const btcTestnetAccount = createMockInternalAccount( + MOCK_BTC_TESTNET_ADDRESS, + 'Bitcoin Testnet Account', + KeyringTypes.snap, + BtcAccountType.P2wpkh, +); +describe('Bitcoin Account Selectors', () => { describe('hasCreatedBtcMainnetAccount', () => { it('returns true when a BTC mainnet account exists', () => { const state = getStateWithAccount(btcMainnetAccount); diff --git a/app/selectors/browser.ts b/app/selectors/browser.ts new file mode 100644 index 00000000000..458cf90d6ba --- /dev/null +++ b/app/selectors/browser.ts @@ -0,0 +1,17 @@ +import { RootState } from '../reducers'; +import { createDeepEqualSelector } from './util'; + +interface SiteItem { + url: string; + name: string; +} + +export const selectBrowserHistoryWithType = createDeepEqualSelector( + (state: RootState) => state.browser.history, + (history: SiteItem[]) => history.map(item => ({...item, type: 'recents'})).reverse() +); + +export const selectBrowserBookmarksWithType = createDeepEqualSelector( + (state: RootState) => state.bookmarks, + (bookmarks: SiteItem[]) => bookmarks.map(item => ({...item, type: 'favorites'})) +); \ No newline at end of file diff --git a/app/selectors/multichain.test.ts b/app/selectors/multichain.test.ts index 276517a18cd..ca00cdec667 100644 --- a/app/selectors/multichain.test.ts +++ b/app/selectors/multichain.test.ts @@ -4,6 +4,7 @@ import { selectAccountTokensAcrossChains, selectIsBitcoinSupportEnabled, selectIsBitcoinTestnetSupportEnabled, + selectIsSolanaSupportEnabled, } from './multichain'; describe('Multichain Selectors', () => { @@ -92,6 +93,7 @@ describe('Multichain Selectors', () => { multichainSettings: { bitcoinSupportEnabled: true, bitcoinTestnetSupportEnabled: false, + solanaSupportEnabled: true, }, } as unknown as RootState; @@ -176,7 +178,7 @@ describe('Multichain Selectors', () => { }); }); - describe('Bitcoin Support Flags', () => { + describe('Multichain Support Flags', () => { it('should return bitcoin support enabled state', () => { expect(selectIsBitcoinSupportEnabled(mockState)).toBe(true); }); @@ -184,5 +186,8 @@ describe('Multichain Selectors', () => { it('should return bitcoin testnet support enabled state', () => { expect(selectIsBitcoinTestnetSupportEnabled(mockState)).toBe(false); }); + it('should return Solana support enabled state', () => { + expect(selectIsSolanaSupportEnabled(mockState)).toBe(true); + }); }); }); diff --git a/app/selectors/multichain.ts b/app/selectors/multichain.ts index c02a017316f..08ee52a744c 100644 --- a/app/selectors/multichain.ts +++ b/app/selectors/multichain.ts @@ -1,7 +1,6 @@ import { createSelector } from 'reselect'; import { Hex } from '@metamask/utils'; import { Token, getNativeTokenAddress } from '@metamask/assets-controllers'; -import { RootState } from '../reducers'; import { selectSelectedInternalAccountFormattedAddress, selectSelectedInternalAccount, @@ -17,6 +16,10 @@ import { selectCurrentCurrency, } from './currencyRateController'; +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) +import { RootState } from '../reducers'; +///: END:ONLY_INCLUDE_IF + interface NativeTokenBalance { balance: string; stakedBalance: string; @@ -220,6 +223,7 @@ export const selectAccountTokensAcrossChains = createSelector( }, ); +///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) /** * Get the state of the `bitcoinSupportEnabled` flag. * @@ -239,3 +243,14 @@ export function selectIsBitcoinSupportEnabled(state: RootState) { export function selectIsBitcoinTestnetSupportEnabled(state: RootState) { return state.multichainSettings.bitcoinTestnetSupportEnabled; } + +/** + * Get the state of the `solanaSupportEnabled` flag. + * + * @param {*} state + * @returns The state of the `solanaSupportEnabled` flag. + */ +export function selectIsSolanaSupportEnabled(state: RootState) { + return state.multichainSettings.solanaSupportEnabled; +} +///: END:ONLY_INCLUDE_IF diff --git a/app/store/index.ts b/app/store/index.ts index 7dca2b0e1c8..03e433ba75d 100644 --- a/app/store/index.ts +++ b/app/store/index.ts @@ -1,4 +1,4 @@ -import { Store } from 'redux'; +import { AnyAction } from 'redux'; import { configureStore } from '@reduxjs/toolkit'; import { persistStore, persistReducer } from 'redux-persist'; import createSagaMiddleware from 'redux-saga'; @@ -12,20 +12,17 @@ import thunk from 'redux-thunk'; import persistConfig from './persistConfig'; import getUIStartupSpan from '../core/Performance/UIStartup'; -import ReduxService from '../core/redux'; +import ReduxService, { ReduxStore } from '../core/redux'; import { onPersistedDataLoaded } from '../actions/user'; -import { validatePostMigrationState } from './validateMigration/validateMigration'; -// TODO: Improve type safety by using real Action types instead of `any` -// TODO: Replace "any" with type -// eslint-disable-next-line @typescript-eslint/no-explicit-any -const pReducer = persistReducer(persistConfig, rootReducer); +// TODO: Improve type safety by using real Action types instead of `AnyAction` +const pReducer = persistReducer( + persistConfig, + rootReducer, +); -// TODO: Fix the Action type. It's set to `any` now because some of the -// TypeScript reducers have invalid actions -// TODO: Replace "any" with type -// eslint-disable-next-line @typescript-eslint/no-explicit-any, import/no-mutable-exports -let store: Store, persistor; +// eslint-disable-next-line import/no-mutable-exports +let store: ReduxStore, persistor; const createStoreAndPersistor = async () => { trace({ name: TraceName.StoreInit, @@ -70,10 +67,6 @@ const createStoreAndPersistor = async () => { endTrace({ name: TraceName.StoreInit }); // Signal that persisted data has been loaded store.dispatch(onPersistedDataLoaded()); - - // validate the state after migration - const currentState = store.getState(); - validatePostMigrationState(currentState); }; persistor = persistStore(store, null, onPersistComplete); diff --git a/app/store/migrations/index.test.ts b/app/store/migrations/index.test.ts index ce765e41efb..e3653f04df8 100644 --- a/app/store/migrations/index.test.ts +++ b/app/store/migrations/index.test.ts @@ -71,6 +71,37 @@ describe('asyncifyMigrations', () => { expect(isPromiseMigrations).toEqual(true); }); + + it('should only call validation callback after all migrations complete', async () => { + const mockValidation = jest.fn(); + const testMigrationList = { + 0: synchronousMigration, + 1: asyncMigration, + 2: synchronousMigration, + }; + + // Convert all migrations to async with validation callback + const asyncMigrations = asyncifyMigrations( + testMigrationList, + mockValidation, + ); + + // Run migrations in sequence and verify validation is only called after the highest migration + let state: PersistedState = initialState; + + for (const migrationKey in asyncMigrations) { + state = (await asyncMigrations[migrationKey](state)) as PersistedState; + + if (Number(migrationKey) === 2) { + // Should be called exactly once after the last migration + expect(mockValidation).toHaveBeenCalledTimes(1); + expect(mockValidation).toHaveBeenCalledWith(state); + } else { + // Should not be called for any other migration + expect(mockValidation).not.toHaveBeenCalled(); + } + } + }); }); describe('migrations', () => { diff --git a/app/store/migrations/index.ts b/app/store/migrations/index.ts index 43d15139357..94522a41af3 100644 --- a/app/store/migrations/index.ts +++ b/app/store/migrations/index.ts @@ -67,6 +67,8 @@ import migration63 from './063'; import migration64 from './064'; import migration65 from './065'; import migration66 from './066'; +import { validatePostMigrationState } from '../validateMigration/validateMigration'; +import { RootState } from '../../reducers'; type MigrationFunction = (state: unknown) => unknown; type AsyncMigrationFunction = (state: unknown) => Promise; @@ -149,7 +151,10 @@ export const migrationList: MigrationsList = { }; // Enable both synchronous and asynchronous migrations -export const asyncifyMigrations = (inputMigrations: MigrationsList) => +export const asyncifyMigrations = ( + inputMigrations: MigrationsList, + onMigrationsComplete?: (state: unknown) => void, +) => Object.entries(inputMigrations).reduce( (newMigrations, [migrationNumber, migrationFunction]) => { // Handle migrations as async @@ -157,7 +162,17 @@ export const asyncifyMigrations = (inputMigrations: MigrationsList) => incomingState: Promise | unknown, ) => { const state = await incomingState; - return migrationFunction(state); + const migratedState = await migrationFunction(state); + + // If this is the last migration and we have a callback, run it + if ( + onMigrationsComplete && + Number(migrationNumber) === Object.keys(inputMigrations).length - 1 + ) { + onMigrationsComplete(migratedState); + } + + return migratedState; }; newMigrations[migrationNumber] = asyncMigration; return newMigrations; @@ -166,9 +181,9 @@ export const asyncifyMigrations = (inputMigrations: MigrationsList) => ); // Convert all migrations to async -export const migrations = asyncifyMigrations( - migrationList, -) as unknown as MigrationManifest; +export const migrations = asyncifyMigrations(migrationList, (state) => { + validatePostMigrationState(state as RootState); +}) as unknown as MigrationManifest; // The latest (i.e. highest) version number. export const version = Object.keys(migrations).length - 1; diff --git a/app/store/persistConfig.ts b/app/store/persistConfig.ts index 5b8b4358134..81159b944aa 100644 --- a/app/store/persistConfig.ts +++ b/app/store/persistConfig.ts @@ -3,7 +3,7 @@ import AsyncStorage from '@react-native-async-storage/async-storage'; import FilesystemStorage from 'redux-persist-filesystem-storage'; import autoMergeLevel2 from 'redux-persist/lib/stateReconciler/autoMergeLevel2'; import { RootState } from '../reducers'; -import { migrations, version } from './migrations'; +import { version, migrations } from './migrations'; import Logger from '../util/Logger'; import Device from '../util/device'; import { UserState } from '../reducers/user'; diff --git a/app/store/validateMigration/validateMigration.test.ts b/app/store/validateMigration/validateMigration.test.ts index 32375b18917..2672cfcb18b 100644 --- a/app/store/validateMigration/validateMigration.test.ts +++ b/app/store/validateMigration/validateMigration.test.ts @@ -7,6 +7,7 @@ import { validateEngineInitialized } from './engineBackgroundState'; jest.mock('../../util/Logger', () => ({ error: jest.fn(), + log: jest.fn(), })); jest.mock('./accountsController'); @@ -23,6 +24,14 @@ describe('validatePostMigrationState', () => { (validateKeyringController as jest.Mock).mockReturnValue([]); }); + it('logs when validation starts', () => { + const mockState = {} as RootState; + validatePostMigrationState(mockState); + + expect(Logger.log).toHaveBeenCalledWith('Migration validation started'); + expect(Logger.log).toHaveBeenCalledTimes(1); + }); + it('runs all validation checks', () => { const mockState = {} as RootState; validatePostMigrationState(mockState); diff --git a/app/store/validateMigration/validateMigration.ts b/app/store/validateMigration/validateMigration.ts index 0638d65b680..36b1ea508ed 100644 --- a/app/store/validateMigration/validateMigration.ts +++ b/app/store/validateMigration/validateMigration.ts @@ -18,6 +18,7 @@ const checks: ValidationCheck[] = [ * This makes sure your app keeps running even if some data is unexpected. */ export function validatePostMigrationState(state: RootState): void { + Logger.log('Migration validation started'); const allErrors = checks.flatMap((check) => check(state)); // If there are any errors, log them diff --git a/app/util/dapp-url-list.js b/app/util/dapp-url-list.js index edc63c334c3..cfb9ddab8d4 100644 --- a/app/util/dapp-url-list.js +++ b/app/util/dapp-url-list.js @@ -179,4 +179,304 @@ export default [ url: 'https://3box.io/', name: '3Box', }, + { + url: 'https://simpleswap.io/', + name: 'SimpleSwap', + }, + { + url: 'https://www.orbiter.finance/', + name: 'Orbiter', + }, + { + url: 'https://stargate.finance/', + name: 'Stargate', + }, + { + url: 'https://www.phosphor.xyz/', + name: 'Phosphor', + }, + { + url: 'https://nftkt.io/wgdapp', + name: 'NiftyKit', + }, + { + url: 'https://manifold.xyz/', + name: 'Manifold', + }, + { + url: 'https://bueno.art/', + name: 'Bueno', + }, + { + url: 'https://www.lens.xyz/', + name: 'Lens', + }, + { + url: 'https://poap.xyz/', + name: 'POAP', + }, + { + url: 'https://www.alphabot.app/', + name: 'Alphabot', + }, + { + url: 'https://www.premint.xyz/', + name: 'Premint', + }, + { + url: 'https://tokenproof.xyz/', + name: 'tokenproof', + }, + { + url: 'https://www.collab.land/', + name: 'Collab Land', + }, + { + url: 'https://www.arweave.org/', + name: 'Arweave', + }, + { + url: 'https://www.ipfs.tech', + name: 'IPFS', + }, + { + url: 'https://apecoin.com/', + name: 'ApeCoin', + }, + { + url: 'https://daomaker.com/', + name: 'DAO Maker', + }, + { + url: 'https://snapshot.org/#/', + name: 'Snapshot', + }, + { + url: 'https://parallel.fi', + name: 'Parallel', + }, + { + url: 'https://www.usecyan.com/', + name: 'CYAN', + }, + { + url: 'https://blur.io/', + name: 'Blur', + }, + { + url: 'https://foundation.app/', + name: 'Foundation', + }, + { + url: 'https://looksrare.org/', + name: 'LooksRare', + }, + { + url: 'https://magiceden.io/', + name: 'Magic Eden', + }, + { + url: 'https://makersplace.com/', + name: 'Makersplace', + }, + { + url: 'https://www.niftygateway.com/', + name: 'Nifty Gateway', + }, + { + url: 'https://solanart.io/', + name: 'Solanart', + }, + { + url: 'https://sound.xyz/', + name: 'Sound', + }, + { + url: 'https://unshorten.it/', + name: 'Unshorten.It!', + }, + { + url: 'https://www.browserling.com/', + name: 'Browserling', + }, + { + url: 'https://urlscan.io/', + name: 'URLScan', + }, + { + url: 'https://www.virustotal.com/', + name: 'VirusTotal', + }, + { + url: 'https://www.flashbots.net/', + name: 'Flashbots', + }, + { + url: 'https://revoke.cash/', + name: 'Revoke Cash', + }, + { + url: 'https://honeypot.is/', + name: 'Honeypot.is', + }, + { + url: 'https://boringsecurity.com/', + name: 'Boring Security', + }, + { + url: 'https://gopluslabs.io/', + name: 'GoPlus Security', + }, + { + url: 'https://bitwarden.com/', + name: 'Bitwarden', + }, + { + url: 'https://authy.com/', + name: 'Authy', + }, + { + url: 'https://ublockorigin.com/', + name: 'uBlock Origin', + }, + { + url: 'https://brave.com/', + name: 'Brave', + }, + { + url: 'https://www.malwarebytes.com/', + name: 'Malwarebytes', + }, + { + url: 'https://mullvad.net/', + name: 'Mullvad', + }, + { + url: 'https://warpcast.com/', + name: 'Warpcast', + }, + { + url: 'https://other.page/', + name: 'Other Page', + }, + { + url: 'https://soulbound.gg/', + name: 'Soulbound', + }, + { + url: 'https://niftytailor.com/', + name: 'Nifty Tailor', + }, + { + url: 'https://www.walletchat.fun/', + name: 'WalletChat', + }, + { + url: 'https://www.sending.network/', + name: 'Sending Network', + }, + { + url: 'https://cyberconnect.me/', + name: 'CyberConnect', + }, + { + url: 'https://pump.fun/', + name: 'Pump.fun', + }, + { + url: 'https://coinstats.app/', + name: 'CoinStats', + }, + { + url: 'https://photon.tinyastro.io/', + name: 'Photon', + }, + { + url: 'https://nftgo.io/', + name: 'NFTGo', + }, + { + url: 'https://rarity.tools/', + name: 'Rarity Tools', + }, + { + url: 'https://www.nansen.ai/', + name: 'Nansen', + }, + { + url: 'https://dune.com/', + name: 'Dune', + }, + { + url: 'https://www.dextools.io/', + name: 'DEXTools', + }, + { + url: 'https://coinmarketcap.com/', + name: 'CoinMarketCap', + }, + { + url: 'https://www.coingecko.com/', + name: 'CoinGecko', + }, + { + url: 'https://catchmint.xyz/', + name: 'Catchmint', + }, + { + url: 'https://dappradar.com/', + name: 'DappRadar', + }, + { + url: 'https://balancer.fi/', + name: 'Balancer', + }, + { + url: 'https://www.ninjalerts.com/', + name: 'Ninjalerts', + }, + { + url: 'https://defillama.com/', + name: 'DefiLlama', + }, + { + url: 'https://dexscreener.com/', + name: 'DEX Screener', + }, + { + url: 'https://aave.com/', + name: 'Aave', + }, + { + url: 'https://gokhshteinmedia.com/', + name: 'Gokhshtein Media', + }, + { + url: 'https://decrypt.co/', + name: 'Decrypt', + }, + { + url: 'https://www.coindesk.com/', + name: 'CoinDesk', + }, + { + url: 'https://cointelegraph.com/', + name: 'CoinTelegraph', + }, + { + url: 'https://www.theblock.co/', + name: 'The Block', + }, + { + url: 'https://blockworks.co/', + name: 'Blockworks', + }, + { + url: 'https://www.bankless.com/', + name: 'Bankless', + }, + { + url: 'https://nftnow.com/', + name: 'nft now', + }, ]; diff --git a/app/util/networks/index.js b/app/util/networks/index.js index 461f8ea6b87..bd03e6f8c8a 100644 --- a/app/util/networks/index.js +++ b/app/util/networks/index.js @@ -499,3 +499,5 @@ export const isPermissionsSettingsV1Enabled = export const isPortfolioViewEnabled = () => process.env.PORTFOLIO_VIEW === 'true'; + +export const isMultichainV1Enabled = () => process.env.MULTICHAIN_V1 === 'true'; diff --git a/app/util/sentry/__snapshots__/utils.test.ts.snap b/app/util/sentry/__snapshots__/utils.test.ts.snap index 8af1d0305c7..01e4488c0b5 100644 --- a/app/util/sentry/__snapshots__/utils.test.ts.snap +++ b/app/util/sentry/__snapshots__/utils.test.ts.snap @@ -52,6 +52,9 @@ exports[`captureSentryFeedback maskObject masks initial root state fixture 1`] = "eth_signTypedData_v4", ], "options": {}, + "scopes": [ + "eip155", + ], "type": "eip155:eoa", }, "2be55f5b-eba9-41a7-a9ed-a6a8274aca28": { @@ -70,6 +73,9 @@ exports[`captureSentryFeedback maskObject masks initial root state fixture 1`] = "eth_signTransaction", ], "options": {}, + "scopes": [ + "eip155", + ], "type": "eip155:eoa", }, }, diff --git a/app/util/sentry/utils.js b/app/util/sentry/utils.js index 0208f65eb32..a3c722547ff 100644 --- a/app/util/sentry/utils.js +++ b/app/util/sentry/utils.js @@ -39,6 +39,7 @@ export const sentryStateMask = { type: true, options: true, methods: true, + scopes: true, metadata: { name: true, importTime: true, diff --git a/app/util/sentry/utils.test.ts b/app/util/sentry/utils.test.ts index 32071388370..e17bc88224d 100644 --- a/app/util/sentry/utils.test.ts +++ b/app/util/sentry/utils.test.ts @@ -11,6 +11,7 @@ import { import { DeepPartial } from '../test/renderWithProvider'; import { RootState } from '../../reducers'; import { NetworkStatus } from '@metamask/network-controller'; +import { EthScopes } from '@metamask/keyring-api'; jest.mock('@sentry/react-native', () => ({ ...jest.requireActual('@sentry/react-native'), @@ -177,6 +178,7 @@ describe('captureSentryFeedback', () => { 'eth_signTypedData_v3', 'eth_signTypedData_v4', ], + scopes: [EthScopes.Namespace], options: {}, type: 'eip155:eoa', }, @@ -191,6 +193,7 @@ describe('captureSentryFeedback', () => { lastSelected: 1720023898237, name: 'Account 2', }, + scopes: [EthScopes.Namespace], methods: ['personal_sign', 'eth_signTransaction'], options: {}, type: 'eip155:eoa', @@ -630,6 +633,7 @@ describe('captureSentryFeedback', () => { 'eth_signTypedData_v3', 'eth_signTypedData_v4', ]); + expect(maskedAccount1.scopes).toEqual([EthScopes.Namespace]); expect(maskedAccount1.metadata).toEqual({ importTime: 1720023898234, keyring: { type: 'HD Key Tree' }, @@ -645,6 +649,7 @@ describe('captureSentryFeedback', () => { 'personal_sign', 'eth_signTransaction', ]); + expect(maskedAccount2.scopes).toEqual([EthScopes.Namespace]); expect(maskedAccount2.metadata).toEqual({ importTime: 1720023898235, keyring: { type: 'HD Key Tree' }, diff --git a/app/util/theme/models.ts b/app/util/theme/models.ts index 51912ab98b1..045ef5c5a05 100644 --- a/app/util/theme/models.ts +++ b/app/util/theme/models.ts @@ -1,5 +1,7 @@ -import type { Theme as DesignTokenTheme } from '@metamask/design-tokens'; -import type { BrandColor } from '@metamask/design-tokens/dist/types/js/brandColor/brandColor.types'; +import type { + Theme as DesignTokenTheme, + BrandColor, +} from '@metamask/design-tokens'; export enum AppThemeKey { os = 'os', diff --git a/attribution.txt b/attribution.txt index 9ec633fe621..6ddde27398c 100644 --- a/attribution.txt +++ b/attribution.txt @@ -1,9 +1,36 @@ +@0no-co/graphql.web +1.0.13 +MIT License + +Copyright (c) 0no.co + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + abort-controller 3.0.0 MIT License Copyright (c) 2017 Toru Nagashima - +s Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights @@ -223,6 +250,49 @@ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +aggregate-error +3.1.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +ajv +8.17.1 +The MIT License (MIT) + +Copyright (c) 2015-2021 Evgeny Poberezkin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** @ampproject/remapping @@ -458,6 +528,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +ansi-escapes +4.3.2 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** ansi-fragments @@ -591,6 +676,31 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +any-promise +1.3.0 +Copyright (C) 2014-2016 Kevin Beaty + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** apg-js @@ -1667,6 +1777,33 @@ limitations under the License. limitations under the License. +****************************** + +application-config-path +0.1.1 +MIT License + +Copyright (c) 2015 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** aproba @@ -1744,27 +1881,27 @@ OTHER DEALINGS IN THE SOFTWARE. archiver-utils 2.1.0 -Copyright (c) 2015 Chris Talkington. - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +Copyright (c) 2015 Chris Talkington. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @@ -1791,6 +1928,33 @@ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +arg +4.1.0 +MIT License + +Copyright (c) 2017 Zeit, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** argparse @@ -1818,6 +1982,266 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +argparse +2.0.1 +A. HISTORY OF THE SOFTWARE +========================== + +Python was created in the early 1990s by Guido van Rossum at Stichting +Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands +as a successor of a language called ABC. Guido remains Python's +principal author, although it includes many contributions from others. + +In 1995, Guido continued his work on Python at the Corporation for +National Research Initiatives (CNRI, see http://www.cnri.reston.va.us) +in Reston, Virginia where he released several versions of the +software. + +In May 2000, Guido and the Python core development team moved to +BeOpen.com to form the BeOpen PythonLabs team. In October of the same +year, the PythonLabs team moved to Digital Creations, which became +Zope Corporation. In 2001, the Python Software Foundation (PSF, see +https://www.python.org/psf/) was formed, a non-profit organization +created specifically to own Python-related Intellectual Property. +Zope Corporation was a sponsoring member of the PSF. + +All Python releases are Open Source (see http://www.opensource.org for +the Open Source Definition). Historically, most, but not all, Python +releases have also been GPL-compatible; the table below summarizes +the various releases. + + Release Derived Year Owner GPL- + from compatible? (1) + + 0.9.0 thru 1.2 1991-1995 CWI yes + 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes + 1.6 1.5.2 2000 CNRI no + 2.0 1.6 2000 BeOpen.com no + 1.6.1 1.6 2001 CNRI yes (2) + 2.1 2.0+1.6.1 2001 PSF no + 2.0.1 2.0+1.6.1 2001 PSF yes + 2.1.1 2.1+2.0.1 2001 PSF yes + 2.1.2 2.1.1 2002 PSF yes + 2.1.3 2.1.2 2002 PSF yes + 2.2 and above 2.1.1 2001-now PSF yes + +Footnotes: + +(1) GPL-compatible doesn't mean that we're distributing Python under + the GPL. All Python licenses, unlike the GPL, let you distribute + a modified version without making your changes open source. The + GPL-compatible licenses make it possible to combine Python with + other software that is released under the GPL; the others don't. + +(2) According to Richard Stallman, 1.6.1 is not GPL-compatible, + because its license has a choice of law clause. According to + CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1 + is "not incompatible" with the GPL. + +Thanks to the many outside volunteers who have worked under Guido's +direction to make these releases possible. + + +B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON +=============================================================== + +PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 +-------------------------------------------- + +1. This LICENSE AGREEMENT is between the Python Software Foundation +("PSF"), and the Individual or Organization ("Licensee") accessing and +otherwise using this software ("Python") in source or binary form and +its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, PSF hereby +grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, +analyze, test, perform and/or display publicly, prepare derivative works, +distribute, and otherwise use Python alone or in any derivative version, +provided, however, that PSF's License Agreement and PSF's notice of copyright, +i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Python Software Foundation; +All Rights Reserved" are retained in Python alone or in any derivative version +prepared by Licensee. + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python. + +4. PSF is making Python available to Licensee on an "AS IS" +basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. Nothing in this License Agreement shall be deemed to create any +relationship of agency, partnership, or joint venture between PSF and +Licensee. This License Agreement does not grant permission to use PSF +trademarks or trade name in a trademark sense to endorse or promote +products or services of Licensee, or any third party. + +8. By copying, installing or otherwise using Python, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0 +------------------------------------------- + +BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1 + +1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an +office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the +Individual or Organization ("Licensee") accessing and otherwise using +this software in source or binary form and its associated +documentation ("the Software"). + +2. Subject to the terms and conditions of this BeOpen Python License +Agreement, BeOpen hereby grants Licensee a non-exclusive, +royalty-free, world-wide license to reproduce, analyze, test, perform +and/or display publicly, prepare derivative works, distribute, and +otherwise use the Software alone or in any derivative version, +provided, however, that the BeOpen Python License is retained in the +Software, alone or in any derivative version prepared by Licensee. + +3. BeOpen is making the Software available to Licensee on an "AS IS" +basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE +SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS +AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY +DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +5. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +6. This License Agreement shall be governed by and interpreted in all +respects by the law of the State of California, excluding conflict of +law provisions. Nothing in this License Agreement shall be deemed to +create any relationship of agency, partnership, or joint venture +between BeOpen and Licensee. This License Agreement does not grant +permission to use BeOpen trademarks or trade names in a trademark +sense to endorse or promote products or services of Licensee, or any +third party. As an exception, the "BeOpen Python" logos available at +http://www.pythonlabs.com/logos.html may be used according to the +permissions granted on that web page. + +7. By copying, installing or otherwise using the software, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1 +--------------------------------------- + +1. This LICENSE AGREEMENT is between the Corporation for National +Research Initiatives, having an office at 1895 Preston White Drive, +Reston, VA 20191 ("CNRI"), and the Individual or Organization +("Licensee") accessing and otherwise using Python 1.6.1 software in +source or binary form and its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, CNRI +hereby grants Licensee a nonexclusive, royalty-free, world-wide +license to reproduce, analyze, test, perform and/or display publicly, +prepare derivative works, distribute, and otherwise use Python 1.6.1 +alone or in any derivative version, provided, however, that CNRI's +License Agreement and CNRI's notice of copyright, i.e., "Copyright (c) +1995-2001 Corporation for National Research Initiatives; All Rights +Reserved" are retained in Python 1.6.1 alone or in any derivative +version prepared by Licensee. Alternately, in lieu of CNRI's License +Agreement, Licensee may substitute the following text (omitting the +quotes): "Python 1.6.1 is made available subject to the terms and +conditions in CNRI's License Agreement. This Agreement together with +Python 1.6.1 may be located on the Internet using the following +unique, persistent identifier (known as a handle): 1895.22/1013. This +Agreement may also be obtained from a proxy server on the Internet +using the following URL: http://hdl.handle.net/1895.22/1013". + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python 1.6.1 or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python 1.6.1. + +4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS" +basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. This License Agreement shall be governed by the federal +intellectual property law of the United States, including without +limitation the federal copyright law, and, to the extent such +U.S. federal law does not apply, by the law of the Commonwealth of +Virginia, excluding Virginia's conflict of law provisions. +Notwithstanding the foregoing, with regard to derivative works based +on Python 1.6.1 that incorporate non-separable material that was +previously distributed under the GNU General Public License (GPL), the +law of the Commonwealth of Virginia shall govern this License +Agreement only as to issues arising under or with respect to +Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this +License Agreement shall be deemed to create any relationship of +agency, partnership, or joint venture between CNRI and Licensee. This +License Agreement does not grant permission to use CNRI trademarks or +trade name in a trademark sense to endorse or promote products or +services of Licensee, or any third party. + +8. By clicking on the "ACCEPT" button where indicated, or by copying, +installing or otherwise using Python 1.6.1, Licensee agrees to be +bound by the terms and conditions of this License Agreement. + + ACCEPT + + +CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2 +-------------------------------------------------- + +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, +The Netherlands. All rights reserved. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Stichting Mathematisch +Centrum or CWI not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO +THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE +FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** argsarray @@ -1830,7 +2254,7 @@ argsarray ****************************** array-buffer-byte-length -1.0.1 +1.0.2 MIT License Copyright (c) 2023 Inspect JS @@ -1857,7 +2281,7 @@ SOFTWARE. ****************************** arraybuffer.prototype.slice -1.0.3 +1.0.4 MIT License Copyright (c) 2023 ECMAScript Shims @@ -2583,6 +3007,18 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +at-least-node +1.0.0 +The ISC License +Copyright (c) 2020 Ryan Zimmerman + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** atomic-sleep @@ -2748,7 +3184,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/code-frame -7.24.7 +7.26.2 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2776,7 +3212,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/compat-data -7.24.4 +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2867,7 +3303,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/generator -7.24.7 +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2895,7 +3331,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/helper-annotate-as-pure -7.24.7 +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2923,7 +3359,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/helper-compilation-targets -7.23.6 +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2951,7 +3387,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/helper-create-class-features-plugin -7.24.5 +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -2979,7 +3415,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @babel/helper-create-regexp-features-plugin -7.22.15 +7.26.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3062,8 +3498,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-function-name -7.24.7 +@babel/helper-member-expression-to-functions +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3090,8 +3526,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-hoist-variables -7.24.7 +@babel/helper-module-imports +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3118,8 +3554,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-member-expression-to-functions -7.24.5 +@babel/helper-module-transforms +7.26.0 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3146,8 +3582,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-module-imports -7.24.7 +@babel/helper-optimise-call-expression +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3174,8 +3610,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-module-transforms -7.24.5 +@babel/helper-plugin-utils +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3202,8 +3638,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-optimise-call-expression -7.22.5 +@babel/helper-remap-async-to-generator +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3230,8 +3666,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-plugin-utils -7.24.8 +@babel/helper-replace-supers +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3258,8 +3694,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-remap-async-to-generator -7.24.7 +@babel/helpers +7.24.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3286,8 +3722,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-replace-supers -7.24.1 +@babel/helper-skip-transparent-expression-wrappers +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3314,8 +3750,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helpers -7.24.5 +@babel/helper-string-parser +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3342,8 +3778,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-simple-access -7.24.5 +@babel/helper-validator-identifier +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3370,8 +3806,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-skip-transparent-expression-wrappers -7.22.5 +@babel/helper-validator-option +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3398,8 +3834,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-split-export-declaration -7.24.7 +@babel/helper-wrap-function +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3426,8 +3862,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-string-parser -7.24.8 +@babel/highlight +7.24.7 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3454,8 +3890,33 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-validator-identifier -7.24.7 +@babel/parser +7.26.5 +Copyright (C) 2012-2014 by various contributors (see AUTHORS) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +@babel/plugin-bugfix-firefox-class-in-computed-class-key +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3482,8 +3943,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-validator-option -7.24.8 +@babel/plugin-bugfix-safari-class-field-initializer-scope +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3510,8 +3971,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/helper-wrap-function -7.24.7 +@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3538,8 +3999,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/highlight -7.24.7 +@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3566,9 +4027,39 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/parser -7.24.7 -Copyright (C) 2012-2014 by various contributors (see AUTHORS) +@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly +7.25.9 +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +babel-plugin-module-resolver +5.0.2 +The MIT License (MIT) + +Copyright (c) 2015 Tommy Leunen (tommyleunen.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -3620,7 +4111,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** babel-plugin-polyfill-corejs3 -0.10.4 +0.10.6 MIT License Copyright (c) 2014-present Nicolò Ribaudo and other contributors @@ -3731,8 +4222,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-export-default-from -7.24.1 +@babel/plugin-proposal-decorators +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3759,8 +4250,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-nullish-coalescing-operator -7.18.6 +@babel/plugin-proposal-export-default-from +7.24.1 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3787,8 +4278,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-numeric-separator -7.18.6 +@babel/plugin-proposal-export-namespace-from +7.18.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3815,8 +4306,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-object-rest-spread -7.20.7 +@babel/plugin-proposal-nullish-coalescing-operator +7.18.6 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3843,7 +4334,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-optional-catch-binding +@babel/plugin-proposal-numeric-separator 7.18.6 MIT License @@ -3871,8 +4362,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-proposal-optional-chaining -7.21.0 +@babel/plugin-proposal-object-rest-spread +7.20.7 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3899,8 +4390,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-async-generators -7.8.4 +@babel/plugin-proposal-optional-catch-binding +7.18.6 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3927,8 +4418,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-class-properties -7.12.13 +@babel/plugin-proposal-optional-chaining +7.21.0 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3955,8 +4446,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-dynamic-import -7.8.3 +@babel/plugin-proposal-private-property-in-object +7.21.0-placeholder-for-preset-env.2 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -3983,8 +4474,35 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-export-default-from -7.24.1 +babel-plugin-react-native-web +0.18.12 +MIT License + +Copyright (c) Nicolas Gallagher. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@babel/plugin-syntax-async-generators +7.8.4 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4011,8 +4529,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-flow -7.24.7 +@babel/plugin-syntax-class-properties +7.12.13 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4039,8 +4557,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-jsx -7.24.7 +@babel/plugin-syntax-decorators +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4067,8 +4585,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-nullish-coalescing-operator -7.8.3 +@babel/plugin-syntax-dynamic-import +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4095,8 +4613,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-numeric-separator -7.10.4 +@babel/plugin-syntax-export-default-from +7.24.1 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4123,8 +4641,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-object-rest-spread -7.8.3 +@babel/plugin-syntax-export-namespace-from +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4151,8 +4669,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-optional-catch-binding -7.8.3 +@babel/plugin-syntax-flow +7.24.7 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4179,8 +4697,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-syntax-optional-chaining -7.8.3 +@babel/plugin-syntax-import-assertions +7.26.0 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4207,15 +4725,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -babel-plugin-syntax-trailing-function-commas -7.0.0-beta.0 -license: MIT -authors: undefined - -****************************** - -@babel/plugin-syntax-typescript -7.24.1 +@babel/plugin-syntax-import-attributes +7.26.0 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4242,8 +4753,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-arrow-functions -7.24.1 +@babel/plugin-syntax-jsx +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4270,8 +4781,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-async-to-generator -7.24.7 +@babel/plugin-syntax-nullish-coalescing-operator +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4298,8 +4809,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-block-scoped-functions -7.24.1 +@babel/plugin-syntax-numeric-separator +7.10.4 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4326,8 +4837,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-block-scoping -7.24.5 +@babel/plugin-syntax-object-rest-spread +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4354,8 +4865,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-classes -7.24.5 +@babel/plugin-syntax-optional-catch-binding +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4382,8 +4893,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-computed-properties -7.24.1 +@babel/plugin-syntax-optional-chaining +7.8.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4410,8 +4921,15 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-destructuring -7.24.7 +babel-plugin-syntax-trailing-function-commas +7.0.0-beta.0 +license: MIT +authors: undefined + +****************************** + +@babel/plugin-syntax-typescript +7.24.1 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4438,35 +4956,36 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -babel-plugin-transform-flow-enums -0.0.2 +@babel/plugin-syntax-unicode-sets-regex +7.18.6 MIT License -Copyright (c) Facebook, Inc. and its affiliates. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-flow-strip-types -7.24.7 +@babel/plugin-transform-arrow-functions +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4493,8 +5012,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-for-of -7.24.1 +@babel/plugin-transform-async-generator-functions +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4521,8 +5040,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-function-name -7.24.1 +@babel/plugin-transform-async-to-generator +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4549,8 +5068,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-literals -7.24.1 +@babel/plugin-transform-block-scoped-functions +7.26.5 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4577,8 +5096,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-member-expression-literals -7.24.1 +@babel/plugin-transform-block-scoping +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4605,8 +5124,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-modules-commonjs -7.24.1 +@babel/plugin-transform-classes +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4633,8 +5152,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-named-capturing-groups-regex -7.22.5 +@babel/plugin-transform-class-properties +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4661,36 +5180,36 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-object-assign -7.24.1 -The MIT License (MIT) - -Copyright (c) 2015 Jed Watson +@babel/plugin-transform-class-static-block +7.26.0 +MIT License -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Copyright (c) 2014-present Sebastian McKenzie and other contributors -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-object-super -7.24.1 +@babel/plugin-transform-computed-properties +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4717,8 +5236,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-parameters -7.24.5 +@babel/plugin-transform-destructuring +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4745,8 +5264,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-property-literals -7.24.1 +@babel/plugin-transform-dotall-regex +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4773,8 +5292,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-react-display-name -7.24.7 +@babel/plugin-transform-duplicate-keys +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4801,8 +5320,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-react-jsx -7.25.2 +@babel/plugin-transform-duplicate-named-capturing-groups-regex +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4829,8 +5348,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-react-jsx-self -7.24.5 +@babel/plugin-transform-dynamic-import +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4857,8 +5376,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-react-jsx-source -7.24.1 +@babel/plugin-transform-exponentiation-operator +7.26.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4885,8 +5404,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-runtime -7.24.3 +@babel/plugin-transform-export-namespace-from +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4913,8 +5432,35 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-shorthand-properties -7.24.1 +babel-plugin-transform-flow-enums +0.0.2 +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@babel/plugin-transform-flow-strip-types +7.24.7 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4941,8 +5487,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-spread -7.24.1 +@babel/plugin-transform-for-of +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4969,8 +5515,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-sticky-regex -7.24.1 +@babel/plugin-transform-function-name +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -4997,8 +5543,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-template-literals -7.24.1 +@babel/plugin-transform-json-strings +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5025,8 +5571,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-typescript -7.24.5 +@babel/plugin-transform-literals +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5053,8 +5599,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/plugin-transform-unicode-regex -7.24.1 +@babel/plugin-transform-logical-assignment-operators +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5081,35 +5627,36 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -babel-preset-fbjs -3.4.0 +@babel/plugin-transform-member-expression-literals +7.25.9 MIT License -Copyright (c) 2013-present, Facebook, Inc. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/preset-flow -7.24.1 +@babel/plugin-transform-modules-amd +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5136,8 +5683,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/preset-typescript -7.24.1 +@babel/plugin-transform-modules-commonjs +7.26.3 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5164,8 +5711,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/register -7.24.6 +@babel/plugin-transform-modules-systemjs +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5192,11 +5739,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/regjsgen -0.8.0 -The MIT License (MIT) +@babel/plugin-transform-modules-umd +7.25.9 +MIT License -Copyright 2014-2020 Benjamin Tan +Copyright (c) 2014-present Sebastian McKenzie and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the @@ -5220,8 +5767,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/runtime -7.24.6 +@babel/plugin-transform-named-capturing-groups-regex +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5248,8 +5795,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/template -7.24.7 +@babel/plugin-transform-new-target +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5276,8 +5823,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/traverse -7.24.7 +@babel/plugin-transform-nullish-coalescing-operator +7.26.6 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5304,8 +5851,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@babel/types -7.25.4 +@babel/plugin-transform-numeric-separator +7.25.9 MIT License Copyright (c) 2014-present Sebastian McKenzie and other contributors @@ -5332,25 +5879,18 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -backo2 -1.0.2 -license: MIT -authors: undefined - -****************************** - -balanced-match -1.0.2 -(MIT) +@babel/plugin-transform-object-assign +7.24.1 +The MIT License (MIT) -Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> +Copyright (c) 2015 Jed Watson -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. @@ -5364,65 +5904,126 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ****************************** -base58check -2.0.0 -license: MIT -authors: unrealce +@babel/plugin-transform-object-rest-spread +7.25.9 +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ****************************** -base58-js -1.0.0 +@babel/plugin-transform-object-super +7.25.9 MIT License -Copyright (c) 2021 pur3miish +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -Base64 -0.2.1 +@babel/plugin-transform-optional-catch-binding +7.25.9 +MIT License - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - Version 2, December 2004 +Copyright (c) 2014-present Sebastian McKenzie and other contributors - Copyright (c) 2011..2012 David Chambers +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - Everyone is permitted to copy and distribute verbatim or modified - copies of this license document, and changing it is allowed as long - as the name is changed. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - 0. You just DO WHAT THE FUCK YOU WANT TO. + +****************************** + +@babel/plugin-transform-optional-chaining +7.25.9 +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base-64 -0.1.0 -Copyright Mathias Bynens +@babel/plugin-transform-parameters +7.25.9 +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the @@ -5446,9 +6047,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base-64 -1.0.0 -Copyright Mathias Bynens +@babel/plugin-transform-private-methods +7.25.9 +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the @@ -5472,277 +6075,267 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base64-arraybuffer -0.1.5 -Copyright (c) 2012 Niklas von Hertzen +@babel/plugin-transform-private-property-in-object +7.25.9 +MIT License -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base64-js -1.3.1 -The MIT License (MIT) +@babel/plugin-transform-property-literals +7.25.9 +MIT License -Copyright (c) 2014 Jameson Little +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base64-js -1.5.1 -The MIT License (MIT) - -Copyright (c) 2014 Jameson Little - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +@babel/plugin-transform-react-display-name +7.24.7 +MIT License -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -****************************** +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -base64-stream -1.0.0 -license: MIT -authors: Ross Johnson ****************************** -base-x -1.1.0 -The MIT License (MIT) +@babel/plugin-transform-react-jsx +7.25.9 +MIT License -Copyright base-x contributors (c) 2016 +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -base-x -3.0.8 -The MIT License (MIT) +@babel/plugin-transform-react-jsx-self +7.24.5 +MIT License -Copyright (c) 2018 base-x contributors -Copyright (c) 2014-2018 The Bitcoin Core developers +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -basic-ftp -5.0.3 -Copyright (c) 2019 Patrick Juchli +@babel/plugin-transform-react-jsx-source +7.24.1 +MIT License -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Copyright (c) 2014-present Sebastian McKenzie and other contributors -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. ****************************** -bech32 -2.0.0 +@babel/plugin-transform-regenerator +7.25.9 MIT License -Copyright (c) 2017 Pieter Wuille -Copyright (c) 2018 bitcoinjs contributors +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -big-integer -1.6.51 -This is free and unencumbered software released into the public domain. - -Anyone is free to copy, modify, publish, use, compile, sell, or -distribute this software, either in source code form or as a compiled -binary, for any purpose, commercial or non-commercial, and by any -means. - -In jurisdictions that recognize copyright laws, the author or authors -of this software dedicate any and all copyright interest in the -software to the public domain. We make this dedication for the benefit -of the public at large and to the detriment of our heirs and -successors. We intend this dedication to be an overt act of -relinquishment in perpetuity of all present and future rights to this -software under copyright law. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to - - -****************************** +@babel/plugin-transform-regexp-modifiers +7.26.0 +MIT License -bignumber.js -4.1.0 -license: MIT -authors: Michael Mclaughlin +Copyright (c) 2014-present Sebastian McKenzie and other contributors -****************************** +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -bignumber.js -7.2.1 -license: MIT -authors: Michael Mclaughlin +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -****************************** +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -bignumber.js -9.1.2 -license: MIT -authors: Michael Mclaughlin ****************************** -binary-extensions -2.2.0 +@babel/plugin-transform-reserved-words +7.25.9 MIT License -Copyright (c) 2019 Sindre Sorhus (https://sindresorhus.com), Paul Miller (https://paulmillr.com) +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bindings -1.5.0 -(The MIT License) +@babel/plugin-transform-runtime +7.24.3 +MIT License -Copyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net> +Copyright (c) 2014-present Sebastian McKenzie and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including +"Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to @@ -5751,337 +6344,250 @@ the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bip66 -1.1.5 -The MIT License (MIT) +@babel/plugin-transform-shorthand-properties +7.25.9 +MIT License -Copyright (c) 2015 Daniel Cousens +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bitcoin-address-validation -2.2.3 -The MIT License (MIT) +@babel/plugin-transform-spread +7.25.9 +MIT License -Copyright (c) 2018 Rui Gomes +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bl -1.2.3 -The MIT License (MIT) -===================== - -Copyright (c) 2013-2016 bl contributors ----------------------------------- +@babel/plugin-transform-sticky-regex +7.25.9 +MIT License -*bl contributors listed at * +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bl -4.1.0 -The MIT License (MIT) -===================== - -Copyright (c) 2013-2019 bl contributors ----------------------------------- +@babel/plugin-transform-template-literals +7.25.9 +MIT License -*bl contributors listed at * +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -blakejs -1.1.1 -Creative Commons Legal Code +@babel/plugin-transform-typeof-symbol +7.25.9 +MIT License -CC0 1.0 Universal +Copyright (c) 2014-present Sebastian McKenzie and other contributors - CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE - LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN - ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS - INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES - REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS - PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM - THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED - HEREUNDER. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -Statement of Purpose +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -The laws of most jurisdictions throughout the world automatically confer -exclusive Copyright and Related Rights (defined below) upon the creator -and subsequent owner(s) (each and all, an "owner") of an original work of -authorship and/or a database (each, a "Work"). - -Certain owners wish to permanently relinquish those rights to a Work for -the purpose of contributing to a commons of creative, cultural and -scientific works ("Commons") that the public can reliably and without fear -of later claims of infringement build upon, modify, incorporate in other -works, reuse and redistribute as freely as possible in any form whatsoever -and for any purposes, including without limitation commercial purposes. -These owners may contribute to the Commons to promote the ideal of a free -culture and the further production of creative, cultural and scientific -works, or to gain reputation or greater distribution for their Work in -part through the use and efforts of others. - -For these and/or other purposes and motivations, and without any -expectation of additional consideration or compensation, the person -associating CC0 with a Work (the "Affirmer"), to the extent that he or she -is an owner of Copyright and Related Rights in the Work, voluntarily -elects to apply CC0 to the Work and publicly distribute the Work under its -terms, with knowledge of his or her Copyright and Related Rights in the -Work and the meaning and intended legal effect of CC0 on those rights. - -1. Copyright and Related Rights. A Work made available under CC0 may be -protected by copyright and related or neighboring rights ("Copyright and -Related Rights"). Copyright and Related Rights include, but are not -limited to, the following: - - i. the right to reproduce, adapt, distribute, perform, display, - communicate, and translate a Work; - ii. moral rights retained by the original author(s) and/or performer(s); -iii. publicity and privacy rights pertaining to a person's image or - likeness depicted in a Work; - iv. rights protecting against unfair competition in regards to a Work, - subject to the limitations in paragraph 4(a), below; - v. rights protecting the extraction, dissemination, use and reuse of data - in a Work; - vi. database rights (such as those arising under Directive 96/9/EC of the - European Parliament and of the Council of 11 March 1996 on the legal - protection of databases, and under any national implementation - thereof, including any amended or successor version of such - directive); and -vii. other similar, equivalent or corresponding rights throughout the - world based on applicable law or treaty, and any national - implementations thereof. - -2. Waiver. To the greatest extent permitted by, but not in contravention -of, applicable law, Affirmer hereby overtly, fully, permanently, -irrevocably and unconditionally waives, abandons, and surrenders all of -Affirmer's Copyright and Related Rights and associated claims and causes -of action, whether now known or unknown (including existing as well as -future claims and causes of action), in the Work (i) in all territories -worldwide, (ii) for the maximum duration provided by applicable law or -treaty (including future time extensions), (iii) in any current or future -medium and for any number of copies, and (iv) for any purpose whatsoever, -including without limitation commercial, advertising or promotional -purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each -member of the public at large and to the detriment of Affirmer's heirs and -successors, fully intending that such Waiver shall not be subject to -revocation, rescission, cancellation, termination, or any other legal or -equitable action to disrupt the quiet enjoyment of the Work by the public -as contemplated by Affirmer's express Statement of Purpose. - -3. Public License Fallback. Should any part of the Waiver for any reason -be judged legally invalid or ineffective under applicable law, then the -Waiver shall be preserved to the maximum extent permitted taking into -account Affirmer's express Statement of Purpose. In addition, to the -extent the Waiver is so judged Affirmer hereby grants to each affected -person a royalty-free, non transferable, non sublicensable, non exclusive, -irrevocable and unconditional license to exercise Affirmer's Copyright and -Related Rights in the Work (i) in all territories worldwide, (ii) for the -maximum duration provided by applicable law or treaty (including future -time extensions), (iii) in any current or future medium and for any number -of copies, and (iv) for any purpose whatsoever, including without -limitation commercial, advertising or promotional purposes (the -"License"). The License shall be deemed effective as of the date CC0 was -applied by Affirmer to the Work. Should any part of the License for any -reason be judged legally invalid or ineffective under applicable law, such -partial invalidity or ineffectiveness shall not invalidate the remainder -of the License, and in such case Affirmer hereby affirms that he or she -will not (i) exercise any of his or her remaining Copyright and Related -Rights in the Work or (ii) assert any associated claims and causes of -action with respect to the Work, in either case contrary to Affirmer's -express Statement of Purpose. - -4. Limitations and Disclaimers. - - a. No trademark or patent rights held by Affirmer are waived, abandoned, - surrendered, licensed or otherwise affected by this document. - b. Affirmer offers the Work as-is and makes no representations or - warranties of any kind concerning the Work, express, implied, - statutory or otherwise, including without limitation warranties of - title, merchantability, fitness for a particular purpose, non - infringement, or the absence of latent or other defects, accuracy, or - the present or absence of errors, whether or not discoverable, all to - the greatest extent permissible under applicable law. - c. Affirmer disclaims responsibility for clearing rights of other persons - that may apply to the Work or any use thereof, including without - limitation any person's Copyright and Related Rights in the Work. - Further, Affirmer disclaims responsibility for obtaining any necessary - consents, permissions or other rights required for any use of the - Work. - d. Affirmer understands and acknowledges that Creative Commons is not a - party to this document and has no duty or obligation with respect to - this CC0 or use of the Work. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bluebird -3.7.2 -The MIT License (MIT) - -Copyright (c) 2013-2018 Petka Antonov - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +@babel/plugin-transform-typescript +7.24.5 +MIT License -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -****************************** +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -bn.js -4.11.6 -license: MIT -authors: Fedor Indutny ****************************** -bn.js -4.11.8 -license: MIT -authors: Fedor Indutny - -****************************** +@babel/plugin-transform-unicode-escapes +7.25.9 +MIT License -bn.js -4.12.0 -Copyright Fedor Indutny, 2015. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bn.js -5.2.1 -Copyright Fedor Indutny, 2015. +@babel/plugin-transform-unicode-property-regex +7.25.9 +MIT License -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Copyright (c) 2014-present Sebastian McKenzie and other contributors -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -body-parser -1.20.3 -(The MIT License) +@babel/plugin-transform-unicode-regex +7.25.9 +MIT License -Copyright (c) 2014 Jonathan Ong -Copyright (c) 2014-2015 Douglas Christopher Wilson +Copyright (c) 2014-present Sebastian McKenzie and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including +"Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to @@ -6090,91 +6596,85 @@ the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -boolbase -1.0.0 -license: ISC -authors: Felix Boehm ****************************** -bplist-creator -0.1.0 -(The MIT License) +@babel/plugin-transform-unicode-sets-regex +7.25.9 +MIT License -Copyright (c) 2012 Near Infinity Corporation +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy of this software -and associated documentation files (the "Software"), to deal in the Software without restriction, -including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial -portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT -LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE -OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bplist-creator -0.1.1 -(The MIT License) - -Copyright (c) 2012 Near Infinity Corporation - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software -and associated documentation files (the "Software"), to deal in the Software without restriction, -including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: +@babel/preset-env +7.26.0 +MIT License -The above copyright notice and this permission notice shall be included in all copies or substantial -portions of the Software. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT -LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE -OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -****************************** +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -bplist-parser -0.3.1 -license: MIT -authors: Joe Ferner ****************************** -bplist-parser -0.3.2 +babel-preset-expo +9.5.2 license: MIT -authors: Joe Ferner +authors: Expo ****************************** -brace-expansion -1.1.11 +babel-preset-fbjs +3.4.0 MIT License -Copyright (c) 2013 Julian Gruber +Copyright (c) 2013-present, Facebook, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6197,11 +6697,39 @@ SOFTWARE. ****************************** -brace-expansion -2.0.1 +@babel/preset-flow +7.24.1 MIT License -Copyright (c) 2013 Julian Gruber +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +@babel/preset-modules +0.1.6-no-external-plugins +MIT License + +Copyright (c) 2020 Babel Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6224,259 +6752,193 @@ SOFTWARE. ****************************** -braces -3.0.3 -The MIT License (MIT) +@babel/preset-typescript +7.24.1 +MIT License -Copyright (c) 2014-present, Jon Schlinkert. +Copyright (c) 2014-present Sebastian McKenzie and other contributors -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -brorand -1.1.0 -license: MIT -authors: Fedor Indutny +@babel/register +7.24.6 +MIT License -****************************** +Copyright (c) 2014-present Sebastian McKenzie and other contributors -brotli-wasm -3.0.1 - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - 1. Definitions. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. +****************************** - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. +@babel/runtime +7.26.0 +MIT License - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. +Copyright (c) 2014-present Sebastian McKenzie and other contributors - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." +****************************** - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. +@babel/template +7.25.9 +MIT License - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. +Copyright (c) 2014-present Sebastian McKenzie and other contributors - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and +****************************** - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. +@babel/traverse +7.26.5 +MIT License - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. +Copyright (c) 2014-present Sebastian McKenzie and other contributors - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. +****************************** - END OF TERMS AND CONDITIONS +@babel/types +7.26.5 +MIT License - APPENDIX: How to apply the Apache License to your work. +Copyright (c) 2014-present Sebastian McKenzie and other contributors - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: - Copyright [yyyy] [name of copyright owner] +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - http://www.apache.org/licenses/LICENSE-2.0 - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. +****************************** +backo2 +1.0.2 +license: MIT +authors: undefined ****************************** -browserify-aes -1.2.0 -The MIT License (MIT) +balanced-match +1.0.2 +(MIT) -Copyright (c) 2014-2017 browserify-aes contributors +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. @@ -6492,11 +6954,18 @@ SOFTWARE. ****************************** -browserify-cipher -1.0.1 -The MIT License (MIT) +base58check +2.0.0 +license: MIT +authors: unrealce -Copyright (c) 2014-2017 Calvin Metcalf & contributors +****************************** + +base58-js +1.0.0 +MIT License + +Copyright (c) 2021 pur3miish Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6519,84 +6988,111 @@ SOFTWARE. ****************************** -browserify-des -1.0.2 -The MIT License (MIT) +Base64 +0.2.1 -Copyright (c) 2014-2017 Calvin Metcalf, Fedor Indutny & contributors + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: + Copyright (c) 2011..2012 David Chambers -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. + Everyone is permitted to copy and distribute verbatim or modified + copies of this license document, and changing it is allowed as long + as the name is changed. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. ****************************** -browserify-rsa -4.1.0 -The MIT License (MIT) +base-64 +0.1.0 +Copyright Mathias Bynens -Copyright (c) 2014-2016 Calvin Metcalf & contributors +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. + +****************************** + +base-64 +1.0.0 +Copyright Mathias Bynens + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -browserify-sign -4.2.2 -Copyright (c) 2014-2015 Calvin Metcalf and browserify-sign contributors +base64-arraybuffer +0.1.5 +Copyright (c) 2012 Niklas von Hertzen -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. ****************************** -browserify-zlib -0.2.0 +base64-js +1.3.1 The MIT License (MIT) -Copyright (c) 2014-2015 Devon Govett +Copyright (c) 2014 Jameson Little Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6605,52 +7101,31 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -This project contains parts of Node.js. -Node.js is licensed for use as follows: - -""" -Copyright Node.js contributors. All rights reserved. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +****************************** -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. -""" +base64-js +1.5.1 +The MIT License (MIT) -This license applies to parts of Node.js originating from the -https://github.com/joyent/node repository: +Copyright (c) 2014 Jameson Little -""" -Copyright Joyent, Inc. and other Node contributors. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in @@ -6660,59 +7135,25 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. -""" - - -****************************** - -browserslist -4.23.0 -The MIT License (MIT) - -Copyright 2014 Andrey Sitnik and other contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -bs58 -3.1.0 -license: MIT -authors: undefined ****************************** -bs58 -4.0.1 +base64-stream +1.0.0 license: MIT -authors: undefined +authors: Ross Johnson ****************************** -bs58check -2.1.2 +base-x +1.1.0 The MIT License (MIT) -Copyright (c) 2017 Daniel Cousens +Copyright base-x contributors (c) 2016 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6735,18 +7176,12 @@ SOFTWARE. ****************************** -bser -2.1.1 -license: Apache-2.0 -authors: Wez Furlong (http://wezfurlong.org) - -****************************** - -buffer -4.9.2 +base-x +3.0.8 The MIT License (MIT) -Copyright (c) Feross Aboukhadijeh, and other contributors. +Copyright (c) 2018 base-x contributors +Copyright (c) 2014-2018 The Bitcoin Core developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6755,25 +7190,23 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -buffer -5.7.1 -The MIT License (MIT) - -Copyright (c) Feross Aboukhadijeh, and other contributors. +basic-ftp +5.0.3 +Copyright (c) 2019 Patrick Juchli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6782,98 +7215,124 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -buffer -6.0.3 -The MIT License (MIT) +bech32 +2.0.0 +MIT License -Copyright (c) Feross Aboukhadijeh, and other contributors. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. + +****************************** + +big-integer +1.6.51 +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to ****************************** -buffer-alloc -1.2.0 +bignumber.js +7.2.1 license: MIT -authors: undefined +authors: Michael Mclaughlin ****************************** -buffer-alloc-unsafe -1.1.0 +bignumber.js +9.1.2 license: MIT -authors: undefined +authors: Michael Mclaughlin ****************************** -buffer-crc32 -0.2.13 -The MIT License +binary-extensions +2.2.0 +MIT License -Copyright (c) 2013 Brian J. Brennan +Copyright (c) 2019 Sindre Sorhus (https://sindresorhus.com), Paul Miller (https://paulmillr.com) -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the -Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR -PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE -FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -buffer-fill -1.0.0 -license: MIT -authors: undefined +bindings +1.5.0 +(The MIT License) + +Copyright (c) 2012 Nathan Rajlich <nathan@tootallnate.net> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ****************************** -buffer-from -1.1.1 -MIT License +bip66 +1.1.5 +The MIT License (MIT) -Copyright (c) 2016, 2018 Linus Unnebäck +Copyright (c) 2015 Daniel Cousens Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6896,37 +7355,11 @@ SOFTWARE. ****************************** -bufferutil -4.0.8 -Copyright (c) 2011 Einar Otto Stangvik -Copyright (c) 2013 Arnout Kazemier and contributors -Copyright (c) 2016 Luigi Pinca and contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -buffer-xor -1.0.3 +bitcoin-address-validation +2.2.3 The MIT License (MIT) -Copyright (c) 2015 Daniel Cousens +Copyright (c) 2018 Rui Gomes Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -6949,11 +7382,15 @@ SOFTWARE. ****************************** -builtin-modules -3.3.0 -MIT License +bl +1.2.3 +The MIT License (MIT) +===================== -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) 2013-2016 bl contributors +---------------------------------- + +*bl contributors listed at * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: @@ -6964,95 +7401,157 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** -builtins -5.0.1 -Copyright (c) 2015 Julian Gruber +bl +4.1.0 +The MIT License (MIT) +===================== -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: +Copyright (c) 2013-2019 bl contributors +---------------------------------- -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +*bl contributors listed at * -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -bytes -3.0.0 -(The MIT License) +blakejs +1.1.1 +Creative Commons Legal Code -Copyright (c) 2012-2014 TJ Holowaychuk -Copyright (c) 2015 Jed Watson +CC0 1.0 Universal -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +Statement of Purpose -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. -****************************** +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. -bytes -3.1.2 -(The MIT License) +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: -Copyright (c) 2012-2014 TJ Holowaychuk -Copyright (c) 2015 Jed Watson + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. ****************************** -cacheable-lookup -6.1.0 -MIT License +bluebird +3.7.2 +The MIT License (MIT) -Copyright (c) 2019 Szymon Marczak +Copyright (c) 2013-2018 Petka Antonov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -7061,79 +7560,63 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -call-bind -1.0.7 +blueimp-md5 +2.19.0 MIT License -Copyright (c) 2020 Jordan Harband +Copyright © 2011 Sebastian Tschan, https://blueimp.net -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -caller-callsite -2.0.0 -The MIT License (MIT) - -Copyright (c) Sindre Sorhus (sindresorhus.com) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +bn.js +4.11.6 +license: MIT +authors: Fedor Indutny -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +****************************** +bn.js +4.11.8 +license: MIT +authors: Fedor Indutny ****************************** -caller-path -2.0.0 -The MIT License (MIT) - -Copyright (c) Sindre Sorhus (sindresorhus.com) +bn.js +4.12.0 +Copyright Fedor Indutny, 2015. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -7142,25 +7625,23 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -callsites -2.0.0 -The MIT License (MIT) - -Copyright (c) Sindre Sorhus (sindresorhus.com) +bn.js +5.2.1 +Copyright Fedor Indutny, 2015. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -7169,55 +7650,1268 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -camelcase -5.3.1 -MIT License +body-parser +1.20.3 +(The MIT License) -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) 2014 Jonathan Ong +Copyright (c) 2014-2015 Douglas Christopher Wilson -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -camelcase -6.3.0 -MIT License +boolbase +1.0.0 +license: ISC +authors: Felix Boehm -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +****************************** -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +bplist-creator +0.1.0 +(The MIT License) -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +Copyright (c) 2012 Near Infinity Corporation -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software +and associated documentation files (the "Software"), to deal in the Software without restriction, +including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE +OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -camelize -1.0.0 -This software is released under the MIT license: +bplist-creator +0.1.1 +(The MIT License) -Permission is hereby granted, free of charge, to any person obtaining a copy of +Copyright (c) 2012 Near Infinity Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software +and associated documentation files (the "Software"), to deal in the Software without restriction, +including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE +OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +bplist-parser +0.3.1 +license: MIT +authors: Joe Ferner + +****************************** + +bplist-parser +0.3.2 +license: MIT +authors: Joe Ferner + +****************************** + +brace-expansion +1.1.11 +MIT License + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +brace-expansion +2.0.1 +MIT License + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +braces +3.0.3 +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +brorand +1.1.0 +license: MIT +authors: Fedor Indutny + +****************************** + +brotli-wasm +3.0.1 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +****************************** + +browserify-aes +1.2.0 +The MIT License (MIT) + +Copyright (c) 2014-2017 browserify-aes contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +browserify-cipher +1.0.1 +The MIT License (MIT) + +Copyright (c) 2014-2017 Calvin Metcalf & contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +browserify-des +1.0.2 +The MIT License (MIT) + +Copyright (c) 2014-2017 Calvin Metcalf, Fedor Indutny & contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +browserify-rsa +4.1.0 +The MIT License (MIT) + +Copyright (c) 2014-2016 Calvin Metcalf & contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +browserify-sign +4.2.2 +Copyright (c) 2014-2015 Calvin Metcalf and browserify-sign contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +browserify-zlib +0.2.0 +The MIT License (MIT) + +Copyright (c) 2014-2015 Devon Govett + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +This project contains parts of Node.js. +Node.js is licensed for use as follows: + +""" +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +This license applies to parts of Node.js originating from the +https://github.com/joyent/node repository: + +""" +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + + +****************************** + +browserslist +4.24.4 +The MIT License (MIT) + +Copyright 2014 Andrey Sitnik and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +bs58 +3.1.0 +license: MIT +authors: undefined + +****************************** + +bs58 +4.0.1 +license: MIT +authors: undefined + +****************************** + +bs58check +2.1.2 +The MIT License (MIT) + +Copyright (c) 2017 Daniel Cousens + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +bser +2.1.1 +license: Apache-2.0 +authors: Wez Furlong (http://wezfurlong.org) + +****************************** + +buffer +4.9.2 +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh, and other contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +buffer +5.7.1 +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh, and other contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +buffer +6.0.3 +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh, and other contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +buffer-alloc +1.2.0 +license: MIT +authors: undefined + +****************************** + +buffer-alloc-unsafe +1.1.0 +license: MIT +authors: undefined + +****************************** + +buffer-crc32 +0.2.13 +The MIT License + +Copyright (c) 2013 Brian J. Brennan + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the +Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +buffer-fill +1.0.0 +license: MIT +authors: undefined + +****************************** + +buffer-from +1.1.1 +MIT License + +Copyright (c) 2016, 2018 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +bufferutil +4.0.8 +Copyright (c) 2011 Einar Otto Stangvik +Copyright (c) 2013 Arnout Kazemier and contributors +Copyright (c) 2016 Luigi Pinca and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +buffer-xor +1.0.3 +The MIT License (MIT) + +Copyright (c) 2015 Daniel Cousens + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +builtin-modules +3.3.0 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +builtins +1.0.3 +Copyright (c) 2015 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +builtins +5.0.1 +Copyright (c) 2015 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +bytes +3.0.0 +(The MIT License) + +Copyright (c) 2012-2014 TJ Holowaychuk +Copyright (c) 2015 Jed Watson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +bytes +3.1.2 +(The MIT License) + +Copyright (c) 2012-2014 TJ Holowaychuk +Copyright (c) 2015 Jed Watson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +cacache +15.3.0 +ISC License + +Copyright (c) npm, Inc. + +Permission to use, copy, modify, and/or distribute this software for +any purpose with or without fee is hereby granted, provided that the +above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE COPYRIGHT HOLDER DISCLAIMS +ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +cacheable-lookup +6.1.0 +MIT License + +Copyright (c) 2019 Szymon Marczak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +call-bind +1.0.8 +MIT License + +Copyright (c) 2020 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +call-bind-apply-helpers +1.0.1 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +call-bound +1.0.3 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +caller-callsite +2.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +caller-path +2.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +callsites +2.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +camelcase +5.3.1 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +camelcase +6.3.0 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +camelize +1.0.0 +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of @@ -7238,7 +8932,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** caniuse-lite -1.0.30001614 +1.0.30001695 Attribution 4.0 International ======================================================================= @@ -7746,6 +9440,39 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +charenc +0.0.2 +Copyright © 2011, Paul Vorbach. All rights reserved. +Copyright © 2009, Jeff Mott. All rights reserved. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +* Neither the name Crypto-JS nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** chokidar @@ -7794,6 +9521,27 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +chownr +2.0.0 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** cids @@ -7851,10 +9599,10 @@ SOFTWARE. ****************************** ci-info -3.3.1 +3.9.0 The MIT License (MIT) -Copyright (c) 2016-2021 Thomas Watson Steen +Copyright (c) 2016 Thomas Watson Steen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -7971,6 +9719,48 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +clean-stack +2.2.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +cli-cursor +2.1.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** cli-cursor @@ -8004,7 +9794,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** cli-spinners -2.7.0 +2.9.2 MIT License Copyright (c) Sindre Sorhus (https://sindresorhus.com) @@ -8373,26 +10163,26 @@ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI color-name 1.1.3 -The MIT License (MIT) -Copyright (c) 2015 Dmitry Ivanov - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - +The MIT License (MIT) +Copyright (c) 2015 Dmitry Ivanov + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** color-name 1.1.4 -The MIT License (MIT) -Copyright (c) 2015 Dmitry Ivanov - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - +The MIT License (MIT) +Copyright (c) 2015 Dmitry Ivanov + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @@ -8556,6 +10346,62 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +commander +4.1.1 +(The MIT License) + +Copyright (c) 2011 TJ Holowaychuk + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +commander +7.2.0 +(The MIT License) + +Copyright (c) 2011 TJ Holowaychuk + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** commander @@ -8684,6 +10530,13 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +component-type +1.2.2 +license: MIT +authors: undefined + ****************************** compress-commons @@ -8854,6 +10707,13 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** +@config-plugins/detox +8.0.0 +license: MIT +authors: undefined + +****************************** + connect 3.7.0 (The MIT License) @@ -9172,20 +11032,20 @@ SOFTWARE. content-hash 2.5.2 -ISC License - -Copyright (c) 2018, Pierre-Louis Despaigne - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +ISC License + +Copyright (c) 2018, Pierre-Louis Despaigne + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @@ -9315,8 +11175,8 @@ authors: TJ Holowaychuk ****************************** core-js-compat -3.37.0 -Copyright (c) 2014-2024 Denis Pushkarev +3.40.0 +Copyright (c) 2014-2025 Denis Pushkarev Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -9871,11 +11731,38 @@ SOFTWARE. ****************************** -cross-fetch -3.1.8 +cross-fetch +3.1.8 +The MIT License (MIT) + +Copyright (c) 2017 Leonardo Quixadá + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +cross-spawn +6.0.5 The MIT License (MIT) -Copyright (c) 2017 Leonardo Quixadá +Copyright (c) 2018 Made With MOXY Lda Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -9884,22 +11771,22 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** cross-spawn -7.0.3 +7.0.5 The MIT License (MIT) Copyright (c) 2018 Made With MOXY Lda @@ -9923,6 +11810,39 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +crypt +0.0.2 +Copyright © 2011, Paul Vorbach. All rights reserved. +Copyright © 2009, Jeff Mott. All rights reserved. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +* Neither the name Crypto-JS nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** crypto-browserify @@ -9982,6 +11902,48 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +crypto-random-string +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +crypto-random-string +2.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** css-color-keywords @@ -10529,6 +12491,32 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +dag-map +1.0.2 +Copyright (c) 2014 Kris Selden and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** data-uri-to-buffer @@ -10539,7 +12527,7 @@ authors: Nathan Rajlich (http://n8.io/) ****************************** data-view-buffer -1.0.1 +1.0.2 MIT License Copyright (c) 2023 Jordan Harband @@ -10566,7 +12554,7 @@ SOFTWARE. ****************************** data-view-byte-length -1.0.1 +1.0.2 MIT License Copyright (c) 2024 Jordan Harband @@ -10593,7 +12581,7 @@ SOFTWARE. ****************************** data-view-byte-offset -1.0.0 +1.0.1 MIT License Copyright (c) 2024 Jordan Harband @@ -10921,6 +12909,34 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +default-gateway +4.2.0 +Copyright (c) silverwind +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** defaults @@ -10982,6 +12998,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +define-lazy-prop +2.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** define-properties @@ -11042,6 +13073,21 @@ degenerator license: MIT authors: Nathan Rajlich (http://n8.io/) +****************************** + +del +6.1.1 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** delayed-stream @@ -12461,6 +14507,65 @@ THIS IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +****************************** + +dotenv +16.0.3 +Copyright (c) 2015, Scott Motte +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +****************************** + +dotenv-expand +10.0.0 +Copyright (c) 2016, Scott Motte +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + ****************************** drbg.js @@ -12518,6 +14623,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +dunder-proto +1.0.1 +MIT License + +Copyright (c) 2024 ECMAScript Shims + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** duplexer @@ -12697,7 +14829,7 @@ SOFTWARE. ****************************** electron-to-chromium -1.4.751 +1.5.83 Copyright 2018 Kilian Valkhof Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. @@ -13407,6 +15539,21 @@ THIS IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +****************************** + +env-editor +0.4.2 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** envinfo @@ -13434,6 +15581,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +eol +0.9.1 +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** errno @@ -13787,7 +15959,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** es-abstract -1.23.3 +1.23.9 The MIT License (MIT) Copyright (C) 2015 Jordan Harband @@ -13814,7 +15986,7 @@ THE SOFTWARE. ****************************** escalade -3.1.2 +3.2.0 MIT License Copyright (c) Luke Edwards (lukeed.com) @@ -13943,7 +16115,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** es-define-property -1.0.0 +1.0.1 MIT License Copyright (c) 2024 Jordan Harband @@ -14888,7 +17060,7 @@ authors: Yusuke Suzuki ****************************** es-set-tostringtag -2.0.3 +2.1.0 MIT License Copyright (c) 2022 ECMAScript Shims @@ -14942,7 +17114,7 @@ SOFTWARE. ****************************** es-to-primitive -1.2.1 +1.3.0 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -17915,7 +20087,386 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice ****************************** ethereumjs-util -6.1.0 +6.1.0 +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + + +****************************** + +ethereumjs-util +7.1.5 Mozilla Public License Version 2.0 ================================== @@ -18293,390 +20844,568 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice ****************************** -ethereumjs-util -7.1.5 -Mozilla Public License Version 2.0 -================================== +ethereumjs-wallet +1.0.2 +The MIT License (MIT) -1. Definitions --------------- +Copyright (c) 2015 Alex Beregszaszi -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -1.3. "Contribution" - means Covered Software of a particular Contributor. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. -1.5. "Incompatible With Secondary Licenses" - means +****************************** + +ethers +5.7.2 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/abi +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/abstract-provider +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/abstract-signer +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/address +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/base64 +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/basex +5.7.0 +Forked from https://github.com/cryptocoinjs/bs58 +Originally written by Mike Hearn for BitcoinJ +Copyright (c) 2011 Google Inc + +Ported to JavaScript by Stefan Thomas +Merged Buffer refactorings from base58-native by Stephen Pair +Copyright (c) 2013 BitPay Inc + +Removed Buffer Dependency +Copyright (c) 2019 Richard Moore + + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/bignumber +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@ethersproject/bytes +5.7.0 +MIT License + +Copyright (c) 2019 Richard Moore - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -1.6. "Executable Form" - means any form of the work other than Source Code Form. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. -1.8. "License" - means this document. +****************************** -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. +@ethersproject/constants +5.7.0 +MIT License -1.10. "Modifications" - means any of the following: +Copyright (c) 2019 Richard Moore - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - (b) any new file in Source Code Form that contains any Covered - Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. -1.13. "Source Code Form" - means the form of the work preferred for making modifications. +****************************** -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. +@ethersproject/contracts +5.7.0 +MIT License -2. License Grants and Conditions --------------------------------- +Copyright (c) 2019 Richard Moore -2.1. Grants +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. -2.2. Effective Date +****************************** -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. +@ethersproject/hash +5.7.0 +MIT License -2.3. Limitations on Grant Scope +Copyright (c) 2019 Richard Moore -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -(a) for any code that a Contributor has removed from Covered Software; - or +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). +****************************** -2.4. Subsequent Licenses +@ethersproject/hdnode +5.7.0 +MIT License -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). +Copyright (c) 2019 Richard Moore -2.5. Representation +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -2.6. Fair Use +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. -2.7. Conditions +****************************** -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. +@ethersproject/json-wallets +5.7.0 +MIT License -3. Responsibilities -------------------- +Copyright (c) 2019 Richard Moore -3.1. Distribution of Source Form +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -3.2. Distribution of Executable Form +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -If You distribute Covered Software in Executable Form then: -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and +****************************** -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. +@ethersproject/keccak256 +5.7.0 +MIT License -3.3. Distribution of a Larger Work +Copyright (c) 2019 Richard Moore -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -3.4. Notices +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -3.5. Application of Additional Terms -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. +****************************** -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- +@ethersproject/logger +5.7.0 +license: MIT +authors: Richard Moore -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. +****************************** -5. Termination --------------- +@ethersproject/networks +5.7.1 +MIT License -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. +Copyright (c) 2019 Richard Moore -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ -8. Litigation -------------- +****************************** -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. +@ethersproject/pbkdf2 +5.7.0 +MIT License -9. Miscellaneous ----------------- +Copyright (c) 2019 Richard Moore -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -10. Versions of the License ---------------------------- +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -10.1. New Versions +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. -10.2. Effect of New Versions +****************************** -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. +@ethersproject/properties +5.7.0 +MIT License -10.3. Modified Versions +Copyright (c) 2019 Richard Moore -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -Exhibit A - Source Code Form License Notice -------------------------------------------- - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. +****************************** -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. +@ethersproject/providers +5.7.2 +MIT License -You may add additional accurate notices of copyright ownership. +Copyright (c) 2019 Richard Moore -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -ethereumjs-wallet -1.0.2 -The MIT License (MIT) +@ethersproject/random +5.7.0 +MIT License -Copyright (c) 2015 Alex Beregszaszi +Copyright (c) 2019 Richard Moore Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -18699,8 +21428,8 @@ SOFTWARE. ****************************** -ethers -5.7.2 +@ethersproject/rlp +5.7.0 MIT License Copyright (c) 2019 Richard Moore @@ -18726,7 +21455,7 @@ SOFTWARE. ****************************** -@ethersproject/abi +@ethersproject/sha2 5.7.0 MIT License @@ -18753,7 +21482,7 @@ SOFTWARE. ****************************** -@ethersproject/abstract-provider +@ethersproject/signing-key 5.7.0 MIT License @@ -18780,7 +21509,7 @@ SOFTWARE. ****************************** -@ethersproject/abstract-signer +@ethersproject/solidity 5.7.0 MIT License @@ -18807,7 +21536,7 @@ SOFTWARE. ****************************** -@ethersproject/address +@ethersproject/strings 5.7.0 MIT License @@ -18834,7 +21563,7 @@ SOFTWARE. ****************************** -@ethersproject/base64 +@ethersproject/transactions 5.7.0 MIT License @@ -18861,22 +21590,12 @@ SOFTWARE. ****************************** -@ethersproject/basex +@ethersproject/units 5.7.0 -Forked from https://github.com/cryptocoinjs/bs58 -Originally written by Mike Hearn for BitcoinJ -Copyright (c) 2011 Google Inc - -Ported to JavaScript by Stefan Thomas -Merged Buffer refactorings from base58-native by Stephen Pair -Copyright (c) 2013 BitPay Inc +MIT License -Removed Buffer Dependency Copyright (c) 2019 Richard Moore - -MIT License - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights @@ -18898,7 +21617,7 @@ SOFTWARE. ****************************** -@ethersproject/bignumber +@ethersproject/wallet 5.7.0 MIT License @@ -18925,8 +21644,8 @@ SOFTWARE. ****************************** -@ethersproject/bytes -5.7.0 +@ethersproject/web +5.7.1 MIT License Copyright (c) 2019 Richard Moore @@ -18952,7 +21671,7 @@ SOFTWARE. ****************************** -@ethersproject/constants +@ethersproject/wordlists 5.7.0 MIT License @@ -18979,11 +21698,11 @@ SOFTWARE. ****************************** -@ethersproject/contracts -5.7.0 -MIT License +ethjs-abi +0.2.0 +The MIT License (MIT) -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -18992,25 +21711,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/hash -5.7.0 -MIT License +ethjs-abi +0.2.1 +The MIT License (MIT) -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19019,25 +21738,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/hdnode -5.7.0 -MIT License +ethjs-contract +0.1.9 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19046,25 +21765,32 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/json-wallets -5.7.0 -MIT License +ethjs-ens +2.0.1 +license: ISC +authors: Dan Finlay -Copyright (c) 2019 Richard Moore +****************************** + +ethjs-filter +0.1.5 +The MIT License + +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19073,25 +21799,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/keccak256 -5.7.0 -MIT License +ethjs-format +0.2.2 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19100,32 +21826,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -@ethersproject/logger -5.7.0 -license: MIT -authors: Richard Moore ****************************** -@ethersproject/networks -5.7.1 -MIT License +ethjs-query +0.2.9 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19134,25 +21853,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/pbkdf2 -5.7.0 -MIT License +ethjs-rpc +0.1.5 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19161,25 +21880,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/properties -5.7.0 -MIT License +ethjs-schema +0.1.5 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19188,25 +21907,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/providers -5.7.2 -MIT License +ethjs-schema +0.2.1 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19215,25 +21934,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/random -5.7.0 -MIT License +ethjs-util +0.1.3 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19242,25 +21961,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@ethersproject/rlp -5.7.0 -MIT License +ethjs-util +0.1.6 +The MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2016 Nick Dodson. nickdodson.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19269,25 +21988,78 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +eth-method-registry +4.0.0 +ISC License + +Copyright (c) 2020 MetaMask + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +eth-phishing-detect +1.2.0 +# DON'T BE A DICK PUBLIC LICENSE + +> Version 1.1, December 2016 + +> Copyright (C) 2018 kumavis + +Everyone is permitted to copy and distribute verbatim or modified +copies of this license document. + +> DON'T BE A DICK PUBLIC LICENSE +> TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +1. Do whatever you like with the original work, just don't be a dick. + + Being a dick includes - but is not limited to - the following instances: + + 1a. Outright copyright infringement - Don't just copy this and change the name. + 1b. Selling the unmodified original with no work done what-so-ever, that's REALLY being a dick. + 1c. Modifying the original work to contain hidden harmful content. That would make you a PROPER dick. + +2. If you become rich through modifications, related works/services, or supporting the original work, +share the love. Only a dick would make loads off this work and not buy the original work's +creator(s) a pint. + +3. Code is provided with no warranty. Using somebody else's code and bitching when it goes wrong makes +you a DONKEY dick. Fix the problem yourself. A non-dick would submit the fix back. ****************************** -@ethersproject/sha2 -5.7.0 +eth-rpc-errors +4.0.3 MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2019 MetaMask Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19310,11 +22082,11 @@ SOFTWARE. ****************************** -@ethersproject/signing-key -5.7.0 +eth-url-parser +1.0.4 MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) 2018 Bruno Barbieri Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19337,38 +22109,38 @@ SOFTWARE. ****************************** -@ethersproject/solidity -5.7.0 -MIT License +eventemitter2 +6.4.9 -Copyright (c) 2019 Richard Moore +The MIT License (MIT) -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Copyright (c) 2016 Paolo Fragomeni and Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the 'Software'), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@ethersproject/strings -5.7.0 -MIT License +eventemitter3 +3.1.2 +The MIT License (MIT) -Copyright (c) 2019 Richard Moore +Copyright (c) 2014 Arnout Kazemier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19391,38 +22163,67 @@ SOFTWARE. ****************************** -@ethersproject/transactions -5.7.0 -MIT License +events +3.0.0 +MIT -Copyright (c) 2019 Richard Moore +Copyright Joyent, Inc. and other Node contributors. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@ethersproject/units -5.7.0 -MIT License +events +3.3.0 +MIT -Copyright (c) 2019 Richard Moore +Copyright Joyent, Inc. and other Node contributors. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +event-target-shim +5.0.1 +The MIT License (MIT) + +Copyright (c) 2015 Toru Nagashima Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19443,13 +22244,14 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ****************************** -@ethersproject/wallet -5.7.0 -MIT License +evp_bytestokey +1.0.3 +The MIT License (MIT) -Copyright (c) 2019 Richard Moore +Copyright (c) 2017 crypto-browserify contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19472,38 +22274,41 @@ SOFTWARE. ****************************** -@ethersproject/web -5.7.1 +execa +1.0.0 MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) Sindre Sorhus (sindresorhus.com) -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@ethersproject/wordlists -5.7.0 +execa +5.1.1 MIT License -Copyright (c) 2019 Richard Moore +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +exec-async +2.2.0 +The MIT License (MIT) + +Copyright (c) 2015 Charlie Cheever Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19524,13 +22329,14 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + ****************************** -ethjs-abi -0.2.0 +expand-template +2.0.3 The MIT License (MIT) -Copyright (c) 2016 Nick Dodson +Copyright (c) 2018 Lars-Magnus Skog Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19550,14 +22356,115 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +expo +49.0.23 +license: MIT +authors: Expo ****************************** -ethjs-abi -0.2.1 +expo-application +5.3.1 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +expo-asset +8.10.1 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +expo-build-properties +0.12.5 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +expo-build-properties +0.8.3 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +@expo/bunyan +4.0.0 +# This is the MIT license + +Copyright 2016 Trent Mick +Copyright 2016 Joyent Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + + +****************************** + +@expo/bunyan +4.0.1 +# This is the MIT license + +Copyright 2016 Trent Mick +Copyright 2016 Joyent Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + + +****************************** + +@expo/cli +0.10.17 +license: MIT +authors: Expo + +****************************** + +@expo/code-signing-certificates +0.0.5 The MIT License (MIT) -Copyright (c) 2016 Nick Dodson +Copyright (c) 2020-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19566,25 +22473,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -ethjs-contract -0.1.9 -The MIT License +@expo/config +8.1.2 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19593,32 +22500,26 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -****************************** -ethjs-ens -2.0.1 -license: ISC -authors: Dan Finlay ****************************** -ethjs-filter -0.1.5 -The MIT License +@expo/config-plugins +7.2.5 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19627,25 +22528,26 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ****************************** -ethjs-format -0.2.2 -The MIT License +@expo/config-types +49.0.0 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2020-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19654,52 +22556,75 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ****************************** -ethjs-query -0.2.9 -The MIT License +expo-constants +14.4.2 +license: MIT +authors: 650 Industries, Inc. -Copyright (c) 2016 Nick Dodson. nickdodson.com +****************************** -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +@expo/devcert +1.1.4 +license: MIT +authors: Dave Wasmer -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +****************************** -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +expo-dev-client +2.4.13 +license: MIT +authors: 650 Industries, Inc. + +****************************** +expo-dev-launcher +2.4.15 +license: MIT +authors: 650 Industries, Inc. ****************************** -ethjs-rpc -0.1.5 -The MIT License +expo-dev-menu +3.2.3 +license: MIT +authors: 650 Industries, Inc. -Copyright (c) 2016 Nick Dodson. nickdodson.com +****************************** + +expo-dev-menu +3.2.4 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +expo-dev-menu-interface +1.3.0 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +@expo/dev-server +0.5.5 +The MIT License (MIT) + +Copyright (c) 2020-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19708,25 +22633,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -ethjs-schema -0.1.5 -The MIT License +@expo/env +0.0.5 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2023-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19735,25 +22660,39 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -ethjs-schema -0.2.1 -The MIT License +expo-file-system +15.4.5 +license: MIT +authors: 650 Industries, Inc. -Copyright (c) 2016 Nick Dodson. nickdodson.com +****************************** + +expo-font +11.4.0 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +@expo/image-utils +0.3.22 +The MIT License (MIT) + +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19762,25 +22701,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -ethjs-util -0.1.3 -The MIT License +@expo/json-file +8.2.37 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2015 650 Industries Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19789,25 +22728,26 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ****************************** -ethjs-util -0.1.6 -The MIT License +@expo/json-file +8.3.3 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19816,78 +22756,89 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + ****************************** -eth-method-registry -4.0.0 -ISC License +expo-json-utils +0.7.1 +license: MIT +authors: 650 Industries, Inc. -Copyright (c) 2020 MetaMask +****************************** -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. +expo-keep-awake +12.3.0 +license: MIT +authors: 650 Industries, Inc. -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** +expo-manifests +0.7.2 +license: MIT +authors: 650 Industries, Inc. ****************************** -eth-phishing-detect -1.2.0 -# DON'T BE A DICK PUBLIC LICENSE +@expo/metro-config +0.10.7 +The MIT License (MIT) -> Version 1.1, December 2016 +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) -> Copyright (C) 2018 kumavis +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -Everyone is permitted to copy and distribute verbatim or modified -copies of this license document. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -> DON'T BE A DICK PUBLIC LICENSE -> TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. -1. Do whatever you like with the original work, just don't be a dick. - Being a dick includes - but is not limited to - the following instances: - 1a. Outright copyright infringement - Don't just copy this and change the name. - 1b. Selling the unmodified original with no work done what-so-ever, that's REALLY being a dick. - 1c. Modifying the original work to contain hidden harmful content. That would make you a PROPER dick. +****************************** -2. If you become rich through modifications, related works/services, or supporting the original work, -share the love. Only a dick would make loads off this work and not buy the original work's -creator(s) a pint. +expo-modules-autolinking +1.5.1 +license: MIT +authors: 650 Industries, Inc. -3. Code is provided with no warranty. Using somebody else's code and bitching when it goes wrong makes -you a DONKEY dick. Fix the problem yourself. A non-dick would submit the fix back. +****************************** +expo-modules-core +1.5.13 +license: MIT +authors: 650 Industries, Inc. ****************************** -eth-rpc-errors -4.0.3 -MIT License +@expo/osascript +2.0.33 +The MIT License (MIT) -Copyright (c) 2019 MetaMask +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19910,11 +22861,11 @@ SOFTWARE. ****************************** -eth-url-parser -1.0.4 -MIT License +@expo/osascript +2.1.5 +The MIT License (MIT) -Copyright (c) 2018 Bruno Barbieri +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19937,38 +22888,11 @@ SOFTWARE. ****************************** -eventemitter2 -6.4.9 - -The MIT License (MIT) - -Copyright (c) 2016 Paolo Fragomeni and Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the 'Software'), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is furnished -to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -eventemitter3 -3.1.2 +@expo/package-manager +1.1.2 The MIT License (MIT) -Copyright (c) 2014 Arnout Kazemier +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19989,69 +22913,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -****************************** - -events -3.0.0 -MIT - -Copyright Joyent, Inc. and other Node contributors. - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to permit -persons to whom the Software is furnished to do so, subject to the -following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -USE OR OTHER DEALINGS IN THE SOFTWARE. - ****************************** -events -3.3.0 -MIT - -Copyright Joyent, Inc. and other Node contributors. - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to permit -persons to whom the Software is furnished to do so, subject to the -following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -USE OR OTHER DEALINGS IN THE SOFTWARE. - +@expo/plist +0.0.20 +license: MIT +authors: undefined ****************************** -event-target-shim -5.0.1 +@expo/prebuild-config +6.2.6 The MIT License (MIT) -Copyright (c) 2015 Toru Nagashima +Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -20075,11 +22951,12 @@ SOFTWARE. ****************************** -evp_bytestokey -1.0.3 -The MIT License (MIT) +@expo/rudder-sdk-node +1.1.1 +MIT License -Copyright (c) 2017 crypto-browserify contributors +Copyright (c) 2021 650 Industries, Inc. (Expo) +Copyright (c) 2017 Segment, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -20102,52 +22979,18 @@ SOFTWARE. ****************************** -execa -5.1.1 -MIT License - -Copyright (c) Sindre Sorhus (https://sindresorhus.com) - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -expand-template -2.0.3 -The MIT License (MIT) - -Copyright (c) 2018 Lars-Magnus Skog - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +@expo/sdk-runtime-versions +1.0.0 <> +license: MIT +authors: Expo ****************************** -@expo/config-plugins -7.2.5 +@expo/spawn-async +1.5.0 The MIT License (MIT) -Copyright (c) 2015-present 650 Industries, Inc. (aka Expo) +Copyright (c) 2015 650 Industries Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -20171,11 +23014,11 @@ SOFTWARE. ****************************** -@expo/config-types -49.0.0 +@expo/spawn-async +1.7.2 The MIT License (MIT) -Copyright (c) 2020-present 650 Industries, Inc. (aka Expo) +Copyright (c) 2015 650 Industries Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -20199,11 +23042,19 @@ SOFTWARE. ****************************** -@expo/json-file -8.2.37 +expo-updates-interface +0.10.1 +license: MIT +authors: 650 Industries, Inc. + +****************************** + +@expo/vector-icons +13.0.0 The MIT License (MIT) -Copyright (c) 2015 650 Industries +Copyright (c) 2015 Joel Arvidsson +Copyright (c) 2020 650 Industries Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -20224,20 +23075,12 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ****************************** -@expo/plist -0.0.20 -license: MIT -authors: undefined - -****************************** - -@expo/sdk-runtime-versions -1.0.0 <> -license: MIT -authors: Expo +@expo/xcpretty +4.3.2 +license: BSD-3-Clause +authors: Evan Bacon (https://github.com/evanbacon) ****************************** @@ -20428,7 +23271,7 @@ THE SOFTWARE. ****************************** fast-glob -3.2.12 +3.3.3 The MIT License (MIT) Copyright (c) Denis Malinochkin @@ -20843,6 +23686,41 @@ fast-text-encoding limitations under the License. +****************************** + +fast-uri +3.0.1 +Copyright (c) 2021 The Fastify Team +Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * The names of any contributors may not be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + * * * + +The complete list of contributors can be found at: +- https://github.com/garycourt/uri-js/graphs/contributors + ****************************** fast-xml-parser @@ -20888,6 +23766,43 @@ CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. +****************************** + +fbemitter +3.0.0 +BSD License + +For emitter software + +Copyright (c) 2013-present, Facebook, Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** fbjs @@ -20976,6 +23891,33 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +fetch-retry +4.1.1 +The MIT License (MIT) + +Copyright (c) 2016 Jon K. Bernhardsen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** file-uri-to-path @@ -21112,6 +24054,33 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +find-babel-config +2.1.2 +The MIT License (MIT) + +Copyright (c) 2016 Tommy Leunen (tommyleunen.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** find-cache-dir @@ -21172,6 +24141,213 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +find-yarn-workspace-root +2.0.0 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2017 Square, Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ****************************** firebase @@ -21748,6 +24924,33 @@ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +fontfaceobserver +2.3.0 +Copyright (c) 2014 - Bram Stein + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** for-each @@ -21881,6 +25084,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +form-data +3.0.2 +Copyright (c) 2012 Felix Geisendörfer (felix@debuggable.com) and contributors + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + + ****************************** form-data @@ -21986,6 +25214,34 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +freeport-async +2.0.0 +The MIT License (MIT) + +Copyright (c) 2015 650 Industries + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** fresh @@ -22042,6 +25298,34 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +fsevents +2.3.3 +MIT License +----------- + +Copyright (C) 2010-2020 by Philipp Dunkel, Ben Noordhuis, Elan Shankar, Paul Miller + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** fs-extra @@ -22063,6 +25347,69 @@ OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHE ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +fs-extra +9.0.0 +(The MIT License) + +Copyright (c) 2011-2017 JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +fs-extra +9.1.0 +(The MIT License) + +Copyright (c) 2011-2017 JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +fs-minipass +2.1.0 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** fs.realpath @@ -22167,7 +25514,7 @@ THE SOFTWARE. ****************************** function.prototype.name -1.1.6 +1.1.8 The MIT License (MIT) Copyright (c) 2016 Jordan Harband @@ -22640,6 +25987,22 @@ fwd-stream license: MIT* authors: undefined +****************************** + +@gar/promisify +1.1.3 +The MIT License (MIT) + +Copyright © 2020-2022 Michael Garvin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + + ****************************** gauge @@ -22720,7 +26083,7 @@ SOFTWARE. ****************************** get-intrinsic -1.2.4 +1.2.7 MIT License Copyright (c) 2020 Jordan Harband @@ -22771,6 +26134,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +get-port +3.2.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** get-port-please @@ -22798,6 +26176,48 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +get-proto +1.0.1 +MIT License + +Copyright (c) 2025 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +get-stream +4.1.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** get-stream @@ -22816,7 +26236,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** get-symbol-description -1.0.2 +1.1.0 MIT License Copyright (c) 2021 Inspect JS @@ -23015,6 +26435,27 @@ under a Creative Commons Attribution-ShareAlike 4.0 International License https://creativecommons.org/licenses/by-sa/4.0/ +****************************** + +glob +9.3.5 +The ISC License + +Copyright (c) 2009-2023 Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** globals @@ -23048,7 +26489,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** globalthis -1.0.3 +1.0.4 The MIT License (MIT) Copyright (c) 2016 Jordan Harband @@ -23111,7 +26552,7 @@ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** gopd -1.0.1 +1.2.0 MIT License Copyright (c) 2022 Jordan Harband @@ -23180,6 +26621,33 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +graphql +15.8.0 +MIT License + +Copyright (c) GraphQL Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** graphql @@ -23317,6 +26785,21 @@ authors: Dotan Simha license: MIT authors: Dotan Simha +****************************** + +@graphql-typed-document-node/core +3.2.0 +MIT License + +Copyright (c) 2020-2023 Dotan Simha + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** @grpc/grpc-js @@ -23940,7 +27423,7 @@ SOFTWARE. ****************************** has-proto -1.0.3 +1.2.0 MIT License Copyright (c) 2022 Inspect JS @@ -23967,7 +27450,7 @@ SOFTWARE. ****************************** has-symbols -1.0.3 +1.1.0 MIT License Copyright (c) 2016 Jordan Harband @@ -24207,6 +27690,25 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +hosted-git-info +3.0.8 +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + + ****************************** htmlparser2 @@ -25281,6 +28783,21 @@ imurmurhash license: MIT authors: Jens Taylor +****************************** + +indent-string +4.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** indexof @@ -25288,6 +28805,27 @@ indexof license: MIT* authors: undefined +****************************** + +infer-owner +1.0.4 +The ISC License + +Copyright (c) npm, Inc. and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** inflight @@ -25395,10 +28933,25 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +internal-ip +4.3.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** internal-slot -1.0.7 +1.1.0 MIT License Copyright (c) 2019 Jordan Harband @@ -25555,6 +29108,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +ip-regex +2.1.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** ip-regex @@ -25714,7 +29294,7 @@ SOFTWARE. ****************************** is-array-buffer -3.0.4 +3.0.5 MIT License Copyright (c) 2015 Chen Gengyuan, Inspect JS @@ -25821,7 +29401,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** is-bigint -1.0.2 +1.1.0 MIT License Copyright (c) 2018 Jordan Harband @@ -25863,7 +29443,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** is-boolean-object -1.1.2 +1.2.1 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -25888,6 +29468,33 @@ SOFTWARE. +****************************** + +is-buffer +1.1.6 +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** is-builtin-module @@ -25934,7 +29541,7 @@ SOFTWARE. ****************************** is-core-module -2.13.1 +2.16.1 The MIT License (MIT) Copyright (c) 2014 Dave Justice @@ -25959,7 +29566,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** is-data-view -1.0.1 +1.0.2 MIT License Copyright (c) 2024 Inspect JS @@ -25986,7 +29593,7 @@ SOFTWARE. ****************************** is-date-object -1.0.5 +1.1.0 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -26101,6 +29708,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +is-extglob +1.0.0 +The MIT License (MIT) + +Copyright (c) 2014-2015, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** is-extglob @@ -26131,7 +29765,7 @@ THE SOFTWARE. ****************************** is-finalizationregistry -1.0.2 +1.1.1 MIT License Copyright (c) 2020 Inspect JS @@ -26250,6 +29884,33 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +is-glob +2.0.1 +The MIT License (MIT) + +Copyright (c) 2014-2015, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** is-glob @@ -26276,14 +29937,224 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - + +****************************** + +is-hex-prefixed +1.0.0 +The MIT License + +Copyright (c) 2016 Nick Dodson. nickdodson.com + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +is-interactive +1.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +is-invalid-path +0.1.0 +The MIT License (MIT) + +Copyright (c) 2015, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +is-map +2.0.3 +MIT License + +Copyright (c) 2019 Inspect JS + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +is-nan +1.3.2 +The MIT License (MIT) + +Copyright (c) 2014 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +is-number +7.0.0 +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +is-number-object +1.1.1 +The MIT License (MIT) + +Copyright (c) 2015 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +****************************** + +is-object +0.1.2 +license: MIT +authors: Raynos + +****************************** + +isobject +3.0.1 +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************** -is-hex-prefixed -1.0.0 -The MIT License +isomorphic-ws +4.0.1 +The MIT License (MIT) -Copyright (c) 2016 Nick Dodson. nickdodson.com +Copyright (c) 2018 Zejin Zhuang Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -26292,22 +30163,21 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** -is-interactive -1.0.0 +is-path-cwd +2.2.0 MIT License Copyright (c) Sindre Sorhus (sindresorhus.com) @@ -26321,196 +30191,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** -is-map -2.0.2 +is-path-inside +3.0.3 MIT License -Copyright (c) 2019 Inspect JS - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -is-nan -1.3.2 -The MIT License (MIT) - -Copyright (c) 2014 Jordan Harband - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -is-negative-zero -2.0.3 -The MIT License (MIT) - -Copyright (c) 2014 Jordan Harband - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -is-number -7.0.0 -The MIT License (MIT) - -Copyright (c) 2014-present, Jon Schlinkert. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - -****************************** - -is-number-object -1.0.7 -The MIT License (MIT) - -Copyright (c) 2015 Jordan Harband - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - - -****************************** - -is-object -0.1.2 -license: MIT -authors: Raynos - -****************************** - -isobject -3.0.1 -The MIT License (MIT) +Copyright (c) Sindre Sorhus (sindresorhus.com) -Copyright (c) 2014-2017, Jon Schlinkert. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -****************************** - -isomorphic-ws -4.0.1 -The MIT License (MIT) - -Copyright (c) 2018 Zejin Zhuang - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. ****************************** @@ -26557,7 +30249,7 @@ THE SOFTWARE. ****************************** is-regex -1.1.4 +1.2.1 The MIT License (MIT) Copyright (c) 2014 Jordan Harband @@ -26599,7 +30291,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** is-set -2.0.2 +2.0.3 MIT License Copyright (c) 2019 Inspect JS @@ -26626,7 +30318,7 @@ SOFTWARE. ****************************** is-shared-array-buffer -1.0.3 +1.0.4 MIT License Copyright (c) 2021 Inspect JS @@ -26650,6 +30342,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +is-stream +1.1.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** is-stream @@ -26668,7 +30387,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** is-string -1.0.7 +1.1.1 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -26696,7 +30415,7 @@ SOFTWARE. ****************************** is-symbol -1.0.4 +1.1.1 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -26724,7 +30443,7 @@ SOFTWARE. ****************************** is-typed-array -1.1.13 +1.1.15 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -26813,10 +30532,37 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +is-valid-path +0.1.1 +The MIT License (MIT) + +Copyright (c) 2015 Jon Schlinkert + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** is-weakmap -2.0.1 +2.0.2 MIT License Copyright (c) 2019 Inspect JS @@ -26843,7 +30589,7 @@ SOFTWARE. ****************************** is-weakref -1.0.2 +1.1.0 MIT License Copyright (c) 2020 Inspect JS @@ -26870,7 +30616,7 @@ SOFTWARE. ****************************** is-weakset -2.0.1 +2.0.4 MIT License Copyright (c) 2019 Inspect JS @@ -27541,6 +31287,13 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +jimp-compact +0.16.1 +license: MIT +authors: Pooya Parsa + ****************************** jiti @@ -27584,10 +31337,17 @@ Redistribution and use in source and binary forms, with or without modification, THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +****************************** + +join-component +1.1.0 <> +license: MIT +authors: undefined + ****************************** @jridgewell/gen-mapping -0.3.5 +0.3.8 Copyright 2022 Justin Ridgewell Permission is hereby granted, free of charge, to any person obtaining a copy @@ -28043,27 +31803,27 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. jscodeshift 0.14.0 -MIT License - -Copyright (c) Facebook, Inc. and its affiliates. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** @@ -28087,8 +31847,8 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** jsesc -0.5.0 -Copyright Mathias Bynens +3.0.2 +Copyright Mathias Bynens Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the @@ -28113,7 +31873,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** jsesc -2.5.2 +3.1.0 Copyright Mathias Bynens Permission is hereby granted, free of charge, to any person obtaining @@ -28197,27 +31957,27 @@ SOFTWARE. jsonc-parser 3.2.0 -The MIT License (MIT) - -Copyright (c) Microsoft - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The MIT License (MIT) + +Copyright (c) Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** @@ -28241,6 +32001,27 @@ OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHE ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +jsonfile +6.1.0 +(The MIT License) + +Copyright (c) 2012-2015, JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** json-parse-better-errors @@ -28344,207 +32125,207 @@ authors: undefined json-schema 0.4.0 -Dojo is available under *either* the terms of the BSD 3-Clause "New" License *or* the -Academic Free License version 2.1. As a recipient of Dojo, you may choose which -license to receive this code under (except as noted in per-module LICENSE -files). Some modules may not be the copyright of the Dojo Foundation. These -modules contain explicit declarations of copyright in both the LICENSE files in -the directories in which they reside and in the code itself. No external -contributions are allowed under licenses which are fundamentally incompatible -with the AFL-2.1 OR and BSD-3-Clause licenses that Dojo is distributed under. - -The text of the AFL-2.1 and BSD-3-Clause licenses is reproduced below. - -------------------------------------------------------------------------------- -BSD 3-Clause "New" License: -********************** - -Copyright (c) 2005-2015, The Dojo Foundation -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of the Dojo Foundation nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -------------------------------------------------------------------------------- -The Academic Free License, v. 2.1: -********************************** - -This Academic Free License (the "License") applies to any original work of -authorship (the "Original Work") whose owner (the "Licensor") has placed the -following notice immediately following the copyright notice for the Original -Work: - -Licensed under the Academic Free License version 2.1 - -1) Grant of Copyright License. Licensor hereby grants You a world-wide, -royalty-free, non-exclusive, perpetual, sublicenseable license to do the -following: - -a) to reproduce the Original Work in copies; - -b) to prepare derivative works ("Derivative Works") based upon the Original -Work; - -c) to distribute copies of the Original Work and Derivative Works to the -public; - -d) to perform the Original Work publicly; and - -e) to display the Original Work publicly. - -2) Grant of Patent License. Licensor hereby grants You a world-wide, -royalty-free, non-exclusive, perpetual, sublicenseable license, under patent -claims owned or controlled by the Licensor that are embodied in the Original -Work as furnished by the Licensor, to make, use, sell and offer for sale the -Original Work and Derivative Works. - -3) Grant of Source Code License. The term "Source Code" means the preferred -form of the Original Work for making modifications to it and all available -documentation describing how to modify the Original Work. Licensor hereby -agrees to provide a machine-readable copy of the Source Code of the Original -Work along with each copy of the Original Work that Licensor distributes. -Licensor reserves the right to satisfy this obligation by placing a -machine-readable copy of the Source Code in an information repository -reasonably calculated to permit inexpensive and convenient access by You for as -long as Licensor continues to distribute the Original Work, and by publishing -the address of that information repository in a notice immediately following -the copyright notice that applies to the Original Work. - -4) Exclusions From License Grant. Neither the names of Licensor, nor the names -of any contributors to the Original Work, nor any of their trademarks or -service marks, may be used to endorse or promote products derived from this -Original Work without express prior written permission of the Licensor. Nothing -in this License shall be deemed to grant any rights to trademarks, copyrights, -patents, trade secrets or any other intellectual property of Licensor except as -expressly stated herein. No patent license is granted to make, use, sell or -offer to sell embodiments of any patent claims other than the licensed claims -defined in Section 2. No right is granted to the trademarks of Licensor even if -such marks are included in the Original Work. Nothing in this License shall be -interpreted to prohibit Licensor from licensing under different terms from this -License any Original Work that Licensor otherwise would have a right to -license. - -5) This section intentionally omitted. - -6) Attribution Rights. You must retain, in the Source Code of any Derivative -Works that You create, all copyright, patent or trademark notices from the -Source Code of the Original Work, as well as any notices of licensing and any -descriptive text identified therein as an "Attribution Notice." You must cause -the Source Code for any Derivative Works that You create to carry a prominent -Attribution Notice reasonably calculated to inform recipients that You have -modified the Original Work. - -7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that -the copyright in and to the Original Work and the patent rights granted herein -by Licensor are owned by the Licensor or are sublicensed to You under the terms -of this License with the permission of the contributor(s) of those copyrights -and patent rights. Except as expressly stated in the immediately proceeding -sentence, the Original Work is provided under this License on an "AS IS" BASIS -and WITHOUT WARRANTY, either express or implied, including, without limitation, -the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. -This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No -license to Original Work is granted hereunder except under this disclaimer. - -8) Limitation of Liability. Under no circumstances and under no legal theory, -whether in tort (including negligence), contract, or otherwise, shall the -Licensor be liable to any person for any direct, indirect, special, incidental, -or consequential damages of any character arising as a result of this License -or the use of the Original Work including, without limitation, damages for loss -of goodwill, work stoppage, computer failure or malfunction, or any and all -other commercial damages or losses. This limitation of liability shall not -apply to liability for death or personal injury resulting from Licensor's -negligence to the extent applicable law prohibits such limitation. Some -jurisdictions do not allow the exclusion or limitation of incidental or -consequential damages, so this exclusion and limitation may not apply to You. - -9) Acceptance and Termination. If You distribute copies of the Original Work or -a Derivative Work, You must make a reasonable effort under the circumstances to -obtain the express assent of recipients to the terms of this License. Nothing -else but this License (or another written agreement between Licensor and You) -grants You permission to create Derivative Works based upon the Original Work -or to exercise any of the rights granted in Section 1 herein, and any attempt -to do so except under the terms of this License (or another written agreement -between Licensor and You) is expressly prohibited by U.S. copyright law, the -equivalent laws of other countries, and by international treaty. Therefore, by -exercising any of the rights granted to You in Section 1 herein, You indicate -Your acceptance of this License and all of its terms and conditions. - -10) Termination for Patent Action. This License shall terminate automatically -and You may no longer exercise any of the rights granted to You by this License -as of the date You commence an action, including a cross-claim or counterclaim, -against Licensor or any licensee alleging that the Original Work infringes a -patent. This termination provision shall not apply for an action alleging -patent infringement by combinations of the Original Work with other software or -hardware. - -11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this -License may be brought only in the courts of a jurisdiction wherein the -Licensor resides or in which Licensor conducts its primary business, and under -the laws of that jurisdiction excluding its conflict-of-law provisions. The -application of the United Nations Convention on Contracts for the International -Sale of Goods is expressly excluded. Any use of the Original Work outside the -scope of this License or after its termination shall be subject to the -requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et -seq., the equivalent laws of other countries, and international treaty. This -section shall survive the termination of this License. - -12) Attorneys Fees. In any action to enforce the terms of this License or -seeking damages relating thereto, the prevailing party shall be entitled to -recover its costs and expenses, including, without limitation, reasonable -attorneys' fees and costs incurred in connection with such action, including -any appeal of such action. This section shall survive the termination of this -License. - -13) Miscellaneous. This License represents the complete agreement concerning -the subject matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent necessary to -make it enforceable. - -14) Definition of "You" in This License. "You" throughout this License, whether -in upper or lower case, means an individual or a legal entity exercising rights -under, and complying with all of the terms of, this License. For legal -entities, "You" includes any entity that controls, is controlled by, or is -under common control with you. For purposes of this definition, "control" means -(i) the power, direct or indirect, to cause the direction or management of such -entity, whether by contract or otherwise, or (ii) ownership of fifty percent -(50%) or more of the outstanding shares, or (iii) beneficial ownership of such -entity. - -15) Right to Use. You may use the Original Work in all ways not otherwise -restricted or conditioned by this License or by law, and Licensor promises not -to interfere with or be responsible for such uses by You. - -This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. -Permission is hereby granted to copy and distribute this license without -modification. This license may not be modified without the express written -permission of its copyright owner. +Dojo is available under *either* the terms of the BSD 3-Clause "New" License *or* the +Academic Free License version 2.1. As a recipient of Dojo, you may choose which +license to receive this code under (except as noted in per-module LICENSE +files). Some modules may not be the copyright of the Dojo Foundation. These +modules contain explicit declarations of copyright in both the LICENSE files in +the directories in which they reside and in the code itself. No external +contributions are allowed under licenses which are fundamentally incompatible +with the AFL-2.1 OR and BSD-3-Clause licenses that Dojo is distributed under. + +The text of the AFL-2.1 and BSD-3-Clause licenses is reproduced below. + +------------------------------------------------------------------------------- +BSD 3-Clause "New" License: +********************** + +Copyright (c) 2005-2015, The Dojo Foundation +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of the Dojo Foundation nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +------------------------------------------------------------------------------- +The Academic Free License, v. 2.1: +********************************** + +This Academic Free License (the "License") applies to any original work of +authorship (the "Original Work") whose owner (the "Licensor") has placed the +following notice immediately following the copyright notice for the Original +Work: + +Licensed under the Academic Free License version 2.1 + +1) Grant of Copyright License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license to do the +following: + +a) to reproduce the Original Work in copies; + +b) to prepare derivative works ("Derivative Works") based upon the Original +Work; + +c) to distribute copies of the Original Work and Derivative Works to the +public; + +d) to perform the Original Work publicly; and + +e) to display the Original Work publicly. + +2) Grant of Patent License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license, under patent +claims owned or controlled by the Licensor that are embodied in the Original +Work as furnished by the Licensor, to make, use, sell and offer for sale the +Original Work and Derivative Works. + +3) Grant of Source Code License. The term "Source Code" means the preferred +form of the Original Work for making modifications to it and all available +documentation describing how to modify the Original Work. Licensor hereby +agrees to provide a machine-readable copy of the Source Code of the Original +Work along with each copy of the Original Work that Licensor distributes. +Licensor reserves the right to satisfy this obligation by placing a +machine-readable copy of the Source Code in an information repository +reasonably calculated to permit inexpensive and convenient access by You for as +long as Licensor continues to distribute the Original Work, and by publishing +the address of that information repository in a notice immediately following +the copyright notice that applies to the Original Work. + +4) Exclusions From License Grant. Neither the names of Licensor, nor the names +of any contributors to the Original Work, nor any of their trademarks or +service marks, may be used to endorse or promote products derived from this +Original Work without express prior written permission of the Licensor. Nothing +in this License shall be deemed to grant any rights to trademarks, copyrights, +patents, trade secrets or any other intellectual property of Licensor except as +expressly stated herein. No patent license is granted to make, use, sell or +offer to sell embodiments of any patent claims other than the licensed claims +defined in Section 2. No right is granted to the trademarks of Licensor even if +such marks are included in the Original Work. Nothing in this License shall be +interpreted to prohibit Licensor from licensing under different terms from this +License any Original Work that Licensor otherwise would have a right to +license. + +5) This section intentionally omitted. + +6) Attribution Rights. You must retain, in the Source Code of any Derivative +Works that You create, all copyright, patent or trademark notices from the +Source Code of the Original Work, as well as any notices of licensing and any +descriptive text identified therein as an "Attribution Notice." You must cause +the Source Code for any Derivative Works that You create to carry a prominent +Attribution Notice reasonably calculated to inform recipients that You have +modified the Original Work. + +7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that +the copyright in and to the Original Work and the patent rights granted herein +by Licensor are owned by the Licensor or are sublicensed to You under the terms +of this License with the permission of the contributor(s) of those copyrights +and patent rights. Except as expressly stated in the immediately proceeding +sentence, the Original Work is provided under this License on an "AS IS" BASIS +and WITHOUT WARRANTY, either express or implied, including, without limitation, +the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. +This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No +license to Original Work is granted hereunder except under this disclaimer. + +8) Limitation of Liability. Under no circumstances and under no legal theory, +whether in tort (including negligence), contract, or otherwise, shall the +Licensor be liable to any person for any direct, indirect, special, incidental, +or consequential damages of any character arising as a result of this License +or the use of the Original Work including, without limitation, damages for loss +of goodwill, work stoppage, computer failure or malfunction, or any and all +other commercial damages or losses. This limitation of liability shall not +apply to liability for death or personal injury resulting from Licensor's +negligence to the extent applicable law prohibits such limitation. Some +jurisdictions do not allow the exclusion or limitation of incidental or +consequential damages, so this exclusion and limitation may not apply to You. + +9) Acceptance and Termination. If You distribute copies of the Original Work or +a Derivative Work, You must make a reasonable effort under the circumstances to +obtain the express assent of recipients to the terms of this License. Nothing +else but this License (or another written agreement between Licensor and You) +grants You permission to create Derivative Works based upon the Original Work +or to exercise any of the rights granted in Section 1 herein, and any attempt +to do so except under the terms of this License (or another written agreement +between Licensor and You) is expressly prohibited by U.S. copyright law, the +equivalent laws of other countries, and by international treaty. Therefore, by +exercising any of the rights granted to You in Section 1 herein, You indicate +Your acceptance of this License and all of its terms and conditions. + +10) Termination for Patent Action. This License shall terminate automatically +and You may no longer exercise any of the rights granted to You by this License +as of the date You commence an action, including a cross-claim or counterclaim, +against Licensor or any licensee alleging that the Original Work infringes a +patent. This termination provision shall not apply for an action alleging +patent infringement by combinations of the Original Work with other software or +hardware. + +11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this +License may be brought only in the courts of a jurisdiction wherein the +Licensor resides or in which Licensor conducts its primary business, and under +the laws of that jurisdiction excluding its conflict-of-law provisions. The +application of the United Nations Convention on Contracts for the International +Sale of Goods is expressly excluded. Any use of the Original Work outside the +scope of this License or after its termination shall be subject to the +requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et +seq., the equivalent laws of other countries, and international treaty. This +section shall survive the termination of this License. + +12) Attorneys Fees. In any action to enforce the terms of this License or +seeking damages relating thereto, the prevailing party shall be entitled to +recover its costs and expenses, including, without limitation, reasonable +attorneys' fees and costs incurred in connection with such action, including +any appeal of such action. This section shall survive the termination of this +License. + +13) Miscellaneous. This License represents the complete agreement concerning +the subject matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent necessary to +make it enforceable. + +14) Definition of "You" in This License. "You" throughout this License, whether +in upper or lower case, means an individual or a legal entity exercising rights +under, and complying with all of the terms of, this License. For legal +entities, "You" includes any entity that controls, is controlled by, or is +under common control with you. For purposes of this definition, "control" means +(i) the power, direct or indirect, to cause the direction or management of such +entity, whether by contract or otherwise, or (ii) ownership of fifty percent +(50%) or more of the outstanding shares, or (iii) beneficial ownership of such +entity. + +15) Right to Use. You may use the Original Work in all ways not otherwise +restricted or conditioned by this License or by law, and Licensor promises not +to interfere with or be responsible for such uses by You. + +This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. +Permission is hereby granted to copy and distribute this license without +modification. This license may not be modified without the express written +permission of its copyright owner. ****************************** jsonschema -1.4.0 +1.4.1 jsonschema is licensed under MIT license. Copyright (C) 2012-2015 Tom de Grunt @@ -28568,6 +32349,60 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +json-schema-deref-sync +0.13.0 +The MIT License (MIT) + +Copyright (c) 2016 Bojan D. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +json-schema-traverse +1.0.0 +MIT License + +Copyright (c) 2017 Evgeny Poberezkin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** json-stringify-safe @@ -28761,6 +32596,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +js-yaml +4.1.0 +(The MIT License) + +Copyright (C) 2011-2015 by Vitaly Puzrin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** keccak @@ -29242,76 +33104,437 @@ authors: aaronisme incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. - END OF TERMS AND CONDITIONS + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +****************************** + +@keystonehq/bc-ur-registry-eth +0.19.1 <> +license: ISC +authors: soralit + +****************************** + +@keystonehq/bc-ur-registry-eth +0.6.14 <> +license: ISC +authors: soralit + +****************************** + +@keystonehq/metamask-airgapped-keyring +0.13.1 +license: MIT +authors: aaronisme + +****************************** + +@keystonehq/metamask-airgapped-keyring +0.14.1 +license: MIT +authors: aaronisme + +****************************** + +@keystonehq/ur-decoder +0.12.2 <> +license: ISC +authors: soralit + +****************************** + +keyvaluestorage-interface +1.0.0 +MIT License + +Copyright (c) 2020 Pedro Gomes + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +****************************** + +kind-of +5.1.0 +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +kind-of +6.0.3 +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +klaw +4.1.0 +(The MIT License) + +Copyright (c) 2015-2016 JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +kleur +3.0.3 +The MIT License (MIT) + +Copyright (c) Luke Edwards (lukeed.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +klona +2.0.6 +MIT License + +Copyright (c) Luke Edwards (lukeed.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +lazystream +1.0.1 +Copyright (c) 2013 J. Pommerening, contributors. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + + + +****************************** + +@ledgerhq/cryptoassets-evm-signatures +13.5.0 +The MIT License + +Copyright (c) 2017-present Ledger https://www.ledger.com/ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +@ledgerhq/devices +8.4.4 +The MIT License + +Copyright (c) 2017-present Ledger https://www.ledger.com/ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +@ledgerhq/domain-service +1.2.6 +The MIT License + +Copyright (c) 2017-present Ledger https://www.ledger.com/ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +@ledgerhq/errors +6.19.1 +The MIT License + +Copyright (c) 2017-present Ledger https://www.ledger.com/ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + - APPENDIX: How to apply the Apache License to your work. +****************************** - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. +@ledgerhq/evm-tools +1.2.3 +The MIT License - Copyright {yyyy} {name of copyright owner} +Copyright (c) 2017-present Ledger https://www.ledger.com/ - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - http://www.apache.org/licenses/LICENSE-2.0 +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -@keystonehq/bc-ur-registry-eth -0.19.1 <> -license: ISC -authors: soralit +@ledgerhq/hw-app-eth +6.39.0 +The MIT License -****************************** +Copyright (c) 2017-present Ledger https://www.ledger.com/ -@keystonehq/bc-ur-registry-eth -0.6.14 <> -license: ISC -authors: soralit +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -****************************** +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -@keystonehq/metamask-airgapped-keyring -0.13.1 -license: MIT -authors: aaronisme ****************************** -@keystonehq/metamask-airgapped-keyring -0.14.1 -license: MIT -authors: aaronisme +@ledgerhq/hw-transport +6.31.4 +The MIT License -****************************** +Copyright (c) 2017-present Ledger https://www.ledger.com/ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. -@keystonehq/ur-decoder -0.12.2 <> -license: ISC -authors: soralit ****************************** -keyvaluestorage-interface -1.0.0 -MIT License +@ledgerhq/hw-transport-mocker +6.29.4 +The MIT License -Copyright (c) 2020 Pedro Gomes +Copyright (c) 2017-present Ledger https://www.ledger.com/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -29320,24 +33543,25 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + ****************************** -kind-of -5.1.0 -The MIT License (MIT) +@ledgerhq/live-env +2.3.0 +The MIT License -Copyright (c) 2014-2017, Jon Schlinkert. +Copyright (c) 2017-present Ledger https://www.ledger.com/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -29360,11 +33584,18 @@ THE SOFTWARE. ****************************** -kind-of -6.0.3 -The MIT License (MIT) +@ledgerhq/logs +6.12.0 +license: Apache-2.0 +authors: undefined -Copyright (c) 2014-2017, Jon Schlinkert. +****************************** + +@ledgerhq/react-native-hw-transport-ble +6.33.2 +The MIT License + +Copyright (c) 2017-present Ledger https://www.ledger.com/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -29387,32 +33618,38 @@ THE SOFTWARE. ****************************** -klaw -4.1.0 -(The MIT License) +@ledgerhq/types-live +6.52.0 +The MIT License -Copyright (c) 2015-2016 JP Richardson +Copyright (c) 2017-present Ledger https://www.ledger.com/ -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files -(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, - merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS -OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** -kleur -3.0.3 +level-blobs +0.1.7 The MIT License (MIT) -Copyright (c) Luke Edwards (lukeed.com) +Copyright (c) 2014 Mathias Buus Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -29432,58 +33669,149 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ****************************** -klona -2.0.6 -MIT License +level-filesystem +1.2.0 +The MIT License (MIT) -Copyright (c) Luke Edwards (lukeed.com) +Copyright (c) 2014 Mathias Buus -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +****************************** + +level-fix-range +1.0.2 +Copyright (c) 2013 Dominic Tarr + +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -lazystream -1.0.1 -Copyright (c) 2013 J. Pommerening, contributors. +level-fix-range +2.0.0 +Copyright (c) 2013 Dominic Tarr -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +level-hooks +4.5.0 +Copyright (c) 2012 'Dominic Tarr' + +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -@ledgerhq/cryptoassets-evm-signatures -13.5.0 -The MIT License +level-peek +1.0.6 +Copyright (c) 2013 Dominic Tarr -Copyright (c) 2017-present Ledger https://www.ledger.com/ +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +level-sublevel +5.2.3 +Copyright (c) 2013 Dominic Tarr Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -29504,517 +33832,809 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -****************************** +****************************** + +levelup +0.18.6 +The MIT License (MIT) +===================== + +Copyright (c) 2014 LevelUP contributors +--------------------------------------- + +*LevelUP contributors listed at * + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +leven +3.1.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +lie +3.1.1 +#Copyright (c) 2014 Calvin Metcalf + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +**THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.** + +****************************** + +lightningcss +1.19.0 + Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" +means each individual or legal entity that creates, contributes to +the creation of, or owns Covered Software. + +1.2. "Contributor Version" +means the combination of the Contributions of others (if any) used +by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" +means Covered Software of a particular Contributor. + +1.4. "Covered Software" +means Source Code Form to which the initial Contributor has attached +the notice in Exhibit A, the Executable Form of such Source Code +Form, and Modifications of such Source Code Form, in each case +including portions thereof. + +1.5. "Incompatible With Secondary Licenses" +means + +(a) that the initial Contributor has attached the notice described +in Exhibit B to the Covered Software; or + +(b) that the Covered Software was made available under the terms of +version 1.1 or earlier of the License, but not also under the +terms of a Secondary License. + +1.6. "Executable Form" +means any form of the work other than Source Code Form. + +1.7. "Larger Work" +means a work that combines Covered Software with other material, in +a separate file or files, that is not Covered Software. + +1.8. "License" +means this document. + +1.9. "Licensable" +means having the right to grant, to the maximum extent possible, +whether at the time of the initial grant or subsequently, any and +all of the rights conveyed by this License. + +1.10. "Modifications" +means any of the following: + +(a) any file in Source Code Form that results from an addition to, +deletion from, or modification of the contents of Covered +Software; or + +(b) any new file in Source Code Form that contains any Covered +Software. + +1.11. "Patent Claims" of a Contributor +means any patent claim(s), including without limitation, method, +process, and apparatus claims, in any patent Licensable by such +Contributor that would be infringed, but for the grant of the +License, by the making, using, selling, offering for sale, having +made, import, or transfer of either its Contributions or its +Contributor Version. + +1.12. "Secondary License" +means either the GNU General Public License, Version 2.0, the GNU +Lesser General Public License, Version 2.1, the GNU Affero General +Public License, Version 3.0, or any later versions of those +licenses. + +1.13. "Source Code Form" +means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") +means an individual or a legal entity exercising rights under this +License. For legal entities, "You" includes any entity that +controls, is controlled by, or is under common control with You. For +purposes of this definition, "control" means (a) the power, direct +or indirect, to cause the direction or management of such entity, +whether by contract or otherwise, or (b) ownership of more than +fifty percent (50%) of the outstanding shares or beneficial +ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) +Licensable by such Contributor to use, reproduce, make available, +modify, display, perform, distribute, and otherwise exploit its +Contributions, either on an unmodified basis, with Modifications, or +as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer +for sale, have made, import, and otherwise transfer either its +Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; +or + +(b) for infringements caused by: (i) Your and any other third party's +modifications of Covered Software, or (ii) the combination of its +Contributions with other software (except as part of its Contributor +Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of +its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses -@ledgerhq/devices -8.4.4 -The MIT License +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). -Copyright (c) 2017-present Ledger https://www.ledger.com/ +2.5. Representation -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +2.6. Fair Use -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. +2.7. Conditions -****************************** +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. -@ledgerhq/domain-service -1.2.6 -The MIT License +3. Responsibilities +------------------- -Copyright (c) 2017-present Ledger https://www.ledger.com/ +3.1. Distribution of Source Form -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +3.2. Distribution of Executable Form -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +If You distribute Covered Software in Executable Form then: +(a) such Covered Software must also be made available in Source Code +Form, as described in Section 3.1, and You must inform recipients of +the Executable Form how they can obtain a copy of such Source Code +Form by reasonable means in a timely manner, at a charge no more +than the cost of distribution to the recipient; and -****************************** +(b) You may distribute such Executable Form under the terms of this +License, or sublicense it under different terms, provided that the +license for the Executable Form does not attempt to limit or alter +the recipients' rights in the Source Code Form under this License. -@ledgerhq/errors -6.19.1 -The MIT License +3.3. Distribution of a Larger Work -Copyright (c) 2017-present Ledger https://www.ledger.com/ +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +3.4. Notices -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +3.5. Application of Additional Terms +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. -****************************** +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- -@ledgerhq/evm-tools -1.2.3 -The MIT License +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. -Copyright (c) 2017-present Ledger https://www.ledger.com/ +5. Termination +-------------- -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ -****************************** +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ -@ledgerhq/hw-app-eth -6.39.0 -The MIT License +8. Litigation +------------- -Copyright (c) 2017-present Ledger https://www.ledger.com/ +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +9. Miscellaneous +---------------- -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +10. Versions of the License +--------------------------- +10.1. New Versions -****************************** +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. -@ledgerhq/hw-transport -6.31.4 -The MIT License +10.2. Effect of New Versions -Copyright (c) 2017-present Ledger https://www.ledger.com/ +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +10.3. Modified Versions -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. -****************************** +Exhibit A - Source Code Form License Notice +------------------------------------------- -@ledgerhq/hw-transport-mocker -6.29.4 -The MIT License +This Source Code Form is subject to the terms of the Mozilla Public +License, v. 2.0. If a copy of the MPL was not distributed with this +file, You can obtain one at https://mozilla.org/MPL/2.0/. -Copyright (c) 2017-present Ledger https://www.ledger.com/ +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +You may add additional accurate notices of copyright ownership. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +This Source Code Form is "Incompatible With Secondary Licenses", as +defined by the Mozilla Public License, v. 2.0. ****************************** -@ledgerhq/live-env -2.3.0 -The MIT License - -Copyright (c) 2017-present Ledger https://www.ledger.com/ - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +lightningcss-darwin-arm64 +1.19.0 + Mozilla Public License Version 2.0 +================================== -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +1. Definitions +-------------- -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +1.1. "Contributor" +means each individual or legal entity that creates, contributes to +the creation of, or owns Covered Software. +1.2. "Contributor Version" +means the combination of the Contributions of others (if any) used +by a Contributor and that particular Contributor's Contribution. -****************************** +1.3. "Contribution" +means Covered Software of a particular Contributor. -@ledgerhq/logs -6.12.0 -license: Apache-2.0 -authors: undefined +1.4. "Covered Software" +means Source Code Form to which the initial Contributor has attached +the notice in Exhibit A, the Executable Form of such Source Code +Form, and Modifications of such Source Code Form, in each case +including portions thereof. -****************************** +1.5. "Incompatible With Secondary Licenses" +means -@ledgerhq/react-native-hw-transport-ble -6.33.2 -The MIT License +(a) that the initial Contributor has attached the notice described +in Exhibit B to the Covered Software; or -Copyright (c) 2017-present Ledger https://www.ledger.com/ +(b) that the Covered Software was made available under the terms of +version 1.1 or earlier of the License, but not also under the +terms of a Secondary License. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +1.6. "Executable Form" +means any form of the work other than Source Code Form. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +1.7. "Larger Work" +means a work that combines Covered Software with other material, in +a separate file or files, that is not Covered Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +1.8. "License" +means this document. +1.9. "Licensable" +means having the right to grant, to the maximum extent possible, +whether at the time of the initial grant or subsequently, any and +all of the rights conveyed by this License. -****************************** +1.10. "Modifications" +means any of the following: -@ledgerhq/types-live -6.52.0 -The MIT License +(a) any file in Source Code Form that results from an addition to, +deletion from, or modification of the contents of Covered +Software; or -Copyright (c) 2017-present Ledger https://www.ledger.com/ +(b) any new file in Source Code Form that contains any Covered +Software. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +1.11. "Patent Claims" of a Contributor +means any patent claim(s), including without limitation, method, +process, and apparatus claims, in any patent Licensable by such +Contributor that would be infringed, but for the grant of the +License, by the making, using, selling, offering for sale, having +made, import, or transfer of either its Contributions or its +Contributor Version. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +1.12. "Secondary License" +means either the GNU General Public License, Version 2.0, the GNU +Lesser General Public License, Version 2.1, the GNU Affero General +Public License, Version 3.0, or any later versions of those +licenses. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +1.13. "Source Code Form" +means the form of the work preferred for making modifications. +1.14. "You" (or "Your") +means an individual or a legal entity exercising rights under this +License. For legal entities, "You" includes any entity that +controls, is controlled by, or is under common control with You. For +purposes of this definition, "control" means (a) the power, direct +or indirect, to cause the direction or management of such entity, +whether by contract or otherwise, or (b) ownership of more than +fifty percent (50%) of the outstanding shares or beneficial +ownership of such entity. -****************************** +2. License Grants and Conditions +-------------------------------- -level-blobs -0.1.7 -The MIT License (MIT) +2.1. Grants -Copyright (c) 2014 Mathias Buus +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +(a) under intellectual property rights (other than patent or trademark) +Licensable by such Contributor to use, reproduce, make available, +modify, display, perform, distribute, and otherwise exploit its +Contributions, either on an unmodified basis, with Modifications, or +as part of a Larger Work; and -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +(b) under Patent Claims of such Contributor to make, use, sell, offer +for sale, have made, import, and otherwise transfer either its +Contributions or its Contributor Version. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +2.2. Effective Date -****************************** +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. -level-filesystem -1.2.0 -The MIT License (MIT) +2.3. Limitations on Grant Scope -Copyright (c) 2014 Mathias Buus +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +(a) for any code that a Contributor has removed from Covered Software; +or -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +(b) for infringements caused by: (i) Your and any other third party's +modifications of Covered Software, or (ii) the combination of its +Contributions with other software (except as part of its Contributor +Version); or -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +(c) under Patent Claims infringed by Covered Software in the absence of +its Contributions. -****************************** +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). -level-fix-range -1.0.2 -Copyright (c) 2013 Dominic Tarr +2.4. Subsequent Licenses -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and -associated documentation files (the "Software"), to -deal in the Software without restriction, including -without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom -the Software is furnished to do so, -subject to the following conditions: +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). -The above copyright notice and this permission notice -shall be included in all copies or substantial portions of the Software. +2.5. Representation -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. +2.6. Fair Use -****************************** +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. -level-fix-range -2.0.0 -Copyright (c) 2013 Dominic Tarr +2.7. Conditions -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and -associated documentation files (the "Software"), to -deal in the Software without restriction, including -without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom -the Software is furnished to do so, -subject to the following conditions: +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. -The above copyright notice and this permission notice -shall be included in all copies or substantial portions of the Software. +3. Responsibilities +------------------- -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +3.1. Distribution of Source Form +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. -****************************** +3.2. Distribution of Executable Form -level-hooks -4.5.0 -Copyright (c) 2012 'Dominic Tarr' +If You distribute Covered Software in Executable Form then: -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and -associated documentation files (the "Software"), to -deal in the Software without restriction, including -without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom -the Software is furnished to do so, -subject to the following conditions: +(a) such Covered Software must also be made available in Source Code +Form, as described in Section 3.1, and You must inform recipients of +the Executable Form how they can obtain a copy of such Source Code +Form by reasonable means in a timely manner, at a charge no more +than the cost of distribution to the recipient; and -The above copyright notice and this permission notice -shall be included in all copies or substantial portions of the Software. +(b) You may distribute such Executable Form under the terms of this +License, or sublicense it under different terms, provided that the +license for the Executable Form does not attempt to limit or alter +the recipients' rights in the Source Code Form under this License. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +3.3. Distribution of a Larger Work +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). -****************************** +3.4. Notices -level-peek -1.0.6 -Copyright (c) 2013 Dominic Tarr +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and -associated documentation files (the "Software"), to -deal in the Software without restriction, including -without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom -the Software is furnished to do so, -subject to the following conditions: +3.5. Application of Additional Terms -The above copyright notice and this permission notice -shall be included in all copies or substantial portions of the Software. +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR -ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. -****************************** +5. Termination +-------------- -level-sublevel -5.2.3 -Copyright (c) 2013 Dominic Tarr +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ -****************************** +8. Litigation +------------- -levelup -0.18.6 -The MIT License (MIT) -===================== +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. -Copyright (c) 2014 LevelUP contributors ---------------------------------------- +9. Miscellaneous +---------------- -*LevelUP contributors listed at * +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +10. Versions of the License +--------------------------- -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +10.1. New Versions -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. +10.2. Effect of New Versions -****************************** +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. -leven -3.1.0 -MIT License +10.3. Modified Versions -Copyright (c) Sindre Sorhus (sindresorhus.com) +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Exhibit A - Source Code Form License Notice +------------------------------------------- +This Source Code Form is subject to the terms of the Mozilla Public +License, v. 2.0. If a copy of the MPL was not distributed with this +file, You can obtain one at https://mozilla.org/MPL/2.0/. -****************************** +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. -lie -3.1.1 -#Copyright (c) 2014 Calvin Metcalf +You may add additional accurate notices of copyright ownership. -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +This Source Code Form is "Incompatible With Secondary Licenses", as +defined by the Mozilla Public License, v. 2.0. -**THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.** ****************************** @@ -31085,28 +35705,43 @@ SOFTWARE. loglevel 1.9.1 -Copyright (c) 2013 Tim Perry - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. +Copyright (c) 2013 Tim Perry + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +log-symbols +2.2.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @@ -31997,6 +36632,144 @@ Redistribution and use in source and binary forms, with or without modification, This software is provided by the copyright holders and contributors “as is” and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright owner or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage. +****************************** + +math-intrinsics +1.1.0 +MIT License + +Copyright (c) 2024 ECMAScript Shims + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +md5 +2.2.1 +Copyright © 2011-2012, Paul Vorbach. +Copyright © 2009, Jeff Mott. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +* Neither the name Crypto-JS nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +****************************** + +md5 +2.3.0 +Copyright © 2011-2012, Paul Vorbach. +Copyright © 2009, Jeff Mott. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +* Neither the name Crypto-JS nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +****************************** + +md5-file +3.2.3 +# License + +The MIT License (MIT) + +Copyright (c) 2015 - 2017 Rory Bradford and contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +md5hex +1.0.0 +The MIT License (MIT) + +Copyright (c) 2015 650 Industries + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** md5.js @@ -32200,6 +36973,35 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +memory-cache +0.2.0 +Copyright (c) 2013, Paul Tarjan +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** merge2 @@ -32518,7 +37320,7 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @metamask/composable-controller -3.0.3 +10.0.0 MIT License Copyright (c) 2018 MetaMask @@ -32988,7 +37790,7 @@ THE SOFTWARE. ****************************** @metamask/eth-ledger-bridge-keyring -6.0.0 +8.0.0 ISC License Copyright (c) 2020 MetaMask @@ -33259,9 +38061,26 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @metamask/keyring-api -8.1.3 -license: Custom: https://docs.metamask.io/snaps/ -authors: undefined +10.1.0 +Copyright ConsenSys Software Inc. 2022. All rights reserved. + +You acknowledge and agree that ConsenSys Software Inc. (“ConsenSys”) (or ConsenSys’s licensors) own all legal right, title and interest in and to the work, software, application, source code, documentation and any other documents in this repository (collectively, the “Program”), including any intellectual property rights which subsist in the Program (whether those rights happen to be registered or not, and wherever in the world those rights may exist), whether in source code or any other form. + +Subject to the limited license below, you may not (and you may not permit anyone else to) distribute, publish, copy, modify, merge, combine with another program, create derivative works of, reverse engineer, decompile or otherwise attempt to extract the source code of, the Program or any part thereof, except that you may contribute to this repository. + +You are granted a non-exclusive, non-transferable, non-sublicensable license to distribute, publish, copy, modify, merge, combine with another program or create derivative works of the Program (such resulting program, collectively, the “Resulting Program”) solely for Non-Commercial Use as long as you: + 1. give prominent notice (“Notice”) with each copy of the Resulting Program that the Program is used in the Resulting Program and that the Program is the copyright of ConsenSys; and + 2. subject the Resulting Program and any distribution, publication, copy, modification, merger therewith, combination with another program or derivative works thereof to the same Notice requirement and Non-Commercial Use restriction set forth herein. + +“Non-Commercial Use” means each use as described in clauses (1)-(3) below, as reasonably determined by ConsenSys in its sole discretion: + 1. personal use for research, personal study, private entertainment, hobby projects or amateur pursuits, in each case without any anticipated commercial application; + 2. use by any charitable organization, educational institution, public research organization, public safety or health organization, environmental protection organization or government institution; or + 3. the number of monthly active users of the Resulting Program across all versions thereof and platforms globally do not exceed 10,000 at any time. + +You will not use any trade mark, service mark, trade name, logo of ConsenSys or any other company or organization in a way that is likely or intended to cause confusion about the owner or authorized user of such marks, names or logos. + +If you have any questions, comments or interest in pursuing any other use cases, please reach out to us at communications@metamask.io. + ****************************** @@ -33353,7 +38172,7 @@ authors: undefined ****************************** @metamask/message-manager -11.0.1 +11.0.2 MIT License Copyright (c) 2018 MetaMask @@ -33485,7 +38304,7 @@ SOFTWARE. ****************************** @metamask/notification-services-controller -0.11.0 +0.15.0 MIT License Copyright (c) 2024 MetaMask @@ -33726,7 +38545,7 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @metamask/ppom-validator -0.35.1 +0.36.0 license: Custom: https://nodejs.org authors: undefined @@ -34086,7 +38905,7 @@ If you have any questions, comments or interest in pursuing any other use cases, ****************************** @metamask/selected-network-controller -18.0.2 +19.0.0 MIT License Copyright (c) 2023 MetaMask @@ -34138,14 +38957,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ****************************** @metamask/slip44 -3.1.0 -license: ISC -authors: Dan Finlay - -****************************** - -@metamask/slip44 -4.0.0 +4.1.0 license: ISC authors: Dan Finlay @@ -34520,7 +39332,7 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @metamask/stake-sdk -0.2.13 +0.3.0 license: Custom: https://nodejs.org authors: undefined @@ -34803,6 +39615,13 @@ authors: undefined ****************************** +metro-react-native-babel-preset +0.76.8 +license: MIT +authors: undefined + +****************************** + metro-react-native-babel-preset 0.76.9 license: MIT @@ -34947,7 +39766,7 @@ THE SOFTWARE. ****************************** mime -2.5.2 +2.6.0 The MIT License (MIT) Copyright (c) 2010 Benjamin Thomas, Robert Kieffer @@ -35056,6 +39875,21 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +mimic-fn +1.2.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** mimic-fn @@ -35153,6 +39987,27 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +minimatch +8.0.4 +The ISC License + +Copyright (c) 2011-2023 Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** minimatch @@ -35219,6 +40074,143 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +minipass +5.0.0 +The ISC License + +Copyright (c) 2017-2023 npm, Inc., Isaac Z. Schlueter, and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +minipass +7.1.2 +The ISC License + +Copyright (c) 2017-2023 npm, Inc., Isaac Z. Schlueter, and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +minipass-collect +1.0.2 <> +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +minipass-flush +1.0.5 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +minipass-pipeline +1.2.4 <> +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +minizlib +2.1.2 +Minizlib was created by Isaac Z. Schlueter. +It is a derivative work of the Node.js project. + +""" +Copyright Isaac Z. Schlueter and Contributors +Copyright Node.js contributors. All rights reserved. +Copyright Joyent, Inc. and other Node contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +""" + + ****************************** mixin-object @@ -35273,6 +40265,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +mkdirp +1.0.4 +Copyright James Halliday (mail@substack.net) and Isaac Z. Schlueter (i@izs.me) + +This project is free software released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** mkdirp-classic @@ -35861,6 +40880,34 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +mz +2.7.0 + +The MIT License (MIT) + +Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** nan @@ -35879,7 +40926,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ****************************** nanoid -3.3.7 +3.3.8 The MIT License (MIT) Copyright 2017 Andrey Sitnik @@ -36070,6 +41117,34 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +nested-error-stacks +2.0.1 +Copyright (c) 2014 Matt Lavin + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + + ****************************** netmask @@ -36104,6 +41179,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +nice-try +1.0.5 +The MIT License (MIT) + +Copyright (c) 2018 Tobias Reich + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** @nicolo-ribaudo/eslint-scope-5-internals @@ -37074,7 +42176,7 @@ SOFTWARE. ****************************** node-releases -2.0.14 +2.0.19 The MIT License Copyright (c) 2017 Sergey Rubanov (https://github.com/chicoxyzzy) @@ -37260,6 +42362,60 @@ release builds and is subject to the Notifee License terms which can be found at https://notifee.app/license-terms +****************************** + +@npmcli/fs +1.1.1 <> + + +ISC License + +Copyright npm, Inc. + +Permission to use, copy, modify, and/or distribute this +software for any purpose with or without fee is hereby +granted, provided that the above copyright notice and this +permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND NPM DISCLAIMS ALL +WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO +EVENT SHALL NPM BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +@npmcli/move-file +1.1.2 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) npm, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + + ****************************** npmlog @@ -37286,6 +42442,54 @@ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +npm-package-arg +7.0.0 +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +npm-run-path +2.0.2 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** npm-run-path @@ -37396,7 +42600,7 @@ THE SOFTWARE. ****************************** object.assign -4.1.5 +4.1.7 The MIT License (MIT) Copyright (c) 2014 Jordan Harband @@ -37477,7 +42681,7 @@ SOFTWARE. ****************************** object-inspect -1.13.1 +1.13.3 MIT License Copyright (c) 2013 James Halliday @@ -37663,6 +42867,33 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +onetime +2.0.1 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** onetime @@ -37765,39 +42996,54 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** -on-headers -1.0.2 -(The MIT License) +on-headers +1.0.2 +(The MIT License) + +Copyright (c) 2014 Douglas Christopher Wilson + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +open +6.4.0 +MIT License -Copyright (c) 2014 Douglas Christopher Wilson +Copyright (c) Sindre Sorhus (sindresorhus.com) -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** open -6.4.0 +8.4.2 MIT License -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: @@ -37840,6 +43086,21 @@ opencv-bindings license: ISC authors: undefined +****************************** + +ora +3.4.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** ora @@ -38035,34 +43296,7 @@ SOFTWARE. ****************************** -@parcel/watcher-linux-x64-glibc -2.3.0 -MIT License - -Copyright (c) 2017-present Devon Govett - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@parcel/watcher-linux-x64-musl +@parcel/watcher-darwin-arm64 2.3.0 MIT License @@ -38157,6 +43391,21 @@ parse-multipart-data license: MIT authors: Ignacio Mazzara (nachomazzara@gmail.com) +****************************** + +parse-png +2.1.0 +MIT License + +Copyright (c) Kevin Mårtensson (github.com/kevva) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** parseurl @@ -38187,28 +43436,61 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +password-prompt +1.1.3 +license: 0BSD +authors: Jeff Dickey @jdxcode + ****************************** path 0.12.7 -Copyright Joyent, Inc. and other Node contributors. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + + +****************************** + +path-browserify +1.0.1 +MIT License + +Copyright (c) 2013 James Halliday + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @@ -38330,6 +43612,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +path-key +2.0.1 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** path-key @@ -38436,7 +43745,7 @@ software or this license, under any kind of legal claim.*** ****************************** path-to-regexp -0.1.10 +0.1.12 The MIT License (MIT) Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com) @@ -38570,13 +43879,40 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +p-finally +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** picocolors -1.0.0 +1.1.1 ISC License -Copyright (c) 2021 Alexey Raspopov, Kostiantyn Denysov, Anton Verinov +Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above @@ -39062,6 +44398,21 @@ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +pkg-up +3.1.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** p-limit @@ -39194,6 +44545,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +p-map +4.0.0 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** pngjs @@ -39294,6 +44660,32 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +postcss +8.4.49 +The MIT License (MIT) + +Copyright 2013 Andrey Sitnik + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** postcss-value-parser @@ -39349,6 +44741,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +pretty-bytes +5.6.0 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** pretty-format @@ -39561,6 +44968,26 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +promise-inflight +1.0.1 +Copyright (c) 2017, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + + ****************************** promise-to-callback @@ -39673,365 +45100,365 @@ SOFTWARE. protobufjs 7.3.2 -This license applies to all parts of protobuf.js except those files -either explicitly including or referencing a different license or -located in a directory containing a different LICENSE file. - ---- - -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ---- - -Code generated by the command line utilities is owned by the owner -of the input file used when generating it. This code is not -standalone and requires a support library to be linked with it. This -support library is itself covered by the above license. +This license applies to all parts of protobuf.js except those files +either explicitly including or referencing a different license or +located in a directory containing a different LICENSE file. + +--- + +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +--- + +Code generated by the command line utilities is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. ****************************** @protobufjs/aspromise 1.1.2 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/base64 1.1.2 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/codegen 2.0.4 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/eventemitter 1.1.0 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/fetch 1.1.0 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/float 1.0.2 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/inquire 1.1.0 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/path 1.1.2 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/pool 1.1.0 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @protobufjs/utf8 1.1.0 -Copyright (c) 2016, Daniel Wirtz All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -* Neither the name of its author, nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Copyright (c) 2016, Daniel Wirtz All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +* Neither the name of its author, nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** @@ -42626,7 +48053,7 @@ authors: undefined ****************************** react-native-linear-gradient -2.5.6 +2.8.3 MIT License Copyright (c) 2016 React Native Community @@ -43177,7 +48604,7 @@ SOFTWARE. ****************************** react-native-reanimated -3.4.2 +3.3.0 The MIT License (MIT) Copyright (c) 2016 Software Mansion @@ -43816,193 +49243,220 @@ SOFTWARE. ****************************** -react-native-view-shot -3.1.2 +react-native-view-shot +3.1.2 +The MIT License (MIT) + +Copyright (c) 2016 Gaëtan Renaudeau + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-native/virtualized-lists +0.72.8 +license: MIT +authors: undefined + +****************************** + +react-native-webview-invoke +0.6.2 +Copyright (c) 2016 Huang Qi + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +@react-navigation/bottom-tabs +5.11.11 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-navigation/compat +5.3.20 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-navigation/core +5.15.3 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-navigation/native +5.9.4 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-navigation/routers +5.7.2 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@react-navigation/stack +5.14.9 +MIT License + +Copyright (c) 2017 React Navigation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +react-redux +8.1.3 The MIT License (MIT) -Copyright (c) 2016 Gaëtan Renaudeau - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-native/virtualized-lists -0.72.8 -license: MIT -authors: undefined - -****************************** - -react-native-webview-invoke -0.6.2 -Copyright (c) 2016 Huang Qi - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -****************************** - -@react-navigation/bottom-tabs -5.11.11 -MIT License - -Copyright (c) 2017 React Navigation Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-navigation/compat -5.3.20 -MIT License - -Copyright (c) 2017 React Navigation Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-navigation/core -5.15.3 -MIT License - -Copyright (c) 2017 React Navigation Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-navigation/native -5.9.4 -MIT License - -Copyright (c) 2017 React Navigation Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-navigation/routers -5.7.2 -MIT License - -Copyright (c) 2017 React Navigation Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -****************************** - -@react-navigation/stack -5.14.9 -MIT License - -Copyright (c) 2017 React Navigation Contributors +Copyright (c) 2015-present Dan Abramov Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -44023,33 +49477,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -****************************** - -react-redux -8.1.3 -The MIT License (MIT) - -Copyright (c) 2015-present Dan Abramov - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - ****************************** react-refresh @@ -45000,27 +50427,27 @@ SOFTWARE. @reduxjs/toolkit 1.9.7 -MIT License - -Copyright (c) 2018 Mark Erikson - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2018 Mark Erikson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** @@ -45297,33 +50724,33 @@ SOFTWARE. redux-thunk 2.4.2 -The MIT License (MIT) - -Copyright (c) 2015-present Dan Abramov - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2015-present Dan Abramov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** reflect.getprototypeof -1.0.6 +1.0.10 MIT License Copyright (c) 2021 ECMAScript Shims @@ -45436,7 +50863,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** regenerate-unicode-properties -10.1.0 +10.2.0 Copyright Mathias Bynens Permission is hereby granted, free of charge, to any person obtaining @@ -45513,10 +50940,37 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +regenerator-transform +0.15.2 +MIT License + +Copyright (c) 2014-present, Facebook, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** regexp.prototype.flags -1.5.2 +1.5.4 The MIT License (MIT) Copyright (C) 2014 Jordan Harband @@ -45544,7 +50998,7 @@ THE SOFTWARE. ****************************** regexpu-core -5.3.2 +6.2.0 Copyright Mathias Bynens Permission is hereby granted, free of charge, to any person obtaining @@ -45567,10 +51021,38 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +regjsgen +0.8.0 +The MIT License (MIT) + +Copyright 2014-2020 Benjamin Tan + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** regjsparser -0.9.1 +0.12.0 Copyright (c) Julian Viereck and Contributors, All Rights Reserved. Redistribution and use in source and binary forms, with or without @@ -45817,6 +51299,61 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +require-from-string +2.0.2 +The MIT License (MIT) + +Copyright (c) Vsevolod Strukchinsky (github.com/floatdrop) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +requireg +0.2.2 +Copyright 2013 Tomas Aparicio +All rights reserved. + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + ****************************** require-main-filename @@ -45869,60 +51406,60 @@ SOFTWARE. reselect 4.1.8 -The MIT License (MIT) - -Copyright (c) 2015-2018 Reselect Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2015-2018 Reselect Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** reselect 5.1.1 -The MIT License (MIT) - -Copyright (c) 2015-2018 Reselect Contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2015-2018 Reselect Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** resolve -1.22.8 +1.22.10 MIT License Copyright (c) 2012 James Halliday @@ -45946,6 +51483,30 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +resolve +1.7.1 +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** resolve @@ -46070,6 +51631,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +restore-cursor +2.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** restore-cursor @@ -47234,7 +52822,7 @@ rxjs ****************************** safe-array-concat -1.1.2 +1.1.3 MIT License Copyright (c) 2023 Jordan Harband @@ -47312,6 +52900,40 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +safe-json-stringify +1.2.0 +license: MIT +authors: Debitoor + +****************************** + +safe-push-apply +1.0.0 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** safer-buffer @@ -47342,7 +52964,7 @@ SOFTWARE. ****************************** safe-regex-test -1.0.3 +1.1.0 MIT License Copyright (c) 2022 Jordan Harband @@ -47730,6 +53352,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +@segment/loosely-validate-event +2.0.0 <> +The MIT License + +Copyright (c) 2017 Segment.io friends@segment.com + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** @segment/sovran-react-native @@ -47826,6 +53475,48 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +semver +7.5.2 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +semver +7.5.3 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** semver @@ -47987,7 +53678,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ****************************** -@sentry/cli-linux-x64 +@sentry/cli-darwin 2.36.6 license: BSD-3-Clause authors: undefined @@ -48431,6 +54122,21 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +serialize-error +6.0.0 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** serve-static @@ -48776,6 +54482,33 @@ set-immediate-shim license: MIT authors: Sindre Sorhus +****************************** + +set-proto +1.0.0 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** setprototypeof @@ -49360,6 +55093,33 @@ third-party archives. limitations under the License. +****************************** + +shebang-command +1.2.0 +The MIT License (MIT) + +Copyright (c) Kevin Martensson (github.com/kevva) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** shebang-command @@ -49375,6 +55135,33 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +shebang-regex +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** shebang-regex @@ -49451,7 +55238,88 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** side-channel -1.0.6 +1.1.0 +MIT License + +Copyright (c) 2019 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +side-channel-list +1.0.0 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +side-channel-map +1.0.1 +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +side-channel-weakmap +1.0.2 MIT License Copyright (c) 2019 Jordan Harband @@ -49674,28 +55542,28 @@ THE SOFTWARE. @sinclair/typebox 0.27.8 -TypeBox: JSON Schema Type Builder with Static Type Resolution for TypeScript - -The MIT License (MIT) - -Copyright (c) 2017-2023 Haydn Paterson (sinclair) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +TypeBox: JSON Schema Type Builder with Static Type Resolution for TypeScript + +The MIT License (MIT) + +Copyright (c) 2017-2023 Haydn Paterson (sinclair) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** @@ -49883,6 +55751,33 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +slugify +1.6.6 +The MIT License (MIT) + +Copyright (c) Simeon Velichkov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** smart-buffer @@ -50188,6 +56083,40 @@ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +****************************** + +source-map-js +1.2.1 + +Copyright (c) 2009-2011, Mozilla Foundation and contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the names of the Mozilla Foundation nor the names of project + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + ****************************** source-map-support @@ -50467,6 +56396,13 @@ authors: Shinnosuke Watanabe (https://github.com/shinnn) ****************************** +split +1.0.1 +license: MIT +authors: Dominic Tarr (http://bit.ly/dominictarr) + +****************************** + split2 4.1.0 Copyright (c) 2014-2018, Matteo Collina @@ -50573,6 +56509,28 @@ authors: Spruce Systems Inc. license: Apache-2.0 authors: Spruce Systems Inc. +****************************** + +ssri +8.0.1 +ISC License + +Copyright (c) npm, Inc. + +Permission to use, copy, modify, and/or distribute this software for +any purpose with or without fee is hereby granted, provided that the +above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE COPYRIGHT HOLDER DISCLAIMS +ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** @stablelib/aead @@ -90711,7 +96669,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** string.prototype.trim -1.2.9 +1.2.10 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -90738,7 +96696,7 @@ SOFTWARE. ****************************** string.prototype.trimend -1.0.8 +1.0.9 MIT License Copyright (c) 2017 Khaled Al-Ansari @@ -90907,6 +96865,33 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +strip-eof +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** strip-final-newline @@ -91003,6 +96988,96 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +structured-headers +0.4.1 +license: MIT +authors: Evert Pot + +****************************** + +sucrase +3.35.0 +The MIT License (MIT) + +Copyright (c) 2012-2018 various contributors (see AUTHORS) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +sudo-prompt +8.2.5 +The MIT License (MIT) + +Copyright (c) 2015 Joran Dirk Greef + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +****************************** + +sudo-prompt +9.1.1 +The MIT License (MIT) + +Copyright (c) 2015 Joran Dirk Greef + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** sudo-prompt @@ -91106,6 +97181,21 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +supports-hyperlinks +2.3.0 +MIT License + +Copyright (c) James Talmage (github.com/jamestalmage) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** supports-preserve-symlinks-flag @@ -91161,6 +97251,27 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +tar +6.2.1 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** tar-fs @@ -91705,6 +97816,93 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +temp-dir +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +temp-dir +2.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +tempy +0.3.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +tempy +0.7.1 +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +terminal-link +2.1.1 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** terser @@ -91738,6 +97936,86 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +****************************** + +text-table +0.2.0 +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +thenify +3.3.1 + +The MIT License (MIT) + +Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +thenify-all +1.6.0 + +The MIT License (MIT) + +Copyright (c) 2014 Jonathan Ong me@jongleberry.com + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + ****************************** thread-stream @@ -92071,6 +98349,33 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +****************************** + +tmp +0.0.33 +The MIT License (MIT) + +Copyright (c) 2014 KARASZI István + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** tmpl @@ -92105,22 +98410,6 @@ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -****************************** - -to-fast-properties -2.0.0 -MIT License - -Copyright (c) 2014 Petka Antonov - 2015 Sindre Sorhus - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - ****************************** toidentifier @@ -92239,6 +98528,33 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +traverse +0.6.11 +MIT License + +Copyright (c) 2010 James Halliday and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** truncate-utf8-bytes @@ -92299,38 +98615,245 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE +****************************** + +ts-interface-checker +0.1.13 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ****************************** tslib 1.14.1 -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** tslib 2.8.1 -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** @@ -92543,27 +99066,27 @@ ts-toolbelt tsutils 3.21.0 -The MIT License (MIT) - -Copyright (c) 2017 Klaus Meinhardt - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2017 Klaus Meinhardt + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** @@ -92730,7 +99253,7 @@ typedarray ****************************** typed-array-buffer -1.0.2 +1.0.3 MIT License Copyright (c) 2023 Jordan Harband @@ -92757,7 +99280,7 @@ SOFTWARE. ****************************** typed-array-byte-length -1.0.1 +1.0.3 MIT License Copyright (c) 2020 Inspect JS @@ -92784,7 +99307,7 @@ SOFTWARE. ****************************** typed-array-byte-offset -1.0.2 +1.0.4 MIT License Copyright (c) 2020 Inspect JS @@ -92811,7 +99334,7 @@ SOFTWARE. ****************************** typed-array-length -1.0.6 +1.0.7 MIT License Copyright (c) 2020 Inspect JS @@ -92835,6 +99358,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +typedarray.prototype.slice +1.0.5 +MIT License + +Copyright (c) 2023 ECMAScript Shims + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** typedarray-to-buffer @@ -92864,242 +99414,302 @@ THE SOFTWARE. ****************************** -typed-error -3.2.2 - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. +typed-error +3.2.2 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +****************************** + +type-detect +4.0.8 +Copyright (c) 2013 Jake Luer (http://alogicalparadox.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +type-fest +0.12.0 +MIT License - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. +Copyright (c) Sindre Sorhus (https:/sindresorhus.com) - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. +****************************** - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. +type-fest +0.16.0 +MIT License - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. +Copyright (c) Sindre Sorhus (https:/sindresorhus.com) - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - END OF TERMS AND CONDITIONS +****************************** - APPENDIX: How to apply the Apache License to your work. +type-fest +0.20.2 +MIT License - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. +Copyright (c) Sindre Sorhus (https:/sindresorhus.com) - Copyright {yyyy} {name of copyright owner} +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - http://www.apache.org/licenses/LICENSE-2.0 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ****************************** -type-detect -4.0.8 -Copyright (c) 2013 Jake Luer (http://alogicalparadox.com) +type-fest +0.21.3 +MIT License -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Copyright (c) Sindre Sorhus (https:/sindresorhus.com) -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************** type-fest -0.20.2 +0.3.1 MIT License -Copyright (c) Sindre Sorhus (https:/sindresorhus.com) +Copyright (c) Sindre Sorhus (sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: @@ -93986,27 +100596,27 @@ authors: Mohamed Hegazy @types/istanbul-lib-report 3.0.0 - MIT License - - Copyright (c) Microsoft Corporation. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE + MIT License + + Copyright (c) Microsoft Corporation. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE ****************************** @@ -94229,27 +100839,27 @@ authors: Mohamed Hegazy @types/ms 0.7.31 - MIT License - - Copyright (c) Microsoft Corporation. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE + MIT License + + Copyright (c) Microsoft Corporation. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE ****************************** @@ -95357,7 +101967,7 @@ authors: Alex Potsides ****************************** unbox-primitive -1.0.2 +1.1.0 MIT License Copyright (c) 2019 Jordan Harband @@ -95600,6 +102210,80 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +unique-filename +1.1.1 +Copyright npm, Inc + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +unique-slug +2.0.2 +The ISC License + +Copyright npm, Inc + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +****************************** + +unique-string +1.0.0 +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +****************************** + +unique-string +2.0.0 +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** universalify @@ -95626,6 +102310,58 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +universalify +1.0.0 +(The MIT License) + +Copyright (c) 2017, Ryan Zimmerman + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the 'Software'), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +****************************** + +universalify +2.0.1 +(The MIT License) + +Copyright (c) 2017, Ryan Zimmerman + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the 'Software'), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + ****************************** unorm @@ -95785,7 +102521,7 @@ SOFTWARE. ****************************** update-browserslist-db -1.0.13 +1.1.2 The MIT License (MIT) Copyright 2022 Andrey Sitnik and other contributors @@ -95906,6 +102642,61 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +url-join +4.0.0 +MIT License + +Copyright (c) 2015 José F. Romaniello + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +url-parse +1.5.10 +The MIT License (MIT) + +Copyright (c) 2015 Unshift.io, Arnout Kazemier, the Contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + ****************************** url-parse @@ -95938,26 +102729,108 @@ SOFTWARE. urlpattern-polyfill 8.0.2 -Copyright 2020 Intel Corporation - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +Copyright 2020 Intel Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +@urql/core +2.3.6 +MIT License + +Copyright (c) 2018–2020 Formidable + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@urql/core +5.1.0 +MIT License + +Copyright (c) 2018–2020 Formidable, +Copyright (c) urql GraphQL Team and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +@urql/exchange-retry +0.3.0 +MIT License + +Copyright (c) 2018–2020 Formidable + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** use-sync-external-store @@ -96212,6 +103085,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +uuid +3.4.0 +The MIT License (MIT) + +Copyright (c) 2010-2016 Robert Kieffer and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** uuid @@ -96492,6 +103392,18 @@ validate-npm-package-license limitations under the License. +****************************** + +validate-npm-package-name +3.0.0 +Copyright (c) 2015, npm, Inc + + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** validate-npm-package-name @@ -96560,27 +103472,27 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. value-or-promise 1.0.11 -MIT License - -Copyright (c) 2019 Yaacov Rydzinski - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2019 Yaacov Rydzinski + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ****************************** @@ -99836,6 +106748,385 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice defined by the Mozilla Public License, v. 2.0. +****************************** + +webextension-polyfill +0.12.0 +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + + ****************************** webidl-conversions @@ -99988,6 +107279,27 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +****************************** + +which +1.3.1 +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ****************************** which @@ -100033,7 +107345,7 @@ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************** which-boxed-primitive -1.0.2 +1.1.1 MIT License Copyright (c) 2019 Jordan Harband @@ -100060,7 +107372,7 @@ SOFTWARE. ****************************** which-builtin-type -1.1.3 +1.2.1 MIT License Copyright (c) 2020 ECMAScript Shims @@ -100087,7 +107399,7 @@ SOFTWARE. ****************************** which-collection -1.0.1 +1.0.2 MIT License Copyright (c) 2019 Inspect JS @@ -100133,7 +107445,7 @@ THIS SOFTWARE. ****************************** which-typed-array -1.1.15 +1.1.18 The MIT License (MIT) Copyright (c) 2015 Jordan Harband @@ -100178,6 +107490,60 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +****************************** + +wonka +4.0.15 +MIT License + +Copyright (c) 2018 Phil Plückthun + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +****************************** + +wonka +6.3.4 +MIT License + +Copyright (c) 0no.co + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ****************************** wrap-ansi @@ -100588,81 +107954,81 @@ IN THE SOFTWARE. xmlbuilder 11.0.1 -The MIT License (MIT) - -Copyright (c) 2013 Ozgur Ozcitak - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2013 Ozgur Ozcitak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** xmlbuilder 14.0.0 -The MIT License (MIT) - -Copyright (c) 2013 Ozgur Ozcitak - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2013 Ozgur Ozcitak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** xmlbuilder 15.1.1 -The MIT License (MIT) - -Copyright (c) 2013 Ozgur Ozcitak - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +The MIT License (MIT) + +Copyright (c) 2013 Ozgur Ozcitak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. ****************************** diff --git a/bitrise.yml b/bitrise.yml index 7bb9f7bda13..e6140887ecd 100644 --- a/bitrise.yml +++ b/bitrise.yml @@ -533,9 +533,9 @@ workflows: stack: linux-docker-android-22.04 machine_type_id: elite-xl envs: - - PRODUCTION_APP_URL: 'bs://46f0542276828b691f56adec25ac81065b5abf73' # Last production's QA build - - PRODUCTION_BUILD_NAME: 7.30.0 - - PRODUCTION_BUILD_NUMBER: 1410 + - PRODUCTION_APP_URL: 'bs://6b59d556df4a5a0448ff161cbfcab16d92607b72' # Last production's QA build + - PRODUCTION_BUILD_NAME: 7.38.0 + - PRODUCTION_BUILD_NUMBER: 1528 - CUCUMBER_TAG_EXPRESSION: '@upgrade and @androidApp' - PRODUCTION_BUILD_STRING: 'MetaMask-QA v$PRODUCTION_BUILD_NAME ($PRODUCTION_BUILD_NUMBER)' - NEW_BUILD_STRING: 'MetaMask-QA v$VERSION_NAME ($VERSION_NUMBER)' @@ -1800,16 +1800,16 @@ app: PROJECT_LOCATION_IOS: ios - opts: is_expand: false - VERSION_NAME: 7.37.1 + VERSION_NAME: 7.38.0 - opts: is_expand: false - VERSION_NUMBER: 1534 + VERSION_NUMBER: 1528 - opts: is_expand: false - FLASK_VERSION_NAME: 7.37.1 + FLASK_VERSION_NAME: 7.38.0 - opts: is_expand: false - FLASK_VERSION_NUMBER: 1534 + FLASK_VERSION_NUMBER: 1528 - opts: is_expand: false ANDROID_APK_LINK: '' diff --git a/e2e/pages/Browser/BrowserView.js b/e2e/pages/Browser/BrowserView.js index 2a94e789e4a..f741a518ae0 100644 --- a/e2e/pages/Browser/BrowserView.js +++ b/e2e/pages/Browser/BrowserView.js @@ -10,6 +10,7 @@ import { BrowserURLBarSelectorsIDs } from '../../selectors/Browser/BrowserURLBar import { AddBookmarkViewSelectorsIDs } from '../../selectors/Browser/AddBookmarkView.selectors'; import Gestures from '../../utils/Gestures'; import Matchers from '../../utils/Matchers'; +import { waitForTestDappToLoad } from '../../viewHelper'; class Browser { get searchButton() { @@ -192,6 +193,7 @@ class Browser { async navigateToTestDApp() { await this.tapUrlInputBox(); await this.navigateToURL(TEST_DAPP_LOCAL_URL); + await waitForTestDappToLoad(); } } diff --git a/e2e/pages/Browser/TestDApp.js b/e2e/pages/Browser/TestDApp.js index 8810cda9ea0..9814fde51ca 100644 --- a/e2e/pages/Browser/TestDApp.js +++ b/e2e/pages/Browser/TestDApp.js @@ -145,6 +145,18 @@ class TestDApp { TestDappSelectorsWebIDs.SWITCH_ETHEREUM_CHAIN, ); } + get testDappFoxLogo() { + return Matchers.getElementByWebID( + BrowserViewSelectorsIDs.BROWSER_WEBVIEW_ID, + TestDappSelectorsWebIDs.TEST_DAPP_FOX_LOGO, + ); + } + get testDappPageTitle() { + return Matchers.getElementByWebID( + BrowserViewSelectorsIDs.BROWSER_WEBVIEW_ID, + TestDappSelectorsWebIDs.TEST_DAPP_HEADING_TITLE, + ); + } async connect() { await this.tapButton(this.DappConnectButton); diff --git a/e2e/pages/wallet/EditAccountNameView.js b/e2e/pages/wallet/EditAccountNameView.js index 10cf9e98f96..0333ec13ee2 100644 --- a/e2e/pages/wallet/EditAccountNameView.js +++ b/e2e/pages/wallet/EditAccountNameView.js @@ -19,7 +19,7 @@ class EditAccountNameView { } async updateAccountName(accountName) { - await Gestures.clearField(EditAccountNameView.accountNameInput); + await Gestures.clearField(this.accountNameInput); await Gestures.typeTextAndHideKeyboard(this.accountNameInput, accountName); } } diff --git a/e2e/pages/wallet/WalletView.js b/e2e/pages/wallet/WalletView.js index 9a808b25cc1..e812774b37e 100644 --- a/e2e/pages/wallet/WalletView.js +++ b/e2e/pages/wallet/WalletView.js @@ -141,14 +141,12 @@ class WalletView { await Gestures.waitAndTap(this.importNFTButton); } - get testCollectible() { - return device.getPlatform() === 'android' - ? Matchers.getElementByID(WalletViewSelectorsIDs.COLLECTIBLE_FALLBACK, 1) - : Matchers.getElementByID(WalletViewSelectorsIDs.TEST_COLLECTIBLE); + get mainnetCollectible() { + return Matchers.getElementByID(WalletViewSelectorsIDs.MAINNET_COLLECTIBLE); } async tapOnNftName() { - await Gestures.waitAndTap(this.testCollectible); + await Gestures.waitAndTap(this.mainnetCollectible); } async tapImportTokensButton() { @@ -174,6 +172,10 @@ class WalletView { return Matchers.getElementByText(tokenName); } + async nftIDInWallet(nftId) { + return Matchers.getElementByID(nftId); + } + async nftInWallet(nftName) { return Matchers.getElementByText(nftName); } diff --git a/e2e/selectors/Browser/TestDapp.selectors.js b/e2e/selectors/Browser/TestDapp.selectors.js index e2204c9cfa4..7bdd0db6e8d 100644 --- a/e2e/selectors/Browser/TestDapp.selectors.js +++ b/e2e/selectors/Browser/TestDapp.selectors.js @@ -1,4 +1,6 @@ export const TestDappSelectorsWebIDs = { + TEST_DAPP_FOX_LOGO: 'mm-logo', + TEST_DAPP_HEADING_TITLE: 'logo-text', APPROVE_ERC_20_TOKENS_BUTTON_ID: 'approveTokens', APPROVE_ERC_721_TOKEN_BUTTON_ID: 'approveButton', CONNECT_BUTTON: 'connectButton', diff --git a/e2e/selectors/wallet/AddAccountBottomSheet.selectors.js b/e2e/selectors/wallet/AddAccountBottomSheet.selectors.js index dc778194ba7..1330a83e33a 100644 --- a/e2e/selectors/wallet/AddAccountBottomSheet.selectors.js +++ b/e2e/selectors/wallet/AddAccountBottomSheet.selectors.js @@ -1,4 +1,8 @@ export const AddAccountBottomSheetSelectorsIDs = { NEW_ACCOUNT_BUTTON: 'add-account-new-account', IMPORT_ACCOUNT_BUTTON: 'add-account-import-account', + ADD_SOLANA_ACCOUNT_BUTTON: 'add-account-add-solana-account', + ADD_BITCOIN_ACCOUNT_BUTTON: 'add-account-add-bitcoin-account', + ADD_BITCOIN_TESTNET_ACCOUNT_BUTTON: 'add-account-add-bitcoin-testnet-account', + ADD_HARDWARE_WALLET_BUTTON: 'add-account-add-hardware-wallet', }; diff --git a/e2e/selectors/wallet/WalletActionsBottomSheet.selectors.js b/e2e/selectors/wallet/WalletActionsBottomSheet.selectors.js index 6c691013c6e..266b25b841c 100644 --- a/e2e/selectors/wallet/WalletActionsBottomSheet.selectors.js +++ b/e2e/selectors/wallet/WalletActionsBottomSheet.selectors.js @@ -5,4 +5,5 @@ export const WalletActionsBottomSheetSelectorsIDs = { BUY_BUTTON: 'wallet-buy-action', SELL_BUTTON: 'wallet-sell-action', BRIDGE_BUTTON: 'wallet-bridge-action', + EARN_BUTTON: 'wallet-earn-action', }; diff --git a/e2e/selectors/wallet/WalletView.selectors.js b/e2e/selectors/wallet/WalletView.selectors.js index 8c2e23a9f8a..ac561757ce6 100644 --- a/e2e/selectors/wallet/WalletView.selectors.js +++ b/e2e/selectors/wallet/WalletView.selectors.js @@ -24,7 +24,8 @@ export const WalletViewSelectorsIDs = { ACCOUNT_OVERVIEW: 'account-overview', ACCOUNT_ACTIONS: 'main-wallet-account-actions', ACCOUNT_COPY_BUTTON: 'wallet-account-copy-button', - TEST_COLLECTIBLE: 'collectible-Test Dapp NFTs #1-1', + TEST_COLLECTIBLE: 'Test Dapp NFTs #1', + MAINNET_COLLECTIBLE: "Life's A Joke #2875", COLLECTIBLE_FALLBACK: 'fallback-nft-with-token-id', NAVBAR_ADDRESS_COPY_BUTTON: 'navbar-address-copy-button', IMPORT_TOKEN_FOOTER_LINK: 'import-token-footer-link', diff --git a/e2e/specs/assets/nft-details.spec.js b/e2e/specs/assets/nft-details.spec.js index ae425fab058..5dd1eb38321 100644 --- a/e2e/specs/assets/nft-details.spec.js +++ b/e2e/specs/assets/nft-details.spec.js @@ -8,15 +8,18 @@ import { withFixtures, defaultGanacheOptions, } from '../../fixtures/fixture-helper'; -import { SMART_CONTRACTS } from '../../../app/util/test/smart-contracts'; import WalletView from '../../pages/wallet/WalletView'; import ImportNFTView from '../../pages/wallet/ImportNFTFlow/ImportNFTView'; import Assertions from '../../utils/Assertions'; import enContent from '../../../locales/languages/en.json'; +import NftDetectionModal from '../../pages/wallet/NftDetectionModal'; describe(SmokeAssets('NFT Details page'), () => { - const NFT_CONTRACT = SMART_CONTRACTS.NFTS; - const TEST_DAPP_CONTRACT = 'TestDappNFTs'; + // eslint-disable-next-line @metamask/design-tokens/color-no-hex + const testNftOnMainnet = "Life's A Joke #2875"; + const testNftOnMainnetAddress = '0x6cb26df0c825fece867a84658f87b0ecbcea72f6'; + const testNftOnMainnetID = '2875'; + const badNftId = '1234'; beforeAll(async () => { jest.setTimeout(170000); await TestHelpers.reverseServerPort(); @@ -25,42 +28,43 @@ describe(SmokeAssets('NFT Details page'), () => { it('show nft details', async () => { await withFixtures( { - dapp: true, fixture: new FixtureBuilder() - .withGanacheNetwork() - .withPermissionControllerConnectedToTestDapp() + .withPreferencesController({ + useNftDetection: false, + }) .build(), restartDevice: true, ganacheOptions: defaultGanacheOptions, - smartContract: NFT_CONTRACT, }, - async ({ contractRegistry }) => { - const nftsAddress = await contractRegistry.getContractAddress( - NFT_CONTRACT, - ); - + async () => { await loginToApp(); + await Assertions.checkIfVisible(NftDetectionModal.container); + await NftDetectionModal.tapCancelButton(); + // Check that we are on the wallet screen + await Assertions.checkIfVisible(WalletView.container); + + // Go to NFTs tab await WalletView.tapNftTab(); - await WalletView.scrollDownOnNFTsTab(); + // Go to Import NFT flow await WalletView.tapImportNFTButton(); await Assertions.checkIfVisible(ImportNFTView.container); - await ImportNFTView.typeInNFTAddress('1234'); + + // Import bad NFT address + await ImportNFTView.typeInNFTAddress(badNftId); await ImportNFTView.typeInNFTIdentifier(''); await Assertions.checkIfVisible(ImportNFTView.addressWarningMessage); - //await ImportNFTView.tapBackButton(); - await ImportNFTView.typeInNFTAddress(nftsAddress); - await ImportNFTView.typeInNFTIdentifier('1'); + // Import Mainnet NFT address + await ImportNFTView.typeInNFTAddress(testNftOnMainnetAddress); + await ImportNFTView.typeInNFTIdentifier(testNftOnMainnetID); - await Assertions.checkIfVisible(WalletView.container); - // Wait for asset to load + // Ensure that NFT gets imported, and data propogates to detail page await Assertions.checkIfVisible( - WalletView.nftInWallet(TEST_DAPP_CONTRACT), + WalletView.nftIDInWallet(testNftOnMainnet), ); await WalletView.tapOnNftName(); - await Assertions.checkIfTextIsDisplayed(enContent.nft_details.token_id); await Assertions.checkIfTextIsDisplayed( enContent.nft_details.contract_address, diff --git a/e2e/specs/assets/nft-detection-modal.spec.js b/e2e/specs/assets/nft-detection-modal.spec.js index 4baed64af7b..d3d6376d7eb 100644 --- a/e2e/specs/assets/nft-detection-modal.spec.js +++ b/e2e/specs/assets/nft-detection-modal.spec.js @@ -51,7 +51,8 @@ describe(SmokeAssets('NFT Detection Modal'), () => { }); it('show nft detection modal after user switches to mainnet and taps allow when nftDetection toggle is off', async () => { - const testNftOnMainnet = 'LifesAJokeNFT'; + // eslint-disable-next-line @metamask/design-tokens/color-no-hex + const testNftOnMainnet = "Life's A Joke #2875"; await withFixtures( { @@ -77,7 +78,9 @@ describe(SmokeAssets('NFT Detection Modal'), () => { NftDetectionModalSelectorsText.NFT_AUTO_DETECTION_BANNER, ); - await Assertions.checkIfTextIsDisplayed(testNftOnMainnet); + await Assertions.checkIfVisible( + WalletView.nftIDInWallet(testNftOnMainnet), + ); }, ); }); diff --git a/e2e/specs/confirmations/send-eth.spec.js b/e2e/specs/confirmations/send-eth.spec.js index 745f77490c9..316d9895672 100644 --- a/e2e/specs/confirmations/send-eth.spec.js +++ b/e2e/specs/confirmations/send-eth.spec.js @@ -17,6 +17,8 @@ import { } from '../../fixtures/fixture-helper'; import { SMART_CONTRACTS } from '../../../app/util/test/smart-contracts'; import Assertions from '../../utils/Assertions'; +import WalletView from '../../pages/wallet/WalletView'; +import TokenOverview from '../../pages/wallet/TokenOverview'; describe(SmokeConfirmations('Send ETH'), () => { const TOKEN_NAME = enContent.unit.eth; @@ -86,4 +88,35 @@ describe(SmokeConfirmations('Send ETH'), () => { }, ); }); + + it('should send ETH to an EOA from token detail page', async () => { + const ETHEREUM_NAME = 'Ethereum'; + const RECIPIENT = '0x1FDb169Ef12954F20A15852980e1F0C122BfC1D6'; + const AMOUNT = '0.12345'; + const TOKEN_NAME = enContent.unit.eth; + + await withFixtures( + { + fixture: new FixtureBuilder().withGanacheNetwork().build(), + restartDevice: true, + ganacheOptions: defaultGanacheOptions, + }, + async () => { + await loginToApp(); + await WalletView.tapOnToken(ETHEREUM_NAME); + await TokenOverview.tapSendButton(); + + await SendView.inputAddress(RECIPIENT); + await SendView.tapNextButton(); + + await AmountView.typeInTransactionAmount(AMOUNT); + await AmountView.tapNextButton(); + + await TransactionConfirmationView.tapConfirmButton(); + await TabBarComponent.tapActivity(); + + await Assertions.checkIfTextIsDisplayed(`${AMOUNT} ${TOKEN_NAME}`); + }, + ); + }); }); diff --git a/e2e/specs/confirmations/suggested-gas-api.mock.spec.js b/e2e/specs/confirmations/suggested-gas-api.mock.spec.js deleted file mode 100644 index e2038a25b55..00000000000 --- a/e2e/specs/confirmations/suggested-gas-api.mock.spec.js +++ /dev/null @@ -1,97 +0,0 @@ -/* eslint-disable no-console */ -'use strict'; -import { loginToApp } from '../../viewHelper.js'; -import { Regression } from '../../tags.js'; -import TabBarComponent from '../../pages/wallet/TabBarComponent.js'; -import WalletActionsBottomSheet from '../../pages/wallet/WalletActionsBottomSheet.js'; -import SendView from '../../pages/Send/SendView.js'; -import AmountView from '../../pages/Send/AmountView.js'; -import TransactionConfirmView from '../../pages/Send/TransactionConfirmView.js'; -import { - startMockServer, - stopMockServer, -} from '../../api-mocking/mock-server.js'; -import WalletView from '../../pages/wallet/WalletView.js'; -import Assertions from '../../utils/Assertions.js'; -import AccountListBottomSheet from '../../pages/wallet/AccountListBottomSheet.js'; -import AddAccountBottomSheet from '../../pages/wallet/AddAccountBottomSheet.js'; -import ImportAccountView from '../../pages/importAccount/ImportAccountView.js'; -import Accounts from '../../../wdio/helpers/Accounts.js'; -import { withFixtures } from '../../fixtures/fixture-helper.js'; -import FixtureBuilder from '../../fixtures/fixture-builder.js'; -import TestHelpers from '../../helpers.js'; -import SuccessImportAccountView from '../../pages/importAccount/SuccessImportAccountView.js'; -import { mockEvents } from '../../api-mocking/mock-config/mock-events.js'; - -describe( - Regression( - 'Mock suggestedGasApi fallback to legacy gas endpoint when EIP1559 endpoint is down', - ), - () => { - let mockServer; - beforeAll(async () => { - jest.setTimeout(150000); - await TestHelpers.reverseServerPort(); - mockServer = await startMockServer({ - GET: [mockEvents.GET.suggestedGasFeesMainNetError], - }); - }); - - afterAll(async () => { - try { - await stopMockServer(mockServer); - } catch (error) { - // eslint-disable-next-line no-console - console.log( - 'Mock server already stopped or encountered an error:', - error, - ); - } - }); - - const RECIPIENT = '0x1FDb169Ef12954F20A15852980e1F0C122BfC1D6'; - const AMOUNT = '0.000003'; - const validPrivateKey = Accounts.getAccountPrivateKey(); - - it('should fallback to legacy gas endpoint & legacy modal when EIP1559 endpoint is down', async () => { - await withFixtures( - { - fixture: new FixtureBuilder().build(), - restartDevice: true, - }, - async () => { - await loginToApp(); - await WalletView.tapIdenticon(); - await Assertions.checkIfVisible(AccountListBottomSheet.accountList); - await AccountListBottomSheet.tapAddAccountButton(); - await AddAccountBottomSheet.tapImportAccount(); - await Assertions.checkIfVisible(ImportAccountView.container); - await ImportAccountView.enterPrivateKey(validPrivateKey.keys); - await Assertions.checkIfVisible(SuccessImportAccountView.container); - await SuccessImportAccountView.tapCloseButton(); - if (device.getPlatform() === 'ios') { - await AccountListBottomSheet.swipeToDismissAccountsModal(); - await Assertions.checkIfNotVisible(AccountListBottomSheet.title); - } else { - await WalletView.tapIdenticon(); - } - await TabBarComponent.tapActions(); - await WalletActionsBottomSheet.tapSendButton(); - await SendView.inputAddress(RECIPIENT); - await SendView.tapNextButton(); - await AmountView.typeInTransactionAmount(AMOUNT); - await AmountView.tapNextButton(); - await TransactionConfirmView.tapEstimatedGasLink(1); - await Assertions.checkIfVisible( - TransactionConfirmView.editPriorityLegacyModal, - ); - await stopMockServer(mockServer); //stop mock server to reinstate suggested gas api service - await Assertions.checkIfVisible( - TransactionConfirmView.editPriorityFeeSheetContainer, - 30000, - ); - }, - ); - }); - }, -); diff --git a/e2e/specs/multichain/permission-system-summary-default-permissions.spec.js b/e2e/specs/multichain/permission-system-summary-default-permissions.spec.js index 55a6a5fefeb..8e988889d62 100644 --- a/e2e/specs/multichain/permission-system-summary-default-permissions.spec.js +++ b/e2e/specs/multichain/permission-system-summary-default-permissions.spec.js @@ -35,7 +35,6 @@ describe( await loginToApp(); await TabBarComponent.tapBrowser(); await Browser.navigateToTestDApp(); - // Step 2: Navigate to permissions management await Browser.tapNetworkAvatarButtonOnBrowser(); await ConnectedAccountsModal.tapManagePermissionsButton(); diff --git a/e2e/specs/multichain/permissions/chains/permission-system-add-non-permitted.spec.js b/e2e/specs/multichain/permissions/chains/permission-system-add-non-permitted.spec.js index a33b641f342..a1e89ec4f21 100644 --- a/e2e/specs/multichain/permissions/chains/permission-system-add-non-permitted.spec.js +++ b/e2e/specs/multichain/permissions/chains/permission-system-add-non-permitted.spec.js @@ -60,7 +60,6 @@ describe( await TabBarComponent.tapBrowser(); await TestHelpers.delay(3000); await Browser.navigateToTestDApp(); - await TestHelpers.delay(3000); await Assertions.checkIfVisible( NetworkNonPemittedBottomSheet.addThisNetworkTitle, ); diff --git a/e2e/specs/multichain/permissions/chains/permission-system-dapp-chain-switch-grant.spec.js b/e2e/specs/multichain/permissions/chains/permission-system-dapp-chain-switch-grant.spec.js index 63ec71f4296..dbe608e09c2 100644 --- a/e2e/specs/multichain/permissions/chains/permission-system-dapp-chain-switch-grant.spec.js +++ b/e2e/specs/multichain/permissions/chains/permission-system-dapp-chain-switch-grant.spec.js @@ -42,6 +42,7 @@ describe(SmokeMultiChainPermissions('Chain Permission System'), () => { // Connect to test dApp await Browser.navigateToTestDApp(); + await TestDApp.connect(); await ConnectedAccountsModal.tapNavigateToEditNetworksPermissionsButton(); await NetworkNonPemittedBottomSheet.tapElysiumTestnetNetworkName(); diff --git a/e2e/specs/multichain/permissions/chains/permission-system-discard-changes.spec.js b/e2e/specs/multichain/permissions/chains/permission-system-discard-changes.spec.js index fdbdcc39402..086b3cbf5e6 100644 --- a/e2e/specs/multichain/permissions/chains/permission-system-discard-changes.spec.js +++ b/e2e/specs/multichain/permissions/chains/permission-system-discard-changes.spec.js @@ -33,6 +33,7 @@ describe(SmokeMultiChainPermissions('Chain Permission Management'), () => { await Assertions.checkIfVisible(Browser.browserScreenID); await Browser.navigateToTestDApp(); + await Browser.tapNetworkAvatarButtonOnBrowser(); // Navigate to chain permissions and add Sepolia diff --git a/e2e/specs/multichain/permissions/chains/permission-system-initial-connection.spec.js b/e2e/specs/multichain/permissions/chains/permission-system-initial-connection.spec.js index 788598caff6..46bc60eba3b 100644 --- a/e2e/specs/multichain/permissions/chains/permission-system-initial-connection.spec.js +++ b/e2e/specs/multichain/permissions/chains/permission-system-initial-connection.spec.js @@ -56,7 +56,6 @@ describe(SmokeMultiChainPermissions('Chain Permission Management'), () => { await TestHelpers.delay(3000); await Assertions.checkIfVisible(Browser.browserScreenID); await Browser.navigateToTestDApp(); - // First permission modification: Add Linea Sepolia await TestDApp.connect(); await ConnectedAccountsModal.tapNavigateToEditNetworksPermissionsButton(); diff --git a/e2e/specs/wallet/edit-recipient-address.spec.js b/e2e/specs/quarantine/edit-recipient-address.failing.js similarity index 97% rename from e2e/specs/wallet/edit-recipient-address.spec.js rename to e2e/specs/quarantine/edit-recipient-address.failing.js index 047c215e794..367743498ac 100644 --- a/e2e/specs/wallet/edit-recipient-address.spec.js +++ b/e2e/specs/quarantine/edit-recipient-address.failing.js @@ -19,7 +19,6 @@ import FixtureBuilder from '../../fixtures/fixture-builder'; import ActivitiesView from '../../pages/Transactions/ActivitiesView'; - const INCORRECT_SEND_ADDRESS = '0xebe6CcB6B55e1d094d9c58980Bc10Fed69932cAb'; const CORRECT_SEND_ADDRESS = '0x37cc5ef6bfe753aeaf81f945efe88134b238face'; const SHORTHAND_ADDRESS = '0x37Cc...FACE'; @@ -32,11 +31,6 @@ describe( jest.setTimeout(2500000); await TestHelpers.reverseServerPort(); }); - - afterAll(async () => { - await stopFixtureServer(fixtureServer); - }); - it('should display correct send address after edit', async () => { await withFixtures( { @@ -78,7 +72,7 @@ describe( correctAddress[0], CORRECT_SEND_ADDRESS, ); - + //TODO: Currently flakey, requires more work //Assert transactions send screen on IOS only due to android limitations if (device.getPlatform() === 'ios') { // Tap Send diff --git a/e2e/specs/swaps/swap-token-chart.spec.js b/e2e/specs/swaps/swap-token-chart.spec.js index c3ed9183b9e..8e969a40be6 100644 --- a/e2e/specs/swaps/swap-token-chart.spec.js +++ b/e2e/specs/swaps/swap-token-chart.spec.js @@ -99,10 +99,7 @@ describe(Regression('Swap from Token view'), () => { //Wait for Swap to complete try { await Assertions.checkIfTextIsDisplayed( - SwapView.generateSwapCompleteLabel( - sourceTokenSymbol, - destTokenSymbol, - ), + SwapView.generateSwapCompleteLabel(sourceTokenSymbol, destTokenSymbol), 30000, ); } catch (e) { @@ -112,6 +109,9 @@ describe(Regression('Swap from Token view'), () => { await device.enableSynchronization(); await TestHelpers.delay(10000); + // After the swap is complete, the DAI balance shouldn't be 0 + await Assertions.checkIfTextIsNotDisplayed('0 DAI', 60000); + // Check the swap activity completed await TabBarComponent.tapActivity(); await Assertions.checkIfVisible(ActivitiesView.title); diff --git a/e2e/utils/Assertions.js b/e2e/utils/Assertions.js index 47b00a59693..4a9d0657f53 100644 --- a/e2e/utils/Assertions.js +++ b/e2e/utils/Assertions.js @@ -21,6 +21,15 @@ class Assertions { .withTimeout(timeout); } + /** + * Check if an element with the specified web selector exists. + * @param {Promise} elementId - The ID of the element to check. + */ + static async webViewElementExists(elementId) { + // rename this. We are checking if element is visible. + return await expect(await elementId).toExist(); + } + /** * Check if an element with the specified ID is not visible. * @param {Promise} elementId - The ID of the element to check. @@ -55,7 +64,6 @@ class Assertions { * @param {number} [timeout=TIMEOUT] - Timeout in milliseconds. */ static async checkIfElementHasLabel(elementId, label, timeout = TIMEOUT) { - return await waitFor(await elementId) .toHaveLabel(label) .withTimeout(timeout); diff --git a/e2e/viewHelper.js b/e2e/viewHelper.js index 401afe1b9a5..a1704556f77 100644 --- a/e2e/viewHelper.js +++ b/e2e/viewHelper.js @@ -28,6 +28,7 @@ import { getGanachePort } from './fixtures/utils'; import Assertions from './utils/Assertions'; import { CustomNetworks } from './resources/networks.e2e'; import ToastModal from './pages/wallet/ToastModal'; +import TestDApp from './pages/Browser/TestDApp'; const LOCALHOST_URL = `http://localhost:${getGanachePort()}/`; const validAccount = Accounts.getValidAccount(); @@ -221,3 +222,9 @@ export const loginToApp = async () => { await Assertions.checkIfVisible(LoginView.container); await LoginView.enterPassword(PASSWORD); }; + +export const waitForTestDappToLoad = async () => { + await TestHelpers.delay(3000); + await Assertions.webViewElementExists(TestDApp.testDappFoxLogo); + await Assertions.webViewElementExists(TestDApp.testDappPageTitle); +}; diff --git a/ios/MetaMask.xcodeproj/project.pbxproj b/ios/MetaMask.xcodeproj/project.pbxproj index 1c638e401b1..9d6d5f7417e 100644 --- a/ios/MetaMask.xcodeproj/project.pbxproj +++ b/ios/MetaMask.xcodeproj/project.pbxproj @@ -1380,7 +1380,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = 48XVW22RCG; @@ -1418,7 +1418,7 @@ "${inherited}", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = ( @@ -1449,7 +1449,7 @@ CODE_SIGN_ENTITLEMENTS = MetaMask/MetaMask.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 48XVW22RCG; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 48XVW22RCG; @@ -1484,7 +1484,7 @@ "${inherited}", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = NO; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = ( @@ -1514,7 +1514,7 @@ CODE_SIGN_ENTITLEMENTS = MetaMask/MetaMaskDebug.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = 48XVW22RCG; @@ -1551,7 +1551,7 @@ "\"$(SRCROOT)/MetaMask/System/Library/Frameworks\"", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = ( @@ -1580,7 +1580,7 @@ CODE_SIGN_ENTITLEMENTS = MetaMask/MetaMask.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 48XVW22RCG; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 48XVW22RCG; @@ -1615,7 +1615,7 @@ "\"$(SRCROOT)/MetaMask/System/Library/Frameworks\"", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = NO; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = ( @@ -1739,7 +1739,7 @@ CODE_SIGN_ENTITLEMENTS = MetaMask/MetaMaskDebug.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = 48XVW22RCG; @@ -1776,7 +1776,7 @@ "\"$(SRCROOT)/MetaMask/System/Library/Frameworks\"", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = ( "$(inherited)", @@ -1808,7 +1808,7 @@ CODE_SIGN_ENTITLEMENTS = MetaMask/MetaMask.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1534; + CURRENT_PROJECT_VERSION = 1528; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = 48XVW22RCG; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 48XVW22RCG; @@ -1843,7 +1843,7 @@ "\"$(SRCROOT)/MetaMask/System/Library/Frameworks\"", ); LLVM_LTO = YES; - MARKETING_VERSION = 7.37.1; + MARKETING_VERSION = 7.38.0; ONLY_ACTIVE_ARCH = NO; OTHER_CFLAGS = ( "$(inherited)", diff --git a/locales/languages/en.json b/locales/languages/en.json index 94759ad75f1..c53d9c643fe 100644 --- a/locales/languages/en.json +++ b/locales/languages/en.json @@ -48,7 +48,10 @@ "connector": "at" }, "autocomplete": { - "placeholder": "Search or Type URL" + "placeholder": "Search by site or address", + "recents": "Recents", + "favorites": "Favorites", + "sites": "Sites" }, "navigation": { "back": "Back", @@ -1289,16 +1292,19 @@ "sell_button": "Sell", "receive_button": "Receive", "portfolio_button": "Portfolio", + "earn_button": "Earn", "add_collectible_button": "Add", "info": "Info", "swap": "Swap", "bridge": "Bridge", + "earn": "Earn", "disabled_button": { "buy": "Buying not supported for this account", "sell": "Selling not supported for this account", "swap": "Swapping not supported for this account", "bridge": "Bridging not supported for this account", "send": "Sending not supported for this account", + "earn": "Earning not supported for this account", "action": "This action is not supported for this account" }, "description": "Description", @@ -1315,6 +1321,7 @@ "bridge_description": "Transfer tokens between networks", "send_description": "Send crypto to any account", "receive_description": "Receive crypto", + "earn_description": "Earn rewards on your tokens", "chart_time_period": { "1d": "Today", "7d": "Past 7 days", @@ -3378,7 +3385,8 @@ "add_hardware_wallet": "Add hardware wallet", "import_account": "Import account", "add_bitcoin_account_testnet": "Add a new Bitcoin Account (Testnet)", - "add_bitcoin_account_mainnet": "Add a new Bitcoin Account (Beta)" + "add_bitcoin_account_mainnet": "Add a new Bitcoin Account (Beta)", + "add_solana_account": "Add a new Solana Account (Beta)" }, "show_nft": { "show_nft_title": "Show NFT", @@ -3625,7 +3633,8 @@ "tooltip": "Estimated changes are what might happen if you go through with this transaction. This is just a prediction, not a guarantee.", "unavailable": "Unavailable" }, - "unlimited": "Unlimited" + "unlimited": "Unlimited", + "none": "None" }, "change_in_simulation_modal": { "title": "Results have changed", diff --git a/package.json b/package.json index 1f7774ae3f9..d48df88919c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "metamask", - "version": "7.37.1", + "version": "7.38.0", "private": true, "scripts": { "audit:ci": "./scripts/yarn-audit.sh", @@ -140,7 +140,8 @@ "bech32": "2.0.0", "sha256-uint8array": "0.10.3", "express": "4.21.2", - "nanoid": "^3.3.8" + "nanoid": "^3.3.8", + "undici": "5.28.5" }, "dependencies": { "@config-plugins/detox": "^8.0.0", @@ -154,17 +155,17 @@ "@metamask/approval-controller": "^7.1.0", "@metamask/assets-controllers": "^46.0.0", "@metamask/base-controller": "^7.1.1", - "@metamask/bitcoin-wallet-snap": "^0.8.2", + "@metamask/bitcoin-wallet-snap": "^0.9.0", "@metamask/composable-controller": "^10.0.0", "@metamask/controller-utils": "^11.3.0", - "@metamask/design-tokens": "^4.0.0", + "@metamask/design-tokens": "^5.0.0", "@metamask/eth-hd-keyring": "^9.0.0", "@metamask/eth-json-rpc-filters": "^9.0.0", "@metamask/eth-json-rpc-middleware": "^15.0.0", - "@metamask/eth-ledger-bridge-keyring": "^8.0.0", + "@metamask/eth-ledger-bridge-keyring": "8.0.3", "@metamask/eth-query": "^4.0.0", "@metamask/eth-sig-util": "^8.0.0", - "@metamask/eth-snap-keyring": "^7.0.0", + "@metamask/eth-snap-keyring": "^7.1.0", "@metamask/etherscan-link": "^2.0.0", "@metamask/ethjs-contract": "^0.4.1", "@metamask/ethjs-query": "^0.7.1", @@ -205,6 +206,7 @@ "@metamask/snaps-rpc-methods": "^11.7.0", "@metamask/snaps-sdk": "^6.13.0", "@metamask/snaps-utils": "^8.6.1", + "@metamask/solana-wallet-snap": "^1.2.0", "@metamask/stake-sdk": "^0.3.0", "@metamask/swappable-obj-proxy": "^2.1.0", "@metamask/swaps-controller": "^12.0.0", @@ -233,6 +235,7 @@ "@segment/sovran-react-native": "^1.0.4", "@sentry/integrations": "6.3.1", "@sentry/react-native": "^5.33.0", + "@solana/addresses": "2.0.0", "@tradle/react-native-http": "2.0.1", "@walletconnect/client": "^1.8.0", "@walletconnect/core": "^2.17.2", @@ -252,7 +255,7 @@ "compare-versions": "^3.6.0", "content-hash": "2.5.2", "contentful": "^10.8.7", - "cross-spawn": "7.0.5", + "cross-spawn": "7.0.6", "crypto-js": "^4.2.0", "d3-shape": "^3.2.0", "dayjs": "^1.11.13", @@ -276,6 +279,7 @@ "lodash": "^4.17.21", "lottie-ios": "3.4.1", "lottie-react-native": "5.1.5", + "luxon": "^3.5.0", "mockttp": "^3.15.2", "multihashes": "0.4.14", "number-to-bn": "1.7.0", @@ -419,6 +423,7 @@ "@types/is-url": "^1.2.30", "@types/jest": "^29.5.12", "@types/lodash": "^4.14.184", + "@types/luxon": "^3.4.2", "@types/node": "^20.12.8", "@types/qs": "^6.9.15", "@types/react": "^17.0.11", @@ -555,7 +560,7 @@ "fs": "react-native-level-fs" }, "engines": { - "node": "^20.17.0", + "node": "^20.18.0", "yarn": "^1.22.22" }, "lavamoat": { diff --git a/patches/@ledgerhq+evm-tools+1.2.3.patch b/patches/@ledgerhq+evm-tools+1.3.0.patch similarity index 80% rename from patches/@ledgerhq+evm-tools+1.2.3.patch rename to patches/@ledgerhq+evm-tools+1.3.0.patch index 8cde5f4498a..24c514751f1 100644 --- a/patches/@ledgerhq+evm-tools+1.2.3.patch +++ b/patches/@ledgerhq+evm-tools+1.3.0.patch @@ -1,11 +1,11 @@ diff --git a/node_modules/@ledgerhq/evm-tools/lib/message/EIP712/index.js b/node_modules/@ledgerhq/evm-tools/lib/message/EIP712/index.js -index 5443ac0..57ec861 100644 +index a5c677e..58b4d74 100644 --- a/node_modules/@ledgerhq/evm-tools/lib/message/EIP712/index.js +++ b/node_modules/@ledgerhq/evm-tools/lib/message/EIP712/index.js -@@ -28,8 +28,8 @@ const ethers_1 = require("ethers"); - const axios_1 = __importDefault(require("axios")); - const sha224_1 = __importDefault(require("crypto-js/sha224")); +@@ -29,8 +29,8 @@ const sha224_1 = __importDefault(require("crypto-js/sha224")); const live_env_1 = require("@ledgerhq/live-env"); + const constants_1 = require("@ethersproject/constants"); + const hash_1 = require("@ethersproject/hash"); -const eip712_1 = __importDefault(require("@ledgerhq/cryptoassets-evm-signatures/data/eip712")); -const eip712_v2_1 = __importDefault(require("@ledgerhq/cryptoassets-evm-signatures/data/eip712_v2")); +const eip712_1 = __importDefault(require("@ledgerhq/cryptoassets-evm-signatures/lib/data/eip712")); diff --git a/patches/@ledgerhq+hw-app-eth+6.39.0.patch b/patches/@ledgerhq+hw-app-eth+6.42.2.patch similarity index 83% rename from patches/@ledgerhq+hw-app-eth+6.39.0.patch rename to patches/@ledgerhq+hw-app-eth+6.42.2.patch index a817ada8eb3..6a659d3e44a 100644 --- a/patches/@ledgerhq+hw-app-eth+6.39.0.patch +++ b/patches/@ledgerhq+hw-app-eth+6.42.2.patch @@ -1,5 +1,5 @@ diff --git a/node_modules/@ledgerhq/hw-app-eth/lib/modules/EIP712/index.js b/node_modules/@ledgerhq/hw-app-eth/lib/modules/EIP712/index.js -index bbca23c..c85cb18 100644 +index 24251b4..7f4980f 100644 --- a/node_modules/@ledgerhq/hw-app-eth/lib/modules/EIP712/index.js +++ b/node_modules/@ledgerhq/hw-app-eth/lib/modules/EIP712/index.js @@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); @@ -38,26 +38,26 @@ index 8fdedf8..c10cea2 100644 const asContractAddress = (addr) => { const a = addr.toLowerCase(); diff --git a/node_modules/@ledgerhq/hw-app-eth/lib/services/ledger/index.js b/node_modules/@ledgerhq/hw-app-eth/lib/services/ledger/index.js -index 8385537..6641b95 100644 +index 86db997..29e1fe5 100644 --- a/node_modules/@ledgerhq/hw-app-eth/lib/services/ledger/index.js +++ b/node_modules/@ledgerhq/hw-app-eth/lib/services/ledger/index.js @@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); - // This implements the resolution of a Transaction using Ledger's own API - const logs_1 = require("@ledgerhq/logs"); + const transactions_1 = require("@ethersproject/transactions"); const abi_1 = require("@ethersproject/abi"); + const logs_1 = require("@ledgerhq/logs"); -const index_1 = require("@ledgerhq/domain-service/signers/index"); +const index_1 = require("@ledgerhq/domain-service/lib/signers/index"); + const constants_1 = require("../../modules/Uniswap/constants"); const erc20_1 = require("./erc20"); - const contracts_1 = require("./contracts"); - const nfts_1 = require("./nfts"); + const Uniswap_1 = require("../../modules/Uniswap"); diff --git a/node_modules/@ledgerhq/hw-app-eth/lib/utils.js b/node_modules/@ledgerhq/hw-app-eth/lib/utils.js -index 027089b..1c5da62 100644 +index 6c5f584..f960780 100644 --- a/node_modules/@ledgerhq/hw-app-eth/lib/utils.js +++ b/node_modules/@ledgerhq/hw-app-eth/lib/utils.js -@@ -2,7 +2,7 @@ - Object.defineProperty(exports, "__esModule", { value: true }); - exports.mergeResolutions = exports.nftSelectors = exports.tokenSelectors = exports.intAsHexBytes = exports.decodeTxInfo = exports.maybeHexBuffer = exports.hexBuffer = exports.splitPath = exports.padHexString = exports.ERC1155_CLEAR_SIGNED_SELECTORS = exports.ERC721_CLEAR_SIGNED_SELECTORS = exports.ERC20_CLEAR_SIGNED_SELECTORS = void 0; +@@ -26,7 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); + exports.safeChunkTransaction = exports.getV = exports.getChainIdAsUint32 = exports.getParity = exports.mergeResolutions = exports.nftSelectors = exports.tokenSelectors = exports.intAsHexBytes = exports.maybeHexBuffer = exports.hexBuffer = exports.splitPath = exports.padHexString = exports.ERC1155_CLEAR_SIGNED_SELECTORS = exports.ERC721_CLEAR_SIGNED_SELECTORS = exports.ERC20_CLEAR_SIGNED_SELECTORS = void 0; const bignumber_js_1 = require("bignumber.js"); + const rlp = __importStar(require("@ethersproject/rlp")); -const index_1 = require("@ledgerhq/evm-tools/selectors/index"); +const index_1 = require("@ledgerhq/evm-tools/lib/selectors/index"); Object.defineProperty(exports, "ERC20_CLEAR_SIGNED_SELECTORS", { enumerable: true, get: function () { return index_1.ERC20_CLEAR_SIGNED_SELECTORS; } }); diff --git a/wdio/screen-objects/testIDs/BrowserScreen/UrlAutocomplete.testIds.ts b/wdio/screen-objects/testIDs/BrowserScreen/UrlAutocomplete.testIds.ts new file mode 100644 index 00000000000..fbceab555d1 --- /dev/null +++ b/wdio/screen-objects/testIDs/BrowserScreen/UrlAutocomplete.testIds.ts @@ -0,0 +1 @@ +export const deleteFavoriteTestId = (url: string) => `delete-favorite-${url}`; \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 8ee8395d689..651c62ce858 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2019,7 +2019,7 @@ "@ethereumjs/rlp" "^5.0.2" ethereum-cryptography "^2.1.3" -"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.5.0", "@ethersproject/abi@^5.7.0": +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": version "5.7.0" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== @@ -2244,7 +2244,7 @@ "@ethersproject/bytes" "^5.7.0" "@ethersproject/logger" "^5.7.0" -"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.5.0", "@ethersproject/rlp@^5.7.0": +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": version "5.7.0" resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== @@ -4285,12 +4285,12 @@ hosted-git-info "8.0.2" lockfile-lint-api "^5.9.1" -"@ledgerhq/cryptoassets-evm-signatures@^13.5.0": - version "13.5.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/cryptoassets-evm-signatures/-/cryptoassets-evm-signatures-13.5.0.tgz#19ad9c567fe40efa822b9f5a8d3968210024e704" - integrity sha512-lEz+orFtMVGysZ303n7C/aDrkYpKSHpuifJTt4/Bj4S9OwUv8ExnfazYL/fYMXMUmb1vwzfQ6nKBW01hiY5pBQ== +"@ledgerhq/cryptoassets-evm-signatures@^13.5.2": + version "13.5.2" + resolved "https://registry.yarnpkg.com/@ledgerhq/cryptoassets-evm-signatures/-/cryptoassets-evm-signatures-13.5.2.tgz#1c31cb1d0b5f95e0c7a7d47af0b8f78bb9efbc7f" + integrity sha512-OjjzuiMMEIYEbXeueJB6mXwlvYhru28b43buAVOeggZ2XmdlT0kBvt7Cjn4bDPqff/glWR7vQdytIr7b77m2EQ== dependencies: - "@ledgerhq/live-env" "^2.3.0" + "@ledgerhq/live-env" "^2.4.1" axios "1.7.7" "@ledgerhq/devices@^8.4.2", "@ledgerhq/devices@^8.4.4": @@ -4303,14 +4303,14 @@ rxjs "^7.8.1" semver "^7.3.5" -"@ledgerhq/domain-service@^1.2.6": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@ledgerhq/domain-service/-/domain-service-1.2.6.tgz#d8a38db38f44914ccb4fe9a12784730829fcbadb" - integrity sha512-tT1PFm71w2VFHJfCEoQ8znA8f1WRWGJJGEt8xql2YP0JFJygDe7PPbHTHHywLlZqo8GBqAGZzjTOmdyDcPPP1w== +"@ledgerhq/domain-service@^1.2.15": + version "1.2.15" + resolved "https://registry.yarnpkg.com/@ledgerhq/domain-service/-/domain-service-1.2.15.tgz#0e966bff57b160366c4c6bb1ee9d9fb19d78d915" + integrity sha512-878CF79/vau/6OLrlBAG9O+aefyue9joW67GTTO9Kd1tbMb2RHyyLif2sImJp+hpuRXzMyEuJ6Prb4AjPQvpJA== dependencies: "@ledgerhq/errors" "^6.19.1" "@ledgerhq/logs" "^6.12.0" - "@ledgerhq/types-live" "^6.52.0" + "@ledgerhq/types-live" "^6.56.0" axios "1.7.7" eip55 "^2.1.1" react "^18.2.0" @@ -4321,32 +4321,34 @@ resolved "https://registry.yarnpkg.com/@ledgerhq/errors/-/errors-6.19.1.tgz#d9ac45ad4ff839e468b8f63766e665537aaede58" integrity sha512-75yK7Nnit/Gp7gdrJAz0ipp31CCgncRp+evWt6QawQEtQKYEDfGo10QywgrrBBixeRxwnMy1DP6g2oCWRf1bjw== -"@ledgerhq/evm-tools@^1.2.3": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@ledgerhq/evm-tools/-/evm-tools-1.2.3.tgz#f5c9dec99cc36f73f6a6a6408ef78d8d6659633f" - integrity sha512-uQGygvpR1QAJ8hadpx/86GHrhyAz7xJN22GRUDQeYF8b1/i9TSzGXs1crjfFU2aF1+vUhIxv+s3wvbDR5v3/QA== +"@ledgerhq/evm-tools@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/evm-tools/-/evm-tools-1.3.0.tgz#1dcbe67abb28c2c5f6f04cfa5c38853427505a7e" + integrity sha512-NeMhQlcEJRkgM4Yaap+Xngm2wIib3wUoXJTvIbBt8L/yJu5A0fN8v84pprh50JC7e1X0sL4r8do8XqdxXb9Gpg== dependencies: - "@ledgerhq/cryptoassets-evm-signatures" "^13.5.0" - "@ledgerhq/live-env" "^2.3.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ledgerhq/cryptoassets-evm-signatures" "^13.5.2" + "@ledgerhq/live-env" "^2.4.1" axios "1.7.7" crypto-js "4.2.0" - ethers "5.7.2" -"@ledgerhq/hw-app-eth@^6.39.0": - version "6.39.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-app-eth/-/hw-app-eth-6.39.0.tgz#b4b1588d4adeddc1b4488f3d7d23e80170cb764c" - integrity sha512-T/lLwrY1cpXmAyjfSlSUt9lVdCmO1h2pigONtiTWysiwpCu2s4L1Bfk0qZoc5K68ohTahNVxviRJl1xqFg+fXA== +"@ledgerhq/hw-app-eth@^6.42.0": + version "6.42.2" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-app-eth/-/hw-app-eth-6.42.2.tgz#6806eec73ad281032fc5e0ac62506c158628380b" + integrity sha512-Vt9mMpVYl1zOzJlGa/M/E3X/cE1rwIg/BpBVlTg3R7CU7iJWonlMHweUr+d37DwTS0CWa9kJDkp7jjvtvkcABA== dependencies: - "@ethersproject/abi" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - "@ledgerhq/cryptoassets-evm-signatures" "^13.5.0" - "@ledgerhq/domain-service" "^1.2.6" + "@ethersproject/abi" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ledgerhq/cryptoassets-evm-signatures" "^13.5.2" + "@ledgerhq/domain-service" "^1.2.15" "@ledgerhq/errors" "^6.19.1" - "@ledgerhq/evm-tools" "^1.2.3" + "@ledgerhq/evm-tools" "^1.3.0" "@ledgerhq/hw-transport" "^6.31.4" "@ledgerhq/hw-transport-mocker" "^6.29.4" "@ledgerhq/logs" "^6.12.0" - "@ledgerhq/types-live" "^6.52.0" + "@ledgerhq/types-live" "^6.56.0" axios "1.7.7" bignumber.js "^9.1.2" semver "^7.3.5" @@ -4370,10 +4372,10 @@ "@ledgerhq/logs" "^6.12.0" events "^3.3.0" -"@ledgerhq/live-env@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/live-env/-/live-env-2.3.0.tgz#8a5b9ead9269f0ac167434e6d5601da6b3e836f9" - integrity sha512-VWZso7/LdxxlaQqJ1tI44yrAadiJ78VUyQomlg7YY1eNI12+3xzWK8Rfs/aZEIQYp5q6ZBgbbDe7hmTtcAd4KQ== +"@ledgerhq/live-env@^2.4.1": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@ledgerhq/live-env/-/live-env-2.4.1.tgz#37022d8eb20f08f1d98961f83d8f33084b537160" + integrity sha512-ZiVUfN1F5rnj6g3IUqOsHvitiKd7rtGy7FY7VBOXbG9qN7XLeLfmJhnzh/5yjX14dXhVOeAlPd1UzmmpxkRU6A== dependencies: rxjs "^7.8.1" utility-types "^3.10.0" @@ -4396,10 +4398,10 @@ rxjs "^7.8.1" uuid "^9.0.1" -"@ledgerhq/types-live@^6.52.0": - version "6.52.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/types-live/-/types-live-6.52.0.tgz#71a6631ed5498104211f0b1c3dbaf2e2cc2407fd" - integrity sha512-3ZMUGGkeb0kLWr16SCS8cZRudVLafoYWBDyeBn0cqVtX8T5iUNmC+ICICsJZrn5KJcM0JsOs6DBuuFmSVJ1Q5Q== +"@ledgerhq/types-live@^6.56.0": + version "6.56.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/types-live/-/types-live-6.56.0.tgz#b0888be50f6dde535037214cbd3a07734dfc0c4b" + integrity sha512-7YgNvTr1J3zgqHBDtBKzrFgGe3cHh3WLsI4EkrckRDcrUDbKd/sr+qku7jwlqsgrfMLebGeyC0CKdK/ut2WYjQ== dependencies: bignumber.js "^9.1.2" rxjs "^7.8.1" @@ -4520,10 +4522,10 @@ "@metamask/utils" "^11.0.1" immer "^9.0.6" -"@metamask/bitcoin-wallet-snap@^0.8.2": - version "0.8.2" - resolved "https://registry.yarnpkg.com/@metamask/bitcoin-wallet-snap/-/bitcoin-wallet-snap-0.8.2.tgz#dd37c48366997e6e9927837e28cc65a6008d1524" - integrity sha512-NoqqAA7YuuFk/n0/ZgcLpaFRYKorkN5nS9mVYIkHcp1yxyduDGhrDKyYzMVcOiEmrnZSkSRt5tDulk1PQ+cdLw== +"@metamask/bitcoin-wallet-snap@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@metamask/bitcoin-wallet-snap/-/bitcoin-wallet-snap-0.9.0.tgz#47014c75c1e1ed84fef57177901f458fd2b6510a" + integrity sha512-983twhfOfSCQljT+eV8JLcV0bqGVMObXnEy8TOFAkwwRW2I1ZsVRAfylbGiSwxlhxLntcpLqVu0Sj29xNyA06Q== "@metamask/browser-passworder@^4.3.0": version "4.3.0" @@ -4575,10 +4577,10 @@ eth-ens-namehash "^2.0.8" fast-deep-equal "^3.1.3" -"@metamask/design-tokens@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@metamask/design-tokens/-/design-tokens-4.0.0.tgz#3aad7e4da21c279374668e179c0b055d93aa0552" - integrity sha512-bpGKH06Nq6KwMRPNkQ+a/H2vNfX/ViIkpUHkx0FnkastL4+G63lcFS8Nv8mmi9zI24k3l0a2zvsSb/KsvFWTzA== +"@metamask/design-tokens@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@metamask/design-tokens/-/design-tokens-5.0.0.tgz#b749fc9d6556a0c2be159c6448b48796e0c14c6f" + integrity sha512-dpTV8+wuGQNS69JdWamfuMM2EAIpKXDGjXG63tGRe1N27JVvq4l5p5dBtJtWzc061MVspm45EXK6jDrvlJyGDg== "@metamask/eslint-config-typescript@^9.0.0": version "9.0.1" @@ -4673,16 +4675,16 @@ "@metamask/utils" "^10.0.0" uuid "^8.3.2" -"@metamask/eth-ledger-bridge-keyring@^8.0.0": - version "8.0.0" - resolved "https://registry.yarnpkg.com/@metamask/eth-ledger-bridge-keyring/-/eth-ledger-bridge-keyring-8.0.0.tgz#f425443dfe3e00f2e4f17ef57c9d0c3990c3e69f" - integrity sha512-HqdLXGKJOMIDVheep1kLhc7MfY4NGmgOYM886XIh7dcEdX0WuaujvOPfaJ4IKEKMPBbFr6wsOYY31KvZ3s+9ew== +"@metamask/eth-ledger-bridge-keyring@8.0.3": + version "8.0.3" + resolved "https://registry.yarnpkg.com/@metamask/eth-ledger-bridge-keyring/-/eth-ledger-bridge-keyring-8.0.3.tgz#5b39f5d76f7741e838bb7f21de902d41e5e71370" + integrity sha512-yQSxmsH/DtSjSXp5WT7seklsVfEjeOVu9E1PP0y/GIQoFJqhEIIt7WIf6Qz6KryY1jVOethnRcXMBecXSgVk/A== dependencies: "@ethereumjs/rlp" "^5.0.2" "@ethereumjs/tx" "^4.2.0" "@ethereumjs/util" "^8.1.0" - "@ledgerhq/hw-app-eth" "^6.39.0" - "@metamask/eth-sig-util" "^8.0.0" + "@ledgerhq/hw-app-eth" "^6.42.0" + "@metamask/eth-sig-util" "^8.1.2" hdkey "^2.1.0" "@metamask/eth-query@^4.0.0": @@ -4728,7 +4730,7 @@ ethereum-cryptography "^2.1.2" randombytes "^2.1.0" -"@metamask/eth-snap-keyring@^7.0.0": +"@metamask/eth-snap-keyring@^7.1.0": version "7.1.0" resolved "https://registry.yarnpkg.com/@metamask/eth-snap-keyring/-/eth-snap-keyring-7.1.0.tgz#d472ff8c9abee1f438398d749408cd12ee44ada7" integrity sha512-aOP8WkapqFmne7xt7Xo39YPxA3fvwSzKEO+Eo+o76r4rBAutH6QLNO9gmy6e4wm2TG9hHzsQjceZmLns75suvg== @@ -5536,6 +5538,11 @@ ses "^1.1.0" validate-npm-package-name "^5.0.0" +"@metamask/solana-wallet-snap@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@metamask/solana-wallet-snap/-/solana-wallet-snap-1.2.0.tgz#7d0db28a58cbd728306427144039d28f56f6d477" + integrity sha512-XG1NzrJu2Xvo6PKr5f3Ij6ojEBNGh1H/2WJCcCMSoKZUEl8UG5i8rmZ+SVcZJ0Jhr88sbredNXlAzqGESz2VBA== + "@metamask/stake-sdk@^0.3.0": version "0.3.0" resolved "https://registry.yarnpkg.com/@metamask/stake-sdk/-/stake-sdk-0.3.0.tgz#b6156fd29666bfb9482a89b555cfe70b2b63769a" @@ -7254,6 +7261,55 @@ resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553" integrity sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg== +"@solana/addresses@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/addresses/-/addresses-2.0.0.tgz#d1b01a38e0b48d7e4fea223821655a0c2b903c28" + integrity sha512-8n3c/mUlH1/z+pM8e7OJ6uDSXw26Be0dgYiokiqblO66DGQ0d+7pqFUFZ5pEGjJ9PU2lDTSfY8rHf4cemOqwzQ== + dependencies: + "@solana/assertions" "2.0.0" + "@solana/codecs-core" "2.0.0" + "@solana/codecs-strings" "2.0.0" + "@solana/errors" "2.0.0" + +"@solana/assertions@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/assertions/-/assertions-2.0.0.tgz#b02fc874a890f252c4595a0e35deeb1719d5f02b" + integrity sha512-NyPPqZRNGXs/GAjfgsw7YS6vCTXWt4ibXveS+ciy5sdmp/0v3pA6DlzYjleF9Sljrew0IiON15rjaXamhDxYfQ== + dependencies: + "@solana/errors" "2.0.0" + +"@solana/codecs-core@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/codecs-core/-/codecs-core-2.0.0.tgz#31d4a6acce9ac49f786939c4e564adf9a68c56ef" + integrity sha512-qCG+3hDU5Pm8V6joJjR4j4Zv9md1z0RaecniNDIkEglnxmOUODnmPLWbtOjnDylfItyuZeDihK8hkewdj8cUtw== + dependencies: + "@solana/errors" "2.0.0" + +"@solana/codecs-numbers@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/codecs-numbers/-/codecs-numbers-2.0.0.tgz#c08250968fa1cbfab076367b650269271061c646" + integrity sha512-r66i7VzJO1MZkQWZIAI6jjJOFVpnq0+FIabo2Z2ZDtrArFus/SbSEv543yCLeD2tdR/G/p+1+P5On10qF50Y1Q== + dependencies: + "@solana/codecs-core" "2.0.0" + "@solana/errors" "2.0.0" + +"@solana/codecs-strings@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/codecs-strings/-/codecs-strings-2.0.0.tgz#46e728adee9a4737c3ee811af452948aab31cbd4" + integrity sha512-dNqeCypsvaHcjW86H0gYgAZGGkKVBeKVeh7WXlOZ9kno7PeQ2wNkpccyzDfuzaIsKv+HZUD3v/eo86GCvnKazQ== + dependencies: + "@solana/codecs-core" "2.0.0" + "@solana/codecs-numbers" "2.0.0" + "@solana/errors" "2.0.0" + +"@solana/errors@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@solana/errors/-/errors-2.0.0.tgz#31c87baaf4b19aaa2a1d8bbc4dfa6efd449d7bbe" + integrity sha512-IHlaPFSy4lvYco1oHJ3X8DbchWwAwJaL/4wZKnF1ugwZ0g0re8wbABrqNOe/jyZ84VU9Z14PYM8W9oDAebdJbw== + dependencies: + chalk "^5.3.0" + commander "^12.1.0" + "@spruceid/siwe-parser@2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@spruceid/siwe-parser/-/siwe-parser-2.1.0.tgz#59859ccfd02403179bcf115d9e02a7dc953a0820" @@ -9854,6 +9910,11 @@ resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.1.tgz#c48c2e27b65d2a153b19bfc1a317e30872e01eef" integrity sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw== +"@types/luxon@^3.4.2": + version "3.4.2" + resolved "https://registry.yarnpkg.com/@types/luxon/-/luxon-3.4.2.tgz#e4fc7214a420173cea47739c33cdf10874694db7" + integrity sha512-TifLZlFudklWlMBfhubvgqTXRzLDI5pCbGa4P8a3wPyUQSW+1xQ5eDsreP9DWHX3tjq1ke96uYG/nwundroWcA== + "@types/method-override@0.0.35": version "0.0.35" resolved "https://registry.yarnpkg.com/@types/method-override/-/method-override-0.0.35.tgz#3c0634d29e19939d21371baca12bf55bfee6ee80" @@ -13487,6 +13548,11 @@ chalk@^2.0.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^5.3.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.4.1.tgz#1b48bf0963ec158dce2aacf69c093ae2dd2092d8" + integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== + char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -13974,6 +14040,11 @@ commander@^10.0.1: resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== +commander@^12.1.0: + version "12.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" + integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA== + commander@^2.19.0, commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -14441,10 +14512,10 @@ cross-fetch@^3.0.4, cross-fetch@^3.1.5: dependencies: node-fetch "^2.6.12" -cross-spawn@7.0.5, cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.5.tgz#910aac880ff5243da96b728bc6521a5f6c2f2f82" - integrity sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug== +cross-spawn@7.0.6, cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -16615,7 +16686,7 @@ ethereumjs-wallet@^1.0.1: utf8 "^3.0.0" uuid "^8.3.2" -ethers@5.7.2, ethers@^5.0.14: +ethers@^5.0.14: version "5.7.2" resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== @@ -21501,10 +21572,10 @@ ltgt@^2.1.3: resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== -luxon@^3.2.1, luxon@^3.3.0: - version "3.4.3" - resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.4.3.tgz#8ddf0358a9492267ffec6a13675fbaab5551315d" - integrity sha512-tFWBiv3h7z+T/tDaoxA8rqTxy1CHV6gHS//QdaH4pulbq/JuBSGgQspQQqcgnwdAx6pNI7cmvz5Sv/addzHmUg== +luxon@^3.2.1, luxon@^3.3.0, luxon@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.5.0.tgz#6b6f65c5cd1d61d1fd19dbf07ee87a50bf4b8e20" + integrity sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ== lz-string@^1.5.0: version "1.5.0" @@ -28384,10 +28455,10 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -undici@5.28.4: - version "5.28.4" - resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.4.tgz#6b280408edb6a1a604a9b20340f45b422e373068" - integrity sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g== +undici@5.28.4, undici@5.28.5: + version "5.28.5" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.5.tgz#b2b94b6bf8f1d919bc5a6f31f2c01deb02e54d4b" + integrity sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA== dependencies: "@fastify/busboy" "^2.0.0"