@tokenoftrust/storefront-runner 2.0.7 → 2.0.9

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 (90) hide show
  1. package/package.json +1 -1
  2. package/pnpm-workspace.yaml +0 -3
  3. package/apps/storefront/.astro/content.d.ts +0 -159
  4. package/apps/storefront/.astro/integrations/_astrojs_cloudflare/cloudflare.d.ts +0 -1
  5. package/apps/storefront/.astro/types.d.ts +0 -3
  6. package/apps/storefront/node_modules/.bin/acorn +0 -43
  7. package/apps/storefront/node_modules/.bin/astro +0 -43
  8. package/apps/storefront/node_modules/.bin/astro-check +0 -43
  9. package/apps/storefront/node_modules/.bin/browserslist +0 -43
  10. package/apps/storefront/node_modules/.bin/cf-wrangler +0 -43
  11. package/apps/storefront/node_modules/.bin/depcruise +0 -43
  12. package/apps/storefront/node_modules/.bin/depcruise-baseline +0 -43
  13. package/apps/storefront/node_modules/.bin/depcruise-fmt +0 -43
  14. package/apps/storefront/node_modules/.bin/depcruise-wrap-stream-in-html +0 -43
  15. package/apps/storefront/node_modules/.bin/dependency-cruise +0 -43
  16. package/apps/storefront/node_modules/.bin/dependency-cruiser +0 -43
  17. package/apps/storefront/node_modules/.bin/drizzle-kit +0 -43
  18. package/apps/storefront/node_modules/.bin/esbuild +0 -43
  19. package/apps/storefront/node_modules/.bin/jiti +0 -43
  20. package/apps/storefront/node_modules/.bin/playwright +0 -43
  21. package/apps/storefront/node_modules/.bin/playwright-core +0 -43
  22. package/apps/storefront/node_modules/.bin/prettier +0 -43
  23. package/apps/storefront/node_modules/.bin/rollup +0 -43
  24. package/apps/storefront/node_modules/.bin/tsc +0 -43
  25. package/apps/storefront/node_modules/.bin/tsserver +0 -43
  26. package/apps/storefront/node_modules/.bin/tsx +0 -43
  27. package/apps/storefront/node_modules/.bin/vite +0 -43
  28. package/apps/storefront/node_modules/.bin/vitest +0 -43
  29. package/apps/storefront/node_modules/.bin/workerd +0 -43
  30. package/apps/storefront/node_modules/.bin/wrangler +0 -43
  31. package/apps/storefront/node_modules/.bin/wrangler2 +0 -43
  32. package/apps/storefront/node_modules/.bin/yaml +0 -43
  33. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_client__js.js +0 -58
  34. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_client__js.js.map +0 -1
  35. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_n_@preact_signals.js +0 -741
  36. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_n_@preact_signals.js.map +0 -1
  37. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_server__js.js +0 -2549
  38. package/apps/storefront/node_modules/.vite/deps/@astrojs_preact_server__js.js.map +0 -1
  39. package/apps/storefront/node_modules/.vite/deps/_metadata.json +0 -150
  40. package/apps/storefront/node_modules/.vite/deps/astro-BIHuWFxm.js +0 -434
  41. package/apps/storefront/node_modules/.vite/deps/astro-BIHuWFxm.js.map +0 -1
  42. package/apps/storefront/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  43. package/apps/storefront/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  44. package/apps/storefront/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2705
  45. package/apps/storefront/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  46. package/apps/storefront/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  47. package/apps/storefront/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  48. package/apps/storefront/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  49. package/apps/storefront/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  50. package/apps/storefront/node_modules/.vite/deps/audit-DKDpcdEI.js +0 -1535
  51. package/apps/storefront/node_modules/.vite/deps/audit-DKDpcdEI.js.map +0 -1
  52. package/apps/storefront/node_modules/.vite/deps/highlight-B9UoX1wa.js +0 -48
  53. package/apps/storefront/node_modules/.vite/deps/highlight-B9UoX1wa.js.map +0 -1
  54. package/apps/storefront/node_modules/.vite/deps/icons-BWi2wI9n.js +0 -42
  55. package/apps/storefront/node_modules/.vite/deps/icons-BWi2wI9n.js.map +0 -1
  56. package/apps/storefront/node_modules/.vite/deps/package.json +0 -3
  57. package/apps/storefront/node_modules/.vite/deps/preact.js +0 -310
  58. package/apps/storefront/node_modules/.vite/deps/preact.js.map +0 -1
  59. package/apps/storefront/node_modules/.vite/deps/preact_compat.js +0 -420
  60. package/apps/storefront/node_modules/.vite/deps/preact_compat.js.map +0 -1
  61. package/apps/storefront/node_modules/.vite/deps/preact_compat_jsx-runtime.js +0 -4
  62. package/apps/storefront/node_modules/.vite/deps/preact_debug.js +0 -236
  63. package/apps/storefront/node_modules/.vite/deps/preact_debug.js.map +0 -1
  64. package/apps/storefront/node_modules/.vite/deps/preact_devtools.js +0 -12
  65. package/apps/storefront/node_modules/.vite/deps/preact_devtools.js.map +0 -1
  66. package/apps/storefront/node_modules/.vite/deps/preact_hooks.js +0 -192
  67. package/apps/storefront/node_modules/.vite/deps/preact_hooks.js.map +0 -1
  68. package/apps/storefront/node_modules/.vite/deps/preact_jsx-dev-runtime.js +0 -3
  69. package/apps/storefront/node_modules/.vite/deps/preact_jsx-runtime.js +0 -92
  70. package/apps/storefront/node_modules/.vite/deps/preact_jsx-runtime.js.map +0 -1
  71. package/apps/storefront/node_modules/.vite/deps/preact_test-utils.js +0 -59
  72. package/apps/storefront/node_modules/.vite/deps/preact_test-utils.js.map +0 -1
  73. package/apps/storefront/node_modules/.vite/deps/rolldown-runtime-BPOCksWG.js +0 -24
  74. package/apps/storefront/node_modules/.vite/deps/settings-BVDV0Roj.js +0 -189
  75. package/apps/storefront/node_modules/.vite/deps/settings-BVDV0Roj.js.map +0 -1
  76. package/apps/storefront/node_modules/.vite/deps/static-html-DveYqwMo.js +0 -13
  77. package/apps/storefront/node_modules/.vite/deps/static-html-DveYqwMo.js.map +0 -1
  78. package/apps/storefront/node_modules/.vite/deps/toolbar-B3VIHCXg.js +0 -458
  79. package/apps/storefront/node_modules/.vite/deps/toolbar-B3VIHCXg.js.map +0 -1
  80. package/apps/storefront/node_modules/.vite/deps/ui-library-BK6ricUd.js +0 -1016
  81. package/apps/storefront/node_modules/.vite/deps/ui-library-BK6ricUd.js.map +0 -1
  82. package/apps/storefront/node_modules/.vite/deps/window-BvxDenKN.js +0 -32
  83. package/apps/storefront/node_modules/.vite/deps/window-BvxDenKN.js.map +0 -1
  84. package/apps/storefront/node_modules/.vite/deps/xray-YFiRUU0Z.js +0 -113
  85. package/apps/storefront/node_modules/.vite/deps/xray-YFiRUU0Z.js.map +0 -1
  86. package/apps/storefront/node_modules/.vite/deps_ssr/_metadata.json +0 -8
  87. package/apps/storefront/node_modules/.vite/deps_ssr/package.json +0 -3
  88. package/packages/public-runtime/node_modules/.bin/tsc +0 -43
  89. package/packages/public-runtime/node_modules/.bin/tsserver +0 -43
  90. package/packages/public-runtime/node_modules/.bin/vitest +0 -43
@@ -1,458 +0,0 @@
1
- import { a as serverHelpers, t as settings } from "./astro_runtime_client_dev-toolbar_entrypoint__js.js";
2
- import { n as isDefinedIcon, t as getIconElement } from "./icons-BWi2wI9n.js";
3
- //#region ../../node_modules/.pnpm/astro@7.2.10_@emnapi+core@1.11.1_@emnapi+runtime@1.11.3_@types+node@26.4.1_jiti@2.7.0_tsx@4.23.13_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/toolbar.js
4
- var WS_EVENT_NAME = "astro-dev-toolbar";
5
- var HOVER_DELAY = 2e3;
6
- var DEVBAR_HITBOX_ABOVE = 42;
7
- var AstroDevToolbar = class extends HTMLElement {
8
- shadowRoot;
9
- delayedHideTimeout;
10
- devToolbarContainer;
11
- apps = [];
12
- hasBeenInitialized = false;
13
- customAppsToShow = 3;
14
- constructor() {
15
- super();
16
- this.shadowRoot = this.attachShadow({ mode: "open" });
17
- }
18
- /**
19
- * All one-time DOM setup runs through here. Only ever call this once,
20
- * in connectedCallback(), and protect it from being called again.
21
- */
22
- init() {
23
- this.shadowRoot.innerHTML = `
24
- <style>
25
- :host {
26
- /* Important! Reset all inherited styles to initial */
27
- all: initial;
28
- z-index: 999999;
29
- view-transition-name: astro-dev-toolbar;
30
- display: contents;
31
-
32
- /* Hide the dev toolbar on window.print() (CTRL + P) */
33
- @media print {
34
- display: none;
35
- }
36
- }
37
-
38
- ::view-transition-old(astro-dev-toolbar),
39
- ::view-transition-new(astro-dev-toolbar) {
40
- animation: none;
41
- }
42
-
43
- #dev-toolbar-root {
44
- position: fixed;
45
- bottom: 0px;
46
- z-index: 2000000010;
47
- display: flex;
48
- flex-direction: column;
49
- align-items: center;
50
- transition: bottom 0.35s cubic-bezier(0.485, -0.050, 0.285, 1.505);
51
- pointer-events: none;
52
- }
53
-
54
- #dev-toolbar-root[data-hidden] {
55
- bottom: -40px;
56
- }
57
-
58
- #dev-toolbar-root[data-hidden] #dev-bar .item {
59
- opacity: 0.2;
60
- }
61
-
62
- #dev-toolbar-root[data-placement="bottom-left"] {
63
- left: 16px;
64
- }
65
- #dev-toolbar-root[data-placement="bottom-center"] {
66
- left: 50%;
67
- transform: translateX(-50%);
68
- }
69
- #dev-toolbar-root[data-placement="bottom-right"] {
70
- right: 16px;
71
- }
72
-
73
- #dev-bar-hitbox-above,
74
- #dev-bar-hitbox-below {
75
- width: 100%;
76
- pointer-events: auto;
77
- }
78
- #dev-bar-hitbox-above {
79
- height: ${DEVBAR_HITBOX_ABOVE}px;
80
- }
81
- #dev-bar-hitbox-below {
82
- height: 16px;
83
- }
84
- #dev-bar {
85
- height: 40px;
86
- overflow: hidden;
87
- pointer-events: auto;
88
- background: linear-gradient(180deg, #13151A 0%, rgba(19, 21, 26, 0.88) 100%);
89
- border: 1px solid #343841;
90
- border-radius: 9999px;
91
- box-shadow: 0px 0px 0px 0px rgba(19, 21, 26, 0.30), 0px 1px 2px 0px rgba(19, 21, 26, 0.29), 0px 4px 4px 0px rgba(19, 21, 26, 0.26), 0px 10px 6px 0px rgba(19, 21, 26, 0.15), 0px 17px 7px 0px rgba(19, 21, 26, 0.04), 0px 26px 7px 0px rgba(19, 21, 26, 0.01);
92
- }
93
-
94
- @media (forced-colors: active) {
95
- #dev-bar {
96
- background: white;
97
- }
98
- }
99
-
100
- #dev-bar .item {
101
- display: flex;
102
- justify-content: center;
103
- align-items: center;
104
- width: 44px;
105
- border: 0;
106
- background: transparent;
107
- color: white;
108
- font-family: system-ui, sans-serif;
109
- font-size: 1rem;
110
- line-height: 1.2;
111
- white-space: nowrap;
112
- text-decoration: none;
113
- padding: 0;
114
- margin: 0;
115
- overflow: hidden;
116
- transition: opacity 0.2s ease-out 0s;
117
- }
118
-
119
- #dev-bar #bar-container .item:hover, #dev-bar #bar-container .item:focus-visible {
120
- background: #FFFFFF20;
121
- cursor: pointer;
122
- outline-offset: -3px;
123
- }
124
-
125
- #dev-bar #bar-container .item[data-app-error]:hover, #dev-bar #bar-container .item[data-app-error]:focus-visible {
126
- cursor: not-allowed;
127
- background: #ff252520;
128
- }
129
-
130
- #dev-bar .item:first-of-type {
131
- border-top-left-radius: 9999px;
132
- border-bottom-left-radius: 9999px;
133
- width: 42px;
134
- padding-left: 4px;
135
- }
136
-
137
- #dev-bar .item:last-of-type {
138
- border-top-right-radius: 9999px;
139
- border-bottom-right-radius: 9999px;
140
- width: 42px;
141
- padding-right: 4px;
142
- }
143
- #dev-bar #bar-container .item.active {
144
- background: rgba(71, 78, 94, 1);
145
- }
146
-
147
- #dev-bar .item-tooltip {
148
- background: linear-gradient(0deg, #13151A, #13151A), linear-gradient(0deg, #343841, #343841);
149
- border: 1px solid rgba(52, 56, 65, 1);
150
- border-radius: 4px;
151
- padding: 4px 8px;
152
- position: absolute;
153
- top: -38px;
154
- font-size: 14px;
155
- opacity: 0;
156
- transition: opacity 0.2s ease-in-out 0s;
157
- pointer-events: none;
158
- user-select: none;
159
- }
160
-
161
- #dev-bar .item-tooltip::after{
162
- content: '';
163
- position: absolute;
164
- left: calc(50% - 5px);
165
- bottom: -6px;
166
- border-left: 5px solid transparent;
167
- border-right: 5px solid transparent;
168
- border-top: 5px solid #343841;
169
- }
170
-
171
- #dev-bar .item[data-app-error] .icon {
172
- opacity: 0.35;
173
- }
174
-
175
- #dev-bar .item:hover .item-tooltip, #dev-bar .item:not(.active):focus-visible .item-tooltip {
176
- transition: opacity 0.2s ease-in-out 200ms;
177
- opacity: 1;
178
- }
179
-
180
- @media (forced-colors: active) {
181
- #dev-bar .item:hover .item-tooltip,
182
- #dev-bar .item:not(.active):focus-visible .item-tooltip {
183
- background: white;
184
- }
185
- }
186
-
187
- #dev-bar #bar-container .item:hover .notification rect, #dev-bar #bar-container .item:hover .notification path {
188
- stroke: #38393D;
189
- --fill: var(--fill-hover);
190
- }
191
-
192
- #dev-bar #bar-container .item.active .notification rect, #dev-bar #bar-container .item.active .notification path {
193
- stroke: #454C5C;
194
- --fill: var(--fill-hover);
195
- }
196
-
197
- #dev-bar .item .icon {
198
- position: relative;
199
- max-width: 20px;
200
- max-height: 20px;
201
- user-select: none;
202
- }
203
-
204
- #dev-bar .item .icon>svg {
205
- width: 20px;
206
- height: 20px;
207
- display: block;
208
- margin: auto;
209
- }
210
-
211
- @media (forced-colors: active) {
212
- #dev-bar .item svg path[fill="#fff"] {
213
- fill: black;
214
- }
215
- }
216
-
217
- #dev-bar .item .notification {
218
- display: none;
219
- position: absolute;
220
- top: -4px;
221
- right: -6px;
222
- width: 10px;
223
- height: 10px;
224
- }
225
-
226
- #dev-bar .item .notification svg {
227
- display: block;
228
- }
229
-
230
- #dev-toolbar-root:not([data-no-notification]) #dev-bar .item .notification[data-active] {
231
- display: block;
232
- }
233
-
234
- #dev-bar #bar-container {
235
- height: 100%;
236
- display: flex;
237
- }
238
-
239
- #dev-bar .separator {
240
- background: rgba(52, 56, 65, 1);
241
- width: 1px;
242
- }
243
- </style>
244
- <div id="dev-toolbar-root" data-hidden ${settings.config.disableAppNotification ? "data-no-notification" : ""} data-placement="${settings.config.placement}">
245
- <div id="dev-bar-hitbox-above"></div>
246
- <div id="dev-bar">
247
- <div id="bar-container">
248
- ${this.apps.filter((app) => app.builtIn && !["astro:settings", "astro:more"].includes(app.id)).map((app) => this.getAppTemplate(app)).join("")}
249
- ${this.apps.filter((app) => !app.builtIn).length > 0 ? `<div class="separator"></div>${this.apps.filter((app) => !app.builtIn).slice(0, this.customAppsToShow).map((app) => this.getAppTemplate(app)).join("")}` : ""}
250
- ${this.apps.filter((app) => !app.builtIn).length > this.customAppsToShow ? this.getAppTemplate(this.apps.find((app) => app.builtIn && app.id === "astro:more")) : ""}
251
- <div class="separator"></div>
252
- ${this.getAppTemplate(this.apps.find((app) => app.builtIn && app.id === "astro:settings"))}
253
- </div>
254
- </div>
255
- <div id="dev-bar-hitbox-below"></div>
256
- </div>`;
257
- this.devToolbarContainer = this.shadowRoot.querySelector("#dev-toolbar-root");
258
- this.attachEvents();
259
- this.apps.forEach(async (app) => {
260
- settings.logger.verboseLog(`Creating app canvas for ${app.id}`);
261
- const appCanvas = document.createElement("astro-dev-toolbar-app-canvas");
262
- appCanvas.dataset.appId = app.id;
263
- this.shadowRoot?.append(appCanvas);
264
- });
265
- if ("requestIdleCallback" in window) window.requestIdleCallback(async () => {
266
- this.apps.map((app) => this.initApp(app));
267
- }, { timeout: 300 });
268
- else setTimeout(async () => {
269
- this.apps.map((app) => this.initApp(app));
270
- }, 300);
271
- }
272
- connectedCallback() {
273
- if (!this.hasBeenInitialized) {
274
- this.init();
275
- this.hasBeenInitialized = true;
276
- }
277
- this.apps.forEach(async (app) => {
278
- await this.setAppStatus(app, app.active);
279
- });
280
- }
281
- attachEvents() {
282
- this.shadowRoot.querySelectorAll(".item").forEach((item) => {
283
- item.addEventListener("click", async (event) => {
284
- const target = event.currentTarget;
285
- if (!target || !(target instanceof HTMLElement)) return;
286
- const id = target.dataset.appId;
287
- if (!id) return;
288
- const app = this.getAppById(id);
289
- if (!app) return;
290
- event.stopPropagation();
291
- await this.toggleAppStatus(app);
292
- });
293
- });
294
- ["mouseenter", "focusin"].forEach((event) => {
295
- this.devToolbarContainer.addEventListener(event, () => {
296
- this.clearDelayedHide();
297
- if (this.isHidden()) this.setToolbarVisible(true);
298
- });
299
- });
300
- ["mouseleave", "focusout"].forEach((event) => {
301
- this.devToolbarContainer.addEventListener(event, () => {
302
- this.clearDelayedHide();
303
- if (this.getActiveApp() || this.isHidden()) return;
304
- this.triggerDelayedHide();
305
- });
306
- });
307
- document.addEventListener("keyup", (event) => {
308
- if (event.key !== "Escape") return;
309
- if (this.isHidden()) return;
310
- const activeApp = this.getActiveApp();
311
- if (activeApp) this.toggleAppStatus(activeApp);
312
- else this.setToolbarVisible(false);
313
- });
314
- }
315
- async initApp(app) {
316
- const shadowRoot = this.getAppCanvasById(app.id).shadowRoot;
317
- app.status = "loading";
318
- try {
319
- settings.logger.verboseLog(`Initializing app ${app.id}`);
320
- await app.init?.(shadowRoot, app.eventTarget, serverHelpers);
321
- app.status = "ready";
322
- if (import.meta.hot) import.meta.hot.send(`${WS_EVENT_NAME}:${app.id}:initialized`);
323
- } catch (e) {
324
- console.error(`Failed to init app ${app.id}, error: ${e}`);
325
- app.status = "error";
326
- if (import.meta.hot) import.meta.hot.send("astro:devtoolbar:error:init", {
327
- app,
328
- error: e instanceof Error ? e.stack : e
329
- });
330
- const appButton = this.getAppButtonById(app.id);
331
- const appTooltip = appButton?.querySelector(".item-tooltip");
332
- if (appButton && appTooltip) {
333
- appButton.toggleAttribute("data-app-error", true);
334
- appTooltip.innerText = `Error initializing ${app.name}`;
335
- }
336
- }
337
- }
338
- getAppTemplate(app) {
339
- return `<button class="item" data-app-id="${app.id}">
340
- <div class="icon">${app.icon ? getAppIcon(app.icon) : "?"}<div class="notification"></div></div>
341
- <span class="item-tooltip">${app.name}</span>
342
- </button>`;
343
- }
344
- getAppById(id) {
345
- return this.apps.find((app) => app.id === id);
346
- }
347
- getAppCanvasById(id) {
348
- return this.shadowRoot.querySelector(`astro-dev-toolbar-app-canvas[data-app-id="${id}"]`);
349
- }
350
- getAppButtonById(id) {
351
- return this.shadowRoot.querySelector(`[data-app-id="${id}"]`);
352
- }
353
- async toggleAppStatus(app) {
354
- const activeApp = this.getActiveApp();
355
- if (activeApp) {
356
- if (!await this.setAppStatus(activeApp, false)) return;
357
- }
358
- if (app.status !== "ready") return;
359
- if (app !== activeApp) {
360
- await this.setAppStatus(app, true);
361
- if (import.meta.hot && app.id !== "astro:more") import.meta.hot.send("astro:devtoolbar:app:toggled", { app });
362
- }
363
- }
364
- async setAppStatus(app, newStatus) {
365
- const appCanvas = this.getAppCanvasById(app.id);
366
- if (!appCanvas) return false;
367
- if (app.active && !newStatus && app.beforeTogglingOff) {
368
- if (!await app.beforeTogglingOff(appCanvas.shadowRoot)) return false;
369
- }
370
- app.active = newStatus ?? !app.active;
371
- const mainBarButton = this.getAppButtonById(app.id);
372
- const moreBarButton = this.getAppCanvasById("astro:more")?.shadowRoot?.querySelector(`[data-app-id="${app.id}"]`);
373
- if (mainBarButton) mainBarButton.classList.toggle("active", app.active);
374
- if (moreBarButton) moreBarButton.classList.toggle("active", app.active);
375
- if (app.active) {
376
- appCanvas.style.display = "block";
377
- appCanvas.setAttribute("data-active", "");
378
- } else {
379
- appCanvas.style.display = "none";
380
- appCanvas.removeAttribute("data-active");
381
- }
382
- app.eventTarget.dispatchEvent(new CustomEvent("app-toggled", { detail: {
383
- state: app.active,
384
- app
385
- } }));
386
- import.meta.hot?.send(`${WS_EVENT_NAME}:${app.id}:toggled`, { state: app.active });
387
- return true;
388
- }
389
- isHidden() {
390
- return this.devToolbarContainer?.hasAttribute("data-hidden") ?? true;
391
- }
392
- getActiveApp() {
393
- return this.apps.find((app) => app.active);
394
- }
395
- clearDelayedHide() {
396
- window.clearTimeout(this.delayedHideTimeout);
397
- this.delayedHideTimeout = void 0;
398
- }
399
- triggerDelayedHide() {
400
- this.clearDelayedHide();
401
- this.delayedHideTimeout = window.setTimeout(() => {
402
- this.setToolbarVisible(false);
403
- this.delayedHideTimeout = void 0;
404
- }, HOVER_DELAY);
405
- }
406
- setToolbarVisible(newStatus) {
407
- const barContainer = this.shadowRoot.querySelector("#bar-container");
408
- const devBar = this.shadowRoot.querySelector("#dev-bar");
409
- const devBarHitboxAbove = this.shadowRoot.querySelector("#dev-bar-hitbox-above");
410
- if (newStatus === true) {
411
- this.devToolbarContainer?.removeAttribute("data-hidden");
412
- barContainer?.removeAttribute("inert");
413
- devBar?.removeAttribute("tabindex");
414
- if (devBarHitboxAbove) devBarHitboxAbove.style.height = "0";
415
- return;
416
- }
417
- if (newStatus === false) {
418
- this.devToolbarContainer?.setAttribute("data-hidden", "");
419
- barContainer?.setAttribute("inert", "");
420
- devBar?.setAttribute("tabindex", "0");
421
- if (devBarHitboxAbove) devBarHitboxAbove.style.height = `${DEVBAR_HITBOX_ABOVE}px`;
422
- return;
423
- }
424
- }
425
- setNotificationVisible(newStatus) {
426
- this.devToolbarContainer?.toggleAttribute("data-no-notification", !newStatus);
427
- this.getAppCanvasById("astro:more")?.shadowRoot?.querySelector("#dropdown")?.toggleAttribute("data-no-notification", !newStatus);
428
- }
429
- setToolbarPlacement(newPlacement) {
430
- this.devToolbarContainer?.setAttribute("data-placement", newPlacement);
431
- this.apps.forEach((app) => {
432
- app.eventTarget.dispatchEvent(new CustomEvent("placement-updated", { detail: { placement: newPlacement } }));
433
- });
434
- }
435
- };
436
- var DevToolbarCanvas = class extends HTMLElement {
437
- shadowRoot;
438
- constructor() {
439
- super();
440
- this.shadowRoot = this.attachShadow({ mode: "open" });
441
- }
442
- connectedCallback() {
443
- this.shadowRoot.innerHTML = `
444
- <style>
445
- :host {
446
- position: absolute;
447
- top: 0;
448
- left: 0;
449
- }
450
- </style>`;
451
- }
452
- };
453
- function getAppIcon(icon) {
454
- if (isDefinedIcon(icon)) return getIconElement(icon).outerHTML;
455
- return icon;
456
- }
457
- //#endregion
458
- export { AstroDevToolbar, DevToolbarCanvas, getAppIcon };
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolbar-B3VIHCXg.js","names":[],"sources":["../../../../../node_modules/.pnpm/astro@7.2.10_@emnapi+core@1.11.1_@emnapi+runtime@1.11.3_@types+node@26.4.1_jiti@2.7.0_tsx@4.23.13_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/toolbar.js"],"sourcesContent":["import { serverHelpers } from \"./helpers.js\";\nimport { settings } from \"./settings.js\";\nimport { getIconElement, isDefinedIcon } from \"./ui-library/icons.js\";\nconst WS_EVENT_NAME = \"astro-dev-toolbar\";\nconst HOVER_DELAY = 2 * 1e3;\nconst DEVBAR_HITBOX_ABOVE = 42;\nclass AstroDevToolbar extends HTMLElement {\n shadowRoot;\n delayedHideTimeout;\n devToolbarContainer;\n apps = [];\n hasBeenInitialized = false;\n // TODO: This should be dynamic based on the screen size or at least configurable, erika - 2023-11-29\n customAppsToShow = 3;\n constructor() {\n super();\n this.shadowRoot = this.attachShadow({ mode: \"open\" });\n }\n /**\n * All one-time DOM setup runs through here. Only ever call this once,\n * in connectedCallback(), and protect it from being called again.\n */\n init() {\n this.shadowRoot.innerHTML = `\n\t\t<style>\n\t\t\t:host {\n\t\t\t\t/* Important! Reset all inherited styles to initial */\n\t\t\t\tall: initial;\n\t\t\t\tz-index: 999999;\n\t\t\t\tview-transition-name: astro-dev-toolbar;\n\t\t\t\tdisplay: contents;\n\n\t\t\t\t/* Hide the dev toolbar on window.print() (CTRL + P) */\n\t\t\t\t@media print {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t::view-transition-old(astro-dev-toolbar),\n\t\t\t::view-transition-new(astro-dev-toolbar) {\n\t\t\t\tanimation: none;\n\t\t\t}\n\n\t\t\t#dev-toolbar-root {\n\t\t\t\tposition: fixed;\n\t\t\t\tbottom: 0px;\n\t\t\t\tz-index: 2000000010;\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-direction: column;\n\t\t\t\talign-items: center;\n\t\t\t\ttransition: bottom 0.35s cubic-bezier(0.485, -0.050, 0.285, 1.505);\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\n\t\t\t#dev-toolbar-root[data-hidden] {\n\t\t\t\tbottom: -40px;\n\t\t\t}\n\n\t\t\t#dev-toolbar-root[data-hidden] #dev-bar .item {\n\t\t\t\topacity: 0.2;\n\t\t\t}\n\n\t\t\t#dev-toolbar-root[data-placement=\"bottom-left\"] {\n\t\t\t\tleft: 16px;\n\t\t\t}\n\t\t\t#dev-toolbar-root[data-placement=\"bottom-center\"] {\n\t\t\t\tleft: 50%;\n\t\t\t\ttransform: translateX(-50%);\n\t\t\t}\n\t\t\t#dev-toolbar-root[data-placement=\"bottom-right\"] {\n\t\t\t\tright: 16px;\n\t\t\t}\n\n\t\t\t#dev-bar-hitbox-above,\n\t\t\t#dev-bar-hitbox-below {\n\t\t\t\twidth: 100%;\n\t\t\t\tpointer-events: auto;\n\t\t\t}\n\t\t\t#dev-bar-hitbox-above {\n\t\t\t\theight: ${DEVBAR_HITBOX_ABOVE}px;\n\t\t\t}\n\t\t\t#dev-bar-hitbox-below {\n\t\t\t\theight: 16px;\n\t\t\t}\n\t\t\t#dev-bar {\n\t\t\t\theight: 40px;\n\t\t\t\toverflow: hidden;\n\t\t\t\tpointer-events: auto;\n\t\t\t\tbackground: linear-gradient(180deg, #13151A 0%, rgba(19, 21, 26, 0.88) 100%);\n\t\t\t\tborder: 1px solid #343841;\n\t\t\t\tborder-radius: 9999px;\n\t\t\t\tbox-shadow: 0px 0px 0px 0px rgba(19, 21, 26, 0.30), 0px 1px 2px 0px rgba(19, 21, 26, 0.29), 0px 4px 4px 0px rgba(19, 21, 26, 0.26), 0px 10px 6px 0px rgba(19, 21, 26, 0.15), 0px 17px 7px 0px rgba(19, 21, 26, 0.04), 0px 26px 7px 0px rgba(19, 21, 26, 0.01);\n\t\t\t}\n\n\t\t\t@media (forced-colors: active) {\n\t\t\t\t#dev-bar {\n\t\t\t\t\tbackground: white;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#dev-bar .item {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\t\t\t\talign-items: center;\n\t\t\t\twidth: 44px;\n\t\t\t\tborder: 0;\n\t\t\t\tbackground: transparent;\n\t\t\t\tcolor: white;\n\t\t\t\tfont-family: system-ui, sans-serif;\n\t\t\t\tfont-size: 1rem;\n\t\t\t\tline-height: 1.2;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-decoration: none;\n\t\t\t\tpadding: 0;\n\t\t\t\tmargin: 0;\n\t\t\t\toverflow: hidden;\n\t\t\t\ttransition: opacity 0.2s ease-out 0s;\n\t\t\t}\n\n\t\t\t#dev-bar #bar-container .item:hover, #dev-bar #bar-container .item:focus-visible {\n\t\t\t\tbackground: #FFFFFF20;\n\t\t\t\tcursor: pointer;\n\t\t\t\toutline-offset: -3px;\n\t\t\t}\n\n\t\t\t#dev-bar #bar-container .item[data-app-error]:hover, #dev-bar #bar-container .item[data-app-error]:focus-visible {\n\t\t\t\tcursor: not-allowed;\n\t\t\t\tbackground: #ff252520;\n\t\t\t}\n\n\t\t\t#dev-bar .item:first-of-type {\n\t\t\t\tborder-top-left-radius: 9999px;\n\t\t\t\tborder-bottom-left-radius: 9999px;\n\t\t\t\twidth: 42px;\n\t\t\t\tpadding-left: 4px;\n\t\t\t}\n\n\t\t\t#dev-bar .item:last-of-type {\n\t\t\t\tborder-top-right-radius: 9999px;\n\t\t\t\tborder-bottom-right-radius: 9999px;\n\t\t\t\twidth: 42px;\n\t\t\t\tpadding-right: 4px;\n\t\t\t}\n\t\t\t#dev-bar #bar-container .item.active {\n\t\t\t\tbackground: rgba(71, 78, 94, 1);\n\t\t\t}\n\n\t\t\t#dev-bar .item-tooltip {\n\t\t\t\tbackground: linear-gradient(0deg, #13151A, #13151A), linear-gradient(0deg, #343841, #343841);\n\t\t\t\tborder: 1px solid rgba(52, 56, 65, 1);\n\t\t\t\tborder-radius: 4px;\n\t\t\t\tpadding: 4px 8px;\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: ${4 - DEVBAR_HITBOX_ABOVE}px;\n\t\t\t\tfont-size: 14px;\n\t\t\t\topacity: 0;\n\t\t\t\ttransition: opacity 0.2s ease-in-out 0s;\n\t\t\t\tpointer-events: none;\n\t\t\t\tuser-select: none;\n\t\t\t}\n\n\t\t\t#dev-bar .item-tooltip::after{\n\t\t\t\tcontent: '';\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: calc(50% - 5px);\n\t\t\t\tbottom: -6px;\n\t\t\t\tborder-left: 5px solid transparent;\n\t\t\t\tborder-right: 5px solid transparent;\n\t\t\t\tborder-top: 5px solid #343841;\n\t\t\t}\n\n\t\t\t#dev-bar .item[data-app-error] .icon {\n\t\t\t\topacity: 0.35;\n\t\t\t}\n\n\t\t\t#dev-bar .item:hover .item-tooltip, #dev-bar .item:not(.active):focus-visible .item-tooltip {\n\t\t\t\ttransition: opacity 0.2s ease-in-out 200ms;\n\t\t\t\topacity: 1;\n\t\t\t}\n\n\t\t\t@media (forced-colors: active) {\n\t\t\t\t#dev-bar .item:hover .item-tooltip,\n\t\t\t\t#dev-bar .item:not(.active):focus-visible .item-tooltip {\n\t\t\t\t\tbackground: white;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#dev-bar #bar-container .item:hover .notification rect, #dev-bar #bar-container .item:hover .notification path {\n\t\t\t\tstroke: #38393D;\n\t\t\t\t--fill: var(--fill-hover);\n\t\t\t}\n\n\t\t\t#dev-bar #bar-container .item.active .notification rect, #dev-bar #bar-container .item.active .notification path {\n\t\t\t\tstroke: #454C5C;\n\t\t\t\t--fill: var(--fill-hover);\n\t\t\t}\n\n\t\t\t#dev-bar .item .icon {\n\t\t\t\tposition: relative;\n\t\t\t\tmax-width: 20px;\n\t\t\t\tmax-height: 20px;\n\t\t\t\tuser-select: none;\n\t\t\t}\n\n\t\t\t#dev-bar .item .icon>svg {\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tdisplay: block;\n\t\t\t\tmargin: auto;\n\t\t\t}\n\n\t\t\t@media (forced-colors: active) {\n\t\t\t\t#dev-bar .item svg path[fill=\"#fff\"] {\n\t\t\t\t\tfill: black;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#dev-bar .item .notification {\n\t\t\t\tdisplay: none;\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: -4px;\n\t\t\t\tright: -6px;\n\t\t\t\twidth: 10px;\n\t\t\t\theight: 10px;\n\t\t\t}\n\n\t\t\t#dev-bar .item .notification svg {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\n\t\t\t#dev-toolbar-root:not([data-no-notification]) #dev-bar .item .notification[data-active] {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\n\t\t\t#dev-bar #bar-container {\n\t\t\t\theight: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\n\t\t\t#dev-bar .separator {\n\t\t\t\tbackground: rgba(52, 56, 65, 1);\n\t\t\t\twidth: 1px;\n\t\t\t}\n\t\t</style>\n\t\t<div id=\"dev-toolbar-root\" data-hidden ${settings.config.disableAppNotification ? \"data-no-notification\" : \"\"} data-placement=\"${settings.config.placement}\">\n\t\t\t<div id=\"dev-bar-hitbox-above\"></div>\n\t\t\t<div id=\"dev-bar\">\n\t\t\t\t<div id=\"bar-container\">\n\t\t\t\t\t${this.apps.filter((app) => app.builtIn && ![\"astro:settings\", \"astro:more\"].includes(app.id)).map((app) => this.getAppTemplate(app)).join(\"\")}\n\t\t\t\t\t${this.apps.filter((app) => !app.builtIn).length > 0 ? `<div class=\"separator\"></div>${this.apps.filter((app) => !app.builtIn).slice(0, this.customAppsToShow).map((app) => this.getAppTemplate(app)).join(\"\")}` : \"\"}\n\t\t\t\t\t${this.apps.filter((app) => !app.builtIn).length > this.customAppsToShow ? this.getAppTemplate(\n this.apps.find((app) => app.builtIn && app.id === \"astro:more\")\n ) : \"\"}\n\t\t\t\t\t<div class=\"separator\"></div>\n\t\t\t\t\t${this.getAppTemplate(\n this.apps.find((app) => app.builtIn && app.id === \"astro:settings\")\n )}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div id=\"dev-bar-hitbox-below\"></div>\n\t\t</div>`;\n this.devToolbarContainer = this.shadowRoot.querySelector(\"#dev-toolbar-root\");\n this.attachEvents();\n this.apps.forEach(async (app) => {\n settings.logger.verboseLog(`Creating app canvas for ${app.id}`);\n const appCanvas = document.createElement(\"astro-dev-toolbar-app-canvas\");\n appCanvas.dataset.appId = app.id;\n this.shadowRoot?.append(appCanvas);\n });\n if (\"requestIdleCallback\" in window) {\n window.requestIdleCallback(\n async () => {\n this.apps.map((app) => this.initApp(app));\n },\n { timeout: 300 }\n );\n } else {\n setTimeout(async () => {\n this.apps.map((app) => this.initApp(app));\n }, 300);\n }\n }\n // This is called whenever the component is connected to the DOM.\n // This happens on first page load, and on each page change when\n // view transitions are used.\n connectedCallback() {\n if (!this.hasBeenInitialized) {\n this.init();\n this.hasBeenInitialized = true;\n }\n this.apps.forEach(async (app) => {\n await this.setAppStatus(app, app.active);\n });\n }\n attachEvents() {\n const items = this.shadowRoot.querySelectorAll(\".item\");\n items.forEach((item) => {\n item.addEventListener(\"click\", async (event) => {\n const target = event.currentTarget;\n if (!target || !(target instanceof HTMLElement)) return;\n const id = target.dataset.appId;\n if (!id) return;\n const app = this.getAppById(id);\n if (!app) return;\n event.stopPropagation();\n await this.toggleAppStatus(app);\n });\n });\n [\"mouseenter\", \"focusin\"].forEach((event) => {\n this.devToolbarContainer.addEventListener(event, () => {\n this.clearDelayedHide();\n if (this.isHidden()) {\n this.setToolbarVisible(true);\n }\n });\n });\n [\"mouseleave\", \"focusout\"].forEach((event) => {\n this.devToolbarContainer.addEventListener(event, () => {\n this.clearDelayedHide();\n if (this.getActiveApp() || this.isHidden()) {\n return;\n }\n this.triggerDelayedHide();\n });\n });\n document.addEventListener(\"keyup\", (event) => {\n if (event.key !== \"Escape\") return;\n if (this.isHidden()) return;\n const activeApp = this.getActiveApp();\n if (activeApp) {\n this.toggleAppStatus(activeApp);\n } else {\n this.setToolbarVisible(false);\n }\n });\n }\n async initApp(app) {\n const shadowRoot = this.getAppCanvasById(app.id).shadowRoot;\n app.status = \"loading\";\n try {\n settings.logger.verboseLog(`Initializing app ${app.id}`);\n await app.init?.(shadowRoot, app.eventTarget, serverHelpers);\n app.status = \"ready\";\n if (import.meta.hot) {\n import.meta.hot.send(`${WS_EVENT_NAME}:${app.id}:initialized`);\n }\n } catch (e) {\n console.error(`Failed to init app ${app.id}, error: ${e}`);\n app.status = \"error\";\n if (import.meta.hot) {\n import.meta.hot.send(\"astro:devtoolbar:error:init\", {\n app,\n error: e instanceof Error ? e.stack : e\n });\n }\n const appButton = this.getAppButtonById(app.id);\n const appTooltip = appButton?.querySelector(\".item-tooltip\");\n if (appButton && appTooltip) {\n appButton.toggleAttribute(\"data-app-error\", true);\n appTooltip.innerText = `Error initializing ${app.name}`;\n }\n }\n }\n getAppTemplate(app) {\n return `<button class=\"item\" data-app-id=\"${app.id}\">\n\t\t\t\t<div class=\"icon\">${app.icon ? getAppIcon(app.icon) : \"?\"}<div class=\"notification\"></div></div>\n\t\t\t\t<span class=\"item-tooltip\">${app.name}</span>\n\t\t\t</button>`;\n }\n getAppById(id) {\n return this.apps.find((app) => app.id === id);\n }\n getAppCanvasById(id) {\n return this.shadowRoot.querySelector(\n `astro-dev-toolbar-app-canvas[data-app-id=\"${id}\"]`\n );\n }\n getAppButtonById(id) {\n return this.shadowRoot.querySelector(`[data-app-id=\"${id}\"]`);\n }\n async toggleAppStatus(app) {\n const activeApp = this.getActiveApp();\n if (activeApp) {\n const closeApp = await this.setAppStatus(activeApp, false);\n if (!closeApp) return;\n }\n if (app.status !== \"ready\") return;\n if (app !== activeApp) {\n await this.setAppStatus(app, true);\n if (import.meta.hot && app.id !== \"astro:more\") {\n import.meta.hot.send(\"astro:devtoolbar:app:toggled\", {\n app\n });\n }\n }\n }\n async setAppStatus(app, newStatus) {\n const appCanvas = this.getAppCanvasById(app.id);\n if (!appCanvas) return false;\n if (app.active && !newStatus && app.beforeTogglingOff) {\n const shouldToggleOff = await app.beforeTogglingOff(appCanvas.shadowRoot);\n if (!shouldToggleOff) return false;\n }\n app.active = newStatus ?? !app.active;\n const mainBarButton = this.getAppButtonById(app.id);\n const moreBarButton = this.getAppCanvasById(\"astro:more\")?.shadowRoot?.querySelector(\n `[data-app-id=\"${app.id}\"]`\n );\n if (mainBarButton) {\n mainBarButton.classList.toggle(\"active\", app.active);\n }\n if (moreBarButton) {\n moreBarButton.classList.toggle(\"active\", app.active);\n }\n if (app.active) {\n appCanvas.style.display = \"block\";\n appCanvas.setAttribute(\"data-active\", \"\");\n } else {\n appCanvas.style.display = \"none\";\n appCanvas.removeAttribute(\"data-active\");\n }\n app.eventTarget.dispatchEvent(\n new CustomEvent(\"app-toggled\", {\n detail: {\n state: app.active,\n app\n }\n })\n );\n import.meta.hot?.send(`${WS_EVENT_NAME}:${app.id}:toggled`, { state: app.active });\n return true;\n }\n isHidden() {\n return this.devToolbarContainer?.hasAttribute(\"data-hidden\") ?? true;\n }\n getActiveApp() {\n return this.apps.find((app) => app.active);\n }\n clearDelayedHide() {\n window.clearTimeout(this.delayedHideTimeout);\n this.delayedHideTimeout = void 0;\n }\n triggerDelayedHide() {\n this.clearDelayedHide();\n this.delayedHideTimeout = window.setTimeout(() => {\n this.setToolbarVisible(false);\n this.delayedHideTimeout = void 0;\n }, HOVER_DELAY);\n }\n setToolbarVisible(newStatus) {\n const barContainer = this.shadowRoot.querySelector(\"#bar-container\");\n const devBar = this.shadowRoot.querySelector(\"#dev-bar\");\n const devBarHitboxAbove = this.shadowRoot.querySelector(\"#dev-bar-hitbox-above\");\n if (newStatus === true) {\n this.devToolbarContainer?.removeAttribute(\"data-hidden\");\n barContainer?.removeAttribute(\"inert\");\n devBar?.removeAttribute(\"tabindex\");\n if (devBarHitboxAbove) devBarHitboxAbove.style.height = \"0\";\n return;\n }\n if (newStatus === false) {\n this.devToolbarContainer?.setAttribute(\"data-hidden\", \"\");\n barContainer?.setAttribute(\"inert\", \"\");\n devBar?.setAttribute(\"tabindex\", \"0\");\n if (devBarHitboxAbove) devBarHitboxAbove.style.height = `${DEVBAR_HITBOX_ABOVE}px`;\n return;\n }\n }\n setNotificationVisible(newStatus) {\n this.devToolbarContainer?.toggleAttribute(\"data-no-notification\", !newStatus);\n const moreCanvas = this.getAppCanvasById(\"astro:more\");\n moreCanvas?.shadowRoot?.querySelector(\"#dropdown\")?.toggleAttribute(\"data-no-notification\", !newStatus);\n }\n setToolbarPlacement(newPlacement) {\n this.devToolbarContainer?.setAttribute(\"data-placement\", newPlacement);\n this.apps.forEach((app) => {\n app.eventTarget.dispatchEvent(\n new CustomEvent(\"placement-updated\", {\n detail: {\n placement: newPlacement\n }\n })\n );\n });\n }\n}\nclass DevToolbarCanvas extends HTMLElement {\n shadowRoot;\n constructor() {\n super();\n this.shadowRoot = this.attachShadow({ mode: \"open\" });\n }\n connectedCallback() {\n this.shadowRoot.innerHTML = `\n\t\t<style>\n\t\t\t:host {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t</style>`;\n }\n}\nfunction getAppIcon(icon) {\n if (isDefinedIcon(icon)) {\n return getIconElement(icon).outerHTML;\n }\n return icon;\n}\nexport {\n AstroDevToolbar,\n DevToolbarCanvas,\n getAppIcon\n};\n"],"x_google_ignoreList":[0],"mappings":"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"}