@ardium-ui/ui 5.0.0-alpha.21 → 5.0.0-alpha.23

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 (51) hide show
  1. package/fesm2022/ardium-ui-ui.mjs +6 -5
  2. package/fesm2022/ardium-ui-ui.mjs.map +1 -1
  3. package/package.json +1 -1
  4. package/prebuilt-themes/default/buttons/button.css +45 -19
  5. package/prebuilt-themes/default/buttons/button.css.map +1 -1
  6. package/prebuilt-themes/default/buttons/fab.css +37 -17
  7. package/prebuilt-themes/default/buttons/fab.css.map +1 -1
  8. package/prebuilt-themes/default/buttons/icon-button.css +32 -13
  9. package/prebuilt-themes/default/buttons/icon-button.css.map +1 -1
  10. package/prebuilt-themes/default/chips.css +1 -1
  11. package/prebuilt-themes/default/color-display.css +1 -1
  12. package/prebuilt-themes/default/core.css +3 -0
  13. package/prebuilt-themes/default/core.css.map +1 -1
  14. package/prebuilt-themes/default/form-field-frame.css +1 -1
  15. package/prebuilt-themes/default/inputs/autocomplete-input.css +1 -1
  16. package/prebuilt-themes/default/inputs/color-input.css +2 -2
  17. package/prebuilt-themes/default/inputs/date-input.css +1 -1
  18. package/prebuilt-themes/default/inputs/digit-input.css +1 -1
  19. package/prebuilt-themes/default/inputs/file-input.css +1 -1
  20. package/prebuilt-themes/default/inputs/hex-input.css +3 -3
  21. package/prebuilt-themes/default/inputs/input.css +1 -1
  22. package/prebuilt-themes/default/inputs/number-input.css +1 -1
  23. package/prebuilt-themes/default/inputs/password-input.css +1 -1
  24. package/prebuilt-themes/default/inputs/search-bar.css +1 -1
  25. package/prebuilt-themes/default/kbd-shortcut.css +1 -1
  26. package/prebuilt-themes/default/kbd.css +1 -1
  27. package/prebuilt-themes/default/segment.css +1 -1
  28. package/prebuilt-themes/default/select.css +1 -1
  29. package/prebuilt-themes/default/statebox.css +1 -1
  30. package/prebuilt-themes/default/tabber.css +1 -1
  31. package/themes/default/buttons/_button-mixins.scss +28 -15
  32. package/themes/default/buttons/button.scss +41 -11
  33. package/themes/default/buttons/fab.scss +36 -9
  34. package/themes/default/buttons/icon-button.scss +31 -5
  35. package/themes/default/chips.scss +1 -1
  36. package/themes/default/color-display.scss +1 -1
  37. package/themes/default/core.scss +5 -0
  38. package/themes/default/form-field-frame.scss +1 -1
  39. package/themes/default/inputs/_shared.scss +1 -1
  40. package/themes/default/inputs/color-input.scss +1 -1
  41. package/themes/default/inputs/digit-input.scss +1 -1
  42. package/themes/default/inputs/hex-input.scss +2 -2
  43. package/themes/default/kbd-shortcut.scss +1 -1
  44. package/themes/default/kbd.scss +1 -1
  45. package/themes/default/segment.scss +1 -1
  46. package/themes/default/select.scss +1 -1
  47. package/themes/default/statebox.scss +1 -1
  48. package/themes/default/tabber.scss +1 -1
  49. package/prebuilt-themes/default/calendar-OLD.css +0 -294
  50. package/prebuilt-themes/default/calendar-OLD.css.map +0 -1
  51. package/themes/default/calendar-OLD.scss +0 -183
@@ -2,12 +2,23 @@
2
2
  @use '../coloring' as coloringMixins;
3
3
  @use '../../variables' as ARD;
4
4
 
5
- @mixin button {
5
+ @mixin button(
6
+ $margin,
7
+ $padding,
8
+ $font-size,
9
+ $font-weight,
10
+ $hover-opacity,
11
+ $focus-opacity,
12
+ $active-opacity,
13
+ $focus-visible-opacity
14
+ ) {
6
15
  @include coloringMixins.typeColors();
7
- font-family: 'Roboto', sans-serif;
8
- margin: 2px;
16
+ font-family: var(--ard-font-family);
17
+ margin: $margin;
18
+ padding: $padding;
9
19
  border: 1px solid transparent;
10
- font-weight: 500;
20
+ font-weight: $font-weight;
21
+ font-size: $font-size;
11
22
  display: inline-flex;
12
23
  align-items: center;
13
24
  position: relative;
@@ -23,21 +34,25 @@
23
34
  @include defaultMixins.focus-overlay;
24
35
  background-color: var(--ard-cmpcl--overlay);
25
36
  }
26
- &:hover,
37
+ &:hover {
38
+ .ard-focus-overlay {
39
+ opacity: $hover-opacity;
40
+ }
41
+ }
27
42
  &:focus {
28
43
  .ard-focus-overlay {
29
- opacity: 4%;
44
+ opacity: $focus-opacity;
30
45
  }
31
46
  }
32
47
  &.ard-active,
33
48
  &:active {
34
49
  .ard-focus-overlay {
35
- opacity: 12%;
50
+ opacity: $active-opacity;
36
51
  }
37
52
  }
38
53
  &:focus-visible {
39
54
  .ard-focus-overlay {
40
- opacity: 18%;
55
+ opacity: $focus-visible-opacity;
41
56
  }
42
57
  }
43
58
  //! button appearances
@@ -83,9 +98,7 @@
83
98
  display: none;
84
99
  }
85
100
 
86
- transition:
87
- background-color 0.2s ease,
88
- color 0.2s ease;
101
+ transition: background-color 0.2s ease, color 0.2s ease;
89
102
  &:hover,
90
103
  &:focus-visible {
91
104
  background: var(--ard-cmpcl--bg-colored);
@@ -116,13 +129,13 @@
116
129
  }
117
130
 
118
131
  //! disabled state
119
- @mixin button-disabled {
132
+ @mixin button-disabled($opacity, $overlay-opacity) {
120
133
  pointer-events: none;
121
- opacity: 60%;
134
+ opacity: $opacity;
122
135
  cursor: not-allowed;
123
136
 
124
137
  .ard-focus-overlay {
125
- opacity: 20%;
138
+ opacity: $overlay-opacity;
126
139
  transform: scale(1);
127
140
  }
128
141
 
@@ -130,7 +143,7 @@
130
143
  &.ard-color-none {
131
144
  .ard-button-icon,
132
145
  .ard-button-content {
133
- opacity: 60%;
146
+ opacity: $opacity;
134
147
  }
135
148
  .ard-focus-overlay {
136
149
  background: var(--ard-cmpcl--overlay);
@@ -1,5 +1,25 @@
1
1
  @use './button-mixins' as shared;
2
2
 
3
+ :root {
4
+ --ard-button-height: 2.5em;
5
+ --ard-button-height-compact: 2.25em;
6
+ --ard-button-margin: 0.125rem;
7
+ --ard-button-padding: 0 1.2em;
8
+ --ard-button-padding-compact: 0 0.9em;
9
+ --ard-button-padding-vertical: 0.3em 1em;
10
+ --ard-button-padding-vertical-compact: 0.2em 0.8em;
11
+ --ard-button-font-size: 0.875rem;
12
+ --ard-button-font-size-compact: 0.75rem;
13
+ --ard-button-font-weight: 500;
14
+ --ard-button-overlay-hover-opacity: 0.04;
15
+ --ard-button-overlay-focus-opacity: 0.12;
16
+ --ard-button-overlay-active-opacity: 0.18;
17
+ --ard-button-overlay-focus-visible-opacity: 0.24;
18
+ --ard-button-overlay-disabled-opacity: 0.2;
19
+ --ard-button-rounded-corner-radius: var(--ard-rounded-corner-radius, 0.375rem);
20
+ --ard-button-disabled-opacity: 0.6;
21
+ }
22
+
3
23
  ard-button {
4
24
  display: block;
5
25
  width: max-content;
@@ -7,17 +27,27 @@ ard-button {
7
27
  }
8
28
 
9
29
  .ard-button {
10
- @include shared.button;
30
+ @include shared.button(
31
+ var(--ard-button-margin, 0.125rem),
32
+ var(--ard-button-padding, 0 1.2em),
33
+ var(--ard-button-font-size, 0.875rem),
34
+ var(--ard-button-font-weight, 500),
35
+ var(--ard-button-overlay-hover-opacity, 0.04),
36
+ var(--ard-button-overlay-focus-opacity, 0.12),
37
+ var(--ard-button-overlay-active-opacity, 0.18),
38
+ var(--ard-button-overlay-focus-visible-opacity, 0.24)
39
+ );
11
40
  background: transparent;
12
41
  gap: 0.375rem;
13
- font-size: 0.875rem;
14
- height: 2.5em;
15
- padding: 0 1.2em;
42
+ font-size: var(--ard-button-font-size, 0.875rem);
43
+ height: var(--ard-button-height, 2.5em);
44
+ padding: var(--ard-button-padding, 0 1.2em);
16
45
  letter-spacing: 0.5px;
17
46
  width: 100%;
18
47
  min-width: max-content;
19
48
  justify-content: center;
20
49
  margin: 0;
50
+ user-select: none;
21
51
 
22
52
  .ard-button-content {
23
53
  display: flex;
@@ -36,13 +66,13 @@ ard-button {
36
66
  //! button variants
37
67
  &.ard-button-vertical {
38
68
  height: max-content;
39
- padding: 0.3em 1em;
69
+ padding: var(--ard-button-padding-vertical, 0.3em 1em);
40
70
  gap: 2px;
41
71
  flex-direction: column;
42
72
  }
43
73
  &.ard-variant-rounded,
44
74
  &.ard-variant-pill.ard-button-vertical {
45
- border-radius: 6px;
75
+ border-radius: var(--ard-button-rounded-corner-radius, 0.375rem);
46
76
  }
47
77
  &.ard-variant-pill:not(.ard-button-vertical) {
48
78
  border-radius: 9999px;
@@ -53,13 +83,13 @@ ard-button {
53
83
 
54
84
  //! compact
55
85
  &.ard-compact {
56
- font-size: 0.75rem;
57
- height: 2.25em;
58
- padding: 0 0.9em;
86
+ font-size: var(--ard-button-font-size-compact, 0.75rem);
87
+ height: var(--ard-button-height-compact, 2.25em);
88
+ padding: var(--ard-button-padding-compact, 0 0.9em);
59
89
 
60
90
  &.ard-button-vertical {
61
91
  height: max-content;
62
- padding: 0.2em 0.8em;
92
+ padding: var(--ard-button-padding-vertical-compact, 0.2em 0.8em);
63
93
  gap: 0;
64
94
  }
65
95
  }
@@ -67,7 +97,7 @@ ard-button {
67
97
 
68
98
  ard-button.ard-disabled {
69
99
  > .ard-button {
70
- @include shared.button-disabled;
100
+ @include shared.button-disabled(var(--ard-button-disabled-opacity, 0.6), var(--ard-button-overlay-disabled-opacity, 0.2));
71
101
  }
72
102
  &.ard-button-with-pointer-events-when-disabled {
73
103
  pointer-events: all;
@@ -1,30 +1,54 @@
1
1
  @use './button-mixins' as shared;
2
2
  @use '../mixins' as CM;
3
3
 
4
+ :root {
5
+ --ard-fab-size-standard: 3.5rem;
6
+ --ard-fab-size-small: 2.5rem;
7
+ --ard-fab-margin: 0.5rem;
8
+ --ard-fab-size-standard-font-size: 1.75rem;
9
+ --ard-fab-size-small-font-size: 1.375rem;
10
+ --ard-fab-font-weight: 900;
11
+ --ard-fab-overlay-hover-opacity: 0.04;
12
+ --ard-fab-overlay-focus-opacity: 0.12;
13
+ --ard-fab-overlay-active-opacity: 0.18;
14
+ --ard-fab-overlay-focus-visible-opacity: 0.24;
15
+ --ard-fab-overlay-disabled-opacity: 0.2;
16
+ --ard-fab-rounded-corner-radius: var(--ard-rounded-corner-radius, 0.375rem);
17
+ --ard-fab-disabled-opacity: 0.6;
18
+ }
19
+
4
20
  ard-fab {
5
- margin: 8px;
21
+ margin: var(--ard-fab-margin, 0.5rem);
6
22
  display: block;
7
23
  width: max-content;
8
24
  height: max-content;
9
25
  }
10
26
 
11
27
  .ard-fab {
12
- @include shared.button;
28
+ @include shared.button(
29
+ 0,
30
+ 0,
31
+ unset,
32
+ var(--ard-fab-font-weight, 900),
33
+ var(--ard-fab-overlay-hover-opacity, var(--ard-button-overlay-hover-opacity, 0.04)),
34
+ var(--ard-fab-overlay-focus-opacity, var(--ard-button-overlay-focus-opacity, 0.12)),
35
+ var(--ard-fab-overlay-active-opacity, var(--ard-button-overlay-active-opacity, 0.18)),
36
+ var(--ard-fab-overlay-focus-visible-opacity, var(--ard-button-overlay-focus-visible-opacity, 0.24))
37
+ );
13
38
  height: var(--ard-_fab-size);
14
39
  width: var(--ard-_fab-size);
15
- font-weight: 900;
16
40
  user-select: none;
17
- border-radius: 999px;
41
+ border-radius: 9999px;
18
42
  justify-content: center;
19
43
  margin: 0;
20
44
 
21
45
  &.ard-fab-size-standard {
22
- --ard-_fab-size: 3.5rem;
23
- font-size: 1.75rem;
46
+ --ard-_fab-size: var(--ard-fab-size-standard, 3.5rem);
47
+ font-size: var(--ard-fab-size-standard-font-size, 1.75rem);
24
48
  }
25
49
  &.ard-fab-size-small {
26
- --ard-_fab-size: 2.5rem;
27
- font-size: 1.375rem;
50
+ --ard-_fab-size: var(--ard-fab-size-small, 2.5rem);
51
+ font-size: var(--ard-fab-size-small-font-size, 1.375rem);
28
52
  }
29
53
  &.ard-fab-extended {
30
54
  min-width: var(--ard-_fab-size);
@@ -57,7 +81,10 @@ ard-fab {
57
81
 
58
82
  ard-fab.ard-disabled {
59
83
  > .ard-fab {
60
- @include shared.button-disabled;
84
+ @include shared.button-disabled(
85
+ var(--ard-fab-overlay-disabled-opacity, var(--ard-button-overlay-disabled-opacity, 0.2)),
86
+ var(--ard-fab-disabled-opacity, var(--ard-button-disabled-opacity, 0.6))
87
+ );
61
88
  }
62
89
  &.ard-button-with-pointer-events-when-disabled {
63
90
  pointer-events: all;
@@ -1,16 +1,41 @@
1
1
  @use './button-mixins' as shared;
2
2
 
3
+ :root {
4
+ --ard-icon-button-height: 2.1875em;
5
+ --ard-icon-button-height-compact: 2.25em;
6
+ --ard-icon-button-margin: 0;
7
+ --ard-icon-button-font-size: 1rem;
8
+ --ard-icon-button-font-size-compact: 0.75rem;
9
+ --ard-icon-button-font-weight: 600;
10
+ --ard-icon-button-overlay-hover-opacity: var(--ard-button-overlay-hover-opacity, 0.04);
11
+ --ard-icon-button-overlay-focus-opacity: var(--ard-button-overlay-focus-opacity, 0.12);
12
+ --ard-icon-button-overlay-active-opacity: var(--ard-button-overlay-active-opacity, 0.18);
13
+ --ard-icon-button-overlay-focus-visible-opacity: var(--ard-button-overlay-focus-visible-opacity, 0.24);
14
+ --ard-icon-button-overlay-disabled-opacity: var(--ard-button-overlay-disabled-opacity, 0.2);
15
+ --ard-icon-button-disabled-opacity: var(--ard-button-disabled-opacity, 0.6);
16
+ }
17
+
3
18
  ard-icon-button {
4
19
  height: max-content;
5
20
  width: max-content;
6
21
  border-radius: 9999px;
7
22
  aspect-ratio: 1;
8
23
  display: inline-block;
9
- font-size: 1rem;
24
+ margin: var(--ard-icon-button-margin, 0);
25
+ font-size: var(--ard-icon-button-font-size, 1rem);
10
26
  }
11
27
 
12
28
  .ard-icon-button {
13
- @include shared.button;
29
+ @include shared.button(
30
+ 0,
31
+ 0,
32
+ inherit,
33
+ inherit,
34
+ var(--ard-icon-button-overlay-hover-opacity, var(--ard-button-overlay-hover-opacity, 0.04)),
35
+ var(--ard-icon-button-overlay-focus-opacity, var(--ard-button-overlay-focus-opacity, 0.12)),
36
+ var(--ard-icon-button-overlay-active-opacity, var(--ard-button-overlay-active-opacity, 0.18)),
37
+ var(--ard-icon-button-overlay-focus-visible-opacity, var(--ard-button-overlay-focus-visible-opacity, 0.24))
38
+ );
14
39
  background: transparent;
15
40
  height: 2.1875em;
16
41
  aspect-ratio: 1;
@@ -19,8 +44,6 @@ ard-icon-button {
19
44
  justify-content: center;
20
45
  padding: 0;
21
46
  overflow: hidden;
22
- font-weight: 600;
23
- font-size: inherit;
24
47
  color: var(--ard-cmpcl--bg-colored);
25
48
 
26
49
  .ard-button-content {
@@ -46,7 +69,10 @@ ard-icon-button {
46
69
 
47
70
  ard-icon-button.ard-disabled {
48
71
  > .ard-icon-button {
49
- @include shared.button-disabled;
72
+ @include shared.button-disabled(
73
+ var(--ard-icon-button-overlay-disabled-opacity, var(--ard-button-overlay-disabled-opacity, 0.2)),
74
+ var(--ard-icon-button-disabled-opacity, var(--ard-button-disabled-opacity, 0.6))
75
+ );
50
76
 
51
77
  .ard-focus-overlay {
52
78
  opacity: 0;
@@ -9,7 +9,7 @@
9
9
  @include clearButton.clearButton();
10
10
  @include defaultMixins.formVariants();
11
11
 
12
- font-family: 'Roboto', sans-serif;
12
+ font-family: var(--ard-font-family);
13
13
  color: ARD.$text2;
14
14
  background: ARD.$bg;
15
15
  border-radius: var(--ard-variant-border-radius);
@@ -14,7 +14,7 @@
14
14
  }
15
15
 
16
16
  .ard-color-display-label {
17
- font-family: monospace;
17
+ font-family: var(--ard-font-family-mono);
18
18
  font-size: 1.15em;
19
19
  }
20
20
 
@@ -34,6 +34,9 @@
34
34
  --ard-darken-overlay-light: rgba(0, 0, 0, 5%);
35
35
  --ard-darken-overlay-ultralight: rgba(0, 0, 0, 3%);
36
36
 
37
+ --ard-font-family: 'Roboto', sans-serif;
38
+ --ard-font-family-mono: monospace;
39
+
37
40
  --ard-gold: #ffc107;
38
41
 
39
42
  --ard-clear-button-size: 0.9rem;
@@ -45,6 +48,8 @@
45
48
  --ard-form-field-padding: 0 0.375rem;
46
49
  --ard-form-field-padding-compact: 0 0.375rem;
47
50
 
51
+ --ard-rounded-corner-radius: 0.375rem;
52
+
48
53
  --ard-primary-50: 234, 235, 243;
49
54
  --ard-primary-100: 159, 167, 228;
50
55
  --ard-primary-300: 78, 99, 219;
@@ -12,7 +12,7 @@
12
12
  position: relative;
13
13
  font-size: 1rem;
14
14
  line-height: 1.25em;
15
- font-family: 'Roboto', sans-serif;
15
+ font-family: var(--ard-font-family);
16
16
 
17
17
  .ard-form-field-content-container {
18
18
  flex-grow: 1;
@@ -5,7 +5,7 @@
5
5
  */
6
6
  @mixin genericInput() {
7
7
  position: relative;
8
- font-family: 'Roboto', sans-serif;
8
+ font-family: var(--ard-font-family);
9
9
  display: flex;
10
10
  align-items: center;
11
11
  justify-content: stretch;
@@ -15,7 +15,7 @@
15
15
  pointer-events: none;
16
16
 
17
17
  input {
18
- font-family: monospace;
18
+ font-family: var(--ard-font-family-mono);
19
19
  user-select: none;
20
20
  }
21
21
  }
@@ -3,7 +3,7 @@
3
3
  @use '../mixins' as defaultMixins;
4
4
 
5
5
  ard-digit-input {
6
- font-family: 'Roboto', sans-serif;
6
+ font-family: var(--ard-font-family);
7
7
  font-weight: 500;
8
8
  color: ARD.$text;
9
9
  }
@@ -13,7 +13,7 @@
13
13
 
14
14
  .ard-input-container {
15
15
  input {
16
- font-family: monospace;
16
+ font-family: var(--ard-font-family-mono);
17
17
  }
18
18
  }
19
19
 
@@ -22,6 +22,6 @@
22
22
  color: ARD.$text3;
23
23
  opacity: 70%;
24
24
  user-select: none;
25
- font-family: monospace;
25
+ font-family: var(--ard-font-family-mono);
26
26
  }
27
27
  }
@@ -1,7 +1,7 @@
1
1
  @use '../variables' as ARD;
2
2
 
3
3
  .ard-kbd-shortcut {
4
- font-family: monospace;
4
+ font-family: var(--ard-font-family-mono);
5
5
  color: ARD.$text2;
6
6
 
7
7
  > span {
@@ -2,7 +2,7 @@
2
2
 
3
3
  .ard-kbd {
4
4
  border-radius: 0.2em;
5
- font-family: monospace;
5
+ font-family: var(--ard-font-family-mono);
6
6
  font-size: 0.9em;
7
7
  margin: 0 0.125em;
8
8
  color: ARD.$text2;
@@ -6,7 +6,7 @@
6
6
  @include coloringMixins.typeColors();
7
7
  --ard-_segment-padding: 0.15rem;
8
8
  padding: var(--ard-_segment-padding);
9
- font-family: 'Roboto', sans-serif;
9
+ font-family: var(--ard-font-family);
10
10
  margin: 2px;
11
11
  border: 1px solid transparent;
12
12
  font-weight: 500;
@@ -11,7 +11,7 @@
11
11
  grid-template-columns: 1fr max-content;
12
12
  gap: 0.625em;
13
13
  padding: 0 1em 0 0.375em;
14
- font-family: 'Roboto', sans-serif;
14
+ font-family: var(--ard-font-family);
15
15
  font-size: 1rem;
16
16
 
17
17
  @include CB.clearButton();
@@ -82,7 +82,7 @@
82
82
  left: 50%;
83
83
  top: 50%;
84
84
  transform: translate(-50%, -50%);
85
- font-family: 'Roboto', sans-serif;
85
+ font-family: var(--ard-font-family);
86
86
  }
87
87
  &.ard-color-custom {
88
88
  color: var(--ard-custom-color);
@@ -13,7 +13,7 @@ ard-tabber {
13
13
  display: flex;
14
14
  flex-direction: column;
15
15
  align-items: stretch;
16
- font-family: 'Roboto', sans-serif;
16
+ font-family: var(--ard-font-family);
17
17
 
18
18
  .ard-tabber-tabs {
19
19
  max-width: 100%;