@hiai-gg/docsmint 0.3.0 → 0.3.2

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 (74) hide show
  1. package/README.md +26 -23
  2. package/{packages/sdk/dist → dist}/client.d.ts +16 -1
  3. package/{packages/sdk/dist → dist}/client.js +25 -1
  4. package/dist/frontend/DatePicker-BcMD49PV.js +275 -0
  5. package/dist/frontend/SettingsDialog-DiAyhzw0.js +4852 -0
  6. package/dist/frontend/ShareDialog-DaZf1raY.js +1317 -0
  7. package/dist/frontend/api/categories.d.ts +10 -0
  8. package/dist/frontend/api/categories.js +2 -0
  9. package/dist/frontend/api/documents.d.ts +10 -0
  10. package/dist/frontend/api/documents.js +2 -0
  11. package/dist/frontend/api/folders.d.ts +10 -0
  12. package/dist/frontend/api/folders.js +2 -0
  13. package/dist/frontend/api/settings.d.ts +8 -0
  14. package/dist/frontend/api/settings.js +2 -0
  15. package/dist/frontend/api/tags.d.ts +11 -0
  16. package/dist/frontend/api/tags.js +2 -0
  17. package/dist/frontend/categories-BE6ZpZl8.js +61 -0
  18. package/dist/frontend/client-B9hzI0W8.js +76 -0
  19. package/dist/frontend/client-C6QQGb0e.js +2766 -0
  20. package/dist/frontend/components/settings.d.ts +2 -0
  21. package/dist/frontend/components/settings.js +2 -0
  22. package/dist/frontend/components/sidebar.d.ts +2 -0
  23. package/dist/frontend/components/sidebar.js +4569 -0
  24. package/dist/frontend/context-DbnW5yib.js +31 -0
  25. package/dist/frontend/dashboard.d.ts +2 -0
  26. package/dist/frontend/dashboard.js +2152 -0
  27. package/dist/frontend/documents-DFVS9SsL.js +83 -0
  28. package/dist/frontend/extension.d.ts +2 -0
  29. package/dist/frontend/extension.js +10 -0
  30. package/dist/frontend/folders-CGe9diAG.js +91 -0
  31. package/dist/frontend/frontend.css +2 -0
  32. package/dist/frontend/i18n.d.ts +5 -0
  33. package/dist/frontend/i18n.js +8 -0
  34. package/dist/frontend/input-ieWIt8I7.js +257 -0
  35. package/dist/frontend/messages-CTGAsqFu.js +1106 -0
  36. package/dist/frontend/resolve-Bl6xmJl_.js +2068 -0
  37. package/dist/frontend/schemas-DwtKylCJ.js +3002 -0
  38. package/dist/frontend/search.d.ts +2 -0
  39. package/dist/frontend/search.js +1001 -0
  40. package/dist/frontend/settings-PCrOtied.js +1313 -0
  41. package/dist/frontend/shared-document.d.ts +3 -0
  42. package/dist/frontend/shared-document.js +193 -0
  43. package/dist/frontend/tag-C5xrg-bb.js +53 -0
  44. package/dist/frontend/tag-store.svelte-B3839FYq.js +6152 -0
  45. package/dist/frontend/tags-DVXTut0p.js +48 -0
  46. package/dist/frontend/theme.d.ts +4 -0
  47. package/dist/frontend/theme.js +8 -0
  48. package/dist/frontend/theme.svelte-ei0QxXa8.js +49 -0
  49. package/dist/index.d.ts +7 -0
  50. package/dist/index.js +3 -0
  51. package/dist/lifecycle.d.ts +90 -0
  52. package/dist/lifecycle.js +99 -0
  53. package/{packages/sdk/dist → dist}/types.d.ts +5 -0
  54. package/dist/workspace.d.ts +21 -0
  55. package/dist/workspace.js +66 -0
  56. package/package.json +70 -36
  57. package/packages/cli/src/index.ts +1 -1
  58. package/packages/db/src/schema.ts +41 -0
  59. package/packages/mcp-server/src/index.ts +1 -1
  60. package/frontend/src/lib/components/editor/shared-document.ts +0 -237
  61. package/frontend/src/lib/extensions/context.ts +0 -60
  62. package/frontend/src/lib/extensions/doc-tabs.ts +0 -18
  63. package/frontend/src/lib/extensions/resolve.ts +0 -48
  64. package/frontend/src/lib/extensions/types.ts +0 -202
  65. package/frontend/src/lib/hosts/DocsmintSharedDocumentHost.svelte +0 -65
  66. package/frontend/src/lib/hosts/HiaiDocsDashboardHost.svelte +0 -1007
  67. package/frontend/src/lib/hosts/HiaiDocsExtensionProvider.svelte +0 -20
  68. package/frontend/src/lib/hosts/HiaiDocsSearchHost.svelte +0 -996
  69. package/frontend/src/lib/hosts/index.ts +0 -25
  70. package/frontend/src/lib/index.ts +0 -65
  71. package/frontend/src/lib/stores/doc-tab-registry.svelte.ts +0 -68
  72. package/packages/sdk/dist/index.d.ts +0 -3
  73. package/packages/sdk/dist/index.js +0 -1
  74. /package/{packages/sdk/dist → dist}/types.js +0 -0
@@ -0,0 +1,1317 @@
1
+ import { Bt as e, Cn as t, Dn as n, E as r, En as i, Gt as a, Lt as o, On as s, Sn as c, Tn as l, Ut as u, Wt as d, _n as f, bn as p, er as m, fn as h, gn as ee, hn as te, mn as g, pn as _, rr as v, vn as ne, wn as re, xn as ie, yn as ae, zt as oe } from "./messages-CTGAsqFu.js";
2
+ import "./context-DbnW5yib.js";
3
+ import { $ as y, A as b, C as x, D as S, E as se, F as C, H as w, I as T, J as E, L as D, M as O, N as k, P as ce, Q as le, R as A, S as j, T as ue, U as M, V as N, X as de, _ as P, _t as F, a as fe, b as pe, c as me, ct as he, d as ge, dt as I, et as L, ft as R, gt as z, h as _e, i as B, it as V, j as H, k as U, l as W, lt as G, n as K, nt as ve, o as ye, ot as q, q as J, r as Y, st as be, t as X, tt as Z, u as xe, vt as Q, yt as Se, z as Ce } from "./client-C6QQGb0e.js";
4
+ import { i as we, n as Te, o as Ee, r as De } from "./resolve-Bl6xmJl_.js";
5
+ import { a as Oe, c as ke, i as Ae, n as je, o as Me, r as Ne, s as Pe, t as Fe } from "./input-ieWIt8I7.js";
6
+ import { A as Ie, C as Le, D as Re, M as ze, N as Be, O as Ve, P as $, S as He, T as Ue, b as We, k as Ge, v as Ke, w as qe, x as Je, y as Ye } from "./tag-store.svelte-B3839FYq.js";
7
+ import { t as Xe } from "./client-B9hzI0W8.js";
8
+ //#region ../node_modules/.bun/bits-ui@2.18.1+203cd734255b50e4/node_modules/bits-ui/dist/bits/menu/components/menu.svelte
9
+ function Ze(e, t) {
10
+ R(t, !0);
11
+ let n = K(t, "open", 15, !1), r = K(t, "dir", 3, "ltr"), i = K(t, "onOpenChange", 3, ze), a = K(t, "onOpenChangeComplete", 3, ze), o = K(t, "_internal_variant", 3, "dropdown-menu"), s = K(t, "_internal_should_skip_exit_animation", 3, void 0), c = Ge.create({
12
+ variant: $(() => o()),
13
+ dir: $(() => r()),
14
+ onClose: () => {
15
+ n(!1), i()(!1);
16
+ },
17
+ shouldSkipExitAnimation: () => s()?.() ?? !1
18
+ });
19
+ Ve.create({
20
+ open: $(() => n(), (e) => {
21
+ n(e), i()(e);
22
+ }),
23
+ onOpenChangeComplete: $(() => a())
24
+ }, c), He(e, {
25
+ children: (e, n) => {
26
+ var r = O();
27
+ U(L(r), () => t.children ?? Q), H(e, r);
28
+ },
29
+ $$slots: { default: !0 }
30
+ }), I();
31
+ }
32
+ //#endregion
33
+ //#region ../node_modules/.bun/bits-ui@2.18.1+203cd734255b50e4/node_modules/bits-ui/dist/bits/menu/components/menu-item.svelte
34
+ var Qe = /* @__PURE__ */ new Set([
35
+ "$$slots",
36
+ "$$events",
37
+ "$$legacy",
38
+ "child",
39
+ "children",
40
+ "ref",
41
+ "id",
42
+ "disabled",
43
+ "onSelect",
44
+ "closeOnSelect"
45
+ ]), $e = k("<div><!></div>");
46
+ function et(e, t) {
47
+ let n = C();
48
+ R(t, !0);
49
+ let r = K(t, "ref", 15, null), i = K(t, "id", 19, () => Je(n)), a = K(t, "disabled", 3, !1), o = K(t, "onSelect", 3, ze), s = K(t, "closeOnSelect", 3, !0), c = Y(t, Qe), l = Re.create({
50
+ id: $(() => i()),
51
+ disabled: $(() => a()),
52
+ onSelect: $(() => o()),
53
+ ref: $(() => r(), (e) => r(e)),
54
+ closeOnSelect: $(() => s())
55
+ }), u = G(() => Be(c, l.props));
56
+ var d = O(), f = L(d), p = (e) => {
57
+ var n = O();
58
+ U(L(n), () => t.child, () => ({ props: w(u) })), H(e, n);
59
+ }, m = (e) => {
60
+ var n = $e();
61
+ W(n, () => ({ ...w(u) })), U(y(n), () => t.children ?? Q), F(n), H(e, n);
62
+ };
63
+ S(f, (e) => {
64
+ t.child ? e(p) : e(m, -1);
65
+ }), H(e, d), I();
66
+ }
67
+ k("<div><!></div>");
68
+ //#endregion
69
+ //#region ../node_modules/.bun/bits-ui@2.18.1+203cd734255b50e4/node_modules/bits-ui/dist/bits/menu/components/menu-group.svelte
70
+ var tt = /* @__PURE__ */ new Set([
71
+ "$$slots",
72
+ "$$events",
73
+ "$$legacy",
74
+ "id",
75
+ "child",
76
+ "children",
77
+ "ref",
78
+ "loop",
79
+ "onInteractOutside",
80
+ "onEscapeKeydown",
81
+ "onCloseAutoFocus",
82
+ "forceMount",
83
+ "trapFocus",
84
+ "style"
85
+ ]), nt = k("<div><div><!></div></div>");
86
+ function rt(e, t) {
87
+ let n = C();
88
+ R(t, !0);
89
+ let r = K(t, "id", 19, () => Je(n)), i = K(t, "ref", 15, null), a = K(t, "loop", 3, !0), o = K(t, "onInteractOutside", 3, ze), s = K(t, "onEscapeKeydown", 3, ze), c = K(t, "onCloseAutoFocus", 3, ze), l = K(t, "forceMount", 3, !1), u = K(t, "trapFocus", 3, !1), d = Y(t, tt), f = Ue.create({
90
+ id: $(() => r()),
91
+ loop: $(() => a()),
92
+ ref: $(() => i(), (e) => i(e)),
93
+ onCloseAutoFocus: $(() => c())
94
+ }), p = G(() => Be(d, f.props));
95
+ function m(e) {
96
+ if (f.handleInteractOutside(e), !e.defaultPrevented && (o()(e), !e.defaultPrevented)) {
97
+ if (e.target && e.target instanceof Element) {
98
+ let t = `[${f.parentMenu.root.getBitsAttr("sub-content")}]`;
99
+ if (e.target.closest(t)) return;
100
+ }
101
+ f.parentMenu.onClose();
102
+ }
103
+ }
104
+ function h(e) {
105
+ s()(e), !e.defaultPrevented && f.parentMenu.onClose();
106
+ }
107
+ var ee = O(), te = L(ee), g = (e) => {
108
+ Ye(e, B(() => w(p), () => f.popperProps, {
109
+ get ref() {
110
+ return f.opts.ref;
111
+ },
112
+ get enabled() {
113
+ return f.parentMenu.opts.open.current;
114
+ },
115
+ onInteractOutside: m,
116
+ onEscapeKeydown: h,
117
+ get trapFocus() {
118
+ return u();
119
+ },
120
+ get loop() {
121
+ return a();
122
+ },
123
+ forceMount: !0,
124
+ get id() {
125
+ return r();
126
+ },
127
+ get shouldRender() {
128
+ return f.shouldRender;
129
+ },
130
+ popper: (e, n) => {
131
+ let r = () => (n?.()).props, i = () => (n?.()).wrapperProps, a = G(() => Be(r(), { style: Le("dropdown-menu") }, { style: t.style }));
132
+ var o = O(), s = L(o), c = (e) => {
133
+ var n = O(), r = L(n);
134
+ {
135
+ let e = G(() => ({
136
+ props: w(a),
137
+ wrapperProps: i(),
138
+ ...f.snippetProps
139
+ }));
140
+ U(r, () => t.child, () => w(e));
141
+ }
142
+ H(e, n);
143
+ }, l = (e) => {
144
+ var n = nt();
145
+ W(n, () => ({ ...i() }));
146
+ var r = y(n);
147
+ W(r, () => ({ ...w(a) })), U(y(r), () => t.children ?? Q), F(r), F(n), H(e, n);
148
+ };
149
+ S(s, (e) => {
150
+ t.child ? e(c) : e(l, -1);
151
+ }), H(e, o);
152
+ },
153
+ $$slots: { popper: !0 }
154
+ }));
155
+ }, _ = (e) => {
156
+ We(e, B(() => w(p), () => f.popperProps, {
157
+ get ref() {
158
+ return f.opts.ref;
159
+ },
160
+ get open() {
161
+ return f.parentMenu.opts.open.current;
162
+ },
163
+ onInteractOutside: m,
164
+ onEscapeKeydown: h,
165
+ get trapFocus() {
166
+ return u();
167
+ },
168
+ get loop() {
169
+ return a();
170
+ },
171
+ forceMount: !1,
172
+ get id() {
173
+ return r();
174
+ },
175
+ get shouldRender() {
176
+ return f.shouldRender;
177
+ },
178
+ popper: (e, n) => {
179
+ let r = () => (n?.()).props, i = () => (n?.()).wrapperProps, a = G(() => Be(r(), { style: Le("dropdown-menu") }, { style: t.style }));
180
+ var o = O(), s = L(o), c = (e) => {
181
+ var n = O(), r = L(n);
182
+ {
183
+ let e = G(() => ({
184
+ props: w(a),
185
+ wrapperProps: i(),
186
+ ...f.snippetProps
187
+ }));
188
+ U(r, () => t.child, () => w(e));
189
+ }
190
+ H(e, n);
191
+ }, l = (e) => {
192
+ var n = nt();
193
+ W(n, () => ({ ...i() }));
194
+ var r = y(n);
195
+ W(r, () => ({ ...w(a) })), U(y(r), () => t.children ?? Q), F(r), F(n), H(e, n);
196
+ };
197
+ S(s, (e) => {
198
+ t.child ? e(c) : e(l, -1);
199
+ }), H(e, o);
200
+ },
201
+ $$slots: { popper: !0 }
202
+ }));
203
+ };
204
+ S(te, (e) => {
205
+ l() ? e(g) : l() || e(_, 1);
206
+ }), H(e, ee), I();
207
+ }
208
+ //#endregion
209
+ //#region ../node_modules/.bun/bits-ui@2.18.1+203cd734255b50e4/node_modules/bits-ui/dist/bits/menu/components/menu-trigger.svelte
210
+ var it = /* @__PURE__ */ new Set([
211
+ "$$slots",
212
+ "$$events",
213
+ "$$legacy",
214
+ "id",
215
+ "ref",
216
+ "child",
217
+ "children",
218
+ "disabled",
219
+ "type"
220
+ ]), at = k("<button><!></button>");
221
+ function ot(e, t) {
222
+ let n = C();
223
+ R(t, !0);
224
+ let r = K(t, "id", 19, () => Je(n)), i = K(t, "ref", 15, null), a = K(t, "disabled", 3, !1), o = K(t, "type", 3, "button"), s = Y(t, it), c = qe.create({
225
+ id: $(() => r()),
226
+ disabled: $(() => a() ?? !1),
227
+ ref: $(() => i(), (e) => i(e))
228
+ }), l = G(() => Be(s, c.props, { type: o() }));
229
+ Ke(e, {
230
+ get id() {
231
+ return r();
232
+ },
233
+ get ref() {
234
+ return c.opts.ref;
235
+ },
236
+ children: (e, n) => {
237
+ var r = O(), i = L(r), a = (e) => {
238
+ var n = O();
239
+ U(L(n), () => t.child, () => ({ props: w(l) })), H(e, n);
240
+ }, o = (e) => {
241
+ var n = at();
242
+ W(n, () => ({ ...w(l) })), U(y(n), () => t.children ?? Q), F(n), H(e, n);
243
+ };
244
+ S(i, (e) => {
245
+ t.child ? e(a) : e(o, -1);
246
+ }), H(e, r);
247
+ },
248
+ $$slots: { default: !0 }
249
+ }), I();
250
+ }
251
+ //#endregion
252
+ //#region ../node_modules/.bun/bits-ui@2.18.1+203cd734255b50e4/node_modules/bits-ui/dist/bits/menu/components/menu-separator.svelte
253
+ var st = /* @__PURE__ */ new Set([
254
+ "$$slots",
255
+ "$$events",
256
+ "$$legacy",
257
+ "ref",
258
+ "id",
259
+ "child",
260
+ "children"
261
+ ]), ct = k("<div><!></div>");
262
+ function lt(e, t) {
263
+ let n = C();
264
+ R(t, !0);
265
+ let r = K(t, "ref", 15, null), i = K(t, "id", 19, () => Je(n)), a = Y(t, st), o = Ie.create({
266
+ id: $(() => i()),
267
+ ref: $(() => r(), (e) => r(e))
268
+ }), s = G(() => Be(a, o.props));
269
+ var c = O(), l = L(c), u = (e) => {
270
+ var n = O();
271
+ U(L(n), () => t.child, () => ({ props: w(s) })), H(e, n);
272
+ }, d = (e) => {
273
+ var n = ct();
274
+ W(n, () => ({ ...w(s) })), U(y(n), () => t.children ?? Q), F(n), H(e, n);
275
+ };
276
+ S(l, (e) => {
277
+ t.child ? e(u) : e(d, -1);
278
+ }), H(e, c), I();
279
+ }
280
+ //#endregion
281
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/dropdown-menu/dropdown-menu.svelte
282
+ var ut = /* @__PURE__ */ new Set([
283
+ "$$slots",
284
+ "$$events",
285
+ "$$legacy",
286
+ "children"
287
+ ]);
288
+ function dt(e, t) {
289
+ let n = Y(t, ut);
290
+ var r = O();
291
+ j(L(r), () => Ze, (e, r) => {
292
+ r(e, B(() => n, {
293
+ children: (e, n) => {
294
+ var r = O(), i = L(r), a = (e) => {
295
+ var n = O();
296
+ U(L(n), () => t.children), H(e, n);
297
+ };
298
+ S(i, (e) => {
299
+ t.children && e(a);
300
+ }), H(e, r);
301
+ },
302
+ $$slots: { default: !0 }
303
+ }));
304
+ }), H(e, r);
305
+ }
306
+ //#endregion
307
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte
308
+ var ft = /* @__PURE__ */ new Set([
309
+ "$$slots",
310
+ "$$events",
311
+ "$$legacy",
312
+ "ref",
313
+ "class",
314
+ "sideOffset",
315
+ "children"
316
+ ]);
317
+ function pt(e, t) {
318
+ R(t, !0);
319
+ let n = K(t, "ref", 15, null), r = K(t, "sideOffset", 3, 4), i = Y(t, ft);
320
+ var a = O(), o = L(a);
321
+ {
322
+ let e = G(() => we("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md", t.class));
323
+ j(o, () => rt, (a, o) => {
324
+ o(a, B({
325
+ get sideOffset() {
326
+ return r();
327
+ },
328
+ get class() {
329
+ return w(e);
330
+ }
331
+ }, () => i, {
332
+ get ref() {
333
+ return n();
334
+ },
335
+ set ref(e) {
336
+ n(e);
337
+ },
338
+ children: (e, n) => {
339
+ var r = O(), i = L(r), a = (e) => {
340
+ var n = O();
341
+ U(L(n), () => t.children), H(e, n);
342
+ };
343
+ S(i, (e) => {
344
+ t.children && e(a);
345
+ }), H(e, r);
346
+ },
347
+ $$slots: { default: !0 }
348
+ }));
349
+ });
350
+ }
351
+ H(e, a), I();
352
+ }
353
+ //#endregion
354
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte
355
+ var mt = /* @__PURE__ */ new Set([
356
+ "$$slots",
357
+ "$$events",
358
+ "$$legacy",
359
+ "ref",
360
+ "class",
361
+ "inset",
362
+ "children"
363
+ ]);
364
+ function ht(e, t) {
365
+ R(t, !0);
366
+ let n = K(t, "ref", 15, null), r = Y(t, mt);
367
+ var i = O(), a = L(i);
368
+ {
369
+ let e = G(() => we("relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0", t.inset && "pl-8", t.class));
370
+ j(a, () => et, (i, a) => {
371
+ a(i, B({ get class() {
372
+ return w(e);
373
+ } }, () => r, {
374
+ get ref() {
375
+ return n();
376
+ },
377
+ set ref(e) {
378
+ n(e);
379
+ },
380
+ children: (e, n) => {
381
+ var r = O(), i = L(r), a = (e) => {
382
+ var n = O();
383
+ U(L(n), () => t.children), H(e, n);
384
+ };
385
+ S(i, (e) => {
386
+ t.children && e(a);
387
+ }), H(e, r);
388
+ },
389
+ $$slots: { default: !0 }
390
+ }));
391
+ });
392
+ }
393
+ H(e, i), I();
394
+ }
395
+ //#endregion
396
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte
397
+ var gt = /* @__PURE__ */ new Set([
398
+ "$$slots",
399
+ "$$events",
400
+ "$$legacy",
401
+ "ref",
402
+ "class"
403
+ ]);
404
+ function _t(e, t) {
405
+ R(t, !0);
406
+ let n = K(t, "ref", 15, null), r = Y(t, gt);
407
+ var i = O(), a = L(i);
408
+ {
409
+ let e = G(() => we("-mx-1 my-1 h-px bg-muted", t.class));
410
+ j(a, () => lt, (t, i) => {
411
+ i(t, B({ get class() {
412
+ return w(e);
413
+ } }, () => r, {
414
+ get ref() {
415
+ return n();
416
+ },
417
+ set ref(e) {
418
+ n(e);
419
+ }
420
+ }));
421
+ });
422
+ }
423
+ H(e, i), I();
424
+ }
425
+ //#endregion
426
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte
427
+ var vt = /* @__PURE__ */ new Set([
428
+ "$$slots",
429
+ "$$events",
430
+ "$$legacy",
431
+ "ref",
432
+ "child",
433
+ "children"
434
+ ]);
435
+ function yt(e, t) {
436
+ R(t, !0);
437
+ let n = K(t, "ref", 15, null), r = Y(t, vt);
438
+ var i = O(), a = L(i), o = (e) => {
439
+ let i = (e, n = Q) => {
440
+ var r = O();
441
+ U(L(r), () => t.child ?? Q, n), H(e, r);
442
+ };
443
+ var a = O();
444
+ j(L(a), () => ot, (e, t) => {
445
+ t(e, B(() => r, {
446
+ get child() {
447
+ return i;
448
+ },
449
+ get ref() {
450
+ return n();
451
+ },
452
+ set ref(e) {
453
+ n(e);
454
+ }
455
+ }));
456
+ }), H(e, a);
457
+ }, s = (e) => {
458
+ var i = O();
459
+ j(L(i), () => ot, (e, i) => {
460
+ i(e, B(() => r, {
461
+ get ref() {
462
+ return n();
463
+ },
464
+ set ref(e) {
465
+ n(e);
466
+ },
467
+ children: (e, n) => {
468
+ var r = O(), i = L(r), a = (e) => {
469
+ var n = O();
470
+ U(L(n), () => t.children), H(e, n);
471
+ };
472
+ S(i, (e) => {
473
+ t.children && e(a);
474
+ }), H(e, r);
475
+ },
476
+ $$slots: { default: !0 }
477
+ }));
478
+ }), H(e, i);
479
+ };
480
+ S(a, (e) => {
481
+ t.child ? e(o) : e(s, -1);
482
+ }), H(e, i), I();
483
+ }
484
+ //#endregion
485
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/copy.svelte
486
+ function bt(e, t) {
487
+ let n = X(t, [
488
+ "children",
489
+ "$$slots",
490
+ "$$events",
491
+ "$$legacy"
492
+ ]), r = [["rect", {
493
+ width: "14",
494
+ height: "14",
495
+ x: "8",
496
+ y: "8",
497
+ rx: "2",
498
+ ry: "2"
499
+ }], ["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2" }]];
500
+ De(e, B({ name: "copy" }, () => n, {
501
+ get iconNode() {
502
+ return r;
503
+ },
504
+ children: (e, n) => {
505
+ var r = O();
506
+ x(L(r), t, "default", {}, null), H(e, r);
507
+ },
508
+ $$slots: { default: !0 }
509
+ }));
510
+ }
511
+ //#endregion
512
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/file-text.svelte
513
+ function xt(e, t) {
514
+ let n = X(t, [
515
+ "children",
516
+ "$$slots",
517
+ "$$events",
518
+ "$$legacy"
519
+ ]), r = [
520
+ ["path", { d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z" }],
521
+ ["path", { d: "M14 2v5a1 1 0 0 0 1 1h5" }],
522
+ ["path", { d: "M10 9H8" }],
523
+ ["path", { d: "M16 13H8" }],
524
+ ["path", { d: "M16 17H8" }]
525
+ ];
526
+ De(e, B({ name: "file-text" }, () => n, {
527
+ get iconNode() {
528
+ return r;
529
+ },
530
+ children: (e, n) => {
531
+ var r = O();
532
+ x(L(r), t, "default", {}, null), H(e, r);
533
+ },
534
+ $$slots: { default: !0 }
535
+ }));
536
+ }
537
+ //#endregion
538
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/plus.svelte
539
+ function St(e, t) {
540
+ let n = X(t, [
541
+ "children",
542
+ "$$slots",
543
+ "$$events",
544
+ "$$legacy"
545
+ ]), r = [["path", { d: "M5 12h14" }], ["path", { d: "M12 5v14" }]];
546
+ De(e, B({ name: "plus" }, () => n, {
547
+ get iconNode() {
548
+ return r;
549
+ },
550
+ children: (e, n) => {
551
+ var r = O();
552
+ x(L(r), t, "default", {}, null), H(e, r);
553
+ },
554
+ $$slots: { default: !0 }
555
+ }));
556
+ }
557
+ //#endregion
558
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/circle-check.svelte
559
+ function Ct(e, t) {
560
+ let n = X(t, [
561
+ "children",
562
+ "$$slots",
563
+ "$$events",
564
+ "$$legacy"
565
+ ]), r = [["circle", {
566
+ cx: "12",
567
+ cy: "12",
568
+ r: "10"
569
+ }], ["path", { d: "m9 12 2 2 4-4" }]];
570
+ De(e, B({ name: "circle-check" }, () => n, {
571
+ get iconNode() {
572
+ return r;
573
+ },
574
+ children: (e, n) => {
575
+ var r = O();
576
+ x(L(r), t, "default", {}, null), H(e, r);
577
+ },
578
+ $$slots: { default: !0 }
579
+ }));
580
+ }
581
+ //#endregion
582
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/ellipsis-vertical.svelte
583
+ function wt(e, t) {
584
+ let n = X(t, [
585
+ "children",
586
+ "$$slots",
587
+ "$$events",
588
+ "$$legacy"
589
+ ]), r = [
590
+ ["circle", {
591
+ cx: "12",
592
+ cy: "12",
593
+ r: "1"
594
+ }],
595
+ ["circle", {
596
+ cx: "12",
597
+ cy: "5",
598
+ r: "1"
599
+ }],
600
+ ["circle", {
601
+ cx: "12",
602
+ cy: "19",
603
+ r: "1"
604
+ }]
605
+ ];
606
+ De(e, B({ name: "ellipsis-vertical" }, () => n, {
607
+ get iconNode() {
608
+ return r;
609
+ },
610
+ children: (e, n) => {
611
+ var r = O();
612
+ x(L(r), t, "default", {}, null), H(e, r);
613
+ },
614
+ $$slots: { default: !0 }
615
+ }));
616
+ }
617
+ //#endregion
618
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/textarea/textarea.svelte
619
+ var Tt = /* @__PURE__ */ new Set([
620
+ "$$slots",
621
+ "$$events",
622
+ "$$legacy",
623
+ "ref",
624
+ "class",
625
+ "value"
626
+ ]), Et = k("<textarea></textarea>");
627
+ function Dt(e, t) {
628
+ R(t, !0);
629
+ let n = K(t, "ref", 15, null), r = K(t, "value", 15, ""), i = Y(t, Tt);
630
+ var a = Et();
631
+ de(a), W(a, (e) => ({
632
+ class: e,
633
+ ...i
634
+ }), [() => we("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50", t.class)]), ye(a, (e) => n(e), () => n()), me(a, r), H(e, a), I();
635
+ }
636
+ //#endregion
637
+ //#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/defaultAttributes.js
638
+ var Ot = {
639
+ xmlns: "http://www.w3.org/2000/svg",
640
+ width: 24,
641
+ height: 24,
642
+ viewBox: "0 0 24 24",
643
+ fill: "none",
644
+ stroke: "currentColor",
645
+ "stroke-width": 2,
646
+ "stroke-linecap": "round",
647
+ "stroke-linejoin": "round"
648
+ }, kt = (e) => {
649
+ for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
650
+ return !1;
651
+ }, At = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), jt = ce("<svg><!><!></svg>");
652
+ function Mt(e, t) {
653
+ let n = X(t, [
654
+ "children",
655
+ "$$slots",
656
+ "$$events",
657
+ "$$legacy"
658
+ ]), r = X(n, [
659
+ "name",
660
+ "color",
661
+ "size",
662
+ "strokeWidth",
663
+ "absoluteStrokeWidth",
664
+ "iconNode"
665
+ ]);
666
+ R(t, !1);
667
+ let i = K(t, "name", 8, void 0), a = K(t, "color", 8, "currentColor"), o = K(t, "size", 8, 24), s = K(t, "strokeWidth", 8, 2), c = K(t, "absoluteStrokeWidth", 8, !1), l = K(t, "iconNode", 24, () => []);
668
+ fe();
669
+ var u = jt();
670
+ W(u, (e, t, n) => ({
671
+ ...Ot,
672
+ ...e,
673
+ ...r,
674
+ width: o(),
675
+ height: o(),
676
+ stroke: a(),
677
+ "stroke-width": t,
678
+ class: n
679
+ }), [
680
+ () => kt(r) ? void 0 : { "aria-hidden": "true" },
681
+ () => (N(c()), N(s()), N(o()), M(() => c() ? Number(s()) * 24 / Number(o()) : s())),
682
+ () => (N(At), N(i()), N(n), M(() => At("lucide-icon", "lucide", i() ? `lucide-${i()}` : "", n.class)))
683
+ ]);
684
+ var d = y(u);
685
+ ue(d, 1, l, se, (e, t) => {
686
+ var n = G(() => Se(w(t), 2));
687
+ let r = () => w(n)[0], i = () => w(n)[1];
688
+ var a = O();
689
+ pe(L(a), r, !0, (e, t) => {
690
+ W(e, () => ({ ...i() }));
691
+ }), H(e, a);
692
+ }), x(Z(d), t, "default", {}, null), F(u), H(e, u), I();
693
+ }
694
+ //#endregion
695
+ //#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/loader-circle.svelte
696
+ function Nt(e, t) {
697
+ let n = X(t, [
698
+ "children",
699
+ "$$slots",
700
+ "$$events",
701
+ "$$legacy"
702
+ ]), r = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56" }]];
703
+ Mt(e, B({ name: "loader-circle" }, () => n, {
704
+ get iconNode() {
705
+ return r;
706
+ },
707
+ children: (e, n) => {
708
+ var r = O();
709
+ x(L(r), t, "default", {}, null), H(e, r);
710
+ },
711
+ $$slots: { default: !0 }
712
+ }));
713
+ }
714
+ //#endregion
715
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/confirm-dialog/ConfirmDialog.svelte
716
+ var Pt = k("<!> <!>", 1), Ft = k("<div class=\"grid gap-2 py-2\"><label for=\"confirm-dialog-reason\" class=\"text-sm font-medium\"> </label> <!></div>"), It = k("<!> ", 1), Lt = k("<!> <!> <!>", 1);
717
+ function Rt(e, t) {
718
+ R(t, !0);
719
+ let n = K(t, "open", 15, !1), r = K(t, "confirmLabel", 3, "Confirm"), i = K(t, "cancelLabel", 3, "Cancel"), a = K(t, "variant", 3, "default"), o = K(t, "busy", 3, !1), s = K(t, "requireReason", 3, !1), c = K(t, "reasonLabel", 3, "Reason"), l = K(t, "reasonPlaceholder", 3, "Provide a reason..."), u = q(""), d = G(() => s() && w(u).trim().length === 0);
720
+ function f() {
721
+ V(u, "");
722
+ }
723
+ function p() {
724
+ w(d) || (t.onConfirm?.(s() ? w(u) : void 0), f());
725
+ }
726
+ function m() {
727
+ o() || (n(!1), t.onCancel?.(), f());
728
+ }
729
+ function h(e) {
730
+ e.key === "Escape" && !o() && n() && (e.preventDefault(), m());
731
+ }
732
+ Ce("keydown", le, h), Me(e, {
733
+ onOpenChange: (e) => {
734
+ e || (f(), t.onCancel?.());
735
+ },
736
+ get open() {
737
+ return n();
738
+ },
739
+ set open(e) {
740
+ n(e);
741
+ },
742
+ children: (e, n) => {
743
+ var f = Lt(), h = L(f);
744
+ Ne(h, {
745
+ children: (e, n) => {
746
+ var r = Pt(), i = L(r);
747
+ je(i, {
748
+ children: (e, n) => {
749
+ z();
750
+ var r = T();
751
+ J(() => b(r, t.title)), H(e, r);
752
+ },
753
+ $$slots: { default: !0 }
754
+ });
755
+ var a = Z(i, 2), o = (e) => {
756
+ Oe(e, {
757
+ children: (e, n) => {
758
+ z();
759
+ var r = T();
760
+ J(() => b(r, t.description)), H(e, r);
761
+ },
762
+ $$slots: { default: !0 }
763
+ });
764
+ };
765
+ S(a, (e) => {
766
+ t.description && e(o);
767
+ }), H(e, r);
768
+ },
769
+ $$slots: { default: !0 }
770
+ });
771
+ var ee = Z(h, 2), te = (e) => {
772
+ var t = Ft(), n = y(t), r = y(n, !0);
773
+ F(n), Dt(Z(n, 2), {
774
+ id: "confirm-dialog-reason",
775
+ rows: 3,
776
+ get placeholder() {
777
+ return l();
778
+ },
779
+ get disabled() {
780
+ return o();
781
+ },
782
+ get value() {
783
+ return w(u);
784
+ },
785
+ set value(e) {
786
+ V(u, e, !0);
787
+ }
788
+ }), F(t), J(() => b(r, c())), H(e, t);
789
+ };
790
+ S(ee, (e) => {
791
+ s() && e(te);
792
+ }), Ae(Z(ee, 2), {
793
+ children: (e, t) => {
794
+ var n = Pt(), s = L(n);
795
+ ke(s, {
796
+ variant: "outline",
797
+ type: "button",
798
+ onclick: m,
799
+ get disabled() {
800
+ return o();
801
+ },
802
+ children: (e, t) => {
803
+ z();
804
+ var n = T();
805
+ J(() => b(n, i())), H(e, n);
806
+ },
807
+ $$slots: { default: !0 }
808
+ });
809
+ var c = Z(s, 2);
810
+ {
811
+ let e = G(() => a() === "destructive" ? "destructive" : "default"), t = G(() => o() || w(d));
812
+ ke(c, {
813
+ type: "button",
814
+ get variant() {
815
+ return w(e);
816
+ },
817
+ onclick: p,
818
+ get disabled() {
819
+ return w(t);
820
+ },
821
+ children: (e, t) => {
822
+ var n = It(), i = L(n), a = (e) => {
823
+ Nt(e, { class: "mr-1 size-4 animate-spin" });
824
+ };
825
+ S(i, (e) => {
826
+ o() && e(a);
827
+ });
828
+ var s = Z(i);
829
+ J(() => b(s, ` ${r() ?? ""}`)), H(e, n);
830
+ },
831
+ $$slots: { default: !0 }
832
+ });
833
+ }
834
+ H(e, n);
835
+ },
836
+ $$slots: { default: !0 }
837
+ }), H(e, f);
838
+ },
839
+ $$slots: { default: !0 }
840
+ }), I();
841
+ }
842
+ //#endregion
843
+ //#region src/lib/stores/subfolders-refresh-store.svelte.ts
844
+ var zt = ve({}), Bt = ve({}), Vt = ve({}), Ht = q(0), Ut = q(null), Wt = ve({}), Gt = q(0);
845
+ function Kt() {
846
+ be(Gt);
847
+ }
848
+ function qt() {
849
+ return w(Gt);
850
+ }
851
+ function Jt(e) {
852
+ zt[e] = (zt[e] ?? 0) + 1;
853
+ }
854
+ function Yt(e) {
855
+ return zt[e] ?? 0;
856
+ }
857
+ function Xt(e, t, n, r) {
858
+ Bt[e] = {
859
+ parentId: t,
860
+ categoryId: n,
861
+ order: r
862
+ };
863
+ }
864
+ function Zt(e) {
865
+ return Bt[e];
866
+ }
867
+ function Qt(e, t, n) {
868
+ Vt[e] = {
869
+ folderId: t,
870
+ categoryId: n
871
+ };
872
+ }
873
+ function $t(e, t, n) {
874
+ Qt(e, t, n);
875
+ let r = he(Ht);
876
+ return V(Ut, {
877
+ id: e,
878
+ folderId: t,
879
+ categoryId: n,
880
+ version: r
881
+ }, !0), Wt[e] = {
882
+ folderId: t,
883
+ categoryId: n,
884
+ version: r
885
+ }, r;
886
+ }
887
+ function en(e, t) {
888
+ Wt[e]?.version === t && delete Wt[e];
889
+ }
890
+ function tn(e) {
891
+ return Wt[e];
892
+ }
893
+ function nn() {
894
+ return w(Ht);
895
+ }
896
+ function rn() {
897
+ return w(Ut);
898
+ }
899
+ function an(e) {
900
+ return Vt[e];
901
+ }
902
+ //#endregion
903
+ //#region src/lib/utils/clipboard.ts
904
+ async function on(e) {
905
+ if (navigator.clipboard?.writeText) try {
906
+ return await navigator.clipboard.writeText(e), !0;
907
+ } catch {}
908
+ try {
909
+ let t = document.createElement("textarea");
910
+ t.value = e, t.style.cssText = "position:fixed;left:-9999px;top:-9999px;opacity:0;", document.body.appendChild(t), t.select();
911
+ let n = document.execCommand("copy");
912
+ return document.body.removeChild(t), n;
913
+ } catch {
914
+ return !1;
915
+ }
916
+ }
917
+ //#endregion
918
+ //#region src/lib/utils.ts
919
+ function sn(...e) {
920
+ return Ee(P(e));
921
+ }
922
+ function cn(e) {
923
+ let t = Date.now() - new Date(e).getTime(), n = Math.floor(t / 1e3);
924
+ if (n < 60) return "just now";
925
+ let r = Math.floor(n / 60);
926
+ if (r < 60) return `${r}m ago`;
927
+ let i = Math.floor(r / 60);
928
+ if (i < 24) return `${i}h ago`;
929
+ let a = Math.floor(i / 24);
930
+ if (a < 30) return `${a}d ago`;
931
+ let o = Math.floor(a / 30);
932
+ return o < 12 ? `${o}mo ago` : `${Math.floor(o / 12)}y ago`;
933
+ }
934
+ //#endregion
935
+ //#region src/lib/components/FolderDialog.svelte
936
+ var ln = k("<!> <!>", 1), un = k("<div class=\"space-y-3 rounded-lg border border-primary/30 bg-primary/10 p-4\" role=\"status\" aria-live=\"polite\"><div class=\"flex items-start gap-3\"><!> <div><p class=\"text-sm font-medium text-foreground\">Folder created</p> <p class=\"text-sm text-muted-foreground\"> </p></div></div></div>"), dn = k("<p id=\"folder-dialog-name-error\" class=\"text-xs text-destructive\" role=\"alert\"> </p>"), fn = k("<form class=\"space-y-4\"><div class=\"space-y-2\"><!> <!> <!></div></form>"), pn = k("<!> ", 1), mn = k("<!> <!> <!>", 1);
937
+ function hn(t, n) {
938
+ R(n, !0);
939
+ let i = K(n, "open", 15, !1), o = K(n, "closeOnSave", 3, !0), s = q(""), c = q(null), l = q(!1), f = q(null);
940
+ E(() => {
941
+ i() && (V(s, n.folder?.name ?? "", !0), V(c, null), V(f, null));
942
+ });
943
+ let p = G(() => w(s).trim()), h = G(() => n.mode === "edit" ? m() : v()), ee = G(() => n.mode === "edit" ? d() : e());
944
+ async function te(e) {
945
+ if (e?.preventDefault(), !w(l)) {
946
+ if (w(p).length === 0) {
947
+ V(c, "Folder name is required");
948
+ return;
949
+ }
950
+ if (!n.onSave) {
951
+ _();
952
+ return;
953
+ }
954
+ V(l, !0);
955
+ try {
956
+ let e = await n.onSave(w(p));
957
+ o() ? _(!0) : V(f, typeof e == "object" && e && "name" in e && typeof e.name == "string" ? e.name : w(p), !0);
958
+ } catch (e) {
959
+ console.error("FolderDialog: save failed", e), V(c, e instanceof Error ? e.message : a(), !0);
960
+ } finally {
961
+ V(l, !1);
962
+ }
963
+ }
964
+ }
965
+ function g() {
966
+ V(f, null), V(s, ""), V(c, null);
967
+ }
968
+ function _(e = !1) {
969
+ w(l) && !e || (i(!1), n.onClose?.());
970
+ }
971
+ Me(t, {
972
+ onOpenChange: (e) => {
973
+ e || _();
974
+ },
975
+ get open() {
976
+ return i();
977
+ },
978
+ set open(e) {
979
+ i(e);
980
+ },
981
+ children: (e, t) => {
982
+ var i = mn(), a = L(i);
983
+ Ne(a, {
984
+ children: (e, t) => {
985
+ var i = ln(), a = L(i);
986
+ je(a, {
987
+ children: (e, t) => {
988
+ z();
989
+ var n = T();
990
+ J(() => b(n, w(h))), H(e, n);
991
+ },
992
+ $$slots: { default: !0 }
993
+ }), Oe(Z(a, 2), {
994
+ children: (e, t) => {
995
+ z();
996
+ var i = T();
997
+ J((e) => b(i, e), [() => n.mode === "edit" ? m() : r()]), H(e, i);
998
+ },
999
+ $$slots: { default: !0 }
1000
+ }), H(e, i);
1001
+ },
1002
+ $$slots: { default: !0 }
1003
+ });
1004
+ var o = Z(a, 2), d = (e) => {
1005
+ var t = un(), n = y(t), r = y(n);
1006
+ Ct(r, { class: "mt-0.5 size-5 shrink-0 text-primary" });
1007
+ var i = Z(r, 2), a = Z(y(i), 2), o = y(a);
1008
+ F(a), F(i), F(n), F(t), J(() => b(o, `${w(f) ?? ""} is ready to use.`)), H(e, t);
1009
+ }, v = (e) => {
1010
+ var t = fn(), n = y(t), i = y(n);
1011
+ Pe(i, {
1012
+ for: "folder-dialog-name",
1013
+ children: (e, t) => {
1014
+ z();
1015
+ var n = T();
1016
+ J((e) => b(n, e), [() => r()]), H(e, n);
1017
+ },
1018
+ $$slots: { default: !0 }
1019
+ });
1020
+ var a = Z(i, 2);
1021
+ {
1022
+ let e = G(() => r()), t = G(() => w(c) ? "true" : void 0), n = G(() => w(c) ? "folder-dialog-name-error" : void 0);
1023
+ Fe(a, {
1024
+ id: "folder-dialog-name",
1025
+ name: "name",
1026
+ type: "text",
1027
+ get placeholder() {
1028
+ return w(e);
1029
+ },
1030
+ maxlength: 255,
1031
+ required: !0,
1032
+ get disabled() {
1033
+ return w(l);
1034
+ },
1035
+ get "aria-invalid"() {
1036
+ return w(t);
1037
+ },
1038
+ get "aria-describedby"() {
1039
+ return w(n);
1040
+ },
1041
+ autocomplete: "off",
1042
+ get value() {
1043
+ return w(s);
1044
+ },
1045
+ set value(e) {
1046
+ V(s, e, !0);
1047
+ }
1048
+ });
1049
+ }
1050
+ var o = Z(a, 2), u = (e) => {
1051
+ var t = dn(), n = y(t, !0);
1052
+ F(t), J(() => b(n, w(c))), H(e, t);
1053
+ };
1054
+ S(o, (e) => {
1055
+ w(c) && e(u);
1056
+ }), F(n), F(t), Ce("submit", t, te), H(e, t);
1057
+ };
1058
+ S(o, (e) => {
1059
+ w(f) ? e(d) : e(v, -1);
1060
+ }), Ae(Z(o, 2), {
1061
+ class: "gap-2 max-sm:flex-col max-sm:items-stretch",
1062
+ children: (e, t) => {
1063
+ var n = ln(), r = L(n), i = (e) => {
1064
+ ke(e, {
1065
+ variant: "outline",
1066
+ type: "button",
1067
+ onclick: g,
1068
+ children: (e, t) => {
1069
+ z(), H(e, T("Create another"));
1070
+ },
1071
+ $$slots: { default: !0 }
1072
+ });
1073
+ }, a = (e) => {
1074
+ ke(e, {
1075
+ variant: "outline",
1076
+ type: "button",
1077
+ onclick: () => _(),
1078
+ get disabled() {
1079
+ return w(l);
1080
+ },
1081
+ children: (e, t) => {
1082
+ z();
1083
+ var n = T();
1084
+ J((e) => b(n, e), [() => u()]), H(e, n);
1085
+ },
1086
+ $$slots: { default: !0 }
1087
+ });
1088
+ };
1089
+ S(r, (e) => {
1090
+ w(f) ? e(i) : e(a, -1);
1091
+ });
1092
+ var o = Z(r, 2);
1093
+ {
1094
+ let e = G(() => w(f) ? () => _() : te), t = G(() => w(l) || !w(f) && w(p).length === 0);
1095
+ ke(o, {
1096
+ type: "submit",
1097
+ get onclick() {
1098
+ return w(e);
1099
+ },
1100
+ get disabled() {
1101
+ return w(t);
1102
+ },
1103
+ children: (e, t) => {
1104
+ var n = pn(), r = L(n), i = (e) => {
1105
+ Te(e, { class: "mr-1 size-4 animate-spin" });
1106
+ };
1107
+ S(r, (e) => {
1108
+ w(l) && e(i);
1109
+ });
1110
+ var a = Z(r);
1111
+ J(() => b(a, ` ${(w(f) ? "Done" : w(ee)) ?? ""}`)), H(e, n);
1112
+ },
1113
+ $$slots: { default: !0 }
1114
+ });
1115
+ }
1116
+ H(e, n);
1117
+ },
1118
+ $$slots: { default: !0 }
1119
+ }), H(e, i);
1120
+ },
1121
+ $$slots: { default: !0 }
1122
+ }), I();
1123
+ }
1124
+ //#endregion
1125
+ //#region src/lib/api/share.ts
1126
+ function gn(e) {
1127
+ return !e.documentId && !e.folderId && !e.categoryId ? Promise.reject(/* @__PURE__ */ Error("createShareLink: documentId, folderId, or categoryId is required")) : Xe("/api/share", {
1128
+ method: "POST",
1129
+ body: JSON.stringify(e)
1130
+ });
1131
+ }
1132
+ q(!1), q(!1);
1133
+ var _n = ve(/* @__PURE__ */ new Map()), vn = [
1134
+ "mod",
1135
+ "ctrl",
1136
+ "alt",
1137
+ "shift",
1138
+ "meta"
1139
+ ];
1140
+ function yn(e) {
1141
+ let t = e.split("+").map((e) => e.trim().toLowerCase()).filter(Boolean).map((e) => e === "cmd" || e === "meta" ? "mod" : e === "esc" ? "escape" : e === "slash" ? "/" : e === "question" ? "?" : e), n = [], r = "";
1142
+ for (let e of t) vn.includes(e) ? n.includes(e) || n.push(e) : r = e;
1143
+ return n.sort((e, t) => vn.indexOf(e) - vn.indexOf(t)), [...n, r].filter(Boolean).join("+");
1144
+ }
1145
+ function bn(e) {
1146
+ if (!e.id) return;
1147
+ let t = {
1148
+ ...e,
1149
+ keys: yn(e.keys),
1150
+ scope: e.scope ?? "global",
1151
+ enabled: e.enabled ?? !0
1152
+ };
1153
+ _n.set(e.id, t);
1154
+ }
1155
+ function xn(e) {
1156
+ _n.delete(e);
1157
+ }
1158
+ //#endregion
1159
+ //#region src/lib/components/ShareDialog.svelte
1160
+ var Sn = k("<input type=\"password\" class=\"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring\"/>"), Cn = k("<button> </button>"), wn = k("<span class=\"inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-0.5 text-xs\"> <button class=\"text-muted-foreground hover:text-foreground\">&times;</button></span>"), Tn = k("<div class=\"flex flex-wrap gap-1.5\"></div>"), En = k("<p class=\"text-xs text-destructive\"> </p>"), Dn = k("<div class=\"space-y-4\"><div class=\"flex items-center justify-between\"><span class=\"text-sm font-medium\"> </span> <button role=\"switch\"><span></span></button></div> <!> <div class=\"space-y-2\"><span class=\"text-sm font-medium\"> </span> <div class=\"flex gap-2\"></div></div> <div class=\"space-y-2\"><span class=\"text-sm font-medium\"> </span> <div class=\"flex gap-2\"><input type=\"email\" placeholder=\"guest@email.com\" class=\"flex h-9 flex-1 rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring\"/> <button class=\"rounded-md border border-border px-3 py-1.5 text-sm font-medium hover:bg-accent\"> </button></div> <!></div> <!> <button class=\"w-full rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50\"> </button></div>"), On = k("<div class=\"space-y-4\"><p class=\"text-sm text-muted-foreground\"> </p> <div class=\"flex items-center gap-2\"><code class=\"flex-1 truncate rounded-md bg-muted px-3 py-2 text-sm\"> </code> <button class=\"rounded-md bg-primary px-3 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90\"> </button></div> <button class=\"w-full rounded-md border border-border px-4 py-2 text-sm font-medium hover:bg-accent\"> </button></div>"), kn = k("<div class=\"fixed inset-0 z-50 flex items-center justify-center\"><button class=\"absolute inset-0 bg-black/50\"></button> <div class=\"relative z-10 w-full max-w-md rounded-lg border border-border bg-background p-6 shadow-lg\"><div class=\"mb-4 flex items-center justify-between\"><h2 class=\"text-lg font-semibold\"> </h2> <button class=\"rounded-md p-1 text-muted-foreground hover:bg-accent hover:text-foreground\">&#10005;</button></div> <!></div></div>");
1161
+ function An(e, r) {
1162
+ R(r, !0);
1163
+ let u = K(r, "open", 15, !1), d = K(r, "documentId", 3, ""), m = K(r, "documentTitle", 3, ""), v = K(r, "folderId", 3, ""), x = K(r, "folderName", 3, ""), C = K(r, "categoryId", 3, ""), T = K(r, "categoryName", 3, ""), D = q(!1), k = q(""), ce = q("7d"), le = q(""), j = q(ve([])), M = q(""), N = q(!1), de = q(!1), P = q("");
1164
+ E(() => (bn({
1165
+ id: "share-dialog-escape",
1166
+ keys: "escape",
1167
+ description: "Close share dialog",
1168
+ scope: "dialog",
1169
+ enabled: u(),
1170
+ overrideInput: !0,
1171
+ handler: () => {
1172
+ u() && B();
1173
+ }
1174
+ }), () => {
1175
+ xn("share-dialog-escape");
1176
+ }));
1177
+ function fe() {
1178
+ let e = w(le).trim();
1179
+ e?.includes("@") && !w(j).includes(e) && (V(j, [...w(j), e], !0), V(le, ""));
1180
+ }
1181
+ function pe(e) {
1182
+ V(j, w(j).filter((t) => t !== e), !0);
1183
+ }
1184
+ async function he() {
1185
+ V(de, !0), V(P, "");
1186
+ try {
1187
+ let e = await gn({
1188
+ documentId: d() || void 0,
1189
+ folderId: v() || void 0,
1190
+ categoryId: C() || void 0,
1191
+ password: w(D) ? w(k) : void 0,
1192
+ expiresIn: w(ce),
1193
+ guestEmails: w(j).length > 0 ? w(j) : void 0
1194
+ });
1195
+ V(M, `${window.location.origin}/s/${e.token}`);
1196
+ } catch (e) {
1197
+ V(P, e instanceof Error ? e.message : a(), !0), console.error("ShareDialog: createShareLink failed", e);
1198
+ } finally {
1199
+ V(de, !1);
1200
+ }
1201
+ }
1202
+ async function z() {
1203
+ w(M) && (await on(w(M)), V(N, !0), setTimeout(() => {
1204
+ V(N, !1);
1205
+ }, 2e3));
1206
+ }
1207
+ function B() {
1208
+ u(!1), V(M, ""), V(D, !1), V(k, ""), V(ce, "7d"), V(j, [], !0), V(P, "");
1209
+ }
1210
+ var U = O(), W = L(U), ye = (e) => {
1211
+ var r = kn(), a = y(r), u = Z(a, 2), d = y(u), v = y(d), C = y(v);
1212
+ F(v);
1213
+ var E = Z(v, 2);
1214
+ F(d);
1215
+ var O = Z(d, 2), I = (e) => {
1216
+ var r = Dn(), a = y(r), o = y(a), s = y(o, !0);
1217
+ F(o);
1218
+ var u = Z(o, 2), d = y(u);
1219
+ F(u), F(a);
1220
+ var m = Z(a, 2), h = (e) => {
1221
+ var n = Sn();
1222
+ xe(n), J((e) => ge(n, "placeholder", e), [() => t()]), me(n, () => w(k), (e) => V(k, e)), H(e, n);
1223
+ };
1224
+ S(m, (e) => {
1225
+ w(D) && e(h);
1226
+ });
1227
+ var g = Z(m, 2), _ = y(g), v = y(_, !0);
1228
+ F(_);
1229
+ var oe = Z(_, 2);
1230
+ ue(oe, 21, () => [
1231
+ ["1h", p()],
1232
+ ["1d", ae()],
1233
+ ["7d", ne()],
1234
+ ["30d", f()],
1235
+ ["never", ie()]
1236
+ ], se, (e, t) => {
1237
+ var n = G(() => Se(w(t), 2));
1238
+ let r = () => w(n)[0], i = () => w(n)[1];
1239
+ var a = Cn(), o = y(a, !0);
1240
+ F(a), J(() => {
1241
+ _e(a, 1, `rounded-md border px-2.5 py-1 text-xs font-medium transition-colors
1242
+ ${w(ce) === r() ? "border-primary bg-primary text-primary-foreground" : "border-border text-muted-foreground hover:bg-accent"}`), b(o, i());
1243
+ }), A("click", a, () => {
1244
+ V(ce, r(), !0);
1245
+ }), H(e, a);
1246
+ }), F(oe), F(g);
1247
+ var x = Z(g, 2), C = y(x), T = y(C, !0);
1248
+ F(C);
1249
+ var E = Z(C, 2), O = y(E);
1250
+ xe(O);
1251
+ var M = Z(O, 2), N = y(M, !0);
1252
+ F(M), F(E);
1253
+ var I = Z(E, 2), L = (e) => {
1254
+ var t = Tn();
1255
+ ue(t, 21, () => w(j), se, (e, t) => {
1256
+ var n = wn(), r = y(n), i = Z(r);
1257
+ F(n), J(() => b(r, `${w(t) ?? ""} `)), A("click", i, () => pe(w(t))), H(e, n);
1258
+ }), F(t), H(e, t);
1259
+ };
1260
+ S(I, (e) => {
1261
+ w(j).length > 0 && e(L);
1262
+ }), F(x);
1263
+ var R = Z(x, 2), z = (e) => {
1264
+ var t = En(), n = y(t, !0);
1265
+ F(t), J(() => b(n, w(P))), H(e, t);
1266
+ };
1267
+ S(R, (e) => {
1268
+ w(P) && e(z);
1269
+ });
1270
+ var B = Z(R, 2), U = y(B, !0);
1271
+ F(B), F(r), J((e, t, n, r, i, a) => {
1272
+ b(s, e), _e(u, 1, `relative inline-flex h-5 w-9 items-center rounded-full transition-colors ${w(D) ? "bg-primary" : "bg-input"}`), ge(u, "aria-checked", w(D)), ge(u, "aria-label", t), _e(d, 1, `inline-block h-4 w-4 rounded-full bg-white shadow transition-transform ${w(D) ? "translate-x-4" : "translate-x-0.5"}`), b(v, n), b(T, r), b(N, i), B.disabled = w(de), b(U, a);
1273
+ }, [
1274
+ () => l(),
1275
+ () => re(),
1276
+ () => c(),
1277
+ () => ee(),
1278
+ () => te(),
1279
+ () => w(de) ? i() : n()
1280
+ ]), A("click", u, () => {
1281
+ V(D, !w(D));
1282
+ }), A("keydown", O, (e) => {
1283
+ e.key === "Enter" && (e.preventDefault(), fe());
1284
+ }), me(O, () => w(le), (e) => V(le, e)), A("click", M, fe), A("click", B, he), H(e, r);
1285
+ }, L = (e) => {
1286
+ var t = On(), n = y(t), r = y(n, !0);
1287
+ F(n);
1288
+ var i = Z(n, 2), a = y(i), s = y(a, !0);
1289
+ F(a);
1290
+ var c = Z(a, 2), l = y(c, !0);
1291
+ F(c), F(i);
1292
+ var u = Z(i, 2), d = y(u, !0);
1293
+ F(u), F(t), J((e, t, n) => {
1294
+ b(r, e), b(s, w(M)), b(l, t), b(d, n);
1295
+ }, [
1296
+ () => h(),
1297
+ () => w(N) ? _() : g(),
1298
+ () => o()
1299
+ ]), A("click", c, z), A("click", u, B), H(e, t);
1300
+ };
1301
+ S(O, (e) => {
1302
+ w(M) ? e(L, -1) : e(I);
1303
+ }), F(u), F(r), J((e, t, n) => {
1304
+ ge(a, "aria-label", e), b(C, `${t ?? ""} "${(T() || x() || m()) ?? ""}"`), ge(E, "aria-label", n);
1305
+ }, [
1306
+ () => oe(),
1307
+ () => s(),
1308
+ () => oe()
1309
+ ]), A("click", a, B), A("click", E, B), H(e, r);
1310
+ };
1311
+ S(W, (e) => {
1312
+ u() && e(ye);
1313
+ }), H(e, U), I();
1314
+ }
1315
+ D(["click", "keydown"]);
1316
+ //#endregion
1317
+ export { xt as C, ht as D, _t as E, pt as O, St as S, yt as T, Qt as _, on as a, wt as b, an as c, qt as d, rn as f, Kt as g, $t as h, cn as i, dt as k, nn as l, Yt as m, hn as n, en as o, tn as p, sn as r, Jt as s, An as t, Zt as u, Xt as v, bt as w, Ct as x, Rt as y };