@arbidocs/blocks 0.4.32 → 0.4.37
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/agents/index.cjs +258 -216
- package/dist/agents/index.js +9 -7
- package/dist/agents/tasks/ConversationListView.d.ts +58 -0
- package/dist/agents/tasks/ConversationTurnSpeaker.d.ts +16 -0
- package/dist/agents/tasks/NewThreadDialog.d.ts +1 -1
- package/dist/agents/tasks/TaskActivityTimeline.d.ts +1 -1
- package/dist/agents/tasks/TaskFlow.d.ts +22 -0
- package/dist/agents/tasks/TaskInbox.d.ts +26 -0
- package/dist/agents/tasks/TaskReviewDialog.d.ts +22 -0
- package/dist/agents/tasks/TaskRowMenu.d.ts +10 -2
- package/dist/agents/tasks/TaskRunsDialog.d.ts +8 -3
- package/dist/agents/tasks/TaskStartDialog.d.ts +24 -0
- package/dist/agents/tasks/TaskTable.d.ts +1 -1
- package/dist/agents/tasks/ThreadNotifyDialog.d.ts +11 -0
- package/dist/agents/tasks/WorkflowComposer.d.ts +1 -1
- package/dist/agents/tasks/WorkflowsTable.d.ts +7 -0
- package/dist/agents/tasks/compact-thread-activity.d.ts +8 -0
- package/dist/agents/tasks/index.d.ts +10 -0
- package/dist/agents/tasks/taskComposerTypes.d.ts +16 -1
- package/dist/agents/tasks/taskRequest.d.ts +1 -0
- package/dist/agents/tasks/testGrid.d.ts +24 -0
- package/dist/agents/tasks/workflowColumns.d.ts +2 -1
- package/dist/agents/tasks/workflowRows.d.ts +6 -0
- package/dist/agents/workflows/types.d.ts +2 -0
- package/dist/auth/index.cjs +27 -27
- package/dist/auth/index.js +1 -1
- package/dist/chat/Message.d.ts +8 -2
- package/dist/chat/index.cjs +132 -120
- package/dist/chat/index.d.ts +2 -0
- package/dist/chat/index.js +2 -2
- package/dist/chat/participant-tints.d.ts +1 -0
- package/dist/chat/useRecipientDraft.d.ts +14 -0
- package/dist/{chunk-KF4EC5XU.js → chunk-24KQJYSB.js} +3 -3
- package/dist/{chunk-KF4EC5XU.js.map → chunk-24KQJYSB.js.map} +1 -1
- package/dist/{chunk-GVQOBJKR.cjs → chunk-2EAE5JP6.cjs} +7 -4
- package/dist/chunk-2EAE5JP6.cjs.map +1 -0
- package/dist/chunk-3AFWGEDJ.cjs +53 -0
- package/dist/chunk-3AFWGEDJ.cjs.map +1 -0
- package/dist/{chunk-UBNVIIBT.js → chunk-4WWM3GQ5.js} +23 -8
- package/dist/chunk-4WWM3GQ5.js.map +1 -0
- package/dist/{chunk-56BUD74K.cjs → chunk-65THHQVB.cjs} +27 -27
- package/dist/{chunk-56BUD74K.cjs.map → chunk-65THHQVB.cjs.map} +1 -1
- package/dist/{chunk-UTYQPVIW.cjs → chunk-7QDX2CO4.cjs} +6 -6
- package/dist/{chunk-UTYQPVIW.cjs.map → chunk-7QDX2CO4.cjs.map} +1 -1
- package/dist/{chunk-5B4PXAKI.cjs → chunk-7RGLTF76.cjs} +23 -8
- package/dist/chunk-7RGLTF76.cjs.map +1 -0
- package/dist/{chunk-PLGVMLBD.cjs → chunk-AMXQQCCB.cjs} +1975 -610
- package/dist/chunk-AMXQQCCB.cjs.map +1 -0
- package/dist/{chunk-NUPVHEJW.js → chunk-BUHKUKKB.js} +7 -4
- package/dist/chunk-BUHKUKKB.js.map +1 -0
- package/dist/{chunk-4XJZ6AAY.js → chunk-CKB64Z4R.js} +245 -6
- package/dist/chunk-CKB64Z4R.js.map +1 -0
- package/dist/chunk-DDW3M22Z.js +126 -0
- package/dist/chunk-DDW3M22Z.js.map +1 -0
- package/dist/{chunk-KXMDOTGW.js → chunk-DLBUFHLY.js} +10 -2
- package/dist/chunk-DLBUFHLY.js.map +1 -0
- package/dist/{chunk-ZHLMDJCO.cjs → chunk-DLVX6R6B.cjs} +62 -26
- package/dist/chunk-DLVX6R6B.cjs.map +1 -0
- package/dist/{chunk-JGZTRLKL.cjs → chunk-IA7RTPT3.cjs} +7 -4
- package/dist/chunk-IA7RTPT3.cjs.map +1 -0
- package/dist/{chunk-6YVI74BC.js → chunk-JH25QIZW.js} +439 -12
- package/dist/chunk-JH25QIZW.js.map +1 -0
- package/dist/{chunk-FRRDPYBR.cjs → chunk-L7B4W4LA.cjs} +74 -5
- package/dist/chunk-L7B4W4LA.cjs.map +1 -0
- package/dist/{chunk-NJL4LIXX.js → chunk-LFGJAZ5H.js} +11 -8
- package/dist/chunk-LFGJAZ5H.js.map +1 -0
- package/dist/{chunk-IAKUTBPX.js → chunk-LYUO3E6V.js} +3 -3
- package/dist/{chunk-IAKUTBPX.js.map → chunk-LYUO3E6V.js.map} +1 -1
- package/dist/{chunk-EYPPB5CY.cjs → chunk-M2YGPC5N.cjs} +4 -4
- package/dist/{chunk-EYPPB5CY.cjs.map → chunk-M2YGPC5N.cjs.map} +1 -1
- package/dist/{chunk-5ZBP7TCD.cjs → chunk-MJCCBMM5.cjs} +10 -2
- package/dist/chunk-MJCCBMM5.cjs.map +1 -0
- package/dist/{chunk-VMCOH3AY.cjs → chunk-NUF2WGGF.cjs} +527 -96
- package/dist/chunk-NUF2WGGF.cjs.map +1 -0
- package/dist/{chunk-OJSWQM4G.js → chunk-OZJ5PXA6.js} +29 -4
- package/dist/chunk-OZJ5PXA6.js.map +1 -0
- package/dist/{chunk-3NZR6PAG.js → chunk-PE7Z53RB.js} +70 -4
- package/dist/chunk-PE7Z53RB.js.map +1 -0
- package/dist/chunk-Q6LF7N3A.cjs +130 -0
- package/dist/chunk-Q6LF7N3A.cjs.map +1 -0
- package/dist/{chunk-RGHQFJOL.cjs → chunk-QFUF4A4J.cjs} +28 -2
- package/dist/chunk-QFUF4A4J.cjs.map +1 -0
- package/dist/chunk-RFXJYIDV.js +50 -0
- package/dist/chunk-RFXJYIDV.js.map +1 -0
- package/dist/{chunk-QN42OA5J.js → chunk-SFXVNFES.js} +4 -4
- package/dist/chunk-SFXVNFES.js.map +1 -0
- package/dist/{chunk-YVIOCITQ.cjs → chunk-VUEZARW5.cjs} +3 -3
- package/dist/chunk-VUEZARW5.cjs.map +1 -0
- package/dist/{chunk-JLOYWXRB.js → chunk-VZGBCBYB.js} +3 -3
- package/dist/chunk-VZGBCBYB.js.map +1 -0
- package/dist/{chunk-ZVPTFTGV.cjs → chunk-WBDK4PIA.cjs} +11 -8
- package/dist/chunk-WBDK4PIA.cjs.map +1 -0
- package/dist/{chunk-ZORQ5M3W.cjs → chunk-WQFGG2BV.cjs} +4 -4
- package/dist/chunk-WQFGG2BV.cjs.map +1 -0
- package/dist/{chunk-C75S6USL.js → chunk-WYVCXY7R.js} +7 -4
- package/dist/chunk-WYVCXY7R.js.map +1 -0
- package/dist/{chunk-WSJVHSGN.js → chunk-XWEJ5LV2.js} +63 -27
- package/dist/chunk-XWEJ5LV2.js.map +1 -0
- package/dist/{chunk-S5HZBXZA.cjs → chunk-YJQVLVBJ.cjs} +243 -2
- package/dist/chunk-YJQVLVBJ.cjs.map +1 -0
- package/dist/{chunk-YMHGF6R5.js → chunk-ZCF2JJFA.js} +3 -3
- package/dist/{chunk-YMHGF6R5.js.map → chunk-ZCF2JJFA.js.map} +1 -1
- package/dist/{chunk-TZ4QF7EP.js → chunk-ZDA5CZPS.js} +1948 -594
- package/dist/chunk-ZDA5CZPS.js.map +1 -0
- package/dist/collaboration/index.cjs +45 -41
- package/dist/collaboration/index.js +1 -1
- package/dist/collaboration/mail/MailMessagePreview.d.ts +11 -0
- package/dist/collaboration/mail/index.d.ts +1 -0
- package/dist/connect/docx.cjs +4 -4
- package/dist/connect/docx.js +1 -1
- package/dist/connect/index.cjs +32 -32
- package/dist/connect/index.js +3 -3
- package/dist/docx/NativeDocxEditor.d.ts +2 -2
- package/dist/docx/index.cjs +33 -30
- package/dist/docx/index.cjs.map +1 -1
- package/dist/docx/index.d.ts +2 -2
- package/dist/docx/index.js +3 -4
- package/dist/docx/index.js.map +1 -1
- package/dist/docx/review/DocxEditorReview.d.ts +16 -0
- package/dist/docx/review/index.d.ts +3 -0
- package/dist/docx/review/reviewModule.d.ts +6 -0
- package/dist/docx/review/useReview.d.ts +29 -0
- package/dist/facts/FactsFilterInput.d.ts +2 -46
- package/dist/facts/FactsToolbar.d.ts +5 -5
- package/dist/facts/index.cjs +27 -124
- package/dist/facts/index.cjs.map +1 -1
- package/dist/facts/index.js +13 -118
- package/dist/facts/index.js.map +1 -1
- package/dist/files/FilesPage.d.ts +1 -1
- package/dist/files/FilesToolbar.d.ts +1 -1
- package/dist/files/FolderPicker.d.ts +2 -1
- package/dist/files/ViewerChrome.d.ts +1 -1
- package/dist/files/bulk/FolderFilterButton.d.ts +3 -2
- package/dist/files/cells/BulkLabelSelect.d.ts +11 -0
- package/dist/files/cells/LabelMultiSelect.d.ts +2 -1
- package/dist/files/cells/index.d.ts +1 -0
- package/dist/files/index.cjs +110 -167
- package/dist/files/index.cjs.map +1 -1
- package/dist/files/index.js +96 -159
- package/dist/files/index.js.map +1 -1
- package/dist/home/index.cjs +20 -20
- package/dist/home/index.cjs.map +1 -1
- package/dist/home/index.js +5 -5
- package/dist/home/index.js.map +1 -1
- package/dist/index.cjs +646 -623
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +20 -68
- package/dist/index.js.map +1 -1
- package/dist/settings/SettingsPanel.d.ts +1 -1
- package/dist/settings/TriStateFilterMenu.d.ts +3 -1
- package/dist/settings/index.cjs +55 -280
- package/dist/settings/index.cjs.map +1 -1
- package/dist/settings/index.js +17 -248
- package/dist/settings/index.js.map +1 -1
- package/dist/shell/FilterInput.d.ts +48 -0
- package/dist/shell/TabHeader.d.ts +7 -1
- package/dist/shell/index.cjs +62 -49
- package/dist/shell/index.d.ts +1 -0
- package/dist/shell/index.js +4 -3
- package/dist/site/index.cjs +62 -62
- package/dist/site/index.js +2 -2
- package/dist/studio/index.cjs +75 -75
- package/dist/studio/index.js +6 -6
- package/dist/workspaces/WorkspaceCard.d.ts +2 -2
- package/dist/workspaces/index.cjs +9 -2
- package/dist/workspaces/index.cjs.map +1 -1
- package/dist/workspaces/index.js +9 -2
- package/dist/workspaces/index.js.map +1 -1
- package/package.json +9 -13
- package/src/blocks.css +4 -0
- package/src/components/grid.css +10 -0
- package/src/docx/styles.css +488 -43
- package/dist/chunk-3NZR6PAG.js.map +0 -1
- package/dist/chunk-4XJZ6AAY.js.map +0 -1
- package/dist/chunk-5B4PXAKI.cjs.map +0 -1
- package/dist/chunk-5ZBP7TCD.cjs.map +0 -1
- package/dist/chunk-6YVI74BC.js.map +0 -1
- package/dist/chunk-C75S6USL.js.map +0 -1
- package/dist/chunk-FRRDPYBR.cjs.map +0 -1
- package/dist/chunk-GVQOBJKR.cjs.map +0 -1
- package/dist/chunk-JGZTRLKL.cjs.map +0 -1
- package/dist/chunk-JLOYWXRB.js.map +0 -1
- package/dist/chunk-KXMDOTGW.js.map +0 -1
- package/dist/chunk-NJL4LIXX.js.map +0 -1
- package/dist/chunk-NUPVHEJW.js.map +0 -1
- package/dist/chunk-OJSWQM4G.js.map +0 -1
- package/dist/chunk-PLGVMLBD.cjs.map +0 -1
- package/dist/chunk-QN42OA5J.js.map +0 -1
- package/dist/chunk-RGHQFJOL.cjs.map +0 -1
- package/dist/chunk-S5HZBXZA.cjs.map +0 -1
- package/dist/chunk-TZ4QF7EP.js.map +0 -1
- package/dist/chunk-UBNVIIBT.js.map +0 -1
- package/dist/chunk-VMCOH3AY.cjs.map +0 -1
- package/dist/chunk-WSJVHSGN.js.map +0 -1
- package/dist/chunk-YVIOCITQ.cjs.map +0 -1
- package/dist/chunk-ZHLMDJCO.cjs.map +0 -1
- package/dist/chunk-ZORQ5M3W.cjs.map +0 -1
- package/dist/chunk-ZVPTFTGV.cjs.map +0 -1
package/dist/docx/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/docx/NativeDocxComparison.tsx"],"names":["useRef","useState","useEffect","error","jsxs","jsx","NativeDocxEditor"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/docx/NativeDocxComparison.tsx"],"names":["useRef","useState","useEffect","error","jsxs","jsx","NativeDocxEditor"],"mappings":"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","file":"index.cjs","sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { NativeDocxEditor, type NativeDocxAdapter } from './NativeDocxEditor'\n\nexport interface NativeDocxComparisonProps {\n adapter: NativeDocxAdapter\n baseId: string\n revisedId: string\n title: string\n onCompared?: (documentId: string) => void | Promise<void>\n}\n\n/** Word comparison through the host's authenticated transport and LibreOffice service. */\nexport function NativeDocxComparison({\n adapter,\n baseId,\n revisedId,\n title,\n onCompared,\n}: NativeDocxComparisonProps) {\n const host = useRef({ adapter, onCompared })\n host.current = { adapter, onCompared }\n const [documentId, setDocumentId] = useState('')\n const [error, setError] = useState('')\n const [attempt, setAttempt] = useState(0)\n useEffect(() => {\n let cancelled = false\n setDocumentId('')\n setError('')\n const query = new URLSearchParams({ base_ext_id: baseId, revised_ext_id: revisedId })\n void host.current.adapter\n .request(`/redline?${query}`, { method: 'POST' })\n .then((response) => response.json())\n .then((result: { document_ext_id: string }) => {\n if (!result.document_ext_id) throw new Error('Comparison did not return a Word document.')\n if (!cancelled) {\n setDocumentId(result.document_ext_id)\n void Promise.resolve(host.current.onCompared?.(result.document_ext_id)).catch(() => {})\n }\n })\n .catch((error) => {\n if (!cancelled) setError(error instanceof Error ? error.message : String(error))\n })\n return () => {\n cancelled = true\n }\n }, [baseId, revisedId, attempt])\n if (error)\n return (\n <div className=\"native-docx-error\" role=\"alert\">\n <p>{error}</p>\n <button onClick={() => setAttempt((value) => value + 1)}>Retry comparison</button>\n </div>\n )\n if (!documentId)\n return (\n <div className=\"native-docx-error\" role=\"status\">\n Comparing Word documents…\n </div>\n )\n return (\n <NativeDocxEditor\n key={documentId}\n adapter={adapter}\n documentId={documentId}\n title={`${title.replace(/\\.[^.]+$/, '')} (redline).docx`}\n />\n )\n}\n"]}
|
package/dist/docx/index.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ export { DocxMentions, DocxCommentActivity } from './DocxMentions';
|
|
|
3
3
|
export type { DocxMention, DocxAgentCommentRequest, DocxMentionDelivery, DocxAgentRunStatus, } from './DocxMentions';
|
|
4
4
|
export type { NativeDocxAdapter, NativeDocxEditorProps } from './NativeDocxEditor';
|
|
5
5
|
export { DocxEditor, useDocxEditor, useEditorState } from '@docx-editor.dev/react';
|
|
6
|
-
export { DocxEditorReview, useReview, useReviewItem } from '
|
|
7
|
-
export { createHocuspocusCollaboration } from '@
|
|
6
|
+
export { DocxEditorReview, useReview, useReviewItem, reviewModule } from './review';
|
|
7
|
+
export { createHocuspocusCollaboration } from '@arbidocs/coedit/hocuspocus';
|
|
8
8
|
export { loadDocxFonts } from './fonts';
|
|
9
9
|
export { normalizeDocxExport } from './export';
|
|
10
10
|
export { StreamedWordArtifact, type StreamedWordArtifactProps } from './StreamedWordArtifact';
|
package/dist/docx/index.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { NativeDocxEditor } from '../chunk-
|
|
3
|
-
export { DocxCommentActivity, DocxMentions, DocxParticipants, DocxRibbon, NativeDocxEditor, StreamedWordArtifact, loadDocxFonts, normalizeDocxExport } from '../chunk-
|
|
2
|
+
import { NativeDocxEditor } from '../chunk-JH25QIZW.js';
|
|
3
|
+
export { DocxCommentActivity, DocxEditorReview, DocxMentions, DocxParticipants, DocxRibbon, NativeDocxEditor, StreamedWordArtifact, loadDocxFonts, normalizeDocxExport, reviewModule, useReview, useReviewItem } from '../chunk-JH25QIZW.js';
|
|
4
4
|
import '../chunk-AA3PT6KR.js';
|
|
5
5
|
import '../chunk-7F6CBP3Z.js';
|
|
6
6
|
export { DocxEditor, useDocxEditor, useEditorState } from '@docx-editor.dev/react';
|
|
7
|
-
export {
|
|
8
|
-
export { createHocuspocusCollaboration } from '@docx-editor.dev/pro/collaboration/hocuspocus';
|
|
7
|
+
export { createHocuspocusCollaboration } from '@arbidocs/coedit/hocuspocus';
|
|
9
8
|
import { useRef, useState, useEffect } from 'react';
|
|
10
9
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
11
10
|
|
package/dist/docx/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/docx/NativeDocxComparison.tsx"],"names":["error"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/docx/NativeDocxComparison.tsx"],"names":["error"],"mappings":";;;;;;;;;AAYO,SAAS,oBAAA,CAAqB;AAAA,EACnC,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA;AACF,CAAA,EAA8B;AAC5B,EAAA,MAAM,IAAA,GAAO,MAAA,CAAO,EAAE,OAAA,EAAS,YAAY,CAAA;AAC3C,EAAA,IAAA,CAAK,OAAA,GAAU,EAAE,OAAA,EAAS,UAAA,EAAW;AACrC,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAS,EAAE,CAAA;AAC/C,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,SAAS,EAAE,CAAA;AACrC,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,CAAC,CAAA;AACxC,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,SAAA,GAAY,KAAA;AAChB,IAAA,aAAA,CAAc,EAAE,CAAA;AAChB,IAAA,QAAA,CAAS,EAAE,CAAA;AACX,IAAA,MAAM,KAAA,GAAQ,IAAI,eAAA,CAAgB,EAAE,aAAa,MAAA,EAAQ,cAAA,EAAgB,WAAW,CAAA;AACpF,IAAA,KAAK,IAAA,CAAK,QAAQ,OAAA,CACf,OAAA,CAAQ,YAAY,KAAK,CAAA,CAAA,EAAI,EAAE,MAAA,EAAQ,MAAA,EAAQ,CAAA,CAC/C,IAAA,CAAK,CAAC,QAAA,KAAa,QAAA,CAAS,MAAM,CAAA,CAClC,IAAA,CAAK,CAAC,MAAA,KAAwC;AAC7C,MAAA,IAAI,CAAC,MAAA,CAAO,eAAA,EAAiB,MAAM,IAAI,MAAM,4CAA4C,CAAA;AACzF,MAAA,IAAI,CAAC,SAAA,EAAW;AACd,QAAA,aAAA,CAAc,OAAO,eAAe,CAAA;AACpC,QAAA,KAAK,OAAA,CAAQ,OAAA,CAAQ,IAAA,CAAK,OAAA,CAAQ,UAAA,GAAa,OAAO,eAAe,CAAC,CAAA,CAAE,KAAA,CAAM,MAAM;AAAA,QAAC,CAAC,CAAA;AAAA,MACxF;AAAA,IACF,CAAC,CAAA,CACA,KAAA,CAAM,CAACA,MAAAA,KAAU;AAChB,MAAA,IAAI,CAAC,WAAW,QAAA,CAASA,MAAAA,YAAiB,QAAQA,MAAAA,CAAM,OAAA,GAAU,MAAA,CAAOA,MAAK,CAAC,CAAA;AAAA,IACjF,CAAC,CAAA;AACH,IAAA,OAAO,MAAM;AACX,MAAA,SAAA,GAAY,IAAA;AAAA,IACd,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,EAAQ,SAAA,EAAW,OAAO,CAAC,CAAA;AAC/B,EAAA,IAAI,KAAA;AACF,IAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mBAAA,EAAoB,MAAK,OAAA,EACtC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,OAAG,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,sBACV,GAAA,CAAC,QAAA,EAAA,EAAO,OAAA,EAAS,MAAM,UAAA,CAAW,CAAC,KAAA,KAAU,KAAA,GAAQ,CAAC,CAAA,EAAG,QAAA,EAAA,kBAAA,EAAgB;AAAA,KAAA,EAC3E,CAAA;AAEJ,EAAA,IAAI,CAAC,UAAA;AACH,IAAA,2BACG,KAAA,EAAA,EAAI,SAAA,EAAU,mBAAA,EAAoB,IAAA,EAAK,UAAS,QAAA,EAAA,gCAAA,EAEjD,CAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,gBAAA;AAAA,IAAA;AAAA,MAEC,OAAA;AAAA,MACA,UAAA;AAAA,MACA,OAAO,CAAA,EAAG,KAAA,CAAM,OAAA,CAAQ,UAAA,EAAY,EAAE,CAAC,CAAA,eAAA;AAAA,KAAA;AAAA,IAHlC;AAAA,GAIP;AAEJ","file":"index.js","sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { NativeDocxEditor, type NativeDocxAdapter } from './NativeDocxEditor'\n\nexport interface NativeDocxComparisonProps {\n adapter: NativeDocxAdapter\n baseId: string\n revisedId: string\n title: string\n onCompared?: (documentId: string) => void | Promise<void>\n}\n\n/** Word comparison through the host's authenticated transport and LibreOffice service. */\nexport function NativeDocxComparison({\n adapter,\n baseId,\n revisedId,\n title,\n onCompared,\n}: NativeDocxComparisonProps) {\n const host = useRef({ adapter, onCompared })\n host.current = { adapter, onCompared }\n const [documentId, setDocumentId] = useState('')\n const [error, setError] = useState('')\n const [attempt, setAttempt] = useState(0)\n useEffect(() => {\n let cancelled = false\n setDocumentId('')\n setError('')\n const query = new URLSearchParams({ base_ext_id: baseId, revised_ext_id: revisedId })\n void host.current.adapter\n .request(`/redline?${query}`, { method: 'POST' })\n .then((response) => response.json())\n .then((result: { document_ext_id: string }) => {\n if (!result.document_ext_id) throw new Error('Comparison did not return a Word document.')\n if (!cancelled) {\n setDocumentId(result.document_ext_id)\n void Promise.resolve(host.current.onCompared?.(result.document_ext_id)).catch(() => {})\n }\n })\n .catch((error) => {\n if (!cancelled) setError(error instanceof Error ? error.message : String(error))\n })\n return () => {\n cancelled = true\n }\n }, [baseId, revisedId, attempt])\n if (error)\n return (\n <div className=\"native-docx-error\" role=\"alert\">\n <p>{error}</p>\n <button onClick={() => setAttempt((value) => value + 1)}>Retry comparison</button>\n </div>\n )\n if (!documentId)\n return (\n <div className=\"native-docx-error\" role=\"status\">\n Comparing Word documents…\n </div>\n )\n return (\n <NativeDocxEditor\n key={documentId}\n adapter={adapter}\n documentId={documentId}\n title={`${title.replace(/\\.[^.]+$/, '')} (redline).docx`}\n />\n )\n}\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type ReviewEntry } from './useReview';
|
|
3
|
+
/**
|
|
4
|
+
* The review rail: one card per comment thread or tracked change, aligned to its place in the page.
|
|
5
|
+
* Everything it shows and every action it takes goes through the editor's own review API.
|
|
6
|
+
*/
|
|
7
|
+
declare function DocxEditorReviewRail({ children, }: {
|
|
8
|
+
children?: (entry: ReviewEntry) => React.ReactNode;
|
|
9
|
+
}): React.JSX.Element | null;
|
|
10
|
+
declare function ReviewCardSlot({ children }: {
|
|
11
|
+
children?: React.ReactNode;
|
|
12
|
+
}): React.JSX.Element;
|
|
13
|
+
export declare const DocxEditorReview: typeof DocxEditorReviewRail & {
|
|
14
|
+
Card: typeof ReviewCardSlot;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ReviewItemPlacement } from '@docx-editor.dev/core';
|
|
2
|
+
export type ReviewEntry = ReviewItemPlacement;
|
|
3
|
+
export interface ReviewApi {
|
|
4
|
+
/** False until the editor has mounted. */
|
|
5
|
+
ready: boolean;
|
|
6
|
+
/** Every pending decision, in document order. */
|
|
7
|
+
items: readonly ReviewEntry[];
|
|
8
|
+
activeKey: string | null;
|
|
9
|
+
paneOpen: boolean;
|
|
10
|
+
setPaneOpen(open: boolean): void;
|
|
11
|
+
/** Focus a card's range in the document. Returns false when the engine refuses. */
|
|
12
|
+
setActive(key: string | null, options?: {
|
|
13
|
+
reveal?: false;
|
|
14
|
+
}): boolean;
|
|
15
|
+
reply(entry: ReviewEntry, text: string): boolean;
|
|
16
|
+
accept(entry: ReviewEntry): boolean;
|
|
17
|
+
reject(entry: ReviewEntry): boolean;
|
|
18
|
+
resolve(entry: ReviewEntry, resolved: boolean): boolean;
|
|
19
|
+
remove(entry: ReviewEntry): boolean;
|
|
20
|
+
addComment(text: string): boolean;
|
|
21
|
+
/** Move the document caret to the next or previous tracked change, wrapping at the ends. */
|
|
22
|
+
navigate(direction: 'next' | 'previous'): boolean;
|
|
23
|
+
/** Accept or reject every change shown, as one undo step. */
|
|
24
|
+
resolveAll(action: 'accept' | 'reject'): boolean;
|
|
25
|
+
}
|
|
26
|
+
export declare function useReview(): ReviewApi;
|
|
27
|
+
export declare const ReviewItemContext: import("react").Context<ReviewItemPlacement | null>;
|
|
28
|
+
/** The card being rendered. Null outside a card. */
|
|
29
|
+
export declare function useReviewItem(): ReviewEntry | null;
|
|
@@ -1,46 +1,2 @@
|
|
|
1
|
-
/**
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* The Facts table's "Filter…" box, styled to match the Documents table's filter
|
|
5
|
-
* bar: a muted input with a leading funnel icon and an appended settings button
|
|
6
|
-
* whose popover picks WHICH fields the text matches against (the fact text, its
|
|
7
|
-
* labels, or both). The page owns the query + field state; this is a view.
|
|
8
|
-
*/
|
|
9
|
-
import type { ReactNode } from 'react';
|
|
10
|
-
export type FactsSearchField = 'text' | 'labels';
|
|
11
|
-
export declare const FACTS_SEARCH_FIELD_OPTIONS: {
|
|
12
|
-
value: FactsSearchField;
|
|
13
|
-
label: string;
|
|
14
|
-
}[];
|
|
15
|
-
export interface FactsFilterInputLabels {
|
|
16
|
-
placeholder: string;
|
|
17
|
-
clear: string;
|
|
18
|
-
chooseFields: string;
|
|
19
|
-
fieldsHeading: string;
|
|
20
|
-
/** Display name per searchable field. */
|
|
21
|
-
fieldNames: Record<FactsSearchField, string>;
|
|
22
|
-
}
|
|
23
|
-
export declare const DEFAULT_FACTS_FILTER_INPUT_LABELS: FactsFilterInputLabels;
|
|
24
|
-
export interface FactsFilterInputTestIds {
|
|
25
|
-
root: string;
|
|
26
|
-
quick: string;
|
|
27
|
-
input: string;
|
|
28
|
-
fieldsButton: string;
|
|
29
|
-
field: (field: FactsSearchField) => string;
|
|
30
|
-
}
|
|
31
|
-
export interface FactsFilterInputProps {
|
|
32
|
-
value: string;
|
|
33
|
-
onChange: (q: string) => void;
|
|
34
|
-
fields: FactsSearchField[];
|
|
35
|
-
onFieldsChange: (fields: FactsSearchField[]) => void;
|
|
36
|
-
/**
|
|
37
|
-
* The quick-filter dropdown trigger, embedded inside the input on the left
|
|
38
|
-
* (mirroring the Files search box). When absent, a static funnel icon shows.
|
|
39
|
-
*/
|
|
40
|
-
filter?: ReactNode;
|
|
41
|
-
/** Width classes for the box (default `w-44`). */
|
|
42
|
-
className?: string;
|
|
43
|
-
labels?: Partial<FactsFilterInputLabels>;
|
|
44
|
-
testIds?: Partial<FactsFilterInputTestIds>;
|
|
45
|
-
}
|
|
46
|
-
export declare function FactsFilterInput({ value, onChange, fields, onFieldsChange, filter, className, labels, testIds, }: FactsFilterInputProps): import("react").JSX.Element;
|
|
1
|
+
/** Compatibility exports for existing blocks consumers. */
|
|
2
|
+
export { FilterInput as FactsFilterInput, DEFAULT_FILTER_FIELDS as FACTS_SEARCH_FIELD_OPTIONS, DEFAULT_FILTER_INPUT_LABELS as DEFAULT_FACTS_FILTER_INPUT_LABELS, type FilterField as FactsSearchField, type FilterInputProps as FactsFilterInputProps, type FilterInputLabels as FactsFilterInputLabels, type FilterInputTestIds as FactsFilterInputTestIds, } from '../shell/FilterInput';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
-
import { type
|
|
2
|
+
import { type FilterInputLabels, type FilterInputTestIds, type FilterField } from '../shell/FilterInput';
|
|
3
3
|
import { type FactsViewMode, type FactsViewToggleLabels } from './FactsViewToggle';
|
|
4
4
|
export interface FactsToolbarLabels {
|
|
5
5
|
tags: string;
|
|
@@ -20,8 +20,8 @@ export interface FactsToolbarProps {
|
|
|
20
20
|
hasActiveFilters: boolean;
|
|
21
21
|
filterText: string;
|
|
22
22
|
onFilterTextChange: (text: string) => void;
|
|
23
|
-
searchFields:
|
|
24
|
-
onSearchFieldsChange: (fields:
|
|
23
|
+
searchFields: FilterField[];
|
|
24
|
+
onSearchFieldsChange: (fields: FilterField[]) => void;
|
|
25
25
|
/** The quick-filter dropdown, embedded inside the filter box. */
|
|
26
26
|
quickFilter?: ReactNode;
|
|
27
27
|
/** Open the Labels panel. Omit it to hide the Tags button. */
|
|
@@ -40,8 +40,8 @@ export interface FactsToolbarProps {
|
|
|
40
40
|
labels?: Partial<FactsToolbarLabels>;
|
|
41
41
|
testIds?: Partial<FactsToolbarTestIds>;
|
|
42
42
|
/** Overrides for the embedded filter box. */
|
|
43
|
-
filterLabels?: Partial<
|
|
44
|
-
filterTestIds?: Partial<
|
|
43
|
+
filterLabels?: Partial<FilterInputLabels>;
|
|
44
|
+
filterTestIds?: Partial<FilterInputTestIds>;
|
|
45
45
|
/** Overrides for the embedded view toggle. */
|
|
46
46
|
viewToggleLabels?: Partial<FactsViewToggleLabels>;
|
|
47
47
|
viewToggleTestIdPrefix?: string;
|
package/dist/facts/index.cjs
CHANGED
|
@@ -4,11 +4,12 @@
|
|
|
4
4
|
var chunkZPERNIMP_cjs = require('../chunk-ZPERNIMP.cjs');
|
|
5
5
|
var chunkVPPX5XUF_cjs = require('../chunk-VPPX5XUF.cjs');
|
|
6
6
|
var chunkOUW6G4O2_cjs = require('../chunk-OUW6G4O2.cjs');
|
|
7
|
-
var
|
|
8
|
-
var
|
|
7
|
+
var chunkIA7RTPT3_cjs = require('../chunk-IA7RTPT3.cjs');
|
|
8
|
+
var chunkQ6LF7N3A_cjs = require('../chunk-Q6LF7N3A.cjs');
|
|
9
|
+
var chunk7RGLTF76_cjs = require('../chunk-7RGLTF76.cjs');
|
|
10
|
+
require('../chunk-C54XEN5T.cjs');
|
|
9
11
|
require('../chunk-FX3K6LNZ.cjs');
|
|
10
12
|
var chunkPPCATBOY_cjs = require('../chunk-PPCATBOY.cjs');
|
|
11
|
-
require('../chunk-C54XEN5T.cjs');
|
|
12
13
|
var chunkKDG6FER6_cjs = require('../chunk-KDG6FER6.cjs');
|
|
13
14
|
var chunkMHVNT4J3_cjs = require('../chunk-MHVNT4J3.cjs');
|
|
14
15
|
var lucideReact = require('lucide-react');
|
|
@@ -512,7 +513,7 @@ function FactsTable({
|
|
|
512
513
|
]
|
|
513
514
|
);
|
|
514
515
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
515
|
-
|
|
516
|
+
chunkIA7RTPT3_cjs.GridView,
|
|
516
517
|
{
|
|
517
518
|
testId,
|
|
518
519
|
items: facts,
|
|
@@ -1322,111 +1323,6 @@ function FactsViewToggle({
|
|
|
1322
1323
|
}
|
|
1323
1324
|
);
|
|
1324
1325
|
}
|
|
1325
|
-
var FACTS_SEARCH_FIELD_OPTIONS = [
|
|
1326
|
-
{ value: "text", label: "Fact" },
|
|
1327
|
-
{ value: "labels", label: "Labels" }
|
|
1328
|
-
];
|
|
1329
|
-
var DEFAULT_FACTS_FILTER_INPUT_LABELS = {
|
|
1330
|
-
placeholder: "Filter...",
|
|
1331
|
-
clear: "Clear filter",
|
|
1332
|
-
chooseFields: "Choose fields to filter",
|
|
1333
|
-
fieldsHeading: "Filter fields",
|
|
1334
|
-
fieldNames: { text: "Fact", labels: "Labels" }
|
|
1335
|
-
};
|
|
1336
|
-
function FactsFilterInput({
|
|
1337
|
-
value,
|
|
1338
|
-
onChange,
|
|
1339
|
-
fields,
|
|
1340
|
-
onFieldsChange,
|
|
1341
|
-
filter,
|
|
1342
|
-
className,
|
|
1343
|
-
labels,
|
|
1344
|
-
testIds
|
|
1345
|
-
}) {
|
|
1346
|
-
const l = { ...DEFAULT_FACTS_FILTER_INPUT_LABELS, ...labels };
|
|
1347
|
-
const toggleField = (field) => onFieldsChange(fields.includes(field) ? fields.filter((f) => f !== field) : [...fields, field]);
|
|
1348
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1349
|
-
"div",
|
|
1350
|
-
{
|
|
1351
|
-
className: ui.cn("flex min-w-0 items-center", className ?? "w-44 pointer-coarse:w-56"),
|
|
1352
|
-
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.root, { testId: "facts-filter" }),
|
|
1353
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex-1 min-w-0", children: [
|
|
1354
|
-
filter ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1355
|
-
"div",
|
|
1356
|
-
{
|
|
1357
|
-
className: "absolute left-1 top-1/2 z-10 -translate-y-1/2",
|
|
1358
|
-
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.quick, { testId: "facts-filter-quick" }),
|
|
1359
|
-
children: filter
|
|
1360
|
-
}
|
|
1361
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Filter, { className: "pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground" }),
|
|
1362
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1363
|
-
ui.Input,
|
|
1364
|
-
{
|
|
1365
|
-
value,
|
|
1366
|
-
onChange: (e) => onChange(e.target.value),
|
|
1367
|
-
placeholder: l.placeholder,
|
|
1368
|
-
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.input, { testId: "facts-filter-input" }),
|
|
1369
|
-
className: ui.cn(
|
|
1370
|
-
"h-7 bg-muted pr-12 text-sm shadow-none focus-visible:bg-muted focus-visible:ring-0 pointer-coarse:h-11 pointer-coarse:pr-24",
|
|
1371
|
-
filter ? "pl-11" : "pl-7"
|
|
1372
|
-
)
|
|
1373
|
-
}
|
|
1374
|
-
),
|
|
1375
|
-
value && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1376
|
-
"button",
|
|
1377
|
-
{
|
|
1378
|
-
type: "button",
|
|
1379
|
-
onClick: () => onChange(""),
|
|
1380
|
-
"aria-label": l.clear,
|
|
1381
|
-
className: "absolute right-7 top-1/2 z-10 -translate-y-1/2 text-muted-foreground hover:text-foreground pointer-coarse:right-11 pointer-coarse:flex pointer-coarse:size-11 pointer-coarse:items-center pointer-coarse:justify-center",
|
|
1382
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "size-3" })
|
|
1383
|
-
}
|
|
1384
|
-
),
|
|
1385
|
-
/* @__PURE__ */ jsxRuntime.jsxs(ui.Popover, { children: [
|
|
1386
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1387
|
-
"button",
|
|
1388
|
-
{
|
|
1389
|
-
type: "button",
|
|
1390
|
-
"aria-label": l.chooseFields,
|
|
1391
|
-
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.fieldsButton, {
|
|
1392
|
-
testId: "facts-filter-fields-button"
|
|
1393
|
-
}),
|
|
1394
|
-
className: "absolute right-1.5 top-1/2 z-10 -translate-y-1/2 !h-5 !w-5 !p-0 text-muted-foreground/60 transition-colors hover:text-foreground pointer-coarse:right-0 pointer-coarse:!flex pointer-coarse:!h-11 pointer-coarse:!w-11 pointer-coarse:items-center pointer-coarse:justify-center",
|
|
1395
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.SlidersHorizontal, { className: "size-3.5" })
|
|
1396
|
-
}
|
|
1397
|
-
) }),
|
|
1398
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.PopoverContent, { className: "w-44 p-0", align: "end", sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Command, { shouldFilter: false, children: /* @__PURE__ */ jsxRuntime.jsx(ui.CommandList, { children: /* @__PURE__ */ jsxRuntime.jsx(ui.CommandGroup, { heading: l.fieldsHeading, children: FACTS_SEARCH_FIELD_OPTIONS.map((option) => {
|
|
1399
|
-
const isSelected = fields.includes(option.value);
|
|
1400
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1401
|
-
ui.CommandItem,
|
|
1402
|
-
{
|
|
1403
|
-
onSelect: () => toggleField(option.value),
|
|
1404
|
-
className: "cursor-pointer text-sm",
|
|
1405
|
-
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.field?.(option.value), {
|
|
1406
|
-
testId: `facts-filter-field-${option.value}`
|
|
1407
|
-
}),
|
|
1408
|
-
children: [
|
|
1409
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1410
|
-
"div",
|
|
1411
|
-
{
|
|
1412
|
-
className: ui.cn(
|
|
1413
|
-
"mr-2 flex size-3.5 items-center justify-center rounded-sm border border-primary",
|
|
1414
|
-
isSelected ? "bg-primary text-primary-foreground" : "opacity-50 [&_svg]:invisible"
|
|
1415
|
-
),
|
|
1416
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "size-3" })
|
|
1417
|
-
}
|
|
1418
|
-
),
|
|
1419
|
-
l.fieldNames[option.value]
|
|
1420
|
-
]
|
|
1421
|
-
},
|
|
1422
|
-
option.value
|
|
1423
|
-
);
|
|
1424
|
-
}) }) }) }) })
|
|
1425
|
-
] })
|
|
1426
|
-
] })
|
|
1427
|
-
}
|
|
1428
|
-
);
|
|
1429
|
-
}
|
|
1430
1326
|
var DEFAULT_FACTS_FIELDS_BUTTON_LABELS = {
|
|
1431
1327
|
fields: "Fields",
|
|
1432
1328
|
defaultView: "Default view",
|
|
@@ -1623,7 +1519,7 @@ function FactsEmptyState({ onUseExample, labels, testIds }) {
|
|
|
1623
1519
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: l.intro }),
|
|
1624
1520
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-7 grid gap-3 text-left @xl:grid-cols-3", children: l.kinds.map(({ label, desc }, i) => {
|
|
1625
1521
|
const KindIcon = KIND_ICONS[i % KIND_ICONS.length];
|
|
1626
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg bg-
|
|
1522
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-lg border border-border bg-card p-3 shadow-xs", children: [
|
|
1627
1523
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5 text-sm font-medium text-foreground", children: [
|
|
1628
1524
|
/* @__PURE__ */ jsxRuntime.jsx(KindIcon, { className: "size-4 text-primary" }),
|
|
1629
1525
|
label
|
|
@@ -1631,13 +1527,13 @@ function FactsEmptyState({ onUseExample, labels, testIds }) {
|
|
|
1631
1527
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs leading-snug text-muted-foreground", children: desc })
|
|
1632
1528
|
] }, label);
|
|
1633
1529
|
}) }),
|
|
1634
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-10 text-
|
|
1530
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-10 text-sm font-medium text-muted-foreground", children: l.tryAdding }),
|
|
1635
1531
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4 flex flex-wrap justify-center gap-2.5", children: l.examples.map((fact) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1636
1532
|
"button",
|
|
1637
1533
|
{
|
|
1638
1534
|
type: "button",
|
|
1639
1535
|
onClick: () => onUseExample(fact),
|
|
1640
|
-
className: "group inline-flex items-center gap-1.5 rounded-
|
|
1536
|
+
className: "group inline-flex items-center gap-1.5 rounded-md border border-border bg-card px-3.5 py-2 text-sm text-foreground transition-colors hover:border-ring/50 hover:bg-accent/40 pointer-coarse:min-h-11",
|
|
1641
1537
|
"data-testid": chunkMHVNT4J3_cjs.testIdOr(testIds?.example, { testId: "facts-page-example" }),
|
|
1642
1538
|
children: [
|
|
1643
1539
|
fact,
|
|
@@ -1869,7 +1765,7 @@ function FactsBulkBar({
|
|
|
1869
1765
|
const l = { ...DEFAULT_FACTS_BULK_BAR_LABELS, ...labels };
|
|
1870
1766
|
const none = count === 0;
|
|
1871
1767
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pb-3", "data-slot": "facts-bulk-bar", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1872
|
-
|
|
1768
|
+
chunkIA7RTPT3_cjs.SelectionBar,
|
|
1873
1769
|
{
|
|
1874
1770
|
count,
|
|
1875
1771
|
onClear,
|
|
@@ -1887,7 +1783,7 @@ function FactsBulkBar({
|
|
|
1887
1783
|
) : null,
|
|
1888
1784
|
children: (isCompact) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1889
1785
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1890
|
-
|
|
1786
|
+
chunkIA7RTPT3_cjs.SelectionBarAction,
|
|
1891
1787
|
{
|
|
1892
1788
|
icon: allSelectedPinned ? lucideReact.PinOff : lucideReact.Pin,
|
|
1893
1789
|
label: allSelectedPinned ? l.unpin : l.pin,
|
|
@@ -1900,7 +1796,7 @@ function FactsBulkBar({
|
|
|
1900
1796
|
}
|
|
1901
1797
|
),
|
|
1902
1798
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1903
|
-
|
|
1799
|
+
chunkIA7RTPT3_cjs.SelectionBarAction,
|
|
1904
1800
|
{
|
|
1905
1801
|
icon: lucideReact.Tags,
|
|
1906
1802
|
label: l.label,
|
|
@@ -2017,13 +1913,12 @@ function FactsToolbar({
|
|
|
2017
1913
|
countPlacement: "leading",
|
|
2018
1914
|
hasActiveFilters,
|
|
2019
1915
|
testId: chunkMHVNT4J3_cjs.testIdOr(testIds?.tab, { testId: "facts-tab" }),
|
|
2020
|
-
|
|
2021
|
-
tabClassName: "!bg-transparent hover:!bg-transparent !border-transparent !rounded-none !mb-0 !pl-0 before:!hidden after:!hidden shadow-none!"
|
|
1916
|
+
presentation: "count"
|
|
2022
1917
|
}
|
|
2023
1918
|
];
|
|
2024
1919
|
const filterControls = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: isNarrow ? "flex w-full items-center gap-1.5" : "flex items-center gap-1.5", children: [
|
|
2025
1920
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2026
|
-
|
|
1921
|
+
chunkQ6LF7N3A_cjs.FilterInput,
|
|
2027
1922
|
{
|
|
2028
1923
|
value: filterText,
|
|
2029
1924
|
onChange: onFilterTextChange,
|
|
@@ -2052,14 +1947,13 @@ function FactsToolbar({
|
|
|
2052
1947
|
] });
|
|
2053
1948
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: headerRef, className: "sticky top-0 z-10 bg-background", "data-slot": "facts-toolbar", children: [
|
|
2054
1949
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2055
|
-
|
|
1950
|
+
chunk7RGLTF76_cjs.TabHeader,
|
|
2056
1951
|
{
|
|
2057
1952
|
tabs,
|
|
2058
|
-
className: "pr-3",
|
|
2059
1953
|
activeTabId: "notes",
|
|
2060
1954
|
onTabChange: () => {
|
|
2061
1955
|
},
|
|
2062
|
-
|
|
1956
|
+
firstTabContent: isNarrow ? null : filterControls,
|
|
2063
1957
|
centerContent: isNarrow ? null : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2064
1958
|
FactsViewToggle,
|
|
2065
1959
|
{
|
|
@@ -2350,10 +2244,21 @@ function FactSearchResult({
|
|
|
2350
2244
|
] });
|
|
2351
2245
|
}
|
|
2352
2246
|
|
|
2247
|
+
Object.defineProperty(exports, "DEFAULT_FACTS_FILTER_INPUT_LABELS", {
|
|
2248
|
+
enumerable: true,
|
|
2249
|
+
get: function () { return chunkQ6LF7N3A_cjs.DEFAULT_FILTER_INPUT_LABELS; }
|
|
2250
|
+
});
|
|
2251
|
+
Object.defineProperty(exports, "FACTS_SEARCH_FIELD_OPTIONS", {
|
|
2252
|
+
enumerable: true,
|
|
2253
|
+
get: function () { return chunkQ6LF7N3A_cjs.DEFAULT_FILTER_FIELDS; }
|
|
2254
|
+
});
|
|
2255
|
+
Object.defineProperty(exports, "FactsFilterInput", {
|
|
2256
|
+
enumerable: true,
|
|
2257
|
+
get: function () { return chunkQ6LF7N3A_cjs.FilterInput; }
|
|
2258
|
+
});
|
|
2353
2259
|
exports.DEFAULT_FACTS_BULK_BAR_LABELS = DEFAULT_FACTS_BULK_BAR_LABELS;
|
|
2354
2260
|
exports.DEFAULT_FACTS_EMPTY_STATE_LABELS = DEFAULT_FACTS_EMPTY_STATE_LABELS;
|
|
2355
2261
|
exports.DEFAULT_FACTS_FIELDS_BUTTON_LABELS = DEFAULT_FACTS_FIELDS_BUTTON_LABELS;
|
|
2356
|
-
exports.DEFAULT_FACTS_FILTER_INPUT_LABELS = DEFAULT_FACTS_FILTER_INPUT_LABELS;
|
|
2357
2262
|
exports.DEFAULT_FACTS_TOOLBAR_LABELS = DEFAULT_FACTS_TOOLBAR_LABELS;
|
|
2358
2263
|
exports.DEFAULT_FACTS_VIEW_TOGGLE_LABELS = DEFAULT_FACTS_VIEW_TOGGLE_LABELS;
|
|
2359
2264
|
exports.DEFAULT_FACT_COLUMN_LABELS = DEFAULT_FACT_COLUMN_LABELS;
|
|
@@ -2369,7 +2274,6 @@ exports.DEFAULT_FACT_SOURCES_ROW_LABELS = DEFAULT_FACT_SOURCES_ROW_LABELS;
|
|
|
2369
2274
|
exports.DEFAULT_FACT_SOURCE_GROUP_LABELS = DEFAULT_FACT_SOURCE_GROUP_LABELS;
|
|
2370
2275
|
exports.DEFAULT_FACT_TIMELINE_LABELS = DEFAULT_FACT_TIMELINE_LABELS;
|
|
2371
2276
|
exports.EMPTY_FACT_DATE_FIELDS = EMPTY_FACT_DATE_FIELDS;
|
|
2372
|
-
exports.FACTS_SEARCH_FIELD_OPTIONS = FACTS_SEARCH_FIELD_OPTIONS;
|
|
2373
2277
|
exports.FactComposer = FactComposer;
|
|
2374
2278
|
exports.FactDateInput = FactDateInput;
|
|
2375
2279
|
exports.FactFieldRow = FactFieldRow;
|
|
@@ -2388,7 +2292,6 @@ exports.FactsBulkBar = FactsBulkBar;
|
|
|
2388
2292
|
exports.FactsCalendar = FactsCalendar;
|
|
2389
2293
|
exports.FactsEmptyState = FactsEmptyState;
|
|
2390
2294
|
exports.FactsFieldsButton = FactsFieldsButton;
|
|
2391
|
-
exports.FactsFilterInput = FactsFilterInput;
|
|
2392
2295
|
exports.FactsGanttPane = FactsGanttPane;
|
|
2393
2296
|
exports.FactsLoadError = FactsLoadError;
|
|
2394
2297
|
exports.FactsLoading = FactsLoading;
|