@tecsinapse/react-core 1.21.7 → 1.21.8
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/components/atoms/BoxContent/BoxContent.js +4 -31
- package/dist/cjs/components/atoms/BoxContent/BoxContent.js.map +1 -1
- package/dist/cjs/components/atoms/BoxContent/styled.js +1 -1
- package/dist/cjs/components/atoms/BoxContent/styled.js.map +1 -1
- package/dist/cjs/components/atoms/Button/Button.js +18 -61
- package/dist/cjs/components/atoms/Button/Button.js.map +1 -1
- package/dist/cjs/components/atoms/Button/States/Error.js +5 -23
- package/dist/cjs/components/atoms/Button/States/Error.js.map +1 -1
- package/dist/cjs/components/atoms/Button/States/Success.js +3 -21
- package/dist/cjs/components/atoms/Button/States/Success.js.map +1 -1
- package/dist/cjs/components/atoms/Card/Card.js +12 -45
- package/dist/cjs/components/atoms/Card/Card.js.map +1 -1
- package/dist/cjs/components/atoms/Checkbox/Checkbox.js +13 -51
- package/dist/cjs/components/atoms/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/atoms/Divider/Divider.js +4 -31
- package/dist/cjs/components/atoms/Divider/Divider.js.map +1 -1
- package/dist/cjs/components/atoms/GroupButton/GroupButton.js +19 -57
- package/dist/cjs/components/atoms/GroupButton/GroupButton.js.map +1 -1
- package/dist/cjs/components/atoms/GroupButton/styled.js +11 -11
- package/dist/cjs/components/atoms/GroupButton/styled.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/AntDesign.js +4 -35
- package/dist/cjs/components/atoms/Icon/AntDesign.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Entypo.js +4 -35
- package/dist/cjs/components/atoms/Icon/Entypo.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Evil.js +4 -35
- package/dist/cjs/components/atoms/Icon/Evil.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Feather.js +4 -35
- package/dist/cjs/components/atoms/Icon/Feather.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/FontAwesome.js +4 -35
- package/dist/cjs/components/atoms/Icon/FontAwesome.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/FontAwesomeFive.js +4 -35
- package/dist/cjs/components/atoms/Icon/FontAwesomeFive.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Fontisto.js +4 -35
- package/dist/cjs/components/atoms/Icon/Fontisto.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Foundation.js +4 -35
- package/dist/cjs/components/atoms/Icon/Foundation.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Icon.js +13 -51
- package/dist/cjs/components/atoms/Icon/Icon.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Ionicon.js +4 -35
- package/dist/cjs/components/atoms/Icon/Ionicon.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Material.js +4 -35
- package/dist/cjs/components/atoms/Icon/Material.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/MaterialCommunity.js +9 -43
- package/dist/cjs/components/atoms/Icon/MaterialCommunity.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Octicon.js +4 -35
- package/dist/cjs/components/atoms/Icon/Octicon.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/SimpleLine.js +4 -35
- package/dist/cjs/components/atoms/Icon/SimpleLine.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/Zocial.js +4 -35
- package/dist/cjs/components/atoms/Icon/Zocial.js.map +1 -1
- package/dist/cjs/components/atoms/Icon/functions.js +1 -1
- package/dist/cjs/components/atoms/Icon/functions.js.map +1 -1
- package/dist/cjs/components/atoms/Input/InputContainer/InputContainer.js +21 -67
- package/dist/cjs/components/atoms/Input/InputContainer/InputContainer.js.map +1 -1
- package/dist/cjs/components/atoms/Input/InputElement/InputElement.js +11 -47
- package/dist/cjs/components/atoms/Input/InputElement/InputElement.js.map +1 -1
- package/dist/cjs/components/atoms/Input/InputMaskElement/InputMaskElement.js +15 -52
- package/dist/cjs/components/atoms/Input/InputMaskElement/InputMaskElement.js.map +1 -1
- package/dist/cjs/components/atoms/Input/PressableInputContainer/PressableInputContainer.js +11 -43
- package/dist/cjs/components/atoms/Input/PressableInputContainer/PressableInputContainer.js.map +1 -1
- package/dist/cjs/components/atoms/Input/hooks/useNumberMask.js +1 -17
- package/dist/cjs/components/atoms/Input/hooks/useNumberMask.js.map +1 -1
- package/dist/cjs/components/atoms/Input/hooks/useStringMask.js +2 -2
- package/dist/cjs/components/atoms/Input/hooks/useStringMask.js.map +1 -1
- package/dist/cjs/components/atoms/Input/styled.js +1 -1
- package/dist/cjs/components/atoms/Input/styled.js.map +1 -1
- package/dist/cjs/components/atoms/Paper/Paper.js +8 -43
- package/dist/cjs/components/atoms/Paper/Paper.js.map +1 -1
- package/dist/cjs/components/atoms/PressableSurface/PressableSurface.js +12 -49
- package/dist/cjs/components/atoms/PressableSurface/PressableSurface.js.map +1 -1
- package/dist/cjs/components/atoms/ProgressBar/ProgressBar.js +16 -52
- package/dist/cjs/components/atoms/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/cjs/components/atoms/RadioButton/RadioButton.js +13 -51
- package/dist/cjs/components/atoms/RadioButton/RadioButton.js.map +1 -1
- package/dist/cjs/components/atoms/Switch/Switch.js +14 -53
- package/dist/cjs/components/atoms/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/atoms/Tag/Tag.js +16 -52
- package/dist/cjs/components/atoms/Tag/Tag.js.map +1 -1
- package/dist/cjs/components/atoms/Text/Text.js +17 -59
- package/dist/cjs/components/atoms/Text/Text.js.map +1 -1
- package/dist/cjs/components/molecules/Calendar/Calendar.js +20 -60
- package/dist/cjs/components/molecules/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/molecules/Calendar/components/MonthWeek.js +3 -3
- package/dist/cjs/components/molecules/Calendar/components/MonthWeek.js.map +1 -1
- package/dist/cjs/components/molecules/Calendar/styled.js +5 -8
- package/dist/cjs/components/molecules/Calendar/styled.js.map +1 -1
- package/dist/cjs/components/molecules/DatePicker/DatePicker.js +30 -81
- package/dist/cjs/components/molecules/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/molecules/DatePicker/styled.js +3 -6
- package/dist/cjs/components/molecules/DatePicker/styled.js.map +1 -1
- package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js +42 -104
- package/dist/cjs/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
- package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js +26 -72
- package/dist/cjs/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
- package/dist/cjs/components/molecules/DateTimeSelector/Selector.js +15 -51
- package/dist/cjs/components/molecules/DateTimeSelector/Selector.js.map +1 -1
- package/dist/cjs/components/molecules/Grid/functions.js +1 -2
- package/dist/cjs/components/molecules/Grid/functions.js.map +1 -1
- package/dist/cjs/components/molecules/HintInputContainer/HintInputContainer.js +17 -55
- package/dist/cjs/components/molecules/HintInputContainer/HintInputContainer.js.map +1 -1
- package/dist/cjs/components/molecules/IconTextButton/IconComponent.js +5 -21
- package/dist/cjs/components/molecules/IconTextButton/IconComponent.js.map +1 -1
- package/dist/cjs/components/molecules/InputPassword/InputPasswordIcon.js +8 -41
- package/dist/cjs/components/molecules/InputPassword/InputPasswordIcon.js.map +1 -1
- package/dist/cjs/components/molecules/Snackbar/Snackbar.js +8 -25
- package/dist/cjs/components/molecules/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/styles/light.js +7 -20
- package/dist/cjs/styles/light.js.map +1 -1
- package/dist/cjs/utils/masks.js +2 -2
- package/dist/cjs/utils/masks.js.map +1 -1
- package/dist/esm/components/atoms/BoxContent/BoxContent.js +4 -31
- package/dist/esm/components/atoms/BoxContent/BoxContent.js.map +1 -1
- package/dist/esm/components/atoms/BoxContent/styled.js +1 -1
- package/dist/esm/components/atoms/BoxContent/styled.js.map +1 -1
- package/dist/esm/components/atoms/Button/Button.js +18 -61
- package/dist/esm/components/atoms/Button/Button.js.map +1 -1
- package/dist/esm/components/atoms/Button/States/Error.js +5 -23
- package/dist/esm/components/atoms/Button/States/Error.js.map +1 -1
- package/dist/esm/components/atoms/Button/States/Success.js +3 -21
- package/dist/esm/components/atoms/Button/States/Success.js.map +1 -1
- package/dist/esm/components/atoms/Card/Card.js +12 -45
- package/dist/esm/components/atoms/Card/Card.js.map +1 -1
- package/dist/esm/components/atoms/Checkbox/Checkbox.js +13 -51
- package/dist/esm/components/atoms/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/atoms/Divider/Divider.js +4 -31
- package/dist/esm/components/atoms/Divider/Divider.js.map +1 -1
- package/dist/esm/components/atoms/GroupButton/GroupButton.js +19 -57
- package/dist/esm/components/atoms/GroupButton/GroupButton.js.map +1 -1
- package/dist/esm/components/atoms/GroupButton/styled.js +11 -11
- package/dist/esm/components/atoms/GroupButton/styled.js.map +1 -1
- package/dist/esm/components/atoms/Icon/AntDesign.js +4 -35
- package/dist/esm/components/atoms/Icon/AntDesign.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Entypo.js +4 -35
- package/dist/esm/components/atoms/Icon/Entypo.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Evil.js +4 -35
- package/dist/esm/components/atoms/Icon/Evil.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Feather.js +4 -35
- package/dist/esm/components/atoms/Icon/Feather.js.map +1 -1
- package/dist/esm/components/atoms/Icon/FontAwesome.js +4 -35
- package/dist/esm/components/atoms/Icon/FontAwesome.js.map +1 -1
- package/dist/esm/components/atoms/Icon/FontAwesomeFive.js +4 -35
- package/dist/esm/components/atoms/Icon/FontAwesomeFive.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Fontisto.js +4 -35
- package/dist/esm/components/atoms/Icon/Fontisto.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Foundation.js +4 -35
- package/dist/esm/components/atoms/Icon/Foundation.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Icon.js +13 -51
- package/dist/esm/components/atoms/Icon/Icon.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Ionicon.js +4 -35
- package/dist/esm/components/atoms/Icon/Ionicon.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Material.js +4 -35
- package/dist/esm/components/atoms/Icon/Material.js.map +1 -1
- package/dist/esm/components/atoms/Icon/MaterialCommunity.js +9 -43
- package/dist/esm/components/atoms/Icon/MaterialCommunity.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Octicon.js +4 -35
- package/dist/esm/components/atoms/Icon/Octicon.js.map +1 -1
- package/dist/esm/components/atoms/Icon/SimpleLine.js +4 -35
- package/dist/esm/components/atoms/Icon/SimpleLine.js.map +1 -1
- package/dist/esm/components/atoms/Icon/Zocial.js +4 -35
- package/dist/esm/components/atoms/Icon/Zocial.js.map +1 -1
- package/dist/esm/components/atoms/Icon/functions.js +1 -1
- package/dist/esm/components/atoms/Icon/functions.js.map +1 -1
- package/dist/esm/components/atoms/Input/InputContainer/InputContainer.js +21 -67
- package/dist/esm/components/atoms/Input/InputContainer/InputContainer.js.map +1 -1
- package/dist/esm/components/atoms/Input/InputElement/InputElement.js +11 -47
- package/dist/esm/components/atoms/Input/InputElement/InputElement.js.map +1 -1
- package/dist/esm/components/atoms/Input/InputMaskElement/InputMaskElement.js +15 -52
- package/dist/esm/components/atoms/Input/InputMaskElement/InputMaskElement.js.map +1 -1
- package/dist/esm/components/atoms/Input/PressableInputContainer/PressableInputContainer.js +11 -43
- package/dist/esm/components/atoms/Input/PressableInputContainer/PressableInputContainer.js.map +1 -1
- package/dist/esm/components/atoms/Input/hooks/useNumberMask.js +1 -17
- package/dist/esm/components/atoms/Input/hooks/useNumberMask.js.map +1 -1
- package/dist/esm/components/atoms/Input/hooks/useStringMask.js +2 -2
- package/dist/esm/components/atoms/Input/hooks/useStringMask.js.map +1 -1
- package/dist/esm/components/atoms/Input/styled.js +1 -1
- package/dist/esm/components/atoms/Input/styled.js.map +1 -1
- package/dist/esm/components/atoms/Paper/Paper.js +8 -43
- package/dist/esm/components/atoms/Paper/Paper.js.map +1 -1
- package/dist/esm/components/atoms/PressableSurface/PressableSurface.js +12 -49
- package/dist/esm/components/atoms/PressableSurface/PressableSurface.js.map +1 -1
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.js +16 -52
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/esm/components/atoms/RadioButton/RadioButton.js +13 -51
- package/dist/esm/components/atoms/RadioButton/RadioButton.js.map +1 -1
- package/dist/esm/components/atoms/Switch/Switch.js +14 -53
- package/dist/esm/components/atoms/Switch/Switch.js.map +1 -1
- package/dist/esm/components/atoms/Tag/Tag.js +16 -52
- package/dist/esm/components/atoms/Tag/Tag.js.map +1 -1
- package/dist/esm/components/atoms/Text/Text.js +17 -59
- package/dist/esm/components/atoms/Text/Text.js.map +1 -1
- package/dist/esm/components/molecules/Calendar/Calendar.js +20 -60
- package/dist/esm/components/molecules/Calendar/Calendar.js.map +1 -1
- package/dist/esm/components/molecules/Calendar/components/MonthWeek.js +3 -3
- package/dist/esm/components/molecules/Calendar/components/MonthWeek.js.map +1 -1
- package/dist/esm/components/molecules/Calendar/styled.js +5 -8
- package/dist/esm/components/molecules/Calendar/styled.js.map +1 -1
- package/dist/esm/components/molecules/DatePicker/DatePicker.js +30 -81
- package/dist/esm/components/molecules/DatePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/molecules/DatePicker/styled.js +3 -6
- package/dist/esm/components/molecules/DatePicker/styled.js.map +1 -1
- package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js +42 -104
- package/dist/esm/components/molecules/DateTimePicker/DateTimePicker.js.map +1 -1
- package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js +26 -72
- package/dist/esm/components/molecules/DateTimeSelector/DateTimeSelector.js.map +1 -1
- package/dist/esm/components/molecules/DateTimeSelector/Selector.js +15 -51
- package/dist/esm/components/molecules/DateTimeSelector/Selector.js.map +1 -1
- package/dist/esm/components/molecules/Grid/functions.js +1 -2
- package/dist/esm/components/molecules/Grid/functions.js.map +1 -1
- package/dist/esm/components/molecules/HintInputContainer/HintInputContainer.js +17 -55
- package/dist/esm/components/molecules/HintInputContainer/HintInputContainer.js.map +1 -1
- package/dist/esm/components/molecules/IconTextButton/IconComponent.js +5 -21
- package/dist/esm/components/molecules/IconTextButton/IconComponent.js.map +1 -1
- package/dist/esm/components/molecules/InputPassword/InputPasswordIcon.js +8 -41
- package/dist/esm/components/molecules/InputPassword/InputPasswordIcon.js.map +1 -1
- package/dist/esm/components/molecules/Snackbar/Snackbar.js +8 -25
- package/dist/esm/components/molecules/Snackbar/Snackbar.js.map +1 -1
- package/dist/esm/styles/light.js +8 -21
- package/dist/esm/styles/light.js.map +1 -1
- package/dist/esm/utils/masks.js +2 -2
- package/dist/esm/utils/masks.js.map +1 -1
- package/package.json +2 -2
|
@@ -29,34 +29,6 @@ function _interopNamespace(e) {
|
|
|
29
29
|
|
|
30
30
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
31
31
|
|
|
32
|
-
var __defProp = Object.defineProperty;
|
|
33
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
34
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
35
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
36
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
37
|
-
var __spreadValues = (a, b) => {
|
|
38
|
-
for (var prop in b || (b = {}))
|
|
39
|
-
if (__hasOwnProp.call(b, prop))
|
|
40
|
-
__defNormalProp(a, prop, b[prop]);
|
|
41
|
-
if (__getOwnPropSymbols)
|
|
42
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
43
|
-
if (__propIsEnum.call(b, prop))
|
|
44
|
-
__defNormalProp(a, prop, b[prop]);
|
|
45
|
-
}
|
|
46
|
-
return a;
|
|
47
|
-
};
|
|
48
|
-
var __objRest = (source, exclude) => {
|
|
49
|
-
var target = {};
|
|
50
|
-
for (var prop in source)
|
|
51
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
52
|
-
target[prop] = source[prop];
|
|
53
|
-
if (source != null && __getOwnPropSymbols)
|
|
54
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
55
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
56
|
-
target[prop] = source[prop];
|
|
57
|
-
}
|
|
58
|
-
return target;
|
|
59
|
-
};
|
|
60
32
|
const now = dateFns.set(new Date(), {
|
|
61
33
|
date: 1,
|
|
62
34
|
hours: 0,
|
|
@@ -67,46 +39,32 @@ const now = dateFns.set(new Date(), {
|
|
|
67
39
|
function dayOfWeekFromWeekStart(dayOfWeek, weekStartsOn) {
|
|
68
40
|
return dayOfWeek === 0 ? 0 : dayOfWeek - weekStartsOn;
|
|
69
41
|
}
|
|
70
|
-
function Calendar(
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
"TextComponent",
|
|
81
|
-
"year",
|
|
82
|
-
"month",
|
|
83
|
-
"value",
|
|
84
|
-
"type",
|
|
85
|
-
"onChange",
|
|
86
|
-
"locale"
|
|
87
|
-
]);
|
|
42
|
+
function Calendar({
|
|
43
|
+
TextComponent = Text,
|
|
44
|
+
year: _year,
|
|
45
|
+
month: _month,
|
|
46
|
+
value,
|
|
47
|
+
type,
|
|
48
|
+
onChange,
|
|
49
|
+
locale,
|
|
50
|
+
...rest
|
|
51
|
+
}) {
|
|
88
52
|
const _referenceDate = React__namespace.useMemo(
|
|
89
53
|
() => _year && _month ? new Date(_year, _month, 1, 0, 0, 0, 0) : _month ? new Date(now.getFullYear(), _month, 1, 0, 0, 0, 0) : now,
|
|
90
54
|
[_year, _month]
|
|
91
55
|
);
|
|
92
56
|
const [referenceDate, setReferenceDate] = React__namespace.useState(_referenceDate);
|
|
93
57
|
const startingWeekDay = React__namespace.useMemo(
|
|
94
|
-
() =>
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
(_b2 = (_a2 = locale == null ? void 0 : locale.options) == null ? void 0 : _a2.weekStartsOn) != null ? _b2 : 0
|
|
99
|
-
);
|
|
100
|
-
},
|
|
58
|
+
() => dayOfWeekFromWeekStart(
|
|
59
|
+
referenceDate.getDay(),
|
|
60
|
+
locale?.options?.weekStartsOn ?? 0
|
|
61
|
+
),
|
|
101
62
|
[referenceDate, locale]
|
|
102
63
|
);
|
|
103
64
|
const weeksInMonth = React__namespace.useMemo(
|
|
104
|
-
() => {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
weekStartsOn: (_b2 = (_a2 = locale == null ? void 0 : locale.options) == null ? void 0 : _a2.weekStartsOn) != null ? _b2 : 0
|
|
108
|
-
});
|
|
109
|
-
},
|
|
65
|
+
() => dateFns.getWeeksInMonth(referenceDate, {
|
|
66
|
+
weekStartsOn: locale?.options?.weekStartsOn ?? 0
|
|
67
|
+
}),
|
|
110
68
|
[referenceDate, locale]
|
|
111
69
|
);
|
|
112
70
|
const Capitalized = React__namespace.useMemo(
|
|
@@ -129,7 +87,9 @@ function Calendar(_a) {
|
|
|
129
87
|
const handlePressPrev = React__namespace.useCallback(() => {
|
|
130
88
|
setReferenceDate(dateFns.add(referenceDate, { months: -1 }));
|
|
131
89
|
}, [referenceDate, setReferenceDate]);
|
|
132
|
-
return /* @__PURE__ */ React__namespace.createElement(reactNative.View,
|
|
90
|
+
return /* @__PURE__ */ React__namespace.createElement(reactNative.View, {
|
|
91
|
+
...rest
|
|
92
|
+
}, /* @__PURE__ */ React__namespace.createElement(styled.TitleContainer, null, /* @__PURE__ */ React__namespace.createElement(styled.Control, {
|
|
133
93
|
onPress: handlePressPrev,
|
|
134
94
|
align: "start",
|
|
135
95
|
isLeft: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","sources":["../../../../../src/components/molecules/Calendar/Calendar.tsx"],"sourcesContent":["import { add, format, getWeeksInMonth, set } from 'date-fns';\nimport * as React from 'react';\nimport { View, ViewProps } from 'react-native';\nimport { Icon } from '../../atoms/Icon';\nimport { Text, TextProps } from '../../atoms/Text';\nimport {\n Content,\n Control,\n getCapitalizedTextComponent,\n TitleContainer,\n} from './styled';\nimport { Weekdays, MonthWeek } from './components';\n\nexport type SelectionType = 'range' | 'day';\n\nexport type DateRange = { lowest: Date; highest?: Date };\n\nexport type Value<T extends SelectionType> = T extends 'range'\n ? DateRange\n : Date;\n\nexport interface CalendarProps<T extends SelectionType> extends ViewProps {\n TextComponent?: React.FC<TextProps>;\n year?: number;\n month?: number;\n onChange?: (value?: Value<T>) => void | never;\n type?: T;\n value?: Value<T>;\n locale?: Locale;\n}\n\nconst now = set(new Date(), {\n date: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n milliseconds: 0,\n});\n\nfunction dayOfWeekFromWeekStart(dayOfWeek: number, weekStartsOn: number) {\n return dayOfWeek === 0 ? 0 : dayOfWeek - weekStartsOn;\n}\n\nfunction Calendar<T extends SelectionType>({\n TextComponent = Text,\n year: _year,\n month: _month,\n value,\n type,\n onChange,\n locale,\n ...rest\n}: CalendarProps<T>): JSX.Element {\n const _referenceDate = React.useMemo(\n () =>\n _year && _month\n ? new Date(_year, _month, 1, 0, 0, 0, 0)\n : _month\n ? new Date(now.getFullYear(), _month, 1, 0, 0, 0, 0)\n : now,\n [_year, _month]\n );\n\n const [referenceDate, setReferenceDate] = React.useState(_referenceDate);\n\n const startingWeekDay = React.useMemo(\n () =>\n dayOfWeekFromWeekStart(\n referenceDate.getDay(),\n locale?.options?.weekStartsOn ?? 0\n ),\n [referenceDate, locale]\n );\n\n const weeksInMonth = React.useMemo(\n () =>\n getWeeksInMonth(referenceDate, {\n weekStartsOn: locale?.options?.weekStartsOn ?? 0,\n }),\n [referenceDate, locale]\n );\n\n const Capitalized = React.useMemo(\n () => getCapitalizedTextComponent(TextComponent),\n [TextComponent]\n );\n\n const calendar = React.useMemo(\n () =>\n [...Array(weeksInMonth).keys()].map(week =>\n [...Array(7).keys()].map(weekDayIndex =>\n add(referenceDate, {\n days: 6 * week + week + weekDayIndex - startingWeekDay,\n })\n )\n ),\n [weeksInMonth, startingWeekDay, referenceDate]\n );\n\n const handlePressNext = React.useCallback(() => {\n setReferenceDate(add(referenceDate, { months: 1 }));\n }, [referenceDate, setReferenceDate]);\n\n const handlePressPrev = React.useCallback(() => {\n setReferenceDate(add(referenceDate, { months: -1 }));\n }, [referenceDate, setReferenceDate]);\n\n return (\n <View {...rest}>\n <TitleContainer>\n <Control onPress={handlePressPrev} align={'start'} isLeft>\n <Icon\n name={'chevron-left'}\n type={'material-community'}\n size={'kilo'}\n colorVariant={'secondary'}\n colorTone={'medium'}\n />\n </Control>\n <Capitalized\n colorVariant={'secondary'}\n colorTone={'xdark'}\n fontWeight={'bold'}\n >\n {format(referenceDate, 'MMMM yyyy', { locale })}\n </Capitalized>\n <Control onPress={handlePressNext} align={'end'} isRright>\n <Icon\n name={'chevron-right'}\n type={'material-community'}\n size={'kilo'}\n colorVariant={'secondary'}\n colorTone={'medium'}\n />\n </Control>\n </TitleContainer>\n <Content>\n <Weekdays\n locale={locale}\n calendar={calendar}\n Capitalized={Capitalized}\n />\n {calendar.map((week, index) => (\n <MonthWeek\n week={week}\n type={type}\n value={value}\n key={`week-${index}`}\n onChange={onChange}\n TextComponent={TextComponent}\n referenceDate={referenceDate}\n />\n ))}\n </Content>\n </View>\n );\n}\n\nexport default Calendar;\n"],"names":["set","React","
|
|
1
|
+
{"version":3,"file":"Calendar.js","sources":["../../../../../src/components/molecules/Calendar/Calendar.tsx"],"sourcesContent":["import { add, format, getWeeksInMonth, set } from 'date-fns';\nimport * as React from 'react';\nimport { View, ViewProps } from 'react-native';\nimport { Icon } from '../../atoms/Icon';\nimport { Text, TextProps } from '../../atoms/Text';\nimport {\n Content,\n Control,\n getCapitalizedTextComponent,\n TitleContainer,\n} from './styled';\nimport { Weekdays, MonthWeek } from './components';\n\nexport type SelectionType = 'range' | 'day';\n\nexport type DateRange = { lowest: Date; highest?: Date };\n\nexport type Value<T extends SelectionType> = T extends 'range'\n ? DateRange\n : Date;\n\nexport interface CalendarProps<T extends SelectionType> extends ViewProps {\n TextComponent?: React.FC<TextProps>;\n year?: number;\n month?: number;\n onChange?: (value?: Value<T>) => void | never;\n type?: T;\n value?: Value<T>;\n locale?: Locale;\n}\n\nconst now = set(new Date(), {\n date: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n milliseconds: 0,\n});\n\nfunction dayOfWeekFromWeekStart(dayOfWeek: number, weekStartsOn: number) {\n return dayOfWeek === 0 ? 0 : dayOfWeek - weekStartsOn;\n}\n\nfunction Calendar<T extends SelectionType>({\n TextComponent = Text,\n year: _year,\n month: _month,\n value,\n type,\n onChange,\n locale,\n ...rest\n}: CalendarProps<T>): JSX.Element {\n const _referenceDate = React.useMemo(\n () =>\n _year && _month\n ? new Date(_year, _month, 1, 0, 0, 0, 0)\n : _month\n ? new Date(now.getFullYear(), _month, 1, 0, 0, 0, 0)\n : now,\n [_year, _month]\n );\n\n const [referenceDate, setReferenceDate] = React.useState(_referenceDate);\n\n const startingWeekDay = React.useMemo(\n () =>\n dayOfWeekFromWeekStart(\n referenceDate.getDay(),\n locale?.options?.weekStartsOn ?? 0\n ),\n [referenceDate, locale]\n );\n\n const weeksInMonth = React.useMemo(\n () =>\n getWeeksInMonth(referenceDate, {\n weekStartsOn: locale?.options?.weekStartsOn ?? 0,\n }),\n [referenceDate, locale]\n );\n\n const Capitalized = React.useMemo(\n () => getCapitalizedTextComponent(TextComponent),\n [TextComponent]\n );\n\n const calendar = React.useMemo(\n () =>\n [...Array(weeksInMonth).keys()].map(week =>\n [...Array(7).keys()].map(weekDayIndex =>\n add(referenceDate, {\n days: 6 * week + week + weekDayIndex - startingWeekDay,\n })\n )\n ),\n [weeksInMonth, startingWeekDay, referenceDate]\n );\n\n const handlePressNext = React.useCallback(() => {\n setReferenceDate(add(referenceDate, { months: 1 }));\n }, [referenceDate, setReferenceDate]);\n\n const handlePressPrev = React.useCallback(() => {\n setReferenceDate(add(referenceDate, { months: -1 }));\n }, [referenceDate, setReferenceDate]);\n\n return (\n <View {...rest}>\n <TitleContainer>\n <Control onPress={handlePressPrev} align={'start'} isLeft>\n <Icon\n name={'chevron-left'}\n type={'material-community'}\n size={'kilo'}\n colorVariant={'secondary'}\n colorTone={'medium'}\n />\n </Control>\n <Capitalized\n colorVariant={'secondary'}\n colorTone={'xdark'}\n fontWeight={'bold'}\n >\n {format(referenceDate, 'MMMM yyyy', { locale })}\n </Capitalized>\n <Control onPress={handlePressNext} align={'end'} isRright>\n <Icon\n name={'chevron-right'}\n type={'material-community'}\n size={'kilo'}\n colorVariant={'secondary'}\n colorTone={'medium'}\n />\n </Control>\n </TitleContainer>\n <Content>\n <Weekdays\n locale={locale}\n calendar={calendar}\n Capitalized={Capitalized}\n />\n {calendar.map((week, index) => (\n <MonthWeek\n week={week}\n type={type}\n value={value}\n key={`week-${index}`}\n onChange={onChange}\n TextComponent={TextComponent}\n referenceDate={referenceDate}\n />\n ))}\n </Content>\n </View>\n );\n}\n\nexport default Calendar;\n"],"names":["set","React","getWeeksInMonth","getCapitalizedTextComponent","add","View","TitleContainer","Control","format","Content"],"mappings":"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"}
|
|
@@ -45,9 +45,9 @@ const MonthWeek = ({
|
|
|
45
45
|
const handlePressCell = React__default["default"].useCallback(
|
|
46
46
|
(date, _value) => () => {
|
|
47
47
|
if (type === "day") {
|
|
48
|
-
onChange
|
|
48
|
+
onChange?.(date);
|
|
49
49
|
} else if (!_value) {
|
|
50
|
-
onChange
|
|
50
|
+
onChange?.({ lowest: date });
|
|
51
51
|
} else {
|
|
52
52
|
let newValue;
|
|
53
53
|
const { lowest, highest } = _value;
|
|
@@ -74,7 +74,7 @@ const MonthWeek = ({
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
onChange
|
|
77
|
+
onChange?.(newValue);
|
|
78
78
|
}
|
|
79
79
|
},
|
|
80
80
|
[onChange, type]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonthWeek.js","sources":["../../../../../../src/components/molecules/Calendar/components/MonthWeek.tsx"],"sourcesContent":["import React from 'react';\nimport { compareAsc as compare, isSameDay } from 'date-fns';\nimport { Cell, Selected, Week } from '../styled';\nimport { Value, DateRange, SelectionType } from '../Calendar';\nimport { TextProps } from '@tecsinapse/react-core';\n\ninterface IMonthWeek<T extends SelectionType> {\n TextComponent: React.FC<TextProps>;\n /** any as workaround for TS type mismatching */\n onChange?: (value?: any) => void | never;\n type?: T;\n value?: Value<T>;\n week: Date[];\n referenceDate: Date;\n}\n\nconst MonthWeek = <T extends SelectionType>({\n week,\n referenceDate,\n type,\n value,\n TextComponent,\n onChange,\n}: IMonthWeek<T>) => {\n const checkIfIsBetween = React.useCallback(\n (date: Date, _value?: Value<T>) => {\n if (type !== 'range' || !_value) return false;\n else {\n const { lowest, highest } = _value as DateRange;\n if (!highest) return false;\n return compare(lowest, date) <= 0 && compare(highest, date) >= 0;\n }\n },\n [type]\n );\n\n const checkIfIsSelected = React.useCallback(\n (date: Date, _value?: Value<T>) => {\n if (!_value) return false;\n else if (type === 'range' && _value) {\n const { lowest, highest } = _value as DateRange;\n return (\n isSameDay(lowest, date) ||\n (highest ? isSameDay(highest, date) : false)\n );\n } else {\n return isSameDay(_value as Date, date);\n }\n },\n [type]\n );\n\n const handlePressCell = React.useCallback(\n (date: Date, _value?: Value<T>) => () => {\n if (type === 'day') {\n onChange?.(date as never);\n } else if (!_value) {\n onChange?.({ lowest: date } as never);\n } else {\n let newValue;\n const { lowest, highest } = _value as DateRange;\n\n if (!highest) {\n if (compare(date, lowest) === -1) {\n newValue = { lowest: date, highest: undefined };\n } else if (compare(date, lowest) === 0) {\n newValue = undefined;\n } else {\n newValue = { lowest: lowest, highest: date };\n }\n } else {\n if (compare(date, lowest) === -1) {\n newValue = { lowest: date, highest: undefined };\n } else if (compare(date, lowest) === 0) {\n newValue = undefined;\n } else {\n if (compare(date, highest) === -1) {\n newValue = { lowest: lowest, highest: date };\n } else if (compare(date, highest) === 0) {\n newValue = { lowest: lowest, highest: undefined };\n } else {\n newValue = { lowest: lowest, highest: date };\n }\n }\n }\n\n onChange?.(newValue as never);\n }\n },\n [onChange, type]\n );\n\n return (\n <Week>\n {week.map((date, index) => {\n const isSelected = checkIfIsSelected(date, value);\n const isBetween = checkIfIsBetween(date, value);\n\n let isRangeStart, isRangeEnd;\n\n if (type === 'range' && value) {\n const { lowest, highest } = value as DateRange;\n isRangeStart = highest && isSameDay(lowest, date);\n isRangeEnd = !!highest && isSameDay(highest, date);\n } else {\n isRangeStart = false;\n isRangeEnd = false;\n }\n\n const colorTone = isSelected\n ? 'xlight'\n : date.getMonth() === referenceDate.getMonth()\n ? 'xdark'\n : 'light';\n\n return (\n <Cell\n key={date.getDate()}\n selected={isSelected}\n highlighted={isBetween}\n isLineEnd={index === 6}\n isLineStart={index === 0}\n isRangeStart={isRangeStart}\n isRangeEnd={isRangeEnd}\n onPress={handlePressCell(date, value)}\n >\n <Selected selected={isSelected} pointerEvents={'none'}>\n <TextComponent colorVariant={'secondary'} colorTone={colorTone}>\n {date.getDate()}\n </TextComponent>\n </Selected>\n </Cell>\n );\n })}\n </Week>\n );\n};\n\nexport default React.memo(MonthWeek);\n"],"names":["React","compare","isSameDay","Week","Cell","Selected"],"mappings":";;;;;;;;;;AAgBA,MAAM,YAAY,CAA0B;AAAA,EAC1C,IAAA;AAAA,EACA,aAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,aAAA;AAAA,EACA,QAAA;AACF,CAAqB,KAAA;AACnB,EAAA,MAAM,mBAAmBA,yBAAM,CAAA,WAAA;AAAA,IAC7B,CAAC,MAAY,MAAsB,KAAA;AACjC,MAAI,IAAA,IAAA,KAAS,WAAW,CAAC,MAAA;AAAQ,QAAO,OAAA,KAAA,CAAA;AAAA,WACnC;AACH,QAAM,MAAA,EAAE,MAAQ,EAAA,OAAA,EAAY,GAAA,MAAA,CAAA;AAC5B,QAAA,IAAI,CAAC,OAAA;AAAS,UAAO,OAAA,KAAA,CAAA;AACrB,QAAO,OAAAC,kBAAA,CAAQ,QAAQ,IAAI,CAAA,IAAK,KAAKA,kBAAQ,CAAA,OAAA,EAAS,IAAI,CAAK,IAAA,CAAA,CAAA;AAAA,OACjE;AAAA,KACF;AAAA,IACA,CAAC,IAAI,CAAA;AAAA,GACP,CAAA;AAEA,EAAA,MAAM,oBAAoBD,yBAAM,CAAA,WAAA;AAAA,IAC9B,CAAC,MAAY,MAAsB,KAAA;AACjC,MAAA,IAAI,CAAC,MAAA;AAAQ,QAAO,OAAA,KAAA,CAAA;AAAA,WACX,IAAA,IAAA,KAAS,WAAW,MAAQ,EAAA;AACnC,QAAM,MAAA,EAAE,MAAQ,EAAA,OAAA,EAAY,GAAA,MAAA,CAAA;AAC5B,QACE,OAAAE,iBAAA,CAAU,QAAQ,IAAI,CAAA,KACrB,UAAUA,iBAAU,CAAA,OAAA,EAAS,IAAI,CAAI,GAAA,KAAA,CAAA,CAAA;AAAA,OAEnC,MAAA;AACL,QAAO,OAAAA,iBAAA,CAAU,QAAgB,IAAI,CAAA,CAAA;AAAA,OACvC;AAAA,KACF;AAAA,IACA,CAAC,IAAI,CAAA;AAAA,GACP,CAAA;AAEA,EAAA,MAAM,kBAAkBF,yBAAM,CAAA,WAAA;AAAA,IAC5B,CAAC,IAAY,EAAA,MAAA,KAAsB,MAAM;AACvC,MAAA,IAAI,SAAS,KAAO,EAAA;AAClB,
|
|
1
|
+
{"version":3,"file":"MonthWeek.js","sources":["../../../../../../src/components/molecules/Calendar/components/MonthWeek.tsx"],"sourcesContent":["import React from 'react';\nimport { compareAsc as compare, isSameDay } from 'date-fns';\nimport { Cell, Selected, Week } from '../styled';\nimport { Value, DateRange, SelectionType } from '../Calendar';\nimport { TextProps } from '@tecsinapse/react-core';\n\ninterface IMonthWeek<T extends SelectionType> {\n TextComponent: React.FC<TextProps>;\n /** any as workaround for TS type mismatching */\n onChange?: (value?: any) => void | never;\n type?: T;\n value?: Value<T>;\n week: Date[];\n referenceDate: Date;\n}\n\nconst MonthWeek = <T extends SelectionType>({\n week,\n referenceDate,\n type,\n value,\n TextComponent,\n onChange,\n}: IMonthWeek<T>) => {\n const checkIfIsBetween = React.useCallback(\n (date: Date, _value?: Value<T>) => {\n if (type !== 'range' || !_value) return false;\n else {\n const { lowest, highest } = _value as DateRange;\n if (!highest) return false;\n return compare(lowest, date) <= 0 && compare(highest, date) >= 0;\n }\n },\n [type]\n );\n\n const checkIfIsSelected = React.useCallback(\n (date: Date, _value?: Value<T>) => {\n if (!_value) return false;\n else if (type === 'range' && _value) {\n const { lowest, highest } = _value as DateRange;\n return (\n isSameDay(lowest, date) ||\n (highest ? isSameDay(highest, date) : false)\n );\n } else {\n return isSameDay(_value as Date, date);\n }\n },\n [type]\n );\n\n const handlePressCell = React.useCallback(\n (date: Date, _value?: Value<T>) => () => {\n if (type === 'day') {\n onChange?.(date as never);\n } else if (!_value) {\n onChange?.({ lowest: date } as never);\n } else {\n let newValue;\n const { lowest, highest } = _value as DateRange;\n\n if (!highest) {\n if (compare(date, lowest) === -1) {\n newValue = { lowest: date, highest: undefined };\n } else if (compare(date, lowest) === 0) {\n newValue = undefined;\n } else {\n newValue = { lowest: lowest, highest: date };\n }\n } else {\n if (compare(date, lowest) === -1) {\n newValue = { lowest: date, highest: undefined };\n } else if (compare(date, lowest) === 0) {\n newValue = undefined;\n } else {\n if (compare(date, highest) === -1) {\n newValue = { lowest: lowest, highest: date };\n } else if (compare(date, highest) === 0) {\n newValue = { lowest: lowest, highest: undefined };\n } else {\n newValue = { lowest: lowest, highest: date };\n }\n }\n }\n\n onChange?.(newValue as never);\n }\n },\n [onChange, type]\n );\n\n return (\n <Week>\n {week.map((date, index) => {\n const isSelected = checkIfIsSelected(date, value);\n const isBetween = checkIfIsBetween(date, value);\n\n let isRangeStart, isRangeEnd;\n\n if (type === 'range' && value) {\n const { lowest, highest } = value as DateRange;\n isRangeStart = highest && isSameDay(lowest, date);\n isRangeEnd = !!highest && isSameDay(highest, date);\n } else {\n isRangeStart = false;\n isRangeEnd = false;\n }\n\n const colorTone = isSelected\n ? 'xlight'\n : date.getMonth() === referenceDate.getMonth()\n ? 'xdark'\n : 'light';\n\n return (\n <Cell\n key={date.getDate()}\n selected={isSelected}\n highlighted={isBetween}\n isLineEnd={index === 6}\n isLineStart={index === 0}\n isRangeStart={isRangeStart}\n isRangeEnd={isRangeEnd}\n onPress={handlePressCell(date, value)}\n >\n <Selected selected={isSelected} pointerEvents={'none'}>\n <TextComponent colorVariant={'secondary'} colorTone={colorTone}>\n {date.getDate()}\n </TextComponent>\n </Selected>\n </Cell>\n );\n })}\n </Week>\n );\n};\n\nexport default React.memo(MonthWeek);\n"],"names":["React","compare","isSameDay","Week","Cell","Selected"],"mappings":"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"}
|
|
@@ -18,15 +18,12 @@ const TitleContainer = styled__default["default"].View`
|
|
|
18
18
|
background-color: ${({ theme }) => theme.color.secondary.xlight};
|
|
19
19
|
`;
|
|
20
20
|
const Control = styled__default["default"](PressableSurface)(
|
|
21
|
-
(props) =>
|
|
22
|
-
var _a, _b, _c;
|
|
23
|
-
return styled.css`
|
|
21
|
+
(props) => styled.css`
|
|
24
22
|
align-items: flex-${props.align};
|
|
25
|
-
padding: ${
|
|
26
|
-
border-radius: ${
|
|
27
|
-
margin: ${
|
|
28
|
-
|
|
29
|
-
}
|
|
23
|
+
padding: ${props.theme?.spacing.centi};
|
|
24
|
+
border-radius: ${props.theme?.borderRadius.mili};
|
|
25
|
+
margin: ${props.theme?.spacing.mili};
|
|
26
|
+
`
|
|
30
27
|
);
|
|
31
28
|
const getCapitalizedTextComponent = (component) => {
|
|
32
29
|
return styled__default["default"](component)`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","sources":["../../../../../src/components/molecules/Calendar/styled.ts"],"sourcesContent":["import styled, { css } from '@emotion/native';\nimport { FC } from 'react';\nimport { Platform, PressableProps, ViewProps } from 'react-native';\nimport { StyleProps } from '../../../types/defaults';\nimport { PressableSurface } from '../../atoms/PressableSurface';\nimport { TextProps } from '../../atoms/Text';\n\nconst isWeb = Platform.OS === 'web';\n\ninterface ButtonBorders {\n isLeft?: boolean;\n isRright?: boolean;\n}\n\nexport const TitleContainer = styled.View<Partial<StyleProps>>`\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n background-color: ${({ theme }) => theme.color.secondary.xlight};\n`;\n\nexport const Control = styled(PressableSurface)(\n (\n props: Partial<StyleProps> & ButtonBorders & { align: 'start' | 'end' }\n ) => css`\n align-items: flex-${props.align};\n padding: ${props.theme?.spacing.centi};\n border-radius: ${props.theme?.borderRadius.mili};\n margin: ${props.theme?.spacing.mili};\n `\n);\n\nexport const getCapitalizedTextComponent = (component: FC<TextProps>) => {\n return styled(component)`\n text-transform: capitalize;\n `;\n};\n\nexport const Content = styled.View<ViewProps & Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.deca};\n background-color: ${({ theme }) => theme.miscellaneous.surfaceColor};\n`;\n\nexport const Week = styled.View<Partial<StyleProps>>`\n flex-direction: row;\n`;\n\nexport const Selected = styled.View<\n Partial<StyleProps> & { selected: boolean }\n>`\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: ${({ theme, selected }) =>\n selected ? theme.color.primary.medium : 'transparent'};\n border-radius: ${({ theme }) => theme.borderRadius.mili};\n width: 100%;\n height: 100%;\n`;\n\nexport const Cell = styled(PressableSurface)<\n PressableProps &\n Partial<StyleProps> & {\n selected: boolean;\n highlighted: boolean;\n isLineEnd: boolean;\n isLineStart: boolean;\n isRangeStart: boolean;\n isRangeEnd: boolean;\n }\n>(\n ({\n theme,\n selected,\n highlighted,\n isLineEnd,\n isLineStart,\n isRangeStart,\n isRangeEnd,\n }) => {\n const borderRadiusSize = theme.borderRadius.mili;\n\n const { rightBorderRadius, leftBorderRadius } = {\n rightBorderRadius:\n (selected && !isRangeStart) || isLineEnd ? borderRadiusSize : 0,\n leftBorderRadius:\n (selected && !isRangeEnd) || isLineStart ? borderRadiusSize : 0,\n };\n\n const borderEffect = highlighted ? 0 : borderRadiusSize;\n\n const backgroundColor = highlighted\n ? theme.color.primary.light\n : 'transparent';\n\n return css`\n ${isWeb\n ? css`\n width: 32px;\n height: 32px;\n `\n : css`\n aspect-ratio: 1;\n flex: 1;\n `}\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: ${borderEffect};\n border-top-left-radius: ${leftBorderRadius};\n border-bottom-left-radius: ${leftBorderRadius};\n border-top-right-radius: ${rightBorderRadius};\n border-bottom-right-radius: ${rightBorderRadius};\n background-color: ${backgroundColor};\n `;\n }\n);\n"],"names":["Platform","styled","css"],"mappings":";;;;;;;;;;;;AAOA,MAAM,KAAA,GAAQA,qBAAS,EAAO,KAAA,KAAA,CAAA;AAOvB,MAAM,iBAAiBC,0BAAO,CAAA,IAAA,CAAA;AAAA;AAAA;AAAA;AAAA,oBAAA,EAIf,CAAC,EAAE,KAAA,EAAY,KAAA,KAAA,CAAM,MAAM,SAAU,CAAA,MAAA,CAAA;AAAA,EAAA;AAG9C,MAAA,OAAA,GAAUA,2BAAO,gBAAgB,CAAA;AAAA,EAC5C,CACE,
|
|
1
|
+
{"version":3,"file":"styled.js","sources":["../../../../../src/components/molecules/Calendar/styled.ts"],"sourcesContent":["import styled, { css } from '@emotion/native';\nimport { FC } from 'react';\nimport { Platform, PressableProps, ViewProps } from 'react-native';\nimport { StyleProps } from '../../../types/defaults';\nimport { PressableSurface } from '../../atoms/PressableSurface';\nimport { TextProps } from '../../atoms/Text';\n\nconst isWeb = Platform.OS === 'web';\n\ninterface ButtonBorders {\n isLeft?: boolean;\n isRright?: boolean;\n}\n\nexport const TitleContainer = styled.View<Partial<StyleProps>>`\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n background-color: ${({ theme }) => theme.color.secondary.xlight};\n`;\n\nexport const Control = styled(PressableSurface)(\n (\n props: Partial<StyleProps> & ButtonBorders & { align: 'start' | 'end' }\n ) => css`\n align-items: flex-${props.align};\n padding: ${props.theme?.spacing.centi};\n border-radius: ${props.theme?.borderRadius.mili};\n margin: ${props.theme?.spacing.mili};\n `\n);\n\nexport const getCapitalizedTextComponent = (component: FC<TextProps>) => {\n return styled(component)`\n text-transform: capitalize;\n `;\n};\n\nexport const Content = styled.View<ViewProps & Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.deca};\n background-color: ${({ theme }) => theme.miscellaneous.surfaceColor};\n`;\n\nexport const Week = styled.View<Partial<StyleProps>>`\n flex-direction: row;\n`;\n\nexport const Selected = styled.View<\n Partial<StyleProps> & { selected: boolean }\n>`\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: ${({ theme, selected }) =>\n selected ? theme.color.primary.medium : 'transparent'};\n border-radius: ${({ theme }) => theme.borderRadius.mili};\n width: 100%;\n height: 100%;\n`;\n\nexport const Cell = styled(PressableSurface)<\n PressableProps &\n Partial<StyleProps> & {\n selected: boolean;\n highlighted: boolean;\n isLineEnd: boolean;\n isLineStart: boolean;\n isRangeStart: boolean;\n isRangeEnd: boolean;\n }\n>(\n ({\n theme,\n selected,\n highlighted,\n isLineEnd,\n isLineStart,\n isRangeStart,\n isRangeEnd,\n }) => {\n const borderRadiusSize = theme.borderRadius.mili;\n\n const { rightBorderRadius, leftBorderRadius } = {\n rightBorderRadius:\n (selected && !isRangeStart) || isLineEnd ? borderRadiusSize : 0,\n leftBorderRadius:\n (selected && !isRangeEnd) || isLineStart ? borderRadiusSize : 0,\n };\n\n const borderEffect = highlighted ? 0 : borderRadiusSize;\n\n const backgroundColor = highlighted\n ? theme.color.primary.light\n : 'transparent';\n\n return css`\n ${isWeb\n ? css`\n width: 32px;\n height: 32px;\n `\n : css`\n aspect-ratio: 1;\n flex: 1;\n `}\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: ${borderEffect};\n border-top-left-radius: ${leftBorderRadius};\n border-bottom-left-radius: ${leftBorderRadius};\n border-top-right-radius: ${rightBorderRadius};\n border-bottom-right-radius: ${rightBorderRadius};\n background-color: ${backgroundColor};\n `;\n }\n);\n"],"names":["Platform","styled","css"],"mappings":";;;;;;;;;;;;AAOA,MAAM,KAAA,GAAQA,qBAAS,EAAO,KAAA,KAAA,CAAA;AAOvB,MAAM,iBAAiBC,0BAAO,CAAA,IAAA,CAAA;AAAA;AAAA;AAAA;AAAA,oBAAA,EAIf,CAAC,EAAE,KAAA,EAAY,KAAA,KAAA,CAAM,MAAM,SAAU,CAAA,MAAA,CAAA;AAAA,EAAA;AAG9C,MAAA,OAAA,GAAUA,2BAAO,gBAAgB,CAAA;AAAA,EAC5C,CACE,KACG,KAAAC,UAAA,CAAA;AAAA,sBAAA,EACiB,KAAM,CAAA,KAAA,CAAA;AAAA,aACf,EAAA,KAAA,CAAM,OAAO,OAAQ,CAAA,KAAA,CAAA;AAAA,mBACf,EAAA,KAAA,CAAM,OAAO,YAAa,CAAA,IAAA,CAAA;AAAA,YACjC,EAAA,KAAA,CAAM,OAAO,OAAQ,CAAA,IAAA,CAAA;AAAA,EAAA,CAAA;AAEnC,EAAA;AAEa,MAAA,2BAAA,GAA8B,CAAC,SAA6B,KAAA;AACvE,EAAA,OAAOD,2BAAO,SAAS,CAAA,CAAA;AAAA;AAAA,EAAA,CAAA,CAAA;AAGzB,EAAA;AAEO,MAAM,UAAUA,0BAAO,CAAA,IAAA,CAAA;AAAA,WAAA,EACjB,CAAC,EAAE,KAAM,EAAA,KAAM,MAAM,OAAQ,CAAA,IAAA,CAAA;AAAA,oBAAA,EACpB,CAAC,EAAE,KAAM,EAAA,KAAM,MAAM,aAAc,CAAA,YAAA,CAAA;AAAA,EAAA;AAGlD,MAAM,OAAOA,0BAAO,CAAA,IAAA,CAAA;AAAA;AAAA,EAAA;AAIpB,MAAM,WAAWA,0BAAO,CAAA,IAAA,CAAA;AAAA;AAAA;AAAA;AAAA,oBAMT,EAAA,CAAC,EAAE,KAAO,EAAA,QAAA,OAC5B,QAAW,GAAA,KAAA,CAAM,KAAM,CAAA,OAAA,CAAQ,MAAS,GAAA,aAAA,CAAA;AAAA,iBAAA,EACzB,CAAC,EAAE,KAAM,EAAA,KAAM,MAAM,YAAa,CAAA,IAAA,CAAA;AAAA;AAAA;AAAA,EAAA;AAKxC,MAAA,IAAA,GAAOA,2BAAO,gBAAgB,CAAA;AAAA,EAWzC,CAAC;AAAA,IACC,KAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,GACI,KAAA;AACJ,IAAM,MAAA,gBAAA,GAAmB,MAAM,YAAa,CAAA,IAAA,CAAA;AAE5C,IAAM,MAAA,EAAE,iBAAmB,EAAA,gBAAA,EAAqB,GAAA;AAAA,MAC9C,iBACG,EAAA,QAAA,IAAY,CAAC,YAAA,IAAiB,YAAY,gBAAmB,GAAA,CAAA;AAAA,MAChE,gBACG,EAAA,QAAA,IAAY,CAAC,UAAA,IAAe,cAAc,gBAAmB,GAAA,CAAA;AAAA,KAClE,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,cAAc,CAAI,GAAA,gBAAA,CAAA;AAEvC,IAAA,MAAM,eAAkB,GAAA,WAAA,GACpB,KAAM,CAAA,KAAA,CAAM,QAAQ,KACpB,GAAA,aAAA,CAAA;AAEJ,IAAO,OAAAC,UAAA,CAAA;AAAA,MAAA,EACH,KACE,GAAAA,UAAA,CAAA;AAAA;AAAA;AAAA,UAIA,CAAA,GAAAA,UAAA,CAAA;AAAA;AAAA;AAAA,UAAA,CAAA,CAAA;AAAA;AAAA;AAAA;AAAA,qBAOa,EAAA,YAAA,CAAA;AAAA,8BACS,EAAA,gBAAA,CAAA;AAAA,iCACG,EAAA,gBAAA,CAAA;AAAA,+BACF,EAAA,iBAAA,CAAA;AAAA,kCACG,EAAA,iBAAA,CAAA;AAAA,wBACV,EAAA,eAAA,CAAA;AAAA,IAAA,CAAA,CAAA;AAAA,GAExB;AACF;;;;;;;;;;"}
|
|
@@ -32,84 +32,32 @@ function _interopNamespace(e) {
|
|
|
32
32
|
|
|
33
33
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
return target;
|
|
62
|
-
};
|
|
63
|
-
function DatePicker(_a) {
|
|
64
|
-
var _b = _a, {
|
|
65
|
-
month,
|
|
66
|
-
year,
|
|
67
|
-
onChange,
|
|
68
|
-
value,
|
|
69
|
-
type,
|
|
70
|
-
format = "yyyy-MM-dd",
|
|
71
|
-
placeholder,
|
|
72
|
-
onFocus,
|
|
73
|
-
onBlur,
|
|
74
|
-
disabled,
|
|
75
|
-
controlComponent,
|
|
76
|
-
hintComponent,
|
|
77
|
-
hint,
|
|
78
|
-
variant,
|
|
79
|
-
TextComponent = Text,
|
|
80
|
-
CalendarComponent,
|
|
81
|
-
rightComponent,
|
|
82
|
-
style,
|
|
83
|
-
locale,
|
|
84
|
-
closeOnPick = false,
|
|
85
|
-
renderCalendar,
|
|
86
|
-
requestShowCalendar,
|
|
87
|
-
requestCloseCalendar
|
|
88
|
-
} = _b, rest = __objRest(_b, [
|
|
89
|
-
"month",
|
|
90
|
-
"year",
|
|
91
|
-
"onChange",
|
|
92
|
-
"value",
|
|
93
|
-
"type",
|
|
94
|
-
"format",
|
|
95
|
-
"placeholder",
|
|
96
|
-
"onFocus",
|
|
97
|
-
"onBlur",
|
|
98
|
-
"disabled",
|
|
99
|
-
"controlComponent",
|
|
100
|
-
"hintComponent",
|
|
101
|
-
"hint",
|
|
102
|
-
"variant",
|
|
103
|
-
"TextComponent",
|
|
104
|
-
"CalendarComponent",
|
|
105
|
-
"rightComponent",
|
|
106
|
-
"style",
|
|
107
|
-
"locale",
|
|
108
|
-
"closeOnPick",
|
|
109
|
-
"renderCalendar",
|
|
110
|
-
"requestShowCalendar",
|
|
111
|
-
"requestCloseCalendar"
|
|
112
|
-
]);
|
|
35
|
+
function DatePicker({
|
|
36
|
+
month,
|
|
37
|
+
year,
|
|
38
|
+
onChange,
|
|
39
|
+
value,
|
|
40
|
+
type,
|
|
41
|
+
format = "yyyy-MM-dd",
|
|
42
|
+
placeholder,
|
|
43
|
+
onFocus,
|
|
44
|
+
onBlur,
|
|
45
|
+
disabled,
|
|
46
|
+
controlComponent,
|
|
47
|
+
hintComponent,
|
|
48
|
+
hint,
|
|
49
|
+
variant,
|
|
50
|
+
TextComponent = Text,
|
|
51
|
+
CalendarComponent,
|
|
52
|
+
rightComponent,
|
|
53
|
+
style,
|
|
54
|
+
locale,
|
|
55
|
+
closeOnPick = false,
|
|
56
|
+
renderCalendar,
|
|
57
|
+
requestShowCalendar,
|
|
58
|
+
requestCloseCalendar,
|
|
59
|
+
...rest
|
|
60
|
+
}) {
|
|
113
61
|
const { focused, handleBlur, handleFocus } = useInputFocus.useInputFocus(
|
|
114
62
|
onFocus,
|
|
115
63
|
onBlur,
|
|
@@ -153,7 +101,7 @@ function DatePicker(_a) {
|
|
|
153
101
|
onChange,
|
|
154
102
|
locale
|
|
155
103
|
});
|
|
156
|
-
return /* @__PURE__ */ React__namespace.createElement(React__namespace.Fragment, null, controlComponent ? controlComponent(handleShowCalendar, getDisplayValue()) : /* @__PURE__ */ React__namespace.createElement(HintInputContainer,
|
|
104
|
+
return /* @__PURE__ */ React__namespace.createElement(React__namespace.Fragment, null, controlComponent ? controlComponent(handleShowCalendar, getDisplayValue()) : /* @__PURE__ */ React__namespace.createElement(HintInputContainer, {
|
|
157
105
|
focused,
|
|
158
106
|
viewStyle: style,
|
|
159
107
|
onPress: handleShowCalendar,
|
|
@@ -166,8 +114,9 @@ function DatePicker(_a) {
|
|
|
166
114
|
name: "calendar-sharp",
|
|
167
115
|
type: "ionicon",
|
|
168
116
|
size: "centi"
|
|
169
|
-
}), rightComponent)
|
|
170
|
-
|
|
117
|
+
}), rightComponent),
|
|
118
|
+
...rest
|
|
119
|
+
}, /* @__PURE__ */ React__namespace.createElement(StyledText, {
|
|
171
120
|
fontWeight: "bold",
|
|
172
121
|
disabled
|
|
173
122
|
}, getDisplayValue() || " ")), renderCalendar(calendar, handleBlur));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","sources":["../../../../../src/components/molecules/DatePicker/DatePicker.tsx"],"sourcesContent":["import { format as formatDate } from 'date-fns';\nimport * as React from 'react';\nimport { useEffect } from 'react';\nimport { InputContainerProps, useInputFocus } from '../../atoms/Input';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { CalendarProps, DateRange, SelectionType } from '../Calendar';\nimport { HintInputContainer } from '../HintInputContainer';\nimport { CalendarIcon, getStyledTextComponent } from './styled';\n\nexport interface DatePickerProps<T extends SelectionType>\n extends InputContainerProps,\n Omit<CalendarProps<T>, 'style'> {\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n TextComponent?: React.FC<TextProps>;\n CalendarComponent: React.FC<CalendarProps<T>>;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n format?: string;\n closeOnPick?: boolean;\n renderCalendar: (\n calendar: React.ReactElement,\n blur?: () => void\n ) => JSX.Element | null;\n requestShowCalendar: () => void;\n requestCloseCalendar: () => void;\n}\n\nfunction DatePicker<T extends SelectionType>({\n /** DatePicker props */\n month,\n year,\n onChange,\n value,\n type,\n format = 'yyyy-MM-dd',\n placeholder,\n onFocus,\n onBlur,\n disabled,\n controlComponent,\n hintComponent,\n hint,\n variant,\n TextComponent = Text,\n CalendarComponent,\n rightComponent,\n style,\n locale,\n closeOnPick = false,\n renderCalendar,\n requestShowCalendar,\n requestCloseCalendar,\n ...rest\n}: DatePickerProps<T>): JSX.Element {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const handleShowCalendar = React.useCallback(() => {\n requestShowCalendar();\n handleFocus();\n }, [handleFocus, requestShowCalendar]);\n\n const getDisplayValue = () => {\n if (!value) return placeholder;\n if (type === 'day') {\n return formatDate(value as Date, format, { locale: locale });\n } else {\n const { lowest, highest } = value as DateRange;\n if (highest)\n return `${formatDate(lowest, format, {\n locale: locale,\n })} - ${formatDate(highest, format, { locale: locale })}`;\n else return formatDate(lowest, format, { locale: locale });\n }\n };\n\n const StyledText = getStyledTextComponent(TextComponent);\n\n useEffect(() => {\n if (closeOnPick && value && type === 'day') {\n setTimeout(requestCloseCalendar, 200);\n }\n if (closeOnPick && value && type === 'range') {\n const { lowest, highest } = value as DateRange;\n lowest && highest && setTimeout(requestCloseCalendar, 200);\n }\n }, [value, closeOnPick, type, requestCloseCalendar]);\n\n const calendar = (\n <CalendarComponent\n pointerEvents={'box-none'}\n type={type}\n value={value}\n month={month}\n year={year}\n onChange={onChange}\n locale={locale}\n />\n );\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handleShowCalendar, getDisplayValue())\n ) : (\n <HintInputContainer\n focused={focused}\n viewStyle={style}\n onPress={handleShowCalendar}\n disabled={disabled}\n hintComponent={hintComponent}\n LabelComponent={TextComponent}\n variant={variant}\n hint={hint}\n rightComponent={\n <>\n <CalendarIcon name=\"calendar-sharp\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledText fontWeight=\"bold\" disabled={disabled}>\n {getDisplayValue() || ' '}\n </StyledText>\n </HintInputContainer>\n )}\n {renderCalendar(calendar, handleBlur)}\n </>\n );\n}\n\nexport default DatePicker;\n"],"names":["useInputFocus","React","formatDate","getStyledTextComponent","useEffect","CalendarIcon"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sources":["../../../../../src/components/molecules/DatePicker/DatePicker.tsx"],"sourcesContent":["import { format as formatDate } from 'date-fns';\nimport * as React from 'react';\nimport { useEffect } from 'react';\nimport { InputContainerProps, useInputFocus } from '../../atoms/Input';\nimport { Text, TextProps } from '../../atoms/Text';\nimport { CalendarProps, DateRange, SelectionType } from '../Calendar';\nimport { HintInputContainer } from '../HintInputContainer';\nimport { CalendarIcon, getStyledTextComponent } from './styled';\n\nexport interface DatePickerProps<T extends SelectionType>\n extends InputContainerProps,\n Omit<CalendarProps<T>, 'style'> {\n controlComponent?: (\n onPress: () => void,\n displayValue?: string\n ) => JSX.Element;\n TextComponent?: React.FC<TextProps>;\n CalendarComponent: React.FC<CalendarProps<T>>;\n placeholder?: string;\n onFocus?: () => void | never;\n onBlur?: () => void | never;\n format?: string;\n closeOnPick?: boolean;\n renderCalendar: (\n calendar: React.ReactElement,\n blur?: () => void\n ) => JSX.Element | null;\n requestShowCalendar: () => void;\n requestCloseCalendar: () => void;\n}\n\nfunction DatePicker<T extends SelectionType>({\n /** DatePicker props */\n month,\n year,\n onChange,\n value,\n type,\n format = 'yyyy-MM-dd',\n placeholder,\n onFocus,\n onBlur,\n disabled,\n controlComponent,\n hintComponent,\n hint,\n variant,\n TextComponent = Text,\n CalendarComponent,\n rightComponent,\n style,\n locale,\n closeOnPick = false,\n renderCalendar,\n requestShowCalendar,\n requestCloseCalendar,\n ...rest\n}: DatePickerProps<T>): JSX.Element {\n const { focused, handleBlur, handleFocus } = useInputFocus(\n onFocus,\n onBlur,\n !disabled\n );\n\n const handleShowCalendar = React.useCallback(() => {\n requestShowCalendar();\n handleFocus();\n }, [handleFocus, requestShowCalendar]);\n\n const getDisplayValue = () => {\n if (!value) return placeholder;\n if (type === 'day') {\n return formatDate(value as Date, format, { locale: locale });\n } else {\n const { lowest, highest } = value as DateRange;\n if (highest)\n return `${formatDate(lowest, format, {\n locale: locale,\n })} - ${formatDate(highest, format, { locale: locale })}`;\n else return formatDate(lowest, format, { locale: locale });\n }\n };\n\n const StyledText = getStyledTextComponent(TextComponent);\n\n useEffect(() => {\n if (closeOnPick && value && type === 'day') {\n setTimeout(requestCloseCalendar, 200);\n }\n if (closeOnPick && value && type === 'range') {\n const { lowest, highest } = value as DateRange;\n lowest && highest && setTimeout(requestCloseCalendar, 200);\n }\n }, [value, closeOnPick, type, requestCloseCalendar]);\n\n const calendar = (\n <CalendarComponent\n pointerEvents={'box-none'}\n type={type}\n value={value}\n month={month}\n year={year}\n onChange={onChange}\n locale={locale}\n />\n );\n\n return (\n <>\n {controlComponent ? (\n controlComponent(handleShowCalendar, getDisplayValue())\n ) : (\n <HintInputContainer\n focused={focused}\n viewStyle={style}\n onPress={handleShowCalendar}\n disabled={disabled}\n hintComponent={hintComponent}\n LabelComponent={TextComponent}\n variant={variant}\n hint={hint}\n rightComponent={\n <>\n <CalendarIcon name=\"calendar-sharp\" type=\"ionicon\" size=\"centi\" />\n {rightComponent}\n </>\n }\n {...rest}\n >\n <StyledText fontWeight=\"bold\" disabled={disabled}>\n {getDisplayValue() || ' '}\n </StyledText>\n </HintInputContainer>\n )}\n {renderCalendar(calendar, handleBlur)}\n </>\n );\n}\n\nexport default DatePicker;\n"],"names":["useInputFocus","React","formatDate","getStyledTextComponent","useEffect","CalendarIcon"],"mappings":"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"}
|
|
@@ -18,13 +18,10 @@ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
|
|
|
18
18
|
|
|
19
19
|
const getStyledTextComponent = (component) => {
|
|
20
20
|
return styled__default["default"](component)(
|
|
21
|
-
(props) =>
|
|
22
|
-
|
|
23
|
-
return styled.css`
|
|
24
|
-
line-height: ${(_a = props.theme) == null ? void 0 : _a.typography.h5.lineHeight};
|
|
21
|
+
(props) => styled.css`
|
|
22
|
+
line-height: ${props.theme?.typography.h5.lineHeight};
|
|
25
23
|
${styled$1.disabledInputStyles(props)}
|
|
26
|
-
|
|
27
|
-
}
|
|
24
|
+
`
|
|
28
25
|
);
|
|
29
26
|
};
|
|
30
27
|
const CalendarIcon = styled__default["default"](Icon)`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","sources":["../../../../../src/components/molecules/DatePicker/styled.ts"],"sourcesContent":["import styled, { css } from '@emotion/native';\nimport { FC } from 'react';\nimport { StyleProps } from '../../../types/defaults';\nimport { Icon } from '../../atoms/Icon';\nimport { disabledInputStyles, InputContainerProps } from '../../atoms/Input';\nimport { TextProps } from '../../atoms/Text';\n\nexport const getStyledTextComponent = (component: FC<TextProps>) => {\n return styled(component)(\n (props: Partial<InputContainerProps> & Partial<StyleProps>) => css`\n line-height: ${props.theme?.typography.h5.lineHeight};\n ${disabledInputStyles(props)}\n `\n );\n};\n\nexport const CalendarIcon = styled(Icon)<Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.centi};\n color: ${({ theme }) => theme.color.secondary.medium};\n`;\n"],"names":["styled","css","disabledInputStyles"],"mappings":";;;;;;;;;;;;;;;;;;AAOa,MAAA,sBAAA,GAAyB,CAAC,SAA6B,KAAA;AAClE,EAAA,OAAOA,2BAAO,SAAS,CAAA;AAAA,IACrB,CAAC,
|
|
1
|
+
{"version":3,"file":"styled.js","sources":["../../../../../src/components/molecules/DatePicker/styled.ts"],"sourcesContent":["import styled, { css } from '@emotion/native';\nimport { FC } from 'react';\nimport { StyleProps } from '../../../types/defaults';\nimport { Icon } from '../../atoms/Icon';\nimport { disabledInputStyles, InputContainerProps } from '../../atoms/Input';\nimport { TextProps } from '../../atoms/Text';\n\nexport const getStyledTextComponent = (component: FC<TextProps>) => {\n return styled(component)(\n (props: Partial<InputContainerProps> & Partial<StyleProps>) => css`\n line-height: ${props.theme?.typography.h5.lineHeight};\n ${disabledInputStyles(props)}\n `\n );\n};\n\nexport const CalendarIcon = styled(Icon)<Partial<StyleProps>>`\n padding: ${({ theme }) => theme.spacing.centi};\n color: ${({ theme }) => theme.color.secondary.medium};\n`;\n"],"names":["styled","css","disabledInputStyles"],"mappings":";;;;;;;;;;;;;;;;;;AAOa,MAAA,sBAAA,GAAyB,CAAC,SAA6B,KAAA;AAClE,EAAA,OAAOA,2BAAO,SAAS,CAAA;AAAA,IACrB,CAAC,KAA8D,KAAAC,UAAA,CAAA;AAAA,mBAC9C,EAAA,KAAA,CAAM,KAAO,EAAA,UAAA,CAAW,EAAG,CAAA,UAAA,CAAA;AAAA,MAAA,EACxCC,6BAAoB,KAAK,CAAA,CAAA;AAAA,IAAA,CAAA;AAAA,GAE/B,CAAA;AACF,EAAA;AAEa,MAAA,YAAA,GAAeF,2BAAO,IAAI,CAAA,CAAA;AAAA,WAAA,EAC1B,CAAC,EAAE,KAAM,EAAA,KAAM,MAAM,OAAQ,CAAA,KAAA,CAAA;AAAA,SAAA,EAC/B,CAAC,EAAE,KAAA,EAAY,KAAA,KAAA,CAAM,MAAM,SAAU,CAAA,MAAA,CAAA;AAAA;;;;;"}
|
|
@@ -34,106 +34,43 @@ function _interopNamespace(e) {
|
|
|
34
34
|
|
|
35
35
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
offsetThreshold,
|
|
75
|
-
upperOffsetThreshold,
|
|
76
|
-
lowerOffsetThreshold,
|
|
77
|
-
dateModalTitle,
|
|
78
|
-
timeModalTitle,
|
|
79
|
-
dateConfirmButtonText,
|
|
80
|
-
timeConfirmButtonText,
|
|
81
|
-
dayLabel,
|
|
82
|
-
monthLabel,
|
|
83
|
-
yearLabel,
|
|
84
|
-
hourLabel,
|
|
85
|
-
minuteLabel,
|
|
86
|
-
placeholder,
|
|
87
|
-
onFocus,
|
|
88
|
-
onBlur,
|
|
89
|
-
disabled,
|
|
90
|
-
controlComponent,
|
|
91
|
-
hintComponent,
|
|
92
|
-
hint,
|
|
93
|
-
variant = "default",
|
|
94
|
-
TextComponent = Text,
|
|
95
|
-
DateTimeSelectorComponent = DateTimeSelector,
|
|
96
|
-
rightComponent,
|
|
97
|
-
style,
|
|
98
|
-
renderSelector,
|
|
99
|
-
requestShowSelector,
|
|
100
|
-
requestCloseSelector
|
|
101
|
-
} = _b, rest = __objRest(_b, [
|
|
102
|
-
"onChange",
|
|
103
|
-
"value",
|
|
104
|
-
"mode",
|
|
105
|
-
"format",
|
|
106
|
-
"locale",
|
|
107
|
-
"upperDateThreshold",
|
|
108
|
-
"lowerDateThreshold",
|
|
109
|
-
"offsetThreshold",
|
|
110
|
-
"upperOffsetThreshold",
|
|
111
|
-
"lowerOffsetThreshold",
|
|
112
|
-
"dateModalTitle",
|
|
113
|
-
"timeModalTitle",
|
|
114
|
-
"dateConfirmButtonText",
|
|
115
|
-
"timeConfirmButtonText",
|
|
116
|
-
"dayLabel",
|
|
117
|
-
"monthLabel",
|
|
118
|
-
"yearLabel",
|
|
119
|
-
"hourLabel",
|
|
120
|
-
"minuteLabel",
|
|
121
|
-
"placeholder",
|
|
122
|
-
"onFocus",
|
|
123
|
-
"onBlur",
|
|
124
|
-
"disabled",
|
|
125
|
-
"controlComponent",
|
|
126
|
-
"hintComponent",
|
|
127
|
-
"hint",
|
|
128
|
-
"variant",
|
|
129
|
-
"TextComponent",
|
|
130
|
-
"DateTimeSelectorComponent",
|
|
131
|
-
"rightComponent",
|
|
132
|
-
"style",
|
|
133
|
-
"renderSelector",
|
|
134
|
-
"requestShowSelector",
|
|
135
|
-
"requestCloseSelector"
|
|
136
|
-
]);
|
|
37
|
+
const DateTimePicker = ({
|
|
38
|
+
onChange,
|
|
39
|
+
value,
|
|
40
|
+
mode = "date",
|
|
41
|
+
format = "yyyy-MM-dd hh:mm:ss",
|
|
42
|
+
locale,
|
|
43
|
+
upperDateThreshold,
|
|
44
|
+
lowerDateThreshold,
|
|
45
|
+
offsetThreshold,
|
|
46
|
+
upperOffsetThreshold,
|
|
47
|
+
lowerOffsetThreshold,
|
|
48
|
+
dateModalTitle,
|
|
49
|
+
timeModalTitle,
|
|
50
|
+
dateConfirmButtonText,
|
|
51
|
+
timeConfirmButtonText,
|
|
52
|
+
dayLabel,
|
|
53
|
+
monthLabel,
|
|
54
|
+
yearLabel,
|
|
55
|
+
hourLabel,
|
|
56
|
+
minuteLabel,
|
|
57
|
+
placeholder,
|
|
58
|
+
onFocus,
|
|
59
|
+
onBlur,
|
|
60
|
+
disabled,
|
|
61
|
+
controlComponent,
|
|
62
|
+
hintComponent,
|
|
63
|
+
hint,
|
|
64
|
+
variant = "default",
|
|
65
|
+
TextComponent = Text,
|
|
66
|
+
DateTimeSelectorComponent = DateTimeSelector,
|
|
67
|
+
rightComponent,
|
|
68
|
+
style,
|
|
69
|
+
renderSelector,
|
|
70
|
+
requestShowSelector,
|
|
71
|
+
requestCloseSelector,
|
|
72
|
+
...rest
|
|
73
|
+
}) => {
|
|
137
74
|
const { focused, handleBlur, handleFocus } = useInputFocus.useInputFocus(
|
|
138
75
|
onFocus,
|
|
139
76
|
onBlur,
|
|
@@ -144,7 +81,7 @@ const DateTimePicker = (_a) => {
|
|
|
144
81
|
handleFocus();
|
|
145
82
|
};
|
|
146
83
|
const handleChoosing = (value2) => {
|
|
147
|
-
onChange
|
|
84
|
+
onChange?.(value2);
|
|
148
85
|
requestCloseSelector();
|
|
149
86
|
};
|
|
150
87
|
const StyledText = styled.getStyledTextComponent(TextComponent);
|
|
@@ -173,7 +110,7 @@ const DateTimePicker = (_a) => {
|
|
|
173
110
|
minuteLabel,
|
|
174
111
|
onChange: handleChoosing
|
|
175
112
|
});
|
|
176
|
-
return /* @__PURE__ */ React__namespace.createElement(React__namespace.Fragment, null, controlComponent ? controlComponent(handleShowSelector, displayValue) : /* @__PURE__ */ React__namespace.createElement(HintInputContainer,
|
|
113
|
+
return /* @__PURE__ */ React__namespace.createElement(React__namespace.Fragment, null, controlComponent ? controlComponent(handleShowSelector, displayValue) : /* @__PURE__ */ React__namespace.createElement(HintInputContainer, {
|
|
177
114
|
focused,
|
|
178
115
|
viewStyle: style,
|
|
179
116
|
onPress: handleShowSelector,
|
|
@@ -186,8 +123,9 @@ const DateTimePicker = (_a) => {
|
|
|
186
123
|
name: "calendar-sharp",
|
|
187
124
|
type: "ionicon",
|
|
188
125
|
size: "centi"
|
|
189
|
-
}), rightComponent)
|
|
190
|
-
|
|
126
|
+
}), rightComponent),
|
|
127
|
+
...rest
|
|
128
|
+
}, /* @__PURE__ */ React__namespace.createElement(StyledText, {
|
|
191
129
|
fontWeight: "bold",
|
|
192
130
|
disabled
|
|
193
131
|
}, displayValue)), renderSelector(dateTimeSelector, handleBlur));
|