@eclipse-docks/core 0.7.130 → 0.7.132

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/api/index.js +6 -6
  2. package/dist/{api-oPg3Bv1S.js → api-DImisUWV.js} +56 -44
  3. package/dist/{api-oPg3Bv1S.js.map → api-DImisUWV.js.map} +1 -1
  4. package/dist/assets/{js-runtime-worker-DAva_aXx.js.map → js-runtime-worker-X93bOre4.js.map} +1 -1
  5. package/dist/core/events.js +1 -1
  6. package/dist/{events-B_ZxkU_G.js → events-BAE5R6TH.js} +1 -1
  7. package/dist/{events-B_ZxkU_G.js.map → events-BAE5R6TH.js.map} +1 -1
  8. package/dist/{extensions.de-Ct1DIybE.js → extensions.de-O6Sx3_t4.js} +1 -1
  9. package/dist/{extensions.de-Ct1DIybE.js.map → extensions.de-O6Sx3_t4.js.map} +1 -1
  10. package/dist/{extensions.en-DRPFtVHT.js → extensions.en-fwqJr8P-.js} +1 -1
  11. package/dist/{extensions.en-DRPFtVHT.js.map → extensions.en-fwqJr8P-.js.map} +1 -1
  12. package/dist/externals/third-party.js.map +1 -1
  13. package/dist/externals/webawesome.js +1 -1
  14. package/dist/{fastviews.de-BFxFslBz.js → fastviews.de-C-B48vwv.js} +1 -1
  15. package/dist/fastviews.de-C-B48vwv.js.map +1 -0
  16. package/dist/{fastviews.en-Cb4J_JXL.js → fastviews.en-BlAxYlHD.js} +1 -1
  17. package/dist/fastviews.en-BlAxYlHD.js.map +1 -0
  18. package/dist/{filebrowser.de-GEf6Eilh.js → filebrowser.de-LWsrI9xj.js} +1 -1
  19. package/dist/{filebrowser.de-GEf6Eilh.js.map → filebrowser.de-LWsrI9xj.js.map} +1 -1
  20. package/dist/{filebrowser.en-o0Ad5f7Z.js → filebrowser.en-C02vpzAs.js} +1 -1
  21. package/dist/{filebrowser.en-o0Ad5f7Z.js.map → filebrowser.en-C02vpzAs.js.map} +1 -1
  22. package/dist/{fs-access-DTXPsV1W.js → fs-access-Cjcg0_Me.js} +27 -25
  23. package/dist/{fs-access-DTXPsV1W.js.map → fs-access-Cjcg0_Me.js.map} +1 -1
  24. package/dist/fs-access-Dp9Fwsxk.js +2 -0
  25. package/dist/index.js +6 -6
  26. package/dist/{logger-DT0_NW3S.js → logger-CiT0Cc4g.js} +1 -1
  27. package/dist/{logger-DT0_NW3S.js.map → logger-CiT0Cc4g.js.map} +1 -1
  28. package/dist/{logterminal.de-DKp940Ox.js → logterminal.de-BP1FuxHH.js} +1 -1
  29. package/dist/{logterminal.de-DKp940Ox.js.map → logterminal.de-BP1FuxHH.js.map} +1 -1
  30. package/dist/{logterminal.en-Ci2nm0b2.js → logterminal.en-BeDRvTvb.js} +1 -1
  31. package/dist/{logterminal.en-Ci2nm0b2.js.map → logterminal.en-BeDRvTvb.js.map} +1 -1
  32. package/dist/{partname.de-v76uEl0F.js → partname.de-C0I4Wf2X.js} +1 -1
  33. package/dist/{partname.de-v76uEl0F.js.map → partname.de-C0I4Wf2X.js.map} +1 -1
  34. package/dist/{partname.en-By5aAawT.js → partname.en-CIT8z3cY.js} +1 -1
  35. package/dist/{partname.en-By5aAawT.js.map → partname.en-CIT8z3cY.js.map} +1 -1
  36. package/dist/parts/index.js +1 -1
  37. package/dist/{parts-CAt8aeU8.js → parts-DQRktiiR.js} +48 -37
  38. package/dist/parts-DQRktiiR.js.map +1 -0
  39. package/dist/{tasks.de-y2xPmQ1k.js → tasks.de-DRvUVugd.js} +1 -1
  40. package/dist/{tasks.de-y2xPmQ1k.js.map → tasks.de-DRvUVugd.js.map} +1 -1
  41. package/dist/{tasks.en-BTbFrxJj.js → tasks.en-dRDildBd.js} +1 -1
  42. package/dist/{tasks.en-BTbFrxJj.js.map → tasks.en-dRDildBd.js.map} +1 -1
  43. package/dist/vite-plugin-app-splash.js.map +1 -1
  44. package/dist/vite-plugin-local-aliases.js +1 -1
  45. package/dist/vite-plugin-local-aliases.js.map +1 -1
  46. package/dist/vite-plugin-resolve-deps.d.ts +6 -3
  47. package/dist/vite-plugin-resolve-deps.d.ts.map +1 -1
  48. package/dist/vite-plugin-resolve-deps.js +17 -15
  49. package/dist/vite-plugin-resolve-deps.js.map +1 -1
  50. package/dist/{webawesome-BGXn04Mw.js → webawesome-C0Da7hPu.js} +2 -2
  51. package/dist/{webawesome-BGXn04Mw.js.map → webawesome-C0Da7hPu.js.map} +1 -1
  52. package/dist/{widget-BqQtioK1.js → widget-DUR6wxME.js} +6 -5
  53. package/dist/{widget-BqQtioK1.js.map → widget-DUR6wxME.js.map} +1 -1
  54. package/dist/widgets/index.js +1 -1
  55. package/dist/{widgets-C9V42Mqq.js → widgets-A9XMOA_j.js} +2 -2
  56. package/dist/{widgets-C9V42Mqq.js.map → widgets-A9XMOA_j.js.map} +1 -1
  57. package/package.json +1 -1
  58. package/src/core/extensionregistry.ts +1 -1
  59. package/src/vite-plugin-resolve-deps.ts +29 -25
  60. package/dist/fastviews.de-BFxFslBz.js.map +0 -1
  61. package/dist/fastviews.en-Cb4J_JXL.js.map +0 -1
  62. package/dist/fs-access-CzOh5ot8.js +0 -2
  63. package/dist/parts-CAt8aeU8.js.map +0 -1
@@ -8,4 +8,4 @@ var tasks_de_default = {
8
8
  //#endregion
9
9
  export { ACTIVE_TASKS, ACTIVE_TASKS_TITLE, tasks_de_default as default };
10
10
 
11
- //# sourceMappingURL=tasks.de-y2xPmQ1k.js.map
11
+ //# sourceMappingURL=tasks.de-DRvUVugd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.de-y2xPmQ1k.js","names":[],"sources":["../src/components/tasks.de.json"],"sourcesContent":["{\n \"ACTIVE_TASKS\": \"Aktive Aufgaben\",\n \"ACTIVE_TASKS_TITLE\": \"Aktive Aufgaben: {taskCount}. Klicken Sie, um Details anzuzeigen.\"\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tasks.de-DRvUVugd.js","names":[],"sources":["../src/components/tasks.de.json"],"sourcesContent":["{\n \"ACTIVE_TASKS\": \"Aktive Aufgaben\",\n \"ACTIVE_TASKS_TITLE\": \"Aktive Aufgaben: {taskCount}. Klicken Sie, um Details anzuzeigen.\"\n}\n"],"mappings":""}
@@ -8,4 +8,4 @@ var tasks_en_default = {
8
8
  //#endregion
9
9
  export { ACTIVE_TASKS, ACTIVE_TASKS_TITLE, tasks_en_default as default };
10
10
 
11
- //# sourceMappingURL=tasks.en-BTbFrxJj.js.map
11
+ //# sourceMappingURL=tasks.en-dRDildBd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.en-BTbFrxJj.js","names":[],"sources":["../src/components/tasks.en.json"],"sourcesContent":["{\n \"ACTIVE_TASKS\": \"Active Tasks\",\n \"ACTIVE_TASKS_TITLE\": \"Active tasks: {taskCount}. Click to view details.\"\n}\n"],"mappings":""}
1
+ {"version":3,"file":"tasks.en-dRDildBd.js","names":[],"sources":["../src/components/tasks.en.json"],"sourcesContent":["{\n \"ACTIVE_TASKS\": \"Active Tasks\",\n \"ACTIVE_TASKS_TITLE\": \"Active tasks: {taskCount}. Click to view details.\"\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin-app-splash.js","names":[],"sources":["../src/vite-plugin-app-splash.ts"],"sourcesContent":["import type { Logger, Plugin } from 'vite';\n\nexport interface SplashLogoOptions {\n /**\n * URL for the splash logo (served from the app `public/` folder by default).\n * @default '/logo-loading.svg'\n */\n src?: string;\n /**\n * Accessible name for the logo. When set, the image is exposed to assistive tech\n * (and `aria-hidden` is not applied).\n */\n alt?: string;\n /**\n * @default 192\n */\n width?: number;\n /**\n * @default 64\n */\n height?: number;\n}\n\nexport interface AppSplashPluginOptions {\n /**\n * Logo dimensions and accessibility (`src` defaults to `/logo-loading.svg` when omitted).\n */\n logo?: SplashLogoOptions;\n /**\n * Short tagline shown under the logo on the splash screen (static HTML text).\n * The status line under the progress bar still follows `app-load-progress` events.\n */\n description?: string;\n /**\n * When false, the plugin does not modify `index.html`.\n * @default true\n */\n enabled?: boolean;\n}\n\nfunction escapeHtml(s: string): string {\n return s\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;');\n}\n\nfunction resolveLogo(\n options: AppSplashPluginOptions,\n): { src: string; alt: string; width: number; height: number } {\n const logo = options.logo ?? {};\n const src = logo.src ?? '/logo-loading.svg';\n const width = logo.width ?? 192;\n const height = logo.height ?? 64;\n const alt = logo.alt ?? '';\n return { src, alt, width, height };\n}\n\nfunction buildSplashFragment(\n logo: { src: string; alt: string; width: number; height: number },\n description: string | undefined,\n): string {\n const w = logo.width;\n const h = logo.height;\n const imgAttrs =\n logo.alt.length > 0\n ? `src=\"${escapeHtml(logo.src)}\" alt=\"${escapeHtml(logo.alt)}\" width=\"${w}\" height=\"${h}\" decoding=\"async\" style=\"display:block;width:${w}px;height:${h}px;max-width:${w}px;max-height:${h}px;min-width:${w}px;min-height:${h}px;flex-shrink:0;\"`\n : `src=\"${escapeHtml(logo.src)}\" alt=\"\" width=\"${w}\" height=\"${h}\" decoding=\"async\" style=\"display:block;width:${w}px;height:${h}px;max-width:${w}px;max-height:${h}px;min-width:${w}px;min-height:${h}px;flex-shrink:0;\" aria-hidden=\"true\"`;\n\n const desc =\n description !== undefined && description.trim().length > 0\n ? `\n <p id=\"app-splash-description\" style=\"margin:0;font-size:0.875rem;color:var(--wa-text-secondary,#888);text-align:center;max-width:min(360px,90vw);line-height:1.4;\">${escapeHtml(description.trim())}</p>`\n : '';\n\n return `\n <div id=\"app-loading-overlay\" style=\"position:fixed;inset:0;z-index:1000;background:var(--wa-background,#1a1a1a);pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;\">\n <img ${imgAttrs}/>\n ${desc}\n <div style=\"width:240px;height:3px;background:var(--wa-layer-2,#2a2a2a);border-radius:2px;overflow:hidden;\">\n <div style=\"width:40%;height:100%;background:var(--wa-color-primary,#2299dd);border-radius:2px;animation:app-loading-bar 1.5s ease-in-out infinite;\" aria-hidden=\"true\"></div>\n </div>\n <div id=\"app-load-progress\" style=\"font-size:0.8125rem;color:var(--wa-text-secondary,#888);\" aria-live=\"polite\">Starting…</div>\n </div>\n <script>\n window.addEventListener('app-load-progress', function(e) {\n var el = document.getElementById('app-load-progress');\n if (el && e.detail && e.detail.message) el.textContent = e.detail.message;\n });\n window.addEventListener('app-loaded', function() {\n var el = document.getElementById('app-loading-overlay');\n if (el) { el.style.opacity = '0'; el.style.transition = 'opacity 0.15s'; setTimeout(function() { el.remove(); }, 160); }\n }, { once: true });\n </script>`;\n}\n\nconst APP_ROOT_RE =\n /<div\\b[^>]*\\bid=[\"']app-root[\"'][^>]*>\\s*<\\/div>/i;\n\nconst KEYFRAMES_STYLE = `<style>@keyframes app-loading-bar{0%{transform:translateX(0)}50%{transform:translateX(144px)}100%{transform:translateX(0)}}</style>`;\n\n/**\n * Injects the Docks startup splash (overlay, progress line, `app-load-progress` / `app-loaded` listeners)\n * into `index.html` after `#app-root`, and adds the loading-bar keyframes in `<head>` when missing.\n *\n * Downstream apps only need a `<div id=\"app-root\"></div>` and this plugin; branding stays in `public/logo-loading.svg` (or `logo`).\n */\nexport function appSplashPlugin(options: AppSplashPluginOptions = {}): Plugin {\n const enabled = options.enabled ?? true;\n let logger: Logger | undefined;\n\n return {\n name: 'eclipse-docks-app-splash',\n configResolved(config) {\n logger = config.logger;\n },\n transformIndexHtml: {\n order: 'pre',\n handler(html) {\n if (!enabled) return html;\n if (/id=[\"']app-loading-overlay[\"']/.test(html)) return html;\n\n if (!APP_ROOT_RE.test(html)) {\n logger?.warn(\n '[@eclipse-docks/app-splash] No <div id=\"app-root\"></div> found; splash not injected.',\n );\n return html;\n }\n\n const logo = resolveLogo(options);\n let out = html;\n if (!out.includes('app-loading-bar')) {\n out = out.replace(/<\\/head>/i, `${KEYFRAMES_STYLE}</head>`);\n }\n out = out.replace(APP_ROOT_RE, (m) => `${m}${buildSplashFragment(logo, options.description)}`);\n return out;\n },\n },\n };\n}\n"],"mappings":";AAwCA,SAAS,WAAW,GAAmB;AACrC,QAAO,EACJ,QAAQ,MAAM,QAAQ,CACtB,QAAQ,MAAM,OAAO,CACrB,QAAQ,MAAM,OAAO,CACrB,QAAQ,MAAM,SAAS;;AAG5B,SAAS,YACP,SAC6D;CAC7D,MAAM,OAAO,QAAQ,QAAQ,EAAE;CAC/B,MAAM,MAAM,KAAK,OAAO;CACxB,MAAM,QAAQ,KAAK,SAAS;CAC5B,MAAM,SAAS,KAAK,UAAU;AAE9B,QAAO;EAAE;EAAK,KADF,KAAK,OAAO;EACL;EAAO;EAAQ;;AAGpC,SAAS,oBACP,MACA,aACQ;CACR,MAAM,IAAI,KAAK;CACf,MAAM,IAAI,KAAK;AAYf,QAAO;;WAVL,KAAK,IAAI,SAAS,IACd,QAAQ,WAAW,KAAK,IAAI,CAAC,SAAS,WAAW,KAAK,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,gDAAgD,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAC5N,QAAQ,WAAW,KAAK,IAAI,CAAC,kBAAkB,EAAE,YAAY,EAAE,gDAAgD,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,uCAUzL;MAPhB,gBAAgB,KAAA,KAAa,YAAY,MAAM,CAAC,SAAS,IACrD;0KACkK,WAAW,YAAY,MAAM,CAAC,CAAC,QACjM,GAKG;;;;;;;;;;;;;;;;;AAkBX,IAAM,cACJ;AAEF,IAAM,kBAAkB;;;;;;;AAQxB,SAAgB,gBAAgB,UAAkC,EAAE,EAAU;CAC5E,MAAM,UAAU,QAAQ,WAAW;CACnC,IAAI;AAEJ,QAAO;EACL,MAAM;EACN,eAAe,QAAQ;AACrB,YAAS,OAAO;;EAElB,oBAAoB;GAClB,OAAO;GACP,QAAQ,MAAM;AACZ,QAAI,CAAC,QAAS,QAAO;AACrB,QAAI,iCAAiC,KAAK,KAAK,CAAE,QAAO;AAExD,QAAI,CAAC,YAAY,KAAK,KAAK,EAAE;AAC3B,aAAQ,KACN,yFACD;AACD,YAAO;;IAGT,MAAM,OAAO,YAAY,QAAQ;IACjC,IAAI,MAAM;AACV,QAAI,CAAC,IAAI,SAAS,kBAAkB,CAClC,OAAM,IAAI,QAAQ,aAAa,GAAG,gBAAgB,SAAS;AAE7D,UAAM,IAAI,QAAQ,cAAc,MAAM,GAAG,IAAI,oBAAoB,MAAM,QAAQ,YAAY,GAAG;AAC9F,WAAO;;GAEV;EACF"}
1
+ {"version":3,"file":"vite-plugin-app-splash.js","names":[],"sources":["../src/vite-plugin-app-splash.ts"],"sourcesContent":["import type { Logger, Plugin } from 'vite';\n\nexport interface SplashLogoOptions {\n /**\n * URL for the splash logo (served from the app `public/` folder by default).\n * @default '/logo-loading.svg'\n */\n src?: string;\n /**\n * Accessible name for the logo. When set, the image is exposed to assistive tech\n * (and `aria-hidden` is not applied).\n */\n alt?: string;\n /**\n * @default 192\n */\n width?: number;\n /**\n * @default 64\n */\n height?: number;\n}\n\nexport interface AppSplashPluginOptions {\n /**\n * Logo dimensions and accessibility (`src` defaults to `/logo-loading.svg` when omitted).\n */\n logo?: SplashLogoOptions;\n /**\n * Short tagline shown under the logo on the splash screen (static HTML text).\n * The status line under the progress bar still follows `app-load-progress` events.\n */\n description?: string;\n /**\n * When false, the plugin does not modify `index.html`.\n * @default true\n */\n enabled?: boolean;\n}\n\nfunction escapeHtml(s: string): string {\n return s\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;');\n}\n\nfunction resolveLogo(\n options: AppSplashPluginOptions,\n): { src: string; alt: string; width: number; height: number } {\n const logo = options.logo ?? {};\n const src = logo.src ?? '/logo-loading.svg';\n const width = logo.width ?? 192;\n const height = logo.height ?? 64;\n const alt = logo.alt ?? '';\n return { src, alt, width, height };\n}\n\nfunction buildSplashFragment(\n logo: { src: string; alt: string; width: number; height: number },\n description: string | undefined,\n): string {\n const w = logo.width;\n const h = logo.height;\n const imgAttrs =\n logo.alt.length > 0\n ? `src=\"${escapeHtml(logo.src)}\" alt=\"${escapeHtml(logo.alt)}\" width=\"${w}\" height=\"${h}\" decoding=\"async\" style=\"display:block;width:${w}px;height:${h}px;max-width:${w}px;max-height:${h}px;min-width:${w}px;min-height:${h}px;flex-shrink:0;\"`\n : `src=\"${escapeHtml(logo.src)}\" alt=\"\" width=\"${w}\" height=\"${h}\" decoding=\"async\" style=\"display:block;width:${w}px;height:${h}px;max-width:${w}px;max-height:${h}px;min-width:${w}px;min-height:${h}px;flex-shrink:0;\" aria-hidden=\"true\"`;\n\n const desc =\n description !== undefined && description.trim().length > 0\n ? `\n <p id=\"app-splash-description\" style=\"margin:0;font-size:0.875rem;color:var(--wa-text-secondary,#888);text-align:center;max-width:min(360px,90vw);line-height:1.4;\">${escapeHtml(description.trim())}</p>`\n : '';\n\n return `\n <div id=\"app-loading-overlay\" style=\"position:fixed;inset:0;z-index:1000;background:var(--wa-background,#1a1a1a);pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;\">\n <img ${imgAttrs}/>\n ${desc}\n <div style=\"width:240px;height:3px;background:var(--wa-layer-2,#2a2a2a);border-radius:2px;overflow:hidden;\">\n <div style=\"width:40%;height:100%;background:var(--wa-color-primary,#2299dd);border-radius:2px;animation:app-loading-bar 1.5s ease-in-out infinite;\" aria-hidden=\"true\"></div>\n </div>\n <div id=\"app-load-progress\" style=\"font-size:0.8125rem;color:var(--wa-text-secondary,#888);\" aria-live=\"polite\">Starting…</div>\n </div>\n <script>\n window.addEventListener('app-load-progress', function(e) {\n var el = document.getElementById('app-load-progress');\n if (el && e.detail && e.detail.message) el.textContent = e.detail.message;\n });\n window.addEventListener('app-loaded', function() {\n var el = document.getElementById('app-loading-overlay');\n if (el) { el.style.opacity = '0'; el.style.transition = 'opacity 0.15s'; setTimeout(function() { el.remove(); }, 160); }\n }, { once: true });\n </script>`;\n}\n\nconst APP_ROOT_RE =\n /<div\\b[^>]*\\bid=[\"']app-root[\"'][^>]*>\\s*<\\/div>/i;\n\nconst KEYFRAMES_STYLE = `<style>@keyframes app-loading-bar{0%{transform:translateX(0)}50%{transform:translateX(144px)}100%{transform:translateX(0)}}</style>`;\n\n/**\n * Injects the Docks startup splash (overlay, progress line, `app-load-progress` / `app-loaded` listeners)\n * into `index.html` after `#app-root`, and adds the loading-bar keyframes in `<head>` when missing.\n *\n * Downstream apps only need a `<div id=\"app-root\"></div>` and this plugin; branding stays in `public/logo-loading.svg` (or `logo`).\n */\nexport function appSplashPlugin(options: AppSplashPluginOptions = {}): Plugin {\n const enabled = options.enabled ?? true;\n let logger: Logger | undefined;\n\n return {\n name: 'eclipse-docks-app-splash',\n configResolved(config) {\n logger = config.logger;\n },\n transformIndexHtml: {\n order: 'pre',\n handler(html) {\n if (!enabled) return html;\n if (/id=[\"']app-loading-overlay[\"']/.test(html)) return html;\n\n if (!APP_ROOT_RE.test(html)) {\n logger?.warn(\n '[@eclipse-docks/app-splash] No <div id=\"app-root\"></div> found; splash not injected.',\n );\n return html;\n }\n\n const logo = resolveLogo(options);\n let out = html;\n if (!out.includes('app-loading-bar')) {\n out = out.replace(/<\\/head>/i, `${KEYFRAMES_STYLE}</head>`);\n }\n out = out.replace(APP_ROOT_RE, (m) => `${m}${buildSplashFragment(logo, options.description)}`);\n return out;\n },\n },\n };\n}\n"],"mappings":";AAwCA,SAAS,WAAW,GAAmB;CACrC,OAAO,EACJ,QAAQ,MAAM,OAAO,CAAC,CACtB,QAAQ,MAAM,MAAM,CAAC,CACrB,QAAQ,MAAM,MAAM,CAAC,CACrB,QAAQ,MAAM,QAAQ;AAC3B;AAEA,SAAS,YACP,SAC6D;CAC7D,MAAM,OAAO,QAAQ,QAAQ,CAAC;CAC9B,MAAM,MAAM,KAAK,OAAO;CACxB,MAAM,QAAQ,KAAK,SAAS;CAC5B,MAAM,SAAS,KAAK,UAAU;CAE9B,OAAO;EAAE;EAAK,KADF,KAAK,OAAO;EACL;EAAO;CAAO;AACnC;AAEA,SAAS,oBACP,MACA,aACQ;CACR,MAAM,IAAI,KAAK;CACf,MAAM,IAAI,KAAK;CAYf,OAAO;;WAVL,KAAK,IAAI,SAAS,IACd,QAAQ,WAAW,KAAK,GAAG,EAAE,SAAS,WAAW,KAAK,GAAG,EAAE,WAAW,EAAE,YAAY,EAAE,gDAAgD,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAC5N,QAAQ,WAAW,KAAK,GAAG,EAAE,kBAAkB,EAAE,YAAY,EAAE,gDAAgD,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,uCAUzL;MAPhB,gBAAgB,KAAA,KAAa,YAAY,KAAK,CAAC,CAAC,SAAS,IACrD;0KACkK,WAAW,YAAY,KAAK,CAAC,EAAE,QACjM,GAKG;;;;;;;;;;;;;;;;AAgBX;AAEA,IAAM,cACJ;AAEF,IAAM,kBAAkB;;;;;;;AAQxB,SAAgB,gBAAgB,UAAkC,CAAC,GAAW;CAC5E,MAAM,UAAU,QAAQ,WAAW;CACnC,IAAI;CAEJ,OAAO;EACL,MAAM;EACN,eAAe,QAAQ;GACrB,SAAS,OAAO;EAClB;EACA,oBAAoB;GAClB,OAAO;GACP,QAAQ,MAAM;IACZ,IAAI,CAAC,SAAS,OAAO;IACrB,IAAI,iCAAiC,KAAK,IAAI,GAAG,OAAO;IAExD,IAAI,CAAC,YAAY,KAAK,IAAI,GAAG;KAC3B,QAAQ,KACN,wFACF;KACA,OAAO;IACT;IAEA,MAAM,OAAO,YAAY,OAAO;IAChC,IAAI,MAAM;IACV,IAAI,CAAC,IAAI,SAAS,iBAAiB,GACjC,MAAM,IAAI,QAAQ,aAAa,GAAG,gBAAgB,QAAQ;IAE5D,MAAM,IAAI,QAAQ,cAAc,MAAM,GAAG,IAAI,oBAAoB,MAAM,QAAQ,WAAW,GAAG;IAC7F,OAAO;GACT;EACF;CACF;AACF"}
@@ -47,7 +47,7 @@ var localAliasesPlugin = (options = {}) => {
47
47
  };
48
48
  config.optimizeDeps ??= {};
49
49
  const existingExclude = config.optimizeDeps.exclude ?? [];
50
- config.optimizeDeps.exclude = [...new Set([
50
+ config.optimizeDeps.exclude = [.../* @__PURE__ */ new Set([
51
51
  ...existingExclude,
52
52
  ...Object.keys(aliases),
53
53
  ...extraOptimizeDepsExclude
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin-local-aliases.js","names":[],"sources":["../src/vite-plugin-local-aliases.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport type { PluginOption, UserConfig } from 'vite';\n\nexport interface PackagePattern {\n /**\n * Folder name prefix used to detect packages, e.g. \"extension-\" or \"core\".\n */\n folderPrefix: string;\n\n /**\n * Optional package name prefix filter, e.g. \"@eclipse-docks/\".\n */\n packageNamePrefix?: string;\n}\n\nexport interface LocalAliasesOptions {\n /**\n * Root directory that contains the local packages.\n * Defaults to the parent of the Vite `root` directory.\n */\n packagesRoot?: string;\n\n /**\n * Package patterns to scan for. By default looks for \"extension-*\"\n * folders with any package name.\n */\n patterns?: PackagePattern[];\n\n /**\n * If true, aliases will point to `src` in dev mode and `dist` otherwise.\n * Defaults to `true`.\n */\n useSrcInDev?: boolean;\n /**\n * If true, always point aliases at `src` regardless of mode.\n */\n alwaysUseSrc?: boolean;\n}\n\ninterface EclipseDocksPackageJson {\n name?: string;\n /**\n * Optional: extra `optimizeDeps.exclude` entries for this workspace package\n * (e.g. heavy WASM npm deps that must not be pre-bundled in dev).\n */\n eclipseDocks?: {\n viteOptimizeDepsExclude?: string[];\n };\n}\n\nfunction discoverLocalAliasesAndExtraExcludes(\n cfg: Pick<UserConfig, 'root'>,\n mode: string,\n options: LocalAliasesOptions = {},\n): { aliases: Record<string, string>; extraOptimizeDepsExclude: string[] } {\n const useSrcInDev = options.useSrcInDev ?? true;\n const alwaysUseSrc = options.alwaysUseSrc ?? false;\n\n const rootDir = cfg.root ?? process.cwd();\n const packagesRoot =\n options.packagesRoot ?? path.resolve(rootDir, '..');\n\n const entries = fs.readdirSync(packagesRoot, { withFileTypes: true });\n const useSrc = alwaysUseSrc || (useSrcInDev && mode === 'development');\n\n const patterns: PackagePattern[] =\n options.patterns && options.patterns.length\n ? options.patterns\n : [{ folderPrefix: 'extension-' }];\n\n const aliases: Record<string, string> = {};\n const extraOptimizeDepsExclude: string[] = [];\n\n for (const entry of entries) {\n if (!entry.isDirectory()) {\n continue;\n }\n\n const pattern = patterns.find((p) =>\n entry.name.startsWith(p.folderPrefix),\n );\n\n if (!pattern) {\n continue;\n }\n\n const pkgDir = path.join(packagesRoot, entry.name);\n const pkgPath = path.join(pkgDir, 'package.json');\n if (!fs.existsSync(pkgPath)) {\n continue;\n }\n\n const pkgJson = fs.readFileSync(pkgPath, 'utf8');\n const pkg = JSON.parse(pkgJson) as EclipseDocksPackageJson;\n if (!pkg.name) {\n continue;\n }\n\n if (\n pattern.packageNamePrefix &&\n !pkg.name.startsWith(pattern.packageNamePrefix)\n ) {\n continue;\n }\n\n const entryPoint = useSrc\n ? path.join(pkgDir, 'src')\n : path.join(pkgDir, 'dist');\n\n aliases[pkg.name] = entryPoint;\n\n const more = pkg.eclipseDocks?.viteOptimizeDepsExclude;\n if (Array.isArray(more)) {\n for (const id of more) {\n if (typeof id === 'string' && id.length > 0) {\n extraOptimizeDepsExclude.push(id);\n }\n }\n }\n }\n\n return { aliases, extraOptimizeDepsExclude };\n}\n\nexport const localAliasesPlugin = (\n options: LocalAliasesOptions = {},\n): PluginOption => {\n return {\n name: 'local-aliases',\n config(config, env) {\n const { aliases, extraOptimizeDepsExclude } =\n discoverLocalAliasesAndExtraExcludes(config, env.mode, options);\n\n config.resolve ??= {};\n const existingAlias = config.resolve.alias ?? {};\n\n config.resolve.alias = {\n ...(typeof existingAlias === 'object' ? existingAlias : {}),\n ...aliases,\n };\n\n config.optimizeDeps ??= {};\n const existingExclude = config.optimizeDeps.exclude ?? [];\n\n config.optimizeDeps.exclude = [\n ...new Set([\n ...existingExclude,\n ...Object.keys(aliases),\n ...extraOptimizeDepsExclude,\n ]),\n ];\n },\n };\n};\n\n"],"mappings":";;;AAmDA,SAAS,qCACP,KACA,MACA,UAA+B,EAAE,EACwC;CACzE,MAAM,cAAc,QAAQ,eAAe;CAC3C,MAAM,eAAe,QAAQ,gBAAgB;CAE7C,MAAM,UAAU,IAAI,QAAQ,QAAQ,KAAK;CACzC,MAAM,eACJ,QAAQ,gBAAgB,KAAK,QAAQ,SAAS,KAAK;CAErD,MAAM,UAAU,GAAG,YAAY,cAAc,EAAE,eAAe,MAAM,CAAC;CACrE,MAAM,SAAS,gBAAiB,eAAe,SAAS;CAExD,MAAM,WACJ,QAAQ,YAAY,QAAQ,SAAS,SACjC,QAAQ,WACR,CAAC,EAAE,cAAc,cAAc,CAAC;CAEtC,MAAM,UAAkC,EAAE;CAC1C,MAAM,2BAAqC,EAAE;AAE7C,MAAK,MAAM,SAAS,SAAS;AAC3B,MAAI,CAAC,MAAM,aAAa,CACtB;EAGF,MAAM,UAAU,SAAS,MAAM,MAC7B,MAAM,KAAK,WAAW,EAAE,aAAa,CACtC;AAED,MAAI,CAAC,QACH;EAGF,MAAM,SAAS,KAAK,KAAK,cAAc,MAAM,KAAK;EAClD,MAAM,UAAU,KAAK,KAAK,QAAQ,eAAe;AACjD,MAAI,CAAC,GAAG,WAAW,QAAQ,CACzB;EAGF,MAAM,UAAU,GAAG,aAAa,SAAS,OAAO;EAChD,MAAM,MAAM,KAAK,MAAM,QAAQ;AAC/B,MAAI,CAAC,IAAI,KACP;AAGF,MACE,QAAQ,qBACR,CAAC,IAAI,KAAK,WAAW,QAAQ,kBAAkB,CAE/C;EAGF,MAAM,aAAa,SACf,KAAK,KAAK,QAAQ,MAAM,GACxB,KAAK,KAAK,QAAQ,OAAO;AAE7B,UAAQ,IAAI,QAAQ;EAEpB,MAAM,OAAO,IAAI,cAAc;AAC/B,MAAI,MAAM,QAAQ,KAAK;QAChB,MAAM,MAAM,KACf,KAAI,OAAO,OAAO,YAAY,GAAG,SAAS,EACxC,0BAAyB,KAAK,GAAG;;;AAMzC,QAAO;EAAE;EAAS;EAA0B;;AAG9C,IAAa,sBACX,UAA+B,EAAE,KAChB;AACjB,QAAO;EACL,MAAM;EACN,OAAO,QAAQ,KAAK;GAClB,MAAM,EAAE,SAAS,6BACf,qCAAqC,QAAQ,IAAI,MAAM,QAAQ;AAEjE,UAAO,YAAY,EAAE;GACrB,MAAM,gBAAgB,OAAO,QAAQ,SAAS,EAAE;AAEhD,UAAO,QAAQ,QAAQ;IACrB,GAAI,OAAO,kBAAkB,WAAW,gBAAgB,EAAE;IAC1D,GAAG;IACJ;AAED,UAAO,iBAAiB,EAAE;GAC1B,MAAM,kBAAkB,OAAO,aAAa,WAAW,EAAE;AAEzD,UAAO,aAAa,UAAU,CAC5B,GAAG,IAAI,IAAI;IACT,GAAG;IACH,GAAG,OAAO,KAAK,QAAQ;IACvB,GAAG;IACJ,CAAC,CACH;;EAEJ"}
1
+ {"version":3,"file":"vite-plugin-local-aliases.js","names":[],"sources":["../src/vite-plugin-local-aliases.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport type { PluginOption, UserConfig } from 'vite';\n\nexport interface PackagePattern {\n /**\n * Folder name prefix used to detect packages, e.g. \"extension-\" or \"core\".\n */\n folderPrefix: string;\n\n /**\n * Optional package name prefix filter, e.g. \"@eclipse-docks/\".\n */\n packageNamePrefix?: string;\n}\n\nexport interface LocalAliasesOptions {\n /**\n * Root directory that contains the local packages.\n * Defaults to the parent of the Vite `root` directory.\n */\n packagesRoot?: string;\n\n /**\n * Package patterns to scan for. By default looks for \"extension-*\"\n * folders with any package name.\n */\n patterns?: PackagePattern[];\n\n /**\n * If true, aliases will point to `src` in dev mode and `dist` otherwise.\n * Defaults to `true`.\n */\n useSrcInDev?: boolean;\n /**\n * If true, always point aliases at `src` regardless of mode.\n */\n alwaysUseSrc?: boolean;\n}\n\ninterface EclipseDocksPackageJson {\n name?: string;\n /**\n * Optional: extra `optimizeDeps.exclude` entries for this workspace package\n * (e.g. heavy WASM npm deps that must not be pre-bundled in dev).\n */\n eclipseDocks?: {\n viteOptimizeDepsExclude?: string[];\n };\n}\n\nfunction discoverLocalAliasesAndExtraExcludes(\n cfg: Pick<UserConfig, 'root'>,\n mode: string,\n options: LocalAliasesOptions = {},\n): { aliases: Record<string, string>; extraOptimizeDepsExclude: string[] } {\n const useSrcInDev = options.useSrcInDev ?? true;\n const alwaysUseSrc = options.alwaysUseSrc ?? false;\n\n const rootDir = cfg.root ?? process.cwd();\n const packagesRoot =\n options.packagesRoot ?? path.resolve(rootDir, '..');\n\n const entries = fs.readdirSync(packagesRoot, { withFileTypes: true });\n const useSrc = alwaysUseSrc || (useSrcInDev && mode === 'development');\n\n const patterns: PackagePattern[] =\n options.patterns && options.patterns.length\n ? options.patterns\n : [{ folderPrefix: 'extension-' }];\n\n const aliases: Record<string, string> = {};\n const extraOptimizeDepsExclude: string[] = [];\n\n for (const entry of entries) {\n if (!entry.isDirectory()) {\n continue;\n }\n\n const pattern = patterns.find((p) =>\n entry.name.startsWith(p.folderPrefix),\n );\n\n if (!pattern) {\n continue;\n }\n\n const pkgDir = path.join(packagesRoot, entry.name);\n const pkgPath = path.join(pkgDir, 'package.json');\n if (!fs.existsSync(pkgPath)) {\n continue;\n }\n\n const pkgJson = fs.readFileSync(pkgPath, 'utf8');\n const pkg = JSON.parse(pkgJson) as EclipseDocksPackageJson;\n if (!pkg.name) {\n continue;\n }\n\n if (\n pattern.packageNamePrefix &&\n !pkg.name.startsWith(pattern.packageNamePrefix)\n ) {\n continue;\n }\n\n const entryPoint = useSrc\n ? path.join(pkgDir, 'src')\n : path.join(pkgDir, 'dist');\n\n aliases[pkg.name] = entryPoint;\n\n const more = pkg.eclipseDocks?.viteOptimizeDepsExclude;\n if (Array.isArray(more)) {\n for (const id of more) {\n if (typeof id === 'string' && id.length > 0) {\n extraOptimizeDepsExclude.push(id);\n }\n }\n }\n }\n\n return { aliases, extraOptimizeDepsExclude };\n}\n\nexport const localAliasesPlugin = (\n options: LocalAliasesOptions = {},\n): PluginOption => {\n return {\n name: 'local-aliases',\n config(config, env) {\n const { aliases, extraOptimizeDepsExclude } =\n discoverLocalAliasesAndExtraExcludes(config, env.mode, options);\n\n config.resolve ??= {};\n const existingAlias = config.resolve.alias ?? {};\n\n config.resolve.alias = {\n ...(typeof existingAlias === 'object' ? existingAlias : {}),\n ...aliases,\n };\n\n config.optimizeDeps ??= {};\n const existingExclude = config.optimizeDeps.exclude ?? [];\n\n config.optimizeDeps.exclude = [\n ...new Set([\n ...existingExclude,\n ...Object.keys(aliases),\n ...extraOptimizeDepsExclude,\n ]),\n ];\n },\n };\n};\n\n"],"mappings":";;;AAmDA,SAAS,qCACP,KACA,MACA,UAA+B,CAAC,GACyC;CACzE,MAAM,cAAc,QAAQ,eAAe;CAC3C,MAAM,eAAe,QAAQ,gBAAgB;CAE7C,MAAM,UAAU,IAAI,QAAQ,QAAQ,IAAI;CACxC,MAAM,eACJ,QAAQ,gBAAgB,KAAK,QAAQ,SAAS,IAAI;CAEpD,MAAM,UAAU,GAAG,YAAY,cAAc,EAAE,eAAe,KAAK,CAAC;CACpE,MAAM,SAAS,gBAAiB,eAAe,SAAS;CAExD,MAAM,WACJ,QAAQ,YAAY,QAAQ,SAAS,SACjC,QAAQ,WACR,CAAC,EAAE,cAAc,aAAa,CAAC;CAErC,MAAM,UAAkC,CAAC;CACzC,MAAM,2BAAqC,CAAC;CAE5C,KAAK,MAAM,SAAS,SAAS;EAC3B,IAAI,CAAC,MAAM,YAAY,GACrB;EAGF,MAAM,UAAU,SAAS,MAAM,MAC7B,MAAM,KAAK,WAAW,EAAE,YAAY,CACtC;EAEA,IAAI,CAAC,SACH;EAGF,MAAM,SAAS,KAAK,KAAK,cAAc,MAAM,IAAI;EACjD,MAAM,UAAU,KAAK,KAAK,QAAQ,cAAc;EAChD,IAAI,CAAC,GAAG,WAAW,OAAO,GACxB;EAGF,MAAM,UAAU,GAAG,aAAa,SAAS,MAAM;EAC/C,MAAM,MAAM,KAAK,MAAM,OAAO;EAC9B,IAAI,CAAC,IAAI,MACP;EAGF,IACE,QAAQ,qBACR,CAAC,IAAI,KAAK,WAAW,QAAQ,iBAAiB,GAE9C;EAGF,MAAM,aAAa,SACf,KAAK,KAAK,QAAQ,KAAK,IACvB,KAAK,KAAK,QAAQ,MAAM;EAE5B,QAAQ,IAAI,QAAQ;EAEpB,MAAM,OAAO,IAAI,cAAc;EAC/B,IAAI,MAAM,QAAQ,IAAI,GACf;QAAA,MAAM,MAAM,MACf,IAAI,OAAO,OAAO,YAAY,GAAG,SAAS,GACxC,yBAAyB,KAAK,EAAE;EAAA;CAIxC;CAEA,OAAO;EAAE;EAAS;CAAyB;AAC7C;AAEA,IAAa,sBACX,UAA+B,CAAC,MACf;CACjB,OAAO;EACL,MAAM;EACN,OAAO,QAAQ,KAAK;GAClB,MAAM,EAAE,SAAS,6BACf,qCAAqC,QAAQ,IAAI,MAAM,OAAO;GAEhE,OAAO,YAAY,CAAC;GACpB,MAAM,gBAAgB,OAAO,QAAQ,SAAS,CAAC;GAE/C,OAAO,QAAQ,QAAQ;IACrB,GAAI,OAAO,kBAAkB,WAAW,gBAAgB,CAAC;IACzD,GAAG;GACL;GAEA,OAAO,iBAAiB,CAAC;GACzB,MAAM,kBAAkB,OAAO,aAAa,WAAW,CAAC;GAExD,OAAO,aAAa,UAAU,CAC5B,mBAAG,IAAI,IAAI;IACT,GAAG;IACH,GAAG,OAAO,KAAK,OAAO;IACtB,GAAG;GACL,CAAC,CACH;EACF;CACF;AACF"}
@@ -12,8 +12,10 @@ export declare function resolvePackageInfo(appRoot: string, options?: {
12
12
  export declare function resolveDepVersions(appRoot: string, options?: {
13
13
  includeDevDependencies?: boolean;
14
14
  }): Record<string, string>;
15
- /** Virtual module id; injected into `index.html` before `main.ts` when extension side-effects are enabled. */
15
+ /** Virtual module id; prepended to `src/main.ts` when extension side-effects are enabled. */
16
16
  export declare const VIRTUAL_EXTENSION_IMPORTS = "virtual:eclipse-docks-extension-imports";
17
+ /** Prepends the virtual extension side-effect import when not already present. */
18
+ export declare function prependExtensionSideEffectImport(code: string): string;
17
19
  export interface ExtensionSideEffectsOptions {
18
20
  /**
19
21
  * When false, disables automatic extension side-effect imports. Omitted or true keeps them on.
@@ -36,8 +38,9 @@ export type ResolveDepVersionsPluginOptions = {
36
38
  includeDevDependencies?: boolean;
37
39
  /**
38
40
  * By default, registers a virtual module that side-effect-imports every matching direct
39
- * `dependencies` entry (see `ExtensionSideEffectsOptions`), and injects
40
- * `import 'virtual:eclipse-docks-extension-imports'` into `index.html` **before** `/src/main.ts`.
41
+ * `dependencies` entry (see `ExtensionSideEffectsOptions`), and prepends
42
+ * `import 'virtual:eclipse-docks-extension-imports'` to `src/main.ts` so extension
43
+ * registration completes before `registerApp({ autoStart: true })`.
41
44
  * Pass `false` or `{ enabled: false }` to disable.
42
45
  */
43
46
  extensionSideEffects?: boolean | ExtensionSideEffectsOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin-resolve-deps.d.ts","sourceRoot":"","sources":["../src/vite-plugin-resolve-deps.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;CACnC;AA8DD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7C,mBAAmB,GAAG,IAAI,CAkB5B;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxB;AAID,8GAA8G;AAC9G,eAAO,MAAM,yBAAyB,4CAA4C,CAAC;AAanF,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,GAAG,2BAA2B,CAAC;CAC9D,CAAC;AAEF,4EAA4E;AAC5E,MAAM,MAAM,+BAA+B,GAAG;IAC5C,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAqBF,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAQV;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAqBV;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAQV;AAED,wBAAgB,wBAAwB,CACtC,OAAO,CAAC,EAAE,+BAA+B,GACxC,MAAM,CA0ER"}
1
+ {"version":3,"file":"vite-plugin-resolve-deps.d.ts","sourceRoot":"","sources":["../src/vite-plugin-resolve-deps.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;CACnC;AA8DD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7C,mBAAmB,GAAG,IAAI,CAkB5B;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxB;AAID,6FAA6F;AAC7F,eAAO,MAAM,yBAAyB,4CAA4C,CAAC;AASnF,kFAAkF;AAClF,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE;AAOD,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,OAAO,GAAG,2BAA2B,CAAC;CAC9D,CAAC;AAEF,4EAA4E;AAC5E,MAAM,MAAM,+BAA+B,GAAG;IAC5C,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAqBF,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAQV;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAqBV;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,WAAW,EAAE,+BAA+B,GAC3C,MAAM,EAAE,CAQV;AAED,wBAAgB,wBAAwB,CACtC,OAAO,CAAC,EAAE,+BAA+B,GACxC,MAAM,CAoER"}
@@ -56,14 +56,20 @@ function resolveDepVersions(appRoot, options) {
56
56
  return resolvePackageInfo(appRoot, options)?.dependencies ?? {};
57
57
  }
58
58
  var RESOLVED_PACKAGE_INFO_KEY = "__RESOLVED_PACKAGE_INFO__";
59
- /** Virtual module id; injected into `index.html` before `main.ts` when extension side-effects are enabled. */
59
+ /** Virtual module id; prepended to `src/main.ts` when extension side-effects are enabled. */
60
60
  var VIRTUAL_EXTENSION_IMPORTS = "virtual:eclipse-docks-extension-imports";
61
61
  var RESOLVED_VIRTUAL_EXTENSION_IMPORTS = `\0${VIRTUAL_EXTENSION_IMPORTS}`;
62
+ /** App entry module transformed by {@link resolveDepVersionsPlugin}. */
63
+ var MAIN_TS_MODULE_RE = /[/\\]src[/\\]main\.ts$/;
64
+ var EXTENSION_IMPORT_STATEMENT = `import ${JSON.stringify(VIRTUAL_EXTENSION_IMPORTS)};\n`;
65
+ /** Prepends the virtual extension side-effect import when not already present. */
66
+ function prependExtensionSideEffectImport(code) {
67
+ if (code.includes("virtual:eclipse-docks-extension-imports")) return code;
68
+ return EXTENSION_IMPORT_STATEMENT + code;
69
+ }
62
70
  /** Unscoped `extension-*` or scoped `@namespace/extension-*` (any npm scope). */
63
71
  var DEFAULT_EXTENSION_PATTERN = /^(?:@[^/]+\/)?extension-/;
64
72
  var DEFAULT_PRIORITY_FIRST = ["@eclipse-docks/extension-pwa", "extension-pwa"];
65
- /** Matches Vite’s default app entry in index.html. */
66
- var MAIN_TS_SCRIPT_RE = /<script\b[^>]*\btype\s*=\s*["']module["'][^>]*\bsrc\s*=\s*["'][^"']*\/src\/main\.ts["'][^>]*>\s*<\/script>/i;
67
73
  function normalizeExtensionSideEffects(opt) {
68
74
  if (opt === false) return null;
69
75
  if (opt === void 0 || opt === true) return {
@@ -110,7 +116,7 @@ function collectTransitiveExtensionPackages(appRoot, seeds, sideEffects) {
110
116
  function resolveExtensionSideEffectPackages(appRoot, dependencies, sideEffects) {
111
117
  const direct = listExtensionSideEffectPackages(dependencies, sideEffects);
112
118
  const transitive = collectTransitiveExtensionPackages(appRoot, direct, sideEffects);
113
- const allNames = [...new Set([...direct, ...transitive])];
119
+ const allNames = [.../* @__PURE__ */ new Set([...direct, ...transitive])];
114
120
  return listExtensionSideEffectPackages(Object.fromEntries(allNames.map((name) => [name, "*"])), sideEffects);
115
121
  }
116
122
  function resolveDepVersionsPlugin(options) {
@@ -148,20 +154,16 @@ function resolveDepVersionsPlugin(options) {
148
154
  if (extensionImportPackages.length === 0) return "export {};\n";
149
155
  return extensionImportPackages.map((pkg) => `import ${JSON.stringify(pkg)};\n`).join("");
150
156
  },
151
- transformIndexHtml: {
152
- order: "pre",
153
- handler(html) {
154
- if (!extensionSideEffectsActive) return html;
155
- if (extensionImportPackages.length === 0) return html;
156
- if (html.includes("virtual:eclipse-docks-extension-imports")) return html;
157
- if (!MAIN_TS_SCRIPT_RE.test(html)) return html;
158
- const inject = `<script type="module">import ${JSON.stringify(VIRTUAL_EXTENSION_IMPORTS)};<\/script>\n`;
159
- return html.replace(MAIN_TS_SCRIPT_RE, (match) => `${inject}${match}`);
160
- }
157
+ transform(code, id) {
158
+ if (!extensionSideEffectsActive || extensionImportPackages.length === 0) return null;
159
+ if (!MAIN_TS_MODULE_RE.test(id)) return null;
160
+ const next = prependExtensionSideEffectImport(code);
161
+ if (next === code) return null;
162
+ return next;
161
163
  }
162
164
  };
163
165
  }
164
166
  //#endregion
165
- export { VIRTUAL_EXTENSION_IMPORTS, collectTransitiveExtensionPackages, listExtensionSideEffectPackages, resolveDepVersions, resolveDepVersionsPlugin, resolveExtensionSideEffectPackages, resolvePackageInfo };
167
+ export { VIRTUAL_EXTENSION_IMPORTS, collectTransitiveExtensionPackages, listExtensionSideEffectPackages, prependExtensionSideEffectImport, resolveDepVersions, resolveDepVersionsPlugin, resolveExtensionSideEffectPackages, resolvePackageInfo };
166
168
 
167
169
  //# sourceMappingURL=vite-plugin-resolve-deps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin-resolve-deps.js","names":[],"sources":["../src/vite-plugin-resolve-deps.ts"],"sourcesContent":["import { readFileSync, existsSync } from 'fs';\nimport path from 'path';\nimport type { Plugin } from 'vite';\n\nexport interface ResolvedPackageInfo {\n name: string;\n version: string;\n description?: string;\n dependencies: Record<string, string>;\n marketplaceCatalogUrls?: string[];\n}\n\ninterface PackageJson {\n name?: string;\n version?: string;\n description?: string;\n dependencies?: Record<string, string>;\n devDependencies?: Record<string, string>;\n}\n\nfunction packageJsonPath(appRoot: string, packageName: string): string | null {\n const segments = packageName.startsWith('@')\n ? packageName.split('/')\n : [packageName];\n const relativePath = path.join('node_modules', ...segments, 'package.json');\n let dir = path.resolve(appRoot);\n const root = path.parse(dir).root;\n\n while (true) {\n const pkgPath = path.join(dir, relativePath);\n if (existsSync(pkgPath)) {\n return pkgPath;\n }\n if (dir === root) break;\n dir = path.dirname(dir);\n }\n return null;\n}\n\nfunction readPackageJson(appRoot: string, packageName: string): PackageJson | null {\n const pkgPath = packageJsonPath(appRoot, packageName);\n if (!pkgPath) return null;\n try {\n return JSON.parse(readFileSync(pkgPath, 'utf8')) as PackageJson;\n } catch {\n return null;\n }\n}\n\nfunction findPackageVersion(appRoot: string, depName: string): string | null {\n const pkg = readPackageJson(appRoot, depName);\n if (typeof pkg?.version === 'string') return pkg.version;\n return null;\n}\n\nfunction resolveDepVersionsFromPkg(\n appRoot: string,\n pkg: PackageJson,\n options?: { includeDevDependencies?: boolean }\n): Record<string, string> {\n const deps = { ...pkg.dependencies };\n if (options?.includeDevDependencies && pkg.devDependencies) {\n Object.assign(deps, pkg.devDependencies);\n }\n const result: Record<string, string> = {};\n for (const [name, specifier] of Object.entries(deps)) {\n const version = findPackageVersion(appRoot, name);\n result[name] = version ?? specifier;\n }\n return result;\n}\n\nexport function resolvePackageInfo(\n appRoot: string,\n options?: { includeDevDependencies?: boolean }\n): ResolvedPackageInfo | null {\n const pkgPath = path.join(appRoot, 'package.json');\n if (!existsSync(pkgPath)) return null;\n\n let pkg: PackageJson;\n try {\n pkg = JSON.parse(readFileSync(pkgPath, 'utf8')) as PackageJson;\n } catch {\n return null;\n }\n\n const name = typeof pkg.name === 'string' ? pkg.name : '';\n const version = typeof pkg.version === 'string' ? pkg.version : '0.0.0';\n const description = typeof pkg.description === 'string' ? pkg.description : undefined;\n const dependencies = resolveDepVersionsFromPkg(appRoot, pkg, options);\n const marketplaceCatalogUrls = (pkg as { marketplace?: { catalogUrls?: string[] } }).marketplace?.catalogUrls;\n\n return { name, version, description, dependencies, marketplaceCatalogUrls };\n}\n\nexport function resolveDepVersions(\n appRoot: string,\n options?: { includeDevDependencies?: boolean }\n): Record<string, string> {\n const info = resolvePackageInfo(appRoot, options);\n return info?.dependencies ?? {};\n}\n\nconst RESOLVED_PACKAGE_INFO_KEY = '__RESOLVED_PACKAGE_INFO__';\n\n/** Virtual module id; injected into `index.html` before `main.ts` when extension side-effects are enabled. */\nexport const VIRTUAL_EXTENSION_IMPORTS = 'virtual:eclipse-docks-extension-imports';\n\nconst RESOLVED_VIRTUAL_EXTENSION_IMPORTS = `\\0${VIRTUAL_EXTENSION_IMPORTS}`;\n\n/** Unscoped `extension-*` or scoped `@namespace/extension-*` (any npm scope). */\nconst DEFAULT_EXTENSION_PATTERN = /^(?:@[^/]+\\/)?extension-/;\n\nconst DEFAULT_PRIORITY_FIRST = ['@eclipse-docks/extension-pwa', 'extension-pwa'];\n\n/** Matches Vite’s default app entry in index.html. */\nconst MAIN_TS_SCRIPT_RE =\n /<script\\b[^>]*\\btype\\s*=\\s*[\"']module[\"'][^>]*\\bsrc\\s*=\\s*[\"'][^\"']*\\/src\\/main\\.ts[\"'][^>]*>\\s*<\\/script>/i;\n\nexport interface ExtensionSideEffectsOptions {\n /**\n * When false, disables automatic extension side-effect imports. Omitted or true keeps them on.\n */\n enabled?: boolean;\n /** Dependency names to skip (even if they match `packageNamePattern`). */\n exclude?: string[];\n /**\n * Packages to load first, in order (only those present in dependencies are imported).\n * Default includes PWA so `beforeinstallprompt` can register early.\n */\n priorityFirst?: string[];\n /**\n * Which direct `dependencies` keys qualify as Docks-style extensions (`extension-*`, with an optional npm scope).\n * @default /^(?:@[^/]+\\/)?extension-/\n */\n packageNamePattern?: RegExp;\n}\n\nexport type ResolveDepVersionsPluginOptions = {\n includeDevDependencies?: boolean;\n /**\n * By default, registers a virtual module that side-effect-imports every matching direct\n * `dependencies` entry (see `ExtensionSideEffectsOptions`), and injects\n * `import 'virtual:eclipse-docks-extension-imports'` into `index.html` **before** `/src/main.ts`.\n * Pass `false` or `{ enabled: false }` to disable.\n */\n extensionSideEffects?: boolean | ExtensionSideEffectsOptions;\n};\n\n/** Normalized match options for {@link listExtensionSideEffectPackages}. */\nexport type ExtensionSideEffectsListOptions = {\n exclude: Set<string>;\n priorityFirst: string[];\n pattern: RegExp;\n};\n\nfunction normalizeExtensionSideEffects(\n opt: boolean | ExtensionSideEffectsOptions | undefined,\n): ExtensionSideEffectsListOptions | null {\n if (opt === false) return null;\n if (opt === undefined || opt === true) {\n return {\n exclude: new Set(),\n priorityFirst: [...DEFAULT_PRIORITY_FIRST],\n pattern: DEFAULT_EXTENSION_PATTERN,\n };\n }\n if (opt.enabled === false) return null;\n return {\n exclude: new Set(opt.exclude ?? []),\n priorityFirst: opt.priorityFirst ?? [...DEFAULT_PRIORITY_FIRST],\n pattern: opt.packageNamePattern ?? DEFAULT_EXTENSION_PATTERN,\n };\n}\n\nexport function listExtensionSideEffectPackages(\n dependencies: Record<string, string>,\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const names = Object.keys(dependencies).filter(\n (name) => sideEffects.pattern.test(name) && !sideEffects.exclude.has(name),\n );\n const prioritySet = new Set(sideEffects.priorityFirst);\n const first = sideEffects.priorityFirst.filter((p) => names.includes(p));\n const rest = names.filter((n) => !prioritySet.has(n)).sort((a, b) => a.localeCompare(b));\n return [...first, ...rest];\n}\n\n/**\n * Walks extension package.json `dependencies` to collect transitive extension-* packages\n * (e.g. extension-utils → extension-python-runtime → extension-terminal).\n */\nexport function collectTransitiveExtensionPackages(\n appRoot: string,\n seeds: string[],\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const found = new Set<string>();\n const queue = [...seeds];\n const visited = new Set<string>();\n\n while (queue.length > 0) {\n const name = queue.shift()!;\n if (visited.has(name)) continue;\n visited.add(name);\n\n const pkg = readPackageJson(appRoot, name);\n if (!pkg?.dependencies) continue;\n\n for (const dep of Object.keys(pkg.dependencies)) {\n if (!sideEffects.pattern.test(dep) || sideEffects.exclude.has(dep)) continue;\n found.add(dep);\n queue.push(dep);\n }\n }\n\n return [...found];\n}\n\nexport function resolveExtensionSideEffectPackages(\n appRoot: string,\n dependencies: Record<string, string>,\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const direct = listExtensionSideEffectPackages(dependencies, sideEffects);\n const transitive = collectTransitiveExtensionPackages(appRoot, direct, sideEffects);\n const allNames = [...new Set([...direct, ...transitive])];\n return listExtensionSideEffectPackages(\n Object.fromEntries(allNames.map((name) => [name, '*'])),\n sideEffects,\n );\n}\n\nexport function resolveDepVersionsPlugin(\n options?: ResolveDepVersionsPluginOptions,\n): Plugin {\n let appRoot = process.cwd();\n let extensionSideEffectsActive = false;\n let extensionImportPackages: string[] = [];\n\n return {\n name: 'resolve-dep-versions',\n config(config) {\n const root = config.root ? path.resolve(config.root) : process.cwd();\n const info = resolvePackageInfo(root, options);\n const value =\n info ?? {\n name: '',\n version: '0.0.0',\n description: undefined,\n dependencies: {},\n marketplaceCatalogUrls: undefined,\n };\n return {\n define: {\n [RESOLVED_PACKAGE_INFO_KEY]: JSON.stringify(value),\n },\n };\n },\n configResolved(config) {\n appRoot = path.resolve(config.root ?? process.cwd());\n const normalized = normalizeExtensionSideEffects(options?.extensionSideEffects);\n extensionSideEffectsActive = normalized !== null;\n if (!normalized) {\n extensionImportPackages = [];\n return;\n }\n const info = resolvePackageInfo(appRoot, options);\n extensionImportPackages = resolveExtensionSideEffectPackages(\n appRoot,\n info?.dependencies ?? {},\n normalized,\n );\n },\n resolveId(id) {\n if (id === VIRTUAL_EXTENSION_IMPORTS) {\n return RESOLVED_VIRTUAL_EXTENSION_IMPORTS;\n }\n return undefined;\n },\n load(id) {\n if (id !== RESOLVED_VIRTUAL_EXTENSION_IMPORTS) {\n return null;\n }\n if (extensionImportPackages.length === 0) {\n return 'export {};\\n';\n }\n return extensionImportPackages.map((pkg) => `import ${JSON.stringify(pkg)};\\n`).join('');\n },\n transformIndexHtml: {\n order: 'pre',\n handler(html) {\n if (!extensionSideEffectsActive) {\n return html;\n }\n if (extensionImportPackages.length === 0) {\n return html;\n }\n if (html.includes(VIRTUAL_EXTENSION_IMPORTS)) {\n return html;\n }\n if (!MAIN_TS_SCRIPT_RE.test(html)) {\n return html;\n }\n const inject = `<script type=\"module\">import ${JSON.stringify(VIRTUAL_EXTENSION_IMPORTS)};</script>\\n`;\n return html.replace(MAIN_TS_SCRIPT_RE, (match) => `${inject}${match}`);\n },\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"vite-plugin-resolve-deps.js","names":[],"sources":["../src/vite-plugin-resolve-deps.ts"],"sourcesContent":["import { readFileSync, existsSync } from 'fs';\nimport path from 'path';\nimport type { Plugin } from 'vite';\n\nexport interface ResolvedPackageInfo {\n name: string;\n version: string;\n description?: string;\n dependencies: Record<string, string>;\n marketplaceCatalogUrls?: string[];\n}\n\ninterface PackageJson {\n name?: string;\n version?: string;\n description?: string;\n dependencies?: Record<string, string>;\n devDependencies?: Record<string, string>;\n}\n\nfunction packageJsonPath(appRoot: string, packageName: string): string | null {\n const segments = packageName.startsWith('@')\n ? packageName.split('/')\n : [packageName];\n const relativePath = path.join('node_modules', ...segments, 'package.json');\n let dir = path.resolve(appRoot);\n const root = path.parse(dir).root;\n\n while (true) {\n const pkgPath = path.join(dir, relativePath);\n if (existsSync(pkgPath)) {\n return pkgPath;\n }\n if (dir === root) break;\n dir = path.dirname(dir);\n }\n return null;\n}\n\nfunction readPackageJson(appRoot: string, packageName: string): PackageJson | null {\n const pkgPath = packageJsonPath(appRoot, packageName);\n if (!pkgPath) return null;\n try {\n return JSON.parse(readFileSync(pkgPath, 'utf8')) as PackageJson;\n } catch {\n return null;\n }\n}\n\nfunction findPackageVersion(appRoot: string, depName: string): string | null {\n const pkg = readPackageJson(appRoot, depName);\n if (typeof pkg?.version === 'string') return pkg.version;\n return null;\n}\n\nfunction resolveDepVersionsFromPkg(\n appRoot: string,\n pkg: PackageJson,\n options?: { includeDevDependencies?: boolean }\n): Record<string, string> {\n const deps = { ...pkg.dependencies };\n if (options?.includeDevDependencies && pkg.devDependencies) {\n Object.assign(deps, pkg.devDependencies);\n }\n const result: Record<string, string> = {};\n for (const [name, specifier] of Object.entries(deps)) {\n const version = findPackageVersion(appRoot, name);\n result[name] = version ?? specifier;\n }\n return result;\n}\n\nexport function resolvePackageInfo(\n appRoot: string,\n options?: { includeDevDependencies?: boolean }\n): ResolvedPackageInfo | null {\n const pkgPath = path.join(appRoot, 'package.json');\n if (!existsSync(pkgPath)) return null;\n\n let pkg: PackageJson;\n try {\n pkg = JSON.parse(readFileSync(pkgPath, 'utf8')) as PackageJson;\n } catch {\n return null;\n }\n\n const name = typeof pkg.name === 'string' ? pkg.name : '';\n const version = typeof pkg.version === 'string' ? pkg.version : '0.0.0';\n const description = typeof pkg.description === 'string' ? pkg.description : undefined;\n const dependencies = resolveDepVersionsFromPkg(appRoot, pkg, options);\n const marketplaceCatalogUrls = (pkg as { marketplace?: { catalogUrls?: string[] } }).marketplace?.catalogUrls;\n\n return { name, version, description, dependencies, marketplaceCatalogUrls };\n}\n\nexport function resolveDepVersions(\n appRoot: string,\n options?: { includeDevDependencies?: boolean }\n): Record<string, string> {\n const info = resolvePackageInfo(appRoot, options);\n return info?.dependencies ?? {};\n}\n\nconst RESOLVED_PACKAGE_INFO_KEY = '__RESOLVED_PACKAGE_INFO__';\n\n/** Virtual module id; prepended to `src/main.ts` when extension side-effects are enabled. */\nexport const VIRTUAL_EXTENSION_IMPORTS = 'virtual:eclipse-docks-extension-imports';\n\nconst RESOLVED_VIRTUAL_EXTENSION_IMPORTS = `\\0${VIRTUAL_EXTENSION_IMPORTS}`;\n\n/** App entry module transformed by {@link resolveDepVersionsPlugin}. */\nconst MAIN_TS_MODULE_RE = /[/\\\\]src[/\\\\]main\\.ts$/;\n\nconst EXTENSION_IMPORT_STATEMENT = `import ${JSON.stringify(VIRTUAL_EXTENSION_IMPORTS)};\\n`;\n\n/** Prepends the virtual extension side-effect import when not already present. */\nexport function prependExtensionSideEffectImport(code: string): string {\n if (code.includes(VIRTUAL_EXTENSION_IMPORTS)) {\n return code;\n }\n return EXTENSION_IMPORT_STATEMENT + code;\n}\n\n/** Unscoped `extension-*` or scoped `@namespace/extension-*` (any npm scope). */\nconst DEFAULT_EXTENSION_PATTERN = /^(?:@[^/]+\\/)?extension-/;\n\nconst DEFAULT_PRIORITY_FIRST = ['@eclipse-docks/extension-pwa', 'extension-pwa'];\n\nexport interface ExtensionSideEffectsOptions {\n /**\n * When false, disables automatic extension side-effect imports. Omitted or true keeps them on.\n */\n enabled?: boolean;\n /** Dependency names to skip (even if they match `packageNamePattern`). */\n exclude?: string[];\n /**\n * Packages to load first, in order (only those present in dependencies are imported).\n * Default includes PWA so `beforeinstallprompt` can register early.\n */\n priorityFirst?: string[];\n /**\n * Which direct `dependencies` keys qualify as Docks-style extensions (`extension-*`, with an optional npm scope).\n * @default /^(?:@[^/]+\\/)?extension-/\n */\n packageNamePattern?: RegExp;\n}\n\nexport type ResolveDepVersionsPluginOptions = {\n includeDevDependencies?: boolean;\n /**\n * By default, registers a virtual module that side-effect-imports every matching direct\n * `dependencies` entry (see `ExtensionSideEffectsOptions`), and prepends\n * `import 'virtual:eclipse-docks-extension-imports'` to `src/main.ts` so extension\n * registration completes before `registerApp({ autoStart: true })`.\n * Pass `false` or `{ enabled: false }` to disable.\n */\n extensionSideEffects?: boolean | ExtensionSideEffectsOptions;\n};\n\n/** Normalized match options for {@link listExtensionSideEffectPackages}. */\nexport type ExtensionSideEffectsListOptions = {\n exclude: Set<string>;\n priorityFirst: string[];\n pattern: RegExp;\n};\n\nfunction normalizeExtensionSideEffects(\n opt: boolean | ExtensionSideEffectsOptions | undefined,\n): ExtensionSideEffectsListOptions | null {\n if (opt === false) return null;\n if (opt === undefined || opt === true) {\n return {\n exclude: new Set(),\n priorityFirst: [...DEFAULT_PRIORITY_FIRST],\n pattern: DEFAULT_EXTENSION_PATTERN,\n };\n }\n if (opt.enabled === false) return null;\n return {\n exclude: new Set(opt.exclude ?? []),\n priorityFirst: opt.priorityFirst ?? [...DEFAULT_PRIORITY_FIRST],\n pattern: opt.packageNamePattern ?? DEFAULT_EXTENSION_PATTERN,\n };\n}\n\nexport function listExtensionSideEffectPackages(\n dependencies: Record<string, string>,\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const names = Object.keys(dependencies).filter(\n (name) => sideEffects.pattern.test(name) && !sideEffects.exclude.has(name),\n );\n const prioritySet = new Set(sideEffects.priorityFirst);\n const first = sideEffects.priorityFirst.filter((p) => names.includes(p));\n const rest = names.filter((n) => !prioritySet.has(n)).sort((a, b) => a.localeCompare(b));\n return [...first, ...rest];\n}\n\n/**\n * Walks extension package.json `dependencies` to collect transitive extension-* packages\n * (e.g. extension-utils → extension-python-runtime → extension-terminal).\n */\nexport function collectTransitiveExtensionPackages(\n appRoot: string,\n seeds: string[],\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const found = new Set<string>();\n const queue = [...seeds];\n const visited = new Set<string>();\n\n while (queue.length > 0) {\n const name = queue.shift()!;\n if (visited.has(name)) continue;\n visited.add(name);\n\n const pkg = readPackageJson(appRoot, name);\n if (!pkg?.dependencies) continue;\n\n for (const dep of Object.keys(pkg.dependencies)) {\n if (!sideEffects.pattern.test(dep) || sideEffects.exclude.has(dep)) continue;\n found.add(dep);\n queue.push(dep);\n }\n }\n\n return [...found];\n}\n\nexport function resolveExtensionSideEffectPackages(\n appRoot: string,\n dependencies: Record<string, string>,\n sideEffects: ExtensionSideEffectsListOptions,\n): string[] {\n const direct = listExtensionSideEffectPackages(dependencies, sideEffects);\n const transitive = collectTransitiveExtensionPackages(appRoot, direct, sideEffects);\n const allNames = [...new Set([...direct, ...transitive])];\n return listExtensionSideEffectPackages(\n Object.fromEntries(allNames.map((name) => [name, '*'])),\n sideEffects,\n );\n}\n\nexport function resolveDepVersionsPlugin(\n options?: ResolveDepVersionsPluginOptions,\n): Plugin {\n let appRoot = process.cwd();\n let extensionSideEffectsActive = false;\n let extensionImportPackages: string[] = [];\n\n return {\n name: 'resolve-dep-versions',\n config(config) {\n const root = config.root ? path.resolve(config.root) : process.cwd();\n const info = resolvePackageInfo(root, options);\n const value =\n info ?? {\n name: '',\n version: '0.0.0',\n description: undefined,\n dependencies: {},\n marketplaceCatalogUrls: undefined,\n };\n return {\n define: {\n [RESOLVED_PACKAGE_INFO_KEY]: JSON.stringify(value),\n },\n };\n },\n configResolved(config) {\n appRoot = path.resolve(config.root ?? process.cwd());\n const normalized = normalizeExtensionSideEffects(options?.extensionSideEffects);\n extensionSideEffectsActive = normalized !== null;\n if (!normalized) {\n extensionImportPackages = [];\n return;\n }\n const info = resolvePackageInfo(appRoot, options);\n extensionImportPackages = resolveExtensionSideEffectPackages(\n appRoot,\n info?.dependencies ?? {},\n normalized,\n );\n },\n resolveId(id) {\n if (id === VIRTUAL_EXTENSION_IMPORTS) {\n return RESOLVED_VIRTUAL_EXTENSION_IMPORTS;\n }\n return undefined;\n },\n load(id) {\n if (id !== RESOLVED_VIRTUAL_EXTENSION_IMPORTS) {\n return null;\n }\n if (extensionImportPackages.length === 0) {\n return 'export {};\\n';\n }\n return extensionImportPackages.map((pkg) => `import ${JSON.stringify(pkg)};\\n`).join('');\n },\n transform(code, id) {\n if (!extensionSideEffectsActive || extensionImportPackages.length === 0) {\n return null;\n }\n if (!MAIN_TS_MODULE_RE.test(id)) {\n return null;\n }\n const next = prependExtensionSideEffectImport(code);\n if (next === code) {\n return null;\n }\n return next;\n },\n };\n}\n"],"mappings":"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"}
@@ -114,7 +114,7 @@ var settings_default = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/200
114
114
  //#region src/externals/webawesome.ts
115
115
  registerIconLibrary("docks", {
116
116
  resolver: (name) => {
117
- return new URL((/* @__PURE__ */ Object.assign({
117
+ return new URL((/* #__PURE__ */ Object.assign({
118
118
  "../icons/extensions.svg": extensions_default,
119
119
  "../icons/file-plus.svg": file_plus_default,
120
120
  "../icons/js.svg": js_default,
@@ -138,4 +138,4 @@ registerIconLibrary("docks", {
138
138
  //#endregion
139
139
  export { registerIconLibrary as t };
140
140
 
141
- //# sourceMappingURL=webawesome-BGXn04Mw.js.map
141
+ //# sourceMappingURL=webawesome-C0Da7hPu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webawesome-BGXn04Mw.js","names":[],"sources":["../src/icons/extensions.svg?url","../src/icons/file-plus.svg?url","../src/icons/js.svg?url","../src/icons/jupyter.svg?url","../src/icons/layout-standard-bottom-panel.svg?url","../src/icons/layout-standard-full.svg?url","../src/icons/layout-standard-left-aux.svg?url","../src/icons/layout-standard-left-sidebar.svg?url","../src/icons/layout-standard-right-aux.svg?url","../src/icons/layout-standard-right-sidebar.svg?url","../src/icons/mark-github.svg?url","../src/icons/python.svg?url","../src/icons/settings.svg?url","../src/externals/webawesome.ts"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='9.5'%20y='0.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='0.5'%20y='9.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='9.5'%20y='9.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='0.5'%20y='0.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.55'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z'/%3e%3cpolyline%20fill='none'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20points='14%202%2014%208%2020%208'/%3e%3cline%20x1='12'%20y1='13'%20x2='12'%20y2='17'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'/%3e%3cline%20x1='10'%20y1='15'%20x2='14'%20y2='15'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='2'%20y='2'%20width='28'%20height='28'%20fill='%23FFCA28'/%3e%3cpath%20d='M19%2025.2879L21.0615%2023.9237C21.2231%2024.4313%2022.2462%2025.6368%2023.5385%2025.6368C24.8308%2025.6368%2025.4308%2024.931%2025.4308%2024.463C25.4308%2023.1878%2024.1112%2022.7382%2023.4774%2022.5223C23.374%2022.4871%2023.289%2022.4581%2023.2308%2022.4328C23.2009%2022.4198%2023.1558%2022.4025%2023.0979%2022.3804C22.393%2022.1111%2019.7923%2021.1175%2019.7923%2018.2373C19.7923%2015.065%2022.8538%2014.7002%2023.5462%2014.7002C23.9991%2014.7002%2026.1769%2014.7557%2027.2615%2016.7939L25.2615%2018.1898C24.8231%2017.3015%2024.0946%2017.0081%2023.6462%2017.0081C22.5385%2017.0081%2022.3077%2017.8201%2022.3077%2018.1898C22.3077%2019.227%2023.5112%2019.6919%2024.5273%2020.0844C24.7932%2020.1871%2025.0462%2020.2848%2025.2615%2020.3866C26.3692%2020.91%2028%2021.7666%2028%2024.463C28%2025.8136%2026.8672%2028.0002%2024.0154%2028.0002C20.1846%2028.0002%2019.1692%2025.7003%2019%2025.2879Z'%20fill='%233E3E3E'/%3e%3cpath%20d='M9%2025.5587L11.1487%2024.1953C11.317%2024.7026%2011.9713%2025.638%2012.9205%2025.638C13.8698%2025.638%2014.3557%2024.663%2014.3557%2024.1953V15.0002H16.9982V24.1953C17.041%2025.4636%2016.3376%2028.0002%2013.2332%2028.0002C10.379%2028.0002%209.19242%2026.3039%209%2025.5587Z'%20fill='%233E3E3E'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='-22%200%20300%20300'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20preserveAspectRatio='xMidYMid'%3e%3cg%3e%3cpath%20d='M10.5838307,156.409656%20L10.5838307,156.196646%20L10.5838307,123.657627%20L17.7200527,123.657627%20L17.7200527,158.912657%20C18.0516208,161.753926%2017.8075656,164.63288%2017.0023629,167.377784%20C16.19722,170.122687%2014.8474392,172.677251%2013.0335946,174.88924%20C9.6624625,177.797086%205.34298451,179.369568%200.891381719,179.309391%20L0.145805038,173.983903%20C3.01718628,173.985518%205.78730255,172.922981%207.92105685,171.001585%20C9.83826599,168.76489%2010.5838307,165.729334%2010.5838307,156.409656%20Z%20M63.8037763,152.209035%20C63.8037763,156.203166%2063.8037763,159.771277%2064.1232613,162.860071%20L57.7859014,162.860071%20L57.3598815,156.522711%20C56.0343268,158.765028%2054.1386519,160.616318%2051.8656486,161.888456%20C49.5925854,163.160593%2047.0232464,163.808237%2044.4187946,163.765408%20C38.2412071,163.765408%2030.8919752,160.410366%2030.8919752,146.723715%20L30.8919752,123.983721%20L38.0281972,123.983721%20L38.0281972,145.285823%20C38.0281972,152.688352%2040.3181887,157.641058%2046.7620834,157.641058%20C48.0878176,157.655354%2049.4030239,157.404719%2050.6306575,156.903927%20C51.8582911,156.403136%2052.9735276,155.662296%2053.9110465,154.724777%20C54.8485056,153.787318%2055.5894046,152.672022%2056.0901963,151.444448%20C56.5909282,150.216815%2056.8415633,148.901549%2056.8273268,147.575814%20L56.8273268,123.717444%20L63.9634889,123.717444%20L63.9634889,151.996025%20L63.8037763,152.209035%20Z%20M77.330762,136.653806%20C77.330762,131.70104%2077.330762,127.653648%2077.0112304,123.979032%20L83.4018876,123.979032%20L83.7213726,130.635931%20C85.1452074,128.23088%2087.1949721,126.257257%2089.6521533,124.925482%20C92.1093944,123.593709%2094.8819333,122.953703%2097.6742718,123.073695%20C107.153723,123.073695%20114.289945,131.008713%20114.289945,142.831393%20C114.289945,156.784292%20105.715831,163.707504%2096.4493898,163.707504%20C94.0776877,163.813321%2091.7187865,163.305232%2089.6009496,162.232346%20C87.4831127,161.159401%2085.6780613,159.558028%2084.3604623,157.583154%20L84.3604623,178.885226%20L77.330762,178.885226%20L77.330762,136.813578%20L77.330762,136.653806%20Z%20M84.3604623,147.038594%20C84.3797833,148.004885%2084.4867369,148.967408%2084.6800071,149.914378%20C85.2842232,152.279021%2086.6597255,154.374666%2088.5887785,155.869683%20C90.5178913,157.364761%2092.8904309,158.173852%2095.3310427,158.168947%20C102.840047,158.168947%20107.260258,152.044597%20107.260258,143.150938%20C107.260258,135.375686%20103.106354,128.718758%2095.59735,128.718758%20C92.6257387,128.962101%2089.844945,130.280974%2087.7762781,132.428062%20C85.7076111,134.575149%2084.4931374,137.403079%2084.3604623,140.381689%20L84.3604623,147.038594%20Z%20M127.004503,123.94359%20L135.578617,146.896647%20C136.483954,149.452886%20137.442529,152.54168%20138.081618,154.831671%20C138.827183,152.488442%20139.625985,149.506124%20140.58462,146.736875%20L148.359872,123.94359%20L155.868876,123.94359%20L145.21784,151.636343%20C139.892293,164.950152%20136.643726,171.820127%20131.744199,175.97403%20C129.27643,178.228071%20126.267791,179.805756%20123.010354,180.553953%20L121.252929,174.589376%20C123.530581,173.840999%20125.645092,172.666304%20127.48382,171.127799%20C130.081872,169.010501%20132.14366,166.310102%20133.501635,163.246013%20C133.792288,162.715372%20133.990404,162.139031%20134.087428,161.541814%20C134.026892,160.899135%20133.865146,160.270094%20133.60817,159.677902%20L119.122716,123.837079%20L126.897968,123.837079%20L127.004503,123.94359%20Z%20M174.813541,112.770851%20L174.813541,123.954441%20L185.038557,123.954441%20L185.038557,129.279989%20L174.813541,129.279989%20L174.813541,150.262575%20C174.813541,155.055568%20176.198196,157.824817%20180.139089,157.824817%20C181.538758,157.847727%20182.935316,157.686579%20184.292992,157.345559%20L184.612537,162.671047%20C182.57671,163.376355%20180.428486,163.701283%20178.275118,163.629682%20C176.849069,163.718929%20175.420569,163.498622%20174.087657,162.983833%20C172.754744,162.469044%20171.549004,161.671976%20170.553103,160.647363%20C168.383883,157.745977%20167.394359,154.130491%20167.783854,150.528882%20L167.783854,129.226751%20L161.712742,129.226751%20L161.712742,123.901204%20L167.890329,123.901204%20L167.890329,114.421764%20L174.813541,112.770851%20Z%20M198.184399,144.647511%20C198.03988,146.453639%20198.289199,148.269577%20198.915189,149.969888%20C199.541179,151.670199%20200.528884,153.214267%20201.810114,154.495437%20C203.091285,155.776667%20204.635352,156.764373%20206.335664,157.390363%20C208.035975,158.016352%20209.851913,158.265672%20211.658041,158.121153%20C215.311153,158.202863%20218.940457,157.513288%20222.309077,156.097409%20L223.533958,161.422956%20C219.400274,163.12572%20214.955358,163.942168%20210.486396,163.819423%20C207.881107,163.997798%20205.268101,163.61054%20202.826592,162.684147%20C200.385023,161.757814%20198.172795,160.3143%20196.341489,158.452721%20C194.51022,156.591082%20193.103284,154.355345%20192.217196,151.898941%20C191.331104,149.442478%20190.986827,146.82349%20191.207978,144.221491%20C191.207978,132.505346%20198.184399,123.238905%20209.581059,123.238905%20C222.362314,123.238905%20225.557643,134.422495%20225.557643,141.558717%20C225.625954,142.658281%20225.625954,143.761016%20225.557643,144.860581%20L198.024687,144.860581%20L198.184399,144.647511%20Z%20M219.06051,139.322023%20C219.266043,137.898188%20219.163995,136.446897%20218.761184,135.065892%20C218.358433,133.684886%20217.664311,132.406228%20216.725656,131.316115%20C215.786941,130.226062%20214.625525,129.349856%20213.31959,128.746561%20C212.013656,128.143278%20210.59353,127.826939%20209.155039,127.818864%20C206.228949,128.030665%20203.487515,129.327603%20201.467959,131.455549%20C199.448402,133.583436%20198.296377,136.388874%20198.237697,139.322023%20L219.06051,139.322023%20Z%20M236.385366,136.053478%20C236.385366,131.473555%20236.385366,127.532637%20236.065834,123.911277%20L242.456492,123.911277%20L242.456492,131.526792%20L242.775977,131.526792%20C243.446769,129.176325%20244.83268,127.093027%20246.741335,125.566097%20C248.64999,124.039161%20250.986699,123.144369%20253.427072,123.005938%20C254.098762,122.917777%20254.779066,122.917777%20255.450756,123.005938%20L255.450756,129.66288%20C254.63688,129.568608%20253.814868,129.568608%20253.000992,129.66288%20C250.58353,129.756495%20248.282771,130.726973%20246.528505,132.393068%20C244.774238,134.059104%20243.686458,136.306745%20243.468304,138.716252%20C243.269171,139.805946%20243.162278,140.910475%20243.148819,142.018055%20L243.148819,162.734394%20L236.11909,162.734394%20L236.11909,136.106715%20L236.385366,136.053478%20Z'%20fill='%234E4E4E'%3e%3c/path%3e%3cpath%20d='M233.257943,16.9621357%20C233.476636,20.5398773%20232.625434,24.1017075%20230.812666,27.1939108%20C228.999898,30.286174%20226.307754,32.7687777%20223.079047,34.3255867%20C219.85034,35.8823358%20216.231324,36.4427655%20212.683013,35.9355136%20C209.134702,35.4282017%20205.817704,33.8761781%20203.154559,31.4770796%20C200.491421,29.0780409%20198.602703,25.9404959%20197.729013,22.4642047%20C196.855323,18.9879135%20197.036209,15.330196%20198.248625,11.9570899%20C199.461041,8.5839838%20201.650109,5.64808944%20204.536953,3.52346926%20C207.423803,1.39884909%20210.877782,0.181657262%20214.458814,0.0269503701%20C216.806708,-0.10224713%20219.156996,0.233972409%20221.374429,1.01627461%20C223.591922,1.79857323%20225.632893,3.01152758%20227.379981,4.58537259%20C229.12701,6.15922358%20230.54576,8.06291398%20231.554522,10.1869719%20C232.563283,12.3110298%20233.142196,14.6135829%20233.257943,16.9621357%20Z'%20fill='%23767677'%3e%3c/path%3e%3cpath%20d='M127.952969,225.540984%20C80.0236372,225.540984%2037.8984531,208.339518%2016.1170646,182.936721%20C24.5683135,205.78944%2039.8176362,225.504615%2059.8124569,239.428562%20C79.8070981,253.352629%20103.588124,260.816651%20127.952969,260.816651%20C152.318411,260.816651%20176.098839,253.352629%20196.094019,239.428562%20C216.0886,225.504615%20231.337863,205.78944%20239.789471,182.936721%20C218.061379,208.339518%20176.095848,225.540984%20127.952969,225.540984%20Z'%20fill='%23F37726'%3e%3c/path%3e%3cpath%20d='M127.952969,60.3543133%20C175.882898,60.3543133%20218.008142,77.5557785%20239.789471,102.958396%20C231.337863,80.1058563%20216.0886,60.3906823%20196.094019,46.4667348%20C176.098839,32.5427873%20152.318411,25.0784666%20127.952969,25.0784666%20C103.588124,25.0784666%2079.8070981,32.5427873%2059.8124569,46.4667348%20C39.8176362,60.3906823%2024.5683135,80.1058563%2016.1170646,102.958396%20C37.8984531,77.502541%2079.8106871,60.3543133%20127.952969,60.3543133%20Z'%20fill='%23F37726'%3e%3c/path%3e%3cpath%20d='M61.9716874,274.975202%20C62.2528294,279.48161%2061.186045,283.969713%2058.9072992,287.867658%20C56.6284936,291.765602%2053.2409116,294.896926%2049.1761363,296.862707%20C45.1113611,298.828488%2040.5533909,299.539717%2036.0829934,298.905772%20C31.6125362,298.271767%2027.4320141,296.321359%2024.0740419,293.30297%20C20.7160636,290.284582%2018.3326671,286.334835%2017.2274978,281.957035%20C16.1223339,277.579176%2016.3454363,272.971497%2017.868382,268.720869%20C19.3913284,264.470301%2022.1451683,260.769335%2025.7790187,258.089483%20C29.4129289,255.40962%2033.7623156,253.872201%2038.2730898,253.673106%20C41.2280121,253.515051%2044.1851476,253.940738%2046.9755719,254.925846%20C49.7659364,255.910962%2052.3349165,257.436187%2054.5356604,259.414404%20C56.7364042,261.392633%2058.5259031,263.785032%2059.8017495,266.455044%20C61.0776558,269.124996%2061.8150255,272.02022%2061.9716874,274.975202%20Z'%20fill='%239E9E9E'%3e%3c/path%3e%3cpath%20d='M21.5641016,54.5650606%20C18.9814831,54.6363631%2016.4354131,53.9424806%2014.2460944,52.570687%20C12.0567996,51.1988336%2010.3219858,49.2102622%209.25983722,46.8551295%20C8.19768984,44.499937%207.85562972,41.8832824%208.276674,39.3342215%20C8.69771827,36.7851606%209.86306631,34.4174662%2011.6261678,32.5289814%20C13.3892752,30.6404727%2015.6714246,29.3154324%2018.1856119,28.7204982%20C20.6997394,28.1255646%2023.3336813,28.2873008%2025.7562282,29.1853653%20C28.1787154,30.0834346%2030.2815979,31.6777312%2031.800363,33.767765%20C33.3191879,35.8578106%2034.1861222,38.3502842%2034.2921188,40.9317063%20C34.3930308,44.4222341%2033.113057,47.8117302%2030.7300493,50.3642007%20C28.3470417,52.916731%2025.0533134,54.4262842%2021.5641016,54.5650606%20Z'%20fill='%23616262'%3e%3c/path%3e%3c/g%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='3'%20width='16'%20height='11'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='4'%20y='16'%20width='16'%20height='5'%20rx='1.25'%20ry='1.25'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='8'%20y='4'%20width='8'%20height='8'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='2.5'%20y1='2'%20x2='2.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3cline%20x1='21.5'%20y1='2'%20x2='21.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3cline%20x1='6'%20y1='20'%20x2='18'%20y2='20'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='8'%20y='4'%20width='12'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='2'%20y='4'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='2'%20y='13'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='7'%20y='4'%20width='13'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='2.5'%20y1='2'%20x2='2.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='4'%20width='12'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='17'%20y='4'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='17'%20y='13'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='4'%20width='13'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='21.5'%20y1='2'%20x2='21.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20width='16'%20height='16'%3e%3cpath%20fill-rule='evenodd'%20d='M8%200C3.58%200%200%203.58%200%208c0%203.54%202.29%206.53%205.47%207.59.4.07.55-.17.55-.38%200-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01%201.08.58%201.23.82.72%201.21%201.87.87%202.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95%200-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12%200%200%20.67-.21%202.2.82.64-.18%201.32-.27%202-.27.68%200%201.36.09%202%20.27%201.53-1.04%202.2-.82%202.2-.82.44%201.1.16%201.92.08%202.12.51.56.82%201.27.82%202.15%200%203.07-1.87%203.75-3.65%203.95.29.25.54.73.54%201.48%200%201.07-.01%201.93-.01%202.2%200%20.21.15.46.55.38A8.013%208.013%200%200016%208c0-4.42-3.58-8-8-8z'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M13.0164%202C10.8193%202%209.03825%203.72453%209.03825%205.85185V8.51852H15.9235V9.25926H5.97814C3.78107%209.25926%202%2010.9838%202%2013.1111L2%2018.8889C2%2021.0162%203.78107%2022.7407%205.97814%2022.7407H8.27322V19.4815C8.27322%2017.3542%2010.0543%2015.6296%2012.2514%2015.6296H19.5956C21.4547%2015.6296%2022.9617%2014.1704%2022.9617%2012.3704V5.85185C22.9617%203.72453%2021.1807%202%2018.9836%202H13.0164ZM12.0984%206.74074C12.8589%206.74074%2013.4754%206.14378%2013.4754%205.40741C13.4754%204.67103%2012.8589%204.07407%2012.0984%204.07407C11.3378%204.07407%2010.7213%204.67103%2010.7213%205.40741C10.7213%206.14378%2011.3378%206.74074%2012.0984%206.74074Z'%20fill='url(%23paint0_linear_87_8204)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M18.9834%2030C21.1805%2030%2022.9616%2028.2755%2022.9616%2026.1482V23.4815L16.0763%2023.4815L16.0763%2022.7408L26.0217%2022.7408C28.2188%2022.7408%2029.9998%2021.0162%2029.9998%2018.8889V13.1111C29.9998%2010.9838%2028.2188%209.25928%2026.0217%209.25928L23.7266%209.25928V12.5185C23.7266%2014.6459%2021.9455%2016.3704%2019.7485%2016.3704L12.4042%2016.3704C10.5451%2016.3704%209.03809%2017.8296%209.03809%2019.6296L9.03809%2026.1482C9.03809%2028.2755%2010.8192%2030%2013.0162%2030H18.9834ZM19.9015%2025.2593C19.1409%2025.2593%2018.5244%2025.8562%2018.5244%2026.5926C18.5244%2027.329%2019.1409%2027.9259%2019.9015%2027.9259C20.662%2027.9259%2021.2785%2027.329%2021.2785%2026.5926C21.2785%2025.8562%2020.662%2025.2593%2019.9015%2025.2593Z'%20fill='url(%23paint1_linear_87_8204)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_87_8204'%20x1='12.4809'%20y1='2'%20x2='12.4809'%20y2='22.7407'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23327EBD'/%3e%3cstop%20offset='1'%20stop-color='%231565A7'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_87_8204'%20x1='19.519'%20y1='9.25928'%20x2='19.519'%20y2='30'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23FFDA4B'/%3e%3cstop%20offset='1'%20stop-color='%23F9C600'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3cline%20x1='1.5'%20y1='5.5'%20x2='22.5'%20y2='5.5'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3cline%20x1='1.5'%20y1='12'%20x2='22.5'%20y2='12'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3cline%20x1='1.5'%20y1='18.5'%20x2='22.5'%20y2='18.5'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3ccircle%20cx='16.75'%20cy='5.5'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3ccircle%20cx='7.25'%20cy='12'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3ccircle%20cx='14.25'%20cy='18.5'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3c/svg%3e\"","// unfortunately, webawesome has no all-in-one import, so we need to import each component individually\nimport '@awesome.me/webawesome/dist/components/accordion/accordion.js';\nimport '@awesome.me/webawesome/dist/components/accordion-item/accordion-item.js';\nimport '@awesome.me/webawesome/dist/components/animated-image/animated-image.js';\nimport '@awesome.me/webawesome/dist/components/animation/animation.js';\nimport '@awesome.me/webawesome/dist/components/avatar/avatar.js';\nimport '@awesome.me/webawesome/dist/components/badge/badge.js';\nimport '@awesome.me/webawesome/dist/components/breadcrumb/breadcrumb.js';\nimport '@awesome.me/webawesome/dist/components/breadcrumb-item/breadcrumb-item.js';\nimport '@awesome.me/webawesome/dist/components/button/button.js';\nimport '@awesome.me/webawesome/dist/components/button-group/button-group.js';\nimport '@awesome.me/webawesome/dist/components/callout/callout.js';\nimport '@awesome.me/webawesome/dist/components/card/card.js';\nimport '@awesome.me/webawesome/dist/components/carousel/carousel.js';\nimport '@awesome.me/webawesome/dist/components/carousel-item/carousel-item.js';\nimport '@awesome.me/webawesome/dist/components/checkbox/checkbox.js';\nimport '@awesome.me/webawesome/dist/components/checkbox-group/checkbox-group.js';\nimport '@awesome.me/webawesome/dist/components/color-picker/color-picker.js';\nimport '@awesome.me/webawesome/dist/components/comparison/comparison.js';\nimport '@awesome.me/webawesome/dist/components/copy-button/copy-button.js';\nimport '@awesome.me/webawesome/dist/components/details/details.js';\nimport '@awesome.me/webawesome/dist/components/dialog/dialog.js';\nimport '@awesome.me/webawesome/dist/components/divider/divider.js';\nimport '@awesome.me/webawesome/dist/components/drawer/drawer.js';\nimport '@awesome.me/webawesome/dist/components/dropdown/dropdown.js';\nimport '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js';\nimport '@awesome.me/webawesome/dist/components/format-bytes/format-bytes.js';\nimport '@awesome.me/webawesome/dist/components/format-date/format-date.js';\nimport '@awesome.me/webawesome/dist/components/format-number/format-number.js';\nimport '@awesome.me/webawesome/dist/components/icon/icon.js';\nimport '@awesome.me/webawesome/dist/components/include/include.js';\nimport '@awesome.me/webawesome/dist/components/input/input.js';\nimport '@awesome.me/webawesome/dist/components/intersection-observer/intersection-observer.js';\nimport '@awesome.me/webawesome/dist/components/known-date/known-date.js';\nimport '@awesome.me/webawesome/dist/components/markdown/markdown.js';\nimport '@awesome.me/webawesome/dist/components/mutation-observer/mutation-observer.js';\nimport '@awesome.me/webawesome/dist/components/number-input/number-input.js';\nimport '@awesome.me/webawesome/dist/components/option/option.js';\nimport '@awesome.me/webawesome/dist/components/otp-input/otp-input.js';\nimport '@awesome.me/webawesome/dist/components/page/page.js';\nimport '@awesome.me/webawesome/dist/components/pagination/pagination.js';\nimport '@awesome.me/webawesome/dist/components/popover/popover.js';\nimport '@awesome.me/webawesome/dist/components/popup/popup.js';\nimport '@awesome.me/webawesome/dist/components/progress-bar/progress-bar.js';\nimport '@awesome.me/webawesome/dist/components/progress-ring/progress-ring.js';\nimport '@awesome.me/webawesome/dist/components/qr-code/qr-code.js';\nimport '@awesome.me/webawesome/dist/components/radio/radio.js';\nimport '@awesome.me/webawesome/dist/components/radio-group/radio-group.js';\nimport '@awesome.me/webawesome/dist/components/rating/rating.js';\nimport '@awesome.me/webawesome/dist/components/random-content/random-content.js';\nimport '@awesome.me/webawesome/dist/components/relative-time/relative-time.js';\nimport '@awesome.me/webawesome/dist/components/resize-observer/resize-observer.js';\nimport '@awesome.me/webawesome/dist/components/scroller/scroller.js';\nimport '@awesome.me/webawesome/dist/components/select/select.js';\nimport '@awesome.me/webawesome/dist/components/skeleton/skeleton.js';\nimport '@awesome.me/webawesome/dist/components/slider/slider.js';\nimport '@awesome.me/webawesome/dist/components/spinner/spinner.js';\nimport '@awesome.me/webawesome/dist/components/split-panel/split-panel.js';\nimport '@awesome.me/webawesome/dist/components/switch/switch.js';\nimport '@awesome.me/webawesome/dist/components/tab/tab.js';\nimport '@awesome.me/webawesome/dist/components/tab-group/tab-group.js';\nimport '@awesome.me/webawesome/dist/components/tab-panel/tab-panel.js';\nimport '@awesome.me/webawesome/dist/components/tag/tag.js';\nimport '@awesome.me/webawesome/dist/components/textarea/textarea.js';\nimport '@awesome.me/webawesome/dist/components/time-input/time-input.js';\nimport '@awesome.me/webawesome/dist/components/toast/toast.js';\nimport '@awesome.me/webawesome/dist/components/toast-item/toast-item.js';\nimport '@awesome.me/webawesome/dist/components/tooltip/tooltip.js';\nimport '@awesome.me/webawesome/dist/components/tree/tree.js';\nimport '@awesome.me/webawesome/dist/components/tree-item/tree-item.js';\nimport '@awesome.me/webawesome/dist/components/zoomable-frame/zoomable-frame.js';\n\n// Import default WebAwesome styles\nimport '@awesome.me/webawesome/dist/styles/native.css';\nimport '@awesome.me/webawesome/dist/styles/utilities.css';\nimport '@awesome.me/webawesome/dist/styles/themes/default.css';\n\nimport {registerIconLibrary} from '@awesome.me/webawesome'\n\nregisterIconLibrary('docks', {\n resolver: (name: string) => {\n return new URL(`../icons/${name}.svg`, import.meta.url).href;\n },\n mutator: (svg: SVGElement) => {\n svg.setAttribute('fill', 'currentColor');\n svg.setAttribute('stroke', 'currentColor');\n }\n});\n\nexport { registerIconLibrary };"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAA,qBAAe;;;ACAf,IAAA,oBAAe;;;ACAf,IAAA,aAAe;;;ACAf,IAAA,kBAAe;;;ACAf,IAAA,uCAAe;;;ACAf,IAAA,+BAAe;;;ACAf,IAAA,mCAAe;;;ACAf,IAAA,uCAAe;;;ACAf,IAAA,oCAAe;;;ACAf,IAAA,wCAAe;;;ACAf,IAAA,sBAAe;;;ACAf,IAAA,iBAAe;;;ACAf,IAAA,mBAAe;;;AC+Ef,oBAAoB,SAAS;CACzB,WAAW,SAAiB;AACxB,SAAO,IAAA,KAAA,uBAAA,OAAA;GAAA,2BAAA;GAAA,0BAAA;GAAA,mBAAA;GAAA,wBAAA;GAAA,6CAAA;GAAA,qCAAA;GAAA,yCAAA;GAAA,6CAAA;GAAA,0CAAA;GAAA,8CAAA;GAAA,4BAAA;GAAA,uBAAA;GAAA,yBAAA;GAAA,CAAA,EAAA,YAAA,KAAA,QAAA,OAAA,KAAA,IAAgD,CAAC;;CAE5D,UAAU,QAAoB;AAC1B,MAAI,aAAa,QAAQ,eAAe;AACxC,MAAI,aAAa,UAAU,eAAe;;CAEjD,CAAC"}
1
+ {"version":3,"file":"webawesome-C0Da7hPu.js","names":[],"sources":["../src/icons/extensions.svg?url","../src/icons/file-plus.svg?url","../src/icons/js.svg?url","../src/icons/jupyter.svg?url","../src/icons/layout-standard-bottom-panel.svg?url","../src/icons/layout-standard-full.svg?url","../src/icons/layout-standard-left-aux.svg?url","../src/icons/layout-standard-left-sidebar.svg?url","../src/icons/layout-standard-right-aux.svg?url","../src/icons/layout-standard-right-sidebar.svg?url","../src/icons/mark-github.svg?url","../src/icons/python.svg?url","../src/icons/settings.svg?url","../src/externals/webawesome.ts"],"sourcesContent":["export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='9.5'%20y='0.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='0.5'%20y='9.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='9.5'%20y='9.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-brand-fill-loud)'%20fill-opacity='0.28'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.9'%20stroke-width='1'%20stroke-linejoin='round'/%3e%3crect%20x='0.5'%20y='0.5'%20width='8'%20height='8'%20rx='1'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.55'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z'/%3e%3cpolyline%20fill='none'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20points='14%202%2014%208%2020%208'/%3e%3cline%20x1='12'%20y1='13'%20x2='12'%20y2='17'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'/%3e%3cline%20x1='10'%20y1='15'%20x2='14'%20y2='15'%20stroke='currentColor'%20stroke-width='1.5'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='2'%20y='2'%20width='28'%20height='28'%20fill='%23FFCA28'/%3e%3cpath%20d='M19%2025.2879L21.0615%2023.9237C21.2231%2024.4313%2022.2462%2025.6368%2023.5385%2025.6368C24.8308%2025.6368%2025.4308%2024.931%2025.4308%2024.463C25.4308%2023.1878%2024.1112%2022.7382%2023.4774%2022.5223C23.374%2022.4871%2023.289%2022.4581%2023.2308%2022.4328C23.2009%2022.4198%2023.1558%2022.4025%2023.0979%2022.3804C22.393%2022.1111%2019.7923%2021.1175%2019.7923%2018.2373C19.7923%2015.065%2022.8538%2014.7002%2023.5462%2014.7002C23.9991%2014.7002%2026.1769%2014.7557%2027.2615%2016.7939L25.2615%2018.1898C24.8231%2017.3015%2024.0946%2017.0081%2023.6462%2017.0081C22.5385%2017.0081%2022.3077%2017.8201%2022.3077%2018.1898C22.3077%2019.227%2023.5112%2019.6919%2024.5273%2020.0844C24.7932%2020.1871%2025.0462%2020.2848%2025.2615%2020.3866C26.3692%2020.91%2028%2021.7666%2028%2024.463C28%2025.8136%2026.8672%2028.0002%2024.0154%2028.0002C20.1846%2028.0002%2019.1692%2025.7003%2019%2025.2879Z'%20fill='%233E3E3E'/%3e%3cpath%20d='M9%2025.5587L11.1487%2024.1953C11.317%2024.7026%2011.9713%2025.638%2012.9205%2025.638C13.8698%2025.638%2014.3557%2024.663%2014.3557%2024.1953V15.0002H16.9982V24.1953C17.041%2025.4636%2016.3376%2028.0002%2013.2332%2028.0002C10.379%2028.0002%209.19242%2026.3039%209%2025.5587Z'%20fill='%233E3E3E'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='-22%200%20300%20300'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20preserveAspectRatio='xMidYMid'%3e%3cg%3e%3cpath%20d='M10.5838307,156.409656%20L10.5838307,156.196646%20L10.5838307,123.657627%20L17.7200527,123.657627%20L17.7200527,158.912657%20C18.0516208,161.753926%2017.8075656,164.63288%2017.0023629,167.377784%20C16.19722,170.122687%2014.8474392,172.677251%2013.0335946,174.88924%20C9.6624625,177.797086%205.34298451,179.369568%200.891381719,179.309391%20L0.145805038,173.983903%20C3.01718628,173.985518%205.78730255,172.922981%207.92105685,171.001585%20C9.83826599,168.76489%2010.5838307,165.729334%2010.5838307,156.409656%20Z%20M63.8037763,152.209035%20C63.8037763,156.203166%2063.8037763,159.771277%2064.1232613,162.860071%20L57.7859014,162.860071%20L57.3598815,156.522711%20C56.0343268,158.765028%2054.1386519,160.616318%2051.8656486,161.888456%20C49.5925854,163.160593%2047.0232464,163.808237%2044.4187946,163.765408%20C38.2412071,163.765408%2030.8919752,160.410366%2030.8919752,146.723715%20L30.8919752,123.983721%20L38.0281972,123.983721%20L38.0281972,145.285823%20C38.0281972,152.688352%2040.3181887,157.641058%2046.7620834,157.641058%20C48.0878176,157.655354%2049.4030239,157.404719%2050.6306575,156.903927%20C51.8582911,156.403136%2052.9735276,155.662296%2053.9110465,154.724777%20C54.8485056,153.787318%2055.5894046,152.672022%2056.0901963,151.444448%20C56.5909282,150.216815%2056.8415633,148.901549%2056.8273268,147.575814%20L56.8273268,123.717444%20L63.9634889,123.717444%20L63.9634889,151.996025%20L63.8037763,152.209035%20Z%20M77.330762,136.653806%20C77.330762,131.70104%2077.330762,127.653648%2077.0112304,123.979032%20L83.4018876,123.979032%20L83.7213726,130.635931%20C85.1452074,128.23088%2087.1949721,126.257257%2089.6521533,124.925482%20C92.1093944,123.593709%2094.8819333,122.953703%2097.6742718,123.073695%20C107.153723,123.073695%20114.289945,131.008713%20114.289945,142.831393%20C114.289945,156.784292%20105.715831,163.707504%2096.4493898,163.707504%20C94.0776877,163.813321%2091.7187865,163.305232%2089.6009496,162.232346%20C87.4831127,161.159401%2085.6780613,159.558028%2084.3604623,157.583154%20L84.3604623,178.885226%20L77.330762,178.885226%20L77.330762,136.813578%20L77.330762,136.653806%20Z%20M84.3604623,147.038594%20C84.3797833,148.004885%2084.4867369,148.967408%2084.6800071,149.914378%20C85.2842232,152.279021%2086.6597255,154.374666%2088.5887785,155.869683%20C90.5178913,157.364761%2092.8904309,158.173852%2095.3310427,158.168947%20C102.840047,158.168947%20107.260258,152.044597%20107.260258,143.150938%20C107.260258,135.375686%20103.106354,128.718758%2095.59735,128.718758%20C92.6257387,128.962101%2089.844945,130.280974%2087.7762781,132.428062%20C85.7076111,134.575149%2084.4931374,137.403079%2084.3604623,140.381689%20L84.3604623,147.038594%20Z%20M127.004503,123.94359%20L135.578617,146.896647%20C136.483954,149.452886%20137.442529,152.54168%20138.081618,154.831671%20C138.827183,152.488442%20139.625985,149.506124%20140.58462,146.736875%20L148.359872,123.94359%20L155.868876,123.94359%20L145.21784,151.636343%20C139.892293,164.950152%20136.643726,171.820127%20131.744199,175.97403%20C129.27643,178.228071%20126.267791,179.805756%20123.010354,180.553953%20L121.252929,174.589376%20C123.530581,173.840999%20125.645092,172.666304%20127.48382,171.127799%20C130.081872,169.010501%20132.14366,166.310102%20133.501635,163.246013%20C133.792288,162.715372%20133.990404,162.139031%20134.087428,161.541814%20C134.026892,160.899135%20133.865146,160.270094%20133.60817,159.677902%20L119.122716,123.837079%20L126.897968,123.837079%20L127.004503,123.94359%20Z%20M174.813541,112.770851%20L174.813541,123.954441%20L185.038557,123.954441%20L185.038557,129.279989%20L174.813541,129.279989%20L174.813541,150.262575%20C174.813541,155.055568%20176.198196,157.824817%20180.139089,157.824817%20C181.538758,157.847727%20182.935316,157.686579%20184.292992,157.345559%20L184.612537,162.671047%20C182.57671,163.376355%20180.428486,163.701283%20178.275118,163.629682%20C176.849069,163.718929%20175.420569,163.498622%20174.087657,162.983833%20C172.754744,162.469044%20171.549004,161.671976%20170.553103,160.647363%20C168.383883,157.745977%20167.394359,154.130491%20167.783854,150.528882%20L167.783854,129.226751%20L161.712742,129.226751%20L161.712742,123.901204%20L167.890329,123.901204%20L167.890329,114.421764%20L174.813541,112.770851%20Z%20M198.184399,144.647511%20C198.03988,146.453639%20198.289199,148.269577%20198.915189,149.969888%20C199.541179,151.670199%20200.528884,153.214267%20201.810114,154.495437%20C203.091285,155.776667%20204.635352,156.764373%20206.335664,157.390363%20C208.035975,158.016352%20209.851913,158.265672%20211.658041,158.121153%20C215.311153,158.202863%20218.940457,157.513288%20222.309077,156.097409%20L223.533958,161.422956%20C219.400274,163.12572%20214.955358,163.942168%20210.486396,163.819423%20C207.881107,163.997798%20205.268101,163.61054%20202.826592,162.684147%20C200.385023,161.757814%20198.172795,160.3143%20196.341489,158.452721%20C194.51022,156.591082%20193.103284,154.355345%20192.217196,151.898941%20C191.331104,149.442478%20190.986827,146.82349%20191.207978,144.221491%20C191.207978,132.505346%20198.184399,123.238905%20209.581059,123.238905%20C222.362314,123.238905%20225.557643,134.422495%20225.557643,141.558717%20C225.625954,142.658281%20225.625954,143.761016%20225.557643,144.860581%20L198.024687,144.860581%20L198.184399,144.647511%20Z%20M219.06051,139.322023%20C219.266043,137.898188%20219.163995,136.446897%20218.761184,135.065892%20C218.358433,133.684886%20217.664311,132.406228%20216.725656,131.316115%20C215.786941,130.226062%20214.625525,129.349856%20213.31959,128.746561%20C212.013656,128.143278%20210.59353,127.826939%20209.155039,127.818864%20C206.228949,128.030665%20203.487515,129.327603%20201.467959,131.455549%20C199.448402,133.583436%20198.296377,136.388874%20198.237697,139.322023%20L219.06051,139.322023%20Z%20M236.385366,136.053478%20C236.385366,131.473555%20236.385366,127.532637%20236.065834,123.911277%20L242.456492,123.911277%20L242.456492,131.526792%20L242.775977,131.526792%20C243.446769,129.176325%20244.83268,127.093027%20246.741335,125.566097%20C248.64999,124.039161%20250.986699,123.144369%20253.427072,123.005938%20C254.098762,122.917777%20254.779066,122.917777%20255.450756,123.005938%20L255.450756,129.66288%20C254.63688,129.568608%20253.814868,129.568608%20253.000992,129.66288%20C250.58353,129.756495%20248.282771,130.726973%20246.528505,132.393068%20C244.774238,134.059104%20243.686458,136.306745%20243.468304,138.716252%20C243.269171,139.805946%20243.162278,140.910475%20243.148819,142.018055%20L243.148819,162.734394%20L236.11909,162.734394%20L236.11909,136.106715%20L236.385366,136.053478%20Z'%20fill='%234E4E4E'%3e%3c/path%3e%3cpath%20d='M233.257943,16.9621357%20C233.476636,20.5398773%20232.625434,24.1017075%20230.812666,27.1939108%20C228.999898,30.286174%20226.307754,32.7687777%20223.079047,34.3255867%20C219.85034,35.8823358%20216.231324,36.4427655%20212.683013,35.9355136%20C209.134702,35.4282017%20205.817704,33.8761781%20203.154559,31.4770796%20C200.491421,29.0780409%20198.602703,25.9404959%20197.729013,22.4642047%20C196.855323,18.9879135%20197.036209,15.330196%20198.248625,11.9570899%20C199.461041,8.5839838%20201.650109,5.64808944%20204.536953,3.52346926%20C207.423803,1.39884909%20210.877782,0.181657262%20214.458814,0.0269503701%20C216.806708,-0.10224713%20219.156996,0.233972409%20221.374429,1.01627461%20C223.591922,1.79857323%20225.632893,3.01152758%20227.379981,4.58537259%20C229.12701,6.15922358%20230.54576,8.06291398%20231.554522,10.1869719%20C232.563283,12.3110298%20233.142196,14.6135829%20233.257943,16.9621357%20Z'%20fill='%23767677'%3e%3c/path%3e%3cpath%20d='M127.952969,225.540984%20C80.0236372,225.540984%2037.8984531,208.339518%2016.1170646,182.936721%20C24.5683135,205.78944%2039.8176362,225.504615%2059.8124569,239.428562%20C79.8070981,253.352629%20103.588124,260.816651%20127.952969,260.816651%20C152.318411,260.816651%20176.098839,253.352629%20196.094019,239.428562%20C216.0886,225.504615%20231.337863,205.78944%20239.789471,182.936721%20C218.061379,208.339518%20176.095848,225.540984%20127.952969,225.540984%20Z'%20fill='%23F37726'%3e%3c/path%3e%3cpath%20d='M127.952969,60.3543133%20C175.882898,60.3543133%20218.008142,77.5557785%20239.789471,102.958396%20C231.337863,80.1058563%20216.0886,60.3906823%20196.094019,46.4667348%20C176.098839,32.5427873%20152.318411,25.0784666%20127.952969,25.0784666%20C103.588124,25.0784666%2079.8070981,32.5427873%2059.8124569,46.4667348%20C39.8176362,60.3906823%2024.5683135,80.1058563%2016.1170646,102.958396%20C37.8984531,77.502541%2079.8106871,60.3543133%20127.952969,60.3543133%20Z'%20fill='%23F37726'%3e%3c/path%3e%3cpath%20d='M61.9716874,274.975202%20C62.2528294,279.48161%2061.186045,283.969713%2058.9072992,287.867658%20C56.6284936,291.765602%2053.2409116,294.896926%2049.1761363,296.862707%20C45.1113611,298.828488%2040.5533909,299.539717%2036.0829934,298.905772%20C31.6125362,298.271767%2027.4320141,296.321359%2024.0740419,293.30297%20C20.7160636,290.284582%2018.3326671,286.334835%2017.2274978,281.957035%20C16.1223339,277.579176%2016.3454363,272.971497%2017.868382,268.720869%20C19.3913284,264.470301%2022.1451683,260.769335%2025.7790187,258.089483%20C29.4129289,255.40962%2033.7623156,253.872201%2038.2730898,253.673106%20C41.2280121,253.515051%2044.1851476,253.940738%2046.9755719,254.925846%20C49.7659364,255.910962%2052.3349165,257.436187%2054.5356604,259.414404%20C56.7364042,261.392633%2058.5259031,263.785032%2059.8017495,266.455044%20C61.0776558,269.124996%2061.8150255,272.02022%2061.9716874,274.975202%20Z'%20fill='%239E9E9E'%3e%3c/path%3e%3cpath%20d='M21.5641016,54.5650606%20C18.9814831,54.6363631%2016.4354131,53.9424806%2014.2460944,52.570687%20C12.0567996,51.1988336%2010.3219858,49.2102622%209.25983722,46.8551295%20C8.19768984,44.499937%207.85562972,41.8832824%208.276674,39.3342215%20C8.69771827,36.7851606%209.86306631,34.4174662%2011.6261678,32.5289814%20C13.3892752,30.6404727%2015.6714246,29.3154324%2018.1856119,28.7204982%20C20.6997394,28.1255646%2023.3336813,28.2873008%2025.7562282,29.1853653%20C28.1787154,30.0834346%2030.2815979,31.6777312%2031.800363,33.767765%20C33.3191879,35.8578106%2034.1861222,38.3502842%2034.2921188,40.9317063%20C34.3930308,44.4222341%2033.113057,47.8117302%2030.7300493,50.3642007%20C28.3470417,52.916731%2025.0533134,54.4262842%2021.5641016,54.5650606%20Z'%20fill='%23616262'%3e%3c/path%3e%3c/g%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='3'%20width='16'%20height='11'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='4'%20y='16'%20width='16'%20height='5'%20rx='1.25'%20ry='1.25'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='8'%20y='4'%20width='8'%20height='8'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='2.5'%20y1='2'%20x2='2.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3cline%20x1='21.5'%20y1='2'%20x2='21.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3cline%20x1='6'%20y1='20'%20x2='18'%20y2='20'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='8'%20y='4'%20width='12'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='2'%20y='4'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='2'%20y='13'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='7'%20y='4'%20width='13'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='2.5'%20y1='2'%20x2='2.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='4'%20width='12'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='17'%20y='4'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3crect%20x='17'%20y='13'%20width='5'%20height='7'%20rx='1'%20ry='1'%20fill='%232563eb'%20fill-opacity='0.2'%20stroke='%232563eb'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3crect%20x='4'%20y='4'%20width='13'%20height='16'%20rx='1.25'%20ry='1.25'%20fill='none'%20stroke='%239ca3af'%20stroke-width='1.25'%20stroke-linejoin='round'/%3e%3cline%20x1='21.5'%20y1='2'%20x2='21.5'%20y2='22'%20stroke='%232563eb'%20stroke-width='2'%20stroke-linecap='round'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20width='16'%20height='16'%3e%3cpath%20fill-rule='evenodd'%20d='M8%200C3.58%200%200%203.58%200%208c0%203.54%202.29%206.53%205.47%207.59.4.07.55-.17.55-.38%200-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01%201.08.58%201.23.82.72%201.21%201.87.87%202.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95%200-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12%200%200%20.67-.21%202.2.82.64-.18%201.32-.27%202-.27.68%200%201.36.09%202%20.27%201.53-1.04%202.2-.82%202.2-.82.44%201.1.16%201.92.08%202.12.51.56.82%201.27.82%202.15%200%203.07-1.87%203.75-3.65%203.95.29.25.54.73.54%201.48%200%201.07-.01%201.93-.01%202.2%200%20.21.15.46.55.38A8.013%208.013%200%200016%208c0-4.42-3.58-8-8-8z'/%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width='800px'%20height='800px'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M13.0164%202C10.8193%202%209.03825%203.72453%209.03825%205.85185V8.51852H15.9235V9.25926H5.97814C3.78107%209.25926%202%2010.9838%202%2013.1111L2%2018.8889C2%2021.0162%203.78107%2022.7407%205.97814%2022.7407H8.27322V19.4815C8.27322%2017.3542%2010.0543%2015.6296%2012.2514%2015.6296H19.5956C21.4547%2015.6296%2022.9617%2014.1704%2022.9617%2012.3704V5.85185C22.9617%203.72453%2021.1807%202%2018.9836%202H13.0164ZM12.0984%206.74074C12.8589%206.74074%2013.4754%206.14378%2013.4754%205.40741C13.4754%204.67103%2012.8589%204.07407%2012.0984%204.07407C11.3378%204.07407%2010.7213%204.67103%2010.7213%205.40741C10.7213%206.14378%2011.3378%206.74074%2012.0984%206.74074Z'%20fill='url(%23paint0_linear_87_8204)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M18.9834%2030C21.1805%2030%2022.9616%2028.2755%2022.9616%2026.1482V23.4815L16.0763%2023.4815L16.0763%2022.7408L26.0217%2022.7408C28.2188%2022.7408%2029.9998%2021.0162%2029.9998%2018.8889V13.1111C29.9998%2010.9838%2028.2188%209.25928%2026.0217%209.25928L23.7266%209.25928V12.5185C23.7266%2014.6459%2021.9455%2016.3704%2019.7485%2016.3704L12.4042%2016.3704C10.5451%2016.3704%209.03809%2017.8296%209.03809%2019.6296L9.03809%2026.1482C9.03809%2028.2755%2010.8192%2030%2013.0162%2030H18.9834ZM19.9015%2025.2593C19.1409%2025.2593%2018.5244%2025.8562%2018.5244%2026.5926C18.5244%2027.329%2019.1409%2027.9259%2019.9015%2027.9259C20.662%2027.9259%2021.2785%2027.329%2021.2785%2026.5926C21.2785%2025.8562%2020.662%2025.2593%2019.9015%2025.2593Z'%20fill='url(%23paint1_linear_87_8204)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_87_8204'%20x1='12.4809'%20y1='2'%20x2='12.4809'%20y2='22.7407'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23327EBD'/%3e%3cstop%20offset='1'%20stop-color='%231565A7'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_87_8204'%20x1='19.519'%20y1='9.25928'%20x2='19.519'%20y2='30'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23FFDA4B'/%3e%3cstop%20offset='1'%20stop-color='%23F9C600'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20aria-hidden='true'%3e%3cline%20x1='1.5'%20y1='5.5'%20x2='22.5'%20y2='5.5'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3cline%20x1='1.5'%20y1='12'%20x2='22.5'%20y2='12'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3cline%20x1='1.5'%20y1='18.5'%20x2='22.5'%20y2='18.5'%20stroke='var(--wa-color-brand-fill-loud)'%20stroke-opacity='0.45'%20stroke-width='2.5'%20stroke-linecap='round'/%3e%3ccircle%20cx='16.75'%20cy='5.5'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3ccircle%20cx='7.25'%20cy='12'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3ccircle%20cx='14.25'%20cy='18.5'%20r='3.5'%20fill='var(--wa-color-success-fill-loud)'%20fill-opacity='0.85'%20stroke='var(--wa-color-success-fill-loud)'%20stroke-opacity='1'%20stroke-width='1'/%3e%3c/svg%3e\"","// unfortunately, webawesome has no all-in-one import, so we need to import each component individually\nimport '@awesome.me/webawesome/dist/components/accordion/accordion.js';\nimport '@awesome.me/webawesome/dist/components/accordion-item/accordion-item.js';\nimport '@awesome.me/webawesome/dist/components/animated-image/animated-image.js';\nimport '@awesome.me/webawesome/dist/components/animation/animation.js';\nimport '@awesome.me/webawesome/dist/components/avatar/avatar.js';\nimport '@awesome.me/webawesome/dist/components/badge/badge.js';\nimport '@awesome.me/webawesome/dist/components/breadcrumb/breadcrumb.js';\nimport '@awesome.me/webawesome/dist/components/breadcrumb-item/breadcrumb-item.js';\nimport '@awesome.me/webawesome/dist/components/button/button.js';\nimport '@awesome.me/webawesome/dist/components/button-group/button-group.js';\nimport '@awesome.me/webawesome/dist/components/callout/callout.js';\nimport '@awesome.me/webawesome/dist/components/card/card.js';\nimport '@awesome.me/webawesome/dist/components/carousel/carousel.js';\nimport '@awesome.me/webawesome/dist/components/carousel-item/carousel-item.js';\nimport '@awesome.me/webawesome/dist/components/checkbox/checkbox.js';\nimport '@awesome.me/webawesome/dist/components/checkbox-group/checkbox-group.js';\nimport '@awesome.me/webawesome/dist/components/color-picker/color-picker.js';\nimport '@awesome.me/webawesome/dist/components/comparison/comparison.js';\nimport '@awesome.me/webawesome/dist/components/copy-button/copy-button.js';\nimport '@awesome.me/webawesome/dist/components/details/details.js';\nimport '@awesome.me/webawesome/dist/components/dialog/dialog.js';\nimport '@awesome.me/webawesome/dist/components/divider/divider.js';\nimport '@awesome.me/webawesome/dist/components/drawer/drawer.js';\nimport '@awesome.me/webawesome/dist/components/dropdown/dropdown.js';\nimport '@awesome.me/webawesome/dist/components/dropdown-item/dropdown-item.js';\nimport '@awesome.me/webawesome/dist/components/format-bytes/format-bytes.js';\nimport '@awesome.me/webawesome/dist/components/format-date/format-date.js';\nimport '@awesome.me/webawesome/dist/components/format-number/format-number.js';\nimport '@awesome.me/webawesome/dist/components/icon/icon.js';\nimport '@awesome.me/webawesome/dist/components/include/include.js';\nimport '@awesome.me/webawesome/dist/components/input/input.js';\nimport '@awesome.me/webawesome/dist/components/intersection-observer/intersection-observer.js';\nimport '@awesome.me/webawesome/dist/components/known-date/known-date.js';\nimport '@awesome.me/webawesome/dist/components/markdown/markdown.js';\nimport '@awesome.me/webawesome/dist/components/mutation-observer/mutation-observer.js';\nimport '@awesome.me/webawesome/dist/components/number-input/number-input.js';\nimport '@awesome.me/webawesome/dist/components/option/option.js';\nimport '@awesome.me/webawesome/dist/components/otp-input/otp-input.js';\nimport '@awesome.me/webawesome/dist/components/page/page.js';\nimport '@awesome.me/webawesome/dist/components/pagination/pagination.js';\nimport '@awesome.me/webawesome/dist/components/popover/popover.js';\nimport '@awesome.me/webawesome/dist/components/popup/popup.js';\nimport '@awesome.me/webawesome/dist/components/progress-bar/progress-bar.js';\nimport '@awesome.me/webawesome/dist/components/progress-ring/progress-ring.js';\nimport '@awesome.me/webawesome/dist/components/qr-code/qr-code.js';\nimport '@awesome.me/webawesome/dist/components/radio/radio.js';\nimport '@awesome.me/webawesome/dist/components/radio-group/radio-group.js';\nimport '@awesome.me/webawesome/dist/components/rating/rating.js';\nimport '@awesome.me/webawesome/dist/components/random-content/random-content.js';\nimport '@awesome.me/webawesome/dist/components/relative-time/relative-time.js';\nimport '@awesome.me/webawesome/dist/components/resize-observer/resize-observer.js';\nimport '@awesome.me/webawesome/dist/components/scroller/scroller.js';\nimport '@awesome.me/webawesome/dist/components/select/select.js';\nimport '@awesome.me/webawesome/dist/components/skeleton/skeleton.js';\nimport '@awesome.me/webawesome/dist/components/slider/slider.js';\nimport '@awesome.me/webawesome/dist/components/spinner/spinner.js';\nimport '@awesome.me/webawesome/dist/components/split-panel/split-panel.js';\nimport '@awesome.me/webawesome/dist/components/switch/switch.js';\nimport '@awesome.me/webawesome/dist/components/tab/tab.js';\nimport '@awesome.me/webawesome/dist/components/tab-group/tab-group.js';\nimport '@awesome.me/webawesome/dist/components/tab-panel/tab-panel.js';\nimport '@awesome.me/webawesome/dist/components/tag/tag.js';\nimport '@awesome.me/webawesome/dist/components/textarea/textarea.js';\nimport '@awesome.me/webawesome/dist/components/time-input/time-input.js';\nimport '@awesome.me/webawesome/dist/components/toast/toast.js';\nimport '@awesome.me/webawesome/dist/components/toast-item/toast-item.js';\nimport '@awesome.me/webawesome/dist/components/tooltip/tooltip.js';\nimport '@awesome.me/webawesome/dist/components/tree/tree.js';\nimport '@awesome.me/webawesome/dist/components/tree-item/tree-item.js';\nimport '@awesome.me/webawesome/dist/components/zoomable-frame/zoomable-frame.js';\n\n// Import default WebAwesome styles\nimport '@awesome.me/webawesome/dist/styles/native.css';\nimport '@awesome.me/webawesome/dist/styles/utilities.css';\nimport '@awesome.me/webawesome/dist/styles/themes/default.css';\n\nimport {registerIconLibrary} from '@awesome.me/webawesome'\n\nregisterIconLibrary('docks', {\n resolver: (name: string) => {\n return new URL(`../icons/${name}.svg`, import.meta.url).href;\n },\n mutator: (svg: SVGElement) => {\n svg.setAttribute('fill', 'currentColor');\n svg.setAttribute('stroke', 'currentColor');\n }\n});\n\nexport { registerIconLibrary };"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAA,qBAAe;;;ACAf,IAAA,oBAAe;;;ACAf,IAAA,aAAe;;;ACAf,IAAA,kBAAe;;;ACAf,IAAA,uCAAe;;;ACAf,IAAA,+BAAe;;;ACAf,IAAA,mCAAe;;;ACAf,IAAA,uCAAe;;;ACAf,IAAA,oCAAe;;;ACAf,IAAA,wCAAe;;;ACAf,IAAA,sBAAe;;;ACAf,IAAA,iBAAe;;;ACAf,IAAA,mBAAe;;;AC+Ef,oBAAoB,SAAS;CACzB,WAAW,SAAiB;EACxB,OAAO,IAAA,KAAA,uBAAA,OAAA;GAAA,2BAAA;GAAA,0BAAA;GAAA,mBAAA;GAAA,wBAAA;GAAA,6CAAA;GAAA,qCAAA;GAAA,yCAAA;GAAA,6CAAA;GAAA,0CAAA;GAAA,8CAAA;GAAA,4BAAA;GAAA,uBAAA;GAAA,yBAAA;EAAA,CAAA,EAAA,CAAA,YAAA,KAAA,QAAA,YAAA,GAAA,CAAgD,CAAC;CAC5D;CACA,UAAU,QAAoB;EAC1B,IAAI,aAAa,QAAQ,cAAc;EACvC,IAAI,aAAa,UAAU,cAAc;CAC7C;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
- import { n as defaultLogger, o as rootContext, t as createLogger } from "./logger-DT0_NW3S.js";
2
- import { n as subscribe, r as unsubscribe, t as publish } from "./events-B_ZxkU_G.js";
1
+ import { n as defaultLogger, o as rootContext, t as createLogger } from "./logger-CiT0Cc4g.js";
2
+ import { n as subscribe, r as unsubscribe, t as publish } from "./events-BAE5R6TH.js";
3
3
  import { LitElement, css } from "lit";
4
4
  import "@awesome.me/webawesome/dist/components/toast/toast.js";
5
5
  import { Signal, SignalWatcher, signal } from "@lit-labs/signals";
@@ -87,7 +87,7 @@ var ContributionTargetMappingRegistry = class {
87
87
  */
88
88
  listNameRemaps() {
89
89
  const result = {};
90
- const allNames = new Set([...this.globalNameRemaps.keys(), ...this.appNameRemaps.keys()]);
90
+ const allNames = /* @__PURE__ */ new Set([...this.globalNameRemaps.keys(), ...this.appNameRemaps.keys()]);
91
91
  for (const name of allNames) result[name] = {
92
92
  appTargets: this.appNameRemaps.get(name),
93
93
  globalTargets: this.globalNameRemaps.get(name)
@@ -172,9 +172,10 @@ var ContributionRegistry = class {
172
172
  const effectiveTargets = contributionTargetMappingRegistry.getEffectiveTargets(target, contribution);
173
173
  for (const effectiveTarget of effectiveTargets) {
174
174
  if (effectiveTarget === target) continue;
175
+ const contributionsForSlot = this.getContributions(effectiveTarget);
175
176
  publish(TOPIC_CONTRIBUTEIONS_CHANGED, {
176
177
  target: effectiveTarget,
177
- contributions: this.getContributions(effectiveTarget)
178
+ contributions: contributionsForSlot
178
179
  });
179
180
  }
180
181
  }
@@ -453,4 +454,4 @@ var DocksWidget = class extends DocksWidgetBase {
453
454
  //#endregion
454
455
  export { overrideContributionTargets as C, toastWarning as E, listContributionNameRemaps as S, toastInfo as T, getContributionDisabled as _, TOPIC_COMMAND_REGISTERED as a, applyConfigNameRemaps as b, EMPTY_SIGNALPORT as c, activeSelectionSignal as d, activeTasksSignal as f, contributionRegistry as g, TOPIC_CONTRIBUTEIONS_CHANGED as h, CommandStack as i, activeEditorSignal as l, perspectiveSwitchedSignal as m, watchSignal as n, commandRegistry as o, partDirtySignal as p, CommandRegistry as r, registerAll as s, DocksWidget as t, activePartSignal as u, getContributionVisible as v, toastError as w, contributionTargetMappingRegistry as x, readReactiveBoolean as y };
455
456
 
456
- //# sourceMappingURL=widget-BqQtioK1.js.map
457
+ //# sourceMappingURL=widget-DUR6wxME.js.map