@hiai-gg/docsmint 0.3.7 → 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 (210) hide show
  1. package/backend/src/lib/logger.ts +45 -15
  2. package/dist/backend/index.js +238 -150
  3. package/dist/client.d.ts +11 -0
  4. package/dist/client.js +9 -0
  5. package/dist/frontend/CategoryDialog-CxVyaBV5.js +611 -0
  6. package/dist/frontend/ConfirmDialog-NFGXRa3E.js +214 -0
  7. package/dist/frontend/CreateSnapshotDialog-BDgFTeFn.js +216 -0
  8. package/dist/frontend/DatePicker-BZRBluzF.js +256 -0
  9. package/dist/frontend/DeleteDialog-CvAr2WPu.js +174 -0
  10. package/dist/frontend/FolderNode-C6FJv99G.js +298 -0
  11. package/dist/frontend/FolderTreeSelector-CyB8y2Sm.js +103 -0
  12. package/dist/frontend/HiaiDocsExtensionProvider-DHWLzRUu.js +11 -0
  13. package/dist/frontend/Icon-CooFj4Ee.js +64 -0
  14. package/dist/frontend/SettingsDialog-BHh68rTB.js +1016 -0
  15. package/dist/frontend/ShareDialog-BUOkYSlw.js +165 -0
  16. package/dist/frontend/Sidebar-Cu3JrKDC.js +2021 -0
  17. package/dist/frontend/TagCreateDialog-B9YZBNHi.js +260 -0
  18. package/dist/frontend/api/settings.js +1 -1
  19. package/dist/frontend/app-shell.d.ts +8 -0
  20. package/dist/frontend/app-shell.js +291 -0
  21. package/dist/frontend/{bundle-mjs-CP6Owz-8.js → bundle-mjs-DllmqUxV.js} +583 -568
  22. package/dist/frontend/camera-iKXDOOWT.js +29 -0
  23. package/dist/frontend/check-D-UuvBuh.js +25 -0
  24. package/dist/frontend/chevron-down-CiPtYyFh.js +25 -0
  25. package/dist/frontend/circle-check-tSPE1V6t.js +29 -0
  26. package/dist/frontend/clock-DJHbHZb8.js +29 -0
  27. package/dist/frontend/components/category-dialog.js +1 -1
  28. package/dist/frontend/components/create-snapshot-dialog.js +1 -1
  29. package/dist/frontend/components/delete-dialog.js +1 -1
  30. package/dist/frontend/components/editor/document-editor.js +1367 -1356
  31. package/dist/frontend/components/editor/document-title.js +25 -25
  32. package/dist/frontend/components/editor/markdown-toggle.js +45 -45
  33. package/dist/frontend/components/folder-node.js +1 -1
  34. package/dist/frontend/components/folder-tree-selector.js +1 -1
  35. package/dist/frontend/components/save-as-dialog.js +169 -151
  36. package/dist/frontend/components/settings.js +1 -1
  37. package/dist/frontend/components/share-dialog.js +1 -1
  38. package/dist/frontend/components/sidebar.js +2 -2013
  39. package/dist/frontend/components/tag-create-dialog.js +1 -1
  40. package/dist/frontend/components/version-history.js +188 -187
  41. package/dist/frontend/confirm-dialog-C4jTRbiS.js +250 -0
  42. package/dist/frontend/copy-GppwRMjX.js +32 -0
  43. package/dist/frontend/dashboard.js +1187 -1155
  44. package/dist/frontend/dialog-Bevp9mmM.js +213 -0
  45. package/dist/frontend/{loader-circle-Bk-WFz9g.js → dist-C3857Spp.js} +93 -92
  46. package/dist/frontend/doc-tabs.js +2 -2
  47. package/dist/frontend/dropdown-menu-CRSby3e9.js +530 -0
  48. package/dist/frontend/extension.js +2 -11
  49. package/dist/frontend/{floating-layer-anchor-C51M4l6v.js → floating-layer-anchor-BDs7vO-M.js} +1414 -1412
  50. package/dist/frontend/folder-DeWhnD7O.js +45 -0
  51. package/dist/frontend/folder-refresh.js +1 -1
  52. package/dist/frontend/frontend.css +1 -1
  53. package/dist/frontend/i18n.js +2 -2
  54. package/dist/frontend/input-BWlOML_m.js +23 -0
  55. package/dist/frontend/keyboard.js +1 -1
  56. package/dist/frontend/{keyboard.svelte-D7H8DihC.js → keyboard.svelte-CApmX0vl.js} +53 -53
  57. package/dist/frontend/label-C2HfJNQ2.js +30 -0
  58. package/dist/frontend/{messages-BpYaLbzE.js → messages-C5Q890i2.js} +8 -8
  59. package/dist/frontend/rotate-ccw-B4Q7brmV.js +25 -0
  60. package/dist/frontend/search.js +673 -647
  61. package/dist/frontend/select-value-GXwx90Pr.js +1446 -0
  62. package/dist/frontend/{settings-blyobazp.js → settings-DSrUl4hW.js} +9 -9
  63. package/dist/frontend/shared-document.js +94 -94
  64. package/dist/frontend/subfolders-refresh-store.svelte-B2dKVmgz.js +65 -0
  65. package/dist/frontend/tag-HxRazVN_.js +54 -0
  66. package/dist/frontend/tag-store.svelte-CqrUXo0o.js +29 -0
  67. package/dist/frontend/textarea-DOAE-h42.js +23 -0
  68. package/dist/frontend/theme.js +1 -1
  69. package/dist/frontend/theme.svelte-DKfCy12k.js +49 -0
  70. package/dist/frontend/{utils-D8kmM3ub.js → utils-BPDRytUU.js} +2 -3
  71. package/dist/frontend/{utils-C0OW2678.js → utils-DrfHTcei.js} +2 -3
  72. package/dist/frontend/utils.js +1 -1
  73. package/dist/frontend/x-CzBsnJ2x.js +25 -0
  74. package/dist/frontend-ssr/api/attachments.js +2 -0
  75. package/dist/frontend-ssr/api/categories.js +2 -0
  76. package/dist/frontend-ssr/api/documents.js +2 -0
  77. package/dist/frontend-ssr/api/folders.js +2 -0
  78. package/dist/frontend-ssr/api/settings.js +2 -0
  79. package/dist/frontend-ssr/api/share.js +2 -0
  80. package/dist/frontend-ssr/api/tags.js +2 -0
  81. package/dist/frontend-ssr/app-shell.js +294 -0
  82. package/dist/frontend-ssr/assets/CategoryDialog-BcGW8-Kf.js +584 -0
  83. package/dist/frontend-ssr/assets/ConfirmDialog-DjMFKc0V.js +420 -0
  84. package/dist/frontend-ssr/assets/CreateSnapshotDialog-1bROJ-Rn.js +214 -0
  85. package/dist/frontend-ssr/assets/DatePicker-B1ML8OVz.js +312 -0
  86. package/dist/frontend-ssr/assets/DeleteDialog-tBYaP0L3.js +154 -0
  87. package/dist/frontend-ssr/assets/FolderNode-BZ0Q2QUS.js +171 -0
  88. package/dist/frontend-ssr/assets/FolderTreeSelector-DZNZ2oI6.js +147 -0
  89. package/dist/frontend-ssr/assets/HiaiDocsExtensionProvider-DAM-lX4R.js +13 -0
  90. package/dist/frontend-ssr/assets/Icon-B0Zqppjo.js +231 -0
  91. package/dist/frontend-ssr/assets/SettingsDialog-B8L_YqNA.js +1107 -0
  92. package/dist/frontend-ssr/assets/ShareDialog-vMvJLRfn.js +54 -0
  93. package/dist/frontend-ssr/assets/Sidebar-EHuUAx3W.js +2033 -0
  94. package/dist/frontend-ssr/assets/TagCreateDialog-B0DPEfmQ.js +264 -0
  95. package/dist/frontend-ssr/assets/api-keys-DFqX39MT.js +35 -0
  96. package/dist/frontend-ssr/assets/attachments-CWBxE3Vz.js +85 -0
  97. package/dist/frontend-ssr/assets/auth-client-x26kqY8Z.js +1286 -0
  98. package/dist/frontend-ssr/assets/camera-CdxscTw-.js +84 -0
  99. package/dist/frontend-ssr/assets/categories-AOqgcsn4.js +75 -0
  100. package/dist/frontend-ssr/assets/chevron-down-CSSNGNh_.js +80 -0
  101. package/dist/frontend-ssr/assets/chevron-right-B4p7Sk6X.js +80 -0
  102. package/dist/frontend-ssr/assets/circle-check-CI1v4vYh.js +84 -0
  103. package/dist/frontend-ssr/assets/client-DZMkDkDn.js +129 -0
  104. package/dist/frontend-ssr/assets/clipboard-CXOaoz2W.js +30 -0
  105. package/dist/frontend-ssr/assets/clock-IL-eX2di.js +84 -0
  106. package/dist/frontend-ssr/assets/confirm-dialog-BCthVwUY.js +429 -0
  107. package/dist/frontend-ssr/assets/context-jz1GGEUi.js +45 -0
  108. package/dist/frontend-ssr/assets/copy-CjV57nGQ.js +87 -0
  109. package/dist/frontend-ssr/assets/db-CnxeO66n.js +65 -0
  110. package/dist/frontend-ssr/assets/dialog-BOV1u6zP.js +157 -0
  111. package/dist/frontend-ssr/assets/dndzone-DMvTO_Jz.js +2114 -0
  112. package/dist/frontend-ssr/assets/document-drop-coordinator-CEaYACsC.js +109 -0
  113. package/dist/frontend-ssr/assets/documents-BnOTRdTY.js +108 -0
  114. package/dist/frontend-ssr/assets/dropdown-menu-Bj5rbqbB.js +555 -0
  115. package/dist/frontend-ssr/assets/editorExtensions-DUzwndMy.js +186 -0
  116. package/dist/frontend-ssr/assets/floating-layer-anchor-CYIE8Oj6.js +6114 -0
  117. package/dist/frontend-ssr/assets/folder-DChhG7qN.js +80 -0
  118. package/dist/frontend-ssr/assets/folders-CTfbS24J.js +127 -0
  119. package/dist/frontend-ssr/assets/identity-B3uHoDtf.js +99 -0
  120. package/dist/frontend-ssr/assets/input-DezGsU3y.js +19 -0
  121. package/dist/frontend-ssr/assets/keyboard.svelte-BgF47N3L.js +174 -0
  122. package/dist/frontend-ssr/assets/label-Bj8-TfFN.js +21 -0
  123. package/dist/frontend-ssr/assets/loader-circle-DZsrZ-er.js +80 -0
  124. package/dist/frontend-ssr/assets/markdown-CjqvGi5W.js +20 -0
  125. package/dist/frontend-ssr/assets/messages-CvqpZNJe.js +11125 -0
  126. package/dist/frontend-ssr/assets/resolve-BqHozBXl.js +32 -0
  127. package/dist/frontend-ssr/assets/rotate-ccw-BlgWwaiq.js +80 -0
  128. package/dist/frontend-ssr/assets/select-value-6Lk0ToYd.js +1526 -0
  129. package/dist/frontend-ssr/assets/settings-Bk5Hk9Vq.js +64 -0
  130. package/dist/frontend-ssr/assets/share-BTBJelxA.js +30 -0
  131. package/dist/frontend-ssr/assets/subfolders-refresh-store.svelte-DAh4gT16.js +77 -0
  132. package/dist/frontend-ssr/assets/tag-GZEuGWk1.js +166 -0
  133. package/dist/frontend-ssr/assets/tag-store.svelte-DPodKj6Z.js +21 -0
  134. package/dist/frontend-ssr/assets/tags-BId2wdYd.js +49 -0
  135. package/dist/frontend-ssr/assets/textarea-Dev-qSEc.js +21 -0
  136. package/dist/frontend-ssr/assets/theme.svelte-Co0-ssaD.js +67 -0
  137. package/dist/frontend-ssr/assets/utils-DtlPPXpJ.js +9 -0
  138. package/dist/frontend-ssr/assets/utils-DvZnctjz.js +23 -0
  139. package/dist/frontend-ssr/collaboration.js +39 -0
  140. package/dist/frontend-ssr/components/category-dialog.js +2 -0
  141. package/dist/frontend-ssr/components/create-snapshot-dialog.js +2 -0
  142. package/dist/frontend-ssr/components/delete-dialog.js +2 -0
  143. package/dist/frontend-ssr/components/editor/document-editor.js +2499 -0
  144. package/dist/frontend-ssr/components/editor/document-title.js +11 -0
  145. package/dist/frontend-ssr/components/editor/docx-serializer.js +186 -0
  146. package/dist/frontend-ssr/components/editor/extensions.js +2 -0
  147. package/dist/frontend-ssr/components/editor/markdown-toggle.js +20 -0
  148. package/dist/frontend-ssr/components/editor/markdown.js +2 -0
  149. package/dist/frontend-ssr/components/folder-node.js +2 -0
  150. package/dist/frontend-ssr/components/folder-tree-selector.js +2 -0
  151. package/dist/frontend-ssr/components/save-as-dialog.js +280 -0
  152. package/dist/frontend-ssr/components/settings.js +2 -0
  153. package/dist/frontend-ssr/components/share-dialog.js +2 -0
  154. package/dist/frontend-ssr/components/sidebar.js +2 -0
  155. package/dist/frontend-ssr/components/tag-create-dialog.js +2 -0
  156. package/dist/frontend-ssr/components/version-history.js +370 -0
  157. package/dist/frontend-ssr/dashboard.js +2542 -0
  158. package/dist/frontend-ssr/doc-tabs.js +23 -0
  159. package/dist/frontend-ssr/document-drop-coordinator.js +2 -0
  160. package/dist/frontend-ssr/extension.js +2 -0
  161. package/dist/frontend-ssr/folder-refresh.js +2 -0
  162. package/dist/frontend-ssr/i18n.js +10 -0
  163. package/dist/frontend-ssr/keyboard.js +2 -0
  164. package/dist/frontend-ssr/offline/identity.js +2 -0
  165. package/dist/frontend-ssr/search.js +332 -0
  166. package/dist/frontend-ssr/shared-document.js +273 -0
  167. package/dist/frontend-ssr/theme.js +9 -0
  168. package/dist/frontend-ssr/types.js +1 -0
  169. package/dist/frontend-ssr/utils/clipboard.js +2 -0
  170. package/dist/frontend-ssr/utils/dndzone.js +2 -0
  171. package/dist/frontend-ssr/utils.js +2 -0
  172. package/package.json +28 -1
  173. package/packages/cli/src/index.ts +1 -1
  174. package/packages/db/src/schema.ts +3 -0
  175. package/packages/mcp-server/src/index.ts +1 -1
  176. package/dist/frontend/CategoryDialog--rIE7FrH.js +0 -580
  177. package/dist/frontend/ConfirmDialog-Cpzyb55f.js +0 -212
  178. package/dist/frontend/CreateSnapshotDialog-CmkV-n2A.js +0 -216
  179. package/dist/frontend/DatePicker-Byynca7V.js +0 -257
  180. package/dist/frontend/DeleteDialog-ap6nOywZ.js +0 -174
  181. package/dist/frontend/FolderDialog-DmN_trV0.js +0 -247
  182. package/dist/frontend/FolderNode-C4B8a2fd.js +0 -317
  183. package/dist/frontend/FolderTreeSelector-D6ijiZTA.js +0 -100
  184. package/dist/frontend/Icon-DtNo0N1U.js +0 -64
  185. package/dist/frontend/SettingsDialog-2kTaTXAs.js +0 -992
  186. package/dist/frontend/ShareDialog-BBDGNF5n.js +0 -165
  187. package/dist/frontend/TagCreateDialog-DiLZnJo4.js +0 -258
  188. package/dist/frontend/camera-B7dAOd4s.js +0 -28
  189. package/dist/frontend/check-CDwRlG9T.js +0 -24
  190. package/dist/frontend/chevron-down-B7ZrjUmT.js +0 -24
  191. package/dist/frontend/circle-check-CDqeMB2d.js +0 -28
  192. package/dist/frontend/client-Bc5Fzx40.js +0 -2785
  193. package/dist/frontend/clock-Ck5Sn-Zl.js +0 -28
  194. package/dist/frontend/clsx-nmtDPO_P.js +0 -16
  195. package/dist/frontend/copy-CMAA6GP0.js +0 -31
  196. package/dist/frontend/dialog-BDkiG42a.js +0 -213
  197. package/dist/frontend/disclose-version-5I57E3LD.js +0 -3
  198. package/dist/frontend/ellipsis-vertical-BBuPldbW.js +0 -519
  199. package/dist/frontend/folder-TQjKY4yn.js +0 -44
  200. package/dist/frontend/index-client-jobkrWVL.js +0 -86
  201. package/dist/frontend/input-CBI6p4Xl.js +0 -23
  202. package/dist/frontend/label-C-GkhEp4.js +0 -30
  203. package/dist/frontend/rotate-ccw-CleZtJ5D.js +0 -24
  204. package/dist/frontend/select-value-CvrWRkXW.js +0 -1436
  205. package/dist/frontend/subfolders-refresh-store.svelte-BsheoQma.js +0 -65
  206. package/dist/frontend/tag-Dx3SmucJ.js +0 -53
  207. package/dist/frontend/tag-store.svelte-CIaF4sdZ.js +0 -29
  208. package/dist/frontend/textarea-Dfp78XlL.js +0 -23
  209. package/dist/frontend/theme.svelte-CROg1Hi5.js +0 -49
  210. package/dist/frontend/x-DaTdeDXv.js +0 -24
@@ -0,0 +1,312 @@
1
+ import { $ as month_july, B as date_picker_placeholder, G as weekday_we, H as weekday_sa, J as month_december, K as weekday_tu, Q as month_august, U as weekday_fr, V as weekday_su, W as weekday_th, X as month_october, Y as month_november, Z as month_september, at as month_january, et as month_june, it as month_february, nt as month_april, q as weekday_mo, rt as month_march, tt as month_may, z as date_picker_aria } from "./messages-CvqpZNJe.js";
2
+ import { t as Icon } from "./Icon-B0Zqppjo.js";
3
+ import { t as cn } from "./utils-DtlPPXpJ.js";
4
+ import * as $ from "svelte/internal/server";
5
+ import { tv } from "tailwind-variants";
6
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/calendar.svelte
7
+ function Calendar($$renderer, $$props) {
8
+ const $$sanitized_props = $.sanitize_props($$props);
9
+ /**
10
+ * @license lucide-svelte v1.0.1 - ISC
11
+ *
12
+ * ISC License
13
+ *
14
+ * Copyright (c) 2026 Lucide Icons and Contributors
15
+ *
16
+ * Permission to use, copy, modify, and/or distribute this software for any
17
+ * purpose with or without fee is hereby granted, provided that the above
18
+ * copyright notice and this permission notice appear in all copies.
19
+ *
20
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
21
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
22
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
23
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
24
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
25
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
26
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
27
+ *
28
+ * ---
29
+ *
30
+ * The following Lucide icons are derived from the Feather project:
31
+ *
32
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
33
+ *
34
+ * The MIT License (MIT) (for the icons listed above)
35
+ *
36
+ * Copyright (c) 2013-present Cole Bemis
37
+ *
38
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
39
+ * of this software and associated documentation files (the "Software"), to deal
40
+ * in the Software without restriction, including without limitation the rights
41
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
42
+ * copies of the Software, and to permit persons to whom the Software is
43
+ * furnished to do so, subject to the following conditions:
44
+ *
45
+ * The above copyright notice and this permission notice shall be included in all
46
+ * copies or substantial portions of the Software.
47
+ *
48
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
49
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
50
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
51
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
52
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
53
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
54
+ * SOFTWARE.
55
+ *
56
+ */
57
+ Icon($$renderer, $.spread_props([
58
+ { name: "calendar" },
59
+ $$sanitized_props,
60
+ {
61
+ /**
62
+ * @component @name Calendar
63
+ * @description Lucide SVG icon component, renders SVG Element with children.
64
+ *
65
+ * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNOCAydjQiIC8+CiAgPHBhdGggZD0iTTE2IDJ2NCIgLz4KICA8cmVjdCB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHg9IjMiIHk9IjQiIHJ4PSIyIiAvPgogIDxwYXRoIGQ9Ik0zIDEwaDE4IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/calendar
66
+ * @see https://lucide.dev/guide/packages/lucide-svelte - Documentation
67
+ *
68
+ * @param {Object} props - Lucide icons props and any valid SVG attribute
69
+ * @returns {FunctionalComponent} Svelte component
70
+ *
71
+ */
72
+ iconNode: [
73
+ ["path", { "d": "M8 2v4" }],
74
+ ["path", { "d": "M16 2v4" }],
75
+ ["rect", {
76
+ "width": "18",
77
+ "height": "18",
78
+ "x": "3",
79
+ "y": "4",
80
+ "rx": "2"
81
+ }],
82
+ ["path", { "d": "M3 10h18" }]
83
+ ],
84
+ children: ($$renderer) => {
85
+ $$renderer.push(`<!--[-->`);
86
+ $.slot($$renderer, $$props, "default", {}, null);
87
+ $$renderer.push(`<!--]-->`);
88
+ },
89
+ $$slots: { default: true }
90
+ }
91
+ ]));
92
+ }
93
+ //#endregion
94
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/folder-kanban.svelte
95
+ function Folder_kanban($$renderer, $$props) {
96
+ const $$sanitized_props = $.sanitize_props($$props);
97
+ /**
98
+ * @license lucide-svelte v1.0.1 - ISC
99
+ *
100
+ * ISC License
101
+ *
102
+ * Copyright (c) 2026 Lucide Icons and Contributors
103
+ *
104
+ * Permission to use, copy, modify, and/or distribute this software for any
105
+ * purpose with or without fee is hereby granted, provided that the above
106
+ * copyright notice and this permission notice appear in all copies.
107
+ *
108
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
109
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
110
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
111
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
112
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
113
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
114
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
115
+ *
116
+ * ---
117
+ *
118
+ * The following Lucide icons are derived from the Feather project:
119
+ *
120
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
121
+ *
122
+ * The MIT License (MIT) (for the icons listed above)
123
+ *
124
+ * Copyright (c) 2013-present Cole Bemis
125
+ *
126
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
127
+ * of this software and associated documentation files (the "Software"), to deal
128
+ * in the Software without restriction, including without limitation the rights
129
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
130
+ * copies of the Software, and to permit persons to whom the Software is
131
+ * furnished to do so, subject to the following conditions:
132
+ *
133
+ * The above copyright notice and this permission notice shall be included in all
134
+ * copies or substantial portions of the Software.
135
+ *
136
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
137
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
138
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
139
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
140
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
141
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
142
+ * SOFTWARE.
143
+ *
144
+ */
145
+ Icon($$renderer, $.spread_props([
146
+ { name: "folder-kanban" },
147
+ $$sanitized_props,
148
+ {
149
+ /**
150
+ * @component @name FolderKanban
151
+ * @description Lucide SVG icon component, renders SVG Element with children.
152
+ *
153
+ * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNCAyMGgxNmEyIDIgMCAwIDAgMi0yVjhhMiAyIDAgMCAwLTItMmgtNy45M2EyIDIgMCAwIDEtMS42Ni0uOWwtLjgyLTEuMkEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2MwIDEuMS45IDIgMiAyWiIgLz4KICA8cGF0aCBkPSJNOCAxMHY0IiAvPgogIDxwYXRoIGQ9Ik0xMiAxMHYyIiAvPgogIDxwYXRoIGQ9Ik0xNiAxMHY2IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/folder-kanban
154
+ * @see https://lucide.dev/guide/packages/lucide-svelte - Documentation
155
+ *
156
+ * @param {Object} props - Lucide icons props and any valid SVG attribute
157
+ * @returns {FunctionalComponent} Svelte component
158
+ *
159
+ */
160
+ iconNode: [
161
+ ["path", { "d": "M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z" }],
162
+ ["path", { "d": "M8 10v4" }],
163
+ ["path", { "d": "M12 10v2" }],
164
+ ["path", { "d": "M16 10v6" }]
165
+ ],
166
+ children: ($$renderer) => {
167
+ $$renderer.push(`<!--[-->`);
168
+ $.slot($$renderer, $$props, "default", {}, null);
169
+ $$renderer.push(`<!--]-->`);
170
+ },
171
+ $$slots: { default: true }
172
+ }
173
+ ]));
174
+ }
175
+ //#endregion
176
+ //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/x.svelte
177
+ function X($$renderer, $$props) {
178
+ const $$sanitized_props = $.sanitize_props($$props);
179
+ /**
180
+ * @license lucide-svelte v1.0.1 - ISC
181
+ *
182
+ * ISC License
183
+ *
184
+ * Copyright (c) 2026 Lucide Icons and Contributors
185
+ *
186
+ * Permission to use, copy, modify, and/or distribute this software for any
187
+ * purpose with or without fee is hereby granted, provided that the above
188
+ * copyright notice and this permission notice appear in all copies.
189
+ *
190
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
191
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
192
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
193
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
194
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
195
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
196
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
197
+ *
198
+ * ---
199
+ *
200
+ * The following Lucide icons are derived from the Feather project:
201
+ *
202
+ * airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
203
+ *
204
+ * The MIT License (MIT) (for the icons listed above)
205
+ *
206
+ * Copyright (c) 2013-present Cole Bemis
207
+ *
208
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
209
+ * of this software and associated documentation files (the "Software"), to deal
210
+ * in the Software without restriction, including without limitation the rights
211
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
212
+ * copies of the Software, and to permit persons to whom the Software is
213
+ * furnished to do so, subject to the following conditions:
214
+ *
215
+ * The above copyright notice and this permission notice shall be included in all
216
+ * copies or substantial portions of the Software.
217
+ *
218
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
219
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
220
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
221
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
222
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
223
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
224
+ * SOFTWARE.
225
+ *
226
+ */
227
+ Icon($$renderer, $.spread_props([
228
+ { name: "x" },
229
+ $$sanitized_props,
230
+ {
231
+ /**
232
+ * @component @name X
233
+ * @description Lucide SVG icon component, renders SVG Element with children.
234
+ *
235
+ * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTggNiA2IDE4IiAvPgogIDxwYXRoIGQ9Im02IDYgMTIgMTIiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/x
236
+ * @see https://lucide.dev/guide/packages/lucide-svelte - Documentation
237
+ *
238
+ * @param {Object} props - Lucide icons props and any valid SVG attribute
239
+ * @returns {FunctionalComponent} Svelte component
240
+ *
241
+ */
242
+ iconNode: [["path", { "d": "M18 6 6 18" }], ["path", { "d": "m6 6 12 12" }]],
243
+ children: ($$renderer) => {
244
+ $$renderer.push(`<!--[-->`);
245
+ $.slot($$renderer, $$props, "default", {}, null);
246
+ $$renderer.push(`<!--]-->`);
247
+ },
248
+ $$slots: { default: true }
249
+ }
250
+ ]));
251
+ }
252
+ //#endregion
253
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/badge/badge.svelte
254
+ function Badge($$renderer, $$props) {
255
+ $$renderer.component(($$renderer) => {
256
+ let { ref = null, class: className, variant = "default", children, $$slots, $$events, ...restProps } = $$props;
257
+ $$renderer.push(`<div${$.attributes({
258
+ class: $.clsx(cn(badgeVariants({ variant }), className)),
259
+ ...restProps
260
+ })}>`);
261
+ if (children) {
262
+ $$renderer.push("<!--[0-->");
263
+ children($$renderer);
264
+ $$renderer.push(`<!---->`);
265
+ } else $$renderer.push("<!--[-1-->");
266
+ $$renderer.push(`<!--]--></div>`);
267
+ $.bind_props($$props, { ref });
268
+ });
269
+ }
270
+ //#endregion
271
+ //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/badge/index.js
272
+ var badgeVariants = tv({
273
+ base: "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
274
+ variants: { variant: {
275
+ default: "border-transparent bg-primary text-primary-foreground shadow",
276
+ secondary: "border-transparent bg-secondary text-secondary-foreground",
277
+ destructive: "border-transparent bg-destructive text-destructive-foreground shadow",
278
+ outline: "text-foreground"
279
+ } },
280
+ defaultVariants: { variant: "default" }
281
+ });
282
+ //#endregion
283
+ //#region src/lib/components/DatePicker.svelte
284
+ function DatePicker($$renderer, $$props) {
285
+ $$renderer.component(($$renderer) => {
286
+ let { value = "", onchange, id, ariaLabel = date_picker_aria(), placeholder = date_picker_placeholder() } = $$props;
287
+ let open = false;
288
+ weekday_mo(), weekday_tu(), weekday_we(), weekday_th(), weekday_fr(), weekday_sa(), weekday_su();
289
+ month_january(), month_february(), month_march(), month_april(), month_may(), month_june(), month_july(), month_august(), month_september(), month_october(), month_november(), month_december();
290
+ function parse(v) {
291
+ const match = /^(\d{4})-(\d{2})-(\d{2})$/.exec(v);
292
+ if (!match) return null;
293
+ return {
294
+ y: Number(match[1]),
295
+ m: Number(match[2]) - 1,
296
+ d: Number(match[3])
297
+ };
298
+ }
299
+ const today = /* @__PURE__ */ new Date();
300
+ today.getFullYear();
301
+ today.getMonth();
302
+ $.derived(() => parse(value));
303
+ $$renderer.push(`<div class="datepicker svelte-zmry26"><button type="button"${$.attr("id", id)}${$.attr("aria-label", ariaLabel)} aria-haspopup="dialog"${$.attr("aria-expanded", open)} class="dp-trigger svelte-zmry26">`);
304
+ Calendar($$renderer, { class: "size-3.5 shrink-0 opacity-70" });
305
+ $$renderer.push(`<!----> <span${$.attr_class($.clsx(value ? "" : "dp-placeholder"), "svelte-zmry26")}>${$.escape(value || placeholder)}</span></button> `);
306
+ $$renderer.push("<!--[-1-->");
307
+ $$renderer.push(`<!--]--></div>`);
308
+ $.bind_props($$props, { value });
309
+ });
310
+ }
311
+ //#endregion
312
+ export { Calendar as a, Folder_kanban as i, Badge as n, X as r, DatePicker as t };
@@ -0,0 +1,154 @@
1
+ import { t as Circle_check } from "./circle-check-CI1v4vYh.js";
2
+ import { t as Loader_circle } from "./loader-circle-DZsrZ-er.js";
3
+ import { a as Dialog, i as Dialog_description, n as Dialog_header, o as Button, r as Dialog_footer, t as Dialog_title } from "./dialog-BOV1u6zP.js";
4
+ import * as $ from "svelte/internal/server";
5
+ //#region src/lib/components/DeleteDialog.svelte
6
+ function DeleteDialog($$renderer, $$props) {
7
+ $$renderer.component(($$renderer) => {
8
+ let { open = false, targetName, title, description, successTitle, successDescription, confirmLabel = "Delete", cancelLabel = "Cancel", doneLabel = "Done", errorFallback = "Failed to delete", onConfirm, onCancel } = $$props;
9
+ let busy = false;
10
+ let success = false;
11
+ let error = null;
12
+ async function handleConfirm() {
13
+ if (busy || success) return;
14
+ busy = true;
15
+ error = null;
16
+ try {
17
+ await onConfirm?.();
18
+ success = true;
19
+ } catch (cause) {
20
+ console.error("DeleteDialog: delete failed", cause);
21
+ error = cause instanceof Error && cause.message.trim() ? cause.message : errorFallback;
22
+ } finally {
23
+ busy = false;
24
+ }
25
+ }
26
+ function handleCancel() {
27
+ if (busy) return;
28
+ open = false;
29
+ onCancel?.();
30
+ }
31
+ function handleOpenChange(next) {
32
+ if (!next && busy) {
33
+ open = true;
34
+ return;
35
+ }
36
+ if (!next) handleCancel();
37
+ }
38
+ let $$settled = true;
39
+ let $$inner_renderer;
40
+ function $$render_inner($$renderer) {
41
+ Dialog($$renderer, {
42
+ onOpenChange: handleOpenChange,
43
+ get open() {
44
+ return open;
45
+ },
46
+ set open($$value) {
47
+ open = $$value;
48
+ $$settled = false;
49
+ },
50
+ children: ($$renderer) => {
51
+ if (success) {
52
+ $$renderer.push("<!--[0-->");
53
+ Dialog_header($$renderer, {
54
+ children: ($$renderer) => {
55
+ Dialog_title($$renderer, {
56
+ children: ($$renderer) => {
57
+ $$renderer.push(`<!---->${$.escape(successTitle)}`);
58
+ },
59
+ $$slots: { default: true }
60
+ });
61
+ $$renderer.push(`<!----> `);
62
+ Dialog_description($$renderer, {
63
+ children: ($$renderer) => {
64
+ $$renderer.push(`<span class="font-medium text-foreground">“${$.escape(targetName)}”</span> ${$.escape(successDescription)}`);
65
+ },
66
+ $$slots: { default: true }
67
+ });
68
+ $$renderer.push(`<!---->`);
69
+ },
70
+ $$slots: { default: true }
71
+ });
72
+ $$renderer.push(`<!----> <div class="flex items-start gap-3 rounded-lg border border-primary/30 bg-primary/10 p-4" role="status" aria-live="polite">`);
73
+ Circle_check($$renderer, { class: "mt-0.5 size-5 shrink-0 text-primary" });
74
+ $$renderer.push(`<!----> <p class="text-sm text-muted-foreground"><span class="font-medium text-foreground">“${$.escape(targetName)}”</span> ${$.escape(successDescription)}</p></div>`);
75
+ } else {
76
+ $$renderer.push("<!--[-1-->");
77
+ Dialog_header($$renderer, {
78
+ children: ($$renderer) => {
79
+ Dialog_title($$renderer, {
80
+ children: ($$renderer) => {
81
+ $$renderer.push(`<!---->${$.escape(title)}`);
82
+ },
83
+ $$slots: { default: true }
84
+ });
85
+ $$renderer.push(`<!----> `);
86
+ Dialog_description($$renderer, {
87
+ children: ($$renderer) => {
88
+ $$renderer.push(`<!---->Delete <span class="font-medium text-foreground">“${$.escape(targetName)}”</span>?
89
+ ${$.escape(description)}`);
90
+ },
91
+ $$slots: { default: true }
92
+ });
93
+ $$renderer.push(`<!---->`);
94
+ },
95
+ $$slots: { default: true }
96
+ });
97
+ $$renderer.push(`<!----> `);
98
+ if (error) {
99
+ $$renderer.push("<!--[0-->");
100
+ $$renderer.push(`<p class="text-sm text-destructive" role="alert">${$.escape(error)}</p>`);
101
+ } else $$renderer.push("<!--[-1-->");
102
+ $$renderer.push(`<!--]-->`);
103
+ }
104
+ $$renderer.push(`<!--]--> `);
105
+ Dialog_footer($$renderer, {
106
+ children: ($$renderer) => {
107
+ if (!success) {
108
+ $$renderer.push("<!--[0-->");
109
+ Button($$renderer, {
110
+ variant: "outline",
111
+ type: "button",
112
+ onclick: handleCancel,
113
+ disabled: busy,
114
+ children: ($$renderer) => {
115
+ $$renderer.push(`<!---->${$.escape(cancelLabel)}`);
116
+ },
117
+ $$slots: { default: true }
118
+ });
119
+ } else $$renderer.push("<!--[-1-->");
120
+ $$renderer.push(`<!--]--> `);
121
+ Button($$renderer, {
122
+ type: "button",
123
+ variant: success ? "default" : "destructive",
124
+ onclick: success ? handleCancel : handleConfirm,
125
+ disabled: busy,
126
+ children: ($$renderer) => {
127
+ if (busy) {
128
+ $$renderer.push("<!--[0-->");
129
+ Loader_circle($$renderer, { class: "mr-1 size-4 animate-spin" });
130
+ } else $$renderer.push("<!--[-1-->");
131
+ $$renderer.push(`<!--]--> ${$.escape(success ? doneLabel : confirmLabel)}`);
132
+ },
133
+ $$slots: { default: true }
134
+ });
135
+ $$renderer.push(`<!---->`);
136
+ },
137
+ $$slots: { default: true }
138
+ });
139
+ $$renderer.push(`<!---->`);
140
+ },
141
+ $$slots: { default: true }
142
+ });
143
+ }
144
+ do {
145
+ $$settled = true;
146
+ $$inner_renderer = $$renderer.copy();
147
+ $$render_inner($$inner_renderer);
148
+ } while (!$$settled);
149
+ $$renderer.subsume($$inner_renderer);
150
+ $.bind_props($$props, { open });
151
+ });
152
+ }
153
+ //#endregion
154
+ export { DeleteDialog as t };
@@ -0,0 +1,171 @@
1
+ import { Lr as dashboard_new_document, Or as doc_share, _r as folders_delete, un as action_go_to, vr as folders_rename, xr as folders_new, yt as editor_more_options } from "./messages-CvqpZNJe.js";
2
+ import { t as Chevron_right } from "./chevron-right-B4p7Sk6X.js";
3
+ import { t as Folder } from "./folder-DChhG7qN.js";
4
+ import { a as Dropdown_menu, i as Dropdown_menu_content, o as Ellipsis_vertical, r as Dropdown_menu_item, t as Dropdown_menu_trigger } from "./dropdown-menu-Bj5rbqbB.js";
5
+ import { t as cn } from "./utils-DvZnctjz.js";
6
+ import "./dndzone-DMvTO_Jz.js";
7
+ import "./subfolders-refresh-store.svelte-DAh4gT16.js";
8
+ import * as $ from "svelte/internal/server";
9
+ import { goto } from "$app/navigation";
10
+ import { page } from "$app/state";
11
+ import "svelte/animate";
12
+ //#region src/lib/components/sidebar/FolderNode.svelte
13
+ function FolderNode($$renderer, $$props) {
14
+ $$renderer.component(($$renderer) => {
15
+ let { folder, depth = 0, folderDocsMap, expandedFolderIds, isDraggingGlobal, isDraggingFolder = false, isDraggingDoc = false, dragDisabled, folderFlipDurationMs, documentFlipDurationMs, draggedDocId = null, onToggleFolder, onScheduleFolderExpand, onClearExpandTimer, onRename, onDelete, onCreateSubfolder, onShare, onConsiderDocs, onFinalizeDocs, onConsiderSubfolders, onFinalizeSubfolders, onDropOnFolder, docRowInner, copyButton, docMenu } = $$props;
16
+ let subfolderZone = [];
17
+ const isExpanded = $.derived(() => expandedFolderIds.has(folder.id));
18
+ const folderDocs = $.derived(() => folderDocsMap[folder.id] ?? []);
19
+ $$renderer.push(`<div role="group"${$.attr("aria-label", folder.name)}><div class="group/folder flex w-full min-w-0 items-center gap-1"><button type="button"${$.attr("aria-expanded", isExpanded())}${$.attr_class($.clsx(cn("flex min-w-0 flex-1 items-center gap-1.5 rounded-md px-2 py-1.5 text-sm transition-colors hover:bg-accent hover:text-accent-foreground", page.params.id === folder.id && "bg-accent text-accent-foreground font-medium", draggedDocId && "hover:bg-accent/40 border border-dashed border-primary/30")))}>`);
20
+ Chevron_right($$renderer, { class: cn("size-3.5 shrink-0 transition-transform", isExpanded() && "rotate-90") });
21
+ $$renderer.push(`<!----> `);
22
+ Folder($$renderer, { class: "size-4 shrink-0 text-muted-foreground" });
23
+ $$renderer.push(`<!----> <span class="min-w-0 truncate">${$.escape(folder.name)}</span></button> `);
24
+ Dropdown_menu($$renderer, {
25
+ children: ($$renderer) => {
26
+ {
27
+ function child($$renderer, { props }) {
28
+ $$renderer.push(`<button${$.attributes({
29
+ ...props,
30
+ type: "button",
31
+ class: "inline-flex size-6 shrink-0 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity hover:bg-accent hover:text-accent-foreground group-hover/folder:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
32
+ "aria-label": editor_more_options(),
33
+ title: editor_more_options()
34
+ })}>`);
35
+ Ellipsis_vertical($$renderer, { class: "size-3.5" });
36
+ $$renderer.push(`<!----></button>`);
37
+ }
38
+ Dropdown_menu_trigger($$renderer, {
39
+ child,
40
+ $$slots: { child: true }
41
+ });
42
+ }
43
+ $$renderer.push(`<!----> `);
44
+ Dropdown_menu_content($$renderer, {
45
+ align: "end",
46
+ children: ($$renderer) => {
47
+ Dropdown_menu_item($$renderer, {
48
+ onSelect: () => goto("/folders/" + folder.id),
49
+ children: ($$renderer) => {
50
+ $$renderer.push(`<!---->${$.escape(action_go_to())}`);
51
+ },
52
+ $$slots: { default: true }
53
+ });
54
+ $$renderer.push(`<!----> `);
55
+ Dropdown_menu_item($$renderer, {
56
+ onSelect: () => goto(`/docs/new?folder=${folder.id}`),
57
+ children: ($$renderer) => {
58
+ $$renderer.push(`<!---->${$.escape(dashboard_new_document())}`);
59
+ },
60
+ $$slots: { default: true }
61
+ });
62
+ $$renderer.push(`<!----> `);
63
+ Dropdown_menu_item($$renderer, {
64
+ onSelect: () => onCreateSubfolder(folder.id),
65
+ children: ($$renderer) => {
66
+ $$renderer.push(`<!---->${$.escape(folders_new())}`);
67
+ },
68
+ $$slots: { default: true }
69
+ });
70
+ $$renderer.push(`<!----> `);
71
+ Dropdown_menu_item($$renderer, {
72
+ onSelect: () => onShare(folder.id, folder.name),
73
+ children: ($$renderer) => {
74
+ $$renderer.push(`<!---->${$.escape(doc_share())}`);
75
+ },
76
+ $$slots: { default: true }
77
+ });
78
+ $$renderer.push(`<!----> `);
79
+ Dropdown_menu_item($$renderer, {
80
+ onSelect: () => onRename(folder.id, folder.name),
81
+ children: ($$renderer) => {
82
+ $$renderer.push(`<!---->${$.escape(folders_rename())}`);
83
+ },
84
+ $$slots: { default: true }
85
+ });
86
+ $$renderer.push(`<!----> `);
87
+ Dropdown_menu_item($$renderer, {
88
+ class: "text-destructive focus:text-destructive",
89
+ onSelect: () => onDelete(folder.id, folder.name),
90
+ children: ($$renderer) => {
91
+ $$renderer.push(`<!---->${$.escape(folders_delete())}`);
92
+ },
93
+ $$slots: { default: true }
94
+ });
95
+ $$renderer.push(`<!---->`);
96
+ },
97
+ $$slots: { default: true }
98
+ });
99
+ $$renderer.push(`<!---->`);
100
+ },
101
+ $$slots: { default: true }
102
+ });
103
+ $$renderer.push(`<!----></div> `);
104
+ if (isExpanded()) {
105
+ $$renderer.push("<!--[0-->");
106
+ $$renderer.push(`<div class="ml-0.5 space-y-0.5 border-l border-border pl-0.5"><div${$.attr_class($.clsx(cn("min-h-[8px] space-y-0.5 transition-all duration-150", isDraggingFolder && subfolderZone.length === 0 && "min-h-[36px] bg-accent/20 rounded border border-dashed border-muted-foreground/20")))}><!--[-->`);
107
+ const each_array = $.ensure_array_like(subfolderZone);
108
+ for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
109
+ let sub = each_array[$$index];
110
+ const SubComponent = FolderNode;
111
+ $$renderer.push(`<div>`);
112
+ if (SubComponent) {
113
+ $$renderer.push("<!--[-->");
114
+ SubComponent($$renderer, {
115
+ folder: sub,
116
+ depth: depth + 1,
117
+ folderDocsMap,
118
+ expandedFolderIds,
119
+ isDraggingGlobal,
120
+ isDraggingFolder,
121
+ isDraggingDoc,
122
+ dragDisabled,
123
+ folderFlipDurationMs,
124
+ documentFlipDurationMs,
125
+ draggedDocId,
126
+ onToggleFolder,
127
+ onScheduleFolderExpand,
128
+ onClearExpandTimer,
129
+ onRename,
130
+ onShare,
131
+ onDelete,
132
+ onCreateSubfolder,
133
+ onConsiderDocs,
134
+ onFinalizeDocs,
135
+ onConsiderSubfolders,
136
+ onFinalizeSubfolders,
137
+ onDropOnFolder,
138
+ docRowInner,
139
+ copyButton,
140
+ docMenu
141
+ });
142
+ $$renderer.push("<!--]-->");
143
+ } else {
144
+ $$renderer.push("<!--[!-->");
145
+ $$renderer.push("<!--]-->");
146
+ }
147
+ $$renderer.push(`</div>`);
148
+ }
149
+ $$renderer.push(`<!--]--> `);
150
+ $$renderer.push("<!--[-1-->");
151
+ $$renderer.push(`<!--]--> `);
152
+ $$renderer.push("<!--[-1-->");
153
+ $$renderer.push(`<!--]--></div> <div${$.attr_class($.clsx(cn("min-h-[8px] space-y-0.5 transition-all duration-150", isDraggingDoc && folderDocs().length === 0 && "min-h-[36px] bg-accent/20 rounded border border-dashed border-muted-foreground/20")))}><!--[-->`);
154
+ const each_array_1 = $.ensure_array_like(folderDocs());
155
+ for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {
156
+ let doc = each_array_1[$$index_1];
157
+ $$renderer.push(`<div class="group/doc flex w-full min-w-0 items-center gap-1">`);
158
+ docRowInner($$renderer, doc);
159
+ $$renderer.push(`<!----> `);
160
+ copyButton($$renderer, doc);
161
+ $$renderer.push(`<!----> `);
162
+ docMenu($$renderer, doc);
163
+ $$renderer.push(`<!----></div>`);
164
+ }
165
+ $$renderer.push(`<!--]--></div></div>`);
166
+ } else $$renderer.push("<!--[-1-->");
167
+ $$renderer.push(`<!--]--></div>`);
168
+ });
169
+ }
170
+ //#endregion
171
+ export { FolderNode as t };