@amboss/design-system 3.48.11 → 3.49.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 (95) hide show
  1. package/build/cjs/components/AvatarGroup/AvatarGroup.d.ts +2 -2
  2. package/build/cjs/components/AvatarGroup/AvatarGroup.js +1 -1
  3. package/build/cjs/components/Internal/Panel/Panel.d.ts +36 -0
  4. package/build/cjs/components/Internal/Panel/Panel.js +1 -0
  5. package/build/cjs/components/Internal/Panel/index.d.ts +2 -0
  6. package/build/cjs/components/Internal/Panel/index.js +1 -0
  7. package/build/cjs/components/Layout/-constants.d.ts +30 -0
  8. package/build/cjs/components/Layout/-constants.js +1 -0
  9. package/build/cjs/components/Layout/-types.d.ts +171 -0
  10. package/build/cjs/components/Layout/-types.js +1 -0
  11. package/build/cjs/components/Layout/Content.d.ts +7 -0
  12. package/build/cjs/components/Layout/Content.js +1 -0
  13. package/build/cjs/components/Layout/Layout.d.ts +17 -0
  14. package/build/cjs/components/Layout/Layout.js +1 -0
  15. package/build/cjs/components/Layout/LayoutProvider.d.ts +15 -0
  16. package/build/cjs/components/Layout/LayoutProvider.js +1 -0
  17. package/build/cjs/components/Layout/LayoutVars.d.ts +18 -0
  18. package/build/cjs/components/Layout/LayoutVars.js +1 -0
  19. package/build/cjs/components/Layout/RightPanel.d.ts +9 -0
  20. package/build/cjs/components/Layout/RightPanel.js +1 -0
  21. package/build/cjs/components/Layout/Sidebar.d.ts +8 -0
  22. package/build/cjs/components/Layout/Sidebar.js +1 -0
  23. package/build/cjs/components/Layout/Split.d.ts +7 -0
  24. package/build/cjs/components/Layout/Split.js +1 -0
  25. package/build/cjs/components/Layout/context.d.ts +22 -0
  26. package/build/cjs/components/Layout/context.js +1 -0
  27. package/build/cjs/components/Layout/index.d.ts +8 -0
  28. package/build/cjs/components/Layout/index.js +1 -0
  29. package/build/cjs/components/Layout/reducer.d.ts +5 -0
  30. package/build/cjs/components/Layout/reducer.js +1 -0
  31. package/build/cjs/components/Layout/registry.d.ts +31 -0
  32. package/build/cjs/components/Layout/registry.js +1 -0
  33. package/build/cjs/components/Layout/store.d.ts +10 -0
  34. package/build/cjs/components/Layout/store.js +1 -0
  35. package/build/cjs/components/Layout/useLayout.d.ts +7 -0
  36. package/build/cjs/components/Layout/useLayout.js +1 -0
  37. package/build/cjs/components/Layout/usePanelRefs.d.ts +19 -0
  38. package/build/cjs/components/Layout/usePanelRefs.js +1 -0
  39. package/build/cjs/components/Layout/usePortalContainerRefs.d.ts +20 -0
  40. package/build/cjs/components/Layout/usePortalContainerRefs.js +1 -0
  41. package/build/cjs/components/Layout/varStore.d.ts +17 -0
  42. package/build/cjs/components/Layout/varStore.js +1 -0
  43. package/build/cjs/components/NavBar/NavBarSubMenuContainer.js +1 -1
  44. package/build/cjs/components/NavBar/constants.d.ts +1 -0
  45. package/build/cjs/components/NavBar/constants.js +1 -1
  46. package/build/cjs/index.d.ts +1 -0
  47. package/build/cjs/index.js +1 -1
  48. package/build/esm/components/AvatarGroup/AvatarGroup.d.ts +2 -2
  49. package/build/esm/components/AvatarGroup/AvatarGroup.js +1 -1
  50. package/build/esm/components/Internal/Panel/Panel.d.ts +36 -0
  51. package/build/esm/components/Internal/Panel/Panel.js +1 -0
  52. package/build/esm/components/Internal/Panel/index.d.ts +2 -0
  53. package/build/esm/components/Internal/Panel/index.js +1 -0
  54. package/build/esm/components/Layout/-constants.d.ts +30 -0
  55. package/build/esm/components/Layout/-constants.js +1 -0
  56. package/build/esm/components/Layout/-types.d.ts +171 -0
  57. package/build/esm/components/Layout/-types.js +1 -0
  58. package/build/esm/components/Layout/Content.d.ts +7 -0
  59. package/build/esm/components/Layout/Content.js +1 -0
  60. package/build/esm/components/Layout/Layout.d.ts +17 -0
  61. package/build/esm/components/Layout/Layout.js +1 -0
  62. package/build/esm/components/Layout/LayoutProvider.d.ts +15 -0
  63. package/build/esm/components/Layout/LayoutProvider.js +1 -0
  64. package/build/esm/components/Layout/LayoutVars.d.ts +18 -0
  65. package/build/esm/components/Layout/LayoutVars.js +1 -0
  66. package/build/esm/components/Layout/RightPanel.d.ts +9 -0
  67. package/build/esm/components/Layout/RightPanel.js +1 -0
  68. package/build/esm/components/Layout/Sidebar.d.ts +8 -0
  69. package/build/esm/components/Layout/Sidebar.js +1 -0
  70. package/build/esm/components/Layout/Split.d.ts +7 -0
  71. package/build/esm/components/Layout/Split.js +1 -0
  72. package/build/esm/components/Layout/context.d.ts +22 -0
  73. package/build/esm/components/Layout/context.js +1 -0
  74. package/build/esm/components/Layout/index.d.ts +8 -0
  75. package/build/esm/components/Layout/index.js +1 -0
  76. package/build/esm/components/Layout/reducer.d.ts +5 -0
  77. package/build/esm/components/Layout/reducer.js +1 -0
  78. package/build/esm/components/Layout/registry.d.ts +31 -0
  79. package/build/esm/components/Layout/registry.js +1 -0
  80. package/build/esm/components/Layout/store.d.ts +10 -0
  81. package/build/esm/components/Layout/store.js +1 -0
  82. package/build/esm/components/Layout/useLayout.d.ts +7 -0
  83. package/build/esm/components/Layout/useLayout.js +1 -0
  84. package/build/esm/components/Layout/usePanelRefs.d.ts +19 -0
  85. package/build/esm/components/Layout/usePanelRefs.js +1 -0
  86. package/build/esm/components/Layout/usePortalContainerRefs.d.ts +20 -0
  87. package/build/esm/components/Layout/usePortalContainerRefs.js +1 -0
  88. package/build/esm/components/Layout/varStore.d.ts +17 -0
  89. package/build/esm/components/Layout/varStore.js +1 -0
  90. package/build/esm/components/NavBar/NavBarSubMenuContainer.js +1 -1
  91. package/build/esm/components/NavBar/constants.d.ts +1 -0
  92. package/build/esm/components/NavBar/constants.js +1 -1
  93. package/build/esm/index.d.ts +1 -0
  94. package/build/esm/index.js +1 -1
  95. package/package.json +2 -1
@@ -0,0 +1,10 @@
1
+ import type { LayoutState, LayoutStore } from "./-types";
2
+ /**
3
+ * Default, dependency-free `LayoutStore` implementation: a tiny pub/sub wrapper
4
+ * around the pure `layoutReducer`. Skips notifying subscribers when an action is
5
+ * a no-op (reducer returns the same reference).
6
+ *
7
+ * Swap this for a zustand/redux-backed store by implementing the same
8
+ * `LayoutStore` interface — bindings and primitives are unaffected.
9
+ */
10
+ export declare function createLayoutStore(initial: LayoutState): LayoutStore;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"createLayoutStore",{enumerable:!0,get:function(){return createLayoutStore}});const _reducer=require("./reducer");function createLayoutStore(initial){let state=initial,listeners=new Set;return{getState:()=>state,dispatch:action=>{let next=(0,_reducer.layoutReducer)(state,action,initial);next!==state&&(state=next,listeners.forEach(listener=>listener()))},subscribe:listener=>(listeners.add(listener),()=>{listeners.delete(listener)})}}
@@ -0,0 +1,7 @@
1
+ import type { LayoutValue } from "./-types";
2
+ /**
3
+ * The single control hook. Returns `state` plus a typed handle per slot. Works
4
+ * from any descendant of `<LayoutProvider>` — remote control without prop
5
+ * drilling.
6
+ */
7
+ export declare function useLayout(): LayoutValue;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"useLayout",{enumerable:!0,get:function(){return useLayout}});const _context=require("./context"),selectAll=state=>state;function sidePanelHandle(panel,state,dispatch){let slot=state[panel];return{state:slot,isVisible:slot.visible,show:()=>dispatch({type:"setVisible",slot:panel,visible:!0}),hide:()=>dispatch({type:"setVisible",slot:panel,visible:!1}),resize:size=>dispatch({type:"resize",slot:panel,size}),setVariant:variant=>dispatch({type:"setVariant",panel,variant}),reset:()=>dispatch({type:"reset",slot:panel})}}function panelHandle(panel,state,dispatch){let slot=state[panel];return{state:slot,isVisible:slot.visible,show:()=>dispatch({type:"setVisible",slot:panel,visible:!0}),hide:()=>dispatch({type:"setVisible",slot:panel,visible:!1}),resize:size=>dispatch({type:"resize",slot:panel,size}),reset:()=>dispatch({type:"reset",slot:panel})}}function useLayout(){let store=(0,_context.useLayoutStore)(),state=(0,_context.useLayoutSelector)(selectAll),{dispatch}=store;return{state,sidebar:sidePanelHandle("sidebar",state,dispatch),rightPanel:sidePanelHandle("rightPanel",state,dispatch),content:panelHandle("content",state,dispatch),splitview:panelHandle("splitview",state,dispatch)}}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Track a set of DOM elements by key, with stable per-key ref callbacks.
3
+ *
4
+ * Given a fixed list of keys, returns `[elements, refs]`:
5
+ * - `refs[key]` — a ref callback to attach to an element; captures it into
6
+ * `elements[key]` (and clears it to `null` on unmount).
7
+ * - `elements[key]` — the currently-attached element (undefined until set).
8
+ *
9
+ * The callbacks are **stable** across renders, so React invokes them only on
10
+ * mount/unmount — not detach/attach every render. (An inline `ref={el => …}`
11
+ * that calls setState would get a new identity each render and loop.)
12
+ *
13
+ * Agnostic utility — useful whenever something needs the live DOM node of a
14
+ * child: portal targets, measurement, focus management, etc.
15
+ */
16
+ export declare function usePanelRefs<K extends string>(keys: readonly K[]): [
17
+ Partial<Record<K, HTMLElement | null>>,
18
+ Record<K, (el: HTMLElement | null) => void>
19
+ ];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"usePanelRefs",{enumerable:!0,get:function(){return usePanelRefs}});const _react=require("react");function usePanelRefs(keys){let[elements,setElements]=(0,_react.useState)({});return[elements,(0,_react.useMemo)(()=>{let map={};return keys.forEach(key=>{map[key]=el=>setElements(prev=>prev[key]===el?prev:{...prev,[key]:el})}),map},[keys])]}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Track portal-container DOM elements by key, with stable per-key ref callbacks.
3
+ * Used by `Layout` to capture each panel's host `<div>` (the `createPortal`
4
+ * container) so markers can portal their content into it.
5
+ *
6
+ * Given a fixed list of keys, returns `[elements, refs]`:
7
+ * - `refs[key]` — a ref callback to attach to an element; captures it into
8
+ * `elements[key]` (and clears it to `null` on unmount).
9
+ * - `elements[key]` — the currently-attached element (undefined until set).
10
+ *
11
+ * The callbacks are **stable** across renders, so React invokes them only on
12
+ * mount/unmount — not detach/attach every render. (An inline `ref={el => …}`
13
+ * that calls setState would get a new identity each render and loop.)
14
+ *
15
+ * Generic over the key type, so it works for any fixed key set.
16
+ */
17
+ export declare function usePortalContainerRefs<K extends string>(keys: readonly K[]): [
18
+ Partial<Record<K, HTMLElement | null>>,
19
+ Record<K, (el: HTMLElement | null) => void>
20
+ ];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"usePortalContainerRefs",{enumerable:!0,get:function(){return usePortalContainerRefs}});const _react=require("react");function usePortalContainerRefs(keys){let[elements,setElements]=(0,_react.useState)({});return[elements,(0,_react.useMemo)(()=>{let map={};return keys.forEach(key=>{map[key]=el=>setElements(prev=>prev[key]===el?prev:{...prev,[key]:el})}),map},[keys])]}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Tiny pub/sub registry for the layout's CSS custom properties. Producers
3
+ * publish a value by name (the component that owns the *why* — e.g. the NavBar
4
+ * subnav publishing its offset); a single sink (`<LayoutVars>`) subscribes and
5
+ * renders them all in ONE place. Mirrors the `LayoutStore` shape so it reads
6
+ * via the same `useSyncExternalStore` pattern.
7
+ *
8
+ * One name = one producer. The registry is keyed by name, so a second writer to
9
+ * the same name last-wins; don't share a name across unrelated producers.
10
+ */
11
+ export type LayoutVarStore = {
12
+ getSnapshot: () => Record<string, string>;
13
+ set: (name: string, value: string) => void;
14
+ remove: (name: string) => void;
15
+ subscribe: (listener: () => void) => () => void;
16
+ };
17
+ export declare function createLayoutVarStore(): LayoutVarStore;
@@ -0,0 +1 @@
1
+ "use strict";function createLayoutVarStore(){let vars={},listeners=new Set,notify=()=>listeners.forEach(listener=>listener());return{getSnapshot:()=>vars,set:(name,value)=>{vars[name]!==value&&(vars={...vars,[name]:value},notify())},remove:name=>{if(!(name in vars))return;let next={...vars};delete next[name],vars=next,notify()},subscribe:listener=>(listeners.add(listener),()=>{listeners.delete(listener)})}}Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"createLayoutVarStore",{enumerable:!0,get:function(){return createLayoutVarStore}});
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get NavBarSubMenuContainer(){return NavBarSubMenuContainer},get StyledBorderContainer(){return StyledBorderContainer},get subThemeMapping(){return subThemeMapping}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/_interop_require_default._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_SubThemeProvider=require("../SubThemeProvider/SubThemeProvider"),_NavBarSlideDown=require("./NavBarSlideDown"),_NavBarContext=require("./NavBarContext"),StyledBorderContainer=(0,_styled.default)("div",{target:"efbzz6a0",label:"StyledBorderContainer"})(({theme})=>({borderBottom:`1px solid ${theme.values.color.border.secondary.default}`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvTmF2QmFyL05hdkJhclN1Yk1lbnVDb250YWluZXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9OYXZCYXIvTmF2QmFyU3ViTWVudUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBTdWJUaGVtZVByb3ZpZGVyLFxuICB0eXBlIFN1YlRoZW1lUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHR5cGUgeyBOYXZCYXJOYW1lIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IE5hdkJhclNsaWRlRG93biB9IGZyb20gXCIuL05hdkJhclNsaWRlRG93blwiO1xuaW1wb3J0IHsgdXNlTmF2QmFyQ29udGV4dCB9IGZyb20gXCIuL05hdkJhckNvbnRleHRcIjtcblxudHlwZSBOYXZCYXJTdWJNZW51Q29udGFpbmVyUHJvcHMgPSB7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcblxuY29uc3QgQ09OVEFJTkVSX0JPUkRFUl9XSURUSCA9IDE7XG5leHBvcnQgY29uc3QgU3R5bGVkQm9yZGVyQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBib3JkZXJCb3R0b206IGAke0NPTlRBSU5FUl9CT1JERVJfV0lEVEh9cHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuYm9yZGVyLnNlY29uZGFyeS5kZWZhdWx0fWAsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFN1Yk1lbnVDb250YWluZXIgPSBzdHlsZWQoU3R5bGVkQm9yZGVyQ29udGFpbmVyKSgoeyB0aGVtZSB9KSA9PiAoe1xuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmFjY2VudFN1YnRsZS5kZWZhdWx0LFxuICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb25bMV0sXG4gIFwiJiA+IGRpdlwiOiB7XG4gICAgbWFyZ2luQm90dG9tOiAtQ09OVEFJTkVSX0JPUkRFUl9XSURUSCwgLy8gVGFicyBib3JkZXIgc2hvdWxkIGJlIGFib3ZlIG9mIFN0eWxlZEJvcmRlckNvbnRhaW5lclxuICB9LFxufSkpO1xuXG5leHBvcnQgY29uc3Qgc3ViVGhlbWVNYXBwaW5nOiBSZWNvcmQ8XG4gIE5hdkJhck5hbWUsXG4gIFN1YlRoZW1lUHJvdmlkZXJQcm9wc1tcIm5hbWVcIl1cbj4gPSB7XG4gIGxlYXJuaW5nOiBcImJyYW5kU3VidGxlXCIsXG4gIGNsaW5pY2FsQ2FyZTogXCJ1bnNldFwiLFxuICB0ZWFjaGluZzogXCJkaW1tZWRTdWJ0bGVcIixcbiAgdW5zZXQ6IFwidW5zZXRcIixcbn07XG5cbmV4cG9ydCBjb25zdCBOYXZCYXJTdWJNZW51Q29udGFpbmVyID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgSFRNTERpdkVsZW1lbnQsXG4gIE5hdkJhclN1Yk1lbnVDb250YWluZXJQcm9wc1xuPigoeyBjaGlsZHJlbiwgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQgfSwgcmVmKSA9PiB7XG4gIGNvbnN0IHsgc3ViVGhlbWUsIGlzQ29tcGFjdCB9ID0gdXNlTmF2QmFyQ29udGV4dCgpO1xuXG4gIHJldHVybiAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT17c3ViVGhlbWVNYXBwaW5nW3N1YlRoZW1lXX0+XG4gICAgICA8TmF2QmFyU2xpZGVEb3duIGlzVmlzaWJsZT17IWlzQ29tcGFjdH0gcG9zaXRpb249XCJib3R0b21cIj5cbiAgICAgICAgPFN0eWxlZFN1Yk1lbnVDb250YWluZXIgcmVmPXtyZWZ9IGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9PlxuICAgICAgICAgIDxkaXY+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgICA8L1N0eWxlZFN1Yk1lbnVDb250YWluZXI+XG4gICAgICA8L05hdkJhclNsaWRlRG93bj5cbiAgICA8L1N1YlRoZW1lUHJvdmlkZXI+XG4gICk7XG59KTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQnFDIn0= */"),StyledSubMenuContainer=(0,_styled.default)(StyledBorderContainer,{target:"efbzz6a1",label:"StyledSubMenuContainer"})(({theme})=>({backgroundColor:theme.values.color.background.accentSubtle.default,boxShadow:theme.values.elevation[1],"& > div":{marginBottom:-1}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvTmF2QmFyL05hdkJhclN1Yk1lbnVDb250YWluZXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9OYXZCYXIvTmF2QmFyU3ViTWVudUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBTdWJUaGVtZVByb3ZpZGVyLFxuICB0eXBlIFN1YlRoZW1lUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHR5cGUgeyBOYXZCYXJOYW1lIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IE5hdkJhclNsaWRlRG93biB9IGZyb20gXCIuL05hdkJhclNsaWRlRG93blwiO1xuaW1wb3J0IHsgdXNlTmF2QmFyQ29udGV4dCB9IGZyb20gXCIuL05hdkJhckNvbnRleHRcIjtcblxudHlwZSBOYXZCYXJTdWJNZW51Q29udGFpbmVyUHJvcHMgPSB7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcblxuY29uc3QgQ09OVEFJTkVSX0JPUkRFUl9XSURUSCA9IDE7XG5leHBvcnQgY29uc3QgU3R5bGVkQm9yZGVyQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBib3JkZXJCb3R0b206IGAke0NPTlRBSU5FUl9CT1JERVJfV0lEVEh9cHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuYm9yZGVyLnNlY29uZGFyeS5kZWZhdWx0fWAsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFN1Yk1lbnVDb250YWluZXIgPSBzdHlsZWQoU3R5bGVkQm9yZGVyQ29udGFpbmVyKSgoeyB0aGVtZSB9KSA9PiAoe1xuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmFjY2VudFN1YnRsZS5kZWZhdWx0LFxuICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb25bMV0sXG4gIFwiJiA+IGRpdlwiOiB7XG4gICAgbWFyZ2luQm90dG9tOiAtQ09OVEFJTkVSX0JPUkRFUl9XSURUSCwgLy8gVGFicyBib3JkZXIgc2hvdWxkIGJlIGFib3ZlIG9mIFN0eWxlZEJvcmRlckNvbnRhaW5lclxuICB9LFxufSkpO1xuXG5leHBvcnQgY29uc3Qgc3ViVGhlbWVNYXBwaW5nOiBSZWNvcmQ8XG4gIE5hdkJhck5hbWUsXG4gIFN1YlRoZW1lUHJvdmlkZXJQcm9wc1tcIm5hbWVcIl1cbj4gPSB7XG4gIGxlYXJuaW5nOiBcImJyYW5kU3VidGxlXCIsXG4gIGNsaW5pY2FsQ2FyZTogXCJ1bnNldFwiLFxuICB0ZWFjaGluZzogXCJkaW1tZWRTdWJ0bGVcIixcbiAgdW5zZXQ6IFwidW5zZXRcIixcbn07XG5cbmV4cG9ydCBjb25zdCBOYXZCYXJTdWJNZW51Q29udGFpbmVyID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgSFRNTERpdkVsZW1lbnQsXG4gIE5hdkJhclN1Yk1lbnVDb250YWluZXJQcm9wc1xuPigoeyBjaGlsZHJlbiwgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQgfSwgcmVmKSA9PiB7XG4gIGNvbnN0IHsgc3ViVGhlbWUsIGlzQ29tcGFjdCB9ID0gdXNlTmF2QmFyQ29udGV4dCgpO1xuXG4gIHJldHVybiAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT17c3ViVGhlbWVNYXBwaW5nW3N1YlRoZW1lXX0+XG4gICAgICA8TmF2QmFyU2xpZGVEb3duIGlzVmlzaWJsZT17IWlzQ29tcGFjdH0gcG9zaXRpb249XCJib3R0b21cIj5cbiAgICAgICAgPFN0eWxlZFN1Yk1lbnVDb250YWluZXIgcmVmPXtyZWZ9IGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9PlxuICAgICAgICAgIDxkaXY+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgICA8L1N0eWxlZFN1Yk1lbnVDb250YWluZXI+XG4gICAgICA8L05hdkJhclNsaWRlRG93bj5cbiAgICA8L1N1YlRoZW1lUHJvdmlkZXI+XG4gICk7XG59KTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQitCIn0= */"),subThemeMapping={learning:"brandSubtle",clinicalCare:"unset",teaching:"dimmedSubtle",unset:"unset"},NavBarSubMenuContainer=_react.default.forwardRef(({children,"data-e2e-test-id":dataE2eTestId},ref)=>{let{subTheme,isCompact}=(0,_NavBarContext.useNavBarContext)();return _react.default.createElement(_SubThemeProvider.SubThemeProvider,{name:subThemeMapping[subTheme]},_react.default.createElement(_NavBarSlideDown.NavBarSlideDown,{isVisible:!isCompact,position:"bottom"},_react.default.createElement(StyledSubMenuContainer,{ref:ref,"data-e2e-test-id":dataE2eTestId},_react.default.createElement("div",null,children))))});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get NavBarSubMenuContainer(){return NavBarSubMenuContainer},get StyledBorderContainer(){return StyledBorderContainer},get subThemeMapping(){return subThemeMapping}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/_interop_require_default._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_SubThemeProvider=require("../SubThemeProvider/SubThemeProvider"),_constants=require("../Layout/-constants"),_LayoutVars=require("../Layout/LayoutVars"),_constants1=require("./constants"),_NavBarSlideDown=require("./NavBarSlideDown"),_NavBarContext=require("./NavBarContext"),StyledBorderContainer=(0,_styled.default)("div",{target:"e1o502qf0",label:"StyledBorderContainer"})(({theme})=>({borderBottom:`1px solid ${theme.values.color.border.secondary.default}`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvTmF2QmFyL05hdkJhclN1Yk1lbnVDb250YWluZXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9OYXZCYXIvTmF2QmFyU3ViTWVudUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBTdWJUaGVtZVByb3ZpZGVyLFxuICB0eXBlIFN1YlRoZW1lUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuLy8gSW1wb3J0IHRoZSB2YXIgbmFtZSArIHB1Ymxpc2hlciBkaXJlY3RseSBmcm9tIExheW91dCdzIGZpbGVzIChub3QgaXRzIGJhcnJlbClcbi8vIHRvIGtlZXAgdGhlIGNvdXBsaW5nIG1pbmltYWwgYW5kIGF2b2lkIHB1bGxpbmcgaW4gdGhlIExheW91dCBtb2R1bGUgZ3JhcGguXG5pbXBvcnQgeyBTVUJOQVZfT0ZGU0VUX1ZBUiB9IGZyb20gXCIuLi9MYXlvdXQvLWNvbnN0YW50c1wiO1xuaW1wb3J0IHsgdXNlTGF5b3V0VmFyIH0gZnJvbSBcIi4uL0xheW91dC9MYXlvdXRWYXJzXCI7XG5pbXBvcnQgdHlwZSB7IE5hdkJhck5hbWUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgU1VCTkFWX0hFSUdIVCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTmF2QmFyU2xpZGVEb3duIH0gZnJvbSBcIi4vTmF2QmFyU2xpZGVEb3duXCI7XG5pbXBvcnQgeyB1c2VOYXZCYXJDb250ZXh0IH0gZnJvbSBcIi4vTmF2QmFyQ29udGV4dFwiO1xuXG50eXBlIE5hdkJhclN1Yk1lbnVDb250YWluZXJQcm9wcyA9IHtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG59O1xuXG5jb25zdCBDT05UQUlORVJfQk9SREVSX1dJRFRIID0gMTtcbmV4cG9ydCBjb25zdCBTdHlsZWRCb3JkZXJDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIGJvcmRlckJvdHRvbTogYCR7Q09OVEFJTkVSX0JPUkRFUl9XSURUSH1weCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5ib3JkZXIuc2Vjb25kYXJ5LmRlZmF1bHR9YCxcbn0pKTtcblxuY29uc3QgU3R5bGVkU3ViTWVudUNvbnRhaW5lciA9IHN0eWxlZChTdHlsZWRCb3JkZXJDb250YWluZXIpKCh7IHRoZW1lIH0pID0+ICh7XG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYWNjZW50U3VidGxlLmRlZmF1bHQsXG4gIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvblsxXSxcbiAgXCImID4gZGl2XCI6IHtcbiAgICBtYXJnaW5Cb3R0b206IC1DT05UQUlORVJfQk9SREVSX1dJRFRILCAvLyBUYWJzIGJvcmRlciBzaG91bGQgYmUgYWJvdmUgb2YgU3R5bGVkQm9yZGVyQ29udGFpbmVyXG4gIH0sXG59KSk7XG5cbmV4cG9ydCBjb25zdCBzdWJUaGVtZU1hcHBpbmc6IFJlY29yZDxcbiAgTmF2QmFyTmFtZSxcbiAgU3ViVGhlbWVQcm92aWRlclByb3BzW1wibmFtZVwiXVxuPiA9IHtcbiAgbGVhcm5pbmc6IFwiYnJhbmRTdWJ0bGVcIixcbiAgY2xpbmljYWxDYXJlOiBcInVuc2V0XCIsXG4gIHRlYWNoaW5nOiBcImRpbW1lZFN1YnRsZVwiLFxuICB1bnNldDogXCJ1bnNldFwiLFxufTtcblxuZXhwb3J0IGNvbnN0IE5hdkJhclN1Yk1lbnVDb250YWluZXIgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBIVE1MRGl2RWxlbWVudCxcbiAgTmF2QmFyU3ViTWVudUNvbnRhaW5lclByb3BzXG4+KCh7IGNoaWxkcmVuLCBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCB9LCByZWYpID0+IHtcbiAgY29uc3QgeyBzdWJUaGVtZSwgaXNDb21wYWN0IH0gPSB1c2VOYXZCYXJDb250ZXh0KCk7XG4gIC8vIFRoZSBzdWJuYXYgb3ducyB0aGUgKndoeSo6IGl0cyBvZmZzZXQgaXMgaXRzIGhlaWdodCB3aGVuIGV4cGFuZGVkLCAwIHdoZW5cbiAgLy8gY29tcGFjdC4gSXQgcHVibGlzaGVzIGludG8gdGhlIGxheW91dCB2YXIgcmVnaXN0cnk7IHRoZSBzaW5nbGUgTGF5b3V0VmFyc1xuICAvLyBzaW5rIHJlbmRlcnMgaXQsIGFuZCBzbG90cyBsaWtlIExheW91dC5SaWdodFBhbmVsIHJlYWQgaXQuIFRoZSB2YXIgb25seVxuICAvLyBleGlzdHMgd2hpbGUgYSBzdWJuYXYgaXMgbW91bnRlZCAoYW5kIGEgTGF5b3V0LlByb3ZpZGVyIGlzIHByZXNlbnQpIOKAlCBzbG90c1xuICAvLyBkZWZhdWx0IHRvIDAgb3RoZXJ3aXNlLCBzbyBhIE5hdkJhciB3aXRoIG5vIHN1Ym5hdiBuZWVkcyBubyBvZmZzZXQuXG4gIHVzZUxheW91dFZhcihTVUJOQVZfT0ZGU0VUX1ZBUiwgaXNDb21wYWN0ID8gXCIwcHhcIiA6IFNVQk5BVl9IRUlHSFQpO1xuXG4gIHJldHVybiAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT17c3ViVGhlbWVNYXBwaW5nW3N1YlRoZW1lXX0+XG4gICAgICA8TmF2QmFyU2xpZGVEb3duIGlzVmlzaWJsZT17IWlzQ29tcGFjdH0gcG9zaXRpb249XCJib3R0b21cIj5cbiAgICAgICAgPFN0eWxlZFN1Yk1lbnVDb250YWluZXIgcmVmPXtyZWZ9IGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9PlxuICAgICAgICAgIDxkaXY+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgICA8L1N0eWxlZFN1Yk1lbnVDb250YWluZXI+XG4gICAgICA8L05hdkJhclNsaWRlRG93bj5cbiAgICA8L1N1YlRoZW1lUHJvdmlkZXI+XG4gICk7XG59KTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQnFDIn0= */"),StyledSubMenuContainer=(0,_styled.default)(StyledBorderContainer,{target:"e1o502qf1",label:"StyledSubMenuContainer"})(({theme})=>({backgroundColor:theme.values.color.background.accentSubtle.default,boxShadow:theme.values.elevation[1],"& > div":{marginBottom:-1}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvTmF2QmFyL05hdkJhclN1Yk1lbnVDb250YWluZXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9OYXZCYXIvTmF2QmFyU3ViTWVudUNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBTdWJUaGVtZVByb3ZpZGVyLFxuICB0eXBlIFN1YlRoZW1lUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuLy8gSW1wb3J0IHRoZSB2YXIgbmFtZSArIHB1Ymxpc2hlciBkaXJlY3RseSBmcm9tIExheW91dCdzIGZpbGVzIChub3QgaXRzIGJhcnJlbClcbi8vIHRvIGtlZXAgdGhlIGNvdXBsaW5nIG1pbmltYWwgYW5kIGF2b2lkIHB1bGxpbmcgaW4gdGhlIExheW91dCBtb2R1bGUgZ3JhcGguXG5pbXBvcnQgeyBTVUJOQVZfT0ZGU0VUX1ZBUiB9IGZyb20gXCIuLi9MYXlvdXQvLWNvbnN0YW50c1wiO1xuaW1wb3J0IHsgdXNlTGF5b3V0VmFyIH0gZnJvbSBcIi4uL0xheW91dC9MYXlvdXRWYXJzXCI7XG5pbXBvcnQgdHlwZSB7IE5hdkJhck5hbWUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgU1VCTkFWX0hFSUdIVCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTmF2QmFyU2xpZGVEb3duIH0gZnJvbSBcIi4vTmF2QmFyU2xpZGVEb3duXCI7XG5pbXBvcnQgeyB1c2VOYXZCYXJDb250ZXh0IH0gZnJvbSBcIi4vTmF2QmFyQ29udGV4dFwiO1xuXG50eXBlIE5hdkJhclN1Yk1lbnVDb250YWluZXJQcm9wcyA9IHtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG59O1xuXG5jb25zdCBDT05UQUlORVJfQk9SREVSX1dJRFRIID0gMTtcbmV4cG9ydCBjb25zdCBTdHlsZWRCb3JkZXJDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIGJvcmRlckJvdHRvbTogYCR7Q09OVEFJTkVSX0JPUkRFUl9XSURUSH1weCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5ib3JkZXIuc2Vjb25kYXJ5LmRlZmF1bHR9YCxcbn0pKTtcblxuY29uc3QgU3R5bGVkU3ViTWVudUNvbnRhaW5lciA9IHN0eWxlZChTdHlsZWRCb3JkZXJDb250YWluZXIpKCh7IHRoZW1lIH0pID0+ICh7XG4gIGJhY2tncm91bmRDb2xvcjogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYWNjZW50U3VidGxlLmRlZmF1bHQsXG4gIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvblsxXSxcbiAgXCImID4gZGl2XCI6IHtcbiAgICBtYXJnaW5Cb3R0b206IC1DT05UQUlORVJfQk9SREVSX1dJRFRILCAvLyBUYWJzIGJvcmRlciBzaG91bGQgYmUgYWJvdmUgb2YgU3R5bGVkQm9yZGVyQ29udGFpbmVyXG4gIH0sXG59KSk7XG5cbmV4cG9ydCBjb25zdCBzdWJUaGVtZU1hcHBpbmc6IFJlY29yZDxcbiAgTmF2QmFyTmFtZSxcbiAgU3ViVGhlbWVQcm92aWRlclByb3BzW1wibmFtZVwiXVxuPiA9IHtcbiAgbGVhcm5pbmc6IFwiYnJhbmRTdWJ0bGVcIixcbiAgY2xpbmljYWxDYXJlOiBcInVuc2V0XCIsXG4gIHRlYWNoaW5nOiBcImRpbW1lZFN1YnRsZVwiLFxuICB1bnNldDogXCJ1bnNldFwiLFxufTtcblxuZXhwb3J0IGNvbnN0IE5hdkJhclN1Yk1lbnVDb250YWluZXIgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBIVE1MRGl2RWxlbWVudCxcbiAgTmF2QmFyU3ViTWVudUNvbnRhaW5lclByb3BzXG4+KCh7IGNoaWxkcmVuLCBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCB9LCByZWYpID0+IHtcbiAgY29uc3QgeyBzdWJUaGVtZSwgaXNDb21wYWN0IH0gPSB1c2VOYXZCYXJDb250ZXh0KCk7XG4gIC8vIFRoZSBzdWJuYXYgb3ducyB0aGUgKndoeSo6IGl0cyBvZmZzZXQgaXMgaXRzIGhlaWdodCB3aGVuIGV4cGFuZGVkLCAwIHdoZW5cbiAgLy8gY29tcGFjdC4gSXQgcHVibGlzaGVzIGludG8gdGhlIGxheW91dCB2YXIgcmVnaXN0cnk7IHRoZSBzaW5nbGUgTGF5b3V0VmFyc1xuICAvLyBzaW5rIHJlbmRlcnMgaXQsIGFuZCBzbG90cyBsaWtlIExheW91dC5SaWdodFBhbmVsIHJlYWQgaXQuIFRoZSB2YXIgb25seVxuICAvLyBleGlzdHMgd2hpbGUgYSBzdWJuYXYgaXMgbW91bnRlZCAoYW5kIGEgTGF5b3V0LlByb3ZpZGVyIGlzIHByZXNlbnQpIOKAlCBzbG90c1xuICAvLyBkZWZhdWx0IHRvIDAgb3RoZXJ3aXNlLCBzbyBhIE5hdkJhciB3aXRoIG5vIHN1Ym5hdiBuZWVkcyBubyBvZmZzZXQuXG4gIHVzZUxheW91dFZhcihTVUJOQVZfT0ZGU0VUX1ZBUiwgaXNDb21wYWN0ID8gXCIwcHhcIiA6IFNVQk5BVl9IRUlHSFQpO1xuXG4gIHJldHVybiAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT17c3ViVGhlbWVNYXBwaW5nW3N1YlRoZW1lXX0+XG4gICAgICA8TmF2QmFyU2xpZGVEb3duIGlzVmlzaWJsZT17IWlzQ29tcGFjdH0gcG9zaXRpb249XCJib3R0b21cIj5cbiAgICAgICAgPFN0eWxlZFN1Yk1lbnVDb250YWluZXIgcmVmPXtyZWZ9IGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9PlxuICAgICAgICAgIDxkaXY+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgICA8L1N0eWxlZFN1Yk1lbnVDb250YWluZXI+XG4gICAgICA8L05hdkJhclNsaWRlRG93bj5cbiAgICA8L1N1YlRoZW1lUHJvdmlkZXI+XG4gICk7XG59KTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QitCIn0= */"),subThemeMapping={learning:"brandSubtle",clinicalCare:"unset",teaching:"dimmedSubtle",unset:"unset"},NavBarSubMenuContainer=_react.default.forwardRef(({children,"data-e2e-test-id":dataE2eTestId},ref)=>{let{subTheme,isCompact}=(0,_NavBarContext.useNavBarContext)();return(0,_LayoutVars.useLayoutVar)(_constants.SUBNAV_OFFSET_VAR,isCompact?"0px":_constants1.SUBNAV_HEIGHT),_react.default.createElement(_SubThemeProvider.SubThemeProvider,{name:subThemeMapping[subTheme]},_react.default.createElement(_NavBarSlideDown.NavBarSlideDown,{isVisible:!isCompact,position:"bottom"},_react.default.createElement(StyledSubMenuContainer,{ref:ref,"data-e2e-test-id":dataE2eTestId},_react.default.createElement("div",null,children))))});
@@ -6,6 +6,7 @@ export declare const NAV_BAR_Z_INDEX: {
6
6
  export declare const COMPACT_ATTR = "data-compact";
7
7
  export declare const TRANSITIONING_ATTR = "data-transitioning";
8
8
  export declare const TRANSITIONING_DATASET_KEY = "transitioning";
9
+ export declare const SUBNAV_HEIGHT = "48px";
9
10
  export declare const whenExpandedAncestor = "[data-compact=\"false\"] &";
10
11
  export declare const whenTransitioningAndCompact = "[data-transitioning][data-compact=\"true\"] &";
11
12
  export declare const whenTransitioningAndExpanded = "[data-transitioning][data-compact=\"false\"] &";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get COMPACT_ATTR(){return COMPACT_ATTR},get NAV_BAR_Z_INDEX(){return NAV_BAR_Z_INDEX},get TRANSITIONING_ATTR(){return TRANSITIONING_ATTR},get TRANSITIONING_DATASET_KEY(){return TRANSITIONING_DATASET_KEY},get whenExpandedAncestor(){return whenExpandedAncestor},get whenTransitioningAndCompact(){return whenTransitioningAndCompact},get whenTransitioningAndExpanded(){return whenTransitioningAndExpanded}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const NAV_BAR_Z_INDEX={primary:1,overlay:2,overlayContent:3},COMPACT_ATTR="data-compact",TRANSITIONING_ATTR="data-transitioning",TRANSITIONING_DATASET_KEY="transitioning",whenExpandedAncestor=`[${COMPACT_ATTR}="false"] &`,whenTransitioningAndCompact=`[${TRANSITIONING_ATTR}][${COMPACT_ATTR}="true"] &`,whenTransitioningAndExpanded=`[${TRANSITIONING_ATTR}][${COMPACT_ATTR}="false"] &`;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get COMPACT_ATTR(){return COMPACT_ATTR},get NAV_BAR_Z_INDEX(){return NAV_BAR_Z_INDEX},get SUBNAV_HEIGHT(){return SUBNAV_HEIGHT},get TRANSITIONING_ATTR(){return TRANSITIONING_ATTR},get TRANSITIONING_DATASET_KEY(){return TRANSITIONING_DATASET_KEY},get whenExpandedAncestor(){return whenExpandedAncestor},get whenTransitioningAndCompact(){return whenTransitioningAndCompact},get whenTransitioningAndExpanded(){return whenTransitioningAndExpanded}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const NAV_BAR_Z_INDEX={primary:1,overlay:2,overlayContent:3},COMPACT_ATTR="data-compact",TRANSITIONING_ATTR="data-transitioning",TRANSITIONING_DATASET_KEY="transitioning",SUBNAV_HEIGHT="48px",whenExpandedAncestor=`[${COMPACT_ATTR}="false"] &`,whenTransitioningAndCompact=`[${TRANSITIONING_ATTR}][${COMPACT_ATTR}="true"] &`,whenTransitioningAndExpanded=`[${TRANSITIONING_ATTR}][${COMPACT_ATTR}="false"] &`;
@@ -113,3 +113,4 @@ export * from "./components/Content/ContentTableModal/ContentTableModal";
113
113
  export * from "./components/Content/DosageButton";
114
114
  export * from "./components/Content/ReferenceButton";
115
115
  export * from "./components/AIButton/AIButton";
116
+ export * from "./components/Layout";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get CacheProvider(){return _react.CacheProvider},get ThemeProvider(){return _react.ThemeProvider},get createCache(){return _cache.default},get dark(){return dark},get light(){return light}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _export_star=require("@swc/helpers/_/_export_star"),_interop_require_default=require("@swc/helpers/_/_interop_require_default"),_visualConfig=require("./web-tokens/visualConfig"),_react=require("@emotion/react"),_cache=/*#__PURE__*/_interop_require_default._(require("@emotion/cache"));_export_star._(require("./components/AccessCardItem/AccessCardItem"),exports),_export_star._(require("./components/AIFloatingButton/AIFloatingButton"),exports),_export_star._(require("./components/Avatar/Avatar"),exports),_export_star._(require("./components/AvatarGroup/AvatarGroup"),exports),_export_star._(require("./components/Badge/Badge"),exports),_export_star._(require("./components/BinaryFeedback/BinaryFeedback"),exports),_export_star._(require("./components/Box/Box"),exports),_export_star._(require("./components/BulkActionsToolbar/BulkActionsToolbar"),exports),_export_star._(require("./components/Button/Button"),exports),_export_star._(require("./components/Callout/Callout"),exports),_export_star._(require("./components/Card/Card"),exports),_export_star._(require("./components/Card/CardBox"),exports),_export_star._(require("./components/CatalogCard/CatalogCard"),exports),_export_star._(require("./components/ChatMessage"),exports),_export_star._(require("./components/ChatResponse"),exports),_export_star._(require("./components/CheckboxCard/CheckboxCard"),exports),_export_star._(require("./components/Collapsible/Collapsible"),exports),_export_star._(require("./components/ColorIndicator/ColorIndicator"),exports),_export_star._(require("./components/ColorPicker/ColorPicker"),exports),_export_star._(require("./components/Column/Columns"),exports),_export_star._(require("./components/Container"),exports),_export_star._(require("./components/CountButton/CountButton"),exports),_export_star._(require("./components/DataTable"),exports),_export_star._(require("./components/Divider/Divider"),exports),_export_star._(require("./components/DropdownMenu/DropdownMenu"),exports),_export_star._(require("./components/EntityList"),exports),_export_star._(require("./components/EntityTree"),exports),_export_star._(require("./components/Composite/FilterDialog/FilterDialog"),exports),_export_star._(require("./components/Form/Checkbox/Checkbox"),exports),_export_star._(require("./components/Form/Combobox/Combobox"),exports),_export_star._(require("./components/Form/DateInput/DateInput"),exports),_export_star._(require("./components/Form/DatePicker"),exports),_export_star._(require("./components/Form/FormFieldGroup/FormFieldGroup"),exports),_export_star._(require("./components/Form/Input"),exports),_export_star._(require("./components/Form/MaskedInput/MaskedInput"),exports),_export_star._(require("./components/Form/PasswordInput"),exports),_export_star._(require("./components/Form/Radio/Radio"),exports),_export_star._(require("./components/Form/RadioButton/RadioButton"),exports),_export_star._(require("./components/Form/RangeInput/RangeInput"),exports),_export_star._(require("./components/Form/SearchInput/SearchInput"),exports),_export_star._(require("./components/Form/SegmentedControl/SegmentedControl"),exports),_export_star._(require("./components/Form/Select"),exports),_export_star._(require("./components/Form/ToolbarToggle/ToolbarToggle"),exports),_export_star._(require("./components/Form/Textarea/Textarea"),exports),_export_star._(require("./components/Form/Toggle/Toggle"),exports),_export_star._(require("./components/Form/ToggleButton/ToggleButton"),exports),_export_star._(require("./components/Grid/Grid"),exports),_export_star._(require("./components/Icon/Icon"),exports),_export_star._(require("./components/IconTile/IconTile"),exports),_export_star._(require("./components/Image/Image"),exports),_export_star._(require("./components/Inline/Inline"),exports),_export_star._(require("./components/InteractiveBox/InteractiveBox"),exports),_export_star._(require("./components/Lightbox/Lightbox"),exports),_export_star._(require("./components/Link/Link"),exports),_export_star._(require("./components/LoadingSpinner/LoadingSpinner"),exports),_export_star._(require("./components/Logo/Logo"),exports),_export_star._(require("./components/MediaItem"),exports),_export_star._(require("./components/MediaViewerBar/MediaViewerBar"),exports),_export_star._(require("./components/MediaViewerCarousel/MediaViewerCarousel"),exports),_export_star._(require("./components/NavBar"),exports),_export_star._(require("./components/Notification/Notification"),exports),_export_star._(require("./components/Pagination/Pagination"),exports),_export_star._(require("./components/Patterns/ButtonGroup/ButtonGroup"),exports),_export_star._(require("./components/Patterns/Modal/Modal"),exports),_export_star._(require("./components/PictogramButton/PictogramButton"),exports),_export_star._(require("./components/Popover/Popover"),exports),_export_star._(require("./components/ProgressBar/ProgressBar"),exports),_export_star._(require("./components/PromptButton/PromptButton"),exports),_export_star._(require("./components/PromptInput/PromptInput"),exports),_export_star._(require("./components/SplashCard/SplashCard"),exports),_export_star._(require("./components/SplashCardMedia/SplashCardMedia"),exports),_export_star._(require("./components/QBankRichText/QBankRichText"),exports),_export_star._(require("./components/RadioCard/RadioCard"),exports),_export_star._(require("./components/RoundButton/RoundButton"),exports),_export_star._(require("./components/SearchResult/SearchResult"),exports),_export_star._(require("./components/SegmentedProgressBar/SegmentedProgressBar"),exports),_export_star._(require("./components/Sheet/Sheet"),exports),_export_star._(require("./components/Stack/Stack"),exports),_export_star._(require("./components/SubThemeProvider/SubThemeProvider"),exports),_export_star._(require("./components/Tabs/Tabs"),exports),_export_star._(require("./components/Tag/Tag"),exports),_export_star._(require("./components/TagGroup/TagGroup"),exports),_export_star._(require("./components/Toast"),exports),_export_star._(require("./components/Toggletip/Toggletip"),exports),_export_star._(require("./components/Tooltip/Tooltip"),exports),_export_star._(require("./components/Tutorialtip/Tutorialtip"),exports),_export_star._(require("./components/Typography/Header"),exports),_export_star._(require("./components/Typography/StyledText/StyledText"),exports),_export_star._(require("./components/Typography/Text"),exports),_export_star._(require("./components/Typography/TextClamped/TextClamped"),exports),_export_star._(require("./components/UserHighlightTooltip/UserHighlightTooltip"),exports),_export_star._(require("./components/Utilities/AnimatedBorder/useAnimatedBorder"),exports),_export_star._(require("./components/Utilities/ContainerQuery/ContainerQuery"),exports),_export_star._(require("./components/Utilities/Expandable/Expandable"),exports),_export_star._(require("./components/Utilities/ScreenReaderText/ScreenReaderText"),exports),_export_star._(require("./components/Patterns/EmptyState/EmptyState"),exports),_export_star._(require("./components/Content/ContentBox/ContentBox"),exports),_export_star._(require("./components/Content/ContentCheckbox/ContentCheckbox"),exports),_export_star._(require("./components/Content/ContentFontResizer"),exports),_export_star._(require("./components/Content/ContentHeading/ContentHeading"),exports),_export_star._(require("./components/Content/ContentLink/ContentLink"),exports),_export_star._(require("./components/Content/ContentPictogramButton/ContentPictogramButton"),exports),_export_star._(require("./components/Content/ContentText/ContentText"),exports),_export_star._(require("./components/Content/ContentList"),exports),_export_star._(require("./components/Content/ContentTable"),exports),_export_star._(require("./components/Content/ContentTableModal/ContentTableModal"),exports),_export_star._(require("./components/Content/DosageButton"),exports),_export_star._(require("./components/Content/ReferenceButton"),exports),_export_star._(require("./components/AIButton/AIButton"),exports);const{dark,light}=_visualConfig.ambossVisualConfiguration;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get CacheProvider(){return _react.CacheProvider},get ThemeProvider(){return _react.ThemeProvider},get createCache(){return _cache.default},get dark(){return dark},get light(){return light}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _export_star=require("@swc/helpers/_/_export_star"),_interop_require_default=require("@swc/helpers/_/_interop_require_default"),_visualConfig=require("./web-tokens/visualConfig"),_react=require("@emotion/react"),_cache=/*#__PURE__*/_interop_require_default._(require("@emotion/cache"));_export_star._(require("./components/AccessCardItem/AccessCardItem"),exports),_export_star._(require("./components/AIFloatingButton/AIFloatingButton"),exports),_export_star._(require("./components/Avatar/Avatar"),exports),_export_star._(require("./components/AvatarGroup/AvatarGroup"),exports),_export_star._(require("./components/Badge/Badge"),exports),_export_star._(require("./components/BinaryFeedback/BinaryFeedback"),exports),_export_star._(require("./components/Box/Box"),exports),_export_star._(require("./components/BulkActionsToolbar/BulkActionsToolbar"),exports),_export_star._(require("./components/Button/Button"),exports),_export_star._(require("./components/Callout/Callout"),exports),_export_star._(require("./components/Card/Card"),exports),_export_star._(require("./components/Card/CardBox"),exports),_export_star._(require("./components/CatalogCard/CatalogCard"),exports),_export_star._(require("./components/ChatMessage"),exports),_export_star._(require("./components/ChatResponse"),exports),_export_star._(require("./components/CheckboxCard/CheckboxCard"),exports),_export_star._(require("./components/Collapsible/Collapsible"),exports),_export_star._(require("./components/ColorIndicator/ColorIndicator"),exports),_export_star._(require("./components/ColorPicker/ColorPicker"),exports),_export_star._(require("./components/Column/Columns"),exports),_export_star._(require("./components/Container"),exports),_export_star._(require("./components/CountButton/CountButton"),exports),_export_star._(require("./components/DataTable"),exports),_export_star._(require("./components/Divider/Divider"),exports),_export_star._(require("./components/DropdownMenu/DropdownMenu"),exports),_export_star._(require("./components/EntityList"),exports),_export_star._(require("./components/EntityTree"),exports),_export_star._(require("./components/Composite/FilterDialog/FilterDialog"),exports),_export_star._(require("./components/Form/Checkbox/Checkbox"),exports),_export_star._(require("./components/Form/Combobox/Combobox"),exports),_export_star._(require("./components/Form/DateInput/DateInput"),exports),_export_star._(require("./components/Form/DatePicker"),exports),_export_star._(require("./components/Form/FormFieldGroup/FormFieldGroup"),exports),_export_star._(require("./components/Form/Input"),exports),_export_star._(require("./components/Form/MaskedInput/MaskedInput"),exports),_export_star._(require("./components/Form/PasswordInput"),exports),_export_star._(require("./components/Form/Radio/Radio"),exports),_export_star._(require("./components/Form/RadioButton/RadioButton"),exports),_export_star._(require("./components/Form/RangeInput/RangeInput"),exports),_export_star._(require("./components/Form/SearchInput/SearchInput"),exports),_export_star._(require("./components/Form/SegmentedControl/SegmentedControl"),exports),_export_star._(require("./components/Form/Select"),exports),_export_star._(require("./components/Form/ToolbarToggle/ToolbarToggle"),exports),_export_star._(require("./components/Form/Textarea/Textarea"),exports),_export_star._(require("./components/Form/Toggle/Toggle"),exports),_export_star._(require("./components/Form/ToggleButton/ToggleButton"),exports),_export_star._(require("./components/Grid/Grid"),exports),_export_star._(require("./components/Icon/Icon"),exports),_export_star._(require("./components/IconTile/IconTile"),exports),_export_star._(require("./components/Image/Image"),exports),_export_star._(require("./components/Inline/Inline"),exports),_export_star._(require("./components/InteractiveBox/InteractiveBox"),exports),_export_star._(require("./components/Lightbox/Lightbox"),exports),_export_star._(require("./components/Link/Link"),exports),_export_star._(require("./components/LoadingSpinner/LoadingSpinner"),exports),_export_star._(require("./components/Logo/Logo"),exports),_export_star._(require("./components/MediaItem"),exports),_export_star._(require("./components/MediaViewerBar/MediaViewerBar"),exports),_export_star._(require("./components/MediaViewerCarousel/MediaViewerCarousel"),exports),_export_star._(require("./components/NavBar"),exports),_export_star._(require("./components/Notification/Notification"),exports),_export_star._(require("./components/Pagination/Pagination"),exports),_export_star._(require("./components/Patterns/ButtonGroup/ButtonGroup"),exports),_export_star._(require("./components/Patterns/Modal/Modal"),exports),_export_star._(require("./components/PictogramButton/PictogramButton"),exports),_export_star._(require("./components/Popover/Popover"),exports),_export_star._(require("./components/ProgressBar/ProgressBar"),exports),_export_star._(require("./components/PromptButton/PromptButton"),exports),_export_star._(require("./components/PromptInput/PromptInput"),exports),_export_star._(require("./components/SplashCard/SplashCard"),exports),_export_star._(require("./components/SplashCardMedia/SplashCardMedia"),exports),_export_star._(require("./components/QBankRichText/QBankRichText"),exports),_export_star._(require("./components/RadioCard/RadioCard"),exports),_export_star._(require("./components/RoundButton/RoundButton"),exports),_export_star._(require("./components/SearchResult/SearchResult"),exports),_export_star._(require("./components/SegmentedProgressBar/SegmentedProgressBar"),exports),_export_star._(require("./components/Sheet/Sheet"),exports),_export_star._(require("./components/Stack/Stack"),exports),_export_star._(require("./components/SubThemeProvider/SubThemeProvider"),exports),_export_star._(require("./components/Tabs/Tabs"),exports),_export_star._(require("./components/Tag/Tag"),exports),_export_star._(require("./components/TagGroup/TagGroup"),exports),_export_star._(require("./components/Toast"),exports),_export_star._(require("./components/Toggletip/Toggletip"),exports),_export_star._(require("./components/Tooltip/Tooltip"),exports),_export_star._(require("./components/Tutorialtip/Tutorialtip"),exports),_export_star._(require("./components/Typography/Header"),exports),_export_star._(require("./components/Typography/StyledText/StyledText"),exports),_export_star._(require("./components/Typography/Text"),exports),_export_star._(require("./components/Typography/TextClamped/TextClamped"),exports),_export_star._(require("./components/UserHighlightTooltip/UserHighlightTooltip"),exports),_export_star._(require("./components/Utilities/AnimatedBorder/useAnimatedBorder"),exports),_export_star._(require("./components/Utilities/ContainerQuery/ContainerQuery"),exports),_export_star._(require("./components/Utilities/Expandable/Expandable"),exports),_export_star._(require("./components/Utilities/ScreenReaderText/ScreenReaderText"),exports),_export_star._(require("./components/Patterns/EmptyState/EmptyState"),exports),_export_star._(require("./components/Content/ContentBox/ContentBox"),exports),_export_star._(require("./components/Content/ContentCheckbox/ContentCheckbox"),exports),_export_star._(require("./components/Content/ContentFontResizer"),exports),_export_star._(require("./components/Content/ContentHeading/ContentHeading"),exports),_export_star._(require("./components/Content/ContentLink/ContentLink"),exports),_export_star._(require("./components/Content/ContentPictogramButton/ContentPictogramButton"),exports),_export_star._(require("./components/Content/ContentText/ContentText"),exports),_export_star._(require("./components/Content/ContentList"),exports),_export_star._(require("./components/Content/ContentTable"),exports),_export_star._(require("./components/Content/ContentTableModal/ContentTableModal"),exports),_export_star._(require("./components/Content/DosageButton"),exports),_export_star._(require("./components/Content/ReferenceButton"),exports),_export_star._(require("./components/AIButton/AIButton"),exports),_export_star._(require("./components/Layout"),exports);const{dark,light}=_visualConfig.ambossVisualConfiguration;
@@ -1,10 +1,10 @@
1
1
  import React from "react";
2
2
  import type { AvatarProps } from "../Avatar/Avatar";
3
3
  export type AvatarGroupProps = {
4
- labels: string[] | AvatarProps[];
4
+ avatars: AvatarProps[];
5
5
  /** Maximum number of avatars to display before showing overflow counter */
6
6
  maxCount?: number;
7
7
  showCount?: boolean;
8
8
  "data-e2e-test-id"?: string;
9
9
  };
10
- export declare function AvatarGroup({ labels, maxCount, showCount, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: AvatarGroupProps): React.ReactElement;
10
+ export declare function AvatarGroup({ avatars, maxCount, showCount, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: AvatarGroupProps): React.ReactElement;
@@ -1 +1 @@
1
- import React from"react";import styled from"@emotion/styled";import{Avatar,AVATAR_COLORS}from"../Avatar/Avatar";import{Text}from"../Typography/Text";import{Inline}from"../Inline/Inline";let AvatarWrapper=styled("div",{target:"egmflit0",label:"AvatarWrapper"})(({theme,isLastitem})=>({outline:`2px solid ${theme.values.color.avatar.border.default}`,borderRadius:theme.variables.size.borderRadius.full,...!isLastitem&&{marginRight:`-${theme.variables.size.spacing.xxxs}`},"&:hover, &:focus-within":{position:"relative",zIndex:1}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvQXZhdGFyR3JvdXAvQXZhdGFyR3JvdXAudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9BdmF0YXJHcm91cC9BdmF0YXJHcm91cC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IEF2YXRhclByb3BzIH0gZnJvbSBcIi4uL0F2YXRhci9BdmF0YXJcIjtcbmltcG9ydCB7IEF2YXRhciwgQVZBVEFSX0NPTE9SUyB9IGZyb20gXCIuLi9BdmF0YXIvQXZhdGFyXCI7XG5pbXBvcnQgeyBUZXh0IH0gZnJvbSBcIi4uL1R5cG9ncmFwaHkvVGV4dFwiO1xuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uL0lubGluZS9JbmxpbmVcIjtcblxuZXhwb3J0IHR5cGUgQXZhdGFyR3JvdXBQcm9wcyA9IHtcbiAgbGFiZWxzOiBzdHJpbmdbXSB8IEF2YXRhclByb3BzW107XG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBhdmF0YXJzIHRvIGRpc3BsYXkgYmVmb3JlIHNob3dpbmcgb3ZlcmZsb3cgY291bnRlciAqL1xuICBtYXhDb3VudD86IG51bWJlcjtcbiAgc2hvd0NvdW50PzogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIEF2YXRhcldyYXBwZXJQcm9wcyA9IHtcbiAgaXNMYXN0aXRlbT86IGJvb2xlYW47XG59O1xuXG5jb25zdCBBdmF0YXJXcmFwcGVyID0gc3R5bGVkLmRpdjxBdmF0YXJXcmFwcGVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNMYXN0aXRlbSB9KSA9PiAoe1xuICAgIG91dGxpbmU6IGAycHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuYXZhdGFyLmJvcmRlci5kZWZhdWx0fWAsXG4gICAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMuZnVsbCxcblxuICAgIC4uLighaXNMYXN0aXRlbSAmJiB7XG4gICAgICBtYXJnaW5SaWdodDogYC0ke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHh4c31gLFxuICAgIH0pLFxuXG4gICAgXCImOmhvdmVyLCAmOmZvY3VzLXdpdGhpblwiOiB7XG4gICAgICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICAgICAgekluZGV4OiAxLFxuICAgIH0sXG4gIH0pXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gQXZhdGFyR3JvdXAoe1xuICBsYWJlbHMsXG4gIG1heENvdW50ID0gNSxcbiAgc2hvd0NvdW50LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbiAgLi4uYXJpYUF0dHJpYnV0ZXNcbn06IEF2YXRhckdyb3VwUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBpdGVtcyA9IGxhYmVscyBhcyAoc3RyaW5nIHwgQXZhdGFyUHJvcHMpW107XG4gIGNvbnN0IHZpc2libGVJdGVtcyA9IGl0ZW1zLnNsaWNlKDAsIG1heENvdW50KTtcbiAgY29uc3QgcmVtYWluaW5nQ291bnQgPSBpdGVtcy5sZW5ndGggLSB2aXNpYmxlSXRlbXMubGVuZ3RoO1xuXG4gIHJldHVybiAoXG4gICAgPElubGluZVxuICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgIGRhdGEtZHMtaWQ9XCJBdmF0YXJHcm91cFwiXG4gICAgICB2QWxpZ25JdGVtcz1cImNlbnRlclwiXG4gICAgICBzcGFjZT1cInh4c1wiXG4gICAgICB7Li4uYXJpYUF0dHJpYnV0ZXN9XG4gICAgPlxuICAgICAgPElubGluZSBzcGFjZT1cInplcm9cIj5cbiAgICAgICAge3Zpc2libGVJdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgZmFsbGJhY2tDb2xvciA9IEFWQVRBUl9DT0xPUlNbaW5kZXggJSBBVkFUQVJfQ09MT1JTLmxlbmd0aF07XG4gICAgICAgICAgY29uc3QgYXZhdGFyUHJvcHM6IEF2YXRhclByb3BzID1cbiAgICAgICAgICAgIHR5cGVvZiBpdGVtID09PSBcInN0cmluZ1wiXG4gICAgICAgICAgICAgID8geyBsYWJlbDogaXRlbSwgY29sb3I6IGZhbGxiYWNrQ29sb3IgfVxuICAgICAgICAgICAgICA6IHsgLi4uaXRlbSwgY29sb3I6IGl0ZW0uY29sb3IgPz8gZmFsbGJhY2tDb2xvciB9O1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8QXZhdGFyV3JhcHBlclxuICAgICAgICAgICAgICBrZXk9e2F2YXRhclByb3BzLmxhYmVsfVxuICAgICAgICAgICAgICBpc0xhc3RpdGVtPXtpbmRleCA9PT0gdmlzaWJsZUl0ZW1zLmxlbmd0aCAtIDF9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxBdmF0YXIgey4uLmF2YXRhclByb3BzfSAvPlxuICAgICAgICAgICAgPC9BdmF0YXJXcmFwcGVyPlxuICAgICAgICAgICk7XG4gICAgICAgIH0pfVxuICAgICAgPC9JbmxpbmU+XG4gICAgICB7c2hvd0NvdW50ICYmIHJlbWFpbmluZ0NvdW50ID4gMCAmJiAoXG4gICAgICAgIDxUZXh0IHVzZXJTZWxlY3Q9XCJub25lXCIgc2l6ZT1cInNcIiBhcz1cInNwYW5cIj5cbiAgICAgICAgICAre3JlbWFpbmluZ0NvdW50fVxuICAgICAgICA8L1RleHQ+XG4gICAgICApfVxuICAgIDwvSW5saW5lPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1Cc0IifQ== */");export function AvatarGroup({labels,maxCount=5,showCount,"data-e2e-test-id":dataE2eTestId,...ariaAttributes}){let visibleItems=labels.slice(0,maxCount),remainingCount=labels.length-visibleItems.length;return React.createElement(Inline,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":"AvatarGroup",vAlignItems:"center",space:"xxs",...ariaAttributes},React.createElement(Inline,{space:"zero"},visibleItems.map((item,index)=>{let fallbackColor=AVATAR_COLORS[index%AVATAR_COLORS.length],avatarProps="string"==typeof item?{label:item,color:fallbackColor}:{...item,color:item.color??fallbackColor};return React.createElement(AvatarWrapper,{key:avatarProps.label,isLastitem:index===visibleItems.length-1},React.createElement(Avatar,avatarProps))})),showCount&&remainingCount>0&&React.createElement(Text,{userSelect:"none",size:"s",as:"span"},"+",remainingCount))}
1
+ import React from"react";import styled from"@emotion/styled";import{Avatar,AVATAR_COLORS}from"../Avatar/Avatar";import{Text}from"../Typography/Text";import{Inline}from"../Inline/Inline";let AvatarWrapper=styled("div",{target:"efx6ood0",label:"AvatarWrapper"})(({theme,isLastitem})=>({outline:`2px solid ${theme.values.color.avatar.border.default}`,borderRadius:theme.variables.size.borderRadius.full,...!isLastitem&&{marginRight:`-${theme.variables.size.spacing.xxxs}`},"&:hover, &:focus-within":{position:"relative",zIndex:1}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvQXZhdGFyR3JvdXAvQXZhdGFyR3JvdXAudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9BdmF0YXJHcm91cC9BdmF0YXJHcm91cC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IEF2YXRhclByb3BzIH0gZnJvbSBcIi4uL0F2YXRhci9BdmF0YXJcIjtcbmltcG9ydCB7IEF2YXRhciwgQVZBVEFSX0NPTE9SUyB9IGZyb20gXCIuLi9BdmF0YXIvQXZhdGFyXCI7XG5pbXBvcnQgeyBUZXh0IH0gZnJvbSBcIi4uL1R5cG9ncmFwaHkvVGV4dFwiO1xuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uL0lubGluZS9JbmxpbmVcIjtcblxuZXhwb3J0IHR5cGUgQXZhdGFyR3JvdXBQcm9wcyA9IHtcbiAgYXZhdGFyczogQXZhdGFyUHJvcHNbXTtcbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIGF2YXRhcnMgdG8gZGlzcGxheSBiZWZvcmUgc2hvd2luZyBvdmVyZmxvdyBjb3VudGVyICovXG4gIG1heENvdW50PzogbnVtYmVyO1xuICBzaG93Q291bnQ/OiBib29sZWFuO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQXZhdGFyV3JhcHBlclByb3BzID0ge1xuICBpc0xhc3RpdGVtPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEF2YXRhcldyYXBwZXIgPSBzdHlsZWQuZGl2PEF2YXRhcldyYXBwZXJQcm9wcz4oXG4gICh7IHRoZW1lLCBpc0xhc3RpdGVtIH0pID0+ICh7XG4gICAgb3V0bGluZTogYDJweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5hdmF0YXIuYm9yZGVyLmRlZmF1bHR9YCxcbiAgICBib3JkZXJSYWRpdXM6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy5mdWxsLFxuXG4gICAgLi4uKCFpc0xhc3RpdGVtICYmIHtcbiAgICAgIG1hcmdpblJpZ2h0OiBgLSR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHhzfWAsXG4gICAgfSksXG5cbiAgICBcIiY6aG92ZXIsICY6Zm9jdXMtd2l0aGluXCI6IHtcbiAgICAgIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gICAgICB6SW5kZXg6IDEsXG4gICAgfSxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBBdmF0YXJHcm91cCh7XG4gIGF2YXRhcnMsXG4gIG1heENvdW50ID0gNSxcbiAgc2hvd0NvdW50LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbiAgLi4uYXJpYUF0dHJpYnV0ZXNcbn06IEF2YXRhckdyb3VwUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB2aXNpYmxlSXRlbXMgPSBhdmF0YXJzLnNsaWNlKDAsIG1heENvdW50KTtcbiAgY29uc3QgcmVtYWluaW5nQ291bnQgPSBhdmF0YXJzLmxlbmd0aCAtIHZpc2libGVJdGVtcy5sZW5ndGg7XG5cbiAgcmV0dXJuIChcbiAgICA8SW5saW5lXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD1cIkF2YXRhckdyb3VwXCJcbiAgICAgIHZBbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgIHNwYWNlPVwieHhzXCJcbiAgICAgIHsuLi5hcmlhQXR0cmlidXRlc31cbiAgICA+XG4gICAgICA8SW5saW5lIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICB7dmlzaWJsZUl0ZW1zLm1hcCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICBjb25zdCBmYWxsYmFja0NvbG9yID0gQVZBVEFSX0NPTE9SU1tpbmRleCAlIEFWQVRBUl9DT0xPUlMubGVuZ3RoXTtcbiAgICAgICAgICBjb25zdCBhdmF0YXJQcm9wczogQXZhdGFyUHJvcHMgPSB7XG4gICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgY29sb3I6IGl0ZW0uY29sb3IgPz8gZmFsbGJhY2tDb2xvcixcbiAgICAgICAgICB9O1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8QXZhdGFyV3JhcHBlclxuICAgICAgICAgICAgICBrZXk9e2F2YXRhclByb3BzLmxhYmVsfVxuICAgICAgICAgICAgICBpc0xhc3RpdGVtPXtpbmRleCA9PT0gdmlzaWJsZUl0ZW1zLmxlbmd0aCAtIDF9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxBdmF0YXIgey4uLmF2YXRhclByb3BzfSAvPlxuICAgICAgICAgICAgPC9BdmF0YXJXcmFwcGVyPlxuICAgICAgICAgICk7XG4gICAgICAgIH0pfVxuICAgICAgPC9JbmxpbmU+XG4gICAgICB7c2hvd0NvdW50ICYmIHJlbWFpbmluZ0NvdW50ID4gMCAmJiAoXG4gICAgICAgIDxUZXh0IHVzZXJTZWxlY3Q9XCJub25lXCIgc2l6ZT1cInNcIiBhcz1cInNwYW5cIj5cbiAgICAgICAgICAre3JlbWFpbmluZ0NvdW50fVxuICAgICAgICA8L1RleHQ+XG4gICAgICApfVxuICAgIDwvSW5saW5lPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1Cc0IifQ== */");export function AvatarGroup({avatars,maxCount=5,showCount,"data-e2e-test-id":dataE2eTestId,...ariaAttributes}){let visibleItems=avatars.slice(0,maxCount),remainingCount=avatars.length-visibleItems.length;return React.createElement(Inline,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":"AvatarGroup",vAlignItems:"center",space:"xxs",...ariaAttributes},React.createElement(Inline,{space:"zero"},visibleItems.map((item,index)=>{let fallbackColor=AVATAR_COLORS[index%AVATAR_COLORS.length],avatarProps={...item,color:item.color??fallbackColor};return React.createElement(AvatarWrapper,{key:avatarProps.label,isLastitem:index===visibleItems.length-1},React.createElement(Avatar,avatarProps))})),showCount&&remainingCount>0&&React.createElement(Text,{userSelect:"none",size:"s",as:"span"},"+",remainingCount))}
@@ -0,0 +1,36 @@
1
+ import React from "react";
2
+ import type { LayoutStorage } from "react-resizable-panels";
3
+ /** A size: plain number = pixels; unitless string = percentage ("10%"). */
4
+ type Size = number | string;
5
+ export type PanelItem = {
6
+ /** Stable id — used by react-resizable-panels to track the panel and persist
7
+ * its size, and passed back to `hostFor`/`onResize`/`onCollapse`. */
8
+ id: string;
9
+ defaultSize?: Size;
10
+ minSize?: Size;
11
+ maxSize?: Size;
12
+ /** Allow drag-to-collapse; collapsing fires `onCollapse(id)`. */
13
+ collapsible?: boolean;
14
+ };
15
+ export type PanelProps = {
16
+ /** Visible panels, left-to-right. Conditionally rendering items toggles a
17
+ * panel WITHOUT remounting the others (no `key` on the group). */
18
+ panels: PanelItem[];
19
+ /** Persist sizes (keyed by `persistenceKey` + the current panel-id set). */
20
+ persistenceKey?: string;
21
+ storage?: LayoutStorage;
22
+ /** Ref callback for a panel's content host `<div>` (consumer portals into it). */
23
+ hostFor: (id: string) => (el: HTMLElement | null) => void;
24
+ /** Reports a settled drag-resize (size as a "%" string). */
25
+ onResize: (id: string, size: string) => void;
26
+ /** Reports a drag past `minSize` on a collapsible panel. */
27
+ onCollapse: (id: string) => void;
28
+ };
29
+ /**
30
+ * Internal resizable panel row — the only wrapper around react-resizable-panels.
31
+ * Renders one Panel per item with a content host `<div>` (ref'd back via
32
+ * `hostFor`), persists sizes, and reports drag-resize / drag-to-collapse. The
33
+ * public `Layout` component is the intended consumer.
34
+ */
35
+ export declare function Panel({ panels, persistenceKey, storage, hostFor, onResize, onCollapse, }: PanelProps): React.ReactElement;
36
+ export {};
@@ -0,0 +1 @@
1
+ import React from"react";import styled from"@emotion/styled";import{Group,Panel as ResizablePanel,Separator,useDefaultLayout}from"react-resizable-panels";let CustomGroup=styled(Group,{target:"e8gmbta0",label:"CustomGroup"})({height:"100%",width:"100%"},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvSW50ZXJuYWwvUGFuZWwvUGFuZWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9JbnRlcm5hbC9QYW5lbC9QYW5lbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBHcm91cCxcbiAgUGFuZWwgYXMgUmVzaXphYmxlUGFuZWwsXG4gIFNlcGFyYXRvcixcbiAgdXNlRGVmYXVsdExheW91dCxcbn0gZnJvbSBcInJlYWN0LXJlc2l6YWJsZS1wYW5lbHNcIjtcbmltcG9ydCB0eXBlIHsgTGF5b3V0U3RvcmFnZSB9IGZyb20gXCJyZWFjdC1yZXNpemFibGUtcGFuZWxzXCI7XG5cbi8qKiBBIHNpemU6IHBsYWluIG51bWJlciA9IHBpeGVsczsgdW5pdGxlc3Mgc3RyaW5nID0gcGVyY2VudGFnZSAoXCIxMCVcIikuICovXG50eXBlIFNpemUgPSBudW1iZXIgfCBzdHJpbmc7XG5cbmNvbnN0IEN1c3RvbUdyb3VwID0gc3R5bGVkKEdyb3VwKSh7IGhlaWdodDogXCIxMDAlXCIsIHdpZHRoOiBcIjEwMCVcIiB9KTtcblxuLy8gSG9zdCBub2RlIOKAlCBjb250ZW50IGlzIHBvcnRhbGVkIGluIGJ5IHRoZSBjb25zdW1lci4gYHJlbGF0aXZlYCBzb1xuLy8gYWJzb2x1dGVseS1wb3NpdGlvbmVkIGNvbnRlbnQgcmVmbG93cyB3aXRoIHRoZSBwYW5lbC5cbmNvbnN0IFN0eWxlZFBvcnRhbENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICBoZWlnaHQ6IFwiMTAwJVwiLFxuICB3aWR0aDogXCIxMDAlXCIsXG59KTtcblxuZXhwb3J0IHR5cGUgUGFuZWxJdGVtID0ge1xuICAvKiogU3RhYmxlIGlkIOKAlCB1c2VkIGJ5IHJlYWN0LXJlc2l6YWJsZS1wYW5lbHMgdG8gdHJhY2sgdGhlIHBhbmVsIGFuZCBwZXJzaXN0XG4gICAqICBpdHMgc2l6ZSwgYW5kIHBhc3NlZCBiYWNrIHRvIGBob3N0Rm9yYC9gb25SZXNpemVgL2BvbkNvbGxhcHNlYC4gKi9cbiAgaWQ6IHN0cmluZztcbiAgZGVmYXVsdFNpemU/OiBTaXplO1xuICBtaW5TaXplPzogU2l6ZTtcbiAgbWF4U2l6ZT86IFNpemU7XG4gIC8qKiBBbGxvdyBkcmFnLXRvLWNvbGxhcHNlOyBjb2xsYXBzaW5nIGZpcmVzIGBvbkNvbGxhcHNlKGlkKWAuICovXG4gIGNvbGxhcHNpYmxlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFBhbmVsUHJvcHMgPSB7XG4gIC8qKiBWaXNpYmxlIHBhbmVscywgbGVmdC10by1yaWdodC4gQ29uZGl0aW9uYWxseSByZW5kZXJpbmcgaXRlbXMgdG9nZ2xlcyBhXG4gICAqICBwYW5lbCBXSVRIT1VUIHJlbW91bnRpbmcgdGhlIG90aGVycyAobm8gYGtleWAgb24gdGhlIGdyb3VwKS4gKi9cbiAgcGFuZWxzOiBQYW5lbEl0ZW1bXTtcbiAgLyoqIFBlcnNpc3Qgc2l6ZXMgKGtleWVkIGJ5IGBwZXJzaXN0ZW5jZUtleWAgKyB0aGUgY3VycmVudCBwYW5lbC1pZCBzZXQpLiAqL1xuICBwZXJzaXN0ZW5jZUtleT86IHN0cmluZztcbiAgc3RvcmFnZT86IExheW91dFN0b3JhZ2U7XG4gIC8qKiBSZWYgY2FsbGJhY2sgZm9yIGEgcGFuZWwncyBjb250ZW50IGhvc3QgYDxkaXY+YCAoY29uc3VtZXIgcG9ydGFscyBpbnRvIGl0KS4gKi9cbiAgaG9zdEZvcjogKGlkOiBzdHJpbmcpID0+IChlbDogSFRNTEVsZW1lbnQgfCBudWxsKSA9PiB2b2lkO1xuICAvKiogUmVwb3J0cyBhIHNldHRsZWQgZHJhZy1yZXNpemUgKHNpemUgYXMgYSBcIiVcIiBzdHJpbmcpLiAqL1xuICBvblJlc2l6ZTogKGlkOiBzdHJpbmcsIHNpemU6IHN0cmluZykgPT4gdm9pZDtcbiAgLyoqIFJlcG9ydHMgYSBkcmFnIHBhc3QgYG1pblNpemVgIG9uIGEgY29sbGFwc2libGUgcGFuZWwuICovXG4gIG9uQ29sbGFwc2U6IChpZDogc3RyaW5nKSA9PiB2b2lkO1xufTtcblxuLy8gZmxleEdyb3cgYXQvYmVsb3cgdGhpcyBpcyB0cmVhdGVkIGFzIGEgZHJhZy10by1jb2xsYXBzZSBnZXN0dXJlLlxuY29uc3QgQ09MTEFQU0VfRVBTSUxPTiA9IDAuNTtcblxuLy8gcmVhY3QtcmVzaXphYmxlLXBhbmVscyBwZXJzaXN0cyBub3RoaW5nIHdoZW4gZ2l2ZW4gYSBuby1vcCBzdG9yYWdlLlxuY29uc3QgTk9PUF9TVE9SQUdFOiBMYXlvdXRTdG9yYWdlID0geyBnZXRJdGVtOiAoKSA9PiBudWxsLCBzZXRJdGVtOiAoKSA9PiB7fSB9O1xuXG4vKipcbiAqIFN0b3JhZ2UgZm9yIHNpemUgcGVyc2lzdGVuY2U6IHJlYWwgb25seSB3aGVuIEJPVEggYSBgcGVyc2lzdGVuY2VLZXlgIGFuZCBhXG4gKiBgc3RvcmFnZWAgYXJlIHByb3ZpZGVkLiBObyBpbXBsaWNpdCBgd2luZG93LmxvY2FsU3RvcmFnZWAgZmFsbGJhY2sg4oCUXG4gKiBwZXJzaXN0ZW5jZSBpcyBzdHJpY3RseSBvcHQtaW4uXG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVTaXplU3RvcmFnZShcbiAgcGVyc2lzdGVuY2VLZXk6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgc3RvcmFnZTogTGF5b3V0U3RvcmFnZSB8IHVuZGVmaW5lZFxuKTogTGF5b3V0U3RvcmFnZSB7XG4gIGlmICghcGVyc2lzdGVuY2VLZXkgfHwgIXN0b3JhZ2UpIHJldHVybiBOT09QX1NUT1JBR0U7XG4gIHJldHVybiBzdG9yYWdlO1xufVxuXG4vKipcbiAqIEludGVybmFsIHJlc2l6YWJsZSBwYW5lbCByb3cg4oCUIHRoZSBvbmx5IHdyYXBwZXIgYXJvdW5kIHJlYWN0LXJlc2l6YWJsZS1wYW5lbHMuXG4gKiBSZW5kZXJzIG9uZSBQYW5lbCBwZXIgaXRlbSB3aXRoIGEgY29udGVudCBob3N0IGA8ZGl2PmAgKHJlZidkIGJhY2sgdmlhXG4gKiBgaG9zdEZvcmApLCBwZXJzaXN0cyBzaXplcywgYW5kIHJlcG9ydHMgZHJhZy1yZXNpemUgLyBkcmFnLXRvLWNvbGxhcHNlLiBUaGVcbiAqIHB1YmxpYyBgTGF5b3V0YCBjb21wb25lbnQgaXMgdGhlIGludGVuZGVkIGNvbnN1bWVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gUGFuZWwoe1xuICBwYW5lbHMsXG4gIHBlcnNpc3RlbmNlS2V5LFxuICBzdG9yYWdlLFxuICBob3N0Rm9yLFxuICBvblJlc2l6ZSxcbiAgb25Db2xsYXBzZSxcbn06IFBhbmVsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IGRlZmF1bHRMYXlvdXQsIG9uTGF5b3V0Q2hhbmdlZDogcGVyc2lzdFNpemVzIH0gPSB1c2VEZWZhdWx0TGF5b3V0KHtcbiAgICBpZDogcGVyc2lzdGVuY2VLZXkgPz8gXCJkcy1sYXlvdXRcIixcbiAgICBwYW5lbElkczogcGFuZWxzLm1hcCgocCkgPT4gcC5pZCksXG4gICAgc3RvcmFnZTogcmVzb2x2ZVNpemVTdG9yYWdlKHBlcnNpc3RlbmNlS2V5LCBzdG9yYWdlKSxcbiAgfSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q3VzdG9tR3JvdXBcbiAgICAgIG9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICBkZWZhdWx0TGF5b3V0PXtkZWZhdWx0TGF5b3V0fVxuICAgICAgb25MYXlvdXRDaGFuZ2VkPXsobGF5b3V0KSA9PiB7XG4gICAgICAgIHBlcnNpc3RTaXplcyhsYXlvdXQpOyAvLyBsaWJyYXJ5IHNhdmVzIHRoZSBzaXplc1xuICAgICAgICBwYW5lbHMuZm9yRWFjaCgoeyBpZCwgY29sbGFwc2libGUgfSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHBjdCA9IGxheW91dFtpZF07XG4gICAgICAgICAgaWYgKHR5cGVvZiBwY3QgIT09IFwibnVtYmVyXCIpIHJldHVybjtcbiAgICAgICAgICBpZiAoY29sbGFwc2libGUgJiYgcGN0IDwgQ09MTEFQU0VfRVBTSUxPTikge1xuICAgICAgICAgICAgb25Db2xsYXBzZShpZCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChwY3QgPj0gQ09MTEFQU0VfRVBTSUxPTikgb25SZXNpemUoaWQsIGAke3BjdH0lYCk7XG4gICAgICAgIH0pO1xuICAgICAgfX1cbiAgICA+XG4gICAgICB7cGFuZWxzLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT17aXRlbS5pZH0+XG4gICAgICAgICAge2luZGV4ID4gMCAmJiA8U2VwYXJhdG9yIC8+fVxuICAgICAgICAgIDxSZXNpemFibGVQYW5lbFxuICAgICAgICAgICAgaWQ9e2l0ZW0uaWR9XG4gICAgICAgICAgICBkZWZhdWx0U2l6ZT17aXRlbS5kZWZhdWx0U2l6ZX1cbiAgICAgICAgICAgIGNvbGxhcHNpYmxlPXtpdGVtLmNvbGxhcHNpYmxlfVxuICAgICAgICAgICAgbWluU2l6ZT17aXRlbS5taW5TaXplfVxuICAgICAgICAgICAgbWF4U2l6ZT17aXRlbS5tYXhTaXplfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTdHlsZWRQb3J0YWxDb250YWluZXIgcmVmPXtob3N0Rm9yKGl0ZW0uaWQpfSAvPlxuICAgICAgICAgIDwvUmVzaXphYmxlUGFuZWw+XG4gICAgICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICAgICApKX1cbiAgICA8L0N1c3RvbUdyb3VwPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFvQiJ9 */"),StyledPortalContainer=styled("div",{target:"e8gmbta1",label:"StyledPortalContainer"})({position:"relative",height:"100%",width:"100%"},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvSW50ZXJuYWwvUGFuZWwvUGFuZWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9JbnRlcm5hbC9QYW5lbC9QYW5lbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQge1xuICBHcm91cCxcbiAgUGFuZWwgYXMgUmVzaXphYmxlUGFuZWwsXG4gIFNlcGFyYXRvcixcbiAgdXNlRGVmYXVsdExheW91dCxcbn0gZnJvbSBcInJlYWN0LXJlc2l6YWJsZS1wYW5lbHNcIjtcbmltcG9ydCB0eXBlIHsgTGF5b3V0U3RvcmFnZSB9IGZyb20gXCJyZWFjdC1yZXNpemFibGUtcGFuZWxzXCI7XG5cbi8qKiBBIHNpemU6IHBsYWluIG51bWJlciA9IHBpeGVsczsgdW5pdGxlc3Mgc3RyaW5nID0gcGVyY2VudGFnZSAoXCIxMCVcIikuICovXG50eXBlIFNpemUgPSBudW1iZXIgfCBzdHJpbmc7XG5cbmNvbnN0IEN1c3RvbUdyb3VwID0gc3R5bGVkKEdyb3VwKSh7IGhlaWdodDogXCIxMDAlXCIsIHdpZHRoOiBcIjEwMCVcIiB9KTtcblxuLy8gSG9zdCBub2RlIOKAlCBjb250ZW50IGlzIHBvcnRhbGVkIGluIGJ5IHRoZSBjb25zdW1lci4gYHJlbGF0aXZlYCBzb1xuLy8gYWJzb2x1dGVseS1wb3NpdGlvbmVkIGNvbnRlbnQgcmVmbG93cyB3aXRoIHRoZSBwYW5lbC5cbmNvbnN0IFN0eWxlZFBvcnRhbENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xuICBwb3NpdGlvbjogXCJyZWxhdGl2ZVwiLFxuICBoZWlnaHQ6IFwiMTAwJVwiLFxuICB3aWR0aDogXCIxMDAlXCIsXG59KTtcblxuZXhwb3J0IHR5cGUgUGFuZWxJdGVtID0ge1xuICAvKiogU3RhYmxlIGlkIOKAlCB1c2VkIGJ5IHJlYWN0LXJlc2l6YWJsZS1wYW5lbHMgdG8gdHJhY2sgdGhlIHBhbmVsIGFuZCBwZXJzaXN0XG4gICAqICBpdHMgc2l6ZSwgYW5kIHBhc3NlZCBiYWNrIHRvIGBob3N0Rm9yYC9gb25SZXNpemVgL2BvbkNvbGxhcHNlYC4gKi9cbiAgaWQ6IHN0cmluZztcbiAgZGVmYXVsdFNpemU/OiBTaXplO1xuICBtaW5TaXplPzogU2l6ZTtcbiAgbWF4U2l6ZT86IFNpemU7XG4gIC8qKiBBbGxvdyBkcmFnLXRvLWNvbGxhcHNlOyBjb2xsYXBzaW5nIGZpcmVzIGBvbkNvbGxhcHNlKGlkKWAuICovXG4gIGNvbGxhcHNpYmxlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFBhbmVsUHJvcHMgPSB7XG4gIC8qKiBWaXNpYmxlIHBhbmVscywgbGVmdC10by1yaWdodC4gQ29uZGl0aW9uYWxseSByZW5kZXJpbmcgaXRlbXMgdG9nZ2xlcyBhXG4gICAqICBwYW5lbCBXSVRIT1VUIHJlbW91bnRpbmcgdGhlIG90aGVycyAobm8gYGtleWAgb24gdGhlIGdyb3VwKS4gKi9cbiAgcGFuZWxzOiBQYW5lbEl0ZW1bXTtcbiAgLyoqIFBlcnNpc3Qgc2l6ZXMgKGtleWVkIGJ5IGBwZXJzaXN0ZW5jZUtleWAgKyB0aGUgY3VycmVudCBwYW5lbC1pZCBzZXQpLiAqL1xuICBwZXJzaXN0ZW5jZUtleT86IHN0cmluZztcbiAgc3RvcmFnZT86IExheW91dFN0b3JhZ2U7XG4gIC8qKiBSZWYgY2FsbGJhY2sgZm9yIGEgcGFuZWwncyBjb250ZW50IGhvc3QgYDxkaXY+YCAoY29uc3VtZXIgcG9ydGFscyBpbnRvIGl0KS4gKi9cbiAgaG9zdEZvcjogKGlkOiBzdHJpbmcpID0+IChlbDogSFRNTEVsZW1lbnQgfCBudWxsKSA9PiB2b2lkO1xuICAvKiogUmVwb3J0cyBhIHNldHRsZWQgZHJhZy1yZXNpemUgKHNpemUgYXMgYSBcIiVcIiBzdHJpbmcpLiAqL1xuICBvblJlc2l6ZTogKGlkOiBzdHJpbmcsIHNpemU6IHN0cmluZykgPT4gdm9pZDtcbiAgLyoqIFJlcG9ydHMgYSBkcmFnIHBhc3QgYG1pblNpemVgIG9uIGEgY29sbGFwc2libGUgcGFuZWwuICovXG4gIG9uQ29sbGFwc2U6IChpZDogc3RyaW5nKSA9PiB2b2lkO1xufTtcblxuLy8gZmxleEdyb3cgYXQvYmVsb3cgdGhpcyBpcyB0cmVhdGVkIGFzIGEgZHJhZy10by1jb2xsYXBzZSBnZXN0dXJlLlxuY29uc3QgQ09MTEFQU0VfRVBTSUxPTiA9IDAuNTtcblxuLy8gcmVhY3QtcmVzaXphYmxlLXBhbmVscyBwZXJzaXN0cyBub3RoaW5nIHdoZW4gZ2l2ZW4gYSBuby1vcCBzdG9yYWdlLlxuY29uc3QgTk9PUF9TVE9SQUdFOiBMYXlvdXRTdG9yYWdlID0geyBnZXRJdGVtOiAoKSA9PiBudWxsLCBzZXRJdGVtOiAoKSA9PiB7fSB9O1xuXG4vKipcbiAqIFN0b3JhZ2UgZm9yIHNpemUgcGVyc2lzdGVuY2U6IHJlYWwgb25seSB3aGVuIEJPVEggYSBgcGVyc2lzdGVuY2VLZXlgIGFuZCBhXG4gKiBgc3RvcmFnZWAgYXJlIHByb3ZpZGVkLiBObyBpbXBsaWNpdCBgd2luZG93LmxvY2FsU3RvcmFnZWAgZmFsbGJhY2sg4oCUXG4gKiBwZXJzaXN0ZW5jZSBpcyBzdHJpY3RseSBvcHQtaW4uXG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVTaXplU3RvcmFnZShcbiAgcGVyc2lzdGVuY2VLZXk6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgc3RvcmFnZTogTGF5b3V0U3RvcmFnZSB8IHVuZGVmaW5lZFxuKTogTGF5b3V0U3RvcmFnZSB7XG4gIGlmICghcGVyc2lzdGVuY2VLZXkgfHwgIXN0b3JhZ2UpIHJldHVybiBOT09QX1NUT1JBR0U7XG4gIHJldHVybiBzdG9yYWdlO1xufVxuXG4vKipcbiAqIEludGVybmFsIHJlc2l6YWJsZSBwYW5lbCByb3cg4oCUIHRoZSBvbmx5IHdyYXBwZXIgYXJvdW5kIHJlYWN0LXJlc2l6YWJsZS1wYW5lbHMuXG4gKiBSZW5kZXJzIG9uZSBQYW5lbCBwZXIgaXRlbSB3aXRoIGEgY29udGVudCBob3N0IGA8ZGl2PmAgKHJlZidkIGJhY2sgdmlhXG4gKiBgaG9zdEZvcmApLCBwZXJzaXN0cyBzaXplcywgYW5kIHJlcG9ydHMgZHJhZy1yZXNpemUgLyBkcmFnLXRvLWNvbGxhcHNlLiBUaGVcbiAqIHB1YmxpYyBgTGF5b3V0YCBjb21wb25lbnQgaXMgdGhlIGludGVuZGVkIGNvbnN1bWVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gUGFuZWwoe1xuICBwYW5lbHMsXG4gIHBlcnNpc3RlbmNlS2V5LFxuICBzdG9yYWdlLFxuICBob3N0Rm9yLFxuICBvblJlc2l6ZSxcbiAgb25Db2xsYXBzZSxcbn06IFBhbmVsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IGRlZmF1bHRMYXlvdXQsIG9uTGF5b3V0Q2hhbmdlZDogcGVyc2lzdFNpemVzIH0gPSB1c2VEZWZhdWx0TGF5b3V0KHtcbiAgICBpZDogcGVyc2lzdGVuY2VLZXkgPz8gXCJkcy1sYXlvdXRcIixcbiAgICBwYW5lbElkczogcGFuZWxzLm1hcCgocCkgPT4gcC5pZCksXG4gICAgc3RvcmFnZTogcmVzb2x2ZVNpemVTdG9yYWdlKHBlcnNpc3RlbmNlS2V5LCBzdG9yYWdlKSxcbiAgfSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q3VzdG9tR3JvdXBcbiAgICAgIG9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICBkZWZhdWx0TGF5b3V0PXtkZWZhdWx0TGF5b3V0fVxuICAgICAgb25MYXlvdXRDaGFuZ2VkPXsobGF5b3V0KSA9PiB7XG4gICAgICAgIHBlcnNpc3RTaXplcyhsYXlvdXQpOyAvLyBsaWJyYXJ5IHNhdmVzIHRoZSBzaXplc1xuICAgICAgICBwYW5lbHMuZm9yRWFjaCgoeyBpZCwgY29sbGFwc2libGUgfSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHBjdCA9IGxheW91dFtpZF07XG4gICAgICAgICAgaWYgKHR5cGVvZiBwY3QgIT09IFwibnVtYmVyXCIpIHJldHVybjtcbiAgICAgICAgICBpZiAoY29sbGFwc2libGUgJiYgcGN0IDwgQ09MTEFQU0VfRVBTSUxPTikge1xuICAgICAgICAgICAgb25Db2xsYXBzZShpZCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChwY3QgPj0gQ09MTEFQU0VfRVBTSUxPTikgb25SZXNpemUoaWQsIGAke3BjdH0lYCk7XG4gICAgICAgIH0pO1xuICAgICAgfX1cbiAgICA+XG4gICAgICB7cGFuZWxzLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT17aXRlbS5pZH0+XG4gICAgICAgICAge2luZGV4ID4gMCAmJiA8U2VwYXJhdG9yIC8+fVxuICAgICAgICAgIDxSZXNpemFibGVQYW5lbFxuICAgICAgICAgICAgaWQ9e2l0ZW0uaWR9XG4gICAgICAgICAgICBkZWZhdWx0U2l6ZT17aXRlbS5kZWZhdWx0U2l6ZX1cbiAgICAgICAgICAgIGNvbGxhcHNpYmxlPXtpdGVtLmNvbGxhcHNpYmxlfVxuICAgICAgICAgICAgbWluU2l6ZT17aXRlbS5taW5TaXplfVxuICAgICAgICAgICAgbWF4U2l6ZT17aXRlbS5tYXhTaXplfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTdHlsZWRQb3J0YWxDb250YWluZXIgcmVmPXtob3N0Rm9yKGl0ZW0uaWQpfSAvPlxuICAgICAgICAgIDwvUmVzaXphYmxlUGFuZWw+XG4gICAgICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICAgICApKX1cbiAgICA8L0N1c3RvbUdyb3VwPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCOEIifQ== */"),NOOP_STORAGE={getItem:()=>null,setItem:()=>{}};export function Panel({panels,persistenceKey,storage,hostFor,onResize,onCollapse}){let{defaultLayout,onLayoutChanged:persistSizes}=useDefaultLayout({id:persistenceKey??"ds-layout",panelIds:panels.map(p=>p.id),storage:persistenceKey&&storage?storage:NOOP_STORAGE});return React.createElement(CustomGroup,{orientation:"horizontal",defaultLayout:defaultLayout,onLayoutChanged:layout=>{persistSizes(layout),panels.forEach(({id,collapsible})=>{let pct=layout[id];if("number"==typeof pct){if(collapsible&&pct<.5)return void onCollapse(id);pct>=.5&&onResize(id,`${pct}%`)}})}},panels.map((item,index)=>React.createElement(React.Fragment,{key:item.id},index>0&&React.createElement(Separator,null),React.createElement(ResizablePanel,{id:item.id,defaultSize:item.defaultSize,collapsible:item.collapsible,minSize:item.minSize,maxSize:item.maxSize},React.createElement(StyledPortalContainer,{ref:hostFor(item.id)})))))}
@@ -0,0 +1,2 @@
1
+ export { Panel } from "./Panel";
2
+ export type { PanelItem, PanelProps } from "./Panel";
@@ -0,0 +1 @@
1
+ export{Panel}from"./Panel";
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Slot keys — the single source of truth. The key *types* (`SlotKey`,
3
+ * `SidePanelKey`, `PanelKey`) are derived from these const values below and
4
+ * re-exported by `-types.ts`, so the literals are written exactly once.
5
+ */
6
+ /** Slot keys as named constants — reference these instead of bare literals. */
7
+ export declare const Slot: {
8
+ readonly sidebar: "sidebar";
9
+ readonly content: "content";
10
+ readonly splitview: "splitview";
11
+ readonly rightPanel: "rightPanel";
12
+ };
13
+ /** Side panels (open/close), left + right. */
14
+ export declare const SIDE_PANELS: readonly ["sidebar", "rightPanel"];
15
+ /** Flex panels — content is always shown; splitview toggles. */
16
+ export declare const PANELS: readonly ["content", "splitview"];
17
+ /** Left-to-right panel order in the resizable row (the full slot set). */
18
+ export declare const PANEL_ORDER: readonly ["sidebar", "content", "splitview", "rightPanel"];
19
+ export type SlotKey = (typeof PANEL_ORDER)[number];
20
+ export type SidePanelKey = (typeof SIDE_PANELS)[number];
21
+ export type PanelKey = (typeof PANELS)[number];
22
+ /** Slide-animation timing. Injected on `:root` by `Layout.Provider` (`SlideVars`)
23
+ * from the theme's `navSlide` token; read by animated layout surfaces. */
24
+ export declare const SLIDE_VAR: {
25
+ readonly duration: "--ds-layout-slide-duration";
26
+ readonly easing: "--ds-layout-slide-easing";
27
+ };
28
+ /** Vertical offset for the right panel — set this (e.g. to a sticky subnav's
29
+ * height) and the panel tracks it; defaults to `0` when unset. */
30
+ export declare const SUBNAV_OFFSET_VAR = "--ds-layout-subnav-offset";
@@ -0,0 +1 @@
1
+ export const Slot={sidebar:"sidebar",content:"content",splitview:"splitview",rightPanel:"rightPanel"};export const SIDE_PANELS=[Slot.sidebar,Slot.rightPanel];export const PANELS=[Slot.content,Slot.splitview];export const PANEL_ORDER=[Slot.sidebar,Slot.content,Slot.splitview,Slot.rightPanel];export const SLIDE_VAR={duration:"--ds-layout-slide-duration",easing:"--ds-layout-slide-easing"};export const SUBNAV_OFFSET_VAR="--ds-layout-subnav-offset";
@@ -0,0 +1,171 @@
1
+ import type React from "react";
2
+ import type { PanelKey, SidePanelKey, SlotKey } from "./-constants";
3
+ /**
4
+ * Surface = compound components (`Layout.Sidebar` / `Layout.RightPanel` /
5
+ * `Layout.Content` / `Layout.Split`) + one control hook
6
+ * (`useLayout()`). The manager owns the open/collapsed/size state; components
7
+ * render per that state. State engine is replaceable (see `LayoutStore`).
8
+ *
9
+ * Slots (max 4 panels, max 3 visible at once — budget enforcement deferred):
10
+ * sidebar | content | splitview | rightPanel
11
+ */
12
+ /** A size: plain number = pixels; unitless string = percentage ("10%"). */
13
+ export type Size = number | string;
14
+ /**
15
+ * - `sidebar` — in-flow resizable panel.
16
+ * - `offcanvas` — detached desktop overlay. ⚠️ **RESERVED — not implemented yet.**
17
+ * Currently treated like `sidebar` (renders in-flow); the overlay
18
+ * implementation lands in a later commit.
19
+ */
20
+ export type Variant = "sidebar" | "offcanvas";
21
+ export type { PanelKey, SidePanelKey, SlotKey };
22
+ export type SidePanelState = {
23
+ kind: "sidePanel";
24
+ /** Shown vs hidden. */
25
+ visible: boolean;
26
+ /** Whether it can collapse at all. */
27
+ collapsible: boolean;
28
+ /** Render style. */
29
+ variant: Variant;
30
+ /** Current size (px number or "%" string). */
31
+ size?: Size;
32
+ /** Constraint from config (component prop overrides). */
33
+ minSize?: Size;
34
+ maxSize?: Size;
35
+ };
36
+ export type PanelState = {
37
+ kind: "panel";
38
+ /** content is always visible; splitview is toggleable. */
39
+ visible: boolean;
40
+ size?: Size;
41
+ /** Constraint from config (component prop overrides). */
42
+ minSize?: Size;
43
+ maxSize?: Size;
44
+ };
45
+ export type LayoutState = {
46
+ sidebar: SidePanelState;
47
+ rightPanel: SidePanelState;
48
+ content: PanelState;
49
+ splitview: PanelState;
50
+ };
51
+ export type SidePanelConfig = {
52
+ defaultVisible?: boolean;
53
+ collapsible?: boolean;
54
+ variant?: Variant;
55
+ defaultSize?: Size;
56
+ minSize?: Size;
57
+ maxSize?: Size;
58
+ };
59
+ export type PanelConfig = {
60
+ defaultVisible?: boolean;
61
+ defaultSize?: Size;
62
+ minSize?: Size;
63
+ maxSize?: Size;
64
+ };
65
+ export type LayoutConfig = {
66
+ sidebar?: SidePanelConfig;
67
+ rightPanel?: SidePanelConfig;
68
+ content?: PanelConfig;
69
+ splitview?: PanelConfig;
70
+ };
71
+ export type LayoutAction = {
72
+ type: "setVisible";
73
+ slot: SlotKey;
74
+ visible: boolean;
75
+ } | {
76
+ type: "setVariant";
77
+ panel: SidePanelKey;
78
+ variant: Variant;
79
+ } | {
80
+ type: "resize";
81
+ slot: SlotKey;
82
+ size: Size;
83
+ }
84
+ /** Restore one slot (or all, if omitted) to its config-default state.
85
+ * Page panels default hidden, so this also hides them — handy on unmount. */
86
+ | {
87
+ type: "reset";
88
+ slot?: SlotKey;
89
+ };
90
+ export type LayoutReducer = (state: LayoutState, action: LayoutAction,
91
+ /** Config-default state, used by the `reset` action. */
92
+ initial?: LayoutState) => LayoutState;
93
+ /**
94
+ * Replaceable state engine. Matches `useSyncExternalStore` + zustand/redux
95
+ * conventions. The manager depends only on this interface, so a zustand-backed
96
+ * store can be injected via `<LayoutProvider store={…}>`.
97
+ */
98
+ export type LayoutStore = {
99
+ getState: () => LayoutState;
100
+ dispatch: (action: LayoutAction) => void;
101
+ subscribe: (listener: () => void) => () => void;
102
+ };
103
+ export type LayoutStorage = {
104
+ getItem: (key: string) => string | null;
105
+ setItem: (key: string, value: string) => void;
106
+ };
107
+ export type SidePanelHandle = {
108
+ state: SidePanelState;
109
+ isVisible: boolean;
110
+ show: () => void;
111
+ hide: () => void;
112
+ resize: (size: Size) => void;
113
+ setVariant: (variant: Variant) => void;
114
+ /** Restore this slot to its config default (hides it for page panels). */
115
+ reset: () => void;
116
+ };
117
+ export type PanelHandle = {
118
+ state: PanelState;
119
+ isVisible: boolean;
120
+ show: () => void;
121
+ hide: () => void;
122
+ resize: (size: Size) => void;
123
+ /** Restore this slot to its config default (hides it for page panels). */
124
+ reset: () => void;
125
+ };
126
+ export type LayoutValue = {
127
+ state: LayoutState;
128
+ sidebar: SidePanelHandle;
129
+ rightPanel: SidePanelHandle;
130
+ content: PanelHandle;
131
+ splitview: PanelHandle;
132
+ };
133
+ export type SidePanelProps = {
134
+ children: React.ReactNode;
135
+ variant?: Variant;
136
+ collapsible?: boolean;
137
+ defaultSize?: Size;
138
+ minSize?: Size;
139
+ maxSize?: Size;
140
+ /** Called whenever the panel's visibility changes, with the new value. */
141
+ onVisibleChange?: (visible: boolean) => void;
142
+ };
143
+ export type ContentProps = {
144
+ children: React.ReactNode;
145
+ minSize?: Size;
146
+ maxSize?: Size;
147
+ };
148
+ export type SplitProps = {
149
+ children: React.ReactNode;
150
+ defaultSize?: Size;
151
+ minSize?: Size;
152
+ maxSize?: Size;
153
+ };
154
+ export type LayoutProviderProps = {
155
+ children: React.ReactNode;
156
+ config?: LayoutConfig;
157
+ store?: LayoutStore;
158
+ /** Persistence config for the whole layout namespace. The Provider does NOT
159
+ * read these — it publishes them to the nested `<Layout>` (which owns
160
+ * persistence). Kept here so consumers configure everything in one place. */
161
+ persistenceKey?: string;
162
+ storage?: LayoutStorage;
163
+ };
164
+ export type LayoutProps = {
165
+ children: React.ReactNode;
166
+ /** Persist panel SIZES (via react-resizable-panels), keyed by this. Open/
167
+ * visible/variant ("intent") persistence is separate and deferred. Falls
168
+ * back to the values on `Layout.Provider` when omitted. */
169
+ persistenceKey?: string;
170
+ storage?: LayoutStorage;
171
+ };
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,7 @@
1
+ import type React from "react";
2
+ import type { ContentProps } from "./-types";
3
+ /**
4
+ * Primary content panel. Always shown (never collapsible) and flexes to fill the
5
+ * space the side panels leave. Declares the `content` slot and portals into it.
6
+ */
7
+ export declare const Content: React.FC<ContentProps>;
@@ -0,0 +1 @@
1
+ import{Slot}from"./-constants";import{useDeclarePanel,useLayoutPortal}from"./registry";export const Content=({children,minSize,maxSize})=>(useDeclarePanel(Slot.content,{minSize,maxSize,collapsible:!1}),useLayoutPortal(Slot.content,children));
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { LayoutProvider } from "./LayoutProvider";
3
+ import { Content } from "./Content";
4
+ import { RightPanel } from "./RightPanel";
5
+ import { Sidebar } from "./Sidebar";
6
+ import { Split } from "./Split";
7
+ import type { LayoutProps } from "./-types";
8
+ declare function LayoutBase({ children, persistenceKey, storage, }: LayoutProps): React.ReactElement;
9
+ type LayoutComponent = typeof LayoutBase & {
10
+ Provider: typeof LayoutProvider;
11
+ Sidebar: typeof Sidebar;
12
+ RightPanel: typeof RightPanel;
13
+ Content: typeof Content;
14
+ Split: typeof Split;
15
+ };
16
+ export declare const Layout: LayoutComponent;
17
+ export {};