@razorpay/blade 11.2.1 → 11.3.1

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 (45) hide show
  1. package/build/lib/native/components/Toast/Toast.native.js +7 -0
  2. package/build/lib/native/components/Toast/Toast.native.js.map +1 -0
  3. package/build/lib/native/components/Toast/ToastContainer.native.js +7 -0
  4. package/build/lib/native/components/Toast/ToastContainer.native.js.map +1 -0
  5. package/build/lib/native/components/Toast/useToast.js +9 -0
  6. package/build/lib/native/components/Toast/useToast.js.map +1 -0
  7. package/build/lib/native/components/index.js +2 -0
  8. package/build/lib/native/components/index.js.map +1 -1
  9. package/build/lib/native/utils/metaAttribute/metaConstants.js +1 -1
  10. package/build/lib/native/utils/metaAttribute/metaConstants.js.map +1 -1
  11. package/build/lib/web/development/components/Toast/Toast.web.js +149 -0
  12. package/build/lib/web/development/components/Toast/Toast.web.js.map +1 -0
  13. package/build/lib/web/development/components/Toast/ToastContainer.web.js +309 -0
  14. package/build/lib/web/development/components/Toast/ToastContainer.web.js.map +1 -0
  15. package/build/lib/web/development/components/Toast/constants.js +26 -0
  16. package/build/lib/web/development/components/Toast/constants.js.map +1 -0
  17. package/build/lib/web/development/components/Toast/index.js +4 -0
  18. package/build/lib/web/development/components/Toast/index.js.map +1 -0
  19. package/build/lib/web/development/components/Toast/types.js +2 -0
  20. package/build/lib/web/development/components/Toast/types.js.map +1 -0
  21. package/build/lib/web/development/components/Toast/useToast.js +66 -0
  22. package/build/lib/web/development/components/Toast/useToast.js.map +1 -0
  23. package/build/lib/web/development/components/index.js +3 -0
  24. package/build/lib/web/development/components/index.js.map +1 -1
  25. package/build/lib/web/development/utils/metaAttribute/metaConstants.js +2 -0
  26. package/build/lib/web/development/utils/metaAttribute/metaConstants.js.map +1 -1
  27. package/build/lib/web/production/components/Toast/Toast.web.js +149 -0
  28. package/build/lib/web/production/components/Toast/Toast.web.js.map +1 -0
  29. package/build/lib/web/production/components/Toast/ToastContainer.web.js +309 -0
  30. package/build/lib/web/production/components/Toast/ToastContainer.web.js.map +1 -0
  31. package/build/lib/web/production/components/Toast/constants.js +26 -0
  32. package/build/lib/web/production/components/Toast/constants.js.map +1 -0
  33. package/build/lib/web/production/components/Toast/index.js +4 -0
  34. package/build/lib/web/production/components/Toast/index.js.map +1 -0
  35. package/build/lib/web/production/components/Toast/types.js +2 -0
  36. package/build/lib/web/production/components/Toast/types.js.map +1 -0
  37. package/build/lib/web/production/components/Toast/useToast.js +66 -0
  38. package/build/lib/web/production/components/Toast/useToast.js.map +1 -0
  39. package/build/lib/web/production/components/index.js +3 -0
  40. package/build/lib/web/production/components/index.js.map +1 -1
  41. package/build/lib/web/production/utils/metaAttribute/metaConstants.js +2 -0
  42. package/build/lib/web/production/utils/metaAttribute/metaConstants.js.map +1 -1
  43. package/build/types/components/index.d.ts +71 -1
  44. package/build/types/components/index.native.d.ts +71 -1
  45. package/package.json +3 -1
@@ -0,0 +1,309 @@
1
+ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
+ import { useToaster, resolveValue } from 'react-hot-toast';
5
+ import React__default from 'react';
6
+ import styled from 'styled-components';
7
+ import { PEEKS, MAX_TOASTS, MIN_TOAST_MOBILE, MIN_TOAST_DESKTOP, CONTAINER_GUTTER_MOBILE, CONTAINER_GUTTER_DESKTOP, GUTTER, SCALE_FACTOR, PEEK_GUTTER, TOAST_Z_INDEX, TOAST_MAX_WIDTH } from './constants.js';
8
+ import '../../utils/index.js';
9
+ import '../Box/BaseBox/index.js';
10
+ import { useIsMobile } from '../../utils/useIsMobile.js';
11
+ import '../../utils/metaAttribute/index.js';
12
+ import { jsxs, jsx } from 'react/jsx-runtime';
13
+ import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
14
+ import { makeMotionTime } from '../../utils/makeMotionTime/makeMotionTime.web.js';
15
+ import useTheme from '../BladeProvider/useTheme.js';
16
+ import { makeSize } from '../../utils/makeSize/makeSize.js';
17
+ import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
18
+ import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
19
+
20
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22
+ var StyledToastWrapper = /*#__PURE__*/styled(BaseBox).withConfig({
23
+ displayName: "ToastContainerweb__StyledToastWrapper",
24
+ componentId: "mv9fjf-0"
25
+ })(function (_ref) {
26
+ var isVisible = _ref.isVisible,
27
+ index = _ref.index,
28
+ isExpanded = _ref.isExpanded,
29
+ isPromotional = _ref.isPromotional;
30
+ var opacity = isVisible ? 1 : 0;
31
+ // Only make the PEEKING and MAX_TOASTS toasts visible,
32
+ // Every other toasts should be hidden
33
+ if (index < PEEKS + MAX_TOASTS) {
34
+ opacity = 1;
35
+ } else if (isPromotional || isExpanded) {
36
+ opacity = 1;
37
+ } else {
38
+ opacity = 0;
39
+ }
40
+ return {
41
+ '& > *': {
42
+ pointerEvents: opacity === 1 ? 'auto' : 'none'
43
+ },
44
+ opacity: opacity
45
+ };
46
+ });
47
+ var getPositionStyle = function getPositionStyle(position, offset, scale, theme) {
48
+ var top = position.includes('top');
49
+ var verticalStyle = top ? {
50
+ top: 0
51
+ } : {
52
+ bottom: 0
53
+ };
54
+ var horizontalStyle = position.includes('center') ? {
55
+ justifyContent: 'center'
56
+ } : position.includes('right') ? {
57
+ justifyContent: 'flex-end'
58
+ } : {};
59
+ return _objectSpread(_objectSpread({
60
+ left: 0,
61
+ right: 0,
62
+ display: 'flex',
63
+ position: 'absolute',
64
+ transformOrigin: 'center',
65
+ transition: "".concat(makeMotionTime(theme.motion.duration.gentle), " ").concat(theme.motion.easing.standard.effective),
66
+ transitionProperty: 'transform, opacity, height',
67
+ transform: "translateY(".concat(offset * (top ? 1 : -1), "px) scale(").concat(scale, ")")
68
+ }, verticalStyle), horizontalStyle);
69
+ };
70
+ function isPromotionalToast(toast) {
71
+ // @ts-expect-error
72
+ return toast.type == 'promotional';
73
+ }
74
+ var Toaster = function Toaster(_ref2) {
75
+ var _promoToasts$, _promoToasts$0$height, _promoToasts$2;
76
+ var reverseOrder = _ref2.reverseOrder,
77
+ _ref2$position = _ref2.position,
78
+ position = _ref2$position === void 0 ? 'top-center' : _ref2$position,
79
+ toastOptions = _ref2.toastOptions,
80
+ containerClassName = _ref2.containerClassName;
81
+ var _useToaster = useToaster(toastOptions),
82
+ toasts = _useToaster.toasts,
83
+ handlers = _useToaster.handlers;
84
+ var _useTheme = useTheme(),
85
+ theme = _useTheme.theme;
86
+ var _React$useState = React__default.useState(0),
87
+ _React$useState2 = _slicedToArray(_React$useState, 2),
88
+ frontToastHeight = _React$useState2[0],
89
+ setFrontToastHeight = _React$useState2[1];
90
+ var _React$useState3 = React__default.useState(false),
91
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
92
+ hasManuallyExpanded = _React$useState4[0],
93
+ setHasManuallyExpanded = _React$useState4[1];
94
+ var isMobile = useIsMobile();
95
+ var minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;
96
+ var containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;
97
+ var infoToasts = React__default.useMemo(function () {
98
+ return toasts.filter(function (toast) {
99
+ return !isPromotionalToast(toast);
100
+ });
101
+ }, [toasts]);
102
+ var promoToasts = React__default.useMemo(function () {
103
+ return toasts.filter(function (toast) {
104
+ return isPromotionalToast(toast);
105
+ });
106
+ }, [toasts]);
107
+
108
+ // always keep promo toasts at the bottom of the stack
109
+ var recomputedToasts = React__default.useMemo(function () {
110
+ return [].concat(_toConsumableArray(infoToasts), _toConsumableArray(promoToasts));
111
+ }, [infoToasts, promoToasts]);
112
+ var hasPromoToast = promoToasts.length > 0 && ((_promoToasts$ = promoToasts[0]) === null || _promoToasts$ === void 0 ? void 0 : _promoToasts$.visible);
113
+ var promoToastHeight = (_promoToasts$0$height = (_promoToasts$2 = promoToasts[0]) === null || _promoToasts$2 === void 0 ? void 0 : _promoToasts$2.height) !== null && _promoToasts$0$height !== void 0 ? _promoToasts$0$height : 0;
114
+ var isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;
115
+ React__default.useLayoutEffect(function () {
116
+ // find the first toast which is visible
117
+ var firstToast = infoToasts.find(function (t, index) {
118
+ return t.visible && index === 0;
119
+ });
120
+ if (firstToast) {
121
+ var _firstToast$height;
122
+ setFrontToastHeight((_firstToast$height = firstToast.height) !== null && _firstToast$height !== void 0 ? _firstToast$height : 0);
123
+ }
124
+ }, [infoToasts]);
125
+
126
+ // calculate total height of all toasts
127
+ var totalHeight = React__default.useMemo(function () {
128
+ return recomputedToasts
129
+ // only consider visible recomputedToasts
130
+ .filter(function (toast) {
131
+ return toast.visible;
132
+ }).reduce(function (prevHeight, toast) {
133
+ var _toast$height;
134
+ return prevHeight + ((_toast$height = toast.height) !== null && _toast$height !== void 0 ? _toast$height : 0);
135
+ }, 0) + recomputedToasts.length * GUTTER;
136
+ }, [recomputedToasts]);
137
+
138
+ // Stacking logic explained in detail:
139
+ // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba
140
+ //
141
+ // 1. 3 toasts can be stacked on top of each other
142
+ // 2. After 3 toasts, the toasts will be scaled down and peek from behind
143
+ // 3. There can be maximum of 3 toasts peeking from behind
144
+ // 4. After 3 peeking toasts, the toasts will be hidden
145
+ // 5. If there is a promo toast, all toasts will be lifted up
146
+ // 6. Promo toasts will always be on the bottom
147
+ var calculateYPosition = React__default.useCallback(function (_ref3) {
148
+ var toast = _ref3.toast,
149
+ index = _ref3.index;
150
+ // find the current toast index
151
+ var toastIndex = infoToasts.findIndex(function (t) {
152
+ return t.id === toast.id;
153
+ });
154
+ // number of toasts before this toast
155
+ var toastsBefore = infoToasts.filter(function (toast, i) {
156
+ return i < toastIndex && toast.visible;
157
+ }).length;
158
+ var scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);
159
+ // first toast should always have a scale of 1
160
+ if (index < MAX_TOASTS) {
161
+ scale = 1;
162
+ }
163
+
164
+ // y position of toast,
165
+ var offset = infoToasts.filter(function (toast) {
166
+ return toast.visible;
167
+ }).slice(0, toastsBefore).reduce(function (y, toast) {
168
+ // if the toast is expanded, add the height of the toast + gutter
169
+ if (isExpanded) {
170
+ var _toast$height2;
171
+ return y + ((_toast$height2 = toast.height) !== null && _toast$height2 !== void 0 ? _toast$height2 : 0) + GUTTER;
172
+ }
173
+ // if the toast is not expanded, add only the peek gutter
174
+ return y + PEEK_GUTTER;
175
+ }, 0);
176
+
177
+ // lift all info toasts up if there is a promo toast
178
+ if (hasPromoToast) {
179
+ offset += GUTTER + promoToastHeight;
180
+ }
181
+
182
+ // if this is a promo toast, then put it at the bottom and force the scale to 1
183
+ if (isPromotionalToast(toast)) {
184
+ offset = 0;
185
+ scale = 1;
186
+ }
187
+ return {
188
+ offset: offset,
189
+ scale: isExpanded ? 1 : scale
190
+ };
191
+ }, [hasPromoToast, infoToasts, isExpanded, promoToastHeight]);
192
+ var handleMouseEnter = function handleMouseEnter() {
193
+ if (isMobile) return;
194
+ setHasManuallyExpanded(true);
195
+ handlers.startPause();
196
+ };
197
+ var handleMouseLeave = function handleMouseLeave() {
198
+ if (isMobile) return;
199
+ setHasManuallyExpanded(false);
200
+ handlers.endPause();
201
+ };
202
+ var handleToastClick = function handleToastClick() {
203
+ if (!isMobile) return;
204
+ setHasManuallyExpanded(function (prev) {
205
+ var next = !prev;
206
+ if (next) {
207
+ handlers.startPause();
208
+ } else {
209
+ handlers.endPause();
210
+ }
211
+ return next;
212
+ });
213
+ };
214
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
215
+ position: "fixed",
216
+ zIndex: TOAST_Z_INDEX,
217
+ top: makeSize(containerGutter),
218
+ left: makeSize(containerGutter),
219
+ right: makeSize(containerGutter),
220
+ bottom: makeSize(containerGutter),
221
+ width: "calc(100% - ".concat(containerGutter * 2, "px)"),
222
+ maxWidth: makeSize(TOAST_MAX_WIDTH),
223
+ pointerEvents: "none",
224
+ className: containerClassName
225
+ }, metaAttribute({
226
+ name: MetaConstants.ToastContainer
227
+ })), {}, {
228
+ children: [/*#__PURE__*/jsx(BaseBox, _objectSpread({
229
+ position: "absolute",
230
+ bottom: "".concat(promoToastHeight, "px"),
231
+ left: "0px",
232
+ width: "100%",
233
+ pointerEvents: isExpanded ? 'all' : 'none',
234
+ height: makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight),
235
+ zIndex: -100,
236
+ onMouseEnter: handleMouseEnter,
237
+ onMouseLeave: handleMouseLeave,
238
+ onClick: handleToastClick
239
+ }, metaAttribute({
240
+ testID: 'toast-mouseover-container'
241
+ }))), recomputedToasts.map(function (toast, index) {
242
+ var _toast$position;
243
+ var toastPosition = (_toast$position = toast.position) !== null && _toast$position !== void 0 ? _toast$position : position;
244
+ var isPromotional = isPromotionalToast(toast);
245
+ var _calculateYPosition = calculateYPosition({
246
+ toast: toast,
247
+ isExpanded: isExpanded,
248
+ reverseOrder: reverseOrder,
249
+ index: index
250
+ }),
251
+ offset = _calculateYPosition.offset,
252
+ scale = _calculateYPosition.scale;
253
+ var positionStyle = getPositionStyle(toastPosition, offset, scale, theme);
254
+ // recalculate height of toast
255
+ var ref = function ref(el) {
256
+ if (el && typeof toast.height !== 'number') {
257
+ var height = el.getBoundingClientRect().height;
258
+ handlers.updateHeight(toast.id, height);
259
+ }
260
+ };
261
+ var toastHeight = toast.height;
262
+ if (index > MAX_TOASTS - 1 && !isPromotional) {
263
+ toastHeight = frontToastHeight;
264
+ }
265
+ if (isExpanded) {
266
+ toastHeight = toast.height;
267
+ }
268
+ return /*#__PURE__*/jsx(StyledToastWrapper, {
269
+ index: index,
270
+ ref: ref,
271
+ isExpanded: isExpanded,
272
+ isVisible: toast.visible,
273
+ isPromotional: isPromotional,
274
+ style: _objectSpread(_objectSpread({}, positionStyle), {}, {
275
+ zIndex: -1 * index,
276
+ height: toastHeight,
277
+ overflow: 'hidden'
278
+ }),
279
+ onMouseEnter: function onMouseEnter() {
280
+ if (isPromotional) return;
281
+ handleMouseEnter();
282
+ },
283
+ onMouseLeave: function onMouseLeave() {
284
+ if (isPromotional) return;
285
+ handleMouseLeave();
286
+ },
287
+ onClick: function onClick() {
288
+ if (isPromotional) return;
289
+ handleToastClick();
290
+ },
291
+ children: /*#__PURE__*/jsx(BaseBox, {
292
+ height: "fit-content",
293
+ width: "100%",
294
+ children: resolveValue(toast.message, _objectSpread(_objectSpread({}, toast), {}, {
295
+ index: index
296
+ }))
297
+ })
298
+ }, toast.id);
299
+ })]
300
+ }));
301
+ };
302
+ var ToastContainer = function ToastContainer() {
303
+ return /*#__PURE__*/jsx(Toaster, {
304
+ position: "bottom-left"
305
+ });
306
+ };
307
+
308
+ export { ToastContainer };
309
+ //# sourceMappingURL=ToastContainer.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToastContainer.web.js","sources":["../../../../../../src/components/Toast/ToastContainer.web.tsx"],"sourcesContent":["import type { ToastPosition, ToasterProps, Toast } from 'react-hot-toast';\nimport { resolveValue, useToaster } from 'react-hot-toast';\nimport React from 'react';\nimport styled from 'styled-components';\nimport {\n PEEKS,\n MAX_TOASTS,\n SCALE_FACTOR,\n GUTTER,\n PEEK_GUTTER,\n TOAST_MAX_WIDTH,\n TOAST_Z_INDEX,\n MIN_TOAST_MOBILE,\n MIN_TOAST_DESKTOP,\n CONTAINER_GUTTER_MOBILE,\n CONTAINER_GUTTER_DESKTOP,\n} from './constants';\nimport { makeMotionTime, makeSize, useTheme } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { Theme } from '~components/BladeProvider';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\n\ntype CalculateYPositionProps = {\n toast: Toast;\n index: number;\n isExpanded: boolean;\n reverseOrder?: boolean;\n};\n\nconst StyledToastWrapper = styled(BaseBox)<{\n isVisible: boolean;\n index: number;\n isExpanded: boolean;\n isPromotional: boolean;\n}>(({ isVisible, index, isExpanded, isPromotional }) => {\n let opacity = isVisible ? 1 : 0;\n // Only make the PEEKING and MAX_TOASTS toasts visible,\n // Every other toasts should be hidden\n if (index < PEEKS + MAX_TOASTS) {\n opacity = 1;\n } else if (isPromotional || isExpanded) {\n opacity = 1;\n } else {\n opacity = 0;\n }\n\n return {\n '& > *': {\n pointerEvents: opacity === 1 ? 'auto' : 'none',\n },\n opacity,\n };\n});\n\nconst getPositionStyle = (\n position: ToastPosition,\n offset: number,\n scale: number,\n theme: Theme,\n): React.CSSProperties => {\n const top = position.includes('top');\n const verticalStyle: React.CSSProperties = top ? { top: 0 } : { bottom: 0 };\n const horizontalStyle: React.CSSProperties = position.includes('center')\n ? {\n justifyContent: 'center',\n }\n : position.includes('right')\n ? {\n justifyContent: 'flex-end',\n }\n : {};\n\n return {\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transformOrigin: 'center',\n transition: `${makeMotionTime(theme.motion.duration.gentle)} ${\n theme.motion.easing.standard.effective\n }`,\n transitionProperty: 'transform, opacity, height',\n transform: `translateY(${offset * (top ? 1 : -1)}px) scale(${scale})`,\n ...verticalStyle,\n ...horizontalStyle,\n };\n};\n\nfunction isPromotionalToast(toast: Toast): boolean {\n // @ts-expect-error\n return toast.type == 'promotional';\n}\n\nconst Toaster: React.FC<ToasterProps> = ({\n reverseOrder,\n position = 'top-center',\n toastOptions,\n containerClassName,\n}) => {\n const { toasts, handlers } = useToaster(toastOptions);\n const { theme } = useTheme();\n const [frontToastHeight, setFrontToastHeight] = React.useState(0);\n const [hasManuallyExpanded, setHasManuallyExpanded] = React.useState(false);\n const isMobile = useIsMobile();\n const minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;\n const containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;\n\n const infoToasts = React.useMemo(() => toasts.filter((toast) => !isPromotionalToast(toast)), [\n toasts,\n ]);\n const promoToasts = React.useMemo(() => toasts.filter((toast) => isPromotionalToast(toast)), [\n toasts,\n ]);\n\n // always keep promo toasts at the bottom of the stack\n const recomputedToasts = React.useMemo(() => [...infoToasts, ...promoToasts], [\n infoToasts,\n promoToasts,\n ]);\n\n const hasPromoToast = promoToasts.length > 0 && promoToasts[0]?.visible;\n const promoToastHeight = promoToasts[0]?.height ?? 0;\n const isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;\n\n React.useLayoutEffect(() => {\n // find the first toast which is visible\n const firstToast = infoToasts.find((t, index) => t.visible && index === 0);\n if (firstToast) {\n setFrontToastHeight(firstToast.height ?? 0);\n }\n }, [infoToasts]);\n\n // calculate total height of all toasts\n const totalHeight = React.useMemo(() => {\n return (\n recomputedToasts\n // only consider visible recomputedToasts\n .filter((toast) => toast.visible)\n .reduce((prevHeight, toast) => prevHeight + (toast.height ?? 0), 0) +\n recomputedToasts.length * GUTTER\n );\n }, [recomputedToasts]);\n\n // Stacking logic explained in detail:\n // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba\n //\n // 1. 3 toasts can be stacked on top of each other\n // 2. After 3 toasts, the toasts will be scaled down and peek from behind\n // 3. There can be maximum of 3 toasts peeking from behind\n // 4. After 3 peeking toasts, the toasts will be hidden\n // 5. If there is a promo toast, all toasts will be lifted up\n // 6. Promo toasts will always be on the bottom\n const calculateYPosition = React.useCallback(\n ({ toast, index }: CalculateYPositionProps) => {\n // find the current toast index\n const toastIndex = infoToasts.findIndex((t) => t.id === toast.id);\n // number of toasts before this toast\n const toastsBefore = infoToasts.filter((toast, i) => i < toastIndex && toast.visible).length;\n\n let scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);\n // first toast should always have a scale of 1\n if (index < MAX_TOASTS) {\n scale = 1;\n }\n\n // y position of toast,\n let offset = infoToasts\n .filter((toast) => toast.visible)\n .slice(0, toastsBefore)\n .reduce((y, toast) => {\n // if the toast is expanded, add the height of the toast + gutter\n if (isExpanded) {\n return y + (toast.height ?? 0) + GUTTER;\n }\n // if the toast is not expanded, add only the peek gutter\n return y + PEEK_GUTTER;\n }, 0);\n\n // lift all info toasts up if there is a promo toast\n if (hasPromoToast) {\n offset += GUTTER + promoToastHeight;\n }\n\n // if this is a promo toast, then put it at the bottom and force the scale to 1\n if (isPromotionalToast(toast)) {\n offset = 0;\n scale = 1;\n }\n\n return { offset, scale: isExpanded ? 1 : scale };\n },\n [hasPromoToast, infoToasts, isExpanded, promoToastHeight],\n );\n\n const handleMouseEnter = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(true);\n handlers.startPause();\n };\n\n const handleMouseLeave = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(false);\n handlers.endPause();\n };\n\n const handleToastClick = (): void => {\n if (!isMobile) return;\n setHasManuallyExpanded((prev) => {\n const next = !prev;\n if (next) {\n handlers.startPause();\n } else {\n handlers.endPause();\n }\n return next;\n });\n };\n\n return (\n <BaseBox\n position=\"fixed\"\n zIndex={TOAST_Z_INDEX}\n top={makeSize(containerGutter)}\n left={makeSize(containerGutter)}\n right={makeSize(containerGutter)}\n bottom={makeSize(containerGutter)}\n width={`calc(100% - ${containerGutter * 2}px)`}\n maxWidth={makeSize(TOAST_MAX_WIDTH)}\n pointerEvents=\"none\"\n className={containerClassName}\n {...metaAttribute({ name: MetaConstants.ToastContainer })}\n >\n {/*\n * Mouseover container,\n * fills in the gap between toasts so that mouseleave doesn't trigger in the gaps\n */}\n <BaseBox\n position=\"absolute\"\n bottom={`${promoToastHeight}px`}\n left=\"0px\"\n width=\"100%\"\n pointerEvents={isExpanded ? 'all' : 'none'}\n height={makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight)}\n zIndex={-100}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleToastClick}\n {...metaAttribute({ testID: 'toast-mouseover-container' })}\n />\n {recomputedToasts.map((toast, index) => {\n const toastPosition = toast.position ?? position;\n const isPromotional = isPromotionalToast(toast);\n const { offset, scale } = calculateYPosition({\n toast,\n isExpanded,\n reverseOrder,\n index,\n });\n const positionStyle = getPositionStyle(toastPosition, offset, scale, theme);\n // recalculate height of toast\n const ref = (el: HTMLDivElement): void => {\n if (el && typeof toast.height !== 'number') {\n const height = el.getBoundingClientRect().height;\n handlers.updateHeight(toast.id, height);\n }\n };\n\n let toastHeight = toast.height;\n if (index > MAX_TOASTS - 1 && !isPromotional) {\n toastHeight = frontToastHeight;\n }\n if (isExpanded) {\n toastHeight = toast.height;\n }\n\n return (\n <StyledToastWrapper\n key={toast.id}\n index={index}\n ref={ref}\n isExpanded={isExpanded}\n isVisible={toast.visible}\n isPromotional={isPromotional}\n style={{\n ...positionStyle,\n zIndex: -1 * index,\n height: toastHeight,\n overflow: 'hidden',\n }}\n onMouseEnter={() => {\n if (isPromotional) return;\n handleMouseEnter();\n }}\n onMouseLeave={() => {\n if (isPromotional) return;\n handleMouseLeave();\n }}\n onClick={() => {\n if (isPromotional) return;\n handleToastClick();\n }}\n >\n <BaseBox height=\"fit-content\" width=\"100%\">\n {resolveValue(toast.message, { ...toast, index })}\n </BaseBox>\n </StyledToastWrapper>\n );\n })}\n </BaseBox>\n );\n};\n\nconst ToastContainer = (): React.ReactElement => {\n return <Toaster position=\"bottom-left\" />;\n};\n\nexport { ToastContainer };\n"],"names":["StyledToastWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","index","isExpanded","isPromotional","opacity","PEEKS","MAX_TOASTS","pointerEvents","getPositionStyle","position","offset","scale","theme","top","includes","verticalStyle","bottom","horizontalStyle","justifyContent","_objectSpread","left","right","display","transformOrigin","transition","concat","makeMotionTime","motion","duration","gentle","easing","standard","effective","transitionProperty","transform","isPromotionalToast","toast","type","Toaster","_ref2","_promoToasts$","_promoToasts$0$height","_promoToasts$2","reverseOrder","_ref2$position","toastOptions","containerClassName","_useToaster","useToaster","toasts","handlers","_useTheme","useTheme","_React$useState","React","useState","_React$useState2","_slicedToArray","frontToastHeight","setFrontToastHeight","_React$useState3","_React$useState4","hasManuallyExpanded","setHasManuallyExpanded","isMobile","useIsMobile","minToasts","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","containerGutter","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","infoToasts","useMemo","filter","promoToasts","recomputedToasts","_toConsumableArray","hasPromoToast","length","visible","promoToastHeight","height","useLayoutEffect","firstToast","find","t","_firstToast$height","totalHeight","reduce","prevHeight","_toast$height","GUTTER","calculateYPosition","useCallback","_ref3","toastIndex","findIndex","id","toastsBefore","i","Math","max","SCALE_FACTOR","slice","y","_toast$height2","PEEK_GUTTER","handleMouseEnter","startPause","handleMouseLeave","endPause","handleToastClick","prev","next","_jsxs","zIndex","TOAST_Z_INDEX","makeSize","width","maxWidth","TOAST_MAX_WIDTH","className","metaAttribute","name","MetaConstants","ToastContainer","children","_jsx","onMouseEnter","onMouseLeave","onClick","testID","map","_toast$position","toastPosition","_calculateYPosition","positionStyle","ref","el","getBoundingClientRect","updateHeight","toastHeight","style","overflow","resolveValue","message"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import '../../tokens/global/index.js';
2
+ import { size } from '../../tokens/global/size.js';
3
+
4
+ var TOAST_MAX_WIDTH = size['360'];
5
+ // higher than modal
6
+ var TOAST_Z_INDEX = 2000;
7
+
8
+ // Space between the toasts
9
+ var GUTTER = 12;
10
+ // Space between the collapsed toast's peek
11
+ var PEEK_GUTTER = 12;
12
+ // Gap between the toast container and the page body
13
+ var CONTAINER_GUTTER_MOBILE = 16;
14
+ var CONTAINER_GUTTER_DESKTOP = 24;
15
+ // How much to scale down the peeking toasts
16
+ var SCALE_FACTOR = 0.05;
17
+ // While collapsed, how many toasts to show
18
+ var MAX_TOASTS = 1;
19
+ // Minimum toasts to show on mobile and desktop
20
+ var MIN_TOAST_MOBILE = 1;
21
+ var MIN_TOAST_DESKTOP = 3;
22
+ // While collapsed, how many toasts should be peeking
23
+ var PEEKS = 3;
24
+
25
+ export { CONTAINER_GUTTER_DESKTOP, CONTAINER_GUTTER_MOBILE, GUTTER, MAX_TOASTS, MIN_TOAST_DESKTOP, MIN_TOAST_MOBILE, PEEKS, PEEK_GUTTER, SCALE_FACTOR, TOAST_MAX_WIDTH, TOAST_Z_INDEX };
26
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../../../src/components/Toast/constants.ts"],"sourcesContent":["import { size } from '~tokens/global';\n\nexport const TOAST_MAX_WIDTH = size['360'];\n// higher than modal\nexport const TOAST_Z_INDEX = 2000;\n\n// Space between the toasts\nexport const GUTTER = 12;\n// Space between the collapsed toast's peek\nexport const PEEK_GUTTER = 12;\n// Gap between the toast container and the page body\nexport const CONTAINER_GUTTER_MOBILE = 16;\nexport const CONTAINER_GUTTER_DESKTOP = 24;\n// How much to scale down the peeking toasts\nexport const SCALE_FACTOR = 0.05;\n// While collapsed, how many toasts to show\nexport const MAX_TOASTS = 1;\n// Minimum toasts to show on mobile and desktop\nexport const MIN_TOAST_MOBILE = 1;\nexport const MIN_TOAST_DESKTOP = 3;\n// While collapsed, how many toasts should be peeking\nexport const PEEKS = 3;\n"],"names":["TOAST_MAX_WIDTH","size","TOAST_Z_INDEX","GUTTER","PEEK_GUTTER","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","SCALE_FACTOR","MAX_TOASTS","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","PEEKS"],"mappings":";;;IAEaA,eAAe,GAAGC,IAAI,CAAC,KAAK,EAAC;AAC1C;AACO,IAAMC,aAAa,GAAG,KAAI;;AAEjC;AACO,IAAMC,MAAM,GAAG,GAAE;AACxB;AACO,IAAMC,WAAW,GAAG,GAAE;AAC7B;AACO,IAAMC,uBAAuB,GAAG,GAAE;AAClC,IAAMC,wBAAwB,GAAG,GAAE;AAC1C;AACO,IAAMC,YAAY,GAAG,KAAI;AAChC;AACO,IAAMC,UAAU,GAAG,EAAC;AAC3B;AACO,IAAMC,gBAAgB,GAAG,EAAC;AAC1B,IAAMC,iBAAiB,GAAG,EAAC;AAClC;AACO,IAAMC,KAAK,GAAG;;;;"}
@@ -0,0 +1,4 @@
1
+ export { ToastContainer } from './ToastContainer.web.js';
2
+ export { useToast } from './useToast.js';
3
+ import './types.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,66 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import toast, { useToasterStore } from 'react-hot-toast';
3
+ import { Toast } from './Toast.web.js';
4
+ import '../../utils/logger/index.js';
5
+ import { jsx } from 'react/jsx-runtime';
6
+ import { logger } from '../../utils/logger/logger.js';
7
+
8
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
+ var useToast = function useToast() {
11
+ var _useToasterStore = useToasterStore(),
12
+ toasts = _useToasterStore.toasts;
13
+ var show = function show(props) {
14
+ var _props$type;
15
+ props.type = (_props$type = props.type) !== null && _props$type !== void 0 ? _props$type : 'informational';
16
+
17
+ // Do not show promotional toasts if there is already one
18
+ if (toasts.find(function (t) {
19
+ // @ts-expect-error - react-hot-toast doesn't recognize our promotional type
20
+ return t.type === 'promotional';
21
+ }) && props.type === 'promotional') {
22
+ if (false) {
23
+ logger({
24
+ message: 'There can only be one promotional toast at a time',
25
+ type: 'warn',
26
+ moduleName: 'Toast'
27
+ });
28
+ }
29
+ return '';
30
+ }
31
+ var isPromoToast = props.type === 'promotional';
32
+ if (props.autoDismiss === undefined) {
33
+ // Promotional toasts should not auto dismiss
34
+ props.autoDismiss = !isPromoToast;
35
+ }
36
+ if (props.duration === undefined) {
37
+ // Set default durations
38
+ if (isPromoToast) {
39
+ props.duration = 8000;
40
+ } else {
41
+ props.duration = 4000;
42
+ }
43
+ }
44
+
45
+ // If autoDismiss is false, set duration to infinity
46
+ if (!props.autoDismiss) {
47
+ props.duration = Infinity;
48
+ }
49
+ return toast.custom(function (_ref) {
50
+ var visible = _ref.visible,
51
+ id = _ref.id;
52
+ return /*#__PURE__*/jsx(Toast, _objectSpread(_objectSpread({}, props), {}, {
53
+ id: id,
54
+ isVisible: visible
55
+ }));
56
+ }, props);
57
+ };
58
+ return {
59
+ toasts: toasts,
60
+ show: show,
61
+ dismiss: toast.dismiss
62
+ };
63
+ };
64
+
65
+ export { useToast };
66
+ //# sourceMappingURL=useToast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useToast.js","sources":["../../../../../../src/components/Toast/useToast.tsx"],"sourcesContent":["import type { Toast } from 'react-hot-toast';\nimport toast, { useToasterStore } from 'react-hot-toast';\nimport type { ToastProps } from './types';\nimport { Toast as ToastComponent } from './Toast';\nimport { logger } from '~utils/logger';\n\ntype BladeToast = Omit<Toast, 'type'> & ToastProps;\ntype UseToastReturn = {\n toasts: BladeToast[];\n show: (props: ToastProps) => string;\n dismiss: (id?: string) => void;\n};\n\nconst useToast = (): UseToastReturn => {\n const { toasts } = useToasterStore();\n const show = (props: ToastProps): string => {\n props.type = props.type ?? 'informational';\n\n // Do not show promotional toasts if there is already one\n if (\n toasts.find((t) => {\n // @ts-expect-error - react-hot-toast doesn't recognize our promotional type\n return t.type === 'promotional';\n }) &&\n props.type === 'promotional'\n ) {\n if (__DEV__) {\n logger({\n message: 'There can only be one promotional toast at a time',\n type: 'warn',\n moduleName: 'Toast',\n });\n }\n return '';\n }\n\n const isPromoToast = props.type === 'promotional';\n if (props.autoDismiss === undefined) {\n // Promotional toasts should not auto dismiss\n props.autoDismiss = !isPromoToast;\n }\n\n if (props.duration === undefined) {\n // Set default durations\n if (isPromoToast) {\n props.duration = 8000;\n } else {\n props.duration = 4000;\n }\n }\n\n // If autoDismiss is false, set duration to infinity\n if (!props.autoDismiss) {\n props.duration = Infinity;\n }\n\n return toast.custom(({ visible, id }) => {\n return <ToastComponent {...props} id={id} isVisible={visible} />;\n }, props);\n };\n\n return {\n toasts: (toasts as unknown) as BladeToast[],\n show,\n dismiss: toast.dismiss,\n };\n};\n\nexport type { UseToastReturn };\nexport { useToast };\n"],"names":["useToast","_useToasterStore","useToasterStore","toasts","show","props","_props$type","type","find","t","logger","message","moduleName","isPromoToast","autoDismiss","undefined","duration","Infinity","toast","custom","_ref","visible","id","_jsx","ToastComponent","_objectSpread","isVisible","dismiss"],"mappings":";;;;;;;;;AAaA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,GAAyB;AACrC,EAAA,IAAAC,gBAAA,GAAmBC,eAAe,EAAE;IAA5BC,MAAM,GAAAF,gBAAA,CAANE,MAAM,CAAA;AACd,EAAA,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAIC,KAAiB,EAAa;AAAA,IAAA,IAAAC,WAAA,CAAA;AAC1CD,IAAAA,KAAK,CAACE,IAAI,GAAAD,CAAAA,WAAA,GAAGD,KAAK,CAACE,IAAI,MAAAD,IAAAA,IAAAA,WAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAA,GAAI,eAAe,CAAA;;AAE1C;AACA,IAAA,IACEH,MAAM,CAACK,IAAI,CAAC,UAACC,CAAC,EAAK;AACjB;AACA,MAAA,OAAOA,CAAC,CAACF,IAAI,KAAK,aAAa,CAAA;AACjC,KAAC,CAAC,IACFF,KAAK,CAACE,IAAI,KAAK,aAAa,EAC5B;AACA,MAAA,IAAI,KAAO,EAAE;AACXG,QAAAA,MAAM,CAAC;AACLC,UAAAA,OAAO,EAAE,mDAAmD;AAC5DJ,UAAAA,IAAI,EAAE,MAAM;AACZK,UAAAA,UAAU,EAAE,OAAA;AACd,SAAC,CAAC,CAAA;AACJ,OAAA;AACA,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;AAEA,IAAA,IAAMC,YAAY,GAAGR,KAAK,CAACE,IAAI,KAAK,aAAa,CAAA;AACjD,IAAA,IAAIF,KAAK,CAACS,WAAW,KAAKC,SAAS,EAAE;AACnC;AACAV,MAAAA,KAAK,CAACS,WAAW,GAAG,CAACD,YAAY,CAAA;AACnC,KAAA;AAEA,IAAA,IAAIR,KAAK,CAACW,QAAQ,KAAKD,SAAS,EAAE;AAChC;AACA,MAAA,IAAIF,YAAY,EAAE;QAChBR,KAAK,CAACW,QAAQ,GAAG,IAAI,CAAA;AACvB,OAAC,MAAM;QACLX,KAAK,CAACW,QAAQ,GAAG,IAAI,CAAA;AACvB,OAAA;AACF,KAAA;;AAEA;AACA,IAAA,IAAI,CAACX,KAAK,CAACS,WAAW,EAAE;MACtBT,KAAK,CAACW,QAAQ,GAAGC,QAAQ,CAAA;AAC3B,KAAA;AAEA,IAAA,OAAOC,KAAK,CAACC,MAAM,CAAC,UAAAC,IAAA,EAAqB;AAAA,MAAA,IAAlBC,OAAO,GAAAD,IAAA,CAAPC,OAAO;QAAEC,EAAE,GAAAF,IAAA,CAAFE,EAAE,CAAA;MAChC,oBAAOC,GAAA,CAACC,KAAc,EAAAC,aAAA,CAAAA,aAAA,KAAKpB,KAAK,CAAA,EAAA,EAAA,EAAA;AAAEiB,QAAAA,EAAE,EAAEA,EAAG;AAACI,QAAAA,SAAS,EAAEL,OAAAA;AAAQ,OAAA,CAAE,CAAC,CAAA;KACjE,EAAEhB,KAAK,CAAC,CAAA;GACV,CAAA;EAED,OAAO;AACLF,IAAAA,MAAM,EAAGA,MAAkC;AAC3CC,IAAAA,IAAI,EAAJA,IAAI;IACJuB,OAAO,EAAET,KAAK,CAACS,OAAAA;GAChB,CAAA;AACH;;;;"}
@@ -39,6 +39,7 @@ import './Table/index.js';
39
39
  import './Tabs/index.js';
40
40
  import './Tag/index.js';
41
41
  import './Tooltip/index.js';
42
+ import './Toast/index.js';
42
43
  import './types.js';
43
44
  import './Typography/index.js';
44
45
  import './VisuallyHidden/index.web.js';
@@ -394,6 +395,8 @@ export { TabPanel } from './Tabs/TabPanel.web.js';
394
395
  export { Tag } from './Tag/Tag.js';
395
396
  export { Tooltip } from './Tooltip/Tooltip.web.js';
396
397
  export { TooltipInteractiveWrapper } from './Tooltip/TooltipInteractiveWrapper.web.js';
398
+ export { ToastContainer } from './Toast/ToastContainer.web.js';
399
+ export { useToast } from './Toast/useToast.js';
397
400
  export { Heading } from './Typography/Heading/Heading.js';
398
401
  export { Text, getTextProps } from './Typography/Text/Text.js';
399
402
  export { Code } from './Typography/Code/Code.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -42,6 +42,8 @@ var MetaConstants = {
42
42
  PasswordInput: 'password-input',
43
43
  TextArea: 'textarea',
44
44
  TextInput: 'textinput',
45
+ Toast: 'toast',
46
+ ToastContainer: 'toast-container',
45
47
  ProgressBar: 'progress-bar',
46
48
  Radio: 'radio',
47
49
  RadioGroup: 'radio-group',
@@ -1 +1 @@
1
- {"version":3,"file":"metaConstants.js","sources":["../../../../../../src/utils/metaAttribute/metaConstants.ts"],"sourcesContent":["export const MetaConstants = {\n Accordion: 'accordion',\n AccordionButton: 'accordion-button',\n AccordionItem: 'accordion-item',\n ActionList: 'action-list',\n ActionListItem: 'action-list-item',\n ActionListSection: 'action-list-section',\n Alert: 'alert',\n Amount: 'amount',\n AutoComplete: 'autocomplete',\n Badge: 'badge',\n Box: 'box',\n BaseBox: 'base-box',\n BaseText: 'base-text',\n Button: 'button',\n Carousel: 'carousel',\n Checkbox: 'checkbox',\n CheckboxGroup: 'checkbox-group',\n CheckboxLabel: 'checkbox-label',\n Chip: 'chip',\n ChipGroup: 'chip-group',\n ChipLabel: 'chip-label',\n Code: 'code',\n Component: 'blade-component',\n Counter: 'counter',\n Display: 'display',\n Divider: 'divider',\n Dropdown: 'dropdown',\n DropdownOverlay: 'dropdown-overlay',\n DropdownFooter: 'dropdown-footer',\n DropdownHeader: 'dropdown-header',\n Icon: 'icon',\n IconButton: 'icon-button',\n Indicator: 'indicator',\n Link: 'link',\n List: 'list',\n ListItem: 'list-item',\n ListItemCode: 'list-item-code',\n ListItemLink: 'list-item-link',\n ListItemText: 'list-item-text',\n OTPInput: 'otp-input',\n PasswordInput: 'password-input',\n TextArea: 'textarea',\n TextInput: 'textinput',\n ProgressBar: 'progress-bar',\n Radio: 'radio',\n RadioGroup: 'radio-group',\n RadioLabel: 'radio-label',\n SkipNav: 'skipnav',\n Spinner: 'spinner',\n SelectInput: 'select-input',\n Tag: 'tag',\n Tooltip: 'tooltip',\n TooltipInteractiveWrapper: 'tooltip-interactive-wrapper',\n Tabs: 'tabs',\n TabList: 'tab-list',\n TabItem: 'tab-item',\n TabPanel: 'tab-panel',\n TabIndicator: 'tab-indicator',\n Table: 'table',\n TableBody: 'table-body',\n TableRow: 'table-row',\n TableCell: 'table-cell',\n TableHeader: 'table-header',\n TableHeaderRow: 'table-header-row',\n TableHeaderCell: 'table-header-cell',\n TableFooter: 'table-footer',\n TableFooterRow: 'table-footer-row',\n TableFooterCell: 'table-footer-cell',\n TableElement: 'table-element',\n TourPopover: 'tour-popover',\n TourMask: 'tour-mask',\n Popover: 'popover',\n PopoverInteractiveWrapper: 'popover-interactive-wrapper',\n BottomSheet: 'bottom-sheet',\n BottomSheetBody: 'bottom-sheet-body',\n BottomSheetHeader: 'bottom-sheet-header',\n BottomSheetFooter: 'bottom-sheet-footer',\n BottomSheetGrabHandle: 'bottomsheet-grab-handle',\n Card: 'card',\n CardBody: 'card-body',\n CardHeader: 'card-header',\n CardFooter: 'card-footer',\n Collapsible: 'collapsible',\n CollapsibleBody: 'collapsible-body',\n CollapsibleButton: 'collapsible-button',\n CollapsibleLink: 'collapsible-link',\n Modal: 'modal',\n ModalBody: 'modal-body',\n ModalHeader: 'modal-header',\n ModalFooter: 'modal-footer',\n ModalBackdrop: 'modal-backdrop',\n ModalScrollOverlay: 'modal-scroll-overlay',\n VisuallyHidden: 'visually-hidden',\n FormLabel: 'form-label',\n Switch: 'switch',\n SwitchLabel: 'switch-label',\n StyledBaseInput: 'styled-base-input',\n Skeleton: 'skeleton',\n} as const;\n"],"names":["MetaConstants","Accordion","AccordionButton","AccordionItem","ActionList","ActionListItem","ActionListSection","Alert","Amount","AutoComplete","Badge","Box","BaseBox","BaseText","Button","Carousel","Checkbox","CheckboxGroup","CheckboxLabel","Chip","ChipGroup","ChipLabel","Code","Component","Counter","Display","Divider","Dropdown","DropdownOverlay","DropdownFooter","DropdownHeader","Icon","IconButton","Indicator","Link","List","ListItem","ListItemCode","ListItemLink","ListItemText","OTPInput","PasswordInput","TextArea","TextInput","ProgressBar","Radio","RadioGroup","RadioLabel","SkipNav","Spinner","SelectInput","Tag","Tooltip","TooltipInteractiveWrapper","Tabs","TabList","TabItem","TabPanel","TabIndicator","Table","TableBody","TableRow","TableCell","TableHeader","TableHeaderRow","TableHeaderCell","TableFooter","TableFooterRow","TableFooterCell","TableElement","TourPopover","TourMask","Popover","PopoverInteractiveWrapper","BottomSheet","BottomSheetBody","BottomSheetHeader","BottomSheetFooter","BottomSheetGrabHandle","Card","CardBody","CardHeader","CardFooter","Collapsible","CollapsibleBody","CollapsibleButton","CollapsibleLink","Modal","ModalBody","ModalHeader","ModalFooter","ModalBackdrop","ModalScrollOverlay","VisuallyHidden","FormLabel","Switch","SwitchLabel","StyledBaseInput","Skeleton"],"mappings":"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"}
1
+ {"version":3,"file":"metaConstants.js","sources":["../../../../../../src/utils/metaAttribute/metaConstants.ts"],"sourcesContent":["export const MetaConstants = {\n Accordion: 'accordion',\n AccordionButton: 'accordion-button',\n AccordionItem: 'accordion-item',\n ActionList: 'action-list',\n ActionListItem: 'action-list-item',\n ActionListSection: 'action-list-section',\n Alert: 'alert',\n Amount: 'amount',\n AutoComplete: 'autocomplete',\n Badge: 'badge',\n Box: 'box',\n BaseBox: 'base-box',\n BaseText: 'base-text',\n Button: 'button',\n Carousel: 'carousel',\n Checkbox: 'checkbox',\n CheckboxGroup: 'checkbox-group',\n CheckboxLabel: 'checkbox-label',\n Chip: 'chip',\n ChipGroup: 'chip-group',\n ChipLabel: 'chip-label',\n Code: 'code',\n Component: 'blade-component',\n Counter: 'counter',\n Display: 'display',\n Divider: 'divider',\n Dropdown: 'dropdown',\n DropdownOverlay: 'dropdown-overlay',\n DropdownFooter: 'dropdown-footer',\n DropdownHeader: 'dropdown-header',\n Icon: 'icon',\n IconButton: 'icon-button',\n Indicator: 'indicator',\n Link: 'link',\n List: 'list',\n ListItem: 'list-item',\n ListItemCode: 'list-item-code',\n ListItemLink: 'list-item-link',\n ListItemText: 'list-item-text',\n OTPInput: 'otp-input',\n PasswordInput: 'password-input',\n TextArea: 'textarea',\n TextInput: 'textinput',\n Toast: 'toast',\n ToastContainer: 'toast-container',\n ProgressBar: 'progress-bar',\n Radio: 'radio',\n RadioGroup: 'radio-group',\n RadioLabel: 'radio-label',\n SkipNav: 'skipnav',\n Spinner: 'spinner',\n SelectInput: 'select-input',\n Tag: 'tag',\n Tooltip: 'tooltip',\n TooltipInteractiveWrapper: 'tooltip-interactive-wrapper',\n Tabs: 'tabs',\n TabList: 'tab-list',\n TabItem: 'tab-item',\n TabPanel: 'tab-panel',\n TabIndicator: 'tab-indicator',\n Table: 'table',\n TableBody: 'table-body',\n TableRow: 'table-row',\n TableCell: 'table-cell',\n TableHeader: 'table-header',\n TableHeaderRow: 'table-header-row',\n TableHeaderCell: 'table-header-cell',\n TableFooter: 'table-footer',\n TableFooterRow: 'table-footer-row',\n TableFooterCell: 'table-footer-cell',\n TableElement: 'table-element',\n TourPopover: 'tour-popover',\n TourMask: 'tour-mask',\n Popover: 'popover',\n PopoverInteractiveWrapper: 'popover-interactive-wrapper',\n BottomSheet: 'bottom-sheet',\n BottomSheetBody: 'bottom-sheet-body',\n BottomSheetHeader: 'bottom-sheet-header',\n BottomSheetFooter: 'bottom-sheet-footer',\n BottomSheetGrabHandle: 'bottomsheet-grab-handle',\n Card: 'card',\n CardBody: 'card-body',\n CardHeader: 'card-header',\n CardFooter: 'card-footer',\n Collapsible: 'collapsible',\n CollapsibleBody: 'collapsible-body',\n CollapsibleButton: 'collapsible-button',\n CollapsibleLink: 'collapsible-link',\n Modal: 'modal',\n ModalBody: 'modal-body',\n ModalHeader: 'modal-header',\n ModalFooter: 'modal-footer',\n ModalBackdrop: 'modal-backdrop',\n ModalScrollOverlay: 'modal-scroll-overlay',\n VisuallyHidden: 'visually-hidden',\n FormLabel: 'form-label',\n Switch: 'switch',\n SwitchLabel: 'switch-label',\n StyledBaseInput: 'styled-base-input',\n Skeleton: 'skeleton',\n} as const;\n"],"names":["MetaConstants","Accordion","AccordionButton","AccordionItem","ActionList","ActionListItem","ActionListSection","Alert","Amount","AutoComplete","Badge","Box","BaseBox","BaseText","Button","Carousel","Checkbox","CheckboxGroup","CheckboxLabel","Chip","ChipGroup","ChipLabel","Code","Component","Counter","Display","Divider","Dropdown","DropdownOverlay","DropdownFooter","DropdownHeader","Icon","IconButton","Indicator","Link","List","ListItem","ListItemCode","ListItemLink","ListItemText","OTPInput","PasswordInput","TextArea","TextInput","Toast","ToastContainer","ProgressBar","Radio","RadioGroup","RadioLabel","SkipNav","Spinner","SelectInput","Tag","Tooltip","TooltipInteractiveWrapper","Tabs","TabList","TabItem","TabPanel","TabIndicator","Table","TableBody","TableRow","TableCell","TableHeader","TableHeaderRow","TableHeaderCell","TableFooter","TableFooterRow","TableFooterCell","TableElement","TourPopover","TourMask","Popover","PopoverInteractiveWrapper","BottomSheet","BottomSheetBody","BottomSheetHeader","BottomSheetFooter","BottomSheetGrabHandle","Card","CardBody","CardHeader","CardFooter","Collapsible","CollapsibleBody","CollapsibleButton","CollapsibleLink","Modal","ModalBody","ModalHeader","ModalFooter","ModalBackdrop","ModalScrollOverlay","VisuallyHidden","FormLabel","Switch","SwitchLabel","StyledBaseInput","Skeleton"],"mappings":"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"}