@lindle/linoardo 1.0.18 → 1.0.20
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/card.cjs +81 -19
- package/dist/card.cjs.map +1 -1
- package/dist/card.d.cts +8 -1
- package/dist/card.d.ts +8 -1
- package/dist/card.js +1 -1
- package/dist/chip.cjs +9 -1
- package/dist/chip.cjs.map +1 -1
- package/dist/chip.d.cts +3 -0
- package/dist/chip.d.ts +3 -0
- package/dist/chip.js +1 -1
- package/dist/chunk-36T6I3XH.js +167 -0
- package/dist/chunk-36T6I3XH.js.map +1 -0
- package/dist/{chunk-N65GNKRG.js → chunk-5LWU5T2C.js} +48 -42
- package/dist/chunk-5LWU5T2C.js.map +1 -0
- package/dist/{chunk-PWK6MLZT.js → chunk-5PBPURGP.js} +11 -3
- package/dist/chunk-5PBPURGP.js.map +1 -0
- package/dist/{chunk-XFPBICJG.js → chunk-5WQW6YSJ.js} +12 -3
- package/dist/chunk-5WQW6YSJ.js.map +1 -0
- package/dist/{chunk-5GY2JCBO.js → chunk-AK7LFJI4.js} +16 -5
- package/dist/chunk-AK7LFJI4.js.map +1 -0
- package/dist/chunk-B5FW33K3.js +147 -0
- package/dist/chunk-B5FW33K3.js.map +1 -0
- package/dist/{chunk-AOHXZ7OM.js → chunk-GMDNSU26.js} +19 -5
- package/dist/chunk-GMDNSU26.js.map +1 -0
- package/dist/chunk-HAXGOTZO.js +94 -0
- package/dist/chunk-HAXGOTZO.js.map +1 -0
- package/dist/chunk-HEXJCQRO.js +51 -0
- package/dist/chunk-HEXJCQRO.js.map +1 -0
- package/dist/{chunk-GA6HSRN6.js → chunk-KRYWWWXR.js} +20 -7
- package/dist/chunk-KRYWWWXR.js.map +1 -0
- package/dist/{chunk-U6NAIIDI.js → chunk-LIEBZOLG.js} +42 -20
- package/dist/chunk-LIEBZOLG.js.map +1 -0
- package/dist/{chunk-E32P5AHO.js → chunk-LYP7V32H.js} +10 -4
- package/dist/chunk-LYP7V32H.js.map +1 -0
- package/dist/chunk-MFLH36XK.js +168 -0
- package/dist/chunk-MFLH36XK.js.map +1 -0
- package/dist/{chunk-QGQ66FJD.js → chunk-T37VPLS4.js} +2 -2
- package/dist/chunk-T37VPLS4.js.map +1 -0
- package/dist/{chunk-32KFNI6K.js → chunk-U2AL7XFY.js} +48 -28
- package/dist/chunk-U2AL7XFY.js.map +1 -0
- package/dist/dialog.cjs +40 -18
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.d.cts +3 -0
- package/dist/dialog.d.ts +3 -0
- package/dist/dialog.js +1 -1
- package/dist/expansion-panel/item.cjs +11 -2
- package/dist/expansion-panel/item.cjs.map +1 -1
- package/dist/expansion-panel/item.js +1 -1
- package/dist/expansion-panel.cjs +25 -6
- package/dist/expansion-panel.cjs.map +1 -1
- package/dist/expansion-panel.js +2 -2
- package/dist/icon.cjs +53 -0
- package/dist/icon.cjs.map +1 -0
- package/dist/icon.d.cts +15 -0
- package/dist/icon.d.ts +15 -0
- package/dist/icon.js +3 -0
- package/dist/icon.js.map +1 -0
- package/dist/{index-Md3BuoGM.d.cts → index-B5n8tN2G.d.cts} +3 -0
- package/dist/{index-d_JuI06O.d.ts → index-D4-O-oJt.d.ts} +3 -0
- package/dist/index.cjs +956 -149
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +64 -3
- package/dist/index.d.ts +64 -3
- package/dist/index.js +296 -12
- package/dist/index.js.map +1 -1
- package/dist/input.cjs +104 -30
- package/dist/input.cjs.map +1 -1
- package/dist/input.d.cts +8 -19
- package/dist/input.d.ts +8 -19
- package/dist/input.js +1 -1
- package/dist/list/item.cjs +10 -1
- package/dist/list/item.cjs.map +1 -1
- package/dist/list/item.d.cts +1 -1
- package/dist/list/item.d.ts +1 -1
- package/dist/list/item.js +1 -1
- package/dist/list.cjs +23 -3
- package/dist/list.cjs.map +1 -1
- package/dist/list.d.cts +5 -2
- package/dist/list.d.ts +5 -2
- package/dist/list.js +2 -2
- package/dist/masonry.cjs +116 -0
- package/dist/masonry.cjs.map +1 -0
- package/dist/masonry.d.cts +45 -0
- package/dist/masonry.d.ts +45 -0
- package/dist/masonry.js +3 -0
- package/dist/masonry.js.map +1 -0
- package/dist/menu.cjs.map +1 -1
- package/dist/menu.d.cts +3 -0
- package/dist/menu.d.ts +3 -0
- package/dist/menu.js +1 -1
- package/dist/select.cjs +173 -0
- package/dist/select.cjs.map +1 -0
- package/dist/select.d.cts +29 -0
- package/dist/select.d.ts +29 -0
- package/dist/select.js +3 -0
- package/dist/select.js.map +1 -0
- package/dist/slider.cjs +17 -3
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.d.cts +3 -0
- package/dist/slider.d.ts +3 -0
- package/dist/slider.js +1 -1
- package/dist/styles.css +1096 -8
- package/dist/switch.cjs +46 -40
- package/dist/switch.cjs.map +1 -1
- package/dist/switch.d.cts +3 -0
- package/dist/switch.d.ts +3 -0
- package/dist/switch.js +1 -1
- package/dist/tooltip.cjs +46 -26
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.d.cts +3 -0
- package/dist/tooltip.d.ts +3 -0
- package/dist/tooltip.js +1 -1
- package/dist/types-BCqIOkp1.d.cts +24 -0
- package/dist/types-ChXN4u7x.d.ts +24 -0
- package/package.json +29 -7
- package/readme.md +1 -0
- package/dist/chunk-32KFNI6K.js.map +0 -1
- package/dist/chunk-5GY2JCBO.js.map +0 -1
- package/dist/chunk-AOHXZ7OM.js.map +0 -1
- package/dist/chunk-E32P5AHO.js.map +0 -1
- package/dist/chunk-GA6HSRN6.js.map +0 -1
- package/dist/chunk-N65GNKRG.js.map +0 -1
- package/dist/chunk-PWK6MLZT.js.map +0 -1
- package/dist/chunk-PYG5SDNO.js +0 -98
- package/dist/chunk-PYG5SDNO.js.map +0 -1
- package/dist/chunk-QGQ66FJD.js.map +0 -1
- package/dist/chunk-U6NAIIDI.js.map +0 -1
- package/dist/chunk-V4BVJOSC.js +0 -85
- package/dist/chunk-V4BVJOSC.js.map +0 -1
- package/dist/chunk-XFPBICJG.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/ExpansionPanel/context.ts","../src/Containment/ExpansionPanel/ExpansionPanelItem.tsx"],"names":[],"mappings":"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","file":"chunk-GA6HSRN6.js","sourcesContent":["import { cloneElement, isValidElement } from 'react';\nimport type { ReactNode } from 'react';\n\nimport type { ExpansionPanelContextValue } from './types.expansion-panel';\n\nexport const EXPANSION_PANEL_CONTEXT_PROP = '__expansionPanelContext' as const;\nconst EXPANSION_PANEL_ITEM_MARKER = '__isExpansionPanelItem';\n\ntype MarkerTarget = Record<string | number | symbol, unknown> & {\n type?: unknown;\n};\n\nconst hasMarker = (type: unknown): boolean => {\n if (!type || (typeof type !== 'function' && typeof type !== 'object')) {\n return false;\n }\n\n if ((type as MarkerTarget)[EXPANSION_PANEL_ITEM_MARKER]) {\n return true;\n }\n\n const innerType = (type as MarkerTarget).type;\n if (innerType && innerType !== type) {\n return hasMarker(innerType);\n }\n\n return false;\n};\n\nconst traverseNode = (\n node: ReactNode,\n value: ExpansionPanelContextValue\n): { node: ReactNode; changed: boolean } => {\n if (Array.isArray(node)) {\n let changed = false;\n const nextArray = node.map(child => {\n const result = traverseNode(child, value);\n if (result.changed) {\n changed = true;\n }\n return result.node;\n });\n return { node: changed ? nextArray : node, changed };\n }\n\n if (\n node === null ||\n node === undefined ||\n typeof node === 'boolean' ||\n typeof node === 'string' ||\n typeof node === 'number'\n ) {\n return { node, changed: false };\n }\n\n if (!isValidElement(node)) {\n return { node, changed: false };\n }\n\n const { node: mappedChildren, changed: childrenChanged } = traverseNode(node.props.children, value);\n const shouldInject = hasMarker(node.type);\n\n if (!shouldInject && !childrenChanged) {\n return { node, changed: false };\n }\n\n const injectedProps = shouldInject ? { [EXPANSION_PANEL_CONTEXT_PROP]: value } : undefined;\n const cloned =\n mappedChildren === undefined\n ? cloneElement(node, injectedProps)\n : cloneElement(node, injectedProps, mappedChildren);\n\n return { node: cloned, changed: true };\n};\n\nexport const injectExpansionPanelContext = (\n children: ReactNode,\n value: ExpansionPanelContextValue\n): ReactNode => traverseNode(children, value).node;\n\nexport const markExpansionPanelItem = (component: unknown) => {\n if (typeof component !== 'function' && (typeof component !== 'object' || component === null)) {\n return;\n }\n\n (component as MarkerTarget)[EXPANSION_PANEL_ITEM_MARKER] = true;\n};\n","import { forwardRef, useRef, useState } from 'react';\nimport type { Ref } from 'react';\nimport { twMerge } from 'tailwind-merge';\nimport { markExpansionPanelItem } from './context';\nimport type {\n ExpansionPanelDensity,\n ExpansionPanelItemProps,\n ExpansionPanelValue,\n ExpansionPanelContextValue\n} from './types.expansion-panel';\nimport type { Palette } from '@lindle/linoardo/global.types';\n\nconst densityClasses: Record<ExpansionPanelDensity, string> = {\n comfortable: 'py-5',\n default: 'py-4',\n compact: 'py-3'\n};\n\nconst roundedClasses = {\n none: 'rounded-none',\n sm: 'rounded-sm',\n md: 'rounded-md',\n lg: 'rounded-lg',\n xl: 'rounded-xl'\n};\n\nconst itemVariantClasses = {\n elevated: 'bg-white border border-gray-200 shadow-sm shadow-gray-900/5',\n outlined: 'bg-white border border-gray-200',\n tonal: 'bg-gray-50 border border-gray-100',\n plain: 'bg-transparent border border-transparent'\n};\n\nconst accentClasses: Record<Palette, { text: string; bg: string; border: string }> = {\n primary: { text: 'text-primary', bg: 'bg-primary/5', border: 'border-primary/30' },\n neutral: { text: 'text-gray-900', bg: 'bg-gray-100', border: 'border-gray-200' },\n info: { text: 'text-sky-600', bg: 'bg-sky-50', border: 'border-sky-200' },\n success: { text: 'text-emerald-600', bg: 'bg-emerald-50', border: 'border-emerald-200' },\n warning: { text: 'text-amber-600', bg: 'bg-amber-50', border: 'border-amber-200' },\n danger: { text: 'text-red-600', bg: 'bg-red-50', border: 'border-red-200' },\n surface: { text: 'text-gray-900', bg: 'bg-gray-100', border: 'border-gray-200' },\n bw: { text: 'text-gray-900', bg: 'bg-gray-100', border: 'border-gray-200' }\n};\n\nlet uniqueIdCounter = 0;\nconst generateId = (prefix: string) => `${prefix}-${++uniqueIdCounter}`;\n\ntype ForwardedRef = Ref<HTMLDivElement>;\n\ninterface ExpansionPanelItemInnerProps extends ExpansionPanelItemProps {\n forwardedRef?: ForwardedRef;\n}\n\nconst ExpansionPanelItemInner = (props: ExpansionPanelItemInnerProps) => {\n const {\n value,\n title,\n subtitle,\n text,\n prepend,\n append,\n expandIcon,\n collapseIcon,\n hideToggleIcon = false,\n headerClassName,\n contentClassName,\n className,\n disabled = false,\n children,\n color: colorOverride,\n forwardedRef,\n __expansionPanelContext,\n ...rest\n } = props;\n\n const [standaloneExpanded, setStandaloneExpanded] = useState(false);\n\n const generatedValueRef = useRef<ExpansionPanelValue | null>(null);\n if (generatedValueRef.current === null) {\n generatedValueRef.current = generateId('expansion-panel-value');\n }\n const generatedValue = generatedValueRef.current as ExpansionPanelValue;\n\n const headerIdRef = useRef<string | null>(null);\n if (!headerIdRef.current) {\n headerIdRef.current = generateId('expansion-panel-header');\n }\n const headerId = headerIdRef.current as string;\n\n const contentIdRef = useRef<string | null>(null);\n if (!contentIdRef.current) {\n contentIdRef.current = generateId('expansion-panel-content');\n }\n const contentId = contentIdRef.current as string;\n\n const context: ExpansionPanelContextValue | null = __expansionPanelContext ?? null;\n const panelValue = value ?? generatedValue;\n const density = context?.density ?? 'default';\n const color = colorOverride ?? context?.color ?? 'primary';\n const divider = context?.divider ?? true;\n const variant = context?.variant ?? 'elevated';\n const rounded = context?.rounded ?? 'lg';\n const accent = accentClasses[color] ?? accentClasses.primary;\n const isExpanded = context ? context.expandedValues.includes(panelValue) : standaloneExpanded;\n\n const rootSurface = divider ? 'bg-transparent border-0 shadow-none' : itemVariantClasses[variant];\n const shapeClass = divider ? undefined : roundedClasses[rounded] ?? roundedClasses.lg;\n const densityPadding = densityClasses[density] ?? densityClasses.default;\n const disabledClass = disabled ? 'cursor-not-allowed opacity-60' : 'cursor-pointer';\n const titleClass = isExpanded ? accent.text : undefined;\n const activeBorderClass = twMerge('border-l-2 border-transparent', isExpanded ? accent.border : undefined);\n const defaultToggleIcon = (\n <i className='mdi mdi-chevron-down text-lg leading-none transition-transform duration-200' aria-hidden />\n );\n\n const hasContent = Boolean(children ?? text);\n const contentAnimationClass = isExpanded ? 'pb-5 opacity-100' : 'pb-0 opacity-0';\n const toggleIconNode = hideToggleIcon\n ? null\n : isExpanded && collapseIcon\n ? collapseIcon\n : expandIcon ?? defaultToggleIcon;\n\n const shouldRotateDefaultIcon = !expandIcon && !collapseIcon && !hideToggleIcon;\n const toggleWrapperClass = twMerge(\n 'ml-3 flex h-6 w-6 items-center justify-center text-gray-500 transition-transform duration-200',\n shouldRotateDefaultIcon && isExpanded ? 'rotate-180' : undefined\n );\n\n const handleToggle = () => {\n if (disabled) {\n return;\n }\n\n if (context) {\n context.toggle(panelValue, disabled);\n return;\n }\n\n setStandaloneExpanded(prev => !prev);\n };\n\n return (\n <div\n {...rest}\n ref={forwardedRef}\n className={twMerge(\n 'expansion-panel-item flex flex-col overflow-hidden transition-colors duration-200',\n rootSurface,\n shapeClass,\n className\n )}\n data-state={isExpanded ? 'open' : 'closed'}\n data-disabled={disabled || undefined}\n >\n <button\n type='button'\n id={headerId}\n onClick={handleToggle}\n disabled={disabled}\n aria-expanded={isExpanded}\n aria-controls={hasContent ? contentId : undefined}\n className={twMerge(\n 'flex w-full items-center gap-4 px-4 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40',\n densityPadding,\n disabledClass,\n isExpanded ? accent.bg : undefined,\n headerClassName\n )}\n data-state={isExpanded ? 'open' : 'closed'}\n >\n {prepend && <span className='flex h-10 w-10 items-center justify-center text-gray-500'>{prepend}</span>}\n <span className='flex min-w-0 flex-1 flex-col gap-0.5 text-left'>\n {title && <span className={twMerge('truncate font-medium text-gray-900', titleClass)}>{title}</span>}\n {subtitle && <span className='text-sm text-gray-500'>{subtitle}</span>}\n </span>\n {append && <span className='ml-auto flex items-center gap-2 text-sm text-gray-500'>{append}</span>}\n {!hideToggleIcon && <span className={toggleWrapperClass}>{toggleIconNode}</span>}\n </button>\n {hasContent && (\n <div\n className='grid overflow-hidden border-t border-gray-100 transition-all duration-200 ease-in-out'\n style={{ gridTemplateRows: isExpanded ? '1fr' : '0fr' }}\n aria-hidden={isExpanded ? undefined : true}\n data-state={isExpanded ? 'open' : 'closed'}\n >\n <div\n id={contentId}\n role='region'\n aria-labelledby={headerId}\n data-state={isExpanded ? 'open' : 'closed'}\n className={twMerge(\n 'min-h-0 px-4 pt-0 text-sm text-gray-600 transition-all duration-200',\n activeBorderClass,\n contentAnimationClass,\n isExpanded ? 'pointer-events-auto' : 'pointer-events-none',\n contentClassName\n )}\n >\n {children ?? text}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nconst ExpansionPanelItem = forwardRef<HTMLDivElement, ExpansionPanelItemProps>((props, ref) => (\n <ExpansionPanelItemInner {...props} forwardedRef={ref} />\n));\n\nExpansionPanelItem.displayName = 'ExpansionPanelItem';\nmarkExpansionPanelItem(ExpansionPanelItem);\n\nexport default ExpansionPanelItem;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Form/Switch/index.tsx"],"names":[],"mappings":"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","file":"chunk-N65GNKRG.js","sourcesContent":["import { forwardRef, type ChangeEvent, useEffect, useState } from 'react';\nimport type { Palette } from '@lindle/linoardo/global.types';\nimport { twMerge } from 'tailwind-merge';\nimport type { SwitchProps, SwitchSize } from './types.switch';\n\nconst trackSizes: Record<SwitchSize, string> = {\n small: 'w-10 h-6',\n medium: 'w-12 h-7',\n large: 'w-14 h-8'\n};\n\nconst thumbSizes: Record<SwitchSize, string> = {\n small: 'w-5 h-5',\n medium: 'w-6 h-6',\n large: 'w-7 h-7'\n};\n\nconst thumbTranslate: Record<SwitchSize, string> = {\n small: 'translate-x-4',\n medium: 'translate-x-5',\n large: 'translate-x-6'\n};\n\nconst paletteTrackClasses: Record<Palette, { active: string; inactive: string }> = {\n primary: { active: 'bg-primary', inactive: 'bg-gray-300' },\n neutral: { active: 'bg-gray-600', inactive: 'bg-gray-300' },\n info: { active: 'bg-sky-500', inactive: 'bg-gray-300' },\n success: { active: 'bg-emerald-500', inactive: 'bg-gray-300' },\n warning: { active: 'bg-amber-500', inactive: 'bg-gray-300' },\n danger: { active: 'bg-red-500', inactive: 'bg-gray-300' },\n surface: { active: 'bg-gray-900', inactive: 'bg-gray-300' },\n bw: { active: 'bg-black', inactive: 'bg-gray-200' }\n};\n\nconst focusRingClasses: Record<Palette, string> = {\n primary: 'peer-focus-visible:ring-primary/40',\n neutral: 'peer-focus-visible:ring-gray-400',\n info: 'peer-focus-visible:ring-sky-400',\n success: 'peer-focus-visible:ring-emerald-400',\n warning: 'peer-focus-visible:ring-amber-400',\n danger: 'peer-focus-visible:ring-red-400',\n surface: 'peer-focus-visible:ring-gray-800/70',\n bw: 'peer-focus-visible:ring-black/50'\n};\n\nconst thumbActiveClasses: Record<Palette, string> = {\n primary: 'border-primary shadow-[0_4px_12px_rgba(99,102,241,0.35)]',\n neutral: 'border-gray-600 shadow-[0_4px_12px_rgba(75,85,99,0.35)]',\n info: 'border-sky-500 shadow-[0_4px_12px_rgba(2,132,199,0.32)]',\n success: 'border-emerald-500 shadow-[0_4px_12px_rgba(16,185,129,0.32)]',\n warning: 'border-amber-500 shadow-[0_4px_12px_rgba(245,158,11,0.32)]',\n danger: 'border-red-500 shadow-[0_4px_12px_rgba(239,68,68,0.32)]',\n surface: 'border-gray-900 shadow-[0_4px_12px_rgba(15,23,42,0.32)]',\n bw: 'border-black shadow-[0_4px_12px_rgba(0,0,0,0.32)]'\n};\n\nconst Switch = forwardRef<HTMLInputElement, SwitchProps>(\n (\n {\n color = 'primary',\n size = 'medium',\n label,\n description,\n wrapperClassName,\n className,\n labelClassName,\n disabled,\n onChange,\n checked,\n defaultChecked,\n ...rest\n },\n ref\n ) => {\n const paletteTrack = paletteTrackClasses[color] ?? paletteTrackClasses.primary;\n const focusClass = focusRingClasses[color] ?? focusRingClasses.primary;\n const thumbActive = thumbActiveClasses[color] ?? thumbActiveClasses.primary;\n const isControlled = checked !== undefined;\n const [internalChecked, setInternalChecked] = useState<boolean>(\n Boolean((isControlled ? checked : defaultChecked) ?? false)\n );\n\n useEffect(() => {\n if (isControlled) {\n setInternalChecked(Boolean(checked));\n }\n }, [checked, isControlled]);\n\n const currentChecked = isControlled ? Boolean(checked) : internalChecked;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setInternalChecked(event.target.checked);\n }\n onChange?.(event);\n };\n\n const sizeTrackClass = trackSizes[size] ?? trackSizes.medium;\n const sizeThumbClass = thumbSizes[size] ?? thumbSizes.medium;\n const thumbShiftClass = thumbTranslate[size] ?? thumbTranslate.medium;\n\n const pointerClass = disabled ? 'cursor-not-allowed opacity-60' : 'cursor-pointer';\n\n return (\n <label className={twMerge('flex items-center gap-3 select-none', pointerClass, wrapperClassName)}>\n <span className='relative inline-flex items-center'>\n <input\n {...rest}\n type='checkbox'\n ref={ref}\n checked={currentChecked}\n onChange={handleChange}\n disabled={disabled}\n className='peer sr-only'\n />\n <span\n className={twMerge(\n 'block rounded-full border border-transparent transition-all duration-200',\n sizeTrackClass,\n currentChecked ? paletteTrack.active : paletteTrack.inactive,\n disabled && 'bg-gray-200',\n 'peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2',\n focusClass,\n className\n )}\n aria-hidden\n >\n <span\n className={twMerge(\n 'absolute left-0.5 top-0.5 rounded-full bg-white shadow-md border border-gray-200 transition-transform duration-200',\n sizeThumbClass,\n currentChecked && thumbShiftClass,\n currentChecked && thumbActive,\n disabled && 'border-gray-300'\n )}\n />\n </span>\n </span>\n\n {(label || description) && (\n <span className={twMerge('flex flex-col leading-tight', labelClassName)}>\n {label && <span className='text-sm font-medium text-gray-900'>{label}</span>}\n {description && <span className='text-xs text-gray-600'>{description}</span>}\n </span>\n )}\n </label>\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/Chip/states.chip.ts","../src/Containment/Chip/index.tsx"],"names":["normalized"],"mappings":"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","file":"chunk-PWK6MLZT.js","sourcesContent":["import { iconBaseClasses } from '@lindle/linoardo/globals';\nimport { Palette, PropIcon } from '@lindle/linoardo/global.types';\nimport { ChipSize, ChipVariant } from './types.chip';\n\nexport const chipBaseClasses =\n 'inline-flex items-center gap-1.5 border font-medium leading-tight transition-all duration-200 select-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 focus-visible:ring-offset-2';\n\nexport const chipSizeClasses: Record<ChipSize, string> = {\n small: 'text-xs px-3 py-1 min-h-[1.5rem]',\n medium: 'text-sm px-4 py-1.5 min-h-[2rem]',\n large: 'text-base px-5 py-2 min-h-[2.5rem]'\n};\n\nexport const closeButtonClasses =\n 'ml-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-full border border-transparent text-current/70 transition-colors duration-200 hover:bg-current/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-current/30 focus-visible:ring-offset-2';\n\nconst blackAndWhiteChipVariantClass =\n 'bg-white text-black border border-black hover:bg-white focus-visible:ring-black/40 focus-visible:ring-offset-white';\n\nconst blackAndWhitePaletteClasses = {\n solid: blackAndWhiteChipVariantClass,\n outline: blackAndWhiteChipVariantClass,\n ghost: blackAndWhiteChipVariantClass,\n text: blackAndWhiteChipVariantClass,\n filled: blackAndWhiteChipVariantClass,\n underlined: blackAndWhiteChipVariantClass,\n rounded: blackAndWhiteChipVariantClass,\n sharp: `${blackAndWhiteChipVariantClass} rounded-none`\n} satisfies Record<ChipVariant, string>;\n\nconst paletteVariantClasses: Record<Palette, Record<ChipVariant, string>> = {\n primary: {\n solid: 'bg-primary text-white border border-primary hover:bg-primary/90',\n sharp: 'rounded-none bg-primary text-white border border-primary hover:bg-primary/90',\n outline: 'bg-transparent text-primary border border-primary hover:bg-primary/10',\n ghost: 'bg-primary/15 text-primary border border-transparent hover:bg-primary/25',\n text: 'bg-transparent text-primary border border-transparent hover:text-primary/80',\n filled: 'bg-primary/10 text-primary border border-primary/30 hover:bg-primary/20',\n underlined: 'bg-transparent text-primary border-0 border-b-2 border-primary px-0 rounded-none hover:text-primary/80',\n rounded: 'bg-white text-primary border border-primary/40 shadow-sm hover:bg-primary/5'\n },\n neutral: {\n solid: 'bg-gray-900 text-white border border-gray-900 hover:bg-gray-800',\n sharp: 'rounded-none bg-gray-900 text-white border border-gray-900 hover:bg-gray-800',\n outline: 'bg-transparent text-gray-900 border border-gray-500 hover:bg-gray-100',\n ghost: 'bg-gray-100 text-gray-900 border border-transparent hover:bg-gray-200',\n text: 'bg-transparent text-gray-900 border border-transparent hover:text-gray-700',\n filled: 'bg-gray-200 text-gray-900 border border-gray-300 hover:bg-gray-300',\n underlined: 'bg-transparent text-gray-900 border-0 border-b-2 border-gray-500 px-0 rounded-none hover:text-gray-700',\n rounded: 'bg-white text-gray-900 border border-gray-300 shadow-sm hover:bg-gray-100'\n },\n info: {\n solid: 'bg-sky-500 text-white border border-sky-500 hover:bg-sky-600',\n sharp: 'rounded-none bg-sky-500 text-white border border-sky-500 hover:bg-sky-600',\n outline: 'bg-transparent text-sky-600 border border-sky-500 hover:bg-sky-50',\n ghost: 'bg-sky-100 text-sky-700 border border-transparent hover:bg-sky-200',\n text: 'bg-transparent text-sky-600 border border-transparent hover:text-sky-700',\n filled: 'bg-sky-100 text-sky-700 border border-sky-200 hover:bg-sky-200',\n underlined: 'bg-transparent text-sky-600 border-0 border-b-2 border-sky-500 px-0 rounded-none hover:text-sky-700',\n rounded: 'bg-white text-sky-700 border border-sky-200 shadow-sm hover:bg-sky-50'\n },\n success: {\n solid: 'bg-emerald-500 text-white border border-emerald-500 hover:bg-emerald-600',\n sharp: 'rounded-none bg-emerald-500 text-white border border-emerald-500 hover:bg-emerald-600',\n outline: 'bg-transparent text-emerald-600 border border-emerald-500 hover:bg-emerald-50',\n ghost: 'bg-emerald-100 text-emerald-700 border border-transparent hover:bg-emerald-200',\n text: 'bg-transparent text-emerald-600 border border-transparent hover:text-emerald-700',\n filled: 'bg-emerald-100 text-emerald-700 border border-emerald-200 hover:bg-emerald-200',\n underlined:\n 'bg-transparent text-emerald-600 border-0 border-b-2 border-emerald-500 px-0 rounded-none hover:text-emerald-700',\n rounded: 'bg-white text-emerald-700 border border-emerald-200 shadow-sm hover:bg-emerald-50'\n },\n warning: {\n solid: 'bg-amber-500 text-white border border-amber-500 hover:bg-amber-600',\n sharp: 'rounded-none bg-amber-500 text-white border border-amber-500 hover:bg-amber-600',\n outline: 'bg-transparent text-amber-700 border border-amber-500 hover:bg-amber-50',\n ghost: 'bg-amber-100 text-amber-800 border border-transparent hover:bg-amber-200',\n text: 'bg-transparent text-amber-700 border border-transparent hover:text-amber-800',\n filled: 'bg-amber-100 text-amber-800 border border-amber-200 hover:bg-amber-200',\n underlined:\n 'bg-transparent text-amber-700 border-0 border-b-2 border-amber-500 px-0 rounded-none hover:text-amber-800',\n rounded: 'bg-white text-amber-700 border border-amber-200 shadow-sm hover:bg-amber-50'\n },\n danger: {\n solid: 'bg-red-500 text-white border border-red-500 hover:bg-red-600',\n sharp: 'rounded-none bg-red-500 text-white border border-red-500 hover:bg-red-600',\n outline: 'bg-transparent text-red-600 border border-red-500 hover:bg-red-50',\n ghost: 'bg-red-100 text-red-700 border border-transparent hover:bg-red-200',\n text: 'bg-transparent text-red-600 border border-transparent hover:text-red-700',\n filled: 'bg-red-100 text-red-700 border border-red-200 hover:bg-red-200',\n underlined: 'bg-transparent text-red-600 border-0 border-b-2 border-red-500 px-0 rounded-none hover:text-red-700',\n rounded: 'bg-white text-red-600 border border-red-200 shadow-sm hover:bg-red-50'\n },\n surface: {\n solid: 'bg-white text-gray-900 border border-gray-200 hover:bg-gray-50',\n sharp: 'rounded-none bg-white text-gray-900 border border-gray-200 hover:bg-gray-50',\n outline: 'bg-transparent text-gray-900 border border-gray-300 hover:bg-gray-50',\n ghost: 'bg-gray-100 text-gray-900 border border-transparent hover:bg-gray-200',\n text: 'bg-transparent text-gray-900 border border-transparent hover:text-gray-600',\n filled: 'bg-gray-50 text-gray-900 border border-gray-200 hover:bg-white',\n underlined: 'bg-transparent text-gray-900 border-0 border-b-2 border-gray-400 px-0 rounded-none hover:text-gray-600',\n rounded: 'bg-white text-gray-900 border border-gray-200 shadow-sm hover:bg-gray-50'\n },\n bw: blackAndWhitePaletteClasses\n};\n\nexport const resolveVariantClass = (variant: ChipVariant, palette: Palette) => {\n const variants = paletteVariantClasses[palette] ?? paletteVariantClasses.primary;\n return variants[variant] ?? variants.solid;\n};\n\nexport const resolveIconClassName = (icon?: PropIcon) => {\n if (!icon) {\n return undefined;\n }\n\n if (typeof icon === 'string') {\n const trimmed = icon.trim();\n if (!trimmed) {\n return undefined;\n }\n\n if (trimmed.includes(' ')) {\n return trimmed;\n }\n\n const normalized = trimmed.startsWith('mdi-') ? trimmed : `mdi-${trimmed}`;\n return ['mdi', normalized].join(' ');\n }\n\n const [library, providedName] = icon;\n const normalizedLibrary = library.trim();\n const baseClasses = iconBaseClasses[normalizedLibrary as keyof typeof iconBaseClasses] ?? [normalizedLibrary];\n const iconName = providedName.trim();\n if (!iconName) {\n return baseClasses.join(' ');\n }\n\n const normalized = iconName.startsWith('mdi-') ? iconName : `mdi-${iconName}`;\n return Array.from(new Set([...baseClasses, normalized])).join(' ');\n};\n","import { forwardRef } from 'react';\nimport type { KeyboardEvent, MouseEvent } from 'react';\nimport { twMerge } from 'tailwind-merge';\nimport type { ChipProps } from './types.chip';\nimport {\n chipBaseClasses,\n chipSizeClasses,\n closeButtonClasses,\n resolveIconClassName,\n resolveVariantClass\n} from './states.chip';\n\nconst Chip = forwardRef<HTMLSpanElement, ChipProps>(\n (\n {\n variant = 'solid',\n color = 'primary',\n size = 'medium',\n pill = true,\n selected = false,\n closable = false,\n closeIcon = 'mdi-close',\n onClose,\n filter = false,\n filterIcon = 'mdi-check-bold',\n prependIcon,\n appendIcon,\n disabled = false,\n className,\n children,\n ...rest\n },\n ref\n ) => {\n const { onClick, onKeyDown, role, tabIndex, ...nativeProps } = rest;\n const interactive = typeof onClick === 'function';\n\n const variantClass = resolveVariantClass(variant, color);\n const sizeClass = chipSizeClasses[size] ?? chipSizeClasses.medium;\n const pillClass = pill ? 'rounded-full' : 'rounded-lg';\n const cursorClass = disabled ? 'pointer-events-none opacity-50' : interactive ? 'cursor-pointer' : 'cursor-default';\n const selectedClass = selected ? 'ring-2 ring-current/50 ring-offset-2 ring-offset-white' : undefined;\n\n const resolvedRole = disabled ? role : role ?? (interactive ? 'button' : undefined);\n const resolvedTabIndex = disabled ? -1 : tabIndex ?? (interactive ? 0 : undefined);\n const prependIconClassName = resolveIconClassName(prependIcon);\n const appendIconClassName = resolveIconClassName(appendIcon);\n const closeIconClassName = resolveIconClassName(closeIcon);\n const filterIconClassName = filter && selected ? resolveIconClassName(filterIcon) : undefined;\n\n const handleClick = (event: MouseEvent<HTMLSpanElement>) => {\n if (disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n onClick?.(event);\n };\n\n const handleKeyDown = (event: KeyboardEvent<HTMLSpanElement>) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || disabled || !interactive) {\n return;\n }\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n (event.currentTarget as HTMLSpanElement).click();\n }\n };\n\n const handleCloseClick = (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n if (disabled) {\n event.preventDefault();\n return;\n }\n onClose?.(event);\n };\n\n const handleCloseKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.stopPropagation();\n }\n };\n\n const renderableChildren =\n typeof children === 'string' || typeof children === 'number' ? (\n <span className='truncate'>{children}</span>\n ) : (\n children\n );\n\n const filterAdornment = filter ? (\n <span\n className='flex h-4 w-4 shrink-0 items-center justify-center rounded-full border border-current/30 text-[0.55rem]'\n aria-hidden\n >\n {filterIconClassName ? <i className={filterIconClassName} aria-hidden /> : null}\n </span>\n ) : null;\n\n return (\n <span\n {...nativeProps}\n ref={ref}\n role={resolvedRole}\n tabIndex={resolvedTabIndex}\n aria-disabled={disabled || undefined}\n aria-pressed={filter ? selected : undefined}\n data-selected={selected || undefined}\n className={twMerge(chipBaseClasses, sizeClass, pillClass, variantClass, cursorClass, selectedClass, className)}\n onClick={interactive ? handleClick : undefined}\n onKeyDown={interactive ? handleKeyDown : onKeyDown}\n >\n {filterAdornment}\n {prependIconClassName && <i className={twMerge('text-[1em] leading-none', prependIconClassName)} aria-hidden />}\n {renderableChildren}\n {appendIconClassName && <i className={twMerge('text-[1em] leading-none', appendIconClassName)} aria-hidden />}\n {closable && (\n <button\n type='button'\n disabled={disabled}\n aria-label='Remove chip'\n className={twMerge(closeButtonClasses)}\n onClick={handleCloseClick}\n onKeyDown={handleCloseKeyDown}\n >\n {closeIconClassName ? <i className={closeIconClassName} aria-hidden /> : <span aria-hidden>×</span>}\n </button>\n )}\n </span>\n );\n }\n);\n\nChip.displayName = 'Chip';\n\nexport type { ChipProps, ChipSize, ChipVariant } from './types.chip';\nexport default Chip;\n"]}
|
package/dist/chunk-PYG5SDNO.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { iconBaseClasses } from './chunk-IEILIKS2.js';
|
|
2
|
-
import { twMerge } from 'tailwind-merge';
|
|
3
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
-
|
|
5
|
-
// src/Form/Input/states.input.ts
|
|
6
|
-
var resolveIconClassName = (icon) => {
|
|
7
|
-
if (!icon) {
|
|
8
|
-
return void 0;
|
|
9
|
-
}
|
|
10
|
-
if (typeof icon === "string") {
|
|
11
|
-
const trimmed = icon.trim();
|
|
12
|
-
if (!trimmed) {
|
|
13
|
-
return void 0;
|
|
14
|
-
}
|
|
15
|
-
if (trimmed.includes(" ")) {
|
|
16
|
-
return trimmed;
|
|
17
|
-
}
|
|
18
|
-
const normalizedName2 = trimmed.startsWith("mdi-") ? trimmed : `mdi-${trimmed}`;
|
|
19
|
-
return ["mdi", normalizedName2].join(" ");
|
|
20
|
-
}
|
|
21
|
-
const [library, iconNameRaw] = icon;
|
|
22
|
-
const baseClasses = iconBaseClasses[library] ?? [library];
|
|
23
|
-
const iconName = iconNameRaw.trim();
|
|
24
|
-
if (!iconName) {
|
|
25
|
-
return baseClasses.join(" ");
|
|
26
|
-
}
|
|
27
|
-
const normalizedName = iconName.startsWith("mdi-") ? iconName : `mdi-${iconName}`;
|
|
28
|
-
const classes = [...baseClasses, normalizedName];
|
|
29
|
-
return Array.from(new Set(classes)).join(" ");
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
// src/utils/helpers/randomStr.ts
|
|
33
|
-
var characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
34
|
-
function generateString(length = 5) {
|
|
35
|
-
let result = "";
|
|
36
|
-
const charactersLength = characters.length;
|
|
37
|
-
for (let i = 0; i < length; i++) {
|
|
38
|
-
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
39
|
-
}
|
|
40
|
-
return result;
|
|
41
|
-
}
|
|
42
|
-
var Input = ({
|
|
43
|
-
variant = "outline",
|
|
44
|
-
success,
|
|
45
|
-
error,
|
|
46
|
-
warn,
|
|
47
|
-
icon,
|
|
48
|
-
className,
|
|
49
|
-
wrapperClassName,
|
|
50
|
-
...props
|
|
51
|
-
}) => {
|
|
52
|
-
const classBase = "input-base px-3 py-2 focus-visible:outline-none focus-visible:ring-primary transition-colors duration-200 disabled:opacity-50 disabled:cursor-not-allowed w-full";
|
|
53
|
-
const variantClasses = {
|
|
54
|
-
solid: "rounded border border-gray-400 bg-white shadow-sm focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30",
|
|
55
|
-
sharp: "rounded-none border border-gray-400 bg-white shadow-sm focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30",
|
|
56
|
-
outline: "rounded border border-gray-300 bg-transparent focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30",
|
|
57
|
-
text: "rounded-none border-0 border-b border-transparent px-0 bg-transparent focus-visible:border-primary focus-visible:ring-0 focus-visible:ring-transparent",
|
|
58
|
-
ghost: "rounded border border-transparent bg-gray-50 text-gray-900 focus-visible:bg-white focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/15",
|
|
59
|
-
filled: "rounded border border-gray-200 bg-gray-100 focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/25",
|
|
60
|
-
underlined: "rounded-none border-0 border-b border-gray-300 px-0 bg-transparent focus-visible:border-primary focus-visible:ring-0 focus-visible:ring-transparent",
|
|
61
|
-
rounded: "rounded-full px-4 border border-gray-300 bg-white focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/20 shadow-sm"
|
|
62
|
-
};
|
|
63
|
-
const status = error ? { tone: "error", message: error } : warn ? { tone: "warn", message: warn } : success ? { tone: "success", message: success } : void 0;
|
|
64
|
-
const statusClasses = {
|
|
65
|
-
error: "border-red-500 focus:border-red-500 focus:ring-red-400",
|
|
66
|
-
warn: "border-amber-500 focus:border-amber-500 focus:ring-amber-400",
|
|
67
|
-
success: "border-emerald-500 focus:border-emerald-500 focus:ring-emerald-400"
|
|
68
|
-
};
|
|
69
|
-
const statusMessageClasses = {
|
|
70
|
-
error: "text-red-600",
|
|
71
|
-
warn: "text-amber-600",
|
|
72
|
-
success: "text-emerald-600"
|
|
73
|
-
};
|
|
74
|
-
const variantClass = variantClasses[variant] ?? variantClasses.outline;
|
|
75
|
-
const toneClass = status ? statusClasses[status.tone] : void 0;
|
|
76
|
-
const prependIconClass = resolveIconClassName(icon);
|
|
77
|
-
const prependPadding = prependIconClass ? "pl-10" : void 0;
|
|
78
|
-
const inputName = props.name || generateString();
|
|
79
|
-
return /* @__PURE__ */ jsxs("div", { className: twMerge("flex flex-col gap-1", wrapperClassName), children: [
|
|
80
|
-
/* @__PURE__ */ jsxs("div", { className: "relative flex items-center", children: [
|
|
81
|
-
prependIconClass && /* @__PURE__ */ jsx("i", { className: twMerge("pointer-events-none absolute left-3 ", prependIconClass), "aria-hidden": true }),
|
|
82
|
-
/* @__PURE__ */ jsx(
|
|
83
|
-
"input",
|
|
84
|
-
{
|
|
85
|
-
...props,
|
|
86
|
-
className: twMerge(classBase, variantClass, toneClass, prependPadding, className),
|
|
87
|
-
name: inputName
|
|
88
|
-
}
|
|
89
|
-
)
|
|
90
|
-
] }),
|
|
91
|
-
status?.message && /* @__PURE__ */ jsx("span", { className: twMerge("text-sm", statusMessageClasses[status.tone]), children: status.message })
|
|
92
|
-
] });
|
|
93
|
-
};
|
|
94
|
-
var Input_default = Input;
|
|
95
|
-
|
|
96
|
-
export { Input_default };
|
|
97
|
-
//# sourceMappingURL=chunk-PYG5SDNO.js.map
|
|
98
|
-
//# sourceMappingURL=chunk-PYG5SDNO.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Form/Input/states.input.ts","../src/utils/helpers/randomStr.ts","../src/Form/Input/index.tsx"],"names":["normalizedName"],"mappings":";;;;;AAGO,IAAM,oBAAA,GAAuB,CAAC,IAAA,KAA6B;AAChE,EAAA,IAAI,CAAC,IAAA,EAAM;AACT,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,IAAI,OAAO,SAAS,QAAA,EAAU;AAC5B,IAAA,MAAM,OAAA,GAAU,KAAK,IAAA,EAAK;AAC1B,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,OAAO,MAAA;AAAA,IACT;AAEA,IAAA,IAAI,OAAA,CAAQ,QAAA,CAAS,GAAG,CAAA,EAAG;AACzB,MAAA,OAAO,OAAA;AAAA,IACT;AAEA,IAAA,MAAMA,kBAAiB,OAAA,CAAQ,UAAA,CAAW,MAAM,CAAA,GAAI,OAAA,GAAU,OAAO,OAAO,CAAA,CAAA;AAC5E,IAAA,OAAO,CAAC,KAAA,EAAOA,eAAc,CAAA,CAAE,KAAK,GAAG,CAAA;AAAA,EACzC;AAEA,EAAA,MAAM,CAAC,OAAA,EAAS,WAAW,CAAA,GAAI,IAAA;AAC/B,EAAA,MAAM,WAAA,GAAc,eAAA,CAAgB,OAAO,CAAA,IAAK,CAAC,OAAO,CAAA;AACxD,EAAA,MAAM,QAAA,GAAW,YAAY,IAAA,EAAK;AAClC,EAAA,IAAI,CAAC,QAAA,EAAU;AACb,IAAA,OAAO,WAAA,CAAY,KAAK,GAAG,CAAA;AAAA,EAC7B;AACA,EAAA,MAAM,iBAAiB,QAAA,CAAS,UAAA,CAAW,MAAM,CAAA,GAAI,QAAA,GAAW,OAAO,QAAQ,CAAA,CAAA;AAC/E,EAAA,MAAM,OAAA,GAAU,CAAC,GAAG,WAAA,EAAa,cAAc,CAAA;AAC/C,EAAA,OAAO,KAAA,CAAM,KAAK,IAAI,GAAA,CAAI,OAAO,CAAC,CAAA,CAAE,KAAK,GAAG,CAAA;AAC9C,CAAA;;;AC/BA,IAAM,UAAA,GAAa,gEAAA;AAEZ,SAAS,cAAA,CAAe,SAAS,CAAA,EAAG;AACzC,EAAA,IAAI,MAAA,GAAiB,EAAA;AACrB,EAAA,MAAM,mBAAmB,UAAA,CAAW,MAAA;AACpC,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,MAAA,EAAQ,CAAA,EAAA,EAAK;AAC/B,IAAA,MAAA,IAAU,UAAA,CAAW,OAAO,IAAA,CAAK,KAAA,CAAM,KAAK,MAAA,EAAO,GAAI,gBAAgB,CAAC,CAAA;AAAA,EAC1E;AAEA,EAAA,OAAO,MAAA;AACT;ACNA,IAAM,QAA6B,CAAC;AAAA,EAClC,OAAA,GAAU,SAAA;AAAA,EACV,OAAA;AAAA,EACA,KAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA;AAAA,EACA,gBAAA;AAAA,EACA,GAAG;AACL,CAAA,KAAM;AACJ,EAAA,MAAM,SAAA,GACJ,kKAAA;AACF,EAAA,MAAM,cAAA,GAAiB;AAAA,IACrB,KAAA,EACE,mIAAA;AAAA,IACF,KAAA,EACE,wIAAA;AAAA,IACF,OAAA,EACE,+HAAA;AAAA,IACF,IAAA,EAAM,wJAAA;AAAA,IACN,KAAA,EACE,mKAAA;AAAA,IACF,MAAA,EACE,4HAAA;AAAA,IACF,UAAA,EACE,qJAAA;AAAA,IACF,OAAA,EACE;AAAA,GACJ;AAEA,EAAA,MAAM,MAAA,GAAS,QACX,EAAE,IAAA,EAAM,SAAkB,OAAA,EAAS,KAAA,KACnC,IAAA,GACA,EAAE,MAAM,MAAA,EAAiB,OAAA,EAAS,MAAK,GACvC,OAAA,GACA,EAAE,IAAA,EAAM,SAAA,EAAoB,OAAA,EAAS,OAAA,EAAQ,GAC7C,MAAA;AAEJ,EAAA,MAAM,aAAA,GAAgB;AAAA,IACpB,KAAA,EAAO,wDAAA;AAAA,IACP,IAAA,EAAM,8DAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAEA,EAAA,MAAM,oBAAA,GAAuB;AAAA,IAC3B,KAAA,EAAO,cAAA;AAAA,IACP,IAAA,EAAM,gBAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAEA,EAAA,MAAM,YAAA,GAAe,cAAA,CAAe,OAAO,CAAA,IAAK,cAAA,CAAe,OAAA;AAC/D,EAAA,MAAM,SAAA,GAAY,MAAA,GAAS,aAAA,CAAc,MAAA,CAAO,IAAI,CAAA,GAAI,MAAA;AACxD,EAAA,MAAM,gBAAA,GAAmB,qBAAqB,IAAI,CAAA;AAClD,EAAA,MAAM,cAAA,GAAiB,mBAAmB,OAAA,GAAU,MAAA;AAGpD,EAAA,MAAM,SAAA,GAAY,KAAA,CAAM,IAAA,IAAQ,cAAA,EAAe;AAC/C,EAAA,4BACG,KAAA,EAAA,EAAI,SAAA,EAAW,OAAA,CAAQ,qBAAA,EAAuB,gBAAgB,CAAA,EAC7D,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,4BAAA,EACZ,QAAA,EAAA;AAAA,MAAA,gBAAA,oBACC,GAAA,CAAC,OAAE,SAAA,EAAW,OAAA,CAAQ,wCAAwC,gBAAgB,CAAA,EAAG,eAAW,IAAA,EAAC,CAAA;AAAA,sBAE/F,GAAA;AAAA,QAAC,OAAA;AAAA,QAAA;AAAA,UACE,GAAG,KAAA;AAAA,UACJ,WAAW,OAAA,CAAQ,SAAA,EAAW,YAAA,EAAc,SAAA,EAAW,gBAAgB,SAAS,CAAA;AAAA,UAChF,IAAA,EAAM;AAAA;AAAA;AACR,KAAA,EAIF,CAAA;AAAA,IACC,MAAA,EAAQ,OAAA,oBACP,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,OAAA,CAAQ,SAAA,EAAW,oBAAA,CAAqB,MAAA,CAAO,IAAI,CAAC,CAAA,EAAI,iBAAO,OAAA,EAAQ;AAAA,GAAA,EAE5F,CAAA;AAEJ,CAAA;AAEA,IAAO,aAAA,GAAQ","file":"chunk-PYG5SDNO.js","sourcesContent":["import { iconBaseClasses } from '@lindle/linoardo/globals';\nimport { InputProp } from './types';\n\nexport const resolveIconClassName = (icon?: InputProp['icon']) => {\n if (!icon) {\n return undefined;\n }\n\n if (typeof icon === 'string') {\n const trimmed = icon.trim();\n if (!trimmed) {\n return undefined;\n }\n\n if (trimmed.includes(' ')) {\n return trimmed;\n }\n\n const normalizedName = trimmed.startsWith('mdi-') ? trimmed : `mdi-${trimmed}`;\n return ['mdi', normalizedName].join(' ');\n }\n\n const [library, iconNameRaw] = icon;\n const baseClasses = iconBaseClasses[library] ?? [library];\n const iconName = iconNameRaw.trim();\n if (!iconName) {\n return baseClasses.join(' ');\n }\n const normalizedName = iconName.startsWith('mdi-') ? iconName : `mdi-${iconName}`;\n const classes = [...baseClasses, normalizedName];\n return Array.from(new Set(classes)).join(' ');\n};\n","const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n\nexport function generateString(length = 5) {\n let result: string = '';\n const charactersLength = characters.length;\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n\n return result;\n}\n","import { twMerge } from 'tailwind-merge';\nimport { InputProp, InputVariant } from './types';\nimport { resolveIconClassName } from './states.input';\nimport { generateString } from '../../utils/helpers/randomStr';\nconst Input: React.FC<InputProp> = ({\n variant = 'outline',\n success,\n error,\n warn,\n icon,\n className,\n wrapperClassName,\n ...props\n}) => {\n const classBase =\n 'input-base px-3 py-2 focus-visible:outline-none focus-visible:ring-primary transition-colors duration-200 disabled:opacity-50 disabled:cursor-not-allowed w-full';\n const variantClasses = {\n solid:\n 'rounded border border-gray-400 bg-white shadow-sm focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30',\n sharp:\n 'rounded-none border border-gray-400 bg-white shadow-sm focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30',\n outline:\n 'rounded border border-gray-300 bg-transparent focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/30',\n text: 'rounded-none border-0 border-b border-transparent px-0 bg-transparent focus-visible:border-primary focus-visible:ring-0 focus-visible:ring-transparent',\n ghost:\n 'rounded border border-transparent bg-gray-50 text-gray-900 focus-visible:bg-white focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/15',\n filled:\n 'rounded border border-gray-200 bg-gray-100 focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/25',\n underlined:\n 'rounded-none border-0 border-b border-gray-300 px-0 bg-transparent focus-visible:border-primary focus-visible:ring-0 focus-visible:ring-transparent',\n rounded:\n 'rounded-full px-4 border border-gray-300 bg-white focus-visible:border-primary focus-visible:ring-2 focus-visible:ring-primary/20 shadow-sm'\n } satisfies Record<InputVariant, string>;\n\n const status = error\n ? { tone: 'error' as const, message: error }\n : warn\n ? { tone: 'warn' as const, message: warn }\n : success\n ? { tone: 'success' as const, message: success }\n : undefined;\n\n const statusClasses = {\n error: 'border-red-500 focus:border-red-500 focus:ring-red-400',\n warn: 'border-amber-500 focus:border-amber-500 focus:ring-amber-400',\n success: 'border-emerald-500 focus:border-emerald-500 focus:ring-emerald-400'\n } as const;\n\n const statusMessageClasses = {\n error: 'text-red-600',\n warn: 'text-amber-600',\n success: 'text-emerald-600'\n } as const;\n\n const variantClass = variantClasses[variant] ?? variantClasses.outline;\n const toneClass = status ? statusClasses[status.tone] : undefined;\n const prependIconClass = resolveIconClassName(icon);\n const prependPadding = prependIconClass ? 'pl-10' : undefined;\n\n // TODO: uprav generovani inputName, tohle zpusobuje: A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up.\n const inputName = props.name || generateString();\n return (\n <div className={twMerge('flex flex-col gap-1', wrapperClassName)}>\n <div className='relative flex items-center'>\n {prependIconClass && (\n <i className={twMerge('pointer-events-none absolute left-3 ', prependIconClass)} aria-hidden />\n )}\n <input\n {...props}\n className={twMerge(classBase, variantClass, toneClass, prependPadding, className)}\n name={inputName}\n />\n {/* {appendIconClass && (\n <i className={twMerge('pointer-events-none absolute right-3 text-gray-500', appendIconClass)} aria-hidden />\n )} */}\n </div>\n {status?.message && (\n <span className={twMerge('text-sm', statusMessageClasses[status.tone])}>{status.message}</span>\n )}\n </div>\n );\n};\n\nexport default Input;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/Menu/index.tsx"],"names":[],"mappings":"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","file":"chunk-QGQ66FJD.js","sourcesContent":["import * as React from 'react';\nimport { twMerge } from 'tailwind-merge';\n\nexport type MenuPlacement = 'bottom-start' | 'bottom' | 'bottom-end' | 'top-start' | 'top' | 'top-end';\n\nexport interface MenuProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {\n activator: React.ReactNode;\n children: React.ReactNode;\n placement?: MenuPlacement;\n open?: boolean;\n openOnHover?: boolean;\n openOnFocus?: boolean;\n matchActivatorWidth?: boolean;\n keepMounted?: boolean;\n scrim?: boolean;\n contentClassName?: string;\n contentProps?: React.HTMLAttributes<HTMLDivElement>;\n overlayClassName?: string;\n}\n\nconst placementClasses: Record<MenuPlacement, string> = {\n 'bottom-start': 'left-0 top-full origin-top-left',\n bottom: 'left-1/2 top-full -translate-x-1/2 origin-top',\n 'bottom-end': 'right-0 top-full origin-top-right',\n 'top-start': 'left-0 bottom-full origin-bottom-left',\n top: 'left-1/2 bottom-full -translate-x-1/2 origin-bottom',\n 'top-end': 'right-0 bottom-full origin-bottom-right'\n};\n\nconst offsetClasses: Record<'top' | 'bottom', string> = {\n top: 'mb-2',\n bottom: 'mt-2'\n};\n\nconst menuBaseClasses =\n 'absolute z-50 min-w-[10rem] rounded-xl border border-gray-200/80 bg-white/95 p-2 text-sm text-gray-700 shadow-lg shadow-gray-900/10 ring-1 ring-black/5 backdrop-blur-md transition-all duration-150 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 focus-visible:ring-offset-2';\n\nconst overlayBaseClasses = 'fixed inset-0 z-40 bg-gray-900/30 backdrop-blur-[1px]';\n\nconst Menu = React.forwardRef<HTMLDivElement, MenuProps>((props, ref) => {\n const {\n activator,\n children,\n placement = 'bottom-start',\n open,\n openOnHover = true,\n openOnFocus = true,\n matchActivatorWidth = false,\n keepMounted = false,\n scrim = false,\n contentClassName,\n contentProps,\n overlayClassName,\n className,\n ...rest\n } = props;\n\n const { onMouseEnter, onMouseLeave, onFocus, onBlur, ...restProps } = rest;\n\n const hasContent = children !== undefined && children !== null;\n const isControlled = typeof open === 'boolean';\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(false);\n const closeTimer = React.useRef<number | null>(null);\n const visible = isControlled ? Boolean(open) : uncontrolledOpen;\n const shouldRenderContent = hasContent && (keepMounted || visible || (!isControlled && (openOnHover || openOnFocus)));\n const verticalPlacement = placement.startsWith('top') ? 'top' : 'bottom';\n\n const clearCloseTimer = () => {\n if (closeTimer.current !== null) {\n window.clearTimeout(closeTimer.current);\n closeTimer.current = null;\n }\n };\n\n const openMenu = () => {\n clearCloseTimer();\n if (!isControlled) {\n setUncontrolledOpen(true);\n }\n };\n\n const scheduleClose = () => {\n clearCloseTimer();\n if (!isControlled) {\n closeTimer.current = window.setTimeout(() => {\n setUncontrolledOpen(false);\n closeTimer.current = null;\n }, 120);\n }\n };\n\n React.useEffect(() => {\n return () => clearCloseTimer();\n }, []);\n\n const visibilityClasses = visible ? 'pointer-events-auto opacity-100 scale-100' : 'pointer-events-none opacity-0 scale-95';\n\n const {\n className: contentExtraClassName,\n style: contentStyle,\n role: contentRole,\n tabIndex: contentTabIndex,\n ...restContentProps\n } = contentProps ?? {};\n\n const overlayNode = scrim && visible ? <div className={twMerge(overlayBaseClasses, overlayClassName)} aria-hidden /> : null;\n\n return (\n <>\n {overlayNode}\n <div\n {...restProps}\n ref={ref}\n className={twMerge('relative inline-flex min-w-0 group/menu', className)}\n data-open={visible || undefined}\n onMouseEnter={event => {\n if (openOnHover) {\n openMenu();\n }\n onMouseEnter?.(event);\n }}\n onMouseLeave={event => {\n if (openOnHover) {\n scheduleClose();\n }\n onMouseLeave?.(event);\n }}\n onFocus={event => {\n if (openOnFocus) {\n openMenu();\n }\n onFocus?.(event);\n }}\n onBlur={event => {\n if (openOnFocus) {\n scheduleClose();\n }\n onBlur?.(event);\n }}\n >\n <div className='inline-flex w-full min-w-0'>{activator}</div>\n {shouldRenderContent ? (\n <div\n {...restContentProps}\n className={twMerge(\n menuBaseClasses,\n placementClasses[placement],\n offsetClasses[verticalPlacement],\n matchActivatorWidth ? 'min-w-full' : undefined,\n visibilityClasses,\n contentClassName,\n contentExtraClassName\n )}\n data-state={visible ? 'open' : 'closed'}\n role={contentRole ?? 'menu'}\n tabIndex={contentTabIndex ?? -1}\n style={contentStyle}\n onMouseEnter={event => {\n if (openOnHover) {\n openMenu();\n }\n restContentProps?.onMouseEnter?.(event);\n }}\n onMouseLeave={event => {\n if (openOnHover) {\n scheduleClose();\n }\n restContentProps?.onMouseLeave?.(event);\n }}\n >\n {children}\n </div>\n ) : null}\n </div>\n </>\n );\n});\n\nMenu.displayName = 'Menu';\n\nexport default Menu;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/Dialog/index.tsx"],"names":[],"mappings":"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","file":"chunk-U6NAIIDI.js","sourcesContent":["import * as React from 'react';\nimport { twMerge } from 'tailwind-merge';\n\nconst containerBaseClasses =\n 'fixed inset-0 z-[70] flex items-center justify-center p-4 sm:p-8 data-[state=closed]:pointer-events-none';\nconst overlayBaseClasses =\n 'absolute inset-0 bg-gray-900/55 backdrop-blur-[2px] transition-opacity duration-200 data-[state=closed]:opacity-0 data-[state=open]:opacity-100';\nconst panelWrapperClasses =\n 'relative z-10 flex w-full max-h-[95vh] justify-center transition-transform transition-opacity duration-200 data-[state=closed]:translate-y-4 data-[state=closed]:opacity-0 data-[state=open]:translate-y-0 data-[state=open]:opacity-100';\nconst panelBaseClasses =\n 'pointer-events-auto w-full max-h-[90vh] overflow-auto rounded-2xl bg-white p-6 text-gray-900 shadow-2xl shadow-black/20 ring-1 ring-black/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40';\n\nconst resolveSizeValue = (value?: string | number) => {\n if (value === undefined) {\n return undefined;\n }\n return typeof value === 'number' ? `${value}px` : value;\n};\n\nexport interface DialogProps extends React.HTMLAttributes<HTMLDivElement> {\n activator?: React.ReactNode;\n open?: boolean;\n keepMounted?: boolean;\n scrim?: boolean;\n fullscreen?: boolean;\n maxWidth?: string | number;\n width?: string | number;\n containerClassName?: string;\n overlayClassName?: string;\n overlayProps?: React.HTMLAttributes<HTMLDivElement>;\n}\n\nconst Dialog = React.forwardRef<HTMLDivElement, DialogProps>((props, forwardedRef) => {\n const {\n activator,\n children,\n open = false,\n keepMounted = false,\n scrim = true,\n fullscreen = false,\n maxWidth = '32rem',\n width,\n containerClassName,\n overlayClassName,\n overlayProps,\n className,\n style,\n role: roleProp = 'dialog',\n tabIndex = -1,\n id,\n ['aria-modal']: ariaModalProp,\n ...rest\n } = props;\n\n const state = open ? 'open' : 'closed';\n const shouldRenderDialog = keepMounted || open;\n\n const resolvedStyle: React.CSSProperties = { ...style };\n if (fullscreen) {\n if (resolvedStyle.maxWidth === undefined) {\n resolvedStyle.maxWidth = 'none';\n }\n if (resolvedStyle.width === undefined) {\n resolvedStyle.width = '100%';\n }\n if (resolvedStyle.height === undefined) {\n resolvedStyle.height = '100%';\n }\n if (resolvedStyle.maxHeight === undefined) {\n resolvedStyle.maxHeight = '100%';\n }\n } else {\n if (resolvedStyle.maxWidth === undefined) {\n resolvedStyle.maxWidth = resolveSizeValue(maxWidth);\n }\n if (width !== undefined && resolvedStyle.width === undefined) {\n resolvedStyle.width = resolveSizeValue(width);\n }\n }\n\n const ariaModal = ariaModalProp ?? (roleProp === 'dialog' || roleProp === 'alertdialog' ? true : undefined);\n\n const { className: overlayExtraClassName, ...restOverlayProps } = overlayProps ?? {};\n\n const overlayNode =\n shouldRenderDialog && scrim ? (\n <div\n {...restOverlayProps}\n className={twMerge(overlayBaseClasses, overlayClassName, overlayExtraClassName)}\n data-state={state}\n aria-hidden\n />\n ) : null;\n\n return (\n <>\n {activator ? <div className='inline-flex'>{activator}</div> : null}\n {shouldRenderDialog ? (\n <div className={twMerge(containerBaseClasses, containerClassName)} data-state={state} aria-hidden={!open}>\n {overlayNode}\n <div className={twMerge(panelWrapperClasses, fullscreen ? 'h-full items-stretch' : 'mx-auto')} data-state={state}>\n <div\n {...rest}\n ref={forwardedRef}\n id={id}\n role={roleProp}\n tabIndex={tabIndex}\n aria-modal={ariaModal}\n className={twMerge(panelBaseClasses, fullscreen ? 'h-full w-full max-w-none rounded-none' : undefined, className)}\n style={resolvedStyle}\n data-state={state}\n >\n {children}\n </div>\n </div>\n </div>\n ) : null}\n </>\n );\n});\n\nDialog.displayName = 'Dialog';\n\nexport default Dialog;\n"]}
|
package/dist/chunk-V4BVJOSC.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { forwardRef } from 'react';
|
|
2
|
-
import { twMerge } from 'tailwind-merge';
|
|
3
|
-
import { jsx } from 'react/jsx-runtime';
|
|
4
|
-
|
|
5
|
-
// src/Containment/Card/index.tsx
|
|
6
|
-
var paddingClasses = {
|
|
7
|
-
none: "p-0",
|
|
8
|
-
sm: "p-3",
|
|
9
|
-
md: "p-4",
|
|
10
|
-
lg: "p-6"
|
|
11
|
-
};
|
|
12
|
-
var cardBase = "card-base relative w-full overflow-hidden bg-white text-gray-900 transition-colors";
|
|
13
|
-
var variantClasses = {
|
|
14
|
-
solid: "rounded-2xl border border-gray-200 bg-white shadow-lg shadow-gray-200/55",
|
|
15
|
-
outline: "rounded-2xl border border-gray-300 bg-white shadow-none",
|
|
16
|
-
text: "rounded-2xl border border-transparent bg-transparent shadow-none",
|
|
17
|
-
ghost: "rounded-2xl border border-transparent bg-gray-50 shadow-none",
|
|
18
|
-
filled: "rounded-2xl border border-gray-200 bg-gray-50 shadow-sm",
|
|
19
|
-
underlined: "rounded-2xl border border-transparent border-b border-b-gray-200 shadow-none",
|
|
20
|
-
rounded: "rounded-3xl border border-gray-200 bg-white shadow-md",
|
|
21
|
-
sharp: "rounded-none border border-gray-200 bg-white shadow-md"
|
|
22
|
-
};
|
|
23
|
-
var CardRoot = forwardRef(function Card({ className, children, variant = "solid", padding = "md", interactive = false, ...rest }, ref) {
|
|
24
|
-
const variantClass = variantClasses[variant] ?? variantClasses.solid;
|
|
25
|
-
const paddingClass = paddingClasses[padding] ?? paddingClasses.md;
|
|
26
|
-
const interactiveClass = interactive ? "transition-all duration-200 hover:-translate-y-0.5 hover:shadow-xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 focus-visible:ring-offset-2" : void 0;
|
|
27
|
-
const tabIndexValue = interactive && rest.tabIndex === void 0 ? 0 : rest.tabIndex;
|
|
28
|
-
return /* @__PURE__ */ jsx(
|
|
29
|
-
"div",
|
|
30
|
-
{
|
|
31
|
-
...rest,
|
|
32
|
-
ref,
|
|
33
|
-
tabIndex: tabIndexValue,
|
|
34
|
-
className: twMerge(cardBase, variantClass, paddingClass, interactiveClass, className),
|
|
35
|
-
children
|
|
36
|
-
}
|
|
37
|
-
);
|
|
38
|
-
});
|
|
39
|
-
var CardHeader = ({ className, ...rest }) => /* @__PURE__ */ jsx(
|
|
40
|
-
"div",
|
|
41
|
-
{
|
|
42
|
-
...rest,
|
|
43
|
-
className: twMerge("card-header mb-2 flex flex-col gap-1 border-b border-gray-100 pb-3", className)
|
|
44
|
-
}
|
|
45
|
-
);
|
|
46
|
-
var CardBody = ({ className, ...rest }) => /* @__PURE__ */ jsx("div", { ...rest, className: twMerge("card-body flex flex-col gap-3", className) });
|
|
47
|
-
var CardFooter = ({ className, ...rest }) => /* @__PURE__ */ jsx(
|
|
48
|
-
"div",
|
|
49
|
-
{
|
|
50
|
-
...rest,
|
|
51
|
-
className: twMerge("card-footer mt-3 flex flex-wrap items-center gap-3 border-t border-gray-100 pt-3", className)
|
|
52
|
-
}
|
|
53
|
-
);
|
|
54
|
-
var CardTitle = ({ className, ...rest }) => /* @__PURE__ */ jsx("h3", { ...rest, className: twMerge("card-title text-lg font-semibold text-gray-900", className) });
|
|
55
|
-
var CardSubtitle = ({ className, ...rest }) => /* @__PURE__ */ jsx("p", { ...rest, className: twMerge("card-subtitle text-sm font-medium text-gray-600", className) });
|
|
56
|
-
var CardText = ({ className, ...rest }) => /* @__PURE__ */ jsx("p", { ...rest, className: twMerge("card-text text-sm text-gray-700", className) });
|
|
57
|
-
var CardMedia = ({ className, rounded = false, ...rest }) => /* @__PURE__ */ jsx(
|
|
58
|
-
"img",
|
|
59
|
-
{
|
|
60
|
-
...rest,
|
|
61
|
-
className: twMerge(
|
|
62
|
-
"card-media w-full object-cover",
|
|
63
|
-
rounded ? "rounded-xl" : "rounded-none",
|
|
64
|
-
rest.height || rest.style ? "block" : "block max-h-60",
|
|
65
|
-
className
|
|
66
|
-
),
|
|
67
|
-
loading: rest.loading ?? "lazy"
|
|
68
|
-
}
|
|
69
|
-
);
|
|
70
|
-
var CardActions = ({ className, ...rest }) => /* @__PURE__ */ jsx("div", { ...rest, className: twMerge("card-actions flex flex-wrap gap-2", className) });
|
|
71
|
-
var Card2 = Object.assign(CardRoot, {
|
|
72
|
-
Header: CardHeader,
|
|
73
|
-
Body: CardBody,
|
|
74
|
-
Footer: CardFooter,
|
|
75
|
-
Title: CardTitle,
|
|
76
|
-
Subtitle: CardSubtitle,
|
|
77
|
-
Text: CardText,
|
|
78
|
-
Media: CardMedia,
|
|
79
|
-
Actions: CardActions
|
|
80
|
-
});
|
|
81
|
-
var Card_default = Card2;
|
|
82
|
-
|
|
83
|
-
export { Card_default };
|
|
84
|
-
//# sourceMappingURL=chunk-V4BVJOSC.js.map
|
|
85
|
-
//# sourceMappingURL=chunk-V4BVJOSC.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/Card/index.tsx"],"names":["Card"],"mappings":"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","file":"chunk-V4BVJOSC.js","sourcesContent":["import { forwardRef } from 'react';\nimport type { GlobalVariant } from '@lindle/linoardo/global.types';\nimport { twMerge } from 'tailwind-merge';\nimport type { CardMediaProps, CardProps, CardSectionProps, CardTextProps } from './types.card';\n\nconst paddingClasses: Record<Exclude<CardProps['padding'], undefined>, string> = {\n none: 'p-0',\n sm: 'p-3',\n md: 'p-4',\n lg: 'p-6'\n};\n\nconst cardBase = 'card-base relative w-full overflow-hidden bg-white text-gray-900 transition-colors';\n\nconst variantClasses: Record<GlobalVariant, string> = {\n solid: 'rounded-2xl border border-gray-200 bg-white shadow-lg shadow-gray-200/55',\n outline: 'rounded-2xl border border-gray-300 bg-white shadow-none',\n text: 'rounded-2xl border border-transparent bg-transparent shadow-none',\n ghost: 'rounded-2xl border border-transparent bg-gray-50 shadow-none',\n filled: 'rounded-2xl border border-gray-200 bg-gray-50 shadow-sm',\n underlined: 'rounded-2xl border border-transparent border-b border-b-gray-200 shadow-none',\n rounded: 'rounded-3xl border border-gray-200 bg-white shadow-md',\n sharp: 'rounded-none border border-gray-200 bg-white shadow-md'\n};\n\nconst CardRoot = forwardRef<HTMLDivElement, CardProps>(function Card(\n { className, children, variant = 'solid', padding = 'md', interactive = false, ...rest },\n ref\n) {\n const variantClass = variantClasses[variant as GlobalVariant] ?? variantClasses.solid;\n const paddingClass = paddingClasses[padding] ?? paddingClasses.md;\n const interactiveClass = interactive\n ? 'transition-all duration-200 hover:-translate-y-0.5 hover:shadow-xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 focus-visible:ring-offset-2'\n : undefined;\n const tabIndexValue = interactive && rest.tabIndex === undefined ? 0 : rest.tabIndex;\n\n return (\n <div\n {...rest}\n ref={ref}\n tabIndex={tabIndexValue}\n className={twMerge(cardBase, variantClass, paddingClass, interactiveClass, className)}\n >\n {children}\n </div>\n );\n});\n\nconst CardHeader: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <div\n {...rest}\n className={twMerge('card-header mb-2 flex flex-col gap-1 border-b border-gray-100 pb-3', className)}\n />\n);\n\nconst CardBody: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <div {...rest} className={twMerge('card-body flex flex-col gap-3', className)} />\n);\n\nconst CardFooter: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <div\n {...rest}\n className={twMerge('card-footer mt-3 flex flex-wrap items-center gap-3 border-t border-gray-100 pt-3', className)}\n />\n);\n\nconst CardTitle: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <h3 {...rest} className={twMerge('card-title text-lg font-semibold text-gray-900', className)} />\n);\n\nconst CardSubtitle: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <p {...rest} className={twMerge('card-subtitle text-sm font-medium text-gray-600', className)} />\n);\n\nconst CardText: React.FC<CardTextProps> = ({ className, ...rest }) => (\n <p {...rest} className={twMerge('card-text text-sm text-gray-700', className)} />\n);\n\nconst CardMedia: React.FC<CardMediaProps> = ({ className, rounded = false, ...rest }) => (\n <img\n {...rest}\n className={twMerge(\n 'card-media w-full object-cover',\n rounded ? 'rounded-xl' : 'rounded-none',\n rest.height || rest.style ? 'block' : 'block max-h-60',\n className\n )}\n loading={rest.loading ?? 'lazy'}\n />\n);\n\nconst CardActions: React.FC<CardSectionProps> = ({ className, ...rest }) => (\n <div {...rest} className={twMerge('card-actions flex flex-wrap gap-2', className)} />\n);\n\nexport type { CardProps, CardSectionProps, CardMediaProps, CardTextProps };\n\nconst Card = Object.assign(CardRoot, {\n Header: CardHeader,\n Body: CardBody,\n Footer: CardFooter,\n Title: CardTitle,\n Subtitle: CardSubtitle,\n Text: CardText,\n Media: CardMedia,\n Actions: CardActions\n});\n\nexport default Card;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Containment/List/Item/index.tsx"],"names":[],"mappings":"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","file":"chunk-XFPBICJG.js","sourcesContent":["import * as React from 'react';\nimport { twMerge } from 'tailwind-merge';\nimport type { Palette } from '@lindle/linoardo/global.types';\n\nimport type { ListDensity, ListLines } from '../types.list';\n\nconst listItemBaseClasses =\n 'relative flex w-full items-center gap-4 bg-transparent text-left text-sm transition-colors duration-150 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 focus-visible:ring-offset-2 focus-visible:ring-offset-white hover:bg-neutral-200';\n\nconst densityClasses: Record<ListDensity, string> = {\n default: 'px-4 py-3 text-base',\n comfortable: 'px-4 py-2.5 text-sm',\n compact: 'px-3 py-2 text-sm'\n};\n\nconst lineClasses: Record<ListLines, string> = {\n one: 'min-h-[3rem]',\n two: 'min-h-[3.75rem]',\n three: 'min-h-[4.5rem]'\n};\n\nconst accentClasses: Record<Palette, { text: string; bg: string; indicator: string }> = {\n primary: { text: 'text-primary', bg: 'bg-primary/10', indicator: 'bg-primary' },\n neutral: { text: 'text-gray-900', bg: 'bg-gray-100', indicator: 'bg-gray-900' },\n info: { text: 'text-sky-600', bg: 'bg-sky-50', indicator: 'bg-sky-500' },\n success: { text: 'text-emerald-600', bg: 'bg-emerald-50', indicator: 'bg-emerald-500' },\n warning: { text: 'text-amber-700', bg: 'bg-amber-50', indicator: 'bg-amber-500' },\n danger: { text: 'text-red-600', bg: 'bg-red-50', indicator: 'bg-red-500' },\n surface: { text: 'text-gray-900', bg: 'bg-gray-100', indicator: 'bg-gray-900' },\n bw: { text: 'text-gray-900', bg: 'bg-gray-100', indicator: 'bg-gray-900' }\n};\n\nexport interface ListItemProps extends Omit<React.HTMLAttributes<HTMLElement>, 'title'> {\n component?: React.ElementType;\n href?: string;\n target?: string;\n rel?: string;\n type?: 'button' | 'submit' | 'reset';\n title?: React.ReactNode;\n subtitle?: React.ReactNode;\n overline?: React.ReactNode;\n prepend?: React.ReactNode;\n append?: React.ReactNode;\n active?: boolean;\n disabled?: boolean;\n inset?: boolean;\n density?: ListDensity;\n lines?: ListLines;\n nav?: boolean;\n divided?: boolean;\n color?: Palette;\n sharp?: boolean;\n}\n\nconst ListItem = React.forwardRef<HTMLElement, ListItemProps>((props, ref) => {\n const {\n component,\n href,\n target,\n rel,\n type,\n title,\n subtitle,\n overline,\n prepend,\n append,\n active = false,\n disabled = false,\n inset = false,\n density: densityOverride,\n lines: linesOverride,\n nav: navOverride,\n divided: dividedOverride,\n color: colorOverride,\n sharp: sharpOverride,\n className,\n children,\n tabIndex,\n role,\n ...rest\n } = props;\n\n const density = densityOverride ?? 'default';\n const lines = linesOverride ?? 'one';\n const nav = navOverride ?? false;\n const divided = dividedOverride ?? false;\n const color = colorOverride ?? 'primary';\n const sharp = sharpOverride ?? false;\n const accent = accentClasses[color] ?? accentClasses.primary;\n const shapeClass = divided || sharp ? 'rounded-none' : 'rounded-lg';\n\n const Component = component ?? (href ? 'a' : 'div');\n const interactive = typeof rest.onClick === 'function' || Component === 'a' || Component === 'button';\n\n const resolvedRole = role ?? 'listitem';\n const resolvedTabIndex = disabled ? -1 : tabIndex ?? (interactive && Component === 'div' ? 0 : undefined);\n const resolvedRel = Component === 'a' ? rel : undefined;\n const resolvedTarget = Component === 'a' ? target : undefined;\n const resolvedHref = Component === 'a' ? href : undefined;\n const resolvedType = Component === 'button' ? type ?? 'button' : undefined;\n\n const disabledClass = disabled ? 'pointer-events-none opacity-60' : 'cursor-pointer';\n const navPaddingClass = nav ? 'pl-5' : undefined;\n const insetClass = inset ? 'pl-12' : undefined;\n const activeClasses = active ? accent.bg : undefined;\n\n return (\n <Component\n {...rest}\n ref={ref}\n role={resolvedRole}\n tabIndex={resolvedTabIndex}\n aria-disabled={disabled || undefined}\n aria-current={active ? 'true' : undefined}\n className={twMerge(\n listItemBaseClasses,\n densityClasses[density],\n lineClasses[lines],\n shapeClass,\n navPaddingClass,\n insetClass,\n disabledClass,\n activeClasses,\n className\n )}\n href={resolvedHref}\n target={resolvedTarget}\n rel={resolvedRel}\n type={resolvedType}\n data-active={active || undefined}\n >\n {nav && (\n <span\n aria-hidden\n className={twMerge(\n 'absolute left-1 top-2 bottom-2 w-0.5 rounded-full bg-transparent transition-colors duration-150',\n active ? accent.indicator : undefined\n )}\n />\n )}\n {prepend && (\n <span className='flex h-10 w-10 shrink-0 items-center justify-center text-base text-gray-500'>{prepend}</span>\n )}\n <span className='flex min-w-0 flex-col gap-0.5 text-left'>\n {overline && (\n <span className='text-[0.65rem] font-semibold uppercase tracking-wide text-gray-500'>{overline}</span>\n )}\n {title && (\n <span className={twMerge('truncate font-medium text-gray-900', active ? accent.text : undefined)}>\n {title}\n </span>\n )}\n {subtitle && <span className='text-sm text-gray-500'>{subtitle}</span>}\n {children}\n </span>\n {append && (\n <span className='ml-auto flex items-center gap-2 whitespace-nowrap text-sm text-gray-500'>{append}</span>\n )}\n </Component>\n );\n});\n\nListItem.displayName = 'ListItem';\n\nexport default ListItem;\nexport type { ListDensity, ListLines } from '../types.list';\n"]}
|