@zendeskgarden/react-notifications 9.0.0-next.1 → 9.0.0-next.11

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 (57) hide show
  1. package/README.md +6 -4
  2. package/dist/esm/elements/Alert.js +56 -0
  3. package/dist/esm/elements/Notification.js +56 -0
  4. package/dist/esm/elements/Well.js +38 -0
  5. package/dist/esm/elements/content/Close.js +37 -0
  6. package/dist/esm/elements/content/Paragraph.js +28 -0
  7. package/dist/esm/elements/content/Title.js +28 -0
  8. package/dist/esm/elements/global-alert/GlobalAlert.js +65 -0
  9. package/dist/esm/elements/global-alert/GlobalAlertButton.js +46 -0
  10. package/dist/esm/elements/global-alert/GlobalAlertClose.js +41 -0
  11. package/dist/esm/elements/global-alert/GlobalAlertContent.js +30 -0
  12. package/dist/esm/elements/global-alert/GlobalAlertTitle.js +39 -0
  13. package/dist/esm/elements/global-alert/utility.js +14 -0
  14. package/dist/esm/elements/toaster/Toast.js +62 -0
  15. package/dist/esm/elements/toaster/ToastContext.js +11 -0
  16. package/dist/esm/elements/toaster/ToastProvider.js +51 -0
  17. package/dist/esm/elements/toaster/ToastSlot.js +82 -0
  18. package/dist/esm/elements/toaster/reducer.js +66 -0
  19. package/dist/esm/elements/toaster/styled.js +71 -0
  20. package/dist/esm/elements/toaster/useToast.js +70 -0
  21. package/dist/esm/index.js +15 -0
  22. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/12/x-stroke.svg.js +26 -0
  23. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/alert-error-stroke.svg.js +37 -0
  24. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/alert-warning-stroke.svg.js +32 -0
  25. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/check-circle-stroke.svg.js +33 -0
  26. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/info-stroke.svg.js +37 -0
  27. package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/x-stroke.svg.js +26 -0
  28. package/dist/esm/styled/StyledAlert.js +25 -0
  29. package/dist/esm/styled/StyledBase.js +54 -0
  30. package/dist/esm/styled/StyledIcon.js +18 -0
  31. package/dist/esm/styled/StyledNotification.js +62 -0
  32. package/dist/esm/styled/StyledWell.js +23 -0
  33. package/dist/esm/styled/content/StyledClose.js +25 -0
  34. package/dist/esm/styled/content/StyledParagraph.js +22 -0
  35. package/dist/esm/styled/content/StyledTitle.js +22 -0
  36. package/dist/esm/styled/global-alert/StyledGlobalAlert.js +85 -0
  37. package/dist/esm/styled/global-alert/StyledGlobalAlertButton.js +75 -0
  38. package/dist/esm/styled/global-alert/StyledGlobalAlertClose.js +74 -0
  39. package/dist/esm/styled/global-alert/StyledGlobalAlertContent.js +22 -0
  40. package/dist/esm/styled/global-alert/StyledGlobalAlertIcon.js +29 -0
  41. package/dist/esm/styled/global-alert/StyledGlobalAlertTitle.js +38 -0
  42. package/dist/esm/types/index.js +9 -0
  43. package/dist/esm/utils/icons.js +25 -0
  44. package/dist/esm/utils/useNotificationsContext.js +14 -0
  45. package/dist/index.cjs.js +168 -179
  46. package/dist/typings/elements/Alert.d.ts +9 -1
  47. package/dist/typings/elements/Notification.d.ts +9 -1
  48. package/dist/typings/elements/Well.d.ts +7 -1
  49. package/dist/typings/elements/content/Close.d.ts +2 -0
  50. package/dist/typings/elements/content/Paragraph.d.ts +2 -0
  51. package/dist/typings/elements/content/Title.d.ts +2 -0
  52. package/dist/typings/index.d.ts +2 -6
  53. package/dist/typings/styled/StyledIcon.d.ts +2 -2
  54. package/dist/typings/styled/global-alert/StyledGlobalAlertButton.d.ts +3 -3
  55. package/dist/typings/styled/global-alert/StyledGlobalAlertIcon.d.ts +2 -2
  56. package/package.json +7 -7
  57. package/dist/index.esm.js +0 -1124
package/dist/index.cjs.js CHANGED
@@ -1,10 +1,9 @@
1
1
  /**
2
- * Copyright Zendesk, Inc.
3
- *
4
- * Use of this source code is governed under the Apache License, Version 2.0
5
- * found at http://www.apache.org/licenses/LICENSE-2.0.
6
- */
7
-
2
+ * Copyright Zendesk, Inc.
3
+ *
4
+ * Use of this source code is governed under the Apache License, Version 2.0
5
+ * found at http://www.apache.org/licenses/LICENSE-2.0.
6
+ */
8
7
  'use strict';
9
8
 
10
9
  var React = require('react');
@@ -40,31 +39,16 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
40
39
  var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
41
40
  var styled__default = /*#__PURE__*/_interopDefault(styled);
42
41
 
43
- function _extends$6() {
44
- _extends$6 = Object.assign ? Object.assign.bind() : function (target) {
45
- for (var i = 1; i < arguments.length; i++) {
46
- var source = arguments[i];
47
- for (var key in source) {
48
- if (Object.prototype.hasOwnProperty.call(source, key)) {
49
- target[key] = source[key];
50
- }
51
- }
52
- }
53
- return target;
54
- };
55
- return _extends$6.apply(this, arguments);
56
- }
57
-
58
42
  const TYPE = ['success', 'warning', 'error', 'info'];
59
43
 
60
44
  const COMPONENT_ID$b = 'notifications.close';
61
45
  const StyledClose = styled__default.default.button.attrs({
62
46
  'data-garden-id': COMPONENT_ID$b,
63
- 'data-garden-version': '9.0.0-next.1'
47
+ 'data-garden-version': '9.0.0-next.11'
64
48
  }).withConfig({
65
49
  displayName: "StyledClose",
66
50
  componentId: "sc-1mr9nx1-0"
67
- })(["display:block;position:absolute;top:", "px;", ":", ";transition:background-color 0.1s ease-in-out,color 0.25s ease-in-out,box-shadow 0.1s ease-in-out;border:none;border-radius:50%;background-color:transparent;cursor:pointer;padding:0;width:", "px;height:", "px;overflow:hidden;color:", ";font-size:0;user-select:none;&::-moz-focus-inner{border:0;}&:hover{color:", ";}", " ", ";"], props => props.theme.space.base, props => props.theme.rtl ? 'left' : 'right', props => `${props.theme.space.base}px`, props => props.theme.space.base * 7, props => props.theme.space.base * 7, props => props.hue ? reactTheming.getColor(props.hue, props.hue === 'warningHue' ? 700 : 600, props.theme) : reactTheming.getColor('neutralHue', 600, props.theme), props => props.hue ? reactTheming.getColor(props.hue, 800, props.theme) : reactTheming.getColor('neutralHue', 800, props.theme), props => reactTheming.focusStyles({
51
+ })(["display:block;position:absolute;top:", "px;", ":", ";transition:background-color 0.1s ease-in-out,color 0.25s ease-in-out,box-shadow 0.1s ease-in-out;border:none;border-radius:50%;background-color:transparent;cursor:pointer;padding:0;width:", "px;height:", "px;overflow:hidden;color:", ";font-size:0;user-select:none;&::-moz-focus-inner{border:0;}&:hover{color:", ";}", " ", ";"], props => props.theme.space.base, props => props.theme.rtl ? 'left' : 'right', props => `${props.theme.space.base}px`, props => props.theme.space.base * 7, props => props.theme.space.base * 7, props => props.hue ? reactTheming.getColorV8(props.hue, props.hue === 'warningHue' ? 700 : 600, props.theme) : reactTheming.getColorV8('neutralHue', 600, props.theme), props => props.hue ? reactTheming.getColorV8(props.hue, 800, props.theme) : reactTheming.getColorV8('neutralHue', 800, props.theme), props => reactTheming.focusStyles({
68
52
  theme: props.theme,
69
53
  inset: true
70
54
  }), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$b, props));
@@ -75,7 +59,7 @@ StyledClose.defaultProps = {
75
59
  const COMPONENT_ID$a = 'notifications.paragraph';
76
60
  const StyledParagraph = styled__default.default.p.attrs({
77
61
  'data-garden-id': COMPONENT_ID$a,
78
- 'data-garden-version': '9.0.0-next.1'
62
+ 'data-garden-version': '9.0.0-next.11'
79
63
  }).withConfig({
80
64
  displayName: "StyledParagraph",
81
65
  componentId: "sc-12tmd6p-0"
@@ -87,11 +71,11 @@ StyledParagraph.defaultProps = {
87
71
  const COMPONENT_ID$9 = 'notifications.title';
88
72
  const StyledTitle = styled__default.default.div.attrs({
89
73
  'data-garden-id': COMPONENT_ID$9,
90
- 'data-garden-version': '9.0.0-next.1'
74
+ 'data-garden-version': '9.0.0-next.11'
91
75
  }).withConfig({
92
76
  displayName: "StyledTitle",
93
77
  componentId: "sc-xx4jsv-0"
94
- })(["margin:0;color:", ";font-weight:", ";", ";"], props => props.theme.colors.foreground, props => props.isRegular ? props.theme.fontWeights.regular : props.theme.fontWeights.semibold, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$9, props));
78
+ })(["margin:0;color:", ";font-weight:", ";", ";"], props => reactTheming.getColorV8('foreground', 600 , props.theme), props => props.isRegular ? props.theme.fontWeights.regular : props.theme.fontWeights.semibold, props => reactTheming.retrieveComponentStyles(COMPONENT_ID$9, props));
95
79
  StyledTitle.defaultProps = {
96
80
  theme: reactTheming.DEFAULT_THEME
97
81
  };
@@ -106,7 +90,7 @@ const boxShadow = props => {
106
90
  } = theme;
107
91
  const offsetY = `${space.base * 5}px`;
108
92
  const blurRadius = `${space.base * 7}px`;
109
- const color = reactTheming.getColor('chromeHue', 600, theme, 0.15);
93
+ const color = reactTheming.getColorV8('chromeHue', 600, theme, 0.15);
110
94
  return shadows.lg(offsetY, blurRadius, color);
111
95
  };
112
96
  const colorStyles$6 = props => {
@@ -114,13 +98,13 @@ const colorStyles$6 = props => {
114
98
  let borderColor;
115
99
  let foregroundColor;
116
100
  if (props.hue) {
117
- backgroundColor = reactTheming.getColor(props.hue, 100, props.theme);
118
- borderColor = reactTheming.getColor(props.hue, 300, props.theme);
119
- foregroundColor = reactTheming.getColor(props.hue, props.type === 'info' ? 600 : 700, props.theme);
101
+ backgroundColor = reactTheming.getColorV8(props.hue, 100, props.theme);
102
+ borderColor = reactTheming.getColorV8(props.hue, 300, props.theme);
103
+ foregroundColor = reactTheming.getColorV8(props.hue, props.type === 'info' ? 600 : 700, props.theme);
120
104
  } else {
121
- backgroundColor = props.theme.colors.background;
122
- borderColor = reactTheming.getColor('neutralHue', 300, props.theme);
123
- foregroundColor = reactTheming.getColor('neutralHue', 800, props.theme);
105
+ backgroundColor = reactTheming.getColorV8('background', 600 , props.theme);
106
+ borderColor = reactTheming.getColorV8('neutralHue', 300, props.theme);
107
+ foregroundColor = reactTheming.getColorV8('neutralHue', 800, props.theme);
124
108
  }
125
109
  return styled.css(["border-color:", ";background-color:", ";color:", ";"], borderColor, backgroundColor, foregroundColor);
126
110
  };
@@ -141,10 +125,10 @@ StyledBase.defaultProps = {
141
125
  };
142
126
 
143
127
  const COMPONENT_ID$8 = 'notifications.alert';
144
- const colorStyles$5 = props => styled.css(["", "{color:", ";}"], StyledTitle, props.hue && reactTheming.getColor(props.hue, 800, props.theme));
128
+ const colorStyles$5 = props => styled.css(["", "{color:", ";}"], StyledTitle, props.hue && reactTheming.getColorV8(props.hue, 800, props.theme));
145
129
  const StyledAlert = styled__default.default(StyledBase).attrs({
146
130
  'data-garden-id': COMPONENT_ID$8,
147
- 'data-garden-version': '9.0.0-next.1'
131
+ 'data-garden-version': '9.0.0-next.11'
148
132
  }).withConfig({
149
133
  displayName: "StyledAlert",
150
134
  componentId: "sc-fyn8jp-0"
@@ -165,22 +149,21 @@ const colorStyles$4 = props => {
165
149
  const {
166
150
  successHue,
167
151
  dangerHue,
168
- warningHue,
169
- foreground
152
+ warningHue
170
153
  } = colors;
171
154
  let color;
172
155
  switch (type) {
173
156
  case 'success':
174
- color = reactTheming.getColor(successHue, 600, theme);
157
+ color = reactTheming.getColorV8(successHue, 600, theme);
175
158
  break;
176
159
  case 'error':
177
- color = reactTheming.getColor(dangerHue, 600, theme);
160
+ color = reactTheming.getColorV8(dangerHue, 600, theme);
178
161
  break;
179
162
  case 'warning':
180
- color = reactTheming.getColor(warningHue, 700, theme);
163
+ color = reactTheming.getColorV8(warningHue, 700, theme);
181
164
  break;
182
165
  case 'info':
183
- color = foreground;
166
+ color = reactTheming.getColorV8('foreground', 600 , theme);
184
167
  break;
185
168
  default:
186
169
  color = 'inherit';
@@ -190,7 +173,7 @@ const colorStyles$4 = props => {
190
173
  };
191
174
  const StyledNotification = styled__default.default(StyledBase).attrs({
192
175
  'data-garden-id': COMPONENT_ID$7,
193
- 'data-garden-version': '9.0.0-next.1'
176
+ 'data-garden-version': '9.0.0-next.11'
194
177
  }).withConfig({
195
178
  displayName: "StyledNotification",
196
179
  componentId: "sc-uf6jh-0"
@@ -205,25 +188,19 @@ StyledNotification.defaultProps = {
205
188
  const COMPONENT_ID$6 = 'notifications.well';
206
189
  const StyledWell = styled__default.default(StyledBase).attrs({
207
190
  'data-garden-id': COMPONENT_ID$6,
208
- 'data-garden-version': '9.0.0-next.1'
191
+ 'data-garden-version': '9.0.0-next.11'
209
192
  }).withConfig({
210
193
  displayName: "StyledWell",
211
194
  componentId: "sc-a5831c-0"
212
- })(["background-color:", ";color:", " ", ";"], props => props.isRecessed && reactTheming.getColor('neutralHue', 100, props.theme), props => reactTheming.getColor('neutralHue', 600, props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$6, props));
195
+ })(["background-color:", ";color:", " ", ";"], props => props.isRecessed && reactTheming.getColorV8('neutralHue', 100, props.theme), props => reactTheming.getColorV8('neutralHue', 600, props.theme), props => reactTheming.retrieveComponentStyles(COMPONENT_ID$6, props));
213
196
  StyledWell.defaultProps = {
214
197
  theme: reactTheming.DEFAULT_THEME
215
198
  };
216
199
 
217
- const StyledIcon = styled__default.default(_ref => {
218
- let {
219
- children,
220
- ...props
221
- } = _ref;
222
- return React__namespace.default.cloneElement(React.Children.only(children), props);
223
- }).withConfig({
200
+ const StyledIcon = styled__default.default(reactTheming.StyledBaseIcon).withConfig({
224
201
  displayName: "StyledIcon",
225
202
  componentId: "sc-msklws-0"
226
- })(["position:absolute;right:", ";left:", ";margin-top:", "px;color:", ";"], props => props.theme.rtl && `${props.theme.space.base * 4}px`, props => !props.theme.rtl && `${props.theme.space.base * 4}px`, props => props.theme.space.base / 2, props => props.hue && reactTheming.getColor(props.hue, props.hue === 'warningHue' ? 700 : 600, props.theme));
203
+ })(["position:absolute;right:", ";left:", ";margin-top:", "px;color:", ";"], props => props.theme.rtl && `${props.theme.space.base * 4}px`, props => !props.theme.rtl && `${props.theme.space.base * 4}px`, props => props.theme.space.base / 2, props => props.$hue && reactTheming.getColorV8(props.$hue, props.$hue === 'warningHue' ? 700 : 600, props.theme));
227
204
  StyledIcon.defaultProps = {
228
205
  theme: reactTheming.DEFAULT_THEME
229
206
  };
@@ -238,43 +215,45 @@ const colorStyles$3 = props => {
238
215
  let focusColor;
239
216
  switch (props.alertType) {
240
217
  case 'success':
241
- borderColor = reactTheming.getColor('successHue', 700, props.theme);
242
- backgroundColor = reactTheming.getColor('successHue', 600, props.theme);
243
- foregroundColor = reactTheming.getColor('successHue', 100, props.theme);
218
+ borderColor = reactTheming.getColorV8('successHue', 700, props.theme);
219
+ backgroundColor = reactTheming.getColorV8('successHue', 600, props.theme);
220
+ foregroundColor = reactTheming.getColorV8('successHue', 100, props.theme);
244
221
  anchorHoverColor = props.theme.palette.white;
245
222
  anchorActiveColor = props.theme.palette.white;
246
223
  focusColor = 'successHue';
247
224
  break;
248
225
  case 'error':
249
- borderColor = reactTheming.getColor('dangerHue', 700, props.theme);
250
- backgroundColor = reactTheming.getColor('dangerHue', 600, props.theme);
251
- foregroundColor = reactTheming.getColor('dangerHue', 100, props.theme);
226
+ borderColor = reactTheming.getColorV8('dangerHue', 700, props.theme);
227
+ backgroundColor = reactTheming.getColorV8('dangerHue', 600, props.theme);
228
+ foregroundColor = reactTheming.getColorV8('dangerHue', 100, props.theme);
252
229
  anchorHoverColor = props.theme.palette.white;
253
230
  anchorActiveColor = props.theme.palette.white;
254
231
  focusColor = 'dangerHue';
255
232
  break;
256
233
  case 'warning':
257
- borderColor = reactTheming.getColor('warningHue', 400, props.theme);
258
- backgroundColor = reactTheming.getColor('warningHue', 300, props.theme);
259
- foregroundColor = reactTheming.getColor('warningHue', 800, props.theme);
260
- anchorHoverColor = reactTheming.getColor('warningHue', 900, props.theme);
261
- anchorActiveColor = reactTheming.getColor('warningHue', 1000, props.theme);
234
+ borderColor = reactTheming.getColorV8('warningHue', 400, props.theme);
235
+ backgroundColor = reactTheming.getColorV8('warningHue', 300, props.theme);
236
+ foregroundColor = reactTheming.getColorV8('warningHue', 800, props.theme);
237
+ anchorHoverColor = reactTheming.getColorV8('warningHue', 900, props.theme);
238
+ anchorActiveColor = reactTheming.getColorV8('warningHue', 1000, props.theme);
262
239
  focusColor = 'warningHue';
263
240
  break;
264
241
  case 'info':
265
- borderColor = reactTheming.getColor('primaryHue', 300, props.theme);
266
- backgroundColor = reactTheming.getColor('primaryHue', 200, props.theme);
267
- foregroundColor = reactTheming.getColor('primaryHue', 700, props.theme);
268
- anchorHoverColor = reactTheming.getColor('primaryHue', 800, props.theme);
269
- anchorActiveColor = reactTheming.getColor('primaryHue', 900, props.theme);
242
+ borderColor = reactTheming.getColorV8('primaryHue', 300, props.theme);
243
+ backgroundColor = reactTheming.getColorV8('primaryHue', 200, props.theme);
244
+ foregroundColor = reactTheming.getColorV8('primaryHue', 700, props.theme);
245
+ anchorHoverColor = reactTheming.getColorV8('primaryHue', 800, props.theme);
246
+ anchorActiveColor = reactTheming.getColorV8('primaryHue', 900, props.theme);
270
247
  focusColor = 'primaryHue';
271
248
  break;
272
249
  }
273
250
  const boxShadow = `0 ${props.theme.borderWidths.sm} ${props.theme.borderWidths.sm} ${borderColor}`;
274
251
  return styled.css(["box-shadow:", ";background-color:", ";color:", ";& a{color:inherit;", " &:hover{color:", ";}&:active{color:", ";}}"], boxShadow, backgroundColor, foregroundColor, reactTheming.focusStyles({
275
252
  theme: props.theme,
276
- hue: focusColor,
277
- shade: props.alertType === 'info' ? 600 : 800,
253
+ color: {
254
+ hue: focusColor,
255
+ shade: props.alertType === 'info' ? 600 : 800
256
+ },
278
257
  styles: {
279
258
  color: 'inherit'
280
259
  }
@@ -292,7 +271,7 @@ const sizeStyles$3 = props => {
292
271
  };
293
272
  const StyledGlobalAlert = styled__default.default.div.attrs({
294
273
  'data-garden-id': COMPONENT_ID$5,
295
- 'data-garden-version': '9.0.0-next.1'
274
+ 'data-garden-version': '9.0.0-next.11'
296
275
  }).withConfig({
297
276
  displayName: "StyledGlobalAlert",
298
277
  componentId: "sc-k6rimt-0"
@@ -310,38 +289,40 @@ const colorStyles$2 = props => {
310
289
  let focusColor;
311
290
  switch (props.alertType) {
312
291
  case 'success':
313
- hoverBackgroundColor = reactTheming.getColor('successHue', 100, props.theme, 0.08);
292
+ hoverBackgroundColor = reactTheming.getColorV8('successHue', 100, props.theme, 0.08);
314
293
  hoverForegroundColor = props.theme.palette.white;
315
- activeBackgroundColor = reactTheming.getColor('successHue', 100, props.theme, 0.2);
294
+ activeBackgroundColor = reactTheming.getColorV8('successHue', 100, props.theme, 0.2);
316
295
  activeForegroundColor = props.theme.palette.white;
317
296
  focusColor = 'successHue';
318
297
  break;
319
298
  case 'error':
320
- hoverBackgroundColor = reactTheming.getColor('dangerHue', 100, props.theme, 0.08);
299
+ hoverBackgroundColor = reactTheming.getColorV8('dangerHue', 100, props.theme, 0.08);
321
300
  hoverForegroundColor = props.theme.palette.white;
322
- activeBackgroundColor = reactTheming.getColor('dangerHue', 100, props.theme, 0.2);
301
+ activeBackgroundColor = reactTheming.getColorV8('dangerHue', 100, props.theme, 0.2);
323
302
  activeForegroundColor = props.theme.palette.white;
324
303
  focusColor = 'dangerHue';
325
304
  break;
326
305
  case 'warning':
327
- hoverBackgroundColor = reactTheming.getColor('warningHue', 800, props.theme, 0.08);
328
- hoverForegroundColor = reactTheming.getColor('warningHue', 900, props.theme);
329
- activeBackgroundColor = reactTheming.getColor('warningHue', 800, props.theme, 0.2);
330
- activeForegroundColor = reactTheming.getColor('warningHue', 1000, props.theme);
306
+ hoverBackgroundColor = reactTheming.getColorV8('warningHue', 800, props.theme, 0.08);
307
+ hoverForegroundColor = reactTheming.getColorV8('warningHue', 900, props.theme);
308
+ activeBackgroundColor = reactTheming.getColorV8('warningHue', 800, props.theme, 0.2);
309
+ activeForegroundColor = reactTheming.getColorV8('warningHue', 1000, props.theme);
331
310
  focusColor = 'warningHue';
332
311
  break;
333
312
  case 'info':
334
- hoverBackgroundColor = reactTheming.getColor('primaryHue', 700, props.theme, 0.08);
335
- hoverForegroundColor = reactTheming.getColor('primaryHue', 800, props.theme);
336
- activeBackgroundColor = reactTheming.getColor('primaryHue', 700, props.theme, 0.2);
337
- activeForegroundColor = reactTheming.getColor('primaryHue', 900, props.theme);
313
+ hoverBackgroundColor = reactTheming.getColorV8('primaryHue', 700, props.theme, 0.08);
314
+ hoverForegroundColor = reactTheming.getColorV8('primaryHue', 800, props.theme);
315
+ activeBackgroundColor = reactTheming.getColorV8('primaryHue', 700, props.theme, 0.2);
316
+ activeForegroundColor = reactTheming.getColorV8('primaryHue', 900, props.theme);
338
317
  focusColor = 'primaryHue';
339
318
  break;
340
319
  }
341
320
  return styled.css(["color:inherit;&:hover{background-color:", ";color:", ";}", " &:active{background-color:", ";color:", ";}"], hoverBackgroundColor, hoverForegroundColor, reactTheming.focusStyles({
342
321
  theme: props.theme,
343
- hue: focusColor,
344
- shade: props.alertType === 'info' ? 600 : 800
322
+ color: {
323
+ hue: focusColor,
324
+ shade: props.alertType === 'info' ? 600 : 800
325
+ }
345
326
  }), activeBackgroundColor, activeForegroundColor);
346
327
  };
347
328
  const sizeStyles$2 = props => {
@@ -352,7 +333,7 @@ const sizeStyles$2 = props => {
352
333
  };
353
334
  const StyledGlobalAlertClose = styled__default.default(reactButtons.IconButton).attrs({
354
335
  'data-garden-id': COMPONENT_ID$4,
355
- 'data-garden-version': '9.0.0-next.1',
336
+ 'data-garden-version': '9.0.0-next.11',
356
337
  size: 'small'
357
338
  }).withConfig({
358
339
  displayName: "StyledGlobalAlertClose",
@@ -373,21 +354,21 @@ function colorStyles$1(props) {
373
354
  let focusColor;
374
355
  switch (props.alertType) {
375
356
  case 'success':
376
- backgroundColor = reactTheming.getColor('successHue', 800, props.theme);
377
- hoverBackgroundColor = reactTheming.getColor('successHue', 900, props.theme);
378
- activeBackgroundColor = reactTheming.getColor('successHue', 1000, props.theme);
357
+ backgroundColor = reactTheming.getColorV8('successHue', 800, props.theme);
358
+ hoverBackgroundColor = reactTheming.getColorV8('successHue', 900, props.theme);
359
+ activeBackgroundColor = reactTheming.getColorV8('successHue', 1000, props.theme);
379
360
  focusColor = 'successHue';
380
361
  break;
381
362
  case 'error':
382
- backgroundColor = reactTheming.getColor('dangerHue', 800, props.theme);
383
- hoverBackgroundColor = reactTheming.getColor('dangerHue', 900, props.theme);
384
- activeBackgroundColor = reactTheming.getColor('dangerHue', 1000, props.theme);
363
+ backgroundColor = reactTheming.getColorV8('dangerHue', 800, props.theme);
364
+ hoverBackgroundColor = reactTheming.getColorV8('dangerHue', 900, props.theme);
365
+ activeBackgroundColor = reactTheming.getColorV8('dangerHue', 1000, props.theme);
385
366
  focusColor = 'dangerHue';
386
367
  break;
387
368
  case 'warning':
388
- backgroundColor = reactTheming.getColor('warningHue', 800, props.theme);
389
- hoverBackgroundColor = reactTheming.getColor('warningHue', 900, props.theme);
390
- activeBackgroundColor = reactTheming.getColor('warningHue', 1000, props.theme);
369
+ backgroundColor = reactTheming.getColorV8('warningHue', 800, props.theme);
370
+ hoverBackgroundColor = reactTheming.getColorV8('warningHue', 900, props.theme);
371
+ activeBackgroundColor = reactTheming.getColorV8('warningHue', 1000, props.theme);
391
372
  focusColor = 'warningHue';
392
373
  break;
393
374
  case 'info':
@@ -396,8 +377,10 @@ function colorStyles$1(props) {
396
377
  }
397
378
  return styled.css(["background-color:", ";&:hover{background-color:", ";}", " &:active{background-color:", ";}"], backgroundColor, hoverBackgroundColor, reactTheming.focusStyles({
398
379
  theme: props.theme,
399
- hue: focusColor,
400
- shade: props.alertType === 'info' ? 600 : 800
380
+ color: {
381
+ hue: focusColor,
382
+ shade: props.alertType === 'info' ? 600 : 800
383
+ }
401
384
  }), activeBackgroundColor);
402
385
  }
403
386
  function sizeStyles$1(props) {
@@ -407,7 +390,7 @@ function sizeStyles$1(props) {
407
390
  }
408
391
  const StyledGlobalAlertButton = styled__default.default(reactButtons.Button).attrs({
409
392
  'data-garden-id': COMPONENT_ID$3,
410
- 'data-garden-version': '9.0.0-next.1',
393
+ 'data-garden-version': '9.0.0-next.11',
411
394
  focusInset: false,
412
395
  isDanger: false,
413
396
  isLink: false,
@@ -426,7 +409,7 @@ StyledGlobalAlertButton.defaultProps = {
426
409
  const COMPONENT_ID$2 = 'notifications.global-alert.content';
427
410
  const StyledGlobalAlertContent = styled__default.default.div.attrs({
428
411
  'data-garden-id': COMPONENT_ID$2,
429
- 'data-garden-version': '9.0.0-next.1'
412
+ 'data-garden-version': '9.0.0-next.11'
430
413
  }).withConfig({
431
414
  displayName: "StyledGlobalAlertContent",
432
415
  componentId: "sc-rept0u-0"
@@ -442,15 +425,9 @@ const sizeStyles = props => {
442
425
  const marginHorizontal = `${props.theme.space.base * 2}px`;
443
426
  return styled.css(["margin-top:", ";margin-", ":", ";width:", ";height:", ";"], marginTop, props.theme.rtl ? 'left' : 'right', marginHorizontal, size, size);
444
427
  };
445
- const StyledGlobalAlertIcon = styled__default.default(_ref => {
446
- let {
447
- children,
448
- ...props
449
- } = _ref;
450
- return React__namespace.default.cloneElement(React.Children.only(children), props);
451
- }).attrs({
428
+ const StyledGlobalAlertIcon = styled__default.default(reactTheming.StyledBaseIcon).attrs({
452
429
  'data-garden-id': COMPONENT_ID$1,
453
- 'data-garden-version': '9.0.0-next.1'
430
+ 'data-garden-version': '9.0.0-next.11'
454
431
  }).withConfig({
455
432
  displayName: "StyledGlobalAlertIcon",
456
433
  componentId: "sc-84ne9k-0"
@@ -468,17 +445,17 @@ const colorStyles = props => {
468
445
  color = props.theme.palette.white;
469
446
  break;
470
447
  case 'warning':
471
- color = reactTheming.getColor('warningHue', 900, props.theme);
448
+ color = reactTheming.getColorV8('warningHue', 900, props.theme);
472
449
  break;
473
450
  case 'info':
474
- color = reactTheming.getColor('primaryHue', 800, props.theme);
451
+ color = reactTheming.getColorV8('primaryHue', 800, props.theme);
475
452
  break;
476
453
  }
477
454
  return styled.css(["color:", ";"], color);
478
455
  };
479
456
  const StyledGlobalAlertTitle = styled__default.default.div.attrs({
480
457
  'data-garden-id': COMPONENT_ID,
481
- 'data-garden-version': '9.0.0-next.1'
458
+ 'data-garden-version': '9.0.0-next.11'
482
459
  }).withConfig({
483
460
  displayName: "StyledGlobalAlertTitle",
484
461
  componentId: "sc-10clqbo-0"
@@ -608,58 +585,15 @@ const useNotificationsContext = () => {
608
585
  return React.useContext(NotificationsContext);
609
586
  };
610
587
 
611
- const Alert = React__namespace.default.forwardRef((_ref, ref) => {
612
- let {
613
- role,
614
- ...props
615
- } = _ref;
616
- const hue = validationHues[props.type];
617
- const Icon = validationIcons[props.type];
618
- return React__namespace.default.createElement(NotificationsContext.Provider, {
619
- value: hue
620
- }, React__namespace.default.createElement(StyledAlert, _extends$6({
621
- ref: ref,
622
- hue: hue,
623
- role: role === undefined ? 'alert' : role
624
- }, props), React__namespace.default.createElement(StyledIcon, {
625
- hue: hue
626
- }, React__namespace.default.createElement(Icon, null)), props.children));
627
- });
628
- Alert.displayName = 'Alert';
629
- Alert.propTypes = {
630
- type: PropTypes__default.default.oneOf(TYPE).isRequired
631
- };
632
-
633
- const Notification = React.forwardRef((_ref, ref) => {
634
- let {
635
- role,
636
- ...props
637
- } = _ref;
638
- const Icon = props.type ? validationIcons[props.type] : SvgInfoStroke;
639
- const hue = props.type && validationHues[props.type];
640
- return React__namespace.default.createElement(StyledNotification, _extends$6({
641
- ref: ref,
642
- type: props.type,
643
- isFloating: true
644
- }, props, {
645
- role: role === undefined ? 'status' : role
646
- }), props.type && React__namespace.default.createElement(StyledIcon, {
647
- hue: hue
648
- }, React__namespace.default.createElement(Icon, null)), props.children);
649
- });
650
- Notification.displayName = 'Notification';
651
- Notification.propTypes = {
652
- type: PropTypes__default.default.oneOf(TYPE)
653
- };
588
+ const Title = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledTitle, Object.assign({
589
+ ref: ref
590
+ }, props)));
591
+ Title.displayName = 'Title';
654
592
 
655
- const Well = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledWell, _extends$6({
593
+ const Paragraph = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledParagraph, Object.assign({
656
594
  ref: ref
657
595
  }, props)));
658
- Well.displayName = 'Well';
659
- Well.propTypes = {
660
- isRecessed: PropTypes__default.default.bool,
661
- isFloating: PropTypes__default.default.bool
662
- };
596
+ Paragraph.displayName = 'Paragraph';
663
597
 
664
598
  var _path$1;
665
599
  function _extends$1() { _extends$1 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
@@ -681,7 +615,7 @@ var SvgXStroke$1 = function SvgXStroke(props) {
681
615
  const Close = React__namespace.default.forwardRef((props, ref) => {
682
616
  const ariaLabel = reactTheming.useText(Close, props, 'aria-label', 'Close');
683
617
  const hue = useNotificationsContext();
684
- return React__namespace.default.createElement(StyledClose, _extends$6({
618
+ return React__namespace.default.createElement(StyledClose, Object.assign({
685
619
  ref: ref,
686
620
  hue: hue,
687
621
  "aria-label": ariaLabel
@@ -689,15 +623,69 @@ const Close = React__namespace.default.forwardRef((props, ref) => {
689
623
  });
690
624
  Close.displayName = 'Close';
691
625
 
692
- const Paragraph = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledParagraph, _extends$6({
693
- ref: ref
694
- }, props)));
695
- Paragraph.displayName = 'Paragraph';
626
+ const AlertComponent = React__namespace.default.forwardRef((_ref, ref) => {
627
+ let {
628
+ role,
629
+ ...props
630
+ } = _ref;
631
+ const hue = validationHues[props.type];
632
+ const Icon = validationIcons[props.type];
633
+ return React__namespace.default.createElement(NotificationsContext.Provider, {
634
+ value: hue
635
+ }, React__namespace.default.createElement(StyledAlert, Object.assign({
636
+ ref: ref,
637
+ hue: hue,
638
+ role: role === undefined ? 'alert' : role
639
+ }, props), React__namespace.default.createElement(StyledIcon, {
640
+ $hue: hue
641
+ }, React__namespace.default.createElement(Icon, null)), props.children));
642
+ });
643
+ AlertComponent.displayName = 'Alert';
644
+ AlertComponent.propTypes = {
645
+ type: PropTypes__default.default.oneOf(TYPE).isRequired
646
+ };
647
+ const Alert = AlertComponent;
648
+ Alert.Close = Close;
649
+ Alert.Paragraph = Paragraph;
650
+ Alert.Title = Title;
651
+
652
+ const NotificationComponent = React.forwardRef((_ref, ref) => {
653
+ let {
654
+ children,
655
+ type,
656
+ ...props
657
+ } = _ref;
658
+ const Icon = type ? validationIcons[type] : SvgInfoStroke;
659
+ const hue = type && validationHues[type];
660
+ return React__namespace.default.createElement(StyledNotification, Object.assign({
661
+ ref: ref,
662
+ type: type,
663
+ isFloating: true,
664
+ role: "alert"
665
+ }, props), type && React__namespace.default.createElement(StyledIcon, {
666
+ $hue: hue
667
+ }, React__namespace.default.createElement(Icon, null)), children);
668
+ });
669
+ NotificationComponent.displayName = 'Notification';
670
+ NotificationComponent.propTypes = {
671
+ type: PropTypes__default.default.oneOf(TYPE)
672
+ };
673
+ const Notification = NotificationComponent;
674
+ Notification.Close = Close;
675
+ Notification.Paragraph = Paragraph;
676
+ Notification.Title = Title;
696
677
 
697
- const Title = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledTitle, _extends$6({
678
+ const WellComponent = React__namespace.default.forwardRef((props, ref) => React__namespace.default.createElement(StyledWell, Object.assign({
698
679
  ref: ref
699
680
  }, props)));
700
- Title.displayName = 'Title';
681
+ WellComponent.displayName = 'Well';
682
+ WellComponent.propTypes = {
683
+ isRecessed: PropTypes__default.default.bool,
684
+ isFloating: PropTypes__default.default.bool
685
+ };
686
+ const Well = WellComponent;
687
+ Well.Paragraph = Paragraph;
688
+ Well.Title = Title;
701
689
 
702
690
  const getInitialState = () => {
703
691
  return {
@@ -971,7 +959,7 @@ const ToastSlot = _ref => {
971
959
  }
972
960
  return index >= limit;
973
961
  }, [limit, placement, toasts.length]);
974
- return React__namespace.default.createElement(StyledTransitionContainer, _extends$6({
962
+ return React__namespace.default.createElement(StyledTransitionContainer, Object.assign({
975
963
  key: placement,
976
964
  toastPlacement: placement,
977
965
  toastZIndex: zIndex,
@@ -1016,7 +1004,7 @@ const ToastProvider = _ref => {
1016
1004
  if (placement === 'bottom' || placement === 'bottom-start' || placement === 'bottom-end') {
1017
1005
  matchingToasts = matchingToasts.reverse();
1018
1006
  }
1019
- return React__namespace.default.createElement(ToastSlot, _extends$6({
1007
+ return React__namespace.default.createElement(ToastSlot, Object.assign({
1020
1008
  placement: placement,
1021
1009
  toasts: matchingToasts,
1022
1010
  zIndex: zIndex,
@@ -1050,7 +1038,7 @@ const GlobalAlertButton = React.forwardRef((_ref, ref) => {
1050
1038
  const {
1051
1039
  type
1052
1040
  } = useGlobalAlertContext();
1053
- return React__namespace.default.createElement(StyledGlobalAlertButton, _extends$6({
1041
+ return React__namespace.default.createElement(StyledGlobalAlertButton, Object.assign({
1054
1042
  ref: ref,
1055
1043
  alertType: type
1056
1044
  }, props, {
@@ -1085,7 +1073,7 @@ const GlobalAlertClose = React.forwardRef((props, ref) => {
1085
1073
  type
1086
1074
  } = useGlobalAlertContext();
1087
1075
  const label = reactTheming.useText(GlobalAlertClose, props, 'aria-label', 'Close');
1088
- return React__namespace.default.createElement(StyledGlobalAlertClose, _extends$6({
1076
+ return React__namespace.default.createElement(StyledGlobalAlertClose, Object.assign({
1089
1077
  ref: ref,
1090
1078
  alertType: type
1091
1079
  }, props), React__namespace.default.createElement(SvgXStroke, {
@@ -1096,7 +1084,7 @@ const GlobalAlertClose = React.forwardRef((props, ref) => {
1096
1084
  GlobalAlertClose.displayName = 'GlobalAlert.Close';
1097
1085
 
1098
1086
  const GlobalAlertContent = React.forwardRef((props, ref) => {
1099
- return React__namespace.default.createElement(StyledGlobalAlertContent, _extends$6({
1087
+ return React__namespace.default.createElement(StyledGlobalAlertContent, Object.assign({
1100
1088
  ref: ref
1101
1089
  }, props));
1102
1090
  });
@@ -1106,7 +1094,7 @@ const GlobalAlertTitle = React.forwardRef((props, ref) => {
1106
1094
  const {
1107
1095
  type
1108
1096
  } = useGlobalAlertContext();
1109
- return React__namespace.default.createElement(StyledGlobalAlertTitle, _extends$6({
1097
+ return React__namespace.default.createElement(StyledGlobalAlertTitle, Object.assign({
1110
1098
  alertType: type,
1111
1099
  ref: ref
1112
1100
  }, props));
@@ -1121,20 +1109,21 @@ const GlobalAlertComponent = React.forwardRef((_ref, ref) => {
1121
1109
  type,
1122
1110
  ...props
1123
1111
  } = _ref;
1112
+ const icon = {
1113
+ success: React__namespace.default.createElement(SvgCheckCircleStroke, null),
1114
+ error: React__namespace.default.createElement(SvgAlertErrorStroke, null),
1115
+ warning: React__namespace.default.createElement(SvgAlertWarningStroke, null),
1116
+ info: React__namespace.default.createElement(SvgInfoStroke, null)
1117
+ }[type];
1124
1118
  return React__namespace.default.createElement(GlobalAlertContext.Provider, {
1125
1119
  value: React.useMemo(() => ({
1126
1120
  type
1127
1121
  }), [type])
1128
- }, React__namespace.default.createElement(StyledGlobalAlert, _extends$6({
1122
+ }, React__namespace.default.createElement(StyledGlobalAlert, Object.assign({
1129
1123
  ref: ref,
1130
1124
  role: "status",
1131
1125
  alertType: type
1132
- }, props), {
1133
- success: React__namespace.default.createElement(StyledGlobalAlertIcon, null, React__namespace.default.createElement(SvgCheckCircleStroke, null)),
1134
- error: React__namespace.default.createElement(StyledGlobalAlertIcon, null, React__namespace.default.createElement(SvgAlertErrorStroke, null)),
1135
- warning: React__namespace.default.createElement(StyledGlobalAlertIcon, null, React__namespace.default.createElement(SvgAlertWarningStroke, null)),
1136
- info: React__namespace.default.createElement(StyledGlobalAlertIcon, null, React__namespace.default.createElement(SvgInfoStroke, null))
1137
- }[type], props.children));
1126
+ }, props), React__namespace.default.createElement(StyledGlobalAlertIcon, null, icon), props.children));
1138
1127
  });
1139
1128
  GlobalAlertComponent.displayName = 'GlobalAlert';
1140
1129
  const GlobalAlert = GlobalAlertComponent;
@@ -6,7 +6,15 @@
6
6
  */
7
7
  import React from 'react';
8
8
  import { IAlertProps } from '../types';
9
+ import { Title } from './content/Title';
10
+ import { Paragraph } from './content/Paragraph';
11
+ import { Close } from './content/Close';
12
+ export declare const AlertComponent: React.ForwardRefExoticComponent<IAlertProps & React.RefAttributes<HTMLDivElement>>;
9
13
  /**
10
14
  * @extends HTMLAttributes<HTMLDivElement>
11
15
  */
12
- export declare const Alert: React.ForwardRefExoticComponent<IAlertProps & React.RefAttributes<HTMLDivElement>>;
16
+ export declare const Alert: React.ForwardRefExoticComponent<IAlertProps & React.RefAttributes<HTMLDivElement>> & {
17
+ Close: typeof Close;
18
+ Paragraph: typeof Paragraph;
19
+ Title: typeof Title;
20
+ };