@grove-dev/astro 0.2.5 → 0.2.10

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 (100) hide show
  1. package/package.json +3 -3
  2. package/templates/default/.astro/content.d.ts +155 -0
  3. package/templates/default/.astro/settings.json +5 -0
  4. package/templates/default/.astro/types.d.ts +1 -0
  5. package/templates/default/dist/_astro/BaseLayout.Dz_HR-68.css +1 -0
  6. package/templates/default/dist/about/index.html +165 -0
  7. package/templates/default/dist/icons/platforms/android.svg +1 -0
  8. package/templates/default/dist/icons/platforms/apple-dark.svg +1 -0
  9. package/templates/default/dist/icons/platforms/apple-light.svg +1 -0
  10. package/templates/default/dist/icons/platforms/chrome.svg +1 -0
  11. package/templates/default/dist/icons/platforms/chromeos.svg +5 -0
  12. package/templates/default/dist/icons/platforms/desktop.svg +4 -0
  13. package/templates/default/dist/icons/platforms/embedded.svg +5 -0
  14. package/templates/default/dist/icons/platforms/ios.svg +1 -0
  15. package/templates/default/dist/icons/platforms/linux.svg +1 -0
  16. package/templates/default/dist/icons/platforms/macos.svg +1 -0
  17. package/templates/default/dist/icons/platforms/ubuntu.svg +1 -0
  18. package/templates/default/dist/icons/platforms/web.svg +5 -0
  19. package/templates/default/dist/icons/platforms/windows.svg +6 -0
  20. package/templates/default/dist/icons/stacks/android.svg +1 -0
  21. package/templates/default/dist/icons/stacks/apple-dark.svg +1 -0
  22. package/templates/default/dist/icons/stacks/apple-light.svg +1 -0
  23. package/templates/default/dist/icons/stacks/capacitor.svg +14 -0
  24. package/templates/default/dist/icons/stacks/dart.svg +1 -0
  25. package/templates/default/dist/icons/stacks/firebase.svg +1 -0
  26. package/templates/default/dist/icons/stacks/flutter.svg +1 -0
  27. package/templates/default/dist/icons/stacks/graphql.svg +1 -0
  28. package/templates/default/dist/icons/stacks/ionic.svg +4 -0
  29. package/templates/default/dist/icons/stacks/java.svg +1 -0
  30. package/templates/default/dist/icons/stacks/javascript.svg +1 -0
  31. package/templates/default/dist/icons/stacks/kotlin.svg +1 -0
  32. package/templates/default/dist/icons/stacks/mongodb.svg +1 -0
  33. package/templates/default/dist/icons/stacks/nodejs.svg +1 -0
  34. package/templates/default/dist/icons/stacks/python.svg +1 -0
  35. package/templates/default/dist/icons/stacks/react-native.svg +1 -0
  36. package/templates/default/dist/icons/stacks/react.svg +1 -0
  37. package/templates/default/dist/icons/stacks/rust.svg +1 -0
  38. package/templates/default/dist/icons/stacks/solidity.svg +1 -0
  39. package/templates/default/dist/icons/stacks/swift.svg +1 -0
  40. package/templates/default/dist/icons/stacks/tensorflow.svg +1 -0
  41. package/templates/default/dist/icons/stacks/typescript.svg +1 -0
  42. package/templates/default/dist/index.html +55 -0
  43. package/templates/default/dist/llms-full.txt +14 -0
  44. package/templates/default/dist/llms.txt +11 -0
  45. package/templates/default/dist/og-image.svg +48 -0
  46. package/templates/default/dist/projects/index.html +61 -0
  47. package/templates/default/dist/robots.txt +53 -0
  48. package/templates/default/dist/sitemap.xml +21 -0
  49. package/templates/default/dist/submit/index.html +69 -0
  50. package/templates/default/node_modules/.bin/astro +21 -0
  51. package/templates/default/node_modules/.bin/astro-check +21 -0
  52. package/templates/default/node_modules/.bin/grove +21 -0
  53. package/templates/default/node_modules/.bin/jiti +21 -0
  54. package/templates/default/node_modules/.bin/prettier +21 -0
  55. package/templates/default/node_modules/.bin/rollup +21 -0
  56. package/templates/default/node_modules/.bin/tsc +21 -0
  57. package/templates/default/node_modules/.bin/tsserver +21 -0
  58. package/templates/default/node_modules/.bin/tsx +21 -0
  59. package/templates/default/node_modules/.bin/vite +21 -0
  60. package/templates/default/node_modules/.bin/yaml +21 -0
  61. package/templates/default/node_modules/.vite/deps/_metadata.json +79 -0
  62. package/templates/default/node_modules/.vite/deps/astro-KRVZHBC5.js +433 -0
  63. package/templates/default/node_modules/.vite/deps/astro-KRVZHBC5.js.map +7 -0
  64. package/templates/default/node_modules/.vite/deps/astro___aria-query.js +5 -0
  65. package/templates/default/node_modules/.vite/deps/astro___aria-query.js.map +7 -0
  66. package/templates/default/node_modules/.vite/deps/astro___axobject-query.js +5 -0
  67. package/templates/default/node_modules/.vite/deps/astro___axobject-query.js.map +7 -0
  68. package/templates/default/node_modules/.vite/deps/astro___html-escaper.js +9 -0
  69. package/templates/default/node_modules/.vite/deps/astro___html-escaper.js.map +7 -0
  70. package/templates/default/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +241 -0
  71. package/templates/default/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +7 -0
  72. package/templates/default/node_modules/.vite/deps/audit-GYHQ3ITH.js +1592 -0
  73. package/templates/default/node_modules/.vite/deps/audit-GYHQ3ITH.js.map +7 -0
  74. package/templates/default/node_modules/.vite/deps/chunk-5WRI5ZAA.js +30 -0
  75. package/templates/default/node_modules/.vite/deps/chunk-5WRI5ZAA.js.map +7 -0
  76. package/templates/default/node_modules/.vite/deps/chunk-7P4KIK53.js +186 -0
  77. package/templates/default/node_modules/.vite/deps/chunk-7P4KIK53.js.map +7 -0
  78. package/templates/default/node_modules/.vite/deps/chunk-BQGHFQJH.js +48 -0
  79. package/templates/default/node_modules/.vite/deps/chunk-BQGHFQJH.js.map +7 -0
  80. package/templates/default/node_modules/.vite/deps/chunk-CJCDKWP2.js +6779 -0
  81. package/templates/default/node_modules/.vite/deps/chunk-CJCDKWP2.js.map +7 -0
  82. package/templates/default/node_modules/.vite/deps/chunk-FHJ3XBDE.js +33 -0
  83. package/templates/default/node_modules/.vite/deps/chunk-FHJ3XBDE.js.map +7 -0
  84. package/templates/default/node_modules/.vite/deps/chunk-FQEMNIUQ.js +88 -0
  85. package/templates/default/node_modules/.vite/deps/chunk-FQEMNIUQ.js.map +7 -0
  86. package/templates/default/node_modules/.vite/deps/chunk-HBSVDAQD.js +72 -0
  87. package/templates/default/node_modules/.vite/deps/chunk-HBSVDAQD.js.map +7 -0
  88. package/templates/default/node_modules/.vite/deps/chunk-HDOQ2U3U.js +3757 -0
  89. package/templates/default/node_modules/.vite/deps/chunk-HDOQ2U3U.js.map +7 -0
  90. package/templates/default/node_modules/.vite/deps/chunk-XEBKRCNE.js +54 -0
  91. package/templates/default/node_modules/.vite/deps/chunk-XEBKRCNE.js.map +7 -0
  92. package/templates/default/node_modules/.vite/deps/package.json +3 -0
  93. package/templates/default/node_modules/.vite/deps/settings-C5H4VHXU.js +213 -0
  94. package/templates/default/node_modules/.vite/deps/settings-C5H4VHXU.js.map +7 -0
  95. package/templates/default/node_modules/.vite/deps/toolbar-H5DB6HVP.js +525 -0
  96. package/templates/default/node_modules/.vite/deps/toolbar-H5DB6HVP.js.map +7 -0
  97. package/templates/default/node_modules/.vite/deps/ui-library-JGHU6JE2.js +1020 -0
  98. package/templates/default/node_modules/.vite/deps/ui-library-JGHU6JE2.js.map +7 -0
  99. package/templates/default/node_modules/.vite/deps/xray-EFCQOW4E.js +147 -0
  100. package/templates/default/node_modules/.vite/deps/xray-EFCQOW4E.js.map +7 -0
@@ -0,0 +1,1020 @@
1
+ import {
2
+ getIconElement,
3
+ isDefinedIcon
4
+ } from "./chunk-BQGHFQJH.js";
5
+ import {
6
+ DevToolbarWindow,
7
+ settings
8
+ } from "./chunk-7P4KIK53.js";
9
+ import "./chunk-5WRI5ZAA.js";
10
+
11
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/badge.js
12
+ var sizes = ["small", "large"];
13
+ var styles = ["purple", "gray", "red", "green", "yellow", "blue"];
14
+ var DevToolbarBadge = class extends HTMLElement {
15
+ _size = "small";
16
+ _badgeStyle = "purple";
17
+ get size() {
18
+ return this._size;
19
+ }
20
+ set size(value) {
21
+ if (!sizes.includes(value)) {
22
+ settings.logger.error(
23
+ `Invalid size: ${value}, expected one of ${sizes.join(", ")}, got ${value}.`
24
+ );
25
+ return;
26
+ }
27
+ this._size = value;
28
+ this.updateStyle();
29
+ }
30
+ get badgeStyle() {
31
+ return this._badgeStyle;
32
+ }
33
+ set badgeStyle(value) {
34
+ if (!styles.includes(value)) {
35
+ settings.logger.error(
36
+ `Invalid style: ${value}, expected one of ${styles.join(", ")}, got ${value}.`
37
+ );
38
+ return;
39
+ }
40
+ this._badgeStyle = value;
41
+ this.updateStyle();
42
+ }
43
+ shadowRoot;
44
+ static observedAttributes = ["badge-style", "size"];
45
+ constructor() {
46
+ super();
47
+ this.shadowRoot = this.attachShadow({ mode: "open" });
48
+ this.shadowRoot.innerHTML = `
49
+ <style>
50
+ .badge {
51
+ box-sizing: border-box;
52
+ border-radius: 4px;
53
+ border: 1px solid transparent;
54
+ padding: 8px;
55
+ font-size: 12px;
56
+ color: var(--text-color);
57
+ height: var(--size);
58
+ border: 1px solid var(--border-color);
59
+ display: flex;
60
+ align-items: center;
61
+ justify-content: center;
62
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
63
+
64
+ --purple-text: rgba(224, 204, 250, 1);
65
+ --purple-border: rgba(113, 24, 226, 1);
66
+
67
+ --gray-text: rgba(191, 193, 201, 1);
68
+ --gray-border:rgba(191, 193, 201, 1);
69
+
70
+ --red-text: rgba(249, 196, 215, 1);
71
+ --red-border: rgba(179, 62, 102, 1);
72
+
73
+ --green-text: rgba(213, 249, 196, 1);
74
+ --green-border: rgba(61, 125, 31, 1);
75
+
76
+ --yellow-text: rgba(249, 233, 196, 1);
77
+ --yellow-border: rgba(181, 138, 45, 1);
78
+
79
+ --blue-text: rgba(189, 195, 255, 1);
80
+ --blue-border: rgba(54, 69, 217, 1);
81
+
82
+ --large: 24px;
83
+ --small: 20px;
84
+ }
85
+ </style>
86
+ <style id="selected-style"></style>
87
+
88
+ <div class="badge">
89
+ <slot></slot>
90
+ </div>
91
+ `;
92
+ }
93
+ connectedCallback() {
94
+ this.updateStyle();
95
+ }
96
+ attributeChangedCallback() {
97
+ if (this.hasAttribute("badge-style"))
98
+ this.badgeStyle = this.getAttribute("badge-style");
99
+ if (this.hasAttribute("size")) this.size = this.getAttribute("size");
100
+ }
101
+ updateStyle() {
102
+ const style = this.shadowRoot.querySelector("#selected-style");
103
+ if (style) {
104
+ style.innerHTML = `
105
+ .badge {
106
+ --text-color: var(--${this.badgeStyle}-text);
107
+ --border-color: var(--${this.badgeStyle}-border);
108
+ --size: var(--${this.size});
109
+ }`;
110
+ }
111
+ }
112
+ };
113
+
114
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/button.js
115
+ var sizes2 = ["small", "medium", "large"];
116
+ var styles2 = ["ghost", "outline", "purple", "gray", "red", "green", "yellow", "blue"];
117
+ var borderRadii = ["normal", "rounded"];
118
+ var DevToolbarButton = class extends HTMLElement {
119
+ _size = "small";
120
+ _buttonStyle = "purple";
121
+ _buttonBorderRadius = "normal";
122
+ get size() {
123
+ return this._size;
124
+ }
125
+ set size(value) {
126
+ if (!sizes2.includes(value)) {
127
+ settings.logger.error(
128
+ `Invalid size: ${value}, expected one of ${sizes2.join(", ")}, got ${value}.`
129
+ );
130
+ return;
131
+ }
132
+ this._size = value;
133
+ this.updateStyle();
134
+ }
135
+ get buttonStyle() {
136
+ return this._buttonStyle;
137
+ }
138
+ set buttonStyle(value) {
139
+ if (!styles2.includes(value)) {
140
+ settings.logger.error(
141
+ `Invalid style: ${value}, expected one of ${styles2.join(", ")}, got ${value}.`
142
+ );
143
+ return;
144
+ }
145
+ this._buttonStyle = value;
146
+ this.updateStyle();
147
+ }
148
+ get buttonBorderRadius() {
149
+ return this._buttonBorderRadius;
150
+ }
151
+ set buttonBorderRadius(value) {
152
+ if (!borderRadii.includes(value)) {
153
+ settings.logger.error(
154
+ `Invalid border-radius: ${value}, expected one of ${borderRadii.join(", ")}, got ${value}.`
155
+ );
156
+ return;
157
+ }
158
+ this._buttonBorderRadius = value;
159
+ this.updateStyle();
160
+ }
161
+ static observedAttributes = ["button-style", "size", "button-border-radius"];
162
+ shadowRoot;
163
+ constructor() {
164
+ super();
165
+ this.shadowRoot = this.attachShadow({ mode: "open" });
166
+ this.shadowRoot.innerHTML = `
167
+ <style>
168
+ button {
169
+ --purple-background: rgba(113, 24, 226, 1);
170
+ --purple-border: rgba(224, 204, 250, 0.33);
171
+ --purple-text: #fff;
172
+
173
+ --gray-background: rgba(52, 56, 65, 1);
174
+ --gray-border: rgba(71, 78, 94, 1);
175
+ --gray-text: #fff;
176
+
177
+ --red-background: rgba(179, 62, 102, 1);
178
+ --red-border: rgba(249, 196, 215, 0.33);
179
+ --red-text: #fff;
180
+
181
+ --green-background: rgba(213, 249, 196, 1);
182
+ --green-border: rgba(61, 125, 31, 1);
183
+ --green-text: #000;
184
+
185
+ --yellow-background: rgba(255, 236, 179, 1);
186
+ --yellow-border: rgba(255, 191, 0, 1);
187
+ --yellow-text: #000;
188
+
189
+ --blue-background: rgba(54, 69, 217, 1);
190
+ --blue-border: rgba(189, 195, 255, 1);
191
+ --blue-text: #fff;
192
+
193
+ --outline-background: transparent;
194
+ --outline-border: #fff;
195
+ --outline-text: #fff;
196
+
197
+ --ghost-background: transparent;
198
+ --ghost-border: transparent;
199
+ --ghost-text: #fff;
200
+
201
+ --large-font-size: 16px;
202
+ --medium-font-size: 14px;
203
+ --small-font-size: 12px;
204
+
205
+ --large-padding: 12px 16px;
206
+ --large-rounded-padding: 12px 12px;
207
+ --medium-padding: 8px 12px;
208
+ --medium-rounded-padding: 8px 8px;
209
+ --small-padding: 4px 8px;
210
+ --small-rounded-padding: 4px 4px;
211
+
212
+ --normal-border-radius: 4px;
213
+ --rounded-border-radius: 9999px;
214
+
215
+ border: 1px solid var(--border);
216
+ padding: var(--padding);
217
+ font-size: var(--font-size);
218
+ background: var(--background);
219
+
220
+ color: var(--text-color);
221
+ border-radius: var(--border-radius);
222
+ display: flex;
223
+ align-items: center;
224
+ justify-content: center;
225
+ }
226
+
227
+ button:hover {
228
+ cursor: pointer;
229
+ }
230
+
231
+ ::slotted(astro-dev-toolbar-icon) {
232
+ display: inline-block;
233
+ height: 1em;
234
+ width: 1em;
235
+ margin-left: 0.5em;
236
+ }
237
+ </style>
238
+ <style id="selected-style"></style>
239
+
240
+ <button>
241
+ <slot></slot>
242
+ </button>
243
+ `;
244
+ }
245
+ connectedCallback() {
246
+ this.updateStyle();
247
+ }
248
+ updateStyle() {
249
+ const style = this.shadowRoot.querySelector("#selected-style");
250
+ if (style) {
251
+ style.innerHTML = `
252
+ button {
253
+ --background: var(--${this.buttonStyle}-background);
254
+ --border: var(--${this.buttonStyle}-border);
255
+ --font-size: var(--${this.size}-font-size);
256
+ --text-color: var(--${this.buttonStyle}-text);
257
+ ${this.buttonBorderRadius === "normal" ? "--padding: var(--" + this.size + "-padding);" : "--padding: var(--" + this.size + "-rounded-padding);"}
258
+ --border-radius: var(--${this.buttonBorderRadius}-border-radius);
259
+ }`;
260
+ }
261
+ }
262
+ attributeChangedCallback() {
263
+ if (this.hasAttribute("size")) this.size = this.getAttribute("size");
264
+ if (this.hasAttribute("button-style"))
265
+ this.buttonStyle = this.getAttribute("button-style");
266
+ }
267
+ };
268
+
269
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/card.js
270
+ var styles3 = ["purple", "gray", "red", "green", "yellow", "blue"];
271
+ var DevToolbarCard = class extends HTMLElement {
272
+ link;
273
+ clickAction;
274
+ shadowRoot;
275
+ _cardStyle = "purple";
276
+ get cardStyle() {
277
+ return this._cardStyle;
278
+ }
279
+ set cardStyle(value) {
280
+ if (!styles3.includes(value)) {
281
+ settings.logger.error(
282
+ `Invalid style: ${value}, expected one of ${styles3.join(", ")}, got ${value}.`
283
+ );
284
+ return;
285
+ }
286
+ this._cardStyle = value;
287
+ this.updateStyle();
288
+ }
289
+ static observedAttributes = ["card-style"];
290
+ constructor() {
291
+ super();
292
+ this.shadowRoot = this.attachShadow({ mode: "open" });
293
+ this.link = this.getAttribute("link");
294
+ }
295
+ attributeChangedCallback() {
296
+ if (this.hasAttribute("card-style"))
297
+ this.cardStyle = this.getAttribute("card-style");
298
+ this.updateStyle();
299
+ }
300
+ updateStyle() {
301
+ const style = this.shadowRoot.querySelector("#selected-style");
302
+ if (style) {
303
+ style.innerHTML = `
304
+ :host {
305
+ --hover-background: var(--${this.cardStyle}-hover-background);
306
+ --hover-border: var(--${this.cardStyle}-hover-border);
307
+ }
308
+ `;
309
+ }
310
+ }
311
+ connectedCallback() {
312
+ const element = this.link ? "a" : this.clickAction ? "button" : "div";
313
+ this.shadowRoot.innerHTML += `
314
+ <style>
315
+ :host {
316
+ --purple-hover-background: rgba(136, 58, 234, 0.33);
317
+ --purple-hover-border: 1px solid rgba(113, 24, 226, 1);
318
+
319
+ --gray-hover-background: rgba(191, 193, 201, 0.33);
320
+ --gray-hover-border: 1px solid rgba(191, 193, 201, 1);
321
+
322
+ --red-hover-background: rgba(249, 196, 215, 0.33);
323
+ --red-hover-border: 1px solid rgba(179, 62, 102, 1);
324
+
325
+ --green-hover-background: rgba(213, 249, 196, 0.33);
326
+ --green-hover-border: 1px solid rgba(61, 125, 31, 1);
327
+
328
+ --yellow-hover-background: rgba(255, 236, 179, 0.33);
329
+ --yellow-hover-border: 1px solid rgba(255, 191, 0, 1);
330
+
331
+ --blue-hover-background: rgba(189, 195, 255, 0.33);
332
+ --blue-hover-border: 1px solid rgba(54, 69, 217, 1);
333
+ }
334
+
335
+ :host>a, :host>button, :host>div {
336
+ box-sizing: border-box;
337
+ padding: 16px;
338
+ display: block;
339
+ border-radius: 8px;
340
+ border: 1px solid rgba(35, 38, 45, 1);
341
+ color: rgba(191, 193, 201, 1);
342
+ text-decoration: none;
343
+ background-color: #13151A;
344
+ box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.10), 0px 1px 2px 0px rgba(0, 0, 0, 0.10), 0px 4px 4px 0px rgba(0, 0, 0, 0.09), 0px 10px 6px 0px rgba(0, 0, 0, 0.05), 0px 17px 7px 0px rgba(0, 0, 0, 0.01), 0px 26px 7px 0px rgba(0, 0, 0, 0.00);
345
+ width: 100%;
346
+ height: 100%;
347
+ }
348
+
349
+ h1, h2, h3, h4, h5, h6 {
350
+ color: #fff;
351
+ font-weight: 600;
352
+ }
353
+
354
+ a:hover, button:hover {
355
+ background: var(--hover-background);
356
+ border: var(--hover-border);
357
+ }
358
+
359
+ svg {
360
+ display: block;
361
+ margin: 0 auto;
362
+ }
363
+
364
+ span {
365
+ margin-top: 8px;
366
+ display: block;
367
+ text-align: center;
368
+ }
369
+ </style>
370
+ <style id="selected-style"></style>
371
+
372
+ <${element}${this.link ? ` href="${this.link}" target="_blank"` : ``} id="astro-overlay-card">
373
+ <slot />
374
+ </${element}>
375
+ `;
376
+ this.updateStyle();
377
+ if (this.clickAction) {
378
+ this.shadowRoot.getElementById("astro-overlay-card")?.addEventListener("click", this.clickAction);
379
+ }
380
+ }
381
+ };
382
+
383
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/highlight.js
384
+ var styles4 = ["purple", "gray", "red", "green", "yellow", "blue"];
385
+ var DevToolbarHighlight = class extends HTMLElement {
386
+ icon;
387
+ _highlightStyle = "purple";
388
+ get highlightStyle() {
389
+ return this._highlightStyle;
390
+ }
391
+ set highlightStyle(value) {
392
+ if (!styles4.includes(value)) {
393
+ settings.logger.error(
394
+ `Invalid style: ${value}, expected one of ${styles4.join(", ")}, got ${value}.`
395
+ );
396
+ return;
397
+ }
398
+ this._highlightStyle = value;
399
+ this.updateStyle();
400
+ }
401
+ static observedAttributes = ["highlight-style"];
402
+ shadowRoot;
403
+ constructor() {
404
+ super();
405
+ this.shadowRoot = this.attachShadow({ mode: "open" });
406
+ this.icon = this.hasAttribute("icon") ? this.getAttribute("icon") : void 0;
407
+ this.shadowRoot.innerHTML = `
408
+ <style>
409
+ :host {
410
+ --purple-background: linear-gradient(180deg, rgba(224, 204, 250, 0.33) 0%, rgba(224, 204, 250, 0.0825) 100%);
411
+ --purple-border: 1px solid rgba(113, 24, 226, 1);
412
+
413
+ --gray-background: linear-gradient(180deg, rgba(191, 193, 201, 0.33) 0%, rgba(191, 193, 201, 0.0825) 100%);
414
+ --gray-border: 1px solid rgba(191, 193, 201, 1);
415
+
416
+ --red-background: linear-gradient(180deg, rgba(249, 196, 215, 0.33) 0%, rgba(249, 196, 215, 0.0825) 100%);
417
+ --red-border: 1px solid rgba(179, 62, 102, 1);
418
+
419
+ --green-background: linear-gradient(180deg, rgba(213, 249, 196, 0.33) 0%, rgba(213, 249, 196, 0.0825) 100%);
420
+ --green-border: 1px solid rgba(61, 125, 31, 1);
421
+
422
+ --yellow-background: linear-gradient(180deg, rgba(255, 236, 179, 0.33) 0%, rgba(255, 236, 179, 0.0825) 100%);
423
+ --yellow-border: 1px solid rgba(181, 138, 45, 1);
424
+
425
+ --blue-background: linear-gradient(180deg, rgba(189, 195, 255, 0.33) 0%, rgba(189, 195, 255, 0.0825) 100%);
426
+ --blue-border: 1px solid rgba(54, 69, 217, 1);
427
+
428
+ border-radius: 4px;
429
+ display: block;
430
+ width: 100%;
431
+ height: 100%;
432
+ position: absolute;
433
+ z-index: 2000000000;
434
+
435
+ background: var(--background);
436
+ border: var(--border);
437
+ }
438
+
439
+ .icon {
440
+ width: 24px;
441
+ height: 24px;
442
+ color: white;
443
+ background: linear-gradient(0deg, #B33E66, #B33E66), linear-gradient(0deg, #351722, #351722);
444
+ border: 1px solid rgba(53, 23, 34, 1);
445
+ border-radius: 9999px;
446
+ display: flex;
447
+ justify-content: center;
448
+ align-items: center;
449
+ position: absolute;
450
+ top: -15px;
451
+ right: -15px;
452
+ }
453
+ </style>
454
+ <style id="selected-style"></style>
455
+ `;
456
+ }
457
+ updateStyle() {
458
+ const style = this.shadowRoot.querySelector("#selected-style");
459
+ if (style) {
460
+ style.innerHTML = `
461
+ :host {
462
+ --background: var(--${this.highlightStyle}-background);
463
+ --border: var(--${this.highlightStyle}-border);
464
+ }`;
465
+ }
466
+ }
467
+ attributeChangedCallback() {
468
+ if (this.hasAttribute("highlight-style"))
469
+ this.highlightStyle = this.getAttribute("highlight-style");
470
+ }
471
+ connectedCallback() {
472
+ this.updateStyle();
473
+ if (this.icon) {
474
+ let iconContainer = document.createElement("div");
475
+ iconContainer.classList.add("icon");
476
+ let iconElement;
477
+ if (isDefinedIcon(this.icon)) {
478
+ iconElement = getIconElement(this.icon);
479
+ } else {
480
+ iconElement = document.createElementNS("http://www.w3.org/2000/svg", "svg");
481
+ iconElement.setAttribute("viewBox", "0 0 16 16");
482
+ iconElement.innerHTML = this.icon;
483
+ }
484
+ if (iconElement) {
485
+ iconElement?.style.setProperty("width", "16px");
486
+ iconElement?.style.setProperty("height", "16px");
487
+ iconContainer.append(iconElement);
488
+ this.shadowRoot.append(iconContainer);
489
+ }
490
+ }
491
+ }
492
+ };
493
+
494
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/icon.js
495
+ var DevToolbarIcon = class extends HTMLElement {
496
+ _icon = void 0;
497
+ shadowRoot;
498
+ get icon() {
499
+ return this._icon;
500
+ }
501
+ set icon(name) {
502
+ this._icon = name;
503
+ this.buildTemplate();
504
+ }
505
+ constructor() {
506
+ super();
507
+ this.shadowRoot = this.attachShadow({ mode: "open" });
508
+ if (this.hasAttribute("icon")) {
509
+ this.icon = this.getAttribute("icon");
510
+ } else {
511
+ this.buildTemplate();
512
+ }
513
+ }
514
+ getIconHTML(icon) {
515
+ if (icon && isDefinedIcon(icon)) {
516
+ return getIconElement(icon)?.outerHTML ?? "";
517
+ }
518
+ return "<slot />";
519
+ }
520
+ buildTemplate() {
521
+ this.shadowRoot.innerHTML = `
522
+ <style>
523
+ svg {
524
+ width: 100%;
525
+ height: 100%;
526
+ }
527
+
528
+ @media (forced-colors: active) {
529
+ svg path[fill="#fff"] {
530
+ fill: black;
531
+ }
532
+ }
533
+ </style>
534
+ ${this.getIconHTML(this._icon)}`;
535
+ }
536
+ };
537
+
538
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/radio-checkbox.js
539
+ var styles5 = ["purple", "gray", "red", "green", "yellow", "blue"];
540
+ var DevToolbarRadioCheckbox = class extends HTMLElement {
541
+ _radioStyle = "purple";
542
+ input;
543
+ shadowRoot;
544
+ get radioStyle() {
545
+ return this._radioStyle;
546
+ }
547
+ set radioStyle(value) {
548
+ if (!styles5.includes(value)) {
549
+ console.error(`Invalid style: ${value}, expected one of ${styles5.join(", ")}.`);
550
+ return;
551
+ }
552
+ this._radioStyle = value;
553
+ this.updateStyle();
554
+ }
555
+ static observedAttributes = ["radio-style", "checked", "disabled", "name", "value"];
556
+ constructor() {
557
+ super();
558
+ this.shadowRoot = this.attachShadow({ mode: "open" });
559
+ this.shadowRoot.innerHTML = `
560
+ <style>
561
+ :host {
562
+ --purple-unchecked: rgba(224, 204, 250, 0.33);
563
+ --purple-checked: rgba(224, 204, 250, 1);
564
+
565
+ --gray-unchecked: rgba(191, 193, 201, 0.33);
566
+ --gray-checked: rgba(191, 193, 201, 1);
567
+
568
+ --red-unchecked: rgba(249, 196, 215, 0.33);
569
+ --red-checked: rgba(179, 62, 102, 1);
570
+
571
+ --green-unchecked: rgba(213, 249, 196, 0.33);
572
+ --green-checked: rgba(61, 125, 31, 1);
573
+
574
+ --yellow-unchecked: rgba(255, 236, 179, 0.33);
575
+ --yellow-checked: rgba(181, 138, 45, 1);
576
+
577
+ --blue-unchecked: rgba(189, 195, 255, 0.33);
578
+ --blue-checked: rgba(54, 69, 217, 1);
579
+ }
580
+
581
+ input[type="radio"] {
582
+ appearance: none;
583
+ -webkit-appearance: none;
584
+ display: flex;
585
+ align-content: center;
586
+ justify-content: center;
587
+ border: 2px solid var(--unchecked-color);
588
+ border-radius: 9999px;
589
+ width: 16px;
590
+ height: 16px;
591
+ }
592
+
593
+ input[type="radio"]::before {
594
+ content: "";
595
+ background-color: var(--checked-color);
596
+ width: 8px;
597
+ height: 8px;
598
+ border-radius: 9999px;
599
+ visibility: hidden;
600
+ margin: 2px;
601
+ }
602
+
603
+ input[type="radio"]:checked {
604
+ border-color: var(--checked-color);
605
+ }
606
+
607
+ input[type="radio"]:checked::before {
608
+ visibility: visible;
609
+ }
610
+ </style>
611
+ <style id="selected-style"></style>
612
+ `;
613
+ this.input = document.createElement("input");
614
+ this.input.type = "radio";
615
+ this.shadowRoot.append(this.input);
616
+ }
617
+ connectedCallback() {
618
+ this.updateInputState();
619
+ this.updateStyle();
620
+ }
621
+ updateStyle() {
622
+ const styleElement = this.shadowRoot.querySelector("#selected-style");
623
+ if (styleElement) {
624
+ styleElement.innerHTML = `
625
+ :host {
626
+ --unchecked-color: var(--${this._radioStyle}-unchecked);
627
+ --checked-color: var(--${this._radioStyle}-checked);
628
+ }
629
+ `;
630
+ }
631
+ }
632
+ updateInputState() {
633
+ this.input.checked = this.hasAttribute("checked");
634
+ this.input.disabled = this.hasAttribute("disabled");
635
+ this.input.name = this.getAttribute("name") || "";
636
+ this.input.value = this.getAttribute("value") || "";
637
+ }
638
+ attributeChangedCallback() {
639
+ if (this.hasAttribute("radio-style")) {
640
+ this.radioStyle = this.getAttribute("radio-style");
641
+ }
642
+ this.updateInputState();
643
+ }
644
+ };
645
+
646
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/select.js
647
+ var styles6 = ["purple", "gray", "red", "green", "yellow", "blue"];
648
+ var DevToolbarSelect = class extends HTMLElement {
649
+ shadowRoot;
650
+ element;
651
+ _selectStyle = "gray";
652
+ get selectStyle() {
653
+ return this._selectStyle;
654
+ }
655
+ set selectStyle(value) {
656
+ if (!styles6.includes(value)) {
657
+ settings.logger.error(`Invalid style: ${value}, expected one of ${styles6.join(", ")}.`);
658
+ return;
659
+ }
660
+ this._selectStyle = value;
661
+ this.updateStyle();
662
+ }
663
+ static observedAttributes = ["select-style"];
664
+ constructor() {
665
+ super();
666
+ this.shadowRoot = this.attachShadow({ mode: "open" });
667
+ this.shadowRoot.innerHTML = `
668
+ <style>
669
+ :host {
670
+ --purple-text: rgba(224, 204, 250, 1);
671
+ --purple-border: rgba(113, 24, 226, 1);
672
+
673
+ --gray-text: rgba(191, 193, 201, 1);
674
+ --gray-border:rgba(191, 193, 201, 1);
675
+
676
+ --red-text: rgba(249, 196, 215, 1);
677
+ --red-border: rgba(179, 62, 102, 1);
678
+
679
+ --green-text: rgba(213, 249, 196, 1);
680
+ --green-border: rgba(61, 125, 31, 1);
681
+
682
+ --yellow-text: rgba(249, 233, 196, 1);
683
+ --yellow-border: rgba(181, 138, 45, 1);
684
+
685
+ --blue-text: rgba(189, 195, 255, 1);
686
+ --blue-border: rgba(54, 69, 217, 1);
687
+
688
+ --text-color: var(--gray-text);
689
+ --border-color: var(--gray-border);
690
+ }
691
+ select {
692
+ appearance: none;
693
+ text-align-last: center;
694
+ display: inline-block;
695
+ font-family: system-ui, sans-serif;
696
+ font-size: 14px;
697
+ padding: 4px 24px 4px 8px;
698
+ border: 1px solid var(--border-color);
699
+ border-radius: 4px;
700
+ color: var(--text-color);
701
+ background-color: transparent;
702
+ background-image:
703
+ linear-gradient(45deg, transparent 50%, var(--text-color) 50%),
704
+ linear-gradient(135deg, var(--text-color) 50%, transparent 50%);
705
+ background-position:
706
+ calc(100% - 12px) calc(1em - 2px),
707
+ calc(100% - 8px) calc(1em - 2px);
708
+ background-size: 4px 4px;
709
+ background-repeat: no-repeat;
710
+ }
711
+ </style>
712
+ <style id="selected-style"></style>
713
+ <slot></slot>
714
+ `;
715
+ this.element = document.createElement("select");
716
+ this.shadowRoot.addEventListener("slotchange", (event) => {
717
+ if (event.target instanceof HTMLSlotElement) {
718
+ this.element.append(...event.target.assignedNodes());
719
+ }
720
+ });
721
+ }
722
+ connectedCallback() {
723
+ this.element.name = "dev-toolbar-select";
724
+ this.shadowRoot.append(this.element);
725
+ this.updateStyle();
726
+ }
727
+ attributeChangedCallback() {
728
+ if (this.hasAttribute("select-style")) {
729
+ this.selectStyle = this.getAttribute("select-style");
730
+ }
731
+ }
732
+ updateStyle() {
733
+ const style = this.shadowRoot.querySelector("#selected-style");
734
+ if (style) {
735
+ style.innerHTML = `
736
+ :host {
737
+ --text-color: var(--${this.selectStyle}-text);
738
+ --border-color: var(--${this.selectStyle}-border);
739
+ }
740
+ `;
741
+ }
742
+ }
743
+ };
744
+
745
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/toggle.js
746
+ var styles7 = ["purple", "gray", "red", "green", "yellow", "blue"];
747
+ var DevToolbarToggle = class extends HTMLElement {
748
+ shadowRoot;
749
+ input;
750
+ _toggleStyle = "gray";
751
+ get toggleStyle() {
752
+ return this._toggleStyle;
753
+ }
754
+ set toggleStyle(value) {
755
+ if (!styles7.includes(value)) {
756
+ settings.logger.error(`Invalid style: ${value}, expected one of ${styles7.join(", ")}.`);
757
+ return;
758
+ }
759
+ this._toggleStyle = value;
760
+ this.updateStyle();
761
+ }
762
+ static observedAttributes = ["toggle-style"];
763
+ constructor() {
764
+ super();
765
+ this.shadowRoot = this.attachShadow({ mode: "open" });
766
+ this.shadowRoot.innerHTML = `
767
+ <style>
768
+ :host {
769
+ --purple-bg-on: rgba(113, 24, 226, 1);
770
+ --purple-border-off: rgba(113, 24, 226, 1);
771
+ --purple-border-on: rgba(224, 204, 250, 1);
772
+
773
+ --gray-bg-on: rgba(61, 125, 31, 1);
774
+ --gray-border-off: rgba(145, 152, 173, 1);
775
+ --gray-border-on: rgba(213, 249, 196, 1);
776
+
777
+ --red-bg-on: rgba(179, 62, 102, 1);
778
+ --red-border-off: rgba(179, 62, 102, 1);
779
+ --red-border-on: rgba(249, 196, 215, 1);
780
+
781
+ --green-bg-on: rgba(61, 125, 31, 1);
782
+ --green-border-off: rgba(61, 125, 31, 1);
783
+ --green-border-on: rgba(213, 249, 196, 1);
784
+
785
+ --yellow-bg-on: rgba(181, 138, 45, 1);
786
+ --yellow-border-off: rgba(181, 138, 45, 1);
787
+ --yellow-border-on: rgba(255, 236, 179, 1);
788
+
789
+ --blue-bg-on: rgba(54, 69, 217, 1);
790
+ --blue-border-off: rgba(54, 69, 217, 1);
791
+ --blue-border-on: rgba(189, 195, 255, 1);
792
+ }
793
+
794
+ input {
795
+ appearance: none;
796
+ width: 32px;
797
+ height: 20px;
798
+ border: 1px solid var(--border-off);
799
+ transition: background-color 0.2s ease, border-color 0.2s ease;
800
+ border-radius: 9999px;
801
+ }
802
+
803
+ input::after {
804
+ content: '';
805
+ width: 16px;
806
+ display: inline-block;
807
+ height: 16px;
808
+ background-color: var(--border-off);
809
+ border-radius: 9999px;
810
+ transition: transform 0.2s ease, background-color 0.2s ease;
811
+ top: 1px;
812
+ left: 1px;
813
+ position: relative;
814
+ }
815
+
816
+ @media (forced-colors: active) {
817
+ input::after {
818
+ border: 1px solid black;
819
+ top: 0px;
820
+ left: 0px;
821
+ }
822
+ }
823
+
824
+ input:checked {
825
+ border: 1px solid var(--border-on);
826
+ background-color: var(--bg-on);
827
+ }
828
+
829
+ input:checked::after {
830
+ transform: translateX(12px);
831
+ background: var(--border-on);
832
+ }
833
+ </style>
834
+ <style id="selected-style"></style>
835
+ `;
836
+ this.input = document.createElement("input");
837
+ }
838
+ attributeChangedCallback() {
839
+ if (this.hasAttribute("toggle-style"))
840
+ this.toggleStyle = this.getAttribute("toggle-style");
841
+ }
842
+ updateStyle() {
843
+ const style = this.shadowRoot.querySelector("#selected-style");
844
+ if (style) {
845
+ style.innerHTML = `
846
+ :host {
847
+ --bg-on: var(--${this.toggleStyle}-bg-on);
848
+ --border-off: var(--${this.toggleStyle}-border-off);
849
+ --border-on: var(--${this.toggleStyle}-border-on);
850
+ }
851
+ `;
852
+ }
853
+ }
854
+ connectedCallback() {
855
+ this.input.type = "checkbox";
856
+ this.input.name = "dev-toolbar-toggle";
857
+ this.shadowRoot.append(this.input);
858
+ this.updateStyle();
859
+ }
860
+ get value() {
861
+ return this.input.value;
862
+ }
863
+ set value(val) {
864
+ this.input.value = val;
865
+ }
866
+ };
867
+
868
+ // ../../../../node_modules/.pnpm/astro@6.4.5_@types+node@25.9.2_jiti@2.7.0_lightningcss@1.32.0_rollup@4.61.1_tsx@4.22.4_yaml@2.9.0/node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/tooltip.js
869
+ var DevToolbarTooltip = class extends HTMLElement {
870
+ sections = [];
871
+ shadowRoot;
872
+ constructor() {
873
+ super();
874
+ this.shadowRoot = this.attachShadow({ mode: "open" });
875
+ }
876
+ connectedCallback() {
877
+ this.shadowRoot.innerHTML = `
878
+ <style>
879
+ :host {
880
+ position: absolute;
881
+ display: none;
882
+ color: white;
883
+ background: linear-gradient(0deg, #310A65, #310A65), linear-gradient(0deg, #7118E2, #7118E2);
884
+ border: 1px solid rgba(113, 24, 226, 1);
885
+ border-radius: 4px;
886
+ padding: 0;
887
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
888
+ font-size: 14px;
889
+ margin: 0;
890
+ z-index: 2000000001;
891
+ max-width: 45ch;
892
+ width: fit-content;
893
+ min-width: 30ch;
894
+ box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.30), 0px 1px 2px 0px rgba(0, 0, 0, 0.29), 0px 4px 4px 0px rgba(0, 0, 0, 0.26), 0px 10px 6px 0px rgba(0, 0, 0, 0.15), 0px 17px 7px 0px rgba(0, 0, 0, 0.04), 0px 26px 7px 0px rgba(0, 0, 0, 0.01);
895
+ }
896
+
897
+ :host([data-show="true"]) {
898
+ display: block;
899
+ }
900
+
901
+ svg {
902
+ vertical-align: bottom;
903
+ margin-inline-end: 4px;
904
+ }
905
+
906
+ hr {
907
+ border: 1px solid rgba(136, 58, 234, 0.33);
908
+ padding: 0;
909
+ margin: 0;
910
+ }
911
+
912
+ section {
913
+ padding: 8px;
914
+ }
915
+
916
+ .section-content {
917
+ max-height: 250px;
918
+ overflow-y: auto;
919
+ }
920
+
921
+ .modal-title {
922
+ display: flex;
923
+ justify-content: space-between;
924
+ align-items: center;
925
+ }
926
+
927
+ .modal-main-title {
928
+ font-weight: bold;
929
+ }
930
+
931
+ .modal-title + div {
932
+ margin-top: 8px;
933
+ }
934
+
935
+ .modal-cta {
936
+ display: block;
937
+ font-weight: bold;
938
+ font-size: 0.9em;
939
+ }
940
+
941
+ .clickable-section {
942
+ background: rgba(113, 24, 226, 1);
943
+ padding: 8px;
944
+ border: 0;
945
+ color: white;
946
+ font-family: system-ui, sans-serif;
947
+ text-align: left;
948
+ line-height: 1.2;
949
+ white-space: nowrap;
950
+ text-decoration: none;
951
+ margin: 0;
952
+ width: 100%;
953
+ }
954
+
955
+ .clickable-section:hover {
956
+ cursor: pointer;
957
+ }
958
+
959
+ pre, code {
960
+ background: rgb(78, 27, 145);
961
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
962
+ border-radius: 2px;
963
+ font-size: 14px;
964
+ padding: 2px;
965
+ }
966
+ pre {
967
+ padding: 1em;
968
+ margin: 0 0;
969
+ overflow: auto;
970
+ }
971
+ `;
972
+ const fragment = new DocumentFragment();
973
+ this.sections.forEach((section, index) => {
974
+ const sectionElement = section.clickAction ? document.createElement("button") : document.createElement("section");
975
+ if (section.clickAction) {
976
+ sectionElement.classList.add("clickable-section");
977
+ sectionElement.addEventListener("click", async () => {
978
+ await section.clickAction();
979
+ });
980
+ }
981
+ sectionElement.innerHTML = `
982
+ ${section.title ? `<div class="modal-title"><span class="modal-main-title">
983
+ ${section.icon ? this.getElementForIcon(section.icon) : ""}${section.title}</span>${section.inlineTitle ?? ""}</div>` : ""}
984
+ ${section.content ? `<div class="section-content">${section.content}</div>` : ""}
985
+ ${section.clickDescription ? `<span class="modal-cta">${section.clickDescription}</span>` : ""}
986
+ `;
987
+ fragment.append(sectionElement);
988
+ if (index < this.sections.length - 1) {
989
+ fragment.append(document.createElement("hr"));
990
+ }
991
+ });
992
+ this.shadowRoot.append(fragment);
993
+ }
994
+ getElementForIcon(icon) {
995
+ let iconElement;
996
+ if (isDefinedIcon(icon)) {
997
+ iconElement = getIconElement(icon);
998
+ } else {
999
+ iconElement = document.createElementNS("http://www.w3.org/2000/svg", "svg");
1000
+ iconElement.setAttribute("viewBox", "0 0 16 16");
1001
+ iconElement.innerHTML = icon;
1002
+ }
1003
+ iconElement?.style.setProperty("width", "16px");
1004
+ iconElement?.style.setProperty("height", "16px");
1005
+ return iconElement?.outerHTML ?? "";
1006
+ }
1007
+ };
1008
+ export {
1009
+ DevToolbarBadge,
1010
+ DevToolbarButton,
1011
+ DevToolbarCard,
1012
+ DevToolbarHighlight,
1013
+ DevToolbarIcon,
1014
+ DevToolbarRadioCheckbox,
1015
+ DevToolbarSelect,
1016
+ DevToolbarToggle,
1017
+ DevToolbarTooltip,
1018
+ DevToolbarWindow
1019
+ };
1020
+ //# sourceMappingURL=ui-library-JGHU6JE2.js.map