@mantine/notifications 7.0.0 → 7.0.1-alpha.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.
- package/esm/{NotificationContainer.js → NotificationContainer.mjs} +2 -2
- package/esm/NotificationContainer.mjs.map +1 -0
- package/esm/{Notifications.js → Notifications.mjs} +5 -5
- package/esm/Notifications.mjs.map +1 -0
- package/esm/{Notifications.module.css.js → Notifications.module.mjs} +1 -1
- package/esm/Notifications.module.mjs.map +1 -0
- package/esm/get-auto-close/{get-auto-close.js → get-auto-close.mjs} +1 -1
- package/esm/get-auto-close/get-auto-close.mjs.map +1 -0
- package/esm/{get-notification-state-styles.js → get-notification-state-styles.mjs} +1 -1
- package/esm/get-notification-state-styles.mjs.map +1 -0
- package/esm/{index.js → index.mjs} +3 -4
- package/esm/index.mjs.map +1 -0
- package/esm/{notifications.store.js → notifications.store.mjs} +1 -1
- package/esm/notifications.store.mjs.map +1 -0
- package/lib/index.d.mts +5 -0
- package/package.json +14 -8
- package/esm/NotificationContainer.js.map +0 -1
- package/esm/Notifications.js.map +0 -1
- package/esm/Notifications.module.css.js.map +0 -1
- package/esm/get-auto-close/get-auto-close.js.map +0 -1
- package/esm/get-notification-state-styles.js.map +0 -1
- package/esm/index.js.map +0 -1
- package/esm/notifications.store.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { forwardRef, useRef, useEffect } from 'react';
|
|
2
2
|
import { Notification } from '@mantine/core';
|
|
3
|
-
import { getAutoClose } from './get-auto-close/get-auto-close.
|
|
3
|
+
import { getAutoClose } from './get-auto-close/get-auto-close.mjs';
|
|
4
4
|
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __defProps = Object.defineProperties;
|
|
@@ -72,4 +72,4 @@ const NotificationContainer = forwardRef(
|
|
|
72
72
|
NotificationContainer.displayName = "@mantine/notifications/NotificationContainer";
|
|
73
73
|
|
|
74
74
|
export { NotificationContainer };
|
|
75
|
-
//# sourceMappingURL=NotificationContainer.
|
|
75
|
+
//# sourceMappingURL=NotificationContainer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotificationContainer.mjs","sources":["../src/NotificationContainer.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useEffect } from 'react';\nimport { Notification, NotificationProps } from '@mantine/core';\nimport { NotificationData } from './notifications.store';\nimport { getAutoClose } from './get-auto-close/get-auto-close';\n\ninterface NotificationContainerProps extends NotificationProps {\n data: NotificationData;\n onHide(id: string): void;\n autoClose: number | false;\n}\n\nexport const NotificationContainer = forwardRef<HTMLDivElement, NotificationContainerProps>(\n ({ data, onHide, autoClose, ...others }, ref) => {\n const { autoClose: _autoClose, message, ...notificationProps } = data;\n const autoCloseDuration = getAutoClose(autoClose, data.autoClose);\n const autoCloseTimeout = useRef<number>();\n\n const cancelAutoClose = () => window.clearTimeout(autoCloseTimeout.current);\n\n const handleHide = () => {\n onHide(data.id!);\n cancelAutoClose();\n };\n\n const handleAutoClose = () => {\n if (typeof autoCloseDuration === 'number') {\n autoCloseTimeout.current = window.setTimeout(handleHide, autoCloseDuration);\n }\n };\n\n useEffect(() => {\n data.onOpen?.(data);\n }, []);\n\n useEffect(() => {\n handleAutoClose();\n return cancelAutoClose;\n }, [autoCloseDuration]);\n\n return (\n <Notification\n {...others}\n {...notificationProps}\n onClose={handleHide}\n ref={ref}\n onMouseEnter={cancelAutoClose}\n onMouseLeave={handleAutoClose}\n >\n {message}\n </Notification>\n );\n }\n);\n\nNotificationContainer.displayName = '@mantine/notifications/NotificationContainer';\n"],"names":[],"mappings":";;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,IAAI,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK;AACrC,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM;AACzB,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,MAAM,IAAI,IAAI,IAAI,mBAAmB;AAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;AAClD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;AACtE,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,KAAK;AACL,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAIU,MAAC,qBAAqB,GAAG,UAAU;AAC/C,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK;AACf,IAAI,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAC3G,IAAI,MAAM,GAAG,GAAG,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,GAAG,EAAE,iBAAiB,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7H,IAAI,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AACtE,IAAI,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC;AACtC,IAAI,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChF,IAAI,MAAM,UAAU,GAAG,MAAM;AAC7B,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,MAAM,eAAe,EAAE,CAAC;AACxB,KAAK,CAAC;AACN,IAAI,MAAM,eAAe,GAAG,MAAM;AAClC,MAAM,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;AACjD,QAAQ,gBAAgB,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;AACpF,OAAO;AACP,KAAK,CAAC;AACN,IAAI,SAAS,CAAC,MAAM;AACpB,MAAM,IAAI,GAAG,CAAC;AACd,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAClE,KAAK,EAAE,EAAE,CAAC,CAAC;AACX,IAAI,SAAS,CAAC,MAAM;AACpB,MAAM,eAAe,EAAE,CAAC;AACxB,MAAM,OAAO,eAAe,CAAC;AAC7B,KAAK,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAC5B,IAAI,uBAAuB,KAAK,CAAC,aAAa;AAC9C,MAAM,YAAY;AAClB,MAAM,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,iBAAiB,CAAC,EAAE;AACnF,QAAQ,OAAO,EAAE,UAAU;AAC3B,QAAQ,GAAG;AACX,QAAQ,YAAY,EAAE,eAAe;AACrC,QAAQ,YAAY,EAAE,eAAe;AACrC,OAAO,CAAC;AACR,MAAM,OAAO;AACb,KAAK,CAAC;AACN,GAAG;AACH,EAAE;AACF,qBAAqB,CAAC,WAAW,GAAG,8CAA8C;;;;"}
|
|
@@ -2,10 +2,10 @@ import React, { useRef } from 'react';
|
|
|
2
2
|
import { TransitionGroup, Transition as Transition$1 } from 'react-transition-group';
|
|
3
3
|
import { useForceUpdate, useReducedMotion, useDidUpdate } from '@mantine/hooks';
|
|
4
4
|
import { getDefaultZIndex, createVarsResolver, rem, factory, useProps, useMantineTheme, useStyles, OptionalPortal, Box } from '@mantine/core';
|
|
5
|
-
import { notificationsStore, useNotifications, notifications, hideNotification } from './notifications.store.
|
|
6
|
-
import { NotificationContainer } from './NotificationContainer.
|
|
7
|
-
import { getNotificationStateStyles } from './get-notification-state-styles.
|
|
8
|
-
import classes from './Notifications.module.
|
|
5
|
+
import { notificationsStore, useNotifications, notifications, hideNotification } from './notifications.store.mjs';
|
|
6
|
+
import { NotificationContainer } from './NotificationContainer.mjs';
|
|
7
|
+
import { getNotificationStateStyles } from './get-notification-state-styles.mjs';
|
|
8
|
+
import classes from './Notifications.module.mjs';
|
|
9
9
|
|
|
10
10
|
var __defProp = Object.defineProperty;
|
|
11
11
|
var __defProps = Object.defineProperties;
|
|
@@ -168,4 +168,4 @@ Notifications.cleanQueue = notifications.cleanQueue;
|
|
|
168
168
|
Notifications.updateState = notifications.updateState;
|
|
169
169
|
|
|
170
170
|
export { Notifications };
|
|
171
|
-
//# sourceMappingURL=Notifications.
|
|
171
|
+
//# sourceMappingURL=Notifications.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Notifications.mjs","sources":["../src/Notifications.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport {\n Transition as _Transition,\n TransitionGroup,\n TransitionStatus,\n} from 'react-transition-group';\nimport { useForceUpdate, useDidUpdate, useReducedMotion } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n PortalProps,\n getDefaultZIndex,\n useMantineTheme,\n OptionalPortal,\n rem,\n} from '@mantine/core';\nimport {\n useNotifications,\n NotificationsStore,\n notificationsStore,\n hideNotification,\n notifications,\n} from './notifications.store';\nimport { NotificationContainer } from './NotificationContainer';\nimport { getNotificationStateStyles } from './get-notification-state-styles';\nimport classes from './Notifications.module.css';\n\nconst Transition: any = _Transition;\n\nexport type NotificationsStylesNames = 'root' | 'notification';\nexport type NotificationsCssVariables = {\n root:\n | '--notifications-z-index'\n | '--notifications-top'\n | '--notifications-right'\n | '--notifications-left'\n | '--notifications-left'\n | '--notifications-transform'\n | '--notifications-container-width';\n};\n\nexport interface NotificationsProps\n extends BoxProps,\n StylesApiProps<NotificationsFactory>,\n ElementProps<'div'> {\n /** Notifications position, `'bottom-right'` by default */\n position?:\n | 'top-left'\n | 'top-right'\n | 'top-center'\n | 'bottom-left'\n | 'bottom-right'\n | 'bottom-center';\n\n /** Auto close timeout for all notifications in ms, `false` to disable auto close, can be overwritten for individual notifications in `notifications.show` function, `4000` by defualt */\n autoClose?: number | false;\n\n /** Notification transition duration in ms, `250` by default */\n transitionDuration?: number;\n\n /** Notification width, cannot exceed 100%, `440` by default */\n containerWidth?: number | string;\n\n /** Notification `max-height`, used for transitions, `200` by default */\n notificationMaxHeight?: number | string;\n\n /** Maximum number of notifications displayed at a time, other new notifications will be added to queue, `5` by default */\n limit?: number;\n\n /** Notifications container z-index, `400` by default */\n zIndex?: string | number;\n\n /** Props passed down to the `Portal` component */\n portalProps?: Omit<PortalProps, 'children'>;\n\n /** Store for notifications state, can be used to create multiple instances of notifications system in your application */\n store?: NotificationsStore;\n\n /** Determines whether notifications container should be rendered inside `Portal`, `true` by default */\n withinPortal?: boolean;\n}\n\nexport type NotificationsFactory = Factory<{\n props: NotificationsProps;\n ref: HTMLDivElement;\n stylesNames: NotificationsStylesNames;\n vars: NotificationsCssVariables;\n staticComponents: {\n show: typeof notifications.show;\n hide: typeof notifications.hide;\n update: typeof notifications.update;\n clean: typeof notifications.clean;\n cleanQueue: typeof notifications.cleanQueue;\n updateState: typeof notifications.updateState;\n };\n}>;\n\nconst defaultProps: Partial<NotificationsProps> = {\n position: 'bottom-right',\n autoClose: 4000,\n transitionDuration: 250,\n containerWidth: 440,\n notificationMaxHeight: 200,\n limit: 5,\n zIndex: getDefaultZIndex('overlay'),\n store: notificationsStore,\n withinPortal: true,\n};\n\nconst varsResolver = createVarsResolver<NotificationsFactory>(\n (_, { zIndex, position, containerWidth }) => {\n const [vertical, horizontal] = position!.split('-');\n\n return {\n root: {\n '--notifications-z-index': zIndex?.toString(),\n '--notifications-top': vertical === 'top' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-bottom': vertical === 'bottom' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-left':\n horizontal === 'left'\n ? 'var(--mantine-spacing-md)'\n : horizontal === 'center'\n ? '50%'\n : undefined,\n '--notifications-right': horizontal === 'right' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-transform': horizontal === 'center' ? 'translateX(-50%)' : undefined,\n '--notifications-container-width': rem(containerWidth),\n },\n };\n }\n);\n\nexport const Notifications = factory<NotificationsFactory>((_props, ref) => {\n const props = useProps('Notifications', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n position,\n autoClose,\n transitionDuration,\n containerWidth,\n notificationMaxHeight,\n limit,\n zIndex,\n store,\n portalProps,\n withinPortal,\n ...others\n } = props;\n\n const theme = useMantineTheme();\n const data = useNotifications(store);\n const forceUpdate = useForceUpdate();\n const shouldReduceMotion = useReducedMotion();\n const refs = useRef<Record<string, HTMLDivElement>>({});\n const previousLength = useRef<number>(0);\n\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n const duration = reduceMotion ? 1 : transitionDuration;\n\n const getStyles = useStyles<NotificationsFactory>({\n name: 'Notifications',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n useDidUpdate(() => {\n if (data.notifications.length > previousLength.current) {\n setTimeout(() => forceUpdate(), 0);\n }\n previousLength.current = data.notifications.length;\n }, [data.notifications]);\n\n const items = data.notifications.map((notification) => (\n <Transition\n key={notification.id}\n timeout={duration}\n onEnter={() => refs.current[notification.id!].offsetHeight}\n nodeRef={{ current: refs.current[notification.id!] }}\n >\n {(state: TransitionStatus) => (\n <NotificationContainer\n {...getStyles('notification', {\n style: getNotificationStateStyles({\n state,\n position,\n transitionDuration: duration!,\n maxHeight: notificationMaxHeight!,\n }),\n })}\n ref={(node) => {\n refs.current[notification.id!] = node!;\n }}\n data={notification}\n onHide={(id) => hideNotification(id, store)}\n autoClose={autoClose!}\n />\n )}\n </Transition>\n ));\n\n return (\n <OptionalPortal withinPortal={withinPortal} {...portalProps}>\n <Box {...getStyles('root')} ref={ref} {...others}>\n <TransitionGroup>{items}</TransitionGroup>\n </Box>\n </OptionalPortal>\n );\n});\n\nNotifications.classes = classes;\nNotifications.displayName = '@mantine/notifications/Notifications';\nNotifications.show = notifications.show;\nNotifications.hide = notifications.hide;\nNotifications.update = notifications.update;\nNotifications.clean = notifications.clean;\nNotifications.cleanQueue = notifications.cleanQueue;\nNotifications.updateState = notifications.updateState;\n"],"names":["_Transition"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Notifications.module.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-auto-close.mjs","sources":["../../src/get-auto-close/get-auto-close.ts"],"sourcesContent":["export function getAutoClose(\n autoClose: boolean | number | undefined,\n notificationAutoClose: boolean | number | undefined\n) {\n if (typeof notificationAutoClose === 'number') {\n return notificationAutoClose;\n }\n\n if (notificationAutoClose === false || autoClose === false) {\n return false;\n }\n\n return autoClose;\n}\n"],"names":[],"mappings":"AAAO,SAAS,YAAY,CAAC,SAAS,EAAE,qBAAqB,EAAE;AAC/D,EAAE,IAAI,OAAO,qBAAqB,KAAK,QAAQ,EAAE;AACjD,IAAI,OAAO,qBAAqB,CAAC;AACjC,GAAG;AACH,EAAE,IAAI,qBAAqB,KAAK,KAAK,IAAI,SAAS,KAAK,KAAK,EAAE;AAC9D,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH,EAAE,OAAO,SAAS,CAAC;AACnB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-notification-state-styles.mjs","sources":["../src/get-notification-state-styles.ts"],"sourcesContent":["import { TransitionStatus } from 'react-transition-group';\nimport type { NotificationsProps } from './Notifications';\n\ninterface NotificationStateStylesProps {\n state: TransitionStatus;\n maxHeight: number | string;\n position: NotificationsProps['position'];\n transitionDuration: number;\n}\n\nconst transforms = {\n left: 'translateX(-100%)',\n right: 'translateX(100%)',\n 'top-center': 'translateY(-100%)',\n 'bottom-center': 'translateY(100%)',\n};\n\nconst noTransform = {\n left: 'translateX(0)',\n right: 'translateX(0)',\n 'top-center': 'translateY(0)',\n 'bottom-center': 'translateY(0)',\n};\n\nexport function getNotificationStateStyles({\n state,\n maxHeight,\n position,\n transitionDuration,\n}: NotificationStateStylesProps): React.CSSProperties {\n const [vertical, horizontal] = position!.split('-');\n const property = (\n horizontal === 'center' ? `${vertical}-center` : horizontal\n ) as keyof typeof transforms;\n\n const commonStyles: React.CSSProperties = {\n opacity: 0,\n maxHeight,\n transform: transforms[property],\n transitionDuration: `${transitionDuration}ms, ${transitionDuration}ms, ${transitionDuration}ms`,\n transitionTimingFunction: 'cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear',\n transitionProperty: 'opacity, transform, max-height',\n };\n\n const inState: React.CSSProperties = {\n opacity: 1,\n transform: noTransform[property],\n };\n\n const outState: React.CSSProperties = {\n opacity: 0,\n maxHeight: 0,\n transform: transforms[property],\n };\n\n const transitionStyles = {\n entering: inState,\n entered: inState,\n exiting: outState,\n exited: outState,\n };\n\n return { ...commonStyles, ...transitionStyles[state as keyof typeof transitionStyles] };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { cleanNotifications, cleanNotificationsQueue, createNotificationsStore, hideNotification, notifications, notificationsStore, showNotification, updateNotification, updateNotificationsState, useNotifications } from './notifications.store.mjs';
|
|
2
|
+
export { Notifications } from './Notifications.mjs';
|
|
3
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -91,4 +91,4 @@ const notifications = {
|
|
|
91
91
|
};
|
|
92
92
|
|
|
93
93
|
export { cleanNotifications, cleanNotificationsQueue, createNotificationsStore, hideNotification, notifications, notificationsStore, showNotification, updateNotification, updateNotificationsState, useNotifications };
|
|
94
|
-
//# sourceMappingURL=notifications.store.
|
|
94
|
+
//# sourceMappingURL=notifications.store.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notifications.store.mjs","sources":["../src/notifications.store.ts"],"sourcesContent":["import { NotificationProps } from '@mantine/core';\nimport { randomId } from '@mantine/hooks';\nimport { createStore, useStore, MantineStore } from '@mantine/store';\n\nexport interface NotificationData extends Omit<NotificationProps, 'onClose'> {\n /** Notification id, can be used to close or update notification */\n id?: string;\n\n /** Notification message, required for all notifications */\n message: React.ReactNode;\n\n /** Determines whether notification should be closed automatically,\n * number is auto close timeout in ms, overrides `autoClose` from `Notifications`\n * */\n autoClose?: boolean | number;\n\n /** Called when notification closes */\n onClose?(props: NotificationData): void;\n\n /** Called when notification opens */\n onOpen?(props: NotificationData): void;\n}\n\nexport interface NotificationsState {\n notifications: NotificationData[];\n queue: NotificationData[];\n limit: number;\n}\n\nexport type NotificationsStore = MantineStore<NotificationsState>;\n\nexport const createNotificationsStore = () =>\n createStore<NotificationsState>({\n notifications: [],\n queue: [],\n limit: 5,\n });\n\nexport const notificationsStore = createNotificationsStore();\nexport const useNotifications = (store: NotificationsStore = notificationsStore) => useStore(store);\n\nexport function updateNotificationsState(\n store: NotificationsStore,\n update: (notifications: NotificationData[]) => NotificationData[]\n) {\n const state = store.getState();\n const notifications = update([...state.notifications, ...state.queue]);\n\n store.setState({\n notifications: notifications.slice(0, state.limit),\n queue: notifications.slice(state.limit),\n limit: state.limit,\n });\n}\n\nexport function showNotification(\n notification: NotificationData,\n store: NotificationsStore = notificationsStore\n) {\n const id = notification.id || randomId();\n\n updateNotificationsState(store, (notifications) => {\n if (notification.id && notifications.some((n) => n.id === notification.id)) {\n return notifications;\n }\n\n return [...notifications, { ...notification, id }];\n });\n\n return id;\n}\n\nexport function hideNotification(id: string, store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, (notifications) =>\n notifications.filter((notification) => {\n if (notification.id === id) {\n notification.onClose?.(notification);\n return false;\n }\n\n return true;\n })\n );\n\n return id;\n}\n\nexport function updateNotification(\n notification: NotificationData,\n store: NotificationsStore = notificationsStore\n) {\n updateNotificationsState(store, (notifications) =>\n notifications.map((item) => {\n if (item.id === notification.id) {\n return { ...item, ...notification };\n }\n\n return item;\n })\n );\n\n return notification.id;\n}\n\nexport function cleanNotifications(store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, () => []);\n}\n\nexport function cleanNotificationsQueue(store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, (notifications) =>\n notifications.slice(0, store.getState().limit)\n );\n}\n\nexport const notifications = {\n show: showNotification,\n hide: hideNotification,\n update: updateNotification,\n clean: cleanNotifications,\n cleanQueue: cleanNotificationsQueue,\n updateState: updateNotificationsState,\n} as const;\n"],"names":[],"mappings":"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"}
|
package/lib/index.d.mts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { notifications, showNotification, hideNotification, cleanNotifications, cleanNotificationsQueue, updateNotification, updateNotificationsState, createNotificationsStore, notificationsStore, useNotifications, } from './notifications.store';
|
|
2
|
+
export { Notifications } from './Notifications';
|
|
3
|
+
export type { NotificationData, NotificationsState, NotificationsStore, } from './notifications.store';
|
|
4
|
+
export type { NotificationsCssVariables, NotificationsFactory, NotificationsProps, NotificationsStylesNames, } from './Notifications';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mantine/notifications",
|
|
3
|
-
"version": "7.0.0",
|
|
3
|
+
"version": "7.0.1-alpha.0",
|
|
4
|
+
"main": "./cjs/index.js",
|
|
4
5
|
"types": "./lib/index.d.ts",
|
|
5
|
-
"module": "./esm/index.
|
|
6
|
+
"module": "./esm/index.mjs",
|
|
6
7
|
"exports": {
|
|
7
8
|
".": {
|
|
8
|
-
"import":
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
"import": {
|
|
10
|
+
"types": "./lib/index.d.mts",
|
|
11
|
+
"default": "./esm/index.mjs"
|
|
12
|
+
},
|
|
13
|
+
"require": {
|
|
14
|
+
"types": "./lib/index.d.ts",
|
|
15
|
+
"default": "./cjs/index.js"
|
|
16
|
+
}
|
|
11
17
|
},
|
|
12
18
|
"./styles.css": "./esm/index.css"
|
|
13
19
|
},
|
|
@@ -36,13 +42,13 @@
|
|
|
36
42
|
"notification-system"
|
|
37
43
|
],
|
|
38
44
|
"peerDependencies": {
|
|
39
|
-
"@mantine/core": "7.0.0",
|
|
40
|
-
"@mantine/hooks": "7.0.0",
|
|
45
|
+
"@mantine/core": "7.0.1-alpha.0",
|
|
46
|
+
"@mantine/hooks": "7.0.1-alpha.0",
|
|
41
47
|
"react": "^18.2.0",
|
|
42
48
|
"react-dom": "^18.2.0"
|
|
43
49
|
},
|
|
44
50
|
"dependencies": {
|
|
45
|
-
"@mantine/store": "7.0.0",
|
|
51
|
+
"@mantine/store": "7.0.1-alpha.0",
|
|
46
52
|
"react-transition-group": "4.4.5"
|
|
47
53
|
},
|
|
48
54
|
"devDependencies": {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationContainer.js","sources":["../src/NotificationContainer.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useEffect } from 'react';\nimport { Notification, NotificationProps } from '@mantine/core';\nimport { NotificationData } from './notifications.store';\nimport { getAutoClose } from './get-auto-close/get-auto-close';\n\ninterface NotificationContainerProps extends NotificationProps {\n data: NotificationData;\n onHide(id: string): void;\n autoClose: number | false;\n}\n\nexport const NotificationContainer = forwardRef<HTMLDivElement, NotificationContainerProps>(\n ({ data, onHide, autoClose, ...others }, ref) => {\n const { autoClose: _autoClose, message, ...notificationProps } = data;\n const autoCloseDuration = getAutoClose(autoClose, data.autoClose);\n const autoCloseTimeout = useRef<number>();\n\n const cancelAutoClose = () => window.clearTimeout(autoCloseTimeout.current);\n\n const handleHide = () => {\n onHide(data.id!);\n cancelAutoClose();\n };\n\n const handleAutoClose = () => {\n if (typeof autoCloseDuration === 'number') {\n autoCloseTimeout.current = window.setTimeout(handleHide, autoCloseDuration);\n }\n };\n\n useEffect(() => {\n data.onOpen?.(data);\n }, []);\n\n useEffect(() => {\n handleAutoClose();\n return cancelAutoClose;\n }, [autoCloseDuration]);\n\n return (\n <Notification\n {...others}\n {...notificationProps}\n onClose={handleHide}\n ref={ref}\n onMouseEnter={cancelAutoClose}\n onMouseLeave={handleAutoClose}\n >\n {message}\n </Notification>\n );\n }\n);\n\nNotificationContainer.displayName = '@mantine/notifications/NotificationContainer';\n"],"names":[],"mappings":"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"}
|
package/esm/Notifications.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.js","sources":["../src/Notifications.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport {\n Transition as _Transition,\n TransitionGroup,\n TransitionStatus,\n} from 'react-transition-group';\nimport { useForceUpdate, useDidUpdate, useReducedMotion } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n PortalProps,\n getDefaultZIndex,\n useMantineTheme,\n OptionalPortal,\n rem,\n} from '@mantine/core';\nimport {\n useNotifications,\n NotificationsStore,\n notificationsStore,\n hideNotification,\n notifications,\n} from './notifications.store';\nimport { NotificationContainer } from './NotificationContainer';\nimport { getNotificationStateStyles } from './get-notification-state-styles';\nimport classes from './Notifications.module.css';\n\nconst Transition: any = _Transition;\n\nexport type NotificationsStylesNames = 'root' | 'notification';\nexport type NotificationsCssVariables = {\n root:\n | '--notifications-z-index'\n | '--notifications-top'\n | '--notifications-right'\n | '--notifications-left'\n | '--notifications-left'\n | '--notifications-transform'\n | '--notifications-container-width';\n};\n\nexport interface NotificationsProps\n extends BoxProps,\n StylesApiProps<NotificationsFactory>,\n ElementProps<'div'> {\n /** Notifications position, `'bottom-right'` by default */\n position?:\n | 'top-left'\n | 'top-right'\n | 'top-center'\n | 'bottom-left'\n | 'bottom-right'\n | 'bottom-center';\n\n /** Auto close timeout for all notifications in ms, `false` to disable auto close, can be overwritten for individual notifications in `notifications.show` function, `4000` by defualt */\n autoClose?: number | false;\n\n /** Notification transition duration in ms, `250` by default */\n transitionDuration?: number;\n\n /** Notification width, cannot exceed 100%, `440` by default */\n containerWidth?: number | string;\n\n /** Notification `max-height`, used for transitions, `200` by default */\n notificationMaxHeight?: number | string;\n\n /** Maximum number of notifications displayed at a time, other new notifications will be added to queue, `5` by default */\n limit?: number;\n\n /** Notifications container z-index, `400` by default */\n zIndex?: string | number;\n\n /** Props passed down to the `Portal` component */\n portalProps?: Omit<PortalProps, 'children'>;\n\n /** Store for notifications state, can be used to create multiple instances of notifications system in your application */\n store?: NotificationsStore;\n\n /** Determines whether notifications container should be rendered inside `Portal`, `true` by default */\n withinPortal?: boolean;\n}\n\nexport type NotificationsFactory = Factory<{\n props: NotificationsProps;\n ref: HTMLDivElement;\n stylesNames: NotificationsStylesNames;\n vars: NotificationsCssVariables;\n staticComponents: {\n show: typeof notifications.show;\n hide: typeof notifications.hide;\n update: typeof notifications.update;\n clean: typeof notifications.clean;\n cleanQueue: typeof notifications.cleanQueue;\n updateState: typeof notifications.updateState;\n };\n}>;\n\nconst defaultProps: Partial<NotificationsProps> = {\n position: 'bottom-right',\n autoClose: 4000,\n transitionDuration: 250,\n containerWidth: 440,\n notificationMaxHeight: 200,\n limit: 5,\n zIndex: getDefaultZIndex('overlay'),\n store: notificationsStore,\n withinPortal: true,\n};\n\nconst varsResolver = createVarsResolver<NotificationsFactory>(\n (_, { zIndex, position, containerWidth }) => {\n const [vertical, horizontal] = position!.split('-');\n\n return {\n root: {\n '--notifications-z-index': zIndex?.toString(),\n '--notifications-top': vertical === 'top' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-bottom': vertical === 'bottom' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-left':\n horizontal === 'left'\n ? 'var(--mantine-spacing-md)'\n : horizontal === 'center'\n ? '50%'\n : undefined,\n '--notifications-right': horizontal === 'right' ? 'var(--mantine-spacing-md)' : undefined,\n '--notifications-transform': horizontal === 'center' ? 'translateX(-50%)' : undefined,\n '--notifications-container-width': rem(containerWidth),\n },\n };\n }\n);\n\nexport const Notifications = factory<NotificationsFactory>((_props, ref) => {\n const props = useProps('Notifications', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n position,\n autoClose,\n transitionDuration,\n containerWidth,\n notificationMaxHeight,\n limit,\n zIndex,\n store,\n portalProps,\n withinPortal,\n ...others\n } = props;\n\n const theme = useMantineTheme();\n const data = useNotifications(store);\n const forceUpdate = useForceUpdate();\n const shouldReduceMotion = useReducedMotion();\n const refs = useRef<Record<string, HTMLDivElement>>({});\n const previousLength = useRef<number>(0);\n\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n const duration = reduceMotion ? 1 : transitionDuration;\n\n const getStyles = useStyles<NotificationsFactory>({\n name: 'Notifications',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n useDidUpdate(() => {\n if (data.notifications.length > previousLength.current) {\n setTimeout(() => forceUpdate(), 0);\n }\n previousLength.current = data.notifications.length;\n }, [data.notifications]);\n\n const items = data.notifications.map((notification) => (\n <Transition\n key={notification.id}\n timeout={duration}\n onEnter={() => refs.current[notification.id!].offsetHeight}\n nodeRef={{ current: refs.current[notification.id!] }}\n >\n {(state: TransitionStatus) => (\n <NotificationContainer\n {...getStyles('notification', {\n style: getNotificationStateStyles({\n state,\n position,\n transitionDuration: duration!,\n maxHeight: notificationMaxHeight!,\n }),\n })}\n ref={(node) => {\n refs.current[notification.id!] = node!;\n }}\n data={notification}\n onHide={(id) => hideNotification(id, store)}\n autoClose={autoClose!}\n />\n )}\n </Transition>\n ));\n\n return (\n <OptionalPortal withinPortal={withinPortal} {...portalProps}>\n <Box {...getStyles('root')} ref={ref} {...others}>\n <TransitionGroup>{items}</TransitionGroup>\n </Box>\n </OptionalPortal>\n );\n});\n\nNotifications.classes = classes;\nNotifications.displayName = '@mantine/notifications/Notifications';\nNotifications.show = notifications.show;\nNotifications.hide = notifications.hide;\nNotifications.update = notifications.update;\nNotifications.clean = notifications.clean;\nNotifications.cleanQueue = notifications.cleanQueue;\nNotifications.updateState = notifications.updateState;\n"],"names":["_Transition"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Notifications.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-auto-close.js","sources":["../../src/get-auto-close/get-auto-close.ts"],"sourcesContent":["export function getAutoClose(\n autoClose: boolean | number | undefined,\n notificationAutoClose: boolean | number | undefined\n) {\n if (typeof notificationAutoClose === 'number') {\n return notificationAutoClose;\n }\n\n if (notificationAutoClose === false || autoClose === false) {\n return false;\n }\n\n return autoClose;\n}\n"],"names":[],"mappings":"AAAO,SAAS,YAAY,CAAC,SAAS,EAAE,qBAAqB,EAAE;AAC/D,EAAE,IAAI,OAAO,qBAAqB,KAAK,QAAQ,EAAE;AACjD,IAAI,OAAO,qBAAqB,CAAC;AACjC,GAAG;AACH,EAAE,IAAI,qBAAqB,KAAK,KAAK,IAAI,SAAS,KAAK,KAAK,EAAE;AAC9D,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH,EAAE,OAAO,SAAS,CAAC;AACnB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-notification-state-styles.js","sources":["../src/get-notification-state-styles.ts"],"sourcesContent":["import { TransitionStatus } from 'react-transition-group';\nimport type { NotificationsProps } from './Notifications';\n\ninterface NotificationStateStylesProps {\n state: TransitionStatus;\n maxHeight: number | string;\n position: NotificationsProps['position'];\n transitionDuration: number;\n}\n\nconst transforms = {\n left: 'translateX(-100%)',\n right: 'translateX(100%)',\n 'top-center': 'translateY(-100%)',\n 'bottom-center': 'translateY(100%)',\n};\n\nconst noTransform = {\n left: 'translateX(0)',\n right: 'translateX(0)',\n 'top-center': 'translateY(0)',\n 'bottom-center': 'translateY(0)',\n};\n\nexport function getNotificationStateStyles({\n state,\n maxHeight,\n position,\n transitionDuration,\n}: NotificationStateStylesProps): React.CSSProperties {\n const [vertical, horizontal] = position!.split('-');\n const property = (\n horizontal === 'center' ? `${vertical}-center` : horizontal\n ) as keyof typeof transforms;\n\n const commonStyles: React.CSSProperties = {\n opacity: 0,\n maxHeight,\n transform: transforms[property],\n transitionDuration: `${transitionDuration}ms, ${transitionDuration}ms, ${transitionDuration}ms`,\n transitionTimingFunction: 'cubic-bezier(.51,.3,0,1.21), cubic-bezier(.51,.3,0,1.21), linear',\n transitionProperty: 'opacity, transform, max-height',\n };\n\n const inState: React.CSSProperties = {\n opacity: 1,\n transform: noTransform[property],\n };\n\n const outState: React.CSSProperties = {\n opacity: 0,\n maxHeight: 0,\n transform: transforms[property],\n };\n\n const transitionStyles = {\n entering: inState,\n entered: inState,\n exiting: outState,\n exited: outState,\n };\n\n return { ...commonStyles, ...transitionStyles[state as keyof typeof transitionStyles] };\n}\n"],"names":[],"mappings":"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"}
|
package/esm/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.store.js","sources":["../src/notifications.store.ts"],"sourcesContent":["import { NotificationProps } from '@mantine/core';\nimport { randomId } from '@mantine/hooks';\nimport { createStore, useStore, MantineStore } from '@mantine/store';\n\nexport interface NotificationData extends Omit<NotificationProps, 'onClose'> {\n /** Notification id, can be used to close or update notification */\n id?: string;\n\n /** Notification message, required for all notifications */\n message: React.ReactNode;\n\n /** Determines whether notification should be closed automatically,\n * number is auto close timeout in ms, overrides `autoClose` from `Notifications`\n * */\n autoClose?: boolean | number;\n\n /** Called when notification closes */\n onClose?(props: NotificationData): void;\n\n /** Called when notification opens */\n onOpen?(props: NotificationData): void;\n}\n\nexport interface NotificationsState {\n notifications: NotificationData[];\n queue: NotificationData[];\n limit: number;\n}\n\nexport type NotificationsStore = MantineStore<NotificationsState>;\n\nexport const createNotificationsStore = () =>\n createStore<NotificationsState>({\n notifications: [],\n queue: [],\n limit: 5,\n });\n\nexport const notificationsStore = createNotificationsStore();\nexport const useNotifications = (store: NotificationsStore = notificationsStore) => useStore(store);\n\nexport function updateNotificationsState(\n store: NotificationsStore,\n update: (notifications: NotificationData[]) => NotificationData[]\n) {\n const state = store.getState();\n const notifications = update([...state.notifications, ...state.queue]);\n\n store.setState({\n notifications: notifications.slice(0, state.limit),\n queue: notifications.slice(state.limit),\n limit: state.limit,\n });\n}\n\nexport function showNotification(\n notification: NotificationData,\n store: NotificationsStore = notificationsStore\n) {\n const id = notification.id || randomId();\n\n updateNotificationsState(store, (notifications) => {\n if (notification.id && notifications.some((n) => n.id === notification.id)) {\n return notifications;\n }\n\n return [...notifications, { ...notification, id }];\n });\n\n return id;\n}\n\nexport function hideNotification(id: string, store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, (notifications) =>\n notifications.filter((notification) => {\n if (notification.id === id) {\n notification.onClose?.(notification);\n return false;\n }\n\n return true;\n })\n );\n\n return id;\n}\n\nexport function updateNotification(\n notification: NotificationData,\n store: NotificationsStore = notificationsStore\n) {\n updateNotificationsState(store, (notifications) =>\n notifications.map((item) => {\n if (item.id === notification.id) {\n return { ...item, ...notification };\n }\n\n return item;\n })\n );\n\n return notification.id;\n}\n\nexport function cleanNotifications(store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, () => []);\n}\n\nexport function cleanNotificationsQueue(store: NotificationsStore = notificationsStore) {\n updateNotificationsState(store, (notifications) =>\n notifications.slice(0, store.getState().limit)\n );\n}\n\nexport const notifications = {\n show: showNotification,\n hide: hideNotification,\n update: updateNotification,\n clean: cleanNotifications,\n cleanQueue: cleanNotificationsQueue,\n updateState: updateNotificationsState,\n} as const;\n"],"names":[],"mappings":"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"}
|