@hiai-gg/docsmint 0.3.8 → 0.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/backend/index.js +1 -1
  2. package/dist/client.d.ts +11 -0
  3. package/dist/client.js +9 -0
  4. package/dist/frontend/CategoryDialog-CxVyaBV5.js +611 -0
  5. package/dist/frontend/{ConfirmDialog-BLF3x_hr.js → ConfirmDialog-NFGXRa3E.js} +2 -2
  6. package/dist/frontend/{CreateSnapshotDialog-D5vPvFTL.js → CreateSnapshotDialog-BDgFTeFn.js} +40 -40
  7. package/dist/frontend/{DatePicker-CLNTdvTk.js → DatePicker-BZRBluzF.js} +102 -105
  8. package/dist/frontend/{DeleteDialog-DxYFJivN.js → DeleteDialog-CvAr2WPu.js} +39 -39
  9. package/dist/frontend/{FolderNode-C2zG7uii.js → FolderNode-C6FJv99G.js} +41 -41
  10. package/dist/frontend/HiaiDocsExtensionProvider-DHWLzRUu.js +11 -0
  11. package/dist/frontend/SettingsDialog-BHh68rTB.js +1016 -0
  12. package/dist/frontend/{ShareDialog-DYu3RKQu.js → ShareDialog-BUOkYSlw.js} +35 -35
  13. package/dist/frontend/Sidebar-Cu3JrKDC.js +2021 -0
  14. package/dist/frontend/{TagCreateDialog-DXQs2bL9.js → TagCreateDialog-B9YZBNHi.js} +38 -38
  15. package/dist/frontend/api/settings.js +1 -1
  16. package/dist/frontend/app-shell.d.ts +8 -0
  17. package/dist/frontend/app-shell.js +291 -0
  18. package/dist/frontend/{clsx-C7bIvsDS.js → bundle-mjs-DllmqUxV.js} +583 -583
  19. package/dist/frontend/components/category-dialog.js +1 -1
  20. package/dist/frontend/components/create-snapshot-dialog.js +1 -1
  21. package/dist/frontend/components/delete-dialog.js +1 -1
  22. package/dist/frontend/components/editor/document-editor.js +1102 -1102
  23. package/dist/frontend/components/editor/document-title.js +2 -2
  24. package/dist/frontend/components/editor/markdown-toggle.js +1 -1
  25. package/dist/frontend/components/folder-node.js +1 -1
  26. package/dist/frontend/components/save-as-dialog.js +75 -75
  27. package/dist/frontend/components/settings.js +1 -1
  28. package/dist/frontend/components/share-dialog.js +1 -1
  29. package/dist/frontend/components/sidebar.js +2 -2021
  30. package/dist/frontend/components/tag-create-dialog.js +1 -1
  31. package/dist/frontend/components/version-history.js +58 -58
  32. package/dist/frontend/{FolderDialog-CRVZM2Oi.js → confirm-dialog-C4jTRbiS.js} +69 -69
  33. package/dist/frontend/dashboard.js +1118 -1118
  34. package/dist/frontend/{dialog-D6NxYVmy.js → dialog-Bevp9mmM.js} +2 -2
  35. package/dist/frontend/{loader-circle-BA6aLO71.js → dist-C3857Spp.js} +81 -81
  36. package/dist/frontend/{ellipsis-vertical-P9MHvCps.js → dropdown-menu-CRSby3e9.js} +182 -182
  37. package/dist/frontend/extension.js +2 -11
  38. package/dist/frontend/{floating-layer-anchor-CPwucTfd.js → floating-layer-anchor-BDs7vO-M.js} +1 -1
  39. package/dist/frontend/frontend.css +1 -1
  40. package/dist/frontend/i18n.js +2 -2
  41. package/dist/frontend/{input-B5Rak-5G.js → input-BWlOML_m.js} +1 -1
  42. package/dist/frontend/{label-CW9rxoAb.js → label-C2HfJNQ2.js} +1 -1
  43. package/dist/frontend/{messages-BpYaLbzE.js → messages-C5Q890i2.js} +8 -8
  44. package/dist/frontend/search.js +613 -613
  45. package/dist/frontend/{select-value-sF86Geyh.js → select-value-GXwx90Pr.js} +2 -2
  46. package/dist/frontend/{settings-blyobazp.js → settings-DSrUl4hW.js} +9 -9
  47. package/dist/frontend/{textarea-i1720bE7.js → textarea-DOAE-h42.js} +1 -1
  48. package/dist/frontend/{utils-hzdMVeCv.js → utils-BPDRytUU.js} +1 -1
  49. package/dist/frontend/{utils-CffiyuTo.js → utils-DrfHTcei.js} +1 -1
  50. package/dist/frontend/utils.js +1 -1
  51. package/dist/frontend-ssr/api/settings.js +1 -1
  52. package/dist/frontend-ssr/app-shell.js +294 -0
  53. package/dist/frontend-ssr/assets/{CategoryDialog-C2xaZKHq.js → CategoryDialog-BcGW8-Kf.js} +4 -4
  54. package/dist/frontend-ssr/assets/{CreateSnapshotDialog-BRw1xJW1.js → CreateSnapshotDialog-1bROJ-Rn.js} +4 -4
  55. package/dist/frontend-ssr/assets/{DatePicker-DnXniwlZ.js → DatePicker-B1ML8OVz.js} +33 -33
  56. package/dist/frontend-ssr/assets/{FolderNode-DRfBfpft.js → FolderNode-BZ0Q2QUS.js} +3 -3
  57. package/dist/frontend-ssr/assets/HiaiDocsExtensionProvider-DAM-lX4R.js +13 -0
  58. package/dist/frontend-ssr/assets/{SettingsDialog-CX8Noa8A.js → SettingsDialog-B8L_YqNA.js} +16 -16
  59. package/dist/frontend-ssr/assets/{ShareDialog-Cge49ZdJ.js → ShareDialog-vMvJLRfn.js} +1 -1
  60. package/dist/frontend-ssr/assets/Sidebar-EHuUAx3W.js +2033 -0
  61. package/dist/frontend-ssr/assets/{TagCreateDialog-EAChgBF-.js → TagCreateDialog-B0DPEfmQ.js} +3 -3
  62. package/dist/frontend-ssr/assets/{FolderDialog-Dq7I2cKZ.js → confirm-dialog-BCthVwUY.js} +4 -4
  63. package/dist/frontend-ssr/assets/{ellipsis-vertical-C-0hgkZn.js → dropdown-menu-Bj5rbqbB.js} +96 -96
  64. package/dist/frontend-ssr/assets/{messages-DhXqlcJI.js → messages-CvqpZNJe.js} +1 -1
  65. package/dist/frontend-ssr/assets/{select-value-DngdSmLI.js → select-value-6Lk0ToYd.js} +1 -1
  66. package/dist/frontend-ssr/components/category-dialog.js +1 -1
  67. package/dist/frontend-ssr/components/create-snapshot-dialog.js +1 -1
  68. package/dist/frontend-ssr/components/delete-dialog.js +1 -1
  69. package/dist/frontend-ssr/components/editor/document-editor.js +5 -5
  70. package/dist/frontend-ssr/components/editor/document-title.js +1 -1
  71. package/dist/frontend-ssr/components/editor/markdown-toggle.js +1 -1
  72. package/dist/frontend-ssr/components/folder-node.js +1 -1
  73. package/dist/frontend-ssr/components/save-as-dialog.js +4 -4
  74. package/dist/frontend-ssr/components/settings.js +1 -1
  75. package/dist/frontend-ssr/components/share-dialog.js +1 -1
  76. package/dist/frontend-ssr/components/sidebar.js +1 -2032
  77. package/dist/frontend-ssr/components/tag-create-dialog.js +1 -1
  78. package/dist/frontend-ssr/components/version-history.js +3 -3
  79. package/dist/frontend-ssr/dashboard.js +15 -15
  80. package/dist/frontend-ssr/extension.js +1 -12
  81. package/dist/frontend-ssr/i18n.js +1 -1
  82. package/dist/frontend-ssr/search.js +3 -3
  83. package/package.json +7 -1
  84. package/packages/cli/src/index.ts +1 -1
  85. package/packages/mcp-server/src/index.ts +1 -1
  86. package/dist/frontend/CategoryDialog-DphkZqIB.js +0 -611
  87. package/dist/frontend/SettingsDialog-DCM4-N6_.js +0 -1016
  88. package/dist/frontend-ssr/assets/{DeleteDialog-BCfZy3Zn.js → DeleteDialog-tBYaP0L3.js} +1 -1
  89. package/dist/frontend-ssr/assets/{floating-layer-anchor-uzw9K8qN.js → floating-layer-anchor-CYIE8Oj6.js} +1 -1
  90. package/dist/frontend-ssr/assets/{settings-E6qSAWM2.js → settings-Bk5Hk9Vq.js} +1 -1
@@ -1,611 +0,0 @@
1
- import { t as e } from "./loader-circle-BA6aLO71.js";
2
- import { a as t, i as n, n as r, o as i, r as a, t as o } from "./dialog-D6NxYVmy.js";
3
- import { a as s, i as c, n as l, r as u, t as d } from "./select-value-sF86Geyh.js";
4
- import { t as f } from "./label-CW9rxoAb.js";
5
- import { t as p } from "./copy-GppwRMjX.js";
6
- import { t as m } from "./circle-check-tSPE1V6t.js";
7
- import { Qn as h, S as g, _, b as v, er as ee, g as te, h as ne, m as y, nr as re, p as b, tr as ie, v as ae, x as oe, y as se } from "./messages-BpYaLbzE.js";
8
- import { t as ce } from "./input-B5Rak-5G.js";
9
- import { a as le, n as ue, o as de, r as x, s as fe, t as pe } from "./api-keys-CpkrA8rD.js";
10
- import "svelte/internal/disclose-version";
11
- import * as S from "svelte/internal/client";
12
- //#region src/lib/components/sidebar/category-dialog-feedback.ts
13
- function C(e, t) {
14
- return typeof e == "object" && e && "status" in e && e.status === 409 ? "A category with this name already exists." : e instanceof Error && e.message.trim().length > 0 ? e.message : t;
15
- }
16
- //#endregion
17
- //#region src/lib/components/sidebar/CategoryDialog.svelte
18
- var me = S.from_html("<span class=\"font-medium text-foreground\"> </span> ", 1), he = S.from_html("Delete <span class=\"font-medium text-foreground\"> </span> ", 1), w = S.from_html("<!> <!>", 1), ge = S.from_html("<div class=\"flex items-start gap-3 rounded-lg border border-primary/30 bg-primary/10 p-4\" role=\"status\" aria-live=\"polite\"><!> <div><p class=\"text-sm font-medium text-foreground\"> </p> <p class=\"text-sm text-muted-foreground\"><span class=\"font-medium text-foreground\"> </span> </p></div></div>"), _e = S.from_html("<!> Copy API key", 1), ve = S.from_html("<div class=\"rounded-md border border-primary/20 bg-background/80 p-3\"><p class=\"text-xs font-medium text-foreground\">Copy the API key now. It remains available in Settings → API.</p> <code class=\"mt-2 block break-all rounded bg-muted p-2 text-xs text-foreground\"> </code> <!></div>"), T = S.from_html("<p class=\"text-xs text-destructive\" role=\"alert\"> </p>"), ye = S.from_html("<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\">Category created</p> <p class=\"text-sm text-muted-foreground\"> </p></div></div> <!> <!></div>"), be = S.from_html("<p id=\"category-dialog-name-error\" class=\"text-xs text-destructive\" role=\"alert\"> </p>"), E = S.from_html("<!> <!> <!>", 1), xe = S.from_html("<div class=\"space-y-3 rounded-md border border-border/70 bg-muted/30 p-3\"><div class=\"flex flex-wrap items-center justify-between gap-2\"><!> <div class=\"flex flex-wrap gap-2\"><!> <!></div></div> <div class=\"grid gap-2 sm:grid-cols-3\"><label class=\"flex items-center gap-2 rounded-md border border-border/60 bg-background px-3 py-2 text-sm\"><input type=\"checkbox\" class=\"size-4 rounded border-input\"/> <span>Read</span></label> <label class=\"flex items-center gap-2 rounded-md border border-border/60 bg-background px-3 py-2 text-sm\"><input type=\"checkbox\" class=\"size-4 rounded border-input\"/> <span>Edit</span></label> <label class=\"flex items-center gap-2 rounded-md border border-border/60 bg-background px-3 py-2 text-sm\"><input type=\"checkbox\" class=\"size-4 rounded border-input\"/> <span>Write</span></label></div></div>"), Se = S.from_html("<p class=\"text-xs text-muted-foreground\">Save Category API access first, then reopen settings to issue a key.</p>"), Ce = S.from_html("<div class=\"rounded-lg border border-primary/30 bg-primary/10 p-3 text-primary\"><p class=\"text-xs font-medium\">Copy now — this raw key is shown once.</p> <code class=\"mt-1 block break-all rounded bg-background/80 p-2 text-xs text-foreground\"> </code> <!></div>"), we = S.from_html("<div class=\"flex items-center justify-between gap-3 rounded-md bg-muted/40 px-3 py-2 text-xs\"><span> </span> <div class=\"flex shrink-0 gap-2\"><!> <!></div></div>"), Te = S.from_html("<div class=\"space-y-3 rounded-md border border-border/70 p-3\"><div class=\"flex items-center justify-between gap-2\"><div><!><p class=\"text-xs text-muted-foreground\">Keys inherit the saved permissions above.</p></div> <!></div> <!> <!> <div class=\"max-h-48 space-y-2 overflow-y-auto pr-1\"></div></div>"), Ee = S.from_html("<form class=\"space-y-4\"><div class=\"space-y-2\"><!> <!> <!></div> <div class=\"space-y-2\"><!> <!></div> <!> <!></form>"), D = S.from_html("<!> ", 1);
19
- function O(O, k) {
20
- S.push(k, !0);
21
- let A = {
22
- Root: s,
23
- Content: c,
24
- Item: u,
25
- Trigger: l,
26
- Value: d
27
- }, j = S.prop(k, "open", 15, !1), M = S.state(""), N = S.state(null), P = S.state(!1), F = S.state("unavailable"), I = S.state(!1), L = S.state(!1), R = S.state(!1), z = S.state(S.proxy([])), B = S.state(S.proxy({})), V = S.state(null), H = S.state(!1), U = S.state(null), W = S.state(null), G = S.state(null), K = S.derived(() => S.get(V) ? S.get(B)[S.get(V)] : void 0);
28
- async function q(e) {
29
- let t = await le();
30
- S.set(z, t.keys.filter((t) => ue(t.scopes) === e), !0);
31
- }
32
- async function De() {
33
- if (k.category?.id) {
34
- S.set(H, !0);
35
- try {
36
- let e = await x(k.category.id);
37
- S.set(B, {
38
- ...S.get(B),
39
- [e.id]: e.key
40
- }, !0), S.set(V, e.id, !0), await q(k.category.id);
41
- } catch (e) {
42
- S.set(N, e instanceof Error ? e.message : "Failed to create category API key", !0);
43
- } finally {
44
- S.set(H, !1);
45
- }
46
- }
47
- }
48
- async function Oe(e) {
49
- if (k.category?.id) {
50
- S.set(H, !0);
51
- try {
52
- await fe(e);
53
- let { [e]: t, ...n } = S.get(B);
54
- S.set(B, n, !0), S.get(V) === e && S.set(V, null), await q(k.category.id);
55
- } finally {
56
- S.set(H, !1);
57
- }
58
- }
59
- }
60
- async function ke(e) {
61
- let t = S.get(B)[e.id] ?? await de(e.id);
62
- await navigator.clipboard.writeText(pe(e, t));
63
- }
64
- S.user_effect(() => {
65
- if (!j()) return;
66
- S.set(M, k.category?.name ?? "", !0);
67
- let e = k.category?.apiMode === "category" ? "category" : k.category?.apiMode === "global" || k.category?.apiMode === "general" ? "global" : "unavailable";
68
- S.set(F, e, !0), S.set(I, !!k.category?.apiPermissionRead, !0), S.set(L, !!k.category?.apiPermissionEdit, !0), S.set(R, !!k.category?.apiPermissionWrite, !0), e === "unavailable" && (S.set(I, !1), S.set(L, !1), S.set(R, !1)), S.set(B, {}, !0), S.set(V, null), S.set(z, [], !0), S.set(U, null), S.set(W, null), S.set(G, null), k.mode === "edit" && k.category?.id && q(k.category.id), S.set(N, null);
69
- });
70
- let J = S.derived(() => S.get(M).trim()), Y = S.derived(() => k.mode === "delete"), Ae = S.derived(() => S.get(I) || S.get(L) || S.get(R)), X = S.derived(() => S.get(G) ? y() : S.get(Y) ? te() : k.mode === "edit" ? oe() : g()), je = S.derived(() => S.get(Y) ? ee() : k.mode === "edit" ? re() : h());
71
- function Me(e) {
72
- return e === "category" ? "category" : e === "global" ? "global" : "unavailable";
73
- }
74
- function Z(e) {
75
- if (e === "read") {
76
- S.set(I, !0), S.set(L, !1), S.set(R, !1);
77
- return;
78
- }
79
- if (e === "write") {
80
- S.set(I, !1), S.set(L, !1), S.set(R, !0);
81
- return;
82
- }
83
- if (e === "read-write") {
84
- S.set(I, !0), S.set(L, !1), S.set(R, !0);
85
- return;
86
- }
87
- S.set(I, !0), S.set(L, !0), S.set(R, !0);
88
- }
89
- async function Q(e) {
90
- if (e?.preventDefault(), !S.get(P)) {
91
- if (S.get(Y)) {
92
- if (!k.onDelete) {
93
- $();
94
- return;
95
- }
96
- S.set(P, !0);
97
- try {
98
- await k.onDelete(), S.set(G, k.category?.name ?? "Category", !0);
99
- } catch (e) {
100
- console.error("CategoryDialog: delete failed", e), S.set(N, e instanceof Error ? e.message : _(), !0);
101
- } finally {
102
- S.set(P, !1);
103
- }
104
- return;
105
- }
106
- if (S.get(J).length === 0) {
107
- S.set(N, "Name is required");
108
- return;
109
- }
110
- if (S.get(F) !== "unavailable" && !S.get(Ae)) {
111
- S.set(N, "Select at least one permission");
112
- return;
113
- }
114
- if (!k.onSave) {
115
- $();
116
- return;
117
- }
118
- S.set(N, null), S.set(P, !0);
119
- try {
120
- let e = await k.onSave({
121
- name: S.get(J),
122
- apiMode: Me(S.get(F)),
123
- apiPermissionRead: S.get(F) === "unavailable" ? !1 : S.get(I),
124
- apiPermissionEdit: S.get(F) === "unavailable" ? !1 : S.get(L),
125
- apiPermissionWrite: S.get(F) === "unavailable" ? !1 : S.get(R)
126
- });
127
- if (k.mode === "create" && e) {
128
- if (S.set(U, e.name, !0), S.get(F) === "category") try {
129
- let t = await x(e.id);
130
- S.set(W, t.key, !0);
131
- } catch (e) {
132
- S.set(N, `Category created, but its API key could not be created: ${C(e, "Unknown error")}`);
133
- }
134
- return;
135
- }
136
- $();
137
- } catch (e) {
138
- console.error("CategoryDialog: save failed", e), S.set(N, C(e, k.mode === "edit" ? ae() : se()), !0);
139
- } finally {
140
- S.set(P, !1);
141
- }
142
- }
143
- }
144
- function $() {
145
- S.get(P) || (j(!1), k.onClose?.());
146
- }
147
- function Ne(e) {
148
- if (!e && S.get(P)) {
149
- j(!0);
150
- return;
151
- }
152
- e || $();
153
- }
154
- t(O, {
155
- onOpenChange: Ne,
156
- get open() {
157
- return j();
158
- },
159
- set open(e) {
160
- j(e);
161
- },
162
- children: (t, s) => {
163
- var c = E(), l = S.first_child(c);
164
- r(l, {
165
- children: (e, t) => {
166
- var r = w(), i = S.first_child(r);
167
- o(i, {
168
- children: (e, t) => {
169
- S.next();
170
- var n = S.text();
171
- S.template_effect(() => S.set_text(n, S.get(X))), S.append(e, n);
172
- },
173
- $$slots: { default: !0 }
174
- });
175
- var a = S.sibling(i, 2), s = (e) => {
176
- n(e, {
177
- children: (e, t) => {
178
- var n = me(), r = S.first_child(n), i = S.child(r);
179
- S.reset(r);
180
- var a = S.sibling(r);
181
- S.template_effect((e) => {
182
- S.set_text(i, `“${S.get(G) ?? ""}”`), S.set_text(a, ` ${e ?? ""}`);
183
- }, [() => b()]), S.append(e, n);
184
- },
185
- $$slots: { default: !0 }
186
- });
187
- }, c = (e) => {
188
- n(e, {
189
- children: (e, t) => {
190
- S.next();
191
- var n = he(), r = S.sibling(S.first_child(n)), i = S.child(r);
192
- S.reset(r);
193
- var a = S.sibling(r);
194
- S.template_effect((e) => {
195
- S.set_text(i, `“${k.category?.name ?? "Category" ?? ""}”`), S.set_text(a, `?
196
- ${e ?? ""}`);
197
- }, [() => ne()]), S.append(e, n);
198
- },
199
- $$slots: { default: !0 }
200
- });
201
- }, l = (e) => {
202
- n(e, {
203
- children: (e, t) => {
204
- S.next();
205
- var n = S.text();
206
- S.template_effect((e) => S.set_text(n, e), [() => v()]), S.append(e, n);
207
- },
208
- $$slots: { default: !0 }
209
- });
210
- };
211
- S.if(a, (e) => {
212
- S.get(G) ? e(s) : S.get(Y) ? e(c, 1) : e(l, -1);
213
- }), S.append(e, r);
214
- },
215
- $$slots: { default: !0 }
216
- });
217
- var u = S.sibling(l, 2), d = (e) => {
218
- var t = ge(), n = S.child(t);
219
- m(n, { class: "mt-0.5 size-5 shrink-0 text-primary" });
220
- var r = S.sibling(n, 2), i = S.child(r), a = S.child(i, !0);
221
- S.reset(i);
222
- var o = S.sibling(i, 2), s = S.child(o), c = S.child(s);
223
- S.reset(s);
224
- var l = S.sibling(s);
225
- S.reset(o), S.reset(r), S.reset(t), S.template_effect((e, t) => {
226
- S.set_text(a, e), S.set_text(c, `“${S.get(G) ?? ""}”`), S.set_text(l, ` ${t ?? ""}`);
227
- }, [() => y(), () => b()]), S.append(e, t);
228
- }, h = (e) => {
229
- var t = ye(), n = S.child(t), r = S.child(n);
230
- m(r, { class: "mt-0.5 size-5 shrink-0 text-primary" });
231
- var a = S.sibling(r, 2), o = S.sibling(S.child(a), 2), s = S.child(o);
232
- S.reset(o), S.reset(a), S.reset(n);
233
- var c = S.sibling(n, 2), l = (e) => {
234
- var t = ve(), n = S.sibling(S.child(t), 2), r = S.child(n, !0);
235
- S.reset(n), i(S.sibling(n, 2), {
236
- type: "button",
237
- size: "sm",
238
- variant: "outline",
239
- class: "mt-2",
240
- onclick: () => navigator.clipboard.writeText(S.get(W) ?? ""),
241
- children: (e, t) => {
242
- var n = _e();
243
- p(S.first_child(n), { class: "mr-1 size-3.5" }), S.next(), S.append(e, n);
244
- },
245
- $$slots: { default: !0 }
246
- }), S.reset(t), S.template_effect(() => S.set_text(r, S.get(W))), S.append(e, t);
247
- };
248
- S.if(c, (e) => {
249
- S.get(W) && e(l);
250
- });
251
- var u = S.sibling(c, 2), d = (e) => {
252
- var t = T(), n = S.child(t, !0);
253
- S.reset(t), S.template_effect(() => S.set_text(n, S.get(N))), S.append(e, t);
254
- };
255
- S.if(u, (e) => {
256
- S.get(N) && e(d);
257
- }), S.reset(t), S.template_effect(() => S.set_text(s, `${S.get(U) ?? ""} is ready to use.`)), S.append(e, t);
258
- }, g = (e) => {
259
- var t = Ee(), n = S.child(t), r = S.child(n);
260
- f(r, {
261
- for: "category-dialog-name",
262
- children: (e, t) => {
263
- S.next();
264
- var n = S.text();
265
- S.template_effect((e) => S.set_text(n, e), [() => v()]), S.append(e, n);
266
- },
267
- $$slots: { default: !0 }
268
- });
269
- var a = S.sibling(r, 2);
270
- {
271
- let e = S.derived(() => v()), t = S.derived(() => S.get(N) ? "true" : void 0), n = S.derived(() => S.get(N) ? "category-dialog-name-error" : void 0);
272
- ce(a, {
273
- id: "category-dialog-name",
274
- name: "name",
275
- type: "text",
276
- get placeholder() {
277
- return S.get(e);
278
- },
279
- maxlength: 255,
280
- required: !0,
281
- get disabled() {
282
- return S.get(P);
283
- },
284
- get "aria-invalid"() {
285
- return S.get(t);
286
- },
287
- get "aria-describedby"() {
288
- return S.get(n);
289
- },
290
- autocomplete: "off",
291
- get value() {
292
- return S.get(M);
293
- },
294
- set value(e) {
295
- S.set(M, e, !0);
296
- }
297
- });
298
- }
299
- var o = S.sibling(a, 2), s = (e) => {
300
- var t = be(), n = S.child(t, !0);
301
- S.reset(t), S.template_effect(() => S.set_text(n, S.get(N))), S.append(e, t);
302
- };
303
- S.if(o, (e) => {
304
- S.get(N) && e(s);
305
- }), S.reset(n);
306
- var c = S.sibling(n, 2), l = S.child(c);
307
- f(l, {
308
- for: "category-dialog-api-mode",
309
- children: (e, t) => {
310
- S.next();
311
- var n = S.text("API access");
312
- S.append(e, n);
313
- },
314
- $$slots: { default: !0 }
315
- });
316
- var u = S.sibling(l, 2);
317
- S.component(u, () => A.Root, (e, t) => {
318
- t(e, {
319
- type: "single",
320
- get value() {
321
- return S.get(F);
322
- },
323
- get disabled() {
324
- return S.get(P);
325
- },
326
- onValueChange: (e) => {
327
- (e === "unavailable" || e === "global" || e === "category") && S.set(F, e, !0);
328
- },
329
- children: (e, t) => {
330
- var n = w(), r = S.first_child(n);
331
- S.component(r, () => A.Trigger, (e, t) => {
332
- t(e, {
333
- id: "category-dialog-api-mode",
334
- class: "h-10 w-full",
335
- children: (e, t) => {
336
- var n = S.comment(), r = S.first_child(n);
337
- S.component(r, () => A.Value, (e, t) => {
338
- t(e, {
339
- placeholder: "Select API access",
340
- children: (e, t) => {
341
- S.next();
342
- var n = S.text();
343
- S.template_effect(() => S.set_text(n, S.get(F) === "unavailable" ? "Unavailable" : S.get(F) === "global" ? "Global" : "Category API")), S.append(e, n);
344
- },
345
- $$slots: { default: !0 }
346
- });
347
- }), S.append(e, n);
348
- },
349
- $$slots: { default: !0 }
350
- });
351
- });
352
- var i = S.sibling(r, 2);
353
- S.component(i, () => A.Content, (e, t) => {
354
- t(e, {
355
- children: (e, t) => {
356
- var n = E(), r = S.first_child(n);
357
- S.component(r, () => A.Item, (e, t) => {
358
- t(e, {
359
- value: "unavailable",
360
- children: (e, t) => {
361
- S.next();
362
- var n = S.text("Unavailable");
363
- S.append(e, n);
364
- },
365
- $$slots: { default: !0 }
366
- });
367
- });
368
- var i = S.sibling(r, 2);
369
- S.component(i, () => A.Item, (e, t) => {
370
- t(e, {
371
- value: "global",
372
- children: (e, t) => {
373
- S.next();
374
- var n = S.text("Global");
375
- S.append(e, n);
376
- },
377
- $$slots: { default: !0 }
378
- });
379
- });
380
- var a = S.sibling(i, 2);
381
- S.component(a, () => A.Item, (e, t) => {
382
- t(e, {
383
- value: "category",
384
- children: (e, t) => {
385
- S.next();
386
- var n = S.text("Category API");
387
- S.append(e, n);
388
- },
389
- $$slots: { default: !0 }
390
- });
391
- }), S.append(e, n);
392
- },
393
- $$slots: { default: !0 }
394
- });
395
- }), S.append(e, n);
396
- },
397
- $$slots: { default: !0 }
398
- });
399
- }), S.reset(c);
400
- var d = S.sibling(c, 2), p = (e) => {
401
- var t = xe(), n = S.child(t), r = S.child(n);
402
- f(r, {
403
- class: "text-sm",
404
- children: (e, t) => {
405
- S.next();
406
- var n = S.text("Permissions");
407
- S.append(e, n);
408
- },
409
- $$slots: { default: !0 }
410
- });
411
- var a = S.sibling(r, 2), o = S.child(a);
412
- i(o, {
413
- type: "button",
414
- variant: "outline",
415
- size: "sm",
416
- onclick: () => Z("read-write"),
417
- children: (e, t) => {
418
- S.next();
419
- var n = S.text("Read / Write");
420
- S.append(e, n);
421
- },
422
- $$slots: { default: !0 }
423
- }), i(S.sibling(o, 2), {
424
- type: "button",
425
- variant: "outline",
426
- size: "sm",
427
- onclick: () => Z("read-edit-write"),
428
- children: (e, t) => {
429
- S.next();
430
- var n = S.text("Read / Edit / Write");
431
- S.append(e, n);
432
- },
433
- $$slots: { default: !0 }
434
- }), S.reset(a), S.reset(n);
435
- var s = S.sibling(n, 2), c = S.child(s), l = S.child(c);
436
- S.remove_input_defaults(l), S.next(2), S.reset(c);
437
- var u = S.sibling(c, 2), d = S.child(u);
438
- S.remove_input_defaults(d), S.next(2), S.reset(u);
439
- var p = S.sibling(u, 2), m = S.child(p);
440
- S.remove_input_defaults(m), S.next(2), S.reset(p), S.reset(s), S.reset(t), S.template_effect(() => {
441
- l.disabled = S.get(P), d.disabled = S.get(P), m.disabled = S.get(P);
442
- }), S.bind_checked(l, () => S.get(I), (e) => S.set(I, e)), S.bind_checked(d, () => S.get(L), (e) => S.set(L, e)), S.bind_checked(m, () => S.get(R), (e) => S.set(R, e)), S.append(e, t);
443
- };
444
- S.if(d, (e) => {
445
- S.get(F) !== "unavailable" && e(p);
446
- });
447
- var m = S.sibling(d, 2), h = (e) => {
448
- var t = Te(), n = S.child(t), r = S.child(n);
449
- f(S.child(r), {
450
- children: (e, t) => {
451
- S.next();
452
- var n = S.text("Category API keys");
453
- S.append(e, n);
454
- },
455
- $$slots: { default: !0 }
456
- }), S.next(), S.reset(r);
457
- var a = S.sibling(r, 2);
458
- {
459
- let e = S.derived(() => S.get(P) || S.get(H) || k.category.apiMode !== "category");
460
- i(a, {
461
- type: "button",
462
- size: "sm",
463
- onclick: De,
464
- get disabled() {
465
- return S.get(e);
466
- },
467
- children: (e, t) => {
468
- S.next();
469
- var n = S.text("Create key");
470
- S.append(e, n);
471
- },
472
- $$slots: { default: !0 }
473
- });
474
- }
475
- S.reset(n);
476
- var o = S.sibling(n, 2), s = (e) => {
477
- var t = Se();
478
- S.append(e, t);
479
- };
480
- S.if(o, (e) => {
481
- k.category.apiMode !== "category" && e(s);
482
- });
483
- var c = S.sibling(o, 2), l = (e) => {
484
- var t = Ce(), n = S.sibling(S.child(t), 2), r = S.child(n, !0);
485
- S.reset(n), i(S.sibling(n, 2), {
486
- type: "button",
487
- size: "sm",
488
- variant: "outline",
489
- class: "mt-2",
490
- onclick: () => navigator.clipboard.writeText(S.get(K)),
491
- children: (e, t) => {
492
- S.next();
493
- var n = S.text("Copy key");
494
- S.append(e, n);
495
- },
496
- $$slots: { default: !0 }
497
- }), S.reset(t), S.template_effect(() => S.set_text(r, S.get(K))), S.append(e, t);
498
- };
499
- S.if(c, (e) => {
500
- S.get(K) && e(l);
501
- });
502
- var u = S.sibling(c, 2);
503
- S.each(u, 21, () => S.get(z), (e) => e.id, (e, t) => {
504
- var n = we(), r = S.child(n), a = S.child(r);
505
- S.reset(r);
506
- var o = S.sibling(r, 2), s = S.child(o);
507
- {
508
- let e = S.derived(() => !S.get(t).recoverable && !S.get(B)[S.get(t).id]);
509
- i(s, {
510
- type: "button",
511
- size: "sm",
512
- variant: "outline",
513
- onclick: () => ke(S.get(t)),
514
- get disabled() {
515
- return S.get(e);
516
- },
517
- children: (e, n) => {
518
- S.next();
519
- var r = S.text();
520
- S.template_effect(() => S.set_text(r, S.get(t).recoverable || S.get(B)[S.get(t).id] ? "Copy key" : "Rotate to enable copy")), S.append(e, r);
521
- },
522
- $$slots: { default: !0 }
523
- });
524
- }
525
- i(S.sibling(s, 2), {
526
- type: "button",
527
- size: "sm",
528
- variant: "destructive",
529
- onclick: () => Oe(S.get(t).id),
530
- get disabled() {
531
- return S.get(H);
532
- },
533
- children: (e, t) => {
534
- S.next();
535
- var n = S.text("Revoke");
536
- S.append(e, n);
537
- },
538
- $$slots: { default: !0 }
539
- }), S.reset(o), S.reset(n), S.template_effect(() => S.set_text(a, `${S.get(t).name ?? ""} · ${S.get(t).prefix ?? ""}…`)), S.append(e, n);
540
- }), S.reset(u), S.reset(t), S.append(e, t);
541
- };
542
- S.if(m, (e) => {
543
- k.mode === "edit" && S.get(F) === "category" && k.category?.id && e(h);
544
- }), S.reset(t), S.event("submit", t, Q), S.append(e, t);
545
- }, _ = (e) => {
546
- var t = T(), n = S.child(t, !0);
547
- S.reset(t), S.template_effect(() => S.set_text(n, S.get(N))), S.append(e, t);
548
- };
549
- S.if(u, (e) => {
550
- S.get(G) ? e(d) : S.get(U) ? e(h, 1) : S.get(Y) ? S.get(N) && e(_, 3) : e(g, 2);
551
- }), a(S.sibling(u, 2), {
552
- class: "gap-2 max-sm:flex-col max-sm:items-stretch",
553
- children: (t, n) => {
554
- var r = w(), a = S.first_child(r), o = (e) => {
555
- i(e, {
556
- variant: "outline",
557
- type: "button",
558
- onclick: $,
559
- get disabled() {
560
- return S.get(P);
561
- },
562
- children: (e, t) => {
563
- S.next();
564
- var n = S.text();
565
- S.template_effect((e) => S.set_text(n, e), [() => ie()]), S.append(e, n);
566
- },
567
- $$slots: { default: !0 }
568
- });
569
- };
570
- S.if(a, (e) => {
571
- !S.get(U) && !S.get(G) && e(o);
572
- });
573
- var s = S.sibling(a, 2);
574
- {
575
- let t = S.derived(() => S.get(Y) ? "button" : "submit"), n = S.derived(() => S.get(Y) ? "destructive" : "default"), r = S.derived(() => S.get(U) || S.get(G) ? $ : Q), a = S.derived(() => S.get(P) || !S.get(Y) && !S.get(U) && !S.get(G) && S.get(J).length === 0);
576
- i(s, {
577
- get type() {
578
- return S.get(t);
579
- },
580
- get variant() {
581
- return S.get(n);
582
- },
583
- get onclick() {
584
- return S.get(r);
585
- },
586
- get disabled() {
587
- return S.get(a);
588
- },
589
- children: (t, n) => {
590
- var r = D(), i = S.first_child(r), a = (t) => {
591
- e(t, { class: "mr-1 size-4 animate-spin" });
592
- };
593
- S.if(i, (e) => {
594
- S.get(P) && e(a);
595
- });
596
- var o = S.sibling(i);
597
- S.template_effect(() => S.set_text(o, ` ${(S.get(U) || S.get(G) ? "Done" : S.get(je)) ?? ""}`)), S.append(t, r);
598
- },
599
- $$slots: { default: !0 }
600
- });
601
- }
602
- S.append(t, r);
603
- },
604
- $$slots: { default: !0 }
605
- }), S.append(t, c);
606
- },
607
- $$slots: { default: !0 }
608
- }), S.pop();
609
- }
610
- //#endregion
611
- export { O as t };