@descope/web-components-ui 1.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +191 -0
  2. package/dist/cjs/index.cjs.js +95 -0
  3. package/dist/cjs/index.cjs.js.map +1 -0
  4. package/dist/cjs/package.json +1 -0
  5. package/dist/index.esm.js +703 -0
  6. package/dist/index.esm.js.map +1 -0
  7. package/dist/umd/146.js +1 -0
  8. package/dist/umd/221.js +37 -0
  9. package/dist/umd/221.js.LICENSE.txt +11 -0
  10. package/dist/umd/511.js +573 -0
  11. package/dist/umd/511.js.LICENSE.txt +23 -0
  12. package/dist/umd/54.js +971 -0
  13. package/dist/umd/54.js.LICENSE.txt +33 -0
  14. package/dist/umd/599.js +1 -0
  15. package/dist/umd/729.js +1 -0
  16. package/dist/umd/840.js +356 -0
  17. package/dist/umd/840.js.LICENSE.txt +61 -0
  18. package/dist/umd/9.js +312 -0
  19. package/dist/umd/9.js.LICENSE.txt +21 -0
  20. package/dist/umd/descope-button-js.js +1 -0
  21. package/dist/umd/descope-combo-js.js +1 -0
  22. package/dist/umd/descope-date-picker-js.js +1 -0
  23. package/dist/umd/descope-text-field-js.js +1 -0
  24. package/dist/umd/index.js +1 -0
  25. package/package.json +45 -0
  26. package/src/components/descope-button.js +39 -0
  27. package/src/components/descope-combo.js +26 -0
  28. package/src/components/descope-date-picker.js +19 -0
  29. package/src/components/descope-text-field.js +36 -0
  30. package/src/componentsHelpers/createProxy/helpers.js +33 -0
  31. package/src/componentsHelpers/createProxy/index.js +82 -0
  32. package/src/componentsHelpers/createStyleMixin/helpers.js +66 -0
  33. package/src/componentsHelpers/createStyleMixin/index.js +22 -0
  34. package/src/componentsHelpers/draggableMixin.js +32 -0
  35. package/src/componentsHelpers/index.js +11 -0
  36. package/src/componentsHelpers/inputMixin.js +46 -0
  37. package/src/constants.js +1 -0
  38. package/src/dev/index.js +6 -0
  39. package/src/helpers.js +8 -0
  40. package/src/index.cjs.js +3 -0
  41. package/src/index.js +8 -0
  42. package/src/index.umd.js +7 -0
  43. package/src/theme/components/button.js +86 -0
  44. package/src/theme/components/index.js +7 -0
  45. package/src/theme/components/textField.js +50 -0
  46. package/src/theme/globals.js +66 -0
  47. package/src/theme/index.js +4 -0
  48. package/src/themeHelpers/index.js +76 -0
  49. package/src/themeHelpers/processColors.js +29 -0
package/README.md ADDED
@@ -0,0 +1,191 @@
1
+ # web-components-ui
2
+
3
+ # Architecture
4
+
5
+ ## `page-editor-components`
6
+
7
+ ## `screen-renderer-service`
8
+
9
+ ## `web-components-ui`
10
+
11
+ ### Components
12
+
13
+ - DescopeUI
14
+ - Components Library ([Vaadain Components](https://vaadin.com/docs/latest/components))
15
+
16
+ ### Build
17
+
18
+ _Webpack_
19
+
20
+ - `UMD` - Hosted, consumed by client in runtime
21
+
22
+ _Rollup_
23
+
24
+ - `ESM` - Consumed by `console-app` in build
25
+ - `CJS` - Consumed by `screen-renderer-service` in build
26
+
27
+ ### CreateProxy
28
+
29
+ Wraps the web component with a ProxyElement.
30
+
31
+ ### Discovery & Lazy Loading
32
+
33
+ ### Hosted Service
34
+
35
+ ### Style API
36
+
37
+ - Cover gaps between style API of our components and Vaadain’s style API
38
+
39
+ ### Mixins
40
+
41
+ `DraggableMixin`
42
+
43
+ ### Versioning
44
+
45
+ TBD
46
+
47
+ <!-- theme: colors -->
48
+
49
+ <!-- theme: global props -->
50
+
51
+ font
52
+
53
+ <!-- theme: mapped -->
54
+
55
+ color
56
+ bgColor
57
+
58
+ <!-- component props -->
59
+
60
+ size
61
+
62
+ --
63
+ Theme colors
64
+ Theme fonts
65
+
66
+ # Button
67
+
68
+ - Variant
69
+ - Text Color
70
+ - Text Size
71
+ - Font Family
72
+ - BgColor
73
+ - Radius
74
+
75
+ # Autocomplete
76
+
77
+ - Variant: V1: Default
78
+
79
+ - Button
80
+ - Input
81
+ - Variant
82
+ - Text Color
83
+ - Border
84
+ - Radius
85
+ - List
86
+ - Variant
87
+ - Border
88
+ - BgColor
89
+ - Radius
90
+ - Chip
91
+ - Variant
92
+ - Text Color
93
+ - Bg Color
94
+ - Radius
95
+
96
+ - Variant: V2: Outline
97
+ - Variant: V3: Contained
98
+
99
+ <!-- global atomic vars -->
100
+
101
+ spacing1
102
+ spacing2
103
+ font1
104
+ font2
105
+ color1
106
+ color2
107
+ color3
108
+ color4
109
+ color5
110
+ .
111
+ .
112
+ .
113
+ --
114
+ Primary Color
115
+ Secondary Color
116
+ Info
117
+ Success
118
+ Error
119
+ Warning
120
+
121
+ prop
122
+
123
+ <!-- CSSProp bgColor -->
124
+
125
+ THEME:
126
+ Global Theme Prop: `PrimaryColor`
127
+ Component Variant Prop: `PrimaryColor` / `GlobalThemeProp` / `Custom`
128
+
129
+ ```
130
+ {
131
+ colors: {
132
+ PrimaryColor: red;
133
+ SecondaryColor: blue;
134
+ Success: green;
135
+ },
136
+ components: {
137
+ Button: {
138
+ success: {
139
+ color
140
+ radius
141
+ fontFamily
142
+ }
143
+ colors: {
144
+ BgColor: yellow;
145
+ TextColor
146
+ Radius
147
+ },
148
+ sizes: {
149
+ small: '',
150
+ }
151
+ fonts: {
152
+ FontSize
153
+ },
154
+ }
155
+ Phone: {
156
+ colors: {
157
+ TextColor: red;
158
+ }
159
+
160
+ }
161
+ }
162
+ }
163
+ ```
164
+
165
+ COMP:
166
+ <descope-web-component variant="contained" overrides=[PrimaryColor: red, Success: blue]></descope-web-component>
167
+
168
+ PrimaryColor => BgColor
169
+
170
+ WCProp BgColor
171
+ WCProp -
172
+
173
+ <button variant="outline" currentDay="success">
174
+ <button variant="outline" color="#123123">
175
+
176
+ outline: {
177
+ borderColor: theme[color] || color // red
178
+ color: theme[variant] \* 0.2
179
+ }
180
+
181
+ <date-picker TextColor="">
182
+ contained: {
183
+ bgColor: theme[variant]
184
+ color: theme[variant] \* 0.8
185
+ }
186
+ .contained.success {
187
+ bgColor: theme[PrimayColor]
188
+ color: theme[variant] \* 0.8
189
+ }
190
+
191
+ <descope-web-component variant="contained" color, radius, fontFamily></descope-web-component>
@@ -0,0 +1,95 @@
1
+ 'use strict';
2
+
3
+ var merge = require('lodash.merge');
4
+ var set = require('lodash.set');
5
+
6
+ const DESCOPE_PREFIX = 'descope';
7
+
8
+ const kebabCase = str => str
9
+ .replace(/([a-z])([A-Z])/g, "$1-$2")
10
+ .replace(/[\s_.]+/g, '-')
11
+ .toLowerCase();
12
+
13
+ const kebabCaseJoin = (...args) => kebabCase(args.join('-'));
14
+
15
+ const getCssVarName = (...args) => `--${kebabCaseJoin(...args)}`;
16
+
17
+ const getComponentName = (name) => kebabCaseJoin(DESCOPE_PREFIX, name);
18
+
19
+ const getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path);
20
+
21
+ const transformTheme = (theme, path, getTransformation) => {
22
+ return Object.entries(theme).reduce((acc, [key, val]) => {
23
+ if (val?.constructor !== Object) {
24
+ return merge(acc, getTransformation(path.concat(key), val));
25
+ } else {
26
+ return merge(acc, transformTheme(val, [...path, key], getTransformation));
27
+ }
28
+ }, {});
29
+ };
30
+
31
+ const stringifyArray = (strArr) => strArr.map((str) => (str.includes(" ") ? `"${str}"` : str)).join(", ");
32
+
33
+ const themeToCSSVarsObj = (theme) =>
34
+ transformTheme(theme, [], (path, val) => ({
35
+ [getVarName(path)]: Array.isArray(val) ? stringifyArray(val) : val,
36
+ }));
37
+
38
+ const getThemeRefs = (theme, prefix) =>
39
+ transformTheme(theme, [], (path) => set({}, path, `var(${getVarName(prefix ? [prefix, ...path] : path)})`));
40
+
41
+ const globalsThemeToStyle = (theme, themeName = '') => `
42
+ *[data-theme="${themeName}"] {
43
+ ${Object.entries(themeToCSSVarsObj(theme)).reduce(
44
+ (acc, entry) => (acc += `${entry.join(":")};\n`), ''
45
+ )}
46
+ }
47
+ `;
48
+
49
+ const componentsThemeToStyleObj = (componentsTheme) =>
50
+ transformTheme(componentsTheme, [], (path, val) => {
51
+ const [component, ...restPath] = path;
52
+ const property = restPath.pop();
53
+
54
+ // do not start with underscore -> key:value, must have 2 no underscore attrs in a row
55
+ // starts with underscore -> attribute selector
56
+
57
+ const attrsSelector = restPath.reduce((acc, section, idx) => {
58
+ if (section.startsWith('_')) return acc += `[${section.replace(/^_/, '')}]`;
59
+
60
+ const nextSection = restPath[idx + 1];
61
+
62
+ if (typeof nextSection !== 'string' || nextSection.startsWith('_')) {
63
+ console.error('theme generator', `your theme structure is invalid, attribute "${section}" is followed by "${nextSection}" which is not allowed`);
64
+ return acc;
65
+ }
66
+
67
+ return acc += `[${section}="${restPath.splice(idx + 1, 1).join('')}"]`;
68
+ }, '');
69
+
70
+ let selector = `${getComponentName(component)}${attrsSelector}`;
71
+
72
+ return {
73
+ [selector]: {
74
+ [getVarName([component, property])]: val
75
+ }
76
+ }
77
+ });
78
+
79
+ const componentsThemeToStyle = (componentsTheme, themeName = '') =>
80
+ Object.entries(componentsThemeToStyleObj(componentsTheme)).reduce(
81
+ (acc, [selector, vars]) => (acc += `*[data-theme="${themeName}"] ${selector} { \n${Object.entries(vars).map(([key, val]) => `${key}: ${val}`).join(';\n')} \n}\n\n`),
82
+ ''
83
+ );
84
+
85
+ const themeToStyle = ({ globals, components }, themeName) => `
86
+ ${globalsThemeToStyle(globals, themeName)}
87
+ ${componentsThemeToStyle(components, themeName)}
88
+ `;
89
+
90
+ exports.componentsThemeToStyle = componentsThemeToStyle;
91
+ exports.getThemeRefs = getThemeRefs;
92
+ exports.globalsThemeToStyle = globalsThemeToStyle;
93
+ exports.themeToCSSVarsObj = themeToCSSVarsObj;
94
+ exports.themeToStyle = themeToStyle;
95
+ //# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/constants.js","../../src/helpers.js","../../src/componentsHelpers/index.js","../../src/themeHelpers/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)}`\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'\n","import merge from \"lodash.merge\";\nimport set from \"lodash.set\";\nimport { DESCOPE_PREFIX } from \"../constants\";\nimport { getCssVarName } 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 += `[${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 += `[${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[getVarName([component, 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`"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}