@descope/web-components-ui 1.0.39 → 1.0.41

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. package/dist/cjs/index.cjs.js +35 -18
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +1128 -481
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/umd/101.js +148 -0
  6. package/dist/umd/208.js +2 -0
  7. package/dist/umd/208.js.LICENSE.txt +5 -0
  8. package/dist/umd/211.js +312 -0
  9. package/dist/umd/211.js.LICENSE.txt +5 -0
  10. package/dist/umd/233.js +573 -0
  11. package/dist/umd/{511.js.LICENSE.txt → 233.js.LICENSE.txt} +0 -6
  12. package/dist/umd/422.js +2 -0
  13. package/dist/umd/422.js.LICENSE.txt +5 -0
  14. package/dist/umd/437.js +19 -0
  15. package/dist/umd/437.js.LICENSE.txt +5 -0
  16. package/dist/umd/513.js +1 -0
  17. package/dist/umd/515.js +202 -0
  18. package/dist/umd/515.js.LICENSE.txt +11 -0
  19. package/dist/umd/54.js +4 -4
  20. package/dist/umd/56.js +48 -0
  21. package/dist/umd/56.js.LICENSE.txt +5 -0
  22. package/dist/umd/599.js +1 -1
  23. package/dist/umd/63.js +1 -0
  24. package/dist/umd/725.js +37 -0
  25. package/dist/umd/725.js.LICENSE.txt +11 -0
  26. package/dist/umd/729.js +1 -1
  27. package/dist/umd/767.js +2 -0
  28. package/dist/umd/{9.js.LICENSE.txt → 767.js.LICENSE.txt} +0 -6
  29. package/dist/umd/786.js +2 -0
  30. package/dist/umd/786.js.LICENSE.txt +17 -0
  31. package/dist/umd/789.js +1 -0
  32. package/dist/umd/806.js +109 -0
  33. package/dist/umd/806.js.LICENSE.txt +5 -0
  34. package/dist/umd/938.js +1 -0
  35. package/dist/umd/97.js +1 -1
  36. package/dist/umd/descope-button-index-js.js +1 -1
  37. package/dist/umd/descope-checkbox-index-js.js +1 -0
  38. package/dist/umd/descope-combo-index-js.js +1 -1
  39. package/dist/umd/descope-container-index-js.js +1 -1
  40. package/dist/umd/descope-email-field-index-js.js +1 -0
  41. package/dist/umd/descope-number-field-index-js.js +1 -0
  42. package/dist/umd/descope-password-field-index-js.js +1 -0
  43. package/dist/umd/descope-switch-toggle-index-js.js +1 -0
  44. package/dist/umd/descope-text-area-index-js.js +1 -0
  45. package/dist/umd/descope-text-field-index-js.js +1 -1
  46. package/dist/umd/index.js +1 -1
  47. package/package.json +9 -2
  48. package/src/components/descope-button/Button.js +90 -30
  49. package/src/components/descope-button/index.js +3 -3
  50. package/src/components/descope-checkbox/Checkbox.js +33 -0
  51. package/src/components/descope-checkbox/index.js +6 -0
  52. package/src/components/descope-combo/index.js +12 -12
  53. package/src/components/descope-container/Container.js +57 -51
  54. package/src/components/descope-container/index.js +1 -1
  55. package/src/components/descope-date-picker/index.js +13 -7
  56. package/src/components/descope-email-field/EmailField.js +72 -0
  57. package/src/components/descope-email-field/index.js +6 -0
  58. package/src/components/descope-number-field/NumberField.js +72 -0
  59. package/src/components/descope-number-field/index.js +6 -0
  60. package/src/components/descope-password-field/PasswordField.js +79 -0
  61. package/src/components/descope-password-field/index.js +6 -0
  62. package/src/components/descope-switch-toggle/SwitchToggle.js +81 -0
  63. package/src/components/descope-switch-toggle/index.js +6 -0
  64. package/src/components/descope-text-area/TextArea.js +66 -0
  65. package/src/components/descope-text-area/index.js +6 -0
  66. package/src/components/descope-text-field/TextField.js +98 -28
  67. package/src/components/descope-text-field/index.js +3 -3
  68. package/src/componentsHelpers/componentNameValidationMixin.js +21 -17
  69. package/src/componentsHelpers/createProxy/helpers.js +31 -27
  70. package/src/componentsHelpers/createProxy/index.js +27 -17
  71. package/src/componentsHelpers/createStyleMixin/helpers.js +65 -47
  72. package/src/componentsHelpers/createStyleMixin/index.js +64 -55
  73. package/src/componentsHelpers/draggableMixin.js +25 -26
  74. package/src/componentsHelpers/index.js +12 -9
  75. package/src/componentsHelpers/inputMixin.js +38 -37
  76. package/src/constants.js +1 -1
  77. package/src/dev/index.js +4 -3
  78. package/src/helpers.js +8 -6
  79. package/src/index.cjs.js +1 -1
  80. package/src/index.js +16 -8
  81. package/src/index.umd.js +11 -5
  82. package/src/theme/components/button.js +32 -21
  83. package/src/theme/components/checkbox.js +9 -0
  84. package/src/theme/components/container.js +32 -27
  85. package/src/theme/components/emailField.js +8 -0
  86. package/src/theme/components/index.js +19 -7
  87. package/src/theme/components/input.js +106 -0
  88. package/src/theme/components/numberField.js +8 -0
  89. package/src/theme/components/passwordField.js +11 -0
  90. package/src/theme/components/switchToggle.js +10 -0
  91. package/src/theme/components/textArea.js +44 -0
  92. package/src/theme/components/textField.js +69 -45
  93. package/src/theme/globals.js +27 -26
  94. package/src/theme/index.js +2 -2
  95. package/src/themeHelpers/index.js +45 -30
  96. package/src/themeHelpers/processColors.js +10 -7
  97. package/dist/umd/221.js +0 -37
  98. package/dist/umd/511.js +0 -573
  99. package/dist/umd/9.js +0 -312
  100. /package/dist/umd/{221.js.LICENSE.txt → 101.js.LICENSE.txt} +0 -0
@@ -1,53 +1,77 @@
1
- import globals from "../globals";
2
- import { getThemeRefs } from "../../themeHelpers";
1
+ import globals from '../globals';
2
+ import { getThemeRefs } from '../../themeHelpers';
3
3
  import TextField from '../../components/descope-text-field/TextField';
4
4
 
5
5
  const globalRefs = getThemeRefs(globals);
6
6
 
7
7
  const vars = TextField.cssVarList;
8
8
 
9
- const textField = {
10
- [vars.borderRadius]: globalRefs.radius.lg,
11
- [vars.color]: globalRefs.colors.surface.contrast,
12
- [vars.backgroundColor]: globalRefs.colors.surface.light,
13
- [vars.borderWidth]: globalRefs.border.small,
14
- [vars.borderStyle]: 'solid',
15
- [vars.borderColor]: globalRefs.colors.surface.dark,
16
- [vars.labelColor]: globalRefs.colors.surface.contrast,
17
- [vars.placeholderColor]: globalRefs.colors.surface.dark,
18
- _invalid: {
19
- [vars.backgroundColor]: globalRefs.colors.error.light,
20
- [vars.borderColor]: globalRefs.colors.error.dark,
21
- },
22
-
23
- size: {
24
- sm: {
25
- [vars.height]: '20px',
26
- [vars.fontSize]: '10px',
27
- [vars.padding]: `0 ${globalRefs.spacing.xs}`
28
- },
29
- md: {
30
- [vars.height]: '30px',
31
- [vars.fontSize]: '14px',
32
- [vars.padding]: `0 ${globalRefs.spacing.sm}`
33
- },
34
- lg: {
35
- [vars.height]: '40px',
36
- [vars.fontSize]: '20px',
37
- [vars.padding]: `0 ${globalRefs.spacing.sm}`
38
- },
39
- xl: {
40
- [vars.height]: '50px',
41
- [vars.fontSize]: '25px',
42
- [vars.padding]: `0 ${globalRefs.spacing.md}`
43
- },
44
- },
45
-
46
- _fullWidth: {
47
- [vars.width]: '100%'
48
- },
49
- };
50
-
51
- export default textField
9
+ export const textField = (vars) => ({
10
+ size: {
11
+ xs: {
12
+ [vars.height]: '14px',
13
+ [vars.fontSize]: '8px',
14
+ [vars.padding]: `0 ${globalRefs.spacing.xs}`
15
+ },
16
+ sm: {
17
+ [vars.height]: '20px',
18
+ [vars.fontSize]: '10px',
19
+ [vars.padding]: `0 ${globalRefs.spacing.sm}`
20
+ },
21
+ md: {
22
+ [vars.height]: '30px',
23
+ [vars.fontSize]: '14px',
24
+ [vars.padding]: `0 ${globalRefs.spacing.md}`
25
+ },
26
+ lg: {
27
+ [vars.height]: '40px',
28
+ [vars.fontSize]: '16px',
29
+ [vars.padding]: `0 ${globalRefs.spacing.lg}`
30
+ },
31
+ xl: {
32
+ [vars.height]: '50px',
33
+ [vars.fontSize]: '25px',
34
+ [vars.padding]: `0 ${globalRefs.spacing.xl}`
35
+ }
36
+ },
52
37
 
38
+ [vars.color]: globalRefs.colors.surface.contrast,
39
+ [vars.placeholderColor]: globalRefs.colors.surface.contrast,
53
40
 
41
+ [vars.backgroundColor]: globalRefs.colors.surface.light,
42
+
43
+ [vars.borderWidth]: '1px',
44
+ [vars.borderStyle]: 'solid',
45
+ [vars.borderColor]: 'transparent',
46
+ [vars.borderWidthReadOnly]: '0',
47
+ [vars.borderRadius]: globalRefs.radius.sm,
48
+
49
+ _borderoffset: {
50
+ [vars.outlineOffset]: '2px'
51
+ },
52
+
53
+ _invalid: {
54
+ [vars.borderColor]: globalRefs.colors.error.main,
55
+ [vars.color]: globalRefs.colors.error.main
56
+ },
57
+
58
+ _disabled: {
59
+ [vars.color]: globalRefs.colors.surface.dark,
60
+ [vars.placeholderColor]: globalRefs.colors.surface.light,
61
+ [vars.backgroundColor]: globalRefs.colors.surface.main
62
+ },
63
+
64
+ _fullWidth: {
65
+ [vars.width]: '100%'
66
+ },
67
+
68
+ _focused: {
69
+ [vars.outline]: `2px solid ${globalRefs.colors.surface.main}`
70
+ },
71
+
72
+ _bordered: {
73
+ [vars.borderColor]: globalRefs.colors.surface.main
74
+ }
75
+ });
76
+
77
+ export default textField(vars);
@@ -1,32 +1,33 @@
1
- import { genColors } from "../themeHelpers/processColors";
1
+ import { genColors } from '../themeHelpers/processColors';
2
2
 
3
3
  export const colors = genColors({
4
4
  surface: {
5
5
  main: 'lightgray',
6
- light: '#e1e1e1'
6
+ light: '#fff',
7
+ dark: '#000'
7
8
  },
8
- primary: "#0082B5",
9
- secondary: "#7D14EB",
10
- success: "green",
11
- error: "red",
9
+ primary: '#0082B5',
10
+ secondary: '#7D14EB',
11
+ success: 'green',
12
+ error: 'red'
12
13
  });
13
14
 
14
15
  const typography = {
15
16
  h1: {
16
- font: ["Courier New", "Arial", "sans-serif"],
17
- weight: "700",
18
- size: "48px",
17
+ font: ['Courier New', 'Arial', 'sans-serif'],
18
+ weight: '700',
19
+ size: '48px'
19
20
  },
20
21
  h2: {
21
- font: ["Courier New", "sans-serif"],
22
- weight: "500",
23
- size: "38px",
22
+ font: ['Courier New', 'sans-serif'],
23
+ weight: '500',
24
+ size: '38px'
24
25
  },
25
26
  h3: {
26
- font: ["Courier New", "sans-serif"],
27
- weight: "300",
28
- size: "28px",
29
- },
27
+ font: ['Courier New', 'sans-serif'],
28
+ weight: '300',
29
+ size: '28px'
30
+ }
30
31
  };
31
32
 
32
33
  const spacing = {
@@ -34,19 +35,19 @@ const spacing = {
34
35
  sm: '4px',
35
36
  md: '8px',
36
37
  lg: '16px',
37
- xl: '32px',
38
+ xl: '32px'
38
39
  };
39
40
 
40
41
  const border = {
41
- sm: "1px",
42
- md: "2px",
43
- lg: "3px",
42
+ sm: '1px',
43
+ md: '2px',
44
+ lg: '3px'
44
45
  };
45
46
 
46
47
  const radius = {
47
- sm: "5px",
48
- md: "25px",
49
- lg: "50px",
48
+ sm: '5px',
49
+ md: '25px',
50
+ lg: '50px'
50
51
  };
51
52
 
52
53
  const shadow = {
@@ -54,8 +55,8 @@ const shadow = {
54
55
  size: {
55
56
  sm: `0 0 10px`,
56
57
  md: `0 0 20px`,
57
- lg: `0 0 30px`,
58
- },
58
+ lg: `0 0 30px`
59
+ }
59
60
  };
60
61
 
61
62
  export default {
@@ -64,5 +65,5 @@ export default {
64
65
  spacing,
65
66
  border,
66
67
  radius,
67
- shadow,
68
+ shadow
68
69
  };
@@ -1,4 +1,4 @@
1
- import globals from "./globals"
1
+ import globals from './globals';
2
2
  import components from './components';
3
3
 
4
- export default { globals, components }
4
+ export default { globals, components };
@@ -1,10 +1,10 @@
1
- import merge from "lodash.merge";
2
- import set from "lodash.set";
3
- import { DESCOPE_PREFIX } from "../constants";
4
- import { getCssVarName, kebabCase } from "../helpers";
5
- import { getComponentName } from "../componentsHelpers";
1
+ import merge from 'lodash.merge';
2
+ import set from 'lodash.set';
3
+ import { DESCOPE_PREFIX } from '../constants';
4
+ import { getCssVarName, kebabCase } from '../helpers';
5
+ import { getComponentName } from '../componentsHelpers';
6
6
 
7
- const getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path)
7
+ const getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path);
8
8
 
9
9
  const transformTheme = (theme, path, getTransformation) => {
10
10
  return Object.entries(theme).reduce((acc, [key, val]) => {
@@ -16,79 +16,94 @@ const transformTheme = (theme, path, getTransformation) => {
16
16
  }, {});
17
17
  };
18
18
 
19
- const stringifyArray = (strArr) => strArr.map((str) => (str.includes(" ") ? `"${str}"` : str)).join(", ")
19
+ const stringifyArray = (strArr) =>
20
+ strArr.map((str) => (str.includes(' ') ? `"${str}"` : str)).join(', ');
20
21
 
21
22
  export const themeToCSSVarsObj = (theme) =>
22
23
  transformTheme(theme, [], (path, val) => ({
23
- [getVarName(path)]: Array.isArray(val) ? stringifyArray(val) : val,
24
+ [getVarName(path)]: Array.isArray(val) ? stringifyArray(val) : val
24
25
  }));
25
26
 
26
27
  export const getThemeRefs = (theme, prefix) =>
27
- transformTheme(theme, [], (path) => set({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`));
28
+ transformTheme(theme, [], (path) =>
29
+ set({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`)
30
+ );
28
31
 
29
32
  export const globalsThemeToStyle = (theme, themeName = '') => `
30
33
  *[data-theme="${themeName}"] {
31
34
  ${Object.entries(themeToCSSVarsObj(theme)).reduce(
32
- (acc, entry) => (acc += `${entry.join(":")};\n`), ''
33
- )}
35
+ (acc, entry) => (acc += `${entry.join(':')};\n`),
36
+ ''
37
+ )}
34
38
  }
35
- `
39
+ `;
36
40
 
37
41
  const componentsThemeToStyleObj = (componentsTheme) =>
38
42
  transformTheme(componentsTheme, [], (path, val) => {
39
- const [component, ...restPath] = path
40
- const property = restPath.pop()
43
+ const [component, ...restPath] = path;
44
+ const property = restPath.pop();
41
45
 
42
46
  // do not start with underscore -> key:value, must have 2 no underscore attrs in a row
43
47
  // starts with underscore -> attribute selector
44
48
 
45
49
  const attrsSelector = restPath.reduce((acc, section, idx) => {
46
- if (section.startsWith('_')) return acc += `[${kebabCase(section.replace(/^_/, ''))}]`;
50
+ if (section.startsWith('_'))
51
+ return (acc += `[${kebabCase(section.replace(/^_/, ''))}="true"]`);
47
52
 
48
53
  const nextSection = restPath[idx + 1];
49
54
 
50
55
  if (typeof nextSection !== 'string' || nextSection.startsWith('_')) {
51
- console.error('theme generator', `your theme structure is invalid, attribute "${section}" is followed by "${nextSection}" which is not allowed`)
56
+ console.error(
57
+ 'theme generator',
58
+ `your theme structure is invalid, attribute "${section}" is followed by "${nextSection}" which is not allowed`
59
+ );
52
60
  return acc;
53
61
  }
54
62
 
55
- return acc += `[${kebabCase(section)}="${restPath.splice(idx + 1, 1).join('')}"]`;
63
+ return (acc += `[${kebabCase(section)}="${restPath
64
+ .splice(idx + 1, 1)
65
+ .join('')}"]`);
56
66
  }, '');
57
67
 
58
- let selector = `${getComponentName(component)}${attrsSelector}`
68
+ let selector = `${getComponentName(component)}${attrsSelector}`;
59
69
 
60
70
  return {
61
71
  [selector]: {
62
72
  [property]: val
63
73
  }
64
- }
74
+ };
65
75
  });
66
76
 
67
77
  export const componentsThemeToStyle = (componentsTheme, themeName = '') =>
68
78
  Object.entries(componentsThemeToStyleObj(componentsTheme)).reduce(
69
- (acc, [selector, vars]) => (acc += `*[data-theme="${themeName}"] ${selector} { \n${Object.entries(vars).map(([key, val]) => `${key}: ${val}`).join(';\n')} \n}\n\n`),
79
+ (acc, [selector, vars]) =>
80
+ (acc += `*[data-theme="${themeName}"] ${selector} { \n${Object.entries(
81
+ vars
82
+ )
83
+ .map(([key, val]) => `${key}: ${val}`)
84
+ .join(';\n')} \n}\n\n`),
70
85
  ''
71
86
  );
72
87
 
73
88
  export const themeToStyle = ({ globals, components }, themeName) => `
74
89
  ${globalsThemeToStyle(globals, themeName)}
75
90
  ${componentsThemeToStyle(components, themeName)}
76
- `
91
+ `;
77
92
 
78
- const useVar = varName => `var(${varName})`
93
+ const useVar = (varName) => `var(${varName})`;
79
94
 
80
95
  export const createHelperVars = (theme, prefix) => {
81
96
  const res = transformTheme(theme, [], (path, value) => {
82
97
  const modifiedPath = [...path];
83
- const property = modifiedPath.splice(-1)
84
- const varName = getCssVarName(prefix, property)
98
+ const property = modifiedPath.splice(-1);
99
+ const varName = getCssVarName(prefix, property);
85
100
 
86
- const vars = { [property]: varName }
87
- const theme = set({}, [...modifiedPath, varName], value)
88
- const useVars = { [property]: useVar(varName) }
101
+ const vars = { [property]: varName };
102
+ const theme = set({}, [...modifiedPath, varName], value);
103
+ const useVars = { [property]: useVar(varName) };
89
104
 
90
- return { theme, useVars, vars }
91
- })
105
+ return { theme, useVars, vars };
106
+ });
92
107
 
93
- return [res.theme, res.useVars, res.vars]
108
+ return [res.theme, res.useVars, res.vars];
94
109
  };
@@ -1,10 +1,13 @@
1
- import Color from "color";
1
+ import Color from 'color';
2
2
 
3
3
  const genDark = (c, percentage = 0.5) => c.darken(percentage).hex();
4
4
  const genLight = (c, percentage = 0.5) => c.lighten(percentage).hex();
5
5
  const genContrast = (c, percentage = 0.9) => {
6
6
  const isDark = c.isDark();
7
- return c.mix(Color(isDark ? 'white' : 'black'), percentage).saturate(1).hex();
7
+ return c
8
+ .mix(Color(isDark ? 'white' : 'black'), percentage)
9
+ .saturate(1)
10
+ .hex();
8
11
  };
9
12
 
10
13
  export const genColor = (color) => {
@@ -14,16 +17,16 @@ export const genColor = (color) => {
14
17
  main: mainColor.hex(),
15
18
  dark: color.dark || genDark(mainColor),
16
19
  light: color.light || genLight(mainColor),
17
- contrast: color.contrast || genContrast(mainColor),
18
- }
19
- }
20
+ contrast: color.contrast || genContrast(mainColor)
21
+ };
22
+ };
20
23
 
21
24
  export const genColors = (colors) => {
22
25
  return Object.keys(colors).reduce((acc, colorName) => {
23
26
  const currentColor = colors[colorName];
24
27
 
25
28
  return Object.assign(acc, {
26
- [colorName]: genColor(currentColor),
27
- })
29
+ [colorName]: genColor(currentColor)
30
+ });
28
31
  }, {});
29
32
  };
package/dist/umd/221.js DELETED
@@ -1,37 +0,0 @@
1
- /*! For license information please see 221.js.LICENSE.txt */
2
- "use strict";(self.webpackChunkDescopeUI=self.webpackChunkDescopeUI||[]).push([[221],{6221:(t,e,a)=>{a(3787);var s=a(692),i=a(5128);(0,i.hC)("vaadin-text-field",s.J,{moduleId:"lumo-text-field-styles"}),a(3130);var l=a(4241),r=a(1402),n=a(4463),o=a(2743),d=a(3208),u=a(3690);const p=t=>class extends((0,u.L)(t)){static get properties(){return{autocomplete:{type:String},autocorrect:{type:String},autocapitalize:{type:String,reflectToAttribute:!0}}}static get delegateAttrs(){return[...super.delegateAttrs,"autocapitalize","autocomplete","autocorrect"]}get __data(){return this.__dataValue||{}}set __data(t){this.__dataValue=t}_inputElementChanged(t){super._inputElementChanged(t),t&&(t.value&&t.value!==this.value&&(console.warn(`Please define value on the <${this.localName}> component!`),t.value=""),this.value&&(t.value=this.value))}_setFocused(t){super._setFocused(t),t||this.validate()}_onInput(t){super._onInput(t),this.invalid&&this.validate()}_valueChanged(t,e){super._valueChanged(t,e),void 0!==e&&this.invalid&&this.validate()}};var h=a(6729);const c=t=>class extends(p(t)){static get properties(){return{maxlength:{type:Number},minlength:{type:Number},pattern:{type:String}}}static get delegateAttrs(){return[...super.delegateAttrs,"maxlength","minlength","pattern"]}static get constraints(){return[...super.constraints,"maxlength","minlength","pattern"]}constructor(){super(),this._setType("text")}get clearElement(){return this.$.clearButton}ready(){super.ready(),this.addController(new d.b(this,(t=>{this._setInputElement(t),this._setFocusElement(t),this.stateTarget=t,this.ariaTarget=t}))),this.addController(new h.v(this.inputElement,this._labelController))}};(0,i.hC)("vaadin-text-field",o.J,{moduleId:"vaadin-text-field-styles"});class m extends(c((0,i.Tb)((0,r.S)(l.H3)))){static get is(){return"vaadin-text-field"}static get template(){return l.dy`
3
- <style>
4
- [part='input-field'] {
5
- flex-grow: 0;
6
- }
7
- </style>
8
-
9
- <div class="vaadin-field-container">
10
- <div part="label">
11
- <slot name="label"></slot>
12
- <span part="required-indicator" aria-hidden="true" on-click="focus"></span>
13
- </div>
14
-
15
- <vaadin-input-container
16
- part="input-field"
17
- readonly="[[readonly]]"
18
- disabled="[[disabled]]"
19
- invalid="[[invalid]]"
20
- theme$="[[_theme]]"
21
- >
22
- <slot name="prefix" slot="prefix"></slot>
23
- <slot name="input"></slot>
24
- <slot name="suffix" slot="suffix"></slot>
25
- <div id="clearButton" part="clear-button" slot="suffix" aria-hidden="true"></div>
26
- </vaadin-input-container>
27
-
28
- <div part="helper-text">
29
- <slot name="helper"></slot>
30
- </div>
31
-
32
- <div part="error-message">
33
- <slot name="error-message"></slot>
34
- </div>
35
- </div>
36
- <slot name="tooltip"></slot>
37
- `}static get properties(){return{maxlength:{type:Number},minlength:{type:Number}}}ready(){super.ready(),this._tooltipController=new n.f(this),this._tooltipController.setPosition("top"),this.addController(this._tooltipController)}}customElements.define(m.is,m)}}]);