@hiai-gg/docsmint 0.5.1 → 0.5.3
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.
- package/dist/backend/index.js +47 -8
- package/dist/backend-account-runtime-cleanup.js +20 -3
- package/dist/backend-api-key-facade.js +20 -3
- package/dist/backend-pipeline-cancellation.js +20 -3
- package/dist/frontend/{CategoryDialog-DmlX0Z97.js → CategoryDialog-BYAFjX7E.js} +152 -138
- package/dist/frontend/{FolderNode-D3rN3yLV.js → FolderNode-DAAn_T8_.js} +1 -1
- package/dist/frontend/{HiaiDocsExtensionProvider-CMiTXi2J.js → HiaiDocsExtensionProvider-OSn96BBw.js} +1 -1
- package/dist/frontend/SettingsDialog-CyZSOjLE.js +1024 -0
- package/dist/frontend/ShareDialog-BC-Jl6v1.js +257 -0
- package/dist/frontend/{Sidebar-BthP-jOS.js → Sidebar-B-zCJT9i.js} +348 -332
- package/dist/frontend/api/attachments.js +1 -1
- package/dist/frontend/app-shell.js +160 -126
- package/dist/frontend/{attachments-C2DBzU-r.js → attachments-B8AuDjno.js} +8 -5
- package/dist/frontend/components/category-dialog.js +1 -1
- package/dist/frontend/components/editor/document-editor.js +1 -1
- package/dist/frontend/components/folder-node.js +1 -1
- package/dist/frontend/components/save-as-dialog.js +1 -1
- package/dist/frontend/components/settings.js +1 -1
- package/dist/frontend/components/share-dialog.js +1 -1
- package/dist/frontend/components/sidebar.js +1 -1
- package/dist/frontend/{context-KLiM3QQ0.js → context-D0zPFXZ4.js} +2 -0
- package/dist/frontend/dashboard.js +11 -5
- package/dist/frontend/extension.d.ts +3 -2
- package/dist/frontend/extension.js +1 -1
- package/dist/frontend/folder-refresh.js +1 -1
- package/dist/frontend/frontend.css +1 -1
- package/dist/frontend/search.js +593 -575
- package/dist/frontend/shared-document.js +1 -1
- package/dist/frontend/{subfolders-refresh-store.svelte-B2dKVmgz.js → subfolders-refresh-store.svelte-DxP21a1c.js} +1 -0
- package/dist/frontend-ssr/api/attachments.js +1 -1
- package/dist/frontend-ssr/app-shell.js +59 -5
- package/dist/frontend-ssr/assets/{CategoryDialog-DDu37Oub.js → CategoryDialog-BLxVoynx.js} +27 -10
- package/dist/frontend-ssr/assets/{CreateSnapshotDialog-DNAjd4eD.js → CreateSnapshotDialog-b6O0nUVp.js} +1 -1
- package/dist/frontend-ssr/assets/{DatePicker-Cp6Qmgdb.js → DatePicker-D84cJ-Eq.js} +1 -1
- package/dist/frontend-ssr/assets/{FolderNode-CrLWqHJH.js → FolderNode-kmilhDjO.js} +2 -2
- package/dist/frontend-ssr/assets/{HiaiDocsExtensionProvider-B_MrN08c.js → HiaiDocsExtensionProvider-BRKWmcDd.js} +1 -1
- package/dist/frontend-ssr/assets/{SettingsDialog-BymUxBgg.js → SettingsDialog-DVp0OxPO.js} +23 -9
- package/dist/frontend-ssr/assets/ShareDialog-BZd28sg-.js +45 -0
- package/dist/frontend-ssr/assets/{Sidebar-CI8YKbrY.js → Sidebar-CO9LZRPa.js} +39 -12
- package/dist/frontend-ssr/assets/{TagCreateDialog-B7wDbVqG.js → TagCreateDialog-DUPMitlL.js} +1 -1
- package/dist/frontend-ssr/assets/{attachments-CXgatN0B.js → attachments-Cj3fQyUp.js} +11 -4
- package/dist/frontend-ssr/assets/{confirm-dialog-B3C0WeMn.js → confirm-dialog-XuyaL8sr.js} +1 -1
- package/dist/frontend-ssr/assets/{context-BtCMqdVe.js → context-Bi_mO-NS.js} +2 -0
- package/dist/frontend-ssr/assets/{messages-D-auzk9H.js → messages-BAQzILs4.js} +1 -1
- package/dist/frontend-ssr/assets/{subfolders-refresh-store.svelte-DAh4gT16.js → subfolders-refresh-store.svelte-CXHxQWKh.js} +1 -0
- package/dist/frontend-ssr/components/category-dialog.js +1 -1
- package/dist/frontend-ssr/components/create-snapshot-dialog.js +1 -1
- package/dist/frontend-ssr/components/editor/document-editor.js +2 -2
- package/dist/frontend-ssr/components/editor/document-title.js +1 -1
- package/dist/frontend-ssr/components/editor/markdown-toggle.js +1 -1
- package/dist/frontend-ssr/components/folder-node.js +1 -1
- package/dist/frontend-ssr/components/save-as-dialog.js +2 -2
- package/dist/frontend-ssr/components/settings.js +1 -1
- package/dist/frontend-ssr/components/share-dialog.js +1 -1
- package/dist/frontend-ssr/components/sidebar.js +1 -1
- package/dist/frontend-ssr/components/tag-create-dialog.js +1 -1
- package/dist/frontend-ssr/components/version-history.js +2 -2
- package/dist/frontend-ssr/dashboard.js +13 -8
- package/dist/frontend-ssr/extension.js +1 -1
- package/dist/frontend-ssr/folder-refresh.js +1 -1
- package/dist/frontend-ssr/i18n.js +1 -1
- package/dist/frontend-ssr/search.js +55 -36
- package/dist/frontend-ssr/shared-document.js +1 -1
- package/dist/lifecycle-runtime.js +18 -3
- package/dist/types.d.ts +5 -0
- package/package.json +1 -1
- package/packages/cli/src/index.ts +1 -1
- package/packages/db/src/schema.ts +17 -2
- package/packages/mcp-server/src/index.ts +1 -1
- package/dist/frontend/SettingsDialog-DEx1eEZm.js +0 -1016
- package/dist/frontend/ShareDialog-uEf8Ks02.js +0 -166
- package/dist/frontend-ssr/assets/ShareDialog-B82t8oJi.js +0 -56
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as editor_markdown_placeholder, zt as editor_markdown_label } from "../../assets/messages-
|
|
1
|
+
import { Bt as editor_markdown_placeholder, zt as editor_markdown_label } from "../../assets/messages-BAQzILs4.js";
|
|
2
2
|
import { t as Copy } from "../../assets/copy-DkkCPkBL.js";
|
|
3
3
|
import "../../assets/markdown-CjqvGi5W.js";
|
|
4
4
|
import * as $ from "svelte/internal/server";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as FolderNode } from "../assets/FolderNode-
|
|
1
|
+
import { t as FolderNode } from "../assets/FolderNode-kmilhDjO.js";
|
|
2
2
|
export { FolderNode };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _n as action_cancel, vn as action_save } from "../assets/messages-
|
|
1
|
+
import { _n as action_cancel, vn as action_save } from "../assets/messages-BAQzILs4.js";
|
|
2
2
|
import { t as Chevron_down } from "../assets/chevron-down-CvqKATjM.js";
|
|
3
3
|
import { t as FolderTreeSelector } from "../assets/FolderTreeSelector-Bxi8EqMm.js";
|
|
4
4
|
import { t as Loader_circle } from "../assets/loader-circle-CIEWGyfP.js";
|
|
@@ -7,7 +7,7 @@ import { a as Dialog, i as Dialog_description, n as Dialog_header, o as Button,
|
|
|
7
7
|
import { t as Label } from "../assets/label-Bj8-TfFN.js";
|
|
8
8
|
import "../assets/categories-av9xjeg5.js";
|
|
9
9
|
import { a as Select, i as Select_content, n as Select_trigger, r as Select_item, t as Select_value } from "../assets/select-value-DBhbkNcc.js";
|
|
10
|
-
import { d as refreshFolders } from "../assets/subfolders-refresh-store.svelte-
|
|
10
|
+
import { d as refreshFolders } from "../assets/subfolders-refresh-store.svelte-CXHxQWKh.js";
|
|
11
11
|
import * as $ from "svelte/internal/server";
|
|
12
12
|
//#region src/lib/components/SaveAsDialog.svelte
|
|
13
13
|
function SaveAsDialog($$renderer, $$props) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SettingsDialog } from "../assets/SettingsDialog-
|
|
1
|
+
import { t as SettingsDialog } from "../assets/SettingsDialog-DVp0OxPO.js";
|
|
2
2
|
export { SettingsDialog };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as ShareDialog } from "../assets/ShareDialog-
|
|
1
|
+
import { t as ShareDialog } from "../assets/ShareDialog-BZd28sg-.js";
|
|
2
2
|
export { ShareDialog };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Sidebar } from "../assets/Sidebar-
|
|
1
|
+
import { t as Sidebar } from "../assets/Sidebar-CO9LZRPa.js";
|
|
2
2
|
export { Sidebar };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as TagCreateDialog } from "../assets/TagCreateDialog-
|
|
1
|
+
import { t as TagCreateDialog } from "../assets/TagCreateDialog-DUPMitlL.js";
|
|
2
2
|
export { TagCreateDialog };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ct as version_badge_snapshot, Ft as version_restore_confirm, It as version_restore_short, Lt as version_restore, Pt as version_create_snapshot, Rt as version_history_title, St as version_restored_from, T as version_history_empty, Tt as version_filter_all, _n as action_cancel, bn as error_generic, cn as time_hours_ago, ln as time_minutes_ago, sn as time_days_ago, un as action_loading, wt as version_filter_snapshots, xt as version_restore_failed } from "../assets/messages-
|
|
1
|
+
import { Ct as version_badge_snapshot, Ft as version_restore_confirm, It as version_restore_short, Lt as version_restore, Pt as version_create_snapshot, Rt as version_history_title, St as version_restored_from, T as version_history_empty, Tt as version_filter_all, _n as action_cancel, bn as error_generic, cn as time_hours_ago, ln as time_minutes_ago, sn as time_days_ago, un as action_loading, wt as version_filter_snapshots, xt as version_restore_failed } from "../assets/messages-BAQzILs4.js";
|
|
2
2
|
import { t as Icon } from "../assets/Icon-QwirKi9Y.js";
|
|
3
3
|
import { t as Camera } from "../assets/camera-D6s20LDi.js";
|
|
4
4
|
import { t as Clock } from "../assets/clock-CzsE58TH.js";
|
|
@@ -7,7 +7,7 @@ import { t as Circle_check } from "../assets/circle-check-CPS9dKEo.js";
|
|
|
7
7
|
import { t as Loader_circle } from "../assets/loader-circle-CIEWGyfP.js";
|
|
8
8
|
import { n as apiFetch, t as ApiError } from "../assets/client-DZMkDkDn.js";
|
|
9
9
|
import { t as ConfirmDialog } from "../assets/ConfirmDialog-BhAelejz.js";
|
|
10
|
-
import { t as CreateSnapshotDialog } from "../assets/CreateSnapshotDialog-
|
|
10
|
+
import { t as CreateSnapshotDialog } from "../assets/CreateSnapshotDialog-b6O0nUVp.js";
|
|
11
11
|
import * as $ from "svelte/internal/server";
|
|
12
12
|
//#region ../node_modules/.bun/lucide-svelte@0.577.0+ff5f301bb2db9a0d/node_modules/lucide-svelte/dist/icons/history.svelte
|
|
13
13
|
function History($$renderer, $$props) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Cr as doc_open, Dr as doc_share, Fr as dashboard_page_title, Ir as dashboard_new_document, Lr as dashboard_subtitle, Rr as dashboard_title, Sr as doc_duplicate, Tr as doc_updated, _n as action_cancel, _r as folders_rename, _t as folder_page_title, a as import_progress_error, bt as editor_more_options, c as import_progress_queued, cr as folders_subfolders, d as import_progress_title, f as sidebar_uncategorized, fn as action_back, gn as action_delete, gr as folders_delete, gt as share_copied, hr as folders_delete_title, i as import_progress_summary, k as dashboard_import, l as import_progress_uploading, lr as folders_document, mr as folders_delete_description, n as import_progress_empty, o as import_progress_done, or as folders_move, pn as action_close, r as import_progress_close, s as import_progress_processing, sr as folders_subfolder, u as import_progress_total, un as action_loading, ur as folders_documents, vn as action_save, vr as folders_empty_description, wr as doc_open_menu, xr as doc_move_to_folder, yr as folders_empty, yt as action_copy_content, zr as nav_documents } from "./assets/messages-BAQzILs4.js";
|
|
2
2
|
import { t as Icon } from "./assets/Icon-QwirKi9Y.js";
|
|
3
|
-
import { i as Folder_kanban, n as Badge, r as X, t as DatePicker } from "./assets/DatePicker-
|
|
4
|
-
import { i as Check, n as Plus, r as File_text, t as FolderDialog } from "./assets/confirm-dialog-
|
|
3
|
+
import { i as Folder_kanban, n as Badge, r as X, t as DatePicker } from "./assets/DatePicker-D84cJ-Eq.js";
|
|
4
|
+
import { i as Check, n as Plus, r as File_text, t as FolderDialog } from "./assets/confirm-dialog-XuyaL8sr.js";
|
|
5
5
|
import { t as Chevron_down } from "./assets/chevron-down-CvqKATjM.js";
|
|
6
6
|
import { t as Chevron_right } from "./assets/chevron-right-DKD7WXjz.js";
|
|
7
7
|
import { t as Copy } from "./assets/copy-DkkCPkBL.js";
|
|
@@ -17,15 +17,15 @@ import { a as Dialog, i as Dialog_description, n as Dialog_header, o as Button,
|
|
|
17
17
|
import { t as Label } from "./assets/label-Bj8-TfFN.js";
|
|
18
18
|
import { n as apiFetch } from "./assets/client-DZMkDkDn.js";
|
|
19
19
|
import "./assets/categories-av9xjeg5.js";
|
|
20
|
-
import { t as getFrontendExtensions } from "./assets/context-
|
|
20
|
+
import { t as getFrontendExtensions } from "./assets/context-Bi_mO-NS.js";
|
|
21
21
|
import { t as resolveExtensions } from "./assets/resolve-BqHozBXl.js";
|
|
22
22
|
import { A as isBrowser, K as watch, et as boxWith, q as Context } from "./assets/floating-layer-anchor-BIAu-252.js";
|
|
23
23
|
import { a as Select, i as Select_content, n as Select_trigger, r as Select_item, t as Select_value } from "./assets/select-value-DBhbkNcc.js";
|
|
24
24
|
import { c as updateDocument, i as getDocument } from "./assets/documents-CZ-wQohy.js";
|
|
25
25
|
import { c as updateFolder, i as duplicateDocument } from "./assets/folders-BX30gHv6.js";
|
|
26
26
|
import { t as copyToClipboard } from "./assets/clipboard-CXOaoz2W.js";
|
|
27
|
-
import { t as ShareDialog } from "./assets/ShareDialog-
|
|
28
|
-
import { d as refreshFolders, n as bumpSubfoldersRefresh } from "./assets/subfolders-refresh-store.svelte-
|
|
27
|
+
import { t as ShareDialog } from "./assets/ShareDialog-BZd28sg-.js";
|
|
28
|
+
import { d as refreshFolders, n as bumpSubfoldersRefresh } from "./assets/subfolders-refresh-store.svelte-CXHxQWKh.js";
|
|
29
29
|
import { n as refreshDocs } from "./assets/tag-store.svelte-BM1lUI_P.js";
|
|
30
30
|
import { t as ConfirmDialog } from "./assets/ConfirmDialog-BhAelejz.js";
|
|
31
31
|
import * as $ from "svelte/internal/server";
|
|
@@ -1900,7 +1900,12 @@ function HiaiDocsDashboardHost($$renderer, $$props) {
|
|
|
1900
1900
|
duplicatingDocumentId = null;
|
|
1901
1901
|
}
|
|
1902
1902
|
}
|
|
1903
|
-
function triggerImport() {
|
|
1903
|
+
function triggerImport() {
|
|
1904
|
+
if (extensionContext.capabilities?.["docsmint.import.manager"]) {
|
|
1905
|
+
navigateDocsmintRoute(route, "/organize");
|
|
1906
|
+
return;
|
|
1907
|
+
}
|
|
1908
|
+
}
|
|
1904
1909
|
function closeImport() {
|
|
1905
1910
|
importOpen = false;
|
|
1906
1911
|
setTimeout(() => {
|
|
@@ -2115,7 +2120,7 @@ function HiaiDocsDashboardHost($$renderer, $$props) {
|
|
|
2115
2120
|
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
2116
2121
|
let widget = each_array[$$index];
|
|
2117
2122
|
const Widget = widget.component;
|
|
2118
|
-
$$renderer.push(`<div
|
|
2123
|
+
$$renderer.push(`<div${$.attr_class($.clsx([widget.chrome === false ? "contents" : "rounded-xl border border-border bg-card p-4", widget.colSpan === 12 && "md:col-span-2"]))}${$.attr("data-hiai-docs-extension-id", widget.id)}>`);
|
|
2119
2124
|
if (widget.title) {
|
|
2120
2125
|
$$renderer.push("<!--[0-->");
|
|
2121
2126
|
$$renderer.push(`<h2 class="mb-3 text-sm font-semibold">${$.escape(widget.title)}</h2>`);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as HiaiDocsExtensionProvider } from "./assets/HiaiDocsExtensionProvider-
|
|
1
|
+
import { t as HiaiDocsExtensionProvider } from "./assets/HiaiDocsExtensionProvider-BRKWmcDd.js";
|
|
2
2
|
export { HiaiDocsExtensionProvider as DocsmintExtensionProvider };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as getFolderFromRegistry, c as getPendingDocumentPlacement, d as refreshFolders, f as registerDocument, i as getDocumentPlacementNonce, l as getSubfoldersRefresh, m as supersedePendingDocumentPlacement, n as bumpSubfoldersRefresh, o as getGlobalFolderRefreshNonce, p as registerFolder, r as getDocumentFromRegistry, s as getLatestDocumentPlacement, t as acknowledgeDocumentPlacement, u as publishDocumentPlacement } from "./assets/subfolders-refresh-store.svelte-
|
|
1
|
+
import { a as getFolderFromRegistry, c as getPendingDocumentPlacement, d as refreshFolders, f as registerDocument, i as getDocumentPlacementNonce, l as getSubfoldersRefresh, m as supersedePendingDocumentPlacement, n as bumpSubfoldersRefresh, o as getGlobalFolderRefreshNonce, p as registerFolder, r as getDocumentFromRegistry, s as getLatestDocumentPlacement, t as acknowledgeDocumentPlacement, u as publishDocumentPlacement } from "./assets/subfolders-refresh-store.svelte-CXHxQWKh.js";
|
|
2
2
|
export { acknowledgeDocumentPlacement, bumpSubfoldersRefresh, getDocumentFromRegistry, getDocumentPlacementNonce, getFolderFromRegistry, getGlobalFolderRefreshNonce, getLatestDocumentPlacement, getPendingDocumentPlacement, getSubfoldersRefresh, publishDocumentPlacement, refreshFolders, registerDocument, registerFolder, supersedePendingDocumentPlacement };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Hr as setLocale$1, Vr as locales, t as messages_exports } from "./assets/messages-BAQzILs4.js";
|
|
2
2
|
//#region ../packages/sdk/frontend-entries/i18n.ts
|
|
3
3
|
var messages = messages_exports;
|
|
4
4
|
var supportedLocales = locales;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { $n as
|
|
1
|
+
import { $n as search_title, Br as app_name, Xn as search_date_from, Yn as search_date_to, Zn as search_tags, 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, ut as search_date_range, w as categories_title } from "./assets/messages-BAQzILs4.js";
|
|
2
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-
|
|
3
|
+
import { a as Calendar, i as Folder_kanban, r as X, t as DatePicker } from "./assets/DatePicker-D84cJ-Eq.js";
|
|
4
4
|
import { t as Chevron_down } from "./assets/chevron-down-CvqKATjM.js";
|
|
5
5
|
import { t as Folder } from "./assets/folder-DYIE-XPP.js";
|
|
6
6
|
import { t as Rotate_ccw } from "./assets/rotate-ccw-dJSqPyTd.js";
|
|
7
7
|
import { n as Search, t as Tag } from "./assets/tag-BmiVU_Ej.js";
|
|
8
8
|
import { a as getDocsmintRequestAdapter, n as navigateDocsmintRoute, t as getDocsmintRouteAdapter } from "./assets/route-context-BPRerEtZ.js";
|
|
9
9
|
import "./assets/categories-av9xjeg5.js";
|
|
10
|
-
import { t as getFrontendExtensions } from "./assets/context-
|
|
10
|
+
import { t as getFrontendExtensions } from "./assets/context-Bi_mO-NS.js";
|
|
11
11
|
import { t as resolveExtensions } from "./assets/resolve-BqHozBXl.js";
|
|
12
12
|
import "./assets/select-value-DBhbkNcc.js";
|
|
13
13
|
import "./assets/tag-store.svelte-BM1lUI_P.js";
|
|
@@ -95,6 +95,24 @@ function Sliders_horizontal($$renderer, $$props) {
|
|
|
95
95
|
]));
|
|
96
96
|
}
|
|
97
97
|
//#endregion
|
|
98
|
+
//#region src/lib/hosts/search-folder-options.ts
|
|
99
|
+
function effectiveCategoryId(folder, byId) {
|
|
100
|
+
const seen = /* @__PURE__ */ new Set();
|
|
101
|
+
let current = folder;
|
|
102
|
+
while (current && !seen.has(current.id)) {
|
|
103
|
+
seen.add(current.id);
|
|
104
|
+
if (current.categoryId) return current.categoryId;
|
|
105
|
+
current = current.parentId ? byId.get(current.parentId) : void 0;
|
|
106
|
+
}
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
/** Folder names visible under the currently selected search category. */
|
|
110
|
+
function folderNamesForSearchCategory(fallbackNames, folders, categoryId) {
|
|
111
|
+
if (!categoryId) return [...fallbackNames];
|
|
112
|
+
const byId = new Map(folders.map((folder) => [folder.id, folder]));
|
|
113
|
+
return [...new Set(folders.filter((folder) => effectiveCategoryId(folder, byId) === categoryId).map((folder) => folder.name))];
|
|
114
|
+
}
|
|
115
|
+
//#endregion
|
|
98
116
|
//#region src/lib/hosts/HiaiDocsSearchHost.svelte
|
|
99
117
|
function HiaiDocsSearchHost($$renderer, $$props) {
|
|
100
118
|
$$renderer.component(($$renderer) => {
|
|
@@ -132,6 +150,7 @@ function HiaiDocsSearchHost($$renderer, $$props) {
|
|
|
132
150
|
if (!queryLower()) return [];
|
|
133
151
|
return allCategories.filter((c) => c.name.toLowerCase().includes(queryLower()));
|
|
134
152
|
});
|
|
153
|
+
const visibleFolderNames = $.derived(() => folderNamesForSearchCategory(folders, allFolders, activeCategoryId));
|
|
135
154
|
$.derived(() => matchingDocs().length > 0 || matchingFolders().length > 0 || matchingCategories().length > 0);
|
|
136
155
|
function buildUrl(overrides) {
|
|
137
156
|
const params = new URLSearchParams();
|
|
@@ -170,22 +189,22 @@ function HiaiDocsSearchHost($$renderer, $$props) {
|
|
|
170
189
|
$$renderer.push(`<!----> ${$.escape(search_clear_all_filters())}</button>`);
|
|
171
190
|
} else $$renderer.push("<!--[-1-->");
|
|
172
191
|
$$renderer.push(`<!--]--> `);
|
|
173
|
-
if (
|
|
192
|
+
if (categories.length > 0) {
|
|
174
193
|
$$renderer.push("<!--[0-->");
|
|
175
194
|
$$renderer.push(`<div><button type="button" class="mb-2 flex w-full items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground transition-colors hover:text-foreground"><span class="flex items-center gap-1.5">`);
|
|
176
|
-
|
|
177
|
-
$$renderer.push(`<!----> ${$.escape(
|
|
195
|
+
Folder_kanban($$renderer, { class: "size-3.5" });
|
|
196
|
+
$$renderer.push(`<!----> ${$.escape(categories_title())}</span> `);
|
|
178
197
|
$$renderer.push("<!--[0-->");
|
|
179
198
|
Chevron_down($$renderer, { class: "size-3" });
|
|
180
199
|
$$renderer.push(`<!--]--></button> `);
|
|
181
200
|
{
|
|
182
201
|
$$renderer.push("<!--[0-->");
|
|
183
202
|
$$renderer.push(`<div class="space-y-0.5"><!--[-->`);
|
|
184
|
-
const each_array = $.ensure_array_like(
|
|
203
|
+
const each_array = $.ensure_array_like(categories);
|
|
185
204
|
for (let $$index_4 = 0, $$length = each_array.length; $$index_4 < $$length; $$index_4++) {
|
|
186
|
-
let
|
|
187
|
-
$$renderer.push(`<button${$.attr_class(`flex w-full items-center justify-between rounded-md px-2.5 py-1.5 text-sm transition-colors ${
|
|
188
|
-
if (
|
|
205
|
+
let category = each_array[$$index_4];
|
|
206
|
+
$$renderer.push(`<button${$.attr_class(`flex w-full items-center justify-between rounded-md px-2.5 py-1.5 text-sm transition-colors ${activeCategoryId === category.id ? "bg-primary/10 font-medium text-primary" : "text-muted-foreground hover:bg-muted hover:text-foreground"}`)}><span class="truncate">${$.escape(category.name)}</span> `);
|
|
207
|
+
if (activeCategoryId === category.id) {
|
|
189
208
|
$$renderer.push("<!--[0-->");
|
|
190
209
|
X($$renderer, { class: "size-3 shrink-0" });
|
|
191
210
|
} else $$renderer.push("<!--[-1-->");
|
|
@@ -196,40 +215,22 @@ function HiaiDocsSearchHost($$renderer, $$props) {
|
|
|
196
215
|
$$renderer.push(`<!--]--></div>`);
|
|
197
216
|
} else $$renderer.push("<!--[-1-->");
|
|
198
217
|
$$renderer.push(`<!--]--> `);
|
|
199
|
-
if (
|
|
200
|
-
$$renderer.push("<!--[0-->");
|
|
201
|
-
$$renderer.push(`<div><h4 class="mb-2 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wider text-muted-foreground">`);
|
|
202
|
-
Tag($$renderer, { class: "size-3.5" });
|
|
203
|
-
$$renderer.push(`<!----> ${$.escape(search_tags())}</h4> <div class="flex flex-wrap gap-1.5"><!--[-->`);
|
|
204
|
-
const each_array_1 = $.ensure_array_like(tags);
|
|
205
|
-
for (let $$index_5 = 0, $$length = each_array_1.length; $$index_5 < $$length; $$index_5++) {
|
|
206
|
-
let tag = each_array_1[$$index_5];
|
|
207
|
-
$$renderer.push(`<button${$.attr_class(`inline-flex items-center rounded-full px-2.5 py-1 text-xs font-medium transition-colors ${activeTags.includes(tag.name) ? "bg-primary text-primary-foreground" : "bg-secondary text-secondary-foreground hover:bg-secondary/80"}`)}>`);
|
|
208
|
-
if (tag.color) {
|
|
209
|
-
$$renderer.push("<!--[0-->");
|
|
210
|
-
$$renderer.push(`<span class="mr-1.5 inline-block size-2 rounded-full"${$.attr_style(`background-color: ${$.stringify(tag.color)}`)}></span>`);
|
|
211
|
-
} else $$renderer.push("<!--[-1-->");
|
|
212
|
-
$$renderer.push(`<!--]--> ${$.escape(tag.name)}</button>`);
|
|
213
|
-
}
|
|
214
|
-
$$renderer.push(`<!--]--></div></div>`);
|
|
215
|
-
} else $$renderer.push("<!--[-1-->");
|
|
216
|
-
$$renderer.push(`<!--]--> `);
|
|
217
|
-
if (categories.length > 0) {
|
|
218
|
+
if (visibleFolderNames().length > 0) {
|
|
218
219
|
$$renderer.push("<!--[0-->");
|
|
219
220
|
$$renderer.push(`<div><button type="button" class="mb-2 flex w-full items-center justify-between text-xs font-semibold uppercase tracking-wider text-muted-foreground transition-colors hover:text-foreground"><span class="flex items-center gap-1.5">`);
|
|
220
|
-
|
|
221
|
-
$$renderer.push(`<!----> ${$.escape(
|
|
221
|
+
Folder($$renderer, { class: "size-3.5" });
|
|
222
|
+
$$renderer.push(`<!----> ${$.escape(search_folders())}</span> `);
|
|
222
223
|
$$renderer.push("<!--[0-->");
|
|
223
224
|
Chevron_down($$renderer, { class: "size-3" });
|
|
224
225
|
$$renderer.push(`<!--]--></button> `);
|
|
225
226
|
{
|
|
226
227
|
$$renderer.push("<!--[0-->");
|
|
227
228
|
$$renderer.push(`<div class="space-y-0.5"><!--[-->`);
|
|
228
|
-
const
|
|
229
|
-
for (let $$
|
|
230
|
-
let
|
|
231
|
-
$$renderer.push(`<button${$.attr_class(`flex w-full items-center justify-between rounded-md px-2.5 py-1.5 text-sm transition-colors ${
|
|
232
|
-
if (
|
|
229
|
+
const each_array_1 = $.ensure_array_like(visibleFolderNames());
|
|
230
|
+
for (let $$index_5 = 0, $$length = each_array_1.length; $$index_5 < $$length; $$index_5++) {
|
|
231
|
+
let folder = each_array_1[$$index_5];
|
|
232
|
+
$$renderer.push(`<button${$.attr_class(`flex w-full items-center justify-between rounded-md px-2.5 py-1.5 text-sm transition-colors ${activeFolder === folder ? "bg-primary/10 font-medium text-primary" : "text-muted-foreground hover:bg-muted hover:text-foreground"}`)}><span class="truncate">${$.escape(folder)}</span> `);
|
|
233
|
+
if (activeFolder === folder) {
|
|
233
234
|
$$renderer.push("<!--[0-->");
|
|
234
235
|
X($$renderer, { class: "size-3 shrink-0" });
|
|
235
236
|
} else $$renderer.push("<!--[-1-->");
|
|
@@ -239,6 +240,24 @@ function HiaiDocsSearchHost($$renderer, $$props) {
|
|
|
239
240
|
}
|
|
240
241
|
$$renderer.push(`<!--]--></div>`);
|
|
241
242
|
} else $$renderer.push("<!--[-1-->");
|
|
243
|
+
$$renderer.push(`<!--]--> `);
|
|
244
|
+
if (tags.length > 0) {
|
|
245
|
+
$$renderer.push("<!--[0-->");
|
|
246
|
+
$$renderer.push(`<div><h4 class="mb-2 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wider text-muted-foreground">`);
|
|
247
|
+
Tag($$renderer, { class: "size-3.5" });
|
|
248
|
+
$$renderer.push(`<!----> ${$.escape(search_tags())}</h4> <div class="flex flex-wrap gap-1.5"><!--[-->`);
|
|
249
|
+
const each_array_2 = $.ensure_array_like(tags);
|
|
250
|
+
for (let $$index_6 = 0, $$length = each_array_2.length; $$index_6 < $$length; $$index_6++) {
|
|
251
|
+
let tag = each_array_2[$$index_6];
|
|
252
|
+
$$renderer.push(`<button${$.attr_class(`inline-flex items-center rounded-full px-2.5 py-1 text-xs font-medium transition-colors ${activeTags.includes(tag.name) ? "bg-primary text-primary-foreground" : "bg-secondary text-secondary-foreground hover:bg-secondary/80"}`)}>`);
|
|
253
|
+
if (tag.color) {
|
|
254
|
+
$$renderer.push("<!--[0-->");
|
|
255
|
+
$$renderer.push(`<span class="mr-1.5 inline-block size-2 rounded-full"${$.attr_style(`background-color: ${$.stringify(tag.color)}`)}></span>`);
|
|
256
|
+
} else $$renderer.push("<!--[-1-->");
|
|
257
|
+
$$renderer.push(`<!--]--> ${$.escape(tag.name)}</button>`);
|
|
258
|
+
}
|
|
259
|
+
$$renderer.push(`<!--]--></div></div>`);
|
|
260
|
+
} else $$renderer.push("<!--[-1-->");
|
|
242
261
|
$$renderer.push(`<!--]--> <div><h4 class="mb-2 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wider text-muted-foreground">`);
|
|
243
262
|
Calendar($$renderer, { class: "size-3.5" });
|
|
244
263
|
$$renderer.push(`<!----> ${$.escape(search_date_range())}</h4> <div class="space-y-2"><div><label for="dateFrom" class="text-xs text-muted-foreground">${$.escape(search_date_from())}</label> <div class="mt-0.5">`);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as getFrontendExtensions } from "./assets/context-
|
|
1
|
+
import { t as getFrontendExtensions } from "./assets/context-Bi_mO-NS.js";
|
|
2
2
|
import * as $ from "svelte/internal/server";
|
|
3
3
|
//#region src/lib/components/editor/shared-document.ts
|
|
4
4
|
var ATTACHMENT_PATH = /^\/api\/attachments\/[0-9a-f-]+\/raw$/i;
|
|
@@ -22,6 +22,8 @@ var tsvector = customType({
|
|
|
22
22
|
});
|
|
23
23
|
var documentVisibilityEnum = pgEnum("document_visibility", ["private", "shared", "public"]);
|
|
24
24
|
var shareRoleEnum = pgEnum("share_role", ["viewer", "commenter", "editor"]);
|
|
25
|
+
var shareAccessModeEnum = pgEnum("share_access_mode", ["public", "restricted"]);
|
|
26
|
+
var shareGrantStatusEnum = pgEnum("share_grant_status", ["pending", "accepted", "revoked"]);
|
|
25
27
|
var embeddingStatusEnum = pgEnum("embedding_status", [
|
|
26
28
|
"pending",
|
|
27
29
|
"processing",
|
|
@@ -313,6 +315,9 @@ var shareLinks = pgTable("share_links", {
|
|
|
313
315
|
token: text("token").notNull().unique(),
|
|
314
316
|
passwordHash: text("password_hash"),
|
|
315
317
|
role: shareRoleEnum("role").notNull().default("viewer"),
|
|
318
|
+
accessMode: shareAccessModeEnum("access_mode").notNull().default("public"),
|
|
319
|
+
allowPasswordFallback: boolean("allow_password_fallback").notNull().default(false),
|
|
320
|
+
policyVersion: integer("policy_version").notNull().default(1),
|
|
316
321
|
expiresAt: timestamp("expires_at"),
|
|
317
322
|
createdBy: uuid("created_by").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
318
323
|
workspaceId: text("workspace_id"),
|
|
@@ -348,8 +353,15 @@ var guestAccess = pgTable("guest_access", {
|
|
|
348
353
|
shareLinkId: uuid("share_link_id").notNull().references(() => shareLinks.id, { onDelete: "cascade" }),
|
|
349
354
|
workspaceId: text("workspace_id"),
|
|
350
355
|
guestEmail: text("guest_email").notNull(),
|
|
351
|
-
|
|
352
|
-
|
|
356
|
+
role: shareRoleEnum("role").notNull().default("viewer"),
|
|
357
|
+
status: shareGrantStatusEnum("status").notNull().default("pending"),
|
|
358
|
+
grantedAt: timestamp("granted_at").defaultNow().notNull(),
|
|
359
|
+
acceptedAt: timestamp("accepted_at"),
|
|
360
|
+
revokedAt: timestamp("revoked_at")
|
|
361
|
+
}, (table) => [
|
|
362
|
+
index("guest_access_share_link_idx").on(table.shareLinkId),
|
|
363
|
+
uniqueIndex("guest_access_share_link_email_unique_idx").on(table.shareLinkId, table.guestEmail)
|
|
364
|
+
]);
|
|
353
365
|
var guestAccessRelations = relations(guestAccess, ({ one }) => ({
|
|
354
366
|
shareLink: one(shareLinks, {
|
|
355
367
|
fields: [guestAccess.shareLinkId],
|
|
@@ -365,7 +377,10 @@ var attachments = pgTable("attachments", {
|
|
|
365
377
|
size: bigint("size", { mode: "number" }).notNull(),
|
|
366
378
|
storageKey: text("storage_key").notNull(),
|
|
367
379
|
createdAt: timestamp("created_at").defaultNow().notNull()
|
|
368
|
-
}, (table) => [
|
|
380
|
+
}, (table) => [
|
|
381
|
+
index("attachments_document_id_idx").on(table.documentId),
|
|
382
|
+
uniqueIndex("attachments_storage_key_unique").on(table.storageKey)
|
|
383
|
+
]);
|
|
369
384
|
var attachmentRelations = relations(attachments, ({ one }) => ({
|
|
370
385
|
document: one(documents, {
|
|
371
386
|
fields: [attachments.documentId],
|
package/dist/types.d.ts
CHANGED
|
@@ -161,6 +161,11 @@ export interface DocsSearchResponse {
|
|
|
161
161
|
total: number;
|
|
162
162
|
page: number;
|
|
163
163
|
limit: number;
|
|
164
|
+
diagnostics?: {
|
|
165
|
+
graphAttempted: boolean;
|
|
166
|
+
graphFailed: boolean;
|
|
167
|
+
graphContribution: boolean;
|
|
168
|
+
};
|
|
164
169
|
}
|
|
165
170
|
export interface DocsSearchOptions {
|
|
166
171
|
folder?: string;
|
package/package.json
CHANGED
|
@@ -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.5.
|
|
27
|
+
const VERSION = "0.5.3";
|
|
28
28
|
|
|
29
29
|
const program = new Command();
|
|
30
30
|
program
|
|
@@ -32,6 +32,8 @@ import { relations, sql } from "drizzle-orm";
|
|
|
32
32
|
// ============================================
|
|
33
33
|
export const documentVisibilityEnum = pgEnum("document_visibility", ["private", "shared", "public"]);
|
|
34
34
|
export const shareRoleEnum = pgEnum("share_role", ["viewer", "commenter", "editor"]);
|
|
35
|
+
export const shareAccessModeEnum = pgEnum("share_access_mode", ["public", "restricted"]);
|
|
36
|
+
export const shareGrantStatusEnum = pgEnum("share_grant_status", ["pending", "accepted", "revoked"]);
|
|
35
37
|
export const embeddingStatusEnum = pgEnum("embedding_status", [
|
|
36
38
|
"pending",
|
|
37
39
|
"processing",
|
|
@@ -455,6 +457,9 @@ export const shareLinks = pgTable(
|
|
|
455
457
|
token: text("token").notNull().unique(),
|
|
456
458
|
passwordHash: text("password_hash"),
|
|
457
459
|
role: shareRoleEnum("role").notNull().default("viewer"),
|
|
460
|
+
accessMode: shareAccessModeEnum("access_mode").notNull().default("public"),
|
|
461
|
+
allowPasswordFallback: boolean("allow_password_fallback").notNull().default(false),
|
|
462
|
+
policyVersion: integer("policy_version").notNull().default(1),
|
|
458
463
|
expiresAt: timestamp("expires_at"),
|
|
459
464
|
createdBy: uuid("created_by")
|
|
460
465
|
.notNull()
|
|
@@ -506,9 +511,16 @@ export const guestAccess = pgTable(
|
|
|
506
511
|
.references(() => shareLinks.id, { onDelete: "cascade" }),
|
|
507
512
|
workspaceId: text("workspace_id"),
|
|
508
513
|
guestEmail: text("guest_email").notNull(),
|
|
514
|
+
role: shareRoleEnum("role").notNull().default("viewer"),
|
|
515
|
+
status: shareGrantStatusEnum("status").notNull().default("pending"),
|
|
509
516
|
grantedAt: timestamp("granted_at").defaultNow().notNull(),
|
|
517
|
+
acceptedAt: timestamp("accepted_at"),
|
|
518
|
+
revokedAt: timestamp("revoked_at"),
|
|
510
519
|
},
|
|
511
|
-
(table) => [
|
|
520
|
+
(table) => [
|
|
521
|
+
index("guest_access_share_link_idx").on(table.shareLinkId),
|
|
522
|
+
uniqueIndex("guest_access_share_link_email_unique_idx").on(table.shareLinkId, table.guestEmail),
|
|
523
|
+
]
|
|
512
524
|
);
|
|
513
525
|
|
|
514
526
|
export const guestAccessRelations = relations(guestAccess, ({ one }) => ({
|
|
@@ -535,7 +547,10 @@ export const attachments = pgTable(
|
|
|
535
547
|
storageKey: text("storage_key").notNull(),
|
|
536
548
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
|
537
549
|
},
|
|
538
|
-
(table) => [
|
|
550
|
+
(table) => [
|
|
551
|
+
index("attachments_document_id_idx").on(table.documentId),
|
|
552
|
+
uniqueIndex("attachments_storage_key_unique").on(table.storageKey),
|
|
553
|
+
]
|
|
539
554
|
);
|
|
540
555
|
|
|
541
556
|
export const attachmentRelations = relations(attachments, ({ one }) => ({
|