{"version":3,"file":"static/chunks/9304-e61fd856b528bfea.js","mappings":"0FAAAA,EAUAC,EAMAC,EAAAA,EAAA,CAEAD,SAAA,CARAA,EAAA,EACA,qBAAAE,QACAA,OAAAC,QAAA,EACAD,OAAAC,QAAA,CAAAC,aAAA,EAOAC,cAAA,oBAAAC,OAEAC,qBACAP,GAAA,EAAAE,CAAAA,OAAAM,gBAAA,EAAAN,OAAAO,WAAA,EAEAC,eAAAV,GAAA,EAAAE,OAAAS,MAAA,EAOGZ,KAAAa,IAFDb,CAAAA,EAAA,CAAO,WACT,OAAAE,CACA,GAAGY,IAAA,CAAAC,EAAAC,EAAAD,EAAAE,EAAA,GAAAA,CAAAA,EAAAF,OAAA,CAAAf,CAAA,6aK/BHkB,YHDAC,EAA0B,SAAAC,CAAA,CAAAC,CAAA,EAC1B,IAAAC,EAAA,mBAAAC,QAAAH,CAAA,CAAAG,OAAAC,QAAA,EACA,IAAAF,EAAA,OAAAF,EACA,IAAAK,EAAAC,EAAAC,EAAAL,EAAAR,IAAA,CAAAM,GAAAQ,EAAA,GACA,IACA,MAAAP,KAAA,IAAAA,GAAAA,KAAA,MAAAI,EAAAE,EAAAE,IAAA,IAAAC,IAAA,EAAAF,EAAAG,IAAA,CAAAN,EAAAO,KAAA,CACA,CACA,MAAAC,EAAA,CAAoBP,EAAA,CAAMO,MAAAA,CAAA,SAC1B,CACA,IACAR,GAAA,CAAAA,EAAAK,IAAA,EAAAR,CAAAA,EAAAK,EAAA,SAAAL,EAAAR,IAAA,CAAAa,EACA,QACA,CAAkB,GAAAD,EAAA,MAAAA,EAAAO,KAAA,CAClB,CACA,OAAAL,CACA,EAuBOM,EAAA,CACP,KACA,MACA,WACA,KACA,KACA,SACA,MACA,QACA,OACA,WACA,OACA,KACA,QACA,SACA,QACA,QACA,QACA,QACA,KACA,KACA,MACA,CASOC,EAAA,CAEP,iCACAC,cAAA,gBACAC,UAAA,YACAC,gBAAA,kBACAC,eAAA,iBACAC,aAAA,eACAC,YAAA,cACAC,UAAA,YACAC,SAAA,WACAC,SAAA,WACAC,YAAA,cACAC,YAAA,cACAC,QAAA,UACAC,MAAA,YACAC,QAAA,UACAC,UAAA,YACAC,QAAA,UACAC,gBAAA,kBACAC,YAAA,cACAC,aAAA,eACAC,YAAA,cACAC,wBAAA,0BACAC,SAAA,WACAC,eAAA,iBACAC,aAAA,eACAC,QAAA,UACAC,IAAA,UACAC,WAAA,aACAC,WAAA,aACAC,YAAA,cACAC,eAAA,iBACAC,WAAA,aACAC,YAAA,cACAC,SAAA,WACAC,QAAA,UACAC,UAAA,YACA,yBACAC,KAAA,OACAC,UAAA,YACAC,UAAA,YACAC,OAAA,SACAC,SAAA,WACAC,QAAA,UACAC,UAAA,YACAC,SAAA,WACAC,UAAA,YACAC,QAAA,UACAC,YAAA,cACAC,aAAA,eACAC,UAAA,YACAC,WAAA,aACAC,UAAA,YACAC,SAAA,WACAC,WAAA,aACAC,YAAA,cACAC,WAAA,aACAC,SAAA,WACAC,eAAA,iBACAC,QAAA,UACAC,WAAA,aACAC,OAAA,SACAC,QAAA,UACAC,OAAA,SACAC,SAAA,WACAC,cAAA,gBACAC,OAAA,SAEAC,aAAA,eACA,+BACAC,kBAAA,oBACA,yCACAC,aAAA,eACAC,WAAA,aACA,2BACAC,cAAA,gBACAC,cAAA,gBACAC,YAAA,cACAC,cAAA,gBACAC,cAAA,gBACA,iCACAC,YAAA,cACAC,SAAA,WACAC,UAAA,YACA,yBACAC,SAAA,WACA,uBACAC,cAAA,gBACAC,SAAA,WACA,uBACAC,mBAAA,qBACA,2CACAC,0BAAA,4BACA,0DACAC,aAAA,eACA,+BACAC,eAAA,iBACA,mCACAC,kBAAA,oBACAC,iBAAA,mBACAC,gBAAA,kBACAC,iBAAA,mBACA,uCACAC,SAAA,WACAC,iBAAA,mBACA,uCACAC,0BAAA,4BACAC,YAAA,cACA,6BACAC,SAAA,WACA,uBACAC,UAAA,YACAC,YAAA,cACAC,aAAA,eACA,+BACAC,WAAA,aACA,2BACAC,WAAA,aACA,2BACAC,SAAA,WACA,uBACAC,eAAA,iBACA,oCACAC,YAAA,cACA,6BACAC,UAAA,YACA,yBACAC,YAAA,cACA,6BACAC,WAAA,aACA,2BACAC,UAAA,YACA,yBACAC,2BAAA,6BACA,4DACAC,yBAAA,2BACA,wDACAC,SAAA,WACAC,kBAAA,oBACAC,cAAA,gBACAC,UAAA,YACA,0BACAC,aAAA,eACA,gCACAC,eAAA,iBACA,mCACAC,aAAA,eACAC,iBAAA,mBACAC,UAAA,YACAC,WAAA,aACAC,SAAA,WACAC,aAAA,eACAC,cAAA,gBACA,iCACAC,cAAA,gBACA,iCACAC,kBAAA,oBACAC,UAAA,YACA,yBACAC,aAAA,eACAC,UAAA,YACA,yBACAC,YAAA,cACA,6BACAC,YAAA,cACAC,YAAA,cACAC,iBAAA,mBACAC,UAAA,YACAC,WAAA,aACAC,iBAAA,mBACA,uCACAC,kBAAA,oBACA,yCACAC,WAAA,aACA,2BACA,qBACAC,WAAA,aACAC,oBAAA,sBACAC,iBAAA,mBACAC,aAAA,eACAC,cAAA,gBACA,iCACAC,UAAA,YACAC,UAAA,YACAC,UAAA,YACAC,cAAA,gBACAC,oBAAA,sBACAC,eAAA,iBACAC,KAAA,OACAC,KAAA,OACAC,gBAAA,kBACA,qCACAC,YAAA,cACAC,UAAA,YACAC,mBAAA,qBACAC,iBAAA,mBACAC,eAAA,iBACA,mCACAC,iBAAA,mBACAC,iBAAA,mBACAC,aAAA,eACAC,YAAA,cACAC,aAAA,eACAC,YAAA,cACAC,UAAA,YACA,yBACAC,YAAA,cACA,6BACAC,sBAAA,wBACA,iDACAC,uBAAA,yBACA,mDACAC,gBAAA,kBACA,qCACAC,iBAAA,mBACA,uCACAC,cAAA,gBACA,iCACAC,eAAA,iBACA,mCACAC,iBAAA,mBACA,uCACAC,YAAA,cACA,6BACAC,cAAA,gBACA,iCACAC,+BAAA,iCACAC,yBAAA,2BACAC,aAAA,eACAC,eAAA,iBACAC,YAAA,cACAC,QAAA,UACAC,QAAA,UACAC,WAAA,aACA,2BACAC,eAAA,iBACA,mCACAC,WAAA,aACAC,cAAA,gBACA,iCACAC,kBAAA,oBACA,yCACAC,mBAAA,qBACA,2CACAC,YAAA,cACA,6BACAC,aAAA,eACA,+BACAC,WAAA,aACA,4BACAC,aAAA,eACAC,YAAA,cACA,6BACAC,aAAA,eACA,+BACAC,SAAA,WACA,wBACAC,YAAA,cACA,8BACAC,YAAA,cACA,8BACAC,SAAA,WACA,uBACAC,aAAA,eACA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","sources":["webpack://_N_E/../../node_modules/exenv/index.js","webpack://_N_E/../../node_modules/next/dist/api/navigation.js","webpack://_N_E/../../node_modules/react-from-dom/esm/helpers.js","webpack://_N_E/../../node_modules/react-from-dom/esm/index.js","webpack://_N_E/../../node_modules/react-inlinesvg/esm/helpers.js","webpack://_N_E/../../node_modules/react-inlinesvg/esm/index.js","webpack://_N_E/../../node_modules/@radix-ui/primitive/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot/dist/index.mjs","webpack://_N_E/../src/Collection.tsx","webpack://_N_E/../../node_modules/@radix-ui/react-compose-refs/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-primitive/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-slot/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-context/dist/index.mjs","webpack://_N_E/../src/DismissableLayer.tsx","webpack://_N_E/../src/Portal.tsx","webpack://_N_E/../src/Presence.tsx","webpack://_N_E/../src/useStateMachine.tsx","webpack://_N_E/../../node_modules/@radix-ui/react-visually-hidden/dist/index.mjs","webpack://_N_E/../src/Toast.tsx","webpack://_N_E/../../node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs","webpack://_N_E/../../node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs","webpack://_N_E/../../node_modules/clsx/dist/clsx.mjs"],"sourcesContent":["/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","export * from \"../client/components/navigation\";\n\n//# sourceMappingURL=navigation.js.map","var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nexport var styleToObject = function (input) {\n var attributes = input.split(/ ?; ?/);\n return attributes.reduce(function (acc, d) {\n var _a = __read(d.split(/ ?: ?/), 2), key = _a[0], value = _a[1];\n if (key && value) {\n acc[key.replace(/-(\\w)/g, function (_$0, $1) { return $1.toUpperCase(); })] = Number.isNaN(Number(value))\n ? value\n : Number(value);\n }\n return acc;\n }, {});\n};\n/* istanbul ignore next */\nexport function randomString(length) {\n if (length === void 0) { length = 6; }\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var result = '';\n for (var index = length; index > 0; --index) {\n result += characters[Math.round(Math.random() * (characters.length - 1))];\n }\n return result;\n}\nexport var noTextChildNodes = [\n 'br',\n 'col',\n 'colgroup',\n 'dl',\n 'hr',\n 'iframe',\n 'img',\n 'input',\n 'link',\n 'menuitem',\n 'meta',\n 'ol',\n 'param',\n 'select',\n 'table',\n 'tbody',\n 'tfoot',\n 'thead',\n 'tr',\n 'ul',\n 'wbr',\n];\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n// Taken from https://raw.githubusercontent.com/facebook/react/baff5cc2f69d30589a5dc65b089e47765437294b/packages/react-dom/src/shared/possibleStandardNames.js\n// tslint:disable:object-literal-sort-keys\nexport var possibleStandardNames = {\n // HTML\n 'accept-charset': 'acceptCharset',\n acceptcharset: 'acceptCharset',\n accesskey: 'accessKey',\n allowfullscreen: 'allowFullScreen',\n autocapitalize: 'autoCapitalize',\n autocomplete: 'autoComplete',\n autocorrect: 'autoCorrect',\n autofocus: 'autoFocus',\n autoplay: 'autoPlay',\n autosave: 'autoSave',\n cellpadding: 'cellPadding',\n cellspacing: 'cellSpacing',\n charset: 'charSet',\n class: 'className',\n classid: 'classID',\n classname: 'className',\n colspan: 'colSpan',\n contenteditable: 'contentEditable',\n contextmenu: 'contextMenu',\n controlslist: 'controlsList',\n crossorigin: 'crossOrigin',\n dangerouslysetinnerhtml: 'dangerouslySetInnerHTML',\n datetime: 'dateTime',\n defaultchecked: 'defaultChecked',\n defaultvalue: 'defaultValue',\n enctype: 'encType',\n for: 'htmlFor',\n formmethod: 'formMethod',\n formaction: 'formAction',\n formenctype: 'formEncType',\n formnovalidate: 'formNoValidate',\n formtarget: 'formTarget',\n frameborder: 'frameBorder',\n hreflang: 'hrefLang',\n htmlfor: 'htmlFor',\n httpequiv: 'httpEquiv',\n 'http-equiv': 'httpEquiv',\n icon: 'icon',\n innerhtml: 'innerHTML',\n inputmode: 'inputMode',\n itemid: 'itemID',\n itemprop: 'itemProp',\n itemref: 'itemRef',\n itemscope: 'itemScope',\n itemtype: 'itemType',\n keyparams: 'keyParams',\n keytype: 'keyType',\n marginwidth: 'marginWidth',\n marginheight: 'marginHeight',\n maxlength: 'maxLength',\n mediagroup: 'mediaGroup',\n minlength: 'minLength',\n nomodule: 'noModule',\n novalidate: 'noValidate',\n playsinline: 'playsInline',\n radiogroup: 'radioGroup',\n readonly: 'readOnly',\n referrerpolicy: 'referrerPolicy',\n rowspan: 'rowSpan',\n spellcheck: 'spellCheck',\n srcdoc: 'srcDoc',\n srclang: 'srcLang',\n srcset: 'srcSet',\n tabindex: 'tabIndex',\n typemustmatch: 'typeMustMatch',\n usemap: 'useMap',\n // SVG\n accentheight: 'accentHeight',\n 'accent-height': 'accentHeight',\n alignmentbaseline: 'alignmentBaseline',\n 'alignment-baseline': 'alignmentBaseline',\n allowreorder: 'allowReorder',\n arabicform: 'arabicForm',\n 'arabic-form': 'arabicForm',\n attributename: 'attributeName',\n attributetype: 'attributeType',\n autoreverse: 'autoReverse',\n basefrequency: 'baseFrequency',\n baselineshift: 'baselineShift',\n 'baseline-shift': 'baselineShift',\n baseprofile: 'baseProfile',\n calcmode: 'calcMode',\n capheight: 'capHeight',\n 'cap-height': 'capHeight',\n clippath: 'clipPath',\n 'clip-path': 'clipPath',\n clippathunits: 'clipPathUnits',\n cliprule: 'clipRule',\n 'clip-rule': 'clipRule',\n colorinterpolation: 'colorInterpolation',\n 'color-interpolation': 'colorInterpolation',\n colorinterpolationfilters: 'colorInterpolationFilters',\n 'color-interpolation-filters': 'colorInterpolationFilters',\n colorprofile: 'colorProfile',\n 'color-profile': 'colorProfile',\n colorrendering: 'colorRendering',\n 'color-rendering': 'colorRendering',\n contentscripttype: 'contentScriptType',\n contentstyletype: 'contentStyleType',\n diffuseconstant: 'diffuseConstant',\n dominantbaseline: 'dominantBaseline',\n 'dominant-baseline': 'dominantBaseline',\n edgemode: 'edgeMode',\n enablebackground: 'enableBackground',\n 'enable-background': 'enableBackground',\n externalresourcesrequired: 'externalResourcesRequired',\n fillopacity: 'fillOpacity',\n 'fill-opacity': 'fillOpacity',\n fillrule: 'fillRule',\n 'fill-rule': 'fillRule',\n filterres: 'filterRes',\n filterunits: 'filterUnits',\n floodopacity: 'floodOpacity',\n 'flood-opacity': 'floodOpacity',\n floodcolor: 'floodColor',\n 'flood-color': 'floodColor',\n fontfamily: 'fontFamily',\n 'font-family': 'fontFamily',\n fontsize: 'fontSize',\n 'font-size': 'fontSize',\n fontsizeadjust: 'fontSizeAdjust',\n 'font-size-adjust': 'fontSizeAdjust',\n fontstretch: 'fontStretch',\n 'font-stretch': 'fontStretch',\n fontstyle: 'fontStyle',\n 'font-style': 'fontStyle',\n fontvariant: 'fontVariant',\n 'font-variant': 'fontVariant',\n fontweight: 'fontWeight',\n 'font-weight': 'fontWeight',\n glyphname: 'glyphName',\n 'glyph-name': 'glyphName',\n glyphorientationhorizontal: 'glyphOrientationHorizontal',\n 'glyph-orientation-horizontal': 'glyphOrientationHorizontal',\n glyphorientationvertical: 'glyphOrientationVertical',\n 'glyph-orientation-vertical': 'glyphOrientationVertical',\n glyphref: 'glyphRef',\n gradienttransform: 'gradientTransform',\n gradientunits: 'gradientUnits',\n horizadvx: 'horizAdvX',\n 'horiz-adv-x': 'horizAdvX',\n horizoriginx: 'horizOriginX',\n 'horiz-origin-x': 'horizOriginX',\n imagerendering: 'imageRendering',\n 'image-rendering': 'imageRendering',\n kernelmatrix: 'kernelMatrix',\n kernelunitlength: 'kernelUnitLength',\n keypoints: 'keyPoints',\n keysplines: 'keySplines',\n keytimes: 'keyTimes',\n lengthadjust: 'lengthAdjust',\n letterspacing: 'letterSpacing',\n 'letter-spacing': 'letterSpacing',\n lightingcolor: 'lightingColor',\n 'lighting-color': 'lightingColor',\n limitingconeangle: 'limitingConeAngle',\n markerend: 'markerEnd',\n 'marker-end': 'markerEnd',\n markerheight: 'markerHeight',\n markermid: 'markerMid',\n 'marker-mid': 'markerMid',\n markerstart: 'markerStart',\n 'marker-start': 'markerStart',\n markerunits: 'markerUnits',\n markerwidth: 'markerWidth',\n maskcontentunits: 'maskContentUnits',\n maskunits: 'maskUnits',\n numoctaves: 'numOctaves',\n overlineposition: 'overlinePosition',\n 'overline-position': 'overlinePosition',\n overlinethickness: 'overlineThickness',\n 'overline-thickness': 'overlineThickness',\n paintorder: 'paintOrder',\n 'paint-order': 'paintOrder',\n 'panose-1': 'panose1',\n pathlength: 'pathLength',\n patterncontentunits: 'patternContentUnits',\n patterntransform: 'patternTransform',\n patternunits: 'patternUnits',\n pointerevents: 'pointerEvents',\n 'pointer-events': 'pointerEvents',\n pointsatx: 'pointsAtX',\n pointsaty: 'pointsAtY',\n pointsatz: 'pointsAtZ',\n preservealpha: 'preserveAlpha',\n preserveaspectratio: 'preserveAspectRatio',\n primitiveunits: 'primitiveUnits',\n refx: 'refX',\n refy: 'refY',\n renderingintent: 'renderingIntent',\n 'rendering-intent': 'renderingIntent',\n repeatcount: 'repeatCount',\n repeatdur: 'repeatDur',\n requiredextensions: 'requiredExtensions',\n requiredfeatures: 'requiredFeatures',\n shaperendering: 'shapeRendering',\n 'shape-rendering': 'shapeRendering',\n specularconstant: 'specularConstant',\n specularexponent: 'specularExponent',\n spreadmethod: 'spreadMethod',\n startoffset: 'startOffset',\n stddeviation: 'stdDeviation',\n stitchtiles: 'stitchTiles',\n stopcolor: 'stopColor',\n 'stop-color': 'stopColor',\n stopopacity: 'stopOpacity',\n 'stop-opacity': 'stopOpacity',\n strikethroughposition: 'strikethroughPosition',\n 'strikethrough-position': 'strikethroughPosition',\n strikethroughthickness: 'strikethroughThickness',\n 'strikethrough-thickness': 'strikethroughThickness',\n strokedasharray: 'strokeDasharray',\n 'stroke-dasharray': 'strokeDasharray',\n strokedashoffset: 'strokeDashoffset',\n 'stroke-dashoffset': 'strokeDashoffset',\n strokelinecap: 'strokeLinecap',\n 'stroke-linecap': 'strokeLinecap',\n strokelinejoin: 'strokeLinejoin',\n 'stroke-linejoin': 'strokeLinejoin',\n strokemiterlimit: 'strokeMiterlimit',\n 'stroke-miterlimit': 'strokeMiterlimit',\n strokewidth: 'strokeWidth',\n 'stroke-width': 'strokeWidth',\n strokeopacity: 'strokeOpacity',\n 'stroke-opacity': 'strokeOpacity',\n suppresscontenteditablewarning: 'suppressContentEditableWarning',\n suppresshydrationwarning: 'suppressHydrationWarning',\n surfacescale: 'surfaceScale',\n systemlanguage: 'systemLanguage',\n tablevalues: 'tableValues',\n targetx: 'targetX',\n targety: 'targetY',\n textanchor: 'textAnchor',\n 'text-anchor': 'textAnchor',\n textdecoration: 'textDecoration',\n 'text-decoration': 'textDecoration',\n textlength: 'textLength',\n textrendering: 'textRendering',\n 'text-rendering': 'textRendering',\n underlineposition: 'underlinePosition',\n 'underline-position': 'underlinePosition',\n underlinethickness: 'underlineThickness',\n 'underline-thickness': 'underlineThickness',\n unicodebidi: 'unicodeBidi',\n 'unicode-bidi': 'unicodeBidi',\n unicoderange: 'unicodeRange',\n 'unicode-range': 'unicodeRange',\n unitsperem: 'unitsPerEm',\n 'units-per-em': 'unitsPerEm',\n unselectable: 'unselectable',\n valphabetic: 'vAlphabetic',\n 'v-alphabetic': 'vAlphabetic',\n vectoreffect: 'vectorEffect',\n 'vector-effect': 'vectorEffect',\n vertadvy: 'vertAdvY',\n 'vert-adv-y': 'vertAdvY',\n vertoriginx: 'vertOriginX',\n 'vert-origin-x': 'vertOriginX',\n vertoriginy: 'vertOriginY',\n 'vert-origin-y': 'vertOriginY',\n vhanging: 'vHanging',\n 'v-hanging': 'vHanging',\n videographic: 'vIdeographic',\n 'v-ideographic': 'vIdeographic',\n viewbox: 'viewBox',\n viewtarget: 'viewTarget',\n vmathematical: 'vMathematical',\n 'v-mathematical': 'vMathematical',\n wordspacing: 'wordSpacing',\n 'word-spacing': 'wordSpacing',\n writingmode: 'writingMode',\n 'writing-mode': 'writingMode',\n xchannelselector: 'xChannelSelector',\n xheight: 'xHeight',\n 'x-height': 'xHeight',\n xlinkactuate: 'xlinkActuate',\n 'xlink:actuate': 'xlinkActuate',\n xlinkarcrole: 'xlinkArcrole',\n 'xlink:arcrole': 'xlinkArcrole',\n xlinkhref: 'xlinkHref',\n 'xlink:href': 'xlinkHref',\n xlinkrole: 'xlinkRole',\n 'xlink:role': 'xlinkRole',\n xlinkshow: 'xlinkShow',\n 'xlink:show': 'xlinkShow',\n xlinktitle: 'xlinkTitle',\n 'xlink:title': 'xlinkTitle',\n xlinktype: 'xlinkType',\n 'xlink:type': 'xlinkType',\n xmlbase: 'xmlBase',\n 'xml:base': 'xmlBase',\n xmllang: 'xmlLang',\n 'xml:lang': 'xmlLang',\n 'xml:space': 'xmlSpace',\n xmlnsxlink: 'xmlnsXlink',\n 'xmlns:xlink': 'xmlnsXlink',\n xmlspace: 'xmlSpace',\n ychannelselector: 'yChannelSelector',\n zoomandpan: 'zoomAndPan',\n // event handlers\n onblur: 'onBlur',\n onchange: 'onChange',\n onclick: 'onClick',\n oncontextmenu: 'onContextMenu',\n ondoubleclick: 'onDoubleClick',\n ondrag: 'onDrag',\n ondragend: 'onDragEnd',\n ondragenter: 'onDragEnter',\n ondragexit: 'onDragExit',\n ondragleave: 'onDragLeave',\n ondragover: 'onDragOver',\n ondragstart: 'onDragStart',\n ondrop: 'onDrop',\n onerror: 'onError',\n onfocus: 'onFocus',\n oninput: 'onInput',\n oninvalid: 'onInvalid',\n onkeydown: 'onKeyDown',\n onkeypress: 'onKeyPress',\n onkeyup: 'onKeyUp',\n onload: 'onLoad',\n onmousedown: 'onMouseDown',\n onmouseenter: 'onMouseEnter',\n onmouseleave: 'onMouseLeave',\n onmousemove: 'onMouseMove',\n onmouseout: 'onMouseOut',\n onmouseover: 'onMouseOver',\n onmouseup: 'onMouseUp',\n onscroll: 'onScroll',\n onsubmit: 'onSubmit',\n ontouchcancel: 'onTouchCancel',\n ontouchend: 'onTouchEnd',\n ontouchmove: 'onTouchMove',\n ontouchstart: 'onTouchStart',\n onwheel: 'onWheel',\n};\n//# sourceMappingURL=helpers.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n/* eslint-disable @typescript-eslint/no-use-before-define */\nimport * as React from 'react';\nimport { noTextChildNodes, possibleStandardNames, randomString, styleToObject } from './helpers';\nfunction parseAttributes(node, reactKey) {\n var attributes = {\n key: reactKey,\n };\n /* istanbul ignore else */\n if (node instanceof Element) {\n var nodeClassNames = node.getAttribute('class');\n if (nodeClassNames) {\n attributes.className = nodeClassNames;\n }\n __spreadArray([], __read(node.attributes), false).forEach(function (d) {\n switch (d.name) {\n // this is manually handled above, so break;\n case 'class':\n break;\n case 'style':\n attributes[d.name] = styleToObject(d.value);\n break;\n case 'allowfullscreen':\n case 'allowpaymentrequest':\n case 'async':\n case 'autofocus':\n case 'autoplay':\n case 'checked':\n case 'controls':\n case 'default':\n case 'defer':\n case 'disabled':\n case 'formnovalidate':\n case 'hidden':\n case 'ismap':\n case 'itemscope':\n case 'loop':\n case 'multiple':\n case 'muted':\n case 'nomodule':\n case 'novalidate':\n case 'open':\n case 'readonly':\n case 'required':\n case 'reversed':\n case 'selected':\n case 'typemustmatch':\n attributes[possibleStandardNames[d.name] || d.name] = true;\n break;\n default:\n attributes[possibleStandardNames[d.name] || d.name] = d.value;\n }\n });\n }\n return attributes;\n}\nfunction parseChildren(childNodeList, level, options) {\n var children = __spreadArray([], __read(childNodeList), false).map(function (node, index) {\n return convertFromNode(node, __assign(__assign({}, options), { index: index, level: level + 1 }));\n })\n .filter(Boolean);\n if (!children.length) {\n return null;\n }\n return children;\n}\nfunction parseName(nodeName) {\n if (/[a-z]+[A-Z]+[a-z]+/.test(nodeName)) {\n return nodeName;\n }\n return nodeName.toLowerCase();\n}\nexport function convertFromNode(input, options) {\n var _a;\n if (options === void 0) { options = {}; }\n if (!input || !(input instanceof Node)) {\n return null;\n }\n var _b = options.actions, actions = _b === void 0 ? [] : _b, _c = options.index, index = _c === void 0 ? 0 : _c, _d = options.level, level = _d === void 0 ? 0 : _d, randomKey = options.randomKey;\n var node = input;\n var key = \"\".concat(level, \"-\").concat(index);\n var result = [];\n if (randomKey && level === 0) {\n key = \"\".concat(randomString(), \"-\").concat(key);\n }\n /* istanbul ignore else */\n if (Array.isArray(actions)) {\n actions.forEach(function (action) {\n if (action.condition(node, key, level)) {\n if (typeof action.pre === 'function') {\n node = action.pre(node, key, level);\n if (!(node instanceof Node)) {\n node = input;\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn('The `pre` method always must return a valid DomNode (instanceof Node) - your modification will be ignored (Hint: if you want to render a React-component, use the `post` method instead)');\n }\n }\n }\n if (typeof action.post === 'function') {\n result.push(action.post(node, key, level));\n }\n }\n });\n }\n if (result.length) {\n return result;\n }\n switch (node.nodeType) {\n case 1: {\n // regular dom-node\n return React.createElement(parseName(node.nodeName), parseAttributes(node, key), parseChildren(node.childNodes, level, options));\n }\n case 3: {\n // textnode\n var nodeText = ((_a = node.nodeValue) === null || _a === void 0 ? void 0 : _a.toString()) || '';\n /* istanbul ignore else */\n if (/^\\s+$/.test(nodeText) && !/[\\u00A0\\u202F]/.test(nodeText)) {\n return null;\n }\n /* istanbul ignore next */\n if (!node.parentNode) {\n return nodeText;\n }\n var parentNodeName = node.parentNode.nodeName.toLowerCase();\n if (noTextChildNodes.includes(parentNodeName)) {\n /* istanbul ignore else */\n if (/\\S/.test(nodeText)) {\n // eslint-disable-next-line no-console\n console.warn(\"A textNode is not allowed inside '\".concat(parentNodeName, \"'. Your text \\\"\").concat(nodeText, \"\\\" will be ignored\"));\n }\n return null;\n }\n return nodeText;\n }\n case 8: {\n // html-comment\n return null;\n }\n /* istanbul ignore next */\n default: {\n return null;\n }\n }\n}\nexport function convertFromString(input, options) {\n if (options === void 0) { options = {}; }\n if (!input || typeof input !== 'string') {\n return null;\n }\n var _a = options.nodeOnly, nodeOnly = _a === void 0 ? false : _a, _b = options.selector, selector = _b === void 0 ? 'body > *' : _b, _c = options.type, type = _c === void 0 ? 'text/html' : _c;\n try {\n var parser = new DOMParser();\n var document_1 = parser.parseFromString(input, type);\n var node = document_1.querySelector(selector);\n if (!(node instanceof Node)) {\n throw new TypeError('Error parsing input');\n }\n if (nodeOnly) {\n return node;\n }\n return convertFromNode(node, options);\n }\n catch (error) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.error(error);\n }\n }\n return null;\n}\nexport default function convert(input, options) {\n if (options === void 0) { options = {}; }\n if (typeof input === 'string') {\n return convertFromString(input, options);\n }\n if (input instanceof Node) {\n return convertFromNode(input, options);\n }\n return null;\n}\n//# sourceMappingURL=index.js.map","import { canUseDOM as canUseDOMFlag } from 'exenv';\nexport var STATUS = {\n IDLE: 'idle',\n LOADING: 'loading',\n LOADED: 'loaded',\n FAILED: 'failed',\n READY: 'ready',\n UNSUPPORTED: 'unsupported',\n};\nexport function canUseDOM() {\n return canUseDOMFlag;\n}\nexport function isSupportedEnvironment() {\n return supportsInlineSVG() && typeof window !== 'undefined' && window !== null;\n}\nexport function supportsInlineSVG() {\n /* istanbul ignore next */\n if (!document) {\n return false;\n }\n var div = document.createElement('div');\n div.innerHTML = '';\n var svg = div.firstChild;\n return !!svg && svg.namespaceURI === 'http://www.w3.org/2000/svg';\n}\nfunction randomCharacter(character) {\n return character[Math.floor(Math.random() * character.length)];\n}\nexport function randomString(length) {\n var letters = 'abcdefghijklmnopqrstuvwxyz';\n var numbers = '1234567890';\n var charset = \"\".concat(letters).concat(letters.toUpperCase()).concat(numbers);\n var R = '';\n for (var index = 0; index < length; index++) {\n R += randomCharacter(charset);\n }\n return R;\n}\n/**\n * Remove properties from an object\n */\nexport function omit(input) {\n var filter = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n filter[_i - 1] = arguments[_i];\n }\n var output = {};\n for (var key in input) {\n /* istanbul ignore else */\n if ({}.hasOwnProperty.call(input, key)) {\n if (!filter.includes(key)) {\n output[key] = input[key];\n }\n }\n }\n return output;\n}\n//# sourceMappingURL=helpers.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nimport * as React from 'react';\nimport convert from 'react-from-dom';\nimport { canUseDOM, isSupportedEnvironment, omit, randomString, STATUS } from './helpers';\nexport var cacheStore = Object.create(null);\nvar InlineSVG = /** @class */ (function (_super) {\n __extends(InlineSVG, _super);\n function InlineSVG(props) {\n var _this = _super.call(this, props) || this;\n Object.defineProperty(_this, \"hash\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(_this, \"isActive\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n Object.defineProperty(_this, \"isInitialized\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n Object.defineProperty(_this, \"handleError\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: function (error) {\n var onError = _this.props.onError;\n var status = error.message === 'Browser does not support SVG' ? STATUS.UNSUPPORTED : STATUS.FAILED;\n /* istanbul ignore else */\n if (_this.isActive) {\n _this.setState({ status: status }, function () {\n /* istanbul ignore else */\n if (typeof onError === 'function') {\n onError(error);\n }\n });\n }\n }\n });\n Object.defineProperty(_this, \"handleLoad\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: function (content, hasCache) {\n if (hasCache === void 0) { hasCache = false; }\n /* istanbul ignore else */\n if (_this.isActive) {\n _this.setState({\n content: content,\n hasCache: hasCache,\n status: STATUS.LOADED,\n }, _this.getElement);\n }\n }\n });\n Object.defineProperty(_this, \"request\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: function () { return __awaiter(_this, void 0, void 0, function () {\n var _a, cacheRequests, fetchOptions, src, response, contentType, _b, fileType_1, content, currentSrc, cache, error_1, cache;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = this.props, cacheRequests = _a.cacheRequests, fetchOptions = _a.fetchOptions, src = _a.src;\n if (cacheRequests) {\n cacheStore[src] = { content: '', status: STATUS.LOADING };\n }\n _c.label = 1;\n case 1:\n _c.trys.push([1, 4, , 5]);\n return [4 /*yield*/, fetch(src, fetchOptions)];\n case 2:\n response = _c.sent();\n contentType = response.headers.get('content-type');\n _b = __read((contentType || '').split(/ ?; ?/), 1), fileType_1 = _b[0];\n if (response.status > 299) {\n throw new Error('Not found');\n }\n if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType_1.includes(d); })) {\n throw new Error(\"Content type isn't valid: \".concat(fileType_1));\n }\n return [4 /*yield*/, response.text()];\n case 3:\n content = _c.sent();\n currentSrc = this.props.src;\n // the current src don't match the previous one, skipping...\n if (src !== currentSrc) {\n if (cacheStore[src].status === STATUS.LOADING) {\n delete cacheStore[src];\n }\n return [2 /*return*/];\n }\n this.handleLoad(content);\n /* istanbul ignore else */\n if (cacheRequests) {\n cache = cacheStore[src];\n /* istanbul ignore else */\n if (cache) {\n cache.content = content;\n cache.status = STATUS.LOADED;\n }\n }\n return [3 /*break*/, 5];\n case 4:\n error_1 = _c.sent();\n this.handleError(error_1);\n /* istanbul ignore else */\n if (cacheRequests) {\n cache = cacheStore[src];\n /* istanbul ignore else */\n if (cache) {\n delete cacheStore[src];\n }\n }\n return [3 /*break*/, 5];\n case 5: return [2 /*return*/];\n }\n });\n }); }\n });\n _this.state = {\n content: '',\n element: null,\n hasCache: !!props.cacheRequests && !!cacheStore[props.src],\n status: STATUS.IDLE,\n };\n _this.hash = props.uniqueHash || randomString(8);\n return _this;\n }\n Object.defineProperty(InlineSVG.prototype, \"componentDidMount\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function () {\n this.isActive = true;\n if (!canUseDOM() || this.isInitialized) {\n return;\n }\n var status = this.state.status;\n var src = this.props.src;\n try {\n /* istanbul ignore else */\n if (status === STATUS.IDLE) {\n /* istanbul ignore else */\n if (!isSupportedEnvironment()) {\n throw new Error('Browser does not support SVG');\n }\n /* istanbul ignore else */\n if (!src) {\n throw new Error('Missing src');\n }\n this.load();\n }\n }\n catch (error) {\n this.handleError(error);\n }\n this.isInitialized = true;\n }\n });\n Object.defineProperty(InlineSVG.prototype, \"componentDidUpdate\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function (previousProps, previousState) {\n if (!canUseDOM()) {\n return;\n }\n var _a = this.state, hasCache = _a.hasCache, status = _a.status;\n var _b = this.props, onLoad = _b.onLoad, src = _b.src;\n if (previousState.status !== STATUS.READY && status === STATUS.READY) {\n /* istanbul ignore else */\n if (onLoad) {\n onLoad(src, hasCache);\n }\n }\n if (previousProps.src !== src) {\n if (!src) {\n this.handleError(new Error('Missing src'));\n return;\n }\n this.load();\n }\n }\n });\n Object.defineProperty(InlineSVG.prototype, \"componentWillUnmount\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function () {\n this.isActive = false;\n }\n });\n Object.defineProperty(InlineSVG.prototype, \"getElement\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function () {\n try {\n var node = this.getNode();\n var element = convert(node);\n if (!element || !React.isValidElement(element)) {\n throw new Error('Could not convert the src to a React element');\n }\n this.setState({\n element: element,\n status: STATUS.READY,\n });\n }\n catch (error) {\n this.handleError(new Error(error.message));\n }\n }\n });\n Object.defineProperty(InlineSVG.prototype, \"getNode\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function () {\n var _a = this.props, description = _a.description, title = _a.title;\n try {\n var svgText = this.processSVG();\n var node = convert(svgText, { nodeOnly: true });\n if (!node || !(node instanceof SVGSVGElement)) {\n throw new Error('Could not convert the src to a DOM Node');\n }\n var svg = this.updateSVGAttributes(node);\n if (description) {\n var originalDesc = svg.querySelector('desc');\n if (originalDesc && originalDesc.parentNode) {\n originalDesc.parentNode.removeChild(originalDesc);\n }\n var descElement = document.createElementNS('http://www.w3.org/2000/svg', 'desc');\n descElement.innerHTML = description;\n svg.prepend(descElement);\n }\n if (typeof title !== 'undefined') {\n var originalTitle = svg.querySelector('title');\n if (originalTitle && originalTitle.parentNode) {\n originalTitle.parentNode.removeChild(originalTitle);\n }\n if (title) {\n var titleElement = document.createElementNS('http://www.w3.org/2000/svg', 'title');\n titleElement.innerHTML = title;\n svg.prepend(titleElement);\n }\n }\n return svg;\n }\n catch (error) {\n return this.handleError(error);\n }\n }\n });\n Object.defineProperty(InlineSVG.prototype, \"load\", {\n enumerable: false,\n configurable: true,\n writable: true,\n value: function () {\n var _this = this;\n /* istanbul ignore else */\n if (this.isActive) {\n this.setState({\n content: '',\n element: null,\n hasCache: false,\n status: STATUS.LOADING,\n }, function () {\n var _a = _this.props, cacheRequests = _a.cacheRequests, src = _a.src;\n var cache = cacheRequests && cacheStore[src];\n if (cache && cache.status === STATUS.LOADED) {\n _this.handleLoad(cache.content, true);\n return;\n }\n var dataURI = src.match(/^data:image\\/svg[^,]*?(;base64)?,(.*)/u);\n var inlineSrc;\n if (dataURI) {\n inlineSrc = dataURI[1] ? window.atob(dataURI[2]) : decodeURIComponent(dataURI[2]);\n }\n else if (src.includes(' context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n }\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n function Provider(props) {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName][index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n }\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName][index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/slot/src/Slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment, jsx } from \"react/jsx-runtime\";\nvar Slot = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n});\nSlot.displayName = \"Slot\";\nvar SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n return React.cloneElement(children, {\n ...mergeProps(slotProps, children.props),\n // @ts-ignore\n ref: forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef\n });\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\nSlotClone.displayName = \"SlotClone\";\nvar Slottable = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment, { children });\n};\nfunction isSlottable(child) {\n return React.isValidElement(child) && child.type === Slottable;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n childPropValue(...args);\n slotPropValue(...args);\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Slot;\nexport {\n Root,\n Slot,\n Slottable\n};\n//# sourceMappingURL=index.mjs.map\n","import React from 'react';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { Slot } from '@radix-ui/react-slot';\n\ntype SlotProps = React.ComponentPropsWithoutRef;\ntype CollectionElement = HTMLElement;\ninterface CollectionProps extends SlotProps {\n scope: any;\n}\n\n// We have resorted to returning slots directly rather than exposing primitives that can then\n// be slotted like `…`.\n// This is because we encountered issues with generic types that cannot be statically analysed\n// due to creating them dynamically via createCollection.\n\nfunction createCollection(name: string) {\n /* -----------------------------------------------------------------------------------------------\n * CollectionProvider\n * ---------------------------------------------------------------------------------------------*/\n\n const PROVIDER_NAME = name + 'CollectionProvider';\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n\n type ContextValue = {\n collectionRef: React.RefObject;\n itemMap: Map, { ref: React.RefObject } & ItemData>;\n };\n\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: new Map() }\n );\n\n const CollectionProvider: React.FC<{ children?: React.ReactNode; scope: any }> = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(new Map()).current;\n return (\n \n {children}\n \n );\n };\n\n CollectionProvider.displayName = PROVIDER_NAME;\n\n /* -----------------------------------------------------------------------------------------------\n * CollectionSlot\n * ---------------------------------------------------------------------------------------------*/\n\n const COLLECTION_SLOT_NAME = name + 'CollectionSlot';\n\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return {children};\n }\n );\n\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n\n /* -----------------------------------------------------------------------------------------------\n * CollectionItem\n * ---------------------------------------------------------------------------------------------*/\n\n const ITEM_SLOT_NAME = name + 'CollectionItemSlot';\n const ITEM_DATA_ATTR = 'data-radix-collection-item';\n\n type CollectionItemSlotProps = ItemData & {\n children: React.ReactNode;\n scope: any;\n };\n\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...(itemData as unknown as ItemData) });\n return () => void context.itemMap.delete(ref);\n });\n\n return (\n \n {children}\n \n );\n }\n );\n\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n\n /* -----------------------------------------------------------------------------------------------\n * useCollection\n * ---------------------------------------------------------------------------------------------*/\n\n function useCollection(scope: any) {\n const context = useCollectionContext(name + 'CollectionConsumer', scope);\n\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current!) - orderedNodes.indexOf(b.ref.current!)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n\n return getItems;\n }\n\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope,\n ] as const;\n}\n\nexport { createCollection };\nexport type { CollectionProps };\n","// packages/react/compose-refs/src/composeRefs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => refs.forEach((ref) => setRef(ref, node));\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/primitive/src/Primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/slot/src/Slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment, jsx } from \"react/jsx-runtime\";\nvar Slot = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n});\nSlot.displayName = \"Slot\";\nvar SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n return React.cloneElement(children, {\n ...mergeProps(slotProps, children.props),\n // @ts-ignore\n ref: forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef\n });\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\nSlotClone.displayName = \"SlotClone\";\nvar Slottable = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment, { children });\n};\nfunction isSlottable(child) {\n return React.isValidElement(child) && child.type === Slottable;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n childPropValue(...args);\n slotPropValue(...args);\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Slot;\nexport {\n Root,\n Slot,\n Slottable\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/context/src/createContext.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n function Provider(props) {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n }\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n function Provider(props) {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName][index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n }\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName][index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { Primitive, dispatchDiscreteCustomEvent } from '@radix-ui/react-primitive';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { useCallbackRef } from '@radix-ui/react-use-callback-ref';\nimport { useEscapeKeydown } from '@radix-ui/react-use-escape-keydown';\n\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayer\n * -----------------------------------------------------------------------------------------------*/\n\nconst DISMISSABLE_LAYER_NAME = 'DismissableLayer';\nconst CONTEXT_UPDATE = 'dismissableLayer.update';\nconst POINTER_DOWN_OUTSIDE = 'dismissableLayer.pointerDownOutside';\nconst FOCUS_OUTSIDE = 'dismissableLayer.focusOutside';\n\nlet originalBodyPointerEvents: string;\n\nconst DismissableLayerContext = React.createContext({\n layers: new Set(),\n layersWithOutsidePointerEventsDisabled: new Set(),\n branches: new Set(),\n});\n\ntype DismissableLayerElement = React.ElementRef;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef;\ninterface DismissableLayerProps extends PrimitiveDivProps {\n /**\n * When `true`, hover/focus/click interactions will be disabled on elements outside\n * the `DismissableLayer`. Users will need to click twice on outside elements to\n * interact with them: once to close the `DismissableLayer`, and again to trigger the element.\n */\n disableOutsidePointerEvents?: boolean;\n /**\n * Event handler called when the escape key is down.\n * Can be prevented.\n */\n onEscapeKeyDown?: (event: KeyboardEvent) => void;\n /**\n * Event handler called when the a `pointerdown` event happens outside of the `DismissableLayer`.\n * Can be prevented.\n */\n onPointerDownOutside?: (event: PointerDownOutsideEvent) => void;\n /**\n * Event handler called when the focus moves outside of the `DismissableLayer`.\n * Can be prevented.\n */\n onFocusOutside?: (event: FocusOutsideEvent) => void;\n /**\n * Event handler called when an interaction happens outside the `DismissableLayer`.\n * Specifically, when a `pointerdown` event happens outside or focus moves outside of it.\n * Can be prevented.\n */\n onInteractOutside?: (event: PointerDownOutsideEvent | FocusOutsideEvent) => void;\n /**\n * Handler called when the `DismissableLayer` should be dismissed\n */\n onDismiss?: () => void;\n}\n\nconst DismissableLayer = React.forwardRef(\n (props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n ...layerProps\n } = props;\n const context = React.useContext(DismissableLayerContext);\n const [node, setNode] = React.useState(null);\n const ownerDocument = node?.ownerDocument ?? globalThis?.document;\n const [, force] = React.useState({});\n const composedRefs = useComposedRefs(forwardedRef, (node) => setNode(node));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1); // prettier-ignore\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled); // prettier-ignore\n const index = node ? layers.indexOf(node) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n\n const pointerDownOutside = usePointerDownOutside((event) => {\n const target = event.target as HTMLElement;\n const isPointerDownOnBranch = [...context.branches].some((branch) => branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n\n const focusOutside = useFocusOutside((event) => {\n const target = event.target as HTMLElement;\n const isFocusInBranch = [...context.branches].some((branch) => branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n\n useEscapeKeydown((event) => {\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n\n React.useEffect(() => {\n if (!node) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = 'none';\n }\n context.layersWithOutsidePointerEventsDisabled.add(node);\n }\n context.layers.add(node);\n dispatchUpdate();\n return () => {\n if (\n disableOutsidePointerEvents &&\n context.layersWithOutsidePointerEventsDisabled.size === 1\n ) {\n ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;\n }\n };\n }, [node, ownerDocument, disableOutsidePointerEvents, context]);\n\n /**\n * We purposefully prevent combining this effect with the `disableOutsidePointerEvents` effect\n * because a change to `disableOutsidePointerEvents` would remove this layer from the stack\n * and add it to the end again so the layering order wouldn't be _creation order_.\n * We only want them to be removed from context stacks when unmounted.\n */\n React.useEffect(() => {\n return () => {\n if (!node) return;\n context.layers.delete(node);\n context.layersWithOutsidePointerEventsDisabled.delete(node);\n dispatchUpdate();\n };\n }, [node, context]);\n\n React.useEffect(() => {\n const handleUpdate = () => force({});\n document.addEventListener(CONTEXT_UPDATE, handleUpdate);\n return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);\n }, []);\n\n return (\n \n );\n }\n);\n\nDismissableLayer.displayName = DISMISSABLE_LAYER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayerBranch\n * -----------------------------------------------------------------------------------------------*/\n\nconst BRANCH_NAME = 'DismissableLayerBranch';\n\ntype DismissableLayerBranchElement = React.ElementRef;\ninterface DismissableLayerBranchProps extends PrimitiveDivProps {}\n\nconst DismissableLayerBranch = React.forwardRef<\n DismissableLayerBranchElement,\n DismissableLayerBranchProps\n>((props, forwardedRef) => {\n const context = React.useContext(DismissableLayerContext);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return () => {\n context.branches.delete(node);\n };\n }\n }, [context.branches]);\n\n return ;\n});\n\nDismissableLayerBranch.displayName = BRANCH_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype PointerDownOutsideEvent = CustomEvent<{ originalEvent: PointerEvent }>;\ntype FocusOutsideEvent = CustomEvent<{ originalEvent: FocusEvent }>;\n\n/**\n * Listens for `pointerdown` outside a react subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer dismissing behaviour present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */\nfunction usePointerDownOutside(\n onPointerDownOutside?: (event: PointerDownOutsideEvent) => void,\n ownerDocument: Document = globalThis?.document\n) {\n const handlePointerDownOutside = useCallbackRef(onPointerDownOutside) as EventListener;\n const isPointerInsideReactTreeRef = React.useRef(false);\n const handleClickRef = React.useRef(() => {});\n\n React.useEffect(() => {\n const handlePointerDown = (event: PointerEvent) => {\n if (event.target && !isPointerInsideReactTreeRef.current) {\n const eventDetail = { originalEvent: event };\n\n function handleAndDispatchPointerDownOutsideEvent() {\n handleAndDispatchCustomEvent(\n POINTER_DOWN_OUTSIDE,\n handlePointerDownOutside,\n eventDetail,\n { discrete: true }\n );\n }\n\n /**\n * On touch devices, we need to wait for a click event because browsers implement\n * a ~350ms delay between the time the user stops touching the display and when the\n * browser executres events. We need to ensure we don't reactivate pointer-events within\n * this timeframe otherwise the browser may execute events that should have been prevented.\n *\n * Additionally, this also lets us deal automatically with cancellations when a click event\n * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n *\n * This is why we also continuously remove the previous listener, because we cannot be\n * certain that it was raised, and therefore cleaned-up.\n */\n if (event.pointerType === 'touch') {\n ownerDocument.removeEventListener('click', handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent;\n ownerDocument.addEventListener('click', handleClickRef.current, { once: true });\n } else {\n handleAndDispatchPointerDownOutsideEvent();\n }\n } else {\n // We need to remove the event listener in case the outside click has been canceled.\n // See: https://github.com/radix-ui/primitives/issues/2171\n ownerDocument.removeEventListener('click', handleClickRef.current);\n }\n isPointerInsideReactTreeRef.current = false;\n };\n /**\n * if this hook executes in a component that mounts via a `pointerdown` event, the event\n * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n * this by delaying the event listener registration on the document.\n * This is not React specific, but rather how the DOM works, ie:\n * ```\n * button.addEventListener('pointerdown', () => {\n * console.log('I will log');\n * document.addEventListener('pointerdown', () => {\n * console.log('I will also log');\n * })\n * });\n */\n const timerId = window.setTimeout(() => {\n ownerDocument.addEventListener('pointerdown', handlePointerDown);\n }, 0);\n return () => {\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener('pointerdown', handlePointerDown);\n ownerDocument.removeEventListener('click', handleClickRef.current);\n };\n }, [ownerDocument, handlePointerDownOutside]);\n\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: () => (isPointerInsideReactTreeRef.current = true),\n };\n}\n\n/**\n * Listens for when focus happens outside a react subtree.\n * Returns props to pass to the root (node) of the subtree we want to check.\n */\nfunction useFocusOutside(\n onFocusOutside?: (event: FocusOutsideEvent) => void,\n ownerDocument: Document = globalThis?.document\n) {\n const handleFocusOutside = useCallbackRef(onFocusOutside) as EventListener;\n const isFocusInsideReactTreeRef = React.useRef(false);\n\n React.useEffect(() => {\n const handleFocus = (event: FocusEvent) => {\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = { originalEvent: event };\n handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false,\n });\n }\n };\n ownerDocument.addEventListener('focusin', handleFocus);\n return () => ownerDocument.removeEventListener('focusin', handleFocus);\n }, [ownerDocument, handleFocusOutside]);\n\n return {\n onFocusCapture: () => (isFocusInsideReactTreeRef.current = true),\n onBlurCapture: () => (isFocusInsideReactTreeRef.current = false),\n };\n}\n\nfunction dispatchUpdate() {\n const event = new CustomEvent(CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\n\nfunction handleAndDispatchCustomEvent(\n name: string,\n handler: ((event: E) => void) | undefined,\n detail: { originalEvent: OriginalEvent } & (E extends CustomEvent ? D : never),\n { discrete }: { discrete: boolean }\n) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, { bubbles: false, cancelable: true, detail });\n if (handler) target.addEventListener(name, handler as EventListener, { once: true });\n\n if (discrete) {\n dispatchDiscreteCustomEvent(target, event);\n } else {\n target.dispatchEvent(event);\n }\n}\n\nconst Root = DismissableLayer;\nconst Branch = DismissableLayerBranch;\n\nexport {\n DismissableLayer,\n DismissableLayerBranch,\n //\n Root,\n Branch,\n};\nexport type { DismissableLayerProps };\n","import * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\n\n/* -------------------------------------------------------------------------------------------------\n * Portal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'Portal';\n\ntype PortalElement = React.ElementRef;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef;\ninterface PortalProps extends PrimitiveDivProps {\n /**\n * An optional container where the portaled content should be appended.\n */\n container?: Element | null;\n}\n\nconst Portal = React.forwardRef((props, forwardedRef) => {\n const { container: containerProp, ...portalProps } = props;\n const [mounted, setMounted] = React.useState(false);\n useLayoutEffect(() => setMounted(true), []);\n const container = containerProp || (mounted && globalThis?.document?.body);\n return container\n ? ReactDOM.createPortal(, container)\n : null;\n});\n\nPortal.displayName = PORTAL_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = Portal;\n\nexport {\n Portal,\n //\n Root,\n};\nexport type { PortalProps };\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\nimport { useStateMachine } from './useStateMachine';\n\ninterface PresenceProps {\n children: React.ReactElement | ((props: { present: boolean }) => React.ReactElement);\n present: boolean;\n}\n\nconst Presence: React.FC = (props) => {\n const { present, children } = props;\n const presence = usePresence(present);\n\n const child = (\n typeof children === 'function'\n ? children({ present: presence.isPresent })\n : React.Children.only(children)\n ) as React.ReactElement;\n\n const ref = useComposedRefs(presence.ref, getElementRef(child));\n const forceMount = typeof children === 'function';\n return forceMount || presence.isPresent ? React.cloneElement(child, { ref }) : null;\n};\n\nPresence.displayName = 'Presence';\n\n/* -------------------------------------------------------------------------------------------------\n * usePresence\n * -----------------------------------------------------------------------------------------------*/\n\nfunction usePresence(present: boolean) {\n const [node, setNode] = React.useState();\n const stylesRef = React.useRef({} as any);\n const prevPresentRef = React.useRef(present);\n const prevAnimationNameRef = React.useRef('none');\n const initialState = present ? 'mounted' : 'unmounted';\n const [state, send] = useStateMachine(initialState, {\n mounted: {\n UNMOUNT: 'unmounted',\n ANIMATION_OUT: 'unmountSuspended',\n },\n unmountSuspended: {\n MOUNT: 'mounted',\n ANIMATION_END: 'unmounted',\n },\n unmounted: {\n MOUNT: 'mounted',\n },\n });\n\n React.useEffect(() => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n prevAnimationNameRef.current = state === 'mounted' ? currentAnimationName : 'none';\n }, [state]);\n\n useLayoutEffect(() => {\n const styles = stylesRef.current;\n const wasPresent = prevPresentRef.current;\n const hasPresentChanged = wasPresent !== present;\n\n if (hasPresentChanged) {\n const prevAnimationName = prevAnimationNameRef.current;\n const currentAnimationName = getAnimationName(styles);\n\n if (present) {\n send('MOUNT');\n } else if (currentAnimationName === 'none' || styles?.display === 'none') {\n // If there is no exit animation or the element is hidden, animations won't run\n // so we unmount instantly\n send('UNMOUNT');\n } else {\n /**\n * When `present` changes to `false`, we check changes to animation-name to\n * determine whether an animation has started. We chose this approach (reading\n * computed styles) because there is no `animationrun` event and `animationstart`\n * fires after `animation-delay` has expired which would be too late.\n */\n const isAnimating = prevAnimationName !== currentAnimationName;\n\n if (wasPresent && isAnimating) {\n send('ANIMATION_OUT');\n } else {\n send('UNMOUNT');\n }\n }\n\n prevPresentRef.current = present;\n }\n }, [present, send]);\n\n useLayoutEffect(() => {\n if (node) {\n /**\n * Triggering an ANIMATION_OUT during an ANIMATION_IN will fire an `animationcancel`\n * event for ANIMATION_IN after we have entered `unmountSuspended` state. So, we\n * make sure we only trigger ANIMATION_END for the currently active animation.\n */\n const handleAnimationEnd = (event: AnimationEvent) => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n const isCurrentAnimation = currentAnimationName.includes(event.animationName);\n if (event.target === node && isCurrentAnimation) {\n // With React 18 concurrency this update is applied\n // a frame after the animation ends, creating a flash of visible content.\n // By manually flushing we ensure they sync within a frame, removing the flash.\n ReactDOM.flushSync(() => send('ANIMATION_END'));\n }\n };\n const handleAnimationStart = (event: AnimationEvent) => {\n if (event.target === node) {\n // if animation occurred, store its name as the previous animation.\n prevAnimationNameRef.current = getAnimationName(stylesRef.current);\n }\n };\n node.addEventListener('animationstart', handleAnimationStart);\n node.addEventListener('animationcancel', handleAnimationEnd);\n node.addEventListener('animationend', handleAnimationEnd);\n return () => {\n node.removeEventListener('animationstart', handleAnimationStart);\n node.removeEventListener('animationcancel', handleAnimationEnd);\n node.removeEventListener('animationend', handleAnimationEnd);\n };\n } else {\n // Transition to the unmounted state if the node is removed prematurely.\n // We avoid doing so during cleanup as the node may change but still exist.\n send('ANIMATION_END');\n }\n }, [node, send]);\n\n return {\n isPresent: ['mounted', 'unmountSuspended'].includes(state),\n ref: React.useCallback((node: HTMLElement) => {\n if (node) stylesRef.current = getComputedStyle(node);\n setNode(node);\n }, []),\n };\n}\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getAnimationName(styles?: CSSStyleDeclaration) {\n return styles?.animationName || 'none';\n}\n\n// Before React 19 accessing `element.props.ref` will throw a warning and suggest using `element.ref`\n// After React 19 accessing `element.ref` does the opposite.\n// https://github.com/facebook/react/pull/28348\n//\n// Access the ref using the method that doesn't yield a warning.\nfunction getElementRef(element: React.ReactElement) {\n // React <=18 in DEV\n let getter = Object.getOwnPropertyDescriptor(element.props, 'ref')?.get;\n let mayWarn = getter && 'isReactWarning' in getter && getter.isReactWarning;\n if (mayWarn) {\n return (element as any).ref;\n }\n\n // React 19 in DEV\n getter = Object.getOwnPropertyDescriptor(element, 'ref')?.get;\n mayWarn = getter && 'isReactWarning' in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n\n // Not DEV\n return element.props.ref || (element as any).ref;\n}\n\nexport { Presence };\nexport type { PresenceProps };\n","import * as React from 'react';\n\ntype Machine = { [k: string]: { [k: string]: S } };\ntype MachineState = keyof T;\ntype MachineEvent = keyof UnionToIntersection;\n\n// 🤯 https://fettblog.eu/typescript-union-to-intersection/\ntype UnionToIntersection = (T extends any ? (x: T) => any : never) extends (x: infer R) => any\n ? R\n : never;\n\nexport function useStateMachine(\n initialState: MachineState,\n machine: M & Machine>\n) {\n return React.useReducer((state: MachineState, event: MachineEvent): MachineState => {\n const nextState = (machine[state] as any)[event];\n return nextState ?? state;\n }, initialState);\n}\n","// packages/react/visually-hidden/src/VisuallyHidden.tsx\nimport * as React from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NAME = \"VisuallyHidden\";\nvar VisuallyHidden = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...props,\n ref: forwardedRef,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/master/scss/mixins/_screen-reader.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...props.style\n }\n }\n );\n }\n);\nVisuallyHidden.displayName = NAME;\nvar Root = VisuallyHidden;\nexport {\n Root,\n VisuallyHidden\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createCollection } from '@radix-ui/react-collection';\nimport { createContextScope } from '@radix-ui/react-context';\nimport * as DismissableLayer from '@radix-ui/react-dismissable-layer';\nimport { Portal } from '@radix-ui/react-portal';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive, dispatchDiscreteCustomEvent } from '@radix-ui/react-primitive';\nimport { useCallbackRef } from '@radix-ui/react-use-callback-ref';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\nimport { VisuallyHidden } from '@radix-ui/react-visually-hidden';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * ToastProvider\n * -----------------------------------------------------------------------------------------------*/\n\nconst PROVIDER_NAME = 'ToastProvider';\n\nconst [Collection, useCollection, createCollectionScope] = createCollection('Toast');\n\ntype SwipeDirection = 'up' | 'down' | 'left' | 'right';\ntype ToastProviderContextValue = {\n label: string;\n duration: number;\n swipeDirection: SwipeDirection;\n swipeThreshold: number;\n toastCount: number;\n viewport: ToastViewportElement | null;\n onViewportChange(viewport: ToastViewportElement): void;\n onToastAdd(): void;\n onToastRemove(): void;\n isFocusedToastEscapeKeyDownRef: React.MutableRefObject;\n isClosePausedRef: React.MutableRefObject;\n};\n\ntype ScopedProps

= P & { __scopeToast?: Scope };\nconst [createToastContext, createToastScope] = createContextScope('Toast', [createCollectionScope]);\nconst [ToastProviderProvider, useToastProviderContext] =\n createToastContext(PROVIDER_NAME);\n\ninterface ToastProviderProps {\n children?: React.ReactNode;\n /**\n * An author-localized label for each toast. Used to help screen reader users\n * associate the interruption with a toast.\n * @defaultValue 'Notification'\n */\n label?: string;\n /**\n * Time in milliseconds that each toast should remain visible for.\n * @defaultValue 5000\n */\n duration?: number;\n /**\n * Direction of pointer swipe that should close the toast.\n * @defaultValue 'right'\n */\n swipeDirection?: SwipeDirection;\n /**\n * Distance in pixels that the swipe must pass before a close is triggered.\n * @defaultValue 50\n */\n swipeThreshold?: number;\n}\n\nconst ToastProvider: React.FC = (props: ScopedProps) => {\n const {\n __scopeToast,\n label = 'Notification',\n duration = 5000,\n swipeDirection = 'right',\n swipeThreshold = 50,\n children,\n } = props;\n const [viewport, setViewport] = React.useState(null);\n const [toastCount, setToastCount] = React.useState(0);\n const isFocusedToastEscapeKeyDownRef = React.useRef(false);\n const isClosePausedRef = React.useRef(false);\n\n if (!label.trim()) {\n console.error(\n `Invalid prop \\`label\\` supplied to \\`${PROVIDER_NAME}\\`. Expected non-empty \\`string\\`.`\n );\n }\n\n return (\n \n setToastCount((prevCount) => prevCount + 1), [])}\n onToastRemove={React.useCallback(() => setToastCount((prevCount) => prevCount - 1), [])}\n isFocusedToastEscapeKeyDownRef={isFocusedToastEscapeKeyDownRef}\n isClosePausedRef={isClosePausedRef}\n >\n {children}\n \n \n );\n};\n\nToastProvider.displayName = PROVIDER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * ToastViewport\n * -----------------------------------------------------------------------------------------------*/\n\nconst VIEWPORT_NAME = 'ToastViewport';\nconst VIEWPORT_DEFAULT_HOTKEY = ['F8'];\nconst VIEWPORT_PAUSE = 'toast.viewportPause';\nconst VIEWPORT_RESUME = 'toast.viewportResume';\n\ntype ToastViewportElement = React.ElementRef;\ntype PrimitiveOrderedListProps = React.ComponentPropsWithoutRef;\ninterface ToastViewportProps extends PrimitiveOrderedListProps {\n /**\n * The keys to use as the keyboard shortcut that will move focus to the toast viewport.\n * @defaultValue ['F8']\n */\n hotkey?: string[];\n /**\n * An author-localized label for the toast viewport to provide context for screen reader users\n * when navigating page landmarks. The available `{hotkey}` placeholder will be replaced for you.\n * @defaultValue 'Notifications ({hotkey})'\n */\n label?: string;\n}\n\nconst ToastViewport = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const {\n __scopeToast,\n hotkey = VIEWPORT_DEFAULT_HOTKEY,\n label = 'Notifications ({hotkey})',\n ...viewportProps\n } = props;\n const context = useToastProviderContext(VIEWPORT_NAME, __scopeToast);\n const getItems = useCollection(__scopeToast);\n const wrapperRef = React.useRef(null);\n const headFocusProxyRef = React.useRef(null);\n const tailFocusProxyRef = React.useRef(null);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);\n const hotkeyLabel = hotkey.join('+').replace(/Key/g, '').replace(/Digit/g, '');\n const hasToasts = context.toastCount > 0;\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n // we use `event.code` as it is consistent regardless of meta keys that were pressed.\n // for example, `event.key` for `Control+Alt+t` is `†` and `t !== †`\n const isHotkeyPressed = hotkey.every((key) => (event as any)[key] || event.code === key);\n if (isHotkeyPressed) ref.current?.focus();\n };\n document.addEventListener('keydown', handleKeyDown);\n return () => document.removeEventListener('keydown', handleKeyDown);\n }, [hotkey]);\n\n React.useEffect(() => {\n const wrapper = wrapperRef.current;\n const viewport = ref.current;\n if (hasToasts && wrapper && viewport) {\n const handlePause = () => {\n if (!context.isClosePausedRef.current) {\n const pauseEvent = new CustomEvent(VIEWPORT_PAUSE);\n viewport.dispatchEvent(pauseEvent);\n context.isClosePausedRef.current = true;\n }\n };\n\n const handleResume = () => {\n if (context.isClosePausedRef.current) {\n const resumeEvent = new CustomEvent(VIEWPORT_RESUME);\n viewport.dispatchEvent(resumeEvent);\n context.isClosePausedRef.current = false;\n }\n };\n\n const handleFocusOutResume = (event: FocusEvent) => {\n const isFocusMovingOutside = !wrapper.contains(event.relatedTarget as HTMLElement);\n if (isFocusMovingOutside) handleResume();\n };\n\n const handlePointerLeaveResume = () => {\n const isFocusInside = wrapper.contains(document.activeElement);\n if (!isFocusInside) handleResume();\n };\n\n // Toasts are not in the viewport React tree so we need to bind DOM events\n wrapper.addEventListener('focusin', handlePause);\n wrapper.addEventListener('focusout', handleFocusOutResume);\n wrapper.addEventListener('pointermove', handlePause);\n wrapper.addEventListener('pointerleave', handlePointerLeaveResume);\n window.addEventListener('blur', handlePause);\n window.addEventListener('focus', handleResume);\n return () => {\n wrapper.removeEventListener('focusin', handlePause);\n wrapper.removeEventListener('focusout', handleFocusOutResume);\n wrapper.removeEventListener('pointermove', handlePause);\n wrapper.removeEventListener('pointerleave', handlePointerLeaveResume);\n window.removeEventListener('blur', handlePause);\n window.removeEventListener('focus', handleResume);\n };\n }\n }, [hasToasts, context.isClosePausedRef]);\n\n const getSortedTabbableCandidates = React.useCallback(\n ({ tabbingDirection }: { tabbingDirection: 'forwards' | 'backwards' }) => {\n const toastItems = getItems();\n const tabbableCandidates = toastItems.map((toastItem) => {\n const toastNode = toastItem.ref.current!;\n const toastTabbableCandidates = [toastNode, ...getTabbableCandidates(toastNode)];\n return tabbingDirection === 'forwards'\n ? toastTabbableCandidates\n : toastTabbableCandidates.reverse();\n });\n return (\n tabbingDirection === 'forwards' ? tabbableCandidates.reverse() : tabbableCandidates\n ).flat();\n },\n [getItems]\n );\n\n React.useEffect(() => {\n const viewport = ref.current;\n // We programmatically manage tabbing as we are unable to influence\n // the source order with portals, this allows us to reverse the\n // tab order so that it runs from most recent toast to least\n if (viewport) {\n const handleKeyDown = (event: KeyboardEvent) => {\n const isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n const isTabKey = event.key === 'Tab' && !isMetaKey;\n\n if (isTabKey) {\n const focusedElement = document.activeElement;\n const isTabbingBackwards = event.shiftKey;\n const targetIsViewport = event.target === viewport;\n\n // If we're back tabbing after jumping to the viewport then we simply\n // proxy focus out to the preceding document\n if (targetIsViewport && isTabbingBackwards) {\n headFocusProxyRef.current?.focus();\n return;\n }\n\n const tabbingDirection = isTabbingBackwards ? 'backwards' : 'forwards';\n const sortedCandidates = getSortedTabbableCandidates({ tabbingDirection });\n const index = sortedCandidates.findIndex((candidate) => candidate === focusedElement);\n if (focusFirst(sortedCandidates.slice(index + 1))) {\n event.preventDefault();\n } else {\n // If we can't focus that means we're at the edges so we\n // proxy to the corresponding exit point and let the browser handle\n // tab/shift+tab keypress and implicitly pass focus to the next valid element in the document\n isTabbingBackwards\n ? headFocusProxyRef.current?.focus()\n : tailFocusProxyRef.current?.focus();\n }\n }\n };\n\n // Toasts are not in the viewport React tree so we need to bind DOM events\n viewport.addEventListener('keydown', handleKeyDown);\n return () => viewport.removeEventListener('keydown', handleKeyDown);\n }\n }, [getItems, getSortedTabbableCandidates]);\n\n return (\n \n {hasToasts && (\n {\n const tabbableCandidates = getSortedTabbableCandidates({\n tabbingDirection: 'forwards',\n });\n focusFirst(tabbableCandidates);\n }}\n />\n )}\n {/**\n * tabindex on the the list so that it can be focused when items are removed. we focus\n * the list instead of the viewport so it announces number of items remaining.\n */}\n \n \n \n {hasToasts && (\n {\n const tabbableCandidates = getSortedTabbableCandidates({\n tabbingDirection: 'backwards',\n });\n focusFirst(tabbableCandidates);\n }}\n />\n )}\n \n );\n }\n);\n\nToastViewport.displayName = VIEWPORT_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst FOCUS_PROXY_NAME = 'ToastFocusProxy';\n\ntype FocusProxyElement = React.ElementRef;\ntype VisuallyHiddenProps = React.ComponentPropsWithoutRef;\ninterface FocusProxyProps extends VisuallyHiddenProps {\n onFocusFromOutsideViewport(): void;\n}\n\nconst FocusProxy = React.forwardRef>(\n (props, forwardedRef) => {\n const { __scopeToast, onFocusFromOutsideViewport, ...proxyProps } = props;\n const context = useToastProviderContext(FOCUS_PROXY_NAME, __scopeToast);\n\n return (\n {\n const prevFocusedElement = event.relatedTarget as HTMLElement | null;\n const isFocusFromOutsideViewport = !context.viewport?.contains(prevFocusedElement);\n if (isFocusFromOutsideViewport) onFocusFromOutsideViewport();\n }}\n />\n );\n }\n);\n\nFocusProxy.displayName = FOCUS_PROXY_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * Toast\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOAST_NAME = 'Toast';\nconst TOAST_SWIPE_START = 'toast.swipeStart';\nconst TOAST_SWIPE_MOVE = 'toast.swipeMove';\nconst TOAST_SWIPE_CANCEL = 'toast.swipeCancel';\nconst TOAST_SWIPE_END = 'toast.swipeEnd';\n\ntype ToastElement = ToastImplElement;\ninterface ToastProps extends Omit {\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst Toast = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const { forceMount, open: openProp, defaultOpen, onOpenChange, ...toastProps } = props;\n const [open = true, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n return (\n \n setOpen(false)}\n onPause={useCallbackRef(props.onPause)}\n onResume={useCallbackRef(props.onResume)}\n onSwipeStart={composeEventHandlers(props.onSwipeStart, (event) => {\n event.currentTarget.setAttribute('data-swipe', 'start');\n })}\n onSwipeMove={composeEventHandlers(props.onSwipeMove, (event) => {\n const { x, y } = event.detail.delta;\n event.currentTarget.setAttribute('data-swipe', 'move');\n event.currentTarget.style.setProperty('--radix-toast-swipe-move-x', `${x}px`);\n event.currentTarget.style.setProperty('--radix-toast-swipe-move-y', `${y}px`);\n })}\n onSwipeCancel={composeEventHandlers(props.onSwipeCancel, (event) => {\n event.currentTarget.setAttribute('data-swipe', 'cancel');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-move-x');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-move-y');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-end-x');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-end-y');\n })}\n onSwipeEnd={composeEventHandlers(props.onSwipeEnd, (event) => {\n const { x, y } = event.detail.delta;\n event.currentTarget.setAttribute('data-swipe', 'end');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-move-x');\n event.currentTarget.style.removeProperty('--radix-toast-swipe-move-y');\n event.currentTarget.style.setProperty('--radix-toast-swipe-end-x', `${x}px`);\n event.currentTarget.style.setProperty('--radix-toast-swipe-end-y', `${y}px`);\n setOpen(false);\n })}\n />\n \n );\n }\n);\n\nToast.displayName = TOAST_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype SwipeEvent = { currentTarget: EventTarget & ToastElement } & Omit<\n CustomEvent<{ originalEvent: React.PointerEvent; delta: { x: number; y: number } }>,\n 'currentTarget'\n>;\n\nconst [ToastInteractiveProvider, useToastInteractiveContext] = createToastContext(TOAST_NAME, {\n onClose() {},\n});\n\ntype ToastImplElement = React.ElementRef;\ntype DismissableLayerProps = React.ComponentPropsWithoutRef;\ntype ToastImplPrivateProps = { open: boolean; onClose(): void };\ntype PrimitiveListItemProps = React.ComponentPropsWithoutRef;\ninterface ToastImplProps extends ToastImplPrivateProps, PrimitiveListItemProps {\n type?: 'foreground' | 'background';\n /**\n * Time in milliseconds that toast should remain visible for. Overrides value\n * given to `ToastProvider`.\n */\n duration?: number;\n onEscapeKeyDown?: DismissableLayerProps['onEscapeKeyDown'];\n onPause?(): void;\n onResume?(): void;\n onSwipeStart?(event: SwipeEvent): void;\n onSwipeMove?(event: SwipeEvent): void;\n onSwipeCancel?(event: SwipeEvent): void;\n onSwipeEnd?(event: SwipeEvent): void;\n}\n\nconst ToastImpl = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const {\n __scopeToast,\n type = 'foreground',\n duration: durationProp,\n open,\n onClose,\n onEscapeKeyDown,\n onPause,\n onResume,\n onSwipeStart,\n onSwipeMove,\n onSwipeCancel,\n onSwipeEnd,\n ...toastProps\n } = props;\n const context = useToastProviderContext(TOAST_NAME, __scopeToast);\n const [node, setNode] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setNode(node));\n const pointerStartRef = React.useRef<{ x: number; y: number } | null>(null);\n const swipeDeltaRef = React.useRef<{ x: number; y: number } | null>(null);\n const duration = durationProp || context.duration;\n const closeTimerStartTimeRef = React.useRef(0);\n const closeTimerRemainingTimeRef = React.useRef(duration);\n const closeTimerRef = React.useRef(0);\n const { onToastAdd, onToastRemove } = context;\n const handleClose = useCallbackRef(() => {\n // focus viewport if focus is within toast to read the remaining toast\n // count to SR users and ensure focus isn't lost\n const isFocusInToast = node?.contains(document.activeElement);\n if (isFocusInToast) context.viewport?.focus();\n onClose();\n });\n\n const startTimer = React.useCallback(\n (duration: number) => {\n if (!duration || duration === Infinity) return;\n window.clearTimeout(closeTimerRef.current);\n closeTimerStartTimeRef.current = new Date().getTime();\n closeTimerRef.current = window.setTimeout(handleClose, duration);\n },\n [handleClose]\n );\n\n React.useEffect(() => {\n const viewport = context.viewport;\n if (viewport) {\n const handleResume = () => {\n startTimer(closeTimerRemainingTimeRef.current);\n onResume?.();\n };\n const handlePause = () => {\n const elapsedTime = new Date().getTime() - closeTimerStartTimeRef.current;\n closeTimerRemainingTimeRef.current = closeTimerRemainingTimeRef.current - elapsedTime;\n window.clearTimeout(closeTimerRef.current);\n onPause?.();\n };\n viewport.addEventListener(VIEWPORT_PAUSE, handlePause);\n viewport.addEventListener(VIEWPORT_RESUME, handleResume);\n return () => {\n viewport.removeEventListener(VIEWPORT_PAUSE, handlePause);\n viewport.removeEventListener(VIEWPORT_RESUME, handleResume);\n };\n }\n }, [context.viewport, duration, onPause, onResume, startTimer]);\n\n // start timer when toast opens or duration changes.\n // we include `open` in deps because closed !== unmounted when animating\n // so it could reopen before being completely unmounted\n React.useEffect(() => {\n if (open && !context.isClosePausedRef.current) startTimer(duration);\n }, [open, duration, context.isClosePausedRef, startTimer]);\n\n React.useEffect(() => {\n onToastAdd();\n return () => onToastRemove();\n }, [onToastAdd, onToastRemove]);\n\n const announceTextContent = React.useMemo(() => {\n return node ? getAnnounceTextContent(node) : null;\n }, [node]);\n\n if (!context.viewport) return null;\n\n return (\n <>\n {announceTextContent && (\n \n {announceTextContent}\n \n )}\n\n \n {ReactDOM.createPortal(\n \n {\n if (!context.isFocusedToastEscapeKeyDownRef.current) handleClose();\n context.isFocusedToastEscapeKeyDownRef.current = false;\n })}\n >\n {\n if (event.key !== 'Escape') return;\n onEscapeKeyDown?.(event.nativeEvent);\n if (!event.nativeEvent.defaultPrevented) {\n context.isFocusedToastEscapeKeyDownRef.current = true;\n handleClose();\n }\n })}\n onPointerDown={composeEventHandlers(props.onPointerDown, (event) => {\n if (event.button !== 0) return;\n pointerStartRef.current = { x: event.clientX, y: event.clientY };\n })}\n onPointerMove={composeEventHandlers(props.onPointerMove, (event) => {\n if (!pointerStartRef.current) return;\n const x = event.clientX - pointerStartRef.current.x;\n const y = event.clientY - pointerStartRef.current.y;\n const hasSwipeMoveStarted = Boolean(swipeDeltaRef.current);\n const isHorizontalSwipe = ['left', 'right'].includes(context.swipeDirection);\n const clamp = ['left', 'up'].includes(context.swipeDirection)\n ? Math.min\n : Math.max;\n const clampedX = isHorizontalSwipe ? clamp(0, x) : 0;\n const clampedY = !isHorizontalSwipe ? clamp(0, y) : 0;\n const moveStartBuffer = event.pointerType === 'touch' ? 10 : 2;\n const delta = { x: clampedX, y: clampedY };\n const eventDetail = { originalEvent: event, delta };\n if (hasSwipeMoveStarted) {\n swipeDeltaRef.current = delta;\n handleAndDispatchCustomEvent(TOAST_SWIPE_MOVE, onSwipeMove, eventDetail, {\n discrete: false,\n });\n } else if (isDeltaInDirection(delta, context.swipeDirection, moveStartBuffer)) {\n swipeDeltaRef.current = delta;\n handleAndDispatchCustomEvent(TOAST_SWIPE_START, onSwipeStart, eventDetail, {\n discrete: false,\n });\n (event.target as HTMLElement).setPointerCapture(event.pointerId);\n } else if (Math.abs(x) > moveStartBuffer || Math.abs(y) > moveStartBuffer) {\n // User is swiping in wrong direction so we disable swipe gesture\n // for the current pointer down interaction\n pointerStartRef.current = null;\n }\n })}\n onPointerUp={composeEventHandlers(props.onPointerUp, (event) => {\n const delta = swipeDeltaRef.current;\n const target = event.target as HTMLElement;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n }\n swipeDeltaRef.current = null;\n pointerStartRef.current = null;\n if (delta) {\n const toast = event.currentTarget;\n const eventDetail = { originalEvent: event, delta };\n if (\n isDeltaInDirection(delta, context.swipeDirection, context.swipeThreshold)\n ) {\n handleAndDispatchCustomEvent(TOAST_SWIPE_END, onSwipeEnd, eventDetail, {\n discrete: true,\n });\n } else {\n handleAndDispatchCustomEvent(\n TOAST_SWIPE_CANCEL,\n onSwipeCancel,\n eventDetail,\n {\n discrete: true,\n }\n );\n }\n // Prevent click event from triggering on items within the toast when\n // pointer up is part of a swipe gesture\n toast.addEventListener('click', (event) => event.preventDefault(), {\n once: true,\n });\n }\n })}\n />\n \n ,\n context.viewport\n )}\n \n \n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\ninterface ToastAnnounceProps\n extends Omit, 'children'>,\n ScopedProps<{ children: string[] }> {}\n\nconst ToastAnnounce: React.FC = (props: ScopedProps) => {\n const { __scopeToast, children, ...announceProps } = props;\n const context = useToastProviderContext(TOAST_NAME, __scopeToast);\n const [renderAnnounceText, setRenderAnnounceText] = React.useState(false);\n const [isAnnounced, setIsAnnounced] = React.useState(false);\n\n // render text content in the next frame to ensure toast is announced in NVDA\n useNextFrame(() => setRenderAnnounceText(true));\n\n // cleanup after announcing\n React.useEffect(() => {\n const timer = window.setTimeout(() => setIsAnnounced(true), 1000);\n return () => window.clearTimeout(timer);\n }, []);\n\n return isAnnounced ? null : (\n \n \n {renderAnnounceText && (\n <>\n {context.label} {children}\n \n )}\n \n \n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ToastTitle\n * -----------------------------------------------------------------------------------------------*/\n\nconst TITLE_NAME = 'ToastTitle';\n\ntype ToastTitleElement = React.ElementRef;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef;\ninterface ToastTitleProps extends PrimitiveDivProps {}\n\nconst ToastTitle = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const { __scopeToast, ...titleProps } = props;\n return ;\n }\n);\n\nToastTitle.displayName = TITLE_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * ToastDescription\n * -----------------------------------------------------------------------------------------------*/\n\nconst DESCRIPTION_NAME = 'ToastDescription';\n\ntype ToastDescriptionElement = React.ElementRef;\ninterface ToastDescriptionProps extends PrimitiveDivProps {}\n\nconst ToastDescription = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const { __scopeToast, ...descriptionProps } = props;\n return ;\n }\n);\n\nToastDescription.displayName = DESCRIPTION_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * ToastAction\n * -----------------------------------------------------------------------------------------------*/\n\nconst ACTION_NAME = 'ToastAction';\n\ntype ToastActionElement = ToastCloseElement;\ninterface ToastActionProps extends ToastCloseProps {\n /**\n * A short description for an alternate way to carry out the action. For screen reader users\n * who will not be able to navigate to the button easily/quickly.\n * @example Upgrade\n * @example Undo\n */\n altText: string;\n}\n\nconst ToastAction = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const { altText, ...actionProps } = props;\n\n if (!altText.trim()) {\n console.error(\n `Invalid prop \\`altText\\` supplied to \\`${ACTION_NAME}\\`. Expected non-empty \\`string\\`.`\n );\n return null;\n }\n\n return (\n \n \n \n );\n }\n);\n\nToastAction.displayName = ACTION_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * ToastClose\n * -----------------------------------------------------------------------------------------------*/\n\nconst CLOSE_NAME = 'ToastClose';\n\ntype ToastCloseElement = React.ElementRef;\ntype PrimitiveButtonProps = React.ComponentPropsWithoutRef;\ninterface ToastCloseProps extends PrimitiveButtonProps {}\n\nconst ToastClose = React.forwardRef(\n (props: ScopedProps, forwardedRef) => {\n const { __scopeToast, ...closeProps } = props;\n const interactiveContext = useToastInteractiveContext(CLOSE_NAME, __scopeToast);\n\n return (\n \n \n \n );\n }\n);\n\nToastClose.displayName = CLOSE_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype ToastAnnounceExcludeElement = React.ElementRef;\ninterface ToastAnnounceExcludeProps extends PrimitiveDivProps {\n altText?: string;\n}\n\nconst ToastAnnounceExclude = React.forwardRef<\n ToastAnnounceExcludeElement,\n ToastAnnounceExcludeProps\n>((props: ScopedProps, forwardedRef) => {\n const { __scopeToast, altText, ...announceExcludeProps } = props;\n\n return (\n \n );\n});\n\nfunction getAnnounceTextContent(container: HTMLElement) {\n const textContent: string[] = [];\n const childNodes = Array.from(container.childNodes);\n\n childNodes.forEach((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent) textContent.push(node.textContent);\n if (isHTMLElement(node)) {\n const isHidden = node.ariaHidden || node.hidden || node.style.display === 'none';\n const isExcluded = node.dataset.radixToastAnnounceExclude === '';\n\n if (!isHidden) {\n if (isExcluded) {\n const altText = node.dataset.radixToastAnnounceAlt;\n if (altText) textContent.push(altText);\n } else {\n textContent.push(...getAnnounceTextContent(node));\n }\n }\n }\n });\n\n // We return a collection of text rather than a single concatenated string.\n // This allows SR VO to naturally pause break between nodes while announcing.\n return textContent;\n}\n\n/* ---------------------------------------------------------------------------------------------- */\n\nfunction handleAndDispatchCustomEvent<\n E extends CustomEvent,\n ReactEvent extends React.SyntheticEvent\n>(\n name: string,\n handler: ((event: E) => void) | undefined,\n detail: { originalEvent: ReactEvent } & (E extends CustomEvent ? D : never),\n { discrete }: { discrete: boolean }\n) {\n const currentTarget = detail.originalEvent.currentTarget as HTMLElement;\n const event = new CustomEvent(name, { bubbles: true, cancelable: true, detail });\n if (handler) currentTarget.addEventListener(name, handler as EventListener, { once: true });\n\n if (discrete) {\n dispatchDiscreteCustomEvent(currentTarget, event);\n } else {\n currentTarget.dispatchEvent(event);\n }\n}\n\nconst isDeltaInDirection = (\n delta: { x: number; y: number },\n direction: SwipeDirection,\n threshold = 0\n) => {\n const deltaX = Math.abs(delta.x);\n const deltaY = Math.abs(delta.y);\n const isDeltaX = deltaX > deltaY;\n if (direction === 'left' || direction === 'right') {\n return isDeltaX && deltaX > threshold;\n } else {\n return !isDeltaX && deltaY > threshold;\n }\n};\n\nfunction useNextFrame(callback = () => {}) {\n const fn = useCallbackRef(callback);\n useLayoutEffect(() => {\n let raf1 = 0;\n let raf2 = 0;\n raf1 = window.requestAnimationFrame(() => (raf2 = window.requestAnimationFrame(fn)));\n return () => {\n window.cancelAnimationFrame(raf1);\n window.cancelAnimationFrame(raf2);\n };\n }, [fn]);\n}\n\nfunction isHTMLElement(node: any): node is HTMLElement {\n return node.nodeType === node.ELEMENT_NODE;\n}\n\n/**\n * Returns a list of potential tabbable candidates.\n *\n * NOTE: This is only a close approximation. For example it doesn't take into account cases like when\n * elements are not visible. This cannot be worked out easily by just reading a property, but rather\n * necessitate runtime knowledge (computed styles, etc). We deal with these cases separately.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n * Credit: https://github.com/discord/focus-layers/blob/master/src/util/wrapFocus.tsx#L1\n */\nfunction getTabbableCandidates(container: HTMLElement) {\n const nodes: HTMLElement[] = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node: any) => {\n const isHiddenInput = node.tagName === 'INPUT' && node.type === 'hidden';\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;\n // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n // runtime's understanding of tabbability, so this automatically accounts\n // for any kind of element that could be tabbed to.\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n },\n });\n while (walker.nextNode()) nodes.push(walker.currentNode as HTMLElement);\n // we do not take into account the order of nodes with positive `tabIndex` as it\n // hinders accessibility to have tab order different from visual order.\n return nodes;\n}\n\nfunction focusFirst(candidates: HTMLElement[]) {\n const previouslyFocusedElement = document.activeElement;\n return candidates.some((candidate) => {\n // if focus is already where we want to go, we don't want to keep going through the candidates\n if (candidate === previouslyFocusedElement) return true;\n candidate.focus();\n return document.activeElement !== previouslyFocusedElement;\n });\n}\n\nconst Provider = ToastProvider;\nconst Viewport = ToastViewport;\nconst Root = Toast;\nconst Title = ToastTitle;\nconst Description = ToastDescription;\nconst Action = ToastAction;\nconst Close = ToastClose;\n\nexport {\n createToastScope,\n //\n ToastProvider,\n ToastViewport,\n Toast,\n ToastTitle,\n ToastDescription,\n ToastAction,\n ToastClose,\n //\n Provider,\n Viewport,\n Root,\n Title,\n Description,\n Action,\n Close,\n};\nexport type {\n ToastProviderProps,\n ToastViewportProps,\n ToastProps,\n ToastTitleProps,\n ToastDescriptionProps,\n ToastActionProps,\n ToastCloseProps,\n};\n","// packages/react/use-callback-ref/src/useCallbackRef.tsx\nimport * as React from \"react\";\nfunction useCallbackRef(callback) {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);\n}\nexport {\n useCallbackRef\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-controllable-state/src/useControllableState.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useControllableState({\n prop,\n defaultProp,\n onChange = () => {\n }\n}) {\n const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n const isControlled = prop !== void 0;\n const value = isControlled ? prop : uncontrolledProp;\n const handleChange = useCallbackRef(onChange);\n const setValue = React.useCallback(\n (nextValue) => {\n if (isControlled) {\n const setter = nextValue;\n const value2 = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value2 !== prop) handleChange(value2);\n } else {\n setUncontrolledProp(nextValue);\n }\n },\n [isControlled, prop, setUncontrolledProp, handleChange]\n );\n return [value, setValue];\n}\nfunction useUncontrolledState({\n defaultProp,\n onChange\n}) {\n const uncontrolledState = React.useState(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = React.useRef(value);\n const handleChange = useCallbackRef(onChange);\n React.useEffect(() => {\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [value, prevValueRef, handleChange]);\n return uncontrolledState;\n}\nexport {\n useControllableState\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-escape-keydown/src/useEscapeKeydown.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {\n const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);\n React.useEffect(() => {\n const handleKeyDown = (event) => {\n if (event.key === \"Escape\") {\n onEscapeKeyDown(event);\n }\n };\n ownerDocument.addEventListener(\"keydown\", handleKeyDown, { capture: true });\n return () => ownerDocument.removeEventListener(\"keydown\", handleKeyDown, { capture: true });\n }, [onEscapeKeyDown, ownerDocument]);\n}\nexport {\n useEscapeKeydown\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-layout-effect/src/useLayoutEffect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = Boolean(globalThis?.document) ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t