reactive-bulma 1.14.0 → 1.16.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.
- package/README.md +22 -17
- package/dist/cjs/index.js +65 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/components/atoms/Input/index.d.ts +4 -0
- package/dist/cjs/types/components/atoms/TextArea/index.d.ts +4 -0
- package/dist/cjs/types/components/atoms/index.d.ts +2 -0
- package/dist/cjs/types/interfaces/atomProps.d.ts +25 -6
- package/dist/cjs/types/types/domTypes.d.ts +1 -0
- package/dist/cjs/types/types/styleTypes.d.ts +2 -2
- package/dist/esm/index.js +64 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/atoms/Input/index.d.ts +4 -0
- package/dist/esm/types/components/atoms/TextArea/index.d.ts +4 -0
- package/dist/esm/types/components/atoms/index.d.ts +2 -0
- package/dist/esm/types/interfaces/atomProps.d.ts +25 -6
- package/dist/esm/types/types/domTypes.d.ts +1 -0
- package/dist/esm/types/types/styleTypes.d.ts +2 -2
- package/dist/index.d.ts +32 -8
- package/package.json +27 -26
@@ -1,5 +1,6 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import { basicColorType, columnOffsetType, columnSizeType, fixedImageSizeType, iconColorModeType,
|
2
|
+
import { basicColorType, columnOffsetType, columnSizeType, fixedImageSizeType, iconColorModeType, basicSizeType, textColorType, titleSizeType } from '../types/styleTypes';
|
3
|
+
import { inputTypes } from '../types/domTypes';
|
3
4
|
interface BasicProps {
|
4
5
|
testId?: string;
|
5
6
|
style?: React.CSSProperties;
|
@@ -20,7 +21,7 @@ export interface ButtonProps extends BasicProps, React.ComponentPropsWithoutRef<
|
|
20
21
|
isLoading?: boolean;
|
21
22
|
isDisabled?: boolean;
|
22
23
|
isStatic?: boolean;
|
23
|
-
size?:
|
24
|
+
size?: basicSizeType;
|
24
25
|
onClick?: () => void;
|
25
26
|
}
|
26
27
|
export interface ProgressBarProps extends BasicProps, React.ComponentPropsWithoutRef<'progress'> {
|
@@ -28,7 +29,7 @@ export interface ProgressBarProps extends BasicProps, React.ComponentPropsWithou
|
|
28
29
|
max?: number;
|
29
30
|
style?: React.CSSProperties;
|
30
31
|
color?: basicColorType;
|
31
|
-
size?:
|
32
|
+
size?: basicSizeType;
|
32
33
|
isLoading?: boolean;
|
33
34
|
}
|
34
35
|
export interface BlockProps extends BasicProps, React.ComponentPropsWithoutRef<'section'> {
|
@@ -39,7 +40,7 @@ export interface TagProps extends BasicProps, React.ComponentPropsWithoutRef<'sp
|
|
39
40
|
color?: basicColorType;
|
40
41
|
isLight?: boolean;
|
41
42
|
isRounded?: boolean;
|
42
|
-
size?: Exclude<
|
43
|
+
size?: Exclude<basicSizeType, 'is-normal'>;
|
43
44
|
withDelete?: boolean;
|
44
45
|
withAddon?: boolean;
|
45
46
|
addonText?: string;
|
@@ -55,7 +56,7 @@ export interface BoxProps extends BasicProps, React.ComponentPropsWithoutRef<'se
|
|
55
56
|
}
|
56
57
|
export interface TitleSectionProps extends BasicProps, React.ComponentPropsWithoutRef<'p'> {
|
57
58
|
text: string;
|
58
|
-
size?:
|
59
|
+
size?: titleSizeType;
|
59
60
|
prop: 'title' | 'subtitle';
|
60
61
|
isSpaced?: boolean;
|
61
62
|
}
|
@@ -67,8 +68,26 @@ export interface IconProps extends BasicProps {
|
|
67
68
|
iconLabel: string;
|
68
69
|
text?: string;
|
69
70
|
color?: textColorType;
|
70
|
-
size?: Exclude<
|
71
|
+
size?: Exclude<basicSizeType, 'is-normal'>;
|
71
72
|
colorMode?: iconColorModeType;
|
72
73
|
isSpinning?: boolean;
|
73
74
|
}
|
75
|
+
export interface InputProps extends BasicProps {
|
76
|
+
type: inputTypes;
|
77
|
+
text?: string;
|
78
|
+
isDisabled?: boolean;
|
79
|
+
isReadonly?: boolean;
|
80
|
+
color?: basicColorType;
|
81
|
+
size?: basicSizeType;
|
82
|
+
isRounded?: boolean;
|
83
|
+
isHovered?: boolean;
|
84
|
+
isFocused?: boolean;
|
85
|
+
onClick?: () => void;
|
86
|
+
onChange?: () => void;
|
87
|
+
}
|
88
|
+
export interface TextAreaProps extends Omit<InputProps, 'isRounded' | 'type'> {
|
89
|
+
cols?: number;
|
90
|
+
rows?: number;
|
91
|
+
isFixedSize?: boolean;
|
92
|
+
}
|
74
93
|
export {};
|
@@ -1,8 +1,8 @@
|
|
1
1
|
export type columnSizeType = 'is-three-quarters' | 'is-two-thirds' | 'is-half' | 'is-one-third' | 'is-one-quarter' | 'is-full' | 'is-four-fifths' | 'is-three-fifths' | 'is-two-fifths' | 'is-one-fifth' | 'is-1' | 'is-2' | 'is-3' | 'is-4' | 'is-5' | 'is-6' | 'is-7' | 'is-8' | 'is-9' | 'is-10' | 'is-11' | 'is-12';
|
2
|
-
export type
|
2
|
+
export type titleSizeType = 'is-1' | 'is-2' | 'is-3' | 'is-4' | 'is-5' | 'is-6';
|
3
3
|
export type columnOffsetType = 'is-offset-1' | 'is-offset-2' | 'is-offset-3' | 'is-offset-4' | 'is-offset-5' | 'is-offset-6' | 'is-offset-7' | 'is-offset-8' | 'is-offset-9' | 'is-offset-10' | 'is-offset-11' | 'is-offset-12';
|
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
|
7
|
+
export type basicSizeType = 'is-small' | 'is-normal' | 'is-medium' | 'is-large';
|
8
8
|
export type iconColorModeType = 'light' | 'dark';
|
package/dist/esm/index.js
CHANGED
@@ -2884,7 +2884,7 @@ const Column = ({ testId = null, style = null, size = null, offset = null, isNar
|
|
2884
2884
|
isNarrow ? 'is-narrow' : null
|
2885
2885
|
]);
|
2886
2886
|
const _testId = testId !== null && testId !== void 0 ? testId : parseTestId({ tag: 'column', parsedClasses: columnClasses });
|
2887
|
-
return (React.createElement("section", { "data-testid": _testId, className: columnClasses, style: style
|
2887
|
+
return (React.createElement("section", { "data-testid": _testId, className: columnClasses, style: style !== null && style !== void 0 ? style : undefined }, children));
|
2888
2888
|
};
|
2889
2889
|
|
2890
2890
|
const ProgressBar = ({ value = 0, max = 100, testId = null, style = null, color = 'is-primary', size = null, isLoading = false }) => {
|
@@ -2897,7 +2897,7 @@ const ProgressBar = ({ value = 0, max = 100, testId = null, style = null, color
|
|
2897
2897
|
return (React.createElement("progress", { "data-testid": _testId, className: progressClasses, style: style !== null && style !== void 0 ? style : undefined, value: isLoading ? undefined : value, max: max }, `${isLoading ? 0 : fixedValue}%`));
|
2898
2898
|
};
|
2899
2899
|
|
2900
|
-
const Block = ({ testId = 'test-block', style = null, children = null }) => children ? (React.createElement("section", { "data-testid": testId, className: 'block', style: style
|
2900
|
+
const Block = ({ testId = 'test-block', style = null, children = null }) => children ? (React.createElement("section", { "data-testid": testId, className: 'block', style: style !== null && style !== void 0 ? style : undefined }, children)) : null;
|
2901
2901
|
|
2902
2902
|
const Tag = ({ text, testId = null, style = null, color = null, isLight = null, isRounded = null, size = null, withDelete = false, withAddon = false, addonText = null, addonColor = null, onDeleteClick = null }) => {
|
2903
2903
|
const tagLabel = withAddon ? 'tags' : 'tag';
|
@@ -2919,14 +2919,14 @@ const Tag = ({ text, testId = null, style = null, color = null, isLight = null,
|
|
2919
2919
|
parsedClasses: withAddon ? tagsWrapperClasses : tagClasses,
|
2920
2920
|
separator: withAddon ? '-' : ''
|
2921
2921
|
});
|
2922
|
-
return withAddon ? (React.createElement("section", { "data-testid": _testId, style: style
|
2922
|
+
return withAddon ? (React.createElement("section", { "data-testid": _testId, style: style !== null && style !== void 0 ? style : undefined, className: tagsWrapperClasses },
|
2923
2923
|
React.createElement("span", { className: tagClasses }, text),
|
2924
|
-
withDelete ? (React.createElement("a", { "data-testid": `${_testId}-delete`, className: 'tag is-delete', onClick: onDeleteClick || undefined })) : (React.createElement("span", { className: addonTagClasses }, addonText)))) : (React.createElement("span", { "data-testid": _testId, style: style
|
2924
|
+
withDelete ? (React.createElement("a", { "data-testid": `${_testId}-delete`, className: 'tag is-delete', onClick: onDeleteClick || undefined })) : (React.createElement("span", { className: addonTagClasses }, addonText)))) : (React.createElement("span", { "data-testid": _testId, style: style !== null && style !== void 0 ? style : undefined, className: tagClasses },
|
2925
2925
|
text,
|
2926
2926
|
withDelete ? (React.createElement("button", { "data-testid": `${_testId}-delete`, className: 'delete', onClick: onDeleteClick || undefined })) : null));
|
2927
2927
|
};
|
2928
2928
|
|
2929
|
-
const Box = ({ testId = 'test-box', style = null, children = null }) => children ? (React.createElement("section", { "data-testid": testId, className: 'box', style: style
|
2929
|
+
const Box = ({ testId = 'test-box', style = null, children = null }) => children ? (React.createElement("section", { "data-testid": testId, className: 'box', style: style !== null && style !== void 0 ? style : undefined }, children)) : null;
|
2930
2930
|
|
2931
2931
|
const renderTitleSection = (section) => {
|
2932
2932
|
var _a, _b;
|
@@ -2948,7 +2948,21 @@ var IconSizeEnum;
|
|
2948
2948
|
IconSizeEnum[IconSizeEnum["is-large"] = 48] = "is-large";
|
2949
2949
|
})(IconSizeEnum || (IconSizeEnum = {}));
|
2950
2950
|
|
2951
|
-
const generateIconContainer = (icon, color) =>
|
2951
|
+
const generateIconContainer = (icon, color) => {
|
2952
|
+
var _a;
|
2953
|
+
const containerClasses = color ? `icon-text-${color}` : 'icon-text';
|
2954
|
+
const containerTestId = parseTestId({
|
2955
|
+
tag: 'icon-container',
|
2956
|
+
parsedClasses: (_a = color === null || color === void 0 ? void 0 : color.toString()) !== null && _a !== void 0 ? _a : '',
|
2957
|
+
rules: [
|
2958
|
+
{
|
2959
|
+
usedRegExp: /has-text/gm,
|
2960
|
+
regExpReplacer: ''
|
2961
|
+
}
|
2962
|
+
]
|
2963
|
+
});
|
2964
|
+
return (React.createElement("span", { "data-testid": containerTestId, className: containerClasses }, icon));
|
2965
|
+
};
|
2952
2966
|
const Icon = ({ iconLabel, testId = null, text = null, style = null, color = null, size = null, colorMode = null, isSpinning = false }) => {
|
2953
2967
|
const iconSpanClasses = parseClasses(['icon', color, size]);
|
2954
2968
|
const iconClasses = parseClasses([
|
@@ -2974,11 +2988,53 @@ const Icon = ({ iconLabel, testId = null, text = null, style = null, color = nul
|
|
2974
2988
|
separator: '-'
|
2975
2989
|
});
|
2976
2990
|
const _internalTestId = `${_testId}-i`;
|
2977
|
-
const iconComponent = (React.createElement("span", { "data-testid": _testId, style: style
|
2991
|
+
const iconComponent = (React.createElement("span", { "data-testid": _testId, style: style !== null && style !== void 0 ? style : undefined, className: iconSpanClasses },
|
2978
2992
|
React.createElement("i", { "data-testid": _internalTestId, className: iconClasses }),
|
2979
2993
|
text ? React.createElement("span", null, text) : null));
|
2980
2994
|
return text ? generateIconContainer(iconComponent, color) : iconComponent;
|
2981
2995
|
};
|
2982
2996
|
|
2983
|
-
|
2997
|
+
const Input = ({ testId = null, type, text = null, isDisabled = false, isReadonly = false, style = null, color = null, size = null, isRounded = null, isHovered = null, isFocused = null, onClick = null, onChange = null }) => {
|
2998
|
+
const inputClasses = parseClasses([
|
2999
|
+
'input',
|
3000
|
+
color,
|
3001
|
+
size,
|
3002
|
+
isRounded ? 'is-rounded' : null,
|
3003
|
+
isHovered ? 'is-hovered' : null,
|
3004
|
+
isFocused ? 'is-focused' : null
|
3005
|
+
]);
|
3006
|
+
const _testId = testId !== null && testId !== void 0 ? testId : parseTestId({
|
3007
|
+
tag: 'input',
|
3008
|
+
parsedClasses: inputClasses
|
3009
|
+
});
|
3010
|
+
return (React.createElement("input", { "data-testid": _testId, type: type, defaultValue: text !== null && text !== void 0 ? text : undefined, disabled: isDisabled, readOnly: isReadonly, style: style !== null && style !== void 0 ? style : undefined, className: inputClasses, onClick: onClick !== null && onClick !== void 0 ? onClick : undefined, onChange: onChange !== null && onChange !== void 0 ? onChange : undefined }));
|
3011
|
+
};
|
3012
|
+
|
3013
|
+
const TextArea = ({ testId = null, text = null, cols = null, rows = null, isDisabled = false, isReadonly = false, isFixedSize = false, style = null, color = null, size = null, isHovered = null, isFocused = null, onClick = null, onChange = null }) => {
|
3014
|
+
const textAreaClasses = parseClasses([
|
3015
|
+
'textarea',
|
3016
|
+
color,
|
3017
|
+
size,
|
3018
|
+
isHovered ? 'is-hovered' : null,
|
3019
|
+
isFocused ? 'is-focused' : null,
|
3020
|
+
isFixedSize ? 'has-fixed-size' : null
|
3021
|
+
]);
|
3022
|
+
const _testId = testId !== null && testId !== void 0 ? testId : parseTestId({
|
3023
|
+
tag: 'textarea',
|
3024
|
+
parsedClasses: textAreaClasses,
|
3025
|
+
rules: [
|
3026
|
+
{
|
3027
|
+
usedRegExp: /textarea/gm,
|
3028
|
+
regExpReplacer: ''
|
3029
|
+
},
|
3030
|
+
{
|
3031
|
+
usedRegExp: /is-|has-/gm,
|
3032
|
+
regExpReplacer: '-'
|
3033
|
+
}
|
3034
|
+
]
|
3035
|
+
});
|
3036
|
+
return (React.createElement("textarea", { "data-testid": _testId, defaultValue: text !== null && text !== void 0 ? text : undefined, cols: cols !== null && cols !== void 0 ? cols : undefined, rows: rows !== null && rows !== void 0 ? rows : undefined, disabled: isDisabled, readOnly: isReadonly, style: style !== null && style !== void 0 ? style : undefined, className: textAreaClasses, onClick: onClick !== null && onClick !== void 0 ? onClick : undefined, onChange: onChange !== null && onChange !== void 0 ? onChange : undefined }));
|
3037
|
+
};
|
3038
|
+
|
3039
|
+
export { Block, Box, Button, Column, Icon, Input, ProgressBar, Tag, TextArea, Title };
|
2984
3040
|
//# sourceMappingURL=index.js.map
|