@mirai/ui 1.0.84 → 1.0.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/build/components/Calendar/Calendar.Month.js +6 -3
- package/build/components/Calendar/Calendar.Month.js.map +1 -1
- package/build/components/Calendar/Calendar.Week.js +4 -1
- package/build/components/Calendar/Calendar.Week.js.map +1 -1
- package/build/components/Calendar/Calendar.js +10 -1
- package/build/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Form/__tests__/__snapshots__/Form.test.jsx.snap +6 -6
- package/build/components/InputDate/InputDate.js +8 -10
- package/build/components/InputDate/InputDate.js.map +1 -1
- package/build/components/InputDate/InputDate.module.css +6 -14
- package/build/components/InputDate/InputDate.stories.js +2 -2
- package/build/components/InputDate/InputDate.stories.js.map +1 -1
- package/build/components/InputDate/__tests__/__snapshots__/InputDate.test.js.snap +322 -139
- package/build/components/InputSelect/InputSelect.js +8 -5
- package/build/components/InputSelect/InputSelect.js.map +1 -1
- package/build/components/InputSelect/__tests__/__snapshots__/InputSelect.test.js.snap +6 -6
- package/build/components/InputText/InputText.js +6 -5
- package/build/components/InputText/InputText.js.map +1 -1
- package/build/components/InputText/InputText.module.css +17 -26
- package/build/components/InputText/__tests__/__snapshots__/InputText.test.js.snap +6 -6
- package/build/components/Tooltip/Tooltip.js +4 -1
- package/build/components/Tooltip/Tooltip.js.map +1 -1
- package/build/primitives/Layer/Layer.js +9 -3
- package/build/primitives/Layer/Layer.js.map +1 -1
- package/build/primitives/Layer/helpers/getLayerPosition.js +4 -2
- package/build/primitives/Layer/helpers/getLayerPosition.js.map +1 -1
- package/build/primitives/Layer/helpers/getScrollParent.js +12 -0
- package/build/primitives/Layer/helpers/getScrollParent.js.map +1 -0
- package/build/primitives/Layer/helpers/index.js +11 -0
- package/build/primitives/Layer/helpers/index.js.map +1 -1
- package/build/theme/default.theme.css +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -110,6 +110,7 @@ This primitive returns an element that displays with relative position to other
|
|
|
110
110
|
- `forceRender:bool` if you want render content children even if `visible` is _falsy_, by default is `true`.
|
|
111
111
|
- `left:bool` if you want open the content on the left of the reference component.
|
|
112
112
|
- `right:bool` if you want open the content on the right of the reference component.
|
|
113
|
+
- `timestamp:number` if you want to force render to recalculate the position of content, assign this property with a number (`Date.now()`).
|
|
113
114
|
- `top:bool` if you want open the content above the reference component.
|
|
114
115
|
- `visible:boolean` showing or hiding the layer
|
|
115
116
|
|
|
@@ -15,7 +15,7 @@ var _CalendarModule = _interopRequireDefault(require("./Calendar.module.css"));
|
|
|
15
15
|
var _Calendar2 = require("./Calendar.Week");
|
|
16
16
|
var _Calendar3 = require("./Calendar.Weekdays");
|
|
17
17
|
var _helpers2 = require("./helpers");
|
|
18
|
-
var _excluded = ["focus", "instance", "selected", "disabledPast", "format", "from", "locale", "range", "to", "onChange", "onFocus", "onNext", "onPrevious"];
|
|
18
|
+
var _excluded = ["focus", "instance", "selected", "disabledPast", "format", "from", "locale", "range", "timestamp", "to", "onChange", "onFocus", "onNext", "onPrevious"];
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
20
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
21
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -35,6 +35,7 @@ var Month = function Month(_ref) {
|
|
|
35
35
|
locale = _ref.locale,
|
|
36
36
|
_ref$range = _ref.range,
|
|
37
37
|
range = _ref$range === void 0 ? false : _ref$range,
|
|
38
|
+
timestamp = _ref.timestamp,
|
|
38
39
|
to = _ref.to,
|
|
39
40
|
_ref$onChange = _ref.onChange,
|
|
40
41
|
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
|
|
@@ -78,9 +79,10 @@ var Month = function Month(_ref) {
|
|
|
78
79
|
format: format,
|
|
79
80
|
from: from,
|
|
80
81
|
locale: locale,
|
|
81
|
-
to: to,
|
|
82
82
|
range: range,
|
|
83
|
-
selected: selected
|
|
83
|
+
selected: selected,
|
|
84
|
+
timestamp: timestamp,
|
|
85
|
+
to: to
|
|
84
86
|
}), {
|
|
85
87
|
key: week,
|
|
86
88
|
month: instance.getMonth(),
|
|
@@ -104,6 +106,7 @@ Month.propTypes = {
|
|
|
104
106
|
from: _propTypes.default.instanceOf(Date),
|
|
105
107
|
locale: _propTypes.default.string,
|
|
106
108
|
range: _propTypes.default.bool,
|
|
109
|
+
timestamp: _propTypes.default.number,
|
|
107
110
|
to: _propTypes.default.instanceOf(Date),
|
|
108
111
|
tooltips: _propTypes.default.shape({}),
|
|
109
112
|
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.Month.js","names":["Month","focus","instance","selected","disabledPast","format","from","locale","range","to","onChange","onFocus","onNext","onPrevious","others","useDevice","isDesktop","weekNumber","getWeekNumber","testID","styles","style","month","className","header","undefined","ICON","LEFT","title","getHeader","RIGHT","VISIBLE_WEEKS","map","week","getMonth","getFullYear","displayName","propTypes","captions","PropTypes","shape","any","disabledDates","arrayOf","string","bool","instanceOf","Date","tooltips","value","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.Month.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, Pressable, Text, View } from '../../primitives';\nimport { VISIBLE_WEEKS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { Week } from './Calendar.Week';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getHeader, getWeekNumber } from './helpers';\n\nexport const Month = ({\n focus,\n instance,\n selected,\n disabledPast,\n format,\n from,\n locale,\n range = false,\n to,\n onChange = () => {},\n onFocus = () => {},\n onNext,\n onPrevious,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const weekNumber = getWeekNumber(instance);\n\n const { ['data-testid']: testID } = others;\n\n return (\n <View className={styles(style.month, others.className)}>\n <View row className={style.header}>\n {onPrevious && (\n <Pressable tag=\"button\" onPress={onPrevious} data-testid={testID ? `${testID}-previous` : undefined}>\n <Icon value={ICON.LEFT} />\n </Pressable>\n )}\n <Text bold headline level={4} className={style.title}>\n {getHeader(instance, locale)}\n </Text>\n {onNext && (\n <Pressable tag=\"button\" onPress={onNext} data-testid={testID ? `${testID}-next` : undefined}>\n <Icon value={ICON.RIGHT} />\n </Pressable>\n )}\n </View>\n\n {isDesktop && <Weekdays locale={locale} />}\n\n {VISIBLE_WEEKS.map((week) => (\n <Week\n {...{\n ...others,\n disabledPast,\n focus,\n format,\n from,\n locale,\n
|
|
1
|
+
{"version":3,"file":"Calendar.Month.js","names":["Month","focus","instance","selected","disabledPast","format","from","locale","range","timestamp","to","onChange","onFocus","onNext","onPrevious","others","useDevice","isDesktop","weekNumber","getWeekNumber","testID","styles","style","month","className","header","undefined","ICON","LEFT","title","getHeader","RIGHT","VISIBLE_WEEKS","map","week","getMonth","getFullYear","displayName","propTypes","captions","PropTypes","shape","any","disabledDates","arrayOf","string","bool","instanceOf","Date","number","tooltips","value","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.Month.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, Pressable, Text, View } from '../../primitives';\nimport { VISIBLE_WEEKS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { Week } from './Calendar.Week';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getHeader, getWeekNumber } from './helpers';\n\nexport const Month = ({\n focus,\n instance,\n selected,\n disabledPast,\n format,\n from,\n locale,\n range = false,\n timestamp,\n to,\n onChange = () => {},\n onFocus = () => {},\n onNext,\n onPrevious,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const weekNumber = getWeekNumber(instance);\n\n const { ['data-testid']: testID } = others;\n\n return (\n <View className={styles(style.month, others.className)}>\n <View row className={style.header}>\n {onPrevious && (\n <Pressable tag=\"button\" onPress={onPrevious} data-testid={testID ? `${testID}-previous` : undefined}>\n <Icon value={ICON.LEFT} />\n </Pressable>\n )}\n <Text bold headline level={4} className={style.title}>\n {getHeader(instance, locale)}\n </Text>\n {onNext && (\n <Pressable tag=\"button\" onPress={onNext} data-testid={testID ? `${testID}-next` : undefined}>\n <Icon value={ICON.RIGHT} />\n </Pressable>\n )}\n </View>\n\n {isDesktop && <Weekdays locale={locale} />}\n\n {VISIBLE_WEEKS.map((week) => (\n <Week\n {...{\n ...others,\n disabledPast,\n focus,\n format,\n from,\n locale,\n range,\n selected,\n timestamp,\n to,\n }}\n key={week}\n month={instance.getMonth()}\n number={weekNumber + week}\n year={instance.getFullYear()}\n onFocus={onFocus}\n onPress={onChange}\n />\n ))}\n </View>\n );\n};\n\nMonth.displayName = 'Component:Calendar:Month';\n\nMonth.propTypes = {\n captions: PropTypes.shape({}),\n focus: PropTypes.any,\n instance: PropTypes.any,\n selected: PropTypes.any,\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.instanceOf(Date),\n locale: PropTypes.string,\n range: PropTypes.bool,\n timestamp: PropTypes.number,\n to: PropTypes.instanceOf(Date),\n tooltips: PropTypes.shape({}),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onNext: PropTypes.func,\n onPrevious: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ var _Tooltip = require("../Tooltip");
|
|
|
14
14
|
var _Calendar = require("./Calendar.constants");
|
|
15
15
|
var _CalendarModule = _interopRequireDefault(require("./Calendar.module.css"));
|
|
16
16
|
var _helpers2 = require("./helpers");
|
|
17
|
-
var _excluded = ["captions", "disabledDates", "disabledPast", "focus", "locale", "format", "from", "highlights", "month", "number", "range", "rangeMinDays", "selected", "to", "tooltips", "year", "onPress", "onFocus"];
|
|
17
|
+
var _excluded = ["captions", "disabledDates", "disabledPast", "focus", "locale", "format", "from", "highlights", "month", "number", "range", "rangeMinDays", "selected", "timestamp", "to", "tooltips", "year", "onPress", "onFocus"];
|
|
18
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -47,6 +47,7 @@ var Week = function Week(_ref) {
|
|
|
47
47
|
range = _ref.range,
|
|
48
48
|
rangeMinDays = _ref.rangeMinDays,
|
|
49
49
|
selected = _ref.selected,
|
|
50
|
+
timestamp = _ref.timestamp,
|
|
50
51
|
to = _ref.to,
|
|
51
52
|
_ref$tooltips = _ref.tooltips,
|
|
52
53
|
tooltips = _ref$tooltips === void 0 ? {} : _ref$tooltips,
|
|
@@ -130,6 +131,7 @@ var Week = function Week(_ref) {
|
|
|
130
131
|
"data-testid": "".concat(others['data-testid'] || 'calendar', "-").concat(number, "-").concat(day)
|
|
131
132
|
}, is.visible && /*#__PURE__*/_react.default.createElement(tooltip ? _Tooltip.Tooltip : _react.Fragment, tooltip ? _objectSpread({
|
|
132
133
|
pressable: true,
|
|
134
|
+
timestamp: timestamp,
|
|
133
135
|
top: true,
|
|
134
136
|
visible: true
|
|
135
137
|
}, tooltip) : {}, /*#__PURE__*/_react.default.createElement(_primitives.View, {
|
|
@@ -162,6 +164,7 @@ Week.propTypes = {
|
|
|
162
164
|
range: _propTypes.default.bool,
|
|
163
165
|
rangeMinDays: _propTypes.default.number,
|
|
164
166
|
selected: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.object)]),
|
|
167
|
+
timestamp: _propTypes.default.number,
|
|
165
168
|
onFocus: _propTypes.default.func,
|
|
166
169
|
onPress: _propTypes.default.func
|
|
167
170
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.Week.js","names":["Week","captions","disabledDates","disabledPast","focus","locale","format","from","highlights","month","number","range","rangeMinDays","selected","to","tooltips","year","onPress","onFocus","others","disabledDatesTS","map","date","UTC","parseDate","getTime","firstDate","getFirstDateOfWeek","getFirstDayOfWeek","todayTS","getToday","fromTS","toTS","focusTS","rangeTS","start","end","undefined","min","dateCalc","filter","ts","sort","outbound","styles","style","DAYS","day","Date","getFullYear","getMonth","getDate","dateTS","dateString","dateFormat","is","disabled","includes","highlight","outOfRange","minRange","rangeLimit","ranging","today","visible","textStyle","textDisabled","textSelected","textHighlight","tooltip","cell","React","createElement","Tooltip","Fragment","pressable","top","dayRange","daySelected","daySelectedStart","daySelectedEnd","dayTouchable","caption","color","empty","displayName","propTypes","PropTypes","shape","arrayOf","string","bool","object","instanceOf","isRequired","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.Week.jsx"],"sourcesContent":["import { dateCalc, dateFormat, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { Fragment } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Pressable, Text, View } from '../../primitives';\nimport { Tooltip } from '../Tooltip';\nimport { DAYS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { getFirstDateOfWeek, getToday, getFirstDayOfWeek } from './helpers';\n\nexport const Week = ({\n captions,\n disabledDates = [],\n disabledPast,\n focus,\n locale,\n format,\n from,\n highlights = [],\n month,\n number,\n range,\n rangeMinDays,\n selected,\n to,\n tooltips = {},\n year,\n onPress = () => {},\n onFocus = () => {},\n ...others\n}) => {\n const disabledDatesTS = disabledDates.map((date) => UTC(parseDate(date, format)).getTime());\n const firstDate = getFirstDateOfWeek(number, year, getFirstDayOfWeek(locale));\n const todayTS = getToday().getTime();\n const fromTS = from?.getTime();\n const toTS = to?.getTime();\n const focusTS = focus?.getTime();\n\n let rangeTS = {};\n if (range) {\n const [start, end] = selected;\n rangeTS = {\n start: start ? start.getTime() : undefined,\n end: end ? end.getTime() : undefined,\n min: start && rangeMinDays ? dateCalc(start, rangeMinDays, 'days').getTime() : undefined,\n };\n\n const [outbound] = disabledDatesTS.filter((ts) => ts > rangeTS.start).sort();\n rangeTS.outbound = outbound ? outbound - 1 : undefined;\n }\n\n return (\n <View row className={styles(rangeTS.start !== undefined && range && style.range)}>\n {DAYS.map((day) => {\n const date = UTC(new Date(firstDate.getFullYear(), firstDate.getMonth(), firstDate.getDate() + day));\n const dateTS = date.getTime();\n const dateString = dateFormat(date, { format });\n\n const is = {\n disabled:\n (disabledPast && dateTS < todayTS) || // past\n !date.getMonth() === month || // days out of month\n disabledDatesTS.includes(dateTS) || // disabled dates\n dateTS < fromTS || // less than range\n dateTS > toTS, // more than range\n highlight: highlights.includes(dateString),\n outOfRange: dateTS > rangeTS.outbound,\n minRange: dateTS > rangeTS.start && dateTS < rangeTS.min,\n range: dateTS > rangeTS.start && (dateTS < rangeTS.end || dateTS < rangeTS.min || dateTS < focusTS),\n rangeLimit: dateTS === rangeTS.start || dateTS === rangeTS.end,\n ranging: range && selected?.[0] && !selected[1],\n selected:\n range && selected\n ? selected[0] && !selected[1]\n ? dateTS === selected[0].getTime()\n : selected[0] && selected[1]\n ? dateTS >= selected[0].getTime() && dateTS <= selected[1].getTime()\n : undefined\n : dateTS === selected?.getTime(),\n today: dateTS === todayTS,\n visible: date.getMonth() === month,\n };\n\n const textStyle =\n is.disabled || (is.ranging && is.outOfRange)\n ? style.textDisabled\n : is.selected || dateTS === rangeTS.end\n ? style.textSelected\n : is.highlight && !is.range\n ? style.textHighlight\n : undefined;\n\n const tooltip = !is.disabled && tooltips[dateString];\n\n return (\n <Pressable\n disabled={is.disabled || !is.visible || (is.ranging && (is.minRange || is.outOfRange))}\n key={day}\n tabIndex={is.visible && !is.disabled ? `${date.getMonth()}-${date.getDate()}` : undefined}\n onEnter={is.ranging ? () => onFocus(date) : undefined}\n onLeave={is.ranging ? () => onFocus() : undefined}\n onPress={() => onPress(date)}\n className={style.cell}\n data-testid={`${others['data-testid'] || 'calendar'}-${number}-${day}`}\n >\n {is.visible &&\n React.createElement(\n tooltip ? Tooltip : Fragment,\n tooltip ? { pressable: true, top: true, visible: true, ...tooltip } : {},\n <View\n className={styles(\n style.day,\n is.range && !is.disabled && !is.outOfRange && style.dayRange,\n (is.rangeLimit || (!is.range && is.selected)) && style.daySelected,\n is.rangeLimit && dateTS === rangeTS.start && style.daySelectedStart,\n is.rangeLimit && dateTS === rangeTS.end && style.daySelectedEnd,\n !is.selected && !is.disabled && !is.minRange && !is.outOfRange && style.dayTouchable,\n )}\n >\n <Text bold={is.today || is.highlight || (is.selected && !is.range)} className={textStyle}>\n {date.getDate()}\n </Text>\n\n {captions && (\n <Text\n small\n className={styles(\n textStyle,\n style.caption,\n !is.highlight && !is.selected && !is.rangeLimit && style.color,\n !captions[dateString] && !is.rangeLimit && style.empty,\n )}\n >\n {!is.disabled ? captions[dateString] || '-' : ''}\n </Text>\n )}\n </View>,\n )}\n </Pressable>\n );\n })}\n </View>\n );\n};\n\nWeek.displayName = 'Component:Calendar:Week';\n\nWeek.propTypes = {\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n focus: PropTypes.object,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n format: PropTypes.string,\n from: PropTypes.instanceOf(Date),\n to: PropTypes.instanceOf(Date),\n tooltips: PropTypes.shape({}),\n year: PropTypes.number.isRequired,\n month: PropTypes.number.isRequired,\n number: PropTypes.number.isRequired,\n range: PropTypes.bool,\n rangeMinDays: PropTypes.number,\n selected: PropTypes.oneOfType([PropTypes.object, PropTypes.arrayOf(PropTypes.object)]),\n onFocus: PropTypes.func,\n onPress: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Calendar.Week.js","names":["Week","captions","disabledDates","disabledPast","focus","locale","format","from","highlights","month","number","range","rangeMinDays","selected","timestamp","to","tooltips","year","onPress","onFocus","others","disabledDatesTS","map","date","UTC","parseDate","getTime","firstDate","getFirstDateOfWeek","getFirstDayOfWeek","todayTS","getToday","fromTS","toTS","focusTS","rangeTS","start","end","undefined","min","dateCalc","filter","ts","sort","outbound","styles","style","DAYS","day","Date","getFullYear","getMonth","getDate","dateTS","dateString","dateFormat","is","disabled","includes","highlight","outOfRange","minRange","rangeLimit","ranging","today","visible","textStyle","textDisabled","textSelected","textHighlight","tooltip","cell","React","createElement","Tooltip","Fragment","pressable","top","dayRange","daySelected","daySelectedStart","daySelectedEnd","dayTouchable","caption","color","empty","displayName","propTypes","PropTypes","shape","arrayOf","string","bool","object","instanceOf","isRequired","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.Week.jsx"],"sourcesContent":["import { dateCalc, dateFormat, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { Fragment } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Pressable, Text, View } from '../../primitives';\nimport { Tooltip } from '../Tooltip';\nimport { DAYS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { getFirstDateOfWeek, getToday, getFirstDayOfWeek } from './helpers';\n\nexport const Week = ({\n captions,\n disabledDates = [],\n disabledPast,\n focus,\n locale,\n format,\n from,\n highlights = [],\n month,\n number,\n range,\n rangeMinDays,\n selected,\n timestamp,\n to,\n tooltips = {},\n year,\n onPress = () => {},\n onFocus = () => {},\n ...others\n}) => {\n const disabledDatesTS = disabledDates.map((date) => UTC(parseDate(date, format)).getTime());\n const firstDate = getFirstDateOfWeek(number, year, getFirstDayOfWeek(locale));\n const todayTS = getToday().getTime();\n const fromTS = from?.getTime();\n const toTS = to?.getTime();\n const focusTS = focus?.getTime();\n\n let rangeTS = {};\n if (range) {\n const [start, end] = selected;\n rangeTS = {\n start: start ? start.getTime() : undefined,\n end: end ? end.getTime() : undefined,\n min: start && rangeMinDays ? dateCalc(start, rangeMinDays, 'days').getTime() : undefined,\n };\n\n const [outbound] = disabledDatesTS.filter((ts) => ts > rangeTS.start).sort();\n rangeTS.outbound = outbound ? outbound - 1 : undefined;\n }\n\n return (\n <View row className={styles(rangeTS.start !== undefined && range && style.range)}>\n {DAYS.map((day) => {\n const date = UTC(new Date(firstDate.getFullYear(), firstDate.getMonth(), firstDate.getDate() + day));\n const dateTS = date.getTime();\n const dateString = dateFormat(date, { format });\n\n const is = {\n disabled:\n (disabledPast && dateTS < todayTS) || // past\n !date.getMonth() === month || // days out of month\n disabledDatesTS.includes(dateTS) || // disabled dates\n dateTS < fromTS || // less than range\n dateTS > toTS, // more than range\n highlight: highlights.includes(dateString),\n outOfRange: dateTS > rangeTS.outbound,\n minRange: dateTS > rangeTS.start && dateTS < rangeTS.min,\n range: dateTS > rangeTS.start && (dateTS < rangeTS.end || dateTS < rangeTS.min || dateTS < focusTS),\n rangeLimit: dateTS === rangeTS.start || dateTS === rangeTS.end,\n ranging: range && selected?.[0] && !selected[1],\n selected:\n range && selected\n ? selected[0] && !selected[1]\n ? dateTS === selected[0].getTime()\n : selected[0] && selected[1]\n ? dateTS >= selected[0].getTime() && dateTS <= selected[1].getTime()\n : undefined\n : dateTS === selected?.getTime(),\n today: dateTS === todayTS,\n visible: date.getMonth() === month,\n };\n\n const textStyle =\n is.disabled || (is.ranging && is.outOfRange)\n ? style.textDisabled\n : is.selected || dateTS === rangeTS.end\n ? style.textSelected\n : is.highlight && !is.range\n ? style.textHighlight\n : undefined;\n\n const tooltip = !is.disabled && tooltips[dateString];\n\n return (\n <Pressable\n disabled={is.disabled || !is.visible || (is.ranging && (is.minRange || is.outOfRange))}\n key={day}\n tabIndex={is.visible && !is.disabled ? `${date.getMonth()}-${date.getDate()}` : undefined}\n onEnter={is.ranging ? () => onFocus(date) : undefined}\n onLeave={is.ranging ? () => onFocus() : undefined}\n onPress={() => onPress(date)}\n className={style.cell}\n data-testid={`${others['data-testid'] || 'calendar'}-${number}-${day}`}\n >\n {is.visible &&\n React.createElement(\n tooltip ? Tooltip : Fragment,\n tooltip ? { pressable: true, timestamp, top: true, visible: true, ...tooltip } : {},\n <View\n className={styles(\n style.day,\n is.range && !is.disabled && !is.outOfRange && style.dayRange,\n (is.rangeLimit || (!is.range && is.selected)) && style.daySelected,\n is.rangeLimit && dateTS === rangeTS.start && style.daySelectedStart,\n is.rangeLimit && dateTS === rangeTS.end && style.daySelectedEnd,\n !is.selected && !is.disabled && !is.minRange && !is.outOfRange && style.dayTouchable,\n )}\n >\n <Text bold={is.today || is.highlight || (is.selected && !is.range)} className={textStyle}>\n {date.getDate()}\n </Text>\n\n {captions && (\n <Text\n small\n className={styles(\n textStyle,\n style.caption,\n !is.highlight && !is.selected && !is.rangeLimit && style.color,\n !captions[dateString] && !is.rangeLimit && style.empty,\n )}\n >\n {!is.disabled ? captions[dateString] || '-' : ''}\n </Text>\n )}\n </View>,\n )}\n </Pressable>\n );\n })}\n </View>\n );\n};\n\nWeek.displayName = 'Component:Calendar:Week';\n\nWeek.propTypes = {\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n focus: PropTypes.object,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n format: PropTypes.string,\n from: PropTypes.instanceOf(Date),\n to: PropTypes.instanceOf(Date),\n tooltips: PropTypes.shape({}),\n year: PropTypes.number.isRequired,\n month: PropTypes.number.isRequired,\n number: PropTypes.number.isRequired,\n range: PropTypes.bool,\n rangeMinDays: PropTypes.number,\n selected: PropTypes.oneOfType([PropTypes.object, PropTypes.arrayOf(PropTypes.object)]),\n timestamp: PropTypes.number,\n onFocus: PropTypes.func,\n onPress: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
@@ -73,6 +73,10 @@ var Calendar = function Calendar(_ref) {
|
|
|
73
73
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
74
74
|
selected = _useState8[0],
|
|
75
75
|
setSelected = _useState8[1];
|
|
76
|
+
var _useState9 = (0, _react.useState)(),
|
|
77
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
78
|
+
timestamp = _useState10[0],
|
|
79
|
+
setTimestamp = _useState10[1];
|
|
76
80
|
(0, _react.useEffect)(function () {
|
|
77
81
|
var date = range ? value ? value[0] : undefined : value;
|
|
78
82
|
if (from && !date) {
|
|
@@ -119,6 +123,10 @@ var Calendar = function Calendar(_ref) {
|
|
|
119
123
|
return next;
|
|
120
124
|
});
|
|
121
125
|
};
|
|
126
|
+
var handleScroll = function handleScroll(event) {
|
|
127
|
+
onScroll(event);
|
|
128
|
+
setTimestamp(Date.now());
|
|
129
|
+
};
|
|
122
130
|
var testID = others['data-testid'],
|
|
123
131
|
scrollEventThrottle = others.scrollEventThrottle;
|
|
124
132
|
var className = others.className,
|
|
@@ -137,6 +145,7 @@ var Calendar = function Calendar(_ref) {
|
|
|
137
145
|
from: from ? (0, _locale.parseDate)(from, format) : undefined,
|
|
138
146
|
locale: locale,
|
|
139
147
|
range: range,
|
|
148
|
+
timestamp: timestamp,
|
|
140
149
|
to: range && rangeMaxDays && selected[0] && !selected[1] && (!to || (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') < (0, _locale.parseDate)(to, format)) ? (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') : to ? (0, _locale.parseDate)(to, format) : undefined,
|
|
141
150
|
selected: selected,
|
|
142
151
|
onChange: handleChange,
|
|
@@ -153,7 +162,7 @@ var Calendar = function Calendar(_ref) {
|
|
|
153
162
|
scrollTo: scrollTo,
|
|
154
163
|
className: _CalendarModule.default.scrollview,
|
|
155
164
|
scrollEventThrottle: scrollEventThrottle,
|
|
156
|
-
onScroll:
|
|
165
|
+
onScroll: handleScroll
|
|
157
166
|
}, Array.from({
|
|
158
167
|
length: months
|
|
159
168
|
}, function (empty, index) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","names":["Calendar","disabledPast","format","from","locale","range","rangeMaxDays","to","value","onChange","onFocus","onNavigation","onScroll","others","useDevice","isDesktop","isMobile","useState","focus","setFocus","getFirstDateOfMonth","getToday","instance","setInstance","scrollTo","setScrollTo","undefined","selected","setSelected","useEffect","date","dateFrom","parseDate","dateDiff","days","length","next","diffMonths","months","getScrollTo","UTC","handleChange","getTime","handleMonth","month","Date","getFullYear","getMonth","testID","scrollEventThrottle","className","props","today","instanceTS","todayMonthTS","disabledPrevious","disabledNext","dateCalc","styles","style","container","scrollview","Array","empty","index","displayName","propTypes","captions","PropTypes","shape","disabledDates","arrayOf","string","bool","highlights","number","rangeMinDays","tooltips","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.jsx"],"sourcesContent":["import { dateCalc, dateDiff, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ScrollView, View } from '../../primitives';\nimport style from './Calendar.module.css';\nimport { Month } from './Calendar.Month';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getFirstDateOfMonth, getScrollTo, getToday } from './helpers';\n\nexport const Calendar = ({\n disabledPast = true,\n format = 'YYYY/MM/DD',\n from,\n locale,\n range = false,\n rangeMaxDays,\n to,\n value,\n onChange = () => {},\n onFocus = () => {},\n onNavigation = () => {},\n onScroll,\n ...others\n}) => {\n const { isDesktop, isMobile } = useDevice();\n\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [scrollTo, setScrollTo] = useState();\n const [selected, setSelected] = useState(range ? [] : undefined);\n\n useEffect(() => {\n let date = range ? (value ? value[0] : undefined) : value;\n if (from && !date) {\n const dateFrom = parseDate(from, format);\n const { days } = dateDiff(dateFrom, parseDate(date, format));\n\n setInstance(getFirstDateOfMonth(dateFrom));\n if (days < 0) date = undefined;\n }\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && (selected.length === 0 || value.length === 2)) || !range) {\n const next = getFirstDateOfMonth(date);\n const { months: diffMonths } = dateDiff(instance, date);\n\n if (isDesktop && (diffMonths >= months || diffMonths < 0)) setInstance(next);\n else if (isMobile) setScrollTo(getScrollTo(diffMonths));\n }\n\n setSelected(range ? [UTC(date), value[1] ? UTC(parseDate(value[1], format)) : undefined] : UTC(date));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [format, from, range, value]);\n\n useEffect(() => {\n onFocus(focus);\n }, [focus, onFocus]);\n\n const handleChange = (date) => {\n setSelected(() => {\n let next;\n\n if (!range) {\n next = date;\n } else if (selected[1] === undefined && date > selected[0]) {\n next = [selected[0], date];\n } else {\n next = [selected[0]?.getTime() === date.getTime() ? undefined : date];\n setFocus(undefined);\n }\n onChange(next);\n\n return next;\n });\n };\n\n const handleMonth = (month) => {\n setInstance(() => {\n const next = getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + month));\n\n onNavigation(next);\n return next;\n });\n };\n\n const { ['data-testid']: testID, scrollEventThrottle } = others;\n let { className, months = 2, ...props } = others;\n\n const today = getToday();\n const instanceTS = instance.getTime();\n const todayMonthTS = getFirstDateOfMonth(today).getTime();\n const disabledPrevious =\n (disabledPast && instanceTS <= todayMonthTS) ||\n (from && instanceTS <= getFirstDateOfMonth(parseDate(from, format)).getTime());\n\n const disabledNext =\n to && parseDate(to, format).getTime() <= getFirstDateOfMonth(dateCalc(instance, months, 'months')).getTime();\n\n props = {\n ...props,\n disabledPast,\n focus,\n format,\n from: from ? parseDate(from, format) : undefined,\n locale,\n range,\n to:\n range &&\n rangeMaxDays &&\n selected[0] &&\n !selected[1] &&\n (!to || dateCalc(selected[0], rangeMaxDays, 'days') < parseDate(to, format))\n ? dateCalc(selected[0], rangeMaxDays, 'days')\n : to\n ? parseDate(to, format)\n : undefined,\n selected,\n onChange: handleChange,\n onFocus: isDesktop ? setFocus : undefined,\n };\n\n if (isMobile && to) months = dateDiff(today, parseDate(to, format)).months;\n\n return (\n <View className={styles(style.container, className)} data-testid={testID}>\n {isMobile && <Weekdays locale={locale} />}\n <ScrollView\n horizontal={isDesktop}\n scrollTo={scrollTo}\n className={style.scrollview}\n scrollEventThrottle={scrollEventThrottle}\n onScroll={onScroll}\n >\n {Array.from({ length: months }, (empty, index) => (\n <Month\n data-testid={testID}\n key={index}\n onNext={isDesktop && index === months - 1 && !disabledNext ? () => handleMonth(months) : undefined}\n onPrevious={isDesktop && index === 0 && !disabledPrevious ? () => handleMonth(-months) : undefined}\n instance={new Date(instance.getFullYear(), instance.getMonth() + index, 1)} // ! TODO: calc with mirai/locale\n {...props}\n />\n ))}\n </ScrollView>\n </View>\n );\n};\n\nCalendar.displayName = 'Component:Calendar';\n\nCalendar.propTypes = {\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.string,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n months: PropTypes.number,\n range: PropTypes.bool,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n to: PropTypes.string,\n tooltips: PropTypes.shape({}),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onNavigation: PropTypes.func,\n onScroll: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Calendar.js","names":["Calendar","disabledPast","format","from","locale","range","rangeMaxDays","to","value","onChange","onFocus","onNavigation","onScroll","others","useDevice","isDesktop","isMobile","useState","focus","setFocus","getFirstDateOfMonth","getToday","instance","setInstance","scrollTo","setScrollTo","undefined","selected","setSelected","timestamp","setTimestamp","useEffect","date","dateFrom","parseDate","dateDiff","days","length","next","diffMonths","months","getScrollTo","UTC","handleChange","getTime","handleMonth","month","Date","getFullYear","getMonth","handleScroll","event","now","testID","scrollEventThrottle","className","props","today","instanceTS","todayMonthTS","disabledPrevious","disabledNext","dateCalc","styles","style","container","scrollview","Array","empty","index","displayName","propTypes","captions","PropTypes","shape","disabledDates","arrayOf","string","bool","highlights","number","rangeMinDays","tooltips","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.jsx"],"sourcesContent":["import { dateCalc, dateDiff, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ScrollView, View } from '../../primitives';\nimport style from './Calendar.module.css';\nimport { Month } from './Calendar.Month';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getFirstDateOfMonth, getScrollTo, getToday } from './helpers';\n\nexport const Calendar = ({\n disabledPast = true,\n format = 'YYYY/MM/DD',\n from,\n locale,\n range = false,\n rangeMaxDays,\n to,\n value,\n onChange = () => {},\n onFocus = () => {},\n onNavigation = () => {},\n onScroll,\n ...others\n}) => {\n const { isDesktop, isMobile } = useDevice();\n\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [scrollTo, setScrollTo] = useState();\n const [selected, setSelected] = useState(range ? [] : undefined);\n const [timestamp, setTimestamp] = useState();\n\n useEffect(() => {\n let date = range ? (value ? value[0] : undefined) : value;\n if (from && !date) {\n const dateFrom = parseDate(from, format);\n const { days } = dateDiff(dateFrom, parseDate(date, format));\n\n setInstance(getFirstDateOfMonth(dateFrom));\n if (days < 0) date = undefined;\n }\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && (selected.length === 0 || value.length === 2)) || !range) {\n const next = getFirstDateOfMonth(date);\n const { months: diffMonths } = dateDiff(instance, date);\n\n if (isDesktop && (diffMonths >= months || diffMonths < 0)) setInstance(next);\n else if (isMobile) setScrollTo(getScrollTo(diffMonths));\n }\n\n setSelected(range ? [UTC(date), value[1] ? UTC(parseDate(value[1], format)) : undefined] : UTC(date));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [format, from, range, value]);\n\n useEffect(() => {\n onFocus(focus);\n }, [focus, onFocus]);\n\n const handleChange = (date) => {\n setSelected(() => {\n let next;\n\n if (!range) {\n next = date;\n } else if (selected[1] === undefined && date > selected[0]) {\n next = [selected[0], date];\n } else {\n next = [selected[0]?.getTime() === date.getTime() ? undefined : date];\n setFocus(undefined);\n }\n onChange(next);\n\n return next;\n });\n };\n\n const handleMonth = (month) => {\n setInstance(() => {\n const next = getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + month));\n\n onNavigation(next);\n return next;\n });\n };\n\n const handleScroll = (event) => {\n onScroll(event);\n setTimestamp(Date.now());\n };\n\n const { ['data-testid']: testID, scrollEventThrottle } = others;\n let { className, months = 2, ...props } = others;\n\n const today = getToday();\n const instanceTS = instance.getTime();\n const todayMonthTS = getFirstDateOfMonth(today).getTime();\n const disabledPrevious =\n (disabledPast && instanceTS <= todayMonthTS) ||\n (from && instanceTS <= getFirstDateOfMonth(parseDate(from, format)).getTime());\n\n const disabledNext =\n to && parseDate(to, format).getTime() <= getFirstDateOfMonth(dateCalc(instance, months, 'months')).getTime();\n\n props = {\n ...props,\n disabledPast,\n focus,\n format,\n from: from ? parseDate(from, format) : undefined,\n locale,\n range,\n timestamp,\n to:\n range &&\n rangeMaxDays &&\n selected[0] &&\n !selected[1] &&\n (!to || dateCalc(selected[0], rangeMaxDays, 'days') < parseDate(to, format))\n ? dateCalc(selected[0], rangeMaxDays, 'days')\n : to\n ? parseDate(to, format)\n : undefined,\n selected,\n onChange: handleChange,\n onFocus: isDesktop ? setFocus : undefined,\n };\n\n if (isMobile && to) months = dateDiff(today, parseDate(to, format)).months;\n\n return (\n <View className={styles(style.container, className)} data-testid={testID}>\n {isMobile && <Weekdays locale={locale} />}\n <ScrollView\n horizontal={isDesktop}\n scrollTo={scrollTo}\n className={style.scrollview}\n scrollEventThrottle={scrollEventThrottle}\n onScroll={handleScroll}\n >\n {Array.from({ length: months }, (empty, index) => (\n <Month\n data-testid={testID}\n key={index}\n onNext={isDesktop && index === months - 1 && !disabledNext ? () => handleMonth(months) : undefined}\n onPrevious={isDesktop && index === 0 && !disabledPrevious ? () => handleMonth(-months) : undefined}\n instance={new Date(instance.getFullYear(), instance.getMonth() + index, 1)} // ! TODO: calc with mirai/locale\n {...props}\n />\n ))}\n </ScrollView>\n </View>\n );\n};\n\nCalendar.displayName = 'Component:Calendar';\n\nCalendar.propTypes = {\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.string,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n months: PropTypes.number,\n range: PropTypes.bool,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n to: PropTypes.string,\n tooltips: PropTypes.shape({}),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onNavigation: PropTypes.func,\n onScroll: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
@@ -14,16 +14,16 @@ exports[`component:<Form> prop:children 1`] = `
|
|
|
14
14
|
<div
|
|
15
15
|
class="view inputContainer"
|
|
16
16
|
>
|
|
17
|
-
<span
|
|
18
|
-
class="text paragraph text label"
|
|
19
|
-
>
|
|
20
|
-
label
|
|
21
|
-
</span>
|
|
22
17
|
<div
|
|
23
18
|
class="view row inputBorder"
|
|
24
19
|
>
|
|
20
|
+
<span
|
|
21
|
+
class="text paragraph text label"
|
|
22
|
+
>
|
|
23
|
+
label
|
|
24
|
+
</span>
|
|
25
25
|
<input
|
|
26
|
-
class="input input"
|
|
26
|
+
class="input input withLabel"
|
|
27
27
|
name="name"
|
|
28
28
|
type="text"
|
|
29
29
|
value=""
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.InputDate = void 0;
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
8
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
11
|
var _helpers = require("../../helpers");
|
|
@@ -12,7 +13,7 @@ var _primitives = require("../../primitives");
|
|
|
12
13
|
var _InputText = require("../InputText");
|
|
13
14
|
var _InputTextModule = _interopRequireDefault(require("../InputText/InputText.module.css"));
|
|
14
15
|
var _InputDateModule = _interopRequireDefault(require("./InputDate.module.css"));
|
|
15
|
-
var _excluded = ["disabled", "error", "format", "hint", "label", "labels", "max", "min", "name", "
|
|
16
|
+
var _excluded = ["disabled", "error", "format", "hint", "label", "labels", "max", "min", "name", "required", "success", "value", "warning", "onChange", "onError", "onEnter", "onLeave"],
|
|
16
17
|
_excluded2 = ["className", "data-testid"];
|
|
17
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -30,7 +31,7 @@ var InputDate = function InputDate(_ref) {
|
|
|
30
31
|
var disabled = _ref.disabled,
|
|
31
32
|
error = _ref.error,
|
|
32
33
|
_ref$format = _ref.format,
|
|
33
|
-
format = _ref$format === void 0 ?
|
|
34
|
+
format = _ref$format === void 0 ? _locale.DEFAULT_DATE_FORMAT : _ref$format,
|
|
34
35
|
hint = _ref.hint,
|
|
35
36
|
label = _ref.label,
|
|
36
37
|
_ref$labels = _ref.labels,
|
|
@@ -38,8 +39,6 @@ var InputDate = function InputDate(_ref) {
|
|
|
38
39
|
max = _ref.max,
|
|
39
40
|
min = _ref.min,
|
|
40
41
|
name = _ref.name,
|
|
41
|
-
_ref$placeholder = _ref.placeholder,
|
|
42
|
-
placeholder = _ref$placeholder === void 0 ? true : _ref$placeholder,
|
|
43
42
|
required = _ref.required,
|
|
44
43
|
success = _ref.success,
|
|
45
44
|
_ref$value = _ref.value,
|
|
@@ -91,7 +90,7 @@ var InputDate = function InputDate(_ref) {
|
|
|
91
90
|
return /*#__PURE__*/_react.default.createElement(_primitives.View, {
|
|
92
91
|
className: (0, _helpers.styles)(_InputTextModule.default.inputContainer, className),
|
|
93
92
|
"data-testid": testId
|
|
94
|
-
}, /*#__PURE__*/_react.default.createElement(_primitives.Text, {
|
|
93
|
+
}, label && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
|
|
95
94
|
small: true,
|
|
96
95
|
className: (0, _helpers.styles)(_InputDateModule.default.label, _InputTextModule.default.text, _InputTextModule.default.hint, disabled && _InputTextModule.default.disabled, focus && _InputTextModule.default.focus, error && _InputTextModule.default.error)
|
|
97
96
|
}, label), /*#__PURE__*/_react.default.createElement(_primitives.View, {
|
|
@@ -100,12 +99,11 @@ var InputDate = function InputDate(_ref) {
|
|
|
100
99
|
return /*#__PURE__*/_react.default.createElement(_InputText.InputText, _extends({}, rest, {
|
|
101
100
|
disabled: disabled,
|
|
102
101
|
error: error,
|
|
103
|
-
hint: !placeholder ? labels[index] || part : undefined,
|
|
104
102
|
key: index,
|
|
103
|
+
label: labels[index] || part,
|
|
105
104
|
maxLength: part.length,
|
|
106
105
|
name: "".concat(name, ":").concat(part),
|
|
107
|
-
|
|
108
|
-
showState: false,
|
|
106
|
+
fork: true,
|
|
109
107
|
value: values[index],
|
|
110
108
|
onChange: function onChange(value) {
|
|
111
109
|
for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
@@ -115,7 +113,7 @@ var InputDate = function InputDate(_ref) {
|
|
|
115
113
|
},
|
|
116
114
|
onEnter: handleEnter,
|
|
117
115
|
onLeave: handleLeave,
|
|
118
|
-
className: (0, _helpers.styles)(_InputDateModule.default.input, _InputDateModule.default[part.substring(0, 1)]
|
|
116
|
+
className: (0, _helpers.styles)(_InputDateModule.default.input, _InputDateModule.default[part.substring(0, 1)]),
|
|
119
117
|
"data-testid": testId ? "".concat(testId, "-").concat(part) : undefined
|
|
120
118
|
}));
|
|
121
119
|
}), (error || success || warning) && /*#__PURE__*/_react.default.createElement(_primitives.Icon, {
|
|
@@ -124,7 +122,7 @@ var InputDate = function InputDate(_ref) {
|
|
|
124
122
|
success: success,
|
|
125
123
|
warning: warning
|
|
126
124
|
}),
|
|
127
|
-
className: (0, _helpers.styles)(_InputTextModule.default.icon, error ? _InputTextModule.default.error : warning ? _InputTextModule.default.warning : success ? _InputTextModule.default.success : undefined
|
|
125
|
+
className: (0, _helpers.styles)(_InputTextModule.default.icon, error ? _InputTextModule.default.error : warning ? _InputTextModule.default.warning : success ? _InputTextModule.default.success : undefined)
|
|
128
126
|
})), hint && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
|
|
129
127
|
small: true,
|
|
130
128
|
className: (0, _helpers.styles)(_InputTextModule.default.text, _InputTextModule.default.hint, disabled && _InputTextModule.default.disabled, error && _InputTextModule.default.error)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputDate.js","names":["InputDate","disabled","error","format","hint","label","labels","max","min","name","
|
|
1
|
+
{"version":3,"file":"InputDate.js","names":["InputDate","disabled","error","format","DEFAULT_DATE_FORMAT","hint","label","labels","max","min","name","required","success","value","warning","onChange","onError","onEnter","onLeave","others","useState","focus","setFocus","parts","splitDate","values","handleChange","partValue","partKey","event","nextValue","map","part","index","join","errors","getInputDateErrors","Object","keys","length","handleEnter","handleLeave","className","testId","rest","styles","style","inputContainer","styleDate","text","input","substring","undefined","getIconState","icon","displayName","propTypes","PropTypes","bool","string","arrayOf","isRequired","placeholder","func"],"sources":["../../../src/components/InputDate/InputDate.jsx"],"sourcesContent":["import { DEFAULT_DATE_FORMAT } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { getIconState, getInputDateErrors, splitDate, styles } from '../../helpers';\nimport { Icon, Text, View } from '../../primitives';\nimport { InputText } from '../InputText';\nimport style from '../InputText/InputText.module.css';\nimport styleDate from './InputDate.module.css';\n\nconst InputDate = ({\n disabled,\n error,\n format = DEFAULT_DATE_FORMAT,\n hint,\n label,\n labels = [],\n max,\n min,\n name,\n required,\n success,\n value = '',\n warning,\n onChange = () => {},\n onError = () => {},\n onEnter = () => {},\n onLeave = () => {},\n ...others\n}) => {\n const [focus, setFocus] = useState(false);\n\n const parts = splitDate(format);\n const values = splitDate(value);\n\n const handleChange = (partValue = '', partKey, event) => {\n const nextValue = parts.map((part, index) => (part !== partKey ? values[index] || '' : partValue)).join('/');\n onChange(nextValue, event);\n\n const errors = getInputDateErrors({ format, max, min, value, required });\n if (Object.keys(errors || {}).length > 0) onError(errors);\n };\n\n const handleEnter = (event) => {\n setFocus(true);\n onEnter(event);\n };\n\n const handleLeave = (event) => {\n setFocus(false);\n onLeave(event);\n };\n\n const { className, ['data-testid']: testId, ...rest } = others;\n\n return (\n <View className={styles(style.inputContainer, className)} data-testid={testId}>\n {label && (\n <Text\n small\n className={styles(\n styleDate.label,\n style.text,\n style.hint,\n disabled && style.disabled,\n focus && style.focus,\n error && style.error,\n )}\n >\n {label}\n </Text>\n )}\n\n <View row>\n {parts.map((part, index) => (\n <InputText\n {...rest}\n disabled={disabled}\n error={error}\n key={index}\n label={labels[index] || part}\n maxLength={part.length}\n name={`${name}:${part}`}\n fork\n value={values[index]}\n onChange={(value, ...rest) => handleChange(value, part, ...rest)}\n onEnter={handleEnter}\n onLeave={handleLeave}\n className={styles(styleDate.input, styleDate[part.substring(0, 1)])}\n data-testid={testId ? `${testId}-${part}` : undefined}\n />\n ))}\n\n {(error || success || warning) && (\n <Icon\n value={getIconState({ error, success, warning })}\n className={styles(\n style.icon,\n error ? style.error : warning ? style.warning : success ? style.success : undefined,\n )}\n />\n )}\n </View>\n\n {hint && (\n <Text small className={styles(style.text, style.hint, disabled && style.disabled, error && style.error)}>\n {hint}\n </Text>\n )}\n </View>\n );\n};\n\nInputDate.displayName = 'Component:InputDate';\n\nInputDate.propTypes = {\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n format: PropTypes.string,\n hint: PropTypes.string,\n label: PropTypes.string,\n labels: PropTypes.arrayOf(PropTypes.string),\n max: PropTypes.string,\n min: PropTypes.string,\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.bool,\n required: PropTypes.bool,\n success: PropTypes.bool,\n value: PropTypes.string,\n warning: PropTypes.bool,\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onEnter: PropTypes.func,\n onLeave: PropTypes.func,\n};\n\nexport { InputDate };\n"],"mappings":"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"}
|
|
@@ -1,26 +1,18 @@
|
|
|
1
1
|
.input {
|
|
2
|
-
max-width: calc(calc(var(--mirai-ui-input-font-size) * 2.
|
|
2
|
+
max-width: calc(calc(var(--mirai-ui-input-font-size) * 2.2) + calc(var(--mirai-ui-input-text-padding-x) * 2));
|
|
3
3
|
margin-bottom: 0;
|
|
4
4
|
margin-top: 0;
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
.input:not(:last-child) {
|
|
8
|
-
margin-right: var(--mirai-ui-input-text-padding-x);
|
|
8
|
+
margin-right: calc(var(--mirai-ui-input-text-padding-x) / 2);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
.input.Y
|
|
12
|
-
|
|
13
|
-
max-width: calc(calc(var(--mirai-ui-input-font-size) * 3.25) + calc(var(--mirai-ui-input-text-padding-x) * 2));
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.input.state.Y {
|
|
17
|
-
max-width: calc(calc(var(--mirai-ui-input-font-size) * 4.25) + calc(var(--mirai-ui-input-text-padding-x) * 2));
|
|
11
|
+
.input.Y {
|
|
12
|
+
max-width: calc(calc(var(--mirai-ui-input-font-size) * 3) + calc(var(--mirai-ui-input-text-padding-x) * 2));
|
|
18
13
|
}
|
|
19
14
|
|
|
20
15
|
.label {
|
|
21
|
-
margin-top: calc(var(--mirai-ui-font-size-small) * -0.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
.withHint {
|
|
25
|
-
margin-bottom: calc(var(--mirai-ui-input-text-padding-y) * 2);
|
|
16
|
+
margin-top: calc(var(--mirai-ui-font-size-small) * -0.25);
|
|
17
|
+
width: fit-content;
|
|
26
18
|
}
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.Story = void 0;
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
8
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
10
|
var _InputDate = require("./InputDate");
|
|
10
11
|
var _Story$args;
|
|
@@ -71,14 +72,13 @@ Story.storyName = 'InputDate';
|
|
|
71
72
|
Story.args = (_Story$args = {
|
|
72
73
|
disabled: false,
|
|
73
74
|
error: false,
|
|
74
|
-
format:
|
|
75
|
+
format: _locale.DEFAULT_DATE_FORMAT,
|
|
75
76
|
hint: 'hint',
|
|
76
77
|
label: 'label',
|
|
77
78
|
labels: ['Day', 'Month', 'Year'],
|
|
78
79
|
max: '10/04/2080',
|
|
79
80
|
min: '10/04/1980',
|
|
80
81
|
name: 'name',
|
|
81
|
-
placeholder: true,
|
|
82
82
|
required: false,
|
|
83
83
|
success: false,
|
|
84
84
|
warning: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputDate.stories.js","names":["title","Story","props","useState","value","setValue","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","storyName","args","disabled","error","format","hint","label","labels","max","min","name","
|
|
1
|
+
{"version":3,"file":"InputDate.stories.js","names":["title","Story","props","useState","value","setValue","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","storyName","args","disabled","error","format","DEFAULT_DATE_FORMAT","hint","label","labels","max","min","name","required","success","warning","argTypes"],"sources":["../../../src/components/InputDate/InputDate.stories.jsx"],"sourcesContent":["import { DEFAULT_DATE_FORMAT } from '@mirai/locale';\nimport React, { useState } from 'react';\n\nimport { InputDate } from './InputDate';\n\nexport default { title: 'Components' };\n\nexport const Story = (props) => {\n const [value, setValue] = useState('06/05/2020');\n\n const handleChange = (next, ...others) => {\n setValue(next);\n console.log('<InputDate>::onChange', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<InputDate>::onEnter', ...others);\n\n const handleError = (...others) => console.log('<InputDate>::onError', ...others);\n\n const handleLeave = (...others) => console.log('<InputDate>::onLeave', ...others);\n\n return (\n <InputDate\n {...props}\n value={value}\n onChange={handleChange}\n onEnter={handleEnter}\n onError={handleError}\n onLeave={handleLeave}\n />\n );\n};\n\nStory.storyName = 'InputDate';\n\nStory.args = {\n disabled: false,\n error: false,\n format: DEFAULT_DATE_FORMAT,\n hint: 'hint',\n label: 'label',\n labels: ['Day', 'Month', 'Year'],\n max: '10/04/2080',\n min: '10/04/1980',\n name: 'name',\n required: false,\n success: false,\n warning: false,\n // inherited properties\n ['data-testid']: 'test-story',\n style: {},\n};\n\nStory.argTypes = {};\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AAAwC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAEzB;EAAEA,KAAK,EAAE;AAAa,CAAC;AAAA;AAE/B,IAAMC,KAAK,GAAG,SAARA,KAAK,CAAIC,KAAK,EAAK;EAC9B,gBAA0B,IAAAC,eAAQ,EAAC,YAAY,CAAC;IAAA;IAAzCC,KAAK;IAAEC,QAAQ;EAEtB,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,IAAI,EAAgB;IAAA;IACxCF,QAAQ,CAACE,IAAI,CAAC;IAAC,kCADcC,MAAM;MAANA,MAAM;IAAA;IAEnC,YAAAC,OAAO,EAACC,GAAG,kBAAC,uBAAuB,EAAEH,IAAI,SAAKC,MAAM,EAAC;EACvD,CAAC;EAED,IAAMG,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOH,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,sBAAsB,SAAKF,MAAM,EAAC;EAAA;EAEjF,IAAMI,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOJ,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,sBAAsB,SAAKF,MAAM,EAAC;EAAA;EAEjF,IAAMK,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOL,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,sBAAsB,SAAKF,MAAM,EAAC;EAAA;EAEjF,oBACE,6BAAC,oBAAS,eACJN,KAAK;IACT,KAAK,EAAEE,KAAM;IACb,QAAQ,EAAEE,YAAa;IACvB,OAAO,EAAEK,WAAY;IACrB,OAAO,EAAEC,WAAY;IACrB,OAAO,EAAEC;EAAY,GACrB;AAEN,CAAC;AAAC;AAEFZ,KAAK,CAACa,SAAS,GAAG,WAAW;AAE7Bb,KAAK,CAACc,IAAI;EACRC,QAAQ,EAAE,KAAK;EACfC,KAAK,EAAE,KAAK;EACZC,MAAM,EAAEC,2BAAmB;EAC3BC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;EAChCC,GAAG,EAAE,YAAY;EACjBC,GAAG,EAAE,YAAY;EACjBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,KAAK;EACfC,OAAO,EAAE,KAAK;EACdC,OAAO,EAAE;AAAK,gCAEb,aAAa,EAAG,YAAY,yCACtB,CAAC,CAAC,eACV;AAED3B,KAAK,CAAC4B,QAAQ,GAAG,CAAC,CAAC"}
|