@veritone-ce/design-system 2.1.5 → 2.2.0

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 (35) hide show
  1. package/dist/cjs/Button/index.js +15 -4
  2. package/dist/cjs/Button/styles.module.scss.js +1 -1
  3. package/dist/cjs/Drawer/components.js +35 -11
  4. package/dist/cjs/Drawer/styles.module.scss.js +1 -1
  5. package/dist/cjs/IconButton/index.js +25 -7
  6. package/dist/cjs/IconButton/styles.module.scss.js +1 -1
  7. package/dist/cjs/index.js +3 -1
  8. package/dist/cjs/styles/createPalette.js +219 -0
  9. package/dist/cjs/styles/createTheme.js +2 -2
  10. package/dist/cjs/styles/palette.js +13 -196
  11. package/dist/cjs/styles.css +5 -5
  12. package/dist/cjs/utils/recursive.js +25 -0
  13. package/dist/esm/Button/index.js +15 -4
  14. package/dist/esm/Button/styles.module.scss.js +1 -1
  15. package/dist/esm/Drawer/components.js +36 -12
  16. package/dist/esm/Drawer/styles.module.scss.js +1 -1
  17. package/dist/esm/IconButton/index.js +25 -7
  18. package/dist/esm/IconButton/styles.module.scss.js +1 -1
  19. package/dist/esm/index.js +2 -1
  20. package/dist/esm/styles/createPalette.js +217 -0
  21. package/dist/esm/styles/createTheme.js +1 -1
  22. package/dist/esm/styles/palette.js +13 -196
  23. package/dist/esm/styles/scss/theme.generated.scss +72 -20
  24. package/dist/esm/styles.css +5 -5
  25. package/dist/esm/utils/recursive.js +23 -0
  26. package/dist/types/Button/index.d.ts +3 -1
  27. package/dist/types/Drawer/components.d.ts +13 -1
  28. package/dist/types/IconButton/index.d.ts +5 -1
  29. package/dist/types/styles/createPalette.d.ts +50 -0
  30. package/dist/types/styles/createTheme.d.ts +2 -1
  31. package/dist/types/styles/css-vars.d.ts +4 -2
  32. package/dist/types/styles/index.d.ts +3 -2
  33. package/dist/types/styles/palette.d.ts +13 -55
  34. package/dist/types/utils/recursive.d.ts +10 -0
  35. package/package.json +1 -1
@@ -13,19 +13,21 @@ require('../styles/css-vars.js');
13
13
  var cx = require('../styles/cx.js');
14
14
  require('../styles/defaultTheme.js');
15
15
  require('@mui/system');
16
+ var palette = require('../styles/palette.js');
16
17
  require('../styles/styled.js');
17
18
 
18
19
  const Button = React.forwardRef(
19
20
  ({
20
21
  variant = "primary",
22
+ palette: paletteInput = variant === "primary" ? "action.primary" : "action.text",
21
23
  size = "large",
22
24
  disabled = false,
23
25
  loading = false,
24
- destructive = false,
25
26
  active = false,
26
27
  ...props
27
28
  }, ref) => {
28
29
  const variantCn = styles_module.default[variant];
30
+ const palette$1 = palette.resolvePaletteValue(paletteInput);
29
31
  return /* @__PURE__ */ jsxRuntime.jsxs(
30
32
  "button",
31
33
  {
@@ -35,13 +37,22 @@ const Button = React.forwardRef(
35
37
  "data-loading": loading,
36
38
  "data-active": active,
37
39
  disabled: loading || disabled,
38
- "data-destructive": destructive,
39
40
  onClick: props.onClick,
40
41
  "data-testid": props["data-testid"],
41
- style: props.style,
42
+ style: {
43
+ ...{
44
+ "--vt-ce-button-palette-base-surface": palette$1.base.surface,
45
+ "--vt-ce-button-palette-base-on": palette$1.base.on,
46
+ "--vt-ce-button-palette-hover-surface": palette$1.hover.surface,
47
+ "--vt-ce-button-palette-hover-on": palette$1.hover.on,
48
+ "--vt-ce-button-palette-disabled-surface": palette$1.disabled.surface,
49
+ "--vt-ce-button-palette-disabled-on": palette$1.disabled.on
50
+ },
51
+ ...props.style
52
+ },
42
53
  className: cx.cx(styles_module.default["button"], variantCn, props.className),
43
54
  children: [
44
- loading && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["loading-container"], children: /* @__PURE__ */ jsxRuntime.jsx(index.default, { size: "1.4em", color: "inherit" }) }),
55
+ loading && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["loading-container"], children: /* @__PURE__ */ jsxRuntime.jsx(index.default, { size: "1.4em" }) }),
45
56
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: styles_module.default["inner-container"], children: [
46
57
  props.startIcon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["button-icon"], children: props.startIcon }),
47
58
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: props.children }),
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var modules_efc4e723 = {"button":"vt_ce_Button_button__0157fdfe","primary":"vt_ce_Button_primary__0157fdfe","secondary":"vt_ce_Button_secondary__0157fdfe","tertiary":"vt_ce_Button_tertiary__0157fdfe","inner-container":"vt_ce_Button_innerContainer__0157fdfe","loading-container":"vt_ce_Button_loadingContainer__0157fdfe","button-icon":"vt_ce_Button_buttonIcon__0157fdfe"};
5
+ var modules_efc4e723 = {"button":"vt_ce_Button_button__83b29f90","primary":"vt_ce_Button_primary__83b29f90","secondary":"vt_ce_Button_secondary__83b29f90","tertiary":"vt_ce_Button_tertiary__83b29f90","inner-container":"vt_ce_Button_innerContainer__83b29f90","loading-container":"vt_ce_Button_loadingContainer__83b29f90","button-icon":"vt_ce_Button_buttonIcon__83b29f90"};
6
6
 
7
7
  exports.default = modules_efc4e723;
@@ -14,6 +14,7 @@ require('../styles/css-vars.js');
14
14
  var cx = require('../styles/cx.js');
15
15
  require('../styles/defaultTheme.js');
16
16
  require('@mui/system');
17
+ var palette = require('../styles/palette.js');
17
18
  require('../styles/styled.js');
18
19
  var index$1 = require('../Button/index.js');
19
20
  var index = require('../Typography/index.js');
@@ -114,25 +115,48 @@ const DrawerEnd = React__namespace.forwardRef(
114
115
  );
115
116
  }
116
117
  );
117
- const DrawerTitle = React__namespace.forwardRef(function DrawerTitle2({ children, ...props }, ref) {
118
+ const DrawerTitle = React__namespace.forwardRef(function DrawerTitle2({
119
+ children,
120
+ actions,
121
+ container = "text",
122
+ palette: paletteInput = "brand.1.base",
123
+ ...props
124
+ }, ref) {
125
+ const palette$1 = palette.resolvePaletteValue(paletteInput);
118
126
  const { setLabelId } = state.useDrawerContext();
119
127
  const id = React__namespace.useId();
120
128
  React__namespace.useLayoutEffect(() => {
121
129
  setLabelId(id);
122
130
  return () => setLabelId(void 0);
123
131
  }, [id, setLabelId]);
124
- return /* @__PURE__ */ jsxRuntime.jsx(DrawerStart, { children: /* @__PURE__ */ jsxRuntime.jsx(
125
- index.default,
132
+ return /* @__PURE__ */ jsxRuntime.jsxs(
133
+ DrawerStart,
126
134
  {
127
- variant: "title",
128
- ref,
129
- id,
130
- color: "primary",
131
- ...props,
132
- className: cx.cx(styles_module.default["drawer-title"], props.className),
133
- children
135
+ "data-container": container,
136
+ style: {
137
+ ...{
138
+ "--vt-ce-drawer-palette-surface": palette$1.surface,
139
+ "--vt-ce-drawer-palette-on": palette$1.on
140
+ }
141
+ },
142
+ className: styles_module.default["drawer-title-container"],
143
+ children: [
144
+ /* @__PURE__ */ jsxRuntime.jsx(
145
+ index.default,
146
+ {
147
+ variant: "title",
148
+ ref,
149
+ id,
150
+ color: "inherit",
151
+ ...props,
152
+ className: cx.cx(styles_module.default["drawer-title"], props.className),
153
+ children
154
+ }
155
+ ),
156
+ actions && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["drawer-title-actions"], children: actions })
157
+ ]
134
158
  }
135
- ) });
159
+ );
136
160
  });
137
161
  const DrawerTypography = React__namespace.forwardRef(function DrawerTypography2({ children, ...props }, ref) {
138
162
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var modules_efc4e723 = {"drawer-overlay":"vt_ce_Drawer_drawerOverlay__6d49b031","drawer":"vt_ce_Drawer_drawer__6d49b031","drawer-start":"vt_ce_Drawer_drawerStart__6d49b031","drawer-end":"vt_ce_Drawer_drawerEnd__6d49b031","drawer-content":"vt_ce_Drawer_drawerContent__6d49b031","drawer-title":"vt_ce_Drawer_drawerTitle__6d49b031","drawer-typography":"vt_ce_Drawer_drawerTypography__6d49b031","drawer-actions":"vt_ce_Drawer_drawerActions__6d49b031"};
5
+ var modules_efc4e723 = {"drawer-overlay":"vt_ce_Drawer_drawerOverlay__711dd4dc","drawer":"vt_ce_Drawer_drawer__711dd4dc","drawer-start":"vt_ce_Drawer_drawerStart__711dd4dc","drawer-end":"vt_ce_Drawer_drawerEnd__711dd4dc","drawer-content":"vt_ce_Drawer_drawerContent__711dd4dc","drawer-title-container":"vt_ce_Drawer_drawerTitleContainer__711dd4dc","drawer-title":"vt_ce_Drawer_drawerTitle__711dd4dc","drawer-title-actions":"vt_ce_Drawer_drawerTitleActions__711dd4dc","drawer-typography":"vt_ce_Drawer_drawerTypography__711dd4dc","drawer-actions":"vt_ce_Drawer_drawerActions__711dd4dc"};
6
6
 
7
7
  exports.default = modules_efc4e723;
@@ -13,24 +13,42 @@ require('../styles/css-vars.js');
13
13
  var cx = require('../styles/cx.js');
14
14
  require('../styles/defaultTheme.js');
15
15
  require('@mui/system');
16
+ var palette = require('../styles/palette.js');
16
17
  require('../styles/styled.js');
17
18
 
18
19
  const IconButton = React.forwardRef(
19
- (props, ref) => {
20
+ ({
21
+ variant = "primary",
22
+ palette: paletteInput = "action.text",
23
+ loading = false,
24
+ disabled = false,
25
+ ...props
26
+ }, ref) => {
27
+ const variantCn = styles_module.default[variant];
28
+ const palette$1 = palette.resolvePaletteValue(paletteInput);
20
29
  return /* @__PURE__ */ jsxRuntime.jsxs(
21
30
  "button",
22
31
  {
23
32
  ref,
24
33
  type: props.type,
25
- "data-loading": props.loading ?? false,
26
- disabled: props.loading || props.disabled,
27
- "data-destructive": props.destructive ?? false,
34
+ "data-loading": loading,
35
+ disabled: loading || disabled,
28
36
  onClick: props.onClick,
29
37
  "data-testid": props["data-testid"],
30
- style: props.style,
31
- className: cx.cx(styles_module.default["button"], props.className),
38
+ style: {
39
+ ...{
40
+ "--vt-ce-icon-button-palette-base-surface": palette$1.base.surface,
41
+ "--vt-ce-icon-button-palette-base-on": palette$1.base.on,
42
+ "--vt-ce-icon-button-palette-hover-surface": palette$1.hover.surface,
43
+ "--vt-ce-icon-button-palette-hover-on": palette$1.hover.on,
44
+ "--vt-ce-icon-button-palette-disabled-surface": palette$1.disabled.surface,
45
+ "--vt-ce-icon-button-palette-disabled-on": palette$1.disabled.on
46
+ },
47
+ ...props.style
48
+ },
49
+ className: cx.cx(styles_module.default["button"], variantCn, props.className),
32
50
  children: [
33
- props.loading && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["loading-container"], children: /* @__PURE__ */ jsxRuntime.jsx(index.default, { color: "inherit", fillParentHeight: true }) }),
51
+ loading && /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["loading-container"], children: /* @__PURE__ */ jsxRuntime.jsx(index.default, { fillParentHeight: true }) }),
34
52
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles_module.default["inner-icon"], children: props.children })
35
53
  ]
36
54
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var modules_efc4e723 = {"button":"vt_ce_IconButton_button__b5583457","inner-icon":"vt_ce_IconButton_innerIcon__b5583457","loading-container":"vt_ce_IconButton_loadingContainer__b5583457"};
5
+ var modules_efc4e723 = {"button":"vt_ce_IconButton_button__8407c5d8","primary":"vt_ce_IconButton_primary__8407c5d8","secondary":"vt_ce_IconButton_secondary__8407c5d8","inner-icon":"vt_ce_IconButton_innerIcon__8407c5d8","loading-container":"vt_ce_IconButton_loadingContainer__8407c5d8"};
6
6
 
7
7
  exports.default = modules_efc4e723;
package/dist/cjs/index.js CHANGED
@@ -8,6 +8,7 @@ var cx = require('./styles/cx.js');
8
8
  var defaultTheme = require('./styles/defaultTheme.js');
9
9
  var useTheme = require('./styles/useTheme.js');
10
10
  var palette = require('./styles/palette.js');
11
+ var createPalette = require('./styles/createPalette.js');
11
12
  var styled = require('./styles/styled.js');
12
13
  var provider_client = require('./styles/provider.client.js');
13
14
  var provider_cssVars = require('./styles/provider.css-vars.js');
@@ -53,7 +54,8 @@ exports.ThemeVars = defaultTheme.defaultThemeCssVariableUsages;
53
54
  exports.defaultDarkTheme = defaultTheme.defaultDarkTheme;
54
55
  exports.defaultTheme = defaultTheme.default;
55
56
  exports.useTheme = useTheme.default;
56
- exports.createPalette = palette.createPalette;
57
+ exports.resolvePaletteValue = palette.resolvePaletteValue;
58
+ exports.createPalette = createPalette.createPalette;
57
59
  exports.experimentalStyled = styled.default;
58
60
  exports.styled = styled.default;
59
61
  exports.ThemeContextProvider = provider_client.ThemeContextProvider;
@@ -0,0 +1,219 @@
1
+ 'use strict';
2
+ 'use strict';
3
+
4
+ var color2k = require('color2k');
5
+
6
+ function isPaletteColorOptions(obj) {
7
+ return typeof obj === "string";
8
+ }
9
+ function createPaletteColor(options) {
10
+ return options;
11
+ }
12
+ function contrastColor(surface) {
13
+ return color2k.readableColor(surface);
14
+ }
15
+ function isPaletteSurfaceColorsOptions(obj) {
16
+ return typeof obj === "string" || obj["surface"] !== void 0;
17
+ }
18
+ function createPaletteSurfaceColors(options) {
19
+ if (typeof options === "string") {
20
+ const surface = createPaletteColor(options);
21
+ return {
22
+ surface,
23
+ on: contrastColor(surface)
24
+ };
25
+ } else {
26
+ const surface = createPaletteColor(options.surface);
27
+ return {
28
+ surface,
29
+ on: options.on ? createPaletteColor(options.on) : contrastColor(surface)
30
+ };
31
+ }
32
+ }
33
+ function isPaletteActionVariantsColorsOptions(obj) {
34
+ return isPaletteSurfaceColorsOptions(obj) || obj["base"] !== void 0;
35
+ }
36
+ function createPaletteActionVariantsColors(options, disabled) {
37
+ const hoverFromBase = (b) => ({
38
+ surface: color2k.toHex(color2k.desaturate(color2k.darken(b.surface, 1 / 10), 1 / 4)),
39
+ on: b.on
40
+ });
41
+ if (isPaletteSurfaceColorsOptions(options)) {
42
+ const resolved = createPaletteSurfaceColors(options);
43
+ return {
44
+ base: resolved,
45
+ hover: hoverFromBase(resolved),
46
+ disabled
47
+ };
48
+ } else {
49
+ const base = createPaletteSurfaceColors(options.base);
50
+ return {
51
+ base,
52
+ hover: options.hover ? createPaletteSurfaceColors(options.hover) : hoverFromBase(base),
53
+ disabled
54
+ };
55
+ }
56
+ }
57
+ function createPaletteBrand(options, disabled) {
58
+ const brandColorStepFromBase = (b, step) => createPaletteActionVariantsColors(
59
+ step >= 1 ? color2k.toHex(color2k.darken(b.base.surface, step / 20)) : color2k.toHex(color2k.lighten(b.base.surface, step / 2)),
60
+ disabled
61
+ );
62
+ if (isPaletteActionVariantsColorsOptions(options)) {
63
+ const resolved = createPaletteActionVariantsColors(options, disabled);
64
+ return {
65
+ 1: resolved,
66
+ 2: brandColorStepFromBase(resolved, 1),
67
+ 3: brandColorStepFromBase(resolved, 2),
68
+ 4: brandColorStepFromBase(resolved, 0.5),
69
+ 5: brandColorStepFromBase(resolved, 0.25)
70
+ };
71
+ } else {
72
+ const base = createPaletteActionVariantsColors(options[1], disabled);
73
+ return {
74
+ 1: base,
75
+ 2: options[2] ? createPaletteActionVariantsColors(options[2], disabled) : brandColorStepFromBase(base, 1),
76
+ 3: options[3] ? createPaletteActionVariantsColors(options[3], disabled) : brandColorStepFromBase(base, 2),
77
+ 4: options[4] ? createPaletteActionVariantsColors(options[4], disabled) : brandColorStepFromBase(base, 0.5),
78
+ 5: options[5] ? createPaletteActionVariantsColors(options[5], disabled) : brandColorStepFromBase(base, 0.25)
79
+ };
80
+ }
81
+ }
82
+ function createPaletteText(options) {
83
+ const textColorStepFromBase = (b, _step) => {
84
+ return b;
85
+ };
86
+ if (isPaletteColorOptions(options)) {
87
+ const resolved = createPaletteColor(options);
88
+ return {
89
+ primary: resolved,
90
+ secondary: textColorStepFromBase(resolved),
91
+ tertiary: textColorStepFromBase(resolved)
92
+ };
93
+ } else {
94
+ const base = createPaletteColor(options.primary);
95
+ return {
96
+ primary: base,
97
+ secondary: options.secondary ? createPaletteColor(options.secondary) : textColorStepFromBase(base),
98
+ tertiary: options.tertiary ? createPaletteColor(options.tertiary) : textColorStepFromBase(base)
99
+ };
100
+ }
101
+ }
102
+ function createPaletteAction(options, disabled, text) {
103
+ const destructiveDefault = createPaletteActionVariantsColors(
104
+ {
105
+ base: {
106
+ surface: "#EB0000",
107
+ on: "#FFFFFF"
108
+ },
109
+ hover: {
110
+ surface: "#a63737",
111
+ on: "#FFFFFF"
112
+ }
113
+ },
114
+ disabled
115
+ );
116
+ const primary = createPaletteActionVariantsColors(options.primary, disabled);
117
+ return {
118
+ primary,
119
+ destructive: options.destructive ? createPaletteActionVariantsColors(options.destructive, disabled) : destructiveDefault,
120
+ text: options.text ? createPaletteActionVariantsColors(options.text, disabled) : createPaletteActionVariantsColors(
121
+ {
122
+ ...primary,
123
+ base: {
124
+ surface: text,
125
+ on: contrastColor(text)
126
+ }
127
+ },
128
+ disabled
129
+ )
130
+ };
131
+ }
132
+ function createPaletteIndicator(options, disabled) {
133
+ return {
134
+ success: options.success ? createPaletteActionVariantsColors(options.success, disabled) : createPaletteActionVariantsColors("#28BA3F", disabled),
135
+ info: options.info ? createPaletteActionVariantsColors(options.info, disabled) : createPaletteActionVariantsColors("#335B89", disabled),
136
+ warning: options.warning ? createPaletteActionVariantsColors(options.warning, disabled) : createPaletteActionVariantsColors("#FFBB0A", disabled),
137
+ error: options.error ? createPaletteActionVariantsColors(options.error, disabled) : createPaletteActionVariantsColors("#EB0000", disabled)
138
+ };
139
+ }
140
+ function createPaletteTable(options, disabled) {
141
+ return createPaletteActionVariantsColors(options, disabled);
142
+ }
143
+ function createPaletteBackground(options) {
144
+ const backgroundStepFromBase = (b, step) => {
145
+ return color2k.toHex(color2k.darken(b, step / 20));
146
+ };
147
+ if (isPaletteColorOptions(options)) {
148
+ const resolved = createPaletteColor(options);
149
+ return {
150
+ primary: resolved,
151
+ secondary: backgroundStepFromBase(resolved, 1)
152
+ };
153
+ } else {
154
+ const base = createPaletteColor(options.primary);
155
+ return {
156
+ primary: base,
157
+ secondary: options.secondary ? createPaletteColor(options.secondary) : backgroundStepFromBase(base, 1)
158
+ };
159
+ }
160
+ }
161
+ function createPalette(options = {}) {
162
+ const disabled = options.disabled ? createPaletteSurfaceColors(options.disabled) : createPaletteSurfaceColors({
163
+ surface: "#FAFAFA",
164
+ on: "#7C848D"
165
+ });
166
+ const text = createPaletteText(
167
+ options.text ?? {
168
+ primary: "#2A323C",
169
+ secondary: "#5C6269",
170
+ tertiary: "#465364"
171
+ }
172
+ );
173
+ return {
174
+ brand: createPaletteBrand(
175
+ options.brand ?? {
176
+ 1: "#214167",
177
+ 2: "#335B89"
178
+ },
179
+ disabled
180
+ ),
181
+ text,
182
+ action: createPaletteAction(
183
+ options.action ?? {
184
+ primary: {
185
+ base: {
186
+ surface: "#1871E8",
187
+ on: "#FFFFFF"
188
+ },
189
+ hover: {
190
+ surface: "#335B89",
191
+ on: "#FFFFFF"
192
+ }
193
+ }
194
+ },
195
+ disabled,
196
+ text.tertiary
197
+ ),
198
+ indicator: createPaletteIndicator(options.indicator ?? {}, disabled),
199
+ disabled,
200
+ background: createPaletteBackground(
201
+ options.background ?? {
202
+ primary: "#FFFFFF",
203
+ secondary: "#E0E8F0"
204
+ }
205
+ ),
206
+ table: createPaletteTable(
207
+ options.table ?? {
208
+ base: {
209
+ surface: "#FFFFFF",
210
+ on: "#2A323C"
211
+ },
212
+ hover: "#EAF1FA"
213
+ },
214
+ disabled
215
+ )
216
+ };
217
+ }
218
+
219
+ exports.createPalette = createPalette;
@@ -3,13 +3,13 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var palette = require('./palette.js');
7
6
  var typography = require('./typography.js');
7
+ var createPalette = require('./createPalette.js');
8
8
 
9
9
  const defaultThemeOptions = {};
10
10
  function createTheme(options = defaultThemeOptions) {
11
11
  return {
12
- palette: palette.createPalette(options.palette),
12
+ palette: createPalette.createPalette(options.palette),
13
13
  typography: typography.createTypography(options.typography)
14
14
  };
15
15
  }
@@ -1,204 +1,21 @@
1
1
  'use strict';
2
2
  'use strict';
3
3
 
4
- var color2k = require('color2k');
4
+ var recursive = require('../utils/recursive.js');
5
+ require('color2k');
6
+ require('./css-vars.js');
7
+ var defaultTheme = require('./defaultTheme.js');
8
+ require('react');
9
+ require('@mui/system');
10
+ require('./styled.js');
11
+ require('react/jsx-runtime');
5
12
 
6
- function isPaletteColorOptions(obj) {
7
- return typeof obj === "string";
8
- }
9
- function createPaletteColor(options) {
10
- return options;
11
- }
12
- function contrastColor(surface) {
13
- return color2k.readableColor(surface);
14
- }
15
- function isPaletteSurfaceColorsOptions(obj) {
16
- return typeof obj === "string" || obj["surface"] !== void 0;
17
- }
18
- function createPaletteSurfaceColors(options) {
19
- if (typeof options === "string") {
20
- const surface = createPaletteColor(options);
21
- return {
22
- surface,
23
- on: contrastColor(surface)
24
- };
25
- } else {
26
- const surface = createPaletteColor(options.surface);
27
- return {
28
- surface,
29
- on: options.on ? createPaletteColor(options.on) : contrastColor(surface)
30
- };
31
- }
32
- }
33
- function createPaletteActionVariantsColors(options, disabled) {
34
- const hoverFromBase = (b) => ({
35
- surface: color2k.toHex(color2k.desaturate(color2k.darken(b.surface, 1 / 10), 1 / 4)),
36
- on: b.on
37
- });
38
- if (isPaletteSurfaceColorsOptions(options)) {
39
- const resolved = createPaletteSurfaceColors(options);
40
- return {
41
- base: resolved,
42
- hover: hoverFromBase(resolved),
43
- disabled
44
- };
45
- } else {
46
- const base = createPaletteSurfaceColors(options.base);
47
- return {
48
- base,
49
- hover: options.hover ? createPaletteSurfaceColors(options.hover) : hoverFromBase(base),
50
- disabled
51
- };
52
- }
53
- }
54
- function createPaletteBrand(options) {
55
- const brandColorStepFromBase = (b, step) => {
56
- return {
57
- surface: step >= 1 ? color2k.toHex(color2k.darken(b.surface, step / 20)) : color2k.toHex(color2k.lighten(b.surface, step / 2)),
58
- on: b.on
59
- };
60
- };
61
- if (isPaletteSurfaceColorsOptions(options)) {
62
- const resolved = createPaletteSurfaceColors(options);
63
- return {
64
- 1: resolved,
65
- 2: brandColorStepFromBase(resolved, 1),
66
- 3: brandColorStepFromBase(resolved, 2),
67
- 4: brandColorStepFromBase(resolved, 0.5),
68
- 5: brandColorStepFromBase(resolved, 0.25)
69
- };
13
+ function resolvePaletteValue(input, palette = defaultTheme.defaultThemeCssVariableUsages.palette) {
14
+ if (typeof input === "string") {
15
+ return recursive.deepGetValue(palette, input);
70
16
  } else {
71
- const base = createPaletteSurfaceColors(options[1]);
72
- return {
73
- 1: base,
74
- 2: options[2] ? createPaletteSurfaceColors(options[2]) : brandColorStepFromBase(base, 1),
75
- 3: options[3] ? createPaletteSurfaceColors(options[3]) : brandColorStepFromBase(base, 2),
76
- 4: options[4] ? createPaletteSurfaceColors(options[4]) : brandColorStepFromBase(base, 0.5),
77
- 5: options[5] ? createPaletteSurfaceColors(options[5]) : brandColorStepFromBase(base, 0.25)
78
- };
17
+ return input;
79
18
  }
80
19
  }
81
- function createPaletteText(options) {
82
- const textColorStepFromBase = (b, _step) => {
83
- return b;
84
- };
85
- if (isPaletteColorOptions(options)) {
86
- const resolved = createPaletteColor(options);
87
- return {
88
- primary: resolved,
89
- secondary: textColorStepFromBase(resolved),
90
- tertiary: textColorStepFromBase(resolved)
91
- };
92
- } else {
93
- const base = createPaletteColor(options.primary);
94
- return {
95
- primary: base,
96
- secondary: options.secondary ? createPaletteColor(options.secondary) : textColorStepFromBase(base),
97
- tertiary: options.tertiary ? createPaletteColor(options.tertiary) : textColorStepFromBase(base)
98
- };
99
- }
100
- }
101
- function createPaletteAction(options, disabled) {
102
- const destructiveDefault = createPaletteActionVariantsColors(
103
- {
104
- base: {
105
- surface: "#EB0000",
106
- on: "#FFFFFF"
107
- },
108
- hover: {
109
- surface: "#a63737",
110
- on: "#FFFFFF"
111
- }
112
- },
113
- disabled
114
- );
115
- return {
116
- primary: createPaletteActionVariantsColors(options.primary, disabled),
117
- destructive: options.destructive ? createPaletteActionVariantsColors(options.destructive, disabled) : destructiveDefault
118
- };
119
- }
120
- function createPaletteIndicator(options, disabled) {
121
- return {
122
- success: options.success ? createPaletteActionVariantsColors(options.success, disabled) : createPaletteActionVariantsColors("#28BA3F", disabled),
123
- info: options.info ? createPaletteActionVariantsColors(options.info, disabled) : createPaletteActionVariantsColors("#335B89", disabled),
124
- warning: options.warning ? createPaletteActionVariantsColors(options.warning, disabled) : createPaletteActionVariantsColors("#FFBB0A", disabled),
125
- error: options.error ? createPaletteActionVariantsColors(options.error, disabled) : createPaletteActionVariantsColors("#EB0000", disabled)
126
- };
127
- }
128
- function createPaletteTable(options, disabled) {
129
- return createPaletteActionVariantsColors(options, disabled);
130
- }
131
- function createPaletteBackground(options) {
132
- const backgroundStepFromBase = (b, step) => {
133
- return color2k.toHex(color2k.darken(b, step / 20));
134
- };
135
- if (isPaletteColorOptions(options)) {
136
- const resolved = createPaletteColor(options);
137
- return {
138
- primary: resolved,
139
- secondary: backgroundStepFromBase(resolved, 1)
140
- };
141
- } else {
142
- const base = createPaletteColor(options.primary);
143
- return {
144
- primary: base,
145
- secondary: options.secondary ? createPaletteColor(options.secondary) : backgroundStepFromBase(base, 1)
146
- };
147
- }
148
- }
149
- function createPalette(options = {}) {
150
- const disabled = options.disabled ? createPaletteSurfaceColors(options.disabled) : createPaletteSurfaceColors({
151
- surface: "#FAFAFA",
152
- on: "#7C848D"
153
- });
154
- return {
155
- brand: createPaletteBrand(
156
- options.brand ?? {
157
- 1: "#214167",
158
- 2: "#335B89"
159
- }
160
- ),
161
- text: createPaletteText(
162
- options.text ?? {
163
- primary: "#2A323C",
164
- secondary: "#5C6269",
165
- tertiary: "#465364"
166
- }
167
- ),
168
- action: createPaletteAction(
169
- options.action ?? {
170
- primary: {
171
- base: {
172
- surface: "#1871E8",
173
- on: "#FFFFFF"
174
- },
175
- hover: {
176
- surface: "#335B89",
177
- on: "#FFFFFF"
178
- }
179
- }
180
- },
181
- disabled
182
- ),
183
- indicator: createPaletteIndicator(options.indicator ?? {}, disabled),
184
- disabled,
185
- background: createPaletteBackground(
186
- options.background ?? {
187
- primary: "#FFFFFF",
188
- secondary: "#E0E8F0"
189
- }
190
- ),
191
- table: createPaletteTable(
192
- options.table ?? {
193
- base: {
194
- surface: "#FFFFFF",
195
- on: "#2A323C"
196
- },
197
- hover: "#EAF1FA"
198
- },
199
- disabled
200
- )
201
- };
202
- }
203
20
 
204
- exports.createPalette = createPalette;
21
+ exports.resolvePaletteValue = resolvePaletteValue;