@descope/web-components-ui 1.0.50 → 1.0.52

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/constants.js","../src/helpers.js","../src/componentsHelpers/createStyleMixin/helpers.js","../src/componentsHelpers/createStyleMixin/index.js","../src/componentsHelpers/draggableMixin.js","../src/componentsHelpers/createProxy/helpers.js","../src/componentsHelpers/createProxy/index.js","../src/componentsHelpers/inputMixin.js","../src/componentsHelpers/componentNameValidationMixin.js","../src/componentsHelpers/index.js","../src/components/descope-button/Button.js","../src/components/descope-button/index.js","../src/components/descope-text-field/textFieldMappings.js","../src/components/descope-text-field/TextField.js","../src/components/descope-text-field/index.js","../src/components/descope-combo/index.js","../src/components/descope-number-field/NumberField.js","../src/components/descope-number-field/index.js","../src/components/descope-email-field/EmailField.js","../src/components/descope-email-field/index.js","../src/components/descope-password-field/PasswordField.js","../src/components/descope-password-field/index.js","../src/components/descope-text-area/TextArea.js","../src/components/descope-text-area/index.js","../src/components/descope-date-picker/index.js","../src/components/descope-container/Container.js","../src/components/descope-container/index.js","../src/themeHelpers/index.js","../src/themeHelpers/processColors.js","../src/theme/globals.js","../src/theme/components/button.js","../src/theme/components/textField.js","../src/theme/components/passwordField.js","../src/theme/components/numberField.js","../src/theme/components/emailField.js","../src/theme/components/textArea.js","../src/components/descope-checkbox/Checkbox.js","../src/theme/components/checkbox.js","../src/components/descope-switch-toggle/SwitchToggle.js","../src/theme/components/switchToggle.js","../src/theme/components/container.js","../src/components/descope-logo/Logo.js","../src/theme/components/logo.js","../src/theme/components/index.js","../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope';\n","export 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.join('-'));\n\nexport const getCssVarName = (...args) =>\n\t`--${kebabCaseJoin(...args.filter((arg) => !!arg))}`;\n","import { getCssVarName, kebabCase } from '../../helpers';\n\nconst createCssVarFallback = (first, ...rest) =>\n\t`var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (\n\tbaseSelector = '',\n\trelativeSelectorOrSelectorFn = ''\n) =>\n\ttypeof relativeSelectorOrSelectorFn === 'function'\n\t\t? relativeSelectorOrSelectorFn(baseSelector)\n\t\t: `${baseSelector}${relativeSelectorOrSelectorFn}`;\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\t(style += `${selector} { \\n${propValArr\n\t\t\t\t\t.map(({ property, value }) => `${property}: ${value}`)\n\t\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\tproperty,\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// match the host selector with the inner element selector\n// e.g. when we want to set the same size for the host & the inner element this can be useful\nexport const matchHostStyle = (mappingObj = {}) => [\n\tmappingObj,\n\t{ ...mappingObj, selector: () => `:host${mappingObj.selector || ''}` }\n];\n","import { getCssVarName, kebabCaseJoin } from '../../helpers';\nimport { createStyle, createCssVarsList } from './helpers';\n\nexport const createStyleMixin =\n\t({ mappings = {} }) =>\n\t(superclass) => {\n\t\tconst styleAttributes = Object.keys(mappings).map((key) =>\n\t\t\tkebabCaseJoin('st', key)\n\t\t);\n\t\treturn class CustomStyleMixinClass extends superclass {\n\t\t\tstatic get observedAttributes() {\n\t\t\t\tconst superAttrs = superclass.observedAttributes || [];\n\t\t\t\treturn [...superAttrs, ...styleAttributes];\n\t\t\t}\n\n\t\t\tstatic get cssVarList() {\n\t\t\t\treturn createCssVarsList(superclass.componentName, mappings);\n\t\t\t}\n\n\t\t\t#styleEle = null;\n\n\t\t\tconstructor() {\n\t\t\t\tsuper();\n\n\t\t\t\tthis.#createComponentStyle();\n\t\t\t\tthis.#createAttrOverrideStyle();\n\t\t\t}\n\n\t\t\t#createAttrOverrideStyle() {\n\t\t\t\tthis.#styleEle = document.createElement('style');\n\t\t\t\tthis.#styleEle.id = 'style-mixin-overrides';\n\n\t\t\t\tthis.#styleEle.innerText = '* {}';\n\t\t\t\tthis.shadowRoot.prepend(this.#styleEle);\n\t\t\t}\n\n\t\t\t#updateAttrOverrideStyle(attrName, value) {\n\t\t\t\tconst style = this.#styleEle.sheet.cssRules[0].style;\n\t\t\t\tconst varName = getCssVarName(\n\t\t\t\t\tsuperclass.componentName,\n\t\t\t\t\tattrName.replace(/^st-/, '')\n\t\t\t\t);\n\n\t\t\t\tif (value) style.setProperty(varName, value);\n\t\t\t\telse style.removeProperty(varName);\n\t\t\t}\n\n\t\t\t#createComponentStyle() {\n\t\t\t\tconst themeStyle = document.createElement('style');\n\t\t\t\tthemeStyle.id = 'style-mixin-component';\n\t\t\t\tthemeStyle.innerHTML = createStyle(\n\t\t\t\t\tsuperclass.componentName,\n\t\t\t\t\tthis.baseSelector,\n\t\t\t\t\tmappings\n\t\t\t\t);\n\t\t\t\tthis.shadowRoot.prepend(themeStyle);\n\t\t\t}\n\n\t\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n\t\t\t\tif (styleAttributes.includes(attrName)) {\n\t\t\t\t\tthis.#updateAttrOverrideStyle(attrName, newValue);\n\t\t\t\t}\n\t\t\t}\n\n connectedCallback() {\n super.connectedCallback?.();\n if (this.shadowRoot.isConnected) {\n Array.from(this.attributes).forEach(attr => {\n if (styleAttributes.includes(attr.nodeName)) {\n this.#updateAttrOverrideStyle(attr.nodeName, attr.value)\n }\n });\n }\n }\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 = `${this.baseSelector} { cursor: inherit }`;\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\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","const observeAttributes = (ele, callback, excludeAttrs) => {\n\t// sync all attrs on init\n\tcallback(...Array.from(ele.attributes).map((attr) => attr.name));\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) {\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\nconst createSyncAttrsCb =\n\t(srcEle, targetEle) =>\n\t(...attrNames) => {\n\t\tattrNames.forEach((attrName) => {\n\t\t\tconst srcAttrVal = srcEle.getAttribute(attrName);\n\t\t\tif (srcAttrVal !== null) {\n\t\t\t\tif (targetEle.getAttribute(attrName) !== srcAttrVal) {\n\t\t\t\t\ttargetEle.setAttribute(attrName, srcAttrVal);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttargetEle.removeAttribute(attrName);\n\t\t\t}\n\t\t});\n\t};\n\nexport const syncAttrs = (ele1, ele2, excludeAttrs) => {\n\tobserveAttributes(ele1, createSyncAttrsCb(ele1, ele2), excludeAttrs);\n\tobserveAttributes(ele2, createSyncAttrsCb(ele2, ele1), excludeAttrs);\n};\n","import { syncAttrs } from './helpers';\n\nexport const createProxy = ({\n\tcomponentName,\n\twrappedEleName,\n\tslots = [],\n\tstyle,\n\texcludeAttrsSync = []\n}) => {\n\tconst template = `\n\t\t<style id=\"create-proxy\"></style>\n\t\t<${wrappedEleName}>\n\t\t<slot></slot>\n\t\t${slots.map((slot) => `<slot name=\"${slot}\" slot=\"${slot}\"></slot>`).join('')}\n\t\t</${wrappedEleName}>\n\t`;\n\n\tclass ProxyElement extends HTMLElement {\n\t\tstatic get componentName() {\n\t\t\treturn componentName;\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper().attachShadow({ mode: 'open' }).innerHTML = template;\n\t\t\tthis.hostElement = this.shadowRoot.host;\n\t\t\tthis.componentName = this.hostElement.tagName.toLowerCase();\n\t\t\tthis.baseSelector = wrappedEleName;\n\t\t\tthis.shadowRoot.getElementById('create-proxy').innerHTML =\n\t\t\t\ttypeof style === 'function' ? style() : style;\n\t\t}\n\n\t\tconnectedCallback() {\n\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\tthis.proxyElement = this.shadowRoot.querySelector(wrappedEleName);\n\t\t\t\tthis.setAttribute('tabindex', '0');\n\n\t\t\t\t// we want to focus on the proxy element when focusing our WC\n\t\t\t\tthis.onfocus = (e) => {\n\t\t\t\t\tthis.proxyElement.focus();\n\t\t\t\t};\n\n\t\t\t\t// `onkeydown` is set on `proxyElement` support proper tab-index navigation\n\t\t\t\t// this support is needed since both proxy host and element catch `focus`/`blur` event\n\t\t\t\t// which causes faulty behaviour.\n\t\t\t\tthis.proxyElement.onkeydown = (e) => {\n\t\t\t\t\tif (e.shiftKey && e.keyCode === 9) {\n\t\t\t\t\t\tthis.removeAttribute('tabindex');\n\t\t\t\t\t\t// We want to defer the action of setting the tab index back\n\t\t\t\t\t\t// so it will happen after focusing the previous element\n\t\t\t\t\t\tsetTimeout(() => this.setAttribute('tabindex', '0'), 0);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tthis.mouseoverCbRef = () => {\n\t\t\t\t\tthis.proxyElement.setAttribute('hover', '');\n\t\t\t\t\tthis.proxyElement.addEventListener(\n\t\t\t\t\t\t'mouseleave',\n\t\t\t\t\t\t() => this.proxyElement.removeAttribute('hover'),\n\t\t\t\t\t\t{ once: true }\n\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tthis.proxyElement.addEventListener('mouseover', this.mouseoverCbRef);\n\n\t\t\t\t// sync events\n\t\t\t\tthis.addEventListener = this.proxyElement.addEventListener;\n\n\t\t\t\tsyncAttrs(this.proxyElement, this.hostElement, excludeAttrsSync);\n\t\t\t}\n\t\t}\n\n\t\tdisconnectedCallback() {\n\t\t\tthis.proxyElement.removeEventListener('mouseover', this.mouseoverCbRef);\n\t\t}\n\n\t\tattributeChangedCallback() {\n\t\t\tif (!this.proxyElement) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn ProxyElement;\n};\n","const attrs = {\n\tvalueMissing: 'data-errormessage-value-missing',\n\tpatternMismatch: 'data-errormessage-pattern-mismatch'\n};\n\nconst errorAttrs = ['invalid', 'has-error-message'];\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\nexport const inputMixin = (superclass) =>\n\tclass InputMixinClass extends superclass {\n\t\tstatic get formAssociated() {\n\t\t\treturn true;\n\t\t}\n\n\t\t#internals;\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#internals = this.attachInternals();\n\t\t}\n\n\t\tformAssociatedCallback() {\n\t\t\tthis.setValidity?.();\n\t\t}\n\n\t\tsetValidationAttribute(attr) {\n\t\t\tconst validationAttr = this.getAttribute(attr);\n\t\t\tif (validationAttr) {\n\t\t\t\tthis.proxyElement.setAttribute('error-message', validationAttr);\n\t\t\t}\n\t\t\t// normalize vaadin error attributes to have a boolean value\n\t\t\terrorAttrs.forEach((att) => this.proxyElement.setAttribute(att, 'true'));\n\t\t}\n\n\t\tvalidate() {\n\t\t\tconst { valueMissing, patternMismatch, typeMismatch } = this.validity;\n\t\t\tif (valueMissing) {\n\t\t\t\tthis.setValidationAttribute(attrs.valueMissing);\n\t\t\t} else if (typeMismatch || patternMismatch) {\n\t\t\t\tthis.setValidationAttribute(attrs.patternMismatch);\n\t\t\t}\n\t\t}\n\n\t\tconnectedCallback() {\n\t\t\tthis.baseEle = this.shadowRoot.querySelector(this.baseSelector);\n\t\t\tsuper.connectedCallback?.();\n\n\t\t\t// this is needed in order to make sure the form input validation is working\n\t\t\tif (!this.hasAttribute('tabindex')) {\n\t\t\t\tthis.setAttribute('tabindex', 0);\n\t\t\t}\n\n\t\t\tconst input =\n\t\t\t\tthis.baseEle.querySelector('input') ||\n\t\t\t\tthis.baseEle.querySelector('textarea');\n\t\t\tif (!input) throw Error('no input was found');\n\n\t\t\t// sync properties\n\t\t\tpropertyObserver(this, input, 'value');\n\t\t\tthis.setSelectionRange = input.setSelectionRange.bind(input);\n\n\t\t\tthis.validity = input.validity;\n\n\t\t\tthis.setValidity = () => {\n\t\t\t\tthis.#internals.setValidity(input.validity, input.validationMessage);\n\t\t\t};\n\n\t\t\tinput.oninput = () => {\n\t\t\t\tthis.value = input.value;\n\t\t\t\tthis.setValidity();\n\t\t\t};\n\n\t\t\tthis.onfocus = () => {\n\t\t\t\tsetTimeout(() => input.reportValidity(), 0);\n\t\t\t\tthis.validate();\n\t\t\t};\n\n\t\t\tinput.oninvalid = () => {\n\t\t\t\tthis.validate();\n\t\t\t};\n\t\t}\n\t};\n","export const componentNameValidationMixin = (superclass) =>\n\tclass DraggableMixinClass extends superclass {\n\t\t#checkComponentName() {\n\t\t\tconst currentComponentName = this.shadowRoot.host.tagName.toLowerCase();\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\tconnectedCallback() {\n\t\t\tsuper.connectedCallback?.();\n\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\tthis.#checkComponentName();\n\t\t\t}\n\t\t}\n\t};\n","import { DESCOPE_PREFIX } from '../constants';\nimport { kebabCaseJoin } from '../helpers';\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name);\n\nexport const compose =\n\t(...fns) =>\n\t(val) =>\n\t\tfns.reduceRight((res, fn) => fn(res), val);\n\nexport { createStyleMixin } from './createStyleMixin';\nexport { draggableMixin } from './draggableMixin';\nexport { createProxy } from './createProxy';\nexport { inputMixin } from './inputMixin';\nexport { componentNameValidationMixin } from './componentNameValidationMixin';\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('button');\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\nconst resetStyles = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-button { margin: 0; }\n\tvaadin-button::part(prefix) {\n\t\tmargin-left: 0;\n\t\tmargin-right: 0;\n\t}\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\tgap: 5px;\n\t}\n`;\n\nlet overrides = ``;\n\nconst selectors = {\n\tlabel: '::part(label)'\n};\n\nconst Button = compose(\n\tcreateStyleMixin({\n\t\t// todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n\t\tmappings: {\n\t\t\tbackgroundColor: {},\n\t\t\tborderRadius: {},\n\t\t\tcolor: { selector: selectors.label },\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\t\t\tfontSize: {},\n\t\t\theight: {},\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: {},\n\t\t\tpadding: [{ selector: selectors.label }],\n\t\t\ttextDecoration: { selector: selectors.label }\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} ${editorOverrides} ${iconStyles} ${loadingIndicatorStyles}`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\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\t--marginRatio: 1.35;\n\t\tcolor: var(${Button.cssVarList.color});\n\t\tanimation: spin 2s linear infinite;\n\t\tposition: absolute;\n\t\ttop: calc(50% - calc((var(${Button.cssVarList.height}) / var(--marginRatio)) / 2));\n\t\tleft: calc(50% - calc((var(${Button.cssVarList.height}) / var(--marginRatio)) / 2));\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-width: calc(var(${Button.cssVarList.height}) / 12);\n\t\tborder-style: solid;\n\t\twidth: calc(var(${Button.cssVarList.height}) / var(--marginRatio));\n\t\theight: calc(var(${Button.cssVarList.height}) / var(--marginRatio));\n\t}\n\t:host([loading=\"true\"])::part(prefix),\n\t:host([loading=\"true\"])::part(label) {\n\t\tvisibility: hidden;\n\t}\n`;\n\nexport default Button;\n","import '@vaadin/button';\nimport Button, { componentName } from './Button';\n\ncustomElements.define(componentName, Button);\n\nexport { Button };\n","import { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nconst selectors = {\n\tlabel: '::part(label)',\n\tinput: '::part(input-field)',\n\treadOnlyInput: '[readonly]::part(input-field)::after',\n\tplaceholder: '> input:placeholder-shown'\n};\n\nexport default {\n\tcolor: { selector: selectors.input },\n\tbackgroundColor: { selector: selectors.input },\n\tcolor: { selector: selectors.input },\n\twidth: matchHostStyle({}),\n\tborderColor: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderWidth: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderStyle: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderRadius: { selector: selectors.input },\n\tboxShadow: { selector: selectors.input },\n\tfontSize: {},\n\theight: { selector: selectors.input },\n\tpadding: { selector: selectors.input },\n\toutline: { selector: selectors.input },\n\toutlineOffset: { selector: selectors.input },\n\n\tplaceholderColor: { selector: selectors.placeholder, property: 'color' }\n};\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('text-field');\n\nlet overrides = ``;\n\nconst TextField = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\tvaadin-text-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-text-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-text-field input:-webkit-autofill,\n\tvaadin-text-field input:-webkit-autofill::first-line,\n\tvaadin-text-field input:-webkit-autofill:hover,\n\tvaadin-text-field input:-webkit-autofill:active,\n\tvaadin-text-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${TextField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${TextField.cssVarList.height}) var(${TextField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-text-field > label,\n\tvaadin-text-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${TextField.cssVarList.color});\n\t}\n\tvaadin-text-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-text-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${TextField.cssVarList.color});\n\t}\n\tvaadin-text-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default TextField;\n","import '@vaadin/text-field';\nimport TextField, { componentName } from './TextField';\n\ncustomElements.define(componentName, TextField);\n\nexport { TextField };\n","import { getComponentName } from '../../componentsHelpers';\nimport '../descope-button';\nimport '../descope-text-field';\n\nconst template = document.createElement('template');\n\nconst componentName = getComponentName('combo');\n\ntemplate.innerHTML = `\n <descope-button></descope-button>\n <descope-text-field></descope-text-field>\n`;\n\nclass Combo extends HTMLElement {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).appendChild(\n\t\t\ttemplate.content.cloneNode(true)\n\t\t);\n\t}\n}\n\ncustomElements.define(componentName, Combo);\n\nexport { Combo };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('number-field');\n\nlet overrides = ``;\n\nconst NumberField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-number-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-number-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-number-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-number-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-number-field input:-webkit-autofill,\n\tvaadin-number-field input:-webkit-autofill::first-line,\n\tvaadin-number-field input:-webkit-autofill:hover,\n\tvaadin-number-field input:-webkit-autofill:active,\n\tvaadin-number-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${NumberField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${NumberField.cssVarList.height}) var(${NumberField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-number-field > label,\n\tvaadin-number-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${NumberField.cssVarList.color});\n\t}\n\tvaadin-number-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-number-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${NumberField.cssVarList.color});\n\t}\n\tvaadin-number-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default NumberField;\n","import '@vaadin/number-field';\nimport NumberField, { componentName } from './NumberField';\n\ncustomElements.define(componentName, NumberField);\n\nexport { NumberField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('email-field');\n\nlet overrides = ``;\n\nconst EmailField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-email-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-email-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-email-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-email-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-email-field input:-webkit-autofill,\n\tvaadin-email-field input:-webkit-autofill::first-line,\n\tvaadin-email-field input:-webkit-autofill:hover,\n\tvaadin-email-field input:-webkit-autofill:active,\n\tvaadin-email-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${EmailField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${EmailField.cssVarList.height}) var(${EmailField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-email-field > label,\n\tvaadin-email-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${EmailField.cssVarList.color});\n\t}\n\tvaadin-email-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-email-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${EmailField.cssVarList.color});\n\t}\n\tvaadin-email-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default EmailField;\n","import '@vaadin/email-field';\nimport EmailField, { componentName } from './EmailField';\n\ncustomElements.define(componentName, EmailField);\n\nexport { EmailField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('password-field');\n\nlet overrides = ``;\n\nconst PasswordField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings,\n\t\t\t// todo: override cursor from lumo\n\t\t\trevealCursor: [\n\t\t\t\t{\n\t\t\t\t\tselector: '::part(reveal-button)::before',\n\t\t\t\t\tproperty: 'cursor'\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-password-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-password-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-password-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-password-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-password-field input:-webkit-autofill,\n\tvaadin-password-field input:-webkit-autofill::first-line,\n\tvaadin-password-field input:-webkit-autofill:hover,\n\tvaadin-password-field input:-webkit-autofill:active,\n\tvaadin-password-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${PasswordField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${PasswordField.cssVarList.height}) var(${PasswordField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-password-field > label,\n\tvaadin-password-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${PasswordField.cssVarList.color});\n\t}\n\tvaadin-password-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-password-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${PasswordField.cssVarList.color});\n\t}\n\tvaadin-password-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default PasswordField;\n","import '@vaadin/password-field';\nimport PasswordField, { componentName } from './PasswordField';\n\ncustomElements.define(componentName, PasswordField);\n\nexport { PasswordField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('text-area');\n\nconst selectors = {\n\tlabel: '::part(label)',\n\tinput: '::part(input-field)',\n\trequired: '::part(required-indicator)::after'\n};\n\nlet overrides = ``;\n\nconst TextArea = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tresize: { selector: '> textarea' },\n\t\t\tcolor: { selector: selectors.label },\n\t\t\tcursor: {},\n\t\t\twidth: matchHostStyle(),\n\t\t\tbackgroundColor: { selector: selectors.input },\n\t\t\tborderWidth: { selector: selectors.input },\n\t\t\tborderStyle: { selector: selectors.input },\n\t\t\tborderColor: { selector: selectors.input },\n\t\t\tborderRadius: { selector: selectors.input },\n\t\t\toutline: { selector: selectors.input },\n\t\t\toutlineOffset: { selector: selectors.input }\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-area',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\tvaadin-text-area {\n\t\tmargin: 0;\n\t}\n\tvaadin-text-area > label,\n\tvaadin-text-area::part(input-field) {\n\t\tcursor: pointer;\n\t}\n\tvaadin-text-area[focused]::part(input-field) {\n\t\tcursor: text;\n\t}\n\tvaadin-text-area::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t}\t\n`;\nexport default TextArea;\n","import '@vaadin/text-area';\nimport TextArea, { componentName } from './TextArea';\n\ncustomElements.define(componentName, TextArea);\n\nexport { TextArea };\n","import '@vaadin/date-picker';\nimport {\n\tgetComponentName,\n\tdraggableMixin,\n\tcreateProxy,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nconst componentName = getComponentName('date-picker');\n\nconst DatePicker = compose(\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tcomponentName,\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-date-picker',\n\t\tstyle: ``\n\t})\n);\n\ncustomElements.define(componentName, DatePicker);\n\nexport { DatePicker };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nexport const componentName = getComponentName('container');\n\nclass RawContainer extends HTMLElement {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\t\ttemplate.innerHTML = `<slot></slot>`;\n\n\t\tthis.attachShadow({ mode: 'open' });\n\t\tthis.shadowRoot.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > slot';\n\t}\n}\n\nconst Container = compose(\n\tcreateStyleMixin({\n\t\t// todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n\t\tmappings: {\n\t\t\theight: {},\n\t\t\twidth: {},\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\tdisplay: {},\n\t\t\tflexDirection: {},\n\t\t\tjustifyContent: {},\n\t\t\talignItems: {},\n\t\t\tgap: {},\n\n\t\t\tbackgroundColor: {},\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\nexport default Container;\n","import Container, { componentName } from './Container';\n\ncustomElements.define(componentName, Container);\n\nexport { Container };\n","import merge from 'lodash.merge';\nimport set from 'lodash.set';\nimport { DESCOPE_PREFIX } from '../constants';\nimport { getCssVarName, kebabCase } from '../helpers';\nimport { getComponentName } from '../componentsHelpers';\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\nexport const themeToCSSVarsObj = (theme) =>\n\ttransformTheme(theme, [], (path, val) => ({\n\t\t[getVarName(path)]: Array.isArray(val) ? stringifyArray(val) : 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 globalsThemeToStyle = (theme, themeName = '') => `\n*[data-theme=\"${themeName}\"] {\n\t${Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t\t(acc, entry) => (acc += `${entry.join(':')};\\n`),\n\t\t''\n\t)}\n}\n`;\n\nconst componentsThemeToStyleObj = (componentsTheme) =>\n\ttransformTheme(componentsTheme, [], (path, val) => {\n\t\tconst [component, ...restPath] = path;\n\t\tconst property = restPath.pop();\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\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 = `${getComponentName(component)}${attrsSelector}`;\n\n\t\treturn {\n\t\t\t[selector]: {\n\t\t\t\t[property]: val\n\t\t\t}\n\t\t};\n\t});\n\nexport const componentsThemeToStyle = (componentsTheme, themeName = '') =>\n\tObject.entries(componentsThemeToStyleObj(componentsTheme)).reduce(\n\t\t(acc, [selector, vars]) =>\n\t\t\t(acc += `*[data-theme=\"${themeName}\"] ${selector} { \\n${Object.entries(\n\t\t\t\tvars\n\t\t\t)\n\t\t\t\t.map(([key, val]) => `${key}: ${val}`)\n\t\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t''\n\t);\n\nexport const themeToStyle = ({ globals, components }, themeName) => `\n${globalsThemeToStyle(globals, themeName)}\n${componentsThemeToStyle(components, themeName)}\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","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 { genColors } from '../themeHelpers/processColors';\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 typography = {\n\th1: {\n\t\tfont: ['Courier New', 'Arial', 'sans-serif'],\n\t\tweight: '700',\n\t\tsize: '48px'\n\t},\n\th2: {\n\t\tfont: ['Courier New', 'sans-serif'],\n\t\tweight: '500',\n\t\tsize: '38px'\n\t},\n\th3: {\n\t\tfont: ['Courier New', 'sans-serif'],\n\t\tweight: '300',\n\t\tsize: '28px'\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\tsm: '1px',\n\tmd: '2px',\n\tlg: '3px'\n};\n\nconst radius = {\n\tsm: '5px',\n\tmd: '25px',\n\tlg: '50px'\n};\n\nconst shadow = {\n\t\twide: {\n\t\t\tsm: '0 2px 3px -0.5px',\n\t\t\tmd: '0 4px 6px -1px',\n\t\t\tlg: '0 10px 15px -3px',\n\t\t\txl: '0 20px 25px -5px',\n\t\t\t'2xl': '0 25px 50px -12px',\n\t\t},\n\t\tnarrow: {\n\t\t\tsm: '0 1px 2px -1px',\n\t\t\tmd: '0 2px 4px -2px',\n\t\t\tlg: '0 4px 6px -4px',\n\t\t\txl: '0 8px 10px -6px',\n\t\t\t'2xl': '0 16px 16px -8px',\n\t\t}\n};\n\nexport default {\n\tcolors,\n\ttypography,\n\tspacing,\n\tborder,\n\tradius,\n\tshadow\n};\n","import globals from '../globals';\nimport { getThemeRefs, createHelperVars } from '../../themeHelpers';\nimport Button, { componentName } from '../../components/descope-button/Button';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = Button.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] = createHelperVars({ mode }, componentName);\n\nconst button = {\n\t...helperTheme,\n\n\tsize: {\n\t\txs: {\n\t\t\t[vars.height]: '10px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xs}`\n\t\t},\n\t\tsm: {\n\t\t\t[vars.height]: '20px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.sm}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.height]: '30px',\n\t\t\t[vars.fontSize]: '14px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.md}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.height]: '40px',\n\t\t\t[vars.fontSize]: '20px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.lg}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.height]: '50px',\n\t\t\t[vars.fontSize]: '25px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xl}`\n\t\t}\n\t},\n\n\t[vars.borderRadius]: globalRefs.radius.lg,\n\t[vars.cursor]: 'pointer',\n\t[vars.borderWidth]: '2px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\t_loading: {\n\t\t[vars.cursor]: 'wait'\n\t},\n\n\tvariant: {\n\t\tcontained: {\n\t\t\t[vars.color]: helperRefs.contrast,\n\t\t\t[vars.backgroundColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[vars.backgroundColor]: helperRefs.dark\n\t\t\t},\n\t\t\t_loading: {\n\t\t\t\t[vars.backgroundColor]: helperRefs.main\n\t\t\t}\n\t\t},\n\t\toutline: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.borderColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[vars.color]: helperRefs.dark,\n\t\t\t\t[vars.borderColor]: helperRefs.dark,\n\t\t\t\t_error: {\n\t\t\t\t\t[vars.color]: helperRefs.error\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tlink: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.padding]: 0,\n\t\t\t[vars.margin]: 0,\n\t\t\t[vars.lineHeight]: helperRefs.height,\n\t\t\t[vars.borderRadius]: 0,\n\t\t\t_hover: {\n\t\t\t\t[vars.color]: helperRefs.main,\n\t\t\t\t[vars.textDecoration]: 'underline'\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport default button;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../themeHelpers';\nimport TextField from '../../components/descope-text-field/TextField';\n\nconst globalRefs = getThemeRefs(globals);\n\nconst vars = TextField.cssVarList;\n\nexport const textField = (vars) => ({\n\tsize: {\n\t\txs: {\n\t\t\t[vars.height]: '14px',\n\t\t\t[vars.fontSize]: '8px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xs}`\n\t\t},\n\t\tsm: {\n\t\t\t[vars.height]: '20px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.sm}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.height]: '30px',\n\t\t\t[vars.fontSize]: '14px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.md}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.height]: '40px',\n\t\t\t[vars.fontSize]: '16px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.lg}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.height]: '50px',\n\t\t\t[vars.fontSize]: '25px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xl}`\n\t\t}\n\t},\n\n\t[vars.color]: globalRefs.colors.surface.contrast,\n\t[vars.placeholderColor]: globalRefs.colors.surface.contrast,\n\n\t[vars.backgroundColor]: globalRefs.colors.surface.light,\n\n\t[vars.borderWidth]: '1px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\t[vars.borderRadius]: globalRefs.radius.sm,\n\n\t_borderOffset: {\n\t\t[vars.outlineOffset]: '2px'\n\t},\n\n\t_disabled: {\n\t\t[vars.color]: globalRefs.colors.surface.dark,\n\t\t[vars.placeholderColor]: globalRefs.colors.surface.light,\n\t\t[vars.backgroundColor]: globalRefs.colors.surface.main\n\t},\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\n\t_focused: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.surface.main}`\n\t},\n\n\t_bordered: {\n\t\t[vars.borderColor]: globalRefs.colors.surface.main\n\t},\n\n\t_hasErrorMessage: {\n\t\t[vars.borderColor]: globalRefs.colors.error.main,\n\t\t[vars.color]: globalRefs.colors.error.main,\n\t\t[vars.placeholderColor]: globalRefs.colors.error.light\n\t}\n});\n\nexport default textField(vars);\n","import PasswordField from '../../components/descope-password-field/PasswordField';\nimport { textField } from './textField';\n\nconst vars = PasswordField.cssVarList;\n\nconst passwordField = {\n\t...textField(vars),\n\t[vars.revealCursor]: 'pointer'\n};\n\nexport default passwordField;\n","import NumberField from '../../components/descope-number-field/NumberField';\nimport { textField } from './textField';\n\nconst numberField = {\n\t...textField(NumberField.cssVarList)\n};\n\nexport default numberField;\n","import EmailField from '../../components/descope-email-field/EmailField';\nimport { textField } from './textField';\n\nconst emailField = {\n\t...textField(EmailField.cssVarList)\n};\n\nexport default emailField;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../themeHelpers';\nimport TextArea from '../../components/descope-text-area/TextArea';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextArea.cssVarList;\n\nconst textArea = {\n\t[vars.color]: globalRefs.colors.primary.main,\n\t[vars.backgroundColor]: globalRefs.colors.surface.light,\n\t[vars.resize]: 'vertical',\n\n\t[vars.borderRadius]: globalRefs.radius.sm,\n\t[vars.borderWidth]: '1px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\n\t_borderOffset: {\n\t\t[vars.outlineOffset]: '2px'\n\t},\n\n\t_bordered: {\n\t\t[vars.borderColor]: globalRefs.colors.surface.main\n\t},\n\n\t_focused: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.surface.main}`\n\t},\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\n\t_disabled: {\n\t\t[vars.cursor]: 'not-allowed'\n\t},\n\n\t_invalid: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.error.main}`\n\t}\n};\n\nexport default textArea;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin,\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('checkbox');\n\nconst Checkbox = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: [{}, { selector: '> label' }]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-checkbox',\n\t\tstyle: `\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default Checkbox;\n","import Checkbox from '../../components/descope-checkbox/Checkbox';\n\nconst vars = Checkbox.cssVarList;\n\nconst checkbox = {\n\t[vars.cursor]: 'pointer'\n};\n\nexport default checkbox;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin,\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('switch-toggle');\n\nlet overrides = ``;\n\nconst SwitchToggle = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: [{}, { selector: '> label' }]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-checkbox',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\t\n\t:host {\n\t\t--margin: 7px;\n\t\t--width: var(${SwitchToggle.cssVarList.width});\n\t\t--height: calc(var(--width) / 2);\n\t\t--radius: var(--height);\n\t\t--knobSize: calc(var(--height) - 5px);\n\t\t--bgColor: #fff;\n\t\t--knobBgColor: #000;\n\t}\n\tvaadin-checkbox>label {\n\t\tcursor: pointer;\n\t\tborder: 1px solid;\n\t\ttext-indent: -99999px;\n\t\tdisplay: block;\n\t\tposition: relative;\t\t\t\n\t\twidth: var(--width);\n\t\theight: var(--height);\n\t\tbackground: var(--bgColor);\n\t\tborder-radius: var(--radius);\n\t}\n\tvaadin-checkbox>label::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\ttransition: 0.3s;\n\t\ttop: var(--margin);\n\t\tleft: var(--margin);\n\t\twidth: var(--knobSize);\n\t\theight: var(--knobSize);\n\t\tbackground: var(--knobBgColor);\n\t\tborder-radius: var(--knobSize);\n\t}\n\tvaadin-checkbox::part(checkbox) {\n\t\theight: 0;\n\t\twidth: 0;\n\t\tvisibility: hidden;\n\t}\n\tvaadin-checkbox[checked]>label::after {\n\t\ttransform: translateX(-100%);\n\t\tleft: calc(100% - var(--margin));\n\t}\n\tvaadin-checkbox[active]>label::after {\n\t\twidth: calc(var(--knobSize) + 15px);\n\t}\n`;\n\nexport default SwitchToggle;\n","import SwitchToggle from '../../components/descope-switch-toggle/SwitchToggle';\n\nconst vars = SwitchToggle.cssVarList;\n\nconst swtichToggle = {\n\t[vars.width]: '70px',\n\t[vars.cursor]: [{}, { selector: '> label' }]\n};\n\nexport default swtichToggle;\n","import globals from \"../globals\";\nimport { getThemeRefs, createHelperVars } from \"../../themeHelpers\";\nimport Container from \"../../components/descope-container/Container\";\n\nconst globalRefs = getThemeRefs(globals);\n\nconst vars = Container.cssVarList\n\nconst verticalAlignment = {\n\tstart: { verticalAlignment: 'start' },\n\tcenter: { verticalAlignment: 'center' },\n\tend: { verticalAlignment: 'end' },\n}\n\nconst horizontalAlignment = {\n\tstart: { horizontalAlignment: 'start' },\n\tcenter: { horizontalAlignment: '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}, 'container')\n\nconst container = {\n\t...helperTheme,\n\t[vars.display]: 'flex',\n\tverticalPadding: {\n\t\tsm: { [vars.verticalPadding]: '5px' },\n\t\tmd: { [vars.verticalPadding]: '10px' },\n\t\tlg: { [vars.verticalPadding]: '20px' },\n\t},\n\thorizontalPadding: {\n\t\tsm: { [vars.horizontalPadding]: '5px' },\n\t\tmd: { [vars.horizontalPadding]: '10px' },\n\t\tlg: { [vars.horizontalPadding]: '20px' },\n\t},\n\tdirection: {\n\t\trow: {\n\t\t\t[vars.flexDirection]: 'row',\n\t\t\t[vars.alignItems]: helperRefs.verticalAlignment,\n\t\t\t[vars.justifyContent]: helperRefs.horizontalAlignment,\n\t\t\thorizontalAlignment: {\n\t\t\t\tspaceBetween: { [helperVars.horizontalAlignment]: 'space-between' },\n\t\t\t}\n\t\t},\n\n\t\tcolumn: {\n\t\t\t[vars.flexDirection]: 'column',\n\t\t\t[vars.alignItems]: helperRefs.horizontalAlignment,\n\t\t\t[vars.justifyContent]: helperRefs.verticalAlignment,\n\t\t\tverticalAlignment: {\n\t\t\t\tspaceBetween: { [helperVars.verticalAlignment]: 'space-between' }\n\t\t\t}\n\t\t},\n\t},\n\n\tspaceBetween: {\n\t\tsm: {\n\t\t\t[vars.gap]: '10px'\n\t\t},\n\t\tmd: {\n\t\t\t[vars.gap]: '20px'\n\t\t},\n\t\tlg: {\n\t\t\t[vars.gap]: '30px'\n\t\t}\n\t},\n\n\tshadow: {\n\t\tsm: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.sm} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.sm} ${helperRefs.shadowColor}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.md} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.md} ${helperRefs.shadowColor}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.lg} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.lg} ${helperRefs.shadowColor}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.xl} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.xl} ${helperRefs.shadowColor}`\n\t\t},\n\t\t'2xl': {\n\t\t\t[helperVars.shadowColor]: '#00000050',\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide['2xl']} ${helperRefs.shadowColor}`\n\t\t},\n\t},\n\n\tborderRadius: {\n\t\tsm: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.sm\n\t\t},\n\t\tmd: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.md\n\t\t},\n\t\tlg: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.lg\n\t\t},\n\t}\n};\n\nexport default container;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nexport const componentName = getComponentName('logo');\n\nlet style\nconst getStyle = () => style;\n\nclass RawLogo extends HTMLElement {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\t\ttemplate.innerHTML = `\n\t\t<style>\n\t\t\t${getStyle()}\n\t\t</style>\n\t\t<div></div>`;\n\n\t\tthis.attachShadow({ mode: 'open' });\n\t\tthis.shadowRoot.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > div';\n\t}\n}\n\nconst Logo = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\theight: {},\n\t\t\twidth: {},\n\t\t\turl: {},\n\t\t\tfallbackUrl: {},\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLogo);\n\nstyle = `\n:host {\n\tdisplay: inline-block;\n}\n:host > div {\n\tdisplay: inline-block;\n\tcontent: var(${Logo.cssVarList.url}, var(${Logo.cssVarList.fallbackUrl}));\n}\n`\n\nexport default Logo;\n","import Logo from \"../../components/descope-logo/Logo\";\n\nconst vars = Logo.cssVarList\n\nconst logo = {\n\t[vars.fallbackUrl]: 'url(https://content.app.descope.com/assets/flows/noLogoPlaceholder.svg)'\n};\n\nexport default logo;\n","import button from './button';\nimport textField from './textField';\nimport passwordField from './passwordField';\nimport numberField from './numberField';\nimport emailField from './emailField';\nimport textArea from './textArea';\nimport checkbox from './checkbox';\nimport switchToggle from './switchToggle';\nimport container from './container';\nimport logo from './logo';\n\nexport default {\n\tbutton,\n\ttextField,\n\tpasswordField,\n\tnumberField,\n\temailField,\n\ttextArea,\n\tcheckbox,\n\tswitchToggle,\n\tcontainer,\n\tlogo\n};\n","import globals from './globals';\nimport components from './components';\n\nexport default { globals, components };\n"],"names":["componentName","selectors","overrides","globalRefs","vars","helperTheme","helperRefs","textField","switchToggle"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/constants.js","../src/helpers.js","../src/componentsHelpers/createStyleMixin/helpers.js","../src/componentsHelpers/createStyleMixin/index.js","../src/componentsHelpers/draggableMixin.js","../src/componentsHelpers/createProxy/helpers.js","../src/componentsHelpers/createProxy/index.js","../src/componentsHelpers/inputMixin.js","../src/componentsHelpers/componentNameValidationMixin.js","../src/componentsHelpers/index.js","../src/components/descope-button/Button.js","../src/components/descope-button/index.js","../src/components/descope-text-field/textFieldMappings.js","../src/components/descope-text-field/TextField.js","../src/components/descope-text-field/index.js","../src/components/descope-combo/index.js","../src/components/descope-number-field/NumberField.js","../src/components/descope-number-field/index.js","../src/components/descope-email-field/EmailField.js","../src/components/descope-email-field/index.js","../src/components/descope-password-field/PasswordField.js","../src/components/descope-password-field/index.js","../src/components/descope-text-area/TextArea.js","../src/components/descope-text-area/index.js","../src/components/descope-date-picker/index.js","../src/components/descope-container/Container.js","../src/components/descope-container/index.js","../src/components/descope-text/Text.js","../src/components/descope-text/index.js","../src/themeHelpers/index.js","../src/themeHelpers/processColors.js","../src/theme/globals.js","../src/theme/components/button.js","../src/theme/components/textField.js","../src/theme/components/passwordField.js","../src/theme/components/numberField.js","../src/theme/components/emailField.js","../src/theme/components/textArea.js","../src/components/descope-checkbox/Checkbox.js","../src/theme/components/checkbox.js","../src/components/descope-switch-toggle/SwitchToggle.js","../src/theme/components/switchToggle.js","../src/theme/components/container.js","../src/components/descope-logo/Logo.js","../src/theme/components/logo.js","../src/theme/components/text.js","../src/components/descope-passcode/descope-passcode-internal/PasscodeInternal.js","../src/components/descope-passcode/Passcode.js","../src/theme/components/passcode.js","../src/theme/components/index.js","../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope';\n","export 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.join('-'));\n\nexport const getCssVarName = (...args) =>\n\t`--${kebabCaseJoin(...args.filter((arg) => !!arg))}`;\n","import { getCssVarName, kebabCase } from '../../helpers';\n\nconst createCssVarFallback = (first, ...rest) =>\n\t`var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (\n\tbaseSelector = '',\n\trelativeSelectorOrSelectorFn = ''\n) =>\n\ttypeof relativeSelectorOrSelectorFn === 'function'\n\t\t? relativeSelectorOrSelectorFn(baseSelector)\n\t\t: `${baseSelector}${relativeSelectorOrSelectorFn}`;\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\t(style += `${selector} { \\n${propValArr\n\t\t\t\t\t.map(({ property, value }) => `${property}: ${value}`)\n\t\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\tproperty,\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// match the host selector with the inner element selector\n// e.g. when we want to set the same size for the host & the inner element this can be useful\nexport const matchHostStyle = (mappingObj = {}) => [\n\tmappingObj,\n\t{ ...mappingObj, selector: () => `:host${mappingObj.selector || ''}` }\n];\n","import { getCssVarName, kebabCaseJoin } from '../../helpers';\nimport { createStyle, createCssVarsList } from './helpers';\n\nexport const createStyleMixin =\n\t({ mappings = {}, nestedMappings = {} }) =>\n\t\t(superclass) => {\n\t\t\tconst styleAttributes = Object.keys(mappings).map((key) =>\n\t\t\t\tkebabCaseJoin('st', key)\n\t\t\t);\n\t\t\treturn class CustomStyleMixinClass extends superclass {\n\t\t\t\tstatic get observedAttributes() {\n\t\t\t\t\tconst superAttrs = superclass.observedAttributes || [];\n\t\t\t\t\treturn [...superAttrs, ...styleAttributes];\n\t\t\t\t}\n\n\t\t\t\tstatic get cssVarList() {\n\t\t\t\t\treturn createCssVarsList(superclass.componentName, mappings);\n\t\t\t\t}\n\n\t\t\t\t#styleEle = null;\n\n\t\t\t\tconstructor() {\n\t\t\t\t\tsuper();\n\n\t\t\t\t\tthis.#createComponentStyle();\n\t\t\t\t\tthis.#createAttrOverrideStyle();\n\t\t\t\t}\n\n\t\t\t\t#createAttrOverrideStyle() {\n\t\t\t\t\tthis.#styleEle = document.createElement('style');\n\t\t\t\t\tthis.#styleEle.id = 'style-mixin-overrides';\n\n\t\t\t\t\tthis.#styleEle.innerText = '* {}';\n\t\t\t\t\tthis.shadowRoot.prepend(this.#styleEle);\n\t\t\t\t}\n\n\t\t\t\t#updateAttrOverrideStyle(attrName, value) {\n\t\t\t\t\tconst style = this.#styleEle.sheet?.cssRules[0].style;\n\t\t\t\t\tconst varName = getCssVarName(\n\t\t\t\t\t\tsuperclass.componentName,\n\t\t\t\t\t\tattrName.replace(/^st-/, '')\n\t\t\t\t\t);\n\n\t\t\t\t\tif (value) style?.setProperty(varName, value);\n\t\t\t\t\telse style?.removeProperty(varName);\n\t\t\t\t}\n\n\t\t\t\t#createComponentStyle() {\n\t\t\t\t\tconst themeStyle = document.createElement('style');\n\t\t\t\t\tthemeStyle.id = 'style-mixin-component';\n\t\t\t\t\tthemeStyle.innerHTML = createStyle(\n\t\t\t\t\t\tsuperclass.componentName,\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.shadowRoot.prepend(themeStyle);\n\t\t\t\t}\n\n\t\t\t\t#createComponentNestingStyle() {\n\t\t\t\t\t// we need these selectors to be more specific from the theme selectors\n\t\t\t\t\t// in order to do it, we are repeating the class name for specificity\n\t\t\t\t\tconst numOfClassNameSpecifier = 3\n\n\t\t\t\t\tconst rootNode = this.shadowRoot.host.getRootNode()\n\t\t\t\t\tconst styleId = `${superclass.componentName}-style-mixin-component`\n\n\t\t\t\t\tconst className = superclass.componentName\n\t\t\t\t\tthis.shadowRoot.host.classList.add(className)\n\n\t\t\t\t\tif(rootNode.querySelector(`style#${styleId}`)) return;\n\n\t\t\t\t\tconst themeStyle = document.createElement('style');\n\t\t\t\t\tthemeStyle.id = styleId;\n\t\t\t\t\tthemeStyle.innerHTML = createStyle(\n\t\t\t\t\t\tsuperclass.componentName,\n\t\t\t\t\t\t`${superclass.componentName}${Array(numOfClassNameSpecifier).fill(`.${className}`).join('')}`,\n\t\t\t\t\t\tnestedMappings\n\t\t\t\t\t);\n\n\t\t\t\t\t// rootNode can be either a shadow DOM or a light DOM\n\t\t\t\t\tif (rootNode.nodeName === '#document') {\n\t\t\t\t\t\trootNode.head.append(themeStyle)\n\t\t\t\t\t} else {\n\t\t\t\t\t\trootNode.append(themeStyle)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tattributeChangedCallback(attrName, oldValue, newValue) {\n\t\t\t\t\tsuper.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n\t\t\t\t\tif (styleAttributes.includes(attrName)) {\n\t\t\t\t\t\tthis.#updateAttrOverrideStyle(attrName, newValue);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconnectedCallback() {\n\t\t\t\t\tsuper.connectedCallback?.();\n\t\t\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\t\t\tthis.#createComponentNestingStyle();\n\n\t\t\t\t\t\tArray.from(this.attributes).forEach(attr => {\n\t\t\t\t\t\t\tif (styleAttributes.includes(attr.nodeName)) {\n\t\t\t\t\t\t\t\tthis.#updateAttrOverrideStyle(attr.nodeName, attr.value)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\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 = `${this.baseSelector} { cursor: inherit }`;\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\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","const observeAttributes = (ele, callback, excludeAttrs) => {\n\t// sync all attrs on init\n\tcallback(...Array.from(ele.attributes).map((attr) => attr.name));\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) {\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\nconst createSyncAttrsCb =\n\t(srcEle, targetEle) =>\n\t(...attrNames) => {\n\t\tattrNames.forEach((attrName) => {\n\t\t\tconst srcAttrVal = srcEle.getAttribute(attrName);\n\t\t\tif (srcAttrVal !== null) {\n\t\t\t\tif (targetEle.getAttribute(attrName) !== srcAttrVal) {\n\t\t\t\t\ttargetEle.setAttribute(attrName, srcAttrVal);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttargetEle.removeAttribute(attrName);\n\t\t\t}\n\t\t});\n\t};\n\nexport const syncAttrs = (ele1, ele2, excludeAttrs) => {\n\tobserveAttributes(ele1, createSyncAttrsCb(ele1, ele2), excludeAttrs);\n\tobserveAttributes(ele2, createSyncAttrsCb(ele2, ele1), excludeAttrs);\n};\n","import { syncAttrs } from './helpers';\n\nexport const createProxy = ({\n\tcomponentName,\n\twrappedEleName,\n\tslots = [],\n\tstyle,\n\texcludeAttrsSync = []\n}) => {\n\tconst template = `\n\t\t<style id=\"create-proxy\"></style>\n\t\t<${wrappedEleName}>\n\t\t<slot></slot>\n\t\t${slots.map((slot) => `<slot name=\"${slot}\" slot=\"${slot}\"></slot>`).join('')}\n\t\t</${wrappedEleName}>\n\t`;\n\n\tclass ProxyElement extends HTMLElement {\n\t\tstatic get componentName() {\n\t\t\treturn componentName;\n\t\t}\n\n\t\tconstructor() {\n\t\t\tsuper().attachShadow({ mode: 'open' }).innerHTML = template;\n\t\t\tthis.hostElement = this.shadowRoot.host;\n\t\t\tthis.componentName = this.hostElement.tagName.toLowerCase();\n\t\t\tthis.baseSelector = wrappedEleName;\n\t\t\tthis.shadowRoot.getElementById('create-proxy').innerHTML =\n\t\t\t\ttypeof style === 'function' ? style() : style;\n\t\t}\n\n\t\tconnectedCallback() {\n\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\tthis.proxyElement = this.shadowRoot.querySelector(wrappedEleName);\n\t\t\t\tthis.setAttribute('tabindex', '0');\n\n\t\t\t\t// we want to focus on the proxy element when focusing our WC\n\t\t\t\tthis.addEventListener('focus', () => {\n\t\t\t\t\tthis.proxyElement.focus();\n\t\t\t\t})\n\n\t\t\t\t// `onkeydown` is set on `proxyElement` support proper tab-index navigation\n\t\t\t\t// this support is needed since both proxy host and element catch `focus`/`blur` event\n\t\t\t\t// which causes faulty behaviour.\n\t\t\t\tthis.proxyElement.onkeydown = (e) => {\n\t\t\t\t\tif (e.shiftKey && e.keyCode === 9) {\n\t\t\t\t\t\tthis.removeAttribute('tabindex');\n\t\t\t\t\t\t// We want to defer the action of setting the tab index back\n\t\t\t\t\t\t// so it will happen after focusing the previous element\n\t\t\t\t\t\tsetTimeout(() => this.setAttribute('tabindex', '0'), 0);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tthis.mouseoverCbRef = () => {\n\t\t\t\t\tthis.proxyElement.setAttribute('hover', '');\n\t\t\t\t\tthis.proxyElement.addEventListener(\n\t\t\t\t\t\t'mouseleave',\n\t\t\t\t\t\t() => this.proxyElement.removeAttribute('hover'),\n\t\t\t\t\t\t{ once: true }\n\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tthis.proxyElement.addEventListener('mouseover', this.mouseoverCbRef);\n\n\t\t\t\t// sync events\n\t\t\t\tthis.addEventListener = (...args) => this.proxyElement.addEventListener(...args)\n\t\t\t\tsyncAttrs(this.proxyElement, this.hostElement, excludeAttrsSync);\n\t\t\t}\n\t\t}\n\n\t\tdisconnectedCallback() {\n\t\t\tthis.proxyElement.removeEventListener('mouseover', this.mouseoverCbRef);\n\t\t}\n\n\t\tattributeChangedCallback() {\n\t\t\tif (!this.proxyElement) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn ProxyElement;\n};\n","const attrs = {\n\tvalueMissing: 'data-errormessage-value-missing',\n\tpatternMismatch: 'data-errormessage-pattern-mismatch'\n};\n\nconst errorAttrs = ['invalid', 'has-error-message'];\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\nexport const inputMixin = (superclass) =>\n\tclass InputMixinClass extends superclass {\n\t\tstatic get formAssociated() {\n\t\t\treturn true;\n\t\t}\n\n\t\t#internals;\n\n\t\tconstructor() {\n\t\t\tsuper();\n\n\t\t\tthis.#internals = this.attachInternals();\n\t\t}\n\n\t\tformAssociatedCallback() {\n\t\t\tthis.setValidity?.();\n\t\t}\n\n\t\tsetValidationAttribute(attr) {\n\t\t\tconst validationAttr = this.getAttribute(attr);\n\t\t\tif (validationAttr) {\n\t\t\t\tthis.proxyElement.setAttribute('error-message', validationAttr);\n\t\t\t}\n\t\t\t// normalize vaadin error attributes to have a boolean value\n\t\t\terrorAttrs.forEach((att) => this.proxyElement.setAttribute(att, 'true'));\n\t\t}\n\n\t\tvalidate() {\n\t\t\tconst { valueMissing, patternMismatch, typeMismatch } = this.validity;\n\t\t\tif (valueMissing) {\n\t\t\t\tthis.setValidationAttribute(attrs.valueMissing);\n\t\t\t} else if (typeMismatch || patternMismatch) {\n\t\t\t\tthis.setValidationAttribute(attrs.patternMismatch);\n\t\t\t}\n\t\t}\n\n\t\tconnectedCallback() {\n\t\t\tsuper.connectedCallback?.();\n\n\t\t\tthis.baseEle = this.shadowRoot.querySelector(this.baseSelector);\n\n\t\t\t// this is needed in order to make sure the form input validation is working\n\t\t\tif (!this.hasAttribute('tabindex')) {\n\t\t\t\tthis.setAttribute('tabindex', 0);\n\t\t\t}\n\n\t\t\tthis.inputElement ??= this.baseEle.shadowRoot.querySelector('slot[name=\"input\"]')?.assignedElements()[0] ||\n\t\t\t\tthis.baseEle.shadowRoot.querySelector('slot[name=\"textarea\"]')?.assignedElements()[0]\n\t\t\tif (!this.inputElement) throw Error('no input was found');\n\n\t\t\t// sync properties\n\t\t\tpropertyObserver(this, this.inputElement, 'value');\n\t\t\tthis.setSelectionRange = this.inputElement.setSelectionRange?.bind(this.inputElement);\n\n\t\t\tthis.validity = this.inputElement.validity;\n\n\t\t\tthis.setValidity = () => {\n\t\t\t\tthis.#internals.setValidity(this.inputElement.validity, this.inputElement.validationMessage);\n\t\t\t};\n\n\t\t\tthis.inputElement.oninput = () => {\n\t\t\t\tthis.value = this.inputElement.value;\n\t\t\t\tthis.setValidity();\n\t\t\t};\n\n\t\t\tthis.onfocus = () => {\n\t\t\t\tsetTimeout(() => this.inputElement.reportValidity(), 0);\n\t\t\t\tthis.validate();\n\t\t\t};\n\n\t\t\tthis.inputElement.oninvalid = () => {\n\t\t\t\tthis.validate();\n\t\t\t};\n\t\t}\n\t};\n","export const componentNameValidationMixin = (superclass) =>\n\tclass DraggableMixinClass extends superclass {\n\t\t#checkComponentName() {\n\t\t\tconst currentComponentName = this.shadowRoot.host.tagName.toLowerCase();\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\tconnectedCallback() {\n\t\t\tsuper.connectedCallback?.();\n\t\t\tif (this.shadowRoot.isConnected) {\n\t\t\t\tthis.#checkComponentName();\n\t\t\t}\n\t\t}\n\t};\n","import { DESCOPE_PREFIX } from '../constants';\nimport { kebabCaseJoin } from '../helpers';\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name);\n\nexport const compose =\n\t(...fns) =>\n\t(val) =>\n\t\tfns.reduceRight((res, fn) => fn(res), val);\n\nexport { createStyleMixin } from './createStyleMixin';\nexport { draggableMixin } from './draggableMixin';\nexport { createProxy } from './createProxy';\nexport { inputMixin } from './inputMixin';\nexport { componentNameValidationMixin } from './componentNameValidationMixin';\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('button');\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\nconst resetStyles = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-button { margin: 0; }\n\tvaadin-button::part(prefix) {\n\t\tmargin-left: 0;\n\t\tmargin-right: 0;\n\t}\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\tgap: 5px;\n\t}\n`;\n\nlet overrides = ``;\n\nconst selectors = {\n\tlabel: '::part(label)'\n};\n\nconst Button = compose(\n\tcreateStyleMixin({\n\t\t// todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n\t\tmappings: {\n\t\t\tbackgroundColor: {},\n\t\t\tborderRadius: {},\n\t\t\tcolor: { selector: selectors.label },\n\t\t\tborderColor: {},\n\t\t\tborderStyle: {},\n\t\t\tborderWidth: {},\n\t\t\tfontSize: {},\n\t\t\theight: {},\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: {},\n\t\t\tpadding: [{ selector: selectors.label }],\n\t\t\ttextDecoration: { selector: selectors.label }\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} ${editorOverrides} ${iconStyles} ${loadingIndicatorStyles}`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\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\t--marginRatio: 1.35;\n\t\tcolor: var(${Button.cssVarList.color});\n\t\tanimation: spin 2s linear infinite;\n\t\tposition: absolute;\n\t\ttop: calc(50% - calc((var(${Button.cssVarList.height}) / var(--marginRatio)) / 2));\n\t\tleft: calc(50% - calc((var(${Button.cssVarList.height}) / var(--marginRatio)) / 2));\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-width: calc(var(${Button.cssVarList.height}) / 12);\n\t\tborder-style: solid;\n\t\twidth: calc(var(${Button.cssVarList.height}) / var(--marginRatio));\n\t\theight: calc(var(${Button.cssVarList.height}) / var(--marginRatio));\n\t}\n\t:host([loading=\"true\"])::part(prefix),\n\t:host([loading=\"true\"])::part(label) {\n\t\tvisibility: hidden;\n\t}\n`;\n\nexport default Button;\n","import '@vaadin/button';\nimport Button, { componentName } from './Button';\n\ncustomElements.define(componentName, Button);\n\nexport { Button };\n","import { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nconst selectors = {\n\tlabel: '::part(label)',\n\tinput: '::part(input-field)',\n\treadOnlyInput: '[readonly]::part(input-field)::after',\n\tplaceholder: '> input:placeholder-shown'\n};\n\nexport default {\n\tcolor: { selector: selectors.input },\n\tbackgroundColor: { selector: selectors.input },\n\tcolor: { selector: selectors.input },\n\twidth: matchHostStyle({}),\n\tborderColor: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderWidth: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderStyle: [\n\t\t{ selector: selectors.input },\n\t\t{ selector: selectors.readOnlyInput }\n\t],\n\tborderRadius: { selector: selectors.input },\n\tboxShadow: { selector: selectors.input },\n\tfontSize: {},\n\theight: { selector: selectors.input },\n\tpadding: { selector: selectors.input },\n\toutline: { selector: selectors.input },\n\toutlineOffset: { selector: selectors.input },\n\n\tplaceholderColor: { selector: selectors.placeholder, property: 'color' }\n};\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('text-field');\n\nlet overrides = ``;\n\nconst TextField = compose(\n\tcreateStyleMixin({\n\t\tmappings: textFieldMappings\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-text-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\tvaadin-text-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-text-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-text-field input:-webkit-autofill,\n\tvaadin-text-field input:-webkit-autofill::first-line,\n\tvaadin-text-field input:-webkit-autofill:hover,\n\tvaadin-text-field input:-webkit-autofill:active,\n\tvaadin-text-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${TextField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${TextField.cssVarList.height}) var(${TextField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-text-field > label,\n\tvaadin-text-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${TextField.cssVarList.color});\n\t}\n\tvaadin-text-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-text-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${TextField.cssVarList.color});\n\t}\n\tvaadin-text-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default TextField;\n","import '@vaadin/text-field';\nimport TextField, { componentName } from './TextField';\n\ncustomElements.define(componentName, TextField);\n\nexport { TextField };\n","import { getComponentName } from '../../componentsHelpers';\nimport '../descope-button';\nimport '../descope-text-field';\n\nconst template = document.createElement('template');\n\nconst componentName = getComponentName('combo');\n\ntemplate.innerHTML = `\n <descope-button></descope-button>\n <descope-text-field></descope-text-field>\n`;\n\nclass Combo extends HTMLElement {\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.attachShadow({ mode: 'open' }).appendChild(\n\t\t\ttemplate.content.cloneNode(true)\n\t\t);\n\t}\n}\n\ncustomElements.define(componentName, Combo);\n\nexport { Combo };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('number-field');\n\nlet overrides = ``;\n\nconst NumberField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-number-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-number-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-number-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-number-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-number-field input:-webkit-autofill,\n\tvaadin-number-field input:-webkit-autofill::first-line,\n\tvaadin-number-field input:-webkit-autofill:hover,\n\tvaadin-number-field input:-webkit-autofill:active,\n\tvaadin-number-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${NumberField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${NumberField.cssVarList.height}) var(${NumberField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-number-field > label,\n\tvaadin-number-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${NumberField.cssVarList.color});\n\t}\n\tvaadin-number-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-number-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${NumberField.cssVarList.color});\n\t}\n\tvaadin-number-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default NumberField;\n","import '@vaadin/number-field';\nimport NumberField, { componentName } from './NumberField';\n\ncustomElements.define(componentName, NumberField);\n\nexport { NumberField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('email-field');\n\nlet overrides = ``;\n\nconst EmailField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-email-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-email-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-email-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-email-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-email-field input:-webkit-autofill,\n\tvaadin-email-field input:-webkit-autofill::first-line,\n\tvaadin-email-field input:-webkit-autofill:hover,\n\tvaadin-email-field input:-webkit-autofill:active,\n\tvaadin-email-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${EmailField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${EmailField.cssVarList.height}) var(${EmailField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-email-field > label,\n\tvaadin-email-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${EmailField.cssVarList.color});\n\t}\n\tvaadin-email-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-email-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${EmailField.cssVarList.color});\n\t}\n\tvaadin-email-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default EmailField;\n","import '@vaadin/email-field';\nimport EmailField, { componentName } from './EmailField';\n\ncustomElements.define(componentName, EmailField);\n\nexport { EmailField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\n\nexport const componentName = getComponentName('password-field');\n\nlet overrides = ``;\n\nconst PasswordField = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\t...textFieldMappings,\n\t\t\t// todo: override cursor from lumo\n\t\t\trevealCursor: [\n\t\t\t\t{\n\t\t\t\t\tselector: '::part(reveal-button)::before',\n\t\t\t\t\tproperty: 'cursor'\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: ['suffix'],\n\t\twrappedEleName: 'vaadin-password-field',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\tvaadin-password-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-password-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-password-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\tvaadin-password-field input:-webkit-autofill,\n\tvaadin-password-field input:-webkit-autofill::first-line,\n\tvaadin-password-field input:-webkit-autofill:hover,\n\tvaadin-password-field input:-webkit-autofill:active,\n\tvaadin-password-field input:-webkit-autofill:focus {\n\t\t-webkit-text-fill-color: var(${PasswordField.cssVarList.color});\n\t\tbox-shadow: 0 0 0 var(${PasswordField.cssVarList.height}) var(${PasswordField.cssVarList.backgroundColor}) inset;\n\t}\n\tvaadin-password-field > label,\n\tvaadin-password-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${PasswordField.cssVarList.color});\n\t}\n\tvaadin-password-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-password-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${PasswordField.cssVarList.color});\n\t}\n\tvaadin-password-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default PasswordField;\n","import '@vaadin/password-field';\nimport PasswordField, { componentName } from './PasswordField';\n\ncustomElements.define(componentName, PasswordField);\n\nexport { PasswordField };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('text-area');\n\nconst selectors = {\n\tlabel: '::part(label)',\n\tinput: '::part(input-field)',\n\trequired: '::part(required-indicator)::after'\n};\n\nlet overrides = ``;\n\nconst TextArea = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tresize: { selector: '> textarea' },\n\t\t\tcolor: { selector: selectors.label },\n\t\t\tcursor: {},\n\t\t\twidth: matchHostStyle(),\n\t\t\tbackgroundColor: { selector: selectors.input },\n\t\t\tborderWidth: { selector: selectors.input },\n\t\t\tborderStyle: { selector: selectors.input },\n\t\t\tborderColor: { selector: selectors.input },\n\t\t\tborderRadius: { selector: selectors.input },\n\t\t\toutline: { selector: selectors.input },\n\t\t\toutlineOffset: { selector: selectors.input }\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-text-area',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\tvaadin-text-area {\n\t\tmargin: 0;\n\t}\n\tvaadin-text-area > label,\n\tvaadin-text-area::part(input-field) {\n\t\tcursor: pointer;\n\t}\n\tvaadin-text-area[focused]::part(input-field) {\n\t\tcursor: text;\n\t}\n\tvaadin-text-area::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t}\t\n`;\nexport default TextArea;\n","import '@vaadin/text-area';\nimport TextArea, { componentName } from './TextArea';\n\ncustomElements.define(componentName, TextArea);\n\nexport { TextArea };\n","import '@vaadin/date-picker';\nimport {\n\tgetComponentName,\n\tdraggableMixin,\n\tcreateProxy,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nconst componentName = getComponentName('date-picker');\n\nconst DatePicker = compose(\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tcomponentName,\n\t\tslots: ['prefix', 'suffix'],\n\t\twrappedEleName: 'vaadin-date-picker',\n\t\tstyle: ``\n\t})\n);\n\ncustomElements.define(componentName, DatePicker);\n\nexport { DatePicker };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nexport const componentName = getComponentName('container');\n\nclass RawContainer extends HTMLElement {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\t\ttemplate.innerHTML = `<slot></slot>`;\n\n\t\tthis.attachShadow({ mode: 'open' });\n\t\tthis.shadowRoot.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > slot';\n\t}\n}\n\nconst Container = compose(\n\tcreateStyleMixin({\n\t\t// todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n\t\tmappings: {\n\t\t\theight: {},\n\t\t\twidth: {},\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\tdisplay: {}, // maybe this should be hardcoded to flex\n\t\t\tflexDirection: {},\n\t\t\tjustifyContent: {},\n\t\t\talignItems: {},\n\t\t\tgap: {},\n\n\t\t\tbackgroundColor: {},\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\nexport default Container;\n","import Container, { componentName } from './Container';\n\ncustomElements.define(componentName, Container);\n\nexport { Container };\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('text');\n\nclass RawText extends HTMLElement {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\t\ttemplate.innerHTML = `<slot></slot>`;\n\n\t\tthis.attachShadow({ mode: 'open' });\n\t\tthis.shadowRoot.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > slot';\n\t}\n}\n\nconst Text = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\tfontFamily: {},\n\t\t\tlineHeight: {},\n\t\t\tfontStyle: {},\n\t\t\tfontSize: {},\n\t\t\tfontWeight: {},\n\t\t\twidth: {},\n\t\t\tcolor: {},\n\t\t\ttextAlign: matchHostStyle(),\n\t\t\tdisplay: matchHostStyle()\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawText);\n\nexport default Text;\n","import Text, { componentName } from './Text';\n\ncustomElements.define(componentName, Text);\n\nexport { Text };\n","import merge from 'lodash.merge';\nimport set from 'lodash.set';\nimport { DESCOPE_PREFIX } from '../constants';\nimport { getCssVarName, kebabCase } from '../helpers';\nimport { getComponentName } from '../componentsHelpers';\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\nexport const themeToCSSVarsObj = (theme) =>\n\ttransformTheme(theme, [], (path, val) => ({\n\t\t[getVarName(path)]: Array.isArray(val) ? stringifyArray(val) : 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 globalsThemeToStyle = (theme, themeName = '') => `\n*[data-theme=\"${themeName}\"] {\n\t${Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t\t(acc, entry) => (acc += `${entry.join(':')};\\n`),\n\t\t''\n\t)}\n}\n`;\n\nconst componentsThemeToStyleObj = (componentsTheme) =>\n\ttransformTheme(componentsTheme, [], (path, val) => {\n\t\tconst [component, ...restPath] = path;\n\t\tconst property = restPath.pop();\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\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 = `${getComponentName(component)}${attrsSelector}`;\n\n\t\treturn {\n\t\t\t[selector]: {\n\t\t\t\t[property]: val\n\t\t\t}\n\t\t};\n\t});\n\nexport const componentsThemeToStyle = (componentsTheme, themeName = '') =>\n\tObject.entries(componentsThemeToStyleObj(componentsTheme)).reduce(\n\t\t(acc, [selector, vars]) =>\n\t\t\t(acc += `*[data-theme=\"${themeName}\"] ${selector} { \\n${Object.entries(\n\t\t\t\tvars\n\t\t\t)\n\t\t\t\t.map(([key, val]) => `${key}: ${val}`)\n\t\t\t\t.join(';\\n')} \\n}\\n\\n`),\n\t\t''\n\t);\n\nexport const themeToStyle = ({ globals, components }, themeName) => `\n${globalsThemeToStyle(globals, themeName)}\n${componentsThemeToStyle(components, themeName)}\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","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 } from '../themeHelpers';\nimport { genColors } from '../themeHelpers/processColors';\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: ['Roboto', 'sans-serif'],\n\tfont2: ['Oswald', 'serif']\n};\nconst fontsRef = getThemeRefs({ fonts }).fonts;\n\nconst typography = {\n\th1: {\n\t\tfont: fontsRef.font1,\n\t\tweight: '900',\n\t\tsize: '48px'\n\t},\n\th2: {\n\t\tfont: fontsRef.font1,\n\t\tweight: '800',\n\t\tsize: '38px'\n\t},\n\th3: {\n\t\tfont: fontsRef.font1,\n\t\tweight: '600',\n\t\tsize: '28px'\n\t},\n\tsubtitle1: {\n\t\tfont: fontsRef.font2,\n\t\tweight: '500',\n\t\tsize: '22px'\n\t},\n\tsubtitle2: {\n\t\tfont: fontsRef.font2,\n\t\tweight: '400',\n\t\tsize: '20px'\n\t},\n\tbody1: {\n\t\tfont: fontsRef.font1,\n\t\tweight: '300',\n\t\tsize: '16px'\n\t},\n\tbody2: {\n\t\tfont: fontsRef.font1,\n\t\tweight: '200',\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\tsm: '1px',\n\tmd: '2px',\n\tlg: '3px'\n};\n\nconst radius = {\n\tsm: '5px',\n\tmd: '25px',\n\tlg: '50px'\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\nexport default {\n\tcolors,\n\ttypography,\n\tspacing,\n\tborder,\n\tradius,\n\tshadow,\n\tfonts\n};\n","import globals from '../globals';\nimport { getThemeRefs, createHelperVars } from '../../themeHelpers';\nimport Button, { componentName } from '../../components/descope-button/Button';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = Button.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] = createHelperVars({ mode }, componentName);\n\nconst button = {\n\t...helperTheme,\n\n\tsize: {\n\t\txs: {\n\t\t\t[vars.height]: '10px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xs}`\n\t\t},\n\t\tsm: {\n\t\t\t[vars.height]: '20px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.sm}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.height]: '30px',\n\t\t\t[vars.fontSize]: '14px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.md}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.height]: '40px',\n\t\t\t[vars.fontSize]: '20px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.lg}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.height]: '50px',\n\t\t\t[vars.fontSize]: '25px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xl}`\n\t\t}\n\t},\n\n\t[vars.borderRadius]: globalRefs.radius.lg,\n\t[vars.cursor]: 'pointer',\n\t[vars.borderWidth]: '2px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\t_loading: {\n\t\t[vars.cursor]: 'wait'\n\t},\n\n\tvariant: {\n\t\tcontained: {\n\t\t\t[vars.color]: helperRefs.contrast,\n\t\t\t[vars.backgroundColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[vars.backgroundColor]: helperRefs.dark\n\t\t\t},\n\t\t\t_loading: {\n\t\t\t\t[vars.backgroundColor]: helperRefs.main\n\t\t\t}\n\t\t},\n\t\toutline: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.borderColor]: helperRefs.main,\n\t\t\t_hover: {\n\t\t\t\t[vars.color]: helperRefs.dark,\n\t\t\t\t[vars.borderColor]: helperRefs.dark,\n\t\t\t\t_error: {\n\t\t\t\t\t[vars.color]: helperRefs.error\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tlink: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.padding]: 0,\n\t\t\t[vars.margin]: 0,\n\t\t\t[vars.lineHeight]: helperRefs.height,\n\t\t\t[vars.borderRadius]: 0,\n\t\t\t_hover: {\n\t\t\t\t[vars.color]: helperRefs.main,\n\t\t\t\t[vars.textDecoration]: 'underline'\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport default button;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../themeHelpers';\nimport TextField from '../../components/descope-text-field/TextField';\n\nconst globalRefs = getThemeRefs(globals);\n\nconst vars = TextField.cssVarList;\n\nexport const textField = (vars) => ({\n\tsize: {\n\t\txs: {\n\t\t\t[vars.height]: '14px',\n\t\t\t[vars.fontSize]: '8px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xs}`\n\t\t},\n\t\tsm: {\n\t\t\t[vars.height]: '20px',\n\t\t\t[vars.fontSize]: '10px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.sm}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.height]: '30px',\n\t\t\t[vars.fontSize]: '14px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.md}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.height]: '40px',\n\t\t\t[vars.fontSize]: '16px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.lg}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.height]: '50px',\n\t\t\t[vars.fontSize]: '25px',\n\t\t\t[vars.padding]: `0 ${globalRefs.spacing.xl}`\n\t\t}\n\t},\n\n\t[vars.color]: globalRefs.colors.surface.contrast,\n\t[vars.placeholderColor]: globalRefs.colors.surface.contrast,\n\n\t[vars.backgroundColor]: globalRefs.colors.surface.light,\n\n\t[vars.borderWidth]: '1px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\t[vars.borderRadius]: globalRefs.radius.sm,\n\n\t_borderOffset: {\n\t\t[vars.outlineOffset]: '2px'\n\t},\n\n\t_disabled: {\n\t\t[vars.color]: globalRefs.colors.surface.dark,\n\t\t[vars.placeholderColor]: globalRefs.colors.surface.light,\n\t\t[vars.backgroundColor]: globalRefs.colors.surface.main\n\t},\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\n\t_focused: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.surface.main}`\n\t},\n\n\t_bordered: {\n\t\t[vars.borderColor]: globalRefs.colors.surface.main\n\t},\n\n\t_hasErrorMessage: {\n\t\t[vars.borderColor]: globalRefs.colors.error.main,\n\t\t[vars.color]: globalRefs.colors.error.main,\n\t\t[vars.placeholderColor]: globalRefs.colors.error.light\n\t}\n});\n\nexport default textField(vars);\n","import PasswordField from '../../components/descope-password-field/PasswordField';\nimport { textField } from './textField';\n\nconst vars = PasswordField.cssVarList;\n\nconst passwordField = {\n\t...textField(vars),\n\t[vars.revealCursor]: 'pointer'\n};\n\nexport default passwordField;\n","import NumberField from '../../components/descope-number-field/NumberField';\nimport { textField } from './textField';\n\nconst numberField = {\n\t...textField(NumberField.cssVarList)\n};\n\nexport default numberField;\n","import EmailField from '../../components/descope-email-field/EmailField';\nimport { textField } from './textField';\n\nconst emailField = {\n\t...textField(EmailField.cssVarList)\n};\n\nexport default emailField;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../themeHelpers';\nimport TextArea from '../../components/descope-text-area/TextArea';\n\nconst globalRefs = getThemeRefs(globals);\nconst vars = TextArea.cssVarList;\n\nconst textArea = {\n\t[vars.color]: globalRefs.colors.primary.main,\n\t[vars.backgroundColor]: globalRefs.colors.surface.light,\n\t[vars.resize]: 'vertical',\n\n\t[vars.borderRadius]: globalRefs.radius.sm,\n\t[vars.borderWidth]: '1px',\n\t[vars.borderStyle]: 'solid',\n\t[vars.borderColor]: 'transparent',\n\n\t_borderOffset: {\n\t\t[vars.outlineOffset]: '2px'\n\t},\n\n\t_bordered: {\n\t\t[vars.borderColor]: globalRefs.colors.surface.main\n\t},\n\n\t_focused: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.surface.main}`\n\t},\n\n\t_fullWidth: {\n\t\t[vars.width]: '100%'\n\t},\n\n\t_disabled: {\n\t\t[vars.cursor]: 'not-allowed'\n\t},\n\n\t_invalid: {\n\t\t[vars.outline]: `2px solid ${globalRefs.colors.error.main}`\n\t}\n};\n\nexport default textArea;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin,\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('checkbox');\n\nconst Checkbox = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: [{}, { selector: '> label' }]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-checkbox',\n\t\tstyle: `\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t`,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\nexport default Checkbox;\n","import Checkbox from '../../components/descope-checkbox/Checkbox';\n\nconst vars = Checkbox.cssVarList;\n\nconst checkbox = {\n\t[vars.cursor]: 'pointer'\n};\n\nexport default checkbox;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcreateProxy,\n\tinputMixin,\n\tcompose,\n\tcomponentNameValidationMixin,\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\n\nexport const componentName = getComponentName('switch-toggle');\n\nlet overrides = ``;\n\nconst SwitchToggle = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\twidth: matchHostStyle(),\n\t\t\tcursor: [{}, { selector: '> label' }]\n\t\t}\n\t}),\n\tdraggableMixin,\n\tinputMixin,\n\tcomponentNameValidationMixin\n)(\n\tcreateProxy({\n\t\tslots: [],\n\t\twrappedEleName: 'vaadin-checkbox',\n\t\tstyle: () => overrides,\n\t\texcludeAttrsSync: ['tabindex'],\n\t\tcomponentName\n\t})\n);\n\noverrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\t\n\t:host {\n\t\t--margin: 7px;\n\t\t--width: var(${SwitchToggle.cssVarList.width});\n\t\t--height: calc(var(--width) / 2);\n\t\t--radius: var(--height);\n\t\t--knobSize: calc(var(--height) - 5px);\n\t\t--bgColor: #fff;\n\t\t--knobBgColor: #000;\n\t}\n\tvaadin-checkbox>label {\n\t\tcursor: pointer;\n\t\tborder: 1px solid;\n\t\ttext-indent: -99999px;\n\t\tdisplay: block;\n\t\tposition: relative;\t\t\t\n\t\twidth: var(--width);\n\t\theight: var(--height);\n\t\tbackground: var(--bgColor);\n\t\tborder-radius: var(--radius);\n\t}\n\tvaadin-checkbox>label::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\ttransition: 0.3s;\n\t\ttop: var(--margin);\n\t\tleft: var(--margin);\n\t\twidth: var(--knobSize);\n\t\theight: var(--knobSize);\n\t\tbackground: var(--knobBgColor);\n\t\tborder-radius: var(--knobSize);\n\t}\n\tvaadin-checkbox::part(checkbox) {\n\t\theight: 0;\n\t\twidth: 0;\n\t\tvisibility: hidden;\n\t}\n\tvaadin-checkbox[checked]>label::after {\n\t\ttransform: translateX(-100%);\n\t\tleft: calc(100% - var(--margin));\n\t}\n\tvaadin-checkbox[active]>label::after {\n\t\twidth: calc(var(--knobSize) + 15px);\n\t}\n`;\n\nexport default SwitchToggle;\n","import SwitchToggle from '../../components/descope-switch-toggle/SwitchToggle';\n\nconst vars = SwitchToggle.cssVarList;\n\nconst swtichToggle = {\n\t[vars.width]: '70px',\n\t[vars.cursor]: [{}, { selector: '> label' }]\n};\n\nexport default swtichToggle;\n","import globals from \"../globals\";\nimport { getThemeRefs, createHelperVars } from \"../../themeHelpers\";\nimport Container from \"../../components/descope-container/Container\";\n\nconst globalRefs = getThemeRefs(globals);\n\nconst vars = Container.cssVarList\n\nconst verticalAlignment = {\n\tstart: { verticalAlignment: 'start' },\n\tcenter: { verticalAlignment: 'center' },\n\tend: { verticalAlignment: 'end' },\n}\n\nconst horizontalAlignment = {\n\tstart: { horizontalAlignment: 'start' },\n\tcenter: { horizontalAlignment: '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}, 'container')\n\nconst container = {\n\t...helperTheme,\n\t[vars.display]: 'flex',\n\tverticalPadding: {\n\t\tsm: { [vars.verticalPadding]: '5px' },\n\t\tmd: { [vars.verticalPadding]: '10px' },\n\t\tlg: { [vars.verticalPadding]: '20px' },\n\t},\n\thorizontalPadding: {\n\t\tsm: { [vars.horizontalPadding]: '5px' },\n\t\tmd: { [vars.horizontalPadding]: '10px' },\n\t\tlg: { [vars.horizontalPadding]: '20px' },\n\t},\n\tdirection: {\n\t\trow: {\n\t\t\t[vars.flexDirection]: 'row',\n\t\t\t[vars.alignItems]: helperRefs.verticalAlignment,\n\t\t\t[vars.justifyContent]: helperRefs.horizontalAlignment,\n\t\t\thorizontalAlignment: {\n\t\t\t\tspaceBetween: { [helperVars.horizontalAlignment]: 'space-between' },\n\t\t\t}\n\t\t},\n\n\t\tcolumn: {\n\t\t\t[vars.flexDirection]: 'column',\n\t\t\t[vars.alignItems]: helperRefs.horizontalAlignment,\n\t\t\t[vars.justifyContent]: helperRefs.verticalAlignment,\n\t\t\tverticalAlignment: {\n\t\t\t\tspaceBetween: { [helperVars.verticalAlignment]: 'space-between' }\n\t\t\t}\n\t\t},\n\t},\n\n\tspaceBetween: {\n\t\tsm: {\n\t\t\t[vars.gap]: '10px'\n\t\t},\n\t\tmd: {\n\t\t\t[vars.gap]: '20px'\n\t\t},\n\t\tlg: {\n\t\t\t[vars.gap]: '30px'\n\t\t}\n\t},\n\n\tshadow: {\n\t\tsm: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.sm} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.sm} ${helperRefs.shadowColor}`\n\t\t},\n\t\tmd: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.md} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.md} ${helperRefs.shadowColor}`\n\t\t},\n\t\tlg: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.lg} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.lg} ${helperRefs.shadowColor}`\n\t\t},\n\t\txl: {\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide.xl} ${helperRefs.shadowColor}, ${globalRefs.shadow.narrow.xl} ${helperRefs.shadowColor}`\n\t\t},\n\t\t'2xl': {\n\t\t\t[helperVars.shadowColor]: '#00000050',\n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.wide['2xl']} ${helperRefs.shadowColor}`\n\t\t},\n\t},\n\n\tborderRadius: {\n\t\tsm: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.sm\n\t\t},\n\t\tmd: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.md\n\t\t},\n\t\tlg: {\n\t\t\t[vars.borderRadius]: globalRefs.radius.lg\n\t\t},\n\t}\n};\n\nexport default container;\n","import {\n\tgetComponentName,\n\tcreateStyleMixin,\n\tdraggableMixin,\n\tcompose,\n\tcomponentNameValidationMixin\n} from '../../componentsHelpers';\n\nexport const componentName = getComponentName('logo');\n\nlet style\nconst getStyle = () => style;\n\nclass RawLogo extends HTMLElement {\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\t\ttemplate.innerHTML = `\n\t\t<style>\n\t\t\t${getStyle()}\n\t\t</style>\n\t\t<div></div>`;\n\n\t\tthis.attachShadow({ mode: 'open' });\n\t\tthis.shadowRoot.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > div';\n\t}\n}\n\nconst Logo = compose(\n\tcreateStyleMixin({\n\t\tmappings: {\n\t\t\theight: {},\n\t\t\twidth: {},\n\t\t\turl: {},\n\t\t\tfallbackUrl: {},\n\t\t}\n\t}),\n\tdraggableMixin,\n\tcomponentNameValidationMixin\n)(RawLogo);\n\nstyle = `\n:host {\n\tdisplay: inline-block;\n}\n:host > div {\n\tdisplay: inline-block;\n\tcontent: var(${Logo.cssVarList.url}, var(${Logo.cssVarList.fallbackUrl}));\n}\n`\n\nexport default Logo;\n","import Logo from \"../../components/descope-logo/Logo\";\n\nconst vars = Logo.cssVarList\n\nconst logo = {\n\t[vars.fallbackUrl]: 'url(https://content.app.descope.com/assets/flows/noLogoPlaceholder.svg)'\n};\n\nexport default logo;\n","import globals from '../globals';\nimport { getThemeRefs } from '../../themeHelpers';\nimport Text from '../../components/descope-text/Text';\n\nconst globalRefs = getThemeRefs(globals);\n\nconst vars = Text.cssVarList;\n\nconst text = {\n\t[vars.lineHeight]: '1em',\n\t[vars.display]: 'inline-block',\n\t[vars.textAlign]: 'left',\n\t[vars.color]: 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\tmode: {\n\t\tprimary: {\n\t\t\t[vars.color]: globalRefs.colors.primary.main\n\t\t},\n\t\tsecondary: {\n\t\t\t[vars.color]: globalRefs.colors.secondary.main\n\t\t},\n\t\terror: {\n\t\t\t[vars.color]: globalRefs.colors.error.main\n\t\t},\n\t\tsuccess: {\n\t\t\t[vars.color]: globalRefs.colors.success.main\n\t\t}\n\t},\n\ttextAlign: {\n\t\tright: { [vars.textAlign]: 'right' },\n\t\tleft: { [vars.textAlign]: 'left' },\n\t\tcenter: { [vars.textAlign]: 'center' }\n\t},\n\t_fullWidth: {\n\t\t[vars.width]: '100%',\n\t\t[vars.display]: 'block'\n\t},\n\t_italic: {\n\t\t[vars.fontStyle]: 'italic'\n\t}\n};\n\nexport default text;\n","import { getComponentName } from '../../../componentsHelpers';\nimport { getSanitizedCharacters, focusElement } from './helpers';\n\nexport const componentName = getComponentName('passcode-internal');\n\nclass PasscodeInternal extends HTMLElement {\n\tstatic get observedAttributes() {\n\t\treturn [\n\t\t\t'disabled',\n\t\t\t'bordered',\n\t\t\t'size'\n\t\t];\n\t}\n\n\tstatic get componentName() {\n\t\treturn componentName;\n\t}\n\n\tstatic get formAssociated() {\n\t\treturn true;\n\t}\n\n\t#internals\n\n\tconstructor() {\n\t\tsuper();\n\t\tconst template = document.createElement('template');\n\n\t\tconst inputs = [...Array(this.digits).keys()].map((idx) => `\n\t\t<descope-text-field\n\t\t\tst-width=\"35px\"\n\t\t\tdata-id=${idx}\n\t\t\ttype=\"tel\"\n\t\t\tautocomplete=\"none\"\n\t\t></descope-text-field>\n\t`)\n\n\t\ttemplate.innerHTML = `\n\t\t<div>\n\t\t\t${inputs.join('')}\n\t\t</div>\n\t\t`;\n\n\t\tthis.appendChild(template.content.cloneNode(true));\n\n\t\tthis.baseSelector = ':host > div';\n\n\t\tthis.#internals = this.attachInternals();\n\n\t\tthis.inputs = Array.from(this.querySelectorAll('descope-text-field'))\n\t}\n\n\tcheckValidity() {\n\t\t// we need to toggle the has-error-message so the text inside the digits will become red when there is an error\n\t\tif (this.#internals.validity.valid) {\n\t\t\tthis.inputs.forEach(input => input.removeAttribute('has-error-message'))\n\t\t} else {\n\t\t\tthis.inputs.forEach(input => input.setAttribute('has-error-message', 'true'))\n\t\t\t// we need to call it so the has-error-message with have the correct format (=\"true\")\n\t\t\tthis.oninvalid?.()\n\t\t}\n\t\treturn this.#internals.validity.valid\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\n\tget isRequired() {\n\t\treturn this.hasAttribute('required') && this.getAttribute('required') !== 'false'\n\t}\n\n\tget pattern() {\n\t\treturn `^$|^\\\\d{${this.digits},}$`\n\t}\n\n\tget valueMissingErrMsg() {\n\t\treturn 'Please fill out this field.'\n\t}\n\n\tget patternMismatchErrMsg() {\n\t\treturn `Must be a ${this.digits} digits number.`\n\t}\n\n\tget validity() {\n\t\treturn this.#internals.validity;\n\t}\n\n\tget validationMessage() {\n\t\treturn this.#internals.validationMessage;\n\t}\n\n\treportValidity() {\n\t\tthis.#internals.reportValidity()\n\t}\n\n\tformAssociatedCallback() {\n\t\tthis.setValidity?.();\n\t}\n\n\tsetValidity = () => {\n\t\tif (this.isRequired && !this.value) {\n\t\t\tthis.#internals.setValidity({ valueMissing: true }, this.valueMissingErrMsg);\n\t\t}\n\t\telse if (this.pattern && !new RegExp(this.pattern).test(this.value)) {\n\t\t\tthis.#internals.setValidity({ patternMismatch: true }, this.patternMismatchErrMsg);\n\t\t}\n\t\telse {\n\t\t\tthis.#internals.setValidity({})\n\t\t}\n\t};\n\n\tasync connectedCallback() {\n\t\tthis.setValidity();\n\t\tthis.initInputs()\n\n\t\tthis.onfocus = () => {\n\t\t\tthis.inputs[0].focus();\n\t\t}\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\t\t\tif (nextInput === currentInput) break;\n\t\t\tcurrentInput = nextInput;\n\t\t}\n\n\t\t!currentInput.hasAttribute('focused') && focusElement(currentInput);\n\t};\n\n\tinitInputs() {\n\t\tthis.inputs.forEach((input) => {\n\n\t\t\t// in order to simulate blur on the input\n\t\t\t// we are checking if focus on one of the digits happened immediately after blur on another digit\n\t\t\t// if not, the component is no longer focused and we should simulate blur\n\t\t\tinput.addEventListener('blur', () => {\n\t\t\t\tconst timerId = setTimeout(() => {\n\t\t\t\t\tthis.dispatchEvent(new Event('blur'))\n\t\t\t\t});\n\n\t\t\t\tthis.inputs.forEach((ele) =>\n\t\t\t\t\tele.addEventListener('focus', () => clearTimeout(timerId), { once: true })\n\t\t\t\t);\n\t\t\t})\n\n\t\t\tinput.oninput = (e) => {\n\t\t\t\tconst charArr = getSanitizedCharacters(input.value);\n\n\t\t\t\tif (!charArr.length) input.value = ''; // if we got an invalid value we want to clear the input\n\t\t\t\telse this.fillDigits(charArr, input);\n\n\t\t\t\tthis.setValidity();\n\t\t\t};\n\n\t\t\tinput.onkeydown = ({ key }) => {\n\t\t\t\tif (key === 'Backspace') {\n\t\t\t\t\tinput.value = '';\n\n\t\t\t\t\t// if the user deleted the digit we want to focus the previous digit\n\t\t\t\t\tconst prevInput = this.getPrevInput(input)\n\n\t\t\t\t\t!prevInput.hasAttribute('focused') && setTimeout(() => {\n\t\t\t\t\t\tfocusElement(prevInput);\n\t\t\t\t\t});\n\t\t\t\t} else if (key.match(/^(\\d)$/g)) { // if input is a digit\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\n\t\t\t\tthis.setValidity()\n\t\t\t};\n\t\t})\n\t}\n\n\tattributeChangedCallback(\n\t\tattrName,\n\t\toldValue,\n\t\tnewValue\n\t) {\n\t\tif (oldValue !== newValue &&\n\t\t\tPasscodeInternal.observedAttributes.includes(attrName)) {\n\t\t\tthis.inputs.forEach((input) => input.setAttribute(attrName, newValue))\n\t\t}\n\t}\n}\n\nexport default PasscodeInternal;\n\n","import {\n getComponentName,\n createStyleMixin,\n draggableMixin,\n createProxy,\n inputMixin,\n compose,\n componentNameValidationMixin\n} from '../../componentsHelpers';\nimport { matchHostStyle } from '../../componentsHelpers/createStyleMixin/helpers';\nimport textFieldMappings from '../descope-text-field/textFieldMappings';\nexport const componentName = getComponentName('passcode');\nimport TextField from '../descope-text-field/TextField'\nimport { componentName as descopeInternalComponentName } from './descope-passcode-internal/PasscodeInternal'\n\nconst customMixin = (superclass) =>\n class DraggableMixinClass extends superclass {\n constructor() {\n super();\n }\n\n get digits() {\n return Number.parseInt(this.getAttribute('digits')) || 6\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n const template = document.createElement('template');\n\n //forward required & pattern TODO use forwardAttrs\n template.innerHTML = `\n <${descopeInternalComponentName} \n bordered=\"true\" \n name=\"code\" \n tabindex=\"0\"\n slot=\"input\"\n required=\"${this.shadowRoot.host.getAttribute('required')}\"\n pattern=\"${this.shadowRoot.host.getAttribute('pattern')}\"\n ></${descopeInternalComponentName}>\n `\n\n // we are adding a slot under vaadin-text-field, it should reflect all descope-passcode children to be under vaadin-text-field, this is why it has a name & slot\n const slotEle = Object.assign(document.createElement('slot'), { name: 'input', slot: 'input', part: 'input' })\n this.proxyElement.appendChild(slotEle)\n\n // we want to control when the element is out of focus \n // so the validations will be triggered blur event is dispatched from descope-passcode internal (and not every time focusing a digit)\n this.proxyElement._setFocused = () => { }\n\n this.shadowRoot.host.appendChild(template.content.cloneNode(true))\n this.inputElement = this.querySelector(descopeInternalComponentName)\n\n // we want to trigger validation only when dispatching a blur event from the descope-passcode-internal\n this.inputElement.addEventListener('blur', () => {\n this.proxyElement.validate()\n })\n }\n }\n\nconst { borderStyle, borderWidth, ...restTextFieldMappings } = textFieldMappings;\n\nconst Passcode = compose(\n createStyleMixin({\n mappings: {\n ...restTextFieldMappings,\n },\n nestedMappings: {\n borderColor: {\n selector: ` ${TextField.componentName}`,\n property: TextField.cssVarList.borderColor\n }\n }\n }),\n draggableMixin,\n inputMixin,\n componentNameValidationMixin,\n customMixin\n)(\n createProxy({\n slots: [],\n wrappedEleName: 'vaadin-text-field',\n style: () => `\n :host {\n --vaadin-field-default-width: auto;\n }\n\n ::slotted([slot='input']) {\n -webkit-mask-image: none;\n display: flex;\n gap: 2px;\n align-items: center;\n padding: 0;\n }\n\n vaadin-text-field::part(input-field) {\n background-color: transparent;\n padding: 0;\n }\n\n ${overrides}\n `,\n excludeAttrsSync: ['tabindex'],\n componentName\n })\n);\n\nconst overrides = `\n\t:host {\n\t\tdisplay: inline-block;\n\t}\n\n\tvaadin-text-field {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\tvaadin-text-field::part(input-field) {\n\t\toverflow: hidden;\n\t}\n\tvaadin-text-field[readonly] > input:placeholder-shown {\n\t\topacity: 1;\n\t}\n\n\tvaadin-text-field > label,\n\tvaadin-text-field::part(input-field) {\n\t\tcursor: pointer;\n\t\tcolor: var(${Passcode.cssVarList.color});\n\t}\n\tvaadin-text-field::part(input-field):focus {\n\t\tcursor: text;\n\t}\n\tvaadin-text-field[required]::part(required-indicator)::after {\n\t\tfont-size: \"12px\";\n\t\tcontent: \"*\";\n\t\tcolor: var(${Passcode.cssVarList.color});\n\t}\n\tvaadin-text-field[readonly]::part(input-field)::after {\n\t\tborder: 0 solid;\n\t}\n`;\n\nexport default Passcode;\n","import Passcode from '../../components/descope-passcode/Passcode';\nimport { textField } from './textField';\n\nconst passcode = {\n\t...textField(Passcode.cssVarList),\n};\n\nexport default passcode;\n","import button from './button';\nimport textField from './textField';\nimport passwordField from './passwordField';\nimport numberField from './numberField';\nimport emailField from './emailField';\nimport textArea from './textArea';\nimport checkbox from './checkbox';\nimport switchToggle from './switchToggle';\nimport container from './container';\nimport logo from './logo';\nimport text from './text';\nimport passcode from './passcode';\n\nexport default {\n\tbutton,\n\ttextField,\n\tpasswordField,\n\tnumberField,\n\temailField,\n\ttextArea,\n\tcheckbox,\n\tswitchToggle,\n\tcontainer,\n\tlogo,\n\ttext,\n\tpasscode\n};\n","import globals from './globals';\nimport components from './components';\n\nexport default { globals, components };\n"],"names":["componentName","selectors","overrides","globalRefs","vars","helperTheme","helperRefs","descopeInternalComponentName","textField","switchToggle"],"mappings":"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"}
package/dist/umd/433.js CHANGED
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkDescopeUI=self.webpackChunkDescopeUI||[]).push([[433],{3535:(e,t,s)=>{s.d(t,{SP:()=>i,wj:()=>n,zy:()=>l});var r=s(6225);const o=(e,...t)=>`var(${e}${t.length?` , ${o(...t)}`:""})`;class a{constructor(){this.styleMap=new Map}add(e,t,s){this.styleMap.has(e)||this.styleMap.set(e,[]),this.styleMap.set(e,[...this.styleMap.get(e),{property:t,value:s}])}toString(){return Array.from(this.styleMap.entries()).reduce(((e,[t,s])=>e+`${t} { \n${s.map((({property:e,value:t})=>`${e}: ${t}`)).join(";\n")} \n}\n\n`),"")}}const n=(e,t,s)=>{const n=new a;return Object.keys(s).forEach((a=>{const i=((e,t)=>{const s={selector:"",property:(0,r.GL)(e)};return t&&Object.keys(t).length?Array.isArray(t)?t.map((e=>Object.assign({},s,e))):[Object.assign({},s,t)]:[s]})(a,s[a]),l=(0,r.Tk)(e,a);i.forEach((({selector:e,property:s})=>{n.add(((e="",t="")=>"function"==typeof t?t(e):`${e}${t}`)(t,e),s,o(l))}))})),n.toString()},i=(e,t)=>Object.keys(t).reduce(((t,s)=>Object.assign(t,{[s]:(0,r.Tk)(e,s)})),{}),l=(e={})=>[e,{...e,selector:()=>`:host${e.selector||""}`}]},9433:(e,t,s)=>{s.d(t,{Ae:()=>u,qC:()=>p,DM:()=>c,yk:()=>a,e4:()=>n,iY:()=>m,y7:()=>d});var r=s(6225),o=s(3535);const a=({mappings:e={}})=>t=>{const s=Object.keys(e).map((e=>(0,r.E3)("st",e)));return class extends t{static get observedAttributes(){return[...t.observedAttributes||[],...s]}static get cssVarList(){return(0,o.SP)(t.componentName,e)}#e=null;constructor(){super(),this.#t(),this.#s()}#s(){this.#e=document.createElement("style"),this.#e.id="style-mixin-overrides",this.#e.innerText="* {}",this.shadowRoot.prepend(this.#e)}#r(e,s){const o=this.#e.sheet.cssRules[0].style,a=(0,r.Tk)(t.componentName,e.replace(/^st-/,""));s?o.setProperty(a,s):o.removeProperty(a)}#t(){const s=document.createElement("style");s.id="style-mixin-component",s.innerHTML=(0,o.wj)(t.componentName,this.baseSelector,e),this.shadowRoot.prepend(s)}attributeChangedCallback(e,t,r){super.attributeChangedCallback?.(e,t,r),s.includes(e)&&this.#r(e,r)}connectedCallback(){super.connectedCallback?.(),this.shadowRoot.isConnected&&Array.from(this.attributes).forEach((e=>{s.includes(e.nodeName)&&this.#r(e.nodeName,e.value)}))}}},n=e=>class extends e{#e=null;static get observedAttributes(){return[...e.observedAttributes||[],"draggable"]}constructor(){super(),this.#e=document.createElement("style"),this.#e.innerText=`${this.baseSelector} { cursor: inherit }`}#o(e){e?this.shadowRoot.appendChild(this.#e):this.#e.remove()}attributeChangedCallback(e,t,s){super.attributeChangedCallback?.(e,t,s),"draggable"===e&&this.#o("true"===s)}},i=(e,t,s)=>{t(...Array.from(e.attributes).map((e=>e.name))),new MutationObserver((e=>{for(const r of e)"attributes"!==r.type||s.includes(r.attributeName)||t(r.attributeName)})).observe(e,{attributes:!0})},l=(e,t)=>(...s)=>{s.forEach((s=>{const r=e.getAttribute(s);null!==r?t.getAttribute(s)!==r&&t.setAttribute(s,r):t.removeAttribute(s)}))},c=({componentName:e,wrappedEleName:t,slots:s=[],style:r,excludeAttrsSync:o=[]})=>{const a=`\n\t\t<style id="create-proxy"></style>\n\t\t<${t}>\n\t\t<slot></slot>\n\t\t${s.map((e=>`<slot name="${e}" slot="${e}"></slot>`)).join("")}\n\t\t</${t}>\n\t`;class n extends HTMLElement{static get componentName(){return e}constructor(){super().attachShadow({mode:"open"}).innerHTML=a,this.hostElement=this.shadowRoot.host,this.componentName=this.hostElement.tagName.toLowerCase(),this.baseSelector=t,this.shadowRoot.getElementById("create-proxy").innerHTML="function"==typeof r?r():r}connectedCallback(){var e,s,r;this.shadowRoot.isConnected&&(this.proxyElement=this.shadowRoot.querySelector(t),this.setAttribute("tabindex","0"),this.onfocus=e=>{this.proxyElement.focus()},this.proxyElement.onkeydown=e=>{e.shiftKey&&9===e.keyCode&&(this.removeAttribute("tabindex"),setTimeout((()=>this.setAttribute("tabindex","0")),0))},this.mouseoverCbRef=()=>{this.proxyElement.setAttribute("hover",""),this.proxyElement.addEventListener("mouseleave",(()=>this.proxyElement.removeAttribute("hover")),{once:!0})},this.proxyElement.addEventListener("mouseover",this.mouseoverCbRef),this.addEventListener=this.proxyElement.addEventListener,e=this.proxyElement,s=this.hostElement,r=o,i(e,l(e,s),r),i(s,l(s,e),r))}disconnectedCallback(){this.proxyElement.removeEventListener("mouseover",this.mouseoverCbRef)}attributeChangedCallback(){this.proxyElement}}return n},h=["invalid","has-error-message"],d=e=>class extends e{static get formAssociated(){return!0}#a;constructor(){super(),this.#a=this.attachInternals()}formAssociatedCallback(){this.setValidity?.()}setValidationAttribute(e){const t=this.getAttribute(e);t&&this.proxyElement.setAttribute("error-message",t),h.forEach((e=>this.proxyElement.setAttribute(e,"true")))}validate(){const{valueMissing:e,patternMismatch:t,typeMismatch:s}=this.validity;e?this.setValidationAttribute("data-errormessage-value-missing"):(s||t)&&this.setValidationAttribute("data-errormessage-pattern-mismatch")}connectedCallback(){this.baseEle=this.shadowRoot.querySelector(this.baseSelector),super.connectedCallback?.(),this.hasAttribute("tabindex")||this.setAttribute("tabindex",0);const e=this.baseEle.querySelector("input")||this.baseEle.querySelector("textarea");if(!e)throw Error("no input was found");var t,s;t=e,s="value",Object.defineProperty(this,s,{set:function(e){return t[s]=e},get:function(){return t[s]},configurable:!0}),this.setSelectionRange=e.setSelectionRange.bind(e),this.validity=e.validity,this.setValidity=()=>{this.#a.setValidity(e.validity,e.validationMessage)},e.oninput=()=>{this.value=e.value,this.setValidity()},this.onfocus=()=>{setTimeout((()=>e.reportValidity()),0),this.validate()},e.oninvalid=()=>{this.validate()}}},u=e=>class extends e{#n(){const t=this.shadowRoot.host.tagName.toLowerCase();if(!e.componentName)throw Error('component name is not defined on super class, make sure you have a static get for "componentName"');if(t!==e.componentName)throw Error(`component name mismatch, expected "${e.componentName}", current "${t}"`)}connectedCallback(){super.connectedCallback?.(),this.shadowRoot.isConnected&&this.#n()}},m=e=>(0,r.E3)("descope",e),p=(...e)=>t=>e.reduceRight(((e,t)=>t(e)),t)},6225:(e,t,s)=>{s.d(t,{E3:()=>o,GL:()=>r,Tk:()=>a});const r=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[\s_.]+/g,"-").toLowerCase(),o=(...e)=>r(e.join("-")),a=(...e)=>`--${o(...e.filter((e=>!!e)))}`}}]);
1
+ "use strict";(self.webpackChunkDescopeUI=self.webpackChunkDescopeUI||[]).push([[433],{3535:(e,t,s)=>{s.d(t,{SP:()=>a,wj:()=>r,zy:()=>l});var n=s(6225);const o=(e,...t)=>`var(${e}${t.length?` , ${o(...t)}`:""})`;class i{constructor(){this.styleMap=new Map}add(e,t,s){this.styleMap.has(e)||this.styleMap.set(e,[]),this.styleMap.set(e,[...this.styleMap.get(e),{property:t,value:s}])}toString(){return Array.from(this.styleMap.entries()).reduce(((e,[t,s])=>e+`${t} { \n${s.map((({property:e,value:t})=>`${e}: ${t}`)).join(";\n")} \n}\n\n`),"")}}const r=(e,t,s)=>{const r=new i;return Object.keys(s).forEach((i=>{const a=((e,t)=>{const s={selector:"",property:(0,n.GL)(e)};return t&&Object.keys(t).length?Array.isArray(t)?t.map((e=>Object.assign({},s,e))):[Object.assign({},s,t)]:[s]})(i,s[i]),l=(0,n.Tk)(e,i);a.forEach((({selector:e,property:s})=>{r.add(((e="",t="")=>"function"==typeof t?t(e):`${e}${t}`)(t,e),s,o(l))}))})),r.toString()},a=(e,t)=>Object.keys(t).reduce(((t,s)=>Object.assign(t,{[s]:(0,n.Tk)(e,s)})),{}),l=(e={})=>[e,{...e,selector:()=>`:host${e.selector||""}`}]},9433:(e,t,s)=>{s.d(t,{Ae:()=>m,qC:()=>p,DM:()=>c,yk:()=>i,e4:()=>r,iY:()=>u,y7:()=>d});var n=s(6225),o=s(3535);const i=({mappings:e={},nestedMappings:t={}})=>s=>{const i=Object.keys(e).map((e=>(0,n.E3)("st",e)));return class extends s{static get observedAttributes(){return[...s.observedAttributes||[],...i]}static get cssVarList(){return(0,o.SP)(s.componentName,e)}#e=null;constructor(){super(),this.#t(),this.#s()}#s(){this.#e=document.createElement("style"),this.#e.id="style-mixin-overrides",this.#e.innerText="* {}",this.shadowRoot.prepend(this.#e)}#n(e,t){const o=this.#e.sheet?.cssRules[0].style,i=(0,n.Tk)(s.componentName,e.replace(/^st-/,""));t?o?.setProperty(i,t):o?.removeProperty(i)}#t(){const t=document.createElement("style");t.id="style-mixin-component",t.innerHTML=(0,o.wj)(s.componentName,this.baseSelector,e),this.shadowRoot.prepend(t)}#o(){const e=this.shadowRoot.host.getRootNode(),n=`${s.componentName}-style-mixin-component`,i=s.componentName;if(this.shadowRoot.host.classList.add(i),e.querySelector(`style#${n}`))return;const r=document.createElement("style");r.id=n,r.innerHTML=(0,o.wj)(s.componentName,`${s.componentName}${Array(3).fill(`.${i}`).join("")}`,t),"#document"===e.nodeName?e.head.append(r):e.append(r)}attributeChangedCallback(e,t,s){super.attributeChangedCallback?.(e,t,s),i.includes(e)&&this.#n(e,s)}connectedCallback(){super.connectedCallback?.(),this.shadowRoot.isConnected&&(this.#o(),Array.from(this.attributes).forEach((e=>{i.includes(e.nodeName)&&this.#n(e.nodeName,e.value)})))}}},r=e=>class extends e{#e=null;static get observedAttributes(){return[...e.observedAttributes||[],"draggable"]}constructor(){super(),this.#e=document.createElement("style"),this.#e.innerText=`${this.baseSelector} { cursor: inherit }`}#i(e){e?this.shadowRoot.appendChild(this.#e):this.#e.remove()}attributeChangedCallback(e,t,s){super.attributeChangedCallback?.(e,t,s),"draggable"===e&&this.#i("true"===s)}},a=(e,t,s)=>{t(...Array.from(e.attributes).map((e=>e.name))),new MutationObserver((e=>{for(const n of e)"attributes"!==n.type||s.includes(n.attributeName)||t(n.attributeName)})).observe(e,{attributes:!0})},l=(e,t)=>(...s)=>{s.forEach((s=>{const n=e.getAttribute(s);null!==n?t.getAttribute(s)!==n&&t.setAttribute(s,n):t.removeAttribute(s)}))},c=({componentName:e,wrappedEleName:t,slots:s=[],style:n,excludeAttrsSync:o=[]})=>{const i=`\n\t\t<style id="create-proxy"></style>\n\t\t<${t}>\n\t\t<slot></slot>\n\t\t${s.map((e=>`<slot name="${e}" slot="${e}"></slot>`)).join("")}\n\t\t</${t}>\n\t`;class r extends HTMLElement{static get componentName(){return e}constructor(){super().attachShadow({mode:"open"}).innerHTML=i,this.hostElement=this.shadowRoot.host,this.componentName=this.hostElement.tagName.toLowerCase(),this.baseSelector=t,this.shadowRoot.getElementById("create-proxy").innerHTML="function"==typeof n?n():n}connectedCallback(){var e,s,n;this.shadowRoot.isConnected&&(this.proxyElement=this.shadowRoot.querySelector(t),this.setAttribute("tabindex","0"),this.addEventListener("focus",(()=>{this.proxyElement.focus()})),this.proxyElement.onkeydown=e=>{e.shiftKey&&9===e.keyCode&&(this.removeAttribute("tabindex"),setTimeout((()=>this.setAttribute("tabindex","0")),0))},this.mouseoverCbRef=()=>{this.proxyElement.setAttribute("hover",""),this.proxyElement.addEventListener("mouseleave",(()=>this.proxyElement.removeAttribute("hover")),{once:!0})},this.proxyElement.addEventListener("mouseover",this.mouseoverCbRef),this.addEventListener=(...e)=>this.proxyElement.addEventListener(...e),e=this.proxyElement,s=this.hostElement,n=o,a(e,l(e,s),n),a(s,l(s,e),n))}disconnectedCallback(){this.proxyElement.removeEventListener("mouseover",this.mouseoverCbRef)}attributeChangedCallback(){this.proxyElement}}return r},h=["invalid","has-error-message"],d=e=>class extends e{static get formAssociated(){return!0}#r;constructor(){super(),this.#r=this.attachInternals()}formAssociatedCallback(){this.setValidity?.()}setValidationAttribute(e){const t=this.getAttribute(e);t&&this.proxyElement.setAttribute("error-message",t),h.forEach((e=>this.proxyElement.setAttribute(e,"true")))}validate(){const{valueMissing:e,patternMismatch:t,typeMismatch:s}=this.validity;e?this.setValidationAttribute("data-errormessage-value-missing"):(s||t)&&this.setValidationAttribute("data-errormessage-pattern-mismatch")}connectedCallback(){if(super.connectedCallback?.(),this.baseEle=this.shadowRoot.querySelector(this.baseSelector),this.hasAttribute("tabindex")||this.setAttribute("tabindex",0),this.inputElement??=this.baseEle.shadowRoot.querySelector('slot[name="input"]')?.assignedElements()[0]||this.baseEle.shadowRoot.querySelector('slot[name="textarea"]')?.assignedElements()[0],!this.inputElement)throw Error("no input was found");var e,t;e=this.inputElement,t="value",Object.defineProperty(this,t,{set:function(s){return e[t]=s},get:function(){return e[t]},configurable:!0}),this.setSelectionRange=this.inputElement.setSelectionRange?.bind(this.inputElement),this.validity=this.inputElement.validity,this.setValidity=()=>{this.#r.setValidity(this.inputElement.validity,this.inputElement.validationMessage)},this.inputElement.oninput=()=>{this.value=this.inputElement.value,this.setValidity()},this.onfocus=()=>{setTimeout((()=>this.inputElement.reportValidity()),0),this.validate()},this.inputElement.oninvalid=()=>{this.validate()}}},m=e=>class extends e{#a(){const t=this.shadowRoot.host.tagName.toLowerCase();if(!e.componentName)throw Error('component name is not defined on super class, make sure you have a static get for "componentName"');if(t!==e.componentName)throw Error(`component name mismatch, expected "${e.componentName}", current "${t}"`)}connectedCallback(){super.connectedCallback?.(),this.shadowRoot.isConnected&&this.#a()}},u=e=>(0,n.E3)("descope",e),p=(...e)=>t=>e.reduceRight(((e,t)=>t(e)),t)},6225:(e,t,s)=>{s.d(t,{E3:()=>o,GL:()=>n,Tk:()=>i});const n=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[\s_.]+/g,"-").toLowerCase(),o=(...e)=>n(e.join("-")),i=(...e)=>`--${o(...e.filter((e=>!!e)))}`}}]);