react-os-shell 4.55.0 → 4.63.0

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 (46) hide show
  1. package/README.md +6 -3
  2. package/dist/{Browser-WHBSYGLC.js → Browser-SPTNLEMR.js} +5 -5
  3. package/dist/{Browser-WHBSYGLC.js.map → Browser-SPTNLEMR.js.map} +1 -1
  4. package/dist/{Calculator-PHKNMRLX.js → Calculator-XMOPPCK3.js} +4 -4
  5. package/dist/{Calculator-PHKNMRLX.js.map → Calculator-XMOPPCK3.js.map} +1 -1
  6. package/dist/{CurrencyConverter-MEG7RHEK.js → CurrencyConverter-24HNX6C6.js} +4 -4
  7. package/dist/{CurrencyConverter-MEG7RHEK.js.map → CurrencyConverter-24HNX6C6.js.map} +1 -1
  8. package/dist/{Documents-Y32RNCTU.js → Documents-GMRVVCH7.js} +5 -5
  9. package/dist/{Documents-Y32RNCTU.js.map → Documents-GMRVVCH7.js.map} +1 -1
  10. package/dist/{Files-LTG2S2KU.js → Files-ITH4SVML.js} +5 -5
  11. package/dist/{Files-LTG2S2KU.js.map → Files-ITH4SVML.js.map} +1 -1
  12. package/dist/{Notepad-P7J2OAXD.js → Notepad-GE5P55TL.js} +5 -5
  13. package/dist/{Notepad-P7J2OAXD.js.map → Notepad-GE5P55TL.js.map} +1 -1
  14. package/dist/{PomodoroTimer-5B5AFXQH.js → PomodoroTimer-ER5STVKM.js} +4 -4
  15. package/dist/{PomodoroTimer-5B5AFXQH.js.map → PomodoroTimer-ER5STVKM.js.map} +1 -1
  16. package/dist/{Preview-XZQ55YGY.js → Preview-UXVDXCDJ.js} +5 -5
  17. package/dist/{Preview-XZQ55YGY.js.map → Preview-UXVDXCDJ.js.map} +1 -1
  18. package/dist/{Spreadsheet-KKSLCSIK.js → Spreadsheet-B32JQVX4.js} +5 -5
  19. package/dist/{Spreadsheet-KKSLCSIK.js.map → Spreadsheet-B32JQVX4.js.map} +1 -1
  20. package/dist/{Stock-KTWRNBI6.js → Stock-FSFPFDQT.js} +4 -4
  21. package/dist/{Stock-KTWRNBI6.js.map → Stock-FSFPFDQT.js.map} +1 -1
  22. package/dist/{Weather-B7MO7N4N.js → Weather-HXOERJJV.js} +4 -4
  23. package/dist/{Weather-B7MO7N4N.js.map → Weather-HXOERJJV.js.map} +1 -1
  24. package/dist/{WorldClock-M5MEV74F.js → WorldClock-2FUGLIUZ.js} +4 -4
  25. package/dist/{WorldClock-M5MEV74F.js.map → WorldClock-2FUGLIUZ.js.map} +1 -1
  26. package/dist/apps/index.js +15 -15
  27. package/dist/{chunk-CTTHBTOX.js → chunk-CWA27IGB.js} +499 -95
  28. package/dist/chunk-CWA27IGB.js.map +1 -0
  29. package/dist/{chunk-5S65ZC5W.js → chunk-JMESET3G.js} +81 -7
  30. package/dist/chunk-JMESET3G.js.map +1 -0
  31. package/dist/{chunk-FHPPPDHL.js → chunk-LYQVLRWQ.js} +3 -3
  32. package/dist/{chunk-FHPPPDHL.js.map → chunk-LYQVLRWQ.js.map} +1 -1
  33. package/dist/{chunk-S3ZIBWRY.js → chunk-TO6ZZHJK.js} +4 -4
  34. package/dist/{chunk-S3ZIBWRY.js.map → chunk-TO6ZZHJK.js.map} +1 -1
  35. package/dist/chunk-WCGHIJZR.js +7 -0
  36. package/dist/{chunk-LCLB7YBY.js.map → chunk-WCGHIJZR.js.map} +1 -1
  37. package/dist/{index-BE0z2D6y.d.ts → index-Ka32s3Ij.d.ts} +135 -2
  38. package/dist/index.d.ts +29 -8
  39. package/dist/index.js +56 -18
  40. package/dist/index.js.map +1 -1
  41. package/dist/ui/index.d.ts +1 -1
  42. package/dist/ui/index.js +2 -2
  43. package/package.json +1 -1
  44. package/dist/chunk-5S65ZC5W.js.map +0 -1
  45. package/dist/chunk-CTTHBTOX.js.map +0 -1
  46. package/dist/chunk-LCLB7YBY.js +0 -7
@@ -1,4 +1,4 @@
1
- import { Modal } from './chunk-5S65ZC5W.js';
1
+ import { Modal } from './chunk-JMESET3G.js';
2
2
  import { jsx, jsxs } from 'react/jsx-runtime';
3
3
 
4
4
  var DEFAULT_APPEARANCE = { activeOpacity: 70, inactiveOpacity: 50, activeBlur: 0, inactiveBlur: 0 };
@@ -138,5 +138,5 @@ function WidgetSettingsModal({ open, onClose, title, appearance, onAppearanceCha
138
138
  }
139
139
 
140
140
  export { WidgetSettingsModal, loadAppearance };
141
- //# sourceMappingURL=chunk-FHPPPDHL.js.map
142
- //# sourceMappingURL=chunk-FHPPPDHL.js.map
141
+ //# sourceMappingURL=chunk-LYQVLRWQ.js.map
142
+ //# sourceMappingURL=chunk-LYQVLRWQ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/shell/WidgetSettingsModal.tsx"],"names":[],"mappings":"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","file":"chunk-FHPPPDHL.js","sourcesContent":["import Modal from './Modal';\n\nexport interface WidgetAppearance {\n activeOpacity: number;\n inactiveOpacity: number;\n activeBlur: number;\n inactiveBlur: number;\n}\n\nexport const DEFAULT_APPEARANCE: WidgetAppearance = { activeOpacity: 70, inactiveOpacity: 50, activeBlur: 0, inactiveBlur: 0 };\n\nexport function loadAppearance(key: string): WidgetAppearance {\n try {\n const saved = JSON.parse(localStorage.getItem(key) || '');\n // Migrate old single `blur` field to activeBlur/inactiveBlur\n if (saved.blur != null && saved.activeBlur == null) {\n saved.activeBlur = saved.blur;\n saved.inactiveBlur = saved.blur;\n delete saved.blur;\n }\n return { ...DEFAULT_APPEARANCE, ...saved };\n }\n catch { return DEFAULT_APPEARANCE; }\n}\n\n/** Reusable settings modal for widgets — renders appearance sliders + optional extra content above */\nexport default function WidgetSettingsModal({ open, onClose, title, appearance, onAppearanceChange, onSave, children }: {\n open: boolean;\n onClose: () => void;\n title: string;\n appearance: WidgetAppearance;\n onAppearanceChange: (a: WidgetAppearance) => void;\n onSave: () => void;\n children?: React.ReactNode;\n}) {\n if (!open) return null;\n\n const inp = 'w-full h-1.5 rounded-full appearance-none bg-gray-200 cursor-pointer accent-blue-500';\n const lbl = 'flex items-center justify-between text-xs text-gray-500';\n\n return (\n <div onPointerDown={e => e.stopPropagation()} onContextMenu={e => e.stopPropagation()}>\n <Modal open={open} onClose={onClose} title={title} size=\"sm\">\n <div className=\"space-y-4\">\n {children}\n\n {/* Appearance */}\n <div>\n <h3 className=\"text-sm font-semibold text-gray-700 mb-3\">Appearance</h3>\n <div className=\"grid grid-cols-2 gap-4\">\n <div>\n <div className=\"text-xs font-medium text-gray-600 mb-2\">Active</div>\n <div className=\"space-y-2\">\n <div>\n <div className={lbl}><span>Opacity</span><span>{appearance.activeOpacity}%</span></div>\n <input type=\"range\" min={20} max={100} value={appearance.activeOpacity}\n onChange={e => onAppearanceChange({ ...appearance, activeOpacity: +e.target.value })} className={inp} />\n </div>\n <div>\n <div className={lbl}><span>Blur</span><span>{appearance.activeBlur}px</span></div>\n <input type=\"range\" min={0} max={20} value={appearance.activeBlur}\n onChange={e => onAppearanceChange({ ...appearance, activeBlur: +e.target.value })} className={inp} />\n </div>\n </div>\n </div>\n <div>\n <div className=\"text-xs font-medium text-gray-600 mb-2\">Inactive</div>\n <div className=\"space-y-2\">\n <div>\n <div className={lbl}><span>Opacity</span><span>{appearance.inactiveOpacity}%</span></div>\n <input type=\"range\" min={20} max={100} value={appearance.inactiveOpacity}\n onChange={e => onAppearanceChange({ ...appearance, inactiveOpacity: +e.target.value })} className={inp} />\n </div>\n <div>\n <div className={lbl}><span>Blur</span><span>{appearance.inactiveBlur}px</span></div>\n <input type=\"range\" min={0} max={20} value={appearance.inactiveBlur}\n onChange={e => onAppearanceChange({ ...appearance, inactiveBlur: +e.target.value })} className={inp} />\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Actions */}\n <div className=\"flex gap-2 pt-2\">\n <button onClick={onSave}\n className=\"flex-1 text-sm font-medium py-2 rounded-lg bg-blue-600 text-white hover:bg-blue-700 transition\">Save</button>\n <button onClick={onClose}\n className=\"flex-1 text-sm font-medium py-2 rounded-lg border border-gray-300 text-gray-600 hover:bg-gray-50 transition\">Cancel</button>\n </div>\n </div>\n </Modal>\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/shell/WidgetSettingsModal.tsx"],"names":[],"mappings":"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","file":"chunk-LYQVLRWQ.js","sourcesContent":["import Modal from './Modal';\n\nexport interface WidgetAppearance {\n activeOpacity: number;\n inactiveOpacity: number;\n activeBlur: number;\n inactiveBlur: number;\n}\n\nexport const DEFAULT_APPEARANCE: WidgetAppearance = { activeOpacity: 70, inactiveOpacity: 50, activeBlur: 0, inactiveBlur: 0 };\n\nexport function loadAppearance(key: string): WidgetAppearance {\n try {\n const saved = JSON.parse(localStorage.getItem(key) || '');\n // Migrate old single `blur` field to activeBlur/inactiveBlur\n if (saved.blur != null && saved.activeBlur == null) {\n saved.activeBlur = saved.blur;\n saved.inactiveBlur = saved.blur;\n delete saved.blur;\n }\n return { ...DEFAULT_APPEARANCE, ...saved };\n }\n catch { return DEFAULT_APPEARANCE; }\n}\n\n/** Reusable settings modal for widgets — renders appearance sliders + optional extra content above */\nexport default function WidgetSettingsModal({ open, onClose, title, appearance, onAppearanceChange, onSave, children }: {\n open: boolean;\n onClose: () => void;\n title: string;\n appearance: WidgetAppearance;\n onAppearanceChange: (a: WidgetAppearance) => void;\n onSave: () => void;\n children?: React.ReactNode;\n}) {\n if (!open) return null;\n\n const inp = 'w-full h-1.5 rounded-full appearance-none bg-gray-200 cursor-pointer accent-blue-500';\n const lbl = 'flex items-center justify-between text-xs text-gray-500';\n\n return (\n <div onPointerDown={e => e.stopPropagation()} onContextMenu={e => e.stopPropagation()}>\n <Modal open={open} onClose={onClose} title={title} size=\"sm\">\n <div className=\"space-y-4\">\n {children}\n\n {/* Appearance */}\n <div>\n <h3 className=\"text-sm font-semibold text-gray-700 mb-3\">Appearance</h3>\n <div className=\"grid grid-cols-2 gap-4\">\n <div>\n <div className=\"text-xs font-medium text-gray-600 mb-2\">Active</div>\n <div className=\"space-y-2\">\n <div>\n <div className={lbl}><span>Opacity</span><span>{appearance.activeOpacity}%</span></div>\n <input type=\"range\" min={20} max={100} value={appearance.activeOpacity}\n onChange={e => onAppearanceChange({ ...appearance, activeOpacity: +e.target.value })} className={inp} />\n </div>\n <div>\n <div className={lbl}><span>Blur</span><span>{appearance.activeBlur}px</span></div>\n <input type=\"range\" min={0} max={20} value={appearance.activeBlur}\n onChange={e => onAppearanceChange({ ...appearance, activeBlur: +e.target.value })} className={inp} />\n </div>\n </div>\n </div>\n <div>\n <div className=\"text-xs font-medium text-gray-600 mb-2\">Inactive</div>\n <div className=\"space-y-2\">\n <div>\n <div className={lbl}><span>Opacity</span><span>{appearance.inactiveOpacity}%</span></div>\n <input type=\"range\" min={20} max={100} value={appearance.inactiveOpacity}\n onChange={e => onAppearanceChange({ ...appearance, inactiveOpacity: +e.target.value })} className={inp} />\n </div>\n <div>\n <div className={lbl}><span>Blur</span><span>{appearance.inactiveBlur}px</span></div>\n <input type=\"range\" min={0} max={20} value={appearance.inactiveBlur}\n onChange={e => onAppearanceChange({ ...appearance, inactiveBlur: +e.target.value })} className={inp} />\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Actions */}\n <div className=\"flex gap-2 pt-2\">\n <button onClick={onSave}\n className=\"flex-1 text-sm font-medium py-2 rounded-lg bg-blue-600 text-white hover:bg-blue-700 transition\">Save</button>\n <button onClick={onClose}\n className=\"flex-1 text-sm font-medium py-2 rounded-lg border border-gray-300 text-gray-600 hover:bg-gray-50 transition\">Cancel</button>\n </div>\n </div>\n </Modal>\n </div>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { VERSION } from './chunk-LCLB7YBY.js';
2
- import { useWindowMenuItem, Modal } from './chunk-5S65ZC5W.js';
1
+ import { VERSION } from './chunk-WCGHIJZR.js';
2
+ import { useWindowMenuItem, Modal } from './chunk-JMESET3G.js';
3
3
  import { navIcons } from './chunk-WNLPTLT6.js';
4
4
  import { useState, useCallback, isValidElement, cloneElement } from 'react';
5
5
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -75,5 +75,5 @@ function AboutApp({ app }) {
75
75
  }
76
76
 
77
77
  export { AboutApp, BUILTIN_APP_INFO };
78
- //# sourceMappingURL=chunk-S3ZIBWRY.js.map
79
- //# sourceMappingURL=chunk-S3ZIBWRY.js.map
78
+ //# sourceMappingURL=chunk-TO6ZZHJK.js.map
79
+ //# sourceMappingURL=chunk-TO6ZZHJK.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/apps/_about.tsx"],"names":[],"mappings":"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","file":"chunk-S3ZIBWRY.js","sourcesContent":["/**\n * Shared \"About\" dialog for the bundled apps.\n *\n * Each bundled app carries its own version (independent of the package\n * version) so app-level changes can be tracked without bumping every app at\n * once. `<AboutApp app=\"…\" />` registers an \"About <Name>\" item in the\n * window title menu and renders the dialog: app icon, name, app version and\n * the react-os-shell attribution + shell version.\n *\n * Bump an app's version in `BUILTIN_APP_INFO` whenever that app's behaviour\n * changes, alongside the package-level CHANGELOG entry.\n */\nimport { useCallback, useState, isValidElement, cloneElement, type ReactElement } from 'react';\nimport Modal, { useWindowMenuItem } from '../shell/Modal';\nimport { navIcons } from '../shell-config/nav';\nimport { VERSION } from '../version';\n\nexport interface BuiltinAppInfo {\n /** Display name — matches the window-registry label. */\n name: string;\n /** App version, independent of the package version. */\n version: string;\n /** One-line summary shown in the About dialog. */\n description: string;\n /** Registry route — used to look up the consumer-registered nav icon. */\n route: string;\n}\n\nexport const BUILTIN_APP_INFO = {\n spreadsheet: {\n name: 'Spreadsheets',\n version: '1.1.1',\n route: '/spreadsheet',\n description: 'Multi-sheet spreadsheet editor with CSV / TSV import and export.',\n },\n notepad: {\n name: 'Notepad',\n version: '1.0.0',\n route: '/notepad',\n description: 'Color-coded notes with checklists, desktop stickies and entity autolinking.',\n },\n documents: {\n name: 'Documents',\n version: '1.1.0',\n route: '/documents',\n description: 'Letter-page editor for Word documents and plain-text files — images, lists, alignment.',\n },\n preview: {\n name: 'Preview',\n version: '1.2.1',\n route: '/preview',\n description: 'Viewer for PDF documents, images, DXF drawings and 3D models — CAD-style measuring with object snap and an AutoCAD-like command bar.',\n },\n files: {\n name: 'Files',\n version: '1.1.0',\n route: '/files',\n description: 'Personal file manager with folders, uploads, quota, trash and desktop shortcut folders.',\n },\n browser: {\n name: 'Browser',\n version: '1.0.1',\n route: '/browser',\n description: 'Minimal web browser with bookmarks, history and navigation bar.',\n },\n} satisfies Record<string, BuiltinAppInfo>;\n\nexport type BuiltinAppId = keyof typeof BUILTIN_APP_INFO;\n\nconst ABOUT_MENU_ICON = (\n <svg className=\"h-4 w-4 text-gray-400\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={1.5}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z\" />\n </svg>\n);\n\n// Generic window glyph shown when the consumer hasn't registered a nav icon\n// for the app's route (same fallback shape as the Modal title bar).\nconst FALLBACK_APP_ICON = (\n <svg className=\"h-9 w-9\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={1.5}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M3.75 6.75A2.25 2.25 0 016 4.5h12a2.25 2.25 0 012.25 2.25v10.5A2.25 2.25 0 0118 19.5H6a2.25 2.25 0 01-2.25-2.25V6.75z M3.75 9h16.5\" />\n </svg>\n);\n\n/** Registers \"About <Name>\" in the window title menu and renders the dialog.\n * Render anywhere inside the app's window. */\nexport default function AboutApp({ app }: { app: BuiltinAppId }) {\n const info = BUILTIN_APP_INFO[app];\n const [open, setOpen] = useState(false);\n const openDialog = useCallback(() => setOpen(true), []);\n useWindowMenuItem(`About ${info.name}`, openDialog, ABOUT_MENU_ICON);\n\n if (!open) return null;\n\n const registered = navIcons[info.route];\n const appIcon = isValidElement(registered)\n ? cloneElement(registered as ReactElement, { className: 'h-9 w-9' } as any)\n : FALLBACK_APP_ICON;\n\n return (\n <Modal open onClose={() => setOpen(false)} title={`About ${info.name}`} size=\"sm\" compact bodyScroll={false} autoHeight dimensions={[320, 320]}>\n <div className=\"flex flex-col items-center text-center px-5 pt-5 pb-4\">\n <div className=\"flex h-16 w-16 items-center justify-center rounded-2xl bg-gray-100 text-gray-600 shrink-0\">\n {appIcon}\n </div>\n <h2 className=\"mt-3 text-lg font-bold text-gray-900\">{info.name}</h2>\n <p className=\"text-[11px] font-mono text-gray-400\">Version {info.version}</p>\n <p className=\"mt-2 text-xs text-gray-500 leading-relaxed\">{info.description}</p>\n <div className=\"mt-4 pt-3 border-t border-gray-200 w-full\">\n <p className=\"text-[11px] text-gray-500\">\n Part of the <span className=\"font-medium text-gray-700\">react-os-shell</span> desktop environment\n </p>\n {VERSION && <p className=\"mt-0.5 text-[10px] font-mono text-gray-400\">shell v{VERSION}</p>}\n </div>\n </div>\n </Modal>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/apps/_about.tsx"],"names":[],"mappings":"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","file":"chunk-TO6ZZHJK.js","sourcesContent":["/**\n * Shared \"About\" dialog for the bundled apps.\n *\n * Each bundled app carries its own version (independent of the package\n * version) so app-level changes can be tracked without bumping every app at\n * once. `<AboutApp app=\"…\" />` registers an \"About <Name>\" item in the\n * window title menu and renders the dialog: app icon, name, app version and\n * the react-os-shell attribution + shell version.\n *\n * Bump an app's version in `BUILTIN_APP_INFO` whenever that app's behaviour\n * changes, alongside the package-level CHANGELOG entry.\n */\nimport { useCallback, useState, isValidElement, cloneElement, type ReactElement } from 'react';\nimport Modal, { useWindowMenuItem } from '../shell/Modal';\nimport { navIcons } from '../shell-config/nav';\nimport { VERSION } from '../version';\n\nexport interface BuiltinAppInfo {\n /** Display name — matches the window-registry label. */\n name: string;\n /** App version, independent of the package version. */\n version: string;\n /** One-line summary shown in the About dialog. */\n description: string;\n /** Registry route — used to look up the consumer-registered nav icon. */\n route: string;\n}\n\nexport const BUILTIN_APP_INFO = {\n spreadsheet: {\n name: 'Spreadsheets',\n version: '1.1.1',\n route: '/spreadsheet',\n description: 'Multi-sheet spreadsheet editor with CSV / TSV import and export.',\n },\n notepad: {\n name: 'Notepad',\n version: '1.0.0',\n route: '/notepad',\n description: 'Color-coded notes with checklists, desktop stickies and entity autolinking.',\n },\n documents: {\n name: 'Documents',\n version: '1.1.0',\n route: '/documents',\n description: 'Letter-page editor for Word documents and plain-text files — images, lists, alignment.',\n },\n preview: {\n name: 'Preview',\n version: '1.2.1',\n route: '/preview',\n description: 'Viewer for PDF documents, images, DXF drawings and 3D models — CAD-style measuring with object snap and an AutoCAD-like command bar.',\n },\n files: {\n name: 'Files',\n version: '1.1.0',\n route: '/files',\n description: 'Personal file manager with folders, uploads, quota, trash and desktop shortcut folders.',\n },\n browser: {\n name: 'Browser',\n version: '1.0.1',\n route: '/browser',\n description: 'Minimal web browser with bookmarks, history and navigation bar.',\n },\n} satisfies Record<string, BuiltinAppInfo>;\n\nexport type BuiltinAppId = keyof typeof BUILTIN_APP_INFO;\n\nconst ABOUT_MENU_ICON = (\n <svg className=\"h-4 w-4 text-gray-400\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={1.5}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z\" />\n </svg>\n);\n\n// Generic window glyph shown when the consumer hasn't registered a nav icon\n// for the app's route (same fallback shape as the Modal title bar).\nconst FALLBACK_APP_ICON = (\n <svg className=\"h-9 w-9\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={1.5}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M3.75 6.75A2.25 2.25 0 016 4.5h12a2.25 2.25 0 012.25 2.25v10.5A2.25 2.25 0 0118 19.5H6a2.25 2.25 0 01-2.25-2.25V6.75z M3.75 9h16.5\" />\n </svg>\n);\n\n/** Registers \"About <Name>\" in the window title menu and renders the dialog.\n * Render anywhere inside the app's window. */\nexport default function AboutApp({ app }: { app: BuiltinAppId }) {\n const info = BUILTIN_APP_INFO[app];\n const [open, setOpen] = useState(false);\n const openDialog = useCallback(() => setOpen(true), []);\n useWindowMenuItem(`About ${info.name}`, openDialog, ABOUT_MENU_ICON);\n\n if (!open) return null;\n\n const registered = navIcons[info.route];\n const appIcon = isValidElement(registered)\n ? cloneElement(registered as ReactElement, { className: 'h-9 w-9' } as any)\n : FALLBACK_APP_ICON;\n\n return (\n <Modal open onClose={() => setOpen(false)} title={`About ${info.name}`} size=\"sm\" compact bodyScroll={false} autoHeight dimensions={[320, 320]}>\n <div className=\"flex flex-col items-center text-center px-5 pt-5 pb-4\">\n <div className=\"flex h-16 w-16 items-center justify-center rounded-2xl bg-gray-100 text-gray-600 shrink-0\">\n {appIcon}\n </div>\n <h2 className=\"mt-3 text-lg font-bold text-gray-900\">{info.name}</h2>\n <p className=\"text-[11px] font-mono text-gray-400\">Version {info.version}</p>\n <p className=\"mt-2 text-xs text-gray-500 leading-relaxed\">{info.description}</p>\n <div className=\"mt-4 pt-3 border-t border-gray-200 w-full\">\n <p className=\"text-[11px] text-gray-500\">\n Part of the <span className=\"font-medium text-gray-700\">react-os-shell</span> desktop environment\n </p>\n {VERSION && <p className=\"mt-0.5 text-[10px] font-mono text-gray-400\">shell v{VERSION}</p>}\n </div>\n </div>\n </Modal>\n );\n}\n"]}
@@ -0,0 +1,7 @@
1
+ // src/version.ts
2
+ var VERSION = "4.63.0" ;
3
+ var APP_VERSION = VERSION;
4
+
5
+ export { APP_VERSION, VERSION };
6
+ //# sourceMappingURL=chunk-WCGHIJZR.js.map
7
+ //# sourceMappingURL=chunk-WCGHIJZR.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/version.ts"],"names":[],"mappings":";AAIO,IAAM,OAAA,GAAwD,QAAA;AAG9D,IAAM,WAAA,GAAc","file":"chunk-LCLB7YBY.js","sourcesContent":["declare const __PKG_VERSION__: string | undefined;\n\n/** Package version, injected by tsup at build time. Stays as an empty\n * string when the source is consumed without a build (e.g. tests). */\nexport const VERSION: string = typeof __PKG_VERSION__ === 'string' ? __PKG_VERSION__ : '';\n\n/** Legacy alias kept so existing consumers do not break. */\nexport const APP_VERSION = VERSION;\n"]}
1
+ {"version":3,"sources":["../src/version.ts"],"names":[],"mappings":";AAIO,IAAM,OAAA,GAAwD,QAAA;AAG9D,IAAM,WAAA,GAAc","file":"chunk-WCGHIJZR.js","sourcesContent":["declare const __PKG_VERSION__: string | undefined;\n\n/** Package version, injected by tsup at build time. Stays as an empty\n * string when the source is consumed without a build (e.g. tests). */\nexport const VERSION: string = typeof __PKG_VERSION__ === 'string' ? __PKG_VERSION__ : '';\n\n/** Legacy alias kept so existing consumers do not break. */\nexport const APP_VERSION = VERSION;\n"]}
@@ -408,6 +408,46 @@ interface DatePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'c
408
408
  }
409
409
  declare const DatePicker: react.ForwardRefExoticComponent<DatePickerProps & react.RefAttributes<HTMLInputElement>>;
410
410
 
411
+ interface TimePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'className' | 'size' | 'type' | 'value' | 'onChange' | 'min' | 'max'> {
412
+ /** An `HH:MM` / `HH:MM:SS` string, a Date (local wall-clock time is read), or nothing. */
413
+ value?: Date | string | null;
414
+ /**
415
+ * The chosen time as `HH:MM` (`HH:MM:SS` when `step` asks for seconds), or
416
+ * `null` when the field is empty or mid-entry — same contract as DatePicker.
417
+ */
418
+ onChange?: (value: string | null) => void;
419
+ /** Earliest selectable time. */
420
+ min?: Date | string | null;
421
+ /** Latest selectable time. */
422
+ max?: Date | string | null;
423
+ /** Error state — red border + ring, matching Input. */
424
+ invalid?: boolean;
425
+ /** `touch` gives a 56px field for a finger. Defaults to the desktop size. */
426
+ size?: InputSize;
427
+ className?: string;
428
+ }
429
+ declare const TimePicker: react.ForwardRefExoticComponent<TimePickerProps & react.RefAttributes<HTMLInputElement>>;
430
+
431
+ interface DateTimePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'className' | 'size' | 'type' | 'value' | 'onChange' | 'min' | 'max'> {
432
+ /** A Date, a local `YYYY-MM-DDTHH:MM` string, or nothing. */
433
+ value?: Date | string | null;
434
+ /**
435
+ * The chosen moment as a local Date, or `null` when the field is empty or
436
+ * mid-entry — same contract as DatePicker.
437
+ */
438
+ onChange?: (value: Date | null) => void;
439
+ /** Earliest selectable moment. */
440
+ min?: Date | string | null;
441
+ /** Latest selectable moment. */
442
+ max?: Date | string | null;
443
+ /** Error state — red border + ring, matching Input. */
444
+ invalid?: boolean;
445
+ /** `touch` gives a 56px field for a finger. Defaults to the desktop size. */
446
+ size?: InputSize;
447
+ className?: string;
448
+ }
449
+ declare const DateTimePicker: react.ForwardRefExoticComponent<DateTimePickerProps & react.RefAttributes<HTMLInputElement>>;
450
+
411
451
  interface NumericKeypadProps {
412
452
  value: string;
413
453
  onChange: (next: string) => void;
@@ -585,6 +625,29 @@ interface SearchableSelectProps {
585
625
  }
586
626
  declare function SearchableSelect({ value, onChange, options, placeholder, emptyOptionLabel, className, disabled, id, allowFreeText, onSearchChange, rightAdornment, }: SearchableSelectProps): react_jsx_runtime.JSX.Element;
587
627
 
628
+ interface TagInputOption {
629
+ value: string;
630
+ label: string;
631
+ }
632
+ interface TagInputProps {
633
+ value: string[];
634
+ onChange: (value: string[]) => void;
635
+ /** The pickable list. Omit it for a pure free-text tag field (with
636
+ * `allowFreeText`), where the dropdown never renders. */
637
+ options?: TagInputOption[];
638
+ placeholder?: string;
639
+ /** When true, Enter / comma / Tab / clicking away commits the typed text as
640
+ * a tag of its own. Default false: only listed options can be picked. */
641
+ allowFreeText?: boolean;
642
+ /** Error state — red border + ring, matching Input. */
643
+ invalid?: boolean;
644
+ disabled?: boolean;
645
+ /** Optional id for label-for wiring, applied to the inner text input. */
646
+ id?: string;
647
+ className?: string;
648
+ }
649
+ declare function TagInput({ value, onChange, options, placeholder, allowFreeText, invalid, disabled, id, className, }: TagInputProps): react_jsx_runtime.JSX.Element;
650
+
588
651
  /** How much room the card gives its contents. `md` is the desktop default;
589
652
  * `lg` suits a touch layout, where the same density reads as cramped. */
590
653
  type CardPadding = 'none' | 'sm' | 'md' | 'lg';
@@ -941,6 +1004,27 @@ interface TabsProps {
941
1004
  }
942
1005
  declare function Tabs({ items, value, onChange, variant, idPrefix, className, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, }: TabsProps): react_jsx_runtime.JSX.Element;
943
1006
 
1007
+ interface StepItem {
1008
+ id: string;
1009
+ label: ReactNode;
1010
+ /** Short line under the label. */
1011
+ description?: ReactNode;
1012
+ }
1013
+ interface StepperProps {
1014
+ items: StepItem[];
1015
+ /** The current step's id. Controlled — the consumer owns the wizard state. */
1016
+ value: string;
1017
+ /**
1018
+ * Lets the user return to a COMPLETED step by clicking it. Omitted, the
1019
+ * strip is purely an indicator and renders no controls at all.
1020
+ */
1021
+ onChange?: (id: string) => void;
1022
+ /** Names the strip for assistive technology, e.g. "Checkout steps". */
1023
+ 'aria-label'?: string;
1024
+ className?: string;
1025
+ }
1026
+ declare function Stepper({ items, value, onChange, 'aria-label': ariaLabel, className, }: StepperProps): react_jsx_runtime.JSX.Element;
1027
+
944
1028
  interface AccordionItem {
945
1029
  id: string;
946
1030
  title: ReactNode;
@@ -2109,9 +2193,28 @@ interface DataTableProps<T> {
2109
2193
  emptyText?: ReactNode;
2110
2194
  /** Rendered under the rows — an infinite-scroll sentinel, a totals strip. */
2111
2195
  footer?: ReactNode;
2196
+ /**
2197
+ * Windowed rendering for large LOADED datasets. Pagination and infinite
2198
+ * scroll bound what is fetched; this bounds what is RENDERED — a few
2199
+ * thousand loaded rows otherwise all get DOM, and every sort or filter
2200
+ * re-lays-out the lot. The wrapper becomes a vertical scroll container of
2201
+ * `height` px, only the rows near the viewport exist in the DOM (padded to
2202
+ * the full scroll height by two spacer rows), and the header pins to the
2203
+ * top of the scroll.
2204
+ *
2205
+ * `rowHeight` is a promise, not a measurement: every row is rendered at
2206
+ * exactly that height (the scroll math depends on it), so `ellipsis` your
2207
+ * long columns rather than letting them wrap. Off-screen rows are absent
2208
+ * for assistive technology too — same trade every windowed list makes.
2209
+ */
2210
+ virtualized?: {
2211
+ height: number;
2212
+ rowHeight: number;
2213
+ overscan?: number;
2214
+ };
2112
2215
  className?: string;
2113
2216
  }
2114
- declare function DataTable<T>({ columns, data, rowKey, sort, onSortChange, pagination, caption, loading, bordered, size, minWidth, rowClassName, onRow, emptyText, footer, className, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
2217
+ declare function DataTable<T>({ columns, data, rowKey, sort, onSortChange, pagination, caption, loading, bordered, size, minWidth, rowClassName, onRow, emptyText, footer, virtualized, className, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
2115
2218
 
2116
2219
  interface ListFooterProps {
2117
2220
  selectedCount: number;
@@ -2185,6 +2288,34 @@ interface BarChartProps {
2185
2288
  className?: string;
2186
2289
  style?: CSSProperties;
2187
2290
  }
2291
+ interface LineChartSeries {
2292
+ data: number[];
2293
+ /** Shown in the legend (`showLegend`) and in point tooltips. */
2294
+ label?: string;
2295
+ /** Line color. Defaults to `currentColor`. */
2296
+ color?: string;
2297
+ /** Area fill under this line. Omit for a bare line. */
2298
+ fill?: string;
2299
+ }
2300
+ interface LineChartProps {
2301
+ /** One or more series drawn over the same x positions. */
2302
+ series: LineChartSeries[];
2303
+ /** X-axis labels rendered under the plot, one per data point. */
2304
+ labels?: string[];
2305
+ height?: number;
2306
+ strokeWidth?: number;
2307
+ showDots?: boolean;
2308
+ /** Value at the top of the plot. Defaults to the max across all series. */
2309
+ max?: number;
2310
+ /** Value at the bottom of the plot. Defaults to the min across all series. */
2311
+ min?: number;
2312
+ /** Max / mid / min values in a left gutter, with faint reference lines. */
2313
+ showScale?: boolean;
2314
+ /** Color-dot legend above the plot, from the series' `label`s. */
2315
+ showLegend?: boolean;
2316
+ className?: string;
2317
+ style?: CSSProperties;
2318
+ }
2188
2319
  interface DonutSegment {
2189
2320
  label: string;
2190
2321
  value: number;
@@ -2206,6 +2337,8 @@ declare function BarChart({ data, labels, height, color, colors, max, gap, class
2206
2337
 
2207
2338
  declare function DonutChart({ segments, size, thickness, centerLabel, className, style }: DonutChartProps): react_jsx_runtime.JSX.Element;
2208
2339
 
2340
+ declare function LineChart({ series, labels, height, strokeWidth, showDots, max, min, showScale, showLegend, className, style, }: LineChartProps): react_jsx_runtime.JSX.Element | null;
2341
+
2209
2342
  declare function DashboardTemplate(): react_jsx_runtime.JSX.Element;
2210
2343
 
2211
2344
  declare function DataTablePage(): react_jsx_runtime.JSX.Element;
@@ -2376,4 +2509,4 @@ declare const ALT_SHIFT_N: string;
2376
2509
  * string when the source is consumed without a build (e.g. tests). */
2377
2510
  declare const VERSION: string;
2378
2511
 
2379
- export { type CountBadgeProps as $, ALT as A, Banner as B, type ColumnDef as C, type ButtonSize as D, type ButtonVariant as E, CMD_A as F, CMD_DOT as G, CMD_ENTER as H, CMD_K as I, CMD_S as J, Card as K, type CardPadding as L, type CardProps as M, type CellStyle as N, ChatTemplate as O, type PaginatedResponse as P, Checkbox as Q, type CheckboxProps as R, type SearchConfig as S, CheckoutTemplate as T, ColoredBadge as U, type ColoredBadgeProps as V, ConfirmProvider as W, ContainerFillChart as X, type ContainerFillChartProps as Y, type ContainerFillItem as Z, CountBadge as _, type SortState as a, INPUT_SIZES as a$, type CountBadgeTone as a0, DashboardTemplate as a1, DataTable as a2, type DataTableColumn as a3, type DataTableColumnGroup as a4, type DataTableHeader as a5, DataTablePage as a6, type DataTableProps as a7, DatePicker as a8, type DatePickerProps as a9, EmailTemplate as aA, EmptyState as aB, type EmptyStateProps as aC, ErrorBoundary as aD, type ErrorBoundaryProps as aE, ErrorPage as aF, type ErrorPageProps as aG, FilePicker as aH, type FilePickerProps as aI, FormField as aJ, type FormFieldProps as aK, FormLayoutPage as aL, GLASS_DIVIDER as aM, GLASS_INPUT_BG as aN, GROUP_COLORS as aO, GalleryTemplate as aP, type Gap as aQ, GlobalSearch as aR, type GlobalSearchProps as aS, Grid as aT, type GridCols as aU, type GridColumn as aV, type GridProps as aW, HelpCenter as aX, type HelpCenterDoc as aY, type HelpCenterProps as aZ, INPUT_BASE as a_, DateRangePicker as aa, type DateRangePickerProps as ab, type DescriptionColumns as ac, type DescriptionItem as ad, DescriptionList as ae, type DescriptionListProps as af, Dialog as ag, type DialogProps as ah, type DialogSize as ai, Divider as aj, type DividerProps as ak, type DividerSpacing as al, DonutChart as am, type DonutChartProps as an, type DonutSegment as ao, Drawer as ap, type DrawerProps as aq, type DrawerSide as ar, type DrawerSize as as, DropdownMenu as at, type DropdownMenuAlign as au, type DropdownMenuItem as av, type DropdownMenuProps as aw, ENTER as ax, EditableGrid as ay, type EditableGridProps as az, ALT_SHIFT_D as b, Select as b$, IconButton as b0, type IconButtonProps as b1, Inline as b2, type InlineProps as b3, Input as b4, InputNumber as b5, type InputNumberProps as b6, type InputProps as b7, type InputSize as b8, type Justify as b9, NumericKeypad as bA, type NumericKeypadProps as bB, PageHeader as bC, type PageHeaderProps as bD, Pagination as bE, type PaginationProps as bF, Paragraph as bG, type ParagraphProps as bH, PopupMenu as bI, PopupMenuDivider as bJ, PopupMenuItem as bK, PopupMenuLabel as bL, Radio as bM, type RadioProps as bN, Result as bO, type ResultProps as bP, type ResultStatus as bQ, SHIFT as bR, type SearchProvider as bS, type SearchResult as bT, type SearchableOption as bU, SearchableSelect as bV, type SearchableSelectProps as bW, Segmented as bX, type SegmentedOption as bY, type SegmentedProps as bZ, type SegmentedSize as b_, Kanban as ba, type KanbanColumn as bb, type KanbanProps as bc, Label as bd, type LabelProps as be, ListFooter as bf, ListLoadError as bg, type ListLoadErrorProps as bh, LoadingSpinner as bi, type LoadingSpinnerProps as bj, MAX_FRACTION_DIGITS as bk, MOD as bl, Markdown as bm, type MarkdownProps as bn, MediaUploadField as bo, type MediaUploadFieldProps as bp, MediaUploadGrid as bq, type MediaUploadGridItem as br, type MediaUploadGridProps as bs, MetricBar as bt, type MetricBarProps as bu, type Milestone as bv, type MilestoneKind as bw, MilestoneTimeline as bx, type MilestoneTimelineProps as by, NativeSelect as bz, ALT_SHIFT_E as c, isMac as c$, type SelectOption as c0, type SelectProps as c1, type SemanticGroup as c2, type SeverityTone as c3, type ShellPrefsAdapter as c4, ShellPrefsProvider as c5, SidebarActionButton as c6, type SidebarActionButtonProps as c7, SidebarGroupLabel as c8, SidebarLayout as c9, type TextTone as cA, type TextWeight as cB, Textarea as cC, type TextareaProps as cD, type Theme as cE, TileButton as cF, type TileButtonProps as cG, type TileSize as cH, Title as cI, type TitleLevel as cJ, type TitleProps as cK, type ToastOptions as cL, type ToastPlacement as cM, Tooltip as cN, type TooltipProps as cO, TopNav as cP, type TopNavItem as cQ, type TopNavProps as cR, VERSION as cS, appendKey as cT, applyThemePrefs as cU, backspace as cV, confirm as cW, confirmDestructive as cX, formatDate as cY, glassStyle as cZ, inputClasses as c_, type SidebarLayoutProps as ca, SidebarNavItem as cb, Skeleton as cc, type SkeletonProps as cd, type SkeletonVariant as ce, Sparkline as cf, type SparklineProps as cg, Stack as ch, type StackProps as ci, StatCard as cj, type StatCardProps as ck, Statistic as cl, type StatisticProps as cm, type StatisticSize as cn, type StatisticTone as co, StatusBadge as cp, StatusBadgeProvider as cq, Switch as cr, type SwitchProps as cs, type SwitchSize as ct, type TabItem as cu, Tabs as cv, type TabsProps as cw, Text as cx, type TextProps as cy, type TextSize as cz, ALT_SHIFT_N as d, isSeverityTone as d0, mediaFileName as d1, prompt as d2, resolveTheme as d3, severityOf as d4, tabButtonId as d5, tabPanelId as d6, toISODate as d7, toast as d8, useClickOutside as d9, useConfirm as da, useFocusTrap as db, useIsMobile as dc, useLocalStoragePrefs as dd, useScrollLock as de, useShellPrefs as df, useTheme as dg, Accordion as e, type AccordionItem as f, type AccordionProps as g, type Align as h, AuthScreen as i, type AuthScreenProps as j, Avatar as k, AvatarGroup as l, type AvatarGroupProps as m, type AvatarProps as n, type AvatarSize as o, type AvatarStatus as p, type BannerEmphasis as q, type BannerProps as r, type BannerTone as s, BarChart as t, type BarChartProps as u, type BreadcrumbItem as v, Breadcrumbs as w, type BreadcrumbsProps as x, Button as y, type ButtonProps as z };
2512
+ export { type CountBadgeProps as $, ALT as A, Banner as B, type ColumnDef as C, type ButtonSize as D, type ButtonVariant as E, CMD_A as F, CMD_DOT as G, CMD_ENTER as H, CMD_K as I, CMD_S as J, Card as K, type CardPadding as L, type CardProps as M, type CellStyle as N, ChatTemplate as O, type PaginatedResponse as P, Checkbox as Q, type CheckboxProps as R, type SearchConfig as S, CheckoutTemplate as T, ColoredBadge as U, type ColoredBadgeProps as V, ConfirmProvider as W, ContainerFillChart as X, type ContainerFillChartProps as Y, type ContainerFillItem as Z, CountBadge as _, type SortState as a, type HelpCenterProps as a$, type CountBadgeTone as a0, DashboardTemplate as a1, DataTable as a2, type DataTableColumn as a3, type DataTableColumnGroup as a4, type DataTableHeader as a5, DataTablePage as a6, type DataTableProps as a7, DatePicker as a8, type DatePickerProps as a9, EditableGrid as aA, type EditableGridProps as aB, EmailTemplate as aC, EmptyState as aD, type EmptyStateProps as aE, ErrorBoundary as aF, type ErrorBoundaryProps as aG, ErrorPage as aH, type ErrorPageProps as aI, FilePicker as aJ, type FilePickerProps as aK, FormField as aL, type FormFieldProps as aM, FormLayoutPage as aN, GLASS_DIVIDER as aO, GLASS_INPUT_BG as aP, GROUP_COLORS as aQ, GalleryTemplate as aR, type Gap as aS, GlobalSearch as aT, type GlobalSearchProps as aU, Grid as aV, type GridCols as aW, type GridColumn as aX, type GridProps as aY, HelpCenter as aZ, type HelpCenterDoc as a_, DateRangePicker as aa, type DateRangePickerProps as ab, DateTimePicker as ac, type DateTimePickerProps as ad, type DescriptionColumns as ae, type DescriptionItem as af, DescriptionList as ag, type DescriptionListProps as ah, Dialog as ai, type DialogProps as aj, type DialogSize as ak, Divider as al, type DividerProps as am, type DividerSpacing as an, DonutChart as ao, type DonutChartProps as ap, type DonutSegment as aq, Drawer as ar, type DrawerProps as as, type DrawerSide as at, type DrawerSize as au, DropdownMenu as av, type DropdownMenuAlign as aw, type DropdownMenuItem as ax, type DropdownMenuProps as ay, ENTER as az, ALT_SHIFT_D as b, type SearchableSelectProps as b$, INPUT_BASE as b0, INPUT_SIZES as b1, IconButton as b2, type IconButtonProps as b3, Inline as b4, type InlineProps as b5, Input as b6, InputNumber as b7, type InputNumberProps as b8, type InputProps as b9, type Milestone as bA, type MilestoneKind as bB, MilestoneTimeline as bC, type MilestoneTimelineProps as bD, NativeSelect as bE, NumericKeypad as bF, type NumericKeypadProps as bG, PageHeader as bH, type PageHeaderProps as bI, Pagination as bJ, type PaginationProps as bK, Paragraph as bL, type ParagraphProps as bM, PopupMenu as bN, PopupMenuDivider as bO, PopupMenuItem as bP, PopupMenuLabel as bQ, Radio as bR, type RadioProps as bS, Result as bT, type ResultProps as bU, type ResultStatus as bV, SHIFT as bW, type SearchProvider as bX, type SearchResult as bY, type SearchableOption as bZ, SearchableSelect as b_, type InputSize as ba, type Justify as bb, Kanban as bc, type KanbanColumn as bd, type KanbanProps as be, Label as bf, type LabelProps as bg, LineChart as bh, type LineChartProps as bi, type LineChartSeries as bj, ListFooter as bk, ListLoadError as bl, type ListLoadErrorProps as bm, LoadingSpinner as bn, type LoadingSpinnerProps as bo, MAX_FRACTION_DIGITS as bp, MOD as bq, Markdown as br, type MarkdownProps as bs, MediaUploadField as bt, type MediaUploadFieldProps as bu, MediaUploadGrid as bv, type MediaUploadGridItem as bw, type MediaUploadGridProps as bx, MetricBar as by, type MetricBarProps as bz, ALT_SHIFT_E as c, type TooltipProps as c$, Segmented as c0, type SegmentedOption as c1, type SegmentedProps as c2, type SegmentedSize as c3, Select as c4, type SelectOption as c5, type SelectProps as c6, type SemanticGroup as c7, type SeverityTone as c8, type ShellPrefsAdapter as c9, type SwitchProps as cA, type SwitchSize as cB, type TabItem as cC, Tabs as cD, type TabsProps as cE, TagInput as cF, type TagInputOption as cG, type TagInputProps as cH, Text as cI, type TextProps as cJ, type TextSize as cK, type TextTone as cL, type TextWeight as cM, Textarea as cN, type TextareaProps as cO, type Theme as cP, TileButton as cQ, type TileButtonProps as cR, type TileSize as cS, TimePicker as cT, type TimePickerProps as cU, Title as cV, type TitleLevel as cW, type TitleProps as cX, type ToastOptions as cY, type ToastPlacement as cZ, Tooltip as c_, ShellPrefsProvider as ca, SidebarActionButton as cb, type SidebarActionButtonProps as cc, SidebarGroupLabel as cd, SidebarLayout as ce, type SidebarLayoutProps as cf, SidebarNavItem as cg, Skeleton as ch, type SkeletonProps as ci, type SkeletonVariant as cj, Sparkline as ck, type SparklineProps as cl, Stack as cm, type StackProps as cn, StatCard as co, type StatCardProps as cp, Statistic as cq, type StatisticProps as cr, type StatisticSize as cs, type StatisticTone as ct, StatusBadge as cu, StatusBadgeProvider as cv, type StepItem as cw, Stepper as cx, type StepperProps as cy, Switch as cz, ALT_SHIFT_N as d, TopNav as d0, type TopNavItem as d1, type TopNavProps as d2, VERSION as d3, appendKey as d4, applyThemePrefs as d5, backspace as d6, confirm as d7, confirmDestructive as d8, formatDate as d9, glassStyle as da, inputClasses as db, isMac as dc, isSeverityTone as dd, mediaFileName as de, prompt as df, resolveTheme as dg, severityOf as dh, tabButtonId as di, tabPanelId as dj, toISODate as dk, toast as dl, useClickOutside as dm, useConfirm as dn, useFocusTrap as dp, useIsMobile as dq, useLocalStoragePrefs as dr, useScrollLock as ds, useShellPrefs as dt, useTheme as du, Accordion as e, type AccordionItem as f, type AccordionProps as g, type Align as h, AuthScreen as i, type AuthScreenProps as j, Avatar as k, AvatarGroup as l, type AvatarGroupProps as m, type AvatarProps as n, type AvatarSize as o, type AvatarStatus as p, type BannerEmphasis as q, type BannerProps as r, type BannerTone as s, BarChart as t, type BarChartProps as u, type BreadcrumbItem as v, Breadcrumbs as w, type BreadcrumbsProps as x, Button as y, type ButtonProps as z };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { S as SearchConfig, C as ColumnDef, a as SortState, P as PaginatedResponse } from './index-BE0z2D6y.js';
2
- export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as Accordion, f as AccordionItem, g as AccordionProps, h as Align, i as AuthScreen, j as AuthScreenProps, k as Avatar, l as AvatarGroup, m as AvatarGroupProps, n as AvatarProps, o as AvatarSize, p as AvatarStatus, B as Banner, q as BannerEmphasis, r as BannerProps, s as BannerTone, t as BarChart, u as BarChartProps, v as BreadcrumbItem, w as Breadcrumbs, x as BreadcrumbsProps, y as Button, z as ButtonProps, D as ButtonSize, E as ButtonVariant, F as CMD_A, G as CMD_DOT, H as CMD_ENTER, I as CMD_K, J as CMD_S, K as Card, L as CardPadding, M as CardProps, N as CellStyle, O as ChatTemplate, Q as Checkbox, R as CheckboxProps, T as CheckoutTemplate, U as ColoredBadge, V as ColoredBadgeProps, W as ConfirmProvider, X as ContainerFillChart, Y as ContainerFillChartProps, Z as ContainerFillItem, _ as CountBadge, $ as CountBadgeProps, a0 as CountBadgeTone, a1 as DashboardTemplate, a2 as DataTable, a3 as DataTableColumn, a4 as DataTableColumnGroup, a5 as DataTableHeader, a6 as DataTablePage, a7 as DataTableProps, a8 as DatePicker, a9 as DatePickerProps, aa as DateRangePicker, ab as DateRangePickerProps, ac as DescriptionColumns, ad as DescriptionItem, ae as DescriptionList, af as DescriptionListProps, ag as Dialog, ah as DialogProps, ai as DialogSize, aj as Divider, ak as DividerProps, al as DividerSpacing, am as DonutChart, an as DonutChartProps, ao as DonutSegment, ap as Drawer, aq as DrawerProps, ar as DrawerSide, as as DrawerSize, at as DropdownMenu, au as DropdownMenuAlign, av as DropdownMenuItem, aw as DropdownMenuProps, ax as ENTER, ay as EditableGrid, az as EditableGridProps, aA as EmailTemplate, aB as EmptyState, aC as EmptyStateProps, aD as ErrorBoundary, aE as ErrorBoundaryProps, aF as ErrorPage, aG as ErrorPageProps, aH as FilePicker, aI as FilePickerProps, aJ as FormField, aK as FormFieldProps, aL as FormLayoutPage, aM as GLASS_DIVIDER, aN as GLASS_INPUT_BG, aO as GROUP_COLORS, aP as GalleryTemplate, aQ as Gap, aR as GlobalSearch, aS as GlobalSearchProps, aT as Grid, aU as GridCols, aV as GridColumn, aW as GridProps, aX as HelpCenter, aY as HelpCenterDoc, aZ as HelpCenterProps, a_ as INPUT_BASE, a$ as INPUT_SIZES, b0 as IconButton, b1 as IconButtonProps, b2 as Inline, b3 as InlineProps, b4 as Input, b5 as InputNumber, b6 as InputNumberProps, b7 as InputProps, b8 as InputSize, b9 as Justify, ba as Kanban, bb as KanbanColumn, bc as KanbanProps, bd as Label, be as LabelProps, bf as ListFooter, bg as ListLoadError, bh as ListLoadErrorProps, bi as LoadingSpinner, bj as LoadingSpinnerProps, bk as MAX_FRACTION_DIGITS, bl as MOD, bm as Markdown, bn as MarkdownProps, bo as MediaUploadField, bp as MediaUploadFieldProps, bq as MediaUploadGrid, br as MediaUploadGridItem, bs as MediaUploadGridProps, bt as MetricBar, bu as MetricBarProps, bv as Milestone, bw as MilestoneKind, bx as MilestoneTimeline, by as MilestoneTimelineProps, bz as NativeSelect, bA as NumericKeypad, bB as NumericKeypadProps, bC as PageHeader, bD as PageHeaderProps, bE as Pagination, bF as PaginationProps, bG as Paragraph, bH as ParagraphProps, bI as PopupMenu, bJ as PopupMenuDivider, bK as PopupMenuItem, bL as PopupMenuLabel, bM as Radio, bN as RadioProps, bO as Result, bP as ResultProps, bQ as ResultStatus, bR as SHIFT, bS as SearchProvider, bT as SearchResult, bU as SearchableOption, bV as SearchableSelect, bW as SearchableSelectProps, bX as Segmented, bY as SegmentedOption, bZ as SegmentedProps, b_ as SegmentedSize, b$ as Select, c0 as SelectOption, c1 as SelectProps, c2 as SemanticGroup, c3 as SeverityTone, c4 as ShellPrefsAdapter, c5 as ShellPrefsProvider, c6 as SidebarActionButton, c7 as SidebarActionButtonProps, c8 as SidebarGroupLabel, c9 as SidebarLayout, ca as SidebarLayoutProps, cb as SidebarNavItem, cc as Skeleton, cd as SkeletonProps, ce as SkeletonVariant, cf as Sparkline, cg as SparklineProps, ch as Stack, ci as StackProps, cj as StatCard, ck as StatCardProps, cl as Statistic, cm as StatisticProps, cn as StatisticSize, co as StatisticTone, cp as StatusBadge, cq as StatusBadgeProvider, cr as Switch, cs as SwitchProps, ct as SwitchSize, cu as TabItem, cv as Tabs, cw as TabsProps, cx as Text, cy as TextProps, cz as TextSize, cA as TextTone, cB as TextWeight, cC as Textarea, cD as TextareaProps, cE as Theme, cF as TileButton, cG as TileButtonProps, cH as TileSize, cI as Title, cJ as TitleLevel, cK as TitleProps, cL as ToastOptions, cM as ToastPlacement, cN as Tooltip, cO as TooltipProps, cP as TopNav, cQ as TopNavItem, cR as TopNavProps, cS as VERSION, cT as appendKey, cU as applyThemePrefs, cV as backspace, cW as confirm, cX as confirmDestructive, cY as formatDate, cZ as glassStyle, c_ as inputClasses, c$ as isMac, d0 as isSeverityTone, d1 as mediaFileName, d2 as prompt, d3 as resolveTheme, d4 as severityOf, d5 as tabButtonId, d6 as tabPanelId, d7 as toISODate, d8 as toast, d9 as useClickOutside, da as useConfirm, db as useFocusTrap, dc as useIsMobile, dd as useLocalStoragePrefs, de as useScrollLock, df as useShellPrefs, dg as useTheme } from './index-BE0z2D6y.js';
1
+ import { S as SearchConfig, C as ColumnDef, a as SortState, P as PaginatedResponse } from './index-Ka32s3Ij.js';
2
+ export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as Accordion, f as AccordionItem, g as AccordionProps, h as Align, i as AuthScreen, j as AuthScreenProps, k as Avatar, l as AvatarGroup, m as AvatarGroupProps, n as AvatarProps, o as AvatarSize, p as AvatarStatus, B as Banner, q as BannerEmphasis, r as BannerProps, s as BannerTone, t as BarChart, u as BarChartProps, v as BreadcrumbItem, w as Breadcrumbs, x as BreadcrumbsProps, y as Button, z as ButtonProps, D as ButtonSize, E as ButtonVariant, F as CMD_A, G as CMD_DOT, H as CMD_ENTER, I as CMD_K, J as CMD_S, K as Card, L as CardPadding, M as CardProps, N as CellStyle, O as ChatTemplate, Q as Checkbox, R as CheckboxProps, T as CheckoutTemplate, U as ColoredBadge, V as ColoredBadgeProps, W as ConfirmProvider, X as ContainerFillChart, Y as ContainerFillChartProps, Z as ContainerFillItem, _ as CountBadge, $ as CountBadgeProps, a0 as CountBadgeTone, a1 as DashboardTemplate, a2 as DataTable, a3 as DataTableColumn, a4 as DataTableColumnGroup, a5 as DataTableHeader, a6 as DataTablePage, a7 as DataTableProps, a8 as DatePicker, a9 as DatePickerProps, aa as DateRangePicker, ab as DateRangePickerProps, ac as DateTimePicker, ad as DateTimePickerProps, ae as DescriptionColumns, af as DescriptionItem, ag as DescriptionList, ah as DescriptionListProps, ai as Dialog, aj as DialogProps, ak as DialogSize, al as Divider, am as DividerProps, an as DividerSpacing, ao as DonutChart, ap as DonutChartProps, aq as DonutSegment, ar as Drawer, as as DrawerProps, at as DrawerSide, au as DrawerSize, av as DropdownMenu, aw as DropdownMenuAlign, ax as DropdownMenuItem, ay as DropdownMenuProps, az as ENTER, aA as EditableGrid, aB as EditableGridProps, aC as EmailTemplate, aD as EmptyState, aE as EmptyStateProps, aF as ErrorBoundary, aG as ErrorBoundaryProps, aH as ErrorPage, aI as ErrorPageProps, aJ as FilePicker, aK as FilePickerProps, aL as FormField, aM as FormFieldProps, aN as FormLayoutPage, aO as GLASS_DIVIDER, aP as GLASS_INPUT_BG, aQ as GROUP_COLORS, aR as GalleryTemplate, aS as Gap, aT as GlobalSearch, aU as GlobalSearchProps, aV as Grid, aW as GridCols, aX as GridColumn, aY as GridProps, aZ as HelpCenter, a_ as HelpCenterDoc, a$ as HelpCenterProps, b0 as INPUT_BASE, b1 as INPUT_SIZES, b2 as IconButton, b3 as IconButtonProps, b4 as Inline, b5 as InlineProps, b6 as Input, b7 as InputNumber, b8 as InputNumberProps, b9 as InputProps, ba as InputSize, bb as Justify, bc as Kanban, bd as KanbanColumn, be as KanbanProps, bf as Label, bg as LabelProps, bh as LineChart, bi as LineChartProps, bj as LineChartSeries, bk as ListFooter, bl as ListLoadError, bm as ListLoadErrorProps, bn as LoadingSpinner, bo as LoadingSpinnerProps, bp as MAX_FRACTION_DIGITS, bq as MOD, br as Markdown, bs as MarkdownProps, bt as MediaUploadField, bu as MediaUploadFieldProps, bv as MediaUploadGrid, bw as MediaUploadGridItem, bx as MediaUploadGridProps, by as MetricBar, bz as MetricBarProps, bA as Milestone, bB as MilestoneKind, bC as MilestoneTimeline, bD as MilestoneTimelineProps, bE as NativeSelect, bF as NumericKeypad, bG as NumericKeypadProps, bH as PageHeader, bI as PageHeaderProps, bJ as Pagination, bK as PaginationProps, bL as Paragraph, bM as ParagraphProps, bN as PopupMenu, bO as PopupMenuDivider, bP as PopupMenuItem, bQ as PopupMenuLabel, bR as Radio, bS as RadioProps, bT as Result, bU as ResultProps, bV as ResultStatus, bW as SHIFT, bX as SearchProvider, bY as SearchResult, bZ as SearchableOption, b_ as SearchableSelect, b$ as SearchableSelectProps, c0 as Segmented, c1 as SegmentedOption, c2 as SegmentedProps, c3 as SegmentedSize, c4 as Select, c5 as SelectOption, c6 as SelectProps, c7 as SemanticGroup, c8 as SeverityTone, c9 as ShellPrefsAdapter, ca as ShellPrefsProvider, cb as SidebarActionButton, cc as SidebarActionButtonProps, cd as SidebarGroupLabel, ce as SidebarLayout, cf as SidebarLayoutProps, cg as SidebarNavItem, ch as Skeleton, ci as SkeletonProps, cj as SkeletonVariant, ck as Sparkline, cl as SparklineProps, cm as Stack, cn as StackProps, co as StatCard, cp as StatCardProps, cq as Statistic, cr as StatisticProps, cs as StatisticSize, ct as StatisticTone, cu as StatusBadge, cv as StatusBadgeProvider, cw as StepItem, cx as Stepper, cy as StepperProps, cz as Switch, cA as SwitchProps, cB as SwitchSize, cC as TabItem, cD as Tabs, cE as TabsProps, cF as TagInput, cG as TagInputOption, cH as TagInputProps, cI as Text, cJ as TextProps, cK as TextSize, cL as TextTone, cM as TextWeight, cN as Textarea, cO as TextareaProps, cP as Theme, cQ as TileButton, cR as TileButtonProps, cS as TileSize, cT as TimePicker, cU as TimePickerProps, cV as Title, cW as TitleLevel, cX as TitleProps, cY as ToastOptions, cZ as ToastPlacement, c_ as Tooltip, c$ as TooltipProps, d0 as TopNav, d1 as TopNavItem, d2 as TopNavProps, d3 as VERSION, d4 as appendKey, d5 as applyThemePrefs, d6 as backspace, d7 as confirm, d8 as confirmDestructive, d9 as formatDate, da as glassStyle, db as inputClasses, dc as isMac, dd as isSeverityTone, de as mediaFileName, df as prompt, dg as resolveTheme, dh as severityOf, di as tabButtonId, dj as tabPanelId, dk as toISODate, dl as toast, dm as useClickOutside, dn as useConfirm, dp as useFocusTrap, dq as useIsMobile, dr as useLocalStoragePrefs, ds as useScrollLock, dt as useShellPrefs, du as useTheme } from './index-Ka32s3Ij.js';
3
3
  import { W as WindowRegistry } from './types-BHVq95fp.js';
4
4
  export { M as ModalRegistryEntry, P as PageRegistryEntry, a as WindowRegistryEntry, i as isEntityEntry, b as isPageEntry, s as setShellWindowRegistry } from './types-BHVq95fp.js';
5
5
  import * as react from 'react';
@@ -959,10 +959,12 @@ interface PerfStatsProps {
959
959
  declare function PerfStats({ onClose, onSubmit, className }: PerfStatsProps): react_jsx_runtime.JSX.Element;
960
960
 
961
961
  /**
962
- * INTERNAL stub — Desktop's About modal references the consumer-side
963
- * changelog. The package ships no built-in changelog; consumer wires their
964
- * own through the eventual `branding` prop (TODO). Default = empty array
965
- * keeps the import compiling.
962
+ * INTERNAL stub — Desktop's What's New modal references the consumer-side
963
+ * changelog. The package ships no built-in changelog; the consumer wires
964
+ * their own through `DesktopHostConfig.productChangelog` (the What's New
965
+ * dialog reads it first, and this empty default keeps the import compiling
966
+ * when they don't). Layout's `branding` prop carries the rest of the visual
967
+ * identity — name, logo, tagline.
966
968
  */
967
969
  interface ChangelogEntry {
968
970
  version: string;
@@ -1075,7 +1077,26 @@ interface MobileAppConfig {
1075
1077
  description?: string;
1076
1078
  }
1077
1079
 
1080
+ /**
1081
+ * The product's visual identity, in one object: the start-menu button, the
1082
+ * startup splash, the logout cover and the mobile landing all read from it.
1083
+ * The About dialog and What's New changelog belong to `DesktopHostConfig`
1084
+ * (`productName`, `productIcon`, `productChangelog`, …), which configures the
1085
+ * desktop; this configures the chrome around it.
1086
+ */
1087
+ interface ShellBranding {
1088
+ /** Product name — start-menu button, startup splash, mobile landing. */
1089
+ productName?: string;
1090
+ /** Logo URL — start-menu button, splash and logout covers. Defaults to `/favicon.svg`. */
1091
+ logo?: string;
1092
+ /** Line under the product name on the splash and logout covers —
1093
+ * typically the company name. */
1094
+ tagline?: string;
1095
+ }
1078
1096
  interface LayoutProps {
1097
+ /** One-object form of the brand fields below; its fields win over them, so
1098
+ * a consumer can move over field by field. */
1099
+ branding?: ShellBranding;
1079
1100
  /** Brand label rendered on the start-menu button. */
1080
1101
  productName?: string;
1081
1102
  /** Icon URL rendered next to the brand label. Defaults to `/favicon.svg`. */
@@ -1128,7 +1149,7 @@ interface ClockCalendarConfig {
1128
1149
  close: () => void;
1129
1150
  }) => ReactNode;
1130
1151
  }
1131
- declare function Layout({ productName, productIcon, wallpapers, navSections, navIcons, sectionIcons, categories, notifications, search, taskbarTrayLeft, clockCalendar, mobileApp, }?: LayoutProps): react_jsx_runtime.JSX.Element;
1152
+ declare function Layout({ branding, productName, productIcon, wallpapers, navSections, navIcons, sectionIcons, categories, notifications, search, taskbarTrayLeft, clockCalendar, mobileApp, }?: LayoutProps): react_jsx_runtime.JSX.Element;
1132
1153
 
1133
1154
  interface StartMenuProps {
1134
1155
  open: boolean;
@@ -2164,4 +2185,4 @@ interface UndoState {
2164
2185
  future: UndoStep[];
2165
2186
  }
2166
2187
 
2167
- export { type ActivityKind, type AsyncEnvironment, BLOCKED_PCT_CPU, type BatteryInfo, BehaviorPanel, type BottleneckKind, type BulkColumn, type BulkColumnKind, BulkImportGrid, type BulkImportGridProps, type BulkRow, CancelButton, ChangePasswordForm, type ChangePasswordFormProps, type ChangelogEntry, type ClockCalendarConfig, ColumnDef, CopyButton, Customization, type CustomizationOmitSection, type CustomizationProps, type CustomizationSection, DEV_BANNER_TEXT, Desktop, type DesktopContextMenuItem, type DesktopHostConfig, DesktopHostProvider, DevIndicator, DocFavStar, type DuplicateGroup, type EntityFetcher, EntityList, type EntityListColumn, type EntityListContextAction, type EntityListProps, FilterBar, type FilterOption, type FpsGroup, type HealthCheckResult, ImageAnnotator, type ImageAnnotatorHandle, type ImageAnnotatorProps, LOG_CAP, Layout, type LayoutProps, type LogSummary, MIN_EVENT_SAMPLES, MIN_GROUP_SAMPLES, type MenuLayer, type MergeBulkOptions, type MergeBulkResult, type MobileAppConfig, Modal, ModalActions, NotificationBell, type NotificationsConfig, PaginatedResponse, PdfActionButton, type PdfActionButtonProps, type PerfEnvironment, type PerfLogRecord, type PerfReading, type PerfReport, PerfStats, type PerfStatsProps, type PlatformHints, ResizableTable, SMOOTH_FPS, SearchConfig, ServerStatusIndicator, type ServerStatusIndicatorProps, type ServerStatusUser, type ShellAuth, ShellAuthProvider, ShellEntityFetcherProvider, type ShellNotification, ShortcutHelp, SortState, SoundsPanel, type StagedTarget, StartMenu, type StickyEntityRef, type StickyResolver, SystemPreferences, type SystemPreferencesProps, type SystemPreferencesSection, type TodoProvider, type TodoTask, UndoControls, type UndoControlsApi, type UndoControlsProps, UndoProvider, type UndoProviderProps, type UndoSnapshot, type UndoState, type UndoStep, type UndoableOptions, type Verdict, WidgetManager, WindowCrashedFallback, WindowErrorBoundary, WindowManagerProvider, WindowRegistry, type WindowTarget, type WindowTargetOptions, WindowTitle, appendRecord as appendPerfRecord, applyDevTitle, beginWindowGesture, classifyActivity, classify as classifyPerf, commitExposeHighlight, createWindowRegistry, createWindowTarget, describeMachine, describePerfReport, exitExposeMode, findDuplicateKeys, getActiveWindowRoute, getExposeHighlight, getWindowPosition, isDevEnv, isInteracting, markMenuOpen, mergeBulkItems, toCsv as perfLogToCsv, perfReportFile, readEnvironment as readPerfEnvironment, registerModalEscapeInterceptor, requestAsyncEnvironment, requestWindowFront, setExposeHighlight, setShellApiClient, setShellAuthBridge, setShellNavIcons, setShellTodoProvider, setWindowDefaultPosition, setWindowPosition, subscribeExposeHighlight, summariseFrames, summariseLog as summarisePerfLog, toggleExposeMode, useColumnConfig, useDesktopHost, useEditHotkey, useEnclosingModalId, useFilters, useInfiniteScroll, useIsActiveWindow, useModalActive, useModalDuplicate, useModalSave, useNewHotkey, useShellAuth, useShellEntityFetcher, useSort, useTableNav, useUndo, useUndoable, useUndoableState, useWidgetSettings, useWindowDirty, useWindowManager, useWindowMenuItem, useWindowTarget, useWindowTitle };
2188
+ export { type ActivityKind, type AsyncEnvironment, BLOCKED_PCT_CPU, type BatteryInfo, BehaviorPanel, type BottleneckKind, type BulkColumn, type BulkColumnKind, BulkImportGrid, type BulkImportGridProps, type BulkRow, CancelButton, ChangePasswordForm, type ChangePasswordFormProps, type ChangelogEntry, type ClockCalendarConfig, ColumnDef, CopyButton, Customization, type CustomizationOmitSection, type CustomizationProps, type CustomizationSection, DEV_BANNER_TEXT, Desktop, type DesktopContextMenuItem, type DesktopHostConfig, DesktopHostProvider, DevIndicator, DocFavStar, type DuplicateGroup, type EntityFetcher, EntityList, type EntityListColumn, type EntityListContextAction, type EntityListProps, FilterBar, type FilterOption, type FpsGroup, type HealthCheckResult, ImageAnnotator, type ImageAnnotatorHandle, type ImageAnnotatorProps, LOG_CAP, Layout, type LayoutProps, type LogSummary, MIN_EVENT_SAMPLES, MIN_GROUP_SAMPLES, type MenuLayer, type MergeBulkOptions, type MergeBulkResult, type MobileAppConfig, Modal, ModalActions, NotificationBell, type NotificationsConfig, PaginatedResponse, PdfActionButton, type PdfActionButtonProps, type PerfEnvironment, type PerfLogRecord, type PerfReading, type PerfReport, PerfStats, type PerfStatsProps, type PlatformHints, ResizableTable, SMOOTH_FPS, SearchConfig, ServerStatusIndicator, type ServerStatusIndicatorProps, type ServerStatusUser, type ShellAuth, ShellAuthProvider, type ShellBranding, ShellEntityFetcherProvider, type ShellNotification, ShortcutHelp, SortState, SoundsPanel, type StagedTarget, StartMenu, type StickyEntityRef, type StickyResolver, SystemPreferences, type SystemPreferencesProps, type SystemPreferencesSection, type TodoProvider, type TodoTask, UndoControls, type UndoControlsApi, type UndoControlsProps, UndoProvider, type UndoProviderProps, type UndoSnapshot, type UndoState, type UndoStep, type UndoableOptions, type Verdict, WidgetManager, WindowCrashedFallback, WindowErrorBoundary, WindowManagerProvider, WindowRegistry, type WindowTarget, type WindowTargetOptions, WindowTitle, appendRecord as appendPerfRecord, applyDevTitle, beginWindowGesture, classifyActivity, classify as classifyPerf, commitExposeHighlight, createWindowRegistry, createWindowTarget, describeMachine, describePerfReport, exitExposeMode, findDuplicateKeys, getActiveWindowRoute, getExposeHighlight, getWindowPosition, isDevEnv, isInteracting, markMenuOpen, mergeBulkItems, toCsv as perfLogToCsv, perfReportFile, readEnvironment as readPerfEnvironment, registerModalEscapeInterceptor, requestAsyncEnvironment, requestWindowFront, setExposeHighlight, setShellApiClient, setShellAuthBridge, setShellNavIcons, setShellTodoProvider, setWindowDefaultPosition, setWindowPosition, subscribeExposeHighlight, summariseFrames, summariseLog as summarisePerfLog, toggleExposeMode, useColumnConfig, useDesktopHost, useEditHotkey, useEnclosingModalId, useFilters, useInfiniteScroll, useIsActiveWindow, useModalActive, useModalDuplicate, useModalSave, useNewHotkey, useShellAuth, useShellEntityFetcher, useSort, useTableNav, useUndo, useUndoable, useUndoableState, useWidgetSettings, useWindowDirty, useWindowManager, useWindowMenuItem, useWindowTarget, useWindowTitle };