diff --git a/@xen-orchestra/lite/package.json b/@xen-orchestra/lite/package.json index 2e315d480..29519ad6a 100644 --- a/@xen-orchestra/lite/package.json +++ b/@xen-orchestra/lite/package.json @@ -57,7 +57,6 @@ "postcss-nested": "^6.0.0", "typescript": "^4.9.3", "vite": "^4.3.8", - "vite-plugin-pages": "^0.29.1", "vue-tsc": "^1.6.5" }, "private": true, diff --git a/@xen-orchestra/lite/src/components/AppMarkdown.vue b/@xen-orchestra/lite/src/components/AppMarkdown.vue index f564c3c64..eecc8208c 100644 --- a/@xen-orchestra/lite/src/components/AppMarkdown.vue +++ b/@xen-orchestra/lite/src/components/AppMarkdown.vue @@ -5,7 +5,6 @@ diff --git a/@xen-orchestra/lite/src/components/UnreachableHostsModal.vue b/@xen-orchestra/lite/src/components/UnreachableHostsModal.vue index 0fa25fd0f..13e0544d0 100644 --- a/@xen-orchestra/lite/src/components/UnreachableHostsModal.vue +++ b/@xen-orchestra/lite/src/components/UnreachableHostsModal.vue @@ -31,7 +31,7 @@ import { faServer } from "@fortawesome/free-solid-svg-icons"; import UiModal from "@/components/ui/UiModal.vue"; import UiButton from "@/components/ui/UiButton.vue"; import { computed, ref, watch } from "vue"; -import { difference } from "lodash"; +import { difference } from "lodash-es"; import { useHostStore } from "@/stores/host.store"; const { records: hosts } = useHostStore().subscribe(); diff --git a/@xen-orchestra/lite/src/components/charts/ChartSummary.vue b/@xen-orchestra/lite/src/components/charts/ChartSummary.vue index ae68c535f..e69de29bb 100644 --- a/@xen-orchestra/lite/src/components/charts/ChartSummary.vue +++ b/@xen-orchestra/lite/src/components/charts/ChartSummary.vue @@ -1,63 +0,0 @@ - - - - - diff --git a/@xen-orchestra/lite/src/components/component-story/ComponentStory.vue b/@xen-orchestra/lite/src/components/component-story/ComponentStory.vue index 706812d81..804ceb23a 100644 --- a/@xen-orchestra/lite/src/components/component-story/ComponentStory.vue +++ b/@xen-orchestra/lite/src/components/component-story/ComponentStory.vue @@ -273,13 +273,9 @@ const documentation = ref(); const route = useRoute(); -const mdPaths = import.meta.glob("../../stories/*.md", { as: "raw" }); - -if (route.meta.storyMdPath !== undefined && route.meta.storyMdPath in mdPaths) { - mdPaths[route.meta.storyMdPath]().then((md) => { - documentation.value = md; - }); -} +route.meta.storyMdLoader?.().then((md) => { + documentation.value = md; +}); const applyPreset = (preset: { props?: Record; diff --git a/@xen-orchestra/lite/src/components/pool/dashboard/PoolDashboardNetworkChart.vue b/@xen-orchestra/lite/src/components/pool/dashboard/PoolDashboardNetworkChart.vue index 91e37a52c..5b20cf346 100644 --- a/@xen-orchestra/lite/src/components/pool/dashboard/PoolDashboardNetworkChart.vue +++ b/@xen-orchestra/lite/src/components/pool/dashboard/PoolDashboardNetworkChart.vue @@ -12,15 +12,18 @@ "; - code = HLJS.highlight(str, { language: "typescript" }).value; + code = highlight(str, { language: "typescript" }).value; break; case VUE_TAG.STYLE: openTag = '"; - code = HLJS.highlight(str, { language: "scss" }).value; + code = highlight(str, { language: "css" }).value; break; } - const openTagHtml = HLJS.highlight(openTag, { language: "xml" }).value; - const closeTagHtml = HLJS.highlight(closeTag, { language: "xml" }).value; + const openTagHtml = highlight(openTag, { language: "xml" }).value; + const closeTagHtml = highlight(closeTag, { language: "xml" }).value; return `${openTagHtml}${copyable(code)}${closeTagHtml}`; } diff --git a/@xen-orchestra/lite/src/router/index.ts b/@xen-orchestra/lite/src/router/index.ts index c13089418..5a4eb61c3 100644 --- a/@xen-orchestra/lite/src/router/index.ts +++ b/@xen-orchestra/lite/src/router/index.ts @@ -1,24 +1,12 @@ import pool from "@/router/pool"; +import story from "@/router/story"; import vm from "@/router/vm"; import HomeView from "@/views/HomeView.vue"; -import HostDashboardView from "@/views/host/HostDashboardView.vue"; -import HostRootView from "@/views/host/HostRootView.vue"; -import PageNotFoundView from "@/views/PageNotFoundView.vue"; -import SettingsView from "@/views/settings/SettingsView.vue"; -import StoryView from "@/views/StoryView.vue"; -import storiesRoutes from "virtual:stories"; import { createRouter, createWebHashHistory } from "vue-router"; const router = createRouter({ history: createWebHashHistory(), routes: [ - { - path: "/story", - name: "story", - component: StoryView, - children: storiesRoutes, - meta: { hasStoryNav: true }, - }, { path: "/", name: "home", @@ -27,35 +15,28 @@ const router = createRouter({ { path: "/settings", name: "settings", - component: SettingsView, + component: () => import("@/views/settings/SettingsView.vue"), }, + story, pool, vm, { path: "/host/:uuid", - component: HostRootView, + component: () => import("@/views/host/HostRootView.vue"), children: [ { path: "", name: "host.dashboard", - component: HostDashboardView, + component: () => import("@/views/host/HostDashboardView.vue"), }, ], }, { path: "/:pathMatch(.*)*", name: "notFound", - component: PageNotFoundView, + component: () => import("@/views/PageNotFoundView.vue"), }, ], }); -if (import.meta.env.DEV) { - router.addRoute("story", { - path: "", - name: "story-home", - component: () => import("@/views/story/HomeView.vue"), - }); -} - export default router; diff --git a/@xen-orchestra/lite/src/router/pool.ts b/@xen-orchestra/lite/src/router/pool.ts index a669d84fc..a02d50cdf 100644 --- a/@xen-orchestra/lite/src/router/pool.ts +++ b/@xen-orchestra/lite/src/router/pool.ts @@ -1,13 +1,5 @@ -import PoolAlarmsView from "@/views/pool/PoolAlarmsView.vue"; import PoolDashboardView from "@/views/pool/PoolDashboardView.vue"; -import PoolHostsView from "@/views/pool/PoolHostsView.vue"; -import PoolNetworkView from "@/views/pool/PoolNetworkView.vue"; import PoolRootView from "@/views/pool/PoolRootView.vue"; -import PoolStatsView from "@/views/pool/PoolStatsView.vue"; -import PoolStorageView from "@/views/pool/PoolStorageView.vue"; -import PoolSystemView from "@/views/pool/PoolSystemView.vue"; -import PoolTasksView from "@/views/pool/PoolTasksView.vue"; -import PoolVmsView from "@/views/pool/PoolVmsView.vue"; export default { path: "/pool/:uuid", @@ -22,42 +14,42 @@ export default { { path: "alarms", name: "pool.alarms", - component: PoolAlarmsView, + component: () => import("@/views/pool/PoolAlarmsView.vue"), }, { path: "stats", name: "pool.stats", - component: PoolStatsView, + component: () => import("@/views/pool/PoolStatsView.vue"), }, { path: "system", name: "pool.system", - component: PoolSystemView, + component: () => import("@/views/pool/PoolSystemView.vue"), }, { path: "network", name: "pool.network", - component: PoolNetworkView, + component: () => import("@/views/pool/PoolNetworkView.vue"), }, { path: "storage", name: "pool.storage", - component: PoolStorageView, + component: () => import("@/views/pool/PoolStorageView.vue"), }, { path: "tasks", name: "pool.tasks", - component: PoolTasksView, + component: () => import("@/views/pool/PoolTasksView.vue"), }, { path: "hosts", name: "pool.hosts", - component: PoolHostsView, + component: () => import("@/views/pool/PoolHostsView.vue"), }, { path: "vms", name: "pool.vms", - component: PoolVmsView, + component: () => import("@/views/pool/PoolVmsView.vue"), }, ], }; diff --git a/@xen-orchestra/lite/src/router/story.ts b/@xen-orchestra/lite/src/router/story.ts new file mode 100644 index 000000000..2e0165512 --- /dev/null +++ b/@xen-orchestra/lite/src/router/story.ts @@ -0,0 +1,54 @@ +import type { RouteRecordRaw } from "vue-router"; + +const componentLoaders = import.meta.glob("@/stories/*.story.vue"); +const docLoaders = import.meta.glob("@/stories/*.story.md", { as: "raw" }); + +const children: RouteRecordRaw[] = Object.entries(componentLoaders).map( + ([path, componentLoader]) => { + const basename = path.replace(/^\/src\/stories\/(.*)\.story.vue$/, "$1"); + const docPath = path.replace(/\.vue$/, ".md"); + const routeName = `story-${basename}`; + + return { + name: routeName, + path: basename, + component: componentLoader, + meta: { + isStory: true, + storyTitle: basenameToStoryTitle(basename), + storyMdLoader: docLoaders[docPath], + }, + }; + } +); + +if (import.meta.env.DEV) { + children.push({ + path: "", + name: "story-home", + component: () => import("@/views/story/HomeView.vue"), + }); +} + +export default { + path: "/story", + name: "story", + component: () => import("@/views/StoryView.vue"), + children, + meta: { hasStoryNav: true }, +}; + +/** + * Transform the route basename to a page title. + * + * Example: + * Filename: `my-component.story.vue` + * Basename: `my-component` + * Page title: `My Component` + */ +function basenameToStoryTitle(basename: string) { + return basename + .split("-") + .map((s) => `${s.charAt(0).toUpperCase()}${s.substring(1)}`) + .join(" "); +} diff --git a/@xen-orchestra/lite/src/types/router.d.ts b/@xen-orchestra/lite/src/types/router.d.ts index 2f032e864..6a4107cc9 100644 --- a/@xen-orchestra/lite/src/types/router.d.ts +++ b/@xen-orchestra/lite/src/types/router.d.ts @@ -3,7 +3,7 @@ declare module "vue-router" { hasStoryNav?: boolean; isStory?: boolean; storyTitle?: string; - storyMdPath?: string; + storyMdLoader?: () => Promise; } } export {}; diff --git a/@xen-orchestra/lite/vite.config.ts b/@xen-orchestra/lite/vite.config.ts index ef6523291..a19f87a2d 100644 --- a/@xen-orchestra/lite/vite.config.ts +++ b/@xen-orchestra/lite/vite.config.ts @@ -1,9 +1,8 @@ import vueI18n from "@intlify/unplugin-vue-i18n/vite"; import vue from "@vitejs/plugin-vue"; -import { basename, resolve } from "path"; +import { resolve } from "path"; import { fileURLToPath, URL } from "url"; import { defineConfig } from "vite"; -import pages from "vite-plugin-pages"; // https://vitejs.dev/config/ export default defineConfig({ @@ -16,23 +15,6 @@ export default defineConfig({ vueI18n({ include: resolve(__dirname, "src/locales/**"), }), - pages({ - moduleId: "virtual:stories", - dirs: [{ dir: "src/stories", baseRoute: "story" }], - extensions: ["story.vue"], - extendRoute: (route) => { - const storyBaseName = basename(route.component as string, ".vue"); - return { - ...route, - path: route.path.replace(".story", ""), - meta: { - isStory: true, - storyTitle: routeNameToStoryTitle(route.name), - storyMdPath: `../../stories/${storyBaseName}.md`, - }, - }; - }, - }), ], define: { XO_LITE_VERSION: JSON.stringify(process.env.npm_package_version), @@ -46,6 +28,25 @@ export default defineConfig({ // https://vitejs.dev/guide/dep-pre-bundling.html#monorepos-and-linked-dependencies build: { + rollupOptions: { + output: { + manualChunks: (id) => { + if (id.includes("node_modules")) { + if (id.includes("vue") || id.includes("pinia")) { + return "vue"; + } + + if (id.includes("lodash-es")) { + return "lodash-es"; + } + + if (id.includes("echarts")) { + return "charts"; + } + } + }, + }, + }, commonjsOptions: { include: [/complex-matcher/, /node_modules/], }, @@ -58,19 +59,3 @@ export default defineConfig({ }, }, }); - -/** - * Transform the route name generated by Vite Plugin Pages to a page title. - * - * Example: - * Filename: `my-component.story.vue` - * Route name: `story-my-component.story` - * Page title: `My Component` - */ -function routeNameToStoryTitle(routeName: string) { - return routeName - .replace(/^story-(.*)\.story$/, "$1") - .split("-") - .map((s) => `${s.charAt(0).toUpperCase()}${s.substring(1)}`) - .join(" "); -} diff --git a/yarn.lock b/yarn.lock index 356bf2bea..4dfc48cbe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3262,13 +3262,6 @@ resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-4.0.0.tgz#ee7b6e798f8deb2d9640675f8811d0253aaa1946" integrity sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw== -"@types/debug@^4.1.7": - version "4.1.8" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.8.tgz#cef723a5d0a90990313faec2d1e22aee5eecb317" - integrity sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ== - dependencies: - "@types/ms" "*" - "@types/estree@^1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" @@ -3407,11 +3400,6 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/ms@*": - version "0.7.31" - resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197" - integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== - "@types/node@*", "@types/node@>=14", "@types/node@^20.2.3": version "20.3.1" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe" @@ -7859,30 +7847,6 @@ deep-equal@^1.0.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" -deep-equal@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.1.tgz#c72ab22f3a7d3503a4ca87dde976fe9978816739" - integrity sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ== - dependencies: - array-buffer-byte-length "^1.0.0" - call-bind "^1.0.2" - es-get-iterator "^1.1.3" - get-intrinsic "^1.2.0" - is-arguments "^1.1.1" - is-array-buffer "^3.0.2" - is-date-object "^1.0.5" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" - isarray "^2.0.5" - object-is "^1.1.5" - object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.5.0" - side-channel "^1.0.4" - which-boxed-primitive "^1.0.2" - which-collection "^1.0.1" - which-typed-array "^1.1.9" - deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" @@ -8698,21 +8662,6 @@ es-array-method-boxes-properly@^1.0.0: resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== -es-get-iterator@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz#3ef87523c5d464d41084b2c3c9c214f1199763d6" - integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" - has-symbols "^1.0.3" - is-arguments "^1.1.1" - is-map "^2.0.2" - is-set "^2.0.2" - is-string "^1.0.7" - isarray "^2.0.5" - stop-iteration-iterator "^1.0.0" - es-set-tostringtag@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" @@ -9211,13 +9160,6 @@ espree@^9.3.1, espree@^9.5.2: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.4.1" -esprima-extract-comments@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/esprima-extract-comments/-/esprima-extract-comments-1.1.0.tgz#0dacab567a5900240de6d344cf18c33617becbc9" - integrity sha512-sBQUnvJwpeE9QnPrxh7dpI/dp67erYG4WXEAreAMoelPRpMR7NWb4YtwRPn9b+H1uLQKl/qS8WYmyaljTpjIsw== - dependencies: - esprima "^4.0.0" - esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" @@ -9589,14 +9531,6 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -extract-comments@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/extract-comments/-/extract-comments-1.1.0.tgz#b90bca033a056bd69b8ba1c6b6b120fc2ee95c18" - integrity sha512-dzbZV2AdSSVW/4E7Ti5hZdHWbA+Z80RJsJhr5uiL10oyjl/gy7/o+HI1HwK4/WSZhlq4SNKU3oUzXlM13Qx02Q== - dependencies: - esprima-extract-comments "^1.1.0" - parse-code-context "^1.0.0" - extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -11731,7 +11665,7 @@ internal-ip@^4.3.0: default-gateway "^4.2.0" ipaddr.js "^1.9.0" -internal-slot@^1.0.3, internal-slot@^1.0.4, internal-slot@^1.0.5: +internal-slot@^1.0.3, internal-slot@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== @@ -11853,7 +11787,7 @@ is-accessor-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" -is-arguments@^1.0.4, is-arguments@^1.1.1: +is-arguments@^1.0.4: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== @@ -11964,7 +11898,7 @@ is-data-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" -is-date-object@^1.0.1, is-date-object@^1.0.5: +is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== @@ -12119,11 +12053,6 @@ is-ip@^3.1.0: dependencies: ip-regex "^4.0.0" -is-map@^2.0.1, is-map@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" - integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg== - is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" @@ -12256,11 +12185,6 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== -is-set@^2.0.1, is-set@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" - integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== - is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -12347,11 +12271,6 @@ is-valid-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== -is-weakmap@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" - integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA== - is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -12359,14 +12278,6 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" -is-weakset@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d" - integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -13623,11 +13534,6 @@ loader-utils@^2.0.0: emojis-list "^3.0.0" json5 "^2.1.2" -local-pkg@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.3.tgz#0ff361ab3ae7f1c19113d9bb97b98b905dbc4963" - integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== - locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -15671,11 +15577,6 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.5: pbkdf2 "^3.0.3" safe-buffer "^5.1.1" -parse-code-context@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-code-context/-/parse-code-context-1.0.0.tgz#718c295c593d0d19a37f898473268cc75e98de1e" - integrity sha512-OZQaqKaQnR21iqhlnPfVisFjBWjhnMl5J9MgbP8xC+EwoVqbXrq78lp+9Zb3ahmLzrIX5Us/qbvBnaS3hkH6OA== - parse-filepath@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -17769,7 +17670,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.0: +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3: version "1.5.0" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb" integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA== @@ -18944,13 +18845,6 @@ std-env@^2.2.1: dependencies: ci-info "^3.1.1" -stop-iteration-iterator@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz#6a60be0b4ee757d1ed5254858ec66b10c49285e4" - integrity sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ== - dependencies: - internal-slot "^1.0.4" - stoppable@^1.0.5, stoppable@^1.0.6: version "1.1.0" resolved "https://registry.yarnpkg.com/stoppable/-/stoppable-1.1.0.tgz#32da568e83ea488b08e4d7ea2c3bcc9d75015d5b" @@ -20674,21 +20568,6 @@ vinyl@^2.0.0, vinyl@^2.1.0: remove-trailing-separator "^1.0.1" replace-ext "^1.0.0" -vite-plugin-pages@^0.29.1: - version "0.29.1" - resolved "https://registry.yarnpkg.com/vite-plugin-pages/-/vite-plugin-pages-0.29.1.tgz#dc1eeff6975ec3a791f18637b90ffa02068fce5e" - integrity sha512-zPf4YIBuv2nOwvtEFeS+Ac4O7Ngoz5x9P0zaj0xPfCObTGEIvo/30//D2FG24UB6YedrFOaJjLq/BS/M/JDKEA== - dependencies: - "@types/debug" "^4.1.7" - debug "^4.3.4" - deep-equal "^2.2.1" - extract-comments "^1.1.0" - fast-glob "^3.2.12" - json5 "^2.2.3" - local-pkg "^0.4.3" - picocolors "^1.0.0" - yaml "^2.2.2" - vite@^4.3.8: version "4.3.9" resolved "https://registry.yarnpkg.com/vite/-/vite-4.3.9.tgz#db896200c0b1aa13b37cdc35c9e99ee2fdd5f96d" @@ -21174,16 +21053,6 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-collection@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906" - integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A== - dependencies: - is-map "^2.0.1" - is-set "^2.0.1" - is-weakmap "^2.0.1" - is-weakset "^2.0.1" - which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"