@arbidocs/blocks 0.4.155 → 0.4.156

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dist/{ConnectedNativeDocxComparison-OLWRQSRS.js → ConnectedNativeDocxComparison-2PLOOXSH.js} +7 -7
  2. package/dist/{ConnectedNativeDocxComparison-OLWRQSRS.js.map → ConnectedNativeDocxComparison-2PLOOXSH.js.map} +1 -1
  3. package/dist/{ConnectedNativeDocxComparison-YORMOPPN.cjs → ConnectedNativeDocxComparison-S25BPUH5.cjs} +8 -8
  4. package/dist/{ConnectedNativeDocxComparison-YORMOPPN.cjs.map → ConnectedNativeDocxComparison-S25BPUH5.cjs.map} +1 -1
  5. package/dist/{ConnectedNativeDocxEditor-34EBIIFS.js → ConnectedNativeDocxEditor-JJAGMHZC.js} +5 -5
  6. package/dist/{ConnectedNativeDocxEditor-34EBIIFS.js.map → ConnectedNativeDocxEditor-JJAGMHZC.js.map} +1 -1
  7. package/dist/{ConnectedNativeDocxEditor-EHTWGGX3.cjs → ConnectedNativeDocxEditor-YA4HWLY4.cjs} +7 -7
  8. package/dist/{ConnectedNativeDocxEditor-EHTWGGX3.cjs.map → ConnectedNativeDocxEditor-YA4HWLY4.cjs.map} +1 -1
  9. package/dist/{ConnectedStreamedWordArtifact-5DK6QGYN.cjs → ConnectedStreamedWordArtifact-EXYZAU4Y.cjs} +8 -8
  10. package/dist/ConnectedStreamedWordArtifact-EXYZAU4Y.cjs.map +1 -0
  11. package/dist/{ConnectedStreamedWordArtifact-GLIDLSAS.js → ConnectedStreamedWordArtifact-YAAXY5KY.js} +7 -7
  12. package/dist/{ConnectedStreamedWordArtifact-GLIDLSAS.js.map → ConnectedStreamedWordArtifact-YAAXY5KY.js.map} +1 -1
  13. package/dist/{NativeDocxEditor-XT5ZLFGU.js → NativeDocxEditor-JBQMH3MP.js} +3 -3
  14. package/dist/{NativeDocxEditor-XT5ZLFGU.js.map → NativeDocxEditor-JBQMH3MP.js.map} +1 -1
  15. package/dist/{NativeDocxEditor-5VBNM5I7.cjs → NativeDocxEditor-M3I776GD.cjs} +7 -7
  16. package/dist/{NativeDocxEditor-5VBNM5I7.cjs.map → NativeDocxEditor-M3I776GD.cjs.map} +1 -1
  17. package/dist/agents/index.cjs +238 -238
  18. package/dist/agents/index.js +4 -4
  19. package/dist/chat/index.cjs +1 -1
  20. package/dist/chat/index.js +1 -1
  21. package/dist/{chunk-MF5KQ4PS.js → chunk-2CWM2CFZ.js} +4 -4
  22. package/dist/{chunk-MF5KQ4PS.js.map → chunk-2CWM2CFZ.js.map} +1 -1
  23. package/dist/{chunk-QKR5LWDO.js → chunk-6HG56GCT.js} +4 -4
  24. package/dist/{chunk-QKR5LWDO.js.map → chunk-6HG56GCT.js.map} +1 -1
  25. package/dist/{chunk-KHXEIEXN.js → chunk-7IRSCMNK.js} +3 -3
  26. package/dist/{chunk-KHXEIEXN.js.map → chunk-7IRSCMNK.js.map} +1 -1
  27. package/dist/{chunk-TZOQKV64.js → chunk-EWCJXUBP.js} +3 -3
  28. package/dist/{chunk-TZOQKV64.js.map → chunk-EWCJXUBP.js.map} +1 -1
  29. package/dist/{chunk-CU6LDQ57.js → chunk-F3EZDBDJ.js} +4 -4
  30. package/dist/{chunk-CU6LDQ57.js.map → chunk-F3EZDBDJ.js.map} +1 -1
  31. package/dist/{chunk-YF3QUHKN.cjs → chunk-FEGXFABZ.cjs} +3 -3
  32. package/dist/{chunk-YF3QUHKN.cjs.map → chunk-FEGXFABZ.cjs.map} +1 -1
  33. package/dist/{chunk-GC2FSPSQ.cjs → chunk-HDJRSCRE.cjs} +6 -6
  34. package/dist/{chunk-GC2FSPSQ.cjs.map → chunk-HDJRSCRE.cjs.map} +1 -1
  35. package/dist/{chunk-CQCNU5KT.cjs → chunk-IJEISII2.cjs} +6 -6
  36. package/dist/{chunk-CQCNU5KT.cjs.map → chunk-IJEISII2.cjs.map} +1 -1
  37. package/dist/{chunk-NPR5BGFF.cjs → chunk-JSQEAPTC.cjs} +26 -14
  38. package/dist/chunk-JSQEAPTC.cjs.map +1 -0
  39. package/dist/{chunk-6QAAIDQQ.cjs → chunk-O3FB62T5.cjs} +47 -47
  40. package/dist/{chunk-6QAAIDQQ.cjs.map → chunk-O3FB62T5.cjs.map} +1 -1
  41. package/dist/{chunk-265GOG4W.js → chunk-ONTUMV74.js} +26 -14
  42. package/dist/chunk-ONTUMV74.js.map +1 -0
  43. package/dist/chunk-OTU5KGQ6.cjs +18 -0
  44. package/dist/{chunk-HUATKA3M.cjs.map → chunk-OTU5KGQ6.cjs.map} +1 -1
  45. package/dist/{chunk-GO3BN76C.js → chunk-PGOSIJ2I.js} +3 -3
  46. package/dist/{chunk-GO3BN76C.js.map → chunk-PGOSIJ2I.js.map} +1 -1
  47. package/dist/chunk-S74QMZVZ.cjs +18 -0
  48. package/dist/{chunk-C3SMTA3C.cjs.map → chunk-S74QMZVZ.cjs.map} +1 -1
  49. package/dist/{chunk-KUT2Y7JF.cjs → chunk-TQIY2SVY.cjs} +5 -5
  50. package/dist/{chunk-KUT2Y7JF.cjs.map → chunk-TQIY2SVY.cjs.map} +1 -1
  51. package/dist/{chunk-MNG7N6M2.js → chunk-UKCCV63X.js} +4 -4
  52. package/dist/{chunk-MNG7N6M2.js.map → chunk-UKCCV63X.js.map} +1 -1
  53. package/dist/{chunk-B3FMUFAW.cjs → chunk-UKT3WH5Z.cjs} +3 -3
  54. package/dist/{chunk-B3FMUFAW.cjs.map → chunk-UKT3WH5Z.cjs.map} +1 -1
  55. package/dist/{chunk-P6RIBIVN.js → chunk-UPMADXDU.js} +3 -3
  56. package/dist/{chunk-P6RIBIVN.js.map → chunk-UPMADXDU.js.map} +1 -1
  57. package/dist/{chunk-757OYF6G.cjs → chunk-VY4UFXTM.cjs} +4 -4
  58. package/dist/{chunk-757OYF6G.cjs.map → chunk-VY4UFXTM.cjs.map} +1 -1
  59. package/dist/{chunk-WU34CHU5.js → chunk-YMQDDUKW.js} +3 -3
  60. package/dist/{chunk-WU34CHU5.js.map → chunk-YMQDDUKW.js.map} +1 -1
  61. package/dist/connect/docx.cjs +11 -11
  62. package/dist/connect/docx.js +7 -7
  63. package/dist/connect/index.cjs +137 -137
  64. package/dist/connect/index.js +16 -16
  65. package/dist/connect/viewer.cjs +10 -10
  66. package/dist/connect/viewer.js +10 -10
  67. package/dist/document-tools/index.cjs +1 -1
  68. package/dist/document-tools/index.js +1 -1
  69. package/dist/docx/index.cjs +47 -47
  70. package/dist/docx/index.js +3 -3
  71. package/dist/facts/index.cjs +54 -54
  72. package/dist/facts/index.js +4 -4
  73. package/dist/index.cjs +347 -347
  74. package/dist/index.js +8 -8
  75. package/dist/studio/index.cjs +1 -1
  76. package/dist/studio/index.js +1 -1
  77. package/dist/workflow-canvas/index.cjs +16 -16
  78. package/dist/workflow-canvas/index.js +4 -4
  79. package/node_modules/@arbidocs/coedit/dist/hocuspocus.cjs +96 -29
  80. package/node_modules/@arbidocs/coedit/dist/hocuspocus.cjs.map +1 -1
  81. package/node_modules/@arbidocs/coedit/dist/hocuspocus.d.cts +1 -1
  82. package/node_modules/@arbidocs/coedit/dist/hocuspocus.d.ts +1 -1
  83. package/node_modules/@arbidocs/coedit/dist/hocuspocus.js +98 -31
  84. package/node_modules/@arbidocs/coedit/dist/hocuspocus.js.map +1 -1
  85. package/node_modules/@arbidocs/coedit/dist/index.cjs +96 -29
  86. package/node_modules/@arbidocs/coedit/dist/index.cjs.map +1 -1
  87. package/node_modules/@arbidocs/coedit/dist/index.d.cts +1 -1
  88. package/node_modules/@arbidocs/coedit/dist/index.d.ts +1 -1
  89. package/node_modules/@arbidocs/coedit/dist/index.js +98 -31
  90. package/node_modules/@arbidocs/coedit/dist/index.js.map +1 -1
  91. package/node_modules/@arbidocs/coedit/dist/server.cjs +98 -33
  92. package/node_modules/@arbidocs/coedit/dist/server.cjs.map +1 -1
  93. package/node_modules/@arbidocs/coedit/dist/server.d.cts +1 -1
  94. package/node_modules/@arbidocs/coedit/dist/server.d.ts +1 -1
  95. package/node_modules/@arbidocs/coedit/dist/server.js +99 -34
  96. package/node_modules/@arbidocs/coedit/dist/server.js.map +1 -1
  97. package/node_modules/@arbidocs/coedit/dist/{session-Cf9iu1Vt.d.cts → session-WGvWs6yO.d.cts} +22 -4
  98. package/node_modules/@arbidocs/coedit/dist/{session-Cf9iu1Vt.d.ts → session-WGvWs6yO.d.ts} +22 -4
  99. package/node_modules/@arbidocs/coedit/package.json +1 -1
  100. package/package.json +5 -5
  101. package/dist/ConnectedStreamedWordArtifact-5DK6QGYN.cjs.map +0 -1
  102. package/dist/chunk-265GOG4W.js.map +0 -1
  103. package/dist/chunk-C3SMTA3C.cjs +0 -18
  104. package/dist/chunk-HUATKA3M.cjs +0 -18
  105. package/dist/chunk-NPR5BGFF.cjs.map +0 -1
package/dist/index.js CHANGED
@@ -5,8 +5,9 @@ export { DataTable, DataTableBlock, MetricCard, PageHeader, StatGroup } from './
5
5
  export { Accordion, AvatarBlock, Banner, BlockImage, BlockLink, CTABanner, Columns, ContactForm, Container, FAQ, FeatureGrid, Footer, Gallery, Hero, ListBlock, LogoCloud, MediaText, Navbar, PricingTable, ProfileCard, RichTextBlock, SectionHeading, Spacer, Steps, THEME_STYLE_ID, Tabs, TeamGrid, Testimonial, TestimonialGrid, ThemeEditor, VideoEmbed, applyFontVars, applyStoredTheme, applyThemeVars, clearFontVars, clearThemeVars, createThemeStore, tid, toEmbedUrl, toHslTriplet } from './chunk-VTTZZ4FN.js';
6
6
  export { Timeline } from './chunk-OVEQERPO.js';
7
7
  export { ActionMenu, AddContactsForm, AddContactsResults, ContactCard, DEFAULT_ADD_CONTACTS_LABELS, DEFAULT_CONTACT_CARD_LABELS, DEFAULT_CONTACT_OUTCOME_LABELS, DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS, DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS, DEFAULT_DM_INVITE_CHIP_LABELS, DEFAULT_DM_THREAD_FRAME_LABELS, DEFAULT_RECIPIENT_PICKER_LABELS, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, DmInviteChip, DmNewTabIcon, DmThreadFrame, DmThreadHeader, MAX_INVITE_EMAILS, RecipientPicker, contactToVCard, downloadVCard, parseEmails, toAddContactsRow, toAddContactsRows, vCardFilename } from './chunk-WK6FVIF7.js';
8
- export { DEFAULT_GLOSSARY_LABELS, DEFAULT_TAG_COLUMNS_EDITOR_LABELS, DEFAULT_TAG_DETAIL_LABELS, DEFAULT_TAG_TABLE_DOCX_LABELS, DEFAULT_TAG_TABLE_LABELS, DEFAULT_THREAD_FOLLOW_LABELS, DEFAULT_WORKSPACE_ACTIVITY_LABELS, DEFAULT_WORKSPACE_NOTIFICATION_MENU_LABELS, EXTRACT_LIMIT, EntityIdentityBar, ExtractEntitiesDialog, GridRowNavigator, IDENTITY_NAME_MAX_LENGTH, LoadingIndicator, RowNavigatorControls, TAG_TABLE_DOCX_LANDSCAPE_AFTER, TagColumnsEditor, TagDetail, TagPicker, TagTable, TagTableCell, ThreadFollowButton, ThreadFollowMenuItem, WorkspaceActivityList, WorkspaceNotificationMenu, cellText, cellValue, documentCount, entitiesPhrase, fieldWrites, glossaryDocumentXml, glossaryDocx, glossaryEntries, glossaryFileName, glossaryMarkdown, isGap, parseCell, rowLinks, tagDetailLabels, tagKindDescription, tagNoteLabel, tagTableDocumentXml, tagTableDocx, tagTableLabels, tagTableMarkdown, tagsPageNouns, workspaceActivityHeadline, workspaceActivityTarget } from './chunk-MNG7N6M2.js';
8
+ export { DEFAULT_GLOSSARY_LABELS, DEFAULT_TAG_COLUMNS_EDITOR_LABELS, DEFAULT_TAG_DETAIL_LABELS, DEFAULT_TAG_TABLE_DOCX_LABELS, DEFAULT_TAG_TABLE_LABELS, DEFAULT_THREAD_FOLLOW_LABELS, DEFAULT_WORKSPACE_ACTIVITY_LABELS, DEFAULT_WORKSPACE_NOTIFICATION_MENU_LABELS, EXTRACT_LIMIT, EntityIdentityBar, ExtractEntitiesDialog, GridRowNavigator, IDENTITY_NAME_MAX_LENGTH, LoadingIndicator, RowNavigatorControls, TAG_TABLE_DOCX_LANDSCAPE_AFTER, TagColumnsEditor, TagDetail, TagPicker, TagTable, TagTableCell, ThreadFollowButton, ThreadFollowMenuItem, WorkspaceActivityList, WorkspaceNotificationMenu, cellText, cellValue, documentCount, entitiesPhrase, fieldWrites, glossaryDocumentXml, glossaryDocx, glossaryEntries, glossaryFileName, glossaryMarkdown, isGap, parseCell, rowLinks, tagDetailLabels, tagKindDescription, tagNoteLabel, tagTableDocumentXml, tagTableDocx, tagTableLabels, tagTableMarkdown, tagsPageNouns, workspaceActivityHeadline, workspaceActivityTarget } from './chunk-UKCCV63X.js';
9
9
  export { MemberAvatarStack } from './chunk-XNOASBGW.js';
10
+ export { DEFAULT_DETAIL_PANEL_LABELS, DetailBody, DetailEmpty, DetailField, DetailFields, DetailLinkItem, DetailLinkList, DetailLoading, DetailPanel, DetailSection } from './chunk-ZCOVDK2E.js';
10
11
  export { ApplyLabelButton, ApplyLabelDialog, DEFAULT_APPLY_LABEL_DIALOG_LABELS, DEFAULT_RELEVANCE_STEPS, DEFAULT_SEARCH_BAR_LABELS, DEFAULT_SEARCH_EMPTY_STATE_LABELS, DEFAULT_SEARCH_GROUP_HEADER_LABELS, DEFAULT_SEARCH_NO_RESULTS_LABELS, DEFAULT_SEARCH_PAGINATION_LABELS, DEFAULT_SEARCH_TOTALS_LABELS, DOCUMENT_SEARCH_NOUNS, RelevanceThreshold, SearchBar, SearchControlsBar, SearchEmptyState, SearchErrorBanner, SearchGroupCard, SearchGroupHeader, SearchNoResults, SearchPageBody, SearchPageFrame, SearchPageHeader, SearchPagination, SearchPillToggle, SearchResultList, SearchResultsInner, SearchResultsMain, SearchSnippet, SearchToolbarRow, SearchTotalsHeadline, extractHighlightTerms, extractQuotedTerms, getPageNumbers, getSearchMatchHint, groupSearchResults, highlightTerms, isMeaningMatch, passesRelevanceCutoff, renderSearchSnippet, searchNouns, stripMarkdownLinks } from './chunk-G4IYES7G.js';
11
12
  export { UsageMeter, usageMeterState } from './chunk-66TA5IBN.js';
12
13
  export { Callout } from './chunk-UJE32SST.js';
@@ -14,25 +15,24 @@ export { FONT_PAIRINGS, fontPackages, getFontPairing, matchFontPairing } from '.
14
15
  export { DEFAULT_MAIL_FOLDER_TREE_LABELS, MailDeliveryBadge, MailDeliveryList, MailDocumentPicker, MailFolderTree, MailGrid, MailMessagePreview, MailMessageView, MemberBulkActions, MemberListLoading, MemberMutedText, MemberNameCell, MemberRoleCell, NEEDS_CONNECTION, PlainMailBodyEditor, RoleSelect, WorkspaceDeleteButton, buildMailFolderTree, descendantFolderIds, draftMailCompose, emptyMailCompose, hasCalendarPart, isInboxFolder, mailAddressLabel, parseMailRecipients, replyMailCompose, toggleMailFolder } from './chunk-SZSJGZSO.js';
15
16
  import './chunk-NBV56SGU.js';
16
17
  export { ActionCluster, AskField, AskRow, AskTrigger, DEFAULT_ASK_FIELD_LABELS, DEFAULT_INSTALL_PROMPT_LABELS, DEFAULT_MOBILE_BARS_LABELS, DEFAULT_OFFLINE_PILL_LABELS, DEFAULT_REMOTE_CONTROL_PILL_LABELS, DEFAULT_SIDEBAR_LABELS, DEFAULT_TIP_CARD_LABELS, INSTALL_PROMPT_DISMISSED_KEY, InfoBar, InstallPrompt, MobileAppBar, MobileTabBar, NotificationBell, OfflinePill, RemoteControlPill, STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES, ShellSidebar, Sidebar, SidebarBadgeRow, SidebarRowAction, SidebarRowHoverContext, SplitLayout, StatusBadge, StatusRow, TipCard, UserMenu, getInstallInstructions, initInstallPrompt, isIosDevice, promptAppInstall, resolveSidebarLayout, useCloseOnEscape, useInstallPrompt, useSidebarContext, useSidebarController, useSidebarSettle } from './chunk-YNMO3DSR.js';
17
- export { DEFAULT_SHARE_CONTROL_LABELS, ShareControl } from './chunk-K4BGOPGG.js';
18
- import './chunk-SDOEHEJP.js';
19
18
  export { DEFAULT_WORKSPACE_KIND_LABELS, DEFAULT_WORKSPACE_SWITCHER_LABELS, WorkspaceIdentity, WorkspaceSwitcher, workspaceKindColor, workspaceKindMeta } from './chunk-A3XPS2EU.js';
20
19
  export { buildDeepLinkPath, buildDeepLinkUrl, parseDeepLinkPath } from './chunk-SV65E4QW.js';
21
- export { DEFAULT_DETAIL_PANEL_LABELS, DetailBody, DetailEmpty, DetailField, DetailFields, DetailLinkItem, DetailLinkList, DetailLoading, DetailPanel, DetailSection } from './chunk-ZCOVDK2E.js';
22
20
  export { DEFINITIONS_LABEL, DEFINITION_BOOKMARK_PREFIX, compareDefinitions, compareTerms, definitionBookmark, definitionIdOfBookmark, definitionLabels, filterTermGroups, findDefinitionsLabel, groupDefinitions, isDefinitionsLabel, parseDefinition, termKey, toDefinition, toDefinitionSource } from './chunk-DIB4JYUY.js';
23
21
  export { DEFAULT_SEARCH_HIT_LABELS, SearchHit } from './chunk-DEPF5LQI.js';
24
22
  export { TIMELINE_ZOOM, TimelineCalendar, TimelineGantt, TimelineZoomControl, dayKey, formatSpan, monthLabel, parseIso, utcDay } from './chunk-4EZVCGRL.js';
25
23
  import './chunk-AF6RDAJF.js';
26
- export { AgentBar, AgentBarIconButton, AgentBarMenu, AgentBarNotes, AgentBarProbeAnswer, AgentBarQueuedNote, AgentBarStatus, AgentCard, AgentCreateView, AgentCreatedView, AgentEditView, AgentGallery, AgentMainView, ConfigField, ConfigForm, ConsentActions, ConsentBulletList, ConsentCard, ConsentFootnote, ConsentHeader, ConsentMessage, ConsentNotice, ConsentPage, ConsentPermissionList, ConsentSection, ConsentStrong, ConsentText, ConversationListView, ConversationTurnSpeaker, CopyableUrl, DEFAULT_AGENT_BAR_LABELS, DEFAULT_AGENT_CARD_LABELS, DEFAULT_AGENT_GALLERY_LABELS, DEFAULT_AGENT_STEPS_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_CARD_LABELS, DEFAULT_SKILL_ROW_LABELS, DEFAULT_SUBAGENT_ROSTER_LABELS, DEFAULT_TASKS_CHROME_LABELS, DEFAULT_TASK_COMPOSER_LABELS, DEFAULT_TASK_LIST_LABELS, DEFAULT_TASK_OUTPUTS_CELL_LABELS, DEFAULT_TASK_PLAN_LABELS, DEFAULT_TASK_STATUS_PILL_LABELS, DEFAULT_TASK_THREAD_CHIP_LABELS, DEFAULT_THREAD_LAUNCHER_LABELS, DEFAULT_THREAD_STATE_LABELS, DEFAULT_TUPLE_ARRAY_FIELD_LABELS, DEFAULT_UPLOAD_TASK_ITEM_LABELS, DEFAULT_UPLOAD_TASK_LIST_LABELS, DEFAULT_WORKFLOWS_CHROME_LABELS, DEFAULT_WORKFLOW_RUN_STATUS_LABELS, DEFAULT_WORKFLOW_THREAD_STRIP_LABELS, DERIVED_NAME_WORDS, EMPTY_NEW_THREAD, EntityChip, GoalCriteria, MAX_TASK_DEPTH, NewThreadDialog, PillSelect, RecurrenceBuilder, SkillCard, SkillRow, StepDetail, StepNarration, StepOutcome, StepParams, StepRow, StepSummary, StepTrace, StepTraceSummary, SubAgentLane, SubStepGroup, SubagentRoster, TASK_COLUMN_ORDER, TaskComposer, TaskFlow, TaskInbox, TaskMoveDialog, TaskOutputsCell, TaskPlan, TaskStartDialog, TaskStatusPill, TaskTable, TaskThreadChip, TasksToolbar, ThreadActivity, ThreadLauncher, ThreadNotifyDialog, ThreadStatusLine, TupleArrayField, UploadTaskItem, UploadTaskList, WEEKDAYS, WorkflowRunStatus, WorkflowThreadStartedBy, WorkflowThreadStrip, WorkflowsToolbar, authModeFor, buildRRule, buildTaskRows, compactThreadActivity, composerToTaskQuery, composerToWorkRequest, composerToWorkflowRequest, composerToWorkflowUpdate, createTaskColumns, createsWork, defaultScopeRenderer, defaultTaskComposerValues, deriveWorkflowName, descendantIds, describeRRule, filterConversationRows, firstWords, formatElapsed, groupThreadActivity, hasTaskFields, humanizeSection, indexTasks, inferType, inputDocumentIds, isAgenticWorkflow, isOutOfBounds, isPlainTodo, isoToLocalInput, linkedRunsFromActivity, localInputToIso, moveTargets, newThreadToRequest, nextCriterionId, ownerExtId, parseRRule, prettifyKey, resolveScopeInputs, taskComposerToCreateRequest, taskComposerToUpdateRequest, taskNeedsAccess, taskToComposerValues, useWorkflowPreview, workflowTaskFields, workflowToComposerValues, workflowWhen } from './chunk-QKR5LWDO.js';
27
- export { ActionStepBody, AgentAvatarField, AgentConnectInstructions, AgentCreator, AgentTypeSelector, ApprovalEvidence, AssigneeLine, CapabilityGrid, CapabilityTile, DEFAULT_AGENT_AVATAR_FIELD_LABELS, DEFAULT_AGENT_CAPABILITIES, DEFAULT_AGENT_CREATOR_LABELS, DEFAULT_AGENT_TEMPLATES, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TYPE_SELECTOR_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_TASK_ACTIVITY_LABELS, DEFAULT_TASK_RUNS_DIALOG_LABELS, DEFAULT_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_STEP_PARTS_LABELS, SKILL_FIELD_TYPE_LABELS, SKILL_MAIN_FILENAME, SKILL_SOURCE_LABELS, SKILL_TYPES, SKILL_TYPE_LABELS, STATUS_LABELS, STATUS_ORDER, STATUS_TONE, SendBackControl, SkillActionButton, SkillDetail, SkillDetailSection, SkillEditForm, SkillFilterChips, SkillGenerateForm, SkillGlobalBadge, SkillLibraryDetail, SkillTile, SkillTypeBadge, SkillViewToggle, TRIGGER_LABELS, TaskActivityDialog, TaskActivityTimeline, TaskRunsDialog, WorkflowRunner, activeStepId, agentConfigSectionToValues, agentCreatorToConfigSection, asTaskStatus, buildLibrarySkills, buildZipSkillImport, composePersona, deriveAgentName, filterLibrarySkills, fromPlanAssignee, fromPlanDocumentRef, fromPlanSteps, goalProgress, importMarkdownSkill, importSkillFile, importSkillFromUrl, isIncompleteSignal, isMainSkillFile, isValidAgentName, layoutFromPlanSteps, parseSkillFrontmatter, readSkillArchive, serializeSkill, skillSlug, stepWindow, stripPersonaPreamble, summarizeAgent, summarizeCapabilities, taskActivityHeadline, toPlanAssignee, toPlanDocumentRef, toPlanSteps, useWorkflowView, workflowFromSkillMarkdown, workflowToSkillMarkdown } from './chunk-P6RIBIVN.js';
24
+ export { DEFAULT_SHARE_CONTROL_LABELS, ShareControl } from './chunk-K4BGOPGG.js';
25
+ import './chunk-SDOEHEJP.js';
26
+ export { AgentBar, AgentBarIconButton, AgentBarMenu, AgentBarNotes, AgentBarProbeAnswer, AgentBarQueuedNote, AgentBarStatus, AgentCard, AgentCreateView, AgentCreatedView, AgentEditView, AgentGallery, AgentMainView, ConfigField, ConfigForm, ConsentActions, ConsentBulletList, ConsentCard, ConsentFootnote, ConsentHeader, ConsentMessage, ConsentNotice, ConsentPage, ConsentPermissionList, ConsentSection, ConsentStrong, ConsentText, ConversationListView, ConversationTurnSpeaker, CopyableUrl, DEFAULT_AGENT_BAR_LABELS, DEFAULT_AGENT_CARD_LABELS, DEFAULT_AGENT_GALLERY_LABELS, DEFAULT_AGENT_STEPS_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_CARD_LABELS, DEFAULT_SKILL_ROW_LABELS, DEFAULT_SUBAGENT_ROSTER_LABELS, DEFAULT_TASKS_CHROME_LABELS, DEFAULT_TASK_COMPOSER_LABELS, DEFAULT_TASK_LIST_LABELS, DEFAULT_TASK_OUTPUTS_CELL_LABELS, DEFAULT_TASK_PLAN_LABELS, DEFAULT_TASK_STATUS_PILL_LABELS, DEFAULT_TASK_THREAD_CHIP_LABELS, DEFAULT_THREAD_LAUNCHER_LABELS, DEFAULT_THREAD_STATE_LABELS, DEFAULT_TUPLE_ARRAY_FIELD_LABELS, DEFAULT_UPLOAD_TASK_ITEM_LABELS, DEFAULT_UPLOAD_TASK_LIST_LABELS, DEFAULT_WORKFLOWS_CHROME_LABELS, DEFAULT_WORKFLOW_RUN_STATUS_LABELS, DEFAULT_WORKFLOW_THREAD_STRIP_LABELS, DERIVED_NAME_WORDS, EMPTY_NEW_THREAD, EntityChip, GoalCriteria, MAX_TASK_DEPTH, NewThreadDialog, PillSelect, RecurrenceBuilder, SkillCard, SkillRow, StepDetail, StepNarration, StepOutcome, StepParams, StepRow, StepSummary, StepTrace, StepTraceSummary, SubAgentLane, SubStepGroup, SubagentRoster, TASK_COLUMN_ORDER, TaskComposer, TaskFlow, TaskInbox, TaskMoveDialog, TaskOutputsCell, TaskPlan, TaskStartDialog, TaskStatusPill, TaskTable, TaskThreadChip, TasksToolbar, ThreadActivity, ThreadLauncher, ThreadNotifyDialog, ThreadStatusLine, TupleArrayField, UploadTaskItem, UploadTaskList, WEEKDAYS, WorkflowRunStatus, WorkflowThreadStartedBy, WorkflowThreadStrip, WorkflowsToolbar, authModeFor, buildRRule, buildTaskRows, compactThreadActivity, composerToTaskQuery, composerToWorkRequest, composerToWorkflowRequest, composerToWorkflowUpdate, createTaskColumns, createsWork, defaultScopeRenderer, defaultTaskComposerValues, deriveWorkflowName, descendantIds, describeRRule, filterConversationRows, firstWords, formatElapsed, groupThreadActivity, hasTaskFields, humanizeSection, indexTasks, inferType, inputDocumentIds, isAgenticWorkflow, isOutOfBounds, isPlainTodo, isoToLocalInput, linkedRunsFromActivity, localInputToIso, moveTargets, newThreadToRequest, nextCriterionId, ownerExtId, parseRRule, prettifyKey, resolveScopeInputs, taskComposerToCreateRequest, taskComposerToUpdateRequest, taskNeedsAccess, taskToComposerValues, useWorkflowPreview, workflowTaskFields, workflowToComposerValues, workflowWhen } from './chunk-6HG56GCT.js';
27
+ export { ActionStepBody, AgentAvatarField, AgentConnectInstructions, AgentCreator, AgentTypeSelector, ApprovalEvidence, AssigneeLine, CapabilityGrid, CapabilityTile, DEFAULT_AGENT_AVATAR_FIELD_LABELS, DEFAULT_AGENT_CAPABILITIES, DEFAULT_AGENT_CREATOR_LABELS, DEFAULT_AGENT_TEMPLATES, DEFAULT_AGENT_TYPES, DEFAULT_AGENT_TYPE_SELECTOR_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_TASK_ACTIVITY_LABELS, DEFAULT_TASK_RUNS_DIALOG_LABELS, DEFAULT_WORKFLOW_RUNNER_LABELS, DEFAULT_WORKFLOW_STEP_PARTS_LABELS, SKILL_FIELD_TYPE_LABELS, SKILL_MAIN_FILENAME, SKILL_SOURCE_LABELS, SKILL_TYPES, SKILL_TYPE_LABELS, STATUS_LABELS, STATUS_ORDER, STATUS_TONE, SendBackControl, SkillActionButton, SkillDetail, SkillDetailSection, SkillEditForm, SkillFilterChips, SkillGenerateForm, SkillGlobalBadge, SkillLibraryDetail, SkillTile, SkillTypeBadge, SkillViewToggle, TRIGGER_LABELS, TaskActivityDialog, TaskActivityTimeline, TaskRunsDialog, WorkflowRunner, activeStepId, agentConfigSectionToValues, agentCreatorToConfigSection, asTaskStatus, buildLibrarySkills, buildZipSkillImport, composePersona, deriveAgentName, filterLibrarySkills, fromPlanAssignee, fromPlanDocumentRef, fromPlanSteps, goalProgress, importMarkdownSkill, importSkillFile, importSkillFromUrl, isIncompleteSignal, isMainSkillFile, isValidAgentName, layoutFromPlanSteps, parseSkillFrontmatter, readSkillArchive, serializeSkill, skillSlug, stepWindow, stripPersonaPreamble, summarizeAgent, summarizeCapabilities, taskActivityHeadline, toPlanAssignee, toPlanDocumentRef, toPlanSteps, useWorkflowView, workflowFromSkillMarkdown, workflowToSkillMarkdown } from './chunk-UPMADXDU.js';
28
28
  import './chunk-CQCC7LE7.js';
29
29
  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-XI37A7HH.js';
30
30
  import './chunk-BQ77KSXU.js';
31
31
  import './chunk-NUSBINUM.js';
32
32
  export { EmptyState } from './chunk-P6GHJSLR.js';
33
+ import './chunk-RLWIUUQ5.js';
33
34
  import './chunk-M4S75AEJ.js';
34
35
  export { Dot, ToneBadge } from './chunk-5LXQPP2K.js';
35
- import './chunk-RLWIUUQ5.js';
36
36
  export { ActionLink } from './chunk-VF5EUAIV.js';
37
37
  import './chunk-NUNKSZKU.js';
38
38
  export { DEFAULT_FILTER_FIELDS, DEFAULT_FILTER_INPUT_LABELS, FilterInput } from './chunk-YU2KUMGE.js';
@@ -47,8 +47,8 @@ export { BlocksTooltipProvider, DEFAULT_OVERLAY_ZONE_ID, DEFAULT_PAGE_CONTAINER_
47
47
  export { savedDocumentIdFor, takeOpenDocumentForTurn, useOpenDocumentId, useRegisterOpenDocument } from './chunk-YBLIKTJK.js';
48
48
  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, useMentionAutocomplete, validateStep, validateWorkflowGraph, workflowSteps } from './chunk-PDKM27DF.js';
49
49
  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';
50
- export { TONES, isTone } from './chunk-AUS3KBHJ.js';
51
50
  export { DEFAULT_MENTION_LABELS, MENTION_HREF_PREFIX, MentionChip, MentionMenu, extractMentions, filterMentionCandidates, findMentionQuery, insertMention, linkMentions, mentionFromHref, toMessageMentions, useListKeyNav } from './chunk-AA3PT6KR.js';
51
+ export { TONES, isTone } from './chunk-AUS3KBHJ.js';
52
52
  export { BREAKPOINT_QUERIES, useIsNarrow, useIsPhone, useIsTouchScreen, useMediaQuery } from './chunk-SLSBJRWW.js';
53
53
  import './chunk-Z3AZ7Q5X.js';
54
54
  import './chunk-NPLYHR2E.js';
@@ -16,8 +16,8 @@ require('../chunk-B6MVQCXW.cjs');
16
16
  require('../chunk-JKB7WT7L.cjs');
17
17
  require('../chunk-JSTKEZBS.cjs');
18
18
  require('../chunk-76L6LOP3.cjs');
19
- require('../chunk-32HW2Q33.cjs');
20
19
  require('../chunk-7UTB4PHM.cjs');
20
+ require('../chunk-32HW2Q33.cjs');
21
21
  require('../chunk-PPCATBOY.cjs');
22
22
  require('../chunk-MHVNT4J3.cjs');
23
23
  var chunkCNHUJRQ4_cjs = require('../chunk-CNHUJRQ4.cjs');
@@ -15,8 +15,8 @@ import '../chunk-7XF5SFJ2.js';
15
15
  import '../chunk-YBLIKTJK.js';
16
16
  import '../chunk-PDKM27DF.js';
17
17
  import '../chunk-TZGBRLPK.js';
18
- import '../chunk-AUS3KBHJ.js';
19
18
  import '../chunk-AA3PT6KR.js';
19
+ import '../chunk-AUS3KBHJ.js';
20
20
  import '../chunk-NPLYHR2E.js';
21
21
  import '../chunk-7F6CBP3Z.js';
22
22
  import { useBlocksEnvironment } from '../chunk-F57LNUSZ.js';
@@ -3,16 +3,16 @@
3
3
 
4
4
  var chunkCB4TIDEX_cjs = require('../chunk-CB4TIDEX.cjs');
5
5
  var chunkFM3IRQJW_cjs = require('../chunk-FM3IRQJW.cjs');
6
- var chunk6QAAIDQQ_cjs = require('../chunk-6QAAIDQQ.cjs');
7
- var chunkYF3QUHKN_cjs = require('../chunk-YF3QUHKN.cjs');
6
+ var chunkO3FB62T5_cjs = require('../chunk-O3FB62T5.cjs');
7
+ var chunkFEGXFABZ_cjs = require('../chunk-FEGXFABZ.cjs');
8
8
  require('../chunk-RFIBUWLF.cjs');
9
9
  var chunkYBJ4QGNH_cjs = require('../chunk-YBJ4QGNH.cjs');
10
10
  require('../chunk-OALEDG67.cjs');
11
11
  require('../chunk-2VHYOTWW.cjs');
12
12
  require('../chunk-ZW6FPIFC.cjs');
13
+ require('../chunk-AHDJXIUB.cjs');
13
14
  require('../chunk-SIB6C7P7.cjs');
14
15
  require('../chunk-DVUZTGVL.cjs');
15
- require('../chunk-AHDJXIUB.cjs');
16
16
  require('../chunk-3VULDTNL.cjs');
17
17
  require('../chunk-V4ISCZJ7.cjs');
18
18
  require('../chunk-2EI7NCUA.cjs');
@@ -20,8 +20,8 @@ require('../chunk-C2CWWEHO.cjs');
20
20
  require('../chunk-7RGLTF76.cjs');
21
21
  var chunkJSTKEZBS_cjs = require('../chunk-JSTKEZBS.cjs');
22
22
  var chunk76L6LOP3_cjs = require('../chunk-76L6LOP3.cjs');
23
- var chunk32HW2Q33_cjs = require('../chunk-32HW2Q33.cjs');
24
23
  require('../chunk-7UTB4PHM.cjs');
24
+ var chunk32HW2Q33_cjs = require('../chunk-32HW2Q33.cjs');
25
25
  require('../chunk-FX3K6LNZ.cjs');
26
26
  require('../chunk-PPCATBOY.cjs');
27
27
  require('../chunk-MHVNT4J3.cjs');
@@ -319,9 +319,9 @@ function SignalsEditor({
319
319
  {
320
320
  className: ui.cn(
321
321
  "space-y-1.5 rounded-md border p-2",
322
- chunkYF3QUHKN_cjs.isIncompleteSignal(signal) ? "border-destructive/50" : "border-border"
322
+ chunkFEGXFABZ_cjs.isIncompleteSignal(signal) ? "border-destructive/50" : "border-border"
323
323
  ),
324
- "data-incomplete": chunkYF3QUHKN_cjs.isIncompleteSignal(signal) || void 0,
324
+ "data-incomplete": chunkFEGXFABZ_cjs.isIncompleteSignal(signal) || void 0,
325
325
  "data-testid": `${testId}-${i}`,
326
326
  children: [
327
327
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
@@ -1607,7 +1607,7 @@ function triggerFields(trigger, clearOthers) {
1607
1607
  return {
1608
1608
  timezone: trigger.timezone,
1609
1609
  rrule: trigger.start === "repeat" ? trigger.rrule.trim() : none,
1610
- run_at: trigger.start === "once" ? chunk6QAAIDQQ_cjs.localInputToIso(trigger.runAt) : none,
1610
+ run_at: trigger.start === "once" ? chunkO3FB62T5_cjs.localInputToIso(trigger.runAt) : none,
1611
1611
  event_kind: trigger.start === "event" ? trigger.eventKind.trim() : none,
1612
1612
  // A step signal is `workflow_signal` narrowed to one signal name.
1613
1613
  event_filter: filter ?? none,
@@ -1623,7 +1623,7 @@ function plan(value, options) {
1623
1623
  criteria: [],
1624
1624
  max_passes: 3,
1625
1625
  documents: [],
1626
- steps: chunkYF3QUHKN_cjs.toPlanSteps(value.workflow, options)
1626
+ steps: chunkFEGXFABZ_cjs.toPlanSteps(value.workflow, options)
1627
1627
  };
1628
1628
  }
1629
1629
  function builderToWorkflowRequest(value, workspaceId, options = {}) {
@@ -1658,7 +1658,7 @@ function builderToWorkflowUpdate(value, options = {}) {
1658
1658
  }
1659
1659
  function workflowRecordToBuilder(record) {
1660
1660
  const planned = record.plan?.steps ?? [];
1661
- const steps = planned.length ? chunkYF3QUHKN_cjs.fromPlanSteps(planned) : record.prompt || record.skill_ref ? [
1661
+ const steps = planned.length ? chunkFEGXFABZ_cjs.fromPlanSteps(planned) : record.prompt || record.skill_ref ? [
1662
1662
  {
1663
1663
  id: "work",
1664
1664
  kind: "agent",
@@ -1666,7 +1666,7 @@ function workflowRecordToBuilder(record) {
1666
1666
  ...record.skill_ref ? { workflow: record.skill_ref } : { run: { kind: "prompt", promptTemplate: record.prompt } }
1667
1667
  }
1668
1668
  ] : [];
1669
- const when = chunk6QAAIDQQ_cjs.workflowWhen(record);
1669
+ const when = chunkO3FB62T5_cjs.workflowWhen(record);
1670
1670
  return {
1671
1671
  workflow: {
1672
1672
  id: record.external_id,
@@ -1675,12 +1675,12 @@ function workflowRecordToBuilder(record) {
1675
1675
  inputs: [],
1676
1676
  landing: "chat",
1677
1677
  schedulable: false,
1678
- run: { kind: "steps", steps, layout: chunkYF3QUHKN_cjs.layoutFromPlanSteps(planned ?? []) }
1678
+ run: { kind: "steps", steps, layout: chunkFEGXFABZ_cjs.layoutFromPlanSteps(planned ?? []) }
1679
1679
  },
1680
1680
  trigger: {
1681
1681
  ...DEFAULT_WORKFLOW_TRIGGER,
1682
1682
  start: when === "now" ? "manual" : when,
1683
- runAt: chunk6QAAIDQQ_cjs.isoToLocalInput(record.run_at),
1683
+ runAt: chunkO3FB62T5_cjs.isoToLocalInput(record.run_at),
1684
1684
  rrule: record.rrule ?? "",
1685
1685
  timezone: record.timezone || DEFAULT_WORKFLOW_TRIGGER.timezone,
1686
1686
  eventKind: record.event_kind ?? "",
@@ -1736,7 +1736,7 @@ function triggerSummary(trigger, options = {}) {
1736
1736
  case "once":
1737
1737
  return trigger.runAt ? new Date(trigger.runAt).toLocaleString() : l.starts.once;
1738
1738
  case "repeat":
1739
- return trigger.rrule ? chunk6QAAIDQQ_cjs.describeRRule(trigger.rrule) : l.starts.repeat;
1739
+ return trigger.rrule ? chunkO3FB62T5_cjs.describeRRule(trigger.rrule) : l.starts.repeat;
1740
1740
  case "event":
1741
1741
  if (isSignalTrigger(trigger))
1742
1742
  return trigger.signal ? l.signalSummary.replace("{signal}", trigger.signal) : l.stepSignals;
@@ -1795,7 +1795,7 @@ function TriggerInspector({
1795
1795
  }
1796
1796
  )
1797
1797
  ] }),
1798
- trigger.start === "repeat" && /* @__PURE__ */ jsxRuntime.jsx(chunk6QAAIDQQ_cjs.RecurrenceBuilder, { rrule: trigger.rrule, onChange: (rrule) => set({ rrule }) }),
1798
+ trigger.start === "repeat" && /* @__PURE__ */ jsxRuntime.jsx(chunkO3FB62T5_cjs.RecurrenceBuilder, { rrule: trigger.rrule, onChange: (rrule) => set({ rrule }) }),
1799
1799
  trigger.start === "event" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
1800
1800
  /* @__PURE__ */ jsxRuntime.jsx(ui.Label, { className: "text-xs", children: l.event }),
1801
1801
  /* @__PURE__ */ jsxRuntime.jsxs(
@@ -2684,13 +2684,13 @@ function WorkflowPreview({
2684
2684
  renderIcon,
2685
2685
  testId
2686
2686
  }) {
2687
- const run = chunk6QAAIDQQ_cjs.useWorkflowPreview(workflow, {
2687
+ const run = chunkO3FB62T5_cjs.useWorkflowPreview(workflow, {
2688
2688
  resolveWorkflow: (id) => workflows.find((w) => w.id === id),
2689
2689
  compose,
2690
2690
  answer
2691
2691
  });
2692
2692
  return /* @__PURE__ */ jsxRuntime.jsx(
2693
- chunkYF3QUHKN_cjs.WorkflowRunner,
2693
+ chunkFEGXFABZ_cjs.WorkflowRunner,
2694
2694
  {
2695
2695
  workflow,
2696
2696
  run,
@@ -1,16 +1,16 @@
1
1
  "use client";
2
2
  import { useConnectedTags, useConnectedDocuments, useConnectedConversations } from '../chunk-KDLX5AA7.js';
3
3
  import { useConnectedWorkspace } from '../chunk-TF7HN5EU.js';
4
- import { workflowWhen, isoToLocalInput, describeRRule, RecurrenceBuilder, useWorkflowPreview, localInputToIso } from '../chunk-QKR5LWDO.js';
5
- import { isIncompleteSignal, fromPlanSteps, layoutFromPlanSteps, WorkflowRunner, toPlanSteps } from '../chunk-P6RIBIVN.js';
4
+ import { workflowWhen, isoToLocalInput, describeRRule, RecurrenceBuilder, useWorkflowPreview, localInputToIso } from '../chunk-6HG56GCT.js';
5
+ import { isIncompleteSignal, fromPlanSteps, layoutFromPlanSteps, WorkflowRunner, toPlanSteps } from '../chunk-UPMADXDU.js';
6
6
  import '../chunk-CQCC7LE7.js';
7
7
  import { AgentSelect } from '../chunk-XI37A7HH.js';
8
8
  import '../chunk-BQ77KSXU.js';
9
9
  import '../chunk-NUSBINUM.js';
10
10
  import '../chunk-P6GHJSLR.js';
11
+ import '../chunk-RLWIUUQ5.js';
11
12
  import '../chunk-M4S75AEJ.js';
12
13
  import '../chunk-5LXQPP2K.js';
13
- import '../chunk-RLWIUUQ5.js';
14
14
  import '../chunk-VF5EUAIV.js';
15
15
  import '../chunk-NUNKSZKU.js';
16
16
  import '../chunk-YU2KUMGE.js';
@@ -18,8 +18,8 @@ import '../chunk-N5YEF3LC.js';
18
18
  import '../chunk-4WWM3GQ5.js';
19
19
  import { DEFAULT_STEP_KIND_LABELS, workflowSteps, dependsOn, stepLevels, runFields, upstreamSteps, stepDependencies, canAssign, WORKFLOW_STEP_KINDS, STEP_KIND_ICONS, validateWorkflowGraph, stepConfigProblems, assigneeName, orderSteps, stepKindOf } from '../chunk-PDKM27DF.js';
20
20
  import { mergeSkillWorkflows } from '../chunk-TZGBRLPK.js';
21
- import { TONE_DOT, TONES, isTone } from '../chunk-AUS3KBHJ.js';
22
21
  import '../chunk-AA3PT6KR.js';
22
+ import { TONE_DOT, TONES, isTone } from '../chunk-AUS3KBHJ.js';
23
23
  import '../chunk-SLSBJRWW.js';
24
24
  import '../chunk-NPLYHR2E.js';
25
25
  import '../chunk-7F6CBP3Z.js';
@@ -1281,7 +1281,6 @@ function applyJournal(doc, registry, journal, origin, context) {
1281
1281
 
1282
1282
  // src/sync.ts
1283
1283
  var LOCAL_ORIGIN = /* @__PURE__ */ Symbol("arbi-coedit/local");
1284
- var DEFAULT_REMOTE_DELAY_MS = 40;
1285
1284
  var MirrorSync = class {
1286
1285
  doc;
1287
1286
  registry = new NodeRegistry();
@@ -1290,14 +1289,11 @@ var MirrorSync = class {
1290
1289
  actorId;
1291
1290
  onFailure;
1292
1291
  onLocalJournal;
1292
+ aroundRemote;
1293
1293
  disposers = [];
1294
- remoteDelayMs;
1295
1294
  operation = 0;
1296
1295
  applyingRemote = false;
1297
1296
  failed = false;
1298
- remoteDirty = false;
1299
- remoteOrigin;
1300
- remoteTimer;
1301
1297
  /** Parts whose node ids must be re-registered before the next local journal; true means all. */
1302
1298
  staleParts = null;
1303
1299
  constructor(options) {
@@ -1306,7 +1302,7 @@ var MirrorSync = class {
1306
1302
  this.actorId = options.actorId;
1307
1303
  this.onFailure = options.onFailure;
1308
1304
  this.onLocalJournal = options.onLocalJournal;
1309
- this.remoteDelayMs = options.remoteDelayMs ?? DEFAULT_REMOTE_DELAY_MS;
1305
+ this.aroundRemote = options.aroundRemote;
1310
1306
  registerMirror(this.doc, this.registry);
1311
1307
  this.cache = new MaterializeCache(this.doc);
1312
1308
  this.disposers.push(() => this.cache.destroy());
@@ -1327,16 +1323,10 @@ var MirrorSync = class {
1327
1323
  const onAfterTransaction = (transaction) => {
1328
1324
  if (transaction.origin === LOCAL_ORIGIN || this.failed) return;
1329
1325
  if (transaction.changed.size === 0 && transaction.changedParentTypes.size === 0) return;
1330
- this.remoteDirty = true;
1331
- this.remoteOrigin = transaction.origin;
1332
- if (this.remoteDelayMs <= 0) this.flushRemote();
1333
- else if (this.remoteTimer === void 0) {
1334
- this.remoteTimer = setTimeout(() => this.flushRemote(), this.remoteDelayMs);
1335
- }
1326
+ this.publishRemote(transaction.origin);
1336
1327
  };
1337
1328
  this.doc.on("afterTransaction", onAfterTransaction);
1338
1329
  this.disposers.push(() => this.doc.off("afterTransaction", onAfterTransaction));
1339
- this.disposers.push(() => clearTimeout(this.remoteTimer));
1340
1330
  }
1341
1331
  get hasFailed() {
1342
1332
  return this.failed;
@@ -1345,17 +1335,8 @@ var MirrorSync = class {
1345
1335
  beforeRemote() {
1346
1336
  this.port.flushPendingJournals();
1347
1337
  }
1348
- /** Publish any waiting remote change now. Call before a local operation runs. */
1349
- flushRemote() {
1350
- clearTimeout(this.remoteTimer);
1351
- this.remoteTimer = void 0;
1352
- if (!this.remoteDirty || this.failed) return;
1353
- this.remoteDirty = false;
1354
- this.publishRemote(this.remoteOrigin);
1355
- }
1356
1338
  /** Make the local tree equal to the room: used when the editor opened an older snapshot of it. */
1357
1339
  adopt() {
1358
- this.remoteDirty = false;
1359
1340
  this.publishRemote(void 0);
1360
1341
  }
1361
1342
  /** Re-register node ids for parts a remote publication replaced; deferred until a local edit needs them. */
@@ -1365,23 +1346,29 @@ var MirrorSync = class {
1365
1346
  this.staleParts = null;
1366
1347
  }
1367
1348
  publishRemote(origin) {
1349
+ if (this.failed) return;
1350
+ const published = this.aroundRemote?.();
1368
1351
  this.applyingRemote = true;
1369
1352
  const changed = this.cache.take();
1353
+ let ok = false;
1370
1354
  try {
1371
1355
  const result = this.port.applyRemotePackage(materialize(this.doc, this.cache, changed), {
1372
- origin: "dev.docx-editor.collaboration.remote",
1356
+ // The editor's own origin for a peer's change: it carries the local caret only across those.
1357
+ origin: store.ORIGIN_IDS.mutationRemote,
1373
1358
  actorId: typeof origin === "string" ? origin : this.actorId,
1374
1359
  operationId: `${this.actorId}:remote:${this.operation++}`
1375
1360
  });
1376
1361
  if (!result.ok) throw new JournalError(result.reason);
1377
1362
  if (changed === null || this.staleParts === true) this.staleParts = true;
1378
1363
  else this.staleParts = /* @__PURE__ */ new Set([...this.staleParts ?? [], ...changed]);
1364
+ ok = true;
1379
1365
  } catch (error) {
1380
1366
  this.cache.restore(changed);
1381
1367
  this.fail(error instanceof MaterializeError ? "materialize" : "apply", error);
1382
1368
  } finally {
1383
1369
  this.applyingRemote = false;
1384
1370
  }
1371
+ if (ok) published?.();
1385
1372
  }
1386
1373
  fail(code, error) {
1387
1374
  if (this.failed) return;
@@ -1435,7 +1422,6 @@ var DocxCollaborationSession = class {
1435
1422
  doc;
1436
1423
  awareness;
1437
1424
  offlineEditing;
1438
- remoteDelayMs;
1439
1425
  tracker = collaboration.createCollaborationStatusTracker("initializing");
1440
1426
  statusListeners = /* @__PURE__ */ new Set();
1441
1427
  participantListeners = /* @__PURE__ */ new Set();
@@ -1448,6 +1434,10 @@ var DocxCollaborationSession = class {
1448
1434
  selectionsCache = [];
1449
1435
  selectionsKey = "[]";
1450
1436
  baselineVector;
1437
+ /** The selection the editor last published, carried across the remote changes since. */
1438
+ carried = null;
1439
+ selectionMove = null;
1440
+ inputFlush = null;
1451
1441
  disposers = [];
1452
1442
  constructor(options) {
1453
1443
  this.documentId = options.documentId;
@@ -1456,7 +1446,6 @@ var DocxCollaborationSession = class {
1456
1446
  this.doc = options.doc;
1457
1447
  this.awareness = options.awareness;
1458
1448
  this.offlineEditing = options.offlineEditing ?? false;
1459
- this.remoteDelayMs = options.remoteDelayMs;
1460
1449
  this.undoManager = new Y3__namespace.UndoManager(
1461
1450
  [
1462
1451
  this.doc.getMap("parts"),
@@ -1518,7 +1507,6 @@ var DocxCollaborationSession = class {
1518
1507
  return this.port !== void 0;
1519
1508
  }
1520
1509
  gateOperations() {
1521
- this.sync?.flushRemote();
1522
1510
  switch (this.status()) {
1523
1511
  case "ready":
1524
1512
  return this.port ? null : "collaboration-session-not-attached";
@@ -1547,7 +1535,7 @@ var DocxCollaborationSession = class {
1547
1535
  doc: this.doc,
1548
1536
  port,
1549
1537
  actorId: this.identity.actorId,
1550
- remoteDelayMs: this.remoteDelayMs,
1538
+ aroundRemote: () => this.carrySelection(),
1551
1539
  onFailure: (code, detail) => {
1552
1540
  this.markFailed(code === "journal" ? "local-mirror-failed" : "remote-apply-failed", detail);
1553
1541
  },
@@ -1571,8 +1559,21 @@ var DocxCollaborationSession = class {
1571
1559
  }
1572
1560
  /** Transport hook: call before integrating inbound Yjs data so queued local edits are mirrored first. */
1573
1561
  beforeRemote() {
1562
+ this.inputFlush?.();
1574
1563
  this.sync?.beforeRemote();
1575
1564
  }
1565
+ /**
1566
+ * Bind the editor's pending-input flush (`PaginatedSurface.flushPendingInput`). The session writes
1567
+ * below the editor's input buffer, so it lands queued typing before a remote change and lays the
1568
+ * change out right after it: the editor carries its caret at that layout, and a keystroke before
1569
+ * it would otherwise use the caret from before the change. Returns the unbind function.
1570
+ */
1571
+ bindEditorInput(flush) {
1572
+ this.inputFlush = flush;
1573
+ return () => {
1574
+ if (this.inputFlush === flush) this.inputFlush = null;
1575
+ };
1576
+ }
1576
1577
  // ── Undo ─────────────────────────────────────────────────────────────────
1577
1578
  canUndo() {
1578
1579
  return this.undoManager.undoStack.length > 0;
@@ -1585,7 +1586,6 @@ var DocxCollaborationSession = class {
1585
1586
  if (this.gateOperations() !== null || !this.canUndo()) return false;
1586
1587
  this.undoManager.stopCapturing();
1587
1588
  this.undoManager.undo();
1588
- this.sync?.flushRemote();
1589
1589
  return true;
1590
1590
  }
1591
1591
  redo() {
@@ -1593,13 +1593,79 @@ var DocxCollaborationSession = class {
1593
1593
  if (this.gateOperations() !== null || !this.canRedo()) return false;
1594
1594
  this.undoManager.stopCapturing();
1595
1595
  this.undoManager.redo();
1596
- this.sync?.flushRemote();
1597
1596
  return true;
1598
1597
  }
1599
1598
  // ── Presence ─────────────────────────────────────────────────────────────
1600
1599
  setLocalSelection(selection) {
1600
+ this.carried = selection && selection.kind !== "cells" ? { from: null, selection } : null;
1601
+ this.selectionMove = null;
1601
1602
  this.awareness.setLocalStateField("selection", selection);
1602
1603
  }
1604
+ /** Where the last remote change carried the local selection; see `carrySelection`. */
1605
+ remoteSelectionMove() {
1606
+ return this.selectionMove;
1607
+ }
1608
+ /**
1609
+ * Called before a remote change reaches the port: notes the selection's paragraphs and their text,
1610
+ * and returns what carries it across the change once the port holds the new tree. The editor
1611
+ * takes the carried selection when a local edit was coalesced with the remote change, where it
1612
+ * cannot map its caret by the text alone. Several remote changes before the editor publishes its
1613
+ * selection again chain, all from the selection it published.
1614
+ */
1615
+ carrySelection() {
1616
+ const port = this.port;
1617
+ const carried = this.carried;
1618
+ const settle = () => this.inputFlush?.();
1619
+ if (!port || !carried) return settle;
1620
+ const before = (address) => {
1621
+ const paragraph = port.paragraphByStableId(address.paragraphId);
1622
+ if (!paragraph) return null;
1623
+ const offset = Math.min(address.offset, paragraph.text.length);
1624
+ return { nodeId: paragraph.nodeId, text: paragraph.text, offset };
1625
+ };
1626
+ const anchor = before(carried.selection.anchor);
1627
+ const head = before(carried.selection.head);
1628
+ if (!anchor || !head) {
1629
+ this.carried = null;
1630
+ this.selectionMove = null;
1631
+ return settle;
1632
+ }
1633
+ const from = carried.from ?? {
1634
+ anchor: { nodeId: anchor.nodeId, offset: anchor.offset },
1635
+ head: { nodeId: head.nodeId, offset: head.offset }
1636
+ };
1637
+ return () => {
1638
+ const after = (address, was) => {
1639
+ const paragraph = port.paragraphByStableId(address.paragraphId);
1640
+ if (!paragraph) return null;
1641
+ const offset = replication.mapOffsetAcrossText(was.offset, was.text, paragraph.text);
1642
+ return { paragraphId: address.paragraphId, nodeId: paragraph.nodeId, offset };
1643
+ };
1644
+ const nextAnchor = after(carried.selection.anchor, anchor);
1645
+ const nextHead = after(carried.selection.head, head);
1646
+ if (!nextAnchor || !nextHead) {
1647
+ this.carried = null;
1648
+ this.selectionMove = null;
1649
+ } else {
1650
+ this.carried = {
1651
+ from,
1652
+ selection: {
1653
+ ...carried.selection,
1654
+ anchor: { paragraphId: nextAnchor.paragraphId, offset: nextAnchor.offset },
1655
+ head: { paragraphId: nextHead.paragraphId, offset: nextHead.offset }
1656
+ }
1657
+ };
1658
+ this.selectionMove = {
1659
+ from,
1660
+ to: {
1661
+ anchor: { nodeId: nextAnchor.nodeId, offset: nextAnchor.offset },
1662
+ head: { nodeId: nextHead.nodeId, offset: nextHead.offset }
1663
+ }
1664
+ };
1665
+ }
1666
+ settle();
1667
+ };
1668
+ }
1603
1669
  participants() {
1604
1670
  return this.participantsCache;
1605
1671
  }
@@ -1671,6 +1737,7 @@ var DocxCollaborationSession = class {
1671
1737
  this.sync?.destroy();
1672
1738
  this.sync = void 0;
1673
1739
  this.port = void 0;
1740
+ this.inputFlush = null;
1674
1741
  this.undoManager.destroy();
1675
1742
  this.awareness.setLocalState(null);
1676
1743
  for (const dispose of this.disposers.splice(0)) dispose();