@vacano/ui 0.0.1 → 1.0.0

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.d.ts CHANGED
@@ -7,6 +7,14 @@ import { PropsWithChildren } from 'react';
7
7
  import { ReactNode } from 'react';
8
8
  import { Ref } from 'react';
9
9
 
10
+ export declare const breakpoints: {
11
+ readonly sm: 640;
12
+ readonly md: 768;
13
+ readonly lg: 1024;
14
+ readonly xl: 1280;
15
+ readonly xl2: 1536;
16
+ };
17
+
10
18
  export declare const Button: ({ char, children, className, classnames, disabled, fullWidth, icon, loading, onClick, variant, ...rest }: ButtonProps) => JSX.Element;
11
19
 
12
20
  export declare type ButtonClassnames = {
@@ -247,6 +255,48 @@ export declare type ChipProps = HTMLAttributes<HTMLSpanElement> & {
247
255
 
248
256
  export declare type ChipStatus = 'neutral' | 'success' | 'warning' | 'error';
249
257
 
258
+ export declare const colors: {
259
+ readonly black: "#000000";
260
+ readonly white: "#ffffff";
261
+ readonly onyx: "#111111";
262
+ readonly carbonBlack: "#232323";
263
+ readonly graphite: "#343434";
264
+ readonly slate: "#484848";
265
+ readonly ash: "#6b6b6b";
266
+ readonly silver: "#8c8c8c";
267
+ readonly mist: "#b0b0b0";
268
+ readonly cloud: "#d4d4d4";
269
+ readonly snow: "#ebebeb";
270
+ readonly icyBlue: "#bde0fe";
271
+ readonly blue: "#0050c8";
272
+ readonly green: "#009650";
273
+ readonly amber: "#b48200";
274
+ readonly red: "#c83232";
275
+ readonly grey: "#646464";
276
+ readonly blueBg: "#0064ff1a";
277
+ readonly greenBg: "#00c8641a";
278
+ readonly amberBg: "#ffb4001a";
279
+ readonly redBg: "#ff50501a";
280
+ readonly greyBg: "#0000000d";
281
+ readonly hoverLight: "#00000008";
282
+ readonly activeLight: "#00000012";
283
+ readonly hoverDark: "#ffffff12";
284
+ readonly activeDark: "#ffffff20";
285
+ readonly redLight: "#c8323214";
286
+ readonly redMedium: "#c8323228";
287
+ readonly focusRingDark: "#00000080";
288
+ readonly focusRingDarkSubtle: "#00000040";
289
+ readonly focusRingLight: "#ffffff80";
290
+ readonly focusRingLightSubtle: "#ffffff40";
291
+ readonly focusRingDanger: "#c8323280";
292
+ readonly focusRingWarning: "#b4820040";
293
+ readonly focusRingError: "#c8323240";
294
+ readonly inputBgLight: "#00000008";
295
+ readonly inputBgDark: "#ffffff0d";
296
+ readonly inputBgWarning: "#ffb4001a";
297
+ readonly inputBgError: "#ff50501a";
298
+ };
299
+
250
300
  export declare const Dropdown: ({ trigger, children, placement, align, offset, open, onOpenChange, portalRenderNode, classnames, className, fullWidth, ...rest }: DropdownProps) => JSX.Element;
251
301
 
252
302
  export declare type DropdownAlign = 'start' | 'end';
@@ -382,6 +432,170 @@ export declare type LoaderProps = HTMLAttributes<HTMLSpanElement> & {
382
432
  size?: number;
383
433
  };
384
434
 
435
+ export declare const media: {
436
+ readonly sm: "@media (min-width: 640px)";
437
+ readonly md: "@media (min-width: 768px)";
438
+ readonly lg: "@media (min-width: 1024px)";
439
+ readonly xl: "@media (min-width: 1280px)";
440
+ readonly xl2: "@media (min-width: 1536px)";
441
+ };
442
+
443
+ export declare const MultiSelect: ({ options, value, onChange, placeholder, searchPlaceholder, emptyMessage, label, icon, state, disabled, fullWidth, placement, maxHeight, virtualized, searchable, portalRenderNode, className, classnames, ...rest }: MultiSelectProps) => JSX.Element;
444
+
445
+ export declare type MultiSelectClassnames = {
446
+ container?: string;
447
+ label?: string;
448
+ trigger?: string;
449
+ chips?: string;
450
+ chip?: string;
451
+ chipRemove?: string;
452
+ content?: string;
453
+ search?: string;
454
+ list?: string;
455
+ option?: string;
456
+ empty?: string;
457
+ };
458
+
459
+ export declare type MultiSelectOption = {
460
+ label: string;
461
+ value: string;
462
+ };
463
+
464
+ export declare type MultiSelectPlacement = 'top' | 'bottom';
465
+
466
+ export declare type MultiSelectProps = Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> & {
467
+ options: MultiSelectOption[];
468
+ value: string[];
469
+ onChange: (values: string[]) => void;
470
+ placeholder?: string;
471
+ searchPlaceholder?: string;
472
+ emptyMessage?: string;
473
+ label?: string;
474
+ icon?: ReactNode;
475
+ state?: MultiSelectState;
476
+ disabled?: boolean;
477
+ fullWidth?: boolean;
478
+ placement?: MultiSelectPlacement;
479
+ maxHeight?: number;
480
+ virtualized?: boolean;
481
+ searchable?: boolean;
482
+ portalRenderNode?: HTMLElement | null;
483
+ classnames?: MultiSelectClassnames;
484
+ 'data-test-id'?: string;
485
+ };
486
+
487
+ export declare type MultiSelectState = 'warning' | 'error';
488
+
489
+ declare type MultiSelectStateTheme = {
490
+ trigger: {
491
+ backgroundColor: string;
492
+ borderColor: string;
493
+ focus: {
494
+ outlineColor: string;
495
+ };
496
+ };
497
+ label: {
498
+ color: string;
499
+ };
500
+ chip: {
501
+ backgroundColor: string;
502
+ color: string;
503
+ remove: {
504
+ color: string;
505
+ };
506
+ };
507
+ icon: {
508
+ color: string;
509
+ };
510
+ chevron: {
511
+ color: string;
512
+ };
513
+ };
514
+
515
+ declare type MultiSelectTheme = {
516
+ trigger: {
517
+ backgroundColor: string;
518
+ borderColor: string;
519
+ focus: {
520
+ outlineColor: string;
521
+ };
522
+ disabled: {
523
+ backgroundColor: string;
524
+ borderColor: string;
525
+ };
526
+ };
527
+ label: {
528
+ color: string;
529
+ };
530
+ placeholder: {
531
+ color: string;
532
+ disabled: {
533
+ color: string;
534
+ };
535
+ };
536
+ chip: {
537
+ backgroundColor: string;
538
+ color: string;
539
+ remove: {
540
+ color: string;
541
+ hover: {
542
+ color: string;
543
+ };
544
+ };
545
+ disabled: {
546
+ backgroundColor: string;
547
+ color: string;
548
+ remove: {
549
+ color: string;
550
+ };
551
+ };
552
+ };
553
+ icon: {
554
+ color: string;
555
+ disabled: {
556
+ color: string;
557
+ };
558
+ };
559
+ chevron: {
560
+ color: string;
561
+ disabled: {
562
+ color: string;
563
+ };
564
+ };
565
+ content: {
566
+ backgroundColor: string;
567
+ borderColor: string;
568
+ shadow: string;
569
+ };
570
+ option: {
571
+ color: string;
572
+ backgroundColor: string;
573
+ hover: {
574
+ backgroundColor: string;
575
+ };
576
+ selected: {
577
+ backgroundColor: string;
578
+ color: string;
579
+ };
580
+ check: {
581
+ color: string;
582
+ };
583
+ };
584
+ search: {
585
+ backgroundColor: string;
586
+ borderColor: string;
587
+ color: string;
588
+ placeholderColor: string;
589
+ };
590
+ empty: {
591
+ color: string;
592
+ };
593
+ state: {
594
+ warning: MultiSelectStateTheme;
595
+ error: MultiSelectStateTheme;
596
+ };
597
+ };
598
+
385
599
  export declare const Radio: ({ checked, className, classnames, disabled, label, onChange, ref, state, ...rest }: RadioProps) => JSX.Element;
386
600
 
387
601
  export declare const RadioCard: ({ checked, className, classnames, description, disabled, fullWidth, label, onChange, ref, state, ...rest }: RadioCardProps) => JSX.Element;
@@ -668,6 +882,9 @@ declare type SelectTheme = {
668
882
  backgroundColor: string;
669
883
  color: string;
670
884
  };
885
+ check: {
886
+ color: string;
887
+ };
671
888
  };
672
889
  search: {
673
890
  backgroundColor: string;
@@ -684,6 +901,17 @@ declare type SelectTheme = {
684
901
  };
685
902
  };
686
903
 
904
+ export declare const shadows: {
905
+ readonly none: "none";
906
+ readonly sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)";
907
+ readonly md: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)";
908
+ readonly lg: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)";
909
+ readonly xl: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)";
910
+ readonly xl2: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)";
911
+ readonly xl3: "0 25px 50px -12px rgb(0 0 0 / 0.25)";
912
+ readonly inner: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)";
913
+ };
914
+
687
915
  export declare const Spinner: ({ "aria-label": ariaLabel, className, classnames, size, ...rest }: SpinnerProps) => JSX.Element;
688
916
 
689
917
  export declare type SpinnerClassnames = {
@@ -781,6 +1009,59 @@ export declare type StyledLoaderContainerProps = {
781
1009
  $size: number;
782
1010
  };
783
1011
 
1012
+ export declare type StyledMultiSelectChevronProps = {
1013
+ $state?: MultiSelectState;
1014
+ $disabled?: boolean;
1015
+ $isOpen?: boolean;
1016
+ };
1017
+
1018
+ export declare type StyledMultiSelectChipProps = {
1019
+ $state?: MultiSelectState;
1020
+ $disabled?: boolean;
1021
+ };
1022
+
1023
+ export declare type StyledMultiSelectChipRemoveProps = {
1024
+ $state?: MultiSelectState;
1025
+ $disabled?: boolean;
1026
+ };
1027
+
1028
+ export declare type StyledMultiSelectContainerProps = {
1029
+ $fullWidth?: boolean;
1030
+ };
1031
+
1032
+ export declare type StyledMultiSelectContentProps = {
1033
+ $isOpen: boolean;
1034
+ $maxHeight: number;
1035
+ };
1036
+
1037
+ export declare type StyledMultiSelectIconProps = {
1038
+ $state?: MultiSelectState;
1039
+ $disabled?: boolean;
1040
+ };
1041
+
1042
+ export declare type StyledMultiSelectLabelProps = {
1043
+ $state?: MultiSelectState;
1044
+ };
1045
+
1046
+ export declare type StyledMultiSelectOptionCheckProps = {
1047
+ $isSelected?: boolean;
1048
+ };
1049
+
1050
+ export declare type StyledMultiSelectOptionProps = {
1051
+ $isHighlighted?: boolean;
1052
+ };
1053
+
1054
+ export declare type StyledMultiSelectPlaceholderProps = {
1055
+ $disabled?: boolean;
1056
+ };
1057
+
1058
+ export declare type StyledMultiSelectTriggerProps = {
1059
+ $state?: MultiSelectState;
1060
+ $disabled?: boolean;
1061
+ $isOpen?: boolean;
1062
+ $hasValue?: boolean;
1063
+ };
1064
+
784
1065
  export declare type StyledRadioCardContainerProps = {
785
1066
  $checked?: boolean;
786
1067
  $disabled?: boolean;
@@ -820,8 +1101,11 @@ export declare type StyledSelectLabelProps = {
820
1101
  $state?: SelectState;
821
1102
  };
822
1103
 
823
- export declare type StyledSelectOptionProps = {
1104
+ export declare type StyledSelectOptionCheckProps = {
824
1105
  $isSelected?: boolean;
1106
+ };
1107
+
1108
+ export declare type StyledSelectOptionProps = {
825
1109
  $isHighlighted?: boolean;
826
1110
  };
827
1111
 
@@ -873,6 +1157,7 @@ export declare type Theme = {
873
1157
  radioGroup: RadioGroupTheme;
874
1158
  dropdown: DropdownTheme;
875
1159
  select: SelectTheme;
1160
+ multiSelect: MultiSelectTheme;
876
1161
  };
877
1162
 
878
1163
  export declare interface ThemeContextValue {