From 3ad4a0af92b88c75e9193e38fa43a279980189dd Mon Sep 17 00:00:00 2001 From: Anthony Fu Date: Wed, 21 Jun 2023 01:00:51 +0200 Subject: [PATCH 1/4] chore: init --- .../devtools-kit/src/_types/client-api.ts | 2 + .../devtools-webext/extension/devtools.html | 9 + packages/devtools-webext/extension/icon.png | Bin 0 -> 1250 bytes .../devtools-webext/extension/manifest.json | 15 + packages/devtools-webext/extension/panel.html | 17 + packages/devtools-webext/package.json | 17 + packages/devtools-webext/src/content.ts | 0 packages/devtools-webext/src/devtools.ts | 3 + packages/devtools-webext/src/panel.ts | 61 +++ packages/devtools-webext/tsup.config.ts | 12 + .../devtools/client/composables/client.ts | 5 +- .../src/runtime/plugins/devtools.client.ts | 2 + pnpm-lock.yaml | 457 ++++++++++++++++++ 13 files changed, 599 insertions(+), 1 deletion(-) create mode 100644 packages/devtools-webext/extension/devtools.html create mode 100644 packages/devtools-webext/extension/icon.png create mode 100644 packages/devtools-webext/extension/manifest.json create mode 100644 packages/devtools-webext/extension/panel.html create mode 100644 packages/devtools-webext/package.json create mode 100644 packages/devtools-webext/src/content.ts create mode 100644 packages/devtools-webext/src/devtools.ts create mode 100644 packages/devtools-webext/src/panel.ts create mode 100644 packages/devtools-webext/tsup.config.ts diff --git a/packages/devtools-kit/src/_types/client-api.ts b/packages/devtools-kit/src/_types/client-api.ts index e7d5335ffa..3cf5cdb07b 100644 --- a/packages/devtools-kit/src/_types/client-api.ts +++ b/packages/devtools-kit/src/_types/client-api.ts @@ -74,6 +74,8 @@ export interface NuxtDevtoolsClient { } export interface NuxtDevtoolsIframeClient { + url: string + version: string host: NuxtDevtoolsHostClient devtools: NuxtDevtoolsClient } diff --git a/packages/devtools-webext/extension/devtools.html b/packages/devtools-webext/extension/devtools.html new file mode 100644 index 0000000000..f42224d245 --- /dev/null +++ b/packages/devtools-webext/extension/devtools.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/packages/devtools-webext/extension/icon.png b/packages/devtools-webext/extension/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..22af08e79dfa22c6d5d513cd7cdb3e67b4c95e58 GIT binary patch literal 1250 zcmV<81ReW{P)Mco)i3;a22pmd1F?b~LPFczPEWM+m$2zPasq4d9d?X%X8=z7wfv!9#nv$@JA(aW z0XsswGa!?vKsk>Hd1V5%BeWNQWfFse#9?F%PvQ)Ag!TgPC=%zfLY$g_?EpP!15A7p zKGk>!=86mb_oLHjQ&J_~G$9Y7EF?k)A$y#FR+)kPT&fsp^IF~dFfJuCcG9uMaig-%mkaQx?E3y6U zFm75=ngxI}Fv2N5(xON$tYd6WU~r}2@(SjLF*LwG0K9>-7yYl)gcw)t#9CZ|3uY-K zhv12S05Ve6ruyl>I*o}=!rVFBq5&`mPIMwJ1WZU`$pM8-EOn~4B+&B2KM#d z!!A*!*6Y|Okj@kD^_1B4WNbBQBv0mw^CY`tDK(1pnC8MP3@HV-zUiFdKCFlUu z(fdBoa(cy970e}>R-HB+`UKgjffT%)cB?9HOgl~_M7mFqof~MsGo4rV#|gM#atT#Y zbXhdw%VviCN;?Kt@i4{Dj;+@-s5i4XiH#-Pk`Su{(6)g^`0ev~?W&T`0!krT`vmz% z3@pOSX}^umTwE=z*DYJ|+X3jxKm;>#msQ21PuL7Vn|i+rTB4?nstRIkV-jMiES6?K zi+aBdw|(v-r>kHkw%G9TH2_`c{omx<=Ls<)ZIoAva1vYS(q8Bj#EXIX=}QbY18v(} z9Q7&%Fo_Rg<^r?;j*NmvQ&7_@o1M|v&$ScM+_H@YK z4k<3A{`CR=1~^5j#AlA&8#wQT7`Fc{q4mC**|RrWSp@u%dwXc + + + + + + + + + diff --git a/packages/devtools-webext/package.json b/packages/devtools-webext/package.json new file mode 100644 index 0000000000..533096fcdf --- /dev/null +++ b/packages/devtools-webext/package.json @@ -0,0 +1,17 @@ +{ + "name": "@nuxt/devtools-webext", + "private": true, + "type": "module", + "version": "0.6.1", + "license": "MIT", + "scripts": { + "build": "tsup", + "dev": "tsup --watch" + }, + "devDependencies": { + "@types/webextension-polyfill": "^0.10.0", + "tsup": "^7.0.0", + "webext-bridge": "^6.0.1", + "webextension-polyfill": "^0.10.0" + } +} diff --git a/packages/devtools-webext/src/content.ts b/packages/devtools-webext/src/content.ts new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/devtools-webext/src/devtools.ts b/packages/devtools-webext/src/devtools.ts new file mode 100644 index 0000000000..967a2308cd --- /dev/null +++ b/packages/devtools-webext/src/devtools.ts @@ -0,0 +1,3 @@ +import browser from 'webextension-polyfill' + +browser.devtools.panels.create('Nuxt', 'icon.png', 'panel.html') diff --git a/packages/devtools-webext/src/panel.ts b/packages/devtools-webext/src/panel.ts new file mode 100644 index 0000000000..66b753850f --- /dev/null +++ b/packages/devtools-webext/src/panel.ts @@ -0,0 +1,61 @@ +import browser from 'webextension-polyfill' + +async function run() { + const [result, isException] = await browser.devtools.inspectedWindow.eval('__NUXT_DEVTOOLS__') + console.log({ result, isException }) + + if (!result?.url) + return noDevTools() + + // #1 - inline html + // const origin = new URL(result.url).origin + // const html = await fetch(result.url).then(res => res.text()) + // const body = html.match(/]*>([\s\S]*)<\/body>/i) + // ?.[1] + // ?.replace(/ src="\//, ` src="${origin}/`) + + // if (!body) + // return noDevTools() + + // const div = document.createElement('div') + // div.innerHTML = body + // document.body.appendChild(div) + + // #2 iframe + const iframe = document.createElement('iframe') + iframe.src = result.url + iframe.style.border = 'none' + iframe.style.outline = 'none' + iframe.style.width = '100vw' + iframe.style.height = '100vh' + document.body.appendChild(iframe) + + // #3 - Import inline + // const html = await fetch(result.url).then(res => res.text()) + // const elements = (new DOMParser().parseFromString(html, 'text/html')).body.children + // const origin = new URL(result.url).origin + + // const div = document.createElement('div') + // div.id = '__nuxt' + // document.body.appendChild(div) + + // for (const element of elements) { + // if (element.tagName === 'SCRIPT') { + // if ('src' in element && element.src) { + // const url = new URL(element.src as string) + // import(origin + url.pathname) + // } + // } + // else { + // document.body.appendChild(element) + // } + // } +} + +function noDevTools() { + const div = document.createElement('div') + div.innerText = 'Nuxt devtools not found' + document.body.appendChild(div) +} + +run() diff --git a/packages/devtools-webext/tsup.config.ts b/packages/devtools-webext/tsup.config.ts new file mode 100644 index 0000000000..e2b8362192 --- /dev/null +++ b/packages/devtools-webext/tsup.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: [ + './src/*.ts', + ], + outDir: './extension/dist', + format: ['iife'], + outExtension() { + return { js: '.js' } + }, +}) diff --git a/packages/devtools/client/composables/client.ts b/packages/devtools/client/composables/client.ts index 084e138ebb..fc3e616c70 100644 --- a/packages/devtools/client/composables/client.ts +++ b/packages/devtools/client/composables/client.ts @@ -1,6 +1,7 @@ import type { Lang } from 'shiki-es' import type { NuxtDevtoolsClient, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, VueInspectorData } from '@nuxt/devtools-kit/types' import type { Unhead } from '@unhead/schema' +import { version } from '../../package.json' import { renderMarkdown } from './client-services/markdown' import { renderCodeHighlight } from './client-services/shiki' import { extendedRpcMap, rpc } from './rpc' @@ -41,7 +42,9 @@ export function useInjectionClient(): ComputedRef { const client = useClient() const mode = useColorMode() - return computed(() => ({ + return computed(() => ({ + url: location.href, + version, host: client.value, devtools: { rpc, diff --git a/packages/devtools/src/runtime/plugins/devtools.client.ts b/packages/devtools/src/runtime/plugins/devtools.client.ts index f5890725ea..a174f933d1 100644 --- a/packages/devtools/src/runtime/plugins/devtools.client.ts +++ b/packages/devtools/src/runtime/plugins/devtools.client.ts @@ -20,6 +20,8 @@ export default defineNuxtPlugin((nuxt: any) => { return } catch (e) { + // Cross-origin + return } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ffc3b11bb4..d29f3dad54 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -459,6 +459,21 @@ importers: specifier: ^3.5.3 version: 3.5.3(@parcel/watcher@2.1.0)(@types/node@20.3.1)(eslint@8.42.0)(rollup@3.23.0)(typescript@5.1.3)(vue-tsc@1.6.5) + packages/devtools-webext: + devDependencies: + '@types/webextension-polyfill': + specifier: ^0.10.0 + version: 0.10.0 + tsup: + specifier: ^7.0.0 + version: 7.0.0(postcss@8.4.24)(typescript@5.1.3) + webext-bridge: + specifier: ^6.0.1 + version: 6.0.1 + webextension-polyfill: + specifier: ^0.10.0 + version: 0.10.0 + packages/devtools-wizard: dependencies: consola: @@ -1027,6 +1042,15 @@ packages: requiresBuild: true optional: true + /@esbuild/android-arm64@0.18.5: + resolution: {integrity: sha512-410IPUj7ZOxZ2dwK0B7o7Nibu7YEyaLBvYOfYBpuA1TpY0fOkDM5r4bwn+hT8Uma06DBI4RnYNN09fn55PYInQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/android-arm@0.15.18: resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} engines: {node: '>=12'} @@ -1051,6 +1075,15 @@ packages: requiresBuild: true optional: true + /@esbuild/android-arm@0.18.5: + resolution: {integrity: sha512-+8GXQzuASxGg/rb47Z5zJe3vjOfL7RRce/DILuk6kbB/8HO0p3CPo72CbR349P2K8YP1h5NvNqU+2GDRbNJylw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/android-x64@0.16.17: resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} engines: {node: '>=12'} @@ -1067,6 +1100,15 @@ packages: requiresBuild: true optional: true + /@esbuild/android-x64@0.18.5: + resolution: {integrity: sha512-+fdfceCYwcz9OReheSWYOGaAAt03n0BnG5/UW9tyGyo15PjSOF14ylxfjvz+0atDx0S/RxyezMsH/mbnWhnC8w==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/darwin-arm64@0.16.17: resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} engines: {node: '>=12'} @@ -1083,6 +1125,15 @@ packages: requiresBuild: true optional: true + /@esbuild/darwin-arm64@0.18.5: + resolution: {integrity: sha512-L7noeTaus5xEtgd5J7u/lGrZfSiYkvZb0gOD7rvKTuuWbdGM4bunz5DUFsWBbEIlloslpOO5PDy4Hnd6mZT20A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@esbuild/darwin-x64@0.16.17: resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} engines: {node: '>=12'} @@ -1099,6 +1150,15 @@ packages: requiresBuild: true optional: true + /@esbuild/darwin-x64@0.18.5: + resolution: {integrity: sha512-eA39B8SxbxRdSSILD4AsePzvJiVao6ZaYrcTOJqg89jnnMEGR/EAh+ehV7E4GOx4WXQoWeJRP1P9JQSzIrROeg==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@esbuild/freebsd-arm64@0.16.17: resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} engines: {node: '>=12'} @@ -1115,6 +1175,15 @@ packages: requiresBuild: true optional: true + /@esbuild/freebsd-arm64@0.18.5: + resolution: {integrity: sha512-Eg1UnkTZHfsphgcy1Wj/McNModSO/F+kqtWqvtvEZc9BAgvdwxAt11BESgBczU+Gti0G2dLvHs0Sfb3gavwhGg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/freebsd-x64@0.16.17: resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} engines: {node: '>=12'} @@ -1131,6 +1200,15 @@ packages: requiresBuild: true optional: true + /@esbuild/freebsd-x64@0.18.5: + resolution: {integrity: sha512-GNTMSJ55gl7Tf5VUqVRkMJhRGzH6vI9vFBfZCj4Zjm7RgfXCWxLnTyjMgZZKT8pOzW40KD2KlrGbqwnnJWyGWw==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-arm64@0.16.17: resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} engines: {node: '>=12'} @@ -1147,6 +1225,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-arm64@0.18.5: + resolution: {integrity: sha512-r08LmhqyPRj6FtuNPBTu8BliKh6h+oNEhMkWmmR/aWs4DWjDOivyDfLGznPdgtSThL23fk1QgSBUEbuCIzjA2A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-arm@0.16.17: resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} engines: {node: '>=12'} @@ -1163,6 +1250,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-arm@0.18.5: + resolution: {integrity: sha512-6R+vEIyfEvp+gOWKSc+m6hdnhWKQYzicqONQYiDGT6qepc6OGsLEZcyFwoz6BvFx5j233CBWMcJ69eXFrwXw9A==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-ia32@0.16.17: resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} engines: {node: '>=12'} @@ -1179,6 +1275,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-ia32@0.18.5: + resolution: {integrity: sha512-ph6M9iEMc6BHgv2XuIE8qeQrQCH+2l116c8L9ysmmXYwpNXa3E7JNIu/O7hI0I9qDvh1P19AGbIh+/y0GAZijA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-loong64@0.15.18: resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==} engines: {node: '>=12'} @@ -1203,6 +1308,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-loong64@0.18.5: + resolution: {integrity: sha512-s6Nup5FMQ8R8OKJG2rSxtV40s8LRdfC73XGHGaFlGiC+2SeCyq4dl3MMfLdzLowYzyDjfc4GRrXWUNMX3kNxYA==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-mips64el@0.16.17: resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} engines: {node: '>=12'} @@ -1219,6 +1333,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-mips64el@0.18.5: + resolution: {integrity: sha512-DxW4nNDIGbivZxnJD01C5PlwKPpin8YgSwWtToCy4w4lNigT7Iaf5A+wcPT2laibdgbcgPKpPOXUg6RFGTt8xA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-ppc64@0.16.17: resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} engines: {node: '>=12'} @@ -1235,6 +1358,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-ppc64@0.18.5: + resolution: {integrity: sha512-BksOs2uYTafS+u75QiN4RoLbEMNjE192adJCBalncI3E2PWyR2i1kEs9rEghHK7pw0SD0uWgV9otRmV7G5b2lQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-riscv64@0.16.17: resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} engines: {node: '>=12'} @@ -1251,6 +1383,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-riscv64@0.18.5: + resolution: {integrity: sha512-mGv8BOJXsV7bZyjyMdeDs55CDXZ5vrY3oKa58DNRz2vPn54dREyj4BhhyWuqSuzSURJhFg7pM/1fI2vnAHGkHw==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-s390x@0.16.17: resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} engines: {node: '>=12'} @@ -1267,6 +1408,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-s390x@0.18.5: + resolution: {integrity: sha512-m4uIYyrl5znGnNHgiM/Zsw6I9Se513NqdTxeUxZ66/VDWbuUp8ACe1KOSpwF4NNxfYy6Q3W8beZsIdF4F85q8Q==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-x64@0.16.17: resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} engines: {node: '>=12'} @@ -1283,6 +1433,15 @@ packages: requiresBuild: true optional: true + /@esbuild/linux-x64@0.18.5: + resolution: {integrity: sha512-R1C7X30YjXmOZYOzx4dJ/QvRNfrkK/sDCFfcGNhlHFX6B/iodJdk81h7EhnKVUQy+3BaARxF7udd91iSSzMlbQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/netbsd-x64@0.16.17: resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} engines: {node: '>=12'} @@ -1299,6 +1458,15 @@ packages: requiresBuild: true optional: true + /@esbuild/netbsd-x64@0.18.5: + resolution: {integrity: sha512-MABnKzjMcXjO0NEYyexOhqjcrgM6dE8BXnm+lctm2x2aPpYg5iL0Ew3aABSTZyp9dS3Z4VzFu5PPoOYEw8akTQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/openbsd-x64@0.16.17: resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} engines: {node: '>=12'} @@ -1315,6 +1483,15 @@ packages: requiresBuild: true optional: true + /@esbuild/openbsd-x64@0.18.5: + resolution: {integrity: sha512-aU7R0tLIUMaQuAgBjKrq02Z98rcY9Pxk76hynSqcGeld2C/ro1uBbS2i9rh7vdwBAY0rG08Og4wnDnlx5rU+fQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + /@esbuild/sunos-x64@0.16.17: resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} engines: {node: '>=12'} @@ -1331,6 +1508,15 @@ packages: requiresBuild: true optional: true + /@esbuild/sunos-x64@0.18.5: + resolution: {integrity: sha512-ngm3fVv2VxufI8zH/Phk0mYkgvFjFGnS+l7uxxd20mmeLTNI/8OXDJpNqTUbvzJh3tqhI/Gof0N2+5xJbqEaxA==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-arm64@0.16.17: resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} engines: {node: '>=12'} @@ -1347,6 +1533,15 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-arm64@0.18.5: + resolution: {integrity: sha512-XqpS89+MGLzR8YtQQkBYsLCfAv1ySflMb+FEH99rOp6kOPv/ORO+ujEB5ICDBZZbvYqB75uFrNELo1BVEQbS3g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-ia32@0.16.17: resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} engines: {node: '>=12'} @@ -1363,6 +1558,15 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-ia32@0.18.5: + resolution: {integrity: sha512-V3xj/nb9uie0I4mn1f8nPZSgHldtNJrqTKYjTyMPMBnHbMYF5Loz8ZHsp7+La8kI6NxIF1ClQ9XBV+G3RtSkww==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@esbuild/win32-x64@0.16.17: resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} engines: {node: '>=12'} @@ -1379,6 +1583,15 @@ packages: requiresBuild: true optional: true + /@esbuild/win32-x64@0.18.5: + resolution: {integrity: sha512-gMxWvQeTQWDpa8ExPP41al+Ho7HyK24h7y41JdGKqE24KzXXQPxESUtrCoIES+HwF+OGq2smtibU9UvZ8WH3JQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@eslint-community/eslint-utils@4.4.0(eslint@8.42.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2478,6 +2691,14 @@ packages: /@types/web-bluetooth@0.0.17: resolution: {integrity: sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==} + /@types/webextension-polyfill@0.10.0: + resolution: {integrity: sha512-If4EcaHzYTqcbNMp/FdReVdRmLL/Te42ivnJII551bYjhX19bWem5m14FERCqdJA732OloGuxCRvLBvcMGsn4A==} + dev: true + + /@types/webextension-polyfill@0.8.3: + resolution: {integrity: sha512-GN+Hjzy9mXjWoXKmaicTegv3FJ0WFZ3aYz77Wk8TMp1IY3vEzvzj1vnsa0ggV7vMI1i+PUxe4qqnIJKCzf9aTg==} + dev: true + /@types/which@3.0.0: resolution: {integrity: sha512-ASCxdbsrwNfSMXALlC3Decif9rwDMu+80KGp5zI2RLRotfMsTv7fHL8W8VDp24wymzDyIFudhUeSCugrgRFfHQ==} dev: true @@ -3720,6 +3941,10 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} + /any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + dev: true + /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -4074,6 +4299,16 @@ packages: dependencies: run-applescript: 5.0.0 + /bundle-require@4.0.1(esbuild@0.18.5): + resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.17' + dependencies: + esbuild: 0.18.5 + load-tsconfig: 0.2.5 + dev: true + /busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} @@ -4467,6 +4702,11 @@ packages: /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + /commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + dev: true + /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -5548,6 +5788,36 @@ packages: '@esbuild/win32-ia32': 0.17.19 '@esbuild/win32-x64': 0.17.19 + /esbuild@0.18.5: + resolution: {integrity: sha512-ztF1Z53Mc8ijEo1ZWFduHZXIqRWufo76JHm1ikvhGjIzO1mj84LdKXSGmRzahfgvWSwky48MkT+o5yUIkQtDPA==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.18.5 + '@esbuild/android-arm64': 0.18.5 + '@esbuild/android-x64': 0.18.5 + '@esbuild/darwin-arm64': 0.18.5 + '@esbuild/darwin-x64': 0.18.5 + '@esbuild/freebsd-arm64': 0.18.5 + '@esbuild/freebsd-x64': 0.18.5 + '@esbuild/linux-arm': 0.18.5 + '@esbuild/linux-arm64': 0.18.5 + '@esbuild/linux-ia32': 0.18.5 + '@esbuild/linux-loong64': 0.18.5 + '@esbuild/linux-mips64el': 0.18.5 + '@esbuild/linux-ppc64': 0.18.5 + '@esbuild/linux-riscv64': 0.18.5 + '@esbuild/linux-s390x': 0.18.5 + '@esbuild/linux-x64': 0.18.5 + '@esbuild/netbsd-x64': 0.18.5 + '@esbuild/openbsd-x64': 0.18.5 + '@esbuild/sunos-x64': 0.18.5 + '@esbuild/win32-arm64': 0.18.5 + '@esbuild/win32-ia32': 0.18.5 + '@esbuild/win32-x64': 0.18.5 + dev: true + /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -6452,6 +6722,17 @@ packages: path-scurry: 1.9.2 dev: true + /glob@7.1.6: + resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -7314,6 +7595,11 @@ packages: '@sideway/pinpoint': 2.0.0 dev: false + /joycon@3.1.1: + resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} + engines: {node: '>=10'} + dev: true + /js-beautify@1.14.6: resolution: {integrity: sha512-GfofQY5zDp+cuHc+gsEXKPpNw2KbPddreEo35O6jT6i0RVK6LhsoYBhq5TvK4/n74wnA0QbK8gGd+jUZwTMKJw==} engines: {node: '>=10'} @@ -7563,6 +7849,11 @@ packages: strip-bom: 3.0.0 dev: true + /load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} @@ -7630,6 +7921,10 @@ packages: /lodash.pick@4.4.0: resolution: {integrity: sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==} + /lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + dev: true + /lodash.template@4.5.0: resolution: {integrity: sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==} dependencies: @@ -8524,6 +8819,19 @@ packages: resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + dev: true + + /nanoevents@6.0.2: + resolution: {integrity: sha512-FRS2otuFcPPYDPYViNWQ42+1iZqbXydinkRHTHFxrF4a1CpBfmydR9zkI44WSXAXCyPrkcGtPk5CnpW6Y3lFKQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + /nanoid@3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -9457,6 +9765,11 @@ packages: engines: {node: '>=0.10.0'} dev: false + /pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + dev: true + /pkg-types@1.0.3: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: @@ -9576,6 +9889,23 @@ packages: read-cache: 1.0.0 resolve: 1.22.2 + /postcss-load-config@4.0.1(postcss@8.4.24): + resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.1.0 + postcss: 8.4.24 + yaml: 2.3.0 + dev: true + /postcss-merge-longhand@6.0.0(postcss@8.4.24): resolution: {integrity: sha512-4VSfd1lvGkLTLYcxFuISDtWUfFS4zXe0FpF149AyziftPFQIWxjvFSKhA4MIxMe4XM3yTDgQMbSNgzIVxChbIg==} engines: {node: ^14 || ^16 || >=18.0} @@ -10384,6 +10714,13 @@ packages: upper-case-first: 2.0.2 dev: true + /serialize-error@9.1.1: + resolution: {integrity: sha512-6uZQLGyUkNA4N+Zii9fYukmNu9PEA1F5rqcwXzN/3LtBjwl2dFBbVZ1Zyn08/CGkB4H440PIemdOQBt1Wvjbrg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + type-fest: 2.19.0 + dev: true + /serialize-javascript@6.0.1: resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} dependencies: @@ -10613,6 +10950,13 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} + /source-map@0.8.0-beta.0: + resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} + engines: {node: '>= 8'} + dependencies: + whatwg-url: 7.1.0 + dev: true + /space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: true @@ -10827,6 +11171,20 @@ packages: postcss: 8.4.24 postcss-selector-parser: 6.0.13 + /sucrase@3.32.0: + resolution: {integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==} + engines: {node: '>=8'} + hasBin: true + dependencies: + '@jridgewell/gen-mapping': 0.3.3 + commander: 4.1.1 + glob: 7.1.6 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + dev: true + /supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} engines: {node: '>=4'} @@ -10998,6 +11356,19 @@ packages: engines: {vscode: ^1.43.0} dev: true + /thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + dependencies: + thenify: 3.3.1 + dev: true + + /thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + dependencies: + any-promise: 1.3.0 + dev: true + /through2@2.0.5: resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} dependencies: @@ -11045,6 +11416,10 @@ packages: /tiny-invariant@1.3.1: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} + /tiny-uid@1.1.2: + resolution: {integrity: sha512-0beRFXR+fv4C40ND2PqgNjq6iyB1dKXciKJjslLw0kPYCcR82aNd2b+Tt2yy06LimIlvtoehgvrm/fUZCutSfg==} + dev: true + /tinybench@2.5.0: resolution: {integrity: sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==} dev: true @@ -11103,6 +11478,17 @@ packages: /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + /tr46@1.0.1: + resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + dependencies: + punycode: 2.3.0 + dev: true + + /tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + dev: true + /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} dev: true @@ -11116,6 +11502,10 @@ packages: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: true + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + dev: true + /tsconfig-paths@3.14.2: resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} dependencies: @@ -11132,6 +11522,43 @@ packages: /tslib@2.5.2: resolution: {integrity: sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA==} + /tsup@7.0.0(postcss@8.4.24)(typescript@5.1.3): + resolution: {integrity: sha512-yYARDRkPq07mO3YUXTvF12ISwWQG57Odve8aFEgLdHyeGungxuKxb19yf9G0W8y59SZFkLnRj1gkoVk1gd5fbQ==} + engines: {node: '>=16.14'} + hasBin: true + peerDependencies: + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.1.0' + peerDependenciesMeta: + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true + dependencies: + bundle-require: 4.0.1(esbuild@0.18.5) + cac: 6.7.14 + chokidar: 3.5.3 + debug: 4.3.4 + esbuild: 0.18.5 + execa: 5.1.1 + globby: 11.1.0 + joycon: 3.1.1 + postcss: 8.4.24 + postcss-load-config: 4.0.1(postcss@8.4.24) + resolve-from: 5.0.0 + rollup: 3.23.0 + source-map: 0.8.0-beta.0 + sucrase: 3.32.0 + tree-kill: 1.2.2 + typescript: 5.1.3 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true + /tsutils@3.21.0(typescript@5.1.3): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} @@ -12376,9 +12803,31 @@ packages: resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} engines: {node: '>= 8'} + /webext-bridge@6.0.1: + resolution: {integrity: sha512-GruIrN+vNwbxVCi8UW4Dqk5YkcGA9V0ZfJ57jXP9JXHbrsDs5k2N6NNYQR5e+wSCnQpGYOGAGihwUpKlhg8QIw==} + dependencies: + '@types/webextension-polyfill': 0.8.3 + nanoevents: 6.0.2 + serialize-error: 9.1.1 + tiny-uid: 1.1.2 + webextension-polyfill: 0.9.0 + dev: true + + /webextension-polyfill@0.10.0: + resolution: {integrity: sha512-c5s35LgVa5tFaHhrZDnr3FpQpjj1BB+RXhLTYUxGqBVN460HkbM8TBtEqdXWbpTKfzwCcjAZVF7zXCYSKtcp9g==} + dev: true + + /webextension-polyfill@0.9.0: + resolution: {integrity: sha512-LTtHb0yR49xa9irkstDxba4GATDAcDw3ncnFH9RImoFwDlW47U95ME5sn5IiQX2ghfaECaf6xyXM8yvClIBkkw==} + dev: true + /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + /webidl-conversions@4.0.2: + resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} + dev: true + /webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} @@ -12453,6 +12902,14 @@ packages: tr46: 0.0.3 webidl-conversions: 3.0.1 + /whatwg-url@7.1.0: + resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} + dependencies: + lodash.sortby: 4.7.0 + tr46: 1.0.1 + webidl-conversions: 4.0.2 + dev: true + /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: From 0348d09d1078554512d1d2f47f7ae9082a0cff1f Mon Sep 17 00:00:00 2001 From: Anthony Fu Date: Wed, 21 Jun 2023 11:24:21 +0200 Subject: [PATCH 2/4] feat: it's working :) --- .npmrc | 1 + package.json | 6 +- packages/devtools-ui-kit/package.json | 10 +- .../extension/{panel.html => index.html} | 1 - .../devtools-webext/extension/manifest.json | 2 +- packages/devtools-webext/src/devtools.ts | 2 +- packages/devtools-webext/src/panel.ts | 76 +- packages/devtools-wizard/package.json | 4 +- .../client/components/AssetFontPreview.vue | 2 +- .../client/components/AssetPreview.vue | 2 +- .../devtools/client/components/TabIcon.vue | 2 +- packages/devtools/client/composables/utils.ts | 7 + packages/devtools/package.json | 22 +- .../src/runtime/plugins/devtools.client.ts | 3 + .../src/runtime/plugins/view/Frame.vue | 3 +- .../src/runtime/plugins/view/FrameBox.vue | 12 +- .../src/runtime/plugins/view/constants.ts | 1 + .../devtools/src/runtime/shared/client.d.ts | 28 + playgrounds/module-starter/package.json | 4 +- pnpm-lock.yaml | 1056 ++++++----------- 20 files changed, 489 insertions(+), 755 deletions(-) rename packages/devtools-webext/extension/{panel.html => index.html} (91%) create mode 100644 packages/devtools/src/runtime/plugins/view/constants.ts create mode 100644 packages/devtools/src/runtime/shared/client.d.ts diff --git a/.npmrc b/.npmrc index 62d44c729a..eb48625697 100644 --- a/.npmrc +++ b/.npmrc @@ -2,3 +2,4 @@ shamefully-hoist=true ignore-workspace-root-check=true strict-peer-dependencies=false auto-install-peers=true +resolution-mode=highest diff --git a/package.json b/package.json index 0a191b0fd4..e396e171fb 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "type": "module", "version": "0.6.1", "private": false, - "packageManager": "pnpm@8.6.2", + "packageManager": "pnpm@8.6.3", "scripts": { "build": "pnpm -r --filter=\"./packages/**/*\" run build", "stub": "pnpm -r run stub", @@ -32,7 +32,7 @@ "@unocss/eslint-config": "^0.53.1", "bumpp": "^9.1.1", "conventional-changelog-cli": "^3.0.0", - "eslint": "8.42.0", + "eslint": "8.43.0", "esno": "^0.16.3", "execa": "^7.1.1", "gray-matter": "^4.0.3", @@ -46,7 +46,7 @@ "ua-parser-js": "^1.0.35", "unocss": "^0.53.1", "vite-hot-client": "^0.2.1", - "vue-tsc": "^1.6.5" + "vue-tsc": "^1.8.1" }, "simple-git-hooks": { "pre-commit": "pnpm lint-staged" diff --git a/packages/devtools-ui-kit/package.json b/packages/devtools-ui-kit/package.json index dcc2301081..b335cb7ca5 100644 --- a/packages/devtools-ui-kit/package.json +++ b/packages/devtools-ui-kit/package.json @@ -34,8 +34,8 @@ }, "dependencies": { "@iconify-json/carbon": "^1.1.18", - "@iconify-json/logos": "^1.1.32", - "@iconify-json/ri": "^1.1.9", + "@iconify-json/logos": "^1.1.33", + "@iconify-json/ri": "^1.1.10", "@iconify-json/tabler": "^1.1.79", "@nuxt/devtools": "workspace:*", "@nuxt/devtools-kit": "workspace:*", @@ -47,9 +47,9 @@ "@unocss/preset-icons": "^0.53.1", "@unocss/preset-mini": "^0.53.1", "@unocss/reset": "^0.53.1", - "@vueuse/core": "^10.1.2", - "@vueuse/integrations": "^10.1.2", - "@vueuse/nuxt": "^10.1.2", + "@vueuse/core": "^10.2.0", + "@vueuse/integrations": "^10.2.0", + "@vueuse/nuxt": "^10.2.0", "defu": "^6.1.2", "focus-trap": "^7.4.3", "unocss": "^0.53.1", diff --git a/packages/devtools-webext/extension/panel.html b/packages/devtools-webext/extension/index.html similarity index 91% rename from packages/devtools-webext/extension/panel.html rename to packages/devtools-webext/extension/index.html index 0a705d30aa..e04c867aa3 100644 --- a/packages/devtools-webext/extension/panel.html +++ b/packages/devtools-webext/extension/index.html @@ -5,7 +5,6 @@