@sps-woodland/modal 8.21.5 → 8.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { Metadata as We, cl as ue, combineEventHandlers as ye, I18nContext as mt, useChildTestIdAttrBuilder as pt, selectChildren as ft, modChildren as gt, Icon as bt, contentOf as le } from "@sps-woodland/core";
2
- import { Button as Pe } from "@sps-woodland/buttons";
1
+ import { Metadata as De, cl as ue, combineEventHandlers as Me, I18nContext as mt, useChildTestIdAttrBuilder as pt, selectChildren as ft, modChildren as gt, Icon as bt, contentOf as le } from "@sps-woodland/core";
2
+ import { Button as We } from "@sps-woodland/buttons";
3
3
  import * as u from "react";
4
4
  import $, { useRef as M, useCallback as x, useState as K, useContext as A, useEffect as L, useMemo as q, createContext as vt } from "react";
5
5
  import ht from "react-dom";
@@ -187,7 +187,7 @@ function At(e, t = {}) {
187
187
  for (const a in e) Object.prototype.hasOwnProperty.call(e, a) && (Nt.has(a) || o && Ot.has(a) || n && Dt.has(a) || r != null && r.has(a) || Wt.test(a)) && (l[a] = e[a]);
188
188
  return l;
189
189
  }
190
- function ke(e) {
190
+ function ye(e) {
191
191
  if (It()) e.focus({
192
192
  preventScroll: !0
193
193
  });
@@ -254,7 +254,7 @@ const qe = j(function() {
254
254
  return qt(/Android/i);
255
255
  });
256
256
  let D = /* @__PURE__ */ new Map(), ce = /* @__PURE__ */ new Set();
257
- function xe() {
257
+ function Pe() {
258
258
  if (typeof window > "u") return;
259
259
  function e(n) {
260
260
  return "propertyName" in n;
@@ -275,19 +275,19 @@ function xe() {
275
275
  };
276
276
  document.body.addEventListener("transitionrun", t), document.body.addEventListener("transitionend", o);
277
277
  }
278
- typeof document < "u" && (document.readyState !== "loading" ? xe() : document.addEventListener("DOMContentLoaded", xe));
278
+ typeof document < "u" && (document.readyState !== "loading" ? Pe() : document.addEventListener("DOMContentLoaded", Pe));
279
279
  function Ut(e) {
280
280
  requestAnimationFrame(() => {
281
281
  D.size === 0 ? e() : ce.add(e);
282
282
  });
283
283
  }
284
- function Te(e, t) {
284
+ function ke(e, t) {
285
285
  let o = window.getComputedStyle(e), n = /(auto|scroll)/.test(o.overflow + o.overflowX + o.overflowY);
286
286
  return n && t && (n = e.scrollHeight !== e.clientHeight || e.scrollWidth !== e.clientWidth), n;
287
287
  }
288
288
  function Ve(e, t) {
289
289
  let o = e;
290
- for (Te(o, t) && (o = o.parentElement); o && !Te(o, t); ) o = o.parentElement;
290
+ for (ke(o, t) && (o = o.parentElement); o && !ke(o, t); ) o = o.parentElement;
291
291
  return o || document.scrollingElement || document.documentElement;
292
292
  }
293
293
  function Gt(e) {
@@ -419,7 +419,7 @@ function je(e) {
419
419
  function Ue() {
420
420
  O = !1, me = !0;
421
421
  }
422
- function Se(e) {
422
+ function xe(e) {
423
423
  if (typeof window > "u" || V.get(Z(e))) return;
424
424
  const t = Z(e), o = E(e);
425
425
  let n = t.HTMLElement.prototype.focus;
@@ -440,8 +440,8 @@ const Ge = (e, t) => {
440
440
  function to(e) {
441
441
  const t = E(e);
442
442
  let o;
443
- return t.readyState !== "loading" ? Se(e) : (o = () => {
444
- Se(e);
443
+ return t.readyState !== "loading" ? xe(e) : (o = () => {
444
+ xe(e);
445
445
  }, t.addEventListener("DOMContentLoaded", o)), () => Ge(e, o);
446
446
  }
447
447
  typeof document < "u" && to();
@@ -527,9 +527,9 @@ function pe(e) {
527
527
  if (oo() === "virtual") {
528
528
  let o = t.activeElement;
529
529
  Ut(() => {
530
- t.activeElement === o && e.isConnected && ke(e);
530
+ t.activeElement === o && e.isConnected && ye(e);
531
531
  });
532
- } else ke(e);
532
+ } else ye(e);
533
533
  }
534
534
  function ao(e) {
535
535
  const t = Z(e);
@@ -549,10 +549,10 @@ function lo(e, t) {
549
549
  function Xe(e, t) {
550
550
  return e.nodeName !== "#comment" && ao(e) && lo(e, t) && (!e.parentElement || Xe(e.parentElement, e));
551
551
  }
552
- const Le = /* @__PURE__ */ $.createContext(null), fe = "react-aria-focus-scope-restore";
552
+ const Te = /* @__PURE__ */ $.createContext(null), fe = "react-aria-focus-scope-restore";
553
553
  let v = null;
554
554
  function io(e) {
555
- let { children: t, contain: o, restoreFocus: n, autoFocus: r } = e, l = M(null), a = M(null), d = M([]), { parentNode: c } = A(Le) || {}, i = q(() => new be({
555
+ let { children: t, contain: o, restoreFocus: n, autoFocus: r } = e, l = M(null), a = M(null), d = M([]), { parentNode: c } = A(Te) || {}, i = q(() => new be({
556
556
  scopeRef: d
557
557
  }), [
558
558
  d
@@ -605,7 +605,7 @@ function io(e) {
605
605
  i,
606
606
  s
607
607
  ]);
608
- return /* @__PURE__ */ $.createElement(Le.Provider, {
608
+ return /* @__PURE__ */ $.createElement(Te.Provider, {
609
609
  value: m
610
610
  }, /* @__PURE__ */ $.createElement("span", {
611
611
  "data-focus-scope-start": !0,
@@ -876,7 +876,7 @@ function vo(e, t, o) {
876
876
  let s = i.getTreeNode(e);
877
877
  for (; s; ) {
878
878
  if (s.nodeToRestore && s.nodeToRestore.isConnected) {
879
- Fe(s.nodeToRestore);
879
+ Se(s.nodeToRestore);
880
880
  return;
881
881
  }
882
882
  s = s.parent;
@@ -884,7 +884,7 @@ function vo(e, t, o) {
884
884
  for (s = i.getTreeNode(e); s; ) {
885
885
  if (s.scopeRef && s.scopeRef.current && h.getTreeNode(s.scopeRef)) {
886
886
  let m = Ye(s.scopeRef.current, !0);
887
- Fe(m);
887
+ Se(m);
888
888
  return;
889
889
  }
890
890
  s = s.parent;
@@ -899,7 +899,7 @@ function vo(e, t, o) {
899
899
  t
900
900
  ]);
901
901
  }
902
- function Fe(e) {
902
+ function Se(e) {
903
903
  e.dispatchEvent(new CustomEvent(fe, {
904
904
  bubbles: !0,
905
905
  cancelable: !0
@@ -1069,15 +1069,15 @@ function yo() {
1069
1069
  e.scrollHeight === e.clientHeight && e.scrollWidth === e.clientWidth && i.preventDefault();
1070
1070
  }, r = (i) => {
1071
1071
  let s = i.target;
1072
- Be(s) && s !== document.activeElement && (i.preventDefault(), d(), s.style.transform = "translateY(-2000px)", s.focus(), requestAnimationFrame(() => {
1072
+ Fe(s) && s !== document.activeElement && (i.preventDefault(), d(), s.style.transform = "translateY(-2000px)", s.focus(), requestAnimationFrame(() => {
1073
1073
  s.style.transform = "";
1074
1074
  })), t && t();
1075
1075
  }, l = (i) => {
1076
1076
  let s = i.target;
1077
- Be(s) && (d(), s.style.transform = "translateY(-2000px)", requestAnimationFrame(() => {
1077
+ Fe(s) && (d(), s.style.transform = "translateY(-2000px)", requestAnimationFrame(() => {
1078
1078
  s.style.transform = "", se && (se.height < window.innerHeight ? requestAnimationFrame(() => {
1079
- Ce(s);
1080
- }) : se.addEventListener("resize", () => Ce(s), {
1079
+ Le(s);
1080
+ }) : se.addEventListener("resize", () => Le(s), {
1081
1081
  once: !0
1082
1082
  }));
1083
1083
  }));
@@ -1114,7 +1114,7 @@ function I(e, t, o, n) {
1114
1114
  e.removeEventListener(t, o, n);
1115
1115
  };
1116
1116
  }
1117
- function Ce(e) {
1117
+ function Le(e) {
1118
1118
  let t = document.scrollingElement || document.documentElement;
1119
1119
  for (; e && e !== t; ) {
1120
1120
  let o = Ve(e);
@@ -1125,7 +1125,7 @@ function Ce(e) {
1125
1125
  e = o.parentElement;
1126
1126
  }
1127
1127
  }
1128
- function Be(e) {
1128
+ function Fe(e) {
1129
1129
  return e instanceof HTMLInputElement && !Eo.has(e.type) || e instanceof HTMLTextAreaElement || e instanceof HTMLElement && e.isContentEditable;
1130
1130
  }
1131
1131
  let z = /* @__PURE__ */ new WeakMap(), P = [];
@@ -1281,7 +1281,7 @@ function Fo(e, t, o) {
1281
1281
  writable: !0
1282
1282
  }) : e[t] = o, e;
1283
1283
  }
1284
- function Ne(e, t) {
1284
+ function Ce(e, t) {
1285
1285
  var o = Object.keys(e);
1286
1286
  if (Object.getOwnPropertySymbols) {
1287
1287
  var n = Object.getOwnPropertySymbols(e);
@@ -1291,12 +1291,12 @@ function Ne(e, t) {
1291
1291
  }
1292
1292
  return o;
1293
1293
  }
1294
- function Oe(e) {
1294
+ function Be(e) {
1295
1295
  for (var t = 1; t < arguments.length; t++) {
1296
1296
  var o = arguments[t] != null ? arguments[t] : {};
1297
- t % 2 ? Ne(Object(o), !0).forEach(function(n) {
1297
+ t % 2 ? Ce(Object(o), !0).forEach(function(n) {
1298
1298
  Fo(e, n, o[n]);
1299
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(o)) : Ne(Object(o)).forEach(function(n) {
1299
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(o)) : Ce(Object(o)).forEach(function(n) {
1300
1300
  Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(o, n));
1301
1301
  });
1302
1302
  }
@@ -1310,7 +1310,7 @@ var Co = (e, t, o) => {
1310
1310
  }
1311
1311
  return !0;
1312
1312
  }, et = (e) => (t) => {
1313
- var o = e.defaultClassName, n = Oe(Oe({}, e.defaultVariants), t);
1313
+ var o = e.defaultClassName, n = Be(Be({}, e.defaultVariants), t);
1314
1314
  for (var r in n) {
1315
1315
  var l, a = (l = n[r]) !== null && l !== void 0 ? l : e.defaultVariants[r];
1316
1316
  if (a != null) {
@@ -1326,7 +1326,7 @@ var Co = (e, t, o) => {
1326
1326
  for (var [i, s] of e.compoundVariants)
1327
1327
  Co(i, n, e.defaultVariants) && (o += " " + s);
1328
1328
  return o;
1329
- }, Bo = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2o", No = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2q", Oo = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2r", tt = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2p", Do = et({ defaultClassName: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto20", variantClassNames: { kind: { informational: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto21", delete: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto22", failure: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto23", success: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto24", warning: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto25", successWithFailures: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto26", form: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto27" }, size: { sm: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto28", md: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto29", lg: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2a", xl: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2b" }, fullHeight: { true: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2c", false: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2d" } }, defaultVariants: {}, compoundVariants: [] }), Wo = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2n", Ao = et({ defaultClassName: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2e", variantClassNames: { kind: { form: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2f", delete: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2g", failure: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2h", informational: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2i", success: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2j", warning: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2k", successWithFailures: "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2l" } }, defaultVariants: {}, compoundVariants: [] }), Io = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2m", zo = "pkg_sps-woodland_modal__version_8_21_5__hash_3moto2s";
1329
+ }, Bo = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2o", No = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2q", Oo = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2r", tt = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2p", Do = et({ defaultClassName: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto20", variantClassNames: { kind: { informational: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto21", delete: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto22", failure: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto23", success: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto24", warning: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto25", successWithFailures: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto26", form: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto27" }, size: { sm: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto28", md: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto29", lg: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2a", xl: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2b" }, fullHeight: { true: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2c", false: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2d" } }, defaultVariants: {}, compoundVariants: [] }), Wo = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2n", Ao = et({ defaultClassName: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2e", variantClassNames: { kind: { form: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2f", delete: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2g", failure: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2h", informational: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2i", success: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2j", warning: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2k", successWithFailures: "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2l" } }, defaultVariants: {}, compoundVariants: [] }), Io = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2m", zo = "pkg_sps-woodland_modal__version_8_22_1__hash_3moto2s";
1330
1330
  function ot({
1331
1331
  children: e,
1332
1332
  className: t = "",
@@ -1334,8 +1334,23 @@ function ot({
1334
1334
  }) {
1335
1335
  return /* @__PURE__ */ u.createElement("div", { className: ue(tt, t), ...o }, e);
1336
1336
  }
1337
- We.set(ot, { name: "ModalFooter" });
1338
- const De = Object.freeze({
1337
+ De.set(ot, { name: "ModalFooter" });
1338
+ function Ne({
1339
+ dismissableValue: e,
1340
+ handleClose: t
1341
+ }) {
1342
+ return e ? /* @__PURE__ */ u.createElement(
1343
+ We,
1344
+ {
1345
+ "aria-label": "Close",
1346
+ onClick: t,
1347
+ kind: "icon",
1348
+ icon: "x",
1349
+ className: No
1350
+ }
1351
+ ) : null;
1352
+ }
1353
+ const Oe = Object.freeze({
1339
1354
  form: "pencil",
1340
1355
  delete: "trash",
1341
1356
  failure: "status-error",
@@ -1368,25 +1383,12 @@ function Ro({
1368
1383
  },
1369
1384
  c,
1370
1385
  B
1371
- ), { dialogProps: re, titleProps: at } = Lo(f, B), lt = ye(ne.onFocus, re.onFocus, l), it = ye(ne.onBlur, re.onBlur, r), { t: st } = u.useContext(mt), dt = pt({ "data-testid": o }), [ae, ut] = ft(
1386
+ ), { dialogProps: re, titleProps: at } = Lo(f, B), lt = Me(ne.onFocus, re.onFocus, l), it = Me(ne.onBlur, re.onBlur, r), { t: st } = u.useContext(mt), dt = pt({ "data-testid": o }), [ae, ut] = ft(
1372
1387
  e,
1373
1388
  [{ type: ot }]
1374
- );
1375
- function Ee() {
1389
+ ), Ee = u.useCallback(() => {
1376
1390
  p && typeof p == "function" && p(), c.close();
1377
- }
1378
- const _e = function() {
1379
- return y ? /* @__PURE__ */ u.createElement(
1380
- Pe,
1381
- {
1382
- "aria-label": "Close",
1383
- onClick: Ee,
1384
- kind: "icon",
1385
- icon: "x",
1386
- className: No
1387
- }
1388
- ) : null;
1389
- }, ct = gt(ut, (Me) => Me.type === _e ? [{ className: ue(Me.props.classname, Oo) }] : []);
1391
+ }, [p, c.close]), ct = gt(ut, (_e) => _e.type === Ne ? [{ className: ue(_e.props.classname, Oo) }] : []);
1390
1392
  return /* @__PURE__ */ u.createElement(To, null, /* @__PURE__ */ u.createElement("div", { className: zo, ...rt, ...f }, /* @__PURE__ */ u.createElement(
1391
1393
  "div",
1392
1394
  {
@@ -1402,18 +1404,18 @@ function Ro({
1402
1404
  /* @__PURE__ */ u.createElement("div", { ...at, className: Ao({ kind: n }) }, n && /* @__PURE__ */ u.createElement(
1403
1405
  bt,
1404
1406
  {
1405
- icon: De[n] || De.informational,
1407
+ icon: Oe[n] || Oe.informational,
1406
1408
  className: Wo
1407
1409
  }
1408
- ), /* @__PURE__ */ u.createElement("div", { className: Io }, le(i, c.close)), /* @__PURE__ */ u.createElement(_e, null)),
1410
+ ), /* @__PURE__ */ u.createElement("div", { className: Io }, le(i, c.close)), /* @__PURE__ */ u.createElement(Ne, { dismissableValue: y, handleClose: Ee })),
1409
1411
  /* @__PURE__ */ u.createElement("div", { className: Bo }, le(ct, c.close)),
1410
- ae && ae.length > 0 ? /* @__PURE__ */ u.createElement(u.Fragment, null, le(ae, c.close)) : /* @__PURE__ */ u.createElement("div", { className: tt }, /* @__PURE__ */ u.createElement(Pe, { kind: "key", onClick: Ee }, st("design-system:modal.defaultButtonLabel")))
1412
+ ae && ae.length > 0 ? /* @__PURE__ */ u.createElement(u.Fragment, null, le(ae, c.close)) : /* @__PURE__ */ u.createElement("div", { className: tt }, /* @__PURE__ */ u.createElement(We, { kind: "key", onClick: Ee }, st("design-system:modal.defaultButtonLabel")))
1411
1413
  )));
1412
1414
  }
1413
1415
  function nt(e) {
1414
1416
  return e.state.isOpen ? /* @__PURE__ */ u.createElement(Ro, { ...e }, e.children) : /* @__PURE__ */ u.createElement(u.Fragment, null);
1415
1417
  }
1416
- We.set(nt, {
1418
+ De.set(nt, {
1417
1419
  name: "Modal",
1418
1420
  props: {
1419
1421
  dismissable: { type: "boolean", default: "true" },
@@ -2217,6 +2219,6 @@ export {
2217
2219
  Jo as MANIFEST,
2218
2220
  nt as Modal,
2219
2221
  ot as ModalFooter,
2220
- De as ModalIcons,
2222
+ Oe as ModalIcons,
2221
2223
  Xo as useModal
2222
2224
  };
package/lib/index.umd.cjs CHANGED
@@ -1,4 +1,4 @@
1
- (function(y,w){typeof exports=="object"&&typeof module<"u"?w(exports,require("@sps-woodland/core"),require("@sps-woodland/buttons"),require("react"),require("react-dom"),require("@spscommerce/utils")):typeof define=="function"&&define.amd?define(["exports","@sps-woodland/core","@sps-woodland/buttons","react","react-dom","@spscommerce/utils"],w):(y=typeof globalThis<"u"?globalThis:y||self,w(y.Modal={},y.core,y.buttons,y.React,y.$4AOtR$reactdom,y.utils))})(this,function(y,w,he,m,Ye,v){"use strict";function Qe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const u=Qe(m),E=typeof document<"u"?m.useLayoutEffect:()=>{};function W(e){const t=m.useRef(null);return E(()=>{t.current=e},[e]),m.useCallback((...o)=>{const n=t.current;return n==null?void 0:n(...o)},[])}function Ze(e){let[t,o]=m.useState(e),n=m.useRef(null),r=W(()=>{if(!n.current)return;let a=n.current.next();if(a.done){n.current=null;return}t===a.value?r():o(a.value)});E(()=>{n.current&&r()});let l=W(a=>{n.current=a(t),r()});return[t,l]}const j={prefix:String(Math.round(Math.random()*1e10)),current:0},$e=m.createContext(j),Re=m.createContext(!1);let et=!!(typeof window<"u"&&window.document&&window.document.createElement),R=new WeakMap;function tt(e=!1){let t=m.useContext($e),o=m.useRef(null);if(o.current===null&&!e){var n,r;let l=(r=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)===null||r===void 0||(n=r.ReactCurrentOwner)===null||n===void 0?void 0:n.current;if(l){let a=R.get(l);a==null?R.set(l,{id:t.current,state:l.memoizedState}):l.memoizedState!==a.state&&(t.current=a.id,R.delete(l))}o.current=++t.current}return o.current}function ot(e){let t=m.useContext($e);t===j&&!et&&console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let o=tt(!!e),n=t===j&&process.env.NODE_ENV==="test"?"react-aria":`react-aria${t.prefix}`;return e||`${n}-${o}`}function nt(e){let t=m.useId(),[o]=m.useState(we()),n=o||process.env.NODE_ENV==="test"?"react-aria":`react-aria${j.prefix}`;return e||`${n}-${t}`}const rt=typeof m.useId=="function"?nt:ot;function at(){return!1}function lt(){return!0}function it(e){return()=>{}}function we(){return typeof m.useSyncExternalStore=="function"?m.useSyncExternalStore(it,at,lt):m.useContext(Re)}let st=!!(typeof window<"u"&&window.document&&window.document.createElement),F=new Map;function Ee(e){let[t,o]=m.useState(e),n=m.useRef(null),r=rt(t),l=m.useCallback(a=>{n.current=a},[]);return st&&(F.has(r)&&!F.get(r).includes(l)?F.set(r,[...F.get(r),l]):F.set(r,[l])),E(()=>{let a=r;return()=>{F.delete(a)}},[r]),m.useEffect(()=>{let a=n.current;a&&(n.current=null,o(a))}),r}function dt(e,t){if(e===t)return e;let o=F.get(e);if(o)return o.forEach(r=>r(t)),t;let n=F.get(t);return n?(n.forEach(r=>r(e)),e):t}function ut(e=[]){let t=Ee(),[o,n]=Ze(t),r=m.useCallback(()=>{n(function*(){yield t,yield document.getElementById(t)?t:void 0})},[t,n]);return E(r,[t,r,...e]),o}function K(...e){return(...t)=>{for(let o of e)typeof o=="function"&&o(...t)}}const M=e=>{var t;return(t=e==null?void 0:e.ownerDocument)!==null&&t!==void 0?t:document},U=e=>e&&"window"in e&&e.window===e?e:M(e).defaultView||window;function Me(e){var t,o,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(o=Me(e[t]))&&(n&&(n+=" "),n+=o)}else for(o in e)e[o]&&(n&&(n+=" "),n+=o);return n}function ct(){for(var e,t,o=0,n="",r=arguments.length;o<r;o++)(e=arguments[o])&&(t=Me(e))&&(n&&(n+=" "),n+=t);return n}function mt(...e){let t={...e[0]};for(let o=1;o<e.length;o++){let n=e[o];for(let r in n){let l=t[r],a=n[r];typeof l=="function"&&typeof a=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?t[r]=K(l,a):(r==="className"||r==="UNSAFE_className")&&typeof l=="string"&&typeof a=="string"?t[r]=ct(l,a):r==="id"&&l&&a?t.id=dt(l,a):t[r]=a!==void 0?a:l}}return t}const ft=new Set(["id"]),pt=new Set(["aria-label","aria-labelledby","aria-describedby","aria-details"]),gt=new Set(["href","hrefLang","target","rel","download","ping","referrerPolicy"]),bt=/^(data-.*)$/;function vt(e,t={}){let{labelable:o,isLink:n,propNames:r}=t,l={};for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(ft.has(a)||o&&pt.has(a)||n&&gt.has(a)||r!=null&&r.has(a)||bt.test(a))&&(l[a]=e[a]);return l}function _e(e){if(ht())e.focus({preventScroll:!0});else{let t=$t(e);e.focus(),wt(t)}}let G=null;function ht(){if(G==null){G=!1;try{document.createElement("div").focus({get preventScroll(){return G=!0,!0}})}catch{}}return G}function $t(e){let t=e.parentNode,o=[],n=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==n;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&o.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return n instanceof HTMLElement&&o.push({element:n,scrollTop:n.scrollTop,scrollLeft:n.scrollLeft}),o}function wt(e){for(let{element:t,scrollTop:o,scrollLeft:n}of e)t.scrollTop=o,t.scrollLeft=n}function Et(e){var t;return typeof window>"u"||window.navigator==null?!1:((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.brands.some(o=>e.test(o.brand)))||e.test(window.navigator.userAgent)}function ee(e){var t;return typeof window<"u"&&window.navigator!=null?e.test(((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.platform)||window.navigator.platform):!1}function A(e){let t=null;return()=>(t==null&&(t=e()),t)}const ye=A(function(){return ee(/^Mac/i)}),Mt=A(function(){return ee(/^iPhone/i)}),_t=A(function(){return ee(/^iPad/i)||ye()&&navigator.maxTouchPoints>1}),yt=A(function(){return Mt()||_t()}),Pt=A(function(){return Et(/Android/i)});let O=new Map,te=new Set;function Pe(){if(typeof window>"u")return;function e(n){return"propertyName"in n}let t=n=>{if(!e(n)||!n.target)return;let r=O.get(n.target);r||(r=new Set,O.set(n.target,r),n.target.addEventListener("transitioncancel",o,{once:!0})),r.add(n.propertyName)},o=n=>{if(!e(n)||!n.target)return;let r=O.get(n.target);if(r&&(r.delete(n.propertyName),r.size===0&&(n.target.removeEventListener("transitioncancel",o),O.delete(n.target)),O.size===0)){for(let l of te)l();te.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",o)}typeof document<"u"&&(document.readyState!=="loading"?Pe():document.addEventListener("DOMContentLoaded",Pe));function kt(e){requestAnimationFrame(()=>{O.size===0?e():te.add(e)})}function ke(e,t){let o=window.getComputedStyle(e),n=/(auto|scroll)/.test(o.overflow+o.overflowX+o.overflowY);return n&&t&&(n=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),n}function Te(e,t){let o=e;for(ke(o,t)&&(o=o.parentElement);o&&!ke(o,t);)o=o.parentElement;return o||document.scrollingElement||document.documentElement}function Tt(e){return e.mozInputSource===0&&e.isTrusted?!0:Pt()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function xt(e,t,o){let[n,r]=m.useState(e||t),l=m.useRef(e!==void 0),a=e!==void 0;m.useEffect(()=>{let i=l.current;i!==a&&console.warn(`WARN: A component changed from ${i?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}.`),l.current=a},[a]);let d=a?e:n,c=m.useCallback((i,...s)=>{let f=(p,...b)=>{o&&(Object.is(d,p)||o(p,...b)),a||(d=p)};typeof i=="function"?(console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),r((b,...g)=>{let T=i(a?d:b,...g);return f(T,...s),a?b:T})):(a||r(i),f(i,...s))},[a,d,o]);return[d,c]}const xe=m.createContext({register:()=>{}});xe.displayName="PressResponderContext";function St({children:e}){let t=m.useMemo(()=>({register:()=>{}}),[]);return m.createElement(xe.Provider,{value:t},e)}class Ft{isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}constructor(t,o){this.nativeEvent=o,this.target=o.target,this.currentTarget=o.currentTarget,this.relatedTarget=o.relatedTarget,this.bubbles=o.bubbles,this.cancelable=o.cancelable,this.defaultPrevented=o.defaultPrevented,this.eventPhase=o.eventPhase,this.isTrusted=o.isTrusted,this.timeStamp=o.timeStamp,this.type=t}}function Lt(e){let t=m.useRef({isFocused:!1,observer:null});E(()=>{const n=t.current;return()=>{n.observer&&(n.observer.disconnect(),n.observer=null)}},[]);let o=W(n=>{e==null||e(n)});return m.useCallback(n=>{if(n.target instanceof HTMLButtonElement||n.target instanceof HTMLInputElement||n.target instanceof HTMLTextAreaElement||n.target instanceof HTMLSelectElement){t.current.isFocused=!0;let r=n.target,l=a=>{t.current.isFocused=!1,r.disabled&&o(new Ft("blur",a)),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};r.addEventListener("focusout",l,{once:!0}),t.current.observer=new MutationObserver(()=>{if(t.current.isFocused&&r.disabled){var a;(a=t.current.observer)===null||a===void 0||a.disconnect();let d=r===document.activeElement?null:document.activeElement;r.dispatchEvent(new FocusEvent("blur",{relatedTarget:d})),r.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:d}))}}),t.current.observer.observe(r,{attributes:!0,attributeFilter:["disabled"]})}},[o])}let I=null,Ct=new Set,z=new Map,C=!1,oe=!1;function ne(e,t){for(let o of Ct)o(e,t)}function Bt(e){return!(e.metaKey||!ye()&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function X(e){C=!0,Bt(e)&&(I="keyboard",ne("keyboard",e))}function P(e){I="pointer",(e.type==="mousedown"||e.type==="pointerdown")&&(C=!0,ne("pointer",e))}function Se(e){Tt(e)&&(C=!0,I="virtual")}function Fe(e){e.target===window||e.target===document||(!C&&!oe&&(I="virtual",ne("virtual",e)),C=!1,oe=!1)}function Le(){C=!1,oe=!0}function Ce(e){if(typeof window>"u"||z.get(U(e)))return;const t=U(e),o=M(e);let n=t.HTMLElement.prototype.focus;t.HTMLElement.prototype.focus=function(){C=!0,n.apply(this,arguments)},o.addEventListener("keydown",X,!0),o.addEventListener("keyup",X,!0),o.addEventListener("click",Se,!0),t.addEventListener("focus",Fe,!0),t.addEventListener("blur",Le,!1),typeof PointerEvent<"u"?(o.addEventListener("pointerdown",P,!0),o.addEventListener("pointermove",P,!0),o.addEventListener("pointerup",P,!0)):(o.addEventListener("mousedown",P,!0),o.addEventListener("mousemove",P,!0),o.addEventListener("mouseup",P,!0)),t.addEventListener("beforeunload",()=>{Be(e)},{once:!0}),z.set(t,{focus:n})}const Be=(e,t)=>{const o=U(e),n=M(e);t&&n.removeEventListener("DOMContentLoaded",t),z.has(o)&&(o.HTMLElement.prototype.focus=z.get(o).focus,n.removeEventListener("keydown",X,!0),n.removeEventListener("keyup",X,!0),n.removeEventListener("click",Se,!0),o.removeEventListener("focus",Fe,!0),o.removeEventListener("blur",Le,!1),typeof PointerEvent<"u"?(n.removeEventListener("pointerdown",P,!0),n.removeEventListener("pointermove",P,!0),n.removeEventListener("pointerup",P,!0)):(n.removeEventListener("mousedown",P,!0),n.removeEventListener("mousemove",P,!0),n.removeEventListener("mouseup",P,!0)),z.delete(o))};function Nt(e){const t=M(e);let o;return t.readyState!=="loading"?Ce(e):(o=()=>{Ce(e)},t.addEventListener("DOMContentLoaded",o)),()=>Be(e,o)}typeof document<"u"&&Nt();function Ot(){return I}function Dt(e){let{isDisabled:t,onBlurWithin:o,onFocusWithin:n,onFocusWithinChange:r}=e,l=m.useRef({isFocusWithin:!1}),a=m.useCallback(i=>{l.current.isFocusWithin&&!i.currentTarget.contains(i.relatedTarget)&&(l.current.isFocusWithin=!1,o&&o(i),r&&r(!1))},[o,r,l]),d=Lt(a),c=m.useCallback(i=>{!l.current.isFocusWithin&&document.activeElement===i.target&&(n&&n(i),r&&r(!0),l.current.isFocusWithin=!0,d(i))},[n,r,d]);return t?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:c,onBlur:a}}}function Wt(e){let{ref:t,onInteractOutside:o,isDisabled:n,onInteractOutsideStart:r}=e,l=m.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}),a=W(c=>{o&&J(c,t)&&(r&&r(c),l.current.isPointerDown=!0)}),d=W(c=>{o&&o(c)});m.useEffect(()=>{let c=l.current;if(n)return;const i=t.current,s=M(i);if(typeof PointerEvent<"u"){let f=p=>{c.isPointerDown&&J(p,t)&&d(p),c.isPointerDown=!1};return s.addEventListener("pointerdown",a,!0),s.addEventListener("pointerup",f,!0),()=>{s.removeEventListener("pointerdown",a,!0),s.removeEventListener("pointerup",f,!0)}}else{let f=b=>{c.ignoreEmulatedMouseEvents?c.ignoreEmulatedMouseEvents=!1:c.isPointerDown&&J(b,t)&&d(b),c.isPointerDown=!1},p=b=>{c.ignoreEmulatedMouseEvents=!0,c.isPointerDown&&J(b,t)&&d(b),c.isPointerDown=!1};return s.addEventListener("mousedown",a,!0),s.addEventListener("mouseup",f,!0),s.addEventListener("touchstart",a,!0),s.addEventListener("touchend",p,!0),()=>{s.removeEventListener("mousedown",a,!0),s.removeEventListener("mouseup",f,!0),s.removeEventListener("touchstart",a,!0),s.removeEventListener("touchend",p,!0)}}},[t,n,a,d])}function J(e,t){if(e.button>0)return!1;if(e.target){const o=e.target.ownerDocument;if(!o||!o.documentElement.contains(e.target)||e.target.closest("[data-react-aria-top-layer]"))return!1}return t.current&&!t.current.contains(e.target)}function re(e){const t=M(e);if(Ot()==="virtual"){let o=t.activeElement;kt(()=>{t.activeElement===o&&e.isConnected&&_e(e)})}else _e(e)}function At(e){const t=U(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:o,visibility:n}=e.style,r=o!=="none"&&n!=="hidden"&&n!=="collapse";if(r){const{getComputedStyle:l}=e.ownerDocument.defaultView;let{display:a,visibility:d}=l(e);r=a!=="none"&&d!=="hidden"&&d!=="collapse"}return r}function It(e,t){return!e.hasAttribute("hidden")&&!e.hasAttribute("data-react-aria-prevent-focus")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function Ne(e,t){return e.nodeName!=="#comment"&&At(e)&&It(e,t)&&(!e.parentElement||Ne(e.parentElement,e))}const Oe=m.createContext(null),ae="react-aria-focus-scope-restore";let h=null;function zt(e){let{children:t,contain:o,restoreFocus:n,autoFocus:r}=e,l=m.useRef(null),a=m.useRef(null),d=m.useRef([]),{parentNode:c}=m.useContext(Oe)||{},i=m.useMemo(()=>new de({scopeRef:d}),[d]);E(()=>{let p=c||$.root;if($.getTreeNode(p.scopeRef)&&h&&!Q(h,p.scopeRef)){let b=$.getTreeNode(h);b&&(p=b)}p.addChild(i),$.addNode(i)},[i,c]),E(()=>{let p=$.getTreeNode(d);p&&(p.contain=!!o)},[o]),E(()=>{var p;let b=(p=l.current)===null||p===void 0?void 0:p.nextSibling,g=[],T=N=>N.stopPropagation();for(;b&&b!==a.current;)g.push(b),b.addEventListener(ae,T),b=b.nextSibling;return d.current=g,()=>{for(let N of g)N.removeEventListener(ae,T)}},[t]),Gt(d,n,o),jt(d,o),Jt(d,n,o),Ut(d,r),m.useEffect(()=>{const p=M(d.current?d.current[0]:void 0).activeElement;let b=null;if(_(p,d.current)){for(let g of $.traverse())g.scopeRef&&_(p,g.scopeRef.current)&&(b=g);b===$.getTreeNode(d)&&(h=b.scopeRef)}},[d]),E(()=>()=>{var p,b,g;let T=(g=(b=$.getTreeNode(d))===null||b===void 0||(p=b.parent)===null||p===void 0?void 0:p.scopeRef)!==null&&g!==void 0?g:null;(d===h||Q(d,h))&&(!T||$.getTreeNode(T))&&(h=T),$.removeTreeNode(d)},[d]);let s=m.useMemo(()=>qt(d),[]),f=m.useMemo(()=>({focusManager:s,parentNode:i}),[i,s]);return m.createElement(Oe.Provider,{value:f},m.createElement("span",{"data-focus-scope-start":!0,hidden:!0,ref:l}),t,m.createElement("span",{"data-focus-scope-end":!0,hidden:!0,ref:a}))}function qt(e){return{focusNext(t={}){let o=e.current,{from:n,tabbable:r,wrap:l,accept:a}=t,d=n||M(o[0]).activeElement,c=o[0].previousElementSibling,i=B(o),s=L(i,{tabbable:r,accept:a},o);s.currentNode=_(d,o)?d:c;let f=s.nextNode();return!f&&l&&(s.currentNode=c,f=s.nextNode()),f&&x(f,!0),f},focusPrevious(t={}){let o=e.current,{from:n,tabbable:r,wrap:l,accept:a}=t,d=n||M(o[0]).activeElement,c=o[o.length-1].nextElementSibling,i=B(o),s=L(i,{tabbable:r,accept:a},o);s.currentNode=_(d,o)?d:c;let f=s.previousNode();return!f&&l&&(s.currentNode=c,f=s.previousNode()),f&&x(f,!0),f},focusFirst(t={}){let o=e.current,{tabbable:n,accept:r}=t,l=B(o),a=L(l,{tabbable:n,accept:r},o);a.currentNode=o[0].previousElementSibling;let d=a.nextNode();return d&&x(d,!0),d},focusLast(t={}){let o=e.current,{tabbable:n,accept:r}=t,l=B(o),a=L(l,{tabbable:n,accept:r},o);a.currentNode=o[o.length-1].nextElementSibling;let d=a.previousNode();return d&&x(d,!0),d}}}const le=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Ht=le.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";le.push('[tabindex]:not([tabindex="-1"]):not([disabled])');const Vt=le.join(':not([hidden]):not([tabindex="-1"]),');function B(e){return e[0].parentElement}function q(e){let t=$.getTreeNode(h);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function jt(e,t){let o=m.useRef(void 0),n=m.useRef(void 0);E(()=>{let r=e.current;if(!t){n.current&&(cancelAnimationFrame(n.current),n.current=void 0);return}const l=M(r?r[0]:void 0);let a=i=>{if(i.key!=="Tab"||i.altKey||i.ctrlKey||i.metaKey||!q(e)||i.isComposing)return;let s=l.activeElement,f=e.current;if(!f||!_(s,f))return;let p=B(f),b=L(p,{tabbable:!0},f);if(!s)return;b.currentNode=s;let g=i.shiftKey?b.previousNode():b.nextNode();g||(b.currentNode=i.shiftKey?f[f.length-1].nextElementSibling:f[0].previousElementSibling,g=i.shiftKey?b.previousNode():b.nextNode()),i.preventDefault(),g&&x(g,!0)},d=i=>{(!h||Q(h,e))&&_(i.target,e.current)?(h=e,o.current=i.target):q(e)&&!Y(i.target,e)?o.current?o.current.focus():h&&h.current&&ie(h.current):q(e)&&(o.current=i.target)},c=i=>{n.current&&cancelAnimationFrame(n.current),n.current=requestAnimationFrame(()=>{if(l.activeElement&&q(e)&&!Y(l.activeElement,e))if(h=e,l.body.contains(i.target)){var s;o.current=i.target,(s=o.current)===null||s===void 0||s.focus()}else h.current&&ie(h.current)})};return l.addEventListener("keydown",a,!1),l.addEventListener("focusin",d,!1),r==null||r.forEach(i=>i.addEventListener("focusin",d,!1)),r==null||r.forEach(i=>i.addEventListener("focusout",c,!1)),()=>{l.removeEventListener("keydown",a,!1),l.removeEventListener("focusin",d,!1),r==null||r.forEach(i=>i.removeEventListener("focusin",d,!1)),r==null||r.forEach(i=>i.removeEventListener("focusout",c,!1))}},[e,t]),E(()=>()=>{n.current&&cancelAnimationFrame(n.current)},[n])}function De(e){return Y(e)}function _(e,t){return!e||!t?!1:t.some(o=>o.contains(e))}function Y(e,t=null){if(e instanceof Element&&e.closest("[data-react-aria-top-layer]"))return!0;for(let{scopeRef:o}of $.traverse($.getTreeNode(t)))if(o&&_(e,o.current))return!0;return!1}function Kt(e){return Y(e,h)}function Q(e,t){var o;let n=(o=$.getTreeNode(t))===null||o===void 0?void 0:o.parent;for(;n;){if(n.scopeRef===e)return!0;n=n.parent}return!1}function x(e,t=!1){if(e!=null&&!t)try{re(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function We(e,t=!0){let o=e[0].previousElementSibling,n=B(e),r=L(n,{tabbable:t},e);r.currentNode=o;let l=r.nextNode();return t&&!l&&(n=B(e),r=L(n,{tabbable:!1},e),r.currentNode=o,l=r.nextNode()),l}function ie(e,t=!0){x(We(e,t))}function Ut(e,t){const o=m.useRef(t);m.useEffect(()=>{if(o.current){h=e;const n=M(e.current?e.current[0]:void 0);!_(n.activeElement,h.current)&&e.current&&ie(e.current)}o.current=!1},[e])}function Gt(e,t,o){E(()=>{if(t||o)return;let n=e.current;const r=M(n?n[0]:void 0);let l=a=>{let d=a.target;_(d,e.current)?h=e:De(d)||(h=null)};return r.addEventListener("focusin",l,!1),n==null||n.forEach(a=>a.addEventListener("focusin",l,!1)),()=>{r.removeEventListener("focusin",l,!1),n==null||n.forEach(a=>a.removeEventListener("focusin",l,!1))}},[e,t,o])}function Xt(e){let t=$.getTreeNode(h);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return(t==null?void 0:t.scopeRef)===e}function Jt(e,t,o){const n=m.useRef(typeof document<"u"?M(e.current?e.current[0]:void 0).activeElement:null);E(()=>{let r=e.current;const l=M(r?r[0]:void 0);if(!t||o)return;let a=()=>{(!h||Q(h,e))&&_(l.activeElement,e.current)&&(h=e)};return l.addEventListener("focusin",a,!1),r==null||r.forEach(d=>d.addEventListener("focusin",a,!1)),()=>{l.removeEventListener("focusin",a,!1),r==null||r.forEach(d=>d.removeEventListener("focusin",a,!1))}},[e,o]),E(()=>{const r=M(e.current?e.current[0]:void 0);if(!t)return;let l=a=>{if(a.key!=="Tab"||a.altKey||a.ctrlKey||a.metaKey||!q(e)||a.isComposing)return;let d=r.activeElement;if(!_(d,e.current))return;let c=$.getTreeNode(e);if(!c)return;let i=c.nodeToRestore,s=L(r.body,{tabbable:!0});s.currentNode=d;let f=a.shiftKey?s.previousNode():s.nextNode();if((!i||!r.body.contains(i)||i===r.body)&&(i=void 0,c.nodeToRestore=void 0),(!f||!_(f,e.current))&&i){s.currentNode=i;do f=a.shiftKey?s.previousNode():s.nextNode();while(_(f,e.current));a.preventDefault(),a.stopPropagation(),f?x(f,!0):De(i)?x(i,!0):d.blur()}};return o||r.addEventListener("keydown",l,!0),()=>{o||r.removeEventListener("keydown",l,!0)}},[e,t,o]),E(()=>{const r=M(e.current?e.current[0]:void 0);if(!t)return;let l=$.getTreeNode(e);if(l){var a;return l.nodeToRestore=(a=n.current)!==null&&a!==void 0?a:void 0,()=>{let d=$.getTreeNode(e);if(!d)return;let c=d.nodeToRestore;if(t&&c&&(_(r.activeElement,e.current)||r.activeElement===r.body&&Xt(e))){let i=$.clone();requestAnimationFrame(()=>{if(r.activeElement===r.body){let s=i.getTreeNode(e);for(;s;){if(s.nodeToRestore&&s.nodeToRestore.isConnected){Ae(s.nodeToRestore);return}s=s.parent}for(s=i.getTreeNode(e);s;){if(s.scopeRef&&s.scopeRef.current&&$.getTreeNode(s.scopeRef)){let f=We(s.scopeRef.current,!0);Ae(f);return}s=s.parent}}})}}}},[e,t])}function Ae(e){e.dispatchEvent(new CustomEvent(ae,{bubbles:!0,cancelable:!0}))&&x(e)}function L(e,t,o){let n=t!=null&&t.tabbable?Vt:Ht,r=M(e).createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode(l){var a;return!(t==null||(a=t.from)===null||a===void 0)&&a.contains(l)?NodeFilter.FILTER_REJECT:l.matches(n)&&Ne(l)&&(!o||_(l,o))&&(!(t!=null&&t.accept)||t.accept(l))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t!=null&&t.from&&(r.currentNode=t.from),r}class se{get size(){return this.fastMap.size}getTreeNode(t){return this.fastMap.get(t)}addTreeNode(t,o,n){let r=this.fastMap.get(o??null);if(!r)return;let l=new de({scopeRef:t});r.addChild(l),l.parent=r,this.fastMap.set(t,l),n&&(l.nodeToRestore=n)}addNode(t){this.fastMap.set(t.scopeRef,t)}removeTreeNode(t){if(t===null)return;let o=this.fastMap.get(t);if(!o)return;let n=o.parent;for(let l of this.traverse())l!==o&&o.nodeToRestore&&l.nodeToRestore&&o.scopeRef&&o.scopeRef.current&&_(l.nodeToRestore,o.scopeRef.current)&&(l.nodeToRestore=o.nodeToRestore);let r=o.children;n&&(n.removeChild(o),r.size>0&&r.forEach(l=>n&&n.addChild(l))),this.fastMap.delete(o.scopeRef)}*traverse(t=this.root){if(t.scopeRef!=null&&(yield t),t.children.size>0)for(let o of t.children)yield*this.traverse(o)}clone(){var t;let o=new se;var n;for(let r of this.traverse())o.addTreeNode(r.scopeRef,(n=(t=r.parent)===null||t===void 0?void 0:t.scopeRef)!==null&&n!==void 0?n:null,r.nodeToRestore);return o}constructor(){this.fastMap=new Map,this.root=new de({scopeRef:null}),this.fastMap.set(null,this.root)}}class de{addChild(t){this.children.add(t),t.parent=this}removeChild(t){this.children.delete(t),t.parent=void 0}constructor(t){this.children=new Set,this.contain=!1,this.scopeRef=t.scopeRef}}let $=new se;const Yt=new WeakMap,S=[];function Qt(e,t){let{onClose:o,shouldCloseOnBlur:n,isOpen:r,isDismissable:l=!1,isKeyboardDismissDisabled:a=!1,shouldCloseOnInteractOutside:d}=e;m.useEffect(()=>(r&&S.push(t),()=>{let g=S.indexOf(t);g>=0&&S.splice(g,1)}),[r,t]);let c=()=>{S[S.length-1]===t&&o&&o()},i=g=>{(!d||d(g.target))&&S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault())},s=g=>{(!d||d(g.target))&&(S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault()),c())},f=g=>{g.key==="Escape"&&!a&&!g.nativeEvent.isComposing&&(g.stopPropagation(),g.preventDefault(),c())};Wt({ref:t,onInteractOutside:l&&r?s:null,onInteractOutsideStart:i});let{focusWithinProps:p}=Dt({isDisabled:!n,onBlurWithin:g=>{!g.relatedTarget||Kt(g.relatedTarget)||(!d||d(g.relatedTarget))&&o()}}),b=g=>{g.target===g.currentTarget&&g.preventDefault()};return{overlayProps:{onKeyDown:f,...p},underlayProps:{onPointerDown:b}}}function Zt(e,t,o){let{type:n}=e,{isOpen:r}=t;m.useEffect(()=>{o&&o.current&&Yt.set(o.current,t.close)});let l;n==="menu"?l=!0:n==="listbox"&&(l="listbox");let a=Ee();return{triggerProps:{"aria-haspopup":l,"aria-expanded":r,"aria-controls":r?a:null,onPress:t.toggle},overlayProps:{id:a}}}const ue=typeof document<"u"&&window.visualViewport,Rt=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let Z=0,ce;function eo(e={}){let{isDisabled:t}=e;E(()=>{if(!t)return Z++,Z===1&&(yt()?ce=oo():ce=to()),()=>{Z--,Z===0&&ce()}},[t])}function to(){return K(D(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),D(document.documentElement,"overflow","hidden"))}function oo(){let e,t,o=i=>{e=Te(i.target,!0),!(e===document.documentElement&&e===document.body)&&e instanceof HTMLElement&&window.getComputedStyle(e).overscrollBehavior==="auto"&&(t=D(e,"overscrollBehavior","contain"))},n=i=>{if(!e||e===document.documentElement||e===document.body){i.preventDefault();return}e.scrollHeight===e.clientHeight&&e.scrollWidth===e.clientWidth&&i.preventDefault()},r=i=>{let s=i.target;ze(s)&&s!==document.activeElement&&(i.preventDefault(),d(),s.style.transform="translateY(-2000px)",s.focus(),requestAnimationFrame(()=>{s.style.transform=""})),t&&t()},l=i=>{let s=i.target;ze(s)&&(d(),s.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{s.style.transform="",ue&&(ue.height<window.innerHeight?requestAnimationFrame(()=>{Ie(s)}):ue.addEventListener("resize",()=>Ie(s),{once:!0}))}))},a=null,d=()=>{if(a)return;let i=()=>{window.scrollTo(0,0)},s=window.pageXOffset,f=window.pageYOffset;a=K(H(window,"scroll",i),D(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),D(document.documentElement,"overflow","hidden"),D(document.body,"marginTop",`-${f}px`),()=>{window.scrollTo(s,f)}),window.scrollTo(0,0)},c=K(H(document,"touchstart",o,{passive:!1,capture:!0}),H(document,"touchmove",n,{passive:!1,capture:!0}),H(document,"touchend",r,{passive:!1,capture:!0}),H(document,"focus",l,!0));return()=>{t==null||t(),a==null||a(),c()}}function D(e,t,o){let n=e.style[t];return e.style[t]=o,()=>{e.style[t]=n}}function H(e,t,o,n){return e.addEventListener(t,o,n),()=>{e.removeEventListener(t,o,n)}}function Ie(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let o=Te(e);if(o!==document.documentElement&&o!==document.body&&o!==e){let n=o.getBoundingClientRect().top,r=e.getBoundingClientRect().top;r>n+e.clientHeight&&(o.scrollTop+=r-n)}e=o.parentElement}}function ze(e){return e instanceof HTMLInputElement&&!Rt.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}let V=new WeakMap,k=[];function no(e,t=document.body){let o=new Set(e),n=new Set,r=c=>{for(let p of c.querySelectorAll("[data-live-announcer], [data-react-aria-top-layer]"))o.add(p);let i=p=>{if(o.has(p)||n.has(p.parentElement)&&p.parentElement.getAttribute("role")!=="row")return NodeFilter.FILTER_REJECT;for(let b of o)if(p.contains(b))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},s=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT,{acceptNode:i}),f=i(c);if(f===NodeFilter.FILTER_ACCEPT&&l(c),f!==NodeFilter.FILTER_REJECT){let p=s.nextNode();for(;p!=null;)l(p),p=s.nextNode()}},l=c=>{var i;let s=(i=V.get(c))!==null&&i!==void 0?i:0;c.getAttribute("aria-hidden")==="true"&&s===0||(s===0&&c.setAttribute("aria-hidden","true"),n.add(c),V.set(c,s+1))};k.length&&k[k.length-1].disconnect(),r(t);let a=new MutationObserver(c=>{for(let i of c)if(!(i.type!=="childList"||i.addedNodes.length===0)&&![...o,...n].some(s=>s.contains(i.target))){for(let s of i.removedNodes)s instanceof Element&&(o.delete(s),n.delete(s));for(let s of i.addedNodes)(s instanceof HTMLElement||s instanceof SVGElement)&&(s.dataset.liveAnnouncer==="true"||s.dataset.reactAriaTopLayer==="true")?o.add(s):s instanceof Element&&r(s)}});a.observe(t,{childList:!0,subtree:!0});let d={observe(){a.observe(t,{childList:!0,subtree:!0})},disconnect(){a.disconnect()}};return k.push(d),()=>{a.disconnect();for(let c of n){let i=V.get(c);i===1?(c.removeAttribute("aria-hidden"),V.delete(c)):V.set(c,i-1)}d===k[k.length-1]?(k.pop(),k.length&&k[k.length-1].observe()):k.splice(k.indexOf(d),1)}}const ro=m.createContext({});function ao(){var e;return(e=m.useContext(ro))!==null&&e!==void 0?e:{}}const qe=m.createContext(null);function lo(e){let t=we(),{portalContainer:o=t?null:document.body,isExiting:n}=e,[r,l]=m.useState(!1),a=m.useMemo(()=>({contain:r,setContain:l}),[r,l]),{getContainer:d}=ao();if(!e.portalContainer&&d&&(o=d()),!o)return null;let c=e.children;return e.disableFocusManagement||(c=m.createElement(zt,{restoreFocus:!0,contain:r&&!n},c)),c=m.createElement(qe.Provider,{value:a},m.createElement(St,null,c)),Ye.createPortal(c,o)}function He(){let e=m.useContext(qe),t=e==null?void 0:e.setContain;E(()=>{t==null||t(!0)},[t])}function io(e,t,o){let{overlayProps:n,underlayProps:r}=Qt({...e,isOpen:t.isOpen,onClose:t.close},o);return eo({isDisabled:!t.isOpen}),He(),m.useEffect(()=>{if(t.isOpen)return no([o.current])},[t.isOpen,o]),{modalProps:mt(n),underlayProps:r}}function so(e,t){let{role:o="dialog"}=e,n=ut();n=e["aria-label"]?void 0:n;let r=m.useRef(!1);return m.useEffect(()=>{if(t.current&&!t.current.contains(document.activeElement)){re(t.current);let l=setTimeout(()=>{document.activeElement===t.current&&(r.current=!0,t.current&&(t.current.blur(),re(t.current)),r.current=!1)},500);return()=>{clearTimeout(l)}}},[t]),He(),{dialogProps:{...vt(e,{labelable:!0}),role:o,tabIndex:-1,"aria-labelledby":e["aria-labelledby"]||n,onBlur:l=>{r.current&&l.stopPropagation()}},titleProps:{id:n}}}function uo(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function Ve(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),o.push.apply(o,n)}return o}function je(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Ve(Object(o),!0).forEach(function(n){uo(e,n,o[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Ve(Object(o)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))})}return e}var co=(e,t,o)=>{for(var n of Object.keys(e)){var r;if(e[n]!==((r=t[n])!==null&&r!==void 0?r:o[n]))return!1}return!0},Ke=e=>t=>{var o=e.defaultClassName,n=je(je({},e.defaultVariants),t);for(var r in n){var l,a=(l=n[r])!==null&&l!==void 0?l:e.defaultVariants[r];if(a!=null){var d=a;typeof d=="boolean"&&(d=d===!0?"true":"false");var c=e.variantClassNames[r][d];c&&(o+=" "+c)}}for(var[i,s]of e.compoundVariants)co(i,n,e.defaultVariants)&&(o+=" "+s);return o},mo="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2o",fo="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2q",po="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2r",Ue="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2p",go=Ke({defaultClassName:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto20",variantClassNames:{kind:{informational:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto21",delete:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto22",failure:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto23",success:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto24",warning:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto25",successWithFailures:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto26",form:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto27"},size:{sm:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto28",md:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto29",lg:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2a",xl:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2b"},fullHeight:{true:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2c",false:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2d"}},defaultVariants:{},compoundVariants:[]}),bo="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2n",vo=Ke({defaultClassName:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2e",variantClassNames:{kind:{form:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2f",delete:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2g",failure:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2h",informational:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2i",success:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2j",warning:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2k",successWithFailures:"pkg_sps-woodland_modal__version_8_21_5__hash_3moto2l"}},defaultVariants:{},compoundVariants:[]}),ho="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2m",$o="pkg_sps-woodland_modal__version_8_21_5__hash_3moto2s";function me({children:e,className:t="",...o}){return u.createElement("div",{className:w.cl(Ue,t),...o},e)}w.Metadata.set(me,{name:"ModalFooter"});const fe=Object.freeze({form:"pencil",delete:"trash",failure:"status-error",informational:"info-circle",success:"status-ok",successWithFailures:"status-warning",warning:"status-warning"});function wo({children:e,className:t,"data-testid":o,kind:n="informational",onBlur:r,onFocus:l,overlayProps:a,size:d="sm",state:c,title:i,dismissible:s,dismissable:f=!0,onClose:p,fullHeight:b=!1,...g}){const T=s??f,N=u.useRef(null),{modalProps:ge,underlayProps:yo}=io({isKeyboardDismissDisabled:!T,...g},c,N),{dialogProps:be,titleProps:Po}=so(g,N),ko=w.combineEventHandlers(ge.onFocus,be.onFocus,l),To=w.combineEventHandlers(ge.onBlur,be.onBlur,r),{t:xo}=u.useContext(w.I18nContext),So=w.useChildTestIdAttrBuilder({"data-testid":o}),[ve,Fo]=w.selectChildren(e,[{type:me}]);function Ge(){p&&typeof p=="function"&&p(),c.close()}const Xe=function(){return T?u.createElement(he.Button,{"aria-label":"Close",onClick:Ge,kind:"icon",icon:"x",className:fo}):null},Lo=w.modChildren(Fo,Je=>Je.type===Xe?[{className:w.cl(Je.props.classname,po)}]:[]);return u.createElement(lo,null,u.createElement("div",{className:$o,...yo,...g},u.createElement("div",{...ge,...be,...a,onFocus:ko,onBlur:To,...So("dialog"),ref:N,className:w.cl(go({kind:n,size:d,fullHeight:b}),t)},u.createElement("div",{...Po,className:vo({kind:n})},n&&u.createElement(w.Icon,{icon:fe[n]||fe.informational,className:bo}),u.createElement("div",{className:ho},w.contentOf(i,c.close)),u.createElement(Xe,null)),u.createElement("div",{className:mo},w.contentOf(Lo,c.close)),ve&&ve.length>0?u.createElement(u.Fragment,null,w.contentOf(ve,c.close)):u.createElement("div",{className:Ue},u.createElement(he.Button,{kind:"key",onClick:Ge},xo("design-system:modal.defaultButtonLabel"))))))}function pe(e){return e.state.isOpen?u.createElement(wo,{...e},e.children):u.createElement(u.Fragment,null)}w.Metadata.set(pe,{name:"Modal",props:{dismissable:{type:"boolean",default:"true"},fullHeight:{type:"boolean",default:"false"},kind:{type:"ModalKind",default:"informational"},onBlur:{type:"() => void"},onClose:{type:"() => void"},onFocus:{type:"() => void"},size:{type:"ModalSize",default:"sm"},title:{type:"string"}}});function Eo(e){let[t,o]=xt(e.isOpen,e.defaultOpen||!1,e.onOpenChange);const n=m.useCallback(()=>{o(!0)},[o]),r=m.useCallback(()=>{o(!1)},[o]),l=m.useCallback(()=>{o(!t)},[o,t]);return{isOpen:t,setOpen:o,open:n,close:r,toggle:l}}function Mo(e={}){const t=Eo(e),o=m.useRef(null),{triggerProps:n,overlayProps:r}=Zt({type:"dialog"},t,o),{onPress:l,...a}=n;return{triggerProps:{...a,onClick:l,ref:o},modalState:t,modalProps:{overlayProps:r,state:t}}}const _o={Modals:{description:()=>u.createElement("p",null,"Modals are overlays on a page that focus a user’s attention on an important message or a simple action. Examples of a Modal include confirming the deletion of a record, or making a single selection."),components:[pe],examples:{general:{label:"Usage",description:({NavigateTo:e})=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Use a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When the user needs to confirm a basic decision, such as deleting a record."),u.createElement("li",null,"When important information needs to be displayed to the user before continuing."),u.createElement("li",null,"When a simple selection, such as a single form input, is required before proceeding.")),u.createElement("h5",null,"Avoid a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When a complex form is required. Use a ",u.createElement(e,{to:"focused-task"},"Focused Task View")," instead."),u.createElement("li",null,"When sharing non-critical or tertiary information. Use a ",u.createElement(e,{to:"growlers"},"Growler")," instead.")))},implementation:{label:"Close Button",description:()=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Close Button and Modal dismissiability"),u.createElement("p",null,"Remove the Close Button in the upper right of the Modal if the user must choose the course of action before proceeding."),u.createElement("p",null,"The close button is included by default and omitted when the prop ",u.createElement("code",null,"dismissable")," is set to ",u.createElement("strong",null,"false"),"."),u.createElement("p",null,"Setting the ",u.createElement("code",null,"dismissable")," prop to false also prevents dismissing the modal by clicking outside of the modal or by using the"," ",u.createElement("strong",null,"escape")," key.")),examples:{basic:{react:v.code`
1
+ (function(y,w){typeof exports=="object"&&typeof module<"u"?w(exports,require("@sps-woodland/core"),require("@sps-woodland/buttons"),require("react"),require("react-dom"),require("@spscommerce/utils")):typeof define=="function"&&define.amd?define(["exports","@sps-woodland/core","@sps-woodland/buttons","react","react-dom","@spscommerce/utils"],w):(y=typeof globalThis<"u"?globalThis:y||self,w(y.Modal={},y.core,y.buttons,y.React,y.$4AOtR$reactdom,y.utils))})(this,function(y,w,he,m,Ye,v){"use strict";function Qe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const n=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,n.get?n:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const u=Qe(m),E=typeof document<"u"?m.useLayoutEffect:()=>{};function W(e){const t=m.useRef(null);return E(()=>{t.current=e},[e]),m.useCallback((...o)=>{const n=t.current;return n==null?void 0:n(...o)},[])}function Ze(e){let[t,o]=m.useState(e),n=m.useRef(null),r=W(()=>{if(!n.current)return;let a=n.current.next();if(a.done){n.current=null;return}t===a.value?r():o(a.value)});E(()=>{n.current&&r()});let l=W(a=>{n.current=a(t),r()});return[t,l]}const j={prefix:String(Math.round(Math.random()*1e10)),current:0},$e=m.createContext(j),Re=m.createContext(!1);let et=!!(typeof window<"u"&&window.document&&window.document.createElement),R=new WeakMap;function tt(e=!1){let t=m.useContext($e),o=m.useRef(null);if(o.current===null&&!e){var n,r;let l=(r=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)===null||r===void 0||(n=r.ReactCurrentOwner)===null||n===void 0?void 0:n.current;if(l){let a=R.get(l);a==null?R.set(l,{id:t.current,state:l.memoizedState}):l.memoizedState!==a.state&&(t.current=a.id,R.delete(l))}o.current=++t.current}return o.current}function ot(e){let t=m.useContext($e);t===j&&!et&&console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");let o=tt(!!e),n=t===j&&process.env.NODE_ENV==="test"?"react-aria":`react-aria${t.prefix}`;return e||`${n}-${o}`}function nt(e){let t=m.useId(),[o]=m.useState(we()),n=o||process.env.NODE_ENV==="test"?"react-aria":`react-aria${j.prefix}`;return e||`${n}-${t}`}const rt=typeof m.useId=="function"?nt:ot;function at(){return!1}function lt(){return!0}function it(e){return()=>{}}function we(){return typeof m.useSyncExternalStore=="function"?m.useSyncExternalStore(it,at,lt):m.useContext(Re)}let st=!!(typeof window<"u"&&window.document&&window.document.createElement),F=new Map;function Ee(e){let[t,o]=m.useState(e),n=m.useRef(null),r=rt(t),l=m.useCallback(a=>{n.current=a},[]);return st&&(F.has(r)&&!F.get(r).includes(l)?F.set(r,[...F.get(r),l]):F.set(r,[l])),E(()=>{let a=r;return()=>{F.delete(a)}},[r]),m.useEffect(()=>{let a=n.current;a&&(n.current=null,o(a))}),r}function dt(e,t){if(e===t)return e;let o=F.get(e);if(o)return o.forEach(r=>r(t)),t;let n=F.get(t);return n?(n.forEach(r=>r(e)),e):t}function ut(e=[]){let t=Ee(),[o,n]=Ze(t),r=m.useCallback(()=>{n(function*(){yield t,yield document.getElementById(t)?t:void 0})},[t,n]);return E(r,[t,r,...e]),o}function K(...e){return(...t)=>{for(let o of e)typeof o=="function"&&o(...t)}}const M=e=>{var t;return(t=e==null?void 0:e.ownerDocument)!==null&&t!==void 0?t:document},U=e=>e&&"window"in e&&e.window===e?e:M(e).defaultView||window;function Me(e){var t,o,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(o=Me(e[t]))&&(n&&(n+=" "),n+=o)}else for(o in e)e[o]&&(n&&(n+=" "),n+=o);return n}function ct(){for(var e,t,o=0,n="",r=arguments.length;o<r;o++)(e=arguments[o])&&(t=Me(e))&&(n&&(n+=" "),n+=t);return n}function mt(...e){let t={...e[0]};for(let o=1;o<e.length;o++){let n=e[o];for(let r in n){let l=t[r],a=n[r];typeof l=="function"&&typeof a=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?t[r]=K(l,a):(r==="className"||r==="UNSAFE_className")&&typeof l=="string"&&typeof a=="string"?t[r]=ct(l,a):r==="id"&&l&&a?t.id=dt(l,a):t[r]=a!==void 0?a:l}}return t}const ft=new Set(["id"]),pt=new Set(["aria-label","aria-labelledby","aria-describedby","aria-details"]),gt=new Set(["href","hrefLang","target","rel","download","ping","referrerPolicy"]),bt=/^(data-.*)$/;function vt(e,t={}){let{labelable:o,isLink:n,propNames:r}=t,l={};for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(ft.has(a)||o&&pt.has(a)||n&&gt.has(a)||r!=null&&r.has(a)||bt.test(a))&&(l[a]=e[a]);return l}function _e(e){if(ht())e.focus({preventScroll:!0});else{let t=$t(e);e.focus(),wt(t)}}let G=null;function ht(){if(G==null){G=!1;try{document.createElement("div").focus({get preventScroll(){return G=!0,!0}})}catch{}}return G}function $t(e){let t=e.parentNode,o=[],n=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==n;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&o.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return n instanceof HTMLElement&&o.push({element:n,scrollTop:n.scrollTop,scrollLeft:n.scrollLeft}),o}function wt(e){for(let{element:t,scrollTop:o,scrollLeft:n}of e)t.scrollTop=o,t.scrollLeft=n}function Et(e){var t;return typeof window>"u"||window.navigator==null?!1:((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.brands.some(o=>e.test(o.brand)))||e.test(window.navigator.userAgent)}function ee(e){var t;return typeof window<"u"&&window.navigator!=null?e.test(((t=window.navigator.userAgentData)===null||t===void 0?void 0:t.platform)||window.navigator.platform):!1}function A(e){let t=null;return()=>(t==null&&(t=e()),t)}const ye=A(function(){return ee(/^Mac/i)}),Mt=A(function(){return ee(/^iPhone/i)}),_t=A(function(){return ee(/^iPad/i)||ye()&&navigator.maxTouchPoints>1}),yt=A(function(){return Mt()||_t()}),Pt=A(function(){return Et(/Android/i)});let O=new Map,te=new Set;function Pe(){if(typeof window>"u")return;function e(n){return"propertyName"in n}let t=n=>{if(!e(n)||!n.target)return;let r=O.get(n.target);r||(r=new Set,O.set(n.target,r),n.target.addEventListener("transitioncancel",o,{once:!0})),r.add(n.propertyName)},o=n=>{if(!e(n)||!n.target)return;let r=O.get(n.target);if(r&&(r.delete(n.propertyName),r.size===0&&(n.target.removeEventListener("transitioncancel",o),O.delete(n.target)),O.size===0)){for(let l of te)l();te.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",o)}typeof document<"u"&&(document.readyState!=="loading"?Pe():document.addEventListener("DOMContentLoaded",Pe));function kt(e){requestAnimationFrame(()=>{O.size===0?e():te.add(e)})}function ke(e,t){let o=window.getComputedStyle(e),n=/(auto|scroll)/.test(o.overflow+o.overflowX+o.overflowY);return n&&t&&(n=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),n}function Te(e,t){let o=e;for(ke(o,t)&&(o=o.parentElement);o&&!ke(o,t);)o=o.parentElement;return o||document.scrollingElement||document.documentElement}function Tt(e){return e.mozInputSource===0&&e.isTrusted?!0:Pt()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function xt(e,t,o){let[n,r]=m.useState(e||t),l=m.useRef(e!==void 0),a=e!==void 0;m.useEffect(()=>{let i=l.current;i!==a&&console.warn(`WARN: A component changed from ${i?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}.`),l.current=a},[a]);let d=a?e:n,c=m.useCallback((i,...s)=>{let f=(p,...b)=>{o&&(Object.is(d,p)||o(p,...b)),a||(d=p)};typeof i=="function"?(console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),r((b,...g)=>{let T=i(a?d:b,...g);return f(T,...s),a?b:T})):(a||r(i),f(i,...s))},[a,d,o]);return[d,c]}const xe=m.createContext({register:()=>{}});xe.displayName="PressResponderContext";function St({children:e}){let t=m.useMemo(()=>({register:()=>{}}),[]);return m.createElement(xe.Provider,{value:t},e)}class Ft{isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}constructor(t,o){this.nativeEvent=o,this.target=o.target,this.currentTarget=o.currentTarget,this.relatedTarget=o.relatedTarget,this.bubbles=o.bubbles,this.cancelable=o.cancelable,this.defaultPrevented=o.defaultPrevented,this.eventPhase=o.eventPhase,this.isTrusted=o.isTrusted,this.timeStamp=o.timeStamp,this.type=t}}function Lt(e){let t=m.useRef({isFocused:!1,observer:null});E(()=>{const n=t.current;return()=>{n.observer&&(n.observer.disconnect(),n.observer=null)}},[]);let o=W(n=>{e==null||e(n)});return m.useCallback(n=>{if(n.target instanceof HTMLButtonElement||n.target instanceof HTMLInputElement||n.target instanceof HTMLTextAreaElement||n.target instanceof HTMLSelectElement){t.current.isFocused=!0;let r=n.target,l=a=>{t.current.isFocused=!1,r.disabled&&o(new Ft("blur",a)),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};r.addEventListener("focusout",l,{once:!0}),t.current.observer=new MutationObserver(()=>{if(t.current.isFocused&&r.disabled){var a;(a=t.current.observer)===null||a===void 0||a.disconnect();let d=r===document.activeElement?null:document.activeElement;r.dispatchEvent(new FocusEvent("blur",{relatedTarget:d})),r.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:d}))}}),t.current.observer.observe(r,{attributes:!0,attributeFilter:["disabled"]})}},[o])}let I=null,Ct=new Set,z=new Map,C=!1,oe=!1;function ne(e,t){for(let o of Ct)o(e,t)}function Bt(e){return!(e.metaKey||!ye()&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function X(e){C=!0,Bt(e)&&(I="keyboard",ne("keyboard",e))}function P(e){I="pointer",(e.type==="mousedown"||e.type==="pointerdown")&&(C=!0,ne("pointer",e))}function Se(e){Tt(e)&&(C=!0,I="virtual")}function Fe(e){e.target===window||e.target===document||(!C&&!oe&&(I="virtual",ne("virtual",e)),C=!1,oe=!1)}function Le(){C=!1,oe=!0}function Ce(e){if(typeof window>"u"||z.get(U(e)))return;const t=U(e),o=M(e);let n=t.HTMLElement.prototype.focus;t.HTMLElement.prototype.focus=function(){C=!0,n.apply(this,arguments)},o.addEventListener("keydown",X,!0),o.addEventListener("keyup",X,!0),o.addEventListener("click",Se,!0),t.addEventListener("focus",Fe,!0),t.addEventListener("blur",Le,!1),typeof PointerEvent<"u"?(o.addEventListener("pointerdown",P,!0),o.addEventListener("pointermove",P,!0),o.addEventListener("pointerup",P,!0)):(o.addEventListener("mousedown",P,!0),o.addEventListener("mousemove",P,!0),o.addEventListener("mouseup",P,!0)),t.addEventListener("beforeunload",()=>{Be(e)},{once:!0}),z.set(t,{focus:n})}const Be=(e,t)=>{const o=U(e),n=M(e);t&&n.removeEventListener("DOMContentLoaded",t),z.has(o)&&(o.HTMLElement.prototype.focus=z.get(o).focus,n.removeEventListener("keydown",X,!0),n.removeEventListener("keyup",X,!0),n.removeEventListener("click",Se,!0),o.removeEventListener("focus",Fe,!0),o.removeEventListener("blur",Le,!1),typeof PointerEvent<"u"?(n.removeEventListener("pointerdown",P,!0),n.removeEventListener("pointermove",P,!0),n.removeEventListener("pointerup",P,!0)):(n.removeEventListener("mousedown",P,!0),n.removeEventListener("mousemove",P,!0),n.removeEventListener("mouseup",P,!0)),z.delete(o))};function Nt(e){const t=M(e);let o;return t.readyState!=="loading"?Ce(e):(o=()=>{Ce(e)},t.addEventListener("DOMContentLoaded",o)),()=>Be(e,o)}typeof document<"u"&&Nt();function Ot(){return I}function Dt(e){let{isDisabled:t,onBlurWithin:o,onFocusWithin:n,onFocusWithinChange:r}=e,l=m.useRef({isFocusWithin:!1}),a=m.useCallback(i=>{l.current.isFocusWithin&&!i.currentTarget.contains(i.relatedTarget)&&(l.current.isFocusWithin=!1,o&&o(i),r&&r(!1))},[o,r,l]),d=Lt(a),c=m.useCallback(i=>{!l.current.isFocusWithin&&document.activeElement===i.target&&(n&&n(i),r&&r(!0),l.current.isFocusWithin=!0,d(i))},[n,r,d]);return t?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:c,onBlur:a}}}function Wt(e){let{ref:t,onInteractOutside:o,isDisabled:n,onInteractOutsideStart:r}=e,l=m.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}),a=W(c=>{o&&J(c,t)&&(r&&r(c),l.current.isPointerDown=!0)}),d=W(c=>{o&&o(c)});m.useEffect(()=>{let c=l.current;if(n)return;const i=t.current,s=M(i);if(typeof PointerEvent<"u"){let f=p=>{c.isPointerDown&&J(p,t)&&d(p),c.isPointerDown=!1};return s.addEventListener("pointerdown",a,!0),s.addEventListener("pointerup",f,!0),()=>{s.removeEventListener("pointerdown",a,!0),s.removeEventListener("pointerup",f,!0)}}else{let f=b=>{c.ignoreEmulatedMouseEvents?c.ignoreEmulatedMouseEvents=!1:c.isPointerDown&&J(b,t)&&d(b),c.isPointerDown=!1},p=b=>{c.ignoreEmulatedMouseEvents=!0,c.isPointerDown&&J(b,t)&&d(b),c.isPointerDown=!1};return s.addEventListener("mousedown",a,!0),s.addEventListener("mouseup",f,!0),s.addEventListener("touchstart",a,!0),s.addEventListener("touchend",p,!0),()=>{s.removeEventListener("mousedown",a,!0),s.removeEventListener("mouseup",f,!0),s.removeEventListener("touchstart",a,!0),s.removeEventListener("touchend",p,!0)}}},[t,n,a,d])}function J(e,t){if(e.button>0)return!1;if(e.target){const o=e.target.ownerDocument;if(!o||!o.documentElement.contains(e.target)||e.target.closest("[data-react-aria-top-layer]"))return!1}return t.current&&!t.current.contains(e.target)}function re(e){const t=M(e);if(Ot()==="virtual"){let o=t.activeElement;kt(()=>{t.activeElement===o&&e.isConnected&&_e(e)})}else _e(e)}function At(e){const t=U(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:o,visibility:n}=e.style,r=o!=="none"&&n!=="hidden"&&n!=="collapse";if(r){const{getComputedStyle:l}=e.ownerDocument.defaultView;let{display:a,visibility:d}=l(e);r=a!=="none"&&d!=="hidden"&&d!=="collapse"}return r}function It(e,t){return!e.hasAttribute("hidden")&&!e.hasAttribute("data-react-aria-prevent-focus")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function Ne(e,t){return e.nodeName!=="#comment"&&At(e)&&It(e,t)&&(!e.parentElement||Ne(e.parentElement,e))}const Oe=m.createContext(null),ae="react-aria-focus-scope-restore";let h=null;function zt(e){let{children:t,contain:o,restoreFocus:n,autoFocus:r}=e,l=m.useRef(null),a=m.useRef(null),d=m.useRef([]),{parentNode:c}=m.useContext(Oe)||{},i=m.useMemo(()=>new de({scopeRef:d}),[d]);E(()=>{let p=c||$.root;if($.getTreeNode(p.scopeRef)&&h&&!Q(h,p.scopeRef)){let b=$.getTreeNode(h);b&&(p=b)}p.addChild(i),$.addNode(i)},[i,c]),E(()=>{let p=$.getTreeNode(d);p&&(p.contain=!!o)},[o]),E(()=>{var p;let b=(p=l.current)===null||p===void 0?void 0:p.nextSibling,g=[],T=N=>N.stopPropagation();for(;b&&b!==a.current;)g.push(b),b.addEventListener(ae,T),b=b.nextSibling;return d.current=g,()=>{for(let N of g)N.removeEventListener(ae,T)}},[t]),Gt(d,n,o),jt(d,o),Jt(d,n,o),Ut(d,r),m.useEffect(()=>{const p=M(d.current?d.current[0]:void 0).activeElement;let b=null;if(_(p,d.current)){for(let g of $.traverse())g.scopeRef&&_(p,g.scopeRef.current)&&(b=g);b===$.getTreeNode(d)&&(h=b.scopeRef)}},[d]),E(()=>()=>{var p,b,g;let T=(g=(b=$.getTreeNode(d))===null||b===void 0||(p=b.parent)===null||p===void 0?void 0:p.scopeRef)!==null&&g!==void 0?g:null;(d===h||Q(d,h))&&(!T||$.getTreeNode(T))&&(h=T),$.removeTreeNode(d)},[d]);let s=m.useMemo(()=>qt(d),[]),f=m.useMemo(()=>({focusManager:s,parentNode:i}),[i,s]);return m.createElement(Oe.Provider,{value:f},m.createElement("span",{"data-focus-scope-start":!0,hidden:!0,ref:l}),t,m.createElement("span",{"data-focus-scope-end":!0,hidden:!0,ref:a}))}function qt(e){return{focusNext(t={}){let o=e.current,{from:n,tabbable:r,wrap:l,accept:a}=t,d=n||M(o[0]).activeElement,c=o[0].previousElementSibling,i=B(o),s=L(i,{tabbable:r,accept:a},o);s.currentNode=_(d,o)?d:c;let f=s.nextNode();return!f&&l&&(s.currentNode=c,f=s.nextNode()),f&&x(f,!0),f},focusPrevious(t={}){let o=e.current,{from:n,tabbable:r,wrap:l,accept:a}=t,d=n||M(o[0]).activeElement,c=o[o.length-1].nextElementSibling,i=B(o),s=L(i,{tabbable:r,accept:a},o);s.currentNode=_(d,o)?d:c;let f=s.previousNode();return!f&&l&&(s.currentNode=c,f=s.previousNode()),f&&x(f,!0),f},focusFirst(t={}){let o=e.current,{tabbable:n,accept:r}=t,l=B(o),a=L(l,{tabbable:n,accept:r},o);a.currentNode=o[0].previousElementSibling;let d=a.nextNode();return d&&x(d,!0),d},focusLast(t={}){let o=e.current,{tabbable:n,accept:r}=t,l=B(o),a=L(l,{tabbable:n,accept:r},o);a.currentNode=o[o.length-1].nextElementSibling;let d=a.previousNode();return d&&x(d,!0),d}}}const le=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Ht=le.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";le.push('[tabindex]:not([tabindex="-1"]):not([disabled])');const Vt=le.join(':not([hidden]):not([tabindex="-1"]),');function B(e){return e[0].parentElement}function q(e){let t=$.getTreeNode(h);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function jt(e,t){let o=m.useRef(void 0),n=m.useRef(void 0);E(()=>{let r=e.current;if(!t){n.current&&(cancelAnimationFrame(n.current),n.current=void 0);return}const l=M(r?r[0]:void 0);let a=i=>{if(i.key!=="Tab"||i.altKey||i.ctrlKey||i.metaKey||!q(e)||i.isComposing)return;let s=l.activeElement,f=e.current;if(!f||!_(s,f))return;let p=B(f),b=L(p,{tabbable:!0},f);if(!s)return;b.currentNode=s;let g=i.shiftKey?b.previousNode():b.nextNode();g||(b.currentNode=i.shiftKey?f[f.length-1].nextElementSibling:f[0].previousElementSibling,g=i.shiftKey?b.previousNode():b.nextNode()),i.preventDefault(),g&&x(g,!0)},d=i=>{(!h||Q(h,e))&&_(i.target,e.current)?(h=e,o.current=i.target):q(e)&&!Y(i.target,e)?o.current?o.current.focus():h&&h.current&&ie(h.current):q(e)&&(o.current=i.target)},c=i=>{n.current&&cancelAnimationFrame(n.current),n.current=requestAnimationFrame(()=>{if(l.activeElement&&q(e)&&!Y(l.activeElement,e))if(h=e,l.body.contains(i.target)){var s;o.current=i.target,(s=o.current)===null||s===void 0||s.focus()}else h.current&&ie(h.current)})};return l.addEventListener("keydown",a,!1),l.addEventListener("focusin",d,!1),r==null||r.forEach(i=>i.addEventListener("focusin",d,!1)),r==null||r.forEach(i=>i.addEventListener("focusout",c,!1)),()=>{l.removeEventListener("keydown",a,!1),l.removeEventListener("focusin",d,!1),r==null||r.forEach(i=>i.removeEventListener("focusin",d,!1)),r==null||r.forEach(i=>i.removeEventListener("focusout",c,!1))}},[e,t]),E(()=>()=>{n.current&&cancelAnimationFrame(n.current)},[n])}function De(e){return Y(e)}function _(e,t){return!e||!t?!1:t.some(o=>o.contains(e))}function Y(e,t=null){if(e instanceof Element&&e.closest("[data-react-aria-top-layer]"))return!0;for(let{scopeRef:o}of $.traverse($.getTreeNode(t)))if(o&&_(e,o.current))return!0;return!1}function Kt(e){return Y(e,h)}function Q(e,t){var o;let n=(o=$.getTreeNode(t))===null||o===void 0?void 0:o.parent;for(;n;){if(n.scopeRef===e)return!0;n=n.parent}return!1}function x(e,t=!1){if(e!=null&&!t)try{re(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function We(e,t=!0){let o=e[0].previousElementSibling,n=B(e),r=L(n,{tabbable:t},e);r.currentNode=o;let l=r.nextNode();return t&&!l&&(n=B(e),r=L(n,{tabbable:!1},e),r.currentNode=o,l=r.nextNode()),l}function ie(e,t=!0){x(We(e,t))}function Ut(e,t){const o=m.useRef(t);m.useEffect(()=>{if(o.current){h=e;const n=M(e.current?e.current[0]:void 0);!_(n.activeElement,h.current)&&e.current&&ie(e.current)}o.current=!1},[e])}function Gt(e,t,o){E(()=>{if(t||o)return;let n=e.current;const r=M(n?n[0]:void 0);let l=a=>{let d=a.target;_(d,e.current)?h=e:De(d)||(h=null)};return r.addEventListener("focusin",l,!1),n==null||n.forEach(a=>a.addEventListener("focusin",l,!1)),()=>{r.removeEventListener("focusin",l,!1),n==null||n.forEach(a=>a.removeEventListener("focusin",l,!1))}},[e,t,o])}function Xt(e){let t=$.getTreeNode(h);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return(t==null?void 0:t.scopeRef)===e}function Jt(e,t,o){const n=m.useRef(typeof document<"u"?M(e.current?e.current[0]:void 0).activeElement:null);E(()=>{let r=e.current;const l=M(r?r[0]:void 0);if(!t||o)return;let a=()=>{(!h||Q(h,e))&&_(l.activeElement,e.current)&&(h=e)};return l.addEventListener("focusin",a,!1),r==null||r.forEach(d=>d.addEventListener("focusin",a,!1)),()=>{l.removeEventListener("focusin",a,!1),r==null||r.forEach(d=>d.removeEventListener("focusin",a,!1))}},[e,o]),E(()=>{const r=M(e.current?e.current[0]:void 0);if(!t)return;let l=a=>{if(a.key!=="Tab"||a.altKey||a.ctrlKey||a.metaKey||!q(e)||a.isComposing)return;let d=r.activeElement;if(!_(d,e.current))return;let c=$.getTreeNode(e);if(!c)return;let i=c.nodeToRestore,s=L(r.body,{tabbable:!0});s.currentNode=d;let f=a.shiftKey?s.previousNode():s.nextNode();if((!i||!r.body.contains(i)||i===r.body)&&(i=void 0,c.nodeToRestore=void 0),(!f||!_(f,e.current))&&i){s.currentNode=i;do f=a.shiftKey?s.previousNode():s.nextNode();while(_(f,e.current));a.preventDefault(),a.stopPropagation(),f?x(f,!0):De(i)?x(i,!0):d.blur()}};return o||r.addEventListener("keydown",l,!0),()=>{o||r.removeEventListener("keydown",l,!0)}},[e,t,o]),E(()=>{const r=M(e.current?e.current[0]:void 0);if(!t)return;let l=$.getTreeNode(e);if(l){var a;return l.nodeToRestore=(a=n.current)!==null&&a!==void 0?a:void 0,()=>{let d=$.getTreeNode(e);if(!d)return;let c=d.nodeToRestore;if(t&&c&&(_(r.activeElement,e.current)||r.activeElement===r.body&&Xt(e))){let i=$.clone();requestAnimationFrame(()=>{if(r.activeElement===r.body){let s=i.getTreeNode(e);for(;s;){if(s.nodeToRestore&&s.nodeToRestore.isConnected){Ae(s.nodeToRestore);return}s=s.parent}for(s=i.getTreeNode(e);s;){if(s.scopeRef&&s.scopeRef.current&&$.getTreeNode(s.scopeRef)){let f=We(s.scopeRef.current,!0);Ae(f);return}s=s.parent}}})}}}},[e,t])}function Ae(e){e.dispatchEvent(new CustomEvent(ae,{bubbles:!0,cancelable:!0}))&&x(e)}function L(e,t,o){let n=t!=null&&t.tabbable?Vt:Ht,r=M(e).createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode(l){var a;return!(t==null||(a=t.from)===null||a===void 0)&&a.contains(l)?NodeFilter.FILTER_REJECT:l.matches(n)&&Ne(l)&&(!o||_(l,o))&&(!(t!=null&&t.accept)||t.accept(l))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t!=null&&t.from&&(r.currentNode=t.from),r}class se{get size(){return this.fastMap.size}getTreeNode(t){return this.fastMap.get(t)}addTreeNode(t,o,n){let r=this.fastMap.get(o??null);if(!r)return;let l=new de({scopeRef:t});r.addChild(l),l.parent=r,this.fastMap.set(t,l),n&&(l.nodeToRestore=n)}addNode(t){this.fastMap.set(t.scopeRef,t)}removeTreeNode(t){if(t===null)return;let o=this.fastMap.get(t);if(!o)return;let n=o.parent;for(let l of this.traverse())l!==o&&o.nodeToRestore&&l.nodeToRestore&&o.scopeRef&&o.scopeRef.current&&_(l.nodeToRestore,o.scopeRef.current)&&(l.nodeToRestore=o.nodeToRestore);let r=o.children;n&&(n.removeChild(o),r.size>0&&r.forEach(l=>n&&n.addChild(l))),this.fastMap.delete(o.scopeRef)}*traverse(t=this.root){if(t.scopeRef!=null&&(yield t),t.children.size>0)for(let o of t.children)yield*this.traverse(o)}clone(){var t;let o=new se;var n;for(let r of this.traverse())o.addTreeNode(r.scopeRef,(n=(t=r.parent)===null||t===void 0?void 0:t.scopeRef)!==null&&n!==void 0?n:null,r.nodeToRestore);return o}constructor(){this.fastMap=new Map,this.root=new de({scopeRef:null}),this.fastMap.set(null,this.root)}}class de{addChild(t){this.children.add(t),t.parent=this}removeChild(t){this.children.delete(t),t.parent=void 0}constructor(t){this.children=new Set,this.contain=!1,this.scopeRef=t.scopeRef}}let $=new se;const Yt=new WeakMap,S=[];function Qt(e,t){let{onClose:o,shouldCloseOnBlur:n,isOpen:r,isDismissable:l=!1,isKeyboardDismissDisabled:a=!1,shouldCloseOnInteractOutside:d}=e;m.useEffect(()=>(r&&S.push(t),()=>{let g=S.indexOf(t);g>=0&&S.splice(g,1)}),[r,t]);let c=()=>{S[S.length-1]===t&&o&&o()},i=g=>{(!d||d(g.target))&&S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault())},s=g=>{(!d||d(g.target))&&(S[S.length-1]===t&&(g.stopPropagation(),g.preventDefault()),c())},f=g=>{g.key==="Escape"&&!a&&!g.nativeEvent.isComposing&&(g.stopPropagation(),g.preventDefault(),c())};Wt({ref:t,onInteractOutside:l&&r?s:null,onInteractOutsideStart:i});let{focusWithinProps:p}=Dt({isDisabled:!n,onBlurWithin:g=>{!g.relatedTarget||Kt(g.relatedTarget)||(!d||d(g.relatedTarget))&&o()}}),b=g=>{g.target===g.currentTarget&&g.preventDefault()};return{overlayProps:{onKeyDown:f,...p},underlayProps:{onPointerDown:b}}}function Zt(e,t,o){let{type:n}=e,{isOpen:r}=t;m.useEffect(()=>{o&&o.current&&Yt.set(o.current,t.close)});let l;n==="menu"?l=!0:n==="listbox"&&(l="listbox");let a=Ee();return{triggerProps:{"aria-haspopup":l,"aria-expanded":r,"aria-controls":r?a:null,onPress:t.toggle},overlayProps:{id:a}}}const ue=typeof document<"u"&&window.visualViewport,Rt=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let Z=0,ce;function eo(e={}){let{isDisabled:t}=e;E(()=>{if(!t)return Z++,Z===1&&(yt()?ce=oo():ce=to()),()=>{Z--,Z===0&&ce()}},[t])}function to(){return K(D(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),D(document.documentElement,"overflow","hidden"))}function oo(){let e,t,o=i=>{e=Te(i.target,!0),!(e===document.documentElement&&e===document.body)&&e instanceof HTMLElement&&window.getComputedStyle(e).overscrollBehavior==="auto"&&(t=D(e,"overscrollBehavior","contain"))},n=i=>{if(!e||e===document.documentElement||e===document.body){i.preventDefault();return}e.scrollHeight===e.clientHeight&&e.scrollWidth===e.clientWidth&&i.preventDefault()},r=i=>{let s=i.target;ze(s)&&s!==document.activeElement&&(i.preventDefault(),d(),s.style.transform="translateY(-2000px)",s.focus(),requestAnimationFrame(()=>{s.style.transform=""})),t&&t()},l=i=>{let s=i.target;ze(s)&&(d(),s.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{s.style.transform="",ue&&(ue.height<window.innerHeight?requestAnimationFrame(()=>{Ie(s)}):ue.addEventListener("resize",()=>Ie(s),{once:!0}))}))},a=null,d=()=>{if(a)return;let i=()=>{window.scrollTo(0,0)},s=window.pageXOffset,f=window.pageYOffset;a=K(H(window,"scroll",i),D(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`),D(document.documentElement,"overflow","hidden"),D(document.body,"marginTop",`-${f}px`),()=>{window.scrollTo(s,f)}),window.scrollTo(0,0)},c=K(H(document,"touchstart",o,{passive:!1,capture:!0}),H(document,"touchmove",n,{passive:!1,capture:!0}),H(document,"touchend",r,{passive:!1,capture:!0}),H(document,"focus",l,!0));return()=>{t==null||t(),a==null||a(),c()}}function D(e,t,o){let n=e.style[t];return e.style[t]=o,()=>{e.style[t]=n}}function H(e,t,o,n){return e.addEventListener(t,o,n),()=>{e.removeEventListener(t,o,n)}}function Ie(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let o=Te(e);if(o!==document.documentElement&&o!==document.body&&o!==e){let n=o.getBoundingClientRect().top,r=e.getBoundingClientRect().top;r>n+e.clientHeight&&(o.scrollTop+=r-n)}e=o.parentElement}}function ze(e){return e instanceof HTMLInputElement&&!Rt.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}let V=new WeakMap,k=[];function no(e,t=document.body){let o=new Set(e),n=new Set,r=c=>{for(let p of c.querySelectorAll("[data-live-announcer], [data-react-aria-top-layer]"))o.add(p);let i=p=>{if(o.has(p)||n.has(p.parentElement)&&p.parentElement.getAttribute("role")!=="row")return NodeFilter.FILTER_REJECT;for(let b of o)if(p.contains(b))return NodeFilter.FILTER_SKIP;return NodeFilter.FILTER_ACCEPT},s=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT,{acceptNode:i}),f=i(c);if(f===NodeFilter.FILTER_ACCEPT&&l(c),f!==NodeFilter.FILTER_REJECT){let p=s.nextNode();for(;p!=null;)l(p),p=s.nextNode()}},l=c=>{var i;let s=(i=V.get(c))!==null&&i!==void 0?i:0;c.getAttribute("aria-hidden")==="true"&&s===0||(s===0&&c.setAttribute("aria-hidden","true"),n.add(c),V.set(c,s+1))};k.length&&k[k.length-1].disconnect(),r(t);let a=new MutationObserver(c=>{for(let i of c)if(!(i.type!=="childList"||i.addedNodes.length===0)&&![...o,...n].some(s=>s.contains(i.target))){for(let s of i.removedNodes)s instanceof Element&&(o.delete(s),n.delete(s));for(let s of i.addedNodes)(s instanceof HTMLElement||s instanceof SVGElement)&&(s.dataset.liveAnnouncer==="true"||s.dataset.reactAriaTopLayer==="true")?o.add(s):s instanceof Element&&r(s)}});a.observe(t,{childList:!0,subtree:!0});let d={observe(){a.observe(t,{childList:!0,subtree:!0})},disconnect(){a.disconnect()}};return k.push(d),()=>{a.disconnect();for(let c of n){let i=V.get(c);i===1?(c.removeAttribute("aria-hidden"),V.delete(c)):V.set(c,i-1)}d===k[k.length-1]?(k.pop(),k.length&&k[k.length-1].observe()):k.splice(k.indexOf(d),1)}}const ro=m.createContext({});function ao(){var e;return(e=m.useContext(ro))!==null&&e!==void 0?e:{}}const qe=m.createContext(null);function lo(e){let t=we(),{portalContainer:o=t?null:document.body,isExiting:n}=e,[r,l]=m.useState(!1),a=m.useMemo(()=>({contain:r,setContain:l}),[r,l]),{getContainer:d}=ao();if(!e.portalContainer&&d&&(o=d()),!o)return null;let c=e.children;return e.disableFocusManagement||(c=m.createElement(zt,{restoreFocus:!0,contain:r&&!n},c)),c=m.createElement(qe.Provider,{value:a},m.createElement(St,null,c)),Ye.createPortal(c,o)}function He(){let e=m.useContext(qe),t=e==null?void 0:e.setContain;E(()=>{t==null||t(!0)},[t])}function io(e,t,o){let{overlayProps:n,underlayProps:r}=Qt({...e,isOpen:t.isOpen,onClose:t.close},o);return eo({isDisabled:!t.isOpen}),He(),m.useEffect(()=>{if(t.isOpen)return no([o.current])},[t.isOpen,o]),{modalProps:mt(n),underlayProps:r}}function so(e,t){let{role:o="dialog"}=e,n=ut();n=e["aria-label"]?void 0:n;let r=m.useRef(!1);return m.useEffect(()=>{if(t.current&&!t.current.contains(document.activeElement)){re(t.current);let l=setTimeout(()=>{document.activeElement===t.current&&(r.current=!0,t.current&&(t.current.blur(),re(t.current)),r.current=!1)},500);return()=>{clearTimeout(l)}}},[t]),He(),{dialogProps:{...vt(e,{labelable:!0}),role:o,tabIndex:-1,"aria-labelledby":e["aria-labelledby"]||n,onBlur:l=>{r.current&&l.stopPropagation()}},titleProps:{id:n}}}function uo(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function Ve(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),o.push.apply(o,n)}return o}function je(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?Ve(Object(o),!0).forEach(function(n){uo(e,n,o[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Ve(Object(o)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))})}return e}var co=(e,t,o)=>{for(var n of Object.keys(e)){var r;if(e[n]!==((r=t[n])!==null&&r!==void 0?r:o[n]))return!1}return!0},Ke=e=>t=>{var o=e.defaultClassName,n=je(je({},e.defaultVariants),t);for(var r in n){var l,a=(l=n[r])!==null&&l!==void 0?l:e.defaultVariants[r];if(a!=null){var d=a;typeof d=="boolean"&&(d=d===!0?"true":"false");var c=e.variantClassNames[r][d];c&&(o+=" "+c)}}for(var[i,s]of e.compoundVariants)co(i,n,e.defaultVariants)&&(o+=" "+s);return o},mo="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2o",fo="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2q",po="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2r",Ue="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2p",go=Ke({defaultClassName:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto20",variantClassNames:{kind:{informational:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto21",delete:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto22",failure:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto23",success:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto24",warning:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto25",successWithFailures:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto26",form:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto27"},size:{sm:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto28",md:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto29",lg:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2a",xl:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2b"},fullHeight:{true:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2c",false:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2d"}},defaultVariants:{},compoundVariants:[]}),bo="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2n",vo=Ke({defaultClassName:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2e",variantClassNames:{kind:{form:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2f",delete:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2g",failure:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2h",informational:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2i",success:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2j",warning:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2k",successWithFailures:"pkg_sps-woodland_modal__version_8_22_1__hash_3moto2l"}},defaultVariants:{},compoundVariants:[]}),ho="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2m",$o="pkg_sps-woodland_modal__version_8_22_1__hash_3moto2s";function me({children:e,className:t="",...o}){return u.createElement("div",{className:w.cl(Ue,t),...o},e)}w.Metadata.set(me,{name:"ModalFooter"});function Ge({dismissableValue:e,handleClose:t}){return e?u.createElement(he.Button,{"aria-label":"Close",onClick:t,kind:"icon",icon:"x",className:fo}):null}const fe=Object.freeze({form:"pencil",delete:"trash",failure:"status-error",informational:"info-circle",success:"status-ok",successWithFailures:"status-warning",warning:"status-warning"});function wo({children:e,className:t,"data-testid":o,kind:n="informational",onBlur:r,onFocus:l,overlayProps:a,size:d="sm",state:c,title:i,dismissible:s,dismissable:f=!0,onClose:p,fullHeight:b=!1,...g}){const T=s??f,N=u.useRef(null),{modalProps:ge,underlayProps:yo}=io({isKeyboardDismissDisabled:!T,...g},c,N),{dialogProps:be,titleProps:Po}=so(g,N),ko=w.combineEventHandlers(ge.onFocus,be.onFocus,l),To=w.combineEventHandlers(ge.onBlur,be.onBlur,r),{t:xo}=u.useContext(w.I18nContext),So=w.useChildTestIdAttrBuilder({"data-testid":o}),[ve,Fo]=w.selectChildren(e,[{type:me}]),Xe=u.useCallback(()=>{p&&typeof p=="function"&&p(),c.close()},[p,c.close]),Lo=w.modChildren(Fo,Je=>Je.type===Ge?[{className:w.cl(Je.props.classname,po)}]:[]);return u.createElement(lo,null,u.createElement("div",{className:$o,...yo,...g},u.createElement("div",{...ge,...be,...a,onFocus:ko,onBlur:To,...So("dialog"),ref:N,className:w.cl(go({kind:n,size:d,fullHeight:b}),t)},u.createElement("div",{...Po,className:vo({kind:n})},n&&u.createElement(w.Icon,{icon:fe[n]||fe.informational,className:bo}),u.createElement("div",{className:ho},w.contentOf(i,c.close)),u.createElement(Ge,{dismissableValue:T,handleClose:Xe})),u.createElement("div",{className:mo},w.contentOf(Lo,c.close)),ve&&ve.length>0?u.createElement(u.Fragment,null,w.contentOf(ve,c.close)):u.createElement("div",{className:Ue},u.createElement(he.Button,{kind:"key",onClick:Xe},xo("design-system:modal.defaultButtonLabel"))))))}function pe(e){return e.state.isOpen?u.createElement(wo,{...e},e.children):u.createElement(u.Fragment,null)}w.Metadata.set(pe,{name:"Modal",props:{dismissable:{type:"boolean",default:"true"},fullHeight:{type:"boolean",default:"false"},kind:{type:"ModalKind",default:"informational"},onBlur:{type:"() => void"},onClose:{type:"() => void"},onFocus:{type:"() => void"},size:{type:"ModalSize",default:"sm"},title:{type:"string"}}});function Eo(e){let[t,o]=xt(e.isOpen,e.defaultOpen||!1,e.onOpenChange);const n=m.useCallback(()=>{o(!0)},[o]),r=m.useCallback(()=>{o(!1)},[o]),l=m.useCallback(()=>{o(!t)},[o,t]);return{isOpen:t,setOpen:o,open:n,close:r,toggle:l}}function Mo(e={}){const t=Eo(e),o=m.useRef(null),{triggerProps:n,overlayProps:r}=Zt({type:"dialog"},t,o),{onPress:l,...a}=n;return{triggerProps:{...a,onClick:l,ref:o},modalState:t,modalProps:{overlayProps:r,state:t}}}const _o={Modals:{description:()=>u.createElement("p",null,"Modals are overlays on a page that focus a user’s attention on an important message or a simple action. Examples of a Modal include confirming the deletion of a record, or making a single selection."),components:[pe],examples:{general:{label:"Usage",description:({NavigateTo:e})=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Use a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When the user needs to confirm a basic decision, such as deleting a record."),u.createElement("li",null,"When important information needs to be displayed to the user before continuing."),u.createElement("li",null,"When a simple selection, such as a single form input, is required before proceeding.")),u.createElement("h5",null,"Avoid a Modal:"),u.createElement("ul",null,u.createElement("li",null,"When a complex form is required. Use a ",u.createElement(e,{to:"focused-task"},"Focused Task View")," instead."),u.createElement("li",null,"When sharing non-critical or tertiary information. Use a ",u.createElement(e,{to:"growlers"},"Growler")," instead.")))},implementation:{label:"Close Button",description:()=>u.createElement(u.Fragment,null,u.createElement("h5",null,"Close Button and Modal dismissiability"),u.createElement("p",null,"Remove the Close Button in the upper right of the Modal if the user must choose the course of action before proceeding."),u.createElement("p",null,"The close button is included by default and omitted when the prop ",u.createElement("code",null,"dismissable")," is set to ",u.createElement("strong",null,"false"),"."),u.createElement("p",null,"Setting the ",u.createElement("code",null,"dismissable")," prop to false also prevents dismissing the modal by clicking outside of the modal or by using the"," ",u.createElement("strong",null,"escape")," key.")),examples:{basic:{react:v.code`
2
2
  import { Modal, ModalFooter, useModal } from "@sps-woodland/modal";
3
3
  import { sprinkles } from "@sps-woodland/tokens";
4
4
  import { Button } from "@sps-woodland/buttons";
package/lib/style.css CHANGED
@@ -1 +1 @@
1
- .pkg_sps-woodland_modal__version_8_21_5__hash_3moto20{background-color:#fff;border-style:solid;border-width:.0625rem;border-radius:.25rem;display:flex;flex-direction:column;overflow:hidden;max-height:100%}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto21{border-color:#027db8}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto22,.pkg_sps-woodland_modal__version_8_21_5__hash_3moto23{border-color:#de012e}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto24{border-color:#0b8940}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto25,.pkg_sps-woodland_modal__version_8_21_5__hash_3moto26{border-color:#e77609}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto27{border-color:#4b5356}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto28{width:23.75rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto29{width:36.25rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2a{width:48.75rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2b{width:73.75rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2c{height:100%}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2e{align-items:center;color:#fff;display:flex;padding:1rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2f{background-color:#4b5356}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2g,.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2h{background-color:#de012e}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2i{background-color:#027db8}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2j{background-color:#0b8940}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2k,.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2l{background-color:#e77609}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2m{flex-grow:1;font-size:.875rem;font-weight:600;line-height:1.25rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2n{font-weight:600;line-height:.875rem;font-size:.875rem;padding-right:.5rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2o{overflow-y:auto;padding:1rem;flex:1}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2p{align-items:center;background-color:#f3f4f4;display:flex;justify-content:flex-end;padding:.5rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2q{color:#fff;border-width:0}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2r{padding:0 .25rem}.pkg_sps-woodland_modal__version_8_21_5__hash_3moto2s{position:fixed;z-index:1000;top:0;left:0;bottom:0;right:0;background:#f3f4f4;display:flex;align-items:center;justify-content:center;padding:1rem}.z-stratum-dropdown{z-index:1100}
1
+ .pkg_sps-woodland_modal__version_8_22_1__hash_3moto20{background-color:#fff;border-style:solid;border-width:.0625rem;border-radius:.25rem;display:flex;flex-direction:column;overflow:hidden;max-height:100%}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto21{border-color:#027db8}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto22,.pkg_sps-woodland_modal__version_8_22_1__hash_3moto23{border-color:#de012e}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto24{border-color:#0b8940}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto25,.pkg_sps-woodland_modal__version_8_22_1__hash_3moto26{border-color:#e77609}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto27{border-color:#4b5356}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto28{width:23.75rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto29{width:36.25rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2a{width:48.75rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2b{width:73.75rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2c{height:100%}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2e{align-items:center;color:#fff;display:flex;padding:1rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2f{background-color:#4b5356}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2g,.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2h{background-color:#de012e}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2i{background-color:#027db8}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2j{background-color:#0b8940}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2k,.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2l{background-color:#e77609}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2m{flex-grow:1;font-size:.875rem;font-weight:600;line-height:1.25rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2n{font-weight:600;line-height:.875rem;font-size:.875rem;padding-right:.5rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2o{overflow-y:auto;padding:1rem;flex:1}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2p{align-items:center;background-color:#f3f4f4;display:flex;justify-content:flex-end;padding:.5rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2q{color:#fff;border-width:0}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2r{padding:0 .25rem}.pkg_sps-woodland_modal__version_8_22_1__hash_3moto2s{position:fixed;z-index:1000;top:0;left:0;bottom:0;right:0;background:#f3f4f4cc;display:flex;align-items:start;justify-content:center;padding:4rem 1rem 1rem}.z-stratum-dropdown{z-index:1100}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sps-woodland/modal",
3
3
  "description": "SPS Woodland Design System modal component",
4
- "version": "8.21.5",
4
+ "version": "8.22.1",
5
5
  "author": "SPS Commerce",
6
6
  "license": "UNLICENSED",
7
7
  "repository": "https://github.com/SPSCommerce/woodland/tree/main/packages/@sps-woodland/modal",
@@ -29,9 +29,9 @@
29
29
  "@spscommerce/utils": "^7.0.0",
30
30
  "react": "^16.9.0",
31
31
  "react-dom": "^16.9.0",
32
- "@sps-woodland/buttons": "8.21.5",
33
- "@sps-woodland/core": "8.21.5",
34
- "@sps-woodland/tokens": "8.21.5"
32
+ "@sps-woodland/buttons": "8.22.1",
33
+ "@sps-woodland/core": "8.22.1",
34
+ "@sps-woodland/tokens": "8.22.1"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@spscommerce/utils": "^7.0.0",
@@ -42,9 +42,9 @@
42
42
  "@vanilla-extract/vite-plugin": "^3.6.0",
43
43
  "react": "^16.9.0",
44
44
  "react-dom": "^16.9.0",
45
- "@sps-woodland/buttons": "8.21.5",
46
- "@sps-woodland/core": "8.21.5",
47
- "@sps-woodland/tokens": "8.21.5"
45
+ "@sps-woodland/buttons": "8.22.1",
46
+ "@sps-woodland/core": "8.22.1",
47
+ "@sps-woodland/tokens": "8.22.1"
48
48
  },
49
49
  "dependencies": {
50
50
  "react-aria": "^3.21.0",