@muraldevkit/ui-toolkit 1.15.6 → 1.15.8

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 (46) hide show
  1. package/dist/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.d.ts +1 -1
  2. package/dist/components/button/MrlButton/MrlButton.d.ts +1 -1
  3. package/dist/components/button/MrlIconButton/MrlIconButton.d.ts +1 -1
  4. package/dist/components/focus-trap/MrlFocusTrap/index.d.ts +1 -0
  5. package/dist/components/focus-trap/index.d.ts +1 -1
  6. package/dist/components/form/index.d.ts +3 -3
  7. package/dist/components/form/{MrlSelect/select.d.ts → select/MrlSelect/MrlSelect.d.ts} +2 -2
  8. package/dist/components/form/select/MrlSelect/index.d.ts +1 -0
  9. package/dist/components/form/{MrlSelectItem/index.d.ts → select/MrlSelectItem/MrlSelectItem.d.ts} +1 -1
  10. package/dist/components/form/select/MrlSelectItem/index.d.ts +1 -0
  11. package/dist/components/form/{MrlSelectMenu/index.d.ts → select/MrlSelectMenu/MrlSelectMenu.d.ts} +2 -2
  12. package/dist/components/form/select/MrlSelectMenu/index.d.ts +1 -0
  13. package/dist/components/form/{MrlSelect → select}/index.d.ts +1 -1
  14. package/dist/components/modal/MrlModal/index.d.ts +1 -1
  15. package/dist/components/modal/MrlModalFooter/index.d.ts +1 -1
  16. package/dist/components/notification/MrlBlockNotification/MrlBlockNotification.d.ts +70 -0
  17. package/dist/components/notification/MrlBlockNotification/index.d.ts +1 -70
  18. package/dist/components/svg/MrlSvg/index.d.ts +1 -0
  19. package/dist/components/svg/MrlSvgAnimate/index.d.ts +1 -0
  20. package/dist/components/tooltip/MrlTooltip/index.d.ts +1 -0
  21. package/dist/components/tooltip/MrlTooltipContent/MrlTooltipContent.d.ts +1 -1
  22. package/dist/components/tooltip/MrlTooltipContent/index.d.ts +1 -0
  23. package/dist/components/tooltip/index.d.ts +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/styles/MrlBlockNotification/global.scss +2 -1
  26. package/dist/styles/MrlBlockNotification/module.scss +3 -2
  27. package/dist/styles/MrlModal/global.scss +2 -2
  28. package/dist/styles/MrlModal/module.scss +2 -2
  29. package/dist/styles/MrlModal/variables.scss +1 -1
  30. package/dist/styles/MrlModalContent/module.scss +1 -1
  31. package/dist/styles/MrlModalFooter/module.scss +1 -1
  32. package/dist/styles/MrlModalFooter/variables.scss +1 -1
  33. package/dist/styles/MrlModalHeader/module.scss +1 -1
  34. package/dist/styles/MrlSelect/module.scss +4 -3
  35. package/dist/styles/MrlSelect/variables.scss +15 -0
  36. package/dist/styles/MrlSelectItem/module.scss +3 -2
  37. package/dist/styles/MrlSelectItem/variables.scss +36 -0
  38. package/dist/styles/MrlSelectMenu/module.scss +3 -2
  39. package/dist/styles/MrlSelectMenu/variables.scss +8 -0
  40. package/dist/styles/MrlText/module.scss +1 -1
  41. package/dist/styles/MrlTextHeading/module.scss +1 -1
  42. package/dist/styles/MrlTooltipContent/global.scss +2 -2
  43. package/dist/styles/form/global.scss +160 -0
  44. package/dist/styles/form/variables.scss +63 -0
  45. package/package.json +1 -1
  46. /package/dist/components/form/{MrlSelect → select/context}/SelectContext.d.ts +0 -0
@@ -5,7 +5,8 @@
5
5
 
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
7
7
  @use '~@muraldevkit/ds-foundation/src/styles/contextual-variables/z-index' as *;
8
- @use './styles.mixins.scss' as *;
8
+
9
+ @use './MrlBlockNotification.mixins.scss' as *;
9
10
 
10
11
  // Transition states were not working as expected when migrated to
11
12
  // modules, so we are using global styles for now.
@@ -6,8 +6,9 @@
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
7
7
  @use '~@muraldevkit/ds-foundation/src/styles/contextual-variables/z-index' as *;
8
8
  @use '~@muraldevkit/ds-foundation/src/styles/skeletons/button' as *;
9
- @use './styles.variables.scss';
10
- @use './styles.mixins.scss' as *;
9
+
10
+ @use './MrlBlockNotification.variables.scss';
11
+ @use './MrlBlockNotification.mixins.scss' as *;
11
12
 
12
13
  $mrl-notification-close-inset: var(--mrl-spacing-02);
13
14
 
@@ -1,7 +1,7 @@
1
1
  @use '~@muraldevkit/ds-foundation/src/styles/global-variables/breakpoints' as *;
2
2
 
3
- @use './styles.variables.scss';
4
- @use './styles.mixins.scss' as *;
3
+ @use './MrlModal.variables.scss';
4
+ @use './MrlModal.mixins.scss' as *;
5
5
 
6
6
  // Modifiers: Sizes
7
7
  @media screen and (min-width: $mrl-breakpoint-01) {
@@ -7,8 +7,8 @@
7
7
  @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
8
8
  @use '~@muraldevkit/ds-foundation/src/styles/contextual-variables/z-index' as *;
9
9
 
10
- @use './styles.variables.scss';
11
- @use './styles.mixins.scss' as *;
10
+ @use './MrlModal.variables.scss';
11
+ @use './MrlModal.mixins.scss' as *;
12
12
 
13
13
  .mrl-modal-backdrop {
14
14
  align-items: center;
@@ -4,7 +4,7 @@
4
4
  ////
5
5
 
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/global-variables/breakpoints' as *;
7
- @use '../styles.variables.scss';
7
+ @use '../modal.variables.scss';
8
8
 
9
9
  .mrl-modal-backdrop {
10
10
  --mrl-modal-backdrop-background: var(--mrl-black-opacity-06);
@@ -9,5 +9,5 @@
9
9
  flex-direction: column;
10
10
  flex-grow: 1;
11
11
  overflow: auto;
12
- padding: 0 var(--mrl-modal-padding-horizontal);
12
+ padding: 0 var(--mrl-modal-padding-horizontal) 4px;
13
13
  }
@@ -5,7 +5,7 @@
5
5
 
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/global-variables/breakpoints' as *;
7
7
  @use '~@muraldevkit/ds-foundation/src/styles/skeletons/button' as *;
8
- @use './styles.variables.scss';
8
+ @use './MrlModalFooter.variables.scss';
9
9
 
10
10
  .mrl-modal-footer {
11
11
  display: flex;
@@ -3,7 +3,7 @@
3
3
  /// @group modal
4
4
  ////
5
5
 
6
- @use '../styles.variables.scss';
6
+ @use '../modal.variables.scss';
7
7
 
8
8
  .mrl-modal-footer {
9
9
  --mrl-modal-footer-inline-margin: var(--mrl-spacing-03);
@@ -3,7 +3,7 @@
3
3
  /// @group modal
4
4
  ////
5
5
 
6
- @use '../styles.variables.scss' as *;
6
+ @use '../modal.variables.scss' as *;
7
7
 
8
8
  .mrl-modal-header {
9
9
  color: var(--mrl-modal-header-text-color);
@@ -4,9 +4,10 @@
4
4
  ////
5
5
 
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
7
- @use '../MrlSelect/variables.scss' as selectItem;
8
- @use '../styles.scss' as *;
9
- @use './variables.scss';
7
+ @use '../../forms.variables.scss' as selectItem;
8
+ @use '../../forms.global.scss' as *;
9
+
10
+ @use './MrlSelect.variables.scss';
10
11
 
11
12
  .mrl-select {
12
13
  display: block;
@@ -0,0 +1,15 @@
1
+ ////
2
+ /// Select component styles
3
+ /// @group select
4
+ ////
5
+ @use '../../forms.variables.scss';
6
+
7
+ .mrl-select {
8
+ --mrl-select-trigger-indicator-color: var(--mrl-text-input-border-color);
9
+ --mrl-select-trigger-indicator-color-hover: var(--mrl-text-input-border-color-hover);
10
+ --mrl-select-trigger-indicator-color-focus: var(--mrl-text-input-border-color-focus);
11
+ }
12
+
13
+ .mrl-select:focus-within > .mrl-select-trigger--inline {
14
+ --mrl-text-input-border-color-focus: transparent;
15
+ }
@@ -4,8 +4,9 @@
4
4
  ////
5
5
 
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
7
- @use '../styles.scss' as *;
8
- @use './variables.scss';
7
+ @use '../../forms.global.scss' as *;
8
+
9
+ @use './MrlSelectItem.variables.scss';
9
10
 
10
11
  .mrl-select-item {
11
12
  display: block;
@@ -0,0 +1,36 @@
1
+ ////
2
+ /// Select component styles
3
+ /// @group select
4
+ ////
5
+
6
+ @use '../../forms.variables.scss';
7
+
8
+ .mrl-selectItem {
9
+ --mrl-select-item-background: var(--mrl-color-background);
10
+ --mrl-select-item-color: var(--mrl-color-text-highlight);
11
+
12
+ // @todo - v2 - remove --mrl-select-item-padding since it's a duplicate
13
+ --mrl-select-item-padding: var(--mrl-select-item-padding-vertical)
14
+ var(--mrl-select-item-padding-horizontal);
15
+ --mrl-select-item-padding-horizontal: var(--mrl-spacing-04);
16
+ --mrl-select-item-padding-vertical: calc(var(--mrl-spacing-01) + var(--mrl-spacing-02));
17
+ --mrl-select-item-border-radius: var(--mrl-border-radius-functional);
18
+ --mrl-select-item-icon-size: var(--mrl-spacing-06);
19
+ --mrl-select-item-icon-spacing: var(--mrl-spacing-03);
20
+ }
21
+
22
+ .mrl-selectItem:hover {
23
+ --mrl-select-item-background: var(--mrl-color-background-highlight-hover);
24
+ --mrl-select-item-color: var(--mrl-color-text-highlight-hover);
25
+ }
26
+
27
+ .mrl-is--selected {
28
+ --mrl-select-item-background: var(--mrl-color-background-highlight-selected);
29
+ --mrl-select-item-color: var(--mrl-color-text-highlight-selected);
30
+ }
31
+
32
+ .mrl-selectItem[aria-disabled='true'],
33
+ .mrl-selectItem[aria-disabled='true']:hover {
34
+ --mrl-select-item-background: transparent;
35
+ --mrl-select-item-color: var(--mrl-color-text-disabled);
36
+ }
@@ -2,9 +2,10 @@
2
2
  /// Select Menu component styles
3
3
  /// @group select-menu
4
4
  ////
5
-
5
+ ///
6
6
  @use '~@muraldevkit/ds-foundation/src/styles/contextual-variables/z-index' as *;
7
- @use '../variables.scss';
7
+
8
+ @use './MrlSelectMenu.variables.scss';
8
9
 
9
10
  $affordance: var(--mrl-select-item-text-affordance);
10
11
  $item-padding: var(--mrl-select-item-padding-vertical);
@@ -0,0 +1,8 @@
1
+ ////
2
+ /// Select Menu component styles
3
+ /// @group select-menu
4
+ ////
5
+
6
+ .mrl-selectMenu {
7
+ // Add the component CSS variables to this file
8
+ }
@@ -1,4 +1,4 @@
1
- @use './styles.variables.scss';
1
+ @use './MrlText.variables.scss';
2
2
 
3
3
  ////
4
4
  /// Text component styles
@@ -1,4 +1,4 @@
1
- @use './styles.variables.scss';
1
+ @use './MrlTextHeading.variables.scss';
2
2
 
3
3
  ////
4
4
  /// Text/Heading component styles
@@ -13,8 +13,8 @@ $mrl-tooltip-arrow-vertical-center: calc(var(--mrl-tooltip-arrow-size) * -1 / 2
13
13
  // The first number of this calculation needs to match the value of var(--mrl-tooltip-arrow-size)
14
14
  $mrl-tooltip-arrow-size: math.hypot(8px, 5px);
15
15
 
16
- @use '../styles.mixins.scss' as *;
17
- @use './styles.variables.scss';
16
+ @use '../modal.mixins.scss' as *;
17
+ @use './MrlTooltipContent.variables.scss';
18
18
 
19
19
  .mrl-tooltip-content {
20
20
  background: var(--mrl-tooltip-background-color);
@@ -0,0 +1,160 @@
1
+ ////
2
+ /// Mural's form elements shared styles
3
+ /// @group form-elements
4
+ ////
5
+
6
+ @use '~@muraldevkit/ds-foundation/src/styles/_mixins' as *;
7
+ @use '~@muraldevkit/ds-foundation/src/styles/contextual-variables/z-index' as *;
8
+
9
+ /// Shared styles for text-related inputs such as text-input and textarea
10
+ /// There are no configurations for this mixin
11
+ ///
12
+ /// @example @include mrl-text-inputs;
13
+ /// @todo - v2 - this is actually used for non-text inputs too. We should rename
14
+ /// it and it corresponding tokens to just `mrl-inputs`
15
+ @mixin mrl-text-inputs {
16
+ @include mrl-text-static('small');
17
+
18
+ background: var(--mrl-text-input-background);
19
+ border-color: var(--mrl-text-input-border-color);
20
+ border-radius: var(--mrl-text-input-border-radius);
21
+ border-style: solid;
22
+ border-width: var(--mrl-text-input-border-width);
23
+ color: var(--mrl-text-input-color);
24
+
25
+ // We have to reset the margin on this component since
26
+ // Safari automatically applies 2 px
27
+ margin: 0;
28
+ min-height: var(--mrl-text-input-height);
29
+ padding: var(--mrl-text-input-inset-vertical) var(--mrl-text-input-inset-horizontal);
30
+ width: 100%;
31
+
32
+ // Need a z-index above 1 which is the focus indicator's z-index to ensure
33
+ // the user can interact with the input as expected
34
+ z-index: $mrl-zIndex-focus + 1;
35
+
36
+ &::placeholder {
37
+ color: var(--mrl-text-input-placeholder-color);
38
+ }
39
+
40
+ &:hover {
41
+ --mrl-text-input-border-color: var(--mrl-text-input-border-color-hover);
42
+ --mrl-text-input-background: var(--mrl-text-input-background-color-hover);
43
+ }
44
+
45
+ // For text inputs, active and focus are the same state
46
+ &:focus {
47
+ --mrl-text-input-border-color: var(--mrl-text-input-border-color-focus);
48
+
49
+ color: var(--mrl-text-input-color-focus);
50
+ }
51
+
52
+ // Specifically turning off the outline here as we have a custom
53
+ // focus indicator
54
+ &:focus-visible {
55
+ outline: none;
56
+ }
57
+
58
+ &:disabled {
59
+ --mrl-text-input-border-color: var(--mrl-text-input-border-color-disabled);
60
+
61
+ color: var(--mrl-text-input-color-disabled);
62
+ pointer-events: none;
63
+ }
64
+
65
+ &:disabled::placeholder {
66
+ color: var(--mrl-text-input-color-disabled);
67
+ }
68
+
69
+ &[aria-invalid='true'] {
70
+ border-color: var(--mrl-color-background-error);
71
+ }
72
+ }
73
+
74
+ /// Shared styles select item icon when it's displayed in the select trigger
75
+ /// There are no configurations for this mixin
76
+ ///
77
+ /// @example @include mrl-selectItem-icon;
78
+ @mixin mrl-selectItem-icon {
79
+ flex-basis: fit-content;
80
+ margin-right: var(--mrl-select-item-icon-spacing);
81
+ max-width: var(--mrl-select-item-icon-size);
82
+ }
83
+
84
+ /// @access private
85
+ /// @todo this needs applied to text inputs and textareas once ready from Design
86
+ ///
87
+ /// Shared variables for inline kind inputs (select, text input, textarea)
88
+ /// This needs to be in a mixin so we can control where it's rendered in
89
+ /// the CSS ordering
90
+ ///
91
+ /// @example @include mrl-inline-input-vars
92
+ @mixin mrl-inline-input-vars {
93
+ --mrl-text-input-border-color: transparent;
94
+ --mrl-text-input-inset-vertical: var(--mrl-spacing-02);
95
+ --mrl-text-input-inset-horizontal: var(--mrl-spacing-03);
96
+ --mrl-text-input-height: var(--mrl-spacing-08);
97
+
98
+ &:hover {
99
+ --mrl-text-input-background-color-hover: var(--mrl-black-opacity-00);
100
+ --mrl-text-input-border-color: transparent;
101
+ }
102
+
103
+ &:focus-visible {
104
+ --mrl-text-input-border-color: transparent;
105
+ }
106
+ }
107
+
108
+ /// Shared styles for standalone checkbox host and checkbox + label wrapper
109
+ /// There are no configurations for this mixin
110
+ ///
111
+ /// @example @include mrl-checkbox-wrapper;
112
+ @mixin mrl-checkbox-wrapper {
113
+ height: var(--mrl-checkbox-input-affordance);
114
+ padding: var(--mrl-checkbox-input-inset);
115
+ width: var(--mrl-checkbox-input-affordance);
116
+ }
117
+
118
+ /// Shared styles for checkbox input element
119
+ /// There are no configurations for this mixin
120
+ ///
121
+ /// @example @include mrl-checkbox-input;
122
+ @mixin mrl-checkbox-input {
123
+ cursor: pointer;
124
+ height: var(--mrl-checkbox-input-size);
125
+ margin: 0;
126
+ opacity: 0;
127
+ width: var(--mrl-checkbox-input-size);
128
+ z-index: $mrl-zIndex-focus + 1;
129
+ }
130
+
131
+ /// Shared styles for checkbox and checkbox-standalone
132
+ /// @todo - v2 - These should ultimately live in the checkbox-standalone component and the mrl-checkbox
133
+ /// class names should be removed. This will need to be communicated as a breaking change
134
+ /// to take into account anyone referencing these styles outside of component usage.
135
+ .mrl-checkbox,
136
+ .mrl-checkboxStandalone {
137
+ align-items: center;
138
+ display: flex;
139
+ min-height: var(--mrl-checkbox-height);
140
+ position: relative;
141
+ }
142
+
143
+ .mrl-checkbox-inputDisplay,
144
+ .mrl-checkboxStandalone-inputDisplay {
145
+ background: var(--mrl-checkbox-input-background);
146
+ border-color: var(--mrl-checkbox-input-border-color);
147
+ border-radius: var(--mrl-checkbox-input-border-radius);
148
+ border-style: solid;
149
+ border-width: var(--mrl-checkbox-input-border-width);
150
+ color: var(--mrl-checkbox-input-color);
151
+ display: flex;
152
+ height: var(--mrl-checkbox-input-size);
153
+ width: var(--mrl-checkbox-input-size);
154
+ z-index: $mrl-zIndex-base - 1;
155
+ }
156
+
157
+ .mrl-checkbox-inputDisplay-icon,
158
+ .mrl-checkboxStandalone-inputDisplay-icon {
159
+ display: none;
160
+ }
@@ -0,0 +1,63 @@
1
+ ////
2
+ /// Shared variables for form inputs
3
+ /// @group form-elements
4
+ ////
5
+
6
+ :root,
7
+ :host {
8
+ --mrl-text-input-background: var(--mrl-color-background);
9
+
10
+ // The default variant of inputs keep consistent background colors
11
+ // but the inline kind requires us to separate these variables
12
+ --mrl-text-input-background-color-hover: var(--mrl-color-background);
13
+ --mrl-text-input-border-color: var(--mrl-color-line);
14
+ --mrl-text-input-border-width: var(--mrl-line-width-border);
15
+ --mrl-text-input-border-color-hover: var(--mrl-color-line-hover);
16
+ --mrl-text-input-border-color-disabled: var(--mrl-color-line-disabled);
17
+ --mrl-text-input-border-color-focus: var(--mrl-color-line-active);
18
+ --mrl-text-input-border-radius: var(--mrl-border-radius-functional);
19
+
20
+ // Default theme text inputs don't seem to follow the same logic as other interactive elements?
21
+ --mrl-text-input-color: rgba(var(--mrl-gray-90), 1);
22
+ --mrl-text-input-color-focus: rgba(var(--mrl-gray-100), 1);
23
+ --mrl-text-input-color-disabled: var(--mrl-color-text-disabled);
24
+ --mrl-text-input-height: var(--mrl-spacing-09);
25
+ --mrl-text-input-placeholder-color: var(--mrl-color-text-secondary);
26
+ --mrl-text-input-inset-vertical: var(--mrl-space-inset);
27
+ --mrl-text-input-inset-horizontal: var(--mrl-space-inset-control-small);
28
+ --mrl-text-input-padding: var(--mrl-text-input-inset-vertical)
29
+ var(--mrl-text-input-inset-horizontal);
30
+ --mrl-input-icon-offset: var(--mrl-spacing-03);
31
+
32
+ // Checkbox properties
33
+ --mrl-checkbox-height: var(--mrl-spacing-09);
34
+ --mrl-checkbox-input-affordance: var(--mrl-spacing-08);
35
+ --mrl-checkbox-input-inset: calc(var(--mrl-spacing-01) + var(--mrl-spacing-02));
36
+ --mrl-checkbox-input-size: var(--mrl-spacing-06);
37
+ --mrl-checkbox-input-background: var(--mrl-color-background);
38
+ --mrl-checkbox-input-border-color: var(--mrl-color-line);
39
+ --mrl-checkbox-input-color: var(--mrl-color-text-inverse);
40
+ --mrl-checkbox-input-border-width: var(--mrl-line-width-control);
41
+ --mrl-checkbox-input-border-radius: var(--mrl-border-radius-content);
42
+ }
43
+
44
+ // State: selected (checked or indeterminate)
45
+ .mrl-checkbox-input:checked ~ .mrl-checkbox-inputDisplay,
46
+ .mrl-checkboxStandalone-input:checked ~ .mrl-checkboxStandalone-inputDisplay {
47
+ // This doesn't align to any of our contextual color tokens
48
+ --mrl-checkbox-input-background: rgba(var(--mrl-gray-100), 1);
49
+ --mrl-checkbox-input-border-color: rgba(var(--mrl-gray-100), 1);
50
+ }
51
+
52
+ // Select shared variables
53
+ :host {
54
+ --mrl-select-item-padding-vertical: calc(var(--mrl-spacing-01) + var(--mrl-spacing-02));
55
+ --mrl-select-item-spacing-stack: var(--mrl-spacing-02);
56
+
57
+ // The text actually uses a mixin but we need this variable to calculate the
58
+ // max height of the menu. If you change this value, you must also change
59
+ // the mixin within the `select-item.scss` file.
60
+ --mrl-select-item-text-affordance: calc(
61
+ var(--mrl-type-line-height-text-small) * var(--mrl-type-size-text-small)
62
+ );
63
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@muraldevkit/ui-toolkit",
3
- "version": "1.15.6",
3
+ "version": "1.15.8",
4
4
  "description": "Mural's UI Toolkit",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",