@kaizen/components 1.47.5 → 1.47.6

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 (40) hide show
  1. package/dist/cjs/AvatarGroup/AvatarGroup.module.scss.cjs +3 -3
  2. package/dist/cjs/ButtonGroup/ButtonGroup.module.scss.cjs +1 -1
  3. package/dist/cjs/Checkbox/Checkbox/Checkbox.module.scss.cjs +1 -1
  4. package/dist/cjs/Checkbox/CheckboxField/CheckboxField.cjs +2 -1
  5. package/dist/cjs/Checkbox/CheckboxField/CheckboxField.module.scss.cjs +3 -2
  6. package/dist/cjs/Collapsible/ExpertAdviceCollapsible/ExpertAdviceCollapsible.module.scss.cjs +1 -1
  7. package/dist/cjs/Label/Label.module.scss.cjs +1 -1
  8. package/dist/cjs/Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.module.scss.cjs +1 -1
  9. package/dist/cjs/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.cjs +3 -3
  10. package/dist/cjs/TimeField/subcomponents/TimeSegment/TimeSegment.module.scss.cjs +1 -1
  11. package/dist/cjs/TitleBlockZen/subcomponents/NavigationTabs.module.scss.cjs +1 -1
  12. package/dist/esm/AvatarGroup/AvatarGroup.module.scss.mjs +3 -3
  13. package/dist/esm/ButtonGroup/ButtonGroup.module.scss.mjs +1 -1
  14. package/dist/esm/Checkbox/Checkbox/Checkbox.module.scss.mjs +1 -1
  15. package/dist/esm/Checkbox/CheckboxField/CheckboxField.mjs +2 -1
  16. package/dist/esm/Checkbox/CheckboxField/CheckboxField.module.scss.mjs +3 -2
  17. package/dist/esm/Collapsible/ExpertAdviceCollapsible/ExpertAdviceCollapsible.module.scss.mjs +1 -1
  18. package/dist/esm/Label/Label.module.scss.mjs +1 -1
  19. package/dist/esm/Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.module.scss.mjs +1 -1
  20. package/dist/esm/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss.mjs +3 -3
  21. package/dist/esm/TimeField/subcomponents/TimeSegment/TimeSegment.module.scss.mjs +1 -1
  22. package/dist/esm/TitleBlockZen/subcomponents/NavigationTabs.module.scss.mjs +1 -1
  23. package/package.json +1 -1
  24. package/src/AvatarGroup/AvatarGroup.module.scss +25 -28
  25. package/src/ButtonGroup/ButtonGroup.module.scss +10 -10
  26. package/src/Checkbox/Checkbox/Checkbox.module.scss +13 -13
  27. package/src/Checkbox/Checkbox/_docs/Checkbox.stickersheet.stories.tsx +47 -72
  28. package/src/Checkbox/CheckboxField/CheckboxField.module.scss +6 -6
  29. package/src/Checkbox/CheckboxField/CheckboxField.tsx +1 -0
  30. package/src/Checkbox/CheckboxField/_docs/CheckboxField.stickersheet.stories.tsx +53 -70
  31. package/src/Collapsible/ExpertAdviceCollapsible/ExpertAdviceCollapsible.module.scss +8 -11
  32. package/src/Illustration/subcomponents/Base/Base.module.scss +29 -29
  33. package/src/Input/Input/Input.module.scss +1 -1
  34. package/src/Label/Label.module.scss +2 -23
  35. package/src/Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.module.scss +1 -1
  36. package/src/RichTextEditor/RichTextEditor/RichTextEditor.module.scss +1 -1
  37. package/src/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss +46 -55
  38. package/src/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/_docs/ToggleIconButton.stickersheet.stories.tsx +15 -1
  39. package/src/TimeField/subcomponents/TimeSegment/TimeSegment.module.scss +2 -1
  40. package/src/TitleBlockZen/subcomponents/NavigationTabs.module.scss +1 -1
@@ -18,6 +18,10 @@ $dt-color-checkbox-background-color-checked: $color-gray-500;
18
18
  margin: 0;
19
19
  }
20
20
 
21
+ .checkbox:disabled {
22
+ pointer-events: none;
23
+ }
24
+
21
25
  .icon {
22
26
  height: $checkbox-size;
23
27
  width: $checkbox-size;
@@ -49,6 +53,10 @@ $dt-color-checkbox-background-color-checked: $color-gray-500;
49
53
  background-color: white;
50
54
  border-color: $dt-color-form-border-color;
51
55
 
56
+ .checkbox:hover + & {
57
+ border-color: $dt-color-form-border-color-hover;
58
+ }
59
+
52
60
  .checkbox:checked + &,
53
61
  .checkbox:indeterminate + & {
54
62
  background: $dt-color-checkbox-background-color-checked;
@@ -66,12 +74,8 @@ $dt-color-checkbox-background-color-checked: $color-gray-500;
66
74
  border-color: $dt-color-form-border-color-hover;
67
75
  }
68
76
 
69
- .checkbox:not([disabled]):hover + & {
70
- border-color: $dt-color-form-border-color-hover;
71
- }
72
-
73
- .checkbox:checked:not([disabled]):hover + &,
74
- .checkbox:indeterminate:not([disabled]):hover + & {
77
+ .checkbox:checked:hover + &,
78
+ .checkbox:indeterminate:hover + & {
75
79
  background: $dt-color-form-border-color-hover;
76
80
  border-color: $dt-color-form-border-color-hover;
77
81
  }
@@ -108,24 +112,20 @@ $dt-color-checkbox-background-color-checked: $color-gray-500;
108
112
  background: rgba($color-white-rgb, 0.65);
109
113
  }
110
114
 
115
+ .checkbox:not([checked]):hover + &,
111
116
  .checkbox:not([checked]):focus + & {
112
117
  border-color: $color-white;
113
118
  background: rgba($color-white-rgb, 0.1);
114
119
  }
115
120
 
116
- .checkbox:not([checked], [disabled]):hover + & {
117
- border-color: $color-white;
118
- background: rgba($color-white-rgb, 0.1);
119
- }
120
-
121
121
  .checkbox:checked:focus + &,
122
122
  .checkbox:indeterminate:focus + & {
123
123
  background: $color-white;
124
124
  border-color: $color-white;
125
125
  }
126
126
 
127
- .checkbox:indeterminate:not([disabled]):hover + &,
128
- .checkbox:checked:not([disabled]):hover + & {
127
+ .checkbox:indeterminate:hover + &,
128
+ .checkbox:checked:hover + & {
129
129
  background: $color-white;
130
130
  border-color: $color-white;
131
131
  }
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/no-empty-function */
2
1
  import React from "react"
3
2
  import { Meta } from "@storybook/react"
4
3
  import {
@@ -16,7 +15,7 @@ export default {
16
15
  config: {
17
16
  rules: [
18
17
  {
19
- // Built with no label on purpose, to be used within `RadioField` where label is present
18
+ // Built with no label on purpose, to be used within `CheckboxField` where label is present
20
19
  id: "label",
21
20
  enabled: false,
22
21
  },
@@ -26,69 +25,56 @@ export default {
26
25
  },
27
26
  } satisfies Meta
28
27
 
29
- const CheckboxExampleGroup = (props: CheckboxProps): JSX.Element => (
30
- <div className="grid gap-8">
31
- <Checkbox {...props} />
32
- <Checkbox {...props} checkedStatus="on" />
33
- <Checkbox {...props} checkedStatus="mixed" />
34
- </div>
35
- )
36
-
37
28
  const StickerSheetTemplate: StickerSheetStory = {
38
- render: ({ isReversed }) => (
39
- /** @note: If you have multiple StickerSheets to display, you can add a `heading` */
40
- <StickerSheet isReversed={isReversed}>
41
- <StickerSheet.Header
42
- headings={["Default", "Hover", "Active", "Focus"]}
43
- hasVerticalHeadings
44
- />
45
- <StickerSheet.Body>
46
- <StickerSheet.Row rowTitle="Enabled">
47
- <CheckboxExampleGroup onCheck={() => {}} />
48
- <CheckboxExampleGroup
49
- onCheck={() => {}}
50
- data-sb-pseudo-styles="hover"
51
- />
52
- <CheckboxExampleGroup
53
- onCheck={() => {}}
54
- data-sb-pseudo-styles="active"
55
- />
56
- <CheckboxExampleGroup
57
- onCheck={() => {}}
58
- data-sb-pseudo-styles="focus"
59
- />
60
- </StickerSheet.Row>
61
- <StickerSheet.Row rowTitle="Disabled">
62
- <CheckboxExampleGroup onCheck={() => {}} disabled />
63
- <CheckboxExampleGroup
64
- onCheck={() => {}}
65
- disabled
66
- data-sb-pseudo-styles="hover"
67
- />
68
- <CheckboxExampleGroup
69
- onCheck={() => {}}
70
- disabled
71
- data-sb-pseudo-styles="active"
72
- />
73
- <CheckboxExampleGroup
74
- onCheck={() => {}}
75
- disabled
76
- data-sb-pseudo-styles="focus"
77
- />
78
- </StickerSheet.Row>
79
- <StickerSheet.Row rowTitle="Read Only">
80
- <CheckboxExampleGroup />
81
- <CheckboxExampleGroup data-sb-pseudo-styles="hover" />
82
- <CheckboxExampleGroup data-sb-pseudo-styles="active" />
83
- <CheckboxExampleGroup data-sb-pseudo-styles="focus" />
84
- </StickerSheet.Row>
85
- </StickerSheet.Body>
86
- </StickerSheet>
87
- ),
29
+ render: ({ isReversed }) => {
30
+ const defaultProps = {
31
+ onCheck: () => undefined,
32
+ reversed: isReversed,
33
+ } satisfies Partial<CheckboxProps>
34
+
35
+ const rows = [
36
+ { title: "Off", checkedStatus: "off" },
37
+ { title: "On", checkedStatus: "on" },
38
+ { title: "Mixed", checkedStatus: "mixed" },
39
+ ] satisfies Array<{
40
+ title: string
41
+ checkedStatus: CheckboxProps["checkedStatus"]
42
+ }>
43
+
44
+ return (
45
+ <StickerSheet isReversed={isReversed}>
46
+ <StickerSheet.Header
47
+ headings={["Default", "Hover", "Focus", "Disabled"]}
48
+ hasVerticalHeadings
49
+ />
50
+ <StickerSheet.Body>
51
+ {rows.map(({ title, checkedStatus }) => (
52
+ <StickerSheet.Row key={title} rowTitle={title}>
53
+ <Checkbox {...defaultProps} checkedStatus={checkedStatus} />
54
+ <Checkbox
55
+ {...defaultProps}
56
+ checkedStatus={checkedStatus}
57
+ data-sb-pseudo-styles="hover"
58
+ />
59
+ <Checkbox
60
+ {...defaultProps}
61
+ checkedStatus={checkedStatus}
62
+ data-sb-pseudo-styles="focus"
63
+ />
64
+ <Checkbox
65
+ {...defaultProps}
66
+ checkedStatus={checkedStatus}
67
+ disabled
68
+ />
69
+ </StickerSheet.Row>
70
+ ))}
71
+ </StickerSheet.Body>
72
+ </StickerSheet>
73
+ )
74
+ },
88
75
  parameters: {
89
76
  pseudo: {
90
77
  hover: '[data-sb-pseudo-styles="hover"]',
91
- active: '[data-sb-pseudo-styles="active"]',
92
78
  focus: '[data-sb-pseudo-styles="focus"]',
93
79
  focusVisible: '[data-sb-pseudo-styles="focus"]',
94
80
  },
@@ -104,19 +90,8 @@ export const StickerSheetReversed: StickerSheetStory = {
104
90
  ...StickerSheetTemplate,
105
91
  name: "Sticker Sheet (Reversed)",
106
92
  parameters: {
107
- /** @note: Only required if template has parameters, otherwise this spread can be removed */
108
93
  ...StickerSheetTemplate.parameters,
109
94
  backgrounds: { default: "Purple 700" },
110
95
  },
111
96
  args: { isReversed: true },
112
97
  }
113
-
114
- export const StickerSheetRTL: StickerSheetStory = {
115
- ...StickerSheetTemplate,
116
- name: "Sticker Sheet (RTL)",
117
- parameters: {
118
- /** @note: Only required if template has parameters, otherwise this spread can be removed */
119
- ...StickerSheetTemplate.parameters,
120
- textDirection: "rtl",
121
- },
122
- }
@@ -3,12 +3,6 @@
3
3
  @import "~@kaizen/design-tokens/sass/typography";
4
4
  @import "../../../styles/utils/form-variables";
5
5
 
6
- // -----------------------------------------------
7
- // Checkbox Field
8
- // -----------------------------------------------
9
- ///////////////////////////////////////////////////
10
- // LAYOUT
11
- ///////////////////////////////////////////////////
12
6
  .container {
13
7
  position: relative;
14
8
  margin-bottom: $spacing-xs;
@@ -44,3 +38,9 @@
44
38
  }
45
39
  }
46
40
  }
41
+
42
+ .label {
43
+ &:disabled {
44
+ pointer-events: none;
45
+ }
46
+ }
@@ -51,6 +51,7 @@ export const CheckboxField = ({
51
51
  reversed={reversed}
52
52
  labelType="checkbox"
53
53
  disabled={disabled}
54
+ classNameOverride={styles.label}
54
55
  >
55
56
  <Checkbox
56
57
  id={`${id}-field-checkbox`}
@@ -14,78 +14,63 @@ export default {
14
14
  },
15
15
  } satisfies Meta
16
16
 
17
- const CheckboxFieldGroupWrapper = (props: CheckboxFieldProps): JSX.Element => (
18
- <div className="grid gap-8">
19
- <CheckboxField {...props} />
20
- <CheckboxField {...props} checkedStatus="on" />
21
- <CheckboxField {...props} checkedStatus="mixed" />
22
- </div>
23
- )
24
-
25
17
  const StickerSheetTemplate: StickerSheetStory = {
26
- render: ({ isReversed }) => (
27
- /** @note: If you have multiple StickerSheets to display, you can add a `heading` */
28
- <StickerSheet isReversed={isReversed}>
29
- <StickerSheet.Header
30
- headings={["Default", "Hover", "Active", "Focus"]}
31
- hasVerticalHeadings
32
- />
33
- <StickerSheet.Body>
34
- <StickerSheet.Row rowTitle="Enabled">
35
- <CheckboxFieldGroupWrapper
36
- labelText="Checkbox"
37
- reversed={isReversed}
38
- />
39
- <CheckboxFieldGroupWrapper
40
- labelText="Hover"
41
- reversed={isReversed}
42
- data-sb-pseudo-styles="hover"
43
- />
44
- <CheckboxFieldGroupWrapper
45
- labelText="Active"
46
- reversed={isReversed}
47
- data-sb-pseudo-styles="active"
48
- />
49
- <CheckboxFieldGroupWrapper
50
- labelText="Focus"
51
- reversed={isReversed}
52
- data-sb-pseudo-styles="focus"
53
- />
54
- </StickerSheet.Row>
55
- <StickerSheet.Row rowTitle="Disabled">
56
- <CheckboxFieldGroupWrapper
57
- labelText="Checkbox"
58
- disabled
59
- reversed={isReversed}
60
- />
61
- <CheckboxFieldGroupWrapper
62
- labelText="Hover"
63
- reversed={isReversed}
64
- disabled
65
- data-sb-pseudo-styles="hover"
66
- />
67
- <CheckboxFieldGroupWrapper
68
- labelText="Active"
69
- reversed={isReversed}
70
- disabled
71
- data-sb-pseudo-styles="active"
72
- />
73
- <CheckboxFieldGroupWrapper
74
- labelText="Focus"
75
- reversed={isReversed}
76
- disabled
77
- data-sb-pseudo-styles="focus"
78
- />
79
- </StickerSheet.Row>
80
- </StickerSheet.Body>
81
- </StickerSheet>
82
- ),
83
- /** @note: Only required if you have pseudo states, otherwise this can be removed */
18
+ render: ({ isReversed }) => {
19
+ const defaultProps = {
20
+ onCheck: () => undefined,
21
+ reversed: isReversed,
22
+ } satisfies Partial<CheckboxFieldProps>
23
+
24
+ const rows = [
25
+ { title: "Off", checkedStatus: "off" },
26
+ { title: "On", checkedStatus: "on" },
27
+ { title: "Mixed", checkedStatus: "mixed" },
28
+ ] satisfies Array<{
29
+ title: string
30
+ checkedStatus: CheckboxFieldProps["checkedStatus"]
31
+ }>
32
+
33
+ return (
34
+ <StickerSheet isReversed={isReversed}>
35
+ <StickerSheet.Header
36
+ headings={["Default", "Hover", "Focus", "Disabled"]}
37
+ hasVerticalHeadings
38
+ />
39
+ <StickerSheet.Body>
40
+ {rows.map(({ title, checkedStatus }) => (
41
+ <StickerSheet.Row key={title} rowTitle={title}>
42
+ <CheckboxField
43
+ {...defaultProps}
44
+ labelText="Checkbox"
45
+ checkedStatus={checkedStatus}
46
+ />
47
+ <CheckboxField
48
+ {...defaultProps}
49
+ labelText="Hover"
50
+ checkedStatus={checkedStatus}
51
+ data-sb-pseudo-styles="hover"
52
+ />
53
+ <CheckboxField
54
+ {...defaultProps}
55
+ labelText="Focus"
56
+ checkedStatus={checkedStatus}
57
+ data-sb-pseudo-styles="focus"
58
+ />
59
+ <CheckboxField
60
+ {...defaultProps}
61
+ labelText="Disabled"
62
+ checkedStatus={checkedStatus}
63
+ disabled
64
+ />
65
+ </StickerSheet.Row>
66
+ ))}
67
+ </StickerSheet.Body>
68
+ </StickerSheet>
69
+ )
70
+ },
84
71
  parameters: {
85
- /** @todo: Remove any inapplicable pseudo states */
86
72
  pseudo: {
87
73
  hover: '[data-sb-pseudo-styles="hover"]',
88
- active: '[data-sb-pseudo-styles="active"]',
89
74
  focus: '[data-sb-pseudo-styles="focus"]',
90
75
  focusVisible: '[data-sb-pseudo-styles="focus"]',
91
76
  },
@@ -101,7 +86,6 @@ export const StickerSheetReversed: StickerSheetStory = {
101
86
  ...StickerSheetTemplate,
102
87
  name: "Sticker Sheet (Reversed)",
103
88
  parameters: {
104
- /** @note: Only required if template has parameters, otherwise this spread can be removed */
105
89
  ...StickerSheetTemplate.parameters,
106
90
  backgrounds: { default: "Purple 700" },
107
91
  },
@@ -112,7 +96,6 @@ export const StickerSheetRTL: StickerSheetStory = {
112
96
  ...StickerSheetTemplate,
113
97
  name: "Sticker Sheet (RTL)",
114
98
  parameters: {
115
- /** @note: Only required if template has parameters, otherwise this spread can be removed */
116
99
  ...StickerSheetTemplate.parameters,
117
100
  textDirection: "rtl",
118
101
  },
@@ -8,20 +8,17 @@
8
8
  box-shadow: none;
9
9
  color: $color-purple-800;
10
10
 
11
- > div {
12
- &:first-of-type {
13
- background-color: $color-purple-100;
14
- border-radius: $border-borderless-border-radius;
15
-
16
- &:hover {
17
- background-color: $color-purple-100;
18
- }
19
- }
11
+ &:hover {
12
+ border-color: $color-purple-500;
20
13
  }
21
14
  }
22
15
 
23
- .expertAdviceContainer:hover {
24
- border-color: $color-purple-500;
16
+ // Override Collapsible header
17
+ .expertAdviceContainer > div {
18
+ &:first-of-type {
19
+ background-color: $color-purple-100;
20
+ border-radius: $border-borderless-border-radius;
21
+ }
25
22
  }
26
23
 
27
24
  .expertAdviceHeader {
@@ -9,42 +9,42 @@
9
9
  .figure {
10
10
  margin: 0;
11
11
  position: relative;
12
+ }
12
13
 
13
- // nested to get more specificity, beat out the generic button styles
14
- .pausePlayButton {
15
- opacity: 0%;
16
- position: absolute;
17
- right: 1rem;
18
- bottom: 1rem;
19
- /* stylelint-disable declaration-no-important */
20
- background-color: $color-white !important;
21
- border: 1px solid $color-gray-400;
22
- transition: all $animation-duration-immediate;
23
-
24
- @media (hover: none) and (pointer: coarse) {
25
- opacity: 100%;
26
- }
14
+ // nested to get more specificity, beat out the generic button styles
15
+ .figure .pausePlayButton {
16
+ opacity: 0%;
17
+ position: absolute;
18
+ right: 1rem;
19
+ bottom: 1rem;
20
+ /* stylelint-disable declaration-no-important */
21
+ background-color: $color-white !important;
22
+ border: 1px solid $color-gray-400;
23
+ transition: all $animation-duration-immediate;
24
+
25
+ @media (hover: none) and (pointer: coarse) {
26
+ opacity: 100%;
27
+ }
27
28
 
28
- svg {
29
- color: $color-purple-800;
30
- opacity: 70%;
31
- }
29
+ svg {
30
+ color: $color-purple-800;
31
+ opacity: 70%;
32
+ }
32
33
 
33
- &:hover,
34
- &:focus {
35
- opacity: 100%;
36
- background-color: $color-gray-200 !important;
34
+ &:hover,
35
+ &:focus {
36
+ opacity: 100%;
37
+ background-color: $color-gray-200 !important;
37
38
 
38
- svg {
39
- opacity: 100%;
40
- }
39
+ svg {
40
+ opacity: 100%;
41
41
  }
42
42
  }
43
+ }
43
44
 
44
- &:hover {
45
- .pausePlayButton {
46
- opacity: 100%;
47
- }
45
+ .figure:hover {
46
+ .pausePlayButton {
47
+ opacity: 100%;
48
48
  }
49
49
  }
50
50
 
@@ -237,7 +237,6 @@ $input-with-icon-padding: calc(
237
237
  }
238
238
  }
239
239
  }
240
- /* stylelint-enable no-descending-specificity */
241
240
 
242
241
  ///////////////////////////////////////////////////
243
242
  // THEMES
@@ -357,3 +356,4 @@ $input-with-icon-padding: calc(
357
356
  }
358
357
  }
359
358
  }
359
+ /* stylelint-enable no-descending-specificity */
@@ -12,14 +12,7 @@ $label-start-margin: $spacing-xs;
12
12
  color: $dt-color-form-text-color;
13
13
  visibility: visible;
14
14
  width: 100%;
15
- text-align: left; // fallback for IE and Edge
16
15
  text-align: start;
17
-
18
- &[dir="rtl"],
19
- [dir="rtl"] & {
20
- text-align: right; // fallback for IE and Edge
21
- text-align: start;
22
- }
23
16
  }
24
17
 
25
18
  .reversed {
@@ -87,25 +80,11 @@ $label-start-margin: $spacing-xs;
87
80
  // apply padding when label is inline with form control
88
81
  .prependedLabel {
89
82
  order: -1; // place label before the control
90
- margin-right: $label-start-margin;
91
- margin-left: 0;
92
-
93
- &[dir="rtl"],
94
- [dir="rtl"] & {
95
- margin-right: 0;
96
- margin-left: $label-start-margin;
97
- }
83
+ margin-inline-end: $label-start-margin;
98
84
  }
99
85
 
100
86
  .appendedLabel {
101
- margin-right: 0;
102
- margin-left: $label-start-margin;
103
-
104
- &[dir="rtl"],
105
- [dir="rtl"] & {
106
- margin-right: $label-start-margin;
107
- margin-left: 0;
108
- }
87
+ margin-inline-start: $label-start-margin;
109
88
  }
110
89
  }
111
90
 
@@ -18,7 +18,7 @@
18
18
  flex-direction: column;
19
19
 
20
20
  @media (min-width: $layout-breakpoints-medium) {
21
- padding: 0 $spacing-lg $spacing-lg $spacing-lg;
21
+ padding: 0 $spacing-lg $spacing-lg;
22
22
  flex-direction: row-reverse;
23
23
  }
24
24
  }
@@ -46,6 +46,7 @@
46
46
  border-top-right-radius: 0;
47
47
  }
48
48
 
49
+ /* stylelint-disable no-descending-specificity */
49
50
  .editorWrapper {
50
51
  position: relative;
51
52
  border: $border-solid-border-width $border-solid-border-style $color-gray-500;
@@ -62,7 +63,6 @@
62
63
  }
63
64
  }
64
65
 
65
- /* stylelint-disable no-descending-specificity */
66
66
  &.error {
67
67
  &,
68
68
  .toolbar {