@arbidocs/blocks 0.5.35 → 0.5.36

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/index.cjs CHANGED
@@ -20,7 +20,7 @@ var chunkPCB2BPN3_cjs = require('./chunk-PCB2BPN3.cjs');
20
20
  var chunkNWNVWO6L_cjs = require('./chunk-NWNVWO6L.cjs');
21
21
  var chunk5V4HH7EH_cjs = require('./chunk-5V4HH7EH.cjs');
22
22
  require('./chunk-7G2LJMUG.cjs');
23
- var chunkFSEZEVWZ_cjs = require('./chunk-FSEZEVWZ.cjs');
23
+ var chunk5NTSJV5H_cjs = require('./chunk-5NTSJV5H.cjs');
24
24
  var chunkTM2D4XT4_cjs = require('./chunk-TM2D4XT4.cjs');
25
25
  var chunk5Y6V7F6W_cjs = require('./chunk-5Y6V7F6W.cjs');
26
26
  var chunkQWKT4DO6_cjs = require('./chunk-QWKT4DO6.cjs');
@@ -1494,155 +1494,163 @@ Object.defineProperty(exports, "validateContactForm", {
1494
1494
  });
1495
1495
  Object.defineProperty(exports, "AskField", {
1496
1496
  enumerable: true,
1497
- get: function () { return chunkFSEZEVWZ_cjs.AskField; }
1497
+ get: function () { return chunk5NTSJV5H_cjs.AskField; }
1498
1498
  });
1499
1499
  Object.defineProperty(exports, "AskRow", {
1500
1500
  enumerable: true,
1501
- get: function () { return chunkFSEZEVWZ_cjs.AskRow; }
1501
+ get: function () { return chunk5NTSJV5H_cjs.AskRow; }
1502
1502
  });
1503
1503
  Object.defineProperty(exports, "AskTrigger", {
1504
1504
  enumerable: true,
1505
- get: function () { return chunkFSEZEVWZ_cjs.AskTrigger; }
1505
+ get: function () { return chunk5NTSJV5H_cjs.AskTrigger; }
1506
1506
  });
1507
1507
  Object.defineProperty(exports, "DEFAULT_ASK_FIELD_LABELS", {
1508
1508
  enumerable: true,
1509
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_ASK_FIELD_LABELS; }
1509
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_ASK_FIELD_LABELS; }
1510
1510
  });
1511
1511
  Object.defineProperty(exports, "DEFAULT_INSTALL_PROMPT_LABELS", {
1512
1512
  enumerable: true,
1513
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_INSTALL_PROMPT_LABELS; }
1513
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_INSTALL_PROMPT_LABELS; }
1514
1514
  });
1515
1515
  Object.defineProperty(exports, "DEFAULT_MOBILE_BARS_LABELS", {
1516
1516
  enumerable: true,
1517
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_MOBILE_BARS_LABELS; }
1517
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_MOBILE_BARS_LABELS; }
1518
1518
  });
1519
1519
  Object.defineProperty(exports, "DEFAULT_OFFLINE_PILL_LABELS", {
1520
1520
  enumerable: true,
1521
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_OFFLINE_PILL_LABELS; }
1521
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_OFFLINE_PILL_LABELS; }
1522
1522
  });
1523
1523
  Object.defineProperty(exports, "DEFAULT_REMOTE_CONTROL_PILL_LABELS", {
1524
1524
  enumerable: true,
1525
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_REMOTE_CONTROL_PILL_LABELS; }
1525
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_REMOTE_CONTROL_PILL_LABELS; }
1526
1526
  });
1527
1527
  Object.defineProperty(exports, "DEFAULT_TIP_CARD_LABELS", {
1528
1528
  enumerable: true,
1529
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_TIP_CARD_LABELS; }
1529
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_TIP_CARD_LABELS; }
1530
+ });
1531
+ Object.defineProperty(exports, "DockZone", {
1532
+ enumerable: true,
1533
+ get: function () { return chunk5NTSJV5H_cjs.DockZone; }
1530
1534
  });
1531
1535
  Object.defineProperty(exports, "INSTALL_PROMPT_DISMISSED_KEY", {
1532
1536
  enumerable: true,
1533
- get: function () { return chunkFSEZEVWZ_cjs.INSTALL_PROMPT_DISMISSED_KEY; }
1537
+ get: function () { return chunk5NTSJV5H_cjs.INSTALL_PROMPT_DISMISSED_KEY; }
1534
1538
  });
1535
1539
  Object.defineProperty(exports, "InfoBar", {
1536
1540
  enumerable: true,
1537
- get: function () { return chunkFSEZEVWZ_cjs.InfoBar; }
1541
+ get: function () { return chunk5NTSJV5H_cjs.InfoBar; }
1538
1542
  });
1539
1543
  Object.defineProperty(exports, "InstallPrompt", {
1540
1544
  enumerable: true,
1541
- get: function () { return chunkFSEZEVWZ_cjs.InstallPrompt; }
1545
+ get: function () { return chunk5NTSJV5H_cjs.InstallPrompt; }
1542
1546
  });
1543
1547
  Object.defineProperty(exports, "MobileAppBar", {
1544
1548
  enumerable: true,
1545
- get: function () { return chunkFSEZEVWZ_cjs.MobileAppBar; }
1549
+ get: function () { return chunk5NTSJV5H_cjs.MobileAppBar; }
1546
1550
  });
1547
1551
  Object.defineProperty(exports, "MobileTabBar", {
1548
1552
  enumerable: true,
1549
- get: function () { return chunkFSEZEVWZ_cjs.MobileTabBar; }
1553
+ get: function () { return chunk5NTSJV5H_cjs.MobileTabBar; }
1550
1554
  });
1551
1555
  Object.defineProperty(exports, "NotificationBell", {
1552
1556
  enumerable: true,
1553
- get: function () { return chunkFSEZEVWZ_cjs.NotificationBell; }
1557
+ get: function () { return chunk5NTSJV5H_cjs.NotificationBell; }
1554
1558
  });
1555
1559
  Object.defineProperty(exports, "OfflinePill", {
1556
1560
  enumerable: true,
1557
- get: function () { return chunkFSEZEVWZ_cjs.OfflinePill; }
1561
+ get: function () { return chunk5NTSJV5H_cjs.OfflinePill; }
1562
+ });
1563
+ Object.defineProperty(exports, "PanelModeSwitcher", {
1564
+ enumerable: true,
1565
+ get: function () { return chunk5NTSJV5H_cjs.PanelModeSwitcher; }
1558
1566
  });
1559
1567
  Object.defineProperty(exports, "RemoteControlPill", {
1560
1568
  enumerable: true,
1561
- get: function () { return chunkFSEZEVWZ_cjs.RemoteControlPill; }
1569
+ get: function () { return chunk5NTSJV5H_cjs.RemoteControlPill; }
1562
1570
  });
1563
1571
  Object.defineProperty(exports, "SHELL_START_INSET_VAR", {
1564
1572
  enumerable: true,
1565
- get: function () { return chunkFSEZEVWZ_cjs.SHELL_START_INSET_VAR; }
1573
+ get: function () { return chunk5NTSJV5H_cjs.SHELL_START_INSET_VAR; }
1566
1574
  });
1567
1575
  Object.defineProperty(exports, "STATUS_ROW_BASE_CLASS", {
1568
1576
  enumerable: true,
1569
- get: function () { return chunkFSEZEVWZ_cjs.STATUS_ROW_BASE_CLASS; }
1577
+ get: function () { return chunk5NTSJV5H_cjs.STATUS_ROW_BASE_CLASS; }
1570
1578
  });
1571
1579
  Object.defineProperty(exports, "STATUS_ROW_TONES", {
1572
1580
  enumerable: true,
1573
- get: function () { return chunkFSEZEVWZ_cjs.STATUS_ROW_TONES; }
1581
+ get: function () { return chunk5NTSJV5H_cjs.STATUS_ROW_TONES; }
1574
1582
  });
1575
1583
  Object.defineProperty(exports, "ShellSidebar", {
1576
1584
  enumerable: true,
1577
- get: function () { return chunkFSEZEVWZ_cjs.ShellSidebar; }
1585
+ get: function () { return chunk5NTSJV5H_cjs.ShellSidebar; }
1578
1586
  });
1579
1587
  Object.defineProperty(exports, "Sidebar", {
1580
1588
  enumerable: true,
1581
- get: function () { return chunkFSEZEVWZ_cjs.Sidebar; }
1589
+ get: function () { return chunk5NTSJV5H_cjs.Sidebar; }
1582
1590
  });
1583
1591
  Object.defineProperty(exports, "SidebarRowAction", {
1584
1592
  enumerable: true,
1585
- get: function () { return chunkFSEZEVWZ_cjs.SidebarRowAction; }
1593
+ get: function () { return chunk5NTSJV5H_cjs.SidebarRowAction; }
1586
1594
  });
1587
1595
  Object.defineProperty(exports, "SplitLayout", {
1588
1596
  enumerable: true,
1589
- get: function () { return chunkFSEZEVWZ_cjs.SplitLayout; }
1597
+ get: function () { return chunk5NTSJV5H_cjs.SplitLayout; }
1590
1598
  });
1591
1599
  Object.defineProperty(exports, "StatusBadge", {
1592
1600
  enumerable: true,
1593
- get: function () { return chunkFSEZEVWZ_cjs.StatusBadge; }
1601
+ get: function () { return chunk5NTSJV5H_cjs.StatusBadge; }
1594
1602
  });
1595
1603
  Object.defineProperty(exports, "StatusRow", {
1596
1604
  enumerable: true,
1597
- get: function () { return chunkFSEZEVWZ_cjs.StatusRow; }
1605
+ get: function () { return chunk5NTSJV5H_cjs.StatusRow; }
1598
1606
  });
1599
1607
  Object.defineProperty(exports, "TipCard", {
1600
1608
  enumerable: true,
1601
- get: function () { return chunkFSEZEVWZ_cjs.TipCard; }
1609
+ get: function () { return chunk5NTSJV5H_cjs.TipCard; }
1602
1610
  });
1603
1611
  Object.defineProperty(exports, "UserMenu", {
1604
1612
  enumerable: true,
1605
- get: function () { return chunkFSEZEVWZ_cjs.UserMenu; }
1613
+ get: function () { return chunk5NTSJV5H_cjs.UserMenu; }
1606
1614
  });
1607
1615
  Object.defineProperty(exports, "getInstallInstructions", {
1608
1616
  enumerable: true,
1609
- get: function () { return chunkFSEZEVWZ_cjs.getInstallInstructions; }
1617
+ get: function () { return chunk5NTSJV5H_cjs.getInstallInstructions; }
1610
1618
  });
1611
1619
  Object.defineProperty(exports, "initInstallPrompt", {
1612
1620
  enumerable: true,
1613
- get: function () { return chunkFSEZEVWZ_cjs.initInstallPrompt; }
1621
+ get: function () { return chunk5NTSJV5H_cjs.initInstallPrompt; }
1614
1622
  });
1615
1623
  Object.defineProperty(exports, "isIosDevice", {
1616
1624
  enumerable: true,
1617
- get: function () { return chunkFSEZEVWZ_cjs.isIosDevice; }
1625
+ get: function () { return chunk5NTSJV5H_cjs.isIosDevice; }
1618
1626
  });
1619
1627
  Object.defineProperty(exports, "promptAppInstall", {
1620
1628
  enumerable: true,
1621
- get: function () { return chunkFSEZEVWZ_cjs.promptAppInstall; }
1629
+ get: function () { return chunk5NTSJV5H_cjs.promptAppInstall; }
1622
1630
  });
1623
1631
  Object.defineProperty(exports, "resolveSidebarLayout", {
1624
1632
  enumerable: true,
1625
- get: function () { return chunkFSEZEVWZ_cjs.resolveSidebarLayout; }
1633
+ get: function () { return chunk5NTSJV5H_cjs.resolveSidebarLayout; }
1626
1634
  });
1627
1635
  Object.defineProperty(exports, "useCloseOnEscape", {
1628
1636
  enumerable: true,
1629
- get: function () { return chunkFSEZEVWZ_cjs.useCloseOnEscape; }
1637
+ get: function () { return chunk5NTSJV5H_cjs.useCloseOnEscape; }
1630
1638
  });
1631
1639
  Object.defineProperty(exports, "useInstallPrompt", {
1632
1640
  enumerable: true,
1633
- get: function () { return chunkFSEZEVWZ_cjs.useInstallPrompt; }
1641
+ get: function () { return chunk5NTSJV5H_cjs.useInstallPrompt; }
1634
1642
  });
1635
1643
  Object.defineProperty(exports, "useShellStartInset", {
1636
1644
  enumerable: true,
1637
- get: function () { return chunkFSEZEVWZ_cjs.useShellStartInset; }
1645
+ get: function () { return chunk5NTSJV5H_cjs.useShellStartInset; }
1638
1646
  });
1639
1647
  Object.defineProperty(exports, "useSidebarController", {
1640
1648
  enumerable: true,
1641
- get: function () { return chunkFSEZEVWZ_cjs.useSidebarController; }
1649
+ get: function () { return chunk5NTSJV5H_cjs.useSidebarController; }
1642
1650
  });
1643
1651
  Object.defineProperty(exports, "useSidebarSettle", {
1644
1652
  enumerable: true,
1645
- get: function () { return chunkFSEZEVWZ_cjs.useSidebarSettle; }
1653
+ get: function () { return chunk5NTSJV5H_cjs.useSidebarSettle; }
1646
1654
  });
1647
1655
  Object.defineProperty(exports, "DEFAULT_ERROR_BOUNDARY_LABELS", {
1648
1656
  enumerable: true,
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@ export { Callout } from './chunk-UJE32SST.js';
18
18
  export { FONT_PAIRINGS, fontPackages, getFontPairing, matchFontPairing } from './chunk-NHZK64TQ.js';
19
19
  export { ActionMenu, AddContactsForm, AddContactsResults, DEFAULT_ADD_CONTACTS_LABELS, DEFAULT_CONTACT_INVITE_LABELS, DEFAULT_CONTACT_OUTCOME_LABELS, DEFAULT_DM_ACCESS_REQUEST_BANNER_LABELS, DEFAULT_DM_GRANT_ACCESS_DIALOG_LABELS, DEFAULT_DM_THREAD_FRAME_LABELS, DEFAULT_MAIL_FOLDER_TREE_LABELS, DEFAULT_RECIPIENT_PICKER_LABELS, DmAccessRequestBanner, DmGrantAccessDialogView, DmInviteAvatar, DmNewTabIcon, DmThreadFrame, EMPTY_CONTACT_FORM, MAX_INVITE_EMAILS, MailDeliveryBadge, MailDeliveryList, MailDocumentPicker, MailFolderTree, MailGrid, MailMessagePreview, MailMessageView, MemberBulkActions, MemberListLoading, MemberMutedText, MemberNameCell, MemberRoleCell, NEEDS_CONNECTION, PlainMailBodyEditor, RecipientPicker, RoleSelect, WorkspaceDeleteButton, applyContactInviteResults, buildMailFolderTree, contactName, contactOutcomeMessage, contactStatusLabel, contactToForm, descendantFolderIds, draftMailCompose, emailTokens, emptyMailCompose, failContactInvites, formToContactCard, hasCalendarPart, inviteEmail, isInboxFolder, isInvitableEmail, mailAddressLabel, matchesContact, normalizeVCardDate, parseEmails, parseMailRecipients, planContactInvites, primaryEmail, replyMailCompose, summarizeContactInvites, summarizeImport, summarizeUnsentInvites, toAddContactsRow, toAddContactsRows, toggleMailFolder, validateContactForm } from './chunk-46WCQ4F3.js';
20
20
  import './chunk-NBV56SGU.js';
21
- export { 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_TIP_CARD_LABELS, INSTALL_PROMPT_DISMISSED_KEY, InfoBar, InstallPrompt, MobileAppBar, MobileTabBar, NotificationBell, OfflinePill, RemoteControlPill, SHELL_START_INSET_VAR, STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES, ShellSidebar, Sidebar, SidebarRowAction, SplitLayout, StatusBadge, StatusRow, TipCard, UserMenu, getInstallInstructions, initInstallPrompt, isIosDevice, promptAppInstall, resolveSidebarLayout, useCloseOnEscape, useInstallPrompt, useShellStartInset, useSidebarController, useSidebarSettle } from './chunk-LTEDORG3.js';
21
+ export { 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_TIP_CARD_LABELS, DockZone, INSTALL_PROMPT_DISMISSED_KEY, InfoBar, InstallPrompt, MobileAppBar, MobileTabBar, NotificationBell, OfflinePill, PanelModeSwitcher, RemoteControlPill, SHELL_START_INSET_VAR, STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES, ShellSidebar, Sidebar, SidebarRowAction, SplitLayout, StatusBadge, StatusRow, TipCard, UserMenu, getInstallInstructions, initInstallPrompt, isIosDevice, promptAppInstall, resolveSidebarLayout, useCloseOnEscape, useInstallPrompt, useShellStartInset, useSidebarController, useSidebarSettle } from './chunk-QFYRXQTD.js';
22
22
  export { DEFAULT_ERROR_BOUNDARY_LABELS, ErrorBoundary } from './chunk-EQ3WRY2N.js';
23
23
  export { RowNavigatorControls } from './chunk-JMQLTMJ7.js';
24
24
  export { ActionCluster, DEFAULT_SIDEBAR_LABELS, DEFAULT_WORKSPACE_KIND_LABELS, DEFAULT_WORKSPACE_SWITCHER_LABELS, SidebarBadgeRow, SidebarRowHoverContext, WorkspaceIdentity, WorkspaceSwitcher, hasUnsavedInput, installReloadPolicy, markBuildStale, prefetchChunk, requestReload, useSidebarContext, workspaceKindColor, workspaceKindMeta } from './chunk-PXYP3DM5.js';
@@ -0,0 +1,27 @@
1
+ /**
2
+ * DockZone Component
3
+ *
4
+ * Layout wrapper that provides a resizable right-hand panel area (#dock-zone)
5
+ * where panels in 'docked' mode render via PanelPortal.
6
+ *
7
+ * Uses MutationObserver on the #dock-zone element to detect when content is
8
+ * portaled in/out, so the split layout appears only when a panel is actually
9
+ * mounted — not just when the store says a panel prefers 'docked' mode.
10
+ *
11
+ * The dock zone reads its initial width from the child's data-dock-width
12
+ * attribute (pixels). If absent, defaults to 50% of the container.
13
+ *
14
+ * Below MOBILE_BREAKPOINT_PX, MIN_MAIN_PX + MIN_DOCK_PX (500px combined)
15
+ * can't both fit — the clamp math still ran unconditionally and squeezed the
16
+ * dock pane down to whatever sliver was left (as little as ~90px on a 390px
17
+ * phone), rendering both panes as unusable slivers instead of showing either
18
+ * one properly. Below that width this becomes a single full-width view that
19
+ * swaps between main and docked content instead of splitting — same
20
+ * principle as the Document Viewer's own view-swap (Edit ⇄ Track Changes).
21
+ */
22
+ interface DockZoneProps {
23
+ children: React.ReactNode;
24
+ 'data-testid'?: string;
25
+ }
26
+ export declare function DockZone({ children, ...props }: DockZoneProps): import("react").JSX.Element;
27
+ export {};
@@ -0,0 +1,30 @@
1
+ /**
2
+ * PanelModeSwitcher Component
3
+ *
4
+ * User-selectable placements are: popped out, docked, or overlay. `main` is
5
+ * NOT user-selectable — the system decides which surfaces render full-width
6
+ * (e.g. the DM modal); the user just moves floating panels between popout /
7
+ * docked / overlay. The switcher shows a button for each placement you're not
8
+ * currently in (plus close):
9
+ * - Popout/pop-in toggle (unless disablePopout).
10
+ * - Split-screen button (when not docked).
11
+ * - Float-as-overlay button (when not overlay).
12
+ * - Popout mode shows just the pop-in toggle (the window has its own close).
13
+ */
14
+ import type { ArbiPanelMode as PanelMode } from '@arbidocs/react';
15
+ interface PanelModeSwitcherProps {
16
+ mode: PanelMode;
17
+ onModeChange: (mode: PanelMode) => void;
18
+ onClose?: () => void;
19
+ /** When true, hides the popout button (e.g. for panels whose content breaks in a popup window) */
20
+ disablePopout?: boolean;
21
+ /**
22
+ * Override the close-button data-testid. Defaults to `dialog-close-button`
23
+ * for backwards compatibility. Use a panel-specific value (e.g.
24
+ * `close-viewer-button`) when there are multiple PanelModeSwitchers in the
25
+ * DOM at once and tests need to disambiguate.
26
+ */
27
+ closeTestId?: string;
28
+ }
29
+ export declare function PanelModeSwitcher({ mode, onModeChange, onClose, disablePopout, closeTestId, }: PanelModeSwitcherProps): import("react").JSX.Element;
30
+ export {};
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkFSEZEVWZ_cjs = require('../chunk-FSEZEVWZ.cjs');
4
+ var chunk5NTSJV5H_cjs = require('../chunk-5NTSJV5H.cjs');
5
5
  var chunkQWKT4DO6_cjs = require('../chunk-QWKT4DO6.cjs');
6
6
  require('../chunk-AHDJXIUB.cjs');
7
7
  var chunk2EI7NCUA_cjs = require('../chunk-2EI7NCUA.cjs');
@@ -21,155 +21,163 @@ require('../chunk-DES3K4SD.cjs');
21
21
 
22
22
  Object.defineProperty(exports, "AskField", {
23
23
  enumerable: true,
24
- get: function () { return chunkFSEZEVWZ_cjs.AskField; }
24
+ get: function () { return chunk5NTSJV5H_cjs.AskField; }
25
25
  });
26
26
  Object.defineProperty(exports, "AskRow", {
27
27
  enumerable: true,
28
- get: function () { return chunkFSEZEVWZ_cjs.AskRow; }
28
+ get: function () { return chunk5NTSJV5H_cjs.AskRow; }
29
29
  });
30
30
  Object.defineProperty(exports, "AskTrigger", {
31
31
  enumerable: true,
32
- get: function () { return chunkFSEZEVWZ_cjs.AskTrigger; }
32
+ get: function () { return chunk5NTSJV5H_cjs.AskTrigger; }
33
33
  });
34
34
  Object.defineProperty(exports, "DEFAULT_ASK_FIELD_LABELS", {
35
35
  enumerable: true,
36
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_ASK_FIELD_LABELS; }
36
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_ASK_FIELD_LABELS; }
37
37
  });
38
38
  Object.defineProperty(exports, "DEFAULT_INSTALL_PROMPT_LABELS", {
39
39
  enumerable: true,
40
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_INSTALL_PROMPT_LABELS; }
40
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_INSTALL_PROMPT_LABELS; }
41
41
  });
42
42
  Object.defineProperty(exports, "DEFAULT_MOBILE_BARS_LABELS", {
43
43
  enumerable: true,
44
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_MOBILE_BARS_LABELS; }
44
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_MOBILE_BARS_LABELS; }
45
45
  });
46
46
  Object.defineProperty(exports, "DEFAULT_OFFLINE_PILL_LABELS", {
47
47
  enumerable: true,
48
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_OFFLINE_PILL_LABELS; }
48
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_OFFLINE_PILL_LABELS; }
49
49
  });
50
50
  Object.defineProperty(exports, "DEFAULT_REMOTE_CONTROL_PILL_LABELS", {
51
51
  enumerable: true,
52
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_REMOTE_CONTROL_PILL_LABELS; }
52
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_REMOTE_CONTROL_PILL_LABELS; }
53
53
  });
54
54
  Object.defineProperty(exports, "DEFAULT_TIP_CARD_LABELS", {
55
55
  enumerable: true,
56
- get: function () { return chunkFSEZEVWZ_cjs.DEFAULT_TIP_CARD_LABELS; }
56
+ get: function () { return chunk5NTSJV5H_cjs.DEFAULT_TIP_CARD_LABELS; }
57
+ });
58
+ Object.defineProperty(exports, "DockZone", {
59
+ enumerable: true,
60
+ get: function () { return chunk5NTSJV5H_cjs.DockZone; }
57
61
  });
58
62
  Object.defineProperty(exports, "INSTALL_PROMPT_DISMISSED_KEY", {
59
63
  enumerable: true,
60
- get: function () { return chunkFSEZEVWZ_cjs.INSTALL_PROMPT_DISMISSED_KEY; }
64
+ get: function () { return chunk5NTSJV5H_cjs.INSTALL_PROMPT_DISMISSED_KEY; }
61
65
  });
62
66
  Object.defineProperty(exports, "InfoBar", {
63
67
  enumerable: true,
64
- get: function () { return chunkFSEZEVWZ_cjs.InfoBar; }
68
+ get: function () { return chunk5NTSJV5H_cjs.InfoBar; }
65
69
  });
66
70
  Object.defineProperty(exports, "InstallPrompt", {
67
71
  enumerable: true,
68
- get: function () { return chunkFSEZEVWZ_cjs.InstallPrompt; }
72
+ get: function () { return chunk5NTSJV5H_cjs.InstallPrompt; }
69
73
  });
70
74
  Object.defineProperty(exports, "MobileAppBar", {
71
75
  enumerable: true,
72
- get: function () { return chunkFSEZEVWZ_cjs.MobileAppBar; }
76
+ get: function () { return chunk5NTSJV5H_cjs.MobileAppBar; }
73
77
  });
74
78
  Object.defineProperty(exports, "MobileTabBar", {
75
79
  enumerable: true,
76
- get: function () { return chunkFSEZEVWZ_cjs.MobileTabBar; }
80
+ get: function () { return chunk5NTSJV5H_cjs.MobileTabBar; }
77
81
  });
78
82
  Object.defineProperty(exports, "NotificationBell", {
79
83
  enumerable: true,
80
- get: function () { return chunkFSEZEVWZ_cjs.NotificationBell; }
84
+ get: function () { return chunk5NTSJV5H_cjs.NotificationBell; }
81
85
  });
82
86
  Object.defineProperty(exports, "OfflinePill", {
83
87
  enumerable: true,
84
- get: function () { return chunkFSEZEVWZ_cjs.OfflinePill; }
88
+ get: function () { return chunk5NTSJV5H_cjs.OfflinePill; }
89
+ });
90
+ Object.defineProperty(exports, "PanelModeSwitcher", {
91
+ enumerable: true,
92
+ get: function () { return chunk5NTSJV5H_cjs.PanelModeSwitcher; }
85
93
  });
86
94
  Object.defineProperty(exports, "RemoteControlPill", {
87
95
  enumerable: true,
88
- get: function () { return chunkFSEZEVWZ_cjs.RemoteControlPill; }
96
+ get: function () { return chunk5NTSJV5H_cjs.RemoteControlPill; }
89
97
  });
90
98
  Object.defineProperty(exports, "SHELL_START_INSET_VAR", {
91
99
  enumerable: true,
92
- get: function () { return chunkFSEZEVWZ_cjs.SHELL_START_INSET_VAR; }
100
+ get: function () { return chunk5NTSJV5H_cjs.SHELL_START_INSET_VAR; }
93
101
  });
94
102
  Object.defineProperty(exports, "STATUS_ROW_BASE_CLASS", {
95
103
  enumerable: true,
96
- get: function () { return chunkFSEZEVWZ_cjs.STATUS_ROW_BASE_CLASS; }
104
+ get: function () { return chunk5NTSJV5H_cjs.STATUS_ROW_BASE_CLASS; }
97
105
  });
98
106
  Object.defineProperty(exports, "STATUS_ROW_TONES", {
99
107
  enumerable: true,
100
- get: function () { return chunkFSEZEVWZ_cjs.STATUS_ROW_TONES; }
108
+ get: function () { return chunk5NTSJV5H_cjs.STATUS_ROW_TONES; }
101
109
  });
102
110
  Object.defineProperty(exports, "ShellSidebar", {
103
111
  enumerable: true,
104
- get: function () { return chunkFSEZEVWZ_cjs.ShellSidebar; }
112
+ get: function () { return chunk5NTSJV5H_cjs.ShellSidebar; }
105
113
  });
106
114
  Object.defineProperty(exports, "Sidebar", {
107
115
  enumerable: true,
108
- get: function () { return chunkFSEZEVWZ_cjs.Sidebar; }
116
+ get: function () { return chunk5NTSJV5H_cjs.Sidebar; }
109
117
  });
110
118
  Object.defineProperty(exports, "SidebarRowAction", {
111
119
  enumerable: true,
112
- get: function () { return chunkFSEZEVWZ_cjs.SidebarRowAction; }
120
+ get: function () { return chunk5NTSJV5H_cjs.SidebarRowAction; }
113
121
  });
114
122
  Object.defineProperty(exports, "SplitLayout", {
115
123
  enumerable: true,
116
- get: function () { return chunkFSEZEVWZ_cjs.SplitLayout; }
124
+ get: function () { return chunk5NTSJV5H_cjs.SplitLayout; }
117
125
  });
118
126
  Object.defineProperty(exports, "StatusBadge", {
119
127
  enumerable: true,
120
- get: function () { return chunkFSEZEVWZ_cjs.StatusBadge; }
128
+ get: function () { return chunk5NTSJV5H_cjs.StatusBadge; }
121
129
  });
122
130
  Object.defineProperty(exports, "StatusRow", {
123
131
  enumerable: true,
124
- get: function () { return chunkFSEZEVWZ_cjs.StatusRow; }
132
+ get: function () { return chunk5NTSJV5H_cjs.StatusRow; }
125
133
  });
126
134
  Object.defineProperty(exports, "TipCard", {
127
135
  enumerable: true,
128
- get: function () { return chunkFSEZEVWZ_cjs.TipCard; }
136
+ get: function () { return chunk5NTSJV5H_cjs.TipCard; }
129
137
  });
130
138
  Object.defineProperty(exports, "UserMenu", {
131
139
  enumerable: true,
132
- get: function () { return chunkFSEZEVWZ_cjs.UserMenu; }
140
+ get: function () { return chunk5NTSJV5H_cjs.UserMenu; }
133
141
  });
134
142
  Object.defineProperty(exports, "getInstallInstructions", {
135
143
  enumerable: true,
136
- get: function () { return chunkFSEZEVWZ_cjs.getInstallInstructions; }
144
+ get: function () { return chunk5NTSJV5H_cjs.getInstallInstructions; }
137
145
  });
138
146
  Object.defineProperty(exports, "initInstallPrompt", {
139
147
  enumerable: true,
140
- get: function () { return chunkFSEZEVWZ_cjs.initInstallPrompt; }
148
+ get: function () { return chunk5NTSJV5H_cjs.initInstallPrompt; }
141
149
  });
142
150
  Object.defineProperty(exports, "isIosDevice", {
143
151
  enumerable: true,
144
- get: function () { return chunkFSEZEVWZ_cjs.isIosDevice; }
152
+ get: function () { return chunk5NTSJV5H_cjs.isIosDevice; }
145
153
  });
146
154
  Object.defineProperty(exports, "promptAppInstall", {
147
155
  enumerable: true,
148
- get: function () { return chunkFSEZEVWZ_cjs.promptAppInstall; }
156
+ get: function () { return chunk5NTSJV5H_cjs.promptAppInstall; }
149
157
  });
150
158
  Object.defineProperty(exports, "resolveSidebarLayout", {
151
159
  enumerable: true,
152
- get: function () { return chunkFSEZEVWZ_cjs.resolveSidebarLayout; }
160
+ get: function () { return chunk5NTSJV5H_cjs.resolveSidebarLayout; }
153
161
  });
154
162
  Object.defineProperty(exports, "useCloseOnEscape", {
155
163
  enumerable: true,
156
- get: function () { return chunkFSEZEVWZ_cjs.useCloseOnEscape; }
164
+ get: function () { return chunk5NTSJV5H_cjs.useCloseOnEscape; }
157
165
  });
158
166
  Object.defineProperty(exports, "useInstallPrompt", {
159
167
  enumerable: true,
160
- get: function () { return chunkFSEZEVWZ_cjs.useInstallPrompt; }
168
+ get: function () { return chunk5NTSJV5H_cjs.useInstallPrompt; }
161
169
  });
162
170
  Object.defineProperty(exports, "useShellStartInset", {
163
171
  enumerable: true,
164
- get: function () { return chunkFSEZEVWZ_cjs.useShellStartInset; }
172
+ get: function () { return chunk5NTSJV5H_cjs.useShellStartInset; }
165
173
  });
166
174
  Object.defineProperty(exports, "useSidebarController", {
167
175
  enumerable: true,
168
- get: function () { return chunkFSEZEVWZ_cjs.useSidebarController; }
176
+ get: function () { return chunk5NTSJV5H_cjs.useSidebarController; }
169
177
  });
170
178
  Object.defineProperty(exports, "useSidebarSettle", {
171
179
  enumerable: true,
172
- get: function () { return chunkFSEZEVWZ_cjs.useSidebarSettle; }
180
+ get: function () { return chunk5NTSJV5H_cjs.useSidebarSettle; }
173
181
  });
174
182
  Object.defineProperty(exports, "ActionCluster", {
175
183
  enumerable: true,
@@ -32,3 +32,5 @@ export { SplitLayout, type SplitLayoutProps } from './SplitLayout';
32
32
  export { Toaster, DEFAULT_DOCK_WIDTH, type ShellToasterProps } from './Toaster';
33
33
  export { STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES } from './status-row-styles';
34
34
  export { FilterInput, DEFAULT_FILTER_FIELDS, DEFAULT_FILTER_INPUT_LABELS, type FilterField, type FilterInputProps, type FilterInputLabels, type FilterInputTestIds, } from './FilterInput';
35
+ export { DockZone } from './DockZone';
36
+ export { PanelModeSwitcher } from './PanelModeSwitcher';
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- export { 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_TIP_CARD_LABELS, INSTALL_PROMPT_DISMISSED_KEY, InfoBar, InstallPrompt, MobileAppBar, MobileTabBar, NotificationBell, OfflinePill, RemoteControlPill, SHELL_START_INSET_VAR, STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES, ShellSidebar, Sidebar, SidebarRowAction, SplitLayout, StatusBadge, StatusRow, TipCard, UserMenu, getInstallInstructions, initInstallPrompt, isIosDevice, promptAppInstall, resolveSidebarLayout, useCloseOnEscape, useInstallPrompt, useShellStartInset, useSidebarController, useSidebarSettle } from '../chunk-LTEDORG3.js';
2
+ export { 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_TIP_CARD_LABELS, DockZone, INSTALL_PROMPT_DISMISSED_KEY, InfoBar, InstallPrompt, MobileAppBar, MobileTabBar, NotificationBell, OfflinePill, PanelModeSwitcher, RemoteControlPill, SHELL_START_INSET_VAR, STATUS_ROW_BASE_CLASS, STATUS_ROW_TONES, ShellSidebar, Sidebar, SidebarRowAction, SplitLayout, StatusBadge, StatusRow, TipCard, UserMenu, getInstallInstructions, initInstallPrompt, isIosDevice, promptAppInstall, resolveSidebarLayout, useCloseOnEscape, useInstallPrompt, useShellStartInset, useSidebarController, useSidebarSettle } from '../chunk-QFYRXQTD.js';
3
3
  export { ActionCluster, DEFAULT_SIDEBAR_LABELS, DEFAULT_WORKSPACE_KIND_LABELS, DEFAULT_WORKSPACE_SWITCHER_LABELS, SidebarBadgeRow, SidebarRowHoverContext, WorkspaceIdentity, WorkspaceSwitcher, hasUnsavedInput, installReloadPolicy, markBuildStale, prefetchChunk, requestReload, useSidebarContext, workspaceKindColor, workspaceKindMeta } from '../chunk-PXYP3DM5.js';
4
4
  import '../chunk-RLWIUUQ5.js';
5
5
  export { DEFAULT_FILTER_FIELDS, DEFAULT_FILTER_INPUT_LABELS, FilterInput } from '../chunk-YU2KUMGE.js';
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbidocs/coedit",
3
- "version": "0.5.35",
3
+ "version": "0.5.36",
4
4
  "description": "Real-time collaboration for the ARBI native DOCX editor: a Yjs mirror of the canonical OOXML package, session, and server runtime",
5
5
  "type": "module",
6
6
  "sideEffects": false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbidocs/blocks",
3
- "version": "0.5.35",
3
+ "version": "0.5.36",
4
4
  "description": "Composable, domain-neutral UI blocks for ARBI apps, organised by capability (retrieval, facts, agents, workspaces, citations, collaboration) plus shell, theme and site primitives, on top of @arbidocs/react.",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -296,9 +296,9 @@
296
296
  "example:test:e2e": "playwright test -c examples/custom-ui/playwright.config.ts"
297
297
  },
298
298
  "dependencies": {
299
- "@arbidocs/client": "0.5.35",
300
- "@arbidocs/coedit": "0.5.35",
301
- "@arbidocs/sdk": "0.5.35",
299
+ "@arbidocs/client": "0.5.36",
300
+ "@arbidocs/coedit": "0.5.36",
301
+ "@arbidocs/sdk": "0.5.36",
302
302
  "@auth0/auth0-react": "^2.19.0",
303
303
  "@dnd-kit/core": "^6.3.1",
304
304
  "@dnd-kit/sortable": "^10.0.0",
@@ -345,7 +345,7 @@
345
345
  "y-protocols": "^1.0.6"
346
346
  },
347
347
  "peerDependencies": {
348
- "@arbidocs/react": "0.5.35",
348
+ "@arbidocs/react": "0.5.36",
349
349
  "@lexical/html": "0.35.0",
350
350
  "@lexical/link": "0.35.0",
351
351
  "@lexical/list": "0.35.0",