@viasat/beam-react 2.26.1 → 2.27.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 (37) hide show
  1. package/assets/panel.css +1 -1
  2. package/chunks/panel.module.Cb7pqpht.js +1 -0
  3. package/chunks/{panel.module.DJLJpnm_.js → panel.module.FuwYDPMC.js} +1 -0
  4. package/lib/wip/Panel/Panel.Body.cjs.js +1 -1
  5. package/lib/wip/Panel/Panel.Body.es.js +1 -1
  6. package/lib/wip/Panel/Panel.Footer.Actions.cjs.js +1 -1
  7. package/lib/wip/Panel/Panel.Footer.Actions.es.js +1 -1
  8. package/lib/wip/Panel/Panel.Footer.cjs.js +1 -1
  9. package/lib/wip/Panel/Panel.Footer.es.js +1 -1
  10. package/lib/wip/Panel/Panel.Header.ContentAfter.cjs.js +1 -1
  11. package/lib/wip/Panel/Panel.Header.ContentAfter.es.js +1 -1
  12. package/lib/wip/Panel/Panel.Header.ContentBefore.cjs.js +1 -1
  13. package/lib/wip/Panel/Panel.Header.ContentBefore.es.js +1 -1
  14. package/lib/wip/Panel/Panel.Header.Description.cjs.js +1 -1
  15. package/lib/wip/Panel/Panel.Header.Description.es.js +1 -1
  16. package/lib/wip/Panel/Panel.Header.Heading.cjs.js +1 -1
  17. package/lib/wip/Panel/Panel.Header.Heading.es.js +1 -1
  18. package/lib/wip/Panel/Panel.Header.Row.cjs.js +1 -1
  19. package/lib/wip/Panel/Panel.Header.Row.es.js +1 -1
  20. package/lib/wip/Panel/Panel.Header.Subheader.cjs.js +1 -1
  21. package/lib/wip/Panel/Panel.Header.Subheader.es.js +1 -1
  22. package/lib/wip/Panel/Panel.Header.cjs.js +1 -1
  23. package/lib/wip/Panel/Panel.Header.es.js +1 -1
  24. package/lib/wip/Panel/Panel.Inline.cjs.js +1 -1
  25. package/lib/wip/Panel/Panel.Inline.es.js +1 -1
  26. package/lib/wip/Panel/Panel.Overlay.cjs.js +1 -1
  27. package/lib/wip/Panel/Panel.Overlay.d.ts +3 -2
  28. package/lib/wip/Panel/Panel.Overlay.es.js +47 -41
  29. package/lib/wip/Panel/Panel.cjs.js +1 -1
  30. package/lib/wip/Panel/Panel.d.ts +1 -1
  31. package/lib/wip/Panel/Panel.es.js +73 -70
  32. package/lib/wip/Panel/Panel.helpers.cjs.js +1 -1
  33. package/lib/wip/Panel/Panel.helpers.d.ts +2 -1
  34. package/lib/wip/Panel/Panel.helpers.es.js +28 -23
  35. package/lib/wip/Panel/Panel.types.d.ts +21 -0
  36. package/package.json +6 -6
  37. package/chunks/panel.module.DCpj0tSX.js +0 -1
package/assets/panel.css CHANGED
@@ -1 +1 @@
1
- :root,:host,.bm-light,.bm-dark .bm-inverse,.bm-dark.bm-inverse,[data-bm-theme~=bm-dark] .bm-inverse,[data-bm-theme~=bm-dark].bm-inverse,.bm-enterprise,.bm-consumer,[data-bm-theme~=bm-light]{--bm-comp-panel-size-sm:20rem;--bm-comp-panel-size-md:27.5rem;--bm-comp-panel-size-lg:40rem;--bm-comp-panel-space-x-sm:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-x-md:var(--bm-sem-space-150,1.5rem);--bm-comp-panel-space-header-pad-top:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-header-pad-bottom:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-header-gap-y:var(--bm-sem-space-25,.25rem);--bm-comp-panel-space-header-gap-x:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-pad-top:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-footer-pad-bottom:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-footer-gap-actions:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-gap-actions-stack:var(--bm-sem-space-100,1rem);--bm-comp-panel-radius:var(--bm-sem-radius-lg,1rem);--bm-comp-panel-shadow:var(--bm-sem-shadow-overlay,0 .25rem .75rem .125rem #0000001f);--bm-comp-panel-typo-heading:var(--bm-sem-typo-heading-sm,700 1.125rem/1.5rem "Uni Neue");--bm-comp-panel-typo-description:var(--bm-sem-typo-body-sm,400 .875rem/1.25rem "Source Sans Pro");--bm-comp-panel-color-heading:var(--bm-sem-color-text-primary,#141d24);--bm-comp-panel-color-description:var(--bm-sem-color-text-secondary,#576775)}:host,.bm-dark,.bm-light .bm-inverse,.bm-light.bm-inverse,[data-bm-theme~=bm-light] .bm-inverse,[data-bm-theme~=bm-light].bm-inverse,.bm-enterprise,.bm-consumer,[data-bm-theme~=bm-dark]{--bm-comp-panel-size-sm:20rem;--bm-comp-panel-size-md:27.5rem;--bm-comp-panel-size-lg:40rem;--bm-comp-panel-space-x-sm:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-x-md:var(--bm-sem-space-150,1.5rem);--bm-comp-panel-space-header-pad-top:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-header-pad-bottom:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-header-gap-y:var(--bm-sem-space-25,.25rem);--bm-comp-panel-space-header-gap-x:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-pad-top:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-footer-pad-bottom:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-footer-gap-actions:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-gap-actions-stack:var(--bm-sem-space-100,1rem);--bm-comp-panel-radius:var(--bm-sem-radius-lg,1rem);--bm-comp-panel-shadow:var(--bm-sem-shadow-overlay,0 .25rem .75rem .125rem #0000004d);--bm-comp-panel-typo-heading:var(--bm-sem-typo-heading-sm,700 1.125rem/1.5rem "Uni Neue");--bm-comp-panel-typo-description:var(--bm-sem-typo-body-sm,400 .875rem/1.25rem "Source Sans Pro");--bm-comp-panel-color-heading:var(--bm-sem-color-text-primary,#fff);--bm-comp-panel-color-description:var(--bm-sem-color-text-secondary,#c3cdd5)}.bm-panel{background-color:var(--bm-sem-color-surface-01);flex-direction:column;width:20rem;display:flex}.bm-panel--inline{height:100%;box-shadow:var(--bm-sem-shadow-none);position:relative}.bm-panel--overlay{z-index:999;box-shadow:var(--bm-comp-panel-shadow);overscroll-behavior:contain;position:fixed;overflow:auto}.bm-panel--overlay.bm-panel--position-start{top:0;bottom:0;left:0}.bm-panel--overlay.bm-panel--position-end{top:0;bottom:0;right:0}.bm-panel--overlay.bm-panel--position-bottom{height:auto;max-height:90dvh;bottom:0;left:0;right:0}.bm-panel--overlay.bm-panel--position-bottom.bm-panel--size-full{height:100dvh;max-height:none}.bm-panel--overlay.bm-panel--position-full{top:0;bottom:0;left:0;right:0}.bm-panel--size-full{width:100%}.bm-panel--position-bottom{width:100%;height:auto}.bm-panel--position-bottom>.bm-panel__body{min-height:0}.bm-panel--padding-sm .bm-panel__header,.bm-panel--padding-sm .bm-panel__body,.bm-panel--padding-sm .bm-panel__footer{padding-left:var(--bm-comp-panel-space-x-sm);padding-right:var(--bm-comp-panel-space-x-sm)}.bm-panel--padding-md .bm-panel__header,.bm-panel--padding-md .bm-panel__body,.bm-panel--padding-md .bm-panel__footer{padding-left:var(--bm-comp-panel-space-x-md);padding-right:var(--bm-comp-panel-space-x-md)}.bm-panel__header{gap:var(--bm-comp-panel-space-header-gap-y);padding-top:var(--bm-comp-panel-space-header-pad-top);padding-bottom:var(--bm-comp-panel-space-header-pad-bottom);flex-direction:column;display:flex}.bm-panel__header__row{gap:var(--bm-comp-panel-space-header-gap-x);align-items:flex-start;display:flex}.bm-panel__header__content-before{gap:var(--bm-comp-panel-space-header-gap-x);flex-direction:row;display:flex}.bm-panel__header__content-after{gap:var(--bm-comp-panel-space-header-gap-x);align-items:flex-start;display:flex}.bm-panel__header__heading{font:var(--bm-comp-panel-typo-heading);color:var(--bm-comp-panel-color-heading);flex:1}.bm-panel__header__description{font:var(--bm-comp-panel-typo-description);color:var(--bm-comp-panel-color-description)}.bm-panel__header__close-button{width:var(--bm-sem-size-icon-lg);height:var(--bm-sem-size-icon-lg);justify-content:center;align-items:center;display:flex}.bm-panel__body{font:var(--bm-comp-panel-typo-description);color:var(--bm-comp-panel-color-description);flex:1;overflow:auto}.bm-panel__footer{gap:var(--bm-comp-panel-space-footer-gap-actions);padding-top:var(--bm-comp-panel-space-footer-pad-top);padding-bottom:var(--bm-comp-panel-space-footer-pad-bottom);flex-direction:column;display:flex}.bm-panel__footer__actions{gap:var(--bm-comp-panel-space-footer-gap-actions);flex-wrap:wrap;flex-shrink:0;align-content:center;align-items:center;display:flex}.bm-panel__footer__actions--start{justify-content:flex-start}.bm-panel__footer__actions--end{justify-content:flex-end}.bm-panel__footer__actions--spaceBetween{justify-content:space-between}.bm-panel__footer__actions--stacked{justify-content:center;gap:var(--bm-comp-panel-space-footer-gap-actions-stack);flex-direction:column}.bm-panel__overlay-divider{position:absolute}.bm-panel__overlay-divider--start{top:0;bottom:0;right:0}.bm-panel__overlay-divider--end{top:0;bottom:0;left:0}.bm-panel__overlay-divider--bottom{top:0;left:0;right:0}.bm-panel--overlay[data-position=start]{transform:translate(-100%)}.bm-panel--overlay[data-position=start][data-status=open]{transition:transform .4s ease-out;transform:translate(0)}.bm-panel--overlay[data-position=start][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=end]{transform:translate(100%)}.bm-panel--overlay[data-position=end][data-status=open]{transition:transform .4s ease-out;transform:translate(0)}.bm-panel--overlay[data-position=end][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=bottom]{transform:translateY(100%)}.bm-panel--overlay[data-position=bottom][data-status=open]{transition:transform .4s ease-out;transform:translateY(0)}.bm-panel--overlay[data-position=bottom][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=full]{opacity:0}.bm-panel--overlay[data-position=full][data-status=open]{opacity:1;transition:opacity .4s ease-out}.bm-panel--overlay[data-position=full][data-status=close]{transition:opacity .4s ease-in}.bm-panel__inline-wrapper{flex-shrink:0;overflow:hidden}.bm-panel__inline-wrapper[data-status]{width:0;transition:width .4s ease-in}.bm-panel__inline-wrapper[data-status=open]{width:20rem;transition:width .4s ease-out}.bm-panel__inline-wrapper[data-position=bottom][data-status]{width:100%}.bm-panel__inline-wrapper[data-position=bottom][data-status] .bm-panel__inline-wrapper-content{transition:transform .4s ease-in;transform:translateY(100%)}.bm-panel__inline-wrapper[data-position=bottom][data-status=open] .bm-panel__inline-wrapper-content{transition:transform .4s ease-out;transform:translateY(0)}.bm-panel__inline-wrapper--full[data-status=open]{width:100%}.bm-panel__inline-wrapper-content{height:100%}
1
+ :root,:host,.bm-light,.bm-dark .bm-inverse,.bm-dark.bm-inverse,[data-bm-theme~=bm-dark] .bm-inverse,[data-bm-theme~=bm-dark].bm-inverse,.bm-enterprise,.bm-consumer,[data-bm-theme~=bm-light]{--bm-comp-panel-size-sm:20rem;--bm-comp-panel-size-md:27.5rem;--bm-comp-panel-size-lg:40rem;--bm-comp-panel-space-x-sm:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-x-md:var(--bm-sem-space-150,1.5rem);--bm-comp-panel-space-header-pad-top:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-header-pad-bottom:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-header-gap-y:var(--bm-sem-space-25,.25rem);--bm-comp-panel-space-header-gap-x:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-pad-top:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-footer-pad-bottom:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-footer-gap-actions:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-gap-actions-stack:var(--bm-sem-space-100,1rem);--bm-comp-panel-radius:var(--bm-sem-radius-lg,1rem);--bm-comp-panel-shadow:var(--bm-sem-shadow-overlay,0 .25rem .75rem .125rem #0000001f);--bm-comp-panel-typo-heading:var(--bm-sem-typo-heading-sm,700 1.125rem/1.5rem "Uni Neue");--bm-comp-panel-typo-description:var(--bm-sem-typo-body-sm,400 .875rem/1.25rem "Source Sans Pro");--bm-comp-panel-color-heading:var(--bm-sem-color-text-primary,#141d24);--bm-comp-panel-color-description:var(--bm-sem-color-text-secondary,#576775)}:host,.bm-dark,.bm-light .bm-inverse,.bm-light.bm-inverse,[data-bm-theme~=bm-light] .bm-inverse,[data-bm-theme~=bm-light].bm-inverse,.bm-enterprise,.bm-consumer,[data-bm-theme~=bm-dark]{--bm-comp-panel-size-sm:20rem;--bm-comp-panel-size-md:27.5rem;--bm-comp-panel-size-lg:40rem;--bm-comp-panel-space-x-sm:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-x-md:var(--bm-sem-space-150,1.5rem);--bm-comp-panel-space-header-pad-top:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-header-pad-bottom:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-header-gap-y:var(--bm-sem-space-25,.25rem);--bm-comp-panel-space-header-gap-x:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-pad-top:var(--bm-sem-space-100,1rem);--bm-comp-panel-space-footer-pad-bottom:var(--bm-sem-space-125,1.25rem);--bm-comp-panel-space-footer-gap-actions:var(--bm-sem-space-50,.5rem);--bm-comp-panel-space-footer-gap-actions-stack:var(--bm-sem-space-100,1rem);--bm-comp-panel-radius:var(--bm-sem-radius-lg,1rem);--bm-comp-panel-shadow:var(--bm-sem-shadow-overlay,0 .25rem .75rem .125rem #0000004d);--bm-comp-panel-typo-heading:var(--bm-sem-typo-heading-sm,700 1.125rem/1.5rem "Uni Neue");--bm-comp-panel-typo-description:var(--bm-sem-typo-body-sm,400 .875rem/1.25rem "Source Sans Pro");--bm-comp-panel-color-heading:var(--bm-sem-color-text-primary,#fff);--bm-comp-panel-color-description:var(--bm-sem-color-text-secondary,#c3cdd5)}.bm-panel{background-color:var(--bm-sem-color-surface-01);flex-direction:column;width:20rem;display:flex}.bm-panel--inline{height:100%;box-shadow:var(--bm-sem-shadow-none);position:relative}.bm-panel--overlay{z-index:999;box-shadow:var(--bm-comp-panel-shadow);overscroll-behavior:contain;position:fixed;overflow:auto}.bm-panel--overlay.bm-panel--position-start{top:0;bottom:0;left:0}.bm-panel--overlay.bm-panel--position-end{top:0;bottom:0;right:0}.bm-panel--overlay.bm-panel--position-bottom{height:auto;max-height:90dvh;bottom:0;left:0;right:0}.bm-panel--overlay.bm-panel--position-bottom.bm-panel--size-full{height:100dvh;max-height:none}.bm-panel--overlay.bm-panel--position-full{top:0;bottom:0;left:0;right:0}.bm-panel--overlay.bm-panel--floating{border-radius:var(--bm-comp-panel-radius)}.bm-panel--overlay.bm-panel--floating.bm-panel--position-start{left:var(--bm-comp-panel-offset-x,1rem);top:var(--bm-comp-panel-offset-y,1rem);bottom:var(--bm-comp-panel-offset-y,1rem)}.bm-panel--overlay.bm-panel--floating.bm-panel--position-end{right:var(--bm-comp-panel-offset-x,1rem);top:var(--bm-comp-panel-offset-y,1rem);bottom:var(--bm-comp-panel-offset-y,1rem)}.bm-panel--overlay.bm-panel--floating.bm-panel--position-bottom{left:var(--bm-comp-panel-offset-x,1rem);right:var(--bm-comp-panel-offset-x,1rem);bottom:var(--bm-comp-panel-offset-y,1rem);width:auto}.bm-panel--overlay.bm-panel--floating.bm-panel--position-full{inset:var(--bm-comp-panel-offset-y,1rem)var(--bm-comp-panel-offset-x,1rem);width:auto}.bm-panel--size-full{width:100%}.bm-panel--position-bottom{width:100%;height:auto}.bm-panel--position-bottom>.bm-panel__body{min-height:0}.bm-panel--padding-sm .bm-panel__header,.bm-panel--padding-sm .bm-panel__body,.bm-panel--padding-sm .bm-panel__footer{padding-left:var(--bm-comp-panel-space-x-sm);padding-right:var(--bm-comp-panel-space-x-sm)}.bm-panel--padding-md .bm-panel__header,.bm-panel--padding-md .bm-panel__body,.bm-panel--padding-md .bm-panel__footer{padding-left:var(--bm-comp-panel-space-x-md);padding-right:var(--bm-comp-panel-space-x-md)}.bm-panel__header{gap:var(--bm-comp-panel-space-header-gap-y);padding-top:var(--bm-comp-panel-space-header-pad-top);padding-bottom:var(--bm-comp-panel-space-header-pad-bottom);flex-direction:column;display:flex}.bm-panel__header__row{gap:var(--bm-comp-panel-space-header-gap-x);align-items:flex-start;display:flex}.bm-panel__header__content-before{gap:var(--bm-comp-panel-space-header-gap-x);flex-direction:row;display:flex}.bm-panel__header__content-after{gap:var(--bm-comp-panel-space-header-gap-x);align-items:flex-start;display:flex}.bm-panel__header__heading{font:var(--bm-comp-panel-typo-heading);color:var(--bm-comp-panel-color-heading);flex:1}.bm-panel__header__description{font:var(--bm-comp-panel-typo-description);color:var(--bm-comp-panel-color-description)}.bm-panel__header__close-button{width:var(--bm-sem-size-icon-lg);height:var(--bm-sem-size-icon-lg);justify-content:center;align-items:center;display:flex}.bm-panel__body{font:var(--bm-comp-panel-typo-description);color:var(--bm-comp-panel-color-description);flex:1;overflow:auto}.bm-panel__footer{gap:var(--bm-comp-panel-space-footer-gap-actions);padding-top:var(--bm-comp-panel-space-footer-pad-top);padding-bottom:var(--bm-comp-panel-space-footer-pad-bottom);flex-direction:column;display:flex}.bm-panel__footer__actions{gap:var(--bm-comp-panel-space-footer-gap-actions);flex-wrap:wrap;flex-shrink:0;align-content:center;align-items:center;display:flex}.bm-panel__footer__actions--start{justify-content:flex-start}.bm-panel__footer__actions--end{justify-content:flex-end}.bm-panel__footer__actions--spaceBetween{justify-content:space-between}.bm-panel__footer__actions--stacked{justify-content:center;gap:var(--bm-comp-panel-space-footer-gap-actions-stack);flex-direction:column}.bm-panel__overlay-divider{position:absolute}.bm-panel__overlay-divider--start{top:0;bottom:0;right:0}.bm-panel__overlay-divider--end{top:0;bottom:0;left:0}.bm-panel__overlay-divider--bottom{top:0;left:0;right:0}.bm-panel--overlay[data-position=start]{transform:translate(-100%)}.bm-panel--overlay[data-position=start][data-status=open]{transition:transform .4s ease-out;transform:translate(0)}.bm-panel--overlay[data-position=start][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=end]{transform:translate(100%)}.bm-panel--overlay[data-position=end][data-status=open]{transition:transform .4s ease-out;transform:translate(0)}.bm-panel--overlay[data-position=end][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=bottom]{transform:translateY(100%)}.bm-panel--overlay[data-position=bottom][data-status=open]{transition:transform .4s ease-out;transform:translateY(0)}.bm-panel--overlay[data-position=bottom][data-status=close]{transition:transform .4s ease-in}.bm-panel--overlay[data-position=full]{opacity:0}.bm-panel--overlay[data-position=full][data-status=open]{opacity:1;transition:opacity .4s ease-out}.bm-panel--overlay[data-position=full][data-status=close]{transition:opacity .4s ease-in}.bm-panel__inline-wrapper{flex-shrink:0;overflow:hidden}.bm-panel__inline-wrapper[data-status]{width:0;transition:width .4s ease-in}.bm-panel__inline-wrapper[data-status=open]{width:20rem;transition:width .4s ease-out}.bm-panel__inline-wrapper[data-position=bottom][data-status]{width:100%}.bm-panel__inline-wrapper[data-position=bottom][data-status] .bm-panel__inline-wrapper-content{transition:transform .4s ease-in;transform:translateY(100%)}.bm-panel__inline-wrapper[data-position=bottom][data-status=open] .bm-panel__inline-wrapper-content{transition:transform .4s ease-out;transform:translateY(0)}.bm-panel__inline-wrapper--full[data-status=open]{width:100%}.bm-panel__inline-wrapper-content{height:100%}
@@ -0,0 +1 @@
1
+ var n=require("../assets/panel.css");const e={"bm-light":"bm-light","bm-dark":"bm-dark","bm-inverse":"bm-inverse","bm-enterprise":"bm-enterprise","bm-consumer":"bm-consumer","bm-panel":"bm-panel","bm-panel--inline":"bm-panel--inline","bm-panel--overlay":"bm-panel--overlay","bm-panel--position-start":"bm-panel--position-start","bm-panel--position-end":"bm-panel--position-end","bm-panel--position-bottom":"bm-panel--position-bottom","bm-panel--size-full":"bm-panel--size-full","bm-panel--position-full":"bm-panel--position-full","bm-panel--floating":"bm-panel--floating","bm-panel__body":"bm-panel__body","bm-panel--padding-sm":"bm-panel--padding-sm","bm-panel__header":"bm-panel__header","bm-panel__footer":"bm-panel__footer","bm-panel--padding-md":"bm-panel--padding-md","bm-panel__header__row":"bm-panel__header__row","bm-panel__header__content-before":"bm-panel__header__content-before","bm-panel__header__content-after":"bm-panel__header__content-after","bm-panel__header__heading":"bm-panel__header__heading","bm-panel__header__description":"bm-panel__header__description","bm-panel__header__close-button":"bm-panel__header__close-button","bm-panel__footer__actions":"bm-panel__footer__actions","bm-panel__footer__actions--start":"bm-panel__footer__actions--start","bm-panel__footer__actions--end":"bm-panel__footer__actions--end","bm-panel__footer__actions--spaceBetween":"bm-panel__footer__actions--spaceBetween","bm-panel__footer__actions--stacked":"bm-panel__footer__actions--stacked","bm-panel__overlay-divider":"bm-panel__overlay-divider","bm-panel__overlay-divider--start":"bm-panel__overlay-divider--start","bm-panel__overlay-divider--end":"bm-panel__overlay-divider--end","bm-panel__overlay-divider--bottom":"bm-panel__overlay-divider--bottom","bm-panel__inline-wrapper":"bm-panel__inline-wrapper","bm-panel__inline-wrapper-content":"bm-panel__inline-wrapper-content","bm-panel__inline-wrapper--full":"bm-panel__inline-wrapper--full"};exports.styles=e;
@@ -13,6 +13,7 @@ const n = {
13
13
  "bm-panel--position-bottom": "bm-panel--position-bottom",
14
14
  "bm-panel--size-full": "bm-panel--size-full",
15
15
  "bm-panel--position-full": "bm-panel--position-full",
16
+ "bm-panel--floating": "bm-panel--floating",
16
17
  "bm-panel__body": "bm-panel__body",
17
18
  "bm-panel--padding-sm": "bm-panel--padding-sm",
18
19
  "bm-panel__header": "bm-panel__header",
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),n=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const i=require("../../Box/Box.cjs.js"),u=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:m}=c.getBEMClassNames("panel"),d=`${m}body`,e=({children:s,className:o,backgroundColor:t,...r})=>{const a=n(u.styles[d],o);return l.jsx(i.Box,{className:a,backgroundColor:t,...r,children:s})};e.displayName="Panel.Body";exports.Body=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),n=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const i=require("../../Box/Box.cjs.js"),u=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:m}=c.getBEMClassNames("panel"),d=`${m}body`,e=({children:s,className:o,backgroundColor:t,...r})=>{const a=n(u.styles[d],o);return l.jsx(i.Box,{className:a,backgroundColor:t,...r,children:s})};e.displayName="Panel.Body";exports.Body=e;
@@ -3,7 +3,7 @@ import e from "clsx";
3
3
  import { g as l } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
5
  import { Box as p } from "../../Box/Box.es.js";
6
- import { s as i } from "../../../chunks/panel.module.DJLJpnm_.js";
6
+ import { s as i } from "../../../chunks/panel.module.FuwYDPMC.js";
7
7
  const { subElementClassPrefix: n } = l("panel"), c = `${n}body`, f = ({
8
8
  children: s,
9
9
  className: o,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),i=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const e=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:m}=u.getBEMClassNames("panel"),t=({layout:n="end",children:o,className:a,...c})=>{const s=`${m}footer__actions`,r=i(e.styles[s],e.styles[`${s}--${n}`],a);return l.jsx("div",{className:r,...c,children:o})};t.displayName="Panel.Footer.Actions";exports.Actions=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),i=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const e=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:m}=u.getBEMClassNames("panel"),t=({layout:n="end",children:o,className:a,...c})=>{const s=`${m}footer__actions`,r=i(e.styles[s],e.styles[`${s}--${n}`],a);return l.jsx("div",{className:r,...c,children:o})};t.displayName="Panel.Footer.Actions";exports.Actions=t;
@@ -2,7 +2,7 @@ import { jsx as n } from "react/jsx-runtime";
2
2
  import i from "clsx";
3
3
  import { g as c } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { s as o } from "../../../chunks/panel.module.DJLJpnm_.js";
5
+ import { s as o } from "../../../chunks/panel.module.FuwYDPMC.js";
6
6
  const { subElementClassPrefix: l } = c("panel"), p = ({
7
7
  layout: t = "end",
8
8
  children: a,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const _=require("../../Divider/Divider.cjs.js"),m=require("../../Box/Box.cjs.js"),b=require("./Panel.helpers.cjs.js"),d=require("./Panel.Footer.Actions.cjs.js"),q=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:x}=u.getBEMClassNames("panel"),P=`${x}footer`,s=({children:r,className:o,divider:t=!0,dividerColor:i=b.DEFAULT_PANEL_DIVIDER_COLOR,backgroundColor:n,...l})=>{const a=c(q.styles[P],o);return e.jsxs(e.Fragment,{children:[t&&e.jsx(_.Divider,{borderColor:i}),e.jsx(m.Box,{as:"footer",className:a,backgroundColor:n,...l,children:r})]})};s.displayName="Panel.Footer";s.Actions=d.Actions;exports.Footer=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const _=require("../../Divider/Divider.cjs.js"),m=require("../../Box/Box.cjs.js"),b=require("./Panel.helpers.cjs.js"),d=require("./Panel.Footer.Actions.cjs.js"),q=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:x}=u.getBEMClassNames("panel"),P=`${x}footer`,s=({children:r,className:o,divider:t=!0,dividerColor:i=b.DEFAULT_PANEL_DIVIDER_COLOR,backgroundColor:n,...l})=>{const a=c(q.styles[P],o);return e.jsxs(e.Fragment,{children:[t&&e.jsx(_.Divider,{borderColor:i}),e.jsx(m.Box,{as:"footer",className:a,backgroundColor:n,...l,children:r})]})};s.displayName="Panel.Footer";s.Actions=d.Actions;exports.Footer=s;
@@ -6,7 +6,7 @@ import { Divider as x } from "../../Divider/Divider.es.js";
6
6
  import { Box as C } from "../../Box/Box.es.js";
7
7
  import { DEFAULT_PANEL_DIVIDER_COLOR as E } from "./Panel.helpers.es.js";
8
8
  import { Actions as N } from "./Panel.Footer.Actions.es.js";
9
- import { s as d } from "../../../chunks/panel.module.DJLJpnm_.js";
9
+ import { s as d } from "../../../chunks/panel.module.FuwYDPMC.js";
10
10
  const { subElementClassPrefix: A } = c("panel"), D = `${A}footer`, r = ({
11
11
  children: s,
12
12
  className: t,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("clsx"),o=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:i}=o.getBEMClassNames("panel"),u=`${i}header`,e=({children:s,className:t,...n})=>{const r=l(c.styles[`${u}__content-after`],t);return a.jsx("div",{className:r,...n,children:s})};e.displayName="Panel.Header.ContentAfter";exports.ContentAfter=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("clsx"),o=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:i}=o.getBEMClassNames("panel"),u=`${i}header`,e=({children:s,className:t,...n})=>{const r=l(c.styles[`${u}__content-after`],t);return a.jsx("div",{className:r,...n,children:s})};e.displayName="Panel.Header.ContentAfter";exports.ContentAfter=e;
@@ -2,7 +2,7 @@ import { jsx as r } from "react/jsx-runtime";
2
2
  import o from "clsx";
3
3
  import { g as m } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { s as n } from "../../../chunks/panel.module.DJLJpnm_.js";
5
+ import { s as n } from "../../../chunks/panel.module.FuwYDPMC.js";
6
6
  const { subElementClassPrefix: l } = m("panel"), c = `${l}header`, f = ({
7
7
  children: s,
8
8
  className: e,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),a=require("clsx"),l=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:i}=l.getBEMClassNames("panel"),u=`${i}header`,e=({children:s,className:t,...n})=>{const r=a(c.styles[`${u}__content-before`],t);return o.jsx("div",{className:r,...n,children:s})};e.displayName="Panel.Header.ContentBefore";exports.ContentBefore=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),a=require("clsx"),l=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:i}=l.getBEMClassNames("panel"),u=`${i}header`,e=({children:s,className:t,...n})=>{const r=a(c.styles[`${u}__content-before`],t);return o.jsx("div",{className:r,...n,children:s})};e.displayName="Panel.Header.ContentBefore";exports.ContentBefore=e;
@@ -2,7 +2,7 @@ import { jsx as r } from "react/jsx-runtime";
2
2
  import a from "clsx";
3
3
  import { g as m } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { s as n } from "../../../chunks/panel.module.DJLJpnm_.js";
5
+ import { s as n } from "../../../chunks/panel.module.FuwYDPMC.js";
6
6
  const { subElementClassPrefix: l } = m("panel"), c = `${l}header`, f = ({
7
7
  children: e,
8
8
  className: s,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),n=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const l=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:o}=c.getBEMClassNames("panel"),u=`${o}header`,e=({children:s,className:r,...t})=>{const a=n(l.styles[`${u}__description`],r);return i.jsx("div",{className:a,...t,children:s})};e.displayName="Panel.Header.Description";exports.Description=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),n=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const l=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:o}=c.getBEMClassNames("panel"),u=`${o}header`,e=({children:s,className:r,...t})=>{const a=n(l.styles[`${u}__description`],r);return i.jsx("div",{className:a,...t,children:s})};e.displayName="Panel.Header.Description";exports.Description=e;
@@ -2,7 +2,7 @@ import { jsx as o } from "react/jsx-runtime";
2
2
  import t from "clsx";
3
3
  import { g as i } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { s as m } from "../../../chunks/panel.module.DJLJpnm_.js";
5
+ import { s as m } from "../../../chunks/panel.module.FuwYDPMC.js";
6
6
  const { subElementClassPrefix: l } = i("panel"), n = `${l}header`, p = ({
7
7
  children: s,
8
8
  className: e,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("react/jsx-runtime"),o=require("react"),g=require("clsx"),m=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const q=require("../../../chunks/FloatingUI.context.B15Tz_4h.js"),b=require("./Panel.context.cjs.js"),x=require("../../../utils/hooks/useId.cjs.js"),I=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:y}=m.getBEMClassNames("panel"),P=`${y}header`,a=({children:r,className:i,id:c,...l})=>{const u=x.useId(),e=c??u,d=g(I.styles[`${P}__heading`],i),t=o.useContext(b.PanelContext),n=o.useContext(q.BmFloatingUIContext),s=(t==null?void 0:t.kind)==="overlay"?n==null?void 0:n.setLabelId:void 0;return o.useLayoutEffect(()=>{if(!(!s||!e))return s(e),()=>s(void 0)},[e,s]),_.jsx("div",{id:e,className:d,...l,children:r})};a.displayName="Panel.Header.Heading";exports.Heading=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("react/jsx-runtime"),o=require("react"),g=require("clsx"),m=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const q=require("../../../chunks/FloatingUI.context.B15Tz_4h.js"),b=require("./Panel.context.cjs.js"),x=require("../../../utils/hooks/useId.cjs.js"),I=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:y}=m.getBEMClassNames("panel"),P=`${y}header`,a=({children:r,className:i,id:c,...l})=>{const u=x.useId(),e=c??u,d=g(I.styles[`${P}__heading`],i),t=o.useContext(b.PanelContext),n=o.useContext(q.BmFloatingUIContext),s=(t==null?void 0:t.kind)==="overlay"?n==null?void 0:n.setLabelId:void 0;return o.useLayoutEffect(()=>{if(!(!s||!e))return s(e),()=>s(void 0)},[e,s]),_.jsx("div",{id:e,className:d,...l,children:r})};a.displayName="Panel.Header.Heading";exports.Heading=a;
@@ -6,7 +6,7 @@ import "../../../chunks/constants.CKKGf1-i.js";
6
6
  import { B as g } from "../../../chunks/FloatingUI.context.D3kSM-y1.js";
7
7
  import { PanelContext as x } from "./Panel.context.es.js";
8
8
  import { useId as I } from "../../../utils/hooks/useId.es.js";
9
- import { s as b } from "../../../chunks/panel.module.DJLJpnm_.js";
9
+ import { s as b } from "../../../chunks/panel.module.FuwYDPMC.js";
10
10
  const { subElementClassPrefix: v } = u("panel"), y = `${v}header`, C = ({
11
11
  children: a,
12
12
  className: m,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),d=require("clsx"),b=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const m=require("../../CloseButton/CloseButton.cjs.js"),_=require("../../Tooltip/Tooltip.cjs.js"),p=require("./Panel.context.cjs.js"),t=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:x}=b.getBEMClassNames("panel"),l=`${x}header`,o=({children:n,className:r,...a})=>{const{dismissible:i,closeButtonAriaLabel:s,requestClose:c}=p.usePanelContext(),u=d(t.styles[`${l}__row`],r);return e.jsxs("div",{className:u,...a,children:[n,i&&e.jsx("div",{className:t.styles[`${l}__close-button`],children:e.jsx(_.Tooltip,{text:s,placement:"bottom",portalled:!0,role:{enabled:!1},children:e.jsx(m.CloseButton,{"aria-label":s,onClick:()=>c("closeButton"),size:"lg"})})})]})};o.displayName="Panel.Header.Row";exports.Row=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),d=require("clsx"),b=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const m=require("../../CloseButton/CloseButton.cjs.js"),_=require("../../Tooltip/Tooltip.cjs.js"),p=require("./Panel.context.cjs.js"),t=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:x}=b.getBEMClassNames("panel"),l=`${x}header`,o=({children:n,className:r,...a})=>{const{dismissible:i,closeButtonAriaLabel:s,requestClose:c}=p.usePanelContext(),u=d(t.styles[`${l}__row`],r);return e.jsxs("div",{className:u,...a,children:[n,i&&e.jsx("div",{className:t.styles[`${l}__close-button`],children:e.jsx(_.Tooltip,{text:s,placement:"bottom",portalled:!0,role:{enabled:!1},children:e.jsx(m.CloseButton,{"aria-label":s,onClick:()=>c("closeButton"),size:"lg"})})})]})};o.displayName="Panel.Header.Row";exports.Row=o;
@@ -5,7 +5,7 @@ import "../../../chunks/constants.CKKGf1-i.js";
5
5
  import { CloseButton as f } from "../../CloseButton/CloseButton.es.js";
6
6
  import { Tooltip as u } from "../../Tooltip/Tooltip.es.js";
7
7
  import { usePanelContext as b } from "./Panel.context.es.js";
8
- import { s as o } from "../../../chunks/panel.module.DJLJpnm_.js";
8
+ import { s as o } from "../../../chunks/panel.module.FuwYDPMC.js";
9
9
  const { subElementClassPrefix: x } = d("panel"), t = `${x}header`, C = ({
10
10
  children: l,
11
11
  className: r,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),n=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:o}=u.getBEMClassNames("panel"),i=`${o}header`,e=({children:s,className:a,...r})=>{const t=n(c.styles[`${i}__subheader`],a);return l.jsx("div",{className:t,...r,children:s})};e.displayName="Panel.Header.Subheader";exports.Subheader=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),n=require("clsx"),u=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const c=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:o}=u.getBEMClassNames("panel"),i=`${o}header`,e=({children:s,className:a,...r})=>{const t=n(c.styles[`${i}__subheader`],a);return l.jsx("div",{className:t,...r,children:s})};e.displayName="Panel.Header.Subheader";exports.Subheader=e;
@@ -2,7 +2,7 @@ import { jsx as m } from "react/jsx-runtime";
2
2
  import o from "clsx";
3
3
  import { g as t } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { s as l } from "../../../chunks/panel.module.DJLJpnm_.js";
5
+ import { s as l } from "../../../chunks/panel.module.FuwYDPMC.js";
6
6
  const { subElementClassPrefix: i } = t("panel"), n = `${i}header`, p = ({
7
7
  children: s,
8
8
  className: e,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),_=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const d=require("../../Divider/Divider.cjs.js"),u=require("../../Box/Box.cjs.js"),P=require("./Panel.helpers.cjs.js"),b=require("./Panel.Header.Row.cjs.js"),p=require("./Panel.Header.ContentBefore.cjs.js"),q=require("./Panel.Header.Heading.cjs.js"),H=require("./Panel.Header.ContentAfter.cjs.js"),C=require("./Panel.Header.Description.cjs.js"),m=require("./Panel.Header.Subheader.cjs.js"),w=require("../../../chunks/panel.module.DCpj0tSX.js"),{subElementClassPrefix:x}=c.getBEMClassNames("panel"),D=`${x}header`,e=({children:n,className:i,divider:a=!0,dividerColor:s=P.DEFAULT_PANEL_DIVIDER_COLOR,backgroundColor:t,...l})=>{const o=_(w.styles[D],i);return r.jsxs(r.Fragment,{children:[r.jsx(u.Box,{as:"header",className:o,backgroundColor:t,...l,children:n}),a&&r.jsx(d.Divider,{borderColor:s})]})};e.displayName="Panel.Header";e.Row=b.Row;e.ContentBefore=p.ContentBefore;e.Heading=q.Heading;e.Description=C.Description;e.ContentAfter=H.ContentAfter;e.Subheader=m.Subheader;exports.Header=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),_=require("clsx"),c=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const d=require("../../Divider/Divider.cjs.js"),u=require("../../Box/Box.cjs.js"),P=require("./Panel.helpers.cjs.js"),b=require("./Panel.Header.Row.cjs.js"),p=require("./Panel.Header.ContentBefore.cjs.js"),q=require("./Panel.Header.Heading.cjs.js"),H=require("./Panel.Header.ContentAfter.cjs.js"),C=require("./Panel.Header.Description.cjs.js"),m=require("./Panel.Header.Subheader.cjs.js"),w=require("../../../chunks/panel.module.Cb7pqpht.js"),{subElementClassPrefix:x}=c.getBEMClassNames("panel"),D=`${x}header`,e=({children:n,className:i,divider:a=!0,dividerColor:s=P.DEFAULT_PANEL_DIVIDER_COLOR,backgroundColor:t,...l})=>{const o=_(w.styles[D],i);return r.jsxs(r.Fragment,{children:[r.jsx(u.Box,{as:"header",className:o,backgroundColor:t,...l,children:n}),a&&r.jsx(d.Divider,{borderColor:s})]})};e.displayName="Panel.Header";e.Row=b.Row;e.ContentBefore=p.ContentBefore;e.Heading=q.Heading;e.Description=C.Description;e.ContentAfter=H.ContentAfter;e.Subheader=m.Subheader;exports.Header=e;
@@ -11,7 +11,7 @@ import { Heading as g } from "./Panel.Header.Heading.es.js";
11
11
  import { ContentAfter as h } from "./Panel.Header.ContentAfter.es.js";
12
12
  import { Description as u } from "./Panel.Header.Description.es.js";
13
13
  import { Subheader as E } from "./Panel.Header.Subheader.es.js";
14
- import { s as N } from "../../../chunks/panel.module.DJLJpnm_.js";
14
+ import { s as N } from "../../../chunks/panel.module.FuwYDPMC.js";
15
15
  const { subElementClassPrefix: A } = d("panel"), B = `${A}header`, r = ({
16
16
  children: e,
17
17
  className: t,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("@floating-ui/react"),q=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const b=require("./Panel.context.cjs.js"),f=require("../../FloatingUI/FloatingUI.root.cjs.js"),F=require("../../../chunks/FloatingUI.context.B15Tz_4h.js"),d=require("./Panel.Divider.cjs.js"),P=require("../../../chunks/panel.module.DCpj0tSX.js"),{baseClassNamePrefix:U}=q.getBEMClassNames("panel"),N=({children:s,panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,alwaysVisible:i,dividerColor:t,...u})=>{const{context:x,transitionConfig:_,refs:p}=F.useBmFloatingUIContext(),{isMounted:I,status:g}=m.useTransitionStatus(x,_),j=i&&g==="initial"?"open":g;return I?e.jsxs(e.Fragment,{children:[r&&e.jsx(d.InlineDivider,{position:n,dividerColor:t}),e.jsx("div",{ref:p.setFloating,className:l,"data-position":n,"data-status":j,children:e.jsxs("div",{className:P.styles[`${U}__inline-wrapper-content`],children:[o&&e.jsx(d.InlineDivider,{position:n,dividerColor:t}),e.jsx("aside",{...u,className:a,children:s})]})}),c&&e.jsx(d.InlineDivider,{position:n,dividerColor:t})]}):null},h=({contextValue:s,panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,open:i,transitionConfig:t,dividerColor:u,children:x,..._})=>e.jsx(b.PanelContext.Provider,{value:s,children:e.jsx(f.FloatingUIRoot,{open:i??!0,portalled:!1,transitionConfig:t,children:e.jsx(N,{panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,dividerColor:u,alwaysVisible:i===void 0,..._,children:x})})});exports.InlinePanel=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("@floating-ui/react"),q=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const b=require("./Panel.context.cjs.js"),f=require("../../FloatingUI/FloatingUI.root.cjs.js"),F=require("../../../chunks/FloatingUI.context.B15Tz_4h.js"),d=require("./Panel.Divider.cjs.js"),P=require("../../../chunks/panel.module.Cb7pqpht.js"),{baseClassNamePrefix:U}=q.getBEMClassNames("panel"),N=({children:s,panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,alwaysVisible:i,dividerColor:t,...u})=>{const{context:x,transitionConfig:_,refs:p}=F.useBmFloatingUIContext(),{isMounted:I,status:g}=m.useTransitionStatus(x,_),j=i&&g==="initial"?"open":g;return I?e.jsxs(e.Fragment,{children:[r&&e.jsx(d.InlineDivider,{position:n,dividerColor:t}),e.jsx("div",{ref:p.setFloating,className:l,"data-position":n,"data-status":j,children:e.jsxs("div",{className:P.styles[`${U}__inline-wrapper-content`],children:[o&&e.jsx(d.InlineDivider,{position:n,dividerColor:t}),e.jsx("aside",{...u,className:a,children:s})]})}),c&&e.jsx(d.InlineDivider,{position:n,dividerColor:t})]}):null},h=({contextValue:s,panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,open:i,transitionConfig:t,dividerColor:u,children:x,..._})=>e.jsx(b.PanelContext.Provider,{value:s,children:e.jsx(f.FloatingUIRoot,{open:i??!0,portalled:!1,transitionConfig:t,children:e.jsx(N,{panelClassName:a,inlineWrapperClassName:l,resolvedPosition:n,dividerBefore:r,dividerInner:o,dividerAfter:c,dividerColor:u,alwaysVisible:i===void 0,..._,children:x})})});exports.InlinePanel=h;
@@ -6,7 +6,7 @@ import { PanelContext as w } from "./Panel.context.es.js";
6
6
  import { FloatingUIRoot as U } from "../../FloatingUI/FloatingUI.root.es.js";
7
7
  import { u as b } from "../../../chunks/FloatingUI.context.D3kSM-y1.js";
8
8
  import { InlineDivider as u } from "./Panel.Divider.es.js";
9
- import { s as j } from "../../../chunks/panel.module.DJLJpnm_.js";
9
+ import { s as j } from "../../../chunks/panel.module.FuwYDPMC.js";
10
10
  const { baseClassNamePrefix: y } = F("panel"), B = ({
11
11
  children: i,
12
12
  panelClassName: e,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),x=require("clsx"),b=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const f=require("./Panel.context.cjs.js"),p=require("./Panel.helpers.cjs.js"),y=require("../../FloatingUI/FloatingUI.root.cjs.js"),C=require("../../FloatingUI/FloatingUI.content.cjs.js"),F=require("./Panel.Divider.cjs.js"),a=require("../../../chunks/panel.module.DCpj0tSX.js"),{baseClassNamePrefix:n}=b.getBEMClassNames("panel"),j=({contextValue:r,panelClassName:t,resolvedPosition:l,showDivider:o,modalType:e,closeOnOutsidePress:c,open:u,onOpenChange:_,transitionConfig:d,dividerColor:g,children:v,...m})=>{const s=e==="isModal"||e==="alert",P=p.getPanelDismissConfig(e,c),q=x(a.styles[`${n}__overlay-divider`],a.styles[`${n}__overlay-divider--${l}`]);return i.jsx(f.PanelContext.Provider,{value:r,children:i.jsx(y.FloatingUIRoot,{open:u,onOpenChange:_,portalled:!0,transitionConfig:d,dismiss:P,focusConfiguration:s?!0:{modal:!1,closeOnFocusOut:!1},children:i.jsxs(C.Content,{className:t,skipFloatingStyles:!0,overlay:s,...m,role:e==="alert"?"alertdialog":"dialog","aria-modal":s||void 0,"data-position":l,children:[v,o&&i.jsx(F.InlineDivider,{position:l,className:q,dividerColor:g})]})})})};exports.OverlayPanel=j;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),C=require("clsx"),f=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const F=require("./Panel.context.cjs.js"),j=require("./Panel.helpers.cjs.js"),I=require("../../FloatingUI/FloatingUI.root.cjs.js"),N=require("../../FloatingUI/FloatingUI.content.cjs.js"),U=require("./Panel.Divider.cjs.js"),n=require("../../../chunks/panel.module.Cb7pqpht.js"),{baseClassNamePrefix:r,variable:o}=f.getBEMClassNames("panel"),h=({contextValue:c,panelClassName:u,resolvedPosition:i,showDivider:_,modalType:e,closeOnOutsidePress:d,floatingOffset:s,open:g,onOpenChange:v,transitionConfig:y,dividerColor:m,children:x,...t})=>{const a=e==="isModal"||e==="alert",P=j.getPanelDismissConfig(e,d),q=C(n.styles[`${r}__overlay-divider`],n.styles[`${r}__overlay-divider--${i}`]),b=s?{...t.style,[o("offset-x")]:s.x,[o("offset-y")]:s.y}:t.style;return l.jsx(F.PanelContext.Provider,{value:c,children:l.jsx(I.FloatingUIRoot,{open:g,onOpenChange:v,portalled:!0,transitionConfig:y,dismiss:P,focusConfiguration:a?!0:{modal:!1,closeOnFocusOut:!1},children:l.jsxs(N.Content,{className:u,skipFloatingStyles:!0,overlay:a,...t,style:b,role:e==="alert"?"alertdialog":"dialog","aria-modal":a||void 0,"data-position":i,children:[x,_&&l.jsx(U.InlineDivider,{position:i,className:q,dividerColor:m})]})})})};exports.OverlayPanel=h;
@@ -1,5 +1,5 @@
1
1
  import { UseTransitionStylesProps } from '@floating-ui/react';
2
- import { PanelDividerColor, PanelModalType, PanelPosition } from './Panel.types';
2
+ import { PanelDividerColor, PanelModalType, PanelPosition, ResolvedPanelOffset } from './Panel.types';
3
3
  import { PanelContextValue } from './Panel.context';
4
4
  import { FloatingUIProps } from '../../FloatingUI/FloatingUI.context';
5
5
  type OverlayPanelProps = {
@@ -9,11 +9,12 @@ type OverlayPanelProps = {
9
9
  showDivider: boolean;
10
10
  modalType?: PanelModalType;
11
11
  closeOnOutsidePress?: boolean;
12
+ floatingOffset?: ResolvedPanelOffset;
12
13
  open?: boolean;
13
14
  onOpenChange?: FloatingUIProps['onOpenChange'];
14
15
  transitionConfig: UseTransitionStylesProps;
15
16
  children: React.ReactNode;
16
17
  dividerColor?: PanelDividerColor;
17
18
  } & React.ComponentPropsWithoutRef<'aside'>;
18
- export declare const OverlayPanel: ({ contextValue, panelClassName, resolvedPosition, showDivider, modalType, closeOnOutsidePress, open, onOpenChange, transitionConfig, dividerColor, children, ...props }: OverlayPanelProps) => import("react/jsx-runtime").JSX.Element;
19
+ export declare const OverlayPanel: ({ contextValue, panelClassName, resolvedPosition, showDivider, modalType, closeOnOutsidePress, floatingOffset, open, onOpenChange, transitionConfig, dividerColor, children, ...props }: OverlayPanelProps) => import("react/jsx-runtime").JSX.Element;
19
20
  export {};
@@ -1,53 +1,59 @@
1
- import { jsx as s, jsxs as x } from "react/jsx-runtime";
2
- import N from "clsx";
3
- import { g as y } from "../../../chunks/classNames.BTJmrO_L.js";
1
+ import { jsx as t, jsxs as _ } from "react/jsx-runtime";
2
+ import h from "clsx";
3
+ import { g as D } from "../../../chunks/classNames.BTJmrO_L.js";
4
4
  import "../../../chunks/constants.CKKGf1-i.js";
5
- import { PanelContext as _ } from "./Panel.context.es.js";
6
- import { getPanelDismissConfig as h } from "./Panel.helpers.es.js";
7
- import { FloatingUIRoot as D } from "../../FloatingUI/FloatingUI.root.es.js";
8
- import { Content as F } from "../../FloatingUI/FloatingUI.content.es.js";
9
- import { InlineDivider as O } from "./Panel.Divider.es.js";
10
- import { s as a } from "../../../chunks/panel.module.DJLJpnm_.js";
11
- const { baseClassNamePrefix: e } = y("panel"), S = ({
12
- contextValue: t,
13
- panelClassName: l,
14
- resolvedPosition: r,
15
- showDivider: m,
5
+ import { PanelContext as F } from "./Panel.context.es.js";
6
+ import { getPanelDismissConfig as P } from "./Panel.helpers.es.js";
7
+ import { FloatingUIRoot as $ } from "../../FloatingUI/FloatingUI.root.es.js";
8
+ import { Content as b } from "../../FloatingUI/FloatingUI.content.es.js";
9
+ import { InlineDivider as j } from "./Panel.Divider.es.js";
10
+ import { s as a } from "../../../chunks/panel.module.FuwYDPMC.js";
11
+ const { baseClassNamePrefix: l, variable: m } = D("panel"), w = ({
12
+ contextValue: n,
13
+ panelClassName: c,
14
+ resolvedPosition: i,
15
+ showDivider: d,
16
16
  modalType: o,
17
- closeOnOutsidePress: n,
18
- open: f,
19
- onOpenChange: c,
20
- transitionConfig: d,
17
+ closeOnOutsidePress: f,
18
+ floatingOffset: r,
19
+ open: v,
20
+ onOpenChange: g,
21
+ transitionConfig: y,
21
22
  dividerColor: p,
22
- children: g,
23
- ...v
23
+ children: u,
24
+ ...s
24
25
  }) => {
25
- const i = o === "isModal" || o === "alert", u = h(o, n), C = N(
26
- a[`${e}__overlay-divider`],
27
- a[`${e}__overlay-divider--${r}`]
28
- );
29
- return /* @__PURE__ */ s(_.Provider, { value: t, children: /* @__PURE__ */ s(
30
- D,
26
+ const e = o === "isModal" || o === "alert", x = P(o, f), C = h(
27
+ a[`${l}__overlay-divider`],
28
+ a[`${l}__overlay-divider--${i}`]
29
+ ), N = r ? {
30
+ ...s.style,
31
+ [m("offset-x")]: r.x,
32
+ [m("offset-y")]: r.y
33
+ } : s.style;
34
+ return /* @__PURE__ */ t(F.Provider, { value: n, children: /* @__PURE__ */ t(
35
+ $,
31
36
  {
32
- open: f,
33
- onOpenChange: c,
37
+ open: v,
38
+ onOpenChange: g,
34
39
  portalled: !0,
35
- transitionConfig: d,
36
- dismiss: u,
37
- focusConfiguration: i ? !0 : { modal: !1, closeOnFocusOut: !1 },
38
- children: /* @__PURE__ */ x(
39
- F,
40
+ transitionConfig: y,
41
+ dismiss: x,
42
+ focusConfiguration: e ? !0 : { modal: !1, closeOnFocusOut: !1 },
43
+ children: /* @__PURE__ */ _(
44
+ b,
40
45
  {
41
- className: l,
46
+ className: c,
42
47
  skipFloatingStyles: !0,
43
- overlay: i,
44
- ...v,
48
+ overlay: e,
49
+ ...s,
50
+ style: N,
45
51
  role: o === "alert" ? "alertdialog" : "dialog",
46
- "aria-modal": i || void 0,
47
- "data-position": r,
52
+ "aria-modal": e || void 0,
53
+ "data-position": i,
48
54
  children: [
49
- g,
50
- m && /* @__PURE__ */ s(O, { position: r, className: C, dividerColor: p })
55
+ u,
56
+ d && /* @__PURE__ */ t(j, { position: i, className: C, dividerColor: p })
51
57
  ]
52
58
  }
53
59
  )
@@ -55,5 +61,5 @@ const { baseClassNamePrefix: e } = y("panel"), S = ({
55
61
  ) });
56
62
  };
57
63
  export {
58
- S as OverlayPanel
64
+ w as OverlayPanel
59
65
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("react/jsx-runtime"),q=require("clsx"),b=require("react"),B=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const A=require("./Panel.Header.cjs.js"),F=require("./Panel.Body.cjs.js"),H=require("./Panel.Footer.cjs.js"),i=require("./Panel.helpers.cjs.js"),T=require("./Panel.Inline.cjs.js"),V=require("./Panel.Overlay.cjs.js"),e=require("../../../chunks/panel.module.DCpj0tSX.js"),{baseClassNamePrefix:s}=B.getBEMClassNames("panel"),a=({children:u,className:C,padding:g="md",onOpenChange:h,open:_,size:r,dismissible:d=!0,closeButtonAriaLabel:P="Close panel",kind:o="inline",position:t,divider:$=!0,dividerColor:p,isAnimated:N=!0,onBeforeClose:M,modalType:n,...c})=>{process.env.NODE_ENV!=="production"&&n==="alert"&&d&&console.warn('Panel: `dismissible` is ignored when `modalType="alert"`. The close button is always hidden.'),process.env.NODE_ENV!=="production"&&c.closeOnOutsidePress&&n!=="nonModal"&&n!==void 0&&console.warn('Panel: `closeOnOutsidePress` has no effect when `modalType` is not `"nonModal"`.');const y=n==="alert"?!1:d,l=i.getResolvedPanelPosition(t),x=r&&(l!=="bottom"||r==="full"),m=q(e.styles[s],e.styles[`${s}--${o}`],x&&e.styles[`${s}--size-${r}`],e.styles[`${s}--padding-${g}`],e.styles[`${s}--position-${l}`],C),D=q(e.styles[`${s}__inline-wrapper`],r==="full"&&e.styles[`${s}__inline-wrapper--full`]),{requestClose:f,handleOverlayOpenChange:E}=i.usePanelClose(M,h),v=b.useMemo(()=>({kind:o,dismissible:y,closeButtonAriaLabel:P,position:t,requestClose:f}),[o,y,P,t,f]),{showDivider:I,dividerBefore:S,dividerInner:R,dividerAfter:j}=i.getPanelDividerState($,l),w=b.useMemo(()=>({duration:N?i.PANEL_TRANSITION_DURATION_MS:0}),[N]);return o==="inline"?O.jsx(T.InlinePanel,{contextValue:v,panelClassName:m,inlineWrapperClassName:D,resolvedPosition:l,dividerBefore:S,dividerInner:R,dividerAfter:j,dividerColor:p,open:_,transitionConfig:w,...c,children:u}):O.jsx(V.OverlayPanel,{contextValue:v,panelClassName:m,resolvedPosition:l,showDivider:I,dividerColor:p,modalType:n,open:_,onOpenChange:E,transitionConfig:w,...c,children:u})};a.displayName="Panel";a.Header=A.Header;a.Body=F.Body;a.Footer=H.Footer;exports.Panel=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react/jsx-runtime"),C=require("clsx"),$=require("react"),H=require("../../../chunks/classNames.DAeKwerT.js");require("../../../chunks/constants.hwjHOsvT.js");const T=require("./Panel.Header.cjs.js"),V=require("./Panel.Body.cjs.js"),U=require("./Panel.Footer.cjs.js"),a=require("./Panel.helpers.cjs.js"),W=require("./Panel.Inline.cjs.js"),G=require("./Panel.Overlay.cjs.js"),e=require("../../../chunks/panel.module.Cb7pqpht.js"),{baseClassNamePrefix:s}=H.getBEMClassNames("panel"),t=({children:u,className:h,padding:M="md",onOpenChange:x,open:_,size:r,dismissible:d=!0,closeButtonAriaLabel:P="Close panel",kind:n="inline",position:i,divider:D=!0,dividerColor:p,isAnimated:f=!0,onBeforeClose:E,modalType:l,offset:v,...c})=>{process.env.NODE_ENV!=="production"&&l==="alert"&&d&&console.warn('Panel: `dismissible` is ignored when `modalType="alert"`. The close button is always hidden.'),process.env.NODE_ENV!=="production"&&c.closeOnOutsidePress&&l!=="nonModal"&&l!==void 0&&console.warn('Panel: `closeOnOutsidePress` has no effect when `modalType` is not `"nonModal"`.');const y=l==="alert"?!1:d,o=a.getResolvedPanelPosition(i),I=r&&(o!=="bottom"||r==="full"),N=n==="overlay"&&v?a.resolveOffset(v):void 0,O=!!N,m=C(e.styles[s],e.styles[`${s}--${n}`],I&&e.styles[`${s}--size-${r}`],e.styles[`${s}--padding-${M}`],e.styles[`${s}--position-${o}`],O&&e.styles[`${s}--floating`],h),S=C(e.styles[`${s}__inline-wrapper`],r==="full"&&e.styles[`${s}__inline-wrapper--full`]),{requestClose:w,handleOverlayOpenChange:B}=a.usePanelClose(E,x),g=$.useMemo(()=>({kind:n,dismissible:y,closeButtonAriaLabel:P,position:i,requestClose:w}),[n,y,P,i,w]),{showDivider:R,dividerBefore:j,dividerInner:F,dividerAfter:A}=a.getPanelDividerState(D&&!O,o),q=$.useMemo(()=>({duration:f?a.PANEL_TRANSITION_DURATION_MS:0}),[f]);return n==="inline"?b.jsx(W.InlinePanel,{contextValue:g,panelClassName:m,inlineWrapperClassName:S,resolvedPosition:o,dividerBefore:j,dividerInner:F,dividerAfter:A,dividerColor:p,open:_,transitionConfig:q,...c,children:u}):b.jsx(G.OverlayPanel,{contextValue:g,panelClassName:m,resolvedPosition:o,showDivider:R,dividerColor:p,modalType:l,floatingOffset:N,open:_,onOpenChange:B,transitionConfig:q,...c,children:u})};t.displayName="Panel";t.Header=T.Header;t.Body=V.Body;t.Footer=U.Footer;exports.Panel=t;
@@ -1,6 +1,6 @@
1
1
  import { PanelProps } from './Panel.types';
2
2
  export declare const Panel: {
3
- ({ children, className: _className, padding, onOpenChange, open, size, dismissible, closeButtonAriaLabel, kind, position, divider, dividerColor, isAnimated, onBeforeClose, modalType, ...panelProps }: PanelProps): JSX.Element;
3
+ ({ children, className: _className, padding, onOpenChange, open, size, dismissible, closeButtonAriaLabel, kind, position, divider, dividerColor, isAnimated, onBeforeClose, modalType, offset, ...panelProps }: PanelProps): JSX.Element;
4
4
  displayName: string;
5
5
  Header: {
6
6
  ({ children, className: _className, divider, dividerColor, backgroundColor, ...props }: import('./Panel.Header').PanelHeaderProps): import("react/jsx-runtime").JSX.Element;
@@ -1,101 +1,104 @@
1
- import { jsx as $ } from "react/jsx-runtime";
2
- import g from "clsx";
3
- import { useMemo as h } from "react";
4
- import { g as R } from "../../../chunks/classNames.BTJmrO_L.js";
1
+ import { jsx as _ } from "react/jsx-runtime";
2
+ import w from "clsx";
3
+ import { useMemo as y } from "react";
4
+ import { g as H } from "../../../chunks/classNames.BTJmrO_L.js";
5
5
  import "../../../chunks/constants.CKKGf1-i.js";
6
- import { Header as V } from "./Panel.Header.es.js";
7
- import { Body as F } from "./Panel.Body.es.js";
8
- import { Footer as H } from "./Panel.Footer.es.js";
9
- import { usePanelClose as T, getPanelDividerState as j, PANEL_TRANSITION_DURATION_MS as q, getResolvedPanelPosition as U } from "./Panel.helpers.es.js";
10
- import { InlinePanel as W } from "./Panel.Inline.es.js";
11
- import { OverlayPanel as G } from "./Panel.Overlay.es.js";
12
- import { s as e } from "../../../chunks/panel.module.DJLJpnm_.js";
13
- const { baseClassNamePrefix: o } = R("panel"), l = ({
6
+ import { Header as T } from "./Panel.Header.es.js";
7
+ import { Body as j } from "./Panel.Body.es.js";
8
+ import { Footer as q } from "./Panel.Footer.es.js";
9
+ import { resolveOffset as U, usePanelClose as W, getPanelDividerState as G, PANEL_TRANSITION_DURATION_MS as J, getResolvedPanelPosition as K } from "./Panel.helpers.es.js";
10
+ import { InlinePanel as L } from "./Panel.Inline.es.js";
11
+ import { OverlayPanel as Q } from "./Panel.Overlay.es.js";
12
+ import { s as e } from "../../../chunks/panel.module.FuwYDPMC.js";
13
+ const { baseClassNamePrefix: o } = H("panel"), l = ({
14
14
  children: m,
15
- className: _,
16
- padding: w = "md",
17
- onOpenChange: y,
18
- open: p,
19
- size: r,
20
- dismissible: d = !0,
21
- closeButtonAriaLabel: f = "Close panel",
22
- kind: t = "inline",
15
+ className: D,
16
+ padding: E = "md",
17
+ onOpenChange: x,
18
+ open: f,
19
+ size: t,
20
+ dismissible: c = !0,
21
+ closeButtonAriaLabel: d = "Close panel",
22
+ kind: s = "inline",
23
23
  position: a,
24
- divider: D = !0,
25
- dividerColor: c,
24
+ divider: I = !0,
25
+ dividerColor: p,
26
26
  isAnimated: u = !0,
27
- onBeforeClose: E,
28
- modalType: s,
27
+ onBeforeClose: M,
28
+ modalType: n,
29
+ offset: v,
29
30
  ...i
30
31
  }) => {
31
- process.env.NODE_ENV !== "production" && s === "alert" && d && console.warn(
32
+ process.env.NODE_ENV !== "production" && n === "alert" && c && console.warn(
32
33
  'Panel: `dismissible` is ignored when `modalType="alert"`. The close button is always hidden.'
33
- ), process.env.NODE_ENV !== "production" && i.closeOnOutsidePress && s !== "nonModal" && s !== void 0 && console.warn(
34
+ ), process.env.NODE_ENV !== "production" && i.closeOnOutsidePress && n !== "nonModal" && n !== void 0 && console.warn(
34
35
  'Panel: `closeOnOutsidePress` has no effect when `modalType` is not `"nonModal"`.'
35
36
  );
36
- const N = s === "alert" ? !1 : d, n = U(a), x = r && (n !== "bottom" || r === "full"), P = g(
37
+ const N = n === "alert" ? !1 : c, r = K(a), b = t && (r !== "bottom" || t === "full"), O = s === "overlay" && v ? U(v) : void 0, P = !!O, g = w(
37
38
  e[o],
38
- e[`${o}--${t}`],
39
- x && e[`${o}--size-${r}`],
40
- e[`${o}--padding-${w}`],
41
- e[`${o}--position-${n}`],
42
- _
43
- ), I = g(
39
+ e[`${o}--${s}`],
40
+ b && e[`${o}--size-${t}`],
41
+ e[`${o}--padding-${E}`],
42
+ e[`${o}--position-${r}`],
43
+ P && e[`${o}--floating`],
44
+ D
45
+ ), B = w(
44
46
  e[`${o}__inline-wrapper`],
45
- r === "full" && e[`${o}__inline-wrapper--full`]
46
- ), { requestClose: v, handleOverlayOpenChange: M } = T(
47
- E,
48
- y
49
- ), O = h(
47
+ t === "full" && e[`${o}__inline-wrapper--full`]
48
+ ), { requestClose: C, handleOverlayOpenChange: S } = W(
49
+ M,
50
+ x
51
+ ), $ = y(
50
52
  () => ({
51
- kind: t,
53
+ kind: s,
52
54
  dismissible: N,
53
- closeButtonAriaLabel: f,
55
+ closeButtonAriaLabel: d,
54
56
  position: a,
55
- requestClose: v
57
+ requestClose: C
56
58
  }),
57
- [t, N, f, a, v]
58
- ), { showDivider: b, dividerBefore: S, dividerInner: A, dividerAfter: B } = j(D, n), C = h(
59
- () => ({ duration: u ? q : 0 }),
59
+ [s, N, d, a, C]
60
+ ), { showDivider: A, dividerBefore: F, dividerInner: R, dividerAfter: V } = G(I && !P, r), h = y(
61
+ () => ({ duration: u ? J : 0 }),
60
62
  [u]
61
63
  );
62
- return t === "inline" ? /* @__PURE__ */ $(
63
- W,
64
+ return s === "inline" ? /* @__PURE__ */ _(
65
+ L,
64
66
  {
65
- contextValue: O,
66
- panelClassName: P,
67
- inlineWrapperClassName: I,
68
- resolvedPosition: n,
69
- dividerBefore: S,
70
- dividerInner: A,
71
- dividerAfter: B,
72
- dividerColor: c,
73
- open: p,
74
- transitionConfig: C,
67
+ contextValue: $,
68
+ panelClassName: g,
69
+ inlineWrapperClassName: B,
70
+ resolvedPosition: r,
71
+ dividerBefore: F,
72
+ dividerInner: R,
73
+ dividerAfter: V,
74
+ dividerColor: p,
75
+ open: f,
76
+ transitionConfig: h,
75
77
  ...i,
76
78
  children: m
77
79
  }
78
- ) : /* @__PURE__ */ $(
79
- G,
80
+ ) : /* @__PURE__ */ _(
81
+ Q,
80
82
  {
81
- contextValue: O,
82
- panelClassName: P,
83
- resolvedPosition: n,
84
- showDivider: b,
85
- dividerColor: c,
86
- modalType: s,
87
- open: p,
88
- onOpenChange: M,
89
- transitionConfig: C,
83
+ contextValue: $,
84
+ panelClassName: g,
85
+ resolvedPosition: r,
86
+ showDivider: A,
87
+ dividerColor: p,
88
+ modalType: n,
89
+ floatingOffset: O,
90
+ open: f,
91
+ onOpenChange: S,
92
+ transitionConfig: h,
90
93
  ...i,
91
94
  children: m
92
95
  }
93
96
  );
94
97
  };
95
98
  l.displayName = "Panel";
96
- l.Header = V;
97
- l.Body = F;
98
- l.Footer = H;
99
+ l.Header = T;
100
+ l.Body = j;
101
+ l.Footer = q;
99
102
  export {
100
103
  l as Panel
101
104
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),d=400,f="01",P=t=>t||"end",a=(t,s)=>{const e=t&&s!=="full";return{showDivider:e,dividerBefore:e&&s!=="start"&&s!=="bottom",dividerInner:e&&s==="bottom",dividerAfter:e&&s==="start"}},D=(t,s)=>{if(t!=="isModal")return t==="alert"?{escapeKey:!1,outsidePress:!1}:{escapeKey:!1,outsidePress:s??!1}},_=t=>t==="escape-key"?"escapeKey":t==="outside-press"?"outsidePress":"programmatic",v=(t,s)=>{const e=c.useCallback(i=>{if(!t){s==null||s(!1);return}const r=t(i);r instanceof Promise?r.then(l=>{l&&(s==null||s(!1))}).catch(()=>{}):r&&(s==null||s(!1))},[t,s]),u=c.useCallback((i,r,l)=>{i?s==null||s(!0):e(_(l))},[s,e]);return{requestClose:e,handleOverlayOpenChange:u}};exports.DEFAULT_PANEL_DIVIDER_COLOR=f;exports.PANEL_TRANSITION_DURATION_MS=d;exports.getPanelDismissConfig=D;exports.getPanelDividerState=a;exports.getResolvedPanelPosition=P;exports.usePanelClose=v;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),d=400;function P(t){return t===!0?{x:"1rem",y:"1rem"}:typeof t=="string"?{x:t,y:t}:{x:t.x,y:t.y}}const f="01",a=t=>t||"end",v=(t,e)=>{const s=t&&e!=="full";return{showDivider:s,dividerBefore:s&&e!=="start"&&e!=="bottom",dividerInner:s&&e==="bottom",dividerAfter:s&&e==="start"}},D=(t,e)=>{if(t!=="isModal")return t==="alert"?{escapeKey:!1,outsidePress:!1}:{escapeKey:!1,outsidePress:e??!1}},_=t=>t==="escape-key"?"escapeKey":t==="outside-press"?"outsidePress":"programmatic",y=(t,e)=>{const s=u.useCallback(i=>{if(!t){e==null||e(!1);return}const r=t(i);r instanceof Promise?r.then(l=>{l&&(e==null||e(!1))}).catch(()=>{}):r&&(e==null||e(!1))},[t,e]),c=u.useCallback((i,r,l)=>{i?e==null||e(!0):s(_(l))},[e,s]);return{requestClose:s,handleOverlayOpenChange:c}};exports.DEFAULT_PANEL_DIVIDER_COLOR=f;exports.PANEL_TRANSITION_DURATION_MS=d;exports.getPanelDismissConfig=D;exports.getPanelDividerState=v;exports.getResolvedPanelPosition=a;exports.resolveOffset=P;exports.usePanelClose=y;
@@ -1,6 +1,7 @@
1
1
  import { OpenChangeReason } from '@floating-ui/react';
2
- import { PanelCloseReason, PanelDividerColor, PanelModalType, PanelPosition, PanelProps } from './Panel.types';
2
+ import { OverlayPanelProps, PanelCloseReason, PanelDividerColor, PanelModalType, PanelPosition, PanelProps, ResolvedPanelOffset } from './Panel.types';
3
3
  export declare const PANEL_TRANSITION_DURATION_MS = 400;
4
+ export declare function resolveOffset(offset: Exclude<OverlayPanelProps['offset'], false | undefined>): ResolvedPanelOffset;
4
5
  export declare const DEFAULT_PANEL_DIVIDER_COLOR: PanelDividerColor;
5
6
  export declare const getResolvedPanelPosition: (position?: PanelPosition) => PanelPosition;
6
7
  export declare const getPanelDividerState: (divider: boolean, position?: PanelPosition) => {
@@ -1,44 +1,49 @@
1
- import { useCallback as c } from "react";
2
- const P = 400, v = "01", m = (t) => t || "end", D = (t, s) => {
3
- const r = t && s !== "full";
1
+ import { useCallback as l } from "react";
2
+ const P = 400;
3
+ function v(t) {
4
+ return t === !0 ? { x: "1rem", y: "1rem" } : typeof t == "string" ? { x: t, y: t } : { x: t.x, y: t.y };
5
+ }
6
+ const m = "01", y = (t) => t || "end", D = (t, r) => {
7
+ const s = t && r !== "full";
4
8
  return {
5
- showDivider: r,
6
- dividerBefore: r && s !== "start" && s !== "bottom",
9
+ showDivider: s,
10
+ dividerBefore: s && r !== "start" && r !== "bottom",
7
11
  // For 'bottom' panels the divider must sit inside the scrollable wrapper (above the content),
8
12
  // not outside it — so it is rendered via dividerInner rather than dividerBefore.
9
- dividerInner: r && s === "bottom",
10
- dividerAfter: r && s === "start"
13
+ dividerInner: s && r === "bottom",
14
+ dividerAfter: s && r === "start"
11
15
  };
12
- }, _ = (t, s) => {
16
+ }, _ = (t, r) => {
13
17
  if (t !== "isModal")
14
- return t === "alert" ? { escapeKey: !1, outsidePress: !1 } : { escapeKey: !1, outsidePress: s ?? !1 };
15
- }, u = (t) => t === "escape-key" ? "escapeKey" : t === "outside-press" ? "outsidePress" : "programmatic", a = (t, s) => {
16
- const r = c(
18
+ return t === "alert" ? { escapeKey: !1, outsidePress: !1 } : { escapeKey: !1, outsidePress: r ?? !1 };
19
+ }, d = (t) => t === "escape-key" ? "escapeKey" : t === "outside-press" ? "outsidePress" : "programmatic", a = (t, r) => {
20
+ const s = l(
17
21
  (i) => {
18
22
  if (!t) {
19
- s == null || s(!1);
23
+ r == null || r(!1);
20
24
  return;
21
25
  }
22
26
  const e = t(i);
23
- e instanceof Promise ? e.then((l) => {
24
- l && (s == null || s(!1));
27
+ e instanceof Promise ? e.then((u) => {
28
+ u && (r == null || r(!1));
25
29
  }).catch(() => {
26
- }) : e && (s == null || s(!1));
30
+ }) : e && (r == null || r(!1));
27
31
  },
28
- [t, s]
29
- ), f = c(
30
- (i, e, l) => {
31
- i ? s == null || s(!0) : r(u(l));
32
+ [t, r]
33
+ ), c = l(
34
+ (i, e, u) => {
35
+ i ? r == null || r(!0) : s(d(u));
32
36
  },
33
- [s, r]
37
+ [r, s]
34
38
  );
35
- return { requestClose: r, handleOverlayOpenChange: f };
39
+ return { requestClose: s, handleOverlayOpenChange: c };
36
40
  };
37
41
  export {
38
- v as DEFAULT_PANEL_DIVIDER_COLOR,
42
+ m as DEFAULT_PANEL_DIVIDER_COLOR,
39
43
  P as PANEL_TRANSITION_DURATION_MS,
40
44
  _ as getPanelDismissConfig,
41
45
  D as getPanelDividerState,
42
- m as getResolvedPanelPosition,
46
+ y as getResolvedPanelPosition,
47
+ v as resolveOffset,
43
48
  a as usePanelClose
44
49
  };
@@ -3,6 +3,10 @@ import { PanelDividerColor, PanelDividerColors } from '@viasat/beam-shared/compo
3
3
  export type { PanelDividerColor };
4
4
  export { PanelDividerColors };
5
5
  export type PanelKind = 'inline' | 'overlay';
6
+ export type ResolvedPanelOffset = {
7
+ x: string;
8
+ y: string;
9
+ };
6
10
  export type PanelPosition = 'start' | 'end' | 'bottom' | 'full';
7
11
  export type PanelModalType = 'nonModal' | 'isModal' | 'alert';
8
12
  export type PanelSize = 'sm' | 'md' | 'lg' | 'full' | 'custom';
@@ -122,6 +126,7 @@ export interface InlinePanelProps extends BasePanelProps {
122
126
  */
123
127
  kind?: 'inline';
124
128
  modalType?: never;
129
+ offset?: never;
125
130
  }
126
131
  export interface OverlayPanelProps extends BasePanelProps {
127
132
  /**
@@ -141,6 +146,22 @@ export interface OverlayPanelProps extends BasePanelProps {
141
146
  * @default false
142
147
  */
143
148
  closeOnOutsidePress?: boolean;
149
+ /**
150
+ * Activates the floating/offset visual style for overlay panels.
151
+ * The panel is inset from the viewport edge, gains border radius,
152
+ * and hides the outer divider.
153
+ * Pass `true` to use the default offset (`1rem`), or a CSS length
154
+ * string (for example, `"2rem"`) for a custom offset on all sides. Pass a
155
+ * `{ x, y }` object (for example, `{ x: "2rem", y: "0.5rem" }`) for
156
+ * independent horizontal and vertical offsets.
157
+ * Setting this prop automatically suppresses the outer divider regardless
158
+ * of the `divider` prop value.
159
+ * @default false
160
+ */
161
+ offset?: boolean | string | {
162
+ x: string;
163
+ y: string;
164
+ };
144
165
  }
145
166
  export type PanelProps = InlinePanelProps | OverlayPanelProps;
146
167
  export type { PanelHeaderProps } from './Panel.Header';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viasat/beam-react",
3
- "version": "2.26.1",
3
+ "version": "2.27.0",
4
4
  "description": "React component library for the Beam design system",
5
5
  "license": "MIT",
6
6
  "author": "Viasat",
@@ -59,11 +59,11 @@
59
59
  "access": "public"
60
60
  },
61
61
  "dependencies": {
62
- "@viasat/beam-fonts": "2.26.1",
63
- "@viasat/beam-shared": "2.26.1",
64
- "@viasat/beam-styles": "2.26.1",
65
- "@viasat/beam-tokens": "2.26.1",
66
- "@viasat/beam-icons": "2.26.1",
62
+ "@viasat/beam-fonts": "2.27.0",
63
+ "@viasat/beam-shared": "2.27.0",
64
+ "@viasat/beam-styles": "2.27.0",
65
+ "@viasat/beam-tokens": "2.27.0",
66
+ "@viasat/beam-icons": "2.27.0",
67
67
  "clsx": "^1.2.1",
68
68
  "@floating-ui/react": "^0.26.18",
69
69
  "@stepperize/react": "^5.1.5",
@@ -1 +0,0 @@
1
- var n=require("../assets/panel.css");const e={"bm-light":"bm-light","bm-dark":"bm-dark","bm-inverse":"bm-inverse","bm-enterprise":"bm-enterprise","bm-consumer":"bm-consumer","bm-panel":"bm-panel","bm-panel--inline":"bm-panel--inline","bm-panel--overlay":"bm-panel--overlay","bm-panel--position-start":"bm-panel--position-start","bm-panel--position-end":"bm-panel--position-end","bm-panel--position-bottom":"bm-panel--position-bottom","bm-panel--size-full":"bm-panel--size-full","bm-panel--position-full":"bm-panel--position-full","bm-panel__body":"bm-panel__body","bm-panel--padding-sm":"bm-panel--padding-sm","bm-panel__header":"bm-panel__header","bm-panel__footer":"bm-panel__footer","bm-panel--padding-md":"bm-panel--padding-md","bm-panel__header__row":"bm-panel__header__row","bm-panel__header__content-before":"bm-panel__header__content-before","bm-panel__header__content-after":"bm-panel__header__content-after","bm-panel__header__heading":"bm-panel__header__heading","bm-panel__header__description":"bm-panel__header__description","bm-panel__header__close-button":"bm-panel__header__close-button","bm-panel__footer__actions":"bm-panel__footer__actions","bm-panel__footer__actions--start":"bm-panel__footer__actions--start","bm-panel__footer__actions--end":"bm-panel__footer__actions--end","bm-panel__footer__actions--spaceBetween":"bm-panel__footer__actions--spaceBetween","bm-panel__footer__actions--stacked":"bm-panel__footer__actions--stacked","bm-panel__overlay-divider":"bm-panel__overlay-divider","bm-panel__overlay-divider--start":"bm-panel__overlay-divider--start","bm-panel__overlay-divider--end":"bm-panel__overlay-divider--end","bm-panel__overlay-divider--bottom":"bm-panel__overlay-divider--bottom","bm-panel__inline-wrapper":"bm-panel__inline-wrapper","bm-panel__inline-wrapper-content":"bm-panel__inline-wrapper-content","bm-panel__inline-wrapper--full":"bm-panel__inline-wrapper--full"};exports.styles=e;