@arbidocs/react 0.5.110 → 0.5.112
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/PdfViewerImpl-QUSDLNNM.cjs +380 -0
- package/dist/PdfViewerImpl-QUSDLNNM.cjs.map +1 -0
- package/dist/{PdfViewer.d-bQH9yxFg.d.cts → PdfViewerImpl.d-B28hLEuj.d.ts} +8 -1
- package/dist/account/client.js +96 -0
- package/dist/account/client.js.map +7 -0
- package/dist/account/delete.js +70 -0
- package/dist/account/delete.js.map +7 -0
- package/dist/account/didit.js +34 -0
- package/dist/account/didit.js.map +7 -0
- package/dist/account/dismissed-tips.js +33 -0
- package/dist/account/dismissed-tips.js.map +7 -0
- package/dist/account/email.js +84 -0
- package/dist/account/email.js.map +7 -0
- package/dist/account/entitlements.js +47 -0
- package/dist/account/entitlements.js.map +7 -0
- package/dist/account/identity.js +270 -0
- package/dist/account/identity.js.map +7 -0
- package/dist/account/index.js +93 -0
- package/dist/account/index.js.map +7 -0
- package/dist/account/notifications.js +59 -0
- package/dist/account/notifications.js.map +7 -0
- package/dist/account/password.js +103 -0
- package/dist/account/password.js.map +7 -0
- package/dist/account/profile.js +116 -0
- package/dist/account/profile.js.map +7 -0
- package/dist/account/recovery.js +13 -0
- package/dist/account/recovery.js.map +7 -0
- package/dist/account/relevance.js +82 -0
- package/dist/account/relevance.js.map +7 -0
- package/dist/account/sessions.js +37 -0
- package/dist/account/sessions.js.map +7 -0
- package/dist/account/settings.js +39 -0
- package/dist/account/settings.js.map +7 -0
- package/dist/account/table-views.js +16 -0
- package/dist/account/table-views.js.map +7 -0
- package/dist/ai/AiAnswer.js +83 -0
- package/dist/ai/AiAnswer.js.map +7 -0
- package/dist/ai/AiMarkdown.js +40 -0
- package/dist/ai/AiMarkdown.js.map +7 -0
- package/dist/ai/ArtifactCanvas.js +193 -0
- package/dist/ai/ArtifactCanvas.js.map +7 -0
- package/dist/ai/CitationRenderer.js +413 -0
- package/dist/ai/CitationRenderer.js.map +7 -0
- package/dist/{chunk-WL2Y2T47.js → ai/MarkdownRenderer.js} +35 -101
- package/dist/ai/MarkdownRenderer.js.map +7 -0
- package/dist/ai/MessageArtifactCard.js +75 -0
- package/dist/ai/MessageArtifactCard.js.map +7 -0
- package/dist/ai/PassageCard.js +79 -0
- package/dist/ai/PassageCard.js.map +7 -0
- package/dist/ai/engine.js +110 -0
- package/dist/ai/engine.js.map +7 -0
- package/dist/ai/index.js +63 -0
- package/dist/ai/index.js.map +7 -0
- package/dist/ai/markdown-base-components.js +37 -0
- package/dist/ai/markdown-base-components.js.map +7 -0
- package/dist/ai/markdown-streaming-context.js +6 -0
- package/dist/ai/markdown-streaming-context.js.map +7 -0
- package/dist/{chunk-VSCU7K4V.js → ai/normalize-citations.js} +12 -19
- package/dist/ai/normalize-citations.js.map +7 -0
- package/dist/ai/redline.js +41 -0
- package/dist/ai/redline.js.map +7 -0
- package/dist/ai/split-markdown-blocks.js +40 -0
- package/dist/ai/split-markdown-blocks.js.map +7 -0
- package/dist/{chunk-UW2SGTI5.js → ai/stored-markdown.js} +41 -93
- package/dist/ai/stored-markdown.js.map +7 -0
- package/dist/annotations/AnnotationPageOverlay.js +807 -0
- package/dist/annotations/AnnotationPageOverlay.js.map +7 -0
- package/dist/annotations/AnnotationToolbar.js +398 -0
- package/dist/annotations/AnnotationToolbar.js.map +7 -0
- package/dist/annotations/FreezeDialog.js +170 -0
- package/dist/annotations/FreezeDialog.js.map +7 -0
- package/dist/annotations/ProductionDialog.js +354 -0
- package/dist/annotations/ProductionDialog.js.map +7 -0
- package/dist/annotations/controller.js +49 -0
- package/dist/annotations/controller.js.map +7 -0
- package/dist/annotations/freeze/browser.js +21 -0
- package/dist/annotations/freeze/browser.js.map +7 -0
- package/dist/annotations/freeze/bundle.js +201 -0
- package/dist/annotations/freeze/bundle.js.map +7 -0
- package/dist/annotations/freeze/coords.js +37 -0
- package/dist/annotations/freeze/coords.js.map +7 -0
- package/dist/annotations/freeze/freeze.js +261 -0
- package/dist/annotations/freeze/freeze.js.map +7 -0
- package/dist/annotations/freeze/hash.js +28 -0
- package/dist/annotations/freeze/hash.js.map +7 -0
- package/dist/annotations/freeze/index-page.js +78 -0
- package/dist/annotations/freeze/index-page.js.map +7 -0
- package/dist/annotations/freeze/index.d.ts +1 -1
- package/dist/annotations/freeze/index.js +28 -22
- package/dist/annotations/freeze/index.js.map +7 -1
- package/dist/annotations/freeze/raster.js +208 -0
- package/dist/annotations/freeze/raster.js.map +7 -0
- package/dist/annotations/freeze/stamp.js +117 -0
- package/dist/annotations/freeze/stamp.js.map +7 -0
- package/dist/annotations/freeze/types.js +14 -0
- package/dist/annotations/freeze/types.js.map +7 -0
- package/dist/annotations/freeze/vector.js +283 -0
- package/dist/annotations/freeze/vector.js.map +7 -0
- package/dist/annotations/geometry.js +81 -0
- package/dist/annotations/geometry.js.map +7 -0
- package/dist/annotations/index.js +125 -6
- package/dist/annotations/index.js.map +7 -1
- package/dist/annotations/merge.js +53 -0
- package/dist/annotations/merge.js.map +7 -0
- package/dist/{chunk-T3USOSVN.js → annotations/model.js} +23 -16
- package/dist/annotations/model.js.map +7 -0
- package/dist/annotations/overlay-geometry.js +41 -0
- package/dist/annotations/overlay-geometry.js.map +7 -0
- package/dist/annotations/redaction-log.js +33 -0
- package/dist/annotations/redaction-log.js.map +7 -0
- package/dist/annotations/selection-marks.js +122 -0
- package/dist/annotations/selection-marks.js.map +7 -0
- package/dist/annotations/state.js +140 -0
- package/dist/annotations/state.js.map +7 -0
- package/dist/annotations/store.js +49 -0
- package/dist/annotations/store.js.map +7 -0
- package/dist/annotations/useAnnotationLayer.js +306 -0
- package/dist/annotations/useAnnotationLayer.js.map +7 -0
- package/dist/annotations/useAnnotationShortcuts.js +31 -0
- package/dist/annotations/useAnnotationShortcuts.js.map +7 -0
- package/dist/annotations/useTextSelectionMarks.js +100 -0
- package/dist/annotations/useTextSelectionMarks.js.map +7 -0
- package/dist/artifacts/artifact-kind.js +19 -0
- package/dist/artifacts/artifact-kind.js.map +7 -0
- package/dist/artifacts/index.cjs +13 -13
- package/dist/artifacts/index.js +89 -571
- package/dist/artifacts/index.js.map +7 -1
- package/dist/{chunk-WUTL62MC.js → artifacts/normalize-markdown.js} +12 -14
- package/dist/artifacts/normalize-markdown.js.map +7 -0
- package/dist/artifacts/redline-core.js +12 -3
- package/dist/artifacts/redline-core.js.map +7 -1
- package/dist/{chunk-74N436VK.js → artifacts/redline-diff.js} +10 -9
- package/dist/artifacts/redline-diff.js.map +7 -0
- package/dist/artifacts/redline-engine.js +14 -0
- package/dist/artifacts/redline-engine.js.map +7 -0
- package/dist/artifacts/renderArtifactMarkdown.js +9 -0
- package/dist/artifacts/renderArtifactMarkdown.js.map +7 -0
- package/dist/artifacts/useArtifactEditSession.js +183 -0
- package/dist/artifacts/useArtifactEditSession.js.map +7 -0
- package/dist/artifacts/useArtifactSession.js +173 -0
- package/dist/artifacts/useArtifactSession.js.map +7 -0
- package/dist/artifacts/useArtifactSource.js +16 -0
- package/dist/artifacts/useArtifactSource.js.map +7 -0
- package/dist/artifacts/useArtifactText.js +78 -0
- package/dist/artifacts/useArtifactText.js.map +7 -0
- package/dist/artifacts/useRedline.js +65 -0
- package/dist/artifacts/useRedline.js.map +7 -0
- package/dist/artifacts/useStreamedArtifact.js +74 -0
- package/dist/artifacts/useStreamedArtifact.js.map +7 -0
- package/dist/artifacts/versions.js +68 -0
- package/dist/artifacts/versions.js.map +7 -0
- package/dist/billing.js +200 -0
- package/dist/billing.js.map +7 -0
- package/dist/boot-timeout.js +19 -0
- package/dist/boot-timeout.js.map +7 -0
- package/dist/calendar/accounts.js +213 -0
- package/dist/calendar/accounts.js.map +7 -0
- package/dist/calendar/hooks.js +409 -0
- package/dist/calendar/hooks.js.map +7 -0
- package/dist/calendar/index.js +31 -0
- package/dist/calendar/index.js.map +7 -0
- package/dist/calendar/keys.js +5 -0
- package/dist/calendar/keys.js.map +7 -0
- package/dist/calendar/offline/outbox.js +231 -0
- package/dist/calendar/offline/outbox.js.map +7 -0
- package/dist/calendar/offline/runtime.js +109 -0
- package/dist/calendar/offline/runtime.js.map +7 -0
- package/dist/calendar/offline/support.js +41 -0
- package/dist/calendar/offline/support.js.map +7 -0
- package/dist/calendar/support.js +34 -0
- package/dist/calendar/support.js.map +7 -0
- package/dist/calls/actions.js +226 -0
- package/dist/calls/actions.js.map +7 -0
- package/dist/calls/events.js +138 -0
- package/dist/calls/events.js.map +7 -0
- package/dist/calls/gate.js +19 -0
- package/dist/calls/gate.js.map +7 -0
- package/dist/calls/hooks.js +115 -0
- package/dist/calls/hooks.js.map +7 -0
- package/dist/calls/in-call-chat.js +132 -0
- package/dist/calls/in-call-chat.js.map +7 -0
- package/dist/calls/index.js +24 -0
- package/dist/calls/index.js.map +7 -0
- package/dist/calls/keys.js +17 -0
- package/dist/calls/keys.js.map +7 -0
- package/dist/calls/livekit/index.cjs +48 -48
- package/dist/calls/livekit/index.js +6 -958
- package/dist/calls/livekit/index.js.map +7 -1
- package/dist/calls/livekit/room.js +98 -0
- package/dist/calls/livekit/room.js.map +7 -0
- package/dist/calls/livekit/useCallRecorder.js +219 -0
- package/dist/calls/livekit/useCallRecorder.js.map +7 -0
- package/dist/calls/livekit/useCallTranscriber.js +309 -0
- package/dist/calls/livekit/useCallTranscriber.js.map +7 -0
- package/dist/calls/livekit/useHostMuteNotice.js +29 -0
- package/dist/calls/livekit/useHostMuteNotice.js.map +7 -0
- package/dist/calls/livekit/useInCallChat.js +161 -0
- package/dist/calls/livekit/useInCallChat.js.map +7 -0
- package/dist/calls/livekit/useWebinar.js +239 -0
- package/dist/calls/livekit/useWebinar.js.map +7 -0
- package/dist/calls/meeting-chat.js +149 -0
- package/dist/calls/meeting-chat.js.map +7 -0
- package/dist/calls/moderation.js +50 -0
- package/dist/calls/moderation.js.map +7 -0
- package/dist/calls/open-meeting-chat.js +29 -0
- package/dist/calls/open-meeting-chat.js.map +7 -0
- package/dist/calls/read-only.js +24 -0
- package/dist/calls/read-only.js.map +7 -0
- package/dist/calls/recording-media.js +218 -0
- package/dist/calls/recording-media.js.map +7 -0
- package/dist/calls/recording-playback.js +260 -0
- package/dist/calls/recording-playback.js.map +7 -0
- package/dist/calls/recording.js +268 -0
- package/dist/calls/recording.js.map +7 -0
- package/dist/calls/save-to-thread.js +80 -0
- package/dist/calls/save-to-thread.js.map +7 -0
- package/dist/calls/session.js +134 -0
- package/dist/calls/session.js.map +7 -0
- package/dist/calls/transcript-format.js +147 -0
- package/dist/calls/transcript-format.js.map +7 -0
- package/dist/calls/transcription.js +101 -0
- package/dist/calls/transcription.js.map +7 -0
- package/dist/calls/webinar.js +71 -0
- package/dist/calls/webinar.js.map +7 -0
- package/dist/charge-watch.js +71 -0
- package/dist/charge-watch.js.map +7 -0
- package/dist/chat/ChatBubble.js +146 -0
- package/dist/chat/ChatBubble.js.map +7 -0
- package/dist/chat/ConversationScope.js +30 -0
- package/dist/chat/ConversationScope.js.map +7 -0
- package/dist/chat/active-config.js +20 -0
- package/dist/chat/active-config.js.map +7 -0
- package/dist/chat/agent-chat-owner.js +25 -0
- package/dist/chat/agent-chat-owner.js.map +7 -0
- package/dist/chat/chat-artifacts.js +64 -0
- package/dist/chat/chat-artifacts.js.map +7 -0
- package/dist/chat/citations.js +32 -0
- package/dist/chat/citations.js.map +7 -0
- package/dist/chat/config-model.js +10 -0
- package/dist/chat/config-model.js.map +7 -0
- package/dist/chat/conversation-cache.js +676 -0
- package/dist/chat/conversation-cache.js.map +7 -0
- package/dist/chat/conversation-events.js +57 -0
- package/dist/chat/conversation-events.js.map +7 -0
- package/dist/chat/conversation-mentions.js +58 -0
- package/dist/chat/conversation-mentions.js.map +7 -0
- package/dist/chat/conversation-workspace.js +58 -0
- package/dist/chat/conversation-workspace.js.map +7 -0
- package/dist/chat/mentions.js +116 -0
- package/dist/chat/mentions.js.map +7 -0
- package/dist/chat/open-document.js +106 -0
- package/dist/chat/open-document.js.map +7 -0
- package/dist/chat/orphaned.js +44 -0
- package/dist/chat/orphaned.js.map +7 -0
- package/dist/chat/pendingFirstTurn.js +30 -0
- package/dist/chat/pendingFirstTurn.js.map +7 -0
- package/dist/chat/reply-target.js +12 -0
- package/dist/chat/reply-target.js.map +7 -0
- package/dist/chat/run-finished.js +28 -0
- package/dist/chat/run-finished.js.map +7 -0
- package/dist/chat/run-state.js +91 -0
- package/dist/chat/run-state.js.map +7 -0
- package/dist/chat/stream-handlers.js +419 -0
- package/dist/chat/stream-handlers.js.map +7 -0
- package/dist/chat/thread-binding.js +76 -0
- package/dist/chat/thread-binding.js.map +7 -0
- package/dist/chat/thread-document.js +53 -0
- package/dist/chat/thread-document.js.map +7 -0
- package/dist/chat/turn-control.js +79 -0
- package/dist/chat/turn-control.js.map +7 -0
- package/dist/chat/useAgentRunControl.js +36 -0
- package/dist/chat/useAgentRunControl.js.map +7 -0
- package/dist/chat/useAnswerAgentQuestion.js +19 -0
- package/dist/chat/useAnswerAgentQuestion.js.map +7 -0
- package/dist/chat/useAskAgain.js +32 -0
- package/dist/chat/useAskAgain.js.map +7 -0
- package/dist/chat/useAutoSendDraft.js +17 -0
- package/dist/chat/useAutoSendDraft.js.map +7 -0
- package/dist/chat/useBranchNavigation.js +97 -0
- package/dist/chat/useBranchNavigation.js.map +7 -0
- package/dist/chat/useConnectRunStream.js +169 -0
- package/dist/chat/useConnectRunStream.js.map +7 -0
- package/dist/chat/useConversation.js +431 -0
- package/dist/chat/useConversation.js.map +7 -0
- package/dist/chat/useConversationActions.js +662 -0
- package/dist/chat/useConversationActions.js.map +7 -0
- package/dist/chat/useConversationData.js +143 -0
- package/dist/chat/useConversationData.js.map +7 -0
- package/dist/chat/useConversationDocuments.js +41 -0
- package/dist/chat/useConversationDocuments.js.map +7 -0
- package/dist/chat/useConversationSettings.js +78 -0
- package/dist/chat/useConversationSettings.js.map +7 -0
- package/dist/chat/useConversationTurn.js +31 -0
- package/dist/chat/useConversationTurn.js.map +7 -0
- package/dist/chat/useConversationWorkspace.js +12 -0
- package/dist/chat/useConversationWorkspace.js.map +7 -0
- package/dist/chat/useDeleteMessage.js +15 -0
- package/dist/chat/useDeleteMessage.js.map +7 -0
- package/dist/chat/useDocumentAutoAdd.js +73 -0
- package/dist/chat/useDocumentAutoAdd.js.map +7 -0
- package/dist/chat/useMessageTimer.js +39 -0
- package/dist/chat/useMessageTimer.js.map +7 -0
- package/dist/chat/useThinkingContent.js +67 -0
- package/dist/chat/useThinkingContent.js.map +7 -0
- package/dist/chat/useThreadDocument.js +61 -0
- package/dist/chat/useThreadDocument.js.map +7 -0
- package/dist/chat/workflow-run-titles.js +50 -0
- package/dist/chat/workflow-run-titles.js.map +7 -0
- package/dist/{chunk-W2FATOTX.cjs → chunk-3JAEX57E.cjs} +4 -4
- package/dist/{chunk-W2FATOTX.cjs.map → chunk-3JAEX57E.cjs.map} +1 -1
- package/dist/{chunk-HD5H2PPP.cjs → chunk-5TRUFWKT.cjs} +66 -66
- package/dist/{chunk-HD5H2PPP.cjs.map → chunk-5TRUFWKT.cjs.map} +1 -1
- package/dist/{chunk-Z3W4XFWB.cjs → chunk-C72FSQUE.cjs} +3 -3
- package/dist/{chunk-Z3W4XFWB.cjs.map → chunk-C72FSQUE.cjs.map} +1 -1
- package/dist/{chunk-LBAG7KL7.cjs → chunk-FQVNZCTD.cjs} +3 -3
- package/dist/{chunk-LBAG7KL7.cjs.map → chunk-FQVNZCTD.cjs.map} +1 -1
- package/dist/{chunk-RVUGSM65.cjs → chunk-GKGAPU6T.cjs} +44 -44
- package/dist/{chunk-RVUGSM65.cjs.map → chunk-GKGAPU6T.cjs.map} +1 -1
- package/dist/{chunk-7LIMHY56.cjs → chunk-O32T7XRD.cjs} +3 -3
- package/dist/{chunk-7LIMHY56.cjs.map → chunk-O32T7XRD.cjs.map} +1 -1
- package/dist/chunk-PWGSIM3F.cjs +291 -0
- package/dist/chunk-PWGSIM3F.cjs.map +1 -0
- package/dist/chunk-QP3WQSAA.cjs +23 -0
- package/dist/chunk-QP3WQSAA.cjs.map +1 -0
- package/dist/chunk-T5FZICXN.cjs +50 -0
- package/dist/chunk-T5FZICXN.cjs.map +1 -0
- package/dist/{chunk-QF2BW6HZ.cjs → chunk-UDDJIUHJ.cjs} +38 -38
- package/dist/{chunk-QF2BW6HZ.cjs.map → chunk-UDDJIUHJ.cjs.map} +1 -1
- package/dist/{chunk-5HDKL6XB.cjs → chunk-YMB6XUR2.cjs} +57 -57
- package/dist/{chunk-5HDKL6XB.cjs.map → chunk-YMB6XUR2.cjs.map} +1 -1
- package/dist/config/config-hooks.js +209 -0
- package/dist/config/config-hooks.js.map +7 -0
- package/dist/connectivity.js +72 -0
- package/dist/connectivity.js.map +7 -0
- package/dist/connectors/hooks.js +263 -0
- package/dist/connectors/hooks.js.map +7 -0
- package/dist/connectors/index.js +28 -0
- package/dist/connectors/index.js.map +7 -0
- package/dist/contacts.js +100 -0
- package/dist/contacts.js.map +7 -0
- package/dist/conversation-list.js +65 -0
- package/dist/conversation-list.js.map +7 -0
- package/dist/databases.js +195 -0
- package/dist/databases.js.map +7 -0
- package/dist/datasets/aggregate.js +281 -0
- package/dist/datasets/aggregate.js.map +7 -0
- package/dist/datasets/index.js +122 -0
- package/dist/datasets/index.js.map +7 -0
- package/dist/datasets/members.js +27 -0
- package/dist/datasets/members.js.map +7 -0
- package/dist/datasets/panel.js +44 -0
- package/dist/datasets/panel.js.map +7 -0
- package/dist/datasets/registry.js +47 -0
- package/dist/datasets/registry.js.map +7 -0
- package/dist/datasets/rows-source.js +44 -0
- package/dist/datasets/rows-source.js.map +7 -0
- package/dist/datasets/sources/activity.js +83 -0
- package/dist/datasets/sources/activity.js.map +7 -0
- package/dist/datasets/sources/conversations.js +74 -0
- package/dist/datasets/sources/conversations.js.map +7 -0
- package/dist/datasets/sources/database.js +209 -0
- package/dist/datasets/sources/database.js.map +7 -0
- package/dist/datasets/sources/documents.js +93 -0
- package/dist/datasets/sources/documents.js.map +7 -0
- package/dist/datasets/sources/facts.js +56 -0
- package/dist/datasets/sources/facts.js.map +7 -0
- package/dist/datasets/sources/projects.js +117 -0
- package/dist/datasets/sources/projects.js.map +7 -0
- package/dist/datasets/sources/tags.js +67 -0
- package/dist/datasets/sources/tags.js.map +7 -0
- package/dist/datasets/sources/usage.js +268 -0
- package/dist/datasets/sources/usage.js.map +7 -0
- package/dist/datasets/sources/workflows.js +91 -0
- package/dist/datasets/sources/workflows.js.map +7 -0
- package/dist/datasets/sources/workspaces.js +67 -0
- package/dist/datasets/sources/workspaces.js.map +7 -0
- package/dist/datasets/store.js +194 -0
- package/dist/datasets/store.js.map +7 -0
- package/dist/datasets/types.js +14 -0
- package/dist/datasets/types.js.map +7 -0
- package/dist/directmessages/ConversationList.js +148 -0
- package/dist/directmessages/ConversationList.js.map +7 -0
- package/dist/directmessages/DateSeparator.js +8 -0
- package/dist/directmessages/DateSeparator.js.map +7 -0
- package/dist/directmessages/DmAvatar.js +29 -0
- package/dist/directmessages/DmAvatar.js.map +7 -0
- package/dist/directmessages/DmComposer.js +201 -0
- package/dist/directmessages/DmComposer.js.map +7 -0
- package/dist/directmessages/arrivals.js +29 -0
- package/dist/directmessages/arrivals.js.map +7 -0
- package/dist/directmessages/chat-cache.js +192 -0
- package/dist/directmessages/chat-cache.js.map +7 -0
- package/dist/directmessages/grouping.js +26 -0
- package/dist/directmessages/grouping.js.map +7 -0
- package/dist/directmessages/index.js +81 -0
- package/dist/directmessages/index.js.map +7 -0
- package/dist/directmessages/useChats.js +266 -0
- package/dist/directmessages/useChats.js.map +7 -0
- package/dist/directmessages/utils.js +23 -0
- package/dist/directmessages/utils.js.map +7 -0
- package/dist/document-tools/can-annotate.js +7 -0
- package/dist/document-tools/can-annotate.js.map +7 -0
- package/dist/document-tools/core.cjs +99 -99
- package/dist/document-tools/core.d.ts +2 -2
- package/dist/document-tools/core.js +218 -12
- package/dist/document-tools/core.js.map +7 -1
- package/dist/document-tools/document-pdf.js +76 -0
- package/dist/document-tools/document-pdf.js.map +7 -0
- package/dist/document-tools/environment.js +136 -0
- package/dist/document-tools/environment.js.map +7 -0
- package/dist/document-tools/file-shares.js +112 -0
- package/dist/document-tools/file-shares.js.map +7 -0
- package/dist/document-tools/frozen-copy.js +27 -0
- package/dist/document-tools/frozen-copy.js.map +7 -0
- package/dist/document-tools/index.cjs +101 -101
- package/dist/document-tools/index.d.ts +1 -1
- package/dist/document-tools/index.js +26 -148
- package/dist/document-tools/index.js.map +7 -1
- package/dist/document-tools/markup-download.js +51 -0
- package/dist/document-tools/markup-download.js.map +7 -0
- package/dist/document-tools/markup-store.js +138 -0
- package/dist/document-tools/markup-store.js.map +7 -0
- package/dist/document-tools/markup-transfer.js +88 -0
- package/dist/document-tools/markup-transfer.js.map +7 -0
- package/dist/document-tools/production.js +147 -0
- package/dist/document-tools/production.js.map +7 -0
- package/dist/document-tools/saved-signature.js +90 -0
- package/dist/document-tools/saved-signature.js.map +7 -0
- package/dist/document-tools/signature-requests.js +310 -0
- package/dist/document-tools/signature-requests.js.map +7 -0
- package/dist/document-tools/signing.js +127 -0
- package/dist/document-tools/signing.js.map +7 -0
- package/dist/document-tools/useDocumentBytes.js +38 -0
- package/dist/document-tools/useDocumentBytes.js.map +7 -0
- package/dist/document-tools/useDocumentMarkup.js +154 -0
- package/dist/document-tools/useDocumentMarkup.js.map +7 -0
- package/dist/document-tools/useIsOnline.js +13 -0
- package/dist/document-tools/useIsOnline.js.map +7 -0
- package/dist/document-tools/verification.js +60 -0
- package/dist/document-tools/verification.js.map +7 -0
- package/dist/documents/DocumentReview.js +220 -0
- package/dist/documents/DocumentReview.js.map +7 -0
- package/dist/documents/DraftTitleControls.js +41 -0
- package/dist/documents/DraftTitleControls.js.map +7 -0
- package/dist/documents/InlineMicButton.js +90 -0
- package/dist/documents/InlineMicButton.js.map +7 -0
- package/dist/documents/MicRecordingOverlay.js +29 -0
- package/dist/documents/MicRecordingOverlay.js.map +7 -0
- package/dist/documents/MicWaveformIndicator.js +68 -0
- package/dist/documents/MicWaveformIndicator.js.map +7 -0
- package/dist/documents/PhotoCapture.js +120 -0
- package/dist/documents/PhotoCapture.js.map +7 -0
- package/dist/documents/VideoCapture.js +129 -0
- package/dist/documents/VideoCapture.js.map +7 -0
- package/dist/documents/VoiceNoteRecorder.js +166 -0
- package/dist/documents/VoiceNoteRecorder.js.map +7 -0
- package/dist/documents/audio-segmenter.js +63 -0
- package/dist/documents/audio-segmenter.js.map +7 -0
- package/dist/documents/capture-frame.js +21 -0
- package/dist/documents/capture-frame.js.map +7 -0
- package/dist/documents/chunked-recorder.js +190 -0
- package/dist/documents/chunked-recorder.js.map +7 -0
- package/dist/documents/document-download.js +53 -0
- package/dist/documents/document-download.js.map +7 -0
- package/dist/documents/document-fields.js +109 -0
- package/dist/documents/document-fields.js.map +7 -0
- package/dist/documents/documents-cache.js +110 -0
- package/dist/documents/documents-cache.js.map +7 -0
- package/dist/documents/documents-data.js +128 -0
- package/dist/documents/documents-data.js.map +7 -0
- package/dist/documents/documents-loader.js +113 -0
- package/dist/documents/documents-loader.js.map +7 -0
- package/dist/documents/documents-writes.js +448 -0
- package/dist/documents/documents-writes.js.map +7 -0
- package/dist/documents/format-elapsed.js +10 -0
- package/dist/documents/format-elapsed.js.map +7 -0
- package/dist/documents/has-video-track.js +26 -0
- package/dist/documents/has-video-track.js.map +7 -0
- package/dist/documents/index.js +266 -0
- package/dist/documents/index.js.map +7 -0
- package/dist/documents/media-error.js +18 -0
- package/dist/documents/media-error.js.map +7 -0
- package/dist/documents/offline-documents.js +160 -0
- package/dist/documents/offline-documents.js.map +7 -0
- package/dist/documents/pending-sync.js +210 -0
- package/dist/documents/pending-sync.js.map +7 -0
- package/dist/documents/processing-live.js +122 -0
- package/dist/documents/processing-live.js.map +7 -0
- package/dist/documents/processing-order.js +59 -0
- package/dist/documents/processing-order.js.map +7 -0
- package/dist/documents/processing-settle.js +21 -0
- package/dist/documents/processing-settle.js.map +7 -0
- package/dist/documents/related-documents.js +133 -0
- package/dist/documents/related-documents.js.map +7 -0
- package/dist/documents/support.js +29 -0
- package/dist/documents/support.js.map +7 -0
- package/dist/documents/upload-files.js +169 -0
- package/dist/documents/upload-files.js.map +7 -0
- package/dist/documents/useAudioRecorder.js +315 -0
- package/dist/documents/useAudioRecorder.js.map +7 -0
- package/dist/documents/useCameraStream.js +35 -0
- package/dist/documents/useCameraStream.js.map +7 -0
- package/dist/documents/useDocumentThumbnails.js +71 -0
- package/dist/documents/useDocumentThumbnails.js.map +7 -0
- package/dist/documents/useDownloadDocuments.js +90 -0
- package/dist/documents/useDownloadDocuments.js.map +7 -0
- package/dist/documents/usePassageQuotes.js +37 -0
- package/dist/documents/usePassageQuotes.js.map +7 -0
- package/dist/documents/useUploadFiles.js +165 -0
- package/dist/documents/useUploadFiles.js.map +7 -0
- package/dist/documents/useUploadFromUrls.js +63 -0
- package/dist/documents/useUploadFromUrls.js.map +7 -0
- package/dist/documents/useVideoRecorder.js +62 -0
- package/dist/documents/useVideoRecorder.js.map +7 -0
- package/dist/entities/AgentMarkers.js +61 -0
- package/dist/entities/AgentMarkers.js.map +7 -0
- package/dist/entities/DocumentEntity.js +125 -0
- package/dist/entities/DocumentEntity.js.map +7 -0
- package/dist/entities/EntityPill.js +250 -0
- package/dist/entities/EntityPill.js.map +7 -0
- package/dist/entities/ProjectEntity.js +61 -0
- package/dist/entities/ProjectEntity.js.map +7 -0
- package/dist/entities/ShieldIcon.js +49 -0
- package/dist/entities/ShieldIcon.js.map +7 -0
- package/dist/entities/TagEntity.js +79 -0
- package/dist/entities/TagEntity.js.map +7 -0
- package/dist/entities/ThreadVisibilityIcon.js +15 -0
- package/dist/entities/ThreadVisibilityIcon.js.map +7 -0
- package/dist/entities/UserEntity.js +211 -0
- package/dist/entities/UserEntity.js.map +7 -0
- package/dist/entities/VerifiedBadge.js +19 -0
- package/dist/entities/VerifiedBadge.js.map +7 -0
- package/dist/entities/agent-avatar-colors.js +26 -0
- package/dist/entities/agent-avatar-colors.js.map +7 -0
- package/dist/entities/colors.js +64 -0
- package/dist/entities/colors.js.map +7 -0
- package/dist/entities/file-type.js +151 -0
- package/dist/entities/file-type.js.map +7 -0
- package/dist/entities/index.js +100 -0
- package/dist/entities/index.js.map +7 -0
- package/dist/entities/media-type.js +61 -0
- package/dist/entities/media-type.js.map +7 -0
- package/dist/entities/registry.js +385 -0
- package/dist/entities/registry.js.map +7 -0
- package/dist/entities/status.js +43 -0
- package/dist/entities/status.js.map +7 -0
- package/dist/entities/tag-kinds.js +23 -0
- package/dist/entities/tag-kinds.js.map +7 -0
- package/dist/entities/tag-types.js +44 -0
- package/dist/entities/tag-types.js.map +7 -0
- package/dist/entities/vocabulary.js +12 -0
- package/dist/entities/vocabulary.js.map +7 -0
- package/dist/entity-extraction.js +25 -0
- package/dist/entity-extraction.js.map +7 -0
- package/dist/facts-search.js +57 -0
- package/dist/facts-search.js.map +7 -0
- package/dist/facts.js +69 -0
- package/dist/facts.js.map +7 -0
- package/dist/hooks.js +320 -0
- package/dist/hooks.js.map +7 -0
- package/dist/host/ArbiHost.js +24 -0
- package/dist/host/ArbiHost.js.map +7 -0
- package/dist/host/assistant-copy.js +54 -0
- package/dist/host/assistant-copy.js.map +7 -0
- package/dist/host/config.js +9 -0
- package/dist/host/config.js.map +7 -0
- package/dist/host/context.js +10 -0
- package/dist/host/context.js.map +7 -0
- package/dist/host/features.js +144 -0
- package/dist/host/features.js.map +7 -0
- package/dist/host/index.js +12 -0
- package/dist/host/index.js.map +7 -0
- package/dist/{chunk-DPYBZDJB.js → host/merge.js} +7 -7
- package/dist/host/merge.js.map +7 -0
- package/dist/house-template.js +40 -0
- package/dist/house-template.js.map +7 -0
- package/dist/icons/AppleIcon.js +25 -0
- package/dist/icons/AppleIcon.js.map +7 -0
- package/dist/icons/ArbiBotHeadIcon.js +46 -0
- package/dist/icons/ArbiBotHeadIcon.js.map +7 -0
- package/dist/icons/ArbiIcon.js +24 -0
- package/dist/icons/ArbiIcon.js.map +7 -0
- package/dist/icons/AudIcon.js +56 -0
- package/dist/icons/AudIcon.js.map +7 -0
- package/dist/icons/ClaudeIcon.js +28 -0
- package/dist/icons/ClaudeIcon.js.map +7 -0
- package/dist/icons/DocIcon.js +56 -0
- package/dist/icons/DocIcon.js.map +7 -0
- package/dist/icons/EmlIcon.js +57 -0
- package/dist/icons/EmlIcon.js.map +7 -0
- package/dist/icons/FireworksIcon.js +47 -0
- package/dist/icons/FireworksIcon.js.map +7 -0
- package/dist/icons/GeminiIcon.js +37 -0
- package/dist/icons/GeminiIcon.js.map +7 -0
- package/dist/icons/GitHubIcon.js +32 -0
- package/dist/icons/GitHubIcon.js.map +7 -0
- package/dist/icons/GoogleIcon.js +53 -0
- package/dist/icons/GoogleIcon.js.map +7 -0
- package/dist/icons/HtmlIcon.js +56 -0
- package/dist/icons/HtmlIcon.js.map +7 -0
- package/dist/icons/ImgIcon.js +56 -0
- package/dist/icons/ImgIcon.js.map +7 -0
- package/dist/icons/LinkedInIcon.js +25 -0
- package/dist/icons/LinkedInIcon.js.map +7 -0
- package/dist/icons/OpenAIIcon.js +28 -0
- package/dist/icons/OpenAIIcon.js.map +7 -0
- package/dist/icons/PdfIcon.js +56 -0
- package/dist/icons/PdfIcon.js.map +7 -0
- package/dist/icons/ProviderIcon.js +42 -0
- package/dist/icons/ProviderIcon.js.map +7 -0
- package/dist/icons/TxtIcon.js +56 -0
- package/dist/icons/TxtIcon.js.map +7 -0
- package/dist/icons/VidIcon.js +56 -0
- package/dist/icons/VidIcon.js.map +7 -0
- package/dist/icons/XlsIcon.js +56 -0
- package/dist/icons/XlsIcon.js.map +7 -0
- package/dist/icons/arbi-mark.js +5 -0
- package/dist/icons/arbi-mark.js.map +7 -0
- package/dist/icons/colors.js +31 -0
- package/dist/icons/colors.js.map +7 -0
- package/dist/icons/file-type.js +105 -0
- package/dist/icons/file-type.js.map +7 -0
- package/dist/icons/index.js +55 -0
- package/dist/icons/index.js.map +7 -0
- package/dist/imagecrop/ImageCropModal.js +56 -0
- package/dist/imagecrop/ImageCropModal.js.map +7 -0
- package/dist/imagecrop/ImageCropper.js +100 -0
- package/dist/imagecrop/ImageCropper.js.map +7 -0
- package/dist/imagecrop/cropImage.js +43 -0
- package/dist/imagecrop/cropImage.js.map +7 -0
- package/dist/imagecrop/index.js +13 -0
- package/dist/imagecrop/index.js.map +7 -0
- package/dist/index.cjs +1689 -1619
- package/dist/index.cjs.map +1 -1
- package/dist/{index.d-BMhTH98a.d.ts → index.d-CYXcTKYt.d.ts} +1 -0
- package/dist/index.d.ts +38 -8
- package/dist/index.js +702 -17060
- package/dist/index.js.map +7 -1
- package/dist/lazy-chunk.d-B6YDLMKI.d.ts +31 -0
- package/dist/lazy-chunk.js +46 -0
- package/dist/lazy-chunk.js.map +7 -0
- package/dist/lib/collision-padding.js +13 -0
- package/dist/lib/collision-padding.js.map +7 -0
- package/dist/lib/format-friendly-date.js +55 -0
- package/dist/lib/format-friendly-date.js.map +7 -0
- package/dist/lib/format-relative-time.js +52 -0
- package/dist/lib/format-relative-time.js.map +7 -0
- package/dist/lib/markdown-to-text.js +35 -0
- package/dist/lib/markdown-to-text.js.map +7 -0
- package/dist/lib/toast-interaction.js +9 -0
- package/dist/lib/toast-interaction.js.map +7 -0
- package/dist/lib/utils.js +9 -0
- package/dist/lib/utils.js.map +7 -0
- package/dist/mail/client.js +103 -0
- package/dist/mail/client.js.map +7 -0
- package/dist/mail/document-attachment.js +38 -0
- package/dist/mail/document-attachment.js.map +7 -0
- package/dist/mail/filing.js +132 -0
- package/dist/mail/filing.js.map +7 -0
- package/dist/mail/hooks.js +393 -0
- package/dist/mail/hooks.js.map +7 -0
- package/dist/mail/index.js +120 -0
- package/dist/mail/index.js.map +7 -0
- package/dist/mail/offline/changes.js +258 -0
- package/dist/mail/offline/changes.js.map +7 -0
- package/dist/mail/offline/confirm-sign-out.js +37 -0
- package/dist/mail/offline/confirm-sign-out.js.map +7 -0
- package/dist/mail/offline/crypto.js +26 -0
- package/dist/mail/offline/crypto.js.map +7 -0
- package/dist/mail/offline/drafts.js +69 -0
- package/dist/mail/offline/drafts.js.map +7 -0
- package/dist/mail/offline/hooks.js +104 -0
- package/dist/mail/offline/hooks.js.map +7 -0
- package/dist/mail/offline/index.js +48 -0
- package/dist/mail/offline/index.js.map +7 -0
- package/dist/mail/offline/live.js +233 -0
- package/dist/mail/offline/live.js.map +7 -0
- package/dist/mail/offline/mailbox.js +191 -0
- package/dist/mail/offline/mailbox.js.map +7 -0
- package/dist/mail/offline/outbox.js +167 -0
- package/dist/mail/offline/outbox.js.map +7 -0
- package/dist/mail/offline/reads.js +159 -0
- package/dist/mail/offline/reads.js.map +7 -0
- package/dist/mail/offline/runtime.js +100 -0
- package/dist/mail/offline/runtime.js.map +7 -0
- package/dist/mail/offline/settings.js +84 -0
- package/dist/mail/offline/settings.js.map +7 -0
- package/dist/mail/offline/store.js +29 -0
- package/dist/mail/offline/store.js.map +7 -0
- package/dist/mail/offline/sync.js +251 -0
- package/dist/mail/offline/sync.js.map +7 -0
- package/dist/mail/offline/wipe.js +19 -0
- package/dist/mail/offline/wipe.js.map +7 -0
- package/dist/mail/thread-keys.js +53 -0
- package/dist/mail/thread-keys.js.map +7 -0
- package/dist/mail/threads.js +71 -0
- package/dist/mail/threads.js.map +7 -0
- package/dist/mail/useMailClient.js +42 -0
- package/dist/mail/useMailClient.js.map +7 -0
- package/dist/model-connections.js +58 -0
- package/dist/model-connections.js.map +7 -0
- package/dist/notifications/ActivityFeed.js +70 -0
- package/dist/notifications/ActivityFeed.js.map +7 -0
- package/dist/notifications/NotificationBell.js +200 -0
- package/dist/notifications/NotificationBell.js.map +7 -0
- package/dist/notifications/Toaster.js +24 -0
- package/dist/notifications/Toaster.js.map +7 -0
- package/dist/notifications/activity-types.js +65 -0
- package/dist/notifications/activity-types.js.map +7 -0
- package/dist/notifications/bell.js +24 -0
- package/dist/notifications/bell.js.map +7 -0
- package/dist/notifications/calendar-notifications.js +79 -0
- package/dist/notifications/calendar-notifications.js.map +7 -0
- package/dist/notifications/index.js +108 -0
- package/dist/notifications/index.js.map +7 -0
- package/dist/notifications/live.js +28 -0
- package/dist/notifications/live.js.map +7 -0
- package/dist/notifications/notification-types.js +127 -0
- package/dist/notifications/notification-types.js.map +7 -0
- package/dist/{chunk-BF5KW5ZI.js → notifications/notify-store.js} +24 -74
- package/dist/notifications/notify-store.js.map +7 -0
- package/dist/notifications/server-notifications.js +452 -0
- package/dist/notifications/server-notifications.js.map +7 -0
- package/dist/notifications/useNotifications.js +34 -0
- package/dist/notifications/useNotifications.js.map +7 -0
- package/dist/offline-store/network.js +11 -0
- package/dist/offline-store/network.js.map +7 -0
- package/dist/offline-store/store.js +136 -0
- package/dist/offline-store/store.js.map +7 -0
- package/dist/offline-store/wipe.js +8 -0
- package/dist/offline-store/wipe.js.map +7 -0
- package/dist/offline.js +58 -0
- package/dist/offline.js.map +7 -0
- package/dist/people.js +122 -0
- package/dist/people.js.map +7 -0
- package/dist/projects.js +30 -0
- package/dist/projects.js.map +7 -0
- package/dist/query-client.js +63 -0
- package/dist/query-client.js.map +7 -0
- package/dist/{query-keys.d-ChgpJLPF.d.ts → query-keys.d-B1Am9tIF.d.ts} +1 -1
- package/dist/{chunk-6H3O63TQ.js → query-keys.js} +19 -32
- package/dist/query-keys.js.map +7 -0
- package/dist/query-persist.js +66 -0
- package/dist/query-persist.js.map +7 -0
- package/dist/queued-writes.js +59 -0
- package/dist/queued-writes.js.map +7 -0
- package/dist/remote-control.js +67 -0
- package/dist/remote-control.js.map +7 -0
- package/dist/search/index.js +23 -0
- package/dist/search/index.js.map +7 -0
- package/dist/search/session.js +58 -0
- package/dist/search/session.js.map +7 -0
- package/dist/search/useSemanticSearch.js +82 -0
- package/dist/search/useSemanticSearch.js.map +7 -0
- package/dist/session/chat.js +512 -0
- package/dist/session/chat.js.map +7 -0
- package/dist/session/documents.js +196 -0
- package/dist/session/documents.js.map +7 -0
- package/dist/session/drafts.js +103 -0
- package/dist/session/drafts.js.map +7 -0
- package/dist/session/index.js +123 -0
- package/dist/session/index.js.map +7 -0
- package/dist/session/layout.js +339 -0
- package/dist/session/layout.js.map +7 -0
- package/dist/session/persist.js +106 -0
- package/dist/session/persist.js.map +7 -0
- package/dist/session/session-hooks.js +53 -0
- package/dist/session/session-hooks.js.map +7 -0
- package/dist/session/signed-in.js +36 -0
- package/dist/session/signed-in.js.map +7 -0
- package/dist/session/store.js +166 -0
- package/dist/session/store.js.map +7 -0
- package/dist/session/thread-tabs.js +121 -0
- package/dist/session/thread-tabs.js.map +7 -0
- package/dist/session/ui-state-storage.js +76 -0
- package/dist/session/ui-state-storage.js.map +7 -0
- package/dist/session/workspace.js +77 -0
- package/dist/session/workspace.js.map +7 -0
- package/dist/shell/index.cjs +37 -37
- package/dist/shell/index.js +43 -10
- package/dist/shell/index.js.map +7 -1
- package/dist/skill-pack.js +111 -0
- package/dist/skill-pack.js.map +7 -0
- package/dist/storage.js +186 -0
- package/dist/storage.js.map +7 -0
- package/dist/support/index.js +35 -0
- package/dist/support/index.js.map +7 -0
- package/dist/tags.js +204 -0
- package/dist/tags.js.map +7 -0
- package/dist/ui/DebouncedInput.js +109 -0
- package/dist/ui/DebouncedInput.js.map +7 -0
- package/dist/ui/DictateContext.js +8 -0
- package/dist/ui/DictateContext.js.map +7 -0
- package/dist/ui/IconToggle.js +79 -0
- package/dist/ui/IconToggle.js.map +7 -0
- package/dist/ui/VerifiedToggle.js +38 -0
- package/dist/ui/VerifiedToggle.js.map +7 -0
- package/dist/ui/VisibilityToggle.js +103 -0
- package/dist/ui/VisibilityToggle.js.map +7 -0
- package/dist/ui/avatar.js +40 -0
- package/dist/ui/avatar.js.map +7 -0
- package/dist/ui/badge.js +28 -0
- package/dist/ui/badge.js.map +7 -0
- package/dist/ui/button.js +48 -0
- package/dist/ui/button.js.map +7 -0
- package/dist/ui/card.js +90 -0
- package/dist/ui/card.js.map +7 -0
- package/dist/ui/checkbox.js +22 -0
- package/dist/ui/checkbox.js.map +7 -0
- package/dist/ui/collapsible.js +10 -0
- package/dist/ui/collapsible.js.map +7 -0
- package/dist/ui/command.js +103 -0
- package/dist/ui/command.js.map +7 -0
- package/dist/{chunk-YNNAJJ5Z.js → ui/dialog.js} +30 -68
- package/dist/ui/dialog.js.map +7 -0
- package/dist/{chunk-47CCGUWR.js → ui/dropdown-menu.js} +40 -45
- package/dist/ui/dropdown-menu.js.map +7 -0
- package/dist/ui/hover-card.js +36 -0
- package/dist/ui/hover-card.js.map +7 -0
- package/dist/ui/index.cjs +167 -154
- package/dist/ui/index.d.ts +2 -1
- package/dist/ui/index.js +290 -9
- package/dist/ui/index.js.map +7 -1
- package/dist/ui/input.js +65 -0
- package/dist/ui/input.js.map +7 -0
- package/dist/ui/label.js +16 -0
- package/dist/ui/label.js.map +7 -0
- package/dist/ui/mark-menu.js +300 -0
- package/dist/ui/mark-menu.js.map +7 -0
- package/dist/ui/popover.js +40 -0
- package/dist/ui/popover.js.map +7 -0
- package/dist/ui/portal-container.js +17 -0
- package/dist/ui/portal-container.js.map +7 -0
- package/dist/ui/progress.js +24 -0
- package/dist/ui/progress.js.map +7 -0
- package/dist/ui/radio-group.js +29 -0
- package/dist/ui/radio-group.js.map +7 -0
- package/dist/ui/scroll-area.js +39 -0
- package/dist/ui/scroll-area.js.map +7 -0
- package/dist/ui/select.js +130 -0
- package/dist/ui/select.js.map +7 -0
- package/dist/ui/separator.js +23 -0
- package/dist/ui/separator.js.map +7 -0
- package/dist/ui/slider.js +23 -0
- package/dist/ui/slider.js.map +7 -0
- package/dist/ui/switch.js +28 -0
- package/dist/ui/switch.js.map +7 -0
- package/dist/ui/table.js +75 -0
- package/dist/ui/table.js.map +7 -0
- package/dist/ui/tabs.js +48 -0
- package/dist/ui/tabs.js.map +7 -0
- package/dist/ui/textarea.js +63 -0
- package/dist/ui/textarea.js.map +7 -0
- package/dist/ui/toggle-group.js +43 -0
- package/dist/ui/toggle-group.js.map +7 -0
- package/dist/ui/toggle.js +40 -0
- package/dist/ui/toggle.js.map +7 -0
- package/dist/ui/tooltip.js +215 -0
- package/dist/ui/tooltip.js.map +7 -0
- package/dist/usage-metered.js +8 -0
- package/dist/usage-metered.js.map +7 -0
- package/dist/useArbi.js +16 -0
- package/dist/useArbi.js.map +7 -0
- package/dist/useInstallSkillPack.js +81 -0
- package/dist/useInstallSkillPack.js.map +7 -0
- package/dist/usermenu/UserMenu.js +188 -0
- package/dist/usermenu/UserMenu.js.map +7 -0
- package/dist/usermenu/index.js +5 -0
- package/dist/usermenu/index.js.map +7 -0
- package/dist/users/index.js +15 -0
- package/dist/users/index.js.map +7 -0
- package/dist/users/user-display.js +60 -0
- package/dist/users/user-display.js.map +7 -0
- package/dist/viewers/AudioViewer.js +23 -0
- package/dist/viewers/AudioViewer.js.map +7 -0
- package/dist/viewers/DocxViewer.js +81 -0
- package/dist/viewers/DocxViewer.js.map +7 -0
- package/dist/viewers/ImageViewer.js +31 -0
- package/dist/viewers/ImageViewer.js.map +7 -0
- package/dist/viewers/PdfViewer.cjs +17 -0
- package/dist/viewers/PdfViewer.cjs.map +1 -0
- package/dist/viewers/PdfViewer.d.ts +9 -0
- package/dist/viewers/PdfViewer.js +20 -0
- package/dist/viewers/PdfViewer.js.map +7 -0
- package/dist/viewers/PdfViewerImpl.js +384 -0
- package/dist/viewers/PdfViewerImpl.js.map +7 -0
- package/dist/viewers/VideoViewer.js +31 -0
- package/dist/viewers/VideoViewer.js.map +7 -0
- package/dist/viewers/XlsxViewer.js +102 -0
- package/dist/viewers/XlsxViewer.js.map +7 -0
- package/dist/viewers/index.cjs +79 -653
- package/dist/viewers/index.cjs.map +1 -1
- package/dist/viewers/index.d.ts +3 -1
- package/dist/viewers/index.js +60 -903
- package/dist/viewers/index.js.map +7 -1
- package/dist/viewers/page-scroll.js +59 -0
- package/dist/viewers/page-scroll.js.map +7 -0
- package/dist/viewers/pdf-viewer-constants.js +9 -0
- package/dist/viewers/pdf-viewer-constants.js.map +7 -0
- package/dist/{chunk-PTOP7OHG.js → viewers/pdfjs-polyfills.js} +5 -6
- package/dist/viewers/pdfjs-polyfills.js.map +7 -0
- package/dist/viewers/selection-runs.js +38 -0
- package/dist/viewers/selection-runs.js.map +7 -0
- package/dist/viewers/usePageIntersectionObserver.js +68 -0
- package/dist/viewers/usePageIntersectionObserver.js.map +7 -0
- package/dist/viewers/useProcessedChunks.js +58 -0
- package/dist/viewers/useProcessedChunks.js.map +7 -0
- package/dist/viewers/viewer-zoom.js +163 -0
- package/dist/viewers/viewer-zoom.js.map +7 -0
- package/dist/websocket/ArbiWebSocketProvider.js +207 -0
- package/dist/websocket/ArbiWebSocketProvider.js.map +7 -0
- package/dist/websocket/context.js +14 -0
- package/dist/websocket/context.js.map +7 -0
- package/dist/websocket/hooks.js +30 -0
- package/dist/websocket/hooks.js.map +7 -0
- package/dist/websocket/index.js +22 -0
- package/dist/websocket/index.js.map +7 -0
- package/dist/websocket/live-updates.js +38 -0
- package/dist/websocket/live-updates.js.map +7 -0
- package/dist/websocket/reconnect.js +13 -0
- package/dist/websocket/reconnect.js.map +7 -0
- package/dist/websocket/store.js +58 -0
- package/dist/websocket/store.js.map +7 -0
- package/dist/workforce.js +607 -0
- package/dist/workforce.js.map +7 -0
- package/dist/workspaces/access-request.js +35 -0
- package/dist/workspaces/access-request.js.map +7 -0
- package/dist/workspaces/archive.js +59 -0
- package/dist/workspaces/archive.js.map +7 -0
- package/dist/workspaces/current.js +20 -0
- package/dist/workspaces/current.js.map +7 -0
- package/dist/workspaces/delete-workspaces.js +15 -0
- package/dist/workspaces/delete-workspaces.js.map +7 -0
- package/dist/workspaces/export-archive.js +40 -0
- package/dist/workspaces/export-archive.js.map +7 -0
- package/dist/workspaces/index.js +99 -0
- package/dist/workspaces/index.js.map +7 -0
- package/dist/workspaces/settings.js +45 -0
- package/dist/workspaces/settings.js.map +7 -0
- package/dist/workspaces/shell-workspaces.js +49 -0
- package/dist/workspaces/shell-workspaces.js.map +7 -0
- package/dist/workspaces/switch.js +234 -0
- package/dist/workspaces/switch.js.map +7 -0
- package/dist/workspaces/transfer.js +170 -0
- package/dist/workspaces/transfer.js.map +7 -0
- package/dist/workspaces/useShellWorkspaces.js +86 -0
- package/dist/workspaces/useShellWorkspaces.js.map +7 -0
- package/dist/workspaces/workspace-users.js +65 -0
- package/dist/workspaces/workspace-users.js.map +7 -0
- package/package.json +12 -4
- package/dist/PdfViewer.d-bQH9yxFg.d.ts +0 -55
- package/dist/ProductionDialog.d-CpzslFn0.d.cts +0 -51
- package/dist/annotations/freeze/index.d.cts +0 -205
- package/dist/annotations/index.d.cts +0 -360
- package/dist/artifacts/index.d.cts +0 -476
- package/dist/artifacts/redline-core.d.cts +0 -39
- package/dist/bundle-YNOX7VIL.js +0 -5
- package/dist/bundle-YNOX7VIL.js.map +0 -1
- package/dist/bundle.d-BnCSbHy2.d.cts +0 -85
- package/dist/calls/livekit/index.d.cts +0 -280
- package/dist/chunk-47CCGUWR.js.map +0 -1
- package/dist/chunk-6H3O63TQ.js.map +0 -1
- package/dist/chunk-74N436VK.js.map +0 -1
- package/dist/chunk-APZZQZ6P.js +0 -147
- package/dist/chunk-APZZQZ6P.js.map +0 -1
- package/dist/chunk-BF5KW5ZI.js.map +0 -1
- package/dist/chunk-CPQ3CU4B.js +0 -246
- package/dist/chunk-CPQ3CU4B.js.map +0 -1
- package/dist/chunk-DPYBZDJB.js.map +0 -1
- package/dist/chunk-DQALOQPI.js +0 -2766
- package/dist/chunk-DQALOQPI.js.map +0 -1
- package/dist/chunk-FZJMA32S.js +0 -1011
- package/dist/chunk-FZJMA32S.js.map +0 -1
- package/dist/chunk-H5M7FXLB.js +0 -2057
- package/dist/chunk-H5M7FXLB.js.map +0 -1
- package/dist/chunk-HDCRPPBW.js +0 -75
- package/dist/chunk-HDCRPPBW.js.map +0 -1
- package/dist/chunk-NIKPG4PW.js +0 -1128
- package/dist/chunk-NIKPG4PW.js.map +0 -1
- package/dist/chunk-NNAJLY6B.js +0 -4974
- package/dist/chunk-NNAJLY6B.js.map +0 -1
- package/dist/chunk-OYPKKHXY.js +0 -559
- package/dist/chunk-OYPKKHXY.js.map +0 -1
- package/dist/chunk-P6WLV5UY.js +0 -644
- package/dist/chunk-P6WLV5UY.js.map +0 -1
- package/dist/chunk-PTOP7OHG.js.map +0 -1
- package/dist/chunk-SN5YV6FF.js +0 -11
- package/dist/chunk-SN5YV6FF.js.map +0 -1
- package/dist/chunk-T3USOSVN.js.map +0 -1
- package/dist/chunk-T4CLW3DN.js +0 -2560
- package/dist/chunk-T4CLW3DN.js.map +0 -1
- package/dist/chunk-UW2SGTI5.js.map +0 -1
- package/dist/chunk-VSCU7K4V.js.map +0 -1
- package/dist/chunk-WL2Y2T47.js.map +0 -1
- package/dist/chunk-WUTL62MC.js.map +0 -1
- package/dist/chunk-Y3MTRA7D.js +0 -97
- package/dist/chunk-Y3MTRA7D.js.map +0 -1
- package/dist/chunk-YNNAJJ5Z.js.map +0 -1
- package/dist/document-tools/core.d.cts +0 -883
- package/dist/document-tools/index.d.cts +0 -90
- package/dist/index.d-BMhTH98a.d.cts +0 -2035
- package/dist/index.d-oR5FKZpJ.d.cts +0 -579
- package/dist/index.d.cts +0 -15893
- package/dist/model.d-CNtRWKVK.d.cts +0 -110
- package/dist/query-keys.d-ChgpJLPF.d.cts +0 -337
- package/dist/shell/index.d.cts +0 -6
- package/dist/store.d-GADDvC7w.d.cts +0 -35
- package/dist/stored-markdown.d-Bp18vrbr.d.cts +0 -125
- package/dist/ui/index.d.cts +0 -25
- package/dist/useAudioRecorder.d-B9rlMI_E.d.cts +0 -778
- package/dist/viewers/index.d.cts +0 -260
|
@@ -1,13 +1,219 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
DocumentToolsProvider,
|
|
3
|
+
certificateLink,
|
|
4
|
+
clientUpload,
|
|
5
|
+
defaultCertificateUrl,
|
|
6
|
+
downloadBlob,
|
|
7
|
+
uploadQueryString,
|
|
8
|
+
useDocumentTools,
|
|
9
|
+
useOptionalDocumentTools
|
|
10
|
+
} from "./environment.js";
|
|
11
|
+
import {
|
|
12
|
+
DocumentFetchError,
|
|
13
|
+
contentDispositionFileName,
|
|
14
|
+
fetchDocumentFile,
|
|
15
|
+
fetchDocumentPdf
|
|
16
|
+
} from "./document-pdf.js";
|
|
17
|
+
import {
|
|
18
|
+
MAX_MERGE_ATTEMPTS,
|
|
19
|
+
MarkupStoreError,
|
|
20
|
+
createMarkupStore
|
|
21
|
+
} from "./markup-store.js";
|
|
22
|
+
import {
|
|
23
|
+
LEGACY_LAYER_PREFIX,
|
|
24
|
+
addToMarkup,
|
|
25
|
+
copyOpenThreads,
|
|
26
|
+
forgetLegacyLayer,
|
|
27
|
+
marksByVersion,
|
|
28
|
+
migrateLegacyLayer,
|
|
29
|
+
openThreadsOf,
|
|
30
|
+
readLegacyLayer,
|
|
31
|
+
versionsWithMarkup
|
|
32
|
+
} from "./markup-transfer.js";
|
|
33
|
+
import {
|
|
34
|
+
MarkupDownloadError,
|
|
35
|
+
SIGNED_LOCKED_REASON,
|
|
36
|
+
currentHasMarkup,
|
|
37
|
+
fetchMarkupPdf,
|
|
38
|
+
isSignedVersion
|
|
39
|
+
} from "./markup-download.js";
|
|
40
|
+
import {
|
|
41
|
+
SIGNED_UNCHANGED,
|
|
42
|
+
useDocumentMarkup
|
|
43
|
+
} from "./useDocumentMarkup.js";
|
|
44
|
+
import {
|
|
45
|
+
frozenCopyName,
|
|
46
|
+
redactionLogName,
|
|
47
|
+
uploadFrozenCopy
|
|
48
|
+
} from "./frozen-copy.js";
|
|
49
|
+
import { canAnnotate } from "./can-annotate.js";
|
|
50
|
+
import { useIsOnline } from "./useIsOnline.js";
|
|
51
|
+
import {
|
|
52
|
+
documentBytesKey,
|
|
53
|
+
useDocumentBytes
|
|
54
|
+
} from "./useDocumentBytes.js";
|
|
55
|
+
import {
|
|
56
|
+
fetchDocumentSignatures,
|
|
57
|
+
intentText,
|
|
58
|
+
isLegibleSignatureBox,
|
|
59
|
+
sha256Hex,
|
|
60
|
+
signDocument,
|
|
61
|
+
SigningError,
|
|
62
|
+
toAppearance,
|
|
63
|
+
useDocumentSignatures,
|
|
64
|
+
useSignDocument
|
|
65
|
+
} from "./signing.js";
|
|
66
|
+
import {
|
|
67
|
+
SignatureVerificationError,
|
|
68
|
+
VERIFY_PATH,
|
|
69
|
+
fetchSignatureVerification,
|
|
70
|
+
isSignatureReference,
|
|
71
|
+
matchSignedCopy,
|
|
72
|
+
useSignatureVerification
|
|
73
|
+
} from "./verification.js";
|
|
74
|
+
import {
|
|
75
|
+
DEFAULT_FIELD_SIZE,
|
|
76
|
+
FIELD_TYPE_LABELS,
|
|
77
|
+
MARK_FIELD_TYPES,
|
|
78
|
+
SIGNATURE_FIELD_TYPES,
|
|
79
|
+
SIGNER_PROGRESS_LABELS,
|
|
80
|
+
fetchDocumentSignatureRequests,
|
|
81
|
+
fieldsFromSuggestions,
|
|
82
|
+
fieldsInSigningOrder,
|
|
83
|
+
initialsOf,
|
|
84
|
+
inviteSigners,
|
|
85
|
+
isEmailSigner,
|
|
86
|
+
newFieldId,
|
|
87
|
+
saveSignatureRequest,
|
|
88
|
+
sendBlocker,
|
|
89
|
+
signSignatureRequest,
|
|
90
|
+
signatureFieldSuggestions,
|
|
91
|
+
splitSuggestions,
|
|
92
|
+
suggestSignatureFields,
|
|
93
|
+
useDeclineSignatureRequest,
|
|
94
|
+
useDocumentSignatureRequests,
|
|
95
|
+
useInviteSigners,
|
|
96
|
+
useSaveSignatureRequest,
|
|
97
|
+
useSignSignatureRequest,
|
|
98
|
+
useSignerCandidates,
|
|
99
|
+
useVoidSignatureRequest
|
|
100
|
+
} from "./signature-requests.js";
|
|
101
|
+
import {
|
|
102
|
+
INFORMAL_SIGNATURE_NOTE,
|
|
103
|
+
deleteSavedSignature,
|
|
104
|
+
fetchSavedSignature,
|
|
105
|
+
pngBytes,
|
|
106
|
+
pngSize,
|
|
107
|
+
storeSavedSignature,
|
|
108
|
+
useDeleteSavedSignature,
|
|
109
|
+
useSavedSignature,
|
|
110
|
+
useStoreSavedSignature
|
|
111
|
+
} from "./saved-signature.js";
|
|
112
|
+
import {
|
|
113
|
+
createFileShare,
|
|
114
|
+
getFileShare,
|
|
115
|
+
useFileShare,
|
|
116
|
+
useFileSharePdf,
|
|
117
|
+
useFileShares,
|
|
118
|
+
fileShareBytes,
|
|
119
|
+
fileShareSigningRequest,
|
|
120
|
+
signFileShare
|
|
121
|
+
} from "./file-shares.js";
|
|
122
|
+
export {
|
|
123
|
+
DEFAULT_FIELD_SIZE,
|
|
124
|
+
DocumentFetchError,
|
|
125
|
+
DocumentToolsProvider,
|
|
126
|
+
FIELD_TYPE_LABELS,
|
|
127
|
+
INFORMAL_SIGNATURE_NOTE,
|
|
128
|
+
LEGACY_LAYER_PREFIX,
|
|
129
|
+
MARK_FIELD_TYPES,
|
|
130
|
+
MAX_MERGE_ATTEMPTS,
|
|
131
|
+
MarkupDownloadError,
|
|
132
|
+
MarkupStoreError,
|
|
133
|
+
SIGNATURE_FIELD_TYPES,
|
|
134
|
+
SIGNED_LOCKED_REASON,
|
|
135
|
+
SIGNED_UNCHANGED,
|
|
136
|
+
SIGNER_PROGRESS_LABELS,
|
|
137
|
+
SignatureVerificationError,
|
|
138
|
+
SigningError,
|
|
139
|
+
VERIFY_PATH,
|
|
140
|
+
addToMarkup,
|
|
141
|
+
canAnnotate,
|
|
142
|
+
certificateLink,
|
|
143
|
+
clientUpload,
|
|
144
|
+
contentDispositionFileName,
|
|
145
|
+
copyOpenThreads,
|
|
146
|
+
createFileShare,
|
|
147
|
+
createMarkupStore,
|
|
148
|
+
currentHasMarkup,
|
|
149
|
+
defaultCertificateUrl,
|
|
150
|
+
deleteSavedSignature,
|
|
151
|
+
documentBytesKey,
|
|
152
|
+
downloadBlob,
|
|
153
|
+
fetchDocumentFile,
|
|
154
|
+
fetchDocumentPdf,
|
|
155
|
+
fetchDocumentSignatureRequests,
|
|
156
|
+
fetchDocumentSignatures,
|
|
157
|
+
fetchMarkupPdf,
|
|
158
|
+
fetchSavedSignature,
|
|
159
|
+
fetchSignatureVerification,
|
|
160
|
+
fieldsFromSuggestions,
|
|
161
|
+
fieldsInSigningOrder,
|
|
162
|
+
fileShareBytes,
|
|
163
|
+
fileShareSigningRequest,
|
|
164
|
+
forgetLegacyLayer,
|
|
165
|
+
frozenCopyName,
|
|
166
|
+
getFileShare,
|
|
167
|
+
initialsOf,
|
|
168
|
+
intentText,
|
|
169
|
+
inviteSigners,
|
|
170
|
+
isEmailSigner,
|
|
171
|
+
isLegibleSignatureBox,
|
|
172
|
+
isSignatureReference,
|
|
173
|
+
isSignedVersion,
|
|
174
|
+
marksByVersion,
|
|
175
|
+
matchSignedCopy,
|
|
176
|
+
migrateLegacyLayer,
|
|
177
|
+
newFieldId,
|
|
178
|
+
openThreadsOf,
|
|
179
|
+
pngBytes,
|
|
180
|
+
pngSize,
|
|
181
|
+
readLegacyLayer,
|
|
182
|
+
redactionLogName,
|
|
183
|
+
saveSignatureRequest,
|
|
184
|
+
sendBlocker,
|
|
185
|
+
sha256Hex,
|
|
186
|
+
signDocument,
|
|
187
|
+
signFileShare,
|
|
188
|
+
signSignatureRequest,
|
|
189
|
+
signatureFieldSuggestions,
|
|
190
|
+
splitSuggestions,
|
|
191
|
+
storeSavedSignature,
|
|
192
|
+
suggestSignatureFields,
|
|
193
|
+
toAppearance,
|
|
194
|
+
uploadFrozenCopy,
|
|
195
|
+
uploadQueryString,
|
|
196
|
+
useDeclineSignatureRequest,
|
|
197
|
+
useDeleteSavedSignature,
|
|
198
|
+
useDocumentBytes,
|
|
199
|
+
useDocumentMarkup,
|
|
200
|
+
useDocumentSignatureRequests,
|
|
201
|
+
useDocumentSignatures,
|
|
202
|
+
useDocumentTools,
|
|
203
|
+
useFileShare,
|
|
204
|
+
useFileSharePdf,
|
|
205
|
+
useFileShares,
|
|
206
|
+
useInviteSigners,
|
|
207
|
+
useIsOnline,
|
|
208
|
+
useOptionalDocumentTools,
|
|
209
|
+
useSaveSignatureRequest,
|
|
210
|
+
useSavedSignature,
|
|
211
|
+
useSignDocument,
|
|
212
|
+
useSignSignatureRequest,
|
|
213
|
+
useSignatureVerification,
|
|
214
|
+
useSignerCandidates,
|
|
215
|
+
useStoreSavedSignature,
|
|
216
|
+
useVoidSignatureRequest,
|
|
217
|
+
versionsWithMarkup
|
|
218
|
+
};
|
|
12
219
|
//# sourceMappingURL=core.js.map
|
|
13
|
-
//# sourceMappingURL=core.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/document-tools/core.ts"],
|
|
4
|
+
"sourcesContent": ["/** Document data, downloads and host context without optional PDF production peers. */\nexport {\n DocumentToolsProvider,\n certificateLink,\n clientUpload,\n defaultCertificateUrl,\n downloadBlob,\n uploadQueryString,\n useDocumentTools,\n useOptionalDocumentTools,\n type DocumentChange,\n type DocumentToolsClient,\n type DocumentToolsEnvironment,\n type DocumentToolsNoticeKind,\n type DocumentToolsNoticeOptions,\n type DocumentToolsNotify,\n type DocumentToolsProviderProps,\n type DocumentToolsUser,\n type DocumentUploadQuery,\n type DocumentUploadRequest,\n type ResolvedDocumentToolsEnvironment,\n} from './environment'\nexport {\n DocumentFetchError,\n contentDispositionFileName,\n fetchDocumentFile,\n fetchDocumentPdf,\n type DocumentFetchOptions,\n} from './document-pdf'\n\nexport {\n MAX_MERGE_ATTEMPTS,\n MarkupStoreError,\n createMarkupStore,\n type MarkupSnapshot,\n type MarkupStore,\n type MarkupStoreOptions,\n} from './markup-store'\nexport {\n LEGACY_LAYER_PREFIX,\n addToMarkup,\n copyOpenThreads,\n forgetLegacyLayer,\n marksByVersion,\n migrateLegacyLayer,\n openThreadsOf,\n readLegacyLayer,\n versionsWithMarkup,\n type VersionInfo,\n} from './markup-transfer'\nexport {\n MarkupDownloadError,\n SIGNED_LOCKED_REASON,\n currentHasMarkup,\n fetchMarkupPdf,\n isSignedVersion,\n} from './markup-download'\nexport {\n SIGNED_UNCHANGED,\n useDocumentMarkup,\n type LegacyPrompt,\n type MarkupDocument,\n type OlderMarkupNote,\n} from './useDocumentMarkup'\nexport {\n frozenCopyName,\n redactionLogName,\n uploadFrozenCopy,\n type FrozenCopySource,\n} from './frozen-copy'\nexport { canAnnotate, type AnnotatableState } from './can-annotate'\nexport { useIsOnline } from './useIsOnline'\nexport {\n documentBytesKey,\n useDocumentBytes,\n type DocumentBytesKind,\n type UseDocumentBytesOptions,\n} from './useDocumentBytes'\nexport {\n fetchDocumentSignatures,\n intentText,\n isLegibleSignatureBox,\n sha256Hex,\n signDocument,\n SigningError,\n toAppearance,\n useDocumentSignatures,\n useSignDocument,\n type SignDocumentResponse,\n type SignDocumentVars,\n type SigningErrorReason,\n type SignatureAppearance,\n type SignatureRecord,\n type SignatureStatusResponse,\n type SignerDetails,\n} from './signing'\nexport {\n SignatureVerificationError,\n VERIFY_PATH,\n fetchSignatureVerification,\n isSignatureReference,\n matchSignedCopy,\n useSignatureVerification,\n type CopyMatch,\n type SignatureVerification,\n type VerifiedSignature,\n} from './verification'\nexport {\n DEFAULT_FIELD_SIZE,\n FIELD_TYPE_LABELS,\n MARK_FIELD_TYPES,\n SIGNATURE_FIELD_TYPES,\n SIGNER_PROGRESS_LABELS,\n fetchDocumentSignatureRequests,\n fieldsFromSuggestions,\n fieldsInSigningOrder,\n initialsOf,\n inviteSigners,\n isEmailSigner,\n newFieldId,\n saveSignatureRequest,\n sendBlocker,\n signSignatureRequest,\n signatureFieldSuggestions,\n splitSuggestions,\n suggestSignatureFields,\n useDeclineSignatureRequest,\n useDocumentSignatureRequests,\n useInviteSigners,\n useSaveSignatureRequest,\n useSignSignatureRequest,\n useSignerCandidates,\n useVoidSignatureRequest,\n type AdoptedSignature,\n type SaveSignatureRequestVars,\n type SignRequestSignResponse,\n type SignRequestVars,\n type SignatureField,\n type SignatureFieldType,\n type SignatureRequest,\n type SignatureRequestSigner,\n type SignerCandidate,\n type SignerProgress,\n type NamedSigner,\n type SignatureFieldSuggestions,\n type SuggestedSignatureField,\n} from './signature-requests'\nexport {\n INFORMAL_SIGNATURE_NOTE,\n deleteSavedSignature,\n fetchSavedSignature,\n pngBytes,\n pngSize,\n storeSavedSignature,\n useDeleteSavedSignature,\n useSavedSignature,\n useStoreSavedSignature,\n type KeypairSource,\n type SavedSignature,\n} from './saved-signature'\n\nexport {\n createFileShare,\n getFileShare,\n useFileShare,\n useFileSharePdf,\n useFileShares,\n fileShareBytes,\n fileShareSigningRequest,\n signFileShare,\n type FileShare,\n type CreateFileShare,\n} from './file-shares'\n"],
|
|
5
|
+
"mappings": "AACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAYK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAIK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OAIK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP,SAAS,mBAA0C;AACnD,SAAS,mBAAmB;AAC5B;AAAA,EACE;AAAA,EACA;AAAA,OAGK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAQK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAIK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAcK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAGK;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { parseVersionRef } from "../artifacts/versions.js";
|
|
2
|
+
class DocumentFetchError extends Error {
|
|
3
|
+
status;
|
|
4
|
+
constructor(message, status) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.name = "DocumentFetchError";
|
|
7
|
+
this.status = status;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
async function fetchDocumentBytes(client, endpoint, documentRef, options, headers, what) {
|
|
11
|
+
const ref = parseVersionRef(documentRef);
|
|
12
|
+
const version = options.version ?? ref.version;
|
|
13
|
+
const { data, response } = await client.GET(endpoint, {
|
|
14
|
+
params: {
|
|
15
|
+
path: { document_ext_id: ref.docId },
|
|
16
|
+
query: {
|
|
17
|
+
...version ? { version } : {},
|
|
18
|
+
...options.workspaceExtId ? { workspace_ext_id: options.workspaceExtId } : {}
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
headers,
|
|
22
|
+
parseAs: "blob",
|
|
23
|
+
signal: options.signal
|
|
24
|
+
});
|
|
25
|
+
if (!response.ok || !(data instanceof Blob)) {
|
|
26
|
+
throw new DocumentFetchError(
|
|
27
|
+
`${what} could not be loaded (${response.status})`,
|
|
28
|
+
response.status
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
return { blob: data, response };
|
|
32
|
+
}
|
|
33
|
+
function contentDispositionFileName(header) {
|
|
34
|
+
if (!header) return void 0;
|
|
35
|
+
const extended = /filename\*\s*=\s*(?:[\w-]+)?'[^']*'([^;]+)/i.exec(header);
|
|
36
|
+
if (extended) {
|
|
37
|
+
try {
|
|
38
|
+
return decodeURIComponent(extended[1].trim().replace(/^"|"$/g, "")) || void 0;
|
|
39
|
+
} catch {
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const plain = /filename\s*=\s*("((?:[^"\\]|\\.)*)"|[^;]+)/i.exec(header);
|
|
43
|
+
if (!plain) return void 0;
|
|
44
|
+
const name = plain[2] !== void 0 ? plain[2].replace(/\\(.)/g, "$1") : plain[1].trim();
|
|
45
|
+
return name || void 0;
|
|
46
|
+
}
|
|
47
|
+
async function fetchDocumentPdf(client, documentRef, options = {}) {
|
|
48
|
+
const { blob } = await fetchDocumentBytes(
|
|
49
|
+
client,
|
|
50
|
+
"/v1/document/{document_ext_id}/view",
|
|
51
|
+
documentRef,
|
|
52
|
+
options,
|
|
53
|
+
{ Accept: "application/pdf" },
|
|
54
|
+
"The PDF"
|
|
55
|
+
);
|
|
56
|
+
return blob;
|
|
57
|
+
}
|
|
58
|
+
async function fetchDocumentFile(client, documentRef, options = {}) {
|
|
59
|
+
const { blob, response } = await fetchDocumentBytes(
|
|
60
|
+
client,
|
|
61
|
+
"/v1/document/{document_ext_id}/download",
|
|
62
|
+
documentRef,
|
|
63
|
+
options,
|
|
64
|
+
{},
|
|
65
|
+
"The file"
|
|
66
|
+
);
|
|
67
|
+
const name = contentDispositionFileName(response.headers.get("Content-Disposition"));
|
|
68
|
+
return name ? new File([blob], name, { type: blob.type }) : blob;
|
|
69
|
+
}
|
|
70
|
+
export {
|
|
71
|
+
DocumentFetchError,
|
|
72
|
+
contentDispositionFileName,
|
|
73
|
+
fetchDocumentFile,
|
|
74
|
+
fetchDocumentPdf
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=document-pdf.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/document-tools/document-pdf.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * A document's bytes, through the host's API client: the PDF the viewer and the tools draw on\n * (`/view`: the file itself for a PDF, its PDF rendering for a Word or text file) and the stored\n * file (`/download`). Either takes a document id or a version reference `doc-\u2026@v{n}`.\n */\n\nimport { parseVersionRef } from '../artifacts/versions'\nimport type { DocumentToolsClient } from './environment'\n\nexport interface DocumentFetchOptions {\n /** The version to fetch. Default: the one `documentRef` names, else the current version. */\n version?: number | null\n workspaceExtId?: string\n signal?: AbortSignal\n}\n\n/** A document's bytes could not be fetched; `status` is the HTTP status. */\nexport class DocumentFetchError extends Error {\n readonly status: number\n constructor(message: string, status: number) {\n super(message)\n this.name = 'DocumentFetchError'\n this.status = status\n }\n}\n\nasync function fetchDocumentBytes(\n client: DocumentToolsClient,\n endpoint: '/v1/document/{document_ext_id}/view' | '/v1/document/{document_ext_id}/download',\n documentRef: string,\n options: DocumentFetchOptions,\n headers: Record<string, string>,\n what: string\n): Promise<{ blob: Blob; response: Response }> {\n const ref = parseVersionRef(documentRef)\n const version = options.version ?? ref.version\n const { data, response } = await client.GET(endpoint, {\n params: {\n path: { document_ext_id: ref.docId },\n query: {\n ...(version ? { version } : {}),\n ...(options.workspaceExtId ? { workspace_ext_id: options.workspaceExtId } : {}),\n },\n },\n headers,\n parseAs: 'blob',\n signal: options.signal,\n })\n if (!response.ok || !(data instanceof Blob)) {\n throw new DocumentFetchError(\n `${what} could not be loaded (${response.status})`,\n response.status\n )\n }\n return { blob: data, response }\n}\n\n/**\n * The file name a `Content-Disposition` header gives, or `undefined`. Prefers the RFC 5987\n * `filename*=UTF-8''\u2026` form (percent-encoded, any script) over the plain `filename=`.\n */\nexport function contentDispositionFileName(header: string | null | undefined): string | undefined {\n if (!header) return undefined\n const extended = /filename\\*\\s*=\\s*(?:[\\w-]+)?'[^']*'([^;]+)/i.exec(header)\n if (extended) {\n try {\n return decodeURIComponent(extended[1].trim().replace(/^\"|\"$/g, '')) || undefined\n } catch {\n // A malformed escape: fall back to the plain parameter.\n }\n }\n const plain = /filename\\s*=\\s*(\"((?:[^\"\\\\]|\\\\.)*)\"|[^;]+)/i.exec(header)\n if (!plain) return undefined\n const name = plain[2] !== undefined ? plain[2].replace(/\\\\(.)/g, '$1') : plain[1].trim()\n return name || undefined\n}\n\n/**\n * The PDF of a document version: `GET /v1/document/{id}/view?version=` with\n * `Accept: application/pdf`. Throws a {@link DocumentFetchError} when there is none (yet).\n */\nexport async function fetchDocumentPdf(\n client: DocumentToolsClient,\n documentRef: string,\n options: DocumentFetchOptions = {}\n): Promise<Blob> {\n const { blob } = await fetchDocumentBytes(\n client,\n '/v1/document/{document_ext_id}/view',\n documentRef,\n options,\n { Accept: 'application/pdf' },\n 'The PDF'\n )\n return blob\n}\n\n/**\n * The stored file of a document version, as uploaded: `GET /v1/document/{id}/download`. When the\n * server names the file (`Content-Disposition`), the result is a `File` carrying that name.\n */\nexport async function fetchDocumentFile(\n client: DocumentToolsClient,\n documentRef: string,\n options: DocumentFetchOptions = {}\n): Promise<Blob | File> {\n const { blob, response } = await fetchDocumentBytes(\n client,\n '/v1/document/{document_ext_id}/download',\n documentRef,\n options,\n {},\n 'The file'\n )\n const name = contentDispositionFileName(response.headers.get('Content-Disposition'))\n return name ? new File([blob], name, { type: blob.type }) : blob\n}\n"],
|
|
5
|
+
"mappings": "AAMA,SAAS,uBAAuB;AAWzB,MAAM,2BAA2B,MAAM;AAAA,EACnC;AAAA,EACT,YAAY,SAAiB,QAAgB;AAC3C,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,SAAS;AAAA,EAChB;AACF;AAEA,eAAe,mBACb,QACA,UACA,aACA,SACA,SACA,MAC6C;AAC7C,QAAM,MAAM,gBAAgB,WAAW;AACvC,QAAM,UAAU,QAAQ,WAAW,IAAI;AACvC,QAAM,EAAE,MAAM,SAAS,IAAI,MAAM,OAAO,IAAI,UAAU;AAAA,IACpD,QAAQ;AAAA,MACN,MAAM,EAAE,iBAAiB,IAAI,MAAM;AAAA,MACnC,OAAO;AAAA,QACL,GAAI,UAAU,EAAE,QAAQ,IAAI,CAAC;AAAA,QAC7B,GAAI,QAAQ,iBAAiB,EAAE,kBAAkB,QAAQ,eAAe,IAAI,CAAC;AAAA,MAC/E;AAAA,IACF;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT,QAAQ,QAAQ;AAAA,EAClB,CAAC;AACD,MAAI,CAAC,SAAS,MAAM,EAAE,gBAAgB,OAAO;AAC3C,UAAM,IAAI;AAAA,MACR,GAAG,IAAI,yBAAyB,SAAS,MAAM;AAAA,MAC/C,SAAS;AAAA,IACX;AAAA,EACF;AACA,SAAO,EAAE,MAAM,MAAM,SAAS;AAChC;AAMO,SAAS,2BAA2B,QAAuD;AAChG,MAAI,CAAC,OAAQ,QAAO;AACpB,QAAM,WAAW,8CAA8C,KAAK,MAAM;AAC1E,MAAI,UAAU;AACZ,QAAI;AACF,aAAO,mBAAmB,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,UAAU,EAAE,CAAC,KAAK;AAAA,IACzE,QAAQ;AAAA,IAER;AAAA,EACF;AACA,QAAM,QAAQ,8CAA8C,KAAK,MAAM;AACvE,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,OAAO,MAAM,CAAC,MAAM,SAAY,MAAM,CAAC,EAAE,QAAQ,UAAU,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK;AACvF,SAAO,QAAQ;AACjB;AAMA,eAAsB,iBACpB,QACA,aACA,UAAgC,CAAC,GAClB;AACf,QAAM,EAAE,KAAK,IAAI,MAAM;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,EAAE,QAAQ,kBAAkB;AAAA,IAC5B;AAAA,EACF;AACA,SAAO;AACT;AAMA,eAAsB,kBACpB,QACA,aACA,UAAgC,CAAC,GACX;AACtB,QAAM,EAAE,MAAM,SAAS,IAAI,MAAM;AAAA,IAC/B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,CAAC;AAAA,IACD;AAAA,EACF;AACA,QAAM,OAAO,2BAA2B,SAAS,QAAQ,IAAI,qBAAqB,CAAC;AACnF,SAAO,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,MAAM,EAAE,MAAM,KAAK,KAAK,CAAC,IAAI;AAC9D;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useCallback, useContext, useMemo, useRef } from "react";
|
|
3
|
+
import { useDeploymentDomain } from "../useArbi.js";
|
|
4
|
+
function uploadQueryString(query) {
|
|
5
|
+
const params = new URLSearchParams();
|
|
6
|
+
for (const [key, value] of Object.entries(query)) {
|
|
7
|
+
if (value === null || value === void 0) continue;
|
|
8
|
+
for (const item of Array.isArray(value) ? value : [value]) params.append(key, String(item));
|
|
9
|
+
}
|
|
10
|
+
return params.toString();
|
|
11
|
+
}
|
|
12
|
+
function downloadBlob(blob, fileName) {
|
|
13
|
+
const url = URL.createObjectURL(blob);
|
|
14
|
+
const a = document.createElement("a");
|
|
15
|
+
a.href = url;
|
|
16
|
+
a.download = fileName;
|
|
17
|
+
document.body.appendChild(a);
|
|
18
|
+
a.click();
|
|
19
|
+
a.remove();
|
|
20
|
+
setTimeout(() => URL.revokeObjectURL(url), 6e4);
|
|
21
|
+
}
|
|
22
|
+
function clientUpload(client) {
|
|
23
|
+
return async ({ file, query }) => {
|
|
24
|
+
const formData = new FormData();
|
|
25
|
+
formData.append("files", file);
|
|
26
|
+
const { data, response } = await client.POST("/v1/document/upload", {
|
|
27
|
+
params: { query },
|
|
28
|
+
// The schema types the multipart body as `{ files: string[] }`; the FormData is sent as is.
|
|
29
|
+
body: formData,
|
|
30
|
+
bodySerializer: () => formData
|
|
31
|
+
});
|
|
32
|
+
if (!response.ok) throw new Error(`Upload failed with status ${response.status}`);
|
|
33
|
+
return data;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function defaultCertificateUrl(reference) {
|
|
37
|
+
const origin = typeof location === "undefined" ? "" : location.origin;
|
|
38
|
+
return `${origin}/verify/${encodeURIComponent(reference)}`;
|
|
39
|
+
}
|
|
40
|
+
function certificateLink(signature, certificateUrl) {
|
|
41
|
+
if (certificateUrl) return certificateUrl(signature.reference);
|
|
42
|
+
return signature.certificate_url || defaultCertificateUrl(signature.reference);
|
|
43
|
+
}
|
|
44
|
+
const DocumentToolsContext = createContext(null);
|
|
45
|
+
function DocumentToolsProvider({ children, ...env }) {
|
|
46
|
+
const arbiDeploymentDomain = useDeploymentDomain();
|
|
47
|
+
const guards = useRef(/* @__PURE__ */ new Map());
|
|
48
|
+
const pendingFlushes = useRef(/* @__PURE__ */ new Map());
|
|
49
|
+
const registerBeforeFileShare = useCallback((id, flush) => {
|
|
50
|
+
guards.current.set(id, flush);
|
|
51
|
+
return () => {
|
|
52
|
+
if (guards.current.get(id) !== flush) return;
|
|
53
|
+
guards.current.delete(id);
|
|
54
|
+
const pending = flush();
|
|
55
|
+
pendingFlushes.current.set(id, pending);
|
|
56
|
+
void pending.then(
|
|
57
|
+
() => {
|
|
58
|
+
if (pendingFlushes.current.get(id) === pending) pendingFlushes.current.delete(id);
|
|
59
|
+
},
|
|
60
|
+
() => {
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
};
|
|
64
|
+
}, []);
|
|
65
|
+
const prepareFileShare = useCallback(async (id) => {
|
|
66
|
+
const guard = guards.current.get(id);
|
|
67
|
+
if (guard) {
|
|
68
|
+
await guard();
|
|
69
|
+
pendingFlushes.current.delete(id);
|
|
70
|
+
} else await pendingFlushes.current.get(id);
|
|
71
|
+
}, []);
|
|
72
|
+
const {
|
|
73
|
+
client,
|
|
74
|
+
deploymentDomain,
|
|
75
|
+
user,
|
|
76
|
+
notify,
|
|
77
|
+
openDocument,
|
|
78
|
+
onDocumentsChanged,
|
|
79
|
+
uploadDocument,
|
|
80
|
+
saveFile,
|
|
81
|
+
emailDocument,
|
|
82
|
+
certificateUrl
|
|
83
|
+
} = env;
|
|
84
|
+
const value = useMemo(
|
|
85
|
+
() => ({
|
|
86
|
+
client,
|
|
87
|
+
prepareFileShare,
|
|
88
|
+
registerBeforeFileShare,
|
|
89
|
+
deploymentDomain: deploymentDomain ?? arbiDeploymentDomain,
|
|
90
|
+
user,
|
|
91
|
+
openDocument,
|
|
92
|
+
onDocumentsChanged,
|
|
93
|
+
emailDocument,
|
|
94
|
+
notify: notify ?? (() => {
|
|
95
|
+
}),
|
|
96
|
+
saveFile: saveFile ?? downloadBlob,
|
|
97
|
+
uploadDocument: uploadDocument ?? clientUpload(client),
|
|
98
|
+
certificateUrl
|
|
99
|
+
}),
|
|
100
|
+
[
|
|
101
|
+
client,
|
|
102
|
+
prepareFileShare,
|
|
103
|
+
registerBeforeFileShare,
|
|
104
|
+
deploymentDomain,
|
|
105
|
+
arbiDeploymentDomain,
|
|
106
|
+
user,
|
|
107
|
+
notify,
|
|
108
|
+
openDocument,
|
|
109
|
+
onDocumentsChanged,
|
|
110
|
+
uploadDocument,
|
|
111
|
+
saveFile,
|
|
112
|
+
emailDocument,
|
|
113
|
+
certificateUrl
|
|
114
|
+
]
|
|
115
|
+
);
|
|
116
|
+
return /* @__PURE__ */ jsx(DocumentToolsContext.Provider, { value, children });
|
|
117
|
+
}
|
|
118
|
+
function useOptionalDocumentTools() {
|
|
119
|
+
return useContext(DocumentToolsContext);
|
|
120
|
+
}
|
|
121
|
+
function useDocumentTools() {
|
|
122
|
+
const env = useContext(DocumentToolsContext);
|
|
123
|
+
if (!env) throw new Error("The document tools must be used within a <DocumentToolsProvider>");
|
|
124
|
+
return env;
|
|
125
|
+
}
|
|
126
|
+
export {
|
|
127
|
+
DocumentToolsProvider,
|
|
128
|
+
certificateLink,
|
|
129
|
+
clientUpload,
|
|
130
|
+
defaultCertificateUrl,
|
|
131
|
+
downloadBlob,
|
|
132
|
+
uploadQueryString,
|
|
133
|
+
useDocumentTools,
|
|
134
|
+
useOptionalDocumentTools
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/document-tools/environment.tsx"],
|
|
4
|
+
"sourcesContent": ["/**\n * The host app's side of the document tools (markup, freeze, e-signing, versions): the one place\n * the tools reach the app. They never import a store, a router, a toast library or app API code;\n * the host passes what it has to `<DocumentToolsProvider>` and every optional field has a default.\n *\n * `client` is an openapi-fetch client for the ARBI API (`ArbiClient['fetch']` from\n * `@arbidocs/client`, or `arbi.getClient().fetch` from an `@arbidocs/sdk` `Arbi`), signed in with the\n * user's session; it carries the auth.\n */\n\nimport { createContext, useCallback, useContext, useMemo, useRef, type ReactNode } from 'react'\nimport type { ArbiClient, operations } from '@arbidocs/client'\nimport { useDeploymentDomain } from '../useArbi'\n\nexport type DocumentToolsClient = ArbiClient['fetch']\n\nexport type DocumentToolsNoticeKind = 'success' | 'error' | 'info' | 'warning'\n\nexport interface DocumentToolsNoticeOptions {\n /** A second line under the message. */\n description?: string\n /** One action button on the notice (\"Email it\"). */\n action?: { label: string; onClick: () => void }\n}\n\nexport type DocumentToolsNotify = (\n message: string,\n kind: DocumentToolsNoticeKind,\n options?: DocumentToolsNoticeOptions\n) => void\n\nexport interface DocumentToolsUser {\n /** The name marks are authored as and the signer's name is prefilled with. */\n name: string\n /** The sign-in email: signing re-derives the user's key from it and the password. */\n email?: string | null\n /** The user's id (usr-*): which fields of a signature request are theirs. */\n externalId?: string | null\n}\n\n/** What changed about a document, so the host can refresh its own lists and caches. */\nexport type DocumentChange =\n /** A version's markup got its first mark or lost its last one. */\n | 'markup'\n /** A signature was added: the document has a new current version. */\n | 'signed'\n /** A new document was made from it (a frozen copy). The ids are the NEW documents. */\n | 'copy'\n /** A new version was saved (the Word editor's Save version): the document's current version. */\n | 'version'\n\n/**\n * The `/v1/document/upload` query, typed from the API schema: `derived_from` is a list (a\n * production set is derived from every document in it), `shared` a boolean.\n */\nexport type DocumentUploadQuery = NonNullable<operations['upload_documents']['parameters']['query']>\n\nexport interface DocumentUploadRequest {\n file: File\n /** `/v1/document/upload` query: `derived_from`, `derived_role`, `shared`, `folder`. */\n query: DocumentUploadQuery\n}\n\n/**\n * The upload query as a URL query string, for a host that posts the upload itself (an XHR with\n * progress): a list repeats its key (`derived_from=a&derived_from=b`), empty values are left out.\n */\nexport function uploadQueryString(query: DocumentUploadQuery): string {\n const params = new URLSearchParams()\n for (const [key, value] of Object.entries(query)) {\n if (value === null || value === undefined) continue\n for (const item of Array.isArray(value) ? value : [value]) params.append(key, String(item))\n }\n return params.toString()\n}\n\nexport interface DocumentToolsEnvironment {\n client: DocumentToolsClient\n /**\n * The deployment domain the user's keys are derived for. Needed for signing. Default: the one\n * the host's `Arbi` computes (`arbi.getDeploymentDomain()`), if any.\n */\n deploymentDomain?: string\n /** The signed-in user; marks are authored as \"You\" without one, and signing is unavailable. */\n user?: DocumentToolsUser | null\n /** Surface a transient message. Default: none (errors still show inline where they can). */\n notify?: DocumentToolsNotify\n /** Open a document or a version reference (`doc-\u2026@v2`): the copy just made, the signed copy. */\n openDocument?: (documentRef: string) => void\n /**\n * Documents changed on the server (see {@link DocumentChange}); refresh the host's lists. The\n * tools wait for it before opening the document, so a copy is listed when it opens.\n */\n onDocumentsChanged?: (documentIds: string[], change: DocumentChange) => void | Promise<void>\n /** Upload a derived copy. Default: `POST /v1/document/upload` through `client`. */\n uploadDocument?: (\n request: DocumentUploadRequest\n ) => Promise<{ doc_ext_ids?: string[] } | undefined>\n /** Save a file to the user's computer. Default: a temporary download link. */\n saveFile?: (blob: Blob, fileName: string) => void\n /** Email a document (offered once it is signed). Omitted: no \"Email it\". */\n emailDocument?: (documentRef: string) => void\n /**\n * The public page that checks a signature (the certificate) in this app. When given, \"View\n * certificate\" opens it in preference to the backend's `certificate_url` (which is on the\n * deployment domain, like the link embedded in the signed PDF). Without it: the backend's\n * `certificate_url`, else `/verify/{reference}` on this origin.\n */\n certificateUrl?: (reference: string) => string\n}\n\n/** The environment with every default filled in. */\nexport interface ResolvedDocumentToolsEnvironment extends DocumentToolsEnvironment {\n prepareFileShare: (documentId: string) => Promise<void>\n registerBeforeFileShare: (documentId: string, flush: () => Promise<void>) => () => void\n notify: DocumentToolsNotify\n saveFile: (blob: Blob, fileName: string) => void\n uploadDocument: (\n request: DocumentUploadRequest\n ) => Promise<{ doc_ext_ids?: string[] } | undefined>\n}\n\n/**\n * Save a blob through a temporary `<a download>`. The object URL is revoked a minute later, not at\n * once: revoking straight after `click()` can cancel the download (Safari, and large files\n * elsewhere) before the browser has read the blob.\n */\nexport function downloadBlob(blob: Blob, fileName: string): void {\n const url = URL.createObjectURL(blob)\n const a = document.createElement('a')\n a.href = url\n a.download = fileName\n document.body.appendChild(a)\n a.click()\n a.remove()\n setTimeout(() => URL.revokeObjectURL(url), 60_000)\n}\n\n/** The default upload: multipart `files` to `/v1/document/upload` through the API client. */\nexport function clientUpload(client: DocumentToolsClient) {\n return async ({ file, query }: DocumentUploadRequest) => {\n const formData = new FormData()\n formData.append('files', file)\n const { data, response } = await client.POST('/v1/document/upload', {\n params: { query },\n // The schema types the multipart body as `{ files: string[] }`; the FormData is sent as is.\n body: formData as unknown as { files: string[] },\n bodySerializer: () => formData,\n })\n if (!response.ok) throw new Error(`Upload failed with status ${response.status}`)\n return data\n }\n}\n\nexport function defaultCertificateUrl(reference: string): string {\n const origin = typeof location === 'undefined' ? '' : location.origin\n return `${origin}/verify/${encodeURIComponent(reference)}`\n}\n\n/**\n * Where \"View certificate\" goes for a signature: the host's `certificateUrl(reference)` when it\n * gives one, else the `certificate_url` the backend returned, else `/verify/{reference}` here.\n */\nexport function certificateLink(\n signature: { reference: string; certificate_url?: string | null },\n certificateUrl?: (reference: string) => string\n): string {\n if (certificateUrl) return certificateUrl(signature.reference)\n return signature.certificate_url || defaultCertificateUrl(signature.reference)\n}\n\nconst DocumentToolsContext = createContext<ResolvedDocumentToolsEnvironment | null>(null)\n\nexport interface DocumentToolsProviderProps extends DocumentToolsEnvironment {\n children: ReactNode\n}\n\nexport function DocumentToolsProvider({ children, ...env }: DocumentToolsProviderProps) {\n const arbiDeploymentDomain = useDeploymentDomain()\n const guards = useRef(new Map<string, () => Promise<void>>())\n const pendingFlushes = useRef(new Map<string, Promise<void>>())\n const registerBeforeFileShare = useCallback((id: string, flush: () => Promise<void>) => {\n guards.current.set(id, flush)\n return () => {\n if (guards.current.get(id) !== flush) return\n guards.current.delete(id)\n const pending = flush()\n pendingFlushes.current.set(id, pending)\n void pending.then(\n () => {\n if (pendingFlushes.current.get(id) === pending) pendingFlushes.current.delete(id)\n },\n () => {}\n )\n }\n }, [])\n const prepareFileShare = useCallback(async (id: string) => {\n const guard = guards.current.get(id)\n if (guard) {\n await guard()\n pendingFlushes.current.delete(id)\n } else await pendingFlushes.current.get(id)\n }, [])\n const {\n client,\n deploymentDomain,\n user,\n notify,\n openDocument,\n onDocumentsChanged,\n uploadDocument,\n saveFile,\n emailDocument,\n certificateUrl,\n } = env\n const value = useMemo<ResolvedDocumentToolsEnvironment>(\n () => ({\n client,\n prepareFileShare,\n registerBeforeFileShare,\n deploymentDomain: deploymentDomain ?? arbiDeploymentDomain,\n user,\n openDocument,\n onDocumentsChanged,\n emailDocument,\n notify: notify ?? (() => {}),\n saveFile: saveFile ?? downloadBlob,\n uploadDocument: uploadDocument ?? clientUpload(client),\n certificateUrl,\n }),\n [\n client,\n prepareFileShare,\n registerBeforeFileShare,\n deploymentDomain,\n arbiDeploymentDomain,\n user,\n notify,\n openDocument,\n onDocumentsChanged,\n uploadDocument,\n saveFile,\n emailDocument,\n certificateUrl,\n ]\n )\n return <DocumentToolsContext.Provider value={value}>{children}</DocumentToolsContext.Provider>\n}\n\n/** The host's environment, or `null` outside a `<DocumentToolsProvider>`. */\nexport function useOptionalDocumentTools(): ResolvedDocumentToolsEnvironment | null {\n return useContext(DocumentToolsContext)\n}\n\n/** The host's environment; throws outside a `<DocumentToolsProvider>`. */\nexport function useDocumentTools(): ResolvedDocumentToolsEnvironment {\n const env = useContext(DocumentToolsContext)\n if (!env) throw new Error('The document tools must be used within a <DocumentToolsProvider>')\n return env\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { useQuery } from "@tanstack/react-query";
|
|
2
|
+
import { arbiQueryKeys } from "../query-keys.js";
|
|
3
|
+
import { signMessage, unlockIdentityWithPassword } from "@arbidocs/client";
|
|
4
|
+
import { intentText, sha256Hex } from "./signing.js";
|
|
5
|
+
function failure(error) {
|
|
6
|
+
const detail = error?.detail;
|
|
7
|
+
return new Error(typeof detail === "string" ? detail : "The shared file request failed");
|
|
8
|
+
}
|
|
9
|
+
async function createFileShare(client, documentId, body) {
|
|
10
|
+
const result = await client.POST("/v1/document/{document_ext_id}/file-shares", {
|
|
11
|
+
params: { path: { document_ext_id: documentId } },
|
|
12
|
+
body
|
|
13
|
+
});
|
|
14
|
+
if (!result.data) throw failure(result.error);
|
|
15
|
+
return result.data;
|
|
16
|
+
}
|
|
17
|
+
async function getFileShare(client, id) {
|
|
18
|
+
const result = await client.GET("/v1/file-shares/{share_id}", {
|
|
19
|
+
params: { path: { share_id: id } }
|
|
20
|
+
});
|
|
21
|
+
if (!result.data) throw failure(result.error);
|
|
22
|
+
return result.data;
|
|
23
|
+
}
|
|
24
|
+
async function fileShareBytes(client, id, kind) {
|
|
25
|
+
const result = await client.GET("/v1/file-shares/{share_id}/file", {
|
|
26
|
+
params: { path: { share_id: id }, query: { kind } },
|
|
27
|
+
parseAs: "blob"
|
|
28
|
+
});
|
|
29
|
+
if (!result.data) throw failure(result.error);
|
|
30
|
+
return result.data;
|
|
31
|
+
}
|
|
32
|
+
function fileShareSigningRequest(share) {
|
|
33
|
+
return {
|
|
34
|
+
external_id: share.external_id,
|
|
35
|
+
doc_ext_id: share.document_ext_id,
|
|
36
|
+
version: share.version,
|
|
37
|
+
source_sha256: share.source_sha256,
|
|
38
|
+
fields: share.fields,
|
|
39
|
+
message: share.message,
|
|
40
|
+
status: share.status === "signing" ? "sent" : share.status === "completed" ? "completed" : "voided",
|
|
41
|
+
signers: share.recipients.filter((r) => r.permission === "sign").map((r) => ({
|
|
42
|
+
external_id: r.email,
|
|
43
|
+
email: r.email,
|
|
44
|
+
name: r.email,
|
|
45
|
+
status: r.status === "signed" ? "signed" : "pending",
|
|
46
|
+
progress: r.status === "signed" ? "signed" : "registered",
|
|
47
|
+
fields: share.fields.filter((f) => f.signer === r.email).length
|
|
48
|
+
})),
|
|
49
|
+
created_at: (/* @__PURE__ */ new Date(0)).toISOString(),
|
|
50
|
+
stale: false
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
async function signFileShare(client, domain, vars) {
|
|
54
|
+
const path = { share_id: vars.request.external_id };
|
|
55
|
+
const body = { adopted: vars.adopted, fields: vars.fields };
|
|
56
|
+
const prepared = await client.POST("/v1/file-shares/{share_id}/sign/prepare", {
|
|
57
|
+
params: { path },
|
|
58
|
+
body
|
|
59
|
+
});
|
|
60
|
+
if (!prepared.data) throw failure(prepared.error);
|
|
61
|
+
const { statement, timestamp, source_sha256, intent } = prepared.data;
|
|
62
|
+
if (source_sha256 !== vars.request.source_sha256 || await sha256Hex(vars.pdfBlob) !== source_sha256)
|
|
63
|
+
throw new Error("The shared file changed. Ask the sender for a new request.");
|
|
64
|
+
if (intent !== intentText({ name: vars.adopted.name }))
|
|
65
|
+
throw new Error("Signing statement mismatch");
|
|
66
|
+
const identity = await unlockIdentityWithPassword(vars.email, vars.password, domain);
|
|
67
|
+
const result = await client.POST("/v1/file-shares/{share_id}/sign", {
|
|
68
|
+
params: { path },
|
|
69
|
+
body: { ...body, timestamp, signature: signMessage(statement, identity) }
|
|
70
|
+
});
|
|
71
|
+
if (!result.data) throw failure(result.error);
|
|
72
|
+
return {
|
|
73
|
+
request: fileShareSigningRequest(result.data),
|
|
74
|
+
completed: result.data.status === "completed"
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function useFileShare(client, shareId, signing) {
|
|
78
|
+
return useQuery({
|
|
79
|
+
queryKey: arbiQueryKeys.fileShare(shareId),
|
|
80
|
+
queryFn: () => getFileShare(client, shareId),
|
|
81
|
+
refetchInterval: signing ? false : 5e3
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
function useFileSharePdf(client, shareId, share) {
|
|
85
|
+
return useQuery({
|
|
86
|
+
queryKey: arbiQueryKeys.fileSharePdf(shareId, share?.status),
|
|
87
|
+
queryFn: () => fileShareBytes(client, shareId, share?.status === "completed" ? "signed" : "view"),
|
|
88
|
+
enabled: !!share?.can_preview,
|
|
89
|
+
staleTime: Infinity
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
function useFileShares(client) {
|
|
93
|
+
return useQuery({
|
|
94
|
+
queryKey: arbiQueryKeys.fileShares(),
|
|
95
|
+
queryFn: async () => {
|
|
96
|
+
const result = await client.GET("/v1/file-shares");
|
|
97
|
+
if (!result.data) throw new Error("Could not load shared files");
|
|
98
|
+
return result.data;
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
export {
|
|
103
|
+
createFileShare,
|
|
104
|
+
fileShareBytes,
|
|
105
|
+
fileShareSigningRequest,
|
|
106
|
+
getFileShare,
|
|
107
|
+
signFileShare,
|
|
108
|
+
useFileShare,
|
|
109
|
+
useFileSharePdf,
|
|
110
|
+
useFileShares
|
|
111
|
+
};
|
|
112
|
+
//# sourceMappingURL=file-shares.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/document-tools/file-shares.ts"],
|
|
4
|
+
"sourcesContent": ["import { useQuery } from '@tanstack/react-query'\nimport { arbiQueryKeys } from '../query-keys'\n/** Share one immutable file version with named recipients, independently of workspace membership. */\nimport { signMessage, unlockIdentityWithPassword, type components } from '@arbidocs/client'\nimport type { DocumentToolsClient } from './environment'\nimport { intentText, sha256Hex } from './signing'\nimport type {\n SignatureRequest,\n SignRequestVars,\n SignRequestSignResponse,\n} from './signature-requests'\n\nexport type FileShare = components['schemas']['FileShareResponse']\nexport type CreateFileShare = components['schemas']['CreateFileShare']\n\nfunction failure(error: unknown): Error {\n const detail = (error as { detail?: unknown } | undefined)?.detail\n return new Error(typeof detail === 'string' ? detail : 'The shared file request failed')\n}\n\nexport async function createFileShare(\n client: DocumentToolsClient,\n documentId: string,\n body: CreateFileShare\n) {\n const result = await client.POST('/v1/document/{document_ext_id}/file-shares', {\n params: { path: { document_ext_id: documentId } },\n body,\n })\n if (!result.data) throw failure(result.error)\n return result.data\n}\n\nexport async function getFileShare(client: DocumentToolsClient, id: string): Promise<FileShare> {\n const result = await client.GET('/v1/file-shares/{share_id}', {\n params: { path: { share_id: id } },\n })\n if (!result.data) throw failure(result.error)\n return result.data\n}\n\nexport async function fileShareBytes(\n client: DocumentToolsClient,\n id: string,\n kind: 'view' | 'original' | 'signed'\n) {\n const result = await client.GET('/v1/file-shares/{share_id}/file', {\n params: { path: { share_id: id }, query: { kind } },\n parseAs: 'blob',\n })\n if (!result.data) throw failure(result.error)\n return result.data\n}\n\n/** Adapt only the guided viewer's presentation data; sharing uses its own authorization endpoints. */\nexport function fileShareSigningRequest(share: FileShare): SignatureRequest {\n return {\n external_id: share.external_id,\n doc_ext_id: share.document_ext_id,\n version: share.version,\n source_sha256: share.source_sha256,\n fields: share.fields,\n message: share.message,\n status:\n share.status === 'signing' ? 'sent' : share.status === 'completed' ? 'completed' : 'voided',\n signers: share.recipients\n .filter((r) => r.permission === 'sign')\n .map((r) => ({\n external_id: r.email,\n email: r.email,\n name: r.email,\n status: r.status === 'signed' ? 'signed' : 'pending',\n progress: r.status === 'signed' ? 'signed' : 'registered',\n fields: share.fields.filter((f) => f.signer === r.email).length,\n })),\n created_at: new Date(0).toISOString(),\n stale: false,\n }\n}\n\nexport async function signFileShare(\n client: DocumentToolsClient,\n domain: string,\n vars: SignRequestVars\n): Promise<SignRequestSignResponse> {\n const path = { share_id: vars.request.external_id }\n const body = { adopted: vars.adopted, fields: vars.fields }\n const prepared = await client.POST('/v1/file-shares/{share_id}/sign/prepare', {\n params: { path },\n body,\n })\n if (!prepared.data) throw failure(prepared.error)\n const { statement, timestamp, source_sha256, intent } = prepared.data\n if (\n source_sha256 !== vars.request.source_sha256 ||\n (await sha256Hex(vars.pdfBlob)) !== source_sha256\n )\n throw new Error('The shared file changed. Ask the sender for a new request.')\n if (intent !== intentText({ name: vars.adopted.name }))\n throw new Error('Signing statement mismatch')\n const identity = await unlockIdentityWithPassword(vars.email, vars.password, domain)\n const result = await client.POST('/v1/file-shares/{share_id}/sign', {\n params: { path },\n body: { ...body, timestamp, signature: signMessage(statement, identity) },\n })\n if (!result.data) throw failure(result.error)\n return {\n request: fileShareSigningRequest(result.data),\n completed: result.data.status === 'completed',\n }\n}\n\nexport function useFileShare(client: DocumentToolsClient, shareId: string, signing: boolean) {\n return useQuery({\n queryKey: arbiQueryKeys.fileShare(shareId),\n queryFn: () => getFileShare(client, shareId),\n refetchInterval: signing ? false : 5000,\n })\n}\n\nexport function useFileSharePdf(client: DocumentToolsClient, shareId: string, share?: FileShare) {\n return useQuery({\n queryKey: arbiQueryKeys.fileSharePdf(shareId, share?.status),\n queryFn: () =>\n fileShareBytes(client, shareId, share?.status === 'completed' ? 'signed' : 'view'),\n enabled: !!share?.can_preview,\n staleTime: Infinity,\n })\n}\n\nexport function useFileShares(client: DocumentToolsClient) {\n return useQuery({\n queryKey: arbiQueryKeys.fileShares(),\n queryFn: async () => {\n const result = await client.GET('/v1/file-shares')\n if (!result.data) throw new Error('Could not load shared files')\n return result.data\n },\n })\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|