@descope/web-components-ui 1.0.134 → 1.0.135

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. package/dist/cjs/index.cjs.js +275 -254
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.esm.js +253 -231
  5. package/dist/index.esm.js.map +1 -1
  6. package/dist/umd/{18.js → 1018.js} +2 -2
  7. package/dist/umd/2481.js +1 -0
  8. package/dist/umd/3208.js +2 -0
  9. package/dist/umd/3585.js +1 -0
  10. package/dist/umd/3878.js +1 -0
  11. package/dist/umd/4201.js +1 -0
  12. package/dist/umd/4447.js +1 -0
  13. package/dist/umd/{513.js → 4513.js} +1 -1
  14. package/dist/umd/4803.js +1 -0
  15. package/dist/umd/5767.js +2 -0
  16. package/dist/umd/{806.js → 5806.js} +2 -2
  17. package/dist/umd/{56.js → 7056.js} +2 -2
  18. package/dist/umd/{101.js → 7101.js} +2 -2
  19. package/dist/umd/{824.js → 7824.js} +2 -2
  20. package/dist/umd/7840.js +356 -0
  21. package/dist/umd/{725.js → 8725.js} +2 -2
  22. package/dist/umd/{211.js → 9211.js} +2 -2
  23. package/dist/umd/9241.js +1 -0
  24. package/dist/umd/{314.js → 9314.js} +2 -2
  25. package/dist/umd/{437.js → 9437.js} +2 -2
  26. package/dist/umd/{515.js → 9515.js} +2 -2
  27. package/dist/umd/{789.js → 9789.js} +1 -1
  28. package/dist/umd/boolean-fields-descope-checkbox-index-js.js +1 -1
  29. package/dist/umd/boolean-fields-descope-switch-toggle-index-js.js +1 -1
  30. package/dist/umd/descope-button-index-js.js +1 -1
  31. package/dist/umd/descope-combo-box-index-js.js +1 -1
  32. package/dist/umd/descope-container-index-js.js +1 -1
  33. package/dist/umd/descope-date-picker-index-js.js +1 -1
  34. package/dist/umd/descope-divider-index-js.js +1 -1
  35. package/dist/umd/descope-email-field-index-js.js +1 -1
  36. package/dist/umd/descope-image-index-js.js +1 -1
  37. package/dist/umd/descope-loader-linear-index-js.js +1 -1
  38. package/dist/umd/descope-loader-radial-index-js.js +1 -1
  39. package/dist/umd/descope-logo-index-js.js +1 -1
  40. package/dist/umd/descope-new-password-descope-new-password-internal-index-js.js +1 -1
  41. package/dist/umd/descope-new-password-index-js.js +1 -1
  42. package/dist/umd/descope-number-field-index-js.js +1 -1
  43. package/dist/umd/descope-passcode-descope-passcode-internal-index-js.js +1 -1
  44. package/dist/umd/descope-password-index-js.js +1 -1
  45. package/dist/umd/descope-phone-field-descope-phone-field-internal-index-js.js +1 -1
  46. package/dist/umd/descope-phone-field-index-js.js +1 -1
  47. package/dist/umd/descope-text-area-index-js.js +1 -1
  48. package/dist/umd/descope-text-field-index-js.js +1 -1
  49. package/dist/umd/descope-text-index-js.js +1 -1
  50. package/dist/umd/descope-totp-image-index-js.js +1 -0
  51. package/dist/umd/index.js +1 -1
  52. package/package.json +1 -1
  53. package/src/baseClasses/createCssVarImageClass.js +49 -0
  54. package/src/components/descope-logo/LogoClass.js +2 -51
  55. package/src/components/descope-totp-image/TotpImageClass.js +6 -0
  56. package/src/components/descope-totp-image/index.js +5 -0
  57. package/src/index.cjs.js +1 -0
  58. package/src/index.d.ts +1 -0
  59. package/src/index.js +1 -0
  60. package/src/theme/components/index.js +2 -0
  61. package/src/theme/components/totpImage.js +10 -0
  62. package/dist/umd/201.js +0 -1
  63. package/dist/umd/208.js +0 -2
  64. package/dist/umd/241.js +0 -1
  65. package/dist/umd/447.js +0 -1
  66. package/dist/umd/481.js +0 -1
  67. package/dist/umd/767.js +0 -2
  68. package/dist/umd/803.js +0 -1
  69. package/dist/umd/840.js +0 -356
  70. package/dist/umd/878.js +0 -1
  71. /package/dist/umd/{18.js.LICENSE.txt → 1018.js.LICENSE.txt} +0 -0
  72. /package/dist/umd/{208.js.LICENSE.txt → 3208.js.LICENSE.txt} +0 -0
  73. /package/dist/umd/{767.js.LICENSE.txt → 5767.js.LICENSE.txt} +0 -0
  74. /package/dist/umd/{437.js.LICENSE.txt → 5806.js.LICENSE.txt} +0 -0
  75. /package/dist/umd/{56.js.LICENSE.txt → 7056.js.LICENSE.txt} +0 -0
  76. /package/dist/umd/{101.js.LICENSE.txt → 7101.js.LICENSE.txt} +0 -0
  77. /package/dist/umd/{824.js.LICENSE.txt → 7824.js.LICENSE.txt} +0 -0
  78. /package/dist/umd/{840.js.LICENSE.txt → 7840.js.LICENSE.txt} +0 -0
  79. /package/dist/umd/{515.js.LICENSE.txt → 8725.js.LICENSE.txt} +0 -0
  80. /package/dist/umd/{211.js.LICENSE.txt → 9211.js.LICENSE.txt} +0 -0
  81. /package/dist/umd/{314.js.LICENSE.txt → 9314.js.LICENSE.txt} +0 -0
  82. /package/dist/umd/{806.js.LICENSE.txt → 9437.js.LICENSE.txt} +0 -0
  83. /package/dist/umd/{725.js.LICENSE.txt → 9515.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../src/constants.js","../../src/helpers/index.js","../../src/helpers/componentHelpers.js","../../src/helpers/themeHelpers/componentsThemeManager.js","../../src/helpers/themeHelpers/index.js","../../src/helpers/themeHelpers/colorsHelpers.js","../../src/theme/globals.js","../../src/helpers/themeHelpers/resetHelpers.js","../../src/mixins/createStyleMixin/helpers.js","../../src/mixins/createStyleMixin/index.js","../../src/mixins/draggableMixin.js","../../src/mixins/componentNameValidationMixin.js","../../src/mixins/hoverableMixin.js","../../src/mixins/normalizeBooleanAttributesMixin.js","../../src/baseClasses/createBaseClass.js","../../src/helpers/mixinsHelpers.js","../../src/mixins/createProxy.js","../../src/mixins/inputValidationMixin.js","../../src/mixins/proxyInputMixin.js","../../src/mixins/portalMixin.js","../../src/mixins/changeMixin.js","../../src/mixins/inputEventsDispatchingMixin.js","../../src/components/descope-button/ButtonClass.js","../../src/theme/components/button.js","../../src/components/descope-text-field/textFieldMappings.js","../../src/components/descope-text-field/TextFieldClass.js","../../src/theme/components/inputWrapper.js","../../src/theme/components/textField.js","../../src/components/descope-password/passwordDraggableMixin.js","../../src/components/descope-password/PasswordClass.js","../../src/theme/components/password.js","../../src/components/descope-number-field/NumberFieldClass.js","../../src/theme/components/numberField.js","../../src/components/descope-email-field/EmailFieldClass.js","../../src/theme/components/emailField.js","../../src/components/descope-text-area/TextAreaClass.js","../../src/theme/components/textArea.js","../../src/baseClasses/createBaseInputClass.js","../../src/components/boolean-fields/descope-boolean-field-internal/BooleanFieldInternal.js","../../src/components/boolean-fields/booleanFieldMixin.js","../../src/components/boolean-fields/commonStyles.js","../../src/components/boolean-fields/descope-checkbox/CheckboxClass.js","../../src/theme/components/checkbox.js","../../src/components/boolean-fields/descope-switch-toggle/SwitchToggleClass.js","../../src/theme/components/switchToggle.js","../../src/components/descope-container/ContainerClass.js","../../src/theme/components/container.js","../../src/components/descope-logo/LogoClass.js","../../src/theme/components/logo.js","../../src/components/descope-text/TextClass.js","../../src/theme/components/text.js","../../src/components/descope-link/LinkClass.js","../../src/theme/components/link.js","../../src/components/descope-divider/DividerClass.js","../../src/theme/components/divider.js","../../src/components/descope-passcode/descope-passcode-internal/PasscodeInternal.js","../../src/components/descope-passcode/PasscodeClass.js","../../src/theme/components/passcode.js","../../src/components/descope-loader-linear/LoaderLinearClass.js","../../src/theme/components/loader/loaderLinear.js","../../src/components/descope-loader-radial/LoaderRadialClass.js","../../src/theme/components/loader/loaderRadial.js","../../src/components/descope-combo-box/ComboBoxClass.js","../../src/theme/components/comboBox.js","../../src/components/descope-image/ImageClass.js","../../src/theme/components/image.js","../../src/components/descope-phone-field/CountryCodes.js","../../src/components/descope-phone-field/descope-phone-field-internal/PhoneFieldInternal.js","../../src/components/descope-phone-field/PhoneFieldClass.js","../../src/theme/components/phoneField.js","../../src/components/descope-new-password/descope-new-password-internal/componentName.js","../../src/components/descope-new-password/NewPasswordClass.js","../../src/theme/components/newPassword.js","../../src/theme/components/index.js","../../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope';\nexport const CSS_SELECTOR_SPECIFIER_MULTIPLY = 3\nexport const BASE_THEME_SECTION = 'host'\nexport const PORTAL_THEME_PREFIX = '@'","\nexport const kebabCase = (str) =>\n\tstr\n\t\t.replace(/([a-z])([A-Z])/g, '$1-$2')\n\t\t.replace(/[\\s_.]+/g, '-')\n\t\t.toLowerCase();\n\nexport const kebabCaseJoin = (...args) => kebabCase(args.filter((arg) => !!arg).join('-'));\n\nexport const compose = (...fns) =>\n\t(val) =>\n\t\tfns.reduceRight((res, fn) => fn(res), val);\n\nexport const upperFirst = (str) => str.charAt(0).toUpperCase() + str.slice(1)\n\nexport const isFunction = (maybeFunc) => typeof maybeFunc === 'function';\n\nexport const isUrl = (maybeUrl) => {\n\ttry {\n\t\tnew URL(maybeUrl)\n\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n}","import { kebabCaseJoin } from '.';\nimport { DESCOPE_PREFIX } from '../constants';\n\nexport const observeAttributes = (\n\tele,\n\tcallback,\n\t{ excludeAttrs = [], includeAttrs = [] }\n) => {\n\t// sync all attrs on init\n\tconst filteredAttrs = Array.from(ele.attributes)\n\t\t.filter((attr) =>\n\t\t\t!excludeAttrs.includes(attr.name) &&\n\t\t\t(!includeAttrs.length || includeAttrs.includes(attr.name))\n\t\t)\n\t\t.map((attr) => attr.name)\n\n\tcallback(filteredAttrs);\n\n\tconst observer = new MutationObserver((mutationsList) => {\n\t\tfor (const mutation of mutationsList) {\n\t\t\tif (\n\t\t\t\tmutation.type === 'attributes' &&\n\t\t\t\t!excludeAttrs.includes(mutation.attributeName) &&\n\t\t\t\t(!includeAttrs.length || includeAttrs.includes(mutation.attributeName))\n\t\t\t) {\n\t\t\t\tcallback([mutation.attributeName]);\n\t\t\t}\n\t\t}\n\t});\n\n\tobserver.observe(ele, { attributes: true });\n};\n\n// calling the callback with this object: { addedNodes, removedNodes }\nexport const observeChildren = (\n\tele,\n\tcallback,\n) => {\n\tcallback({ addedNodes: Array.from(ele.children), removedNodes: [] });\n\n\tconst observer = new MutationObserver((mutationsList) => {\n\t\tfor (const mutation of mutationsList) {\n\t\t\tif (mutation.type === 'childList') {\n\t\t\t\tcallback(mutation);\n\t\t\t}\n\t\t}\n\t});\n\n\tobserver.observe(ele, { childList: true });\n};\n\nconst createSyncAttrsCb =\n\t(srcEle, targetEle, mapAttrs = {}) =>\n\t\t(attrNames) => {\n\t\t\tattrNames.forEach((attrName) => {\n\t\t\t\tconst targetAttrName = mapAttrs[attrName] || attrName;\n\t\t\t\tconst srcAttrVal = srcEle.getAttribute(attrName);\n\t\t\t\tif (srcAttrVal !== null) {\n\t\t\t\t\tif (targetEle.getAttribute(targetAttrName) !== srcAttrVal) {\n\t\t\t\t\t\ttargetEle.setAttribute(targetAttrName, srcAttrVal);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\ttargetEle.removeAttribute(targetAttrName);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\nexport const syncAttrs = (ele1, ele2, options) => {\n\tobserveAttributes(ele1, createSyncAttrsCb(ele1, ele2), options);\n\tobserveAttributes(ele2, createSyncAttrsCb(ele2, ele1), options);\n};\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name);\n\nexport const getCssVarName = (...args) =>\n\t`--${kebabCaseJoin(...args)}`;\n\nexport const forwardAttrs = (source, dest, options = {}) => {\n\tobserveAttributes(\n\t\tsource,\n\t\tcreateSyncAttrsCb(source, dest, options.mapAttrs),\n\t\toptions\n\t);\n};\n\nexport const forwardProps = (src, target, props = []) => {\n\tif (!props.length) return;\n\n\tconst config = props.reduce((acc, prop) => Object.assign(acc, {\n\t\t[prop]: {\n\t\t\tget() {\n\t\t\t\treturn src[prop]\n\t\t\t},\n\t\t\tset(v) {\n\t\t\t\tsrc[prop] = v\n\t\t\t}\n\t\t}\n\t}), {})\n\n\tObject.defineProperties(target, config)\n}\n","\nclass ComponentsThemeManager {\n static mountOnPropName = 'DescopeThemeManager';\n\n #themes = {};\n\n #currentThemeName = 'light';\n\n #callbacks = new Set();\n\n #notify() {\n this.#callbacks.forEach(cb => cb?.());\n };\n\n get currentThemeName() {\n return this.#currentThemeName;\n }\n\n set currentThemeName(themeName) {\n this.#currentThemeName = themeName;\n this.#notify();\n }\n\n get currentTheme() {\n return this.#themes[this.currentThemeName];\n }\n\n onCurrentThemeChange(cb) {\n this.#callbacks.add(cb);\n\n return () => { this.#callbacks.delete(cb); };\n };\n\n set themes(themes) {\n this.#themes = themes;\n this.#notify();\n }\n}\n\nexport const componentsThemeManager = new ComponentsThemeManager()\n","import merge from 'lodash.merge';\nimport set from 'lodash.set';\nimport { BASE_THEME_SECTION, DESCOPE_PREFIX, PORTAL_THEME_PREFIX } from '../../constants';\nimport { isUrl, kebabCase } from '..';\nimport { getComponentName, getCssVarName } from '../componentHelpers';\n\nconst getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path);\n\nconst transformTheme = (theme, path, getTransformation) => {\n\treturn Object.entries(theme).reduce((acc, [key, val]) => {\n\t\tif (val?.constructor !== Object) {\n\t\t\treturn merge(acc, getTransformation(path.concat(key), val));\n\t\t} else {\n\t\t\treturn merge(acc, transformTheme(val, [...path, key], getTransformation));\n\t\t}\n\t}, {});\n};\n\nconst stringifyArray = (strArr) =>\n\tstrArr.map((str) => (str.includes(' ') ? `\"${str}\"` : str)).join(', ');\n\nconst getCssVarValue = (val) => {\n\tswitch (true) {\n\t\tcase Array.isArray(val):\n\t\t\treturn stringifyArray(val)\n\t\tcase isUrl(val):\n\t\t\treturn `url(${val})`\n\t\tdefault:\n\t\t\treturn val\n\t}\n}\n\nexport const themeToCSSVarsObj = (theme) =>\n\ttransformTheme(theme, [], (path, val) => ({\n\t\t[getVarName(path)]: getCssVarValue(val)\n\t}));\n\nexport const getThemeRefs = (theme, prefix) =>\n\ttransformTheme(theme, [], (path) =>\n\t\tset({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`)\n\t);\n\nexport const getThemeVars = (theme, prefix) =>\n\ttransformTheme(theme, [], (path) =>\n\t\tset({}, path, getVarName(prefix ? [prefix, ...path] : path))\n\t);\n\nexport const globalsThemeToStyle = (theme, themeName = '') => {\n\tconst style = Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t\t(acc, entry) => (acc += `${entry.join(':')};\\n`),\n\t\t''\n\t);\n\n\tif (!themeName) return style\n\n\treturn `*[data-theme=\"${themeName}\"] {${style}}`\n};\n\nconst componentsThemeToStyleObj = (componentsTheme) =>\n\ttransformTheme(componentsTheme, [], (path, val) => {\n\t\tconst [component, ...restPath] = path;\n\t\tconst property = restPath.pop();\n\t\tconst componentName = getComponentName(component);\n\n\t\tif (property === 'undefined') {\n\t\t\tconsole.warn(componentName, `theme value: \"${val}\" is mapped to an invalid property`)\n\t\t}\n\n\t\t// we need a support for portal components theme (e.g. overlay)\n\t\t// this allows us to generate those themes under different sections\n\t\t// if the theme has root level attribute that starts with #\n\t\t// we are generating a new theme\n\t\tlet themeName = BASE_THEME_SECTION\n\n\t\tif (restPath[0] && restPath[0].startsWith(PORTAL_THEME_PREFIX)) {\n\t\t\tthemeName = restPath.shift();\n\t\t}\n\n\t\t// do not start with underscore -> key:value, must have 2 no underscore attrs in a row\n\t\t// starts with underscore -> attribute selector\n\t\tconst attrsSelector = restPath.reduce((acc, section, idx) => {\n\t\t\tif (section.startsWith('_'))\n\t\t\t\treturn (acc += `[${kebabCase(section.replace(/^_/, ''))}=\"true\"]`);\n\n\t\t\tconst nextSection = restPath[idx + 1];\n\n\t\t\tif (typeof nextSection !== 'string' || nextSection.startsWith('_')) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t'theme generator',\n\t\t\t\t\t`your theme structure is invalid, attribute \"${section}\" is followed by \"${nextSection}\" which is not allowed`\n\t\t\t\t);\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\treturn (acc += `[${kebabCase(section)}=\"${restPath\n\t\t\t\t.splice(idx + 1, 1)\n\t\t\t\t.join('')}\"]`);\n\t\t}, '');\n\n\t\tlet selector = `:host${attrsSelector ? `(${attrsSelector})` : ''}`;\n\n\t\treturn {\n\t\t\t[componentName]: {\n\t\t\t\t[themeName]: {\n\t\t\t\t\t[selector]: {\n\t\t\t\t\t\t[property]: getCssVarValue(val)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t});\n\n\nexport const createComponentsTheme = (componentsTheme) => {\n\tconst styleObj = componentsThemeToStyleObj(componentsTheme);\n\n\treturn Object.keys(styleObj).reduce(\n\t\t(acc, componentName) => {\n\t\t\tconst componentThemes = styleObj[componentName];\n\n\t\t\treturn Object.assign(acc, {\n\t\t\t\t[componentName]: Object.keys(componentThemes)\n\t\t\t\t\t.reduce((acc, theme) =>\n\t\t\t\t\t\tObject.assign(acc, { [theme]: componentsThemeToStyle(componentThemes[theme]) }),\n\t\t\t\t\t\t{})\n\t\t\t})\n\t\t},\n\t\t{}\n\t);\n}\n\nconst componentsThemeToStyle = (componentsTheme) =>\n\tObject.entries(componentsTheme).reduce(\n\t\t(acc, [selector, vars]) =>\n\t\t(acc += `${selector} { \\n${Object.entries(\n\t\t\tvars\n\t\t)\n\t\t\t.map(([key, val]) => `${key}: ${val}`)\n\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t''\n\t);\n\nexport const themeToStyle = ({ globals, components }, themeName) => ({\n\tglobals: globalsThemeToStyle(globals, themeName),\n\tcomponents: createComponentsTheme(components)\n});\n\nconst useVar = (varName) => `var(${varName})`;\n\nexport const createHelperVars = (theme, prefix) => {\n\tconst res = transformTheme(theme, [], (path, value) => {\n\t\tconst modifiedPath = [...path];\n\t\tconst property = modifiedPath.splice(-1);\n\t\tconst varName = getCssVarName(prefix, property);\n\n\t\tconst vars = { [property]: varName };\n\t\tconst theme = set({}, [...modifiedPath, varName], value);\n\t\tconst useVars = { [property]: useVar(varName) };\n\n\t\treturn { theme, useVars, vars };\n\t});\n\n\treturn [res.theme, res.useVars, res.vars];\n};\n\nexport { componentsThemeManager } from './componentsThemeManager'\n","import Color from 'color';\n\nconst genDark = (c, percentage = 0.5) => c.darken(percentage).hex();\nconst genLight = (c, percentage = 0.5) => c.lighten(percentage).hex();\nconst genContrast = (c, percentage = 0.9) => {\n\tconst isDark = c.isDark();\n\treturn c\n\t\t.mix(Color(isDark ? 'white' : 'black'), percentage)\n\t\t.saturate(1)\n\t\t.hex();\n};\n\nexport const genColor = (color) => {\n\tconst mainColor = new Color(color.main || color);\n\n\treturn {\n\t\tmain: mainColor.hex(),\n\t\tdark: color.dark || genDark(mainColor),\n\t\tlight: color.light || genLight(mainColor),\n\t\tcontrast: color.contrast || genContrast(mainColor)\n\t};\n};\n\nexport const genColors = (colors) => {\n\treturn Object.keys(colors).reduce((acc, colorName) => {\n\t\tconst currentColor = colors[colorName];\n\n\t\treturn Object.assign(acc, {\n\t\t\t[colorName]: genColor(currentColor)\n\t\t});\n\t}, {});\n};\n","import { getThemeRefs, getThemeVars } from '../helpers/themeHelpers';\nimport { genColors } from '../helpers/themeHelpers/colorsHelpers';\n\n\nexport const colors = genColors({\n\tsurface: {\n\t\tmain: 'lightgray',\n\t\tlight: '#fff',\n\t\tdark: '#000',\n\t},\n\tprimary: '#0082B5',\n\tsecondary: '#7D14EB',\n\tsuccess: 'green',\n\terror: 'red'\n});\n\nconst fonts = {\n\tfont1: {\n\t\tfamily: [\n\t\t\t\"Roboto\",\n\t\t\t\"ui-sans-serif\",\n\t\t\t\"system-ui\",\n\t\t\t\"-apple-system\",\n\t\t\t\"BlinkMacSystemFont\",\n\t\t\t\"Segoe UI\",\n\t\t\t\"Helvetica Neue\",\n\t\t\t\"Arial\",\n\t\t\t\"Noto Sans\",\n\t\t\t\"sans-serif\",\n\t\t\t\"Apple Color Emoji\",\n\t\t\t\"Segoe UI Emoji\",\n\t\t\t\"Segoe UI Symbol\",\n\t\t\t\"Noto Color Emoji\"\n\t\t],\n\t\tlabel: \"Roboto\",\n\t\turl: \"https://fonts.googleapis.com/css?family=Roboto:100,200,300,400,500,600,700,800,900\"\n\t},\n\tfont2: {\n\t\tfamily: [\n\t\t\t\"ui-sans-serif\",\n\t\t\t\"system-ui\",\n\t\t\t\"-apple-system\",\n\t\t\t\"BlinkMacSystemFont\",\n\t\t\t\"Segoe UI\",\n\t\t\t\"Roboto\",\n\t\t\t\"Helvetica Neue\",\n\t\t\t\"Arial\",\n\t\t\t\"Noto Sans\",\n\t\t\t\"sans-serif\",\n\t\t\t\"Apple Color Emoji\",\n\t\t\t\"Segoe UI Emoji\",\n\t\t\t\"Segoe UI Symbol\",\n\t\t\t\"Noto Color Emoji\"\n\t\t],\n\t\tlabel: \"Sans Serif\"\n\t}\n};\n\nconst fontsRef = getThemeRefs({ fonts }).fonts;\n\nconst typography = {\n\th1: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '900',\n\t\tsize: '48px'\n\t},\n\th2: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '800',\n\t\tsize: '38px'\n\t},\n\th3: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '600',\n\t\tsize: '28px'\n\t},\n\tsubtitle1: {\n\t\tfont: fontsRef.font2.family,\n\t\tweight: '500',\n\t\tsize: '22px'\n\t},\n\tsubtitle2: {\n\t\tfont: fontsRef.font2.family,\n\t\tweight: '400',\n\t\tsize: '20px'\n\t},\n\tbody1: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '400',\n\t\tsize: '16px'\n\t},\n\tbody2: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '400',\n\t\tsize: '14px'\n\t}\n};\n\nconst spacing = {\n\txs: '2px',\n\tsm: '4px',\n\tmd: '8px',\n\tlg: '16px',\n\txl: '32px'\n};\n\nconst border = {\n\txs: '1px',\n\tsm: '2px',\n\tmd: '3px',\n\tlg: '4px',\n\txl: '5px'\n};\n\nconst radius = {\n\txs: '5px',\n\tsm: '10px',\n\tmd: '15px',\n\tlg: '20px',\n\txl: '25px',\n\t'2xl': '30px',\n\t'3xl': '35px'\n};\n\nconst shadow = {\n\twide: {\n\t\tsm: '0 2px 3px -0.5px',\n\t\tmd: '0 4px 6px -1px',\n\t\tlg: '0 10px 15px -3px',\n\t\txl: '0 20px 25px -5px',\n\t\t'2xl': '0 25px 50px -12px'\n\t},\n\tnarrow: {\n\t\tsm: '0 1px 2px -1px',\n\t\tmd: '0 2px 4px -2px',\n\t\tlg: '0 4px 6px -4px',\n\t\txl: '0 8px 10px -6px',\n\t\t'2xl': '0 16px 16px -8px'\n\t}\n};\n\nconst globals = {\n\tcolors,\n\ttypography,\n\tspacing,\n\tborder,\n\tradius,\n\tshadow,\n\tfonts\n};\n\nexport default globals\nexport const vars = getThemeVars(globals)\n","export const resetInputOverrides = (name, cssVarList) => `\n ${resetInputContainer(name)}\n ${resetInputCursor(name)}\n ${resetInputPlaceholder(name)}\n ${resetInputField(name)}\n ${resetInputAutoFill(name, cssVarList)}\n ${resetInputFieldInvalidBackgroundColor(name)}\n ${resetInitialHeight(name)}\n ${resetInputElement(name)}\n ${resetInputFieldunderlayingBorder(name)}\n`;\n\nexport const useHostExternalPadding = (cssVarList) => `\n :host {\n padding: calc(var(${cssVarList.inputOutlineWidth}) + var(${cssVarList.inputOutlineOffset})) \n }\n`;\n\nexport const resetInputFieldunderlayingBorder = (name) => `\n ${name}::part(input-field)::after {\n border: none;\n }\n`;\n\nexport const resetInitialHeight = (name) => `\n ${name}::before {\n\t\theight: unset;\n\t}\n`;\n\nexport const resetInputElement = (name) => `\n ${name} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputContainer = (name) => `\n ${name} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputField = (name) => `\n ${name}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`;\n\nexport const resetInputCursor = (name) => `\n ${name} > label,\n ${name}::part(label),\n ${name}::part(required-indicator) {\n cursor: pointer;\n }\n`;\n\nexport const resetInputPlaceholder = (name, ele = 'input') => `\n ${name}[disabled] > ${ele}:placeholder-shown,\n\t${name}[readonly] > ${ele}:placeholder-shown {\n\t\topacity: 1;\n\t} \n`;\n\nexport const resetInputAutoFill = (name, cssVarList) => `\n ${name} input:-webkit-autofill,\n ${name} input:-webkit-autofill::first-line,\n ${name} input:-webkit-autofill:hover,\n ${name} input:-webkit-autofill:active,\n ${name} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${cssVarList.inputValueTextColor});\n box-shadow: 0 0 0 var(${cssVarList.inputHeight}) var(${cssVarList.inputBackgroundColor}) inset;\n } \n`;\n\nexport const resetInputFieldDefaultWidth = () => `\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputReadonlyStyle = (name) => `\n ${name}::part(input-field)::after {\n opacity: 0;\n }\n`;\n\nexport const resetInputFieldInvalidBackgroundColor = (name) => `\n ${name}::part(input-field)::after {\n background: none;\n }\n`;\n","import { isFunction, kebabCase } from '../../helpers';\nimport { getCssVarName } from '../../helpers/componentHelpers';\n\nconst createCssVarFallback = (first, ...rest) =>\n\t`var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (\n\tbaseSelector = '',\n\trelativeSelectorOrSelectorFn = ''\n) =>\n\tisFunction(relativeSelectorOrSelectorFn)\n\t\t? relativeSelectorOrSelectorFn(baseSelector)\n\t\t: `${baseSelector}${/^[A-Za-z]/.test(relativeSelectorOrSelectorFn)\n\t\t\t? ` ${relativeSelectorOrSelectorFn}`\n\t\t\t: relativeSelectorOrSelectorFn\n\t\t}`;\n\nclass StyleBuilder {\n\tconstructor() {\n\t\tthis.styleMap = new Map();\n\t}\n\n\tadd(selector, property, value) {\n\t\tif (!this.styleMap.has(selector)) {\n\t\t\tthis.styleMap.set(selector, []);\n\t\t}\n\n\t\tthis.styleMap.set(selector, [\n\t\t\t...this.styleMap.get(selector),\n\t\t\t{ property, value }\n\t\t]);\n\t}\n\n\ttoString() {\n\t\treturn Array.from(this.styleMap.entries()).reduce(\n\t\t\t(style, [selector, propValArr]) =>\n\t\t\t(style += `${selector} { \\n${propValArr\n\t\t\t\t.map(({ property, value }) => `${property}: ${value}`)\n\t\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t\t''\n\t\t);\n\t}\n}\n\nconst normalizeConfig = (attr, config) => {\n\tconst defaultMapping = { selector: '', property: kebabCase(attr) };\n\n\tif (!config || !Object.keys(config).length) return [defaultMapping];\n\n\tif (Array.isArray(config))\n\t\treturn config.map((entry) => Object.assign({}, defaultMapping, entry));\n\n\treturn [Object.assign({}, defaultMapping, config)];\n};\n\nexport const createStyle = (componentName, baseSelector, mappings) => {\n\tconst style = new StyleBuilder();\n\n\tObject.keys(mappings).forEach((attr) => {\n\t\tconst attrConfig = normalizeConfig(attr, mappings[attr]);\n\n\t\tconst cssVarName = getCssVarName(componentName, attr);\n\n\t\tattrConfig.forEach(\n\t\t\t({ selector: relativeSelectorOrSelectorFn, property }) => {\n\t\t\t\tstyle.add(\n\t\t\t\t\tcreateCssSelector(baseSelector, relativeSelectorOrSelectorFn),\n\t\t\t\t\tisFunction(property) ? property() : property,\n\t\t\t\t\tcreateCssVarFallback(cssVarName)\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t});\n\n\treturn style.toString();\n};\n\nexport const createCssVarsList = (componentName, mappings) =>\n\tObject.keys(mappings).reduce(\n\t\t(acc, attr) =>\n\t\t\tObject.assign(acc, { [attr]: getCssVarName(componentName, attr) }),\n\t\t{}\n\t);\n\n// on some cases we need a selector to be more specific than another\n// for this we have this fn that generate a class selector multiple times\nexport const createClassSelectorSpecifier = (className, numOfRepeats) => Array(numOfRepeats)\n\t.fill(`.${className}`)\n\t.join('')","import { BASE_THEME_SECTION, CSS_SELECTOR_SPECIFIER_MULTIPLY } from '../../constants';\nimport { kebabCaseJoin } from '../../helpers';\nimport { getCssVarName, observeAttributes } from '../../helpers/componentHelpers';\nimport { componentsThemeManager } from '../../helpers/themeHelpers/componentsThemeManager';\nimport { createStyle, createCssVarsList, createClassSelectorSpecifier } from './helpers';\n\nconst STYLE_OVERRIDE_ATTR_PREFIX = 'st'\n\nexport const createStyleMixin =\n\t({ mappings = {}, componentNameOverride = '' }) => (superclass) => {\n\t\tconst componentName = componentNameOverride || superclass.componentName;\n\n\t\treturn class CustomStyleMixinClass extends superclass {\n\t\t\tstatic get cssVarList() {\n\t\t\t\treturn {\n\t\t\t\t\t...superclass.cssVarList,\n\t\t\t\t\t...createCssVarsList(componentName, {\n\t\t\t\t\t\t...mappings,\n\t\t\t\t\t})\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t#overrideStyleEle;\n\t\t\t#themeStyleEle;\n\t\t\t#disconnectThemeManager\n\t\t\t#componentNameSuffix\n\t\t\t#themeSection\n\t\t\t#rootElement\n\t\t\t#baseSelector\n\t\t\t#styleAttributes\n\n\t\t\t// we are using this mixin also for portalMixin\n\t\t\t// so we should be able to inject styles to other DOM elements\n\t\t\t// this is why we need to support these overrides\n\t\t\tconstructor({\n\t\t\t\tgetRootElement,\n\t\t\t\tcomponentNameSuffix = '',\n\t\t\t\tthemeSection = BASE_THEME_SECTION,\n\t\t\t\tbaseSelector\n\t\t\t} = {}) {\n\t\t\t\tsuper();\n\t\t\t\tthis.#componentNameSuffix = componentNameSuffix\n\t\t\t\tthis.#themeSection = themeSection\n\t\t\t\tthis.#rootElement = getRootElement?.(this) || this.shadowRoot\n\t\t\t\tthis.#baseSelector = baseSelector ?? this.baseSelector\n\n\t\t\t\tthis.#styleAttributes = Object.keys(mappings).map((key) =>\n\t\t\t\t\tkebabCaseJoin(STYLE_OVERRIDE_ATTR_PREFIX, componentNameSuffix, key)\n\t\t\t\t);\n\n\t\t\t\tthis.#createMappingStyle();\n\t\t\t\tthis.#createComponentTheme();\n\t\t\t\tthis.#createOverridesStyle();\n\t\t\t}\n\n\t\t\tget #componentTheme() {\n\t\t\t\treturn componentsThemeManager.currentTheme?.[componentName] || ''\n\t\t\t}\n\n\t\t\t#onComponentThemeChange() {\n\t\t\t\tthis.#themeStyleEle.innerHTML = this.#componentTheme[this.#themeSection]\n\t\t\t}\n\n\t\t\t#createComponentTheme() {\n\t\t\t\tthis.#themeStyleEle = document.createElement('style');\n\t\t\t\tthis.#themeStyleEle.id = `style-mixin-theme__${componentName}`;\n\t\t\t\tthis.#rootElement.prepend(this.#themeStyleEle);\n\t\t\t\tthis.#disconnectThemeManager = componentsThemeManager.onCurrentThemeChange(this.#onComponentThemeChange.bind(this))\n\t\t\t\tthis.#onComponentThemeChange()\n\t\t\t}\n\n\t\t\t#createOverridesStyle() {\n\t\t\t\tif (this.#styleAttributes.length) {\n\t\t\t\t\tthis.#overrideStyleEle = document.createElement('style');\n\t\t\t\t\tthis.#overrideStyleEle.id = `style-mixin-overrides__${componentName}`;\n\n\t\t\t\t\tconst classSpecifier = createClassSelectorSpecifier(componentName, CSS_SELECTOR_SPECIFIER_MULTIPLY);\n\n\t\t\t\t\tthis.#overrideStyleEle.innerText = `:host(${classSpecifier}) {}`;\n\t\t\t\t\tthis.#rootElement.append(this.#overrideStyleEle);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#setAttrOverride(attrName, value) {\n\t\t\t\tconst style = this.#overrideStyleEle?.sheet?.cssRules[0].style;\n\t\t\t\tif (!style) return;\n\n\t\t\t\tconst varName = getCssVarName(\n\t\t\t\t\tcomponentName,\n\t\t\t\t\tattrName.replace(new RegExp(`^${STYLE_OVERRIDE_ATTR_PREFIX}-`), '')\n\t\t\t\t);\n\n\t\t\t\tif (value) style?.setProperty(varName, value);\n\t\t\t\telse {\n\t\t\t\t\tstyle?.removeProperty(varName);\n\t\t\t\t\tthis.removeAttribute(attrName)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#updateOverridesStyle(attrs = []) {\n\t\t\t\tlet shouldUpdate = false;\n\n\t\t\t\tfor (const attr of attrs) {\n\t\t\t\t\tif (this.#styleAttributes.includes(attr)) {\n\t\t\t\t\t\tthis.#setAttrOverride(attr, this.getAttribute(attr));\n\t\t\t\t\t\tshouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (shouldUpdate) {\n\t\t\t\t\t// we are rewriting the style back to the style tag\n\t\t\t\t\tthis.#overrideStyleEle.innerHTML = this.#overrideStyleEle?.sheet?.cssRules[0].cssText\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#createMappingStyle() {\n\t\t\t\tif (Object.keys(mappings).length) {\n\t\t\t\t\tconst themeStyle = document.createElement('style');\n\t\t\t\t\tthemeStyle.id = `style-mixin-mappings__${componentName}`\n\t\t\t\t\tthemeStyle.innerHTML = createStyle(\n\t\t\t\t\t\tkebabCaseJoin(componentName, this.#componentNameSuffix),\n\t\t\t\t\t\tthis.#baseSelector,\n\t\t\t\t\t\tmappings\n\t\t\t\t\t);\n\t\t\t\t\tthis.#rootElement.prepend(themeStyle);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#addClassName(className) {\n\t\t\t\t(this.#rootElement.classList || this.#rootElement.host.classList).add(className)\n\t\t\t}\n\n\t\t\tinit() {\n\t\t\t\tsuper.init?.();\n\t\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\t\tthis.#addClassName(componentName)\n\n\t\t\t\t\t// this is instead attributeChangedCallback because we cannot use static methods in this case\n\t\t\t\t\tobserveAttributes(this, this.#updateOverridesStyle.bind(this), {})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisconnectedCallback() {\n\t\t\t\tsuper.disconnectedCallback?.();\n\n\t\t\t\tthis.#disconnectThemeManager?.();\n\t\t\t}\n\t\t}\n\t};\n","export const draggableMixin = (superclass) =>\n\tclass DraggableMixinClass extends superclass {\n\t\t#styleEle = null;\n\n\t\tstatic get observedAttributes() {\n\t\t\tconst superAttrs = superclass.observedAttributes || [];\n\t\t\treturn [...superAttrs, 'draggable'];\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#styleEle = document.createElement('style');\n\t\t\tthis.#styleEle.innerText = `* { cursor: inherit!important }`;\n\t\t}\n\n\t\t#handleDraggableStyle(isDraggable) {\n\t\t\tif (isDraggable) {\n\t\t\t\tthis.shadowRoot.appendChild(this.#styleEle);\n\t\t\t} else {\n\t\t\t\tthis.#styleEle.remove();\n\t\t\t}\n\t\t}\n\n\t\tget isDraggable() {\n\t\t\treturn this.hasAttribute('draggable') && this.getAttribute('draggable') !== 'false'\n\t\t}\n\n\t\tinit() {\n\t\t\t// because we are delegating the focus from the outer component, \n\t\t\t// the D&D is not working well in the page editor\n\t\t\t// in order to solve it we are making the inner component focusable on mouse down\n\t\t\t// and removing it on complete\n\t\t\tthis.addEventListener('mousedown', (e) => {\n\t\t\t\tif (this.isDraggable) {\n\t\t\t\t\tconst prevTabIndex = this.baseElement.getAttribute('tabindex')\n\t\t\t\t\tthis.baseElement.setAttribute('tabindex', '-1');\n\n\t\t\t\t\tconst onComplete = () => {\n\t\t\t\t\t\tprevTabIndex ?\n\t\t\t\t\t\t\tthis.baseElement.setAttribute('tabindex', prevTabIndex) :\n\t\t\t\t\t\t\tthis.baseElement.removeAttribute('tabindex');\n\n\t\t\t\t\t\te.target.removeEventListener('mouseup', onComplete)\n\t\t\t\t\t\te.target.removeEventListener('dragend', onComplete)\n\t\t\t\t\t}\n\n\t\t\t\t\te.target.addEventListener('mouseup', onComplete, { once: true })\n\t\t\t\t\te.target.addEventListener('dragend', onComplete, { once: true })\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tsuper.init?.();\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\t\t\tif (attrName === 'draggable') {\n\t\t\t\tthis.#handleDraggableStyle(newValue === 'true');\n\t\t\t}\n\t\t}\n\t};\n","export const componentNameValidationMixin = (superclass) =>\n\tclass ComponentNameValidationMixinClass extends superclass {\n\t\t#checkComponentName() {\n\t\t\tconst currentComponentName = this.localName;\n\n\t\t\tif (!superclass.componentName) {\n\t\t\t\tthrow Error(\n\t\t\t\t\t`component name is not defined on super class, make sure you have a static get for \"componentName\"`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (currentComponentName !== superclass.componentName) {\n\t\t\t\tthrow Error(\n\t\t\t\t\t`component name mismatch, expected \"${superclass.componentName}\", current \"${currentComponentName}\"`\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\t\t\tthis.#checkComponentName();\n\t\t}\n\t};\n","export const hoverableMixin = (superclass) =>\n\tclass HoverableMixinClass extends superclass {\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.baseElement.addEventListener('mouseover', (e) => {\n\t\t\t\tthis.setAttribute('hover', 'true');\n\t\t\t\te.target.addEventListener(\n\t\t\t\t\t'mouseleave',\n\t\t\t\t\t() => this.removeAttribute('hover'),\n\t\t\t\t\t{ once: true }\n\t\t\t\t);\n\t\t\t})\n\t\t}\n\t};\n","import { observeAttributes } from \"../helpers/componentHelpers\";\n\nconst booleanAttributesList = [\n 'readonly',\n 'focused',\n 'invalid',\n 'has-label',\n 'required',\n 'disabled',\n 'checked',\n 'has-helper',\n 'has-value',\n 'step-buttons-visible',\n 'hover',\n 'has-error-message',\n 'focus-ring',\n 'opened',\n 'active',\n 'password-visible'\n]\n\nconst isBooleanAttribute = (attr) => {\n return booleanAttributesList.includes(attr)\n}\n// we want all the valueless attributes to have \"true\" value\n// and all the falsy attribute to be removed\nexport const normalizeBooleanAttributesMixin = (superclass) => class NormalizeBooleanAttributesMixinClass extends superclass {\n init() {\n super.init?.();\n\n observeAttributes(this, (attrs) =>\n attrs.forEach(attr => {\n const attrVal = this.getAttribute(attr)\n\n if (isBooleanAttribute(attr)) {\n if (attrVal === '') {\n this.setAttribute(attr, 'true')\n } else if (attrVal === 'false') {\n this.removeAttribute(attr)\n }\n } else if (!attrVal) {\n console.warn(`attribute \"${attr}\" has no value, should it be added to the boolean attributes list?`)\n }\n }), {})\n }\n}\n","import { compose } from \"../helpers\";\nimport { componentNameValidationMixin } from \"../mixins/componentNameValidationMixin\";\nimport { hoverableMixin } from \"../mixins/hoverableMixin\";\nimport { normalizeBooleanAttributesMixin } from \"../mixins/normalizeBooleanAttributesMixin\";\n\nexport const createBaseClass = ({ componentName, baseSelector = '' }) => {\n class DescopeBaseClass extends HTMLElement {\n static get componentName() {\n return componentName;\n }\n\n #baseElement;\n\n #isInit = true;\n\n // base selector is the selector for the component wrapper,\n // it's the highest element that is relevant for the layout\n get baseSelector() {\n return baseSelector\n }\n\n // this is the base element, which returned by querying the base selector\n get baseElement() {\n this.#baseElement ??= this.baseSelector ?\n this.rootElement.querySelector(this.baseSelector) :\n this;\n\n if(!this.#baseElement) {\n console.warn('missing base element for component', this.localName)\n }\n return this.#baseElement\n }\n\n // this is the component root level element, \n // it can be either a shadow root or the component's node from the light DOM\n get rootElement() {\n return this.shadowRoot || this\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n\n if (this.rootElement.isConnected) {\n // the init function is running once, on the first time the component is connected\n if (this.#isInit) {\n this.#isInit = false\n this.init?.();\n }\n }\n }\n }\n\n return compose(\n componentNameValidationMixin,\n hoverableMixin,\n normalizeBooleanAttributesMixin\n )(DescopeBaseClass)\n}\n","\n// create a dispatch event function that also calls to the onevent function in case it's set\n// usage example:\n// #dispatchSomething = createDispatchEvent.bind(this, 'something' { ...options })\n// this will dispatch a new event when called, but also call to \"onsomething\"\nexport function createDispatchEvent(eventName, options = {}) {\n const event = new Event(eventName, options)\n\n this[`on${eventName}`]?.(event); // in case we got an event callback as property\n this.dispatchEvent(event);\n}\n\n// add an event listener that is automatically removed on disconnect\n// usage example:\n// createEventListener.call(this,'change', this.onChange, { element? , ...options })\nexport function createEventListener(event, callback, { element, ...options } = {}) {\n const timerId = setTimeout(() => console.warn(this.localName, 'is not using \"lifecycleEventsMixin\", events will not be removed automatically on disconnect'), 2000)\n\n this.addEventListener('connected', () => {\n clearTimeout(timerId);\n }, { once: true })\n\n const targetEle = element || this;\n const boundCallback = callback.bind(this);\n\n const onDisconnect = () => {\n targetEle.removeEventListener(event, boundCallback);\n }\n\n this.addEventListener('disconnected', onDisconnect, { once: true })\n\n targetEle.addEventListener(event, boundCallback, options);\n\n return onDisconnect\n}\n","import { createBaseClass } from '../baseClasses/createBaseClass';\nimport { isFunction } from '../helpers';\nimport { forwardProps, syncAttrs } from '../helpers/componentHelpers';\nimport { createDispatchEvent } from '../helpers/mixinsHelpers';\n\nexport const createProxy = ({\n\tcomponentName,\n\twrappedEleName,\n\tslots = [],\n\tstyle,\n\texcludeAttrsSync = [],\n\tincludeAttrsSync = [],\n\tincludeForwardProps = []\n}) => {\n\tclass ProxyClass extends createBaseClass({ componentName, baseSelector: wrappedEleName }) {\n\t\t#dispatchBlur = createDispatchEvent.bind(this, 'blur')\n\t\t#dispatchFocus = createDispatchEvent.bind(this, 'focus')\n\n\t\tconstructor() {\n\t\t\tsuper().attachShadow({ mode: 'open', delegatesFocus: true }).innerHTML = `\n\t\t\t<style id=\"create-proxy\">${isFunction(style) ? style() : style\n\t\t\t\t}</style>\n\t\t\t<${wrappedEleName}>\n\t\t\t<slot></slot>\n\t\t\t${slots.map((slot) => `<slot name=\"${slot}\" slot=\"${slot}\"></slot>`).join('')}\n\t\t\t</${wrappedEleName}>\n\t\t`;\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.baseElement.addEventListener('blur', (e) => {\n\t\t\t\tthis.#dispatchBlur()\n\t\t\t})\n\n\t\t\tthis.baseElement.addEventListener('focus', (e) => {\n\t\t\t\tthis.#dispatchFocus()\n\t\t\t})\n\n\t\t\t// this is needed for components that uses props, such as combo box\n\t\t\tforwardProps(this.baseElement, this, includeForwardProps);\n\n\t\t\tsyncAttrs(this.baseElement, this, {\n\t\t\t\texcludeAttrs: excludeAttrsSync,\n\t\t\t\tincludeAttrs: includeAttrsSync\n\t\t\t});\n\t\t}\n\t}\n\n\treturn ProxyClass;\n};\n","const observedAttributes = [\n 'required',\n 'pattern',\n]\n\nconst errorAttributes = {\n valueMissing: 'data-errormessage-value-missing',\n patternMismatch: 'data-errormessage-pattern-mismatch',\n tooShort: 'data-errormessage-pattern-mismatch-too-short',\n tooLong: 'data-errormessage-pattern-mismatch-too-long',\n}\nexport const inputValidationMixin = (superclass) => class InputValidationMixinClass extends superclass {\n static get observedAttributes() {\n return [\n ...superclass.observedAttributes || [],\n ...observedAttributes\n ];\n }\n\n static get formAssociated() {\n return true;\n }\n\n #internals\n\n constructor() {\n super();\n\n this.#internals = this.attachInternals();\n }\n\n get defaultErrorMsgValueMissing() {\n return 'Please fill out this field.'\n }\n\n get defaultErrorMsgPatternMismatch() {\n return 'Please match the requested format.'\n }\n\n get defaultErrorMsgTooShort() {\n return `Minimum length is ${this.getAttribute('minlength')}.`\n }\n\n get defaultErrorMsgTooLong() {\n return `Maximum length is ${this.getAttribute('maxlength')}. `\n }\n\n getErrorMessage(flags) {\n const {\n valueMissing,\n patternMismatch,\n typeMismatch,\n stepMismatch,\n tooShort,\n tooLong,\n rangeOverflow,\n rangeUnderflow,\n badInput,\n customError\n } = flags;\n switch (true) {\n case valueMissing:\n return this.getAttribute(errorAttributes.valueMissing) ||\n this.defaultErrorMsgValueMissing\n case patternMismatch || typeMismatch || stepMismatch || rangeOverflow || rangeUnderflow || badInput:\n return this.getAttribute(errorAttributes.patternMismatch) ||\n this.defaultErrorMsgPatternMismatch\n case tooShort:\n return this.getAttribute(errorAttributes.tooShort) ||\n this.defaultErrorMsgTooShort\n case tooLong:\n return this.getAttribute(errorAttributes.tooLong) ||\n this.defaultErrorMsgTooLong\n case customError:\n return this.validationMessage\n default:\n return ''\n }\n }\n\n #setValidity() {\n const validity = this.isReadOnly ? {} : this.getValidity()\n this.#internals.setValidity(validity, this.getErrorMessage(validity), this.validationTarget)\n }\n\n get validationMessage() {\n return this.#internals.validationMessage;\n }\n\n getValidity() {\n console.warn('getValidity', 'is not implemented')\n }\n\n checkValidity() {\n return this.#internals.validity.valid\n }\n\n reportValidity() {\n return this.#internals.reportValidity()\n }\n\n get validity() {\n return this.#internals.validity\n }\n\n get validationTarget() {\n return this.inputElement\n }\n\n setCustomValidity(errorMessage) {\n if (errorMessage) {\n this.#internals.setValidity({ customError: true }, errorMessage, this.validationTarget)\n } else {\n this.#internals.setValidity({})\n this.#setValidity()\n }\n }\n\n get isRequired() {\n return this.hasAttribute('required') && this.getAttribute('required') !== 'false'\n }\n\n get isReadOnly() {\n return this.hasAttribute('readonly') && this.getAttribute('readonly') !== 'false'\n }\n\n get pattern() {\n return this.getAttribute('pattern')\n }\n\n get form() {\n return this.#internals.form\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (observedAttributes.includes(attrName)) {\n this.#setValidity();\n }\n }\n\n init() {\n super.init?.();\n this.addEventListener('change', this.#setValidity)\n this.addEventListener('invalid', (e) => e.stopPropagation())\n this.addEventListener('input', this.#setValidity)\n\n // The attribute sync takes time, so getValidity returns valid,\n // even when it shouldn't. This way allows all attributes to sync\n // after render, before checking the validity.\n setTimeout(() => this.#setValidity());\n }\n}\n","import { compose } from \"../helpers\";\nimport { forwardAttrs, getComponentName } from \"../helpers/componentHelpers\";\nimport { createDispatchEvent } from \"../helpers/mixinsHelpers\";\nimport { createStyleMixin } from \"./createStyleMixin\";\nimport { inputValidationMixin } from \"./inputValidationMixin\";\n\nconst errorAttrs = ['invalid', 'required'];\n\nconst propertyObserver = (src, target, property) => {\n\tObject.defineProperty(src, property, {\n\t\tset: function (v) {\n\t\t\treturn (target[property] = v);\n\t\t},\n\t\tget: function () {\n\t\t\treturn target[property];\n\t\t},\n\t\tconfigurable: true\n\t});\n};\n\n// recursively take the first slot child until it finds an element which is not a slot\n// stops after \"nestingLevel\" times\nconst getNestedInput = (ele) => {\n\tif (!ele) return;\n\n\tconst nestingLevel = 10\n\n\tlet nonSlotEle = ele\n\tfor (let i = 0; i < nestingLevel; i++) {\n\t\tnonSlotEle = nonSlotEle.assignedElements()[0]\n\t\tif (nonSlotEle.localName !== 'slot') return nonSlotEle\n\t}\n}\n\nconst proxyInputMixin = (superclass) =>\n\tclass ProxyInputMixinClass extends inputValidationMixin(superclass) {\n\t\tstatic get observedAttributes() {\n\t\t\treturn [...superclass.observedAttributes || [], ...errorAttrs];\n\t\t}\n\n\t\t#inputElement\n\n\t\t#dispatchChange = createDispatchEvent.bind(this, 'change')\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#inputElement = super.inputElement\n\t\t}\n\n\t\t// the web-component does not loaded immediately, so we want to defer the warning\n\t\t// and show it only if the input element was not found after the component is loaded\n\t\twarnIfInputElementIsMissing() {\n\t\t\tclearTimeout(this.inputElementTimerId)\n\n\t\t\tthis.inputElementTimerId = setTimeout(() => {\n\t\t\t\t!this.#inputElement && console.warn(this.localName, 'no input was found');\n\t\t\t}, 0)\n\t\t}\n\n\t\tget name () {\n\t\t\treturn this.getAttribute('name');\n\t\t}\n\n\t\tget inputElement() {\n\t\t\tthis.warnIfInputElementIsMissing()\n\n\t\t\tconst inputSlot = this.baseElement.shadowRoot?.querySelector('slot[name=\"input\"]')\n\t\t\tconst textAreaSlot = this.baseElement.shadowRoot?.querySelector('slot[name=\"textarea\"]')\n\n\t\t\tthis.#inputElement ??= getNestedInput(inputSlot) || getNestedInput(textAreaSlot)\n\n\t\t\treturn this.#inputElement\n\t\t}\n\n\t\tset inputElement(ele) {\n\t\t\tthis.#inputElement = ele\n\t\t}\n\n\t\tgetValidity() {\n\t\t\treturn this.inputElement?.validity || {}\n\t\t}\n\n\t\thandleInternalInputErrorMessage() {\n\t\t\tif (!this.inputElement.checkValidity()) {\n\t\t\t\tthis.inputElement.setCustomValidity(this.validationMessage)\n\t\t\t}\n\t\t}\n\n\t\t#handleErrorMessage() {\n\t\t\tthis.handleInternalInputErrorMessage()\n\t\t\tthis.setAttribute('error-message', this.validationMessage)\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.inputElement.addEventListener('input', (e) => {\n\t\t\t\tif (!this.inputElement.checkValidity()) {\n\t\t\t\t\tthis.inputElement.setCustomValidity('')\n\t\t\t\t\t// after updating the input validity we want to trigger set validity on the wrapping element\n\t\t\t\t\t// so we will get the updated validity\n\t\t\t\t\tthis.setCustomValidity('')\n\n\t\t\t\t\t// Vaadin is getting the input event before us, \n\t\t\t\t\t// so in order to make sure they use the updated validity\n\t\t\t\t\t// we calling their fn after updating the input validity\n\t\t\t\t\tthis.baseElement.__onInput(e)\n\n\t\t\t\t\tthis.#handleErrorMessage()\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.baseElement.addEventListener('change', () => {\n\t\t\t\tthis.#dispatchChange()\n\t\t\t})\n\n\t\t\tthis.#inputElement.addEventListener('blur', () => {\n\t\t\t\tif (!this.checkValidity()) {\n\t\t\t\t\tthis.setAttribute('invalid', 'true')\n\t\t\t\t\tthis.#handleErrorMessage()\n\t\t\t\t}\n\t\t\t})\n\n\n\t\t\tthis.addEventListener('invalid', () => {\n\t\t\t\tif (!this.checkValidity()) {\n\t\t\t\t\tthis.setAttribute('invalid', 'true');\n\t\t\t\t}\n\t\t\t\tthis.#handleErrorMessage()\n\t\t\t})\n\n\t\t\tthis.handleInternalInputErrorMessage();\n\n\t\t\t// sync properties\n\t\t\tpropertyObserver(this, this.inputElement, 'value');\n\t\t\tpropertyObserver(this, this.inputElement, 'selectionStart');\n\t\t\tthis.setSelectionRange = this.inputElement.setSelectionRange?.bind(this.inputElement);\n\n\t\t\tforwardAttrs(this, this.inputElement, { includeAttrs: ['inputmode'] })\n\t\t}\n\t};\n\nconst composedProxyInputMixin = compose(\n\tproxyInputMixin,\n\tcreateStyleMixin({ componentNameOverride: getComponentName('input-wrapper') }))\n\nexport { composedProxyInputMixin as proxyInputMixin }\n","import { PORTAL_THEME_PREFIX } from \"../constants\";\nimport { kebabCaseJoin, upperFirst } from \"../helpers\";\nimport { forwardAttrs } from \"../helpers/componentHelpers\";\nimport { createStyleMixin } from \"./createStyleMixin\";\nimport { createCssVarsList } from \"./createStyleMixin/helpers\";\n\n// this is needed because we might generate the same css vars names\n// e.g. \"overlayColor\" attribute in style mixin's mapping, \n// will generate the same var as \"color\" attribute in portals's mapping \n// when the portal name is \"overlay\".\n// because of that, we are adding this separator that is also used as a differentiator\nconst DISPLAY_NAME_SEPARATOR = '_'\n\nconst sanitizeSelector = (selector) => selector.replace(/[^\\w\\s]/gi, '');\n\nconst getDomNode = (maybeDomNode) => maybeDomNode.host || maybeDomNode;\n\nexport const portalMixin = ({\n name,\n selector,\n mappings = {},\n forward: { attributes = [], include = true } = {}\n}) => (superclass) => {\n const eleDisplayName = name || sanitizeSelector(selector)\n\n const BaseClass = createStyleMixin({\n mappings\n })(superclass)\n\n return class PortalMixinClass extends BaseClass {\n static get cssVarList() {\n return {\n ...BaseClass.cssVarList,\n [eleDisplayName]: createCssVarsList(kebabCaseJoin(superclass.componentName, DISPLAY_NAME_SEPARATOR + eleDisplayName), mappings)\n };\n }\n\n #portalEle\n\n constructor() {\n // we cannot use \"this\" before calling \"super\"\n const getRootElement = (that) => {\n const baseEle = that.shadowRoot.querySelector(that.baseSelector)\n const portal = selector ? baseEle.shadowRoot.querySelector(selector) : baseEle\n\n return portal.shadowRoot || portal\n };\n\n super({\n getRootElement,\n componentNameSuffix: DISPLAY_NAME_SEPARATOR + eleDisplayName,\n themeSection: PORTAL_THEME_PREFIX + eleDisplayName,\n baseSelector: ':host'\n })\n\n this.#portalEle = getDomNode(getRootElement(this))\n }\n\n #handleHoverAttribute() {\n this.#portalEle.onmouseenter = (e) => { e.target.setAttribute('hover', 'true') }\n this.#portalEle.onmouseleave = (e) => { e.target.removeAttribute('hover') }\n }\n\n init() {\n super.init?.();\n forwardAttrs(this, this.#portalEle, { [include ? 'includeAttrs' : 'excludeAttrs']: attributes })\n\n this.#handleHoverAttribute();\n }\n }\n}\n","import { createDispatchEvent } from \"../helpers/mixinsHelpers\";\n\nexport const changeMixin = (superclass) => class ChangeMixinClass extends superclass {\n #dispatchChange = createDispatchEvent.bind(this, 'change')\n\n init() {\n super.init?.();\n this.prevValue = this.value\n\n this.addEventListener('change', (e) => {\n e.stopPropagation();\n })\n\n this.addEventListener('blur', () => {\n if (this.value !== this.prevValue) {\n this.#dispatchChange()\n this.prevValue = this.value\n }\n })\n }\n}\n","import { createDispatchEvent } from \"../helpers/mixinsHelpers\";\n\nexport const inputEventsDispatchingMixin = (superclass) => class InputEventsDispatchingMixinClass extends superclass {\n init() {\n this.#blockNativeEvents();\n\n super.init?.();\n }\n\n // we want to block the native (trusted) events and control when these events are being dispatched\n #blockNativeEvents() {\n ['blur', 'focus', 'focusin', 'focusout'].forEach(event => {\n this.addEventListener(event, (e) => {\n e.isTrusted && e.target === this && e.stopImmediatePropagation()\n })\n })\n }\n\n handleFocusEventsDispatching(inputs) {\n let timerId\n\n // in order to simulate blur & focusout on root input element\n // we are checking if focus on one of the inner elements happened immediately after blur\n // if not, the component is no longer focused and we should dispatch blur & focusout\n inputs?.forEach(input => {\n input?.addEventListener('focusout', (e) => {\n e.stopImmediatePropagation();\n timerId = setTimeout(() => {\n timerId = null\n\n createDispatchEvent.call(this, 'blur');\n createDispatchEvent.call(this, 'focusout', { bubbles: true });\n });\n })\n\n // in order to simulate focus & focusin on the root input element\n // we are holding a timer id and clearing it on focusin\n // if there is a timer id, it means that the root input is still focused\n // otherwise, it was not focused before, and we should dispatch focus & focusin\n const onFocus = (e) => {\n e.stopImmediatePropagation();\n clearTimeout(timerId)\n if (!timerId) {\n createDispatchEvent.call(this, 'focus');\n createDispatchEvent.call(this, 'focusin', { bubbles: true });\n }\n }\n\n // some components are not dispatching focusin but only focus\n input?.addEventListener('focusin', onFocus)\n input?.addEventListener('focus', onFocus)\n })\n }\n\n // we want to block the input events from propagating in case the value of the root input wasn't change\n // this can happen if we are sanitizing characters on the internal inputs and do not want it to affect the root input element value\n // in this case, on each input event, we are comparing the root input value to the previous one, and only if it does not match, we are allowing the input event to propagate\n handleInputEventDispatching() {\n let previousRootComponentValue = this.value\n\n this.addEventListener('input', (e) => {\n // we are comparing the previous value to the new one,\n // and if they have the same value, we are blocking the input event\n if (previousRootComponentValue === this.value) {\n e.stopImmediatePropagation();\n } else {\n previousRootComponentValue = this.value\n }\n });\n }\n}\n","import { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\nimport {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcomponentNameValidationMixin\n} from '../../mixins';\n\nexport const componentName = getComponentName('button');\n\nconst resetStyles = `\n\t:host {\n\t\tdisplay: inline-block;\n\t\tbox-sizing: border-box;\n\t}\n\tvaadin-button {\n\t\tmargin: 0;\n\t\tmin-width: 0;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tbox-shadow: none;\n\t}\n\tvaadin-button::part(label) {\n\t\tpadding: 0;\n\t}\n\tvaadin-button::part(prefix) {\n\t\tmargin-left: 0;\n\t\tmargin-right: 0;\n\t}\n`;\n\nconst iconStyles = `\n\tvaadin-button::part(prefix),\n\tvaadin-button::part(label) {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n`;\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\n\nconst { host, label } = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n};\n\nexport const ButtonClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tfontSize: {},\n\t\t\tfontFamily: {},\n\n\t\t\tcursor: {},\n\t\t\tbackgroundColor: {},\n\n\t\t\toutlineOffset: {},\n\t\t\toutlineColor: {},\n\t\t\toutlineStyle: {},\n\t\t\toutlineWidth: {},\n\n\t\t\tborderRadius: {},\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\n\t\t\tverticalPadding: [\n\t\t\t\t{ property: 'padding-top' },\n\t\t\t\t{ property: 'padding-bottom' },\n\t\t\t],\n\t\t\thorizontalPadding: [\n\t\t\t\t{ property: 'padding-left' },\n\t\t\t\t{ property: 'padding-right' },\n\t\t\t],\n\n\t\t\tlabelTextColor: { property: 'color' },\n\t\t\tlabelTextDecoration: { ...label, property: 'text-decoration' },\n\t\t\tlabelSpacing: { ...label, property: 'gap' },\n\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'label', 'suffix'],\n\t\twrappedEleName: 'vaadin-button',\n\t\tstyle: () => `\n\t\t\t${resetStyles}\n\t\t\t${iconStyles}\n\t\t\t${loadingIndicatorStyles}\n\t\t\t${editorOverrides}\n\t\t\t${useHostExternalPadding(ButtonClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nconst { color, fontSize } = ButtonClass.cssVarList;\nconst loadingIndicatorStyles = `\n\t@keyframes spin {\n\t\t0% { -webkit-transform: rotate(0deg); }\n\t\t100% { -webkit-transform: rotate(360deg); }\n\t}\n\t:host([loading=\"true\"]) ::before {\n\t\tanimation: spin 2s linear infinite;\n\t\tposition: absolute;\n\t\tcontent: '';\n\t\tz-index: 1;\n\t\tbox-sizing: border-box;\n\t\tborder-radius: 50%;\n\t\tborder-bottom-color: transparent;\n\t\tborder-left-color: transparent;\n\t\tborder-style: solid;\n\t\tcolor: var(${color});\n\t\ttop: calc(50% - (var(${fontSize}) / 2));\n\t\tleft: calc(50% - (var(${fontSize}) / 2));\n\t\tborder-width: calc(var(${fontSize}) / 10);\n\t\twidth: var(${fontSize});\n\t\theight: var(${fontSize});\n\t}\n\t:host([loading=\"true\"])::part(prefix),\n\t:host([loading=\"true\"])::part(label) {\n\t\tvisibility: hidden;\n\t}\n`;\n","import globals from '../globals';\nimport { getThemeRefs, createHelperVars } from '../../helpers/themeHelpers';\nimport { componentName, ButtonClass } from '../../components/descope-button/ButtonClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst compVars = ButtonClass.cssVarList;\n\nconst mode = {\n\tprimary: globalRefs.colors.primary,\n\tsecondary: globalRefs.colors.secondary,\n\tsuccess: globalRefs.colors.success,\n\terror: globalRefs.colors.error,\n\tsurface: globalRefs.colors.surface\n};\n\nconst [helperTheme, helperRefs, helperVars] = createHelperVars({ mode }, componentName);\n\nconst verticalPaddingRatio = 3;\nconst horizontalPaddingRatio = 2;\n\nconst button = {\n\t...helperTheme,\n\n\t[compVars.fontFamily]: globalRefs.fonts.font1.family,\n\n\t[compVars.cursor]: 'pointer',\n\n\t[compVars.borderRadius]: globalRefs.radius.sm,\n\t[compVars.borderWidth]: '2px',\n\t[compVars.borderStyle]: 'solid',\n\t[compVars.borderColor]: 'transparent',\n\n\t[compVars.labelSpacing]: '0.25em',\n\n\t[compVars.verticalPadding]: `calc(var(${compVars.fontSize}) / ${verticalPaddingRatio})`,\n\t[compVars.horizontalPadding]: `calc(var(${compVars.fontSize}) / ${horizontalPaddingRatio})`,\n\n\t[compVars.outlineWidth]: globals.border.sm,\n\t[compVars.outlineOffset]: '1px',\n\t[compVars.outlineStyle]: 'solid',\n\t[compVars.outlineColor]: 'transparent',\n\n\tsize: {\n\t\txs: { [compVars.fontSize]: '12px' },\n\t\tsm: { [compVars.fontSize]: '14px' },\n\t\tmd: { [compVars.fontSize]: '16px' },\n\t\tlg: { [compVars.fontSize]: '18px' }\n\t},\n\n\t_fullWidth: {\n\t\t[compVars.hostWidth]: '100%'\n\t},\n\n\t_loading: {\n\t\t[compVars.cursor]: 'wait'\n\t},\n\n\tvariant: {\n\t\tcontained: {\n\t\t\t[compVars.labelTextColor]: helperRefs.contrast,\n\t\t\t[compVars.backgroundColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[compVars.backgroundColor]: helperRefs.dark\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.backgroundColor]: helperRefs.dark\n\t\t\t}\n\t\t},\n\n\t\toutline: {\n\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t[compVars.borderColor]: 'currentColor',\n\t\t\t_hover: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.dark,\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.light,\n\t\t\t}\n\t\t},\n\n\t\tlink: {\n\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t\t[compVars.labelTextDecoration]: 'underline'\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.dark\n\t\t\t}\n\t\t}\n\t},\n\n\t_focused: {\n\t\t[compVars.outlineColor]: globals.colors.surface.main,\n\t}\n};\n\nexport default button;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","const {\n\thost,\n\tlabel,\n\tplaceholder,\n\trequiredIndicator,\n\tinputField,\n\tinput,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tplaceholder: { selector: '> input:placeholder-shown' },\n\tinputField: { selector: '::part(input-field)' },\n\tinput: { selector: 'input' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport default {\n\t// we apply font-size also on the host so we can set its width with em\n\tfontSize: [\n\t\t{},\n\t\thost,\n\t],\n\tfontFamily: [\n\t\tlabel,\n\t\tinputField,\n\t\thelperText,\n\t\terrorMessage,\n\t],\n\n\thostWidth: { ...host, property: 'width' },\n\thostMinWidth: { ...host, property: 'min-width' },\n\n\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\n\tlabelTextColor: [\n\t\t{ ...label, property: 'color' },\n\t\t{ ...requiredIndicator, property: 'color' }\n\t],\n\n\tinputValueTextColor: { ...inputField, property: 'color' },\n\tinputCaretTextColor: { ...input, property: 'color' },\n\n\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\tinputBorderColor: { ...inputField, property: 'border-color' },\n\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\tinputHeight: { ...inputField, property: 'height' },\n\tinputHorizontalPadding: [\n\t\t{ ...input, property: 'padding-left' },\n\t\t{ ...input, property: 'padding-right' }\n\t],\n\n\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\n\tinputTextAlign: { ...input, property: 'text-align' },\n\n\tinputPlaceholderColor: { ...placeholder, property: 'color' }\n};\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from './textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('text-field');\n\nconst observedAttrs = ['type'];\n\nconst customMixin = (superclass) =>\n\tclass TextFieldClass extends superclass {\n\t\tstatic get observedAttributes() {\n\t\t\treturn observedAttrs.concat(superclass.observedAttributes || []);\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldVal, newVal) {\n\t\t\tsuper.attributeChangeCallback?.(attrName, oldVal, newVal);\n\n\t\t\t// Vaadin doesn't allow to change the input type attribute.\n\t\t\t// We need the ability to do that, so we're overriding their\n\t\t\t// behavior with their private API.\n\t\t\t// When receiving a `type` attribute, we use their private API\n\t\t\t// to set it on the input.\n\t\t\tif (attrName === 'type') {\n\t\t\t\tthis.baseElement._setType(newVal);\n\t\t\t}\n\t\t}\n\t}\n\nexport const TextFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tcustomMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${TextFieldClass.cssVarList.inputOutlineWidth}) + var(${TextFieldClass.cssVarList.inputOutlineOffset}));\n\t\t\t}\n\t\t\t${useHostExternalPadding(TextFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-text-field', TextFieldClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { createHelperVars } from '../../helpers/themeHelpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nconst componentName = getComponentName('input-wrapper');\nconst globalRefs = getThemeRefs(globals);\n\nconst [theme, refs, vars] = createHelperVars({\n labelTextColor: globalRefs.colors.surface.contrast,\n valueTextColor: globalRefs.colors.surface.contrast,\n placeholderTextColor: globalRefs.colors.surface.main,\n requiredIndicator: \"'*'\",\n\n borderWidth: globalRefs.border.xs,\n borderRadius: globalRefs.radius.xs,\n borderColor: 'transparent',\n\n outlineWidth: globalRefs.border.sm,\n outlineStyle: 'solid',\n outlineColor: 'transparent',\n outlineOffset: '0px', // we need to keep the px unit even for 0 value, as this var is used for calc in different component classes\n\n minWidth: '10em',\n toggleButtonSize: '1.5em',\n inputHeight: '3em',\n horizontalPadding: '0.5em',\n verticalPadding: '0.5em',\n\n backgroundColor: globalRefs.colors.surface.light,\n\n fontFamily: globalRefs.fonts.font1.family,\n\n size: {\n xs: { fontSize: '12px' },\n sm: { fontSize: '14px' },\n md: { fontSize: '16px' },\n lg: { fontSize: '18px' }\n },\n\n _fullWidth: {\n width: '100%',\n },\n\n _focused: {\n outlineColor: globalRefs.colors.surface.main,\n _invalid: {\n outlineColor: globalRefs.colors.error.main,\n }\n },\n\n _bordered: {\n outlineWidth: globalRefs.border.xs,\n borderColor: globalRefs.colors.surface.main,\n borderStyle: 'solid',\n _invalid: {\n borderColor: globalRefs.colors.error.main,\n }\n },\n\n _disabled: {\n labelTextColor: globalRefs.colors.surface.main,\n borderColor: globalRefs.colors.surface.main,\n valueTextColor: globalRefs.colors.surface.dark,\n placeholderTextColor: globalRefs.colors.surface.dark,\n backgroundColor: globalRefs.colors.surface.main\n }\n}, componentName);\n\nexport { refs, vars };\nexport default theme;\n","import { TextFieldClass } from '../../components/descope-text-field/TextFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = TextFieldClass.cssVarList;\n\nexport const textField = ({\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding\n});\n\nexport default textField;\nexport { vars }\n","const passwordDraggableMixin = (superclass) => class PasswordDraggableMixinClass extends superclass {\n\tget isReadOnly() {\n\t\treturn this.hasAttribute('readonly') && this.getAttribute('readonly') !== 'false'\n\t}\n\n\tinit() {\n\t\t// there is an issue in Chrome that input field with type password cannot be D&D\n\t\t// so in case the input is draggable & readonly, we are changing the input type to \"text\" before dragging \n\t\t// and return the original type when done\n\t\tthis.addEventListener('mousedown', (e) => {\n\t\t\tif (this.isDraggable & this.isReadOnly) {\n\t\t\t\tconst inputEle = this.baseElement.querySelector('input');\n\t\t\t\tconst prevType = inputEle.getAttribute('type')\n\n\t\t\t\tinputEle.setAttribute('type', 'text');\n\t\t\t\tsetTimeout(() => inputEle.focus());\n\n\t\t\t\tconst onComplete = (e) => {\n\t\t\t\t\tinputEle.setAttribute('type', prevType)\n\n\t\t\t\t\te.target.removeEventListener('mouseup', onComplete)\n\t\t\t\t\te.target.removeEventListener('dragend', onComplete)\n\t\t\t\t}\n\n\t\t\t\te.target.addEventListener('mouseup', onComplete, { once: true })\n\t\t\t\te.target.addEventListener('dragend', onComplete, { once: true })\n\t\t\t}\n\t\t})\n\n\t\tsuper.init?.();\n\t}\n}\n\nexport default passwordDraggableMixin","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport passwordDraggableMixin from './passwordDraggableMixin';\nimport { resetInputCursor, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('password');\n\nconst {\n\thost,\n\tinputField,\n\tinputElement,\n\tinputElementPlaceholder,\n\trevealButtonContainer,\n\trevealButtonIcon,\n\tlabel,\n\trequiredIndicator,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tinputField: { selector: '::part(input-field)' },\n\tinputElement: { selector: '> input' },\n\tinputElementPlaceholder: { selector: '> input:placeholder-shown' },\n\trevealButtonContainer: { selector: () => '::part(reveal-button)' },\n\trevealButtonIcon: { selector: () => '::part(reveal-button)::before' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\nexport const PasswordClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tfontSize: [\n\t\t\t\t{},\n\t\t\t\thost,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tinputField,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText\n\t\t\t],\n\t\t\tinputHeight: { ...inputField, property: 'height' },\n\t\t\tinputHorizontalPadding: [\n\t\t\t\t{ ...inputElement, property: 'padding-left' },\n\t\t\t\t{ ...inputElement, property: 'padding-right' }\n\t\t\t],\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tinputValueTextColor: [\n\t\t\t\t{ ...inputElement, property: 'color' },\n\t\t\t\t{ ...revealButtonIcon, property: 'color' }\n\t\t\t],\n\t\t\tinputPlaceholderTextColor: { ...inputElementPlaceholder, property: 'color' },\n\n\t\t\trevealButtonOffset: [\n\t\t\t\t{ ...revealButtonContainer, property: 'margin-right' },\n\t\t\t\t{ ...revealButtonContainer, property: 'margin-left' }\n\t\t\t],\n\t\t\trevealButtonSize: { ...revealButtonContainer, property: 'font-size' },\n\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tpasswordDraggableMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-password-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 10em;\n\t\t\t}\n\t\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\t\t${resetInputCursor('vaadin-password-field')}\n\n\t\t\tvaadin-password-field {\n\t\t\t\twidth: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field > input {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field) {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\t\t\t\n\t\t\tvaadin-password-field > input {\n\t\t\t\tmin-height: 0;\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t}\n\t\t\tvaadin-password-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\tvaadin-password-field::before {\n\t\t\t\theight: initial;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field)::after {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field-button {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t[readonly] vaadin-password-field-button {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\n\t\t\tvaadin-password-field-button[focus-ring] {\n\t\t\t\tbox-shadow: 0 0 0 2px var(${PasswordClass.cssVarList.inputOutlineColor});\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { PasswordClass } from '../../components/descope-password/PasswordClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = PasswordClass.cssVarList;\n\nconst password = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.revealButtonOffset]: globalRefs.spacing.md,\n\t[vars.revealButtonSize]: refs.toggleButtonSize\n};\n\nexport default password;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('number-field');\n\nexport const NumberFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-number-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${NumberFieldClass.cssVarList.inputOutlineWidth}) + var(${NumberFieldClass.cssVarList.inputOutlineOffset}));\n\t\t\t}\n\t\t\t${useHostExternalPadding(NumberFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-number-field', NumberFieldClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { NumberFieldClass } from '../../components/descope-number-field/NumberFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = NumberFieldClass.cssVarList;\n\nconst numberField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight\n};\n\nexport default numberField;\nexport { vars };\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('email-field');\n\nexport const EmailFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-email-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${EmailFieldClass.cssVarList.inputOutlineWidth}) + var(${EmailFieldClass.cssVarList.inputOutlineOffset}))\n\t\t\t}\n\t\t\t${useHostExternalPadding(EmailFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-email-field', EmailFieldClass.cssVarList)}\t\t\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { EmailFieldClass } from '../../components/descope-email-field/EmailFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = EmailFieldClass.cssVarList;\n\nconst emailField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight\n};\n\nexport default emailField;\nexport { vars };\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputContainer, resetInputCursor, resetInputField, resetInputPlaceholder, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('text-area');\n\nconst {\n\thost,\n\tlabel,\n\tplaceholder,\n\tinputField,\n\ttextArea,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\tplaceholder: { selector: 'textarea:placeholder-shown' },\n\tinputField: { selector: '::part(input-field)' },\n\ttextArea: { selector: '> textarea' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport const TextAreaClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\ttextArea,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tinputField,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\t\t\tinputValueTextColor: { ...textArea, property: 'color' },\n\t\t\tinputPlaceholderTextColor: { ...placeholder, property: 'color' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-Style' },\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputResizeType: { ...textArea, property: 'resize' },\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-area',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t\t${useHostExternalPadding(TextAreaClass.cssVarList)}\n\t\t\t${resetInputContainer('vaadin-text-area')}\n\t\t\t${resetInputField('vaadin-text-area')}\n\t\t\t${resetInputPlaceholder('vaadin-text-area', 'textarea')}\n\t\t\t${resetInputCursor('vaadin-text-area')}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\n\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { TextAreaClass } from '../../components/descope-text-area/TextAreaClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextAreaClass.cssVarList;\n\nconst textArea = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: '14px',\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputResizeType]: 'vertical',\n\n\t_disabled: {\n\t\t[vars.inputBackgroundColor]: globalRefs.colors.surface.light,\n\t},\n\n\t_readonly: {\n\t\t[vars.inputResizeType]: 'none',\n\t}\n};\n\nexport default textArea;\nexport { vars }\n","import { compose } from \"../helpers\";\nimport { changeMixin, inputEventsDispatchingMixin, inputValidationMixin, normalizeBooleanAttributesMixin } from \"../mixins\";\nimport { createBaseClass } from \"./createBaseClass\";\n\nexport const createBaseInputClass = (...args) => compose(\n inputValidationMixin,\n changeMixin,\n normalizeBooleanAttributesMixin,\n inputEventsDispatchingMixin\n)(createBaseClass(...args))\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { forwardAttrs, getComponentName, syncAttrs } from '../../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('boolean-field-internal');\n\nconst forwardAttributes = [\n\t'disabled',\n\t'label',\n\t'invalid',\n\t'readonly'\n];\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' })\n\nclass BooleanInputInternal extends BaseInputClass {\n\tconstructor() {\n\t\tsuper();\n\t\tthis.innerHTML = `\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<vaadin-checkbox></vaadin-checkbox>\n\t\t\t</div>\n\t\t`;\n\t\tthis.wrapperEle = this.querySelector('div');\n\t\tthis.checkbox = this.querySelector('vaadin-checkbox')\n\t}\n\n\tget value() {\n\t\treturn this.checkbox?.checked;\n\t}\n\n\tset value(val) {\n\t\tthis.checkbox.checked = val;\n\t}\n\n\tget checked() {\n\t\treturn this.value;\n\t}\n\n\tset checked(val) {\n\t\tthis.value = val;\n\t}\n\n\tinit() {\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\tif (e.isTrusted) {\n\t\t\t\tthis.checkbox.focus()\n\t\t\t}\n\t\t});\n\t\tsuper.init?.();\n\n\t\tforwardAttrs(this, this.checkbox, { includeAttrs: forwardAttributes });\n\t\tsyncAttrs(this, this.checkbox, { includeAttrs: ['checked'] });\n\n\t\t// we need it in order to set the focus ring and trigger validation on descope-checkbox\n\t\tthis.handleFocusEventsDispatching([this.checkbox])\n\t}\n\n\tgetValidity() {\n\t\tif (this.isRequired && !this.value) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\treturn {}\n\t};\n}\n\nexport default BooleanInputInternal;\n","import { forwardAttrs, forwardProps, syncAttrs } from \"../../helpers/componentHelpers\";\nimport { componentName as descopeInternalComponentName } from './descope-boolean-field-internal/BooleanFieldInternal'\n\nexport const booleanFieldMixin = (superclass) =>\n class BooleanFieldMixinClass extends superclass {\n constructor() {\n super();\n }\n\n init() {\n super.init?.();\n\n const template = document.createElement('template');\n template.innerHTML = `\n\t\t\t\t<${descopeInternalComponentName} \n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\tslot=\"input\"\n\t\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n this.baseElement.appendChild(template.content.cloneNode(true));\n this.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n this.checkbox = this.inputElement.querySelector('vaadin-checkbox');\n\n forwardAttrs(this, this.inputElement, {\n includeAttrs: [\n 'required',\n 'full-width',\n 'size',\n 'label',\n 'invalid',\n 'disabled'\n ]\n });\n\n forwardProps(this.inputElement, this, ['checked']);\n syncAttrs(this, this.inputElement, { includeAttrs: ['checked'] });\n }\n };","import { resetInputFieldDefaultWidth } from \"../../helpers/themeHelpers/resetHelpers\";\n\nexport default `\n:host {\n\tdisplay: inline-flex;\n}\n\n${resetInputFieldDefaultWidth()}\n\n.wrapper {\n\tdisplay: flex;\n\tbox-sizing: border-box;\n}\n\nvaadin-text-field {\n\tposition: relative;\n\tpadding: 0;\n\tdisplay: inline-flex;\n\talign-items: flex-start;\n}\nvaadin-text-field::before {\n\theight: 0;\n\tmargin: 0;\n}\nvaadin-text-field::part(label) {\n position: absolute;\n top: 0;\n}\nvaadin-text-field::part(input-field) {\n\tpadding: 0;\n\tbackground: none;\n\tmin-height: 0;\n}\nvaadin-text-field::part(input-field)::after {\n background: none;\n}\nvaadin-text-field[focus-ring]::part(input-field) {\n\tbox-shadow: none;\n}\n\nvaadin-checkbox [slot=\"label\"] {\n align-self: flex-start;\n opacity: 0;\n padding: 0;\n}\n[required] vaadin-checkbox [slot=\"label\"] {\n\tpadding-right: 1em;\n}\nvaadin-checkbox::part(checkbox) {\n\tmargin: 0;\n}\nvaadin-checkbox[focus-ring]::part(checkbox) {\n\tbox-shadow: none;\n}\n\ndescope-boolean-field-internal {\n\t-webkit-mask-image: none;\n\tmin-height: 0;\n\tpadding: 0;\n}\n\n[slot=\"label\"],\nvaadin-checkbox,\nvaadin-checkbox::part(checkbox) {\n\theight: 100%;\n\tcursor: pointer;\n}\n`;\n","import { getComponentName } from '../../../helpers/componentHelpers';\nimport { compose } from '../../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n\tcreateProxy\n} from '../../../mixins';\nimport { booleanFieldMixin } from '../booleanFieldMixin';\nimport commonStyles from '../commonStyles';\nimport { useHostExternalPadding } from '../../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('checkbox');\n\nconst {\n\thost,\n\tcomponent,\n\tcheckboxElement,\n\tcheckboxSurface,\n\tcheckboxHiddenLabel,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tcomponent: { selector: 'vaadin-checkbox' },\n\tcheckboxElement: { selector: 'vaadin-checkbox::part(checkbox)' },\n\tcheckboxSurface: { selector: 'vaadin-checkbox::part(checkbox)::after' },\n\tcheckboxHiddenLabel: { selector: 'vaadin-checkbox [slot=\"label\"]' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' },\n};\n\nexport const CheckboxClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\tcheckboxElement,\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t\t{ ...label, property: '-webkit-text-fill-color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tlabelFontWeight: [\n\t\t\t\t{ ...label, property: 'font-weight' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'font-weight' }\n\t\t\t],\n\t\t\tlabelSpacing: [\n\t\t\t\t{ ...label, property: 'left' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'padding-left' }\n\t\t\t],\n\t\t\tinputValueTextColor: { ...checkboxSurface, property: 'color' },\n\t\t\tinputBackgroundColor: { ...checkboxElement, property: 'background-color' },\n\n\t\t\tinputBorderRadius: { ...checkboxElement, property: 'border-radius' },\n\t\t\tinputBorderWidth: { ...checkboxElement, property: 'border-width' },\n\t\t\tinputBorderOffset: { ...checkboxElement, property: 'border-offset' },\n\t\t\tinputBorderColor: { ...checkboxElement, property: 'border-color' },\n\t\t\tinputBorderStyle: { ...checkboxElement, property: 'border-style' },\n\n\t\t\tinputOutlineWidth: { ...checkboxElement, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...checkboxElement, property: 'outline-offset' },\n\t\t\tinputOutlineColor: { ...checkboxElement, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...checkboxElement, property: 'outline-style' },\n\n\t\t\tinputSize: [\n\t\t\t\t{ ...checkboxElement, property: 'width' },\n\t\t\t\t{ ...checkboxElement, property: 'height' },\n\t\t\t\t{ ...checkboxSurface, property: 'font-size' },\n\t\t\t\t{ ...component, property: 'font-size' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'line-height' },\n\t\t\t\t{ ...label, property: 'margin-left' },\n\t\t\t\t{ ...label, property: 'line-height' },\n\t\t\t],\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tbooleanFieldMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t${commonStyles}\n\t\t\t${useHostExternalPadding(CheckboxClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { CheckboxClass } from '../../components/boolean-fields/descope-checkbox/CheckboxClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = CheckboxClass.cssVarList;\n\nconst checkbox = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.labelFontWeight]: '400',\n\t[vars.labelSpacing]: '0.75em',\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBackgroundColor]: refs.inputBackgroundColor,\n\t[vars.inputSize]: '2em',\n\n\t_checked: {\n\t\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t},\n\n\t_disabled: {\n\t\t[vars.labelTextColor]: refs.labelTextColor,\n\t},\n};\n\nexport default checkbox;\nexport { vars }\n","import { getComponentName } from '../../../helpers/componentHelpers'\nimport { compose } from '../../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n\tcreateProxy\n} from '../../../mixins';\nimport { booleanFieldMixin } from '../booleanFieldMixin';\nimport commonStyles from '../commonStyles';\nimport { useHostExternalPadding } from '../../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('switch-toggle');\n\nconst {\n\thost,\n\tcomponent,\n\tcheckboxElement: track,\n\tcheckboxSurface: knob,\n\tcheckboxHiddenLabel,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tcomponent: { selector: 'vaadin-checkbox' },\n\tcheckboxElement: { selector: 'vaadin-checkbox::part(checkbox)' },\n\tcheckboxSurface: { selector: 'vaadin-checkbox::part(checkbox)::after' },\n\tcheckboxHiddenLabel: { selector: 'vaadin-checkbox [slot=\"label\"]' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' },\n};\n\nexport const SwitchToggleClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tfontSize: [\n\t\t\t\tcomponent,\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\t\t\ttrackBorderWidth: { ...track, property: 'border-width' },\n\t\t\ttrackBorderStyle: { ...track, property: 'border-style' },\n\t\t\ttrackBorderColor: { ...track, property: 'border-color' },\n\t\t\ttrackBackgroundColor: { ...track, property: 'background-color' },\n\t\t\ttrackBorderRadius: { ...track, property: 'border-radius' },\n\t\t\ttrackWidth: [\n\t\t\t\t{ ...track, property: 'width' },\n\t\t\t],\n\t\t\ttrackHeight: [\n\t\t\t\t{ ...knob, property: 'font-size' },\n\t\t\t\t{ ...track, property: 'height' }\n\t\t\t],\n\n\t\t\tknobSize: [\n\t\t\t\t{ ...knob, property: 'width' },\n\t\t\t\t{ ...knob, property: 'height' },\n\t\t\t],\n\t\t\tknobTextColor: { ...knob, property: 'color' },\n\t\t\tknobRadius: { ...knob, property: 'border-radius' },\n\t\t\tknobTransitionDuration: { ...knob, property: 'transition' },\n\t\t\tknobColor: { ...knob, property: 'background-color' },\n\t\t\tknobTopOffset: { ...knob, property: 'top' },\n\t\t\tknobLeftOffset: { ...knob, property: 'left' },\n\n\t\t\tlabelSpacing: [\n\t\t\t\t{ ...label, property: 'padding-left' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'padding-left' }\n\t\t\t],\n\t\t\tlabelLineHeight: [\n\t\t\t\t{ ...label, property: 'line-height' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'line-height' }\n\t\t\t],\n\t\t\tlabelFontWeight: [\n\t\t\t\t{ ...label, property: 'font-weight' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'font-weight' }\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t\t{ ...label, property: '-webkit-text-fill-color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputOutlineWidth: { ...track, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...track, property: 'outline-offset' },\n\t\t\tinputOutlineColor: { ...track, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...track, property: 'outline-style' },\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tbooleanFieldMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t${commonStyles}\n\t\t\t${useHostExternalPadding(SwitchToggleClass.cssVarList)}\n\t\t\tvaadin-text-field::part(label) {\n\t\t\t\tleft: calc(var(${SwitchToggleClass.cssVarList.trackWidth}) + var(${SwitchToggleClass.cssVarList.trackBorderWidth}) * 2);\n\t\t\t}\n\t\t\tvaadin-checkbox[active]::part(checkbox) {\n\t\t\t\ttransform: none;\n\t\t\t}\n\t\t\tvaadin-checkbox::part(checkbox)::after {\n\t\t\t\tposition: absolute;\n\t\t\t\topacity: 1;\n\t\t\t\tcontent: '';\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { SwitchToggleClass } from '../../components/boolean-fields/descope-switch-toggle/SwitchToggleClass';\nimport { refs } from './inputWrapper';\n\nconst knobMargin = '2px';\nconst checkboxHeight = '1.25em';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = SwitchToggleClass.cssVarList;\n\nconst switchToggle = {\n [vars.fontSize]: refs.fontSize,\n [vars.fontFamily]: refs.fontFamily,\n\n [vars.inputOutlineWidth]: refs.outlineWidth,\n [vars.inputOutlineOffset]: refs.outlineOffset,\n [vars.inputOutlineColor]: refs.outlineColor,\n [vars.inputOutlineStyle]: refs.outlineStyle,\n\n [vars.trackBorderStyle]: refs.borderStyle,\n [vars.trackBorderWidth]: refs.borderWidth, // var `trackBorderWidth` used outside the theme for `left` margin calculation\n [vars.trackBorderColor]: refs.borderColor,\n [vars.trackBackgroundColor]: 'none',\n [vars.trackBorderRadius]: globalRefs.radius.md,\n [vars.trackWidth]: '2.5em', // var `trackWidth` used outside the theme for `left` margin calculation\n [vars.trackHeight]: checkboxHeight,\n\n [vars.knobSize]: `calc(1em - ${knobMargin})`,\n [vars.knobRadius]: '50%',\n [vars.knobTopOffset]: '1px',\n [vars.knobLeftOffset]: knobMargin,\n [vars.knobColor]: refs.valueTextColor,\n [vars.knobTransitionDuration]: '0.3s',\n\n [vars.labelTextColor]: refs.labelTextColor,\n [vars.labelFontWeight]: '400',\n [vars.labelLineHeight]: `calc(${checkboxHeight} + 0.25em)`,\n [vars.labelSpacing]: '0.25em',\n [vars.labelRequiredIndicator]: refs.requiredIndicator,\n\n [vars.hostWidth]: refs.width,\n\n _checked: {\n [vars.trackBorderColor]: refs.borderColor,\n [vars.trackBackgroundColor]: refs.backgroundColor,\n [vars.knobLeftOffset]: `calc(100% - var(${vars.knobSize}) - ${knobMargin})`,\n [vars.knobColor]: refs.valueTextColor,\n [vars.knobTextColor]: refs.valueTextColor,\n },\n\n _disabled: {\n [vars.knobColor]: globalRefs.colors.surface.light,\n [vars.trackBorderColor]: globalRefs.colors.surface.main,\n [vars.trackBackgroundColor]: globalRefs.colors.surface.main,\n [vars.labelTextColor]: refs.labelTextColor,\n _checked: {\n [vars.knobColor]: globalRefs.colors.surface.light,\n [vars.trackBackgroundColor]: globalRefs.colors.surface.main,\n }\n },\n\n _invalid: {\n [vars.trackBorderColor]: globalRefs.colors.error.main,\n [vars.knobColor]: globalRefs.colors.error.main,\n },\n};\n\nexport default switchToggle;\nexport { vars }","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('container');\n\nclass RawContainer extends createBaseClass({ componentName, baseSelector: ':host > slot' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host > slot {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\toverflow: auto;\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t</style>\n\t\t<slot></slot>\n\t`;\n\t}\n}\n\nexport const ContainerClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostHeight: { selector: () => ':host', property: 'height' },\n\t\t\thostWidth: { selector: () => ':host', property: 'width' },\n\n\t\t\tverticalPadding: [\n\t\t\t\t{ property: 'padding-top' },\n\t\t\t\t{ property: 'padding-bottom' }\n\t\t\t],\n\t\t\thorizontalPadding: [\n\t\t\t\t{ property: 'padding-left' },\n\t\t\t\t{ property: 'padding-right' }\n\t\t\t],\n\n\t\t\tflexDirection: {},\n\t\t\tjustifyContent: {},\n\t\t\talignItems: {},\n\t\t\tgap: {},\n\t\t\tflexWrap: {},\n\n\t\t\tbackgroundColor: {},\n\t\t\tcolor: {},\n\t\t\tborderRadius: {},\n\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\n\t\t\tboxShadow: {}\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawContainer);\n","import globals from \"../globals\";\nimport { getThemeRefs, createHelperVars } from \"../../helpers/themeHelpers\";\nimport { ContainerClass, componentName } from \"../../components/descope-container/ContainerClass\";\n\nconst globalRefs = getThemeRefs(globals);\n\nconst compVars = ContainerClass.cssVarList\n\nconst verticalAlignment = {\n\tstart: { verticalAlignment: 'start' },\n\tcenter: { verticalAlignment: 'safe center' },\n\tend: { verticalAlignment: 'end' },\n}\n\nconst horizontalAlignment = {\n\tstart: { horizontalAlignment: 'start' },\n\tcenter: { horizontalAlignment: 'safe center' },\n\tend: { horizontalAlignment: 'end' },\n}\n\nconst [helperTheme, helperRefs, helperVars] =\n\tcreateHelperVars({\n\t\tverticalAlignment,\n\t\thorizontalAlignment,\n\t\tshadowColor: '#00000020' //if we want to support transparency vars, we should use different color format\n\t}, componentName)\n\nconst { shadowColor } = helperRefs;\n\nconst container = {\n\t...helperTheme,\n\n\t[compVars.hostWidth]: '100%',\n\t[compVars.boxShadow]: 'none',\n\t[compVars.backgroundColor]: globalRefs.colors.surface.light,\n\t[compVars.color]: globalRefs.colors.surface.contrast,\n\n\tverticalPadding: {\n\t\tsm: { [compVars.verticalPadding]: '5px' },\n\t\tmd: { [compVars.verticalPadding]: '10px' },\n\t\tlg: { [compVars.verticalPadding]: '20px' },\n\t},\n\n\thorizontalPadding: {\n\t\tsm: { [compVars.horizontalPadding]: '5px' },\n\t\tmd: { [compVars.horizontalPadding]: '10px' },\n\t\tlg: { [compVars.horizontalPadding]: '20px' },\n\t},\n\n\tdirection: {\n\t\trow: {\n\t\t\t[compVars.flexDirection]: 'row',\n\t\t\t[compVars.alignItems]: helperRefs.verticalAlignment,\n\t\t\t[compVars.justifyContent]: helperRefs.horizontalAlignment,\n\t\t\t[compVars.flexWrap]: 'wrap',\n\t\t\thorizontalAlignment: {\n\t\t\t\tspaceBetween: {\n\t\t\t\t\t[helperVars.horizontalAlignment]: 'space-between'\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t\tcolumn: {\n\t\t\t[compVars.flexDirection]: 'column',\n\t\t\t[compVars.alignItems]: helperRefs.horizontalAlignment,\n\t\t\t[compVars.justifyContent]: helperRefs.verticalAlignment,\n\t\t\tverticalAlignment: {\n\t\t\t\tspaceBetween: {\n\t\t\t\t\t[helperVars.verticalAlignment]: 'space-between'\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n\n\tspaceBetween: {\n\t\tsm: { [compVars.gap]: '10px' },\n\t\tmd: { [compVars.gap]: '20px' },\n\t\tlg: { [compVars.gap]: '30px' }\n\t},\n\n\tshadow: {\n\t\tsm: { [compVars.boxShadow]: `${globalRefs.shadow.wide.sm} ${shadowColor}, ${globalRefs.shadow.narrow.sm} ${shadowColor}` },\n\t\tmd: { [compVars.boxShadow]: `${globalRefs.shadow.wide.md} ${shadowColor}, ${globalRefs.shadow.narrow.md} ${shadowColor}` },\n\t\tlg: { [compVars.boxShadow]: `${globalRefs.shadow.wide.lg} ${shadowColor}, ${globalRefs.shadow.narrow.lg} ${shadowColor}` },\n\t\txl: { [compVars.boxShadow]: `${globalRefs.shadow.wide.xl} ${shadowColor}, ${globalRefs.shadow.narrow.xl} ${shadowColor}` },\n\t\t'2xl': {\n\t\t\t[helperVars.shadowColor]: '#00000050', // mimic daisyUI shadow settings \n\t\t\t[compVars.boxShadow]: `${globalRefs.shadow.wide['2xl']} ${shadowColor}`\n\t\t},\n\t},\n\n\tborderRadius: {\n\t\tsm: { [compVars.borderRadius]: globalRefs.radius.sm },\n\t\tmd: { [compVars.borderRadius]: globalRefs.radius.md },\n\t\tlg: { [compVars.borderRadius]: globalRefs.radius.lg },\n\t\txl: { [compVars.borderRadius]: globalRefs.radius.xl },\n\t\t'2xl': { [compVars.borderRadius]: globalRefs.radius['2xl'] },\n\t\t'3xl': { [compVars.borderRadius]: globalRefs.radius['3xl'] },\n\t}\n};\n\nexport default container;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('logo');\n\nlet style;\nconst getStyle = () => style;\n\nclass RawLogo extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t${getStyle()}\n\t\t</style>\n\t\t<div></div>`;\n\t}\n}\n\nexport const LogoClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\theight: { selector: () => ':host' },\n\t\t\twidth: { selector: () => ':host' },\n\t\t\tfallbackUrl: { property: 'content' },\n\t\t\turl: { property: 'content' },\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLogo);\n\nstyle = `\n:host {\n\tdisplay: inline-flex;\n}\n:host > div {\n\tdisplay: inline-block;\n\tcontent: var(${LogoClass.cssVarList.url}, var(${LogoClass.cssVarList.fallbackUrl}));\n\tmax-width: 100%;\n\tmax-height: 100%;\n\tobject-fit: contain;\n\tmargin: auto;\n}\n:host([draggable=\"true\"]) > div {\n\tpointer-events: none\n}\n`;\n","import { LogoClass } from \"../../components/descope-logo/LogoClass\";\n\nconst vars = LogoClass.cssVarList\n\nconst logo = {\n\t[vars.fallbackUrl]: 'url(https://imgs.descope.com/components/no-logo-placeholder.svg)'\n};\n\nexport default logo;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('text');\n\nclass RawText extends createBaseClass({ componentName, baseSelector: ':host > slot' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t\t:host > slot {\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t</style>\n\t\t<slot></slot>\n\t\t`;\n\t}\n}\n\nexport const TextClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { selector: () => ':host', property: 'width' },\n\t\t\tfontSize: {},\n\t\t\ttextColor: { property: 'color' },\n\t\t\ttextLineHeight: { property: 'line-height' },\n\t\t\ttextLetterSpacing: { property: 'letter-spacing' },\n\t\t\ttextShadow: {},\n\t\t\ttextAlign: {},\n\t\t\ttextTransform: {},\n\t\t\tfontFamily: {},\n\t\t\tfontStyle: {},\n\t\t\tfontWeight: {},\n\t\t\tborderWidth: {},\n\t\t\tborderStyle: {},\n\t\t\tborderColor: {},\n\t\t},\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawText);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { TextClass } from '../../components/descope-text/TextClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextClass.cssVarList;\n\nconst text = {\n\t[vars.textLineHeight]: '1em',\n\t[vars.textAlign]: 'left',\n\t[vars.textColor]: globalRefs.colors.surface.dark,\n\tvariant: {\n\t\th1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h1.font\n\t\t},\n\t\th2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h2.font\n\t\t},\n\t\th3: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h3.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h3.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h3.font\n\t\t},\n\t\tsubtitle1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.subtitle1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.subtitle1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.subtitle1.font\n\t\t},\n\t\tsubtitle2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.subtitle2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.subtitle2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.subtitle2.font\n\t\t},\n\t\tbody1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.body1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.body1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.body1.font\n\t\t},\n\t\tbody2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.body2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.body2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.body2.font\n\t\t}\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.textColor]: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.textColor]: globalRefs.colors.secondary.main\n\t\t},\n\t\terror: {\n\t\t\t[vars.textColor]: globalRefs.colors.error.main\n\t\t},\n\t\tsuccess: {\n\t\t\t[vars.textColor]: globalRefs.colors.success.main\n\t\t}\n\t},\n\n\ttextAlign: {\n\t\tright: { [vars.textAlign]: 'right' },\n\t\tleft: { [vars.textAlign]: 'left' },\n\t\tcenter: { [vars.textAlign]: 'center' }\n\t},\n\n\t_fullWidth: {\n\t\t[vars.hostWidth]: '100%',\n\t},\n\n\t_italic: {\n\t\t[vars.fontStyle]: 'italic'\n\t},\n\n\t_uppercase: {\n\t\t[vars.textTransform]: 'uppercase'\n\t},\n\n\t_lowercase: {\n\t\t[vars.textTransform]: 'lowercase'\n\t}\n};\n\nexport default text;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { TextClass } from '../descope-text/TextClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('link');\n\nclass RawLink extends createBaseClass({ componentName, baseSelector: ':host a' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t:host a {\n\t\t\tdisplay: inline;\n\t\t\ttext-decoration: none;\n\t\t}\n\t\t:host a:hover {\n\t\t\ttext-decoration: underline;\n\t\t}\n\t\t</style>\n\t\t<div>\n\t\t\t<descope-text>\n\t\t\t\t<a>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</a>\n\t\t\t</descope-text>\n\t\t</div>\n\t\t`;\n\n\t\tforwardAttrs(this, this.shadowRoot.querySelector('a'), {\n\t\t\tincludeAttrs: ['href', 'target', 'tooltip'],\n\t\t\tmapAttrs: {\n\t\t\t\ttooltip: 'title'\n\t\t\t}\n\t\t});\n\n\t\tforwardAttrs(this, this.shadowRoot.querySelector('descope-text'), {\n\t\t\tincludeAttrs: ['mode', 'variant'],\n\t\t});\n\t}\n}\n\nconst selectors = {\n\thost: { selector: () => ':host' },\n\tanchor: {},\n\twrapper: { selector: () => ':host > div' },\n\ttext: { selector: () => TextClass.componentName }\n};\n\nconst { anchor, text, host, wrapper } = selectors;\n\nexport const LinkClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\ttextAlign: wrapper,\n\t\t\ttextColor: [\n\t\t\t\t{ ...anchor, property: 'color' },\n\t\t\t\t{ ...text, property: TextClass.cssVarList.textColor }\n\t\t\t],\n\t\t\tcursor: anchor,\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLink);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { LinkClass } from '../../components/descope-link/LinkClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LinkClass.cssVarList;\n\nconst link = {\n\t[vars.cursor]: 'pointer',\n\n\t[vars.textUnderlineWidth]: '2px',\n\t[vars.textUnderlineStyle]: 'solid',\n\t[vars.textUnderlineColor]: 'transparent',\n\t[vars.textColor]: globalRefs.colors.primary.main,\n\n\t_hover: {\n\t\t[vars.textUnderlineColor]: globalRefs.colors.primary.main\n\t},\n\n\ttextAlign: {\n\t\tright: { [vars.textAlign]: 'right' },\n\t\tleft: { [vars.textAlign]: 'left' },\n\t\tcenter: { [vars.textAlign]: 'center' }\n\t},\n\n\t_fullWidth: {\n\t\t[vars.hostWidth]: '100%'\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.textColor]: globalRefs.colors.primary.main,\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.textColor]: globalRefs.colors.secondary.main,\n\t\t},\n\t\terror: {\n\t\t\t[vars.textColor]: globalRefs.colors.error.main,\n\t\t},\n\t\tsuccess: {\n\t\t\t[vars.textColor]: globalRefs.colors.success.main,\n\t\t}\n\t}\n};\n\nexport default link;\nexport { vars }","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('divider');\nclass RawDivider extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t\t<style>\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t}\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\theight: 100%;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t}\n\t\t\t\t:host > div::before,\n\t\t\t\t:host > div::after {\n\t\t\t\t\tcontent: '';\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t\tdescope-text {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t\tflex-shrink: 0;\n\t\t\t\t}\n\t\t\t\t:host(:empty) descope-text {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t\t:host([vertical=\"true\"]) div {\n\t\t\t\t\twidth: fit-content;\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<div>\n\t\t\t\t<descope-text>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</descope-text>\n\t\t\t</div>\n\t\t`;\n\n\t\tthis.textComponent = this.shadowRoot.querySelector('descope-text');\n\n\t\tforwardAttrs(this, this.textComponent, {\n\t\t\tincludeAttrs: ['mode', 'variant', 'italic']\n\t\t});\n\t}\n}\n\nconst {\n\thost,\n\tbefore,\n\tafter,\n\ttext,\n} = {\n\thost: { selector: () => ':host' },\n\tbefore: { selector: '::before' },\n\tafter: { selector: '::after' },\n\ttext: { selector: 'descope-text' },\n};\n\nexport const DividerClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostPadding: { ...host, property: 'padding' },\n\n\t\t\tminHeight: {},\n\t\t\talignItems: {},\n\t\t\talignSelf: {},\n\t\t\tflexDirection: {},\n\n\t\t\tlabelTextWidth: { ...text, property: 'width' },\n\t\t\tlabelTextMaxWidth: { ...text, property: 'max-width' },\n\t\t\tlabelTextVerticalSpacing: [\n\t\t\t\t{ ...text, property: 'padding-top' },\n\t\t\t\t{ ...text, property: 'padding-bottom' }\n\t\t\t],\n\t\t\tlabelTextHorizontalSpacing: [\n\t\t\t\t{ ...text, property: 'padding-right' },\n\t\t\t\t{ ...text, property: 'padding-left' }\n\t\t\t],\n\n\t\t\tstripeColor: [\n\t\t\t\t{ ...before, property: 'background-color' },\n\t\t\t\t{ ...after, property: 'background-color' }\n\t\t\t],\n\t\t\tstripeHorizontalThickness: [\n\t\t\t\t{ ...before, property: 'height' },\n\t\t\t\t{ ...after, property: 'height' }\n\t\t\t],\n\t\t\tstripeVerticalThickness: [\n\t\t\t\t{ ...before, property: 'width' },\n\t\t\t\t{ ...after, property: 'width' }\n\t\t\t],\n\t\t\tstripeColorOpacity: [\n\t\t\t\t{ ...before, property: 'opacity' },\n\t\t\t\t{ ...after, property: 'opacity' }\n\t\t\t],\n\t\t},\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawDivider);\n\n","import globals from '../globals';\nimport { componentName, DividerClass } from '../../components/descope-divider/DividerClass';\nimport { createHelperVars, getThemeRefs } from '../../helpers/themeHelpers';\n\nconst globalRefs = getThemeRefs(globals);\nconst compVars = DividerClass.cssVarList;\n\nconst [\n\thelperTheme,\n\thelperRefs,\n\thelperVars\n] = createHelperVars({\n\tthickness: '2px',\n\tspacing: '10px'\n}, componentName);\n\nconst divider = {\n\t...helperTheme,\n\n\t[compVars.alignItems]: 'center',\n\t[compVars.flexDirection]: 'row',\n\t[compVars.alignSelf]: 'stretch',\n\t[compVars.hostWidth]: '100%',\n\t[compVars.stripeColor]: globalRefs.colors.surface.main,\n\t[compVars.stripeColorOpacity]: '0.5',\n\t[compVars.stripeHorizontalThickness]: helperRefs.thickness,\n\t[compVars.labelTextWidth]: 'fit-content',\n\t[compVars.labelTextMaxWidth]: 'calc(100% - 100px)',\n\t[compVars.labelTextHorizontalSpacing]: helperRefs.spacing,\n\n\t_vertical: {\n\t\t[compVars.minHeight]: '200px',\n\t\t[compVars.flexDirection]: 'column',\n\t\t[compVars.hostWidth]: 'fit-content',\n\t\t[compVars.hostPadding]: `0 calc(${helperRefs.thickness} * 3)`,\n\t\t[compVars.stripeVerticalThickness]: helperRefs.thickness,\n\t\t[compVars.labelTextWidth]: 'fit-content',\n\t\t[compVars.labelTextMaxWidth]: '100%',\n\t\t[compVars.labelTextVerticalSpacing]: helperRefs.spacing,\n\t}\n};\n\nexport default divider;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { forwardAttrs, getComponentName } from '../../../helpers/componentHelpers';\nimport { getSanitizedCharacters, focusElement } from './helpers';\n\nexport const componentName = getComponentName('passcode-internal');\n\nconst observedAttributes = [\n\t'digits'\n]\n\nconst forwardAttributes = [\n\t'disabled',\n\t'bordered',\n\t'size',\n\t'invalid',\n\t'readonly'\n]\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' })\n\nclass PasscodeInternal extends BaseInputClass {\n\tstatic get observedAttributes() {\n\t\treturn observedAttributes.concat(BaseInputClass.observedAttributes || []);\n\t}\n\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.innerHTML = `\n\t\t<div class=\"wrapper\"></div>\n\t\t<style>\n\t\t\t.wrapper {\n\t\t\t\tdisplay: flex;\n\t\t\t\twidth: 100%;\n\t\t\t\tjustify-content: space-between;\n\t\t\t}\n\t\t</style>\n\t\t`;\n\n\t\tthis.wrapperEle = this.querySelector('div');\n\t}\n\n\trenderInputs() {\n\t\tconst inputs = [...Array(this.digits).keys()].map((idx) => `\n\t\t<descope-text-field\n\t\t\tdata-id=${idx}\n\t\t\ttype=\"tel\"\n\t\t\tautocomplete=\"one-time-code\"\n\t\t\tinputMode=\"numeric\"\n\t\t></descope-text-field>\n\t`)\n\n\t\tthis.wrapperEle.innerHTML = inputs.join('');\n\n\t\tthis.inputs = Array.from(this.querySelectorAll('descope-text-field'))\n\n\t\tthis.initInputs()\n\t}\n\n\tget digits() {\n\t\treturn Number.parseInt(this.getAttribute('digits')) || 6\n\t}\n\n\tget value() {\n\t\treturn this.inputs?.map(({ value }) => value).join('') || ''\n\t}\n\n\tset value(val) {\n\t\tif (val === this.value) return;\n\n\t\tconst charArr = getSanitizedCharacters(val);\n\n\t\tif (charArr.length) {\n\t\t\tthis.fillDigits(charArr, this.inputs[0]);\n\t\t}\n\t}\n\n\tget pattern() {\n\t\treturn `^$|^\\\\d{${this.digits},}$`\n\t}\n\n\tgetValidity() {\n\t\tif (this.isRequired && !this.value) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\telse if (this.pattern && !new RegExp(this.pattern).test(this.value)) {\n\t\t\treturn { patternMismatch: true };\n\t\t}\n\t\telse {\n\t\t\treturn {}\n\t\t}\n\t};\n\n\tinit() {\n\t\t// we are adding listeners before calling to super because it's stopping the events\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\t// we want to ignore focus events we are dispatching\n\t\t\tif (e.isTrusted)\n\t\t\t\tthis.inputs[0].focus()\n\t\t})\n\n\t\tsuper.init?.();\n\n\t\tthis.renderInputs();\n\t}\n\n\tgetInputIdx(inputEle) {\n\t\treturn Number.parseInt(inputEle.getAttribute('data-id'), 10)\n\t}\n\n\tgetNextInput(currInput) {\n\t\tconst currentIdx = this.getInputIdx(currInput)\n\t\tconst newIdx = Math.min(currentIdx + 1, this.inputs.length - 1)\n\t\treturn this.inputs[newIdx]\n\t}\n\n\tgetPrevInput(currInput) {\n\t\tconst currentIdx = this.getInputIdx(currInput)\n\t\tconst newIdx = Math.max(currentIdx - 1, 0)\n\t\treturn this.inputs[newIdx]\n\t}\n\n\tfillDigits(charArr, currentInput) {\n\t\tfor (let i = 0; i < charArr.length; i += 1) {\n\t\t\tcurrentInput.value = charArr[i] ?? '';\n\n\t\t\tconst nextInput = this.getNextInput(currentInput);\n\n\t\t\tif (nextInput === currentInput) break;\n\t\t\tcurrentInput = nextInput;\n\t\t}\n\n\t\tfocusElement(currentInput);\n\t};\n\n\tinitInputs() {\n\t\tthis.inputs.forEach((input) => {\n\t\t\t// sanitize the input\n\t\t\tinput.addEventListener('input', (e) => {\n\t\t\t\tconst charArr = getSanitizedCharacters(input.value);\n\n\t\t\t\tif (!charArr.length) {\n\t\t\t\t\t// if we got an invalid value we want to clear the input\n\t\t\t\t\tinput.value = '';\n\t\t\t\t}\n\t\t\t\telse this.fillDigits(charArr, input);\n\t\t\t})\n\n\t\t\t// we want backspace to focus on the previous digit\n\t\t\tinput.onkeydown = ({ key }) => {\n\t\t\t\t// when user deletes a digit, we want to focus the previous digit\n\t\t\t\tif (key === 'Backspace') {\n\t\t\t\t\t// if the cursor is at 0, we want to move it to 1, so the value will be deleted\n\t\t\t\t\tif (!input.selectionStart) {\n\t\t\t\t\t\tinput.setSelectionRange(1, 1);\n\t\t\t\t\t}\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tfocusElement(this.getPrevInput(input));\n\t\t\t\t\t});\n\t\t\t\t} else if (key.length === 1) { // we want only characters and not command keys\n\t\t\t\t\tinput.value = ''; // we are clearing the previous value so we can override it with the new value\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tforwardAttrs(this, input, { includeAttrs: forwardAttributes })\n\t\t})\n\n\t\tthis.handleFocusEventsDispatching(this.inputs);\n\t\tthis.handleInputEventDispatching();\n\t}\n\n\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue)\n\n\t\t// sync attributes to inputs\n\t\tif (oldValue !== newValue) {\n\t\t\tif (observedAttributes.includes(attrName)) {\n\t\t\t\tif (attrName === 'digits') {\n\t\t\t\t\tthis.renderInputs();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default PasscodeInternal;\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { componentName as descopeInternalComponentName } from './descope-passcode-internal/PasscodeInternal';\nimport { TextFieldClass } from '../descope-text-field/TextFieldClass'\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputCursor, resetInputFieldDefaultWidth } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('passcode');\n\nconst observedAttributes = [\n\t'digits'\n];\n\nconst customMixin = (superclass) =>\n\tclass PasscodeMixinClass extends superclass {\n\t\tstatic get observedAttributes() {\n\t\t\treturn observedAttributes.concat(superclass.observedAttributes || []);\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tget digits() {\n\t\t\treturn Number.parseInt(this.getAttribute('digits')) || 6;\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t<${descopeInternalComponentName} \n\t\t\t\tbordered=\"true\" \n\t\t\t\tname=\"code\" \n\t\t\t\ttabindex=\"-1\"\n\t\t\t\tslot=\"input\"\n\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this, this.inputElement, { includeAttrs: ['digits', 'size'] })\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n\t\t\tif (attrName === 'digits') {\n\t\t\t\tthis.style.setProperty('--passcode-digits-count', newValue);\n\t\t\t}\n\t\t}\n\t};\n\nconst {\n\thost,\n\tdigitField,\n\tlabel,\n\trequiredIndicator,\n\tinternalWrapper,\n\tfocusedDigitField\n} = {\n\thost: { selector: () => ':host' },\n\tfocusedDigitField: { selector: () => `${TextFieldClass.componentName}[focused=\"true\"]` },\n\tdigitField: { selector: () => TextFieldClass.componentName },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tinternalWrapper: { selector: 'descope-passcode-internal .wrapper' }\n}\n\nconst textVars = TextFieldClass.cssVarList\n\nexport const PasscodeClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [{ ...digitField, property: textVars.fontSize }, host],\n\t\t\thostWidth: { property: 'width' },\n\t\t\tfontFamily: host,\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tdigitValueTextColor: {\n\t\t\t\tselector: TextFieldClass.componentName,\n\t\t\t\tproperty: textVars.inputValueTextColor\n\t\t\t},\n\t\t\tdigitSize: [\n\t\t\t\t{ ...digitField, property: 'height' },\n\t\t\t\t{ ...digitField, property: 'width' }\n\t\t\t],\n\t\t\tdigitPadding: { ...digitField, property: textVars.inputHorizontalPadding },\n\t\t\tdigitTextAlign: { ...digitField, property: textVars.inputTextAlign },\n\t\t\tdigitCaretTextColor: { ...digitField, property: textVars.inputCaretTextColor },\n\t\t\tdigitSpacing: { ...internalWrapper, property: 'gap' },\n\t\t\tdigitOutlineColor: { ...digitField, property: textVars.inputOutlineColor },\n\t\t\tdigitOutlineWidth: { ...digitField, property: textVars.inputOutlineWidth },\n\n\t\t\tfocusedDigitFieldOutlineColor: { ...focusedDigitField, property: textVars.inputOutlineColor }\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tcustomMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: calc(var(--passcode-digits-count) * 2em);\n\t\t\t}\n\t\t\t${resetInputFieldDefaultWidth()}\n\t\t\t:host::after {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\t\t\t:host::part(input-field)::after {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal {\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t\tpadding: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tmin-height: initial;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal .wrapper {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tmin-height: initial;\n\t\t\t\theight: 100%;\n\t\t\t\tjustify-content: space-between;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal descope-text-field {\n\t\t\t\tmin-width: 2em;\n\t\t\t\tmax-width: var(${textVars.inputHeight});\n\t\t\t}\n\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tbackground-color: transparent;\n\t\t\t\tpadding: 0;\n\t\t\t\toverflow: hidden;\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t}\n\n\t\t\tvaadin-text-field {\n\t\t\t\tmargin: 0;\n\t\t\t\tpadding: 0;\n\t\t\t\twidth: 100%\n\t\t\t}\n\n\t\t\tvaadin-text-field::before {\n\t\t\t\theight: 0;\n\t\t\t}\n\n\t\t\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\n\t\t\tvaadin-text-field[readonly]::part(input-field)::after {\n\t\t\t\tborder: 0 solid;\n\t\t\t}\n\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t${resetInputCursor('vaadin-text-field')}\n \t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default PasscodeClass;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { PasscodeClass } from '../../components/descope-passcode/PasscodeClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = PasscodeClass.cssVarList\n\nconst passcode = {\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.digitValueTextColor]: refs.valueTextColor,\n\t[vars.digitPadding]: '0',\n\t[vars.digitTextAlign]: 'center',\n\t[vars.digitSpacing]: '0',\n\t[vars.hostWidth]: refs.width,\n\t[vars.digitOutlineColor]: 'transparent',\n\t[vars.digitOutlineWidth]: refs.outlineWidth,\n\t[vars.focusedDigitFieldOutlineColor]: refs.outlineColor,\n\t[vars.digitSize]: refs.inputHeight,\n\n\t_hideCursor: {\n\t\t[vars.digitCaretTextColor]: 'transparent',\n\t}\n}\n\nexport default passcode;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('loader-linear');\n\nclass RawLoaderLinear extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t@keyframes tilt {\n\t\t\t\t0% { transform: translateX(0); }\n\t\t\t\t50% { transform: translateX(400%); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t\tdiv::after {\n\t\t\t\tcontent: '';\n\t\t\t\tanimation-name: tilt;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t`;\n\t}\n}\n\nconst selectors = {\n\tafter: { selector: '::after' },\n\thost: { selector: () => ':host' }\n};\n\nconst { after, host } = selectors;\n\nexport const LoaderLinearClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostDisplay: {},\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tbarHeight: [\n\t\t\t\t{ property: 'height' },\n\t\t\t\t{ ...after, property: 'height' }\n\t\t\t],\n\t\t\tbarBorderRadius: [\n\t\t\t\t{ property: 'border-radius' },\n\t\t\t\t{ ...after, property: 'border-radius' }\n\t\t\t],\n\t\t\tbarBackgroundColor: { property: 'background-color' },\n\t\t\tbarColor: { ...after, property: 'background-color' },\n\t\t\tbarWidth: { ...after, property: 'width' },\n\t\t\tanimationDuration: [{}, after],\n\t\t\tanimationTimingFunction: [{}, after],\n\t\t\tanimationIterationCount: [{}, after]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLoaderLinear);\n","import globals from '../../globals';\nimport { getThemeRefs } from '../../../helpers/themeHelpers';\nimport { LoaderLinearClass } from '../../../components/descope-loader-linear/LoaderLinearClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LoaderLinearClass.cssVarList;\n\nconst loaderLinear = {\n\t[vars.hostDisplay]: 'inline-block',\n\t[vars.hostWidth]: '100%',\n\n\t[vars.barColor]: globalRefs.colors.surface.contrast,\n\t[vars.barWidth]: '20%',\n\n\t[vars.barBackgroundColor]: globalRefs.colors.surface.main,\n\t[vars.barBorderRadius]: '4px',\n\n\t[vars.animationDuration]: '2s',\n\t[vars.animationTimingFunction]: 'linear',\n\t[vars.animationIterationCount]: 'infinite',\n\n\tsize: {\n\t\txs: { [vars.barHeight]: '8px' },\n\t\tsm: { [vars.barHeight]: '10px' },\n\t\tmd: { [vars.barHeight]: '14px' },\n\t\tlg: { [vars.barHeight]: '20px' },\n\t\txl: { [vars.barHeight]: '25px' }\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.barColor]: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.barColor]: globalRefs.colors.secondary.main\n\t\t}\n\t},\n\n\t_hidden: {\n\t\t[vars.hostDisplay]: 'none'\n\t}\n};\n\nexport default loaderLinear;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('loader-radial');\n\nclass RawLoaderRadial extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t@keyframes spin {\n\t\t\t\t0% { transform: rotate(0deg); }\n\t\t\t\t100% { transform: rotate(360deg); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\tanimation-name: spin;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t`;\n\t}\n}\n\nexport const LoaderRadialClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostDisplay: { property: 'display' },\n\t\t\tspinnerSize: [\n\t\t\t\t{ property: 'width' },\n\t\t\t\t{ property: 'height' }\n\t\t\t],\n\t\t\tspinnerBorderWidth: { property: 'border-width' },\n\t\t\tspinnerBorderStyle: { property: 'border-style' },\n\t\t\tspinnerBorderRadius: { property: 'border-radius' },\n\t\t\tspinnerQuadrant1Color: { property: 'border-top-color' },\n\t\t\tspinnerQuadrant2Color: { property: 'border-bottom-color' },\n\t\t\tspinnerQuadrant3Color: { property: 'border-right-color' },\n\t\t\tspinnerQuadrant4Color: { property: 'border-left-color' },\n\t\t\tanimationDuration: {},\n\t\t\tanimationTimingFunction: {},\n\t\t\tanimationIterationCount: {}\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLoaderRadial);\n","import globals from '../../globals';\nimport { LoaderRadialClass, componentName } from '../../../components/descope-loader-radial/LoaderRadialClass';\nimport { createHelperVars, getThemeRefs } from '../../../helpers/themeHelpers';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LoaderRadialClass.cssVarList;\n\nconst [helperTheme, helperRefs] = createHelperVars({\n\tspinnerColor: globalRefs.colors.surface.contrast,\n\tmode: {\n\t\tprimary: {\n\t\t\tspinnerColor: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\tspinnerColor: globalRefs.colors.secondary.main\n\t\t}\n\t}\n}, componentName);\n\nconst loaderRadial = {\n\t...helperTheme,\n\n\t[vars.animationDuration]: '2s',\n\t[vars.animationTimingFunction]: 'linear',\n\t[vars.animationIterationCount]: 'infinite',\n\t[vars.spinnerBorderStyle]: 'solid',\n\t[vars.spinnerBorderWidth]: '0.2em',\n\t[vars.spinnerBorderRadius]: '50%',\n\t[vars.spinnerQuadrant1Color]: helperRefs.spinnerColor,\n\t[vars.spinnerQuadrant2Color]: 'transparent',\n\t[vars.spinnerQuadrant3Color]: helperRefs.spinnerColor,\n\t[vars.spinnerQuadrant4Color]: 'transparent',\n\n\tsize: {\n\t\txs: { [vars.spinnerSize]: '20px' },\n\t\tsm: { [vars.spinnerSize]: '30px' },\n\t\tmd: { [vars.spinnerSize]: '40px' },\n\t\tlg: { [vars.spinnerSize]: '60px' },\n\t\txl: { [vars.spinnerSize]: '80px' }\n\t},\n\n\t_hidden: {\n\t\t[vars.hostDisplay]: 'none'\n\t}\n};\n\nexport default loaderRadial;\nexport { vars }\n","import { compose } from '../../helpers';\nimport { getComponentName, observeChildren } from '../../helpers/componentHelpers';\nimport { resetInputCursor, resetInputPlaceholder, resetInputReadonlyStyle, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\nimport {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcomponentNameValidationMixin,\n\tportalMixin,\n\tproxyInputMixin\n} from '../../mixins';\n\nexport const componentName = getComponentName('combo-box');\n\nconst ComboBoxMixin = (superclass) => class ComboBoxMixinClass extends superclass {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t// vaadin api is to set props on their combo box node, \n\t// in order to avoid it, we are passing the children of this component\n\t// to the items & renderer props, so it will be used as the combo box items\n\t#onChildrenChange() {\n\t\tconst baseElement = this.shadowRoot.querySelector(this.baseSelector)\n\t\tconst items = Array.from(this.children)\n\n\t\t// we want the data-name attribute to be accessible as an object attribute\n\t\tif (items.length) {\n\t\t\titems.forEach((node) => {\n\t\t\t\tObject.defineProperty(node, 'data-name', {\n\t\t\t\t\tvalue: node.getAttribute('data-name'),\n\t\t\t\t})\n\t\t\t\tObject.defineProperty(node, 'data-id', {\n\t\t\t\t\tvalue: node.getAttribute('data-id')\n\t\t\t\t})\n\t\t\t});\n\n\t\t\tbaseElement.items = items;\n\n\t\t\tbaseElement.renderer = (root, combo, model) => {\n\t\t\t\troot.innerHTML = model.item.outerHTML;\n\t\t\t};\n\t\t}\n\t}\n\n\t// the default vaadin behavior is to attach the overlay to the body when opened\n\t// we do not want that because it's difficult to style the overlay in this way\n\t// so we override it to open inside the shadow DOM\n\t#overrideOverlaySettings() {\n\t\tconst overlay = this.baseElement.shadowRoot.querySelector('vaadin-combo-box-overlay')\n\n\t\toverlay._attachOverlay = function () { this.bringToFront(); }\n\t\toverlay._detachOverlay = function () { }\n\t\toverlay._enterModalState = function () { }\n\t}\n\n\tinit() {\n\t\tsuper.init?.()\n\n\t\tthis.#overrideOverlaySettings();\n\t\tobserveChildren(this, this.#onChildrenChange.bind(this));\n\t}\n}\n\nconst {\n\thost,\n\tinputField,\n\tinputElement,\n\tplaceholder,\n\ttoggle,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tinputField: { selector: '::part(input-field)' },\n\tinputElement: { selector: 'input' },\n\tplaceholder: { selector: '> input:placeholder-shown' },\n\ttoggle: { selector: '::part(toggle-button)' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\n// const { slotted, selected } = {\n// \tslotted: { selector: () => '::slotted(*)' },\n// \tselected: { selector: () => '::slotted([selected])' }\n// }\n\nexport const ComboBoxClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\t// we apply font-size also on the host so we can set its width with em\n\t\t\tfontSize: [\n\t\t\t\t{},\n\t\t\t\thost,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tplaceholder,\n\t\t\t\tinputField,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tinputHeight: { ...inputField, property: 'height' },\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputValueTextColor: { ...inputField, property: 'color' },\n\t\t\tinputPlaceholderTextColor: { ...placeholder, property: 'color' },\n\t\t\tinputDropdownButtonCursor: { ...toggle, property: 'cursor' },\n\t\t\tinputDropdownButtonColor: { ...toggle, property: 'color' },\n\t\t\tinputDropdownButtonSize: { ...toggle, property: 'font-size' },\n\t\t\tinputDropdownButtonOffset: [\n\t\t\t\t{ ...toggle, property: 'margin-right' },\n\t\t\t\t{ ...toggle, property: 'margin-left' },\n\t\t\t],\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputHorizontalPadding: [\n\t\t\t\t{ ...inputElement, property: 'padding-left' },\n\t\t\t\t{ ...inputElement, property: 'padding-right' }\n\t\t\t],\n\n\t\t\t// we need to use the variables from the portal mixin\n\t\t\t// so we need to use an arrow function on the selector\n\t\t\t// for that to work, because ComboBox is not available\n\t\t\t// at this time.\n\t\t\toverlayBackground: { property: () => ComboBoxClass.cssVarList.overlay.backgroundColor },\n\t\t\toverlayBorder: { property: () => ComboBoxClass.cssVarList.overlay.border }\n\t\t}\n\t}),\n\tdraggableMixin,\n\tportalMixin({\n\t\tname: 'overlay',\n\t\tselector: '',\n\t\tmappings: {\n\t\t\tbackgroundColor: { selector: 'vaadin-combo-box-scroller' },\n\t\t\tcursor: { selector: 'vaadin-combo-box-item' }, // TODO: this mapping doesn't work, needs fixing.\n\t\t\tminHeight: { selector: 'vaadin-combo-box-overlay' },\n\t\t\tmargin: { selector: 'vaadin-combo-box-overlay' },\n\t\t\tfontFamily: { selector: 'vaadin-combo-box-item' }\n\t\t},\n\t\tforward: {\n\t\t\tinclude: false,\n\t\t\tattributes: ['size']\n\t\t},\n\t}),\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tComboBoxMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix'],\n\t\twrappedEleName: 'vaadin-combo-box',\n\t\tstyle: () => `\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tbox-sizing: border-box;\n\t\t\t-webkit-mask-image: none;\n\t\t}\n\t\t${useHostExternalPadding(ComboBoxClass.cssVarList)}\n\t\t${resetInputReadonlyStyle('vaadin-combo-box')}\n\t\t${resetInputPlaceholder('vaadin-combo-box')}\n\t\t${resetInputCursor('vaadin-combo-box')}\n\t\t\n\t\tvaadin-combo-box {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t\tvaadin-combo-box::before {\n\t\t\theight: initial;\n\t\t}\n\t\tvaadin-combo-box [slot=\"input\"] {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tvaadin-combo-box::part(input-field) {\n\t\t\tpadding: 0;\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t`,\n\t\t// Note: we exclude `size` to avoid overriding Vaadin's ComboBox property\n\t\t// with the same name. Including it will cause Vaadin to calculate NaN size,\n\t\t// and reset items to an empty array, and opening the list box with no items\n\t\t// to display.\n\t\texcludeAttrsSync: ['tabindex', 'size'],\n\t\tcomponentName,\n\t\tincludeForwardProps: ['items', 'renderer', 'selectedItem']\n\t})\n);\n\n","import globals from '../globals';\nimport { ComboBoxClass } from '../../components/descope-combo-box/ComboBoxClass';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = ComboBoxClass.cssVarList;\n\nexport const comboBox = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputDropdownButtonColor]: globalRefs.colors.surface.contrast,\n\t[vars.inputDropdownButtonCursor]: 'pointer',\n\t[vars.inputDropdownButtonSize]: refs.toggleButtonSize,\n\t[vars.inputDropdownButtonOffset]: globalRefs.spacing.xs,\n\n\t_readonly: {\n\t\t[vars.inputDropdownButtonCursor]: 'default'\n\t},\n\n\t[vars.overlay.minHeight]: '400px',\n\t[vars.overlay.margin]: '0 auto'\n\n\t// [vars.overlayCursor]: 'pointer',\n\t// [vars.overlayBackground]: globalRefs.colors.surface.light,\n\t// [vars.overlayBorder]: `2px solid red`,\n};\n\nexport default comboBox;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nconst observedAttributes = ['src', 'alt']\n\nexport const componentName = getComponentName('image');\n\nconst BaseClass = createBaseClass({ componentName, baseSelector: ':host > img' })\nclass RawImage extends BaseClass {\n\tstatic get observedAttributes() {\n\t\treturn observedAttributes.concat(BaseClass.observedAttributes || []);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host > img {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t</style>\n\t\t<img/>\n\t`;\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback?.();\n\n\t\tforwardAttrs(this, this.baseElement, { includeAttrs: observedAttributes })\n\t}\n}\n\nexport const ImageClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\theight: { selector: () => ':host' },\n\t\t\twidth: { selector: () => ':host' },\n\t\t}\n\t}),\n\tdraggableMixin,\n)(RawImage);\n","import { ImageClass } from \"../../components/descope-image/ImageClass\";\n\nconst vars = ImageClass.cssVarList\n\nconst image = {};\n\nexport default image;\nexport { vars }\n","export default [\n\t{\n\t\tname: 'Afghanistan',\n\t\tdialCode: '+93',\n\t\tcode: 'AF'\n\t},\n\t{\n\t\tname: 'Aland Islands',\n\t\tdialCode: '+358',\n\t\tcode: 'AX'\n\t},\n\t{\n\t\tname: 'Albania',\n\t\tdialCode: '+355',\n\t\tcode: 'AL'\n\t},\n\t{\n\t\tname: 'Algeria',\n\t\tdialCode: '+213',\n\t\tcode: 'DZ'\n\t},\n\t{\n\t\tname: 'AmericanSamoa',\n\t\tdialCode: '+1684',\n\t\tcode: 'AS'\n\t},\n\t{\n\t\tname: 'Andorra',\n\t\tdialCode: '+376',\n\t\tcode: 'AD'\n\t},\n\t{\n\t\tname: 'Angola',\n\t\tdialCode: '+244',\n\t\tcode: 'AO'\n\t},\n\t{\n\t\tname: 'Anguilla',\n\t\tdialCode: '+1264',\n\t\tcode: 'AI'\n\t},\n\t{\n\t\tname: 'Antarctica',\n\t\tdialCode: '+672',\n\t\tcode: 'AQ'\n\t},\n\t{\n\t\tname: 'Antigua and Barbuda',\n\t\tdialCode: '+1268',\n\t\tcode: 'AG'\n\t},\n\t{\n\t\tname: 'Argentina',\n\t\tdialCode: '+54',\n\t\tcode: 'AR'\n\t},\n\t{\n\t\tname: 'Armenia',\n\t\tdialCode: '+374',\n\t\tcode: 'AM'\n\t},\n\t{\n\t\tname: 'Aruba',\n\t\tdialCode: '+297',\n\t\tcode: 'AW'\n\t},\n\t{\n\t\tname: 'Australia',\n\t\tdialCode: '+61',\n\t\tcode: 'AU'\n\t},\n\t{\n\t\tname: 'Austria',\n\t\tdialCode: '+43',\n\t\tcode: 'AT'\n\t},\n\t{\n\t\tname: 'Azerbaijan',\n\t\tdialCode: '+994',\n\t\tcode: 'AZ'\n\t},\n\t{\n\t\tname: 'Bahamas',\n\t\tdialCode: '+1242',\n\t\tcode: 'BS'\n\t},\n\t{\n\t\tname: 'Bahrain',\n\t\tdialCode: '+973',\n\t\tcode: 'BH'\n\t},\n\t{\n\t\tname: 'Bangladesh',\n\t\tdialCode: '+880',\n\t\tcode: 'BD'\n\t},\n\t{\n\t\tname: 'Barbados',\n\t\tdialCode: '+1246',\n\t\tcode: 'BB'\n\t},\n\t{\n\t\tname: 'Belarus',\n\t\tdialCode: '+375',\n\t\tcode: 'BY'\n\t},\n\t{\n\t\tname: 'Belgium',\n\t\tdialCode: '+32',\n\t\tcode: 'BE'\n\t},\n\t{\n\t\tname: 'Belize',\n\t\tdialCode: '+501',\n\t\tcode: 'BZ'\n\t},\n\t{\n\t\tname: 'Benin',\n\t\tdialCode: '+229',\n\t\tcode: 'BJ'\n\t},\n\t{\n\t\tname: 'Bermuda',\n\t\tdialCode: '+1441',\n\t\tcode: 'BM'\n\t},\n\t{\n\t\tname: 'Bhutan',\n\t\tdialCode: '+975',\n\t\tcode: 'BT'\n\t},\n\t{\n\t\tname: 'Bolivia, Plurinational State of',\n\t\tdialCode: '+591',\n\t\tcode: 'BO'\n\t},\n\t{\n\t\tname: 'Bosnia and Herzegovina',\n\t\tdialCode: '+387',\n\t\tcode: 'BA'\n\t},\n\t{\n\t\tname: 'Botswana',\n\t\tdialCode: '+267',\n\t\tcode: 'BW'\n\t},\n\t{\n\t\tname: 'Brazil',\n\t\tdialCode: '+55',\n\t\tcode: 'BR'\n\t},\n\t{\n\t\tname: 'British Indian Ocean Territory',\n\t\tdialCode: '+246',\n\t\tcode: 'IO'\n\t},\n\t{\n\t\tname: 'Brunei Darussalam',\n\t\tdialCode: '+673',\n\t\tcode: 'BN'\n\t},\n\t{\n\t\tname: 'Bulgaria',\n\t\tdialCode: '+359',\n\t\tcode: 'BG'\n\t},\n\t{\n\t\tname: 'Burkina Faso',\n\t\tdialCode: '+226',\n\t\tcode: 'BF'\n\t},\n\t{\n\t\tname: 'Burundi',\n\t\tdialCode: '+257',\n\t\tcode: 'BI'\n\t},\n\t{\n\t\tname: 'Cambodia',\n\t\tdialCode: '+855',\n\t\tcode: 'KH'\n\t},\n\t{\n\t\tname: 'Cameroon',\n\t\tdialCode: '+237',\n\t\tcode: 'CM'\n\t},\n\t{\n\t\tname: 'Canada',\n\t\tdialCode: '+1',\n\t\tcode: 'CA'\n\t},\n\t{\n\t\tname: 'Cape Verde',\n\t\tdialCode: '+238',\n\t\tcode: 'CV'\n\t},\n\t{\n\t\tname: 'Cayman Islands',\n\t\tdialCode: '+345',\n\t\tcode: 'KY'\n\t},\n\t{\n\t\tname: 'Central African Republic',\n\t\tdialCode: '+236',\n\t\tcode: 'CF'\n\t},\n\t{\n\t\tname: 'Chad',\n\t\tdialCode: '+235',\n\t\tcode: 'TD'\n\t},\n\t{\n\t\tname: 'Chile',\n\t\tdialCode: '+56',\n\t\tcode: 'CL'\n\t},\n\t{\n\t\tname: 'China',\n\t\tdialCode: '+86',\n\t\tcode: 'CN'\n\t},\n\t{\n\t\tname: 'Christmas Island',\n\t\tdialCode: '+61',\n\t\tcode: 'CX'\n\t},\n\t{\n\t\tname: 'Cocos (Keeling) Islands',\n\t\tdialCode: '+61',\n\t\tcode: 'CC'\n\t},\n\t{\n\t\tname: 'Colombia',\n\t\tdialCode: '+57',\n\t\tcode: 'CO'\n\t},\n\t{\n\t\tname: 'Comoros',\n\t\tdialCode: '+269',\n\t\tcode: 'KM'\n\t},\n\t{\n\t\tname: 'Congo',\n\t\tdialCode: '+242',\n\t\tcode: 'CG'\n\t},\n\t{\n\t\tname: 'Congo, The Democratic Republic of the Congo',\n\t\tdialCode: '+243',\n\t\tcode: 'CD'\n\t},\n\t{\n\t\tname: 'Cook Islands',\n\t\tdialCode: '+682',\n\t\tcode: 'CK'\n\t},\n\t{\n\t\tname: 'Costa Rica',\n\t\tdialCode: '+506',\n\t\tcode: 'CR'\n\t},\n\t{\n\t\tname: \"Cote d'Ivoire\",\n\t\tdialCode: '+225',\n\t\tcode: 'CI'\n\t},\n\t{\n\t\tname: 'Croatia',\n\t\tdialCode: '+385',\n\t\tcode: 'HR'\n\t},\n\t{\n\t\tname: 'Cuba',\n\t\tdialCode: '+53',\n\t\tcode: 'CU'\n\t},\n\t{\n\t\tname: 'Cyprus',\n\t\tdialCode: '+357',\n\t\tcode: 'CY'\n\t},\n\t{\n\t\tname: 'Czech Republic',\n\t\tdialCode: '+420',\n\t\tcode: 'CZ'\n\t},\n\t{\n\t\tname: 'Denmark',\n\t\tdialCode: '+45',\n\t\tcode: 'DK'\n\t},\n\t{\n\t\tname: 'Djibouti',\n\t\tdialCode: '+253',\n\t\tcode: 'DJ'\n\t},\n\t{\n\t\tname: 'Dominica',\n\t\tdialCode: '+1767',\n\t\tcode: 'DM'\n\t},\n\t{\n\t\tname: 'Dominican Republic',\n\t\tdialCode: '+1849',\n\t\tcode: 'DO'\n\t},\n\t{\n\t\tname: 'Ecuador',\n\t\tdialCode: '+593',\n\t\tcode: 'EC'\n\t},\n\t{\n\t\tname: 'Egypt',\n\t\tdialCode: '+20',\n\t\tcode: 'EG'\n\t},\n\t{\n\t\tname: 'El Salvador',\n\t\tdialCode: '+503',\n\t\tcode: 'SV'\n\t},\n\t{\n\t\tname: 'Equatorial Guinea',\n\t\tdialCode: '+240',\n\t\tcode: 'GQ'\n\t},\n\t{\n\t\tname: 'Eritrea',\n\t\tdialCode: '+291',\n\t\tcode: 'ER'\n\t},\n\t{\n\t\tname: 'Estonia',\n\t\tdialCode: '+372',\n\t\tcode: 'EE'\n\t},\n\t{\n\t\tname: 'Ethiopia',\n\t\tdialCode: '+251',\n\t\tcode: 'ET'\n\t},\n\t{\n\t\tname: 'Falkland Islands (Malvinas)',\n\t\tdialCode: '+500',\n\t\tcode: 'FK'\n\t},\n\t{\n\t\tname: 'Faroe Islands',\n\t\tdialCode: '+298',\n\t\tcode: 'FO'\n\t},\n\t{\n\t\tname: 'Fiji',\n\t\tdialCode: '+679',\n\t\tcode: 'FJ'\n\t},\n\t{\n\t\tname: 'Finland',\n\t\tdialCode: '+358',\n\t\tcode: 'FI'\n\t},\n\t{\n\t\tname: 'France',\n\t\tdialCode: '+33',\n\t\tcode: 'FR'\n\t},\n\t{\n\t\tname: 'French Guiana',\n\t\tdialCode: '+594',\n\t\tcode: 'GF'\n\t},\n\t{\n\t\tname: 'French Polynesia',\n\t\tdialCode: '+689',\n\t\tcode: 'PF'\n\t},\n\t{\n\t\tname: 'Gabon',\n\t\tdialCode: '+241',\n\t\tcode: 'GA'\n\t},\n\t{\n\t\tname: 'Gambia',\n\t\tdialCode: '+220',\n\t\tcode: 'GM'\n\t},\n\t{\n\t\tname: 'Georgia',\n\t\tdialCode: '+995',\n\t\tcode: 'GE'\n\t},\n\t{\n\t\tname: 'Germany',\n\t\tdialCode: '+49',\n\t\tcode: 'DE'\n\t},\n\t{\n\t\tname: 'Ghana',\n\t\tdialCode: '+233',\n\t\tcode: 'GH'\n\t},\n\t{\n\t\tname: 'Gibraltar',\n\t\tdialCode: '+350',\n\t\tcode: 'GI'\n\t},\n\t{\n\t\tname: 'Greece',\n\t\tdialCode: '+30',\n\t\tcode: 'GR'\n\t},\n\t{\n\t\tname: 'Greenland',\n\t\tdialCode: '+299',\n\t\tcode: 'GL'\n\t},\n\t{\n\t\tname: 'Grenada',\n\t\tdialCode: '+1473',\n\t\tcode: 'GD'\n\t},\n\t{\n\t\tname: 'Guadeloupe',\n\t\tdialCode: '+590',\n\t\tcode: 'GP'\n\t},\n\t{\n\t\tname: 'Guam',\n\t\tdialCode: '+1671',\n\t\tcode: 'GU'\n\t},\n\t{\n\t\tname: 'Guatemala',\n\t\tdialCode: '+502',\n\t\tcode: 'GT'\n\t},\n\t{\n\t\tname: 'Guernsey',\n\t\tdialCode: '+44',\n\t\tcode: 'GG'\n\t},\n\t{\n\t\tname: 'Guinea',\n\t\tdialCode: '+224',\n\t\tcode: 'GN'\n\t},\n\t{\n\t\tname: 'Guinea-Bissau',\n\t\tdialCode: '+245',\n\t\tcode: 'GW'\n\t},\n\t{\n\t\tname: 'Guyana',\n\t\tdialCode: '+595',\n\t\tcode: 'GY'\n\t},\n\t{\n\t\tname: 'Haiti',\n\t\tdialCode: '+509',\n\t\tcode: 'HT'\n\t},\n\t{\n\t\tname: 'Holy See (Vatican City State)',\n\t\tdialCode: '+379',\n\t\tcode: 'VA'\n\t},\n\t{\n\t\tname: 'Honduras',\n\t\tdialCode: '+504',\n\t\tcode: 'HN'\n\t},\n\t{\n\t\tname: 'Hong Kong',\n\t\tdialCode: '+852',\n\t\tcode: 'HK'\n\t},\n\t{\n\t\tname: 'Hungary',\n\t\tdialCode: '+36',\n\t\tcode: 'HU'\n\t},\n\t{\n\t\tname: 'Iceland',\n\t\tdialCode: '+354',\n\t\tcode: 'IS'\n\t},\n\t{\n\t\tname: 'India',\n\t\tdialCode: '+91',\n\t\tcode: 'IN'\n\t},\n\t{\n\t\tname: 'Indonesia',\n\t\tdialCode: '+62',\n\t\tcode: 'ID'\n\t},\n\t{\n\t\tname: 'Iran, Islamic Republic of Persian Gulf',\n\t\tdialCode: '+98',\n\t\tcode: 'IR'\n\t},\n\t{\n\t\tname: 'Iraq',\n\t\tdialCode: '+964',\n\t\tcode: 'IQ'\n\t},\n\t{\n\t\tname: 'Ireland',\n\t\tdialCode: '+353',\n\t\tcode: 'IE'\n\t},\n\t{\n\t\tname: 'Isle of Man',\n\t\tdialCode: '+44',\n\t\tcode: 'IM'\n\t},\n\t{\n\t\tname: 'Israel',\n\t\tdialCode: '+972',\n\t\tcode: 'IL'\n\t},\n\t{\n\t\tname: 'Italy',\n\t\tdialCode: '+39',\n\t\tcode: 'IT'\n\t},\n\t{\n\t\tname: 'Jamaica',\n\t\tdialCode: '+1876',\n\t\tcode: 'JM'\n\t},\n\t{\n\t\tname: 'Japan',\n\t\tdialCode: '+81',\n\t\tcode: 'JP'\n\t},\n\t{\n\t\tname: 'Jersey',\n\t\tdialCode: '+44',\n\t\tcode: 'JE'\n\t},\n\t{\n\t\tname: 'Jordan',\n\t\tdialCode: '+962',\n\t\tcode: 'JO'\n\t},\n\t{\n\t\tname: 'Kazakhstan',\n\t\tdialCode: '+77',\n\t\tcode: 'KZ'\n\t},\n\t{\n\t\tname: 'Kenya',\n\t\tdialCode: '+254',\n\t\tcode: 'KE'\n\t},\n\t{\n\t\tname: 'Kiribati',\n\t\tdialCode: '+686',\n\t\tcode: 'KI'\n\t},\n\t{\n\t\tname: \"Korea, Democratic People's Republic of Korea\",\n\t\tdialCode: '+850',\n\t\tcode: 'KP'\n\t},\n\t{\n\t\tname: 'Korea, Republic of South Korea',\n\t\tdialCode: '+82',\n\t\tcode: 'KR'\n\t},\n\t{\n\t\tname: 'Kuwait',\n\t\tdialCode: '+965',\n\t\tcode: 'KW'\n\t},\n\t{\n\t\tname: 'Kyrgyzstan',\n\t\tdialCode: '+996',\n\t\tcode: 'KG'\n\t},\n\t{\n\t\tname: 'Laos',\n\t\tdialCode: '+856',\n\t\tcode: 'LA'\n\t},\n\t{\n\t\tname: 'Latvia',\n\t\tdialCode: '+371',\n\t\tcode: 'LV'\n\t},\n\t{\n\t\tname: 'Lebanon',\n\t\tdialCode: '+961',\n\t\tcode: 'LB'\n\t},\n\t{\n\t\tname: 'Lesotho',\n\t\tdialCode: '+266',\n\t\tcode: 'LS'\n\t},\n\t{\n\t\tname: 'Liberia',\n\t\tdialCode: '+231',\n\t\tcode: 'LR'\n\t},\n\t{\n\t\tname: 'Libyan Arab Jamahiriya',\n\t\tdialCode: '+218',\n\t\tcode: 'LY'\n\t},\n\t{\n\t\tname: 'Liechtenstein',\n\t\tdialCode: '+423',\n\t\tcode: 'LI'\n\t},\n\t{\n\t\tname: 'Lithuania',\n\t\tdialCode: '+370',\n\t\tcode: 'LT'\n\t},\n\t{\n\t\tname: 'Luxembourg',\n\t\tdialCode: '+352',\n\t\tcode: 'LU'\n\t},\n\t{\n\t\tname: 'Macao',\n\t\tdialCode: '+853',\n\t\tcode: 'MO'\n\t},\n\t{\n\t\tname: 'Macedonia',\n\t\tdialCode: '+389',\n\t\tcode: 'MK'\n\t},\n\t{\n\t\tname: 'Madagascar',\n\t\tdialCode: '+261',\n\t\tcode: 'MG'\n\t},\n\t{\n\t\tname: 'Malawi',\n\t\tdialCode: '+265',\n\t\tcode: 'MW'\n\t},\n\t{\n\t\tname: 'Malaysia',\n\t\tdialCode: '+60',\n\t\tcode: 'MY'\n\t},\n\t{\n\t\tname: 'Maldives',\n\t\tdialCode: '+960',\n\t\tcode: 'MV'\n\t},\n\t{\n\t\tname: 'Mali',\n\t\tdialCode: '+223',\n\t\tcode: 'ML'\n\t},\n\t{\n\t\tname: 'Malta',\n\t\tdialCode: '+356',\n\t\tcode: 'MT'\n\t},\n\t{\n\t\tname: 'Marshall Islands',\n\t\tdialCode: '+692',\n\t\tcode: 'MH'\n\t},\n\t{\n\t\tname: 'Martinique',\n\t\tdialCode: '+596',\n\t\tcode: 'MQ'\n\t},\n\t{\n\t\tname: 'Mauritania',\n\t\tdialCode: '+222',\n\t\tcode: 'MR'\n\t},\n\t{\n\t\tname: 'Mauritius',\n\t\tdialCode: '+230',\n\t\tcode: 'MU'\n\t},\n\t{\n\t\tname: 'Mayotte',\n\t\tdialCode: '+262',\n\t\tcode: 'YT'\n\t},\n\t{\n\t\tname: 'Mexico',\n\t\tdialCode: '+52',\n\t\tcode: 'MX'\n\t},\n\t{\n\t\tname: 'Micronesia, Federated States of Micronesia',\n\t\tdialCode: '+691',\n\t\tcode: 'FM'\n\t},\n\t{\n\t\tname: 'Moldova',\n\t\tdialCode: '+373',\n\t\tcode: 'MD'\n\t},\n\t{\n\t\tname: 'Monaco',\n\t\tdialCode: '+377',\n\t\tcode: 'MC'\n\t},\n\t{\n\t\tname: 'Mongolia',\n\t\tdialCode: '+976',\n\t\tcode: 'MN'\n\t},\n\t{\n\t\tname: 'Montenegro',\n\t\tdialCode: '+382',\n\t\tcode: 'ME'\n\t},\n\t{\n\t\tname: 'Montserrat',\n\t\tdialCode: '+1664',\n\t\tcode: 'MS'\n\t},\n\t{\n\t\tname: 'Morocco',\n\t\tdialCode: '+212',\n\t\tcode: 'MA'\n\t},\n\t{\n\t\tname: 'Mozambique',\n\t\tdialCode: '+258',\n\t\tcode: 'MZ'\n\t},\n\t{\n\t\tname: 'Myanmar',\n\t\tdialCode: '+95',\n\t\tcode: 'MM'\n\t},\n\t{\n\t\tname: 'Namibia',\n\t\tdialCode: '+264',\n\t\tcode: 'NA'\n\t},\n\t{\n\t\tname: 'Nauru',\n\t\tdialCode: '+674',\n\t\tcode: 'NR'\n\t},\n\t{\n\t\tname: 'Nepal',\n\t\tdialCode: '+977',\n\t\tcode: 'NP'\n\t},\n\t{\n\t\tname: 'Netherlands',\n\t\tdialCode: '+31',\n\t\tcode: 'NL'\n\t},\n\t{\n\t\tname: 'Netherlands Antilles',\n\t\tdialCode: '+599',\n\t\tcode: 'AN'\n\t},\n\t{\n\t\tname: 'New Caledonia',\n\t\tdialCode: '+687',\n\t\tcode: 'NC'\n\t},\n\t{\n\t\tname: 'New Zealand',\n\t\tdialCode: '+64',\n\t\tcode: 'NZ'\n\t},\n\t{\n\t\tname: 'Nicaragua',\n\t\tdialCode: '+505',\n\t\tcode: 'NI'\n\t},\n\t{\n\t\tname: 'Niger',\n\t\tdialCode: '+227',\n\t\tcode: 'NE'\n\t},\n\t{\n\t\tname: 'Nigeria',\n\t\tdialCode: '+234',\n\t\tcode: 'NG'\n\t},\n\t{\n\t\tname: 'Niue',\n\t\tdialCode: '+683',\n\t\tcode: 'NU'\n\t},\n\t{\n\t\tname: 'Norfolk Island',\n\t\tdialCode: '+672',\n\t\tcode: 'NF'\n\t},\n\t{\n\t\tname: 'Northern Mariana Islands',\n\t\tdialCode: '+1670',\n\t\tcode: 'MP'\n\t},\n\t{\n\t\tname: 'Norway',\n\t\tdialCode: '+47',\n\t\tcode: 'NO'\n\t},\n\t{\n\t\tname: 'Oman',\n\t\tdialCode: '+968',\n\t\tcode: 'OM'\n\t},\n\t{\n\t\tname: 'Pakistan',\n\t\tdialCode: '+92',\n\t\tcode: 'PK'\n\t},\n\t{\n\t\tname: 'Palau',\n\t\tdialCode: '+680',\n\t\tcode: 'PW'\n\t},\n\t{\n\t\tname: 'Palestinian Territory, Occupied',\n\t\tdialCode: '+970',\n\t\tcode: 'PS'\n\t},\n\t{\n\t\tname: 'Panama',\n\t\tdialCode: '+507',\n\t\tcode: 'PA'\n\t},\n\t{\n\t\tname: 'Papua New Guinea',\n\t\tdialCode: '+675',\n\t\tcode: 'PG'\n\t},\n\t{\n\t\tname: 'Paraguay',\n\t\tdialCode: '+595',\n\t\tcode: 'PY'\n\t},\n\t{\n\t\tname: 'Peru',\n\t\tdialCode: '+51',\n\t\tcode: 'PE'\n\t},\n\t{\n\t\tname: 'Philippines',\n\t\tdialCode: '+63',\n\t\tcode: 'PH'\n\t},\n\t{\n\t\tname: 'Pitcairn',\n\t\tdialCode: '+872',\n\t\tcode: 'PN'\n\t},\n\t{\n\t\tname: 'Poland',\n\t\tdialCode: '+48',\n\t\tcode: 'PL'\n\t},\n\t{\n\t\tname: 'Portugal',\n\t\tdialCode: '+351',\n\t\tcode: 'PT'\n\t},\n\t{\n\t\tname: 'Puerto Rico',\n\t\tdialCode: '+1939',\n\t\tcode: 'PR'\n\t},\n\t{\n\t\tname: 'Qatar',\n\t\tdialCode: '+974',\n\t\tcode: 'QA'\n\t},\n\t{\n\t\tname: 'Romania',\n\t\tdialCode: '+40',\n\t\tcode: 'RO'\n\t},\n\t{\n\t\tname: 'Russia',\n\t\tdialCode: '+7',\n\t\tcode: 'RU'\n\t},\n\t{\n\t\tname: 'Rwanda',\n\t\tdialCode: '+250',\n\t\tcode: 'RW'\n\t},\n\t{\n\t\tname: 'Reunion',\n\t\tdialCode: '+262',\n\t\tcode: 'RE'\n\t},\n\t{\n\t\tname: 'Saint Barthelemy',\n\t\tdialCode: '+590',\n\t\tcode: 'BL'\n\t},\n\t{\n\t\tname: 'Saint Helena, Ascension and Tristan Da Cunha',\n\t\tdialCode: '+290',\n\t\tcode: 'SH'\n\t},\n\t{\n\t\tname: 'Saint Kitts and Nevis',\n\t\tdialCode: '+1869',\n\t\tcode: 'KN'\n\t},\n\t{\n\t\tname: 'Saint Lucia',\n\t\tdialCode: '+1758',\n\t\tcode: 'LC'\n\t},\n\t{\n\t\tname: 'Saint Martin',\n\t\tdialCode: '+590',\n\t\tcode: 'MF'\n\t},\n\t{\n\t\tname: 'Saint Pierre and Miquelon',\n\t\tdialCode: '+508',\n\t\tcode: 'PM'\n\t},\n\t{\n\t\tname: 'Saint Vincent and the Grenadines',\n\t\tdialCode: '+1784',\n\t\tcode: 'VC'\n\t},\n\t{\n\t\tname: 'Samoa',\n\t\tdialCode: '+685',\n\t\tcode: 'WS'\n\t},\n\t{\n\t\tname: 'San Marino',\n\t\tdialCode: '+378',\n\t\tcode: 'SM'\n\t},\n\t{\n\t\tname: 'Sao Tome and Principe',\n\t\tdialCode: '+239',\n\t\tcode: 'ST'\n\t},\n\t{\n\t\tname: 'Saudi Arabia',\n\t\tdialCode: '+966',\n\t\tcode: 'SA'\n\t},\n\t{\n\t\tname: 'Senegal',\n\t\tdialCode: '+221',\n\t\tcode: 'SN'\n\t},\n\t{\n\t\tname: 'Serbia',\n\t\tdialCode: '+381',\n\t\tcode: 'RS'\n\t},\n\t{\n\t\tname: 'Seychelles',\n\t\tdialCode: '+248',\n\t\tcode: 'SC'\n\t},\n\t{\n\t\tname: 'Sierra Leone',\n\t\tdialCode: '+232',\n\t\tcode: 'SL'\n\t},\n\t{\n\t\tname: 'Singapore',\n\t\tdialCode: '+65',\n\t\tcode: 'SG'\n\t},\n\t{\n\t\tname: 'Slovakia',\n\t\tdialCode: '+421',\n\t\tcode: 'SK'\n\t},\n\t{\n\t\tname: 'Slovenia',\n\t\tdialCode: '+386',\n\t\tcode: 'SI'\n\t},\n\t{\n\t\tname: 'Solomon Islands',\n\t\tdialCode: '+677',\n\t\tcode: 'SB'\n\t},\n\t{\n\t\tname: 'Somalia',\n\t\tdialCode: '+252',\n\t\tcode: 'SO'\n\t},\n\t{\n\t\tname: 'South Africa',\n\t\tdialCode: '+27',\n\t\tcode: 'ZA'\n\t},\n\t{\n\t\tname: 'South Sudan',\n\t\tdialCode: '+211',\n\t\tcode: 'SS'\n\t},\n\t{\n\t\tname: 'South Georgia and the South Sandwich Islands',\n\t\tdialCode: '+500',\n\t\tcode: 'GS'\n\t},\n\t{\n\t\tname: 'Spain',\n\t\tdialCode: '+34',\n\t\tcode: 'ES'\n\t},\n\t{\n\t\tname: 'Sri Lanka',\n\t\tdialCode: '+94',\n\t\tcode: 'LK'\n\t},\n\t{\n\t\tname: 'Sudan',\n\t\tdialCode: '+249',\n\t\tcode: 'SD'\n\t},\n\t{\n\t\tname: 'Suriname',\n\t\tdialCode: '+597',\n\t\tcode: 'SR'\n\t},\n\t{\n\t\tname: 'Svalbard and Jan Mayen',\n\t\tdialCode: '+47',\n\t\tcode: 'SJ'\n\t},\n\t{\n\t\tname: 'Swaziland',\n\t\tdialCode: '+268',\n\t\tcode: 'SZ'\n\t},\n\t{\n\t\tname: 'Sweden',\n\t\tdialCode: '+46',\n\t\tcode: 'SE'\n\t},\n\t{\n\t\tname: 'Switzerland',\n\t\tdialCode: '+41',\n\t\tcode: 'CH'\n\t},\n\t{\n\t\tname: 'Syrian Arab Republic',\n\t\tdialCode: '+963',\n\t\tcode: 'SY'\n\t},\n\t{\n\t\tname: 'Taiwan',\n\t\tdialCode: '+886',\n\t\tcode: 'TW'\n\t},\n\t{\n\t\tname: 'Tajikistan',\n\t\tdialCode: '+992',\n\t\tcode: 'TJ'\n\t},\n\t{\n\t\tname: 'Tanzania, United Republic of Tanzania',\n\t\tdialCode: '+255',\n\t\tcode: 'TZ'\n\t},\n\t{\n\t\tname: 'Thailand',\n\t\tdialCode: '+66',\n\t\tcode: 'TH'\n\t},\n\t{\n\t\tname: 'Timor-Leste',\n\t\tdialCode: '+670',\n\t\tcode: 'TL'\n\t},\n\t{\n\t\tname: 'Togo',\n\t\tdialCode: '+228',\n\t\tcode: 'TG'\n\t},\n\t{\n\t\tname: 'Tokelau',\n\t\tdialCode: '+690',\n\t\tcode: 'TK'\n\t},\n\t{\n\t\tname: 'Tonga',\n\t\tdialCode: '+676',\n\t\tcode: 'TO'\n\t},\n\t{\n\t\tname: 'Trinidad and Tobago',\n\t\tdialCode: '+1868',\n\t\tcode: 'TT'\n\t},\n\t{\n\t\tname: 'Tunisia',\n\t\tdialCode: '+216',\n\t\tcode: 'TN'\n\t},\n\t{\n\t\tname: 'Turkey',\n\t\tdialCode: '+90',\n\t\tcode: 'TR'\n\t},\n\t{\n\t\tname: 'Turkmenistan',\n\t\tdialCode: '+993',\n\t\tcode: 'TM'\n\t},\n\t{\n\t\tname: 'Turks and Caicos Islands',\n\t\tdialCode: '+1649',\n\t\tcode: 'TC'\n\t},\n\t{\n\t\tname: 'Tuvalu',\n\t\tdialCode: '+688',\n\t\tcode: 'TV'\n\t},\n\t{\n\t\tname: 'Uganda',\n\t\tdialCode: '+256',\n\t\tcode: 'UG'\n\t},\n\t{\n\t\tname: 'Ukraine',\n\t\tdialCode: '+380',\n\t\tcode: 'UA'\n\t},\n\t{\n\t\tname: 'United Arab Emirates',\n\t\tdialCode: '+971',\n\t\tcode: 'AE'\n\t},\n\t{\n\t\tname: 'United Kingdom',\n\t\tdialCode: '+44',\n\t\tcode: 'GB'\n\t},\n\t{\n\t\tname: 'United States',\n\t\tdialCode: '+1',\n\t\tcode: 'US'\n\t},\n\t{\n\t\tname: 'Uruguay',\n\t\tdialCode: '+598',\n\t\tcode: 'UY'\n\t},\n\t{\n\t\tname: 'Uzbekistan',\n\t\tdialCode: '+998',\n\t\tcode: 'UZ'\n\t},\n\t{\n\t\tname: 'Vanuatu',\n\t\tdialCode: '+678',\n\t\tcode: 'VU'\n\t},\n\t{\n\t\tname: 'Venezuela, Bolivarian Republic of Venezuela',\n\t\tdialCode: '+58',\n\t\tcode: 'VE'\n\t},\n\t{\n\t\tname: 'Vietnam',\n\t\tdialCode: '+84',\n\t\tcode: 'VN'\n\t},\n\t{\n\t\tname: 'Virgin Islands, British',\n\t\tdialCode: '+1284',\n\t\tcode: 'VG'\n\t},\n\t{\n\t\tname: 'Virgin Islands, U.S.',\n\t\tdialCode: '+1340',\n\t\tcode: 'VI'\n\t},\n\t{\n\t\tname: 'Wallis and Futuna',\n\t\tdialCode: '+681',\n\t\tcode: 'WF'\n\t},\n\t{\n\t\tname: 'Yemen',\n\t\tdialCode: '+967',\n\t\tcode: 'YE'\n\t},\n\t{\n\t\tname: 'Zambia',\n\t\tdialCode: '+260',\n\t\tcode: 'ZM'\n\t},\n\t{\n\t\tname: 'Zimbabwe',\n\t\tdialCode: '+263',\n\t\tcode: 'ZW'\n\t}\n].sort((a, b) => (a.name < b.name ? -1 : 1));\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { getComponentName } from '../../../helpers/componentHelpers';\nimport CountryCodes from '../CountryCodes';\nimport { comboBoxItem } from '../helpers';\n\nexport const componentName = getComponentName('phone-field-internal');\n\nconst commonAttrs = [\n\t'disabled',\n\t'size',\n\t'bordered',\n\t'invalid',\n\t'readonly',\n];\nconst countryAttrs = ['country-input-placeholder', 'default-code'];\nconst phoneAttrs = ['phone-input-placeholder', 'maxlength'];\nconst mapAttrs = {\n\t'country-input-placeholder': 'placeholder',\n\t'phone-input-placeholder': 'placeholder',\n}\n\nconst inputRelatedAttrs = [].concat(commonAttrs, countryAttrs, phoneAttrs);\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' });\n\nclass PhoneFieldInternal extends BaseInputClass {\n\tstatic get observedAttributes() {\n\t\treturn [].concat(\n\t\t\tBaseInputClass.observedAttributes || [],\n\t\t\tinputRelatedAttrs,\n\t\t);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.innerHTML = `\n <div>\n <descope-combo-box\n\t\t\t\titem-label-path=\"data-name\"\n\t\t\t\titem-value-path=\"data-id\"\n\t\t\t>\n\t\t\t${CountryCodes.map(item => comboBoxItem(item)).join('')}\n\t\t\t</descope-combo-box>\n\t\t\t<div class=\"separator\"></div>\n <descope-text-field type=\"tel\"></descope-text-field>\n </div>`;\n\n\t\tthis.countryCodeInput = this.querySelector('descope-combo-box');\n\t\tthis.phoneNumberInput = this.querySelector('descope-text-field');\n\t\tthis.inputs = [\n\t\t\tthis.countryCodeInput,\n\t\t\tthis.phoneNumberInput\n\t\t];\n\t}\n\n\tget value() {\n\t\treturn this.inputs.map(({ value }) => value).join('-');\n\t}\n\n\tset value(val) {\n\t\tconst [countryCode = '', phoneNumber = ''] = val.split('-');\n\t\tconst countryCodeItem = this.getCountryByDialCode(countryCode);\n\t\tif (countryCodeItem) {\n\t\t\tthis.countryCodeInput.selectedItem = countryCodeItem;\n\t\t}\n\t\tthis.phoneNumberInput.value = phoneNumber;\n\t}\n\n\tget phoneNumberValue() {\n\t\treturn this.phoneNumberInput.value;\n\t}\n\n\tget countryCodeValue() {\n\t\treturn this.countryCodeInput.shadowRoot.querySelector('input').value;\n\t}\n\n\tget minLength() {\n\t\treturn parseInt(this.getAttribute('minlength'), 10) || 0;\n\t}\n\n\tgetValidity() {\n\t\tconst hasCode = this.countryCodeInput.value;\n\t\tconst hasPhone = this.phoneNumberInput.value;\n\t\tconst emptyValue = !hasCode || !hasPhone;\n\t\tconst hasMinPhoneLength = this.phoneNumberInput.value.length && this.phoneNumberInput.value.length < this.minLength;\n\n\t\tif (this.isRequired && emptyValue) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\tif (hasMinPhoneLength) {\n\t\t\treturn { tooShort: true };\n\t\t}\n\t\tif ((hasCode && !hasPhone) || (!hasCode && hasPhone)) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\treturn {}\n\t};\n\n\tinit() {\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\t// we want to ignore focus events we are dispatching\n\t\t\tif (e.isTrusted)\n\t\t\t\tthis.inputs[0].focus()\n\t\t})\n\n\t\tsuper.init?.();\n\t\tthis.initInputs();\n\t\tthis.setComboBoxDescriptor();\n\t}\n\n\tgetCountryByDialCode(countryDialCode) {\n\t\treturn this.countryCodeInput.items.find(c => c.getAttribute('data-dial-code') === countryDialCode);\n\t}\n\n\tgetCountryByCodeId(countryCode) {\n\t\treturn this.countryCodeInput.items.find(c => c['data-id'] === countryCode)?.['data-name'];\n\t}\n\n\thandleDefaultCountryCode(countryCode) {\n\t\tif (!this.countryCodeInput.value) {\n\t\t\tconst countryCodeItem = this.getCountryByCodeId(countryCode);\n\t\t\t// When replacing the input component (inserting internal component into text-field) -\n\t\t\t// Vaadin resets the input's value. We use setTimeout in order to make sure this happens\n\t\t\t// after the reset.\n\t\t\tif (countryCodeItem) {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.countryCodeInput.selectedItem = countryCodeItem;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t// We want to override Vaadin's Combo Box value setter. This is needed since Vaadin couples between the\n\t// field that it searches the value, and the finaly display value of the input. We want to search ALL\n\t// the values (so we made a field with all the values), but display ONLY the dial code, so we added\n\t// this setter, which does that.\n\tsetComboBoxDescriptor() {\n\t\tconst comboBox = this.countryCodeInput;\n\t\tconst input = comboBox.shadowRoot.querySelector('input');\n\t\tconst valueDescriptor = Object.getOwnPropertyDescriptor(\n\t\t\tinput.constructor.prototype,\n\t\t\t'value'\n\t\t);\n\t\tObject.defineProperties(input, {\n\t\t\tvalue: {\n\t\t\t\t...valueDescriptor,\n\t\t\t\tset(val) {\n\t\t\t\t\tif (!comboBox.items?.length) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst [_code, dialCode] = val.split(' ');\n\n\t\t\t\t\tif (val === this.value) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tvalueDescriptor.set.call(this, dialCode || '');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tinitInputs() {\n\t\t// Sanitize phone input value to filter everything but digits\n\t\tthis.phoneNumberInput.addEventListener('input', (e) => {\n\t\t\tconst telDigitsRegExp = /^\\d$/;\n\t\t\tconst sanitizedInput = e.target.value\n\t\t\t\t.split('')\n\t\t\t\t.filter(char => telDigitsRegExp.test(char))\n\t\t\t\t.join('');\n\t\t\te.target.value = sanitizedInput;\n\t\t});\n\n\t\tthis.handleFocusEventsDispatching(this.inputs)\n\t\tthis.handleInputEventDispatching()\n\t}\n\n\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\tsuper.attributeChangedCallback(attrName, oldValue, newValue);\n\n\t\tif (oldValue !== newValue) {\n\t\t\tif (attrName === 'default-code' && newValue) {\n\t\t\t\tthis.handleDefaultCountryCode(newValue);\n\t\t\t}\n\t\t\telse if (inputRelatedAttrs.includes(attrName)) {\n\t\t\t\tconst attr = mapAttrs[attrName] || attrName;\n\n\t\t\t\tif (commonAttrs.includes(attrName)) {\n\t\t\t\t\tthis.inputs.forEach(input => input.setAttribute(attr, newValue));\n\t\t\t\t}\n\t\t\t\telse if (countryAttrs.includes(attrName)) {\n\t\t\t\t\tthis.countryCodeInput.setAttribute(attr, newValue);\n\t\t\t\t}\n\t\t\t\telse if (phoneAttrs.includes(attrName)) {\n\t\t\t\t\tthis.phoneNumberInput.setAttribute(attr, newValue);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default PhoneFieldInternal;\n","import { componentName as descopeInternalComponentName } from './descope-phone-field-internal/PhoneFieldInternal';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { compose } from '../../helpers';\nimport {\n\tcreateProxy,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tproxyInputMixin\n} from '../../mixins';\nimport { TextFieldClass } from '../descope-text-field/TextFieldClass';\nimport { ComboBoxClass } from '../descope-combo-box/ComboBoxClass';\nimport CountryCodes from './CountryCodes';\nimport { resetInputCursor, resetInputFieldInvalidBackgroundColor, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nconst textVars = TextFieldClass.cssVarList;\nconst comboVars = ComboBoxClass.cssVarList;\n\nexport const componentName = getComponentName('phone-field');\n\nconst customMixin = (superclass) =>\n\tclass PhoneFieldMixinClass extends superclass {\n\t\tstatic get CountryCodes() {\n\t\t\treturn CountryCodes;\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t\t<${descopeInternalComponentName} \n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\tslot=\"input\"\n\t\t\t\t></${descopeInternalComponentName}>\n \t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this.shadowRoot.host, this.inputElement, {\n\t\t\t\tincludeAttrs: [\n\t\t\t\t\t'size',\n\t\t\t\t\t'bordered',\n\t\t\t\t\t'invalid',\n\t\t\t\t\t'minlength',\n\t\t\t\t\t'maxlength',\n\t\t\t\t\t'default-code',\n\t\t\t\t\t'country-input-placeholder',\n\t\t\t\t\t'phone-input-placeholder',\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\t};\n\nconst {\n\thost,\n\tlabel,\n\trequiredIndicator,\n\tinputField,\n\tcountryCodeInput,\n\tphoneInput,\n\tseparator,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tinputField: { selector: '::part(input-field)' },\n\tphoneInput: { selector: () => 'descope-text-field' },\n\tcountryCodeInput: { selector: () => 'descope-combo-box' },\n\tseparator: { selector: 'descope-phone-field-internal .separator' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport const PhoneFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\tinputField,\n\t\t\t\t{\n\t\t\t\t\tselector: TextFieldClass.componentName,\n\t\t\t\t\tproperty: TextFieldClass.cssVarList.fontSize\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tselector: ComboBoxClass.componentName,\n\t\t\t\t\tproperty: ComboBoxClass.cssVarList.fontSize\n\t\t\t\t}\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText,\n\t\t\t\t{\n\t\t\t\t\t...countryCodeInput,\n\t\t\t\t\tproperty: ComboBoxClass.cssVarList.overlay.fontFamily\n\t\t\t\t}\n\t\t\t],\n\t\t\thostWidth: [\n\t\t\t\t{ ...host, property: 'width' },\n\t\t\t\t{ ...phoneInput, property: 'width' },\n\t\t\t\t{ ...countryCodeInput, property: '--vaadin-combo-box-overlay-width' }\n\t\t\t],\n\n\t\t\tinputBorderStyle: [\n\t\t\t\t{ ...inputField, property: 'border-style' },\n\t\t\t\t{ ...separator, property: 'border-left-style' }\n\t\t\t],\n\t\t\tinputBorderWidth: [\n\t\t\t\t{ ...inputField, property: 'border-width' },\n\t\t\t\t{ ...separator, property: 'border-left-width' }\n\t\t\t],\n\t\t\tinputBorderColor: [\n\t\t\t\t{ ...inputField, property: 'border-color' },\n\t\t\t\t{ ...separator, property: 'border-left-color' }\n\t\t\t],\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\t\t\tcountryCodeInputWidth: { ...countryCodeInput, property: comboVars.hostWidth },\n\t\t\tcountryCodeDropdownWidth: {\n\t\t\t\t...countryCodeInput,\n\t\t\t\tproperty: '--vaadin-combo-box-overlay-width'\n\t\t\t},\n\t\t\tphoneInputWidth: { ...phoneInput, property: 'width' },\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tinputValueTextColor: [\n\t\t\t\t{ ...phoneInput, property: textVars.inputValueTextColor },\n\t\t\t\t{ ...countryCodeInput, property: comboVars.inputValueTextColor }\n\t\t\t],\n\n\t\t\tinputPlaceholderTextColor: { ...phoneInput, property: textVars.inputPlaceholderColor },\n\n\t\t\toverlayItemBackgroundColor: {\n\t\t\t\tselector: 'descope-combo-box',\n\t\t\t\tproperty: comboVars.overlayItemBackgroundColor\n\t\t\t},\n\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcustomMixin,\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 15em;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\t\t\t${useHostExternalPadding(PhoneFieldClass.cssVarList)}\n\t\t\t${resetInputCursor('vaadin-text-field')}\n\t\t\t${resetInputFieldInvalidBackgroundColor('vaadin-text-field')}\n\n\t\t\tdiv {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\tvaadin-text-field {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-text-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\t\t\tvaadin-text-field::before {\n\t\t\t\theight: 0;\n\t\t\t}\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tpadding: 0;\n\t\t\t\tmin-height: 0;\n\t\t\t\tbackground: transparent;\n\t\t\t\toverflow: hidden;\n\t\t\t}\n\t\t\tdescope-phone-field-internal {\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t\tpadding: 0;\n\t\t\t\tmin-height: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t\tdescope-phone-field-internal > div {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t\tdescope-phone-field-internal .separator {\n\t\t\t\tflex: 0;\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t\tdescope-combo-box {\n\t\t\t\tflex-shrink: 0;\n\t\t\t\tmin-width: 5.75em;\n\t\t\t\t${comboVars.inputOutlineWidth}: 0;\n\t\t\t\t${comboVars.inputOutlineOffset}: 0;\n\t\t\t\t${comboVars.inputBorderWidth}: 0;\n\t\t\t\t${comboVars.inputBorderRadius}: 0;\n\t\t\t}\n\t\t\tdescope-text-field {\n\t\t\t\tflex-grow: 1;\n\t\t\t\t${textVars.inputOutlineWidth}: 0;\n\t\t\t\t${comboVars.inputOutlineOffset}: 0;\n\t\t\t\t${textVars.inputBorderWidth}: 0;\n\t\t\t\t${textVars.inputBorderRadius}: 0;\n\t\t\t}\n\t\t\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\tvaadin-text-field::part(input-field)::after {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default PhoneFieldClass;\n","import { PhoneFieldClass } from '../../components/descope-phone-field/PhoneFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = PhoneFieldClass.cssVarList;\n\nconst phoneField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.phoneInputWidth]: refs.minWidth,\n\t[vars.countryCodeInputWidth]: '5em',\n\t[vars.countryCodeDropdownWidth]: '20em',\n\n\t// '@overlay': {\n\t// \toverlayItemBackgroundColor: 'red'\n\t// }\n};\n\nexport default phoneField;\nexport { vars }\n","import { getComponentName } from \"../../../helpers/componentHelpers\";\n\nexport const componentName = getComponentName('new-password-internal');\n","import { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { compose } from '../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcreateProxy,\n} from '../../mixins';\nimport { componentName as descopeInternalComponentName } from './descope-new-password-internal/componentName';\nimport { PasswordClass } from '../descope-password/PasswordClass';\nimport { useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('new-password');\n\nconst customMixin = (superclass) =>\n\tclass NewPasswordMixinClass extends superclass {\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t<${descopeInternalComponentName} \n\t\t\t\tname=\"new-password\" \n\t\t\t\ttabindex=\"-1\"\n\t\t\t\tslot=\"input\"\n\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this, this.inputElement, {\n\t\t\t\tincludeAttrs: [\n\t\t\t\t\t'password-label',\n\t\t\t\t\t'password-placeholder',\n\t\t\t\t\t'confirm-label',\n\t\t\t\t\t'confirm-placeholder',\n\t\t\t\t\t'full-width',\n\t\t\t\t\t'size',\n\t\t\t\t\t'bordered',\n\t\t\t\t\t'label',\n\t\t\t\t\t'has-confirm',\n\t\t\t\t\t'invalid',\n\t\t\t\t\t'readonly',\n\t\t\t\t\t'draggable'\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\t};\n\nconst {\n\thost,\n\tlabel,\n\tinternalInputsWrapper,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\tinternalInputsWrapper: { selector: 'descope-new-password-internal .wrapper' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\nexport const NewPasswordClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\t{},\n\t\t\t\t{\n\t\t\t\t\tselector: PasswordClass.componentName,\n\t\t\t\t\tproperty: PasswordClass.cssVarList.fontSize\n\t\t\t\t}\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText\n\t\t\t],\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tinputsRequiredIndicator: { ...host, property: 'content' },\n\t\t\tspaceBetweenInputs: { ...internalInputsWrapper, property: 'gap' },\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcustomMixin,\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\tvaadin-text-field {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\t\tvaadin-text-field::part(input-field) {\n\t\t\tmin-height: 0;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tpadding: 0;\n\t\t}\n\t\tvaadin-text-field::part(input-field)::after {\n\t\t\tbackground: transparent;\n\t\t\topacity: 0;\n\t\t}\n\t\tdescope-new-password-internal {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tpadding: 0;\n\t\t}\n\t\tdescope-new-password-internal > .wrapper {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\tdescope-password {\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t}\n\t\tdescope-new-password-internal vaadin-password-field::before {\n\t\t\theight: initial;\n\t\t},\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { NewPasswordClass } from '../../components/descope-new-password/NewPasswordClass';\nimport { refs } from \"./inputWrapper\"\n\nconst vars = NewPasswordClass.cssVarList;\n\nconst newPassword = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.spaceBetweenInputs]: '1em',\n\n\t_required: {\n\t\t// NewPassword doesn't pass `required` attribute to its Password components.\n\t\t// That's why we fake the required indicator on each input.\n\t\t// We do that by injecting `::after` element, and populating it with requiredIndicator content.\n\t\t[vars.inputsRequiredIndicator]: refs.requiredIndicator, // used to populate required content for NewPassword input fields outside the theme\n\t}\n};\n\nexport default newPassword;\nexport { vars }\n","import * as button from './button';\nimport * as textField from './textField';\nimport * as password from './password';\nimport * as numberField from './numberField';\nimport * as emailField from './emailField';\nimport * as textArea from './textArea';\nimport * as checkbox from './checkbox';\nimport * as switchToggle from './switchToggle';\nimport * as container from './container';\nimport * as logo from './logo';\nimport * as text from './text';\nimport * as link from './link';\nimport * as divider from './divider';\nimport * as passcode from './passcode';\nimport { loaderRadial, loaderLinear } from './loader';\nimport * as comboBox from './comboBox';\nimport * as image from './image';\nimport * as phoneField from './phoneField';\nimport * as newPassword from './newPassword';\nimport * as inputWrapper from './inputWrapper';\n\nconst components = {\n\tbutton,\n\ttextField,\n\tpassword,\n\tnumberField,\n\temailField,\n\ttextArea,\n\tcheckbox,\n\tswitchToggle,\n\tcontainer,\n\tlogo,\n\ttext,\n\tlink,\n\tdivider,\n\tpasscode,\n\tloaderRadial,\n\tloaderLinear,\n\tcomboBox,\n\timage,\n\tphoneField,\n\tnewPassword,\n\tinputWrapper,\n};\n\nconst theme = Object.keys(components).reduce((acc, comp) => ({ ...acc, [comp]: components[comp].default }), {});\nconst vars = Object.keys(components).reduce((acc, comp) => ({ ...acc, [comp]: components[comp].vars }), {});\n\nexport default theme;\nexport { vars }\n","import globals, { vars as globalsVars } from './globals';\nimport components, { vars as componentsVars } from './components';\n\nexport const defaultTheme = { globals, components };\nexport const themeVars = { globals: globalsVars, components: componentsVars }\n"],"names":["vars","observedAttributes","componentName","host","label","globalRefs","compVars","helperTheme","helperRefs","helperVars","placeholder","requiredIndicator","inputField","helperText","errorMessage","customMixin","proxyInputMixin","theme","inputElement","textArea","descopeInternalComponentName","component","checkboxHiddenLabel","text","selectors","after","textVars","button","textField","password","numberField","emailField","checkbox","switchToggle","container","logo","link","divider","passcode","loaderRadial","loaderLinear","comboBox","image","phoneField","newPassword","components","globalsVars","componentsVars"],"mappings":";;;;;;AAAO,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,MAAM,+BAA+B,GAAG,EAAC;AACzC,MAAM,kBAAkB,GAAG,OAAM;AACjC,MAAM,mBAAmB,GAAG;;ACF5B,MAAM,SAAS,GAAG,CAAC,GAAG;AAC7B,CAAC,GAAG;AACJ,GAAG,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;AACtC,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC;AAC3B,GAAG,WAAW,EAAE,CAAC;AACjB;AACO,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3F;AACO,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG;AAC9B,CAAC,CAAC,GAAG;AACL,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAG7C;AACO,MAAM,UAAU,GAAG,CAAC,SAAS,KAAK,OAAO,SAAS,KAAK,UAAU,CAAC;AACzE;AACO,MAAM,KAAK,GAAG,CAAC,QAAQ,KAAK;AACnC,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAC;AACnB;AACA,EAAE,OAAO,IAAI,CAAC;AACd,EAAE,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,KAAK,CAAC;AACf,EAAE;AACF;;ACtBO,MAAM,iBAAiB,GAAG;AACjC,CAAC,GAAG;AACJ,CAAC,QAAQ;AACT,CAAC,EAAE,YAAY,GAAG,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE;AACzC,KAAK;AACL;AACA,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;AACjD,GAAG,MAAM,CAAC,CAAC,IAAI;AACf,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACpC,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7D,GAAG;AACH,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAC;AAC3B;AACA,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACzB;AACA,CAAC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,aAAa,KAAK;AAC1D,EAAE,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE;AACxC,GAAG;AACH,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY;AAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;AAClD,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC3E,KAAK;AACL,IAAI,QAAQ,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AACvC,IAAI;AACJ,GAAG;AACH,EAAE,CAAC,CAAC;AACJ;AACA,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC;AACF;AACA;AACO,MAAM,eAAe,GAAG;AAC/B,CAAC,GAAG;AACJ,CAAC,QAAQ;AACT,KAAK;AACL,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;AACtE;AACA,CAAC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,aAAa,KAAK;AAC1D,EAAE,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE;AACxC,GAAG,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE;AACtC,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvB,IAAI;AACJ,GAAG;AACH,EAAE,CAAC,CAAC;AACJ;AACA,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AACF;AACA,MAAM,iBAAiB;AACvB,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,GAAG,EAAE;AAClC,EAAE,CAAC,SAAS,KAAK;AACjB,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK;AACnC,IAAI,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;AAC1D,IAAI,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACrD,IAAI,IAAI,UAAU,KAAK,IAAI,EAAE;AAC7B,KAAK,IAAI,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,UAAU,EAAE;AAChE,MAAM,SAAS,CAAC,YAAY,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;AACzD,MAAM;AACN,KAAK,MAAM;AACX,KAAK,SAAS,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,CAAC,CAAC;AACN,GAAG,CAAC;AACJ;AACO,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,KAAK;AAClD,CAAC,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC,CAAC;AACF;AACO,MAAM,gBAAgB,GAAG,CAAC,IAAI,KAAK,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;AAC9E;AACO,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI;AACrC,CAAC,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/B;AACO,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,KAAK;AAC5D,CAAC,iBAAiB;AAClB,EAAE,MAAM;AACR,EAAE,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC;AACnD,EAAE,OAAO;AACT,EAAE,CAAC;AACH,CAAC,CAAC;AACF;AACO,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAG,EAAE,KAAK;AACzD,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO;AAC3B;AACA,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;AAC/D,EAAE,CAAC,IAAI,GAAG;AACV,GAAG,GAAG,GAAG;AACT,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC;AACpB,IAAI;AACJ,GAAG,GAAG,CAAC,CAAC,EAAE;AACV,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC;AACjB,IAAI;AACJ,GAAG;AACH,EAAE,CAAC,EAAE,EAAE,EAAC;AACR;AACA,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAC;AACxC;;ACnGA,MAAM,sBAAsB,CAAC;AAC7B,EAAE,OAAO,eAAe,GAAG,qBAAqB,CAAC;AACjD;AACA,EAAE,OAAO,GAAG,EAAE,CAAC;AACf;AACA,EAAE,iBAAiB,GAAG,OAAO,CAAC;AAC9B;AACA,EAAE,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;AACzB;AACA,EAAE,OAAO,GAAG;AACZ,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC1C,GAAG;AACH;AACA,EAAE,IAAI,gBAAgB,GAAG;AACzB,IAAI,OAAO,IAAI,CAAC,iBAAiB,CAAC;AAClC,GAAG;AACH;AACA,EAAE,IAAI,gBAAgB,CAAC,SAAS,EAAE;AAClC,IAAI,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;AACvC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;AACnB,GAAG;AACH;AACA,EAAE,IAAI,YAAY,GAAG;AACrB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC/C,GAAG;AACH;AACA,EAAE,oBAAoB,CAAC,EAAE,EAAE;AAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC5B;AACA,IAAI,OAAO,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACjD,GAAG;AACH;AACA,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE;AACrB,IAAI,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;AACnB,GAAG;AACH,CAAC;AACD;AACY,MAAC,sBAAsB,GAAG,IAAI,sBAAsB;;ACjChE,MAAM,UAAU,GAAG,CAAC,IAAI,KAAK,aAAa,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;AACpE;AACA,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,iBAAiB,KAAK;AAC3D,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK;AAC1D,EAAE,IAAI,GAAG,EAAE,WAAW,KAAK,MAAM,EAAE;AACnC,GAAG,OAAO,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAC/D,GAAG,MAAM;AACT,GAAG,OAAO,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAC7E,GAAG;AACH,EAAE,EAAE,EAAE,CAAC,CAAC;AACR,CAAC,CAAC;AACF;AACA,MAAM,cAAc,GAAG,CAAC,MAAM;AAC9B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxE;AACA,MAAM,cAAc,GAAG,CAAC,GAAG,KAAK;AAChC,CAAC,QAAQ,IAAI;AACb,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AACzB,GAAG,OAAO,cAAc,CAAC,GAAG,CAAC;AAC7B,EAAE,KAAK,KAAK,CAAC,GAAG,CAAC;AACjB,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;AACvB,EAAE;AACF,GAAG,OAAO,GAAG;AACb,EAAE;AACF,EAAC;AACD;AACY,MAAC,iBAAiB,GAAG,CAAC,KAAK;AACvC,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,MAAM;AAC3C,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC;AACzC,EAAE,CAAC,EAAE;AACL;AACY,MAAC,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM;AAC1C,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI;AAChC,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACxE,GAAG;AACH;AACY,MAAC,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM;AAC1C,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI;AAChC,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9D,GAAG;AACH;AACY,MAAC,mBAAmB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,EAAE,KAAK;AAC9D,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;AAC9D,EAAE,CAAC,GAAG,EAAE,KAAK,MAAM,GAAG,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAClD,EAAE,EAAE;AACJ,EAAE,CAAC;AACH;AACA,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,KAAK;AAC7B;AACA,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACjD,EAAE;AACF;AACA,MAAM,yBAAyB,GAAG,CAAC,eAAe;AAClD,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK;AACpD,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;AACxC,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;AAClC,EAAE,MAAM,aAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACpD;AACA,EAAE,IAAI,QAAQ,KAAK,WAAW,EAAE;AAChC,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,kCAAkC,CAAC,EAAC;AACxF,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,SAAS,GAAG,mBAAkB;AACpC;AACA,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE;AAClE,GAAG,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;AAChC,GAAG;AACH;AACA;AACA;AACA,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK;AAC/D,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;AAC9B,IAAI,QAAQ,GAAG,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,GAAG,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AACzC;AACA,GAAG,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AACvE,IAAI,OAAO,CAAC,KAAK;AACjB,KAAK,iBAAiB;AACtB,KAAK,CAAC,4CAA4C,EAAE,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC,sBAAsB,CAAC;AACnH,KAAK,CAAC;AACN,IAAI,OAAO,GAAG,CAAC;AACf,IAAI;AACJ;AACA,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,QAAQ;AACrD,KAAK,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AACvB,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;AACnB,GAAG,EAAE,EAAE,CAAC,CAAC;AACT;AACA,EAAE,IAAI,QAAQ,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACrE;AACA,EAAE,OAAO;AACT,GAAG,CAAC,aAAa,GAAG;AACpB,IAAI,CAAC,SAAS,GAAG;AACjB,KAAK,CAAC,QAAQ,GAAG;AACjB,MAAM,CAAC,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC;AACrC,MAAM;AACN,KAAK;AACL,IAAI;AACJ,GAAG,CAAC;AACJ,EAAE,CAAC,CAAC;AACJ;AACA;AACY,MAAC,qBAAqB,GAAG,CAAC,eAAe,KAAK;AAC1D,CAAC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,eAAe,CAAC,CAAC;AAC7D;AACA,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM;AACpC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK;AAC1B,GAAG,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;AACnD;AACA,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;AAC7B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;AACjD,MAAM,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK;AACxB,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,sBAAsB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;AACrF,MAAM,EAAE,CAAC;AACT,IAAI,CAAC;AACL,GAAG;AACH,EAAE,EAAE;AACJ,EAAE,CAAC;AACH,EAAC;AACD;AACA,MAAM,sBAAsB,GAAG,CAAC,eAAe;AAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM;AACvC,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;AACxB,GAAG,GAAG,IAAI,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO;AAC3C,GAAG,IAAI;AACP,GAAG;AACH,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;AACzC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC1B,EAAE,EAAE;AACJ,EAAE,CAAC;AACH;AACY,MAAC,YAAY,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,MAAM;AACrE,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC;AACjD,CAAC,UAAU,EAAE,qBAAqB,CAAC,UAAU,CAAC;AAC9C,CAAC,EAAE;AACH;AACA,MAAM,MAAM,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAC9C;AACY,MAAC,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK;AACnD,CAAC,MAAM,GAAG,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK;AACxD,EAAE,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AACjC,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,EAAE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAClD;AACA,EAAE,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,GAAG,OAAO,EAAE,CAAC;AACvC,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AAC3D,EAAE,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AAClD;AACA,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC;AACJ;AACA,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AAC3C;;ACjKA,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,CAAC;AACpE,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,CAAC;AACtE,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,GAAG,KAAK;AAC7C,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAC3B,CAAC,OAAO,CAAC;AACT,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,EAAE,UAAU,CAAC;AACrD,GAAG,QAAQ,CAAC,CAAC,CAAC;AACd,GAAG,GAAG,EAAE,CAAC;AACT,CAAC,CAAC;AACF;AACY,MAAC,QAAQ,GAAG,CAAC,KAAK,KAAK;AACnC,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;AAClD;AACA,CAAC,OAAO;AACR,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE;AACvB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC;AACxC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC;AAC3C,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,WAAW,CAAC,SAAS,CAAC;AACpD,EAAE,CAAC;AACH,EAAE;AACF;AACY,MAAC,SAAS,GAAG,CAAC,MAAM,KAAK;AACrC,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,SAAS,KAAK;AACvD,EAAE,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AACzC;AACA,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;AAC5B,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC;AACtC,GAAG,CAAC,CAAC;AACL,EAAE,EAAE,EAAE,CAAC,CAAC;AACR;;AC3BO,MAAM,MAAM,GAAG,SAAS,CAAC;AAChC,CAAC,OAAO,EAAE;AACV,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,OAAO,EAAE,SAAS;AACnB,CAAC,SAAS,EAAE,SAAS;AACrB,CAAC,OAAO,EAAE,OAAO;AACjB,CAAC,KAAK,EAAE,KAAK;AACb,CAAC,CAAC,CAAC;AACH;AACA,MAAM,KAAK,GAAG;AACd,CAAC,KAAK,EAAE;AACR,EAAE,MAAM,EAAE;AACV,GAAG,QAAQ;AACX,GAAG,eAAe;AAClB,GAAG,WAAW;AACd,GAAG,eAAe;AAClB,GAAG,oBAAoB;AACvB,GAAG,UAAU;AACb,GAAG,gBAAgB;AACnB,GAAG,OAAO;AACV,GAAG,WAAW;AACd,GAAG,YAAY;AACf,GAAG,mBAAmB;AACtB,GAAG,gBAAgB;AACnB,GAAG,iBAAiB;AACpB,GAAG,kBAAkB;AACrB,GAAG;AACH,EAAE,KAAK,EAAE,QAAQ;AACjB,EAAE,GAAG,EAAE,oFAAoF;AAC3F,EAAE;AACF,CAAC,KAAK,EAAE;AACR,EAAE,MAAM,EAAE;AACV,GAAG,eAAe;AAClB,GAAG,WAAW;AACd,GAAG,eAAe;AAClB,GAAG,oBAAoB;AACvB,GAAG,UAAU;AACb,GAAG,QAAQ;AACX,GAAG,gBAAgB;AACnB,GAAG,OAAO;AACV,GAAG,WAAW;AACd,GAAG,YAAY;AACf,GAAG,mBAAmB;AACtB,GAAG,gBAAgB;AACnB,GAAG,iBAAiB;AACpB,GAAG,kBAAkB;AACrB,GAAG;AACH,EAAE,KAAK,EAAE,YAAY;AACrB,EAAE;AACF,CAAC,CAAC;AACF;AACA,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC;AAC/C;AACA,MAAM,UAAU,GAAG;AACnB,CAAC,EAAE,EAAE;AACL,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,EAAE,EAAE;AACL,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,EAAE,EAAE;AACL,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,SAAS,EAAE;AACZ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,SAAS,EAAE;AACZ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,KAAK,EAAE;AACR,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,KAAK,EAAE;AACR,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;AAC7B,EAAE,MAAM,EAAE,KAAK;AACf,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACF,CAAC,CAAC;AACF;AACA,MAAM,OAAO,GAAG;AAChB,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,CAAC;AACF;AACA,MAAM,MAAM,GAAG;AACf,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,CAAC;AACF;AACA,MAAM,MAAM,GAAG;AACf,CAAC,EAAE,EAAE,KAAK;AACV,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,EAAE,EAAE,MAAM;AACX,CAAC,KAAK,EAAE,MAAM;AACd,CAAC,KAAK,EAAE,MAAM;AACd,CAAC,CAAC;AACF;AACA,MAAM,MAAM,GAAG;AACf,CAAC,IAAI,EAAE;AACP,EAAE,EAAE,EAAE,kBAAkB;AACxB,EAAE,EAAE,EAAE,gBAAgB;AACtB,EAAE,EAAE,EAAE,kBAAkB;AACxB,EAAE,EAAE,EAAE,kBAAkB;AACxB,EAAE,KAAK,EAAE,mBAAmB;AAC5B,EAAE;AACF,CAAC,MAAM,EAAE;AACT,EAAE,EAAE,EAAE,gBAAgB;AACtB,EAAE,EAAE,EAAE,gBAAgB;AACtB,EAAE,EAAE,EAAE,gBAAgB;AACtB,EAAE,EAAE,EAAE,iBAAiB;AACvB,EAAE,KAAK,EAAE,kBAAkB;AAC3B,EAAE;AACF,CAAC,CAAC;AACF;AACA,MAAM,OAAO,GAAG;AAChB,CAAC,MAAM;AACP,CAAC,UAAU;AACX,CAAC,OAAO;AACR,CAAC,MAAM;AACP,CAAC,MAAM;AACP,CAAC,MAAM;AACP,CAAC,KAAK;AACN,CAAC,CAAC;AAGK,MAAMA,MAAI,GAAG,YAAY,CAAC,OAAO;;ACxJjC,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,CAAC;AAC1D,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAChC,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAC7B,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;AAClC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;AAC5B,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAC3C,IAAI,EAAE,qCAAqC,CAAC,IAAI,CAAC,CAAC;AAClD,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC/B,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC9B,IAAI,EAAE,gCAAgC,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AACF;AACO,MAAM,sBAAsB,GAAG,CAAC,UAAU,KAAK,CAAC;AACvD;AACA,0BAA0B,EAAE,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,kBAAkB,CAAC;AACjG;AACA,CAAC,CAAC;AACF;AACO,MAAM,gCAAgC,GAAG,CAAC,IAAI,KAAK,CAAC;AAC3D,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,kBAAkB,GAAG,CAAC,IAAI,KAAK,CAAC;AAC7C,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,iBAAiB,GAAG,CAAC,IAAI,KAAK,CAAC;AAC5C,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,mBAAmB,GAAG,CAAC,IAAI,KAAK,CAAC;AAC9C,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,eAAe,GAAG,CAAC,IAAI,KAAK,CAAC;AAC1C,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,gBAAgB,GAAG,CAAC,IAAI,KAAK,CAAC;AAC3C,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,KAAK,CAAC;AAC/D,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC;AAC9B,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC;AAC3B;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,CAAC;AACzD,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX,IAAI,EAAE,IAAI,CAAC;AACX,qCAAqC,EAAE,UAAU,CAAC,mBAAmB,CAAC;AACtE,8BAA8B,EAAE,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,oBAAoB,CAAC;AAC/F;AACA,CAAC,CAAC;AACF;AACO,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAClD;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,uBAAuB,GAAG,CAAC,IAAI,KAAK,CAAC;AAClD,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA,CAAC,CAAC;AACF;AACO,MAAM,qCAAqC,GAAG,CAAC,IAAI,KAAK,CAAC;AAChE,IAAI,EAAE,IAAI,CAAC;AACX;AACA;AACA,CAAC;;AChGD,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI;AAC5C,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5E;AACA,MAAM,iBAAiB,GAAG;AAC1B,CAAC,YAAY,GAAG,EAAE;AAClB,CAAC,4BAA4B,GAAG,EAAE;AAClC;AACA,CAAC,UAAU,CAAC,4BAA4B,CAAC;AACzC,IAAI,4BAA4B,CAAC,YAAY,CAAC;AAC9C,IAAI,CAAC,EAAE,YAAY,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,4BAA4B,CAAC;AACpE,KAAK,CAAC,CAAC,EAAE,4BAA4B,CAAC,CAAC;AACvC,KAAK,4BAA4B;AACjC,GAAG,CAAC,CAAC;AACL;AACA,MAAM,YAAY,CAAC;AACnB,CAAC,WAAW,GAAG;AACf,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;AAC5B,EAAE;AACF;AACA,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;AAChC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;AACpC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACnC,GAAG;AACH;AACA,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE;AAC9B,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AACjC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE;AACtB,GAAG,CAAC,CAAC;AACL,EAAE;AACF;AACA,CAAC,QAAQ,GAAG;AACZ,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM;AACnD,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;AACjC,IAAI,KAAK,IAAI,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,UAAU;AAC1C,KAAK,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1D,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC3B,GAAG,EAAE;AACL,GAAG,CAAC;AACJ,EAAE;AACF,CAAC;AACD;AACA,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK;AAC1C,CAAC,MAAM,cAAc,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AACpE;AACA,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;AACrE;AACA,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;AAC1B,EAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;AACzE;AACA,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AACF;AACO,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,KAAK;AACtE,CAAC,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;AAClC;AACA,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK;AACzC,EAAE,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D;AACA,EAAE,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AACxD;AACA,EAAE,UAAU,CAAC,OAAO;AACpB,GAAG,CAAC,EAAE,QAAQ,EAAE,4BAA4B,EAAE,QAAQ,EAAE,KAAK;AAC7D,IAAI,KAAK,CAAC,GAAG;AACb,KAAK,iBAAiB,CAAC,YAAY,EAAE,4BAA4B,CAAC;AAClE,KAAK,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ;AACjD,KAAK,oBAAoB,CAAC,UAAU,CAAC;AACrC,KAAK,CAAC;AACN,IAAI;AACJ,GAAG,CAAC;AACJ,EAAE,CAAC,CAAC;AACJ;AACA,CAAC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;AACzB,CAAC,CAAC;AACF;AACO,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,QAAQ;AACzD,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM;AAC7B,EAAE,CAAC,GAAG,EAAE,IAAI;AACZ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC;AACrE,EAAE,EAAE;AACJ,EAAE,CAAC;AACH;AACA;AACA;AACO,MAAM,4BAA4B,GAAG,CAAC,SAAS,EAAE,YAAY,KAAK,KAAK,CAAC,YAAY,CAAC;AAC5F,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AACvB,EAAE,IAAI,CAAC,EAAE;;AClFT,MAAM,0BAA0B,GAAG,KAAI;AACvC;AACO,MAAM,gBAAgB;AAC7B,CAAC,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,qBAAqB,GAAG,EAAE,EAAE,KAAK,CAAC,UAAU,KAAK;AACpE,EAAE,MAAM,aAAa,GAAG,qBAAqB,IAAI,UAAU,CAAC,aAAa,CAAC;AAC1E;AACA,EAAE,OAAO,MAAM,qBAAqB,SAAS,UAAU,CAAC;AACxD,GAAG,WAAW,UAAU,GAAG;AAC3B,IAAI,OAAO;AACX,KAAK,GAAG,UAAU,CAAC,UAAU;AAC7B,KAAK,GAAG,iBAAiB,CAAC,aAAa,EAAE;AACzC,MAAM,GAAG,QAAQ;AACjB,MAAM,CAAC;AACP,KAAK,CAAC;AACN,IAAI;AACJ;AACA,GAAG,iBAAiB,CAAC;AACrB,GAAG,cAAc,CAAC;AAClB,GAAG,uBAAuB;AAC1B,GAAG,oBAAoB;AACvB,GAAG,aAAa;AAChB,GAAG,YAAY;AACf,GAAG,aAAa;AAChB,GAAG,gBAAgB;AACnB;AACA;AACA;AACA;AACA,GAAG,WAAW,CAAC;AACf,IAAI,cAAc;AAClB,IAAI,mBAAmB,GAAG,EAAE;AAC5B,IAAI,YAAY,GAAG,kBAAkB;AACrC,IAAI,YAAY;AAChB,IAAI,GAAG,EAAE,EAAE;AACX,IAAI,KAAK,EAAE,CAAC;AACZ,IAAI,IAAI,CAAC,oBAAoB,GAAG,oBAAmB;AACnD,IAAI,IAAI,CAAC,aAAa,GAAG,aAAY;AACrC,IAAI,IAAI,CAAC,YAAY,GAAG,cAAc,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,WAAU;AACjE,IAAI,IAAI,CAAC,aAAa,GAAG,YAAY,IAAI,IAAI,CAAC,aAAY;AAC1D;AACA,IAAI,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG;AAC1D,KAAK,aAAa,CAAC,0BAA0B,EAAE,mBAAmB,EAAE,GAAG,CAAC;AACxE,KAAK,CAAC;AACN;AACA,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;AAC/B,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACjC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACjC,IAAI;AACJ;AACA,GAAG,IAAI,eAAe,GAAG;AACzB,IAAI,OAAO,sBAAsB,CAAC,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE;AACrE,IAAI;AACJ;AACA,GAAG,uBAAuB,GAAG;AAC7B,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,EAAC;AAC5E,IAAI;AACJ;AACA,GAAG,qBAAqB,GAAG;AAC3B,IAAI,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC1D,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC,CAAC;AACnE,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACnD,IAAI,IAAI,CAAC,uBAAuB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;AACvH,IAAI,IAAI,CAAC,uBAAuB,GAAE;AAClC,IAAI;AACJ;AACA,GAAG,qBAAqB,GAAG;AAC3B,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;AACtC,KAAK,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC9D,KAAK,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC,CAAC;AAC3E;AACA,KAAK,MAAM,cAAc,GAAG,4BAA4B,CAAC,aAAa,EAAE,+BAA+B,CAAC,CAAC;AACzG;AACA,KAAK,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;AACtE,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACtD,KAAK;AACL,IAAI;AACJ;AACA,GAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE;AACrC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACnE,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO;AACvB;AACA,IAAI,MAAM,OAAO,GAAG,aAAa;AACjC,KAAK,aAAa;AAClB,KAAK,QAAQ,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACxE,KAAK,CAAC;AACN;AACA,IAAI,IAAI,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAClD,SAAS;AACT,KAAK,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;AACpC,KAAK,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAC;AACnC,KAAK;AACL,IAAI;AACJ;AACA,GAAG,qBAAqB,CAAC,KAAK,GAAG,EAAE,EAAE;AACrC,IAAI,IAAI,YAAY,GAAG,KAAK,CAAC;AAC7B;AACA,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AAC9B,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC/C,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM;AACN,KAAK;AACL;AACA,IAAI,IAAI,YAAY,EAAE;AACtB;AACA,KAAK,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAO;AAC1F,KAAK;AACL,IAAI;AACJ;AACA,GAAG,mBAAmB,GAAG;AACzB,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE;AACtC,KAAK,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACxD,KAAK,UAAU,CAAC,EAAE,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,EAAC;AAC7D,KAAK,UAAU,CAAC,SAAS,GAAG,WAAW;AACvC,MAAM,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC;AAC7D,MAAM,IAAI,CAAC,aAAa;AACxB,MAAM,QAAQ;AACd,MAAM,CAAC;AACP,KAAK,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3C,KAAK;AACL,IAAI;AACJ;AACA,GAAG,aAAa,CAAC,SAAS,EAAE;AAC5B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,EAAC;AACpF,IAAI;AACJ;AACA,GAAG,IAAI,GAAG;AACV,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;AACnB,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;AACrC,KAAK,IAAI,CAAC,aAAa,CAAC,aAAa,EAAC;AACtC;AACA;AACA,KAAK,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAC;AACvE,KAAK;AACL,IAAI;AACJ;AACA,GAAG,oBAAoB,GAAG;AAC1B,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC;AACnC;AACA,IAAI,IAAI,CAAC,uBAAuB,IAAI,CAAC;AACrC,IAAI;AACJ,GAAG;AACH,EAAE;;ACpJK,MAAM,cAAc,GAAG,CAAC,UAAU;AACzC,CAAC,MAAM,mBAAmB,SAAS,UAAU,CAAC;AAC9C,EAAE,SAAS,GAAG,IAAI,CAAC;AACnB;AACA,EAAE,WAAW,kBAAkB,GAAG;AAClC,GAAG,MAAM,UAAU,GAAG,UAAU,CAAC,kBAAkB,IAAI,EAAE,CAAC;AAC1D,GAAG,OAAO,CAAC,GAAG,UAAU,EAAE,WAAW,CAAC,CAAC;AACvC,GAAG;AACH;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC;AACX;AACA,GAAG,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACpD,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,+BAA+B,CAAC,CAAC;AAChE,GAAG;AACH;AACA,EAAE,qBAAqB,CAAC,WAAW,EAAE;AACrC,GAAG,IAAI,WAAW,EAAE;AACpB,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChD,IAAI,MAAM;AACV,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;AAC5B,IAAI;AACJ,GAAG;AACH;AACA,EAAE,IAAI,WAAW,GAAG;AACpB,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,OAAO;AACtF,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT;AACA;AACA;AACA;AACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK;AAC7C,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;AAC1B,KAAK,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,EAAC;AACnE,KAAK,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACrD;AACA,KAAK,MAAM,UAAU,GAAG,MAAM;AAC9B,MAAM,YAAY;AAClB,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC;AAC9D,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACpD;AACA,MAAM,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAC;AACzD,MAAM,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAC;AACzD,OAAM;AACN;AACA,KAAK,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAC;AACrE,KAAK,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAC;AACrE,KAAK;AACL,IAAI,EAAC;AACL;AACA,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB,GAAG;AACH;AACA,EAAE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACzD,GAAG,KAAK,CAAC,wBAAwB,GAAG,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAClE,GAAG,IAAI,QAAQ,KAAK,WAAW,EAAE;AACjC,IAAI,IAAI,CAAC,qBAAqB,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;AACpD,IAAI;AACJ,GAAG;AACH,EAAE;;AC7DK,MAAM,4BAA4B,GAAG,CAAC,UAAU;AACvD,CAAC,MAAM,iCAAiC,SAAS,UAAU,CAAC;AAC5D,EAAE,mBAAmB,GAAG;AACxB,GAAG,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC;AAC/C;AACA,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAClC,IAAI,MAAM,KAAK;AACf,KAAK,CAAC,iGAAiG,CAAC;AACxG,KAAK,CAAC;AACN,IAAI;AACJ;AACA,GAAG,IAAI,oBAAoB,KAAK,UAAU,CAAC,aAAa,EAAE;AAC1D,IAAI,MAAM,KAAK;AACf,KAAK,CAAC,mCAAmC,EAAE,UAAU,CAAC,aAAa,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,CAAC;AACzG,KAAK,CAAC;AACN,IAAI;AACJ,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE;;ACtBK,MAAM,cAAc,GAAG,CAAC,UAAU;AACzC,CAAC,MAAM,mBAAmB,SAAS,UAAU,CAAC;AAC9C,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK;AACzD,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACvC,IAAI,CAAC,CAAC,MAAM,CAAC,gBAAgB;AAC7B,KAAK,YAAY;AACjB,KAAK,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;AACxC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE;AACnB,KAAK,CAAC;AACN,IAAI,EAAC;AACL,GAAG;AACH,EAAE;;ACZF,MAAM,qBAAqB,GAAG;AAC9B,EAAE,UAAU;AACZ,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,WAAW;AACb,EAAE,UAAU;AACZ,EAAE,UAAU;AACZ,EAAE,SAAS;AACX,EAAE,YAAY;AACd,EAAE,WAAW;AACb,EAAE,sBAAsB;AACxB,EAAE,OAAO;AACT,EAAE,mBAAmB;AACrB,EAAE,YAAY;AACd,EAAE,QAAQ;AACV,EAAE,QAAQ;AACV,EAAE,kBAAkB;AACpB,EAAC;AACD;AACA,MAAM,kBAAkB,GAAG,CAAC,IAAI,KAAK;AACrC,EAAE,OAAO,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC7C,EAAC;AACD;AACA;AACO,MAAM,+BAA+B,GAAG,CAAC,UAAU,KAAK,MAAM,oCAAoC,SAAS,UAAU,CAAC;AAC7H,EAAE,IAAI,GAAG;AACT,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;AACnB;AACA,IAAI,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK;AAClC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI;AAC5B,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAC;AAC/C;AACA,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE;AACtC,UAAU,IAAI,OAAO,KAAK,EAAE,EAAE;AAC9B,YAAY,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAC;AAC3C,WAAW,MAAM,IAAI,OAAO,KAAK,OAAO,EAAE;AAC1C,YAAY,IAAI,CAAC,eAAe,CAAC,IAAI,EAAC;AACtC,WAAW;AACX,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE;AAC7B,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,kEAAkE,CAAC,EAAC;AAC9G,SAAS;AACT,OAAO,CAAC,EAAE,EAAE,EAAC;AACb,GAAG;AACH;;ACxCO,MAAM,eAAe,GAAG,CAAC,EAAE,aAAa,EAAE,YAAY,GAAG,EAAE,EAAE,KAAK;AACzE,EAAE,MAAM,gBAAgB,SAAS,WAAW,CAAC;AAC7C,IAAI,WAAW,aAAa,GAAG;AAC/B,MAAM,OAAO,aAAa,CAAC;AAC3B,KAAK;AACL;AACA,IAAI,YAAY,CAAC;AACjB;AACA,IAAI,OAAO,GAAG,IAAI,CAAC;AACnB;AACA;AACA;AACA,IAAI,IAAI,YAAY,GAAG;AACvB,MAAM,OAAO,YAAY;AACzB,KAAK;AACL;AACA;AACA,IAAI,IAAI,WAAW,GAAG;AACtB,MAAM,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY;AAC7C,QAAQ,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC;AACzD,QAAQ,IAAI,CAAC;AACb;AACA,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE;AAC7B,QAAQ,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,IAAI,CAAC,SAAS,EAAC;AAC1E,OAAO;AACP,MAAM,OAAO,IAAI,CAAC,YAAY;AAC9B,KAAK;AACL;AACA;AACA;AACA,IAAI,IAAI,WAAW,GAAG;AACtB,MAAM,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI;AACpC,KAAK;AACL;AACA,IAAI,iBAAiB,GAAG;AACxB,MAAM,KAAK,CAAC,iBAAiB,IAAI,CAAC;AAClC;AACA,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;AACxC;AACA,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AAC1B,UAAU,IAAI,CAAC,OAAO,GAAG,MAAK;AAC9B,UAAU,IAAI,CAAC,IAAI,IAAI,CAAC;AACxB,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,OAAO;AAChB,IAAI,4BAA4B;AAChC,IAAI,cAAc;AAClB,IAAI,+BAA+B;AACnC,GAAG,CAAC,gBAAgB,CAAC;AACrB;;ACxDA;AACA;AACA;AACA;AACO,SAAS,mBAAmB,CAAC,SAAS,EAAE,OAAO,GAAG,EAAE,EAAE;AAC7D,EAAE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,OAAO,EAAC;AAC7C;AACA,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAClC,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC5B;;ACLO,MAAM,WAAW,GAAG,CAAC;AAC5B,CAAC,aAAa;AACd,CAAC,cAAc;AACf,CAAC,KAAK,GAAG,EAAE;AACX,CAAC,KAAK;AACN,CAAC,gBAAgB,GAAG,EAAE;AACtB,CAAC,gBAAgB,GAAG,EAAE;AACtB,CAAC,mBAAmB,GAAG,EAAE;AACzB,CAAC,KAAK;AACN,CAAC,MAAM,UAAU,SAAS,eAAe,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;AAC3F,EAAE,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;AACxD,EAAE,cAAc,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;AAC1D;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AAC7E,4BAA4B,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK;AACjE,KAAK;AACL,IAAI,EAAE,cAAc,CAAC;AACrB;AACA,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACjF,KAAK,EAAE,cAAc,CAAC;AACtB,EAAE,CAAC,CAAC;AACJ,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK;AACpD,IAAI,IAAI,CAAC,aAAa,GAAE;AACxB,IAAI,EAAC;AACL;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK;AACrD,IAAI,IAAI,CAAC,cAAc,GAAE;AACzB,IAAI,EAAC;AACL;AACA;AACA,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;AAC7D;AACA,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE;AACrC,IAAI,YAAY,EAAE,gBAAgB;AAClC,IAAI,YAAY,EAAE,gBAAgB;AAClC,IAAI,CAAC,CAAC;AACN,GAAG;AACH,EAAE;AACF;AACA,CAAC,OAAO,UAAU,CAAC;AACnB,CAAC;;ACnDD,MAAMC,oBAAkB,GAAG;AAC3B,EAAE,UAAU;AACZ,EAAE,SAAS;AACX,EAAC;AACD;AACA,MAAM,eAAe,GAAG;AACxB,EAAE,YAAY,EAAE,iCAAiC;AACjD,EAAE,eAAe,EAAE,oCAAoC;AACvD,EAAE,QAAQ,EAAE,8CAA8C;AAC1D,EAAE,OAAO,EAAE,6CAA6C;AACxD,EAAC;AACM,MAAM,oBAAoB,GAAG,CAAC,UAAU,KAAK,MAAM,yBAAyB,SAAS,UAAU,CAAC;AACvG,EAAE,WAAW,kBAAkB,GAAG;AAClC,IAAI,OAAO;AACX,MAAM,GAAG,UAAU,CAAC,kBAAkB,IAAI,EAAE;AAC5C,MAAM,GAAGA,oBAAkB;AAC3B,KAAK,CAAC;AACN,GAAG;AACH;AACA,EAAE,WAAW,cAAc,GAAG;AAC9B,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH;AACA,EAAE,UAAU;AACZ;AACA,EAAE,WAAW,GAAG;AAChB,IAAI,KAAK,EAAE,CAAC;AACZ;AACA,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;AAC7C,GAAG;AACH;AACA,EAAE,IAAI,2BAA2B,GAAG;AACpC,IAAI,OAAO,6BAA6B;AACxC,GAAG;AACH;AACA,EAAE,IAAI,8BAA8B,GAAG;AACvC,IAAI,OAAO,oCAAoC;AAC/C,GAAG;AACH;AACA,EAAE,IAAI,uBAAuB,GAAG;AAChC,IAAI,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AACjE,GAAG;AACH;AACA,EAAE,IAAI,sBAAsB,GAAG;AAC/B,IAAI,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC;AACnE,GAAG;AACH;AACA,EAAE,eAAe,CAAC,KAAK,EAAE;AACzB,IAAI,MAAM;AACV,MAAM,YAAY;AAClB,MAAM,eAAe;AACrB,MAAM,YAAY;AAClB,MAAM,YAAY;AAClB,MAAM,QAAQ;AACd,MAAM,OAAO;AACb,MAAM,aAAa;AACnB,MAAM,cAAc;AACpB,MAAM,QAAQ;AACd,MAAM,WAAW;AACjB,KAAK,GAAG,KAAK,CAAC;AACd,IAAI,QAAQ,IAAI;AAChB,MAAM,KAAK,YAAY;AACvB,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC;AAC9D,UAAU,IAAI,CAAC,2BAA2B;AAC1C,MAAM,KAAK,eAAe,IAAI,YAAY,IAAI,YAAY,IAAI,aAAa,IAAI,cAAc,IAAI,QAAQ;AACzG,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,eAAe,CAAC;AACjE,UAAU,IAAI,CAAC,8BAA8B;AAC7C,MAAM,KAAK,QAAQ;AACnB,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC;AAC1D,UAAU,IAAI,CAAC,uBAAuB;AACtC,MAAM,KAAK,OAAO;AAClB,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC;AACzD,UAAU,IAAI,CAAC,sBAAsB;AACrC,MAAM,KAAK,WAAW;AACtB,QAAQ,OAAO,IAAI,CAAC,iBAAiB;AACrC,MAAM;AACN,QAAQ,OAAO,EAAE;AACjB,KAAK;AACL,GAAG;AACH;AACA,EAAE,YAAY,GAAG;AACjB,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,GAAE;AAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAC;AAChG,GAAG;AACH;AACA,EAAE,IAAI,iBAAiB,GAAG;AAC1B,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;AAC7C,GAAG;AACH;AACA,EAAE,WAAW,GAAG;AAChB,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,oBAAoB,EAAC;AACrD,GAAG;AACH;AACA,EAAE,aAAa,GAAG;AAClB,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK;AACzC,GAAG;AACH;AACA,EAAE,cAAc,GAAG;AACnB,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;AAC3C,GAAG;AACH;AACA,EAAE,IAAI,QAAQ,GAAG;AACjB,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ;AACnC,GAAG;AACH;AACA,EAAE,IAAI,gBAAgB,GAAG;AACzB,IAAI,OAAO,IAAI,CAAC,YAAY;AAC5B,GAAG;AACH;AACA,EAAE,iBAAiB,CAAC,YAAY,EAAE;AAClC,IAAI,IAAI,YAAY,EAAE;AACtB,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAC;AAC7F,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,EAAC;AACrC,MAAM,IAAI,CAAC,YAAY,GAAE;AACzB,KAAK;AACL,GAAG;AACH;AACA,EAAE,IAAI,UAAU,GAAG;AACnB,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,OAAO;AACrF,GAAG;AACH;AACA,EAAE,IAAI,UAAU,GAAG;AACnB,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,OAAO;AACrF,GAAG;AACH;AACA,EAAE,IAAI,OAAO,GAAG;AAChB,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;AACvC,GAAG;AACH;AACA,EAAE,IAAI,IAAI,GAAG;AACb,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI;AAC/B,GAAG;AACH;AACA,EAAE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACzD,IAAI,KAAK,CAAC,wBAAwB,GAAG,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACnE;AACA,IAAI,IAAIA,oBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC/C,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;AAC1B,KAAK;AACL,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;AACnB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAC;AACtD,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,EAAC;AAChE,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAC;AACrD;AACA;AACA;AACA;AACA,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AAC1C,GAAG;AACH;;ACnJA,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAC3C;AACA,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,KAAK;AACpD,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE;AACtC,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE;AACpB,GAAG,QAAQ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACjC,GAAG;AACH,EAAE,GAAG,EAAE,YAAY;AACnB,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC3B,GAAG;AACH,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,CAAC,CAAC;AACJ,CAAC,CAAC;AACF;AACA;AACA;AACA,MAAM,cAAc,GAAG,CAAC,GAAG,KAAK;AAChC,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO;AAClB;AACA,CAAC,MAAM,YAAY,GAAG,GAAE;AACxB;AACA,CAAC,IAAI,UAAU,GAAG,IAAG;AACrB,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;AACxC,EAAE,UAAU,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAC;AAC/C,EAAE,IAAI,UAAU,CAAC,SAAS,KAAK,MAAM,EAAE,OAAO,UAAU;AACxD,EAAE;AACF,EAAC;AACD;AACA,MAAM,eAAe,GAAG,CAAC,UAAU;AACnC,CAAC,MAAM,oBAAoB,SAAS,oBAAoB,CAAC,UAAU,CAAC,CAAC;AACrE,EAAE,WAAW,kBAAkB,GAAG;AAClC,GAAG,OAAO,CAAC,GAAG,UAAU,CAAC,kBAAkB,IAAI,EAAE,EAAE,GAAG,UAAU,CAAC,CAAC;AAClE,GAAG;AACH;AACA,EAAE,aAAa;AACf;AACA,EAAE,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;AAC5D;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC;AACX;AACA,GAAG,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAY;AAC1C,GAAG;AACH;AACA;AACA;AACA,EAAE,2BAA2B,GAAG;AAChC,GAAG,YAAY,CAAC,IAAI,CAAC,mBAAmB,EAAC;AACzC;AACA,GAAG,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,MAAM;AAC/C,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AAC9E,IAAI,EAAE,CAAC,EAAC;AACR,GAAG;AACH;AACA,EAAE,IAAI,IAAI,CAAC,GAAG;AACd,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACpC,GAAG;AACH;AACA,EAAE,IAAI,YAAY,GAAG;AACrB,GAAG,IAAI,CAAC,2BAA2B,GAAE;AACrC;AACA,GAAG,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,oBAAoB,EAAC;AACrF,GAAG,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,uBAAuB,EAAC;AAC3F;AACA,GAAG,IAAI,CAAC,aAAa,KAAK,cAAc,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,YAAY,EAAC;AACnF;AACA,GAAG,OAAO,IAAI,CAAC,aAAa;AAC5B,GAAG;AACH;AACA,EAAE,IAAI,YAAY,CAAC,GAAG,EAAE;AACxB,GAAG,IAAI,CAAC,aAAa,GAAG,IAAG;AAC3B,GAAG;AACH;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,OAAO,IAAI,CAAC,YAAY,EAAE,QAAQ,IAAI,EAAE;AAC3C,GAAG;AACH;AACA,EAAE,+BAA+B,GAAG;AACpC,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,EAAE;AAC3C,IAAI,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,EAAC;AAC/D,IAAI;AACJ,GAAG;AACH;AACA,EAAE,mBAAmB,GAAG;AACxB,GAAG,IAAI,CAAC,+BAA+B,GAAE;AACzC,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,iBAAiB,EAAC;AAC7D,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB;AACA,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK;AACtD,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,EAAE;AAC5C,KAAK,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,EAAC;AAC5C;AACA;AACA,KAAK,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAC;AAC/B;AACA;AACA;AACA;AACA,KAAK,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAC;AAClC;AACA,KAAK,IAAI,CAAC,mBAAmB,GAAE;AAC/B,KAAK;AACL,IAAI,EAAC;AACL;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM;AACrD,IAAI,IAAI,CAAC,eAAe,GAAE;AAC1B,IAAI,EAAC;AACL;AACA,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM;AACrD,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AAC/B,KAAK,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAC;AACzC,KAAK,IAAI,CAAC,mBAAmB,GAAE;AAC/B,KAAK;AACL,IAAI,EAAC;AACL;AACA;AACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM;AAC1C,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AAC/B,KAAK,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC1C,KAAK;AACL,IAAI,IAAI,CAAC,mBAAmB,GAAE;AAC9B,IAAI,EAAC;AACL;AACA,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;AAC1C;AACA;AACA,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACtD,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC/D,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzF;AACA,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,EAAC;AACzE,GAAG;AACH,EAAE,CAAC;AACH;AACA,MAAM,uBAAuB,GAAG,OAAO;AACvC,CAAC,eAAe;AAChB,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,EAAE,gBAAgB,CAAC,eAAe,CAAC,EAAE,CAAC;;AC3I/E;AACA;AACA;AACA;AACA;AACA,MAAM,sBAAsB,GAAG,IAAG;AAClC;AACA,MAAM,gBAAgB,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACzE;AACA,MAAM,UAAU,GAAG,CAAC,YAAY,KAAK,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC;AACvE;AACO,MAAM,WAAW,GAAG,CAAC;AAC5B,EAAE,IAAI;AACN,EAAE,QAAQ;AACV,EAAE,QAAQ,GAAG,EAAE;AACf,EAAE,OAAO,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,EAAE,GAAG,EAAE;AACnD,CAAC,KAAK,CAAC,UAAU,KAAK;AACtB,EAAE,MAAM,cAAc,GAAG,IAAI,IAAI,gBAAgB,CAAC,QAAQ,EAAC;AAC3D;AACA,EAAE,MAAM,SAAS,GAAG,gBAAgB,CAAC;AACrC,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC,UAAU,EAAC;AAChB;AACA,EAAE,OAAO,MAAM,gBAAgB,SAAS,SAAS,CAAC;AAClD,IAAI,WAAW,UAAU,GAAG;AAC5B,MAAM,OAAO;AACb,QAAQ,GAAG,SAAS,CAAC,UAAU;AAC/B,QAAQ,CAAC,cAAc,GAAG,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,aAAa,EAAE,sBAAsB,GAAG,cAAc,CAAC,EAAE,QAAQ,CAAC;AACvI,OAAO,CAAC;AACR,KAAK;AACL;AACA,IAAI,UAAU;AACd;AACA,IAAI,WAAW,GAAG;AAClB;AACA,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,KAAK;AACvC,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAC;AACxE,QAAQ,MAAM,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,QAAO;AACtF;AACA,QAAQ,OAAO,MAAM,CAAC,UAAU,IAAI,MAAM;AAC1C,OAAO,CAAC;AACR;AACA,MAAM,KAAK,CAAC;AACZ,QAAQ,cAAc;AACtB,QAAQ,mBAAmB,EAAE,sBAAsB,GAAG,cAAc;AACpE,QAAQ,YAAY,EAAE,mBAAmB,GAAG,cAAc;AAC1D,QAAQ,YAAY,EAAE,OAAO;AAC7B,OAAO,EAAC;AACR;AACA,MAAM,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAC;AACxD,KAAK;AACL;AACA,IAAI,qBAAqB,GAAG;AAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAC,GAAE;AACtF,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAC,GAAE;AACjF,KAAK;AACL;AACA,IAAI,IAAI,GAAG;AACX,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC;AACrB,MAAM,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,GAAG,cAAc,GAAG,cAAc,GAAG,UAAU,EAAE,EAAC;AACtG;AACA,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACnC,KAAK;AACL,GAAG;AACH;;ACpEO,MAAM,WAAW,GAAG,CAAC,UAAU,KAAK,MAAM,gBAAgB,SAAS,UAAU,CAAC;AACrF,EAAE,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;AAC5D;AACA,EAAE,IAAI,GAAG;AACT,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;AACnB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAK;AAC/B;AACA,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK;AAC3C,MAAM,CAAC,CAAC,eAAe,EAAE,CAAC;AAC1B,KAAK,EAAC;AACN;AACA,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM;AACxC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE;AACzC,QAAQ,IAAI,CAAC,eAAe,GAAE;AAC9B,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAK;AACnC,OAAO;AACP,KAAK,EAAC;AACN,GAAG;AACH;;AClBO,MAAM,2BAA2B,GAAG,CAAC,UAAU,KAAK,MAAM,gCAAgC,SAAS,UAAU,CAAC;AACrH,EAAE,IAAI,GAAG;AACT,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAC9B;AACA,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;AACnB,GAAG;AACH;AACA;AACA,EAAE,kBAAkB,GAAG;AACvB,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI;AAC9D,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK;AAC1C,QAAQ,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,wBAAwB,GAAE;AACxE,OAAO,EAAC;AACR,KAAK,EAAC;AACN,GAAG;AACH;AACA,EAAE,4BAA4B,CAAC,MAAM,EAAE;AACvC,IAAI,IAAI,QAAO;AACf;AACA;AACA;AACA;AACA,IAAI,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI;AAC7B,MAAM,KAAK,EAAE,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC,KAAK;AACjD,QAAQ,CAAC,CAAC,wBAAwB,EAAE,CAAC;AACrC,QAAQ,OAAO,GAAG,UAAU,CAAC,MAAM;AACnC,UAAU,OAAO,GAAG,KAAI;AACxB;AACA,UAAU,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACjD,UAAU,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AACxE,SAAS,CAAC,CAAC;AACX,OAAO,EAAC;AACR;AACA;AACA;AACA;AACA;AACA,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK;AAC7B,QAAQ,CAAC,CAAC,wBAAwB,EAAE,CAAC;AACrC,QAAQ,YAAY,CAAC,OAAO,EAAC;AAC7B,QAAQ,IAAI,CAAC,OAAO,EAAE;AACtB,UAAU,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAClD,UAAU,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AACvE,SAAS;AACT,QAAO;AACP;AACA;AACA,MAAM,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAC;AACjD,MAAM,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAC;AAC/C,KAAK,EAAC;AACN,GAAG;AACH;AACA;AACA;AACA;AACA,EAAE,2BAA2B,GAAG;AAChC,IAAI,IAAI,0BAA0B,GAAG,IAAI,CAAC,MAAK;AAC/C;AACA,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK;AAC1C;AACA;AACA,MAAM,IAAI,0BAA0B,KAAK,IAAI,CAAC,KAAK,EAAE;AACrD,QAAQ,CAAC,CAAC,wBAAwB,EAAE,CAAC;AACrC,OAAO,MAAM;AACb,QAAQ,0BAA0B,GAAG,IAAI,CAAC,MAAK;AAC/C,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG;AACH;;AC5DO,MAAMC,eAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACxD;AACA,MAAM,WAAW,GAAG,CAAC;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,MAAM,UAAU,GAAG,CAAC;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,MAAM,eAAe,GAAG,CAAC,oDAAoD,CAAC,CAAC;AAC/E;AACA,MAAM,QAAEC,MAAI,SAAEC,OAAK,EAAE,GAAG;AACxB,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,CAAC;AACF;AACY,MAAC,WAAW,GAAG,OAAO;AAClC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGD,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,UAAU,EAAE,EAAE;AACjB;AACA,GAAG,MAAM,EAAE,EAAE;AACb,GAAG,eAAe,EAAE,EAAE;AACtB;AACA,GAAG,aAAa,EAAE,EAAE;AACpB,GAAG,YAAY,EAAE,EAAE;AACnB,GAAG,YAAY,EAAE,EAAE;AACnB,GAAG,YAAY,EAAE,EAAE;AACnB;AACA,GAAG,YAAY,EAAE,EAAE;AACnB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB;AACA,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE;AAC/B,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AAClC,IAAI;AACJ,GAAG,iBAAiB,EAAE;AACtB,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE;AACjC,IAAI;AACJ;AACA,GAAG,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxC,GAAG,mBAAmB,EAAE,EAAE,GAAGC,OAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE;AACjE,GAAG,YAAY,EAAE,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,KAAK,EAAE;AAC9C;AACA,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;AACtC,EAAE,cAAc,EAAE,eAAe;AACjC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB,GAAG,EAAE,WAAW,CAAC;AACjB,GAAG,EAAE,UAAU,CAAC;AAChB,GAAG,EAAE,sBAAsB,CAAC;AAC5B,GAAG,EAAE,eAAe,CAAC;AACrB,GAAG,EAAE,sBAAsB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACpD,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEF,eAAa;AACf,EAAE,CAAC;AACH,EAAE;AACF;AACA,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC;AACnD,MAAM,sBAAsB,GAAG,CAAC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,EAAE,KAAK,CAAC;AACrB,uBAAuB,EAAE,QAAQ,CAAC;AAClC,wBAAwB,EAAE,QAAQ,CAAC;AACnC,yBAAyB,EAAE,QAAQ,CAAC;AACpC,aAAa,EAAE,QAAQ,CAAC;AACxB,cAAc,EAAE,QAAQ,CAAC;AACzB;AACA;AACA;AACA;AACA;AACA,CAAC;;AC7HD,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAMC,UAAQ,GAAG,WAAW,CAAC,UAAU,CAAC;AACxC;AACA,MAAM,IAAI,GAAG;AACb,CAAC,OAAO,EAAED,YAAU,CAAC,MAAM,CAAC,OAAO;AACnC,CAAC,SAAS,EAAEA,YAAU,CAAC,MAAM,CAAC,SAAS;AACvC,CAAC,OAAO,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO;AACnC,CAAC,KAAK,EAAEA,YAAU,CAAC,MAAM,CAAC,KAAK;AAC/B,CAAC,OAAO,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO;AACnC,CAAC,CAAC;AACF;AACA,MAAM,CAACE,aAAW,EAAEC,YAAU,EAAEC,YAAU,CAAC,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,EAAEP,eAAa,CAAC,CAAC;AACxF;AACA,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC;AACA,MAAM,MAAM,GAAG;AACf,CAAC,GAAGK,aAAW;AACf;AACA,CAAC,CAACD,UAAQ,CAAC,UAAU,GAAGD,YAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;AACrD;AACA,CAAC,CAACC,UAAQ,CAAC,MAAM,GAAG,SAAS;AAC7B;AACA,CAAC,CAACA,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,EAAE;AAC9C,CAAC,CAACC,UAAQ,CAAC,WAAW,GAAG,KAAK;AAC9B,CAAC,CAACA,UAAQ,CAAC,WAAW,GAAG,OAAO;AAChC,CAAC,CAACA,UAAQ,CAAC,WAAW,GAAG,aAAa;AACtC;AACA,CAAC,CAACA,UAAQ,CAAC,YAAY,GAAG,QAAQ;AAClC;AACA,CAAC,CAACA,UAAQ,CAAC,eAAe,GAAG,CAAC,SAAS,EAAEA,UAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC;AACxF,CAAC,CAACA,UAAQ,CAAC,iBAAiB,GAAG,CAAC,SAAS,EAAEA,UAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAC5F;AACA,CAAC,CAACA,UAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE;AAC3C,CAAC,CAACA,UAAQ,CAAC,aAAa,GAAG,KAAK;AAChC,CAAC,CAACA,UAAQ,CAAC,YAAY,GAAG,OAAO;AACjC,CAAC,CAACA,UAAQ,CAAC,YAAY,GAAG,aAAa;AACvC;AACA,CAAC,IAAI,EAAE;AACP,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE;AACrC,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE;AACrC,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE;AACrC,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE;AACrC,EAAE;AACF;AACA,CAAC,UAAU,EAAE;AACb,EAAE,CAACA,UAAQ,CAAC,SAAS,GAAG,MAAM;AAC9B,EAAE;AACF;AACA,CAAC,QAAQ,EAAE;AACX,EAAE,CAACA,UAAQ,CAAC,MAAM,GAAG,MAAM;AAC3B,EAAE;AACF;AACA,CAAC,OAAO,EAAE;AACV,EAAE,SAAS,EAAE;AACb,GAAG,CAACA,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,QAAQ;AACjD,GAAG,CAACF,UAAQ,CAAC,eAAe,GAAGE,YAAU,CAAC,IAAI;AAC9C,GAAG,MAAM,EAAE;AACX,IAAI,CAACF,UAAQ,CAAC,eAAe,GAAGE,YAAU,CAAC,IAAI;AAC/C,IAAI;AACJ,GAAG,OAAO,EAAE;AACZ,IAAI,CAACF,UAAQ,CAAC,eAAe,GAAGE,YAAU,CAAC,IAAI;AAC/C,IAAI;AACJ,GAAG;AACH;AACA,EAAE,OAAO,EAAE;AACX,GAAG,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,IAAI;AAC7C,GAAG,CAACF,UAAQ,CAAC,WAAW,GAAG,cAAc;AACzC,GAAG,MAAM,EAAE;AACX,IAAI,CAACA,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,IAAI;AAC9C,IAAI;AACJ,GAAG,OAAO,EAAE;AACZ,IAAI,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,KAAK;AAC/C,IAAI;AACJ,GAAG;AACH;AACA,EAAE,IAAI,EAAE;AACR,GAAG,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,IAAI;AAC7C,GAAG,MAAM,EAAE;AACX,IAAI,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,IAAI;AAC9C,IAAI,CAACF,UAAQ,CAAC,mBAAmB,GAAG,WAAW;AAC/C,IAAI;AACJ,GAAG,OAAO,EAAE;AACZ,IAAI,CAACA,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,IAAI;AAC9C,IAAI;AACJ,GAAG;AACH,EAAE;AACF;AACA,CAAC,QAAQ,EAAE;AACX,EAAE,CAACF,UAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACtD,EAAE;AACF,CAAC,CAAC;AAGF;AACO,MAAMN,MAAI,GAAG;AACpB,CAAC,GAAGM,UAAQ;AACZ,CAAC,GAAGG,YAAU;AACd,CAAC;;;;;;;;ACtGD,MAAM;AACN,OAACN,MAAI;AACL,QAACC,OAAK;AACN,cAACM,aAAW;AACZ,oBAACC,mBAAiB;AAClB,aAACC,YAAU;AACX,CAAC,KAAK;AACN,aAACC,YAAU;AACX,eAACC,cAAY;AACb,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,2BAA2B,EAAE;AACvD,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC7B,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,CAAC,CAAC;AACF;AACA,wBAAe;AACf;AACA,CAAC,QAAQ,EAAE;AACX,EAAE,EAAE;AACJ,EAAEX,MAAI;AACN,EAAE;AACF,CAAC,UAAU,EAAE;AACb,EAAEC,OAAK;AACP,EAAEQ,YAAU;AACZ,EAAEC,YAAU;AACZ,EAAEC,cAAY;AACd,EAAE;AACF;AACA,CAAC,SAAS,EAAE,EAAE,GAAGX,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC1C,CAAC,YAAY,EAAE,EAAE,GAAGA,MAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACjD;AACA,CAAC,oBAAoB,EAAE,EAAE,GAAGS,YAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACtE;AACA,CAAC,cAAc,EAAE;AACjB,EAAE,EAAE,GAAGR,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACjC,EAAE,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC7C,EAAE;AACF;AACA,CAAC,mBAAmB,EAAE,EAAE,GAAGC,YAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC1D,CAAC,mBAAmB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACrD;AACA,CAAC,sBAAsB,EAAE,EAAE,GAAGD,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACtE;AACA,CAAC,gBAAgB,EAAE,EAAE,GAAGC,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC9D,CAAC,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC9D,CAAC,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC9D,CAAC,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAChE;AACA,CAAC,WAAW,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACnD,CAAC,sBAAsB,EAAE;AACzB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;AACxC,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AACzC,EAAE;AACF;AACA,CAAC,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAChE,CAAC,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAChE,CAAC,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAChE,CAAC,kBAAkB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AAClE;AACA,CAAC,cAAc,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE;AACrD;AACA,CAAC,qBAAqB,EAAE,EAAE,GAAGF,aAAW,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC7D,CAAC;;ACvDM,MAAMR,eAAa,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;AAC5D;AACA,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,CAAC;AAC/B;AACA,MAAMa,aAAW,GAAG,CAAC,UAAU;AAC/B,CAAC,MAAM,cAAc,SAAS,UAAU,CAAC;AACzC,EAAE,WAAW,kBAAkB,GAAG;AAClC,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;AACpE,GAAG;AACH;AACA,EAAE,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;AACrD,GAAG,KAAK,CAAC,uBAAuB,GAAG,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,IAAI,QAAQ,KAAK,MAAM,EAAE;AAC5B,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACtC,IAAI;AACJ,GAAG;AACH,GAAE;AACF;AACY,MAAC,cAAc,GAAG,OAAO;AACrC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE,iBAAiB;AAC7B,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACC,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAACD,aAAW;AACZ,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAC7B,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA,sBAAsB,EAAE,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC3H;AACA,GAAG,EAAE,sBAAsB,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;AACvD,GAAG,EAAE,mBAAmB,CAAC,mBAAmB,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;AACzE,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEb,eAAa;AACf,EAAE,CAAC;AACH;;ACvDA,MAAMA,eAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;AACxD,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC;AACA,MAAM,CAACY,OAAK,EAAE,IAAI,EAAEjB,MAAI,CAAC,GAAG,gBAAgB,CAAC;AAC7C,IAAI,cAAc,EAAEK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACtD,IAAI,cAAc,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACtD,IAAI,oBAAoB,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACxD,IAAI,iBAAiB,EAAE,KAAK;AAC5B;AACA,IAAI,WAAW,EAAEA,YAAU,CAAC,MAAM,CAAC,EAAE;AACrC,IAAI,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,EAAE;AACtC,IAAI,WAAW,EAAE,aAAa;AAC9B;AACA,IAAI,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,EAAE;AACtC,IAAI,YAAY,EAAE,OAAO;AACzB,IAAI,YAAY,EAAE,aAAa;AAC/B,IAAI,aAAa,EAAE,KAAK;AACxB;AACA,IAAI,QAAQ,EAAE,MAAM;AACpB,IAAI,gBAAgB,EAAE,OAAO;AAC7B,IAAI,WAAW,EAAE,KAAK;AACtB,IAAI,iBAAiB,EAAE,OAAO;AAC9B,IAAI,eAAe,EAAE,OAAO;AAC5B;AACA,IAAI,eAAe,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;AACpD;AACA,IAAI,UAAU,EAAEA,YAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;AAC7C;AACA,IAAI,IAAI,EAAE;AACV,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;AAChC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;AAChC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;AAChC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;AAChC,KAAK;AACL;AACA,IAAI,UAAU,EAAE;AAChB,QAAQ,KAAK,EAAE,MAAM;AACrB,KAAK;AACL;AACA,IAAI,QAAQ,EAAE;AACd,QAAQ,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACpD,QAAQ,QAAQ,EAAE;AAClB,YAAY,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AACtD,SAAS;AACT,KAAK;AACL;AACA,IAAI,SAAS,EAAE;AACf,QAAQ,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,EAAE;AAC1C,QAAQ,WAAW,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,QAAQ,WAAW,EAAE,OAAO;AAC5B,QAAQ,QAAQ,EAAE;AAClB,YAAY,WAAW,EAAEA,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AACrD,SAAS;AACT,KAAK;AACL;AACA,IAAI,SAAS,EAAE;AACf,QAAQ,cAAc,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACtD,QAAQ,WAAW,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,QAAQ,cAAc,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACtD,QAAQ,oBAAoB,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAC5D,QAAQ,eAAe,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACvD,KAAK;AACL,CAAC,EAAEH,eAAa,CAAC;;;;;;;;;AChEjB,MAAMF,MAAI,GAAG,cAAc,CAAC,UAAU,CAAC;AACvC;AACO,MAAM,SAAS,IAAI;AAC1B,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,oBAAoB;AACxD,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAAC;;;;;;;;;ACzBF,MAAM,sBAAsB,GAAG,CAAC,UAAU,KAAK,MAAM,2BAA2B,SAAS,UAAU,CAAC;AACpG,CAAC,IAAI,UAAU,GAAG;AAClB,EAAE,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,OAAO;AACnF,EAAE;AACF;AACA,CAAC,IAAI,GAAG;AACR;AACA;AACA;AACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK;AAC5C,GAAG,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE;AAC3C,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC7D,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAC;AAClD;AACA,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;AACvC;AACA,IAAI,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK;AAC9B,KAAK,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAC;AAC5C;AACA,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAC;AACxD,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAC;AACxD,MAAK;AACL;AACA,IAAI,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAC;AACpE,IAAI,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAC;AACpE,IAAI;AACJ,GAAG,EAAC;AACJ;AACA,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC;AACjB,EAAE;AACF;;ACnBO,MAAME,eAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC1D;AACA,MAAM;AACN,OAACC,MAAI;AACL,aAACS,YAAU;AACX,eAACM,cAAY;AACb,CAAC,uBAAuB;AACxB,CAAC,qBAAqB;AACtB,CAAC,gBAAgB;AACjB,QAACd,OAAK;AACN,oBAACO,mBAAiB;AAClB,eAACG,cAAY;AACb,aAACD,YAAU;AACX,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AACtC,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,2BAA2B,EAAE;AACnE,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,MAAM,uBAAuB,EAAE;AACnE,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,MAAM,+BAA+B,EAAE;AACtE,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,EAAC;AACD;AACY,MAAC,aAAa,GAAG,OAAO;AACpC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGV,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,YAAY,EAAE,EAAE,GAAGA,MAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACnD,GAAG,QAAQ,EAAE;AACb,IAAI,EAAE;AACN,IAAIA,MAAI;AACR,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIC,OAAK;AACT,IAAIQ,YAAU;AACd,IAAIE,cAAY;AAChB,IAAID,YAAU;AACd,IAAI;AACJ,GAAG,WAAW,EAAE,EAAE,GAAGD,YAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACrD,GAAG,sBAAsB,EAAE;AAC3B,IAAI,EAAE,GAAGM,cAAY,EAAE,QAAQ,EAAE,cAAc,EAAE;AACjD,IAAI,EAAE,GAAGA,cAAY,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClD,IAAI;AACJ,GAAG,oBAAoB,EAAE,EAAE,GAAGN,YAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACxE;AACA,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE;AACA,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,kBAAkB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACpE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE;AACA,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGR,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAGA,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE;AACA,GAAG,mBAAmB,EAAE;AACxB,IAAI,EAAE,GAAGO,cAAY,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC1C,IAAI,EAAE,GAAG,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC9C,IAAI;AACJ,GAAG,yBAAyB,EAAE,EAAE,GAAG,uBAAuB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/E;AACA,GAAG,kBAAkB,EAAE;AACvB,IAAI,EAAE,GAAG,qBAAqB,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC1D,IAAI,EAAE,GAAG,qBAAqB,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzD,IAAI;AACJ,GAAG,gBAAgB,EAAE,EAAE,GAAG,qBAAqB,EAAE,QAAQ,EAAE,WAAW,EAAE;AACxE;AACA,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACF,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC,sBAAsB;AACvB,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC;AACnB,EAAE,cAAc,EAAE,uBAAuB;AACzC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE,sBAAsB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACtD,GAAG,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,EAAE,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC;AAC3E;AACA,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;ACjJA,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,aAAa,CAAC,UAAU,CAAC;AACtC;AACA,MAAM,QAAQ,GAAG;AACjB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,oBAAoB;AAC5D,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAGK,YAAU,CAAC,OAAO,CAAC,EAAE;AACjD,CAAC,CAACL,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB;AAC/C,CAAC;;;;;;;;ACjBM,MAAME,eAAa,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;AAC9D;AACY,MAAC,gBAAgB,GAAG,OAAO;AACvC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE,iBAAiB;AAC7B,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACc,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAC7B,EAAE,cAAc,EAAE,qBAAqB;AACvC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA,sBAAsB,EAAE,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC/H;AACA,GAAG,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;AACzD,GAAG,EAAE,mBAAmB,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC7E,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;AClCA,MAAMF,MAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC;AACzC;AACA,MAAM,WAAW,GAAG;AACpB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,oBAAoB;AACxD,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC;;;;;;;;ACbM,MAAME,eAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAC7D;AACY,MAAC,eAAe,GAAG,OAAO;AACtC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE,iBAAiB;AAC7B,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACc,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC;AACnB,EAAE,cAAc,EAAE,oBAAoB;AACtC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA,sBAAsB,EAAE,eAAe,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC7H;AACA,GAAG,EAAE,sBAAsB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACxD,GAAG,EAAE,mBAAmB,CAAC,oBAAoB,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;AAC3E,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;AClCA,MAAMF,MAAI,GAAG,eAAe,CAAC,UAAU,CAAC;AACxC;AACA,MAAM,UAAU,GAAG;AACnB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,oBAAoB;AACxD,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC;;;;;;;;ACdM,MAAME,eAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;AAC3D;AACA,MAAM;AACN,OAACC,MAAI;AACL,QAACC,OAAK;AACN,cAACM,aAAW;AACZ,aAACE,YAAU;AACX,WAACO,UAAQ;AACT,oBAACR,mBAAiB;AAClB,aAACE,YAAU;AACX,eAACC,cAAY;AACb,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,4BAA4B,EAAE;AACxD,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,CAAC,CAAC;AACF;AACY,MAAC,aAAa,GAAG,OAAO;AACpC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGX,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,YAAY,EAAE,EAAE,GAAGA,MAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACnD,GAAG,QAAQ,EAAE;AACb,IAAIA,MAAI;AACR,IAAIgB,UAAQ;AACZ,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIf,OAAK;AACT,IAAIQ,YAAU;AACd,IAAIC,YAAU;AACd,IAAIC,cAAY;AAChB,IAAI;AACJ,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGV,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAGA,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE,GAAG,oBAAoB,EAAE,EAAE,GAAGC,YAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACxE,GAAG,mBAAmB,EAAE,EAAE,GAAGO,UAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC1D,GAAG,yBAAyB,EAAE,EAAE,GAAGT,aAAW,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnE,GAAG,gBAAgB,EAAE,EAAE,GAAGE,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,kBAAkB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACpE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,eAAe,EAAE,EAAE,GAAGO,UAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACvD,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACH,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,kBAAkB;AACpC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA,GAAG,EAAE,sBAAsB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACtD,GAAG,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;AAC7C,GAAG,EAAE,eAAe,CAAC,kBAAkB,CAAC,CAAC;AACzC,GAAG,EAAE,qBAAqB,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAC3D,GAAG,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;AAC1C,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;ACnFA,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,aAAa,CAAC,UAAU,CAAC;AACtC;AACA,MAAM,QAAQ,GAAG;AACjB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,MAAM;AACxB,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,oBAAoB;AAC5D,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,eAAe,GAAG,UAAU;AACnC;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,CAACA,MAAI,CAAC,oBAAoB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;AAC9D,EAAE;AACF;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,CAACL,MAAI,CAAC,eAAe,GAAG,MAAM;AAChC,EAAE;AACF,CAAC;;;;;;;;AC/BM,MAAM,oBAAoB,GAAG,CAAC,GAAG,IAAI,KAAK,OAAO;AACxD,EAAE,oBAAoB;AACtB,EAAE,WAAW;AACb,EAAE,+BAA+B;AACjC,EAAE,2BAA2B;AAC7B,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;;ACNnB,MAAME,eAAa,GAAG,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;AAQxE;AACuB,oBAAoB,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,KAAK,EAAE;;ACT3E,MAAM,iBAAiB,GAAG,CAAC,UAAU;AAC5C,IAAI,MAAM,sBAAsB,SAAS,UAAU,CAAC;AACpD,QAAQ,WAAW,GAAG;AACtB,YAAY,KAAK,EAAE,CAAC;AACpB,SAAS;AACT;AACA,QAAQ,IAAI,GAAG;AACf,YAAY,KAAK,CAAC,IAAI,IAAI,CAAC;AAC3B;AACA,YAAY,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AAChE,YAAY,QAAQ,CAAC,SAAS,GAAG,CAAC;AAClC,KAAK,EAAEkB,eAA4B,CAAC;AACpC;AACA;AACA,OAAO,EAAEA,eAA4B,CAAC;AACtC,GAAG,CAAC,CAAC;AACL;AACA,YAAY,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3E,YAAY,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAACA,eAA4B,CAAC,CAAC;AAC5F,YAAY,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAC/E;AACA,YAAY,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE;AAClD,gBAAgB,YAAY,EAAE;AAC9B,oBAAoB,UAAU;AAC9B,oBAAoB,YAAY;AAChC,oBAAoB,MAAM;AAC1B,oBAAoB,OAAO;AAC3B,oBAAoB,SAAS;AAC7B,oBAAoB,UAAU;AAC9B,iBAAiB;AACjB,aAAa,CAAC,CAAC;AACf;AACA,YAAY,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/D,YAAY,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AAC9E,SAAS;AACT,KAAK;;ACpCL,mBAAe,CAAC;AAChB;AACA;AACA;AACA;AACA,EAAE,2BAA2B,EAAE,CAAC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;ACtDM,MAAMlB,eAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC1D;AACA,MAAM;AACN,OAACC,MAAI;AACL,YAACkB,WAAS;AACV,CAAC,eAAe;AAChB,CAAC,eAAe;AAChB,sBAACC,qBAAmB;AACpB,QAAClB,OAAK;AACN,oBAACO,mBAAiB;AAClB,aAACE,YAAU;AACX,eAACC,cAAY;AACb,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE;AAC3C,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,iCAAiC,EAAE;AACjE,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,wCAAwC,EAAE;AACxE,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,gCAAgC,EAAE;AACpE,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,CAAC,CAAC;AACF;AACY,MAAC,aAAa,GAAG,OAAO;AACpC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGX,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C;AACA,GAAG,QAAQ,EAAE;AACb,IAAIA,MAAI;AACR,IAAI,eAAe;AACnB,IAAIC,OAAK;AACT,IAAIkB,qBAAmB;AACvB,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIlB,OAAK;AACT,IAAIkB,qBAAmB;AACvB,IAAIT,YAAU;AACd,IAAIC,cAAY;AAChB,IAAI;AACJ;AACA,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGV,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI,EAAE,GAAGP,OAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE;AACrD,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE;AACA,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,GAAGP,OAAK,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzC,IAAI,EAAE,GAAGkB,qBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE;AACvD,IAAI;AACJ,GAAG,YAAY,EAAE;AACjB,IAAI,EAAE,GAAGlB,OAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;AAClC,IAAI,EAAE,GAAGkB,qBAAmB,EAAE,QAAQ,EAAE,cAAc,EAAE;AACxD,IAAI;AACJ,GAAG,mBAAmB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;AACjE,GAAG,oBAAoB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AAC7E;AACA,GAAG,iBAAiB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE;AACvE,GAAG,gBAAgB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE;AACrE,GAAG,iBAAiB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE;AACvE,GAAG,gBAAgB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE;AACrE,GAAG,gBAAgB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE;AACrE;AACA,GAAG,iBAAiB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE;AACvE,GAAG,kBAAkB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACzE,GAAG,iBAAiB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE;AACvE,GAAG,iBAAiB,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE;AACvE;AACA,GAAG,SAAS,EAAE;AACd,IAAI,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC7C,IAAI,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC9C,IAAI,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE;AACjD,IAAI,EAAE,GAAGD,WAAS,EAAE,QAAQ,EAAE,WAAW,EAAE;AAC3C,IAAI,EAAE,GAAGC,qBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE;AACvD,IAAI,EAAE,GAAGlB,OAAK,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzC,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzC,IAAI;AACJ,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACY,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC,iBAAiB;AAClB,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB,GAAG,EAAE,YAAY,CAAC;AAClB,GAAG,EAAE,sBAAsB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACtD,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;ACzGmB,YAAY,CAAC,OAAO,EAAE;AACzC,MAAMF,MAAI,GAAG,aAAa,CAAC,UAAU,CAAC;AACtC;AACA,MAAM,QAAQ,GAAG;AACjB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,eAAe,GAAG,KAAK;AAC9B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,QAAQ;AAC9B,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB;AACvD,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,KAAK;AACxB;AACA,CAAC,QAAQ,EAAE;AACX,EAAE,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AACnD,EAAE,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AACjD,EAAE;AACF;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC5C,EAAE;AACF,CAAC;;;;;;;;ACtBM,MAAME,eAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;AAC/D;AACA,MAAM;AACN,OAACC,MAAI;AACL,CAAC,SAAS;AACV,CAAC,eAAe,EAAE,KAAK;AACvB,CAAC,eAAe,EAAE,IAAI;AACtB,CAAC,mBAAmB;AACpB,QAACC,OAAK;AACN,oBAACO,mBAAiB;AAClB,aAACE,YAAU;AACX,eAACC,cAAY;AACb,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE;AAC3C,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,iCAAiC,EAAE;AACjE,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,wCAAwC,EAAE;AACxE,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,gCAAgC,EAAE;AACpE,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,CAAC,CAAC;AACF;AACY,MAAC,iBAAiB,GAAG,OAAO;AACxC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGX,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,QAAQ,EAAE;AACb,IAAI,SAAS;AACb,IAAIC,OAAK;AACT,IAAI,mBAAmB;AACvB,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIA,OAAK;AACT,IAAIS,YAAU;AACd,IAAIC,cAAY;AAChB,IAAI;AACJ,GAAG,gBAAgB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC3D,GAAG,gBAAgB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC3D,GAAG,gBAAgB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC3D,GAAG,oBAAoB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACnE,GAAG,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC7D,GAAG,UAAU,EAAE;AACf,IAAI,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI;AACJ,GAAG,WAAW,EAAE;AAChB,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACtC,IAAI,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACpC,IAAI;AACJ;AACA,GAAG,QAAQ,EAAE;AACb,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAClC,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACnC,IAAI;AACJ,GAAG,aAAa,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAChD,GAAG,UAAU,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrD,GAAG,sBAAsB,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE;AAC9D,GAAG,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACvD,GAAG,aAAa,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;AAC9C,GAAG,cAAc,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE;AAChD;AACA,GAAG,YAAY,EAAE;AACjB,IAAI,EAAE,GAAGV,OAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC1C,IAAI,EAAE,GAAG,mBAAmB,EAAE,QAAQ,EAAE,cAAc,EAAE;AACxD,IAAI;AACJ,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzC,IAAI,EAAE,GAAG,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE;AACvD,IAAI;AACJ,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,aAAa,EAAE;AACzC,IAAI,EAAE,GAAG,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE;AACvD,IAAI;AACJ,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI,EAAE,GAAGP,OAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE;AACrD,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE,GAAG,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC7D,GAAG,kBAAkB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AAC/D,GAAG,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC7D,GAAG,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC7D,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACK,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC,iBAAiB;AAClB,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB,GAAG,EAAE,YAAY,CAAC;AAClB,GAAG,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;AAC1D;AACA,mBAAmB,EAAE,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEd,eAAa;AACf,EAAE,CAAC;AACH;;ACxHA,MAAM,UAAU,GAAG,KAAK,CAAC;AACzB,MAAM,cAAc,GAAG,QAAQ,CAAC;AAChC;AACA,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;AAC1C;AACA,MAAM,YAAY,GAAG;AACrB,IAAI,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAClC,IAAI,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACtC;AACA,IAAI,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC/C,IAAI,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AACjD,IAAI,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC/C,IAAI,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC/C;AACA,IAAI,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC7C,IAAI,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC7C,IAAI,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC7C,IAAI,CAACA,MAAI,CAAC,oBAAoB,GAAG,MAAM;AACvC,IAAI,CAACA,MAAI,CAAC,iBAAiB,GAAGK,YAAU,CAAC,MAAM,CAAC,EAAE;AAClD,IAAI,CAACL,MAAI,CAAC,UAAU,GAAG,OAAO;AAC9B,IAAI,CAACA,MAAI,CAAC,WAAW,GAAG,cAAc;AACtC;AACA,IAAI,CAACA,MAAI,CAAC,QAAQ,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;AAChD,IAAI,CAACA,MAAI,CAAC,UAAU,GAAG,KAAK;AAC5B,IAAI,CAACA,MAAI,CAAC,aAAa,GAAG,KAAK;AAC/B,IAAI,CAACA,MAAI,CAAC,cAAc,GAAG,UAAU;AACrC,IAAI,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc;AACzC,IAAI,CAACA,MAAI,CAAC,sBAAsB,GAAG,MAAM;AACzC;AACA,IAAI,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC9C,IAAI,CAACA,MAAI,CAAC,eAAe,GAAG,KAAK;AACjC,IAAI,CAACA,MAAI,CAAC,eAAe,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC;AAC9D,IAAI,CAACA,MAAI,CAAC,YAAY,GAAG,QAAQ;AACjC,IAAI,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACzD;AACA,IAAI,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAChC;AACA,IAAI,QAAQ,EAAE;AACd,QAAQ,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AACjD,QAAQ,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AACzD,QAAQ,CAACA,MAAI,CAAC,cAAc,GAAG,CAAC,gBAAgB,EAAEA,MAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;AACnF,QAAQ,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc;AAC7C,QAAQ,CAACA,MAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc;AACjD,KAAK;AACL;AACA,IAAI,SAAS,EAAE;AACf,QAAQ,CAACA,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;AACzD,QAAQ,CAACL,MAAI,CAAC,gBAAgB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAC/D,QAAQ,CAACL,MAAI,CAAC,oBAAoB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnE,QAAQ,CAACL,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAClD,QAAQ,QAAQ,EAAE;AAClB,YAAY,CAACA,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;AAC7D,YAAY,CAACL,MAAI,CAAC,oBAAoB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACvE,SAAS;AACT,KAAK;AACL;AACA,IAAI,QAAQ,EAAE;AACd,QAAQ,CAACL,MAAI,CAAC,gBAAgB,GAAGK,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AAC7D,QAAQ,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AACtD,KAAK;AACL,CAAC;;;;;;;;ACzDM,MAAMH,eAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;AAC3D;AACA,MAAM,YAAY,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;AAC5F,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,CAAC;AACH,EAAE;AACF,CAAC;AACD;AACY,MAAC,cAAc,GAAG,OAAO;AACrC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC9D,GAAG,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5D;AACA,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE;AAC/B,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AAClC,IAAI;AACJ,GAAG,iBAAiB,EAAE;AACtB,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE;AACjC,IAAI;AACJ;AACA,GAAG,aAAa,EAAE,EAAE;AACpB,GAAG,cAAc,EAAE,EAAE;AACrB,GAAG,UAAU,EAAE,EAAE;AACjB,GAAG,GAAG,EAAE,EAAE;AACV,GAAG,QAAQ,EAAE,EAAE;AACf;AACA,GAAG,eAAe,EAAE,EAAE;AACtB,GAAG,KAAK,EAAE,EAAE;AACZ,GAAG,YAAY,EAAE,EAAE;AACnB;AACA,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB;AACA,GAAG,SAAS,EAAE,EAAE;AAChB,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,YAAY;;AC/Dd,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC;AACA,MAAMC,UAAQ,GAAG,cAAc,CAAC,WAAU;AAC1C;AACA,MAAM,iBAAiB,GAAG;AAC1B,CAAC,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE;AACtC,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE;AAC7C,CAAC,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE;AAClC,EAAC;AACD;AACA,MAAM,mBAAmB,GAAG;AAC5B,CAAC,KAAK,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE;AACxC,CAAC,MAAM,EAAE,EAAE,mBAAmB,EAAE,aAAa,EAAE;AAC/C,CAAC,GAAG,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE;AACpC,EAAC;AACD;AACA,MAAM,CAACC,aAAW,EAAEC,YAAU,EAAEC,YAAU,CAAC;AAC3C,CAAC,gBAAgB,CAAC;AAClB,EAAE,iBAAiB;AACnB,EAAE,mBAAmB;AACrB,EAAE,WAAW,EAAE,WAAW;AAC1B,EAAE,EAAEP,eAAa,EAAC;AAClB;AACA,MAAM,EAAE,WAAW,EAAE,GAAGM,YAAU,CAAC;AACnC;AACA,MAAM,SAAS,GAAG;AAClB,CAAC,GAAGD,aAAW;AACf;AACA,CAAC,CAACD,UAAQ,CAAC,SAAS,GAAG,MAAM;AAC7B,CAAC,CAACA,UAAQ,CAAC,SAAS,GAAG,MAAM;AAC7B,CAAC,CAACA,UAAQ,CAAC,eAAe,GAAGD,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;AAC5D,CAAC,CAACC,UAAQ,CAAC,KAAK,GAAGD,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACrD;AACA,CAAC,eAAe,EAAE;AAClB,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,eAAe,GAAG,KAAK,EAAE;AAC3C,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,eAAe,GAAG,MAAM,EAAE;AAC5C,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,eAAe,GAAG,MAAM,EAAE;AAC5C,EAAE;AACF;AACA,CAAC,iBAAiB,EAAE;AACpB,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,iBAAiB,GAAG,KAAK,EAAE;AAC7C,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,iBAAiB,GAAG,MAAM,EAAE;AAC9C,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,iBAAiB,GAAG,MAAM,EAAE;AAC9C,EAAE;AACF;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,GAAG,EAAE;AACP,GAAG,CAACA,UAAQ,CAAC,aAAa,GAAG,KAAK;AAClC,GAAG,CAACA,UAAQ,CAAC,UAAU,GAAGE,YAAU,CAAC,iBAAiB;AACtD,GAAG,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,mBAAmB;AAC5D,GAAG,CAACF,UAAQ,CAAC,QAAQ,GAAG,MAAM;AAC9B,GAAG,mBAAmB,EAAE;AACxB,IAAI,YAAY,EAAE;AAClB,KAAK,CAACG,YAAU,CAAC,mBAAmB,GAAG,eAAe;AACtD,KAAK;AACL,IAAI;AACJ,GAAG;AACH,EAAE,MAAM,EAAE;AACV,GAAG,CAACH,UAAQ,CAAC,aAAa,GAAG,QAAQ;AACrC,GAAG,CAACA,UAAQ,CAAC,UAAU,GAAGE,YAAU,CAAC,mBAAmB;AACxD,GAAG,CAACF,UAAQ,CAAC,cAAc,GAAGE,YAAU,CAAC,iBAAiB;AAC1D,GAAG,iBAAiB,EAAE;AACtB,IAAI,YAAY,EAAE;AAClB,KAAK,CAACC,YAAU,CAAC,iBAAiB,GAAG,eAAe;AACpD,KAAK;AACL,IAAI;AACJ,GAAG;AACH,EAAE;AACF;AACA,CAAC,YAAY,EAAE;AACf,EAAE,EAAE,EAAE,EAAE,CAACH,UAAQ,CAAC,GAAG,GAAG,MAAM,EAAE;AAChC,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,GAAG,GAAG,MAAM,EAAE;AAChC,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,GAAG,GAAG,MAAM,EAAE;AAChC,EAAE;AACF;AACA,CAAC,MAAM,EAAE;AACT,EAAE,EAAE,EAAE,EAAE,CAACA,UAAQ,CAAC,SAAS,GAAG,CAAC,EAAED,YAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAEA,YAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE;AAC5H,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,SAAS,GAAG,CAAC,EAAED,YAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAEA,YAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE;AAC5H,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,SAAS,GAAG,CAAC,EAAED,YAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAEA,YAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE;AAC5H,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,SAAS,GAAG,CAAC,EAAED,YAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAEA,YAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE;AAC5H,EAAE,KAAK,EAAE;AACT,GAAG,CAACI,YAAU,CAAC,WAAW,GAAG,WAAW;AACxC,GAAG,CAACH,UAAQ,CAAC,SAAS,GAAG,CAAC,EAAED,YAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AAC1E,GAAG;AACH,EAAE;AACF;AACA,CAAC,YAAY,EAAE;AACf,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,EAAE,EAAE;AACvD,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,EAAE,EAAE;AACvD,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,EAAE,EAAE;AACvD,EAAE,EAAE,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,EAAE,EAAE;AACvD,EAAE,KAAK,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;AAC9D,EAAE,KAAK,EAAE,EAAE,CAACC,UAAQ,CAAC,YAAY,GAAGD,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;AAC9D,EAAE;AACF,CAAC,CAAC;AAGF;AACO,MAAML,MAAI,GAAG;AACpB,CAAC,GAAGM,UAAQ;AACZ,CAAC,GAAGG,YAAU;AACd,CAAC;;;;;;;;AChGM,MAAMP,eAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtD;AACA,IAAI,KAAK,CAAC;AACV,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC;AAC7B;AACA,MAAM,OAAO,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;AACtF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA,GAAG,EAAE,QAAQ,EAAE,CAAC;AAChB;AACA,aAAa,CAAC,CAAC;AACf,EAAE;AACF,CAAC;AACD;AACY,MAAC,SAAS,GAAG,OAAO;AAChC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AACtC,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AACrC,GAAG,WAAW,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AACvC,GAAG,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC/B,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,OAAO,EAAE;AACX;AACA,KAAK,GAAG,CAAC;AACT;AACA;AACA;AACA;AACA;AACA,cAAc,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;ACpDD,MAAMF,MAAI,GAAG,SAAS,CAAC,WAAU;AACjC;AACA,MAAM,IAAI,GAAG;AACb,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,kEAAkE;AACvF,CAAC;;;;;;;;ACGM,MAAME,eAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtD;AACA,MAAM,OAAO,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;AACvF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC,CAAC;AACJ,EAAE;AACF,CAAC;AACD;AACY,MAAC,SAAS,GAAG,OAAO;AAChC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5D,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,GAAG,cAAc,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE;AAC9C,GAAG,iBAAiB,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACpD,GAAG,UAAU,EAAE,EAAE;AACjB,GAAG,SAAS,EAAE,EAAE;AAChB,GAAG,aAAa,EAAE,EAAE;AACpB,GAAG,UAAU,EAAE,EAAE;AACjB,GAAG,SAAS,EAAE,EAAE;AAChB,GAAG,UAAU,EAAE,EAAE;AACjB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,OAAO;;AC/CT,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,SAAS,CAAC,UAAU,CAAC;AAClC;AACA,MAAMuB,MAAI,GAAG;AACb,CAAC,CAACvB,MAAI,CAAC,cAAc,GAAG,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM;AACzB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACjD,CAAC,OAAO,EAAE;AACV,EAAE,EAAE,EAAE;AACN,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACjD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM;AACrD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACnD,GAAG;AACH,EAAE,EAAE,EAAE;AACN,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACjD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM;AACrD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACnD,GAAG;AACH,EAAE,EAAE,EAAE;AACN,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACjD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM;AACrD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI;AACnD,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI;AACxD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM;AAC5D,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI;AAC1D,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI;AACxD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM;AAC5D,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI;AAC1D,GAAG;AACH,EAAE,KAAK,EAAE;AACT,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;AACpD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM;AACxD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;AACtD,GAAG;AACH,EAAE,KAAK,EAAE;AACT,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;AACpD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM;AACxD,GAAG,CAACL,MAAI,CAAC,UAAU,GAAGK,YAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI;AACtD,GAAG;AACH,EAAE;AACF;AACA,CAAC,IAAI,EAAE;AACP,EAAE,OAAO,EAAE;AACX,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;AACrD,GAAG;AACH,EAAE,KAAK,EAAE;AACT,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AACjD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,GAAG;AACH,EAAE;AACF;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,KAAK,EAAE,EAAE,CAACL,MAAI,CAAC,SAAS,GAAG,OAAO,EAAE;AACtC,EAAE,IAAI,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AACpC,EAAE,MAAM,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,QAAQ,EAAE;AACxC,EAAE;AACF;AACA,CAAC,UAAU,EAAE;AACb,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM;AAC1B,EAAE;AACF;AACA,CAAC,OAAO,EAAE;AACV,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,QAAQ;AAC5B,EAAE;AACF;AACA,CAAC,UAAU,EAAE;AACb,EAAE,CAACA,MAAI,CAAC,aAAa,GAAG,WAAW;AACnC,EAAE;AACF;AACA,CAAC,UAAU,EAAE;AACb,EAAE,CAACA,MAAI,CAAC,aAAa,GAAG,WAAW;AACnC,EAAE;AACF,CAAC;;;;;;;;AC3EM,MAAME,eAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtD;AACA,MAAM,OAAO,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;AAClF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC,CAAC;AACJ;AACA,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;AACzD,GAAG,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;AAC9C,GAAG,QAAQ,EAAE;AACb,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI;AACJ,GAAG,CAAC,CAAC;AACL;AACA,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE;AACpE,GAAG,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;AACpC,GAAG,CAAC,CAAC;AACL,EAAE;AACF,CAAC;AACD;AACA,MAAMsB,WAAS,GAAG;AAClB,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,MAAM,EAAE,EAAE;AACX,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,EAAE;AAC3C,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC,aAAa,EAAE;AAClD,CAAC,CAAC;AACF;AACA,MAAM,EAAE,MAAM,QAAED,MAAI,QAAEpB,MAAI,EAAE,OAAO,EAAE,GAAGqB,WAAS,CAAC;AAClD;AACY,MAAC,SAAS,GAAG,OAAO;AAChC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGrB,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,SAAS,EAAE,OAAO;AACrB,GAAG,SAAS,EAAE;AACd,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE;AACpC,IAAI,EAAE,GAAGoB,MAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE;AACzD,IAAI;AACJ,GAAG,MAAM,EAAE,MAAM;AACjB,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,OAAO;;ACtET,MAAMlB,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,SAAS,CAAC,UAAU,CAAC;AAClC;AACA,MAAM,IAAI,GAAG;AACb,CAAC,CAACA,MAAI,CAAC,MAAM,GAAG,SAAS;AACzB;AACA,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,KAAK;AACjC,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,OAAO;AACnC,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,aAAa;AACzC,CAAC,CAACA,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACjD;AACA,CAAC,MAAM,EAAE;AACT,EAAE,CAACL,MAAI,CAAC,kBAAkB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAC3D,EAAE;AACF;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,KAAK,EAAE,EAAE,CAACL,MAAI,CAAC,SAAS,GAAG,OAAO,EAAE;AACtC,EAAE,IAAI,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AACpC,EAAE,MAAM,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,QAAQ,EAAE;AACxC,EAAE;AACF;AACA,CAAC,UAAU,EAAE;AACb,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM;AAC1B,EAAE;AACF;AACA,CAAC,IAAI,EAAE;AACP,EAAE,OAAO,EAAE;AACX,GAAG,CAACA,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;AACrD,GAAG;AACH,EAAE,KAAK,EAAE;AACT,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;AACjD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,GAAG,CAACL,MAAI,CAAC,SAAS,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACnD,GAAG;AACH,EAAE;AACF,CAAC;;;;;;;;AClCM,MAAMH,eAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACzD,MAAM,UAAU,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;AACzF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC,CAAC;AACJ;AACA,EAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;AACrE;AACA,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE;AACzC,GAAG,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC;AAC9C,GAAG,CAAC,CAAC;AACL,EAAE;AACF,CAAC;AACD;AACA,MAAM;AACN,OAACC,MAAI;AACL,CAAC,MAAM;AACP,QAACsB,OAAK;AACN,CAAC,IAAI;AACL,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;AACjC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC/B,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;AACnC,CAAC,CAAC;AACF;AACY,MAAC,YAAY,GAAG,OAAO;AACnC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGtB,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,WAAW,EAAE,EAAE,GAAGA,MAAI,EAAE,QAAQ,EAAE,SAAS,EAAE;AAChD;AACA,GAAG,SAAS,EAAE,EAAE;AAChB,GAAG,UAAU,EAAE,EAAE;AACjB,GAAG,SAAS,EAAE,EAAE;AAChB,GAAG,aAAa,EAAE,EAAE;AACpB;AACA,GAAG,cAAc,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AACjD,GAAG,iBAAiB,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACxD,GAAG,wBAAwB,EAAE;AAC7B,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE;AACxC,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AAC3C,IAAI;AACJ,GAAG,0BAA0B,EAAE;AAC/B,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC1C,IAAI,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE;AACzC,IAAI;AACJ;AACA,GAAG,WAAW,EAAE;AAChB,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AAC/C,IAAI,EAAE,GAAGsB,OAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AAC9C,IAAI;AACJ,GAAG,yBAAyB,EAAE;AAC9B,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACrC,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACpC,IAAI;AACJ,GAAG,uBAAuB,EAAE;AAC5B,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE;AACpC,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI;AACJ,GAAG,kBAAkB,EAAE;AACvB,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;AACtC,IAAI,EAAE,GAAGA,OAAK,EAAE,QAAQ,EAAE,SAAS,EAAE;AACrC,IAAI;AACJ,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,UAAU;;ACzGZ,MAAMpB,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC;AACzC;AACA,MAAM;AACN,CAACE,aAAW;AACZ,CAACC,YAAU;AACX,CAAC,UAAU;AACX,CAAC,GAAG,gBAAgB,CAAC;AACrB,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,OAAO,EAAE,MAAM;AAChB,CAAC,EAAEN,eAAa,CAAC,CAAC;AAClB;AACA,MAAM,OAAO,GAAG;AAChB,CAAC,GAAGK,aAAW;AACf;AACA,CAAC,CAAC,QAAQ,CAAC,UAAU,GAAG,QAAQ;AAChC,CAAC,CAAC,QAAQ,CAAC,aAAa,GAAG,KAAK;AAChC,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS;AAChC,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,MAAM;AAC7B,CAAC,CAAC,QAAQ,CAAC,WAAW,GAAGF,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AACvD,CAAC,CAAC,QAAQ,CAAC,kBAAkB,GAAG,KAAK;AACrC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,GAAGG,YAAU,CAAC,SAAS;AAC3D,CAAC,CAAC,QAAQ,CAAC,cAAc,GAAG,aAAa;AACzC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,GAAG,oBAAoB;AACnD,CAAC,CAAC,QAAQ,CAAC,0BAA0B,GAAGA,YAAU,CAAC,OAAO;AAC1D;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,CAAC,QAAQ,CAAC,SAAS,GAAG,OAAO;AAC/B,EAAE,CAAC,QAAQ,CAAC,aAAa,GAAG,QAAQ;AACpC,EAAE,CAAC,QAAQ,CAAC,SAAS,GAAG,aAAa;AACrC,EAAE,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,OAAO,EAAEA,YAAU,CAAC,SAAS,CAAC,KAAK,CAAC;AAC/D,EAAE,CAAC,QAAQ,CAAC,uBAAuB,GAAGA,YAAU,CAAC,SAAS;AAC1D,EAAE,CAAC,QAAQ,CAAC,cAAc,GAAG,aAAa;AAC1C,EAAE,CAAC,QAAQ,CAAC,iBAAiB,GAAG,MAAM;AACtC,EAAE,CAAC,QAAQ,CAAC,wBAAwB,GAAGA,YAAU,CAAC,OAAO;AACzD,EAAE;AACF,CAAC,CAAC;AAGF;AACO,MAAMR,MAAI,GAAG;AACpB,CAAC,GAAG,QAAQ;AACZ,CAAC,GAAG,UAAU;AACd,CAAC;;;;;;;;AC3CM,MAAME,eAAa,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;AAanE;AACuB,oBAAoB,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,KAAK,EAAE;;ACL3E,MAAMA,eAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC1D;AACA,MAAMD,oBAAkB,GAAG;AAC3B,CAAC,QAAQ;AACT,CAAC,CAAC;AACF;AACA,MAAMc,aAAW,GAAG,CAAC,UAAU;AAC/B,CAAC,MAAM,kBAAkB,SAAS,UAAU,CAAC;AAC7C,EAAE,WAAW,kBAAkB,GAAG;AAClC,GAAG,OAAOd,oBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;AACzE,GAAG;AACH;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC;AACX,GAAG;AACH;AACA,EAAE,IAAI,MAAM,GAAG;AACf,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5D,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB,GAAG,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACvD;AACA,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC;AACzB,IAAI,EAAEmB,eAA4B,CAAC;AACnC;AACA;AACA;AACA;AACA,MAAM,EAAEA,eAA4B,CAAC;AACrC,GAAG,CAAC,CAAC;AACL;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAClE;AACA,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAACA,eAA4B,CAAC,CAAC;AACnF;AACA,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAC;AAC9E,GAAG;AACH;AACA,EAAE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACzD,GAAG,KAAK,CAAC,wBAAwB,GAAG,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAClE;AACA,GAAG,IAAI,QAAQ,KAAK,QAAQ,EAAE;AAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;AAChE,IAAI;AACJ,GAAG;AACH,EAAE,CAAC;AACH;AACA,MAAM;AACN,OAACjB,MAAI;AACL,CAAC,UAAU;AACX,QAACC,OAAK;AACN,oBAACO,mBAAiB;AAClB,CAAC,eAAe;AAChB,CAAC,iBAAiB;AAClB,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;AACzF,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC,aAAa,EAAE;AAC7D,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,oCAAoC,EAAE;AACpE,EAAC;AACD;AACA,MAAMe,UAAQ,GAAG,cAAc,CAAC,WAAU;AAC1C;AACY,MAAC,aAAa,GAAG,OAAO;AACpC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,QAAQ,EAAE,CAAC,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,QAAQ,EAAE,EAAEvB,MAAI,CAAC;AACnE,GAAG,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,GAAG,UAAU,EAAEA,MAAI;AACnB,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGC,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAGA,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE,GAAG,mBAAmB,EAAE;AACxB,IAAI,QAAQ,EAAE,cAAc,CAAC,aAAa;AAC1C,IAAI,QAAQ,EAAEe,UAAQ,CAAC,mBAAmB;AAC1C,IAAI;AACJ,GAAG,SAAS,EAAE;AACd,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACzC,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxC,IAAI;AACJ,GAAG,YAAY,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,sBAAsB,EAAE;AAC7E,GAAG,cAAc,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,cAAc,EAAE;AACvE,GAAG,mBAAmB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,mBAAmB,EAAE;AACjF,GAAG,YAAY,EAAE,EAAE,GAAG,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE;AACxD,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,iBAAiB,EAAE;AAC7E,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAEA,UAAQ,CAAC,iBAAiB,EAAE;AAC7E;AACA,GAAG,6BAA6B,EAAE,EAAE,GAAG,iBAAiB,EAAE,QAAQ,EAAEA,UAAQ,CAAC,iBAAiB,EAAE;AAChG,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACV,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAACD,aAAW;AACZ,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE,2BAA2B,EAAE,CAAC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAEW,UAAQ,CAAC,WAAW,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;AAC3C,KAAK,CAAC;AACN,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAExB,eAAa;AACf,EAAE,CAAC;AACH;;ACpLmB,YAAY,CAAC,OAAO,EAAE;AACzC,MAAMF,MAAI,GAAG,aAAa,CAAC,WAAU;AACrC;AACA,MAAM,QAAQ,GAAG;AACjB,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,GAAG;AACzB,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,QAAQ;AAChC,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,GAAG;AACzB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,aAAa;AACxC,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,YAAY;AACxD,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW;AACnC;AACA,CAAC,WAAW,EAAE;AACd,EAAE,CAACA,MAAI,CAAC,mBAAmB,GAAG,aAAa;AAC3C,EAAE;AACF;;;;;;;;ACjBO,MAAME,eAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;AAC/D;AACA,MAAM,eAAe,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;AAC9F,CAAC,WAAW,aAAa,GAAG;AAC5B,EAAE,OAAOA,eAAa,CAAC;AACvB,EAAE;AACF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,CAAC;AACH,EAAE;AACF,CAAC;AACD;AACA,MAAM,SAAS,GAAG;AAClB,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC/B,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,CAAC;AACF;AACA,MAAM,EAAE,KAAK,QAAEC,MAAI,EAAE,GAAG,SAAS,CAAC;AAClC;AACY,MAAC,iBAAiB,GAAG,OAAO;AACxC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,WAAW,EAAE,EAAE;AAClB,GAAG,SAAS,EAAE,EAAE,GAAGA,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,SAAS,EAAE;AACd,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC1B,IAAI,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACpC,IAAI;AACJ,GAAG,eAAe,EAAE;AACpB,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE;AACjC,IAAI,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE;AAC3C,IAAI;AACJ,GAAG,kBAAkB,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACvD,GAAG,QAAQ,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACvD,GAAG,QAAQ,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;AACjC,GAAG,uBAAuB,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;AACvC,GAAG,uBAAuB,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC;AACvC,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,eAAe;;ACrEjB,MAAME,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;AAC1C;AACA,MAAM,YAAY,GAAG;AACrB,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,cAAc;AACnC,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM;AACzB;AACA,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACpD,CAAC,CAACL,MAAI,CAAC,QAAQ,GAAG,KAAK;AACvB;AACA,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAC1D,CAAC,CAACL,MAAI,CAAC,eAAe,GAAG,KAAK;AAC9B;AACA,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI;AAC/B,CAAC,CAACA,MAAI,CAAC,uBAAuB,GAAG,QAAQ;AACzC,CAAC,CAACA,MAAI,CAAC,uBAAuB,GAAG,UAAU;AAC3C;AACA,CAAC,IAAI,EAAE;AACP,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,KAAK,EAAE;AACjC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AAClC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AAClC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AAClC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,SAAS,GAAG,MAAM,EAAE;AAClC,EAAE;AACF;AACA,CAAC,IAAI,EAAE;AACP,EAAE,OAAO,EAAE;AACX,GAAG,CAACA,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAClD,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,CAACL,MAAI,CAAC,QAAQ,GAAGK,YAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;AACpD,GAAG;AACH,EAAE;AACF;AACA,CAAC,OAAO,EAAE;AACV,EAAE,CAACL,MAAI,CAAC,WAAW,GAAG,MAAM;AAC5B,EAAE;AACF,CAAC;;;;;;;;AChCM,MAAME,eAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;AAC/D;AACA,MAAM,eAAe,SAAS,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;AAC9F,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,CAAC;AACH,EAAE;AACF,CAAC;AACD;AACY,MAAC,iBAAiB,GAAG,OAAO;AACxC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,WAAW,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;AACvC,GAAG,WAAW,EAAE;AAChB,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AACzB,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC1B,IAAI;AACJ,GAAG,kBAAkB,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;AACnD,GAAG,kBAAkB,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;AACnD,GAAG,mBAAmB,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrD,GAAG,qBAAqB,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AAC1D,GAAG,qBAAqB,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAC7D,GAAG,qBAAqB,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE;AAC5D,GAAG,qBAAqB,EAAE,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AAC3D,GAAG,iBAAiB,EAAE,EAAE;AACxB,GAAG,uBAAuB,EAAE,EAAE;AAC9B,GAAG,uBAAuB,EAAE,EAAE;AAC9B,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,4BAA4B;AAC7B,CAAC,CAAC,eAAe;;ACpDjB,MAAMG,YAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAML,MAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;AAC1C;AACA,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,gBAAgB,CAAC;AACnD,CAAC,YAAY,EAAEK,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACjD,CAAC,IAAI,EAAE;AACP,EAAE,OAAO,EAAE;AACX,GAAG,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;AAC/C,GAAG;AACH,EAAE,SAAS,EAAE;AACb,GAAG,YAAY,EAAEA,YAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;AACjD,GAAG;AACH,EAAE;AACF,CAAC,EAAEH,eAAa,CAAC,CAAC;AAClB;AACA,MAAM,YAAY,GAAG;AACrB,CAAC,GAAG,WAAW;AACf;AACA,CAAC,CAACF,MAAI,CAAC,iBAAiB,GAAG,IAAI;AAC/B,CAAC,CAACA,MAAI,CAAC,uBAAuB,GAAG,QAAQ;AACzC,CAAC,CAACA,MAAI,CAAC,uBAAuB,GAAG,UAAU;AAC3C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,OAAO;AACnC,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,OAAO;AACnC,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,KAAK;AAClC,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,YAAY;AACtD,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,aAAa;AAC5C,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,YAAY;AACtD,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,aAAa;AAC5C;AACA,CAAC,IAAI,EAAE;AACP,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM,EAAE;AACpC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM,EAAE;AACpC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM,EAAE;AACpC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM,EAAE;AACpC,EAAE,EAAE,EAAE,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM,EAAE;AACpC,EAAE;AACF;AACA,CAAC,OAAO,EAAE;AACV,EAAE,CAACA,MAAI,CAAC,WAAW,GAAG,MAAM;AAC5B,EAAE;AACF,CAAC;;;;;;;;AChCM,MAAME,eAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;AAC3D;AACA,MAAM,aAAa,GAAG,CAAC,UAAU,KAAK,MAAM,kBAAkB,SAAS,UAAU,CAAC;AAClF,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV,EAAE;AACF;AACA;AACA;AACA;AACA,CAAC,iBAAiB,GAAG;AACrB,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAC;AACtE,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAC;AACzC;AACA;AACA,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE;AACpB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK;AAC3B,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE;AAC7C,KAAK,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;AAC1C,KAAK,EAAC;AACN,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE;AAC3C,KAAK,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;AACxC,KAAK,EAAC;AACN,IAAI,CAAC,CAAC;AACN;AACA,GAAG,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B;AACA,GAAG,WAAW,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK;AAClD,IAAI,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;AAC1C,IAAI,CAAC;AACL,GAAG;AACH,EAAE;AACF;AACA;AACA;AACA;AACA,CAAC,wBAAwB,GAAG;AAC5B,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,0BAA0B,EAAC;AACvF;AACA,EAAE,OAAO,CAAC,cAAc,GAAG,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAE;AAC/D,EAAE,OAAO,CAAC,cAAc,GAAG,YAAY,IAAG;AAC1C,EAAE,OAAO,CAAC,gBAAgB,GAAG,YAAY,IAAG;AAC5C,EAAE;AACF;AACA,CAAC,IAAI,GAAG;AACR,EAAE,KAAK,CAAC,IAAI,KAAI;AAChB;AACA,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC;AAClC,EAAE,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,EAAE;AACF,EAAC;AACD;AACA,MAAM;AACN,OAACC,MAAI;AACL,aAACS,YAAU;AACX,CAAC,YAAY;AACb,CAAC,WAAW;AACZ,CAAC,MAAM;AACP,QAACR,OAAK;AACN,oBAACO,mBAAiB;AAClB,aAACE,YAAU;AACX,eAACC,cAAY;AACb,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;AACpC,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,2BAA2B,EAAE;AACvD,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AAC9C,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,aAAa,GAAG,OAAO;AACpC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,SAAS,EAAE,EAAE,GAAGX,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C;AACA,GAAG,QAAQ,EAAE;AACb,IAAI,EAAE;AACN,IAAIA,MAAI;AACR,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIC,OAAK;AACT,IAAI,WAAW;AACf,IAAIQ,YAAU;AACd,IAAIC,YAAU;AACd,IAAIC,cAAY;AAChB,IAAI;AACJ,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGV,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAGO,mBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI;AACJ,GAAG,WAAW,EAAE,EAAE,GAAGC,YAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACrD,GAAG,oBAAoB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE;AACxE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,gBAAgB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAChE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,sBAAsB,EAAE,EAAE,GAAGD,mBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE,GAAG,mBAAmB,EAAE,EAAE,GAAGC,YAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5D,GAAG,yBAAyB,EAAE,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnE,GAAG,yBAAyB,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC/D,GAAG,wBAAwB,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC7D,GAAG,uBAAuB,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE;AAChE,GAAG,yBAAyB,EAAE;AAC9B,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC3C,IAAI,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE;AAC1C,IAAI;AACJ,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,kBAAkB,EAAE,EAAE,GAAGA,YAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACpE,GAAG,sBAAsB,EAAE;AAC3B,IAAI,EAAE,GAAG,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE;AACjD,IAAI,EAAE,GAAG,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClD,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,GAAG,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE;AAC1F,GAAG,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE;AAC7E,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,WAAW,CAAC;AACb,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,EAAE;AACd,EAAE,QAAQ,EAAE;AACZ,GAAG,eAAe,EAAE,EAAE,QAAQ,EAAE,2BAA2B,EAAE;AAC7D,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AAChD,GAAG,SAAS,EAAE,EAAE,QAAQ,EAAE,0BAA0B,EAAE;AACtD,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,0BAA0B,EAAE;AACnD,GAAG,UAAU,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,GAAG,OAAO,EAAE,KAAK;AACjB,GAAG,UAAU,EAAE,CAAC,MAAM,CAAC;AACvB,GAAG;AACH,EAAE,CAAC;AACH,CAACI,uBAAe;AAChB,CAAC,4BAA4B;AAC7B,CAAC,aAAa;AACd,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC;AACnB,EAAE,cAAc,EAAE,kBAAkB;AACpC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA,EAAE,EAAE,sBAAsB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD,EAAE,EAAE,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;AAChD,EAAE,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;AAC9C,EAAE,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC;AACH;AACA;AACA;AACA;AACA,EAAE,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;AACxC,iBAAEd,eAAa;AACf,EAAE,mBAAmB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC;AAC5D,EAAE,CAAC;AACH,CAAC;;ACvMD,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AACzC,MAAMF,MAAI,GAAG,aAAa,CAAC,UAAU,CAAC;AACtC;AACO,MAAM,QAAQ,GAAG;AACxB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,oBAAoB;AAC5D,CAAC,CAACA,MAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe;AAClD,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC,CAACA,MAAI,CAAC,wBAAwB,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ;AACpE,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,SAAS;AAC5C,CAAC,CAACA,MAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,gBAAgB;AACtD,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE;AACxD;AACA,CAAC,SAAS,EAAE;AACZ,EAAE,CAACA,MAAI,CAAC,yBAAyB,GAAG,SAAS;AAC7C,EAAE;AACF;AACA,CAAC,CAACA,MAAI,CAAC,OAAO,CAAC,SAAS,GAAG,OAAO;AAClC,CAAC,CAACA,MAAI,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ;AAChC;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;AClCD,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAC;AACzC;AACO,MAAME,eAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACvD;AACA,MAAM,SAAS,GAAG,eAAe,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,aAAa,EAAE,EAAC;AACjF,MAAM,QAAQ,SAAS,SAAS,CAAC;AACjC,CAAC,WAAW,kBAAkB,GAAG;AACjC,EAAE,OAAO,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;AACvE,EAAE;AACF;AACA,CAAC,WAAW,GAAG;AACf,EAAE,KAAK,EAAE,CAAC;AACV;AACA,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,CAAC;AACH,EAAE;AACF;AACA,CAAC,iBAAiB,GAAG;AACrB,EAAE,KAAK,CAAC,iBAAiB,IAAI,CAAC;AAC9B;AACA,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAE,EAAC;AAC5E,EAAE;AACF,CAAC;AACD;AACY,MAAC,UAAU,GAAG,OAAO;AACjC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AACtC,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AACrC,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAAC,CAAC,QAAQ;;AChDV,MAAMF,MAAI,GAAG,UAAU,CAAC,WAAU;AAClC;AACA,MAAM,KAAK,GAAG,EAAE;;;;;;;;ACJhB,mBAAe;AACf,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,qBAAqB;AAC7B,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,iCAAiC;AACzC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,wBAAwB;AAChC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gCAAgC;AACxC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,mBAAmB;AAC3B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gBAAgB;AACxB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,0BAA0B;AAClC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kBAAkB;AAC1B,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,yBAAyB;AACjC,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,6CAA6C;AACrD,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gBAAgB;AACxB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,oBAAoB;AAC5B,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,mBAAmB;AAC3B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,6BAA6B;AACrC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kBAAkB;AAC1B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,+BAA+B;AACvC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,wCAAwC;AAChD,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,8CAA8C;AACtD,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gCAAgC;AACxC,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,wBAAwB;AAChC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kBAAkB;AAC1B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,4CAA4C;AACpD,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,sBAAsB;AAC9B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gBAAgB;AACxB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,0BAA0B;AAClC,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,iCAAiC;AACzC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kBAAkB;AAC1B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kBAAkB;AAC1B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,8CAA8C;AACtD,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,uBAAuB;AAC/B,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,2BAA2B;AACnC,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,kCAAkC;AAC1C,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,uBAAuB;AAC/B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,iBAAiB;AACzB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,8CAA8C;AACtD,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,wBAAwB;AAChC,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,sBAAsB;AAC9B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,uCAAuC;AAC/C,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,qBAAqB;AAC7B,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,cAAc;AACtB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,0BAA0B;AAClC,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,sBAAsB;AAC9B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,gBAAgB;AACxB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,eAAe;AACvB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,YAAY;AACpB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,6CAA6C;AACrD,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,SAAS;AACjB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,yBAAyB;AACjC,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,sBAAsB;AAC9B,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,mBAAmB;AAC3B,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,QAAQ;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC;AACD,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE;AACF,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;;ACtrCrC,MAAME,eAAa,GAAG,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;AAiBtE;AACuB,oBAAoB,CAAC,iBAAEA,eAAa,EAAE,YAAY,EAAE,KAAK,EAAE;;ACTlF,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC;AAC3C,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC;AAC3C;AACO,MAAMA,eAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAC7D;AACA,MAAMa,aAAW,GAAG,CAAC,UAAU;AAC/B,CAAC,MAAM,oBAAoB,SAAS,UAAU,CAAC;AAC/C,EAAE,WAAW,YAAY,GAAG;AAC5B,GAAG,OAAO,YAAY,CAAC;AACvB,GAAG;AACH;AACA,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC;AACX,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB;AACA,GAAG,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACvD;AACA,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC;AACzB,KAAK,EAAEK,eAA4B,CAAC;AACpC;AACA;AACA,OAAO,EAAEA,eAA4B,CAAC;AACtC,QAAQ,CAAC,CAAC;AACV;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAClE;AACA,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAACA,eAA4B,CAAC,CAAC;AACnF;AACA,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE;AACzD,IAAI,YAAY,EAAE;AAClB,KAAK,MAAM;AACX,KAAK,UAAU;AACf,KAAK,SAAS;AACd,KAAK,WAAW;AAChB,KAAK,WAAW;AAChB,KAAK,cAAc;AACnB,KAAK,2BAA2B;AAChC,KAAK,yBAAyB;AAC9B,KAAK;AACL,IAAI,CAAC,CAAC;AACN,GAAG;AACH,EAAE,CAAC;AACH;AACA,MAAM;AACN,OAACjB,MAAI;AACL,QAACC,OAAK;AACN,CAAC,iBAAiB;AAClB,CAAC,UAAU;AACX,CAAC,gBAAgB;AACjB,CAAC,UAAU;AACX,CAAC,SAAS;AACV,eAACU,cAAY;AACb,aAACD,YAAU;AACX,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,6CAA6C,EAAE;AAC/E,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,oBAAoB,EAAE;AACrD,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,MAAM,mBAAmB,EAAE;AAC1D,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,yCAAyC,EAAE;AACnE,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,CAAC,CAAC;AACF;AACY,MAAC,eAAe,GAAG,OAAO;AACtC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,QAAQ,EAAE;AACb,IAAIV,MAAI;AACR,IAAI,UAAU;AACd,IAAI;AACJ,KAAK,QAAQ,EAAE,cAAc,CAAC,aAAa;AAC3C,KAAK,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,QAAQ;AACjD,KAAK;AACL,IAAI;AACJ,KAAK,QAAQ,EAAE,aAAa,CAAC,aAAa;AAC1C,KAAK,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,QAAQ;AAChD,KAAK;AACL,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAIC,OAAK;AACT,IAAIU,cAAY;AAChB,IAAID,YAAU;AACd,IAAI;AACJ,KAAK,GAAG,gBAAgB;AACxB,KAAK,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU;AAC1D,KAAK;AACL,IAAI;AACJ,GAAG,SAAS,EAAE;AACd,IAAI,EAAE,GAAGV,MAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAClC,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxC,IAAI,EAAE,GAAG,gBAAgB,EAAE,QAAQ,EAAE,kCAAkC,EAAE;AACzE,IAAI;AACJ;AACA,GAAG,gBAAgB,EAAE;AACrB,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC/C,IAAI,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AACnD,IAAI;AACJ,GAAG,gBAAgB,EAAE;AACrB,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC/C,IAAI,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AACnD,IAAI;AACJ,GAAG,gBAAgB,EAAE;AACrB,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;AAC/C,IAAI,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,mBAAmB,EAAE;AACnD,IAAI;AACJ,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE;AACA,GAAG,qBAAqB,EAAE,EAAE,GAAG,gBAAgB,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE;AAChF,GAAG,wBAAwB,EAAE;AAC7B,IAAI,GAAG,gBAAgB;AACvB,IAAI,QAAQ,EAAE,kCAAkC;AAChD,IAAI;AACJ,GAAG,eAAe,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;AACxD;AACA,GAAG,cAAc,EAAE;AACnB,IAAI,EAAE,GAAGC,OAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnC,IAAI,EAAE,GAAG,iBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC/C,IAAI;AACJ,GAAG,sBAAsB,EAAE,EAAE,GAAG,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACxE;AACA,GAAG,mBAAmB,EAAE;AACxB,IAAI,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,EAAE;AAC7D,IAAI,EAAE,GAAG,gBAAgB,EAAE,QAAQ,EAAE,SAAS,CAAC,mBAAmB,EAAE;AACpE,IAAI;AACJ;AACA,GAAG,yBAAyB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,EAAE;AACzF;AACA,GAAG,0BAA0B,EAAE;AAC/B,IAAI,QAAQ,EAAE,mBAAmB;AACjC,IAAI,QAAQ,EAAE,SAAS,CAAC,0BAA0B;AAClD,IAAI;AACJ;AACA,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,iBAAiB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE;AAClE,GAAG,kBAAkB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE;AACpE,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACY,uBAAe;AAChB,CAACD,aAAW;AACZ,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE,sBAAsB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACxD,GAAG,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;AAC3C,GAAG,EAAE,qCAAqC,CAAC,mBAAmB,CAAC,CAAC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,EAAE,SAAS,CAAC,iBAAiB,CAAC;AAClC,IAAI,EAAE,SAAS,CAAC,kBAAkB,CAAC;AACnC,IAAI,EAAE,SAAS,CAAC,gBAAgB,CAAC;AACjC,IAAI,EAAE,SAAS,CAAC,iBAAiB,CAAC;AAClC;AACA;AACA;AACA,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC;AACjC,IAAI,EAAE,SAAS,CAAC,kBAAkB,CAAC;AACnC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,CAAC;AAChC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,iBAAEb,eAAa;AACf,EAAE,CAAC;AACH;;ACzOA,MAAMF,MAAI,GAAG,eAAe,CAAC,UAAU,CAAC;AACxC;AACA,MAAM,UAAU,GAAG;AACnB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAC3C,CAAC,CAACA,MAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB;AACtD,CAAC,CAACA,MAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc;AAChD,CAAC,CAACA,MAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,oBAAoB;AAC5D,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW;AAC1C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY;AAC5C,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa;AAC9C,CAAC,CAACA,MAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACrC,CAAC,CAACA,MAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ;AACtC,CAAC,CAACA,MAAI,CAAC,qBAAqB,GAAG,KAAK;AACpC,CAAC,CAACA,MAAI,CAAC,wBAAwB,GAAG,MAAM;AACxC;AACA;AACA;AACA;AACA,CAAC;;;;;;;;AC3BM,MAAME,eAAa,GAAG,gBAAgB,CAAC,uBAAuB,CAAC;;ACU/D,MAAM,aAAa,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;AAC9D;AACA,MAAM,WAAW,GAAG,CAAC,UAAU;AAC/B,CAAC,MAAM,qBAAqB,SAAS,UAAU,CAAC;AAChD,EAAE,WAAW,GAAG;AAChB,GAAG,KAAK,EAAE,CAAC;AACX,GAAG;AACH;AACA,EAAE,IAAI,GAAG;AACT,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC;AAClB;AACA,GAAG,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACvD;AACA,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC;AACzB,IAAI,EAAEkB,eAA4B,CAAC;AACnC;AACA;AACA;AACA,MAAM,EAAEA,eAA4B,CAAC;AACrC,GAAG,CAAC,CAAC;AACL;AACA,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAClE;AACA,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAACA,eAA4B,CAAC,CAAC;AACnF;AACA,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE;AACzC,IAAI,YAAY,EAAE;AAClB,KAAK,gBAAgB;AACrB,KAAK,sBAAsB;AAC3B,KAAK,eAAe;AACpB,KAAK,qBAAqB;AAC1B,KAAK,YAAY;AACjB,KAAK,MAAM;AACX,KAAK,UAAU;AACf,KAAK,OAAO;AACZ,KAAK,aAAa;AAClB,KAAK,SAAS;AACd,KAAK,UAAU;AACf,KAAK,WAAW;AAChB,KAAK;AACL,IAAI,CAAC,CAAC;AACN,GAAG;AACH,EAAE,CAAC;AACH;AACA,MAAM;AACN,CAAC,IAAI;AACL,CAAC,KAAK;AACN,CAAC,qBAAqB;AACtB,CAAC,YAAY;AACb,CAAC,UAAU;AACX,CAAC,GAAG;AACJ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,EAAE;AAClC,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;AACrC,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,wCAAwC,EAAE;AAC9E,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE;AAChD,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,uBAAuB,EAAE;AACpD,EAAC;AACD;AACY,MAAC,gBAAgB,GAAG,OAAO;AACvC,CAAC,gBAAgB,CAAC;AAClB,EAAE,QAAQ,EAAE;AACZ,GAAG,QAAQ,EAAE;AACb,IAAI,IAAI;AACR,IAAI,EAAE;AACN,IAAI;AACJ,KAAK,QAAQ,EAAE,aAAa,CAAC,aAAa;AAC1C,KAAK,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,QAAQ;AAChD,KAAK;AACL,IAAI;AACJ,GAAG,UAAU,EAAE;AACf,IAAI,KAAK;AACT,IAAI,YAAY;AAChB,IAAI,UAAU;AACd,IAAI;AACJ,GAAG,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;AAC5C,GAAG,YAAY,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE;AACnD,GAAG,uBAAuB,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC5D,GAAG,kBAAkB,EAAE,EAAE,GAAG,qBAAqB,EAAE,QAAQ,EAAE,KAAK,EAAE;AACpE,GAAG;AACH,EAAE,CAAC;AACH,CAAC,cAAc;AACf,CAACJ,uBAAe;AAChB,CAAC,WAAW;AACZ,CAAC;AACD,CAAC,WAAW,CAAC;AACb,EAAE,KAAK,EAAE,EAAE;AACX,EAAE,cAAc,EAAE,mBAAmB;AACrC,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA,EAAE,EAAE,sBAAsB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,CAAC;AACH,EAAE,gBAAgB,EAAE,CAAC,UAAU,CAAC;AAChC,EAAE,aAAa;AACf,EAAE,CAAC;AACH;;AC9IA,MAAMhB,MAAI,GAAG,gBAAgB,CAAC,UAAU,CAAC;AACzC;AACA,MAAM,WAAW,GAAG;AACpB,CAAC,CAACA,MAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AAC7B,CAAC,CAACA,MAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACnC,CAAC,CAACA,MAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC/B,CAAC,CAACA,MAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACnC,CAAC,CAACA,MAAI,CAAC,kBAAkB,GAAG,KAAK;AACjC;AACA,CAAC,SAAS,EAAE;AACZ;AACA;AACA;AACA,EAAE,CAACA,MAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB;AACxD,EAAE;AACF,CAAC;;;;;;;;ACGD,MAAM,UAAU,GAAG;AACnB,SAAC2B,QAAM;AACP,YAACC,WAAS;AACV,WAACC,UAAQ;AACT,cAACC,aAAW;AACZ,aAACC,YAAU;AACX,WAACZ,UAAQ;AACT,WAACa,UAAQ;AACT,eAACC,cAAY;AACb,YAACC,WAAS;AACV,OAACC,MAAI;AACL,OAACZ,MAAI;AACL,OAACa,MAAI;AACL,UAACC,SAAO;AACR,WAACC,UAAQ;AACT,eAACC,cAAY;AACb,eAACC,cAAY;AACb,WAACC,UAAQ;AACT,QAACC,OAAK;AACN,aAACC,YAAU;AACX,cAACC,aAAW;AACZ,CAAC,YAAY;AACb,CAAC,CAAC;AACF;AACA,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAChH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;;AC3C/F,MAAC,YAAY,GAAG,EAAE,OAAO,cAAEC,KAAU,GAAG;AACxC,MAAC,SAAS,GAAG,EAAE,OAAO,EAAEC,MAAW,EAAE,UAAU,EAAEC,IAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/constants.js","../../src/helpers/index.js","../../src/helpers/componentHelpers.js","../../src/helpers/themeHelpers/componentsThemeManager.js","../../src/helpers/themeHelpers/index.js","../../src/helpers/themeHelpers/colorsHelpers.js","../../src/theme/globals.js","../../src/helpers/themeHelpers/resetHelpers.js","../../src/mixins/createStyleMixin/helpers.js","../../src/mixins/createStyleMixin/index.js","../../src/mixins/draggableMixin.js","../../src/mixins/componentNameValidationMixin.js","../../src/mixins/hoverableMixin.js","../../src/mixins/normalizeBooleanAttributesMixin.js","../../src/baseClasses/createBaseClass.js","../../src/helpers/mixinsHelpers.js","../../src/mixins/createProxy.js","../../src/mixins/inputValidationMixin.js","../../src/mixins/proxyInputMixin.js","../../src/mixins/portalMixin.js","../../src/mixins/changeMixin.js","../../src/mixins/inputEventsDispatchingMixin.js","../../src/components/descope-button/ButtonClass.js","../../src/theme/components/button.js","../../src/components/descope-text-field/textFieldMappings.js","../../src/components/descope-text-field/TextFieldClass.js","../../src/theme/components/inputWrapper.js","../../src/theme/components/textField.js","../../src/components/descope-password/passwordDraggableMixin.js","../../src/components/descope-password/PasswordClass.js","../../src/theme/components/password.js","../../src/components/descope-number-field/NumberFieldClass.js","../../src/theme/components/numberField.js","../../src/components/descope-email-field/EmailFieldClass.js","../../src/theme/components/emailField.js","../../src/components/descope-text-area/TextAreaClass.js","../../src/theme/components/textArea.js","../../src/baseClasses/createBaseInputClass.js","../../src/components/boolean-fields/descope-boolean-field-internal/BooleanFieldInternal.js","../../src/components/boolean-fields/booleanFieldMixin.js","../../src/components/boolean-fields/commonStyles.js","../../src/components/boolean-fields/descope-checkbox/CheckboxClass.js","../../src/theme/components/checkbox.js","../../src/components/boolean-fields/descope-switch-toggle/SwitchToggleClass.js","../../src/theme/components/switchToggle.js","../../src/components/descope-container/ContainerClass.js","../../src/theme/components/container.js","../../src/baseClasses/createCssVarImageClass.js","../../src/components/descope-logo/LogoClass.js","../../src/theme/components/logo.js","../../src/components/descope-totp-image/TotpImageClass.js","../../src/theme/components/totpImage.js","../../src/components/descope-text/TextClass.js","../../src/theme/components/text.js","../../src/components/descope-link/LinkClass.js","../../src/theme/components/link.js","../../src/components/descope-divider/DividerClass.js","../../src/theme/components/divider.js","../../src/components/descope-passcode/descope-passcode-internal/PasscodeInternal.js","../../src/components/descope-passcode/PasscodeClass.js","../../src/theme/components/passcode.js","../../src/components/descope-loader-linear/LoaderLinearClass.js","../../src/theme/components/loader/loaderLinear.js","../../src/components/descope-loader-radial/LoaderRadialClass.js","../../src/theme/components/loader/loaderRadial.js","../../src/components/descope-combo-box/ComboBoxClass.js","../../src/theme/components/comboBox.js","../../src/components/descope-image/ImageClass.js","../../src/theme/components/image.js","../../src/components/descope-phone-field/CountryCodes.js","../../src/components/descope-phone-field/descope-phone-field-internal/PhoneFieldInternal.js","../../src/components/descope-phone-field/PhoneFieldClass.js","../../src/theme/components/phoneField.js","../../src/components/descope-new-password/descope-new-password-internal/componentName.js","../../src/components/descope-new-password/NewPasswordClass.js","../../src/theme/components/newPassword.js","../../src/theme/components/index.js","../../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope';\nexport const CSS_SELECTOR_SPECIFIER_MULTIPLY = 3\nexport const BASE_THEME_SECTION = 'host'\nexport const PORTAL_THEME_PREFIX = '@'","\nexport const kebabCase = (str) =>\n\tstr\n\t\t.replace(/([a-z])([A-Z])/g, '$1-$2')\n\t\t.replace(/[\\s_.]+/g, '-')\n\t\t.toLowerCase();\n\nexport const kebabCaseJoin = (...args) => kebabCase(args.filter((arg) => !!arg).join('-'));\n\nexport const compose = (...fns) =>\n\t(val) =>\n\t\tfns.reduceRight((res, fn) => fn(res), val);\n\nexport const upperFirst = (str) => str.charAt(0).toUpperCase() + str.slice(1)\n\nexport const isFunction = (maybeFunc) => typeof maybeFunc === 'function';\n\nexport const isUrl = (maybeUrl) => {\n\ttry {\n\t\tnew URL(maybeUrl)\n\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n}","import { kebabCaseJoin } from '.';\nimport { DESCOPE_PREFIX } from '../constants';\n\nexport const observeAttributes = (\n\tele,\n\tcallback,\n\t{ excludeAttrs = [], includeAttrs = [] }\n) => {\n\t// sync all attrs on init\n\tconst filteredAttrs = Array.from(ele.attributes)\n\t\t.filter((attr) =>\n\t\t\t!excludeAttrs.includes(attr.name) &&\n\t\t\t(!includeAttrs.length || includeAttrs.includes(attr.name))\n\t\t)\n\t\t.map((attr) => attr.name)\n\n\tcallback(filteredAttrs);\n\n\tconst observer = new MutationObserver((mutationsList) => {\n\t\tfor (const mutation of mutationsList) {\n\t\t\tif (\n\t\t\t\tmutation.type === 'attributes' &&\n\t\t\t\t!excludeAttrs.includes(mutation.attributeName) &&\n\t\t\t\t(!includeAttrs.length || includeAttrs.includes(mutation.attributeName))\n\t\t\t) {\n\t\t\t\tcallback([mutation.attributeName]);\n\t\t\t}\n\t\t}\n\t});\n\n\tobserver.observe(ele, { attributes: true });\n};\n\n// calling the callback with this object: { addedNodes, removedNodes }\nexport const observeChildren = (\n\tele,\n\tcallback,\n) => {\n\tcallback({ addedNodes: Array.from(ele.children), removedNodes: [] });\n\n\tconst observer = new MutationObserver((mutationsList) => {\n\t\tfor (const mutation of mutationsList) {\n\t\t\tif (mutation.type === 'childList') {\n\t\t\t\tcallback(mutation);\n\t\t\t}\n\t\t}\n\t});\n\n\tobserver.observe(ele, { childList: true });\n};\n\nconst createSyncAttrsCb =\n\t(srcEle, targetEle, mapAttrs = {}) =>\n\t\t(attrNames) => {\n\t\t\tattrNames.forEach((attrName) => {\n\t\t\t\tconst targetAttrName = mapAttrs[attrName] || attrName;\n\t\t\t\tconst srcAttrVal = srcEle.getAttribute(attrName);\n\t\t\t\tif (srcAttrVal !== null) {\n\t\t\t\t\tif (targetEle.getAttribute(targetAttrName) !== srcAttrVal) {\n\t\t\t\t\t\ttargetEle.setAttribute(targetAttrName, srcAttrVal);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\ttargetEle.removeAttribute(targetAttrName);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\nexport const syncAttrs = (ele1, ele2, options) => {\n\tobserveAttributes(ele1, createSyncAttrsCb(ele1, ele2), options);\n\tobserveAttributes(ele2, createSyncAttrsCb(ele2, ele1), options);\n};\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name);\n\nexport const getCssVarName = (...args) =>\n\t`--${kebabCaseJoin(...args)}`;\n\nexport const forwardAttrs = (source, dest, options = {}) => {\n\tobserveAttributes(\n\t\tsource,\n\t\tcreateSyncAttrsCb(source, dest, options.mapAttrs),\n\t\toptions\n\t);\n};\n\nexport const forwardProps = (src, target, props = []) => {\n\tif (!props.length) return;\n\n\tconst config = props.reduce((acc, prop) => Object.assign(acc, {\n\t\t[prop]: {\n\t\t\tget() {\n\t\t\t\treturn src[prop]\n\t\t\t},\n\t\t\tset(v) {\n\t\t\t\tsrc[prop] = v\n\t\t\t}\n\t\t}\n\t}), {})\n\n\tObject.defineProperties(target, config)\n}\n","\nclass ComponentsThemeManager {\n static mountOnPropName = 'DescopeThemeManager';\n\n #themes = {};\n\n #currentThemeName = 'light';\n\n #callbacks = new Set();\n\n #notify() {\n this.#callbacks.forEach(cb => cb?.());\n };\n\n get currentThemeName() {\n return this.#currentThemeName;\n }\n\n set currentThemeName(themeName) {\n this.#currentThemeName = themeName;\n this.#notify();\n }\n\n get currentTheme() {\n return this.#themes[this.currentThemeName];\n }\n\n onCurrentThemeChange(cb) {\n this.#callbacks.add(cb);\n\n return () => { this.#callbacks.delete(cb); };\n };\n\n set themes(themes) {\n this.#themes = themes;\n this.#notify();\n }\n}\n\nexport const componentsThemeManager = new ComponentsThemeManager()\n","import merge from 'lodash.merge';\nimport set from 'lodash.set';\nimport { BASE_THEME_SECTION, DESCOPE_PREFIX, PORTAL_THEME_PREFIX } from '../../constants';\nimport { isUrl, kebabCase } from '..';\nimport { getComponentName, getCssVarName } from '../componentHelpers';\n\nconst getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path);\n\nconst transformTheme = (theme, path, getTransformation) => {\n\treturn Object.entries(theme).reduce((acc, [key, val]) => {\n\t\tif (val?.constructor !== Object) {\n\t\t\treturn merge(acc, getTransformation(path.concat(key), val));\n\t\t} else {\n\t\t\treturn merge(acc, transformTheme(val, [...path, key], getTransformation));\n\t\t}\n\t}, {});\n};\n\nconst stringifyArray = (strArr) =>\n\tstrArr.map((str) => (str.includes(' ') ? `\"${str}\"` : str)).join(', ');\n\nconst getCssVarValue = (val) => {\n\tswitch (true) {\n\t\tcase Array.isArray(val):\n\t\t\treturn stringifyArray(val)\n\t\tcase isUrl(val):\n\t\t\treturn `url(${val})`\n\t\tdefault:\n\t\t\treturn val\n\t}\n}\n\nexport const themeToCSSVarsObj = (theme) =>\n\ttransformTheme(theme, [], (path, val) => ({\n\t\t[getVarName(path)]: getCssVarValue(val)\n\t}));\n\nexport const getThemeRefs = (theme, prefix) =>\n\ttransformTheme(theme, [], (path) =>\n\t\tset({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`)\n\t);\n\nexport const getThemeVars = (theme, prefix) =>\n\ttransformTheme(theme, [], (path) =>\n\t\tset({}, path, getVarName(prefix ? [prefix, ...path] : path))\n\t);\n\nexport const globalsThemeToStyle = (theme, themeName = '') => {\n\tconst style = Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t\t(acc, entry) => (acc += `${entry.join(':')};\\n`),\n\t\t''\n\t);\n\n\tif (!themeName) return style\n\n\treturn `*[data-theme=\"${themeName}\"] {${style}}`\n};\n\nconst componentsThemeToStyleObj = (componentsTheme) =>\n\ttransformTheme(componentsTheme, [], (path, val) => {\n\t\tconst [component, ...restPath] = path;\n\t\tconst property = restPath.pop();\n\t\tconst componentName = getComponentName(component);\n\n\t\tif (property === 'undefined') {\n\t\t\tconsole.warn(componentName, `theme value: \"${val}\" is mapped to an invalid property`)\n\t\t}\n\n\t\t// we need a support for portal components theme (e.g. overlay)\n\t\t// this allows us to generate those themes under different sections\n\t\t// if the theme has root level attribute that starts with #\n\t\t// we are generating a new theme\n\t\tlet themeName = BASE_THEME_SECTION\n\n\t\tif (restPath[0] && restPath[0].startsWith(PORTAL_THEME_PREFIX)) {\n\t\t\tthemeName = restPath.shift();\n\t\t}\n\n\t\t// do not start with underscore -> key:value, must have 2 no underscore attrs in a row\n\t\t// starts with underscore -> attribute selector\n\t\tconst attrsSelector = restPath.reduce((acc, section, idx) => {\n\t\t\tif (section.startsWith('_'))\n\t\t\t\treturn (acc += `[${kebabCase(section.replace(/^_/, ''))}=\"true\"]`);\n\n\t\t\tconst nextSection = restPath[idx + 1];\n\n\t\t\tif (typeof nextSection !== 'string' || nextSection.startsWith('_')) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t'theme generator',\n\t\t\t\t\t`your theme structure is invalid, attribute \"${section}\" is followed by \"${nextSection}\" which is not allowed`\n\t\t\t\t);\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\treturn (acc += `[${kebabCase(section)}=\"${restPath\n\t\t\t\t.splice(idx + 1, 1)\n\t\t\t\t.join('')}\"]`);\n\t\t}, '');\n\n\t\tlet selector = `:host${attrsSelector ? `(${attrsSelector})` : ''}`;\n\n\t\treturn {\n\t\t\t[componentName]: {\n\t\t\t\t[themeName]: {\n\t\t\t\t\t[selector]: {\n\t\t\t\t\t\t[property]: getCssVarValue(val)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t});\n\n\nexport const createComponentsTheme = (componentsTheme) => {\n\tconst styleObj = componentsThemeToStyleObj(componentsTheme);\n\n\treturn Object.keys(styleObj).reduce(\n\t\t(acc, componentName) => {\n\t\t\tconst componentThemes = styleObj[componentName];\n\n\t\t\treturn Object.assign(acc, {\n\t\t\t\t[componentName]: Object.keys(componentThemes)\n\t\t\t\t\t.reduce((acc, theme) =>\n\t\t\t\t\t\tObject.assign(acc, { [theme]: componentsThemeToStyle(componentThemes[theme]) }),\n\t\t\t\t\t\t{})\n\t\t\t})\n\t\t},\n\t\t{}\n\t);\n}\n\nconst componentsThemeToStyle = (componentsTheme) =>\n\tObject.entries(componentsTheme).reduce(\n\t\t(acc, [selector, vars]) =>\n\t\t(acc += `${selector} { \\n${Object.entries(\n\t\t\tvars\n\t\t)\n\t\t\t.map(([key, val]) => `${key}: ${val}`)\n\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t''\n\t);\n\nexport const themeToStyle = ({ globals, components }, themeName) => ({\n\tglobals: globalsThemeToStyle(globals, themeName),\n\tcomponents: createComponentsTheme(components)\n});\n\nconst useVar = (varName) => `var(${varName})`;\n\nexport const createHelperVars = (theme, prefix) => {\n\tconst res = transformTheme(theme, [], (path, value) => {\n\t\tconst modifiedPath = [...path];\n\t\tconst property = modifiedPath.splice(-1);\n\t\tconst varName = getCssVarName(prefix, property);\n\n\t\tconst vars = { [property]: varName };\n\t\tconst theme = set({}, [...modifiedPath, varName], value);\n\t\tconst useVars = { [property]: useVar(varName) };\n\n\t\treturn { theme, useVars, vars };\n\t});\n\n\treturn [res.theme, res.useVars, res.vars];\n};\n\nexport { componentsThemeManager } from './componentsThemeManager'\n","import Color from 'color';\n\nconst genDark = (c, percentage = 0.5) => c.darken(percentage).hex();\nconst genLight = (c, percentage = 0.5) => c.lighten(percentage).hex();\nconst genContrast = (c, percentage = 0.9) => {\n\tconst isDark = c.isDark();\n\treturn c\n\t\t.mix(Color(isDark ? 'white' : 'black'), percentage)\n\t\t.saturate(1)\n\t\t.hex();\n};\n\nexport const genColor = (color) => {\n\tconst mainColor = new Color(color.main || color);\n\n\treturn {\n\t\tmain: mainColor.hex(),\n\t\tdark: color.dark || genDark(mainColor),\n\t\tlight: color.light || genLight(mainColor),\n\t\tcontrast: color.contrast || genContrast(mainColor)\n\t};\n};\n\nexport const genColors = (colors) => {\n\treturn Object.keys(colors).reduce((acc, colorName) => {\n\t\tconst currentColor = colors[colorName];\n\n\t\treturn Object.assign(acc, {\n\t\t\t[colorName]: genColor(currentColor)\n\t\t});\n\t}, {});\n};\n","import { getThemeRefs, getThemeVars } from '../helpers/themeHelpers';\nimport { genColors } from '../helpers/themeHelpers/colorsHelpers';\n\n\nexport const colors = genColors({\n\tsurface: {\n\t\tmain: 'lightgray',\n\t\tlight: '#fff',\n\t\tdark: '#000',\n\t},\n\tprimary: '#0082B5',\n\tsecondary: '#7D14EB',\n\tsuccess: 'green',\n\terror: 'red'\n});\n\nconst fonts = {\n\tfont1: {\n\t\tfamily: [\n\t\t\t\"Roboto\",\n\t\t\t\"ui-sans-serif\",\n\t\t\t\"system-ui\",\n\t\t\t\"-apple-system\",\n\t\t\t\"BlinkMacSystemFont\",\n\t\t\t\"Segoe UI\",\n\t\t\t\"Helvetica Neue\",\n\t\t\t\"Arial\",\n\t\t\t\"Noto Sans\",\n\t\t\t\"sans-serif\",\n\t\t\t\"Apple Color Emoji\",\n\t\t\t\"Segoe UI Emoji\",\n\t\t\t\"Segoe UI Symbol\",\n\t\t\t\"Noto Color Emoji\"\n\t\t],\n\t\tlabel: \"Roboto\",\n\t\turl: \"https://fonts.googleapis.com/css?family=Roboto:100,200,300,400,500,600,700,800,900\"\n\t},\n\tfont2: {\n\t\tfamily: [\n\t\t\t\"ui-sans-serif\",\n\t\t\t\"system-ui\",\n\t\t\t\"-apple-system\",\n\t\t\t\"BlinkMacSystemFont\",\n\t\t\t\"Segoe UI\",\n\t\t\t\"Roboto\",\n\t\t\t\"Helvetica Neue\",\n\t\t\t\"Arial\",\n\t\t\t\"Noto Sans\",\n\t\t\t\"sans-serif\",\n\t\t\t\"Apple Color Emoji\",\n\t\t\t\"Segoe UI Emoji\",\n\t\t\t\"Segoe UI Symbol\",\n\t\t\t\"Noto Color Emoji\"\n\t\t],\n\t\tlabel: \"Sans Serif\"\n\t}\n};\n\nconst fontsRef = getThemeRefs({ fonts }).fonts;\n\nconst typography = {\n\th1: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '900',\n\t\tsize: '48px'\n\t},\n\th2: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '800',\n\t\tsize: '38px'\n\t},\n\th3: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '600',\n\t\tsize: '28px'\n\t},\n\tsubtitle1: {\n\t\tfont: fontsRef.font2.family,\n\t\tweight: '500',\n\t\tsize: '22px'\n\t},\n\tsubtitle2: {\n\t\tfont: fontsRef.font2.family,\n\t\tweight: '400',\n\t\tsize: '20px'\n\t},\n\tbody1: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '400',\n\t\tsize: '16px'\n\t},\n\tbody2: {\n\t\tfont: fontsRef.font1.family,\n\t\tweight: '400',\n\t\tsize: '14px'\n\t}\n};\n\nconst spacing = {\n\txs: '2px',\n\tsm: '4px',\n\tmd: '8px',\n\tlg: '16px',\n\txl: '32px'\n};\n\nconst border = {\n\txs: '1px',\n\tsm: '2px',\n\tmd: '3px',\n\tlg: '4px',\n\txl: '5px'\n};\n\nconst radius = {\n\txs: '5px',\n\tsm: '10px',\n\tmd: '15px',\n\tlg: '20px',\n\txl: '25px',\n\t'2xl': '30px',\n\t'3xl': '35px'\n};\n\nconst shadow = {\n\twide: {\n\t\tsm: '0 2px 3px -0.5px',\n\t\tmd: '0 4px 6px -1px',\n\t\tlg: '0 10px 15px -3px',\n\t\txl: '0 20px 25px -5px',\n\t\t'2xl': '0 25px 50px -12px'\n\t},\n\tnarrow: {\n\t\tsm: '0 1px 2px -1px',\n\t\tmd: '0 2px 4px -2px',\n\t\tlg: '0 4px 6px -4px',\n\t\txl: '0 8px 10px -6px',\n\t\t'2xl': '0 16px 16px -8px'\n\t}\n};\n\nconst globals = {\n\tcolors,\n\ttypography,\n\tspacing,\n\tborder,\n\tradius,\n\tshadow,\n\tfonts\n};\n\nexport default globals\nexport const vars = getThemeVars(globals)\n","export const resetInputOverrides = (name, cssVarList) => `\n ${resetInputContainer(name)}\n ${resetInputCursor(name)}\n ${resetInputPlaceholder(name)}\n ${resetInputField(name)}\n ${resetInputAutoFill(name, cssVarList)}\n ${resetInputFieldInvalidBackgroundColor(name)}\n ${resetInitialHeight(name)}\n ${resetInputElement(name)}\n ${resetInputFieldunderlayingBorder(name)}\n`;\n\nexport const useHostExternalPadding = (cssVarList) => `\n :host {\n padding: calc(var(${cssVarList.inputOutlineWidth}) + var(${cssVarList.inputOutlineOffset})) \n }\n`;\n\nexport const resetInputFieldunderlayingBorder = (name) => `\n ${name}::part(input-field)::after {\n border: none;\n }\n`;\n\nexport const resetInitialHeight = (name) => `\n ${name}::before {\n\t\theight: unset;\n\t}\n`;\n\nexport const resetInputElement = (name) => `\n ${name} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputContainer = (name) => `\n ${name} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputField = (name) => `\n ${name}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`;\n\nexport const resetInputCursor = (name) => `\n ${name} > label,\n ${name}::part(label),\n ${name}::part(required-indicator) {\n cursor: pointer;\n }\n`;\n\nexport const resetInputPlaceholder = (name, ele = 'input') => `\n ${name}[disabled] > ${ele}:placeholder-shown,\n\t${name}[readonly] > ${ele}:placeholder-shown {\n\t\topacity: 1;\n\t} \n`;\n\nexport const resetInputAutoFill = (name, cssVarList) => `\n ${name} input:-webkit-autofill,\n ${name} input:-webkit-autofill::first-line,\n ${name} input:-webkit-autofill:hover,\n ${name} input:-webkit-autofill:active,\n ${name} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${cssVarList.inputValueTextColor});\n box-shadow: 0 0 0 var(${cssVarList.inputHeight}) var(${cssVarList.inputBackgroundColor}) inset;\n } \n`;\n\nexport const resetInputFieldDefaultWidth = () => `\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputReadonlyStyle = (name) => `\n ${name}::part(input-field)::after {\n opacity: 0;\n }\n`;\n\nexport const resetInputFieldInvalidBackgroundColor = (name) => `\n ${name}::part(input-field)::after {\n background: none;\n }\n`;\n","import { isFunction, kebabCase } from '../../helpers';\nimport { getCssVarName } from '../../helpers/componentHelpers';\n\nconst createCssVarFallback = (first, ...rest) =>\n\t`var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (\n\tbaseSelector = '',\n\trelativeSelectorOrSelectorFn = ''\n) =>\n\tisFunction(relativeSelectorOrSelectorFn)\n\t\t? relativeSelectorOrSelectorFn(baseSelector)\n\t\t: `${baseSelector}${/^[A-Za-z]/.test(relativeSelectorOrSelectorFn)\n\t\t\t? ` ${relativeSelectorOrSelectorFn}`\n\t\t\t: relativeSelectorOrSelectorFn\n\t\t}`;\n\nclass StyleBuilder {\n\tconstructor() {\n\t\tthis.styleMap = new Map();\n\t}\n\n\tadd(selector, property, value) {\n\t\tif (!this.styleMap.has(selector)) {\n\t\t\tthis.styleMap.set(selector, []);\n\t\t}\n\n\t\tthis.styleMap.set(selector, [\n\t\t\t...this.styleMap.get(selector),\n\t\t\t{ property, value }\n\t\t]);\n\t}\n\n\ttoString() {\n\t\treturn Array.from(this.styleMap.entries()).reduce(\n\t\t\t(style, [selector, propValArr]) =>\n\t\t\t(style += `${selector} { \\n${propValArr\n\t\t\t\t.map(({ property, value }) => `${property}: ${value}`)\n\t\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t\t''\n\t\t);\n\t}\n}\n\nconst normalizeConfig = (attr, config) => {\n\tconst defaultMapping = { selector: '', property: kebabCase(attr) };\n\n\tif (!config || !Object.keys(config).length) return [defaultMapping];\n\n\tif (Array.isArray(config))\n\t\treturn config.map((entry) => Object.assign({}, defaultMapping, entry));\n\n\treturn [Object.assign({}, defaultMapping, config)];\n};\n\nexport const createStyle = (componentName, baseSelector, mappings) => {\n\tconst style = new StyleBuilder();\n\n\tObject.keys(mappings).forEach((attr) => {\n\t\tconst attrConfig = normalizeConfig(attr, mappings[attr]);\n\n\t\tconst cssVarName = getCssVarName(componentName, attr);\n\n\t\tattrConfig.forEach(\n\t\t\t({ selector: relativeSelectorOrSelectorFn, property }) => {\n\t\t\t\tstyle.add(\n\t\t\t\t\tcreateCssSelector(baseSelector, relativeSelectorOrSelectorFn),\n\t\t\t\t\tisFunction(property) ? property() : property,\n\t\t\t\t\tcreateCssVarFallback(cssVarName)\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t});\n\n\treturn style.toString();\n};\n\nexport const createCssVarsList = (componentName, mappings) =>\n\tObject.keys(mappings).reduce(\n\t\t(acc, attr) =>\n\t\t\tObject.assign(acc, { [attr]: getCssVarName(componentName, attr) }),\n\t\t{}\n\t);\n\n// on some cases we need a selector to be more specific than another\n// for this we have this fn that generate a class selector multiple times\nexport const createClassSelectorSpecifier = (className, numOfRepeats) => Array(numOfRepeats)\n\t.fill(`.${className}`)\n\t.join('')","import { BASE_THEME_SECTION, CSS_SELECTOR_SPECIFIER_MULTIPLY } from '../../constants';\nimport { kebabCaseJoin } from '../../helpers';\nimport { getCssVarName, observeAttributes } from '../../helpers/componentHelpers';\nimport { componentsThemeManager } from '../../helpers/themeHelpers/componentsThemeManager';\nimport { createStyle, createCssVarsList, createClassSelectorSpecifier } from './helpers';\n\nconst STYLE_OVERRIDE_ATTR_PREFIX = 'st'\n\nexport const createStyleMixin =\n\t({ mappings = {}, componentNameOverride = '' }) => (superclass) => {\n\t\tconst componentName = componentNameOverride || superclass.componentName;\n\n\t\treturn class CustomStyleMixinClass extends superclass {\n\t\t\tstatic get cssVarList() {\n\t\t\t\treturn {\n\t\t\t\t\t...superclass.cssVarList,\n\t\t\t\t\t...createCssVarsList(componentName, {\n\t\t\t\t\t\t...mappings,\n\t\t\t\t\t})\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t#overrideStyleEle;\n\t\t\t#themeStyleEle;\n\t\t\t#disconnectThemeManager\n\t\t\t#componentNameSuffix\n\t\t\t#themeSection\n\t\t\t#rootElement\n\t\t\t#baseSelector\n\t\t\t#styleAttributes\n\n\t\t\t// we are using this mixin also for portalMixin\n\t\t\t// so we should be able to inject styles to other DOM elements\n\t\t\t// this is why we need to support these overrides\n\t\t\tconstructor({\n\t\t\t\tgetRootElement,\n\t\t\t\tcomponentNameSuffix = '',\n\t\t\t\tthemeSection = BASE_THEME_SECTION,\n\t\t\t\tbaseSelector\n\t\t\t} = {}) {\n\t\t\t\tsuper();\n\t\t\t\tthis.#componentNameSuffix = componentNameSuffix\n\t\t\t\tthis.#themeSection = themeSection\n\t\t\t\tthis.#rootElement = getRootElement?.(this) || this.shadowRoot\n\t\t\t\tthis.#baseSelector = baseSelector ?? this.baseSelector\n\n\t\t\t\tthis.#styleAttributes = Object.keys(mappings).map((key) =>\n\t\t\t\t\tkebabCaseJoin(STYLE_OVERRIDE_ATTR_PREFIX, componentNameSuffix, key)\n\t\t\t\t);\n\n\t\t\t\tthis.#createMappingStyle();\n\t\t\t\tthis.#createComponentTheme();\n\t\t\t\tthis.#createOverridesStyle();\n\t\t\t}\n\n\t\t\tget #componentTheme() {\n\t\t\t\treturn componentsThemeManager.currentTheme?.[componentName] || ''\n\t\t\t}\n\n\t\t\t#onComponentThemeChange() {\n\t\t\t\tthis.#themeStyleEle.innerHTML = this.#componentTheme[this.#themeSection]\n\t\t\t}\n\n\t\t\t#createComponentTheme() {\n\t\t\t\tthis.#themeStyleEle = document.createElement('style');\n\t\t\t\tthis.#themeStyleEle.id = `style-mixin-theme__${componentName}`;\n\t\t\t\tthis.#rootElement.prepend(this.#themeStyleEle);\n\t\t\t\tthis.#disconnectThemeManager = componentsThemeManager.onCurrentThemeChange(this.#onComponentThemeChange.bind(this))\n\t\t\t\tthis.#onComponentThemeChange()\n\t\t\t}\n\n\t\t\t#createOverridesStyle() {\n\t\t\t\tif (this.#styleAttributes.length) {\n\t\t\t\t\tthis.#overrideStyleEle = document.createElement('style');\n\t\t\t\t\tthis.#overrideStyleEle.id = `style-mixin-overrides__${componentName}`;\n\n\t\t\t\t\tconst classSpecifier = createClassSelectorSpecifier(componentName, CSS_SELECTOR_SPECIFIER_MULTIPLY);\n\n\t\t\t\t\tthis.#overrideStyleEle.innerText = `:host(${classSpecifier}) {}`;\n\t\t\t\t\tthis.#rootElement.append(this.#overrideStyleEle);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#setAttrOverride(attrName, value) {\n\t\t\t\tconst style = this.#overrideStyleEle?.sheet?.cssRules[0].style;\n\t\t\t\tif (!style) return;\n\n\t\t\t\tconst varName = getCssVarName(\n\t\t\t\t\tcomponentName,\n\t\t\t\t\tattrName.replace(new RegExp(`^${STYLE_OVERRIDE_ATTR_PREFIX}-`), '')\n\t\t\t\t);\n\n\t\t\t\tif (value) style?.setProperty(varName, value);\n\t\t\t\telse {\n\t\t\t\t\tstyle?.removeProperty(varName);\n\t\t\t\t\tthis.removeAttribute(attrName)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#updateOverridesStyle(attrs = []) {\n\t\t\t\tlet shouldUpdate = false;\n\n\t\t\t\tfor (const attr of attrs) {\n\t\t\t\t\tif (this.#styleAttributes.includes(attr)) {\n\t\t\t\t\t\tthis.#setAttrOverride(attr, this.getAttribute(attr));\n\t\t\t\t\t\tshouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (shouldUpdate) {\n\t\t\t\t\t// we are rewriting the style back to the style tag\n\t\t\t\t\tthis.#overrideStyleEle.innerHTML = this.#overrideStyleEle?.sheet?.cssRules[0].cssText\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#createMappingStyle() {\n\t\t\t\tif (Object.keys(mappings).length) {\n\t\t\t\t\tconst themeStyle = document.createElement('style');\n\t\t\t\t\tthemeStyle.id = `style-mixin-mappings__${componentName}`\n\t\t\t\t\tthemeStyle.innerHTML = createStyle(\n\t\t\t\t\t\tkebabCaseJoin(componentName, this.#componentNameSuffix),\n\t\t\t\t\t\tthis.#baseSelector,\n\t\t\t\t\t\tmappings\n\t\t\t\t\t);\n\t\t\t\t\tthis.#rootElement.prepend(themeStyle);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t#addClassName(className) {\n\t\t\t\t(this.#rootElement.classList || this.#rootElement.host.classList).add(className)\n\t\t\t}\n\n\t\t\tinit() {\n\t\t\t\tsuper.init?.();\n\t\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\t\tthis.#addClassName(componentName)\n\n\t\t\t\t\t// this is instead attributeChangedCallback because we cannot use static methods in this case\n\t\t\t\t\tobserveAttributes(this, this.#updateOverridesStyle.bind(this), {})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdisconnectedCallback() {\n\t\t\t\tsuper.disconnectedCallback?.();\n\n\t\t\t\tthis.#disconnectThemeManager?.();\n\t\t\t}\n\t\t}\n\t};\n","export const draggableMixin = (superclass) =>\n\tclass DraggableMixinClass extends superclass {\n\t\t#styleEle = null;\n\n\t\tstatic get observedAttributes() {\n\t\t\tconst superAttrs = superclass.observedAttributes || [];\n\t\t\treturn [...superAttrs, 'draggable'];\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#styleEle = document.createElement('style');\n\t\t\tthis.#styleEle.innerText = `* { cursor: inherit!important }`;\n\t\t}\n\n\t\t#handleDraggableStyle(isDraggable) {\n\t\t\tif (isDraggable) {\n\t\t\t\tthis.shadowRoot.appendChild(this.#styleEle);\n\t\t\t} else {\n\t\t\t\tthis.#styleEle.remove();\n\t\t\t}\n\t\t}\n\n\t\tget isDraggable() {\n\t\t\treturn this.hasAttribute('draggable') && this.getAttribute('draggable') !== 'false'\n\t\t}\n\n\t\tinit() {\n\t\t\t// because we are delegating the focus from the outer component, \n\t\t\t// the D&D is not working well in the page editor\n\t\t\t// in order to solve it we are making the inner component focusable on mouse down\n\t\t\t// and removing it on complete\n\t\t\tthis.addEventListener('mousedown', (e) => {\n\t\t\t\tif (this.isDraggable) {\n\t\t\t\t\tconst prevTabIndex = this.baseElement.getAttribute('tabindex')\n\t\t\t\t\tthis.baseElement.setAttribute('tabindex', '-1');\n\n\t\t\t\t\tconst onComplete = () => {\n\t\t\t\t\t\tprevTabIndex ?\n\t\t\t\t\t\t\tthis.baseElement.setAttribute('tabindex', prevTabIndex) :\n\t\t\t\t\t\t\tthis.baseElement.removeAttribute('tabindex');\n\n\t\t\t\t\t\te.target.removeEventListener('mouseup', onComplete)\n\t\t\t\t\t\te.target.removeEventListener('dragend', onComplete)\n\t\t\t\t\t}\n\n\t\t\t\t\te.target.addEventListener('mouseup', onComplete, { once: true })\n\t\t\t\t\te.target.addEventListener('dragend', onComplete, { once: true })\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tsuper.init?.();\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\t\t\tif (attrName === 'draggable') {\n\t\t\t\tthis.#handleDraggableStyle(newValue === 'true');\n\t\t\t}\n\t\t}\n\t};\n","export const componentNameValidationMixin = (superclass) =>\n\tclass ComponentNameValidationMixinClass extends superclass {\n\t\t#checkComponentName() {\n\t\t\tconst currentComponentName = this.localName;\n\n\t\t\tif (!superclass.componentName) {\n\t\t\t\tthrow Error(\n\t\t\t\t\t`component name is not defined on super class, make sure you have a static get for \"componentName\"`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (currentComponentName !== superclass.componentName) {\n\t\t\t\tthrow Error(\n\t\t\t\t\t`component name mismatch, expected \"${superclass.componentName}\", current \"${currentComponentName}\"`\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\t\t\tthis.#checkComponentName();\n\t\t}\n\t};\n","export const hoverableMixin = (superclass) =>\n\tclass HoverableMixinClass extends superclass {\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.baseElement.addEventListener('mouseover', (e) => {\n\t\t\t\tthis.setAttribute('hover', 'true');\n\t\t\t\te.target.addEventListener(\n\t\t\t\t\t'mouseleave',\n\t\t\t\t\t() => this.removeAttribute('hover'),\n\t\t\t\t\t{ once: true }\n\t\t\t\t);\n\t\t\t})\n\t\t}\n\t};\n","import { observeAttributes } from \"../helpers/componentHelpers\";\n\nconst booleanAttributesList = [\n 'readonly',\n 'focused',\n 'invalid',\n 'has-label',\n 'required',\n 'disabled',\n 'checked',\n 'has-helper',\n 'has-value',\n 'step-buttons-visible',\n 'hover',\n 'has-error-message',\n 'focus-ring',\n 'opened',\n 'active',\n 'password-visible'\n]\n\nconst isBooleanAttribute = (attr) => {\n return booleanAttributesList.includes(attr)\n}\n// we want all the valueless attributes to have \"true\" value\n// and all the falsy attribute to be removed\nexport const normalizeBooleanAttributesMixin = (superclass) => class NormalizeBooleanAttributesMixinClass extends superclass {\n init() {\n super.init?.();\n\n observeAttributes(this, (attrs) =>\n attrs.forEach(attr => {\n const attrVal = this.getAttribute(attr)\n\n if (isBooleanAttribute(attr)) {\n if (attrVal === '') {\n this.setAttribute(attr, 'true')\n } else if (attrVal === 'false') {\n this.removeAttribute(attr)\n }\n } else if (!attrVal) {\n console.warn(`attribute \"${attr}\" has no value, should it be added to the boolean attributes list?`)\n }\n }), {})\n }\n}\n","import { compose } from \"../helpers\";\nimport { componentNameValidationMixin } from \"../mixins/componentNameValidationMixin\";\nimport { hoverableMixin } from \"../mixins/hoverableMixin\";\nimport { normalizeBooleanAttributesMixin } from \"../mixins/normalizeBooleanAttributesMixin\";\n\nexport const createBaseClass = ({ componentName, baseSelector = '' }) => {\n class DescopeBaseClass extends HTMLElement {\n static get componentName() {\n return componentName;\n }\n\n #baseElement;\n\n #isInit = true;\n\n // base selector is the selector for the component wrapper,\n // it's the highest element that is relevant for the layout\n get baseSelector() {\n return baseSelector\n }\n\n // this is the base element, which returned by querying the base selector\n get baseElement() {\n this.#baseElement ??= this.baseSelector ?\n this.rootElement.querySelector(this.baseSelector) :\n this;\n\n if(!this.#baseElement) {\n console.warn('missing base element for component', this.localName)\n }\n return this.#baseElement\n }\n\n // this is the component root level element, \n // it can be either a shadow root or the component's node from the light DOM\n get rootElement() {\n return this.shadowRoot || this\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n\n if (this.rootElement.isConnected) {\n // the init function is running once, on the first time the component is connected\n if (this.#isInit) {\n this.#isInit = false\n this.init?.();\n }\n }\n }\n }\n\n return compose(\n componentNameValidationMixin,\n hoverableMixin,\n normalizeBooleanAttributesMixin\n )(DescopeBaseClass)\n}\n","\n// create a dispatch event function that also calls to the onevent function in case it's set\n// usage example:\n// #dispatchSomething = createDispatchEvent.bind(this, 'something' { ...options })\n// this will dispatch a new event when called, but also call to \"onsomething\"\nexport function createDispatchEvent(eventName, options = {}) {\n const event = new Event(eventName, options)\n\n this[`on${eventName}`]?.(event); // in case we got an event callback as property\n this.dispatchEvent(event);\n}\n\n// add an event listener that is automatically removed on disconnect\n// usage example:\n// createEventListener.call(this,'change', this.onChange, { element? , ...options })\nexport function createEventListener(event, callback, { element, ...options } = {}) {\n const timerId = setTimeout(() => console.warn(this.localName, 'is not using \"lifecycleEventsMixin\", events will not be removed automatically on disconnect'), 2000)\n\n this.addEventListener('connected', () => {\n clearTimeout(timerId);\n }, { once: true })\n\n const targetEle = element || this;\n const boundCallback = callback.bind(this);\n\n const onDisconnect = () => {\n targetEle.removeEventListener(event, boundCallback);\n }\n\n this.addEventListener('disconnected', onDisconnect, { once: true })\n\n targetEle.addEventListener(event, boundCallback, options);\n\n return onDisconnect\n}\n","import { createBaseClass } from '../baseClasses/createBaseClass';\nimport { isFunction } from '../helpers';\nimport { forwardProps, syncAttrs } from '../helpers/componentHelpers';\nimport { createDispatchEvent } from '../helpers/mixinsHelpers';\n\nexport const createProxy = ({\n\tcomponentName,\n\twrappedEleName,\n\tslots = [],\n\tstyle,\n\texcludeAttrsSync = [],\n\tincludeAttrsSync = [],\n\tincludeForwardProps = []\n}) => {\n\tclass ProxyClass extends createBaseClass({ componentName, baseSelector: wrappedEleName }) {\n\t\t#dispatchBlur = createDispatchEvent.bind(this, 'blur')\n\t\t#dispatchFocus = createDispatchEvent.bind(this, 'focus')\n\n\t\tconstructor() {\n\t\t\tsuper().attachShadow({ mode: 'open', delegatesFocus: true }).innerHTML = `\n\t\t\t<style id=\"create-proxy\">${isFunction(style) ? style() : style\n\t\t\t\t}</style>\n\t\t\t<${wrappedEleName}>\n\t\t\t<slot></slot>\n\t\t\t${slots.map((slot) => `<slot name=\"${slot}\" slot=\"${slot}\"></slot>`).join('')}\n\t\t\t</${wrappedEleName}>\n\t\t`;\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.baseElement.addEventListener('blur', (e) => {\n\t\t\t\tthis.#dispatchBlur()\n\t\t\t})\n\n\t\t\tthis.baseElement.addEventListener('focus', (e) => {\n\t\t\t\tthis.#dispatchFocus()\n\t\t\t})\n\n\t\t\t// this is needed for components that uses props, such as combo box\n\t\t\tforwardProps(this.baseElement, this, includeForwardProps);\n\n\t\t\tsyncAttrs(this.baseElement, this, {\n\t\t\t\texcludeAttrs: excludeAttrsSync,\n\t\t\t\tincludeAttrs: includeAttrsSync\n\t\t\t});\n\t\t}\n\t}\n\n\treturn ProxyClass;\n};\n","const observedAttributes = [\n 'required',\n 'pattern',\n]\n\nconst errorAttributes = {\n valueMissing: 'data-errormessage-value-missing',\n patternMismatch: 'data-errormessage-pattern-mismatch',\n tooShort: 'data-errormessage-pattern-mismatch-too-short',\n tooLong: 'data-errormessage-pattern-mismatch-too-long',\n}\nexport const inputValidationMixin = (superclass) => class InputValidationMixinClass extends superclass {\n static get observedAttributes() {\n return [\n ...superclass.observedAttributes || [],\n ...observedAttributes\n ];\n }\n\n static get formAssociated() {\n return true;\n }\n\n #internals\n\n constructor() {\n super();\n\n this.#internals = this.attachInternals();\n }\n\n get defaultErrorMsgValueMissing() {\n return 'Please fill out this field.'\n }\n\n get defaultErrorMsgPatternMismatch() {\n return 'Please match the requested format.'\n }\n\n get defaultErrorMsgTooShort() {\n return `Minimum length is ${this.getAttribute('minlength')}.`\n }\n\n get defaultErrorMsgTooLong() {\n return `Maximum length is ${this.getAttribute('maxlength')}. `\n }\n\n getErrorMessage(flags) {\n const {\n valueMissing,\n patternMismatch,\n typeMismatch,\n stepMismatch,\n tooShort,\n tooLong,\n rangeOverflow,\n rangeUnderflow,\n badInput,\n customError\n } = flags;\n switch (true) {\n case valueMissing:\n return this.getAttribute(errorAttributes.valueMissing) ||\n this.defaultErrorMsgValueMissing\n case patternMismatch || typeMismatch || stepMismatch || rangeOverflow || rangeUnderflow || badInput:\n return this.getAttribute(errorAttributes.patternMismatch) ||\n this.defaultErrorMsgPatternMismatch\n case tooShort:\n return this.getAttribute(errorAttributes.tooShort) ||\n this.defaultErrorMsgTooShort\n case tooLong:\n return this.getAttribute(errorAttributes.tooLong) ||\n this.defaultErrorMsgTooLong\n case customError:\n return this.validationMessage\n default:\n return ''\n }\n }\n\n #setValidity() {\n const validity = this.isReadOnly ? {} : this.getValidity()\n this.#internals.setValidity(validity, this.getErrorMessage(validity), this.validationTarget)\n }\n\n get validationMessage() {\n return this.#internals.validationMessage;\n }\n\n getValidity() {\n console.warn('getValidity', 'is not implemented')\n }\n\n checkValidity() {\n return this.#internals.validity.valid\n }\n\n reportValidity() {\n return this.#internals.reportValidity()\n }\n\n get validity() {\n return this.#internals.validity\n }\n\n get validationTarget() {\n return this.inputElement\n }\n\n setCustomValidity(errorMessage) {\n if (errorMessage) {\n this.#internals.setValidity({ customError: true }, errorMessage, this.validationTarget)\n } else {\n this.#internals.setValidity({})\n this.#setValidity()\n }\n }\n\n get isRequired() {\n return this.hasAttribute('required') && this.getAttribute('required') !== 'false'\n }\n\n get isReadOnly() {\n return this.hasAttribute('readonly') && this.getAttribute('readonly') !== 'false'\n }\n\n get pattern() {\n return this.getAttribute('pattern')\n }\n\n get form() {\n return this.#internals.form\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (observedAttributes.includes(attrName)) {\n this.#setValidity();\n }\n }\n\n init() {\n super.init?.();\n this.addEventListener('change', this.#setValidity)\n this.addEventListener('invalid', (e) => e.stopPropagation())\n this.addEventListener('input', this.#setValidity)\n\n // The attribute sync takes time, so getValidity returns valid,\n // even when it shouldn't. This way allows all attributes to sync\n // after render, before checking the validity.\n setTimeout(() => this.#setValidity());\n }\n}\n","import { compose } from \"../helpers\";\nimport { forwardAttrs, getComponentName } from \"../helpers/componentHelpers\";\nimport { createDispatchEvent } from \"../helpers/mixinsHelpers\";\nimport { createStyleMixin } from \"./createStyleMixin\";\nimport { inputValidationMixin } from \"./inputValidationMixin\";\n\nconst errorAttrs = ['invalid', 'required'];\n\nconst propertyObserver = (src, target, property) => {\n\tObject.defineProperty(src, property, {\n\t\tset: function (v) {\n\t\t\treturn (target[property] = v);\n\t\t},\n\t\tget: function () {\n\t\t\treturn target[property];\n\t\t},\n\t\tconfigurable: true\n\t});\n};\n\n// recursively take the first slot child until it finds an element which is not a slot\n// stops after \"nestingLevel\" times\nconst getNestedInput = (ele) => {\n\tif (!ele) return;\n\n\tconst nestingLevel = 10\n\n\tlet nonSlotEle = ele\n\tfor (let i = 0; i < nestingLevel; i++) {\n\t\tnonSlotEle = nonSlotEle.assignedElements()[0]\n\t\tif (nonSlotEle.localName !== 'slot') return nonSlotEle\n\t}\n}\n\nconst proxyInputMixin = (superclass) =>\n\tclass ProxyInputMixinClass extends inputValidationMixin(superclass) {\n\t\tstatic get observedAttributes() {\n\t\t\treturn [...superclass.observedAttributes || [], ...errorAttrs];\n\t\t}\n\n\t\t#inputElement\n\n\t\t#dispatchChange = createDispatchEvent.bind(this, 'change')\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#inputElement = super.inputElement\n\t\t}\n\n\t\t// the web-component does not loaded immediately, so we want to defer the warning\n\t\t// and show it only if the input element was not found after the component is loaded\n\t\twarnIfInputElementIsMissing() {\n\t\t\tclearTimeout(this.inputElementTimerId)\n\n\t\t\tthis.inputElementTimerId = setTimeout(() => {\n\t\t\t\t!this.#inputElement && console.warn(this.localName, 'no input was found');\n\t\t\t}, 0)\n\t\t}\n\n\t\tget name () {\n\t\t\treturn this.getAttribute('name');\n\t\t}\n\n\t\tget inputElement() {\n\t\t\tthis.warnIfInputElementIsMissing()\n\n\t\t\tconst inputSlot = this.baseElement.shadowRoot?.querySelector('slot[name=\"input\"]')\n\t\t\tconst textAreaSlot = this.baseElement.shadowRoot?.querySelector('slot[name=\"textarea\"]')\n\n\t\t\tthis.#inputElement ??= getNestedInput(inputSlot) || getNestedInput(textAreaSlot)\n\n\t\t\treturn this.#inputElement\n\t\t}\n\n\t\tset inputElement(ele) {\n\t\t\tthis.#inputElement = ele\n\t\t}\n\n\t\tgetValidity() {\n\t\t\treturn this.inputElement?.validity || {}\n\t\t}\n\n\t\thandleInternalInputErrorMessage() {\n\t\t\tif (!this.inputElement.checkValidity()) {\n\t\t\t\tthis.inputElement.setCustomValidity(this.validationMessage)\n\t\t\t}\n\t\t}\n\n\t\t#handleErrorMessage() {\n\t\t\tthis.handleInternalInputErrorMessage()\n\t\t\tthis.setAttribute('error-message', this.validationMessage)\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tthis.inputElement.addEventListener('input', (e) => {\n\t\t\t\tif (!this.inputElement.checkValidity()) {\n\t\t\t\t\tthis.inputElement.setCustomValidity('')\n\t\t\t\t\t// after updating the input validity we want to trigger set validity on the wrapping element\n\t\t\t\t\t// so we will get the updated validity\n\t\t\t\t\tthis.setCustomValidity('')\n\n\t\t\t\t\t// Vaadin is getting the input event before us, \n\t\t\t\t\t// so in order to make sure they use the updated validity\n\t\t\t\t\t// we calling their fn after updating the input validity\n\t\t\t\t\tthis.baseElement.__onInput(e)\n\n\t\t\t\t\tthis.#handleErrorMessage()\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.baseElement.addEventListener('change', () => {\n\t\t\t\tthis.#dispatchChange()\n\t\t\t})\n\n\t\t\tthis.#inputElement.addEventListener('blur', () => {\n\t\t\t\tif (!this.checkValidity()) {\n\t\t\t\t\tthis.setAttribute('invalid', 'true')\n\t\t\t\t\tthis.#handleErrorMessage()\n\t\t\t\t}\n\t\t\t})\n\n\n\t\t\tthis.addEventListener('invalid', () => {\n\t\t\t\tif (!this.checkValidity()) {\n\t\t\t\t\tthis.setAttribute('invalid', 'true');\n\t\t\t\t}\n\t\t\t\tthis.#handleErrorMessage()\n\t\t\t})\n\n\t\t\tthis.handleInternalInputErrorMessage();\n\n\t\t\t// sync properties\n\t\t\tpropertyObserver(this, this.inputElement, 'value');\n\t\t\tpropertyObserver(this, this.inputElement, 'selectionStart');\n\t\t\tthis.setSelectionRange = this.inputElement.setSelectionRange?.bind(this.inputElement);\n\n\t\t\tforwardAttrs(this, this.inputElement, { includeAttrs: ['inputmode'] })\n\t\t}\n\t};\n\nconst composedProxyInputMixin = compose(\n\tproxyInputMixin,\n\tcreateStyleMixin({ componentNameOverride: getComponentName('input-wrapper') }))\n\nexport { composedProxyInputMixin as proxyInputMixin }\n","import { PORTAL_THEME_PREFIX } from \"../constants\";\nimport { kebabCaseJoin, upperFirst } from \"../helpers\";\nimport { forwardAttrs } from \"../helpers/componentHelpers\";\nimport { createStyleMixin } from \"./createStyleMixin\";\nimport { createCssVarsList } from \"./createStyleMixin/helpers\";\n\n// this is needed because we might generate the same css vars names\n// e.g. \"overlayColor\" attribute in style mixin's mapping, \n// will generate the same var as \"color\" attribute in portals's mapping \n// when the portal name is \"overlay\".\n// because of that, we are adding this separator that is also used as a differentiator\nconst DISPLAY_NAME_SEPARATOR = '_'\n\nconst sanitizeSelector = (selector) => selector.replace(/[^\\w\\s]/gi, '');\n\nconst getDomNode = (maybeDomNode) => maybeDomNode.host || maybeDomNode;\n\nexport const portalMixin = ({\n name,\n selector,\n mappings = {},\n forward: { attributes = [], include = true } = {}\n}) => (superclass) => {\n const eleDisplayName = name || sanitizeSelector(selector)\n\n const BaseClass = createStyleMixin({\n mappings\n })(superclass)\n\n return class PortalMixinClass extends BaseClass {\n static get cssVarList() {\n return {\n ...BaseClass.cssVarList,\n [eleDisplayName]: createCssVarsList(kebabCaseJoin(superclass.componentName, DISPLAY_NAME_SEPARATOR + eleDisplayName), mappings)\n };\n }\n\n #portalEle\n\n constructor() {\n // we cannot use \"this\" before calling \"super\"\n const getRootElement = (that) => {\n const baseEle = that.shadowRoot.querySelector(that.baseSelector)\n const portal = selector ? baseEle.shadowRoot.querySelector(selector) : baseEle\n\n return portal.shadowRoot || portal\n };\n\n super({\n getRootElement,\n componentNameSuffix: DISPLAY_NAME_SEPARATOR + eleDisplayName,\n themeSection: PORTAL_THEME_PREFIX + eleDisplayName,\n baseSelector: ':host'\n })\n\n this.#portalEle = getDomNode(getRootElement(this))\n }\n\n #handleHoverAttribute() {\n this.#portalEle.onmouseenter = (e) => { e.target.setAttribute('hover', 'true') }\n this.#portalEle.onmouseleave = (e) => { e.target.removeAttribute('hover') }\n }\n\n init() {\n super.init?.();\n forwardAttrs(this, this.#portalEle, { [include ? 'includeAttrs' : 'excludeAttrs']: attributes })\n\n this.#handleHoverAttribute();\n }\n }\n}\n","import { createDispatchEvent } from \"../helpers/mixinsHelpers\";\n\nexport const changeMixin = (superclass) => class ChangeMixinClass extends superclass {\n #dispatchChange = createDispatchEvent.bind(this, 'change')\n\n init() {\n super.init?.();\n this.prevValue = this.value\n\n this.addEventListener('change', (e) => {\n e.stopPropagation();\n })\n\n this.addEventListener('blur', () => {\n if (this.value !== this.prevValue) {\n this.#dispatchChange()\n this.prevValue = this.value\n }\n })\n }\n}\n","import { createDispatchEvent } from \"../helpers/mixinsHelpers\";\n\nexport const inputEventsDispatchingMixin = (superclass) => class InputEventsDispatchingMixinClass extends superclass {\n init() {\n this.#blockNativeEvents();\n\n super.init?.();\n }\n\n // we want to block the native (trusted) events and control when these events are being dispatched\n #blockNativeEvents() {\n ['blur', 'focus', 'focusin', 'focusout'].forEach(event => {\n this.addEventListener(event, (e) => {\n e.isTrusted && e.target === this && e.stopImmediatePropagation()\n })\n })\n }\n\n handleFocusEventsDispatching(inputs) {\n let timerId\n\n // in order to simulate blur & focusout on root input element\n // we are checking if focus on one of the inner elements happened immediately after blur\n // if not, the component is no longer focused and we should dispatch blur & focusout\n inputs?.forEach(input => {\n input?.addEventListener('focusout', (e) => {\n e.stopImmediatePropagation();\n timerId = setTimeout(() => {\n timerId = null\n\n createDispatchEvent.call(this, 'blur');\n createDispatchEvent.call(this, 'focusout', { bubbles: true });\n });\n })\n\n // in order to simulate focus & focusin on the root input element\n // we are holding a timer id and clearing it on focusin\n // if there is a timer id, it means that the root input is still focused\n // otherwise, it was not focused before, and we should dispatch focus & focusin\n const onFocus = (e) => {\n e.stopImmediatePropagation();\n clearTimeout(timerId)\n if (!timerId) {\n createDispatchEvent.call(this, 'focus');\n createDispatchEvent.call(this, 'focusin', { bubbles: true });\n }\n }\n\n // some components are not dispatching focusin but only focus\n input?.addEventListener('focusin', onFocus)\n input?.addEventListener('focus', onFocus)\n })\n }\n\n // we want to block the input events from propagating in case the value of the root input wasn't change\n // this can happen if we are sanitizing characters on the internal inputs and do not want it to affect the root input element value\n // in this case, on each input event, we are comparing the root input value to the previous one, and only if it does not match, we are allowing the input event to propagate\n handleInputEventDispatching() {\n let previousRootComponentValue = this.value\n\n this.addEventListener('input', (e) => {\n // we are comparing the previous value to the new one,\n // and if they have the same value, we are blocking the input event\n if (previousRootComponentValue === this.value) {\n e.stopImmediatePropagation();\n } else {\n previousRootComponentValue = this.value\n }\n });\n }\n}\n","import { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\nimport {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcomponentNameValidationMixin\n} from '../../mixins';\n\nexport const componentName = getComponentName('button');\n\nconst resetStyles = `\n\t:host {\n\t\tdisplay: inline-block;\n\t\tbox-sizing: border-box;\n\t}\n\tvaadin-button {\n\t\tmargin: 0;\n\t\tmin-width: 0;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tbox-shadow: none;\n\t}\n\tvaadin-button::part(label) {\n\t\tpadding: 0;\n\t}\n\tvaadin-button::part(prefix) {\n\t\tmargin-left: 0;\n\t\tmargin-right: 0;\n\t}\n`;\n\nconst iconStyles = `\n\tvaadin-button::part(prefix),\n\tvaadin-button::part(label) {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n`;\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\n\nconst { host, label } = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n};\n\nexport const ButtonClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tfontSize: {},\n\t\t\tfontFamily: {},\n\n\t\t\tcursor: {},\n\t\t\tbackgroundColor: {},\n\n\t\t\toutlineOffset: {},\n\t\t\toutlineColor: {},\n\t\t\toutlineStyle: {},\n\t\t\toutlineWidth: {},\n\n\t\t\tborderRadius: {},\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\n\t\t\tverticalPadding: [\n\t\t\t\t{ property: 'padding-top' },\n\t\t\t\t{ property: 'padding-bottom' },\n\t\t\t],\n\t\t\thorizontalPadding: [\n\t\t\t\t{ property: 'padding-left' },\n\t\t\t\t{ property: 'padding-right' },\n\t\t\t],\n\n\t\t\tlabelTextColor: { property: 'color' },\n\t\t\tlabelTextDecoration: { ...label, property: 'text-decoration' },\n\t\t\tlabelSpacing: { ...label, property: 'gap' },\n\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'label', 'suffix'],\n\t\twrappedEleName: 'vaadin-button',\n\t\tstyle: () => `\n\t\t\t${resetStyles}\n\t\t\t${iconStyles}\n\t\t\t${loadingIndicatorStyles}\n\t\t\t${editorOverrides}\n\t\t\t${useHostExternalPadding(ButtonClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nconst { color, fontSize } = ButtonClass.cssVarList;\nconst loadingIndicatorStyles = `\n\t@keyframes spin {\n\t\t0% { -webkit-transform: rotate(0deg); }\n\t\t100% { -webkit-transform: rotate(360deg); }\n\t}\n\t:host([loading=\"true\"]) ::before {\n\t\tanimation: spin 2s linear infinite;\n\t\tposition: absolute;\n\t\tcontent: '';\n\t\tz-index: 1;\n\t\tbox-sizing: border-box;\n\t\tborder-radius: 50%;\n\t\tborder-bottom-color: transparent;\n\t\tborder-left-color: transparent;\n\t\tborder-style: solid;\n\t\tcolor: var(${color});\n\t\ttop: calc(50% - (var(${fontSize}) / 2));\n\t\tleft: calc(50% - (var(${fontSize}) / 2));\n\t\tborder-width: calc(var(${fontSize}) / 10);\n\t\twidth: var(${fontSize});\n\t\theight: var(${fontSize});\n\t}\n\t:host([loading=\"true\"])::part(prefix),\n\t:host([loading=\"true\"])::part(label) {\n\t\tvisibility: hidden;\n\t}\n`;\n","import globals from '../globals';\nimport { getThemeRefs, createHelperVars } from '../../helpers/themeHelpers';\nimport { componentName, ButtonClass } from '../../components/descope-button/ButtonClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst compVars = ButtonClass.cssVarList;\n\nconst mode = {\n\tprimary: globalRefs.colors.primary,\n\tsecondary: globalRefs.colors.secondary,\n\tsuccess: globalRefs.colors.success,\n\terror: globalRefs.colors.error,\n\tsurface: globalRefs.colors.surface\n};\n\nconst [helperTheme, helperRefs, helperVars] = createHelperVars({ mode }, componentName);\n\nconst verticalPaddingRatio = 3;\nconst horizontalPaddingRatio = 2;\n\nconst button = {\n\t...helperTheme,\n\n\t[compVars.fontFamily]: globalRefs.fonts.font1.family,\n\n\t[compVars.cursor]: 'pointer',\n\n\t[compVars.borderRadius]: globalRefs.radius.sm,\n\t[compVars.borderWidth]: '2px',\n\t[compVars.borderStyle]: 'solid',\n\t[compVars.borderColor]: 'transparent',\n\n\t[compVars.labelSpacing]: '0.25em',\n\n\t[compVars.verticalPadding]: `calc(var(${compVars.fontSize}) / ${verticalPaddingRatio})`,\n\t[compVars.horizontalPadding]: `calc(var(${compVars.fontSize}) / ${horizontalPaddingRatio})`,\n\n\t[compVars.outlineWidth]: globals.border.sm,\n\t[compVars.outlineOffset]: '1px',\n\t[compVars.outlineStyle]: 'solid',\n\t[compVars.outlineColor]: 'transparent',\n\n\tsize: {\n\t\txs: { [compVars.fontSize]: '12px' },\n\t\tsm: { [compVars.fontSize]: '14px' },\n\t\tmd: { [compVars.fontSize]: '16px' },\n\t\tlg: { [compVars.fontSize]: '18px' }\n\t},\n\n\t_fullWidth: {\n\t\t[compVars.hostWidth]: '100%'\n\t},\n\n\t_loading: {\n\t\t[compVars.cursor]: 'wait'\n\t},\n\n\tvariant: {\n\t\tcontained: {\n\t\t\t[compVars.labelTextColor]: helperRefs.contrast,\n\t\t\t[compVars.backgroundColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[compVars.backgroundColor]: helperRefs.dark\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.backgroundColor]: helperRefs.dark\n\t\t\t}\n\t\t},\n\n\t\toutline: {\n\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t[compVars.borderColor]: 'currentColor',\n\t\t\t_hover: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.dark,\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.light,\n\t\t\t}\n\t\t},\n\n\t\tlink: {\n\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.main,\n\t\t\t\t[compVars.labelTextDecoration]: 'underline'\n\t\t\t},\n\t\t\t_active: {\n\t\t\t\t[compVars.labelTextColor]: helperRefs.dark\n\t\t\t}\n\t\t}\n\t},\n\n\t_focused: {\n\t\t[compVars.outlineColor]: globals.colors.surface.main,\n\t}\n};\n\nexport default button;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","const {\n\thost,\n\tlabel,\n\tplaceholder,\n\trequiredIndicator,\n\tinputField,\n\tinput,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tplaceholder: { selector: '> input:placeholder-shown' },\n\tinputField: { selector: '::part(input-field)' },\n\tinput: { selector: 'input' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport default {\n\t// we apply font-size also on the host so we can set its width with em\n\tfontSize: [\n\t\t{},\n\t\thost,\n\t],\n\tfontFamily: [\n\t\tlabel,\n\t\tinputField,\n\t\thelperText,\n\t\terrorMessage,\n\t],\n\n\thostWidth: { ...host, property: 'width' },\n\thostMinWidth: { ...host, property: 'min-width' },\n\n\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\n\tlabelTextColor: [\n\t\t{ ...label, property: 'color' },\n\t\t{ ...requiredIndicator, property: 'color' }\n\t],\n\n\tinputValueTextColor: { ...inputField, property: 'color' },\n\tinputCaretTextColor: { ...input, property: 'color' },\n\n\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\tinputBorderColor: { ...inputField, property: 'border-color' },\n\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\tinputHeight: { ...inputField, property: 'height' },\n\tinputHorizontalPadding: [\n\t\t{ ...input, property: 'padding-left' },\n\t\t{ ...input, property: 'padding-right' }\n\t],\n\n\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\n\tinputTextAlign: { ...input, property: 'text-align' },\n\n\tinputPlaceholderColor: { ...placeholder, property: 'color' }\n};\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from './textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('text-field');\n\nconst observedAttrs = ['type'];\n\nconst customMixin = (superclass) =>\n\tclass TextFieldClass extends superclass {\n\t\tstatic get observedAttributes() {\n\t\t\treturn observedAttrs.concat(superclass.observedAttributes || []);\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldVal, newVal) {\n\t\t\tsuper.attributeChangeCallback?.(attrName, oldVal, newVal);\n\n\t\t\t// Vaadin doesn't allow to change the input type attribute.\n\t\t\t// We need the ability to do that, so we're overriding their\n\t\t\t// behavior with their private API.\n\t\t\t// When receiving a `type` attribute, we use their private API\n\t\t\t// to set it on the input.\n\t\t\tif (attrName === 'type') {\n\t\t\t\tthis.baseElement._setType(newVal);\n\t\t\t}\n\t\t}\n\t}\n\nexport const TextFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tcustomMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${TextFieldClass.cssVarList.inputOutlineWidth}) + var(${TextFieldClass.cssVarList.inputOutlineOffset}));\n\t\t\t}\n\t\t\t${useHostExternalPadding(TextFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-text-field', TextFieldClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { createHelperVars } from '../../helpers/themeHelpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nconst componentName = getComponentName('input-wrapper');\nconst globalRefs = getThemeRefs(globals);\n\nconst [theme, refs, vars] = createHelperVars({\n labelTextColor: globalRefs.colors.surface.contrast,\n valueTextColor: globalRefs.colors.surface.contrast,\n placeholderTextColor: globalRefs.colors.surface.main,\n requiredIndicator: \"'*'\",\n\n borderWidth: globalRefs.border.xs,\n borderRadius: globalRefs.radius.xs,\n borderColor: 'transparent',\n\n outlineWidth: globalRefs.border.sm,\n outlineStyle: 'solid',\n outlineColor: 'transparent',\n outlineOffset: '0px', // we need to keep the px unit even for 0 value, as this var is used for calc in different component classes\n\n minWidth: '10em',\n toggleButtonSize: '1.5em',\n inputHeight: '3em',\n horizontalPadding: '0.5em',\n verticalPadding: '0.5em',\n\n backgroundColor: globalRefs.colors.surface.light,\n\n fontFamily: globalRefs.fonts.font1.family,\n\n size: {\n xs: { fontSize: '12px' },\n sm: { fontSize: '14px' },\n md: { fontSize: '16px' },\n lg: { fontSize: '18px' }\n },\n\n _fullWidth: {\n width: '100%',\n },\n\n _focused: {\n outlineColor: globalRefs.colors.surface.main,\n _invalid: {\n outlineColor: globalRefs.colors.error.main,\n }\n },\n\n _bordered: {\n outlineWidth: globalRefs.border.xs,\n borderColor: globalRefs.colors.surface.main,\n borderStyle: 'solid',\n _invalid: {\n borderColor: globalRefs.colors.error.main,\n }\n },\n\n _disabled: {\n labelTextColor: globalRefs.colors.surface.main,\n borderColor: globalRefs.colors.surface.main,\n valueTextColor: globalRefs.colors.surface.dark,\n placeholderTextColor: globalRefs.colors.surface.dark,\n backgroundColor: globalRefs.colors.surface.main\n }\n}, componentName);\n\nexport { refs, vars };\nexport default theme;\n","import { TextFieldClass } from '../../components/descope-text-field/TextFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = TextFieldClass.cssVarList;\n\nexport const textField = ({\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding\n});\n\nexport default textField;\nexport { vars }\n","const passwordDraggableMixin = (superclass) => class PasswordDraggableMixinClass extends superclass {\n\tget isReadOnly() {\n\t\treturn this.hasAttribute('readonly') && this.getAttribute('readonly') !== 'false'\n\t}\n\n\tinit() {\n\t\t// there is an issue in Chrome that input field with type password cannot be D&D\n\t\t// so in case the input is draggable & readonly, we are changing the input type to \"text\" before dragging \n\t\t// and return the original type when done\n\t\tthis.addEventListener('mousedown', (e) => {\n\t\t\tif (this.isDraggable & this.isReadOnly) {\n\t\t\t\tconst inputEle = this.baseElement.querySelector('input');\n\t\t\t\tconst prevType = inputEle.getAttribute('type')\n\n\t\t\t\tinputEle.setAttribute('type', 'text');\n\t\t\t\tsetTimeout(() => inputEle.focus());\n\n\t\t\t\tconst onComplete = (e) => {\n\t\t\t\t\tinputEle.setAttribute('type', prevType)\n\n\t\t\t\t\te.target.removeEventListener('mouseup', onComplete)\n\t\t\t\t\te.target.removeEventListener('dragend', onComplete)\n\t\t\t\t}\n\n\t\t\t\te.target.addEventListener('mouseup', onComplete, { once: true })\n\t\t\t\te.target.addEventListener('dragend', onComplete, { once: true })\n\t\t\t}\n\t\t})\n\n\t\tsuper.init?.();\n\t}\n}\n\nexport default passwordDraggableMixin","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport passwordDraggableMixin from './passwordDraggableMixin';\nimport { resetInputCursor, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('password');\n\nconst {\n\thost,\n\tinputField,\n\tinputElement,\n\tinputElementPlaceholder,\n\trevealButtonContainer,\n\trevealButtonIcon,\n\tlabel,\n\trequiredIndicator,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tinputField: { selector: '::part(input-field)' },\n\tinputElement: { selector: '> input' },\n\tinputElementPlaceholder: { selector: '> input:placeholder-shown' },\n\trevealButtonContainer: { selector: () => '::part(reveal-button)' },\n\trevealButtonIcon: { selector: () => '::part(reveal-button)::before' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\nexport const PasswordClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tfontSize: [\n\t\t\t\t{},\n\t\t\t\thost,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tinputField,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText\n\t\t\t],\n\t\t\tinputHeight: { ...inputField, property: 'height' },\n\t\t\tinputHorizontalPadding: [\n\t\t\t\t{ ...inputElement, property: 'padding-left' },\n\t\t\t\t{ ...inputElement, property: 'padding-right' }\n\t\t\t],\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tinputValueTextColor: [\n\t\t\t\t{ ...inputElement, property: 'color' },\n\t\t\t\t{ ...revealButtonIcon, property: 'color' }\n\t\t\t],\n\t\t\tinputPlaceholderTextColor: { ...inputElementPlaceholder, property: 'color' },\n\n\t\t\trevealButtonOffset: [\n\t\t\t\t{ ...revealButtonContainer, property: 'margin-right' },\n\t\t\t\t{ ...revealButtonContainer, property: 'margin-left' }\n\t\t\t],\n\t\t\trevealButtonSize: { ...revealButtonContainer, property: 'font-size' },\n\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tpasswordDraggableMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-password-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 10em;\n\t\t\t}\n\t\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\t\t${resetInputCursor('vaadin-password-field')}\n\n\t\t\tvaadin-password-field {\n\t\t\t\twidth: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field > input {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field) {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\t\t\t\n\t\t\tvaadin-password-field > input {\n\t\t\t\tmin-height: 0;\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t}\n\t\t\tvaadin-password-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\tvaadin-password-field::before {\n\t\t\t\theight: initial;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field)::after {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field-button {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t[readonly] vaadin-password-field-button {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\n\t\t\tvaadin-password-field-button[focus-ring] {\n\t\t\t\tbox-shadow: 0 0 0 2px var(${PasswordClass.cssVarList.inputOutlineColor});\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { PasswordClass } from '../../components/descope-password/PasswordClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = PasswordClass.cssVarList;\n\nconst password = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.revealButtonOffset]: globalRefs.spacing.md,\n\t[vars.revealButtonSize]: refs.toggleButtonSize\n};\n\nexport default password;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('number-field');\n\nexport const NumberFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-number-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${NumberFieldClass.cssVarList.inputOutlineWidth}) + var(${NumberFieldClass.cssVarList.inputOutlineOffset}));\n\t\t\t}\n\t\t\t${useHostExternalPadding(NumberFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-number-field', NumberFieldClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { NumberFieldClass } from '../../components/descope-number-field/NumberFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = NumberFieldClass.cssVarList;\n\nconst numberField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight\n};\n\nexport default numberField;\nexport { vars };\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputOverrides, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('email-field');\n\nexport const EmailFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-email-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tpadding: calc(var(${EmailFieldClass.cssVarList.inputOutlineWidth}) + var(${EmailFieldClass.cssVarList.inputOutlineOffset}))\n\t\t\t}\n\t\t\t${useHostExternalPadding(EmailFieldClass.cssVarList)}\n\t\t\t${resetInputOverrides('vaadin-email-field', EmailFieldClass.cssVarList)}\t\t\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { EmailFieldClass } from '../../components/descope-email-field/EmailFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = EmailFieldClass.cssVarList;\n\nconst emailField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputPlaceholderColor]: refs.placeholderTextColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight\n};\n\nexport default emailField;\nexport { vars };\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputContainer, resetInputCursor, resetInputField, resetInputPlaceholder, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('text-area');\n\nconst {\n\thost,\n\tlabel,\n\tplaceholder,\n\tinputField,\n\ttextArea,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\tplaceholder: { selector: 'textarea:placeholder-shown' },\n\tinputField: { selector: '::part(input-field)' },\n\ttextArea: { selector: '> textarea' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport const TextAreaClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\ttextArea,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tinputField,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\t\t\tinputValueTextColor: { ...textArea, property: 'color' },\n\t\t\tinputPlaceholderTextColor: { ...placeholder, property: 'color' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-Style' },\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputResizeType: { ...textArea, property: 'resize' },\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-area',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t\t${useHostExternalPadding(TextAreaClass.cssVarList)}\n\t\t\t${resetInputContainer('vaadin-text-area')}\n\t\t\t${resetInputField('vaadin-text-area')}\n\t\t\t${resetInputPlaceholder('vaadin-text-area', 'textarea')}\n\t\t\t${resetInputCursor('vaadin-text-area')}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\n\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { TextAreaClass } from '../../components/descope-text-area/TextAreaClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextAreaClass.cssVarList;\n\nconst textArea = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: '14px',\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputResizeType]: 'vertical',\n\n\t_disabled: {\n\t\t[vars.inputBackgroundColor]: globalRefs.colors.surface.light,\n\t},\n\n\t_readonly: {\n\t\t[vars.inputResizeType]: 'none',\n\t}\n};\n\nexport default textArea;\nexport { vars }\n","import { compose } from \"../helpers\";\nimport { changeMixin, inputEventsDispatchingMixin, inputValidationMixin, normalizeBooleanAttributesMixin } from \"../mixins\";\nimport { createBaseClass } from \"./createBaseClass\";\n\nexport const createBaseInputClass = (...args) => compose(\n inputValidationMixin,\n changeMixin,\n normalizeBooleanAttributesMixin,\n inputEventsDispatchingMixin\n)(createBaseClass(...args))\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { forwardAttrs, getComponentName, syncAttrs } from '../../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('boolean-field-internal');\n\nconst forwardAttributes = [\n\t'disabled',\n\t'label',\n\t'invalid',\n\t'readonly'\n];\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' })\n\nclass BooleanInputInternal extends BaseInputClass {\n\tconstructor() {\n\t\tsuper();\n\t\tthis.innerHTML = `\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<vaadin-checkbox></vaadin-checkbox>\n\t\t\t</div>\n\t\t`;\n\t\tthis.wrapperEle = this.querySelector('div');\n\t\tthis.checkbox = this.querySelector('vaadin-checkbox')\n\t}\n\n\tget value() {\n\t\treturn this.checkbox?.checked;\n\t}\n\n\tset value(val) {\n\t\tthis.checkbox.checked = val;\n\t}\n\n\tget checked() {\n\t\treturn this.value;\n\t}\n\n\tset checked(val) {\n\t\tthis.value = val;\n\t}\n\n\tinit() {\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\tif (e.isTrusted) {\n\t\t\t\tthis.checkbox.focus()\n\t\t\t}\n\t\t});\n\t\tsuper.init?.();\n\n\t\tforwardAttrs(this, this.checkbox, { includeAttrs: forwardAttributes });\n\t\tsyncAttrs(this, this.checkbox, { includeAttrs: ['checked'] });\n\n\t\t// we need it in order to set the focus ring and trigger validation on descope-checkbox\n\t\tthis.handleFocusEventsDispatching([this.checkbox])\n\t}\n\n\tgetValidity() {\n\t\tif (this.isRequired && !this.value) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\treturn {}\n\t};\n}\n\nexport default BooleanInputInternal;\n","import { forwardAttrs, forwardProps, syncAttrs } from \"../../helpers/componentHelpers\";\nimport { componentName as descopeInternalComponentName } from './descope-boolean-field-internal/BooleanFieldInternal'\n\nexport const booleanFieldMixin = (superclass) =>\n class BooleanFieldMixinClass extends superclass {\n constructor() {\n super();\n }\n\n init() {\n super.init?.();\n\n const template = document.createElement('template');\n template.innerHTML = `\n\t\t\t\t<${descopeInternalComponentName} \n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\tslot=\"input\"\n\t\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n this.baseElement.appendChild(template.content.cloneNode(true));\n this.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n this.checkbox = this.inputElement.querySelector('vaadin-checkbox');\n\n forwardAttrs(this, this.inputElement, {\n includeAttrs: [\n 'required',\n 'full-width',\n 'size',\n 'label',\n 'invalid',\n 'disabled'\n ]\n });\n\n forwardProps(this.inputElement, this, ['checked']);\n syncAttrs(this, this.inputElement, { includeAttrs: ['checked'] });\n }\n };","import { resetInputFieldDefaultWidth } from \"../../helpers/themeHelpers/resetHelpers\";\n\nexport default `\n:host {\n\tdisplay: inline-flex;\n}\n\n${resetInputFieldDefaultWidth()}\n\n.wrapper {\n\tdisplay: flex;\n\tbox-sizing: border-box;\n}\n\nvaadin-text-field {\n\tposition: relative;\n\tpadding: 0;\n\tdisplay: inline-flex;\n\talign-items: flex-start;\n}\nvaadin-text-field::before {\n\theight: 0;\n\tmargin: 0;\n}\nvaadin-text-field::part(label) {\n position: absolute;\n top: 0;\n}\nvaadin-text-field::part(input-field) {\n\tpadding: 0;\n\tbackground: none;\n\tmin-height: 0;\n}\nvaadin-text-field::part(input-field)::after {\n background: none;\n}\nvaadin-text-field[focus-ring]::part(input-field) {\n\tbox-shadow: none;\n}\n\nvaadin-checkbox [slot=\"label\"] {\n align-self: flex-start;\n opacity: 0;\n padding: 0;\n}\n[required] vaadin-checkbox [slot=\"label\"] {\n\tpadding-right: 1em;\n}\nvaadin-checkbox::part(checkbox) {\n\tmargin: 0;\n}\nvaadin-checkbox[focus-ring]::part(checkbox) {\n\tbox-shadow: none;\n}\n\ndescope-boolean-field-internal {\n\t-webkit-mask-image: none;\n\tmin-height: 0;\n\tpadding: 0;\n}\n\n[slot=\"label\"],\nvaadin-checkbox,\nvaadin-checkbox::part(checkbox) {\n\theight: 100%;\n\tcursor: pointer;\n}\n`;\n","import { getComponentName } from '../../../helpers/componentHelpers';\nimport { compose } from '../../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n\tcreateProxy\n} from '../../../mixins';\nimport { booleanFieldMixin } from '../booleanFieldMixin';\nimport commonStyles from '../commonStyles';\nimport { useHostExternalPadding } from '../../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('checkbox');\n\nconst {\n\thost,\n\tcomponent,\n\tcheckboxElement,\n\tcheckboxSurface,\n\tcheckboxHiddenLabel,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tcomponent: { selector: 'vaadin-checkbox' },\n\tcheckboxElement: { selector: 'vaadin-checkbox::part(checkbox)' },\n\tcheckboxSurface: { selector: 'vaadin-checkbox::part(checkbox)::after' },\n\tcheckboxHiddenLabel: { selector: 'vaadin-checkbox [slot=\"label\"]' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' },\n};\n\nexport const CheckboxClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\tcheckboxElement,\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t\t{ ...label, property: '-webkit-text-fill-color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tlabelFontWeight: [\n\t\t\t\t{ ...label, property: 'font-weight' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'font-weight' }\n\t\t\t],\n\t\t\tlabelSpacing: [\n\t\t\t\t{ ...label, property: 'left' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'padding-left' }\n\t\t\t],\n\t\t\tinputValueTextColor: { ...checkboxSurface, property: 'color' },\n\t\t\tinputBackgroundColor: { ...checkboxElement, property: 'background-color' },\n\n\t\t\tinputBorderRadius: { ...checkboxElement, property: 'border-radius' },\n\t\t\tinputBorderWidth: { ...checkboxElement, property: 'border-width' },\n\t\t\tinputBorderOffset: { ...checkboxElement, property: 'border-offset' },\n\t\t\tinputBorderColor: { ...checkboxElement, property: 'border-color' },\n\t\t\tinputBorderStyle: { ...checkboxElement, property: 'border-style' },\n\n\t\t\tinputOutlineWidth: { ...checkboxElement, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...checkboxElement, property: 'outline-offset' },\n\t\t\tinputOutlineColor: { ...checkboxElement, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...checkboxElement, property: 'outline-style' },\n\n\t\t\tinputSize: [\n\t\t\t\t{ ...checkboxElement, property: 'width' },\n\t\t\t\t{ ...checkboxElement, property: 'height' },\n\t\t\t\t{ ...checkboxSurface, property: 'font-size' },\n\t\t\t\t{ ...component, property: 'font-size' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'line-height' },\n\t\t\t\t{ ...label, property: 'margin-left' },\n\t\t\t\t{ ...label, property: 'line-height' },\n\t\t\t],\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tbooleanFieldMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t${commonStyles}\n\t\t\t${useHostExternalPadding(CheckboxClass.cssVarList)}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { CheckboxClass } from '../../components/boolean-fields/descope-checkbox/CheckboxClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = CheckboxClass.cssVarList;\n\nconst checkbox = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.labelFontWeight]: '400',\n\t[vars.labelSpacing]: '0.75em',\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBackgroundColor]: refs.inputBackgroundColor,\n\t[vars.inputSize]: '2em',\n\n\t_checked: {\n\t\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t},\n\n\t_disabled: {\n\t\t[vars.labelTextColor]: refs.labelTextColor,\n\t},\n};\n\nexport default checkbox;\nexport { vars }\n","import { getComponentName } from '../../../helpers/componentHelpers'\nimport { compose } from '../../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n\tcreateProxy\n} from '../../../mixins';\nimport { booleanFieldMixin } from '../booleanFieldMixin';\nimport commonStyles from '../commonStyles';\nimport { useHostExternalPadding } from '../../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('switch-toggle');\n\nconst {\n\thost,\n\tcomponent,\n\tcheckboxElement: track,\n\tcheckboxSurface: knob,\n\tcheckboxHiddenLabel,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tcomponent: { selector: 'vaadin-checkbox' },\n\tcheckboxElement: { selector: 'vaadin-checkbox::part(checkbox)' },\n\tcheckboxSurface: { selector: 'vaadin-checkbox::part(checkbox)::after' },\n\tcheckboxHiddenLabel: { selector: 'vaadin-checkbox [slot=\"label\"]' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' },\n};\n\nexport const SwitchToggleClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tfontSize: [\n\t\t\t\tcomponent,\n\t\t\t\tlabel,\n\t\t\t\tcheckboxHiddenLabel,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage,\n\t\t\t],\n\t\t\ttrackBorderWidth: { ...track, property: 'border-width' },\n\t\t\ttrackBorderStyle: { ...track, property: 'border-style' },\n\t\t\ttrackBorderColor: { ...track, property: 'border-color' },\n\t\t\ttrackBackgroundColor: { ...track, property: 'background-color' },\n\t\t\ttrackBorderRadius: { ...track, property: 'border-radius' },\n\t\t\ttrackWidth: [\n\t\t\t\t{ ...track, property: 'width' },\n\t\t\t],\n\t\t\ttrackHeight: [\n\t\t\t\t{ ...knob, property: 'font-size' },\n\t\t\t\t{ ...track, property: 'height' }\n\t\t\t],\n\n\t\t\tknobSize: [\n\t\t\t\t{ ...knob, property: 'width' },\n\t\t\t\t{ ...knob, property: 'height' },\n\t\t\t],\n\t\t\tknobTextColor: { ...knob, property: 'color' },\n\t\t\tknobRadius: { ...knob, property: 'border-radius' },\n\t\t\tknobTransitionDuration: { ...knob, property: 'transition' },\n\t\t\tknobColor: { ...knob, property: 'background-color' },\n\t\t\tknobTopOffset: { ...knob, property: 'top' },\n\t\t\tknobLeftOffset: { ...knob, property: 'left' },\n\n\t\t\tlabelSpacing: [\n\t\t\t\t{ ...label, property: 'padding-left' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'padding-left' }\n\t\t\t],\n\t\t\tlabelLineHeight: [\n\t\t\t\t{ ...label, property: 'line-height' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'line-height' }\n\t\t\t],\n\t\t\tlabelFontWeight: [\n\t\t\t\t{ ...label, property: 'font-weight' },\n\t\t\t\t{ ...checkboxHiddenLabel, property: 'font-weight' }\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t\t{ ...label, property: '-webkit-text-fill-color' }\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputOutlineWidth: { ...track, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...track, property: 'outline-offset' },\n\t\t\tinputOutlineColor: { ...track, property: 'outline-color' },\n\t\t\tinputOutlineStyle: { ...track, property: 'outline-style' },\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tbooleanFieldMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t${commonStyles}\n\t\t\t${useHostExternalPadding(SwitchToggleClass.cssVarList)}\n\t\t\tvaadin-text-field::part(label) {\n\t\t\t\tleft: calc(var(${SwitchToggleClass.cssVarList.trackWidth}) + var(${SwitchToggleClass.cssVarList.trackBorderWidth}) * 2);\n\t\t\t}\n\t\t\tvaadin-checkbox[active]::part(checkbox) {\n\t\t\t\ttransform: none;\n\t\t\t}\n\t\t\tvaadin-checkbox::part(checkbox)::after {\n\t\t\t\tposition: absolute;\n\t\t\t\topacity: 1;\n\t\t\t\tcontent: '';\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { SwitchToggleClass } from '../../components/boolean-fields/descope-switch-toggle/SwitchToggleClass';\nimport { refs } from './inputWrapper';\n\nconst knobMargin = '2px';\nconst checkboxHeight = '1.25em';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = SwitchToggleClass.cssVarList;\n\nconst switchToggle = {\n [vars.fontSize]: refs.fontSize,\n [vars.fontFamily]: refs.fontFamily,\n\n [vars.inputOutlineWidth]: refs.outlineWidth,\n [vars.inputOutlineOffset]: refs.outlineOffset,\n [vars.inputOutlineColor]: refs.outlineColor,\n [vars.inputOutlineStyle]: refs.outlineStyle,\n\n [vars.trackBorderStyle]: refs.borderStyle,\n [vars.trackBorderWidth]: refs.borderWidth, // var `trackBorderWidth` used outside the theme for `left` margin calculation\n [vars.trackBorderColor]: refs.borderColor,\n [vars.trackBackgroundColor]: 'none',\n [vars.trackBorderRadius]: globalRefs.radius.md,\n [vars.trackWidth]: '2.5em', // var `trackWidth` used outside the theme for `left` margin calculation\n [vars.trackHeight]: checkboxHeight,\n\n [vars.knobSize]: `calc(1em - ${knobMargin})`,\n [vars.knobRadius]: '50%',\n [vars.knobTopOffset]: '1px',\n [vars.knobLeftOffset]: knobMargin,\n [vars.knobColor]: refs.valueTextColor,\n [vars.knobTransitionDuration]: '0.3s',\n\n [vars.labelTextColor]: refs.labelTextColor,\n [vars.labelFontWeight]: '400',\n [vars.labelLineHeight]: `calc(${checkboxHeight} + 0.25em)`,\n [vars.labelSpacing]: '0.25em',\n [vars.labelRequiredIndicator]: refs.requiredIndicator,\n\n [vars.hostWidth]: refs.width,\n\n _checked: {\n [vars.trackBorderColor]: refs.borderColor,\n [vars.trackBackgroundColor]: refs.backgroundColor,\n [vars.knobLeftOffset]: `calc(100% - var(${vars.knobSize}) - ${knobMargin})`,\n [vars.knobColor]: refs.valueTextColor,\n [vars.knobTextColor]: refs.valueTextColor,\n },\n\n _disabled: {\n [vars.knobColor]: globalRefs.colors.surface.light,\n [vars.trackBorderColor]: globalRefs.colors.surface.main,\n [vars.trackBackgroundColor]: globalRefs.colors.surface.main,\n [vars.labelTextColor]: refs.labelTextColor,\n _checked: {\n [vars.knobColor]: globalRefs.colors.surface.light,\n [vars.trackBackgroundColor]: globalRefs.colors.surface.main,\n }\n },\n\n _invalid: {\n [vars.trackBorderColor]: globalRefs.colors.error.main,\n [vars.knobColor]: globalRefs.colors.error.main,\n },\n};\n\nexport default switchToggle;\nexport { vars }","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('container');\n\nclass RawContainer extends createBaseClass({ componentName, baseSelector: ':host > slot' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host > slot {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\toverflow: auto;\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t</style>\n\t\t<slot></slot>\n\t`;\n\t}\n}\n\nexport const ContainerClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostHeight: { selector: () => ':host', property: 'height' },\n\t\t\thostWidth: { selector: () => ':host', property: 'width' },\n\n\t\t\tverticalPadding: [\n\t\t\t\t{ property: 'padding-top' },\n\t\t\t\t{ property: 'padding-bottom' }\n\t\t\t],\n\t\t\thorizontalPadding: [\n\t\t\t\t{ property: 'padding-left' },\n\t\t\t\t{ property: 'padding-right' }\n\t\t\t],\n\n\t\t\tflexDirection: {},\n\t\t\tjustifyContent: {},\n\t\t\talignItems: {},\n\t\t\tgap: {},\n\t\t\tflexWrap: {},\n\n\t\t\tbackgroundColor: {},\n\t\t\tcolor: {},\n\t\t\tborderRadius: {},\n\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\n\t\t\tboxShadow: {}\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawContainer);\n","import globals from \"../globals\";\nimport { getThemeRefs, createHelperVars } from \"../../helpers/themeHelpers\";\nimport { ContainerClass, componentName } from \"../../components/descope-container/ContainerClass\";\n\nconst globalRefs = getThemeRefs(globals);\n\nconst compVars = ContainerClass.cssVarList\n\nconst verticalAlignment = {\n\tstart: { verticalAlignment: 'start' },\n\tcenter: { verticalAlignment: 'safe center' },\n\tend: { verticalAlignment: 'end' },\n}\n\nconst horizontalAlignment = {\n\tstart: { horizontalAlignment: 'start' },\n\tcenter: { horizontalAlignment: 'safe center' },\n\tend: { horizontalAlignment: 'end' },\n}\n\nconst [helperTheme, helperRefs, helperVars] =\n\tcreateHelperVars({\n\t\tverticalAlignment,\n\t\thorizontalAlignment,\n\t\tshadowColor: '#00000020' //if we want to support transparency vars, we should use different color format\n\t}, componentName)\n\nconst { shadowColor } = helperRefs;\n\nconst container = {\n\t...helperTheme,\n\n\t[compVars.hostWidth]: '100%',\n\t[compVars.boxShadow]: 'none',\n\t[compVars.backgroundColor]: globalRefs.colors.surface.light,\n\t[compVars.color]: globalRefs.colors.surface.contrast,\n\n\tverticalPadding: {\n\t\tsm: { [compVars.verticalPadding]: '5px' },\n\t\tmd: { [compVars.verticalPadding]: '10px' },\n\t\tlg: { [compVars.verticalPadding]: '20px' },\n\t},\n\n\thorizontalPadding: {\n\t\tsm: { [compVars.horizontalPadding]: '5px' },\n\t\tmd: { [compVars.horizontalPadding]: '10px' },\n\t\tlg: { [compVars.horizontalPadding]: '20px' },\n\t},\n\n\tdirection: {\n\t\trow: {\n\t\t\t[compVars.flexDirection]: 'row',\n\t\t\t[compVars.alignItems]: helperRefs.verticalAlignment,\n\t\t\t[compVars.justifyContent]: helperRefs.horizontalAlignment,\n\t\t\t[compVars.flexWrap]: 'wrap',\n\t\t\thorizontalAlignment: {\n\t\t\t\tspaceBetween: {\n\t\t\t\t\t[helperVars.horizontalAlignment]: 'space-between'\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t\tcolumn: {\n\t\t\t[compVars.flexDirection]: 'column',\n\t\t\t[compVars.alignItems]: helperRefs.horizontalAlignment,\n\t\t\t[compVars.justifyContent]: helperRefs.verticalAlignment,\n\t\t\tverticalAlignment: {\n\t\t\t\tspaceBetween: {\n\t\t\t\t\t[helperVars.verticalAlignment]: 'space-between'\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n\n\tspaceBetween: {\n\t\tsm: { [compVars.gap]: '10px' },\n\t\tmd: { [compVars.gap]: '20px' },\n\t\tlg: { [compVars.gap]: '30px' }\n\t},\n\n\tshadow: {\n\t\tsm: { [compVars.boxShadow]: `${globalRefs.shadow.wide.sm} ${shadowColor}, ${globalRefs.shadow.narrow.sm} ${shadowColor}` },\n\t\tmd: { [compVars.boxShadow]: `${globalRefs.shadow.wide.md} ${shadowColor}, ${globalRefs.shadow.narrow.md} ${shadowColor}` },\n\t\tlg: { [compVars.boxShadow]: `${globalRefs.shadow.wide.lg} ${shadowColor}, ${globalRefs.shadow.narrow.lg} ${shadowColor}` },\n\t\txl: { [compVars.boxShadow]: `${globalRefs.shadow.wide.xl} ${shadowColor}, ${globalRefs.shadow.narrow.xl} ${shadowColor}` },\n\t\t'2xl': {\n\t\t\t[helperVars.shadowColor]: '#00000050', // mimic daisyUI shadow settings \n\t\t\t[compVars.boxShadow]: `${globalRefs.shadow.wide['2xl']} ${shadowColor}`\n\t\t},\n\t},\n\n\tborderRadius: {\n\t\tsm: { [compVars.borderRadius]: globalRefs.radius.sm },\n\t\tmd: { [compVars.borderRadius]: globalRefs.radius.md },\n\t\tlg: { [compVars.borderRadius]: globalRefs.radius.lg },\n\t\txl: { [compVars.borderRadius]: globalRefs.radius.xl },\n\t\t'2xl': { [compVars.borderRadius]: globalRefs.radius['2xl'] },\n\t\t'3xl': { [compVars.borderRadius]: globalRefs.radius['3xl'] },\n\t}\n};\n\nexport default container;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","import { compose } from '../helpers';\nimport { componentNameValidationMixin, createStyleMixin, draggableMixin } from '../mixins';\nimport { createBaseClass } from './createBaseClass';\n\nlet style;\nconst getContent = () => style;\nexport const createCssVarImageClass = ({ componentName, varName, fallbackVarName }) => {\n\tclass RawCssVarImageClass extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t\t<style>\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-flex;\n\t\t\t\t}\n\t\t\t\t:host([draggable=\"true\"]) > div {\n\t\t\t\t\tpointer-events: none\n\t\t\t\t}\t\t\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\tmax-width: 100%;\n\t\t\t\t\tmax-height: 100%;\n\t\t\t\t\tobject-fit: contain;\n\t\t\t\t\tmargin: auto;\n\t\t\t\t\t${getContent()}\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<div></div>\n\t\t\t`;\n\t\t}\n\t}\n\n\tconst CssVarImageClass = compose(\n\t\tcreateStyleMixin({\n\t\t\tmappings: {\n\t\t\t\theight: { selector: () => ':host' },\n\t\t\t\twidth: { selector: () => ':host' },\n\t\t\t\t[varName]: { property: 'content' },\n\t\t\t\t[fallbackVarName]: { property: 'content' },\n\t\t\t}\n\t\t}),\n\t\tdraggableMixin,\n\t\tcomponentNameValidationMixin\n\t)(RawCssVarImageClass);\n\n\tstyle = `content: var(${CssVarImageClass.cssVarList[varName]}, var(${CssVarImageClass.cssVarList[fallbackVarName]}));`\n\n\treturn CssVarImageClass;\n}\n","import { getComponentName } from '../../helpers/componentHelpers';\nimport { createCssVarImageClass } from '../../baseClasses/createCssVarImageClass';\n\nexport const componentName = getComponentName('logo');\n\nexport const LogoClass = createCssVarImageClass({ componentName, varName: 'url', fallbackVarName: 'fallbackUrl' })\n","import { LogoClass } from \"../../components/descope-logo/LogoClass\";\n\nconst vars = LogoClass.cssVarList\n\nconst logo = {\n\t[vars.fallbackUrl]: 'url(https://imgs.descope.com/components/no-logo-placeholder.svg)'\n};\n\nexport default logo;\nexport { vars }\n","import { getComponentName } from '../../helpers/componentHelpers';\nimport { createCssVarImageClass } from '../../baseClasses/createCssVarImageClass';\n\nexport const componentName = getComponentName('totp-image');\n\nexport const TotpImageClass = createCssVarImageClass({ componentName, varName: 'url', fallbackVarName: 'fallbackUrl' })\n","import { TotpImageClass } from \"../../components/descope-totp-image/TotpImageClass\";\n\nconst vars = TotpImageClass.cssVarList\n\nconst logo = {\n\t[vars.fallbackUrl]: 'url(https://app.descope.com/images/99ae31fd143ba38e072d.svg)'\n};\n\nexport default logo;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('text');\n\nclass RawText extends createBaseClass({ componentName, baseSelector: ':host > slot' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t\t:host > slot {\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t</style>\n\t\t<slot></slot>\n\t\t`;\n\t}\n}\n\nexport const TextClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { selector: () => ':host', property: 'width' },\n\t\t\tfontSize: {},\n\t\t\ttextColor: { property: 'color' },\n\t\t\ttextLineHeight: { property: 'line-height' },\n\t\t\ttextLetterSpacing: { property: 'letter-spacing' },\n\t\t\ttextShadow: {},\n\t\t\ttextAlign: {},\n\t\t\ttextTransform: {},\n\t\t\tfontFamily: {},\n\t\t\tfontStyle: {},\n\t\t\tfontWeight: {},\n\t\t\tborderWidth: {},\n\t\t\tborderStyle: {},\n\t\t\tborderColor: {},\n\t\t},\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawText);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { TextClass } from '../../components/descope-text/TextClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextClass.cssVarList;\n\nconst text = {\n\t[vars.textLineHeight]: '1em',\n\t[vars.textAlign]: 'left',\n\t[vars.textColor]: globalRefs.colors.surface.dark,\n\tvariant: {\n\t\th1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h1.font\n\t\t},\n\t\th2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h2.font\n\t\t},\n\t\th3: {\n\t\t\t[vars.fontSize]: globalRefs.typography.h3.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.h3.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.h3.font\n\t\t},\n\t\tsubtitle1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.subtitle1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.subtitle1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.subtitle1.font\n\t\t},\n\t\tsubtitle2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.subtitle2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.subtitle2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.subtitle2.font\n\t\t},\n\t\tbody1: {\n\t\t\t[vars.fontSize]: globalRefs.typography.body1.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.body1.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.body1.font\n\t\t},\n\t\tbody2: {\n\t\t\t[vars.fontSize]: globalRefs.typography.body2.size,\n\t\t\t[vars.fontWeight]: globalRefs.typography.body2.weight,\n\t\t\t[vars.fontFamily]: globalRefs.typography.body2.font\n\t\t}\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.textColor]: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.textColor]: globalRefs.colors.secondary.main\n\t\t},\n\t\terror: {\n\t\t\t[vars.textColor]: globalRefs.colors.error.main\n\t\t},\n\t\tsuccess: {\n\t\t\t[vars.textColor]: globalRefs.colors.success.main\n\t\t}\n\t},\n\n\ttextAlign: {\n\t\tright: { [vars.textAlign]: 'right' },\n\t\tleft: { [vars.textAlign]: 'left' },\n\t\tcenter: { [vars.textAlign]: 'center' }\n\t},\n\n\t_fullWidth: {\n\t\t[vars.hostWidth]: '100%',\n\t},\n\n\t_italic: {\n\t\t[vars.fontStyle]: 'italic'\n\t},\n\n\t_uppercase: {\n\t\t[vars.textTransform]: 'uppercase'\n\t},\n\n\t_lowercase: {\n\t\t[vars.textTransform]: 'lowercase'\n\t}\n};\n\nexport default text;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin,\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { TextClass } from '../descope-text/TextClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('link');\n\nclass RawLink extends createBaseClass({ componentName, baseSelector: ':host a' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t:host a {\n\t\t\tdisplay: inline;\n\t\t\ttext-decoration: none;\n\t\t}\n\t\t:host a:hover {\n\t\t\ttext-decoration: underline;\n\t\t}\n\t\t</style>\n\t\t<div>\n\t\t\t<descope-text>\n\t\t\t\t<a>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</a>\n\t\t\t</descope-text>\n\t\t</div>\n\t\t`;\n\n\t\tforwardAttrs(this, this.shadowRoot.querySelector('a'), {\n\t\t\tincludeAttrs: ['href', 'target', 'tooltip'],\n\t\t\tmapAttrs: {\n\t\t\t\ttooltip: 'title'\n\t\t\t}\n\t\t});\n\n\t\tforwardAttrs(this, this.shadowRoot.querySelector('descope-text'), {\n\t\t\tincludeAttrs: ['mode', 'variant'],\n\t\t});\n\t}\n}\n\nconst selectors = {\n\thost: { selector: () => ':host' },\n\tanchor: {},\n\twrapper: { selector: () => ':host > div' },\n\ttext: { selector: () => TextClass.componentName }\n};\n\nconst { anchor, text, host, wrapper } = selectors;\n\nexport const LinkClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\ttextAlign: wrapper,\n\t\t\ttextColor: [\n\t\t\t\t{ ...anchor, property: 'color' },\n\t\t\t\t{ ...text, property: TextClass.cssVarList.textColor }\n\t\t\t],\n\t\t\tcursor: anchor,\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLink);\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { LinkClass } from '../../components/descope-link/LinkClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LinkClass.cssVarList;\n\nconst link = {\n\t[vars.cursor]: 'pointer',\n\n\t[vars.textUnderlineWidth]: '2px',\n\t[vars.textUnderlineStyle]: 'solid',\n\t[vars.textUnderlineColor]: 'transparent',\n\t[vars.textColor]: globalRefs.colors.primary.main,\n\n\t_hover: {\n\t\t[vars.textUnderlineColor]: globalRefs.colors.primary.main\n\t},\n\n\ttextAlign: {\n\t\tright: { [vars.textAlign]: 'right' },\n\t\tleft: { [vars.textAlign]: 'left' },\n\t\tcenter: { [vars.textAlign]: 'center' }\n\t},\n\n\t_fullWidth: {\n\t\t[vars.hostWidth]: '100%'\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.textColor]: globalRefs.colors.primary.main,\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.textColor]: globalRefs.colors.secondary.main,\n\t\t},\n\t\terror: {\n\t\t\t[vars.textColor]: globalRefs.colors.error.main,\n\t\t},\n\t\tsuccess: {\n\t\t\t[vars.textColor]: globalRefs.colors.success.main,\n\t\t}\n\t}\n};\n\nexport default link;\nexport { vars }","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('divider');\nclass RawDivider extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t\t<style>\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t}\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\theight: 100%;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t}\n\t\t\t\t:host > div::before,\n\t\t\t\t:host > div::after {\n\t\t\t\t\tcontent: '';\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t\tdescope-text {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t\tflex-shrink: 0;\n\t\t\t\t}\n\t\t\t\t:host(:empty) descope-text {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t\t:host([vertical=\"true\"]) div {\n\t\t\t\t\twidth: fit-content;\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<div>\n\t\t\t\t<descope-text>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</descope-text>\n\t\t\t</div>\n\t\t`;\n\n\t\tthis.textComponent = this.shadowRoot.querySelector('descope-text');\n\n\t\tforwardAttrs(this, this.textComponent, {\n\t\t\tincludeAttrs: ['mode', 'variant', 'italic']\n\t\t});\n\t}\n}\n\nconst {\n\thost,\n\tbefore,\n\tafter,\n\ttext,\n} = {\n\thost: { selector: () => ':host' },\n\tbefore: { selector: '::before' },\n\tafter: { selector: '::after' },\n\ttext: { selector: 'descope-text' },\n};\n\nexport const DividerClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostPadding: { ...host, property: 'padding' },\n\n\t\t\tminHeight: {},\n\t\t\talignItems: {},\n\t\t\talignSelf: {},\n\t\t\tflexDirection: {},\n\n\t\t\tlabelTextWidth: { ...text, property: 'width' },\n\t\t\tlabelTextMaxWidth: { ...text, property: 'max-width' },\n\t\t\tlabelTextVerticalSpacing: [\n\t\t\t\t{ ...text, property: 'padding-top' },\n\t\t\t\t{ ...text, property: 'padding-bottom' }\n\t\t\t],\n\t\t\tlabelTextHorizontalSpacing: [\n\t\t\t\t{ ...text, property: 'padding-right' },\n\t\t\t\t{ ...text, property: 'padding-left' }\n\t\t\t],\n\n\t\t\tstripeColor: [\n\t\t\t\t{ ...before, property: 'background-color' },\n\t\t\t\t{ ...after, property: 'background-color' }\n\t\t\t],\n\t\t\tstripeHorizontalThickness: [\n\t\t\t\t{ ...before, property: 'height' },\n\t\t\t\t{ ...after, property: 'height' }\n\t\t\t],\n\t\t\tstripeVerticalThickness: [\n\t\t\t\t{ ...before, property: 'width' },\n\t\t\t\t{ ...after, property: 'width' }\n\t\t\t],\n\t\t\tstripeColorOpacity: [\n\t\t\t\t{ ...before, property: 'opacity' },\n\t\t\t\t{ ...after, property: 'opacity' }\n\t\t\t],\n\t\t},\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawDivider);\n\n","import globals from '../globals';\nimport { componentName, DividerClass } from '../../components/descope-divider/DividerClass';\nimport { createHelperVars, getThemeRefs } from '../../helpers/themeHelpers';\n\nconst globalRefs = getThemeRefs(globals);\nconst compVars = DividerClass.cssVarList;\n\nconst [\n\thelperTheme,\n\thelperRefs,\n\thelperVars\n] = createHelperVars({\n\tthickness: '2px',\n\tspacing: '10px'\n}, componentName);\n\nconst divider = {\n\t...helperTheme,\n\n\t[compVars.alignItems]: 'center',\n\t[compVars.flexDirection]: 'row',\n\t[compVars.alignSelf]: 'stretch',\n\t[compVars.hostWidth]: '100%',\n\t[compVars.stripeColor]: globalRefs.colors.surface.main,\n\t[compVars.stripeColorOpacity]: '0.5',\n\t[compVars.stripeHorizontalThickness]: helperRefs.thickness,\n\t[compVars.labelTextWidth]: 'fit-content',\n\t[compVars.labelTextMaxWidth]: 'calc(100% - 100px)',\n\t[compVars.labelTextHorizontalSpacing]: helperRefs.spacing,\n\n\t_vertical: {\n\t\t[compVars.minHeight]: '200px',\n\t\t[compVars.flexDirection]: 'column',\n\t\t[compVars.hostWidth]: 'fit-content',\n\t\t[compVars.hostPadding]: `0 calc(${helperRefs.thickness} * 3)`,\n\t\t[compVars.stripeVerticalThickness]: helperRefs.thickness,\n\t\t[compVars.labelTextWidth]: 'fit-content',\n\t\t[compVars.labelTextMaxWidth]: '100%',\n\t\t[compVars.labelTextVerticalSpacing]: helperRefs.spacing,\n\t}\n};\n\nexport default divider;\n\nexport const vars = {\n\t...compVars,\n\t...helperVars\n};\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { forwardAttrs, getComponentName } from '../../../helpers/componentHelpers';\nimport { getSanitizedCharacters, focusElement } from './helpers';\n\nexport const componentName = getComponentName('passcode-internal');\n\nconst observedAttributes = [\n\t'digits'\n]\n\nconst forwardAttributes = [\n\t'disabled',\n\t'bordered',\n\t'size',\n\t'invalid',\n\t'readonly'\n]\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' })\n\nclass PasscodeInternal extends BaseInputClass {\n\tstatic get observedAttributes() {\n\t\treturn observedAttributes.concat(BaseInputClass.observedAttributes || []);\n\t}\n\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.innerHTML = `\n\t\t<div class=\"wrapper\"></div>\n\t\t<style>\n\t\t\t.wrapper {\n\t\t\t\tdisplay: flex;\n\t\t\t\twidth: 100%;\n\t\t\t\tjustify-content: space-between;\n\t\t\t}\n\t\t</style>\n\t\t`;\n\n\t\tthis.wrapperEle = this.querySelector('div');\n\t}\n\n\trenderInputs() {\n\t\tconst inputs = [...Array(this.digits).keys()].map((idx) => `\n\t\t<descope-text-field\n\t\t\tdata-id=${idx}\n\t\t\ttype=\"tel\"\n\t\t\tautocomplete=\"one-time-code\"\n\t\t\tinputMode=\"numeric\"\n\t\t></descope-text-field>\n\t`)\n\n\t\tthis.wrapperEle.innerHTML = inputs.join('');\n\n\t\tthis.inputs = Array.from(this.querySelectorAll('descope-text-field'))\n\n\t\tthis.initInputs()\n\t}\n\n\tget digits() {\n\t\treturn Number.parseInt(this.getAttribute('digits')) || 6\n\t}\n\n\tget value() {\n\t\treturn this.inputs?.map(({ value }) => value).join('') || ''\n\t}\n\n\tset value(val) {\n\t\tif (val === this.value) return;\n\n\t\tconst charArr = getSanitizedCharacters(val);\n\n\t\tif (charArr.length) {\n\t\t\tthis.fillDigits(charArr, this.inputs[0]);\n\t\t}\n\t}\n\n\tget pattern() {\n\t\treturn `^$|^\\\\d{${this.digits},}$`\n\t}\n\n\tgetValidity() {\n\t\tif (this.isRequired && !this.value) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\telse if (this.pattern && !new RegExp(this.pattern).test(this.value)) {\n\t\t\treturn { patternMismatch: true };\n\t\t}\n\t\telse {\n\t\t\treturn {}\n\t\t}\n\t};\n\n\tinit() {\n\t\t// we are adding listeners before calling to super because it's stopping the events\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\t// we want to ignore focus events we are dispatching\n\t\t\tif (e.isTrusted)\n\t\t\t\tthis.inputs[0].focus()\n\t\t})\n\n\t\tsuper.init?.();\n\n\t\tthis.renderInputs();\n\t}\n\n\tgetInputIdx(inputEle) {\n\t\treturn Number.parseInt(inputEle.getAttribute('data-id'), 10)\n\t}\n\n\tgetNextInput(currInput) {\n\t\tconst currentIdx = this.getInputIdx(currInput)\n\t\tconst newIdx = Math.min(currentIdx + 1, this.inputs.length - 1)\n\t\treturn this.inputs[newIdx]\n\t}\n\n\tgetPrevInput(currInput) {\n\t\tconst currentIdx = this.getInputIdx(currInput)\n\t\tconst newIdx = Math.max(currentIdx - 1, 0)\n\t\treturn this.inputs[newIdx]\n\t}\n\n\tfillDigits(charArr, currentInput) {\n\t\tfor (let i = 0; i < charArr.length; i += 1) {\n\t\t\tcurrentInput.value = charArr[i] ?? '';\n\n\t\t\tconst nextInput = this.getNextInput(currentInput);\n\n\t\t\tif (nextInput === currentInput) break;\n\t\t\tcurrentInput = nextInput;\n\t\t}\n\n\t\tfocusElement(currentInput);\n\t};\n\n\tinitInputs() {\n\t\tthis.inputs.forEach((input) => {\n\t\t\t// sanitize the input\n\t\t\tinput.addEventListener('input', (e) => {\n\t\t\t\tconst charArr = getSanitizedCharacters(input.value);\n\n\t\t\t\tif (!charArr.length) {\n\t\t\t\t\t// if we got an invalid value we want to clear the input\n\t\t\t\t\tinput.value = '';\n\t\t\t\t}\n\t\t\t\telse this.fillDigits(charArr, input);\n\t\t\t})\n\n\t\t\t// we want backspace to focus on the previous digit\n\t\t\tinput.onkeydown = ({ key }) => {\n\t\t\t\t// when user deletes a digit, we want to focus the previous digit\n\t\t\t\tif (key === 'Backspace') {\n\t\t\t\t\t// if the cursor is at 0, we want to move it to 1, so the value will be deleted\n\t\t\t\t\tif (!input.selectionStart) {\n\t\t\t\t\t\tinput.setSelectionRange(1, 1);\n\t\t\t\t\t}\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tfocusElement(this.getPrevInput(input));\n\t\t\t\t\t});\n\t\t\t\t} else if (key.length === 1) { // we want only characters and not command keys\n\t\t\t\t\tinput.value = ''; // we are clearing the previous value so we can override it with the new value\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tforwardAttrs(this, input, { includeAttrs: forwardAttributes })\n\t\t})\n\n\t\tthis.handleFocusEventsDispatching(this.inputs);\n\t\tthis.handleInputEventDispatching();\n\t}\n\n\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue)\n\n\t\t// sync attributes to inputs\n\t\tif (oldValue !== newValue) {\n\t\t\tif (observedAttributes.includes(attrName)) {\n\t\t\t\tif (attrName === 'digits') {\n\t\t\t\t\tthis.renderInputs();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default PasscodeInternal;\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { componentName as descopeInternalComponentName } from './descope-passcode-internal/PasscodeInternal';\nimport { TextFieldClass } from '../descope-text-field/TextFieldClass'\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { resetInputCursor, resetInputFieldDefaultWidth } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('passcode');\n\nconst observedAttributes = [\n\t'digits'\n];\n\nconst customMixin = (superclass) =>\n\tclass PasscodeMixinClass extends superclass {\n\t\tstatic get observedAttributes() {\n\t\t\treturn observedAttributes.concat(superclass.observedAttributes || []);\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tget digits() {\n\t\t\treturn Number.parseInt(this.getAttribute('digits')) || 6;\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t<${descopeInternalComponentName} \n\t\t\t\tbordered=\"true\" \n\t\t\t\tname=\"code\" \n\t\t\t\ttabindex=\"-1\"\n\t\t\t\tslot=\"input\"\n\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this, this.inputElement, { includeAttrs: ['digits', 'size'] })\n\t\t}\n\n\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n\t\t\tif (attrName === 'digits') {\n\t\t\t\tthis.style.setProperty('--passcode-digits-count', newValue);\n\t\t\t}\n\t\t}\n\t};\n\nconst {\n\thost,\n\tdigitField,\n\tlabel,\n\trequiredIndicator,\n\tinternalWrapper,\n\tfocusedDigitField\n} = {\n\thost: { selector: () => ':host' },\n\tfocusedDigitField: { selector: () => `${TextFieldClass.componentName}[focused=\"true\"]` },\n\tdigitField: { selector: () => TextFieldClass.componentName },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tinternalWrapper: { selector: 'descope-passcode-internal .wrapper' }\n}\n\nconst textVars = TextFieldClass.cssVarList\n\nexport const PasscodeClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [{ ...digitField, property: textVars.fontSize }, host],\n\t\t\thostWidth: { property: 'width' },\n\t\t\tfontFamily: host,\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tdigitValueTextColor: {\n\t\t\t\tselector: TextFieldClass.componentName,\n\t\t\t\tproperty: textVars.inputValueTextColor\n\t\t\t},\n\t\t\tdigitSize: [\n\t\t\t\t{ ...digitField, property: 'height' },\n\t\t\t\t{ ...digitField, property: 'width' }\n\t\t\t],\n\t\t\tdigitPadding: { ...digitField, property: textVars.inputHorizontalPadding },\n\t\t\tdigitTextAlign: { ...digitField, property: textVars.inputTextAlign },\n\t\t\tdigitCaretTextColor: { ...digitField, property: textVars.inputCaretTextColor },\n\t\t\tdigitSpacing: { ...internalWrapper, property: 'gap' },\n\t\t\tdigitOutlineColor: { ...digitField, property: textVars.inputOutlineColor },\n\t\t\tdigitOutlineWidth: { ...digitField, property: textVars.inputOutlineWidth },\n\n\t\t\tfocusedDigitFieldOutlineColor: { ...focusedDigitField, property: textVars.inputOutlineColor }\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tcustomMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: calc(var(--passcode-digits-count) * 2em);\n\t\t\t}\n\t\t\t${resetInputFieldDefaultWidth()}\n\t\t\t:host::after {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\t\t\t:host::part(input-field)::after {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal {\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t\tpadding: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tmin-height: initial;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal .wrapper {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tmin-height: initial;\n\t\t\t\theight: 100%;\n\t\t\t\tjustify-content: space-between;\n\t\t\t}\n\n\t\t\tdescope-passcode-internal descope-text-field {\n\t\t\t\tmin-width: 2em;\n\t\t\t\tmax-width: var(${textVars.inputHeight});\n\t\t\t}\n\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tbackground-color: transparent;\n\t\t\t\tpadding: 0;\n\t\t\t\toverflow: hidden;\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t}\n\n\t\t\tvaadin-text-field {\n\t\t\t\tmargin: 0;\n\t\t\t\tpadding: 0;\n\t\t\t\twidth: 100%\n\t\t\t}\n\n\t\t\tvaadin-text-field::before {\n\t\t\t\theight: 0;\n\t\t\t}\n\n\t\t\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\n\t\t\tvaadin-text-field[readonly]::part(input-field)::after {\n\t\t\t\tborder: 0 solid;\n\t\t\t}\n\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t${resetInputCursor('vaadin-text-field')}\n \t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default PasscodeClass;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { PasscodeClass } from '../../components/descope-passcode/PasscodeClass';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = PasscodeClass.cssVarList\n\nconst passcode = {\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.digitValueTextColor]: refs.valueTextColor,\n\t[vars.digitPadding]: '0',\n\t[vars.digitTextAlign]: 'center',\n\t[vars.digitSpacing]: '0',\n\t[vars.hostWidth]: refs.width,\n\t[vars.digitOutlineColor]: 'transparent',\n\t[vars.digitOutlineWidth]: refs.outlineWidth,\n\t[vars.focusedDigitFieldOutlineColor]: refs.outlineColor,\n\t[vars.digitSize]: refs.inputHeight,\n\n\t_hideCursor: {\n\t\t[vars.digitCaretTextColor]: 'transparent',\n\t}\n}\n\nexport default passcode;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('loader-linear');\n\nclass RawLoaderLinear extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t@keyframes tilt {\n\t\t\t\t0% { transform: translateX(0); }\n\t\t\t\t50% { transform: translateX(400%); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t\tdiv::after {\n\t\t\t\tcontent: '';\n\t\t\t\tanimation-name: tilt;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t`;\n\t}\n}\n\nconst selectors = {\n\tafter: { selector: '::after' },\n\thost: { selector: () => ':host' }\n};\n\nconst { after, host } = selectors;\n\nexport const LoaderLinearClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostDisplay: {},\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\tbarHeight: [\n\t\t\t\t{ property: 'height' },\n\t\t\t\t{ ...after, property: 'height' }\n\t\t\t],\n\t\t\tbarBorderRadius: [\n\t\t\t\t{ property: 'border-radius' },\n\t\t\t\t{ ...after, property: 'border-radius' }\n\t\t\t],\n\t\t\tbarBackgroundColor: { property: 'background-color' },\n\t\t\tbarColor: { ...after, property: 'background-color' },\n\t\t\tbarWidth: { ...after, property: 'width' },\n\t\t\tanimationDuration: [{}, after],\n\t\t\tanimationTimingFunction: [{}, after],\n\t\t\tanimationIterationCount: [{}, after]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLoaderLinear);\n","import globals from '../../globals';\nimport { getThemeRefs } from '../../../helpers/themeHelpers';\nimport { LoaderLinearClass } from '../../../components/descope-loader-linear/LoaderLinearClass';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LoaderLinearClass.cssVarList;\n\nconst loaderLinear = {\n\t[vars.hostDisplay]: 'inline-block',\n\t[vars.hostWidth]: '100%',\n\n\t[vars.barColor]: globalRefs.colors.surface.contrast,\n\t[vars.barWidth]: '20%',\n\n\t[vars.barBackgroundColor]: globalRefs.colors.surface.main,\n\t[vars.barBorderRadius]: '4px',\n\n\t[vars.animationDuration]: '2s',\n\t[vars.animationTimingFunction]: 'linear',\n\t[vars.animationIterationCount]: 'infinite',\n\n\tsize: {\n\t\txs: { [vars.barHeight]: '8px' },\n\t\tsm: { [vars.barHeight]: '10px' },\n\t\tmd: { [vars.barHeight]: '14px' },\n\t\tlg: { [vars.barHeight]: '20px' },\n\t\txl: { [vars.barHeight]: '25px' }\n\t},\n\n\tmode: {\n\t\tprimary: {\n\t\t\t[vars.barColor]: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.barColor]: globalRefs.colors.secondary.main\n\t\t}\n\t},\n\n\t_hidden: {\n\t\t[vars.hostDisplay]: 'none'\n\t}\n};\n\nexport default loaderLinear;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('loader-radial');\n\nclass RawLoaderRadial extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t@keyframes spin {\n\t\t\t\t0% { transform: rotate(0deg); }\n\t\t\t\t100% { transform: rotate(360deg); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\tanimation-name: spin;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t`;\n\t}\n}\n\nexport const LoaderRadialClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostDisplay: { property: 'display' },\n\t\t\tspinnerSize: [\n\t\t\t\t{ property: 'width' },\n\t\t\t\t{ property: 'height' }\n\t\t\t],\n\t\t\tspinnerBorderWidth: { property: 'border-width' },\n\t\t\tspinnerBorderStyle: { property: 'border-style' },\n\t\t\tspinnerBorderRadius: { property: 'border-radius' },\n\t\t\tspinnerQuadrant1Color: { property: 'border-top-color' },\n\t\t\tspinnerQuadrant2Color: { property: 'border-bottom-color' },\n\t\t\tspinnerQuadrant3Color: { property: 'border-right-color' },\n\t\t\tspinnerQuadrant4Color: { property: 'border-left-color' },\n\t\t\tanimationDuration: {},\n\t\t\tanimationTimingFunction: {},\n\t\t\tanimationIterationCount: {}\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLoaderRadial);\n","import globals from '../../globals';\nimport { LoaderRadialClass, componentName } from '../../../components/descope-loader-radial/LoaderRadialClass';\nimport { createHelperVars, getThemeRefs } from '../../../helpers/themeHelpers';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = LoaderRadialClass.cssVarList;\n\nconst [helperTheme, helperRefs] = createHelperVars({\n\tspinnerColor: globalRefs.colors.surface.contrast,\n\tmode: {\n\t\tprimary: {\n\t\t\tspinnerColor: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\tspinnerColor: globalRefs.colors.secondary.main\n\t\t}\n\t}\n}, componentName);\n\nconst loaderRadial = {\n\t...helperTheme,\n\n\t[vars.animationDuration]: '2s',\n\t[vars.animationTimingFunction]: 'linear',\n\t[vars.animationIterationCount]: 'infinite',\n\t[vars.spinnerBorderStyle]: 'solid',\n\t[vars.spinnerBorderWidth]: '0.2em',\n\t[vars.spinnerBorderRadius]: '50%',\n\t[vars.spinnerQuadrant1Color]: helperRefs.spinnerColor,\n\t[vars.spinnerQuadrant2Color]: 'transparent',\n\t[vars.spinnerQuadrant3Color]: helperRefs.spinnerColor,\n\t[vars.spinnerQuadrant4Color]: 'transparent',\n\n\tsize: {\n\t\txs: { [vars.spinnerSize]: '20px' },\n\t\tsm: { [vars.spinnerSize]: '30px' },\n\t\tmd: { [vars.spinnerSize]: '40px' },\n\t\tlg: { [vars.spinnerSize]: '60px' },\n\t\txl: { [vars.spinnerSize]: '80px' }\n\t},\n\n\t_hidden: {\n\t\t[vars.hostDisplay]: 'none'\n\t}\n};\n\nexport default loaderRadial;\nexport { vars }\n","import { compose } from '../../helpers';\nimport { getComponentName, observeChildren } from '../../helpers/componentHelpers';\nimport { resetInputCursor, resetInputPlaceholder, resetInputReadonlyStyle, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\nimport {\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcomponentNameValidationMixin,\n\tportalMixin,\n\tproxyInputMixin\n} from '../../mixins';\n\nexport const componentName = getComponentName('combo-box');\n\nconst ComboBoxMixin = (superclass) => class ComboBoxMixinClass extends superclass {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t// vaadin api is to set props on their combo box node, \n\t// in order to avoid it, we are passing the children of this component\n\t// to the items & renderer props, so it will be used as the combo box items\n\t#onChildrenChange() {\n\t\tconst baseElement = this.shadowRoot.querySelector(this.baseSelector)\n\t\tconst items = Array.from(this.children)\n\n\t\t// we want the data-name attribute to be accessible as an object attribute\n\t\tif (items.length) {\n\t\t\titems.forEach((node) => {\n\t\t\t\tObject.defineProperty(node, 'data-name', {\n\t\t\t\t\tvalue: node.getAttribute('data-name'),\n\t\t\t\t})\n\t\t\t\tObject.defineProperty(node, 'data-id', {\n\t\t\t\t\tvalue: node.getAttribute('data-id')\n\t\t\t\t})\n\t\t\t});\n\n\t\t\tbaseElement.items = items;\n\n\t\t\tbaseElement.renderer = (root, combo, model) => {\n\t\t\t\troot.innerHTML = model.item.outerHTML;\n\t\t\t};\n\t\t}\n\t}\n\n\t// the default vaadin behavior is to attach the overlay to the body when opened\n\t// we do not want that because it's difficult to style the overlay in this way\n\t// so we override it to open inside the shadow DOM\n\t#overrideOverlaySettings() {\n\t\tconst overlay = this.baseElement.shadowRoot.querySelector('vaadin-combo-box-overlay')\n\n\t\toverlay._attachOverlay = function () { this.bringToFront(); }\n\t\toverlay._detachOverlay = function () { }\n\t\toverlay._enterModalState = function () { }\n\t}\n\n\tinit() {\n\t\tsuper.init?.()\n\n\t\tthis.#overrideOverlaySettings();\n\t\tobserveChildren(this, this.#onChildrenChange.bind(this));\n\t}\n}\n\nconst {\n\thost,\n\tinputField,\n\tinputElement,\n\tplaceholder,\n\ttoggle,\n\tlabel,\n\trequiredIndicator,\n\thelperText,\n\terrorMessage\n} = {\n\thost: { selector: () => ':host' },\n\tinputField: { selector: '::part(input-field)' },\n\tinputElement: { selector: 'input' },\n\tplaceholder: { selector: '> input:placeholder-shown' },\n\ttoggle: { selector: '::part(toggle-button)' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\n// const { slotted, selected } = {\n// \tslotted: { selector: () => '::slotted(*)' },\n// \tselected: { selector: () => '::slotted([selected])' }\n// }\n\nexport const ComboBoxClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\t// we apply font-size also on the host so we can set its width with em\n\t\t\tfontSize: [\n\t\t\t\t{},\n\t\t\t\thost,\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\tplaceholder,\n\t\t\t\tinputField,\n\t\t\t\thelperText,\n\t\t\t\terrorMessage\n\t\t\t],\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' }\n\t\t\t],\n\t\t\tinputHeight: { ...inputField, property: 'height' },\n\t\t\tinputBackgroundColor: { ...inputField, property: 'background-color' },\n\t\t\tinputBorderColor: { ...inputField, property: 'border-color' },\n\t\t\tinputBorderWidth: { ...inputField, property: 'border-width' },\n\t\t\tinputBorderStyle: { ...inputField, property: 'border-style' },\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\t\t\tinputValueTextColor: { ...inputField, property: 'color' },\n\t\t\tinputPlaceholderTextColor: { ...placeholder, property: 'color' },\n\t\t\tinputDropdownButtonCursor: { ...toggle, property: 'cursor' },\n\t\t\tinputDropdownButtonColor: { ...toggle, property: 'color' },\n\t\t\tinputDropdownButtonSize: { ...toggle, property: 'font-size' },\n\t\t\tinputDropdownButtonOffset: [\n\t\t\t\t{ ...toggle, property: 'margin-right' },\n\t\t\t\t{ ...toggle, property: 'margin-left' },\n\t\t\t],\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t\tinputHorizontalPadding: [\n\t\t\t\t{ ...inputElement, property: 'padding-left' },\n\t\t\t\t{ ...inputElement, property: 'padding-right' }\n\t\t\t],\n\n\t\t\t// we need to use the variables from the portal mixin\n\t\t\t// so we need to use an arrow function on the selector\n\t\t\t// for that to work, because ComboBox is not available\n\t\t\t// at this time.\n\t\t\toverlayBackground: { property: () => ComboBoxClass.cssVarList.overlay.backgroundColor },\n\t\t\toverlayBorder: { property: () => ComboBoxClass.cssVarList.overlay.border }\n\t\t}\n\t}),\n\tdraggableMixin,\n\tportalMixin({\n\t\tname: 'overlay',\n\t\tselector: '',\n\t\tmappings: {\n\t\t\tbackgroundColor: { selector: 'vaadin-combo-box-scroller' },\n\t\t\tcursor: { selector: 'vaadin-combo-box-item' }, // TODO: this mapping doesn't work, needs fixing.\n\t\t\tminHeight: { selector: 'vaadin-combo-box-overlay' },\n\t\t\tmargin: { selector: 'vaadin-combo-box-overlay' },\n\t\t\tfontFamily: { selector: 'vaadin-combo-box-item' }\n\t\t},\n\t\tforward: {\n\t\t\tinclude: false,\n\t\t\tattributes: ['size']\n\t\t},\n\t}),\n\tproxyInputMixin,\n\tcomponentNameValidationMixin,\n\tComboBoxMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix'],\n\t\twrappedEleName: 'vaadin-combo-box',\n\t\tstyle: () => `\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tbox-sizing: border-box;\n\t\t\t-webkit-mask-image: none;\n\t\t}\n\t\t${useHostExternalPadding(ComboBoxClass.cssVarList)}\n\t\t${resetInputReadonlyStyle('vaadin-combo-box')}\n\t\t${resetInputPlaceholder('vaadin-combo-box')}\n\t\t${resetInputCursor('vaadin-combo-box')}\n\t\t\n\t\tvaadin-combo-box {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t\tvaadin-combo-box::before {\n\t\t\theight: initial;\n\t\t}\n\t\tvaadin-combo-box [slot=\"input\"] {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tvaadin-combo-box::part(input-field) {\n\t\t\tpadding: 0;\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t`,\n\t\t// Note: we exclude `size` to avoid overriding Vaadin's ComboBox property\n\t\t// with the same name. Including it will cause Vaadin to calculate NaN size,\n\t\t// and reset items to an empty array, and opening the list box with no items\n\t\t// to display.\n\t\texcludeAttrsSync: ['tabindex', 'size'],\n\t\tcomponentName,\n\t\tincludeForwardProps: ['items', 'renderer', 'selectedItem']\n\t})\n);\n\n","import globals from '../globals';\nimport { ComboBoxClass } from '../../components/descope-combo-box/ComboBoxClass';\nimport { getThemeRefs } from '../../helpers/themeHelpers';\nimport { refs } from './inputWrapper';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = ComboBoxClass.cssVarList;\n\nexport const comboBox = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBackgroundColor]: refs.backgroundColor,\n\t[vars.inputHorizontalPadding]: refs.horizontalPadding,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.inputDropdownButtonColor]: globalRefs.colors.surface.contrast,\n\t[vars.inputDropdownButtonCursor]: 'pointer',\n\t[vars.inputDropdownButtonSize]: refs.toggleButtonSize,\n\t[vars.inputDropdownButtonOffset]: globalRefs.spacing.xs,\n\n\t_readonly: {\n\t\t[vars.inputDropdownButtonCursor]: 'default'\n\t},\n\n\t[vars.overlay.minHeight]: '400px',\n\t[vars.overlay.margin]: '0 auto'\n\n\t// [vars.overlayCursor]: 'pointer',\n\t// [vars.overlayBackground]: globalRefs.colors.surface.light,\n\t// [vars.overlayBorder]: `2px solid red`,\n};\n\nexport default comboBox;\nexport { vars }\n","import {\n\tcreateStyleMixin,\n\tdraggableMixin,\n} from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\n\nconst observedAttributes = ['src', 'alt']\n\nexport const componentName = getComponentName('image');\n\nconst BaseClass = createBaseClass({ componentName, baseSelector: ':host > img' })\nclass RawImage extends BaseClass {\n\tstatic get observedAttributes() {\n\t\treturn observedAttributes.concat(BaseClass.observedAttributes || []);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<style>\n\t\t\t:host > img {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t</style>\n\t\t<img/>\n\t`;\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback?.();\n\n\t\tforwardAttrs(this, this.baseElement, { includeAttrs: observedAttributes })\n\t}\n}\n\nexport const ImageClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\theight: { selector: () => ':host' },\n\t\t\twidth: { selector: () => ':host' },\n\t\t}\n\t}),\n\tdraggableMixin,\n)(RawImage);\n","import { ImageClass } from \"../../components/descope-image/ImageClass\";\n\nconst vars = ImageClass.cssVarList\n\nconst image = {};\n\nexport default image;\nexport { vars }\n","export default [\n\t{\n\t\tname: 'Afghanistan',\n\t\tdialCode: '+93',\n\t\tcode: 'AF'\n\t},\n\t{\n\t\tname: 'Aland Islands',\n\t\tdialCode: '+358',\n\t\tcode: 'AX'\n\t},\n\t{\n\t\tname: 'Albania',\n\t\tdialCode: '+355',\n\t\tcode: 'AL'\n\t},\n\t{\n\t\tname: 'Algeria',\n\t\tdialCode: '+213',\n\t\tcode: 'DZ'\n\t},\n\t{\n\t\tname: 'AmericanSamoa',\n\t\tdialCode: '+1684',\n\t\tcode: 'AS'\n\t},\n\t{\n\t\tname: 'Andorra',\n\t\tdialCode: '+376',\n\t\tcode: 'AD'\n\t},\n\t{\n\t\tname: 'Angola',\n\t\tdialCode: '+244',\n\t\tcode: 'AO'\n\t},\n\t{\n\t\tname: 'Anguilla',\n\t\tdialCode: '+1264',\n\t\tcode: 'AI'\n\t},\n\t{\n\t\tname: 'Antarctica',\n\t\tdialCode: '+672',\n\t\tcode: 'AQ'\n\t},\n\t{\n\t\tname: 'Antigua and Barbuda',\n\t\tdialCode: '+1268',\n\t\tcode: 'AG'\n\t},\n\t{\n\t\tname: 'Argentina',\n\t\tdialCode: '+54',\n\t\tcode: 'AR'\n\t},\n\t{\n\t\tname: 'Armenia',\n\t\tdialCode: '+374',\n\t\tcode: 'AM'\n\t},\n\t{\n\t\tname: 'Aruba',\n\t\tdialCode: '+297',\n\t\tcode: 'AW'\n\t},\n\t{\n\t\tname: 'Australia',\n\t\tdialCode: '+61',\n\t\tcode: 'AU'\n\t},\n\t{\n\t\tname: 'Austria',\n\t\tdialCode: '+43',\n\t\tcode: 'AT'\n\t},\n\t{\n\t\tname: 'Azerbaijan',\n\t\tdialCode: '+994',\n\t\tcode: 'AZ'\n\t},\n\t{\n\t\tname: 'Bahamas',\n\t\tdialCode: '+1242',\n\t\tcode: 'BS'\n\t},\n\t{\n\t\tname: 'Bahrain',\n\t\tdialCode: '+973',\n\t\tcode: 'BH'\n\t},\n\t{\n\t\tname: 'Bangladesh',\n\t\tdialCode: '+880',\n\t\tcode: 'BD'\n\t},\n\t{\n\t\tname: 'Barbados',\n\t\tdialCode: '+1246',\n\t\tcode: 'BB'\n\t},\n\t{\n\t\tname: 'Belarus',\n\t\tdialCode: '+375',\n\t\tcode: 'BY'\n\t},\n\t{\n\t\tname: 'Belgium',\n\t\tdialCode: '+32',\n\t\tcode: 'BE'\n\t},\n\t{\n\t\tname: 'Belize',\n\t\tdialCode: '+501',\n\t\tcode: 'BZ'\n\t},\n\t{\n\t\tname: 'Benin',\n\t\tdialCode: '+229',\n\t\tcode: 'BJ'\n\t},\n\t{\n\t\tname: 'Bermuda',\n\t\tdialCode: '+1441',\n\t\tcode: 'BM'\n\t},\n\t{\n\t\tname: 'Bhutan',\n\t\tdialCode: '+975',\n\t\tcode: 'BT'\n\t},\n\t{\n\t\tname: 'Bolivia, Plurinational State of',\n\t\tdialCode: '+591',\n\t\tcode: 'BO'\n\t},\n\t{\n\t\tname: 'Bosnia and Herzegovina',\n\t\tdialCode: '+387',\n\t\tcode: 'BA'\n\t},\n\t{\n\t\tname: 'Botswana',\n\t\tdialCode: '+267',\n\t\tcode: 'BW'\n\t},\n\t{\n\t\tname: 'Brazil',\n\t\tdialCode: '+55',\n\t\tcode: 'BR'\n\t},\n\t{\n\t\tname: 'British Indian Ocean Territory',\n\t\tdialCode: '+246',\n\t\tcode: 'IO'\n\t},\n\t{\n\t\tname: 'Brunei Darussalam',\n\t\tdialCode: '+673',\n\t\tcode: 'BN'\n\t},\n\t{\n\t\tname: 'Bulgaria',\n\t\tdialCode: '+359',\n\t\tcode: 'BG'\n\t},\n\t{\n\t\tname: 'Burkina Faso',\n\t\tdialCode: '+226',\n\t\tcode: 'BF'\n\t},\n\t{\n\t\tname: 'Burundi',\n\t\tdialCode: '+257',\n\t\tcode: 'BI'\n\t},\n\t{\n\t\tname: 'Cambodia',\n\t\tdialCode: '+855',\n\t\tcode: 'KH'\n\t},\n\t{\n\t\tname: 'Cameroon',\n\t\tdialCode: '+237',\n\t\tcode: 'CM'\n\t},\n\t{\n\t\tname: 'Canada',\n\t\tdialCode: '+1',\n\t\tcode: 'CA'\n\t},\n\t{\n\t\tname: 'Cape Verde',\n\t\tdialCode: '+238',\n\t\tcode: 'CV'\n\t},\n\t{\n\t\tname: 'Cayman Islands',\n\t\tdialCode: '+345',\n\t\tcode: 'KY'\n\t},\n\t{\n\t\tname: 'Central African Republic',\n\t\tdialCode: '+236',\n\t\tcode: 'CF'\n\t},\n\t{\n\t\tname: 'Chad',\n\t\tdialCode: '+235',\n\t\tcode: 'TD'\n\t},\n\t{\n\t\tname: 'Chile',\n\t\tdialCode: '+56',\n\t\tcode: 'CL'\n\t},\n\t{\n\t\tname: 'China',\n\t\tdialCode: '+86',\n\t\tcode: 'CN'\n\t},\n\t{\n\t\tname: 'Christmas Island',\n\t\tdialCode: '+61',\n\t\tcode: 'CX'\n\t},\n\t{\n\t\tname: 'Cocos (Keeling) Islands',\n\t\tdialCode: '+61',\n\t\tcode: 'CC'\n\t},\n\t{\n\t\tname: 'Colombia',\n\t\tdialCode: '+57',\n\t\tcode: 'CO'\n\t},\n\t{\n\t\tname: 'Comoros',\n\t\tdialCode: '+269',\n\t\tcode: 'KM'\n\t},\n\t{\n\t\tname: 'Congo',\n\t\tdialCode: '+242',\n\t\tcode: 'CG'\n\t},\n\t{\n\t\tname: 'Congo, The Democratic Republic of the Congo',\n\t\tdialCode: '+243',\n\t\tcode: 'CD'\n\t},\n\t{\n\t\tname: 'Cook Islands',\n\t\tdialCode: '+682',\n\t\tcode: 'CK'\n\t},\n\t{\n\t\tname: 'Costa Rica',\n\t\tdialCode: '+506',\n\t\tcode: 'CR'\n\t},\n\t{\n\t\tname: \"Cote d'Ivoire\",\n\t\tdialCode: '+225',\n\t\tcode: 'CI'\n\t},\n\t{\n\t\tname: 'Croatia',\n\t\tdialCode: '+385',\n\t\tcode: 'HR'\n\t},\n\t{\n\t\tname: 'Cuba',\n\t\tdialCode: '+53',\n\t\tcode: 'CU'\n\t},\n\t{\n\t\tname: 'Cyprus',\n\t\tdialCode: '+357',\n\t\tcode: 'CY'\n\t},\n\t{\n\t\tname: 'Czech Republic',\n\t\tdialCode: '+420',\n\t\tcode: 'CZ'\n\t},\n\t{\n\t\tname: 'Denmark',\n\t\tdialCode: '+45',\n\t\tcode: 'DK'\n\t},\n\t{\n\t\tname: 'Djibouti',\n\t\tdialCode: '+253',\n\t\tcode: 'DJ'\n\t},\n\t{\n\t\tname: 'Dominica',\n\t\tdialCode: '+1767',\n\t\tcode: 'DM'\n\t},\n\t{\n\t\tname: 'Dominican Republic',\n\t\tdialCode: '+1849',\n\t\tcode: 'DO'\n\t},\n\t{\n\t\tname: 'Ecuador',\n\t\tdialCode: '+593',\n\t\tcode: 'EC'\n\t},\n\t{\n\t\tname: 'Egypt',\n\t\tdialCode: '+20',\n\t\tcode: 'EG'\n\t},\n\t{\n\t\tname: 'El Salvador',\n\t\tdialCode: '+503',\n\t\tcode: 'SV'\n\t},\n\t{\n\t\tname: 'Equatorial Guinea',\n\t\tdialCode: '+240',\n\t\tcode: 'GQ'\n\t},\n\t{\n\t\tname: 'Eritrea',\n\t\tdialCode: '+291',\n\t\tcode: 'ER'\n\t},\n\t{\n\t\tname: 'Estonia',\n\t\tdialCode: '+372',\n\t\tcode: 'EE'\n\t},\n\t{\n\t\tname: 'Ethiopia',\n\t\tdialCode: '+251',\n\t\tcode: 'ET'\n\t},\n\t{\n\t\tname: 'Falkland Islands (Malvinas)',\n\t\tdialCode: '+500',\n\t\tcode: 'FK'\n\t},\n\t{\n\t\tname: 'Faroe Islands',\n\t\tdialCode: '+298',\n\t\tcode: 'FO'\n\t},\n\t{\n\t\tname: 'Fiji',\n\t\tdialCode: '+679',\n\t\tcode: 'FJ'\n\t},\n\t{\n\t\tname: 'Finland',\n\t\tdialCode: '+358',\n\t\tcode: 'FI'\n\t},\n\t{\n\t\tname: 'France',\n\t\tdialCode: '+33',\n\t\tcode: 'FR'\n\t},\n\t{\n\t\tname: 'French Guiana',\n\t\tdialCode: '+594',\n\t\tcode: 'GF'\n\t},\n\t{\n\t\tname: 'French Polynesia',\n\t\tdialCode: '+689',\n\t\tcode: 'PF'\n\t},\n\t{\n\t\tname: 'Gabon',\n\t\tdialCode: '+241',\n\t\tcode: 'GA'\n\t},\n\t{\n\t\tname: 'Gambia',\n\t\tdialCode: '+220',\n\t\tcode: 'GM'\n\t},\n\t{\n\t\tname: 'Georgia',\n\t\tdialCode: '+995',\n\t\tcode: 'GE'\n\t},\n\t{\n\t\tname: 'Germany',\n\t\tdialCode: '+49',\n\t\tcode: 'DE'\n\t},\n\t{\n\t\tname: 'Ghana',\n\t\tdialCode: '+233',\n\t\tcode: 'GH'\n\t},\n\t{\n\t\tname: 'Gibraltar',\n\t\tdialCode: '+350',\n\t\tcode: 'GI'\n\t},\n\t{\n\t\tname: 'Greece',\n\t\tdialCode: '+30',\n\t\tcode: 'GR'\n\t},\n\t{\n\t\tname: 'Greenland',\n\t\tdialCode: '+299',\n\t\tcode: 'GL'\n\t},\n\t{\n\t\tname: 'Grenada',\n\t\tdialCode: '+1473',\n\t\tcode: 'GD'\n\t},\n\t{\n\t\tname: 'Guadeloupe',\n\t\tdialCode: '+590',\n\t\tcode: 'GP'\n\t},\n\t{\n\t\tname: 'Guam',\n\t\tdialCode: '+1671',\n\t\tcode: 'GU'\n\t},\n\t{\n\t\tname: 'Guatemala',\n\t\tdialCode: '+502',\n\t\tcode: 'GT'\n\t},\n\t{\n\t\tname: 'Guernsey',\n\t\tdialCode: '+44',\n\t\tcode: 'GG'\n\t},\n\t{\n\t\tname: 'Guinea',\n\t\tdialCode: '+224',\n\t\tcode: 'GN'\n\t},\n\t{\n\t\tname: 'Guinea-Bissau',\n\t\tdialCode: '+245',\n\t\tcode: 'GW'\n\t},\n\t{\n\t\tname: 'Guyana',\n\t\tdialCode: '+595',\n\t\tcode: 'GY'\n\t},\n\t{\n\t\tname: 'Haiti',\n\t\tdialCode: '+509',\n\t\tcode: 'HT'\n\t},\n\t{\n\t\tname: 'Holy See (Vatican City State)',\n\t\tdialCode: '+379',\n\t\tcode: 'VA'\n\t},\n\t{\n\t\tname: 'Honduras',\n\t\tdialCode: '+504',\n\t\tcode: 'HN'\n\t},\n\t{\n\t\tname: 'Hong Kong',\n\t\tdialCode: '+852',\n\t\tcode: 'HK'\n\t},\n\t{\n\t\tname: 'Hungary',\n\t\tdialCode: '+36',\n\t\tcode: 'HU'\n\t},\n\t{\n\t\tname: 'Iceland',\n\t\tdialCode: '+354',\n\t\tcode: 'IS'\n\t},\n\t{\n\t\tname: 'India',\n\t\tdialCode: '+91',\n\t\tcode: 'IN'\n\t},\n\t{\n\t\tname: 'Indonesia',\n\t\tdialCode: '+62',\n\t\tcode: 'ID'\n\t},\n\t{\n\t\tname: 'Iran, Islamic Republic of Persian Gulf',\n\t\tdialCode: '+98',\n\t\tcode: 'IR'\n\t},\n\t{\n\t\tname: 'Iraq',\n\t\tdialCode: '+964',\n\t\tcode: 'IQ'\n\t},\n\t{\n\t\tname: 'Ireland',\n\t\tdialCode: '+353',\n\t\tcode: 'IE'\n\t},\n\t{\n\t\tname: 'Isle of Man',\n\t\tdialCode: '+44',\n\t\tcode: 'IM'\n\t},\n\t{\n\t\tname: 'Israel',\n\t\tdialCode: '+972',\n\t\tcode: 'IL'\n\t},\n\t{\n\t\tname: 'Italy',\n\t\tdialCode: '+39',\n\t\tcode: 'IT'\n\t},\n\t{\n\t\tname: 'Jamaica',\n\t\tdialCode: '+1876',\n\t\tcode: 'JM'\n\t},\n\t{\n\t\tname: 'Japan',\n\t\tdialCode: '+81',\n\t\tcode: 'JP'\n\t},\n\t{\n\t\tname: 'Jersey',\n\t\tdialCode: '+44',\n\t\tcode: 'JE'\n\t},\n\t{\n\t\tname: 'Jordan',\n\t\tdialCode: '+962',\n\t\tcode: 'JO'\n\t},\n\t{\n\t\tname: 'Kazakhstan',\n\t\tdialCode: '+77',\n\t\tcode: 'KZ'\n\t},\n\t{\n\t\tname: 'Kenya',\n\t\tdialCode: '+254',\n\t\tcode: 'KE'\n\t},\n\t{\n\t\tname: 'Kiribati',\n\t\tdialCode: '+686',\n\t\tcode: 'KI'\n\t},\n\t{\n\t\tname: \"Korea, Democratic People's Republic of Korea\",\n\t\tdialCode: '+850',\n\t\tcode: 'KP'\n\t},\n\t{\n\t\tname: 'Korea, Republic of South Korea',\n\t\tdialCode: '+82',\n\t\tcode: 'KR'\n\t},\n\t{\n\t\tname: 'Kuwait',\n\t\tdialCode: '+965',\n\t\tcode: 'KW'\n\t},\n\t{\n\t\tname: 'Kyrgyzstan',\n\t\tdialCode: '+996',\n\t\tcode: 'KG'\n\t},\n\t{\n\t\tname: 'Laos',\n\t\tdialCode: '+856',\n\t\tcode: 'LA'\n\t},\n\t{\n\t\tname: 'Latvia',\n\t\tdialCode: '+371',\n\t\tcode: 'LV'\n\t},\n\t{\n\t\tname: 'Lebanon',\n\t\tdialCode: '+961',\n\t\tcode: 'LB'\n\t},\n\t{\n\t\tname: 'Lesotho',\n\t\tdialCode: '+266',\n\t\tcode: 'LS'\n\t},\n\t{\n\t\tname: 'Liberia',\n\t\tdialCode: '+231',\n\t\tcode: 'LR'\n\t},\n\t{\n\t\tname: 'Libyan Arab Jamahiriya',\n\t\tdialCode: '+218',\n\t\tcode: 'LY'\n\t},\n\t{\n\t\tname: 'Liechtenstein',\n\t\tdialCode: '+423',\n\t\tcode: 'LI'\n\t},\n\t{\n\t\tname: 'Lithuania',\n\t\tdialCode: '+370',\n\t\tcode: 'LT'\n\t},\n\t{\n\t\tname: 'Luxembourg',\n\t\tdialCode: '+352',\n\t\tcode: 'LU'\n\t},\n\t{\n\t\tname: 'Macao',\n\t\tdialCode: '+853',\n\t\tcode: 'MO'\n\t},\n\t{\n\t\tname: 'Macedonia',\n\t\tdialCode: '+389',\n\t\tcode: 'MK'\n\t},\n\t{\n\t\tname: 'Madagascar',\n\t\tdialCode: '+261',\n\t\tcode: 'MG'\n\t},\n\t{\n\t\tname: 'Malawi',\n\t\tdialCode: '+265',\n\t\tcode: 'MW'\n\t},\n\t{\n\t\tname: 'Malaysia',\n\t\tdialCode: '+60',\n\t\tcode: 'MY'\n\t},\n\t{\n\t\tname: 'Maldives',\n\t\tdialCode: '+960',\n\t\tcode: 'MV'\n\t},\n\t{\n\t\tname: 'Mali',\n\t\tdialCode: '+223',\n\t\tcode: 'ML'\n\t},\n\t{\n\t\tname: 'Malta',\n\t\tdialCode: '+356',\n\t\tcode: 'MT'\n\t},\n\t{\n\t\tname: 'Marshall Islands',\n\t\tdialCode: '+692',\n\t\tcode: 'MH'\n\t},\n\t{\n\t\tname: 'Martinique',\n\t\tdialCode: '+596',\n\t\tcode: 'MQ'\n\t},\n\t{\n\t\tname: 'Mauritania',\n\t\tdialCode: '+222',\n\t\tcode: 'MR'\n\t},\n\t{\n\t\tname: 'Mauritius',\n\t\tdialCode: '+230',\n\t\tcode: 'MU'\n\t},\n\t{\n\t\tname: 'Mayotte',\n\t\tdialCode: '+262',\n\t\tcode: 'YT'\n\t},\n\t{\n\t\tname: 'Mexico',\n\t\tdialCode: '+52',\n\t\tcode: 'MX'\n\t},\n\t{\n\t\tname: 'Micronesia, Federated States of Micronesia',\n\t\tdialCode: '+691',\n\t\tcode: 'FM'\n\t},\n\t{\n\t\tname: 'Moldova',\n\t\tdialCode: '+373',\n\t\tcode: 'MD'\n\t},\n\t{\n\t\tname: 'Monaco',\n\t\tdialCode: '+377',\n\t\tcode: 'MC'\n\t},\n\t{\n\t\tname: 'Mongolia',\n\t\tdialCode: '+976',\n\t\tcode: 'MN'\n\t},\n\t{\n\t\tname: 'Montenegro',\n\t\tdialCode: '+382',\n\t\tcode: 'ME'\n\t},\n\t{\n\t\tname: 'Montserrat',\n\t\tdialCode: '+1664',\n\t\tcode: 'MS'\n\t},\n\t{\n\t\tname: 'Morocco',\n\t\tdialCode: '+212',\n\t\tcode: 'MA'\n\t},\n\t{\n\t\tname: 'Mozambique',\n\t\tdialCode: '+258',\n\t\tcode: 'MZ'\n\t},\n\t{\n\t\tname: 'Myanmar',\n\t\tdialCode: '+95',\n\t\tcode: 'MM'\n\t},\n\t{\n\t\tname: 'Namibia',\n\t\tdialCode: '+264',\n\t\tcode: 'NA'\n\t},\n\t{\n\t\tname: 'Nauru',\n\t\tdialCode: '+674',\n\t\tcode: 'NR'\n\t},\n\t{\n\t\tname: 'Nepal',\n\t\tdialCode: '+977',\n\t\tcode: 'NP'\n\t},\n\t{\n\t\tname: 'Netherlands',\n\t\tdialCode: '+31',\n\t\tcode: 'NL'\n\t},\n\t{\n\t\tname: 'Netherlands Antilles',\n\t\tdialCode: '+599',\n\t\tcode: 'AN'\n\t},\n\t{\n\t\tname: 'New Caledonia',\n\t\tdialCode: '+687',\n\t\tcode: 'NC'\n\t},\n\t{\n\t\tname: 'New Zealand',\n\t\tdialCode: '+64',\n\t\tcode: 'NZ'\n\t},\n\t{\n\t\tname: 'Nicaragua',\n\t\tdialCode: '+505',\n\t\tcode: 'NI'\n\t},\n\t{\n\t\tname: 'Niger',\n\t\tdialCode: '+227',\n\t\tcode: 'NE'\n\t},\n\t{\n\t\tname: 'Nigeria',\n\t\tdialCode: '+234',\n\t\tcode: 'NG'\n\t},\n\t{\n\t\tname: 'Niue',\n\t\tdialCode: '+683',\n\t\tcode: 'NU'\n\t},\n\t{\n\t\tname: 'Norfolk Island',\n\t\tdialCode: '+672',\n\t\tcode: 'NF'\n\t},\n\t{\n\t\tname: 'Northern Mariana Islands',\n\t\tdialCode: '+1670',\n\t\tcode: 'MP'\n\t},\n\t{\n\t\tname: 'Norway',\n\t\tdialCode: '+47',\n\t\tcode: 'NO'\n\t},\n\t{\n\t\tname: 'Oman',\n\t\tdialCode: '+968',\n\t\tcode: 'OM'\n\t},\n\t{\n\t\tname: 'Pakistan',\n\t\tdialCode: '+92',\n\t\tcode: 'PK'\n\t},\n\t{\n\t\tname: 'Palau',\n\t\tdialCode: '+680',\n\t\tcode: 'PW'\n\t},\n\t{\n\t\tname: 'Palestinian Territory, Occupied',\n\t\tdialCode: '+970',\n\t\tcode: 'PS'\n\t},\n\t{\n\t\tname: 'Panama',\n\t\tdialCode: '+507',\n\t\tcode: 'PA'\n\t},\n\t{\n\t\tname: 'Papua New Guinea',\n\t\tdialCode: '+675',\n\t\tcode: 'PG'\n\t},\n\t{\n\t\tname: 'Paraguay',\n\t\tdialCode: '+595',\n\t\tcode: 'PY'\n\t},\n\t{\n\t\tname: 'Peru',\n\t\tdialCode: '+51',\n\t\tcode: 'PE'\n\t},\n\t{\n\t\tname: 'Philippines',\n\t\tdialCode: '+63',\n\t\tcode: 'PH'\n\t},\n\t{\n\t\tname: 'Pitcairn',\n\t\tdialCode: '+872',\n\t\tcode: 'PN'\n\t},\n\t{\n\t\tname: 'Poland',\n\t\tdialCode: '+48',\n\t\tcode: 'PL'\n\t},\n\t{\n\t\tname: 'Portugal',\n\t\tdialCode: '+351',\n\t\tcode: 'PT'\n\t},\n\t{\n\t\tname: 'Puerto Rico',\n\t\tdialCode: '+1939',\n\t\tcode: 'PR'\n\t},\n\t{\n\t\tname: 'Qatar',\n\t\tdialCode: '+974',\n\t\tcode: 'QA'\n\t},\n\t{\n\t\tname: 'Romania',\n\t\tdialCode: '+40',\n\t\tcode: 'RO'\n\t},\n\t{\n\t\tname: 'Russia',\n\t\tdialCode: '+7',\n\t\tcode: 'RU'\n\t},\n\t{\n\t\tname: 'Rwanda',\n\t\tdialCode: '+250',\n\t\tcode: 'RW'\n\t},\n\t{\n\t\tname: 'Reunion',\n\t\tdialCode: '+262',\n\t\tcode: 'RE'\n\t},\n\t{\n\t\tname: 'Saint Barthelemy',\n\t\tdialCode: '+590',\n\t\tcode: 'BL'\n\t},\n\t{\n\t\tname: 'Saint Helena, Ascension and Tristan Da Cunha',\n\t\tdialCode: '+290',\n\t\tcode: 'SH'\n\t},\n\t{\n\t\tname: 'Saint Kitts and Nevis',\n\t\tdialCode: '+1869',\n\t\tcode: 'KN'\n\t},\n\t{\n\t\tname: 'Saint Lucia',\n\t\tdialCode: '+1758',\n\t\tcode: 'LC'\n\t},\n\t{\n\t\tname: 'Saint Martin',\n\t\tdialCode: '+590',\n\t\tcode: 'MF'\n\t},\n\t{\n\t\tname: 'Saint Pierre and Miquelon',\n\t\tdialCode: '+508',\n\t\tcode: 'PM'\n\t},\n\t{\n\t\tname: 'Saint Vincent and the Grenadines',\n\t\tdialCode: '+1784',\n\t\tcode: 'VC'\n\t},\n\t{\n\t\tname: 'Samoa',\n\t\tdialCode: '+685',\n\t\tcode: 'WS'\n\t},\n\t{\n\t\tname: 'San Marino',\n\t\tdialCode: '+378',\n\t\tcode: 'SM'\n\t},\n\t{\n\t\tname: 'Sao Tome and Principe',\n\t\tdialCode: '+239',\n\t\tcode: 'ST'\n\t},\n\t{\n\t\tname: 'Saudi Arabia',\n\t\tdialCode: '+966',\n\t\tcode: 'SA'\n\t},\n\t{\n\t\tname: 'Senegal',\n\t\tdialCode: '+221',\n\t\tcode: 'SN'\n\t},\n\t{\n\t\tname: 'Serbia',\n\t\tdialCode: '+381',\n\t\tcode: 'RS'\n\t},\n\t{\n\t\tname: 'Seychelles',\n\t\tdialCode: '+248',\n\t\tcode: 'SC'\n\t},\n\t{\n\t\tname: 'Sierra Leone',\n\t\tdialCode: '+232',\n\t\tcode: 'SL'\n\t},\n\t{\n\t\tname: 'Singapore',\n\t\tdialCode: '+65',\n\t\tcode: 'SG'\n\t},\n\t{\n\t\tname: 'Slovakia',\n\t\tdialCode: '+421',\n\t\tcode: 'SK'\n\t},\n\t{\n\t\tname: 'Slovenia',\n\t\tdialCode: '+386',\n\t\tcode: 'SI'\n\t},\n\t{\n\t\tname: 'Solomon Islands',\n\t\tdialCode: '+677',\n\t\tcode: 'SB'\n\t},\n\t{\n\t\tname: 'Somalia',\n\t\tdialCode: '+252',\n\t\tcode: 'SO'\n\t},\n\t{\n\t\tname: 'South Africa',\n\t\tdialCode: '+27',\n\t\tcode: 'ZA'\n\t},\n\t{\n\t\tname: 'South Sudan',\n\t\tdialCode: '+211',\n\t\tcode: 'SS'\n\t},\n\t{\n\t\tname: 'South Georgia and the South Sandwich Islands',\n\t\tdialCode: '+500',\n\t\tcode: 'GS'\n\t},\n\t{\n\t\tname: 'Spain',\n\t\tdialCode: '+34',\n\t\tcode: 'ES'\n\t},\n\t{\n\t\tname: 'Sri Lanka',\n\t\tdialCode: '+94',\n\t\tcode: 'LK'\n\t},\n\t{\n\t\tname: 'Sudan',\n\t\tdialCode: '+249',\n\t\tcode: 'SD'\n\t},\n\t{\n\t\tname: 'Suriname',\n\t\tdialCode: '+597',\n\t\tcode: 'SR'\n\t},\n\t{\n\t\tname: 'Svalbard and Jan Mayen',\n\t\tdialCode: '+47',\n\t\tcode: 'SJ'\n\t},\n\t{\n\t\tname: 'Swaziland',\n\t\tdialCode: '+268',\n\t\tcode: 'SZ'\n\t},\n\t{\n\t\tname: 'Sweden',\n\t\tdialCode: '+46',\n\t\tcode: 'SE'\n\t},\n\t{\n\t\tname: 'Switzerland',\n\t\tdialCode: '+41',\n\t\tcode: 'CH'\n\t},\n\t{\n\t\tname: 'Syrian Arab Republic',\n\t\tdialCode: '+963',\n\t\tcode: 'SY'\n\t},\n\t{\n\t\tname: 'Taiwan',\n\t\tdialCode: '+886',\n\t\tcode: 'TW'\n\t},\n\t{\n\t\tname: 'Tajikistan',\n\t\tdialCode: '+992',\n\t\tcode: 'TJ'\n\t},\n\t{\n\t\tname: 'Tanzania, United Republic of Tanzania',\n\t\tdialCode: '+255',\n\t\tcode: 'TZ'\n\t},\n\t{\n\t\tname: 'Thailand',\n\t\tdialCode: '+66',\n\t\tcode: 'TH'\n\t},\n\t{\n\t\tname: 'Timor-Leste',\n\t\tdialCode: '+670',\n\t\tcode: 'TL'\n\t},\n\t{\n\t\tname: 'Togo',\n\t\tdialCode: '+228',\n\t\tcode: 'TG'\n\t},\n\t{\n\t\tname: 'Tokelau',\n\t\tdialCode: '+690',\n\t\tcode: 'TK'\n\t},\n\t{\n\t\tname: 'Tonga',\n\t\tdialCode: '+676',\n\t\tcode: 'TO'\n\t},\n\t{\n\t\tname: 'Trinidad and Tobago',\n\t\tdialCode: '+1868',\n\t\tcode: 'TT'\n\t},\n\t{\n\t\tname: 'Tunisia',\n\t\tdialCode: '+216',\n\t\tcode: 'TN'\n\t},\n\t{\n\t\tname: 'Turkey',\n\t\tdialCode: '+90',\n\t\tcode: 'TR'\n\t},\n\t{\n\t\tname: 'Turkmenistan',\n\t\tdialCode: '+993',\n\t\tcode: 'TM'\n\t},\n\t{\n\t\tname: 'Turks and Caicos Islands',\n\t\tdialCode: '+1649',\n\t\tcode: 'TC'\n\t},\n\t{\n\t\tname: 'Tuvalu',\n\t\tdialCode: '+688',\n\t\tcode: 'TV'\n\t},\n\t{\n\t\tname: 'Uganda',\n\t\tdialCode: '+256',\n\t\tcode: 'UG'\n\t},\n\t{\n\t\tname: 'Ukraine',\n\t\tdialCode: '+380',\n\t\tcode: 'UA'\n\t},\n\t{\n\t\tname: 'United Arab Emirates',\n\t\tdialCode: '+971',\n\t\tcode: 'AE'\n\t},\n\t{\n\t\tname: 'United Kingdom',\n\t\tdialCode: '+44',\n\t\tcode: 'GB'\n\t},\n\t{\n\t\tname: 'United States',\n\t\tdialCode: '+1',\n\t\tcode: 'US'\n\t},\n\t{\n\t\tname: 'Uruguay',\n\t\tdialCode: '+598',\n\t\tcode: 'UY'\n\t},\n\t{\n\t\tname: 'Uzbekistan',\n\t\tdialCode: '+998',\n\t\tcode: 'UZ'\n\t},\n\t{\n\t\tname: 'Vanuatu',\n\t\tdialCode: '+678',\n\t\tcode: 'VU'\n\t},\n\t{\n\t\tname: 'Venezuela, Bolivarian Republic of Venezuela',\n\t\tdialCode: '+58',\n\t\tcode: 'VE'\n\t},\n\t{\n\t\tname: 'Vietnam',\n\t\tdialCode: '+84',\n\t\tcode: 'VN'\n\t},\n\t{\n\t\tname: 'Virgin Islands, British',\n\t\tdialCode: '+1284',\n\t\tcode: 'VG'\n\t},\n\t{\n\t\tname: 'Virgin Islands, U.S.',\n\t\tdialCode: '+1340',\n\t\tcode: 'VI'\n\t},\n\t{\n\t\tname: 'Wallis and Futuna',\n\t\tdialCode: '+681',\n\t\tcode: 'WF'\n\t},\n\t{\n\t\tname: 'Yemen',\n\t\tdialCode: '+967',\n\t\tcode: 'YE'\n\t},\n\t{\n\t\tname: 'Zambia',\n\t\tdialCode: '+260',\n\t\tcode: 'ZM'\n\t},\n\t{\n\t\tname: 'Zimbabwe',\n\t\tdialCode: '+263',\n\t\tcode: 'ZW'\n\t}\n].sort((a, b) => (a.name < b.name ? -1 : 1));\n","import { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { getComponentName } from '../../../helpers/componentHelpers';\nimport CountryCodes from '../CountryCodes';\nimport { comboBoxItem } from '../helpers';\n\nexport const componentName = getComponentName('phone-field-internal');\n\nconst commonAttrs = [\n\t'disabled',\n\t'size',\n\t'bordered',\n\t'invalid',\n\t'readonly',\n];\nconst countryAttrs = ['country-input-placeholder', 'default-code'];\nconst phoneAttrs = ['phone-input-placeholder', 'maxlength'];\nconst mapAttrs = {\n\t'country-input-placeholder': 'placeholder',\n\t'phone-input-placeholder': 'placeholder',\n}\n\nconst inputRelatedAttrs = [].concat(commonAttrs, countryAttrs, phoneAttrs);\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' });\n\nclass PhoneFieldInternal extends BaseInputClass {\n\tstatic get observedAttributes() {\n\t\treturn [].concat(\n\t\t\tBaseInputClass.observedAttributes || [],\n\t\t\tinputRelatedAttrs,\n\t\t);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.innerHTML = `\n <div>\n <descope-combo-box\n\t\t\t\titem-label-path=\"data-name\"\n\t\t\t\titem-value-path=\"data-id\"\n\t\t\t>\n\t\t\t${CountryCodes.map(item => comboBoxItem(item)).join('')}\n\t\t\t</descope-combo-box>\n\t\t\t<div class=\"separator\"></div>\n <descope-text-field type=\"tel\"></descope-text-field>\n </div>`;\n\n\t\tthis.countryCodeInput = this.querySelector('descope-combo-box');\n\t\tthis.phoneNumberInput = this.querySelector('descope-text-field');\n\t\tthis.inputs = [\n\t\t\tthis.countryCodeInput,\n\t\t\tthis.phoneNumberInput\n\t\t];\n\t}\n\n\tget value() {\n\t\treturn this.inputs.map(({ value }) => value).join('-');\n\t}\n\n\tset value(val) {\n\t\tconst [countryCode = '', phoneNumber = ''] = val.split('-');\n\t\tconst countryCodeItem = this.getCountryByDialCode(countryCode);\n\t\tif (countryCodeItem) {\n\t\t\tthis.countryCodeInput.selectedItem = countryCodeItem;\n\t\t}\n\t\tthis.phoneNumberInput.value = phoneNumber;\n\t}\n\n\tget phoneNumberValue() {\n\t\treturn this.phoneNumberInput.value;\n\t}\n\n\tget countryCodeValue() {\n\t\treturn this.countryCodeInput.shadowRoot.querySelector('input').value;\n\t}\n\n\tget minLength() {\n\t\treturn parseInt(this.getAttribute('minlength'), 10) || 0;\n\t}\n\n\tgetValidity() {\n\t\tconst hasCode = this.countryCodeInput.value;\n\t\tconst hasPhone = this.phoneNumberInput.value;\n\t\tconst emptyValue = !hasCode || !hasPhone;\n\t\tconst hasMinPhoneLength = this.phoneNumberInput.value.length && this.phoneNumberInput.value.length < this.minLength;\n\n\t\tif (this.isRequired && emptyValue) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\tif (hasMinPhoneLength) {\n\t\t\treturn { tooShort: true };\n\t\t}\n\t\tif ((hasCode && !hasPhone) || (!hasCode && hasPhone)) {\n\t\t\treturn { valueMissing: true };\n\t\t}\n\t\treturn {}\n\t};\n\n\tinit() {\n\t\tthis.addEventListener('focus', (e) => {\n\t\t\t// we want to ignore focus events we are dispatching\n\t\t\tif (e.isTrusted)\n\t\t\t\tthis.inputs[0].focus()\n\t\t})\n\n\t\tsuper.init?.();\n\t\tthis.initInputs();\n\t\tthis.setComboBoxDescriptor();\n\t}\n\n\tgetCountryByDialCode(countryDialCode) {\n\t\treturn this.countryCodeInput.items.find(c => c.getAttribute('data-dial-code') === countryDialCode);\n\t}\n\n\tgetCountryByCodeId(countryCode) {\n\t\treturn this.countryCodeInput.items.find(c => c['data-id'] === countryCode)?.['data-name'];\n\t}\n\n\thandleDefaultCountryCode(countryCode) {\n\t\tif (!this.countryCodeInput.value) {\n\t\t\tconst countryCodeItem = this.getCountryByCodeId(countryCode);\n\t\t\t// When replacing the input component (inserting internal component into text-field) -\n\t\t\t// Vaadin resets the input's value. We use setTimeout in order to make sure this happens\n\t\t\t// after the reset.\n\t\t\tif (countryCodeItem) {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.countryCodeInput.selectedItem = countryCodeItem;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t// We want to override Vaadin's Combo Box value setter. This is needed since Vaadin couples between the\n\t// field that it searches the value, and the finaly display value of the input. We want to search ALL\n\t// the values (so we made a field with all the values), but display ONLY the dial code, so we added\n\t// this setter, which does that.\n\tsetComboBoxDescriptor() {\n\t\tconst comboBox = this.countryCodeInput;\n\t\tconst input = comboBox.shadowRoot.querySelector('input');\n\t\tconst valueDescriptor = Object.getOwnPropertyDescriptor(\n\t\t\tinput.constructor.prototype,\n\t\t\t'value'\n\t\t);\n\t\tObject.defineProperties(input, {\n\t\t\tvalue: {\n\t\t\t\t...valueDescriptor,\n\t\t\t\tset(val) {\n\t\t\t\t\tif (!comboBox.items?.length) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst [_code, dialCode] = val.split(' ');\n\n\t\t\t\t\tif (val === this.value) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tvalueDescriptor.set.call(this, dialCode || '');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tinitInputs() {\n\t\t// Sanitize phone input value to filter everything but digits\n\t\tthis.phoneNumberInput.addEventListener('input', (e) => {\n\t\t\tconst telDigitsRegExp = /^\\d$/;\n\t\t\tconst sanitizedInput = e.target.value\n\t\t\t\t.split('')\n\t\t\t\t.filter(char => telDigitsRegExp.test(char))\n\t\t\t\t.join('');\n\t\t\te.target.value = sanitizedInput;\n\t\t});\n\n\t\tthis.handleFocusEventsDispatching(this.inputs)\n\t\tthis.handleInputEventDispatching()\n\t}\n\n\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\tsuper.attributeChangedCallback(attrName, oldValue, newValue);\n\n\t\tif (oldValue !== newValue) {\n\t\t\tif (attrName === 'default-code' && newValue) {\n\t\t\t\tthis.handleDefaultCountryCode(newValue);\n\t\t\t}\n\t\t\telse if (inputRelatedAttrs.includes(attrName)) {\n\t\t\t\tconst attr = mapAttrs[attrName] || attrName;\n\n\t\t\t\tif (commonAttrs.includes(attrName)) {\n\t\t\t\t\tthis.inputs.forEach(input => input.setAttribute(attr, newValue));\n\t\t\t\t}\n\t\t\t\telse if (countryAttrs.includes(attrName)) {\n\t\t\t\t\tthis.countryCodeInput.setAttribute(attr, newValue);\n\t\t\t\t}\n\t\t\t\telse if (phoneAttrs.includes(attrName)) {\n\t\t\t\t\tthis.phoneNumberInput.setAttribute(attr, newValue);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default PhoneFieldInternal;\n","import { componentName as descopeInternalComponentName } from './descope-phone-field-internal/PhoneFieldInternal';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { compose } from '../../helpers';\nimport {\n\tcreateProxy,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tproxyInputMixin\n} from '../../mixins';\nimport { TextFieldClass } from '../descope-text-field/TextFieldClass';\nimport { ComboBoxClass } from '../descope-combo-box/ComboBoxClass';\nimport CountryCodes from './CountryCodes';\nimport { resetInputCursor, resetInputFieldInvalidBackgroundColor, useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nconst textVars = TextFieldClass.cssVarList;\nconst comboVars = ComboBoxClass.cssVarList;\n\nexport const componentName = getComponentName('phone-field');\n\nconst customMixin = (superclass) =>\n\tclass PhoneFieldMixinClass extends superclass {\n\t\tstatic get CountryCodes() {\n\t\t\treturn CountryCodes;\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t\t<${descopeInternalComponentName} \n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\tslot=\"input\"\n\t\t\t\t></${descopeInternalComponentName}>\n \t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this.shadowRoot.host, this.inputElement, {\n\t\t\t\tincludeAttrs: [\n\t\t\t\t\t'size',\n\t\t\t\t\t'bordered',\n\t\t\t\t\t'invalid',\n\t\t\t\t\t'minlength',\n\t\t\t\t\t'maxlength',\n\t\t\t\t\t'default-code',\n\t\t\t\t\t'country-input-placeholder',\n\t\t\t\t\t'phone-input-placeholder',\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\t};\n\nconst {\n\thost,\n\tlabel,\n\trequiredIndicator,\n\tinputField,\n\tcountryCodeInput,\n\tphoneInput,\n\tseparator,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\trequiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n\tinputField: { selector: '::part(input-field)' },\n\tphoneInput: { selector: () => 'descope-text-field' },\n\tcountryCodeInput: { selector: () => 'descope-combo-box' },\n\tseparator: { selector: 'descope-phone-field-internal .separator' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n};\n\nexport const PhoneFieldClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\tinputField,\n\t\t\t\t{\n\t\t\t\t\tselector: TextFieldClass.componentName,\n\t\t\t\t\tproperty: TextFieldClass.cssVarList.fontSize\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tselector: ComboBoxClass.componentName,\n\t\t\t\t\tproperty: ComboBoxClass.cssVarList.fontSize\n\t\t\t\t}\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText,\n\t\t\t\t{\n\t\t\t\t\t...countryCodeInput,\n\t\t\t\t\tproperty: ComboBoxClass.cssVarList.overlay.fontFamily\n\t\t\t\t}\n\t\t\t],\n\t\t\thostWidth: [\n\t\t\t\t{ ...host, property: 'width' },\n\t\t\t\t{ ...phoneInput, property: 'width' },\n\t\t\t\t{ ...countryCodeInput, property: '--vaadin-combo-box-overlay-width' }\n\t\t\t],\n\n\t\t\tinputBorderStyle: [\n\t\t\t\t{ ...inputField, property: 'border-style' },\n\t\t\t\t{ ...separator, property: 'border-left-style' }\n\t\t\t],\n\t\t\tinputBorderWidth: [\n\t\t\t\t{ ...inputField, property: 'border-width' },\n\t\t\t\t{ ...separator, property: 'border-left-width' }\n\t\t\t],\n\t\t\tinputBorderColor: [\n\t\t\t\t{ ...inputField, property: 'border-color' },\n\t\t\t\t{ ...separator, property: 'border-left-color' }\n\t\t\t],\n\t\t\tinputBorderRadius: { ...inputField, property: 'border-radius' },\n\n\t\t\tcountryCodeInputWidth: { ...countryCodeInput, property: comboVars.hostWidth },\n\t\t\tcountryCodeDropdownWidth: {\n\t\t\t\t...countryCodeInput,\n\t\t\t\tproperty: '--vaadin-combo-box-overlay-width'\n\t\t\t},\n\t\t\tphoneInputWidth: { ...phoneInput, property: 'width' },\n\n\t\t\tlabelTextColor: [\n\t\t\t\t{ ...label, property: 'color' },\n\t\t\t\t{ ...requiredIndicator, property: 'color' },\n\t\t\t],\n\t\t\tlabelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n\n\t\t\tinputValueTextColor: [\n\t\t\t\t{ ...phoneInput, property: textVars.inputValueTextColor },\n\t\t\t\t{ ...countryCodeInput, property: comboVars.inputValueTextColor }\n\t\t\t],\n\n\t\t\tinputPlaceholderTextColor: { ...phoneInput, property: textVars.inputPlaceholderColor },\n\n\t\t\toverlayItemBackgroundColor: {\n\t\t\t\tselector: 'descope-combo-box',\n\t\t\t\tproperty: comboVars.overlayItemBackgroundColor\n\t\t\t},\n\n\t\t\tinputOutlineStyle: { ...inputField, property: 'outline-style' },\n\t\t\tinputOutlineColor: { ...inputField, property: 'outline-color' },\n\t\t\tinputOutlineWidth: { ...inputField, property: 'outline-width' },\n\t\t\tinputOutlineOffset: { ...inputField, property: 'outline-offset' },\n\t\t},\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcustomMixin,\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 15em;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\t\t\t${useHostExternalPadding(PhoneFieldClass.cssVarList)}\n\t\t\t${resetInputCursor('vaadin-text-field')}\n\t\t\t${resetInputFieldInvalidBackgroundColor('vaadin-text-field')}\n\n\t\t\tdiv {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\tvaadin-text-field {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-text-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\t\t\tvaadin-text-field::before {\n\t\t\t\theight: 0;\n\t\t\t}\n\t\t\tvaadin-text-field::part(input-field) {\n\t\t\t\tpadding: 0;\n\t\t\t\tmin-height: 0;\n\t\t\t\tbackground: transparent;\n\t\t\t\toverflow: hidden;\n\t\t\t}\n\t\t\tdescope-phone-field-internal {\n\t\t\t\t-webkit-mask-image: none;\n\t\t\t\tpadding: 0;\n\t\t\t\tmin-height: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t\tdescope-phone-field-internal > div {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t\tdescope-phone-field-internal .separator {\n\t\t\t\tflex: 0;\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t\tdescope-combo-box {\n\t\t\t\tflex-shrink: 0;\n\t\t\t\tmin-width: 5.75em;\n\t\t\t\t${comboVars.inputOutlineWidth}: 0;\n\t\t\t\t${comboVars.inputOutlineOffset}: 0;\n\t\t\t\t${comboVars.inputBorderWidth}: 0;\n\t\t\t\t${comboVars.inputBorderRadius}: 0;\n\t\t\t}\n\t\t\tdescope-text-field {\n\t\t\t\tflex-grow: 1;\n\t\t\t\t${textVars.inputOutlineWidth}: 0;\n\t\t\t\t${comboVars.inputOutlineOffset}: 0;\n\t\t\t\t${textVars.inputBorderWidth}: 0;\n\t\t\t\t${textVars.inputBorderRadius}: 0;\n\t\t\t}\n\t\t\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\tvaadin-text-field::part(input-field)::after {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default PhoneFieldClass;\n","import { PhoneFieldClass } from '../../components/descope-phone-field/PhoneFieldClass';\nimport { refs } from './inputWrapper';\n\nconst vars = PhoneFieldClass.cssVarList;\n\nconst phoneField = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.labelTextColor]: refs.labelTextColor,\n\t[vars.labelRequiredIndicator]: refs.requiredIndicator,\n\t[vars.inputValueTextColor]: refs.valueTextColor,\n\t[vars.inputPlaceholderTextColor]: refs.placeholderTextColor,\n\t[vars.inputBorderStyle]: refs.borderStyle,\n\t[vars.inputBorderWidth]: refs.borderWidth,\n\t[vars.inputBorderColor]: refs.borderColor,\n\t[vars.inputBorderRadius]: refs.borderRadius,\n\t[vars.inputOutlineStyle]: refs.outlineStyle,\n\t[vars.inputOutlineWidth]: refs.outlineWidth,\n\t[vars.inputOutlineColor]: refs.outlineColor,\n\t[vars.inputOutlineOffset]: refs.outlineOffset,\n\t[vars.inputHeight]: refs.inputHeight,\n\t[vars.phoneInputWidth]: refs.minWidth,\n\t[vars.countryCodeInputWidth]: '5em',\n\t[vars.countryCodeDropdownWidth]: '20em',\n\n\t// '@overlay': {\n\t// \toverlayItemBackgroundColor: 'red'\n\t// }\n};\n\nexport default phoneField;\nexport { vars }\n","import { getComponentName } from \"../../../helpers/componentHelpers\";\n\nexport const componentName = getComponentName('new-password-internal');\n","import { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { compose } from '../../helpers';\nimport {\n\tcreateStyleMixin,\n\tproxyInputMixin,\n\tdraggableMixin,\n\tcreateProxy,\n} from '../../mixins';\nimport { componentName as descopeInternalComponentName } from './descope-new-password-internal/componentName';\nimport { PasswordClass } from '../descope-password/PasswordClass';\nimport { useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('new-password');\n\nconst customMixin = (superclass) =>\n\tclass NewPasswordMixinClass extends superclass {\n\t\tconstructor() {\n\t\t\tsuper();\n\t\t}\n\n\t\tinit() {\n\t\t\tsuper.init?.();\n\n\t\t\tconst template = document.createElement('template');\n\n\t\t\ttemplate.innerHTML = `\n\t\t\t<${descopeInternalComponentName} \n\t\t\t\tname=\"new-password\" \n\t\t\t\ttabindex=\"-1\"\n\t\t\t\tslot=\"input\"\n\t\t\t></${descopeInternalComponentName}>\n\t\t\t`;\n\n\t\t\tthis.baseElement.appendChild(template.content.cloneNode(true));\n\n\t\t\tthis.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n\t\t\tforwardAttrs(this, this.inputElement, {\n\t\t\t\tincludeAttrs: [\n\t\t\t\t\t'password-label',\n\t\t\t\t\t'password-placeholder',\n\t\t\t\t\t'confirm-label',\n\t\t\t\t\t'confirm-placeholder',\n\t\t\t\t\t'full-width',\n\t\t\t\t\t'size',\n\t\t\t\t\t'bordered',\n\t\t\t\t\t'label',\n\t\t\t\t\t'has-confirm',\n\t\t\t\t\t'invalid',\n\t\t\t\t\t'readonly',\n\t\t\t\t\t'draggable'\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\t};\n\nconst {\n\thost,\n\tlabel,\n\tinternalInputsWrapper,\n\terrorMessage,\n\thelperText\n} = {\n\thost: { selector: () => ':host' },\n\tlabel: { selector: '::part(label)' },\n\tinternalInputsWrapper: { selector: 'descope-new-password-internal .wrapper' },\n\thelperText: { selector: '::part(helper-text)' },\n\terrorMessage: { selector: '::part(error-message)' }\n}\n\nexport const NewPasswordClass = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontSize: [\n\t\t\t\thost,\n\t\t\t\t{},\n\t\t\t\t{\n\t\t\t\t\tselector: PasswordClass.componentName,\n\t\t\t\t\tproperty: PasswordClass.cssVarList.fontSize\n\t\t\t\t}\n\t\t\t],\n\t\t\tfontFamily: [\n\t\t\t\tlabel,\n\t\t\t\terrorMessage,\n\t\t\t\thelperText\n\t\t\t],\n\t\t\thostWidth: { ...host, property: 'width' },\n\t\t\thostMinWidth: { ...host, property: 'min-width' },\n\t\t\tinputsRequiredIndicator: { ...host, property: 'content' },\n\t\t\tspaceBetweenInputs: { ...internalInputsWrapper, property: 'gap' },\n\t\t}\n\t}),\n\tdraggableMixin,\n\tproxyInputMixin,\n\tcustomMixin,\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => `\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\tvaadin-text-field {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\t\tvaadin-text-field::part(input-field) {\n\t\t\tmin-height: 0;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tpadding: 0;\n\t\t}\n\t\tvaadin-text-field::part(input-field)::after {\n\t\t\tbackground: transparent;\n\t\t\topacity: 0;\n\t\t}\n\t\tdescope-new-password-internal {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tpadding: 0;\n\t\t}\n\t\tdescope-new-password-internal > .wrapper {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\tdescope-password {\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t}\n\t\tdescope-new-password-internal vaadin-password-field::before {\n\t\t\theight: initial;\n\t\t},\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n","import { NewPasswordClass } from '../../components/descope-new-password/NewPasswordClass';\nimport { refs } from \"./inputWrapper\"\n\nconst vars = NewPasswordClass.cssVarList;\n\nconst newPassword = {\n\t[vars.hostWidth]: refs.width,\n\t[vars.hostMinWidth]: refs.minWidth,\n\t[vars.fontSize]: refs.fontSize,\n\t[vars.fontFamily]: refs.fontFamily,\n\t[vars.spaceBetweenInputs]: '1em',\n\n\t_required: {\n\t\t// NewPassword doesn't pass `required` attribute to its Password components.\n\t\t// That's why we fake the required indicator on each input.\n\t\t// We do that by injecting `::after` element, and populating it with requiredIndicator content.\n\t\t[vars.inputsRequiredIndicator]: refs.requiredIndicator, // used to populate required content for NewPassword input fields outside the theme\n\t}\n};\n\nexport default newPassword;\nexport { vars }\n","import * as button from './button';\nimport * as textField from './textField';\nimport * as password from './password';\nimport * as numberField from './numberField';\nimport * as emailField from './emailField';\nimport * as textArea from './textArea';\nimport * as checkbox from './checkbox';\nimport * as switchToggle from './switchToggle';\nimport * as container from './container';\nimport * as logo from './logo';\nimport * as totpImage from './totpImage';\nimport * as text from './text';\nimport * as link from './link';\nimport * as divider from './divider';\nimport * as passcode from './passcode';\nimport { loaderRadial, loaderLinear } from './loader';\nimport * as comboBox from './comboBox';\nimport * as image from './image';\nimport * as phoneField from './phoneField';\nimport * as newPassword from './newPassword';\nimport * as inputWrapper from './inputWrapper';\n\nconst components = {\n\tbutton,\n\ttextField,\n\tpassword,\n\tnumberField,\n\temailField,\n\ttextArea,\n\tcheckbox,\n\tswitchToggle,\n\tcontainer,\n\tlogo,\n\ttotpImage,\n\ttext,\n\tlink,\n\tdivider,\n\tpasscode,\n\tloaderRadial,\n\tloaderLinear,\n\tcomboBox,\n\timage,\n\tphoneField,\n\tnewPassword,\n\tinputWrapper,\n};\n\nconst theme = Object.keys(components).reduce((acc, comp) => ({ ...acc, [comp]: components[comp].default }), {});\nconst vars = Object.keys(components).reduce((acc, comp) => ({ ...acc, [comp]: components[comp].vars }), {});\n\nexport default theme;\nexport { vars }\n","import globals, { vars as globalsVars } from './globals';\nimport components, { vars as componentsVars } from './components';\n\nexport const defaultTheme = { globals, components };\nexport const themeVars = { globals: globalsVars, components: componentsVars }\n"],"names":["vars","observedAttributes","componentName","host","label","globalRefs","compVars","helperTheme","helperRefs","helperVars","placeholder","requiredIndicator","inputField","helperText","errorMessage","customMixin","proxyInputMixin","theme","inputElement","textArea","descopeInternalComponentName","component","checkboxHiddenLabel","logo","text","selectors","after","textVars","button","textField","password","numberField","emailField","checkbox","switchToggle","container","link","divider","passcode","loaderRadial","loaderLinear","comboBox","image","phoneField","newPassword","components","globalsVars","componentsVars"],"mappings":"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"}