@e-burgos/tucu-ui 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.
Files changed (248) hide show
  1. package/README.md +1113 -0
  2. package/components/auth/forget-password-form.d.ts +16 -0
  3. package/components/auth/index.d.ts +4 -0
  4. package/components/auth/reset-pin-form.d.ts +18 -0
  5. package/components/auth/sign-in-form.d.ts +18 -0
  6. package/components/auth/sign-up-form.d.ts +21 -0
  7. package/components/blockchain/coin-card.d.ts +17 -0
  8. package/components/blockchain/coin-info-card.d.ts +15 -0
  9. package/components/blockchain/coin-listbox.d.ts +14 -0
  10. package/components/blockchain/collection-card.d.ts +19 -0
  11. package/components/blockchain/collection-select-list.d.ts +11 -0
  12. package/components/blockchain/currency-swap-icons.d.ts +7 -0
  13. package/components/blockchain/index.d.ts +9 -0
  14. package/components/blockchain/live-price-feed.d.ts +24 -0
  15. package/components/blockchain/nft-grid.d.ts +11 -0
  16. package/components/blockchain/transaction-info.d.ts +7 -0
  17. package/components/buttons/button/button-drip.d.ts +12 -0
  18. package/components/buttons/button/button-loader.d.ts +9 -0
  19. package/components/buttons/button/index.d.ts +23 -0
  20. package/components/buttons/hamburger.d.ts +6 -0
  21. package/components/buttons/index.d.ts +6 -0
  22. package/components/buttons/topup-button.d.ts +8 -0
  23. package/components/cards/author-card.d.ts +7 -0
  24. package/components/cards/card-container.d.ts +7 -0
  25. package/components/cards/card-title.d.ts +9 -0
  26. package/components/cards/index.d.ts +5 -0
  27. package/components/cards/panel-action-card.d.ts +16 -0
  28. package/components/cards/panel-card.d.ts +8 -0
  29. package/components/carousel/carousel-cards.d.ts +19 -0
  30. package/components/carousel/carousel-component.d.ts +41 -0
  31. package/components/carousel/carousel-image.d.ts +18 -0
  32. package/components/carousel/index.d.ts +3 -0
  33. package/components/common/avatar.d.ts +12 -0
  34. package/components/common/badge.d.ts +8 -0
  35. package/components/common/collapse.d.ts +7 -0
  36. package/components/common/index.d.ts +7 -0
  37. package/components/common/menu-item.d.ts +21 -0
  38. package/components/common/scrollbar-native.d.ts +14 -0
  39. package/components/common/scrollbar.d.ts +14 -0
  40. package/components/common/skeleton.d.ts +6 -0
  41. package/components/dialog/drawer-container.d.ts +8 -0
  42. package/components/dialog/drawer.d.ts +19 -0
  43. package/components/dialog/index.d.ts +5 -0
  44. package/components/dialog/modal.d.ts +21 -0
  45. package/components/dialog/sidebar-menu.d.ts +13 -0
  46. package/components/dialog/sidebar.d.ts +12 -0
  47. package/components/forms/checkbox.d.ts +38 -0
  48. package/components/forms/field-error-text.d.ts +19 -0
  49. package/components/forms/field-helper-text.d.ts +18 -0
  50. package/components/forms/file-input.d.ts +8 -0
  51. package/components/forms/form-system/example/error-container-example.d.ts +3 -0
  52. package/components/forms/form-system/example/form-example.d.ts +3 -0
  53. package/components/forms/form-system/example/form-methods-example.d.ts +3 -0
  54. package/components/forms/form-system/example/validations.d.ts +14 -0
  55. package/components/forms/form-system/form-field.d.ts +14 -0
  56. package/components/forms/form-system/form.d.ts +13 -0
  57. package/components/forms/form-system/hook-form.d.ts +3 -0
  58. package/components/forms/form-system/index.d.ts +10 -0
  59. package/components/forms/form-system/types/dependencies.type.d.ts +11 -0
  60. package/components/forms/form-system/types/extend-react-hook-form.type.d.ts +16 -0
  61. package/components/forms/form-system/types/index.d.ts +3 -0
  62. package/components/forms/form-system/types/validations.type.d.ts +9 -0
  63. package/components/forms/index.d.ts +17 -0
  64. package/components/forms/input-label.d.ts +9 -0
  65. package/components/forms/input-searcher.d.ts +7 -0
  66. package/components/forms/input-select.d.ts +24 -0
  67. package/components/forms/input-switch.d.ts +13 -0
  68. package/components/forms/input.d.ts +14 -0
  69. package/components/forms/pin-code.d.ts +97 -0
  70. package/components/forms/radio-group.d.ts +56 -0
  71. package/components/forms/radio.d.ts +87 -0
  72. package/components/forms/textarea.d.ts +10 -0
  73. package/components/forms/toggle-bar.d.ts +9 -0
  74. package/components/forms/uploader-two.d.ts +44 -0
  75. package/components/forms/uploader.d.ts +2 -0
  76. package/components/icons/arrow-link-icon.d.ts +1 -0
  77. package/components/icons/arrow-right.d.ts +1 -0
  78. package/components/icons/arrow-up.d.ts +1 -0
  79. package/components/icons/bitcoin.d.ts +1 -0
  80. package/components/icons/bnb.d.ts +1 -0
  81. package/components/icons/book.d.ts +1 -0
  82. package/components/icons/brands/facebook.d.ts +1 -0
  83. package/components/icons/brands/github.d.ts +1 -0
  84. package/components/icons/brands/instagram.d.ts +1 -0
  85. package/components/icons/brands/telegram.d.ts +1 -0
  86. package/components/icons/brands/twitter.d.ts +1 -0
  87. package/components/icons/calendar-icon.d.ts +1 -0
  88. package/components/icons/cardano.d.ts +1 -0
  89. package/components/icons/check.d.ts +1 -0
  90. package/components/icons/checkmark.d.ts +1 -0
  91. package/components/icons/chevron-down.d.ts +1 -0
  92. package/components/icons/chevron-forward.d.ts +1 -0
  93. package/components/icons/chevron-right.d.ts +1 -0
  94. package/components/icons/classic-layout-icon.d.ts +1 -0
  95. package/components/icons/close.d.ts +1 -0
  96. package/components/icons/compact-grid.d.ts +1 -0
  97. package/components/icons/compass.d.ts +1 -0
  98. package/components/icons/copy.d.ts +1 -0
  99. package/components/icons/disk.d.ts +1 -0
  100. package/components/icons/document.d.ts +1 -0
  101. package/components/icons/doge.d.ts +1 -0
  102. package/components/icons/dots-icon.d.ts +1 -0
  103. package/components/icons/ethereum-dark.d.ts +1 -0
  104. package/components/icons/ethereum.d.ts +1 -0
  105. package/components/icons/exchange.d.ts +1 -0
  106. package/components/icons/export-icon.d.ts +1 -0
  107. package/components/icons/external-link.d.ts +1 -0
  108. package/components/icons/eye.d.ts +1 -0
  109. package/components/icons/eyeslash.d.ts +1 -0
  110. package/components/icons/farm.d.ts +1 -0
  111. package/components/icons/flash.d.ts +1 -0
  112. package/components/icons/flow.d.ts +1 -0
  113. package/components/icons/gas-icon.d.ts +1 -0
  114. package/components/icons/guide-icon.d.ts +1 -0
  115. package/components/icons/history.d.ts +1 -0
  116. package/components/icons/home.d.ts +1 -0
  117. package/components/icons/horizontal-three-dots.d.ts +1 -0
  118. package/components/icons/icon-us-flag.d.ts +1 -0
  119. package/components/icons/index.d.ts +97 -0
  120. package/components/icons/info-circle.d.ts +1 -0
  121. package/components/icons/info-icon.d.ts +1 -0
  122. package/components/icons/left-align.d.ts +1 -0
  123. package/components/icons/level-icon.d.ts +1 -0
  124. package/components/icons/link-icon.d.ts +1 -0
  125. package/components/icons/live-pricing.d.ts +1 -0
  126. package/components/icons/lock-icon.d.ts +1 -0
  127. package/components/icons/long-arrow-left.d.ts +1 -0
  128. package/components/icons/long-arrow-right.d.ts +1 -0
  129. package/components/icons/long-arrow-up.d.ts +1 -0
  130. package/components/icons/loop-icon.d.ts +1 -0
  131. package/components/icons/lucide-react/index.d.ts +1 -0
  132. package/components/icons/media-play-icon.d.ts +1 -0
  133. package/components/icons/menu-icon.d.ts +2 -0
  134. package/components/icons/minimal-layout-icon.d.ts +1 -0
  135. package/components/icons/modern-layout-icon.d.ts +1 -0
  136. package/components/icons/moon.d.ts +1 -0
  137. package/components/icons/more-icon.d.ts +1 -0
  138. package/components/icons/normal-grid.d.ts +1 -0
  139. package/components/icons/option.d.ts +1 -0
  140. package/components/icons/play-icon.d.ts +1 -0
  141. package/components/icons/plus-circle.d.ts +1 -0
  142. package/components/icons/plus.d.ts +1 -0
  143. package/components/icons/pool.d.ts +1 -0
  144. package/components/icons/power.d.ts +1 -0
  145. package/components/icons/profile.d.ts +1 -0
  146. package/components/icons/question-icon.d.ts +1 -0
  147. package/components/icons/question-solid-icon.d.ts +1 -0
  148. package/components/icons/range-icon.d.ts +1 -0
  149. package/components/icons/refresh.d.ts +1 -0
  150. package/components/icons/retro-layout-icon.d.ts +1 -0
  151. package/components/icons/right-align.d.ts +1 -0
  152. package/components/icons/sand-clock.d.ts +1 -0
  153. package/components/icons/search.d.ts +1 -0
  154. package/components/icons/shut-down-icon.d.ts +1 -0
  155. package/components/icons/spike-bar.d.ts +1 -0
  156. package/components/icons/star-fill.d.ts +1 -0
  157. package/components/icons/star.d.ts +1 -0
  158. package/components/icons/sun.d.ts +1 -0
  159. package/components/icons/swap-icon.d.ts +1 -0
  160. package/components/icons/tag-icon.d.ts +1 -0
  161. package/components/icons/tag.d.ts +1 -0
  162. package/components/icons/tether.d.ts +1 -0
  163. package/components/icons/trading-bot-icon.d.ts +1 -0
  164. package/components/icons/trend-arrow-down-icon.d.ts +1 -0
  165. package/components/icons/trend-arrow-up-icon.d.ts +1 -0
  166. package/components/icons/tucu.d.ts +1 -0
  167. package/components/icons/unlocked.d.ts +1 -0
  168. package/components/icons/upload.d.ts +1 -0
  169. package/components/icons/usdc.d.ts +1 -0
  170. package/components/icons/verified-icon.d.ts +1 -0
  171. package/components/icons/verified.d.ts +1 -0
  172. package/components/icons/vertical-three-dots.d.ts +1 -0
  173. package/components/icons/vote-icon.d.ts +1 -0
  174. package/components/icons/warning.d.ts +1 -0
  175. package/components/index.d.ts +16 -0
  176. package/components/layouts/authentication/layout.d.ts +5 -0
  177. package/components/layouts/classic/layout.d.ts +16 -0
  178. package/components/layouts/header/header.d.ts +16 -0
  179. package/components/layouts/menus/collapsible-menu.d.ts +3 -0
  180. package/components/layouts/menus/expandable-sidebar.d.ts +8 -0
  181. package/components/layouts/menus/minimal-nav-menu.d.ts +5 -0
  182. package/components/layouts/minimal/layout.d.ts +24 -0
  183. package/components/layouts/root-layout.d.ts +18 -0
  184. package/components/links/active-link.d.ts +7 -0
  185. package/components/links/anchor-link.d.ts +3 -0
  186. package/components/links/index.d.ts +2 -0
  187. package/components/loaders/index.d.ts +3 -0
  188. package/components/loaders/loader.d.ts +20 -0
  189. package/components/loaders/progressbar.d.ts +64 -0
  190. package/components/loaders/spinner.d.ts +15 -0
  191. package/components/logos/index.d.ts +2 -0
  192. package/components/logos/logo-theme.d.ts +5 -0
  193. package/components/logos/logo.d.ts +13 -0
  194. package/components/notifications/alert.d.ts +12 -0
  195. package/components/notifications/index.d.ts +3 -0
  196. package/components/notifications/notification-card.d.ts +14 -0
  197. package/components/notifications/toast.d.ts +3 -0
  198. package/components/tabs/index.d.ts +3 -0
  199. package/components/tabs/param-tab.d.ts +13 -0
  200. package/components/tabs/tab-select.d.ts +10 -0
  201. package/components/tabs/tab.d.ts +20 -0
  202. package/components/typography/index.d.ts +39 -0
  203. package/components/utils/code-block.d.ts +8 -0
  204. package/components/utils/image.d.ts +16 -0
  205. package/components/utils/index.d.ts +5 -0
  206. package/components/utils/reveal-content.d.ts +6 -0
  207. package/components/utils/scroll-to-top.d.ts +5 -0
  208. package/components/utils/test-brand-classes.d.ts +1 -0
  209. package/hooks/index.d.ts +13 -0
  210. package/hooks/use-breakpoint.d.ts +1 -0
  211. package/hooks/use-click-away.d.ts +1 -0
  212. package/hooks/use-copy-to-clipboard.d.ts +1 -0
  213. package/hooks/use-element-size.d.ts +9 -0
  214. package/hooks/use-event-listener.d.ts +7 -0
  215. package/hooks/use-grid-switcher.d.ts +6 -0
  216. package/hooks/use-is-mobile.d.ts +4 -0
  217. package/hooks/use-is-mounted.d.ts +1 -0
  218. package/hooks/use-lock-body-scroll.d.ts +1 -0
  219. package/hooks/use-measure.d.ts +1 -0
  220. package/hooks/use-scrollable-slider.d.ts +7 -0
  221. package/hooks/use-toast-store.d.ts +17 -0
  222. package/hooks/use-window-scroll.d.ts +1 -0
  223. package/index.css +1 -0
  224. package/index.d.ts +10 -0
  225. package/index.js +133 -0
  226. package/index.mjs +44201 -0
  227. package/libs/framer-motion/fade-in-bottom.d.ts +18 -0
  228. package/libs/index.d.ts +3 -0
  229. package/libs/local-storage/index.d.ts +7 -0
  230. package/libs/range-map.d.ts +1 -0
  231. package/lucide-react/index.d.ts +1 -0
  232. package/package.json +76 -0
  233. package/react-router-dom/index.d.ts +1 -0
  234. package/storybook/components/StoryContainer.d.ts +6 -0
  235. package/storybook/components/pages/Accessibility.d.ts +1 -0
  236. package/storybook/components/pages/Introduction.d.ts +1 -0
  237. package/storybook/hooks/useDummy.d.ts +34 -0
  238. package/swiper-react/index.d.ts +2 -0
  239. package/themes/components/pages/not-found.d.ts +2 -0
  240. package/themes/components/theme-provider/app-routes.d.ts +17 -0
  241. package/themes/components/theme-provider/index.d.ts +26 -0
  242. package/themes/components/theme-provider/settings-button.d.ts +2 -0
  243. package/themes/components/theme-provider/settings-drawer.d.ts +3 -0
  244. package/themes/config.d.ts +106 -0
  245. package/themes/index.d.ts +9 -0
  246. package/themes/use-direction.d.ts +1 -0
  247. package/themes/use-theme-color.d.ts +10 -0
  248. package/themes/use-theme.d.ts +83 -0
@@ -0,0 +1,38 @@
1
+ export interface CheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> {
2
+ /** The size of the component */
3
+ size?: 'sm' | 'md' | 'lg';
4
+ /** Change input color */
5
+ color?: 'primary' | 'secondary' | 'danger' | 'info' | 'success' | 'warning';
6
+ /** Available directions of the label are: */
7
+ labelPlacement?: 'start' | 'end';
8
+ /** Whether the input is disabled */
9
+ disabled?: boolean;
10
+ /** Set field label */
11
+ label?: React.ReactNode;
12
+ /** Show error message using this prop */
13
+ error?: string;
14
+ /** Add helper text. It could be string or a React component */
15
+ helperText?: React.ReactNode;
16
+ /** Use className prop to apply style for entire component */
17
+ className?: string;
18
+ /** Use activeClassName prop to apply style on active component from checkboxGroup */
19
+ activeClassName?: string;
20
+ /** Use containerClassName prop to apply some additional style for label and checkbox container */
21
+ containerClassName?: string;
22
+ /** Use iconClassName prop to apply some additonal style for check mark icon */
23
+ iconClassName?: string;
24
+ /** Use labelClassName prop to apply some addition style for the field label */
25
+ labelClassName?: string;
26
+ /** Add custom classes for the input filed extra style */
27
+ inputClassName?: string;
28
+ /** This prop allows you to customize the error message style */
29
+ errorClassName?: string;
30
+ /** This prop allows you to customize the helper message style */
31
+ helperClassName?: string;
32
+ }
33
+ /**
34
+ * A simplified checkbox component that uses a single color-based styling approach.
35
+ * The checkbox changes appearance based on its state (unchecked, checked, hover, focus, disabled).
36
+ */
37
+ export declare const Checkbox: import('react').ForwardRefExoticComponent<CheckboxProps & import('react').RefAttributes<HTMLInputElement>>;
38
+ export default Checkbox;
@@ -0,0 +1,19 @@
1
+ import { default as React } from 'react';
2
+ declare const fieldErrorClasses: {
3
+ base: string;
4
+ size: {
5
+ sm: string;
6
+ DEFAULT: string;
7
+ lg: string;
8
+ xl: string;
9
+ };
10
+ };
11
+ export interface FieldErrorProps extends React.HTMLAttributes<HTMLDivElement | HTMLSpanElement> {
12
+ tag?: 'div' | 'span';
13
+ error: string | null | undefined;
14
+ size?: keyof typeof fieldErrorClasses.size;
15
+ className?: string;
16
+ id?: string;
17
+ }
18
+ export declare function FieldError({ tag, error, size, className, id, ...props }: FieldErrorProps): import("react/jsx-runtime").JSX.Element;
19
+ export default FieldError;
@@ -0,0 +1,18 @@
1
+ import { default as React } from 'react';
2
+ declare const helperTextClasses: {
3
+ base: string;
4
+ size: {
5
+ sm: string;
6
+ DEFAULT: string;
7
+ lg: string;
8
+ xl: string;
9
+ };
10
+ };
11
+ export interface FieldHelperTextProps extends React.HTMLAttributes<HTMLDivElement | HTMLSpanElement> {
12
+ tag?: 'div' | 'span';
13
+ size?: keyof typeof helperTextClasses.size;
14
+ className?: string;
15
+ id?: string;
16
+ }
17
+ export declare function FieldHelperText({ size, tag, children, className, id, ...props }: React.PropsWithChildren<FieldHelperTextProps>): import("react/jsx-runtime").JSX.Element;
18
+ export default FieldHelperText;
@@ -0,0 +1,8 @@
1
+ export declare function FileInput({ className, label, placeholderText, multiple, accept, }: {
2
+ className?: string;
3
+ label?: string;
4
+ placeholderText?: string;
5
+ multiple?: boolean;
6
+ accept?: 'img' | 'pdf' | 'csv' | 'imgAndPdf' | 'all';
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ export default FileInput;
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+ export declare const ErrorContainerExample: React.FC;
3
+ export default ErrorContainerExample;
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+ export declare const FormExample: React.FC;
3
+ export default FormExample;
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+ export declare const FormMethodsExample: React.FC;
3
+ export default FormMethodsExample;
@@ -0,0 +1,14 @@
1
+ import { FormValidations } from '../types/validations.type';
2
+ export interface FormValues {
3
+ name: string;
4
+ email: string;
5
+ password: string;
6
+ message: string;
7
+ acceptTerms: boolean;
8
+ age: number;
9
+ gender: string;
10
+ isDeveloper: boolean;
11
+ country: string;
12
+ }
13
+ export declare const defaultValues: FormValues;
14
+ export declare const formValidations: FormValidations<FormValues>;
@@ -0,0 +1,14 @@
1
+ import { default as React } from 'react';
2
+ import { FieldValues, Path, RegisterOptions } from './hook-form';
3
+ export interface FormFieldProps<TFormValues extends FieldValues> {
4
+ name: Path<TFormValues>;
5
+ label?: string;
6
+ helperText?: string;
7
+ className?: string;
8
+ rules?: Omit<RegisterOptions<TFormValues, Path<TFormValues>>, 'valueAsNumber' | 'valueAsDate' | 'setValueAs' | 'disabled'>;
9
+ children: React.ReactElement;
10
+ hideError?: boolean;
11
+ showHelper?: boolean;
12
+ }
13
+ export declare const FormField: <TFormValues extends FieldValues = FieldValues>({ name, label, helperText, className, rules, children, hideError, showHelper, }: FormFieldProps<TFormValues>) => import("react/jsx-runtime").JSX.Element;
14
+ export default FormField;
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ import { SubmitHandler, UseFormProps, FieldValues, UseFormReturn } from './hook-form';
3
+ import { FormValidations } from './types/validations.type';
4
+ export type RenderFunction<TFormValues extends FieldValues> = (methods: UseFormReturn<TFormValues>) => React.ReactNode;
5
+ type FormProps<TFormValues extends FieldValues> = {
6
+ onSubmit: SubmitHandler<TFormValues>;
7
+ children: React.ReactNode | RenderFunction<TFormValues>;
8
+ useFormProps?: UseFormProps<TFormValues>;
9
+ validationSchema?: FormValidations<TFormValues>;
10
+ className?: string;
11
+ } & Omit<React.FormHTMLAttributes<HTMLFormElement>, 'onSubmit'>;
12
+ export declare const Form: <TFormValues extends FieldValues = FieldValues>({ onSubmit, children, useFormProps, validationSchema, className, ...formProps }: FormProps<TFormValues>) => import("react/jsx-runtime").JSX.Element;
13
+ export default Form;
@@ -0,0 +1,3 @@
1
+ import { SubmitHandler, UseFormProps, FieldValues, UseFormReturn, Controller, useFormContext, Path, FieldError as FormFieldError, RegisterOptions, FieldErrors } from 'react-hook-form';
2
+ export type { FormFieldError, FieldErrors, RegisterOptions, Path, FieldValues, UseFormReturn, UseFormProps, SubmitHandler, };
3
+ export { Controller, useFormContext };
@@ -0,0 +1,10 @@
1
+ export * from './example/error-container-example';
2
+ export * from './example/form-example';
3
+ export * from './example/form-methods-example';
4
+ export * from './example/validations';
5
+ export * from './form-field';
6
+ export * from './form';
7
+ export * from './types/dependencies.type';
8
+ export * from './types/extend-react-hook-form.type';
9
+ export * from './types/validations.type';
10
+ export * from './hook-form';
@@ -0,0 +1,11 @@
1
+ import { FieldValues, UseFormReturn } from '../hook-form';
2
+ import { FieldPathInternal, ArrayKey } from './extend-react-hook-form.type';
3
+ export type DependencyAction<TFieldValues extends FieldValues> = (formValues: Partial<TFieldValues>, methods: UseFormReturn<TFieldValues>, options: {
4
+ index: null | number;
5
+ name: string | null;
6
+ }) => void;
7
+ export type Dependency<TFieldValues extends FieldValues = FieldValues> = {
8
+ dependencies: FieldPathInternal<TFieldValues, ArrayKey>[];
9
+ callback: DependencyAction<TFieldValues>;
10
+ };
11
+ export type FormDependencies<TFieldValues extends FieldValues = FieldValues> = Dependency<TFieldValues>[];
@@ -0,0 +1,16 @@
1
+ import { IsTuple, TupleKeys } from 'react-hook-form/dist/types/path/common';
2
+ import { BrowserNativeObject, IsEqual, Primitive } from 'react-hook-form/dist/types/utils';
3
+ import { ValidateResult } from 'react-hook-form/dist/types/validator';
4
+ export type ArrayKey = '[number]';
5
+ type AnyIsEqual<T1, T2> = T1 extends T2 ? IsEqual<T1, T2> extends true ? true : never : never;
6
+ type PathImpl<K extends string | number, V, TraversedTypes, ArrayK extends string | number> = V extends Primitive | BrowserNativeObject ? `${K}` : true extends AnyIsEqual<TraversedTypes, V> ? `${K}` : `${K}` | `${K}.${FieldPathInternal<V, ArrayK, TraversedTypes | V>}`;
7
+ export type FieldPathInternal<T, ArrayK extends string | number, TraversedTypes = T> = T extends ReadonlyArray<infer V> ? IsTuple<T> extends true ? {
8
+ [K in TupleKeys<T>]-?: PathImpl<K & string, T[K], TraversedTypes, ArrayK>;
9
+ }[TupleKeys<T>] : PathImpl<ArrayK, V, TraversedTypes, ArrayK> : {
10
+ [K in keyof T]-?: PathImpl<K & string, T[K], TraversedTypes, ArrayK>;
11
+ }[keyof T];
12
+ export type InternalValidate<TFieldValue, TFormValues> = (value: TFieldValue, formValues: TFormValues, options: {
13
+ index: number | null;
14
+ name: string | null;
15
+ }) => ValidateResult | Promise<ValidateResult>;
16
+ export type { IsTuple, TupleKeys, BrowserNativeObject, IsEqual, Primitive, ValidateResult, };
@@ -0,0 +1,3 @@
1
+ export * from './dependencies.type';
2
+ export * from './extend-react-hook-form.type';
3
+ export * from './validations.type';
@@ -0,0 +1,9 @@
1
+ import { FieldValues, RegisterOptions } from 'react-hook-form';
2
+ import { FieldPath, FieldPathValue } from 'react-hook-form/dist/types/path';
3
+ import { FieldPathInternal, ArrayKey, InternalValidate } from './extend-react-hook-form.type';
4
+ export type Rules<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<RegisterOptions<TFieldValues>, 'valueAsNumber' | 'valueAsDate' | 'setValueAs' | 'disabled' | 'validate'> & {
5
+ validate?: InternalValidate<FieldPathValue<TFieldValues, TFieldName>, TFieldValues> | Record<never, InternalValidate<FieldPathValue<TFieldValues, TFieldName>, TFieldValues>>;
6
+ };
7
+ export type FormValidations<TFieldValues extends FieldValues = FieldValues> = {
8
+ [key in FieldPathInternal<TFieldValues, ArrayKey>]?: Rules<TFieldValues>;
9
+ };
@@ -0,0 +1,17 @@
1
+ export * from './checkbox';
2
+ export * from './field-error-text';
3
+ export * from './field-helper-text';
4
+ export * from './file-input';
5
+ export * from './input-label';
6
+ export * from './input-searcher';
7
+ export * from './input-switch';
8
+ export * from './input';
9
+ export * from './input-select';
10
+ export * from './pin-code';
11
+ export * from './radio';
12
+ export * from './radio-group';
13
+ export * from './textarea';
14
+ export * from './toggle-bar';
15
+ export * from './uploader-two';
16
+ export * from './uploader';
17
+ export * from './form-system';
@@ -0,0 +1,9 @@
1
+ export interface InputLabelProps {
2
+ title: string;
3
+ subTitle?: string;
4
+ important?: boolean;
5
+ className?: string;
6
+ titleClassName?: string;
7
+ }
8
+ export declare function InputLabel({ title, subTitle, important, className, titleClassName, }: InputLabelProps): import("react/jsx-runtime").JSX.Element;
9
+ export default InputLabel;
@@ -0,0 +1,7 @@
1
+ import { default as React } from 'react';
2
+ export declare function InputSearcher({ value: initialValue, onChange, debounce, ...props }: {
3
+ value: string | number;
4
+ onChange: (value: string | number) => void;
5
+ debounce?: number;
6
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'>): import("react/jsx-runtime").JSX.Element;
7
+ export default InputSearcher;
@@ -0,0 +1,24 @@
1
+ export type InputSelectOption = {
2
+ name: string;
3
+ value: string;
4
+ };
5
+ export interface InputSelectTypes {
6
+ options: InputSelectOption[];
7
+ selectedOption?: InputSelectOption;
8
+ onChange?: React.Dispatch<React.SetStateAction<InputSelectOption>> | ((value: InputSelectOption) => void);
9
+ children?: React.ReactNode;
10
+ onSelect?: (value: string) => void;
11
+ variant?: 'ghost' | 'solid' | 'transparent';
12
+ className?: string;
13
+ disabled?: boolean;
14
+ label?: string;
15
+ useUppercaseLabel?: boolean;
16
+ required?: boolean;
17
+ value?: string;
18
+ name?: string;
19
+ errorMessage?: string;
20
+ helperText?: string;
21
+ placeholder?: string;
22
+ }
23
+ export declare function InputSelect({ options, onChange, onSelect, variant, selectedOption: propSelectedOption, className, children, disabled, label, useUppercaseLabel, required, value, name, errorMessage, helperText, placeholder, }: InputSelectTypes): import("react/jsx-runtime").JSX.Element;
24
+ export default InputSelect;
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ export interface InputSwitchProps {
3
+ label?: string;
4
+ offLabel?: string;
5
+ onLabel?: string;
6
+ checked: boolean;
7
+ onChange: (checked: boolean) => void;
8
+ className?: string;
9
+ errorMessage?: string;
10
+ helperText?: string;
11
+ }
12
+ export declare const InputSwitch: React.FC<InputSwitchProps>;
13
+ export default InputSwitch;
@@ -0,0 +1,14 @@
1
+ export type InputProps = React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement> & {
2
+ label?: string;
3
+ error?: string;
4
+ className?: string;
5
+ inputClassName?: string;
6
+ labelClassName?: string;
7
+ useUppercaseLabel?: boolean;
8
+ helperText?: string;
9
+ suffix?: React.ReactNode;
10
+ suffixClassName?: string;
11
+ icon?: React.ReactNode;
12
+ };
13
+ export declare const Input: import('react').ForwardRefExoticComponent<Omit<InputProps, "ref"> & import('react').RefAttributes<HTMLInputElement>>;
14
+ export default Input;
@@ -0,0 +1,97 @@
1
+ import { default as React } from 'react';
2
+ declare const inputClasses: {
3
+ base: string;
4
+ error: string;
5
+ size: {
6
+ sm: string;
7
+ DEFAULT: string;
8
+ lg: string;
9
+ xl: string;
10
+ };
11
+ rounded: {
12
+ none: string;
13
+ sm: string;
14
+ DEFAULT: string;
15
+ lg: string;
16
+ full: string;
17
+ };
18
+ variant: {
19
+ active: {
20
+ base: string;
21
+ color: {
22
+ DEFAULT: string;
23
+ primary: string;
24
+ secondary: string;
25
+ danger: string;
26
+ info: string;
27
+ success: string;
28
+ warning: string;
29
+ };
30
+ };
31
+ flat: {
32
+ base: string;
33
+ color: {
34
+ DEFAULT: string;
35
+ primary: string;
36
+ secondary: string;
37
+ danger: string;
38
+ info: string;
39
+ success: string;
40
+ warning: string;
41
+ };
42
+ };
43
+ outline: {
44
+ base: string;
45
+ color: {
46
+ DEFAULT: string;
47
+ primary: string;
48
+ secondary: string;
49
+ danger: string;
50
+ info: string;
51
+ success: string;
52
+ warning: string;
53
+ };
54
+ };
55
+ };
56
+ };
57
+ export interface PinCodeProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'onChange'> {
58
+ /** Current value of the pin code */
59
+ value?: string;
60
+ /** Callback function called when pin code changes */
61
+ onChange?: (value: string) => void;
62
+ /** This Pin Code component only support these two types */
63
+ type?: 'text' | 'number';
64
+ /** Mask and unmask to hide and show pin code */
65
+ mask?: boolean;
66
+ /** Set pin code length */
67
+ length?: number;
68
+ /** Make pin code horizontally center */
69
+ center?: boolean;
70
+ /** Set placeholder text */
71
+ placeholder?: string;
72
+ /** The size of the component. `"sm"` is equivalent to the dense input styling. */
73
+ size?: keyof typeof inputClasses.size;
74
+ /** The rounded variants are: */
75
+ rounded?: keyof typeof inputClasses.rounded;
76
+ /** The variants of the component are: */
77
+ variant?: keyof typeof inputClasses.variant;
78
+ /** Change input color */
79
+ color?: keyof (typeof inputClasses.variant)['active']['color'];
80
+ /** Show error message using this prop */
81
+ error?: string;
82
+ /** Add custom classes for the input filed extra style */
83
+ inputClassName?: string;
84
+ /** This prop allows you to customize the error message style */
85
+ errorClassName?: string;
86
+ /** This prop allows you to add a helper text to the pin code component */
87
+ helperText?: string;
88
+ /** This prop allows you to add a helper text to the pin code component */
89
+ helperTextClassName?: string;
90
+ }
91
+ /**
92
+ * A basic widget for getting pin code. Here is the API documentation of the Pin Code component.
93
+ * And the rest of the props of PinCode are the same as the original html input field.
94
+ * You can use props like `disabled`, `placeholder`, `defaultValue` etc.
95
+ */
96
+ export declare function PinCode({ type, value, onChange, mask, length, center, size, rounded, variant, color, placeholder, error, className, inputClassName, errorClassName, helperText, helperTextClassName, ...props }: PinCodeProps): import("react/jsx-runtime").JSX.Element;
97
+ export default PinCode;
@@ -0,0 +1,56 @@
1
+ import { default as React } from 'react';
2
+ import { RadioProps } from './radio';
3
+ export interface RadioGroupProps {
4
+ /** Set field value */
5
+ value?: string | number;
6
+ /** Set default value for uncontrolled radio group */
7
+ defaultValue?: string | number;
8
+ /** The variants of the component are: */
9
+ variant?: RadioProps['variant'];
10
+ /** The size of the component. `"sm"` is equivalent to the dense input styling. */
11
+ size?: RadioProps['size'];
12
+ /** Change radio button color */
13
+ color?: RadioProps['color'];
14
+ /** Available directions of the label are: */
15
+ labelPlacement?: RadioProps['labelPlacement'];
16
+ /** Whether the radio group is disabled */
17
+ disabled?: boolean;
18
+ /** Set field label */
19
+ label?: React.ReactNode;
20
+ /** Show error message using this prop */
21
+ error?: string;
22
+ /** Add helper text. It could be string or a React component */
23
+ helperText?: React.ReactNode;
24
+ /** Use className prop to apply style for entire component */
25
+ className?: string;
26
+ /** Use containerClassName prop to apply some additional style for radio group container */
27
+ containerClassName?: string;
28
+ /** Use labelClassName prop to apply some addition style for the field label */
29
+ labelClassName?: string;
30
+ /** This prop allows you to customize the error message style */
31
+ errorClassName?: string;
32
+ /** This prop allows you to customize the helper message style */
33
+ helperClassName?: string;
34
+ /** Layout direction for radio options */
35
+ direction?: 'vertical' | 'horizontal';
36
+ /** Gap between radio options */
37
+ gap?: 'sm' | 'md' | 'lg' | 'xl';
38
+ /** Radio options */
39
+ options?: Array<{
40
+ name?: string;
41
+ label: React.ReactNode;
42
+ value: string | number;
43
+ disabled?: boolean;
44
+ [key: string]: any;
45
+ }>;
46
+ /** Children radio components */
47
+ children?: React.ReactNode;
48
+ /** onChange callback function */
49
+ onChange?: (value: string | number) => void;
50
+ }
51
+ /**
52
+ * A group of radio components that allows users to select one option from a set.
53
+ * RadioGroup can be used with either the options prop or with Radio components as children.
54
+ */
55
+ export declare const RadioGroup: React.ForwardRefExoticComponent<RadioGroupProps & React.RefAttributes<HTMLDivElement>>;
56
+ export default RadioGroup;
@@ -0,0 +1,87 @@
1
+ import { default as React } from 'react';
2
+ declare const inputClasses: {
3
+ base: string;
4
+ size: {
5
+ sm: string;
6
+ DEFAULT: string;
7
+ lg: string;
8
+ xl: string;
9
+ };
10
+ variant: {
11
+ outline: {
12
+ base: string;
13
+ color: {
14
+ DEFAULT: string;
15
+ primary: string;
16
+ secondary: string;
17
+ danger: string;
18
+ info: string;
19
+ success: string;
20
+ warning: string;
21
+ };
22
+ };
23
+ flat: {
24
+ base: string;
25
+ color: {
26
+ DEFAULT: string;
27
+ primary: string;
28
+ secondary: string;
29
+ danger: string;
30
+ info: string;
31
+ success: string;
32
+ warning: string;
33
+ };
34
+ };
35
+ active: {
36
+ base: string;
37
+ color: {
38
+ DEFAULT: string;
39
+ primary: string;
40
+ secondary: string;
41
+ danger: string;
42
+ info: string;
43
+ success: string;
44
+ warning: string;
45
+ };
46
+ };
47
+ };
48
+ };
49
+ export interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> {
50
+ /** The variants of the component are: */
51
+ variant?: keyof typeof inputClasses.variant;
52
+ /** The size of the component. `"sm"` is equivalent to the dense input styling. */
53
+ size?: keyof typeof inputClasses.size;
54
+ /** Change radio button color */
55
+ color?: keyof (typeof inputClasses.variant)['outline']['color'];
56
+ /** Available directions of the label are: */
57
+ labelPlacement?: 'start' | 'end';
58
+ /** Whether the input is disabled */
59
+ disabled?: boolean;
60
+ /** Set field label */
61
+ label?: React.ReactNode;
62
+ /** Show error message using this prop */
63
+ error?: string;
64
+ /** Add helper text. It could be string or a React component */
65
+ helperText?: React.ReactNode;
66
+ /** Use className prop to apply style for entire component */
67
+ className?: string;
68
+ /** Use activeClassName prop to apply style on active component from radioGroup */
69
+ activeClassName?: string;
70
+ /** Use containerClassName prop to apply some additional style for label and radio container */
71
+ containerClassName?: string;
72
+ /** Use labelClassName prop to apply some addition style for the field label */
73
+ labelClassName?: string;
74
+ /** Add custom classes for the input filed extra style */
75
+ inputClassName?: string;
76
+ /** This prop allows you to customize the error message style */
77
+ errorClassName?: string;
78
+ /** This prop allows you to customize the helper message style */
79
+ helperClassName?: string;
80
+ }
81
+ /**
82
+ * A basic widget for getting the user input of radio. Here is the API documentation of the Radio component.
83
+ * And the rest of the props of Checkbox are the same as the original html input field.
84
+ * You can use props like `value`, `disabled`, `onChange`, `onFocus`, `onBlur` etc.
85
+ */
86
+ export declare const Radio: React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>>;
87
+ export default Radio;
@@ -0,0 +1,10 @@
1
+ export type TextareaProps = React.DetailedHTMLProps<React.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement> & {
2
+ label?: string;
3
+ error?: string;
4
+ className?: string;
5
+ inputClassName?: string;
6
+ useUppercaseLabel?: boolean;
7
+ helperText?: string;
8
+ };
9
+ export declare const Textarea: import('react').ForwardRefExoticComponent<Omit<TextareaProps, "ref"> & import('react').RefAttributes<HTMLTextAreaElement>>;
10
+ export default Textarea;
@@ -0,0 +1,9 @@
1
+ export interface ToggleBarProps {
2
+ title: string;
3
+ subTitle?: string;
4
+ icon?: React.ReactNode;
5
+ checked: boolean;
6
+ onChange: () => void;
7
+ }
8
+ export declare function ToggleBar({ title, subTitle, icon, checked, onChange, children, }: React.PropsWithChildren<ToggleBarProps>): import("react/jsx-runtime").JSX.Element;
9
+ export default ToggleBar;
@@ -0,0 +1,44 @@
1
+ import { ForwardedRef } from 'react';
2
+ import { DropzoneRootProps, DropzoneInputProps } from 'react-dropzone';
3
+ export declare const acceptedFileType: {
4
+ img: string;
5
+ pdf: string;
6
+ csv: string;
7
+ imgAndPdf: string;
8
+ all: string;
9
+ };
10
+ export interface UploadProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'accept' | 'children'> {
11
+ /** Specify type of the files */
12
+ accept: 'img' | 'pdf' | 'csv' | 'imgAndPdf' | 'all';
13
+ /** Pass multiple files */
14
+ multiple?: boolean;
15
+ /** Whether disable upload */
16
+ disabled?: boolean;
17
+ /** Pass children to customize file item style */
18
+ children?: React.ReactNode;
19
+ /** Pass field label */
20
+ label?: React.ReactNode;
21
+ /** Set your custom text to show in upload field */
22
+ placeholderText?: React.ReactNode;
23
+ /** To pass getRootProps of react-dropzone */
24
+ dropzoneRootProps?: DropzoneRootProps;
25
+ /** To pass getInputProps of react-dropzone */
26
+ dropzoneInputProps?: DropzoneInputProps;
27
+ /** Pass wrapperClassName to style the container */
28
+ wrapperClassName?: string;
29
+ /** Pass className to style the container */
30
+ className?: string;
31
+ /** Pass label className to style label */
32
+ labelClassName?: string;
33
+ /** Pass dropzoneRootClassName to style the container */
34
+ dropzoneRootClassName?: string;
35
+ }
36
+ /** Upload component allows user to upload files either from file explorer or by dragging and dropping.
37
+ * Here is the API documentation of Upload component. Rest of the props are same as html input field.
38
+ * You can use props like `disabled`, `multiple`, `capture` etc.
39
+ */
40
+ export declare function Upload({ accept, children, label, dropzoneRootProps, dropzoneInputProps, placeholderText, dropzoneRootClassName, wrapperClassName, labelClassName, ...props }: React.PropsWithChildren<UploadProps>, ref: ForwardedRef<HTMLInputElement>): import("react/jsx-runtime").JSX.Element;
41
+ declare const _default: import('react').ForwardRefExoticComponent<UploadProps & {
42
+ children?: import('react').ReactNode | undefined;
43
+ } & import('react').RefAttributes<HTMLInputElement>>;
44
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export declare function Uploader(): import("react/jsx-runtime").JSX.Element;
2
+ export default Uploader;
@@ -0,0 +1 @@
1
+ export declare function ArrowLinkIcon(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function ArrowRight(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ArrowUp: React.FC<React.SVGAttributes<SVGElement>>;
@@ -0,0 +1 @@
1
+ export declare function Bitcoin(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function Bnb(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function BookIcon(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function Facebook(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function Github(props: React.SVGAttributes<SVGElement>): import("react/jsx-runtime").JSX.Element;