@arbidocs/blocks 0.5.20 → 0.5.21
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/{ConnectedNativeDocxComparison-KUDFJ3GG.js → ConnectedNativeDocxComparison-4X7H57LE.js} +9 -9
- package/dist/{ConnectedStreamedWordArtifact-JD2XZCYP.js.map → ConnectedNativeDocxComparison-4X7H57LE.js.map} +1 -1
- package/dist/{ConnectedNativeDocxComparison-FUNR66KP.cjs → ConnectedNativeDocxComparison-7WTVHEKI.cjs} +10 -10
- package/dist/{ConnectedNativeDocxComparison-FUNR66KP.cjs.map → ConnectedNativeDocxComparison-7WTVHEKI.cjs.map} +1 -1
- package/dist/{ConnectedNativeDocxEditor-G6R3SFZ3.js → ConnectedNativeDocxEditor-I6RQUSR3.js} +7 -7
- package/dist/{ConnectedNativeDocxEditor-G6R3SFZ3.js.map → ConnectedNativeDocxEditor-I6RQUSR3.js.map} +1 -1
- package/dist/{ConnectedNativeDocxEditor-XVCAXAAU.cjs → ConnectedNativeDocxEditor-PZ2ASQO3.cjs} +9 -9
- package/dist/{ConnectedNativeDocxEditor-XVCAXAAU.cjs.map → ConnectedNativeDocxEditor-PZ2ASQO3.cjs.map} +1 -1
- package/dist/{ConnectedStreamedWordArtifact-JD2XZCYP.js → ConnectedStreamedWordArtifact-KCYSJ3B2.js} +9 -9
- package/dist/{ConnectedNativeDocxComparison-KUDFJ3GG.js.map → ConnectedStreamedWordArtifact-KCYSJ3B2.js.map} +1 -1
- package/dist/{ConnectedStreamedWordArtifact-P55WP3MC.cjs → ConnectedStreamedWordArtifact-Q5KC4W7O.cjs} +10 -10
- package/dist/ConnectedStreamedWordArtifact-Q5KC4W7O.cjs.map +1 -0
- package/dist/{NativeDocxEditor-6O7UMP7Y.cjs → NativeDocxEditor-JUTTA46L.cjs} +8 -8
- package/dist/{NativeDocxEditor-6O7UMP7Y.cjs.map → NativeDocxEditor-JUTTA46L.cjs.map} +1 -1
- package/dist/{NativeDocxEditor-MHO7LF4E.js → NativeDocxEditor-PSC3JWWA.js} +4 -4
- package/dist/{NativeDocxEditor-MHO7LF4E.js.map → NativeDocxEditor-PSC3JWWA.js.map} +1 -1
- package/dist/{WorkspaceTableView-UR3WLSJG.cjs → WorkspaceTableView-6JVHGDUB.cjs} +8 -8
- package/dist/{WorkspaceTableView-UR3WLSJG.cjs.map → WorkspaceTableView-6JVHGDUB.cjs.map} +1 -1
- package/dist/{WorkspaceTableView-TNUEU6OO.js → WorkspaceTableView-ECPHGWHF.js} +6 -6
- package/dist/{WorkspaceTableView-TNUEU6OO.js.map → WorkspaceTableView-ECPHGWHF.js.map} +1 -1
- package/dist/agents/index.cjs +326 -326
- package/dist/agents/index.js +4 -4
- package/dist/auth/index.cjs +44 -44
- package/dist/auth/index.js +2 -2
- package/dist/auth0/index.cjs +4 -3
- package/dist/auth0/index.cjs.map +1 -1
- package/dist/auth0/index.js +4 -3
- package/dist/auth0/index.js.map +1 -1
- package/dist/{chunk-BQNDBWLB.js → chunk-4ML5AMMO.js} +3 -3
- package/dist/{chunk-BQNDBWLB.js.map → chunk-4ML5AMMO.js.map} +1 -1
- package/dist/{chunk-ODFDMORE.cjs → chunk-4S34OHJX.cjs} +4 -4
- package/dist/{chunk-ODFDMORE.cjs.map → chunk-4S34OHJX.cjs.map} +1 -1
- package/dist/{chunk-QS3AJ3FT.cjs → chunk-5H37UWWS.cjs} +5 -5
- package/dist/{chunk-QS3AJ3FT.cjs.map → chunk-5H37UWWS.cjs.map} +1 -1
- package/dist/{chunk-2FQ4CMRY.cjs → chunk-5ZU2XYXO.cjs} +278 -4
- package/dist/chunk-5ZU2XYXO.cjs.map +1 -0
- package/dist/{chunk-JS7KJRKG.js → chunk-75Z5AUMM.js} +3 -3
- package/dist/{chunk-JS7KJRKG.js.map → chunk-75Z5AUMM.js.map} +1 -1
- package/dist/chunk-BITGO5LI.cjs +18 -0
- package/dist/{chunk-WDCD3OZH.cjs.map → chunk-BITGO5LI.cjs.map} +1 -1
- package/dist/{chunk-E2SKI6VO.js → chunk-D3BHUDOU.js} +3 -3
- package/dist/{chunk-E2SKI6VO.js.map → chunk-D3BHUDOU.js.map} +1 -1
- package/dist/{chunk-WJZK5GAV.js → chunk-DTENNALR.js} +3 -3
- package/dist/{chunk-WJZK5GAV.js.map → chunk-DTENNALR.js.map} +1 -1
- package/dist/{chunk-P5RZPEHW.cjs → chunk-F2BYURQZ.cjs} +5 -5
- package/dist/{chunk-P5RZPEHW.cjs.map → chunk-F2BYURQZ.cjs.map} +1 -1
- package/dist/{chunk-HNGGKANF.js → chunk-F6LC2CRB.js} +5 -5
- package/dist/{chunk-HNGGKANF.js.map → chunk-F6LC2CRB.js.map} +1 -1
- package/dist/{chunk-MBRUUST5.js → chunk-F7IQGPZH.js} +4 -4
- package/dist/{chunk-MBRUUST5.js.map → chunk-F7IQGPZH.js.map} +1 -1
- package/dist/{chunk-X2SQZY7U.js → chunk-FERNQVSH.js} +274 -8
- package/dist/chunk-FERNQVSH.js.map +1 -0
- package/dist/{chunk-KBSKN3NF.cjs → chunk-FQIJICZE.cjs} +9 -9
- package/dist/{chunk-KBSKN3NF.cjs.map → chunk-FQIJICZE.cjs.map} +1 -1
- package/dist/{chunk-SSJLYCX7.cjs → chunk-FV32BTXV.cjs} +84 -56
- package/dist/chunk-FV32BTXV.cjs.map +1 -0
- package/dist/{chunk-2YZ35KKK.cjs → chunk-FZVAJFRH.cjs} +80 -84
- package/dist/chunk-FZVAJFRH.cjs.map +1 -0
- package/dist/{chunk-HHJALHRS.js → chunk-H5XHCIWY.js} +83 -55
- package/dist/chunk-H5XHCIWY.js.map +1 -0
- package/dist/{chunk-TBNXJHTP.js → chunk-IA5BYEO7.js} +7 -5
- package/dist/chunk-IA5BYEO7.js.map +1 -0
- package/dist/{chunk-NFTANEP6.cjs → chunk-IJQ5DIZT.cjs} +5 -5
- package/dist/{chunk-NFTANEP6.cjs.map → chunk-IJQ5DIZT.cjs.map} +1 -1
- package/dist/{chunk-NMZI3K6R.cjs → chunk-IRY63R4L.cjs} +16 -2
- package/dist/chunk-IRY63R4L.cjs.map +1 -0
- package/dist/{chunk-MVP7METT.js → chunk-IXBJEQH5.js} +4 -80
- package/dist/chunk-IXBJEQH5.js.map +1 -0
- package/dist/{chunk-PAKPD3LB.js → chunk-JKJI5SRF.js} +3 -3
- package/dist/{chunk-PAKPD3LB.js.map → chunk-JKJI5SRF.js.map} +1 -1
- package/dist/{chunk-EWRRV37Z.cjs → chunk-K237IYOD.cjs} +2 -80
- package/dist/chunk-K237IYOD.cjs.map +1 -0
- package/dist/chunk-KL6XOSEN.js +156 -0
- package/dist/chunk-KL6XOSEN.js.map +1 -0
- package/dist/{chunk-TRDY3ZT7.js → chunk-LU23I2HS.js} +3 -3
- package/dist/{chunk-TRDY3ZT7.js.map → chunk-LU23I2HS.js.map} +1 -1
- package/dist/{chunk-SAYEQE5R.cjs → chunk-MJT7KHHT.cjs} +48 -48
- package/dist/{chunk-SAYEQE5R.cjs.map → chunk-MJT7KHHT.cjs.map} +1 -1
- package/dist/chunk-MSCDYRSA.cjs +18 -0
- package/dist/{chunk-JPNFVDH4.cjs.map → chunk-MSCDYRSA.cjs.map} +1 -1
- package/dist/chunk-MSPNYW6Z.cjs +165 -0
- package/dist/chunk-MSPNYW6Z.cjs.map +1 -0
- package/dist/{chunk-2R3GGNPA.js → chunk-MZA7GMOH.js} +16 -3
- package/dist/chunk-MZA7GMOH.js.map +1 -0
- package/dist/{chunk-4UGVMOTK.cjs → chunk-NML42O7Q.cjs} +4 -4
- package/dist/{chunk-4UGVMOTK.cjs.map → chunk-NML42O7Q.cjs.map} +1 -1
- package/dist/{chunk-YKGZG353.js → chunk-NVRJ6WTR.js} +3 -3
- package/dist/{chunk-YKGZG353.js.map → chunk-NVRJ6WTR.js.map} +1 -1
- package/dist/{chunk-ZW4QFL3Y.cjs → chunk-PFVCOUU6.cjs} +13 -13
- package/dist/{chunk-ZW4QFL3Y.cjs.map → chunk-PFVCOUU6.cjs.map} +1 -1
- package/dist/{chunk-QLLV5UUI.cjs → chunk-PSIKUQYM.cjs} +5 -5
- package/dist/{chunk-QLLV5UUI.cjs.map → chunk-PSIKUQYM.cjs.map} +1 -1
- package/dist/{chunk-R53JJZNW.js → chunk-RVKVGS72.js} +76 -79
- package/dist/chunk-RVKVGS72.js.map +1 -0
- package/dist/{chunk-H32DV7XS.cjs → chunk-UAEYU2NN.cjs} +136 -2
- package/dist/chunk-UAEYU2NN.cjs.map +1 -0
- package/dist/{chunk-USZ32EKR.js → chunk-VFZLZSJ3.js} +4 -4
- package/dist/{chunk-USZ32EKR.js.map → chunk-VFZLZSJ3.js.map} +1 -1
- package/dist/{chunk-XRL4R2TT.js → chunk-WZ63HE2C.js} +136 -4
- package/dist/chunk-WZ63HE2C.js.map +1 -0
- package/dist/{chunk-F72ZD5Q2.cjs → chunk-YD3RN2FY.cjs} +3 -3
- package/dist/{chunk-F72ZD5Q2.cjs.map → chunk-YD3RN2FY.cjs.map} +1 -1
- package/dist/{chunk-VYFRW6NN.cjs → chunk-YRHQ7OLG.cjs} +3 -3
- package/dist/{chunk-VYFRW6NN.cjs.map → chunk-YRHQ7OLG.cjs.map} +1 -1
- package/dist/{chunk-PYJUIEYV.js → chunk-YT5OOFK3.js} +3 -3
- package/dist/{chunk-PYJUIEYV.js.map → chunk-YT5OOFK3.js.map} +1 -1
- package/dist/{chunk-XCL6ZCI5.js → chunk-Z6CAKLA5.js} +3 -3
- package/dist/{chunk-XCL6ZCI5.js.map → chunk-Z6CAKLA5.js.map} +1 -1
- package/dist/{chunk-RAYCOBF7.cjs → chunk-ZESMRGDV.cjs} +7 -5
- package/dist/chunk-ZESMRGDV.cjs.map +1 -0
- package/dist/{chunk-6FWUZGPF.js → chunk-ZMYK7XTS.js} +4 -4
- package/dist/{chunk-6FWUZGPF.js.map → chunk-ZMYK7XTS.js.map} +1 -1
- package/dist/connect/docx.cjs +13 -13
- package/dist/connect/docx.js +9 -9
- package/dist/connect/index.cjs +1138 -906
- package/dist/connect/index.cjs.map +1 -1
- package/dist/connect/index.d.ts +1 -0
- package/dist/connect/index.js +480 -249
- package/dist/connect/index.js.map +1 -1
- package/dist/connect/viewer.cjs +17 -17
- package/dist/connect/viewer.js +6 -6
- package/dist/connection/ConnectedAccountAccessBadge.d.ts +1 -0
- package/dist/connection/ConnectedSettings.d.ts +6 -2
- package/dist/connection/ConnectedSsoDisconnect.d.ts +2 -0
- package/dist/connection/auth/support.d.ts +1 -0
- package/dist/connection/auth/useLoginActions.d.ts +1 -1
- package/dist/connection/settings-page/ConnectedAccountSettings.d.ts +5 -1
- package/dist/document-tools/AdoptSignatureDialog.d.ts +3 -1
- package/dist/document-tools/index.cjs +20 -20
- package/dist/document-tools/index.js +3 -3
- package/dist/document-tools/viewer/index.cjs +10 -10
- package/dist/document-tools/viewer/index.js +3 -3
- package/dist/docx/index.cjs +51 -51
- package/dist/docx/index.js +4 -4
- package/dist/facts/index.cjs +55 -55
- package/dist/facts/index.js +3 -3
- package/dist/home/index.cjs +15 -16
- package/dist/home/index.cjs.map +1 -1
- package/dist/home/index.js +1 -2
- package/dist/home/index.js.map +1 -1
- package/dist/index.cjs +425 -425
- package/dist/index.js +7 -7
- package/dist/settings/IdentityVerification.d.ts +3 -1
- package/dist/settings/ProfileCard.d.ts +3 -1
- package/dist/settings/SettingsPanel.d.ts +6 -0
- package/dist/settings/SubscriptionParts.d.ts +0 -11
- package/dist/settings/index.cjs +162 -166
- package/dist/settings/index.d.ts +1 -1
- package/dist/settings/index.js +3 -3
- package/dist/workflow-canvas/index.cjs +17 -17
- package/dist/workflow-canvas/index.js +4 -4
- package/dist/workspaces/WorkspaceFormParts.d.ts +10 -2
- package/dist/workspaces/index.cjs +52 -287
- package/dist/workspaces/index.cjs.map +1 -1
- package/dist/workspaces/index.js +9 -268
- package/dist/workspaces/index.js.map +1 -1
- package/node_modules/@arbidocs/coedit/package.json +1 -1
- package/package.json +5 -5
- package/dist/ConnectedStreamedWordArtifact-P55WP3MC.cjs.map +0 -1
- package/dist/chunk-2FQ4CMRY.cjs.map +0 -1
- package/dist/chunk-2R3GGNPA.js.map +0 -1
- package/dist/chunk-2YZ35KKK.cjs.map +0 -1
- package/dist/chunk-5TDGVOR5.js +0 -142
- package/dist/chunk-5TDGVOR5.js.map +0 -1
- package/dist/chunk-6AXJBTHM.js +0 -77
- package/dist/chunk-6AXJBTHM.js.map +0 -1
- package/dist/chunk-EWRRV37Z.cjs.map +0 -1
- package/dist/chunk-H32DV7XS.cjs.map +0 -1
- package/dist/chunk-HHJALHRS.js.map +0 -1
- package/dist/chunk-JPNFVDH4.cjs +0 -18
- package/dist/chunk-MKNSIZWR.cjs +0 -84
- package/dist/chunk-MKNSIZWR.cjs.map +0 -1
- package/dist/chunk-MVP7METT.js.map +0 -1
- package/dist/chunk-NMZI3K6R.cjs.map +0 -1
- package/dist/chunk-R53JJZNW.js.map +0 -1
- package/dist/chunk-RAYCOBF7.cjs.map +0 -1
- package/dist/chunk-REH7PX3N.cjs +0 -145
- package/dist/chunk-REH7PX3N.cjs.map +0 -1
- package/dist/chunk-SSJLYCX7.cjs.map +0 -1
- package/dist/chunk-TBNXJHTP.js.map +0 -1
- package/dist/chunk-WDCD3OZH.cjs +0 -18
- package/dist/chunk-X2SQZY7U.js.map +0 -1
- package/dist/chunk-XRL4R2TT.js.map +0 -1
package/dist/agents/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export { AgentCard, AgentGallery, ConversationListView, ConversationTurnSpeaker, DEFAULT_AGENT_CARD_LABELS, DEFAULT_AGENT_GALLERY_LABELS, DEFAULT_SKILL_CARD_LABELS, DEFAULT_SKILL_ROW_LABELS, DEFAULT_TASKS_CHROME_LABELS, DEFAULT_TASK_LIST_LABELS, DEFAULT_TASK_OUTPUTS_CELL_LABELS, DEFAULT_TASK_STATUS_PILL_LABELS, DEFAULT_TASK_THREAD_CHIP_LABELS, DEFAULT_UPLOAD_TASK_ITEM_LABELS, DEFAULT_UPLOAD_TASK_LIST_LABELS, DEFAULT_WORKFLOWS_CHROME_LABELS, SkillCard, SkillRow, TASK_COLUMN_ORDER, TaskInbox, TaskMoveDialog, TaskOutputsCell, TaskStatusPill, TaskTable, TaskThreadChip, TasksToolbar, ThreadNotifyDialog, UploadTaskItem, UploadTaskList, WorkflowsToolbar, createTaskColumns, filterConversationRows, formatElapsed, useWorkflowPreview } from '../chunk-
|
|
3
|
-
export { ANNOTATE, ANNOTATE_ID, AUTOMATION_EVENTS, ActionStepBody, AgentAvatarField, AgentBar, AgentBarIconButton, AgentBarMenu, AgentBarNotes, AgentBarProbeAnswer, AgentBarQueuedNote, AgentBarStatus, AgentConnectInstructions, AgentCreateView, AgentCreatedView, AgentCreator, AgentEditView, AgentMainView, AgentTypeSelector, ApprovalEvidence, AssigneeLine, AssistantEntity, BUILTIN_SKILLS, CHRONOLOGY, CHRONOLOGY_ID, CUSTOM_TASK, CUSTOM_TASK_ID, CapabilityGrid, CapabilityTile, ConfigField, ConfigForm, ConsentActions, ConsentBulletList, ConsentCard, ConsentFootnote, ConsentHeader, ConsentMessage, ConsentNotice, ConsentPage, ConsentPermissionList, ConsentSection, ConsentStrong, ConsentText, CopyableUrl, DASHBOARD_OPERATIONS, DASHBOARD_PINNED, DEEP_RESEARCH, DEEP_RESEARCH_ID, DEFAULT_AGENT_AVATAR_FIELD_LABELS, DEFAULT_AGENT_BAR_LABELS, DEFAULT_AGENT_CAPABILITIES, DEFAULT_AGENT_CREATOR_LABELS, DEFAULT_AGENT_STEPS_LABELS, DEFAULT_AGENT_TEMPLATES, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TYPE_SELECTOR_LABELS, DEFAULT_AUTHORIZE_AGENT_LABELS, DEFAULT_CONFIG_FIELD_LABELS, DEFAULT_CONFIG_FORM_LABELS, DEFAULT_CONSENT_ACTIONS_LABELS, DEFAULT_COPYABLE_URL_LABELS, DEFAULT_NEW_THREAD_DIALOG_LABELS, DEFAULT_PILL_SELECT_LABELS, DEFAULT_RECURRENCE, DEFAULT_RECURRENCE_BUILDER_LABELS, DEFAULT_SKILL_EDIT_FORM_LABELS, DEFAULT_SKILL_GENERATE_FORM_LABELS, DEFAULT_SKILL_GLOBAL_BADGE_LABELS, DEFAULT_SKILL_VIEW_TOGGLE_LABELS, DEFAULT_STEP_BAR_LABELS, DEFAULT_SUBAGENT_ROSTER_LABELS, DEFAULT_TASK_ACTIVITY_LABELS, DEFAULT_TASK_COMPOSER_LABELS, DEFAULT_TASK_PLAN_LABELS, DEFAULT_TASK_RUNS_DIALOG_LABELS, DEFAULT_THREAD_LAUNCHER_LABELS, DEFAULT_THREAD_STATE_LABELS, DEFAULT_TUPLE_ARRAY_FIELD_LABELS, DEFAULT_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_RUN_STATUS_LABELS, DEFAULT_WORKFLOW_STEP_PARTS_LABELS, DEFAULT_WORKFLOW_THREAD_STRIP_LABELS, DERIVED_NAME_WORDS, EMPTY_NEW_THREAD, GENERATE_IMAGE, GENERATE_IMAGE_ID, GoalCriteria, IMAGE_ASPECT_AUTO, IMAGE_ASPECT_RATIOS, MAX_TASK_DEPTH, MODEL_NAME_ICONS, MODEL_TIER_ICON_MAP, MODEL_TIER_LABELS, NewThreadDialog, PillSelect, REMIND_TASK, REMIND_TASK_ID, RecurrenceBuilder, SKILL_FIELD_TYPE_LABELS, SKILL_MAIN_FILENAME, SKILL_SOURCE_LABELS, SKILL_TYPES, SKILL_TYPE_LABELS, STATUS_LABELS, STATUS_ORDER, STATUS_TONE, STEP_ICON_MAP, SUMMARISE, SUMMARISE_ID, SendBackControl, SkillActionButton, SkillDetail, SkillDetailSection, SkillEditForm, SkillFilterChips, SkillGenerateForm, SkillGlobalBadge, SkillLibraryDetail, SkillTile, SkillTypeBadge, SkillViewToggle, StepDetail, StepNarration, StepOutcome, StepParams, StepRow, StepSummary, StepTrace, StepTraceSummary, SubAgentLane, SubStepGroup, SubagentRoster, TAG_ICONS, TIMELINE, TIMELINE_ID, TIMELINE_PROMPT, TOOL_ICON_MAP, TRANSLATE, TRANSLATE_ID, TRANSLATE_LANGUAGES, TRIGGER_LABELS, TaskActivityDialog, TaskActivityTimeline, TaskComposer, TaskEmptyState, TaskFlow, TaskPlan, TaskRunsDialog, TaskStartDialog, ThreadActivity, ThreadLauncher, ThreadStatusLine, TupleArrayField, WEB_WORKFLOWS, WEEKDAYS, WORD_ASK, WORD_ASK_ID, WORD_CONTINUE, WORD_CONTINUE_ID, WORD_SUMMARISE, WORD_SUMMARISE_ID, WORD_SUPPORT, WORD_SUPPORT_ID, WORD_WORKFLOWS, WORKFLOW_REGISTRY, WorkflowRunStatus, WorkflowRunner, WorkflowStepAction, WorkflowThreadStartedBy, WorkflowThreadStrip, activeStepId, agentConfigSectionToValues, agentCreatorToConfigSection, asTaskStatus, authModeFor, buildLibrarySkills, buildRRule, buildTaskRows, buildZipSkillImport, closeWorkflowLaunch, compactThreadActivity, composePersona, composerToTaskQuery, composerToWorkRequest, composerToWorkflowRequest, composerToWorkflowUpdate, createsWork, defaultScopeRenderer, defaultTaskComposerValues, deriveAgentName, deriveAnnotationName, deriveWorkflowName, descendantIds, describeRRule, describeTrigger, filterLibrarySkills, firstWords, fromPlanAssignee, fromPlanDocumentRef, fromPlanSteps, getAgentStepIcon, getAgentStepPresentation, getCurrentAgentStepPresentation, getModelIcon, goalProgress, groupThreadActivity, hasTaskFields, humanizeSection, importMarkdownSkill, importSkillFile, importSkillFromUrl, indexTasks, inferType, inputDocumentIds, isAgenticWorkflow, isIncompleteSignal, isMainSkillFile, isOutOfBounds, isPlainTodo, isSupersededStop, isValidAgentName, isoToLocalInput, latestMessageTime, layoutFromPlanSteps, linkedRunsFromActivity, localInputToIso, moveTargets, newThreadToRequest, nextCriterionId, notifiedLabel, openWorkflowLaunch, ownerExtId, parseRRule, parseSkillFrontmatter, prettifyKey, readSkillArchive, recordWorkflowUse, renderWorkflowIcon, resetWorkflowUsage, resolveScopeInputs, serializeSkill, skillSlug, sortByRecentUse, stepAccent, stepWindow, stripPersonaPreamble, summarizeAgent, summarizeCapabilities, taskActivityHeadline, taskComposerToCreateRequest, taskComposerToUpdateRequest, taskNeedsAccess, taskToComposerValues, toPlanAssignee, toPlanDocumentRef, toPlanSteps, unnotifiedMentions, useWorkflowLaunchRequest, useWorkflowUsage, useWorkflowView, workflowFromSkillMarkdown, workflowTaskFields, workflowToComposerValues, workflowToSkillMarkdown, workflowWhen } from '../chunk-
|
|
2
|
+
export { AgentCard, AgentGallery, ConversationListView, ConversationTurnSpeaker, DEFAULT_AGENT_CARD_LABELS, DEFAULT_AGENT_GALLERY_LABELS, DEFAULT_SKILL_CARD_LABELS, DEFAULT_SKILL_ROW_LABELS, DEFAULT_TASKS_CHROME_LABELS, DEFAULT_TASK_LIST_LABELS, DEFAULT_TASK_OUTPUTS_CELL_LABELS, DEFAULT_TASK_STATUS_PILL_LABELS, DEFAULT_TASK_THREAD_CHIP_LABELS, DEFAULT_UPLOAD_TASK_ITEM_LABELS, DEFAULT_UPLOAD_TASK_LIST_LABELS, DEFAULT_WORKFLOWS_CHROME_LABELS, SkillCard, SkillRow, TASK_COLUMN_ORDER, TaskInbox, TaskMoveDialog, TaskOutputsCell, TaskStatusPill, TaskTable, TaskThreadChip, TasksToolbar, ThreadNotifyDialog, UploadTaskItem, UploadTaskList, WorkflowsToolbar, createTaskColumns, filterConversationRows, formatElapsed, useWorkflowPreview } from '../chunk-F7IQGPZH.js';
|
|
3
|
+
export { ANNOTATE, ANNOTATE_ID, AUTOMATION_EVENTS, ActionStepBody, AgentAvatarField, AgentBar, AgentBarIconButton, AgentBarMenu, AgentBarNotes, AgentBarProbeAnswer, AgentBarQueuedNote, AgentBarStatus, AgentConnectInstructions, AgentCreateView, AgentCreatedView, AgentCreator, AgentEditView, AgentMainView, AgentTypeSelector, ApprovalEvidence, AssigneeLine, AssistantEntity, BUILTIN_SKILLS, CHRONOLOGY, CHRONOLOGY_ID, CUSTOM_TASK, CUSTOM_TASK_ID, CapabilityGrid, CapabilityTile, ConfigField, ConfigForm, ConsentActions, ConsentBulletList, ConsentCard, ConsentFootnote, ConsentHeader, ConsentMessage, ConsentNotice, ConsentPage, ConsentPermissionList, ConsentSection, ConsentStrong, ConsentText, CopyableUrl, DASHBOARD_OPERATIONS, DASHBOARD_PINNED, DEEP_RESEARCH, DEEP_RESEARCH_ID, DEFAULT_AGENT_AVATAR_FIELD_LABELS, DEFAULT_AGENT_BAR_LABELS, DEFAULT_AGENT_CAPABILITIES, DEFAULT_AGENT_CREATOR_LABELS, DEFAULT_AGENT_STEPS_LABELS, DEFAULT_AGENT_TEMPLATES, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TYPE_SELECTOR_LABELS, DEFAULT_AUTHORIZE_AGENT_LABELS, DEFAULT_CONFIG_FIELD_LABELS, DEFAULT_CONFIG_FORM_LABELS, DEFAULT_CONSENT_ACTIONS_LABELS, DEFAULT_COPYABLE_URL_LABELS, DEFAULT_NEW_THREAD_DIALOG_LABELS, DEFAULT_PILL_SELECT_LABELS, DEFAULT_RECURRENCE, DEFAULT_RECURRENCE_BUILDER_LABELS, DEFAULT_SKILL_EDIT_FORM_LABELS, DEFAULT_SKILL_GENERATE_FORM_LABELS, DEFAULT_SKILL_GLOBAL_BADGE_LABELS, DEFAULT_SKILL_VIEW_TOGGLE_LABELS, DEFAULT_STEP_BAR_LABELS, DEFAULT_SUBAGENT_ROSTER_LABELS, DEFAULT_TASK_ACTIVITY_LABELS, DEFAULT_TASK_COMPOSER_LABELS, DEFAULT_TASK_PLAN_LABELS, DEFAULT_TASK_RUNS_DIALOG_LABELS, DEFAULT_THREAD_LAUNCHER_LABELS, DEFAULT_THREAD_STATE_LABELS, DEFAULT_TUPLE_ARRAY_FIELD_LABELS, DEFAULT_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_RUN_STATUS_LABELS, DEFAULT_WORKFLOW_STEP_PARTS_LABELS, DEFAULT_WORKFLOW_THREAD_STRIP_LABELS, DERIVED_NAME_WORDS, EMPTY_NEW_THREAD, GENERATE_IMAGE, GENERATE_IMAGE_ID, GoalCriteria, IMAGE_ASPECT_AUTO, IMAGE_ASPECT_RATIOS, MAX_TASK_DEPTH, MODEL_NAME_ICONS, MODEL_TIER_ICON_MAP, MODEL_TIER_LABELS, NewThreadDialog, PillSelect, REMIND_TASK, REMIND_TASK_ID, RecurrenceBuilder, SKILL_FIELD_TYPE_LABELS, SKILL_MAIN_FILENAME, SKILL_SOURCE_LABELS, SKILL_TYPES, SKILL_TYPE_LABELS, STATUS_LABELS, STATUS_ORDER, STATUS_TONE, STEP_ICON_MAP, SUMMARISE, SUMMARISE_ID, SendBackControl, SkillActionButton, SkillDetail, SkillDetailSection, SkillEditForm, SkillFilterChips, SkillGenerateForm, SkillGlobalBadge, SkillLibraryDetail, SkillTile, SkillTypeBadge, SkillViewToggle, StepDetail, StepNarration, StepOutcome, StepParams, StepRow, StepSummary, StepTrace, StepTraceSummary, SubAgentLane, SubStepGroup, SubagentRoster, TAG_ICONS, TIMELINE, TIMELINE_ID, TIMELINE_PROMPT, TOOL_ICON_MAP, TRANSLATE, TRANSLATE_ID, TRANSLATE_LANGUAGES, TRIGGER_LABELS, TaskActivityDialog, TaskActivityTimeline, TaskComposer, TaskEmptyState, TaskFlow, TaskPlan, TaskRunsDialog, TaskStartDialog, ThreadActivity, ThreadLauncher, ThreadStatusLine, TupleArrayField, WEB_WORKFLOWS, WEEKDAYS, WORD_ASK, WORD_ASK_ID, WORD_CONTINUE, WORD_CONTINUE_ID, WORD_SUMMARISE, WORD_SUMMARISE_ID, WORD_SUPPORT, WORD_SUPPORT_ID, WORD_WORKFLOWS, WORKFLOW_REGISTRY, WorkflowRunStatus, WorkflowRunner, WorkflowStepAction, WorkflowThreadStartedBy, WorkflowThreadStrip, activeStepId, agentConfigSectionToValues, agentCreatorToConfigSection, asTaskStatus, authModeFor, buildLibrarySkills, buildRRule, buildTaskRows, buildZipSkillImport, closeWorkflowLaunch, compactThreadActivity, composePersona, composerToTaskQuery, composerToWorkRequest, composerToWorkflowRequest, composerToWorkflowUpdate, createsWork, defaultScopeRenderer, defaultTaskComposerValues, deriveAgentName, deriveAnnotationName, deriveWorkflowName, descendantIds, describeRRule, describeTrigger, filterLibrarySkills, firstWords, fromPlanAssignee, fromPlanDocumentRef, fromPlanSteps, getAgentStepIcon, getAgentStepPresentation, getCurrentAgentStepPresentation, getModelIcon, goalProgress, groupThreadActivity, hasTaskFields, humanizeSection, importMarkdownSkill, importSkillFile, importSkillFromUrl, indexTasks, inferType, inputDocumentIds, isAgenticWorkflow, isIncompleteSignal, isMainSkillFile, isOutOfBounds, isPlainTodo, isSupersededStop, isValidAgentName, isoToLocalInput, latestMessageTime, layoutFromPlanSteps, linkedRunsFromActivity, localInputToIso, moveTargets, newThreadToRequest, nextCriterionId, notifiedLabel, openWorkflowLaunch, ownerExtId, parseRRule, parseSkillFrontmatter, prettifyKey, readSkillArchive, recordWorkflowUse, renderWorkflowIcon, resetWorkflowUsage, resolveScopeInputs, serializeSkill, skillSlug, sortByRecentUse, stepAccent, stepWindow, stripPersonaPreamble, summarizeAgent, summarizeCapabilities, taskActivityHeadline, taskComposerToCreateRequest, taskComposerToUpdateRequest, taskNeedsAccess, taskToComposerValues, toPlanAssignee, toPlanDocumentRef, toPlanSteps, unnotifiedMentions, useWorkflowLaunchRequest, useWorkflowUsage, useWorkflowView, workflowFromSkillMarkdown, workflowTaskFields, workflowToComposerValues, workflowToSkillMarkdown, workflowWhen } from '../chunk-DTENNALR.js';
|
|
4
4
|
import '../chunk-CQCC7LE7.js';
|
|
5
|
-
export { AgentSelect, DEFAULT_AGENT_SELECT_LABELS, DEFAULT_SCHEMA_FORM_LABELS, DEFAULT_TASK_TRIGGER_CHIP_LABELS, DEFAULT_WORKFLOW_CONFIG_DIALOG_LABELS, DEFAULT_WORKFLOW_DOCUMENTS_FIELD_LABELS, DEFAULT_WORKFLOW_LIST_LABELS, PersonPill, SchemaForm, TaskTriggerChip, WORKFLOW_COLUMN_ORDER, WorkflowConfigDialog, WorkflowDocumentsField, WorkflowLauncher, WorkflowsTable, buildWorkflowScopeSource, createWorkflowColumns, documentScopeLabels, hasTrigger, isSkillRow, matchWorkflowScope, workflowStatus, workflowTriggerType } from '../chunk-
|
|
5
|
+
export { AgentSelect, DEFAULT_AGENT_SELECT_LABELS, DEFAULT_SCHEMA_FORM_LABELS, DEFAULT_TASK_TRIGGER_CHIP_LABELS, DEFAULT_WORKFLOW_CONFIG_DIALOG_LABELS, DEFAULT_WORKFLOW_DOCUMENTS_FIELD_LABELS, DEFAULT_WORKFLOW_LIST_LABELS, PersonPill, SchemaForm, TaskTriggerChip, WORKFLOW_COLUMN_ORDER, WorkflowConfigDialog, WorkflowDocumentsField, WorkflowLauncher, WorkflowsTable, buildWorkflowScopeSource, createWorkflowColumns, documentScopeLabels, hasTrigger, isSkillRow, matchWorkflowScope, workflowStatus, workflowTriggerType } from '../chunk-YT5OOFK3.js';
|
|
6
6
|
import '../chunk-KMF3ORIV.js';
|
|
7
7
|
import '../chunk-G4GLDQLY.js';
|
|
8
8
|
import '../chunk-M4S75AEJ.js';
|
|
@@ -12,9 +12,9 @@ import '../chunk-RLWIUUQ5.js';
|
|
|
12
12
|
import '../chunk-YU2KUMGE.js';
|
|
13
13
|
import '../chunk-ML62FUHZ.js';
|
|
14
14
|
import '../chunk-7F5Z4K5W.js';
|
|
15
|
+
import '../chunk-WNDIVNPT.js';
|
|
15
16
|
import '../chunk-ABEKUV6L.js';
|
|
16
17
|
import '../chunk-P6GHJSLR.js';
|
|
17
|
-
import '../chunk-WNDIVNPT.js';
|
|
18
18
|
export { DEFAULT_ASSIGNEE_WORDING, DEFAULT_STEP_DOCUMENT_LABELS, DEFAULT_STEP_KIND_LABELS, DEFAULT_STEP_RECORD_LABELS, STEP_KIND_ICONS, StepDocumentButton, StepDocumentCards, StepRecord, WORKFLOW_STEP_KINDS, assigneeName, canAssign, composeStepPrompt, dependsOn, fillRunText, fillStepInputs, initialRunInputs, isPersonAction, isPersonStep, isRunFinished, isSteppedWorkflow, nextAction, orderSteps, reviewInstructions, runFields, runFieldsOf, runThreadTitle, sendBackTargets, splitDocRef, stepConfigProblems, stepDependencies, stepDocuments, stepFields, stepKindOf, stepLevels, stepPhase, stepStatesFromActivity, upstreamSteps, validateStep, validateWorkflowGraph, workflowSteps } from '../chunk-THNTNAYI.js';
|
|
19
19
|
export { EMPTY_WORKFLOW_SCOPE, SKILL_PROMPT_FALLBACK_PLACEHOLDER, SKILL_PROMPT_LABEL, buildLaunch, composeWorkflowPrompt, defaultInputs, fieldToFrontmatter, inputsFromContext, isEmptyWorkflowScope, isWorkflowScope, mergeSkillWorkflows, promptFieldName, skillTitle, skillToWorkflow, validateInputs, workflowAccepts, workflowFromFrontmatter, workflowsAccepting, workflowsForHost } from '../chunk-TZGBRLPK.js';
|
|
20
20
|
import '../chunk-AUS3KBHJ.js';
|
package/dist/auth/index.cjs
CHANGED
|
@@ -1,157 +1,157 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunkMSPNYW6Z_cjs = require('../chunk-MSPNYW6Z.cjs');
|
|
5
|
+
var chunkK237IYOD_cjs = require('../chunk-K237IYOD.cjs');
|
|
6
6
|
var chunkCG757WKY_cjs = require('../chunk-CG757WKY.cjs');
|
|
7
7
|
require('../chunk-MHVNT4J3.cjs');
|
|
8
8
|
require('../chunk-DES3K4SD.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
+
Object.defineProperty(exports, "DEFAULT_SSO_LOGIN_BUTTON_LABELS", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return chunkMSPNYW6Z_cjs.DEFAULT_SSO_LOGIN_BUTTON_LABELS; }
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "SsoLoginButton", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () { return chunkMSPNYW6Z_cjs.SsoLoginButton; }
|
|
19
|
+
});
|
|
12
20
|
Object.defineProperty(exports, "consumeFragmentCredentials", {
|
|
13
21
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
22
|
+
get: function () { return chunkMSPNYW6Z_cjs.consumeFragmentCredentials; }
|
|
15
23
|
});
|
|
16
24
|
Object.defineProperty(exports, "isAuthRoutePath", {
|
|
17
25
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
26
|
+
get: function () { return chunkMSPNYW6Z_cjs.isAuthRoutePath; }
|
|
19
27
|
});
|
|
20
28
|
Object.defineProperty(exports, "normalizeAuthPath", {
|
|
21
29
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
30
|
+
get: function () { return chunkMSPNYW6Z_cjs.normalizeAuthPath; }
|
|
23
31
|
});
|
|
24
32
|
Object.defineProperty(exports, "parseFragmentCredentials", {
|
|
25
33
|
enumerable: true,
|
|
26
|
-
get: function () { return
|
|
34
|
+
get: function () { return chunkMSPNYW6Z_cjs.parseFragmentCredentials; }
|
|
27
35
|
});
|
|
28
36
|
Object.defineProperty(exports, "preserveAuthReturnUrl", {
|
|
29
37
|
enumerable: true,
|
|
30
|
-
get: function () { return
|
|
38
|
+
get: function () { return chunkMSPNYW6Z_cjs.preserveAuthReturnUrl; }
|
|
31
39
|
});
|
|
32
40
|
Object.defineProperty(exports, "useFragmentCredentials", {
|
|
33
41
|
enumerable: true,
|
|
34
|
-
get: function () { return
|
|
42
|
+
get: function () { return chunkMSPNYW6Z_cjs.useFragmentCredentials; }
|
|
35
43
|
});
|
|
36
44
|
Object.defineProperty(exports, "AccountRecoveryDialog", {
|
|
37
45
|
enumerable: true,
|
|
38
|
-
get: function () { return
|
|
46
|
+
get: function () { return chunkK237IYOD_cjs.AccountRecoveryDialog; }
|
|
39
47
|
});
|
|
40
48
|
Object.defineProperty(exports, "AuthAlert", {
|
|
41
49
|
enumerable: true,
|
|
42
|
-
get: function () { return
|
|
50
|
+
get: function () { return chunkK237IYOD_cjs.AuthAlert; }
|
|
43
51
|
});
|
|
44
52
|
Object.defineProperty(exports, "AuthConsent", {
|
|
45
53
|
enumerable: true,
|
|
46
|
-
get: function () { return
|
|
54
|
+
get: function () { return chunkK237IYOD_cjs.AuthConsent; }
|
|
47
55
|
});
|
|
48
56
|
Object.defineProperty(exports, "AuthDivider", {
|
|
49
57
|
enumerable: true,
|
|
50
|
-
get: function () { return
|
|
58
|
+
get: function () { return chunkK237IYOD_cjs.AuthDivider; }
|
|
51
59
|
});
|
|
52
60
|
Object.defineProperty(exports, "AuthField", {
|
|
53
61
|
enumerable: true,
|
|
54
|
-
get: function () { return
|
|
62
|
+
get: function () { return chunkK237IYOD_cjs.AuthField; }
|
|
55
63
|
});
|
|
56
64
|
Object.defineProperty(exports, "AuthFieldBadge", {
|
|
57
65
|
enumerable: true,
|
|
58
|
-
get: function () { return
|
|
66
|
+
get: function () { return chunkK237IYOD_cjs.AuthFieldBadge; }
|
|
59
67
|
});
|
|
60
68
|
Object.defineProperty(exports, "AuthFooterLinks", {
|
|
61
69
|
enumerable: true,
|
|
62
|
-
get: function () { return
|
|
70
|
+
get: function () { return chunkK237IYOD_cjs.AuthFooterLinks; }
|
|
63
71
|
});
|
|
64
72
|
Object.defineProperty(exports, "AuthHeading", {
|
|
65
73
|
enumerable: true,
|
|
66
|
-
get: function () { return
|
|
74
|
+
get: function () { return chunkK237IYOD_cjs.AuthHeading; }
|
|
67
75
|
});
|
|
68
76
|
Object.defineProperty(exports, "AuthHero", {
|
|
69
77
|
enumerable: true,
|
|
70
|
-
get: function () { return
|
|
78
|
+
get: function () { return chunkK237IYOD_cjs.AuthHero; }
|
|
71
79
|
});
|
|
72
80
|
Object.defineProperty(exports, "AuthInput", {
|
|
73
81
|
enumerable: true,
|
|
74
|
-
get: function () { return
|
|
82
|
+
get: function () { return chunkK237IYOD_cjs.AuthInput; }
|
|
75
83
|
});
|
|
76
84
|
Object.defineProperty(exports, "AuthLayout", {
|
|
77
85
|
enumerable: true,
|
|
78
|
-
get: function () { return
|
|
86
|
+
get: function () { return chunkK237IYOD_cjs.AuthLayout; }
|
|
79
87
|
});
|
|
80
88
|
Object.defineProperty(exports, "AuthLink", {
|
|
81
89
|
enumerable: true,
|
|
82
|
-
get: function () { return
|
|
90
|
+
get: function () { return chunkK237IYOD_cjs.AuthLink; }
|
|
83
91
|
});
|
|
84
92
|
Object.defineProperty(exports, "AuthNote", {
|
|
85
93
|
enumerable: true,
|
|
86
|
-
get: function () { return
|
|
94
|
+
get: function () { return chunkK237IYOD_cjs.AuthNote; }
|
|
87
95
|
});
|
|
88
96
|
Object.defineProperty(exports, "AuthOfflineBadge", {
|
|
89
97
|
enumerable: true,
|
|
90
|
-
get: function () { return
|
|
98
|
+
get: function () { return chunkK237IYOD_cjs.AuthOfflineBadge; }
|
|
91
99
|
});
|
|
92
100
|
Object.defineProperty(exports, "AuthSubmitButton", {
|
|
93
101
|
enumerable: true,
|
|
94
|
-
get: function () { return
|
|
102
|
+
get: function () { return chunkK237IYOD_cjs.AuthSubmitButton; }
|
|
95
103
|
});
|
|
96
104
|
Object.defineProperty(exports, "AuthTabs", {
|
|
97
105
|
enumerable: true,
|
|
98
|
-
get: function () { return
|
|
106
|
+
get: function () { return chunkK237IYOD_cjs.AuthTabs; }
|
|
99
107
|
});
|
|
100
108
|
Object.defineProperty(exports, "DEFAULT_ACCOUNT_RECOVERY_DIALOG_LABELS", {
|
|
101
109
|
enumerable: true,
|
|
102
|
-
get: function () { return
|
|
110
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_ACCOUNT_RECOVERY_DIALOG_LABELS; }
|
|
103
111
|
});
|
|
104
112
|
Object.defineProperty(exports, "DEFAULT_AUTH_CONSENT_LABELS", {
|
|
105
113
|
enumerable: true,
|
|
106
|
-
get: function () { return
|
|
114
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_AUTH_CONSENT_LABELS; }
|
|
107
115
|
});
|
|
108
116
|
Object.defineProperty(exports, "DEFAULT_AUTH_FOOTER_LINKS_LABELS", {
|
|
109
117
|
enumerable: true,
|
|
110
|
-
get: function () { return
|
|
118
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_AUTH_FOOTER_LINKS_LABELS; }
|
|
111
119
|
});
|
|
112
120
|
Object.defineProperty(exports, "DEFAULT_AUTH_OFFLINE_BADGE_LABELS", {
|
|
113
121
|
enumerable: true,
|
|
114
|
-
get: function () { return
|
|
122
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_AUTH_OFFLINE_BADGE_LABELS; }
|
|
115
123
|
});
|
|
116
124
|
Object.defineProperty(exports, "DEFAULT_PASSWORD_RULES", {
|
|
117
125
|
enumerable: true,
|
|
118
|
-
get: function () { return
|
|
126
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_PASSWORD_RULES; }
|
|
119
127
|
});
|
|
120
128
|
Object.defineProperty(exports, "DEFAULT_RECOVERY_KEY_DIALOG_LABELS", {
|
|
121
129
|
enumerable: true,
|
|
122
|
-
get: function () { return
|
|
130
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_RECOVERY_KEY_DIALOG_LABELS; }
|
|
123
131
|
});
|
|
124
132
|
Object.defineProperty(exports, "DEFAULT_REVEALABLE_PASSWORD_INPUT_LABELS", {
|
|
125
133
|
enumerable: true,
|
|
126
|
-
get: function () { return
|
|
127
|
-
});
|
|
128
|
-
Object.defineProperty(exports, "DEFAULT_SSO_LOGIN_BUTTON_LABELS", {
|
|
129
|
-
enumerable: true,
|
|
130
|
-
get: function () { return chunkEWRRV37Z_cjs.DEFAULT_SSO_LOGIN_BUTTON_LABELS; }
|
|
134
|
+
get: function () { return chunkK237IYOD_cjs.DEFAULT_REVEALABLE_PASSWORD_INPUT_LABELS; }
|
|
131
135
|
});
|
|
132
136
|
Object.defineProperty(exports, "RecoveryKeyDialog", {
|
|
133
137
|
enumerable: true,
|
|
134
|
-
get: function () { return
|
|
138
|
+
get: function () { return chunkK237IYOD_cjs.RecoveryKeyDialog; }
|
|
135
139
|
});
|
|
136
140
|
Object.defineProperty(exports, "RevealablePasswordInput", {
|
|
137
141
|
enumerable: true,
|
|
138
|
-
get: function () { return
|
|
139
|
-
});
|
|
140
|
-
Object.defineProperty(exports, "SsoLoginButton", {
|
|
141
|
-
enumerable: true,
|
|
142
|
-
get: function () { return chunkEWRRV37Z_cjs.SsoLoginButton; }
|
|
142
|
+
get: function () { return chunkK237IYOD_cjs.RevealablePasswordInput; }
|
|
143
143
|
});
|
|
144
144
|
Object.defineProperty(exports, "createPasswordRules", {
|
|
145
145
|
enumerable: true,
|
|
146
|
-
get: function () { return
|
|
146
|
+
get: function () { return chunkK237IYOD_cjs.createPasswordRules; }
|
|
147
147
|
});
|
|
148
148
|
Object.defineProperty(exports, "parseAuthError", {
|
|
149
149
|
enumerable: true,
|
|
150
|
-
get: function () { return
|
|
150
|
+
get: function () { return chunkK237IYOD_cjs.parseAuthError; }
|
|
151
151
|
});
|
|
152
152
|
Object.defineProperty(exports, "promptSaveCredential", {
|
|
153
153
|
enumerable: true,
|
|
154
|
-
get: function () { return
|
|
154
|
+
get: function () { return chunkK237IYOD_cjs.promptSaveCredential; }
|
|
155
155
|
});
|
|
156
156
|
Object.defineProperty(exports, "DEFAULT_PASSWORD_STRENGTH_INPUT_LABELS", {
|
|
157
157
|
enumerable: true,
|
package/dist/auth/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export { consumeFragmentCredentials, isAuthRoutePath, normalizeAuthPath, parseFragmentCredentials, preserveAuthReturnUrl, useFragmentCredentials } from '../chunk-
|
|
3
|
-
export { AccountRecoveryDialog, AuthAlert, AuthConsent, AuthDivider, AuthField, AuthFieldBadge, AuthFooterLinks, AuthHeading, AuthHero, AuthInput, AuthLayout, AuthLink, AuthNote, AuthOfflineBadge, AuthSubmitButton, AuthTabs, DEFAULT_ACCOUNT_RECOVERY_DIALOG_LABELS, DEFAULT_AUTH_CONSENT_LABELS, DEFAULT_AUTH_FOOTER_LINKS_LABELS, DEFAULT_AUTH_OFFLINE_BADGE_LABELS, DEFAULT_PASSWORD_RULES, DEFAULT_RECOVERY_KEY_DIALOG_LABELS, DEFAULT_REVEALABLE_PASSWORD_INPUT_LABELS,
|
|
2
|
+
export { DEFAULT_SSO_LOGIN_BUTTON_LABELS, SsoLoginButton, consumeFragmentCredentials, isAuthRoutePath, normalizeAuthPath, parseFragmentCredentials, preserveAuthReturnUrl, useFragmentCredentials } from '../chunk-KL6XOSEN.js';
|
|
3
|
+
export { AccountRecoveryDialog, AuthAlert, AuthConsent, AuthDivider, AuthField, AuthFieldBadge, AuthFooterLinks, AuthHeading, AuthHero, AuthInput, AuthLayout, AuthLink, AuthNote, AuthOfflineBadge, AuthSubmitButton, AuthTabs, DEFAULT_ACCOUNT_RECOVERY_DIALOG_LABELS, DEFAULT_AUTH_CONSENT_LABELS, DEFAULT_AUTH_FOOTER_LINKS_LABELS, DEFAULT_AUTH_OFFLINE_BADGE_LABELS, DEFAULT_PASSWORD_RULES, DEFAULT_RECOVERY_KEY_DIALOG_LABELS, DEFAULT_REVEALABLE_PASSWORD_INPUT_LABELS, RecoveryKeyDialog, RevealablePasswordInput, createPasswordRules, parseAuthError, promptSaveCredential } from '../chunk-IXBJEQH5.js';
|
|
4
4
|
export { DEFAULT_PASSWORD_STRENGTH_INPUT_LABELS, PasswordStrengthInput } from '../chunk-P6OLZGQA.js';
|
|
5
5
|
import '../chunk-7F6CBP3Z.js';
|
|
6
6
|
import '../chunk-VUNV25KB.js';
|
package/dist/auth0/index.cjs
CHANGED
|
@@ -84,14 +84,15 @@ function auth0Sso({ domain, callbackPath = "/sso" }) {
|
|
|
84
84
|
family_name: user.family_name,
|
|
85
85
|
picture: user.picture
|
|
86
86
|
} : null,
|
|
87
|
-
async signIn({ returnTo, redirectUri, consent } = {}) {
|
|
87
|
+
async signIn({ returnTo, redirectUri, consent, connection } = {}) {
|
|
88
88
|
rememberAuth0Token(null);
|
|
89
89
|
await loginWithRedirect({
|
|
90
90
|
...returnTo ? { appState: { returnTo } } : {},
|
|
91
|
-
...redirectUri || consent ? {
|
|
91
|
+
...redirectUri || consent || connection ? {
|
|
92
92
|
authorizationParams: {
|
|
93
93
|
...redirectUri ? { redirect_uri: redirectUri } : {},
|
|
94
|
-
...consent ? { prompt: "consent" } : {}
|
|
94
|
+
...consent ? { prompt: "consent" } : {},
|
|
95
|
+
...connection ? { connection } : {}
|
|
95
96
|
}
|
|
96
97
|
} : {}
|
|
97
98
|
});
|
package/dist/auth0/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/auth0/availability.ts","../../src/auth0/token-source.ts","../../src/auth0/Auth0Gate.tsx","../../src/auth0/sso.ts"],"names":["initialContext","useAuth0","useEffect","Auth0Context","jsxs","Auth0Provider","jsx","useMemo"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * Whether Auth0 can run in this browsing context. `auth0-spa-js` needs Web Crypto, which browsers\n * expose only on a SECURE ORIGIN (https, or `localhost`): a dev server reached over a LAN address\n * (`http://10.0.0.5:5173`) is not one. The site's own email + password sign-in does not need\n * Auth0, so the SSO affordances are hidden there rather than let them throw.\n */\nexport const isAuth0Available: boolean =\n typeof window !== 'undefined' && window.isSecureContext && !!window.crypto?.subtle\n","/**\n * Auth0 as the SDK client's `SsoTokenSource` (`createArbiClient({ sso: auth0TokenSource })`): the\n * token for a silent re-login of an SSO account. `Auth0Gate` registers Auth0's token getter once\n * Auth0 is signed in; the client asks only in SSO mode, which is also the cross-deployment guard\n * (Auth0's cache is shared by every deployment on the tenant).\n */\n\nimport type { SsoTokenSource } from '@arbidocs/client'\n\n/** How long a re-login waits for Auth0 to expose its token getter after a page load. */\nconst GETTER_WAIT_MS = 1_000\nconst GETTER_POLL_MS = 250\n\nlet tokenGetter: (() => Promise<string>) | null = null\nlet lastToken: string | null = null\n\n/** Auth0's token getter, once signed in there (`Auth0Gate`); `null` to drop it. */\nexport function setAuth0TokenGetter(getter: (() => Promise<string>) | null): void {\n tokenGetter = getter\n}\n\n/** The last token Auth0 gave (the re-login's fallback); `null` to forget it. */\nexport function rememberAuth0Token(token: string | null): void {\n lastToken = token\n}\n\nexport const auth0TokenSource: SsoTokenSource = {\n async getToken() {\n // On a page load the getter may not exist yet: wait up to 1s for it, then fall back to the\n // last token Auth0 gave.\n for (let waited = 0; ; waited += GETTER_POLL_MS) {\n if (tokenGetter) {\n try {\n const token = await tokenGetter()\n if (token) return token\n break\n } catch (error) {\n // Auth0 not settled yet: try again until the wait is over.\n console.error('[SSO] Failed to get the Auth0 token:', error)\n }\n }\n if (waited >= GETTER_WAIT_MS) break\n if (waited === 0) console.info('[SSO] No Auth0 token getter yet - waiting for Auth0')\n await new Promise((resolve) => setTimeout(resolve, GETTER_POLL_MS))\n }\n return lastToken\n },\n}\n","/**\n * Auth0Gate — mount Auth0 only where it can actually run.\n *\n * `auth0-spa-js` requires Web Crypto, which the browser only exposes on a SECURE\n * ORIGIN (https, or `localhost`). Reached over a LAN address — `http://10.0.0.5:5173`,\n * the way a dev server started with `--host` is usually opened — it throws\n * \"auth0-spa-js must run on a secure origin\" while `Auth0Provider` initialises,\n * and the app never boots.\n *\n * That is a shame, because ARBI's own email + password login does not need Auth0\n * at all: Auth0 backs the SSO buttons and the hosted password-reset flow. So on an\n * insecure origin we render an INERT Auth0 context instead of the real provider.\n * The app boots, native sign-in works, and the SSO paths are hidden (see\n * `isAuth0Available`) rather than throwing when clicked.\n *\n * It is the site's `Auth0Gate`: mounted once around the app, it is also where the re-login gets\n * Auth0's token (`auth0TokenSource`).\n *\n * Note the context must be inert, not absent: `useAuth0()` outside a provider\n * returns `isLoading: true` forever, which would hang `App` on its loading screen.\n */\n\nimport { useEffect, type ReactNode } from 'react'\nimport {\n Auth0Context,\n Auth0Provider,\n initialContext,\n useAuth0,\n type Auth0ProviderOptions,\n} from '@auth0/auth0-react'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token, setAuth0TokenGetter } from './token-source'\n\n/** Rejects rather than silently no-oping, so a stray SSO call is visible in dev. */\nfunction unavailable(): never {\n throw new Error(\n 'Auth0 is unavailable on a non-secure origin. Open the app over https or on localhost.'\n )\n}\n\n/**\n * A settled, signed-out Auth0 context, built from the library's own default so it\n * cannot drift as the interface grows. `isLoading: false` is the load-bearing\n * override — it lets `App` finish booting instead of waiting on a provider that\n * will never initialise. The auth methods keep the defaults' throwing stubs.\n */\nconst INERT_CONTEXT = { ...initialContext, isLoading: false, getAccessTokenSilently: unavailable }\n\n/**\n * Hands Auth0's token getter to the re-login (`auth0TokenSource`) once Auth0 is signed in, and\n * keeps its last token as the fallback. The client asks for it only in SSO mode.\n */\nfunction Auth0TokenBridge() {\n const { isAuthenticated, isLoading, getAccessTokenSilently } = useAuth0()\n useEffect(() => {\n if (!isAuthenticated || isLoading) return\n setAuth0TokenGetter(getAccessTokenSilently)\n getAccessTokenSilently().then(rememberAuth0Token, () => {\n // Expected during registration: no token yet.\n })\n return () => setAuth0TokenGetter(null)\n }, [isAuthenticated, isLoading, getAccessTokenSilently])\n return null\n}\n\n/** Auth0 for the site, where it can run (see above); its token is handed to the re-login. */\nexport function Auth0Gate({\n children,\n ...options\n}: Auth0ProviderOptions & { children: ReactNode }) {\n if (!isAuth0Available) {\n return <Auth0Context.Provider value={INERT_CONTEXT}>{children}</Auth0Context.Provider>\n }\n return (\n <Auth0Provider {...options}>\n <Auth0TokenBridge />\n {children}\n </Auth0Provider>\n )\n}\n","/**\n * Auth0 as the site's single sign-on provider (the host configuration's `sso`): the sign-in kits\n * reach Auth0 through it, never through `@auth0/auth0-react` themselves.\n *\n * <ArbiHost config={{ sso: auth0Sso({ domain: 'auth.example.com' }), … }}>\n *\n * Needs `Auth0Gate` around the site.\n */\n\nimport { useMemo } from 'react'\nimport { useAuth0 } from '@auth0/auth0-react'\nimport type { SsoSignIn, SsoSupport } from '../connection/auth/support'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token } from './token-source'\n\nexport interface Auth0SsoOptions {\n /** The Auth0 tenant's domain: an account link continues there. */\n domain: string\n /** Where Auth0 comes back to after an account link (default: `<origin>/sso`). */\n callbackPath?: string\n}\n\n/** The SSO provider backed by Auth0. */\nexport function auth0Sso({ domain, callbackPath = '/sso' }: Auth0SsoOptions): SsoSupport {\n function useSignIn(): SsoSignIn {\n const { isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently } =\n useAuth0()\n return useMemo(\n () => ({\n available: isAuth0Available,\n isLoading,\n isAuthenticated,\n user: user?.sub\n ? {\n sub: user.sub,\n email: user.email,\n name: user.name,\n given_name: user.given_name,\n family_name: user.family_name,\n picture: user.picture,\n }\n : null,\n async signIn({ returnTo, redirectUri, consent } = {}) {\n // A token from a previous Auth0 session must not stand in for the coming one.\n rememberAuth0Token(null)\n await loginWithRedirect({\n ...(returnTo ? { appState: { returnTo } } : {}),\n ...(redirectUri || consent\n ? {\n authorizationParams: {\n ...(redirectUri ? { redirect_uri: redirectUri } : {}),\n ...(consent ? { prompt: 'consent' as const } : {}),\n },\n }\n : {}),\n })\n },\n signOut({ returnTo } = {}) {\n void logout(returnTo ? { logoutParams: { returnTo } } : undefined)\n },\n getToken: () => getAccessTokenSilently().catch(() => null),\n continueUrl: (action, state) =>\n `https://${domain}/continue?redirect_uri=${encodeURIComponent(\n window.location.origin + callbackPath\n )}&action=${action}&state=${state}`,\n }),\n [isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently]\n )\n }\n return { useSignIn }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/auth0/availability.ts","../../src/auth0/token-source.ts","../../src/auth0/Auth0Gate.tsx","../../src/auth0/sso.ts"],"names":["initialContext","useAuth0","useEffect","Auth0Context","jsxs","Auth0Provider","jsx","useMemo"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * Whether Auth0 can run in this browsing context. `auth0-spa-js` needs Web Crypto, which browsers\n * expose only on a SECURE ORIGIN (https, or `localhost`): a dev server reached over a LAN address\n * (`http://10.0.0.5:5173`) is not one. The site's own email + password sign-in does not need\n * Auth0, so the SSO affordances are hidden there rather than let them throw.\n */\nexport const isAuth0Available: boolean =\n typeof window !== 'undefined' && window.isSecureContext && !!window.crypto?.subtle\n","/**\n * Auth0 as the SDK client's `SsoTokenSource` (`createArbiClient({ sso: auth0TokenSource })`): the\n * token for a silent re-login of an SSO account. `Auth0Gate` registers Auth0's token getter once\n * Auth0 is signed in; the client asks only in SSO mode, which is also the cross-deployment guard\n * (Auth0's cache is shared by every deployment on the tenant).\n */\n\nimport type { SsoTokenSource } from '@arbidocs/client'\n\n/** How long a re-login waits for Auth0 to expose its token getter after a page load. */\nconst GETTER_WAIT_MS = 1_000\nconst GETTER_POLL_MS = 250\n\nlet tokenGetter: (() => Promise<string>) | null = null\nlet lastToken: string | null = null\n\n/** Auth0's token getter, once signed in there (`Auth0Gate`); `null` to drop it. */\nexport function setAuth0TokenGetter(getter: (() => Promise<string>) | null): void {\n tokenGetter = getter\n}\n\n/** The last token Auth0 gave (the re-login's fallback); `null` to forget it. */\nexport function rememberAuth0Token(token: string | null): void {\n lastToken = token\n}\n\nexport const auth0TokenSource: SsoTokenSource = {\n async getToken() {\n // On a page load the getter may not exist yet: wait up to 1s for it, then fall back to the\n // last token Auth0 gave.\n for (let waited = 0; ; waited += GETTER_POLL_MS) {\n if (tokenGetter) {\n try {\n const token = await tokenGetter()\n if (token) return token\n break\n } catch (error) {\n // Auth0 not settled yet: try again until the wait is over.\n console.error('[SSO] Failed to get the Auth0 token:', error)\n }\n }\n if (waited >= GETTER_WAIT_MS) break\n if (waited === 0) console.info('[SSO] No Auth0 token getter yet - waiting for Auth0')\n await new Promise((resolve) => setTimeout(resolve, GETTER_POLL_MS))\n }\n return lastToken\n },\n}\n","/**\n * Auth0Gate — mount Auth0 only where it can actually run.\n *\n * `auth0-spa-js` requires Web Crypto, which the browser only exposes on a SECURE\n * ORIGIN (https, or `localhost`). Reached over a LAN address — `http://10.0.0.5:5173`,\n * the way a dev server started with `--host` is usually opened — it throws\n * \"auth0-spa-js must run on a secure origin\" while `Auth0Provider` initialises,\n * and the app never boots.\n *\n * That is a shame, because ARBI's own email + password login does not need Auth0\n * at all: Auth0 backs the SSO buttons and the hosted password-reset flow. So on an\n * insecure origin we render an INERT Auth0 context instead of the real provider.\n * The app boots, native sign-in works, and the SSO paths are hidden (see\n * `isAuth0Available`) rather than throwing when clicked.\n *\n * It is the site's `Auth0Gate`: mounted once around the app, it is also where the re-login gets\n * Auth0's token (`auth0TokenSource`).\n *\n * Note the context must be inert, not absent: `useAuth0()` outside a provider\n * returns `isLoading: true` forever, which would hang `App` on its loading screen.\n */\n\nimport { useEffect, type ReactNode } from 'react'\nimport {\n Auth0Context,\n Auth0Provider,\n initialContext,\n useAuth0,\n type Auth0ProviderOptions,\n} from '@auth0/auth0-react'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token, setAuth0TokenGetter } from './token-source'\n\n/** Rejects rather than silently no-oping, so a stray SSO call is visible in dev. */\nfunction unavailable(): never {\n throw new Error(\n 'Auth0 is unavailable on a non-secure origin. Open the app over https or on localhost.'\n )\n}\n\n/**\n * A settled, signed-out Auth0 context, built from the library's own default so it\n * cannot drift as the interface grows. `isLoading: false` is the load-bearing\n * override — it lets `App` finish booting instead of waiting on a provider that\n * will never initialise. The auth methods keep the defaults' throwing stubs.\n */\nconst INERT_CONTEXT = { ...initialContext, isLoading: false, getAccessTokenSilently: unavailable }\n\n/**\n * Hands Auth0's token getter to the re-login (`auth0TokenSource`) once Auth0 is signed in, and\n * keeps its last token as the fallback. The client asks for it only in SSO mode.\n */\nfunction Auth0TokenBridge() {\n const { isAuthenticated, isLoading, getAccessTokenSilently } = useAuth0()\n useEffect(() => {\n if (!isAuthenticated || isLoading) return\n setAuth0TokenGetter(getAccessTokenSilently)\n getAccessTokenSilently().then(rememberAuth0Token, () => {\n // Expected during registration: no token yet.\n })\n return () => setAuth0TokenGetter(null)\n }, [isAuthenticated, isLoading, getAccessTokenSilently])\n return null\n}\n\n/** Auth0 for the site, where it can run (see above); its token is handed to the re-login. */\nexport function Auth0Gate({\n children,\n ...options\n}: Auth0ProviderOptions & { children: ReactNode }) {\n if (!isAuth0Available) {\n return <Auth0Context.Provider value={INERT_CONTEXT}>{children}</Auth0Context.Provider>\n }\n return (\n <Auth0Provider {...options}>\n <Auth0TokenBridge />\n {children}\n </Auth0Provider>\n )\n}\n","/**\n * Auth0 as the site's single sign-on provider (the host configuration's `sso`): the sign-in kits\n * reach Auth0 through it, never through `@auth0/auth0-react` themselves.\n *\n * <ArbiHost config={{ sso: auth0Sso({ domain: 'auth.example.com' }), … }}>\n *\n * Needs `Auth0Gate` around the site.\n */\n\nimport { useMemo } from 'react'\nimport { useAuth0 } from '@auth0/auth0-react'\nimport type { SsoSignIn, SsoSupport } from '../connection/auth/support'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token } from './token-source'\n\nexport interface Auth0SsoOptions {\n /** The Auth0 tenant's domain: an account link continues there. */\n domain: string\n /** Where Auth0 comes back to after an account link (default: `<origin>/sso`). */\n callbackPath?: string\n}\n\n/** The SSO provider backed by Auth0. */\nexport function auth0Sso({ domain, callbackPath = '/sso' }: Auth0SsoOptions): SsoSupport {\n function useSignIn(): SsoSignIn {\n const { isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently } =\n useAuth0()\n return useMemo(\n () => ({\n available: isAuth0Available,\n isLoading,\n isAuthenticated,\n user: user?.sub\n ? {\n sub: user.sub,\n email: user.email,\n name: user.name,\n given_name: user.given_name,\n family_name: user.family_name,\n picture: user.picture,\n }\n : null,\n async signIn({ returnTo, redirectUri, consent, connection } = {}) {\n // A token from a previous Auth0 session must not stand in for the coming one.\n rememberAuth0Token(null)\n await loginWithRedirect({\n ...(returnTo ? { appState: { returnTo } } : {}),\n ...(redirectUri || consent || connection\n ? {\n authorizationParams: {\n ...(redirectUri ? { redirect_uri: redirectUri } : {}),\n ...(consent ? { prompt: 'consent' as const } : {}),\n ...(connection ? { connection } : {}),\n },\n }\n : {}),\n })\n },\n signOut({ returnTo } = {}) {\n void logout(returnTo ? { logoutParams: { returnTo } } : undefined)\n },\n getToken: () => getAccessTokenSilently().catch(() => null),\n continueUrl: (action, state) =>\n `https://${domain}/continue?redirect_uri=${encodeURIComponent(\n window.location.origin + callbackPath\n )}&action=${action}&state=${state}`,\n }),\n [isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently]\n )\n }\n return { useSignIn }\n}\n"]}
|
package/dist/auth0/index.js
CHANGED
|
@@ -82,14 +82,15 @@ function auth0Sso({ domain, callbackPath = "/sso" }) {
|
|
|
82
82
|
family_name: user.family_name,
|
|
83
83
|
picture: user.picture
|
|
84
84
|
} : null,
|
|
85
|
-
async signIn({ returnTo, redirectUri, consent } = {}) {
|
|
85
|
+
async signIn({ returnTo, redirectUri, consent, connection } = {}) {
|
|
86
86
|
rememberAuth0Token(null);
|
|
87
87
|
await loginWithRedirect({
|
|
88
88
|
...returnTo ? { appState: { returnTo } } : {},
|
|
89
|
-
...redirectUri || consent ? {
|
|
89
|
+
...redirectUri || consent || connection ? {
|
|
90
90
|
authorizationParams: {
|
|
91
91
|
...redirectUri ? { redirect_uri: redirectUri } : {},
|
|
92
|
-
...consent ? { prompt: "consent" } : {}
|
|
92
|
+
...consent ? { prompt: "consent" } : {},
|
|
93
|
+
...connection ? { connection } : {}
|
|
93
94
|
}
|
|
94
95
|
} : {}
|
|
95
96
|
});
|
package/dist/auth0/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/auth0/availability.ts","../../src/auth0/token-source.ts","../../src/auth0/Auth0Gate.tsx","../../src/auth0/sso.ts"],"names":["useAuth0"],"mappings":";;;;;;AAMO,IAAM,gBAAA,GACX,OAAO,MAAA,KAAW,WAAA,IAAe,OAAO,eAAA,IAAmB,CAAC,CAAC,MAAA,CAAO,MAAA,EAAQ;;;ACG9E,IAAM,cAAA,GAAiB,GAAA;AACvB,IAAM,cAAA,GAAiB,GAAA;AAEvB,IAAI,WAAA,GAA8C,IAAA;AAClD,IAAI,SAAA,GAA2B,IAAA;AAGxB,SAAS,oBAAoB,MAAA,EAA8C;AAChF,EAAA,WAAA,GAAc,MAAA;AAChB;AAGO,SAAS,mBAAmB,KAAA,EAA4B;AAC7D,EAAA,SAAA,GAAY,KAAA;AACd;AAEO,IAAM,gBAAA,GAAmC;AAAA,EAC9C,MAAM,QAAA,GAAW;AAGf,IAAA,KAAA,IAAS,MAAA,GAAS,CAAA,IAAK,MAAA,IAAU,cAAA,EAAgB;AAC/C,MAAA,IAAI,WAAA,EAAa;AACf,QAAA,IAAI;AACF,UAAA,MAAM,KAAA,GAAQ,MAAM,WAAA,EAAY;AAChC,UAAA,IAAI,OAAO,OAAO,KAAA;AAClB,UAAA;AAAA,QACF,SAAS,KAAA,EAAO;AAEd,UAAA,OAAA,CAAQ,KAAA,CAAM,wCAAwC,KAAK,CAAA;AAAA,QAC7D;AAAA,MACF;AACA,MAAA,IAAI,UAAU,cAAA,EAAgB;AAC9B,MAAA,IAAI,MAAA,KAAW,CAAA,EAAG,OAAA,CAAQ,IAAA,CAAK,qDAAqD,CAAA;AACpF,MAAA,MAAM,IAAI,OAAA,CAAQ,CAAC,YAAY,UAAA,CAAW,OAAA,EAAS,cAAc,CAAC,CAAA;AAAA,IACpE;AACA,IAAA,OAAO,SAAA;AAAA,EACT;AACF;ACbA,SAAS,WAAA,GAAqB;AAC5B,EAAA,MAAM,IAAI,KAAA;AAAA,IACR;AAAA,GACF;AACF;AAQA,IAAM,gBAAgB,EAAE,GAAG,gBAAgB,SAAA,EAAW,KAAA,EAAO,wBAAwB,WAAA,EAAY;AAMjG,SAAS,gBAAA,GAAmB;AAC1B,EAAA,MAAM,EAAE,eAAA,EAAiB,SAAA,EAAW,sBAAA,KAA2B,QAAA,EAAS;AACxE,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,mBAAmB,SAAA,EAAW;AACnC,IAAA,mBAAA,CAAoB,sBAAsB,CAAA;AAC1C,IAAA,sBAAA,EAAuB,CAAE,IAAA,CAAK,kBAAA,EAAoB,MAAM;AAAA,IAExD,CAAC,CAAA;AACD,IAAA,OAAO,MAAM,oBAAoB,IAAI,CAAA;AAAA,EACvC,CAAA,EAAG,CAAC,eAAA,EAAiB,SAAA,EAAW,sBAAsB,CAAC,CAAA;AACvD,EAAA,OAAO,IAAA;AACT;AAGO,SAAS,SAAA,CAAU;AAAA,EACxB,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmD;AACjD,EAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,IAAA,2BAAQ,YAAA,CAAa,QAAA,EAAb,EAAsB,KAAA,EAAO,eAAgB,QAAA,EAAS,CAAA;AAAA,EAChE;AACA,EAAA,uBACE,IAAA,CAAC,aAAA,EAAA,EAAe,GAAG,OAAA,EACjB,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,gBAAA,EAAA,EAAiB,CAAA;AAAA,IACjB;AAAA,GAAA,EACH,CAAA;AAEJ;ACxDO,SAAS,QAAA,CAAS,EAAE,MAAA,EAAQ,YAAA,GAAe,QAAO,EAAgC;AACvF,EAAA,SAAS,SAAA,GAAuB;AAC9B,IAAA,MAAM,EAAE,WAAW,eAAA,EAAiB,IAAA,EAAM,mBAAmB,MAAA,EAAQ,sBAAA,KACnEA,QAAAA,EAAS;AACX,IAAA,OAAO,OAAA;AAAA,MACL,OAAO;AAAA,QACL,SAAA,EAAW,gBAAA;AAAA,QACX,SAAA;AAAA,QACA,eAAA;AAAA,QACA,IAAA,EAAM,MAAM,GAAA,GACR;AAAA,UACE,KAAK,IAAA,CAAK,GAAA;AAAA,UACV,OAAO,IAAA,CAAK,KAAA;AAAA,UACZ,MAAM,IAAA,CAAK,IAAA;AAAA,UACX,YAAY,IAAA,CAAK,UAAA;AAAA,UACjB,aAAa,IAAA,CAAK,WAAA;AAAA,UAClB,SAAS,IAAA,CAAK;AAAA,SAChB,GACA,IAAA;AAAA,QACJ,MAAM,OAAO,EAAE,QAAA,EAAU,aAAa,OAAA,EAAQ,GAAI,EAAC,EAAG;AAEpD,UAAA,kBAAA,CAAmB,IAAI,CAAA;AACvB,UAAA,MAAM,iBAAA,CAAkB;AAAA,YACtB,GAAI,WAAW,EAAE,QAAA,EAAU,EAAE,QAAA,EAAS,KAAM,EAAC;AAAA,YAC7C,GAAI,eAAe,OAAA,GACf;AAAA,cACE,mBAAA,EAAqB;AAAA,gBACnB,GAAI,WAAA,GAAc,EAAE,YAAA,EAAc,WAAA,KAAgB,EAAC;AAAA,gBACnD,GAAI,OAAA,GAAU,EAAE,MAAA,EAAQ,SAAA,KAAuB;AAAC;AAClD,gBAEF;AAAC,WACN,CAAA;AAAA,QACH,CAAA;AAAA,QACA,OAAA,CAAQ,EAAE,QAAA,EAAS,GAAI,EAAC,EAAG;AACzB,UAAA,KAAK,MAAA,CAAO,WAAW,EAAE,YAAA,EAAc,EAAE,QAAA,EAAS,KAAM,MAAS,CAAA;AAAA,QACnE,CAAA;AAAA,QACA,UAAU,MAAM,sBAAA,EAAuB,CAAE,KAAA,CAAM,MAAM,IAAI,CAAA;AAAA,QACzD,aAAa,CAAC,MAAA,EAAQ,KAAA,KACpB,CAAA,QAAA,EAAW,MAAM,CAAA,uBAAA,EAA0B,kBAAA;AAAA,UACzC,MAAA,CAAO,SAAS,MAAA,GAAS;AAAA,SAC1B,CAAA,QAAA,EAAW,MAAM,CAAA,OAAA,EAAU,KAAK,CAAA;AAAA,OACrC,CAAA;AAAA,MACA,CAAC,SAAA,EAAW,eAAA,EAAiB,IAAA,EAAM,iBAAA,EAAmB,QAAQ,sBAAsB;AAAA,KACtF;AAAA,EACF;AACA,EAAA,OAAO,EAAE,SAAA,EAAU;AACrB","file":"index.js","sourcesContent":["/**\n * Whether Auth0 can run in this browsing context. `auth0-spa-js` needs Web Crypto, which browsers\n * expose only on a SECURE ORIGIN (https, or `localhost`): a dev server reached over a LAN address\n * (`http://10.0.0.5:5173`) is not one. The site's own email + password sign-in does not need\n * Auth0, so the SSO affordances are hidden there rather than let them throw.\n */\nexport const isAuth0Available: boolean =\n typeof window !== 'undefined' && window.isSecureContext && !!window.crypto?.subtle\n","/**\n * Auth0 as the SDK client's `SsoTokenSource` (`createArbiClient({ sso: auth0TokenSource })`): the\n * token for a silent re-login of an SSO account. `Auth0Gate` registers Auth0's token getter once\n * Auth0 is signed in; the client asks only in SSO mode, which is also the cross-deployment guard\n * (Auth0's cache is shared by every deployment on the tenant).\n */\n\nimport type { SsoTokenSource } from '@arbidocs/client'\n\n/** How long a re-login waits for Auth0 to expose its token getter after a page load. */\nconst GETTER_WAIT_MS = 1_000\nconst GETTER_POLL_MS = 250\n\nlet tokenGetter: (() => Promise<string>) | null = null\nlet lastToken: string | null = null\n\n/** Auth0's token getter, once signed in there (`Auth0Gate`); `null` to drop it. */\nexport function setAuth0TokenGetter(getter: (() => Promise<string>) | null): void {\n tokenGetter = getter\n}\n\n/** The last token Auth0 gave (the re-login's fallback); `null` to forget it. */\nexport function rememberAuth0Token(token: string | null): void {\n lastToken = token\n}\n\nexport const auth0TokenSource: SsoTokenSource = {\n async getToken() {\n // On a page load the getter may not exist yet: wait up to 1s for it, then fall back to the\n // last token Auth0 gave.\n for (let waited = 0; ; waited += GETTER_POLL_MS) {\n if (tokenGetter) {\n try {\n const token = await tokenGetter()\n if (token) return token\n break\n } catch (error) {\n // Auth0 not settled yet: try again until the wait is over.\n console.error('[SSO] Failed to get the Auth0 token:', error)\n }\n }\n if (waited >= GETTER_WAIT_MS) break\n if (waited === 0) console.info('[SSO] No Auth0 token getter yet - waiting for Auth0')\n await new Promise((resolve) => setTimeout(resolve, GETTER_POLL_MS))\n }\n return lastToken\n },\n}\n","/**\n * Auth0Gate — mount Auth0 only where it can actually run.\n *\n * `auth0-spa-js` requires Web Crypto, which the browser only exposes on a SECURE\n * ORIGIN (https, or `localhost`). Reached over a LAN address — `http://10.0.0.5:5173`,\n * the way a dev server started with `--host` is usually opened — it throws\n * \"auth0-spa-js must run on a secure origin\" while `Auth0Provider` initialises,\n * and the app never boots.\n *\n * That is a shame, because ARBI's own email + password login does not need Auth0\n * at all: Auth0 backs the SSO buttons and the hosted password-reset flow. So on an\n * insecure origin we render an INERT Auth0 context instead of the real provider.\n * The app boots, native sign-in works, and the SSO paths are hidden (see\n * `isAuth0Available`) rather than throwing when clicked.\n *\n * It is the site's `Auth0Gate`: mounted once around the app, it is also where the re-login gets\n * Auth0's token (`auth0TokenSource`).\n *\n * Note the context must be inert, not absent: `useAuth0()` outside a provider\n * returns `isLoading: true` forever, which would hang `App` on its loading screen.\n */\n\nimport { useEffect, type ReactNode } from 'react'\nimport {\n Auth0Context,\n Auth0Provider,\n initialContext,\n useAuth0,\n type Auth0ProviderOptions,\n} from '@auth0/auth0-react'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token, setAuth0TokenGetter } from './token-source'\n\n/** Rejects rather than silently no-oping, so a stray SSO call is visible in dev. */\nfunction unavailable(): never {\n throw new Error(\n 'Auth0 is unavailable on a non-secure origin. Open the app over https or on localhost.'\n )\n}\n\n/**\n * A settled, signed-out Auth0 context, built from the library's own default so it\n * cannot drift as the interface grows. `isLoading: false` is the load-bearing\n * override — it lets `App` finish booting instead of waiting on a provider that\n * will never initialise. The auth methods keep the defaults' throwing stubs.\n */\nconst INERT_CONTEXT = { ...initialContext, isLoading: false, getAccessTokenSilently: unavailable }\n\n/**\n * Hands Auth0's token getter to the re-login (`auth0TokenSource`) once Auth0 is signed in, and\n * keeps its last token as the fallback. The client asks for it only in SSO mode.\n */\nfunction Auth0TokenBridge() {\n const { isAuthenticated, isLoading, getAccessTokenSilently } = useAuth0()\n useEffect(() => {\n if (!isAuthenticated || isLoading) return\n setAuth0TokenGetter(getAccessTokenSilently)\n getAccessTokenSilently().then(rememberAuth0Token, () => {\n // Expected during registration: no token yet.\n })\n return () => setAuth0TokenGetter(null)\n }, [isAuthenticated, isLoading, getAccessTokenSilently])\n return null\n}\n\n/** Auth0 for the site, where it can run (see above); its token is handed to the re-login. */\nexport function Auth0Gate({\n children,\n ...options\n}: Auth0ProviderOptions & { children: ReactNode }) {\n if (!isAuth0Available) {\n return <Auth0Context.Provider value={INERT_CONTEXT}>{children}</Auth0Context.Provider>\n }\n return (\n <Auth0Provider {...options}>\n <Auth0TokenBridge />\n {children}\n </Auth0Provider>\n )\n}\n","/**\n * Auth0 as the site's single sign-on provider (the host configuration's `sso`): the sign-in kits\n * reach Auth0 through it, never through `@auth0/auth0-react` themselves.\n *\n * <ArbiHost config={{ sso: auth0Sso({ domain: 'auth.example.com' }), … }}>\n *\n * Needs `Auth0Gate` around the site.\n */\n\nimport { useMemo } from 'react'\nimport { useAuth0 } from '@auth0/auth0-react'\nimport type { SsoSignIn, SsoSupport } from '../connection/auth/support'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token } from './token-source'\n\nexport interface Auth0SsoOptions {\n /** The Auth0 tenant's domain: an account link continues there. */\n domain: string\n /** Where Auth0 comes back to after an account link (default: `<origin>/sso`). */\n callbackPath?: string\n}\n\n/** The SSO provider backed by Auth0. */\nexport function auth0Sso({ domain, callbackPath = '/sso' }: Auth0SsoOptions): SsoSupport {\n function useSignIn(): SsoSignIn {\n const { isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently } =\n useAuth0()\n return useMemo(\n () => ({\n available: isAuth0Available,\n isLoading,\n isAuthenticated,\n user: user?.sub\n ? {\n sub: user.sub,\n email: user.email,\n name: user.name,\n given_name: user.given_name,\n family_name: user.family_name,\n picture: user.picture,\n }\n : null,\n async signIn({ returnTo, redirectUri, consent } = {}) {\n // A token from a previous Auth0 session must not stand in for the coming one.\n rememberAuth0Token(null)\n await loginWithRedirect({\n ...(returnTo ? { appState: { returnTo } } : {}),\n ...(redirectUri || consent\n ? {\n authorizationParams: {\n ...(redirectUri ? { redirect_uri: redirectUri } : {}),\n ...(consent ? { prompt: 'consent' as const } : {}),\n },\n }\n : {}),\n })\n },\n signOut({ returnTo } = {}) {\n void logout(returnTo ? { logoutParams: { returnTo } } : undefined)\n },\n getToken: () => getAccessTokenSilently().catch(() => null),\n continueUrl: (action, state) =>\n `https://${domain}/continue?redirect_uri=${encodeURIComponent(\n window.location.origin + callbackPath\n )}&action=${action}&state=${state}`,\n }),\n [isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently]\n )\n }\n return { useSignIn }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/auth0/availability.ts","../../src/auth0/token-source.ts","../../src/auth0/Auth0Gate.tsx","../../src/auth0/sso.ts"],"names":["useAuth0"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * Whether Auth0 can run in this browsing context. `auth0-spa-js` needs Web Crypto, which browsers\n * expose only on a SECURE ORIGIN (https, or `localhost`): a dev server reached over a LAN address\n * (`http://10.0.0.5:5173`) is not one. The site's own email + password sign-in does not need\n * Auth0, so the SSO affordances are hidden there rather than let them throw.\n */\nexport const isAuth0Available: boolean =\n typeof window !== 'undefined' && window.isSecureContext && !!window.crypto?.subtle\n","/**\n * Auth0 as the SDK client's `SsoTokenSource` (`createArbiClient({ sso: auth0TokenSource })`): the\n * token for a silent re-login of an SSO account. `Auth0Gate` registers Auth0's token getter once\n * Auth0 is signed in; the client asks only in SSO mode, which is also the cross-deployment guard\n * (Auth0's cache is shared by every deployment on the tenant).\n */\n\nimport type { SsoTokenSource } from '@arbidocs/client'\n\n/** How long a re-login waits for Auth0 to expose its token getter after a page load. */\nconst GETTER_WAIT_MS = 1_000\nconst GETTER_POLL_MS = 250\n\nlet tokenGetter: (() => Promise<string>) | null = null\nlet lastToken: string | null = null\n\n/** Auth0's token getter, once signed in there (`Auth0Gate`); `null` to drop it. */\nexport function setAuth0TokenGetter(getter: (() => Promise<string>) | null): void {\n tokenGetter = getter\n}\n\n/** The last token Auth0 gave (the re-login's fallback); `null` to forget it. */\nexport function rememberAuth0Token(token: string | null): void {\n lastToken = token\n}\n\nexport const auth0TokenSource: SsoTokenSource = {\n async getToken() {\n // On a page load the getter may not exist yet: wait up to 1s for it, then fall back to the\n // last token Auth0 gave.\n for (let waited = 0; ; waited += GETTER_POLL_MS) {\n if (tokenGetter) {\n try {\n const token = await tokenGetter()\n if (token) return token\n break\n } catch (error) {\n // Auth0 not settled yet: try again until the wait is over.\n console.error('[SSO] Failed to get the Auth0 token:', error)\n }\n }\n if (waited >= GETTER_WAIT_MS) break\n if (waited === 0) console.info('[SSO] No Auth0 token getter yet - waiting for Auth0')\n await new Promise((resolve) => setTimeout(resolve, GETTER_POLL_MS))\n }\n return lastToken\n },\n}\n","/**\n * Auth0Gate — mount Auth0 only where it can actually run.\n *\n * `auth0-spa-js` requires Web Crypto, which the browser only exposes on a SECURE\n * ORIGIN (https, or `localhost`). Reached over a LAN address — `http://10.0.0.5:5173`,\n * the way a dev server started with `--host` is usually opened — it throws\n * \"auth0-spa-js must run on a secure origin\" while `Auth0Provider` initialises,\n * and the app never boots.\n *\n * That is a shame, because ARBI's own email + password login does not need Auth0\n * at all: Auth0 backs the SSO buttons and the hosted password-reset flow. So on an\n * insecure origin we render an INERT Auth0 context instead of the real provider.\n * The app boots, native sign-in works, and the SSO paths are hidden (see\n * `isAuth0Available`) rather than throwing when clicked.\n *\n * It is the site's `Auth0Gate`: mounted once around the app, it is also where the re-login gets\n * Auth0's token (`auth0TokenSource`).\n *\n * Note the context must be inert, not absent: `useAuth0()` outside a provider\n * returns `isLoading: true` forever, which would hang `App` on its loading screen.\n */\n\nimport { useEffect, type ReactNode } from 'react'\nimport {\n Auth0Context,\n Auth0Provider,\n initialContext,\n useAuth0,\n type Auth0ProviderOptions,\n} from '@auth0/auth0-react'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token, setAuth0TokenGetter } from './token-source'\n\n/** Rejects rather than silently no-oping, so a stray SSO call is visible in dev. */\nfunction unavailable(): never {\n throw new Error(\n 'Auth0 is unavailable on a non-secure origin. Open the app over https or on localhost.'\n )\n}\n\n/**\n * A settled, signed-out Auth0 context, built from the library's own default so it\n * cannot drift as the interface grows. `isLoading: false` is the load-bearing\n * override — it lets `App` finish booting instead of waiting on a provider that\n * will never initialise. The auth methods keep the defaults' throwing stubs.\n */\nconst INERT_CONTEXT = { ...initialContext, isLoading: false, getAccessTokenSilently: unavailable }\n\n/**\n * Hands Auth0's token getter to the re-login (`auth0TokenSource`) once Auth0 is signed in, and\n * keeps its last token as the fallback. The client asks for it only in SSO mode.\n */\nfunction Auth0TokenBridge() {\n const { isAuthenticated, isLoading, getAccessTokenSilently } = useAuth0()\n useEffect(() => {\n if (!isAuthenticated || isLoading) return\n setAuth0TokenGetter(getAccessTokenSilently)\n getAccessTokenSilently().then(rememberAuth0Token, () => {\n // Expected during registration: no token yet.\n })\n return () => setAuth0TokenGetter(null)\n }, [isAuthenticated, isLoading, getAccessTokenSilently])\n return null\n}\n\n/** Auth0 for the site, where it can run (see above); its token is handed to the re-login. */\nexport function Auth0Gate({\n children,\n ...options\n}: Auth0ProviderOptions & { children: ReactNode }) {\n if (!isAuth0Available) {\n return <Auth0Context.Provider value={INERT_CONTEXT}>{children}</Auth0Context.Provider>\n }\n return (\n <Auth0Provider {...options}>\n <Auth0TokenBridge />\n {children}\n </Auth0Provider>\n )\n}\n","/**\n * Auth0 as the site's single sign-on provider (the host configuration's `sso`): the sign-in kits\n * reach Auth0 through it, never through `@auth0/auth0-react` themselves.\n *\n * <ArbiHost config={{ sso: auth0Sso({ domain: 'auth.example.com' }), … }}>\n *\n * Needs `Auth0Gate` around the site.\n */\n\nimport { useMemo } from 'react'\nimport { useAuth0 } from '@auth0/auth0-react'\nimport type { SsoSignIn, SsoSupport } from '../connection/auth/support'\nimport { isAuth0Available } from './availability'\nimport { rememberAuth0Token } from './token-source'\n\nexport interface Auth0SsoOptions {\n /** The Auth0 tenant's domain: an account link continues there. */\n domain: string\n /** Where Auth0 comes back to after an account link (default: `<origin>/sso`). */\n callbackPath?: string\n}\n\n/** The SSO provider backed by Auth0. */\nexport function auth0Sso({ domain, callbackPath = '/sso' }: Auth0SsoOptions): SsoSupport {\n function useSignIn(): SsoSignIn {\n const { isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently } =\n useAuth0()\n return useMemo(\n () => ({\n available: isAuth0Available,\n isLoading,\n isAuthenticated,\n user: user?.sub\n ? {\n sub: user.sub,\n email: user.email,\n name: user.name,\n given_name: user.given_name,\n family_name: user.family_name,\n picture: user.picture,\n }\n : null,\n async signIn({ returnTo, redirectUri, consent, connection } = {}) {\n // A token from a previous Auth0 session must not stand in for the coming one.\n rememberAuth0Token(null)\n await loginWithRedirect({\n ...(returnTo ? { appState: { returnTo } } : {}),\n ...(redirectUri || consent || connection\n ? {\n authorizationParams: {\n ...(redirectUri ? { redirect_uri: redirectUri } : {}),\n ...(consent ? { prompt: 'consent' as const } : {}),\n ...(connection ? { connection } : {}),\n },\n }\n : {}),\n })\n },\n signOut({ returnTo } = {}) {\n void logout(returnTo ? { logoutParams: { returnTo } } : undefined)\n },\n getToken: () => getAccessTokenSilently().catch(() => null),\n continueUrl: (action, state) =>\n `https://${domain}/continue?redirect_uri=${encodeURIComponent(\n window.location.origin + callbackPath\n )}&action=${action}&state=${state}`,\n }),\n [isLoading, isAuthenticated, user, loginWithRedirect, logout, getAccessTokenSilently]\n )\n }\n return { useSignIn }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { TYPED_SIGNATURE_STYLE, AdoptSignatureDialog } from './chunk-
|
|
2
|
+
import { TYPED_SIGNATURE_STYLE, AdoptSignatureDialog } from './chunk-IA5BYEO7.js';
|
|
3
3
|
import { ModalScaffold } from './chunk-TX2ZICS7.js';
|
|
4
4
|
import { useRef, useState, useMemo, useEffect, useCallback } from 'react';
|
|
5
5
|
import { X, ArrowRight, ArrowLeft, Check } from 'lucide-react';
|
|
@@ -805,5 +805,5 @@ function SharedFilesInbox() {
|
|
|
805
805
|
}
|
|
806
806
|
|
|
807
807
|
export { GuidedSigningViewer, SIGNER_COLORS, SharedFileView, SharedFilesInbox, SignatureFieldsOverlay, signingDate };
|
|
808
|
-
//# sourceMappingURL=chunk-
|
|
809
|
-
//# sourceMappingURL=chunk-
|
|
808
|
+
//# sourceMappingURL=chunk-4ML5AMMO.js.map
|
|
809
|
+
//# sourceMappingURL=chunk-4ML5AMMO.js.map
|