@kaizen/components 1.78.1 → 1.79.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 (204) hide show
  1. package/dist/styles.css +10589 -10782
  2. package/package.json +1 -1
  3. package/src/Avatar/Avatar.module.css +137 -135
  4. package/src/AvatarGroup/AvatarGroup.module.css +58 -56
  5. package/src/Badge/Badge.module.css +98 -96
  6. package/src/Brand/Brand.module.css +5 -3
  7. package/src/BrandMoment/BrandMoment.module.css +147 -145
  8. package/src/BrandMoment/_docs/ExampleHeaders.module.scss +68 -66
  9. package/src/Button/Button/Button.module.scss +135 -133
  10. package/src/Button/GenericButton/GenericButton.module.scss +81 -79
  11. package/src/Button/IconButton/IconButton.module.scss +20 -18
  12. package/src/ButtonGroup/ButtonGroup.module.css +38 -36
  13. package/src/ButtonGroup/ButtonGroup.module.scss +41 -39
  14. package/src/Calendar/CalendarPopover/CalendarPopover.module.scss +19 -17
  15. package/src/Calendar/CalendarRange/CalendarRange.module.scss +48 -46
  16. package/src/Calendar/CalendarSingle/CalendarSingle.module.scss +12 -10
  17. package/src/Calendar/LegacyCalendarRange/LegacyCalendarRange.module.scss +20 -18
  18. package/src/Calendar/baseCalendarClassNames.module.scss +148 -146
  19. package/src/Card/Card.module.css +91 -89
  20. package/src/Checkbox/Checkbox/Checkbox.module.scss +89 -87
  21. package/src/Checkbox/CheckboxField/CheckboxField.module.scss +32 -30
  22. package/src/Checkbox/CheckboxGroup/CheckboxGroup.module.scss +11 -9
  23. package/src/ClearButton/ClearButton.module.scss +32 -30
  24. package/src/Collapsible/Collapsible/Collapsible.module.scss +87 -85
  25. package/src/Collapsible/CollapsibleGroup/CollapsibleGroup.module.scss +9 -7
  26. package/src/Collapsible/ExpertAdviceCollapsible/ExpertAdviceCollapsible.module.scss +35 -33
  27. package/src/Container/Container.module.scss +11 -9
  28. package/src/Content/Content.module.scss +10 -8
  29. package/src/DateInput/DateInput/DateInput.module.scss +7 -5
  30. package/src/DateInput/DateInputDescription/DateInputDescription.module.scss +15 -13
  31. package/src/DateInput/DateInputWithIconButton/DateInputWithIconButton.module.scss +32 -30
  32. package/src/DatePicker/DatePicker.module.scss +7 -5
  33. package/src/DatePicker/subcomponents/DateInputField/DateInputField.module.scss +5 -3
  34. package/src/DateRangePicker/DateRangePicker.module.scss +75 -73
  35. package/src/Divider/Divider.module.scss +35 -33
  36. package/src/EmptyState/EmptyState.module.css +95 -93
  37. package/src/ErrorPage/ErrorPage.module.scss +4 -2
  38. package/src/FieldGroup/FieldGroup.module.scss +8 -6
  39. package/src/FieldMessage/FieldMessage.module.scss +53 -51
  40. package/src/Filter/Filter/Filter.module.css +5 -3
  41. package/src/Filter/Filter/subcomponents/FilterContents/FilterContents.module.css +4 -2
  42. package/src/Filter/Filter/subcomponents/FilterPopover/FilterPopover.module.css +8 -6
  43. package/src/Filter/FilterBar/FilterBar.module.css +17 -15
  44. package/src/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.module.css +7 -5
  45. package/src/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.module.css +4 -2
  46. package/src/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.module.css +5 -3
  47. package/src/Filter/FilterButton/FilterButton/FilterButton.module.css +19 -17
  48. package/src/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.module.css +4 -2
  49. package/src/Filter/FilterButton/subcomponents/FilterButtonBase/FilterButtonBase.module.scss +42 -40
  50. package/src/Filter/FilterDatePicker/subcomponents/DateInputField/DateInputField.module.scss +4 -2
  51. package/src/Filter/FilterDatePicker/subcomponents/FilterDatePickerField/FilterDatePickerField.module.scss +6 -4
  52. package/src/Filter/FilterDateRangePicker/FilterDateRangePicker.module.css +7 -5
  53. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeDisplayLabel/DateRangeDisplayLabel.module.scss +5 -3
  54. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeInputField/DateRangeInputField.module.scss +36 -34
  55. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeValidationMessage/DateRangeValidationMessage.module.scss +5 -3
  56. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.module.scss +7 -5
  57. package/src/Filter/FilterMultiSelect/subcomponents/ListBox/ListBox.module.scss +19 -17
  58. package/src/Filter/FilterMultiSelect/subcomponents/ListBoxSection/ListBoxSection.module.scss +14 -12
  59. package/src/Filter/FilterMultiSelect/subcomponents/LoadMoreButton/LoadMoreButton.module.scss +4 -2
  60. package/src/Filter/FilterMultiSelect/subcomponents/MenuLayout/MenuFooter/MenuFooter.module.scss +7 -5
  61. package/src/Filter/FilterMultiSelect/subcomponents/MenuLayout/MenuLoadingSkeleton/MenuLoadingSkeleton.module.scss +8 -6
  62. package/src/Filter/FilterMultiSelect/subcomponents/MenuPopup/MenuPopup.module.scss +17 -15
  63. package/src/Filter/FilterMultiSelect/subcomponents/MultiSelectOption/MultiSelectOption.module.scss +90 -88
  64. package/src/Filter/FilterMultiSelect/subcomponents/NoResults/NoResults.module.scss +4 -2
  65. package/src/Filter/FilterMultiSelect/subcomponents/SearchInput/SearchInput.module.scss +5 -3
  66. package/src/Filter/FilterMultiSelect/subcomponents/SectionDivider/SectionDivider.module.scss +4 -2
  67. package/src/Filter/FilterMultiSelect/subcomponents/SelectionControlButton/SelectionControlButton.module.scss +52 -50
  68. package/src/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.module.css +4 -2
  69. package/src/Filter/FilterSelect/FilterSelect.module.css +9 -7
  70. package/src/Focusable/Focusable.module.scss +4 -2
  71. package/src/GuidanceBlock/GuidanceBlock.module.css +212 -210
  72. package/src/Heading/Heading.module.scss +87 -85
  73. package/src/Icon/_docs/icon.module.scss +35 -33
  74. package/src/Icon/subcomponents/SVG/SVG.module.scss +26 -24
  75. package/src/Illustration/subcomponents/Base/Base.module.scss +100 -98
  76. package/src/Input/Input/Input.module.scss +217 -215
  77. package/src/Input/InputRange/InputRange.module.scss +138 -136
  78. package/src/Input/InputSearch/InputSearch.module.scss +155 -152
  79. package/src/Label/Label.module.scss +82 -80
  80. package/src/LabelledMessage/LabelledMessage.module.scss +8 -6
  81. package/src/LikertScaleLegacy/LikertScaleLegacy.module.scss +266 -264
  82. package/src/Link/Link.module.css +115 -113
  83. package/src/LinkButton/LinkButton.module.css +5 -3
  84. package/src/Loading/LoadingGraphic/LoadingGraphic.module.scss +12 -10
  85. package/src/Loading/LoadingHeading/LoadingHeading.module.scss +44 -42
  86. package/src/Loading/LoadingInput/LoadingInput.module.scss +11 -9
  87. package/src/Loading/LoadingParagraph/LoadingParagraph.module.scss +47 -45
  88. package/src/Loading/LoadingSpinner/LoadingSpinner.module.css +22 -20
  89. package/src/Loading/_mixins.scss +11 -9
  90. package/src/Menu/subcomponents/MenuDropdown/MenuDropdown.module.scss +18 -16
  91. package/src/Menu/subcomponents/MenuHeading/MenuHeading.module.scss +8 -6
  92. package/src/Menu/subcomponents/MenuItem/MenuItem.module.scss +74 -72
  93. package/src/Menu/subcomponents/MenuList/MenuList.module.scss +14 -12
  94. package/src/Menu/subcomponents/StatelessMenu/StatelessMenu.module.scss +4 -2
  95. package/src/Modal/ConfirmationModal/ConfirmationModal.module.scss +126 -124
  96. package/src/Modal/ContextModal/ContextModal.module.scss +72 -70
  97. package/src/Modal/GenericModal/GenericModal.module.scss +92 -90
  98. package/src/Modal/GenericModal/subcomponents/ModalAccessibleDescription/ModalAccessibleDescription.module.scss +4 -2
  99. package/src/Modal/GenericModal/subcomponents/ModalAccessibleLabel/ModalAccessibleLabel.module.scss +25 -23
  100. package/src/Modal/GenericModal/subcomponents/ModalBody/ModalBody.module.scss +5 -3
  101. package/src/Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.module.scss +55 -53
  102. package/src/Modal/GenericModal/subcomponents/ModalHeader/ModalHeader.module.scss +17 -15
  103. package/src/Modal/InputEditModal/InputEditModal.module.scss +32 -30
  104. package/src/MultiSelect/MultiSelect.module.scss +7 -5
  105. package/src/MultiSelect/subcomponents/Checkbox/Checkbox.module.scss +59 -57
  106. package/src/MultiSelect/subcomponents/MultiSelectOptionField/MultiSelectOptionField.module.scss +55 -53
  107. package/src/MultiSelect/subcomponents/MultiSelectOptions/MultiSelectOptions.module.scss +8 -6
  108. package/src/MultiSelect/subcomponents/MultiSelectToggle/MultiSelectToggle.module.scss +66 -64
  109. package/src/MultiSelect/subcomponents/Popover/Popover.module.scss +15 -13
  110. package/src/Notification/ToastNotification/ToastNotificationsList/ToastNotificationsList.module.scss +21 -19
  111. package/src/Notification/subcomponents/GenericNotification/GenericNotification.module.scss +112 -110
  112. package/src/Notification/subcomponents/GenericNotification/_mixins.scss +278 -276
  113. package/src/Notification/subcomponents/NotificationIcon/NotificationIcon.module.css +4 -2
  114. package/src/Pagination/Pagination.module.scss +39 -37
  115. package/src/Pagination/subcomponents/DirectionalLink/DirectionalLink.module.scss +11 -9
  116. package/src/Pagination/subcomponents/PaginationLink/PaginationLink.module.scss +53 -51
  117. package/src/Pagination/subcomponents/TruncateIndicator/TruncateIndicator.module.css +10 -8
  118. package/src/Popover/Popover.module.scss +187 -185
  119. package/src/ProgressBar/ProgressBar.module.scss +75 -73
  120. package/src/ProgressBar/subcomponents/Label/Label.module.scss +6 -4
  121. package/src/Radio/Radio/Radio.module.scss +60 -58
  122. package/src/Radio/RadioField/RadioField.module.scss +33 -31
  123. package/src/Radio/RadioGroup/RadioGroup.module.scss +18 -16
  124. package/src/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss +32 -30
  125. package/src/RichTextEditor/RichTextContent/RichTextContent.module.scss +4 -2
  126. package/src/RichTextEditor/RichTextEditor/RichTextEditor.module.scss +76 -74
  127. package/src/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss +92 -90
  128. package/src/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss +5 -3
  129. package/src/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss +12 -10
  130. package/src/RichTextEditor/_mixins.scss +1 -1
  131. package/src/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.module.scss +5 -3
  132. package/src/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss +22 -20
  133. package/src/SearchField/SearchField.module.scss +5 -3
  134. package/src/Select/Select.module.scss +17 -0
  135. package/src/Skirt/Skirt.module.scss +24 -22
  136. package/src/Skirt/subcomponents/SkirtCard/SkirtCard.module.scss +13 -11
  137. package/src/Slider/Slider.module.scss +34 -32
  138. package/src/SplitButton/SplitButton.module.scss +5 -3
  139. package/src/SplitButton/subcomponents/ActionButton/ActionButton.module.scss +7 -5
  140. package/src/SplitButton/subcomponents/BaseButton/BaseButton.module.scss +65 -63
  141. package/src/SplitButton/subcomponents/DropdownButton/DropdownButton.module.scss +19 -17
  142. package/src/Table/Table.module.scss +251 -249
  143. package/src/Tabs/subcomponents/Tab.module.scss +81 -79
  144. package/src/Tabs/subcomponents/TabList.module.scss +8 -6
  145. package/src/Tabs/subcomponents/TabPanel.module.scss +10 -8
  146. package/src/Tag/Tag.module.scss +166 -164
  147. package/src/Tag/subcomponents/LiveIcon/LiveIcon.module.css +42 -40
  148. package/src/Text/Text.module.scss +57 -55
  149. package/src/TextArea/TextArea.module.css +102 -99
  150. package/src/TextAreaField/TextAreaField.module.scss +14 -12
  151. package/src/TextField/TextField.module.scss +16 -14
  152. package/src/Tile/MultiActionTile/MultiActionTile.module.scss +7 -5
  153. package/src/Tile/TileGrid/TileGrid.module.scss +18 -16
  154. package/src/Tile/subcomponents/GenericTile/GenericTile.module.scss +123 -121
  155. package/src/TimeField/TimeField.module.scss +57 -55
  156. package/src/TimeField/subcomponents/TimeSegment/TimeSegment.module.scss +37 -35
  157. package/src/TitleBlockZen/TitleBlockZen.module.scss +507 -505
  158. package/src/TitleBlockZen/subcomponents/MainActions.module.scss +11 -9
  159. package/src/TitleBlockZen/subcomponents/MobileActions.module.scss +146 -144
  160. package/src/TitleBlockZen/subcomponents/NavigationTabs.module.scss +105 -103
  161. package/src/TitleBlockZen/subcomponents/TitleBlockMenuItem.module.scss +74 -72
  162. package/src/TitleBlockZen/subcomponents/Toolbar.module.scss +28 -26
  163. package/src/ToggleSwitch/ToggleSwitch/ToggleSwitch.module.scss +105 -103
  164. package/src/ToggleSwitch/ToggleSwitchField/ToggleSwitchField.module.scss +11 -9
  165. package/src/Tooltip/Tooltip.module.scss +139 -137
  166. package/src/VisuallyHidden/VisuallyHidden.module.scss +10 -8
  167. package/src/Well/Well.module.css +104 -102
  168. package/src/Workflow/subcomponents/Footer/components/FooterActions/FooterActions.module.css +14 -12
  169. package/src/Workflow/subcomponents/Footer/components/ProgressStepper/ProgressStepper.module.css +101 -99
  170. package/src/Workflow/subcomponents/Footer/components/Root/FooterRoot.module.css +19 -17
  171. package/src/Workflow/subcomponents/Header/components/Actions/Actions.module.css +14 -12
  172. package/src/Workflow/subcomponents/Header/components/Branding/Branding.module.css +12 -10
  173. package/src/Workflow/subcomponents/Header/components/Root/Root.module.css +19 -17
  174. package/src/Workflow/subcomponents/Header/components/Titles/Titles.module.css +19 -17
  175. package/src/Workflow/subcomponents/Main/Main.module.css +5 -3
  176. package/src/Workflow/subcomponents/Wrapper/Wrapper.module.css +8 -6
  177. package/src/__next__/Button/Button.module.css +220 -218
  178. package/src/__next__/Button/subcomponents/ButtonContent/ButtonContent.module.css +17 -15
  179. package/src/__next__/Button/subcomponents/PendingContent/PendingContent.module.css +15 -13
  180. package/src/__next__/Icon/Icon.module.css +40 -38
  181. package/src/__next__/Icon/_docs/Icon.docs.module.css +13 -11
  182. package/src/__next__/Menu/Menu.module.css +30 -28
  183. package/src/__next__/Menu/MenuItem.module.css +41 -39
  184. package/src/__next__/Select/Select.module.scss +8 -6
  185. package/src/__next__/Select/subcomponents/ListBox/ListBox.module.scss +12 -10
  186. package/src/__next__/Select/subcomponents/ListBoxSection/ListBoxSection.module.scss +15 -13
  187. package/src/__next__/Select/subcomponents/Option/Option.module.scss +53 -51
  188. package/src/__next__/Select/subcomponents/SectionDivider/SectionDivider.module.scss +8 -6
  189. package/src/__next__/Select/subcomponents/SelectPopoverContents/SelectPopoverContents.module.scss +4 -2
  190. package/src/__next__/Select/subcomponents/SelectToggle/SelectToggle.module.scss +105 -103
  191. package/src/__next__/Tabs/subcomponents/Tab/Tab.module.css +81 -79
  192. package/src/__next__/Tabs/subcomponents/TabList/TabList.module.css +56 -54
  193. package/src/__next__/Tabs/subcomponents/TabPanel/TabPanel.module.css +10 -8
  194. package/src/__next__/Tag/RemovableTag/RemovableTag.module.scss +6 -4
  195. package/src/__next__/Tag/RemovableTag/subcomponents/RemoveButton.module.scss +26 -24
  196. package/src/__next__/Tag/Tag/Tag.module.scss +56 -54
  197. package/src/__next__/Tooltip/OverlayArrow.module.scss +40 -38
  198. package/src/__next__/Tooltip/Tooltip.module.scss +39 -37
  199. package/src/__next__/Tooltip/_docs/ApiSpecification.mdx +2 -2
  200. package/src/__next__/Tooltip/_docs/Tooltip.docs.stories.tsx +15 -30
  201. package/src/__next__/Tooltip/_docs/Tooltip.mdx +1 -1
  202. package/src/__next__/Tooltip/_docs/Tooltip.spec.stories.tsx +21 -58
  203. package/src/__next__/Tooltip/_docs/Tooltip.stories.tsx +2 -2
  204. package/src/utils/AppearanceAnim.module.scss +14 -12
@@ -17,346 +17,348 @@ $notification-collapse-height-delayed:
17
17
  $notification-pop-up: transform 200ms ease-out;
18
18
  $notification-slide-right: transform 300ms ease-out;
19
19
 
20
- %ca-notification {
21
- display: flex;
22
- box-sizing: border-box;
23
- pointer-events: all;
24
-
25
- &:focus {
26
- outline-offset: 1px;
27
- outline: 2px solid var(--color-blue-500);
28
- }
29
-
30
- // Variants
31
- &%ca-notification---inline,
32
- &%ca-notification---toast {
33
- margin-bottom: $spacing-24;
34
- border-width: $border-width;
35
- border-style: solid;
36
- border-radius: $border-solid-border-radius;
37
- }
38
-
39
- &%ca-notification---inline {
40
- width: auto;
41
- min-height: 46px;
42
- padding: $notification-vertical-padding $spacing-12;
43
- transition: $notification-fade-out, $notification-pop-up, $notification-collapse-height;
44
- }
45
-
46
- &%ca-notification---toast {
47
- container-type: inline-size;
48
- width: 25rem;
49
- box-shadow: $shadow-small-box-shadow;
50
- max-width: 100%;
51
- padding: $notification-vertical-padding 10px;
52
- transition:
53
- $notification-fade-out, $notification-slide-right, $notification-collapse-height-delayed;
54
- will-change: transform;
55
- }
56
-
57
- &%ca-notification---global {
58
- width: 100%;
20
+ @layer kz-components {
21
+ %ca-notification {
59
22
  display: flex;
60
- align-items: center;
61
- border-width: 0;
62
- border-radius: 0;
63
- margin-bottom: 0;
64
- padding-top: var(--spacing-16);
65
- padding-bottom: var(--spacing-16);
66
- padding-inline-start: var(--spacing-8);
67
- transition: $notification-collapse-height;
68
- position: relative;
69
- z-index: 1030;
70
- }
23
+ box-sizing: border-box;
24
+ pointer-events: all;
71
25
 
72
- // Types
73
- &%ca-notification---positive {
74
- background: $color-green-100;
75
- border-color: var(--color-green-500);
76
- color: $color-purple-800;
77
- }
78
-
79
- &%ca-notification---informative {
80
- background: $color-blue-100;
81
- border-color: var(--color-blue-400);
82
- color: $color-purple-800;
83
- }
26
+ &:focus {
27
+ outline-offset: 1px;
28
+ outline: 2px solid var(--color-blue-500);
29
+ }
84
30
 
85
- &%ca-notification---cautionary {
86
- background: $color-yellow-100;
87
- border-color: var(--color-yellow-700);
88
- color: $color-purple-800;
89
- }
31
+ // Variants
32
+ &%ca-notification---inline,
33
+ &%ca-notification---toast {
34
+ margin-bottom: $spacing-24;
35
+ border-width: $border-width;
36
+ border-style: solid;
37
+ border-radius: $border-solid-border-radius;
38
+ }
90
39
 
91
- &%ca-notification---negative {
92
- background: $color-red-100;
93
- border-color: var(--color-red-500);
94
- color: $color-purple-800;
95
- }
40
+ &%ca-notification---inline {
41
+ width: auto;
42
+ min-height: 46px;
43
+ padding: $notification-vertical-padding $spacing-12;
44
+ transition: $notification-fade-out, $notification-pop-up, $notification-collapse-height;
45
+ }
96
46
 
97
- // Hidden state
98
- &%ca-notification---hidden {
99
- opacity: 0%;
47
+ &%ca-notification---toast {
48
+ container-type: inline-size;
49
+ width: 25rem;
50
+ box-shadow: $shadow-small-box-shadow;
51
+ max-width: 100%;
52
+ padding: $notification-vertical-padding 10px;
53
+ transition:
54
+ $notification-fade-out, $notification-slide-right, $notification-collapse-height-delayed;
55
+ will-change: transform;
56
+ }
100
57
 
101
- &%ca-notification---inline,
102
58
  &%ca-notification---global {
59
+ width: 100%;
60
+ display: flex;
61
+ align-items: center;
62
+ border-width: 0;
63
+ border-radius: 0;
103
64
  margin-bottom: 0;
65
+ padding-top: var(--spacing-16);
66
+ padding-bottom: var(--spacing-16);
67
+ padding-inline-start: var(--spacing-8);
68
+ transition: $notification-collapse-height;
69
+ position: relative;
70
+ z-index: 1030;
104
71
  }
105
72
 
106
- &%ca-notification---inline {
107
- // When entering we use "ease-out", but when transitioning to hidden we want to use "ease-in".
108
- // We want it moving the fastest when it is the furthest off screen.
109
- transition-timing-function: ease-in;
110
- transform: translateY(-50%);
73
+ // Types
74
+ &%ca-notification---positive {
75
+ background: $color-green-100;
76
+ border-color: var(--color-green-500);
77
+ color: $color-purple-800;
111
78
  }
112
79
 
113
- &%ca-notification---toast {
114
- // When entering we use "ease-out", but when transitioning to hidden we want to use "ease-in".
115
- // We want it moving the fastest when it is the furthest off screen.
116
- transition-timing-function: ease-in;
117
- transform: translateX(50%);
80
+ &%ca-notification---informative {
81
+ background: $color-blue-100;
82
+ border-color: var(--color-blue-400);
83
+ color: $color-purple-800;
118
84
  }
119
85
 
120
- &%ca-notification---global {
121
- z-index: 1029;
122
- opacity: 100%;
86
+ &%ca-notification---cautionary {
87
+ background: $color-yellow-100;
88
+ border-color: var(--color-yellow-700);
89
+ color: $color-purple-800;
123
90
  }
124
- }
125
91
 
126
- // Modifiers
127
- &%ca-notification---noBottomMargin {
128
- margin-bottom: 0;
129
- }
92
+ &%ca-notification---negative {
93
+ background: $color-red-100;
94
+ border-color: var(--color-red-500);
95
+ color: $color-purple-800;
96
+ }
130
97
 
131
- &%ca-notification---persistent {
132
- transition: none;
133
- }
98
+ // Hidden state
99
+ &%ca-notification---hidden {
100
+ opacity: 0%;
134
101
 
135
- // this is only for inline notifications
136
- &%ca-notification---subtle {
137
- background: none;
138
- border: none;
139
- padding: 0;
140
- }
141
- }
102
+ &%ca-notification---inline,
103
+ &%ca-notification---global {
104
+ margin-bottom: 0;
105
+ }
142
106
 
143
- %ca-notification__icon {
144
- align-items: flex-start;
145
- box-sizing: content-box;
107
+ &%ca-notification---inline {
108
+ // When entering we use "ease-out", but when transitioning to hidden we want to use "ease-in".
109
+ // We want it moving the fastest when it is the furthest off screen.
110
+ transition-timing-function: ease-in;
111
+ transform: translateY(-50%);
112
+ }
146
113
 
147
- %ca-notification---positive & {
148
- color: $color-green-500;
149
- }
114
+ &%ca-notification---toast {
115
+ // When entering we use "ease-out", but when transitioning to hidden we want to use "ease-in".
116
+ // We want it moving the fastest when it is the furthest off screen.
117
+ transition-timing-function: ease-in;
118
+ transform: translateX(50%);
119
+ }
150
120
 
151
- %ca-notification---informative & {
152
- color: $color-blue-500;
153
- }
121
+ &%ca-notification---global {
122
+ z-index: 1029;
123
+ opacity: 100%;
124
+ }
125
+ }
154
126
 
155
- %ca-notification---cautionary & {
156
- color: var(--color-yellow-700);
157
- }
127
+ // Modifiers
128
+ &%ca-notification---noBottomMargin {
129
+ margin-bottom: 0;
130
+ }
158
131
 
159
- %ca-notification---negative & {
160
- color: $color-red-500;
161
- }
132
+ &%ca-notification---persistent {
133
+ transition: none;
134
+ }
162
135
 
163
- %ca-notification---inline &,
164
- %ca-notification---toast & {
165
- width: 22px;
166
- height: 22px;
167
- font-size: 22px;
168
- margin-top: $spacing-6;
136
+ // this is only for inline notifications
137
+ &%ca-notification---subtle {
138
+ background: none;
139
+ border: none;
140
+ padding: 0;
141
+ }
169
142
  }
170
143
 
171
- %ca-notification---global & {
172
- width: 24px;
173
- height: 24px;
174
- font-size: 24px;
175
- }
176
- }
144
+ %ca-notification__icon {
145
+ align-items: flex-start;
146
+ box-sizing: content-box;
177
147
 
178
- %ca-notification__text-container {
179
- box-sizing: content-box;
180
- display: flex;
181
- flex-flow: row wrap;
182
- flex: 1 0 0;
148
+ %ca-notification---positive & {
149
+ color: $color-green-500;
150
+ }
183
151
 
184
- %ca-notification---inline &,
185
- %ca-notification---toast & {
186
- margin-inline-start: $spacing-6;
187
- }
152
+ %ca-notification---informative & {
153
+ color: $color-blue-500;
154
+ }
188
155
 
189
- %ca-notification---toast & {
190
- margin-inline-start: $spacing-6;
191
- max-width: calc(100% - #{$spacing-48});
192
- overflow-wrap: break-word;
193
- hyphens: auto;
194
- }
156
+ %ca-notification---cautionary & {
157
+ color: var(--color-yellow-700);
158
+ }
195
159
 
196
- %ca-notification---global & {
197
- margin-inline-start: var(--spacing-8);
198
- }
160
+ %ca-notification---negative & {
161
+ color: $color-red-500;
162
+ }
199
163
 
200
- %ca-notification---inline & {
201
- // Inline notifications often fade onto a white background.
202
- // Fading the higher-contrast text out at, as well as the whole container, makes for a smoother animation.
203
- transition: $notification-fade-out;
204
- }
164
+ %ca-notification---inline &,
165
+ %ca-notification---toast & {
166
+ width: 22px;
167
+ height: 22px;
168
+ font-size: 22px;
169
+ margin-top: $spacing-6;
170
+ }
205
171
 
206
- &%ca-notification---forceMultiline {
207
- flex-direction: column;
172
+ %ca-notification---global & {
173
+ width: 24px;
174
+ height: 24px;
175
+ font-size: 24px;
176
+ }
208
177
  }
209
- }
210
178
 
211
- %ca-notification__title {
212
- position: relative;
213
- font-family: $typography-heading-6-font-family;
214
- font-weight: $typography-heading-6-font-weight;
215
- font-size: $typography-heading-6-font-size;
216
- line-height: $typography-heading-6-line-height;
217
- letter-spacing: $typography-heading-6-letter-spacing;
218
- margin: 0;
219
- padding-right: 6px;
220
- // overriding Bootstrap style that changes h6s to text-transform: uppercase
221
- text-transform: none;
222
- color: inherit;
223
- top: 0.37em;
224
- }
179
+ %ca-notification__text-container {
180
+ box-sizing: content-box;
181
+ display: flex;
182
+ flex-flow: row wrap;
183
+ flex: 1 0 0;
184
+
185
+ %ca-notification---inline &,
186
+ %ca-notification---toast & {
187
+ margin-inline-start: $spacing-6;
188
+ }
189
+
190
+ %ca-notification---toast & {
191
+ margin-inline-start: $spacing-6;
192
+ max-width: calc(100% - #{$spacing-48});
193
+ overflow-wrap: break-word;
194
+ hyphens: auto;
195
+ }
196
+
197
+ %ca-notification---global & {
198
+ margin-inline-start: var(--spacing-8);
199
+ }
200
+
201
+ %ca-notification---inline & {
202
+ // Inline notifications often fade onto a white background.
203
+ // Fading the higher-contrast text out at, as well as the whole container, makes for a smoother animation.
204
+ transition: $notification-fade-out;
205
+ }
206
+
207
+ &%ca-notification---forceMultiline {
208
+ flex-direction: column;
209
+ }
210
+ }
225
211
 
226
- %ca-notification__text {
227
- position: relative;
228
- font-family: $typography-paragraph-small-font-family;
229
- font-weight: $typography-paragraph-small-font-weight;
230
- font-size: $typography-paragraph-small-font-size;
231
- line-height: $typography-paragraph-small-line-height;
232
- letter-spacing: $typography-paragraph-small-letter-spacing;
233
- margin: 0;
234
- color: inherit;
235
-
236
- %ca-notification---inline &,
237
- %ca-notification---toast & {
212
+ %ca-notification__title {
213
+ position: relative;
214
+ font-family: $typography-heading-6-font-family;
215
+ font-weight: $typography-heading-6-font-weight;
216
+ font-size: $typography-heading-6-font-size;
217
+ line-height: $typography-heading-6-line-height;
218
+ letter-spacing: $typography-heading-6-letter-spacing;
219
+ margin: 0;
220
+ padding-right: 6px;
221
+ // overriding Bootstrap style that changes h6s to text-transform: uppercase
222
+ text-transform: none;
223
+ color: inherit;
224
+ top: 0.37em;
225
+ }
226
+
227
+ %ca-notification__text {
238
228
  position: relative;
239
229
  font-family: $typography-paragraph-small-font-family;
240
230
  font-weight: $typography-paragraph-small-font-weight;
241
231
  font-size: $typography-paragraph-small-font-size;
242
232
  line-height: $typography-paragraph-small-line-height;
243
233
  letter-spacing: $typography-paragraph-small-letter-spacing;
244
- // When the title and text are on different lines this ensures the baselines of the first lines are exactly 1 grid unit apart.
245
- // When they are both on a single line it ensures both are 1 grid unit tall.
246
- margin-top: $spacing-6;
247
- flex: 0 1 auto;
248
- padding-bottom: $spacing-12;
249
- top: 0.21em;
250
- }
251
- %ca-notification---toast & {
252
- width: 100%;
253
- }
254
-
255
- %ca-notification---global & {
256
- // Inherit baseline because the parent selector doesn't.
257
- position: static;
258
- font-weight: $typography-paragraph-body-font-weight;
259
- font-size: $typography-paragraph-body-font-size;
260
- line-height: $typography-paragraph-body-line-height;
261
- letter-spacing: $typography-paragraph-body-letter-spacing;
262
- }
234
+ margin: 0;
235
+ color: inherit;
236
+
237
+ %ca-notification---inline &,
238
+ %ca-notification---toast & {
239
+ position: relative;
240
+ font-family: $typography-paragraph-small-font-family;
241
+ font-weight: $typography-paragraph-small-font-weight;
242
+ font-size: $typography-paragraph-small-font-size;
243
+ line-height: $typography-paragraph-small-line-height;
244
+ letter-spacing: $typography-paragraph-small-letter-spacing;
245
+ // When the title and text are on different lines this ensures the baselines of the first lines are exactly 1 grid unit apart.
246
+ // When they are both on a single line it ensures both are 1 grid unit tall.
247
+ margin-top: $spacing-6;
248
+ flex: 0 1 auto;
249
+ padding-bottom: $spacing-12;
250
+ top: 0.21em;
251
+ }
252
+ %ca-notification---toast & {
253
+ width: 100%;
254
+ }
263
255
 
264
- a[href] {
265
- color: $color-blue-500;
266
- text-decoration: underline;
256
+ %ca-notification---global & {
257
+ // Inherit baseline because the parent selector doesn't.
258
+ position: static;
259
+ font-weight: $typography-paragraph-body-font-weight;
260
+ font-size: $typography-paragraph-body-font-size;
261
+ line-height: $typography-paragraph-body-line-height;
262
+ letter-spacing: $typography-paragraph-body-letter-spacing;
263
+ }
267
264
 
268
- &:hover {
265
+ a[href] {
269
266
  color: $color-blue-500;
270
- text-decoration: none;
267
+ text-decoration: underline;
268
+
269
+ &:hover {
270
+ color: $color-blue-500;
271
+ text-decoration: none;
272
+ }
271
273
  }
272
- }
273
274
 
274
- strong {
275
- font-weight: $typography-button-secondary-font-weight;
276
- }
275
+ strong {
276
+ font-weight: $typography-button-secondary-font-weight;
277
+ }
277
278
 
278
- p {
279
- font-weight: inherit;
279
+ p {
280
+ font-weight: inherit;
281
+ }
280
282
  }
281
- }
282
283
 
283
- %ca-notification__cancel {
284
- cursor: pointer;
285
- appearance: none;
286
- transition: none;
287
- transform: none;
288
- margin: 0;
289
- padding: 0;
290
- border: none;
291
- background: transparent;
292
- font: inherit;
293
- color: $color-purple-800;
294
-
295
- .icon {
296
- opacity: 70%;
297
- transition: $animation-duration-fast opacity;
298
- }
284
+ %ca-notification__cancel {
285
+ cursor: pointer;
286
+ appearance: none;
287
+ transition: none;
288
+ transform: none;
289
+ margin: 0;
290
+ padding: 0;
291
+ border: none;
292
+ background: transparent;
293
+ font: inherit;
294
+ color: $color-purple-800;
299
295
 
300
- &:disabled,
301
- &.disabled {
302
296
  .icon {
303
- opacity: 30%;
297
+ opacity: 70%;
298
+ transition: $animation-duration-fast opacity;
304
299
  }
305
- }
306
300
 
307
- &:not(:disabled, .disabled) {
308
- &:hover,
309
- &:focus,
310
- &.hover {
301
+ &:disabled,
302
+ &.disabled {
311
303
  .icon {
312
- opacity: 100%;
304
+ opacity: 30%;
313
305
  }
314
306
  }
315
307
 
316
- &:active,
317
- &.active {
318
- .icon {
319
- opacity: 100%;
308
+ &:not(:disabled, .disabled) {
309
+ &:hover,
310
+ &:focus,
311
+ &.hover {
312
+ .icon {
313
+ opacity: 100%;
314
+ }
315
+ }
316
+
317
+ &:active,
318
+ &.active {
319
+ .icon {
320
+ opacity: 100%;
321
+ }
320
322
  }
321
323
  }
322
- }
323
324
 
324
- &:active {
325
- transform: translateY(1px);
326
- }
325
+ &:active {
326
+ transform: translateY(1px);
327
+ }
327
328
 
328
- // The negative margins below are so that our clickable area will overlap the notification padding
329
- %ca-notification---inline &,
330
- %ca-notification---toast & {
331
- width: var(--spacing-48);
332
- height: var(--spacing-48);
333
- margin-top: calc(-1 * var(--spacing-6));
334
- margin-bottom: calc(-1 * var(--spacing-6));
335
- }
329
+ // The negative margins below are so that our clickable area will overlap the notification padding
330
+ %ca-notification---inline &,
331
+ %ca-notification---toast & {
332
+ width: var(--spacing-48);
333
+ height: var(--spacing-48);
334
+ margin-top: calc(-1 * var(--spacing-6));
335
+ margin-bottom: calc(-1 * var(--spacing-6));
336
+ }
336
337
 
337
- %ca-notification---inline & {
338
- margin-inline-end: calc(-1 * var(--spacing-12));
339
- }
338
+ %ca-notification---inline & {
339
+ margin-inline-end: calc(-1 * var(--spacing-12));
340
+ }
340
341
 
341
- %ca-notification---toast & {
342
- margin-inline-end: -10px;
343
- }
342
+ %ca-notification---toast & {
343
+ margin-inline-end: -10px;
344
+ }
344
345
 
345
- %ca-notification---global & {
346
- width: var(--spacing-48);
347
- height: var(--spacing-48);
348
- margin-top: calc(-1 * var(--spacing-24));
349
- margin-bottom: calc(-1 * var(--spacing-24));
346
+ %ca-notification---global & {
347
+ width: var(--spacing-48);
348
+ height: var(--spacing-48);
349
+ margin-top: calc(-1 * var(--spacing-24));
350
+ margin-bottom: calc(-1 * var(--spacing-24));
351
+ }
350
352
  }
351
- }
352
353
 
353
- %ca-notification__cancel__label {
354
- position: absolute;
355
- width: 1px;
356
- height: 1px;
357
- padding: 0;
358
- margin: -1px;
359
- overflow: hidden;
360
- clip: rect(0, 0, 0, 0);
361
- border: 0;
354
+ %ca-notification__cancel__label {
355
+ position: absolute;
356
+ width: 1px;
357
+ height: 1px;
358
+ padding: 0;
359
+ margin: -1px;
360
+ overflow: hidden;
361
+ clip: rect(0, 0, 0, 0);
362
+ border: 0;
363
+ }
362
364
  }
@@ -1,3 +1,5 @@
1
- .notificationIcon {
2
- font-size: inherit;
1
+ @layer kz-components {
2
+ .notificationIcon {
3
+ font-size: inherit;
4
+ }
3
5
  }