@paciu/ui 0.0.39 → 0.0.41

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.
@@ -1,11 +1,7 @@
1
1
  import { default as React } from 'react';
2
- import { ColorType } from '../../types';
3
- interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'color'> {
4
- color?: ColorType | null;
5
- text?: boolean | null;
6
- icon?: boolean | null;
7
- small?: boolean | null;
8
- loading?: boolean | null;
2
+ import { Modifiers } from '../../types';
3
+ interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'color'>, Modifiers {
9
4
  }
10
- export declare const Button: React.FC<ButtonProps>;
5
+ /** button */
6
+ export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
11
7
  export {};
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+ import { Modifiers } from '../../types';
3
+ interface CardProps extends React.HTMLAttributes<HTMLDivElement>, Pick<Modifiers, 'size'> {
4
+ }
5
+ export declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
6
+ export {};
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ import { Size } from '../../types';
3
+ interface FlexProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ size?: Size | null;
5
+ direction?: 'row' | 'column' | 'row-reverse' | 'column-reverse';
6
+ align?: 'start' | 'center' | 'end' | 'baseline' | 'stretch';
7
+ justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly';
8
+ wrap?: 'nowrap' | 'wrap' | 'wrap-reverse';
9
+ grow?: boolean;
10
+ inline?: boolean;
11
+ }
12
+ export declare const Flex: React.ForwardRefExoticComponent<FlexProps & React.RefAttributes<HTMLDivElement>>;
13
+ export {};
@@ -1,2 +1,4 @@
1
1
  export { Button } from './button/button.tsx';
2
2
  export { Row } from './row/row.tsx';
3
+ export { Flex } from './flex/flex.tsx';
4
+ export { Card } from './card/card.tsx';
@@ -1,7 +1,7 @@
1
1
  import { default as React } from 'react';
2
- import { Size } from '../../types';
3
- interface RowProps extends React.HTMLAttributes<HTMLDivElement> {
4
- size?: Size | null;
2
+ import { Modifiers } from '../../types';
3
+ interface RowProps extends Omit<React.ButtonHTMLAttributes<HTMLDivElement>, 'color'>, Pick<Modifiers, 'size'> {
5
4
  }
6
- export declare const Row: React.FC<RowProps>;
5
+ /** row */
6
+ export declare const Row: React.ForwardRefExoticComponent<RowProps & React.RefAttributes<HTMLDivElement>>;
7
7
  export {};
@@ -1,2 +1,5 @@
1
1
  export { useEscape } from './use-escape';
2
- export { useSkipFirstEffect } from './use-skip-first-effect';
2
+ export { useSkipEffect } from './use-skip-effect';
3
+ export declare const useScroll: () => {
4
+ isScrolled: boolean;
5
+ };
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+ export interface UseSkipEffectOptions {
3
+ count?: number;
4
+ }
5
+ export declare const useSkipEffect: (cb: React.EffectCallback, deps?: React.DependencyList, options?: UseSkipEffectOptions) => void;
@@ -0,0 +1,18 @@
1
+ export type ThemeType = 'light' | 'dark' | 'system';
2
+ export declare enum Theme {
3
+ Light = "light",
4
+ Dark = "dark",
5
+ System = "system"
6
+ }
7
+ export interface ThemeContextType {
8
+ theme: Theme | null;
9
+ nextTheme: Theme | null;
10
+ systemTheme: Theme | null;
11
+ toggleTheme: (theme: Theme) => void;
12
+ }
13
+ export interface ThemeProviderProps extends React.PropsWithChildren {
14
+ initialTheme?: Theme;
15
+ }
16
+ export declare const ThemeContext: import('react').Context<ThemeContextType | undefined>;
17
+ export declare const ThemeProvider: ({ children, initialTheme }: ThemeProviderProps) => import("react/jsx-runtime").JSX.Element;
18
+ export declare const useTheme: () => ThemeContextType;
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- ._button_1cbbb_2{position:relative;overflow:hidden;font:inherit;font-weight:600;border:none;cursor:pointer;background:#333;color:#fff;font-size:16px;border-radius:16px;padding:0 16px;min-height:40px;transition:.2s}._button_1cbbb_2._small_1cbbb_17{min-height:32px;border-radius:12px;font-size:12px;padding:0 12px}._button_1cbbb_2:hover{background:#242424}._button_1cbbb_2._text_1cbbb_26{color:#333;background:#3333330d}._button_1cbbb_2._text_1cbbb_26:hover{background:#3333331a}._button_1cbbb_2:disabled{background:#f0f0f0;color:#a0a0a0;cursor:default;pointer-events:none}._button--error_1cbbb_39{position:relative;overflow:hidden;font:inherit;font-weight:600;border:none;cursor:pointer;background:#ea2027;color:#fff;font-size:16px;border-radius:16px;padding:0 16px;min-height:40px;transition:.2s}._button--error_1cbbb_39._small_1cbbb_17{min-height:32px;border-radius:12px;font-size:12px;padding:0 12px}._button--error_1cbbb_39:hover{background:#db1118}._button--error_1cbbb_39._text_1cbbb_26{color:#ea2027;background:#ea20270d}._button--error_1cbbb_39._text_1cbbb_26:hover{background:#ea20271a}._button--error_1cbbb_39:disabled{background:#f0f0f0;color:#a0a0a0;cursor:default;pointer-events:none}._row_1ojv4_2{padding:12px}
1
+ @keyframes _paciu-ui-blink-animation_y249s_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-button_y249s_14{--height: 32px;--padding: 12px;--border-radius: 12px;--font-size: 16px;--gap: 8px;--border-width: 1px}._paciu-ui-button_y249s_14._size-micro_y249s_23{--height: 20px;--padding: 6px;--border-radius: 6px;--font-size: 10px;--gap: 2px}._paciu-ui-button_y249s_14._size-mini_y249s_31{--height: 24px;--padding: 8px;--border-radius: 8px;--font-size: 12px;--gap: 4px}._paciu-ui-button_y249s_14._size-small_y249s_39{--height: 28px;--padding: 10px;--border-radius: 10px;--font-size: 14px;--gap: 6px}._paciu-ui-button_y249s_14._size-large_y249s_47{--height: 36px;--padding: 14px;--border-radius: 14px;--font-size: 18px;--gap: 10px}._paciu-ui-button_y249s_14._size-huge_y249s_55{--height: 40px;--padding: 16px;--border-radius: 16px;--font-size: 20px;--gap: 12px}._paciu-ui-button_y249s_14._size-enormous_y249s_63{--height: 44px;--padding: 18px;--border-radius: 18px;--font-size: 22px;--gap: 14px}._paciu-ui-button_y249s_14{--base-color: color-mix(in srgb, var(--base-color-900) 80%, transparent);--font-color: color-mix(in srgb, var(--base-color-900) 60%, var(--base-color-100));--border-color: var(--base-color);--solid-background-color: color-mix(in srgb, var(--base-color-900) 10%, var(--base-color-100));--solid-font-color: color-mix(in srgb, var(--base-color-900) 60%, var(--base-color-100));--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139{--base-color: var(--base-color-900);--font-color: var(--base-color-900);--border-color: var(--base-color);--solid-background-color: var(--base-color-900);--solid-font-color: var(--base-color-100);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-opposite_y249s_139:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207{--base-color: var(--accent-color-900);--font-color: var(--accent-color-900);--border-color: var(--base-color);--solid-background-color: var(--accent-color-900);--solid-font-color: var(--light-color);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-accent_y249s_207:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275{--base-color: var(--error-color-900);--font-color: var(--error-color-900);--border-color: var(--base-color);--solid-background-color: var(--error-color-900);--solid-font-color: var(--light-color);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-error_y249s_275:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14:disabled{--base-color: color-mix(in srgb, var(--base-color-900) 40%, transparent);--font-color: color-mix(in srgb, var(--base-color-900) 30%, var(--base-color-100));--border-color: var(--base-color);--solid-background-color: color-mix(in srgb, var(--base-color-900) 5%, var(--base-color-100));--solid-font-color: color-mix(in srgb, var(--base-color-900) 20%, var(--base-color-100));--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14:disabled._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14:disabled._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14:disabled._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14:disabled._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14:disabled:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14:disabled{cursor:default}@keyframes _paciu-ui-blink-animation_kd3dr_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-row_kd3dr_14{position:relative;padding:var(--padding)}._paciu-ui-row_kd3dr_14{--padding: 12px}._paciu-ui-row_kd3dr_14._size-micro_kd3dr_23{--padding: 6px}._paciu-ui-row_kd3dr_14._size-mini_kd3dr_27{--padding: 8px}._paciu-ui-row_kd3dr_14._size-small_kd3dr_31{--padding: 10px}._paciu-ui-row_kd3dr_14._size-large_kd3dr_35{--padding: 14px}._paciu-ui-row_kd3dr_14._size-huge_kd3dr_39{--padding: 16px}._paciu-ui-row_kd3dr_14._size-enormous_kd3dr_43{--padding: 18px}@keyframes _paciu-ui-blink-animation_ssd0s_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._flex_ssd0s_14{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:var(--gap)}._flex_ssd0s_14._inline_ssd0s_22{display:inline-flex}._flex_ssd0s_14._grow_ssd0s_25{flex-grow:1}._flex_ssd0s_14._direction-column_ssd0s_28{flex-direction:column}._flex_ssd0s_14._direction-row-reverse_ssd0s_31{flex-direction:row-reverse}._flex_ssd0s_14._direction-column-reverse_ssd0s_34{flex-direction:column-reverse}._flex_ssd0s_14._align-start_ssd0s_37{align-items:flex-start}._flex_ssd0s_14._align-center_ssd0s_40{align-items:center}._flex_ssd0s_14._align-end_ssd0s_43{align-items:flex-end}._flex_ssd0s_14._align-baseline_ssd0s_46{align-items:baseline}._flex_ssd0s_14._justify-center_ssd0s_49{justify-content:center}._flex_ssd0s_14._justify-end_ssd0s_52{justify-content:flex-end}._flex_ssd0s_14._justify-between_ssd0s_55{justify-content:space-between}._flex_ssd0s_14._justify-around_ssd0s_58{justify-content:space-around}._flex_ssd0s_14._justify-evenly_ssd0s_61{justify-content:space-evenly}._flex_ssd0s_14._wrap-wrap_ssd0s_64{flex-wrap:wrap}._flex_ssd0s_14._wrap-wrap-reverse_ssd0s_67{flex-wrap:wrap-reverse}._flex_ssd0s_14{--gap: 0px}._flex_ssd0s_14._size-micro_ssd0s_75{--gap: 2px}._flex_ssd0s_14._size-mini_ssd0s_79{--gap: 4px}._flex_ssd0s_14._size-small_ssd0s_83{--gap: 8px}._flex_ssd0s_14._size-medium_ssd0s_87{--gap: 12px}._flex_ssd0s_14._size-large_ssd0s_91{--gap: 16px}._flex_ssd0s_14._size-huge_ssd0s_95{--gap: 20px}._flex_ssd0s_14._size-enormous_ssd0s_99{--gap: 24px}@keyframes _paciu-ui-blink-animation_a6huo_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-card_a6huo_14{position:relative;background:var(--base-color);border-radius:var(--border-radius);padding:var(--padding);transition:var(--transition-normal)}._paciu-ui-card_a6huo_14{--padding: 12px;--border-radius: 24px;--base-color: var(--base-color-100)}._paciu-ui-card_a6huo_14._size-micro_a6huo_28{--padding: 6px;--border-radius: 12px}._paciu-ui-card_a6huo_14._size-mini_a6huo_33{--padding: 8px;--border-radius: 16px}._paciu-ui-card_a6huo_14._size-small_a6huo_38{--padding: 10px;--border-radius: 20px}._paciu-ui-card_a6huo_14._size-large_a6huo_43{--padding: 14px;--border-radius: 28px}._paciu-ui-card_a6huo_14._size-huge_a6huo_48{--padding: 16px;--border-radius: 32px}._paciu-ui-card_a6huo_14._size-enormous_a6huo_53{--padding: 18px;--border-radius: 36px}
package/dist/index.es.js CHANGED
@@ -1,62 +1,204 @@
1
- import { jsx as c } from "react/jsx-runtime";
2
- import { useEffect as u, useRef as p } from "react";
3
- import './index.css';const _ = "_button_1cbbb_2", d = "_small_1cbbb_17", y = "_text_1cbbb_26", s = {
4
- button: _,
5
- small: d,
6
- text: y,
7
- "button--error": "_button--error_1cbbb_39"
1
+ import { jsx as d } from "react/jsx-runtime";
2
+ import c, { useState as j, useEffect as y, useRef as P } from "react";
3
+ import './index.css';const n = {
4
+ "paciu-ui-button": "_paciu-ui-button_y249s_14",
5
+ "size-micro": "_size-micro_y249s_23",
6
+ "size-mini": "_size-mini_y249s_31",
7
+ "size-small": "_size-small_y249s_39",
8
+ "size-large": "_size-large_y249s_47",
9
+ "size-huge": "_size-huge_y249s_55",
10
+ "size-enormous": "_size-enormous_y249s_63",
11
+ "modifier-soft": "_modifier-soft_y249s_98",
12
+ "modifier-solid": "_modifier-solid_y249s_101",
13
+ "modifier-outline": "_modifier-outline_y249s_106",
14
+ "modifier-rounded": "_modifier-rounded_y249s_109",
15
+ "modifier-loading": "_modifier-loading_y249s_112",
16
+ "paciu-ui-blink-animation": "_paciu-ui-blink-animation_y249s_1",
17
+ "modifier-square": "_modifier-square_y249s_116",
18
+ "modifier-link": "_modifier-link_y249s_125",
19
+ "color-opposite": "_color-opposite_y249s_139",
20
+ "color-accent": "_color-accent_y249s_207",
21
+ "color-error": "_color-error_y249s_275"
8
22
  };
9
- function i(t) {
10
- var r, o, e = "";
11
- if (typeof t == "string" || typeof t == "number") e += t;
12
- else if (typeof t == "object") if (Array.isArray(t)) {
13
- var n = t.length;
14
- for (r = 0; r < n; r++) t[r] && (o = i(t[r])) && (e && (e += " "), e += o);
15
- } else for (o in t) t[o] && (e && (e += " "), e += o);
23
+ function N(s) {
24
+ var r, i, e = "";
25
+ if (typeof s == "string" || typeof s == "number") e += s;
26
+ else if (typeof s == "object") if (Array.isArray(s)) {
27
+ var o = s.length;
28
+ for (r = 0; r < o; r++) s[r] && (i = N(s[r])) && (e && (e += " "), e += i);
29
+ } else for (i in s) s[i] && (e && (e += " "), e += i);
16
30
  return e;
17
31
  }
18
- function a() {
19
- for (var t, r, o = 0, e = "", n = arguments.length; o < n; o++) (t = arguments[o]) && (r = i(t)) && (e && (e += " "), e += r);
32
+ function m() {
33
+ for (var s, r, i = 0, e = "", o = arguments.length; i < o; i++) (s = arguments[i]) && (r = N(s)) && (e && (e += " "), e += r);
20
34
  return e;
21
35
  }
22
- const E = (t) => {
23
- const { children: r, className: o, color: e, text: n, icon: l, loading: b, small: f, ...m } = t;
24
- return /* @__PURE__ */ c(
36
+ const L = c.forwardRef((s, r) => {
37
+ const {
38
+ children: i,
39
+ className: e,
40
+ color: o,
41
+ square: _,
42
+ loading: a,
43
+ link: l,
44
+ soft: u,
45
+ solid: f,
46
+ outline: z,
47
+ // opaque,
48
+ rounded: p,
49
+ size: g,
50
+ onClick: w,
51
+ ...$
52
+ } = s, [x, k] = j(!1), E = async (R) => {
53
+ if (w) {
54
+ const h = w(R);
55
+ if (h instanceof Promise) {
56
+ k(!0);
57
+ try {
58
+ await h;
59
+ } finally {
60
+ k(!1);
61
+ }
62
+ }
63
+ }
64
+ };
65
+ return /* @__PURE__ */ d(
25
66
  "button",
26
67
  {
27
- className: a(
28
- s.button,
68
+ ref: r,
69
+ className: m(
70
+ n["paciu-ui-button"],
29
71
  {
30
- [s.text]: n,
31
- [s.small]: f,
32
- [s.icon]: l,
33
- [s.loading]: b,
34
- ...e && { [s[`paciu-ui-button--${e}`]]: e }
72
+ // [ styles.opaque ]: opaque,
73
+ [n["modifier-loading"]]: x || a,
74
+ [n["modifier-rounded"]]: p,
75
+ [n["modifier-square"]]: _,
76
+ [n["modifier-link"]]: l,
77
+ [n["modifier-soft"]]: u,
78
+ [n["modifier-outline"]]: z,
79
+ [n["modifier-solid"]]: f,
80
+ ...o && { [n[`color-${o}`]]: o }
35
81
  },
36
- o
82
+ g && n[`size-${g}`],
83
+ e
37
84
  ),
38
- ...m,
39
- children: r
85
+ onClick: E,
86
+ ...$,
87
+ children: i
40
88
  }
41
89
  );
42
- }, g = "_row_1ojv4_2", x = {
43
- row: g
44
- }, h = ({ children: t, className: r, ...o }) => /* @__PURE__ */ c("div", { className: a(x.row, r), ...o, children: t }), j = (t) => {
45
- u(() => {
46
- const r = (o) => {
47
- o.key === "Escape" && (o.preventDefault(), o.stopPropagation(), o.stopImmediatePropagation(), t());
90
+ });
91
+ L.displayName = "Button";
92
+ const v = {
93
+ "paciu-ui-row": "_paciu-ui-row_kd3dr_14",
94
+ "size-micro": "_size-micro_kd3dr_23",
95
+ "size-mini": "_size-mini_kd3dr_27",
96
+ "size-small": "_size-small_kd3dr_31",
97
+ "size-large": "_size-large_kd3dr_35",
98
+ "size-huge": "_size-huge_kd3dr_39",
99
+ "size-enormous": "_size-enormous_kd3dr_43",
100
+ "paciu-ui-blink-animation": "_paciu-ui-blink-animation_kd3dr_1"
101
+ }, C = c.forwardRef((s, r) => {
102
+ const { className: i, size: e, children: o, ..._ } = s;
103
+ return /* @__PURE__ */ d("div", { ref: r, className: m(v["paciu-ui-row"], e && v[`size-${e}`], i), ..._, children: o });
104
+ });
105
+ C.displayName = "Row";
106
+ const S = "_flex_ssd0s_14", q = "_inline_ssd0s_22", I = "_grow_ssd0s_25", t = {
107
+ flex: S,
108
+ inline: q,
109
+ grow: I,
110
+ "direction-column": "_direction-column_ssd0s_28",
111
+ "direction-row-reverse": "_direction-row-reverse_ssd0s_31",
112
+ "direction-column-reverse": "_direction-column-reverse_ssd0s_34",
113
+ "align-start": "_align-start_ssd0s_37",
114
+ "align-center": "_align-center_ssd0s_40",
115
+ "align-end": "_align-end_ssd0s_43",
116
+ "align-baseline": "_align-baseline_ssd0s_46",
117
+ "justify-center": "_justify-center_ssd0s_49",
118
+ "justify-end": "_justify-end_ssd0s_52",
119
+ "justify-between": "_justify-between_ssd0s_55",
120
+ "justify-around": "_justify-around_ssd0s_58",
121
+ "justify-evenly": "_justify-evenly_ssd0s_61",
122
+ "wrap-wrap": "_wrap-wrap_ssd0s_64",
123
+ "wrap-wrap-reverse": "_wrap-wrap-reverse_ssd0s_67",
124
+ "size-micro": "_size-micro_ssd0s_75",
125
+ "size-mini": "_size-mini_ssd0s_79",
126
+ "size-small": "_size-small_ssd0s_83",
127
+ "size-medium": "_size-medium_ssd0s_87",
128
+ "size-large": "_size-large_ssd0s_91",
129
+ "size-huge": "_size-huge_ssd0s_95",
130
+ "size-enormous": "_size-enormous_ssd0s_99",
131
+ "paciu-ui-blink-animation": "_paciu-ui-blink-animation_ssd0s_1"
132
+ }, A = c.forwardRef((s, r) => {
133
+ const { children: i, className: e, direction: o, align: _, justify: a, wrap: l, size: u, inline: f, grow: z, ...p } = s;
134
+ return /* @__PURE__ */ d(
135
+ "div",
136
+ {
137
+ ref: r,
138
+ className: m(
139
+ t.flex,
140
+ {
141
+ [t.inline]: f,
142
+ [t.grow]: z,
143
+ [t[`direction-${o}`]]: o,
144
+ [t[`align-${_}`]]: _,
145
+ [t[`justify-${a}`]]: a,
146
+ [t[`wrap-${l}`]]: l
147
+ },
148
+ u && t[`size-${u}`],
149
+ e
150
+ ),
151
+ ...p,
152
+ children: i
153
+ }
154
+ );
155
+ });
156
+ A.displayName = "Flex";
157
+ const b = {
158
+ "paciu-ui-card": "_paciu-ui-card_a6huo_14",
159
+ "size-micro": "_size-micro_a6huo_28",
160
+ "size-mini": "_size-mini_a6huo_33",
161
+ "size-small": "_size-small_a6huo_38",
162
+ "size-large": "_size-large_a6huo_43",
163
+ "size-huge": "_size-huge_a6huo_48",
164
+ "size-enormous": "_size-enormous_a6huo_53",
165
+ "paciu-ui-blink-animation": "_paciu-ui-blink-animation_a6huo_1"
166
+ }, B = c.forwardRef((s, r) => {
167
+ const { children: i, className: e, size: o, ..._ } = s;
168
+ return /* @__PURE__ */ d("div", { ref: r, className: m(b["paciu-ui-card"], o && b[`size-${o}`], e), ..._, children: i });
169
+ });
170
+ B.displayName = "Card";
171
+ const O = (s) => {
172
+ y(() => {
173
+ const r = (i) => {
174
+ i.key === "Escape" && (i.preventDefault(), i.stopPropagation(), i.stopImmediatePropagation(), s());
48
175
  };
49
176
  return document.addEventListener("keydown", r, !0), () => document.removeEventListener("keydown", r, !0);
50
- }, [t]);
51
- }, k = (t, r) => {
52
- const o = p(!0);
53
- u(() => {
54
- o.current ? o.current = !1 : t();
177
+ }, [s]);
178
+ }, Y = (s, r = [], i) => {
179
+ const e = P(i?.count || 1);
180
+ y(() => {
181
+ if (e.current > 0) {
182
+ e.current--;
183
+ return;
184
+ }
185
+ return s();
55
186
  }, r);
187
+ }, G = () => {
188
+ const [s, r] = j(!1);
189
+ return y(() => {
190
+ const i = () => r(window.scrollY > 0);
191
+ return i(), document.addEventListener("scroll", i), () => {
192
+ document.removeEventListener("scroll", i);
193
+ };
194
+ }, []), { isScrolled: s };
56
195
  };
57
196
  export {
58
- E as Button,
59
- h as Row,
60
- j as useEscape,
61
- k as useSkipFirstEffect
197
+ L as Button,
198
+ B as Card,
199
+ A as Flex,
200
+ C as Row,
201
+ O as useEscape,
202
+ G as useScroll,
203
+ Y as useSkipEffect
62
204
  };
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(n,b){typeof exports=="object"&&typeof module<"u"?b(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],b):(n=typeof globalThis<"u"?globalThis:n||self,b(n["paciu-ui"]={},n["react/jsx-runtime"],n.react))})(this,(function(n,b,c){"use strict";var u=document.createElement("style");u.textContent=`._button_1cbbb_2{position:relative;overflow:hidden;font:inherit;font-weight:600;border:none;cursor:pointer;background:#333;color:#fff;font-size:16px;border-radius:16px;padding:0 16px;min-height:40px;transition:.2s}._button_1cbbb_2._small_1cbbb_17{min-height:32px;border-radius:12px;font-size:12px;padding:0 12px}._button_1cbbb_2:hover{background:#242424}._button_1cbbb_2._text_1cbbb_26{color:#333;background:#3333330d}._button_1cbbb_2._text_1cbbb_26:hover{background:#3333331a}._button_1cbbb_2:disabled{background:#f0f0f0;color:#a0a0a0;cursor:default;pointer-events:none}._button--error_1cbbb_39{position:relative;overflow:hidden;font:inherit;font-weight:600;border:none;cursor:pointer;background:#ea2027;color:#fff;font-size:16px;border-radius:16px;padding:0 16px;min-height:40px;transition:.2s}._button--error_1cbbb_39._small_1cbbb_17{min-height:32px;border-radius:12px;font-size:12px;padding:0 12px}._button--error_1cbbb_39:hover{background:#db1118}._button--error_1cbbb_39._text_1cbbb_26{color:#ea2027;background:#ea20270d}._button--error_1cbbb_39._text_1cbbb_26:hover{background:#ea20271a}._button--error_1cbbb_39:disabled{background:#f0f0f0;color:#a0a0a0;cursor:default;pointer-events:none}._row_1ojv4_2{padding:12px}
2
- /*$vite$:1*/`,document.head.appendChild(u);const i={button:"_button_1cbbb_2",small:"_small_1cbbb_17",text:"_text_1cbbb_26","button--error":"_button--error_1cbbb_39"};function a(t){var o,e,r="";if(typeof t=="string"||typeof t=="number")r+=t;else if(typeof t=="object")if(Array.isArray(t)){var s=t.length;for(o=0;o<s;o++)t[o]&&(e=a(t[o]))&&(r&&(r+=" "),r+=e)}else for(e in t)t[e]&&(r&&(r+=" "),r+=e);return r}function _(){for(var t,o,e=0,r="",s=arguments.length;e<s;e++)(t=arguments[e])&&(o=a(t))&&(r&&(r+=" "),r+=o);return r}const d=t=>{const{children:o,className:e,color:r,text:s,icon:m,loading:g,small:h,...v}=t;return b.jsx("button",{className:_(i.button,{[i.text]:s,[i.small]:h,[i.icon]:m,[i.loading]:g,...r&&{[i[`paciu-ui-button--${r}`]]:r}},e),...v,children:o})},f={row:"_row_1ojv4_2"},l=({children:t,className:o,...e})=>b.jsx("div",{className:_(f.row,o),...e,children:t}),p=t=>{c.useEffect(()=>{const o=e=>{e.key==="Escape"&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),t())};return document.addEventListener("keydown",o,!0),()=>document.removeEventListener("keydown",o,!0)},[t])},x=(t,o)=>{const e=c.useRef(!0);c.useEffect(()=>{e.current?e.current=!1:t()},o)};n.Button=d,n.Row=l,n.useEscape=p,n.useSkipFirstEffect=x,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(a,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react"],t):(a=typeof globalThis<"u"?globalThis:a||self,t(a["paciu-ui"]={},a["react/jsx-runtime"],a.react))})(this,(function(a,t,_){"use strict";var y=document.createElement("style");y.textContent=`@keyframes _paciu-ui-blink-animation_y249s_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-button_y249s_14{--height: 32px;--padding: 12px;--border-radius: 12px;--font-size: 16px;--gap: 8px;--border-width: 1px}._paciu-ui-button_y249s_14._size-micro_y249s_23{--height: 20px;--padding: 6px;--border-radius: 6px;--font-size: 10px;--gap: 2px}._paciu-ui-button_y249s_14._size-mini_y249s_31{--height: 24px;--padding: 8px;--border-radius: 8px;--font-size: 12px;--gap: 4px}._paciu-ui-button_y249s_14._size-small_y249s_39{--height: 28px;--padding: 10px;--border-radius: 10px;--font-size: 14px;--gap: 6px}._paciu-ui-button_y249s_14._size-large_y249s_47{--height: 36px;--padding: 14px;--border-radius: 14px;--font-size: 18px;--gap: 10px}._paciu-ui-button_y249s_14._size-huge_y249s_55{--height: 40px;--padding: 16px;--border-radius: 16px;--font-size: 20px;--gap: 12px}._paciu-ui-button_y249s_14._size-enormous_y249s_63{--height: 44px;--padding: 18px;--border-radius: 18px;--font-size: 22px;--gap: 14px}._paciu-ui-button_y249s_14{--base-color: color-mix(in srgb, var(--base-color-900) 80%, transparent);--font-color: color-mix(in srgb, var(--base-color-900) 60%, var(--base-color-100));--border-color: var(--base-color);--solid-background-color: color-mix(in srgb, var(--base-color-900) 10%, var(--base-color-100));--solid-font-color: color-mix(in srgb, var(--base-color-900) 60%, var(--base-color-100));--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139{--base-color: var(--base-color-900);--font-color: var(--base-color-900);--border-color: var(--base-color);--solid-background-color: var(--base-color-900);--solid-font-color: var(--base-color-100);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-opposite_y249s_139:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-opposite_y249s_139._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207{--base-color: var(--accent-color-900);--font-color: var(--accent-color-900);--border-color: var(--base-color);--solid-background-color: var(--accent-color-900);--solid-font-color: var(--light-color);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-accent_y249s_207:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-accent_y249s_207._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275{--base-color: var(--error-color-900);--font-color: var(--error-color-900);--border-color: var(--base-color);--solid-background-color: var(--error-color-900);--solid-font-color: var(--light-color);--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14._color-error_y249s_275:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14._color-error_y249s_275._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14:disabled{--base-color: color-mix(in srgb, var(--base-color-900) 40%, transparent);--font-color: color-mix(in srgb, var(--base-color-900) 30%, var(--base-color-100));--border-color: var(--base-color);--solid-background-color: color-mix(in srgb, var(--base-color-900) 5%, var(--base-color-100));--solid-font-color: color-mix(in srgb, var(--base-color-900) 20%, var(--base-color-100));--solid-border-color: var(--solid-font-color);background:none;border:var(--border-width) solid transparent;padding:0 var(--padding);min-height:var(--height);height:var(--height);max-height:var(--height);border-radius:var(--border-radius);color:var(--font-color, var(--base-color));font:inherit;font-weight:500;font-size:var(--font-size);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--gap);position:relative;text-decoration:none}._paciu-ui-button_y249s_14:disabled._modifier-soft_y249s_98{background:color-mix(in srgb,var(--base-color) 4%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101{border-color:transparent;background:var(--solid-background-color, var(--base-color));color:var(--solid-font-color, var(--font-color, var(--base-color)))}._paciu-ui-button_y249s_14:disabled._modifier-outline_y249s_106{border-color:color-mix(in srgb,var(--base-color) 20%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-rounded_y249s_109{border-radius:calc(var(--height) / 2)}._paciu-ui-button_y249s_14:disabled._modifier-loading_y249s_112{pointer-events:none;animation:_paciu-ui-blink-animation_y249s_1 2s infinite ease-in-out}._paciu-ui-button_y249s_14:disabled._modifier-square_y249s_116{padding:0;min-width:var(--height);width:var(--height);max-width:var(--height)}._paciu-ui-button_y249s_14:disabled:enabled:hover{background:color-mix(in srgb,var(--base-color) 6%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-link_y249s_125:enabled:hover{background:transparent;color:color-mix(in srgb,var(--font-color, var(--base-color)) 60%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-soft_y249s_98:enabled:hover{background:color-mix(in srgb,var(--base-color) 10%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101:enabled:hover{background:color-mix(in srgb,var(--solid-background-color, var(--base-color)) 80%,transparent)}._paciu-ui-button_y249s_14:disabled._modifier-solid_y249s_101._modifier-link_y249s_125:enabled:hover{color:color-mix(in srgb,var(--solid-font-color, var(--font-color, var(--base-color))) 60%,transparent)}._paciu-ui-button_y249s_14:disabled{cursor:default}@keyframes _paciu-ui-blink-animation_kd3dr_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-row_kd3dr_14{position:relative;padding:var(--padding)}._paciu-ui-row_kd3dr_14{--padding: 12px}._paciu-ui-row_kd3dr_14._size-micro_kd3dr_23{--padding: 6px}._paciu-ui-row_kd3dr_14._size-mini_kd3dr_27{--padding: 8px}._paciu-ui-row_kd3dr_14._size-small_kd3dr_31{--padding: 10px}._paciu-ui-row_kd3dr_14._size-large_kd3dr_35{--padding: 14px}._paciu-ui-row_kd3dr_14._size-huge_kd3dr_39{--padding: 16px}._paciu-ui-row_kd3dr_14._size-enormous_kd3dr_43{--padding: 18px}@keyframes _paciu-ui-blink-animation_ssd0s_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._flex_ssd0s_14{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:var(--gap)}._flex_ssd0s_14._inline_ssd0s_22{display:inline-flex}._flex_ssd0s_14._grow_ssd0s_25{flex-grow:1}._flex_ssd0s_14._direction-column_ssd0s_28{flex-direction:column}._flex_ssd0s_14._direction-row-reverse_ssd0s_31{flex-direction:row-reverse}._flex_ssd0s_14._direction-column-reverse_ssd0s_34{flex-direction:column-reverse}._flex_ssd0s_14._align-start_ssd0s_37{align-items:flex-start}._flex_ssd0s_14._align-center_ssd0s_40{align-items:center}._flex_ssd0s_14._align-end_ssd0s_43{align-items:flex-end}._flex_ssd0s_14._align-baseline_ssd0s_46{align-items:baseline}._flex_ssd0s_14._justify-center_ssd0s_49{justify-content:center}._flex_ssd0s_14._justify-end_ssd0s_52{justify-content:flex-end}._flex_ssd0s_14._justify-between_ssd0s_55{justify-content:space-between}._flex_ssd0s_14._justify-around_ssd0s_58{justify-content:space-around}._flex_ssd0s_14._justify-evenly_ssd0s_61{justify-content:space-evenly}._flex_ssd0s_14._wrap-wrap_ssd0s_64{flex-wrap:wrap}._flex_ssd0s_14._wrap-wrap-reverse_ssd0s_67{flex-wrap:wrap-reverse}._flex_ssd0s_14{--gap: 0px}._flex_ssd0s_14._size-micro_ssd0s_75{--gap: 2px}._flex_ssd0s_14._size-mini_ssd0s_79{--gap: 4px}._flex_ssd0s_14._size-small_ssd0s_83{--gap: 8px}._flex_ssd0s_14._size-medium_ssd0s_87{--gap: 12px}._flex_ssd0s_14._size-large_ssd0s_91{--gap: 16px}._flex_ssd0s_14._size-huge_ssd0s_95{--gap: 20px}._flex_ssd0s_14._size-enormous_ssd0s_99{--gap: 24px}@keyframes _paciu-ui-blink-animation_a6huo_1{0%{opacity:1}50%{opacity:.32}to{opacity:1}}._paciu-ui-card_a6huo_14{position:relative;background:var(--base-color);border-radius:var(--border-radius);padding:var(--padding);transition:var(--transition-normal)}._paciu-ui-card_a6huo_14{--padding: 12px;--border-radius: 24px;--base-color: var(--base-color-100)}._paciu-ui-card_a6huo_14._size-micro_a6huo_28{--padding: 6px;--border-radius: 12px}._paciu-ui-card_a6huo_14._size-mini_a6huo_33{--padding: 8px;--border-radius: 16px}._paciu-ui-card_a6huo_14._size-small_a6huo_38{--padding: 10px;--border-radius: 20px}._paciu-ui-card_a6huo_14._size-large_a6huo_43{--padding: 14px;--border-radius: 28px}._paciu-ui-card_a6huo_14._size-huge_a6huo_48{--padding: 16px;--border-radius: 32px}._paciu-ui-card_a6huo_14._size-enormous_a6huo_53{--padding: 18px;--border-radius: 36px}
2
+ /*$vite$:1*/`,document.head.appendChild(y);const n={"paciu-ui-button":"_paciu-ui-button_y249s_14","size-micro":"_size-micro_y249s_23","size-mini":"_size-mini_y249s_31","size-small":"_size-small_y249s_39","size-large":"_size-large_y249s_47","size-huge":"_size-huge_y249s_55","size-enormous":"_size-enormous_y249s_63","modifier-soft":"_modifier-soft_y249s_98","modifier-solid":"_modifier-solid_y249s_101","modifier-outline":"_modifier-outline_y249s_106","modifier-rounded":"_modifier-rounded_y249s_109","modifier-loading":"_modifier-loading_y249s_112","paciu-ui-blink-animation":"_paciu-ui-blink-animation_y249s_1","modifier-square":"_modifier-square_y249s_116","modifier-link":"_modifier-link_y249s_125","color-opposite":"_color-opposite_y249s_139","color-accent":"_color-accent_y249s_207","color-error":"_color-error_y249s_275"};function v(o){var s,r,i="";if(typeof o=="string"||typeof o=="number")i+=o;else if(typeof o=="object")if(Array.isArray(o)){var e=o.length;for(s=0;s<e;s++)o[s]&&(r=v(o[s]))&&(i&&(i+=" "),i+=r)}else for(r in o)o[r]&&(i&&(i+=" "),i+=r);return i}function l(){for(var o,s,r=0,i="",e=arguments.length;r<e;r++)(o=arguments[r])&&(s=v(o))&&(i&&(i+=" "),i+=s);return i}const h=_.forwardRef((o,s)=>{const{children:r,className:i,color:e,square:c,loading:u,link:p,soft:b,solid:f,outline:g,rounded:m,size:$,onClick:E,...L}=o,[B,N]=_.useState(!1),F=async I=>{if(E){const q=E(I);if(q instanceof Promise){N(!0);try{await q}finally{N(!1)}}}};return t.jsx("button",{ref:s,className:l(n["paciu-ui-button"],{[n["modifier-loading"]]:B||u,[n["modifier-rounded"]]:m,[n["modifier-square"]]:c,[n["modifier-link"]]:p,[n["modifier-soft"]]:b,[n["modifier-outline"]]:g,[n["modifier-solid"]]:f,...e&&{[n[`color-${e}`]]:e}},$&&n[`size-${$}`],i),onClick:F,...L,children:r})});h.displayName="Button";const x={"paciu-ui-row":"_paciu-ui-row_kd3dr_14","size-micro":"_size-micro_kd3dr_23","size-mini":"_size-mini_kd3dr_27","size-small":"_size-small_kd3dr_31","size-large":"_size-large_kd3dr_35","size-huge":"_size-huge_kd3dr_39","size-enormous":"_size-enormous_kd3dr_43","paciu-ui-blink-animation":"_paciu-ui-blink-animation_kd3dr_1"},k=_.forwardRef((o,s)=>{const{className:r,size:i,children:e,...c}=o;return t.jsx("div",{ref:s,className:l(x["paciu-ui-row"],i&&x[`size-${i}`],r),...c,children:e})});k.displayName="Row";const d={flex:"_flex_ssd0s_14",inline:"_inline_ssd0s_22",grow:"_grow_ssd0s_25","direction-column":"_direction-column_ssd0s_28","direction-row-reverse":"_direction-row-reverse_ssd0s_31","direction-column-reverse":"_direction-column-reverse_ssd0s_34","align-start":"_align-start_ssd0s_37","align-center":"_align-center_ssd0s_40","align-end":"_align-end_ssd0s_43","align-baseline":"_align-baseline_ssd0s_46","justify-center":"_justify-center_ssd0s_49","justify-end":"_justify-end_ssd0s_52","justify-between":"_justify-between_ssd0s_55","justify-around":"_justify-around_ssd0s_58","justify-evenly":"_justify-evenly_ssd0s_61","wrap-wrap":"_wrap-wrap_ssd0s_64","wrap-wrap-reverse":"_wrap-wrap-reverse_ssd0s_67","size-micro":"_size-micro_ssd0s_75","size-mini":"_size-mini_ssd0s_79","size-small":"_size-small_ssd0s_83","size-medium":"_size-medium_ssd0s_87","size-large":"_size-large_ssd0s_91","size-huge":"_size-huge_ssd0s_95","size-enormous":"_size-enormous_ssd0s_99","paciu-ui-blink-animation":"_paciu-ui-blink-animation_ssd0s_1"},z=_.forwardRef((o,s)=>{const{children:r,className:i,direction:e,align:c,justify:u,wrap:p,size:b,inline:f,grow:g,...m}=o;return t.jsx("div",{ref:s,className:l(d.flex,{[d.inline]:f,[d.grow]:g,[d[`direction-${e}`]]:e,[d[`align-${c}`]]:c,[d[`justify-${u}`]]:u,[d[`wrap-${p}`]]:p},b&&d[`size-${b}`],i),...m,children:r})});z.displayName="Flex";const w={"paciu-ui-card":"_paciu-ui-card_a6huo_14","size-micro":"_size-micro_a6huo_28","size-mini":"_size-mini_a6huo_33","size-small":"_size-small_a6huo_38","size-large":"_size-large_a6huo_43","size-huge":"_size-huge_a6huo_48","size-enormous":"_size-enormous_a6huo_53","paciu-ui-blink-animation":"_paciu-ui-blink-animation_a6huo_1"},j=_.forwardRef((o,s)=>{const{children:r,className:i,size:e,...c}=o;return t.jsx("div",{ref:s,className:l(w["paciu-ui-card"],e&&w[`size-${e}`],i),...c,children:r})});j.displayName="Card";const S=o=>{_.useEffect(()=>{const s=r=>{r.key==="Escape"&&(r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation(),o())};return document.addEventListener("keydown",s,!0),()=>document.removeEventListener("keydown",s,!0)},[o])},C=(o,s=[],r)=>{const i=_.useRef(r?.count||1);_.useEffect(()=>{if(i.current>0){i.current--;return}return o()},s)},P=()=>{const[o,s]=_.useState(!1);return _.useEffect(()=>{const r=()=>s(window.scrollY>0);return r(),document.addEventListener("scroll",r),()=>{document.removeEventListener("scroll",r)}},[]),{isScrolled:o}};a.Button=h,a.Card=j,a.Flex=z,a.Row=k,a.useEscape=S,a.useScroll=P,a.useSkipEffect=C,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})}));
@@ -1,2 +1,13 @@
1
- export type ColorType = 'error';
2
- export type Size = 'small' | 'medium' | 'large';
1
+ export type ColorType = 'opposite' | 'accent' | 'error';
2
+ export type Size = 'micro' | 'mini' | 'small' | 'medium' | 'large' | 'huge' | 'enormous';
3
+ export interface Modifiers {
4
+ link?: boolean;
5
+ soft?: boolean;
6
+ outline?: boolean;
7
+ solid?: boolean;
8
+ square?: boolean;
9
+ rounded?: boolean;
10
+ loading?: boolean;
11
+ size?: Size;
12
+ color?: ColorType;
13
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paciu/ui",
3
- "version": "0.0.39",
3
+ "version": "0.0.41",
4
4
  "type": "module",
5
5
  "main": "./dist/index.umd.js",
6
6
  "module": "./dist/index.es.js",
package/readme.md CHANGED
@@ -5,7 +5,6 @@ $ npm i @paciu/ui
5
5
  ```
6
6
 
7
7
  ```typescript
8
- import '@paciu/ui/styles'
9
8
  import { Button, Row, useEscape } from '@paciu/ui'
10
9
  import type { ColorType } from '@paciu/ui'
11
10
  ```
@@ -1,5 +0,0 @@
1
- import { default as React } from 'react';
2
- export interface UseSkipFirstEffectOptions {
3
- count?: number;
4
- }
5
- export declare const useSkipFirstEffect: (cb: React.EffectCallback, deps?: React.DependencyList) => void;