@fuf-stack/pixels 0.39.4 → 0.39.5
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/dist/index.cjs +6 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -2
- package/dist/index.d.ts +17 -2
- package/dist/index.js +6 -8
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.cjs
CHANGED
|
@@ -145,7 +145,6 @@ var toastVariants = _pixelutils.tv.call(void 0, {
|
|
|
145
145
|
]
|
|
146
146
|
});
|
|
147
147
|
var addToast = ({
|
|
148
|
-
children = void 0,
|
|
149
148
|
className = void 0,
|
|
150
149
|
closeIcon = void 0,
|
|
151
150
|
color = "default",
|
|
@@ -154,11 +153,10 @@ var addToast = ({
|
|
|
154
153
|
icon = void 0,
|
|
155
154
|
loadingIcon = void 0,
|
|
156
155
|
onClose = void 0,
|
|
157
|
-
|
|
156
|
+
promise = void 0,
|
|
158
157
|
shouldShowTimeoutProgress = false,
|
|
159
158
|
showCloseButton = true,
|
|
160
159
|
showIcon = true,
|
|
161
|
-
// testId = undefined,
|
|
162
160
|
timeout = 5e3,
|
|
163
161
|
title = void 0,
|
|
164
162
|
variant = "bordered"
|
|
@@ -175,20 +173,20 @@ var addToast = ({
|
|
|
175
173
|
classNames,
|
|
176
174
|
closeIcon,
|
|
177
175
|
color: isHeroUIColor ? color : void 0,
|
|
178
|
-
// 'data-testid': testId,
|
|
176
|
+
// TODO: 'data-testid': testId,
|
|
179
177
|
// https://github.com/heroui-inc/heroui/issues/5033
|
|
180
178
|
// @ts-expect-error bug in hero-toast: description should be ReactNode
|
|
181
|
-
description
|
|
179
|
+
description,
|
|
182
180
|
endContent,
|
|
183
181
|
hideCloseButton: !showCloseButton,
|
|
184
182
|
hideIcon: !showIcon,
|
|
185
183
|
icon,
|
|
186
184
|
loadingIcon,
|
|
187
185
|
onClose,
|
|
188
|
-
|
|
186
|
+
promise,
|
|
189
187
|
shouldShowTimeoutProgress,
|
|
190
188
|
timeout,
|
|
191
|
-
title
|
|
189
|
+
title,
|
|
192
190
|
variant
|
|
193
191
|
});
|
|
194
192
|
};
|
|
@@ -203,7 +201,7 @@ var ToastProvider = ({
|
|
|
203
201
|
maxVisibleToasts = 5,
|
|
204
202
|
placement = "top-center",
|
|
205
203
|
toastProps = void 0,
|
|
206
|
-
toastOffset =
|
|
204
|
+
toastOffset = 26,
|
|
207
205
|
regionProps = void 0
|
|
208
206
|
}) => {
|
|
209
207
|
const variants = toastVariants({
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/index.cjs","../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"names":["heroToastVariants","variantsToClassNames"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/index.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingIcon: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'dark:bg-info-50/50 bg-info-50 text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n children?: ReactNode;\n className?: ClassName;\n closeIcon?: ReactNode;\n color?: AddToastVariantProps['color'];\n description?: ReactNode;\n endContent?: ReactNode;\n icon?: ReactNode;\n loadingIcon?: ReactNode;\n onClose?: () => void;\n // severity?:\n // | 'default'\n // | 'primary'\n // | 'secondary'\n // | 'success'\n // | 'warning'\n // | 'danger';\n shouldShowTimeoutProgress?: boolean;\n showCloseButton?: boolean;\n showIcon?: boolean;\n // testId?: string;\n timeout?: number;\n title?: ReactNode;\n variant?: AddToastVariantProps['variant'];\n}\n\n/**\n * addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nexport const addToast = ({\n children = undefined,\n className = undefined,\n closeIcon = undefined,\n color = 'default',\n description = undefined,\n endContent = undefined,\n icon = undefined,\n loadingIcon = undefined,\n onClose = undefined,\n // severity = 'default',\n shouldShowTimeoutProgress = false,\n showCloseButton = true,\n showIcon = true,\n // testId = undefined,\n timeout = 5000,\n title = undefined,\n variant = 'bordered',\n}: ToastProps) => {\n const variants = toastVariants({\n color,\n variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n color,\n );\n const classNames = variantsToClassNames(variants, className, 'base');\n heroAddToast({\n classNames,\n closeIcon,\n color: isHeroUIColor ? (color as HeroToastProps['color']) : undefined,\n // 'data-testid': testId,\n // https://github.com/heroui-inc/heroui/issues/5033\n // @ts-expect-error bug in hero-toast: description should be ReactNode\n description: description || title ? children : undefined,\n endContent,\n hideCloseButton: !showCloseButton,\n hideIcon: !showIcon,\n icon,\n loadingIcon,\n onClose,\n // severity={severity}\n shouldShowTimeoutProgress,\n timeout,\n title: (title || children) as string,\n variant,\n });\n};\n\nexport default addToast;\n","import type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ToastProps } from './addToast';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { ToastProvider as HeroToastProvider } from '@heroui/toast';\n\nimport { variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { toastVariants } from './addToast';\n\nexport type ToastProviderToastProps = Omit<\n ToastProps,\n 'description' | 'endContent' | 'title'\n>;\n\nexport interface ToastProviderProps {\n disableAnimation?: boolean;\n maxVisibleToasts?: number;\n placement?:\n | 'bottom-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'top-right'\n | 'top-left'\n | 'top-center';\n\n toastProps?: ToastProviderToastProps;\n toastOffset?: number;\n regionProps?: { classNames?: Record<'base', string> };\n}\n\n/**\n * ToastProvider component based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nconst ToastProvider = ({\n disableAnimation = false,\n maxVisibleToasts = 5,\n placement = 'top-center',\n toastProps = undefined,\n toastOffset = 0,\n regionProps = undefined,\n}: ToastProviderProps) => {\n const variants = toastVariants({\n color: toastProps?.color,\n variant: toastProps?.variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n toastProps?.color || '',\n );\n const classNames = variantsToClassNames(\n variants,\n toastProps?.className,\n 'base',\n );\n return (\n <HeroToastProvider\n disableAnimation={disableAnimation}\n maxVisibleToasts={maxVisibleToasts}\n placement={placement}\n regionProps={regionProps}\n toastOffset={toastOffset}\n toastProps={{\n ...toastProps,\n classNames,\n color: isHeroUIColor\n ? (toastProps?.color as HeroToastProps['color'])\n : undefined,\n }}\n />\n );\n};\n\nexport default ToastProvider;\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/index.cjs","../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"names":["heroToastVariants","variantsToClassNames"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/index.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingIcon: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'dark:bg-info-50/50 bg-info-50 text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Icon displayed at the end of the Alert */\n closeIcon?: ReactNode;\n /** Color of the alert */\n color?: AddToastVariantProps['color'];\n /** Content displayed inside the Alert */\n description?: ReactNode;\n /** Content displayed at the end of the Alert */\n endContent?: ReactNode;\n /** Icon displayed at the start of the Alert */\n icon?: ReactNode;\n /** Icon or animation displayed until promise is resolved */\n loadingIcon?: ReactNode;\n /** Callback function called when the toast is closed */\n onClose?: () => void;\n /** Promise based on which the notification will be styled */\n promise?: Promise<void>;\n /** Whether the toast should show a progress bar */\n shouldShowTimeoutProgress?: boolean;\n /** Whether the toast should show a close button */\n showCloseButton?: boolean;\n /** Whether the toast should show an icon */\n showIcon?: boolean;\n /** Time the toast is displayed */\n timeout?: number;\n /** Content displayed at the top of the toast */\n title?: ReactNode;\n /** Variant of the toast */\n variant?: AddToastVariantProps['variant'];\n}\n\n/**\n * addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nexport const addToast = ({\n className = undefined,\n closeIcon = undefined,\n color = 'default',\n description = undefined,\n endContent = undefined,\n icon = undefined,\n loadingIcon = undefined,\n onClose = undefined,\n promise = undefined,\n shouldShowTimeoutProgress = false,\n showCloseButton = true,\n showIcon = true,\n timeout = 5000,\n title = undefined,\n variant = 'bordered',\n}: ToastProps) => {\n const variants = toastVariants({\n color,\n variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n color,\n );\n const classNames = variantsToClassNames(variants, className, 'base');\n heroAddToast({\n classNames,\n closeIcon,\n color: isHeroUIColor ? (color as HeroToastProps['color']) : undefined,\n // TODO: 'data-testid': testId,\n // https://github.com/heroui-inc/heroui/issues/5033\n // @ts-expect-error bug in hero-toast: description should be ReactNode\n description,\n endContent,\n hideCloseButton: !showCloseButton,\n hideIcon: !showIcon,\n icon,\n loadingIcon,\n onClose,\n promise,\n shouldShowTimeoutProgress,\n timeout,\n title,\n variant,\n });\n};\n\nexport default addToast;\n","import type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ToastProps } from './addToast';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { ToastProvider as HeroToastProvider } from '@heroui/toast';\n\nimport { variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { toastVariants } from './addToast';\n\nexport type ToastProviderToastProps = Omit<\n ToastProps,\n 'description' | 'endContent' | 'title'\n>;\n\nexport interface ToastProviderProps {\n disableAnimation?: boolean;\n maxVisibleToasts?: number;\n placement?:\n | 'bottom-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'top-right'\n | 'top-left'\n | 'top-center';\n\n toastProps?: ToastProviderToastProps;\n toastOffset?: number;\n regionProps?: { classNames?: Record<'base', string> };\n}\n\n/**\n * ToastProvider component based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nconst ToastProvider = ({\n disableAnimation = false,\n maxVisibleToasts = 5,\n placement = 'top-center',\n toastProps = undefined,\n toastOffset = 26,\n regionProps = undefined,\n}: ToastProviderProps) => {\n const variants = toastVariants({\n color: toastProps?.color,\n variant: toastProps?.variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n toastProps?.color || '',\n );\n const classNames = variantsToClassNames(\n variants,\n toastProps?.className,\n 'base',\n );\n return (\n <HeroToastProvider\n disableAnimation={disableAnimation}\n maxVisibleToasts={maxVisibleToasts}\n placement={placement}\n regionProps={regionProps}\n toastOffset={toastOffset}\n toastProps={{\n ...toastProps,\n classNames,\n color: isHeroUIColor\n ? (toastProps?.color as HeroToastProps['color'])\n : undefined,\n }}\n />\n );\n};\n\nexport default ToastProvider;\n"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -269,26 +269,41 @@ declare const toastVariants: tailwind_variants.TVReturnType<{
|
|
|
269
269
|
type AddToastVariantProps = TVProps<typeof toastVariants>;
|
|
270
270
|
type ClassName = TVClassName<typeof toastVariants>;
|
|
271
271
|
interface ToastProps extends AddToastVariantProps {
|
|
272
|
-
|
|
272
|
+
/** CSS class name */
|
|
273
273
|
className?: ClassName;
|
|
274
|
+
/** Icon displayed at the end of the Alert */
|
|
274
275
|
closeIcon?: ReactNode;
|
|
276
|
+
/** Color of the alert */
|
|
275
277
|
color?: AddToastVariantProps['color'];
|
|
278
|
+
/** Content displayed inside the Alert */
|
|
276
279
|
description?: ReactNode;
|
|
280
|
+
/** Content displayed at the end of the Alert */
|
|
277
281
|
endContent?: ReactNode;
|
|
282
|
+
/** Icon displayed at the start of the Alert */
|
|
278
283
|
icon?: ReactNode;
|
|
284
|
+
/** Icon or animation displayed until promise is resolved */
|
|
279
285
|
loadingIcon?: ReactNode;
|
|
286
|
+
/** Callback function called when the toast is closed */
|
|
280
287
|
onClose?: () => void;
|
|
288
|
+
/** Promise based on which the notification will be styled */
|
|
289
|
+
promise?: Promise<void>;
|
|
290
|
+
/** Whether the toast should show a progress bar */
|
|
281
291
|
shouldShowTimeoutProgress?: boolean;
|
|
292
|
+
/** Whether the toast should show a close button */
|
|
282
293
|
showCloseButton?: boolean;
|
|
294
|
+
/** Whether the toast should show an icon */
|
|
283
295
|
showIcon?: boolean;
|
|
296
|
+
/** Time the toast is displayed */
|
|
284
297
|
timeout?: number;
|
|
298
|
+
/** Content displayed at the top of the toast */
|
|
285
299
|
title?: ReactNode;
|
|
300
|
+
/** Variant of the toast */
|
|
286
301
|
variant?: AddToastVariantProps['variant'];
|
|
287
302
|
}
|
|
288
303
|
/**
|
|
289
304
|
* addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)
|
|
290
305
|
*/
|
|
291
|
-
declare const addToast: ({
|
|
306
|
+
declare const addToast: ({ className, closeIcon, color, description, endContent, icon, loadingIcon, onClose, promise, shouldShowTimeoutProgress, showCloseButton, showIcon, timeout, title, variant, }: ToastProps) => void;
|
|
292
307
|
|
|
293
308
|
type ToastProviderToastProps = Omit<ToastProps, 'description' | 'endContent' | 'title'>;
|
|
294
309
|
interface ToastProviderProps {
|
package/dist/index.d.ts
CHANGED
|
@@ -269,26 +269,41 @@ declare const toastVariants: tailwind_variants.TVReturnType<{
|
|
|
269
269
|
type AddToastVariantProps = TVProps<typeof toastVariants>;
|
|
270
270
|
type ClassName = TVClassName<typeof toastVariants>;
|
|
271
271
|
interface ToastProps extends AddToastVariantProps {
|
|
272
|
-
|
|
272
|
+
/** CSS class name */
|
|
273
273
|
className?: ClassName;
|
|
274
|
+
/** Icon displayed at the end of the Alert */
|
|
274
275
|
closeIcon?: ReactNode;
|
|
276
|
+
/** Color of the alert */
|
|
275
277
|
color?: AddToastVariantProps['color'];
|
|
278
|
+
/** Content displayed inside the Alert */
|
|
276
279
|
description?: ReactNode;
|
|
280
|
+
/** Content displayed at the end of the Alert */
|
|
277
281
|
endContent?: ReactNode;
|
|
282
|
+
/** Icon displayed at the start of the Alert */
|
|
278
283
|
icon?: ReactNode;
|
|
284
|
+
/** Icon or animation displayed until promise is resolved */
|
|
279
285
|
loadingIcon?: ReactNode;
|
|
286
|
+
/** Callback function called when the toast is closed */
|
|
280
287
|
onClose?: () => void;
|
|
288
|
+
/** Promise based on which the notification will be styled */
|
|
289
|
+
promise?: Promise<void>;
|
|
290
|
+
/** Whether the toast should show a progress bar */
|
|
281
291
|
shouldShowTimeoutProgress?: boolean;
|
|
292
|
+
/** Whether the toast should show a close button */
|
|
282
293
|
showCloseButton?: boolean;
|
|
294
|
+
/** Whether the toast should show an icon */
|
|
283
295
|
showIcon?: boolean;
|
|
296
|
+
/** Time the toast is displayed */
|
|
284
297
|
timeout?: number;
|
|
298
|
+
/** Content displayed at the top of the toast */
|
|
285
299
|
title?: ReactNode;
|
|
300
|
+
/** Variant of the toast */
|
|
286
301
|
variant?: AddToastVariantProps['variant'];
|
|
287
302
|
}
|
|
288
303
|
/**
|
|
289
304
|
* addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)
|
|
290
305
|
*/
|
|
291
|
-
declare const addToast: ({
|
|
306
|
+
declare const addToast: ({ className, closeIcon, color, description, endContent, icon, loadingIcon, onClose, promise, shouldShowTimeoutProgress, showCloseButton, showIcon, timeout, title, variant, }: ToastProps) => void;
|
|
292
307
|
|
|
293
308
|
type ToastProviderToastProps = Omit<ToastProps, 'description' | 'endContent' | 'title'>;
|
|
294
309
|
interface ToastProviderProps {
|
package/dist/index.js
CHANGED
|
@@ -145,7 +145,6 @@ var toastVariants = tv({
|
|
|
145
145
|
]
|
|
146
146
|
});
|
|
147
147
|
var addToast = ({
|
|
148
|
-
children = void 0,
|
|
149
148
|
className = void 0,
|
|
150
149
|
closeIcon = void 0,
|
|
151
150
|
color = "default",
|
|
@@ -154,11 +153,10 @@ var addToast = ({
|
|
|
154
153
|
icon = void 0,
|
|
155
154
|
loadingIcon = void 0,
|
|
156
155
|
onClose = void 0,
|
|
157
|
-
|
|
156
|
+
promise = void 0,
|
|
158
157
|
shouldShowTimeoutProgress = false,
|
|
159
158
|
showCloseButton = true,
|
|
160
159
|
showIcon = true,
|
|
161
|
-
// testId = undefined,
|
|
162
160
|
timeout = 5e3,
|
|
163
161
|
title = void 0,
|
|
164
162
|
variant = "bordered"
|
|
@@ -175,20 +173,20 @@ var addToast = ({
|
|
|
175
173
|
classNames,
|
|
176
174
|
closeIcon,
|
|
177
175
|
color: isHeroUIColor ? color : void 0,
|
|
178
|
-
// 'data-testid': testId,
|
|
176
|
+
// TODO: 'data-testid': testId,
|
|
179
177
|
// https://github.com/heroui-inc/heroui/issues/5033
|
|
180
178
|
// @ts-expect-error bug in hero-toast: description should be ReactNode
|
|
181
|
-
description
|
|
179
|
+
description,
|
|
182
180
|
endContent,
|
|
183
181
|
hideCloseButton: !showCloseButton,
|
|
184
182
|
hideIcon: !showIcon,
|
|
185
183
|
icon,
|
|
186
184
|
loadingIcon,
|
|
187
185
|
onClose,
|
|
188
|
-
|
|
186
|
+
promise,
|
|
189
187
|
shouldShowTimeoutProgress,
|
|
190
188
|
timeout,
|
|
191
|
-
title
|
|
189
|
+
title,
|
|
192
190
|
variant
|
|
193
191
|
});
|
|
194
192
|
};
|
|
@@ -203,7 +201,7 @@ var ToastProvider = ({
|
|
|
203
201
|
maxVisibleToasts = 5,
|
|
204
202
|
placement = "top-center",
|
|
205
203
|
toastProps = void 0,
|
|
206
|
-
toastOffset =
|
|
204
|
+
toastOffset = 26,
|
|
207
205
|
regionProps = void 0
|
|
208
206
|
}) => {
|
|
209
207
|
const variants = toastVariants({
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingIcon: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'dark:bg-info-50/50 bg-info-50 text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n
|
|
1
|
+
{"version":3,"sources":["../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingIcon: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'dark:bg-info-50/50 bg-info-50 text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Icon displayed at the end of the Alert */\n closeIcon?: ReactNode;\n /** Color of the alert */\n color?: AddToastVariantProps['color'];\n /** Content displayed inside the Alert */\n description?: ReactNode;\n /** Content displayed at the end of the Alert */\n endContent?: ReactNode;\n /** Icon displayed at the start of the Alert */\n icon?: ReactNode;\n /** Icon or animation displayed until promise is resolved */\n loadingIcon?: ReactNode;\n /** Callback function called when the toast is closed */\n onClose?: () => void;\n /** Promise based on which the notification will be styled */\n promise?: Promise<void>;\n /** Whether the toast should show a progress bar */\n shouldShowTimeoutProgress?: boolean;\n /** Whether the toast should show a close button */\n showCloseButton?: boolean;\n /** Whether the toast should show an icon */\n showIcon?: boolean;\n /** Time the toast is displayed */\n timeout?: number;\n /** Content displayed at the top of the toast */\n title?: ReactNode;\n /** Variant of the toast */\n variant?: AddToastVariantProps['variant'];\n}\n\n/**\n * addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nexport const addToast = ({\n className = undefined,\n closeIcon = undefined,\n color = 'default',\n description = undefined,\n endContent = undefined,\n icon = undefined,\n loadingIcon = undefined,\n onClose = undefined,\n promise = undefined,\n shouldShowTimeoutProgress = false,\n showCloseButton = true,\n showIcon = true,\n timeout = 5000,\n title = undefined,\n variant = 'bordered',\n}: ToastProps) => {\n const variants = toastVariants({\n color,\n variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n color,\n );\n const classNames = variantsToClassNames(variants, className, 'base');\n heroAddToast({\n classNames,\n closeIcon,\n color: isHeroUIColor ? (color as HeroToastProps['color']) : undefined,\n // TODO: 'data-testid': testId,\n // https://github.com/heroui-inc/heroui/issues/5033\n // @ts-expect-error bug in hero-toast: description should be ReactNode\n description,\n endContent,\n hideCloseButton: !showCloseButton,\n hideIcon: !showIcon,\n icon,\n loadingIcon,\n onClose,\n promise,\n shouldShowTimeoutProgress,\n timeout,\n title,\n variant,\n });\n};\n\nexport default addToast;\n","import type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ToastProps } from './addToast';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { ToastProvider as HeroToastProvider } from '@heroui/toast';\n\nimport { variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { toastVariants } from './addToast';\n\nexport type ToastProviderToastProps = Omit<\n ToastProps,\n 'description' | 'endContent' | 'title'\n>;\n\nexport interface ToastProviderProps {\n disableAnimation?: boolean;\n maxVisibleToasts?: number;\n placement?:\n | 'bottom-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'top-right'\n | 'top-left'\n | 'top-center';\n\n toastProps?: ToastProviderToastProps;\n toastOffset?: number;\n regionProps?: { classNames?: Record<'base', string> };\n}\n\n/**\n * ToastProvider component based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nconst ToastProvider = ({\n disableAnimation = false,\n maxVisibleToasts = 5,\n placement = 'top-center',\n toastProps = undefined,\n toastOffset = 26,\n regionProps = undefined,\n}: ToastProviderProps) => {\n const variants = toastVariants({\n color: toastProps?.color,\n variant: toastProps?.variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n toastProps?.color || '',\n );\n const classNames = variantsToClassNames(\n variants,\n toastProps?.className,\n 'base',\n );\n return (\n <HeroToastProvider\n disableAnimation={disableAnimation}\n maxVisibleToasts={maxVisibleToasts}\n placement={placement}\n regionProps={regionProps}\n toastOffset={toastOffset}\n toastProps={{\n ...toastProps,\n classNames,\n color: isHeroUIColor\n ? (toastProps?.color as HeroToastProps['color'])\n : undefined,\n }}\n />\n );\n};\n\nexport default ToastProvider;\n"],"mappings":"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","names":["heroToastVariants","variantsToClassNames","heroToastVariants","variantsToClassNames"]}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@fuf-stack/pixels",
|
|
3
3
|
"description": "fuf core react component library",
|
|
4
4
|
"author": "Hannes Tiede",
|
|
5
|
-
"version": "0.39.
|
|
5
|
+
"version": "0.39.5",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/index.cjs",
|
|
8
8
|
"module": "./dist/index.js",
|
|
@@ -178,10 +178,10 @@
|
|
|
178
178
|
"@uiw/react-json-view": "2.0.0-alpha.30",
|
|
179
179
|
"react": "19.0.0",
|
|
180
180
|
"react-dom": "19.0.0",
|
|
181
|
-
"@repo/tailwind-config": "0.0.1",
|
|
182
181
|
"@repo/tsup-config": "0.0.1",
|
|
183
|
-
"@repo/
|
|
184
|
-
"@repo/
|
|
182
|
+
"@repo/storybook-config": "0.0.1",
|
|
183
|
+
"@repo/tailwind-config": "0.0.1",
|
|
184
|
+
"@repo/vite-config": "0.0.1"
|
|
185
185
|
},
|
|
186
186
|
"scripts": {
|
|
187
187
|
"build": "tsup --config node_modules/@repo/tsup-config/config.ts --dts-resolve",
|