reactive-bulma 2.1.1 → 2.2.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.
- package/dist/cjs/index.js +29 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/components/molecules/ColumnGroup/index.d.ts +4 -0
- package/dist/cjs/types/components/molecules/index.d.ts +1 -0
- package/dist/cjs/types/interfaces/moleculeProps.d.ts +17 -2
- package/dist/cjs/types/types/styleTypes.d.ts +1 -0
- package/dist/esm/index.js +29 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/molecules/ColumnGroup/index.d.ts +4 -0
- package/dist/esm/types/components/molecules/index.d.ts +1 -0
- package/dist/esm/types/interfaces/moleculeProps.d.ts +17 -2
- package/dist/esm/types/types/styleTypes.d.ts +1 -0
- package/dist/index.d.ts +19 -2
- package/package.json +20 -20
@@ -1,10 +1,25 @@
|
|
1
1
|
import { ElementProps } from './commonProps';
|
2
|
-
import { ButtonProps } from './atomProps';
|
2
|
+
import { ButtonProps, ColumnProps } from './atomProps';
|
3
|
+
import { columnGapType } from '../types/styleTypes';
|
3
4
|
export interface ButtonGroupProps extends ElementProps {
|
4
|
-
/** `Atribute` Array of
|
5
|
+
/** `Atribute` `Required` Array of `Button` objects that will be shown */
|
5
6
|
buttonList: ButtonProps[];
|
6
7
|
/** `Styling` Will group the list of buttonList in a single line */
|
7
8
|
isAttached?: boolean;
|
8
9
|
/** `Styling` Sets group position on the container */
|
9
10
|
position?: 'left' | 'centered' | 'right';
|
10
11
|
}
|
12
|
+
export interface ColumnGroupProps extends ElementProps {
|
13
|
+
/** `Atribute` `Required` Array of `Column` objects that will be shown */
|
14
|
+
listOfColumns: ColumnProps[];
|
15
|
+
/** `Styling` Will adjust column structure display layout in case you want to work on mobiles */
|
16
|
+
isMobileLayout?: boolean;
|
17
|
+
/** `Styling` Will reorder column display in multiple lines each time exceeds viewport width */
|
18
|
+
isMultiline?: boolean;
|
19
|
+
/** `Styling` Will center the list of columns vertically */
|
20
|
+
isVerticallyCentered?: boolean;
|
21
|
+
/** `Styling` Will center the list of columns horizontally */
|
22
|
+
isHorizontallyCentered?: boolean;
|
23
|
+
/** `Styling` Will adjust the space between the columns. In case to set null, it will remove those gaps */
|
24
|
+
gap?: columnGapType | null;
|
25
|
+
}
|
@@ -6,3 +6,4 @@ export type textColorType = 'has-text-white' | 'has-text-black' | 'has-text-ligh
|
|
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
7
|
export type basicSizeType = 'is-small' | 'is-normal' | 'is-medium' | 'is-large';
|
8
8
|
export type iconColorModeType = 'light' | 'dark';
|
9
|
+
export type columnGapType = 'is-0' | 'is-1' | 'is-2' | 'is-3' | 'is-4' | 'is-5' | 'is-6' | 'is-7' | 'is-8';
|
package/dist/esm/index.js
CHANGED
@@ -3197,9 +3197,36 @@ const ButtonGroup = ({ testId = null, cssClasses = null, style = null, buttonLis
|
|
3197
3197
|
const shouldApplyColor = (hasSelectedButton && currentButtonItem.isSelected) ||
|
3198
3198
|
!hasSelectedButton;
|
3199
3199
|
const buttonConfig = Object.assign(Object.assign({}, currentButtonItem), { color: shouldApplyColor ? currentButtonItem.color : undefined });
|
3200
|
-
return (React.createElement(Button, Object.assign({ key: `button-
|
3200
|
+
return (React.createElement(Button, Object.assign({ key: `button-group-item-${i}` }, buttonConfig)));
|
3201
3201
|
})));
|
3202
3202
|
};
|
3203
3203
|
|
3204
|
-
|
3204
|
+
const parseGapCssClass = (gapPropValue) => {
|
3205
|
+
switch (gapPropValue) {
|
3206
|
+
case null:
|
3207
|
+
return 'is-gapless';
|
3208
|
+
case undefined:
|
3209
|
+
return 'is-3';
|
3210
|
+
default:
|
3211
|
+
return gapPropValue;
|
3212
|
+
}
|
3213
|
+
};
|
3214
|
+
const ColumnGroup = ({ testId = null, cssClasses = null, style = null, listOfColumns, isMobileLayout = null, isMultiline = null, isVerticallyCentered = null, isHorizontallyCentered = null, gap = undefined }) => {
|
3215
|
+
const columnGroupClasses = parseClasses([
|
3216
|
+
'columns',
|
3217
|
+
isMultiline ? 'is-multiline' : null,
|
3218
|
+
isMobileLayout ? 'is-mobile' : null,
|
3219
|
+
isVerticallyCentered ? 'is-vcentered' : null,
|
3220
|
+
isHorizontallyCentered ? 'is-centered' : null,
|
3221
|
+
parseGapCssClass(gap),
|
3222
|
+
cssClasses
|
3223
|
+
]);
|
3224
|
+
const columnGroupTestId = testId !== null && testId !== void 0 ? testId : parseTestId({
|
3225
|
+
tag: 'columns',
|
3226
|
+
parsedClasses: columnGroupClasses
|
3227
|
+
});
|
3228
|
+
return (React.createElement("section", { "data-testid": columnGroupTestId, className: columnGroupClasses, style: style !== null && style !== void 0 ? style : undefined }, listOfColumns.map((_columnItem, i) => (React.createElement(Column, Object.assign({ key: `column-group-item-${i}` }, _columnItem))))));
|
3229
|
+
};
|
3230
|
+
|
3231
|
+
export { Block, Box, Button, ButtonGroup, CheckBox as Checkbox, Column, ColumnGroup, Delete, File, Icon, Input, ProgressBar, RadioButton, Select, Tag, TextArea, Title };
|
3205
3232
|
//# sourceMappingURL=index.js.map
|