@mt-gloss/ui 0.1.114 → 0.1.116

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.
@@ -6,5 +6,25 @@ export interface PageMgmtShellProps extends PanelShellProps {
6
6
  pages?: readonly PageEntry[];
7
7
  /** See CatalogAddShellProps.footerSlot — sibling slot inside Provider. */
8
8
  footerSlot?: ReactNode;
9
+ /**
10
+ * When provided, the shell renders this external list verbatim (active flag
11
+ * is recomputed from `activePageId`). External pages override `pages`/MOCK_PAGES
12
+ * and disable internal mock mutations.
13
+ */
14
+ externalPages?: readonly PageEntry[];
15
+ /** Active page id; drives the .active class on rows. Required when externalPages set. */
16
+ activePageId?: string;
17
+ /** Live-commit rename binding. Replaces the mock-state renamePage when set. */
18
+ onRename?: (id: string, name: string) => void;
19
+ /** Live-commit duplicate binding. */
20
+ onDuplicate?: (id: string) => void;
21
+ /** Live-commit delete binding. */
22
+ onDelete?: (id: string) => void;
23
+ /** Live-commit reorder binding. When set together with externalPages, drag-to-reorder activates. */
24
+ onReorder?: (orderedIds: string[]) => void;
25
+ /** Live-commit create binding. Forwarded to footer via context. */
26
+ onCreatePage?: () => void;
27
+ /** Optional: switch active page when a row name is clicked. */
28
+ onSwitchPage?: (id: string) => void;
9
29
  }
10
- export declare function PageMgmtShell({ isOpen, pages: initialPages, footerSlot, }: PageMgmtShellProps): import("react/jsx-runtime").JSX.Element;
30
+ export declare function PageMgmtShell({ isOpen, pages: initialPages, footerSlot, externalPages, activePageId, onRename, onDuplicate, onDelete, onReorder, onCreatePage, onSwitchPage, }: PageMgmtShellProps): import("react/jsx-runtime").JSX.Element;
@@ -9,6 +9,10 @@ export interface PageMgmtState {
9
9
  duplicatePage?: (id: string) => void;
10
10
  /** GAP-05 — delete via kebab menu. Mock-state operation. */
11
11
  deletePage?: (id: string) => void;
12
+ /** Sprint 2026-05-20 — live-commit create binding for '+ New page' footer
13
+ * button. When set, the footer routes to this binding instead of mutating
14
+ * local mock state via setPages. */
15
+ createPage?: () => void;
12
16
  }
13
17
  export declare const PageMgmtStateContext: import('react').Context<PageMgmtState | null>;
14
18
  export declare function usePageMgmtState(): PageMgmtState | null;
@@ -5,7 +5,9 @@ export interface PageMgmtRowProps {
5
5
  onRename?: (id: string) => void;
6
6
  /** @deprecated GAP-05 wires kebab menu directly via context. */
7
7
  onKebab?: (id: string) => void;
8
- /** Drag-to-reorder hook seam — DEBT.md tracks dnd-kit wiring. */
8
+ /** Drag-to-reorder hook seam — legacy; SortableZones owns drag now. */
9
9
  onDragStart?: (id: string) => void;
10
+ /** Sprint 2026-05-20 — switch active page when the row name is clicked. */
11
+ onSwitchPage?: (id: string) => void;
10
12
  }
11
- export declare function PageMgmtRow({ page, onRename, onKebab, onDragStart }: PageMgmtRowProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function PageMgmtRow({ page, onRename, onKebab, onDragStart, onSwitchPage }: PageMgmtRowProps): import("react/jsx-runtime").JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mt-gloss/ui",
3
- "version": "0.1.114",
3
+ "version": "0.1.116",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "restricted"