@bigbinary/neeto-atoms 1.0.80 → 1.0.82
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/Accordion-DVMgPBum.js.map +1 -1
- package/dist/{DatePicker-1OZmK2ki.js → DatePicker-_y2WiSo6.js} +103 -19
- package/dist/DatePicker-_y2WiSo6.js.map +1 -0
- package/dist/{Input-B7twzkUr.js → Input-CYKHBpJn.js} +6 -3
- package/dist/Input-CYKHBpJn.js.map +1 -0
- package/dist/{Toastr-tmAtpmwv.js → Toastr-DA3Lcm18.js} +13 -8
- package/dist/Toastr-DA3Lcm18.js.map +1 -0
- package/dist/cjs/Accordion-D75SDnkY.js.map +1 -1
- package/dist/cjs/{DatePicker-Ccylp0hF.js → DatePicker-CW4FZCk6.js} +102 -18
- package/dist/cjs/DatePicker-CW4FZCk6.js.map +1 -0
- package/dist/cjs/{Input-Dwl5OhCq.js → Input-k6MkhSTc.js} +6 -3
- package/dist/cjs/Input-k6MkhSTc.js.map +1 -0
- package/dist/cjs/{Toastr-CQ-R8VcZ.js → Toastr-BgT_Fq7J.js} +13 -8
- package/dist/cjs/Toastr-BgT_Fq7J.js.map +1 -0
- package/dist/cjs/components/DatePicker.js +1 -1
- package/dist/cjs/components/Input.js +1 -1
- package/dist/cjs/components/Toastr.js +1 -1
- package/dist/cjs/components/index.js +3 -3
- package/dist/cjs/formik/Input.js +1 -1
- package/dist/cjs/formik/index.js +1 -1
- package/dist/cjs/index.js +3 -3
- package/dist/cjs/primitives/Dialog.js +11 -2
- package/dist/cjs/primitives/Dialog.js.map +1 -1
- package/dist/cjs/primitives/Sheet.js +2 -2
- package/dist/cjs/primitives/Sheet.js.map +1 -1
- package/dist/components/Accordion/Accordion.d.ts +3 -3
- package/dist/components/Alert.js +2 -2
- package/dist/components/DatePicker/RangeCalendar.d.ts +2 -1
- package/dist/components/DatePicker/useRangePicker.d.ts +2 -2
- package/dist/components/DatePicker.js +1 -1
- package/dist/components/Dialog.js +2 -2
- package/dist/components/Input.js +1 -1
- package/dist/components/Sheet.js +2 -2
- package/dist/components/Toastr/Toastr.d.ts +2 -1
- package/dist/components/Toastr/ToastrBody.d.ts +2 -1
- package/dist/components/Toastr/utils.d.ts +4 -3
- package/dist/components/Toastr.js +1 -1
- package/dist/components/index.js +6 -6
- package/dist/{dialog--Qm4MZDo.js → dialog-BVHqPY9y.js} +3 -3
- package/dist/{dialog--Qm4MZDo.js.map → dialog-BVHqPY9y.js.map} +1 -1
- package/dist/formik/BlockNavigation.js +2 -2
- package/dist/formik/Input.js +1 -1
- package/dist/formik/index.js +3 -3
- package/dist/{index-B7SdntLB.js → index-GJ3FauH8.js} +2 -2
- package/dist/{index-B7SdntLB.js.map → index-GJ3FauH8.js.map} +1 -1
- package/dist/index.js +6 -6
- package/dist/primitives/AlertDialog.js +1 -1
- package/dist/primitives/Command.js +2 -2
- package/dist/primitives/Dialog.d.ts +1 -1
- package/dist/primitives/Dialog.js +13 -4
- package/dist/primitives/Dialog.js.map +1 -1
- package/dist/primitives/Drawer.js +1 -1
- package/dist/primitives/Sheet.js +4 -4
- package/dist/primitives/Sheet.js.map +1 -1
- package/dist/primitives/Sidebar.js +2 -2
- package/dist/primitives/index.js +3 -3
- package/dist/{sheet-BIqq9HBB.js → sheet-DNANcGkk.js} +2 -2
- package/dist/{sheet-BIqq9HBB.js.map → sheet-DNANcGkk.js.map} +1 -1
- package/package.json +1 -1
- package/dist/DatePicker-1OZmK2ki.js.map +0 -1
- package/dist/Input-B7twzkUr.js.map +0 -1
- package/dist/Toastr-tmAtpmwv.js.map +0 -1
- package/dist/cjs/DatePicker-Ccylp0hF.js.map +0 -1
- package/dist/cjs/Input-Dwl5OhCq.js.map +0 -1
- package/dist/cjs/Toastr-CQ-R8VcZ.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input-k6MkhSTc.js","sources":["../../src/components/Input/constants.ts","../../src/components/Input/utils.ts","../../src/components/Input/Input.tsx"],"sourcesContent":["// Mobile (<768px) uses 16px input font-size to prevent iOS Safari auto-zoom\n// on focus. Desktop (md+) keeps the original text sizes. Small variant also\n// bumps its height on mobile so 16px text doesn't look cramped in a 28px\n// container; medium and large keep their desktop heights.\nexport const SIZE_CONFIG = {\n small: {\n group: \"h-8 md:h-7\",\n input: \"text-base md:text-xs px-2\",\n addonStart: \"ps-1.5\",\n addonEnd: \"pe-1.5\",\n icon: \"size-3.5\",\n },\n medium: {\n group: \"h-8\",\n input: \"text-base md:text-sm\",\n addonStart: \"ps-2\",\n addonEnd: \"pe-2\",\n icon: \"size-4\",\n },\n large: {\n group: \"h-10\",\n input: \"text-base md:text-sm\",\n addonStart: \"ps-2.5\",\n addonEnd: \"pe-2.5\",\n icon: \"size-5\",\n },\n};\n","import React from \"react\";\n\nexport function toFixed(numStr: string, prec: number): string {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(prec);\n}\n\nexport function formatWithPrecision(\n value: string | number | undefined,\n precision: number\n): string | undefined {\n if (precision < 0 || !value) return value as string | undefined;\n\n const str = value.toString();\n const trimmed = str.trim();\n if (trimmed !== \"\" && !Number.isNaN(Number(trimmed)))\n return toFixed(str, precision);\n\n return str;\n}\n\nexport function enforceDecimalPrecision(\n value: string,\n precision: number\n): string {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n return `${parts[0]}.${parts[1].substring(0, precision)}`;\n}\n\nexport function formatWithRejectCharsRegex(\n value: string,\n rejectCharsRegex?: RegExp\n): string {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return value.replace(globalRegex, \"\");\n}\n\nexport function getTrimmedValue(\n value: string | number,\n disableTrimOnBlur: boolean\n): string | number {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n}\n\nexport function preserveCursor(\n e: React.ChangeEvent<HTMLInputElement>,\n updateValueFn: () => React.ChangeEvent<HTMLInputElement>\n) {\n const input = e.target;\n const prevCursor = input.selectionStart;\n const prevValue = input.value;\n\n const updatedEvent = updateValueFn();\n\n const lengthDiff = input.value.length - prevValue.length;\n const newCursor = Math.max(0, (prevCursor ?? 0) + lengthDiff);\n\n const restore = () => {\n if (document.activeElement !== input) return;\n if (input.type === \"number\") return;\n\n input.setSelectionRange(newCursor, newCursor);\n };\n\n // Schedule via microtask (fires before paint, before any other event handlers run)\n // and fall back to RAF only if the microtask didn't run for some reason.\n // Leaving both armed races stale RAFs against subsequent keystrokes' onChange,\n // which corrupts cursor position under fast typing (jsdom + user-event).\n const rafId = requestAnimationFrame(restore);\n queueMicrotask(() => {\n cancelAnimationFrame(rafId);\n restore();\n });\n\n return updatedEvent;\n}\n","import React, { forwardRef, useId, useState } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport {\n Field,\n FieldLabel,\n FieldContent,\n FieldDescription,\n FieldError,\n} from \"src/primitives/Field\";\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupText,\n InputGroupInput,\n} from \"src/primitives/InputGroup\";\nimport { withIconSize, type IconLike } from \"src/utils/withIconSize\";\n\nimport { SIZE_CONFIG } from \"./constants\";\nimport {\n formatWithPrecision,\n enforceDecimalPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n preserveCursor,\n} from \"./utils\";\n\ntype InputSize = \"small\" | \"medium\" | \"large\";\n\nexport interface InputProps extends Omit<\n React.ComponentProps<\"input\">,\n \"size\" | \"prefix\" | \"value\"\n> {\n /** Controlled value. */\n value?: string | number;\n /** Size of the input. */\n size?: InputSize;\n /** Input type. */\n type?: string;\n /** Label displayed above the input. */\n label?: string;\n /** Error message displayed below the input. */\n error?: string;\n /** Help text displayed below the input. Accepts string or ReactNode. */\n helpText?: React.ReactNode;\n /** Content rendered before the input. Accepts an element, a component\n * reference (e.g. `Search` from lucide-react), or any other React node. */\n prefix?: IconLike;\n /** Content rendered after the input. Accepts an element, a component\n * reference (e.g. `Search` from lucide-react), or any other React node. */\n suffix?: IconLike;\n /** Removes borders from the input. */\n nakedInput?: boolean;\n /** HTML size attribute for the input element. */\n contentSize?: number;\n /** Maximum character limit. Counter visible at 85%. */\n maxLength?: number;\n /** Allow typing past maxLength, show error styling on count. */\n unlimitedChars?: boolean;\n /** Regex to reject matching characters from input. */\n rejectCharsRegex?: RegExp;\n /** Prevent trimming whitespace on blur. */\n disableTrimOnBlur?: boolean;\n /** Decimal places for number formatting. -1 to disable. */\n precision?: number;\n /** Props forwarded to the Label element. */\n labelProps?: React.ComponentProps<typeof FieldLabel>;\n /** Additional class name for the outermost wrapper. */\n className?: string;\n}\n\nconst Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n size = \"medium\",\n type = \"text\",\n label = \"\",\n error = \"\",\n helpText = \"\",\n prefix = null,\n suffix = null,\n disabled = false,\n nakedInput = false,\n contentSize,\n required = false,\n maxLength,\n unlimitedChars = false,\n rejectCharsRegex,\n disableTrimOnBlur = false,\n precision = -1,\n labelProps,\n className = \"\",\n onBlur,\n onChange,\n value: controlledValue,\n ...otherProps\n },\n ref\n ) => {\n const generatedId = useId();\n const id = otherProps.id ?? generatedId;\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n // Controlled / uncontrolled value tracking\n const [valueInternal, setValueInternal] = useState(controlledValue);\n const isControlled = controlledValue !== undefined;\n\n const value =\n formatWithPrecision(controlledValue, precision) ?? valueInternal ?? \"\";\n const valueLength = value?.toString().length || 0;\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n const isCharacterLimitVisible =\n isMaxLengthPresent && valueLength >= maxLength! * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength!;\n\n // --- Handlers ---\n\n const onChangeInternal = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setValueInternal(e.target.value);\n }\n onChange?.(e);\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (type === \"file\") {\n onChangeInternal(e);\n\n return;\n }\n\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n if (formattedValue !== e.target.value) {\n preserveCursor(e, () => {\n const syntheticEvent = Object.create(e, {\n target: { value: { ...e.target, value: formattedValue } },\n });\n e.target.value = formattedValue;\n onChangeInternal(syntheticEvent);\n\n return syntheticEvent;\n });\n } else {\n onChangeInternal(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n if (type === \"file\") {\n onBlur?.(e);\n\n return;\n }\n\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== undefined && formattedValue !== value) {\n e.target.value = formattedValue.toString();\n handleChange(e as unknown as React.ChangeEvent<HTMLInputElement>);\n }\n\n onBlur?.(e);\n };\n\n const handleWheel = (e: React.WheelEvent<HTMLInputElement>) => {\n if (type === \"number\") (e.target as HTMLInputElement).blur();\n };\n\n // --- aria-describedby ---\n\n const ariaDescribedBy =\n [error ? errorId : null, helpText ? helpTextId : null]\n .filter(Boolean)\n .join(\" \") || undefined;\n\n // --- Render ---\n\n const hasField = !!(label || error || helpText);\n const sizeConfig = SIZE_CONFIG[size];\n\n const inputGroup = (\n <InputGroup\n className={cn(\n sizeConfig.group,\n nakedInput &&\n \"border-0 shadow-none has-[[data-slot=input-group-control]:focus-visible]:ring-0 has-[[data-slot=input-group-control]:focus-visible]:border-transparent\",\n !!error &&\n !nakedInput &&\n \"border-destructive ring-destructive/20 ring-3\",\n !hasField && className\n )}\n >\n {prefix && (\n <InputGroupAddon\n align=\"inline-start\"\n className={sizeConfig.addonStart}\n >\n <InputGroupText>\n {withIconSize(prefix, sizeConfig.icon)}\n </InputGroupText>\n </InputGroupAddon>\n )}\n <InputGroupInput\n ref={ref}\n id={id}\n type={type}\n disabled={disabled}\n required={required}\n size={contentSize}\n aria-invalid={!!error || undefined}\n aria-describedby={ariaDescribedBy}\n className={cn(sizeConfig.input, nakedInput && \"px-0\")}\n value={value}\n onBlur={handleBlur}\n onChange={handleChange}\n onWheel={handleWheel}\n {...(isMaxLengthPresent && !unlimitedChars ? { maxLength } : {})}\n {...otherProps}\n />\n {suffix && (\n <InputGroupAddon align=\"inline-end\" className={sizeConfig.addonEnd}>\n <InputGroupText>\n {withIconSize(suffix, sizeConfig.icon)}\n </InputGroupText>\n </InputGroupAddon>\n )}\n </InputGroup>\n );\n\n if (!hasField) {\n return inputGroup;\n }\n\n return (\n <Field\n data-disabled={disabled || undefined}\n data-invalid={!!error || undefined}\n className={className}\n >\n {(label || isCharacterLimitVisible) && (\n <div className=\"flex items-center justify-between\">\n {label && (\n <FieldLabel htmlFor={id} {...labelProps}>\n {label}\n {required && (\n <span aria-hidden=\"true\" className=\"text-destructive\">\n *\n </span>\n )}\n </FieldLabel>\n )}\n {isCharacterLimitVisible && (\n <span\n className={cn(\n \"text-xs tabular-nums\",\n maxLengthError ? \"text-destructive\" : \"text-muted-foreground\"\n )}\n >\n {valueLength}/{maxLength}\n </span>\n )}\n </div>\n )}\n <FieldContent>\n {inputGroup}\n {!!error && <FieldError id={errorId}>{error}</FieldError>}\n {helpText && (\n <FieldDescription id={helpTextId}>{helpText}</FieldDescription>\n )}\n </FieldContent>\n </Field>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nexport { Input };\n"],"names":["forwardRef","useId","useState","jsxs","InputGroup","cn","jsx","InputGroupAddon","InputGroupText","withIconSize","InputGroupInput","Field","FieldLabel","FieldContent","FieldError","FieldDescription"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ var utils = require('./utils-BhM0B89p.js');
|
|
|
6
6
|
var triangleAlert = require('./triangle-alert-CC-cck8p.js');
|
|
7
7
|
var info = require('./info-DGfDptn1.js');
|
|
8
8
|
var x = require('./x-Brw3FJst.js');
|
|
9
|
+
var React = require('react');
|
|
9
10
|
|
|
10
11
|
const ICONS = {
|
|
11
12
|
success: index.CircleCheck,
|
|
@@ -66,6 +67,7 @@ const ToastrBody = ({
|
|
|
66
67
|
|
|
67
68
|
const activeToasts = /* @__PURE__ */ new Set();
|
|
68
69
|
function toastKey(type, message, buttonLabel) {
|
|
70
|
+
if (typeof message !== "string") return null;
|
|
69
71
|
return `${type}::${message}::${buttonLabel ?? ""}`;
|
|
70
72
|
}
|
|
71
73
|
function getContentDir() {
|
|
@@ -74,10 +76,13 @@ function getContentDir() {
|
|
|
74
76
|
}
|
|
75
77
|
function resolveMessage(message) {
|
|
76
78
|
if (typeof message === "string") return message;
|
|
79
|
+
if (React.isValidElement(message)) return message;
|
|
80
|
+
if (Array.isArray(message)) return message;
|
|
77
81
|
if (message && typeof message === "object") {
|
|
78
|
-
|
|
79
|
-
if (
|
|
80
|
-
if (
|
|
82
|
+
const obj = message;
|
|
83
|
+
if (obj.customMessage) return obj.customMessage;
|
|
84
|
+
if (obj.notice) return obj.notice;
|
|
85
|
+
if (obj.noticeCode) return obj.noticeCode;
|
|
81
86
|
}
|
|
82
87
|
return String(message);
|
|
83
88
|
}
|
|
@@ -124,18 +129,18 @@ function showToast(type, message, config) {
|
|
|
124
129
|
...restConfig
|
|
125
130
|
} = config ?? {};
|
|
126
131
|
const key = toastKey(type, message, buttonLabel);
|
|
127
|
-
if (activeToasts.has(key)) return void 0;
|
|
128
|
-
activeToasts.add(key);
|
|
132
|
+
if (key !== null && activeToasts.has(key)) return void 0;
|
|
133
|
+
if (key !== null) activeToasts.add(key);
|
|
129
134
|
const options = {
|
|
130
135
|
...restConfig,
|
|
131
136
|
position: getContentDir() === "rtl" ? "bottom-right" : "bottom-left",
|
|
132
137
|
dismissible,
|
|
133
138
|
onDismiss: (t) => {
|
|
134
|
-
activeToasts.delete(key);
|
|
139
|
+
if (key !== null) activeToasts.delete(key);
|
|
135
140
|
userOnDismiss?.(t);
|
|
136
141
|
},
|
|
137
142
|
onAutoClose: (t) => {
|
|
138
|
-
activeToasts.delete(key);
|
|
143
|
+
if (key !== null) activeToasts.delete(key);
|
|
139
144
|
userOnAutoClose?.(t);
|
|
140
145
|
}
|
|
141
146
|
};
|
|
@@ -181,4 +186,4 @@ const Toastr = {
|
|
|
181
186
|
};
|
|
182
187
|
|
|
183
188
|
exports.Toastr = Toastr;
|
|
184
|
-
//# sourceMappingURL=Toastr-
|
|
189
|
+
//# sourceMappingURL=Toastr-BgT_Fq7J.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toastr-BgT_Fq7J.js","sources":["../../src/components/Toastr/ToastrBody.tsx","../../src/components/Toastr/utils.ts","../../src/components/Toastr/Toastr.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport {\n CircleCheckIcon,\n InfoIcon,\n OctagonXIcon,\n TriangleAlertIcon,\n XIcon,\n type LucideIcon,\n} from \"lucide-react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\n\ntype ToastrType = \"success\" | \"info\" | \"warning\" | \"error\";\n\nconst ICONS: Record<ToastrType, LucideIcon> = {\n success: CircleCheckIcon,\n info: InfoIcon,\n warning: TriangleAlertIcon,\n error: OctagonXIcon,\n};\n\nconst VARIANT_CLASSES: Record<ToastrType, string> = {\n success:\n \"bg-success-solid text-success-solid-foreground border-success-solid/30\",\n error: \"bg-error-solid text-error-solid-foreground border-error-solid/30\",\n warning:\n \"bg-warning-solid text-warning-solid-foreground border-warning-solid/30\",\n info: \"bg-info-solid text-info-solid-foreground border-info-solid/30\",\n};\n\nexport interface ToastrBodyProps {\n type: ToastrType;\n message: ReactNode;\n showIcon?: boolean;\n dismissible?: boolean;\n buttonLabel?: string;\n onAction?: () => void;\n onDismiss: () => void;\n}\n\nconst ToastrBody = ({\n type,\n message,\n showIcon = true,\n dismissible = true,\n buttonLabel,\n onAction,\n onDismiss,\n}: ToastrBodyProps) => {\n const Icon = ICONS[type];\n\n return (\n <div\n role={type === \"error\" || type === \"warning\" ? \"alert\" : \"status\"}\n className={cn(\n \"flex w-full items-center gap-3 rounded-md border px-4 py-3 text-sm shadow-lg\",\n VARIANT_CLASSES[type]\n )}\n >\n {showIcon && <Icon aria-hidden className=\"size-4 shrink-0\" />}\n <span className=\"flex-1\">{message}</span>\n {buttonLabel && (\n <button\n type=\"button\"\n onClick={onAction}\n className=\"shrink-0 text-sm font-medium underline-offset-2 hover:underline\"\n >\n {buttonLabel}\n </button>\n )}\n {dismissible && (\n <button\n type=\"button\"\n aria-label=\"Dismiss\"\n onClick={onDismiss}\n className=\"shrink-0 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2\"\n >\n <XIcon aria-hidden className=\"size-4\" />\n </button>\n )}\n </div>\n );\n};\n\nexport { ToastrBody };\n","import { isValidElement, type ReactNode } from \"react\";\n\nimport type { ToastrConfig, ToastrErrorInput, ToastrMessage } from \"./Toastr\";\n\nconst activeToasts = new Set<string>();\n\nfunction toastKey(\n type: string,\n message: ReactNode,\n buttonLabel?: string\n): string | null {\n if (typeof message !== \"string\") return null;\n return `${type}::${message}::${buttonLabel ?? \"\"}`;\n}\n\nfunction getContentDir(): \"ltr\" | \"rtl\" {\n if (typeof document === \"undefined\") return \"ltr\";\n return (\n (document.documentElement.getAttribute(\"dir\") as \"ltr\" | \"rtl\") ??\n (document.body.getAttribute(\"dir\") as \"ltr\" | \"rtl\") ??\n \"ltr\"\n );\n}\n\nfunction resolveMessage(message: ToastrMessage): ReactNode {\n if (typeof message === \"string\") return message;\n if (isValidElement(message)) return message;\n // Arrays of ReactNodes (e.g. [<a/>, \" \", <b/>]) render natively via {message}.\n if (Array.isArray(message)) return message;\n if (message && typeof message === \"object\") {\n const obj = message as {\n noticeCode?: string;\n customMessage?: string;\n notice?: string;\n };\n if (obj.customMessage) return obj.customMessage;\n if (obj.notice) return obj.notice;\n if (obj.noticeCode) return obj.noticeCode;\n }\n return String(message);\n}\n\nfunction resolveErrorMessage(errorObject: ToastrErrorInput): ReactNode {\n if (typeof errorObject === \"string\") return errorObject;\n\n if (errorObject && typeof errorObject === \"object\") {\n // Axios-style error\n const axiosLike = errorObject as {\n response?: { data?: Record<string, unknown> };\n message?: string;\n isAxiosError?: boolean;\n };\n\n if (axiosLike.response?.data) {\n const data = axiosLike.response.data;\n if (data.customMessage) return String(data.customMessage);\n if (data.error) return String(data.error);\n if (Array.isArray(data.errors)) return data.errors.join(\"\\n\");\n if (data.noticeCode) return String(data.noticeCode);\n }\n\n if (axiosLike.isAxiosError && axiosLike.message) return axiosLike.message;\n\n // Native Error\n if (errorObject instanceof Error) return errorObject.message;\n\n // ToastrMessage (string, React element, array, or notice-shape object)\n return resolveMessage(errorObject as ToastrMessage);\n }\n\n return \"Something went wrong.\";\n}\n\nfunction parseConfig(args: unknown[]): ToastrConfig {\n if (args.length === 0) return {};\n\n const first = args[0];\n if (typeof first === \"object\" && first !== null && !Array.isArray(first)) {\n return first as ToastrConfig;\n }\n\n // Legacy positional args: buttonLabel, onClick, customConfig, showIcon\n const [buttonLabel, onClick, customConfig, showIcon] = args as [\n string?,\n (() => void)?,\n Record<string, unknown>?,\n boolean?,\n ];\n\n return {\n ...(buttonLabel ? { buttonLabel } : {}),\n ...(onClick ? { onClick } : {}),\n ...(showIcon !== undefined ? { showIcon } : {}),\n ...(customConfig ?? {}),\n };\n}\n\nexport {\n activeToasts,\n getContentDir,\n parseConfig,\n resolveErrorMessage,\n resolveMessage,\n toastKey,\n};\n","import type { ReactNode } from \"react\";\nimport { toast } from \"sonner\";\n\nimport { ToastrBody } from \"./ToastrBody\";\nimport {\n activeToasts,\n getContentDir,\n parseConfig,\n resolveErrorMessage,\n resolveMessage,\n toastKey,\n} from \"./utils\";\n\nexport interface ToastrConfig {\n /** Label for an action button inside the toast. */\n buttonLabel?: string;\n /** Callback when the action button is clicked. */\n onClick?: () => void;\n /** Whether to show the type icon in the toast. */\n showIcon?: boolean;\n /** Whether the toast can be dismissed (shows X button + enables swipe). Defaults to true. */\n dismissible?: boolean;\n /** Additional sonner toast options (duration, position, etc.). */\n [key: string]: unknown;\n}\n\nexport type ToastrMessage =\n | ReactNode\n | { noticeCode?: string; customMessage?: string; notice?: string };\n\nexport type ToastrErrorInput =\n | string\n | Error\n | {\n response?: { data?: Record<string, unknown> };\n message?: string;\n isAxiosError?: boolean;\n }\n | ToastrMessage;\n\ntype SonnerType = \"success\" | \"info\" | \"warning\" | \"error\";\n\nfunction showToast(\n type: SonnerType,\n message: ReactNode,\n config?: ToastrConfig\n): string | number | undefined {\n const {\n buttonLabel,\n onClick,\n showIcon,\n dismissible = true,\n onDismiss: userOnDismiss,\n onAutoClose: userOnAutoClose,\n ...restConfig\n } = config ?? {};\n\n const key = toastKey(type, message, buttonLabel);\n\n if (key !== null && activeToasts.has(key)) return undefined;\n if (key !== null) activeToasts.add(key);\n\n const options: Record<string, unknown> = {\n ...restConfig,\n position: getContentDir() === \"rtl\" ? \"bottom-right\" : \"bottom-left\",\n dismissible,\n onDismiss: (t: unknown) => {\n if (key !== null) activeToasts.delete(key);\n (userOnDismiss as ((t: unknown) => void) | undefined)?.(t);\n },\n onAutoClose: (t: unknown) => {\n if (key !== null) activeToasts.delete(key);\n (userOnAutoClose as ((t: unknown) => void) | undefined)?.(t);\n },\n };\n\n return toast.custom(\n id => (\n <ToastrBody\n buttonLabel={buttonLabel}\n dismissible={dismissible}\n message={message}\n showIcon={showIcon}\n type={type}\n onAction={() => {\n try {\n onClick?.();\n } finally {\n toast.dismiss(id);\n }\n }}\n onDismiss={() => toast.dismiss(id)}\n />\n ),\n options\n );\n}\n\nconst Toastr = {\n success(message: ToastrMessage, ...args: unknown[]) {\n return showToast(\"success\", resolveMessage(message), parseConfig(args));\n },\n\n info(message: ToastrMessage, ...args: unknown[]) {\n return showToast(\"info\", resolveMessage(message), parseConfig(args));\n },\n\n show(message: ToastrMessage, ...args: unknown[]) {\n return showToast(\"info\", resolveMessage(message), parseConfig(args));\n },\n\n warning(message: ToastrMessage, ...args: unknown[]) {\n return showToast(\"warning\", resolveMessage(message), parseConfig(args));\n },\n\n error(errorObject: ToastrErrorInput, ...args: unknown[]) {\n const msg = resolveErrorMessage(errorObject);\n return showToast(\"error\", msg, parseConfig(args));\n },\n};\n\nexport { Toastr };\n"],"names":["CircleCheckIcon","InfoIcon","TriangleAlertIcon","OctagonXIcon","jsxs","cn","jsx","XIcon","isValidElement","toast"],"mappings":";;;;;;;;;;AAcA,MAAM,KAAA,GAAwC;AAAA,EAC5C,OAAA,EAASA,iBAAA;AAAA,EACT,IAAA,EAAMC,SAAA;AAAA,EACN,OAAA,EAASC,2BAAA;AAAA,EACT,KAAA,EAAOC;AACT,CAAA;AAEA,MAAM,eAAA,GAA8C;AAAA,EAClD,OAAA,EACE,wEAAA;AAAA,EACF,KAAA,EAAO,kEAAA;AAAA,EACP,OAAA,EACE,wEAAA;AAAA,EACF,IAAA,EAAM;AACR,CAAA;AAYA,MAAM,aAAa,CAAC;AAAA,EAClB,IAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA,GAAW,IAAA;AAAA,EACX,WAAA,GAAc,IAAA;AAAA,EACd,WAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF,CAAA,KAAuB;AACrB,EAAA,MAAM,IAAA,GAAO,MAAM,IAAI,CAAA;AAEvB,EAAA,uBACEC,eAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAM,IAAA,KAAS,OAAA,IAAW,IAAA,KAAS,YAAY,OAAA,GAAU,QAAA;AAAA,MACzD,SAAA,EAAWC,QAAA;AAAA,QACT,8EAAA;AAAA,QACA,gBAAgB,IAAI;AAAA,OACtB;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,QAAA,oBAAYC,cAAA,CAAC,IAAA,EAAA,EAAK,aAAA,EAAW,IAAA,EAAC,WAAU,iBAAA,EAAkB,CAAA;AAAA,wBAC3DA,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,QAAA,EAAU,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,QACjC,WAAA,oBACCA,cAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,QAAA;AAAA,YACT,SAAA,EAAU,iEAAA;AAAA,YAET,QAAA,EAAA;AAAA;AAAA,SACH;AAAA,QAED,WAAA,oBACCA,cAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,QAAA;AAAA,YACL,YAAA,EAAW,SAAA;AAAA,YACX,OAAA,EAAS,SAAA;AAAA,YACT,SAAA,EAAU,kJAAA;AAAA,YAEV,QAAA,kBAAAA,cAAA,CAACC,GAAA,EAAA,EAAM,aAAA,EAAW,IAAA,EAAC,WAAU,QAAA,EAAS;AAAA;AAAA;AACxC;AAAA;AAAA,GAEJ;AAEJ,CAAA;;AC9EA,MAAM,YAAA,uBAAmB,GAAA,EAAY;AAErC,SAAS,QAAA,CACP,IAAA,EACA,OAAA,EACA,WAAA,EACe;AACf,EAAA,IAAI,OAAO,OAAA,KAAY,QAAA,EAAU,OAAO,IAAA;AACxC,EAAA,OAAO,GAAG,IAAI,CAAA,EAAA,EAAK,OAAO,CAAA,EAAA,EAAK,eAAe,EAAE,CAAA,CAAA;AAClD;AAEA,SAAS,aAAA,GAA+B;AACtC,EAAA,IAAI,OAAO,QAAA,KAAa,WAAA,EAAa,OAAO,KAAA;AAC5C,EAAA,OACG,QAAA,CAAS,gBAAgB,YAAA,CAAa,KAAK,KAC3C,QAAA,CAAS,IAAA,CAAK,YAAA,CAAa,KAAK,CAAA,IACjC,KAAA;AAEJ;AAEA,SAAS,eAAe,OAAA,EAAmC;AACzD,EAAA,IAAI,OAAO,OAAA,KAAY,QAAA,EAAU,OAAO,OAAA;AACxC,EAAA,IAAIC,oBAAA,CAAe,OAAO,CAAA,EAAG,OAAO,OAAA;AAEpC,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,EAAG,OAAO,OAAA;AACnC,EAAA,IAAI,OAAA,IAAW,OAAO,OAAA,KAAY,QAAA,EAAU;AAC1C,IAAA,MAAM,GAAA,GAAM,OAAA;AAKZ,IAAA,IAAI,GAAA,CAAI,aAAA,EAAe,OAAO,GAAA,CAAI,aAAA;AAClC,IAAA,IAAI,GAAA,CAAI,MAAA,EAAQ,OAAO,GAAA,CAAI,MAAA;AAC3B,IAAA,IAAI,GAAA,CAAI,UAAA,EAAY,OAAO,GAAA,CAAI,UAAA;AAAA,EACjC;AACA,EAAA,OAAO,OAAO,OAAO,CAAA;AACvB;AAEA,SAAS,oBAAoB,WAAA,EAA0C;AACrE,EAAA,IAAI,OAAO,WAAA,KAAgB,QAAA,EAAU,OAAO,WAAA;AAE5C,EAAA,IAAI,WAAA,IAAe,OAAO,WAAA,KAAgB,QAAA,EAAU;AAElD,IAAA,MAAM,SAAA,GAAY,WAAA;AAMlB,IAAA,IAAI,SAAA,CAAU,UAAU,IAAA,EAAM;AAC5B,MAAA,MAAM,IAAA,GAAO,UAAU,QAAA,CAAS,IAAA;AAChC,MAAA,IAAI,IAAA,CAAK,aAAA,EAAe,OAAO,MAAA,CAAO,KAAK,aAAa,CAAA;AACxD,MAAA,IAAI,IAAA,CAAK,KAAA,EAAO,OAAO,MAAA,CAAO,KAAK,KAAK,CAAA;AACxC,MAAA,IAAI,KAAA,CAAM,QAAQ,IAAA,CAAK,MAAM,GAAG,OAAO,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,IAAI,CAAA;AAC5D,MAAA,IAAI,IAAA,CAAK,UAAA,EAAY,OAAO,MAAA,CAAO,KAAK,UAAU,CAAA;AAAA,IACpD;AAEA,IAAA,IAAI,SAAA,CAAU,YAAA,IAAgB,SAAA,CAAU,OAAA,SAAgB,SAAA,CAAU,OAAA;AAGlE,IAAA,IAAI,WAAA,YAAuB,KAAA,EAAO,OAAO,WAAA,CAAY,OAAA;AAGrD,IAAA,OAAO,eAAe,WAA4B,CAAA;AAAA,EACpD;AAEA,EAAA,OAAO,uBAAA;AACT;AAEA,SAAS,YAAY,IAAA,EAA+B;AAClD,EAAA,IAAI,IAAA,CAAK,MAAA,KAAW,CAAA,EAAG,OAAO,EAAC;AAE/B,EAAA,MAAM,KAAA,GAAQ,KAAK,CAAC,CAAA;AACpB,EAAA,IAAI,OAAO,UAAU,QAAA,IAAY,KAAA,KAAU,QAAQ,CAAC,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AACxE,IAAA,OAAO,KAAA;AAAA,EACT;AAGA,EAAA,MAAM,CAAC,WAAA,EAAa,OAAA,EAAS,YAAA,EAAc,QAAQ,CAAA,GAAI,IAAA;AAOvD,EAAA,OAAO;AAAA,IACL,GAAI,WAAA,GAAc,EAAE,WAAA,KAAgB,EAAC;AAAA,IACrC,GAAI,OAAA,GAAU,EAAE,OAAA,KAAY,EAAC;AAAA,IAC7B,GAAI,QAAA,KAAa,MAAA,GAAY,EAAE,QAAA,KAAa,EAAC;AAAA,IAC7C,GAAI,gBAAgB;AAAC,GACvB;AACF;;ACrDA,SAAS,SAAA,CACP,IAAA,EACA,OAAA,EACA,MAAA,EAC6B;AAC7B,EAAA,MAAM;AAAA,IACJ,WAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,GAAc,IAAA;AAAA,IACd,SAAA,EAAW,aAAA;AAAA,IACX,WAAA,EAAa,eAAA;AAAA,IACb,GAAG;AAAA,GACL,GAAI,UAAU,EAAC;AAEf,EAAA,MAAM,GAAA,GAAM,QAAA,CAAS,IAAA,EAAM,OAAA,EAAS,WAAW,CAAA;AAE/C,EAAA,IAAI,QAAQ,IAAA,IAAQ,YAAA,CAAa,GAAA,CAAI,GAAG,GAAG,OAAO,MAAA;AAClD,EAAA,IAAI,GAAA,KAAQ,IAAA,EAAM,YAAA,CAAa,GAAA,CAAI,GAAG,CAAA;AAEtC,EAAA,MAAM,OAAA,GAAmC;AAAA,IACvC,GAAG,UAAA;AAAA,IACH,QAAA,EAAU,aAAA,EAAc,KAAM,KAAA,GAAQ,cAAA,GAAiB,aAAA;AAAA,IACvD,WAAA;AAAA,IACA,SAAA,EAAW,CAAC,CAAA,KAAe;AACzB,MAAA,IAAI,GAAA,KAAQ,IAAA,EAAM,YAAA,CAAa,MAAA,CAAO,GAAG,CAAA;AACzC,MAAC,gBAAuD,CAAC,CAAA;AAAA,IAC3D,CAAA;AAAA,IACA,WAAA,EAAa,CAAC,CAAA,KAAe;AAC3B,MAAA,IAAI,GAAA,KAAQ,IAAA,EAAM,YAAA,CAAa,MAAA,CAAO,GAAG,CAAA;AACzC,MAAC,kBAAyD,CAAC,CAAA;AAAA,IAC7D;AAAA,GACF;AAEA,EAAA,OAAOC,WAAA,CAAM,MAAA;AAAA,IACX,CAAA,EAAA,qBACEH,cAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,WAAA;AAAA,QACA,WAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,IAAA;AAAA,QACA,UAAU,MAAM;AACd,UAAA,IAAI;AACF,YAAA,OAAA,IAAU;AAAA,UACZ,CAAA,SAAE;AACA,YAAAG,WAAA,CAAM,QAAQ,EAAE,CAAA;AAAA,UAClB;AAAA,QACF,CAAA;AAAA,QACA,SAAA,EAAW,MAAMA,WAAA,CAAM,OAAA,CAAQ,EAAE;AAAA;AAAA,KACnC;AAAA,IAEF;AAAA,GACF;AACF;AAEA,MAAM,MAAA,GAAS;AAAA,EACb,OAAA,CAAQ,YAA2B,IAAA,EAAiB;AAClD,IAAA,OAAO,UAAU,SAAA,EAAW,cAAA,CAAe,OAAO,CAAA,EAAG,WAAA,CAAY,IAAI,CAAC,CAAA;AAAA,EACxE,CAAA;AAAA,EAEA,IAAA,CAAK,YAA2B,IAAA,EAAiB;AAC/C,IAAA,OAAO,UAAU,MAAA,EAAQ,cAAA,CAAe,OAAO,CAAA,EAAG,WAAA,CAAY,IAAI,CAAC,CAAA;AAAA,EACrE,CAAA;AAAA,EAEA,IAAA,CAAK,YAA2B,IAAA,EAAiB;AAC/C,IAAA,OAAO,UAAU,MAAA,EAAQ,cAAA,CAAe,OAAO,CAAA,EAAG,WAAA,CAAY,IAAI,CAAC,CAAA;AAAA,EACrE,CAAA;AAAA,EAEA,OAAA,CAAQ,YAA2B,IAAA,EAAiB;AAClD,IAAA,OAAO,UAAU,SAAA,EAAW,cAAA,CAAe,OAAO,CAAA,EAAG,WAAA,CAAY,IAAI,CAAC,CAAA;AAAA,EACxE,CAAA;AAAA,EAEA,KAAA,CAAM,gBAAkC,IAAA,EAAiB;AACvD,IAAA,MAAM,GAAA,GAAM,oBAAoB,WAAW,CAAA;AAC3C,IAAA,OAAO,SAAA,CAAU,OAAA,EAAS,GAAA,EAAK,WAAA,CAAY,IAAI,CAAC,CAAA;AAAA,EAClD;AACF;;;;"}
|
|
@@ -10,10 +10,10 @@ var Callout = require('../Callout-CYIrflF1.js');
|
|
|
10
10
|
var Checkbox = require('../Checkbox-CymHP7QE.js');
|
|
11
11
|
var ColorPicker = require('../ColorPicker-rhCnblTv.js');
|
|
12
12
|
var DataTable = require('../DataTable-ONkM1J3v.js');
|
|
13
|
-
var DatePicker = require('../DatePicker-
|
|
13
|
+
var DatePicker = require('../DatePicker-CW4FZCk6.js');
|
|
14
14
|
var Dialog = require('../Dialog-CBSuKeu_.js');
|
|
15
15
|
var Empty = require('../Empty-aQaWK0p4.js');
|
|
16
|
-
var Input = require('../Input-
|
|
16
|
+
var Input = require('../Input-k6MkhSTc.js');
|
|
17
17
|
var Kbd = require('../Kbd-BvC3VSNb.js');
|
|
18
18
|
var Label = require('../Label-Dt7K54Ly.js');
|
|
19
19
|
var MultiEmailInput = require('../MultiEmailInput-KmN2BSaX.js');
|
|
@@ -31,7 +31,7 @@ var Tabs = require('../Tabs-COMRjTVU.js');
|
|
|
31
31
|
var Textarea = require('../Textarea-yWv-66yX.js');
|
|
32
32
|
var TimePicker = require('../TimePicker-DW7OM3IE.js');
|
|
33
33
|
var TimePickerPanel = require('../TimePickerPanel-DX6cjrSN.js');
|
|
34
|
-
var Toastr = require('../Toastr-
|
|
34
|
+
var Toastr = require('../Toastr-BgT_Fq7J.js');
|
|
35
35
|
var Tooltip = require('../Tooltip-Dph_R3Ct.js');
|
|
36
36
|
var TranslationProvider = require('../TranslationProvider-Dh5_Fzzk.js');
|
|
37
37
|
var Tree = require('../Tree-DAyVPLnJ.js');
|
package/dist/cjs/formik/Input.js
CHANGED
|
@@ -4,7 +4,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var formik = require('formik');
|
|
6
6
|
var ramda = require('ramda');
|
|
7
|
-
var Input = require('../Input-
|
|
7
|
+
var Input = require('../Input-k6MkhSTc.js');
|
|
8
8
|
require('../utils-BhM0B89p.js');
|
|
9
9
|
require('../primitives/Field.js');
|
|
10
10
|
require('../HelpIcon-CIkKt2uy.js');
|
package/dist/cjs/formik/index.js
CHANGED
|
@@ -17,7 +17,7 @@ require('react/jsx-runtime');
|
|
|
17
17
|
require('react');
|
|
18
18
|
require('formik');
|
|
19
19
|
require('ramda');
|
|
20
|
-
require('../Input-
|
|
20
|
+
require('../Input-k6MkhSTc.js');
|
|
21
21
|
require('../utils-BhM0B89p.js');
|
|
22
22
|
require('../primitives/Field.js');
|
|
23
23
|
require('../HelpIcon-CIkKt2uy.js');
|
package/dist/cjs/index.js
CHANGED
|
@@ -14,11 +14,11 @@ var Callout = require('./Callout-CYIrflF1.js');
|
|
|
14
14
|
var Checkbox = require('./Checkbox-CymHP7QE.js');
|
|
15
15
|
var ColorPicker = require('./ColorPicker-rhCnblTv.js');
|
|
16
16
|
var DataTable = require('./DataTable-ONkM1J3v.js');
|
|
17
|
-
var DatePicker = require('./DatePicker-
|
|
17
|
+
var DatePicker = require('./DatePicker-CW4FZCk6.js');
|
|
18
18
|
var Dialog = require('./Dialog-CBSuKeu_.js');
|
|
19
19
|
var DirectionProvider = require('./DirectionProvider-BTtE4FcN.js');
|
|
20
20
|
var Empty = require('./Empty-aQaWK0p4.js');
|
|
21
|
-
var Input = require('./Input-
|
|
21
|
+
var Input = require('./Input-k6MkhSTc.js');
|
|
22
22
|
var Kbd = require('./Kbd-BvC3VSNb.js');
|
|
23
23
|
var Label = require('./Label-Dt7K54Ly.js');
|
|
24
24
|
var MultiEmailInput = require('./MultiEmailInput-KmN2BSaX.js');
|
|
@@ -35,7 +35,7 @@ var Switch = require('./Switch-bY6bZw78.js');
|
|
|
35
35
|
var Tabs = require('./Tabs-COMRjTVU.js');
|
|
36
36
|
var Textarea = require('./Textarea-yWv-66yX.js');
|
|
37
37
|
var TimePicker = require('./TimePicker-DW7OM3IE.js');
|
|
38
|
-
var Toastr = require('./Toastr-
|
|
38
|
+
var Toastr = require('./Toastr-BgT_Fq7J.js');
|
|
39
39
|
var Tooltip = require('./Tooltip-Dph_R3Ct.js');
|
|
40
40
|
var Tree = require('./Tree-DAyVPLnJ.js');
|
|
41
41
|
var TreeSelect = require('./TreeSelect-qLtRIP-s.js');
|
|
@@ -34,7 +34,7 @@ const DialogContent = ({
|
|
|
34
34
|
overlayClassName,
|
|
35
35
|
...props
|
|
36
36
|
}) => /* @__PURE__ */ jsxRuntime.jsxs(dialog.DialogPortal, { children: [
|
|
37
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
37
|
+
/* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, { className: overlayClassName }),
|
|
38
38
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
39
39
|
index.Content,
|
|
40
40
|
{
|
|
@@ -77,7 +77,16 @@ const DialogHeader = ({
|
|
|
77
77
|
className,
|
|
78
78
|
...props
|
|
79
79
|
}) => /* @__PURE__ */ jsxRuntime.jsx(dialog.DialogHeader, { className: utils.cn("gap-3", className), ...props });
|
|
80
|
-
const DialogOverlay = (
|
|
80
|
+
const DialogOverlay = ({
|
|
81
|
+
className,
|
|
82
|
+
...props
|
|
83
|
+
}) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
84
|
+
dialog.DialogOverlay,
|
|
85
|
+
{
|
|
86
|
+
className: utils.cn("supports-backdrop-filter:backdrop-blur-none", className),
|
|
87
|
+
...props
|
|
88
|
+
}
|
|
89
|
+
);
|
|
81
90
|
const DialogPortal = (props) => /* @__PURE__ */ jsxRuntime.jsx(dialog.DialogPortal, { ...props });
|
|
82
91
|
const DialogTitle = (props) => /* @__PURE__ */ jsxRuntime.jsx(dialog.DialogTitle, { ...props });
|
|
83
92
|
const DialogTrigger = (props) => /* @__PURE__ */ jsxRuntime.jsx(dialog.DialogTrigger, { ...props });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sources":["../../../src/primitives/Dialog.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as DialogPrimitive } from \"radix-ui\";\nimport { XIcon } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\n\nimport {\n Dialog as ShadcnDialog,\n DialogClose as ShadcnDialogClose,\n DialogDescription as ShadcnDialogDescription,\n DialogFooter as ShadcnDialogFooter,\n DialogHeader as ShadcnDialogHeader,\n DialogOverlay as ShadcnDialogOverlay,\n DialogPortal as ShadcnDialogPortal,\n DialogTitle as ShadcnDialogTitle,\n DialogTrigger as ShadcnDialogTrigger,\n} from \"src/shadcn/components/dialog\";\n\nconst Dialog = (props: React.ComponentProps<typeof ShadcnDialog>) => (\n <ShadcnDialog {...props} />\n);\n\nconst DialogClose = (props: React.ComponentProps<typeof ShadcnDialogClose>) => (\n <ShadcnDialogClose {...props} />\n);\n\n/**\n * DialogContent composes Portal + Overlay + Radix Content so that\n * `overlayClassName` can be forwarded to the overlay element.\n */\nconst DialogContent = ({\n className,\n children,\n showCloseButton = true,\n overlayClassName,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n overlayClassName?: string;\n}) => (\n <ShadcnDialogPortal>\n <
|
|
1
|
+
{"version":3,"file":"Dialog.js","sources":["../../../src/primitives/Dialog.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as DialogPrimitive } from \"radix-ui\";\nimport { XIcon } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\n\nimport {\n Dialog as ShadcnDialog,\n DialogClose as ShadcnDialogClose,\n DialogDescription as ShadcnDialogDescription,\n DialogFooter as ShadcnDialogFooter,\n DialogHeader as ShadcnDialogHeader,\n DialogOverlay as ShadcnDialogOverlay,\n DialogPortal as ShadcnDialogPortal,\n DialogTitle as ShadcnDialogTitle,\n DialogTrigger as ShadcnDialogTrigger,\n} from \"src/shadcn/components/dialog\";\n\nconst Dialog = (props: React.ComponentProps<typeof ShadcnDialog>) => (\n <ShadcnDialog {...props} />\n);\n\nconst DialogClose = (props: React.ComponentProps<typeof ShadcnDialogClose>) => (\n <ShadcnDialogClose {...props} />\n);\n\n/**\n * DialogContent composes Portal + Overlay + Radix Content so that\n * `overlayClassName` can be forwarded to the overlay element.\n */\nconst DialogContent = ({\n className,\n children,\n showCloseButton = true,\n overlayClassName,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n overlayClassName?: string;\n}) => (\n <ShadcnDialogPortal>\n <DialogOverlay className={overlayClassName} />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"fixed top-1/2 start-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 rtl:translate-x-1/2 -translate-y-1/2 gap-5 rounded-xl bg-popover p-6 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close data-slot=\"dialog-close\" asChild>\n <Button\n variant=\"ghost\"\n className=\"absolute top-2 end-2\"\n size=\"icon-sm\"\n >\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </ShadcnDialogPortal>\n);\n\nconst DialogDescription = (\n props: React.ComponentProps<typeof ShadcnDialogDescription>\n) => <ShadcnDialogDescription {...props} />;\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogFooter>) => (\n <ShadcnDialogFooter\n className={cn(\"-mx-6 -mb-6 border-t-0 px-6 py-4\", className)}\n {...props}\n />\n);\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogHeader>) => (\n <ShadcnDialogHeader className={cn(\"gap-3\", className)} {...props} />\n);\n\nconst DialogOverlay = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogOverlay>) => (\n <ShadcnDialogOverlay\n className={cn(\"supports-backdrop-filter:backdrop-blur-none\", className)}\n {...props}\n />\n);\n\nconst DialogPortal = (\n props: React.ComponentProps<typeof ShadcnDialogPortal>\n) => <ShadcnDialogPortal {...props} />;\n\nconst DialogTitle = (props: React.ComponentProps<typeof ShadcnDialogTitle>) => (\n <ShadcnDialogTitle {...props} />\n);\n\nconst DialogTrigger = (\n props: React.ComponentProps<typeof ShadcnDialogTrigger>\n) => <ShadcnDialogTrigger {...props} />;\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"names":["jsx","ShadcnDialog","ShadcnDialogClose","ShadcnDialogPortal","jsxs","DialogPrimitive.Content","cn","DialogPrimitive.Close","Button","XIcon","ShadcnDialogDescription","ShadcnDialogFooter","ShadcnDialogHeader","ShadcnDialogOverlay","ShadcnDialogTitle","ShadcnDialogTrigger"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAM,SAAS,CAAC,KAAA,qBACdA,cAAA,CAACC,aAAA,EAAA,EAAc,GAAG,KAAA,EAAO;AAG3B,MAAM,cAAc,CAAC,KAAA,qBACnBD,cAAA,CAACE,kBAAA,EAAA,EAAmB,GAAG,KAAA,EAAO;AAOhC,MAAM,gBAAgB,CAAC;AAAA,EACrB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA,GAAkB,IAAA;AAAA,EAClB,gBAAA;AAAA,EACA,GAAG;AACL,CAAA,qCAIGC,mBAAA,EAAA,EACC,QAAA,EAAA;AAAA,kBAAAH,cAAA,CAAC,aAAA,EAAA,EAAc,WAAW,gBAAA,EAAkB,CAAA;AAAA,kBAC5CI,eAAA;AAAA,IAACC,aAAgB;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAWC,QAAA;AAAA,QACT,6XAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,eAAA,mCACEC,WAAgB,EAAhB,EAAsB,WAAA,EAAU,cAAA,EAAe,SAAO,IAAA,EACrD,QAAA,kBAAAH,eAAA;AAAA,UAACI,aAAA;AAAA,UAAA;AAAA,YACC,OAAA,EAAQ,OAAA;AAAA,YACR,SAAA,EAAU,sBAAA;AAAA,YACV,IAAA,EAAK,SAAA;AAAA,YAEL,QAAA,EAAA;AAAA,8BAAAR,cAAA,CAACS,GAAA,EAAA,EAAM,CAAA;AAAA,8BACPT,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,OAAA,EAAK;AAAA;AAAA;AAAA,SACjC,EACF;AAAA;AAAA;AAAA;AAEJ,CAAA,EACF;AAGF,MAAM,oBAAoB,CACxB,KAAA,qBACGA,cAAA,CAACU,wBAAA,EAAA,EAAyB,GAAG,KAAA,EAAO;AAEzC,MAAM,eAAe,CAAC;AAAA,EACpB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEV,cAAA;AAAA,EAACW,mBAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAWL,QAAA,CAAG,kCAAA,EAAoC,SAAS,CAAA;AAAA,IAC1D,GAAG;AAAA;AACN;AAGF,MAAM,eAAe,CAAC;AAAA,EACpB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEN,cAAA,CAACY,uBAAmB,SAAA,EAAWN,QAAA,CAAG,SAAS,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAGpE,MAAM,gBAAgB,CAAC;AAAA,EACrB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEN,cAAA;AAAA,EAACa,oBAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAWP,QAAA,CAAG,6CAAA,EAA+C,SAAS,CAAA;AAAA,IACrE,GAAG;AAAA;AACN;AAGF,MAAM,eAAe,CACnB,KAAA,qBACGN,cAAA,CAACG,mBAAA,EAAA,EAAoB,GAAG,KAAA,EAAO;AAEpC,MAAM,cAAc,CAAC,KAAA,qBACnBH,cAAA,CAACc,kBAAA,EAAA,EAAmB,GAAG,KAAA,EAAO;AAGhC,MAAM,gBAAgB,CACpB,KAAA,qBACGd,cAAA,CAACe,oBAAA,EAAA,EAAqB,GAAG,KAAA,EAAO;;;;;;;;;;;;;"}
|
|
@@ -41,7 +41,7 @@ const SheetContent = ({
|
|
|
41
41
|
{
|
|
42
42
|
"data-slot": "sheet-overlay",
|
|
43
43
|
className: utils.cn(
|
|
44
|
-
"fixed inset-0 z-50 bg-black/10 duration-100
|
|
44
|
+
"fixed inset-0 z-50 bg-black/10 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
45
45
|
overlayClassName
|
|
46
46
|
)
|
|
47
47
|
}
|
|
@@ -52,7 +52,7 @@ const SheetContent = ({
|
|
|
52
52
|
"data-slot": "sheet-content",
|
|
53
53
|
"data-side": side,
|
|
54
54
|
className: utils.cn(
|
|
55
|
-
"fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out",
|
|
55
|
+
"fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg outline-none transition duration-200 ease-in-out",
|
|
56
56
|
"data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:border-border",
|
|
57
57
|
"data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-e data-[side=left]:border-border data-[side=left]:sm:max-w-sm",
|
|
58
58
|
"data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-s data-[side=right]:border-border data-[side=right]:sm:max-w-sm",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sheet.js","sources":["../../../src/primitives/Sheet.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as SheetPrimitive } from \"radix-ui\";\nimport { XIcon } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\n\nimport {\n Sheet as ShadcnSheet,\n SheetTrigger as ShadcnSheetTrigger,\n SheetClose as ShadcnSheetClose,\n SheetHeader as ShadcnSheetHeader,\n SheetFooter as ShadcnSheetFooter,\n SheetTitle as ShadcnSheetTitle,\n SheetDescription as ShadcnSheetDescription,\n} from \"src/shadcn/components/sheet\";\n\nconst Sheet = (props: React.ComponentProps<typeof ShadcnSheet>) => (\n <ShadcnSheet {...props} />\n);\n\nconst SheetTrigger = (\n props: React.ComponentProps<typeof ShadcnSheetTrigger>\n) => <ShadcnSheetTrigger {...props} />;\n\nconst SheetClose = (props: React.ComponentProps<typeof ShadcnSheetClose>) => (\n <ShadcnSheetClose {...props} />\n);\n\n/**\n * SheetContent composes Portal + Overlay + Radix Content directly so\n * the hardcoded max-w-sm is removed and width is fully consumer-controlled.\n */\nconst SheetContent = ({\n className,\n children,\n side = \"right\",\n showCloseButton = true,\n overlayClassName,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n showCloseButton?: boolean;\n overlayClassName?: string;\n}) => (\n <SheetPrimitive.Portal data-slot=\"sheet-portal\">\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n \"fixed inset-0 z-50 bg-black/10 duration-100
|
|
1
|
+
{"version":3,"file":"Sheet.js","sources":["../../../src/primitives/Sheet.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as SheetPrimitive } from \"radix-ui\";\nimport { XIcon } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\n\nimport {\n Sheet as ShadcnSheet,\n SheetTrigger as ShadcnSheetTrigger,\n SheetClose as ShadcnSheetClose,\n SheetHeader as ShadcnSheetHeader,\n SheetFooter as ShadcnSheetFooter,\n SheetTitle as ShadcnSheetTitle,\n SheetDescription as ShadcnSheetDescription,\n} from \"src/shadcn/components/sheet\";\n\nconst Sheet = (props: React.ComponentProps<typeof ShadcnSheet>) => (\n <ShadcnSheet {...props} />\n);\n\nconst SheetTrigger = (\n props: React.ComponentProps<typeof ShadcnSheetTrigger>\n) => <ShadcnSheetTrigger {...props} />;\n\nconst SheetClose = (props: React.ComponentProps<typeof ShadcnSheetClose>) => (\n <ShadcnSheetClose {...props} />\n);\n\n/**\n * SheetContent composes Portal + Overlay + Radix Content directly so\n * the hardcoded max-w-sm is removed and width is fully consumer-controlled.\n */\nconst SheetContent = ({\n className,\n children,\n side = \"right\",\n showCloseButton = true,\n overlayClassName,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n showCloseButton?: boolean;\n overlayClassName?: string;\n}) => (\n <SheetPrimitive.Portal data-slot=\"sheet-portal\">\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n \"fixed inset-0 z-50 bg-black/10 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0\",\n overlayClassName\n )}\n />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n \"fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg outline-none transition duration-200 ease-in-out\",\n \"data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:border-border\",\n \"data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-e data-[side=left]:border-border data-[side=left]:sm:max-w-sm\",\n \"data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-s data-[side=right]:border-border data-[side=right]:sm:max-w-sm\",\n \"data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:border-border\",\n \"data-open:animate-in data-open:fade-in-0\",\n \"data-[side=bottom]:data-open:slide-in-from-bottom-10 data-[side=left]:data-open:slide-in-from-left-10 data-[side=right]:data-open:slide-in-from-right-10 data-[side=top]:data-open:slide-in-from-top-10\",\n \"data-closed:animate-out data-closed:fade-out-0\",\n \"data-[side=bottom]:data-closed:slide-out-to-bottom-10 data-[side=left]:data-closed:slide-out-to-left-10 data-[side=right]:data-closed:slide-out-to-right-10 data-[side=top]:data-closed:slide-out-to-top-10\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <SheetPrimitive.Close data-slot=\"sheet-close\" asChild>\n <Button\n variant=\"ghost\"\n className=\"absolute top-3 end-3\"\n size=\"icon-sm\"\n >\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </Button>\n </SheetPrimitive.Close>\n )}\n </SheetPrimitive.Content>\n </SheetPrimitive.Portal>\n);\n\nconst SheetHeader = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnSheetHeader>) => (\n <ShadcnSheetHeader className={cn(\"gap-3 p-6\", className)} {...props} />\n);\n\nconst SheetFooter = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnSheetFooter>) => (\n <ShadcnSheetFooter\n className={cn(\"bg-muted/50 px-6 py-4\", className)}\n {...props}\n />\n);\n\nconst SheetTitle = (props: React.ComponentProps<typeof ShadcnSheetTitle>) => (\n <ShadcnSheetTitle {...props} />\n);\n\nconst SheetDescription = (\n props: React.ComponentProps<typeof ShadcnSheetDescription>\n) => <ShadcnSheetDescription {...props} />;\n\nexport {\n Sheet,\n SheetTrigger,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetFooter,\n SheetTitle,\n SheetDescription,\n};\n"],"names":["jsx","ShadcnSheet","ShadcnSheetTrigger","ShadcnSheetClose","jsxs","SheetPrimitive.Portal","SheetPrimitive.Overlay","cn","SheetPrimitive.Content","SheetPrimitive.Close","Button","XIcon","ShadcnSheetHeader","ShadcnSheetFooter","ShadcnSheetTitle","ShadcnSheetDescription"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,QAAQ,CAAC,KAAA,qBACbA,cAAA,CAACC,WAAA,EAAA,EAAa,GAAG,KAAA,EAAO;AAG1B,MAAM,eAAe,CACnB,KAAA,qBACGD,cAAA,CAACE,kBAAA,EAAA,EAAoB,GAAG,KAAA,EAAO;AAEpC,MAAM,aAAa,CAAC,KAAA,qBAClBF,cAAA,CAACG,gBAAA,EAAA,EAAkB,GAAG,KAAA,EAAO;AAO/B,MAAM,eAAe,CAAC;AAAA,EACpB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA,GAAO,OAAA;AAAA,EACP,eAAA,GAAkB,IAAA;AAAA,EAClB,gBAAA;AAAA,EACA,GAAG;AACL,CAAA,qBAKEC,eAAA,CAACC,YAAe,EAAf,EAAsB,aAAU,cAAA,EAC/B,QAAA,EAAA;AAAA,kBAAAL,cAAA;AAAA,IAACM,aAAe;AAAA,IAAf;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAWC,QAAA;AAAA,QACT,qIAAA;AAAA,QACA;AAAA;AACF;AAAA,GACF;AAAA,kBACAH,eAAA;AAAA,IAACI,aAAe;AAAA,IAAf;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,WAAA,EAAW,IAAA;AAAA,MACX,SAAA,EAAWD,QAAA;AAAA,QACT,sJAAA;AAAA,QACA,iJAAA;AAAA,QACA,yLAAA;AAAA,QACA,iMAAA;AAAA,QACA,+HAAA;AAAA,QACA,0CAAA;AAAA,QACA,yMAAA;AAAA,QACA,gDAAA;AAAA,QACA,6MAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,eAAA,mCACEE,WAAe,EAAf,EAAqB,WAAA,EAAU,aAAA,EAAc,SAAO,IAAA,EACnD,QAAA,kBAAAL,eAAA;AAAA,UAACM,aAAA;AAAA,UAAA;AAAA,YACC,OAAA,EAAQ,OAAA;AAAA,YACR,SAAA,EAAU,sBAAA;AAAA,YACV,IAAA,EAAK,SAAA;AAAA,YAEL,QAAA,EAAA;AAAA,8BAAAV,cAAA,CAACW,GAAA,EAAA,EAAM,CAAA;AAAA,8BACPX,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,OAAA,EAAK;AAAA;AAAA;AAAA,SACjC,EACF;AAAA;AAAA;AAAA;AAEJ,CAAA,EACF;AAGF,MAAM,cAAc,CAAC;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEA,cAAA,CAACY,qBAAkB,SAAA,EAAWL,QAAA,CAAG,aAAa,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAGvE,MAAM,cAAc,CAAC;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEP,cAAA;AAAA,EAACa,iBAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAWN,QAAA,CAAG,uBAAA,EAAyB,SAAS,CAAA;AAAA,IAC/C,GAAG;AAAA;AACN;AAGF,MAAM,aAAa,CAAC,KAAA,qBAClBP,cAAA,CAACc,gBAAA,EAAA,EAAkB,GAAG,KAAA,EAAO;AAG/B,MAAM,mBAAmB,CACvB,KAAA,qBACGd,cAAA,CAACe,sBAAA,EAAA,EAAwB,GAAG,KAAA,EAAO;;;;;;;;;;;"}
|
|
@@ -7,9 +7,9 @@ export interface AccordionProps extends Omit<AccordionRootProps, "children" | "t
|
|
|
7
7
|
/** Accordion.Item children. */
|
|
8
8
|
children?: ReactNode;
|
|
9
9
|
}
|
|
10
|
-
interface AccordionItemProps extends React.ComponentProps<typeof PrimitiveAccordionItem> {
|
|
11
|
-
/** Header
|
|
12
|
-
title:
|
|
10
|
+
interface AccordionItemProps extends Omit<React.ComponentProps<typeof PrimitiveAccordionItem>, "title"> {
|
|
11
|
+
/** Header content displayed in the trigger. */
|
|
12
|
+
title: ReactNode;
|
|
13
13
|
/** Content rendered when the item is expanded. */
|
|
14
14
|
children?: ReactNode;
|
|
15
15
|
}
|
package/dist/components/Alert.js
CHANGED
|
@@ -8,10 +8,10 @@ import '../button-CrEMzWKw.js';
|
|
|
8
8
|
import '../index-Bo3AAQJp.js';
|
|
9
9
|
import '../index-CfriMyrd.js';
|
|
10
10
|
import '../index-BtkPdosV.js';
|
|
11
|
-
import '../dialog
|
|
11
|
+
import '../dialog-BVHqPY9y.js';
|
|
12
12
|
import '../x-_o2T3n6D.js';
|
|
13
13
|
import '../createLucideIcon-C8ycilSN.js';
|
|
14
|
-
import '../index-
|
|
14
|
+
import '../index-GJ3FauH8.js';
|
|
15
15
|
import '../index-DNzunGHb.js';
|
|
16
16
|
import '../index-CiyxEyB0.js';
|
|
17
17
|
import '../index-zW4GjM5L.js';
|
|
@@ -12,6 +12,7 @@ interface RangeCalendarProps {
|
|
|
12
12
|
toDate?: Date;
|
|
13
13
|
onHoverIn: (e: React.MouseEvent<HTMLElement>) => void;
|
|
14
14
|
onHoverOut: () => void;
|
|
15
|
+
numberOfMonths?: number;
|
|
15
16
|
}
|
|
16
|
-
export declare const RangeCalendar: ({ todayDate, weekStartsOn, month, onMonthChange, selected, onSelect, disabled, fromDate, toDate, onHoverIn, onHoverOut, }: RangeCalendarProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare const RangeCalendar: ({ todayDate, weekStartsOn, month, onMonthChange, selected, onSelect, disabled, fromDate, toDate, onHoverIn, onHoverOut, numberOfMonths, }: RangeCalendarProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
18
|
export {};
|
|
@@ -5,12 +5,12 @@ interface UseRangePickerOptions {
|
|
|
5
5
|
showTime: boolean;
|
|
6
6
|
needConfirm: boolean;
|
|
7
7
|
commitValue: (value: Date | [Date, Date] | null) => void;
|
|
8
|
-
setPendingDate: (date: Date | null) => void;
|
|
9
8
|
setOpen: (open: boolean) => void;
|
|
10
9
|
}
|
|
11
|
-
export declare const useRangePicker: ({ currentValue, showTime, needConfirm, commitValue,
|
|
10
|
+
export declare const useRangePicker: ({ currentValue, showTime, needConfirm, commitValue, setOpen, }: UseRangePickerOptions) => {
|
|
12
11
|
pendingRange: RangeTuple | null;
|
|
13
12
|
rangeSelectionStep: "from" | "to";
|
|
13
|
+
setRangeSelectionStep: import("react").Dispatch<import("react").SetStateAction<"from" | "to">>;
|
|
14
14
|
hoveredDate: Date | null;
|
|
15
15
|
handleRangeSelect: (_range: {
|
|
16
16
|
from?: Date;
|
|
@@ -7,11 +7,11 @@ import '../button-CrEMzWKw.js';
|
|
|
7
7
|
import '../index-Bo3AAQJp.js';
|
|
8
8
|
import '../index-CfriMyrd.js';
|
|
9
9
|
import '../index-BtkPdosV.js';
|
|
10
|
-
import '../dialog
|
|
10
|
+
import '../dialog-BVHqPY9y.js';
|
|
11
11
|
import 'react-i18next';
|
|
12
12
|
import '../x-_o2T3n6D.js';
|
|
13
13
|
import '../createLucideIcon-C8ycilSN.js';
|
|
14
|
-
import '../index-
|
|
14
|
+
import '../index-GJ3FauH8.js';
|
|
15
15
|
import '../index-DNzunGHb.js';
|
|
16
16
|
import '../index-CiyxEyB0.js';
|
|
17
17
|
import '../index-zW4GjM5L.js';
|
package/dist/components/Input.js
CHANGED
package/dist/components/Sheet.js
CHANGED
|
@@ -7,11 +7,11 @@ import '../button-CrEMzWKw.js';
|
|
|
7
7
|
import '../index-Bo3AAQJp.js';
|
|
8
8
|
import '../index-CfriMyrd.js';
|
|
9
9
|
import '../index-BtkPdosV.js';
|
|
10
|
-
import '../sheet-
|
|
10
|
+
import '../sheet-DNANcGkk.js';
|
|
11
11
|
import 'react-i18next';
|
|
12
12
|
import '../x-_o2T3n6D.js';
|
|
13
13
|
import '../createLucideIcon-C8ycilSN.js';
|
|
14
|
-
import '../index-
|
|
14
|
+
import '../index-GJ3FauH8.js';
|
|
15
15
|
import '../index-DNzunGHb.js';
|
|
16
16
|
import '../index-CiyxEyB0.js';
|
|
17
17
|
import '../index-zW4GjM5L.js';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
1
2
|
export interface ToastrConfig {
|
|
2
3
|
/** Label for an action button inside the toast. */
|
|
3
4
|
buttonLabel?: string;
|
|
@@ -10,7 +11,7 @@ export interface ToastrConfig {
|
|
|
10
11
|
/** Additional sonner toast options (duration, position, etc.). */
|
|
11
12
|
[key: string]: unknown;
|
|
12
13
|
}
|
|
13
|
-
export type ToastrMessage =
|
|
14
|
+
export type ToastrMessage = ReactNode | {
|
|
14
15
|
noticeCode?: string;
|
|
15
16
|
customMessage?: string;
|
|
16
17
|
notice?: string;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
1
2
|
type ToastrType = "success" | "info" | "warning" | "error";
|
|
2
3
|
export interface ToastrBodyProps {
|
|
3
4
|
type: ToastrType;
|
|
4
|
-
message:
|
|
5
|
+
message: ReactNode;
|
|
5
6
|
showIcon?: boolean;
|
|
6
7
|
dismissible?: boolean;
|
|
7
8
|
buttonLabel?: string;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
1
2
|
import type { ToastrConfig, ToastrErrorInput, ToastrMessage } from "./Toastr";
|
|
2
3
|
declare const activeToasts: Set<string>;
|
|
3
|
-
declare function toastKey(type: string, message:
|
|
4
|
+
declare function toastKey(type: string, message: ReactNode, buttonLabel?: string): string | null;
|
|
4
5
|
declare function getContentDir(): "ltr" | "rtl";
|
|
5
|
-
declare function resolveMessage(message: ToastrMessage):
|
|
6
|
-
declare function resolveErrorMessage(errorObject: ToastrErrorInput):
|
|
6
|
+
declare function resolveMessage(message: ToastrMessage): ReactNode;
|
|
7
|
+
declare function resolveErrorMessage(errorObject: ToastrErrorInput): ReactNode;
|
|
7
8
|
declare function parseConfig(args: unknown[]): ToastrConfig;
|
|
8
9
|
export { activeToasts, getContentDir, parseConfig, resolveErrorMessage, resolveMessage, toastKey, };
|
package/dist/components/index.js
CHANGED
|
@@ -8,10 +8,10 @@ export { C as Callout } from '../Callout-NVYmCwJL.js';
|
|
|
8
8
|
export { C as Checkbox } from '../Checkbox-m4rEnxUz.js';
|
|
9
9
|
export { C as ColorPicker } from '../ColorPicker-ClnRUq9y.js';
|
|
10
10
|
export { D as DataTable, u as useColumnOrdering, a as useColumnPinning, b as useColumnVisibility, c as useTablePagination, d as useTableSelection, e as useTableSort } from '../DataTable-Cqrk769H.js';
|
|
11
|
-
export { D as DatePicker } from '../DatePicker-
|
|
11
|
+
export { D as DatePicker } from '../DatePicker-_y2WiSo6.js';
|
|
12
12
|
export { D as Dialog } from '../Dialog-BOcBeB8v.js';
|
|
13
13
|
export { E as Empty } from '../Empty-Bfido_mq.js';
|
|
14
|
-
export { I as Input } from '../Input-
|
|
14
|
+
export { I as Input } from '../Input-CYKHBpJn.js';
|
|
15
15
|
export { K as Kbd } from '../Kbd-CAIAs4OO.js';
|
|
16
16
|
export { L as Label } from '../Label-mrNM2drW.js';
|
|
17
17
|
export { M as MultiEmailInput } from '../MultiEmailInput-Du1964Ka.js';
|
|
@@ -29,7 +29,7 @@ export { T as Tabs } from '../Tabs-BCUdAnva.js';
|
|
|
29
29
|
export { T as Textarea } from '../Textarea-B2Uhx-Yy.js';
|
|
30
30
|
export { T as TimePicker } from '../TimePicker-Ca7iF-a_.js';
|
|
31
31
|
export { T as TimePickerPanel } from '../TimePickerPanel--KDX5QwS.js';
|
|
32
|
-
export { T as Toastr } from '../Toastr-
|
|
32
|
+
export { T as Toastr } from '../Toastr-DA3Lcm18.js';
|
|
33
33
|
export { T as Tooltip } from '../Tooltip-CA3irJ2q.js';
|
|
34
34
|
export { T as TranslationProvider } from '../TranslationProvider-BvRvUsPS.js';
|
|
35
35
|
export { T as Tree } from '../Tree-BlzjThRi.js';
|
|
@@ -76,9 +76,9 @@ import '../primitives/Accordion.js';
|
|
|
76
76
|
import '../chevron-up-Bf2G3AAU.js';
|
|
77
77
|
import '../index-0o2E3Cnw.js';
|
|
78
78
|
import '../primitives/Dialog.js';
|
|
79
|
-
import '../dialog
|
|
79
|
+
import '../dialog-BVHqPY9y.js';
|
|
80
80
|
import '../x-_o2T3n6D.js';
|
|
81
|
-
import '../index-
|
|
81
|
+
import '../index-GJ3FauH8.js';
|
|
82
82
|
import '../primitives/Avatar.js';
|
|
83
83
|
import '../index-DZXbzIgC.js';
|
|
84
84
|
import '../index-CSMSzzKM.js';
|
|
@@ -122,7 +122,7 @@ import '../SelectFieldWrapper-CiBARDsn.js';
|
|
|
122
122
|
import '../Combobox-BQ5wLjOU.js';
|
|
123
123
|
import '../with-selector-Dv0G_V_o.js';
|
|
124
124
|
import '../primitives/Sheet.js';
|
|
125
|
-
import '../sheet-
|
|
125
|
+
import '../sheet-DNANcGkk.js';
|
|
126
126
|
import '../primitives/Slider.js';
|
|
127
127
|
import '../index-BfAAoDv6.js';
|
|
128
128
|
import '../primitives/Switch.js';
|
|
@@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next';
|
|
|
3
3
|
import { c as cn } from './utils-BJnb9o5c.js';
|
|
4
4
|
import { B as Button } from './button-CrEMzWKw.js';
|
|
5
5
|
import { X } from './x-_o2T3n6D.js';
|
|
6
|
-
import { R as Root, P as Portal,
|
|
6
|
+
import { R as Root, P as Portal, T as Title, D as Description, a as Close, O as Overlay, b as Trigger, C as Content } from './index-GJ3FauH8.js';
|
|
7
7
|
|
|
8
8
|
function Dialog({
|
|
9
9
|
...props
|
|
@@ -146,5 +146,5 @@ function DialogDescription({
|
|
|
146
146
|
);
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
export { Dialog as D, DialogPortal as a,
|
|
150
|
-
//# sourceMappingURL=dialog
|
|
149
|
+
export { Dialog as D, DialogPortal as a, DialogHeader as b, DialogTitle as c, DialogDescription as d, DialogFooter as e, DialogOverlay as f, DialogClose as g, DialogTrigger as h, DialogContent as i };
|
|
150
|
+
//# sourceMappingURL=dialog-BVHqPY9y.js.map
|