reactive-bulma 2.10.0 → 2.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. package/LICENSE +1 -1
  2. package/dist/cjs/index.js +159 -38
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/components/molecules/InputControl/index.d.ts +4 -0
  5. package/dist/cjs/types/components/molecules/PanelBlock/index.d.ts +4 -0
  6. package/dist/cjs/types/components/molecules/PanelTabs/index.d.ts +4 -0
  7. package/dist/cjs/types/components/molecules/index.d.ts +3 -0
  8. package/dist/cjs/types/components/organisms/FormField/index.d.ts +4 -0
  9. package/dist/cjs/types/components/organisms/Panel/index.d.ts +4 -0
  10. package/dist/cjs/types/components/organisms/index.d.ts +2 -0
  11. package/dist/cjs/types/functions/generators.d.ts +4 -0
  12. package/dist/cjs/types/functions/parsers.d.ts +0 -8
  13. package/dist/cjs/types/functions/tests/generators.test.d.ts +1 -0
  14. package/dist/cjs/types/index.d.ts +1 -0
  15. package/dist/cjs/types/interfaces/atomProps.d.ts +22 -16
  16. package/dist/cjs/types/interfaces/commonProps.d.ts +1 -1
  17. package/dist/cjs/types/interfaces/functionProps.d.ts +5 -0
  18. package/dist/cjs/types/interfaces/moleculeProps.d.ts +48 -9
  19. package/dist/cjs/types/interfaces/organismProps.d.ts +29 -0
  20. package/dist/cjs/types/types/domTypes.d.ts +3 -2
  21. package/dist/cjs/types/types/styleTypes.d.ts +5 -3
  22. package/dist/esm/index.js +155 -39
  23. package/dist/esm/index.js.map +1 -1
  24. package/dist/esm/types/components/molecules/InputControl/index.d.ts +4 -0
  25. package/dist/esm/types/components/molecules/PanelBlock/index.d.ts +4 -0
  26. package/dist/esm/types/components/molecules/PanelTabs/index.d.ts +4 -0
  27. package/dist/esm/types/components/molecules/index.d.ts +3 -0
  28. package/dist/esm/types/components/organisms/FormField/index.d.ts +4 -0
  29. package/dist/esm/types/components/organisms/Panel/index.d.ts +4 -0
  30. package/dist/esm/types/components/organisms/index.d.ts +2 -0
  31. package/dist/esm/types/functions/generators.d.ts +4 -0
  32. package/dist/esm/types/functions/parsers.d.ts +0 -8
  33. package/dist/esm/types/functions/tests/generators.test.d.ts +1 -0
  34. package/dist/esm/types/index.d.ts +1 -0
  35. package/dist/esm/types/interfaces/atomProps.d.ts +22 -16
  36. package/dist/esm/types/interfaces/commonProps.d.ts +1 -1
  37. package/dist/esm/types/interfaces/functionProps.d.ts +5 -0
  38. package/dist/esm/types/interfaces/moleculeProps.d.ts +48 -9
  39. package/dist/esm/types/interfaces/organismProps.d.ts +29 -0
  40. package/dist/esm/types/types/domTypes.d.ts +3 -2
  41. package/dist/esm/types/types/styleTypes.d.ts +5 -3
  42. package/dist/index.d.ts +110 -26
  43. package/package.json +11 -11
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { InputControlProps } from '../../../interfaces/moleculeProps';
3
+ declare const InputControl: React.FC<InputControlProps>;
4
+ export default InputControl;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { PanelBlockProps } from '../../../interfaces/moleculeProps';
3
+ declare const PanelBlock: React.FC<PanelBlockProps>;
4
+ export default PanelBlock;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { PanelTabsProps } from '../../../interfaces/moleculeProps';
3
+ declare const PanelTabs: React.FC<PanelTabsProps>;
4
+ export default PanelTabs;
@@ -9,3 +9,6 @@ export { default as MenuList } from './MenuList';
9
9
  export { default as Pagination } from './Pagination';
10
10
  export { default as Modal } from './Modal';
11
11
  export { default as Tabs } from './Tabs';
12
+ export { default as InputControl } from './InputControl';
13
+ export { default as PanelBlock } from './PanelBlock';
14
+ export { default as PanelTabs } from './PanelTabs';
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { FormFieldProps } from '../../../interfaces/organismProps';
3
+ declare const FormField: React.FC<FormFieldProps>;
4
+ export default FormField;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { PanelProps } from '../../../interfaces/organismProps';
3
+ declare const Panel: React.FC<PanelProps>;
4
+ export default Panel;
@@ -0,0 +1,2 @@
1
+ export { default as FormField } from './FormField';
2
+ export { default as Panel } from './Panel';
@@ -0,0 +1,4 @@
1
+ import { GenericObjectProps } from '../interfaces/commonProps';
2
+ import { CreateObjArrayProps } from '../interfaces/functionProps';
3
+ export declare const generateKey: (max?: number, min?: number) => string;
4
+ export declare const createObjArray: <ImportedProps>({ numberOfItems, externalParser }?: CreateObjArrayProps) => ImportedProps[] | GenericObjectProps[];
@@ -1,4 +1,3 @@
1
- import { GenericObjectProps } from '../interfaces/commonProps';
2
1
  import { ParseTestIdProps } from '../interfaces/functionProps';
3
2
  /**
4
3
  * @param { Array<string | null> } _classes `Required`. Array of classNames on `string` (or `null`) values
@@ -13,10 +12,3 @@ export declare const parseClasses: (_classes: Array<string | null | undefined>)
13
12
  * @returns A single string product of merge all classNames, separated by `separator` value
14
13
  */
15
14
  export declare const parseTestId: (config: ParseTestIdProps) => string;
16
- export declare const parseKey: (max?: number, min?: number) => string;
17
- interface CreateObjArrayProps {
18
- numberOfItems?: number;
19
- externalParser?: (i: number) => GenericObjectProps;
20
- }
21
- export declare const createObjArray: <ImportedProps>({ numberOfItems, externalParser }?: CreateObjArrayProps) => ImportedProps[] | GenericObjectProps[];
22
- export {};
@@ -2,3 +2,4 @@ import '../node_modules/bulma/css/bulma.min.css';
2
2
  import '../node_modules/@mdi/font/css/materialdesignicons.min.css';
3
3
  export * from './components/atoms';
4
4
  export * from './components/molecules';
5
+ export * from './components/organisms';
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { ElementProps, ComposedElementProps, ClickeableProps } from './commonProps';
3
- import { basicColorType, columnOffsetType, columnSizeType, fixedImageSizeType, iconColorModeType, basicSizeType, textColorType, titleSizeType, reducedSizeType } from '../types/styleTypes';
4
- import { DropdownItemType, inputTypes } from '../types/domTypes';
3
+ import { basicColorType, columnOffsetType, columnSizeType, fixedImageSizeType, iconColorModeType, elementSizeType, sizeWithoutNormalType, textColorType, titleSizeType, rightLeftAlignType } from '../types/styleTypes';
4
+ import { DropdownItemType, InputType } from '../types/domTypes';
5
5
  export interface ColumnProps extends ElementProps, React.ComponentPropsWithoutRef<'section'> {
6
6
  /** `Attribute` Reffers to the component or array of components that will be shown inside the column */
7
7
  children?: string | React.ReactElement | React.ReactElement[];
@@ -27,14 +27,14 @@ export interface ButtonProps extends ElementProps, React.ComponentPropsWithoutRe
27
27
  isOutlined?: boolean;
28
28
  /** `Styling` Will add round borders to button's shape */
29
29
  isRounded?: boolean;
30
- /** `Styling` Will change `text` for a animated spinner, but will remain clickeable */
30
+ /** `Styling` Will change `text` for an animated spinner, but will remain clickeable */
31
31
  isLoading?: boolean;
32
32
  /** `Styling` Similar to `isDisabled`, but will remove any color style */
33
33
  isStatic?: boolean;
34
34
  /** `Styling` Sets the button style when a User selects it (useful for an attached `ButtonGroup`) */
35
35
  isSelected?: boolean;
36
36
  /** `Styling` Set button's size on bulma's size tokens */
37
- size?: basicSizeType;
37
+ size?: elementSizeType;
38
38
  /** `Function` Click function, alone does not nothing, but can be reused for other components */
39
39
  onClick?: () => void;
40
40
  }
@@ -46,8 +46,8 @@ export interface ProgressBarProps extends ElementProps, React.ComponentPropsWith
46
46
  /** `Styling` Color based on bulma's color tokens */
47
47
  color?: basicColorType;
48
48
  /** `Styling` Set progress bar's size */
49
- size?: basicSizeType;
50
- /** `Styling` Will change `value` for a animated loading */
49
+ size?: elementSizeType;
50
+ /** `Styling` Will change `value` for an animated loading */
51
51
  isLoading?: boolean;
52
52
  }
53
53
  export interface BlockProps extends ElementProps, React.ComponentPropsWithoutRef<'section'> {
@@ -70,7 +70,7 @@ export interface TagProps extends ComposedElementProps, React.ComponentPropsWith
70
70
  /** `Styling` Will add round borders to tag's shape */
71
71
  isRounded?: boolean;
72
72
  /** `Styling` Set tag's size */
73
- size?: reducedSizeType;
73
+ size?: sizeWithoutNormalType;
74
74
  /** `Styling` Color on tag's addon based on bulma's color tokens */
75
75
  addonColor?: basicColorType;
76
76
  /** `Function` Click function for `delete` option, alone does not nothing, but can be reused for other components */
@@ -79,6 +79,8 @@ export interface TagProps extends ComposedElementProps, React.ComponentPropsWith
79
79
  export interface ImageProps extends ComposedElementProps, React.ComponentPropsWithoutRef<'figure'> {
80
80
  /** `Attribute` `Required` The image source that will be shown */
81
81
  src: string;
82
+ /** `Attribute` A description text for the image, useful for accessibility purposes */
83
+ alt?: string;
82
84
  /** `Styling` Will add round borders to image's shape */
83
85
  fixedSize?: fixedImageSizeType;
84
86
  /** `Styling` Sets image size based on one of fixed ratios/fixed sizes */
@@ -112,17 +114,21 @@ export interface IconProps extends ComposedElementProps {
112
114
  /** `Styling` Color based on bulma's text color tokens */
113
115
  color?: textColorType;
114
116
  /** `Styling` Set icons's size */
115
- size?: reducedSizeType;
117
+ size?: sizeWithoutNormalType;
116
118
  /** `Styling` Special usage in case you want to set as dark or light mode */
117
119
  colorMode?: iconColorModeType;
118
120
  /** `Styling` Animates the icon spinning 360° */
119
121
  isSpinning?: boolean;
122
+ /** `Styling` Used for `InputControl` styling purpose only. Will move the Icon itself to control's Input side */
123
+ position?: rightLeftAlignType;
120
124
  }
121
125
  export interface InputProps extends ElementProps, ClickeableProps {
122
126
  /** `Attribute` `Required` What type of input will be used */
123
- type: inputTypes;
127
+ type: InputType;
124
128
  /** `Attribute` The value that will be shown on the input */
125
129
  text?: string;
130
+ /** `Attribute` The text that will be shown if the user does not type any value */
131
+ placeholder?: string;
126
132
  /** `Attribute` Will disable the input */
127
133
  isDisabled?: boolean;
128
134
  /** `Attribute` Will show the input as a normal one, but is not editable and has no shadow */
@@ -130,7 +136,7 @@ export interface InputProps extends ElementProps, ClickeableProps {
130
136
  /** `Styling` Color based on bulma's text color tokens */
131
137
  color?: basicColorType;
132
138
  /** `Styling` Set input's size */
133
- size?: basicSizeType;
139
+ size?: sizeWithoutNormalType;
134
140
  /** `Styling` Will add round borders to input's shape */
135
141
  isRounded?: boolean;
136
142
  /** `Styling` Will add a specific border when the input is hovered by the user */
@@ -150,7 +156,7 @@ export interface TextAreaProps extends Omit<InputProps, 'isRounded' | 'type'> {
150
156
  }
151
157
  export interface DeleteProps extends ElementProps, ClickeableProps {
152
158
  /** `Styling` Set icons's size */
153
- size?: reducedSizeType;
159
+ size?: sizeWithoutNormalType;
154
160
  }
155
161
  export interface SelectOption {
156
162
  id: string | number;
@@ -167,7 +173,7 @@ export interface SelectProps extends ComposedElementProps, ClickeableProps {
167
173
  /** `Styling` Color based on bulma's color tokens */
168
174
  color?: basicColorType;
169
175
  /** `Styling` Set select's size */
170
- size?: basicSizeType;
176
+ size?: elementSizeType;
171
177
  /** `Styling`Will add round borders to input's shape */
172
178
  isRounded?: boolean;
173
179
  /** `Styling`Will add a specific border when the input is hovered by the user */
@@ -191,7 +197,7 @@ export interface FileProps extends ComposedElementProps, ClickeableProps {
191
197
  /** `Styling` Color based on bulma's color tokens */
192
198
  color?: basicColorType;
193
199
  /** `Styling` Set button's size */
194
- size?: basicSizeType;
200
+ size?: elementSizeType;
195
201
  }
196
202
  export interface CheckBoxProps extends ComposedElementProps {
197
203
  /** `Attribute` Sets checkbox's text that will be shown next to its control */
@@ -250,9 +256,9 @@ export interface MenuItemProps extends ElementProps, ClickeableProps {
250
256
  export interface PaginationItemProps extends ElementProps, ClickeableProps {
251
257
  /** `Attribute` `Required` Sets the number string that will be shown in the item and in its title when user hovers it */
252
258
  text: string | number;
253
- /** `Attribute` Sets the custom text before the `text` when user hovers the item */
259
+ /** `Attribute` Sets a custom text before the `text` when user hovers the item */
254
260
  labelText?: string;
255
- /** `Attribute` Sets the custom text before the `text` when user hovers the item if is the current one */
261
+ /** `Attribute` Sets a custom text before the `text` when user hovers the item if is the current one */
256
262
  currentLabelText?: string;
257
263
  /** `Styling` Makes the item the selected one, changing its background to blue */
258
264
  isSelected?: boolean;
@@ -262,6 +268,6 @@ export interface TabItemProps extends ComposedElementProps, ClickeableProps {
262
268
  text: string;
263
269
  /** `Attribute` Adds an `Icon` component before the text */
264
270
  icon?: IconProps;
265
- /** `Styling` Used for Tabs styling purpose only. Will mark the tab as the one selected among its group */
271
+ /** `Styling` Used for `Tabs` styling purpose only. Will mark the tab as the one selected among its group */
266
272
  isActive?: boolean;
267
273
  }
@@ -22,5 +22,5 @@ export interface ClickeableProps {
22
22
  onClick?: () => void;
23
23
  }
24
24
  export interface GenericObjectProps {
25
- [key: string]: string | number | boolean;
25
+ [key: string]: string | number | boolean | object;
26
26
  }
@@ -1,3 +1,4 @@
1
+ import { GenericObjectProps } from './commonProps';
1
2
  interface RegExpRule {
2
3
  regExp?: RegExp;
3
4
  replacer?: string;
@@ -8,4 +9,8 @@ export interface ParseTestIdProps {
8
9
  rules?: RegExpRule[];
9
10
  separator?: string;
10
11
  }
12
+ export interface CreateObjArrayProps {
13
+ numberOfItems?: number;
14
+ externalParser?: (i: number) => GenericObjectProps;
15
+ }
11
16
  export {};
@@ -1,7 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { ClickeableProps, ComposedElementProps, ElementProps } from './commonProps';
3
- import { BreadcrumbItemProps, ButtonProps, ColumnProps, DeleteProps, DropdownItemProps, MenuItemProps, PaginationItemProps, TabItemProps } from './atomProps';
4
- import { basicColorType, elementAlignType, breadcrumbSeparatorType, columnGapType, reducedSizeType, tabsFormatType } from '../types/styleTypes';
3
+ import { BreadcrumbItemProps, ButtonProps, ColumnProps, DeleteProps, DropdownItemProps, IconProps, InputProps, MenuItemProps, PaginationItemProps, TabItemProps } from './atomProps';
4
+ import { basicColorType, rightCenteredAlignType, breadcrumbSeparatorType, columnGapType, sizeWithoutNormalType, tabsFormatType } from '../types/styleTypes';
5
+ import { PanelBlockItemType } from '../types/domTypes';
5
6
  export interface ButtonGroupProps extends ElementProps {
6
7
  /** `Atribute` `Required` Array of `Button` objects that will be shown */
7
8
  buttonList: ButtonProps[];
@@ -38,11 +39,11 @@ export interface BreadcrumbsProps extends ComposedElementProps {
38
39
  /** `Atribute` `Required` Array of `BreadcrumbItems` objects that will be shown */
39
40
  items: BreadcrumbItemProps[];
40
41
  /** `Styling` Will adjust element position on screen */
41
- alignment?: elementAlignType | null;
42
+ alignment?: rightCenteredAlignType | null;
42
43
  /** `Styling` Will adjust element position on screen */
43
44
  separator?: breadcrumbSeparatorType | null;
44
45
  /** `Styling` Set button's size on bulma's size tokens */
45
- size?: reducedSizeType;
46
+ size?: sizeWithoutNormalType;
46
47
  }
47
48
  export interface DropdownProps extends ElementProps {
48
49
  /** `Atribute` `Required` Sets the name will be shown on the dropdown input */
@@ -62,7 +63,7 @@ export interface MessageProps extends ElementProps {
62
63
  /** `Styling` Color based on bulma's color tokens */
63
64
  color?: basicColorType;
64
65
  /** `Styling` Set button's size on bulma's size tokens */
65
- size?: reducedSizeType;
66
+ size?: sizeWithoutNormalType;
66
67
  }
67
68
  interface MenuSubListProps {
68
69
  subListTitle: MenuItemProps;
@@ -105,9 +106,9 @@ export interface PaginationProps extends ComposedElementProps {
105
106
  /** `Styling` Will add round borders to each page's shape */
106
107
  isRounded?: boolean;
107
108
  /** `Styling` Set button's size on bulma's size tokens */
108
- size?: reducedSizeType;
109
+ size?: sizeWithoutNormalType;
109
110
  /** `Styling` Will adjust the pages position on screen */
110
- alignment?: elementAlignType | null;
111
+ alignment?: rightCenteredAlignType | null;
111
112
  }
112
113
  export interface ModalProps extends ComposedElementProps {
113
114
  /** `Attribute` Reffers to the component or array of components that will be shown inside the column */
@@ -119,9 +120,9 @@ export interface TabsProps extends ElementProps {
119
120
  /** `Attribute` `Required` List of tabs that will be shown in order */
120
121
  tabs: TabItemProps[];
121
122
  /** `Styling` Will adjust the tabs position on screen */
122
- alignment?: elementAlignType;
123
+ alignment?: rightCenteredAlignType;
123
124
  /** `Styling` Set tab's size on bulma's size tokens */
124
- size?: reducedSizeType;
125
+ size?: sizeWithoutNormalType;
125
126
  /** `Styling` Set tab's size on bulma's size tokens */
126
127
  format?: tabsFormatType;
127
128
  /** `Styling` Will add round tabs borders. Only visible if `format` is set to `is-toggle` */
@@ -129,4 +130,42 @@ export interface TabsProps extends ElementProps {
129
130
  /** `Styling` The whole container will occupy its parent container width */
130
131
  isFullWidth?: boolean;
131
132
  }
133
+ export interface InputControlProps extends ElementProps {
134
+ /** `Attribute` `Required` control's input configuration which will be wrapped */
135
+ inputConfig: InputProps;
136
+ /** `Attribute` `Icon` configuration that will be shown in Input's left side */
137
+ leftIcon?: IconProps;
138
+ /** `Attribute` `Icon` configuration that will be shown in Input's right side */
139
+ rightIcon?: IconProps;
140
+ /** `Styling` Set control and its input size on bulma's size tokens */
141
+ size?: sizeWithoutNormalType;
142
+ /** `Styling` Will add an animated spinner on input's right side */
143
+ isLoading?: boolean;
144
+ /** `Styling` Used for `FormField` styling purpose only. Will strech the input and its container in full-width */
145
+ isExpanded?: boolean;
146
+ }
147
+ export interface PanelBlockItemProps {
148
+ /** `Attribute` `Required` Indicates to component's parser which type of component will be rendered based on its option */
149
+ type: PanelBlockItemType;
150
+ /** `Attribute` `Required` The component properties that will configure that specific instance */
151
+ props: InputControlProps | IconProps | ButtonProps;
152
+ }
153
+ export interface PanelBlockProps extends ComposedElementProps, ClickeableProps {
154
+ /** `Attribute` `Required` Configuration object with a type and a set of props based on the available components that could be rendered in each `PanelBlock` */
155
+ config: PanelBlockItemProps;
156
+ /** `Attribute` Usable when config's U is `icon` only. It will display a text next to mentioned icon (for user purposes) */
157
+ blockText?: string;
158
+ /** `Styling` Used for `PanelBlock` styling purpose only. Will mark its rendered component as the one selected among its group */
159
+ isActive?: boolean;
160
+ }
161
+ export interface PanelTabItem extends ClickeableProps {
162
+ /** `Attribute` `Required` Will show the text to the user in shape of tab */
163
+ text: string;
164
+ /** `Styling` Used for `PanelTab` styling purpose only. Will mark its rendered component as the one selected among its group */
165
+ isActive?: boolean;
166
+ }
167
+ export interface PanelTabsProps extends ElementProps {
168
+ /** `Attribute` `Required` A list of configuration objects that will render a set of tabs */
169
+ tabList: PanelTabItem[];
170
+ }
132
171
  export {};
@@ -0,0 +1,29 @@
1
+ import { ElementProps } from './commonProps';
2
+ import { InputControlProps, PanelBlockProps, PanelTabsProps } from './moleculeProps';
3
+ import { basicColorType } from '../types/styleTypes';
4
+ export interface FormFieldHelperProps {
5
+ text?: string;
6
+ color?: basicColorType;
7
+ }
8
+ export interface FormFieldProps extends ElementProps {
9
+ /** `Attribute` `Required` Single or multiple `InputControlProps` config objects which will be wrapped around the `FormField` */
10
+ inputControlConfig: InputControlProps | InputControlProps[];
11
+ /** `Attribute` Sets a custom text before the wrapped input to indicate its usage */
12
+ labelText?: string;
13
+ /** `Attribute` Adds a helper text below the wrapped paragraph to provide context information */
14
+ helperConfig?: FormFieldHelperProps;
15
+ /** `Styling` Will adjust field's sections (label, input/s and helper) in horizontal position */
16
+ isHorizontal?: boolean;
17
+ /** `Styling` Will group the list of inputs in a same wrapper (useful for several inputs with same usage, as a complex address) */
18
+ isGrouped?: boolean;
19
+ }
20
+ export interface PanelProps extends ElementProps {
21
+ /** `Attribute` `Required` Will display Panel's header text */
22
+ headerText: string;
23
+ /** `Attribute` A configuration object that will render a set of tabs based on `PanelTab` component */
24
+ panelTabs?: PanelTabsProps;
25
+ /** `Attribute` `Required` A list of configuration objects that will render a list of block with different components, based on `PanelBlockList` component */
26
+ blockList: PanelBlockProps[];
27
+ /** `Styling` Color based on bulma's text color tokens */
28
+ color?: basicColorType;
29
+ }
@@ -1,3 +1,4 @@
1
- export type buttonType = 'submit' | 'reset' | 'button';
2
- export type inputTypes = 'text' | 'password' | 'email' | 'tel';
1
+ export type ButtonType = 'submit' | 'reset' | 'button';
2
+ export type InputType = 'text' | 'password' | 'email' | 'tel';
3
3
  export type DropdownItemType = 'item' | 'link' | 'divider';
4
+ export type PanelBlockItemType = 'icon' | 'control' | 'button';
@@ -4,10 +4,12 @@ export type columnOffsetType = 'is-offset-1' | 'is-offset-2' | 'is-offset-3' | '
4
4
  export type basicColorType = 'is-white' | 'is-light' | 'is-dark' | 'is-black' | 'is-text' | 'is-ghost' | 'is-primary' | 'is-link' | 'is-info' | 'is-success' | 'is-warning' | 'is-danger';
5
5
  export type textColorType = 'has-text-white' | 'has-text-black' | 'has-text-light' | 'has-text-dark' | 'has-text-primary' | 'has-text-link' | 'has-text-info' | 'has-text-success' | 'has-text-warning' | 'has-text-danger';
6
6
  export type fixedImageSizeType = 'is-16x16' | 'is-24x24' | 'is-32x32' | 'is-48x48' | 'is-64x64' | 'is-96x96' | 'is-128x128' | 'is-square' | 'is-1by1' | 'is-5by4' | 'is-4by3' | 'is-3by2' | 'is-5by3' | 'is-16by9' | 'is-2by1' | 'is-3by1' | 'is-4by5' | 'is-3by4' | 'is-2by3' | 'is-3by5' | 'is-9by16' | 'is-1by2' | 'is-1by3';
7
- export type basicSizeType = 'is-small' | 'is-normal' | 'is-medium' | 'is-large';
8
- export type reducedSizeType = Exclude<basicSizeType, 'is-normal'>;
7
+ export type elementSizeType = 'is-small' | 'is-normal' | 'is-medium' | 'is-large';
8
+ export type sizeWithoutNormalType = Exclude<elementSizeType, 'is-normal'>;
9
9
  export type iconColorModeType = 'light' | 'dark';
10
10
  export type columnGapType = 'is-0' | 'is-1' | 'is-2' | 'is-3' | 'is-4' | 'is-5' | 'is-6' | 'is-7' | 'is-8';
11
- export type elementAlignType = 'is-centered' | 'is-right';
11
+ export type elementAlignType = 'is-centered' | 'is-right' | 'is-left';
12
+ export type rightCenteredAlignType = Exclude<elementAlignType, 'is-left'>;
13
+ export type rightLeftAlignType = Exclude<elementAlignType, 'is-centered'>;
12
14
  export type breadcrumbSeparatorType = 'has-arrow-separator' | 'has-bullet-separator' | 'has-dot-separator' | 'has-succeeds-separator';
13
15
  export type tabsFormatType = 'is-boxed' | 'is-toggle';