@allxsmith/bestax-bulma 2.6.2 → 3.0.1

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 (138) hide show
  1. package/README.md +2 -2
  2. package/dist/bestax.css +3 -0
  3. package/dist/bestax.css.map +1 -0
  4. package/dist/bestax.js +1 -0
  5. package/dist/extras.css +3 -0
  6. package/dist/extras.css.map +1 -0
  7. package/dist/extras.js +1 -0
  8. package/dist/index.cjs.js +6214 -647
  9. package/dist/index.cjs.js.map +1 -1
  10. package/dist/index.esm.js +6154 -649
  11. package/dist/index.esm.js.map +1 -1
  12. package/dist/types/components/Carousel.d.ts +34 -0
  13. package/dist/types/components/Collapse.d.ts +17 -0
  14. package/dist/types/components/Dialog.d.ts +47 -0
  15. package/dist/types/components/Loading.d.ts +18 -0
  16. package/dist/types/components/Navbar.d.ts +10 -0
  17. package/dist/types/components/Panel.d.ts +2 -4
  18. package/dist/types/components/Sidebar.d.ts +37 -0
  19. package/dist/types/components/Steps.d.ts +45 -0
  20. package/dist/types/components/Tabs.d.ts +42 -6
  21. package/dist/types/components/Toast.d.ts +46 -0
  22. package/dist/types/components/Tooltip.d.ts +22 -0
  23. package/dist/types/elements/Button.d.ts +1 -1
  24. package/dist/types/elements/Code.d.ts +9 -0
  25. package/dist/types/elements/Divider.d.ts +7 -0
  26. package/dist/types/elements/Emphasis.d.ts +9 -0
  27. package/dist/types/elements/Figure.d.ts +17 -0
  28. package/dist/types/elements/Icon.d.ts +1 -0
  29. package/dist/types/elements/Link.d.ts +10 -0
  30. package/dist/types/elements/LinkButton.d.ts +8 -0
  31. package/dist/types/elements/ListItem.d.ts +9 -0
  32. package/dist/types/elements/Notification.d.ts +31 -0
  33. package/dist/types/elements/OrderedList.d.ts +9 -0
  34. package/dist/types/elements/Paragraph.d.ts +9 -0
  35. package/dist/types/elements/Pre.d.ts +9 -0
  36. package/dist/types/elements/Span.d.ts +9 -0
  37. package/dist/types/elements/Strong.d.ts +9 -0
  38. package/dist/types/elements/UnorderedList.d.ts +9 -0
  39. package/dist/types/form/Autocomplete.d.ts +42 -0
  40. package/dist/types/form/Checkbox.d.ts +7 -2
  41. package/dist/types/form/Checkboxes.d.ts +6 -1
  42. package/dist/types/form/DateInput.d.ts +26 -0
  43. package/dist/types/form/DateInputBase.d.ts +42 -0
  44. package/dist/types/form/DateTimeInput.d.ts +26 -0
  45. package/dist/types/form/DateTimeInputBase.d.ts +50 -0
  46. package/dist/types/form/Field.d.ts +2 -1
  47. package/dist/types/form/File.d.ts +3 -2
  48. package/dist/types/form/FormContext.d.ts +22 -0
  49. package/dist/types/form/Input.d.ts +22 -11
  50. package/dist/types/form/InputBase.d.ts +16 -0
  51. package/dist/types/form/Numberinput.d.ts +30 -0
  52. package/dist/types/form/Radio.d.ts +7 -2
  53. package/dist/types/form/Radios.d.ts +6 -1
  54. package/dist/types/form/Rate.d.ts +38 -0
  55. package/dist/types/form/Select.d.ts +18 -11
  56. package/dist/types/form/SelectBase.d.ts +19 -0
  57. package/dist/types/form/Slider.d.ts +49 -0
  58. package/dist/types/form/Switch.d.ts +17 -0
  59. package/dist/types/form/Taginput.d.ts +54 -0
  60. package/dist/types/form/TextArea.d.ts +13 -14
  61. package/dist/types/form/TextAreaBase.d.ts +19 -0
  62. package/dist/types/form/TimeInput.d.ts +26 -0
  63. package/dist/types/form/TimeInputBase.d.ts +44 -0
  64. package/dist/types/form/_pickerInternals/Calendar.d.ts +26 -0
  65. package/dist/types/form/_pickerInternals/PickerPopover.d.ts +20 -0
  66. package/dist/types/form/_pickerInternals/TimeWheels.d.ts +29 -0
  67. package/dist/types/form/_pickerInternals/audioTick.d.ts +3 -0
  68. package/dist/types/form/_pickerInternals/dateUtils.d.ts +39 -0
  69. package/dist/types/form/_pickerInternals/formatters.d.ts +13 -0
  70. package/dist/types/form/_pickerInternals/haptics.d.ts +1 -0
  71. package/dist/types/form/_pickerInternals/pickerTypes.d.ts +31 -0
  72. package/dist/types/form/_pickerInternals/segmentMap.d.ts +20 -0
  73. package/dist/types/form/_pickerInternals/useFocusTrap.d.ts +7 -0
  74. package/dist/types/form/_pickerInternals/useNativeMobilePicker.d.ts +10 -0
  75. package/dist/types/form/_pickerInternals/useSegmentedEntry.d.ts +45 -0
  76. package/dist/types/form/fieldProps.d.ts +12 -0
  77. package/dist/types/helpers/bulmaClassHelpers.d.ts +35 -0
  78. package/dist/types/helpers/useBulmaClasses.d.ts +16 -83
  79. package/dist/types/helpers/useColorClasses.d.ts +8 -0
  80. package/dist/types/helpers/useFlexboxClasses.d.ts +12 -0
  81. package/dist/types/helpers/useOtherClasses.d.ts +15 -0
  82. package/dist/types/helpers/useSpacingClasses.d.ts +18 -0
  83. package/dist/types/helpers/useTypographyClasses.d.ts +19 -0
  84. package/dist/types/helpers/useVisibilityClasses.d.ts +10 -0
  85. package/dist/types/index.d.ts +53 -3
  86. package/dist/versions/bestax-bulma-prefixed.css +3 -0
  87. package/dist/versions/bestax-bulma-prefixed.css.map +1 -0
  88. package/dist/versions/bestax-bulma-prefixed.js +1 -0
  89. package/dist/versions/bestax-no-dark-mode.css +3 -0
  90. package/dist/versions/bestax-no-dark-mode.css.map +1 -0
  91. package/dist/versions/bestax-no-dark-mode.js +1 -0
  92. package/dist/versions/bestax-no-helpers-prefixed.css +3 -0
  93. package/dist/versions/bestax-no-helpers-prefixed.css.map +1 -0
  94. package/dist/versions/bestax-no-helpers-prefixed.js +1 -0
  95. package/dist/versions/bestax-no-helpers.css +3 -0
  96. package/dist/versions/bestax-no-helpers.css.map +1 -0
  97. package/dist/versions/bestax-no-helpers.js +1 -0
  98. package/dist/versions/bestax-prefixed.css +3 -0
  99. package/dist/versions/bestax-prefixed.css.map +1 -0
  100. package/dist/versions/bestax-prefixed.js +1 -0
  101. package/package.json +100 -21
  102. package/src/scss/_mixins.scss +215 -0
  103. package/src/scss/_variables.scss +94 -0
  104. package/src/scss/bestax.scss +18 -0
  105. package/src/scss/components/_carousel.scss +580 -0
  106. package/src/scss/components/_collapse.scss +126 -0
  107. package/src/scss/components/_dialog.scss +134 -0
  108. package/src/scss/components/_index.scss +13 -0
  109. package/src/scss/components/_loading.scss +231 -0
  110. package/src/scss/components/_sidebar.scss +347 -0
  111. package/src/scss/components/_steps.scss +459 -0
  112. package/src/scss/components/_tabs.scss +147 -0
  113. package/src/scss/components/_toast.scss +244 -0
  114. package/src/scss/components/_tooltip.scss +250 -0
  115. package/src/scss/elements/_index.scss +5 -0
  116. package/src/scss/elements/_linkbutton.scss +77 -0
  117. package/src/scss/extras.scss +24 -0
  118. package/src/scss/form/_autocomplete.scss +261 -0
  119. package/src/scss/form/_checkbox.scss +217 -0
  120. package/src/scss/form/_dateinput.scss +292 -0
  121. package/src/scss/form/_datetimeinput.scss +191 -0
  122. package/src/scss/form/_index.scss +16 -0
  123. package/src/scss/form/_numberinput.scss +176 -0
  124. package/src/scss/form/_picker-popover.scss +185 -0
  125. package/src/scss/form/_radio.scss +196 -0
  126. package/src/scss/form/_rate.scss +307 -0
  127. package/src/scss/form/_slider.scss +630 -0
  128. package/src/scss/form/_switch.scss +314 -0
  129. package/src/scss/form/_taginput.scss +356 -0
  130. package/src/scss/form/_timeinput.scss +374 -0
  131. package/src/scss/helpers/_cursor.scss +5 -0
  132. package/src/scss/helpers/_index.scss +2 -0
  133. package/src/scss/helpers/_sizing.scss +5 -0
  134. package/src/scss/versions/bestax-bulma-prefixed.scss +15 -0
  135. package/src/scss/versions/bestax-no-dark-mode.scss +32 -0
  136. package/src/scss/versions/bestax-no-helpers-prefixed.scss +22 -0
  137. package/src/scss/versions/bestax-no-helpers.scss +23 -0
  138. package/src/scss/versions/bestax-prefixed.scss +15 -0
@@ -0,0 +1,34 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export interface CarouselItemProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ active?: boolean;
5
+ }
6
+ export declare const CarouselItem: React.ForwardRefExoticComponent<CarouselItemProps & React.RefAttributes<HTMLDivElement>>;
7
+ type IconLibrary = 'fa' | 'mdi' | 'ion' | 'material-icons' | 'material-symbols';
8
+ export interface CarouselProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'color'>, BulmaClassesProps {
9
+ value?: number;
10
+ autoplay?: boolean;
11
+ interval?: number;
12
+ pauseOnHover?: boolean;
13
+ repeat?: boolean;
14
+ hasDrag?: boolean;
15
+ arrow?: boolean;
16
+ arrowHover?: boolean;
17
+ indicator?: boolean;
18
+ indicatorInside?: boolean;
19
+ indicatorPosition?: 'bottom' | 'top';
20
+ indicatorStyle?: 'circles' | 'dots' | 'lines' | 'bars';
21
+ iconPrev?: string;
22
+ iconNext?: string;
23
+ iconLibrary?: IconLibrary;
24
+ iconVariant?: string;
25
+ iconSize?: 'small' | 'medium' | 'large';
26
+ iconFeatures?: string | string[];
27
+ arrowBackground?: boolean;
28
+ arrowColor?: 'light' | 'dark';
29
+ ariaLabel?: string;
30
+ onChange?: (value: number) => void;
31
+ children?: React.ReactNode;
32
+ }
33
+ export declare const Carousel: React.ForwardRefExoticComponent<CarouselProps & React.RefAttributes<HTMLDivElement>>;
34
+ export default Carousel;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export interface CollapseProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ open?: boolean;
5
+ defaultOpen?: boolean;
6
+ onOpen?: () => void;
7
+ onClose?: () => void;
8
+ trigger?: React.ReactNode;
9
+ animation?: 'fade' | 'slide' | false;
10
+ position?: 'top' | 'bottom';
11
+ ariaId?: string;
12
+ bordered?: boolean;
13
+ triggerClassName?: string;
14
+ contentClassName?: string;
15
+ }
16
+ export declare const Collapse: React.FC<CollapseProps>;
17
+ export default Collapse;
@@ -0,0 +1,47 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type DialogType = 'default' | 'success' | 'danger' | 'warning' | 'info';
4
+ export interface DialogProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color'>, Omit<BulmaClassesProps, 'color'> {
5
+ isOpen: boolean;
6
+ title?: string;
7
+ message: string | React.ReactNode;
8
+ type?: DialogType;
9
+ confirmText?: string;
10
+ cancelText?: string;
11
+ onConfirm?: () => void;
12
+ onCancel?: () => void;
13
+ showCancel?: boolean;
14
+ canCancel?: boolean;
15
+ focusCancel?: boolean;
16
+ icon?: React.ReactNode;
17
+ }
18
+ export declare const Dialog: React.ForwardRefExoticComponent<DialogProps & React.RefAttributes<HTMLDivElement>>;
19
+ export interface AlertOptions {
20
+ title?: string;
21
+ message: string | React.ReactNode;
22
+ type?: DialogType;
23
+ confirmText?: string;
24
+ icon?: React.ReactNode;
25
+ }
26
+ export interface ConfirmOptions extends AlertOptions {
27
+ cancelText?: string;
28
+ focusCancel?: boolean;
29
+ }
30
+ export interface PromptOptions extends ConfirmOptions {
31
+ placeholder?: string;
32
+ defaultValue?: string;
33
+ }
34
+ type DialogResolve = (value?: void | boolean | string) => void;
35
+ type DialogState = {
36
+ type: 'alert' | 'confirm' | 'prompt';
37
+ options: PromptOptions;
38
+ resolve: DialogResolve;
39
+ };
40
+ export declare const dialog: {
41
+ alert: (options: AlertOptions | string) => Promise<void>;
42
+ confirm: (options: ConfirmOptions | string) => Promise<boolean>;
43
+ close: (value?: string | boolean | void | undefined) => void;
44
+ subscribe: (listener: (dialog: DialogState | null) => void) => (() => void);
45
+ };
46
+ export declare const DialogContainer: React.FC;
47
+ export default Dialog;
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type LoadingOverlay = 'light' | 'dark' | 'opaque';
4
+ export type LoadingColor = 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger';
5
+ export interface LoadingProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor' | 'size' | 'overlay'> {
6
+ active?: boolean;
7
+ isFullPage?: boolean;
8
+ size?: 'small' | 'medium' | 'large';
9
+ color?: LoadingColor;
10
+ canCancel?: boolean;
11
+ onCancel?: () => void;
12
+ overlayClassName?: string;
13
+ iconClassName?: string;
14
+ indicator?: React.ReactNode;
15
+ overlay?: LoadingOverlay;
16
+ }
17
+ export declare const Loading: React.FC<LoadingProps>;
18
+ export default Loading;
@@ -12,6 +12,7 @@ export interface NavbarProps extends React.HTMLAttributes<HTMLElement>, Omit<Bul
12
12
  export declare const Navbar: React.FC<NavbarProps> & {
13
13
  Brand: typeof NavbarBrand;
14
14
  Item: typeof NavbarItem;
15
+ Link: typeof NavbarLink;
15
16
  Burger: typeof NavbarBurger;
16
17
  Menu: typeof NavbarMenu;
17
18
  Start: typeof NavbarStart;
@@ -63,6 +64,15 @@ export interface NavbarStartEndProps extends React.HTMLAttributes<HTMLDivElement
63
64
  }
64
65
  export declare const NavbarStart: React.FC<NavbarStartEndProps>;
65
66
  export declare const NavbarEnd: React.FC<NavbarStartEndProps>;
67
+ export interface NavbarLinkProps extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'color'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
68
+ className?: string;
69
+ as?: React.ElementType;
70
+ arrowless?: boolean;
71
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
72
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
73
+ children?: React.ReactNode;
74
+ }
75
+ export declare const NavbarLink: React.FC<NavbarLinkProps>;
66
76
  export interface NavbarDropdownProps extends React.HTMLAttributes<HTMLDivElement> {
67
77
  className?: string;
68
78
  right?: boolean;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ import { IconProps } from '../elements/Icon';
3
4
  export interface PanelProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
5
  color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'black' | 'dark' | 'light' | 'white';
5
6
  className?: string;
@@ -18,10 +19,7 @@ export interface PanelBlockProps extends React.AnchorHTMLAttributes<HTMLAnchorEl
18
19
  active?: boolean;
19
20
  children?: React.ReactNode;
20
21
  }
21
- export interface PanelIconProps extends React.HTMLAttributes<HTMLSpanElement> {
22
- className?: string;
23
- children?: React.ReactNode;
24
- }
22
+ export type PanelIconProps = Omit<IconProps, 'containerClassName'>;
25
23
  export interface PanelInputBlockProps extends React.HTMLAttributes<HTMLDivElement> {
26
24
  value?: string;
27
25
  onChange?: React.ChangeEventHandler<HTMLInputElement>;
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type SidebarPosition = 'left' | 'right';
4
+ export interface SidebarProps extends Omit<React.HTMLAttributes<HTMLElement>, 'children' | 'color'>, BulmaClassesProps {
5
+ isOpen: boolean;
6
+ onClose?: () => void;
7
+ position?: SidebarPosition;
8
+ width?: string;
9
+ fullWidth?: boolean;
10
+ overlay?: boolean;
11
+ overlayClose?: boolean;
12
+ escapeClose?: boolean;
13
+ canCancel?: boolean;
14
+ children?: React.ReactNode;
15
+ inline?: boolean;
16
+ }
17
+ interface SidebarHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
18
+ children?: React.ReactNode;
19
+ }
20
+ interface SidebarTitleProps extends React.HTMLAttributes<HTMLParagraphElement> {
21
+ children?: React.ReactNode;
22
+ }
23
+ type SidebarCloseProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
24
+ interface SidebarBodyProps extends React.HTMLAttributes<HTMLDivElement> {
25
+ children?: React.ReactNode;
26
+ }
27
+ interface SidebarFooterProps extends React.HTMLAttributes<HTMLDivElement> {
28
+ children?: React.ReactNode;
29
+ }
30
+ export declare const Sidebar: React.ForwardRefExoticComponent<SidebarProps & React.RefAttributes<HTMLElement>> & {
31
+ Header: React.FC<SidebarHeaderProps>;
32
+ Title: React.FC<SidebarTitleProps>;
33
+ Close: React.FC<SidebarCloseProps>;
34
+ Body: React.FC<SidebarBodyProps>;
35
+ Footer: React.FC<SidebarFooterProps>;
36
+ };
37
+ export default Sidebar;
@@ -0,0 +1,45 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type StepsSize = 'small' | 'medium' | 'large';
4
+ export type StepsColor = 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger';
5
+ export interface StepItemProps {
6
+ label?: React.ReactNode;
7
+ icon?: React.ReactNode;
8
+ completedIcon?: React.ReactNode;
9
+ clickable?: boolean;
10
+ className?: string;
11
+ }
12
+ export interface StepsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor' | 'size'> {
13
+ value?: number;
14
+ items?: StepItemProps[];
15
+ size?: StepsSize;
16
+ color?: StepsColor;
17
+ hasMarker?: boolean;
18
+ animated?: boolean;
19
+ rounded?: boolean;
20
+ vertical?: boolean;
21
+ labelPosition?: 'bottom' | 'right' | 'left';
22
+ mobileMode?: 'minimal' | 'compact' | 'right';
23
+ showStepNumbers?: boolean;
24
+ hasNavigation?: boolean;
25
+ prevLabel?: string;
26
+ nextLabel?: string;
27
+ onPrev?: () => void;
28
+ onNext?: () => void;
29
+ onStepClick?: (step: number) => void;
30
+ }
31
+ export interface StepProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'color'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
32
+ isActive?: boolean;
33
+ isCompleted?: boolean;
34
+ label?: React.ReactNode;
35
+ icon?: React.ReactNode;
36
+ clickable?: boolean;
37
+ onClick?: () => void;
38
+ stepNumber?: number;
39
+ completedIcon?: React.ReactNode;
40
+ }
41
+ export declare const Step: React.FC<StepProps>;
42
+ export declare const Steps: React.FC<StepsProps> & {
43
+ Step: typeof Step;
44
+ };
45
+ export default Steps;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
- export interface TabsProps extends React.HTMLAttributes<HTMLDivElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
3
+ export interface TabsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
4
  align?: 'centered' | 'right' | 'left';
5
5
  size?: 'small' | 'medium' | 'large';
6
6
  fullwidth?: boolean;
@@ -8,23 +8,59 @@ export interface TabsProps extends React.HTMLAttributes<HTMLDivElement>, Omit<Bu
8
8
  toggle?: boolean;
9
9
  rounded?: boolean;
10
10
  color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'black' | 'dark' | 'light' | 'white';
11
+ value?: number;
12
+ onChange?: (index: number) => void;
13
+ defaultValue?: number;
14
+ vertical?: boolean;
15
+ side?: 'left' | 'right';
16
+ expanded?: boolean;
11
17
  className?: string;
12
18
  children?: React.ReactNode;
13
19
  }
20
+ export declare const Tabs: React.FC<TabsProps> & {
21
+ List: typeof TabList;
22
+ Tab: typeof Tab;
23
+ Item: typeof TabItem;
24
+ Content: typeof TabsContent & {
25
+ Item: typeof TabContentItem;
26
+ };
27
+ };
14
28
  export interface TabListProps extends React.HTMLAttributes<HTMLUListElement> {
15
29
  className?: string;
16
30
  children?: React.ReactNode;
17
31
  }
32
+ export declare const TabList: React.FC<TabListProps>;
33
+ type IconLibrary = 'fa' | 'mdi' | 'ion' | 'material-icons' | 'material-symbols';
34
+ export interface TabProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'onClick'> {
35
+ index: number;
36
+ disabled?: boolean;
37
+ icon?: string;
38
+ iconLibrary?: IconLibrary;
39
+ iconVariant?: string;
40
+ iconSize?: 'small' | 'medium' | 'large';
41
+ iconFeatures?: string | string[];
42
+ className?: string;
43
+ children?: React.ReactNode;
44
+ }
45
+ export declare const Tab: React.FC<TabProps>;
18
46
  export interface TabItemProps extends React.LiHTMLAttributes<HTMLLIElement> {
19
47
  active?: boolean;
20
48
  className?: string;
21
49
  children?: React.ReactNode;
22
50
  onClick?: React.MouseEventHandler<HTMLLIElement>;
23
51
  }
24
- export declare const Tabs: React.FC<TabsProps> & {
25
- List: typeof TabList;
26
- Item: typeof TabItem;
27
- };
28
- export declare const TabList: React.FC<TabListProps>;
29
52
  export declare const TabItem: React.FC<TabItemProps>;
53
+ export interface TabsContentProps extends React.HTMLAttributes<HTMLDivElement> {
54
+ className?: string;
55
+ children?: React.ReactNode;
56
+ }
57
+ export declare const TabsContent: React.FC<TabsContentProps> & {
58
+ Item: typeof TabContentItem;
59
+ };
60
+ export interface TabContentItemProps extends React.HTMLAttributes<HTMLDivElement> {
61
+ index: number;
62
+ className?: string;
63
+ children?: React.ReactNode;
64
+ }
65
+ export declare const TabContentItem: React.FC<TabContentItemProps>;
30
66
  export default Tabs;
@@ -0,0 +1,46 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type ToastType = 'default' | 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger';
4
+ export type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
5
+ export interface ToastProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color'>, Omit<BulmaClassesProps, 'color'> {
6
+ message: string;
7
+ type?: ToastType;
8
+ actionType?: ToastType;
9
+ position?: ToastPosition;
10
+ duration?: number;
11
+ indefinite?: boolean;
12
+ dismissible?: boolean;
13
+ closable?: boolean;
14
+ rounded?: boolean;
15
+ pauseOnHover?: boolean;
16
+ cancelable?: boolean;
17
+ actionText?: string;
18
+ cancelText?: string;
19
+ onAction?: () => void;
20
+ onClose?: () => void;
21
+ container?: string | HTMLElement;
22
+ inline?: boolean;
23
+ }
24
+ export declare const Toast: React.ForwardRefExoticComponent<ToastProps & React.RefAttributes<HTMLDivElement>>;
25
+ export interface ToastOptions extends Omit<ToastProps, 'message'> {
26
+ message: string;
27
+ queue?: boolean;
28
+ }
29
+ export interface ToastInstance {
30
+ id: string;
31
+ props: ToastOptions;
32
+ }
33
+ export declare const toast: {
34
+ show: (options: ToastOptions) => string;
35
+ success: (message: string, options?: Partial<ToastOptions>) => string;
36
+ danger: (message: string, options?: Partial<ToastOptions>) => string;
37
+ warning: (message: string, options?: Partial<ToastOptions>) => string;
38
+ info: (message: string, options?: Partial<ToastOptions>) => string;
39
+ close: (id: string) => void;
40
+ closeAll: () => void;
41
+ subscribe: (listener: (toasts: ToastInstance[]) => void) => (() => void);
42
+ };
43
+ export declare const ToastContainer: React.FC<{
44
+ position?: ToastPosition;
45
+ }>;
46
+ export default Toast;
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ export type TooltipPosition = 'top' | 'bottom' | 'left' | 'right' | 'auto';
4
+ export type TooltipColor = 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'dark' | 'light';
5
+ export type TooltipSize = 'small' | 'medium' | 'large';
6
+ export interface TooltipProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'color' | 'content'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
7
+ label?: string;
8
+ content?: React.ReactNode;
9
+ position?: TooltipPosition;
10
+ color?: TooltipColor;
11
+ size?: TooltipSize;
12
+ active?: boolean;
13
+ multiline?: boolean;
14
+ animated?: boolean;
15
+ square?: boolean;
16
+ dashed?: boolean;
17
+ delay?: number;
18
+ closeDelay?: number;
19
+ tooltipClassName?: string;
20
+ }
21
+ export declare const Tooltip: React.FC<TooltipProps>;
22
+ export default Tooltip;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
3
  export interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'color' | 'onClick'>, Omit<BulmaClassesProps, 'color' | 'backgroundColor' | 'size'> {
4
- color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger';
4
+ color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'white' | 'light' | 'dark' | 'black' | 'text' | 'ghost';
5
5
  size?: 'small' | 'normal' | 'medium' | 'large';
6
6
  isLight?: boolean;
7
7
  isRounded?: boolean;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface CodeProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Code: React.FC<CodeProps>;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface DividerProps extends React.HTMLAttributes<HTMLHRElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ }
7
+ export declare const Divider: React.FC<DividerProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface EmphasisProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Emphasis: React.FC<EmphasisProps>;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface FigureCaptionProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export interface FigureProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
10
+ className?: string;
11
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
12
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
13
+ children?: React.ReactNode;
14
+ }
15
+ export declare const Figure: React.FC<FigureProps> & {
16
+ Caption: React.FC<FigureCaptionProps>;
17
+ };
@@ -34,6 +34,7 @@ export interface IconProps extends React.HTMLAttributes<HTMLSpanElement>, BulmaC
34
34
  size?: 'small' | 'medium' | 'large';
35
35
  ariaLabel?: string;
36
36
  style?: React.CSSProperties;
37
+ containerClassName?: string;
37
38
  }
38
39
  export declare const Icon: React.FC<IconProps>;
39
40
  export {};
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface LinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ isActive?: boolean;
8
+ children?: React.ReactNode;
9
+ }
10
+ export declare const Link: React.FC<LinkProps>;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { ButtonProps } from './Button';
3
+ export interface LinkButtonProps extends Omit<ButtonProps, 'color' | 'isOutlined' | 'isInverted' | 'isLight'> {
4
+ variant?: 'text' | 'ghost' | 'underline';
5
+ color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'white' | 'light' | 'dark' | 'black';
6
+ }
7
+ export declare const LinkButton: React.FC<LinkButtonProps>;
8
+ export default LinkButton;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface ListItemProps extends React.LiHTMLAttributes<HTMLLIElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const ListItem: React.FC<ListItemProps>;
@@ -3,9 +3,40 @@ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
3
  export interface NotificationProps extends React.HTMLAttributes<HTMLDivElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
4
  className?: string;
5
5
  color?: (typeof validColors)[number];
6
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
7
  isLight?: boolean;
7
8
  hasDelete?: boolean;
8
9
  onDelete?: () => void;
9
10
  children?: React.ReactNode;
10
11
  }
11
12
  export declare const Notification: React.FC<NotificationProps>;
13
+ export type NotificationPosition = 'top-left' | 'top' | 'top-right' | 'bottom-left' | 'bottom' | 'bottom-right';
14
+ export interface NotificationOptions {
15
+ message: string | React.ReactNode;
16
+ color?: (typeof validColors)[number];
17
+ isLight?: boolean;
18
+ duration?: number;
19
+ position?: NotificationPosition;
20
+ queue?: boolean;
21
+ hasDelete?: boolean;
22
+ indefinite?: boolean;
23
+ pauseOnHover?: boolean;
24
+ }
25
+ interface NotificationInstance {
26
+ id: string;
27
+ options: NotificationOptions;
28
+ }
29
+ export declare const notification: {
30
+ show: (options: NotificationOptions) => string;
31
+ success: (message: string | React.ReactNode, options?: Partial<NotificationOptions>) => string;
32
+ danger: (message: string | React.ReactNode, options?: Partial<NotificationOptions>) => string;
33
+ warning: (message: string | React.ReactNode, options?: Partial<NotificationOptions>) => string;
34
+ info: (message: string | React.ReactNode, options?: Partial<NotificationOptions>) => string;
35
+ close: (id: string) => void;
36
+ closeAll: () => void;
37
+ subscribe: (listener: (items: NotificationInstance[]) => void) => (() => void);
38
+ };
39
+ export declare const NotificationContainer: React.FC<{
40
+ position?: NotificationPosition;
41
+ }>;
42
+ export {};
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface OrderedListProps extends React.OlHTMLAttributes<HTMLOListElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const OrderedList: React.FC<OrderedListProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface ParagraphProps extends React.HTMLAttributes<HTMLParagraphElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Paragraph: React.FC<ParagraphProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface PreProps extends React.HTMLAttributes<HTMLPreElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Pre: React.FC<PreProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface SpanProps extends React.HTMLAttributes<HTMLSpanElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Span: React.FC<SpanProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface StrongProps extends React.HTMLAttributes<HTMLElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const Strong: React.FC<StrongProps>;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps, validColors } from '../helpers/useBulmaClasses';
3
+ export interface UnorderedListProps extends React.HTMLAttributes<HTMLUListElement>, Omit<BulmaClassesProps, 'color' | 'backgroundColor'> {
4
+ className?: string;
5
+ textColor?: (typeof validColors)[number] | 'inherit' | 'current';
6
+ bgColor?: (typeof validColors)[number] | 'inherit' | 'current';
7
+ children?: React.ReactNode;
8
+ }
9
+ export declare const UnorderedList: React.FC<UnorderedListProps>;
@@ -0,0 +1,42 @@
1
+ import React from 'react';
2
+ import { BulmaClassesProps } from '../helpers/useBulmaClasses';
3
+ import { FormFieldProps } from './fieldProps';
4
+ export interface AutocompleteItem {
5
+ value: string;
6
+ label?: string;
7
+ disabled?: boolean;
8
+ [key: string]: unknown;
9
+ }
10
+ export interface AutocompleteProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'onInput'>, Omit<BulmaClassesProps, 'color'>, FormFieldProps {
11
+ data: AutocompleteItem[] | string[];
12
+ value?: string;
13
+ selected?: AutocompleteItem | string | null;
14
+ placeholder?: string;
15
+ field?: string;
16
+ clearable?: boolean;
17
+ openOnFocus?: boolean;
18
+ keepFirst?: boolean;
19
+ keepOpen?: boolean;
20
+ selectOnClickOutside?: boolean;
21
+ maxHeight?: number;
22
+ dropdown?: boolean;
23
+ loading?: boolean;
24
+ disabled?: boolean;
25
+ checkInfiniteScroll?: boolean;
26
+ infiniteScrollDistance?: number;
27
+ color?: 'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger';
28
+ size?: 'small' | 'medium' | 'large';
29
+ name?: string;
30
+ form?: string;
31
+ required?: boolean;
32
+ onInput?: (value: string) => void;
33
+ onSelect?: (item: AutocompleteItem | string | null) => void;
34
+ onActiveChange?: (active: boolean) => void;
35
+ onInfiniteScroll?: () => void;
36
+ itemTemplate?: (item: AutocompleteItem | string) => React.ReactNode;
37
+ header?: React.ReactNode;
38
+ footer?: React.ReactNode;
39
+ empty?: React.ReactNode;
40
+ }
41
+ export declare const Autocomplete: React.ForwardRefExoticComponent<AutocompleteProps & React.RefAttributes<HTMLInputElement>>;
42
+ export default Autocomplete;