@tecsinapse/react-core 1.17.3 → 1.19.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/CHANGELOG.md +39 -0
- package/dist/components/atoms/Avatar/Avatar.js.map +1 -1
- package/dist/components/atoms/Avatar/helpers.js.map +1 -1
- package/dist/components/atoms/Avatar/index.js.map +1 -1
- package/dist/components/atoms/Avatar/styled.js.map +1 -1
- package/dist/components/atoms/Badge/Badge.js.map +1 -1
- package/dist/components/atoms/Badge/index.js.map +1 -1
- package/dist/components/atoms/Badge/styled.js.map +1 -1
- package/dist/components/atoms/BoxContent/BoxContent.js.map +1 -1
- package/dist/components/atoms/BoxContent/index.js.map +1 -1
- package/dist/components/atoms/BoxContent/styled.js +1 -1
- package/dist/components/atoms/BoxContent/styled.js.map +1 -1
- package/dist/components/atoms/Button/Button.js +1 -1
- package/dist/components/atoms/Button/Button.js.map +1 -1
- package/dist/components/atoms/Button/States/BaseState.js.map +1 -1
- package/dist/components/atoms/Button/States/Error.js +1 -1
- package/dist/components/atoms/Button/States/Error.js.map +1 -1
- package/dist/components/atoms/Button/States/Loading.js.map +1 -1
- package/dist/components/atoms/Button/States/Success.js +1 -1
- package/dist/components/atoms/Button/States/Success.js.map +1 -1
- package/dist/components/atoms/Button/States/index.js.map +1 -1
- package/dist/components/atoms/Button/States/styled.js +1 -1
- package/dist/components/atoms/Button/States/styled.js.map +1 -1
- package/dist/components/atoms/Button/index.js +1 -1
- package/dist/components/atoms/Button/index.js.map +1 -1
- package/dist/components/atoms/Button/styled.js.map +1 -1
- package/dist/components/atoms/Card/Card.js +1 -1
- package/dist/components/atoms/Card/Card.js.map +1 -1
- package/dist/components/atoms/Card/Footer/Footer.js.map +1 -1
- package/dist/components/atoms/Card/Footer/index.js.map +1 -1
- package/dist/components/atoms/Card/Header/Header.js.map +1 -1
- package/dist/components/atoms/Card/Header/index.js.map +1 -1
- package/dist/components/atoms/Card/index.js.map +1 -1
- package/dist/components/atoms/Card/styled.js.map +1 -1
- package/dist/components/atoms/Checkbox/Checkbox.js +1 -1
- package/dist/components/atoms/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/atoms/Checkbox/index.js.map +1 -1
- package/dist/components/atoms/Checkbox/styled.js +1 -1
- package/dist/components/atoms/Checkbox/styled.js.map +1 -1
- package/dist/components/atoms/Divider/Divider.js.map +1 -1
- package/dist/components/atoms/Divider/index.js.map +1 -1
- package/dist/components/atoms/Divider/styled.js.map +1 -1
- package/dist/components/atoms/GroupButton/GroupButton.d.ts +1 -1
- package/dist/components/atoms/GroupButton/GroupButton.js +1 -1
- package/dist/components/atoms/GroupButton/GroupButton.js.map +1 -1
- package/dist/components/atoms/GroupButton/GroupButtonOption.js.map +1 -1
- package/dist/components/atoms/GroupButton/index.js +1 -1
- package/dist/components/atoms/GroupButton/index.js.map +1 -1
- package/dist/components/atoms/GroupButton/styled.js +1 -1
- package/dist/components/atoms/GroupButton/styled.js.map +1 -1
- package/dist/components/atoms/Icon/Icon.js +1 -1
- package/dist/components/atoms/Icon/Icon.js.map +1 -1
- package/dist/components/atoms/Icon/helpers.js +1 -1
- package/dist/components/atoms/Icon/helpers.js.map +1 -1
- package/dist/components/atoms/Icon/index.js.map +1 -1
- package/dist/components/atoms/Input/Hint.js.map +1 -1
- package/dist/components/atoms/Input/InputContainer/InputContainer.d.ts +1 -1
- package/dist/components/atoms/Input/InputContainer/InputContainer.js +1 -1
- package/dist/components/atoms/Input/InputContainer/InputContainer.js.map +1 -1
- package/dist/components/atoms/Input/InputElement/InputElement.d.ts +3 -4
- package/dist/components/atoms/Input/InputElement/InputElement.js +1 -1
- package/dist/components/atoms/Input/InputElement/InputElement.js.map +1 -1
- package/dist/components/atoms/Input/InputMaskElement/InputMaskElement.d.ts +3 -4
- package/dist/components/atoms/Input/InputMaskElement/InputMaskElement.js +1 -1
- package/dist/components/atoms/Input/InputMaskElement/InputMaskElement.js.map +1 -1
- package/dist/components/atoms/Input/PressableInputContainer/PressableInputContainer.js +1 -1
- package/dist/components/atoms/Input/PressableInputContainer/PressableInputContainer.js.map +1 -1
- package/dist/components/atoms/Input/PressableInputContainer/index.js.map +1 -1
- package/dist/components/atoms/Input/PressableInputContainer/styled.js.map +1 -1
- package/dist/components/atoms/Input/hooks/useInputFocus.js.map +1 -1
- package/dist/components/atoms/Input/hooks/useNumberMask.js.map +1 -1
- package/dist/components/atoms/Input/hooks/useStringMask.js +1 -1
- package/dist/components/atoms/Input/hooks/useStringMask.js.map +1 -1
- package/dist/components/atoms/Input/index.js +1 -1
- package/dist/components/atoms/Input/index.js.map +1 -1
- package/dist/components/atoms/Input/styled.js +1 -1
- package/dist/components/atoms/Input/styled.js.map +1 -1
- package/dist/components/atoms/Paper/Paper.js +1 -1
- package/dist/components/atoms/Paper/Paper.js.map +1 -1
- package/dist/components/atoms/Paper/index.js.map +1 -1
- package/dist/components/atoms/Paper/styled.js.map +1 -1
- package/dist/components/atoms/PressableSurface/PressableSurface.js +1 -1
- package/dist/components/atoms/PressableSurface/PressableSurface.js.map +1 -1
- package/dist/components/atoms/PressableSurface/index.js.map +1 -1
- package/dist/components/atoms/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/components/atoms/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/components/atoms/ProgressBar/index.js.map +1 -1
- package/dist/components/atoms/ProgressBar/styled.js +1 -1
- package/dist/components/atoms/ProgressBar/styled.js.map +1 -1
- package/dist/components/atoms/RadioButton/RadioButton.js +1 -1
- package/dist/components/atoms/RadioButton/RadioButton.js.map +1 -1
- package/dist/components/atoms/RadioButton/index.js.map +1 -1
- package/dist/components/atoms/RadioButton/styled.js +1 -1
- package/dist/components/atoms/RadioButton/styled.js.map +1 -1
- package/dist/components/atoms/Switch/Switch.d.ts +1 -1
- package/dist/components/atoms/Switch/Switch.js +1 -1
- package/dist/components/atoms/Switch/Switch.js.map +1 -1
- package/dist/components/atoms/Switch/animation.js.map +1 -1
- package/dist/components/atoms/Switch/index.js.map +1 -1
- package/dist/components/atoms/Switch/styled.d.ts +2 -14
- package/dist/components/atoms/Switch/styled.js +1 -1
- package/dist/components/atoms/Switch/styled.js.map +1 -1
- package/dist/components/atoms/Tag/Tag.js +1 -1
- package/dist/components/atoms/Tag/Tag.js.map +1 -1
- package/dist/components/atoms/Tag/index.js.map +1 -1
- package/dist/components/atoms/Tag/styled.js +1 -1
- package/dist/components/atoms/Tag/styled.js.map +1 -1
- package/dist/components/atoms/Text/Text.js +1 -1
- package/dist/components/atoms/Text/Text.js.map +1 -1
- package/dist/components/atoms/Text/functions.js.map +1 -1
- package/dist/components/atoms/Text/index.js.map +1 -1
- package/dist/components/atoms/Text/styled.js +1 -1
- package/dist/components/atoms/Text/styled.js.map +1 -1
- package/dist/components/atoms/shared/PaperAndCard.js.map +1 -1
- package/dist/components/molecules/Calendar/Calendar.js.map +1 -1
- package/dist/components/molecules/Calendar/components/MonthWeek.js.map +1 -1
- package/dist/components/molecules/Calendar/components/Weekdays.js.map +1 -1
- package/dist/components/molecules/Calendar/components/index.js +1 -1
- package/dist/components/molecules/Calendar/components/index.js.map +1 -1
- package/dist/components/molecules/Calendar/index.d.ts +1 -1
- package/dist/components/molecules/Calendar/index.js +1 -1
- package/dist/components/molecules/Calendar/index.js.map +1 -1
- package/dist/components/molecules/Calendar/styled.js +1 -1
- package/dist/components/molecules/Calendar/styled.js.map +1 -1
- package/dist/components/molecules/DatePicker/DatePicker.js +1 -1
- package/dist/components/molecules/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/molecules/DatePicker/index.js.map +1 -1
- package/dist/components/molecules/DatePicker/styled.js +1 -1
- package/dist/components/molecules/DatePicker/styled.js.map +1 -1
- package/dist/components/molecules/DateTimePicker/DateTimePicker.js +1 -1
- package/dist/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
- package/dist/components/molecules/DateTimePicker/index.js.map +1 -1
- package/dist/components/molecules/DateTimePicker/styled.js.map +1 -1
- package/dist/components/molecules/DateTimeSelector/DateTimeSelector.js +2 -1
- package/dist/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
- package/dist/components/molecules/DateTimeSelector/Selector.js.map +1 -1
- package/dist/components/molecules/DateTimeSelector/index.js +1 -1
- package/dist/components/molecules/DateTimeSelector/index.js.map +1 -1
- package/dist/components/molecules/DateTimeSelector/styled.js +1 -1
- package/dist/components/molecules/DateTimeSelector/styled.js.map +1 -1
- package/dist/components/molecules/Grid/functions.d.ts +3 -0
- package/dist/components/molecules/Grid/functions.js +21 -0
- package/dist/components/molecules/Grid/functions.js.map +1 -0
- package/dist/components/molecules/Grid/index.d.ts +42 -2
- package/dist/components/molecules/Grid/index.js +4 -13
- package/dist/components/molecules/Grid/index.js.map +1 -1
- package/dist/components/molecules/HintInputContainer/HintInputContainer.js +1 -1
- package/dist/components/molecules/HintInputContainer/HintInputContainer.js.map +1 -1
- package/dist/components/molecules/HintInputContainer/index.js.map +1 -1
- package/dist/components/molecules/HintInputContainer/styled.js.map +1 -1
- package/dist/components/molecules/IconTextButton/IconComponent.d.ts +9 -0
- package/dist/components/molecules/IconTextButton/IconComponent.js +28 -0
- package/dist/components/molecules/IconTextButton/IconComponent.js.map +1 -0
- package/dist/components/molecules/IconTextButton/IconTextButton.d.ts +8 -0
- package/dist/components/molecules/IconTextButton/IconTextButton.js +4 -0
- package/dist/components/molecules/IconTextButton/IconTextButton.js.map +1 -0
- package/dist/components/molecules/IconTextButton/index.d.ts +2 -0
- package/dist/components/molecules/IconTextButton/index.js +16 -0
- package/dist/components/molecules/IconTextButton/index.js.map +1 -0
- package/dist/components/molecules/IconTextButton/styled.d.ts +4 -0
- package/dist/components/molecules/{Grid/Item/index.js → IconTextButton/styled.js} +19 -5
- package/dist/components/molecules/IconTextButton/styled.js.map +1 -0
- package/dist/components/molecules/InputPassword/InputPasswordIcon.js +1 -1
- package/dist/components/molecules/InputPassword/InputPasswordIcon.js.map +1 -1
- package/dist/components/molecules/InputPassword/index.js.map +1 -1
- package/dist/components/molecules/InputPassword/styled.js.map +1 -1
- package/dist/components/molecules/LabeledSwitch/LabeledSwitch.d.ts +7 -0
- package/dist/components/molecules/LabeledSwitch/LabeledSwitch.js +4 -0
- package/dist/components/molecules/LabeledSwitch/LabeledSwitch.js.map +1 -0
- package/dist/components/molecules/LabeledSwitch/index.d.ts +1 -0
- package/dist/components/molecules/LabeledSwitch/index.js +10 -0
- package/dist/components/molecules/LabeledSwitch/index.js.map +1 -0
- package/dist/components/molecules/Snackbar/Snackbar.js +1 -1
- package/dist/components/molecules/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/molecules/Snackbar/index.js.map +1 -1
- package/dist/components/molecules/Snackbar/styled.js +1 -1
- package/dist/components/molecules/Snackbar/styled.js.map +1 -1
- package/dist/components/molecules/TextArea/TextArea.d.ts +1 -1
- package/dist/components/molecules/TextArea/TextArea.js.map +1 -1
- package/dist/components/molecules/TextArea/index.js +1 -1
- package/dist/components/molecules/TextArea/index.js.map +1 -1
- package/dist/components/molecules/TextArea/styled.d.ts +2 -14
- package/dist/components/molecules/TextArea/styled.js.map +1 -1
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useDebouncedState.js +1 -1
- package/dist/hooks/useDebouncedState.js.map +1 -1
- package/dist/hooks/useTheme.js.map +1 -1
- package/dist/index.d.ts +7 -5
- package/dist/index.js +58 -30
- package/dist/index.js.map +1 -1
- package/dist/styles/ThemeProvider.js.map +1 -1
- package/dist/styles/definitions.d.ts +2 -1
- package/dist/styles/definitions.js +7 -1
- package/dist/styles/definitions.js.map +1 -1
- package/dist/styles/light.js +2 -1
- package/dist/styles/light.js.map +1 -1
- package/dist/types/defaults.d.ts +8 -2
- package/dist/types/defaults.js.map +1 -1
- package/dist/utils/IPhoneXHelper.js +3 -3
- package/dist/utils/IPhoneXHelper.js.map +1 -1
- package/dist/utils/ResponsiveFontSize.js +6 -6
- package/dist/utils/ResponsiveFontSize.js.map +1 -1
- package/dist/utils/extractNumbersFromString.js +1 -1
- package/dist/utils/extractNumbersFromString.js.map +1 -1
- package/dist/utils/formatWithMask.js.map +1 -1
- package/dist/utils/index.d.ts +5 -4
- package/dist/utils/index.js +28 -19
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/lightenDarkenColor.js.map +1 -1
- package/dist/utils/masks.js.map +1 -1
- package/dist/utils/variantComplement.d.ts +6 -0
- package/dist/utils/variantComplement.js +35 -0
- package/dist/utils/variantComplement.js.map +1 -0
- package/package.json +5 -5
- package/src/components/atoms/Badge/styled.ts +2 -3
- package/src/components/atoms/GroupButton/GroupButton.tsx +2 -5
- package/src/components/atoms/Input/InputContainer/InputContainer.tsx +3 -3
- package/src/components/atoms/Input/InputElement/InputElement.tsx +4 -5
- package/src/components/atoms/Input/InputMaskElement/InputMaskElement.tsx +4 -5
- package/src/components/atoms/ProgressBar/ProgressBar.tsx +2 -4
- package/src/components/atoms/Switch/Switch.tsx +39 -19
- package/src/components/atoms/Switch/animation.ts +4 -6
- package/src/components/atoms/Switch/styled.ts +4 -6
- package/src/components/atoms/Tag/Tag.tsx +1 -1
- package/src/components/atoms/shared/PaperAndCard.ts +1 -1
- package/src/components/molecules/Calendar/index.ts +1 -1
- package/src/components/molecules/DatePicker/DatePicker.tsx +12 -8
- package/src/components/molecules/DateTimePicker/DateTimePicker.tsx +19 -11
- package/src/components/molecules/DateTimeSelector/DateTimeSelector.tsx +0 -1
- package/src/components/molecules/Grid/functions.ts +29 -0
- package/src/components/molecules/Grid/index.ts +66 -2
- package/src/components/molecules/HintInputContainer/HintInputContainer.tsx +6 -1
- package/src/components/molecules/IconTextButton/IconComponent.tsx +31 -0
- package/src/components/molecules/IconTextButton/IconTextButton.tsx +10 -0
- package/src/components/molecules/IconTextButton/index.ts +2 -0
- package/src/components/molecules/IconTextButton/styled.ts +20 -0
- package/src/components/molecules/LabeledSwitch/LabeledSwitch.tsx +9 -0
- package/src/components/molecules/LabeledSwitch/index.ts +1 -0
- package/src/components/molecules/Snackbar/Snackbar.tsx +1 -1
- package/src/components/molecules/Snackbar/styled.ts +6 -2
- package/src/components/molecules/TextArea/TextArea.tsx +6 -2
- package/src/components/molecules/TextArea/styled.ts +5 -2
- package/src/hooks/useDebouncedState.ts +1 -1
- package/src/index.ts +26 -6
- package/src/styles/definitions.ts +8 -1
- package/src/styles/light.ts +2 -0
- package/src/types/defaults.ts +11 -1
- package/src/utils/IPhoneXHelper.ts +27 -22
- package/src/utils/ResponsiveFontSize.ts +55 -36
- package/src/utils/index.ts +5 -4
- package/src/utils/variantComplement.ts +36 -0
- package/dist/components/molecules/Grid/Grid.d.ts +0 -15
- package/dist/components/molecules/Grid/Grid.js +0 -55
- package/dist/components/molecules/Grid/Grid.js.map +0 -1
- package/dist/components/molecules/Grid/Item/Item.d.ts +0 -30
- package/dist/components/molecules/Grid/Item/Item.js +0 -68
- package/dist/components/molecules/Grid/Item/Item.js.map +0 -1
- package/dist/components/molecules/Grid/Item/index.d.ts +0 -1
- package/dist/components/molecules/Grid/Item/index.js.map +0 -1
- package/src/components/molecules/Grid/Grid.stories.tsx +0 -132
- package/src/components/molecules/Grid/Grid.tsx +0 -87
- package/src/components/molecules/Grid/Item/Item.tsx +0 -93
- package/src/components/molecules/Grid/Item/index.ts +0 -1
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
exports.default = void 0;
|
|
5
|
-
|
|
6
|
-
var _react = _interopRequireDefault(require("react"));
|
|
7
|
-
|
|
8
|
-
var _reactNative = require("react-native");
|
|
9
|
-
|
|
10
|
-
var _hooks = require("../../../../hooks");
|
|
11
|
-
|
|
12
|
-
var _utils = require("../../../../utils");
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
const GridItem = ({
|
|
17
|
-
children,
|
|
18
|
-
span,
|
|
19
|
-
columns = 12,
|
|
20
|
-
loadingComponent,
|
|
21
|
-
loading = false,
|
|
22
|
-
spacing: _spacing,
|
|
23
|
-
wrapper = false,
|
|
24
|
-
...rest
|
|
25
|
-
}) => {
|
|
26
|
-
const {
|
|
27
|
-
spacing
|
|
28
|
-
} = (0, _hooks.useTheme)();
|
|
29
|
-
|
|
30
|
-
if (!_react.default.Children.only(children)) {
|
|
31
|
-
throw new Error('The number of children in GridItem should be one');
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
if (loadingComponent && loading) {
|
|
35
|
-
return loadingComponent;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
const getPadding = pos => {
|
|
39
|
-
if (_spacing) {
|
|
40
|
-
if (typeof _spacing === 'string') return (0, _utils.extractNumbersFromString)(spacing[_spacing]);else if (typeof _spacing === 'object' && _spacing[pos]) {
|
|
41
|
-
return (0, _utils.extractNumbersFromString)(spacing[_spacing[pos]]);
|
|
42
|
-
} else return undefined;
|
|
43
|
-
} else return undefined;
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const style = { ...rest,
|
|
47
|
-
boxSizing: 'border-box',
|
|
48
|
-
flexBasis: `${100 / (columns / span)}%`,
|
|
49
|
-
paddingTop: getPadding('top'),
|
|
50
|
-
paddingBottom: getPadding('bottom'),
|
|
51
|
-
paddingRight: getPadding('right'),
|
|
52
|
-
paddingLeft: getPadding('left')
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const clone = _react.default.cloneElement(children, { ...(children == null ? void 0 : children.props),
|
|
56
|
-
style: wrapper ? children == null ? void 0 : children.props.style : { ...style,
|
|
57
|
-
...(children == null ? void 0 : children.props.style)
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
return wrapper ? _react.default.createElement(_reactNative.View, {
|
|
62
|
-
style: style
|
|
63
|
-
}, clone) : clone;
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
var _default = GridItem;
|
|
67
|
-
exports.default = _default;
|
|
68
|
-
//# sourceMappingURL=Item.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/molecules/Grid/Item/Item.tsx"],"names":["GridItem","children","span","columns","loadingComponent","loading","spacing","_spacing","wrapper","rest","React","Children","only","Error","getPadding","pos","undefined","style","boxSizing","flexBasis","paddingTop","paddingBottom","paddingRight","paddingLeft","clone","cloneElement","props"],"mappings":";;;;;AAAA;;AACA;;AACA;;AAEA;;;;AAwCA,MAAMA,QAAQ,GAAG,CAAC;AAChBC,EAAAA,QADgB;AAEhBC,EAAAA,IAFgB;AAGhBC,EAAAA,OAAO,GAAG,EAHM;AAIhBC,EAAAA,gBAJgB;AAKhBC,EAAAA,OAAO,GAAG,KALM;AAMhBC,EAAAA,OAAO,EAAEC,QANO;AAOhBC,EAAAA,OAAO,GAAG,KAPM;AAQhB,KAAGC;AARa,CAAD,KASA;AACf,QAAM;AAAEH,IAAAA;AAAF,MAAc,sBAApB;;AACA,MAAI,CAACI,eAAMC,QAAN,CAAeC,IAAf,CAAoBX,QAApB,CAAL,EAAoC;AAClC,UAAM,IAAIY,KAAJ,CAAU,kDAAV,CAAN;AACD;;AACD,MAAIT,gBAAgB,IAAIC,OAAxB,EAAiC;AAC/B,WAAOD,gBAAP;AACD;;AAED,QAAMU,UAAU,GAAIC,GAAD,IAA0B;AAC3C,QAAIR,QAAJ,EAAc;AACZ,UAAI,OAAOA,QAAP,KAAoB,QAAxB,EACE,OAAO,qCAAyBD,OAAO,CAACC,QAAD,CAAhC,CAAP,CADF,KAEK,IAAI,OAAOA,QAAP,KAAoB,QAApB,IAAgCA,QAAQ,CAACQ,GAAD,CAA5C,EAAmD;AACtD,eAAO,qCAAyBT,OAAO,CAACC,QAAQ,CAACQ,GAAD,CAAT,CAAhC,CAAP;AACD,OAFI,MAEE,OAAOC,SAAP;AACR,KAND,MAMO,OAAOA,SAAP;AACR,GARD;;AAUA,QAAMC,KAAK,GAAG,EACZ,GAAGR,IADS;AAEZS,IAAAA,SAAS,EAAE,YAFC;AAGZC,IAAAA,SAAS,EAAG,GAAE,OAAOhB,OAAO,GAAGD,IAAjB,CAAuB,GAHzB;AAIZkB,IAAAA,UAAU,EAAEN,UAAU,CAAC,KAAD,CAJV;AAKZO,IAAAA,aAAa,EAAEP,UAAU,CAAC,QAAD,CALb;AAMZQ,IAAAA,YAAY,EAAER,UAAU,CAAC,OAAD,CANZ;AAOZS,IAAAA,WAAW,EAAET,UAAU,CAAC,MAAD;AAPX,GAAd;;AAUA,QAAMU,KAAK,GAAGd,eAAMe,YAAN,CAAmBxB,QAAnB,EAA6B,EACzC,IAAGA,QAAH,oBAAGA,QAAQ,CAAEyB,KAAb,CADyC;AAEzCT,IAAAA,KAAK,EAAET,OAAO,GACVP,QADU,oBACVA,QAAQ,CAAEyB,KAAV,CAAgBT,KADN,GAEV,EAAE,GAAGA,KAAL;AAAY,UAAGhB,QAAH,oBAAGA,QAAQ,CAAEyB,KAAV,CAAgBT,KAAnB;AAAZ;AAJqC,GAA7B,CAAd;;AAOA,SAAOT,OAAO,GAAG,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAES;AAAb,KAAqBO,KAArB,CAAH,GAAwCA,KAAtD;AACD,CA9CD;;eAgDexB,Q","sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { useTheme } from '../../../../hooks';\nimport { SpacingType } from '../../../../types/defaults';\nimport { extractNumbersFromString } from '../../../../utils';\n\ntype FlexPositioning = 'flex-start' | 'flex-end' | 'center';\ntype FlexAlignBase = FlexPositioning | 'stretch';\ntype FlexAlignType = FlexAlignBase | 'baseline';\ntype FlexSpacing = 'space-between' | 'space-around';\n\ntype PaddingPosition = 'top' | 'right' | 'bottom' | 'left';\n\nexport interface IGridItem {\n children: React.ReactElement;\n /** Number of columns to fill */\n span: number;\n /** You don't have to give this property since is inherited from Grid */\n columns?: number;\n loading?: boolean;\n /** If your GridItem has a loading state, specify the component here (Skeleton) */\n loadingComponent?: React.ReactElement;\n /** Flex properties below */\n alignContent?: FlexAlignBase | FlexSpacing;\n alignItems?: FlexAlignType;\n alignSelf?: 'auto' | FlexAlignType;\n flex?: number;\n flexDirection?: 'row' | 'column' | 'row-reverse' | 'column-reverse';\n flexGrow?: number;\n flexShrink?: number;\n justifyContent?: FlexPositioning | FlexSpacing | 'space-evenly';\n /** You don't have to give this property since is inherited from Grid */\n spacing?:\n | SpacingType\n | {\n top?: SpacingType;\n right?: SpacingType;\n bottom?: SpacingType;\n left?: SpacingType;\n };\n /** Used to wrap children in a View when its style extrapolates the dimensions*/\n wrapper?: boolean;\n}\n\nconst GridItem = ({\n children,\n span,\n columns = 12,\n loadingComponent,\n loading = false,\n spacing: _spacing,\n wrapper = false,\n ...rest\n}: IGridItem) => {\n const { spacing } = useTheme();\n if (!React.Children.only(children)) {\n throw new Error('The number of children in GridItem should be one');\n }\n if (loadingComponent && loading) {\n return loadingComponent;\n }\n\n const getPadding = (pos: PaddingPosition) => {\n if (_spacing) {\n if (typeof _spacing === 'string')\n return extractNumbersFromString(spacing[_spacing]);\n else if (typeof _spacing === 'object' && _spacing[pos]) {\n return extractNumbersFromString(spacing[_spacing[pos]!]);\n } else return undefined;\n } else return undefined;\n };\n\n const style = {\n ...rest,\n boxSizing: 'border-box',\n flexBasis: `${100 / (columns / span)}%`,\n paddingTop: getPadding('top'),\n paddingBottom: getPadding('bottom'),\n paddingRight: getPadding('right'),\n paddingLeft: getPadding('left'),\n };\n\n const clone = React.cloneElement(children, {\n ...children?.props,\n style: wrapper\n ? children?.props.style\n : { ...style, ...children?.props.style },\n });\n\n return wrapper ? <View style={style}>{clone}</View> : clone;\n};\n\nexport default GridItem;\n"],"file":"Item.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as GridItem, IGridItem } from './Item';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/molecules/Grid/Item/index.ts"],"names":[],"mappings":";;;;;AAAA","sourcesContent":["export { default as GridItem, IGridItem } from './Item';\n"],"file":"index.js"}
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Story } from '@storybook/react';
|
|
3
|
-
import Grid, { IGrid } from './Grid';
|
|
4
|
-
import { GridItem } from './Item';
|
|
5
|
-
import { Text } from '@tecsinapse/react-core';
|
|
6
|
-
import { View } from 'react-native';
|
|
7
|
-
import styled from '@emotion/native';
|
|
8
|
-
|
|
9
|
-
export default {
|
|
10
|
-
title: 'Hybrid/Grid',
|
|
11
|
-
component: Grid,
|
|
12
|
-
subcomponents: { GridItem },
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
const Container = styled(View)`
|
|
16
|
-
background-color: orange;
|
|
17
|
-
padding: 2px;
|
|
18
|
-
border-width: 1px;
|
|
19
|
-
border-color: white;
|
|
20
|
-
border-style: solid;
|
|
21
|
-
border-radius: 8px;
|
|
22
|
-
`;
|
|
23
|
-
|
|
24
|
-
const TemplateGrid: Story<IGrid> = args => {
|
|
25
|
-
return (
|
|
26
|
-
<Grid {...args}>
|
|
27
|
-
<GridItem span={12}>
|
|
28
|
-
<Container>
|
|
29
|
-
<Text>Box</Text>
|
|
30
|
-
</Container>
|
|
31
|
-
</GridItem>
|
|
32
|
-
|
|
33
|
-
<GridItem span={6}>
|
|
34
|
-
<Container>
|
|
35
|
-
<Text>Box</Text>
|
|
36
|
-
</Container>
|
|
37
|
-
</GridItem>
|
|
38
|
-
<GridItem span={6}>
|
|
39
|
-
<Container>
|
|
40
|
-
<Text>Box</Text>
|
|
41
|
-
</Container>
|
|
42
|
-
</GridItem>
|
|
43
|
-
|
|
44
|
-
<GridItem span={4} flexShrink={1}>
|
|
45
|
-
<Container>
|
|
46
|
-
<Text>Box</Text>
|
|
47
|
-
</Container>
|
|
48
|
-
</GridItem>
|
|
49
|
-
<GridItem span={4} flexGrow={1}>
|
|
50
|
-
<Container>
|
|
51
|
-
<Text>Box</Text>
|
|
52
|
-
</Container>
|
|
53
|
-
</GridItem>
|
|
54
|
-
<GridItem span={4} flexShrink={1}>
|
|
55
|
-
<Container>
|
|
56
|
-
<Text>Box</Text>
|
|
57
|
-
</Container>
|
|
58
|
-
</GridItem>
|
|
59
|
-
|
|
60
|
-
<GridItem span={3}>
|
|
61
|
-
<Container>
|
|
62
|
-
<Text>Box</Text>
|
|
63
|
-
</Container>
|
|
64
|
-
</GridItem>
|
|
65
|
-
<GridItem span={3}>
|
|
66
|
-
<Container>
|
|
67
|
-
<Text>Box</Text>
|
|
68
|
-
</Container>
|
|
69
|
-
</GridItem>
|
|
70
|
-
<GridItem span={3}>
|
|
71
|
-
<Container>
|
|
72
|
-
<Text>Box</Text>
|
|
73
|
-
</Container>
|
|
74
|
-
</GridItem>
|
|
75
|
-
<GridItem span={3}>
|
|
76
|
-
<Container>
|
|
77
|
-
<Text>Box</Text>
|
|
78
|
-
</Container>
|
|
79
|
-
</GridItem>
|
|
80
|
-
</Grid>
|
|
81
|
-
);
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
export const WithGridItem = TemplateGrid.bind({});
|
|
85
|
-
|
|
86
|
-
WithGridItem.args = {
|
|
87
|
-
spacing: 'mili',
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
const TemplateLayout: Story<IGrid> = args => {
|
|
91
|
-
return (
|
|
92
|
-
<Grid {...args}>
|
|
93
|
-
<Container>
|
|
94
|
-
<Text>Box</Text>
|
|
95
|
-
</Container>
|
|
96
|
-
<Container>
|
|
97
|
-
<Text>Box</Text>
|
|
98
|
-
</Container>
|
|
99
|
-
<Container>
|
|
100
|
-
<Text>Box</Text>
|
|
101
|
-
</Container>
|
|
102
|
-
<Container>
|
|
103
|
-
<Text>Box</Text>
|
|
104
|
-
</Container>
|
|
105
|
-
<Container>
|
|
106
|
-
<Text>Box</Text>
|
|
107
|
-
</Container>
|
|
108
|
-
<Container>
|
|
109
|
-
<Text>Box</Text>
|
|
110
|
-
</Container>
|
|
111
|
-
<Container>
|
|
112
|
-
<Text>Box</Text>
|
|
113
|
-
</Container>
|
|
114
|
-
<Container>
|
|
115
|
-
<Text>Box</Text>
|
|
116
|
-
</Container>
|
|
117
|
-
<Container>
|
|
118
|
-
<Text>Box</Text>
|
|
119
|
-
</Container>
|
|
120
|
-
<Container>
|
|
121
|
-
<Text>Box</Text>
|
|
122
|
-
</Container>
|
|
123
|
-
</Grid>
|
|
124
|
-
);
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
export const WithLayout = TemplateLayout.bind({});
|
|
128
|
-
|
|
129
|
-
WithLayout.args = {
|
|
130
|
-
layout: [[12], [6, 6], [4, 4, 4], [3, 3, 3, 3]],
|
|
131
|
-
spacing: 'mili',
|
|
132
|
-
};
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { View, ViewProps } from 'react-native';
|
|
3
|
-
import { GridItem } from './Item';
|
|
4
|
-
import { SpacingType } from '@tecsinapse/react-core';
|
|
5
|
-
|
|
6
|
-
export interface IGrid extends ViewProps {
|
|
7
|
-
children: JSX.Element[];
|
|
8
|
-
/** Layout should represent the multiplier of columns to fill the rows properly.
|
|
9
|
-
* Example:
|
|
10
|
-
* const layout = [
|
|
11
|
-
* [6, 6], // Two elements on row
|
|
12
|
-
* [4, 4, 4], // Three elements on row
|
|
13
|
-
* [12], // One element on row
|
|
14
|
-
* ];
|
|
15
|
-
* */
|
|
16
|
-
layout?: number[][];
|
|
17
|
-
/** Number of grid columns to be considered (not the number of elements per row) */
|
|
18
|
-
columns?: number;
|
|
19
|
-
spacing?:
|
|
20
|
-
| SpacingType
|
|
21
|
-
| {
|
|
22
|
-
top?: SpacingType;
|
|
23
|
-
right?: SpacingType;
|
|
24
|
-
bottom?: SpacingType;
|
|
25
|
-
left?: SpacingType;
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const Grid = ({
|
|
30
|
-
children,
|
|
31
|
-
columns = 12,
|
|
32
|
-
layout,
|
|
33
|
-
style,
|
|
34
|
-
spacing,
|
|
35
|
-
...rest
|
|
36
|
-
}: IGrid) => {
|
|
37
|
-
if (layout) {
|
|
38
|
-
const flatLayout = layout.flat();
|
|
39
|
-
return (
|
|
40
|
-
<View
|
|
41
|
-
style={[
|
|
42
|
-
style,
|
|
43
|
-
{
|
|
44
|
-
display: 'flex',
|
|
45
|
-
flexDirection: 'row',
|
|
46
|
-
flexWrap: 'wrap',
|
|
47
|
-
},
|
|
48
|
-
]}
|
|
49
|
-
{...rest}
|
|
50
|
-
>
|
|
51
|
-
{React.Children.map(children, (child, index) => (
|
|
52
|
-
<GridItem
|
|
53
|
-
columns={columns}
|
|
54
|
-
span={flatLayout[index]}
|
|
55
|
-
spacing={spacing}
|
|
56
|
-
>
|
|
57
|
-
{child}
|
|
58
|
-
</GridItem>
|
|
59
|
-
))}
|
|
60
|
-
</View>
|
|
61
|
-
);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
return (
|
|
65
|
-
<View
|
|
66
|
-
style={[
|
|
67
|
-
style,
|
|
68
|
-
{
|
|
69
|
-
display: 'flex',
|
|
70
|
-
flexDirection: 'row',
|
|
71
|
-
flexWrap: 'wrap',
|
|
72
|
-
},
|
|
73
|
-
]}
|
|
74
|
-
{...rest}
|
|
75
|
-
>
|
|
76
|
-
{React.Children.map(children, child => {
|
|
77
|
-
return React.cloneElement(child, {
|
|
78
|
-
...child?.props,
|
|
79
|
-
columns,
|
|
80
|
-
spacing: child?.props.spacing ?? spacing,
|
|
81
|
-
});
|
|
82
|
-
})}
|
|
83
|
-
</View>
|
|
84
|
-
);
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export default Grid;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { View } from 'react-native';
|
|
3
|
-
import { useTheme } from '../../../../hooks';
|
|
4
|
-
import { SpacingType } from '../../../../types/defaults';
|
|
5
|
-
import { extractNumbersFromString } from '../../../../utils';
|
|
6
|
-
|
|
7
|
-
type FlexPositioning = 'flex-start' | 'flex-end' | 'center';
|
|
8
|
-
type FlexAlignBase = FlexPositioning | 'stretch';
|
|
9
|
-
type FlexAlignType = FlexAlignBase | 'baseline';
|
|
10
|
-
type FlexSpacing = 'space-between' | 'space-around';
|
|
11
|
-
|
|
12
|
-
type PaddingPosition = 'top' | 'right' | 'bottom' | 'left';
|
|
13
|
-
|
|
14
|
-
export interface IGridItem {
|
|
15
|
-
children: React.ReactElement;
|
|
16
|
-
/** Number of columns to fill */
|
|
17
|
-
span: number;
|
|
18
|
-
/** You don't have to give this property since is inherited from Grid */
|
|
19
|
-
columns?: number;
|
|
20
|
-
loading?: boolean;
|
|
21
|
-
/** If your GridItem has a loading state, specify the component here (Skeleton) */
|
|
22
|
-
loadingComponent?: React.ReactElement;
|
|
23
|
-
/** Flex properties below */
|
|
24
|
-
alignContent?: FlexAlignBase | FlexSpacing;
|
|
25
|
-
alignItems?: FlexAlignType;
|
|
26
|
-
alignSelf?: 'auto' | FlexAlignType;
|
|
27
|
-
flex?: number;
|
|
28
|
-
flexDirection?: 'row' | 'column' | 'row-reverse' | 'column-reverse';
|
|
29
|
-
flexGrow?: number;
|
|
30
|
-
flexShrink?: number;
|
|
31
|
-
justifyContent?: FlexPositioning | FlexSpacing | 'space-evenly';
|
|
32
|
-
/** You don't have to give this property since is inherited from Grid */
|
|
33
|
-
spacing?:
|
|
34
|
-
| SpacingType
|
|
35
|
-
| {
|
|
36
|
-
top?: SpacingType;
|
|
37
|
-
right?: SpacingType;
|
|
38
|
-
bottom?: SpacingType;
|
|
39
|
-
left?: SpacingType;
|
|
40
|
-
};
|
|
41
|
-
/** Used to wrap children in a View when its style extrapolates the dimensions*/
|
|
42
|
-
wrapper?: boolean;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
const GridItem = ({
|
|
46
|
-
children,
|
|
47
|
-
span,
|
|
48
|
-
columns = 12,
|
|
49
|
-
loadingComponent,
|
|
50
|
-
loading = false,
|
|
51
|
-
spacing: _spacing,
|
|
52
|
-
wrapper = false,
|
|
53
|
-
...rest
|
|
54
|
-
}: IGridItem) => {
|
|
55
|
-
const { spacing } = useTheme();
|
|
56
|
-
if (!React.Children.only(children)) {
|
|
57
|
-
throw new Error('The number of children in GridItem should be one');
|
|
58
|
-
}
|
|
59
|
-
if (loadingComponent && loading) {
|
|
60
|
-
return loadingComponent;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
const getPadding = (pos: PaddingPosition) => {
|
|
64
|
-
if (_spacing) {
|
|
65
|
-
if (typeof _spacing === 'string')
|
|
66
|
-
return extractNumbersFromString(spacing[_spacing]);
|
|
67
|
-
else if (typeof _spacing === 'object' && _spacing[pos]) {
|
|
68
|
-
return extractNumbersFromString(spacing[_spacing[pos]!]);
|
|
69
|
-
} else return undefined;
|
|
70
|
-
} else return undefined;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
const style = {
|
|
74
|
-
...rest,
|
|
75
|
-
boxSizing: 'border-box',
|
|
76
|
-
flexBasis: `${100 / (columns / span)}%`,
|
|
77
|
-
paddingTop: getPadding('top'),
|
|
78
|
-
paddingBottom: getPadding('bottom'),
|
|
79
|
-
paddingRight: getPadding('right'),
|
|
80
|
-
paddingLeft: getPadding('left'),
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
const clone = React.cloneElement(children, {
|
|
84
|
-
...children?.props,
|
|
85
|
-
style: wrapper
|
|
86
|
-
? children?.props.style
|
|
87
|
-
: { ...style, ...children?.props.style },
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
return wrapper ? <View style={style}>{clone}</View> : clone;
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
export default GridItem;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as GridItem, IGridItem } from './Item';
|