diff --git a/.gitignore b/.gitignore index 3d5b372..2b85791 100644 --- a/.gitignore +++ b/.gitignore @@ -49,4 +49,6 @@ build .sentryclirc # Intelij files -.idea \ No newline at end of file +.idea +# Sentry +.sentryclirc diff --git a/.pnp.cjs b/.pnp.cjs index 879838f..8562290 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -28,11 +28,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { [null, {\ "packageLocation": "./",\ "packageDependencies": [\ + ["@amplitude/analytics-browser", "npm:1.6.6"],\ ["@keplr-wallet/common", "npm:0.11.25"],\ ["@keplr-wallet/cosmos", "npm:0.11.25"],\ ["@keplr-wallet/proto-types", "npm:0.11.25"],\ ["@keplr-wallet/types", "npm:0.11.25"],\ ["@next/eslint-plugin-next", "npm:13.0.5"],\ + ["@sentry/nextjs", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0"],\ ["@types/eslint", "npm:8.4.10"],\ ["@types/node", "npm:18.11.9"],\ ["@types/react", "npm:18.0.25"],\ @@ -70,6 +72,72 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "SOFT"\ }]\ ]],\ + ["@amplitude/analytics-browser", [\ + ["npm:1.6.6", {\ + "packageLocation": "./.yarn/cache/@amplitude-analytics-browser-npm-1.6.6-d1c69ae672-a43eb0dab5.zip/node_modules/@amplitude/analytics-browser/",\ + "packageDependencies": [\ + ["@amplitude/analytics-browser", "npm:1.6.6"],\ + ["@amplitude/analytics-client-common", "npm:0.5.0"],\ + ["@amplitude/analytics-core", "npm:0.11.0"],\ + ["@amplitude/analytics-types", "npm:0.14.0"],\ + ["@amplitude/ua-parser-js", "npm:0.7.31"],\ + ["tslib", "npm:2.4.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@amplitude/analytics-client-common", [\ + ["npm:0.5.0", {\ + "packageLocation": "./.yarn/cache/@amplitude-analytics-client-common-npm-0.5.0-07e963d4fd-eebf391f64.zip/node_modules/@amplitude/analytics-client-common/",\ + "packageDependencies": [\ + ["@amplitude/analytics-client-common", "npm:0.5.0"],\ + ["@amplitude/analytics-connector", "npm:1.4.6"],\ + ["@amplitude/analytics-core", "npm:0.11.0"],\ + ["@amplitude/analytics-types", "npm:0.14.0"],\ + ["tslib", "npm:2.4.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@amplitude/analytics-connector", [\ + ["npm:1.4.6", {\ + "packageLocation": "./.yarn/cache/@amplitude-analytics-connector-npm-1.4.6-d9e949e37c-0a2acfa54e.zip/node_modules/@amplitude/analytics-connector/",\ + "packageDependencies": [\ + ["@amplitude/analytics-connector", "npm:1.4.6"],\ + ["@amplitude/ua-parser-js", "npm:0.7.31"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@amplitude/analytics-core", [\ + ["npm:0.11.0", {\ + "packageLocation": "./.yarn/cache/@amplitude-analytics-core-npm-0.11.0-e8af53e9ab-be98d2614b.zip/node_modules/@amplitude/analytics-core/",\ + "packageDependencies": [\ + ["@amplitude/analytics-core", "npm:0.11.0"],\ + ["@amplitude/analytics-types", "npm:0.14.0"],\ + ["tslib", "npm:2.4.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@amplitude/analytics-types", [\ + ["npm:0.14.0", {\ + "packageLocation": "./.yarn/cache/@amplitude-analytics-types-npm-0.14.0-7b5c807dc5-23972f7869.zip/node_modules/@amplitude/analytics-types/",\ + "packageDependencies": [\ + ["@amplitude/analytics-types", "npm:0.14.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@amplitude/ua-parser-js", [\ + ["npm:0.7.31", {\ + "packageLocation": "./.yarn/cache/@amplitude-ua-parser-js-npm-0.7.31-540ed0892d-c72e7c8656.zip/node_modules/@amplitude/ua-parser-js/",\ + "packageDependencies": [\ + ["@amplitude/ua-parser-js", "npm:0.7.31"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@babel/code-frame", [\ ["npm:7.18.6", {\ "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.18.6-25229a7e34-195e2be317.zip/node_modules/@babel/code-frame/",\ @@ -990,6 +1058,63 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["@rollup/plugin-sucrase", [\ + ["npm:4.0.4", {\ + "packageLocation": "./.yarn/cache/@rollup-plugin-sucrase-npm-4.0.4-11cf77c62a-ccb01d7eb3.zip/node_modules/@rollup/plugin-sucrase/",\ + "packageDependencies": [\ + ["@rollup/plugin-sucrase", "npm:4.0.4"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:4.0.4", {\ + "packageLocation": "./.yarn/__virtual__/@rollup-plugin-sucrase-virtual-a5fe52f236/0/cache/@rollup-plugin-sucrase-npm-4.0.4-11cf77c62a-ccb01d7eb3.zip/node_modules/@rollup/plugin-sucrase/",\ + "packageDependencies": [\ + ["@rollup/plugin-sucrase", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:4.0.4"],\ + ["@rollup/pluginutils", "npm:4.2.1"],\ + ["@types/rollup", null],\ + ["rollup", "npm:2.78.0"],\ + ["sucrase", "npm:3.29.0"]\ + ],\ + "packagePeers": [\ + "@types/rollup",\ + "rollup"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@rollup/plugin-virtual", [\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/@rollup-plugin-virtual-npm-3.0.0-678cdc8578-2335cabee2.zip/node_modules/@rollup/plugin-virtual/",\ + "packageDependencies": [\ + ["@rollup/plugin-virtual", "npm:3.0.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:3.0.0", {\ + "packageLocation": "./.yarn/__virtual__/@rollup-plugin-virtual-virtual-683e923f4b/0/cache/@rollup-plugin-virtual-npm-3.0.0-678cdc8578-2335cabee2.zip/node_modules/@rollup/plugin-virtual/",\ + "packageDependencies": [\ + ["@rollup/plugin-virtual", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:3.0.0"],\ + ["@types/rollup", null],\ + ["rollup", "npm:2.78.0"]\ + ],\ + "packagePeers": [\ + "@types/rollup",\ + "rollup"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@rollup/pluginutils", [\ + ["npm:4.2.1", {\ + "packageLocation": "./.yarn/cache/@rollup-pluginutils-npm-4.2.1-0f52a5eba2-6bc41f22b1.zip/node_modules/@rollup/pluginutils/",\ + "packageDependencies": [\ + ["@rollup/pluginutils", "npm:4.2.1"],\ + ["estree-walker", "npm:2.0.2"],\ + ["picomatch", "npm:2.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@rushstack/eslint-patch", [\ ["npm:1.2.0", {\ "packageLocation": "./.yarn/cache/@rushstack-eslint-patch-npm-1.2.0-917f402e4e-faa749faae.zip/node_modules/@rushstack/eslint-patch/",\ @@ -999,6 +1124,216 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["@sentry/browser", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-browser-npm-7.27.0-21601bd9f9-da5e50bd57.zip/node_modules/@sentry/browser/",\ + "packageDependencies": [\ + ["@sentry/browser", "npm:7.27.0"],\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/replay", "virtual:21601bd9f91dad7312f712f5400c693cac4ca00856456090469b4d7eeb106b080cca0a5e44daaf28693eb0205ad0dbe83cb5230d76d15cf004c44ddb74f24ecf#npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/cli", [\ + ["npm:1.74.6", {\ + "packageLocation": "./.yarn/unplugged/@sentry-cli-npm-1.74.6-11e655b3b1/node_modules/@sentry/cli/",\ + "packageDependencies": [\ + ["@sentry/cli", "npm:1.74.6"],\ + ["https-proxy-agent", "npm:5.0.1"],\ + ["mkdirp", "npm:0.5.6"],\ + ["node-fetch", "virtual:11e655b3b18fc42f748e18c58023ec098038b688753d5feed37f47812eba5f10ef43c5ef8e9790efa865f43dd6ff4118ecfcbabb399095f9e39083b2080ff762#npm:2.6.7"],\ + ["npmlog", "npm:4.1.2"],\ + ["progress", "npm:2.0.3"],\ + ["proxy-from-env", "npm:1.1.0"],\ + ["which", "npm:2.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/core", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-core-npm-7.27.0-72a2ae90aa-36138a8f43.zip/node_modules/@sentry/core/",\ + "packageDependencies": [\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/integrations", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-integrations-npm-7.27.0-b9d35a9a46-26cc2a10a4.zip/node_modules/@sentry/integrations/",\ + "packageDependencies": [\ + ["@sentry/integrations", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["localforage", "npm:1.10.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/nextjs", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-nextjs-npm-7.27.0-1e548cf282-fdc0ba40b4.zip/node_modules/@sentry/nextjs/",\ + "packageDependencies": [\ + ["@sentry/nextjs", "npm:7.27.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0", {\ + "packageLocation": "./.yarn/__virtual__/@sentry-nextjs-virtual-e9c3f44508/0/cache/@sentry-nextjs-npm-7.27.0-1e548cf282-fdc0ba40b4.zip/node_modules/@sentry/nextjs/",\ + "packageDependencies": [\ + ["@sentry/nextjs", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0"],\ + ["@rollup/plugin-sucrase", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:4.0.4"],\ + ["@rollup/plugin-virtual", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:3.0.0"],\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/integrations", "npm:7.27.0"],\ + ["@sentry/node", "npm:7.27.0"],\ + ["@sentry/react", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:7.27.0"],\ + ["@sentry/tracing", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["@sentry/webpack-plugin", "npm:1.20.0"],\ + ["@types/next", null],\ + ["@types/react", "npm:18.0.25"],\ + ["@types/webpack", null],\ + ["chalk", "npm:3.0.0"],\ + ["next", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:13.0.5"],\ + ["react", "npm:18.2.0"],\ + ["rollup", "npm:2.78.0"],\ + ["tslib", "npm:1.14.1"],\ + ["webpack", null]\ + ],\ + "packagePeers": [\ + "@types/next",\ + "@types/react",\ + "@types/webpack",\ + "next",\ + "react",\ + "webpack"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/node", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-node-npm-7.27.0-f1028265b5-a42cb398ed.zip/node_modules/@sentry/node/",\ + "packageDependencies": [\ + ["@sentry/node", "npm:7.27.0"],\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["cookie", "npm:0.4.2"],\ + ["https-proxy-agent", "npm:5.0.1"],\ + ["lru_map", "npm:0.3.3"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/react", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-react-npm-7.27.0-17a03112ea-164cefe9ef.zip/node_modules/@sentry/react/",\ + "packageDependencies": [\ + ["@sentry/react", "npm:7.27.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:7.27.0", {\ + "packageLocation": "./.yarn/__virtual__/@sentry-react-virtual-b11fda8097/0/cache/@sentry-react-npm-7.27.0-17a03112ea-164cefe9ef.zip/node_modules/@sentry/react/",\ + "packageDependencies": [\ + ["@sentry/react", "virtual:e9c3f4450835355c1308c5ec6b0a06961dea09cc1cbf5a2c356d2c2179b00f6666bd54ef0244e47c45a539436800a0d785ea018febc600fdf27dce27b78ada2e#npm:7.27.0"],\ + ["@sentry/browser", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["@types/react", "npm:18.0.25"],\ + ["hoist-non-react-statics", "npm:3.3.2"],\ + ["react", "npm:18.2.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "packagePeers": [\ + "@types/react",\ + "react"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/replay", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-replay-npm-7.27.0-18656992dc-440ac09c9a.zip/node_modules/@sentry/replay/",\ + "packageDependencies": [\ + ["@sentry/replay", "npm:7.27.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:21601bd9f91dad7312f712f5400c693cac4ca00856456090469b4d7eeb106b080cca0a5e44daaf28693eb0205ad0dbe83cb5230d76d15cf004c44ddb74f24ecf#npm:7.27.0", {\ + "packageLocation": "./.yarn/__virtual__/@sentry-replay-virtual-8f5e4cea4f/0/cache/@sentry-replay-npm-7.27.0-18656992dc-440ac09c9a.zip/node_modules/@sentry/replay/",\ + "packageDependencies": [\ + ["@sentry/replay", "virtual:21601bd9f91dad7312f712f5400c693cac4ca00856456090469b4d7eeb106b080cca0a5e44daaf28693eb0205ad0dbe83cb5230d76d15cf004c44ddb74f24ecf#npm:7.27.0"],\ + ["@sentry/browser", "npm:7.27.0"],\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["@types/sentry__browser", null]\ + ],\ + "packagePeers": [\ + "@sentry/browser",\ + "@types/sentry__browser"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/tracing", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-tracing-npm-7.27.0-7d217c54fa-203a3a6b46.zip/node_modules/@sentry/tracing/",\ + "packageDependencies": [\ + ["@sentry/tracing", "npm:7.27.0"],\ + ["@sentry/core", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["@sentry/utils", "npm:7.27.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/types", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-types-npm-7.27.0-67702fc3e1-a22056aa58.zip/node_modules/@sentry/types/",\ + "packageDependencies": [\ + ["@sentry/types", "npm:7.27.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/utils", [\ + ["npm:7.27.0", {\ + "packageLocation": "./.yarn/cache/@sentry-utils-npm-7.27.0-1935a93244-d01f2d1999.zip/node_modules/@sentry/utils/",\ + "packageDependencies": [\ + ["@sentry/utils", "npm:7.27.0"],\ + ["@sentry/types", "npm:7.27.0"],\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@sentry/webpack-plugin", [\ + ["npm:1.20.0", {\ + "packageLocation": "./.yarn/cache/@sentry-webpack-plugin-npm-1.20.0-9eeec4f0d8-d582026c36.zip/node_modules/@sentry/webpack-plugin/",\ + "packageDependencies": [\ + ["@sentry/webpack-plugin", "npm:1.20.0"],\ + ["@sentry/cli", "npm:1.74.6"],\ + ["webpack-sources", "npm:3.2.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@swc/helpers", [\ ["npm:0.4.14", {\ "packageLocation": "./.yarn/cache/@swc-helpers-npm-0.4.14-f806c3fb16-273fd3f3fc.zip/node_modules/@swc/helpers/",\ @@ -1688,6 +2023,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["ansi-regex", [\ + ["npm:2.1.1", {\ + "packageLocation": "./.yarn/cache/ansi-regex-npm-2.1.1-ddd24d102b-190abd03e4.zip/node_modules/ansi-regex/",\ + "packageDependencies": [\ + ["ansi-regex", "npm:2.1.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:5.0.1", {\ "packageLocation": "./.yarn/cache/ansi-regex-npm-5.0.1-c963a48615-2aa4bb54ca.zip/node_modules/ansi-regex/",\ "packageDependencies": [\ @@ -1714,7 +2056,23 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["any-promise", [\ + ["npm:1.3.0", {\ + "packageLocation": "./.yarn/cache/any-promise-npm-1.3.0-f34eeaa7e7-0ee8a9bdbe.zip/node_modules/any-promise/",\ + "packageDependencies": [\ + ["any-promise", "npm:1.3.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["aproba", [\ + ["npm:1.2.0", {\ + "packageLocation": "./.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip/node_modules/aproba/",\ + "packageDependencies": [\ + ["aproba", "npm:1.2.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/aproba-npm-2.0.0-8716bcfde6-5615cadcfb.zip/node_modules/aproba/",\ "packageDependencies": [\ @@ -1724,6 +2082,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["are-we-there-yet", [\ + ["npm:1.1.7", {\ + "packageLocation": "./.yarn/cache/are-we-there-yet-npm-1.1.7-db9f39924e-70d251719c.zip/node_modules/are-we-there-yet/",\ + "packageDependencies": [\ + ["are-we-there-yet", "npm:1.1.7"],\ + ["delegates", "npm:1.0.0"],\ + ["readable-stream", "npm:2.3.7"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.1", {\ "packageLocation": "./.yarn/cache/are-we-there-yet-npm-3.0.1-3395b1512f-52590c2486.zip/node_modules/are-we-there-yet/",\ "packageDependencies": [\ @@ -2186,6 +2553,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ],\ "linkType": "HARD"\ }],\ + ["npm:3.0.0", {\ + "packageLocation": "./.yarn/cache/chalk-npm-3.0.0-e813208025-8e3ddf3981.zip/node_modules/chalk/",\ + "packageDependencies": [\ + ["chalk", "npm:3.0.0"],\ + ["ansi-styles", "npm:4.3.0"],\ + ["supports-color", "npm:7.2.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:4.1.2", {\ "packageLocation": "./.yarn/cache/chalk-npm-4.1.2-ba8b67ab80-fe75c9d5c7.zip/node_modules/chalk/",\ "packageDependencies": [\ @@ -2262,6 +2638,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["code-point-at", [\ + ["npm:1.1.0", {\ + "packageLocation": "./.yarn/cache/code-point-at-npm-1.1.0-37de5fe566-17d5666611.zip/node_modules/code-point-at/",\ + "packageDependencies": [\ + ["code-point-at", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["color-convert", [\ ["npm:1.9.3", {\ "packageLocation": "./.yarn/cache/color-convert-npm-1.9.3-1fe690075e-fd7a64a17c.zip/node_modules/color-convert/",\ @@ -2315,6 +2700,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["commander", [\ + ["npm:4.1.1", {\ + "packageLocation": "./.yarn/cache/commander-npm-4.1.1-22a0fe921b-d7b9913ff9.zip/node_modules/commander/",\ + "packageDependencies": [\ + ["commander", "npm:4.1.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["common-tags", [\ ["npm:1.8.2", {\ "packageLocation": "./.yarn/cache/common-tags-npm-1.8.2-2c30ba69b3-767a6255a8.zip/node_modules/common-tags/",\ @@ -2343,6 +2737,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["cookie", [\ + ["npm:0.4.2", {\ + "packageLocation": "./.yarn/cache/cookie-npm-0.4.2-7761894d5f-a00833c998.zip/node_modules/cookie/",\ + "packageDependencies": [\ + ["cookie", "npm:0.4.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:0.5.0", {\ "packageLocation": "./.yarn/cache/cookie-npm-0.5.0-e2d58a161a-1f4bd2ca57.zip/node_modules/cookie/",\ "packageDependencies": [\ @@ -2360,6 +2761,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["core-util-is", [\ + ["npm:1.0.3", {\ + "packageLocation": "./.yarn/cache/core-util-is-npm-1.0.3-ca74b76c90-9de8597363.zip/node_modules/core-util-is/",\ + "packageDependencies": [\ + ["core-util-is", "npm:1.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["create-hash", [\ ["npm:1.2.0", {\ "packageLocation": "./.yarn/cache/create-hash-npm-1.2.0-afd048e1ce-02a6ae3bb9.zip/node_modules/create-hash/",\ @@ -3354,6 +3764,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["estree-walker", [\ + ["npm:2.0.2", {\ + "packageLocation": "./.yarn/cache/estree-walker-npm-2.0.2-dfab42f65c-6151e6f982.zip/node_modules/estree-walker/",\ + "packageDependencies": [\ + ["estree-walker", "npm:2.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["esutils", [\ ["npm:2.0.3", {\ "packageLocation": "./.yarn/cache/esutils-npm-2.0.3-f865beafd5-22b5b08f74.zip/node_modules/esutils/",\ @@ -3561,6 +3980,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["fsevents", [\ + ["patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1", {\ + "packageLocation": "./.yarn/unplugged/fsevents-patch-2882183fbf/node_modules/fsevents/",\ + "packageDependencies": [\ + ["fsevents", "patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1"],\ + ["node-gyp", "npm:9.3.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["function-bind", [\ ["npm:1.1.1", {\ "packageLocation": "./.yarn/cache/function-bind-npm-1.1.1-b56b322ae9-b32fbaebb3.zip/node_modules/function-bind/",\ @@ -3593,6 +4022,21 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["gauge", [\ + ["npm:2.7.4", {\ + "packageLocation": "./.yarn/cache/gauge-npm-2.7.4-2189a73529-a89b53cee6.zip/node_modules/gauge/",\ + "packageDependencies": [\ + ["gauge", "npm:2.7.4"],\ + ["aproba", "npm:1.2.0"],\ + ["console-control-strings", "npm:1.1.0"],\ + ["has-unicode", "npm:2.0.1"],\ + ["object-assign", "npm:4.1.1"],\ + ["signal-exit", "npm:3.0.7"],\ + ["string-width", "npm:1.0.2"],\ + ["strip-ansi", "npm:3.0.1"],\ + ["wide-align", "npm:1.1.5"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:4.0.4", {\ "packageLocation": "./.yarn/cache/gauge-npm-4.0.4-8f878385e9-788b6bfe52.zip/node_modules/gauge/",\ "packageDependencies": [\ @@ -3651,6 +4095,19 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["glob", [\ + ["npm:7.1.6", {\ + "packageLocation": "./.yarn/cache/glob-npm-7.1.6-1ce3a5189a-351d549dd9.zip/node_modules/glob/",\ + "packageDependencies": [\ + ["glob", "npm:7.1.6"],\ + ["fs.realpath", "npm:1.0.0"],\ + ["inflight", "npm:1.0.6"],\ + ["inherits", "npm:2.0.4"],\ + ["minimatch", "npm:3.1.2"],\ + ["once", "npm:1.4.0"],\ + ["path-is-absolute", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.1.7", {\ "packageLocation": "./.yarn/cache/glob-npm-7.1.7-5698ad9c48-b61f48973b.zip/node_modules/glob/",\ "packageDependencies": [\ @@ -3977,11 +4434,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./",\ "packageDependencies": [\ ["icns-frontend", "workspace:."],\ + ["@amplitude/analytics-browser", "npm:1.6.6"],\ ["@keplr-wallet/common", "npm:0.11.25"],\ ["@keplr-wallet/cosmos", "npm:0.11.25"],\ ["@keplr-wallet/proto-types", "npm:0.11.25"],\ ["@keplr-wallet/types", "npm:0.11.25"],\ ["@next/eslint-plugin-next", "npm:13.0.5"],\ + ["@sentry/nextjs", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0"],\ ["@types/eslint", "npm:8.4.10"],\ ["@types/node", "npm:18.11.9"],\ ["@types/react", "npm:18.0.25"],\ @@ -4047,6 +4506,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["immediate", [\ + ["npm:3.0.6", {\ + "packageLocation": "./.yarn/cache/immediate-npm-3.0.6-c27588a2d3-f9b3486477.zip/node_modules/immediate/",\ + "packageDependencies": [\ + ["immediate", "npm:3.0.6"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["import-fresh", [\ ["npm:3.3.0", {\ "packageLocation": "./.yarn/cache/import-fresh-npm-3.3.0-3e34265ca9-2cacfad06e.zip/node_modules/import-fresh/",\ @@ -4266,6 +4734,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["is-fullwidth-code-point", [\ + ["npm:1.0.0", {\ + "packageLocation": "./.yarn/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-4d46a7465a.zip/node_modules/is-fullwidth-code-point/",\ + "packageDependencies": [\ + ["is-fullwidth-code-point", "npm:1.0.0"],\ + ["number-is-nan", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/is-fullwidth-code-point-npm-3.0.0-1ecf4ebee5-44a30c2945.zip/node_modules/is-fullwidth-code-point/",\ "packageDependencies": [\ @@ -4663,6 +5139,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["lie", [\ + ["npm:3.1.1", {\ + "packageLocation": "./.yarn/cache/lie-npm-3.1.1-91350720d9-6da9f2121d.zip/node_modules/lie/",\ + "packageDependencies": [\ + ["lie", "npm:3.1.1"],\ + ["immediate", "npm:3.0.6"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["line-column", [\ ["npm:1.0.2", {\ "packageLocation": "./.yarn/cache/line-column-npm-1.0.2-bdeb1193f9-7b71b3aaeb.zip/node_modules/line-column/",\ @@ -4683,6 +5169,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["localforage", [\ + ["npm:1.10.0", {\ + "packageLocation": "./.yarn/cache/localforage-npm-1.10.0-cf9ea9a436-f2978b434d.zip/node_modules/localforage/",\ + "packageDependencies": [\ + ["localforage", "npm:1.10.0"],\ + ["lie", "npm:3.1.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["locate-path", [\ ["npm:5.0.0", {\ "packageLocation": "./.yarn/cache/locate-path-npm-5.0.0-46580c43e4-83e51725e6.zip/node_modules/locate-path/",\ @@ -4755,6 +5251,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["lru_map", [\ + ["npm:0.3.3", {\ + "packageLocation": "./.yarn/cache/lru_map-npm-0.3.3-a038bb3418-ca9dd43c65.zip/node_modules/lru_map/",\ + "packageDependencies": [\ + ["lru_map", "npm:0.3.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["make-fetch-happen", [\ ["npm:10.2.1", {\ "packageLocation": "./.yarn/cache/make-fetch-happen-npm-10.2.1-f1cc7cd2df-2332eb9a8e.zip/node_modules/make-fetch-happen/",\ @@ -4989,6 +5494,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["mkdirp", [\ + ["npm:0.5.6", {\ + "packageLocation": "./.yarn/cache/mkdirp-npm-0.5.6-dcd5a6b97b-0c91b721bb.zip/node_modules/mkdirp/",\ + "packageDependencies": [\ + ["mkdirp", "npm:0.5.6"],\ + ["minimist", "npm:1.2.7"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:1.0.4", {\ "packageLocation": "./.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-a96865108c.zip/node_modules/mkdirp/",\ "packageDependencies": [\ @@ -5020,6 +5533,18 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["mz", [\ + ["npm:2.7.0", {\ + "packageLocation": "./.yarn/cache/mz-npm-2.7.0-ec3cef4ec2-8427de0ece.zip/node_modules/mz/",\ + "packageDependencies": [\ + ["mz", "npm:2.7.0"],\ + ["any-promise", "npm:1.3.0"],\ + ["object-assign", "npm:4.1.1"],\ + ["thenify-all", "npm:1.6.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["nan", [\ ["npm:2.17.0", {\ "packageLocation": "./.yarn/unplugged/nan-npm-2.17.0-bf36a21d6f/node_modules/nan/",\ @@ -5122,6 +5647,29 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["node-fetch", [\ + ["npm:2.6.7", {\ + "packageLocation": "./.yarn/cache/node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip/node_modules/node-fetch/",\ + "packageDependencies": [\ + ["node-fetch", "npm:2.6.7"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:11e655b3b18fc42f748e18c58023ec098038b688753d5feed37f47812eba5f10ef43c5ef8e9790efa865f43dd6ff4118ecfcbabb399095f9e39083b2080ff762#npm:2.6.7", {\ + "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-845ce42cc5/0/cache/node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip/node_modules/node-fetch/",\ + "packageDependencies": [\ + ["node-fetch", "virtual:11e655b3b18fc42f748e18c58023ec098038b688753d5feed37f47812eba5f10ef43c5ef8e9790efa865f43dd6ff4118ecfcbabb399095f9e39083b2080ff762#npm:2.6.7"],\ + ["@types/encoding", null],\ + ["encoding", null],\ + ["whatwg-url", "npm:5.0.0"]\ + ],\ + "packagePeers": [\ + "@types/encoding",\ + "encoding"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["node-gyp", [\ ["npm:9.3.0", {\ "packageLocation": "./.yarn/unplugged/node-gyp-npm-9.3.0-21c41a4dfd/node_modules/node-gyp/",\ @@ -5165,6 +5713,17 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["npmlog", [\ + ["npm:4.1.2", {\ + "packageLocation": "./.yarn/cache/npmlog-npm-4.1.2-cfb32957b5-edbda9f95e.zip/node_modules/npmlog/",\ + "packageDependencies": [\ + ["npmlog", "npm:4.1.2"],\ + ["are-we-there-yet", "npm:1.1.7"],\ + ["console-control-strings", "npm:1.1.0"],\ + ["gauge", "npm:2.7.4"],\ + ["set-blocking", "npm:2.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:6.0.2", {\ "packageLocation": "./.yarn/cache/npmlog-npm-6.0.2-e0e69455c7-ae238cd264.zip/node_modules/npmlog/",\ "packageDependencies": [\ @@ -5177,6 +5736,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["number-is-nan", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/number-is-nan-npm-1.0.1-845325a0fe-13656bc9aa.zip/node_modules/number-is-nan/",\ + "packageDependencies": [\ + ["number-is-nan", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["object-assign", [\ ["npm:4.1.1", {\ "packageLocation": "./.yarn/cache/object-assign-npm-4.1.1-1004ad6dec-fcc6e4ea8c.zip/node_modules/object-assign/",\ @@ -5474,6 +6042,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["pirates", [\ + ["npm:4.0.5", {\ + "packageLocation": "./.yarn/cache/pirates-npm-4.0.5-22f8e827ce-c9994e61b8.zip/node_modules/pirates/",\ + "packageDependencies": [\ + ["pirates", "npm:4.0.5"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["pluralize", [\ ["npm:8.0.0", {\ "packageLocation": "./.yarn/cache/pluralize-npm-8.0.0-f5f044ed52-08931d4a6a.zip/node_modules/pluralize/",\ @@ -5532,6 +6109,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["process-nextick-args", [\ + ["npm:2.0.1", {\ + "packageLocation": "./.yarn/cache/process-nextick-args-npm-2.0.1-b8d7971609-1d38588e52.zip/node_modules/process-nextick-args/",\ + "packageDependencies": [\ + ["process-nextick-args", "npm:2.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["progress", [\ + ["npm:2.0.3", {\ + "packageLocation": "./.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-f67403fe7b.zip/node_modules/progress/",\ + "packageDependencies": [\ + ["progress", "npm:2.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["promise-inflight", [\ ["npm:1.0.1", {\ "packageLocation": "./.yarn/cache/promise-inflight-npm-1.0.1-5bb925afac-2274948309.zip/node_modules/promise-inflight/",\ @@ -5599,6 +6194,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["proxy-from-env", [\ + ["npm:1.1.0", {\ + "packageLocation": "./.yarn/cache/proxy-from-env-npm-1.1.0-c13d07f26b-ed7fcc2ba0.zip/node_modules/proxy-from-env/",\ + "packageDependencies": [\ + ["proxy-from-env", "npm:1.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["punycode", [\ ["npm:2.1.1", {\ "packageLocation": "./.yarn/cache/punycode-npm-2.1.1-26eb3e15cf-823bf443c6.zip/node_modules/punycode/",\ @@ -5789,6 +6393,20 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["readable-stream", [\ + ["npm:2.3.7", {\ + "packageLocation": "./.yarn/cache/readable-stream-npm-2.3.7-77b22a9818-e4920cf754.zip/node_modules/readable-stream/",\ + "packageDependencies": [\ + ["readable-stream", "npm:2.3.7"],\ + ["core-util-is", "npm:1.0.3"],\ + ["inherits", "npm:2.0.4"],\ + ["isarray", "npm:1.0.0"],\ + ["process-nextick-args", "npm:2.0.1"],\ + ["safe-buffer", "npm:5.1.2"],\ + ["string_decoder", "npm:1.1.1"],\ + ["util-deprecate", "npm:1.0.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.6.0", {\ "packageLocation": "./.yarn/cache/readable-stream-npm-3.6.0-23a4a5eb56-d4ea81502d.zip/node_modules/readable-stream/",\ "packageDependencies": [\ @@ -5928,6 +6546,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["rollup", [\ + ["npm:2.78.0", {\ + "packageLocation": "./.yarn/cache/rollup-npm-2.78.0-09284f4c78-01b5a7ae08.zip/node_modules/rollup/",\ + "packageDependencies": [\ + ["rollup", "npm:2.78.0"],\ + ["fsevents", "patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["run-parallel", [\ ["npm:1.2.0", {\ "packageLocation": "./.yarn/cache/run-parallel-npm-1.2.0-3f47ff2034-cb4f97ad25.zip/node_modules/run-parallel/",\ @@ -5939,6 +6567,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["safe-buffer", [\ + ["npm:5.1.2", {\ + "packageLocation": "./.yarn/cache/safe-buffer-npm-5.1.2-c27fedf6c4-f2f1f7943c.zip/node_modules/safe-buffer/",\ + "packageDependencies": [\ + ["safe-buffer", "npm:5.1.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:5.2.1", {\ "packageLocation": "./.yarn/cache/safe-buffer-npm-5.2.1-3481c8aa9b-b99c4b41fd.zip/node_modules/safe-buffer/",\ "packageDependencies": [\ @@ -6252,6 +6887,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["string-width", [\ + ["npm:1.0.2", {\ + "packageLocation": "./.yarn/cache/string-width-npm-1.0.2-01031f9add-5c79439e95.zip/node_modules/string-width/",\ + "packageDependencies": [\ + ["string-width", "npm:1.0.2"],\ + ["code-point-at", "npm:1.1.0"],\ + ["is-fullwidth-code-point", "npm:1.0.0"],\ + ["strip-ansi", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:4.2.3", {\ "packageLocation": "./.yarn/cache/string-width-npm-4.2.3-2c27177bae-e52c10dc3f.zip/node_modules/string-width/",\ "packageDependencies": [\ @@ -6305,6 +6950,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["string_decoder", [\ + ["npm:1.1.1", {\ + "packageLocation": "./.yarn/cache/string_decoder-npm-1.1.1-e46a6c1353-9ab7e56f9d.zip/node_modules/string_decoder/",\ + "packageDependencies": [\ + ["string_decoder", "npm:1.1.1"],\ + ["safe-buffer", "npm:5.1.2"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:1.3.0", {\ "packageLocation": "./.yarn/cache/string_decoder-npm-1.3.0-2422117fd0-8417646695.zip/node_modules/string_decoder/",\ "packageDependencies": [\ @@ -6315,6 +6968,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["strip-ansi", [\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/strip-ansi-npm-3.0.1-6aec1365b9-9b974de611.zip/node_modules/strip-ansi/",\ + "packageDependencies": [\ + ["strip-ansi", "npm:3.0.1"],\ + ["ansi-regex", "npm:2.1.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:6.0.1", {\ "packageLocation": "./.yarn/cache/strip-ansi-npm-6.0.1-caddc7cb40-f3cd25890a.zip/node_modules/strip-ansi/",\ "packageDependencies": [\ @@ -6423,6 +7084,21 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["sucrase", [\ + ["npm:3.29.0", {\ + "packageLocation": "./.yarn/cache/sucrase-npm-3.29.0-9a73320e42-fc8f04c34f.zip/node_modules/sucrase/",\ + "packageDependencies": [\ + ["sucrase", "npm:3.29.0"],\ + ["commander", "npm:4.1.1"],\ + ["glob", "npm:7.1.6"],\ + ["lines-and-columns", "npm:1.2.4"],\ + ["mz", "npm:2.7.0"],\ + ["pirates", "npm:4.0.5"],\ + ["ts-interface-checker", "npm:0.1.13"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["supports-color", [\ ["npm:5.5.0", {\ "packageLocation": "./.yarn/cache/supports-color-npm-5.5.0-183ac537bc-95f6f4ba5a.zip/node_modules/supports-color/",\ @@ -6494,6 +7170,26 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["thenify", [\ + ["npm:3.3.1", {\ + "packageLocation": "./.yarn/cache/thenify-npm-3.3.1-030bedb22c-84e1b804bf.zip/node_modules/thenify/",\ + "packageDependencies": [\ + ["thenify", "npm:3.3.1"],\ + ["any-promise", "npm:1.3.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["thenify-all", [\ + ["npm:1.6.0", {\ + "packageLocation": "./.yarn/cache/thenify-all-npm-1.6.0-96309bbc8b-dba7cc8a23.zip/node_modules/thenify-all/",\ + "packageDependencies": [\ + ["thenify-all", "npm:1.6.0"],\ + ["thenify", "npm:3.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tiny-glob", [\ ["npm:0.2.9", {\ "packageLocation": "./.yarn/cache/tiny-glob-npm-0.2.9-068f4ab3f8-aea5801eb6.zip/node_modules/tiny-glob/",\ @@ -6539,6 +7235,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["tr46", [\ + ["npm:0.0.3", {\ + "packageLocation": "./.yarn/cache/tr46-npm-0.0.3-de53018915-726321c5ea.zip/node_modules/tr46/",\ + "packageDependencies": [\ + ["tr46", "npm:0.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["ts-interface-checker", [\ + ["npm:0.1.13", {\ + "packageLocation": "./.yarn/cache/ts-interface-checker-npm-0.1.13-0c7b064494-20c29189c2.zip/node_modules/ts-interface-checker/",\ + "packageDependencies": [\ + ["ts-interface-checker", "npm:0.1.13"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tsconfig-paths", [\ ["npm:3.14.1", {\ "packageLocation": "./.yarn/cache/tsconfig-paths-npm-3.14.1-17a815b5c5-8afa01c673.zip/node_modules/tsconfig-paths/",\ @@ -6779,6 +7493,35 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["webidl-conversions", [\ + ["npm:3.0.1", {\ + "packageLocation": "./.yarn/cache/webidl-conversions-npm-3.0.1-60310f6a2b-c92a0a6ab9.zip/node_modules/webidl-conversions/",\ + "packageDependencies": [\ + ["webidl-conversions", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["webpack-sources", [\ + ["npm:3.2.3", {\ + "packageLocation": "./.yarn/cache/webpack-sources-npm-3.2.3-6bfb5d9563-989e401b9f.zip/node_modules/webpack-sources/",\ + "packageDependencies": [\ + ["webpack-sources", "npm:3.2.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["whatwg-url", [\ + ["npm:5.0.0", {\ + "packageLocation": "./.yarn/cache/whatwg-url-npm-5.0.0-374fb45e60-b8daed4ad3.zip/node_modules/whatwg-url/",\ + "packageDependencies": [\ + ["whatwg-url", "npm:5.0.0"],\ + ["tr46", "npm:0.0.3"],\ + ["webidl-conversions", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["which", [\ ["npm:2.0.2", {\ "packageLocation": "./.yarn/cache/which-npm-2.0.2-320ddf72f7-1a5c563d3c.zip/node_modules/which/",\ diff --git a/.yarn/cache/@amplitude-analytics-browser-npm-1.6.6-d1c69ae672-a43eb0dab5.zip b/.yarn/cache/@amplitude-analytics-browser-npm-1.6.6-d1c69ae672-a43eb0dab5.zip new file mode 100644 index 0000000..0491426 Binary files /dev/null and b/.yarn/cache/@amplitude-analytics-browser-npm-1.6.6-d1c69ae672-a43eb0dab5.zip differ diff --git a/.yarn/cache/@amplitude-analytics-client-common-npm-0.5.0-07e963d4fd-eebf391f64.zip b/.yarn/cache/@amplitude-analytics-client-common-npm-0.5.0-07e963d4fd-eebf391f64.zip new file mode 100644 index 0000000..03af910 Binary files /dev/null and b/.yarn/cache/@amplitude-analytics-client-common-npm-0.5.0-07e963d4fd-eebf391f64.zip differ diff --git a/.yarn/cache/@amplitude-analytics-connector-npm-1.4.6-d9e949e37c-0a2acfa54e.zip b/.yarn/cache/@amplitude-analytics-connector-npm-1.4.6-d9e949e37c-0a2acfa54e.zip new file mode 100644 index 0000000..c3dff62 Binary files /dev/null and b/.yarn/cache/@amplitude-analytics-connector-npm-1.4.6-d9e949e37c-0a2acfa54e.zip differ diff --git a/.yarn/cache/@amplitude-analytics-core-npm-0.11.0-e8af53e9ab-be98d2614b.zip b/.yarn/cache/@amplitude-analytics-core-npm-0.11.0-e8af53e9ab-be98d2614b.zip new file mode 100644 index 0000000..95d2f09 Binary files /dev/null and b/.yarn/cache/@amplitude-analytics-core-npm-0.11.0-e8af53e9ab-be98d2614b.zip differ diff --git a/.yarn/cache/@amplitude-analytics-types-npm-0.14.0-7b5c807dc5-23972f7869.zip b/.yarn/cache/@amplitude-analytics-types-npm-0.14.0-7b5c807dc5-23972f7869.zip new file mode 100644 index 0000000..265c961 Binary files /dev/null and b/.yarn/cache/@amplitude-analytics-types-npm-0.14.0-7b5c807dc5-23972f7869.zip differ diff --git a/.yarn/cache/@amplitude-ua-parser-js-npm-0.7.31-540ed0892d-c72e7c8656.zip b/.yarn/cache/@amplitude-ua-parser-js-npm-0.7.31-540ed0892d-c72e7c8656.zip new file mode 100644 index 0000000..e326ab5 Binary files /dev/null and b/.yarn/cache/@amplitude-ua-parser-js-npm-0.7.31-540ed0892d-c72e7c8656.zip differ diff --git a/.yarn/cache/@rollup-plugin-sucrase-npm-4.0.4-11cf77c62a-ccb01d7eb3.zip b/.yarn/cache/@rollup-plugin-sucrase-npm-4.0.4-11cf77c62a-ccb01d7eb3.zip new file mode 100644 index 0000000..a3322e0 Binary files /dev/null and b/.yarn/cache/@rollup-plugin-sucrase-npm-4.0.4-11cf77c62a-ccb01d7eb3.zip differ diff --git a/.yarn/cache/@rollup-plugin-virtual-npm-3.0.0-678cdc8578-2335cabee2.zip b/.yarn/cache/@rollup-plugin-virtual-npm-3.0.0-678cdc8578-2335cabee2.zip new file mode 100644 index 0000000..4956ce3 Binary files /dev/null and b/.yarn/cache/@rollup-plugin-virtual-npm-3.0.0-678cdc8578-2335cabee2.zip differ diff --git a/.yarn/cache/@rollup-pluginutils-npm-4.2.1-0f52a5eba2-6bc41f22b1.zip b/.yarn/cache/@rollup-pluginutils-npm-4.2.1-0f52a5eba2-6bc41f22b1.zip new file mode 100644 index 0000000..8fefbb2 Binary files /dev/null and b/.yarn/cache/@rollup-pluginutils-npm-4.2.1-0f52a5eba2-6bc41f22b1.zip differ diff --git a/.yarn/cache/@sentry-browser-npm-7.27.0-21601bd9f9-da5e50bd57.zip b/.yarn/cache/@sentry-browser-npm-7.27.0-21601bd9f9-da5e50bd57.zip new file mode 100644 index 0000000..a86924c Binary files /dev/null and b/.yarn/cache/@sentry-browser-npm-7.27.0-21601bd9f9-da5e50bd57.zip differ diff --git a/.yarn/cache/@sentry-cli-npm-1.74.6-11e655b3b1-3d1ef94d55.zip b/.yarn/cache/@sentry-cli-npm-1.74.6-11e655b3b1-3d1ef94d55.zip new file mode 100644 index 0000000..25ac4fb Binary files /dev/null and b/.yarn/cache/@sentry-cli-npm-1.74.6-11e655b3b1-3d1ef94d55.zip differ diff --git a/.yarn/cache/@sentry-core-npm-7.27.0-72a2ae90aa-36138a8f43.zip b/.yarn/cache/@sentry-core-npm-7.27.0-72a2ae90aa-36138a8f43.zip new file mode 100644 index 0000000..4ca6005 Binary files /dev/null and b/.yarn/cache/@sentry-core-npm-7.27.0-72a2ae90aa-36138a8f43.zip differ diff --git a/.yarn/cache/@sentry-integrations-npm-7.27.0-b9d35a9a46-26cc2a10a4.zip b/.yarn/cache/@sentry-integrations-npm-7.27.0-b9d35a9a46-26cc2a10a4.zip new file mode 100644 index 0000000..1fe992f Binary files /dev/null and b/.yarn/cache/@sentry-integrations-npm-7.27.0-b9d35a9a46-26cc2a10a4.zip differ diff --git a/.yarn/cache/@sentry-nextjs-npm-7.27.0-1e548cf282-fdc0ba40b4.zip b/.yarn/cache/@sentry-nextjs-npm-7.27.0-1e548cf282-fdc0ba40b4.zip new file mode 100644 index 0000000..cf571be Binary files /dev/null and b/.yarn/cache/@sentry-nextjs-npm-7.27.0-1e548cf282-fdc0ba40b4.zip differ diff --git a/.yarn/cache/@sentry-node-npm-7.27.0-f1028265b5-a42cb398ed.zip b/.yarn/cache/@sentry-node-npm-7.27.0-f1028265b5-a42cb398ed.zip new file mode 100644 index 0000000..8930fe7 Binary files /dev/null and b/.yarn/cache/@sentry-node-npm-7.27.0-f1028265b5-a42cb398ed.zip differ diff --git a/.yarn/cache/@sentry-react-npm-7.27.0-17a03112ea-164cefe9ef.zip b/.yarn/cache/@sentry-react-npm-7.27.0-17a03112ea-164cefe9ef.zip new file mode 100644 index 0000000..57606eb Binary files /dev/null and b/.yarn/cache/@sentry-react-npm-7.27.0-17a03112ea-164cefe9ef.zip differ diff --git a/.yarn/cache/@sentry-replay-npm-7.27.0-18656992dc-440ac09c9a.zip b/.yarn/cache/@sentry-replay-npm-7.27.0-18656992dc-440ac09c9a.zip new file mode 100644 index 0000000..f9b74ce Binary files /dev/null and b/.yarn/cache/@sentry-replay-npm-7.27.0-18656992dc-440ac09c9a.zip differ diff --git a/.yarn/cache/@sentry-tracing-npm-7.27.0-7d217c54fa-203a3a6b46.zip b/.yarn/cache/@sentry-tracing-npm-7.27.0-7d217c54fa-203a3a6b46.zip new file mode 100644 index 0000000..df46d52 Binary files /dev/null and b/.yarn/cache/@sentry-tracing-npm-7.27.0-7d217c54fa-203a3a6b46.zip differ diff --git a/.yarn/cache/@sentry-types-npm-7.27.0-67702fc3e1-a22056aa58.zip b/.yarn/cache/@sentry-types-npm-7.27.0-67702fc3e1-a22056aa58.zip new file mode 100644 index 0000000..5b44e16 Binary files /dev/null and b/.yarn/cache/@sentry-types-npm-7.27.0-67702fc3e1-a22056aa58.zip differ diff --git a/.yarn/cache/@sentry-utils-npm-7.27.0-1935a93244-d01f2d1999.zip b/.yarn/cache/@sentry-utils-npm-7.27.0-1935a93244-d01f2d1999.zip new file mode 100644 index 0000000..784f089 Binary files /dev/null and b/.yarn/cache/@sentry-utils-npm-7.27.0-1935a93244-d01f2d1999.zip differ diff --git a/.yarn/cache/@sentry-webpack-plugin-npm-1.20.0-9eeec4f0d8-d582026c36.zip b/.yarn/cache/@sentry-webpack-plugin-npm-1.20.0-9eeec4f0d8-d582026c36.zip new file mode 100644 index 0000000..edba2f2 Binary files /dev/null and b/.yarn/cache/@sentry-webpack-plugin-npm-1.20.0-9eeec4f0d8-d582026c36.zip differ diff --git a/.yarn/cache/ansi-regex-npm-2.1.1-ddd24d102b-190abd03e4.zip b/.yarn/cache/ansi-regex-npm-2.1.1-ddd24d102b-190abd03e4.zip new file mode 100644 index 0000000..39b4640 Binary files /dev/null and b/.yarn/cache/ansi-regex-npm-2.1.1-ddd24d102b-190abd03e4.zip differ diff --git a/.yarn/cache/any-promise-npm-1.3.0-f34eeaa7e7-0ee8a9bdbe.zip b/.yarn/cache/any-promise-npm-1.3.0-f34eeaa7e7-0ee8a9bdbe.zip new file mode 100644 index 0000000..2f709d5 Binary files /dev/null and b/.yarn/cache/any-promise-npm-1.3.0-f34eeaa7e7-0ee8a9bdbe.zip differ diff --git a/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip b/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip new file mode 100644 index 0000000..87d8517 Binary files /dev/null and b/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip differ diff --git a/.yarn/cache/are-we-there-yet-npm-1.1.7-db9f39924e-70d251719c.zip b/.yarn/cache/are-we-there-yet-npm-1.1.7-db9f39924e-70d251719c.zip new file mode 100644 index 0000000..464871d Binary files /dev/null and b/.yarn/cache/are-we-there-yet-npm-1.1.7-db9f39924e-70d251719c.zip differ diff --git a/.yarn/cache/chalk-npm-3.0.0-e813208025-8e3ddf3981.zip b/.yarn/cache/chalk-npm-3.0.0-e813208025-8e3ddf3981.zip new file mode 100644 index 0000000..47b36c7 Binary files /dev/null and b/.yarn/cache/chalk-npm-3.0.0-e813208025-8e3ddf3981.zip differ diff --git a/.yarn/cache/code-point-at-npm-1.1.0-37de5fe566-17d5666611.zip b/.yarn/cache/code-point-at-npm-1.1.0-37de5fe566-17d5666611.zip new file mode 100644 index 0000000..5e910b2 Binary files /dev/null and b/.yarn/cache/code-point-at-npm-1.1.0-37de5fe566-17d5666611.zip differ diff --git a/.yarn/cache/commander-npm-4.1.1-22a0fe921b-d7b9913ff9.zip b/.yarn/cache/commander-npm-4.1.1-22a0fe921b-d7b9913ff9.zip new file mode 100644 index 0000000..0e48a7d Binary files /dev/null and b/.yarn/cache/commander-npm-4.1.1-22a0fe921b-d7b9913ff9.zip differ diff --git a/.yarn/cache/cookie-npm-0.4.2-7761894d5f-a00833c998.zip b/.yarn/cache/cookie-npm-0.4.2-7761894d5f-a00833c998.zip new file mode 100644 index 0000000..2a47844 Binary files /dev/null and b/.yarn/cache/cookie-npm-0.4.2-7761894d5f-a00833c998.zip differ diff --git a/.yarn/cache/core-util-is-npm-1.0.3-ca74b76c90-9de8597363.zip b/.yarn/cache/core-util-is-npm-1.0.3-ca74b76c90-9de8597363.zip new file mode 100644 index 0000000..2c844fe Binary files /dev/null and b/.yarn/cache/core-util-is-npm-1.0.3-ca74b76c90-9de8597363.zip differ diff --git a/.yarn/cache/estree-walker-npm-2.0.2-dfab42f65c-6151e6f982.zip b/.yarn/cache/estree-walker-npm-2.0.2-dfab42f65c-6151e6f982.zip new file mode 100644 index 0000000..71b90a2 Binary files /dev/null and b/.yarn/cache/estree-walker-npm-2.0.2-dfab42f65c-6151e6f982.zip differ diff --git a/.yarn/cache/fsevents-npm-2.3.2-a881d6ac9f-97ade64e75.zip b/.yarn/cache/fsevents-npm-2.3.2-a881d6ac9f-97ade64e75.zip new file mode 100644 index 0000000..204c8e4 Binary files /dev/null and b/.yarn/cache/fsevents-npm-2.3.2-a881d6ac9f-97ade64e75.zip differ diff --git a/.yarn/cache/fsevents-patch-2882183fbf-8.zip b/.yarn/cache/fsevents-patch-2882183fbf-8.zip new file mode 100644 index 0000000..c4511f1 Binary files /dev/null and b/.yarn/cache/fsevents-patch-2882183fbf-8.zip differ diff --git a/.yarn/cache/gauge-npm-2.7.4-2189a73529-a89b53cee6.zip b/.yarn/cache/gauge-npm-2.7.4-2189a73529-a89b53cee6.zip new file mode 100644 index 0000000..6d86f11 Binary files /dev/null and b/.yarn/cache/gauge-npm-2.7.4-2189a73529-a89b53cee6.zip differ diff --git a/.yarn/cache/glob-npm-7.1.6-1ce3a5189a-351d549dd9.zip b/.yarn/cache/glob-npm-7.1.6-1ce3a5189a-351d549dd9.zip new file mode 100644 index 0000000..a696eeb Binary files /dev/null and b/.yarn/cache/glob-npm-7.1.6-1ce3a5189a-351d549dd9.zip differ diff --git a/.yarn/cache/immediate-npm-3.0.6-c27588a2d3-f9b3486477.zip b/.yarn/cache/immediate-npm-3.0.6-c27588a2d3-f9b3486477.zip new file mode 100644 index 0000000..d3f7498 Binary files /dev/null and b/.yarn/cache/immediate-npm-3.0.6-c27588a2d3-f9b3486477.zip differ diff --git a/.yarn/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-4d46a7465a.zip b/.yarn/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-4d46a7465a.zip new file mode 100644 index 0000000..6d63e1f Binary files /dev/null and b/.yarn/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-4d46a7465a.zip differ diff --git a/.yarn/cache/lie-npm-3.1.1-91350720d9-6da9f2121d.zip b/.yarn/cache/lie-npm-3.1.1-91350720d9-6da9f2121d.zip new file mode 100644 index 0000000..dfbd485 Binary files /dev/null and b/.yarn/cache/lie-npm-3.1.1-91350720d9-6da9f2121d.zip differ diff --git a/.yarn/cache/localforage-npm-1.10.0-cf9ea9a436-f2978b434d.zip b/.yarn/cache/localforage-npm-1.10.0-cf9ea9a436-f2978b434d.zip new file mode 100644 index 0000000..b9f85f7 Binary files /dev/null and b/.yarn/cache/localforage-npm-1.10.0-cf9ea9a436-f2978b434d.zip differ diff --git a/.yarn/cache/lru_map-npm-0.3.3-a038bb3418-ca9dd43c65.zip b/.yarn/cache/lru_map-npm-0.3.3-a038bb3418-ca9dd43c65.zip new file mode 100644 index 0000000..7cf30eb Binary files /dev/null and b/.yarn/cache/lru_map-npm-0.3.3-a038bb3418-ca9dd43c65.zip differ diff --git a/.yarn/cache/mkdirp-npm-0.5.6-dcd5a6b97b-0c91b721bb.zip b/.yarn/cache/mkdirp-npm-0.5.6-dcd5a6b97b-0c91b721bb.zip new file mode 100644 index 0000000..7a69bc7 Binary files /dev/null and b/.yarn/cache/mkdirp-npm-0.5.6-dcd5a6b97b-0c91b721bb.zip differ diff --git a/.yarn/cache/mz-npm-2.7.0-ec3cef4ec2-8427de0ece.zip b/.yarn/cache/mz-npm-2.7.0-ec3cef4ec2-8427de0ece.zip new file mode 100644 index 0000000..faf79ca Binary files /dev/null and b/.yarn/cache/mz-npm-2.7.0-ec3cef4ec2-8427de0ece.zip differ diff --git a/.yarn/cache/node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip b/.yarn/cache/node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip new file mode 100644 index 0000000..db222e2 Binary files /dev/null and b/.yarn/cache/node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip differ diff --git a/.yarn/cache/npmlog-npm-4.1.2-cfb32957b5-edbda9f95e.zip b/.yarn/cache/npmlog-npm-4.1.2-cfb32957b5-edbda9f95e.zip new file mode 100644 index 0000000..15a8695 Binary files /dev/null and b/.yarn/cache/npmlog-npm-4.1.2-cfb32957b5-edbda9f95e.zip differ diff --git a/.yarn/cache/number-is-nan-npm-1.0.1-845325a0fe-13656bc9aa.zip b/.yarn/cache/number-is-nan-npm-1.0.1-845325a0fe-13656bc9aa.zip new file mode 100644 index 0000000..4ef9a25 Binary files /dev/null and b/.yarn/cache/number-is-nan-npm-1.0.1-845325a0fe-13656bc9aa.zip differ diff --git a/.yarn/cache/pirates-npm-4.0.5-22f8e827ce-c9994e61b8.zip b/.yarn/cache/pirates-npm-4.0.5-22f8e827ce-c9994e61b8.zip new file mode 100644 index 0000000..f6b2634 Binary files /dev/null and b/.yarn/cache/pirates-npm-4.0.5-22f8e827ce-c9994e61b8.zip differ diff --git a/.yarn/cache/process-nextick-args-npm-2.0.1-b8d7971609-1d38588e52.zip b/.yarn/cache/process-nextick-args-npm-2.0.1-b8d7971609-1d38588e52.zip new file mode 100644 index 0000000..33fadfd Binary files /dev/null and b/.yarn/cache/process-nextick-args-npm-2.0.1-b8d7971609-1d38588e52.zip differ diff --git a/.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-f67403fe7b.zip b/.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-f67403fe7b.zip new file mode 100644 index 0000000..0585bd0 Binary files /dev/null and b/.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-f67403fe7b.zip differ diff --git a/.yarn/cache/proxy-from-env-npm-1.1.0-c13d07f26b-ed7fcc2ba0.zip b/.yarn/cache/proxy-from-env-npm-1.1.0-c13d07f26b-ed7fcc2ba0.zip new file mode 100644 index 0000000..a58e6bf Binary files /dev/null and b/.yarn/cache/proxy-from-env-npm-1.1.0-c13d07f26b-ed7fcc2ba0.zip differ diff --git a/.yarn/cache/readable-stream-npm-2.3.7-77b22a9818-e4920cf754.zip b/.yarn/cache/readable-stream-npm-2.3.7-77b22a9818-e4920cf754.zip new file mode 100644 index 0000000..eb8e6e0 Binary files /dev/null and b/.yarn/cache/readable-stream-npm-2.3.7-77b22a9818-e4920cf754.zip differ diff --git a/.yarn/cache/rollup-npm-2.78.0-09284f4c78-01b5a7ae08.zip b/.yarn/cache/rollup-npm-2.78.0-09284f4c78-01b5a7ae08.zip new file mode 100644 index 0000000..f83a642 Binary files /dev/null and b/.yarn/cache/rollup-npm-2.78.0-09284f4c78-01b5a7ae08.zip differ diff --git a/.yarn/cache/safe-buffer-npm-5.1.2-c27fedf6c4-f2f1f7943c.zip b/.yarn/cache/safe-buffer-npm-5.1.2-c27fedf6c4-f2f1f7943c.zip new file mode 100644 index 0000000..53c2813 Binary files /dev/null and b/.yarn/cache/safe-buffer-npm-5.1.2-c27fedf6c4-f2f1f7943c.zip differ diff --git a/.yarn/cache/string-width-npm-1.0.2-01031f9add-5c79439e95.zip b/.yarn/cache/string-width-npm-1.0.2-01031f9add-5c79439e95.zip new file mode 100644 index 0000000..a138422 Binary files /dev/null and b/.yarn/cache/string-width-npm-1.0.2-01031f9add-5c79439e95.zip differ diff --git a/.yarn/cache/string_decoder-npm-1.1.1-e46a6c1353-9ab7e56f9d.zip b/.yarn/cache/string_decoder-npm-1.1.1-e46a6c1353-9ab7e56f9d.zip new file mode 100644 index 0000000..8f86a62 Binary files /dev/null and b/.yarn/cache/string_decoder-npm-1.1.1-e46a6c1353-9ab7e56f9d.zip differ diff --git a/.yarn/cache/strip-ansi-npm-3.0.1-6aec1365b9-9b974de611.zip b/.yarn/cache/strip-ansi-npm-3.0.1-6aec1365b9-9b974de611.zip new file mode 100644 index 0000000..a1c9f6a Binary files /dev/null and b/.yarn/cache/strip-ansi-npm-3.0.1-6aec1365b9-9b974de611.zip differ diff --git a/.yarn/cache/sucrase-npm-3.29.0-9a73320e42-fc8f04c34f.zip b/.yarn/cache/sucrase-npm-3.29.0-9a73320e42-fc8f04c34f.zip new file mode 100644 index 0000000..3a95cd0 Binary files /dev/null and b/.yarn/cache/sucrase-npm-3.29.0-9a73320e42-fc8f04c34f.zip differ diff --git a/.yarn/cache/thenify-all-npm-1.6.0-96309bbc8b-dba7cc8a23.zip b/.yarn/cache/thenify-all-npm-1.6.0-96309bbc8b-dba7cc8a23.zip new file mode 100644 index 0000000..59a2bc6 Binary files /dev/null and b/.yarn/cache/thenify-all-npm-1.6.0-96309bbc8b-dba7cc8a23.zip differ diff --git a/.yarn/cache/thenify-npm-3.3.1-030bedb22c-84e1b804bf.zip b/.yarn/cache/thenify-npm-3.3.1-030bedb22c-84e1b804bf.zip new file mode 100644 index 0000000..4710c40 Binary files /dev/null and b/.yarn/cache/thenify-npm-3.3.1-030bedb22c-84e1b804bf.zip differ diff --git a/.yarn/cache/tr46-npm-0.0.3-de53018915-726321c5ea.zip b/.yarn/cache/tr46-npm-0.0.3-de53018915-726321c5ea.zip new file mode 100644 index 0000000..2e6949b Binary files /dev/null and b/.yarn/cache/tr46-npm-0.0.3-de53018915-726321c5ea.zip differ diff --git a/.yarn/cache/ts-interface-checker-npm-0.1.13-0c7b064494-20c29189c2.zip b/.yarn/cache/ts-interface-checker-npm-0.1.13-0c7b064494-20c29189c2.zip new file mode 100644 index 0000000..db41941 Binary files /dev/null and b/.yarn/cache/ts-interface-checker-npm-0.1.13-0c7b064494-20c29189c2.zip differ diff --git a/.yarn/cache/webidl-conversions-npm-3.0.1-60310f6a2b-c92a0a6ab9.zip b/.yarn/cache/webidl-conversions-npm-3.0.1-60310f6a2b-c92a0a6ab9.zip new file mode 100644 index 0000000..96867a6 Binary files /dev/null and b/.yarn/cache/webidl-conversions-npm-3.0.1-60310f6a2b-c92a0a6ab9.zip differ diff --git a/.yarn/cache/webpack-sources-npm-3.2.3-6bfb5d9563-989e401b9f.zip b/.yarn/cache/webpack-sources-npm-3.2.3-6bfb5d9563-989e401b9f.zip new file mode 100644 index 0000000..8412c75 Binary files /dev/null and b/.yarn/cache/webpack-sources-npm-3.2.3-6bfb5d9563-989e401b9f.zip differ diff --git a/.yarn/cache/whatwg-url-npm-5.0.0-374fb45e60-b8daed4ad3.zip b/.yarn/cache/whatwg-url-npm-5.0.0-374fb45e60-b8daed4ad3.zip new file mode 100644 index 0000000..5deef33 Binary files /dev/null and b/.yarn/cache/whatwg-url-npm-5.0.0-374fb45e60-b8daed4ad3.zip differ diff --git a/components/chain-list/all-chains-item.tsx b/components/chain-list/all-chains-item.tsx index d2e8c93..890b882 100644 --- a/components/chain-list/all-chains-item.tsx +++ b/components/chain-list/all-chains-item.tsx @@ -1,10 +1,15 @@ import { ChainItemType } from "../../types"; -import { Dispatch, FunctionComponent, SetStateAction } from "react"; +import { + Dispatch, + FunctionComponent, + SetStateAction, + useEffect, + useState, +} from "react"; import { ChainImage } from "./chain-image"; import { Flex1 } from "../../styles/flex-1"; import { - ChainImageContainer, ChainInfoContainer, ChainItemContainer, ChainName, @@ -13,43 +18,54 @@ import { import color from "../../styles/color"; import styled from "styled-components"; import { Checkbox } from "../checkbox"; +import AllChainsIcon from "../../public/images/svg/all-chains-icon.svg"; interface Props { - allChecked: boolean; - setAllChecked: Dispatch>; - chainItem: ChainItemType; + chainList: ChainItemType[]; + checkedItems: Set; + setCheckedItems: Dispatch>>; } export const AllChainsItem: FunctionComponent = (props) => { - const { allChecked, setAllChecked, chainItem } = props; + const { chainList, checkedItems, setCheckedItems } = props; + + const [checked, setChecked] = useState(false); const checkHandler = () => { - setAllChecked(!allChecked); + if (checked) { + setCheckedItems(new Set()); + } else if (chainList.length !== checkedItems.size) { + setCheckedItems(new Set(chainList)); + } }; + useEffect(() => { + if (chainList.length === checkedItems.size && checkedItems.size !== 0) { + setChecked(true); + } else { + setChecked(false); + } + }, [checkedItems]); + return ( - - - + - {`.${chainItem.prefix}`} - {chainItem.address} + {`.all chains(${chainList.length})`} + + {chainList.map((chain) => chain.chainName).join(", ")} + - + ); diff --git a/components/chain-list/chain-image.tsx b/components/chain-list/chain-image.tsx index fab6dfe..88939c8 100644 --- a/components/chain-list/chain-image.tsx +++ b/components/chain-list/chain-image.tsx @@ -1,7 +1,7 @@ import { useState } from "react"; import Image, { ImageProps } from "next/image"; -import KeplrIcon from "../../public/images/svg/keplr-icon.svg"; +import ICNSLogo from "../../public/images/icns-logo-120x120.png"; import styled from "styled-components"; export const ChainImage = ({ src, ...props }: ImageProps) => { @@ -14,13 +14,17 @@ export const ChainImage = ({ src, ...props }: ImageProps) => { src={srcState} alt="chain image" sizes="3rem" - onError={() => setSrcState(KeplrIcon)} + onError={() => setSrcState(ICNSLogo)} /> ); }; const ImageWrapper = styled.div` + position: relative; + width: 3rem; + height: 3rem; + img { border-radius: 50%; } diff --git a/components/chain-list/chain-item.tsx b/components/chain-list/chain-item.tsx index c572151..317f319 100644 --- a/components/chain-list/chain-item.tsx +++ b/components/chain-list/chain-item.tsx @@ -1,4 +1,4 @@ -import { ChainItemType, WidthHeightProps } from "../../types"; +import { ChainItemType } from "../../types"; import { FunctionComponent, useEffect, useState } from "react"; import color from "../../styles/color"; @@ -39,13 +39,11 @@ export const ChainItem: FunctionComponent = (props) => { checked={checked} onClick={checkHandler} > - - - + {`.${chainItem.prefix}`} {chainItem.address} @@ -90,13 +88,6 @@ export const ChainItemContainer = styled.div<{ } `; -export const ChainImageContainer = styled.div` - width: ${(props) => props.width}; - height: ${(props) => props.height}; - - position: relative; -`; - export const ChainInfoContainer = styled.div` display: flex; flex-direction: column; diff --git a/components/chain-list/chain-list.tsx b/components/chain-list/chain-list.tsx index 9796425..805b241 100644 --- a/components/chain-list/chain-list.tsx +++ b/components/chain-list/chain-list.tsx @@ -5,8 +5,6 @@ import styled from "styled-components"; import { ChainItem } from "./chain-item"; interface Props { - allChecked: boolean; - setAllChecked: Dispatch>; chainList: ChainItemType[]; disabledChainList: ChainItemType[]; checkedItems: Set; @@ -14,14 +12,7 @@ interface Props { } export const ChainList: FunctionComponent = (props) => { - const { - allChecked, - setAllChecked, - chainList, - disabledChainList, - checkedItems, - setCheckedItems, - } = props; + const { chainList, disabledChainList, checkedItems, setCheckedItems } = props; const checkedItemHandler = (chainItem: ChainItemType, isChecked: boolean) => { const tempSet = new Set(checkedItems); @@ -35,22 +26,6 @@ export const ChainList: FunctionComponent = (props) => { setCheckedItems(tempSet); }; - useEffect(() => { - if (allChecked) { - setCheckedItems(new Set(chainList)); - } else if (chainList.length === checkedItems.size) { - setCheckedItems(new Set()); - } - }, [allChecked]); - - useEffect(() => { - if (chainList.length === checkedItems.size && checkedItems.size !== 0) { - setAllChecked(true); - } else { - setAllChecked(false); - } - }, [checkedItems]); - return ( {chainList.map((chainItem) => ( diff --git a/components/connect-wallet-modal/index.tsx b/components/connect-wallet-modal/index.ts similarity index 100% rename from components/connect-wallet-modal/index.tsx rename to components/connect-wallet-modal/index.ts diff --git a/components/error-boundary/index.tsx b/components/error-boundary/index.tsx index 1ab6185..8bf403e 100644 --- a/components/error-boundary/index.tsx +++ b/components/error-boundary/index.tsx @@ -1,5 +1,6 @@ +import { captureException } from "@sentry/nextjs"; import Link from "next/link"; -import React, { Component, ErrorInfo, ReactNode } from "react"; +import { Component, ErrorInfo, ReactNode } from "react"; interface Props { children?: ReactNode; @@ -21,6 +22,8 @@ class ErrorBoundary extends Component { public componentDidCatch(error: Error, errorInfo: ErrorInfo) { console.error("Uncaught error:", error, errorInfo); + + captureException(error); } public render() { diff --git a/components/final-check-modal/index.tsx b/components/final-check-modal/index.tsx new file mode 100644 index 0000000..d012fe4 --- /dev/null +++ b/components/final-check-modal/index.tsx @@ -0,0 +1,196 @@ +import { FunctionComponent } from "react"; +import color from "../../styles/color"; +import ReactModal from "react-modal"; +import styled from "styled-components"; +import TwitterIcon from "../../public/images/svg/twitter-modal-icon.svg"; +import Image from "next/image"; +import { PrimaryButton } from "../primary-button"; +import { SecondaryButton } from "../secondary-button"; +import { MINIMUM_OSMO_FEE } from "../../constants/wallet"; +import { useRouter } from "next/router"; + +interface Props { + twitterUserName: string | undefined; + walletInfo: + | { name: string; pubKey: Uint8Array; bech32Address: string } + | undefined; + isModalOpen: boolean; + onCloseModal: () => void; + onClickRegisterButton: () => Promise; +} + +export const FinalCheckModal: FunctionComponent = (props) => { + const { + twitterUserName, + walletInfo, + isModalOpen, + onCloseModal, + onClickRegisterButton, + } = props; + const router = useRouter(); + + return ( + + + Final Checks + You are claiming the ICNS name + + {twitterUserName} + + twitter icon + + + on + {walletInfo?.name} + ({walletInfo?.bech32Address}) + + + ☑️ ICNS name can only be claimed once per Twitter account. +
+ ☑️ ICNS name can’t be transferred at this time. +
+ ☑️ Please make sure you’ve selected the right account on your wallet. +
+ + + {MINIMUM_OSMO_FEE} will be spent as a + spam-prevention fee. + + + + { + await router.push("/"); + }} + > + Use a different account + + + + Register + + + +
+
+ ); +}; + +const ModalContainer = styled.div` + display: flex; + flex-direction: column; + gap: 0.625rem; + + width: 50rem; + + padding: 1.75rem 2rem; +`; + +const ModalTitle = styled.div` + font-family: "Inter", serif; + font-style: normal; + font-weight: 700; + font-size: 1.5rem; + line-height: 1.8rem; + + margin-bottom: 1rem; + + color: ${color.white}; +`; + +const ICNSNameContainer = styled.div` + display: flex; + flex-direction: row; + align-items: center; + + gap: 0.5rem; +`; + +const TwitterImageContainer = styled.div` + width: 2rem; + height: 2rem; + + margin-top: 0.4rem; + + position: relative; +`; + +const MainText = styled.div` + font-family: "Inter", serif; + font-style: normal; + font-weight: 600; + font-size: 1rem; + line-height: 1.2rem; + + color: ${color.white}; +`; + +const SubText = styled.div` + font-family: "Inter", serif; + font-style: normal; + font-weight: 500; + font-size: 1rem; + line-height: 1.5rem; + + color: ${color.grey["300"]}; +`; + +const SubBoldText = styled.span` + color: ${color.grey["100"]}; +`; + +const BoldText = styled.div` + font-family: "Inter", serif; + font-style: normal; + font-weight: 600; + font-size: 2rem; + line-height: 2.5rem; + + color: ${color.orange["50"]}; +`; + +const Divider = styled.div` + width: 100%; + + margin: 1.625rem 0; + + border: 0.5px solid ${color.grey["500"]}; +`; + +const ButtonContainer = styled.div` + display: flex; + flex-direction: row; + height: 3.5rem; + + margin-top: 2.5rem; + padding: 0 4.25rem; + + gap: 3.5rem; +`; + +const RegisterButton = styled.div` + width: 10rem; +`; diff --git a/components/primary-button/index.tsx b/components/primary-button/index.tsx new file mode 100644 index 0000000..45aa9f3 --- /dev/null +++ b/components/primary-button/index.tsx @@ -0,0 +1,110 @@ +import { ButtonHTMLAttributes, FunctionComponent } from "react"; +import styled, { keyframes } from "styled-components"; +import color from "../../styles/color"; + +interface PrimaryButtonProps extends ButtonHTMLAttributes { + isLoading?: boolean; +} + +export const PrimaryButton: FunctionComponent = ({ + children, + isLoading, + ...props +}) => { + return ( + + {isLoading ? ( + + + + + + + ) : ( + {children} + )} + + ); +}; + +const StyledPrimaryButton = styled.button` + display: flex; + align-items center; + justify-content: center; + width: 100%; + height: 100%; + + border: none; + + padding: 11px 30px; + + font-family: "Inter", serif; + font-style: normal; + font-weight: 600; + font-size: 1.25rem; + line-height: 1.25rem; + letter-spacing: 0.07em; + text-transform: uppercase; + + background-color: ${color.orange["100"]}; + + cursor: pointer; + + &:hover { + transition-duration: 0.5s; + background-color: ${color.orange["200"]}; + + span { + opacity: 0.5; + } + } + + &:disabled { + background-color: ${color.orange["300"]}; + + span { + opacity: 0.5; + } + } + + span { + transition-duration: 0.5s; + color: ${color.orange["50"]}; + } +`; + +const SpinnerWrapper = styled.div` + display: flex; + position: relative; + + width: 20px; + height: 20px; +`; + +const spinAnimation = keyframes` + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +`; + +const Spinner = styled.div<{ animationDelay?: string }>` + display: block; + position: absolute; + top: 0; + left: 0; + + width: 100%; + height: 100%; + + animation: ${spinAnimation} 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; + ${({ animationDelay }) => + animationDelay ? `animation-delay: ${animationDelay};` : ""} + + border-radius: 100%; + border-style: solid; + border-width: 3px; + border-color: white transparent transparent transparent; +`; diff --git a/components/primary-button/index.ts b/components/secondary-button/index.tsx similarity index 54% rename from components/primary-button/index.ts rename to components/secondary-button/index.tsx index a563ba4..3190f37 100644 --- a/components/primary-button/index.ts +++ b/components/secondary-button/index.tsx @@ -1,7 +1,7 @@ import styled from "styled-components"; import color from "../../styles/color"; -export const PrimaryButton = styled.button` +export const SecondaryButton = styled.button` width: 100%; height: 100%; @@ -17,19 +17,8 @@ export const PrimaryButton = styled.button` letter-spacing: 0.07em; text-transform: uppercase; - color: ${color.orange["50"]}; - background-color: ${color.orange["100"]}; + color: ${color.white}; + background-color: ${color.grey["300"]}; cursor: pointer; - - &:hover { - transition-duration: 0.5s; - background-color: ${color.orange["200"]}; - } - - &:disabled { - opacity: 0.5; - - background-color: ${color.orange["300"]}; - } `; diff --git a/components/skeleton/skeleton-chain-list.tsx b/components/skeleton/skeleton-chain-list.tsx index ffc0170..2611eb2 100644 --- a/components/skeleton/skeleton-chain-list.tsx +++ b/components/skeleton/skeleton-chain-list.tsx @@ -21,7 +21,6 @@ import { } from "../twitter-profile"; import { ChainContainer, - ChainImageContainer, ChainInfoContainer, ChainItemContainer, } from "../chain-list"; @@ -60,9 +59,9 @@ export const SkeletonChainList: FunctionComponent = () => ( .map((_, index) => (
- + - + @@ -93,6 +92,13 @@ const SkeletonTitle = styled.div` background-color: ${color.grey["800"]}; `; +const SkeletonImageContainer = styled.div` + width: 3rem; + height: 3rem; + + position: relative; +`; + const SkeletonButtonContainer = styled.div` margin-top: 1.5rem; `; @@ -101,8 +107,6 @@ const SkeletonButton = styled.div` width: 12rem; height: 4rem; - padding-top: 1.5rem; - background-color: ${color.grey["800"]}; `; diff --git a/next.config.js b/next.config.js index 94c9229..43559ad 100644 --- a/next.config.js +++ b/next.config.js @@ -1,5 +1,10 @@ -/** @type {import('next').NextConfig} */ +// eslint-disable-next-line @typescript-eslint/no-var-requires +const { withSentryConfig } = require("@sentry/nextjs"); + const nextConfig = { + sentry: { + hideSourceMaps: true, + }, reactStrictMode: false, swcMinify: true, compiler: { @@ -23,4 +28,11 @@ const nextConfig = { }, }; -module.exports = nextConfig; +const sentryWebpackPluginOptions = { + silent: true, +}; + +module.exports = + process.env.NEXT_IS_ENABLE_USER_TRACKING === "true" + ? withSentryConfig(nextConfig, sentryWebpackPluginOptions) + : nextConfig; diff --git a/package.json b/package.json index 11070e3..f43ca42 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,12 @@ "lint": "next lint" }, "dependencies": { + "@amplitude/analytics-browser": "^1.6.6", "@keplr-wallet/common": "^0.11.25", "@keplr-wallet/cosmos": "^0.11.25", "@keplr-wallet/proto-types": "^0.11.25", "@keplr-wallet/types": "^0.11.25", + "@sentry/nextjs": "^7.27.0", "axios": "^0.27.2", "buffer": "^6.0.3", "crypto": "^1.0.1", diff --git a/pages/_app.tsx b/pages/_app.tsx index cb8b72b..cf5a197 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -1,7 +1,8 @@ +import * as amplitude from "@amplitude/analytics-browser"; import type { AppProps } from "next/app"; import Head from "next/head"; import { useRouter } from "next/router"; -import React, { useMemo } from "react"; +import React, { useEffect, useMemo } from "react"; import { DefaultTheme, ThemeProvider } from "styled-components"; import ErrorBoundary from "../components/error-boundary"; @@ -17,6 +18,10 @@ const defaultPageTheme: DefaultTheme = { bgGridColor: "rgba(51, 51, 51, 0.3)", }; +if (process.env.NEXT_PUBLIC_AMPLITUDE_API_KEY !== undefined) { + amplitude.init(process.env.NEXT_PUBLIC_AMPLITUDE_API_KEY); +} + export default function App({ Component, pageProps }: AppProps) { const router = useRouter(); @@ -26,6 +31,25 @@ export default function App({ Component, pageProps }: AppProps) { const origin = typeof window !== "undefined" ? window.location.origin : ""; + useEffect(() => { + const handleRouteChangeComplete = (url: string) => { + const pathname = url.split("?")[0]; + + amplitude.track("view page", { + pathname, + }); + }; + + handleRouteChangeComplete(router.pathname); + router.events.on("routeChangeStart", handleRouteChangeComplete); + + // If the component is unmounted, unsubscribe + // from the event with the `off` method: + return () => { + router.events.off("routeChangeComplete", handleRouteChangeComplete); + }; + }, []); + return ( diff --git a/pages/_error.tsx b/pages/_error.tsx new file mode 100644 index 0000000..ac93f69 --- /dev/null +++ b/pages/_error.tsx @@ -0,0 +1,66 @@ +import { flush } from "@sentry/nextjs"; +import { NextPageContext } from "next"; +import NextErrorComponent, { ErrorProps as NextErrorProps } from "next/error"; + +type ErrorProps = NextErrorProps & { + hasGetInitialPropsRun: boolean; + err: any; +}; + +const MyError = ({ statusCode, hasGetInitialPropsRun, err }: ErrorProps) => { + if (!hasGetInitialPropsRun && err) { + // getInitialProps is not called in case of + // https://github.com/vercel/next.js/issues/8592. As a workaround, we pass + // err via _app.js so it can be captured + } + + return ; +}; + +MyError.getInitialProps = async (context: NextPageContext) => { + const errorInitialProps = (await NextErrorComponent.getInitialProps( + context, + )) as ErrorProps; + + const { res, err } = context; + + // Workaround for https://github.com/vercel/next.js/issues/8592, mark when + // getInitialProps has run + errorInitialProps.hasGetInitialPropsRun = true; + + // Returning early because we don't want to log 404 errors to + if (res?.statusCode === 404) { + return errorInitialProps; + } + + // Running on the server, the response object (`res`) is available. + // + // Next.js will pass an err on the server if a page's data fetching methods + // threw or returned a Promise that rejected + // + // Running on the client (browser), Next.js will provide an err if: + // + // - a page's `getInitialProps` threw or returned a Promise that rejected + // - an exception was thrown somewhere in the React lifecycle (render, + // componentDidMount, etc) that was caught by Next.js's React Error + // Boundary. Read more about what types of exceptions are caught by Error + // Boundaries: https://reactjs.org/docs/error-boundaries.html + + if (err) { + // Flushing before returning is necessary if deploying to Vercel, see + // https://vercel.com/docs/platform/limits#streaming-responses + await flush(2000); + + return errorInitialProps; + } + + // If this point is reached, getInitialProps was called without any + // information about what the error might be. This is unexpected and may + // indicate a bug introduced in Next.js, so record it in Sentry + + await flush(2000); + + return errorInitialProps; +}; + +export default MyError; diff --git a/pages/complete/index.tsx b/pages/complete/index.tsx index e0deb40..a3e8b44 100644 --- a/pages/complete/index.tsx +++ b/pages/complete/index.tsx @@ -1,3 +1,4 @@ +import * as amplitude from "@amplitude/analytics-browser"; import Image from "next/image"; import styled from "styled-components"; @@ -44,6 +45,8 @@ export default function CompletePage() { ); if (!result.code || result.code === 0) { + amplitude.track("complete registration"); + const addresses = await queryAddressesFromTwitterName(twitterUserName); setRegisteredAddressed(addresses.data.addresses); setIsSuccess(true); @@ -54,6 +57,8 @@ export default function CompletePage() { }; const onClickShareButton = () => { + amplitude.track("click share button"); + const { twitterUsername } = router.query; const shareMessage = `👨‍🚀 To Interchain... And Beyond!%0a%0aHey frens, I just minted my name for the interchain on @icns_xyz: ${twitterUsername}%0a%0aClaim yours now ▶`; diff --git a/pages/index.tsx b/pages/index.tsx index 3e03e31..45bce1a 100644 --- a/pages/index.tsx +++ b/pages/index.tsx @@ -1,3 +1,5 @@ +import * as amplitude from "@amplitude/analytics-browser"; + // NextJs import Image from "next/image"; @@ -24,6 +26,8 @@ export default function Home() { const [isModalOpen, setModalOpen] = useState(false); const onClickConnectWalletButton = async () => { + amplitude.track("click connect wallet button"); + setModalOpen(true); }; diff --git a/pages/verification/index.tsx b/pages/verification/index.tsx index 4dbbc7e..9ad1960 100644 --- a/pages/verification/index.tsx +++ b/pages/verification/index.tsx @@ -1,3 +1,5 @@ +import * as amplitude from "@amplitude/analytics-browser"; + // React import { useEffect, useState } from "react"; @@ -30,7 +32,6 @@ import { } from "../../wallets"; import { ChainIdHelper } from "@keplr-wallet/cosmos"; -import AllChainsIcon from "../../public/images/svg/all-chains-icon.svg"; import { AllChainsItem } from "../../components/chain-list/all-chains-item"; import { SearchInput } from "../../components/search-input"; import { @@ -53,16 +54,23 @@ import { TWITTER_LOGIN_ERROR, } from "../../constants/error-message"; import { makeClaimMessage, makeSetRecordMessage } from "../../messages"; -import Axios, { AxiosError } from "axios"; +import Axios from "axios"; import { BackButton } from "../../components/back-button"; +import { FinalCheckModal } from "../../components/final-check-modal"; export default function VerificationPage() { const router = useRouter(); const [twitterAuthInfo, setTwitterAuthInfo] = useState(); - const [isLoading, setIsLoading] = useState(true); + const [isLoadingInit, setIsLoadingInit] = useState(true); + const [isLoadingRegistration, setIsLoadingRegistration] = useState(false); const [wallet, setWallet] = useState(); + const [walletKey, setWalletKey] = useState<{ + name: string; + pubKey: Uint8Array; + bech32Address: string; + }>(); const [chainList, setChainList] = useState([]); const [disabledChainList, setDisabledChainList] = useState( @@ -71,80 +79,26 @@ export default function VerificationPage() { const [registeredChainList, setRegisteredChainList] = useState< RegisteredAddresses[] >([]); - - const [allChains, setAllChains] = useState(); - const [allChecked, setAllChecked] = useState(false); const [checkedItems, setCheckedItems] = useState(new Set()); const [searchValue, setSearchValue] = useState(""); const [isOwner, setIsOwner] = useState(false); - const [isAgree, setIsAgree] = useState(false); + // const [isAgree, setIsAgree] = useState(false); + + const [isModalOpen, setModalOpen] = useState(false); useEffect(() => { - const init = async () => { - if (window.location.search) { - try { - const { state, code } = checkTwitterAuthQueryParameter( - window.location.search, - ); - - // Initialize Wallet - const keplrWallet = await initWallet(); - - // Fetch Twitter Profile - const twitterInfo = await fetchTwitterInfo(state, code); - - // contract check registered - const registeredQueryResponse = await queryRegisteredTwitterId( - twitterInfo.id, - ); - - setTwitterAuthInfo({ - ...twitterInfo, - isRegistered: "data" in registeredQueryResponse, - }); - - if ("data" in registeredQueryResponse) { - const ownerOfQueryResponse = await queryOwnerOfTwitterName( - registeredQueryResponse.data.name, - ); - - const addressesQueryResponse = await queryAddressesFromTwitterName( - registeredQueryResponse.data.name, - ); - - if (keplrWallet) { - const key = await keplrWallet.getKey(MainChainId); - setIsOwner(ownerOfQueryResponse.data.owner === key.bech32Address); - } - - setRegisteredChainList(addressesQueryResponse.data.addresses); - } - } catch (error) { - if (error instanceof Error && error.message === TWITTER_LOGIN_ERROR) { - await router.push("/"); - } - - console.error(error); - } finally { - setIsLoading(false); - } - } - }; - init(); }, []); useEffect(() => { - setAllChains({ - chainId: "all chains", - chainName: "all chains", - prefix: `all chains(${chainList.length})`, - address: chainList.map((chain) => chain.chainName).join(", "), - chainImageUrl: AllChainsIcon, - }); - }, [chainList]); + if (wallet) { + window.addEventListener("keplr_keystorechange", async () => { + await init(); + }); + } + }, [wallet]); useEffect(() => { const disabledChainList = chainList.filter((chain) => { @@ -164,26 +118,77 @@ export default function VerificationPage() { (chain) => !disabledChainList.includes(chain), ); - setAllChains({ - chainId: "all chains", - chainName: "all chains", - prefix: `all chains(${filteredChainList.length})`, - address: filteredChainList.map((chain) => chain.chainName).join(", "), - chainImageUrl: AllChainsIcon, - }); - setChainList(filteredChainList); setDisabledChainList(disabledChainList); + + setCheckedItems(new Set(filteredChainList)); }, [registeredChainList]); + useEffect(() => { + setCheckedItems(new Set(chainList)); + }, [chainList]); + + const init = async () => { + if (window.location.search) { + try { + const { state, code } = checkTwitterAuthQueryParameter( + window.location.search, + ); + + // Initialize Wallet + const keplrWallet = await initWallet(); + + // Fetch Twitter Profile + const twitterInfo = await fetchTwitterInfo(state, code); + + // contract check registered + const registeredQueryResponse = await queryRegisteredTwitterId( + twitterInfo.id, + ); + + setTwitterAuthInfo({ + ...twitterInfo, + isRegistered: "data" in registeredQueryResponse, + }); + + if ("data" in registeredQueryResponse) { + const ownerOfQueryResponse = await queryOwnerOfTwitterName( + registeredQueryResponse.data.name, + ); + + if (keplrWallet) { + const key = await keplrWallet.getKey(MainChainId); + setIsOwner(ownerOfQueryResponse.data.owner === key.bech32Address); + } + + const addressesQueryResponse = await queryAddressesFromTwitterName( + registeredQueryResponse.data.name, + ); + + setRegisteredChainList(addressesQueryResponse.data.addresses); + } + } catch (error) { + if (error instanceof Error && error.message === TWITTER_LOGIN_ERROR) { + await router.push("/"); + } + + console.error(error); + } finally { + setIsLoadingInit(false); + } + } + }; + const initWallet = async () => { const keplr = await getKeplrFromWindow(); if (keplr) { const keplrWallet = new KeplrWallet(keplr); + const key = await keplrWallet.getKey(MainChainId); await fetchChainList(keplrWallet); setWallet(keplrWallet); + setWalletKey(key); return keplrWallet; } else { @@ -259,8 +264,22 @@ export default function VerificationPage() { } }; - const onClickRegistration = async () => { + const onClickRegistration = () => { + amplitude.track("click register button"); + + console.log(isOwner); + + if (isOwner) { + handleRegistration(); + } else { + setModalOpen(true); + } + }; + + const handleRegistration = async () => { try { + setIsLoadingRegistration(true); + const { state, code } = checkTwitterAuthQueryParameter( window.location.search, ); @@ -268,16 +287,14 @@ export default function VerificationPage() { const adr36Infos = await checkAdr36(); - if (wallet && adr36Infos) { - const key = await wallet.getKey(MainChainId); - + if (wallet && walletKey && adr36Infos) { const icnsVerificationList = await verifyTwitterAccount( - key.bech32Address, + walletKey.bech32Address, twitterInfo.accessToken, ); const registerMsg = makeClaimMessage( - key.bech32Address, + walletKey.bech32Address, twitterInfo.username, icnsVerificationList, localStorage.getItem(REFERRAL_KEY) ?? undefined, @@ -285,7 +302,7 @@ export default function VerificationPage() { const addressMsgs = adr36Infos.map((adr36Info) => { return makeSetRecordMessage( - key.bech32Address, + walletKey.bech32Address, twitterInfo.username, adr36Info, ); @@ -310,7 +327,7 @@ export default function VerificationPage() { const simulated = await simulateMsgs( chainInfo, - key.bech32Address, + walletKey.bech32Address, { proto: protoMsgs, }, @@ -322,7 +339,7 @@ export default function VerificationPage() { const txHash = await sendMsgs( wallet, chainInfo, - key.bech32Address, + walletKey.bech32Address, { amino: aminoMsgs, proto: protoMsgs, @@ -345,20 +362,23 @@ export default function VerificationPage() { if (Axios.isAxiosError(error)) { console.error((error?.response?.data as QueryError).message); } + } finally { + setIsLoadingRegistration(false); } }; - const isRegisterButtonDisable = - checkedItems.size < 1 || - (!isOwner && registeredChainList.length > 0) || - !isAgree; + const isRegisterButtonDisable = (() => { + const hasCheckedItem = checkedItems.size > 0; + + return !hasCheckedItem; + })(); return ( - {isLoading ? ( + {isLoadingInit ? ( ) : ( @@ -373,17 +393,15 @@ export default function VerificationPage() { /> - {allChains && !searchValue ? ( + {!searchValue ? ( ) : null} chain.chainId.includes(searchValue) || @@ -400,26 +418,37 @@ export default function VerificationPage() { setCheckedItems={setCheckedItems} /> - { - setIsAgree(!isAgree); - }} - > - I - check that Osmo is required for this transaction - + {/* {*/} + {/* setIsAgree(!isAgree);*/} + {/* }}*/} + {/*>*/} + {/* I*/} + {/* check that Osmo is required for this transaction*/} + {/**/} - - - Register - - + {chainList.length > 0 && ( + + + Register + + + )} )} + + setModalOpen(false)} + onClickRegisterButton={handleRegistration} + /> ); } @@ -459,6 +488,8 @@ export const ButtonContainer = styled.div<{ disabled?: boolean }>` width: 11rem; height: 3.5rem; + margin-top: 1.5rem; + background-color: ${(props) => props.disabled ? color.orange["300"] : color.orange["100"]}; `; @@ -483,30 +514,30 @@ const ChainListTitle = styled.div` color: ${color.white}; `; -const AgreeContainer = styled.div` - display: flex; - align-items: center; - gap: 0.5rem; - - font-family: "Inter", serif; - font-style: normal; - font-weight: 500; - font-size: 0.8rem; - line-height: 0.8rem; - - text-transform: uppercase; - user-select: none; - - color: ${color.grey["400"]}; - - padding: 2rem 0; - - cursor: pointer; -`; - -const AgreeCheckBox = styled.input.attrs({ type: "checkbox" })` - width: 1.2rem; - height: 1.2rem; - - accent-color: ${color.orange["200"]}; -`; +// const AgreeContainer = styled.div` +// display: flex; +// align-items: center; +// gap: 0.5rem; +// +// font-family: "Inter", serif; +// font-style: normal; +// font-weight: 500; +// font-size: 0.8rem; +// line-height: 0.8rem; +// +// text-transform: uppercase; +// user-select: none; +// +// color: ${color.grey["400"]}; +// +// padding: 2rem 0; +// +// cursor: pointer; +// `; +// +// const AgreeCheckBox = styled.input.attrs({ type: "checkbox" })` +// width: 1.2rem; +// height: 1.2rem; +// +// accent-color: ${color.orange["200"]}; +// `; diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 718d6fe..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/images/icns-logo-120x120.png b/public/images/icns-logo-120x120.png new file mode 100644 index 0000000..4dcc66f Binary files /dev/null and b/public/images/icns-logo-120x120.png differ diff --git a/public/images/svg/twitter-modal-icon.svg b/public/images/svg/twitter-modal-icon.svg new file mode 100644 index 0000000..cacf611 --- /dev/null +++ b/public/images/svg/twitter-modal-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/sentry.client.config.js b/sentry.client.config.js new file mode 100644 index 0000000..5ca9c13 --- /dev/null +++ b/sentry.client.config.js @@ -0,0 +1,28 @@ +// This file configures the initialization of Sentry on the browser. +// The config you add here will be used whenever a page is visited. +// https://docs.sentry.io/platforms/javascript/guides/nextjs/ + +import * as Sentry from "@sentry/nextjs"; + +const SENTRY_DSN = process.env.NEXT_PUBLIC_SENTRY_DSN; +const IS_ENABLE_USER_TRACKING = process.env.NEXT_PUBLIC_IS_ENABLE_USER_TRACKING; + +Sentry.init({ + enabled: IS_ENABLE_USER_TRACKING === "true", + dsn: + SENTRY_DSN || + "https://78c91641e90f4f7cad28f50aaec9fb95@o4504343701946368.ingest.sentry.io/4504343708827648", + // Adjust this value in production, or use tracesSampler for greater control + tracesSampleRate: 1.0, + // ... + // Note: if you want to override the automatic release value, do not set a + // `release` value here - use the environment variable `SENTRY_RELEASE`, so + // that it will also get attached to your source maps + + denyUrls: [ + // deny all chrome extension + "chrome-extension://", + // deny all firefox extension + "moz-extension://", + ], +}); diff --git a/sentry.properties b/sentry.properties new file mode 100644 index 0000000..cde64fa --- /dev/null +++ b/sentry.properties @@ -0,0 +1,3 @@ +defaults.url=https://sentry.io/ +defaults.org=interchain-name-service +defaults.project=icns-frontend \ No newline at end of file diff --git a/sentry.server.config.js b/sentry.server.config.js new file mode 100644 index 0000000..c92d241 --- /dev/null +++ b/sentry.server.config.js @@ -0,0 +1,23 @@ +// This file configures the initialization of Sentry on the server. +// The config you add here will be used whenever the server handles a request. +// https://docs.sentry.io/platforms/javascript/guides/nextjs/ + +import * as Sentry from "@sentry/nextjs"; + +const SENTRY_DSN = process.env.SENTRY_DSN || process.env.NEXT_PUBLIC_SENTRY_DSN; +const IS_ENABLE_USER_TRACKING = + process.env.NEXT_PUBLIC_IS_ENABLE_USER_TRACKING || + process.env.NEXT_IS_ENABLE_USER_TRACKING; + +Sentry.init({ + enabled: IS_ENABLE_USER_TRACKING === "true", + dsn: + SENTRY_DSN || + "https://78c91641e90f4f7cad28f50aaec9fb95@o4504343701946368.ingest.sentry.io/4504343708827648", + // Adjust this value in production, or use tracesSampler for greater control + tracesSampleRate: 1.0, + // ... + // Note: if you want to override the automatic release value, do not set a + // `release` value here - use the environment variable `SENTRY_RELEASE`, so + // that it will also get attached to your source maps +}); diff --git a/yarn.lock b/yarn.lock index 81b33a1..c8f6a0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,6 +5,64 @@ __metadata: version: 6 cacheKey: 8 +"@amplitude/analytics-browser@npm:^1.6.6": + version: 1.6.6 + resolution: "@amplitude/analytics-browser@npm:1.6.6" + dependencies: + "@amplitude/analytics-client-common": ^0.5.0 + "@amplitude/analytics-core": ^0.11.0 + "@amplitude/analytics-types": ^0.14.0 + "@amplitude/ua-parser-js": ^0.7.31 + tslib: ^2.3.1 + checksum: a43eb0dab51b77ef2529f4be6eee90e90a43d3e7d1d54da4edf33cea476889328f22aa238590420a8568a913174b1cab55b3d6a1a76d3c4e6aebe25a0e8c02b8 + languageName: node + linkType: hard + +"@amplitude/analytics-client-common@npm:^0.5.0": + version: 0.5.0 + resolution: "@amplitude/analytics-client-common@npm:0.5.0" + dependencies: + "@amplitude/analytics-connector": ^1.4.5 + "@amplitude/analytics-core": ^0.11.0 + "@amplitude/analytics-types": ^0.14.0 + tslib: ^2.3.1 + checksum: eebf391f64fc5287ddb3a1f23c78fff9c63e7f1dd96dd5466d9549d08c24764b6a49d0c0d1552d3784902be00108913b6669699fffefd7f623a0db9854ce8d94 + languageName: node + linkType: hard + +"@amplitude/analytics-connector@npm:^1.4.5": + version: 1.4.6 + resolution: "@amplitude/analytics-connector@npm:1.4.6" + dependencies: + "@amplitude/ua-parser-js": 0.7.31 + checksum: 0a2acfa54e02b405e1b66ec522aa5802f938f525ad0e81a864f9370b53a3a18f166962d891a5372c12938ec7c3fbbb3453304261845bd57e5617963c8285c2dc + languageName: node + linkType: hard + +"@amplitude/analytics-core@npm:^0.11.0": + version: 0.11.0 + resolution: "@amplitude/analytics-core@npm:0.11.0" + dependencies: + "@amplitude/analytics-types": ^0.14.0 + tslib: ^2.3.1 + checksum: be98d2614bbb22dfae03dfc4f79766ffb71c9f6b0b2fe88ea1b3ea4beae0f69f4d3add0a1dd6f0658300e14ca7d61d45d42f356653c19ba7cf87bcc9443cb7f1 + languageName: node + linkType: hard + +"@amplitude/analytics-types@npm:^0.14.0": + version: 0.14.0 + resolution: "@amplitude/analytics-types@npm:0.14.0" + checksum: 23972f7869b1020d86a6b1d427b003e6bfed6ffae37dd755a86b7d78310568b381b0b7d8970ba468894efb6d775e3b885ed8ac4548d6c15413ed02548dfa9d00 + languageName: node + linkType: hard + +"@amplitude/ua-parser-js@npm:0.7.31, @amplitude/ua-parser-js@npm:^0.7.31": + version: 0.7.31 + resolution: "@amplitude/ua-parser-js@npm:0.7.31" + checksum: c72e7c8656dd77a6c2ece9e3817929022aeadf731470e53fecddce03232d87977fd5b09d76c570a2a5bed97f5dd463fe6379aac7a6c4b2d2393f14486d385eec + languageName: node + linkType: hard + "@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.18.6": version: 7.18.6 resolution: "@babel/code-frame@npm:7.18.6" @@ -792,6 +850,40 @@ __metadata: languageName: node linkType: hard +"@rollup/plugin-sucrase@npm:4.0.4": + version: 4.0.4 + resolution: "@rollup/plugin-sucrase@npm:4.0.4" + dependencies: + "@rollup/pluginutils": ^4.1.1 + sucrase: ^3.20.0 + peerDependencies: + rollup: ^2.53.1 + checksum: ccb01d7eb35014497518a42e242dbebfeb721584ad547cf3121b80f99e13110975f19a4fe7d5537a8d82227400501caa396ff9d809af8904c6aa885530f3a6b3 + languageName: node + linkType: hard + +"@rollup/plugin-virtual@npm:3.0.0": + version: 3.0.0 + resolution: "@rollup/plugin-virtual@npm:3.0.0" + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + checksum: 2335cabee21718fda145caada23132d0255293009207bb6014b47aaefccf25cc6a7cf239c74f54be1ad93b07bb7dd4ba83ca2507c8dbb730876cb83d706bae90 + languageName: node + linkType: hard + +"@rollup/pluginutils@npm:^4.1.1": + version: 4.2.1 + resolution: "@rollup/pluginutils@npm:4.2.1" + dependencies: + estree-walker: ^2.0.1 + picomatch: ^2.2.2 + checksum: 6bc41f22b1a0f1efec3043899e4d3b6b1497b3dea4d94292d8f83b4cf07a1073ecbaedd562a22d11913ff7659f459677b01b09e9598a98936e746780ecc93a12 + languageName: node + linkType: hard + "@rushstack/eslint-patch@npm:^1.1.3": version: 1.2.0 resolution: "@rushstack/eslint-patch@npm:1.2.0" @@ -799,6 +891,169 @@ __metadata: languageName: node linkType: hard +"@sentry/browser@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/browser@npm:7.27.0" + dependencies: + "@sentry/core": 7.27.0 + "@sentry/replay": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + tslib: ^1.9.3 + checksum: da5e50bd576126cadf4d96aa9485d0108ad047bc94ac9aba982f51ab76f792be4c89dbcca5f9714332d99676d03f18d53a9f3918b380c1ca7e084f7d790b9f7f + languageName: node + linkType: hard + +"@sentry/cli@npm:^1.74.6": + version: 1.74.6 + resolution: "@sentry/cli@npm:1.74.6" + dependencies: + https-proxy-agent: ^5.0.0 + mkdirp: ^0.5.5 + node-fetch: ^2.6.7 + npmlog: ^4.1.2 + progress: ^2.0.3 + proxy-from-env: ^1.1.0 + which: ^2.0.2 + bin: + sentry-cli: bin/sentry-cli + checksum: 3d1ef94d5505ed23858503228b59ae1ed401774e27466d7a47eba47be3855e9706f12292d4a0a6135303a5916791620e0d3a184d2fda9e28f2d26ccd347b36fb + languageName: node + linkType: hard + +"@sentry/core@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/core@npm:7.27.0" + dependencies: + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + tslib: ^1.9.3 + checksum: 36138a8f43e3f959a1fe5ddc0f67a3b80248fd7b3fcd4465965b4a75a148d9afdf0f09393da4d61f5c978b24f4243952b9af8acd83bd79f5b669ef3d89ba96c6 + languageName: node + linkType: hard + +"@sentry/integrations@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/integrations@npm:7.27.0" + dependencies: + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + localforage: ^1.8.1 + tslib: ^1.9.3 + checksum: 26cc2a10a4bb89ff131274efd448709e76b500a78594e7ebddcb2d9dfa533e3534373953f660603c6b21bb2a702d10f6602809f795e891d63aa783a2d3f2188c + languageName: node + linkType: hard + +"@sentry/nextjs@npm:^7.27.0": + version: 7.27.0 + resolution: "@sentry/nextjs@npm:7.27.0" + dependencies: + "@rollup/plugin-sucrase": 4.0.4 + "@rollup/plugin-virtual": 3.0.0 + "@sentry/core": 7.27.0 + "@sentry/integrations": 7.27.0 + "@sentry/node": 7.27.0 + "@sentry/react": 7.27.0 + "@sentry/tracing": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + "@sentry/webpack-plugin": 1.20.0 + chalk: 3.0.0 + rollup: 2.78.0 + tslib: ^1.9.3 + peerDependencies: + next: ^10.0.8 || ^11.0 || ^12.0 || ^13.0 + react: 15.x || 16.x || 17.x || 18.x + webpack: ">= 4.0.0" + peerDependenciesMeta: + webpack: + optional: true + checksum: fdc0ba40b41280ce841e4d841ffe9dd57a6dac6446a47b5c634c9fe48c2a668c1ed6ba4533f37252ba37d034eb2971685b6b56a34f35df0b4edad56069701d56 + languageName: node + linkType: hard + +"@sentry/node@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/node@npm:7.27.0" + dependencies: + "@sentry/core": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + cookie: ^0.4.1 + https-proxy-agent: ^5.0.0 + lru_map: ^0.3.3 + tslib: ^1.9.3 + checksum: a42cb398ed1e8579229cff2fb1303c9809369046995da3c382e27e28d053360dd007828b94a1ff599f85eacc1e7c822b484fc2875995f7d6bb61ac8bcb464542 + languageName: node + linkType: hard + +"@sentry/react@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/react@npm:7.27.0" + dependencies: + "@sentry/browser": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + hoist-non-react-statics: ^3.3.2 + tslib: ^1.9.3 + peerDependencies: + react: 15.x || 16.x || 17.x || 18.x + checksum: 164cefe9efee1dc41bd7244c2da5567f3a772717bc537d40b961db1bb9e67458be13b79e0f68be4cbc2970daa868a5d786de682f40c8fbe0d0d42015bef32b81 + languageName: node + linkType: hard + +"@sentry/replay@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/replay@npm:7.27.0" + dependencies: + "@sentry/core": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + peerDependencies: + "@sentry/browser": ">=7.24.0" + checksum: 440ac09c9acb2ced340c61ae56289dabdd006fd48a85545d8459990c93745b5e5cdbfcd0ec8311092a495094c2679239278650d2af373011df29d435333dbc66 + languageName: node + linkType: hard + +"@sentry/tracing@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/tracing@npm:7.27.0" + dependencies: + "@sentry/core": 7.27.0 + "@sentry/types": 7.27.0 + "@sentry/utils": 7.27.0 + tslib: ^1.9.3 + checksum: 203a3a6b467d6ccb12913f3da38e7d224f1d074dc3b3ac2e108a8ae6feff8d60ecb379eedf1b2bd82b1cdd58c11801df5b426e4a15be0a70845c9e2eae05b6ed + languageName: node + linkType: hard + +"@sentry/types@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/types@npm:7.27.0" + checksum: a22056aa589da4b17f42548b1a218edbb839d97f865c9214d89dc4a831389ac71c647af087c6f363df28d7adadb0e623ad77a7f3243d411458aafc655714424e + languageName: node + linkType: hard + +"@sentry/utils@npm:7.27.0": + version: 7.27.0 + resolution: "@sentry/utils@npm:7.27.0" + dependencies: + "@sentry/types": 7.27.0 + tslib: ^1.9.3 + checksum: d01f2d1999b877904df04e521a05a6978a756eeb518b6ca5099edf7888023691ed3b812eb089bd77c92069764b8928d285dd33cf667ab2030a8e590d79ca55da + languageName: node + linkType: hard + +"@sentry/webpack-plugin@npm:1.20.0": + version: 1.20.0 + resolution: "@sentry/webpack-plugin@npm:1.20.0" + dependencies: + "@sentry/cli": ^1.74.6 + webpack-sources: ^2.0.0 || ^3.0.0 + checksum: d582026c3686f287ddc23de4e64c6f03afc2a73a84ec5a8fd3eded56a45683094bf132f4c624a35386fff872eb518771109d5c0b91a2cf79da0aff035c5bb05b + languageName: node + linkType: hard + "@swc/helpers@npm:0.4.14": version: 0.4.14 resolution: "@swc/helpers@npm:0.4.14" @@ -1324,6 +1579,13 @@ __metadata: languageName: node linkType: hard +"ansi-regex@npm:^2.0.0": + version: 2.1.1 + resolution: "ansi-regex@npm:2.1.1" + checksum: 190abd03e4ff86794f338a31795d262c1dfe8c91f7e01d04f13f646f1dcb16c5800818f886047876f1272f065570ab86b24b99089f8b68a0e11ff19aed4ca8f1 + languageName: node + linkType: hard + "ansi-regex@npm:^5.0.1": version: 5.0.1 resolution: "ansi-regex@npm:5.0.1" @@ -1349,6 +1611,20 @@ __metadata: languageName: node linkType: hard +"any-promise@npm:^1.0.0": + version: 1.3.0 + resolution: "any-promise@npm:1.3.0" + checksum: 0ee8a9bdbe882c90464d75d1f55cf027f5458650c4bd1f0467e65aec38ccccda07ca5844969ee77ed46d04e7dded3eaceb027e8d32f385688523fe305fa7e1de + languageName: node + linkType: hard + +"aproba@npm:^1.0.3": + version: 1.2.0 + resolution: "aproba@npm:1.2.0" + checksum: 0fca141966559d195072ed047658b6e6c4fe92428c385dd38e288eacfc55807e7b4989322f030faff32c0f46bb0bc10f1e0ac32ec22d25315a1e5bbc0ebb76dc + languageName: node + linkType: hard + "aproba@npm:^1.0.3 || ^2.0.0": version: 2.0.0 resolution: "aproba@npm:2.0.0" @@ -1366,6 +1642,16 @@ __metadata: languageName: node linkType: hard +"are-we-there-yet@npm:~1.1.2": + version: 1.1.7 + resolution: "are-we-there-yet@npm:1.1.7" + dependencies: + delegates: ^1.0.0 + readable-stream: ^2.0.6 + checksum: 70d251719c969b2745bfe5ddf3ebaefa846a636e90a6d5212573676af5d6670e15457761d4725731e19cbebdce42c4ab0cbedf23ab047f2a08274985aa10a3c7 + languageName: node + linkType: hard + "argparse@npm:^2.0.1": version: 2.0.1 resolution: "argparse@npm:2.0.1" @@ -1746,6 +2032,16 @@ __metadata: languageName: node linkType: hard +"chalk@npm:3.0.0": + version: 3.0.0 + resolution: "chalk@npm:3.0.0" + dependencies: + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: 8e3ddf3981c4da405ddbd7d9c8d91944ddf6e33d6837756979f7840a29272a69a5189ecae0ff84006750d6d1e92368d413335eab4db5476db6e6703a1d1e0505 + languageName: node + linkType: hard + "chalk@npm:^2.0.0": version: 2.4.2 resolution: "chalk@npm:2.4.2" @@ -1821,6 +2117,13 @@ __metadata: languageName: node linkType: hard +"code-point-at@npm:^1.0.0": + version: 1.1.0 + resolution: "code-point-at@npm:1.1.0" + checksum: 17d5666611f9b16d64fdf48176d9b7fb1c7d1c1607a189f7e600040a11a6616982876af148230336adb7d8fe728a559f743a4e29db3747e3b1a32fa7f4529681 + languageName: node + linkType: hard + "color-convert@npm:^1.9.0": version: 1.9.3 resolution: "color-convert@npm:1.9.3" @@ -1871,6 +2174,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:^4.0.0": + version: 4.1.1 + resolution: "commander@npm:4.1.1" + checksum: d7b9913ff92cae20cb577a4ac6fcc121bd6223319e54a40f51a14740a681ad5c574fd29a57da478a5f234a6fa6c52cbf0b7c641353e03c648b1ae85ba670b977 + languageName: node + linkType: hard + "common-tags@npm:^1.8.0": version: 1.8.2 resolution: "common-tags@npm:1.8.2" @@ -1885,13 +2195,20 @@ __metadata: languageName: node linkType: hard -"console-control-strings@npm:^1.1.0": +"console-control-strings@npm:^1.0.0, console-control-strings@npm:^1.1.0, console-control-strings@npm:~1.1.0": version: 1.1.0 resolution: "console-control-strings@npm:1.1.0" checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed languageName: node linkType: hard +"cookie@npm:^0.4.1": + version: 0.4.2 + resolution: "cookie@npm:0.4.2" + checksum: a00833c998bedf8e787b4c342defe5fa419abd96b32f4464f718b91022586b8f1bafbddd499288e75c037642493c83083da426c6a9080d309e3bd90fd11baa9b + languageName: node + linkType: hard + "cookie@npm:^0.5.0": version: 0.5.0 resolution: "cookie@npm:0.5.0" @@ -1906,6 +2223,13 @@ __metadata: languageName: node linkType: hard +"core-util-is@npm:~1.0.0": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 9de8597363a8e9b9952491ebe18167e3b36e7707569eed0ebf14f8bba773611376466ae34575bca8cfe3c767890c859c74056084738f09d4e4a6f902b2ad7d99 + languageName: node + linkType: hard + "create-hash@npm:^1.1.0, create-hash@npm:^1.1.2, create-hash@npm:^1.2.0": version: 1.2.0 resolution: "create-hash@npm:1.2.0" @@ -2621,6 +2945,13 @@ __metadata: languageName: node linkType: hard +"estree-walker@npm:^2.0.1": + version: 2.0.2 + resolution: "estree-walker@npm:2.0.2" + checksum: 6151e6f9828abe2259e57f5fd3761335bb0d2ebd76dc1a01048ccee22fabcfef3c0859300f6d83ff0d1927849368775ec5a6d265dde2f6de5a1be1721cd94efc + languageName: node + linkType: hard + "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -2791,6 +3122,25 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:~2.3.2": + version: 2.3.2 + resolution: "fsevents@npm:2.3.2" + dependencies: + node-gyp: latest + checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@~2.3.2#~builtin": + version: 2.3.2 + resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.1": version: 1.1.1 resolution: "function-bind@npm:1.1.1" @@ -2833,6 +3183,22 @@ __metadata: languageName: node linkType: hard +"gauge@npm:~2.7.3": + version: 2.7.4 + resolution: "gauge@npm:2.7.4" + dependencies: + aproba: ^1.0.3 + console-control-strings: ^1.0.0 + has-unicode: ^2.0.0 + object-assign: ^4.1.0 + signal-exit: ^3.0.0 + string-width: ^1.0.1 + strip-ansi: ^3.0.1 + wide-align: ^1.1.0 + checksum: a89b53cee65579b46832e050b5f3a79a832cc422c190de79c6b8e2e15296ab92faddde6ddf2d376875cbba2b043efa99b9e1ed8124e7365f61b04e3cee9d40ee + languageName: node + linkType: hard + "get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.0, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3": version: 1.1.3 resolution: "get-intrinsic@npm:1.1.3" @@ -2886,6 +3252,20 @@ __metadata: languageName: node linkType: hard +"glob@npm:7.1.6": + version: 7.1.6 + resolution: "glob@npm:7.1.6" + dependencies: + fs.realpath: ^1.0.0 + inflight: ^1.0.4 + inherits: 2 + minimatch: ^3.0.4 + once: ^1.3.0 + path-is-absolute: ^1.0.0 + checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 + languageName: node + linkType: hard + "glob@npm:7.1.7": version: 7.1.7 resolution: "glob@npm:7.1.7" @@ -3060,7 +3440,7 @@ __metadata: languageName: node linkType: hard -"has-unicode@npm:^2.0.1": +"has-unicode@npm:^2.0.0, has-unicode@npm:^2.0.1": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" checksum: 1eab07a7436512db0be40a710b29b5dc21fa04880b7f63c9980b706683127e3c1b57cb80ea96d47991bdae2dfe479604f6a1ba410106ee1046a41d1bd0814400 @@ -3108,7 +3488,7 @@ __metadata: languageName: node linkType: hard -"hoist-non-react-statics@npm:^3.0.0, hoist-non-react-statics@npm:^3.3.0": +"hoist-non-react-statics@npm:^3.0.0, hoist-non-react-statics@npm:^3.3.0, hoist-non-react-statics@npm:^3.3.2": version: 3.3.2 resolution: "hoist-non-react-statics@npm:3.3.2" dependencies: @@ -3165,11 +3545,13 @@ __metadata: version: 0.0.0-use.local resolution: "icns-frontend@workspace:." dependencies: + "@amplitude/analytics-browser": ^1.6.6 "@keplr-wallet/common": ^0.11.25 "@keplr-wallet/cosmos": ^0.11.25 "@keplr-wallet/proto-types": ^0.11.25 "@keplr-wallet/types": ^0.11.25 "@next/eslint-plugin-next": ^13.0.5 + "@sentry/nextjs": ^7.27.0 "@types/eslint": ^8.4.10 "@types/node": 18.11.9 "@types/react": 18.0.25 @@ -3229,6 +3611,13 @@ __metadata: languageName: node linkType: hard +"immediate@npm:~3.0.5": + version: 3.0.6 + resolution: "immediate@npm:3.0.6" + checksum: f9b3486477555997657f70318cc8d3416159f208bec4cca3ff3442fd266bc23f50f0c9bd8547e1371a6b5e82b821ec9a7044a4f7b944798b25aa3cc6d5e63e62 + languageName: node + linkType: hard + "import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" @@ -3270,7 +3659,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4": +"inherits@npm:2, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -3413,6 +3802,15 @@ __metadata: languageName: node linkType: hard +"is-fullwidth-code-point@npm:^1.0.0": + version: 1.0.0 + resolution: "is-fullwidth-code-point@npm:1.0.0" + dependencies: + number-is-nan: ^1.0.0 + checksum: 4d46a7465a66a8aebcc5340d3b63a56602133874af576a9ca42c6f0f4bd787a743605771c5f246db77da96605fefeffb65fc1dbe862dcc7328f4b4d03edf5a57 + languageName: node + linkType: hard + "is-fullwidth-code-point@npm:^3.0.0": version: 3.0.0 resolution: "is-fullwidth-code-point@npm:3.0.0" @@ -3528,7 +3926,7 @@ __metadata: languageName: node linkType: hard -"isarray@npm:1.0.0, isarray@npm:^1.0.0": +"isarray@npm:1.0.0, isarray@npm:^1.0.0, isarray@npm:~1.0.0": version: 1.0.0 resolution: "isarray@npm:1.0.0" checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab @@ -3763,6 +4161,15 @@ __metadata: languageName: node linkType: hard +"lie@npm:3.1.1": + version: 3.1.1 + resolution: "lie@npm:3.1.1" + dependencies: + immediate: ~3.0.5 + checksum: 6da9f2121d2dbd15f1eca44c0c7e211e66a99c7b326ec8312645f3648935bc3a658cf0e9fa7b5f10144d9e2641500b4f55bd32754607c3de945b5f443e50ddd1 + languageName: node + linkType: hard + "line-column@npm:^1.0.2": version: 1.0.2 resolution: "line-column@npm:1.0.2" @@ -3780,6 +4187,15 @@ __metadata: languageName: node linkType: hard +"localforage@npm:^1.8.1": + version: 1.10.0 + resolution: "localforage@npm:1.10.0" + dependencies: + lie: 3.1.1 + checksum: f2978b434dafff9bcb0d9498de57d97eba165402419939c944412e179cab1854782830b5ec196212560b22712d1dd03918939f59cf1d4fc1d756fca7950086cf + languageName: node + linkType: hard + "locate-path@npm:^5.0.0": version: 5.0.0 resolution: "locate-path@npm:5.0.0" @@ -3846,6 +4262,13 @@ __metadata: languageName: node linkType: hard +"lru_map@npm:^0.3.3": + version: 0.3.3 + resolution: "lru_map@npm:0.3.3" + checksum: ca9dd43c65ed7a4f117c548028101c5b6855e10923ea9d1f635af53ad20c5868ff428c364d454a7b57fe391b89c704982275410c3c5099cca5aeee00d76e169a + languageName: node + linkType: hard + "make-fetch-happen@npm:^10.0.3": version: 10.2.1 resolution: "make-fetch-happen@npm:10.2.1" @@ -4057,6 +4480,17 @@ __metadata: languageName: node linkType: hard +"mkdirp@npm:^0.5.5": + version: 0.5.6 + resolution: "mkdirp@npm:0.5.6" + dependencies: + minimist: ^1.2.6 + bin: + mkdirp: bin/cmd.js + checksum: 0c91b721bb12c3f9af4b77ebf73604baf350e64d80df91754dc509491ae93bf238581e59c7188360cec7cb62fc4100959245a42cfe01834efedc5e9d068376c2 + languageName: node + linkType: hard + "mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" @@ -4087,6 +4521,17 @@ __metadata: languageName: node linkType: hard +"mz@npm:^2.7.0": + version: 2.7.0 + resolution: "mz@npm:2.7.0" + dependencies: + any-promise: ^1.0.0 + object-assign: ^4.0.1 + thenify-all: ^1.0.0 + checksum: 8427de0ece99a07e9faed3c0c6778820d7543e3776f9a84d22cf0ec0a8eb65f6e9aee9c9d353ff9a105ff62d33a9463c6ca638974cc652ee8140cd1e35951c87 + languageName: node + linkType: hard + "nan@npm:^2.13.2": version: 2.17.0 resolution: "nan@npm:2.17.0" @@ -4194,6 +4639,20 @@ __metadata: languageName: node linkType: hard +"node-fetch@npm:^2.6.7": + version: 2.6.7 + resolution: "node-fetch@npm:2.6.7" + dependencies: + whatwg-url: ^5.0.0 + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + checksum: 8d816ffd1ee22cab8301c7756ef04f3437f18dace86a1dae22cf81db8ef29c0bf6655f3215cb0cdb22b420b6fe141e64b26905e7f33f9377a7fa59135ea3e10b + languageName: node + linkType: hard + "node-gyp@npm:latest": version: 9.3.0 resolution: "node-gyp@npm:9.3.0" @@ -4237,6 +4696,18 @@ __metadata: languageName: node linkType: hard +"npmlog@npm:^4.1.2": + version: 4.1.2 + resolution: "npmlog@npm:4.1.2" + dependencies: + are-we-there-yet: ~1.1.2 + console-control-strings: ~1.1.0 + gauge: ~2.7.3 + set-blocking: ~2.0.0 + checksum: edbda9f95ec20957a892de1839afc6fb735054c3accf6fbefe767bac9a639fd5cea2baeac6bd2bcd50a85cb54924d57d9886c81c7fbc2332c2ddd19227504192 + languageName: node + linkType: hard + "npmlog@npm:^6.0.0": version: 6.0.2 resolution: "npmlog@npm:6.0.2" @@ -4249,7 +4720,14 @@ __metadata: languageName: node linkType: hard -"object-assign@npm:^4.1.1": +"number-is-nan@npm:^1.0.0": + version: 1.0.1 + resolution: "number-is-nan@npm:1.0.1" + checksum: 13656bc9aa771b96cef209ffca31c31a03b507ca6862ba7c3f638a283560620d723d52e626d57892c7fff475f4c36ac07f0600f14544692ff595abff214b9ffb + languageName: node + linkType: hard + +"object-assign@npm:^4.0.1, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f @@ -4503,13 +4981,20 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.3.0, picomatch@npm:^2.3.1": +"picomatch@npm:^2.2.2, picomatch@npm:^2.3.0, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf languageName: node linkType: hard +"pirates@npm:^4.0.1": + version: 4.0.5 + resolution: "pirates@npm:4.0.5" + checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 + languageName: node + linkType: hard + "pluralize@npm:^8.0.0": version: 8.0.0 resolution: "pluralize@npm:8.0.0" @@ -4560,6 +5045,20 @@ __metadata: languageName: node linkType: hard +"process-nextick-args@npm:~2.0.0": + version: 2.0.1 + resolution: "process-nextick-args@npm:2.0.1" + checksum: 1d38588e520dab7cea67cbbe2efdd86a10cc7a074c09657635e34f035277b59fbb57d09d8638346bf7090f8e8ebc070c96fa5fd183b777fff4f5edff5e9466cf + languageName: node + linkType: hard + +"progress@npm:^2.0.3": + version: 2.0.3 + resolution: "progress@npm:2.0.3" + checksum: f67403fe7b34912148d9252cb7481266a354bd99ce82c835f79070643bb3c6583d10dbcfda4d41e04bbc1d8437e9af0fb1e1f2135727878f5308682a579429b7 + languageName: node + linkType: hard + "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -4612,6 +5111,13 @@ __metadata: languageName: node linkType: hard +"proxy-from-env@npm:^1.1.0": + version: 1.1.0 + resolution: "proxy-from-env@npm:1.1.0" + checksum: ed7fcc2ba0a33404958e34d95d18638249a68c430e30fcb6c478497d72739ba64ce9810a24f53a7d921d0c065e5b78e3822759800698167256b04659366ca4d4 + languageName: node + linkType: hard + "punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" @@ -4744,6 +5250,21 @@ __metadata: languageName: node linkType: hard +"readable-stream@npm:^2.0.6": + version: 2.3.7 + resolution: "readable-stream@npm:2.3.7" + dependencies: + core-util-is: ~1.0.0 + inherits: ~2.0.3 + isarray: ~1.0.0 + process-nextick-args: ~2.0.0 + safe-buffer: ~5.1.1 + string_decoder: ~1.1.1 + util-deprecate: ~1.0.1 + checksum: e4920cf7549a60f8aaf694d483a0e61b2a878b969d224f89b3bc788b8d920075132c4b55a7494ee944c7b6a9a0eada28a7f6220d80b0312ece70bbf08eeca755 + languageName: node + linkType: hard + "readable-stream@npm:^3.6.0": version: 3.6.0 resolution: "readable-stream@npm:3.6.0" @@ -4901,6 +5422,20 @@ __metadata: languageName: node linkType: hard +"rollup@npm:2.78.0": + version: 2.78.0 + resolution: "rollup@npm:2.78.0" + dependencies: + fsevents: ~2.3.2 + dependenciesMeta: + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: 01b5a7ae082d2a14201c973ee973099f0899cc87b65063d5ca5a77c05eeefb3b51e14b1346cf1a0fc879ac2cbb87239d4f960917bfc30b7c52f5dce50a7f56e7 + languageName: node + linkType: hard + "run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" @@ -4917,6 +5452,13 @@ __metadata: languageName: node linkType: hard +"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + languageName: node + linkType: hard + "safe-regex-test@npm:^1.0.0": version: 1.0.0 resolution: "safe-regex-test@npm:1.0.0" @@ -5008,7 +5550,7 @@ __metadata: languageName: node linkType: hard -"set-blocking@npm:^2.0.0": +"set-blocking@npm:^2.0.0, set-blocking@npm:~2.0.0": version: 2.0.0 resolution: "set-blocking@npm:2.0.0" checksum: 6e65a05f7cf7ebdf8b7c75b101e18c0b7e3dff4940d480efed8aad3a36a4005140b660fa1d804cb8bce911cac290441dc728084a30504d3516ac2ff7ad607b02 @@ -5070,7 +5612,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^3.0.7": +"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -5192,6 +5734,17 @@ __metadata: languageName: node linkType: hard +"string-width@npm:^1.0.1": + version: 1.0.2 + resolution: "string-width@npm:1.0.2" + dependencies: + code-point-at: ^1.0.0 + is-fullwidth-code-point: ^1.0.0 + strip-ansi: ^3.0.0 + checksum: 5c79439e95bc3bd7233a332c5f5926ab2ee90b23816ed4faa380ce3b2576d7800b0a5bb15ae88ed28737acc7ea06a518c2eef39142dd727adad0e45c776cd37e + languageName: node + linkType: hard + "string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -5250,6 +5803,24 @@ __metadata: languageName: node linkType: hard +"string_decoder@npm:~1.1.1": + version: 1.1.1 + resolution: "string_decoder@npm:1.1.1" + dependencies: + safe-buffer: ~5.1.0 + checksum: 9ab7e56f9d60a28f2be697419917c50cac19f3e8e6c28ef26ed5f4852289fe0de5d6997d29becf59028556f2c62983790c1d9ba1e2a3cc401768ca12d5183a5b + languageName: node + linkType: hard + +"strip-ansi@npm:^3.0.0, strip-ansi@npm:^3.0.1": + version: 3.0.1 + resolution: "strip-ansi@npm:3.0.1" + dependencies: + ansi-regex: ^2.0.0 + checksum: 9b974de611ce5075c70629c00fa98c46144043db92ae17748fb780f706f7a789e9989fd10597b7c2053ae8d1513fd707816a91f1879b2f71e6ac0b6a863db465 + languageName: node + linkType: hard + "strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -5320,6 +5891,23 @@ __metadata: languageName: node linkType: hard +"sucrase@npm:^3.20.0": + version: 3.29.0 + resolution: "sucrase@npm:3.29.0" + dependencies: + commander: ^4.0.0 + glob: 7.1.6 + lines-and-columns: ^1.1.6 + mz: ^2.7.0 + pirates: ^4.0.1 + ts-interface-checker: ^0.1.9 + bin: + sucrase: bin/sucrase + sucrase-node: bin/sucrase-node + checksum: fc8f04c34f29c0e9ca63109815df138182d62663dbe9565fcd94161b77a88a639f40c46559d0bb84d7acf9346ce23ea102476fd9168ec279330c7faecefb81eb + languageName: node + linkType: hard + "supports-color@npm:^5.3.0, supports-color@npm:^5.5.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" @@ -5383,6 +5971,24 @@ __metadata: languageName: node linkType: hard +"thenify-all@npm:^1.0.0": + version: 1.6.0 + resolution: "thenify-all@npm:1.6.0" + dependencies: + thenify: ">= 3.1.0 < 4" + checksum: dba7cc8a23a154cdcb6acb7f51d61511c37a6b077ec5ab5da6e8b874272015937788402fd271fdfc5f187f8cb0948e38d0a42dcc89d554d731652ab458f5343e + languageName: node + linkType: hard + +"thenify@npm:>= 3.1.0 < 4": + version: 3.3.1 + resolution: "thenify@npm:3.3.1" + dependencies: + any-promise: ^1.0.0 + checksum: 84e1b804bfec49f3531215f17b4a6e50fd4397b5f7c1bccc427b9c656e1ecfb13ea79d899930184f78bc2f57285c54d9a50a590c8868f4f0cef5c1d9f898b05e + languageName: node + linkType: hard + "tiny-glob@npm:^0.2.9": version: 0.2.9 resolution: "tiny-glob@npm:0.2.9" @@ -5423,6 +6029,20 @@ __metadata: languageName: node linkType: hard +"tr46@npm:~0.0.3": + version: 0.0.3 + resolution: "tr46@npm:0.0.3" + checksum: 726321c5eaf41b5002e17ffbd1fb7245999a073e8979085dacd47c4b4e8068ff5777142fc6726d6ca1fd2ff16921b48788b87225cbc57c72636f6efa8efbffe3 + languageName: node + linkType: hard + +"ts-interface-checker@npm:^0.1.9": + version: 0.1.13 + resolution: "ts-interface-checker@npm:0.1.13" + checksum: 20c29189c2dd6067a8775e07823ddf8d59a33e2ffc47a1bd59a5cb28bb0121a2969a816d5e77eda2ed85b18171aa5d1c4005a6b88ae8499ec7cc49f78571cb5e + languageName: node + linkType: hard + "tsconfig-paths@npm:^3.14.1": version: 3.14.1 resolution: "tsconfig-paths@npm:3.14.1" @@ -5435,14 +6055,14 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.8.1": +"tslib@npm:^1.8.1, tslib@npm:^1.9.3": version: 1.14.1 resolution: "tslib@npm:1.14.1" checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd languageName: node linkType: hard -"tslib@npm:^2.0.0, tslib@npm:^2.4.0, tslib@npm:^2.4.1": +"tslib@npm:^2.0.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0, tslib@npm:^2.4.1": version: 2.4.1 resolution: "tslib@npm:2.4.1" checksum: 19480d6e0313292bd6505d4efe096a6b31c70e21cf08b5febf4da62e95c265c8f571f7b36fcc3d1a17e068032f59c269fab3459d6cd3ed6949eafecf64315fca @@ -5577,7 +6197,7 @@ __metadata: languageName: node linkType: hard -"util-deprecate@npm:^1.0.1": +"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2" checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 @@ -5623,6 +6243,30 @@ __metadata: languageName: node linkType: hard +"webidl-conversions@npm:^3.0.0": + version: 3.0.1 + resolution: "webidl-conversions@npm:3.0.1" + checksum: c92a0a6ab95314bde9c32e1d0a6dfac83b578f8fa5f21e675bc2706ed6981bc26b7eb7e6a1fab158e5ce4adf9caa4a0aee49a52505d4d13c7be545f15021b17c + languageName: node + linkType: hard + +"webpack-sources@npm:^2.0.0 || ^3.0.0": + version: 3.2.3 + resolution: "webpack-sources@npm:3.2.3" + checksum: 989e401b9fe3536529e2a99dac8c1bdc50e3a0a2c8669cbafad31271eadd994bc9405f88a3039cd2e29db5e6d9d0926ceb7a1a4e7409ece021fe79c37d9c4607 + languageName: node + linkType: hard + +"whatwg-url@npm:^5.0.0": + version: 5.0.0 + resolution: "whatwg-url@npm:5.0.0" + dependencies: + tr46: ~0.0.3 + webidl-conversions: ^3.0.0 + checksum: b8daed4ad3356cc4899048a15b2c143a9aed0dfae1f611ebd55073310c7b910f522ad75d727346ad64203d7e6c79ef25eafd465f4d12775ca44b90fa82ed9e2c + languageName: node + linkType: hard + "which-boxed-primitive@npm:^1.0.2": version: 1.0.2 resolution: "which-boxed-primitive@npm:1.0.2" @@ -5647,7 +6291,7 @@ __metadata: languageName: node linkType: hard -"wide-align@npm:^1.1.5": +"wide-align@npm:^1.1.0, wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" dependencies: