shekel-fe-shared-lib 1.0.7 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +29 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +1168 -550
- package/dist/index.mjs.map +1 -1
- package/dist/types/components/Badge.d.ts +7 -2
- package/dist/types/components/Button.d.ts +9 -2
- package/dist/types/components/Card.d.ts +5 -2
- package/dist/types/components/Checkbox.d.ts +6 -2
- package/dist/types/components/Dropdown.d.ts +7 -1
- package/dist/types/components/Modal.d.ts +8 -0
- package/dist/types/components/Progress.d.ts +6 -1
- package/dist/types/components/SearchInput.d.ts +10 -2
- package/dist/types/components/Select.d.ts +10 -2
- package/dist/types/components/SelectedItemsList.d.ts +10 -1
- package/dist/types/components/StatCard.d.ts +12 -1
- package/dist/types/components/Steps.d.ts +8 -2
- package/dist/types/components/Table.d.ts +10 -2
- package/dist/types/components/TableTop.d.ts +9 -1
- package/package.json +1 -1
- package/dist/shekel-fe-shared-lib.css +0 -1
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
import { ButtonHTMLAttributes, FC, ReactNode } from 'react';
|
|
1
|
+
import { ButtonHTMLAttributes, CSSProperties, FC, ReactNode } from 'react';
|
|
2
2
|
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
3
3
|
variant?: 'primary' | 'outlined' | 'ghost' | 'text';
|
|
4
|
-
size?: 'sm' | 'md' | 'lg';
|
|
4
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
5
5
|
fullWidth?: boolean;
|
|
6
6
|
icon?: ReactNode;
|
|
7
7
|
iconPosition?: 'left' | 'right';
|
|
8
8
|
loading?: boolean;
|
|
9
9
|
hoverColor?: string;
|
|
10
|
+
bgColor?: string;
|
|
11
|
+
textColor?: string;
|
|
12
|
+
borderColor?: string;
|
|
13
|
+
hoverBgColor?: string;
|
|
14
|
+
hoverTextColor?: string;
|
|
15
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
16
|
+
style?: CSSProperties;
|
|
10
17
|
}
|
|
11
18
|
export declare const Button: FC<ButtonProps>;
|
|
12
19
|
export default Button;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { FC, HTMLAttributes } from 'react';
|
|
1
|
+
import { FC, HTMLAttributes, CSSProperties } from 'react';
|
|
2
2
|
export interface CardProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
-
padding?: 'none' | 'sm' | 'md' | 'lg';
|
|
3
|
+
padding?: 'none' | 'sm' | 'md' | 'lg' | 'responsive';
|
|
4
4
|
shadow?: 'none' | 'sm' | 'md' | 'lg';
|
|
5
5
|
hover?: boolean;
|
|
6
6
|
bordered?: boolean;
|
|
7
7
|
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
8
|
+
bgColor?: string;
|
|
9
|
+
borderColor?: string;
|
|
10
|
+
style?: CSSProperties;
|
|
8
11
|
}
|
|
9
12
|
export declare const Card: FC<CardProps>;
|
|
10
13
|
export default Card;
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import { FC, CSSProperties } from 'react';
|
|
2
2
|
export interface CheckboxProps {
|
|
3
3
|
checked?: boolean;
|
|
4
4
|
defaultChecked?: boolean;
|
|
5
5
|
onChange?: (checked: boolean) => void;
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
indeterminate?: boolean;
|
|
8
|
-
size?: 'sm' | 'md' | 'lg';
|
|
8
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
9
9
|
variant?: 'filled' | 'outline';
|
|
10
10
|
className?: string;
|
|
11
11
|
id?: string;
|
|
12
12
|
name?: string;
|
|
13
13
|
value?: string;
|
|
14
|
+
checkedColor?: string;
|
|
15
|
+
uncheckedColor?: string;
|
|
16
|
+
checkedBorderColor?: string;
|
|
17
|
+
style?: CSSProperties;
|
|
14
18
|
}
|
|
15
19
|
export declare const Checkbox: FC<CheckboxProps>;
|
|
16
20
|
export default Checkbox;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, ReactNode } from 'react';
|
|
1
|
+
import { FC, ReactNode, CSSProperties } from 'react';
|
|
2
2
|
export interface DropdownMenuItem {
|
|
3
3
|
key: string;
|
|
4
4
|
label: ReactNode;
|
|
@@ -15,6 +15,12 @@ export interface DropdownProps {
|
|
|
15
15
|
className?: string;
|
|
16
16
|
overlayClassName?: string;
|
|
17
17
|
disabled?: boolean;
|
|
18
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
19
|
+
menuBgColor?: string;
|
|
20
|
+
menuItemHoverColor?: string;
|
|
21
|
+
dangerColor?: string;
|
|
22
|
+
borderColor?: string;
|
|
23
|
+
style?: CSSProperties;
|
|
18
24
|
}
|
|
19
25
|
export declare const Dropdown: FC<DropdownProps>;
|
|
20
26
|
export default Dropdown;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FC, ReactNode } from 'react';
|
|
2
|
+
type ModalSize = 'sm' | 'md' | 'lg' | 'xl' | 'full' | 'responsive';
|
|
2
3
|
export interface ModalProps {
|
|
3
4
|
open: boolean;
|
|
4
5
|
onClose: () => void;
|
|
@@ -6,10 +7,17 @@ export interface ModalProps {
|
|
|
6
7
|
children: ReactNode;
|
|
7
8
|
footer?: ReactNode;
|
|
8
9
|
width?: string | number;
|
|
10
|
+
size?: ModalSize;
|
|
9
11
|
closable?: boolean;
|
|
10
12
|
maskClosable?: boolean;
|
|
11
13
|
centered?: boolean;
|
|
12
14
|
className?: string;
|
|
15
|
+
bgColor?: string;
|
|
16
|
+
headerBgColor?: string;
|
|
17
|
+
overlayColor?: string;
|
|
18
|
+
bodyClassName?: string;
|
|
19
|
+
headerClassName?: string;
|
|
20
|
+
maxHeight?: string | number;
|
|
13
21
|
}
|
|
14
22
|
export declare const Modal: FC<ModalProps>;
|
|
15
23
|
export default Modal;
|
|
@@ -5,9 +5,14 @@ export interface ProgressProps {
|
|
|
5
5
|
showInfo?: boolean;
|
|
6
6
|
strokeColor?: string;
|
|
7
7
|
strokeWidth?: number;
|
|
8
|
-
size?: 'sm' | 'md' | 'lg';
|
|
8
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
9
9
|
className?: string;
|
|
10
10
|
format?: (percent: number) => ReactNode;
|
|
11
|
+
bgColor?: string;
|
|
12
|
+
successColor?: string;
|
|
13
|
+
exceptionColor?: string;
|
|
14
|
+
trackColor?: string;
|
|
15
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
11
16
|
}
|
|
12
17
|
export declare const Progress: FC<ProgressProps>;
|
|
13
18
|
export default Progress;
|
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import { FC, ReactNode, InputHTMLAttributes } from 'react';
|
|
1
|
+
import { FC, ReactNode, InputHTMLAttributes, CSSProperties } from 'react';
|
|
2
2
|
export interface SearchInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
|
|
3
3
|
icon?: ReactNode;
|
|
4
4
|
iconPosition?: 'left' | 'right';
|
|
5
|
-
size?: 'sm' | 'md' | 'lg';
|
|
5
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
6
6
|
fullWidth?: boolean;
|
|
7
7
|
onIconClick?: () => void;
|
|
8
|
+
bgColor?: string;
|
|
9
|
+
borderColor?: string;
|
|
10
|
+
focusBorderColor?: string;
|
|
11
|
+
iconColor?: string;
|
|
12
|
+
textColor?: string;
|
|
13
|
+
placeholderColor?: string;
|
|
14
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
15
|
+
style?: CSSProperties;
|
|
8
16
|
}
|
|
9
17
|
export declare const SearchInput: FC<SearchInputProps>;
|
|
10
18
|
export default SearchInput;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import { FC, CSSProperties } from 'react';
|
|
2
2
|
export interface SelectOption {
|
|
3
3
|
value: string | number;
|
|
4
4
|
label: string;
|
|
@@ -11,12 +11,20 @@ export interface SelectProps {
|
|
|
11
11
|
placeholder?: string;
|
|
12
12
|
onChange?: (value: string | number) => void;
|
|
13
13
|
disabled?: boolean;
|
|
14
|
-
size?: 'sm' | 'md' | 'lg';
|
|
14
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
15
15
|
fullWidth?: boolean;
|
|
16
16
|
className?: string;
|
|
17
17
|
allowClear?: boolean;
|
|
18
18
|
showSearch?: boolean;
|
|
19
19
|
searchPlaceholder?: string;
|
|
20
|
+
bgColor?: string;
|
|
21
|
+
borderColor?: string;
|
|
22
|
+
focusBorderColor?: string;
|
|
23
|
+
selectedBgColor?: string;
|
|
24
|
+
selectedTextColor?: string;
|
|
25
|
+
hoverBgColor?: string;
|
|
26
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
27
|
+
style?: CSSProperties;
|
|
20
28
|
}
|
|
21
29
|
export declare const Select: FC<SelectProps>;
|
|
22
30
|
export default Select;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import { FC, CSSProperties } from 'react';
|
|
2
2
|
export interface SelectedItem {
|
|
3
3
|
id: string | number;
|
|
4
4
|
label: string;
|
|
@@ -11,6 +11,15 @@ export interface SelectedItemsListProps {
|
|
|
11
11
|
className?: string;
|
|
12
12
|
itemClassName?: string;
|
|
13
13
|
maxHeight?: string;
|
|
14
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
15
|
+
bgColor?: string;
|
|
16
|
+
hoverBgColor?: string;
|
|
17
|
+
textColor?: string;
|
|
18
|
+
sublabelColor?: string;
|
|
19
|
+
removeButtonColor?: string;
|
|
20
|
+
removeButtonHoverColor?: string;
|
|
21
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
22
|
+
style?: CSSProperties;
|
|
14
23
|
}
|
|
15
24
|
export declare const SelectedItemsList: FC<SelectedItemsListProps>;
|
|
16
25
|
export default SelectedItemsList;
|
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import { FC, CSSProperties } from 'react';
|
|
2
2
|
export interface StatCardProps {
|
|
3
3
|
label: string;
|
|
4
4
|
value: string | number;
|
|
5
5
|
selected?: boolean;
|
|
6
6
|
onClick?: () => void;
|
|
7
7
|
className?: string;
|
|
8
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
9
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
10
|
+
bgColor?: string;
|
|
11
|
+
borderColor?: string;
|
|
12
|
+
labelColor?: string;
|
|
13
|
+
valueColor?: string;
|
|
14
|
+
selectedBgColor?: string;
|
|
15
|
+
selectedBorderColor?: string;
|
|
16
|
+
selectedLabelColor?: string;
|
|
17
|
+
selectedValueColor?: string;
|
|
18
|
+
style?: CSSProperties;
|
|
8
19
|
}
|
|
9
20
|
export declare const StatCard: FC<StatCardProps>;
|
|
10
21
|
export default StatCard;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, ReactNode } from 'react';
|
|
1
|
+
import { FC, ReactNode, CSSProperties } from 'react';
|
|
2
2
|
export interface StepItem {
|
|
3
3
|
title: string;
|
|
4
4
|
description?: string;
|
|
@@ -9,9 +9,15 @@ export interface StepsProps {
|
|
|
9
9
|
items: StepItem[];
|
|
10
10
|
current?: number;
|
|
11
11
|
direction?: 'horizontal' | 'vertical';
|
|
12
|
-
size?: 'sm' | 'md' | 'lg';
|
|
12
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
13
13
|
variant?: 'default' | 'outline';
|
|
14
14
|
className?: string;
|
|
15
|
+
style?: CSSProperties;
|
|
16
|
+
finishColor?: string;
|
|
17
|
+
processColor?: string;
|
|
18
|
+
waitColor?: string;
|
|
19
|
+
errorColor?: string;
|
|
20
|
+
lineColor?: string;
|
|
15
21
|
}
|
|
16
22
|
export declare const Steps: FC<StepsProps>;
|
|
17
23
|
export default Steps;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ReactNode, HTMLAttributes } from 'react';
|
|
1
|
+
import { ReactNode, HTMLAttributes, CSSProperties } from 'react';
|
|
2
2
|
export interface ColumnDef<T = any> {
|
|
3
3
|
key: string;
|
|
4
4
|
title: string;
|
|
@@ -18,6 +18,14 @@ export interface TableProps<T = any> {
|
|
|
18
18
|
className?: string;
|
|
19
19
|
bordered?: boolean;
|
|
20
20
|
striped?: boolean;
|
|
21
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
22
|
+
headerBgColor?: string;
|
|
23
|
+
headerTextColor?: string;
|
|
24
|
+
rowHoverColor?: string;
|
|
25
|
+
borderColor?: string;
|
|
26
|
+
stripedRowColor?: string;
|
|
27
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
28
|
+
style?: CSSProperties;
|
|
21
29
|
}
|
|
22
30
|
export interface PaginationConfig {
|
|
23
31
|
current?: number;
|
|
@@ -29,5 +37,5 @@ export interface PaginationConfig {
|
|
|
29
37
|
showTotal?: boolean;
|
|
30
38
|
size?: 'sm' | 'md' | 'lg';
|
|
31
39
|
}
|
|
32
|
-
export declare const Table: <T extends Record<string, any>>({ columns, dataSource, rowKey, pagination, loading, onRow, className, bordered, striped, }: TableProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
export declare const Table: <T extends Record<string, any>>({ columns, dataSource, rowKey, pagination, loading, onRow, className, bordered, striped, size, headerBgColor, headerTextColor, rowHoverColor, borderColor, stripedRowColor, rounded, style, }: TableProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
33
41
|
export default Table;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FC, ReactNode } from 'react';
|
|
1
|
+
import { FC, ReactNode, CSSProperties } from 'react';
|
|
2
2
|
export interface TableTopProps {
|
|
3
3
|
title?: string;
|
|
4
4
|
description?: string;
|
|
@@ -7,6 +7,14 @@ export interface TableTopProps {
|
|
|
7
7
|
actions?: ReactNode;
|
|
8
8
|
filters?: ReactNode;
|
|
9
9
|
className?: string;
|
|
10
|
+
size?: 'sm' | 'md' | 'lg' | 'responsive';
|
|
11
|
+
titleColor?: string;
|
|
12
|
+
descriptionColor?: string;
|
|
13
|
+
searchBgColor?: string;
|
|
14
|
+
searchBorderColor?: string;
|
|
15
|
+
searchFocusBorderColor?: string;
|
|
16
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
17
|
+
style?: CSSProperties;
|
|
10
18
|
}
|
|
11
19
|
export declare const TableTop: FC<TableTopProps>;
|
|
12
20
|
export default TableTop;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial}}}.pointer-events-none{pointer-events:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-full{top:100%}.bottom-full{bottom:100%}.z-10{z-index:10}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.max-h-\[70vh\]{max-height:70vh}.max-h-\[300px\]{max-height:300px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-full{width:100%}.min-w-\[160px\]{min-width:160px}.min-w-\[200px\]{min-width:200px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-\[1\.02\]{scale:1.02}.rotate-180{rotate:180deg}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.rounded-none{border-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#181918\]{border-color:#181918}.border-\[\#EC615B\]{border-color:#ec615b}.border-\[\#EEEEEE\]{border-color:#eee}.bg-\[\#EC615B\]{background-color:#ec615b}.bg-\[\#F4F4F4\]{background-color:#f4f4f4}.bg-\[\#F5F6F7\]{background-color:#f5f6f7}.bg-\[\#FCEAE9\]{background-color:#fceae9}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-\[\#EC615B\]\/5{--tw-gradient-via:oklab(66.7901% .156748 .074311/.05);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-\[\#181918\]{color:#181918}.text-\[\#333333\]{color:#333}.text-\[\#EC615B\]{color:#ec615b}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-\[\#EC615B\]{--tw-ring-color:#ec615b}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-\[0\.98\]:hover{scale:.98}.hover\:border-\[\#D4554F\]:hover{border-color:#d4554f}.hover\:bg-\[\#D4554F\]:hover{background-color:#d4554f}.hover\:bg-\[\#EBEBEB\]:hover{background-color:#ebebeb}.hover\:text-\[\#EC615B\]:hover{color:#ec615b}}.focus\:z-20:focus{z-index:20}.focus\:border-\[\#EC615B\]:focus{border-color:#ec615b}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[\#EC615B\]:focus{--tw-ring-color:#ec615b}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.active\:scale-\[0\.96\]:active{scale:.96}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}@media(hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}@layer components{.stat-card{animation:.3s ease-out fadeInUp}.stat-value{animation:.5s ease-out countUp}.card{animation:.3s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes countUp{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.shimmer{background:linear-gradient(90deg,#f6f7f8,#edeef1,#f6f7f8 40%,#f6f7f8) 0 0/1000px 100%;animation:2s linear infinite shimmer}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.slide-in-right{animation:.3s ease-out slideInRight}.dropdown-slide-down{transform-origin:top;animation:.2s cubic-bezier(.23,1,.32,1) dropdownSlideDown}.dropdown-slide-up{transform-origin:bottom;animation:.2s cubic-bezier(.23,1,.32,1) dropdownSlideUp}@keyframes dropdownSlideDown{0%{opacity:0;transform:scaleY(.8)translateY(-8px)}to{opacity:1;transform:scaleY(1)translateY(0)}}@keyframes dropdownSlideUp{0%{opacity:0;transform:scaleY(.8)translateY(8px)}to{opacity:1;transform:scaleY(1)translateY(0)}}.dropdown-menu-item{position:relative}.dropdown-menu-item:before{content:"";background-color:#3b82f6;width:3px;transition:transform .2s;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.dropdown-menu-item:hover:before{transform:scaleY(1)}.select-trigger{position:relative}.select-dropdown{animation:.2s cubic-bezier(.23,1,.32,1) dropdownSlideDown}.select-option{transition:all .15s;position:relative}.select-option:hover{padding-left:1.25rem}.modal-mask{animation:.3s ease-out fadeIn}.modal-content{animation:.3s cubic-bezier(.23,1,.32,1) modalSlideIn}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes progressActive{0%{background-position:0 0}to{background-position:40px 0}}.progress-active{background-image:linear-gradient(45deg,#fff3 25%,#0000 25%,#0000 50%,#fff3 50%,#fff3 75%,#0000 75%,#0000);background-size:40px 40px;animation:1s linear infinite progressActive}@keyframes slideIn{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in{animation:.5s cubic-bezier(.34,1.56,.64,1) slideIn}@keyframes slideInItem{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-item{animation:.3s cubic-bezier(.23,1,.32,1) both slideInItem}}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}
|