@descope/web-components-ui 1.0.38 → 1.0.39

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.esm.js CHANGED
@@ -125,7 +125,7 @@ const createStyleMixin = ({ mappings = {} }) => (superclass) => {
125
125
  #createComponentStyle() {
126
126
  const themeStyle = document.createElement('style');
127
127
  themeStyle.id = 'style-mixin-component';
128
- themeStyle.innerHTML = createStyle(superclass.componentName, baseSelector, mappings);
128
+ themeStyle.innerHTML = createStyle(superclass.componentName, this.baseSelector, mappings);
129
129
  this.shadowRoot.prepend(themeStyle);
130
130
  }
131
131
 
@@ -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/TextField.js","../src/components/descope-text-field/index.js","../src/components/descope-combo/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/container.js","../src/theme/components/index.js","../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope'","export const kebabCase = str => str\n.replace(/([a-z])([A-Z])/g, \"$1-$2\")\n.replace(/[\\s_.]+/g, '-')\n.toLowerCase();\n\nexport const kebabCaseJoin = (...args) => kebabCase(args.join('-'))\n\nexport const getCssVarName = (...args) => `--${kebabCaseJoin(...args.filter(arg => !!arg))}`\n","import { getCssVarName, kebabCase } from \"../../helpers\"\n\nconst createCssVarFallback = (first, ...rest) => `var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (baseSelector = '', relativeSelectorOrSelectorFn = '') => \n typeof relativeSelectorOrSelectorFn === 'function' ? \n relativeSelectorOrSelectorFn(baseSelector) : \n `${baseSelector}${relativeSelectorOrSelectorFn}`;\n\nclass StyleBuilder {\n constructor() {\n this.styleMap = new Map()\n }\n\n add(selector, property, value) {\n if (!this.styleMap.has(selector)) {\n this.styleMap.set(selector, [])\n }\n\n this.styleMap.set(selector, [...this.styleMap.get(selector), { property, value }])\n }\n\n toString() {\n return Array.from(this.styleMap.entries()).reduce((style, [selector, propValArr]) =>\n style += `${selector} { \\n${propValArr.map(({ property, value }) => `${property}: ${value}`).join(';\\n')} \\n}\\n\\n`\n , '')\n }\n}\n\nconst normalizeConfig = (attr, config) => {\n const defaultMapping = { selector: '', property: kebabCase(attr) }\n\n if (!config || !Object.keys(config).length) return [defaultMapping];\n\n if (Array.isArray(config)) return config.map(entry => Object.assign({}, defaultMapping, entry));\n\n return [Object.assign({}, defaultMapping, config)];\n}\n\nexport const createStyle = (componentName, baseSelector, mappings) => {\n const style = new StyleBuilder();\n\n Object.keys(mappings).forEach((attr) => {\n const attrConfig = normalizeConfig(attr, mappings[attr])\n\n const cssVarName = getCssVarName(componentName, attr)\n\n attrConfig.forEach(({ selector: relativeSelectorOrSelectorFn, property }) => {\n style.add(\n createCssSelector(baseSelector, relativeSelectorOrSelectorFn),\n property,\n createCssVarFallback(cssVarName)\n )\n })\n })\n\n return style.toString();\n}\n\nexport const createCssVarsList = (componentName, mappings) =>\n Object.keys(mappings).reduce(\n (acc, attr) => Object.assign(acc, { [attr]: getCssVarName(componentName, attr) }),\n {}\n )\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) => [mappingObj, {...mappingObj, selector: () => `:host${mappingObj.selector || ''}`}];\n","import { getCssVarName, kebabCaseJoin } from '../../helpers';\nimport { createStyle, createCssVarsList } from './helpers';\n\nexport const createStyleMixin = ({ mappings = {} }) => (superclass) => {\n const styleAttributes = Object.keys(mappings).map(key => kebabCaseJoin('st', key))\n return class CustomStyleMixinClass extends superclass {\n static get observedAttributes() {\n const superAttrs = superclass.observedAttributes || []\n return [...superAttrs, ...styleAttributes]\n }\n\n static get cssVarList() {\n return createCssVarsList(superclass.componentName, mappings)\n }\n\n #styleEle = null;\n\n constructor() {\n super();\n\n this.#createComponentStyle()\n this.#createAttrOverrideStyle()\n }\n\n #createAttrOverrideStyle() {\n this.#styleEle = document.createElement('style');\n this.#styleEle.id = 'style-mixin-overrides'\n\n this.#styleEle.innerText = '* {}'\n this.shadowRoot.prepend(this.#styleEle);\n }\n\n #updateAttrOverrideStyle(attrName, value) {\n const style = this.#styleEle.sheet.cssRules[0].style;\n const varName = getCssVarName(superclass.componentName, attrName.replace(/^st-/, ''))\n\n if (value)\n style.setProperty(varName, value)\n else\n style.removeProperty(varName)\n }\n\n #createComponentStyle() {\n const themeStyle = document.createElement('style');\n themeStyle.id = 'style-mixin-component'\n themeStyle.innerHTML = createStyle(superclass.componentName, baseSelector, mappings)\n this.shadowRoot.prepend(themeStyle);\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (styleAttributes.includes(attrName)) {\n this.#updateAttrOverrideStyle(attrName, newValue)\n }\n }\n }\n}\n","export const draggableMixin = (superclass) =>\n class DraggableMixinClass extends superclass {\n\n #styleEle = null;\n\n static get observedAttributes() {\n const superAttrs = superclass.observedAttributes || []\n return [...superAttrs, 'draggable']\n }\n\n constructor() {\n super();\n\n this.#styleEle = document.createElement('style');\n this.#styleEle.innerText = `${this.baseSelector} { cursor: inherit }`;\n }\n\n #handleDraggableStyle(isDraggable) {\n if (isDraggable) {\n this.shadowRoot.appendChild(this.#styleEle)\n } else {\n this.#styleEle.remove();\n }\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n if (attrName === 'draggable') {\n this.#handleDraggableStyle(newValue === 'true')\n }\n }\n }\n","\nconst observeAttributes = (ele, callback, excludeAttrs) => {\n // sync all attrs on init\n callback(...Array.from(ele.attributes).map(attr => attr.name));\n\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"attributes\" && !excludeAttrs.includes(mutation.attributeName)) {\n callback(mutation.attributeName);\n }\n }\n });\n\n observer.observe(ele, { attributes: true });\n}\n\nconst createSyncAttrsCb = (srcEle, targetEle) => (...attrNames) => {\n attrNames.forEach(attrName => {\n const srcAttrVal = srcEle.getAttribute(attrName);\n if (srcAttrVal !== null) {\n if (targetEle.getAttribute(attrName) !== srcAttrVal) {\n targetEle.setAttribute(attrName, srcAttrVal);\n }\n } else {\n targetEle.removeAttribute(attrName);\n }\n })\n}\n\nexport const syncAttrs = (ele1, ele2, excludeAttrs) => {\n observeAttributes(ele1, createSyncAttrsCb(ele1, ele2), excludeAttrs)\n observeAttributes(ele2, createSyncAttrsCb(ele2, ele1), excludeAttrs)\n}\n","import { syncAttrs } from \"./helpers\";\n\nexport const createProxy = ({ componentName, wrappedEleName, slots = [], style, excludeAttrsSync = [] }) => {\n\n\tconst template = `\n\t\t${style ? `<style id=\"create-proxy\">${style}</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}\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\t\t\t\t\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('mouseleave', () =>\n\t\t\t\t\t\tthis.proxyElement.removeAttribute('hover'), { once: true })\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","export const inputMixin = (superclass) =>\n class InputMixinClass extends superclass {\n\t\tstatic get formAssociated() {\n\t\t\treturn true;\n\t\t}\n \n #internals\n\n constructor() {\n super();\n\n this.#internals = this.attachInternals();\n\n // this is needed in order to make sure the form input validation is working\n if (!this.hasAttribute('tabindex')) {\n this.setAttribute('tabindex', 0);\n }\n }\n\n formAssociatedCallback() {\n this.setValidity?.();\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n\n // vaadin does not expose all those validation attributes so we need to take it from the input\n // https://github.com/vaadin/web-components/issues/1177\n const input = this.proxyElement.querySelector('input')\n if (!input) throw Error('no input was found')\n\n this.checkValidity = () => input.checkValidity()\n this.reportValidity = () => input.reportValidity()\n this.validity = input.validity\n\n this.setValidity = () => {\n this.#internals.setValidity(input.validity, input.validationMessage);\n }\n\n input.oninput = () => {\n this.value = input.value\n this.setValidity()\n }\n\n }\n }\n","export const componentNameValidationMixin = (superclass) =>\n class DraggableMixinClass extends superclass {\n #checkComponentName() {\n const currentComponentName = this.shadowRoot.host.tagName.toLowerCase();\n\n if (!superclass.componentName) {\n throw Error(`component name is not defined on super class, make sure you have a static get for \"componentName\"`)\n }\n\n if (currentComponentName !== superclass.componentName) {\n throw Error(`component name mismatch, expected \"${superclass.componentName}\", current \"${currentComponentName}\"`)\n }\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n if (this.shadowRoot.isConnected) {\n this.#checkComponentName()\n }\n }\n }\n","import { DESCOPE_PREFIX } from \"../constants\";\nimport { kebabCaseJoin } from \"../helpers\";\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name)\n\nexport const compose = (...fns) => (val) => fns.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 { getComponentName, createStyleMixin, draggableMixin, createProxy, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\nimport { matchHostStyle } from \"../../componentsHelpers/createStyleMixin/helpers\";\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\n\nexport const componentName = getComponentName(\"button\");\n\nconst Button = compose(\n createStyleMixin({\n // todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n mappings: {\n 'backgroundColor': {},\n 'borderRadius': {},\n 'color': { selector: '::part(label)' },\n 'borderColor': {},\n 'borderStyle': {},\n 'borderWidth': {},\n 'fontSize': {},\n 'height': {},\n 'width': matchHostStyle({}),\n 'cursor': {},\n 'padding': {},\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n)(\n createProxy({\n slots: [\"prefix\", \"suffix\"],\n wrappedEleName: \"vaadin-button\",\n style: `${editorOverrides}`,\n excludeAttrsSync: ['tabindex'],\n componentName\n })\n)\n\nexport default Button\n","import \"@vaadin/button\";\nimport Button, { componentName } from \"./Button\";\n\ncustomElements.define(componentName, Button);\n\nexport { Button }\n","import { getComponentName, createStyleMixin, draggableMixin, createProxy, inputMixin, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\n\nexport const componentName = getComponentName(\"text-field\")\n\nconst TextField = compose(\n createStyleMixin({\n mappings: {\n 'placeholderColor': { selector: '> input:placeholder-shown', property: 'color' },\n 'color': {},\n 'borderColor': { selector: '::part(input-field)' },\n 'borderWidth': { selector: '::part(input-field)' },\n 'borderStyle': { selector: '::part(input-field)' },\n 'borderRadius': { selector: '::part(input-field)' },\n 'boxShadow': { selector: '::part(input-field)' },\n 'height': { selector: '::part(input-field)' },\n 'padding': { selector: '::part(input-field)' },\n 'backgroundColor': { selector: '::part(input-field)' },\n 'labelColor': { selector: '::part(label)', property: 'color' },\n },\n }),\n draggableMixin,\n inputMixin,\n componentNameValidationMixin\n)(\n createProxy({\n slots: [\"prefix\", \"suffix\"],\n wrappedEleName: \"vaadin-text-field\",\n style: ``,\n excludeAttrsSync: ['tabindex'],\n componentName\n })\n);\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 constructor() {\n super();\n\n this.attachShadow({ mode: 'open' }).appendChild(\n template.content.cloneNode(true)\n );\n }\n}\n\ncustomElements.define(componentName, Combo);\n\nexport { Combo }","import \"@vaadin/date-picker\";\nimport { getComponentName, draggableMixin, createProxy, compose, componentNameValidationMixin } 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 }","import { getComponentName, createStyleMixin, draggableMixin, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\n\nexport const componentName = getComponentName(\"container\");\n\nclass RawContainer extends HTMLElement {\n static get componentName() {\n return componentName\n }\n constructor() {\n super();\n const template = document.createElement('template');\n template.innerHTML = `<slot></slot>`;\n\n this.attachShadow({ mode: 'open' });\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n\n this.baseSelector = ':host > slot'\n }\n}\n\nconst Container = compose(\n createStyleMixin({\n // todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n mappings: {\n 'height': {},\n 'width': {},\n\n 'verticalPadding': [\n { property: 'padding-top' },\n { property: 'padding-bottom' }\n ],\n 'horizontalPadding': [\n { property: 'padding-left' },\n { property: 'padding-right' }\n ],\n\n 'display': {},\n 'flexDirection': {},\n 'justifyContent': {},\n 'alignItems': {},\n 'gap': {},\n\n 'backgroundColor': {},\n 'borderRadius': {},\n\n 'borderColor': {},\n 'borderStyle': {},\n 'borderWidth': {},\n\n 'boxShadow': {},\n },\n }),\n draggableMixin,\n componentNameValidationMixin,\n)(RawContainer)\n\nexport default Container","import Container, { componentName } from './Container';\n\ncustomElements.define(componentName, Container);\n\nexport { Container }","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) => strArr.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) => set({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`));\n\nexport const globalsThemeToStyle = (theme, themeName = '') => `\n*[data-theme=\"${themeName}\"] {\n\t${Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t(acc, entry) => (acc += `${entry.join(\":\")};\\n`), ''\n)}\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('_')) return acc += `[${kebabCase(section.replace(/^_/, ''))}]`;\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('theme generator', `your theme structure is invalid, attribute \"${section}\" is followed by \"${nextSection}\" which is not allowed`)\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\treturn acc += `[${kebabCase(section)}=\"${restPath.splice(idx + 1, 1).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]) => (acc += `*[data-theme=\"${themeName}\"] ${selector} { \\n${Object.entries(vars).map(([key, val]) => `${key}: ${val}`).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.mix(Color(isDark ? 'white' : 'black'), percentage).saturate(1).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: '#e1e1e1'\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\tcolor: colors.primary.main,\n\tsize: {\n\t\tsm: `0 0 10px`,\n\t\tmd: `0 0 20px`,\n\t\tlg: `0 0 30px`,\n\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: {\n\t\tmain: globalRefs.colors.primary.main,\n\t\tdark: 'darkblue',\n\t\tlight: 'lightblue',\n\t\tcontrast: 'white'\n\t},\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\t[vars.borderRadius]: globalRefs.radius.lg,\n\t[vars.cursor]: 'pointer',\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_fullWidth: {\n\t\t[vars.width]: '100%'\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},\n\t\toutline: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.borderColor]: helperRefs.main,\n\t\t\t[vars.borderWidth]: '2px',\n\t\t\t[vars.borderStyle]: 'solid',\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]: 'red',\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},\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\nconst textField = {\n [vars.borderRadius]: globalRefs.radius.lg,\n [vars.color]: globalRefs.colors.surface.contrast,\n [vars.backgroundColor]: globalRefs.colors.surface.light,\n [vars.borderWidth]: globalRefs.border.small,\n [vars.borderStyle]: 'solid',\n [vars.borderColor]: globalRefs.colors.surface.dark,\n [vars.labelColor]: globalRefs.colors.surface.contrast,\n [vars.placeholderColor]: globalRefs.colors.surface.dark,\n _invalid: {\n [vars.backgroundColor]: globalRefs.colors.error.light,\n [vars.borderColor]: globalRefs.colors.error.dark,\n },\n\n size: {\n sm: {\n [vars.height]: '20px',\n [vars.fontSize]: '10px',\n [vars.padding]: `0 ${globalRefs.spacing.xs}`\n },\n md: {\n [vars.height]: '30px',\n [vars.fontSize]: '14px',\n [vars.padding]: `0 ${globalRefs.spacing.sm}`\n },\n lg: {\n [vars.height]: '40px',\n [vars.fontSize]: '20px',\n [vars.padding]: `0 ${globalRefs.spacing.sm}`\n },\n xl: {\n [vars.height]: '50px',\n [vars.fontSize]: '25px',\n [vars.padding]: `0 ${globalRefs.spacing.md}`\n },\n },\n\n _fullWidth: {\n [vars.width]: '100%'\n },\n};\n\nexport default textField\n\n\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, helperVars, helperRefs] =\n\tcreateHelperVars({ verticalAlignment, horizontalAlignment }, '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.size.sm} ${globalRefs.shadow.color}` \n\t\t},\t\t\n\t\tmd: { \n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.size.md} ${globalRefs.shadow.color}` \n\t\t},\t\t\n\t\tlg: { \n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.size.lg} ${globalRefs.shadow.color}` \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 button from './button';\nimport textField from './textField';\nimport container from './container';\n\nexport default {\n button,\n textField,\n container\n}\n","import globals from \"./globals\"\nimport components from './components';\n\nexport default { globals, components }\n"],"names":["componentName","globalRefs","vars","helperTheme","helperRefs"],"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/TextField.js","../src/components/descope-text-field/index.js","../src/components/descope-combo/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/container.js","../src/theme/components/index.js","../src/theme/index.js"],"sourcesContent":["export const DESCOPE_PREFIX = 'descope'","export const kebabCase = str => str\n.replace(/([a-z])([A-Z])/g, \"$1-$2\")\n.replace(/[\\s_.]+/g, '-')\n.toLowerCase();\n\nexport const kebabCaseJoin = (...args) => kebabCase(args.join('-'))\n\nexport const getCssVarName = (...args) => `--${kebabCaseJoin(...args.filter(arg => !!arg))}`\n","import { getCssVarName, kebabCase } from \"../../helpers\"\n\nconst createCssVarFallback = (first, ...rest) => `var(${first}${rest.length ? ` , ${createCssVarFallback(...rest)}` : ''})`;\n\nconst createCssSelector = (baseSelector = '', relativeSelectorOrSelectorFn = '') => \n typeof relativeSelectorOrSelectorFn === 'function' ? \n relativeSelectorOrSelectorFn(baseSelector) : \n `${baseSelector}${relativeSelectorOrSelectorFn}`;\n\nclass StyleBuilder {\n constructor() {\n this.styleMap = new Map()\n }\n\n add(selector, property, value) {\n if (!this.styleMap.has(selector)) {\n this.styleMap.set(selector, [])\n }\n\n this.styleMap.set(selector, [...this.styleMap.get(selector), { property, value }])\n }\n\n toString() {\n return Array.from(this.styleMap.entries()).reduce((style, [selector, propValArr]) =>\n style += `${selector} { \\n${propValArr.map(({ property, value }) => `${property}: ${value}`).join(';\\n')} \\n}\\n\\n`\n , '')\n }\n}\n\nconst normalizeConfig = (attr, config) => {\n const defaultMapping = { selector: '', property: kebabCase(attr) }\n\n if (!config || !Object.keys(config).length) return [defaultMapping];\n\n if (Array.isArray(config)) return config.map(entry => Object.assign({}, defaultMapping, entry));\n\n return [Object.assign({}, defaultMapping, config)];\n}\n\nexport const createStyle = (componentName, baseSelector, mappings) => {\n const style = new StyleBuilder();\n\n Object.keys(mappings).forEach((attr) => {\n const attrConfig = normalizeConfig(attr, mappings[attr])\n\n const cssVarName = getCssVarName(componentName, attr)\n\n attrConfig.forEach(({ selector: relativeSelectorOrSelectorFn, property }) => {\n style.add(\n createCssSelector(baseSelector, relativeSelectorOrSelectorFn),\n property,\n createCssVarFallback(cssVarName)\n )\n })\n })\n\n return style.toString();\n}\n\nexport const createCssVarsList = (componentName, mappings) =>\n Object.keys(mappings).reduce(\n (acc, attr) => Object.assign(acc, { [attr]: getCssVarName(componentName, attr) }),\n {}\n )\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) => [mappingObj, {...mappingObj, selector: () => `:host${mappingObj.selector || ''}`}];\n","import { getCssVarName, kebabCaseJoin } from '../../helpers';\nimport { createStyle, createCssVarsList } from './helpers';\n\nexport const createStyleMixin = ({ mappings = {} }) => (superclass) => {\n const styleAttributes = Object.keys(mappings).map(key => kebabCaseJoin('st', key))\n return class CustomStyleMixinClass extends superclass {\n static get observedAttributes() {\n const superAttrs = superclass.observedAttributes || []\n return [...superAttrs, ...styleAttributes]\n }\n\n static get cssVarList() {\n return createCssVarsList(superclass.componentName, mappings)\n }\n\n #styleEle = null;\n\n constructor() {\n super();\n\n this.#createComponentStyle()\n this.#createAttrOverrideStyle()\n }\n\n #createAttrOverrideStyle() {\n this.#styleEle = document.createElement('style');\n this.#styleEle.id = 'style-mixin-overrides'\n\n this.#styleEle.innerText = '* {}'\n this.shadowRoot.prepend(this.#styleEle);\n }\n\n #updateAttrOverrideStyle(attrName, value) {\n const style = this.#styleEle.sheet.cssRules[0].style;\n const varName = getCssVarName(superclass.componentName, attrName.replace(/^st-/, ''))\n\n if (value)\n style.setProperty(varName, value)\n else\n style.removeProperty(varName)\n }\n\n #createComponentStyle() {\n const themeStyle = document.createElement('style');\n themeStyle.id = 'style-mixin-component'\n themeStyle.innerHTML = createStyle(superclass.componentName, this.baseSelector, mappings)\n this.shadowRoot.prepend(themeStyle);\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (styleAttributes.includes(attrName)) {\n this.#updateAttrOverrideStyle(attrName, newValue)\n }\n }\n }\n}\n","export const draggableMixin = (superclass) =>\n class DraggableMixinClass extends superclass {\n\n #styleEle = null;\n\n static get observedAttributes() {\n const superAttrs = superclass.observedAttributes || []\n return [...superAttrs, 'draggable']\n }\n\n constructor() {\n super();\n\n this.#styleEle = document.createElement('style');\n this.#styleEle.innerText = `${this.baseSelector} { cursor: inherit }`;\n }\n\n #handleDraggableStyle(isDraggable) {\n if (isDraggable) {\n this.shadowRoot.appendChild(this.#styleEle)\n } else {\n this.#styleEle.remove();\n }\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n if (attrName === 'draggable') {\n this.#handleDraggableStyle(newValue === 'true')\n }\n }\n }\n","\nconst observeAttributes = (ele, callback, excludeAttrs) => {\n // sync all attrs on init\n callback(...Array.from(ele.attributes).map(attr => attr.name));\n\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"attributes\" && !excludeAttrs.includes(mutation.attributeName)) {\n callback(mutation.attributeName);\n }\n }\n });\n\n observer.observe(ele, { attributes: true });\n}\n\nconst createSyncAttrsCb = (srcEle, targetEle) => (...attrNames) => {\n attrNames.forEach(attrName => {\n const srcAttrVal = srcEle.getAttribute(attrName);\n if (srcAttrVal !== null) {\n if (targetEle.getAttribute(attrName) !== srcAttrVal) {\n targetEle.setAttribute(attrName, srcAttrVal);\n }\n } else {\n targetEle.removeAttribute(attrName);\n }\n })\n}\n\nexport const syncAttrs = (ele1, ele2, excludeAttrs) => {\n observeAttributes(ele1, createSyncAttrsCb(ele1, ele2), excludeAttrs)\n observeAttributes(ele2, createSyncAttrsCb(ele2, ele1), excludeAttrs)\n}\n","import { syncAttrs } from \"./helpers\";\n\nexport const createProxy = ({ componentName, wrappedEleName, slots = [], style, excludeAttrsSync = [] }) => {\n\n\tconst template = `\n\t\t${style ? `<style id=\"create-proxy\">${style}</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}\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\t\t\t\t\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('mouseleave', () =>\n\t\t\t\t\t\tthis.proxyElement.removeAttribute('hover'), { once: true })\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","export const inputMixin = (superclass) =>\n class InputMixinClass extends superclass {\n\t\tstatic get formAssociated() {\n\t\t\treturn true;\n\t\t}\n \n #internals\n\n constructor() {\n super();\n\n this.#internals = this.attachInternals();\n\n // this is needed in order to make sure the form input validation is working\n if (!this.hasAttribute('tabindex')) {\n this.setAttribute('tabindex', 0);\n }\n }\n\n formAssociatedCallback() {\n this.setValidity?.();\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n\n // vaadin does not expose all those validation attributes so we need to take it from the input\n // https://github.com/vaadin/web-components/issues/1177\n const input = this.proxyElement.querySelector('input')\n if (!input) throw Error('no input was found')\n\n this.checkValidity = () => input.checkValidity()\n this.reportValidity = () => input.reportValidity()\n this.validity = input.validity\n\n this.setValidity = () => {\n this.#internals.setValidity(input.validity, input.validationMessage);\n }\n\n input.oninput = () => {\n this.value = input.value\n this.setValidity()\n }\n\n }\n }\n","export const componentNameValidationMixin = (superclass) =>\n class DraggableMixinClass extends superclass {\n #checkComponentName() {\n const currentComponentName = this.shadowRoot.host.tagName.toLowerCase();\n\n if (!superclass.componentName) {\n throw Error(`component name is not defined on super class, make sure you have a static get for \"componentName\"`)\n }\n\n if (currentComponentName !== superclass.componentName) {\n throw Error(`component name mismatch, expected \"${superclass.componentName}\", current \"${currentComponentName}\"`)\n }\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n if (this.shadowRoot.isConnected) {\n this.#checkComponentName()\n }\n }\n }\n","import { DESCOPE_PREFIX } from \"../constants\";\nimport { kebabCaseJoin } from \"../helpers\";\n\nexport const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name)\n\nexport const compose = (...fns) => (val) => fns.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 { getComponentName, createStyleMixin, draggableMixin, createProxy, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\nimport { matchHostStyle } from \"../../componentsHelpers/createStyleMixin/helpers\";\n\nconst editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;\n\nexport const componentName = getComponentName(\"button\");\n\nconst Button = compose(\n createStyleMixin({\n // todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n mappings: {\n 'backgroundColor': {},\n 'borderRadius': {},\n 'color': { selector: '::part(label)' },\n 'borderColor': {},\n 'borderStyle': {},\n 'borderWidth': {},\n 'fontSize': {},\n 'height': {},\n 'width': matchHostStyle({}),\n 'cursor': {},\n 'padding': {},\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n)(\n createProxy({\n slots: [\"prefix\", \"suffix\"],\n wrappedEleName: \"vaadin-button\",\n style: `${editorOverrides}`,\n excludeAttrsSync: ['tabindex'],\n componentName\n })\n)\n\nexport default Button\n","import \"@vaadin/button\";\nimport Button, { componentName } from \"./Button\";\n\ncustomElements.define(componentName, Button);\n\nexport { Button }\n","import { getComponentName, createStyleMixin, draggableMixin, createProxy, inputMixin, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\n\nexport const componentName = getComponentName(\"text-field\")\n\nconst TextField = compose(\n createStyleMixin({\n mappings: {\n 'placeholderColor': { selector: '> input:placeholder-shown', property: 'color' },\n 'color': {},\n 'borderColor': { selector: '::part(input-field)' },\n 'borderWidth': { selector: '::part(input-field)' },\n 'borderStyle': { selector: '::part(input-field)' },\n 'borderRadius': { selector: '::part(input-field)' },\n 'boxShadow': { selector: '::part(input-field)' },\n 'height': { selector: '::part(input-field)' },\n 'padding': { selector: '::part(input-field)' },\n 'backgroundColor': { selector: '::part(input-field)' },\n 'labelColor': { selector: '::part(label)', property: 'color' },\n },\n }),\n draggableMixin,\n inputMixin,\n componentNameValidationMixin\n)(\n createProxy({\n slots: [\"prefix\", \"suffix\"],\n wrappedEleName: \"vaadin-text-field\",\n style: ``,\n excludeAttrsSync: ['tabindex'],\n componentName\n })\n);\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 constructor() {\n super();\n\n this.attachShadow({ mode: 'open' }).appendChild(\n template.content.cloneNode(true)\n );\n }\n}\n\ncustomElements.define(componentName, Combo);\n\nexport { Combo }","import \"@vaadin/date-picker\";\nimport { getComponentName, draggableMixin, createProxy, compose, componentNameValidationMixin } 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 }","import { getComponentName, createStyleMixin, draggableMixin, compose, componentNameValidationMixin } from \"../../componentsHelpers\";\n\nexport const componentName = getComponentName(\"container\");\n\nclass RawContainer extends HTMLElement {\n static get componentName() {\n return componentName\n }\n constructor() {\n super();\n const template = document.createElement('template');\n template.innerHTML = `<slot></slot>`;\n\n this.attachShadow({ mode: 'open' });\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n\n this.baseSelector = ':host > slot'\n }\n}\n\nconst Container = compose(\n createStyleMixin({\n // todo: do we want to change the mapping structure to this? ['aa', 'aaa', {'color': [{ selector: '::part(label)' }]}],\n mappings: {\n 'height': {},\n 'width': {},\n\n 'verticalPadding': [\n { property: 'padding-top' },\n { property: 'padding-bottom' }\n ],\n 'horizontalPadding': [\n { property: 'padding-left' },\n { property: 'padding-right' }\n ],\n\n 'display': {},\n 'flexDirection': {},\n 'justifyContent': {},\n 'alignItems': {},\n 'gap': {},\n\n 'backgroundColor': {},\n 'borderRadius': {},\n\n 'borderColor': {},\n 'borderStyle': {},\n 'borderWidth': {},\n\n 'boxShadow': {},\n },\n }),\n draggableMixin,\n componentNameValidationMixin,\n)(RawContainer)\n\nexport default Container","import Container, { componentName } from './Container';\n\ncustomElements.define(componentName, Container);\n\nexport { Container }","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) => strArr.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) => set({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`));\n\nexport const globalsThemeToStyle = (theme, themeName = '') => `\n*[data-theme=\"${themeName}\"] {\n\t${Object.entries(themeToCSSVarsObj(theme)).reduce(\n\t(acc, entry) => (acc += `${entry.join(\":\")};\\n`), ''\n)}\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('_')) return acc += `[${kebabCase(section.replace(/^_/, ''))}]`;\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('theme generator', `your theme structure is invalid, attribute \"${section}\" is followed by \"${nextSection}\" which is not allowed`)\n\t\t\t\treturn acc;\n\t\t\t}\n\n\t\t\treturn acc += `[${kebabCase(section)}=\"${restPath.splice(idx + 1, 1).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]) => (acc += `*[data-theme=\"${themeName}\"] ${selector} { \\n${Object.entries(vars).map(([key, val]) => `${key}: ${val}`).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.mix(Color(isDark ? 'white' : 'black'), percentage).saturate(1).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: '#e1e1e1'\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\tcolor: colors.primary.main,\n\tsize: {\n\t\tsm: `0 0 10px`,\n\t\tmd: `0 0 20px`,\n\t\tlg: `0 0 30px`,\n\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: {\n\t\tmain: globalRefs.colors.primary.main,\n\t\tdark: 'darkblue',\n\t\tlight: 'lightblue',\n\t\tcontrast: 'white'\n\t},\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\t[vars.borderRadius]: globalRefs.radius.lg,\n\t[vars.cursor]: 'pointer',\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_fullWidth: {\n\t\t[vars.width]: '100%'\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},\n\t\toutline: {\n\t\t\t[vars.color]: helperRefs.main,\n\t\t\t[vars.borderColor]: helperRefs.main,\n\t\t\t[vars.borderWidth]: '2px',\n\t\t\t[vars.borderStyle]: 'solid',\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]: 'red',\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},\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\nconst textField = {\n [vars.borderRadius]: globalRefs.radius.lg,\n [vars.color]: globalRefs.colors.surface.contrast,\n [vars.backgroundColor]: globalRefs.colors.surface.light,\n [vars.borderWidth]: globalRefs.border.small,\n [vars.borderStyle]: 'solid',\n [vars.borderColor]: globalRefs.colors.surface.dark,\n [vars.labelColor]: globalRefs.colors.surface.contrast,\n [vars.placeholderColor]: globalRefs.colors.surface.dark,\n _invalid: {\n [vars.backgroundColor]: globalRefs.colors.error.light,\n [vars.borderColor]: globalRefs.colors.error.dark,\n },\n\n size: {\n sm: {\n [vars.height]: '20px',\n [vars.fontSize]: '10px',\n [vars.padding]: `0 ${globalRefs.spacing.xs}`\n },\n md: {\n [vars.height]: '30px',\n [vars.fontSize]: '14px',\n [vars.padding]: `0 ${globalRefs.spacing.sm}`\n },\n lg: {\n [vars.height]: '40px',\n [vars.fontSize]: '20px',\n [vars.padding]: `0 ${globalRefs.spacing.sm}`\n },\n xl: {\n [vars.height]: '50px',\n [vars.fontSize]: '25px',\n [vars.padding]: `0 ${globalRefs.spacing.md}`\n },\n },\n\n _fullWidth: {\n [vars.width]: '100%'\n },\n};\n\nexport default textField\n\n\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, helperVars, helperRefs] =\n\tcreateHelperVars({ verticalAlignment, horizontalAlignment }, '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.size.sm} ${globalRefs.shadow.color}` \n\t\t},\t\t\n\t\tmd: { \n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.size.md} ${globalRefs.shadow.color}` \n\t\t},\t\t\n\t\tlg: { \n\t\t\t[vars.boxShadow]: `${globalRefs.shadow.size.lg} ${globalRefs.shadow.color}` \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 button from './button';\nimport textField from './textField';\nimport container from './container';\n\nexport default {\n button,\n textField,\n container\n}\n","import globals from \"./globals\"\nimport components from './components';\n\nexport default { globals, components }\n"],"names":["componentName","globalRefs","vars","helperTheme","helperRefs"],"mappings":"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"}
package/dist/umd/599.js CHANGED
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkDescopeUI=self.webpackChunkDescopeUI||[]).push([[599],{3535:(e,t,s)=>{s.d(t,{SP:()=>c,wj:()=>a,zy:()=>l});var r=s(6225);const n=(e,...t)=>`var(${e}${t.length?` , ${n(...t)}`:""})`;class o{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 a=(e,t,s)=>{const a=new o;return Object.keys(s).forEach((o=>{const c=((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]})(o,s[o]),l=(0,r.Tk)(e,o);c.forEach((({selector:e,property:s})=>{a.add(((e="",t="")=>"function"==typeof t?t(e):`${e}${t}`)(t,e),s,n(l))}))})),a.toString()},c=(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||""}`}]},9893:(e,t,s)=>{s.d(t,{y:()=>o});var r=s(6225),n=s(3535);const o=({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,n.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 n=this.#e.sheet.cssRules[0].style,o=(0,r.Tk)(t.componentName,e.replace(/^st-/,""));s?n.setProperty(o,s):n.removeProperty(o)}#t(){const s=document.createElement("style");s.id="style-mixin-component",s.innerHTML=(0,n.wj)(t.componentName,baseSelector,e),this.shadowRoot.prepend(s)}attributeChangedCallback(e,t,r){super.attributeChangedCallback?.(e,t,r),s.includes(e)&&this.#r(e,r)}}}}}]);
1
+ "use strict";(self.webpackChunkDescopeUI=self.webpackChunkDescopeUI||[]).push([[599],{3535:(e,t,s)=>{s.d(t,{SP:()=>c,wj:()=>a,zy:()=>l});var r=s(6225);const n=(e,...t)=>`var(${e}${t.length?` , ${n(...t)}`:""})`;class o{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 a=(e,t,s)=>{const a=new o;return Object.keys(s).forEach((o=>{const c=((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]})(o,s[o]),l=(0,r.Tk)(e,o);c.forEach((({selector:e,property:s})=>{a.add(((e="",t="")=>"function"==typeof t?t(e):`${e}${t}`)(t,e),s,n(l))}))})),a.toString()},c=(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||""}`}]},9893:(e,t,s)=>{s.d(t,{y:()=>o});var r=s(6225),n=s(3535);const o=({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,n.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 n=this.#e.sheet.cssRules[0].style,o=(0,r.Tk)(t.componentName,e.replace(/^st-/,""));s?n.setProperty(o,s):n.removeProperty(o)}#t(){const s=document.createElement("style");s.id="style-mixin-component",s.innerHTML=(0,n.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)}}}}}]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@descope/web-components-ui",
3
- "version": "1.0.38",
3
+ "version": "1.0.39",
4
4
  "description": "",
5
5
  "main": "dist/cjs/index.cjs.js",
6
6
  "module": "dist/index.esm.js",
@@ -43,7 +43,7 @@ export const createStyleMixin = ({ mappings = {} }) => (superclass) => {
43
43
  #createComponentStyle() {
44
44
  const themeStyle = document.createElement('style');
45
45
  themeStyle.id = 'style-mixin-component'
46
- themeStyle.innerHTML = createStyle(superclass.componentName, baseSelector, mappings)
46
+ themeStyle.innerHTML = createStyle(superclass.componentName, this.baseSelector, mappings)
47
47
  this.shadowRoot.prepend(themeStyle);
48
48
  }
49
49