@hiai-gg/docsmint 0.4.9 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/backend/src/lib/api-key-facade.ts +1 -0
  2. package/dist/backend/index.js +38379 -18500
  3. package/dist/backend-api-key-facade.js +23 -0
  4. package/dist/client.js +2 -7
  5. package/dist/frontend/{CategoryDialog-CxVyaBV5.js → CategoryDialog-DmlX0Z97.js} +109 -108
  6. package/dist/frontend/ConfirmDialog-DgMTQBq4.js +134 -0
  7. package/dist/frontend/{CreateSnapshotDialog-BDgFTeFn.js → CreateSnapshotDialog-CXW4sCuf.js} +29 -29
  8. package/dist/frontend/DatePicker-D6E-EEtZ.js +340 -0
  9. package/dist/frontend/{DeleteDialog-CvAr2WPu.js → DeleteDialog-8k6JYWCx.js} +3 -3
  10. package/dist/frontend/{FolderNode--l1g8bcL.js → FolderNode-D3rN3yLV.js} +8 -8
  11. package/dist/frontend/{FolderTreeSelector-CyB8y2Sm.js → FolderTreeSelector-BMB1MS9N.js} +3 -3
  12. package/dist/frontend/{Icon-CooFj4Ee.js → Icon-Db-o32_E.js} +1 -1
  13. package/dist/frontend/{SettingsDialog-BB7h7GWw.js → SettingsDialog-DEx1eEZm.js} +290 -290
  14. package/dist/frontend/ShareDialog-uEf8Ks02.js +166 -0
  15. package/dist/frontend/Sidebar-BthP-jOS.js +2043 -0
  16. package/dist/frontend/TagCreateDialog-Bb0-Vtzh.js +261 -0
  17. package/dist/frontend/api/attachments.js +1 -1
  18. package/dist/frontend/api/categories.d.ts +3 -3
  19. package/dist/frontend/api/categories.js +1 -1
  20. package/dist/frontend/api/documents.js +1 -1
  21. package/dist/frontend/api/share.js +1 -1
  22. package/dist/frontend/api/tags.js +1 -1
  23. package/dist/frontend/{api-keys-CpkrA8rD.js → api-keys-DIwAdYkg.js} +10 -10
  24. package/dist/frontend/app-shell.d.ts +5 -1
  25. package/dist/frontend/app-shell.js +83 -72
  26. package/dist/frontend/{attachments-BuILSs56.js → attachments-C2DBzU-r.js} +13 -13
  27. package/dist/frontend/{camera-iKXDOOWT.js → camera-CzCxBOpc.js} +2 -2
  28. package/dist/frontend/{categories-Drnns7N6.js → categories-X7gK8azc.js} +0 -2
  29. package/dist/frontend/{check-D-UuvBuh.js → check-BIi-Ghti.js} +2 -2
  30. package/dist/frontend/{chevron-down-CiPtYyFh.js → chevron-down-C2ft7XUV.js} +2 -2
  31. package/dist/frontend/{circle-check-tSPE1V6t.js → circle-check-BrqfiQH1.js} +2 -2
  32. package/dist/frontend/{clock-DJHbHZb8.js → clock-Dz86E4Kz.js} +2 -2
  33. package/dist/frontend/collaboration.d.ts +4 -2
  34. package/dist/frontend/collaboration.js +114 -89
  35. package/dist/frontend/components/category-dialog.js +1 -1
  36. package/dist/frontend/components/create-snapshot-dialog.js +1 -1
  37. package/dist/frontend/components/delete-dialog.js +1 -1
  38. package/dist/frontend/components/editor/document-editor.js +1203 -1190
  39. package/dist/frontend/components/editor/document-title.js +2 -2
  40. package/dist/frontend/components/editor/markdown-toggle.js +4 -4
  41. package/dist/frontend/components/folder-node.js +1 -1
  42. package/dist/frontend/components/folder-tree-selector.js +1 -1
  43. package/dist/frontend/components/save-as-dialog.js +145 -144
  44. package/dist/frontend/components/settings.js +1 -1
  45. package/dist/frontend/components/share-dialog.js +1 -1
  46. package/dist/frontend/components/sidebar.js +1 -1
  47. package/dist/frontend/components/tag-create-dialog.js +1 -1
  48. package/dist/frontend/components/version-history.js +34 -34
  49. package/dist/frontend/{confirm-dialog-C4jTRbiS.js → confirm-dialog-CzmoZw3a.js} +20 -20
  50. package/dist/frontend/{copy-GppwRMjX.js → copy-CvCh4ZVt.js} +2 -2
  51. package/dist/frontend/dashboard.js +1133 -1087
  52. package/dist/frontend/{dialog-Bevp9mmM.js → dialog-Ce79C9fd.js} +1 -1
  53. package/dist/frontend/{dist-C3857Spp.js → dist-DQa_OHOa.js} +2 -2
  54. package/dist/frontend/{documents-Bc7b_MSZ.js → documents-CwCs1rA7.js} +52 -12
  55. package/dist/frontend/{dropdown-menu-CRSby3e9.js → dropdown-menu-CJ_7V3N0.js} +45 -45
  56. package/dist/frontend/{floating-layer-anchor-BDs7vO-M.js → floating-layer-anchor-S5RSefGN.js} +1 -1
  57. package/dist/frontend/{folder-DeWhnD7O.js → folder-Cx60MRpi.js} +3 -3
  58. package/dist/frontend/i18n.js +3 -3
  59. package/dist/frontend/{messages-C5Q890i2.js → messages-DIovIZrK.js} +46 -44
  60. package/dist/frontend/{rotate-ccw-B4Q7brmV.js → rotate-ccw-ta4NosZ0.js} +2 -2
  61. package/dist/frontend/{route-context-BqQQ5c4i.js → route-context-DYQlUfzL.js} +14 -11
  62. package/dist/frontend/search.js +431 -415
  63. package/dist/frontend/{select-value-GXwx90Pr.js → select-value-JCAp2PmU.js} +466 -466
  64. package/dist/frontend/{share-Cu7SSJuJ.js → share-D7JtkC85.js} +2 -2
  65. package/dist/frontend/{tag-HxRazVN_.js → tag-DhVFHMcV.js} +3 -3
  66. package/dist/frontend/{tag-store.svelte-CG7RrlDT.js → tag-store.svelte-ogVCMCbv.js} +1 -1
  67. package/dist/frontend/{tags-CtCV0Djo.js → tags-BdCaMGfj.js} +18 -18
  68. package/dist/frontend/{x-CzBsnJ2x.js → x-cfdlccjs.js} +2 -2
  69. package/dist/frontend-ssr/api/attachments.js +1 -1
  70. package/dist/frontend-ssr/api/categories.js +1 -1
  71. package/dist/frontend-ssr/api/documents.js +1 -1
  72. package/dist/frontend-ssr/api/share.js +1 -1
  73. package/dist/frontend-ssr/api/tags.js +1 -1
  74. package/dist/frontend-ssr/app-shell.js +30 -26
  75. package/dist/frontend-ssr/assets/{CategoryDialog-BcGW8-Kf.js → CategoryDialog-DDu37Oub.js} +13 -11
  76. package/dist/frontend-ssr/assets/ConfirmDialog-BhAelejz.js +131 -0
  77. package/dist/frontend-ssr/assets/{CreateSnapshotDialog-1bROJ-Rn.js → CreateSnapshotDialog-DNAjd4eD.js} +2 -2
  78. package/dist/frontend-ssr/assets/{DatePicker-B1ML8OVz.js → DatePicker-Cp6Qmgdb.js} +17 -29
  79. package/dist/frontend-ssr/assets/{DeleteDialog-tBYaP0L3.js → DeleteDialog-DG9Lm38J.js} +2 -2
  80. package/dist/frontend-ssr/assets/{FolderNode-CpHrpOED.js → FolderNode-CrLWqHJH.js} +5 -5
  81. package/dist/frontend-ssr/assets/{FolderTreeSelector-DZNZ2oI6.js → FolderTreeSelector-Bxi8EqMm.js} +8 -12
  82. package/dist/frontend-ssr/assets/{Icon-B0Zqppjo.js → Icon-QwirKi9Y.js} +16 -28
  83. package/dist/frontend-ssr/assets/{SettingsDialog-C2SMWJL8.js → SettingsDialog-BymUxBgg.js} +20 -27
  84. package/dist/frontend-ssr/assets/{ShareDialog-vMvJLRfn.js → ShareDialog-B82t8oJi.js} +4 -2
  85. package/dist/frontend-ssr/assets/{Sidebar-DKqmwreh.js → Sidebar-CI8YKbrY.js} +55 -57
  86. package/dist/frontend-ssr/assets/{TagCreateDialog-B0DPEfmQ.js → TagCreateDialog-B7wDbVqG.js} +7 -5
  87. package/dist/frontend-ssr/assets/{api-keys-DFqX39MT.js → api-keys-DIbclwj5.js} +10 -10
  88. package/dist/frontend-ssr/assets/{attachments-CWBxE3Vz.js → attachments-CXgatN0B.js} +9 -9
  89. package/dist/frontend-ssr/assets/{camera-CdxscTw-.js → camera-D6s20LDi.js} +6 -10
  90. package/dist/frontend-ssr/assets/{categories-CTCtdv7V.js → categories-av9xjeg5.js} +0 -2
  91. package/dist/frontend-ssr/assets/{chevron-down-CSSNGNh_.js → chevron-down-CvqKATjM.js} +6 -10
  92. package/dist/frontend-ssr/assets/{chevron-right-B4p7Sk6X.js → chevron-right-DKD7WXjz.js} +6 -10
  93. package/dist/frontend-ssr/assets/{circle-check-CI1v4vYh.js → circle-check-CPS9dKEo.js} +6 -10
  94. package/dist/frontend-ssr/assets/{clock-IL-eX2di.js → clock-CzsE58TH.js} +6 -10
  95. package/dist/frontend-ssr/assets/{confirm-dialog-BCthVwUY.js → confirm-dialog-B3C0WeMn.js} +20 -32
  96. package/dist/frontend-ssr/assets/{copy-CjV57nGQ.js → copy-DkkCPkBL.js} +6 -10
  97. package/dist/frontend-ssr/assets/{documents-PObdTOiT.js → documents-CZ-wQohy.js} +58 -12
  98. package/dist/frontend-ssr/assets/{dropdown-menu-Bj5rbqbB.js → dropdown-menu-Dn_vQq9b.js} +7 -11
  99. package/dist/frontend-ssr/assets/{floating-layer-anchor-CYIE8Oj6.js → floating-layer-anchor-BIAu-252.js} +1 -1
  100. package/dist/frontend-ssr/assets/{folder-DChhG7qN.js → folder-DYIE-XPP.js} +6 -10
  101. package/dist/frontend-ssr/assets/{loader-circle-DZsrZ-er.js → loader-circle-CIEWGyfP.js} +6 -10
  102. package/dist/frontend-ssr/assets/{messages-CvqpZNJe.js → messages-D-auzk9H.js} +23 -1
  103. package/dist/frontend-ssr/assets/{rotate-ccw-BlgWwaiq.js → rotate-ccw-dJSqPyTd.js} +6 -10
  104. package/dist/frontend-ssr/assets/{route-context-uca_b2Px.js → route-context-BPRerEtZ.js} +11 -8
  105. package/dist/frontend-ssr/assets/{select-value-6Lk0ToYd.js → select-value-DBhbkNcc.js} +1 -1
  106. package/dist/frontend-ssr/assets/{share-BTBJelxA.js → share-qTqvd6Lu.js} +2 -2
  107. package/dist/frontend-ssr/assets/{tag-GZEuGWk1.js → tag-BmiVU_Ej.js} +11 -19
  108. package/dist/frontend-ssr/assets/{tag-store.svelte-DvgUduhd.js → tag-store.svelte-BM1lUI_P.js} +1 -1
  109. package/dist/frontend-ssr/assets/{tags-BId2wdYd.js → tags-BQsI_6OW.js} +12 -12
  110. package/dist/frontend-ssr/collaboration.js +37 -12
  111. package/dist/frontend-ssr/components/category-dialog.js +1 -1
  112. package/dist/frontend-ssr/components/create-snapshot-dialog.js +1 -1
  113. package/dist/frontend-ssr/components/delete-dialog.js +1 -1
  114. package/dist/frontend-ssr/components/editor/document-editor.js +143 -207
  115. package/dist/frontend-ssr/components/editor/document-title.js +1 -1
  116. package/dist/frontend-ssr/components/editor/markdown-toggle.js +2 -2
  117. package/dist/frontend-ssr/components/folder-node.js +1 -1
  118. package/dist/frontend-ssr/components/folder-tree-selector.js +1 -1
  119. package/dist/frontend-ssr/components/save-as-dialog.js +8 -6
  120. package/dist/frontend-ssr/components/settings.js +1 -1
  121. package/dist/frontend-ssr/components/share-dialog.js +1 -1
  122. package/dist/frontend-ssr/components/sidebar.js +1 -1
  123. package/dist/frontend-ssr/components/tag-create-dialog.js +1 -1
  124. package/dist/frontend-ssr/components/version-history.js +19 -27
  125. package/dist/frontend-ssr/dashboard.js +344 -185
  126. package/dist/frontend-ssr/i18n.js +1 -1
  127. package/dist/frontend-ssr/search.js +16 -20
  128. package/dist/index.d.ts +1 -1
  129. package/dist/index.js +1 -1
  130. package/dist/types.d.ts +1 -3
  131. package/dist/workspace.d.ts +0 -2
  132. package/dist/workspace.js +0 -2
  133. package/package.json +1 -1
  134. package/packages/cli/src/index.ts +1 -1
  135. package/packages/db/src/with-tenant.ts +2 -0
  136. package/packages/mcp-server/src/index.ts +1 -1
  137. package/dist/frontend/ConfirmDialog-NFGXRa3E.js +0 -214
  138. package/dist/frontend/DatePicker-BZRBluzF.js +0 -256
  139. package/dist/frontend/ShareDialog-BUOkYSlw.js +0 -165
  140. package/dist/frontend/Sidebar-fbtYC3qs.js +0 -2037
  141. package/dist/frontend/TagCreateDialog-B9YZBNHi.js +0 -260
  142. package/dist/frontend-ssr/assets/ConfirmDialog-DjMFKc0V.js +0 -420
@@ -1,4 +1,4 @@
1
- import { Hr as locales, Ur as setLocale$1, t as messages_exports } from "./assets/messages-CvqpZNJe.js";
1
+ import { Ur as locales, Wr as setLocale$1, t as messages_exports } from "./assets/messages-D-auzk9H.js";
2
2
  //#region ../packages/sdk/frontend-entries/i18n.ts
3
3
  var messages = messages_exports;
4
4
  var supportedLocales = locales;
@@ -1,26 +1,26 @@
1
- import { C as categories_title, Qn as search_tags, Vr as app_name, Xn as search_date_to, Zn as search_date_from, ct as search_empty_title, dt as search_clear_all_filters, er as search_title, ft as search_toggle_filters, lt as search_date_range, mt as search_title_with_query, ot as search_popular, pt as search_input_placeholder, st as search_empty_description, ut as search_folders } from "./assets/messages-CvqpZNJe.js";
2
- import { t as Icon } from "./assets/Icon-B0Zqppjo.js";
3
- import { a as Calendar, i as Folder_kanban, r as X, t as DatePicker } from "./assets/DatePicker-B1ML8OVz.js";
4
- import { t as Chevron_down } from "./assets/chevron-down-CSSNGNh_.js";
5
- import { t as Folder } from "./assets/folder-DChhG7qN.js";
6
- import { t as Rotate_ccw } from "./assets/rotate-ccw-BlgWwaiq.js";
7
- import { n as Search, t as Tag } from "./assets/tag-GZEuGWk1.js";
8
- import { n as getDocsmintRouteAdapter, r as navigateDocsmintRoute, t as getDocsmintRequestAdapter } from "./assets/route-context-uca_b2Px.js";
9
- import "./assets/categories-CTCtdv7V.js";
1
+ import { $n as search_tags, Hr as app_name, Qn as search_date_from, Zn as search_date_to, ct as search_empty_description, dt as search_folders, ft as search_clear_all_filters, ht as search_title_with_query, lt as search_empty_title, mt as search_input_placeholder, pt as search_toggle_filters, st as search_popular, tr as search_title, ut as search_date_range, w as categories_title } from "./assets/messages-D-auzk9H.js";
2
+ import { t as Icon } from "./assets/Icon-QwirKi9Y.js";
3
+ import { a as Calendar, i as Folder_kanban, r as X, t as DatePicker } from "./assets/DatePicker-Cp6Qmgdb.js";
4
+ import { t as Chevron_down } from "./assets/chevron-down-CvqKATjM.js";
5
+ import { t as Folder } from "./assets/folder-DYIE-XPP.js";
6
+ import { t as Rotate_ccw } from "./assets/rotate-ccw-dJSqPyTd.js";
7
+ import { n as Search, t as Tag } from "./assets/tag-BmiVU_Ej.js";
8
+ import { a as getDocsmintRequestAdapter, n as navigateDocsmintRoute, t as getDocsmintRouteAdapter } from "./assets/route-context-BPRerEtZ.js";
9
+ import "./assets/categories-av9xjeg5.js";
10
10
  import { t as getFrontendExtensions } from "./assets/context-BtCMqdVe.js";
11
11
  import { t as resolveExtensions } from "./assets/resolve-BqHozBXl.js";
12
- import "./assets/select-value-6Lk0ToYd.js";
13
- import "./assets/tag-store.svelte-DvgUduhd.js";
12
+ import "./assets/select-value-DBhbkNcc.js";
13
+ import "./assets/tag-store.svelte-BM1lUI_P.js";
14
14
  import * as $ from "svelte/internal/server";
15
- //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/sliders-horizontal.svelte
15
+ //#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/sliders-horizontal.svelte
16
16
  function Sliders_horizontal($$renderer, $$props) {
17
17
  const $$sanitized_props = $.sanitize_props($$props);
18
18
  /**
19
- * @license lucide-svelte v1.0.1 - ISC
19
+ * @license lucide-svelte v0.577.0 - ISC
20
20
  *
21
21
  * ISC License
22
22
  *
23
- * Copyright (c) 2026 Lucide Icons and Contributors
23
+ * Copyright (c) for portions of Lucide are held by Cole Bemis 2013-2026 as part of Feather (MIT). All other copyright (c) for Lucide are held by Lucide Contributors 2026.
24
24
  *
25
25
  * Permission to use, copy, modify, and/or distribute this software for any
26
26
  * purpose with or without fee is hereby granted, provided that the above
@@ -36,13 +36,9 @@ function Sliders_horizontal($$renderer, $$props) {
36
36
  *
37
37
  * ---
38
38
  *
39
- * The following Lucide icons are derived from the Feather project:
39
+ * The MIT License (MIT) (for portions derived from Feather)
40
40
  *
41
- * 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
42
- *
43
- * The MIT License (MIT) (for the icons listed above)
44
- *
45
- * Copyright (c) 2013-present Cole Bemis
41
+ * Copyright (c) 2013-2026 Cole Bemis
46
42
  *
47
43
  * Permission is hereby granted, free of charge, to any person obtaining a copy
48
44
  * of this software and associated documentation files (the "Software"), to deal
package/dist/index.d.ts CHANGED
@@ -3,5 +3,5 @@ export { DocsApiError, DocsClient, DocsNetworkError, DocsTimeoutError, } from ".
3
3
  export type * from "./types.js";
4
4
  export { configureUserDataLifecycle, createUserDataLifecycle, encodeUserDataExportNdjson, exportUserData, purgeUserData, } from "./lifecycle.js";
5
5
  export type { AssertPurgeAllowed, ExportUserDataContext, LifecycleHostStep, LifecycleOperationKind, LifecycleOperationStatus, PurgeUserDataContext, PurgeUserDataResult, UserDataExportRecord, UserDataLifecycle, UserDataLifecycleAdapter, } from "./lifecycle.js";
6
- export { createDocsmintWorkspaceAssertion, verifyDocsmintWorkspaceAssertion, DOCSMINT_WORKSPACE_CONTEXT_HEADER, EXTERNAL_TENANT_CONTEXT_HEADER, } from "./workspace.js";
6
+ export { createDocsmintWorkspaceAssertion, verifyDocsmintWorkspaceAssertion, DOCSMINT_WORKSPACE_CONTEXT_HEADER, } from "./workspace.js";
7
7
  export type { DocsmintWorkspaceContext, WorkspaceAssertionOptions } from "./workspace.js";
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  export { DocsApiError, DocsClient, DocsNetworkError, DocsTimeoutError, } from "./client.js";
2
2
  export { configureUserDataLifecycle, createUserDataLifecycle, encodeUserDataExportNdjson, exportUserData, purgeUserData, } from "./lifecycle.js";
3
- export { createDocsmintWorkspaceAssertion, verifyDocsmintWorkspaceAssertion, DOCSMINT_WORKSPACE_CONTEXT_HEADER, EXTERNAL_TENANT_CONTEXT_HEADER, } from "./workspace.js";
3
+ export { createDocsmintWorkspaceAssertion, verifyDocsmintWorkspaceAssertion, DOCSMINT_WORKSPACE_CONTEXT_HEADER, } from "./workspace.js";
package/dist/types.d.ts CHANGED
@@ -95,7 +95,7 @@ export interface DocsFolderUpdateInput {
95
95
  categoryId?: string | null;
96
96
  order?: number;
97
97
  }
98
- export type DocsCategoryApiMode = "unavailable" | "global" | "general" | "category";
98
+ export type DocsCategoryApiMode = "unavailable" | "global" | "category";
99
99
  export interface DocsCategory {
100
100
  id: string;
101
101
  name: string;
@@ -396,8 +396,6 @@ export interface DocsRequestContext {
396
396
  requestId?: string;
397
397
  /** Short-lived signed assertion from a trusted Docsmint workspace gateway. */
398
398
  workspaceAssertion?: string;
399
- /** @deprecated Use workspaceAssertion. */
400
- externalTenantAssertion?: string;
401
399
  headers?: HeadersInit;
402
400
  signal?: AbortSignal;
403
401
  }
@@ -1,7 +1,5 @@
1
1
  /** Public, server-only workspace assertion contract. */
2
2
  export declare const DOCSMINT_WORKSPACE_CONTEXT_HEADER = "x-docsmint-workspace-context";
3
- /** @deprecated Compatibility header accepted only during 0.3.x. */
4
- export declare const EXTERNAL_TENANT_CONTEXT_HEADER = "x-hiai-tenant-context";
5
3
  export type DocsmintWorkspaceContext = Readonly<{
6
4
  actorUserId: string;
7
5
  workspaceId: string;
package/dist/workspace.js CHANGED
@@ -1,7 +1,5 @@
1
1
  /** Public, server-only workspace assertion contract. */
2
2
  export const DOCSMINT_WORKSPACE_CONTEXT_HEADER = "x-docsmint-workspace-context";
3
- /** @deprecated Compatibility header accepted only during 0.3.x. */
4
- export const EXTERNAL_TENANT_CONTEXT_HEADER = "x-hiai-tenant-context";
5
3
  const encoder = new TextEncoder();
6
4
  const decoder = new TextDecoder();
7
5
  export const DOCSMINT_WORKSPACE_ASSERTION_TTL_SECONDS = 60;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hiai-gg/docsmint",
3
- "version": "0.4.9",
3
+ "version": "0.5.1",
4
4
  "type": "module",
5
5
  "browser": {
6
6
  "./dist/backend-launcher.js": false,
@@ -24,7 +24,7 @@ import { registerSearch } from "./commands/search.js";
24
24
  import { registerSnapshot } from "./commands/snapshot.js";
25
25
  import { registerUpdate } from "./commands/update.js";
26
26
 
27
- const VERSION = "0.4.9";
27
+ const VERSION = "0.5.1";
28
28
 
29
29
  const program = new Command();
30
30
  program
@@ -44,6 +44,8 @@ export interface TenantContext {
44
44
  workspaceId?: string;
45
45
  source?: "personal" | "external";
46
46
  actorRole?: "owner" | "admin" | "editor" | "viewer";
47
+ /** Unix timestamp from a verified external workspace assertion. */
48
+ assertionExpiresAt?: number;
47
49
  }
48
50
 
49
51
  export const ZERO_UUID = "00000000-0000-0000-0000-000000000000";
@@ -35,7 +35,7 @@ interface McpToolResult {
35
35
 
36
36
  const server = new McpServer({
37
37
  name: "hiai-docs",
38
- version: "0.4.9",
38
+ version: "0.5.1",
39
39
  });
40
40
 
41
41
  /**
@@ -1,214 +0,0 @@
1
- import { a as e, i as t, n, o as r, r as i, t as a } from "./dialog-Bevp9mmM.js";
2
- import { t as o } from "./textarea-DOAE-h42.js";
3
- import "svelte/internal/disclose-version";
4
- import * as s from "svelte/internal/client";
5
- import "svelte/internal/flags/legacy";
6
- //#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/defaultAttributes.js
7
- var c = {
8
- xmlns: "http://www.w3.org/2000/svg",
9
- width: 24,
10
- height: 24,
11
- viewBox: "0 0 24 24",
12
- fill: "none",
13
- stroke: "currentColor",
14
- "stroke-width": 2,
15
- "stroke-linecap": "round",
16
- "stroke-linejoin": "round"
17
- }, l = (e) => {
18
- for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
19
- return !1;
20
- }, u = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), d = s.from_svg("<svg><!><!></svg>");
21
- function f(e, t) {
22
- let n = s.legacy_rest_props(t, [
23
- "children",
24
- "$$slots",
25
- "$$events",
26
- "$$legacy"
27
- ]), r = s.legacy_rest_props(n, [
28
- "name",
29
- "color",
30
- "size",
31
- "strokeWidth",
32
- "absoluteStrokeWidth",
33
- "iconNode"
34
- ]);
35
- s.push(t, !1);
36
- let i = s.prop(t, "name", 8, void 0), a = s.prop(t, "color", 8, "currentColor"), o = s.prop(t, "size", 8, 24), f = s.prop(t, "strokeWidth", 8, 2), p = s.prop(t, "absoluteStrokeWidth", 8, !1), m = s.prop(t, "iconNode", 24, () => []);
37
- s.init();
38
- var h = d();
39
- s.attribute_effect(h, (e, t, n) => ({
40
- ...c,
41
- ...e,
42
- ...r,
43
- width: o(),
44
- height: o(),
45
- stroke: a(),
46
- "stroke-width": t,
47
- class: n
48
- }), [
49
- () => l(r) ? void 0 : { "aria-hidden": "true" },
50
- () => (s.deep_read_state(p()), s.deep_read_state(f()), s.deep_read_state(o()), s.untrack(() => p() ? Number(f()) * 24 / Number(o()) : f())),
51
- () => (s.deep_read_state(u), s.deep_read_state(i()), s.deep_read_state(n), s.untrack(() => u("lucide-icon", "lucide", i() ? `lucide-${i()}` : "", n.class)))
52
- ]);
53
- var g = s.child(h);
54
- s.each(g, 1, m, s.index, (e, t) => {
55
- var n = s.derived(() => s.to_array(s.get(t), 2));
56
- let r = () => s.get(n)[0], i = () => s.get(n)[1];
57
- var a = s.comment(), o = s.first_child(a);
58
- s.element(o, r, !0, (e, t) => {
59
- s.attribute_effect(e, () => ({ ...i() }));
60
- }), s.append(e, a);
61
- });
62
- var _ = s.sibling(g);
63
- s.slot(_, t, "default", {}, null), s.reset(h), s.append(e, h), s.pop();
64
- }
65
- //#endregion
66
- //#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/loader-circle.svelte
67
- function p(e, t) {
68
- let n = s.legacy_rest_props(t, [
69
- "children",
70
- "$$slots",
71
- "$$events",
72
- "$$legacy"
73
- ]), r = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56" }]];
74
- f(e, s.spread_props({ name: "loader-circle" }, () => n, {
75
- get iconNode() {
76
- return r;
77
- },
78
- children: (e, n) => {
79
- var r = s.comment(), i = s.first_child(r);
80
- s.slot(i, t, "default", {}, null), s.append(e, r);
81
- },
82
- $$slots: { default: !0 }
83
- }));
84
- }
85
- //#endregion
86
- //#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
87
- var m = s.from_html("<!> <!>", 1), h = s.from_html("<div class=\"grid gap-2 py-2\"><label for=\"confirm-dialog-reason\" class=\"text-sm font-medium\"> </label> <!></div>"), g = s.from_html("<!> ", 1), _ = s.from_html("<!> <!> <!>", 1);
88
- function v(c, l) {
89
- s.push(l, !0);
90
- let u = s.prop(l, "open", 15, !1), d = s.prop(l, "confirmLabel", 3, "Confirm"), f = s.prop(l, "cancelLabel", 3, "Cancel"), v = s.prop(l, "variant", 3, "default"), y = s.prop(l, "busy", 3, !1), b = s.prop(l, "requireReason", 3, !1), x = s.prop(l, "reasonLabel", 3, "Reason"), S = s.prop(l, "reasonPlaceholder", 3, "Provide a reason..."), C = s.state(""), w = s.derived(() => b() && s.get(C).trim().length === 0);
91
- function T() {
92
- s.set(C, "");
93
- }
94
- function E() {
95
- s.get(w) || (l.onConfirm?.(b() ? s.get(C) : void 0), T());
96
- }
97
- function D() {
98
- y() || (u(!1), l.onCancel?.(), T());
99
- }
100
- function O(e) {
101
- e.key === "Escape" && !y() && u() && (e.preventDefault(), D());
102
- }
103
- s.event("keydown", s.window, O), e(c, {
104
- onOpenChange: (e) => {
105
- e || (T(), l.onCancel?.());
106
- },
107
- get open() {
108
- return u();
109
- },
110
- set open(e) {
111
- u(e);
112
- },
113
- children: (e, c) => {
114
- var u = _(), T = s.first_child(u);
115
- n(T, {
116
- children: (e, n) => {
117
- var r = m(), i = s.first_child(r);
118
- a(i, {
119
- children: (e, t) => {
120
- s.next();
121
- var n = s.text();
122
- s.template_effect(() => s.set_text(n, l.title)), s.append(e, n);
123
- },
124
- $$slots: { default: !0 }
125
- });
126
- var o = s.sibling(i, 2), c = (e) => {
127
- t(e, {
128
- children: (e, t) => {
129
- s.next();
130
- var n = s.text();
131
- s.template_effect(() => s.set_text(n, l.description)), s.append(e, n);
132
- },
133
- $$slots: { default: !0 }
134
- });
135
- };
136
- s.if(o, (e) => {
137
- l.description && e(c);
138
- }), s.append(e, r);
139
- },
140
- $$slots: { default: !0 }
141
- });
142
- var O = s.sibling(T, 2), k = (e) => {
143
- var t = h(), n = s.child(t), r = s.child(n, !0);
144
- s.reset(n), o(s.sibling(n, 2), {
145
- id: "confirm-dialog-reason",
146
- rows: 3,
147
- get placeholder() {
148
- return S();
149
- },
150
- get disabled() {
151
- return y();
152
- },
153
- get value() {
154
- return s.get(C);
155
- },
156
- set value(e) {
157
- s.set(C, e, !0);
158
- }
159
- }), s.reset(t), s.template_effect(() => s.set_text(r, x())), s.append(e, t);
160
- };
161
- s.if(O, (e) => {
162
- b() && e(k);
163
- }), i(s.sibling(O, 2), {
164
- children: (e, t) => {
165
- var n = m(), i = s.first_child(n);
166
- r(i, {
167
- variant: "outline",
168
- type: "button",
169
- onclick: D,
170
- get disabled() {
171
- return y();
172
- },
173
- children: (e, t) => {
174
- s.next();
175
- var n = s.text();
176
- s.template_effect(() => s.set_text(n, f())), s.append(e, n);
177
- },
178
- $$slots: { default: !0 }
179
- });
180
- var a = s.sibling(i, 2);
181
- {
182
- let e = s.derived(() => v() === "destructive" ? "destructive" : "default"), t = s.derived(() => y() || s.get(w));
183
- r(a, {
184
- type: "button",
185
- get variant() {
186
- return s.get(e);
187
- },
188
- onclick: E,
189
- get disabled() {
190
- return s.get(t);
191
- },
192
- children: (e, t) => {
193
- var n = g(), r = s.first_child(n), i = (e) => {
194
- p(e, { class: "mr-1 size-4 animate-spin" });
195
- };
196
- s.if(r, (e) => {
197
- y() && e(i);
198
- });
199
- var a = s.sibling(r);
200
- s.template_effect(() => s.set_text(a, ` ${d() ?? ""}`)), s.append(e, n);
201
- },
202
- $$slots: { default: !0 }
203
- });
204
- }
205
- s.append(e, n);
206
- },
207
- $$slots: { default: !0 }
208
- }), s.append(e, u);
209
- },
210
- $$slots: { default: !0 }
211
- }), s.pop();
212
- }
213
- //#endregion
214
- export { v as t };
@@ -1,256 +0,0 @@
1
- import { t as e } from "./Icon-CooFj4Ee.js";
2
- import { n as t } from "./folder-DeWhnD7O.js";
3
- import { t as n } from "./dist-C3857Spp.js";
4
- import { $ as r, G as i, H as a, J as o, K as s, Q as c, U as l, V as u, W as d, X as f, Y as p, Z as m, at as h, ct as ee, et as g, it as _, lt as v, nt as y, ot as te, q as ne, rt as re, st as b, tt as x, ut as S } from "./messages-C5Q890i2.js";
5
- import { t as C } from "./utils-BPDRytUU.js";
6
- import "svelte/internal/disclose-version";
7
- import * as w from "svelte/internal/client";
8
- import "svelte/internal/flags/legacy";
9
- //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/calendar.svelte
10
- function T(t, n) {
11
- let r = w.legacy_rest_props(n, [
12
- "children",
13
- "$$slots",
14
- "$$events",
15
- "$$legacy"
16
- ]), i = [
17
- ["path", { d: "M8 2v4" }],
18
- ["path", { d: "M16 2v4" }],
19
- ["rect", {
20
- width: "18",
21
- height: "18",
22
- x: "3",
23
- y: "4",
24
- rx: "2"
25
- }],
26
- ["path", { d: "M3 10h18" }]
27
- ];
28
- e(t, w.spread_props({ name: "calendar" }, () => r, {
29
- get iconNode() {
30
- return i;
31
- },
32
- children: (e, t) => {
33
- var r = w.comment(), i = w.first_child(r);
34
- w.slot(i, n, "default", {}, null), w.append(e, r);
35
- },
36
- $$slots: { default: !0 }
37
- }));
38
- }
39
- //#endregion
40
- //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/chevron-left.svelte
41
- function E(t, n) {
42
- let r = w.legacy_rest_props(n, [
43
- "children",
44
- "$$slots",
45
- "$$events",
46
- "$$legacy"
47
- ]), i = [["path", { d: "m15 18-6-6 6-6" }]];
48
- e(t, w.spread_props({ name: "chevron-left" }, () => r, {
49
- get iconNode() {
50
- return i;
51
- },
52
- children: (e, t) => {
53
- var r = w.comment(), i = w.first_child(r);
54
- w.slot(i, n, "default", {}, null), w.append(e, r);
55
- },
56
- $$slots: { default: !0 }
57
- }));
58
- }
59
- //#endregion
60
- //#region ../node_modules/.bun/lucide-svelte@1.0.1+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/folder-kanban.svelte
61
- function D(t, n) {
62
- let r = w.legacy_rest_props(n, [
63
- "children",
64
- "$$slots",
65
- "$$events",
66
- "$$legacy"
67
- ]), i = [
68
- ["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" }],
69
- ["path", { d: "M8 10v4" }],
70
- ["path", { d: "M12 10v2" }],
71
- ["path", { d: "M16 10v6" }]
72
- ];
73
- e(t, w.spread_props({ name: "folder-kanban" }, () => r, {
74
- get iconNode() {
75
- return i;
76
- },
77
- children: (e, t) => {
78
- var r = w.comment(), i = w.first_child(r);
79
- w.slot(i, n, "default", {}, null), w.append(e, r);
80
- },
81
- $$slots: { default: !0 }
82
- }));
83
- }
84
- //#endregion
85
- //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/badge/badge.svelte
86
- var O = /* @__PURE__ */ new Set([
87
- "$$slots",
88
- "$$events",
89
- "$$legacy",
90
- "ref",
91
- "class",
92
- "variant",
93
- "children"
94
- ]), k = w.from_html("<div><!></div>");
95
- function A(e, t) {
96
- w.push(t, !0);
97
- let n = w.prop(t, "ref", 15, null), r = w.prop(t, "variant", 3, "default"), i = w.rest_props(t, O);
98
- var a = k();
99
- w.attribute_effect(a, (e) => ({
100
- class: e,
101
- ...i
102
- }), [() => C(j({ variant: r() }), t.class)]);
103
- var o = w.child(a), s = (e) => {
104
- var n = w.comment(), r = w.first_child(n);
105
- w.snippet(r, () => t.children), w.append(e, n);
106
- };
107
- w.if(o, (e) => {
108
- t.children && e(s);
109
- }), w.reset(a), w.bind_this(a, (e) => n(e), () => n()), w.append(e, a), w.pop();
110
- }
111
- //#endregion
112
- //#region ../node_modules/.bun/@hiai-gg+hiai-ui@0.0.8+3149ccaa93f654b8/node_modules/@hiai-gg/hiai-ui/dist/components/ui/badge/index.js
113
- var j = n({
114
- 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",
115
- variants: { variant: {
116
- default: "border-transparent bg-primary text-primary-foreground shadow",
117
- secondary: "border-transparent bg-secondary text-secondary-foreground",
118
- destructive: "border-transparent bg-destructive text-destructive-foreground shadow",
119
- outline: "text-foreground"
120
- } },
121
- defaultVariants: { variant: "default" }
122
- }), M = w.from_html("<span class=\"dp-weekday svelte-zmry26\"> </span>"), N = w.from_html("<span class=\"dp-empty svelte-zmry26\"></span>"), P = w.from_html("<button type=\"button\"> </button>"), F = w.from_html("<button type=\"button\" class=\"dp-clear svelte-zmry26\"> </button>"), I = w.from_html("<div class=\"dp-popover svelte-zmry26\" role=\"dialog\"><div class=\"dp-header svelte-zmry26\"><button type=\"button\" class=\"dp-nav svelte-zmry26\"><!></button> <span class=\"dp-title svelte-zmry26\"> </span> <button type=\"button\" class=\"dp-nav svelte-zmry26\"><!></button></div> <div class=\"dp-weekdays svelte-zmry26\"></div> <div class=\"dp-grid svelte-zmry26\"></div> <!></div>"), L = w.from_html("<div class=\"datepicker svelte-zmry26\"><button type=\"button\" aria-haspopup=\"dialog\" class=\"dp-trigger svelte-zmry26\"><!> <span> </span></button> <!></div>");
123
- function R(e, n) {
124
- w.push(n, !0);
125
- let C = w.prop(n, "value", 15, ""), D = w.prop(n, "ariaLabel", 19, () => l()), O = w.prop(n, "placeholder", 19, () => i()), k = w.state(!1), A = w.state(null), j = [
126
- c(),
127
- m(),
128
- f(),
129
- p(),
130
- o(),
131
- ne(),
132
- s()
133
- ], R = [
134
- S(),
135
- v(),
136
- ee(),
137
- b(),
138
- te(),
139
- h(),
140
- _(),
141
- re(),
142
- y(),
143
- x(),
144
- g(),
145
- r()
146
- ];
147
- function z(e) {
148
- return String(e).padStart(2, "0");
149
- }
150
- function B(e) {
151
- let t = /^(\d{4})-(\d{2})-(\d{2})$/.exec(e);
152
- return t ? {
153
- y: Number(t[1]),
154
- m: Number(t[2]) - 1,
155
- d: Number(t[3])
156
- } : null;
157
- }
158
- let V = /* @__PURE__ */ new Date(), H = w.state(w.proxy(V.getFullYear())), U = w.state(w.proxy(V.getMonth()));
159
- w.user_effect(() => {
160
- if (w.get(k)) {
161
- let e = B(C());
162
- e && (w.set(H, e.y, !0), w.set(U, e.m, !0));
163
- }
164
- });
165
- let W = w.derived(() => B(C()));
166
- function G() {
167
- let e = (new Date(w.get(H), w.get(U), 1).getDay() + 6) % 7, t = new Date(w.get(H), w.get(U) + 1, 0).getDate(), n = [];
168
- for (let t = 0; t < e; t++) n.push(null);
169
- for (let e = 1; e <= t; e++) n.push(e);
170
- return n;
171
- }
172
- function K(e) {
173
- return e === V.getDate() && w.get(U) === V.getMonth() && w.get(H) === V.getFullYear();
174
- }
175
- function q(e) {
176
- return w.get(W) !== null && w.get(W).y === w.get(H) && w.get(W).m === w.get(U) && w.get(W).d === e;
177
- }
178
- function J(e) {
179
- C(`${w.get(H)}-${z(w.get(U) + 1)}-${z(e)}`), w.set(k, !1), n.onchange?.();
180
- }
181
- function Y() {
182
- C(""), w.set(k, !1), n.onchange?.();
183
- }
184
- function ie() {
185
- w.get(U) === 0 ? (w.set(U, 11), w.set(H, w.get(H) - 1)) : w.set(U, w.get(U) - 1);
186
- }
187
- function ae() {
188
- w.get(U) === 11 ? (w.set(U, 0), w.set(H, w.get(H) + 1)) : w.set(U, w.get(U) + 1);
189
- }
190
- w.user_effect(() => {
191
- if (!w.get(k)) return;
192
- function e(e) {
193
- w.get(A) && !w.get(A).contains(e.target) && w.set(k, !1);
194
- }
195
- function t(e) {
196
- e.key === "Escape" && w.set(k, !1);
197
- }
198
- return document.addEventListener("pointerdown", e), document.addEventListener("keydown", t), () => {
199
- document.removeEventListener("pointerdown", e), document.removeEventListener("keydown", t);
200
- };
201
- });
202
- var X = L(), Z = w.child(X), Q = w.child(Z);
203
- T(Q, { class: "size-3.5 shrink-0 opacity-70" });
204
- var $ = w.sibling(Q, 2), oe = w.child($, !0);
205
- w.reset($), w.reset(Z);
206
- var se = w.sibling(Z, 2), ce = (e) => {
207
- var n = I(), r = w.child(n), i = w.child(r);
208
- E(w.child(i), { class: "size-4" }), w.reset(i);
209
- var o = w.sibling(i, 2), s = w.child(o);
210
- w.reset(o);
211
- var c = w.sibling(o, 2);
212
- t(w.child(c), { class: "size-4" }), w.reset(c), w.reset(r);
213
- var l = w.sibling(r, 2);
214
- w.each(l, 20, () => j, (e) => e, (e, t) => {
215
- var n = M(), r = w.child(n, !0);
216
- w.reset(n), w.template_effect(() => w.set_text(r, t)), w.append(e, n);
217
- }), w.reset(l);
218
- var f = w.sibling(l, 2);
219
- w.each(f, 21, G, w.index, (e, t) => {
220
- var n = w.comment(), r = w.first_child(n), i = (e) => {
221
- var t = N();
222
- w.append(e, t);
223
- }, a = (e) => {
224
- var n = P();
225
- let r;
226
- var i = w.child(n, !0);
227
- w.reset(n), w.template_effect((e) => {
228
- r = w.set_class(n, 1, "dp-day svelte-zmry26", null, r, e), w.set_text(i, w.get(t));
229
- }, [() => ({
230
- selected: q(w.get(t)),
231
- today: K(w.get(t))
232
- })]), w.delegated("click", n, () => J(w.get(t))), w.append(e, n);
233
- };
234
- w.if(r, (e) => {
235
- w.get(t) === null ? e(i) : e(a, -1);
236
- }), w.append(e, n);
237
- }), w.reset(f);
238
- var p = w.sibling(f, 2), m = (e) => {
239
- var t = F(), n = w.child(t, !0);
240
- w.reset(t), w.template_effect((e) => w.set_text(n, e), [() => d()]), w.delegated("click", t, Y), w.append(e, t);
241
- };
242
- w.if(p, (e) => {
243
- C() && e(m);
244
- }), w.reset(n), w.template_effect((e, t) => {
245
- w.set_attribute(n, "aria-label", D()), w.set_attribute(i, "aria-label", e), w.set_text(s, `${R[w.get(U)] ?? ""} ${w.get(H) ?? ""}`), w.set_attribute(c, "aria-label", t);
246
- }, [() => a(), () => u()]), w.delegated("click", i, ie), w.delegated("click", c, ae), w.append(e, n);
247
- };
248
- w.if(se, (e) => {
249
- w.get(k) && e(ce);
250
- }), w.reset(X), w.bind_this(X, (e) => w.set(A, e), () => w.get(A)), w.template_effect(() => {
251
- w.set_attribute(Z, "id", n.id), w.set_attribute(Z, "aria-label", D()), w.set_attribute(Z, "aria-expanded", w.get(k)), w.set_class($, 1, w.clsx(C() ? "" : "dp-placeholder"), "svelte-zmry26"), w.set_text(oe, C() || O());
252
- }), w.delegated("click", Z, () => w.set(k, !w.get(k))), w.append(e, X), w.pop();
253
- }
254
- w.delegate(["click"]);
255
- //#endregion
256
- export { T as a, E as i, A as n, D as r, R as t };