@mirai/ui 1.0.26 → 1.0.29

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.
@@ -75,11 +75,11 @@ var Month = function Month(_ref) {
75
75
  }, /*#__PURE__*/_react.default.createElement(_primitives.Icon, {
76
76
  name: "Left"
77
77
  })), /*#__PURE__*/_react.default.createElement(_primitives.Text, {
78
- bold: true,
79
78
  subheadline: true,
80
79
  className: _CalendarModule.default.title
81
80
  }, (0, _helpers2.getHeader)(instance, locale)), onNext && /*#__PURE__*/_react.default.createElement(_primitives.Pressable, {
82
- onPress: onNext
81
+ onPress: onNext,
82
+ className: _CalendarModule.default.pressable
83
83
  }, /*#__PURE__*/_react.default.createElement(_primitives.Icon, {
84
84
  name: "Right"
85
85
  }))), isDesktop && /*#__PURE__*/_react.default.createElement(_Calendar3.Weekdays, {
@@ -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","isDesktop","weekNumber","style","month","className","header","title","VISIBLE_WEEKS","map","week","getMonth","getFullYear","displayName","propTypes","captions","PropTypes","shape","any","disabledDates","arrayOf","string","bool","disabledWeekends","instanceOf","Date","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, 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 = true,\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 return (\n <View className={styles(style.month, others.className)}>\n <View row className={style.header}>\n {onPrevious && (\n <Pressable onPress={onPrevious}>\n <Icon name=\"Left\" />\n </Pressable>\n )}\n <Text bold subheadline className={style.title}>\n {getHeader(instance, locale)}\n </Text>\n {onNext && (\n <Pressable onPress={onNext}>\n <Icon name=\"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 to,\n range,\n selected,\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 disabledWeekends: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.instanceOf(Date),\n locale: PropTypes.string,\n range: PropTypes.bool,\n to: PropTypes.instanceOf(Date),\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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"}
1
+ {"version":3,"file":"Calendar.Month.js","names":["Month","focus","instance","selected","disabledPast","format","from","locale","range","to","onChange","onFocus","onNext","onPrevious","others","isDesktop","weekNumber","style","month","className","header","title","pressable","VISIBLE_WEEKS","map","week","getMonth","getFullYear","displayName","propTypes","captions","PropTypes","shape","any","disabledDates","arrayOf","string","bool","disabledWeekends","instanceOf","Date","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, 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 = true,\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 return (\n <View className={styles(style.month, others.className)}>\n <View row className={style.header}>\n {onPrevious && (\n <Pressable onPress={onPrevious}>\n <Icon name=\"Left\" />\n </Pressable>\n )}\n <Text subheadline className={style.title}>\n {getHeader(instance, locale)}\n </Text>\n {onNext && (\n <Pressable onPress={onNext} className={style.pressable}>\n <Icon name=\"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 to,\n range,\n selected,\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 disabledWeekends: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.instanceOf(Date),\n locale: PropTypes.string,\n range: PropTypes.bool,\n to: PropTypes.instanceOf(Date),\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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"}
@@ -27,7 +27,8 @@ var _Calendar2 = require("./Calendar.Weekdays");
27
27
 
28
28
  var _helpers2 = require("./helpers");
29
29
 
30
- var _excluded = ["disabledPast", "format", "from", "months", "locale", "range", "rangeMaxDays", "to", "value", "onChange", "onFocus", "onScroll"];
30
+ var _excluded = ["disabledPast", "format", "from", "locale", "range", "rangeMaxDays", "to", "value", "onChange", "onFocus", "onScroll"],
31
+ _excluded2 = ["className", "months"];
31
32
 
32
33
  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); }
33
34
 
@@ -65,8 +66,6 @@ var Calendar = function Calendar(_ref) {
65
66
  _ref$format = _ref.format,
66
67
  format = _ref$format === void 0 ? 'YYYY/MM/DD' : _ref$format,
67
68
  from = _ref.from,
68
- _ref$months = _ref.months,
69
- months = _ref$months === void 0 ? 2 : _ref$months,
70
69
  locale = _ref.locale,
71
70
  _ref$range = _ref.range,
72
71
  range = _ref$range === void 0 ? false : _ref$range,
@@ -133,32 +132,38 @@ var Calendar = function Calendar(_ref) {
133
132
  setInstance((0, _helpers2.getFirstDateOfMonth)(new Date(instance.getFullYear(), instance.getMonth() + month)));
134
133
  };
135
134
 
135
+ var className = others.className,
136
+ _others$months = others.months,
137
+ months = _others$months === void 0 ? 2 : _others$months,
138
+ props = _objectWithoutProperties(others, _excluded2);
139
+
140
+ var today = (0, _helpers2.getToday)();
136
141
  var instanceTS = instance.getTime();
137
- var todayMonthTS = (0, _helpers2.getFirstDateOfMonth)((0, _helpers2.getToday)()).getTime();
142
+ var todayMonthTS = (0, _helpers2.getFirstDateOfMonth)(today).getTime();
138
143
  var disabledPrevious = disabledPast && instanceTS <= todayMonthTS || from && instanceTS <= (0, _helpers2.getFirstDateOfMonth)((0, _locale.parseDate)(from, format)).getTime();
139
- var disabledNext = to && instanceTS >= (0, _helpers2.getFirstDateOfMonth)((0, _locale.parseDate)(to, format)).getTime();
140
-
141
- var props = _objectSpread(_objectSpread({}, others), {}, {
144
+ var disabledNext = to && (0, _locale.parseDate)(to, format).getTime() <= (0, _helpers2.getFirstDateOfMonth)((0, _locale.dateCalc)(instance, months, 'months')).getTime();
145
+ props = _objectSpread(_objectSpread({}, props), {}, {
142
146
  disabledPast: disabledPast,
143
147
  focus: focus,
144
148
  format: format,
145
149
  from: from ? (0, _locale.parseDate)(from, format) : undefined,
146
150
  locale: locale,
147
151
  range: range,
148
- to: range && rangeMaxDays && selected[0] ? (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') : to ? (0, _locale.parseDate)(to, format) : undefined,
152
+ 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,
149
153
  selected: selected,
150
154
  onChange: handleChange,
151
155
  onFocus: isDesktop ? setFocus : undefined
152
156
  });
153
-
157
+ if (!isDesktop && to) months = (0, _locale.dateDiff)(today, (0, _locale.parseDate)(to, format)).months;
154
158
  return /*#__PURE__*/_react.default.createElement(_primitives.View, {
155
- "data-testid": others['data-testid']
159
+ "data-testid": others['data-testid'],
160
+ className: (0, _helpers.styles)(_CalendarModule.default.container, className)
156
161
  }, !isDesktop && /*#__PURE__*/_react.default.createElement(_Calendar2.Weekdays, {
157
162
  locale: locale
158
163
  }), /*#__PURE__*/_react.default.createElement(_primitives.ScrollView, {
159
- onScroll: onScroll,
160
164
  horizontal: isDesktop,
161
- className: (0, _helpers.styles)(_CalendarModule.default.scrollview, others.className)
165
+ className: _CalendarModule.default.scrollview,
166
+ onScroll: onScroll
162
167
  }, Array.from({
163
168
  length: months
164
169
  }, function (empty, index) {
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","names":["Calendar","disabledPast","format","from","months","locale","range","rangeMaxDays","to","value","onChange","onFocus","onScroll","others","isDesktop","focus","setFocus","instance","setInstance","undefined","selected","setSelected","date","length","handleChange","next","getTime","handleMonth","month","Date","getFullYear","getMonth","instanceTS","todayMonthTS","disabledPrevious","disabledNext","props","style","scrollview","className","Array","empty","index","displayName","propTypes","captions","PropTypes","shape","disabledDates","arrayOf","string","bool","disabledWeekends","highlights","number","rangeMinDays","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.jsx"],"sourcesContent":["import { dateCalc, 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, getToday } from './helpers';\n\nexport const Calendar = ({\n disabledPast = true,\n format = 'YYYY/MM/DD',\n from,\n months = 2,\n locale,\n range = false,\n rangeMaxDays,\n to,\n value,\n onChange = () => {},\n onFocus = () => {},\n onScroll,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [selected, setSelected] = useState(range ? [] : undefined);\n\n useEffect(() => {\n let date = range ? (value ? value[0] : undefined) : value;\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && selected.length === 0) || !range) setInstance(getFirstDateOfMonth(date));\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, 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(getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + month)));\n };\n\n const instanceTS = instance.getTime();\n const todayMonthTS = getFirstDateOfMonth(getToday()).getTime();\n const disabledPrevious =\n (disabledPast && instanceTS <= todayMonthTS) ||\n (from && instanceTS <= getFirstDateOfMonth(parseDate(from, format)).getTime());\n\n const disabledNext = to && instanceTS >= getFirstDateOfMonth(parseDate(to, format)).getTime();\n\n const props = {\n ...others,\n disabledPast,\n focus,\n format,\n from: from ? parseDate(from, format) : undefined,\n locale,\n range,\n to:\n range && rangeMaxDays && selected[0]\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 return (\n <View data-testid={others['data-testid']}>\n {!isDesktop && <Weekdays locale={locale} />}\n <ScrollView onScroll={onScroll} horizontal={isDesktop} className={styles(style.scrollview, others.className)}>\n {Array.from({ length: months }, (empty, index) => (\n <Month\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)}\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 disabledWeekends: 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 value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n onFocus: 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","onScroll","others","isDesktop","focus","setFocus","instance","setInstance","undefined","selected","setSelected","date","length","handleChange","next","getTime","handleMonth","month","Date","getFullYear","getMonth","className","months","props","today","instanceTS","todayMonthTS","disabledPrevious","disabledNext","style","container","scrollview","Array","empty","index","displayName","propTypes","captions","PropTypes","shape","disabledDates","arrayOf","string","bool","disabledWeekends","highlights","number","rangeMinDays","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, 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 onScroll,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [selected, setSelected] = useState(range ? [] : undefined);\n\n useEffect(() => {\n let date = range ? (value ? value[0] : undefined) : value;\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && selected.length === 0) || !range) setInstance(getFirstDateOfMonth(date));\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, 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(getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + month)));\n };\n\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 (!isDesktop && to) months = dateDiff(today, parseDate(to, format)).months;\n\n return (\n <View data-testid={others['data-testid']} className={styles(style.container, className)}>\n {!isDesktop && <Weekdays locale={locale} />}\n <ScrollView horizontal={isDesktop} className={style.scrollview} onScroll={onScroll}>\n {Array.from({ length: months }, (empty, index) => (\n <Month\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)}\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 disabledWeekends: 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 value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onScroll: PropTypes.func,\n};\n"],"mappings":"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"}
@@ -9,10 +9,6 @@
9
9
  --mirai-ui-calendar-week-margin: 2px;
10
10
  }
11
11
 
12
- .scrollview {
13
- max-height: calc(var(--mirai-ui-calendar-cell) * 13.2);
14
- }
15
-
16
12
  .month {
17
13
  justify-content: flex-start;
18
14
  padding: var(--mirai-ui-calendar-padding);
@@ -23,6 +19,11 @@
23
19
  padding: var(--mirai-ui-calendar-padding);
24
20
  }
25
21
 
22
+ .scrollview {
23
+ height: 100%;
24
+ width: 100%;
25
+ }
26
+
26
27
  .title {
27
28
  flex: 1;
28
29
  text-align: center;
@@ -94,8 +95,8 @@
94
95
  }
95
96
 
96
97
  @media only screen and (max-width: 600px) {
97
- .scrollview {
98
- width: 100vw;
98
+ .container {
99
+ max-height: calc(var(--mirai-ui-calendar-cell) * 15);
99
100
  }
100
101
 
101
102
  .month {