@forsyteco/product-ui 0.0.3

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.
Files changed (115) hide show
  1. package/README.md +93 -0
  2. package/dist/avatar/avatar.d.ts +26 -0
  3. package/dist/avatar/avatar.d.ts.map +1 -0
  4. package/dist/avatar/index.d.ts +4 -0
  5. package/dist/avatar/index.d.ts.map +1 -0
  6. package/dist/breadcrumb/breadcrumb.d.ts +12 -0
  7. package/dist/breadcrumb/breadcrumb.d.ts.map +1 -0
  8. package/dist/breadcrumb/index.d.ts +2 -0
  9. package/dist/breadcrumb/index.d.ts.map +1 -0
  10. package/dist/button/button.d.ts +17 -0
  11. package/dist/button/button.d.ts.map +1 -0
  12. package/dist/button/index.d.ts +4 -0
  13. package/dist/button/index.d.ts.map +1 -0
  14. package/dist/calendar/calendar.d.ts +14 -0
  15. package/dist/calendar/calendar.d.ts.map +1 -0
  16. package/dist/calendar/index.d.ts +2 -0
  17. package/dist/calendar/index.d.ts.map +1 -0
  18. package/dist/card/card.d.ts +10 -0
  19. package/dist/card/card.d.ts.map +1 -0
  20. package/dist/card/index.d.ts +2 -0
  21. package/dist/card/index.d.ts.map +1 -0
  22. package/dist/checkbox/checkbox.d.ts +11 -0
  23. package/dist/checkbox/checkbox.d.ts.map +1 -0
  24. package/dist/checkbox/index.d.ts +3 -0
  25. package/dist/checkbox/index.d.ts.map +1 -0
  26. package/dist/combobox/combobox.d.ts +28 -0
  27. package/dist/combobox/combobox.d.ts.map +1 -0
  28. package/dist/combobox/index.d.ts +3 -0
  29. package/dist/combobox/index.d.ts.map +1 -0
  30. package/dist/counter-label/counter-label.d.ts +11 -0
  31. package/dist/counter-label/counter-label.d.ts.map +1 -0
  32. package/dist/counter-label/index.d.ts +3 -0
  33. package/dist/counter-label/index.d.ts.map +1 -0
  34. package/dist/dialog/dialog.d.ts +25 -0
  35. package/dist/dialog/dialog.d.ts.map +1 -0
  36. package/dist/dialog/index.d.ts +4 -0
  37. package/dist/dialog/index.d.ts.map +1 -0
  38. package/dist/disclosure/disclosure.d.ts +19 -0
  39. package/dist/disclosure/disclosure.d.ts.map +1 -0
  40. package/dist/disclosure/index.d.ts +4 -0
  41. package/dist/disclosure/index.d.ts.map +1 -0
  42. package/dist/dropdown-menu/dropdown-menu.d.ts +23 -0
  43. package/dist/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  44. package/dist/dropdown-menu/index.d.ts +4 -0
  45. package/dist/dropdown-menu/index.d.ts.map +1 -0
  46. package/dist/fieldset/fieldset.d.ts +12 -0
  47. package/dist/fieldset/fieldset.d.ts.map +1 -0
  48. package/dist/fieldset/index.d.ts +3 -0
  49. package/dist/fieldset/index.d.ts.map +1 -0
  50. package/dist/index.cjs +8 -0
  51. package/dist/index.d.ts +50 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/index.mjs +14641 -0
  54. package/dist/input/index.d.ts +3 -0
  55. package/dist/input/index.d.ts.map +1 -0
  56. package/dist/input/input.d.ts +14 -0
  57. package/dist/input/input.d.ts.map +1 -0
  58. package/dist/listbox/index.d.ts +3 -0
  59. package/dist/listbox/index.d.ts.map +1 -0
  60. package/dist/listbox/listbox.d.ts +30 -0
  61. package/dist/listbox/listbox.d.ts.map +1 -0
  62. package/dist/popover/index.d.ts +4 -0
  63. package/dist/popover/index.d.ts.map +1 -0
  64. package/dist/popover/popover.d.ts +16 -0
  65. package/dist/popover/popover.d.ts.map +1 -0
  66. package/dist/radio-group/index.d.ts +3 -0
  67. package/dist/radio-group/index.d.ts.map +1 -0
  68. package/dist/radio-group/radio-group.d.ts +20 -0
  69. package/dist/radio-group/radio-group.d.ts.map +1 -0
  70. package/dist/select/index.d.ts +3 -0
  71. package/dist/select/index.d.ts.map +1 -0
  72. package/dist/select/select.d.ts +17 -0
  73. package/dist/select/select.d.ts.map +1 -0
  74. package/dist/skeleton/index.d.ts +3 -0
  75. package/dist/skeleton/index.d.ts.map +1 -0
  76. package/dist/skeleton/skeleton.d.ts +4 -0
  77. package/dist/skeleton/skeleton.d.ts.map +1 -0
  78. package/dist/sonner/index.d.ts +4 -0
  79. package/dist/sonner/index.d.ts.map +1 -0
  80. package/dist/sonner/sonner.d.ts +5 -0
  81. package/dist/sonner/sonner.d.ts.map +1 -0
  82. package/dist/spinner/index.d.ts +3 -0
  83. package/dist/spinner/index.d.ts.map +1 -0
  84. package/dist/spinner/spinner.d.ts +9 -0
  85. package/dist/spinner/spinner.d.ts.map +1 -0
  86. package/dist/switch/index.d.ts +3 -0
  87. package/dist/switch/index.d.ts.map +1 -0
  88. package/dist/switch/switch.d.ts +16 -0
  89. package/dist/switch/switch.d.ts.map +1 -0
  90. package/dist/tabs/index.d.ts +4 -0
  91. package/dist/tabs/index.d.ts.map +1 -0
  92. package/dist/tabs/tabs.d.ts +31 -0
  93. package/dist/tabs/tabs.d.ts.map +1 -0
  94. package/dist/textarea/index.d.ts +3 -0
  95. package/dist/textarea/index.d.ts.map +1 -0
  96. package/dist/textarea/textarea.d.ts +9 -0
  97. package/dist/textarea/textarea.d.ts.map +1 -0
  98. package/dist/theme/index.d.ts +4 -0
  99. package/dist/theme/index.d.ts.map +1 -0
  100. package/dist/theme/theme-provider.d.ts +21 -0
  101. package/dist/theme/theme-provider.d.ts.map +1 -0
  102. package/dist/theme/use-theme.d.ts +3 -0
  103. package/dist/theme/use-theme.d.ts.map +1 -0
  104. package/dist/transition/index.d.ts +3 -0
  105. package/dist/transition/index.d.ts.map +1 -0
  106. package/dist/transition/transition.d.ts +15 -0
  107. package/dist/transition/transition.d.ts.map +1 -0
  108. package/dist/utils/tailwind.d.ts +3 -0
  109. package/dist/utils/tailwind.d.ts.map +1 -0
  110. package/dist/visually-hidden/index.d.ts +3 -0
  111. package/dist/visually-hidden/index.d.ts.map +1 -0
  112. package/dist/visually-hidden/visually-hidden.d.ts +16 -0
  113. package/dist/visually-hidden/visually-hidden.d.ts.map +1 -0
  114. package/package.json +85 -0
  115. package/tailwind.config.js +10 -0
@@ -0,0 +1,3 @@
1
+ export { default } from './input';
2
+ export type { InputProps } from './input';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ declare const inputVariants: (props?: ({
4
+ size?: "sm" | "lg" | "default" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ export type InputProps = Pick<React.ComponentProps<'input'>, 'type' | 'className' | 'placeholder' | 'id' | 'value' | 'defaultValue' | 'disabled' | 'readOnly' | 'aria-invalid' | 'aria-describedby' | 'autoFocus' | 'autoCapitalize' | 'autoComplete' | 'autoCorrect' | 'onBlur' | 'onChange' | 'onKeyDown' | 'inputMode'> & VariantProps<typeof inputVariants> & {
7
+ ref?: React.Ref<HTMLInputElement | null>;
8
+ startElement?: React.ReactNode;
9
+ endElement?: React.ReactNode;
10
+ inputClassName?: string;
11
+ };
12
+ declare function Input({ ref, className, inputClassName, type, startElement, endElement, size, ...props }: InputProps): React.JSX.Element;
13
+ export default Input;
14
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/input/input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,QAAA,MAAM,aAAa;;8EAqBlB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAC3B,MAAM,GACN,WAAW,GACX,aAAa,GACb,IAAI,GACJ,OAAO,GACP,cAAc,GACd,UAAU,GACV,UAAU,GACV,cAAc,GACd,kBAAkB,GAClB,WAAW,GACX,gBAAgB,GAChB,cAAc,GACd,aAAa,GACb,QAAQ,GACR,UAAU,GACV,WAAW,GACX,WAAW,CACd,GACC,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAcJ,iBAAS,KAAK,CAAC,EACb,GAAG,EACH,SAAS,EACT,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,IAAgB,EAChB,GAAG,KAAK,EACT,EAAE,UAAU,qBA8BZ;AAED,eAAe,KAAK,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './listbox';
2
+ export type { ListboxProps, ListboxOption } from './listbox';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/listbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { ReactNode } from 'react';
2
+ export type ListboxOption = {
3
+ id: string | number;
4
+ label: string;
5
+ value: string;
6
+ disabled?: boolean;
7
+ };
8
+ export type ListboxProps = {
9
+ options: ListboxOption[];
10
+ value?: ListboxOption | null;
11
+ onChange?: (value: ListboxOption) => void;
12
+ placeholder?: string;
13
+ className?: string;
14
+ disabled?: boolean;
15
+ };
16
+ export type ListboxButtonProps = {
17
+ children: ReactNode;
18
+ className?: string;
19
+ };
20
+ export type ListboxOptionsProps = {
21
+ children: ReactNode;
22
+ className?: string;
23
+ };
24
+ export type ListboxOptionProps = {
25
+ option: ListboxOption;
26
+ className?: string;
27
+ };
28
+ declare function Listbox({ options, value, onChange, placeholder, className, disabled, }: ListboxProps): import("react").JSX.Element;
29
+ export default Listbox;
30
+ //# sourceMappingURL=listbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listbox.d.ts","sourceRoot":"","sources":["../../src/listbox/listbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,OAAO,CAAC,EACf,OAAO,EACP,KAAK,EACL,QAAQ,EACR,WAAmC,EACnC,SAAS,EACT,QAAgB,GACjB,EAAE,YAAY,+BAkDd;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { default } from './popover';
2
+ export { PopoverButton, PopoverPanel } from './popover';
3
+ export type { PopoverProps, PopoverButtonProps, PopoverPanelProps } from './popover';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from 'react';
2
+ import { ButtonProps } from '../button';
3
+ export type PopoverProps = {
4
+ children: ReactNode;
5
+ className?: string;
6
+ };
7
+ export type PopoverButtonProps = ButtonProps;
8
+ export type PopoverPanelProps = {
9
+ children: ReactNode;
10
+ className?: string;
11
+ };
12
+ declare function Popover({ children, className }: PopoverProps): import("react").JSX.Element;
13
+ export declare function PopoverButton({ children, className, variant, size, ...props }: PopoverButtonProps): import("react").JSX.Element;
14
+ export declare function PopoverPanel({ children, className }: PopoverPanelProps): import("react").JSX.Element;
15
+ export default Popover;
16
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../src/popover/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAe,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAGrD,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,YAAY,+BAQrD;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAmB,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAY7G;AAED,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,+BAWtE;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './radio-group';
2
+ export type { RadioGroupProps, RadioGroupOption } from './radio-group';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/radio-group/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,20 @@
1
+ export type RadioGroupOption = {
2
+ id: string | number;
3
+ label: string;
4
+ value: string;
5
+ description?: string;
6
+ };
7
+ export type RadioGroupProps = {
8
+ options: RadioGroupOption[];
9
+ value?: string;
10
+ onChange?: (value: string) => void;
11
+ className?: string;
12
+ disabled?: boolean;
13
+ };
14
+ export type RadioGroupOptionProps = {
15
+ option: RadioGroupOption;
16
+ className?: string;
17
+ };
18
+ declare function RadioGroup({ options, value, onChange, className, disabled, }: RadioGroupProps): import("react").JSX.Element;
19
+ export default RadioGroup;
20
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../src/radio-group/radio-group.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,UAAU,CAAC,EAClB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAgB,GACjB,EAAE,eAAe,+BA0DjB;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './select';
2
+ export type { SelectProps, SelectOption } from './select';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { SelectHTMLAttributes } from 'react';
2
+ import { VariantProps } from 'class-variance-authority';
3
+ export type SelectOption = {
4
+ value: string;
5
+ label: string;
6
+ disabled?: boolean;
7
+ };
8
+ declare const selectVariants: (props?: ({
9
+ error?: boolean | null | undefined;
10
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
11
+ export type SelectProps = Omit<SelectHTMLAttributes<HTMLSelectElement>, 'children'> & VariantProps<typeof selectVariants> & {
12
+ options: SelectOption[];
13
+ placeholder?: string;
14
+ };
15
+ declare function Select({ options, placeholder, error, className, ...props }: SelectProps): import("react").JSX.Element;
16
+ export default Select;
17
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/select/select.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,cAAc;;8EAanB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IAC1H,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,iBAAS,MAAM,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,+BAkBhF;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './skeleton';
2
+ export type { SkeletonProps } from './skeleton';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skeleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type SkeletonProps = React.ComponentProps<'div'>;
2
+ declare function Skeleton({ className, ...props }: SkeletonProps): import("react").JSX.Element;
3
+ export default Skeleton;
4
+ //# sourceMappingURL=skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../src/skeleton/skeleton.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAExD,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BAWvD;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { default } from './sonner';
2
+ export { Sonner } from './sonner';
3
+ export type { SonnerProps } from './sonner';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sonner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { ToasterProps } from 'sonner';
2
+ export type SonnerProps = ToasterProps;
3
+ export declare const Sonner: ({ ...props }: SonnerProps) => import("react").JSX.Element;
4
+ export default Sonner;
5
+ //# sourceMappingURL=sonner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sonner.d.ts","sourceRoot":"","sources":["../../src/sonner/sonner.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC;AAEvC,eAAO,MAAM,MAAM,GAAI,cAAc,WAAW,gCAgC/C,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './spinner';
2
+ export type { SpinnerProps } from './spinner';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spinner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA"}
@@ -0,0 +1,9 @@
1
+ export type SpinnerProps = {
2
+ size?: number;
3
+ strokeWidth?: number;
4
+ colors?: string[];
5
+ className?: string;
6
+ };
7
+ declare function Spinner({ size, strokeWidth, colors, className, }: SpinnerProps): import("react").JSX.Element;
8
+ export default Spinner;
9
+ //# sourceMappingURL=spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/spinner/spinner.tsx"],"names":[],"mappings":"AAKA,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,OAAO,CAAC,EACf,IAAS,EACT,WAAe,EACf,MAAuB,EACvB,SAAS,GACV,EAAE,YAAY,+BAiCd;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './switch';
2
+ export type { SwitchProps } from './switch';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/switch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ declare const switchVariants: (props?: ({
3
+ size?: "sm" | "md" | "lg" | null | undefined;
4
+ disabled?: boolean | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ export type SwitchProps = Omit<VariantProps<typeof switchVariants>, 'disabled'> & {
7
+ checked?: boolean;
8
+ onChange?: (checked: boolean) => void;
9
+ label?: string;
10
+ description?: string;
11
+ disabled?: boolean;
12
+ className?: string;
13
+ };
14
+ declare function Switch({ checked, onChange, label, description, disabled, size, className, }: SwitchProps): import("react").JSX.Element;
15
+ export default Switch;
16
+ //# sourceMappingURL=switch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../src/switch/switch.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,QAAA,MAAM,cAAc;;;8EAmBnB,CAAC;AAkBF,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,cAAc,CAAC,EAAE,UAAU,CAAC,GAAG;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,MAAM,CAAC,EACd,OAAe,EACf,QAAQ,EACR,KAAK,EACL,WAAW,EACX,QAAgB,EAChB,IAAI,EACJ,SAAS,GACV,EAAE,WAAW,+BAmCb;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { default } from './tabs';
2
+ export { TabList, Tab, TabPanels, TabPanel } from './tabs';
3
+ export type { TabsProps, TabListProps, TabProps, TabPanelsProps, TabPanelProps } from './tabs';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC3D,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { ReactNode } from 'react';
2
+ export type TabsProps = {
3
+ children: ReactNode;
4
+ defaultIndex?: number;
5
+ selectedIndex?: number;
6
+ onChange?: (index: number) => void;
7
+ className?: string;
8
+ };
9
+ export type TabListProps = {
10
+ children: ReactNode;
11
+ className?: string;
12
+ };
13
+ export type TabProps = {
14
+ children: ReactNode;
15
+ className?: string;
16
+ };
17
+ export type TabPanelsProps = {
18
+ children: ReactNode;
19
+ className?: string;
20
+ };
21
+ export type TabPanelProps = {
22
+ children: ReactNode;
23
+ className?: string;
24
+ };
25
+ declare function Tabs({ children, defaultIndex, selectedIndex, onChange, className }: TabsProps): import("react").JSX.Element;
26
+ export declare function TabList({ children, className }: TabListProps): import("react").JSX.Element;
27
+ export declare function Tab({ children, className }: TabProps): import("react").JSX.Element;
28
+ export declare function TabPanels({ children, className }: TabPanelsProps): import("react").JSX.Element;
29
+ export declare function TabPanel({ children, className }: TabPanelProps): import("react").JSX.Element;
30
+ export default Tabs;
31
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,SAAS,+BAYtF;AAED,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,YAAY,+BAW5D;AAED,wBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,QAAQ,+BAiBpD;AAED,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,cAAc,+BAMhE;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,aAAa,+BAY9D;AAED,eAAe,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './textarea';
2
+ export type { TextareaProps } from './textarea';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/textarea/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { TextareaHTMLAttributes } from 'react';
2
+ import { VariantProps } from 'class-variance-authority';
3
+ declare const textareaVariants: (props?: ({
4
+ error?: boolean | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ export type TextareaProps = TextareaHTMLAttributes<HTMLTextAreaElement> & VariantProps<typeof textareaVariants>;
7
+ declare function Textarea({ error, className, ...props }: TextareaProps): import("react").JSX.Element;
8
+ export default Textarea;
9
+ //# sourceMappingURL=textarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../src/textarea/textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,QAAA,MAAM,gBAAgB;;8EAarB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhH,iBAAS,QAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BAO9D;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { default as ThemeProvider } from './theme-provider';
2
+ export { useTheme } from './use-theme';
3
+ export type { ThemeProviderProps, ColourScheme, ThemeMode, ThemeContextValue } from './theme-provider';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { ReactNode } from 'react';
2
+ export type ColourScheme = 'yellow' | 'blue';
3
+ export type ThemeMode = 'light' | 'dark' | 'system';
4
+ export type ThemeContextValue = {
5
+ colourScheme: ColourScheme;
6
+ mode: ThemeMode;
7
+ setColourScheme: (scheme: ColourScheme) => void;
8
+ setMode: (mode: ThemeMode) => void;
9
+ resolvedMode: 'light' | 'dark';
10
+ };
11
+ export declare const ThemeContext: import('react').Context<ThemeContextValue | undefined>;
12
+ export type ThemeProviderProps = {
13
+ children: ReactNode;
14
+ colourScheme?: ColourScheme;
15
+ defaultMode?: ThemeMode;
16
+ storageKey?: string;
17
+ };
18
+ declare function ThemeProvider({ children, colourScheme, defaultMode, storageKey, }: ThemeProviderProps): import("react").JSX.Element;
19
+ export default ThemeProvider;
20
+ export declare function useTheme(): ThemeContextValue;
21
+ //# sourceMappingURL=theme-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-provider.d.ts","sourceRoot":"","sources":["../../src/theme/theme-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAkD,MAAM,OAAO,CAAC;AAEvF,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEpD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,eAAe,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAChD,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACnC,YAAY,EAAE,OAAO,GAAG,MAAM,CAAC;CAChC,CAAC;AAEF,eAAO,MAAM,YAAY,wDAA0D,CAAC;AAEpF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,YAAuB,EACvB,WAAsB,EACtB,UAA8B,GAC/B,EAAE,kBAAkB,+BAoGpB;AAED,eAAe,aAAa,CAAC;AAE7B,wBAAgB,QAAQ,sBAIvB"}
@@ -0,0 +1,3 @@
1
+ import { ThemeContextValue } from './theme-provider';
2
+ export declare function useTheme(): ThemeContextValue;
3
+ //# sourceMappingURL=use-theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-theme.d.ts","sourceRoot":"","sources":["../../src/theme/use-theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAExE,wBAAgB,QAAQ,IAAI,iBAAiB,CAM5C"}
@@ -0,0 +1,3 @@
1
+ export { default } from './transition';
2
+ export type { TransitionProps } from './transition';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+ export type TransitionProps = {
3
+ show?: boolean;
4
+ children: ReactNode;
5
+ className?: string;
6
+ enter?: string;
7
+ enterFrom?: string;
8
+ enterTo?: string;
9
+ leave?: string;
10
+ leaveFrom?: string;
11
+ leaveTo?: string;
12
+ };
13
+ declare function Transition({ show, children, className, enter, enterFrom, enterTo, leave, leaveFrom, leaveTo, }: TransitionProps): import("react").JSX.Element;
14
+ export default Transition;
15
+ //# sourceMappingURL=transition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../src/transition/transition.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,iBAAS,UAAU,CAAC,EAClB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,KAA0C,EAC1C,SAAuB,EACvB,OAAuB,EACvB,KAAyC,EACzC,SAAyB,EACzB,OAAqB,GACtB,EAAE,eAAe,+BAcjB;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ClassValue } from 'clsx';
2
+ export declare function cn(...inputs: ClassValue[]): string;
3
+ //# sourceMappingURL=tailwind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwind.d.ts","sourceRoot":"","sources":["../../src/utils/tailwind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
@@ -0,0 +1,3 @@
1
+ export { VisuallyHidden } from './visually-hidden';
2
+ export type { VisuallyHiddenProps } from './visually-hidden';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/visually-hidden/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { default as React, HTMLAttributes } from 'react';
2
+ /**
3
+ * Provides a component that implements the "visually hidden" technique. This is
4
+ * analogous to the common `sr-only` class. Children that are rendered inside
5
+ * this component will not be visible but will be available to screen readers.
6
+ *
7
+ * Note: if this component, or a descendant, has focus then this component will
8
+ * no longer be visually hidden.
9
+ *
10
+ * @see https://www.scottohara.me/blog/2023/03/21/visually-hidden-hack.html
11
+ */
12
+ export declare const VisuallyHidden: ({ className, children, ...rest }: VisuallyHiddenProps) => React.JSX.Element;
13
+ export type VisuallyHiddenProps = React.PropsWithChildren<HTMLAttributes<HTMLSpanElement> & {
14
+ className?: string;
15
+ }>;
16
+ //# sourceMappingURL=visually-hidden.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visually-hidden.d.ts","sourceRoot":"","sources":["../../src/visually-hidden/visually-hidden.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5C;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,GAAI,kCAAgC,mBAAmB,sBAejF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,iBAAiB,CACvD,cAAc,CAAC,eAAe,CAAC,GAAG;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CACF,CAAA"}
package/package.json ADDED
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "@forsyteco/product-ui",
3
+ "version": "0.0.3",
4
+ "description": "An implementation of Forsyte's product design system using React 🐝",
5
+ "main": "./dist/index.cjs",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": {
11
+ "types": "./dist/index.d.ts",
12
+ "default": "./dist/index.mjs"
13
+ },
14
+ "require": {
15
+ "types": "./dist/index.d.ts",
16
+ "default": "./dist/index.cjs"
17
+ }
18
+ },
19
+ "./tailwind": "./tailwind.config.js"
20
+ },
21
+ "files": [
22
+ "dist",
23
+ "tailwind.config.js",
24
+ "README.md"
25
+ ],
26
+ "repository": {
27
+ "type": "git",
28
+ "url": "git+https://github.com/forsyteco/product-ui.git"
29
+ },
30
+ "keywords": [
31
+ "react",
32
+ "components",
33
+ "ui",
34
+ "tailwind"
35
+ ],
36
+ "author": "etiCloud Ltd",
37
+ "license": "MIT",
38
+ "dependencies": {
39
+ "@headlessui/react": "^2.2.9",
40
+ "@tailwindcss/vite": "^4.1.17",
41
+ "boring-avatars": "^2.0.4",
42
+ "class-variance-authority": "^0.7.1",
43
+ "clsx": "^2.1.1",
44
+ "dayjs": "^1.11.19",
45
+ "lucide-react": "^0.556.0",
46
+ "radix-ui": "^1.4.3",
47
+ "react": "^19.2.1",
48
+ "react-day-picker": "^9.12.0",
49
+ "react-dom": "^19.2.1",
50
+ "sonner": "^2.0.7",
51
+ "tailwind-merge": "^3.4.0"
52
+ },
53
+ "devDependencies": {
54
+ "@storybook/addon-vitest": "^10.1.4",
55
+ "@storybook/react-vite": "^10.1.4",
56
+ "@testing-library/jest-dom": "^6.9.1",
57
+ "@testing-library/react": "^16.3.0",
58
+ "@types/react": "19",
59
+ "@vitejs/plugin-react": "^4.3.4",
60
+ "@vitest/browser-playwright": "^4.0.15",
61
+ "@vitest/coverage-v8": "^4.0.15",
62
+ "@vitest/ui": "^4.0.15",
63
+ "jsdom": "^27.2.0",
64
+ "playwright": "^1.57.0",
65
+ "storybook": "^10.1.4",
66
+ "tailwindcss": "^4.1.17",
67
+ "vite": "^7.2.6",
68
+ "vite-plugin-dts": "^4.3.0",
69
+ "vitest": "^4.0.15"
70
+ },
71
+ "scripts": {
72
+ "build": "vite build",
73
+ "check-types": "tsc -p tsconfig.build.json --noEmit",
74
+ "lint": "tsc -p tsconfig.build.json --noEmit",
75
+ "test": "vitest run -c vitest.unit.config.ts",
76
+ "test:cov": "vitest run -c vitest.unit.config.ts --coverage",
77
+ "storybook": "storybook dev -p 6006",
78
+ "build-storybook": "storybook build"
79
+ },
80
+ "peerDependencies": {
81
+ "react": ">=19.2.1 <20",
82
+ "react-dom": ">=19.2.1 <20",
83
+ "tailwindcss": ">=4.1.17 <5"
84
+ }
85
+ }
@@ -0,0 +1,10 @@
1
+ /** @type {import('tailwindcss').Config} */
2
+ export default {
3
+ content: [
4
+ './src/**/*.{js,jsx,ts,tsx}',
5
+ './.storybook/**/*.{js,jsx,ts,tsx}',
6
+ ],
7
+ darkMode: ['class'],
8
+ plugins: [],
9
+ }
10
+