triiiceratops 0.8.2 → 0.9.1

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/dist/components/AnnotationOverlay.svelte +288 -0
  2. package/dist/components/AnnotationOverlay.svelte.d.ts +3 -0
  3. package/dist/components/CanvasNavigation.svelte +32 -0
  4. package/dist/components/CanvasNavigation.svelte.d.ts +11 -0
  5. package/dist/components/DemoHeader.svelte +703 -0
  6. package/dist/components/DemoHeader.svelte.d.ts +9 -0
  7. package/dist/components/FloatingMenu.svelte +208 -0
  8. package/dist/components/FloatingMenu.svelte.d.ts +3 -0
  9. package/dist/components/LeftFab.svelte +69 -0
  10. package/dist/components/LeftFab.svelte.d.ts +3 -0
  11. package/dist/components/MetadataDialog.svelte +151 -0
  12. package/dist/components/MetadataDialog.svelte.d.ts +3 -0
  13. package/dist/components/OSDViewer.svelte +260 -0
  14. package/dist/components/OSDViewer.svelte.d.ts +8 -0
  15. package/dist/components/SearchPanel.svelte +150 -0
  16. package/dist/components/SearchPanel.svelte.d.ts +3 -0
  17. package/dist/components/ThemeToggle.svelte +118 -0
  18. package/dist/components/ThemeToggle.svelte.d.ts +3 -0
  19. package/dist/components/ThumbnailGallery.svelte +601 -0
  20. package/dist/components/ThumbnailGallery.svelte.d.ts +36 -0
  21. package/dist/components/TriiiceratopsViewer.svelte +434 -0
  22. package/dist/components/TriiiceratopsViewer.svelte.d.ts +20 -0
  23. package/dist/components/TriiiceratopsViewerElement.svelte +139 -0
  24. package/dist/components/TriiiceratopsViewerElement.svelte.d.ts +27 -0
  25. package/dist/components/TriiiceratopsViewerElementImage.svelte +143 -0
  26. package/dist/components/TriiiceratopsViewerElementImage.svelte.d.ts +27 -0
  27. package/dist/custom-element-image.d.ts +1 -0
  28. package/dist/custom-element-image.js +2 -0
  29. package/dist/custom-element.d.ts +1 -0
  30. package/dist/custom-element.js +3 -0
  31. package/dist/index.js +9 -4153
  32. package/dist/plugins/image-manipulation/ImageManipulationPanel.svelte +134 -0
  33. package/dist/plugins/image-manipulation/ImageManipulationPanel.svelte.d.ts +10 -0
  34. package/dist/{src/lib/plugins → plugins}/image-manipulation/ImageManipulationPlugin.svelte.d.ts +2 -2
  35. package/dist/plugins/image-manipulation/ImageManipulationPlugin.svelte.js +122 -0
  36. package/dist/{src/lib/plugins → plugins}/image-manipulation/filters.d.ts +1 -1
  37. package/dist/plugins/image-manipulation/filters.js +48 -0
  38. package/dist/plugins/image-manipulation/index.js +2 -0
  39. package/dist/plugins/image-manipulation/types.js +7 -0
  40. package/dist/state/i18n.svelte.d.ts +4 -0
  41. package/dist/state/i18n.svelte.js +18 -0
  42. package/dist/state/manifests.svelte.js +210 -0
  43. package/dist/state/manifests.test.d.ts +1 -0
  44. package/dist/state/manifests.test.js +242 -0
  45. package/dist/{src/lib/state → state}/viewer.svelte.d.ts +4 -4
  46. package/dist/state/viewer.svelte.js +693 -0
  47. package/dist/theme/colorUtils.js +196 -0
  48. package/dist/theme/colorUtils.test.d.ts +1 -0
  49. package/dist/theme/colorUtils.test.js +90 -0
  50. package/dist/theme/index.js +52 -0
  51. package/dist/{src/lib/theme → theme}/themeManager.d.ts +4 -1
  52. package/dist/theme/themeManager.js +177 -0
  53. package/dist/theme/types.js +40 -0
  54. package/dist/triiiceratops-bundle.js +4676 -0
  55. package/dist/types/config.js +1 -0
  56. package/dist/{src/lib/types → types}/plugin.d.ts +3 -3
  57. package/dist/types/plugin.js +36 -0
  58. package/dist/utils/annotationAdapter.js +354 -0
  59. package/dist/utils/annotationAdapter.test.d.ts +1 -0
  60. package/dist/utils/annotationAdapter.test.js +91 -0
  61. package/package.json +6 -5
  62. package/dist/plugin-CHYleMsW.js +0 -538
  63. package/dist/plugins/image-manipulation.js +0 -411
  64. package/dist/src/lib/components/AnnotationOverlay.svelte.d.ts +0 -1
  65. package/dist/src/lib/components/CanvasNavigation.svelte.d.ts +0 -1
  66. package/dist/src/lib/components/FloatingMenu.svelte.d.ts +0 -1
  67. package/dist/src/lib/components/LeftFab.svelte.d.ts +0 -1
  68. package/dist/src/lib/components/MetadataDialog.svelte.d.ts +0 -1
  69. package/dist/src/lib/components/OSDViewer.svelte.d.ts +0 -1
  70. package/dist/src/lib/components/SearchPanel.svelte.d.ts +0 -1
  71. package/dist/src/lib/components/ThumbnailGallery.svelte.d.ts +0 -1
  72. package/dist/src/lib/components/TriiiceratopsViewer.svelte.d.ts +0 -1
  73. package/dist/src/lib/custom-element-image.d.ts +0 -0
  74. package/dist/src/lib/custom-element.d.ts +0 -0
  75. package/dist/src/lib/paraglide/messages/de.d.ts +0 -96
  76. package/dist/src/lib/paraglide/messages/en.d.ts +0 -96
  77. package/dist/src/lib/paraglide/messages.d.ts +0 -272
  78. package/dist/src/lib/paraglide/runtime.d.ts +0 -52
  79. package/dist/src/lib/plugins/image-manipulation/ImageManipulationPanel.svelte.d.ts +0 -1
  80. package/dist/src/lib/state/i18n.svelte.d.ts +0 -5
  81. package/dist/triiiceratops.css +0 -1
  82. /package/dist/{src/lib/index.d.ts → index.d.ts} +0 -0
  83. /package/dist/{src/lib/plugins → plugins}/image-manipulation/index.d.ts +0 -0
  84. /package/dist/{src/lib/plugins → plugins}/image-manipulation/types.d.ts +0 -0
  85. /package/dist/{src/lib/state → state}/manifests.svelte.d.ts +0 -0
  86. /package/dist/{src/lib/theme → theme}/colorUtils.d.ts +0 -0
  87. /package/dist/{src/lib/theme → theme}/index.d.ts +0 -0
  88. /package/dist/{src/lib/theme → theme}/types.d.ts +0 -0
  89. /package/dist/{src/lib/types → types}/config.d.ts +0 -0
  90. /package/dist/{src/lib/utils → utils}/annotationAdapter.d.ts +0 -0
package/dist/index.js CHANGED
@@ -1,4153 +1,9 @@
1
- var it = Object.defineProperty;
2
- var qe = (s) => {
3
- throw TypeError(s);
4
- };
5
- var nt = (s, t, a) => t in s ? it(s, t, { enumerable: !0, configurable: !0, writable: !0, value: a }) : s[t] = a;
6
- var Ge = (s, t, a) => nt(s, typeof t != "symbol" ? t + "" : t, a), st = (s, t, a) => t.has(s) || qe("Cannot " + a);
7
- var F = (s, t, a) => (st(s, t, "read from private field"), a ? a.call(s) : t.get(s)), ee = (s, t, a) => t.has(s) ? qe("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(s) : t.set(s, a);
8
- import "svelte/internal/disclose-version";
9
- import * as e from "svelte/internal/client";
10
- import { onMount as ot, getContext as de, untrack as lt, setContext as dt, onDestroy as ct } from "svelte";
11
- import * as vt from "manifesto.js";
12
- import { g as se, m as X, X as Ue, l as ft } from "./plugin-CHYleMsW.js";
13
- import { B as oi } from "./plugin-CHYleMsW.js";
14
- var he;
15
- class ht {
16
- constructor() {
17
- ee(this, he, e.state(e.proxy({})));
18
- }
19
- get manifests() {
20
- return e.get(F(this, he));
21
- }
22
- set manifests(t) {
23
- e.set(F(this, he), t, !0);
24
- }
25
- async fetchManifest(t) {
26
- if (!this.manifests[t]) {
27
- this.manifests[t] = { isFetching: !0 };
28
- try {
29
- const a = await fetch(t);
30
- if (!a.ok)
31
- throw new Error(`HTTP error! status: ${a.status}`);
32
- const l = await a.json(), i = vt.parseManifest(l);
33
- this.manifests[t] = { json: l, manifesto: i, isFetching: !1 };
34
- } catch (a) {
35
- this.manifests[t] = { error: a.message, isFetching: !1 };
36
- }
37
- }
38
- }
39
- getManifest(t) {
40
- const a = this.manifests[t];
41
- return a == null ? void 0 : a.manifesto;
42
- }
43
- async fetchAnnotationList(t) {
44
- if (!this.manifests[t])
45
- try {
46
- const a = await fetch(t);
47
- if (a.ok) {
48
- const l = await a.json();
49
- this.manifests[t] = { json: l };
50
- } else
51
- console.error(`Failed to fetch annotation list: ${t}`);
52
- } catch (a) {
53
- console.error(`Error fetching annotation list: ${t}`, a);
54
- }
55
- }
56
- getCanvases(t) {
57
- const a = this.getManifest(t);
58
- if (!a)
59
- return [];
60
- const l = a.getSequences();
61
- return !l || !l.length ? [] : l[0].getCanvases();
62
- }
63
- getAnnotations(t, a) {
64
- const l = this.getManifest(t);
65
- return l ? l.getSequences()[0].getCanvasById(a) ? this.manualGetAnnotations(t, a) : [] : [];
66
- }
67
- // We can refactor this to use Manifesto's resource handling later if needed.
68
- manualGetAnnotations(t, a) {
69
- const l = this.getManifest(t);
70
- if (!l) return [];
71
- const i = l.getSequences()[0].getCanvasById(a);
72
- if (!i) return [];
73
- const b = i.__jsonld;
74
- let H = [];
75
- const p = (M) => M.resources || M.items || [];
76
- return b.otherContent && b.otherContent.forEach((M) => {
77
- const w = M["@id"] || M.id;
78
- if (w && !M.resources) {
79
- const k = this.manifests[w];
80
- if (k) {
81
- if (k.json) {
82
- const D = p(k.json);
83
- H.push(...D);
84
- }
85
- } else
86
- this.fetchAnnotationList(w);
87
- } else M.resources && H.push(...M.resources);
88
- }), b.annotations && b.annotations.forEach((M) => {
89
- const w = M.id || M["@id"];
90
- if (w && !M.items) {
91
- const k = this.manifests[w];
92
- if (k) {
93
- if (k.json) {
94
- const D = p(k.json);
95
- H.push(...D);
96
- }
97
- } else
98
- this.fetchAnnotationList(w);
99
- } else M.items && H.push(...M.items);
100
- }), H;
101
- }
102
- }
103
- he = new WeakMap();
104
- const oe = new ht();
105
- var ge, pe, ue, me, _e, be, we, ye, Ae, xe, Me, Ze, He, Ve, Se, Ce, Ie, ze, Le, ke, Pe, Te, Be, je, De, Re;
106
- class gt {
107
- constructor(t = null, a = null, l = []) {
108
- ee(this, ge, e.state(null));
109
- ee(this, pe, e.state(null));
110
- ee(this, ue, e.state(!1));
111
- ee(this, me, e.state(!1));
112
- ee(this, _e, e.state(!1));
113
- ee(this, be, e.state(!1));
114
- ee(this, we, e.state(!1));
115
- ee(this, ye, e.state(!1));
116
- ee(this, Ae, e.state("bottom"));
117
- ee(this, xe, e.state(e.proxy(/* @__PURE__ */ new Set())));
118
- ee(this, Me, e.state(e.proxy({})));
119
- ee(
120
- this,
121
- Ze,
122
- // Gallery State (Lifted for persistence during re-docking)
123
- e.state(e.proxy({ x: 20, y: 100 }))
124
- );
125
- ee(this, He, e.state(e.proxy({ width: 300, height: 400 })));
126
- ee(this, Ve, e.state(!1));
127
- ee(this, Se, e.state(e.proxy({ x: 0, y: 0 })));
128
- ee(this, Ce, e.state(null));
129
- ee(this, Ie, e.state(null));
130
- Ge(this, "eventTarget", null);
131
- ee(this, ze, e.state(""));
132
- ee(this, Le, e.state(e.proxy([])));
133
- ee(this, ke, e.state(!1));
134
- ee(this, Pe, e.state(!1));
135
- ee(this, Te, e.state(e.proxy([])));
136
- ee(
137
- this,
138
- Be,
139
- // ==================== PLUGIN STATE ====================
140
- /** Registered plugins */
141
- e.state(e.proxy([]))
142
- );
143
- ee(this, je, e.state(e.proxy([])));
144
- ee(this, De, e.state(e.proxy([])));
145
- ee(this, Re, e.state(null));
146
- Ge(this, "pluginEventHandlers", /* @__PURE__ */ new Map());
147
- this.manifestId = t || null, this.canvasId = a || null, this.manifestId && oe.fetchManifest(this.manifestId);
148
- for (const i of l)
149
- this.registerPlugin(i);
150
- }
151
- get manifestId() {
152
- return e.get(F(this, ge));
153
- }
154
- set manifestId(t) {
155
- e.set(F(this, ge), t, !0);
156
- }
157
- get canvasId() {
158
- return e.get(F(this, pe));
159
- }
160
- set canvasId(t) {
161
- e.set(F(this, pe), t, !0);
162
- }
163
- get showAnnotations() {
164
- return e.get(F(this, ue));
165
- }
166
- set showAnnotations(t) {
167
- e.set(F(this, ue), t, !0);
168
- }
169
- get showThumbnailGallery() {
170
- return e.get(F(this, me));
171
- }
172
- set showThumbnailGallery(t) {
173
- e.set(F(this, me), t, !0);
174
- }
175
- get isGalleryDockedBottom() {
176
- return e.get(F(this, _e));
177
- }
178
- set isGalleryDockedBottom(t) {
179
- e.set(F(this, _e), t, !0);
180
- }
181
- get isGalleryDockedRight() {
182
- return e.get(F(this, be));
183
- }
184
- set isGalleryDockedRight(t) {
185
- e.set(F(this, be), t, !0);
186
- }
187
- get isFullScreen() {
188
- return e.get(F(this, we));
189
- }
190
- set isFullScreen(t) {
191
- e.set(F(this, we), t, !0);
192
- }
193
- get showMetadataDialog() {
194
- return e.get(F(this, ye));
195
- }
196
- set showMetadataDialog(t) {
197
- e.set(F(this, ye), t, !0);
198
- }
199
- get dockSide() {
200
- return e.get(F(this, Ae));
201
- }
202
- set dockSide(t) {
203
- e.set(F(this, Ae), t, !0);
204
- }
205
- get visibleAnnotationIds() {
206
- return e.get(F(this, xe));
207
- }
208
- set visibleAnnotationIds(t) {
209
- e.set(F(this, xe), t, !0);
210
- }
211
- get config() {
212
- return e.get(F(this, Me));
213
- }
214
- set config(t) {
215
- e.set(F(this, Me), t, !0);
216
- }
217
- get showRightMenu() {
218
- return this.config.showRightMenu ?? !0;
219
- }
220
- get showLeftMenu() {
221
- return this.config.showLeftMenu ?? !0;
222
- }
223
- get showCanvasNav() {
224
- return this.config.showCanvasNav ?? !0;
225
- }
226
- get galleryPosition() {
227
- return e.get(F(this, Ze));
228
- }
229
- set galleryPosition(t) {
230
- e.set(F(this, Ze), t, !0);
231
- }
232
- get gallerySize() {
233
- return e.get(F(this, He));
234
- }
235
- set gallerySize(t) {
236
- e.set(F(this, He), t, !0);
237
- }
238
- get isGalleryDragging() {
239
- return e.get(F(this, Ve));
240
- }
241
- set isGalleryDragging(t) {
242
- e.set(F(this, Ve), t, !0);
243
- }
244
- get galleryDragOffset() {
245
- return e.get(F(this, Se));
246
- }
247
- set galleryDragOffset(t) {
248
- e.set(F(this, Se), t, !0);
249
- }
250
- get dragOverSide() {
251
- return e.get(F(this, Ce));
252
- }
253
- set dragOverSide(t) {
254
- e.set(F(this, Ce), t, !0);
255
- }
256
- get galleryCenterPanelRect() {
257
- return e.get(F(this, Ie));
258
- }
259
- set galleryCenterPanelRect(t) {
260
- e.set(F(this, Ie), t, !0);
261
- }
262
- setEventTarget(t) {
263
- this.eventTarget = t;
264
- }
265
- /**
266
- * Get current state as a plain object snapshot.
267
- * Safe to use outside Svelte's reactive system.
268
- * NOTE: We calculate currentCanvasIndex inline to avoid triggering the canvases getter
269
- * which can cause infinite loops when it auto-sets canvasId.
270
- */
271
- getSnapshot() {
272
- let t = -1;
273
- return this.manifestId && this.canvasId && (t = oe.getCanvases(this.manifestId).findIndex((l) => l.id === this.canvasId)), {
274
- manifestId: this.manifestId,
275
- canvasId: this.canvasId,
276
- currentCanvasIndex: t,
277
- showAnnotations: this.showAnnotations,
278
- showThumbnailGallery: this.showThumbnailGallery,
279
- showSearchPanel: this.showSearchPanel,
280
- searchQuery: this.searchQuery,
281
- isFullScreen: this.isFullScreen,
282
- dockSide: this.dockSide
283
- };
284
- }
285
- /**
286
- * Dispatch a state change event to the web component.
287
- * No-op if eventTarget is null (Svelte component usage).
288
- *
289
- * Uses queueMicrotask to dispatch asynchronously AFTER the current
290
- * reactive cycle completes, preventing infinite update loops.
291
- */
292
- dispatchStateChange(t = "statechange") {
293
- console.log(`[ViewerState] Dispatching ${t}`, JSON.stringify(this.getSnapshot())), this.eventTarget && queueMicrotask(() => {
294
- var a;
295
- (a = this.eventTarget) == null || a.dispatchEvent(new CustomEvent(t, { detail: this.getSnapshot(), bubbles: !0, composed: !0 }));
296
- });
297
- }
298
- get manifest() {
299
- return this.manifestId ? oe.getManifest(this.manifestId) : null;
300
- }
301
- get canvases() {
302
- if (!this.manifestId) return [];
303
- const t = oe.getCanvases(this.manifestId);
304
- return t.length > 0 && !this.canvasId && setTimeout(
305
- () => {
306
- !this.canvasId && t.length > 0 && (this.canvasId = t[0].id);
307
- },
308
- 0
309
- ), t;
310
- }
311
- get currentCanvasIndex() {
312
- return this.canvasId ? this.canvases.findIndex((t) => t.id === this.canvasId) : this.canvases.length > 0 ? 0 : -1;
313
- }
314
- get hasNext() {
315
- return this.currentCanvasIndex < this.canvases.length - 1;
316
- }
317
- get hasPrevious() {
318
- return this.currentCanvasIndex > 0;
319
- }
320
- nextCanvas() {
321
- if (this.hasNext) {
322
- const t = this.currentCanvasIndex + 1, a = this.canvases[t];
323
- this.setCanvas(a.id);
324
- }
325
- }
326
- previousCanvas() {
327
- if (this.hasPrevious) {
328
- const t = this.currentCanvasIndex - 1, a = this.canvases[t];
329
- this.setCanvas(a.id);
330
- }
331
- }
332
- setManifest(t) {
333
- this.manifestId = t, this.canvasId = null, oe.fetchManifest(t), this.dispatchStateChange("manifestchange");
334
- }
335
- setCanvas(t) {
336
- this.canvasId = t, this.dispatchStateChange("canvaschange");
337
- }
338
- updateConfig(t) {
339
- var l;
340
- const a = this.config;
341
- if (this.config = t, t.gallery && (t.gallery.open !== void 0 && (this.showThumbnailGallery = t.gallery.open), t.gallery.dockPosition !== void 0 && (this.dockSide = t.gallery.dockPosition)), t.search) {
342
- t.search.open !== void 0 && (this.showSearchPanel = t.search.open);
343
- const i = t.search.query, b = (l = a.search) == null ? void 0 : l.query;
344
- i !== void 0 && i !== b && i !== this.searchQuery && this._performSearch(i);
345
- }
346
- t.annotations && t.annotations.open !== void 0 && (this.showAnnotations = t.annotations.open);
347
- }
348
- toggleAnnotations() {
349
- this.showAnnotations = !this.showAnnotations, this.dispatchStateChange();
350
- }
351
- toggleThumbnailGallery() {
352
- this.showThumbnailGallery = !this.showThumbnailGallery, this.dispatchStateChange();
353
- }
354
- toggleFullScreen() {
355
- if (document.fullscreenElement)
356
- document.exitFullscreen();
357
- else {
358
- const t = document.getElementById("triiiceratops-viewer");
359
- t && t.requestFullscreen().catch((a) => {
360
- console.warn("Fullscreen request failed", a);
361
- });
362
- }
363
- }
364
- toggleMetadataDialog() {
365
- this.showMetadataDialog = !this.showMetadataDialog;
366
- }
367
- get searchQuery() {
368
- return e.get(F(this, ze));
369
- }
370
- set searchQuery(t) {
371
- e.set(F(this, ze), t, !0);
372
- }
373
- get searchResults() {
374
- return e.get(F(this, Le));
375
- }
376
- set searchResults(t) {
377
- e.set(F(this, Le), t, !0);
378
- }
379
- get isSearching() {
380
- return e.get(F(this, ke));
381
- }
382
- set isSearching(t) {
383
- e.set(F(this, ke), t, !0);
384
- }
385
- get showSearchPanel() {
386
- return e.get(F(this, Pe));
387
- }
388
- set showSearchPanel(t) {
389
- e.set(F(this, Pe), t, !0);
390
- }
391
- toggleSearchPanel() {
392
- this.showSearchPanel = !this.showSearchPanel, this.showSearchPanel || (this.searchAnnotations = []), this.dispatchStateChange();
393
- }
394
- get searchAnnotations() {
395
- return e.get(F(this, Te));
396
- }
397
- set searchAnnotations(t) {
398
- e.set(F(this, Te), t, !0);
399
- }
400
- get currentCanvasSearchAnnotations() {
401
- return this.canvasId ? this.searchAnnotations.filter((t) => t.canvasId === this.canvasId) : [];
402
- }
403
- async search(t) {
404
- this.dispatchStateChange(), await this._performSearch(t), this.dispatchStateChange();
405
- }
406
- async _performSearch(t) {
407
- var a, l;
408
- if (t.trim()) {
409
- this.isSearching = !0, this.searchQuery = t, this.searchResults = [];
410
- try {
411
- const i = this.manifest;
412
- if (!i) throw new Error("No manifest loaded");
413
- let b = i.getService("http://iiif.io/api/search/1/search") || i.getService("http://iiif.io/api/search/0/search");
414
- if (b || i.__jsonld && i.__jsonld.service && (b = (Array.isArray(i.__jsonld.service) ? i.__jsonld.service : [i.__jsonld.service]).find((r) => r.profile === "http://iiif.io/api/search/1/search" || r.profile === "http://iiif.io/api/search/0/search")), !b) {
415
- console.warn("No IIIF search service found in manifest"), this.isSearching = !1;
416
- return;
417
- }
418
- const p = `${b.id || b["@id"]}?q=${encodeURIComponent(t)}`, M = await fetch(p);
419
- if (!M.ok) throw new Error("Search request failed");
420
- const w = await M.json(), k = w.resources || [], D = [], A = (_) => {
421
- const r = typeof _ == "string" ? _ : _["@id"] || _.id;
422
- if (!r) return null;
423
- const n = r.split("#xywh=");
424
- if (n.length < 2) return null;
425
- const h = n[1].split(",").map(Number);
426
- return h.length === 4 ? h : null;
427
- };
428
- if (w.hits)
429
- for (const _ of w.hits) {
430
- const r = _.annotations || [], n = /* @__PURE__ */ new Map();
431
- for (const h of r) {
432
- const x = k.find((V) => V["@id"] === h || V.id === h);
433
- if (x && x.on) {
434
- const V = typeof x.on == "string" ? x.on : x.on["@id"] || x.on.id, o = V.split("#")[0], d = A(V), B = this.canvases.findIndex((Z) => Z.id === o);
435
- if (B >= 0) {
436
- if (!n.has(B)) {
437
- const Z = this.canvases[B];
438
- let C = "Canvas " + (B + 1);
439
- try {
440
- if (Z.getLabel) {
441
- const f = Z.getLabel();
442
- Array.isArray(f) && f.length > 0 ? C = f[0].value : typeof f == "string" && (C = f);
443
- } else Z.label && (typeof Z.label == "string" ? C = Z.label : Array.isArray(Z.label) && (C = (a = Z.label[0]) == null ? void 0 : a.value));
444
- } catch {
445
- }
446
- n.set(B, { label: String(C), bounds: [] });
447
- }
448
- d && n.get(B).bounds.push(d);
449
- }
450
- }
451
- }
452
- for (const [h, x] of n)
453
- D.push({
454
- type: "hit",
455
- before: _.before,
456
- match: _.match,
457
- after: _.after,
458
- canvasIndex: h,
459
- canvasLabel: x.label,
460
- // Store all bounds for this hit on this canvas
461
- allBounds: x.bounds,
462
- // Keep first bounds for backwards compatibility
463
- bounds: x.bounds.length > 0 ? x.bounds[0] : null
464
- });
465
- }
466
- else if (k.length > 0)
467
- for (const _ of k) {
468
- const r = typeof _.on == "string" ? _.on : _.on["@id"] || _.on.id, n = r.split("#")[0], h = A(r), x = this.canvases.findIndex((V) => V.id === n);
469
- if (x >= 0) {
470
- const V = this.canvases[x];
471
- let o = "Canvas " + (x + 1);
472
- try {
473
- if (V.getLabel) {
474
- const d = V.getLabel();
475
- Array.isArray(d) && d.length > 0 ? o = d[0].value : typeof d == "string" && (o = d);
476
- } else V.label && (typeof V.label == "string" ? o = V.label : Array.isArray(V.label) && (o = (l = V.label[0]) == null ? void 0 : l.value));
477
- } catch {
478
- }
479
- D.push({
480
- type: "resource",
481
- match: _.resource && _.resource.chars ? _.resource.chars : _.chars || "",
482
- canvasIndex: x,
483
- canvasLabel: String(o),
484
- bounds: h
485
- });
486
- }
487
- }
488
- this.searchResults = D;
489
- let P = 0;
490
- this.searchAnnotations = D.flatMap((_) => {
491
- const r = this.canvases[_.canvasIndex];
492
- return (_.allBounds && _.allBounds.length > 0 ? _.allBounds : _.bounds ? [_.bounds] : []).map((h) => {
493
- const x = `${r.id}#xywh=${h.join(",")}`;
494
- return {
495
- "@id": `urn:search-hit:${P++}`,
496
- "@type": "oa:Annotation",
497
- motivation: "sc:painting",
498
- on: x,
499
- canvasId: r.id,
500
- resource: { "@type": "cnt:ContentAsText", chars: _.match },
501
- // Flag to identify styling in Overlay?
502
- // Or just standard rendering.
503
- isSearchHit: !0
504
- };
505
- });
506
- });
507
- } catch (i) {
508
- console.error("Search error:", i);
509
- } finally {
510
- this.isSearching = !1;
511
- }
512
- }
513
- }
514
- get plugins() {
515
- return e.get(F(this, Be));
516
- }
517
- set plugins(t) {
518
- e.set(F(this, Be), t, !0);
519
- }
520
- get pluginMenuButtons() {
521
- return e.get(F(this, je));
522
- }
523
- set pluginMenuButtons(t) {
524
- e.set(F(this, je), t, !0);
525
- }
526
- get pluginPanels() {
527
- return e.get(F(this, De));
528
- }
529
- set pluginPanels(t) {
530
- e.set(F(this, De), t, !0);
531
- }
532
- get osdViewer() {
533
- return e.get(F(this, Re));
534
- }
535
- set osdViewer(t) {
536
- e.set(F(this, Re), t, !0);
537
- }
538
- createPluginContext() {
539
- const t = this;
540
- return {
541
- viewerState: t,
542
- getOSDViewer: () => t.osdViewer,
543
- registerMenuButton(a) {
544
- t.pluginMenuButtons.find((l) => l.id === a.id) || (t.pluginMenuButtons = [...t.pluginMenuButtons, a]);
545
- },
546
- unregisterMenuButton(a) {
547
- t.pluginMenuButtons = t.pluginMenuButtons.filter((l) => l.id !== a);
548
- },
549
- registerPanel(a) {
550
- t.pluginPanels.find((l) => l.id === a.id) || (t.pluginPanels = [...t.pluginPanels, a]);
551
- },
552
- unregisterPanel(a) {
553
- t.pluginPanels = t.pluginPanels.filter((l) => l.id !== a);
554
- },
555
- emit(a, l) {
556
- const i = t.pluginEventHandlers.get(a);
557
- i == null || i.forEach((b) => b(l));
558
- },
559
- on(a, l) {
560
- return t.pluginEventHandlers.has(a) || t.pluginEventHandlers.set(a, /* @__PURE__ */ new Set()), t.pluginEventHandlers.get(a).add(l), () => {
561
- var i;
562
- (i = t.pluginEventHandlers.get(a)) == null || i.delete(l);
563
- };
564
- }
565
- };
566
- }
567
- /**
568
- * Register a plugin with this viewer instance.
569
- */
570
- registerPlugin(t) {
571
- if (this.plugins.find((a) => a.id === t.id)) {
572
- console.warn(`[Triiiceratops] Plugin "${t.id}" already registered`);
573
- return;
574
- }
575
- this.plugins = [...this.plugins, t], t.onRegister(this.createPluginContext()), this.osdViewer && t.onViewerReady && t.onViewerReady(this.osdViewer);
576
- }
577
- /**
578
- * Unregister a plugin by ID.
579
- */
580
- unregisterPlugin(t) {
581
- var l;
582
- const a = this.plugins.find((i) => i.id === t);
583
- a && ((l = a.onDestroy) == null || l.call(a), this.plugins = this.plugins.filter((i) => i.id !== t), this.pluginMenuButtons = this.pluginMenuButtons.filter((i) => !i.id.startsWith(`${t}:`)), this.pluginPanels = this.pluginPanels.filter((i) => !i.id.startsWith(`${t}:`)));
584
- }
585
- /**
586
- * Called by OSDViewer when OpenSeadragon is ready.
587
- */
588
- notifyOSDReady(t) {
589
- var a;
590
- this.osdViewer = t;
591
- for (const l of this.plugins)
592
- (a = l.onViewerReady) == null || a.call(l, t);
593
- }
594
- /**
595
- * Destroy all plugins (called on viewer unmount).
596
- */
597
- destroyAllPlugins() {
598
- var t;
599
- for (const a of this.plugins)
600
- (t = a.onDestroy) == null || t.call(a);
601
- this.plugins = [], this.pluginMenuButtons = [], this.pluginPanels = [], this.pluginEventHandlers.clear();
602
- }
603
- }
604
- ge = new WeakMap(), pe = new WeakMap(), ue = new WeakMap(), me = new WeakMap(), _e = new WeakMap(), be = new WeakMap(), we = new WeakMap(), ye = new WeakMap(), Ae = new WeakMap(), xe = new WeakMap(), Me = new WeakMap(), Ze = new WeakMap(), He = new WeakMap(), Ve = new WeakMap(), Se = new WeakMap(), Ce = new WeakMap(), Ie = new WeakMap(), ze = new WeakMap(), Le = new WeakMap(), ke = new WeakMap(), Pe = new WeakMap(), Te = new WeakMap(), Be = new WeakMap(), je = new WeakMap(), De = new WeakMap(), Re = new WeakMap();
605
- const le = "triiiceratops:viewerState", pt = [
606
- "light",
607
- "dark",
608
- "cupcake",
609
- "bumblebee",
610
- "emerald",
611
- "corporate",
612
- "synthwave",
613
- "retro",
614
- "cyberpunk",
615
- "valentine",
616
- "halloween",
617
- "garden",
618
- "forest",
619
- "aqua",
620
- "lofi",
621
- "pastel",
622
- "fantasy",
623
- "wireframe",
624
- "black",
625
- "luxury",
626
- "dracula",
627
- "cmyk",
628
- "autumn",
629
- "business",
630
- "acid",
631
- "lemonade",
632
- "night",
633
- "coffee",
634
- "winter",
635
- "dim",
636
- "nord",
637
- "sunset",
638
- "caramellatte",
639
- "abyss",
640
- "silk"
641
- ];
642
- function ut(s) {
643
- s = s.replace(/^#/, "");
644
- let t, a, l;
645
- if (s.length === 3)
646
- t = parseInt(s[0] + s[0], 16), a = parseInt(s[1] + s[1], 16), l = parseInt(s[2] + s[2], 16);
647
- else if (s.length === 6 || s.length === 8)
648
- t = parseInt(s.slice(0, 2), 16), a = parseInt(s.slice(2, 4), 16), l = parseInt(s.slice(4, 6), 16);
649
- else
650
- return null;
651
- return isNaN(t) || isNaN(a) || isNaN(l) ? null : { r: t, g: a, b: l };
652
- }
653
- function mt(s) {
654
- const t = s.match(
655
- /rgba?\(\s*(\d+(?:\.\d+)?%?)\s*[,\s]\s*(\d+(?:\.\d+)?%?)\s*[,\s]\s*(\d+(?:\.\d+)?%?)(?:\s*[,/]\s*(\d*\.?\d+%?))?\s*\)/i
656
- );
657
- if (!t) return null;
658
- const a = (H) => H.endsWith("%") ? parseFloat(H) / 100 * 255 : parseFloat(H), l = a(t[1]), i = a(t[2]), b = a(t[3]);
659
- return isNaN(l) || isNaN(i) || isNaN(b) ? null : { r: l, g: i, b };
660
- }
661
- function Ee(s) {
662
- const t = s / 255;
663
- return t <= 0.04045 ? t / 12.92 : Math.pow((t + 0.055) / 1.055, 2.4);
664
- }
665
- function _t(s, t, a) {
666
- return {
667
- x: 0.4124564 * s + 0.3575761 * t + 0.1804375 * a,
668
- y: 0.2126729 * s + 0.7151522 * t + 0.072175 * a,
669
- z: 0.0193339 * s + 0.119192 * t + 0.9503041 * a
670
- };
671
- }
672
- function bt(s, t, a) {
673
- const l = 0.8189330101 * s + 0.3618667424 * t - 0.1288597137 * a, i = 0.0329845436 * s + 0.9293118715 * t + 0.0361456387 * a, b = 0.0482003018 * s + 0.2643662691 * t + 0.633851707 * a, H = Math.cbrt(l), p = Math.cbrt(i), M = Math.cbrt(b);
674
- return {
675
- L: 0.2104542553 * H + 0.793617785 * p - 0.0040720468 * M,
676
- a: 1.9779984951 * H - 2.428592205 * p + 0.4505937099 * M,
677
- b: 0.0259040371 * H + 0.7827717662 * p - 0.808675766 * M
678
- };
679
- }
680
- function wt(s, t, a) {
681
- const l = Math.sqrt(t * t + a * a);
682
- let i = Math.atan2(a, t) * 180 / Math.PI;
683
- return i < 0 && (i += 360), { L: s, C: l, h: i };
684
- }
685
- function Ke(s, t, a) {
686
- const l = Ee(s), i = Ee(t), b = Ee(a), { x: H, y: p, z: M } = _t(l, i, b), { L: w, a: k, b: D } = bt(H, p, M);
687
- return wt(w, k, D);
688
- }
689
- function $e(s, t, a) {
690
- const l = (s * 100).toFixed(2), i = t.toFixed(4), b = t < 1e-4 ? 0 : a.toFixed(2);
691
- return `oklch(${l}% ${i} ${b})`;
692
- }
693
- function yt(s) {
694
- return s.trim().toLowerCase().startsWith("oklch(");
695
- }
696
- function At(s) {
697
- return /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(
698
- s.trim()
699
- );
700
- }
701
- function xt(s) {
702
- return /^rgba?\s*\(/i.test(s.trim());
703
- }
704
- function Mt(s) {
705
- const t = ut(s);
706
- if (!t)
707
- return console.warn(`Invalid hex color: ${s}, returning as-is`), s;
708
- const { L: a, C: l, h: i } = Ke(t.r, t.g, t.b);
709
- return $e(a, l, i);
710
- }
711
- function Zt(s) {
712
- const t = mt(s);
713
- if (!t)
714
- return console.warn(`Invalid rgb color: ${s}, returning as-is`), s;
715
- const { L: a, C: l, h: i } = Ke(t.r, t.g, t.b);
716
- return $e(a, l, i);
717
- }
718
- function Ht(s) {
719
- const t = s.trim();
720
- return yt(t) ? t : At(t) ? Mt(t) : xt(t) ? Zt(t) : (console.warn(`Unrecognized color format: ${s}, passing through as-is`), s);
721
- }
722
- const et = {
723
- // Semantic colors
724
- primary: "--color-primary",
725
- primaryContent: "--color-primary-content",
726
- secondary: "--color-secondary",
727
- secondaryContent: "--color-secondary-content",
728
- accent: "--color-accent",
729
- accentContent: "--color-accent-content",
730
- neutral: "--color-neutral",
731
- neutralContent: "--color-neutral-content",
732
- // Base colors
733
- base100: "--color-base-100",
734
- base200: "--color-base-200",
735
- base300: "--color-base-300",
736
- baseContent: "--color-base-content",
737
- // State colors
738
- info: "--color-info",
739
- infoContent: "--color-info-content",
740
- success: "--color-success",
741
- successContent: "--color-success-content",
742
- warning: "--color-warning",
743
- warningContent: "--color-warning-content",
744
- error: "--color-error",
745
- errorContent: "--color-error-content",
746
- // Border radius
747
- radiusBox: "--radius-box",
748
- radiusField: "--radius-field",
749
- radiusSelector: "--radius-selector",
750
- // Sizing
751
- sizeSelector: "--size-selector",
752
- sizeField: "--size-field",
753
- // Border
754
- border: "--border",
755
- // Effects
756
- depth: "--depth",
757
- noise: "--noise",
758
- // Color scheme (handled specially, not a CSS variable)
759
- colorScheme: "color-scheme"
760
- }, Vt = /* @__PURE__ */ new Set([
761
- "primary",
762
- "primaryContent",
763
- "secondary",
764
- "secondaryContent",
765
- "accent",
766
- "accentContent",
767
- "neutral",
768
- "neutralContent",
769
- "base100",
770
- "base200",
771
- "base300",
772
- "baseContent",
773
- "info",
774
- "infoContent",
775
- "success",
776
- "successContent",
777
- "warning",
778
- "warningContent",
779
- "error",
780
- "errorContent"
781
- ]);
782
- function ai(s) {
783
- return pt.includes(s);
784
- }
785
- function St(s, t) {
786
- s.setAttribute("data-theme", t);
787
- }
788
- function Ct(s, t) {
789
- for (const [a, l] of Object.entries(t)) {
790
- if (l == null) continue;
791
- const i = a;
792
- if (i === "colorScheme") {
793
- s.style.colorScheme = l;
794
- continue;
795
- }
796
- const b = et[i];
797
- if (!b) continue;
798
- let H = String(l);
799
- Vt.has(i) && (H = Ht(H)), s.style.setProperty(b, H);
800
- }
801
- }
802
- function It(s) {
803
- for (const [t, a] of Object.entries(et))
804
- t === "colorScheme" ? s.style.colorScheme = "" : s.style.removeProperty(a);
805
- }
806
- function ri(s) {
807
- try {
808
- const t = JSON.parse(s);
809
- return typeof t == "object" && t !== null ? t : null;
810
- } catch {
811
- return null;
812
- }
813
- }
814
- function zt(s, t, a) {
815
- t ? St(s, t) : s.removeAttribute("data-theme"), a ? Ct(s, a) : It(s);
816
- }
817
- function tt(s) {
818
- return s.id || s["@id"] || (typeof s.getId == "function" ? s.getId() : "");
819
- }
820
- function Fe(s) {
821
- if (!s) return null;
822
- const t = s.match(/xywh=(\d+),(\d+),(\d+),(\d+)/);
823
- return t ? {
824
- x: parseInt(t[1], 10),
825
- y: parseInt(t[2], 10),
826
- w: parseInt(t[3], 10),
827
- h: parseInt(t[4], 10)
828
- } : null;
829
- }
830
- function Lt(s) {
831
- const t = kt(s);
832
- if (t)
833
- return Pt(t);
834
- const a = Dt(s);
835
- return a ? {
836
- type: "RECTANGLE",
837
- x: a.x,
838
- y: a.y,
839
- w: a.w,
840
- h: a.h
841
- } : null;
842
- }
843
- function kt(s) {
844
- var a, l;
845
- if (typeof s.getTarget == "function") {
846
- const i = ((a = s.__jsonld) == null ? void 0 : a.on) || ((l = s.__jsonld) == null ? void 0 : l.target);
847
- if (i)
848
- return Xe(i);
849
- }
850
- const t = s.target || s.on;
851
- return t ? Xe(t) : null;
852
- }
853
- function Xe(s) {
854
- if (!s) return null;
855
- if (Array.isArray(s))
856
- for (const t of s) {
857
- const a = Qe(t);
858
- if (a) return a;
859
- }
860
- else
861
- return Qe(s);
862
- return null;
863
- }
864
- function Qe(s) {
865
- var a;
866
- if (!s) return null;
867
- const t = s.selector || s;
868
- return (t == null ? void 0 : t.type) === "SvgSelector" && t.value ? t.value : ((a = t == null ? void 0 : t.item) == null ? void 0 : a.type) === "SvgSelector" && t.item.value ? t.item.value : null;
869
- }
870
- function Pt(s) {
871
- try {
872
- const a = new DOMParser().parseFromString(s, "image/svg+xml");
873
- if (a.documentElement.nodeName === "parsererror")
874
- return console.warn("Failed to parse SVG selector:", s), null;
875
- const l = [], i = a.querySelectorAll("polygon");
876
- for (const p of i) {
877
- const M = p.getAttribute("points");
878
- if (M) {
879
- const w = Tt(M);
880
- l.push(...w);
881
- }
882
- }
883
- const b = a.querySelectorAll("path");
884
- for (const p of b) {
885
- const M = p.getAttribute("d");
886
- if (M) {
887
- const w = Bt(M);
888
- l.push(...w);
889
- }
890
- }
891
- const H = a.querySelectorAll("circle");
892
- for (const p of H) {
893
- const M = parseFloat(p.getAttribute("cx") || "0"), w = parseFloat(p.getAttribute("cy") || "0"), k = parseFloat(p.getAttribute("r") || "0"), D = jt(M, w, k);
894
- l.push(...D);
895
- }
896
- return l.length === 0 ? null : {
897
- type: "POLYGON",
898
- points: l
899
- };
900
- } catch (t) {
901
- return console.warn("Failed to convert SVG to polygon:", t), null;
902
- }
903
- }
904
- function Tt(s) {
905
- const t = [], a = s.trim().split(/\s+/);
906
- for (const l of a) {
907
- const [i, b] = l.split(",").map((H) => parseFloat(H));
908
- !isNaN(i) && !isNaN(b) && t.push([i, b]);
909
- }
910
- return t;
911
- }
912
- function Bt(s) {
913
- const t = [], a = /[ML]\s*([\d.]+)[,\s]+([\d.]+)/g;
914
- let l;
915
- for (; (l = a.exec(s)) !== null; ) {
916
- const i = parseFloat(l[1]), b = parseFloat(l[2]);
917
- !isNaN(i) && !isNaN(b) && t.push([i, b]);
918
- }
919
- return t;
920
- }
921
- function jt(s, t, a, l = 8) {
922
- const i = [];
923
- for (let b = 0; b < l; b++) {
924
- const H = b / l * Math.PI * 2, p = s + a * Math.cos(H), M = t + a * Math.sin(H);
925
- i.push([p, M]);
926
- }
927
- return i;
928
- }
929
- function Dt(s) {
930
- var a;
931
- if (typeof s.getTarget == "function") {
932
- const l = s.getTarget();
933
- if (typeof l == "string" && l.includes("xywh="))
934
- return Fe(l);
935
- const i = (a = s.__jsonld) == null ? void 0 : a.on;
936
- if (i) {
937
- const b = Ne(i);
938
- if (b) return b;
939
- }
940
- }
941
- const t = s.target || s.on;
942
- return t ? Ne(t) : null;
943
- }
944
- function Ne(s) {
945
- if (!s) return null;
946
- if (Array.isArray(s))
947
- for (const t of s) {
948
- const a = Ne(t);
949
- if (a) return a;
950
- }
951
- if (typeof s == "string" && s.includes("xywh="))
952
- return Fe(s);
953
- if (s.selector) {
954
- const t = s.selector, a = t.item || t;
955
- if (a.value && typeof a.value == "string" && a.value.includes("xywh="))
956
- return Fe(a.value);
957
- }
958
- return null;
959
- }
960
- function Rt(s) {
961
- let t = "", a = !1;
962
- if (typeof s.getBody == "function") {
963
- const l = s.getBody();
964
- if (l && Array.isArray(l)) {
965
- const i = [];
966
- for (const b of l) {
967
- const H = b.getValue ? b.getValue() : "";
968
- if (H) {
969
- i.push(H);
970
- const p = b.getFormat ? b.getFormat() : "";
971
- (p === "text/html" || p === "application/html") && (a = !0);
972
- }
973
- }
974
- t = i.join(" ");
975
- }
976
- } else {
977
- const l = (b) => b && (b.chars || b.value || b["cnt:chars"]) || "", i = (b) => b ? b.format === "text/html" || b.type === "TextualBody" : !1;
978
- if (s.resource) {
979
- const b = Array.isArray(s.resource) ? s.resource : [s.resource];
980
- t = b.map(l).filter(Boolean).join(" "), a = b.some(i);
981
- } else if (s.body) {
982
- const b = Array.isArray(s.body) ? s.body : [s.body];
983
- t = b.map(l).filter(Boolean).join(" "), a = b.some(i);
984
- }
985
- }
986
- return t || (typeof s.getLabel == "function" ? t = s.getLabel() || "" : s.label && (t = Array.isArray(s.label) ? s.label.join(" ") : s.label)), { value: t || "Annotation", isHtml: a };
987
- }
988
- function Ot(s, t, a = !1) {
989
- const l = tt(s) || `anno-${t}`, i = Lt(s);
990
- if (!i)
991
- return null;
992
- const b = Rt(s);
993
- return {
994
- id: l,
995
- geometry: i,
996
- body: b,
997
- isSearchHit: a
998
- };
999
- }
1000
- function Gt(s, t = /* @__PURE__ */ new Set()) {
1001
- return s.map((a, l) => {
1002
- const i = t.has(tt(a));
1003
- return Ot(a, l, i);
1004
- }).filter((a) => a !== null);
1005
- }
1006
- var Et = e.from_html("<div></div>"), Ft = e.from_svg('<svg class="absolute pointer-events-auto"><title> </title><polygon stroke-width="2"></polygon></svg>'), Nt = e.from_html('<div class="w-full h-full relative"><div class="w-full h-full osd-background bg-base-100"></div> <!></div>');
1007
- function Ut(s, t) {
1008
- e.push(t, !0);
1009
- let a = e.prop(t, "viewerState", 7), l = e.state(void 0), i = e.state(void 0), b = e.state(void 0), H = e.state(0), p = e.derived(() => {
1010
- if (!a().manifestId || !a().canvasId)
1011
- return [];
1012
- const _ = oe.getAnnotations(a().manifestId, a().canvasId), r = a().currentCanvasSearchAnnotations;
1013
- return [..._, ...r];
1014
- }), M = e.derived(() => {
1015
- const _ = /* @__PURE__ */ new Set();
1016
- return a().currentCanvasSearchAnnotations.forEach((r) => {
1017
- const n = r.id || r["@id"];
1018
- n && _.add(n);
1019
- }), _;
1020
- }), w = e.derived(() => Gt(e.get(p), e.get(M))), k = e.derived(() => {
1021
- if (e.get(H), !e.get(i) || !e.get(b) || !e.get(w).length)
1022
- return [];
1023
- const _ = e.get(i).world.getItemAt(0);
1024
- if (!_)
1025
- return [];
1026
- const r = [];
1027
- for (const n of e.get(w)) {
1028
- if (!n.isSearchHit) if (a().showAnnotations) {
1029
- if (!a().visibleAnnotationIds.has(n.id))
1030
- continue;
1031
- } else continue;
1032
- if (n.geometry.type === "RECTANGLE") {
1033
- const h = _.imageToViewportRectangle(n.geometry.x, n.geometry.y, n.geometry.w, n.geometry.h), x = e.get(i).viewport.viewportToViewerElementRectangle(h);
1034
- r.push({
1035
- id: n.id,
1036
- type: "RECTANGLE",
1037
- rect: {
1038
- x: x.x,
1039
- y: x.y,
1040
- width: x.width,
1041
- height: x.height
1042
- },
1043
- isSearchHit: n.isSearchHit,
1044
- tooltip: n.body.value
1045
- });
1046
- } else if (n.geometry.type === "POLYGON") {
1047
- const h = n.geometry.points.map((Z) => {
1048
- const C = _.imageToViewportCoordinates(new (e.get(b)).Point(Z[0], Z[1])), f = e.get(i).viewport.viewportToViewerElementCoordinates(C);
1049
- return [f.x, f.y];
1050
- });
1051
- let x = 1 / 0, V = 1 / 0, o = -1 / 0, d = -1 / 0;
1052
- for (const [Z, C] of h)
1053
- x = Math.min(x, Z), V = Math.min(V, C), o = Math.max(o, Z), d = Math.max(d, C);
1054
- const B = h.map(([Z, C]) => [Z - x, C - V]);
1055
- r.push({
1056
- id: n.id,
1057
- type: "POLYGON",
1058
- bounds: { x, y: V, width: o - x, height: d - V },
1059
- points: B,
1060
- isSearchHit: n.isSearchHit,
1061
- tooltip: n.body.value
1062
- });
1063
- }
1064
- }
1065
- return r;
1066
- });
1067
- ot(() => {
1068
- if (e.get(l))
1069
- return (async () => {
1070
- const _ = await import("openseadragon");
1071
- e.set(b, _.default || _, !0), e.set(
1072
- i,
1073
- e.get(b)({
1074
- element: e.get(l),
1075
- tileSources: null,
1076
- // Will be set via effect
1077
- prefixUrl: "",
1078
- // No navigation UI images needed
1079
- showNavigationControl: !1,
1080
- showHomeControl: !1,
1081
- showFullPageControl: !1,
1082
- showSequenceControl: !1,
1083
- showZoomControl: !1,
1084
- showRotationControl: !1,
1085
- animationTime: 0.5,
1086
- springStiffness: 7,
1087
- zoomPerClick: 2
1088
- }),
1089
- !0
1090
- ), a().notifyOSDReady(e.get(i));
1091
- })(), () => {
1092
- var _;
1093
- (_ = e.get(i)) == null || _.destroy(), a().osdViewer = null;
1094
- };
1095
- }), e.user_effect(() => {
1096
- if (!e.get(i)) return;
1097
- const _ = () => {
1098
- e.update(H);
1099
- };
1100
- return e.get(i).addHandler("open", _), e.get(i).addHandler("animation", _), e.get(i).addHandler("resize", _), e.get(i).addHandler("rotate", _), e.get(i).world.addHandler("add-item", _), e.get(i).world.addHandler("remove-item", _), () => {
1101
- e.get(i).removeHandler("open", _), e.get(i).removeHandler("animation", _), e.get(i).removeHandler("resize", _), e.get(i).removeHandler("rotate", _), e.get(i).world.removeHandler("add-item", _), e.get(i).world.removeHandler("remove-item", _);
1102
- };
1103
- }), e.user_effect(() => {
1104
- !e.get(i) || !t.tileSources || e.get(i).open(t.tileSources);
1105
- });
1106
- var D = Nt(), A = e.child(D);
1107
- e.bind_this(A, (_) => e.set(l, _), () => e.get(l));
1108
- var P = e.sibling(A, 2);
1109
- e.each(P, 17, () => e.get(k), (_) => _.id, (_, r) => {
1110
- var n = e.comment(), h = e.first_child(n);
1111
- {
1112
- var x = (o) => {
1113
- var d = Et();
1114
- e.template_effect(() => {
1115
- e.set_class(d, 1, `absolute border-2 transition-colors cursor-pointer pointer-events-auto ${e.get(r).isSearchHit ? "border-yellow-400 bg-yellow-400/40 hover:bg-yellow-400/60" : "border-red-500 bg-red-500/20 hover:bg-red-500/40"}`), e.set_style(d, `
1116
- left: ${e.get(r).rect.x ?? ""}px;
1117
- top: ${e.get(r).rect.y ?? ""}px;
1118
- width: ${e.get(r).rect.width ?? ""}px;
1119
- height: ${e.get(r).rect.height ?? ""}px;
1120
- `), e.set_attribute(d, "title", e.get(r).tooltip);
1121
- }), e.append(o, d);
1122
- }, V = (o) => {
1123
- var d = e.comment(), B = e.first_child(d);
1124
- {
1125
- var Z = (C) => {
1126
- var f = Ft(), u = e.child(f), j = e.child(u, !0);
1127
- e.reset(u);
1128
- var R = e.sibling(u);
1129
- e.reset(f), e.template_effect(
1130
- (T) => {
1131
- e.set_style(f, `
1132
- left: ${e.get(r).bounds.x ?? ""}px;
1133
- top: ${e.get(r).bounds.y ?? ""}px;
1134
- width: ${e.get(r).bounds.width ?? ""}px;
1135
- height: ${e.get(r).bounds.height ?? ""}px;
1136
- `), e.set_text(j, e.get(r).tooltip), e.set_attribute(R, "points", T), e.set_class(R, 0, `cursor-pointer transition-colors ${e.get(r).isSearchHit ? "fill-yellow-400/40 stroke-yellow-400 hover:fill-yellow-400/60" : "fill-red-500/20 stroke-red-500 hover:fill-red-500/40"}`);
1137
- },
1138
- [() => e.get(r).points.map((T) => T.join(",")).join(" ")]
1139
- ), e.append(C, f);
1140
- };
1141
- e.if(
1142
- B,
1143
- (C) => {
1144
- e.get(r).type === "POLYGON" && C(Z);
1145
- },
1146
- !0
1147
- );
1148
- }
1149
- e.append(o, d);
1150
- };
1151
- e.if(h, (o) => {
1152
- e.get(r).type === "RECTANGLE" ? o(x) : o(V, !1);
1153
- });
1154
- }
1155
- e.append(_, n);
1156
- }), e.reset(D), e.append(s, D), e.pop();
1157
- }
1158
- var Yt = e.from_svg('<path d="M168.49,199.51a12,12,0,0,1-17,17l-80-80a12,12,0,0,1,0-17l80-80a12,12,0,0,1,17,17L97,128Z"></path>'), qt = e.from_svg('<path d="M160,48V208L80,128Z" opacity="0.2"></path><path d="M163.06,40.61a8,8,0,0,0-8.72,1.73l-80,80a8,8,0,0,0,0,11.32l80,80A8,8,0,0,0,168,208V48A8,8,0,0,0,163.06,40.61ZM152,188.69,91.31,128,152,67.31Z"></path>', 1), Xt = e.from_svg('<path d="M168,48V208a8,8,0,0,1-13.66,5.66l-80-80a8,8,0,0,1,0-11.32l80-80A8,8,0,0,1,168,48Z"></path>'), Qt = e.from_svg('<path d="M164.24,203.76a6,6,0,1,1-8.48,8.48l-80-80a6,6,0,0,1,0-8.48l80-80a6,6,0,0,1,8.48,8.48L88.49,128Z"></path>'), Wt = e.from_svg('<path d="M165.66,202.34a8,8,0,0,1-11.32,11.32l-80-80a8,8,0,0,1,0-11.32l80-80a8,8,0,0,1,11.32,11.32L91.31,128Z"></path>'), Jt = e.from_svg('<path d="M162.83,205.17a4,4,0,0,1-5.66,5.66l-80-80a4,4,0,0,1,0-5.66l80-80a4,4,0,1,1,5.66,5.66L85.66,128Z"></path>'), Kt = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
1159
- function $t(s, t) {
1160
- e.push(t, !0);
1161
- const a = se();
1162
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
1163
- function M(r) {
1164
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
1165
- return o;
1166
- }
1167
- var w = Kt();
1168
- e.attribute_effect(
1169
- w,
1170
- (r, n) => ({
1171
- xmlns: "http://www.w3.org/2000/svg",
1172
- role: "img",
1173
- width: e.get(H),
1174
- height: e.get(H),
1175
- fill: e.get(b),
1176
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
1177
- viewBox: "0 0 256 256",
1178
- ...r,
1179
- ...n
1180
- }),
1181
- [() => M(a), () => M(l)]
1182
- );
1183
- var k = e.child(w);
1184
- {
1185
- var D = (r) => {
1186
- var n = e.comment(), h = e.first_child(n);
1187
- e.snippet(h, () => t.children), e.append(r, n);
1188
- };
1189
- e.if(k, (r) => {
1190
- t.children && r(D);
1191
- });
1192
- }
1193
- var A = e.sibling(k, 2);
1194
- {
1195
- var P = (r) => {
1196
- var n = Yt();
1197
- e.append(r, n);
1198
- }, _ = (r) => {
1199
- var n = e.comment(), h = e.first_child(n);
1200
- {
1201
- var x = (o) => {
1202
- var d = qt();
1203
- e.next(), e.append(o, d);
1204
- }, V = (o) => {
1205
- var d = e.comment(), B = e.first_child(d);
1206
- {
1207
- var Z = (f) => {
1208
- var u = Xt();
1209
- e.append(f, u);
1210
- }, C = (f) => {
1211
- var u = e.comment(), j = e.first_child(u);
1212
- {
1213
- var R = (c) => {
1214
- var g = Qt();
1215
- e.append(c, g);
1216
- }, T = (c) => {
1217
- var g = e.comment(), S = e.first_child(g);
1218
- {
1219
- var O = (v) => {
1220
- var y = Wt();
1221
- e.append(v, y);
1222
- }, I = (v) => {
1223
- var y = e.comment(), E = e.first_child(y);
1224
- {
1225
- var Y = (m) => {
1226
- var L = Jt();
1227
- e.append(m, L);
1228
- }, G = (m) => {
1229
- var L = e.text();
1230
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
1231
- };
1232
- e.if(
1233
- E,
1234
- (m) => {
1235
- e.get(i) === "thin" ? m(Y) : m(G, !1);
1236
- },
1237
- !0
1238
- );
1239
- }
1240
- e.append(v, y);
1241
- };
1242
- e.if(
1243
- S,
1244
- (v) => {
1245
- e.get(i) === "regular" ? v(O) : v(I, !1);
1246
- },
1247
- !0
1248
- );
1249
- }
1250
- e.append(c, g);
1251
- };
1252
- e.if(
1253
- j,
1254
- (c) => {
1255
- e.get(i) === "light" ? c(R) : c(T, !1);
1256
- },
1257
- !0
1258
- );
1259
- }
1260
- e.append(f, u);
1261
- };
1262
- e.if(
1263
- B,
1264
- (f) => {
1265
- e.get(i) === "fill" ? f(Z) : f(C, !1);
1266
- },
1267
- !0
1268
- );
1269
- }
1270
- e.append(o, d);
1271
- };
1272
- e.if(
1273
- h,
1274
- (o) => {
1275
- e.get(i) === "duotone" ? o(x) : o(V, !1);
1276
- },
1277
- !0
1278
- );
1279
- }
1280
- e.append(r, n);
1281
- };
1282
- e.if(A, (r) => {
1283
- e.get(i) === "bold" ? r(P) : r(_, !1);
1284
- });
1285
- }
1286
- e.reset(w), e.append(s, w), e.pop();
1287
- }
1288
- var ea = e.from_svg('<path d="M184.49,136.49l-80,80a12,12,0,0,1-17-17L159,128,87.51,56.49a12,12,0,1,1,17-17l80,80A12,12,0,0,1,184.49,136.49Z"></path>'), ta = e.from_svg('<path d="M176,128,96,208V48Z" opacity="0.2"></path><path d="M181.66,122.34l-80-80A8,8,0,0,0,88,48V208a8,8,0,0,0,13.66,5.66l80-80A8,8,0,0,0,181.66,122.34ZM104,188.69V67.31L164.69,128Z"></path>', 1), aa = e.from_svg('<path d="M181.66,133.66l-80,80A8,8,0,0,1,88,208V48a8,8,0,0,1,13.66-5.66l80,80A8,8,0,0,1,181.66,133.66Z"></path>'), ra = e.from_svg('<path d="M180.24,132.24l-80,80a6,6,0,0,1-8.48-8.48L167.51,128,91.76,52.24a6,6,0,0,1,8.48-8.48l80,80A6,6,0,0,1,180.24,132.24Z"></path>'), ia = e.from_svg('<path d="M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z"></path>'), na = e.from_svg('<path d="M178.83,130.83l-80,80a4,4,0,0,1-5.66-5.66L170.34,128,93.17,50.83a4,4,0,0,1,5.66-5.66l80,80A4,4,0,0,1,178.83,130.83Z"></path>'), sa = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
1289
- function oa(s, t) {
1290
- e.push(t, !0);
1291
- const a = se();
1292
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
1293
- function M(r) {
1294
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
1295
- return o;
1296
- }
1297
- var w = sa();
1298
- e.attribute_effect(
1299
- w,
1300
- (r, n) => ({
1301
- xmlns: "http://www.w3.org/2000/svg",
1302
- role: "img",
1303
- width: e.get(H),
1304
- height: e.get(H),
1305
- fill: e.get(b),
1306
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
1307
- viewBox: "0 0 256 256",
1308
- ...r,
1309
- ...n
1310
- }),
1311
- [() => M(a), () => M(l)]
1312
- );
1313
- var k = e.child(w);
1314
- {
1315
- var D = (r) => {
1316
- var n = e.comment(), h = e.first_child(n);
1317
- e.snippet(h, () => t.children), e.append(r, n);
1318
- };
1319
- e.if(k, (r) => {
1320
- t.children && r(D);
1321
- });
1322
- }
1323
- var A = e.sibling(k, 2);
1324
- {
1325
- var P = (r) => {
1326
- var n = ea();
1327
- e.append(r, n);
1328
- }, _ = (r) => {
1329
- var n = e.comment(), h = e.first_child(n);
1330
- {
1331
- var x = (o) => {
1332
- var d = ta();
1333
- e.next(), e.append(o, d);
1334
- }, V = (o) => {
1335
- var d = e.comment(), B = e.first_child(d);
1336
- {
1337
- var Z = (f) => {
1338
- var u = aa();
1339
- e.append(f, u);
1340
- }, C = (f) => {
1341
- var u = e.comment(), j = e.first_child(u);
1342
- {
1343
- var R = (c) => {
1344
- var g = ra();
1345
- e.append(c, g);
1346
- }, T = (c) => {
1347
- var g = e.comment(), S = e.first_child(g);
1348
- {
1349
- var O = (v) => {
1350
- var y = ia();
1351
- e.append(v, y);
1352
- }, I = (v) => {
1353
- var y = e.comment(), E = e.first_child(y);
1354
- {
1355
- var Y = (m) => {
1356
- var L = na();
1357
- e.append(m, L);
1358
- }, G = (m) => {
1359
- var L = e.text();
1360
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
1361
- };
1362
- e.if(
1363
- E,
1364
- (m) => {
1365
- e.get(i) === "thin" ? m(Y) : m(G, !1);
1366
- },
1367
- !0
1368
- );
1369
- }
1370
- e.append(v, y);
1371
- };
1372
- e.if(
1373
- S,
1374
- (v) => {
1375
- e.get(i) === "regular" ? v(O) : v(I, !1);
1376
- },
1377
- !0
1378
- );
1379
- }
1380
- e.append(c, g);
1381
- };
1382
- e.if(
1383
- j,
1384
- (c) => {
1385
- e.get(i) === "light" ? c(R) : c(T, !1);
1386
- },
1387
- !0
1388
- );
1389
- }
1390
- e.append(f, u);
1391
- };
1392
- e.if(
1393
- B,
1394
- (f) => {
1395
- e.get(i) === "fill" ? f(Z) : f(C, !1);
1396
- },
1397
- !0
1398
- );
1399
- }
1400
- e.append(o, d);
1401
- };
1402
- e.if(
1403
- h,
1404
- (o) => {
1405
- e.get(i) === "duotone" ? o(x) : o(V, !1);
1406
- },
1407
- !0
1408
- );
1409
- }
1410
- e.append(r, n);
1411
- };
1412
- e.if(A, (r) => {
1413
- e.get(i) === "bold" ? r(P) : r(_, !1);
1414
- });
1415
- }
1416
- e.reset(w), e.append(s, w), e.pop();
1417
- }
1418
- var la = e.from_html('<div class="select-none absolute left-1/2 -translate-x-1/2 bg-base-200/90 backdrop-blur rounded-full shadow-lg flex items-center gap-4 z-10 border border-base-300 transition-all duration-200 bottom-4"><button class="btn btn-circle btn-sm btn-ghost"><!></button> <span class="text-sm font-mono tabular-nums text-nowrap"> </span> <button class="btn btn-circle btn-sm btn-ghost"><!></button></div>');
1419
- function da(s, t) {
1420
- e.push(t, !0);
1421
- var a = la(), l = e.child(a);
1422
- l.__click = () => t.viewerState.previousCanvas();
1423
- var i = e.child(l);
1424
- $t(i, { size: 20, weight: "bold" }), e.reset(l);
1425
- var b = e.sibling(l, 2), H = e.child(b);
1426
- e.reset(b);
1427
- var p = e.sibling(b, 2);
1428
- p.__click = () => t.viewerState.nextCanvas();
1429
- var M = e.child(p);
1430
- oa(M, { size: 20, weight: "bold" }), e.reset(p), e.reset(a), e.template_effect(
1431
- (w, k) => {
1432
- l.disabled = !t.viewerState.hasPrevious, e.set_attribute(l, "aria-label", w), e.set_text(H, `${t.viewerState.currentCanvasIndex + 1} / ${t.viewerState.canvases.length ?? ""}`), p.disabled = !t.viewerState.hasNext, e.set_attribute(p, "aria-label", k);
1433
- },
1434
- [() => X.previous_canvas(), () => X.next_canvas()]
1435
- ), e.append(s, a), e.pop();
1436
- }
1437
- e.delegate(["click"]);
1438
- var ca = e.from_svg('<path d="M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z"></path>'), va = e.from_svg('<path d="M208,96l-80,80L48,96Z" opacity="0.2"></path><path d="M215.39,92.94A8,8,0,0,0,208,88H48a8,8,0,0,0-5.66,13.66l80,80a8,8,0,0,0,11.32,0l80-80A8,8,0,0,0,215.39,92.94ZM128,164.69,67.31,104H188.69Z"></path>', 1), fa = e.from_svg('<path d="M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,48,88H208a8,8,0,0,1,5.66,13.66Z"></path>'), ha = e.from_svg('<path d="M212.24,100.24l-80,80a6,6,0,0,1-8.48,0l-80-80a6,6,0,0,1,8.48-8.48L128,167.51l75.76-75.75a6,6,0,0,1,8.48,8.48Z"></path>'), ga = e.from_svg('<path d="M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z"></path>'), pa = e.from_svg('<path d="M210.83,98.83l-80,80a4,4,0,0,1-5.66,0l-80-80a4,4,0,0,1,5.66-5.66L128,170.34l77.17-77.17a4,4,0,1,1,5.66,5.66Z"></path>'), ua = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
1439
- function ma(s, t) {
1440
- e.push(t, !0);
1441
- const a = se();
1442
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
1443
- function M(r) {
1444
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
1445
- return o;
1446
- }
1447
- var w = ua();
1448
- e.attribute_effect(
1449
- w,
1450
- (r, n) => ({
1451
- xmlns: "http://www.w3.org/2000/svg",
1452
- role: "img",
1453
- width: e.get(H),
1454
- height: e.get(H),
1455
- fill: e.get(b),
1456
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
1457
- viewBox: "0 0 256 256",
1458
- ...r,
1459
- ...n
1460
- }),
1461
- [() => M(a), () => M(l)]
1462
- );
1463
- var k = e.child(w);
1464
- {
1465
- var D = (r) => {
1466
- var n = e.comment(), h = e.first_child(n);
1467
- e.snippet(h, () => t.children), e.append(r, n);
1468
- };
1469
- e.if(k, (r) => {
1470
- t.children && r(D);
1471
- });
1472
- }
1473
- var A = e.sibling(k, 2);
1474
- {
1475
- var P = (r) => {
1476
- var n = ca();
1477
- e.append(r, n);
1478
- }, _ = (r) => {
1479
- var n = e.comment(), h = e.first_child(n);
1480
- {
1481
- var x = (o) => {
1482
- var d = va();
1483
- e.next(), e.append(o, d);
1484
- }, V = (o) => {
1485
- var d = e.comment(), B = e.first_child(d);
1486
- {
1487
- var Z = (f) => {
1488
- var u = fa();
1489
- e.append(f, u);
1490
- }, C = (f) => {
1491
- var u = e.comment(), j = e.first_child(u);
1492
- {
1493
- var R = (c) => {
1494
- var g = ha();
1495
- e.append(c, g);
1496
- }, T = (c) => {
1497
- var g = e.comment(), S = e.first_child(g);
1498
- {
1499
- var O = (v) => {
1500
- var y = ga();
1501
- e.append(v, y);
1502
- }, I = (v) => {
1503
- var y = e.comment(), E = e.first_child(y);
1504
- {
1505
- var Y = (m) => {
1506
- var L = pa();
1507
- e.append(m, L);
1508
- }, G = (m) => {
1509
- var L = e.text();
1510
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
1511
- };
1512
- e.if(
1513
- E,
1514
- (m) => {
1515
- e.get(i) === "thin" ? m(Y) : m(G, !1);
1516
- },
1517
- !0
1518
- );
1519
- }
1520
- e.append(v, y);
1521
- };
1522
- e.if(
1523
- S,
1524
- (v) => {
1525
- e.get(i) === "regular" ? v(O) : v(I, !1);
1526
- },
1527
- !0
1528
- );
1529
- }
1530
- e.append(c, g);
1531
- };
1532
- e.if(
1533
- j,
1534
- (c) => {
1535
- e.get(i) === "light" ? c(R) : c(T, !1);
1536
- },
1537
- !0
1538
- );
1539
- }
1540
- e.append(f, u);
1541
- };
1542
- e.if(
1543
- B,
1544
- (f) => {
1545
- e.get(i) === "fill" ? f(Z) : f(C, !1);
1546
- },
1547
- !0
1548
- );
1549
- }
1550
- e.append(o, d);
1551
- };
1552
- e.if(
1553
- h,
1554
- (o) => {
1555
- e.get(i) === "duotone" ? o(x) : o(V, !1);
1556
- },
1557
- !0
1558
- );
1559
- }
1560
- e.append(r, n);
1561
- };
1562
- e.if(A, (r) => {
1563
- e.get(i) === "bold" ? r(P) : r(_, !1);
1564
- });
1565
- }
1566
- e.reset(w), e.append(s, w), e.pop();
1567
- }
1568
- var _a = e.from_svg('<path d="M251,123.13c-.37-.81-9.13-20.26-28.48-39.61C196.63,57.67,164,44,128,44S59.37,57.67,33.51,83.52C14.16,102.87,5.4,122.32,5,123.13a12.08,12.08,0,0,0,0,9.75c.37.82,9.13,20.26,28.49,39.61C59.37,198.34,92,212,128,212s68.63-13.66,94.48-39.51c19.36-19.35,28.12-38.79,28.49-39.61A12.08,12.08,0,0,0,251,123.13Zm-46.06,33C183.47,177.27,157.59,188,128,188s-55.47-10.73-76.91-31.88A130.36,130.36,0,0,1,29.52,128,130.45,130.45,0,0,1,51.09,99.89C72.54,78.73,98.41,68,128,68s55.46,10.73,76.91,31.89A130.36,130.36,0,0,1,226.48,128,130.45,130.45,0,0,1,204.91,156.12ZM128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,148Z"></path>'), ba = e.from_svg('<path d="M128,56C48,56,16,128,16,128s32,72,112,72,112-72,112-72S208,56,128,56Zm0,112a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z" opacity="0.2"></path><path d="M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.47,133.47,0,0,1,25,128,133.33,133.33,0,0,1,48.07,97.25C70.33,75.19,97.22,64,128,64s57.67,11.19,79.93,33.25A133.46,133.46,0,0,1,231.05,128C223.84,141.46,192.43,192,128,192Zm0-112a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Z"></path>', 1), wa = e.from_svg('<path d="M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"></path>'), ya = e.from_svg('<path d="M245.48,125.57c-.34-.78-8.66-19.23-27.24-37.81C201,70.54,171.38,50,128,50S55,70.54,37.76,87.76c-18.58,18.58-26.9,37-27.24,37.81a6,6,0,0,0,0,4.88c.34.77,8.66,19.22,27.24,37.8C55,185.47,84.62,206,128,206s73-20.53,90.24-37.75c18.58-18.58,26.9-37,27.24-37.8A6,6,0,0,0,245.48,125.57ZM128,194c-31.38,0-58.78-11.42-81.45-33.93A134.77,134.77,0,0,1,22.69,128,134.56,134.56,0,0,1,46.55,95.94C69.22,73.42,96.62,62,128,62s58.78,11.42,81.45,33.94A134.56,134.56,0,0,1,233.31,128C226.94,140.21,195,194,128,194Zm0-112a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162Z"></path>'), Aa = e.from_svg('<path d="M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.47,133.47,0,0,1,25,128,133.33,133.33,0,0,1,48.07,97.25C70.33,75.19,97.22,64,128,64s57.67,11.19,79.93,33.25A133.46,133.46,0,0,1,231.05,128C223.84,141.46,192.43,192,128,192Zm0-112a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Z"></path>'), xa = e.from_svg('<path d="M243.66,126.38c-.34-.76-8.52-18.89-26.83-37.2C199.87,72.22,170.7,52,128,52S56.13,72.22,39.17,89.18c-18.31,18.31-26.49,36.44-26.83,37.2a4.08,4.08,0,0,0,0,3.25c.34.77,8.52,18.89,26.83,37.2,17,17,46.14,37.17,88.83,37.17s71.87-20.21,88.83-37.17c18.31-18.31,26.49-36.43,26.83-37.2A4.08,4.08,0,0,0,243.66,126.38Zm-32.7,35c-23.07,23-51,34.62-83,34.62s-59.89-11.65-83-34.62A135.71,135.71,0,0,1,20.44,128,135.69,135.69,0,0,1,45,94.62C68.11,71.65,96,60,128,60s59.89,11.65,83,34.62A135.79,135.79,0,0,1,235.56,128,135.71,135.71,0,0,1,211,161.38ZM128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Z"></path>'), Ma = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
1569
- function We(s, t) {
1570
- e.push(t, !0);
1571
- const a = se();
1572
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
1573
- function M(r) {
1574
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
1575
- return o;
1576
- }
1577
- var w = Ma();
1578
- e.attribute_effect(
1579
- w,
1580
- (r, n) => ({
1581
- xmlns: "http://www.w3.org/2000/svg",
1582
- role: "img",
1583
- width: e.get(H),
1584
- height: e.get(H),
1585
- fill: e.get(b),
1586
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
1587
- viewBox: "0 0 256 256",
1588
- ...r,
1589
- ...n
1590
- }),
1591
- [() => M(a), () => M(l)]
1592
- );
1593
- var k = e.child(w);
1594
- {
1595
- var D = (r) => {
1596
- var n = e.comment(), h = e.first_child(n);
1597
- e.snippet(h, () => t.children), e.append(r, n);
1598
- };
1599
- e.if(k, (r) => {
1600
- t.children && r(D);
1601
- });
1602
- }
1603
- var A = e.sibling(k, 2);
1604
- {
1605
- var P = (r) => {
1606
- var n = _a();
1607
- e.append(r, n);
1608
- }, _ = (r) => {
1609
- var n = e.comment(), h = e.first_child(n);
1610
- {
1611
- var x = (o) => {
1612
- var d = ba();
1613
- e.next(), e.append(o, d);
1614
- }, V = (o) => {
1615
- var d = e.comment(), B = e.first_child(d);
1616
- {
1617
- var Z = (f) => {
1618
- var u = wa();
1619
- e.append(f, u);
1620
- }, C = (f) => {
1621
- var u = e.comment(), j = e.first_child(u);
1622
- {
1623
- var R = (c) => {
1624
- var g = ya();
1625
- e.append(c, g);
1626
- }, T = (c) => {
1627
- var g = e.comment(), S = e.first_child(g);
1628
- {
1629
- var O = (v) => {
1630
- var y = Aa();
1631
- e.append(v, y);
1632
- }, I = (v) => {
1633
- var y = e.comment(), E = e.first_child(y);
1634
- {
1635
- var Y = (m) => {
1636
- var L = xa();
1637
- e.append(m, L);
1638
- }, G = (m) => {
1639
- var L = e.text();
1640
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
1641
- };
1642
- e.if(
1643
- E,
1644
- (m) => {
1645
- e.get(i) === "thin" ? m(Y) : m(G, !1);
1646
- },
1647
- !0
1648
- );
1649
- }
1650
- e.append(v, y);
1651
- };
1652
- e.if(
1653
- S,
1654
- (v) => {
1655
- e.get(i) === "regular" ? v(O) : v(I, !1);
1656
- },
1657
- !0
1658
- );
1659
- }
1660
- e.append(c, g);
1661
- };
1662
- e.if(
1663
- j,
1664
- (c) => {
1665
- e.get(i) === "light" ? c(R) : c(T, !1);
1666
- },
1667
- !0
1668
- );
1669
- }
1670
- e.append(f, u);
1671
- };
1672
- e.if(
1673
- B,
1674
- (f) => {
1675
- e.get(i) === "fill" ? f(Z) : f(C, !1);
1676
- },
1677
- !0
1678
- );
1679
- }
1680
- e.append(o, d);
1681
- };
1682
- e.if(
1683
- h,
1684
- (o) => {
1685
- e.get(i) === "duotone" ? o(x) : o(V, !1);
1686
- },
1687
- !0
1688
- );
1689
- }
1690
- e.append(r, n);
1691
- };
1692
- e.if(A, (r) => {
1693
- e.get(i) === "bold" ? r(P) : r(_, !1);
1694
- });
1695
- }
1696
- e.reset(w), e.append(s, w), e.pop();
1697
- }
1698
- var Za = e.from_svg('<path d="M56.88,31.93A12,12,0,1,0,39.12,48.07l16,17.65C20.67,88.66,5.72,121.58,5,123.13a12.08,12.08,0,0,0,0,9.75c.37.82,9.13,20.26,28.49,39.61C59.37,198.34,92,212,128,212a131.34,131.34,0,0,0,51-10l20.09,22.1a12,12,0,0,0,17.76-16.14ZM128,188c-29.59,0-55.47-10.73-76.91-31.88A130.69,130.69,0,0,1,29.52,128c5.27-9.31,18.79-29.9,42-44.29l90.09,99.11A109.33,109.33,0,0,1,128,188Zm123-55.12c-.36.81-9,20-28,39.16a12,12,0,1,1-17-16.9A130.48,130.48,0,0,0,226.48,128a130.36,130.36,0,0,0-21.57-28.12C183.46,78.73,157.59,68,128,68c-3.35,0-6.7.14-10,.42a12,12,0,1,1-2-23.91c3.93-.34,8-.51,12-.51,36,0,68.63,13.67,94.49,39.52,19.35,19.35,28.11,38.8,28.48,39.61A12.08,12.08,0,0,1,251,132.88Z"></path>'), Ha = e.from_svg('<path d="M128,56C48,56,16,128,16,128s32,72,112,72,112-72,112-72S208,56,128,56Zm0,112a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z" opacity="0.2"></path><path d="M53.92,34.62A8,8,0,1,0,42.08,45.38L61.32,66.55C25,88.84,9.38,123.2,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208a127.11,127.11,0,0,0,52.07-10.83l22,24.21a8,8,0,1,0,11.84-10.76Zm47.33,75.84,41.67,45.85a32,32,0,0,1-41.67-45.85ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.16,133.16,0,0,1,25,128c4.69-8.79,19.66-33.39,47.35-49.38l18,19.75a48,48,0,0,0,63.66,70l14.73,16.2A112,112,0,0,1,128,192Zm6-95.43a8,8,0,0,1,3-15.72,48.16,48.16,0,0,1,38.77,42.64,8,8,0,0,1-7.22,8.71,6.39,6.39,0,0,1-.75,0,8,8,0,0,1-8-7.26A32.09,32.09,0,0,0,134,96.57Zm113.28,34.69c-.42.94-10.55,23.37-33.36,43.8a8,8,0,1,1-10.67-11.92A132.77,132.77,0,0,0,231.05,128a133.15,133.15,0,0,0-23.12-30.77C185.67,75.19,158.78,64,128,64a118.37,118.37,0,0,0-19.36,1.57A8,8,0,1,1,106,49.79,134,134,0,0,1,128,48c34.88,0,66.57,13.26,91.66,38.35,18.83,18.83,27.3,37.62,27.65,38.41A8,8,0,0,1,247.31,131.26Z"></path>', 1), Va = e.from_svg('<path d="M96.68,57.87a4,4,0,0,1,2.08-6.6A130.13,130.13,0,0,1,128,48c34.88,0,66.57,13.26,91.66,38.35,18.83,18.83,27.3,37.62,27.65,38.41a8,8,0,0,1,0,6.5c-.35.79-8.82,19.57-27.65,38.4q-4.28,4.26-8.79,8.07a4,4,0,0,1-5.55-.36ZM213.92,210.62a8,8,0,1,1-11.84,10.76L180,197.13A127.21,127.21,0,0,1,128,208c-34.88,0-66.57-13.26-91.66-38.34C17.51,150.83,9,132.05,8.69,131.26a8,8,0,0,1,0-6.5C9,124,17.51,105.18,36.34,86.35a135,135,0,0,1,25-19.78L42.08,45.38A8,8,0,1,1,53.92,34.62Zm-65.49-48.25-52.69-58a40,40,0,0,0,52.69,58Z"></path>'), Sa = e.from_svg('<path d="M52.44,36A6,6,0,0,0,43.56,44L64.44,67c-37.28,21.9-53.23,57-53.92,58.57a6,6,0,0,0,0,4.88c.34.77,8.66,19.22,27.24,37.8C55,185.47,84.62,206,128,206a124.91,124.91,0,0,0,52.57-11.25l23,25.29a6,6,0,0,0,8.88-8.08Zm48.62,71.32,45,49.52a34,34,0,0,1-45-49.52ZM128,194c-31.38,0-58.78-11.42-81.45-33.93A134.57,134.57,0,0,1,22.69,128c4.29-8.2,20.1-35.18,50-51.91L92.89,98.3a46,46,0,0,0,61.35,67.48l17.81,19.6A113.47,113.47,0,0,1,128,194Zm6.4-99.4a6,6,0,0,1,2.25-11.79,46.17,46.17,0,0,1,37.15,40.87,6,6,0,0,1-5.42,6.53l-.56,0a6,6,0,0,1-6-5.45A34.1,34.1,0,0,0,134.4,94.6Zm111.08,35.85c-.41.92-10.37,23-32.86,43.12a6,6,0,1,1-8-8.94A134.07,134.07,0,0,0,233.31,128a134.67,134.67,0,0,0-23.86-32.07C186.78,73.42,159.38,62,128,62a120.19,120.19,0,0,0-19.69,1.6,6,6,0,1,1-2-11.83A131.12,131.12,0,0,1,128,50c43.38,0,73,20.54,90.24,37.76,18.58,18.58,26.9,37,27.24,37.81A6,6,0,0,1,245.48,130.45Z"></path>'), Ca = e.from_svg('<path d="M53.92,34.62A8,8,0,1,0,42.08,45.38L61.32,66.55C25,88.84,9.38,123.2,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208a127.11,127.11,0,0,0,52.07-10.83l22,24.21a8,8,0,1,0,11.84-10.76Zm47.33,75.84,41.67,45.85a32,32,0,0,1-41.67-45.85ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.16,133.16,0,0,1,25,128c4.69-8.79,19.66-33.39,47.35-49.38l18,19.75a48,48,0,0,0,63.66,70l14.73,16.2A112,112,0,0,1,128,192Zm6-95.43a8,8,0,0,1,3-15.72,48.16,48.16,0,0,1,38.77,42.64,8,8,0,0,1-7.22,8.71,6.39,6.39,0,0,1-.75,0,8,8,0,0,1-8-7.26A32.09,32.09,0,0,0,134,96.57Zm113.28,34.69c-.42.94-10.55,23.37-33.36,43.8a8,8,0,1,1-10.67-11.92A132.77,132.77,0,0,0,231.05,128a133.15,133.15,0,0,0-23.12-30.77C185.67,75.19,158.78,64,128,64a118.37,118.37,0,0,0-19.36,1.57A8,8,0,1,1,106,49.79,134,134,0,0,1,128,48c34.88,0,66.57,13.26,91.66,38.35,18.83,18.83,27.3,37.62,27.65,38.41A8,8,0,0,1,247.31,131.26Z"></path>'), Ia = e.from_svg('<path d="M51,37.31A4,4,0,0,0,45,42.69L67.59,67.5C29.34,89,13,124.81,12.34,126.38a4.08,4.08,0,0,0,0,3.25c.34.77,8.52,18.89,26.83,37.2,17,17,46.14,37.17,88.83,37.17a122.59,122.59,0,0,0,53.06-11.69l24,26.38a4,4,0,1,0,5.92-5.38ZM149.1,157.16A36,36,0,0,1,101,104.22ZM128,196c-32,0-59.89-11.65-83-34.62A135.81,135.81,0,0,1,20.44,128c3.65-7.23,20.09-36.81,52.68-54.43l22.45,24.7a44,44,0,0,0,59,64.83l20.89,23A114.94,114.94,0,0,1,128,196Zm6.78-103.36a4,4,0,0,1,1.49-7.86,44.15,44.15,0,0,1,35.54,39.09,4,4,0,0,1-3.61,4.35l-.38,0a4,4,0,0,1-4-3.63A36.1,36.1,0,0,0,134.78,92.64Zm108.88,37c-.41.91-10.2,22.58-32.38,42.45a4,4,0,0,1-2.67,1,4,4,0,0,1-2.67-7A136.71,136.71,0,0,0,235.56,128,136.07,136.07,0,0,0,211,94.62C187.89,71.65,160,60,128,60a122,122,0,0,0-20,1.63,4,4,0,0,1-1.32-7.89A129.3,129.3,0,0,1,128,52c42.7,0,71.87,20.22,88.83,37.18,18.31,18.31,26.49,36.44,26.83,37.2A4.08,4.08,0,0,1,243.66,129.63Z"></path>'), za = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
1699
- function Je(s, t) {
1700
- e.push(t, !0);
1701
- const a = se();
1702
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
1703
- function M(r) {
1704
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
1705
- return o;
1706
- }
1707
- var w = za();
1708
- e.attribute_effect(
1709
- w,
1710
- (r, n) => ({
1711
- xmlns: "http://www.w3.org/2000/svg",
1712
- role: "img",
1713
- width: e.get(H),
1714
- height: e.get(H),
1715
- fill: e.get(b),
1716
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
1717
- viewBox: "0 0 256 256",
1718
- ...r,
1719
- ...n
1720
- }),
1721
- [() => M(a), () => M(l)]
1722
- );
1723
- var k = e.child(w);
1724
- {
1725
- var D = (r) => {
1726
- var n = e.comment(), h = e.first_child(n);
1727
- e.snippet(h, () => t.children), e.append(r, n);
1728
- };
1729
- e.if(k, (r) => {
1730
- t.children && r(D);
1731
- });
1732
- }
1733
- var A = e.sibling(k, 2);
1734
- {
1735
- var P = (r) => {
1736
- var n = Za();
1737
- e.append(r, n);
1738
- }, _ = (r) => {
1739
- var n = e.comment(), h = e.first_child(n);
1740
- {
1741
- var x = (o) => {
1742
- var d = Ha();
1743
- e.next(), e.append(o, d);
1744
- }, V = (o) => {
1745
- var d = e.comment(), B = e.first_child(d);
1746
- {
1747
- var Z = (f) => {
1748
- var u = Va();
1749
- e.append(f, u);
1750
- }, C = (f) => {
1751
- var u = e.comment(), j = e.first_child(u);
1752
- {
1753
- var R = (c) => {
1754
- var g = Sa();
1755
- e.append(c, g);
1756
- }, T = (c) => {
1757
- var g = e.comment(), S = e.first_child(g);
1758
- {
1759
- var O = (v) => {
1760
- var y = Ca();
1761
- e.append(v, y);
1762
- }, I = (v) => {
1763
- var y = e.comment(), E = e.first_child(y);
1764
- {
1765
- var Y = (m) => {
1766
- var L = Ia();
1767
- e.append(m, L);
1768
- }, G = (m) => {
1769
- var L = e.text();
1770
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
1771
- };
1772
- e.if(
1773
- E,
1774
- (m) => {
1775
- e.get(i) === "thin" ? m(Y) : m(G, !1);
1776
- },
1777
- !0
1778
- );
1779
- }
1780
- e.append(v, y);
1781
- };
1782
- e.if(
1783
- S,
1784
- (v) => {
1785
- e.get(i) === "regular" ? v(O) : v(I, !1);
1786
- },
1787
- !0
1788
- );
1789
- }
1790
- e.append(c, g);
1791
- };
1792
- e.if(
1793
- j,
1794
- (c) => {
1795
- e.get(i) === "light" ? c(R) : c(T, !1);
1796
- },
1797
- !0
1798
- );
1799
- }
1800
- e.append(f, u);
1801
- };
1802
- e.if(
1803
- B,
1804
- (f) => {
1805
- e.get(i) === "fill" ? f(Z) : f(C, !1);
1806
- },
1807
- !0
1808
- );
1809
- }
1810
- e.append(o, d);
1811
- };
1812
- e.if(
1813
- h,
1814
- (o) => {
1815
- e.get(i) === "duotone" ? o(x) : o(V, !1);
1816
- },
1817
- !0
1818
- );
1819
- }
1820
- e.append(r, n);
1821
- };
1822
- e.if(A, (r) => {
1823
- e.get(i) === "bold" ? r(P) : r(_, !1);
1824
- });
1825
- }
1826
- e.reset(w), e.append(s, w), e.pop();
1827
- }
1828
- var La = e.from_html('<span class="text-xs opacity-50 truncate max-w-[150px]"> </span>'), ka = e.from_html('<button class="w-full text-left p-3 hover:bg-base-300 transition-colors cursor-pointer flex gap-3 group/item items-start focus:outline-none focus:bg-base-300"><div class="btn btn-xs btn-circle btn-ghost mt-0.5 shrink-0 pointer-events-none"><!></div> <div class="flex-1 min-w-0"><div class="flex items-start justify-between"><span class="font-bold text-sm text-primary"></span> <!></div> <div><!></div></div></button>'), Pa = e.from_html('<div class="p-4 text-center opacity-50 text-sm">No annotations available.</div>'), Ta = e.from_html('<div class="absolute top-4 right-4 z-40 pointer-events-auto transition-all duration-300"><details class="group relative"><summary class="flex items-center gap-2 bg-base-200/90 backdrop-blur shadow-lg rounded-full px-4 py-2 cursor-pointer list-none hover:bg-base-200 transition-all select-none border border-base-300 pointer-events-auto"><button class="btn btn-xs btn-circle btn-ghost"><!></button> <span class="text-sm font-medium"> <span class="opacity-50 text-xs font-normal ml-1"> </span></span> <!></summary> <div class="absolute right-0 mt-2 w-96 bg-base-200/95 backdrop-blur shadow-xl rounded-box p-0 max-h-[60vh] overflow-y-auto border border-base-300 flex flex-col divide-y divide-base-300"></div></details></div>');
1829
- function Ba(s, t) {
1830
- e.push(t, !0);
1831
- const a = de(le);
1832
- let l = e.derived(() => {
1833
- if (!a.manifestId || !a.canvasId)
1834
- return [];
1835
- const A = oe.getAnnotations(a.manifestId, a.canvasId), P = a.currentCanvasSearchAnnotations;
1836
- return [...A, ...P];
1837
- });
1838
- function i(A) {
1839
- return A.id || A["@id"] || (typeof A.getId == "function" ? A.getId() : "") || "";
1840
- }
1841
- e.user_effect(() => {
1842
- var A;
1843
- if (e.get(l).length > 0)
1844
- if (((A = a.config.annotations) == null ? void 0 : A.visible) ?? !0) {
1845
- const _ = /* @__PURE__ */ new Set();
1846
- e.get(l).forEach((r) => {
1847
- const n = i(r);
1848
- n && _.add(n);
1849
- }), a.visibleAnnotationIds = _;
1850
- } else
1851
- a.visibleAnnotationIds = /* @__PURE__ */ new Set();
1852
- else
1853
- a.visibleAnnotationIds = /* @__PURE__ */ new Set();
1854
- });
1855
- let b = e.derived(() => e.get(l).length === 0 ? !1 : e.get(l).every((A) => {
1856
- const P = i(A);
1857
- return !P || a.visibleAnnotationIds.has(P);
1858
- }));
1859
- function H(A) {
1860
- a.visibleAnnotationIds.has(A) ? a.visibleAnnotationIds.delete(A) : a.visibleAnnotationIds.add(A), a.visibleAnnotationIds = new Set(a.visibleAnnotationIds);
1861
- }
1862
- function p() {
1863
- if (e.get(b))
1864
- a.visibleAnnotationIds = /* @__PURE__ */ new Set();
1865
- else {
1866
- const A = /* @__PURE__ */ new Set();
1867
- e.get(l).forEach((P) => {
1868
- const _ = i(P);
1869
- _ && A.add(_);
1870
- }), a.visibleAnnotationIds = A;
1871
- }
1872
- }
1873
- let M = e.derived(() => e.get(l).length ? e.get(l).map((A) => {
1874
- let P = "", _ = !1;
1875
- if (typeof A.getBody == "function") {
1876
- const r = A.getBody();
1877
- if (r && r.length) {
1878
- const n = (h) => {
1879
- const x = h.getValue ? h.getValue() : null;
1880
- return x || "";
1881
- };
1882
- P = r.map((h) => n(h)).filter(Boolean).join(" "), _ = r.some((h) => {
1883
- const x = h.getFormat ? h.getFormat() : "";
1884
- return x === "text/html" || x === "application/html";
1885
- });
1886
- }
1887
- if (!P && typeof A.getLabel == "function") {
1888
- const n = A.getLabel();
1889
- n && (P = n);
1890
- }
1891
- } else {
1892
- const r = (h) => h && (h.chars || h.value || h["cnt:chars"]) || "", n = (h) => h ? h.format === "text/html" || h.type === "TextualBody" : !1;
1893
- if (A.resource ? Array.isArray(A.resource) ? (P = A.resource.map((h) => r(h)).join(" "), A.resource.some((h) => n(h)) && (_ = !0)) : (P = r(A.resource), n(A.resource) && (_ = !0)) : A.body && (Array.isArray(A.body) ? (P = A.body.map((h) => r(h)).join(" "), A.body.some((h) => n(h)) && (_ = !0)) : (P = r(A.body), n(A.body) && (_ = !0))), !P) {
1894
- const h = A.label || A.name || A.title;
1895
- h && (P = Array.isArray(h) ? h.join(" ") : h);
1896
- }
1897
- }
1898
- return {
1899
- id: i(A),
1900
- content: P,
1901
- isHtml: _,
1902
- label: (typeof A.getLabel == "function" ? A.getLabel() : A.label) || ""
1903
- };
1904
- }) : []);
1905
- var w = e.comment(), k = e.first_child(w);
1906
- {
1907
- var D = (A) => {
1908
- var P = Ta(), _ = e.child(P), r = e.child(_), n = e.child(r);
1909
- n.__click = (u) => {
1910
- u.preventDefault(), p();
1911
- };
1912
- var h = e.child(n);
1913
- {
1914
- var x = (u) => {
1915
- We(u, { size: 16, weight: "bold" });
1916
- }, V = (u) => {
1917
- Je(u, { size: 16, weight: "bold" });
1918
- };
1919
- e.if(h, (u) => {
1920
- e.get(b) ? u(x) : u(V, !1);
1921
- });
1922
- }
1923
- e.reset(n);
1924
- var o = e.sibling(n, 2), d = e.child(o), B = e.sibling(d), Z = e.child(B, !0);
1925
- e.reset(B), e.reset(o);
1926
- var C = e.sibling(o, 2);
1927
- ma(C, {
1928
- size: 16,
1929
- weight: "bold",
1930
- class: "group-open:rotate-180 transition-transform opacity-80"
1931
- }), e.reset(r);
1932
- var f = e.sibling(r, 2);
1933
- e.each(
1934
- f,
1935
- 21,
1936
- () => e.get(M),
1937
- e.index,
1938
- (u, j, R) => {
1939
- const T = e.derived(() => a.visibleAnnotationIds.has(e.get(j).id));
1940
- var c = ka();
1941
- c.__click = (U) => {
1942
- U.preventDefault(), H(e.get(j).id);
1943
- };
1944
- var g = e.child(c), S = e.child(g);
1945
- {
1946
- var O = (U) => {
1947
- We(U, { size: 16, weight: "bold" });
1948
- }, I = (U) => {
1949
- Je(U, { size: 16, weight: "bold" });
1950
- };
1951
- e.if(S, (U) => {
1952
- e.get(T) ? U(O) : U(I, !1);
1953
- });
1954
- }
1955
- e.reset(g);
1956
- var v = e.sibling(g, 2), y = e.child(v), E = e.child(y);
1957
- E.textContent = `#${R + 1}`;
1958
- var Y = e.sibling(E, 2);
1959
- {
1960
- var G = (U) => {
1961
- var N = La(), $ = e.child(N, !0);
1962
- e.reset(N), e.template_effect(() => e.set_text($, e.get(j).label)), e.append(U, N);
1963
- };
1964
- e.if(Y, (U) => {
1965
- e.get(j).label && e.get(j).label !== e.get(j).content && U(G);
1966
- });
1967
- }
1968
- e.reset(y);
1969
- var m = e.sibling(y, 2), L = e.child(m);
1970
- {
1971
- var z = (U) => {
1972
- var N = e.comment(), $ = e.first_child(N);
1973
- e.html($, () => e.get(j).content), e.append(U, N);
1974
- }, q = (U) => {
1975
- var N = e.text();
1976
- e.template_effect(() => e.set_text(N, e.get(j).content || "(No content)")), e.append(U, N);
1977
- };
1978
- e.if(L, (U) => {
1979
- e.get(j).isHtml ? U(z) : U(q, !1);
1980
- });
1981
- }
1982
- e.reset(m), e.reset(v), e.reset(c), e.template_effect(() => e.set_class(m, 1, `text-sm prose prose-sm max-w-none prose-p:my-0 prose-a:text-blue-500 wrap-break-word text-left ${e.get(T) ? "" : "opacity-50"}`)), e.append(u, c);
1983
- },
1984
- (u) => {
1985
- var j = Pa();
1986
- e.append(u, j);
1987
- }
1988
- ), e.reset(f), e.reset(_), e.reset(P), e.template_effect(
1989
- (u, j, R) => {
1990
- e.set_attribute(n, "title", u), e.set_text(d, `${j ?? ""} `), e.set_text(Z, R);
1991
- },
1992
- [
1993
- () => e.get(b) ? X.hide_all_annotations() : X.show_all_annotations(),
1994
- () => X.annotations_count({ count: e.get(l).length }),
1995
- () => X.visible_count({ count: a.visibleAnnotationIds.size })
1996
- ]
1997
- ), e.append(A, P);
1998
- };
1999
- e.if(k, (A) => {
2000
- a.showAnnotations && A(D);
2001
- });
2002
- }
2003
- e.append(s, w), e.pop();
2004
- }
2005
- e.delegate(["click"]);
2006
- var ja = e.from_html('<button class="absolute top-1 right-1 btn btn-error btn-xs btn-circle z-20" aria-label="Close Gallery"><!></button>'), Da = e.from_html('<div><div role="button" tabindex="0" aria-label="Drag Gallery"><div></div></div></div>'), Ra = e.from_html('<img class="object-contain w-full h-full" loading="lazy" draggable="false"/>'), Oa = e.from_html('<span class="opacity-20 text-4xl">?</span>'), Ga = e.from_html('<button><div class="aspect-4/3 bg-base-300 rounded overflow-hidden relative w-full flex items-center justify-center"><!></div> <div class="text-xs font-medium truncate w-full opacity-70 group-hover:opacity-100"><span class="font-bold mr-1"> </span> </div></button>'), Ea = e.from_html('<div class="absolute bottom-0 right-0 w-6 h-6 cursor-se-resize resize-handle bg-accent hover:bg-accent-focus transition-colors z-50" style="clip-path: polygon(100% 0, 0 100%, 100% 100%);" role="button" tabindex="0" aria-label="Resize"></div>'), Fa = e.from_html('<div role="group"><span class="font-bold text-primary opacity-50">Dock Top</span></div> <div role="group"><span class="font-bold text-primary opacity-50">Dock Bottom</span></div> <div role="group"><span class="font-bold text-primary opacity-50 vertical-rl rotate-180" style="writing-mode: vertical-rl;">Dock Left</span></div> <div role="group"><span class="font-bold text-primary opacity-50 vertical-rl rotate-180" style="writing-mode: vertical-rl;">Dock Right</span></div>', 1), Na = e.from_html("<div><!> <!> <div><div></div></div> <!></div> <!>", 1);
2007
- function fe(s, t) {
2008
- e.push(t, !0);
2009
- const a = de(le);
2010
- let l = e.derived(() => {
2011
- var d;
2012
- return ((d = a.config.gallery) == null ? void 0 : d.draggable) ?? !0;
2013
- }), i = e.derived(() => {
2014
- var d;
2015
- return ((d = a.config.gallery) == null ? void 0 : d.showCloseButton) ?? !0;
2016
- }), b = e.state(!1), H = { x: 0, y: 0, w: 0, h: 0 }, p = e.state(null), M = e.derived(() => !t.canvases || !Array.isArray(t.canvases) ? [] : t.canvases.map((d, B) => {
2017
- let Z = "";
2018
- try {
2019
- if (d.getThumbnail) {
2020
- const C = d.getThumbnail();
2021
- C && (Z = typeof C == "string" ? C : C.id || C["@id"]);
2022
- }
2023
- } catch (C) {
2024
- console.warn("Error getting thumbnail", C);
2025
- }
2026
- if (!Z) {
2027
- let C = d.getImages();
2028
- if ((!C || !C.length) && d.getContent && (C = d.getContent()), C && C.length > 0) {
2029
- const f = C[0];
2030
- let u = f.getResource ? f.getResource() : null;
2031
- if (!u && f.getBody) {
2032
- const j = f.getBody();
2033
- Array.isArray(j) && j.length > 0 ? u = j[0] : j && (u = j);
2034
- }
2035
- if (u && !u.id && !u.__jsonld && (!u.getServices || u.getServices().length === 0) && (u = null), !u) {
2036
- const j = f.__jsonld || f;
2037
- j.body && (u = Array.isArray(j.body) ? j.body[0] : j.body);
2038
- }
2039
- if (u) {
2040
- const R = (() => {
2041
- let c = [];
2042
- if (u.getServices && (c = u.getServices()), !c || c.length === 0) {
2043
- const g = u.__jsonld || u;
2044
- g.service && (c = Array.isArray(g.service) ? g.service : [g.service]);
2045
- }
2046
- return c;
2047
- })();
2048
- let T = !1;
2049
- if (R.length > 0) {
2050
- const c = R[0];
2051
- let g = "";
2052
- try {
2053
- if (g = c.getProfile ? c.getProfile() : c.profile || "", typeof g == "object" && g) {
2054
- const I = g;
2055
- g = I.value || I.id || I["@id"] || JSON.stringify(I);
2056
- }
2057
- } catch {
2058
- }
2059
- const S = String(g ?? "").toLowerCase();
2060
- (S.includes("level0") || S.includes("level-0")) && (T = !0);
2061
- const O = c.id || c["@id"];
2062
- T || (Z = `${O}/full/200,/0/default.jpg`);
2063
- }
2064
- if (!Z && (Z = u.id || u["@id"], !Z)) {
2065
- let c = null;
2066
- if (f.__jsonld && f.__jsonld.body ? c = f.__jsonld.body : f.body && (c = f.body), c) {
2067
- const g = Array.isArray(c) ? c[0] : c;
2068
- Z = g.id || g["@id"];
2069
- }
2070
- }
2071
- }
2072
- }
2073
- }
2074
- return {
2075
- id: d.id,
2076
- label: d.getLabel().length ? d.getLabel()[0].value : `Canvas ${B + 1}`,
2077
- src: Z,
2078
- index: B
2079
- };
2080
- }));
2081
- function w(d) {
2082
- if (!a.isGalleryDragging) return;
2083
- let B = d.clientX - a.galleryDragOffset.x, Z = d.clientY - a.galleryDragOffset.y;
2084
- const C = Math.max(0, window.innerWidth - a.gallerySize.width), f = Math.max(0, window.innerHeight - a.gallerySize.height);
2085
- B = Math.max(0, Math.min(B, C)), Z = Math.max(0, Math.min(Z, f)), a.galleryPosition = { x: B, y: Z };
2086
- const u = a.galleryCenterPanelRect;
2087
- if (!u) {
2088
- console.warn("[Gallery] No center panel rect available");
2089
- return;
2090
- }
2091
- const j = d.clientX, R = d.clientY, T = 60;
2092
- a.dragOverSide = null, j >= u.left && j <= u.left + T ? a.dragOverSide = "left" : j <= u.right && j >= u.right - T ? a.dragOverSide = "right" : R >= u.top && R <= u.top + T ? a.dragOverSide = "top" : R <= u.bottom && R >= u.bottom - T && (a.dragOverSide = "bottom");
2093
- }
2094
- function k() {
2095
- const d = a.dragOverSide;
2096
- console.log("[Gallery] stopDrag. dropTarget:", d), a.isGalleryDragging = !1, a.dragOverSide = null, window.removeEventListener("mousemove", w), window.removeEventListener("mouseup", k), d && (a.dockSide = d);
2097
- }
2098
- function D(d) {
2099
- d.stopPropagation(), e.set(b, !0), H = {
2100
- x: d.clientX,
2101
- y: d.clientY,
2102
- w: a.gallerySize.width,
2103
- h: a.gallerySize.height
2104
- }, window.addEventListener("mousemove", A), window.addEventListener("mouseup", P);
2105
- }
2106
- function A(d) {
2107
- if (!e.get(b)) return;
2108
- const B = d.clientX - H.x, Z = d.clientY - H.y;
2109
- a.gallerySize = {
2110
- width: Math.max(200, H.w + B),
2111
- height: Math.max(200, H.h + Z)
2112
- };
2113
- }
2114
- function P() {
2115
- e.set(b, !1), window.removeEventListener("mousemove", A), window.removeEventListener("mouseup", P);
2116
- }
2117
- function _(d) {
2118
- a.setCanvas(d);
2119
- }
2120
- let r = e.state(e.proxy(a.dockSide));
2121
- e.user_effect(() => {
2122
- const d = a.dockSide;
2123
- e.set(r, d === "none" || d === "top" || d === "bottom" || d === "left" || d === "right" ? d : "none", !0);
2124
- }), e.user_effect(() => {
2125
- a.dockSide !== e.get(r) && (a.dockSide = e.get(r), a.isGalleryDockedBottom = e.get(r) === "bottom", a.isGalleryDockedRight = e.get(r) === "right");
2126
- });
2127
- let n = e.derived(() => e.get(r) === "top" || e.get(r) === "bottom" || e.get(r) === "none" && a.gallerySize.height < 320);
2128
- function h(d) {
2129
- var f, u;
2130
- if (!e.get(
2131
- l
2132
- // Dragging disabled in config
2133
- ) || d.target.closest(".resize-handle")) return;
2134
- const B = e.get(r) !== "none";
2135
- if (B) {
2136
- let j = Math.max(0, d.clientX - 150), R = Math.max(0, d.clientY - 20);
2137
- const T = Math.max(0, window.innerWidth - 300), c = Math.max(0, window.innerHeight - 400);
2138
- j = Math.min(j, T), R = Math.min(R, c), a.galleryPosition = { x: j, y: R }, a.galleryDragOffset = { x: d.clientX - j, y: d.clientY - R };
2139
- } else
2140
- a.galleryDragOffset = {
2141
- x: d.clientX - a.galleryPosition.x,
2142
- y: d.clientY - a.galleryPosition.y
2143
- };
2144
- const Z = (f = e.get(p)) == null ? void 0 : f.getRootNode(), C = ((u = Z == null ? void 0 : Z.getElementById) == null ? void 0 : u.call(Z, "triiiceratops-center-panel")) ?? document.getElementById("triiiceratops-center-panel");
2145
- C ? (a.galleryCenterPanelRect = C.getBoundingClientRect(), console.log("[Gallery] Captured center panel rect:", a.galleryCenterPanelRect)) : console.warn("[Gallery] Could not find center panel in startDrag"), a.isGalleryDragging = !0, window.addEventListener("mousemove", w), window.addEventListener("mouseup", k), B && e.set(r, "none");
2146
- }
2147
- var x = e.comment(), V = e.first_child(x);
2148
- {
2149
- var o = (d) => {
2150
- var B = Na(), Z = e.first_child(B), C = e.child(Z);
2151
- {
2152
- var f = (I) => {
2153
- var v = ja();
2154
- v.__click = () => a.toggleThumbnailGallery();
2155
- var y = e.child(v);
2156
- Ue(y, { size: 16, weight: "bold" }), e.reset(v), e.append(I, v);
2157
- };
2158
- e.if(C, (I) => {
2159
- e.get(i) && I(f);
2160
- });
2161
- }
2162
- var u = e.sibling(C, 2);
2163
- {
2164
- var j = (I) => {
2165
- var v = Da(), y = e.child(v);
2166
- y.__mousedown = h;
2167
- var E = e.child(y);
2168
- e.reset(y), e.reset(v), e.template_effect(() => {
2169
- e.set_class(v, 1, "bg-base-100 flex shrink-0 select-none relative " + (e.get(r) === "bottom" || e.get(r) === "top" ? "flex-row h-full items-center border-r border-base-200" : "flex-col w-full border-b border-base-200")), e.set_class(y, 1, "cursor-move flex items-center justify-center hover:bg-base-200/50 active:bg-base-200 transition-colors " + (e.get(r) === "bottom" || e.get(r) === "top" ? "w-8 h-full" : "h-6 w-full")), e.set_class(E, 1, "bg-base-300 rounded-full " + (e.get(r) === "bottom" || e.get(r) === "top" ? "w-1.5 h-12" : "w-12 h-1.5"));
2170
- }), e.append(I, v);
2171
- };
2172
- e.if(u, (I) => {
2173
- (e.get(l) || e.get(r) === "none") && I(j);
2174
- });
2175
- }
2176
- var R = e.sibling(u, 2), T = e.child(R);
2177
- e.each(T, 21, () => e.get(M), e.index, (I, v) => {
2178
- var y = Ga();
2179
- y.__click = () => _(e.get(v).id);
2180
- var E = e.child(y), Y = e.child(E);
2181
- {
2182
- var G = (N) => {
2183
- var $ = Ra();
2184
- e.template_effect(() => {
2185
- e.set_attribute($, "src", e.get(v).src), e.set_attribute($, "alt", e.get(v).label);
2186
- }), e.append(N, $);
2187
- }, m = (N) => {
2188
- var $ = Oa();
2189
- e.append(N, $);
2190
- };
2191
- e.if(Y, (N) => {
2192
- e.get(v).src ? N(G) : N(m, !1);
2193
- });
2194
- }
2195
- e.reset(E);
2196
- var L = e.sibling(E, 2), z = e.child(L), q = e.child(z);
2197
- e.reset(z);
2198
- var U = e.sibling(z);
2199
- e.reset(L), e.reset(y), e.template_effect(() => {
2200
- e.set_class(y, 1, `group flex flex-col gap-1 p-1 rounded hover:bg-base-200 transition-colors text-left relative shrink-0 ${e.get(n) ? "w-[140px]" : ""} ${a.canvasId === e.get(v).id ? "ring-2 ring-primary bg-primary/5" : ""}`), e.set_attribute(y, "aria-label", `Select canvas ${e.get(v).label ?? ""}`), e.set_text(q, `${e.get(v).index + 1}.`), e.set_text(U, ` ${e.get(v).label ?? ""}`);
2201
- }), e.append(I, y);
2202
- }), e.reset(T), e.reset(R);
2203
- var c = e.sibling(R, 2);
2204
- {
2205
- var g = (I) => {
2206
- var v = Ea();
2207
- v.__mousedown = D, e.append(I, v);
2208
- };
2209
- e.if(c, (I) => {
2210
- e.get(r) === "none" && I(g);
2211
- });
2212
- }
2213
- e.reset(Z), e.bind_this(Z, (I) => e.set(p, I), () => e.get(p));
2214
- var S = e.sibling(Z, 2);
2215
- {
2216
- var O = (I) => {
2217
- var v = Fa(), y = e.first_child(v), E = e.sibling(y, 2), Y = e.sibling(E, 2), G = e.sibling(Y, 2);
2218
- e.template_effect(() => {
2219
- e.set_class(y, 1, `absolute top-2 left-2 right-2 h-16 rounded-xl border-4 border-dashed border-primary/40 z-999 pointer-events-none flex items-center justify-center transition-all duration-200 ${a.dragOverSide === "top" ? "bg-primary/20 scale-105" : "bg-base-100/50"}`), e.set_class(E, 1, `absolute bottom-2 left-2 right-2 h-16 rounded-xl border-4 border-dashed border-primary/40 z-999 pointer-events-none flex items-center justify-center transition-all duration-200 ${a.dragOverSide === "bottom" ? "bg-primary/20 scale-105" : "bg-base-100/50"}`), e.set_class(Y, 1, `absolute top-2 bottom-2 left-2 w-16 rounded-xl border-4 border-dashed border-primary/40 z-999 pointer-events-none flex items-center justify-center transition-all duration-200 ${a.dragOverSide === "left" ? "bg-primary/20 scale-105" : "bg-base-100/50"}`), e.set_class(G, 1, `absolute top-2 bottom-2 right-2 w-16 rounded-xl border-4 border-dashed border-primary/40 z-999 pointer-events-none flex items-center justify-center transition-all duration-300 ${a.dragOverSide === "right" ? "bg-primary/20 scale-105" : "bg-base-100/50"}`);
2220
- }), e.append(I, v);
2221
- };
2222
- e.if(S, (I) => {
2223
- a.isGalleryDragging && I(O);
2224
- });
2225
- }
2226
- e.template_effect(() => {
2227
- e.set_class(Z, 1, (e.get(r) !== "none" ? `relative z-50 bg-base-100 shadow-xl border-base-300 flex transition-all duration-200 select-none w-full h-full
2228
- ${e.get(r) === "bottom" || e.get(r) === "top" ? "flex-row border-t" : ""}
2229
- ${e.get(r) === "left" || e.get(r) === "right" ? "flex-col border-x" : ""}` : "fixed z-900 bg-base-100 shadow-2xl rounded-lg flex flex-col border border-base-300 overflow-hidden select-none") + (a.isGalleryDragging ? " pointer-events-none opacity-80" : "")), e.set_style(Z, e.get(r) !== "none" ? "" : `left: ${a.galleryPosition.x}px; top: ${a.galleryPosition.y}px; width: ${a.gallerySize.width}px; height: ${a.gallerySize.height}px;`), e.set_class(R, 1, `flex-1 p-1 bg-base-100 ${e.get(n) ? "overflow-x-auto overflow-y-hidden h-full" : "overflow-y-auto overflow-x-hidden"}`), e.set_class(T, 1, e.clsx(e.get(n) ? "flex flex-row gap-2 h-full items-center" : "grid gap-2")), e.set_style(T, e.get(n) ? "" : "grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));");
2230
- }), e.append(d, B);
2231
- };
2232
- e.if(V, (d) => {
2233
- a.showThumbnailGallery && d(o);
2234
- });
2235
- }
2236
- e.append(s, x), e.pop();
2237
- }
2238
- e.delegate(["click", "mousedown"]);
2239
- var Ua = e.from_svg('<path d="M84,100A12,12,0,0,1,96,88h64a12,12,0,0,1,0,24H96A12,12,0,0,1,84,100Zm12,52h64a12,12,0,0,0,0-24H96a12,12,0,0,0,0,24ZM236,56V184a20,20,0,0,1-20,20H157.89l-12.52,21.92a20,20,0,0,1-34.74,0L98.11,204H40a20,20,0,0,1-20-20V56A20,20,0,0,1,40,36H216A20,20,0,0,1,236,56Zm-24,4H44V180h61.07a12,12,0,0,1,10.42,6.05L128,207.94l12.51-21.89A12,12,0,0,1,150.93,180H212Z"></path>'), Ya = e.from_svg('<path d="M224,56V184a8,8,0,0,1-8,8H150.93l-16,28a8,8,0,0,1-13.9,0l-16-28H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8H216A8,8,0,0,1,224,56Z" opacity="0.2"></path><path d="M88,104a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,104Zm8,40h64a8,8,0,0,0,0-16H96a8,8,0,0,0,0,16ZM232,56V184a16,16,0,0,1-16,16H155.57l-13.68,23.94a16,16,0,0,1-27.78,0L100.43,200H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Zm-16,0H40V184h65.07a8,8,0,0,1,7,4l16,28,16-28a8,8,0,0,1,7-4H216Z"></path>', 1), qa = e.from_svg('<path d="M216,40H40A16,16,0,0,0,24,56V184a16,16,0,0,0,16,16h60.43l13.68,23.94a16,16,0,0,0,27.78,0L155.57,200H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM160,144H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Z"></path>'), Xa = e.from_svg('<path d="M166,104a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,104Zm-6,26H96a6,6,0,0,0,0,12h64a6,6,0,0,0,0-12Zm70-74V184a14,14,0,0,1-14,14H154.41L140.16,223a14,14,0,0,1-24.32,0L101.59,198H40a14,14,0,0,1-14-14V56A14,14,0,0,1,40,42H216A14,14,0,0,1,230,56Zm-12,0a2,2,0,0,0-2-2H40a2,2,0,0,0-2,2V184a2,2,0,0,0,2,2h65.07a6,6,0,0,1,5.21,3l16,28a2,2,0,0,0,3.48,0l16-28a6,6,0,0,1,5.21-3H216a2,2,0,0,0,2-2Z"></path>'), Qa = e.from_svg('<path d="M88,104a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,104Zm8,40h64a8,8,0,0,0,0-16H96a8,8,0,0,0,0,16ZM232,56V184a16,16,0,0,1-16,16H155.57l-13.68,23.94a16,16,0,0,1-27.78,0L100.43,200H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Zm-16,0H40V184h65.07a8,8,0,0,1,7,4l16,28,16-28a8,8,0,0,1,7-4H216Z"></path>'), Wa = e.from_svg('<path d="M164,104a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,104Zm-4,28H96a4,4,0,0,0,0,8h64a4,4,0,0,0,0-8Zm68-76V184a12,12,0,0,1-12,12H153.25L138.42,222a12,12,0,0,1-20.84,0L102.75,196H40a12,12,0,0,1-12-12V56A12,12,0,0,1,40,44H216A12,12,0,0,1,228,56Zm-8,0a4,4,0,0,0-4-4H40a4,4,0,0,0-4,4V184a4,4,0,0,0,4,4h65.07a4,4,0,0,1,3.47,2l16,28a4,4,0,0,0,6.94,0l16-28a4,4,0,0,1,3.47-2H216a4,4,0,0,0,4-4Z"></path>'), Ja = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2240
- function Ka(s, t) {
2241
- e.push(t, !0);
2242
- const a = se();
2243
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2244
- function M(r) {
2245
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2246
- return o;
2247
- }
2248
- var w = Ja();
2249
- e.attribute_effect(
2250
- w,
2251
- (r, n) => ({
2252
- xmlns: "http://www.w3.org/2000/svg",
2253
- role: "img",
2254
- width: e.get(H),
2255
- height: e.get(H),
2256
- fill: e.get(b),
2257
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2258
- viewBox: "0 0 256 256",
2259
- ...r,
2260
- ...n
2261
- }),
2262
- [() => M(a), () => M(l)]
2263
- );
2264
- var k = e.child(w);
2265
- {
2266
- var D = (r) => {
2267
- var n = e.comment(), h = e.first_child(n);
2268
- e.snippet(h, () => t.children), e.append(r, n);
2269
- };
2270
- e.if(k, (r) => {
2271
- t.children && r(D);
2272
- });
2273
- }
2274
- var A = e.sibling(k, 2);
2275
- {
2276
- var P = (r) => {
2277
- var n = Ua();
2278
- e.append(r, n);
2279
- }, _ = (r) => {
2280
- var n = e.comment(), h = e.first_child(n);
2281
- {
2282
- var x = (o) => {
2283
- var d = Ya();
2284
- e.next(), e.append(o, d);
2285
- }, V = (o) => {
2286
- var d = e.comment(), B = e.first_child(d);
2287
- {
2288
- var Z = (f) => {
2289
- var u = qa();
2290
- e.append(f, u);
2291
- }, C = (f) => {
2292
- var u = e.comment(), j = e.first_child(u);
2293
- {
2294
- var R = (c) => {
2295
- var g = Xa();
2296
- e.append(c, g);
2297
- }, T = (c) => {
2298
- var g = e.comment(), S = e.first_child(g);
2299
- {
2300
- var O = (v) => {
2301
- var y = Qa();
2302
- e.append(v, y);
2303
- }, I = (v) => {
2304
- var y = e.comment(), E = e.first_child(y);
2305
- {
2306
- var Y = (m) => {
2307
- var L = Wa();
2308
- e.append(m, L);
2309
- }, G = (m) => {
2310
- var L = e.text();
2311
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2312
- };
2313
- e.if(
2314
- E,
2315
- (m) => {
2316
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2317
- },
2318
- !0
2319
- );
2320
- }
2321
- e.append(v, y);
2322
- };
2323
- e.if(
2324
- S,
2325
- (v) => {
2326
- e.get(i) === "regular" ? v(O) : v(I, !1);
2327
- },
2328
- !0
2329
- );
2330
- }
2331
- e.append(c, g);
2332
- };
2333
- e.if(
2334
- j,
2335
- (c) => {
2336
- e.get(i) === "light" ? c(R) : c(T, !1);
2337
- },
2338
- !0
2339
- );
2340
- }
2341
- e.append(f, u);
2342
- };
2343
- e.if(
2344
- B,
2345
- (f) => {
2346
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2347
- },
2348
- !0
2349
- );
2350
- }
2351
- e.append(o, d);
2352
- };
2353
- e.if(
2354
- h,
2355
- (o) => {
2356
- e.get(i) === "duotone" ? o(x) : o(V, !1);
2357
- },
2358
- !0
2359
- );
2360
- }
2361
- e.append(r, n);
2362
- };
2363
- e.if(A, (r) => {
2364
- e.get(i) === "bold" ? r(P) : r(_, !1);
2365
- });
2366
- }
2367
- e.reset(w), e.append(s, w), e.pop();
2368
- }
2369
- var $a = e.from_svg('<path d="M148,96V48a12,12,0,0,1,24,0V84h36a12,12,0,0,1,0,24H160A12,12,0,0,1,148,96ZM96,148H48a12,12,0,0,0,0,24H84v36a12,12,0,0,0,24,0V160A12,12,0,0,0,96,148Zm112,0H160a12,12,0,0,0-12,12v48a12,12,0,0,0,24,0V172h36a12,12,0,0,0,0-24ZM96,36A12,12,0,0,0,84,48V84H48a12,12,0,0,0,0,24H96a12,12,0,0,0,12-12V48A12,12,0,0,0,96,36Z"></path>'), er = e.from_svg('<path d="M208,64V192a16,16,0,0,1-16,16H64a16,16,0,0,1-16-16V64A16,16,0,0,1,64,48H192A16,16,0,0,1,208,64Z" opacity="0.2"></path><path d="M152,96V48a8,8,0,0,1,16,0V88h40a8,8,0,0,1,0,16H160A8,8,0,0,1,152,96ZM96,152H48a8,8,0,0,0,0,16H88v40a8,8,0,0,0,16,0V160A8,8,0,0,0,96,152Zm112,0H160a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V168h40a8,8,0,0,0,0-16ZM96,40a8,8,0,0,0-8,8V88H48a8,8,0,0,0,0,16H96a8,8,0,0,0,8-8V48A8,8,0,0,0,96,40Z"></path>', 1), tr = e.from_svg('<path d="M152,96V48a8,8,0,0,1,13.66-5.66l48,48A8,8,0,0,1,208,104H160A8,8,0,0,1,152,96ZM96,152H48a8,8,0,0,0-5.66,13.66l48,48A8,8,0,0,0,104,208V160A8,8,0,0,0,96,152ZM99.06,40.61a8,8,0,0,0-8.72,1.73l-48,48A8,8,0,0,0,48,104H96a8,8,0,0,0,8-8V48A8,8,0,0,0,99.06,40.61ZM208,152H160a8,8,0,0,0-8,8v48a8,8,0,0,0,13.66,5.66l48-48A8,8,0,0,0,208,152Z"></path>'), ar = e.from_svg('<path d="M154,96V48a6,6,0,0,1,12,0V90h42a6,6,0,0,1,0,12H160A6,6,0,0,1,154,96ZM96,154H48a6,6,0,0,0,0,12H90v42a6,6,0,0,0,12,0V160A6,6,0,0,0,96,154Zm112,0H160a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V166h42a6,6,0,0,0,0-12ZM96,42a6,6,0,0,0-6,6V90H48a6,6,0,0,0,0,12H96a6,6,0,0,0,6-6V48A6,6,0,0,0,96,42Z"></path>'), rr = e.from_svg('<path d="M152,96V48a8,8,0,0,1,16,0V88h40a8,8,0,0,1,0,16H160A8,8,0,0,1,152,96ZM96,152H48a8,8,0,0,0,0,16H88v40a8,8,0,0,0,16,0V160A8,8,0,0,0,96,152Zm112,0H160a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V168h40a8,8,0,0,0,0-16ZM96,40a8,8,0,0,0-8,8V88H48a8,8,0,0,0,0,16H96a8,8,0,0,0,8-8V48A8,8,0,0,0,96,40Z"></path>'), ir = e.from_svg('<path d="M156,96V48a4,4,0,0,1,8,0V92h44a4,4,0,0,1,0,8H160A4,4,0,0,1,156,96ZM96,156H48a4,4,0,0,0,0,8H92v44a4,4,0,0,0,8,0V160A4,4,0,0,0,96,156Zm112,0H160a4,4,0,0,0-4,4v48a4,4,0,0,0,8,0V164h44a4,4,0,0,0,0-8ZM96,44a4,4,0,0,0-4,4V92H48a4,4,0,0,0,0,8H96a4,4,0,0,0,4-4V48A4,4,0,0,0,96,44Z"></path>'), nr = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2370
- function sr(s, t) {
2371
- e.push(t, !0);
2372
- const a = se();
2373
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2374
- function M(r) {
2375
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2376
- return o;
2377
- }
2378
- var w = nr();
2379
- e.attribute_effect(
2380
- w,
2381
- (r, n) => ({
2382
- xmlns: "http://www.w3.org/2000/svg",
2383
- role: "img",
2384
- width: e.get(H),
2385
- height: e.get(H),
2386
- fill: e.get(b),
2387
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2388
- viewBox: "0 0 256 256",
2389
- ...r,
2390
- ...n
2391
- }),
2392
- [() => M(a), () => M(l)]
2393
- );
2394
- var k = e.child(w);
2395
- {
2396
- var D = (r) => {
2397
- var n = e.comment(), h = e.first_child(n);
2398
- e.snippet(h, () => t.children), e.append(r, n);
2399
- };
2400
- e.if(k, (r) => {
2401
- t.children && r(D);
2402
- });
2403
- }
2404
- var A = e.sibling(k, 2);
2405
- {
2406
- var P = (r) => {
2407
- var n = $a();
2408
- e.append(r, n);
2409
- }, _ = (r) => {
2410
- var n = e.comment(), h = e.first_child(n);
2411
- {
2412
- var x = (o) => {
2413
- var d = er();
2414
- e.next(), e.append(o, d);
2415
- }, V = (o) => {
2416
- var d = e.comment(), B = e.first_child(d);
2417
- {
2418
- var Z = (f) => {
2419
- var u = tr();
2420
- e.append(f, u);
2421
- }, C = (f) => {
2422
- var u = e.comment(), j = e.first_child(u);
2423
- {
2424
- var R = (c) => {
2425
- var g = ar();
2426
- e.append(c, g);
2427
- }, T = (c) => {
2428
- var g = e.comment(), S = e.first_child(g);
2429
- {
2430
- var O = (v) => {
2431
- var y = rr();
2432
- e.append(v, y);
2433
- }, I = (v) => {
2434
- var y = e.comment(), E = e.first_child(y);
2435
- {
2436
- var Y = (m) => {
2437
- var L = ir();
2438
- e.append(m, L);
2439
- }, G = (m) => {
2440
- var L = e.text();
2441
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2442
- };
2443
- e.if(
2444
- E,
2445
- (m) => {
2446
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2447
- },
2448
- !0
2449
- );
2450
- }
2451
- e.append(v, y);
2452
- };
2453
- e.if(
2454
- S,
2455
- (v) => {
2456
- e.get(i) === "regular" ? v(O) : v(I, !1);
2457
- },
2458
- !0
2459
- );
2460
- }
2461
- e.append(c, g);
2462
- };
2463
- e.if(
2464
- j,
2465
- (c) => {
2466
- e.get(i) === "light" ? c(R) : c(T, !1);
2467
- },
2468
- !0
2469
- );
2470
- }
2471
- e.append(f, u);
2472
- };
2473
- e.if(
2474
- B,
2475
- (f) => {
2476
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2477
- },
2478
- !0
2479
- );
2480
- }
2481
- e.append(o, d);
2482
- };
2483
- e.if(
2484
- h,
2485
- (o) => {
2486
- e.get(i) === "duotone" ? o(x) : o(V, !1);
2487
- },
2488
- !0
2489
- );
2490
- }
2491
- e.append(r, n);
2492
- };
2493
- e.if(A, (r) => {
2494
- e.get(i) === "bold" ? r(P) : r(_, !1);
2495
- });
2496
- }
2497
- e.reset(w), e.append(s, w), e.pop();
2498
- }
2499
- var or = e.from_svg('<path d="M220,48V88a12,12,0,0,1-24,0V60H168a12,12,0,0,1,0-24h40A12,12,0,0,1,220,48ZM88,196H60V168a12,12,0,0,0-24,0v40a12,12,0,0,0,12,12H88a12,12,0,0,0,0-24Zm120-40a12,12,0,0,0-12,12v28H168a12,12,0,0,0,0,24h40a12,12,0,0,0,12-12V168A12,12,0,0,0,208,156ZM88,36H48A12,12,0,0,0,36,48V88a12,12,0,0,0,24,0V60H88a12,12,0,0,0,0-24Z"></path>'), lr = e.from_svg('<path d="M208,48V208H48V48Z" opacity="0.2"></path><path d="M216,48V88a8,8,0,0,1-16,0V56H168a8,8,0,0,1,0-16h40A8,8,0,0,1,216,48ZM88,200H56V168a8,8,0,0,0-16,0v40a8,8,0,0,0,8,8H88a8,8,0,0,0,0-16Zm120-40a8,8,0,0,0-8,8v32H168a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V168A8,8,0,0,0,208,160ZM88,40H48a8,8,0,0,0-8,8V88a8,8,0,0,0,16,0V56H88a8,8,0,0,0,0-16Z"></path>', 1), dr = e.from_svg('<path d="M93.66,202.34A8,8,0,0,1,88,216H48a8,8,0,0,1-8-8V168a8,8,0,0,1,13.66-5.66ZM88,40H48a8,8,0,0,0-8,8V88a8,8,0,0,0,13.66,5.66l40-40A8,8,0,0,0,88,40ZM211.06,160.61a8,8,0,0,0-8.72,1.73l-40,40A8,8,0,0,0,168,216h40a8,8,0,0,0,8-8V168A8,8,0,0,0,211.06,160.61ZM208,40H168a8,8,0,0,0-5.66,13.66l40,40A8,8,0,0,0,216,88V48A8,8,0,0,0,208,40Z"></path>'), cr = e.from_svg('<path d="M214,48V88a6,6,0,0,1-12,0V54H168a6,6,0,0,1,0-12h40A6,6,0,0,1,214,48ZM88,202H54V168a6,6,0,0,0-12,0v40a6,6,0,0,0,6,6H88a6,6,0,0,0,0-12Zm120-40a6,6,0,0,0-6,6v34H168a6,6,0,0,0,0,12h40a6,6,0,0,0,6-6V168A6,6,0,0,0,208,162ZM88,42H48a6,6,0,0,0-6,6V88a6,6,0,0,0,12,0V54H88a6,6,0,0,0,0-12Z"></path>'), vr = e.from_svg('<path d="M216,48V88a8,8,0,0,1-16,0V56H168a8,8,0,0,1,0-16h40A8,8,0,0,1,216,48ZM88,200H56V168a8,8,0,0,0-16,0v40a8,8,0,0,0,8,8H88a8,8,0,0,0,0-16Zm120-40a8,8,0,0,0-8,8v32H168a8,8,0,0,0,0,16h40a8,8,0,0,0,8-8V168A8,8,0,0,0,208,160ZM88,40H48a8,8,0,0,0-8,8V88a8,8,0,0,0,16,0V56H88a8,8,0,0,0,0-16Z"></path>'), fr = e.from_svg('<path d="M212,48V88a4,4,0,0,1-8,0V52H168a4,4,0,0,1,0-8h40A4,4,0,0,1,212,48ZM88,204H52V168a4,4,0,0,0-8,0v40a4,4,0,0,0,4,4H88a4,4,0,0,0,0-8Zm120-40a4,4,0,0,0-4,4v36H168a4,4,0,0,0,0,8h40a4,4,0,0,0,4-4V168A4,4,0,0,0,208,164ZM88,44H48a4,4,0,0,0-4,4V88a4,4,0,0,0,8,0V52H88a4,4,0,0,0,0-8Z"></path>'), hr = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2500
- function gr(s, t) {
2501
- e.push(t, !0);
2502
- const a = se();
2503
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2504
- function M(r) {
2505
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2506
- return o;
2507
- }
2508
- var w = hr();
2509
- e.attribute_effect(
2510
- w,
2511
- (r, n) => ({
2512
- xmlns: "http://www.w3.org/2000/svg",
2513
- role: "img",
2514
- width: e.get(H),
2515
- height: e.get(H),
2516
- fill: e.get(b),
2517
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2518
- viewBox: "0 0 256 256",
2519
- ...r,
2520
- ...n
2521
- }),
2522
- [() => M(a), () => M(l)]
2523
- );
2524
- var k = e.child(w);
2525
- {
2526
- var D = (r) => {
2527
- var n = e.comment(), h = e.first_child(n);
2528
- e.snippet(h, () => t.children), e.append(r, n);
2529
- };
2530
- e.if(k, (r) => {
2531
- t.children && r(D);
2532
- });
2533
- }
2534
- var A = e.sibling(k, 2);
2535
- {
2536
- var P = (r) => {
2537
- var n = or();
2538
- e.append(r, n);
2539
- }, _ = (r) => {
2540
- var n = e.comment(), h = e.first_child(n);
2541
- {
2542
- var x = (o) => {
2543
- var d = lr();
2544
- e.next(), e.append(o, d);
2545
- }, V = (o) => {
2546
- var d = e.comment(), B = e.first_child(d);
2547
- {
2548
- var Z = (f) => {
2549
- var u = dr();
2550
- e.append(f, u);
2551
- }, C = (f) => {
2552
- var u = e.comment(), j = e.first_child(u);
2553
- {
2554
- var R = (c) => {
2555
- var g = cr();
2556
- e.append(c, g);
2557
- }, T = (c) => {
2558
- var g = e.comment(), S = e.first_child(g);
2559
- {
2560
- var O = (v) => {
2561
- var y = vr();
2562
- e.append(v, y);
2563
- }, I = (v) => {
2564
- var y = e.comment(), E = e.first_child(y);
2565
- {
2566
- var Y = (m) => {
2567
- var L = fr();
2568
- e.append(m, L);
2569
- }, G = (m) => {
2570
- var L = e.text();
2571
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2572
- };
2573
- e.if(
2574
- E,
2575
- (m) => {
2576
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2577
- },
2578
- !0
2579
- );
2580
- }
2581
- e.append(v, y);
2582
- };
2583
- e.if(
2584
- S,
2585
- (v) => {
2586
- e.get(i) === "regular" ? v(O) : v(I, !1);
2587
- },
2588
- !0
2589
- );
2590
- }
2591
- e.append(c, g);
2592
- };
2593
- e.if(
2594
- j,
2595
- (c) => {
2596
- e.get(i) === "light" ? c(R) : c(T, !1);
2597
- },
2598
- !0
2599
- );
2600
- }
2601
- e.append(f, u);
2602
- };
2603
- e.if(
2604
- B,
2605
- (f) => {
2606
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2607
- },
2608
- !0
2609
- );
2610
- }
2611
- e.append(o, d);
2612
- };
2613
- e.if(
2614
- h,
2615
- (o) => {
2616
- e.get(i) === "duotone" ? o(x) : o(V, !1);
2617
- },
2618
- !0
2619
- );
2620
- }
2621
- e.append(r, n);
2622
- };
2623
- e.if(A, (r) => {
2624
- e.get(i) === "bold" ? r(P) : r(_, !1);
2625
- });
2626
- }
2627
- e.reset(w), e.append(s, w), e.pop();
2628
- }
2629
- var pr = e.from_svg('<path d="M108,84a16,16,0,1,1,16,16A16,16,0,0,1,108,84Zm128,44A108,108,0,1,1,128,20,108.12,108.12,0,0,1,236,128Zm-24,0a84,84,0,1,0-84,84A84.09,84.09,0,0,0,212,128Zm-72,36.68V132a20,20,0,0,0-20-20,12,12,0,0,0-4,23.32V168a20,20,0,0,0,20,20,12,12,0,0,0,4-23.32Z"></path>'), ur = e.from_svg('<path d="M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z" opacity="0.2"></path><path d="M144,176a8,8,0,0,1-8,8,16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40A8,8,0,0,1,144,176Zm88-48A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128ZM124,96a12,12,0,1,0-12-12A12,12,0,0,0,124,96Z"></path>', 1), mr = e.from_svg('<path d="M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm-4,48a12,12,0,1,1-12,12A12,12,0,0,1,124,72Zm12,112a16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40a8,8,0,0,1,0,16Z"></path>'), _r = e.from_svg('<path d="M142,176a6,6,0,0,1-6,6,14,14,0,0,1-14-14V128a2,2,0,0,0-2-2,6,6,0,0,1,0-12,14,14,0,0,1,14,14v40a2,2,0,0,0,2,2A6,6,0,0,1,142,176ZM124,94a10,10,0,1,0-10-10A10,10,0,0,0,124,94Zm106,34A102,102,0,1,1,128,26,102.12,102.12,0,0,1,230,128Zm-12,0a90,90,0,1,0-90,90A90.1,90.1,0,0,0,218,128Z"></path>'), br = e.from_svg('<path d="M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm16-40a8,8,0,0,1-8,8,16,16,0,0,1-16-16V128a8,8,0,0,1,0-16,16,16,0,0,1,16,16v40A8,8,0,0,1,144,176ZM112,84a12,12,0,1,1,12,12A12,12,0,0,1,112,84Z"></path>'), wr = e.from_svg('<path d="M140,176a4,4,0,0,1-4,4,12,12,0,0,1-12-12V128a4,4,0,0,0-4-4,4,4,0,0,1,0-8,12,12,0,0,1,12,12v40a4,4,0,0,0,4,4A4,4,0,0,1,140,176ZM124,92a8,8,0,1,0-8-8A8,8,0,0,0,124,92Zm104,36A100,100,0,1,1,128,28,100.11,100.11,0,0,1,228,128Zm-8,0a92,92,0,1,0-92,92A92.1,92.1,0,0,0,220,128Z"></path>'), yr = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2630
- function Ar(s, t) {
2631
- e.push(t, !0);
2632
- const a = se();
2633
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2634
- function M(r) {
2635
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2636
- return o;
2637
- }
2638
- var w = yr();
2639
- e.attribute_effect(
2640
- w,
2641
- (r, n) => ({
2642
- xmlns: "http://www.w3.org/2000/svg",
2643
- role: "img",
2644
- width: e.get(H),
2645
- height: e.get(H),
2646
- fill: e.get(b),
2647
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2648
- viewBox: "0 0 256 256",
2649
- ...r,
2650
- ...n
2651
- }),
2652
- [() => M(a), () => M(l)]
2653
- );
2654
- var k = e.child(w);
2655
- {
2656
- var D = (r) => {
2657
- var n = e.comment(), h = e.first_child(n);
2658
- e.snippet(h, () => t.children), e.append(r, n);
2659
- };
2660
- e.if(k, (r) => {
2661
- t.children && r(D);
2662
- });
2663
- }
2664
- var A = e.sibling(k, 2);
2665
- {
2666
- var P = (r) => {
2667
- var n = pr();
2668
- e.append(r, n);
2669
- }, _ = (r) => {
2670
- var n = e.comment(), h = e.first_child(n);
2671
- {
2672
- var x = (o) => {
2673
- var d = ur();
2674
- e.next(), e.append(o, d);
2675
- }, V = (o) => {
2676
- var d = e.comment(), B = e.first_child(d);
2677
- {
2678
- var Z = (f) => {
2679
- var u = mr();
2680
- e.append(f, u);
2681
- }, C = (f) => {
2682
- var u = e.comment(), j = e.first_child(u);
2683
- {
2684
- var R = (c) => {
2685
- var g = _r();
2686
- e.append(c, g);
2687
- }, T = (c) => {
2688
- var g = e.comment(), S = e.first_child(g);
2689
- {
2690
- var O = (v) => {
2691
- var y = br();
2692
- e.append(v, y);
2693
- }, I = (v) => {
2694
- var y = e.comment(), E = e.first_child(y);
2695
- {
2696
- var Y = (m) => {
2697
- var L = wr();
2698
- e.append(m, L);
2699
- }, G = (m) => {
2700
- var L = e.text();
2701
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2702
- };
2703
- e.if(
2704
- E,
2705
- (m) => {
2706
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2707
- },
2708
- !0
2709
- );
2710
- }
2711
- e.append(v, y);
2712
- };
2713
- e.if(
2714
- S,
2715
- (v) => {
2716
- e.get(i) === "regular" ? v(O) : v(I, !1);
2717
- },
2718
- !0
2719
- );
2720
- }
2721
- e.append(c, g);
2722
- };
2723
- e.if(
2724
- j,
2725
- (c) => {
2726
- e.get(i) === "light" ? c(R) : c(T, !1);
2727
- },
2728
- !0
2729
- );
2730
- }
2731
- e.append(f, u);
2732
- };
2733
- e.if(
2734
- B,
2735
- (f) => {
2736
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2737
- },
2738
- !0
2739
- );
2740
- }
2741
- e.append(o, d);
2742
- };
2743
- e.if(
2744
- h,
2745
- (o) => {
2746
- e.get(i) === "duotone" ? o(x) : o(V, !1);
2747
- },
2748
- !0
2749
- );
2750
- }
2751
- e.append(r, n);
2752
- };
2753
- e.if(A, (r) => {
2754
- e.get(i) === "bold" ? r(P) : r(_, !1);
2755
- });
2756
- }
2757
- e.reset(w), e.append(s, w), e.pop();
2758
- }
2759
- var xr = e.from_svg('<path d="M232.49,215.51,185,168a92.12,92.12,0,1,0-17,17l47.53,47.54a12,12,0,0,0,17-17ZM44,112a68,68,0,1,1,68,68A68.07,68.07,0,0,1,44,112Z"></path>'), Mr = e.from_svg('<path d="M192,112a80,80,0,1,1-80-80A80,80,0,0,1,192,112Z" opacity="0.2"></path><path d="M229.66,218.34,179.6,168.28a88.21,88.21,0,1,0-11.32,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z"></path>', 1), Zr = e.from_svg('<path d="M168,112a56,56,0,1,1-56-56A56,56,0,0,1,168,112Zm61.66,117.66a8,8,0,0,1-11.32,0l-50.06-50.07a88,88,0,1,1,11.32-11.31l50.06,50.06A8,8,0,0,1,229.66,229.66ZM112,184a72,72,0,1,0-72-72A72.08,72.08,0,0,0,112,184Z"></path>'), Hr = e.from_svg('<path d="M228.24,219.76l-51.38-51.38a86.15,86.15,0,1,0-8.48,8.48l51.38,51.38a6,6,0,0,0,8.48-8.48ZM38,112a74,74,0,1,1,74,74A74.09,74.09,0,0,1,38,112Z"></path>'), Vr = e.from_svg('<path d="M229.66,218.34l-50.07-50.06a88.11,88.11,0,1,0-11.31,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z"></path>'), Sr = e.from_svg('<path d="M226.83,221.17l-52.7-52.7a84.1,84.1,0,1,0-5.66,5.66l52.7,52.7a4,4,0,0,0,5.66-5.66ZM36,112a76,76,0,1,1,76,76A76.08,76.08,0,0,1,36,112Z"></path>'), Cr = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2760
- function at(s, t) {
2761
- e.push(t, !0);
2762
- const a = se();
2763
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2764
- function M(r) {
2765
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2766
- return o;
2767
- }
2768
- var w = Cr();
2769
- e.attribute_effect(
2770
- w,
2771
- (r, n) => ({
2772
- xmlns: "http://www.w3.org/2000/svg",
2773
- role: "img",
2774
- width: e.get(H),
2775
- height: e.get(H),
2776
- fill: e.get(b),
2777
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2778
- viewBox: "0 0 256 256",
2779
- ...r,
2780
- ...n
2781
- }),
2782
- [() => M(a), () => M(l)]
2783
- );
2784
- var k = e.child(w);
2785
- {
2786
- var D = (r) => {
2787
- var n = e.comment(), h = e.first_child(n);
2788
- e.snippet(h, () => t.children), e.append(r, n);
2789
- };
2790
- e.if(k, (r) => {
2791
- t.children && r(D);
2792
- });
2793
- }
2794
- var A = e.sibling(k, 2);
2795
- {
2796
- var P = (r) => {
2797
- var n = xr();
2798
- e.append(r, n);
2799
- }, _ = (r) => {
2800
- var n = e.comment(), h = e.first_child(n);
2801
- {
2802
- var x = (o) => {
2803
- var d = Mr();
2804
- e.next(), e.append(o, d);
2805
- }, V = (o) => {
2806
- var d = e.comment(), B = e.first_child(d);
2807
- {
2808
- var Z = (f) => {
2809
- var u = Zr();
2810
- e.append(f, u);
2811
- }, C = (f) => {
2812
- var u = e.comment(), j = e.first_child(u);
2813
- {
2814
- var R = (c) => {
2815
- var g = Hr();
2816
- e.append(c, g);
2817
- }, T = (c) => {
2818
- var g = e.comment(), S = e.first_child(g);
2819
- {
2820
- var O = (v) => {
2821
- var y = Vr();
2822
- e.append(v, y);
2823
- }, I = (v) => {
2824
- var y = e.comment(), E = e.first_child(y);
2825
- {
2826
- var Y = (m) => {
2827
- var L = Sr();
2828
- e.append(m, L);
2829
- }, G = (m) => {
2830
- var L = e.text();
2831
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2832
- };
2833
- e.if(
2834
- E,
2835
- (m) => {
2836
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2837
- },
2838
- !0
2839
- );
2840
- }
2841
- e.append(v, y);
2842
- };
2843
- e.if(
2844
- S,
2845
- (v) => {
2846
- e.get(i) === "regular" ? v(O) : v(I, !1);
2847
- },
2848
- !0
2849
- );
2850
- }
2851
- e.append(c, g);
2852
- };
2853
- e.if(
2854
- j,
2855
- (c) => {
2856
- e.get(i) === "light" ? c(R) : c(T, !1);
2857
- },
2858
- !0
2859
- );
2860
- }
2861
- e.append(f, u);
2862
- };
2863
- e.if(
2864
- B,
2865
- (f) => {
2866
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2867
- },
2868
- !0
2869
- );
2870
- }
2871
- e.append(o, d);
2872
- };
2873
- e.if(
2874
- h,
2875
- (o) => {
2876
- e.get(i) === "duotone" ? o(x) : o(V, !1);
2877
- },
2878
- !0
2879
- );
2880
- }
2881
- e.append(r, n);
2882
- };
2883
- e.if(A, (r) => {
2884
- e.get(i) === "bold" ? r(P) : r(_, !1);
2885
- });
2886
- }
2887
- e.reset(w), e.append(s, w), e.pop();
2888
- }
2889
- var Ir = e.from_svg('<path d="M228,128a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,128ZM40,76H216a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24ZM216,180H40a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Z"></path>'), zr = e.from_svg('<path d="M216,64V192H40V64Z" opacity="0.2"></path><path d="M224,128a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,128ZM40,72H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16ZM216,184H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z"></path>', 1), Lr = e.from_svg('<path d="M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM192,184H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Zm0-48H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Zm0-48H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Z"></path>'), kr = e.from_svg('<path d="M222,128a6,6,0,0,1-6,6H40a6,6,0,0,1,0-12H216A6,6,0,0,1,222,128ZM40,70H216a6,6,0,0,0,0-12H40a6,6,0,0,0,0,12ZM216,186H40a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Z"></path>'), Pr = e.from_svg('<path d="M224,128a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,128ZM40,72H216a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16ZM216,184H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z"></path>'), Tr = e.from_svg('<path d="M220,128a4,4,0,0,1-4,4H40a4,4,0,0,1,0-8H216A4,4,0,0,1,220,128ZM40,68H216a4,4,0,0,0,0-8H40a4,4,0,0,0,0,8ZM216,188H40a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Z"></path>'), Br = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
2890
- function jr(s, t) {
2891
- e.push(t, !0);
2892
- const a = se();
2893
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
2894
- function M(r) {
2895
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
2896
- return o;
2897
- }
2898
- var w = Br();
2899
- e.attribute_effect(
2900
- w,
2901
- (r, n) => ({
2902
- xmlns: "http://www.w3.org/2000/svg",
2903
- role: "img",
2904
- width: e.get(H),
2905
- height: e.get(H),
2906
- fill: e.get(b),
2907
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
2908
- viewBox: "0 0 256 256",
2909
- ...r,
2910
- ...n
2911
- }),
2912
- [() => M(a), () => M(l)]
2913
- );
2914
- var k = e.child(w);
2915
- {
2916
- var D = (r) => {
2917
- var n = e.comment(), h = e.first_child(n);
2918
- e.snippet(h, () => t.children), e.append(r, n);
2919
- };
2920
- e.if(k, (r) => {
2921
- t.children && r(D);
2922
- });
2923
- }
2924
- var A = e.sibling(k, 2);
2925
- {
2926
- var P = (r) => {
2927
- var n = Ir();
2928
- e.append(r, n);
2929
- }, _ = (r) => {
2930
- var n = e.comment(), h = e.first_child(n);
2931
- {
2932
- var x = (o) => {
2933
- var d = zr();
2934
- e.next(), e.append(o, d);
2935
- }, V = (o) => {
2936
- var d = e.comment(), B = e.first_child(d);
2937
- {
2938
- var Z = (f) => {
2939
- var u = Lr();
2940
- e.append(f, u);
2941
- }, C = (f) => {
2942
- var u = e.comment(), j = e.first_child(u);
2943
- {
2944
- var R = (c) => {
2945
- var g = kr();
2946
- e.append(c, g);
2947
- }, T = (c) => {
2948
- var g = e.comment(), S = e.first_child(g);
2949
- {
2950
- var O = (v) => {
2951
- var y = Pr();
2952
- e.append(v, y);
2953
- }, I = (v) => {
2954
- var y = e.comment(), E = e.first_child(y);
2955
- {
2956
- var Y = (m) => {
2957
- var L = Tr();
2958
- e.append(m, L);
2959
- }, G = (m) => {
2960
- var L = e.text();
2961
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
2962
- };
2963
- e.if(
2964
- E,
2965
- (m) => {
2966
- e.get(i) === "thin" ? m(Y) : m(G, !1);
2967
- },
2968
- !0
2969
- );
2970
- }
2971
- e.append(v, y);
2972
- };
2973
- e.if(
2974
- S,
2975
- (v) => {
2976
- e.get(i) === "regular" ? v(O) : v(I, !1);
2977
- },
2978
- !0
2979
- );
2980
- }
2981
- e.append(c, g);
2982
- };
2983
- e.if(
2984
- j,
2985
- (c) => {
2986
- e.get(i) === "light" ? c(R) : c(T, !1);
2987
- },
2988
- !0
2989
- );
2990
- }
2991
- e.append(f, u);
2992
- };
2993
- e.if(
2994
- B,
2995
- (f) => {
2996
- e.get(i) === "fill" ? f(Z) : f(C, !1);
2997
- },
2998
- !0
2999
- );
3000
- }
3001
- e.append(o, d);
3002
- };
3003
- e.if(
3004
- h,
3005
- (o) => {
3006
- e.get(i) === "duotone" ? o(x) : o(V, !1);
3007
- },
3008
- !0
3009
- );
3010
- }
3011
- e.append(r, n);
3012
- };
3013
- e.if(A, (r) => {
3014
- e.get(i) === "bold" ? r(P) : r(_, !1);
3015
- });
3016
- }
3017
- e.reset(w), e.append(s, w), e.pop();
3018
- }
3019
- var Dr = e.from_svg('<path d="M184,44H72A20,20,0,0,0,52,64V192a20,20,0,0,0,20,20H184a20,20,0,0,0,20-20V64A20,20,0,0,0,184,44Zm-4,144H76V68H180ZM244,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0ZM36,56V200a12,12,0,0,1-24,0V56a12,12,0,0,1,24,0Z"></path>'), Rr = e.from_svg('<path d="M200,64V192a8,8,0,0,1-8,8H64a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H192A8,8,0,0,1,200,64Z" opacity="0.2"></path><path d="M192,48H64A16,16,0,0,0,48,64V192a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64A16,16,0,0,0,192,48Zm0,144H64V64H192V192ZM240,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0ZM32,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Z"></path>', 1), Or = e.from_svg('<path d="M208,64V192a16,16,0,0,1-16,16H64a16,16,0,0,1-16-16V64A16,16,0,0,1,64,48H192A16,16,0,0,1,208,64Zm24-16a8,8,0,0,0-8,8V200a8,8,0,0,0,16,0V56A8,8,0,0,0,232,48ZM24,48a8,8,0,0,0-8,8V200a8,8,0,0,0,16,0V56A8,8,0,0,0,24,48Z"></path>'), Gr = e.from_svg('<path d="M192,50H64A14,14,0,0,0,50,64V192a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V64A14,14,0,0,0,192,50Zm2,142a2,2,0,0,1-2,2H64a2,2,0,0,1-2-2V64a2,2,0,0,1,2-2H192a2,2,0,0,1,2,2ZM238,56V200a6,6,0,0,1-12,0V56a6,6,0,0,1,12,0ZM30,56V200a6,6,0,0,1-12,0V56a6,6,0,0,1,12,0Z"></path>'), Er = e.from_svg('<path d="M192,48H64A16,16,0,0,0,48,64V192a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64A16,16,0,0,0,192,48Zm0,144H64V64H192V192ZM240,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0ZM32,56V200a8,8,0,0,1-16,0V56a8,8,0,0,1,16,0Z"></path>'), Fr = e.from_svg('<path d="M192,52H64A12,12,0,0,0,52,64V192a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V64A12,12,0,0,0,192,52Zm4,140a4,4,0,0,1-4,4H64a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H192a4,4,0,0,1,4,4ZM236,56V200a4,4,0,0,1-8,0V56a4,4,0,0,1,8,0ZM28,56V200a4,4,0,0,1-8,0V56a4,4,0,0,1,8,0Z"></path>'), Nr = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
3020
- function Ur(s, t) {
3021
- e.push(t, !0);
3022
- const a = se();
3023
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
3024
- function M(r) {
3025
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
3026
- return o;
3027
- }
3028
- var w = Nr();
3029
- e.attribute_effect(
3030
- w,
3031
- (r, n) => ({
3032
- xmlns: "http://www.w3.org/2000/svg",
3033
- role: "img",
3034
- width: e.get(H),
3035
- height: e.get(H),
3036
- fill: e.get(b),
3037
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
3038
- viewBox: "0 0 256 256",
3039
- ...r,
3040
- ...n
3041
- }),
3042
- [() => M(a), () => M(l)]
3043
- );
3044
- var k = e.child(w);
3045
- {
3046
- var D = (r) => {
3047
- var n = e.comment(), h = e.first_child(n);
3048
- e.snippet(h, () => t.children), e.append(r, n);
3049
- };
3050
- e.if(k, (r) => {
3051
- t.children && r(D);
3052
- });
3053
- }
3054
- var A = e.sibling(k, 2);
3055
- {
3056
- var P = (r) => {
3057
- var n = Dr();
3058
- e.append(r, n);
3059
- }, _ = (r) => {
3060
- var n = e.comment(), h = e.first_child(n);
3061
- {
3062
- var x = (o) => {
3063
- var d = Rr();
3064
- e.next(), e.append(o, d);
3065
- }, V = (o) => {
3066
- var d = e.comment(), B = e.first_child(d);
3067
- {
3068
- var Z = (f) => {
3069
- var u = Or();
3070
- e.append(f, u);
3071
- }, C = (f) => {
3072
- var u = e.comment(), j = e.first_child(u);
3073
- {
3074
- var R = (c) => {
3075
- var g = Gr();
3076
- e.append(c, g);
3077
- }, T = (c) => {
3078
- var g = e.comment(), S = e.first_child(g);
3079
- {
3080
- var O = (v) => {
3081
- var y = Er();
3082
- e.append(v, y);
3083
- }, I = (v) => {
3084
- var y = e.comment(), E = e.first_child(y);
3085
- {
3086
- var Y = (m) => {
3087
- var L = Fr();
3088
- e.append(m, L);
3089
- }, G = (m) => {
3090
- var L = e.text();
3091
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
3092
- };
3093
- e.if(
3094
- E,
3095
- (m) => {
3096
- e.get(i) === "thin" ? m(Y) : m(G, !1);
3097
- },
3098
- !0
3099
- );
3100
- }
3101
- e.append(v, y);
3102
- };
3103
- e.if(
3104
- S,
3105
- (v) => {
3106
- e.get(i) === "regular" ? v(O) : v(I, !1);
3107
- },
3108
- !0
3109
- );
3110
- }
3111
- e.append(c, g);
3112
- };
3113
- e.if(
3114
- j,
3115
- (c) => {
3116
- e.get(i) === "light" ? c(R) : c(T, !1);
3117
- },
3118
- !0
3119
- );
3120
- }
3121
- e.append(f, u);
3122
- };
3123
- e.if(
3124
- B,
3125
- (f) => {
3126
- e.get(i) === "fill" ? f(Z) : f(C, !1);
3127
- },
3128
- !0
3129
- );
3130
- }
3131
- e.append(o, d);
3132
- };
3133
- e.if(
3134
- h,
3135
- (o) => {
3136
- e.get(i) === "duotone" ? o(x) : o(V, !1);
3137
- },
3138
- !0
3139
- );
3140
- }
3141
- e.append(r, n);
3142
- };
3143
- e.if(A, (r) => {
3144
- e.get(i) === "bold" ? r(P) : r(_, !1);
3145
- });
3146
- }
3147
- e.reset(w), e.append(s, w), e.pop();
3148
- }
3149
- var Yr = e.from_html("<button><!></button>"), qr = e.from_html("<button><!></button>"), Xr = e.from_html("<button><!></button>"), Qr = e.from_html("<button><!></button>"), Wr = e.from_html("<button><!></button>"), Jr = e.from_html('<div class="tooltip tooltip-left"><!></div>'), Kr = e.from_html('<div class="tooltip tooltip-left"><!></div>'), $r = e.from_html('<div class="tooltip tooltip-left"><!></div>'), e0 = e.from_html('<div class="tooltip tooltip-top"><!></div>'), t0 = e.from_html('<div class="tooltip tooltip-top"><!></div>'), a0 = e.from_html('<div class="absolute z-600 bottom-6 right-6"><!> <!> <!> <!> <!></div>'), r0 = e.from_html('<div class="tooltip tooltip-left"><!></div>'), i0 = e.from_html('<div class="tooltip tooltip-left"><!></div>'), n0 = e.from_html('<div class="tooltip tooltip-top"><!></div>'), s0 = e.from_html('<div class="tooltip tooltip-top"><!></div>'), o0 = e.from_html('<div class="fab fab-flower fab-top-left absolute z-600 pointer-events-auto bottom-6 right-6"><div tabindex="0" role="button" class="btn btn-lg btn-primary btn-circle shadow-xl"><span class="sr-only"> </span> <!></div> <div class="fab-main-action tooltip tooltip-top"><!></div> <!> <!> <!> <!></div>');
3150
- function l0(s, t) {
3151
- e.push(t, !0);
3152
- const a = (V) => {
3153
- var o = Yr();
3154
- o.__click = () => p.toggleSearchPanel();
3155
- var d = e.child(o);
3156
- at(d, { size: 28, weight: "bold" }), e.reset(o), e.template_effect(
3157
- (B) => {
3158
- e.set_attribute(o, "aria-label", B), e.set_class(o, 1, e.clsx([
3159
- "btn btn-circle btn-lg shadow-lg",
3160
- p.showSearchPanel ? "btn-primary" : "btn-neutral"
3161
- ]));
3162
- },
3163
- [() => X.toggle_search()]
3164
- ), e.append(V, o);
3165
- }, l = (V) => {
3166
- var o = qr();
3167
- o.__click = () => p.toggleThumbnailGallery();
3168
- var d = e.child(o);
3169
- Ur(d, { size: 28, weight: "bold" }), e.reset(o), e.template_effect(
3170
- (B) => {
3171
- e.set_attribute(o, "aria-label", B), e.set_class(o, 1, `btn btn-lg btn-circle shadow-lg ${p.showThumbnailGallery ? "btn-info" : "btn-neutral"}`);
3172
- },
3173
- [
3174
- () => p.showThumbnailGallery ? X.hide_gallery() : X.show_gallery()
3175
- ]
3176
- ), e.append(V, o);
3177
- }, i = (V) => {
3178
- var o = Xr();
3179
- o.__click = () => p.toggleFullScreen();
3180
- var d = e.child(o);
3181
- {
3182
- var B = (C) => {
3183
- sr(C, { size: 28, weight: "bold" });
3184
- }, Z = (C) => {
3185
- gr(C, { size: 28, weight: "bold" });
3186
- };
3187
- e.if(d, (C) => {
3188
- p.isFullScreen ? C(B) : C(Z, !1);
3189
- });
3190
- }
3191
- e.reset(o), e.template_effect(() => e.set_class(o, 1, `btn btn-circle btn-lg shadow-lg transition-all duration-300 ease-out ${p.isFullScreen ? "btn-warning" : "btn-neutral"}`)), e.append(V, o);
3192
- }, b = (V) => {
3193
- var o = Qr();
3194
- o.__click = () => p.toggleAnnotations();
3195
- var d = e.child(o);
3196
- Ka(d, { size: 28, weight: "bold" }), e.reset(o), e.template_effect(
3197
- (B) => {
3198
- e.set_attribute(o, "aria-label", B), e.set_class(o, 1, `btn btn-lg btn-circle shadow-lg ${p.showAnnotations ? "btn-error" : "btn-neutral"}`);
3199
- },
3200
- [() => X.toggle_annotations()]
3201
- ), e.append(V, o);
3202
- }, H = (V) => {
3203
- var o = Wr();
3204
- o.__click = () => p.toggleMetadataDialog();
3205
- var d = e.child(o);
3206
- Ar(d, { size: 28, weight: "bold" }), e.reset(o), e.template_effect(
3207
- (B) => {
3208
- e.set_attribute(o, "aria-label", B), e.set_class(o, 1, `btn btn-lg btn-circle shadow-lg ${p.showMetadataDialog ? "btn-info" : "btn-neutral"}`);
3209
- },
3210
- [() => X.toggle_metadata()]
3211
- ), e.append(V, o);
3212
- }, p = de(le), M = e.derived(() => p.config.rightMenu || {}), w = e.derived(() => e.get(M).showSearch !== !1), k = e.derived(() => e.get(M).showGallery !== !1), D = e.derived(() => e.get(M).showFullscreen !== !1), A = e.derived(() => e.get(M).showAnnotations !== !1), P = e.derived(() => e.get(M).showInfo !== !1), _ = e.derived(() => [
3213
- e.get(w) ? "search" : null,
3214
- e.get(k) ? "gallery" : null,
3215
- e.get(D) ? "fullscreen" : null,
3216
- e.get(A) ? "annotations" : null,
3217
- e.get(P) ? "info" : null
3218
- ].filter((V) => V !== null));
3219
- var r = e.comment(), n = e.first_child(r);
3220
- {
3221
- var h = (V) => {
3222
- var o = a0(), d = e.child(o);
3223
- {
3224
- var B = (g) => {
3225
- var S = Jr(), O = e.child(S);
3226
- a(O), e.reset(S), e.template_effect((I) => e.set_attribute(S, "data-tip", I), [() => X.search()]), e.append(g, S);
3227
- };
3228
- e.if(d, (g) => {
3229
- e.get(w) && g(B);
3230
- });
3231
- }
3232
- var Z = e.sibling(d, 2);
3233
- {
3234
- var C = (g) => {
3235
- var S = Kr(), O = e.child(S);
3236
- l(O), e.reset(S), e.template_effect((I) => e.set_attribute(S, "data-tip", I), [
3237
- () => p.showThumbnailGallery ? X.hide_gallery() : X.show_gallery()
3238
- ]), e.append(g, S);
3239
- };
3240
- e.if(Z, (g) => {
3241
- e.get(k) && g(C);
3242
- });
3243
- }
3244
- var f = e.sibling(Z, 2);
3245
- {
3246
- var u = (g) => {
3247
- var S = $r(), O = e.child(S);
3248
- i(O), e.reset(S), e.template_effect((I) => e.set_attribute(S, "data-tip", I), [
3249
- () => p.isFullScreen ? X.exit_full_screen() : X.enter_full_screen()
3250
- ]), e.append(g, S);
3251
- };
3252
- e.if(f, (g) => {
3253
- e.get(D) && g(u);
3254
- });
3255
- }
3256
- var j = e.sibling(f, 2);
3257
- {
3258
- var R = (g) => {
3259
- var S = e0(), O = e.child(S);
3260
- b(O), e.reset(S), e.template_effect((I) => e.set_attribute(S, "data-tip", I), [
3261
- () => p.showAnnotations ? X.hide_annotations() : X.show_annotations()
3262
- ]), e.append(g, S);
3263
- };
3264
- e.if(j, (g) => {
3265
- e.get(A) && g(R);
3266
- });
3267
- }
3268
- var T = e.sibling(j, 2);
3269
- {
3270
- var c = (g) => {
3271
- var S = t0(), O = e.child(S);
3272
- H(O), e.reset(S), e.template_effect((I) => e.set_attribute(S, "data-tip", I), [() => X.metadata()]), e.append(g, S);
3273
- };
3274
- e.if(T, (g) => {
3275
- e.get(P) && g(c);
3276
- });
3277
- }
3278
- e.reset(o), e.append(V, o);
3279
- }, x = (V) => {
3280
- var o = e.comment(), d = e.first_child(o);
3281
- {
3282
- var B = (Z) => {
3283
- var C = o0(), f = e.child(C), u = e.child(f), j = e.child(u, !0);
3284
- e.reset(u);
3285
- var R = e.sibling(u, 2);
3286
- jr(R, { size: 32, weight: "bold" }), e.reset(f);
3287
- var T = e.sibling(f, 2), c = e.child(T);
3288
- a(c), e.reset(T);
3289
- var g = e.sibling(T, 2);
3290
- {
3291
- var S = (G) => {
3292
- var m = r0(), L = e.child(m);
3293
- l(L), e.reset(m), e.template_effect((z) => e.set_attribute(m, "data-tip", z), [
3294
- () => p.showThumbnailGallery ? X.hide_gallery() : X.show_gallery()
3295
- ]), e.append(G, m);
3296
- };
3297
- e.if(g, (G) => {
3298
- e.get(k) && G(S);
3299
- });
3300
- }
3301
- var O = e.sibling(g, 2);
3302
- {
3303
- var I = (G) => {
3304
- var m = i0(), L = e.child(m);
3305
- i(L), e.reset(m), e.template_effect((z) => e.set_attribute(m, "data-tip", z), [
3306
- () => p.isFullScreen ? X.exit_full_screen() : X.enter_full_screen()
3307
- ]), e.append(G, m);
3308
- };
3309
- e.if(O, (G) => {
3310
- e.get(D) && G(I);
3311
- });
3312
- }
3313
- var v = e.sibling(O, 2);
3314
- {
3315
- var y = (G) => {
3316
- var m = n0(), L = e.child(m);
3317
- b(L), e.reset(m), e.template_effect((z) => e.set_attribute(m, "data-tip", z), [
3318
- () => p.showAnnotations ? X.hide_annotations() : X.show_annotations()
3319
- ]), e.append(G, m);
3320
- };
3321
- e.if(v, (G) => {
3322
- e.get(A) && G(y);
3323
- });
3324
- }
3325
- var E = e.sibling(v, 2);
3326
- {
3327
- var Y = (G) => {
3328
- var m = s0(), L = e.child(m);
3329
- H(L), e.reset(m), e.template_effect((z) => e.set_attribute(m, "data-tip", z), [() => X.metadata()]), e.append(G, m);
3330
- };
3331
- e.if(E, (G) => {
3332
- e.get(P) && G(Y);
3333
- });
3334
- }
3335
- e.reset(C), e.template_effect(
3336
- (G, m) => {
3337
- e.set_text(j, G), e.set_attribute(T, "data-tip", m);
3338
- },
3339
- [() => X.menu(), () => X.search()]
3340
- ), e.append(Z, C);
3341
- };
3342
- e.if(
3343
- d,
3344
- (Z) => {
3345
- e.get(_).length > 1 && Z(B);
3346
- },
3347
- !0
3348
- );
3349
- }
3350
- e.append(V, o);
3351
- };
3352
- e.if(n, (V) => {
3353
- e.get(_).length === 1 ? V(h) : V(x, !1);
3354
- });
3355
- }
3356
- e.append(s, r), e.pop();
3357
- }
3358
- e.delegate(["click"]);
3359
- var d0 = e.from_svg('<path d="M222.41,155.16a12,12,0,0,0-11.56-.69A16,16,0,0,1,188,139,16.2,16.2,0,0,1,202.8,124a15.83,15.83,0,0,1,8,1.5A12,12,0,0,0,228,114.7V72a20,20,0,0,0-20-20H176a40.15,40.15,0,0,0-12.62-29.16,39.67,39.67,0,0,0-29.94-10.76,40.08,40.08,0,0,0-37.34,37C96,50.07,96,51,96,52H64A20,20,0,0,0,44,72v28a40.15,40.15,0,0,0-29.16,12.62A40,40,0,0,0,41.1,179.9a28.3,28.3,0,0,0,2.9.1v28a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V165.31A12,12,0,0,0,222.41,155.16ZM204,204H68V165.31a12,12,0,0,0-17.15-10.84A15.9,15.9,0,0,1,42.8,156,16.2,16.2,0,0,1,28,141.06a16,16,0,0,1,22.82-15.52A12,12,0,0,0,68,114.7V76h42.7a12,12,0,0,0,10.83-17.15A15.9,15.9,0,0,1,120,50.8,16.19,16.19,0,0,1,134.94,36a16,16,0,0,1,15.53,22.81A12,12,0,0,0,161.31,76H204v24c-1,0-1.93,0-2.9.11A40,40,0,0,0,204,180h0Z"></path>'), c0 = e.from_svg('<path d="M204,168a28,28,0,0,0,12-2.69V208a8,8,0,0,1-8,8H64a8,8,0,0,1-8-8V165.31a28,28,0,1,1,0-50.62V72a8,8,0,0,1,8-8h46.69a28,28,0,1,1,50.61,0H208a8,8,0,0,1,8,8v42.69A28,28,0,1,0,204,168Z" opacity="0.2"></path><path d="M220.27,158.54a8,8,0,0,0-7.7-.46,20,20,0,1,1,0-36.16A8,8,0,0,0,224,114.69V72a16,16,0,0,0-16-16H171.78a35.36,35.36,0,0,0,.22-4,36.15,36.15,0,0,0-11.36-26.25,36,36,0,0,0-60.55,23.63,36.56,36.56,0,0,0,.14,6.62H64A16,16,0,0,0,48,72v32.22a35.36,35.36,0,0,0-4-.22,36.12,36.12,0,0,0-26.24,11.36,35.7,35.7,0,0,0-9.69,27,36.08,36.08,0,0,0,33.31,33.6,36.56,36.56,0,0,0,6.62-.14V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V165.31A8,8,0,0,0,220.27,158.54ZM208,208H64V165.31a8,8,0,0,0-11.43-7.23,20,20,0,1,1,0-36.16A8,8,0,0,0,64,114.69V72h46.69a8,8,0,0,0,7.23-11.43,20,20,0,1,1,36.16,0A8,8,0,0,0,161.31,72H208v32.23a35.68,35.68,0,0,0-6.62-.14A36,36,0,0,0,204,176a35.36,35.36,0,0,0,4-.22Z"></path>', 1), v0 = e.from_svg('<path d="M165.78,224H208a16,16,0,0,0,16-16V170.35A8,8,0,0,0,212.94,163a23.37,23.37,0,0,1-8.94,1.77c-13.23,0-24-11.1-24-24.73s10.77-24.73,24-24.73a23.37,23.37,0,0,1,8.94,1.77A8,8,0,0,0,224,109.65V72a16,16,0,0,0-16-16H171.78a35.36,35.36,0,0,0,.22-4,36,36,0,0,0-72,0,35.36,35.36,0,0,0,.22,4H64A16,16,0,0,0,48,72v32.22a35.36,35.36,0,0,0-4-.22,36,36,0,0,0,0,72,35.36,35.36,0,0,0,4-.22V208a16,16,0,0,0,16,16h42.22"></path>'), f0 = e.from_svg('<path d="M219.21,160.24a6,6,0,0,0-5.78-.35,22,22,0,1,1-11.05-41.83,22.15,22.15,0,0,1,11.05,2.06A6,6,0,0,0,222,114.7V72a14,14,0,0,0-14-14H169.48a35,35,0,0,0,.52-6,34.1,34.1,0,0,0-10.73-24.78,33.64,33.64,0,0,0-25.45-9.15A34,34,0,0,0,102.54,58H64A14,14,0,0,0,50,72v34.53a34,34,0,0,0-30.79,10.2,34,34,0,0,0,22.31,57.18,34.34,34.34,0,0,0,8.48-.44V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V165.31A6,6,0,0,0,219.21,160.24ZM210,208a2,2,0,0,1-2,2H64a2,2,0,0,1-2-2V165.31a6,6,0,0,0-6-6,5.92,5.92,0,0,0-2.57.58,22,22,0,0,1-31.38-18.46,22,22,0,0,1,31.38-21.31A6,6,0,0,0,62,114.7V72a2,2,0,0,1,2-2h46.69a6,6,0,0,0,5.42-8.57,22.25,22.25,0,0,1-2-11,22,22,0,1,1,41.83,11A6,6,0,0,0,161.3,70H208a2,2,0,0,1,2,2v34.54a34,34,0,0,0-39.93,31.28,33.71,33.71,0,0,0,9.14,25.45A34.15,34.15,0,0,0,210,173.48Z"></path>'), h0 = e.from_svg('<path d="M220.27,158.54a8,8,0,0,0-7.7-.46,20,20,0,1,1,0-36.16A8,8,0,0,0,224,114.69V72a16,16,0,0,0-16-16H171.78a35.36,35.36,0,0,0,.22-4,36.11,36.11,0,0,0-11.36-26.24,36,36,0,0,0-60.55,23.62,36.56,36.56,0,0,0,.14,6.62H64A16,16,0,0,0,48,72v32.22a35.36,35.36,0,0,0-4-.22,36.12,36.12,0,0,0-26.24,11.36,35.7,35.7,0,0,0-9.69,27,36.08,36.08,0,0,0,33.31,33.6,35.68,35.68,0,0,0,6.62-.14V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V165.31A8,8,0,0,0,220.27,158.54ZM208,208H64V165.31a8,8,0,0,0-11.43-7.23,20,20,0,1,1,0-36.16A8,8,0,0,0,64,114.69V72h46.69a8,8,0,0,0,7.23-11.43,20,20,0,1,1,36.16,0A8,8,0,0,0,161.31,72H208v32.23a35.68,35.68,0,0,0-6.62-.14A36,36,0,0,0,204,176a35.36,35.36,0,0,0,4-.22Z"></path>'), g0 = e.from_svg('<path d="M218.14,161.93a4,4,0,0,0-3.86-.24,24,24,0,0,1-34.23-23.25,24,24,0,0,1,34.23-20.13A4,4,0,0,0,220,114.7V72a12,12,0,0,0-12-12H167a32,32,0,1,0-62.91-10.33A32.57,32.57,0,0,0,105,60H64A12,12,0,0,0,52,72v37a32,32,0,1,0-10.33,62.91A32.28,32.28,0,0,0,52,171v37a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V165.31A4,4,0,0,0,218.14,161.93ZM212,208a4,4,0,0,1-4,4H64a4,4,0,0,1-4-4V165.31a4,4,0,0,0-1.86-3.38,4,4,0,0,0-3.85-.24,24,24,0,0,1-34.24-20.13,24,24,0,0,1,34.24-23.25A4,4,0,0,0,60,114.7V72a4,4,0,0,1,4-4h46.69a4,4,0,0,0,3.62-5.71,24,24,0,0,1,20.13-34.24,24,24,0,0,1,23.25,34.24A4,4,0,0,0,161.31,68H208a4,4,0,0,1,4,4v37a32.57,32.57,0,0,0-10.33-.94A32,32,0,1,0,212,171Z"></path>'), p0 = e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
3360
- function u0(s, t) {
3361
- e.push(t, !0);
3362
- const a = se();
3363
- let l = e.rest_props(t, ["$$slots", "$$events", "$$legacy", "children"]), i = e.derived(() => t.weight ?? a.weight ?? "regular"), b = e.derived(() => t.color ?? a.color ?? "currentColor"), H = e.derived(() => t.size ?? a.size ?? "1em"), p = e.derived(() => t.mirrored ?? a.mirrored ?? !1);
3364
- function M(r) {
3365
- let { weight: n, color: h, size: x, mirrored: V, ...o } = r;
3366
- return o;
3367
- }
3368
- var w = p0();
3369
- e.attribute_effect(
3370
- w,
3371
- (r, n) => ({
3372
- xmlns: "http://www.w3.org/2000/svg",
3373
- role: "img",
3374
- width: e.get(H),
3375
- height: e.get(H),
3376
- fill: e.get(b),
3377
- transform: e.get(p) ? "scale(-1, 1)" : void 0,
3378
- viewBox: "0 0 256 256",
3379
- ...r,
3380
- ...n
3381
- }),
3382
- [() => M(a), () => M(l)]
3383
- );
3384
- var k = e.child(w);
3385
- {
3386
- var D = (r) => {
3387
- var n = e.comment(), h = e.first_child(n);
3388
- e.snippet(h, () => t.children), e.append(r, n);
3389
- };
3390
- e.if(k, (r) => {
3391
- t.children && r(D);
3392
- });
3393
- }
3394
- var A = e.sibling(k, 2);
3395
- {
3396
- var P = (r) => {
3397
- var n = d0();
3398
- e.append(r, n);
3399
- }, _ = (r) => {
3400
- var n = e.comment(), h = e.first_child(n);
3401
- {
3402
- var x = (o) => {
3403
- var d = c0();
3404
- e.next(), e.append(o, d);
3405
- }, V = (o) => {
3406
- var d = e.comment(), B = e.first_child(d);
3407
- {
3408
- var Z = (f) => {
3409
- var u = v0();
3410
- e.append(f, u);
3411
- }, C = (f) => {
3412
- var u = e.comment(), j = e.first_child(u);
3413
- {
3414
- var R = (c) => {
3415
- var g = f0();
3416
- e.append(c, g);
3417
- }, T = (c) => {
3418
- var g = e.comment(), S = e.first_child(g);
3419
- {
3420
- var O = (v) => {
3421
- var y = h0();
3422
- e.append(v, y);
3423
- }, I = (v) => {
3424
- var y = e.comment(), E = e.first_child(y);
3425
- {
3426
- var Y = (m) => {
3427
- var L = g0();
3428
- e.append(m, L);
3429
- }, G = (m) => {
3430
- var L = e.text();
3431
- L.nodeValue = (console.error('Unsupported icon weight. Choose from "thin", "light", "regular", "bold", "fill", or "duotone".'), ""), e.append(m, L);
3432
- };
3433
- e.if(
3434
- E,
3435
- (m) => {
3436
- e.get(i) === "thin" ? m(Y) : m(G, !1);
3437
- },
3438
- !0
3439
- );
3440
- }
3441
- e.append(v, y);
3442
- };
3443
- e.if(
3444
- S,
3445
- (v) => {
3446
- e.get(i) === "regular" ? v(O) : v(I, !1);
3447
- },
3448
- !0
3449
- );
3450
- }
3451
- e.append(c, g);
3452
- };
3453
- e.if(
3454
- j,
3455
- (c) => {
3456
- e.get(i) === "light" ? c(R) : c(T, !1);
3457
- },
3458
- !0
3459
- );
3460
- }
3461
- e.append(f, u);
3462
- };
3463
- e.if(
3464
- B,
3465
- (f) => {
3466
- e.get(i) === "fill" ? f(Z) : f(C, !1);
3467
- },
3468
- !0
3469
- );
3470
- }
3471
- e.append(o, d);
3472
- };
3473
- e.if(
3474
- h,
3475
- (o) => {
3476
- e.get(i) === "duotone" ? o(x) : o(V, !1);
3477
- },
3478
- !0
3479
- );
3480
- }
3481
- e.append(r, n);
3482
- };
3483
- e.if(A, (r) => {
3484
- e.get(i) === "bold" ? r(P) : r(_, !1);
3485
- });
3486
- }
3487
- e.reset(w), e.append(s, w), e.pop();
3488
- }
3489
- var m0 = e.from_html('<div class="tooltip tooltip-right"><button><!></button></div>'), _0 = e.from_html('<div class="absolute left-6 bottom-6 z-50 pointer-events-auto flex flex-col items-start transition-all duration-300"><div></div> <div class="tooltip tooltip-right"><button><!></button></div></div>');
3490
- function b0(s, t) {
3491
- e.push(t, !0);
3492
- const a = de(le);
3493
- let l = e.derived(() => [...a.pluginMenuButtons].sort((w, k) => (w.order ?? 100) - (k.order ?? 100))), i = e.state(!1);
3494
- function b() {
3495
- e.set(i, !e.get(i));
3496
- }
3497
- var H = e.comment(), p = e.first_child(H);
3498
- {
3499
- var M = (w) => {
3500
- var k = _0(), D = e.child(k);
3501
- e.each(D, 21, () => e.get(l), (h) => h.id, (h, x) => {
3502
- const V = e.derived(() => e.get(x).icon);
3503
- var o = m0(), d = e.child(o);
3504
- d.__click = () => {
3505
- e.get(x).onClick(), e.set(i, !1);
3506
- };
3507
- var B = e.child(d);
3508
- e.component(B, () => e.get(V), (Z, C) => {
3509
- C(Z, { size: 28, weight: "bold" });
3510
- }), e.reset(d), e.reset(o), e.template_effect(
3511
- (Z) => {
3512
- e.set_attribute(o, "data-tip", e.get(x).tooltip), e.set_attribute(d, "aria-label", e.get(x).tooltip), e.set_class(d, 1, `btn btn-lg btn-circle shadow-lg ${Z ?? ""}`);
3513
- },
3514
- [
3515
- () => {
3516
- var Z, C;
3517
- return (C = (Z = e.get(x)).isActive) != null && C.call(Z) ? e.get(x).activeClass ?? "btn-primary" : "btn-neutral";
3518
- }
3519
- ]
3520
- ), e.append(h, o);
3521
- }), e.reset(D);
3522
- var A = e.sibling(D, 2), P = e.child(A);
3523
- P.__click = b;
3524
- var _ = e.child(P);
3525
- {
3526
- var r = (h) => {
3527
- Ue(h, { size: 28, weight: "bold" });
3528
- }, n = (h) => {
3529
- u0(h, { size: 28, weight: "bold" });
3530
- };
3531
- e.if(_, (h) => {
3532
- e.get(i) ? h(r) : h(n, !1);
3533
- });
3534
- }
3535
- e.reset(P), e.reset(A), e.reset(k), e.template_effect(
3536
- (h, x) => {
3537
- e.set_class(D, 1, `flex flex-col-reverse gap-3 mb-3 transition-all duration-300 origin-bottom ${e.get(i) ? "opacity-100 translate-y-0 scale-100" : "opacity-0 translate-y-4 scale-90 pointer-events-none"}`), e.set_attribute(A, "data-tip", h), e.set_class(P, 1, `btn btn-lg btn-secondary btn-circle shadow-xl transition-transform duration-300 ${e.get(i) ? "rotate-90" : ""}`), e.set_attribute(P, "aria-label", x);
3538
- },
3539
- [() => X.plugins_tooltip(), () => X.plugins_tooltip()]
3540
- ), e.append(w, k);
3541
- };
3542
- e.if(p, (w) => {
3543
- e.get(l).length > 0 && w(M);
3544
- });
3545
- }
3546
- e.append(s, H), e.pop();
3547
- }
3548
- e.delegate(["click"]);
3549
- var w0 = e.from_html('<div class="mb-6 prose"><p><!></p></div>'), y0 = e.from_html('<dt class="font-bold text-lg opacity-70 mt-6"> </dt> <dd class="text-sm ps-2"><!></dd>', 1), A0 = e.from_html('<dt class="font-bold text-lg opacity-70 mt-6"> </dt> <dd class="text-sm ps-2"><a target="_blank" rel="noreferrer" class="link link-primary break-all"> </a></dd>', 1), x0 = e.from_html('<dt class="font-bold text-lg opacity-70 mt-6"> </dt> <dd class="text-sm ps-2"><!></dd>', 1), M0 = e.from_html('<dialog class="modal"><div class="modal-box w-11/12 max-w-5xl"><form method="dialog"><button class="btn btn-sm btn-circle btn-ghost absolute right-2 top-2">✕</button></form> <h3 class="font-bold text-lg mb-4"> </h3> <div class="py-4 overflow-y-auto max-h-[70vh]"><!> <dl class="grid grid-cols-1 md:grid-cols-[200px_1fr]"><!> <!> <!></dl></div> <div class="modal-action"><form method="dialog"><button class="btn"> </button></form></div></div> <form method="dialog" class="modal-backdrop"><button> </button></form></dialog>');
3550
- function Z0(s, t) {
3551
- e.push(t, !0);
3552
- const a = de(le);
3553
- let l = e.derived(() => a.manifest), i = e.derived(() => {
3554
- const c = ft.current;
3555
- if (!e.get(l)) return [];
3556
- const g = e.get(l).getMetadata();
3557
- return g ? g.map((S) => {
3558
- let O = "", I = "";
3559
- const v = (y) => {
3560
- if (typeof y == "string") return y;
3561
- if (Array.isArray(y)) {
3562
- let E = y.find((Y) => Y.locale === c || Y.language === c);
3563
- return E || (E = y.find((Y) => Y.locale === "en" || Y.language === "en")), E || (E = y.find((Y) => !Y.locale && !Y.language)), E || (E = y[0]), E ? E.value : "";
3564
- }
3565
- return String(y);
3566
- };
3567
- return S.getLabel ? O = v(S.getLabel()) : S.label && (O = v(S.label)), S.getValue ? I = v(S.getValue()) : S.value && (I = v(S.value)), { label: O, value: I };
3568
- }) : [];
3569
- }), b = e.derived(() => e.get(l) ? e.get(l).getDescription() : ""), H = e.derived(() => {
3570
- var c;
3571
- return e.get(l) ? (c = e.get(l).getRequiredStatement()) == null ? void 0 : c.getValue() : "";
3572
- }), p = e.derived(() => e.get(l) ? e.get(l).getLicense() : "");
3573
- var M = M0(), w = e.child(M), k = e.child(w), D = e.child(k);
3574
- D.__click = () => a.toggleMetadataDialog(), e.reset(k);
3575
- var A = e.sibling(k, 2), P = e.child(A, !0);
3576
- e.reset(A);
3577
- var _ = e.sibling(A, 2), r = e.child(_);
3578
- {
3579
- var n = (c) => {
3580
- var g = w0(), S = e.child(g), O = e.child(S);
3581
- e.html(O, () => e.get(b)), e.reset(S), e.reset(g), e.append(c, g);
3582
- };
3583
- e.if(r, (c) => {
3584
- e.get(b) && c(n);
3585
- });
3586
- }
3587
- var h = e.sibling(r, 2), x = e.child(h);
3588
- {
3589
- var V = (c) => {
3590
- var g = y0(), S = e.first_child(g), O = e.child(S, !0);
3591
- e.reset(S);
3592
- var I = e.sibling(S, 2), v = e.child(I);
3593
- e.html(v, () => e.get(H)), e.reset(I), e.template_effect((y) => e.set_text(O, y), [() => X.attribution()]), e.append(c, g);
3594
- };
3595
- e.if(x, (c) => {
3596
- e.get(H) && c(V);
3597
- });
3598
- }
3599
- var o = e.sibling(x, 2);
3600
- {
3601
- var d = (c) => {
3602
- var g = A0(), S = e.first_child(g), O = e.child(S, !0);
3603
- e.reset(S);
3604
- var I = e.sibling(S, 2), v = e.child(I), y = e.child(v, !0);
3605
- e.reset(v), e.reset(I), e.template_effect(
3606
- (E) => {
3607
- e.set_text(O, E), e.set_attribute(v, "href", e.get(p)), e.set_text(y, e.get(p));
3608
- },
3609
- [() => X.license()]
3610
- ), e.append(c, g);
3611
- };
3612
- e.if(o, (c) => {
3613
- e.get(p) && c(d);
3614
- });
3615
- }
3616
- var B = e.sibling(o, 2);
3617
- e.each(B, 17, () => e.get(i), e.index, (c, g) => {
3618
- var S = x0(), O = e.first_child(S), I = e.child(O, !0);
3619
- e.reset(O);
3620
- var v = e.sibling(O, 2), y = e.child(v);
3621
- e.html(y, () => e.get(g).value), e.reset(v), e.template_effect(() => e.set_text(I, e.get(g).label)), e.append(c, S);
3622
- }), e.reset(h), e.reset(_);
3623
- var Z = e.sibling(_, 2), C = e.child(Z), f = e.child(C);
3624
- f.__click = () => a.toggleMetadataDialog();
3625
- var u = e.child(f, !0);
3626
- e.reset(f), e.reset(C), e.reset(Z), e.reset(w);
3627
- var j = e.sibling(w, 2), R = e.child(j);
3628
- R.__click = () => a.toggleMetadataDialog();
3629
- var T = e.child(R, !0);
3630
- e.reset(R), e.reset(j), e.reset(M), e.template_effect(
3631
- (c, g, S) => {
3632
- M.open = a.showMetadataDialog, e.set_text(P, c), e.set_text(u, g), e.set_text(T, S);
3633
- },
3634
- [
3635
- () => e.get(l) ? e.get(l).getLabel().length && e.get(l).getLabel()[0] ? e.get(l).getLabel()[0].value : X.metadata_label_fallback() : X.loading(),
3636
- () => X.close(),
3637
- () => X.close()
3638
- ]
3639
- ), e.append(s, M), e.pop();
3640
- }
3641
- e.delegate(["click"]);
3642
- e.from_svg('<path d="M140,32V64a12,12,0,0,1-24,0V32a12,12,0,0,1,24,0Zm33.25,62.75a12,12,0,0,0,8.49-3.52L204.37,68.6a12,12,0,0,0-17-17L164.77,74.26a12,12,0,0,0,8.48,20.49ZM224,116H192a12,12,0,0,0,0,24h32a12,12,0,0,0,0-24Zm-42.26,48.77a12,12,0,1,0-17,17l22.63,22.63a12,12,0,0,0,17-17ZM128,180a12,12,0,0,0-12,12v32a12,12,0,0,0,24,0V192A12,12,0,0,0,128,180ZM74.26,164.77,51.63,187.4a12,12,0,0,0,17,17l22.63-22.63a12,12,0,1,0-17-17ZM76,128a12,12,0,0,0-12-12H32a12,12,0,0,0,0,24H64A12,12,0,0,0,76,128ZM68.6,51.63a12,12,0,1,0-17,17L74.26,91.23a12,12,0,0,0,17-17Z"></path>');
3643
- e.from_svg('<path d="M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z" opacity="0.2"></path><path d="M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"></path>', 1);
3644
- e.from_svg('<path d="M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm33.94,58.75,17-17a8,8,0,0,1,11.32,11.32l-17,17a8,8,0,0,1-11.31-11.31ZM48,136a8,8,0,0,1,0-16H72a8,8,0,0,1,0,16Zm46.06,37.25-17,17a8,8,0,0,1-11.32-11.32l17-17a8,8,0,0,1,11.31,11.31Zm0-79.19a8,8,0,0,1-11.31,0l-17-17A8,8,0,0,1,77.09,65.77l17,17A8,8,0,0,1,94.06,94.06ZM136,208a8,8,0,0,1-16,0V184a8,8,0,0,1,16,0Zm0-136a8,8,0,0,1-16,0V48a8,8,0,0,1,16,0Zm54.23,118.23a8,8,0,0,1-11.32,0l-17-17a8,8,0,0,1,11.31-11.31l17,17A8,8,0,0,1,190.23,190.23ZM208,136H184a8,8,0,0,1,0-16h24a8,8,0,0,1,0,16Z"></path>');
3645
- e.from_svg('<path d="M134,32V64a6,6,0,0,1-12,0V32a6,6,0,0,1,12,0Zm39.25,56.75A6,6,0,0,0,177.5,87l22.62-22.63a6,6,0,0,0-8.48-8.48L169,78.5a6,6,0,0,0,4.24,10.25ZM224,122H192a6,6,0,0,0,0,12h32a6,6,0,0,0,0-12Zm-46.5,47A6,6,0,0,0,169,177.5l22.63,22.62a6,6,0,0,0,8.48-8.48ZM128,186a6,6,0,0,0-6,6v32a6,6,0,0,0,12,0V192A6,6,0,0,0,128,186ZM78.5,169,55.88,191.64a6,6,0,1,0,8.48,8.48L87,177.5A6,6,0,1,0,78.5,169ZM70,128a6,6,0,0,0-6-6H32a6,6,0,0,0,0,12H64A6,6,0,0,0,70,128ZM64.36,55.88a6,6,0,0,0-8.48,8.48L78.5,87A6,6,0,1,0,87,78.5Z"></path>');
3646
- e.from_svg('<path d="M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"></path>');
3647
- e.from_svg('<path d="M132,32V64a4,4,0,0,1-8,0V32a4,4,0,0,1,8,0Zm41.25,54.75a4,4,0,0,0,2.83-1.18L198.71,63a4,4,0,0,0-5.66-5.66L170.43,79.92a4,4,0,0,0,2.82,6.83ZM224,124H192a4,4,0,0,0,0,8h32a4,4,0,0,0,0-8Zm-47.92,46.43a4,4,0,1,0-5.65,5.65l22.62,22.63a4,4,0,0,0,5.66-5.66ZM128,188a4,4,0,0,0-4,4v32a4,4,0,0,0,8,0V192A4,4,0,0,0,128,188ZM79.92,170.43,57.29,193.05A4,4,0,0,0,63,198.71l22.62-22.63a4,4,0,1,0-5.65-5.65ZM68,128a4,4,0,0,0-4-4H32a4,4,0,0,0,0,8H64A4,4,0,0,0,68,128ZM63,57.29A4,4,0,0,0,57.29,63L79.92,85.57a4,4,0,1,0,5.65-5.65Z"></path>');
3648
- e.from_svg('<svg><!><rect width="256" height="256" fill="none"></rect><!></svg>');
3649
- var H0 = e.from_html('<button class="btn btn-sm btn-circle btn-ghost"><!></button>'), V0 = e.from_html('<span class="loading loading-spinner loading-xs"></span>'), S0 = e.from_html('<div class="flex justify-center p-8"><span class="loading loading-spinner loading-lg text-primary"></span></div>'), C0 = e.from_html('<div class="text-center opacity-50 p-4"> </div>'), I0 = e.from_html('<div class="text-center opacity-50 p-4 text-sm"> </div>'), z0 = e.from_html('<div class="leading-relaxed"><span><!></span> <span class="bg-yellow-200 text-yellow-900 font-bold px-0.5 rounded"><!></span> <span><!></span></div>'), L0 = e.from_html('<div class="leading-relaxed"> </div>'), k0 = e.from_html('<button class="w-full text-left card bg-base-100 shadow hover:shadow-md transition-all p-4 text-sm group border border-transparent hover:border-primary focus:outline-none focus:ring-2 focus:ring-primary"><div class="flex justify-between items-baseline mb-1"><span class="font-bold text-xs opacity-70 bg-base-200 px-1.5 py-0.5 rounded"> </span></div> <!></button>'), P0 = e.from_html('<div class="text-xs font-bold opacity-50 uppercase tracking-wider pb-2"> </div> <!>', 1), T0 = e.from_html('<div class="h-full w-80 bg-base-200 shadow-2xl z-100 flex flex-col border-l border-base-300" role="dialog"><div class="flex items-center justify-between p-4 border-b border-base-300"><h2 class="font-bold text-lg"> </h2> <!></div> <div class="p-4 border-b border-base-300 shrink-0"><div class="relative w-full"><input type="text" class="input input-bordered w-full pr-12"/> <button class="btn btn-primary absolute right-0 top-0 h-full rounded-l-none"><!></button></div></div> <div class="flex-1 overflow-y-auto p-4 space-y-4"><!></div></div>');
3650
- function B0(s, t) {
3651
- e.push(t, !0);
3652
- const a = de(le);
3653
- let l = e.state(""), i = e.derived(() => {
3654
- var D;
3655
- return ((D = a.config.search) == null ? void 0 : D.showCloseButton) ?? !0;
3656
- });
3657
- e.user_effect(() => {
3658
- a.searchQuery !== lt(() => e.get(l)) && e.set(l, a.searchQuery, !0);
3659
- });
3660
- function b() {
3661
- a.search(e.get(l));
3662
- }
3663
- function H(D) {
3664
- D.key === "Enter" && b();
3665
- }
3666
- function p(D) {
3667
- const A = a.canvases[D.canvasIndex];
3668
- A && a.setCanvas(A.id);
3669
- }
3670
- var M = e.comment(), w = e.first_child(M);
3671
- {
3672
- var k = (D) => {
3673
- var A = T0(), P = e.child(A), _ = e.child(P), r = e.child(_, !0);
3674
- e.reset(_);
3675
- var n = e.sibling(_, 2);
3676
- {
3677
- var h = (T) => {
3678
- var c = H0();
3679
- c.__click = () => a.toggleSearchPanel();
3680
- var g = e.child(c);
3681
- Ue(g, { size: 20, weight: "bold" }), e.reset(c), e.template_effect((S) => e.set_attribute(c, "aria-label", S), [() => X.close_search()]), e.append(T, c);
3682
- };
3683
- e.if(n, (T) => {
3684
- e.get(i) && T(h);
3685
- });
3686
- }
3687
- e.reset(P);
3688
- var x = e.sibling(P, 2), V = e.child(x), o = e.child(V);
3689
- e.remove_input_defaults(o), o.__keydown = H;
3690
- var d = e.sibling(o, 2);
3691
- d.__click = b;
3692
- var B = e.child(d);
3693
- {
3694
- var Z = (T) => {
3695
- var c = V0();
3696
- e.append(T, c);
3697
- }, C = (T) => {
3698
- at(T, { size: 20, weight: "bold" });
3699
- };
3700
- e.if(B, (T) => {
3701
- a.isSearching ? T(Z) : T(C, !1);
3702
- });
3703
- }
3704
- e.reset(d), e.reset(V), e.reset(x);
3705
- var f = e.sibling(x, 2), u = e.child(f);
3706
- {
3707
- var j = (T) => {
3708
- var c = S0();
3709
- e.append(T, c);
3710
- }, R = (T) => {
3711
- var c = e.comment(), g = e.first_child(c);
3712
- {
3713
- var S = (I) => {
3714
- var v = C0(), y = e.child(v, !0);
3715
- e.reset(v), e.template_effect((E) => e.set_text(y, E), [
3716
- () => X.search_panel_no_results({ query: a.searchQuery })
3717
- ]), e.append(I, v);
3718
- }, O = (I) => {
3719
- var v = e.comment(), y = e.first_child(v);
3720
- {
3721
- var E = (G) => {
3722
- var m = I0(), L = e.child(m, !0);
3723
- e.reset(m), e.template_effect((z) => e.set_text(L, z), [() => X.search_panel_instruction()]), e.append(G, m);
3724
- }, Y = (G) => {
3725
- var m = P0(), L = e.first_child(m), z = e.child(L, !0);
3726
- e.reset(L);
3727
- var q = e.sibling(L, 2);
3728
- e.each(q, 17, () => a.searchResults, e.index, (U, N) => {
3729
- var $ = k0();
3730
- $.__click = () => p(e.get(N));
3731
- var K = e.child($), W = e.child(K), te = e.child(W, !0);
3732
- e.reset(W), e.reset(K);
3733
- var ae = e.sibling(K, 2);
3734
- {
3735
- var ne = (J) => {
3736
- var re = z0(), ie = e.child(re), ce = e.child(ie);
3737
- e.html(ce, () => e.get(N).before), e.reset(ie);
3738
- var ve = e.sibling(ie, 2), Oe = e.child(ve);
3739
- e.html(Oe, () => e.get(N).match), e.reset(ve);
3740
- var Ye = e.sibling(ve, 2), rt = e.child(Ye);
3741
- e.html(rt, () => e.get(N).after), e.reset(Ye), e.reset(re), e.append(J, re);
3742
- }, Q = (J) => {
3743
- var re = L0(), ie = e.child(re, !0);
3744
- e.reset(re), e.template_effect(() => e.set_text(ie, e.get(N).match)), e.append(J, re);
3745
- };
3746
- e.if(ae, (J) => {
3747
- e.get(N).type === "hit" ? J(ne) : J(Q, !1);
3748
- });
3749
- }
3750
- e.reset($), e.template_effect(() => e.set_text(te, e.get(N).canvasLabel)), e.append(U, $);
3751
- }), e.template_effect((U) => e.set_text(z, U), [
3752
- () => X.search_panel_results_count({ count: a.searchResults.length })
3753
- ]), e.append(G, m);
3754
- };
3755
- e.if(
3756
- y,
3757
- (G) => {
3758
- a.searchResults.length === 0 && !a.searchQuery ? G(E) : G(Y, !1);
3759
- },
3760
- !0
3761
- );
3762
- }
3763
- e.append(I, v);
3764
- };
3765
- e.if(
3766
- g,
3767
- (I) => {
3768
- a.searchResults.length === 0 && a.searchQuery ? I(S) : I(O, !1);
3769
- },
3770
- !0
3771
- );
3772
- }
3773
- e.append(T, c);
3774
- };
3775
- e.if(u, (T) => {
3776
- a.isSearching ? T(j) : T(R, !1);
3777
- });
3778
- }
3779
- e.reset(f), e.reset(A), e.template_effect(
3780
- (T, c, g, S) => {
3781
- e.set_attribute(A, "aria-label", T), e.set_text(r, c), e.set_attribute(o, "placeholder", g), e.set_attribute(d, "aria-label", S);
3782
- },
3783
- [
3784
- () => X.search_panel_title(),
3785
- () => X.search(),
3786
- () => X.search_panel_placeholder(),
3787
- () => X.search_panel_title()
3788
- ]
3789
- ), e.bind_value(o, () => e.get(l), (T) => e.set(l, T)), e.append(D, A);
3790
- };
3791
- e.if(w, (D) => {
3792
- a.showSearchPanel && D(k);
3793
- });
3794
- }
3795
- e.append(s, M), e.pop();
3796
- }
3797
- e.delegate(["click", "keydown"]);
3798
- var j0 = e.from_html('<div class="h-full w-[200px] pointer-events-auto relative"><!></div>'), D0 = e.from_html('<div class="h-full relative pointer-events-auto"><!></div>'), R0 = e.from_html('<div class="flex-none flex flex-row z-20 bg-base-200 border-r border-base-300 transition-all"><!> <!></div>'), O0 = e.from_html('<div class="flex-none h-[140px] w-full pointer-events-auto relative z-20"><!></div>'), G0 = e.from_html('<div class="w-full h-full flex items-center justify-center"><span class="loading loading-spinner loading-lg text-primary"></span></div>'), E0 = e.from_html('<div class="w-full h-full flex items-center justify-center text-error"> </div>'), F0 = e.from_html('<div class="w-full h-full flex items-center justify-center text-base-content/50"> </div>'), N0 = e.from_html('<div class="absolute inset-0 z-40 pointer-events-none"><!></div>'), U0 = e.from_html('<div class="flex-none h-[140px] w-full pointer-events-auto relative z-20"><!></div>'), Y0 = e.from_html('<div class="relative w-full z-40 pointer-events-auto"><!></div>'), q0 = e.from_html('<div class="h-full relative pointer-events-auto"><!></div>'), X0 = e.from_html('<div class="h-full w-[200px] pointer-events-auto relative"><!></div>'), Q0 = e.from_html('<div class="h-full relative pointer-events-auto"><!></div>'), W0 = e.from_html('<div class="flex-none flex flex-row z-20 bg-base-200 border-l border-base-300 transition-all"><!> <!> <!></div>'), J0 = e.from_html('<div id="triiiceratops-viewer" class="flex w-full h-full relative bg-base-100 overflow-hidden"><!> <div id="triiiceratops-center-panel" class="flex-1 relative min-w-0 flex flex-col"><!> <div class="flex-1 relative min-h-0 w-full h-full bg-base-100"><!> <!> <!> <!> <!> <!> <!> <!></div> <!> <!></div> <!></div>');
3799
- function ii(s, t) {
3800
- e.push(t, !0);
3801
- const a = typeof window < "u";
3802
- let l = e.prop(t, "plugins", 19, () => []), i = e.prop(t, "config", 19, () => ({})), b = e.prop(t, "viewerState", 15), H = e.state(void 0);
3803
- e.user_effect(() => {
3804
- e.get(H) && zt(e.get(H), t.theme, t.themeConfig);
3805
- });
3806
- const p = new gt(null, void 0, []);
3807
- b(
3808
- p
3809
- // Expose via bindable prop
3810
- ), dt(le, p), ct(() => {
3811
- p.destroyAllPlugins();
3812
- }), e.user_effect(() => {
3813
- t.manifestId && t.manifestId !== p.manifestId && p.setManifest(t.manifestId);
3814
- });
3815
- let M = "";
3816
- e.user_effect(() => {
3817
- t.canvasId && t.canvasId !== M && (M = t.canvasId, t.canvasId !== p.canvasId && p.setCanvas(t.canvasId));
3818
- });
3819
- let w = "";
3820
- e.user_effect(() => {
3821
- if (i()) {
3822
- const z = JSON.stringify(i());
3823
- z !== w && (w = z, console.log("[Viewer] updateConfig called with new config:", i()), p.updateConfig(i()));
3824
- }
3825
- }), e.user_effect(() => {
3826
- for (const z of l())
3827
- p.registerPlugin(z);
3828
- }), e.user_effect(() => {
3829
- if (!a) return;
3830
- const z = () => {
3831
- p.isFullScreen = !!document.fullscreenElement;
3832
- };
3833
- return document.addEventListener("fullscreenchange", z), () => {
3834
- document.removeEventListener("fullscreenchange", z);
3835
- };
3836
- });
3837
- let k = e.derived(() => p.showThumbnailGallery && p.dockSide === "left" || p.pluginPanels.some((z) => z.position === "left" && z.isVisible())), D = e.derived(() => p.showSearchPanel || p.showThumbnailGallery && p.dockSide === "right" || p.pluginPanels.some((z) => z.position === "right" && z.isVisible())), A = e.derived(() => p.manifest), P = e.derived(() => p.canvases), _ = e.derived(() => p.currentCanvasIndex), r = e.derived(() => {
3838
- var ae, ne;
3839
- if (!e.get(P) || e.get(_) === -1 || !e.get(P)[e.get(_)])
3840
- return (ae = e.get(A)) != null && ae.isFetching || console.log("TriiiceratopsViewer: No canvas found"), null;
3841
- const z = e.get(P)[e.get(_)];
3842
- let q = z.getImages();
3843
- if ((!q || !q.length) && z.getContent && (q = z.getContent()), !q || !q.length)
3844
- return z.__jsonld && z.__jsonld.items, (ne = e.get(A)) != null && ne.isFetching || console.log("TriiiceratopsViewer: No images/content in canvas"), null;
3845
- const U = q[0];
3846
- let N = U.getResource ? U.getResource() : null;
3847
- if (!N && U.getBody) {
3848
- const Q = U.getBody();
3849
- Array.isArray(Q) && Q.length > 0 ? N = Q[0] : Q && (N = Q);
3850
- }
3851
- if (N && !N.id && !N.__jsonld && (!N.getServices || N.getServices().length === 0) && (N = null), !N) {
3852
- const Q = U.__jsonld || U;
3853
- Q.body && (N = Array.isArray(Q.body) ? Q.body[0] : Q.body);
3854
- }
3855
- if (!N)
3856
- return null;
3857
- const $ = (Q) => Q.id || Q["@id"];
3858
- let K = [];
3859
- if (N.getServices && (K = N.getServices()), !K.length) {
3860
- const Q = N.__jsonld || N;
3861
- Q.service && (K = Array.isArray(Q.service) ? Q.service : [Q.service]);
3862
- }
3863
- if (K.length > 0) {
3864
- const Q = K.find((J) => {
3865
- const re = J.getType ? J.getType() : J.type || "", ie = J.getProfile ? J.getProfile() : J.profile || "";
3866
- return re === "ImageService1" || re === "ImageService2" || re === "ImageService3" || typeof ie == "string" && ie.includes("http://iiif.io/api/image") || typeof ie == "string" && ie === "level0";
3867
- });
3868
- if (Q) {
3869
- let J = $(Q);
3870
- return J && !J.endsWith("/info.json") && (J = `${J}/info.json`), J;
3871
- }
3872
- }
3873
- const W = $(N);
3874
- if (W && W.includes("/iiif/")) {
3875
- const Q = W.split("/"), J = Q.findIndex((re) => re === "full" || re.match(/^\d+,\d+,\d+,\d+$/));
3876
- if (J > 0)
3877
- return `${Q.slice(0, J).join("/")}/info.json`;
3878
- }
3879
- return console.log("TriiiceratopsViewer: No service or ID found, returning raw URL"), { type: "image", url: W };
3880
- });
3881
- var n = J0(), h = e.child(n);
3882
- {
3883
- var x = (z) => {
3884
- var q = R0(), U = e.child(q);
3885
- {
3886
- var N = (K) => {
3887
- var W = j0(), te = e.child(W);
3888
- fe(te, {
3889
- get canvases() {
3890
- return e.get(P);
3891
- }
3892
- }), e.reset(W), e.append(K, W);
3893
- };
3894
- e.if(U, (K) => {
3895
- p.showThumbnailGallery && p.dockSide === "left" && K(N);
3896
- });
3897
- }
3898
- var $ = e.sibling(U, 2);
3899
- e.each($, 17, () => p.pluginPanels, (K) => K.id, (K, W) => {
3900
- var te = e.comment(), ae = e.first_child(te);
3901
- {
3902
- var ne = (Q) => {
3903
- var J = D0(), re = e.child(J);
3904
- e.component(re, () => e.get(W).component, (ie, ce) => {
3905
- ce(ie, e.spread_props(() => e.get(W).props ?? {}));
3906
- }), e.reset(J), e.append(Q, J);
3907
- };
3908
- e.if(ae, (Q) => {
3909
- e.get(W).isVisible() && e.get(W).position === "left" && Q(ne);
3910
- });
3911
- }
3912
- e.append(K, te);
3913
- }), e.reset(q), e.append(z, q);
3914
- };
3915
- e.if(h, (z) => {
3916
- e.get(k) && z(x);
3917
- });
3918
- }
3919
- var V = e.sibling(h, 2), o = e.child(V);
3920
- {
3921
- var d = (z) => {
3922
- var q = O0(), U = e.child(q);
3923
- fe(U, {
3924
- get canvases() {
3925
- return e.get(P);
3926
- }
3927
- }), e.reset(q), e.append(z, q);
3928
- };
3929
- e.if(o, (z) => {
3930
- p.showThumbnailGallery && p.dockSide === "top" && z(d);
3931
- });
3932
- }
3933
- var B = e.sibling(o, 2), Z = e.child(B);
3934
- {
3935
- var C = (z) => {
3936
- var q = G0();
3937
- e.append(z, q);
3938
- }, f = (z) => {
3939
- var q = e.comment(), U = e.first_child(q);
3940
- {
3941
- var N = (K) => {
3942
- var W = E0(), te = e.child(W);
3943
- e.reset(W), e.template_effect(
3944
- (ae) => e.set_text(te, `${ae ?? ""}
3945
- ${e.get(A).error ?? ""}`),
3946
- [() => X.error_prefix()]
3947
- ), e.append(K, W);
3948
- }, $ = (K) => {
3949
- var W = e.comment(), te = e.first_child(W);
3950
- {
3951
- var ae = (Q) => {
3952
- var J = e.comment(), re = e.first_child(J);
3953
- e.key(re, () => e.get(r), (ie) => {
3954
- Ut(ie, {
3955
- get tileSources() {
3956
- return e.get(r);
3957
- },
3958
- get viewerState() {
3959
- return p;
3960
- }
3961
- });
3962
- }), e.append(Q, J);
3963
- }, ne = (Q) => {
3964
- var J = F0(), re = e.child(J, !0);
3965
- e.reset(J), e.template_effect((ie) => e.set_text(re, ie), [() => X.no_image_found()]), e.append(Q, J);
3966
- };
3967
- e.if(
3968
- te,
3969
- (Q) => {
3970
- e.get(r) ? Q(ae) : Q(ne, !1);
3971
- },
3972
- !0
3973
- );
3974
- }
3975
- e.append(K, W);
3976
- };
3977
- e.if(
3978
- U,
3979
- (K) => {
3980
- var W;
3981
- (W = e.get(A)) != null && W.error ? K(N) : K($, !1);
3982
- },
3983
- !0
3984
- );
3985
- }
3986
- e.append(z, q);
3987
- };
3988
- e.if(Z, (z) => {
3989
- var q;
3990
- (q = e.get(A)) != null && q.isFetching ? z(C) : z(f, !1);
3991
- });
3992
- }
3993
- var u = e.sibling(Z, 2);
3994
- Ba(u, {});
3995
- var j = e.sibling(u, 2);
3996
- Z0(j, {});
3997
- var R = e.sibling(j, 2);
3998
- {
3999
- var T = (z) => {
4000
- l0(z, {});
4001
- };
4002
- e.if(R, (z) => {
4003
- p.showRightMenu && z(T);
4004
- });
4005
- }
4006
- var c = e.sibling(R, 2);
4007
- {
4008
- var g = (z) => {
4009
- b0(z, {});
4010
- };
4011
- e.if(c, (z) => {
4012
- p.showLeftMenu && z(g);
4013
- });
4014
- }
4015
- var S = e.sibling(c, 2);
4016
- e.each(S, 17, () => p.pluginPanels, (z) => z.id, (z, q) => {
4017
- var U = e.comment(), N = e.first_child(U);
4018
- {
4019
- var $ = (K) => {
4020
- var W = N0(), te = e.child(W);
4021
- e.component(te, () => e.get(q).component, (ae, ne) => {
4022
- ne(ae, e.spread_props(() => e.get(q).props ?? {}));
4023
- }), e.reset(W), e.append(K, W);
4024
- };
4025
- e.if(N, (K) => {
4026
- e.get(q).isVisible() && e.get(q).position === "overlay" && K($);
4027
- });
4028
- }
4029
- e.append(z, U);
4030
- });
4031
- var O = e.sibling(S, 2);
4032
- {
4033
- var I = (z) => {
4034
- da(z, {
4035
- get viewerState() {
4036
- return p;
4037
- }
4038
- });
4039
- };
4040
- e.if(O, (z) => {
4041
- e.get(P).length > 1 && p.showCanvasNav && z(I);
4042
- });
4043
- }
4044
- var v = e.sibling(O, 2);
4045
- {
4046
- var y = (z) => {
4047
- fe(z, {
4048
- get canvases() {
4049
- return e.get(P);
4050
- }
4051
- });
4052
- };
4053
- e.if(v, (z) => {
4054
- p.showThumbnailGallery && p.dockSide === "none" && z(y);
4055
- });
4056
- }
4057
- e.reset(B);
4058
- var E = e.sibling(B, 2);
4059
- {
4060
- var Y = (z) => {
4061
- var q = U0(), U = e.child(q);
4062
- fe(U, {
4063
- get canvases() {
4064
- return e.get(P);
4065
- }
4066
- }), e.reset(q), e.append(z, q);
4067
- };
4068
- e.if(E, (z) => {
4069
- p.showThumbnailGallery && p.dockSide === "bottom" && z(Y);
4070
- });
4071
- }
4072
- var G = e.sibling(E, 2);
4073
- e.each(G, 17, () => p.pluginPanels, (z) => z.id, (z, q) => {
4074
- var U = e.comment(), N = e.first_child(U);
4075
- {
4076
- var $ = (K) => {
4077
- var W = Y0(), te = e.child(W);
4078
- e.component(te, () => e.get(q).component, (ae, ne) => {
4079
- ne(ae, e.spread_props(() => e.get(q).props ?? {}));
4080
- }), e.reset(W), e.append(K, W);
4081
- };
4082
- e.if(N, (K) => {
4083
- e.get(q).isVisible() && e.get(q).position === "bottom" && K($);
4084
- });
4085
- }
4086
- e.append(z, U);
4087
- }), e.reset(V);
4088
- var m = e.sibling(V, 2);
4089
- {
4090
- var L = (z) => {
4091
- var q = W0(), U = e.child(q);
4092
- {
4093
- var N = (te) => {
4094
- var ae = q0(), ne = e.child(ae);
4095
- B0(ne, {}), e.reset(ae), e.append(te, ae);
4096
- };
4097
- e.if(U, (te) => {
4098
- p.showSearchPanel && te(N);
4099
- });
4100
- }
4101
- var $ = e.sibling(U, 2);
4102
- {
4103
- var K = (te) => {
4104
- var ae = X0(), ne = e.child(ae);
4105
- fe(ne, {
4106
- get canvases() {
4107
- return e.get(P);
4108
- }
4109
- }), e.reset(ae), e.append(te, ae);
4110
- };
4111
- e.if($, (te) => {
4112
- p.showThumbnailGallery && p.dockSide === "right" && te(K);
4113
- });
4114
- }
4115
- var W = e.sibling($, 2);
4116
- e.each(W, 17, () => p.pluginPanels, (te) => te.id, (te, ae) => {
4117
- var ne = e.comment(), Q = e.first_child(ne);
4118
- {
4119
- var J = (re) => {
4120
- var ie = Q0(), ce = e.child(ie);
4121
- e.component(ce, () => e.get(ae).component, (ve, Oe) => {
4122
- Oe(ve, e.spread_props(() => e.get(ae).props ?? {}));
4123
- }), e.reset(ie), e.append(re, ie);
4124
- };
4125
- e.if(Q, (re) => {
4126
- e.get(ae).isVisible() && e.get(ae).position === "right" && re(J);
4127
- });
4128
- }
4129
- e.append(te, ne);
4130
- }), e.reset(q), e.append(z, q);
4131
- };
4132
- e.if(m, (z) => {
4133
- e.get(D) && z(L);
4134
- });
4135
- }
4136
- e.reset(n), e.bind_this(n, (z) => e.set(H, z), () => e.get(H)), e.append(s, n), e.pop();
4137
- }
4138
- export {
4139
- oi as BasePlugin,
4140
- pt as DAISYUI_THEMES,
4141
- ht as ManifestsState,
4142
- ii as TriiiceratopsViewer,
4143
- le as VIEWER_STATE_KEY,
4144
- gt as ViewerState,
4145
- St as applyBuiltInTheme,
4146
- zt as applyTheme,
4147
- Ct as applyThemeConfig,
4148
- It as clearThemeConfig,
4149
- Mt as hexToOklch,
4150
- ai as isBuiltInTheme,
4151
- Ht as normalizeColor,
4152
- ri as parseThemeConfig
4153
- };
1
+ // Main Svelte component export
2
+ export { default as TriiiceratopsViewer } from './components/TriiiceratopsViewer.svelte';
3
+ // Type exports for TypeScript users
4
+ export { ViewerState, VIEWER_STATE_KEY } from './state/viewer.svelte';
5
+ export { ManifestsState } from './state/manifests.svelte';
6
+ export { BasePlugin } from './types/plugin';
7
+ export { DAISYUI_THEMES } from './theme/types';
8
+ export { applyTheme, applyBuiltInTheme, applyThemeConfig, clearThemeConfig, isBuiltInTheme, parseThemeConfig, } from './theme/themeManager';
9
+ export { hexToOklch, normalizeColor } from './theme/colorUtils';