From 16e2d20382ab6c537e8e789394d3732608ea2fc1 Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Mon, 15 Jul 2024 07:09:34 +0800 Subject: [PATCH 01/18] WIP rewrite --- .../assets/js/snowboard/extras/Trigger.js | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 modules/system/assets/js/snowboard/extras/Trigger.js diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js new file mode 100644 index 0000000000..ecf90c26c2 --- /dev/null +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -0,0 +1,174 @@ +import PluginBase from '../abstracts/PluginBase'; + +/** + * Trigger handler for HTML elements. + * + * This is a re-imagining of the Input.Trigger functionality in the original Winter CMS framework, + * initialised through the `data-trigger` attributes. + * + * In addition to remaining backwards-compatible with the original Input.Trigger functionality, this + * handler adds additional conditions and configuration for more flexible trigger usage. + * + * @see https://wintercms.com/docs/v1.2/ui/script/input-trigger + * + * @copyright 2024 Winter. + * @author Ben Thomson + */ +export default class Trigger extends PluginBase { + /** + * Constructor. + * + * @param {HTMLElement} element + */ + construct(element) { + /** + * The element this instance is attached to. + */ + this.element = element; + /** + * The triggers for this element. + */ + this.triggers = new Map(); + + this.parseTriggers(); + + // this.config = this.snowboard.dataConfig(this, element); + + // this.trigger = this.config.get('trigger'); + // if (!this.trigger) { + // this.snowboard.error('Trigger selector is not specified.', element); + // return; + // } + + // this.condition = this.config.get('triggerWhen') + // ?? this.config.get('triggerCondition'); + + // if (!this.condition || !this.isValidCondition(this.condition)) { + // this.snowboard.error('Trigger condition is not specified or not valid.', element); + // return; + // } + + // this.action = this.config.get('triggerAction'); + // if (!this.action || !this.isValidAction(this.condition)) { + // this.snowboard.error('Trigger action is not specified or not valid.', element); + // return; + // } + + // console.log(this.parseCommand(this.condition)); + // console.log(this.parseCommand(this.action)); + } + + parseTriggers() { + const { dataset } = this.element; + const triggers = new Map(); + + Object.keys(dataset).forEach((key) => { + if (!key.startsWith('trigger')) { + return; + } + + let trigger = key.replace('trigger', '').toLowerCase(); + + + + if (trigger.endsWith('Parent')) { + trigger = trigger.replace('Parent', ''); + if (!triggers.has(trigger)) { + triggers.set(trigger, new Map()); + triggers.get(trigger).set('parent', dataset[key]); + } + return; + } + if (trigger.endsWith('When')) { + trigger = trigger.replace('When', ''); + if (!triggers.has(trigger)) { + triggers.set(trigger, new Map()); + triggers.get(trigger).set('parent', dataset[key]); + } + } + }); + } + + /** + * Determines if the provided trigger condition is valid. + * + * @param {string} condition + * @returns + */ + isValidCondition(condition) { + return [ + 'checked', + 'unchecked', + 'empty', + 'value', + 'oneOf', + 'allOf', + 'focus', + 'blur', + ].includes(this.parseCommand(condition).name.toLowerCase()); + } + + parseCommand(command) { + // Support old-format value command (value[foo,bar]) + if (command.startsWith('value')) { + const match = command.match(/[^[\]]+(?=])/g); + const values = []; + + // Split values with commas + match.forEach((value) => { + if (!value.includes(',')) { + values.push(value.replace(/^['"]|['"]$/g, '').trim()); + return; + } + + const splitValues = value.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/,/g, '|||')) + .split(',') + .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').trim()); + + values.push(...splitValues); + }); + + return { + name: 'value', + parameters: values, + }; + } + + if (!command.includes(':')) { + return { + name: command, + parameters: [], + }; + } + + const [name, parameters] = command.split(':', 2); + + if (!parameters.includes(',')) { + return { + name, + parameters: [parameters], + }; + } + + const splitValues = parameters.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/,/g, '|||')) + .split(',') + .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').trim()); + + return { + name, + parameters: splitValues, + }; + } + + isValidAction(action) { + return [ + 'show', + 'hide', + 'enable', + 'disable', + 'value', + 'empty', + 'attr', + ].includes(this.parseCommand(action).name.toLowerCase()); + } +} From 399bc5b1cb708516ebd46bff8afad42512850074 Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Mon, 15 Jul 2024 12:55:05 +0800 Subject: [PATCH 02/18] Add initial conditions and actions --- .../assets/js/snowboard/extras/Trigger.js | 435 +++++++++++++++--- 1 file changed, 377 insertions(+), 58 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index ecf90c26c2..a4e4ec4795 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -1,5 +1,20 @@ import PluginBase from '../abstracts/PluginBase'; +/** + * @typedef {Object} TriggerEntity + * @property {string} trigger The selector for the trigger target element(s). + * @property {string} condition The condition that must be met for the trigger to fire. + * @property {string} action The action to perform when the trigger fires. + * @property {string} parent The parent element with which to limit the trigger scope. + * @property {HTMLElement[]} elements The target elements that this trigger applies to. + */ +/** + * @typedef {Object} TriggerElement + * @property {HTMLElement} element The target element. + * @property {string} eventName The trigger event name. + * @property {Function} event The trigger event function. + */ + /** * Trigger handler for HTML elements. * @@ -25,89 +40,142 @@ export default class Trigger extends PluginBase { * The element this instance is attached to. */ this.element = element; + /** - * The triggers for this element. + * @var {Map>} The triggers for this element. */ this.triggers = new Map(); - this.parseTriggers(); - - // this.config = this.snowboard.dataConfig(this, element); - - // this.trigger = this.config.get('trigger'); - // if (!this.trigger) { - // this.snowboard.error('Trigger selector is not specified.', element); - // return; - // } + /** + * @var {Set} The events that have been bound by triggers. + */ + this.events = new Set(); - // this.condition = this.config.get('triggerWhen') - // ?? this.config.get('triggerCondition'); + this.parseTriggers(); - // if (!this.condition || !this.isValidCondition(this.condition)) { - // this.snowboard.error('Trigger condition is not specified or not valid.', element); - // return; - // } + if (this.triggers.size > 0) { + this.resetEvents(); + this.createTriggerEvents(); + this.runEvents(); - // this.action = this.config.get('triggerAction'); - // if (!this.action || !this.isValidAction(this.condition)) { - // this.snowboard.error('Trigger action is not specified or not valid.', element); - // return; - // } + this.snowboard.globalEvent('triggers.ready', this.element); + } + } - // console.log(this.parseCommand(this.condition)); - // console.log(this.parseCommand(this.action)); + /** + * Destructor. + */ + destruct() { + this.resetEvents(); + super.destruct(); } + /** + * Parses the element's data attributes and determines applicable triggers. + * + * Trigger data attributes must be in the format `data-trigger-[name]-[parameter]` for multiple + * triggers, or `data-trigger-[parameter]` for single triggers. + * + * Supported parameters are: + * - `condition` or `where`: The condition that must be met for the trigger to fire. + * - `action`: The action to perform when the trigger fires. + * - `parent` or `closest-parent`: The parent element with which to limit the trigger scope. + * + * Internally, the trigger map uses the `trigger` parameter to store the trigger selector. + */ parseTriggers() { const { dataset } = this.element; - const triggers = new Map(); + this.triggers.clear(); Object.keys(dataset).forEach((key) => { - if (!key.startsWith('trigger')) { - return; + if (/-[A-Z]/.test(key)) { + throw new Error(`Unable to convert camelCase to dash-style for data attribute: ${key}`); } - let trigger = key.replace('trigger', '').toLowerCase(); + const dashStyle = key.replace(/([A-Z])/g, (match) => `-${match.toLowerCase()}`); + + if (dashStyle !== 'trigger' && !dashStyle.startsWith('trigger-')) { + return; + } + const triggerParts = /([a-z0-9\-.:_]+?)(?:(?:-)(closest-parent|condition|when|action|parent))?$/i.exec( + dashStyle.replace('trigger-', '').toLowerCase(), + ); + let triggerName = null; + let triggerType = null; - if (trigger.endsWith('Parent')) { - trigger = trigger.replace('Parent', ''); - if (!triggers.has(trigger)) { - triggers.set(trigger, new Map()); - triggers.get(trigger).set('parent', dataset[key]); + if ( + ['trigger', 'condition', 'action', 'parent', 'when', 'closest'].indexOf(triggerParts[1]) !== -1 + && (triggerParts[1] !== 'closest' || (triggerParts[1] === 'closest' && triggerParts[2] === 'parent')) + ) { + // Support original trigger format + triggerName = '__original'; + triggerType = (triggerParts[1] === 'closest') ? 'parent' : triggerParts[1]; + } else if ( + triggerParts[2] === undefined + || ['closest-parent', 'condition', 'when', 'action', 'parent'].indexOf(triggerParts[2]) !== -1 + ) { + // Parse multi-trigger format + [, triggerName] = triggerParts; + switch (triggerParts[2]) { + case 'closest-parent': + case 'parent': + triggerType = 'parent'; + break; + case 'condition': + case 'when': + triggerType = 'condition'; + break; + case 'action': + triggerType = 'action'; + break; + default: + triggerType = 'trigger'; + break; } - return; } - if (trigger.endsWith('When')) { - trigger = trigger.replace('When', ''); - if (!triggers.has(trigger)) { - triggers.set(trigger, new Map()); - triggers.get(trigger).set('parent', dataset[key]); - } + + if (!this.triggers.has(triggerName)) { + this.triggers.set(triggerName, new Map()); + } + this.triggers.get(triggerName).set(triggerType, dataset[key]); + + // Remove trigger data attribute after parsing + delete dataset[key]; + }); + + // Validate triggers, and remove those that do not have at least a trigger selector, a + // condition and an action, or are using invalid conditions or actions + this.triggers.forEach((trigger, name) => { + const elements = this.getSelectableElements(trigger); + + if ( + !trigger.has('trigger') + || !trigger.has('condition') + || !trigger.has('action') + || elements.length === 0 + || !this.isValidCondition(trigger) + || !this.isValidAction(trigger) + ) { + this.triggers.delete(name); + } else { + trigger.set('elements', elements); } }); } /** - * Determines if the provided trigger condition is valid. + * Parses a command given as either a condition or an action. + * + * Commands are formatted as: name:parameter1,parameter2,parameter3, although we also support + * the old format of value[parameter1,parameter2,parameter3] for the `value` command only. * - * @param {string} condition - * @returns + * If a parameter requires a comma within, the parameter should be wrapped in quotes. + * + * @param {string} command + * @returns {name: string, parameters: string[]} */ - isValidCondition(condition) { - return [ - 'checked', - 'unchecked', - 'empty', - 'value', - 'oneOf', - 'allOf', - 'focus', - 'blur', - ].includes(this.parseCommand(condition).name.toLowerCase()); - } - parseCommand(command) { // Support old-format value command (value[foo,bar]) if (command.startsWith('value')) { @@ -160,15 +228,266 @@ export default class Trigger extends PluginBase { }; } - isValidAction(action) { + /** + * Checks if any elements are accessible by the provided trigger. + * + * @param {TriggerEntity} trigger + * @returns {HTMLElement[]} + */ + getSelectableElements(trigger) { + if (trigger.has('parent')) { + return Array.from(this.element.closest(trigger.get('parent')).querySelectorAll(trigger.get('trigger'))); + } + + return Array.from(document.querySelectorAll(trigger.get('trigger'))); + } + + /** + * Determines if the provided trigger condition is valid. + * + * @param {TriggerEntity} trigger + * @returns {boolean} + */ + isValidCondition(trigger) { + return [ + 'checked', + 'unchecked', + 'empty', + 'value', + 'oneof', + 'allof', + 'focus', + 'blur', + ].includes(this.parseCommand(trigger.get('condition')).name.toLowerCase()); + } + + /** + * Determines if the provided trigger action is valid. + * + * @param {TriggerEntity} trigger + * @returns {boolean} + */ + isValidAction(trigger) { return [ 'show', 'hide', 'enable', 'disable', - 'value', 'empty', + 'value', + 'class', 'attr', - ].includes(this.parseCommand(action).name.toLowerCase()); + 'style', + ].includes(this.parseCommand(trigger.get('action')).name.toLowerCase()); + } + + /** + * Create trigger events on trigger and target elements. + */ + createTriggerEvents() { + this.triggers.forEach((trigger) => { + const { name, parameters } = this.parseCommand(trigger.get('condition')); + + switch (name) { + case 'value': + case 'oneOf': + this.createValueEvent(trigger, false, ...parameters); + break; + case 'allOf': + this.createValueEvent(trigger, true, ...parameters); + break; + case 'empty': + this.createEmptyEvent(trigger); + break; + default: + } + }); + } + + /** + * Creates a trigger that fires when the value of the target element(s) matches one of the + * provided values. + * + * @param {TriggerEntity} trigger + * @param {...string} values + */ + createValueEvent(trigger, all, ...values) { + const supportedElements = new Set(); + + trigger.get('elements').forEach((element) => { + if (element.matches('input[type=button], input[type=file], input[type=image], input[type=reset], input[type=submit]')) { + // Buttons and file inputs are unsupported + return; + } + + if (element.matches('input, select, textarea')) { + supportedElements.add(element); + } + }); + + const thisEvent = () => { + const elementValues = new Set(); + + supportedElements.forEach((element) => { + if (element.matches('input[type=checkbox], input[type=radio]')) { + if (element.checked) { + elementValues.add(element.value); + } + return; + } + + elementValues.add(element.value); + }); + + if (all) { + if (values.every((value) => elementValues.has(value))) { + this.executeAction(trigger, true); + } else { + this.executeAction(trigger, false); + } + return; + } + + if (values.some((value) => elementValues.has(value))) { + this.executeAction(trigger, true); + } else { + this.executeAction(trigger, false); + } + }; + + supportedElements.forEach((element) => { + const elementEvent = () => thisEvent(); + + if (element.matches('input[type=checkbox], input[type=radio]')) { + this.events.add({ + element, + eventName: 'click', + event: elementEvent, + }); + element.addEventListener('click', elementEvent); + return; + } + + this.events.add({ + element, + eventName: 'input', + event: elementEvent, + }); + element.addEventListener('input', elementEvent); + }); + } + + /** + * Creates a trigger that fires when there is no value within the target element(s). + * + * @param {TriggerEntity} trigger + */ + createEmptyEvent(trigger) { + const supportedElements = new Set(); + + trigger.get('elements').forEach((element) => { + if (element.matches('input[type=button], input[type=image], input[type=reset], input[type=submit]')) { + // Buttons and file inputs are unsupported + return; + } + + if (element.matches('input, select, textarea')) { + supportedElements.add(element); + } + }); + + const thisEvent = () => { + const elementValues = new Set(); + + supportedElements.forEach((element) => { + if (element.matches('input[type=checkbox], input[type=radio]')) { + if (element.checked) { + elementValues.add(element); + } + return; + } + + if (element.value.trim() !== '') { + elementValues.add(element); + } + }); + + if (elementValues.size === 0) { + this.executeAction(trigger, true); + } else { + this.executeAction(trigger, false); + } + }; + + supportedElements.forEach((element) => { + const elementEvent = () => thisEvent(); + + if (element.matches('input[type=checkbox], input[type=radio]')) { + this.events.add({ + element, + eventName: 'click', + event: elementEvent, + }); + element.addEventListener('click', elementEvent); + return; + } + + this.events.add({ + element, + eventName: 'input', + event: elementEvent, + }); + element.addEventListener('input', elementEvent); + }); + } + + runEvents() { + this.events.forEach((event) => event.event()); + } + + resetEvents() { + this.events.forEach((event) => { + event.element.removeEventListener(event.eventName, event.event); + }); + } + + executeAction(trigger, conditionMet) { + const { name, parameters } = this.parseCommand(trigger.get('action')); + + switch (name) { + case 'show': + case 'hide': + this.actionShow(trigger, (name === 'show') ? conditionMet : !conditionMet); + break; + default: + } + } + + actionShow(trigger, show) { + if (show && this.element.style.display === 'none') { + this.element.classList.remove('hide'); + + if (!this.element.dataset.originalDisplay) { + this.element.style.display = 'block'; + } else { + this.element.style.display = this.element.dataset.originalDisplay; + } + + delete this.element.dataset.originalDisplay; + + this.afterAction(trigger); + } else if (this.element.style.display !== 'none') { + this.element.classList.add('hide'); + + this.element.dataset.originalDisplay = getComputedStyle(this.element).display; + this.element.style.display = 'none'; + + this.afterAction(trigger); + } + } + + afterAction(trigger) { + this.snowboard.debug('Trigger fired', this.element, trigger); + this.snowboard.globalEvent('trigger.fired', this.element, trigger); } } From 97bcd091e93e14864861e7267b9de953376d6ba1 Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Mon, 15 Jul 2024 16:26:44 +0800 Subject: [PATCH 03/18] Add event prioritisation, refactor connecting of elements to triggers and events --- .../assets/js/snowboard/extras/Trigger.js | 179 ++++++++++++++---- 1 file changed, 137 insertions(+), 42 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index a4e4ec4795..e874460945 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -5,13 +5,15 @@ import PluginBase from '../abstracts/PluginBase'; * @property {string} trigger The selector for the trigger target element(s). * @property {string} condition The condition that must be met for the trigger to fire. * @property {string} action The action to perform when the trigger fires. - * @property {string} parent The parent element with which to limit the trigger scope. + * @property {string|undefined} parent The parent element with which to limit the trigger scope. + * @property {string|number} priority The priority of the trigger event. * @property {HTMLElement[]} elements The target elements that this trigger applies to. */ /** * @typedef {Object} TriggerElement * @property {HTMLElement} element The target element. * @property {string} eventName The trigger event name. + * @property {int} priority The trigger event priority. * @property {Function} event The trigger event function. */ @@ -42,14 +44,19 @@ export default class Trigger extends PluginBase { this.element = element; /** - * @var {Map>} The triggers for this element. + * @type {Map>} The triggers for this element. */ this.triggers = new Map(); /** - * @var {Set} The events that have been bound by triggers. + * @type {Map>} A map of elements that trigger events. */ - this.events = new Set(); + this.events = new Map(); + + /** + * @type {Map>} A map of elements and their event connectors. + */ + this.connectors = new Map(); this.parseTriggers(); @@ -98,7 +105,7 @@ export default class Trigger extends PluginBase { return; } - const triggerParts = /([a-z0-9\-.:_]+?)(?:(?:-)(closest-parent|condition|when|action|parent))?$/i.exec( + const triggerParts = /([a-z0-9\-.:_]+?)(?:(?:-)(closest-parent|condition|when|action|parent|priority))?$/i.exec( dashStyle.replace('trigger-', '').toLowerCase(), ); @@ -114,7 +121,7 @@ export default class Trigger extends PluginBase { triggerType = (triggerParts[1] === 'closest') ? 'parent' : triggerParts[1]; } else if ( triggerParts[2] === undefined - || ['closest-parent', 'condition', 'when', 'action', 'parent'].indexOf(triggerParts[2]) !== -1 + || ['closest-parent', 'condition', 'when', 'action', 'parent', 'priority'].indexOf(triggerParts[2]) !== -1 ) { // Parse multi-trigger format [, triggerName] = triggerParts; @@ -130,6 +137,9 @@ export default class Trigger extends PluginBase { case 'action': triggerType = 'action'; break; + case 'priority': + triggerType = 'priority'; + break; default: triggerType = 'trigger'; break; @@ -161,6 +171,9 @@ export default class Trigger extends PluginBase { this.triggers.delete(name); } else { trigger.set('elements', elements); + if (!trigger.has('priority')) { + trigger.set('priority', 100); + } } }); } @@ -231,7 +244,7 @@ export default class Trigger extends PluginBase { /** * Checks if any elements are accessible by the provided trigger. * - * @param {TriggerEntity} trigger + * @param {Map} trigger * @returns {HTMLElement[]} */ getSelectableElements(trigger) { @@ -275,6 +288,8 @@ export default class Trigger extends PluginBase { 'disable', 'empty', 'value', + 'check', + 'uncheck', 'class', 'attr', 'style', @@ -288,17 +303,21 @@ export default class Trigger extends PluginBase { this.triggers.forEach((trigger) => { const { name, parameters } = this.parseCommand(trigger.get('condition')); - switch (name) { + switch (name.toLowerCase()) { case 'value': - case 'oneOf': + case 'oneof': this.createValueEvent(trigger, false, ...parameters); break; - case 'allOf': + case 'allof': this.createValueEvent(trigger, true, ...parameters); break; case 'empty': this.createEmptyEvent(trigger); break; + case 'checked': + case 'unchecked': + this.createCheckedEvent(trigger, (name === 'checked'), parameters[0] ?? undefined); + break; default: } }); @@ -356,24 +375,12 @@ export default class Trigger extends PluginBase { }; supportedElements.forEach((element) => { - const elementEvent = () => thisEvent(); - if (element.matches('input[type=checkbox], input[type=radio]')) { - this.events.add({ - element, - eventName: 'click', - event: elementEvent, - }); - element.addEventListener('click', elementEvent); + this.addEvent(element, trigger, 'click', () => thisEvent()); return; } - this.events.add({ - element, - eventName: 'input', - event: elementEvent, - }); - element.addEventListener('input', elementEvent); + this.addEvent(element, trigger, 'input', () => thisEvent()); }); } @@ -420,35 +427,123 @@ export default class Trigger extends PluginBase { }; supportedElements.forEach((element) => { - const elementEvent = () => thisEvent(); - if (element.matches('input[type=checkbox], input[type=radio]')) { - this.events.add({ - element, - eventName: 'click', - event: elementEvent, - }); - element.addEventListener('click', elementEvent); + this.addEvent(element, trigger, 'click', () => thisEvent()); return; } - this.events.add({ - element, - eventName: 'input', - event: elementEvent, + this.addEvent(element, trigger, 'input', () => thisEvent()); + }); + } + + /** + * Creates a trigger that fires when a target element is checked/unchecked. + * + * @param {TriggerEntity} trigger + * @param {boolean} checked If the element should be checked or unchecked. + * @param {number|undefined} atLeast The minimum number of elements that must be checked. + * Defaults to 1 if undefined. + */ + createCheckedEvent(trigger, checked, atLeast = undefined) { + const supportedElements = new Set(); + + trigger.get('elements').forEach((element) => { + // Only supports checkboxes and radio buttons + if (element.matches('input[type=radio], input[type=checkbox]')) { + supportedElements.add(element); + } + }); + + const thisEvent = () => { + const elementValues = new Set(); + + supportedElements.forEach((element) => { + if (checked === element.checked) { + elementValues.add(element); + } }); - element.addEventListener('input', elementEvent); + + const atLeastCount = atLeast ? Number(atLeast) : 1; + + if (elementValues.size >= atLeastCount) { + this.executeAction(trigger, true); + } else { + this.executeAction(trigger, false); + } + }; + + supportedElements.forEach((element) => { + this.addEvent(element, trigger, 'click', () => thisEvent()); }); } + /** + * Adds an event to an element. + * + * This registers the event in the `events` map for later usage and removal, and adds a + * connector to the element for the event, so that we may enable prioritisation and control over + * the firing of the events. + * + * @param {HTMLElement} element + * @param {TriggerEntity} trigger + * @param {string} eventName + * @param {Function} callback + */ + addEvent(element, trigger, eventName, callback) { + if (!this.events.has(element)) { + this.events.set(element, new Set()); + } + + const event = { + element, + eventName, + priority: Number(trigger.get('priority')), + event: callback, + }; + + this.events.get(element).add(event); + + if (!this.connectors.has(element)) { + this.connectors.set(element, new Map()); + } + if (!this.connectors.get(element).has(eventName)) { + this.connectors.get(element).set(eventName, () => { + const events = []; + + this.events.get(element).forEach((elementEvent) => { + if (elementEvent.eventName === eventName) { + events.push(elementEvent); + } + }); + + events + .sort((a, b) => a.priority - b.priority) + .forEach((elementEvent) => { + elementEvent.event(); + }); + }); + + element.addEventListener(eventName, this.connectors.get(element).get(eventName)); + } + } + runEvents() { - this.events.forEach((event) => event.event()); + this.connectors.forEach((elementConnectors) => { + elementConnectors.forEach((connector) => { + connector(); + }); + }); } resetEvents() { - this.events.forEach((event) => { - event.element.removeEventListener(event.eventName, event.event); + this.connectors.forEach((elementConnectors, element) => { + elementConnectors.forEach((connector, event) => { + element.removeEventListener(event, connector); + }); }); + + this.connectors.clear(); + this.events.clear(); } executeAction(trigger, conditionMet) { @@ -464,7 +559,7 @@ export default class Trigger extends PluginBase { } actionShow(trigger, show) { - if (show && this.element.style.display === 'none') { + if (show && getComputedStyle(this.element).display === 'none') { this.element.classList.remove('hide'); if (!this.element.dataset.originalDisplay) { @@ -476,7 +571,7 @@ export default class Trigger extends PluginBase { delete this.element.dataset.originalDisplay; this.afterAction(trigger); - } else if (this.element.style.display !== 'none') { + } else if (!show && getComputedStyle(this.element).display !== 'none') { this.element.classList.add('hide'); this.element.dataset.originalDisplay = getComputedStyle(this.element).display; From 385f43e813a53770ac048ae8862b5533a9f9f86a Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Mon, 15 Jul 2024 20:49:14 +0800 Subject: [PATCH 04/18] Minor --- modules/system/assets/js/snowboard/extras/Trigger.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index e874460945..7234058136 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -191,7 +191,7 @@ export default class Trigger extends PluginBase { */ parseCommand(command) { // Support old-format value command (value[foo,bar]) - if (command.startsWith('value')) { + if (command.startsWith('value') && command.includes('[')) { const match = command.match(/[^[\]]+(?=])/g); const values = []; @@ -437,7 +437,7 @@ export default class Trigger extends PluginBase { } /** - * Creates a trigger that fires when a target element is checked/unchecked. + * Creates a trigger that fires when a target element(s) is checked/unchecked. * * @param {TriggerEntity} trigger * @param {boolean} checked If the element should be checked or unchecked. From 6b191524b8372b2976f01deb974f45b4e600e73d Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Tue, 16 Jul 2024 11:53:56 +0800 Subject: [PATCH 05/18] Allow for multiple conditions and actions in a single trigger --- .../assets/js/snowboard/extras/Trigger.js | 331 ++++++++++-------- 1 file changed, 188 insertions(+), 143 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 7234058136..320668dc56 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -8,6 +8,8 @@ import PluginBase from '../abstracts/PluginBase'; * @property {string|undefined} parent The parent element with which to limit the trigger scope. * @property {string|number} priority The priority of the trigger event. * @property {HTMLElement[]} elements The target elements that this trigger applies to. + * @property {Function[]} conditionCallbacks The condition callbacks for this trigger. + * @property {Map>} elementEvents The events registered on the target elements. */ /** * @typedef {Object} TriggerElement @@ -105,7 +107,7 @@ export default class Trigger extends PluginBase { return; } - const triggerParts = /([a-z0-9\-.:_]+?)(?:(?:-)(closest-parent|condition|when|action|parent|priority))?$/i.exec( + const triggerParts = /([a-z0-9\-.:_]+?)(?:(?:-)(closest-parent|condition|when|action|parent|priority|do))?$/i.exec( dashStyle.replace('trigger-', '').toLowerCase(), ); @@ -187,7 +189,7 @@ export default class Trigger extends PluginBase { * If a parameter requires a comma within, the parameter should be wrapped in quotes. * * @param {string} command - * @returns {name: string, parameters: string[]} + * @returns {{name: string, parameters: string[]}[]} */ parseCommand(command) { // Support old-format value command (value[foo,bar]) @@ -209,36 +211,50 @@ export default class Trigger extends PluginBase { values.push(...splitValues); }); - return { + return [{ name: 'value', parameters: values, - }; + }]; + } + + // Handle multiple commands + if (command.includes('|')) { + const splitCommands = command.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/\|/g, '|||')) + .split('|') + .map((splitValue) => splitValue.replace(/\|\|\|/g, '|')); + + const commands = []; + splitCommands.forEach((splitCommand) => { + commands.push(...this.parseCommand(splitCommand)); + }); + + return commands; } if (!command.includes(':')) { - return { + return [{ name: command, parameters: [], - }; + }]; } const [name, parameters] = command.split(':', 2); if (!parameters.includes(',')) { - return { + return [{ name, parameters: [parameters], - }; + }]; } const splitValues = parameters.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/,/g, '|||')) .split(',') .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').trim()); - return { + return [{ name, parameters: splitValues, - }; + }]; } /** @@ -256,13 +272,13 @@ export default class Trigger extends PluginBase { } /** - * Determines if the provided trigger condition is valid. + * Determines if the provided trigger condition(s) are valid. * * @param {TriggerEntity} trigger * @returns {boolean} */ isValidCondition(trigger) { - return [ + return this.parseCommand(trigger.get('condition')).every((condition) => [ 'checked', 'unchecked', 'empty', @@ -271,17 +287,17 @@ export default class Trigger extends PluginBase { 'allof', 'focus', 'blur', - ].includes(this.parseCommand(trigger.get('condition')).name.toLowerCase()); + ].includes(condition.name.toLowerCase())); } /** - * Determines if the provided trigger action is valid. + * Determines if the provided trigger action(s) are valid. * * @param {TriggerEntity} trigger * @returns {boolean} */ isValidAction(trigger) { - return [ + return this.parseCommand(trigger.get('action')).every((action) => [ 'show', 'hide', 'enable', @@ -293,7 +309,7 @@ export default class Trigger extends PluginBase { 'class', 'attr', 'style', - ].includes(this.parseCommand(trigger.get('action')).name.toLowerCase()); + ].includes(action.name.toLowerCase())); } /** @@ -301,24 +317,121 @@ export default class Trigger extends PluginBase { */ createTriggerEvents() { this.triggers.forEach((trigger) => { - const { name, parameters } = this.parseCommand(trigger.get('condition')); + // Collect conditions and check them as a group. + trigger.set('conditionCallbacks', []); + trigger.set('elementEvents', new Map()); + + this.parseCommand(trigger.get('condition')).forEach((condition) => { + switch (condition.name.toLowerCase()) { + case 'value': + case 'oneof': + trigger.get('conditionCallbacks').push( + this.createValueCondition(trigger, false, ...condition.parameters), + ); + break; + case 'allof': + trigger.get('conditionCallbacks').push( + this.createValueCondition(trigger, true, ...condition.parameters), + ); + break; + case 'empty': + trigger.get('conditionCallbacks').push( + this.createEmptyCondition(trigger), + ); + break; + case 'checked': + case 'unchecked': + trigger.get('conditionCallbacks').push( + this.createCheckedCondition(trigger, (condition.name === 'checked'), condition.parameters[0] ?? undefined), + ); + break; + default: + } + }); + }); - switch (name.toLowerCase()) { - case 'value': - case 'oneof': - this.createValueEvent(trigger, false, ...parameters); - break; - case 'allof': - this.createValueEvent(trigger, true, ...parameters); - break; - case 'empty': - this.createEmptyEvent(trigger); - break; - case 'checked': - case 'unchecked': - this.createCheckedEvent(trigger, (name === 'checked'), parameters[0] ?? undefined); - break; - default: + this.registerEventListeners(); + } + + /** + * Adds an event to an element. + * + * This registers the event in the `elementEvents` map for later usage and removal. + * + * @param {HTMLElement} element + * @param {TriggerEntity} trigger + * @param {string} eventName + */ + addEvent(element, trigger, eventName) { + if (!trigger.get('elementEvents').has(element)) { + trigger.get('elementEvents').set(element, new Set()); + } + if (!trigger.get('elementEvents').get(element).add(eventName)) { + trigger.get('elementEvents').get(element).add(eventName); + } + } + + /** + * Registers DOM event listeners for targeted elements of all triggers. + * + * Adds a connector to the element for the events, so that we may enable prioritisation and + * control over the firing of the events, and then registers DOM event listeners for the + * elements. + */ + registerEventListeners() { + const connectors = new Set(); + + this.triggers.forEach((trigger) => { + trigger.get('elementEvents').forEach((events, element) => { + if (!this.events.has(element)) { + this.events.set(element, new Set()); + } + + events.forEach((eventName) => { + if (!connectors.has({ element, eventName })) { + connectors.add({ element, eventName }); + } + + const event = { + element, + eventName, + priority: Number(trigger.get('priority')), + event: () => { + this.executeActions( + trigger, + trigger.get('conditionCallbacks').every((condition) => condition()), + ); + }, + }; + + this.events.get(element).add(event); + }); + }); + }); + + connectors.forEach(({ element, eventName }) => { + if (!this.connectors.has(element)) { + this.connectors.set(element, new Map()); + } + + if (!this.connectors.get(element).has(eventName)) { + this.connectors.get(element).set(eventName, () => { + const events = []; + + this.events.get(element).forEach((elementEvent) => { + if (elementEvent.eventName === eventName) { + events.push(elementEvent); + } + }); + + events + .sort((a, b) => a.priority - b.priority) + .forEach((elementEvent) => { + elementEvent.event(); + }); + }); + + element.addEventListener(eventName, this.connectors.get(element).get(eventName)); } }); } @@ -330,7 +443,7 @@ export default class Trigger extends PluginBase { * @param {TriggerEntity} trigger * @param {...string} values */ - createValueEvent(trigger, all, ...values) { + createValueCondition(trigger, all, ...values) { const supportedElements = new Set(); trigger.get('elements').forEach((element) => { @@ -344,7 +457,15 @@ export default class Trigger extends PluginBase { } }); - const thisEvent = () => { + supportedElements.forEach((element) => { + if (element.matches('input[type=checkbox], input[type=radio]')) { + this.addEvent(element, trigger, 'click'); + } + + this.addEvent(element, trigger, 'input'); + }); + + return () => { const elementValues = new Set(); supportedElements.forEach((element) => { @@ -359,29 +480,11 @@ export default class Trigger extends PluginBase { }); if (all) { - if (values.every((value) => elementValues.has(value))) { - this.executeAction(trigger, true); - } else { - this.executeAction(trigger, false); - } - return; + return values.every((value) => elementValues.has(value)); } - if (values.some((value) => elementValues.has(value))) { - this.executeAction(trigger, true); - } else { - this.executeAction(trigger, false); - } + return values.some((value) => elementValues.has(value)); }; - - supportedElements.forEach((element) => { - if (element.matches('input[type=checkbox], input[type=radio]')) { - this.addEvent(element, trigger, 'click', () => thisEvent()); - return; - } - - this.addEvent(element, trigger, 'input', () => thisEvent()); - }); } /** @@ -389,7 +492,7 @@ export default class Trigger extends PluginBase { * * @param {TriggerEntity} trigger */ - createEmptyEvent(trigger) { + createEmptyCondition(trigger) { const supportedElements = new Set(); trigger.get('elements').forEach((element) => { @@ -403,7 +506,16 @@ export default class Trigger extends PluginBase { } }); - const thisEvent = () => { + supportedElements.forEach((element) => { + if (element.matches('input[type=checkbox], input[type=radio]')) { + this.addEvent(element, trigger, 'click'); + return; + } + + this.addEvent(element, trigger, 'input'); + }); + + return () => { const elementValues = new Set(); supportedElements.forEach((element) => { @@ -419,21 +531,8 @@ export default class Trigger extends PluginBase { } }); - if (elementValues.size === 0) { - this.executeAction(trigger, true); - } else { - this.executeAction(trigger, false); - } + return elementValues.size === 0; }; - - supportedElements.forEach((element) => { - if (element.matches('input[type=checkbox], input[type=radio]')) { - this.addEvent(element, trigger, 'click', () => thisEvent()); - return; - } - - this.addEvent(element, trigger, 'input', () => thisEvent()); - }); } /** @@ -444,7 +543,7 @@ export default class Trigger extends PluginBase { * @param {number|undefined} atLeast The minimum number of elements that must be checked. * Defaults to 1 if undefined. */ - createCheckedEvent(trigger, checked, atLeast = undefined) { + createCheckedCondition(trigger, checked, atLeast = undefined) { const supportedElements = new Set(); trigger.get('elements').forEach((element) => { @@ -454,7 +553,11 @@ export default class Trigger extends PluginBase { } }); - const thisEvent = () => { + supportedElements.forEach((element) => { + this.addEvent(element, trigger, 'click'); + }); + + return () => { const elementValues = new Set(); supportedElements.forEach((element) => { @@ -463,68 +566,10 @@ export default class Trigger extends PluginBase { } }); - const atLeastCount = atLeast ? Number(atLeast) : 1; - - if (elementValues.size >= atLeastCount) { - this.executeAction(trigger, true); - } else { - this.executeAction(trigger, false); - } - }; - - supportedElements.forEach((element) => { - this.addEvent(element, trigger, 'click', () => thisEvent()); - }); - } - - /** - * Adds an event to an element. - * - * This registers the event in the `events` map for later usage and removal, and adds a - * connector to the element for the event, so that we may enable prioritisation and control over - * the firing of the events. - * - * @param {HTMLElement} element - * @param {TriggerEntity} trigger - * @param {string} eventName - * @param {Function} callback - */ - addEvent(element, trigger, eventName, callback) { - if (!this.events.has(element)) { - this.events.set(element, new Set()); - } + const atLeastCount = (Number(atLeast).toFixed() > 1) ? Number(atLeast).toFixed() : 1; - const event = { - element, - eventName, - priority: Number(trigger.get('priority')), - event: callback, + return elementValues.size >= atLeastCount; }; - - this.events.get(element).add(event); - - if (!this.connectors.has(element)) { - this.connectors.set(element, new Map()); - } - if (!this.connectors.get(element).has(eventName)) { - this.connectors.get(element).set(eventName, () => { - const events = []; - - this.events.get(element).forEach((elementEvent) => { - if (elementEvent.eventName === eventName) { - events.push(elementEvent); - } - }); - - events - .sort((a, b) => a.priority - b.priority) - .forEach((elementEvent) => { - elementEvent.event(); - }); - }); - - element.addEventListener(eventName, this.connectors.get(element).get(eventName)); - } } runEvents() { @@ -546,16 +591,16 @@ export default class Trigger extends PluginBase { this.events.clear(); } - executeAction(trigger, conditionMet) { - const { name, parameters } = this.parseCommand(trigger.get('action')); - - switch (name) { - case 'show': - case 'hide': - this.actionShow(trigger, (name === 'show') ? conditionMet : !conditionMet); - break; - default: - } + executeActions(trigger, conditionMet) { + this.parseCommand(trigger.get('action')).forEach((action) => { + switch (action.name) { + case 'show': + case 'hide': + this.actionShow(trigger, (action.name === 'show') ? conditionMet : !conditionMet); + break; + default: + } + }); } actionShow(trigger, show) { From 377ef22b158f52c0ccc5eb6b292afcc6ea8441cf Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Tue, 16 Jul 2024 11:54:47 +0800 Subject: [PATCH 06/18] Support data-trigger-do --- modules/system/assets/js/snowboard/extras/Trigger.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 320668dc56..69fbe2ac80 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -123,7 +123,7 @@ export default class Trigger extends PluginBase { triggerType = (triggerParts[1] === 'closest') ? 'parent' : triggerParts[1]; } else if ( triggerParts[2] === undefined - || ['closest-parent', 'condition', 'when', 'action', 'parent', 'priority'].indexOf(triggerParts[2]) !== -1 + || ['closest-parent', 'condition', 'when', 'action', 'parent', 'priority', 'do'].indexOf(triggerParts[2]) !== -1 ) { // Parse multi-trigger format [, triggerName] = triggerParts; @@ -137,6 +137,7 @@ export default class Trigger extends PluginBase { triggerType = 'condition'; break; case 'action': + case 'do': triggerType = 'action'; break; case 'priority': From 2ddafc6ede0b2e7c9219bdd1a21381705ce979e2 Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Tue, 16 Jul 2024 12:15:23 +0800 Subject: [PATCH 07/18] Allow upper limit for checked/unchecked condition, minor docs tweaks --- .../assets/js/snowboard/extras/Trigger.js | 43 ++++++++++++------- 1 file changed, 28 insertions(+), 15 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 69fbe2ac80..0f6b2cedef 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -87,8 +87,9 @@ export default class Trigger extends PluginBase { * * Supported parameters are: * - `condition` or `where`: The condition that must be met for the trigger to fire. - * - `action`: The action to perform when the trigger fires. - * - `parent` or `closest-parent`: The parent element with which to limit the trigger scope. + * - `action` or `do`: The action to perform when the trigger fires. + * - `closest-parent` or `parent`: The parent element with which to limit the trigger scope. + * - `priority`: The priority in which to consider the trigger. * * Internally, the trigger map uses the `trigger` parameter to store the trigger selector. */ @@ -168,8 +169,8 @@ export default class Trigger extends PluginBase { || !trigger.has('condition') || !trigger.has('action') || elements.length === 0 - || !this.isValidCondition(trigger) - || !this.isValidAction(trigger) + || !this.hasValidConditions(trigger) + || !this.hasValidActions(trigger) ) { this.triggers.delete(name); } else { @@ -189,10 +190,13 @@ export default class Trigger extends PluginBase { * * If a parameter requires a comma within, the parameter should be wrapped in quotes. * + * Multiple commands can be separated by a pipe character `|`. + * * @param {string} command + * @param {string} allowMultiple * @returns {{name: string, parameters: string[]}[]} */ - parseCommand(command) { + parseCommand(command, allowMultiple = true) { // Support old-format value command (value[foo,bar]) if (command.startsWith('value') && command.includes('[')) { const match = command.match(/[^[\]]+(?=])/g); @@ -219,14 +223,14 @@ export default class Trigger extends PluginBase { } // Handle multiple commands - if (command.includes('|')) { + if (command.includes('|') && allowMultiple) { const splitCommands = command.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/\|/g, '|||')) .split('|') .map((splitValue) => splitValue.replace(/\|\|\|/g, '|')); const commands = []; splitCommands.forEach((splitCommand) => { - commands.push(...this.parseCommand(splitCommand)); + commands.push(...this.parseCommand(splitCommand, false)); }); return commands; @@ -278,7 +282,7 @@ export default class Trigger extends PluginBase { * @param {TriggerEntity} trigger * @returns {boolean} */ - isValidCondition(trigger) { + hasValidConditions(trigger) { return this.parseCommand(trigger.get('condition')).every((condition) => [ 'checked', 'unchecked', @@ -297,7 +301,7 @@ export default class Trigger extends PluginBase { * @param {TriggerEntity} trigger * @returns {boolean} */ - isValidAction(trigger) { + hasValidActions(trigger) { return this.parseCommand(trigger.get('action')).every((action) => [ 'show', 'hide', @@ -343,7 +347,7 @@ export default class Trigger extends PluginBase { case 'checked': case 'unchecked': trigger.get('conditionCallbacks').push( - this.createCheckedCondition(trigger, (condition.name === 'checked'), condition.parameters[0] ?? undefined), + this.createCheckedCondition(trigger, (condition.name === 'checked'), ...condition.parameters), ); break; default: @@ -541,10 +545,10 @@ export default class Trigger extends PluginBase { * * @param {TriggerEntity} trigger * @param {boolean} checked If the element should be checked or unchecked. - * @param {number|undefined} atLeast The minimum number of elements that must be checked. - * Defaults to 1 if undefined. + * @param {string|number|undefined} atLeast The minimum number of elements that must be checked. + * Defaults to 1 if undefined. If specified as `all`, all elements must be checked. */ - createCheckedCondition(trigger, checked, atLeast = undefined) { + createCheckedCondition(trigger, checked, atLeast = undefined, atMost = undefined) { const supportedElements = new Set(); trigger.get('elements').forEach((element) => { @@ -567,9 +571,18 @@ export default class Trigger extends PluginBase { } }); - const atLeastCount = (Number(atLeast).toFixed() > 1) ? Number(atLeast).toFixed() : 1; + if (atLeast === 'all') { + return elementValues.size === supportedElements.size; + } + + const atLeastCount = (atLeast !== undefined && Math.floor(atLeast) > 0) + ? Math.floor(atLeast) + : 1; + const atMostCount = (atLeast !== undefined && Math.floor(atMost) > 1) + ? Math.floor(atMost) + : supportedElements.size; - return elementValues.size >= atLeastCount; + return elementValues.size >= atLeastCount && elementValues.size <= atMostCount; }; } From 0894e7be83d2ee542805a0b5135b9bde45a37126 Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Tue, 16 Jul 2024 14:17:51 +0800 Subject: [PATCH 08/18] Refactor actions to allow targeted elements for actions --- .../assets/js/snowboard/extras/Trigger.js | 210 ++++++++++++++++-- 1 file changed, 188 insertions(+), 22 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 0f6b2cedef..418a9c86f6 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -46,7 +46,7 @@ export default class Trigger extends PluginBase { this.element = element; /** - * @type {Map>} The triggers for this element. + * @type {Map} The triggers for this element. */ this.triggers = new Map(); @@ -209,7 +209,7 @@ export default class Trigger extends PluginBase { return; } - const splitValues = value.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/,/g, '|||')) + const splitValues = value.replace(/('.*?(? quoted.replace(/,/g, '|||')) .split(',') .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').trim()); @@ -224,7 +224,7 @@ export default class Trigger extends PluginBase { // Handle multiple commands if (command.includes('|') && allowMultiple) { - const splitCommands = command.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/\|/g, '|||')) + const splitCommands = command.replace(/('.*?(? quoted.replace(/\|/g, '|||')) .split('|') .map((splitValue) => splitValue.replace(/\|\|\|/g, '|')); @@ -252,9 +252,9 @@ export default class Trigger extends PluginBase { }]; } - const splitValues = parameters.replace(/("[^"]*")|('[^']*')/g, (quoted) => quoted.replace(/,/g, '|||')) + const splitValues = parameters.replace(/('.*?(? quoted.replace(/,/g, '|||')) .split(',') - .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').trim()); + .map((splitValue) => splitValue.replace(/\|\|\|/g, ',').replace(/^['"]|['"]$/g, '').replace(/\\(['"])/, '$1').trim()); return [{ name, @@ -292,6 +292,8 @@ export default class Trigger extends PluginBase { 'allof', 'focus', 'blur', + 'attr', + 'class', ].includes(condition.name.toLowerCase())); } @@ -309,11 +311,15 @@ export default class Trigger extends PluginBase { 'disable', 'empty', 'value', + 'valueOf', 'check', 'uncheck', 'class', + 'classOf', 'attr', + 'attrOf', 'style', + 'styleOf', ].includes(action.name.toLowerCase())); } @@ -586,6 +592,11 @@ export default class Trigger extends PluginBase { }; } + /** + * Manually runs all registered triggers. + * + * This can be used to update the state of the triggers. + */ runEvents() { this.connectors.forEach((elementConnectors) => { elementConnectors.forEach((connector) => { @@ -594,6 +605,11 @@ export default class Trigger extends PluginBase { }); } + /** + * Clears all registered events. + * + * This will disable all triggers and their event listeners on the target elements. + */ resetEvents() { this.connectors.forEach((elementConnectors, element) => { elementConnectors.forEach((connector, event) => { @@ -605,43 +621,193 @@ export default class Trigger extends PluginBase { this.events.clear(); } + /** + * Executes actions based on the trigger condition. + * + * Actions should be binary, and show one state when the condition is met, and another when it + * is not. The second parameter is used to determine if the conditions of the trigger have been + * met. If a trigger has multiple conditions, ALL conditions must be met. + * + * @param {TriggerEntity} trigger + * @param {boolean} conditionMet + */ executeActions(trigger, conditionMet) { this.parseCommand(trigger.get('action')).forEach((action) => { switch (action.name) { case 'show': case 'hide': - this.actionShow(trigger, (action.name === 'show') ? conditionMet : !conditionMet); + this.actionShow( + trigger, + (action.parameters[0]) + ? Array.from(this.element.querySelectorAll(action.parameters[0])) + : [this.element], + (action.name === 'show') ? conditionMet : !conditionMet, + ); + break; + case 'enable': + case 'disable': + this.actionEnable( + trigger, + (action.parameters[0]) + ? Array.from(this.element.querySelectorAll(action.parameters[0])) + : [this.element], + (action.name === 'enable') ? conditionMet : !conditionMet, + ); + break; + case 'empty': + if (conditionMet) { + this.actionValue( + trigger, + conditionMet, + (action.parameters[0]) + ? Array.from(this.element.querySelectorAll(action.parameters[0])) + : [this.element], + '', + ); + } break; + case 'value': + case 'valueOf': + this.actionValue( + trigger, + conditionMet, + (action.name === 'valueOf') + ? Array.from(this.element.querySelectorAll(action.parameters[0])) + : [this.element], + ...(action.parameters.length > 0 && action.name === 'valueOf') + ? action.parameters.slice(1) + : action.parameters, + ); + break; + case 'class': + case 'classOf': + this.actionClass( + trigger, + conditionMet, + (action.name === 'classOf') + ? Array.from(this.element.querySelectorAll(action.parameters[0])) + : [this.element], + ...(action.name === 'classOf') + ? action.parameters.slice(1) + : action.parameters, + ); default: } }); } - actionShow(trigger, show) { - if (show && getComputedStyle(this.element).display === 'none') { - this.element.classList.remove('hide'); + /** + * Shows or hides a trigger element. + * + * This action will toggle the `hide` class on the element, and set the `display` style to + * `none` when hidden, and the original display value when shown. + * + * @param {TriggerEntity} trigger + * @param {HTMLElement[]} elements + * @param {boolean} show + */ + actionShow(trigger, elements, show) { + elements.forEach((element) => { + if (show && getComputedStyle(element).display === 'none') { + element.classList.remove('hide'); + + if (!element.dataset.originalDisplay) { + element.style.display = 'block'; + } else { + element.style.display = element.dataset.originalDisplay; + } - if (!this.element.dataset.originalDisplay) { - this.element.style.display = 'block'; - } else { - this.element.style.display = this.element.dataset.originalDisplay; + delete element.dataset.originalDisplay; + + this.afterAction(trigger, element); + } else if (!show && getComputedStyle(element).display !== 'none') { + element.classList.add('hide'); + + element.dataset.originalDisplay = getComputedStyle(element).display; + element.style.display = 'none'; + + this.afterAction(trigger, element); + } + }); + } + + /** + * Enables or disables a trigger element. + * + * This action will toggle the `control-disabled` class on the element, and set the `disabled` + * property to `true` when disabled, and `false` when enabled. + * + * @param {TriggerEntity} trigger + * @param {HTMLElement[]} elements + * @param {boolean} enable + */ + actionEnable(trigger, elements, enable) { + elements.forEach((element) => { + element.classList[(enable) ? 'remove' : 'add']('control-disabled'); + + if (element.disabled !== undefined) { + element.disabled = !enable; } - delete this.element.dataset.originalDisplay; + this.afterAction(trigger, element); + }); + } + + /** + * Sets the value of either the trigger element or a child element(s) within. + * + * This is a one-way action if the unmet value is not defined. + */ + actionValue(trigger, conditionMet, elements, value, unmetValue = undefined) { + if (!conditionMet && unmetValue === undefined) { + return; + } + + const newValue = (conditionMet) ? value : unmetValue; + + elements.forEach((element) => { + if (element.matches('input[type=checkbox], input[type=radio]')) { + element.checked = (element.value === newValue); + return; + } + + if (element.matches('input, select, textarea')) { + element.value = newValue; + return; + } + + element.textContent = newValue; this.afterAction(trigger); - } else if (!show && getComputedStyle(this.element).display !== 'none') { - this.element.classList.add('hide'); + }); + } - this.element.dataset.originalDisplay = getComputedStyle(this.element).display; - this.element.style.display = 'none'; + /** + * Adds or removes the class from the trigger element or a child element(s) within. + * + * This will simply remove the class if the unmet class is not defined. Otherwise, the classes + * will be toggled. + */ + actionClass(trigger, conditionMet, elements, cssClass, unmetCssClass = undefined) { + elements.forEach((element) => { + if (conditionMet) { + element.classList.add(cssClass); + if (unmetCssClass) { + element.classList.remove(unmetCssClass); + } + } else { + element.classList.remove(cssClass); + if (unmetCssClass) { + element.classList.add(unmetCssClass); + } + } this.afterAction(trigger); - } + }); } - afterAction(trigger) { - this.snowboard.debug('Trigger fired', this.element, trigger); - this.snowboard.globalEvent('trigger.fired', this.element, trigger); + afterAction(trigger, element) { + this.snowboard.debug('Trigger fired', element, trigger); + this.snowboard.globalEvent('trigger.fired', element, trigger); } } From a73cfc58bbcf57b7ac5523aafc1be0d1aa56869f Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Wed, 17 Jul 2024 10:26:28 +0800 Subject: [PATCH 09/18] Add focused condition --- .../assets/js/snowboard/extras/Trigger.js | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 418a9c86f6..6c2954f706 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -270,6 +270,9 @@ export default class Trigger extends PluginBase { */ getSelectableElements(trigger) { if (trigger.has('parent')) { + if (!this.element.closest(trigger.get('parent'))) { + return []; + } return Array.from(this.element.closest(trigger.get('parent')).querySelectorAll(trigger.get('trigger'))); } @@ -291,7 +294,6 @@ export default class Trigger extends PluginBase { 'oneof', 'allof', 'focus', - 'blur', 'attr', 'class', ].includes(condition.name.toLowerCase())); @@ -356,6 +358,11 @@ export default class Trigger extends PluginBase { this.createCheckedCondition(trigger, (condition.name === 'checked'), ...condition.parameters), ); break; + case 'focus': + trigger.get('conditionCallbacks').push( + this.createFocusedCondition(trigger), + ); + break; default: } }); @@ -592,6 +599,27 @@ export default class Trigger extends PluginBase { }; } + /** + * Creates a trigger that fires when a target element(s) is focused or blurred. + * + * @param {TriggerEntity} trigger + */ + createFocusedCondition(trigger) { + const supportedElements = new Set(); + + trigger.get('elements').forEach((element) => { + // All elements are supported (technically) + supportedElements.add(element); + }); + + supportedElements.forEach((element) => { + this.addEvent(element, trigger, 'focus'); + this.addEvent(element, trigger, 'blur'); + }); + + return () => Array.from(supportedElements).some((element) => document.activeElement === element); + } + /** * Manually runs all registered triggers. * From bb95ba76797ad6ad4ad4be4928f23fc1317b0d8f Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Wed, 17 Jul 2024 15:07:16 +0800 Subject: [PATCH 10/18] Add extensibility (mainly for actions), use a friendly show/hide function, minor tweaks --- .../assets/js/snowboard/extras/Trigger.js | 107 +++++++++++++----- 1 file changed, 81 insertions(+), 26 deletions(-) diff --git a/modules/system/assets/js/snowboard/extras/Trigger.js b/modules/system/assets/js/snowboard/extras/Trigger.js index 6c2954f706..0e5ab1fafa 100644 --- a/modules/system/assets/js/snowboard/extras/Trigger.js +++ b/modules/system/assets/js/snowboard/extras/Trigger.js @@ -67,7 +67,7 @@ export default class Trigger extends PluginBase { this.createTriggerEvents(); this.runEvents(); - this.snowboard.globalEvent('triggers.ready', this.element); + this.snowboard.globalEvent('triggers.ready', this.element, this.triggers); } } @@ -478,6 +478,13 @@ export default class Trigger extends PluginBase { supportedElements.forEach((element) => { if (element.matches('input[type=checkbox], input[type=radio]')) { this.addEvent(element, trigger, 'click'); + this.addEvent(element, trigger, 'change'); + return; + } + + if (element.matches('input[type=hidden]')) { + this.addEvent(element, trigger, 'change'); + return; } this.addEvent(element, trigger, 'input'); @@ -527,6 +534,7 @@ export default class Trigger extends PluginBase { supportedElements.forEach((element) => { if (element.matches('input[type=checkbox], input[type=radio]')) { this.addEvent(element, trigger, 'click'); + this.addEvent(element, trigger, 'change'); return; } @@ -621,12 +629,16 @@ export default class Trigger extends PluginBase { } /** - * Manually runs all registered triggers. + * Manually runs all registered triggers, optionally for a specific element. * * This can be used to update the state of the triggers. */ - runEvents() { - this.connectors.forEach((elementConnectors) => { + runEvents(forElement = undefined) { + this.connectors.forEach((elementConnectors, element) => { + if (forElement && element !== forElement) { + return; + } + elementConnectors.forEach((connector) => { connector(); }); @@ -661,11 +673,22 @@ export default class Trigger extends PluginBase { */ executeActions(trigger, conditionMet) { this.parseCommand(trigger.get('action')).forEach((action) => { + // Allow plugins to override action(s) and prevent the default functionality from firing. + if (this.snowboard.globalEvent('trigger.action', this.element, trigger, action, conditionMet) === false) { + this.afterAction(trigger, this.element, { + action: action.name, + override: true, + conditionMet, + }); + return; + } + switch (action.name) { case 'show': case 'hide': this.actionShow( trigger, + conditionMet, (action.parameters[0]) ? Array.from(this.element.querySelectorAll(action.parameters[0])) : [this.element], @@ -676,6 +699,7 @@ export default class Trigger extends PluginBase { case 'disable': this.actionEnable( trigger, + conditionMet, (action.parameters[0]) ? Array.from(this.element.querySelectorAll(action.parameters[0])) : [this.element], @@ -731,30 +755,36 @@ export default class Trigger extends PluginBase { * `none` when hidden, and the original display value when shown. * * @param {TriggerEntity} trigger + * @param {boolean} conditionMet * @param {HTMLElement[]} elements * @param {boolean} show */ - actionShow(trigger, elements, show) { + actionShow(trigger, conditionMet, elements, show) { elements.forEach((element) => { - if (show && getComputedStyle(element).display === 'none') { - element.classList.remove('hide'); - - if (!element.dataset.originalDisplay) { - element.style.display = 'block'; - } else { + if (show && (!element.style.display || element.style.display === 'none')) { + if (element.dataset.originalDisplay !== undefined) { element.style.display = element.dataset.originalDisplay; + delete element.dataset.originalDisplay; + } else if (element.style.display ) { + element.style.display = null; } - delete element.dataset.originalDisplay; - - this.afterAction(trigger, element); - } else if (!show && getComputedStyle(element).display !== 'none') { - element.classList.add('hide'); - - element.dataset.originalDisplay = getComputedStyle(element).display; + this.afterAction(trigger, element, { + action: 'show', + conditionMet, + show, + }); + } else if (!show && (!element.style.display || element.style.display !== 'none')) { + if (element.style.display) { + element.dataset.originalDisplay = element.style.display; + } element.style.display = 'none'; - this.afterAction(trigger, element); + this.afterAction(trigger, element, { + action: 'show', + conditionMet, + show, + }); } }); } @@ -766,10 +796,11 @@ export default class Trigger extends PluginBase { * property to `true` when disabled, and `false` when enabled. * * @param {TriggerEntity} trigger + * @param {boolean} conditionMet * @param {HTMLElement[]} elements * @param {boolean} enable */ - actionEnable(trigger, elements, enable) { + actionEnable(trigger, conditionMet, elements, enable) { elements.forEach((element) => { element.classList[(enable) ? 'remove' : 'add']('control-disabled'); @@ -777,7 +808,11 @@ export default class Trigger extends PluginBase { element.disabled = !enable; } - this.afterAction(trigger, element); + this.afterAction(trigger, element, { + action: 'enable', + conditionMet, + enable, + }); }); } @@ -806,7 +841,12 @@ export default class Trigger extends PluginBase { element.textContent = newValue; - this.afterAction(trigger); + this.afterAction(trigger, element, { + action: 'value', + conditionMet, + value, + unmetValue, + }); }); } @@ -830,12 +870,27 @@ export default class Trigger extends PluginBase { } } - this.afterAction(trigger); + this.afterAction(trigger, element, { + action: 'class', + conditionMet, + cssClass, + unmetCssClass, + }); }); } - afterAction(trigger, element) { - this.snowboard.debug('Trigger fired', element, trigger); - this.snowboard.globalEvent('trigger.fired', element, trigger); + /** + * Fires off an event when a trigger action has been executed. + * + * The element affected, the trigger and details about the action are passed through to the + * event. + * + * @param {TriggerEntity} trigger + * @param {HTMLElement} element + * @param {Object} action + */ + afterAction(trigger, element, action) { + this.snowboard.debug('Trigger fired', element, trigger, action); + this.snowboard.globalEvent('trigger.fired', element, trigger, action); } } From 3d2274f8f5631f5ab44749f5ad307ad6a8a6b95e Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Wed, 17 Jul 2024 15:08:14 +0800 Subject: [PATCH 11/18] Add a trigger handler for the backend to bridge between old and new Trigger functionality --- .../assets/ui/js/input/TriggerHandler.js | 87 +++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 modules/backend/assets/ui/js/input/TriggerHandler.js diff --git a/modules/backend/assets/ui/js/input/TriggerHandler.js b/modules/backend/assets/ui/js/input/TriggerHandler.js new file mode 100644 index 0000000000..6849afbee8 --- /dev/null +++ b/modules/backend/assets/ui/js/input/TriggerHandler.js @@ -0,0 +1,87 @@ +import { delegate } from 'jquery-events-to-dom-events'; + +/** + * Backend trigger handler. + * + * Registers the usage of the new Trigger functionality, whilst mapping the old jQuery-style events + * to the new functionality. + * + * @copyright 2024 Winter. + * @author Ben Thomson + */ +export default class TriggerHandler extends Snowboard.Singleton { + construct() { + this.changedElements = new Set(); + } + + /** + * Listeners. + * + * @returns {Object} + */ + listens() { + return { + ready: 'onReady', + render: 'setUpTriggers', + 'trigger.action': 'onTriggerAction', + }; + } + + onReady() { + delegate('oc.triggerOn.update'); + + /** + * A number of widgets trigger a change event on a hidden element when they are updated, + * however, this change event is a jQuery "change" event, not the native DOM "change" event. + * + * The following intercepts the jQuery event and dispatches a native event as well. + */ + delegate('change'); + document.addEventListener('$change', (event) => { + if (event.throughTrigger) { + return; + } + + const newEvent = new InputEvent('change'); + newEvent.throughTrigger = true; + event.target.dispatchEvent(newEvent); + }); + + this.setUpTriggers(); + } + + setUpTriggers() { + // Scan for triggers + Array + .from(document.querySelectorAll('*')) + .filter((element) => [...element.attributes].filter( + ({ name }) => name.startsWith("data-trigger-")).length > 0 + ).forEach((element) => { + const trigger = snowboard.trigger(element); + element.addEventListener('$oc.triggerOn.update', () => { + trigger.runEvents(element); + }); + }); + } + + onTriggerAction(element, trigger, action, conditionMet) { + if (action.name === 'show' || action.name === 'hide') { + this.actionShow( + (action.parameters[0]) + ? Array.from(element.querySelectorAll(action.parameters[0])) + : [element], + (action.name === 'show') ? conditionMet : !conditionMet, + ); + } + } + + actionShow(elements, show) { + elements.forEach((element) => { + if (show && element.classList.contains('hide')) { + element.classList.remove('hide'); + } else if (!show && !element.classList.contains('hide')) { + element.classList.add('hide'); + } + }); + } +} From 64ec3ddae793639eec083ac9ad6de442b159e34b Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Wed, 17 Jul 2024 15:08:25 +0800 Subject: [PATCH 12/18] Remove old trigger functionality --- modules/system/assets/ui/js/input.trigger.js | 195 ------------------- 1 file changed, 195 deletions(-) delete mode 100644 modules/system/assets/ui/js/input.trigger.js diff --git a/modules/system/assets/ui/js/input.trigger.js b/modules/system/assets/ui/js/input.trigger.js deleted file mode 100644 index e9403497a2..0000000000 --- a/modules/system/assets/ui/js/input.trigger.js +++ /dev/null @@ -1,195 +0,0 @@ -/* - * The trigger API - * - * - Documentation: ../docs/input-trigger.md - */ -+function ($) { "use strict"; - - var TriggerOn = function (element, options) { - - var $el = this.$el = $(element); - - this.options = options || {}; - - if (this.options.triggerCondition === false) - throw new Error('Trigger condition is not specified.') - - if (this.options.trigger === false) - throw new Error('Trigger selector is not specified.') - - if (this.options.triggerAction === false) - throw new Error('Trigger action is not specified.') - - this.triggerCondition = this.options.triggerCondition - - if (this.options.triggerCondition.indexOf('value') == 0) { - var match = this.options.triggerCondition.match(/[^[\]]+(?=])/g) - this.triggerCondition = 'value' - this.triggerConditionValue = (match) ? match : [""] - } - - this.triggerParent = undefined - if (this.options.triggerClosestParent !== undefined) { - var closestParentElements = this.options.triggerClosestParent.split(',') - for (var i = 0; i < closestParentElements.length; i++) { - var $triggerElement = $el.closest(closestParentElements[i]) - if ($triggerElement.length) { - this.triggerParent = $triggerElement - break - } - } - } - - if ( - this.triggerCondition == 'checked' || - this.triggerCondition == 'unchecked' || - this.triggerCondition == 'value' - ) { - $(document).on('change', this.options.trigger, $.proxy(this.onConditionChanged, this)) - } - - var self = this - $el.on('oc.triggerOn.update', function(e){ - e.stopPropagation() - self.onConditionChanged() - }) - - self.onConditionChanged() - } - - TriggerOn.prototype.onConditionChanged = function() { - if (this.triggerCondition == 'checked') { - this.updateTarget(!!$(this.options.trigger + ':checked', this.triggerParent).length) - } - else if (this.triggerCondition == 'unchecked') { - this.updateTarget(!$(this.options.trigger + ':checked', this.triggerParent).length) - } - else if (this.triggerCondition == 'value') { - var trigger, triggered = false - - trigger = $(this.options.trigger, this.triggerParent) - .not('input[type=checkbox], input[type=radio], input[type=button], input[type=submit]') - - if (!trigger.length) { - trigger = $(this.options.trigger, this.triggerParent) - .not(':not(input[type=checkbox]:checked, input[type=radio]:checked)') - } - - var self = this - trigger.each(function() { - var triggerValue = $(this).val(); - - $.each($.isArray(triggerValue) ? triggerValue : [triggerValue], function(key, val) { - triggered = $.inArray(val, self.triggerConditionValue) != -1 - return !triggered - }) - - return !triggered - }) - - this.updateTarget(triggered) - } - } - - TriggerOn.prototype.updateTarget = function(status) { - var self = this, - actions = this.options.triggerAction.split('|') - - $.each(actions, function(index, action) { - self.updateTargetAction(action, status) - }) - - $(window).trigger('resize') - - this.$el.trigger('oc.triggerOn.afterUpdate', status) - } - - TriggerOn.prototype.updateTargetAction = function(action, status) { - if (action == 'show') { - this.$el - .toggleClass('hide', !status) - .trigger('hide.oc.triggerapi', [!status]) - } - else if (action == 'hide') { - this.$el - .toggleClass('hide', status) - .trigger('hide.oc.triggerapi', [status]) - } - else if (action == 'enable') { - this.$el - .prop('disabled', !status) - .toggleClass('control-disabled', !status) - .trigger('disable.oc.triggerapi', [!status]) - } - else if (action == 'disable') { - this.$el - .prop('disabled', status) - .toggleClass('control-disabled', status) - .trigger('disable.oc.triggerapi', [status]) - } - else if (action == 'empty' && status) { - this.$el - .not('input[type=checkbox], input[type=radio], input[type=button], input[type=submit]') - .val('') - - this.$el - .not(':not(input[type=checkbox], input[type=radio])') - .prop('checked', false) - - this.$el - .trigger('empty.oc.triggerapi') - .trigger('change') - } - - if (action == 'show' || action == 'hide') { - this.fixButtonClasses() - } - } - - TriggerOn.prototype.fixButtonClasses = function() { - var group = this.$el.closest('.btn-group') - - if (group.length > 0 && this.$el.is(':last-child')) - this.$el.prev().toggleClass('last', this.$el.hasClass('hide')) - } - - TriggerOn.DEFAULTS = { - triggerAction: false, - triggerCondition: false, - triggerClosestParent: undefined, - trigger: false - } - - // TRIGGERON PLUGIN DEFINITION - // ============================ - - var old = $.fn.triggerOn - - $.fn.triggerOn = function (option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('oc.triggerOn') - var options = $.extend({}, TriggerOn.DEFAULTS, $this.data(), typeof option == 'object' && option) - - if (!data) $this.data('oc.triggerOn', (data = new TriggerOn(this, options))) - }) - } - - $.fn.triggerOn.Constructor = TriggerOn - - // TRIGGERON NO CONFLICT - // ================= - - $.fn.triggerOn.noConflict = function () { - $.fn.triggerOn = old - return this - } - - // TRIGGERON DATA-API - // =============== - - $(document).render(function(){ - $('[data-trigger]').triggerOn() - }) - -}(window.jQuery); From e6f00298958267065c2b4e84e31dded13799df1c Mon Sep 17 00:00:00 2001 From: Ben Thomson Date: Wed, 17 Jul 2024 15:08:40 +0800 Subject: [PATCH 13/18] Rebuild assets --- modules/backend/assets/ui/js/build/backend.js | 2 +- modules/backend/assets/ui/js/build/vendor.js | 15 ++++--- modules/backend/assets/ui/js/index.js | 2 + .../codeeditor/assets/js/build-min.js | 6 +-- .../colorpicker/assets/js/dist/colorpicker.js | 2 +- .../iconpicker/assets/js/dist/iconpicker.js | 2 +- .../assets/js/mediamanager-browser-min.js | 2 +- .../system/assets/js/build/system.debug.js | 2 +- modules/system/assets/js/build/system.js | 2 +- .../snowboard/build/snowboard.base.debug.js | 2 +- .../js/snowboard/build/snowboard.base.js | 2 +- .../js/snowboard/build/snowboard.data-attr.js | 2 +- .../js/snowboard/build/snowboard.request.js | 2 +- .../js/snowboard/snowboard.backend.extras.js | 2 + .../system/assets/ui/font/fa-brands-400.ttf | Bin 209128 -> 209376 bytes .../system/assets/ui/font/fa-brands-400.woff2 | Bin 117852 -> 118072 bytes .../system/assets/ui/font/fa-regular-400.ttf | Bin 67860 -> 67976 bytes .../assets/ui/font/fa-regular-400.woff2 | Bin 25392 -> 25464 bytes .../system/assets/ui/font/fa-solid-900.ttf | Bin 420332 -> 423676 bytes .../system/assets/ui/font/fa-solid-900.woff2 | Bin 156400 -> 157192 bytes .../assets/ui/font/fa-v4compatibility.ttf | Bin 10832 -> 10836 bytes .../assets/ui/font/fa-v4compatibility.woff2 | Bin 4792 -> 4800 bytes modules/system/assets/ui/icons.css | 2 +- modules/system/assets/ui/storm-min.js | 41 +----------------- modules/system/assets/ui/storm.css | 2 +- modules/system/assets/ui/storm.js | 1 - .../assets/ui/vendor/select2/css/select2.css | 2 +- 27 files changed, 29 insertions(+), 64 deletions(-) diff --git a/modules/backend/assets/ui/js/build/backend.js b/modules/backend/assets/ui/js/build/backend.js index 251900720e..341551eab8 100644 --- a/modules/backend/assets/ui/js/build/backend.js +++ b/modules/backend/assets/ui/js/build/backend.js @@ -1 +1 @@ -"use strict";(self.webpackChunk_wintercms_wn_backend_module=self.webpackChunk_wintercms_wn_backend_module||[]).push([[476],{286:function(e,t,n){var i=n(35),r=n(171);class s extends Snowboard.Singleton{listens(){return{ready:"ready",ajaxFetchOptions:"ajaxFetchOptions",ajaxUpdateComplete:"ajaxUpdateComplete"}}ready(){window.jQuery&&((0,r.M)("render"),document.addEventListener("$render",(()=>{this.snowboard.globalEvent("render")})),window.jQuery(document).trigger("render"))}addPrefilter(){window.jQuery&&window.jQuery.ajaxPrefilter((e=>{this.hasToken()&&(e.headers||(e.headers={}),e.headers["X-CSRF-TOKEN"]=this.getToken())}))}ajaxFetchOptions(e){this.hasToken()&&(e.headers["X-CSRF-TOKEN"]=this.getToken())}ajaxUpdateComplete(){window.jQuery&&window.jQuery(document).trigger("render")}hasToken(){const e=document.querySelector('meta[name="csrf-token"]');return!!e&&!!e.hasAttribute("content")}getToken(){return document.querySelector('meta[name="csrf-token"]').getAttribute("content")}}class a extends Snowboard.PluginBase{construct(e,t){if(e instanceof Snowboard.PluginBase==!1)throw new Error("Event handling can only be applied to Snowboard classes.");if(!t)throw new Error("Event prefix is required.");this.instance=e,this.eventPrefix=t,this.events=[]}on(e,t){this.events.push({event:e,callback:t})}off(e,t){this.events=this.events.filter((n=>n.event!==e||n.callback!==t))}once(e,t){var n=this;const i=this.events.push({event:e,callback:function(){t(...arguments),n.events.splice(i-1,1)}})}fire(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it.event===e));let s=!1;r.forEach((e=>{s||!1===e.callback(...n)&&(s=!0)})),s||this.snowboard.globalEvent(`${this.eventPrefix}.${e}`,...n)}firePromise(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it.event===e)),s=r.filter((e=>null!==e),r.map((e=>e.callback(...n))));Promise.all(s).then((()=>{this.snowboard.globalPromiseEvent(`${this.eventPrefix}.${e}`,...n)}))}}class o extends Snowboard.Singleton{construct(){this.registeredWidgets=[],this.elements=[],this.events={mutate:e=>this.onMutation(e)},this.observer=null}listens(){return{ready:"onReady",render:"onRender",ajaxUpdate:"onAjaxUpdate"}}register(e,t,n){this.registeredWidgets.push({control:e,widget:t,callback:n})}unregister(e){this.registeredWidgets=this.registeredWidgets.filter((t=>t.control!==e))}onReady(){this.initializeWidgets(document.body),this.observer||(this.observer=new MutationObserver(this.events.mutate),this.observer.observe(document.body,{childList:!0,subtree:!0}))}onRender(){this.initializeWidgets(document.body)}onAjaxUpdate(e){this.initializeWidgets(e)}initializeWidgets(e){this.registeredWidgets.forEach((t=>{const n=e.querySelectorAll(`[data-control="${t.control}"]:not([data-widget-initialized])`);n.length&&n.forEach((e=>{if(e.dataset.widgetInitialized)return;const n=this.snowboard[t.widget](e);this.elements.push({element:e,instance:n}),e.dataset.widgetInitialized=!0,this.snowboard.globalEvent("backend.widget.initialized",e,n),"function"==typeof t.callback&&t.callback(n,e)}))}))}getWidget(e){const t=this.elements.find((t=>t.element===e));return t?t.instance:null}onMutation(e){const t=e.filter((e=>e.removedNodes.length)).map((e=>Array.from(e.removedNodes))).flat();t.length&&t.forEach((e=>{const t=this.elements.filter((t=>e.contains(t.element)));t.length&&t.forEach((e=>{e.instance.destruct(),this.elements=this.elements.filter((t=>t!==e))}))}))}}if(void 0===window.Snowboard)throw new Error("Snowboard must be loaded in order to use the Backend UI.");(e=>{e.addPlugin("backend.ajax.handler",s),e.addPlugin("backend.ui.eventHandler",a),e.addPlugin("backend.ui.widgetHandler",o),e["backend.ajax.handler"]().addPrefilter(),window.AssetManager={load:(t,n)=>{e.assetLoader().load(t).then((()=>{n&&"function"==typeof n&&n()}))}},window.assetManager=window.AssetManager})(window.Snowboard),window.Vue=i}},function(e){e.O(0,[429],(function(){return t=286,e(e.s=t);var t}));e.O()}]); \ No newline at end of file +"use strict";(self.webpackChunk_wintercms_wn_backend_module=self.webpackChunk_wintercms_wn_backend_module||[]).push([[476],{385:function(e,t,n){var r=n(35),i=n(171);class s extends Snowboard.Singleton{listens(){return{ready:"ready",ajaxFetchOptions:"ajaxFetchOptions",ajaxUpdateComplete:"ajaxUpdateComplete"}}ready(){window.jQuery&&((0,i.M)("render"),document.addEventListener("$render",(()=>{this.snowboard.globalEvent("render")})),window.jQuery(document).trigger("render"))}addPrefilter(){window.jQuery&&window.jQuery.ajaxPrefilter((e=>{this.hasToken()&&(e.headers||(e.headers={}),e.headers["X-CSRF-TOKEN"]=this.getToken())}))}ajaxFetchOptions(e){this.hasToken()&&(e.headers["X-CSRF-TOKEN"]=this.getToken())}ajaxUpdateComplete(){window.jQuery&&window.jQuery(document).trigger("render")}hasToken(){const e=document.querySelector('meta[name="csrf-token"]');return!!e&&!!e.hasAttribute("content")}getToken(){return document.querySelector('meta[name="csrf-token"]').getAttribute("content")}}class a extends Snowboard.PluginBase{construct(e,t){if(e instanceof Snowboard.PluginBase==!1)throw new Error("Event handling can only be applied to Snowboard classes.");if(!t)throw new Error("Event prefix is required.");this.instance=e,this.eventPrefix=t,this.events=[]}on(e,t){this.events.push({event:e,callback:t})}off(e,t){this.events=this.events.filter((n=>n.event!==e||n.callback!==t))}once(e,t){var n=this;const r=this.events.push({event:e,callback:function(){t(...arguments),n.events.splice(r-1,1)}})}fire(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;rt.event===e));let s=!1;i.forEach((e=>{s||!1===e.callback(...n)&&(s=!0)})),s||this.snowboard.globalEvent(`${this.eventPrefix}.${e}`,...n)}firePromise(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;rt.event===e)),s=i.filter((e=>null!==e),i.map((e=>e.callback(...n))));Promise.all(s).then((()=>{this.snowboard.globalPromiseEvent(`${this.eventPrefix}.${e}`,...n)}))}}class o extends Snowboard.Singleton{construct(){this.changedElements=new Set}listens(){return{ready:"onReady",render:"setUpTriggers","trigger.action":"onTriggerAction"}}onReady(){(0,i.M)("oc.triggerOn.update"),(0,i.M)("change"),document.addEventListener("$change",(e=>{if(e.throughTrigger)return;const t=new InputEvent("change");t.throughTrigger=!0,e.target.dispatchEvent(t)})),this.setUpTriggers()}setUpTriggers(){Array.from(document.querySelectorAll("*")).filter((e=>[...e.attributes].filter((e=>{let{name:t}=e;return t.startsWith("data-trigger-")})).length>0)).forEach((e=>{const t=snowboard.trigger(e);e.addEventListener("$oc.triggerOn.update",(()=>{t.runEvents(e)}))}))}onTriggerAction(e,t,n,r){"show"!==n.name&&"hide"!==n.name||this.actionShow(n.parameters[0]?Array.from(e.querySelectorAll(n.parameters[0])):[e],"show"===n.name?r:!r)}actionShow(e,t){e.forEach((e=>{t&&e.classList.contains("hide")?e.classList.remove("hide"):t||e.classList.contains("hide")||e.classList.add("hide")}))}}class d extends Snowboard.Singleton{construct(){this.registeredWidgets=[],this.elements=[],this.events={mutate:e=>this.onMutation(e)},this.observer=null}listens(){return{ready:"onReady",render:"onRender",ajaxUpdate:"onAjaxUpdate"}}register(e,t,n){this.registeredWidgets.push({control:e,widget:t,callback:n})}unregister(e){this.registeredWidgets=this.registeredWidgets.filter((t=>t.control!==e))}onReady(){this.initializeWidgets(document.body),this.observer||(this.observer=new MutationObserver(this.events.mutate),this.observer.observe(document.body,{childList:!0,subtree:!0}))}onRender(){this.initializeWidgets(document.body)}onAjaxUpdate(e){this.initializeWidgets(e)}initializeWidgets(e){this.registeredWidgets.forEach((t=>{const n=e.querySelectorAll(`[data-control="${t.control}"]:not([data-widget-initialized])`);n.length&&n.forEach((e=>{if(e.dataset.widgetInitialized)return;const n=this.snowboard[t.widget](e);this.elements.push({element:e,instance:n}),e.dataset.widgetInitialized=!0,this.snowboard.globalEvent("backend.widget.initialized",e,n),"function"==typeof t.callback&&t.callback(n,e)}))}))}getWidget(e){const t=this.elements.find((t=>t.element===e));return t?t.instance:null}onMutation(e){const t=e.filter((e=>e.removedNodes.length)).map((e=>Array.from(e.removedNodes))).flat();t.length&&t.forEach((e=>{const t=this.elements.filter((t=>e.contains(t.element)));t.length&&t.forEach((e=>{e.instance.destruct(),this.elements=this.elements.filter((t=>t!==e))}))}))}}if(void 0===window.Snowboard)throw new Error("Snowboard must be loaded in order to use the Backend UI.");(e=>{e.addPlugin("backend.ajax.handler",s),e.addPlugin("backend.ui.eventHandler",a),e.addPlugin("backend.input.triggerHandler",o),e.addPlugin("backend.ui.widgetHandler",d),e["backend.ajax.handler"]().addPrefilter(),window.AssetManager={load:(t,n)=>{e.assetLoader().load(t).then((()=>{n&&"function"==typeof n&&n()}))}},window.assetManager=window.AssetManager})(window.Snowboard),window.Vue=r}},function(e){e.O(0,[429],(function(){return t=385,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/modules/backend/assets/ui/js/build/vendor.js b/modules/backend/assets/ui/js/build/vendor.js index 6859925175..d0f8b2b5a2 100644 --- a/modules/backend/assets/ui/js/build/vendor.js +++ b/modules/backend/assets/ui/js/build/vendor.js @@ -1,12 +1,13 @@ -"use strict";(self.webpackChunk_wintercms_wn_backend_module=self.webpackChunk_wintercms_wn_backend_module||[]).push([[429],{935:function(e){e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var s=0;s{const n=e.__vccOpts||e;for(const[e,r]of t)n[e]=r;return n}},35:function(e,t,n){n.r(t),n.d(t,{BaseTransition:function(){return $r},BaseTransitionPropsValidators:function(){return Pr},Comment:function(){return Us},DeprecationTypes:function(){return oc},EffectScope:function(){return he},ErrorCodes:function(){return hn},ErrorTypeStrings:function(){return Qi},Fragment:function(){return Bs},KeepAlive:function(){return Gr},ReactiveEffect:function(){return _e},Static:function(){return js},Suspense:function(){return dr},Teleport:function(){return Ds},Text:function(){return Hs},TrackOpTypes:function(){return cn},Transition:function(){return fc},TransitionGroup:function(){return sl},TriggerOpTypes:function(){return ln},VueElement:function(){return Qc},assertNumber:function(){return pn},callWithAsyncErrorHandling:function(){return vn},callWithErrorHandling:function(){return gn},camelize:function(){return M},capitalize:function(){return $},cloneVNode:function(){return ui},compatUtils:function(){return rc},compile:function(){return Ld},computed:function(){return qi},createApp:function(){return $l},createBlock:function(){return Zs},createCommentVNode:function(){return pi},createElementBlock:function(){return Qs},createElementVNode:function(){return ii},createHydrationRenderer:function(){return ks},createPropsRestProxy:function(){return Do},createRenderer:function(){return Es},createSSRApp:function(){return Fl},createSlots:function(){return go},createStaticVNode:function(){return di},createTextVNode:function(){return fi},createVNode:function(){return ci},customRef:function(){return en},defineAsyncComponent:function(){return Wr},defineComponent:function(){return jr},defineCustomElement:function(){return Jc},defineEmits:function(){return ko},defineExpose:function(){return wo},defineModel:function(){return Io},defineOptions:function(){return Ao},defineProps:function(){return Eo},defineSSRCustomElement:function(){return Yc},defineSlots:function(){return No},devtools:function(){return Zi},effect:function(){return Te},effectScope:function(){return me},getCurrentInstance:function(){return Ci},getCurrentScope:function(){return ve},getTransitionRawChildren:function(){return Ur},guardReactiveProps:function(){return ai},h:function(){return Ki},handleError:function(){return yn},hasInjectionContext:function(){return os},hydrate:function(){return Pl},initCustomFormatter:function(){return zi},initDirectivesForSSR:function(){return Hl},inject:function(){return rs},isMemoSame:function(){return Ji},isProxy:function(){return Lt},isReactive:function(){return Rt},isReadonly:function(){return Ot},isRef:function(){return jt},isRuntimeOnly:function(){return Pi},isShallow:function(){return Mt},isVNode:function(){return ei},markRaw:function(){return $t},mergeDefaults:function(){return $o},mergeModels:function(){return Fo},mergeProps:function(){return vi},nextTick:function(){return An},normalizeClass:function(){return Q},normalizeProps:function(){return Z},normalizeStyle:function(){return z},onActivated:function(){return Yr},onBeforeMount:function(){return oo},onBeforeUnmount:function(){return lo},onBeforeUpdate:function(){return io},onDeactivated:function(){return Xr},onErrorCaptured:function(){return ho},onMounted:function(){return so},onRenderTracked:function(){return po},onRenderTriggered:function(){return fo},onScopeDispose:function(){return ye},onServerPrefetch:function(){return uo},onUnmounted:function(){return ao},onUpdated:function(){return co},openBlock:function(){return Ks},popScopeId:function(){return zn},provide:function(){return ns},proxyRefs:function(){return Qt},pushScopeId:function(){return Kn},queuePostFlushCb:function(){return Rn},reactive:function(){return kt},readonly:function(){return At},ref:function(){return qt},registerRuntimeCompiler:function(){return Li},render:function(){return Ll},renderList:function(){return mo},renderSlot:function(){return vo},resolveComponent:function(){return or},resolveDirective:function(){return cr},resolveDynamicComponent:function(){return ir},resolveFilter:function(){return nc},resolveTransitionHooks:function(){return Dr},setBlockTracking:function(){return Ys},setDevtoolsHook:function(){return ec},setTransitionHooks:function(){return Hr},shallowReactive:function(){return wt},shallowReadonly:function(){return Nt},shallowRef:function(){return Wt},ssrContextKey:function(){return yr},ssrUtils:function(){return tc},stop:function(){return Ee},toDisplayString:function(){return ae},toHandlerKey:function(){return F},toHandlers:function(){return _o},toRaw:function(){return Pt},toRef:function(){return on},toRefs:function(){return tn},toValue:function(){return Yt},transformVNodeArgs:function(){return ni},triggerRef:function(){return Gt},unref:function(){return Jt},useAttrs:function(){return Mo},useCssModule:function(){return Zc},useCssVars:function(){return Oc},useModel:function(){return Wi},useSSRContext:function(){return _r},useSlots:function(){return Oo},useTransitionState:function(){return Mr},vModelCheckbox:function(){return hl},vModelDynamic:function(){return Sl},vModelRadio:function(){return gl},vModelSelect:function(){return vl},vModelText:function(){return pl},vShow:function(){return Nc},version:function(){return Yi},warn:function(){return Xi},watch:function(){return Tr},watchEffect:function(){return br},watchPostEffect:function(){return Sr},watchSyncEffect:function(){return xr},withAsyncContext:function(){return Vo},withCtx:function(){return Jn},withDefaults:function(){return Ro},withDirectives:function(){return Nr},withKeys:function(){return Al},withMemo:function(){return Gi},withModifiers:function(){return kl},withScopeId:function(){return Gn}});var r={}; +"use strict";(self.webpackChunk_wintercms_wn_backend_module=self.webpackChunk_wintercms_wn_backend_module||[]).push([[429],{935:function(e){e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var s=0;s{const n=e.__vccOpts||e;for(const[e,r]of t)n[e]=r;return n}},35:function(e,t,n){n.r(t),n.d(t,{BaseTransition:function(){return Bs},BaseTransitionPropsValidators:function(){return Fs},Comment:function(){return ni},DeprecationTypes:function(){return yc},EffectScope:function(){return ye},ErrorCodes:function(){return yn},ErrorTypeStrings:function(){return dc},Fragment:function(){return ei},KeepAlive:function(){return Es},ReactiveEffect:function(){return Ce},Static:function(){return ri},Suspense:function(){return gr},Teleport:function(){return Qs},Text:function(){return ti},TrackOpTypes:function(){return fn},Transition:function(){return kc},TransitionGroup:function(){return _l},TriggerOpTypes:function(){return dn},VueElement:function(){return pl},assertNumber:function(){return vn},callWithAsyncErrorHandling:function(){return Sn},callWithErrorHandling:function(){return _n},camelize:function(){return M},capitalize:function(){return $},cloneVNode:function(){return Ci},compatUtils:function(){return vc},compile:function(){return Jd},computed:function(){return oc},createApp:function(){return Xl},createBlock:function(){return pi},createCommentVNode:function(){return Ei},createElementBlock:function(){return di},createElementVNode:function(){return bi},createHydrationRenderer:function(){return is},createPropsRestProxy:function(){return ao},createRenderer:function(){return ss},createSSRApp:function(){return Ql},createSlots:function(){return Dr},createStaticVNode:function(){return ki},createTextVNode:function(){return Ti},createVNode:function(){return _i},customRef:function(){return on},defineAsyncComponent:function(){return Br},defineComponent:function(){return Fr},defineCustomElement:function(){return ul},defineEmits:function(){return Xr},defineExpose:function(){return Qr},defineModel:function(){return to},defineOptions:function(){return Zr},defineProps:function(){return Jr},defineSSRCustomElement:function(){return fl},defineSlots:function(){return eo},devtools:function(){return pc},effect:function(){return Ae},effectScope:function(){return be},getCurrentInstance:function(){return $i},getCurrentScope:function(){return Se},getTransitionRawChildren:function(){return Ws},guardReactiveProps:function(){return xi},h:function(){return ic},handleError:function(){return xn},hasInjectionContext:function(){return Io},hydrate:function(){return Jl},initCustomFormatter:function(){return cc},initDirectivesForSSR:function(){return na},inject:function(){return No},isMemoSame:function(){return ac},isProxy:function(){return Ft},isReactive:function(){return Pt},isReadonly:function(){return $t},isRef:function(){return Kt},isRuntimeOnly:function(){return Yi},isShallow:function(){return Dt},isVNode:function(){return hi},markRaw:function(){return Bt},mergeDefaults:function(){return co},mergeModels:function(){return lo},mergeProps:function(){return Ii},nextTick:function(){return On},normalizeClass:function(){return Q},normalizeProps:function(){return Z},normalizeStyle:function(){return K},onActivated:function(){return As},onBeforeMount:function(){return Tr},onBeforeUnmount:function(){return Ar},onBeforeUpdate:function(){return Er},onDeactivated:function(){return Ns},onErrorCaptured:function(){return Mr},onMounted:function(){return kr},onRenderTracked:function(){return Or},onRenderTriggered:function(){return Rr},onScopeDispose:function(){return xe},onServerPrefetch:function(){return Ir},onUnmounted:function(){return Nr},onUpdated:function(){return wr},openBlock:function(){return ii},popScopeId:function(){return Xn},provide:function(){return Ao},proxyRefs:function(){return nn},pushScopeId:function(){return Jn},queuePostFlushCb:function(){return Pn},reactive:function(){return It},readonly:function(){return Ot},ref:function(){return Yt},registerRuntimeCompiler:function(){return Ki},render:function(){return Gl},renderList:function(){return $r},renderSlot:function(){return Hr},resolveComponent:function(){return lr},resolveDirective:function(){return fr},resolveDynamicComponent:function(){return ur},resolveFilter:function(){return gc},resolveTransitionHooks:function(){return Hs},setBlockTracking:function(){return ui},setDevtoolsHook:function(){return hc},setTransitionHooks:function(){return zs},shallowReactive:function(){return Rt},shallowReadonly:function(){return Mt},shallowRef:function(){return Gt},ssrContextKey:function(){return hs},ssrUtils:function(){return mc},stop:function(){return Ne},toDisplayString:function(){return pe},toHandlerKey:function(){return D},toHandlers:function(){return qr},toRaw:function(){return Vt},toRef:function(){return an},toRefs:function(){return sn},toValue:function(){return en},transformVNodeArgs:function(){return gi},triggerRef:function(){return Qt},unref:function(){return Zt},useAttrs:function(){return oo},useCssModule:function(){return hl},useCssVars:function(){return Wc},useModel:function(){return sc},useSSRContext:function(){return ms},useSlots:function(){return ro},useTransitionState:function(){return $s},vModelCheckbox:function(){return Nl},vModelDynamic:function(){return $l},vModelRadio:function(){return Rl},vModelSelect:function(){return Ol},vModelText:function(){return Al},vShow:function(){return jc},version:function(){return uc},warn:function(){return fc},watch:function(){return _s},watchEffect:function(){return gs},watchPostEffect:function(){return vs},watchSyncEffect:function(){return ys},withAsyncContext:function(){return uo},withCtx:function(){return Zn},withDefaults:function(){return no},withDirectives:function(){return Lr},withKeys:function(){return jl},withMemo:function(){return lc},withModifiers:function(){return Ul},withScopeId:function(){return Qn}});var r={}; /** -* @vue/shared v3.4.21 +* @vue/shared v3.4.31 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/ -function o(e,t){const n=new Set(e.split(","));return t?e=>n.has(e.toLowerCase()):e=>n.has(e)}n.r(r),n.d(r,{BaseTransition:function(){return $r},BaseTransitionPropsValidators:function(){return Pr},Comment:function(){return Us},DeprecationTypes:function(){return oc},EffectScope:function(){return he},ErrorCodes:function(){return hn},ErrorTypeStrings:function(){return Qi},Fragment:function(){return Bs},KeepAlive:function(){return Gr},ReactiveEffect:function(){return _e},Static:function(){return js},Suspense:function(){return dr},Teleport:function(){return Ds},Text:function(){return Hs},TrackOpTypes:function(){return cn},Transition:function(){return fc},TransitionGroup:function(){return sl},TriggerOpTypes:function(){return ln},VueElement:function(){return Qc},assertNumber:function(){return pn},callWithAsyncErrorHandling:function(){return vn},callWithErrorHandling:function(){return gn},camelize:function(){return M},capitalize:function(){return $},cloneVNode:function(){return ui},compatUtils:function(){return rc},computed:function(){return qi},createApp:function(){return $l},createBlock:function(){return Zs},createCommentVNode:function(){return pi},createElementBlock:function(){return Qs},createElementVNode:function(){return ii},createHydrationRenderer:function(){return ks},createPropsRestProxy:function(){return Do},createRenderer:function(){return Es},createSSRApp:function(){return Fl},createSlots:function(){return go},createStaticVNode:function(){return di},createTextVNode:function(){return fi},createVNode:function(){return ci},customRef:function(){return en},defineAsyncComponent:function(){return Wr},defineComponent:function(){return jr},defineCustomElement:function(){return Jc},defineEmits:function(){return ko},defineExpose:function(){return wo},defineModel:function(){return Io},defineOptions:function(){return Ao},defineProps:function(){return Eo},defineSSRCustomElement:function(){return Yc},defineSlots:function(){return No},devtools:function(){return Zi},effect:function(){return Te},effectScope:function(){return me},getCurrentInstance:function(){return Ci},getCurrentScope:function(){return ve},getTransitionRawChildren:function(){return Ur},guardReactiveProps:function(){return ai},h:function(){return Ki},handleError:function(){return yn},hasInjectionContext:function(){return os},hydrate:function(){return Pl},initCustomFormatter:function(){return zi},initDirectivesForSSR:function(){return Hl},inject:function(){return rs},isMemoSame:function(){return Ji},isProxy:function(){return Lt},isReactive:function(){return Rt},isReadonly:function(){return Ot},isRef:function(){return jt},isRuntimeOnly:function(){return Pi},isShallow:function(){return Mt},isVNode:function(){return ei},markRaw:function(){return $t},mergeDefaults:function(){return $o},mergeModels:function(){return Fo},mergeProps:function(){return vi},nextTick:function(){return An},normalizeClass:function(){return Q},normalizeProps:function(){return Z},normalizeStyle:function(){return z},onActivated:function(){return Yr},onBeforeMount:function(){return oo},onBeforeUnmount:function(){return lo},onBeforeUpdate:function(){return io},onDeactivated:function(){return Xr},onErrorCaptured:function(){return ho},onMounted:function(){return so},onRenderTracked:function(){return po},onRenderTriggered:function(){return fo},onScopeDispose:function(){return ye},onServerPrefetch:function(){return uo},onUnmounted:function(){return ao},onUpdated:function(){return co},openBlock:function(){return Ks},popScopeId:function(){return zn},provide:function(){return ns},proxyRefs:function(){return Qt},pushScopeId:function(){return Kn},queuePostFlushCb:function(){return Rn},reactive:function(){return kt},readonly:function(){return At},ref:function(){return qt},registerRuntimeCompiler:function(){return Li},render:function(){return Ll},renderList:function(){return mo},renderSlot:function(){return vo},resolveComponent:function(){return or},resolveDirective:function(){return cr},resolveDynamicComponent:function(){return ir},resolveFilter:function(){return nc},resolveTransitionHooks:function(){return Dr},setBlockTracking:function(){return Ys},setDevtoolsHook:function(){return ec},setTransitionHooks:function(){return Hr},shallowReactive:function(){return wt},shallowReadonly:function(){return Nt},shallowRef:function(){return Wt},ssrContextKey:function(){return yr},ssrUtils:function(){return tc},stop:function(){return Ee},toDisplayString:function(){return ae},toHandlerKey:function(){return F},toHandlers:function(){return _o},toRaw:function(){return Pt},toRef:function(){return on},toRefs:function(){return tn},toValue:function(){return Yt},transformVNodeArgs:function(){return ni},triggerRef:function(){return Gt},unref:function(){return Jt},useAttrs:function(){return Mo},useCssModule:function(){return Zc},useCssVars:function(){return Oc},useModel:function(){return Wi},useSSRContext:function(){return _r},useSlots:function(){return Oo},useTransitionState:function(){return Mr},vModelCheckbox:function(){return hl},vModelDynamic:function(){return Sl},vModelRadio:function(){return gl},vModelSelect:function(){return vl},vModelText:function(){return pl},vShow:function(){return Nc},version:function(){return Yi},warn:function(){return Xi},watch:function(){return Tr},watchEffect:function(){return br},watchPostEffect:function(){return Sr},watchSyncEffect:function(){return xr},withAsyncContext:function(){return Vo},withCtx:function(){return Jn},withDefaults:function(){return Ro},withDirectives:function(){return Nr},withKeys:function(){return Al},withMemo:function(){return Gi},withModifiers:function(){return kl},withScopeId:function(){return Gn}});const s={},i=[],c=()=>{},l=()=>!1,a=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),u=e=>e.startsWith("onUpdate:"),f=Object.assign,d=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},p=Object.prototype.hasOwnProperty,h=(e,t)=>p.call(e,t),m=Array.isArray,g=e=>"[object Map]"===E(e),v=e=>"[object Set]"===E(e),y=e=>"[object Date]"===E(e),_=e=>"function"==typeof e,b=e=>"string"==typeof e,S=e=>"symbol"==typeof e,x=e=>null!==e&&"object"==typeof e,C=e=>(x(e)||_(e))&&_(e.then)&&_(e.catch),T=Object.prototype.toString,E=e=>T.call(e),k=e=>E(e).slice(8,-1),w=e=>"[object Object]"===E(e),A=e=>b(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,N=o(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),I=o("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),R=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},O=/-(\w)/g,M=R((e=>e.replace(O,((e,t)=>t?t.toUpperCase():"")))),L=/\B([A-Z])/g,P=R((e=>e.replace(L,"-$1").toLowerCase())),$=R((e=>e.charAt(0).toUpperCase()+e.slice(1))),F=R((e=>e?`on${$(e)}`:"")),D=(e,t)=>!Object.is(e,t),V=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},H=e=>{const t=parseFloat(e);return isNaN(t)?e:t},U=e=>{const t=b(e)?Number(e):NaN;return isNaN(t)?e:t};let j;const q=()=>j||(j="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n.g?n.g:{});const W={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},K=o("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error");function z(e){if(m(e)){const t={};for(let n=0;n{if(e){const n=e.split(J);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function Q(e){let t="";if(b(e))t=e;else if(m(e))for(let n=0;nce(e,t)))}const ae=e=>b(e)?e:null==e?"":m(e)||x(e)&&(e.toString===T||!_(e.toString))?JSON.stringify(e,ue,2):String(e),ue=(e,t)=>t&&t.__v_isRef?ue(e,t.value):g(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],r)=>(e[fe(t,r)+" =>"]=n,e)),{})}:v(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>fe(e)))}:S(t)?fe(t):!x(t)||m(t)||w(t)?t:String(t),fe=(e,t="")=>{var n;return S(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};let de,pe;class he{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=de,!e&&de&&(this.index=(de.scopes||(de.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=de;try{return de=this,e()}finally{de=t}}else 0}on(){de=this}off(){de=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}1===this._dirtyLevel&&(this._dirtyLevel=0),Ie()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=ke,t=pe;try{return ke=!0,pe=this,this._runnings++,Se(this),this.fn()}finally{xe(this),this._runnings--,pe=t,ke=e}}stop(){var e;this.active&&(Se(this),xe(this),null==(e=this.onStop)||e.call(this),this.active=!1)}}function be(e){return e.value}function Se(e){e._trackId++,e._depsLength=0}function xe(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()}));t&&(f(n,t),t.scope&&ge(n,t.scope)),t&&t.lazy||n.run();const r=n.run.bind(n);return r.effect=n,r}function Ee(e){e.effect.stop()}let ke=!0,we=0;const Ae=[];function Ne(){Ae.push(ke),ke=!1}function Ie(){const e=Ae.pop();ke=void 0===e||e}function Re(){we++}function Oe(){for(we--;!we&&Le.length;)Le.shift()()}function Me(e,t,n){if(t.get(e)!==e._trackId){t.set(e,e._trackId);const n=e.deps[e._depsLength];n!==t?(n&&Ce(n,e),e.deps[e._depsLength++]=t):e._depsLength++}}const Le=[];function Pe(e,t,n){Re();for(const n of e.keys()){let r;n._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},Fe=new WeakMap,De=Symbol(""),Ve=Symbol("");function Be(e,t,n){if(ke&&pe){let t=Fe.get(e);t||Fe.set(e,t=new Map);let r=t.get(n);r||t.set(n,r=$e((()=>t.delete(n)))),Me(pe,r)}}function He(e,t,n,r,o,s){const i=Fe.get(e);if(!i)return;let c=[];if("clear"===t)c=[...i.values()];else if("length"===n&&m(e)){const e=Number(r);i.forEach(((t,n)=>{("length"===n||!S(n)&&n>=e)&&c.push(t)}))}else switch(void 0!==n&&c.push(i.get(n)),t){case"add":m(e)?A(n)&&c.push(i.get("length")):(c.push(i.get(De)),g(e)&&c.push(i.get(Ve)));break;case"delete":m(e)||(c.push(i.get(De)),g(e)&&c.push(i.get(Ve)));break;case"set":g(e)&&c.push(i.get(De))}Re();for(const e of c)e&&Pe(e,4);Oe()}const Ue=o("__proto__,__v_isRef,__isVue"),je=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(S)),qe=We();function We(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Pt(this);for(let e=0,t=this.length;e{e[t]=function(...e){Ne(),Re();const n=Pt(this)[t].apply(this,e);return Oe(),Ie(),n}})),e}function Ke(e){const t=Pt(this);return Be(t,0,e),t.hasOwnProperty(e)}class ze{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const r=this._isReadonly,o=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return o;if("__v_raw"===t)return n===(r?o?Et:Tt:o?Ct:xt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const s=m(e);if(!r){if(s&&h(qe,t))return Reflect.get(qe,t,n);if("hasOwnProperty"===t)return Ke}const i=Reflect.get(e,t,n);return(S(t)?je.has(t):Ue(t))?i:(r||Be(e,0,t),o?i:jt(i)?s&&A(t)?i:i.value:x(i)?r?At(i):kt(i):i)}}class Ge extends ze{constructor(e=!1){super(!1,e)}set(e,t,n,r){let o=e[t];if(!this._isShallow){const t=Ot(o);if(Mt(n)||Ot(n)||(o=Pt(o),n=Pt(n)),!m(e)&&jt(o)&&!jt(n))return!t&&(o.value=n,!0)}const s=m(e)&&A(t)?Number(t)e,tt=e=>Reflect.getPrototypeOf(e);function nt(e,t,n=!1,r=!1){const o=Pt(e=e.__v_raw),s=Pt(t);n||(D(t,s)&&Be(o,0,t),Be(o,0,s));const{has:i}=tt(o),c=r?et:n?Dt:Ft;return i.call(o,t)?c(e.get(t)):i.call(o,s)?c(e.get(s)):void(e!==o&&e.get(t))}function rt(e,t=!1){const n=this.__v_raw,r=Pt(n),o=Pt(e);return t||(D(e,o)&&Be(r,0,e),Be(r,0,o)),e===o?n.has(e):n.has(e)||n.has(o)}function ot(e,t=!1){return e=e.__v_raw,!t&&Be(Pt(e),0,De),Reflect.get(e,"size",e)}function st(e){e=Pt(e);const t=Pt(this);return tt(t).has.call(t,e)||(t.add(e),He(t,"add",e,e)),this}function it(e,t){t=Pt(t);const n=Pt(this),{has:r,get:o}=tt(n);let s=r.call(n,e);s||(e=Pt(e),s=r.call(n,e));const i=o.call(n,e);return n.set(e,t),s?D(t,i)&&He(n,"set",e,t):He(n,"add",e,t),this}function ct(e){const t=Pt(this),{has:n,get:r}=tt(t);let o=n.call(t,e);o||(e=Pt(e),o=n.call(t,e));r&&r.call(t,e);const s=t.delete(e);return o&&He(t,"delete",e,void 0),s}function lt(){const e=Pt(this),t=0!==e.size,n=e.clear();return t&&He(e,"clear",void 0,void 0),n}function at(e,t){return function(n,r){const o=this,s=o.__v_raw,i=Pt(s),c=t?et:e?Dt:Ft;return!e&&Be(i,0,De),s.forEach(((e,t)=>n.call(r,c(e),c(t),o)))}}function ut(e,t,n){return function(...r){const o=this.__v_raw,s=Pt(o),i=g(s),c="entries"===e||e===Symbol.iterator&&i,l="keys"===e&&i,a=o[e](...r),u=n?et:t?Dt:Ft;return!t&&Be(s,0,l?Ve:De),{next(){const{value:e,done:t}=a.next();return t?{value:e,done:t}:{value:c?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function ft(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function dt(){const e={get(e){return nt(this,e)},get size(){return ot(this)},has:rt,add:st,set:it,delete:ct,clear:lt,forEach:at(!1,!1)},t={get(e){return nt(this,e,!1,!0)},get size(){return ot(this)},has:rt,add:st,set:it,delete:ct,clear:lt,forEach:at(!1,!0)},n={get(e){return nt(this,e,!0)},get size(){return ot(this,!0)},has(e){return rt.call(this,e,!0)},add:ft("add"),set:ft("set"),delete:ft("delete"),clear:ft("clear"),forEach:at(!0,!1)},r={get(e){return nt(this,e,!0,!0)},get size(){return ot(this,!0)},has(e){return rt.call(this,e,!0)},add:ft("add"),set:ft("set"),delete:ft("delete"),clear:ft("clear"),forEach:at(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((o=>{e[o]=ut(o,!1,!1),n[o]=ut(o,!0,!1),t[o]=ut(o,!1,!0),r[o]=ut(o,!0,!0)})),[e,n,t,r]}const[pt,ht,mt,gt]=dt();function vt(e,t){const n=t?e?gt:mt:e?ht:pt;return(t,r,o)=>"__v_isReactive"===r?!e:"__v_isReadonly"===r?e:"__v_raw"===r?t:Reflect.get(h(n,r)&&r in t?n:t,r,o)}const yt={get:vt(!1,!1)},_t={get:vt(!1,!0)},bt={get:vt(!0,!1)},St={get:vt(!0,!0)};const xt=new WeakMap,Ct=new WeakMap,Tt=new WeakMap,Et=new WeakMap;function kt(e){return Ot(e)?e:It(e,!1,Ye,yt,xt)}function wt(e){return It(e,!1,Qe,_t,Ct)}function At(e){return It(e,!0,Xe,bt,Tt)}function Nt(e){return It(e,!0,Ze,St,Et)}function It(e,t,n,r,o){if(!x(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=(c=e).__v_skip||!Object.isExtensible(c)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(k(c));var c;if(0===i)return e;const l=new Proxy(e,2===i?r:n);return o.set(e,l),l}function Rt(e){return Ot(e)?Rt(e.__v_raw):!(!e||!e.__v_isReactive)}function Ot(e){return!(!e||!e.__v_isReadonly)}function Mt(e){return!(!e||!e.__v_isShallow)}function Lt(e){return Rt(e)||Ot(e)}function Pt(e){const t=e&&e.__v_raw;return t?Pt(t):e}function $t(e){return Object.isExtensible(e)&&B(e,"__v_skip",!0),e}const Ft=e=>x(e)?kt(e):e,Dt=e=>x(e)?At(e):e;class Vt{constructor(e,t,n,r){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new _e((()=>e(this._value)),(()=>Ut(this,2===this.effect._dirtyLevel?2:3))),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=n}get value(){const e=Pt(this);return e._cacheable&&!e.effect.dirty||!D(e._value,e._value=e.effect.run())||Ut(e,4),Ht(e),e.effect._dirtyLevel>=2&&Ut(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function Bt(e,t,n=!1){let r,o;const s=_(e);s?(r=e,o=c):(r=e.get,o=e.set);return new Vt(r,o,s||!o,n)}function Ht(e){var t;ke&&pe&&(e=Pt(e),Me(pe,null!=(t=e.dep)?t:e.dep=$e((()=>e.dep=void 0),e instanceof Vt?e:void 0)))}function Ut(e,t=4,n){const r=(e=Pt(e)).dep;r&&Pe(r,t)}function jt(e){return!(!e||!0!==e.__v_isRef)}function qt(e){return Kt(e,!1)}function Wt(e){return Kt(e,!0)}function Kt(e,t){return jt(e)?e:new zt(e,t)}class zt{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Pt(e),this._value=t?e:Ft(e)}get value(){return Ht(this),this._value}set value(e){const t=this.__v_isShallow||Mt(e)||Ot(e);e=t?e:Pt(e),D(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:Ft(e),Ut(this,4))}}function Gt(e){Ut(e,4)}function Jt(e){return jt(e)?e.value:e}function Yt(e){return _(e)?e():Jt(e)}const Xt={get:(e,t,n)=>Jt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return jt(o)&&!jt(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Qt(e){return Rt(e)?e:new Proxy(e,Xt)}class Zt{constructor(e){this.dep=void 0,this.__v_isRef=!0;const{get:t,set:n}=e((()=>Ht(this)),(()=>Ut(this)));this._get=t,this._set=n}get value(){return this._get()}set value(e){this._set(e)}}function en(e){return new Zt(e)}function tn(e){const t=m(e)?new Array(e.length):{};for(const n in e)t[n]=sn(e,n);return t}class nn{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return e=Pt(this._object),t=this._key,null==(n=Fe.get(e))?void 0:n.get(t);var e,t,n}}class rn{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function on(e,t,n){return jt(e)?e:_(e)?new rn(e):x(e)&&arguments.length>1?sn(e,t,n):qt(e)}function sn(e,t,n){const r=e[t];return jt(r)?r:new nn(e,t,n)}const cn={GET:"get",HAS:"has",ITERATE:"iterate"},ln={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},an=[];function un(e,...t){Ne();const n=an.length?an[an.length-1].component:null,r=n&&n.appContext.config.warnHandler,o=function(){let e=an[an.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const r=e.component&&e.component.parent;e=r&&r.vnode}return t}();if(r)gn(r,n,11,[e+t.map((e=>{var t,n;return null!=(n=null==(t=e.toString)?void 0:t.call(e))?n:JSON.stringify(e)})).join(""),n&&n.proxy,o.map((({vnode:e})=>`at <${Ui(n,e.type)}>`)).join("\n"),o]);else{const n=[`[Vue warn]: ${e}`,...t];o.length&&n.push("\n",...function(e){const t=[];return e.forEach(((e,n)=>{t.push(...0===n?[]:["\n"],...function({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",r=!!e.component&&null==e.component.parent,o=` at <${Ui(e.component,e.type,r)}`,s=">"+n;return e.props?[o,...fn(e.props),s]:[o+s]}(e))})),t}(o)),console.warn(...n)}Ie()}function fn(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach((n=>{t.push(...dn(n,e[n]))})),n.length>3&&t.push(" ..."),t}function dn(e,t,n){return b(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):"number"==typeof t||"boolean"==typeof t||null==t?n?t:[`${e}=${t}`]:jt(t)?(t=dn(e,Pt(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):_(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Pt(t),n?t:[`${e}=`,t])}function pn(e,t){}const hn={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},mn={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function gn(e,t,n,r){try{return r?e(...r):e()}catch(e){yn(e,t,n)}}function vn(e,t,n,r){if(_(e)){const o=gn(e,t,n,r);return o&&C(o)&&o.catch((e=>{yn(e,t,n)})),o}const o=[];for(let s=0;s>>1,o=Sn[r],s=Ln(o);sLn(e)-Ln(t)));if(Cn.length=0,Tn)return void Tn.push(...e);for(Tn=e,En=0;Ennull==e.id?1/0:e.id,Pn=(e,t)=>{const n=Ln(e)-Ln(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function $n(e){bn=!1,_n=!0,Sn.sort(Pn);try{for(xn=0;xnb(e)?e.trim():e))),t&&(o=n.map(H))}let l;let a=r[l=F(t)]||r[l=F(M(t))];!a&&i&&(a=r[l=F(P(t))]),a&&vn(a,e,6,o);const u=r[l+"Once"];if(u){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,vn(u,e,6,o)}}function Hn(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(void 0!==o)return o;const s=e.emits;let i={},c=!1;if(!_(e)){const r=e=>{const n=Hn(e,t,!0);n&&(c=!0,f(i,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return s||c?(m(s)?s.forEach((e=>i[e]=null)):f(i,s),x(e)&&r.set(e,i),i):(x(e)&&r.set(e,null),null)}function Un(e,t){return!(!e||!a(t))&&(t=t.slice(2).replace(/Once$/,""),h(e,t[0].toLowerCase()+t.slice(1))||h(e,P(t))||h(e,t))}let jn=null,qn=null;function Wn(e){const t=jn;return jn=e,qn=e&&e.type.__scopeId||null,t}function Kn(e){qn=e}function zn(){qn=null}const Gn=e=>Jn;function Jn(e,t=jn,n){if(!t)return e;if(e._n)return e;const r=(...n)=>{r._d&&Ys(-1);const o=Wn(t);let s;try{s=e(...n)}finally{Wn(o),r._d&&Ys(1)}return s};return r._n=!0,r._c=!0,r._d=!0,r}function Yn(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:s,propsOptions:[i],slots:c,attrs:l,emit:a,render:f,renderCache:d,data:p,setupState:h,ctx:m,inheritAttrs:g}=e;let v,y;const _=Wn(e);try{if(4&n.shapeFlag){const e=o||r,t=e;v=hi(f.call(t,e,d,s,h,p,m)),y=l}else{const e=t;0,v=hi(e.length>1?e(s,{attrs:l,slots:c,emit:a}):e(s,null)),y=t.props?l:Qn(l)}}catch(t){qs.length=0,yn(t,e,1),v=ci(Us)}let b=v;if(y&&!1!==g){const e=Object.keys(y),{shapeFlag:t}=b;e.length&&7&t&&(i&&e.some(u)&&(y=Zn(y,i)),b=ui(b,y))}return n.dirs&&(b=ui(b),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&(b.transition=n.transition),v=b,Wn(_),v}function Xn(e,t=!0){let n;for(let t=0;t{let t;for(const n in e)("class"===n||"style"===n||a(n))&&((t||(t={}))[n]=e[n]);return t},Zn=(e,t)=>{const n={};for(const r in e)u(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function er(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;oe.__isSuspense;let fr=0;const dr={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,s,i,c,l,a){if(null==e)!function(e,t,n,r,o,s,i,c,l){const{p:a,o:{createElement:u}}=l,f=u("div"),d=e.suspense=hr(e,o,r,t,f,n,s,i,c,l);a(null,d.pendingBranch=e.ssContent,f,null,r,d,s,i),d.deps>0?(pr(e,"onPending"),pr(e,"onFallback"),a(null,e.ssFallback,t,n,r,null,s,i),vr(d,e.ssFallback)):d.resolve(!1,!0)}(t,n,r,o,s,i,c,l,a);else{if(s&&s.deps>0&&!e.suspense.isInFallback)return t.suspense=e.suspense,t.suspense.vnode=t,void(t.el=e.el);!function(e,t,n,r,o,s,i,c,{p:l,um:a,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:h,pendingBranch:m,isInFallback:g,isHydrating:v}=f;if(m)f.pendingBranch=d,ti(d,m)?(l(m,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0?f.resolve():g&&(v||(l(h,p,n,r,o,null,s,i,c),vr(f,p)))):(f.pendingId=fr++,v?(f.isHydrating=!1,f.activeBranch=m):a(m,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),g?(l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0?f.resolve():(l(h,p,n,r,o,null,s,i,c),vr(f,p))):h&&ti(d,h)?(l(h,d,n,r,o,f,s,i,c),f.resolve(!0)):(l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0&&f.resolve()));else if(h&&ti(d,h))l(h,d,n,r,o,f,s,i,c),vr(f,d);else if(pr(t,"onPending"),f.pendingBranch=d,512&d.shapeFlag?f.pendingId=d.component.suspenseId:f.pendingId=fr++,l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0)f.resolve();else{const{timeout:e,pendingId:t}=f;e>0?setTimeout((()=>{f.pendingId===t&&f.fallback(p)}),e):0===e&&f.fallback(p)}}(e,t,n,r,o,i,c,l,a)}},hydrate:function(e,t,n,r,o,s,i,c,l){const a=t.suspense=hr(t,r,n,e.parentNode,document.createElement("div"),null,o,s,i,c,!0),u=l(e,a.pendingBranch=t.ssContent,n,a,s,i);0===a.deps&&a.resolve(!1,!0);return u},create:hr,normalize:function(e){const{shapeFlag:t,children:n}=e,r=32&t;e.ssContent=mr(r?n.default:n),e.ssFallback=r?mr(n.fallback):ci(Us)}};function pr(e,t){const n=e.props&&e.props[t];_(n)&&n()}function hr(e,t,n,r,o,s,i,c,l,a,u=!1){const{p:f,m:d,um:p,n:h,o:{parentNode:m,remove:g}}=a;let v;const y=function(e){var t;return null!=(null==(t=e.props)?void 0:t.suspensible)&&!1!==e.props.suspensible}(e);y&&(null==t?void 0:t.pendingBranch)&&(v=t.pendingId,t.deps++);const _=e.props?U(e.props.timeout):void 0;const b=s,S={vnode:e,parent:t,parentComponent:n,namespace:i,container:r,hiddenContainer:o,deps:0,pendingId:fr++,timeout:"number"==typeof _?_:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){const{vnode:r,activeBranch:o,pendingBranch:i,pendingId:c,effects:l,parentComponent:a,container:u}=S;let f=!1;S.isHydrating?S.isHydrating=!1:e||(f=o&&i.transition&&"out-in"===i.transition.mode,f&&(o.transition.afterLeave=()=>{c===S.pendingId&&(d(i,u,s===b?h(o):s,0),Rn(l))}),o&&(m(o.el)!==S.hiddenContainer&&(s=h(o)),p(o,a,S,!0)),f||d(i,u,s,0)),vr(S,i),S.pendingBranch=null,S.isInFallback=!1;let g=S.parent,_=!1;for(;g;){if(g.pendingBranch){g.effects.push(...l),_=!0;break}g=g.parent}_||f||Rn(l),S.effects=[],y&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),pr(r,"onResolve")},fallback(e){if(!S.pendingBranch)return;const{vnode:t,activeBranch:n,parentComponent:r,container:o,namespace:s}=S;pr(t,"onFallback");const i=h(n),a=()=>{S.isInFallback&&(f(null,e,o,i,r,null,s,c,l),vr(S,e))},u=e.transition&&"out-in"===e.transition.mode;u&&(n.transition.afterLeave=a),S.isInFallback=!0,p(n,r,null,!0),u||a()},move(e,t,n){S.activeBranch&&d(S.activeBranch,e,t,n),S.container=e},next(){return S.activeBranch&&h(S.activeBranch)},registerDep(e,t){const n=!!S.pendingBranch;n&&S.deps++;const r=e.vnode.el;e.asyncDep.catch((t=>{yn(t,e,0)})).then((o=>{if(e.isUnmounted||S.isUnmounted||S.pendingId!==e.suspenseId)return;e.asyncResolved=!0;const{vnode:s}=e;Mi(e,o,!1),r&&(s.el=r);const c=!r&&e.subTree.el;t(e,s,m(r||e.subTree.el),r?null:h(e.subTree),S,i,l),c&&g(c),tr(e,s.el),n&&0==--S.deps&&S.resolve()}))},unmount(e,t){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,e,t),S.pendingBranch&&p(S.pendingBranch,n,e,t)}};return S}function mr(e){let t;if(_(e)){const n=Js&&e._c;n&&(e._d=!1,Ks()),e=e(),n&&(e._d=!0,t=Ws,zs())}if(m(e)){const t=Xn(e);0,e=t}return e=hi(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter((t=>t!==e))),e}function gr(e,t){t&&t.pendingBranch?m(e)?t.effects.push(...e):t.effects.push(e):Rn(e)}function vr(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e;let o=t.el;for(;!o&&t.component;)o=(t=t.component.subTree).el;n.el=o,r&&r.subTree===n&&(r.vnode.el=o,tr(r,o))}const yr=Symbol.for("v-scx"),_r=()=>{{const e=rs(yr);return e}};function br(e,t){return Er(e,null,t)}function Sr(e,t){return Er(e,null,{flush:"post"})}function xr(e,t){return Er(e,null,{flush:"sync"})}const Cr={};function Tr(e,t,n){return Er(e,t,n)}function Er(e,t,{immediate:n,deep:r,flush:o,once:i,onTrack:l,onTrigger:a}=s){if(t&&i){const e=t;t=(...t)=>{e(...t),k()}}const u=xi,f=e=>!0===r?e:Ar(e,!1===r?1:void 0);let p,h,g=!1,v=!1;if(jt(e)?(p=()=>e.value,g=Mt(e)):Rt(e)?(p=()=>f(e),g=!0):m(e)?(v=!0,g=e.some((e=>Rt(e)||Mt(e))),p=()=>e.map((e=>jt(e)?e.value:Rt(e)?f(e):_(e)?gn(e,u,2):void 0))):p=_(e)?t?()=>gn(e,u,2):()=>(h&&h(),vn(e,u,3,[b])):c,t&&r){const e=p;p=()=>Ar(e())}let y,b=e=>{h=T.onStop=()=>{gn(e,u,4),h=T.onStop=void 0}};if(Ri){if(b=c,t?n&&vn(t,u,3,[p(),v?[]:void 0,b]):p(),"sync"!==o)return c;{const e=_r();y=e.__watcherHandles||(e.__watcherHandles=[])}}let S=v?new Array(e.length).fill(Cr):Cr;const x=()=>{if(T.active&&T.dirty)if(t){const e=T.run();(r||g||(v?e.some(((e,t)=>D(e,S[t]))):D(e,S)))&&(h&&h(),vn(t,u,3,[e,S===Cr?void 0:v&&S[0]===Cr?[]:S,b]),S=e)}else T.run()};let C;x.allowRecurse=!!t,"sync"===o?C=x:"post"===o?C=()=>Ts(x,u&&u.suspense):(x.pre=!0,u&&(x.id=u.uid),C=()=>Nn(x));const T=new _e(p,c,C),E=ve(),k=()=>{T.stop(),E&&d(E.effects,T)};return t?n?x():S=T.run():"post"===o?Ts(T.run.bind(T),u&&u.suspense):T.run(),y&&y.push(k),k}function kr(e,t,n){const r=this.proxy,o=b(e)?e.includes(".")?wr(r,e):()=>r[e]:e.bind(r,r);let s;_(t)?s=t:(s=t.handler,n=t);const i=ki(this),c=Er(o,s.bind(r),n);return i(),c}function wr(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e0){if(n>=t)return e;n++}if((r=r||new Set).has(e))return e;if(r.add(e),jt(e))Ar(e.value,t,n,r);else if(m(e))for(let o=0;o{Ar(e,t,n,r)}));else if(w(e))for(const o in e)Ar(e[o],t,n,r);return e}function Nr(e,t){if(null===jn)return e;const n=Di(jn)||jn.proxy,r=e.dirs||(e.dirs=[]);for(let e=0;e{e.isMounted=!0})),lo((()=>{e.isUnmounting=!0})),e}const Lr=[Function,Array],Pr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Lr,onEnter:Lr,onAfterEnter:Lr,onEnterCancelled:Lr,onBeforeLeave:Lr,onLeave:Lr,onAfterLeave:Lr,onLeaveCancelled:Lr,onBeforeAppear:Lr,onAppear:Lr,onAfterAppear:Lr,onAppearCancelled:Lr},$r={name:"BaseTransition",props:Pr,setup(e,{slots:t}){const n=Ci(),r=Mr();return()=>{const o=t.default&&Ur(t.default(),!0);if(!o||!o.length)return;let s=o[0];if(o.length>1){let e=!1;for(const t of o)if(t.type!==Us){0,s=t,e=!0;break}}const i=Pt(e),{mode:c}=i;if(r.isLeaving)return Vr(s);const l=Br(s);if(!l)return Vr(s);const a=Dr(l,i,r,n);Hr(l,a);const u=n.subTree,f=u&&Br(u);if(f&&f.type!==Us&&!ti(l,f)){const e=Dr(f,i,r,n);if(Hr(f,e),"out-in"===c)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,!1!==n.update.active&&(n.effect.dirty=!0,n.update())},Vr(s);"in-out"===c&&l.type!==Us&&(e.delayLeave=(e,t,n)=>{Fr(r,f)[String(f.key)]=f,e[Rr]=()=>{t(),e[Rr]=void 0,delete a.delayedLeave},a.delayedLeave=n})}return s}}};function Fr(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Dr(e,t,n,r){const{appear:o,mode:s,persisted:i=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:a,onEnterCancelled:u,onBeforeLeave:f,onLeave:d,onAfterLeave:p,onLeaveCancelled:h,onBeforeAppear:g,onAppear:v,onAfterAppear:y,onAppearCancelled:_}=t,b=String(e.key),S=Fr(n,e),x=(e,t)=>{e&&vn(e,r,9,t)},C=(e,t)=>{const n=t[1];x(e,t),m(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},T={mode:s,persisted:i,beforeEnter(t){let r=c;if(!n.isMounted){if(!o)return;r=g||c}t[Rr]&&t[Rr](!0);const s=S[b];s&&ti(e,s)&&s.el[Rr]&&s.el[Rr](),x(r,[t])},enter(e){let t=l,r=a,s=u;if(!n.isMounted){if(!o)return;t=v||l,r=y||a,s=_||u}let i=!1;const c=e[Or]=t=>{i||(i=!0,x(t?s:r,[e]),T.delayedLeave&&T.delayedLeave(),e[Or]=void 0)};t?C(t,[e,c]):c()},leave(t,r){const o=String(e.key);if(t[Or]&&t[Or](!0),n.isUnmounting)return r();x(f,[t]);let s=!1;const i=t[Rr]=n=>{s||(s=!0,r(),x(n?h:p,[t]),t[Rr]=void 0,S[o]===e&&delete S[o])};S[o]=e,d?C(d,[t,i]):i()},clone(e){return Dr(e,t,n,r)}};return T}function Vr(e){if(zr(e))return(e=ui(e)).children=null,e}function Br(e){return zr(e)?e.children?e.children[0]:void 0:e}function Hr(e,t){6&e.shapeFlag&&e.component?Hr(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Ur(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let e=0;ef({name:e.name},t,{setup:e}))():e}const qr=e=>!!e.type.__asyncLoader -/*! #__NO_SIDE_EFFECTS__ */;function Wr(e){_(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:c}=e;let l,a=null,u=0;const f=()=>{let e;return a||(e=a=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),c)return new Promise(((t,n)=>{c(e,(()=>t((u++,a=null,f()))),(()=>n(e)),u+1)}));throw e})).then((t=>e!==a&&a?a:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),l=t,t))))};return jr({name:"AsyncComponentWrapper",__asyncLoader:f,get __asyncResolved(){return l},setup(){const e=xi;if(l)return()=>Kr(l,e);const t=t=>{a=null,yn(t,e,13,!r)};if(i&&e.suspense||Ri)return f().then((t=>()=>Kr(t,e))).catch((e=>(t(e),()=>r?ci(r,{error:e}):null)));const c=qt(!1),u=qt(),d=qt(!!o);return o&&setTimeout((()=>{d.value=!1}),o),null!=s&&setTimeout((()=>{if(!c.value&&!u.value){const e=new Error(`Async component timed out after ${s}ms.`);t(e),u.value=e}}),s),f().then((()=>{c.value=!0,e.parent&&zr(e.parent.vnode)&&(e.parent.effect.dirty=!0,Nn(e.parent.update))})).catch((e=>{t(e),u.value=e})),()=>c.value&&l?Kr(l,e):u.value&&r?ci(r,{error:u.value}):n&&!d.value?ci(n):void 0}})}function Kr(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=ci(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const zr=e=>e.type.__isKeepAlive,Gr={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ci(),r=n.ctx;if(!r.renderer)return()=>{const e=t.default&&t.default();return e&&1===e.length?e[0]:e};const o=new Map,s=new Set;let i=null;const c=n.suspense,{renderer:{p:l,m:a,um:u,o:{createElement:f}}}=r,d=f("div");function p(e){eo(e),u(e,n,c,!0)}function h(e){o.forEach(((t,n)=>{const r=Hi(t.type);!r||e&&e(r)||m(n)}))}function m(e){const t=o.get(e);i&&ti(t,i)?i&&eo(i):p(t),o.delete(e),s.delete(e)}r.activate=(e,t,n,r,o)=>{const s=e.component;a(e,t,n,0,c),l(s.vnode,e,t,n,s,c,r,e.slotScopeIds,o),Ts((()=>{s.isDeactivated=!1,s.a&&V(s.a);const t=e.props&&e.props.onVnodeMounted;t&&yi(t,s.parent,e)}),c)},r.deactivate=e=>{const t=e.component;a(e,d,null,1,c),Ts((()=>{t.da&&V(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&yi(n,t.parent,e),t.isDeactivated=!0}),c)},Tr((()=>[e.include,e.exclude]),(([e,t])=>{e&&h((t=>Jr(e,t))),t&&h((e=>!Jr(t,e)))}),{flush:"post",deep:!0});let g=null;const v=()=>{null!=g&&o.set(g,to(n.subTree))};return so(v),co(v),lo((()=>{o.forEach((e=>{const{subTree:t,suspense:r}=n,o=to(t);if(e.type!==o.type||e.key!==o.key)p(e);else{eo(o);const e=o.component.da;e&&Ts(e,r)}}))})),()=>{if(g=null,!t.default)return null;const n=t.default(),r=n[0];if(n.length>1)return i=null,n;if(!(ei(r)&&(4&r.shapeFlag||128&r.shapeFlag)))return i=null,r;let c=to(r);const l=c.type,a=Hi(qr(c)?c.type.__asyncResolved||{}:l),{include:u,exclude:f,max:d}=e;if(u&&(!a||!Jr(u,a))||f&&a&&Jr(f,a))return i=c,r;const p=null==c.key?l:c.key,h=o.get(p);return c.el&&(c=ui(c),128&r.shapeFlag&&(r.ssContent=c)),g=p,h?(c.el=h.el,c.component=h.component,c.transition&&Hr(c,c.transition),c.shapeFlag|=512,s.delete(p),s.add(p)):(s.add(p),d&&s.size>parseInt(d,10)&&m(s.values().next().value)),c.shapeFlag|=256,i=c,ur(r.type)?r:c}}};function Jr(e,t){return m(e)?e.some((e=>Jr(e,t))):b(e)?e.split(",").includes(t):"[object RegExp]"===E(e)&&e.test(t)}function Yr(e,t){Qr(e,"a",t)}function Xr(e,t){Qr(e,"da",t)}function Qr(e,t,n=xi){const r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(no(t,r,n),n){let e=n.parent;for(;e&&e.parent;)zr(e.parent.vnode)&&Zr(r,t,n,e),e=e.parent}}function Zr(e,t,n,r){const o=no(t,e,r,!0);ao((()=>{d(r[t],o)}),n)}function eo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function to(e){return 128&e.shapeFlag?e.ssContent:e}function no(e,t,n=xi,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{if(n.isUnmounted)return;Ne();const o=ki(n),s=vn(t,n,e,r);return o(),Ie(),s});return r?o.unshift(s):o.push(s),s}}const ro=e=>(t,n=xi)=>(!Ri||"sp"===e)&&no(e,((...e)=>t(...e)),n),oo=ro("bm"),so=ro("m"),io=ro("bu"),co=ro("u"),lo=ro("bum"),ao=ro("um"),uo=ro("sp"),fo=ro("rtg"),po=ro("rtc");function ho(e,t=xi){no("ec",e,t)}function mo(e,t,n,r){let o;const s=n&&n[r];if(m(e)||b(e)){o=new Array(e.length);for(let n=0,r=e.length;nt(e,n,void 0,s&&s[n])));else{const n=Object.keys(e);o=new Array(n.length);for(let r=0,i=n.length;r{const t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function vo(e,t,n={},r,o){if(jn.isCE||jn.parent&&qr(jn.parent)&&jn.parent.isCE)return"default"!==t&&(n.name=t),ci("slot",n,r&&r());let s=e[t];s&&s._c&&(s._d=!1),Ks();const i=s&&yo(s(n)),c=Zs(Bs,{key:n.key||i&&i.key||`_${t}`},i||(r?r():[]),i&&1===e._?64:-2);return!o&&c.scopeId&&(c.slotScopeIds=[c.scopeId+"-s"]),s&&s._c&&(s._d=!0),c}function yo(e){return e.some((e=>!ei(e)||e.type!==Us&&!(e.type===Bs&&!yo(e.children))))?e:null}function _o(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:F(r)]=e[r];return n}const bo=e=>e?Ai(e)?Di(e)||e.proxy:bo(e.parent):null,So=f(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>bo(e.parent),$root:e=>bo(e.root),$emit:e=>e.emit,$options:e=>qo(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Nn(e.update)}),$nextTick:e=>e.n||(e.n=An.bind(e.proxy)),$watch:e=>kr.bind(e)}),xo=(e,t)=>e!==s&&!e.__isScriptSetup&&h(e,t),Co={get({_:e},t){const{ctx:n,setupState:r,data:o,props:i,accessCache:c,type:l,appContext:a}=e;let u;if("$"!==t[0]){const l=c[t];if(void 0!==l)switch(l){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return i[t]}else{if(xo(r,t))return c[t]=1,r[t];if(o!==s&&h(o,t))return c[t]=2,o[t];if((u=e.propsOptions[0])&&h(u,t))return c[t]=3,i[t];if(n!==s&&h(n,t))return c[t]=4,n[t];Bo&&(c[t]=0)}}const f=So[t];let d,p;return f?("$attrs"===t&&Be(e,0,t),f(e)):(d=l.__cssModules)&&(d=d[t])?d:n!==s&&h(n,t)?(c[t]=4,n[t]):(p=a.config.globalProperties,h(p,t)?p[t]:void 0)},set({_:e},t,n){const{data:r,setupState:o,ctx:i}=e;return xo(o,t)?(o[t]=n,!0):r!==s&&h(r,t)?(r[t]=n,!0):!h(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(i[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:i}},c){let l;return!!n[c]||e!==s&&h(e,c)||xo(t,c)||(l=i[0])&&h(l,c)||h(r,c)||h(So,c)||h(o.config.globalProperties,c)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:h(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};const To=f({},Co,{get(e,t){if(t!==Symbol.unscopables)return Co.get(e,t,e)},has(e,t){return"_"!==t[0]&&!K(t)}});function Eo(){return null}function ko(){return null}function wo(e){0}function Ao(e){0}function No(){return null}function Io(){0}function Ro(e,t){return null}function Oo(){return Lo().slots}function Mo(){return Lo().attrs}function Lo(){const e=Ci();return e.setupContext||(e.setupContext=Fi(e))}function Po(e){return m(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}function $o(e,t){const n=Po(e);for(const e in t){if(e.startsWith("__skip"))continue;let r=n[e];r?m(r)||_(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:null===r&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n}function Fo(e,t){return e&&t?m(e)&&m(t)?e.concat(t):f({},Po(e),Po(t)):e||t}function Do(e,t){const n={};for(const r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function Vo(e){const t=Ci();let n=e();return wi(),C(n)&&(n=n.catch((e=>{throw ki(t),e}))),[n,()=>ki(t)]}let Bo=!0;function Ho(e){const t=qo(e),n=e.proxy,r=e.ctx;Bo=!1,t.beforeCreate&&Uo(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:l,provide:a,inject:u,created:f,beforeMount:d,mounted:p,beforeUpdate:h,updated:g,activated:v,deactivated:y,beforeDestroy:b,beforeUnmount:S,destroyed:C,unmounted:T,render:E,renderTracked:k,renderTriggered:w,errorCaptured:A,serverPrefetch:N,expose:I,inheritAttrs:R,components:O,directives:M,filters:L}=t;if(u&&function(e,t,n=c){m(e)&&(e=Go(e));for(const n in e){const r=e[n];let o;o=x(r)?"default"in r?rs(r.from||n,r.default,!0):rs(r.from||n):rs(r),jt(o)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e}):t[n]=o}}(u,r,null),i)for(const e in i){const t=i[e];_(t)&&(r[e]=t.bind(n))}if(o){0;const t=o.call(n,n);0,x(t)&&(e.data=kt(t))}if(Bo=!0,s)for(const e in s){const t=s[e],o=_(t)?t.bind(n,n):_(t.get)?t.get.bind(n,n):c;0;const i=!_(t)&&_(t.set)?t.set.bind(n):c,l=qi({get:o,set:i});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>l.value,set:e=>l.value=e})}if(l)for(const e in l)jo(l[e],r,n,e);if(a){const e=_(a)?a.call(n):a;Reflect.ownKeys(e).forEach((t=>{ns(t,e[t])}))}function P(e,t){m(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(f&&Uo(f,e,"c"),P(oo,d),P(so,p),P(io,h),P(co,g),P(Yr,v),P(Xr,y),P(ho,A),P(po,k),P(fo,w),P(lo,S),P(ao,T),P(uo,N),m(I))if(I.length){const t=e.exposed||(e.exposed={});I.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});E&&e.render===c&&(e.render=E),null!=R&&(e.inheritAttrs=R),O&&(e.components=O),M&&(e.directives=M)}function Uo(e,t,n){vn(m(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function jo(e,t,n,r){const o=r.includes(".")?wr(n,r):()=>n[r];if(b(e)){const n=t[e];_(n)&&Tr(o,n)}else if(_(e))Tr(o,e.bind(n));else if(x(e))if(m(e))e.forEach((e=>jo(e,t,n,r)));else{const r=_(e.handler)?e.handler.bind(n):t[e.handler];_(r)&&Tr(o,r,e)}else 0}function qo(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,c=s.get(t);let l;return c?l=c:o.length||n||r?(l={},o.length&&o.forEach((e=>Wo(l,e,i,!0))),Wo(l,t,i)):l=t,x(t)&&s.set(t,l),l}function Wo(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&Wo(e,s,n,!0),o&&o.forEach((t=>Wo(e,t,n,!0)));for(const o in t)if(r&&"expose"===o);else{const r=Ko[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}const Ko={data:zo,props:Xo,emits:Xo,methods:Yo,computed:Yo,beforeCreate:Jo,created:Jo,beforeMount:Jo,mounted:Jo,beforeUpdate:Jo,updated:Jo,beforeDestroy:Jo,beforeUnmount:Jo,destroyed:Jo,unmounted:Jo,activated:Jo,deactivated:Jo,errorCaptured:Jo,serverPrefetch:Jo,components:Yo,directives:Yo,watch:function(e,t){if(!e)return t;if(!t)return e;const n=f(Object.create(null),e);for(const r in t)n[r]=Jo(e[r],t[r]);return n},provide:zo,inject:function(e,t){return Yo(Go(e),Go(t))}};function zo(e,t){return t?e?function(){return f(_(e)?e.call(this,this):e,_(t)?t.call(this,this):t)}:t:e}function Go(e){if(m(e)){const t={};for(let n=0;n1)return n&&_(t)?t.call(r&&r.proxy):t}else 0}function os(){return!!(xi||jn||ts)}function ss(e,t,n,r){const[o,i]=e.propsOptions;let c,l=!1;if(t)for(let s in t){if(N(s))continue;const a=t[s];let u;o&&h(o,u=M(s))?i&&i.includes(u)?(c||(c={}))[u]=a:n[u]=a:Un(e.emitsOptions,s)||s in r&&a===r[s]||(r[s]=a,l=!0)}if(i){const t=Pt(n),r=c||s;for(let s=0;s{u=!0;const[n,r]=cs(e,t,!0);f(l,n),r&&a.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!c&&!u)return x(e)&&r.set(e,i),i;if(m(c))for(let e=0;e-1,r[1]=n<0||e-1||h(r,"default"))&&a.push(t)}}}}const d=[l,a];return x(e)&&r.set(e,d),d}function ls(e){return"$"!==e[0]&&!N(e)}function as(e){if(null===e)return"null";if("function"==typeof e)return e.name||"";if("object"==typeof e){return e.constructor&&e.constructor.name||""}return""}function us(e,t){return as(e)===as(t)}function fs(e,t){return m(t)?t.findIndex((t=>us(t,e))):_(t)&&us(t,e)?0:-1}const ds=e=>"_"===e[0]||"$stable"===e,ps=e=>m(e)?e.map(hi):[hi(e)],hs=(e,t,n)=>{if(t._n)return t;const r=Jn(((...e)=>ps(t(...e))),n);return r._c=!1,r},ms=(e,t,n)=>{const r=e._ctx;for(const n in e){if(ds(n))continue;const o=e[n];if(_(o))t[n]=hs(0,o,r);else if(null!=o){0;const e=ps(o);t[n]=()=>e}}},gs=(e,t)=>{const n=ps(t);e.slots.default=()=>n},vs=(e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=Pt(t),B(t,"_",n)):ms(t,e.slots={})}else e.slots={},t&&gs(e,t);B(e.slots,ri,1)},ys=(e,t,n)=>{const{vnode:r,slots:o}=e;let i=!0,c=s;if(32&r.shapeFlag){const e=t._;e?n&&1===e?i=!1:(f(o,t),n||1!==e||delete o._):(i=!t.$stable,ms(t,o)),c=t}else t&&(gs(e,t),c={default:1});if(i)for(const e in o)ds(e)||null!=c[e]||delete o[e]};function _s(e,t,n,r,o=!1){if(m(e))return void e.forEach(((e,s)=>_s(e,t&&(m(t)?t[s]:t),n,r,o)));if(qr(r)&&!o)return;const i=4&r.shapeFlag?Di(r.component)||r.component.proxy:r.el,c=o?null:i,{i:l,r:a}=e;const u=t&&t.r,f=l.refs===s?l.refs={}:l.refs,p=l.setupState;if(null!=u&&u!==a&&(b(u)?(f[u]=null,h(p,u)&&(p[u]=null)):jt(u)&&(u.value=null)),_(a))gn(a,l,12,[c,f]);else{const t=b(a),r=jt(a);if(t||r){const s=()=>{if(e.f){const n=t?h(p,a)?p[a]:f[a]:a.value;o?m(n)&&d(n,i):m(n)?n.includes(i)||n.push(i):t?(f[a]=[i],h(p,a)&&(p[a]=f[a])):(a.value=[i],e.k&&(f[e.k]=a.value))}else t?(f[a]=c,h(p,a)&&(p[a]=c)):r&&(a.value=c,e.k&&(f[e.k]=c))};c?(s.id=-1,Ts(s,n)):s()}else 0}}let bs=!1;const Ss=e=>(e=>e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName)(e)?"svg":(e=>e.namespaceURI.includes("MathML"))(e)?"mathml":void 0,xs=e=>8===e.nodeType;function Cs(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:c,insert:l,createComment:u}}=e,f=(n,r,c,a,u,_=!1)=>{const b=xs(n)&&"["===n.data,S=()=>m(n,r,c,a,u,b),{type:x,ref:C,shapeFlag:T,patchFlag:E}=r;let k=n.nodeType;r.el=n,-2===E&&(_=!1,r.dynamicChildren=null);let w=null;switch(x){case Hs:3!==k?""===r.children?(l(r.el=o(""),i(n),n),w=n):w=S():(n.data!==r.children&&(bs=!0,__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&un("Hydration text mismatch in",n.parentNode,`\n - rendered on server: ${JSON.stringify(n.data)}\n - expected on client: ${JSON.stringify(r.children)}`),n.data=r.children),w=s(n));break;case Us:y(n)?(w=s(n),v(r.el=n.content.firstChild,n,c)):w=8!==k||b?S():s(n);break;case js:if(b&&(k=(n=s(n)).nodeType),1===k||3===k){w=n;const e=!r.children.length;for(let t=0;t{i=i||!!t.dynamicChildren;const{type:l,props:u,patchFlag:f,shapeFlag:d,dirs:h,transition:m}=t,g="input"===l||"option"===l;if(g||-1!==f){h&&Ir(t,null,n,"created");let l,_=!1;if(y(e)){_=Is(o,m)&&n&&n.vnode.props&&n.vnode.props.appear;const r=e.content.firstChild;_&&m.beforeEnter(r),v(r,e,n),t.el=e=r}if(16&d&&(!u||!u.innerHTML&&!u.textContent)){let r=p(e.firstChild,t,e,n,o,s,i),l=!1;for(;r;){bs=!0,__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&!l&&(un("Hydration children mismatch on",e,"\nServer rendered element contains more child nodes than client vdom."),l=!0);const t=r;r=r.nextSibling,c(t)}}else 8&d&&e.textContent!==t.children&&(bs=!0,__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&un("Hydration text content mismatch on",e,`\n - rendered on server: ${e.textContent}\n - expected on client: ${t.children}`),e.textContent=t.children);if(u)if(g||!i||48&f)for(const t in u)(g&&(t.endsWith("value")||"indeterminate"===t)||a(t)&&!N(t)||"."===t[0])&&r(e,t,null,u[t],void 0,void 0,n);else u.onClick&&r(e,"onClick",null,u.onClick,void 0,void 0,n);(l=u&&u.onVnodeBeforeMount)&&yi(l,n,t),h&&Ir(t,null,n,"beforeMount"),((l=u&&u.onVnodeMounted)||h||_)&&gr((()=>{l&&yi(l,n,t),_&&m.enter(e),h&&Ir(t,null,n,"mounted")}),o)}return e.nextSibling},p=(e,t,r,o,s,i,c)=>{c=c||!!t.dynamicChildren;const l=t.children,a=l.length;let u=!1;for(let t=0;t{const{slotScopeIds:a}=t;a&&(o=o?o.concat(a):a);const f=i(e),d=p(s(e),t,f,n,r,o,c);return d&&xs(d)&&"]"===d.data?s(t.anchor=d):(bs=!0,l(t.anchor=u("]"),f,d),d)},m=(e,t,r,o,l,a)=>{if(bs=!0,__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&un("Hydration node mismatch:\n- rendered on server:",e,3===e.nodeType?"(text)":xs(e)&&"["===e.data?"(start of fragment)":"","\n- expected on client:",t.type),t.el=null,a){const t=g(e);for(;;){const n=s(e);if(!n||n===t)break;c(n)}}const u=s(e),f=i(e);return c(e),n(null,t,f,u,r,o,Ss(f),l),u},g=(e,t="[",n="]")=>{let r=0;for(;e;)if((e=s(e))&&xs(e)&&(e.data===t&&r++,e.data===n)){if(0===r)return s(e);r--}return e},v=(e,t,n)=>{const r=t.parentNode;r&&r.replaceChild(e,t);let o=n;for(;o;)o.vnode.el===t&&(o.vnode.el=o.subTree.el=e),o=o.parent},y=e=>1===e.nodeType&&"template"===e.tagName.toLowerCase();return[(e,t)=>{if(!t.hasChildNodes())return __VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&un("Attempting to hydrate existing markup but container is empty. Performing full mount instead."),n(null,e,t),Mn(),void(t._vnode=e);bs=!1,f(t.firstChild,e,null,null,null),Mn(),t._vnode=e,bs&&console.error("Hydration completed but contains mismatches.")},f]}const Ts=gr;function Es(e){return ws(e)}function ks(e){return ws(e,Cs)}function ws(e,t){"boolean"!=typeof __VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&(q().__VUE_PROD_HYDRATION_MISMATCH_DETAILS__=!1);q().__VUE__=!0;const{insert:n,remove:r,patchProp:o,createElement:l,createText:a,createComment:u,setText:f,setElementText:d,parentNode:p,nextSibling:m,setScopeId:g=c,insertStaticContent:v}=e,y=(e,t,n,r=null,o=null,s=null,i=void 0,c=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!ti(e,t)&&(r=Y(e),W(e,o,s,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:a,ref:u,shapeFlag:f}=t;switch(a){case Hs:_(e,t,n,r);break;case Us:b(e,t,n,r);break;case js:null==e&&S(t,n,r,i);break;case Bs:R(e,t,n,r,o,s,i,c,l);break;default:1&f?C(e,t,n,r,o,s,i,c,l):6&f?O(e,t,n,r,o,s,i,c,l):(64&f||128&f)&&a.process(e,t,n,r,o,s,i,c,l,Z)}null!=u&&o&&_s(u,e&&e.ref,s,t||e,!t)},_=(e,t,r,o)=>{if(null==e)n(t.el=a(t.children),r,o);else{const n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,r,o)=>{null==e?n(t.el=u(t.children||""),r,o):t.el=e.el},S=(e,t,n,r)=>{[e.el,e.anchor]=v(e.children,t,n,r,e.el,e.anchor)},x=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),r(e),e=n;r(t)},C=(e,t,n,r,o,s,i,c,l)=>{"svg"===t.type?i="svg":"math"===t.type&&(i="mathml"),null==e?T(t,n,r,o,s,i,c,l):w(e,t,o,s,i,c,l)},T=(e,t,r,s,i,c,a,u)=>{let f,p;const{props:h,shapeFlag:m,transition:g,dirs:v}=e;if(f=e.el=l(e.type,c,h&&h.is,h),8&m?d(f,e.children):16&m&&k(e.children,f,null,s,i,As(e,c),a,u),v&&Ir(e,null,s,"created"),E(f,e,e.scopeId,a,s),h){for(const t in h)"value"===t||N(t)||o(f,t,null,h[t],c,e.children,s,i,J);"value"in h&&o(f,"value",null,h.value,c),(p=h.onVnodeBeforeMount)&&yi(p,s,e)}v&&Ir(e,null,s,"beforeMount");const y=Is(i,g);y&&g.beforeEnter(f),n(f,t,r),((p=h&&h.onVnodeMounted)||y||v)&&Ts((()=>{p&&yi(p,s,e),y&&g.enter(f),v&&Ir(e,null,s,"mounted")}),i)},E=(e,t,n,r,o)=>{if(n&&g(e,n),r)for(let t=0;t{for(let a=l;a{const a=t.el=e.el;let{patchFlag:u,dynamicChildren:f,dirs:p}=t;u|=16&e.patchFlag;const h=e.props||s,m=t.props||s;let g;if(n&&Ns(n,!1),(g=m.onVnodeBeforeUpdate)&&yi(g,n,t,e),p&&Ir(t,e,n,"beforeUpdate"),n&&Ns(n,!0),f?A(e.dynamicChildren,f,a,n,r,As(t,i),c):l||B(e,t,a,null,n,r,As(t,i),c,!1),u>0){if(16&u)I(a,t,h,m,n,r,i);else if(2&u&&h.class!==m.class&&o(a,"class",null,m.class,i),4&u&&o(a,"style",h.style,m.style,i),8&u){const s=t.dynamicProps;for(let t=0;t{g&&yi(g,n,t,e),p&&Ir(t,e,n,"updated")}),r)},A=(e,t,n,r,o,s,i)=>{for(let c=0;c{if(n!==r){if(n!==s)for(const s in n)N(s)||s in r||o(e,s,n[s],null,l,t.children,i,c,J);for(const s in r){if(N(s))continue;const a=r[s],u=n[s];a!==u&&"value"!==s&&o(e,s,u,a,l,t.children,i,c,J)}"value"in r&&o(e,"value",n.value,r.value,l)}},R=(e,t,r,o,s,i,c,l,u)=>{const f=t.el=e?e.el:a(""),d=t.anchor=e?e.anchor:a("");let{patchFlag:p,dynamicChildren:h,slotScopeIds:m}=t;m&&(l=l?l.concat(m):m),null==e?(n(f,r,o),n(d,r,o),k(t.children||[],r,d,s,i,c,l,u)):p>0&&64&p&&h&&e.dynamicChildren?(A(e.dynamicChildren,h,r,s,i,c,l),(null!=t.key||s&&t===s.subTree)&&Rs(e,t,!0)):B(e,t,r,d,s,i,c,l,u)},O=(e,t,n,r,o,s,i,c,l)=>{t.slotScopeIds=c,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,i,l):L(t,n,r,o,s,i,l):$(e,t,l)},L=(e,t,n,r,o,s,i)=>{const c=e.component=Si(e,r,o);if(zr(e)&&(c.ctx.renderer=Z),Oi(c),c.asyncDep){if(o&&o.registerDep(c,F),!e.el){const e=c.subTree=ci(Us);b(null,e,t,n)}}else F(c,e,t,n,o,s,i)},$=(e,t,n)=>{const r=t.component=e.component;if(function(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:c,patchFlag:l}=t,a=s.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!o&&!c||c&&c.$stable)||r!==i&&(r?!i||er(r,i,a):!!i);if(1024&l)return!0;if(16&l)return r?er(r,i,a):!!i;if(8&l){const e=t.dynamicProps;for(let t=0;txn&&Sn.splice(t,1)}(r.update),r.effect.dirty=!0,r.update()}else t.el=e.el,r.vnode=t},F=(e,t,n,r,o,s,i)=>{const l=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:c,vnode:a}=e;{const n=Os(e);if(n)return t&&(t.el=a.el,D(e,t,i)),void n.asyncDep.then((()=>{e.isUnmounted||l()}))}let u,f=t;0,Ns(e,!1),t?(t.el=a.el,D(e,t,i)):t=a,n&&V(n),(u=t.props&&t.props.onVnodeBeforeUpdate)&&yi(u,c,t,a),Ns(e,!0);const d=Yn(e);0;const h=e.subTree;e.subTree=d,y(h,d,p(h.el),Y(h),e,o,s),t.el=d.el,null===f&&tr(e,d.el),r&&Ts(r,o),(u=t.props&&t.props.onVnodeUpdated)&&Ts((()=>yi(u,c,t,a)),o)}else{let i;const{el:c,props:l}=t,{bm:a,m:u,parent:f}=e,d=qr(t);if(Ns(e,!1),a&&V(a),!d&&(i=l&&l.onVnodeBeforeMount)&&yi(i,f,t),Ns(e,!0),c&&te){const n=()=>{e.subTree=Yn(e),te(c,e.subTree,e,o,null)};d?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{0;const i=e.subTree=Yn(e);0,y(null,i,n,r,e,o,s),t.el=i.el}if(u&&Ts(u,o),!d&&(i=l&&l.onVnodeMounted)){const e=t;Ts((()=>yi(i,f,e)),o)}(256&t.shapeFlag||f&&qr(f.vnode)&&256&f.vnode.shapeFlag)&&e.a&&Ts(e.a,o),e.isMounted=!0,t=n=r=null}},a=e.effect=new _e(l,c,(()=>Nn(u)),e.scope),u=e.update=()=>{a.dirty&&a.run()};u.id=e.uid,Ns(e,!0),u()},D=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,c=Pt(o),[l]=e.propsOptions;let a=!1;if(!(r||i>0)||16&i){let r;ss(e,t,o,s)&&(a=!0);for(const s in c)t&&(h(t,s)||(r=P(s))!==s&&h(t,r))||(l?!n||void 0===n[s]&&void 0===n[r]||(o[s]=is(l,c,s,void 0,e,!0)):delete o[s]);if(s!==c)for(const e in s)t&&h(t,e)||(delete s[e],a=!0)}else if(8&i){const n=e.vnode.dynamicProps;for(let r=0;r{const a=e&&e.children,u=e?e.shapeFlag:0,f=t.children,{patchFlag:p,shapeFlag:h}=t;if(p>0){if(128&p)return void U(a,f,n,r,o,s,i,c,l);if(256&p)return void H(a,f,n,r,o,s,i,c,l)}8&h?(16&u&&J(a,o,s),f!==a&&d(n,f)):16&u?16&h?U(a,f,n,r,o,s,i,c,l):J(a,o,s,!0):(8&u&&d(n,""),16&h&&k(f,n,r,o,s,i,c,l))},H=(e,t,n,r,o,s,c,l,a)=>{t=t||i;const u=(e=e||i).length,f=t.length,d=Math.min(u,f);let p;for(p=0;pf?J(e,o,s,!0,!1,d):k(t,n,r,o,s,c,l,a,d)},U=(e,t,n,r,o,s,c,l,a)=>{let u=0;const f=t.length;let d=e.length-1,p=f-1;for(;u<=d&&u<=p;){const r=e[u],i=t[u]=a?mi(t[u]):hi(t[u]);if(!ti(r,i))break;y(r,i,n,null,o,s,c,l,a),u++}for(;u<=d&&u<=p;){const r=e[d],i=t[p]=a?mi(t[p]):hi(t[p]);if(!ti(r,i))break;y(r,i,n,null,o,s,c,l,a),d--,p--}if(u>d){if(u<=p){const e=p+1,i=ep)for(;u<=d;)W(e[u],o,s,!0),u++;else{const h=u,m=u,g=new Map;for(u=m;u<=p;u++){const e=t[u]=a?mi(t[u]):hi(t[u]);null!=e.key&&g.set(e.key,u)}let v,_=0;const b=p-m+1;let S=!1,x=0;const C=new Array(b);for(u=0;u=b){W(r,o,s,!0);continue}let i;if(null!=r.key)i=g.get(r.key);else for(v=m;v<=p;v++)if(0===C[v-m]&&ti(r,t[v])){i=v;break}void 0===i?W(r,o,s,!0):(C[i-m]=u+1,i>=x?x=i:S=!0,y(r,t[i],n,null,o,s,c,l,a),_++)}const T=S?function(e){const t=e.slice(),n=[0];let r,o,s,i,c;const l=e.length;for(r=0;r>1,e[n[c]]0&&(t[r]=n[s-1]),n[s]=r)}}s=n.length,i=n[s-1];for(;s-- >0;)n[s]=i,i=t[i];return n}(C):i;for(v=T.length-1,u=b-1;u>=0;u--){const e=m+u,i=t[e],d=e+1{const{el:i,type:c,transition:l,children:a,shapeFlag:u}=e;if(6&u)return void j(e.component.subTree,t,r,o);if(128&u)return void e.suspense.move(t,r,o);if(64&u)return void c.move(e,t,r,Z);if(c===Bs){n(i,t,r);for(let e=0;e{let s;for(;e&&e!==t;)s=m(e),n(e,r,o),e=s;n(t,r,o)})(e,t,r);if(2!==o&&1&u&&l)if(0===o)l.beforeEnter(i),n(i,t,r),Ts((()=>l.enter(i)),s);else{const{leave:e,delayLeave:o,afterLeave:s}=l,c=()=>n(i,t,r),a=()=>{e(i,(()=>{c(),s&&s()}))};o?o(i,c,a):a()}else n(i,t,r)},W=(e,t,n,r=!1,o=!1)=>{const{type:s,props:i,ref:c,children:l,dynamicChildren:a,shapeFlag:u,patchFlag:f,dirs:d}=e;if(null!=c&&_s(c,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const p=1&u&&d,h=!qr(e);let m;if(h&&(m=i&&i.onVnodeBeforeUnmount)&&yi(m,t,e),6&u)G(e.component,n,r);else{if(128&u)return void e.suspense.unmount(n,r);p&&Ir(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,o,Z,r):a&&(s!==Bs||f>0&&64&f)?J(a,t,n,!1,!0):(s===Bs&&384&f||!o&&16&u)&&J(l,t,n),r&&K(e)}(h&&(m=i&&i.onVnodeUnmounted)||p)&&Ts((()=>{m&&yi(m,t,e),p&&Ir(e,null,t,"unmounted")}),n)},K=e=>{const{type:t,el:n,anchor:o,transition:s}=e;if(t===Bs)return void z(n,o);if(t===js)return void x(e);const i=()=>{r(n),s&&!s.persisted&&s.afterLeave&&s.afterLeave()};if(1&e.shapeFlag&&s&&!s.persisted){const{leave:t,delayLeave:r}=s,o=()=>t(n,i);r?r(e.el,i,o):o()}else i()},z=(e,t)=>{let n;for(;e!==t;)n=m(e),r(e),e=n;r(t)},G=(e,t,n)=>{const{bum:r,scope:o,update:s,subTree:i,um:c}=e;r&&V(r),o.stop(),s&&(s.active=!1,W(i,e,t,n)),c&&Ts(c,t),Ts((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},J=(e,t,n,r=!1,o=!1,s=0)=>{for(let i=s;i6&e.shapeFlag?Y(e.component.subTree):128&e.shapeFlag?e.suspense.next():m(e.anchor||e.el);let X=!1;const Q=(e,t,n)=>{null==e?t._vnode&&W(t._vnode,null,null,!0):y(t._vnode||null,e,t,null,null,null,n),X||(X=!0,On(),Mn(),X=!1),t._vnode=e},Z={p:y,um:W,m:j,r:K,mt:L,mc:k,pc:B,pbc:A,n:Y,o:e};let ee,te;return t&&([ee,te]=t(Z)),{render:Q,hydrate:ee,createApp:es(Q,ee)}}function As({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Ns({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Is(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Rs(e,t,n=!1){const r=e.children,o=t.children;if(m(r)&&m(o))for(let e=0;ee&&(e.disabled||""===e.disabled),Ls=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,Ps=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,$s=(e,t)=>{const n=e&&e.to;if(b(n)){if(t){const e=t(n);return e}return null}return n};function Fs(e,t,n,{o:{insert:r},m:o},s=2){0===s&&r(e.targetAnchor,t,n);const{el:i,anchor:c,shapeFlag:l,children:a,props:u}=e,f=2===s;if(f&&r(i,t,n),(!f||Ms(u))&&16&l)for(let e=0;e{16&y&&u(_,e,t,o,s,i,c,l)};v?g(n,a):f&&g(f,d)}else{t.el=e.el;const r=t.anchor=e.anchor,u=t.target=e.target,p=t.targetAnchor=e.targetAnchor,m=Ms(e.props),g=m?n:u,y=m?r:p;if("svg"===i||Ls(u)?i="svg":("mathml"===i||Ps(u))&&(i="mathml"),b?(d(e.dynamicChildren,b,g,o,s,i,c),Rs(e,t,!0)):l||f(e,t,g,y,o,s,i,c,!1),v)m?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Fs(t,n,r,a,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const e=t.target=$s(t.props,h);e&&Fs(t,e,null,a,0)}else m&&Fs(t,u,p,a,1)}Vs(t)},remove(e,t,n,r,{um:o,o:{remove:s}},i){const{shapeFlag:c,children:l,anchor:a,targetAnchor:u,target:f,props:d}=e;if(f&&s(u),i&&s(a),16&c){const e=i||!Ms(d);for(let r=0;r0?Ws||i:null,zs(),Js>0&&Ws&&Ws.push(e),e}function Qs(e,t,n,r,o,s){return Xs(ii(e,t,n,r,o,s,!0))}function Zs(e,t,n,r,o){return Xs(ci(e,t,n,r,o,!0))}function ei(e){return!!e&&!0===e.__v_isVNode}function ti(e,t){return e.type===t.type&&e.key===t.key}function ni(e){Gs=e}const ri="__vInternal",oi=({key:e})=>null!=e?e:null,si=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?b(e)||jt(e)||_(e)?{i:jn,r:e,k:t,f:!!n}:e:null);function ii(e,t=null,n=null,r=0,o=null,s=(e===Bs?0:1),i=!1,c=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&oi(t),ref:t&&si(t),scopeId:qn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:jn};return c?(gi(l,n),128&s&&e.normalize(l)):n&&(l.shapeFlag|=b(n)?8:16),Js>0&&!i&&Ws&&(l.patchFlag>0||6&s)&&32!==l.patchFlag&&Ws.push(l),l}const ci=li;function li(e,t=null,n=null,r=0,o=null,s=!1){if(e&&e!==sr||(e=Us),ei(e)){const r=ui(e,t,!0);return n&&gi(r,n),Js>0&&!s&&Ws&&(6&r.shapeFlag?Ws[Ws.indexOf(e)]=r:Ws.push(r)),r.patchFlag|=-2,r}if(ji(e)&&(e=e.__vccOpts),t){t=ai(t);let{class:e,style:n}=t;e&&!b(e)&&(t.class=Q(e)),x(n)&&(Lt(n)&&!m(n)&&(n=f({},n)),t.style=z(n))}return ii(e,t,n,r,o,b(e)?1:ur(e)?128:(e=>e.__isTeleport)(e)?64:x(e)?4:_(e)?2:0,s,!0)}function ai(e){return e?Lt(e)||ri in e?f({},e):e:null}function ui(e,t,n=!1){const{props:r,ref:o,patchFlag:s,children:i}=e,c=t?vi(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&oi(c),ref:t&&t.ref?n&&o?m(o)?o.concat(si(t)):[o,si(t)]:si(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Bs?-1===s?16:16|s:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&ui(e.ssContent),ssFallback:e.ssFallback&&ui(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function fi(e=" ",t=0){return ci(Hs,null,e,t)}function di(e,t){const n=ci(js,null,e);return n.staticCount=t,n}function pi(e="",t=!1){return t?(Ks(),Zs(Us,null,e)):ci(Us,null,e)}function hi(e){return null==e||"boolean"==typeof e?ci(Us):m(e)?ci(Bs,null,e.slice()):"object"==typeof e?mi(e):ci(Hs,null,String(e))}function mi(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:ui(e)}function gi(e,t){let n=0;const{shapeFlag:r}=e;if(null==t)t=null;else if(m(t))n=16;else if("object"==typeof t){if(65&r){const n=t.default;return void(n&&(n._c&&(n._d=!1),gi(e,n()),n._c&&(n._d=!0)))}{n=32;const r=t._;r||ri in t?3===r&&jn&&(1===jn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=jn}}else _(t)?(t={default:t,_ctx:jn},n=32):(t=String(t),64&r?(n=16,t=[fi(t)]):n=8);e.children=t,e.shapeFlag|=n}function vi(...e){const t={};for(let n=0;nxi||jn;let Ti,Ei;{const e=q(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach((t=>t(e))):r[0](e)}};Ti=t("__VUE_INSTANCE_SETTERS__",(e=>xi=e)),Ei=t("__VUE_SSR_SETTERS__",(e=>Ri=e))}const ki=e=>{const t=xi;return Ti(e),e.scope.on(),()=>{e.scope.off(),Ti(t)}},wi=()=>{xi&&xi.scope.off(),Ti(null)};function Ai(e){return 4&e.vnode.shapeFlag}let Ni,Ii,Ri=!1;function Oi(e,t=!1){t&&Ei(t);const{props:n,children:r}=e.vnode,o=Ai(e);!function(e,t,n,r=!1){const o={},s={};B(s,ri,1),e.propsDefaults=Object.create(null),ss(e,t,o,s);for(const t in e.propsOptions[0])t in o||(o[t]=void 0);n?e.props=r?o:wt(o):e.type.props?e.props=o:e.props=s,e.attrs=s}(e,n,o,t),vs(e,r);const s=o?function(e,t){const n=e.type;0;e.accessCache=Object.create(null),e.proxy=$t(new Proxy(e.ctx,Co)),!1;const{setup:r}=n;if(r){const n=e.setupContext=r.length>1?Fi(e):null,o=ki(e);Ne();const s=gn(r,e,0,[e.props,n]);if(Ie(),o(),C(s)){if(s.then(wi,wi),t)return s.then((n=>{Mi(e,n,t)})).catch((t=>{yn(t,e,0)}));e.asyncDep=s}else Mi(e,s,t)}else $i(e,t)}(e,t):void 0;return t&&Ei(!1),s}function Mi(e,t,n){_(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:x(t)&&(e.setupState=Qt(t)),$i(e,n)}function Li(e){Ni=e,Ii=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,To))}}const Pi=()=>!Ni;function $i(e,t,n){const r=e.type;if(!e.render){if(!t&&Ni&&!r.render){const t=r.template||qo(e).template;if(t){0;const{isCustomElement:n,compilerOptions:o}=e.appContext.config,{delimiters:s,compilerOptions:i}=r,c=f(f({isCustomElement:n,delimiters:s},o),i);r.render=Ni(t,c)}}e.render=r.render||c,Ii&&Ii(e)}{const t=ki(e);Ne();try{Ho(e)}finally{Ie(),t()}}}function Fi(e){const t=t=>{e.exposed=t||{}};return{get attrs(){return function(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return Be(e,0,"$attrs"),t[n]}}))}(e)},slots:e.slots,emit:e.emit,expose:t}}function Di(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Qt($t(e.exposed)),{get(t,n){return n in t?t[n]:n in So?So[n](e):void 0},has(e,t){return t in e||t in So}}))}const Vi=/(?:^|[-_])(\w)/g,Bi=e=>e.replace(Vi,(e=>e.toUpperCase())).replace(/[-_]/g,"");function Hi(e,t=!0){return _(e)?e.displayName||e.name:e.name||t&&e.__name}function Ui(e,t,n=!1){let r=Hi(t);if(!r&&t.__file){const e=t.__file.match(/([^/\\]+)\.\w+$/);e&&(r=e[1])}if(!r&&e&&e.parent){const n=e=>{for(const n in e)if(e[n]===t)return n};r=n(e.components||e.parent.type.components)||n(e.appContext.components)}return r?Bi(r):n?"App":"Anonymous"}function ji(e){return _(e)&&"__vccOpts"in e}const qi=(e,t)=>Bt(e,0,Ri);function Wi(e,t,n=s){const r=Ci();const o=M(t),i=P(t),c=en(((s,c)=>{let l;return xr((()=>{const n=e[t];D(l,n)&&(l=n,c())})),{get(){return s(),n.get?n.get(l):l},set(e){const s=r.vnode.props;s&&(t in s||o in s||i in s)&&(`onUpdate:${t}`in s||`onUpdate:${o}`in s||`onUpdate:${i}`in s)||!D(e,l)||(l=e,c()),r.emit(`update:${t}`,n.set?n.set(e):e)}}})),l="modelValue"===t?"modelModifiers":`${t}Modifiers`;return c[Symbol.iterator]=()=>{let t=0;return{next(){return t<2?{value:t++?e[l]||{}:c,done:!1}:{done:!0}}}},c}function Ki(e,t,n){const r=arguments.length;return 2===r?x(t)&&!m(t)?ei(t)?ci(e,null,[t]):ci(e,t):ci(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&ei(n)&&(n=[n]),ci(e,t,n))}function zi(){return void 0}function Gi(e,t,n,r){const o=n[r];if(o&&Ji(o,e))return o;const s=t();return s.memo=e.slice(),n[r]=s}function Ji(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&Ws&&Ws.push(e),!0}const Yi="3.4.21",Xi=c,Qi=mn,Zi=Fn,ec=function e(t,n){var r,o;if(Fn=t,Fn)Fn.enabled=!0,Dn.forEach((({event:e,args:t})=>Fn.emit(e,...t))),Dn=[];else if("undefined"!=typeof window&&window.HTMLElement&&!(null==(o=null==(r=window.navigator)?void 0:r.userAgent)?void 0:o.includes("jsdom"))){(n.__VUE_DEVTOOLS_HOOK_REPLAY__=n.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push((t=>{e(t,n)})),setTimeout((()=>{Fn||(n.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Vn=!0,Dn=[])}),3e3)}else Vn=!0,Dn=[]},tc={createComponentInstance:Si,setupComponent:Oi,renderComponentRoot:Yn,setCurrentRenderingInstance:Wn,isVNode:ei,normalizeVNode:hi},nc=null,rc=null,oc=null,sc="undefined"!=typeof document?document:null,ic=sc&&sc.createElement("template"),cc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o="svg"===t?sc.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?sc.createElementNS("http://www.w3.org/1998/Math/MathML",e):sc.createElement(e,n?{is:n}:void 0);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>sc.createTextNode(e),createComment:e=>sc.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>sc.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),o!==s&&(o=o.nextSibling););else{ic.innerHTML="svg"===r?`${e}`:"mathml"===r?`${e}`:e;const o=ic.content;if("svg"===r||"mathml"===r){const e=o.firstChild;for(;e.firstChild;)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},lc="transition",ac="animation",uc=Symbol("_vtc"),fc=(e,{slots:t})=>Ki($r,gc(e),t);fc.displayName="Transition";const dc={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},pc=fc.props=f({},Pr,dc),hc=(e,t=[])=>{m(e)?e.forEach((e=>e(...t))):e&&e(...t)},mc=e=>!!e&&(m(e)?e.some((e=>e.length>1)):e.length>1);function gc(e){const t={};for(const n in e)n in dc||(t[n]=e[n]);if(!1===e.css)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:l=s,appearActiveClass:a=i,appearToClass:u=c,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,m=function(e){if(null==e)return null;if(x(e))return[vc(e.enter),vc(e.leave)];{const t=vc(e);return[t,t]}}(o),g=m&&m[0],v=m&&m[1],{onBeforeEnter:y,onEnter:_,onEnterCancelled:b,onLeave:S,onLeaveCancelled:C,onBeforeAppear:T=y,onAppear:E=_,onAppearCancelled:k=b}=t,w=(e,t,n)=>{_c(e,t?u:c),_c(e,t?a:i),n&&n()},A=(e,t)=>{e._isLeaving=!1,_c(e,d),_c(e,h),_c(e,p),t&&t()},N=e=>(t,n)=>{const o=e?E:_,i=()=>w(t,e,n);hc(o,[t,i]),bc((()=>{_c(t,e?l:s),yc(t,e?u:c),mc(o)||xc(t,r,g,i)}))};return f(t,{onBeforeEnter(e){hc(y,[e]),yc(e,s),yc(e,i)},onBeforeAppear(e){hc(T,[e]),yc(e,l),yc(e,a)},onEnter:N(!1),onAppear:N(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>A(e,t);yc(e,d),kc(),yc(e,p),bc((()=>{e._isLeaving&&(_c(e,d),yc(e,h),mc(S)||xc(e,r,v,n))})),hc(S,[e,n])},onEnterCancelled(e){w(e,!1),hc(b,[e])},onAppearCancelled(e){w(e,!0),hc(k,[e])},onLeaveCancelled(e){A(e),hc(C,[e])}})}function vc(e){return U(e)}function yc(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[uc]||(e[uc]=new Set)).add(t)}function _c(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[uc];n&&(n.delete(t),n.size||(e[uc]=void 0))}function bc(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Sc=0;function xc(e,t,n,r){const o=e._endId=++Sc,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:c,propCount:l}=Cc(e,t);if(!i)return r();const a=i+"end";let u=0;const f=()=>{e.removeEventListener(a,d),s()},d=t=>{t.target===e&&++u>=l&&f()};setTimeout((()=>{u(n[e]||"").split(", "),o=r(`${lc}Delay`),s=r(`${lc}Duration`),i=Tc(o,s),c=r(`${ac}Delay`),l=r(`${ac}Duration`),a=Tc(c,l);let u=null,f=0,d=0;t===lc?i>0&&(u=lc,f=i,d=s.length):t===ac?a>0&&(u=ac,f=a,d=l.length):(f=Math.max(i,a),u=f>0?i>a?lc:ac:null,d=u?u===lc?s.length:l.length:0);return{type:u,timeout:f,propCount:d,hasTransform:u===lc&&/\b(transform|all)(,|$)/.test(r(`${lc}Property`).toString())}}function Tc(e,t){for(;e.lengthEc(t)+Ec(e[n]))))}function Ec(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function kc(){return document.body.offsetHeight}const wc=Symbol("_vod"),Ac=Symbol("_vsh"),Nc={beforeMount(e,{value:t},{transition:n}){e[wc]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Ic(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Ic(e,!0),r.enter(e)):r.leave(e,(()=>{Ic(e,!1)})):Ic(e,t))},beforeUnmount(e,{value:t}){Ic(e,t)}};function Ic(e,t){e.style.display=t?e[wc]:"none",e[Ac]=!t}const Rc=Symbol("");function Oc(e){const t=Ci();if(!t)return;const n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach((e=>Lc(e,n)))};const r=()=>{const r=e(t.proxy);Mc(t.subTree,r),n(r)};Sr(r),so((()=>{const e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),ao((()=>e.disconnect()))}))}function Mc(e,t){if(128&e.shapeFlag){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push((()=>{Mc(n.activeBranch,t)}))}for(;e.component;)e=e.component.subTree;if(1&e.shapeFlag&&e.el)Lc(e.el,t);else if(e.type===Bs)e.children.forEach((e=>Mc(e,t)));else if(e.type===js){let{el:n,anchor:r}=e;for(;n&&(Lc(n,t),n!==r);)n=n.nextSibling}}function Lc(e,t){if(1===e.nodeType){const n=e.style;let r="";for(const e in t)n.setProperty(`--${e}`,t[e]),r+=`--${e}: ${t[e]};`;n[Rc]=r}}const Pc=/(^|;)\s*display\s*:/;const $c=/\s*!important$/;function Fc(e,t,n){if(m(n))n.forEach((n=>Fc(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=function(e,t){const n=Vc[t];if(n)return n;let r=M(t);if("filter"!==r&&r in e)return Vc[t]=r;r=$(r);for(let n=0;n{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();vn(function(e,t){if(m(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}(e,n.value),t,5,[e])};return n.value=e,n.attached=zc(),n}(r,o);Hc(e,n,i,c)}else i&&(!function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,i,c),s[t]=void 0)}}const qc=/(?:Once|Passive|Capture)$/;let Wc=0;const Kc=Promise.resolve(),zc=()=>Wc||(Kc.then((()=>Wc=0)),Wc=Date.now());const Gc=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123; /*! #__NO_SIDE_EFFECTS__ */ -function Jc(e,t){const n=jr(e);class r extends Qc{constructor(e){super(n,e,t)}}return r.def=n,r} -/*! #__NO_SIDE_EFFECTS__ */const Yc=e=>Jc(e,Pl),Xc="undefined"!=typeof HTMLElement?HTMLElement:class{};class Qc extends Xc{constructor(e,t={},n){super(),this._def=e,this._props=t,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this._ob=null,this.shadowRoot&&n?n(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,this._ob&&(this._ob.disconnect(),this._ob=null),An((()=>{this._connected||(Ll(null,this.shadowRoot),this._instance=null)}))}_resolveDef(){this._resolved=!0;for(let e=0;e{for(const t of e)this._setAttr(t.attributeName)})),this._ob.observe(this,{attributes:!0});const e=(e,t=!1)=>{const{props:n,styles:r}=e;let o;if(n&&!m(n))for(const e in n){const t=n[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=U(this._props[e])),(o||(o=Object.create(null)))[M(e)]=!0)}this._numberProps=o,t&&this._resolveProps(e),this._applyStyles(r),this._update()},t=this._def.__asyncLoader;t?t().then((t=>e(t,!0))):e(this._def)}_resolveProps(e){const{props:t}=e,n=m(t)?t:Object.keys(t||{});for(const e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e],!0,!1);for(const e of n.map(M))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t)}})}_setAttr(e){let t=this.getAttribute(e);const n=M(e);this._numberProps&&this._numberProps[n]&&(t=U(t)),this._setProp(n,t,!1)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!0){t!==this._props[e]&&(this._props[e]=t,r&&this._instance&&this._update(),n&&(!0===t?this.setAttribute(P(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute(P(e),t+""):t||this.removeAttribute(P(e))))}_update(){Ll(this._createVNode(),this.shadowRoot)}_createVNode(){const e=ci(this._def,f({},this._props));return this._instance||(e.ce=e=>{this._instance=e,e.isCE=!0;const t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,{detail:t}))};e.emit=(e,...n)=>{t(e,n),P(e)!==e&&t(P(e),n)};let n=this;for(;n=n&&(n.parentNode||n.host);)if(n instanceof Qc){e.parent=n._instance,e.provides=n._instance.provides;break}}),e}_applyStyles(e){e&&e.forEach((e=>{const t=document.createElement("style");t.textContent=e,this.shadowRoot.appendChild(t)}))}}function Zc(e="$style"){{const t=Ci();if(!t)return s;const n=t.type.__cssModules;if(!n)return s;const r=n[e];return r||s}}const el=new WeakMap,tl=new WeakMap,nl=Symbol("_moveCb"),rl=Symbol("_enterCb"),ol={name:"TransitionGroup",props:f({},pc,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Ci(),r=Mr();let o,s;return co((()=>{if(!o.length)return;const t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){const r=e.cloneNode(),o=e[uc];o&&o.forEach((e=>{e.split(/\s+/).forEach((e=>e&&r.classList.remove(e)))}));n.split(/\s+/).forEach((e=>e&&r.classList.add(e))),r.style.display="none";const s=1===t.nodeType?t:t.parentNode;s.appendChild(r);const{hasTransform:i}=Cc(r);return s.removeChild(r),i}(o[0].el,n.vnode.el,t))return;o.forEach(il),o.forEach(cl);const r=o.filter(ll);kc(),r.forEach((e=>{const n=e.el,r=n.style;yc(n,t),r.transform=r.webkitTransform=r.transitionDuration="";const o=n[nl]=e=>{e&&e.target!==n||e&&!/transform$/.test(e.propertyName)||(n.removeEventListener("transitionend",o),n[nl]=null,_c(n,t))};n.addEventListener("transitionend",o)}))})),()=>{const i=Pt(e),c=gc(i);let l=i.tag||Bs;o=s,s=t.default?Ur(t.default()):[];for(let e=0;e{const t=e.props["onUpdate:modelValue"]||!1;return m(t)?e=>V(t,e):t};function ul(e){e.target.composing=!0}function fl(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const dl=Symbol("_assign"),pl={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[dl]=al(o);const s=r||o.props&&"number"===o.props.type;Hc(e,t?"change":"input",(t=>{if(t.target.composing)return;let r=e.value;n&&(r=r.trim()),s&&(r=H(r)),e[dl](r)})),n&&Hc(e,"change",(()=>{e.value=e.value.trim()})),t||(Hc(e,"compositionstart",ul),Hc(e,"compositionend",fl),Hc(e,"change",fl))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},s){if(e[dl]=al(s),e.composing)return;const i=null==t?"":t;if((o||"number"===e.type?H(e.value):e.value)!==i){if(document.activeElement===e&&"range"!==e.type){if(n)return;if(r&&e.value.trim()===i)return}e.value=i}}},hl={deep:!0,created(e,t,n){e[dl]=al(n),Hc(e,"change",(()=>{const t=e._modelValue,n=_l(e),r=e.checked,o=e[dl];if(m(t)){const e=le(t,n),s=-1!==e;if(r&&!s)o(t.concat(n));else if(!r&&s){const n=[...t];n.splice(e,1),o(n)}}else if(v(t)){const e=new Set(t);r?e.add(n):e.delete(n),o(e)}else o(bl(e,r))}))},mounted:ml,beforeUpdate(e,t,n){e[dl]=al(n),ml(e,t,n)}};function ml(e,{value:t,oldValue:n},r){e._modelValue=t,m(t)?e.checked=le(t,r.props.value)>-1:v(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=ce(t,bl(e,!0)))}const gl={created(e,{value:t},n){e.checked=ce(t,n.props.value),e[dl]=al(n),Hc(e,"change",(()=>{e[dl](_l(e))}))},beforeUpdate(e,{value:t,oldValue:n},r){e[dl]=al(r),t!==n&&(e.checked=ce(t,r.props.value))}},vl={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const o=v(t);Hc(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?H(_l(e)):_l(e)));e[dl](e.multiple?o?new Set(t):t:t[0]),e._assigning=!0,An((()=>{e._assigning=!1}))})),e[dl]=al(r)},mounted(e,{value:t,modifiers:{number:n}}){yl(e,t,n)},beforeUpdate(e,t,n){e[dl]=al(n)},updated(e,{value:t,modifiers:{number:n}}){e._assigning||yl(e,t,n)}};function yl(e,t,n){const r=e.multiple,o=m(t);if(!r||o||v(t)){for(let s=0,i=e.options.length;s-1}else i.selected=t.has(c);else if(ce(_l(i),t))return void(e.selectedIndex!==s&&(e.selectedIndex=s))}r||-1===e.selectedIndex||(e.selectedIndex=-1)}}function _l(e){return"_value"in e?e._value:e.value}function bl(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Sl={created(e,t,n){Cl(e,t,n,null,"created")},mounted(e,t,n){Cl(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){Cl(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){Cl(e,t,n,r,"updated")}};function xl(e,t){switch(e){case"SELECT":return vl;case"TEXTAREA":return pl;default:switch(t){case"checkbox":return hl;case"radio":return gl;default:return pl}}}function Cl(e,t,n,r,o){const s=xl(e.tagName,n.props&&n.props.type)[o];s&&s(e,t,n,r)}const Tl=["ctrl","shift","alt","meta"],El={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>Tl.some((n=>e[`${n}Key`]&&!t.includes(n)))},kl=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;e{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=n=>{if(!("key"in n))return;const r=P(n.key);return t.some((e=>e===r||wl[e]===r))?e(n):void 0})},Nl=f({patchProp:(e,t,n,r,o,s,i,c,l)=>{const f="svg"===o;"class"===t?function(e,t,n){const r=e[uc];r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,r,f):"style"===t?function(e,t,n){const r=e.style,o=b(n);let s=!1;if(n&&!o){if(t)if(b(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&Fc(r,t,"")}else for(const e in t)null==n[e]&&Fc(r,e,"");for(const e in n)"display"===e&&(s=!0),Fc(r,e,n[e])}else if(o){if(t!==n){const e=r[Rc];e&&(n+=";"+e),r.cssText=n,s=Pc.test(n)}}else t&&e.removeAttribute("style");wc in e&&(e[wc]=s?r.display:"",e[Ac]&&(r.display="none"))}(e,n,r):a(t)?u(t)||jc(e,t,0,r,i):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,r){if(r)return"innerHTML"===t||"textContent"===t||!!(t in e&&Gc(t)&&_(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(Gc(t)&&b(n))return!1;return t in e}(e,t,r,f))?function(e,t,n,r,o,s,i){if("innerHTML"===t||"textContent"===t)return r&&i(r,o,s),void(e[t]=null==n?"":n);const c=e.tagName;if("value"===t&&"PROGRESS"!==c&&!c.includes("-")){const r=null==n?"":n;return("OPTION"===c?e.getAttribute("value")||"":e.value)===r&&"_value"in e||(e.value=r),null==n&&e.removeAttribute(t),void(e._value=n)}let l=!1;if(""===n||null==n){const r=typeof e[t];"boolean"===r?n=ie(n):null==n&&"string"===r?(n="",l=!0):"number"===r&&(n=0,l=!0)}try{e[t]=n}catch(e){}l&&e.removeAttribute(t)}(e,t,r,s,i,c,l):("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),function(e,t,n,r,o){if(r&&t.startsWith("xlink:"))null==n?e.removeAttributeNS(Bc,t.slice(6,t.length)):e.setAttributeNS(Bc,t,n);else{const r=se(t);null==n||r&&!ie(n)?e.removeAttribute(t):e.setAttribute(t,r?"":n)}}(e,t,r,f))}},cc);let Il,Rl=!1;function Ol(){return Il||(Il=Es(Nl))}function Ml(){return Il=Rl?Il:ks(Nl),Rl=!0,Il}const Ll=(...e)=>{Ol().render(...e)},Pl=(...e)=>{Ml().hydrate(...e)},$l=(...e)=>{const t=Ol().createApp(...e);const{mount:n}=t;return t.mount=e=>{const r=Vl(e);if(!r)return;const o=t._component;_(o)||o.render||o.template||(o.template=r.innerHTML),r.innerHTML="";const s=n(r,!1,Dl(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),s},t},Fl=(...e)=>{const t=Ml().createApp(...e);const{mount:n}=t;return t.mount=e=>{const t=Vl(e);if(t)return n(t,!0,Dl(t))},t};function Dl(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function Vl(e){if(b(e)){return document.querySelector(e)}return e}let Bl=!1;const Hl=()=>{Bl||(Bl=!0,pl.getSSRProps=({value:e})=>({value:e}),gl.getSSRProps=({value:e},t)=>{if(t.props&&ce(t.props.value,e))return{checked:!0}},hl.getSSRProps=({value:e},t)=>{if(m(e)){if(t.props&&le(e,t.props.value)>-1)return{checked:!0}}else if(v(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Sl.getSSRProps=(e,t)=>{if("string"!=typeof t.type)return;const n=xl(t.type.toUpperCase(),t.props&&t.props.type);return n.getSSRProps?n.getSSRProps(e,t):void 0},Nc.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}})},Ul=Symbol(""),jl=Symbol(""),ql=Symbol(""),Wl=Symbol(""),Kl=Symbol(""),zl=Symbol(""),Gl=Symbol(""),Jl=Symbol(""),Yl=Symbol(""),Xl=Symbol(""),Ql=Symbol(""),Zl=Symbol(""),ea=Symbol(""),ta=Symbol(""),na=Symbol(""),ra=Symbol(""),oa=Symbol(""),sa=Symbol(""),ia=Symbol(""),ca=Symbol(""),la=Symbol(""),aa=Symbol(""),ua=Symbol(""),fa=Symbol(""),da=Symbol(""),pa=Symbol(""),ha=Symbol(""),ma=Symbol(""),ga=Symbol(""),va=Symbol(""),ya=Symbol(""),_a=Symbol(""),ba=Symbol(""),Sa=Symbol(""),xa=Symbol(""),Ca=Symbol(""),Ta=Symbol(""),Ea=Symbol(""),ka=Symbol(""),wa={[Ul]:"Fragment",[jl]:"Teleport",[ql]:"Suspense",[Wl]:"KeepAlive",[Kl]:"BaseTransition",[zl]:"openBlock",[Gl]:"createBlock",[Jl]:"createElementBlock",[Yl]:"createVNode",[Xl]:"createElementVNode",[Ql]:"createCommentVNode",[Zl]:"createTextVNode",[ea]:"createStaticVNode",[ta]:"resolveComponent",[na]:"resolveDynamicComponent",[ra]:"resolveDirective",[oa]:"resolveFilter",[sa]:"withDirectives",[ia]:"renderList",[ca]:"renderSlot",[la]:"createSlots",[aa]:"toDisplayString",[ua]:"mergeProps",[fa]:"normalizeClass",[da]:"normalizeStyle",[pa]:"normalizeProps",[ha]:"guardReactiveProps",[ma]:"toHandlers",[ga]:"camelize",[va]:"capitalize",[ya]:"toHandlerKey",[_a]:"setBlockTracking",[ba]:"pushScopeId",[Sa]:"popScopeId",[xa]:"withCtx",[Ca]:"unref",[Ta]:"isRef",[Ea]:"withMemo",[ka]:"isMemoSame"};const Aa={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function Na(e,t,n,r,o,s,i,c=!1,l=!1,a=!1,u=Aa){return e&&(c?(e.helper(zl),e.helper(Va(e.inSSR,a))):e.helper(Da(e.inSSR,a)),i&&e.helper(sa)),{type:13,tag:t,props:n,children:r,patchFlag:o,dynamicProps:s,directives:i,isBlock:c,disableTracking:l,isComponent:a,loc:u}}function Ia(e,t=Aa){return{type:17,loc:t,elements:e}}function Ra(e,t=Aa){return{type:15,loc:t,properties:e}}function Oa(e,t){return{type:16,loc:Aa,key:b(e)?Ma(e,!0):e,value:t}}function Ma(e,t=!1,n=Aa,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function La(e,t=Aa){return{type:8,loc:t,children:e}}function Pa(e,t=[],n=Aa){return{type:14,loc:n,callee:e,arguments:t}}function $a(e,t=void 0,n=!1,r=!1,o=Aa){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:o}}function Fa(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:Aa}}function Da(e,t){return e||t?Yl:Xl}function Va(e,t){return e||t?Gl:Jl}function Ba(e,{helper:t,removeHelper:n,inSSR:r}){e.isBlock||(e.isBlock=!0,n(Da(r,e.isComponent)),t(zl),t(Va(r,e.isComponent)))}const Ha=new Uint8Array([123,123]),Ua=new Uint8Array([125,125]);function ja(e){return e>=97&&e<=122||e>=65&&e<=90}function qa(e){return 32===e||10===e||9===e||12===e||13===e}function Wa(e){return 47===e||62===e||qa(e)}function Ka(e){const t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function tu(e){switch(e){case"Teleport":case"teleport":return jl;case"Suspense":case"suspense":return ql;case"KeepAlive":case"keep-alive":return Wl;case"BaseTransition":case"base-transition":return Kl}}const nu=/^\d|[^\$\w]/,ru=e=>!nu.test(e),ou=/[A-Za-z_$\xA0-\uFFFF]/,su=/[\.\?\w$\xA0-\uFFFF]/,iu=/\s+[.[]\s*|\s*[.[]\s+/g,cu=e=>{e=e.trim().replace(iu,(e=>e.trim()));let t=0,n=[],r=0,o=0,s=null;for(let i=0;i4===e.key.type&&e.key.content===r))}return n}function _u(e,t){return`_${t}_${e.replace(/[^\w]/g,((t,n)=>"-"===t?"_":e.charCodeAt(n).toString()))}`}const bu=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Su={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:l,isPreTag:l,isCustomElement:l,onError:Xa,onWarn:Qa,comments:!1,prefixIdentifiers:!1};let xu=Su,Cu=null,Tu="",Eu=null,ku=null,wu="",Au=-1,Nu=-1,Iu=0,Ru=!1,Ou=null;const Mu=[],Lu=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=Ha,this.delimiterClose=Ua,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=Ha,this.delimiterClose=Ua}getPos(e){let t=1,n=e+1;for(let r=this.newlines.length-1;r>=0;r--){const o=this.newlines[r];if(e>o){t=r+2,n=e-o;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){const e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){const t=this.sequenceIndex===this.currentSequence.length;if(t?Wa(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||qa(e)){const t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===za.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(Mu,{onerr:ef,ontext(e,t){Vu(Fu(e,t),e,t)},ontextentity(e,t,n){Vu(e,t,n)},oninterpolation(e,t){if(Ru)return Vu(Fu(e,t),e,t);let n=e+Lu.delimiterOpen.length,r=t-Lu.delimiterClose.length;for(;qa(Tu.charCodeAt(n));)n++;for(;qa(Tu.charCodeAt(r-1));)r--;let o=Fu(n,r);o.includes("&")&&(o=xu.decodeEntities(o,!1)),Ju({type:5,content:Zu(o,!1,Yu(n,r)),loc:Yu(e,t)})},onopentagname(e,t){const n=Fu(e,t);Eu={type:1,tag:n,ns:xu.getNamespace(n,Mu[0],xu.ns),tagType:0,props:[],children:[],loc:Yu(e-1,t),codegenNode:void 0}},onopentagend(e){Du(e)},onclosetag(e,t){const n=Fu(e,t);if(!xu.isVoidTag(n)){let r=!1;for(let e=0;e0&&ef(24,Mu[0].loc.start.offset);for(let n=0;n<=e;n++){Bu(Mu.shift(),t,n(7===e.type?e.rawName:e.name)===n))&&ef(2,t)},onattribend(e,t){if(Eu&&ku){if(Xu(ku.loc,t),0!==e)if(wu.includes("&")&&(wu=xu.decodeEntities(wu,!0)),6===ku.type)"class"===ku.name&&(wu=Gu(wu).trim()),1!==e||wu||ef(13,t),ku.value={type:2,content:wu,loc:1===e?Yu(Au,Nu):Yu(Au-1,Nu+1)},Lu.inSFCRoot&&"template"===Eu.tag&&"lang"===ku.name&&wu&&"html"!==wu&&Lu.enterRCDATA(Ka("{const o=t.start.offset+n;return Zu(e,!1,Yu(o,o+e.length),0,r?1:0)},c={source:i(s.trim(),n.indexOf(s,o.length)),value:void 0,key:void 0,index:void 0,finalized:!1};let l=o.trim().replace($u,"").trim();const a=o.indexOf(l),u=l.match(Pu);if(u){l=l.replace(Pu,"").trim();const e=u[1].trim();let t;if(e&&(t=n.indexOf(e,a+l.length),c.key=i(e,t,!0)),u[2]){const r=u[2].trim();r&&(c.index=i(r,n.indexOf(r,c.key?t+e.length:a+l.length),!0))}}l&&(c.value=i(l,a,!0));return c}(ku.exp));let t=-1;"bind"===ku.name&&(t=ku.modifiers.indexOf("sync"))>-1&&Ya("COMPILER_V_BIND_SYNC",xu,ku.loc,ku.rawName)&&(ku.name="model",ku.modifiers.splice(t,1))}7===ku.type&&"pre"===ku.name||Eu.props.push(ku)}wu="",Au=Nu=-1},oncomment(e,t){xu.comments&&Ju({type:3,content:Fu(e,t),loc:Yu(e-4,t+3)})},onend(){const e=Tu.length;for(let t=0;t64&&r<91)||tu(e)||(null==(n=xu.isBuiltInComponent)?void 0:n.call(xu,e))||xu.isNativeTag&&!xu.isNativeTag(e))return!0;var r;for(let e=0;e6===e.type&&"inline-template"===e.name));n&&Ya("COMPILER_INLINE_TEMPLATE",xu,n.loc)&&e.children.length&&(n.value={type:2,content:Fu(e.children[0].loc.start.offset,e.children[e.children.length-1].loc.end.offset),loc:n.loc})}}function Hu(e,t){let n=e;for(;Tu.charCodeAt(n)!==t&&n>=0;)n--;return n}const Uu=new Set(["if","else","else-if","for","slot"]);function ju({tag:e,props:t}){if("template"===e)for(let e=0;e0){if(e>=2){o.codegenNode.patchFlag="-1",o.codegenNode=t.hoist(o.codegenNode),s++;continue}}else{const e=o.codegenNode;if(13===e.type){const n=ff(e);if((!n||512===n||1===n)&&af(o,t)>=2){const n=uf(o);n&&(e.props=t.hoist(n))}e.dynamicProps&&(e.dynamicProps=t.hoist(e.dynamicProps))}}}if(1===o.type){const e=1===o.tagType;e&&t.scopes.vSlot++,of(o,t),e&&t.scopes.vSlot--}else if(11===o.type)of(o,t,1===o.children.length);else if(9===o.type)for(let e=0;e1)for(let o=0;on&&(w.childIndex--,w.onNodeRemoved()):(w.currentNode=null,w.onNodeRemoved()),w.parent.children.splice(n,1)},onNodeRemoved:c,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){b(e)&&(e=Ma(e)),w.hoists.push(e);const t=Ma(`_hoisted_${w.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1){return function(e,t,n=!1){return{type:20,index:e,value:t,isVNode:n,loc:Aa}}(w.cached++,e,t)}};return w.filters=new Set,w}function pf(e,t){const n=df(e,t);hf(e,n),t.hoistStatic&&nf(e,n),t.ssr||function(e,t){const{helper:n}=t,{children:r}=e;if(1===r.length){const n=r[0];if(rf(e,n)&&n.codegenNode){const r=n.codegenNode;13===r.type&&Ba(r,t),e.codegenNode=r}else e.codegenNode=n}else if(r.length>1){let r=64;W[64];0,e.codegenNode=Na(t,n(Ul),void 0,e.children,r+"",void 0,void 0,!0,void 0,!1)}}(e,n),e.helpers=new Set([...n.helpers.keys()]),e.components=[...n.components],e.directives=[...n.directives],e.imports=n.imports,e.hoists=n.hoists,e.temps=n.temps,e.cached=n.cached,e.transformed=!0,e.filters=[...n.filters]}function hf(e,t){t.currentNode=e;const{nodeTransforms:n}=t,r=[];for(let o=0;o{n--};for(;nt===e:t=>e.test(t);return(e,r)=>{if(1===e.type){const{props:o}=e;if(3===e.tagType&&o.some(du))return;const s=[];for(let i=0;i`${wa[e]}: _${wa[e]}`;function yf(e,t={}){const n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:r=!1,filename:o="template.vue.html",scopeId:s=null,optimizeImports:i=!1,runtimeGlobalName:c="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:a="vue/server-renderer",ssr:u=!1,isTS:f=!1,inSSR:d=!1}){const p={mode:t,prefixIdentifiers:n,sourceMap:r,filename:o,scopeId:s,optimizeImports:i,runtimeGlobalName:c,runtimeModuleName:l,ssrRuntimeModuleName:a,ssr:u,isTS:f,inSSR:d,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper(e){return`_${wa[e]}`},push(e,t=-2,n){p.code+=e},indent(){h(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:h(--p.indentLevel)},newline(){h(p.indentLevel)}};function h(e){p.push("\n"+" ".repeat(e),0)}return p}(e,t);t.onContextCreated&&t.onContextCreated(n);const{mode:r,push:o,prefixIdentifiers:s,indent:i,deindent:c,newline:l,scopeId:a,ssr:u}=n,f=Array.from(e.helpers),d=f.length>0,p=!s&&"module"!==r;!function(e,t){const{ssr:n,prefixIdentifiers:r,push:o,newline:s,runtimeModuleName:i,runtimeGlobalName:c,ssrRuntimeModuleName:l}=t,a=c,u=Array.from(e.helpers);if(u.length>0&&(o(`const _Vue = ${a}\n`,-1),e.hoists.length)){o(`const { ${[Yl,Xl,Ql,Zl,ea].filter((e=>u.includes(e))).map(vf).join(", ")} } = _Vue\n`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;const{push:n,newline:r,helper:o,scopeId:s,mode:i}=t;r();for(let o=0;o0)&&l()),e.directives.length&&(_f(e.directives,"directive",n),e.temps>0&&l()),e.filters&&e.filters.length&&(l(),_f(e.filters,"filter",n),l()),e.temps>0){o("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(o("\n",0),l()),u||o("return "),e.codegenNode?xf(e.codegenNode,n):o("null"),p&&(c(),o("}")),c(),o("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}function _f(e,t,{helper:n,push:r,newline:o,isTS:s}){const i=n("filter"===t?oa:"component"===t?ta:ra);for(let n=0;n3||!1;t.push("["),n&&t.indent(),Sf(e,t,n),n&&t.deindent(),t.push("]")}function Sf(e,t,n=!1,r=!0){const{push:o,newline:s}=t;for(let i=0;ie||"null"))}([s,i,c,l,a]),t),n(")"),f&&n(")");u&&(n(", "),xf(u,t),n(")"))}(e,t);break;case 14:!function(e,t){const{push:n,helper:r,pure:o}=t,s=b(e.callee)?e.callee:r(e.callee);o&&n(gf);n(s+"(",-2,e),Sf(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){const{push:n,indent:r,deindent:o,newline:s}=t,{properties:i}=e;if(!i.length)return void n("{}",-2,e);const c=i.length>1||!1;n(c?"{":"{ "),c&&r();for(let e=0;e "),(l||c)&&(n("{"),r());i?(l&&n("return "),m(i)?bf(i,t):xf(i,t)):c&&xf(c,t);(l||c)&&(o(),n("}"));a&&(e.isNonScopedSlot&&n(", undefined, true"),n(")"))}(e,t);break;case 19:!function(e,t){const{test:n,consequent:r,alternate:o,newline:s}=e,{push:i,indent:c,deindent:l,newline:a}=t;if(4===n.type){const e=!ru(n.content);e&&i("("),Cf(n,t),e&&i(")")}else i("("),xf(n,t),i(")");s&&c(),t.indentLevel++,s||i(" "),i("? "),xf(r,t),t.indentLevel--,s&&a(),s||i(" "),i(": ");const u=19===o.type;u||t.indentLevel++;xf(o,t),u||t.indentLevel--;s&&l(!0)}(e,t);break;case 20:!function(e,t){const{push:n,helper:r,indent:o,deindent:s,newline:i}=t;n(`_cache[${e.index}] || (`),e.isVNode&&(o(),n(`${r(_a)}(-1),`),i());n(`_cache[${e.index}] = `),xf(e.value,t),e.isVNode&&(n(","),i(),n(`${r(_a)}(1),`),i(),n(`_cache[${e.index}]`),s());n(")")}(e,t);break;case 21:Sf(e.body,t,!0,!1)}}function Cf(e,t){const{content:n,isStatic:r}=e;t.push(r?JSON.stringify(n):n,-3,e)}function Tf(e,t){for(let n=0;nfunction(e,t,n,r){if(!("else"===t.name||t.exp&&t.exp.content.trim())){const r=t.exp?t.exp.loc:e.loc;n.onError(Za(28,t.loc)),t.exp=Ma("true",!1,r)}0;if("if"===t.name){const o=wf(e,t),s={type:9,loc:e.loc,branches:[o]};if(n.replaceNode(s),r)return r(s,o,!0)}else{const o=n.parent.children;let s=o.indexOf(e);for(;s-- >=-1;){const i=o[s];if(i&&3===i.type)n.removeNode(i);else{if(!i||2!==i.type||i.content.trim().length){if(i&&9===i.type){"else-if"===t.name&&void 0===i.branches[i.branches.length-1].condition&&n.onError(Za(30,e.loc)),n.removeNode();const o=wf(e,t);0,i.branches.push(o);const s=r&&r(i,o,!1);hf(o,n),s&&s(),n.currentNode=null}else n.onError(Za(30,e.loc));break}n.removeNode(i)}}}}(e,t,n,((e,t,r)=>{const o=n.parent.children;let s=o.indexOf(e),i=0;for(;s-- >=0;){const e=o[s];e&&9===e.type&&(i+=e.branches.length)}return()=>{if(r)e.codegenNode=Af(t,i,n);else{const r=function(e){for(;;)if(19===e.type){if(19!==e.alternate.type)return e;e=e.alternate}else 20===e.type&&(e=e.value)}(e.codegenNode);r.alternate=Af(t,i+e.branches.length-1,n)}}}))));function wf(e,t){const n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!lu(e,"for")?e.children:[e],userKey:au(e,"key"),isTemplateIf:n}}function Af(e,t,n){return e.condition?Fa(e.condition,Nf(e,t,n),Pa(n.helper(Ql),['""',"true"])):Nf(e,t,n)}function Nf(e,t,n){const{helper:r}=n,o=Oa("key",Ma(`${t}`,!1,Aa,2)),{children:s}=e,i=s[0];if(1!==s.length||1!==i.type){if(1===s.length&&11===i.type){const e=i.codegenNode;return vu(e,o,n),e}{let t=64;W[64];return Na(n,r(Ul),Ra([o]),s,t+"",void 0,void 0,!0,!1,!1,e.loc)}}{const e=i.codegenNode,t=14===(c=e).type&&c.callee===Ea?c.arguments[1].returns:c;return 13===t.type&&Ba(t,n),vu(t,o,n),e}var c}const If=mf("for",((e,t,n)=>{const{helper:r,removeHelper:o}=n;return function(e,t,n,r){if(!t.exp)return void n.onError(Za(31,t.loc));const o=t.forParseResult;if(!o)return void n.onError(Za(32,t.loc));Rf(o,n);const{addIdentifiers:s,removeIdentifiers:i,scopes:c}=n,{source:l,value:a,key:u,index:f}=o,d={type:11,loc:t.loc,source:l,valueAlias:a,keyAlias:u,objectIndexAlias:f,parseResult:o,children:pu(e)?e.children:[e]};n.replaceNode(d),c.vFor++;const p=r&&r(d);return()=>{c.vFor--,p&&p()}}(e,t,n,(t=>{const s=Pa(r(ia),[t.source]),i=pu(e),c=lu(e,"memo"),l=au(e,"key"),a=l&&(6===l.type?Ma(l.value.content,!0):l.exp),u=l?Oa("key",a):null,f=4===t.source.type&&t.source.constType>0,d=f?64:l?128:256;return t.codegenNode=Na(n,r(Ul),void 0,s,d+"",void 0,void 0,!0,!f,!1,e.loc),()=>{let l;const{children:d}=t;const p=1!==d.length||1!==d[0].type,h=hu(e)?e:i&&1===e.children.length&&hu(e.children[0])?e.children[0]:null;if(h?(l=h.codegenNode,i&&u&&vu(l,u,n)):p?l=Na(n,r(Ul),u?Ra([u]):void 0,e.children,"64",void 0,void 0,!0,void 0,!1):(l=d[0].codegenNode,i&&u&&vu(l,u,n),l.isBlock!==!f&&(l.isBlock?(o(zl),o(Va(n.inSSR,l.isComponent))):o(Da(n.inSSR,l.isComponent))),l.isBlock=!f,l.isBlock?(r(zl),r(Va(n.inSSR,l.isComponent))):r(Da(n.inSSR,l.isComponent))),c){const e=$a(Of(t.parseResult,[Ma("_cached")]));e.body={type:21,body:[La(["const _memo = (",c.exp,")"]),La(["if (_cached",...a?[" && _cached.key === ",a]:[],` && ${n.helperString(ka)}(_cached, _memo)) return _cached`]),La(["const _item = ",l]),Ma("_item.memo = _memo"),Ma("return _item")],loc:Aa},s.arguments.push(e,Ma("_cache"),Ma(String(n.cached++)))}else s.arguments.push($a(Of(t.parseResult),l,!0))}}))}));function Rf(e,t){e.finalized||(e.finalized=!0)}function Of({value:e,key:t,index:n},r=[]){return function(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map(((e,t)=>e||Ma("_".repeat(t+1),!1)))}([e,t,n,...r])}const Mf=Ma("undefined",!1),Lf=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){const n=lu(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},Pf=(e,t,n,r)=>$a(e,n,!1,!0,n.length?n[0].loc:r);function $f(e,t,n=Pf){t.helper(xa);const{children:r,loc:o}=e,s=[],i=[];let c=t.scopes.vSlot>0||t.scopes.vFor>0;const l=lu(e,"slot",!0);if(l){const{arg:e,exp:t}=l;e&&!eu(e)&&(c=!0),s.push(Oa(e||Ma("default",!0),n(t,void 0,r,o)))}let a=!1,u=!1;const f=[],d=new Set;let p=0;for(let e=0;e{const s=n(e,void 0,r,o);return t.compatConfig&&(s.isNonScopedSlot=!0),Oa("default",s)};a?f.length&&f.some((e=>Vf(e)))&&(u?t.onError(Za(39,f[0].loc)):s.push(e(void 0,f))):s.push(e(void 0,r))}const h=c?2:Df(e.children)?3:1;let m=Ra(s.concat(Oa("_",Ma(h+"",!1))),o);return i.length&&(m=Pa(t.helper(la),[m,Ia(i)])),{slots:m,hasDynamicSlots:c}}function Ff(e,t,n){const r=[Oa("name",e),Oa("fn",t)];return null!=n&&r.push(Oa("key",Ma(String(n),!0))),Ra(r)}function Df(e){for(let t=0;tfunction(){if(1!==(e=t.currentNode).type||0!==e.tagType&&1!==e.tagType)return;const{tag:n,props:r}=e,o=1===e.tagType;let s=o?function(e,t,n=!1){let{tag:r}=e;const o=Wf(r),s=au(e,"is");if(s)if(o||Ja("COMPILER_IS_ON_ELEMENT",t)){const e=6===s.type?s.value&&Ma(s.value.content,!0):s.exp;if(e)return Pa(t.helper(na),[e])}else 6===s.type&&s.value.content.startsWith("vue:")&&(r=s.value.content.slice(4));const i=tu(r)||t.isBuiltInComponent(r);if(i)return n||t.helper(i),i;return t.helper(ta),t.components.add(r),_u(r,"component")}(e,t):`"${n}"`;const i=x(s)&&s.callee===na;let c,l,a,u,f,d,p=0,h=i||s===jl||s===ql||!o&&("svg"===n||"foreignObject"===n);if(r.length>0){const n=Uf(e,t,void 0,o,i);c=n.props,p=n.patchFlag,f=n.dynamicPropNames;const r=n.directives;d=r&&r.length?Ia(r.map((e=>function(e,t){const n=[],r=Bf.get(e);r?n.push(t.helperString(r)):(t.helper(ra),t.directives.add(e.name),n.push(_u(e.name,"directive")));const{loc:o}=e;e.exp&&n.push(e.exp);e.arg&&(e.exp||n.push("void 0"),n.push(e.arg));if(Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));const t=Ma("true",!1,o);n.push(Ra(e.modifiers.map((e=>Oa(e,t))),o))}return Ia(n,e.loc)}(e,t)))):void 0,n.shouldUseBlock&&(h=!0)}if(e.children.length>0){s===Wl&&(h=!0,p|=1024);if(o&&s!==jl&&s!==Wl){const{slots:n,hasDynamicSlots:r}=$f(e,t);l=n,r&&(p|=1024)}else if(1===e.children.length&&s!==jl){const n=e.children[0],r=n.type,o=5===r||8===r;o&&0===sf(n,t)&&(p|=1),l=o||2===r?n:e.children}else l=e.children}0!==p&&(a=String(p),f&&f.length&&(u=function(e){let t="[";for(let n=0,r=e.length;n0;let h=!1,m=0,g=!1,v=!1,y=!1,_=!1,b=!1,x=!1;const C=[],T=e=>{u.length&&(f.push(Ra(jf(u),c)),u=[]),e&&f.push(e)},E=({key:e,value:n})=>{if(eu(e)){const s=e.content,i=a(s);if(!i||r&&!o||"onclick"===s.toLowerCase()||"onUpdate:modelValue"===s||N(s)||(_=!0),i&&N(s)&&(x=!0),i&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&sf(n,t)>0)return;"ref"===s?g=!0:"class"===s?v=!0:"style"===s?y=!0:"key"===s||C.includes(s)||C.push(s),!r||"class"!==s&&"style"!==s||C.includes(s)||C.push(s)}else b=!0};for(let o=0;o0&&u.push(Oa(Ma("ref_for",!0),Ma("true")))),"is"===n&&(Wf(i)||o&&o.content.startsWith("vue:")||Ja("COMPILER_IS_ON_ELEMENT",t)))continue;u.push(Oa(Ma(n,!0,r),Ma(o?o.content:"",s,o?o.loc:e)))}else{const{name:n,arg:o,exp:a,loc:g,modifiers:v}=l,y="bind"===n,_="on"===n;if("slot"===n){r||t.onError(Za(40,g));continue}if("once"===n||"memo"===n)continue;if("is"===n||y&&uu(o,"is")&&(Wf(i)||Ja("COMPILER_IS_ON_ELEMENT",t)))continue;if(_&&s)continue;if((y&&uu(o,"key")||_&&p&&uu(o,"vue:before-update"))&&(h=!0),y&&uu(o,"ref")&&t.scopes.vFor>0&&u.push(Oa(Ma("ref_for",!0),Ma("true"))),!o&&(y||_)){if(b=!0,a)if(y){if(T(),Ja("COMPILER_V_BIND_OBJECT_ORDER",t)){f.unshift(a);continue}f.push(a)}else T({type:14,loc:g,callee:t.helper(ma),arguments:r?[a]:[a,"true"]});else t.onError(Za(y?34:35,g));continue}y&&v.includes("prop")&&(m|=32);const x=t.directiveTransforms[n];if(x){const{props:n,needRuntime:r}=x(l,e,t);!s&&n.forEach(E),_&&o&&!eu(o)?T(Ra(n,c)):u.push(...n),r&&(d.push(l),S(r)&&Bf.set(l,r))}else I(n)||(d.push(l),p&&(h=!0))}}let k;if(f.length?(T(),k=f.length>1?Pa(t.helper(ua),f,c):f[0]):u.length&&(k=Ra(jf(u),c)),b?m|=16:(v&&!r&&(m|=2),y&&!r&&(m|=4),C.length&&(m|=8),_&&(m|=32)),h||0!==m&&32!==m||!(g||x||d.length>0)||(m|=512),!t.inSSR&&k)switch(k.type){case 15:let e=-1,n=-1,r=!1;for(let t=0;t{if(hu(e)){const{children:n,loc:r}=e,{slotName:o,slotProps:s}=function(e,t){let n,r='"default"';const o=[];for(let t=0;t0){const{props:r,directives:s}=Uf(e,t,o,!1,!1);n=r,s.length&&t.onError(Za(36,s[0].loc))}return{slotName:r,slotProps:n}}(e,t),i=[t.prefixIdentifiers?"_ctx.$slots":"$slots",o,"{}","undefined","true"];let c=2;s&&(i[2]=s,c=3),n.length&&(i[3]=$a([],n,!1,!1,r),c=4),t.scopeId&&!t.slotted&&(c=5),i.splice(c),e.codegenNode=Pa(t.helper(ca),i,r)}};const zf=/^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,Gf=(e,t,n,r)=>{const{loc:o,modifiers:s,arg:i}=e;let c;if(e.exp||s.length||n.onError(Za(35,o)),4===i.type)if(i.isStatic){let e=i.content;0,e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`);c=Ma(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?F(M(e)):`on:${e}`,!0,i.loc)}else c=La([`${n.helperString(ya)}(`,i,")"]);else c=i,c.children.unshift(`${n.helperString(ya)}(`),c.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let a=n.cacheHandlers&&!l&&!n.inVOnce;if(l){const e=cu(l.content),t=!(e||zf.test(l.content)),n=l.content.includes(";");0,(t||a&&e)&&(l=La([`${t?"$event":"(...args)"} => ${n?"{":"("}`,l,n?"}":")"]))}let u={props:[Oa(c,l||Ma("() => {}",!1,o))]};return r&&(u=r(u)),a&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach((e=>e.key.isHandlerKey=!0)),u},Jf=(e,t,n)=>{const{modifiers:r,loc:o}=e,s=e.arg;let{exp:i}=e;if(i&&4===i.type&&!i.content.trim()&&(i=void 0),!i){if(4!==s.type||!s.isStatic)return n.onError(Za(52,s.loc)),{props:[Oa(s,Ma("",!0,o))]};const t=M(s.content);i=e.exp=Ma(t,!1,s.loc)}return 4!==s.type?(s.children.unshift("("),s.children.push(') || ""')):s.isStatic||(s.content=`${s.content} || ""`),r.includes("camel")&&(4===s.type?s.isStatic?s.content=M(s.content):s.content=`${n.helperString(ga)}(${s.content})`:(s.children.unshift(`${n.helperString(ga)}(`),s.children.push(")"))),n.inSSR||(r.includes("prop")&&Yf(s,"."),r.includes("attr")&&Yf(s,"^")),{props:[Oa(s,i)]}},Yf=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Xf=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{const n=e.children;let r,o=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name]))||"template"===e.tag)))for(let e=0;e{if(1===e.type&&lu(e,"once",!0)){if(Qf.has(e)||t.inVOnce||t.inSSR)return;return Qf.add(e),t.inVOnce=!0,t.helper(_a),()=>{t.inVOnce=!1;const e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0))}}},ed=(e,t,n)=>{const{exp:r,arg:o}=e;if(!r)return n.onError(Za(41,e.loc)),td();const s=r.loc.source,i=4===r.type?r.content:s,c=n.bindingMetadata[s];if("props"===c||"props-aliased"===c)return n.onError(Za(44,r.loc)),td();if(!i.trim()||!cu(i))return n.onError(Za(42,r.loc)),td();const l=o||Ma("modelValue",!0),a=o?eu(o)?`onUpdate:${M(o.content)}`:La(['"onUpdate:" + ',o]):"onUpdate:modelValue";let u;u=La([`${n.isTS?"($event: any)":"$event"} => ((`,r,") = $event)"]);const f=[Oa(l,e.exp),Oa(a,u)];if(e.modifiers.length&&1===t.tagType){const t=e.modifiers.map((e=>(ru(e)?e:JSON.stringify(e))+": true")).join(", "),n=o?eu(o)?`${o.content}Modifiers`:La([o,' + "Modifiers"']):"modelModifiers";f.push(Oa(n,Ma(`{ ${t} }`,!1,e.loc,2)))}return td(f)};function td(e=[]){return{props:e}}const nd=/[\w).+\-_$\]]/,rd=(e,t)=>{Ja("COMPILER_FILTERS",t)&&(5===e.type&&od(e.content,t),1===e.type&&e.props.forEach((e=>{7===e.type&&"for"!==e.name&&e.exp&&od(e.exp,t)})))};function od(e,t){if(4===e.type)sd(e,t);else for(let n=0;n=0&&(e=n.charAt(t)," "===e);t--);e&&nd.test(e)||(u=!0)}}else void 0===i?(h=s+1,i=n.slice(0,s).trim()):g();function g(){m.push(n.slice(h,s).trim()),h=s+1}if(void 0===i?i=n.slice(0,s).trim():0!==h&&g(),m.length){for(s=0;s{if(1===e.type){const n=lu(e,"memo");if(!n||cd.has(e))return;return cd.add(e),()=>{const r=e.codegenNode||t.currentNode.codegenNode;r&&13===r.type&&(1!==e.tagType&&Ba(r,t),e.codegenNode=Pa(t.helper(Ea),[n.exp,$a(void 0,r),"_cache",String(t.cached++)]))}}};function ad(e,t={}){const n=t.onError||Xa,r="module"===t.mode;!0===t.prefixIdentifiers?n(Za(47)):r&&n(Za(48));t.cacheHandlers&&n(Za(49)),t.scopeId&&!r&&n(Za(50));const o=f({},t,{prefixIdentifiers:!1}),s=b(e)?tf(e,o):e,[i,c]=[[Zf,kf,ld,If,rd,Kf,Hf,Lf,Xf],{on:Gf,bind:Jf,model:ed}];return pf(s,f({},o,{nodeTransforms:[...i,...t.nodeTransforms||[]],directiveTransforms:f({},c,t.directiveTransforms||{})})),yf(s,o)}const ud=Symbol(""),fd=Symbol(""),dd=Symbol(""),pd=Symbol(""),hd=Symbol(""),md=Symbol(""),gd=Symbol(""),vd=Symbol(""),yd=Symbol(""),_d=Symbol("");var bd;let Sd;bd={[ud]:"vModelRadio",[fd]:"vModelCheckbox",[dd]:"vModelText",[pd]:"vModelSelect",[hd]:"vModelDynamic",[md]:"withModifiers",[gd]:"withKeys",[vd]:"vShow",[yd]:"Transition",[_d]:"TransitionGroup"},Object.getOwnPropertySymbols(bd).forEach((e=>{wa[e]=bd[e]}));const xd={parseMode:"html",isVoidTag:re,isNativeTag:e=>ee(e)||te(e)||ne(e),isPreTag:e=>"pre"===e,decodeEntities:function(e,t=!1){return Sd||(Sd=document.createElement("div")),t?(Sd.innerHTML=`
`,Sd.children[0].getAttribute("foo")):(Sd.innerHTML=e,Sd.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?yd:"TransitionGroup"===e||"transition-group"===e?_d:void 0,getNamespace(e,t,n){let r=t?t.ns:n;if(t&&2===r)if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some((e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content)))&&(r=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(r=0);else t&&1===r&&("foreignObject"!==t.tag&&"desc"!==t.tag&&"title"!==t.tag||(r=0));if(0===r){if("svg"===e)return 1;if("math"===e)return 2}return r}},Cd=(e,t)=>{const n=X(e);return Ma(JSON.stringify(n),!1,t,3)};function Td(e,t){return Za(e,t)}const Ed=o("passive,once,capture"),kd=o("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),wd=o("left,right"),Ad=o("onkeyup,onkeydown,onkeypress",!0),Nd=(e,t)=>eu(e)&&"onclick"===e.content.toLowerCase()?Ma(t,!0):4!==e.type?La(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e;const Id=(e,t)=>{1!==e.type||0!==e.tagType||"script"!==e.tag&&"style"!==e.tag||t.removeNode()},Rd=[e=>{1===e.type&&e.props.forEach(((t,n)=>{6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:Ma("style",!0,t.loc),exp:Cd(t.value.content,t.loc),modifiers:[],loc:t.loc})}))}],Od={cloak:()=>({props:[]}),html:(e,t,n)=>{const{exp:r,loc:o}=e;return r||n.onError(Td(53,o)),t.children.length&&(n.onError(Td(54,o)),t.children.length=0),{props:[Oa(Ma("innerHTML",!0,o),r||Ma("",!0))]}},text:(e,t,n)=>{const{exp:r,loc:o}=e;return r||n.onError(Td(55,o)),t.children.length&&(n.onError(Td(56,o)),t.children.length=0),{props:[Oa(Ma("textContent",!0),r?sf(r,n)>0?r:Pa(n.helperString(aa),[r],o):Ma("",!0))]}},model:(e,t,n)=>{const r=ed(e,t,n);if(!r.props.length||1===t.tagType)return r;e.arg&&n.onError(Td(58,e.arg.loc));const{tag:o}=t,s=n.isCustomElement(o);if("input"===o||"textarea"===o||"select"===o||s){let i=dd,c=!1;if("input"===o||s){const r=au(t,"type");if(r){if(7===r.type)i=hd;else if(r.value)switch(r.value.content){case"radio":i=ud;break;case"checkbox":i=fd;break;case"file":c=!0,n.onError(Td(59,e.loc))}}else(function(e){return e.props.some((e=>!(7!==e.type||"bind"!==e.name||e.arg&&4===e.arg.type&&e.arg.isStatic)))})(t)&&(i=hd)}else"select"===o&&(i=pd);c||(r.needRuntime=n.helper(i))}else n.onError(Td(57,e.loc));return r.props=r.props.filter((e=>!(4===e.key.type&&"modelValue"===e.key.content))),r},on:(e,t,n)=>Gf(e,t,n,(t=>{const{modifiers:r}=e;if(!r.length)return t;let{key:o,value:s}=t.props[0];const{keyModifiers:i,nonKeyModifiers:c,eventOptionModifiers:l}=((e,t,n,r)=>{const o=[],s=[],i=[];for(let r=0;r{const{exp:r,loc:o}=e;return r||n.onError(Td(61,o)),{props:[],needRuntime:n.helper(vd)}}};const Md=new WeakMap;function Ld(e,t){if(!b(e)){if(!e.nodeType)return c;e=e.innerHTML}const n=e,o=function(e){let t=Md.get(null!=e?e:s);return t||(t=Object.create(null),Md.set(null!=e?e:s,t)),t}(t),i=o[n];if(i)return i;if("#"===e[0]){const t=document.querySelector(e);0,e=t?t.innerHTML:""}const l=f({hoistStatic:!0,onError:void 0,onWarn:c},t);l.isCustomElement||"undefined"==typeof customElements||(l.isCustomElement=e=>!!customElements.get(e));const{code:a}=function(e,t={}){return ad(e,f({},xd,t,{nodeTransforms:[Id,...Rd,...t.nodeTransforms||[]],directiveTransforms:f({},Od,t.directiveTransforms||{}),transformHoist:null}))}(e,l);const u=new Function("Vue",a)(r);return u._rc=!0,o[n]=u}Li(Ld)}}]); \ No newline at end of file +function o(e,t){const n=new Set(e.split(","));return t?e=>n.has(e.toLowerCase()):e=>n.has(e)}n.r(r),n.d(r,{BaseTransition:function(){return Bs},BaseTransitionPropsValidators:function(){return Fs},Comment:function(){return ni},DeprecationTypes:function(){return yc},EffectScope:function(){return ye},ErrorCodes:function(){return yn},ErrorTypeStrings:function(){return dc},Fragment:function(){return ei},KeepAlive:function(){return Es},ReactiveEffect:function(){return Ce},Static:function(){return ri},Suspense:function(){return gr},Teleport:function(){return Qs},Text:function(){return ti},TrackOpTypes:function(){return fn},Transition:function(){return kc},TransitionGroup:function(){return _l},TriggerOpTypes:function(){return dn},VueElement:function(){return pl},assertNumber:function(){return vn},callWithAsyncErrorHandling:function(){return Sn},callWithErrorHandling:function(){return _n},camelize:function(){return M},capitalize:function(){return $},cloneVNode:function(){return Ci},compatUtils:function(){return vc},computed:function(){return oc},createApp:function(){return Xl},createBlock:function(){return pi},createCommentVNode:function(){return Ei},createElementBlock:function(){return di},createElementVNode:function(){return bi},createHydrationRenderer:function(){return is},createPropsRestProxy:function(){return ao},createRenderer:function(){return ss},createSSRApp:function(){return Ql},createSlots:function(){return Dr},createStaticVNode:function(){return ki},createTextVNode:function(){return Ti},createVNode:function(){return _i},customRef:function(){return on},defineAsyncComponent:function(){return Br},defineComponent:function(){return Fr},defineCustomElement:function(){return ul},defineEmits:function(){return Xr},defineExpose:function(){return Qr},defineModel:function(){return to},defineOptions:function(){return Zr},defineProps:function(){return Jr},defineSSRCustomElement:function(){return fl},defineSlots:function(){return eo},devtools:function(){return pc},effect:function(){return Ae},effectScope:function(){return be},getCurrentInstance:function(){return $i},getCurrentScope:function(){return Se},getTransitionRawChildren:function(){return Ws},guardReactiveProps:function(){return xi},h:function(){return ic},handleError:function(){return xn},hasInjectionContext:function(){return Io},hydrate:function(){return Jl},initCustomFormatter:function(){return cc},initDirectivesForSSR:function(){return na},inject:function(){return No},isMemoSame:function(){return ac},isProxy:function(){return Ft},isReactive:function(){return Pt},isReadonly:function(){return $t},isRef:function(){return Kt},isRuntimeOnly:function(){return Yi},isShallow:function(){return Dt},isVNode:function(){return hi},markRaw:function(){return Bt},mergeDefaults:function(){return co},mergeModels:function(){return lo},mergeProps:function(){return Ii},nextTick:function(){return On},normalizeClass:function(){return Q},normalizeProps:function(){return Z},normalizeStyle:function(){return K},onActivated:function(){return As},onBeforeMount:function(){return Tr},onBeforeUnmount:function(){return Ar},onBeforeUpdate:function(){return Er},onDeactivated:function(){return Ns},onErrorCaptured:function(){return Mr},onMounted:function(){return kr},onRenderTracked:function(){return Or},onRenderTriggered:function(){return Rr},onScopeDispose:function(){return xe},onServerPrefetch:function(){return Ir},onUnmounted:function(){return Nr},onUpdated:function(){return wr},openBlock:function(){return ii},popScopeId:function(){return Xn},provide:function(){return Ao},proxyRefs:function(){return nn},pushScopeId:function(){return Jn},queuePostFlushCb:function(){return Pn},reactive:function(){return It},readonly:function(){return Ot},ref:function(){return Yt},registerRuntimeCompiler:function(){return Ki},render:function(){return Gl},renderList:function(){return $r},renderSlot:function(){return Hr},resolveComponent:function(){return lr},resolveDirective:function(){return fr},resolveDynamicComponent:function(){return ur},resolveFilter:function(){return gc},resolveTransitionHooks:function(){return Hs},setBlockTracking:function(){return ui},setDevtoolsHook:function(){return hc},setTransitionHooks:function(){return zs},shallowReactive:function(){return Rt},shallowReadonly:function(){return Mt},shallowRef:function(){return Gt},ssrContextKey:function(){return hs},ssrUtils:function(){return mc},stop:function(){return Ne},toDisplayString:function(){return pe},toHandlerKey:function(){return D},toHandlers:function(){return qr},toRaw:function(){return Vt},toRef:function(){return an},toRefs:function(){return sn},toValue:function(){return en},transformVNodeArgs:function(){return gi},triggerRef:function(){return Qt},unref:function(){return Zt},useAttrs:function(){return oo},useCssModule:function(){return hl},useCssVars:function(){return Wc},useModel:function(){return sc},useSSRContext:function(){return ms},useSlots:function(){return ro},useTransitionState:function(){return $s},vModelCheckbox:function(){return Nl},vModelDynamic:function(){return $l},vModelRadio:function(){return Rl},vModelSelect:function(){return Ol},vModelText:function(){return Al},vShow:function(){return jc},version:function(){return uc},warn:function(){return fc},watch:function(){return _s},watchEffect:function(){return gs},watchPostEffect:function(){return vs},watchSyncEffect:function(){return ys},withAsyncContext:function(){return uo},withCtx:function(){return Zn},withDefaults:function(){return no},withDirectives:function(){return Lr},withKeys:function(){return jl},withMemo:function(){return lc},withModifiers:function(){return Ul},withScopeId:function(){return Qn}});const s={},i=[],c=()=>{},l=()=>!1,a=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),u=e=>e.startsWith("onUpdate:"),f=Object.assign,d=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},p=Object.prototype.hasOwnProperty,h=(e,t)=>p.call(e,t),m=Array.isArray,g=e=>"[object Map]"===k(e),v=e=>"[object Set]"===k(e),y=e=>"[object Date]"===k(e),b=e=>"function"==typeof e,_=e=>"string"==typeof e,S=e=>"symbol"==typeof e,x=e=>null!==e&&"object"==typeof e,C=e=>(x(e)||b(e))&&b(e.then)&&b(e.catch),T=Object.prototype.toString,k=e=>T.call(e),E=e=>k(e).slice(8,-1),w=e=>"[object Object]"===k(e),A=e=>_(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,N=o(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),I=o("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),R=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},O=/-(\w)/g,M=R((e=>e.replace(O,((e,t)=>t?t.toUpperCase():"")))),L=/\B([A-Z])/g,P=R((e=>e.replace(L,"-$1").toLowerCase())),$=R((e=>e.charAt(0).toUpperCase()+e.slice(1))),D=R((e=>e?`on${$(e)}`:"")),F=(e,t)=>!Object.is(e,t),V=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},U=e=>{const t=parseFloat(e);return isNaN(t)?e:t},H=e=>{const t=_(e)?Number(e):NaN;return isNaN(t)?e:t};let j;const q=()=>j||(j="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n.g?n.g:{});const z={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},W=o("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error");function K(e){if(m(e)){const t={};for(let n=0;n{if(e){const n=e.split(G);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function Q(e){let t="";if(_(e))t=e;else if(m(e))for(let n=0;nue(e,t)))}const de=e=>!(!e||!0!==e.__v_isRef),pe=e=>_(e)?e:null==e?"":m(e)||x(e)&&(e.toString===T||!b(e.toString))?de(e)?pe(e.value):JSON.stringify(e,he,2):String(e),he=(e,t)=>de(t)?he(e,t.value):g(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],r)=>(e[me(t,r)+" =>"]=n,e)),{})}:v(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>me(e)))}:S(t)?me(t):!x(t)||m(t)||w(t)?t:String(t),me=(e,t="")=>{var n;return S(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};let ge,ve;class ye{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ge,!e&&ge&&(this.index=(ge.scopes||(ge.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=ge;try{return ge=this,e()}finally{ge=t}}else 0}on(){ge=this}off(){ge=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}1===this._dirtyLevel&&(this._dirtyLevel=0),Le()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=Ie,t=ve;try{return Ie=!0,ve=this,this._runnings++,ke(this),this.fn()}finally{Ee(this),this._runnings--,ve=t,Ie=e}}stop(){this.active&&(ke(this),Ee(this),this.onStop&&this.onStop(),this.active=!1)}}function Te(e){return e.value}function ke(e){e._trackId++,e._depsLength=0}function Ee(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()}));t&&(f(n,t),t.scope&&_e(n,t.scope)),t&&t.lazy||n.run();const r=n.run.bind(n);return r.effect=n,r}function Ne(e){e.effect.stop()}let Ie=!0,Re=0;const Oe=[];function Me(){Oe.push(Ie),Ie=!1}function Le(){const e=Oe.pop();Ie=void 0===e||e}function Pe(){Re++}function $e(){for(Re--;!Re&&Fe.length;)Fe.shift()()}function De(e,t,n){if(t.get(e)!==e._trackId){t.set(e,e._trackId);const n=e.deps[e._depsLength];n!==t?(n&&we(n,e),e.deps[e._depsLength++]=t):e._depsLength++}}const Fe=[];function Ve(e,t,n){Pe();for(const n of e.keys()){let r;n._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},Ue=new WeakMap,He=Symbol(""),je=Symbol("");function qe(e,t,n){if(Ie&&ve){let t=Ue.get(e);t||Ue.set(e,t=new Map);let r=t.get(n);r||t.set(n,r=Be((()=>t.delete(n)))),De(ve,r)}}function ze(e,t,n,r,o,s){const i=Ue.get(e);if(!i)return;let c=[];if("clear"===t)c=[...i.values()];else if("length"===n&&m(e)){const e=Number(r);i.forEach(((t,n)=>{("length"===n||!S(n)&&n>=e)&&c.push(t)}))}else switch(void 0!==n&&c.push(i.get(n)),t){case"add":m(e)?A(n)&&c.push(i.get("length")):(c.push(i.get(He)),g(e)&&c.push(i.get(je)));break;case"delete":m(e)||(c.push(i.get(He)),g(e)&&c.push(i.get(je)));break;case"set":g(e)&&c.push(i.get(He))}Pe();for(const e of c)e&&Ve(e,4);$e()}const We=o("__proto__,__v_isRef,__isVue"),Ke=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(S)),Ye=Ge();function Ge(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Vt(this);for(let e=0,t=this.length;e{e[t]=function(...e){Me(),Pe();const n=Vt(this)[t].apply(this,e);return $e(),Le(),n}})),e}function Je(e){S(e)||(e=String(e));const t=Vt(this);return qe(t,0,e),t.hasOwnProperty(e)}class Xe{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const r=this._isReadonly,o=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return o;if("__v_raw"===t)return n===(r?o?Nt:At:o?wt:Et).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const s=m(e);if(!r){if(s&&h(Ye,t))return Reflect.get(Ye,t,n);if("hasOwnProperty"===t)return Je}const i=Reflect.get(e,t,n);return(S(t)?Ke.has(t):We(t))?i:(r||qe(e,0,t),o?i:Kt(i)?s&&A(t)?i:i.value:x(i)?r?Ot(i):It(i):i)}}class Qe extends Xe{constructor(e=!1){super(!1,e)}set(e,t,n,r){let o=e[t];if(!this._isShallow){const t=$t(o);if(Dt(n)||$t(n)||(o=Vt(o),n=Vt(n)),!m(e)&&Kt(o)&&!Kt(n))return!t&&(o.value=n,!0)}const s=m(e)&&A(t)?Number(t)e,st=e=>Reflect.getPrototypeOf(e);function it(e,t,n=!1,r=!1){const o=Vt(e=e.__v_raw),s=Vt(t);n||(F(t,s)&&qe(o,0,t),qe(o,0,s));const{has:i}=st(o),c=r?ot:n?Ht:Ut;return i.call(o,t)?c(e.get(t)):i.call(o,s)?c(e.get(s)):void(e!==o&&e.get(t))}function ct(e,t=!1){const n=this.__v_raw,r=Vt(n),o=Vt(e);return t||(F(e,o)&&qe(r,0,e),qe(r,0,o)),e===o?n.has(e):n.has(e)||n.has(o)}function lt(e,t=!1){return e=e.__v_raw,!t&&qe(Vt(e),0,He),Reflect.get(e,"size",e)}function at(e){e=Vt(e);const t=Vt(this);return st(t).has.call(t,e)||(t.add(e),ze(t,"add",e,e)),this}function ut(e,t){t=Vt(t);const n=Vt(this),{has:r,get:o}=st(n);let s=r.call(n,e);s||(e=Vt(e),s=r.call(n,e));const i=o.call(n,e);return n.set(e,t),s?F(t,i)&&ze(n,"set",e,t):ze(n,"add",e,t),this}function ft(e){const t=Vt(this),{has:n,get:r}=st(t);let o=n.call(t,e);o||(e=Vt(e),o=n.call(t,e));r&&r.call(t,e);const s=t.delete(e);return o&&ze(t,"delete",e,void 0),s}function dt(){const e=Vt(this),t=0!==e.size,n=e.clear();return t&&ze(e,"clear",void 0,void 0),n}function pt(e,t){return function(n,r){const o=this,s=o.__v_raw,i=Vt(s),c=t?ot:e?Ht:Ut;return!e&&qe(i,0,He),s.forEach(((e,t)=>n.call(r,c(e),c(t),o)))}}function ht(e,t,n){return function(...r){const o=this.__v_raw,s=Vt(o),i=g(s),c="entries"===e||e===Symbol.iterator&&i,l="keys"===e&&i,a=o[e](...r),u=n?ot:t?Ht:Ut;return!t&&qe(s,0,l?je:He),{next(){const{value:e,done:t}=a.next();return t?{value:e,done:t}:{value:c?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function mt(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function gt(){const e={get(e){return it(this,e)},get size(){return lt(this)},has:ct,add:at,set:ut,delete:ft,clear:dt,forEach:pt(!1,!1)},t={get(e){return it(this,e,!1,!0)},get size(){return lt(this)},has:ct,add:at,set:ut,delete:ft,clear:dt,forEach:pt(!1,!0)},n={get(e){return it(this,e,!0)},get size(){return lt(this,!0)},has(e){return ct.call(this,e,!0)},add:mt("add"),set:mt("set"),delete:mt("delete"),clear:mt("clear"),forEach:pt(!0,!1)},r={get(e){return it(this,e,!0,!0)},get size(){return lt(this,!0)},has(e){return ct.call(this,e,!0)},add:mt("add"),set:mt("set"),delete:mt("delete"),clear:mt("clear"),forEach:pt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((o=>{e[o]=ht(o,!1,!1),n[o]=ht(o,!0,!1),t[o]=ht(o,!1,!0),r[o]=ht(o,!0,!0)})),[e,n,t,r]}const[vt,yt,bt,_t]=gt();function St(e,t){const n=t?e?_t:bt:e?yt:vt;return(t,r,o)=>"__v_isReactive"===r?!e:"__v_isReadonly"===r?e:"__v_raw"===r?t:Reflect.get(h(n,r)&&r in t?n:t,r,o)}const xt={get:St(!1,!1)},Ct={get:St(!1,!0)},Tt={get:St(!0,!1)},kt={get:St(!0,!0)};const Et=new WeakMap,wt=new WeakMap,At=new WeakMap,Nt=new WeakMap;function It(e){return $t(e)?e:Lt(e,!1,et,xt,Et)}function Rt(e){return Lt(e,!1,nt,Ct,wt)}function Ot(e){return Lt(e,!0,tt,Tt,At)}function Mt(e){return Lt(e,!0,rt,kt,Nt)}function Lt(e,t,n,r,o){if(!x(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=(c=e).__v_skip||!Object.isExtensible(c)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(E(c));var c;if(0===i)return e;const l=new Proxy(e,2===i?r:n);return o.set(e,l),l}function Pt(e){return $t(e)?Pt(e.__v_raw):!(!e||!e.__v_isReactive)}function $t(e){return!(!e||!e.__v_isReadonly)}function Dt(e){return!(!e||!e.__v_isShallow)}function Ft(e){return!!e&&!!e.__v_raw}function Vt(e){const t=e&&e.__v_raw;return t?Vt(t):e}function Bt(e){return Object.isExtensible(e)&&B(e,"__v_skip",!0),e}const Ut=e=>x(e)?It(e):e,Ht=e=>x(e)?Ot(e):e;class jt{constructor(e,t,n,r){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Ce((()=>e(this._value)),(()=>Wt(this,2===this.effect._dirtyLevel?2:3))),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=n}get value(){const e=Vt(this);return e._cacheable&&!e.effect.dirty||!F(e._value,e._value=e.effect.run())||Wt(e,4),zt(e),e.effect._dirtyLevel>=2&&Wt(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function qt(e,t,n=!1){let r,o;const s=b(e);s?(r=e,o=c):(r=e.get,o=e.set);return new jt(r,o,s||!o,n)}function zt(e){var t;Ie&&ve&&(e=Vt(e),De(ve,null!=(t=e.dep)?t:e.dep=Be((()=>e.dep=void 0),e instanceof jt?e:void 0)))}function Wt(e,t=4,n,r){const o=(e=Vt(e)).dep;o&&Ve(o,t)}function Kt(e){return!(!e||!0!==e.__v_isRef)}function Yt(e){return Jt(e,!1)}function Gt(e){return Jt(e,!0)}function Jt(e,t){return Kt(e)?e:new Xt(e,t)}class Xt{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Vt(e),this._value=t?e:Ut(e)}get value(){return zt(this),this._value}set value(e){const t=this.__v_isShallow||Dt(e)||$t(e);if(e=t?e:Vt(e),F(e,this._rawValue)){this._rawValue;this._rawValue=e,this._value=t?e:Ut(e),Wt(this,4)}}}function Qt(e){Wt(e,4)}function Zt(e){return Kt(e)?e.value:e}function en(e){return b(e)?e():Zt(e)}const tn={get:(e,t,n)=>Zt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Kt(o)&&!Kt(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function nn(e){return Pt(e)?e:new Proxy(e,tn)}class rn{constructor(e){this.dep=void 0,this.__v_isRef=!0;const{get:t,set:n}=e((()=>zt(this)),(()=>Wt(this)));this._get=t,this._set=n}get value(){return this._get()}set value(e){this._set(e)}}function on(e){return new rn(e)}function sn(e){const t=m(e)?new Array(e.length):{};for(const n in e)t[n]=un(e,n);return t}class cn{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return function(e,t){const n=Ue.get(e);return n&&n.get(t)}(Vt(this._object),this._key)}}class ln{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function an(e,t,n){return Kt(e)?e:b(e)?new ln(e):x(e)&&arguments.length>1?un(e,t,n):Yt(e)}function un(e,t,n){const r=e[t];return Kt(r)?r:new cn(e,t,n)}const fn={GET:"get",HAS:"has",ITERATE:"iterate"},dn={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},pn=[];function hn(e,...t){Me();const n=pn.length?pn[pn.length-1].component:null,r=n&&n.appContext.config.warnHandler,o=function(){let e=pn[pn.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const r=e.component&&e.component.parent;e=r&&r.vnode}return t}();if(r)_n(r,n,11,[e+t.map((e=>{var t,n;return null!=(n=null==(t=e.toString)?void 0:t.call(e))?n:JSON.stringify(e)})).join(""),n&&n.proxy,o.map((({vnode:e})=>`at <${nc(n,e.type)}>`)).join("\n"),o]);else{const n=[`[Vue warn]: ${e}`,...t];o.length&&n.push("\n",...function(e){const t=[];return e.forEach(((e,n)=>{t.push(...0===n?[]:["\n"],...function({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",r=!!e.component&&null==e.component.parent,o=` at <${nc(e.component,e.type,r)}`,s=">"+n;return e.props?[o,...mn(e.props),s]:[o+s]}(e))})),t}(o)),console.warn(...n)}Le()}function mn(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach((n=>{t.push(...gn(n,e[n]))})),n.length>3&&t.push(" ..."),t}function gn(e,t,n){return _(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):"number"==typeof t||"boolean"==typeof t||null==t?n?t:[`${e}=${t}`]:Kt(t)?(t=gn(e,Vt(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):b(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Vt(t),n?t:[`${e}=`,t])}function vn(e,t){}const yn={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},bn={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function _n(e,t,n,r){try{return r?e(...r):e()}catch(e){xn(e,t,n)}}function Sn(e,t,n,r){if(b(e)){const o=_n(e,t,n,r);return o&&C(o)&&o.catch((e=>{xn(e,t,n)})),o}if(m(e)){const o=[];for(let s=0;s>>1,o=kn[r],s=Fn(o);sFn(e)-Fn(t)));if(wn.length=0,An)return void An.push(...e);for(An=e,Nn=0;Nnnull==e.id?1/0:e.id,Vn=(e,t)=>{const n=Fn(e)-Fn(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Bn(e){Tn=!1,Cn=!0,kn.sort(Vn);try{for(En=0;En_(e)?e.trim():e))),t&&(o=n.map(U))}let l;let a=r[l=D(t)]||r[l=D(M(t))];!a&&i&&(a=r[l=D(P(t))]),a&&Sn(a,e,6,o);const u=r[l+"Once"];if(u){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,Sn(u,e,6,o)}}function zn(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(void 0!==o)return o;const s=e.emits;let i={},c=!1;if(!b(e)){const r=e=>{const n=zn(e,t,!0);n&&(c=!0,f(i,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return s||c?(m(s)?s.forEach((e=>i[e]=null)):f(i,s),x(e)&&r.set(e,i),i):(x(e)&&r.set(e,null),null)}function Wn(e,t){return!(!e||!a(t))&&(t=t.slice(2).replace(/Once$/,""),h(e,t[0].toLowerCase()+t.slice(1))||h(e,P(t))||h(e,t))}let Kn=null,Yn=null;function Gn(e){const t=Kn;return Kn=e,Yn=e&&e.type.__scopeId||null,t}function Jn(e){Yn=e}function Xn(){Yn=null}const Qn=e=>Zn;function Zn(e,t=Kn,n){if(!t)return e;if(e._n)return e;const r=(...n)=>{r._d&&ui(-1);const o=Gn(t);let s;try{s=e(...n)}finally{Gn(o),r._d&&ui(1)}return s};return r._n=!0,r._c=!0,r._d=!0,r}function er(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[s],slots:i,attrs:c,emit:l,render:a,renderCache:f,props:d,data:p,setupState:h,ctx:m,inheritAttrs:g}=e,v=Gn(e);let y,b;try{if(4&n.shapeFlag){const e=o||r,t=e;y=wi(a.call(t,e,f,d,h,p,m)),b=c}else{const e=t;0,y=wi(e.length>1?e(d,{attrs:c,slots:i,emit:l}):e(d,null)),b=t.props?c:nr(c)}}catch(t){oi.length=0,xn(t,e,1),y=_i(ni)}let _=y;if(b&&!1!==g){const e=Object.keys(b),{shapeFlag:t}=_;e.length&&7&t&&(s&&e.some(u)&&(b=rr(b,s)),_=Ci(_,b,!1,!0))}return n.dirs&&(_=Ci(_,null,!1,!0),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition&&(_.transition=n.transition),y=_,Gn(v),y}function tr(e,t=!0){let n;for(let t=0;t{let t;for(const n in e)("class"===n||"style"===n||a(n))&&((t||(t={}))[n]=e[n]);return t},rr=(e,t)=>{const n={};for(const r in e)u(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function or(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;oe.__isSuspense;let mr=0;const gr={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,s,i,c,l,a){if(null==e)!function(e,t,n,r,o,s,i,c,l){const{p:a,o:{createElement:u}}=l,f=u("div"),d=e.suspense=yr(e,o,r,t,f,n,s,i,c,l);a(null,d.pendingBranch=e.ssContent,f,null,r,d,s,i),d.deps>0?(vr(e,"onPending"),vr(e,"onFallback"),a(null,e.ssFallback,t,n,r,null,s,i),Sr(d,e.ssFallback)):d.resolve(!1,!0)}(t,n,r,o,s,i,c,l,a);else{if(s&&s.deps>0&&!e.suspense.isInFallback)return t.suspense=e.suspense,t.suspense.vnode=t,void(t.el=e.el);!function(e,t,n,r,o,s,i,c,{p:l,um:a,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:h,pendingBranch:m,isInFallback:g,isHydrating:v}=f;if(m)f.pendingBranch=d,mi(d,m)?(l(m,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0?f.resolve():g&&(v||(l(h,p,n,r,o,null,s,i,c),Sr(f,p)))):(f.pendingId=mr++,v?(f.isHydrating=!1,f.activeBranch=m):a(m,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),g?(l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0?f.resolve():(l(h,p,n,r,o,null,s,i,c),Sr(f,p))):h&&mi(d,h)?(l(h,d,n,r,o,f,s,i,c),f.resolve(!0)):(l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0&&f.resolve()));else if(h&&mi(d,h))l(h,d,n,r,o,f,s,i,c),Sr(f,d);else if(vr(t,"onPending"),f.pendingBranch=d,512&d.shapeFlag?f.pendingId=d.component.suspenseId:f.pendingId=mr++,l(null,d,f.hiddenContainer,null,o,f,s,i,c),f.deps<=0)f.resolve();else{const{timeout:e,pendingId:t}=f;e>0?setTimeout((()=>{f.pendingId===t&&f.fallback(p)}),e):0===e&&f.fallback(p)}}(e,t,n,r,o,i,c,l,a)}},hydrate:function(e,t,n,r,o,s,i,c,l){const a=t.suspense=yr(t,r,n,e.parentNode,document.createElement("div"),null,o,s,i,c,!0),u=l(e,a.pendingBranch=t.ssContent,n,a,s,i);0===a.deps&&a.resolve(!1,!0);return u},normalize:function(e){const{shapeFlag:t,children:n}=e,r=32&t;e.ssContent=br(r?n.default:n),e.ssFallback=r?br(n.fallback):_i(ni)}};function vr(e,t){const n=e.props&&e.props[t];b(n)&&n()}function yr(e,t,n,r,o,s,i,c,l,a,u=!1){const{p:f,m:d,um:p,n:h,o:{parentNode:m,remove:g}}=a;let v;const y=function(e){const t=e.props&&e.props.suspensible;return null!=t&&!1!==t}(e);y&&t&&t.pendingBranch&&(v=t.pendingId,t.deps++);const b=e.props?H(e.props.timeout):void 0;const _=s,S={vnode:e,parent:t,parentComponent:n,namespace:i,container:r,hiddenContainer:o,deps:0,pendingId:mr++,timeout:"number"==typeof b?b:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){const{vnode:r,activeBranch:o,pendingBranch:i,pendingId:c,effects:l,parentComponent:a,container:u}=S;let f=!1;S.isHydrating?S.isHydrating=!1:e||(f=o&&i.transition&&"out-in"===i.transition.mode,f&&(o.transition.afterLeave=()=>{c===S.pendingId&&(d(i,u,s===_?h(o):s,0),Pn(l))}),o&&(m(o.el)!==S.hiddenContainer&&(s=h(o)),p(o,a,S,!0)),f||d(i,u,s,0)),Sr(S,i),S.pendingBranch=null,S.isInFallback=!1;let g=S.parent,b=!1;for(;g;){if(g.pendingBranch){g.effects.push(...l),b=!0;break}g=g.parent}b||f||Pn(l),S.effects=[],y&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,0!==t.deps||n||t.resolve()),vr(r,"onResolve")},fallback(e){if(!S.pendingBranch)return;const{vnode:t,activeBranch:n,parentComponent:r,container:o,namespace:s}=S;vr(t,"onFallback");const i=h(n),a=()=>{S.isInFallback&&(f(null,e,o,i,r,null,s,c,l),Sr(S,e))},u=e.transition&&"out-in"===e.transition.mode;u&&(n.transition.afterLeave=a),S.isInFallback=!0,p(n,r,null,!0),u||a()},move(e,t,n){S.activeBranch&&d(S.activeBranch,e,t,n),S.container=e},next(){return S.activeBranch&&h(S.activeBranch)},registerDep(e,t,n){const r=!!S.pendingBranch;r&&S.deps++;const o=e.vnode.el;e.asyncDep.catch((t=>{xn(t,e,0)})).then((s=>{if(e.isUnmounted||S.isUnmounted||S.pendingId!==e.suspenseId)return;e.asyncResolved=!0;const{vnode:c}=e;Wi(e,s,!1),o&&(c.el=o);const l=!o&&e.subTree.el;t(e,c,m(o||e.subTree.el),o?null:h(e.subTree),S,i,n),l&&g(l),sr(e,c.el),r&&0==--S.deps&&S.resolve()}))},unmount(e,t){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,e,t),S.pendingBranch&&p(S.pendingBranch,n,e,t)}};return S}function br(e){let t;if(b(e)){const n=ai&&e._c;n&&(e._d=!1,ii()),e=e(),n&&(e._d=!0,t=si,ci())}if(m(e)){const t=tr(e);0,e=t}return e=wi(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter((t=>t!==e))),e}function _r(e,t){t&&t.pendingBranch?m(e)?t.effects.push(...e):t.effects.push(e):Pn(e)}function Sr(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e;let o=t.el;for(;!o&&t.component;)o=(t=t.component.subTree).el;n.el=o,r&&r.subTree===n&&(r.vnode.el=o,sr(r,o))}function xr(e,t,n=Pi,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{Me();const o=Vi(n),s=Sn(t,n,e,r);return o(),Le(),s});return r?o.unshift(s):o.push(s),s}}const Cr=e=>(t,n=Pi)=>{qi&&"sp"!==e||xr(e,((...e)=>t(...e)),n)},Tr=Cr("bm"),kr=Cr("m"),Er=Cr("bu"),wr=Cr("u"),Ar=Cr("bum"),Nr=Cr("um"),Ir=Cr("sp"),Rr=Cr("rtg"),Or=Cr("rtc");function Mr(e,t=Pi){xr("ec",e,t)}function Lr(e,t){if(null===Kn)return e;const n=Qi(Kn),r=e.dirs||(e.dirs=[]);for(let e=0;et(e,n,void 0,s&&s[n])));else{const n=Object.keys(e);o=new Array(n.length);for(let r=0,i=n.length;r{const t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e} +/*! #__NO_SIDE_EFFECTS__ */function Fr(e,t){return b(e)?(()=>f({name:e.name},t,{setup:e}))():e}const Vr=e=>!!e.type.__asyncLoader +/*! #__NO_SIDE_EFFECTS__ */;function Br(e){b(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:c}=e;let l,a=null,u=0;const f=()=>{let e;return a||(e=a=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),c)return new Promise(((t,n)=>{c(e,(()=>t((u++,a=null,f()))),(()=>n(e)),u+1)}));throw e})).then((t=>e!==a&&a?a:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),l=t,t))))};return Fr({name:"AsyncComponentWrapper",__asyncLoader:f,get __asyncResolved(){return l},setup(){const e=Pi;if(l)return()=>Ur(l,e);const t=t=>{a=null,xn(t,e,13,!r)};if(i&&e.suspense||qi)return f().then((t=>()=>Ur(t,e))).catch((e=>(t(e),()=>r?_i(r,{error:e}):null)));const c=Yt(!1),u=Yt(),d=Yt(!!o);return o&&setTimeout((()=>{d.value=!1}),o),null!=s&&setTimeout((()=>{if(!c.value&&!u.value){const e=new Error(`Async component timed out after ${s}ms.`);t(e),u.value=e}}),s),f().then((()=>{c.value=!0,e.parent&&ks(e.parent.vnode)&&(e.parent.effect.dirty=!0,Mn(e.parent.update))})).catch((e=>{t(e),u.value=e})),()=>c.value&&l?Ur(l,e):u.value&&r?_i(r,{error:u.value}):n&&!d.value?_i(n):void 0}})}function Ur(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=_i(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}function Hr(e,t,n={},r,o){if(Kn.isCE||Kn.parent&&Vr(Kn.parent)&&Kn.parent.isCE)return"default"!==t&&(n.name=t),_i("slot",n,r&&r());let s=e[t];s&&s._c&&(s._d=!1),ii();const i=s&&jr(s(n)),c=pi(ei,{key:n.key||i&&i.key||`_${t}`},i||(r?r():[]),i&&1===e._?64:-2);return!o&&c.scopeId&&(c.slotScopeIds=[c.scopeId+"-s"]),s&&s._c&&(s._d=!0),c}function jr(e){return e.some((e=>!hi(e)||e.type!==ni&&!(e.type===ei&&!jr(e.children))))?e:null}function qr(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:D(r)]=e[r];return n}const zr=e=>e?Ui(e)?Qi(e):zr(e.parent):null,Wr=f(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>zr(e.parent),$root:e=>zr(e.root),$emit:e=>e.emit,$options:e=>go(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Mn(e.update)}),$nextTick:e=>e.n||(e.n=On.bind(e.proxy)),$watch:e=>xs.bind(e)}),Kr=(e,t)=>e!==s&&!e.__isScriptSetup&&h(e,t),Yr={get({_:e},t){if("__v_skip"===t)return!0;const{ctx:n,setupState:r,data:o,props:i,accessCache:c,type:l,appContext:a}=e;let u;if("$"!==t[0]){const l=c[t];if(void 0!==l)switch(l){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return i[t]}else{if(Kr(r,t))return c[t]=1,r[t];if(o!==s&&h(o,t))return c[t]=2,o[t];if((u=e.propsOptions[0])&&h(u,t))return c[t]=3,i[t];if(n!==s&&h(n,t))return c[t]=4,n[t];fo&&(c[t]=0)}}const f=Wr[t];let d,p;return f?("$attrs"===t&&qe(e.attrs,0,""),f(e)):(d=l.__cssModules)&&(d=d[t])?d:n!==s&&h(n,t)?(c[t]=4,n[t]):(p=a.config.globalProperties,h(p,t)?p[t]:void 0)},set({_:e},t,n){const{data:r,setupState:o,ctx:i}=e;return Kr(o,t)?(o[t]=n,!0):r!==s&&h(r,t)?(r[t]=n,!0):!h(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(i[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:i}},c){let l;return!!n[c]||e!==s&&h(e,c)||Kr(t,c)||(l=i[0])&&h(l,c)||h(r,c)||h(Wr,c)||h(o.config.globalProperties,c)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:h(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};const Gr=f({},Yr,{get(e,t){if(t!==Symbol.unscopables)return Yr.get(e,t,e)},has(e,t){return"_"!==t[0]&&!W(t)}});function Jr(){return null}function Xr(){return null}function Qr(e){0}function Zr(e){0}function eo(){return null}function to(){0}function no(e,t){return null}function ro(){return so().slots}function oo(){return so().attrs}function so(){const e=$i();return e.setupContext||(e.setupContext=Xi(e))}function io(e){return m(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}function co(e,t){const n=io(e);for(const e in t){if(e.startsWith("__skip"))continue;let r=n[e];r?m(r)||b(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:null===r&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n}function lo(e,t){return e&&t?m(e)&&m(t)?e.concat(t):f({},io(e),io(t)):e||t}function ao(e,t){const n={};for(const r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function uo(e){const t=$i();let n=e();return Bi(),C(n)&&(n=n.catch((e=>{throw Vi(t),e}))),[n,()=>Vi(t)]}let fo=!0;function po(e){const t=go(e),n=e.proxy,r=e.ctx;fo=!1,t.beforeCreate&&ho(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:l,provide:a,inject:u,created:f,beforeMount:d,mounted:p,beforeUpdate:h,updated:g,activated:v,deactivated:y,beforeDestroy:_,beforeUnmount:S,destroyed:C,unmounted:T,render:k,renderTracked:E,renderTriggered:w,errorCaptured:A,serverPrefetch:N,expose:I,inheritAttrs:R,components:O,directives:M,filters:L}=t;if(u&&function(e,t){m(e)&&(e=_o(e));for(const n in e){const r=e[n];let o;o=x(r)?"default"in r?No(r.from||n,r.default,!0):No(r.from||n):No(r),Kt(o)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e}):t[n]=o}}(u,r,null),i)for(const e in i){const t=i[e];b(t)&&(r[e]=t.bind(n))}if(o){0;const t=o.call(n,n);0,x(t)&&(e.data=It(t))}if(fo=!0,s)for(const e in s){const t=s[e],o=b(t)?t.bind(n,n):b(t.get)?t.get.bind(n,n):c;0;const i=!b(t)&&b(t.set)?t.set.bind(n):c,l=oc({get:o,set:i});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>l.value,set:e=>l.value=e})}if(l)for(const e in l)mo(l[e],r,n,e);if(a){const e=b(a)?a.call(n):a;Reflect.ownKeys(e).forEach((t=>{Ao(t,e[t])}))}function P(e,t){m(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(f&&ho(f,e,"c"),P(Tr,d),P(kr,p),P(Er,h),P(wr,g),P(As,v),P(Ns,y),P(Mr,A),P(Or,E),P(Rr,w),P(Ar,S),P(Nr,T),P(Ir,N),m(I))if(I.length){const t=e.exposed||(e.exposed={});I.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});k&&e.render===c&&(e.render=k),null!=R&&(e.inheritAttrs=R),O&&(e.components=O),M&&(e.directives=M)}function ho(e,t,n){Sn(m(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function mo(e,t,n,r){const o=r.includes(".")?Cs(n,r):()=>n[r];if(_(e)){const n=t[e];b(n)&&_s(o,n)}else if(b(e))_s(o,e.bind(n));else if(x(e))if(m(e))e.forEach((e=>mo(e,t,n,r)));else{const r=b(e.handler)?e.handler.bind(n):t[e.handler];b(r)&&_s(o,r,e)}else 0}function go(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,c=s.get(t);let l;return c?l=c:o.length||n||r?(l={},o.length&&o.forEach((e=>vo(l,e,i,!0))),vo(l,t,i)):l=t,x(t)&&s.set(t,l),l}function vo(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&vo(e,s,n,!0),o&&o.forEach((t=>vo(e,t,n,!0)));for(const o in t)if(r&&"expose"===o);else{const r=yo[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}const yo={data:bo,props:Co,emits:Co,methods:xo,computed:xo,beforeCreate:So,created:So,beforeMount:So,mounted:So,beforeUpdate:So,updated:So,beforeDestroy:So,beforeUnmount:So,destroyed:So,unmounted:So,activated:So,deactivated:So,errorCaptured:So,serverPrefetch:So,components:xo,directives:xo,watch:function(e,t){if(!e)return t;if(!t)return e;const n=f(Object.create(null),e);for(const r in t)n[r]=So(e[r],t[r]);return n},provide:bo,inject:function(e,t){return xo(_o(e),_o(t))}};function bo(e,t){return t?e?function(){return f(b(e)?e.call(this,this):e,b(t)?t.call(this,this):t)}:t:e}function _o(e){if(m(e)){const t={};for(let n=0;n1)return n&&b(t)?t.call(r&&r.proxy):t}else 0}function Io(){return!!(Pi||Kn||wo)}const Ro={},Oo=()=>Object.create(Ro),Mo=e=>Object.getPrototypeOf(e)===Ro;function Lo(e,t,n,r){const[o,i]=e.propsOptions;let c,l=!1;if(t)for(let s in t){if(N(s))continue;const a=t[s];let u;o&&h(o,u=M(s))?i&&i.includes(u)?(c||(c={}))[u]=a:n[u]=a:Wn(e.emitsOptions,s)||s in r&&a===r[s]||(r[s]=a,l=!0)}if(i){const t=Vt(n),r=c||s;for(let s=0;s{u=!0;const[n,r]=$o(e,t,!0);f(l,n),r&&a.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!c&&!u)return x(e)&&r.set(e,i),i;if(m(c))for(let e=0;e-1,r[1]=n<0||e-1||h(r,"default"))&&a.push(t)}}}}const d=[l,a];return x(e)&&r.set(e,d),d}function Do(e){return"$"!==e[0]&&!N(e)}function Fo(e){if(null===e)return"null";if("function"==typeof e)return e.name||"";if("object"==typeof e){return e.constructor&&e.constructor.name||""}return""}function Vo(e,t){return Fo(e)===Fo(t)}function Bo(e,t){return m(t)?t.findIndex((t=>Vo(t,e))):b(t)&&Vo(t,e)?0:-1}const Uo=e=>"_"===e[0]||"$stable"===e,Ho=e=>m(e)?e.map(wi):[wi(e)],jo=(e,t,n)=>{if(t._n)return t;const r=Zn(((...e)=>Ho(t(...e))),n);return r._c=!1,r},qo=(e,t,n)=>{const r=e._ctx;for(const n in e){if(Uo(n))continue;const o=e[n];if(b(o))t[n]=jo(0,o,r);else if(null!=o){0;const e=Ho(o);t[n]=()=>e}}},zo=(e,t)=>{const n=Ho(t);e.slots.default=()=>n},Wo=(e,t)=>{const n=e.slots=Oo();if(32&e.vnode.shapeFlag){const e=t._;e?(f(n,t),B(n,"_",e,!0)):qo(t,n)}else t&&zo(e,t)},Ko=(e,t,n)=>{const{vnode:r,slots:o}=e;let i=!0,c=s;if(32&r.shapeFlag){const e=t._;e?n&&1===e?i=!1:(f(o,t),n||1!==e||delete o._):(i=!t.$stable,qo(t,o)),c=t}else t&&(zo(e,t),c={default:1});if(i)for(const e in o)Uo(e)||null!=c[e]||delete o[e]};function Yo(e,t,n,r,o=!1){if(m(e))return void e.forEach(((e,s)=>Yo(e,t&&(m(t)?t[s]:t),n,r,o)));if(Vr(r)&&!o)return;const i=4&r.shapeFlag?Qi(r.component):r.el,c=o?null:i,{i:l,r:a}=e;const u=t&&t.r,f=l.refs===s?l.refs={}:l.refs,p=l.setupState;if(null!=u&&u!==a&&(_(u)?(f[u]=null,h(p,u)&&(p[u]=null)):Kt(u)&&(u.value=null)),b(a))_n(a,l,12,[c,f]);else{const t=_(a),r=Kt(a);if(t||r){const s=()=>{if(e.f){const n=t?h(p,a)?p[a]:f[a]:a.value;o?m(n)&&d(n,i):m(n)?n.includes(i)||n.push(i):t?(f[a]=[i],h(p,a)&&(p[a]=f[a])):(a.value=[i],e.k&&(f[e.k]=a.value))}else t?(f[a]=c,h(p,a)&&(p[a]=c)):r&&(a.value=c,e.k&&(f[e.k]=c))};c?(s.id=-1,os(s,n)):s()}else 0}}let Go=!1;const Jo=()=>{Go||(console.error("Hydration completed but contains mismatches."),Go=!0)},Xo=e=>(e=>e.namespaceURI.includes("svg")&&"foreignObject"!==e.tagName)(e)?"svg":(e=>e.namespaceURI.includes("MathML"))(e)?"mathml":void 0,Qo=e=>8===e.nodeType;function Zo(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:c,insert:l,createComment:u}}=e,f=(n,r,c,a,u,b=!1)=>{b=b||!!r.dynamicChildren;const _=Qo(n)&&"["===n.data,S=()=>m(n,r,c,a,u,_),{type:x,ref:C,shapeFlag:T,patchFlag:k}=r;let E=n.nodeType;r.el=n,-2===k&&(b=!1,r.dynamicChildren=null);let w=null;switch(x){case ti:3!==E?""===r.children?(l(r.el=o(""),i(n),n),w=n):w=S():(n.data!==r.children&&(__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&hn("Hydration text mismatch in",n.parentNode,`\n - rendered on server: ${JSON.stringify(n.data)}\n - expected on client: ${JSON.stringify(r.children)}`),Jo(),n.data=r.children),w=s(n));break;case ni:y(n)?(w=s(n),v(r.el=n.content.firstChild,n,c)):w=8!==E||_?S():s(n);break;case ri:if(_&&(E=(n=s(n)).nodeType),1===E||3===E){w=n;const e=!r.children.length;for(let t=0;t{i=i||!!t.dynamicChildren;const{type:l,props:u,patchFlag:f,shapeFlag:d,dirs:h,transition:m}=t,g="input"===l||"option"===l;if(g||-1!==f){h&&Pr(t,null,n,"created");let l,b=!1;if(y(e)){b=us(o,m)&&n&&n.vnode.props&&n.vnode.props.appear;const r=e.content.firstChild;b&&m.beforeEnter(r),v(r,e,n),t.el=e=r}if(16&d&&(!u||!u.innerHTML&&!u.textContent)){let r=p(e.firstChild,t,e,n,o,s,i),l=!1;for(;r;){__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&!l&&(hn("Hydration children mismatch on",e,"\nServer rendered element contains more child nodes than client vdom."),l=!0),Jo();const t=r;r=r.nextSibling,c(t)}}else 8&d&&e.textContent!==t.children&&(__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&hn("Hydration text content mismatch on",e,`\n - rendered on server: ${e.textContent}\n - expected on client: ${t.children}`),Jo(),e.textContent=t.children);if(u)if(__VUE_PROD_HYDRATION_MISMATCH_DETAILS__||g||!i||48&f)for(const o in u)!__VUE_PROD_HYDRATION_MISMATCH_DETAILS__||h&&h.some((e=>e.dir.created))||!es(e,o,u[o],t,n)||Jo(),(g&&(o.endsWith("value")||"indeterminate"===o)||a(o)&&!N(o)||"."===o[0])&&r(e,o,null,u[o],void 0,void 0,n);else u.onClick&&r(e,"onClick",null,u.onClick,void 0,void 0,n);(l=u&&u.onVnodeBeforeMount)&&Ri(l,n,t),h&&Pr(t,null,n,"beforeMount"),((l=u&&u.onVnodeMounted)||h||b)&&_r((()=>{l&&Ri(l,n,t),b&&m.enter(e),h&&Pr(t,null,n,"mounted")}),o)}return e.nextSibling},p=(e,t,r,s,i,c,a)=>{a=a||!!t.dynamicChildren;const u=t.children,d=u.length;let p=!1;for(let t=0;t{const{slotScopeIds:a}=t;a&&(o=o?o.concat(a):a);const f=i(e),d=p(s(e),t,f,n,r,o,c);return d&&Qo(d)&&"]"===d.data?s(t.anchor=d):(Jo(),l(t.anchor=u("]"),f,d),d)},m=(e,t,r,o,l,a)=>{if(__VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&hn("Hydration node mismatch:\n- rendered on server:",e,3===e.nodeType?"(text)":Qo(e)&&"["===e.data?"(start of fragment)":"","\n- expected on client:",t.type),Jo(),t.el=null,a){const t=g(e);for(;;){const n=s(e);if(!n||n===t)break;c(n)}}const u=s(e),f=i(e);return c(e),n(null,t,f,u,r,o,Xo(f),l),u},g=(e,t="[",n="]")=>{let r=0;for(;e;)if((e=s(e))&&Qo(e)&&(e.data===t&&r++,e.data===n)){if(0===r)return s(e);r--}return e},v=(e,t,n)=>{const r=t.parentNode;r&&r.replaceChild(e,t);let o=n;for(;o;)o.vnode.el===t&&(o.vnode.el=o.subTree.el=e),o=o.parent},y=e=>1===e.nodeType&&"template"===e.tagName.toLowerCase();return[(e,t)=>{if(!t.hasChildNodes())return __VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&hn("Attempting to hydrate existing markup but container is empty. Performing full mount instead."),n(null,e,t),Dn(),void(t._vnode=e);f(t.firstChild,e,null,null,null),Dn(),t._vnode=e},f]}function es(e,t,n,r,o){let s,i,c,l;if("class"===t)c=e.getAttribute("class"),l=Q(n),function(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}(ts(c||""),ts(l))||(s=i="class");else if("style"===t){c=e.getAttribute("style")||"",l=_(n)?n:function(e){let t="";if(!e||_(e))return t;for(const n in e){const r=e[n];(_(r)||"number"==typeof r)&&(t+=`${n.startsWith("--")?n:P(n)}:${r};`)}return t}(K(n));const t=ns(c),a=ns(l);if(r.dirs)for(const{dir:e,value:t}of r.dirs)"show"!==e.name||t||a.set("display","none");o&&rs(o,r,a),function(e,t){if(e.size!==t.size)return!1;for(const[n,r]of e)if(r!==t.get(n))return!1;return!0}(t,a)||(s=i="style")}else(e instanceof SVGElement&&ae(t)||e instanceof HTMLElement&&(ie(t)||le(t)))&&(ie(t)?(c=e.hasAttribute(t),l=ce(n)):null==n?(c=e.hasAttribute(t),l=!1):(c=e.hasAttribute(t)?e.getAttribute(t):"value"===t&&"TEXTAREA"===e.tagName&&e.value,l=!!function(e){if(null==e)return!1;const t=typeof e;return"string"===t||"number"===t||"boolean"===t}(n)&&String(n)),c!==l&&(s="attribute",i=t));if(s){const t=e=>!1===e?"(not rendered)":`${i}="${e}"`;return hn(`Hydration ${s} mismatch on`,e,`\n - rendered on server: ${t(c)}\n - expected on client: ${t(l)}\n Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead.\n You should fix the source of the mismatch.`),!0}return!1}function ts(e){return new Set(e.trim().split(/\s+/))}function ns(e){const t=new Map;for(const n of e.split(";")){let[e,r]=n.split(":");e=e.trim(),r=r&&r.trim(),e&&r&&t.set(e,r)}return t}function rs(e,t,n){const r=e.subTree;if(e.getCssVars&&(t===r||r&&r.type===ei&&r.children.includes(t))){const t=e.getCssVars();for(const e in t)n.set(`--${e}`,String(t[e]))}t===r&&e.parent&&rs(e.parent,e.vnode,n)}const os=_r;function ss(e){return cs(e)}function is(e){return cs(e,Zo)}function cs(e,t){"boolean"!=typeof __VUE_PROD_HYDRATION_MISMATCH_DETAILS__&&(q().__VUE_PROD_HYDRATION_MISMATCH_DETAILS__=!1);q().__VUE__=!0;const{insert:n,remove:r,patchProp:o,createElement:l,createText:a,createComment:u,setText:f,setElementText:d,parentNode:p,nextSibling:m,setScopeId:g=c,insertStaticContent:v}=e,y=(e,t,n,r=null,o=null,s=null,i=void 0,c=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!mi(e,t)&&(r=J(e),z(e,o,s,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:a,ref:u,shapeFlag:f}=t;switch(a){case ti:b(e,t,n,r);break;case ni:_(e,t,n,r);break;case ri:null==e&&S(t,n,r,i);break;case ei:R(e,t,n,r,o,s,i,c,l);break;default:1&f?C(e,t,n,r,o,s,i,c,l):6&f?O(e,t,n,r,o,s,i,c,l):(64&f||128&f)&&a.process(e,t,n,r,o,s,i,c,l,Z)}null!=u&&o&&Yo(u,e&&e.ref,s,t||e,!t)},b=(e,t,r,o)=>{if(null==e)n(t.el=a(t.children),r,o);else{const n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},_=(e,t,r,o)=>{null==e?n(t.el=u(t.children||""),r,o):t.el=e.el},S=(e,t,n,r)=>{[e.el,e.anchor]=v(e.children,t,n,r,e.el,e.anchor)},x=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=m(e),r(e),e=n;r(t)},C=(e,t,n,r,o,s,i,c,l)=>{"svg"===t.type?i="svg":"math"===t.type&&(i="mathml"),null==e?T(t,n,r,o,s,i,c,l):w(e,t,o,s,i,c,l)},T=(e,t,r,s,i,c,a,u)=>{let f,p;const{props:h,shapeFlag:m,transition:g,dirs:v}=e;if(f=e.el=l(e.type,c,h&&h.is,h),8&m?d(f,e.children):16&m&&E(e.children,f,null,s,i,ls(e,c),a,u),v&&Pr(e,null,s,"created"),k(f,e,e.scopeId,a,s),h){for(const t in h)"value"===t||N(t)||o(f,t,null,h[t],c,e.children,s,i,G);"value"in h&&o(f,"value",null,h.value,c),(p=h.onVnodeBeforeMount)&&Ri(p,s,e)}v&&Pr(e,null,s,"beforeMount");const y=us(i,g);y&&g.beforeEnter(f),n(f,t,r),((p=h&&h.onVnodeMounted)||y||v)&&os((()=>{p&&Ri(p,s,e),y&&g.enter(f),v&&Pr(e,null,s,"mounted")}),i)},k=(e,t,n,r,o)=>{if(n&&g(e,n),r)for(let t=0;t{for(let a=l;a{const a=t.el=e.el;let{patchFlag:u,dynamicChildren:f,dirs:p}=t;u|=16&e.patchFlag;const h=e.props||s,m=t.props||s;let g;if(n&&as(n,!1),(g=m.onVnodeBeforeUpdate)&&Ri(g,n,t,e),p&&Pr(t,e,n,"beforeUpdate"),n&&as(n,!0),f?A(e.dynamicChildren,f,a,n,r,ls(t,i),c):l||B(e,t,a,null,n,r,ls(t,i),c,!1),u>0){if(16&u)I(a,t,h,m,n,r,i);else if(2&u&&h.class!==m.class&&o(a,"class",null,m.class,i),4&u&&o(a,"style",h.style,m.style,i),8&u){const s=t.dynamicProps;for(let t=0;t{g&&Ri(g,n,t,e),p&&Pr(t,e,n,"updated")}),r)},A=(e,t,n,r,o,s,i)=>{for(let c=0;c{if(n!==r){if(n!==s)for(const s in n)N(s)||s in r||o(e,s,n[s],null,l,t.children,i,c,G);for(const s in r){if(N(s))continue;const a=r[s],u=n[s];a!==u&&"value"!==s&&o(e,s,u,a,l,t.children,i,c,G)}"value"in r&&o(e,"value",n.value,r.value,l)}},R=(e,t,r,o,s,i,c,l,u)=>{const f=t.el=e?e.el:a(""),d=t.anchor=e?e.anchor:a("");let{patchFlag:p,dynamicChildren:h,slotScopeIds:m}=t;m&&(l=l?l.concat(m):m),null==e?(n(f,r,o),n(d,r,o),E(t.children||[],r,d,s,i,c,l,u)):p>0&&64&p&&h&&e.dynamicChildren?(A(e.dynamicChildren,h,r,s,i,c,l),(null!=t.key||s&&t===s.subTree)&&fs(e,t,!0)):B(e,t,r,d,s,i,c,l,u)},O=(e,t,n,r,o,s,i,c,l)=>{t.slotScopeIds=c,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,i,l):L(t,n,r,o,s,i,l):$(e,t,l)},L=(e,t,n,r,o,s,i)=>{const c=e.component=Li(e,r,o);if(ks(e)&&(c.ctx.renderer=Z),zi(c),c.asyncDep){if(o&&o.registerDep(c,D,i),!e.el){const e=c.subTree=_i(ni);_(null,e,t,n)}}else D(c,e,t,n,o,s,i)},$=(e,t,n)=>{const r=t.component=e.component;if(function(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:c,patchFlag:l}=t,a=s.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!o&&!c||c&&c.$stable)||r!==i&&(r?!i||or(r,i,a):!!i);if(1024&l)return!0;if(16&l)return r?or(r,i,a):!!i;if(8&l){const e=t.dynamicProps;for(let t=0;tEn&&kn.splice(t,1)}(r.update),r.effect.dirty=!0,r.update()}else t.el=e.el,r.vnode=t},D=(e,t,n,r,o,s,i)=>{const l=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:c,vnode:a}=e;{const n=ds(e);if(n)return t&&(t.el=a.el,F(e,t,i)),void n.asyncDep.then((()=>{e.isUnmounted||l()}))}let u,f=t;0,as(e,!1),t?(t.el=a.el,F(e,t,i)):t=a,n&&V(n),(u=t.props&&t.props.onVnodeBeforeUpdate)&&Ri(u,c,t,a),as(e,!0);const d=er(e);0;const h=e.subTree;e.subTree=d,y(h,d,p(h.el),J(h),e,o,s),t.el=d.el,null===f&&sr(e,d.el),r&&os(r,o),(u=t.props&&t.props.onVnodeUpdated)&&os((()=>Ri(u,c,t,a)),o)}else{let i;const{el:c,props:l}=t,{bm:a,m:u,parent:f}=e,d=Vr(t);if(as(e,!1),a&&V(a),!d&&(i=l&&l.onVnodeBeforeMount)&&Ri(i,f,t),as(e,!0),c&&te){const n=()=>{e.subTree=er(e),te(c,e.subTree,e,o,null)};d?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{0;const i=e.subTree=er(e);0,y(null,i,n,r,e,o,s),t.el=i.el}if(u&&os(u,o),!d&&(i=l&&l.onVnodeMounted)){const e=t;os((()=>Ri(i,f,e)),o)}(256&t.shapeFlag||f&&Vr(f.vnode)&&256&f.vnode.shapeFlag)&&e.a&&os(e.a,o),e.isMounted=!0,t=n=r=null}},a=e.effect=new Ce(l,c,(()=>Mn(u)),e.scope),u=e.update=()=>{a.dirty&&a.run()};u.id=e.uid,as(e,!0),u()},F=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,c=Vt(o),[l]=e.propsOptions;let a=!1;if(!(r||i>0)||16&i){let r;Lo(e,t,o,s)&&(a=!0);for(const s in c)t&&(h(t,s)||(r=P(s))!==s&&h(t,r))||(l?!n||void 0===n[s]&&void 0===n[r]||(o[s]=Po(l,c,s,void 0,e,!0)):delete o[s]);if(s!==c)for(const e in s)t&&h(t,e)||(delete s[e],a=!0)}else if(8&i){const n=e.vnode.dynamicProps;for(let r=0;r{const a=e&&e.children,u=e?e.shapeFlag:0,f=t.children,{patchFlag:p,shapeFlag:h}=t;if(p>0){if(128&p)return void H(a,f,n,r,o,s,i,c,l);if(256&p)return void U(a,f,n,r,o,s,i,c,l)}8&h?(16&u&&G(a,o,s),f!==a&&d(n,f)):16&u?16&h?H(a,f,n,r,o,s,i,c,l):G(a,o,s,!0):(8&u&&d(n,""),16&h&&E(f,n,r,o,s,i,c,l))},U=(e,t,n,r,o,s,c,l,a)=>{t=t||i;const u=(e=e||i).length,f=t.length,d=Math.min(u,f);let p;for(p=0;pf?G(e,o,s,!0,!1,d):E(t,n,r,o,s,c,l,a,d)},H=(e,t,n,r,o,s,c,l,a)=>{let u=0;const f=t.length;let d=e.length-1,p=f-1;for(;u<=d&&u<=p;){const r=e[u],i=t[u]=a?Ai(t[u]):wi(t[u]);if(!mi(r,i))break;y(r,i,n,null,o,s,c,l,a),u++}for(;u<=d&&u<=p;){const r=e[d],i=t[p]=a?Ai(t[p]):wi(t[p]);if(!mi(r,i))break;y(r,i,n,null,o,s,c,l,a),d--,p--}if(u>d){if(u<=p){const e=p+1,i=ep)for(;u<=d;)z(e[u],o,s,!0),u++;else{const h=u,m=u,g=new Map;for(u=m;u<=p;u++){const e=t[u]=a?Ai(t[u]):wi(t[u]);null!=e.key&&g.set(e.key,u)}let v,b=0;const _=p-m+1;let S=!1,x=0;const C=new Array(_);for(u=0;u<_;u++)C[u]=0;for(u=h;u<=d;u++){const r=e[u];if(b>=_){z(r,o,s,!0);continue}let i;if(null!=r.key)i=g.get(r.key);else for(v=m;v<=p;v++)if(0===C[v-m]&&mi(r,t[v])){i=v;break}void 0===i?z(r,o,s,!0):(C[i-m]=u+1,i>=x?x=i:S=!0,y(r,t[i],n,null,o,s,c,l,a),b++)}const T=S?function(e){const t=e.slice(),n=[0];let r,o,s,i,c;const l=e.length;for(r=0;r>1,e[n[c]]0&&(t[r]=n[s-1]),n[s]=r)}}s=n.length,i=n[s-1];for(;s-- >0;)n[s]=i,i=t[i];return n}(C):i;for(v=T.length-1,u=_-1;u>=0;u--){const e=m+u,i=t[e],d=e+1{const{el:i,type:c,transition:l,children:a,shapeFlag:u}=e;if(6&u)return void j(e.component.subTree,t,r,o);if(128&u)return void e.suspense.move(t,r,o);if(64&u)return void c.move(e,t,r,Z);if(c===ei){n(i,t,r);for(let e=0;e{let s;for(;e&&e!==t;)s=m(e),n(e,r,o),e=s;n(t,r,o)})(e,t,r);if(2!==o&&1&u&&l)if(0===o)l.beforeEnter(i),n(i,t,r),os((()=>l.enter(i)),s);else{const{leave:e,delayLeave:o,afterLeave:s}=l,c=()=>n(i,t,r),a=()=>{e(i,(()=>{c(),s&&s()}))};o?o(i,c,a):a()}else n(i,t,r)},z=(e,t,n,r=!1,o=!1)=>{const{type:s,props:i,ref:c,children:l,dynamicChildren:a,shapeFlag:u,patchFlag:f,dirs:d,memoIndex:p}=e;if(-2===f&&(o=!1),null!=c&&Yo(c,null,n,e,!0),null!=p&&(t.renderCache[p]=void 0),256&u)return void t.ctx.deactivate(e);const h=1&u&&d,m=!Vr(e);let g;if(m&&(g=i&&i.onVnodeBeforeUnmount)&&Ri(g,t,e),6&u)Y(e.component,n,r);else{if(128&u)return void e.suspense.unmount(n,r);h&&Pr(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,Z,r):a&&(s!==ei||f>0&&64&f)?G(a,t,n,!1,!0):(s===ei&&384&f||!o&&16&u)&&G(l,t,n),r&&W(e)}(m&&(g=i&&i.onVnodeUnmounted)||h)&&os((()=>{g&&Ri(g,t,e),h&&Pr(e,null,t,"unmounted")}),n)},W=e=>{const{type:t,el:n,anchor:o,transition:s}=e;if(t===ei)return void K(n,o);if(t===ri)return void x(e);const i=()=>{r(n),s&&!s.persisted&&s.afterLeave&&s.afterLeave()};if(1&e.shapeFlag&&s&&!s.persisted){const{leave:t,delayLeave:r}=s,o=()=>t(n,i);r?r(e.el,i,o):o()}else i()},K=(e,t)=>{let n;for(;e!==t;)n=m(e),r(e),e=n;r(t)},Y=(e,t,n)=>{const{bum:r,scope:o,update:s,subTree:i,um:c,m:l,a:a}=e;ps(l),ps(a),r&&V(r),o.stop(),s&&(s.active=!1,z(i,e,t,n)),c&&os(c,t),os((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},G=(e,t,n,r=!1,o=!1,s=0)=>{for(let i=s;i6&e.shapeFlag?J(e.component.subTree):128&e.shapeFlag?e.suspense.next():m(e.anchor||e.el);let X=!1;const Q=(e,t,n)=>{null==e?t._vnode&&z(t._vnode,null,null,!0):y(t._vnode||null,e,t,null,null,null,n),X||(X=!0,$n(),Dn(),X=!1),t._vnode=e},Z={p:y,um:z,m:j,r:W,mt:L,mc:E,pc:B,pbc:A,n:J,o:e};let ee,te;return t&&([ee,te]=t(Z)),{render:Q,hydrate:ee,createApp:Eo(Q,ee)}}function ls({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function as({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function us(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function fs(e,t,n=!1){const r=e.children,o=t.children;if(m(r)&&m(o))for(let e=0;e{{const e=No(hs);return e}};function gs(e,t){return Ss(e,null,t)}function vs(e,t){return Ss(e,null,{flush:"post"})}function ys(e,t){return Ss(e,null,{flush:"sync"})}const bs={};function _s(e,t,n){return Ss(e,t,n)}function Ss(e,t,{immediate:n,deep:r,flush:o,once:i,onTrack:l,onTrigger:a}=s){if(t&&i){const e=t;t=(...t)=>{e(...t),E()}}const u=Pi,f=e=>!0===r?e:Ts(e,!1===r?1:void 0);let p,h,g=!1,v=!1;if(Kt(e)?(p=()=>e.value,g=Dt(e)):Pt(e)?(p=()=>f(e),g=!0):m(e)?(v=!0,g=e.some((e=>Pt(e)||Dt(e))),p=()=>e.map((e=>Kt(e)?e.value:Pt(e)?f(e):b(e)?_n(e,u,2):void 0))):p=b(e)?t?()=>_n(e,u,2):()=>(h&&h(),Sn(e,u,3,[_])):c,t&&r){const e=p;p=()=>Ts(e())}let y,_=e=>{h=T.onStop=()=>{_n(e,u,4),h=T.onStop=void 0}};if(qi){if(_=c,t?n&&Sn(t,u,3,[p(),v?[]:void 0,_]):p(),"sync"!==o)return c;{const e=ms();y=e.__watcherHandles||(e.__watcherHandles=[])}}let S=v?new Array(e.length).fill(bs):bs;const x=()=>{if(T.active&&T.dirty)if(t){const e=T.run();(r||g||(v?e.some(((e,t)=>F(e,S[t]))):F(e,S)))&&(h&&h(),Sn(t,u,3,[e,S===bs?void 0:v&&S[0]===bs?[]:S,_]),S=e)}else T.run()};let C;x.allowRecurse=!!t,"sync"===o?C=x:"post"===o?C=()=>os(x,u&&u.suspense):(x.pre=!0,u&&(x.id=u.uid),C=()=>Mn(x));const T=new Ce(p,c,C),k=Se(),E=()=>{T.stop(),k&&d(k.effects,T)};return t?n?x():S=T.run():"post"===o?os(T.run.bind(T),u&&u.suspense):T.run(),y&&y.push(E),E}function xs(e,t,n){const r=this.proxy,o=_(e)?e.includes(".")?Cs(r,e):()=>r[e]:e.bind(r,r);let s;b(t)?s=t:(s=t.handler,n=t);const i=Vi(this),c=Ss(o,s.bind(r),n);return i(),c}function Cs(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e{Ts(e,t,n)}));else if(w(e)){for(const r in e)Ts(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Ts(e[r],t,n)}return e}const ks=e=>e.type.__isKeepAlive,Es={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=$i(),r=n.ctx;if(!r.renderer)return()=>{const e=t.default&&t.default();return e&&1===e.length?e[0]:e};const o=new Map,s=new Set;let i=null;const c=n.suspense,{renderer:{p:l,m:a,um:u,o:{createElement:f}}}=r,d=f("div");function p(e){Os(e),u(e,n,c,!0)}function h(e){o.forEach(((t,n)=>{const r=tc(t.type);!r||e&&e(r)||m(n)}))}function m(e){const t=o.get(e);i&&mi(t,i)?i&&Os(i):p(t),o.delete(e),s.delete(e)}r.activate=(e,t,n,r,o)=>{const s=e.component;a(e,t,n,0,c),l(s.vnode,e,t,n,s,c,r,e.slotScopeIds,o),os((()=>{s.isDeactivated=!1,s.a&&V(s.a);const t=e.props&&e.props.onVnodeMounted;t&&Ri(t,s.parent,e)}),c)},r.deactivate=e=>{const t=e.component;ps(t.m),ps(t.a),a(e,d,null,1,c),os((()=>{t.da&&V(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&Ri(n,t.parent,e),t.isDeactivated=!0}),c)},_s((()=>[e.include,e.exclude]),(([e,t])=>{e&&h((t=>ws(e,t))),t&&h((e=>!ws(t,e)))}),{flush:"post",deep:!0});let g=null;const v=()=>{null!=g&&(hr(n.subTree.type)?os((()=>{o.set(g,Ms(n.subTree))}),n.subTree.suspense):o.set(g,Ms(n.subTree)))};return kr(v),wr(v),Ar((()=>{o.forEach((e=>{const{subTree:t,suspense:r}=n,o=Ms(t);if(e.type!==o.type||e.key!==o.key)p(e);else{Os(o);const e=o.component.da;e&&os(e,r)}}))})),()=>{if(g=null,!t.default)return null;const n=t.default(),r=n[0];if(n.length>1)return i=null,n;if(!(hi(r)&&(4&r.shapeFlag||128&r.shapeFlag)))return i=null,r;let c=Ms(r);const l=c.type,a=tc(Vr(c)?c.type.__asyncResolved||{}:l),{include:u,exclude:f,max:d}=e;if(u&&(!a||!ws(u,a))||f&&a&&ws(f,a))return i=c,r;const p=null==c.key?l:c.key,h=o.get(p);return c.el&&(c=Ci(c),128&r.shapeFlag&&(r.ssContent=c)),g=p,h?(c.el=h.el,c.component=h.component,c.transition&&zs(c,c.transition),c.shapeFlag|=512,s.delete(p),s.add(p)):(s.add(p),d&&s.size>parseInt(d,10)&&m(s.values().next().value)),c.shapeFlag|=256,i=c,hr(r.type)?r:c}}};function ws(e,t){return m(e)?e.some((e=>ws(e,t))):_(e)?e.split(",").includes(t):"[object RegExp]"===k(e)&&e.test(t)}function As(e,t){Is(e,"a",t)}function Ns(e,t){Is(e,"da",t)}function Is(e,t,n=Pi){const r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(xr(t,r,n),n){let e=n.parent;for(;e&&e.parent;)ks(e.parent.vnode)&&Rs(r,t,n,e),e=e.parent}}function Rs(e,t,n,r){const o=xr(t,e,r,!0);Nr((()=>{d(r[t],o)}),n)}function Os(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ms(e){return 128&e.shapeFlag?e.ssContent:e}const Ls=Symbol("_leaveCb"),Ps=Symbol("_enterCb");function $s(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return kr((()=>{e.isMounted=!0})),Ar((()=>{e.isUnmounting=!0})),e}const Ds=[Function,Array],Fs={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ds,onEnter:Ds,onAfterEnter:Ds,onEnterCancelled:Ds,onBeforeLeave:Ds,onLeave:Ds,onAfterLeave:Ds,onLeaveCancelled:Ds,onBeforeAppear:Ds,onAppear:Ds,onAfterAppear:Ds,onAppearCancelled:Ds},Vs=e=>{const t=e.subTree;return t.component?Vs(t.component):t},Bs={name:"BaseTransition",props:Fs,setup(e,{slots:t}){const n=$i(),r=$s();return()=>{const o=t.default&&Ws(t.default(),!0);if(!o||!o.length)return;let s=o[0];if(o.length>1){let e=!1;for(const t of o)if(t.type!==ni){0,s=t,e=!0;break}}const i=Vt(e),{mode:c}=i;if(r.isLeaving)return js(s);const l=qs(s);if(!l)return js(s);let a=Hs(l,i,r,n,(e=>a=e));zs(l,a);const u=n.subTree,f=u&&qs(u);if(f&&f.type!==ni&&!mi(l,f)&&Vs(n).type!==ni){const e=Hs(f,i,r,n);if(zs(f,e),"out-in"===c&&l.type!==ni)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,!1!==n.update.active&&(n.effect.dirty=!0,n.update())},js(s);"in-out"===c&&l.type!==ni&&(e.delayLeave=(e,t,n)=>{Us(r,f)[String(f.key)]=f,e[Ls]=()=>{t(),e[Ls]=void 0,delete a.delayedLeave},a.delayedLeave=n})}return s}}};function Us(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Hs(e,t,n,r,o){const{appear:s,mode:i,persisted:c=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:d,onLeave:p,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:v,onAppear:y,onAfterAppear:b,onAppearCancelled:_}=t,S=String(e.key),x=Us(n,e),C=(e,t)=>{e&&Sn(e,r,9,t)},T=(e,t)=>{const n=t[1];C(e,t),m(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},k={mode:i,persisted:c,beforeEnter(t){let r=l;if(!n.isMounted){if(!s)return;r=v||l}t[Ls]&&t[Ls](!0);const o=x[S];o&&mi(e,o)&&o.el[Ls]&&o.el[Ls](),C(r,[t])},enter(e){let t=a,r=u,o=f;if(!n.isMounted){if(!s)return;t=y||a,r=b||u,o=_||f}let i=!1;const c=e[Ps]=t=>{i||(i=!0,C(t?o:r,[e]),k.delayedLeave&&k.delayedLeave(),e[Ps]=void 0)};t?T(t,[e,c]):c()},leave(t,r){const o=String(e.key);if(t[Ps]&&t[Ps](!0),n.isUnmounting)return r();C(d,[t]);let s=!1;const i=t[Ls]=n=>{s||(s=!0,r(),C(n?g:h,[t]),t[Ls]=void 0,x[o]===e&&delete x[o])};x[o]=e,p?T(p,[t,i]):i()},clone(e){const s=Hs(e,t,n,r,o);return o&&o(s),s}};return k}function js(e){if(ks(e))return(e=Ci(e)).children=null,e}function qs(e){if(!ks(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&b(n.default))return n.default()}}function zs(e,t){6&e.shapeFlag&&e.component?zs(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Ws(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let e=0;ee&&(e.disabled||""===e.disabled),Ys=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,Gs=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,Js=(e,t)=>{const n=e&&e.to;if(_(n)){if(t){return t(n)}return null}return n};function Xs(e,t,n,{o:{insert:r},m:o},s=2){0===s&&r(e.targetAnchor,t,n);const{el:i,anchor:c,shapeFlag:l,children:a,props:u}=e,f=2===s;if(f&&r(i,t,n),(!f||Ks(u))&&16&l)for(let e=0;e{16&y&&u(b,e,t,o,s,i,c,l)};v?g(n,a):f&&g(f,d)}else{t.el=e.el;const r=t.anchor=e.anchor,u=t.target=e.target,p=t.targetAnchor=e.targetAnchor,m=Ks(e.props),g=m?n:u,y=m?r:p;if("svg"===i||Ys(u)?i="svg":("mathml"===i||Gs(u))&&(i="mathml"),_?(d(e.dynamicChildren,_,g,o,s,i,c),fs(e,t,!0)):l||f(e,t,g,y,o,s,i,c,!1),v)m?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Xs(t,n,r,a,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const e=t.target=Js(t.props,h);e&&Xs(t,e,null,a,0)}else m&&Xs(t,u,p,a,1)}Zs(t)},remove(e,t,n,{um:r,o:{remove:o}},s){const{shapeFlag:i,children:c,anchor:l,targetAnchor:a,target:u,props:f}=e;if(u&&o(a),s&&o(l),16&i){const e=s||!Ks(f);for(let o=0;o0?si||i:null,ci(),ai>0&&si&&si.push(e),e}function di(e,t,n,r,o,s){return fi(bi(e,t,n,r,o,s,!0))}function pi(e,t,n,r,o){return fi(_i(e,t,n,r,o,!0))}function hi(e){return!!e&&!0===e.__v_isVNode}function mi(e,t){return e.type===t.type&&e.key===t.key}function gi(e){li=e}const vi=({key:e})=>null!=e?e:null,yi=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?_(e)||Kt(e)||b(e)?{i:Kn,r:e,k:t,f:!!n}:e:null);function bi(e,t=null,n=null,r=0,o=null,s=(e===ei?0:1),i=!1,c=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&vi(t),ref:t&&yi(t),scopeId:Yn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Kn};return c?(Ni(l,n),128&s&&e.normalize(l)):n&&(l.shapeFlag|=_(n)?8:16),ai>0&&!i&&si&&(l.patchFlag>0||6&s)&&32!==l.patchFlag&&si.push(l),l}const _i=Si;function Si(e,t=null,n=null,r=0,o=null,s=!1){if(e&&e!==ar||(e=ni),hi(e)){const r=Ci(e,t,!0);return n&&Ni(r,n),ai>0&&!s&&si&&(6&r.shapeFlag?si[si.indexOf(e)]=r:si.push(r)),r.patchFlag=-2,r}if(rc(e)&&(e=e.__vccOpts),t){t=xi(t);let{class:e,style:n}=t;e&&!_(e)&&(t.class=Q(e)),x(n)&&(Ft(n)&&!m(n)&&(n=f({},n)),t.style=K(n))}return bi(e,t,n,r,o,_(e)?1:hr(e)?128:(e=>e.__isTeleport)(e)?64:x(e)?4:b(e)?2:0,s,!0)}function xi(e){return e?Ft(e)||Mo(e)?f({},e):e:null}function Ci(e,t,n=!1,r=!1){const{props:o,ref:s,patchFlag:i,children:c,transition:l}=e,a=t?Ii(o||{},t):o,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&vi(a),ref:t&&t.ref?n&&s?m(s)?s.concat(yi(t)):[s,yi(t)]:yi(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:c,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ei?-1===i?16:16|i:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ci(e.ssContent),ssFallback:e.ssFallback&&Ci(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&r&&zs(u,l.clone(u)),u}function Ti(e=" ",t=0){return _i(ti,null,e,t)}function ki(e,t){const n=_i(ri,null,e);return n.staticCount=t,n}function Ei(e="",t=!1){return t?(ii(),pi(ni,null,e)):_i(ni,null,e)}function wi(e){return null==e||"boolean"==typeof e?_i(ni):m(e)?_i(ei,null,e.slice()):"object"==typeof e?Ai(e):_i(ti,null,String(e))}function Ai(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:Ci(e)}function Ni(e,t){let n=0;const{shapeFlag:r}=e;if(null==t)t=null;else if(m(t))n=16;else if("object"==typeof t){if(65&r){const n=t.default;return void(n&&(n._c&&(n._d=!1),Ni(e,n()),n._c&&(n._d=!0)))}{n=32;const r=t._;r||Mo(t)?3===r&&Kn&&(1===Kn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=Kn}}else b(t)?(t={default:t,_ctx:Kn},n=32):(t=String(t),64&r?(n=16,t=[Ti(t)]):n=8);e.children=t,e.shapeFlag|=n}function Ii(...e){const t={};for(let n=0;nPi||Kn;let Di,Fi;{const e=q(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach((t=>t(e))):r[0](e)}};Di=t("__VUE_INSTANCE_SETTERS__",(e=>Pi=e)),Fi=t("__VUE_SSR_SETTERS__",(e=>qi=e))}const Vi=e=>{const t=Pi;return Di(e),e.scope.on(),()=>{e.scope.off(),Di(t)}},Bi=()=>{Pi&&Pi.scope.off(),Di(null)};function Ui(e){return 4&e.vnode.shapeFlag}let Hi,ji,qi=!1;function zi(e,t=!1){t&&Fi(t);const{props:n,children:r}=e.vnode,o=Ui(e);!function(e,t,n,r=!1){const o={},s=Oo();e.propsDefaults=Object.create(null),Lo(e,t,o,s);for(const t in e.propsOptions[0])t in o||(o[t]=void 0);n?e.props=r?o:Rt(o):e.type.props?e.props=o:e.props=s,e.attrs=s}(e,n,o,t),Wo(e,r);const s=o?function(e,t){const n=e.type;0;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Yr),!1;const{setup:r}=n;if(r){const n=e.setupContext=r.length>1?Xi(e):null,o=Vi(e);Me();const s=_n(r,e,0,[e.props,n]);if(Le(),o(),C(s)){if(s.then(Bi,Bi),t)return s.then((n=>{Wi(e,n,t)})).catch((t=>{xn(t,e,0)}));e.asyncDep=s}else Wi(e,s,t)}else Gi(e,t)}(e,t):void 0;return t&&Fi(!1),s}function Wi(e,t,n){b(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:x(t)&&(e.setupState=nn(t)),Gi(e,n)}function Ki(e){Hi=e,ji=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,Gr))}}const Yi=()=>!Hi;function Gi(e,t,n){const r=e.type;if(!e.render){if(!t&&Hi&&!r.render){const t=r.template||go(e).template;if(t){0;const{isCustomElement:n,compilerOptions:o}=e.appContext.config,{delimiters:s,compilerOptions:i}=r,c=f(f({isCustomElement:n,delimiters:s},o),i);r.render=Hi(t,c)}}e.render=r.render||c,ji&&ji(e)}{const t=Vi(e);Me();try{po(e)}finally{Le(),t()}}}const Ji={get(e,t){return qe(e,0,""),e[t]}};function Xi(e){const t=t=>{e.exposed=t||{}};return{attrs:new Proxy(e.attrs,Ji),slots:e.slots,emit:e.emit,expose:t}}function Qi(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(nn(Bt(e.exposed)),{get(t,n){return n in t?t[n]:n in Wr?Wr[n](e):void 0},has(e,t){return t in e||t in Wr}})):e.proxy}const Zi=/(?:^|[-_])(\w)/g,ec=e=>e.replace(Zi,(e=>e.toUpperCase())).replace(/[-_]/g,"");function tc(e,t=!0){return b(e)?e.displayName||e.name:e.name||t&&e.__name}function nc(e,t,n=!1){let r=tc(t);if(!r&&t.__file){const e=t.__file.match(/([^/\\]+)\.\w+$/);e&&(r=e[1])}if(!r&&e&&e.parent){const n=e=>{for(const n in e)if(e[n]===t)return n};r=n(e.components||e.parent.type.components)||n(e.appContext.components)}return r?ec(r):n?"App":"Anonymous"}function rc(e){return b(e)&&"__vccOpts"in e}const oc=(e,t)=>qt(e,0,qi);function sc(e,t,n=s){const r=$i();const o=M(t),i=P(t),c=on(((s,c)=>{let l;return ys((()=>{const n=e[t];F(l,n)&&(l=n,c())})),{get(){return s(),n.get?n.get(l):l},set(e){const s=r.vnode.props;s&&(t in s||o in s||i in s)&&(`onUpdate:${t}`in s||`onUpdate:${o}`in s||`onUpdate:${i}`in s)||!F(e,l)||(l=e,c()),r.emit(`update:${t}`,n.set?n.set(e):e)}}})),l="modelValue"===t?"modelModifiers":`${t}Modifiers`;return c[Symbol.iterator]=()=>{let t=0;return{next(){return t<2?{value:t++?e[l]||{}:c,done:!1}:{done:!0}}}},c}function ic(e,t,n){const r=arguments.length;return 2===r?x(t)&&!m(t)?hi(t)?_i(e,null,[t]):_i(e,t):_i(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&hi(n)&&(n=[n]),_i(e,t,n))}function cc(){return void 0}function lc(e,t,n,r){const o=n[r];if(o&&ac(o,e))return o;const s=t();return s.memo=e.slice(),s.memoIndex=r,n[r]=s}function ac(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&si&&si.push(e),!0}const uc="3.4.31",fc=c,dc=bn,pc=Un,hc=function e(t,n){var r,o;if(Un=t,Un)Un.enabled=!0,Hn.forEach((({event:e,args:t})=>Un.emit(e,...t))),Hn=[];else if("undefined"!=typeof window&&window.HTMLElement&&!(null==(o=null==(r=window.navigator)?void 0:r.userAgent)?void 0:o.includes("jsdom"))){(n.__VUE_DEVTOOLS_HOOK_REPLAY__=n.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push((t=>{e(t,n)})),setTimeout((()=>{Un||(n.__VUE_DEVTOOLS_HOOK_REPLAY__=null,jn=!0,Hn=[])}),3e3)}else jn=!0,Hn=[]},mc={createComponentInstance:Li,setupComponent:zi,renderComponentRoot:er,setCurrentRenderingInstance:Gn,isVNode:hi,normalizeVNode:wi,getComponentPublicInstance:Qi},gc=null,vc=null,yc=null,bc="undefined"!=typeof document?document:null,_c=bc&&bc.createElement("template"),Sc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o="svg"===t?bc.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?bc.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?bc.createElement(e,{is:n}):bc.createElement(e);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>bc.createTextNode(e),createComment:e=>bc.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>bc.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),o!==s&&(o=o.nextSibling););else{_c.innerHTML="svg"===r?`${e}`:"mathml"===r?`${e}`:e;const o=_c.content;if("svg"===r||"mathml"===r){const e=o.firstChild;for(;e.firstChild;)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},xc="transition",Cc="animation",Tc=Symbol("_vtc"),kc=(e,{slots:t})=>ic(Bs,Ic(e),t);kc.displayName="Transition";const Ec={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},wc=kc.props=f({},Fs,Ec),Ac=(e,t=[])=>{m(e)?e.forEach((e=>e(...t))):e&&e(...t)},Nc=e=>!!e&&(m(e)?e.some((e=>e.length>1)):e.length>1);function Ic(e){const t={};for(const n in e)n in Ec||(t[n]=e[n]);if(!1===e.css)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:l=s,appearActiveClass:a=i,appearToClass:u=c,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,m=function(e){if(null==e)return null;if(x(e))return[Rc(e.enter),Rc(e.leave)];{const t=Rc(e);return[t,t]}}(o),g=m&&m[0],v=m&&m[1],{onBeforeEnter:y,onEnter:b,onEnterCancelled:_,onLeave:S,onLeaveCancelled:C,onBeforeAppear:T=y,onAppear:k=b,onAppearCancelled:E=_}=t,w=(e,t,n)=>{Mc(e,t?u:c),Mc(e,t?a:i),n&&n()},A=(e,t)=>{e._isLeaving=!1,Mc(e,d),Mc(e,h),Mc(e,p),t&&t()},N=e=>(t,n)=>{const o=e?k:b,i=()=>w(t,e,n);Ac(o,[t,i]),Lc((()=>{Mc(t,e?l:s),Oc(t,e?u:c),Nc(o)||$c(t,r,g,i)}))};return f(t,{onBeforeEnter(e){Ac(y,[e]),Oc(e,s),Oc(e,i)},onBeforeAppear(e){Ac(T,[e]),Oc(e,l),Oc(e,a)},onEnter:N(!1),onAppear:N(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>A(e,t);Oc(e,d),Oc(e,p),Bc(),Lc((()=>{e._isLeaving&&(Mc(e,d),Oc(e,h),Nc(S)||$c(e,r,v,n))})),Ac(S,[e,n])},onEnterCancelled(e){w(e,!1),Ac(_,[e])},onAppearCancelled(e){w(e,!0),Ac(E,[e])},onLeaveCancelled(e){A(e),Ac(C,[e])}})}function Rc(e){return H(e)}function Oc(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[Tc]||(e[Tc]=new Set)).add(t)}function Mc(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[Tc];n&&(n.delete(t),n.size||(e[Tc]=void 0))}function Lc(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Pc=0;function $c(e,t,n,r){const o=e._endId=++Pc,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:c,propCount:l}=Dc(e,t);if(!i)return r();const a=i+"end";let u=0;const f=()=>{e.removeEventListener(a,d),s()},d=t=>{t.target===e&&++u>=l&&f()};setTimeout((()=>{u(n[e]||"").split(", "),o=r(`${xc}Delay`),s=r(`${xc}Duration`),i=Fc(o,s),c=r(`${Cc}Delay`),l=r(`${Cc}Duration`),a=Fc(c,l);let u=null,f=0,d=0;t===xc?i>0&&(u=xc,f=i,d=s.length):t===Cc?a>0&&(u=Cc,f=a,d=l.length):(f=Math.max(i,a),u=f>0?i>a?xc:Cc:null,d=u?u===xc?s.length:l.length:0);return{type:u,timeout:f,propCount:d,hasTransform:u===xc&&/\b(transform|all)(,|$)/.test(r(`${xc}Property`).toString())}}function Fc(e,t){for(;e.lengthVc(t)+Vc(e[n]))))}function Vc(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function Bc(){return document.body.offsetHeight}const Uc=Symbol("_vod"),Hc=Symbol("_vsh"),jc={beforeMount(e,{value:t},{transition:n}){e[Uc]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):qc(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),qc(e,!0),r.enter(e)):r.leave(e,(()=>{qc(e,!1)})):qc(e,t))},beforeUnmount(e,{value:t}){qc(e,t)}};function qc(e,t){e.style.display=t?e[Uc]:"none",e[Hc]=!t}const zc=Symbol("");function Wc(e){const t=$i();if(!t)return;const n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach((e=>Yc(e,n)))};const r=()=>{const r=e(t.proxy);Kc(t.subTree,r),n(r)};kr((()=>{vs(r);const e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),Nr((()=>e.disconnect()))}))}function Kc(e,t){if(128&e.shapeFlag){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push((()=>{Kc(n.activeBranch,t)}))}for(;e.component;)e=e.component.subTree;if(1&e.shapeFlag&&e.el)Yc(e.el,t);else if(e.type===ei)e.children.forEach((e=>Kc(e,t)));else if(e.type===ri){let{el:n,anchor:r}=e;for(;n&&(Yc(n,t),n!==r);)n=n.nextSibling}}function Yc(e,t){if(1===e.nodeType){const n=e.style;let r="";for(const e in t)n.setProperty(`--${e}`,t[e]),r+=`--${e}: ${t[e]};`;n[zc]=r}}const Gc=/(^|;)\s*display\s*:/;const Jc=/\s*!important$/;function Xc(e,t,n){if(m(n))n.forEach((n=>Xc(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=function(e,t){const n=Zc[t];if(n)return n;let r=M(t);if("filter"!==r&&r in e)return Zc[t]=r;r=$(r);for(let n=0;n{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();Sn(function(e,t){if(m(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}(e,n.value),t,5,[e])};return n.value=e,n.attached=ll(),n}(r,o);nl(e,n,i,c)}else i&&(!function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,i,c),s[t]=void 0)}}const sl=/(?:Once|Passive|Capture)$/;let il=0;const cl=Promise.resolve(),ll=()=>il||(cl.then((()=>il=0)),il=Date.now());const al=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123; +/*! #__NO_SIDE_EFFECTS__ */ +function ul(e,t,n){const r=Fr(e,t);class o extends pl{constructor(e){super(r,e,n)}}return o.def=r,o} +/*! #__NO_SIDE_EFFECTS__ */const fl=(e,t)=>ul(e,t,Jl),dl="undefined"!=typeof HTMLElement?HTMLElement:class{};class pl extends dl{constructor(e,t={},n){super(),this._def=e,this._props=t,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this._ob=null,this.shadowRoot&&n?n(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,On((()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),Gl(null,this.shadowRoot),this._instance=null)}))}_resolveDef(){this._resolved=!0;for(let e=0;e{for(const t of e)this._setAttr(t.attributeName)})),this._ob.observe(this,{attributes:!0});const e=(e,t=!1)=>{const{props:n,styles:r}=e;let o;if(n&&!m(n))for(const e in n){const t=n[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=H(this._props[e])),(o||(o=Object.create(null)))[M(e)]=!0)}this._numberProps=o,t&&this._resolveProps(e),this._applyStyles(r),this._update()},t=this._def.__asyncLoader;t?t().then((t=>e(t,!0))):e(this._def)}_resolveProps(e){const{props:t}=e,n=m(t)?t:Object.keys(t||{});for(const e of Object.keys(this))"_"!==e[0]&&n.includes(e)&&this._setProp(e,this[e],!0,!1);for(const e of n.map(M))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t)}})}_setAttr(e){let t=this.hasAttribute(e)?this.getAttribute(e):void 0;const n=M(e);this._numberProps&&this._numberProps[n]&&(t=H(t)),this._setProp(n,t,!1)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!0){t!==this._props[e]&&(this._props[e]=t,r&&this._instance&&this._update(),n&&(!0===t?this.setAttribute(P(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute(P(e),t+""):t||this.removeAttribute(P(e))))}_update(){Gl(this._createVNode(),this.shadowRoot)}_createVNode(){const e=_i(this._def,f({},this._props));return this._instance||(e.ce=e=>{this._instance=e,e.isCE=!0;const t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,{detail:t}))};e.emit=(e,...n)=>{t(e,n),P(e)!==e&&t(P(e),n)};let n=this;for(;n=n&&(n.parentNode||n.host);)if(n instanceof pl){e.parent=n._instance,e.provides=n._instance.provides;break}}),e}_applyStyles(e){e&&e.forEach((e=>{const t=document.createElement("style");t.textContent=e,this.shadowRoot.appendChild(t)}))}}function hl(e="$style"){{const t=$i();if(!t)return s;const n=t.type.__cssModules;if(!n)return s;const r=n[e];return r||s}}const ml=new WeakMap,gl=new WeakMap,vl=Symbol("_moveCb"),yl=Symbol("_enterCb"),bl={name:"TransitionGroup",props:f({},wc,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=$i(),r=$s();let o,s;return wr((()=>{if(!o.length)return;const t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){const r=e.cloneNode(),o=e[Tc];o&&o.forEach((e=>{e.split(/\s+/).forEach((e=>e&&r.classList.remove(e)))}));n.split(/\s+/).forEach((e=>e&&r.classList.add(e))),r.style.display="none";const s=1===t.nodeType?t:t.parentNode;s.appendChild(r);const{hasTransform:i}=Dc(r);return s.removeChild(r),i}(o[0].el,n.vnode.el,t))return;o.forEach(Sl),o.forEach(xl);const r=o.filter(Cl);Bc(),r.forEach((e=>{const n=e.el,r=n.style;Oc(n,t),r.transform=r.webkitTransform=r.transitionDuration="";const o=n[vl]=e=>{e&&e.target!==n||e&&!/transform$/.test(e.propertyName)||(n.removeEventListener("transitionend",o),n[vl]=null,Mc(n,t))};n.addEventListener("transitionend",o)}))})),()=>{const i=Vt(e),c=Ic(i);let l=i.tag||ei;if(o=[],s)for(let e=0;e{const t=e.props["onUpdate:modelValue"]||!1;return m(t)?e=>V(t,e):t};function kl(e){e.target.composing=!0}function El(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const wl=Symbol("_assign"),Al={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[wl]=Tl(o);const s=r||o.props&&"number"===o.props.type;nl(e,t?"change":"input",(t=>{if(t.target.composing)return;let r=e.value;n&&(r=r.trim()),s&&(r=U(r)),e[wl](r)})),n&&nl(e,"change",(()=>{e.value=e.value.trim()})),t||(nl(e,"compositionstart",kl),nl(e,"compositionend",El),nl(e,"change",El))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:o,number:s}},i){if(e[wl]=Tl(i),e.composing)return;const c=null==t?"":t;if((!s&&"number"!==e.type||/^0\d/.test(e.value)?e.value:U(e.value))!==c){if(document.activeElement===e&&"range"!==e.type){if(r&&t===n)return;if(o&&e.value.trim()===c)return}e.value=c}}},Nl={deep:!0,created(e,t,n){e[wl]=Tl(n),nl(e,"change",(()=>{const t=e._modelValue,n=Ll(e),r=e.checked,o=e[wl];if(m(t)){const e=fe(t,n),s=-1!==e;if(r&&!s)o(t.concat(n));else if(!r&&s){const n=[...t];n.splice(e,1),o(n)}}else if(v(t)){const e=new Set(t);r?e.add(n):e.delete(n),o(e)}else o(Pl(e,r))}))},mounted:Il,beforeUpdate(e,t,n){e[wl]=Tl(n),Il(e,t,n)}};function Il(e,{value:t,oldValue:n},r){e._modelValue=t,m(t)?e.checked=fe(t,r.props.value)>-1:v(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=ue(t,Pl(e,!0)))}const Rl={created(e,{value:t},n){e.checked=ue(t,n.props.value),e[wl]=Tl(n),nl(e,"change",(()=>{e[wl](Ll(e))}))},beforeUpdate(e,{value:t,oldValue:n},r){e[wl]=Tl(r),t!==n&&(e.checked=ue(t,r.props.value))}},Ol={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const o=v(t);nl(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?U(Ll(e)):Ll(e)));e[wl](e.multiple?o?new Set(t):t:t[0]),e._assigning=!0,On((()=>{e._assigning=!1}))})),e[wl]=Tl(r)},mounted(e,{value:t,modifiers:{number:n}}){Ml(e,t)},beforeUpdate(e,t,n){e[wl]=Tl(n)},updated(e,{value:t,modifiers:{number:n}}){e._assigning||Ml(e,t)}};function Ml(e,t,n){const r=e.multiple,o=m(t);if(!r||o||v(t)){for(let n=0,s=e.options.length;nString(e)===String(i))):fe(t,i)>-1}else s.selected=t.has(i);else if(ue(Ll(s),t))return void(e.selectedIndex!==n&&(e.selectedIndex=n))}r||-1===e.selectedIndex||(e.selectedIndex=-1)}}function Ll(e){return"_value"in e?e._value:e.value}function Pl(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const $l={created(e,t,n){Fl(e,t,n,null,"created")},mounted(e,t,n){Fl(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){Fl(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){Fl(e,t,n,r,"updated")}};function Dl(e,t){switch(e){case"SELECT":return Ol;case"TEXTAREA":return Al;default:switch(t){case"checkbox":return Nl;case"radio":return Rl;default:return Al}}}function Fl(e,t,n,r,o){const s=Dl(e.tagName,n.props&&n.props.type)[o];s&&s(e,t,n,r)}const Vl=["ctrl","shift","alt","meta"],Bl={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>Vl.some((n=>e[`${n}Key`]&&!t.includes(n)))},Ul=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;e{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=n=>{if(!("key"in n))return;const r=P(n.key);return t.some((e=>e===r||Hl[e]===r))?e(n):void 0})},ql=f({patchProp:(e,t,n,r,o,s,i,c,l)=>{const f="svg"===o;"class"===t?function(e,t,n){const r=e[Tc];r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,r,f):"style"===t?function(e,t,n){const r=e.style,o=_(n);let s=!1;if(n&&!o){if(t)if(_(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&Xc(r,t,"")}else for(const e in t)null==n[e]&&Xc(r,e,"");for(const e in n)"display"===e&&(s=!0),Xc(r,e,n[e])}else if(o){if(t!==n){const e=r[zc];e&&(n+=";"+e),r.cssText=n,s=Gc.test(n)}}else t&&e.removeAttribute("style");Uc in e&&(e[Uc]=s?r.display:"",e[Hc]&&(r.display="none"))}(e,n,r):a(t)?u(t)||ol(e,t,0,r,i):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,r){if(r)return"innerHTML"===t||"textContent"===t||!!(t in e&&al(t)&&b(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(al(t)&&_(n))return!1;return t in e}(e,t,r,f))?(!function(e,t,n,r,o,s,i){if("innerHTML"===t||"textContent"===t)return r&&i(r,o,s),void(e[t]=null==n?"":n);const c=e.tagName;if("value"===t&&"PROGRESS"!==c&&!c.includes("-")){const r="OPTION"===c?e.getAttribute("value")||"":e.value,o=null==n?"":String(n);return r===o&&"_value"in e||(e.value=o),null==n&&e.removeAttribute(t),void(e._value=n)}let l=!1;if(""===n||null==n){const r=typeof e[t];"boolean"===r?n=ce(n):null==n&&"string"===r?(n="",l=!0):"number"===r&&(n=0,l=!0)}try{e[t]=n}catch(e){}l&&e.removeAttribute(t)}(e,t,r,s,i,c,l),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||tl(e,t,r,f,0,"value"!==t)):("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),tl(e,t,r,f))}},Sc);let zl,Wl=!1;function Kl(){return zl||(zl=ss(ql))}function Yl(){return zl=Wl?zl:is(ql),Wl=!0,zl}const Gl=(...e)=>{Kl().render(...e)},Jl=(...e)=>{Yl().hydrate(...e)},Xl=(...e)=>{const t=Kl().createApp(...e);const{mount:n}=t;return t.mount=e=>{const r=ea(e);if(!r)return;const o=t._component;b(o)||o.render||o.template||(o.template=r.innerHTML),r.innerHTML="";const s=n(r,!1,Zl(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),s},t},Ql=(...e)=>{const t=Yl().createApp(...e);const{mount:n}=t;return t.mount=e=>{const t=ea(e);if(t)return n(t,!0,Zl(t))},t};function Zl(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function ea(e){if(_(e)){return document.querySelector(e)}return e}let ta=!1;const na=()=>{ta||(ta=!0,Al.getSSRProps=({value:e})=>({value:e}),Rl.getSSRProps=({value:e},t)=>{if(t.props&&ue(t.props.value,e))return{checked:!0}},Nl.getSSRProps=({value:e},t)=>{if(m(e)){if(t.props&&fe(e,t.props.value)>-1)return{checked:!0}}else if(v(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},$l.getSSRProps=(e,t)=>{if("string"!=typeof t.type)return;const n=Dl(t.type.toUpperCase(),t.props&&t.props.type);return n.getSSRProps?n.getSSRProps(e,t):void 0},jc.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}})},ra=Symbol(""),oa=Symbol(""),sa=Symbol(""),ia=Symbol(""),ca=Symbol(""),la=Symbol(""),aa=Symbol(""),ua=Symbol(""),fa=Symbol(""),da=Symbol(""),pa=Symbol(""),ha=Symbol(""),ma=Symbol(""),ga=Symbol(""),va=Symbol(""),ya=Symbol(""),ba=Symbol(""),_a=Symbol(""),Sa=Symbol(""),xa=Symbol(""),Ca=Symbol(""),Ta=Symbol(""),ka=Symbol(""),Ea=Symbol(""),wa=Symbol(""),Aa=Symbol(""),Na=Symbol(""),Ia=Symbol(""),Ra=Symbol(""),Oa=Symbol(""),Ma=Symbol(""),La=Symbol(""),Pa=Symbol(""),$a=Symbol(""),Da=Symbol(""),Fa=Symbol(""),Va=Symbol(""),Ba=Symbol(""),Ua=Symbol(""),Ha={[ra]:"Fragment",[oa]:"Teleport",[sa]:"Suspense",[ia]:"KeepAlive",[ca]:"BaseTransition",[la]:"openBlock",[aa]:"createBlock",[ua]:"createElementBlock",[fa]:"createVNode",[da]:"createElementVNode",[pa]:"createCommentVNode",[ha]:"createTextVNode",[ma]:"createStaticVNode",[ga]:"resolveComponent",[va]:"resolveDynamicComponent",[ya]:"resolveDirective",[ba]:"resolveFilter",[_a]:"withDirectives",[Sa]:"renderList",[xa]:"renderSlot",[Ca]:"createSlots",[Ta]:"toDisplayString",[ka]:"mergeProps",[Ea]:"normalizeClass",[wa]:"normalizeStyle",[Aa]:"normalizeProps",[Na]:"guardReactiveProps",[Ia]:"toHandlers",[Ra]:"camelize",[Oa]:"capitalize",[Ma]:"toHandlerKey",[La]:"setBlockTracking",[Pa]:"pushScopeId",[$a]:"popScopeId",[Da]:"withCtx",[Fa]:"unref",[Va]:"isRef",[Ba]:"withMemo",[Ua]:"isMemoSame"};const ja={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function qa(e,t,n,r,o,s,i,c=!1,l=!1,a=!1,u=ja){return e&&(c?(e.helper(la),e.helper(eu(e.inSSR,a))):e.helper(Za(e.inSSR,a)),i&&e.helper(_a)),{type:13,tag:t,props:n,children:r,patchFlag:o,dynamicProps:s,directives:i,isBlock:c,disableTracking:l,isComponent:a,loc:u}}function za(e,t=ja){return{type:17,loc:t,elements:e}}function Wa(e,t=ja){return{type:15,loc:t,properties:e}}function Ka(e,t){return{type:16,loc:ja,key:_(e)?Ya(e,!0):e,value:t}}function Ya(e,t=!1,n=ja,r=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:r}}function Ga(e,t=ja){return{type:8,loc:t,children:e}}function Ja(e,t=[],n=ja){return{type:14,loc:n,callee:e,arguments:t}}function Xa(e,t=void 0,n=!1,r=!1,o=ja){return{type:18,params:e,returns:t,newline:n,isSlot:r,loc:o}}function Qa(e,t,n,r=!0){return{type:19,test:e,consequent:t,alternate:n,newline:r,loc:ja}}function Za(e,t){return e||t?fa:da}function eu(e,t){return e||t?aa:ua}function tu(e,{helper:t,removeHelper:n,inSSR:r}){e.isBlock||(e.isBlock=!0,n(Za(r,e.isComponent)),t(la),t(eu(r,e.isComponent)))}const nu=new Uint8Array([123,123]),ru=new Uint8Array([125,125]);function ou(e){return e>=97&&e<=122||e>=65&&e<=90}function su(e){return 32===e||10===e||9===e||12===e||13===e}function iu(e){return 47===e||62===e||su(e)}function cu(e){const t=new Uint8Array(e.length);for(let n=0;n4===e.type&&e.isStatic;function gu(e){switch(e){case"Teleport":case"teleport":return oa;case"Suspense":case"suspense":return sa;case"KeepAlive":case"keep-alive":return ia;case"BaseTransition":case"base-transition":return ca}}const vu=/^\d|[^\$\w\xA0-\uFFFF]/,yu=e=>!vu.test(e),bu=/[A-Za-z_$\xA0-\uFFFF]/,_u=/[\.\?\w$\xA0-\uFFFF]/,Su=/\s+[.[]\s*|\s*[.[]\s+/g,xu=e=>{e=e.trim().replace(Su,(e=>e.trim()));let t=0,n=[],r=0,o=0,s=null;for(let i=0;i4===e.key.type&&e.key.content===r))}return n}function Lu(e,t){return`_${t}_${e.replace(/[^\w]/g,((t,n)=>"-"===t?"_":e.charCodeAt(n).toString()))}`}const Pu=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/,$u={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:l,isPreTag:l,isCustomElement:l,onError:du,onWarn:pu,comments:!1,prefixIdentifiers:!1};let Du=$u,Fu=null,Vu="",Bu=null,Uu=null,Hu="",ju=-1,qu=-1,zu=0,Wu=!1,Ku=null;const Yu=[],Gu=new class{constructor(e,t){this.stack=e,this.cbs=t,this.state=1,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=1,this.inRCDATA=!1,this.inXML=!1,this.inVPre=!1,this.newlines=[],this.mode=0,this.delimiterOpen=nu,this.delimiterClose=ru,this.delimiterIndex=-1,this.currentSequence=void 0,this.sequenceIndex=0}get inSFCRoot(){return 2===this.mode&&0===this.stack.length}reset(){this.state=1,this.mode=0,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=1,this.inRCDATA=!1,this.currentSequence=void 0,this.newlines.length=0,this.delimiterOpen=nu,this.delimiterClose=ru}getPos(e){let t=1,n=e+1;for(let r=this.newlines.length-1;r>=0;r--){const o=this.newlines[r];if(e>o){t=r+2,n=e-o;break}}return{column:n,line:t,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){60===e?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):this.inVPre||e!==this.delimiterOpen[0]||(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){const e=this.index+1-this.delimiterOpen.length;e>this.sectionStart&&this.cbs.ontext(this.sectionStart,e),this.state=3,this.sectionStart=e}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){const t=this.sequenceIndex===this.currentSequence.length;if(t?iu(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.inRCDATA=!1;this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(62===e||su(e)){const t=this.index-this.currentSequence.length;if(this.sectionStart=e||(28===this.state?this.currentSequence===lu.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):6===this.state||11===this.state||18===this.state||17===this.state||12===this.state||13===this.state||14===this.state||15===this.state||16===this.state||20===this.state||19===this.state||21===this.state||9===this.state||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,t){}}(Yu,{onerr:gf,ontext(e,t){ef(Qu(e,t),e,t)},ontextentity(e,t,n){ef(e,t,n)},oninterpolation(e,t){if(Wu)return ef(Qu(e,t),e,t);let n=e+Gu.delimiterOpen.length,r=t-Gu.delimiterClose.length;for(;su(Vu.charCodeAt(n));)n++;for(;su(Vu.charCodeAt(r-1));)r--;let o=Qu(n,r);o.includes("&")&&(o=Du.decodeEntities(o,!1)),ff({type:5,content:mf(o,!1,df(n,r)),loc:df(e,t)})},onopentagname(e,t){const n=Qu(e,t);Bu={type:1,tag:n,ns:Du.getNamespace(n,Yu[0],Du.ns),tagType:0,props:[],children:[],loc:df(e-1,t),codegenNode:void 0}},onopentagend(e){Zu(e)},onclosetag(e,t){const n=Qu(e,t);if(!Du.isVoidTag(n)){let r=!1;for(let e=0;e0&&gf(24,Yu[0].loc.start.offset);for(let n=0;n<=e;n++){tf(Yu.shift(),t,n(7===e.type?e.rawName:e.name)===n))&&gf(2,t)},onattribend(e,t){if(Bu&&Uu){if(pf(Uu.loc,t),0!==e)if(Hu.includes("&")&&(Hu=Du.decodeEntities(Hu,!0)),6===Uu.type)"class"===Uu.name&&(Hu=uf(Hu).trim()),1!==e||Hu||gf(13,t),Uu.value={type:2,content:Hu,loc:1===e?df(ju,qu):df(ju-1,qu+1)},Gu.inSFCRoot&&"template"===Bu.tag&&"lang"===Uu.name&&Hu&&"html"!==Hu&&Gu.enterRCDATA(cu("{const o=t.start.offset+n;return mf(e,!1,df(o,o+e.length),0,r?1:0)},c={source:i(s.trim(),n.indexOf(s,o.length)),value:void 0,key:void 0,index:void 0,finalized:!1};let l=o.trim().replace(Xu,"").trim();const a=o.indexOf(l),u=l.match(Ju);if(u){l=l.replace(Ju,"").trim();const e=u[1].trim();let t;if(e&&(t=n.indexOf(e,a+l.length),c.key=i(e,t,!0)),u[2]){const r=u[2].trim();r&&(c.index=i(r,n.indexOf(r,c.key?t+e.length:a+l.length),!0))}}l&&(c.value=i(l,a,!0));return c}(Uu.exp));let t=-1;"bind"===Uu.name&&(t=Uu.modifiers.indexOf("sync"))>-1&&fu("COMPILER_V_BIND_SYNC",Du,Uu.loc,Uu.rawName)&&(Uu.name="model",Uu.modifiers.splice(t,1))}7===Uu.type&&"pre"===Uu.name||Bu.props.push(Uu)}Hu="",ju=qu=-1},oncomment(e,t){Du.comments&&ff({type:3,content:Qu(e,t),loc:df(e-4,t+3)})},onend(){const e=Vu.length;for(let t=0;t64&&n<91)||gu(e)||Du.isBuiltInComponent&&Du.isBuiltInComponent(e)||Du.isNativeTag&&!Du.isNativeTag(e))return!0;var n;for(let e=0;e6===e.type&&"inline-template"===e.name));n&&fu("COMPILER_INLINE_TEMPLATE",Du,n.loc)&&e.children.length&&(n.value={type:2,content:Qu(e.children[0].loc.start.offset,e.children[e.children.length-1].loc.end.offset),loc:n.loc})}}function nf(e,t){let n=e;for(;Vu.charCodeAt(n)!==t&&n>=0;)n--;return n}const rf=new Set(["if","else","else-if","for","slot"]);function of({tag:e,props:t}){if("template"===e)for(let e=0;e0){if(e>=2){o.codegenNode.patchFlag="-1",o.codegenNode=t.hoist(o.codegenNode),s++;continue}}else{const e=o.codegenNode;if(13===e.type){const n=Ef(e);if((!n||512===n||1===n)&&Tf(o,t)>=2){const n=kf(o);n&&(e.props=t.hoist(n))}e.dynamicProps&&(e.dynamicProps=t.hoist(e.dynamicProps))}}}if(1===o.type){const e=1===o.tagType;e&&t.scopes.vSlot++,_f(o,t),e&&t.scopes.vSlot--}else if(11===o.type)_f(o,t,1===o.children.length);else if(9===o.type)for(let e=0;e1)for(let o=0;on&&(w.childIndex--,w.onNodeRemoved()):(w.currentNode=null,w.onNodeRemoved()),w.parent.children.splice(n,1)},onNodeRemoved:c,addIdentifiers(e){},removeIdentifiers(e){},hoist(e){_(e)&&(e=Ya(e)),w.hoists.push(e);const t=Ya(`_hoisted_${w.hoists.length}`,!1,e.loc,2);return t.hoisted=e,t},cache(e,t=!1){return function(e,t,n=!1){return{type:20,index:e,value:t,isVNode:n,loc:ja}}(w.cached++,e,t)}};return w.filters=new Set,w}function Af(e,t){const n=wf(e,t);Nf(e,n),t.hoistStatic&&yf(e,n),t.ssr||function(e,t){const{helper:n}=t,{children:r}=e;if(1===r.length){const n=r[0];if(bf(e,n)&&n.codegenNode){const r=n.codegenNode;13===r.type&&tu(r,t),e.codegenNode=r}else e.codegenNode=n}else if(r.length>1){let r=64;z[64];0,e.codegenNode=qa(t,n(ra),void 0,e.children,r+"",void 0,void 0,!0,void 0,!1)}}(e,n),e.helpers=new Set([...n.helpers.keys()]),e.components=[...n.components],e.directives=[...n.directives],e.imports=n.imports,e.hoists=n.hoists,e.temps=n.temps,e.cached=n.cached,e.transformed=!0,e.filters=[...n.filters]}function Nf(e,t){t.currentNode=e;const{nodeTransforms:n}=t,r=[];for(let o=0;o{n--};for(;nt===e:t=>e.test(t);return(e,r)=>{if(1===e.type){const{props:o}=e;if(3===e.tagType&&o.some(wu))return;const s=[];for(let i=0;i`${Ha[e]}: _${Ha[e]}`;function Mf(e,t={}){const n=function(e,{mode:t="function",prefixIdentifiers:n="module"===t,sourceMap:r=!1,filename:o="template.vue.html",scopeId:s=null,optimizeImports:i=!1,runtimeGlobalName:c="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:a="vue/server-renderer",ssr:u=!1,isTS:f=!1,inSSR:d=!1}){const p={mode:t,prefixIdentifiers:n,sourceMap:r,filename:o,scopeId:s,optimizeImports:i,runtimeGlobalName:c,runtimeModuleName:l,ssrRuntimeModuleName:a,ssr:u,isTS:f,inSSR:d,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper(e){return`_${Ha[e]}`},push(e,t=-2,n){p.code+=e},indent(){h(++p.indentLevel)},deindent(e=!1){e?--p.indentLevel:h(--p.indentLevel)},newline(){h(p.indentLevel)}};function h(e){p.push("\n"+" ".repeat(e),0)}return p}(e,t);t.onContextCreated&&t.onContextCreated(n);const{mode:r,push:o,prefixIdentifiers:s,indent:i,deindent:c,newline:l,scopeId:a,ssr:u}=n,f=Array.from(e.helpers),d=f.length>0,p=!s&&"module"!==r;!function(e,t){const{ssr:n,prefixIdentifiers:r,push:o,newline:s,runtimeModuleName:i,runtimeGlobalName:c,ssrRuntimeModuleName:l}=t,a=c,u=Array.from(e.helpers);if(u.length>0&&(o(`const _Vue = ${a}\n`,-1),e.hoists.length)){o(`const { ${[fa,da,pa,ha,ma].filter((e=>u.includes(e))).map(Of).join(", ")} } = _Vue\n`,-1)}(function(e,t){if(!e.length)return;t.pure=!0;const{push:n,newline:r,helper:o,scopeId:s,mode:i}=t;r();for(let o=0;o0)&&l()),e.directives.length&&(Lf(e.directives,"directive",n),e.temps>0&&l()),e.filters&&e.filters.length&&(l(),Lf(e.filters,"filter",n),l()),e.temps>0){o("let ");for(let t=0;t0?", ":""}_temp${t}`)}return(e.components.length||e.directives.length||e.temps)&&(o("\n",0),l()),u||o("return "),e.codegenNode?Df(e.codegenNode,n):o("null"),p&&(c(),o("}")),c(),o("}"),{ast:e,code:n.code,preamble:"",map:n.map?n.map.toJSON():void 0}}function Lf(e,t,{helper:n,push:r,newline:o,isTS:s}){const i=n("filter"===t?ba:"component"===t?ga:ya);for(let n=0;n3||!1;t.push("["),n&&t.indent(),$f(e,t,n),n&&t.deindent(),t.push("]")}function $f(e,t,n=!1,r=!0){const{push:o,newline:s}=t;for(let i=0;ie||"null"))}([s,i,c,l,a]),t),n(")"),f&&n(")");u&&(n(", "),Df(u,t),n(")"))}(e,t);break;case 14:!function(e,t){const{push:n,helper:r,pure:o}=t,s=_(e.callee)?e.callee:r(e.callee);o&&n(Rf);n(s+"(",-2,e),$f(e.arguments,t),n(")")}(e,t);break;case 15:!function(e,t){const{push:n,indent:r,deindent:o,newline:s}=t,{properties:i}=e;if(!i.length)return void n("{}",-2,e);const c=i.length>1||!1;n(c?"{":"{ "),c&&r();for(let e=0;e "),(l||c)&&(n("{"),r());i?(l&&n("return "),m(i)?Pf(i,t):Df(i,t)):c&&Df(c,t);(l||c)&&(o(),n("}"));a&&(e.isNonScopedSlot&&n(", undefined, true"),n(")"))}(e,t);break;case 19:!function(e,t){const{test:n,consequent:r,alternate:o,newline:s}=e,{push:i,indent:c,deindent:l,newline:a}=t;if(4===n.type){const e=!yu(n.content);e&&i("("),Ff(n,t),e&&i(")")}else i("("),Df(n,t),i(")");s&&c(),t.indentLevel++,s||i(" "),i("? "),Df(r,t),t.indentLevel--,s&&a(),s||i(" "),i(": ");const u=19===o.type;u||t.indentLevel++;Df(o,t),u||t.indentLevel--;s&&l(!0)}(e,t);break;case 20:!function(e,t){const{push:n,helper:r,indent:o,deindent:s,newline:i}=t;n(`_cache[${e.index}] || (`),e.isVNode&&(o(),n(`${r(La)}(-1),`),i());n(`_cache[${e.index}] = `),Df(e.value,t),e.isVNode&&(n(","),i(),n(`${r(La)}(1),`),i(),n(`_cache[${e.index}]`),s());n(")")}(e,t);break;case 21:$f(e.body,t,!0,!1)}}function Ff(e,t){const{content:n,isStatic:r}=e;t.push(r?JSON.stringify(n):n,-3,e)}function Vf(e,t){for(let n=0;nfunction(e,t,n,r){if(!("else"===t.name||t.exp&&t.exp.content.trim())){const r=t.exp?t.exp.loc:e.loc;n.onError(hu(28,t.loc)),t.exp=Ya("true",!1,r)}0;if("if"===t.name){const o=Hf(e,t),s={type:9,loc:e.loc,branches:[o]};if(n.replaceNode(s),r)return r(s,o,!0)}else{const o=n.parent.children;let s=o.indexOf(e);for(;s-- >=-1;){const i=o[s];if(i&&3===i.type)n.removeNode(i);else{if(!i||2!==i.type||i.content.trim().length){if(i&&9===i.type){"else-if"===t.name&&void 0===i.branches[i.branches.length-1].condition&&n.onError(hu(30,e.loc)),n.removeNode();const o=Hf(e,t);0,i.branches.push(o);const s=r&&r(i,o,!1);Nf(o,n),s&&s(),n.currentNode=null}else n.onError(hu(30,e.loc));break}n.removeNode(i)}}}}(e,t,n,((e,t,r)=>{const o=n.parent.children;let s=o.indexOf(e),i=0;for(;s-- >=0;){const e=o[s];e&&9===e.type&&(i+=e.branches.length)}return()=>{if(r)e.codegenNode=jf(t,i,n);else{const r=function(e){for(;;)if(19===e.type){if(19!==e.alternate.type)return e;e=e.alternate}else 20===e.type&&(e=e.value)}(e.codegenNode);r.alternate=jf(t,i+e.branches.length-1,n)}}}))));function Hf(e,t){const n=3===e.tagType;return{type:10,loc:e.loc,condition:"else"===t.name?void 0:t.exp,children:n&&!Cu(e,"for")?e.children:[e],userKey:Tu(e,"key"),isTemplateIf:n}}function jf(e,t,n){return e.condition?Qa(e.condition,qf(e,t,n),Ja(n.helper(pa),['""',"true"])):qf(e,t,n)}function qf(e,t,n){const{helper:r}=n,o=Ka("key",Ya(`${t}`,!1,ja,2)),{children:s}=e,i=s[0];if(1!==s.length||1!==i.type){if(1===s.length&&11===i.type){const e=i.codegenNode;return Ou(e,o,n),e}{let t=64;z[64];return qa(n,r(ra),Wa([o]),s,t+"",void 0,void 0,!0,!1,!1,e.loc)}}{const e=i.codegenNode,t=14===(c=e).type&&c.callee===Ba?c.arguments[1].returns:c;return 13===t.type&&tu(t,n),Ou(t,o,n),e}var c}const zf=(e,t,n)=>{const{modifiers:r,loc:o}=e,s=e.arg;let{exp:i}=e;if(i&&4===i.type&&!i.content.trim()&&(i=void 0),!i){if(4!==s.type||!s.isStatic)return n.onError(hu(52,s.loc)),{props:[Ka(s,Ya("",!0,o))]};Wf(e),i=e.exp}return 4!==s.type?(s.children.unshift("("),s.children.push(') || ""')):s.isStatic||(s.content=`${s.content} || ""`),r.includes("camel")&&(4===s.type?s.isStatic?s.content=M(s.content):s.content=`${n.helperString(Ra)}(${s.content})`:(s.children.unshift(`${n.helperString(Ra)}(`),s.children.push(")"))),n.inSSR||(r.includes("prop")&&Kf(s,"."),r.includes("attr")&&Kf(s,"^")),{props:[Ka(s,i)]}},Wf=(e,t)=>{const n=e.arg,r=M(n.content);e.exp=Ya(r,!1,n.loc)},Kf=(e,t)=>{4===e.type?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},Yf=If("for",((e,t,n)=>{const{helper:r,removeHelper:o}=n;return function(e,t,n,r){if(!t.exp)return void n.onError(hu(31,t.loc));const o=t.forParseResult;if(!o)return void n.onError(hu(32,t.loc));Gf(o,n);const{addIdentifiers:s,removeIdentifiers:i,scopes:c}=n,{source:l,value:a,key:u,index:f}=o,d={type:11,loc:t.loc,source:l,valueAlias:a,keyAlias:u,objectIndexAlias:f,parseResult:o,children:Au(e)?e.children:[e]};n.replaceNode(d),c.vFor++;const p=r&&r(d);return()=>{c.vFor--,p&&p()}}(e,t,n,(t=>{const s=Ja(r(Sa),[t.source]),i=Au(e),c=Cu(e,"memo"),l=Tu(e,"key",!1,!0);l&&7===l.type&&!l.exp&&Wf(l);const a=l&&(6===l.type?l.value?Ya(l.value.content,!0):void 0:l.exp),u=l&&a?Ka("key",a):null,f=4===t.source.type&&t.source.constType>0,d=f?64:l?128:256;return t.codegenNode=qa(n,r(ra),void 0,s,d+"",void 0,void 0,!0,!f,!1,e.loc),()=>{let l;const{children:d}=t;const p=1!==d.length||1!==d[0].type,h=Nu(e)?e:i&&1===e.children.length&&Nu(e.children[0])?e.children[0]:null;if(h?(l=h.codegenNode,i&&u&&Ou(l,u,n)):p?l=qa(n,r(ra),u?Wa([u]):void 0,e.children,"64",void 0,void 0,!0,void 0,!1):(l=d[0].codegenNode,i&&u&&Ou(l,u,n),l.isBlock!==!f&&(l.isBlock?(o(la),o(eu(n.inSSR,l.isComponent))):o(Za(n.inSSR,l.isComponent))),l.isBlock=!f,l.isBlock?(r(la),r(eu(n.inSSR,l.isComponent))):r(Za(n.inSSR,l.isComponent))),c){const e=Xa(Jf(t.parseResult,[Ya("_cached")]));e.body={type:21,body:[Ga(["const _memo = (",c.exp,")"]),Ga(["if (_cached",...a?[" && _cached.key === ",a]:[],` && ${n.helperString(Ua)}(_cached, _memo)) return _cached`]),Ga(["const _item = ",l]),Ya("_item.memo = _memo"),Ya("return _item")],loc:ja},s.arguments.push(e,Ya("_cache"),Ya(String(n.cached++)))}else s.arguments.push(Xa(Jf(t.parseResult),l,!0))}}))}));function Gf(e,t){e.finalized||(e.finalized=!0)}function Jf({value:e,key:t,index:n},r=[]){return function(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map(((e,t)=>e||Ya("_".repeat(t+1),!1)))}([e,t,n,...r])}const Xf=Ya("undefined",!1),Qf=(e,t)=>{if(1===e.type&&(1===e.tagType||3===e.tagType)){const n=Cu(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},Zf=(e,t,n,r)=>Xa(e,n,!1,!0,n.length?n[0].loc:r);function ed(e,t,n=Zf){t.helper(Da);const{children:r,loc:o}=e,s=[],i=[];let c=t.scopes.vSlot>0||t.scopes.vFor>0;const l=Cu(e,"slot",!0);if(l){const{arg:e,exp:t}=l;e&&!mu(e)&&(c=!0),s.push(Ka(e||Ya("default",!0),n(t,void 0,r,o)))}let a=!1,u=!1;const f=[],d=new Set;let p=0;for(let e=0;e{const s=n(e,void 0,r,o);return t.compatConfig&&(s.isNonScopedSlot=!0),Ka("default",s)};a?f.length&&f.some((e=>rd(e)))&&(u?t.onError(hu(39,f[0].loc)):s.push(e(void 0,f))):s.push(e(void 0,r))}const h=c?2:nd(e.children)?3:1;let m=Wa(s.concat(Ka("_",Ya(h+"",!1))),o);return i.length&&(m=Ja(t.helper(Ca),[m,za(i)])),{slots:m,hasDynamicSlots:c}}function td(e,t,n){const r=[Ka("name",e),Ka("fn",t)];return null!=n&&r.push(Ka("key",Ya(String(n),!0))),Wa(r)}function nd(e){for(let t=0;tfunction(){if(1!==(e=t.currentNode).type||0!==e.tagType&&1!==e.tagType)return;const{tag:n,props:r}=e,o=1===e.tagType;let s=o?function(e,t,n=!1){let{tag:r}=e;const o=ad(r),s=Tu(e,"is",!1,!0);if(s)if(o||uu("COMPILER_IS_ON_ELEMENT",t)){let e;if(6===s.type?e=s.value&&Ya(s.value.content,!0):(e=s.exp,e||(e=Ya("is",!1,s.loc))),e)return Ja(t.helper(va),[e])}else 6===s.type&&s.value.content.startsWith("vue:")&&(r=s.value.content.slice(4));const i=gu(r)||t.isBuiltInComponent(r);if(i)return n||t.helper(i),i;return t.helper(ga),t.components.add(r),Lu(r,"component")}(e,t):`"${n}"`;const i=x(s)&&s.callee===va;let c,l,a,u,f,d,p=0,h=i||s===oa||s===sa||!o&&("svg"===n||"foreignObject"===n||"math"===n);if(r.length>0){const n=id(e,t,void 0,o,i);c=n.props,p=n.patchFlag,f=n.dynamicPropNames;const r=n.directives;d=r&&r.length?za(r.map((e=>function(e,t){const n=[],r=od.get(e);r?n.push(t.helperString(r)):(t.helper(ya),t.directives.add(e.name),n.push(Lu(e.name,"directive")));const{loc:o}=e;e.exp&&n.push(e.exp);e.arg&&(e.exp||n.push("void 0"),n.push(e.arg));if(Object.keys(e.modifiers).length){e.arg||(e.exp||n.push("void 0"),n.push("void 0"));const t=Ya("true",!1,o);n.push(Wa(e.modifiers.map((e=>Ka(e,t))),o))}return za(n,e.loc)}(e,t)))):void 0,n.shouldUseBlock&&(h=!0)}if(e.children.length>0){s===ia&&(h=!0,p|=1024);if(o&&s!==oa&&s!==ia){const{slots:n,hasDynamicSlots:r}=ed(e,t);l=n,r&&(p|=1024)}else if(1===e.children.length&&s!==oa){const n=e.children[0],r=n.type,o=5===r||8===r;o&&0===Sf(n,t)&&(p|=1),l=o||2===r?n:e.children}else l=e.children}0!==p&&(a=String(p),f&&f.length&&(u=function(e){let t="[";for(let n=0,r=e.length;n0;let h=!1,m=0,g=!1,v=!1,y=!1,b=!1,_=!1,x=!1;const C=[],T=e=>{u.length&&(f.push(Wa(cd(u),c)),u=[]),e&&f.push(e)},k=()=>{t.scopes.vFor>0&&u.push(Ka(Ya("ref_for",!0),Ya("true")))},E=({key:e,value:n})=>{if(mu(e)){const s=e.content,i=a(s);if(!i||r&&!o||"onclick"===s.toLowerCase()||"onUpdate:modelValue"===s||N(s)||(b=!0),i&&N(s)&&(x=!0),i&&14===n.type&&(n=n.arguments[0]),20===n.type||(4===n.type||8===n.type)&&Sf(n,t)>0)return;"ref"===s?g=!0:"class"===s?v=!0:"style"===s?y=!0:"key"===s||C.includes(s)||C.push(s),!r||"class"!==s&&"style"!==s||C.includes(s)||C.push(s)}else _=!0};for(let o=0;o1?Ja(t.helper(ka),f,c):f[0]):u.length&&(w=Wa(cd(u),c)),_?m|=16:(v&&!r&&(m|=2),y&&!r&&(m|=4),C.length&&(m|=8),b&&(m|=32)),h||0!==m&&32!==m||!(g||x||d.length>0)||(m|=512),!t.inSSR&&w)switch(w.type){case 15:let e=-1,n=-1,r=!1;for(let t=0;t{if(Nu(e)){const{children:n,loc:r}=e,{slotName:o,slotProps:s}=function(e,t){let n,r='"default"';const o=[];for(let t=0;t0){const{props:r,directives:s}=id(e,t,o,!1,!1);n=r,s.length&&t.onError(hu(36,s[0].loc))}return{slotName:r,slotProps:n}}(e,t),i=[t.prefixIdentifiers?"_ctx.$slots":"$slots",o,"{}","undefined","true"];let c=2;s&&(i[2]=s,c=3),n.length&&(i[3]=Xa([],n,!1,!1,r),c=4),t.scopeId&&!t.slotted&&(c=5),i.splice(c),e.codegenNode=Ja(t.helper(xa),i,r)}};const fd=/^\s*(async\s*)?(\([^)]*?\)|[\w$_]+)\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,dd=(e,t,n,r)=>{const{loc:o,modifiers:s,arg:i}=e;let c;if(e.exp||s.length||n.onError(hu(35,o)),4===i.type)if(i.isStatic){let e=i.content;0,e.startsWith("vue:")&&(e=`vnode-${e.slice(4)}`);c=Ya(0!==t.tagType||e.startsWith("vnode")||!/[A-Z]/.test(e)?D(M(e)):`on:${e}`,!0,i.loc)}else c=Ga([`${n.helperString(Ma)}(`,i,")"]);else c=i,c.children.unshift(`${n.helperString(Ma)}(`),c.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let a=n.cacheHandlers&&!l&&!n.inVOnce;if(l){const e=xu(l.content),t=!(e||fd.test(l.content)),n=l.content.includes(";");0,(t||a&&e)&&(l=Ga([`${t?"$event":"(...args)"} => ${n?"{":"("}`,l,n?"}":")"]))}let u={props:[Ka(c,l||Ya("() => {}",!1,o))]};return r&&(u=r(u)),a&&(u.props[0].value=n.cache(u.props[0].value)),u.props.forEach((e=>e.key.isHandlerKey=!0)),u},pd=(e,t)=>{if(0===e.type||1===e.type||11===e.type||10===e.type)return()=>{const n=e.children;let r,o=!1;for(let e=0;e7===e.type&&!t.directiveTransforms[e.name]))||"template"===e.tag)))for(let e=0;e{if(1===e.type&&Cu(e,"once",!0)){if(hd.has(e)||t.inVOnce||t.inSSR)return;return hd.add(e),t.inVOnce=!0,t.helper(La),()=>{t.inVOnce=!1;const e=t.currentNode;e.codegenNode&&(e.codegenNode=t.cache(e.codegenNode,!0))}}},gd=(e,t,n)=>{const{exp:r,arg:o}=e;if(!r)return n.onError(hu(41,e.loc)),vd();const s=r.loc.source,i=4===r.type?r.content:s,c=n.bindingMetadata[s];if("props"===c||"props-aliased"===c)return n.onError(hu(44,r.loc)),vd();if(!i.trim()||!xu(i))return n.onError(hu(42,r.loc)),vd();const l=o||Ya("modelValue",!0),a=o?mu(o)?`onUpdate:${M(o.content)}`:Ga(['"onUpdate:" + ',o]):"onUpdate:modelValue";let u;u=Ga([`${n.isTS?"($event: any)":"$event"} => ((`,r,") = $event)"]);const f=[Ka(l,e.exp),Ka(a,u)];if(e.modifiers.length&&1===t.tagType){const t=e.modifiers.map((e=>(yu(e)?e:JSON.stringify(e))+": true")).join(", "),n=o?mu(o)?`${o.content}Modifiers`:Ga([o,' + "Modifiers"']):"modelModifiers";f.push(Ka(n,Ya(`{ ${t} }`,!1,e.loc,2)))}return vd(f)};function vd(e=[]){return{props:e}}const yd=/[\w).+\-_$\]]/,bd=(e,t)=>{uu("COMPILER_FILTERS",t)&&(5===e.type?_d(e.content,t):1===e.type&&e.props.forEach((e=>{7===e.type&&"for"!==e.name&&e.exp&&_d(e.exp,t)})))};function _d(e,t){if(4===e.type)Sd(e,t);else for(let n=0;n=0&&(e=n.charAt(t)," "===e);t--);e&&yd.test(e)||(u=!0)}}else void 0===i?(h=s+1,i=n.slice(0,s).trim()):g();function g(){m.push(n.slice(h,s).trim()),h=s+1}if(void 0===i?i=n.slice(0,s).trim():0!==h&&g(),m.length){for(s=0;s{if(1===e.type){const n=Cu(e,"memo");if(!n||Cd.has(e))return;return Cd.add(e),()=>{const r=e.codegenNode||t.currentNode.codegenNode;r&&13===r.type&&(1!==e.tagType&&tu(r,t),e.codegenNode=Ja(t.helper(Ba),[n.exp,Xa(void 0,r),"_cache",String(t.cached++)]))}}};function kd(e,t={}){const n=t.onError||du,r="module"===t.mode;!0===t.prefixIdentifiers?n(hu(47)):r&&n(hu(48));t.cacheHandlers&&n(hu(49)),t.scopeId&&!r&&n(hu(50));const o=f({},t,{prefixIdentifiers:!1}),s=_(e)?vf(e,o):e,[i,c]=[[md,Uf,Td,Yf,bd,ud,sd,Qf,pd],{on:dd,bind:zf,model:gd}];return Af(s,f({},o,{nodeTransforms:[...i,...t.nodeTransforms||[]],directiveTransforms:f({},c,t.directiveTransforms||{})})),Mf(s,o)}const Ed=Symbol(""),wd=Symbol(""),Ad=Symbol(""),Nd=Symbol(""),Id=Symbol(""),Rd=Symbol(""),Od=Symbol(""),Md=Symbol(""),Ld=Symbol(""),Pd=Symbol("");var $d;let Dd;$d={[Ed]:"vModelRadio",[wd]:"vModelCheckbox",[Ad]:"vModelText",[Nd]:"vModelSelect",[Id]:"vModelDynamic",[Rd]:"withModifiers",[Od]:"withKeys",[Md]:"vShow",[Ld]:"Transition",[Pd]:"TransitionGroup"},Object.getOwnPropertySymbols($d).forEach((e=>{Ha[e]=$d[e]}));const Fd={parseMode:"html",isVoidTag:re,isNativeTag:e=>ee(e)||te(e)||ne(e),isPreTag:e=>"pre"===e,decodeEntities:function(e,t=!1){return Dd||(Dd=document.createElement("div")),t?(Dd.innerHTML=`
`,Dd.children[0].getAttribute("foo")):(Dd.innerHTML=e,Dd.textContent)},isBuiltInComponent:e=>"Transition"===e||"transition"===e?Ld:"TransitionGroup"===e||"transition-group"===e?Pd:void 0,getNamespace(e,t,n){let r=t?t.ns:n;if(t&&2===r)if("annotation-xml"===t.tag){if("svg"===e)return 1;t.props.some((e=>6===e.type&&"encoding"===e.name&&null!=e.value&&("text/html"===e.value.content||"application/xhtml+xml"===e.value.content)))&&(r=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&"mglyph"!==e&&"malignmark"!==e&&(r=0);else t&&1===r&&("foreignObject"!==t.tag&&"desc"!==t.tag&&"title"!==t.tag||(r=0));if(0===r){if("svg"===e)return 1;if("math"===e)return 2}return r}},Vd=(e,t)=>{const n=X(e);return Ya(JSON.stringify(n),!1,t,3)};function Bd(e,t){return hu(e,t)}const Ud=o("passive,once,capture"),Hd=o("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),jd=o("left,right"),qd=o("onkeyup,onkeydown,onkeypress",!0),zd=(e,t)=>mu(e)&&"onclick"===e.content.toLowerCase()?Ya(t,!0):4!==e.type?Ga(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e;const Wd=(e,t)=>{1!==e.type||0!==e.tagType||"script"!==e.tag&&"style"!==e.tag||t.removeNode()},Kd=[e=>{1===e.type&&e.props.forEach(((t,n)=>{6===t.type&&"style"===t.name&&t.value&&(e.props[n]={type:7,name:"bind",arg:Ya("style",!0,t.loc),exp:Vd(t.value.content,t.loc),modifiers:[],loc:t.loc})}))}],Yd={cloak:()=>({props:[]}),html:(e,t,n)=>{const{exp:r,loc:o}=e;return r||n.onError(Bd(53,o)),t.children.length&&(n.onError(Bd(54,o)),t.children.length=0),{props:[Ka(Ya("innerHTML",!0,o),r||Ya("",!0))]}},text:(e,t,n)=>{const{exp:r,loc:o}=e;return r||n.onError(Bd(55,o)),t.children.length&&(n.onError(Bd(56,o)),t.children.length=0),{props:[Ka(Ya("textContent",!0),r?Sf(r,n)>0?r:Ja(n.helperString(Ta),[r],o):Ya("",!0))]}},model:(e,t,n)=>{const r=gd(e,t,n);if(!r.props.length||1===t.tagType)return r;e.arg&&n.onError(Bd(58,e.arg.loc));const{tag:o}=t,s=n.isCustomElement(o);if("input"===o||"textarea"===o||"select"===o||s){let i=Ad,c=!1;if("input"===o||s){const r=Tu(t,"type");if(r){if(7===r.type)i=Id;else if(r.value)switch(r.value.content){case"radio":i=Ed;break;case"checkbox":i=wd;break;case"file":c=!0,n.onError(Bd(59,e.loc))}}else(function(e){return e.props.some((e=>!(7!==e.type||"bind"!==e.name||e.arg&&4===e.arg.type&&e.arg.isStatic)))})(t)&&(i=Id)}else"select"===o&&(i=Nd);c||(r.needRuntime=n.helper(i))}else n.onError(Bd(57,e.loc));return r.props=r.props.filter((e=>!(4===e.key.type&&"modelValue"===e.key.content))),r},on:(e,t,n)=>dd(e,t,n,(t=>{const{modifiers:r}=e;if(!r.length)return t;let{key:o,value:s}=t.props[0];const{keyModifiers:i,nonKeyModifiers:c,eventOptionModifiers:l}=((e,t,n)=>{const r=[],o=[],s=[];for(let i=0;i{const{exp:r,loc:o}=e;return r||n.onError(Bd(61,o)),{props:[],needRuntime:n.helper(Md)}}};const Gd=new WeakMap;function Jd(e,t){if(!_(e)){if(!e.nodeType)return c;e=e.innerHTML}const n=e,o=function(e){let t=Gd.get(null!=e?e:s);return t||(t=Object.create(null),Gd.set(null!=e?e:s,t)),t}(t),i=o[n];if(i)return i;if("#"===e[0]){const t=document.querySelector(e);0,e=t?t.innerHTML:""}const l=f({hoistStatic:!0,onError:void 0,onWarn:c},t);l.isCustomElement||"undefined"==typeof customElements||(l.isCustomElement=e=>!!customElements.get(e));const{code:a}=function(e,t={}){return kd(e,f({},Fd,t,{nodeTransforms:[Wd,...Kd,...t.nodeTransforms||[]],directiveTransforms:f({},Yd,t.directiveTransforms||{}),transformHoist:null}))}(e,l);const u=new Function("Vue",a)(r);return u._rc=!0,o[n]=u}Ki(Jd)}}]); \ No newline at end of file diff --git a/modules/backend/assets/ui/js/index.js b/modules/backend/assets/ui/js/index.js index cf4f3cad81..effffa0026 100644 --- a/modules/backend/assets/ui/js/index.js +++ b/modules/backend/assets/ui/js/index.js @@ -1,6 +1,7 @@ import * as Vue from 'vue'; import BackendAjaxHandler from './ajax/Handler'; import BackendUiEventHandler from './ui/EventHandler'; +import BackendInputTriggerHandler from './input/TriggerHandler'; import BackendUiWidgetHandler from './ui/WidgetHandler'; if (window.Snowboard === undefined) { @@ -10,6 +11,7 @@ if (window.Snowboard === undefined) { ((Snowboard) => { Snowboard.addPlugin('backend.ajax.handler', BackendAjaxHandler); Snowboard.addPlugin('backend.ui.eventHandler', BackendUiEventHandler); + Snowboard.addPlugin('backend.input.triggerHandler', BackendInputTriggerHandler); Snowboard.addPlugin('backend.ui.widgetHandler', BackendUiWidgetHandler); // Add the pre-filter immediately diff --git a/modules/backend/formwidgets/codeeditor/assets/js/build-min.js b/modules/backend/formwidgets/codeeditor/assets/js/build-min.js index e1dd79a93e..4a6c376976 100644 --- a/modules/backend/formwidgets/codeeditor/assets/js/build-min.js +++ b/modules/backend/formwidgets/codeeditor/assets/js/build-min.js @@ -1290,9 +1290,9 @@ getData=function(row){return popup.data[row];};popup.getRow=function(){return se z-index: 2;\ }\ .ace_editor.ace_autocomplete .ace_scroller {\ - background: none;\ - border: none;\ - box-shadow: none;\ + background: none;\ + border: none;\ + box-shadow: none;\ }\ .ace_rightAlignedText {\ color: gray;\ diff --git a/modules/backend/formwidgets/colorpicker/assets/js/dist/colorpicker.js b/modules/backend/formwidgets/colorpicker/assets/js/dist/colorpicker.js index efe4981035..775398bfd8 100644 --- a/modules/backend/formwidgets/colorpicker/assets/js/dist/colorpicker.js +++ b/modules/backend/formwidgets/colorpicker/assets/js/dist/colorpicker.js @@ -1 +1 @@ -(self.webpackChunk_wintercms_wn_backend_module=self.webpackChunk_wintercms_wn_backend_module||[]).push([[692],{716:function(t){var e;self,e=()=>(()=>{"use strict";var t={d:(e,o)=>{for(var r in o)t.o(o,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:o[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.d(e,{default:()=>S});var o={};function r(t,e,o,r,i={}){e instanceof HTMLCollection||e instanceof NodeList?e=Array.from(e):Array.isArray(e)||(e=[e]),Array.isArray(o)||(o=[o]);for(const n of e)for(const e of o)n[t](e,r,{capture:!1,...i});return Array.prototype.slice.call(arguments,1)}t.r(o),t.d(o,{adjustableInputNumbers:()=>p,createElementFromString:()=>s,createFromTemplate:()=>a,eventPath:()=>c,off:()=>n,on:()=>i,resolveElement:()=>l});const i=r.bind(null,"addEventListener"),n=r.bind(null,"removeEventListener");function s(t){const e=document.createElement("div");return e.innerHTML=t.trim(),e.firstElementChild}function a(t){const e=(t,e)=>{const o=t.getAttribute(e);return t.removeAttribute(e),o},o=(t,r={})=>{const i=e(t,":obj"),n=e(t,":ref"),s=i?r[i]={}:r;n&&(r[n]=t);for(const r of Array.from(t.children)){const t=e(r,":arr"),i=o(r,t?{}:s);t&&(s[t]||(s[t]=[])).push(Object.keys(i).length?i:r)}return r};return o(s(t))}function c(t){let e=t.path||t.composedPath&&t.composedPath();if(e)return e;let o=t.target.parentElement;for(e=[t.target,o];o=o.parentElement;)e.push(o);return e.push(document,window),e}function l(t){return t instanceof Element?t:"string"==typeof t?t.split(/>>/g).reduce(((t,e,o,r)=>(t=t.querySelector(e),ot)){function o(o){const r=[.001,.01,.1][Number(o.shiftKey||2*o.ctrlKey)]*(o.deltaY<0?1:-1);let i=0,n=t.selectionStart;t.value=t.value.replace(/[\d.]+/g,((t,o)=>o<=n&&o+t.length>=n?(n=o,e(Number(t),r,i)):(i++,t))),t.focus(),t.setSelectionRange(n,n),o.preventDefault(),t.dispatchEvent(new Event("input"))}i(t,"focus",(()=>i(window,"wheel",o,{passive:!1}))),i(t,"blur",(()=>n(window,"wheel",o)))}const{min:h,max:d,floor:u,round:g}=Math;function f(t,e,o){e/=100,o/=100;const r=u(t=t/360*6),i=t-r,n=o*(1-e),s=o*(1-i*e),a=o*(1-(1-i)*e),c=r%6;return[255*[o,s,n,n,a,o][c],255*[a,o,o,s,n,n][c],255*[n,n,a,o,o,s][c]]}function m(t,e,o){const r=(2-(e/=100))*(o/=100)/2;return 0!==r&&(e=1===r?0:r<.5?e*o/(2*r):e*o/(2-2*r)),[t,100*e,100*r]}function v(t,e,o){const r=h(t/=255,e/=255,o/=255),i=d(t,e,o),n=i-r;let s,a;if(0===n)s=a=0;else{a=n/i;const r=((i-t)/6+n/2)/n,c=((i-e)/6+n/2)/n,l=((i-o)/6+n/2)/n;t===i?s=l-c:e===i?s=1/3+r-l:o===i&&(s=2/3+c-r),s<0?s+=1:s>1&&(s-=1)}return[360*s,100*a,100*i]}function b(t,e,o,r){return e/=100,o/=100,[...v(255*(1-h(1,(t/=100)*(1-(r/=100))+r)),255*(1-h(1,e*(1-r)+r)),255*(1-h(1,o*(1-r)+r)))]}function k(t,e,o){e/=100;const r=2*(e*=(o/=100)<.5?o:1-o)/(o+e)*100,i=100*(o+e);return[t,isNaN(r)?0:r,i]}function w(t){return v(...t.match(/.{2}/g).map((t=>parseInt(t,16))))}function y(t=0,e=0,o=0,r=1){const i=(t,e)=>(o=-1)=>e(~o?t.map((t=>Number(t.toFixed(o)))):t),n={h:t,s:e,v:o,a:r,toHSVA(){const t=[n.h,n.s,n.v,n.a];return t.toString=i(t,(t=>`hsva(${t[0]}, ${t[1]}%, ${t[2]}%, ${n.a})`)),t},toHSLA(){const t=[...m(n.h,n.s,n.v),n.a];return t.toString=i(t,(t=>`hsla(${t[0]}, ${t[1]}%, ${t[2]}%, ${n.a})`)),t},toRGBA(){const t=[...f(n.h,n.s,n.v),n.a];return t.toString=i(t,(t=>`rgba(${t[0]}, ${t[1]}, ${t[2]}, ${n.a})`)),t},toCMYK(){const t=function(t,e,o){const r=f(t,e,o),i=r[0]/255,n=r[1]/255,s=r[2]/255,a=h(1-i,1-n,1-s);return[100*(1===a?0:(1-i-a)/(1-a)),100*(1===a?0:(1-n-a)/(1-a)),100*(1===a?0:(1-s-a)/(1-a)),100*a]}(n.h,n.s,n.v);return t.toString=i(t,(t=>`cmyk(${t[0]}%, ${t[1]}%, ${t[2]}%, ${t[3]}%)`)),t},toHEXA(){const t=function(t,e,o){return f(t,e,o).map((t=>g(t).toString(16).padStart(2,"0")))}(n.h,n.s,n.v),e=n.a>=1?"":Number((255*n.a).toFixed(0)).toString(16).toUpperCase().padStart(2,"0");return e&&t.push(e),t.toString=()=>`#${t.join("").toUpperCase()}`,t},clone:()=>y(n.h,n.s,n.v,n.a)};return n}const _=t=>Math.max(Math.min(t,1),0);function C(t){const e={options:Object.assign({lock:null,onchange:()=>0,onstop:()=>0},t),_keyboard(t){const{options:o}=e,{type:r,key:i}=t;if(document.activeElement===o.wrapper){const{lock:o}=e.options,n="ArrowUp"===i,s="ArrowRight"===i,a="ArrowDown"===i,c="ArrowLeft"===i;if("keydown"===r&&(n||s||a||c)){let r=0,i=0;"v"===o?r=n||s?1:-1:"h"===o?r=n||s?-1:1:(i=n?-1:a?1:0,r=c?-1:s?1:0),e.update(_(e.cache.x+.01*r),_(e.cache.y+.01*i)),t.preventDefault()}else i.startsWith("Arrow")&&(e.options.onstop(),t.preventDefault())}},_tapstart(t){i(document,["mouseup","touchend","touchcancel"],e._tapstop),i(document,["mousemove","touchmove"],e._tapmove),t.cancelable&&t.preventDefault(),e._tapmove(t)},_tapmove(t){const{options:o,cache:r}=e,{lock:i,element:n,wrapper:s}=o,a=s.getBoundingClientRect();let c=0,l=0;if(t){const e=t&&t.touches&&t.touches[0];c=t?(e||t).clientX:0,l=t?(e||t).clientY:0,ca.left+a.width&&(c=a.left+a.width),la.top+a.height&&(l=a.top+a.height),c-=a.left,l-=a.top}else r&&(c=r.x*a.width,l=r.y*a.height);"h"!==i&&(n.style.left=`calc(${c/a.width*100}% - ${n.offsetWidth/2}px)`),"v"!==i&&(n.style.top=`calc(${l/a.height*100}% - ${n.offsetHeight/2}px)`),e.cache={x:c/a.width,y:l/a.height};const p=_(c/a.width),h=_(l/a.height);switch(i){case"v":return o.onchange(p);case"h":return o.onchange(h);default:return o.onchange(p,h)}},_tapstop(){e.options.onstop(),n(document,["mouseup","touchend","touchcancel"],e._tapstop),n(document,["mousemove","touchmove"],e._tapmove)},trigger(){e._tapmove()},update(t=0,o=0){const{left:r,top:i,width:n,height:s}=e.options.wrapper.getBoundingClientRect();"h"===e.options.lock&&(o=t),e._tapmove({clientX:r+n*t,clientY:i+s*o})},destroy(){const{options:t,_tapstart:o,_keyboard:r}=e;n(document,["keydown","keyup"],r),n([t.wrapper,t.element],"mousedown",o),n([t.wrapper,t.element],"touchstart",o,{passive:!1})}},{options:o,_tapstart:r,_keyboard:s}=e;return i([o.wrapper,o.element],"mousedown",r),i([o.wrapper,o.element],"touchstart",r,{passive:!1}),i(document,["keydown","keyup"],s),e}function x(t={}){t=Object.assign({onchange:()=>0,className:"",elements:[]},t);const e=i(t.elements,"click",(e=>{t.elements.forEach((o=>o.classList[e.target===o?"add":"remove"](t.className))),t.onchange(e),e.stopPropagation()}));return{destroy:()=>n(...e)}}const A={variantFlipOrder:{start:"sme",middle:"mse",end:"ems"},positionFlipOrder:{top:"tbrl",right:"rltb",bottom:"btrl",left:"lrbt"},position:"bottom",margin:8,padding:0};class S{static utils=o;static version="1.9.0";static I18N_DEFAULTS={"ui:dialog":"color picker dialog","btn:toggle":"toggle color picker dialog","btn:swatch":"color swatch","btn:last-color":"use previous color","btn:save":"Save","btn:cancel":"Cancel","btn:clear":"Clear","aria:btn:save":"save and close","aria:btn:cancel":"cancel and close","aria:btn:clear":"clear and close","aria:input":"color input field","aria:palette":"color selection area","aria:hue":"hue selection slider","aria:opacity":"selection slider"};static DEFAULT_OPTIONS={appClass:null,theme:"classic",useAsButton:!1,padding:8,disabled:!1,comparison:!0,closeOnScroll:!1,outputPrecision:0,lockOpacity:!1,autoReposition:!0,container:"body",components:{interaction:{}},i18n:{},swatches:null,inline:!1,sliders:null,default:"#42445a",defaultRepresentation:null,position:"bottom-middle",adjustableNumbers:!0,showAlways:!1,closeWithKey:"Escape"};_initializingActive=!0;_recalc=!0;_nanopop=null;_root=null;_color=y();_lastColor=y();_swatchColors=[];_setupAnimationFrame=null;_eventListener={init:[],save:[],hide:[],show:[],clear:[],change:[],changestop:[],cancel:[],swatchselect:[]};constructor(t){this.options=t=Object.assign({...S.DEFAULT_OPTIONS},t);const{swatches:e,components:o,theme:r,sliders:i,lockOpacity:n,padding:s}=t;["nano","monolith"].includes(r)&&!i&&(t.sliders="h"),o.interaction||(o.interaction={});const{preview:a,opacity:c,hue:l,palette:p}=o;o.opacity=!n&&c,o.palette=p||a||c||l,this._preBuild(),this._buildComponents(),this._bindEvents(),this._finalBuild(),e&&e.length&&e.forEach((t=>this.addSwatch(t)));const{button:h,app:d}=this._root;this._nanopop=((t,e,o)=>{const r="object"!=typeof t||t instanceof HTMLElement?{reference:t,popper:e,...o}:t;return{update(t=r){const{reference:e,popper:o}=Object.assign(r,t);if(!o||!e)throw new Error("Popper- or reference-element missing.");return((t,e,o)=>{const{container:r,arrow:i,margin:n,padding:s,position:a,variantFlipOrder:c,positionFlipOrder:l}={container:document.documentElement.getBoundingClientRect(),...A,...o},{left:p,top:h}=e.style;e.style.left="0",e.style.top="0";const d=t.getBoundingClientRect(),u=e.getBoundingClientRect(),g={t:d.top-u.height-n,b:d.bottom+n,r:d.right+n,l:d.left-u.width-n},f={vs:d.left,vm:d.left+d.width/2-u.width/2,ve:d.left+d.width-u.width,hs:d.top,hm:d.bottom-d.height/2-u.height/2,he:d.bottom-u.height},[m,v="middle"]=a.split("-"),b=l[m],k=c[v],{top:w,left:y,bottom:_,right:C}=r;for(const t of b){const o="t"===t||"b"===t;let r=g[t];const[n,a]=o?["top","left"]:["left","top"],[c,l]=o?[u.height,u.width]:[u.width,u.height],[p,h]=o?[_,C]:[C,_],[m,v]=o?[w,y]:[y,w];if(!(rp))for(const p of k){let g=f[(o?"v":"h")+p];if(!(gh)){if(g-=u[a],r-=u[n],e.style[a]=`${g}px`,e.style[n]=`${r}px`,i){const t=o?d.width/2:d.height/2,e=2*tnew S(t);_preBuild(){const{options:t}=this;for(const e of["el","container"])t[e]=l(t[e]);this._root=(t=>{const{components:e,useAsButton:o,inline:r,appClass:i,theme:n,lockOpacity:s}=t.options,c=t=>t?"":'style="display:none" hidden',l=e=>t._t(e),p=a(`\n
\n\n ${o?"":''}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n
\n `),h=p.interaction;return h.options.find((t=>!t.hidden&&!t.classList.add("active"))),h.type=()=>h.options.find((t=>t.classList.contains("active"))),p})(this),t.useAsButton&&(this._root.button=t.el),t.container.appendChild(this._root.root)}_finalBuild(){const t=this.options,e=this._root;if(t.container.removeChild(e.root),t.inline){const o=t.el.parentElement;t.el.nextSibling?o.insertBefore(e.app,t.el.nextSibling):o.appendChild(e.app)}else t.container.appendChild(e.app);t.useAsButton?t.inline&&t.el.remove():t.el.parentNode.replaceChild(e.root,t.el),t.disabled&&this.disable(),t.comparison||(e.button.style.transition="none",t.useAsButton||(e.preview.lastColor.style.transition="none")),this.hide()}_buildComponents(){const t=this,e=this.options.components,o=(t.options.sliders||"v").repeat(2),[r,i]=o.match(/^[vh]+$/g)?o:[],n=()=>this._color||(this._color=this._lastColor.clone()),s={palette:C({element:t._root.palette.picker,wrapper:t._root.palette.palette,onstop:()=>t._emit("changestop","slider",t),onchange(o,r){if(!e.palette)return;const i=n(),{_root:s,options:a}=t,{lastColor:c,currentColor:l}=s.preview;t._recalc&&(i.s=100*o,i.v=100-100*r,i.v<0&&(i.v=0),t._updateOutput("slider"));const p=i.toRGBA().toString(0);this.element.style.background=p,this.wrapper.style.background=`\n linear-gradient(to top, rgba(0, 0, 0, ${i.a}), transparent),\n linear-gradient(to left, hsla(${i.h}, 100%, 50%, ${i.a}), rgba(255, 255, 255, ${i.a}))\n `,a.comparison?a.useAsButton||t._lastColor||c.style.setProperty("--pcr-color",p):(s.button.style.setProperty("--pcr-color",p),s.button.classList.remove("clear"));const h=i.toHEXA().toString();for(const{el:e,color:o}of t._swatchColors)e.classList[h===o.toHEXA().toString()?"add":"remove"]("pcr-active");l.style.setProperty("--pcr-color",p)}}),hue:C({lock:"v"===i?"h":"v",element:t._root.hue.picker,wrapper:t._root.hue.slider,onstop:()=>t._emit("changestop","slider",t),onchange(o){if(!e.hue||!e.palette)return;const r=n();t._recalc&&(r.h=360*o),this.element.style.backgroundColor=`hsl(${r.h}, 100%, 50%)`,s.palette.trigger()}}),opacity:C({lock:"v"===r?"h":"v",element:t._root.opacity.picker,wrapper:t._root.opacity.slider,onstop:()=>t._emit("changestop","slider",t),onchange(o){if(!e.opacity||!e.palette)return;const r=n();t._recalc&&(r.a=Math.round(100*o)/100),this.element.style.background=`rgba(0, 0, 0, ${r.a})`,s.palette.trigger()}}),selectable:x({elements:t._root.interaction.options,className:"active",onchange(e){t._representation=e.target.getAttribute("data-type").toUpperCase(),t._recalc&&t._updateOutput("swatch")}})};this._components=s}_bindEvents(){const{_root:t,options:e}=this,o=[i(t.interaction.clear,"click",(()=>this._clearColor())),i([t.interaction.cancel,t.preview.lastColor],"click",(()=>{this.setHSVA(...(this._lastColor||this._color).toHSVA(),!0),this._emit("cancel")})),i(t.interaction.save,"click",(()=>{!this.applyColor()&&!e.showAlways&&this.hide()})),i(t.interaction.result,["keyup","input"],(t=>{this.setColor(t.target.value,!0)&&!this._initializingActive&&(this._emit("change",this._color,"input",this),this._emit("changestop","input",this)),t.stopImmediatePropagation()})),i(t.interaction.result,["focus","blur"],(t=>{this._recalc="blur"===t.type,this._recalc&&this._updateOutput(null)})),i([t.palette.palette,t.palette.picker,t.hue.slider,t.hue.picker,t.opacity.slider,t.opacity.picker],["mousedown","touchstart"],(()=>this._recalc=!0),{passive:!0})];if(!e.showAlways){const r=e.closeWithKey;o.push(i(t.button,"click",(()=>this.isOpen()?this.hide():this.show())),i(document,"keyup",(t=>this.isOpen()&&(t.key===r||t.code===r)&&this.hide())),i(document,["touchstart","mousedown"],(e=>{this.isOpen()&&!c(e).some((e=>e===t.app||e===t.button))&&this.hide()}),{capture:!0}))}if(e.adjustableNumbers){const e={rgba:[255,255,255,1],hsva:[360,100,100,1],hsla:[360,100,100,1],cmyk:[100,100,100,100]};p(t.interaction.result,((t,o,r)=>{const i=e[this.getColorRepresentation().toLowerCase()];if(i){const e=i[r],n=t+(e>=100?1e3*o:o);return n<=0?0:Number((n{r.isOpen()&&(e.closeOnScroll&&r.hide(),null===t?(t=setTimeout((()=>t=null),100),requestAnimationFrame((function e(){r._rePositioningPicker(),null!==t&&requestAnimationFrame(e)}))):(clearTimeout(t),t=setTimeout((()=>t=null),100)))}),{capture:!0}))}this._eventBindings=o}_rePositioningPicker(){const{options:t}=this;if(!t.inline&&!this._nanopop.update({container:document.body.getBoundingClientRect(),position:t.position})){const t=this._root.app,e=t.getBoundingClientRect();t.style.top=(window.innerHeight-e.height)/2+"px",t.style.left=(window.innerWidth-e.width)/2+"px"}}_updateOutput(t){const{_root:e,_color:o,options:r}=this;if(e.interaction.type()){const t=`to${e.interaction.type().getAttribute("data-type")}`;e.interaction.result.value="function"==typeof o[t]?o[t]().toString(r.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",o,t,this)}_clearColor(t=!1){const{_root:e,options:o}=this;o.useAsButton||e.button.style.setProperty("--pcr-color","rgba(0, 0, 0, 0.15)"),e.button.classList.add("clear"),o.showAlways||this.hide(),this._lastColor=null,this._initializingActive||t||(this._emit("save",null),this._emit("clear"))}_parseLocalColor(t){const{values:e,type:o,a:r}=function(t){t=t.match(/^[a-zA-Z]+$/)?function(t){if("black"===t.toLowerCase())return"#000";const e=document.createElement("canvas").getContext("2d");return e.fillStyle=t,"#000"===e.fillStyle?null:e.fillStyle}(t):t;const e={cmyk:/^cmyk\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)/i,rgba:/^rgba?\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D*?(([\d.]+)(%?)|$)/i,hsla:/^hsla?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hsva:/^hsva?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hexa:/^#?(([\dA-Fa-f]{3,4})|([\dA-Fa-f]{6})|([\dA-Fa-f]{8}))$/i},o=t=>t.map((t=>/^(|\d+)\.\d+|\d+$/.test(t)?Number(t):void 0));let r;t:for(const i in e)if(r=e[i].exec(t))switch(i){case"cmyk":{const[,t,e,n,s]=o(r);if(t>100||e>100||n>100||s>100)break t;return{values:b(t,e,n,s),type:i}}case"rgba":{let[,t,,e,,n,,,s]=o(r);if(t="%"===r[2]?t/100*255:t,e="%"===r[4]?e/100*255:e,n="%"===r[6]?n/100*255:n,s="%"===r[9]?s/100:s,t>255||e>255||n>255||s<0||s>1)break t;return{values:[...v(t,e,n),s],a:s,type:i}}case"hexa":{let[,t]=r;4!==t.length&&3!==t.length||(t=t.split("").map((t=>t+t)).join(""));const e=t.substring(0,6);let o=t.substring(6);return o=o?parseInt(o,16)/255:void 0,{values:[...w(e),o],a:o,type:i}}case"hsla":{let[,t,e,n,,s]=o(r);if(s="%"===r[6]?s/100:s,t>360||e>100||n>100||s<0||s>1)break t;return{values:[...k(t,e,n),s],a:s,type:i}}case"hsva":{let[,t,e,n,,s]=o(r);if(s="%"===r[6]?s/100:s,t>360||e>100||n>100||s<0||s>1)break t;return{values:[t,e,n,s],a:s,type:i}}}return{values:null,type:null}}(t),{lockOpacity:i}=this.options,n=void 0!==r&&1!==r;return e&&3===e.length&&(e[3]=void 0),{values:!e||i&&n?null:e,type:o}}_t(t){return this.options.i18n[t]||S.I18N_DEFAULTS[t]}_emit(t,...e){this._eventListener[t].forEach((t=>t(...e,this)))}on(t,e){return this._eventListener[t].push(e),this}off(t,e){const o=this._eventListener[t]||[],r=o.indexOf(e);return~r&&o.splice(r,1),this}addSwatch(t){const{values:e}=this._parseLocalColor(t);if(e){const{_swatchColors:t,_root:o}=this,r=y(...e),n=s(`'}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n
\n `),h=p.interaction;return h.options.find((t=>!t.hidden&&!t.classList.add("active"))),h.type=()=>h.options.find((t=>t.classList.contains("active"))),p})(this),t.useAsButton&&(this._root.button=t.el),t.container.appendChild(this._root.root)}_finalBuild(){const t=this.options,e=this._root;if(t.container.removeChild(e.root),t.inline){const o=t.el.parentElement;t.el.nextSibling?o.insertBefore(e.app,t.el.nextSibling):o.appendChild(e.app)}else t.container.appendChild(e.app);t.useAsButton?t.inline&&t.el.remove():t.el.parentNode.replaceChild(e.root,t.el),t.disabled&&this.disable(),t.comparison||(e.button.style.transition="none",t.useAsButton||(e.preview.lastColor.style.transition="none")),this.hide()}_buildComponents(){const t=this,e=this.options.components,o=(t.options.sliders||"v").repeat(2),[r,i]=o.match(/^[vh]+$/g)?o:[],n=()=>this._color||(this._color=this._lastColor.clone()),s={palette:C({element:t._root.palette.picker,wrapper:t._root.palette.palette,onstop:()=>t._emit("changestop","slider",t),onchange(o,r){if(!e.palette)return;const i=n(),{_root:s,options:a}=t,{lastColor:c,currentColor:l}=s.preview;t._recalc&&(i.s=100*o,i.v=100-100*r,i.v<0&&(i.v=0),t._updateOutput("slider"));const p=i.toRGBA().toString(0);this.element.style.background=p,this.wrapper.style.background=`\n linear-gradient(to top, rgba(0, 0, 0, ${i.a}), transparent),\n linear-gradient(to left, hsla(${i.h}, 100%, 50%, ${i.a}), rgba(255, 255, 255, ${i.a}))\n `,a.comparison?a.useAsButton||t._lastColor||c.style.setProperty("--pcr-color",p):(s.button.style.setProperty("--pcr-color",p),s.button.classList.remove("clear"));const h=i.toHEXA().toString();for(const{el:e,color:o}of t._swatchColors)e.classList[h===o.toHEXA().toString()?"add":"remove"]("pcr-active");l.style.setProperty("--pcr-color",p)}}),hue:C({lock:"v"===i?"h":"v",element:t._root.hue.picker,wrapper:t._root.hue.slider,onstop:()=>t._emit("changestop","slider",t),onchange(o){if(!e.hue||!e.palette)return;const r=n();t._recalc&&(r.h=360*o),this.element.style.backgroundColor=`hsl(${r.h}, 100%, 50%)`,s.palette.trigger()}}),opacity:C({lock:"v"===r?"h":"v",element:t._root.opacity.picker,wrapper:t._root.opacity.slider,onstop:()=>t._emit("changestop","slider",t),onchange(o){if(!e.opacity||!e.palette)return;const r=n();t._recalc&&(r.a=Math.round(100*o)/100),this.element.style.background=`rgba(0, 0, 0, ${r.a})`,s.palette.trigger()}}),selectable:x({elements:t._root.interaction.options,className:"active",onchange(e){t._representation=e.target.getAttribute("data-type").toUpperCase(),t._recalc&&t._updateOutput("swatch")}})};this._components=s}_bindEvents(){const{_root:t,options:e}=this,o=[i(t.interaction.clear,"click",(()=>this._clearColor())),i([t.interaction.cancel,t.preview.lastColor],"click",(()=>{this.setHSVA(...(this._lastColor||this._color).toHSVA(),!0),this._emit("cancel")})),i(t.interaction.save,"click",(()=>{!this.applyColor()&&!e.showAlways&&this.hide()})),i(t.interaction.result,["keyup","input"],(t=>{this.setColor(t.target.value,!0)&&!this._initializingActive&&(this._emit("change",this._color,"input",this),this._emit("changestop","input",this)),t.stopImmediatePropagation()})),i(t.interaction.result,["focus","blur"],(t=>{this._recalc="blur"===t.type,this._recalc&&this._updateOutput(null)})),i([t.palette.palette,t.palette.picker,t.hue.slider,t.hue.picker,t.opacity.slider,t.opacity.picker],["mousedown","touchstart"],(()=>this._recalc=!0),{passive:!0})];if(!e.showAlways){const r=e.closeWithKey;o.push(i(t.button,"click",(()=>this.isOpen()?this.hide():this.show())),i(document,"keyup",(t=>this.isOpen()&&(t.key===r||t.code===r)&&this.hide())),i(document,["touchstart","mousedown"],(e=>{this.isOpen()&&!c(e).some((e=>e===t.app||e===t.button))&&this.hide()}),{capture:!0}))}if(e.adjustableNumbers){const e={rgba:[255,255,255,1],hsva:[360,100,100,1],hsla:[360,100,100,1],cmyk:[100,100,100,100]};p(t.interaction.result,((t,o,r)=>{const i=e[this.getColorRepresentation().toLowerCase()];if(i){const e=i[r],n=t+(e>=100?1e3*o:o);return n<=0?0:Number((n{r.isOpen()&&(e.closeOnScroll&&r.hide(),null===t?(t=setTimeout((()=>t=null),100),requestAnimationFrame((function e(){r._rePositioningPicker(),null!==t&&requestAnimationFrame(e)}))):(clearTimeout(t),t=setTimeout((()=>t=null),100)))}),{capture:!0}))}this._eventBindings=o}_rePositioningPicker(){const{options:t}=this;if(!t.inline&&!this._nanopop.update({container:document.body.getBoundingClientRect(),position:t.position})){const t=this._root.app,e=t.getBoundingClientRect();t.style.top=(window.innerHeight-e.height)/2+"px",t.style.left=(window.innerWidth-e.width)/2+"px"}}_updateOutput(t){const{_root:e,_color:o,options:r}=this;if(e.interaction.type()){const t=`to${e.interaction.type().getAttribute("data-type")}`;e.interaction.result.value="function"==typeof o[t]?o[t]().toString(r.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",o,t,this)}_clearColor(t=!1){const{_root:e,options:o}=this;o.useAsButton||e.button.style.setProperty("--pcr-color","rgba(0, 0, 0, 0.15)"),e.button.classList.add("clear"),o.showAlways||this.hide(),this._lastColor=null,this._initializingActive||t||(this._emit("save",null),this._emit("clear"))}_parseLocalColor(t){const{values:e,type:o,a:r}=function(t){t=t.match(/^[a-zA-Z]+$/)?function(t){if("black"===t.toLowerCase())return"#000";const e=document.createElement("canvas").getContext("2d");return e.fillStyle=t,"#000"===e.fillStyle?null:e.fillStyle}(t):t;const e={cmyk:/^cmyk\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)/i,rgba:/^rgba?\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D+([\d.]+)(%?)\D*?(([\d.]+)(%?)|$)/i,hsla:/^hsla?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hsva:/^hsva?\D+([\d.]+)\D+([\d.]+)\D+([\d.]+)\D*?(([\d.]+)(%?)|$)/i,hexa:/^#?(([\dA-Fa-f]{3,4})|([\dA-Fa-f]{6})|([\dA-Fa-f]{8}))$/i},o=t=>t.map((t=>/^(|\d+)\.\d+|\d+$/.test(t)?Number(t):void 0));let r;t:for(const i in e)if(r=e[i].exec(t))switch(i){case"cmyk":{const[,t,e,n,s]=o(r);if(t>100||e>100||n>100||s>100)break t;return{values:b(t,e,n,s),type:i}}case"rgba":{let[,t,,e,,n,,,s]=o(r);if(t="%"===r[2]?t/100*255:t,e="%"===r[4]?e/100*255:e,n="%"===r[6]?n/100*255:n,s="%"===r[9]?s/100:s,t>255||e>255||n>255||s<0||s>1)break t;return{values:[...v(t,e,n),s],a:s,type:i}}case"hexa":{let[,t]=r;4!==t.length&&3!==t.length||(t=t.split("").map((t=>t+t)).join(""));const e=t.substring(0,6);let o=t.substring(6);return o=o?parseInt(o,16)/255:void 0,{values:[...w(e),o],a:o,type:i}}case"hsla":{let[,t,e,n,,s]=o(r);if(s="%"===r[6]?s/100:s,t>360||e>100||n>100||s<0||s>1)break t;return{values:[...k(t,e,n),s],a:s,type:i}}case"hsva":{let[,t,e,n,,s]=o(r);if(s="%"===r[6]?s/100:s,t>360||e>100||n>100||s<0||s>1)break t;return{values:[t,e,n,s],a:s,type:i}}}return{values:null,type:null}}(t),{lockOpacity:i}=this.options,n=void 0!==r&&1!==r;return e&&3===e.length&&(e[3]=void 0),{values:!e||i&&n?null:e,type:o}}_t(t){return this.options.i18n[t]||S.I18N_DEFAULTS[t]}_emit(t,...e){this._eventListener[t].forEach((t=>t(...e,this)))}on(t,e){return this._eventListener[t].push(e),this}off(t,e){const o=this._eventListener[t]||[],r=o.indexOf(e);return~r&&o.splice(r,1),this}addSwatch(t){const{values:e}=this._parseLocalColor(t);if(e){const{_swatchColors:t,_root:o}=this,r=y(...e),n=s(`