@mirai/ui 1.0.20 → 1.0.23

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.
Files changed (33) hide show
  1. package/build/components/Button/Button.module.css +17 -24
  2. package/build/components/Button/__tests__/__snapshots__/Button.test.js.snap +2 -22
  3. package/build/components/Calendar/Calendar.Month.js +1 -1
  4. package/build/components/Calendar/Calendar.Month.js.map +1 -1
  5. package/build/components/Calendar/Calendar.Week.js +4 -7
  6. package/build/components/Calendar/Calendar.Week.js.map +1 -1
  7. package/build/components/Calendar/Calendar.Weekdays.js +1 -2
  8. package/build/components/Calendar/Calendar.Weekdays.js.map +1 -1
  9. package/build/components/Calendar/Calendar.js +6 -3
  10. package/build/components/Calendar/Calendar.js.map +1 -1
  11. package/build/components/Calendar/Calendar.module.css +19 -19
  12. package/build/components/Calendar/__tests__/__snapshots__/Calendar.test.jsx.snap +341 -463
  13. package/build/components/InputNumber/InputNumber.js +3 -1
  14. package/build/components/InputNumber/InputNumber.js.map +1 -1
  15. package/build/components/InputNumber/InputNumber.module.css +2 -2
  16. package/build/components/InputNumber/__tests__/__snapshots__/InputNumber.test.js.snap +29 -29
  17. package/build/components/InputOption/InputOption.module.css +1 -1
  18. package/build/components/InputText/InputText.module.css +4 -4
  19. package/build/components/Notification/Notification.js +3 -3
  20. package/build/components/Notification/Notification.js.map +1 -1
  21. package/build/components/Notification/Notification.module.css +30 -22
  22. package/build/components/Notification/__tests__/__snapshots__/Notification.test.js.snap +12 -12
  23. package/build/components/Table/Table.module.css +4 -4
  24. package/build/primitives/Checkbox/Checkbox.module.css +2 -2
  25. package/build/primitives/Input/Input.module.css +1 -1
  26. package/build/primitives/Radio/Radio.module.css +2 -2
  27. package/build/primitives/Switch/Switch.module.css +2 -2
  28. package/build/primitives/Text/Text.js +6 -4
  29. package/build/primitives/Text/Text.js.map +1 -1
  30. package/build/primitives/Text/Text.module.css +8 -0
  31. package/build/primitives/Text/__tests__/__snapshots__/Text.test.js.snap +10 -0
  32. package/build/theme/default.theme.css +39 -22
  33. package/package.json +1 -1
@@ -3,12 +3,15 @@
3
3
  --mirai-ui-button-color: var(--mirai-ui-base);
4
4
  --mirai-ui-button-color-active: rgba(255, 255, 255, 0.2);
5
5
  --mirai-ui-button-color-focus: var(--mirai-ui-content);
6
- --mirai-ui-button-disabled-background: var(--mirai-ui-content-300);
7
- --mirai-ui-button-disabled-color: var(--mirai-ui-content-400);
6
+ --mirai-ui-button-disabled-background: var(--mirai-ui-content-border);
7
+ --mirai-ui-button-disabled-color: var(--mirai-ui-content-light);
8
+ --mirai-ui-button-font: var(--mirai-ui-font);
9
+ --mirai-ui-button-font-weight: var(--mirai-ui-font-weight);
8
10
  --mirai-ui-button-outlined-background: var(--mirai-ui-base);
9
- --mirai-ui-button-padding-x: var(--mirai-ui-space-S);
10
- --mirai-ui-button-padding-y: var(--mirai-ui-space-L);
11
+ --mirai-ui-button-padding-y: var(--mirai-ui-space-S);
12
+ --mirai-ui-button-padding-x: var(--mirai-ui-space-L);
11
13
  --mirai-ui-button-radius: var(--mirai-ui-border-radius);
14
+ --mirai-ui-button-squared: calc(var(--mirai-ui-space-M) * 2);
12
15
  }
13
16
 
14
17
  .button {
@@ -17,11 +20,11 @@
17
20
  border-radius: var(--mirai-ui-button-radius);
18
21
  color: var(--mirai-ui-button-color);
19
22
  display: flex;
20
- font-family: var(--mirai-ui-font);
23
+ font-family: var(--mirai-ui-button-font);
21
24
  font-size: var(--mirai-ui-font-size-action);
22
- font-weight: var(--mirai-ui-font-bold-weight);
25
+ font-weight: var(--mirai-ui-button-font-weight);
23
26
  justify-content: center;
24
- padding: var(--mirai-ui-button-padding-x) var(--mirai-ui-button-padding-y);
27
+ padding: var(--mirai-ui-button-padding-y) var(--mirai-ui-button-padding-x);
25
28
  transition: background-color var(--mirai-ui-motion-expand) var(--mirai-ui-motion-easing),
26
29
  box-shadow var(--mirai-ui-motion-expand) var(--mirai-ui-motion-easing),
27
30
  color var(--mirai-ui-motion-expand) var(--mirai-ui-motion-easing);
@@ -34,8 +37,8 @@
34
37
  }
35
38
 
36
39
  .outlined {
37
- border: solid 1px var(--mirai-ui-button-background);
38
40
  background-color: var(--mirai-ui-button-outlined-background);
41
+ border: solid 1px var(--mirai-ui-button-background);
39
42
  color: var(--mirai-ui-button-background);
40
43
  }
41
44
 
@@ -45,11 +48,13 @@
45
48
 
46
49
  .large:not(.squared) {
47
50
  font-size: var(--mirai-ui-font-size-headline);
51
+ padding: var(--mirai-ui-button-padding-y)
52
+ calc(var(--mirai-ui-button-padding-x) + calc(var(--mirai-ui-button-padding-y) / 2));
48
53
  }
49
54
 
50
55
  .small:not(.squared) {
51
56
  font-size: var(--mirai-ui-font-size-small);
52
- padding: calc(var(--mirai-ui-button-padding-x) / 2) calc(var(--mirai-ui-button-padding-y) / 2);
57
+ padding: var(--mirai-ui-button-padding-y) calc(var(--mirai-ui-button-padding-x) / 2);
53
58
  }
54
59
 
55
60
  .rounded {
@@ -57,22 +62,10 @@
57
62
  }
58
63
 
59
64
  .squared {
65
+ height: var(--mirai-ui-button-squared);
60
66
  padding: 0;
61
- height: var(--mirai-ui-space-XL);
62
- min-width: var(--mirai-ui-space-XL);
63
- width: var(--mirai-ui-space-XL);
64
- }
65
-
66
- .squared.small {
67
- height: var(--mirai-ui-space-L);
68
- min-width: var(--mirai-ui-space-L);
69
- width: var(--mirai-ui-space-L);
70
- }
71
-
72
- .squared.large {
73
- height: var(--mirai-ui-space-XXL);
74
- min-width: var(--mirai-ui-space-XXL);
75
- width: var(--mirai-ui-space-XXL);
67
+ min-width: var(--mirai-ui-button-squared);
68
+ width: var(--mirai-ui-button-squared);
76
69
  }
77
70
 
78
71
  @media only screen and (max-width: 600px) {
@@ -1,15 +1,5 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[` 1`] = `
4
- <DocumentFragment>
5
- <button
6
- class="pressable button squared"
7
- >
8
- children
9
- </button>
10
- </DocumentFragment>
11
- `;
12
-
13
3
  exports[`component:<Button> inherit:className 1`] = `
14
4
  <DocumentFragment>
15
5
  <button
@@ -61,20 +51,10 @@ exports[`component:<Button> prop:small 1`] = `
61
51
  </DocumentFragment>
62
52
  `;
63
53
 
64
- exports[`component:<Button> prop:squared & large 1`] = `
54
+ exports[`component:<Button> prop:squared 1`] = `
65
55
  <DocumentFragment>
66
56
  <button
67
- class="pressable button large squared"
68
- >
69
- children
70
- </button>
71
- </DocumentFragment>
72
- `;
73
-
74
- exports[`component:<Button> prop:squared & small 1`] = `
75
- <DocumentFragment>
76
- <button
77
- class="pressable button small squared"
57
+ class="pressable button squared"
78
58
  >
79
59
  children
80
60
  </button>
@@ -76,7 +76,7 @@ var Month = function Month(_ref) {
76
76
  name: "Left"
77
77
  })), /*#__PURE__*/_react.default.createElement(_primitives.Text, {
78
78
  bold: true,
79
- upperCase: true,
79
+ subheadline: true,
80
80
  className: _CalendarModule.default.title
81
81
  }, (0, _helpers2.getHeader)(instance, locale)), onNext && /*#__PURE__*/_react.default.createElement(_primitives.Pressable, {
82
82
  onPress: onNext
@@ -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 upperCase 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":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;AAEO,IAAMA,KAAK,GAAG,SAARA,KAAQ,OAef;EAAA,IAdJC,KAcI,QAdJA,KAcI;EAAA,IAbJC,QAaI,QAbJA,QAaI;EAAA,IAZJC,QAYI,QAZJA,QAYI;EAAA,6BAXJC,YAWI;EAAA,IAXJA,YAWI,kCAXW,IAWX;EAAA,IAVJC,MAUI,QAVJA,MAUI;EAAA,IATJC,IASI,QATJA,IASI;EAAA,IARJC,MAQI,QARJA,MAQI;EAAA,sBAPJC,KAOI;EAAA,IAPJA,KAOI,2BAPI,KAOJ;EAAA,IANJC,EAMI,QANJA,EAMI;EAAA,yBALJC,QAKI;EAAA,IALJA,QAKI,8BALO,YAAM,CAAE,CAKf;EAAA,wBAJJC,OAII;EAAA,IAJJA,OAII,6BAJM,YAAM,CAAE,CAId;EAAA,IAHJC,MAGI,QAHJA,MAGI;EAAA,IAFJC,UAEI,QAFJA,UAEI;EAAA,IADDC,MACC;;EACJ,iBAAsB,uBAAtB;EAAA,IAAQC,SAAR,cAAQA,SAAR;;EACA,IAAMC,UAAU,GAAG,6BAAcd,QAAd,CAAnB;EAEA,oBACE,6BAAC,gBAAD;IAAM,SAAS,EAAE,qBAAOe,wBAAMC,KAAb,EAAoBJ,MAAM,CAACK,SAA3B;EAAjB,gBACE,6BAAC,gBAAD;IAAM,GAAG,MAAT;IAAU,SAAS,EAAEF,wBAAMG;EAA3B,GACGP,UAAU,iBACT,6BAAC,qBAAD;IAAW,OAAO,EAAEA;EAApB,gBACE,6BAAC,gBAAD;IAAM,IAAI,EAAC;EAAX,EADF,CAFJ,eAME,6BAAC,gBAAD;IAAM,IAAI,MAAV;IAAW,SAAS,MAApB;IAAqB,SAAS,EAAEI,wBAAMI;EAAtC,GACG,yBAAUnB,QAAV,EAAoBK,MAApB,CADH,CANF,EASGK,MAAM,iBACL,6BAAC,qBAAD;IAAW,OAAO,EAAEA;EAApB,gBACE,6BAAC,gBAAD;IAAM,IAAI,EAAC;EAAX,EADF,CAVJ,CADF,EAiBGG,SAAS,iBAAI,6BAAC,mBAAD;IAAU,MAAM,EAAER;EAAlB,EAjBhB,EAmBGe,wBAAcC,GAAd,CAAkB,UAACC,IAAD;IAAA,oBACjB,6BAAC,eAAD,+CAEOV,MAFP;MAGIV,YAAY,EAAZA,YAHJ;MAIIH,KAAK,EAALA,KAJJ;MAKII,MAAM,EAANA,MALJ;MAMIC,IAAI,EAAJA,IANJ;MAOIC,MAAM,EAANA,MAPJ;MAQIE,EAAE,EAAFA,EARJ;MASID,KAAK,EAALA,KATJ;MAUIL,QAAQ,EAARA;IAVJ;MAYE,GAAG,EAAEqB,IAZP;MAaE,KAAK,EAAEtB,QAAQ,CAACuB,QAAT,EAbT;MAcE,MAAM,EAAET,UAAU,GAAGQ,IAdvB;MAeE,IAAI,EAAEtB,QAAQ,CAACwB,WAAT,EAfR;MAgBE,OAAO,EAAEf,OAhBX;MAiBE,OAAO,EAAED;IAjBX,GADiB;EAAA,CAAlB,CAnBH,CADF;AA2CD,CA9DM;;;AAgEPV,KAAK,CAAC2B,WAAN,GAAoB,0BAApB;AAEA3B,KAAK,CAAC4B,SAAN,GAAkB;EAChBC,QAAQ,EAAEC,mBAAUC,KAAV,CAAgB,EAAhB,CADM;EAEhB9B,KAAK,EAAE6B,mBAAUE,GAFD;EAGhB9B,QAAQ,EAAE4B,mBAAUE,GAHJ;EAIhB7B,QAAQ,EAAE2B,mBAAUE,GAJJ;EAKhBC,aAAa,EAAEH,mBAAUI,OAAV,CAAkBJ,mBAAUK,MAA5B,CALC;EAMhB/B,YAAY,EAAE0B,mBAAUM,IANR;EAOhBC,gBAAgB,EAAEP,mBAAUM,IAPZ;EAQhB/B,MAAM,EAAEyB,mBAAUK,MARF;EAShB7B,IAAI,EAAEwB,mBAAUQ,UAAV,CAAqBC,IAArB,CATU;EAUhBhC,MAAM,EAAEuB,mBAAUK,MAVF;EAWhB3B,KAAK,EAAEsB,mBAAUM,IAXD;EAYhB3B,EAAE,EAAEqB,mBAAUQ,UAAV,CAAqBC,IAArB,CAZY;EAahBC,KAAK,EAAEV,mBAAUW,SAAV,CAAoB,CAACX,mBAAUK,MAAX,EAAmBL,mBAAUI,OAAV,CAAkBJ,mBAAUK,MAA5B,CAAnB,CAApB,CAbS;EAchBzB,QAAQ,EAAEoB,mBAAUY,IAdJ;EAehB/B,OAAO,EAAEmB,mBAAUY,IAfH;EAgBhB9B,MAAM,EAAEkB,mBAAUY,IAhBF;EAiBhB7B,UAAU,EAAEiB,mBAAUY;AAjBN,CAAlB"}
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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"}
@@ -124,7 +124,7 @@ var Week = function Week(_ref) {
124
124
  };
125
125
  var textStyle = is.disabled ? _CalendarModule.default.textDisabled : is.selected || dateTS === rangeTS.end ? _CalendarModule.default.textSelected : is.highlight && !is.range ? _CalendarModule.default.textHighlight : undefined;
126
126
  return /*#__PURE__*/_react.default.createElement(_primitives.Pressable, {
127
- disabled: is.disabled || is.minRange || is.outOfRange || !is.visible,
127
+ disabled: is.disabled || !is.visible || range && !selected[1] && (is.minRange || is.outOfRange),
128
128
  key: day,
129
129
  tabIndex: is.visible && !is.disabled ? "".concat(date.getMonth(), "-").concat(date.getDate()) : undefined,
130
130
  "data-testid": "".concat(others['data-testid'] || 'calendar', "-").concat(number, "-").concat(day),
@@ -143,13 +143,10 @@ var Week = function Week(_ref) {
143
143
  }, /*#__PURE__*/_react.default.createElement(_primitives.Text, {
144
144
  bold: is.today || is.highlight || is.selected && !is.range,
145
145
  className: textStyle
146
- }, (0, _locale.dateFormat)(date, {
147
- locale: locale,
148
- day: 'numeric'
149
- })), captions && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
146
+ }, date.getDate()), captions && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
150
147
  small: true,
151
- className: (0, _helpers.styles)(textStyle, _CalendarModule.default.caption, !captions[dateString] && !is.range && _CalendarModule.default.empty)
152
- }, captions[dateString] || '-' || '')));
148
+ className: (0, _helpers.styles)(textStyle, _CalendarModule.default.caption, !captions[dateString] && !is.rangeLimit && _CalendarModule.default.empty)
149
+ }, !is.disabled ? captions[dateString] || '-' : '')));
153
150
  }));
154
151
  };
155
152
 
@@ -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","year","onPress","onFocus","others","disabledDatesTS","map","date","getTime","firstDate","todayTS","fromTS","toTS","focusTS","rangeTS","start","end","undefined","min","filter","ts","sort","outbound","style","DAYS","day","Date","getFullYear","getMonth","getDate","dateTS","dateString","is","disabled","includes","highlight","outOfRange","minRange","rangeLimit","ranging","today","visible","textStyle","textDisabled","textSelected","textHighlight","cell","dayRange","daySelected","daySelectedStart","daySelectedEnd","dayTouchable","caption","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 from 'react';\n\nimport { styles } from '../../helpers';\nimport { Pressable, Text, View } from '../../primitives';\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 = true,\n focus,\n locale,\n format,\n from,\n highlights = [],\n month,\n number,\n range,\n rangeMinDays,\n selected,\n to,\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 = is.disabled\n ? style.textDisabled\n : is.selected || dateTS === rangeTS.end\n ? style.textSelected\n : is.highlight && !is.range\n ? style.textHighlight\n : undefined;\n\n return (\n <Pressable\n disabled={is.disabled || is.minRange || is.outOfRange || !is.visible}\n key={day}\n tabIndex={is.visible && !is.disabled ? `${date.getMonth()}-${date.getDate()}` : undefined}\n data-testid={`${others['data-testid'] || 'calendar'}-${number}-${day}`}\n className={style.cell}\n onEnter={is.ranging ? () => onFocus(date) : undefined}\n onLeave={is.ranging ? () => onFocus() : undefined}\n onPress={() => onPress(date)}\n >\n {is.visible && (\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 {dateFormat(date, { locale, day: 'numeric' })}\n </Text>\n\n {captions && (\n <Text\n small\n className={styles(textStyle, style.caption, !captions[dateString] && !is.range && style.empty)}\n >\n {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 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":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAmBd;EAAA,IAlBJC,QAkBI,QAlBJA,QAkBI;EAAA,8BAjBJC,aAiBI;EAAA,IAjBJA,aAiBI,mCAjBY,EAiBZ;EAAA,6BAhBJC,YAgBI;EAAA,IAhBJA,YAgBI,kCAhBW,IAgBX;EAAA,IAfJC,KAeI,QAfJA,KAeI;EAAA,IAdJC,MAcI,QAdJA,MAcI;EAAA,IAbJC,MAaI,QAbJA,MAaI;EAAA,IAZJC,IAYI,QAZJA,IAYI;EAAA,2BAXJC,UAWI;EAAA,IAXJA,UAWI,gCAXS,EAWT;EAAA,IAVJC,KAUI,QAVJA,KAUI;EAAA,IATJC,MASI,QATJA,MASI;EAAA,IARJC,KAQI,QARJA,KAQI;EAAA,IAPJC,YAOI,QAPJA,YAOI;EAAA,IANJC,QAMI,QANJA,QAMI;EAAA,IALJC,EAKI,QALJA,EAKI;EAAA,IAJJC,IAII,QAJJA,IAII;EAAA,wBAHJC,OAGI;EAAA,IAHJA,QAGI,6BAHM,YAAM,CAAE,CAGd;EAAA,wBAFJC,OAEI;EAAA,IAFJA,OAEI,6BAFM,YAAM,CAAE,CAEd;EAAA,IADDC,MACC;;EACJ,IAAMC,eAAe,GAAGjB,aAAa,CAACkB,GAAd,CAAkB,UAACC,IAAD;IAAA,OAAU,iBAAI,uBAAUA,IAAV,EAAgBf,MAAhB,CAAJ,EAA6BgB,OAA7B,EAAV;EAAA,CAAlB,CAAxB;EACA,IAAMC,SAAS,GAAG,kCAAmBb,MAAnB,EAA2BK,IAA3B,EAAiC,iCAAkBV,MAAlB,CAAjC,CAAlB;EACA,IAAMmB,OAAO,GAAG,0BAAWF,OAAX,EAAhB;EACA,IAAMG,MAAM,GAAGlB,IAAH,aAAGA,IAAH,uBAAGA,IAAI,CAAEe,OAAN,EAAf;EACA,IAAMI,IAAI,GAAGZ,EAAH,aAAGA,EAAH,uBAAGA,EAAE,CAAEQ,OAAJ,EAAb;EACA,IAAMK,OAAO,GAAGvB,KAAH,aAAGA,KAAH,uBAAGA,KAAK,CAAEkB,OAAP,EAAhB;EAEA,IAAIM,OAAO,GAAG,EAAd;;EACA,IAAIjB,KAAJ,EAAW;IACT,+BAAqBE,QAArB;IAAA,IAAOgB,KAAP;IAAA,IAAcC,GAAd;;IACAF,OAAO,GAAG;MACRC,KAAK,EAAEA,KAAK,GAAGA,KAAK,CAACP,OAAN,EAAH,GAAqBS,SADzB;MAERD,GAAG,EAAEA,GAAG,GAAGA,GAAG,CAACR,OAAJ,EAAH,GAAmBS,SAFnB;MAGRC,GAAG,EAAEH,KAAK,IAAIjB,YAAT,GAAwB,sBAASiB,KAAT,EAAgBjB,YAAhB,EAA8B,MAA9B,EAAsCU,OAAtC,EAAxB,GAA0ES;IAHvE,CAAV;;IAMA,4BAAmBZ,eAAe,CAACc,MAAhB,CAAuB,UAACC,EAAD;MAAA,OAAQA,EAAE,GAAGN,OAAO,CAACC,KAArB;IAAA,CAAvB,EAAmDM,IAAnD,EAAnB;IAAA;IAAA,IAAOC,QAAP;;IACAR,OAAO,CAACQ,QAAR,GAAmBA,QAAQ,GAAGA,QAAQ,GAAG,CAAd,GAAkBL,SAA7C;EACD;;EAED,oBACE,6BAAC,gBAAD;IAAM,GAAG,MAAT;IAAU,SAAS,EAAE,qBAAOH,OAAO,CAACC,KAAR,KAAkBE,SAAlB,IAA+BpB,KAA/B,IAAwC0B,wBAAM1B,KAArD;EAArB,GACG2B,eAAKlB,GAAL,CAAS,UAACmB,GAAD,EAAS;IACjB,IAAMlB,IAAI,GAAG,iBAAI,IAAImB,IAAJ,CAASjB,SAAS,CAACkB,WAAV,EAAT,EAAkClB,SAAS,CAACmB,QAAV,EAAlC,EAAwDnB,SAAS,CAACoB,OAAV,KAAsBJ,GAA9E,CAAJ,CAAb;IACA,IAAMK,MAAM,GAAGvB,IAAI,CAACC,OAAL,EAAf;IACA,IAAMuB,UAAU,GAAG,wBAAWxB,IAAX,EAAiB;MAAEf,MAAM,EAANA;IAAF,CAAjB,CAAnB;IAEA,IAAMwC,EAAE,GAAG;MACTC,QAAQ,EACL5C,YAAY,IAAIyC,MAAM,GAAGpB,OAA1B,IAAsC;MACtC,CAACH,IAAI,CAACqB,QAAL,EAAD,KAAqBjC,KADrB,IAC8B;MAC9BU,eAAe,CAAC6B,QAAhB,CAAyBJ,MAAzB,CAFA,IAEoC;MACpCA,MAAM,GAAGnB,MAHT,IAGmB;MACnBmB,MAAM,GAAGlB,IANF;MAMQ;MACjBuB,SAAS,EAAEzC,UAAU,CAACwC,QAAX,CAAoBH,UAApB,CAPF;MAQTK,UAAU,EAAEN,MAAM,GAAGhB,OAAO,CAACQ,QARpB;MASTe,QAAQ,EAAEP,MAAM,GAAGhB,OAAO,CAACC,KAAjB,IAA0Be,MAAM,GAAGhB,OAAO,CAACI,GAT5C;MAUTrB,KAAK,EAAEiC,MAAM,GAAGhB,OAAO,CAACC,KAAjB,KAA2Be,MAAM,GAAGhB,OAAO,CAACE,GAAjB,IAAwBc,MAAM,GAAGhB,OAAO,CAACI,GAAzC,IAAgDY,MAAM,GAAGjB,OAApF,CAVE;MAWTyB,UAAU,EAAER,MAAM,KAAKhB,OAAO,CAACC,KAAnB,IAA4Be,MAAM,KAAKhB,OAAO,CAACE,GAXlD;MAYTuB,OAAO,EAAE1C,KAAK,KAAIE,QAAJ,aAAIA,QAAJ,uBAAIA,QAAQ,CAAG,CAAH,CAAZ,CAAL,IAA0B,CAACA,QAAQ,CAAC,CAAD,CAZnC;MAaTA,QAAQ,EACNF,KAAK,IAAIE,QAAT,GACIA,QAAQ,CAAC,CAAD,CAAR,IAAe,CAACA,QAAQ,CAAC,CAAD,CAAxB,GACE+B,MAAM,KAAK/B,QAAQ,CAAC,CAAD,CAAR,CAAYS,OAAZ,EADb,GAEET,QAAQ,CAAC,CAAD,CAAR,IAAeA,QAAQ,CAAC,CAAD,CAAvB,GACA+B,MAAM,IAAI/B,QAAQ,CAAC,CAAD,CAAR,CAAYS,OAAZ,EAAV,IAAmCsB,MAAM,IAAI/B,QAAQ,CAAC,CAAD,CAAR,CAAYS,OAAZ,EAD7C,GAEAS,SALN,GAMIa,MAAM,MAAK/B,QAAL,aAAKA,QAAL,uBAAKA,QAAQ,CAAES,OAAV,EAAL,CApBH;MAqBTgC,KAAK,EAAEV,MAAM,KAAKpB,OArBT;MAsBT+B,OAAO,EAAElC,IAAI,CAACqB,QAAL,OAAoBjC;IAtBpB,CAAX;IAyBA,IAAM+C,SAAS,GAAGV,EAAE,CAACC,QAAH,GACdV,wBAAMoB,YADQ,GAEdX,EAAE,CAACjC,QAAH,IAAe+B,MAAM,KAAKhB,OAAO,CAACE,GAAlC,GACAO,wBAAMqB,YADN,GAEAZ,EAAE,CAACG,SAAH,IAAgB,CAACH,EAAE,CAACnC,KAApB,GACA0B,wBAAMsB,aADN,GAEA5B,SANJ;IAQA,oBACE,6BAAC,qBAAD;MACE,QAAQ,EAAEe,EAAE,CAACC,QAAH,IAAeD,EAAE,CAACK,QAAlB,IAA8BL,EAAE,CAACI,UAAjC,IAA+C,CAACJ,EAAE,CAACS,OAD/D;MAEE,GAAG,EAAEhB,GAFP;MAGE,QAAQ,EAAEO,EAAE,CAACS,OAAH,IAAc,CAACT,EAAE,CAACC,QAAlB,aAAgC1B,IAAI,CAACqB,QAAL,EAAhC,cAAmDrB,IAAI,CAACsB,OAAL,EAAnD,IAAsEZ,SAHlF;MAIE,yBAAgBb,MAAM,CAAC,aAAD,CAAN,IAAyB,UAAzC,cAAuDR,MAAvD,cAAiE6B,GAAjE,CAJF;MAKE,SAAS,EAAEF,wBAAMuB,IALnB;MAME,OAAO,EAAEd,EAAE,CAACO,OAAH,GAAa;QAAA,OAAMpC,OAAO,CAACI,IAAD,CAAb;MAAA,CAAb,GAAmCU,SAN9C;MAOE,OAAO,EAAEe,EAAE,CAACO,OAAH,GAAa;QAAA,OAAMpC,OAAO,EAAb;MAAA,CAAb,GAA+Bc,SAP1C;MAQE,OAAO,EAAE;QAAA,OAAMf,QAAO,CAACK,IAAD,CAAb;MAAA;IARX,GAUGyB,EAAE,CAACS,OAAH,iBACC,6BAAC,gBAAD;MACE,SAAS,EAAE,qBACTlB,wBAAME,GADG,EAETO,EAAE,CAACnC,KAAH,IAAY,CAACmC,EAAE,CAACC,QAAhB,IAA4B,CAACD,EAAE,CAACI,UAAhC,IAA8Cb,wBAAMwB,QAF3C,EAGT,CAACf,EAAE,CAACM,UAAH,IAAkB,CAACN,EAAE,CAACnC,KAAJ,IAAamC,EAAE,CAACjC,QAAnC,KAAiDwB,wBAAMyB,WAH9C,EAIThB,EAAE,CAACM,UAAH,IAAiBR,MAAM,KAAKhB,OAAO,CAACC,KAApC,IAA6CQ,wBAAM0B,gBAJ1C,EAKTjB,EAAE,CAACM,UAAH,IAAiBR,MAAM,KAAKhB,OAAO,CAACE,GAApC,IAA2CO,wBAAM2B,cALxC,EAMT,CAAClB,EAAE,CAACjC,QAAJ,IAAgB,CAACiC,EAAE,CAACC,QAApB,IAAgC,CAACD,EAAE,CAACK,QAApC,IAAgD,CAACL,EAAE,CAACI,UAApD,IAAkEb,wBAAM4B,YAN/D;IADb,gBAUE,6BAAC,gBAAD;MAAM,IAAI,EAAEnB,EAAE,CAACQ,KAAH,IAAYR,EAAE,CAACG,SAAf,IAA6BH,EAAE,CAACjC,QAAH,IAAe,CAACiC,EAAE,CAACnC,KAA5D;MAAoE,SAAS,EAAE6C;IAA/E,GACG,wBAAWnC,IAAX,EAAiB;MAAEhB,MAAM,EAANA,MAAF;MAAUkC,GAAG,EAAE;IAAf,CAAjB,CADH,CAVF,EAcGtC,QAAQ,iBACP,6BAAC,gBAAD;MACE,KAAK,MADP;MAEE,SAAS,EAAE,qBAAOuD,SAAP,EAAkBnB,wBAAM6B,OAAxB,EAAiC,CAACjE,QAAQ,CAAC4C,UAAD,CAAT,IAAyB,CAACC,EAAE,CAACnC,KAA7B,IAAsC0B,wBAAM8B,KAA7E;IAFb,GAIGlE,QAAQ,CAAC4C,UAAD,CAAR,IAAwB,GAAxB,IAA+B,GAJlC,CAfJ,CAXJ,CADF;EAsCD,CA5EA,CADH,CADF;AAiFD,CAzHM;;;AA2HP7C,IAAI,CAACoE,WAAL,GAAmB,yBAAnB;AAEApE,IAAI,CAACqE,SAAL,GAAiB;EACfpE,QAAQ,EAAEqE,mBAAUC,KAAV,CAAgB,EAAhB,CADK;EAEfrE,aAAa,EAAEoE,mBAAUE,OAAV,CAAkBF,mBAAUG,MAA5B,CAFA;EAGftE,YAAY,EAAEmE,mBAAUI,IAHT;EAIftE,KAAK,EAAEkE,mBAAUK,MAJF;EAKfnE,UAAU,EAAE8D,mBAAUE,OAAV,CAAkBF,mBAAUG,MAA5B,CALG;EAMfpE,MAAM,EAAEiE,mBAAUG,MANH;EAOfnE,MAAM,EAAEgE,mBAAUG,MAPH;EAQflE,IAAI,EAAE+D,mBAAUM,UAAV,CAAqBpC,IAArB,CARS;EASf1B,EAAE,EAAEwD,mBAAUM,UAAV,CAAqBpC,IAArB,CATW;EAUfzB,IAAI,EAAEuD,mBAAU5D,MAAV,CAAiBmE,UAVR;EAWfpE,KAAK,EAAE6D,mBAAU5D,MAAV,CAAiBmE,UAXT;EAYfnE,MAAM,EAAE4D,mBAAU5D,MAAV,CAAiBmE,UAZV;EAaflE,KAAK,EAAE2D,mBAAUI,IAbF;EAcf9D,YAAY,EAAE0D,mBAAU5D,MAdT;EAefG,QAAQ,EAAEyD,mBAAUQ,SAAV,CAAoB,CAACR,mBAAUK,MAAX,EAAmBL,mBAAUE,OAAV,CAAkBF,mBAAUK,MAA5B,CAAnB,CAApB,CAfK;EAgBf1D,OAAO,EAAEqD,mBAAUS,IAhBJ;EAiBf/D,OAAO,EAAEsD,mBAAUS;AAjBJ,CAAjB"}
1
+ {"version":3,"file":"Calendar.Week.js","names":["Week","captions","disabledDates","disabledPast","focus","locale","format","from","highlights","month","number","range","rangeMinDays","selected","to","year","onPress","onFocus","others","disabledDatesTS","map","date","getTime","firstDate","todayTS","fromTS","toTS","focusTS","rangeTS","start","end","undefined","min","filter","ts","sort","outbound","style","DAYS","day","Date","getFullYear","getMonth","getDate","dateTS","dateString","is","disabled","includes","highlight","outOfRange","minRange","rangeLimit","ranging","today","visible","textStyle","textDisabled","textSelected","textHighlight","cell","dayRange","daySelected","daySelectedStart","daySelectedEnd","dayTouchable","caption","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 from 'react';\n\nimport { styles } from '../../helpers';\nimport { Pressable, Text, View } from '../../primitives';\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 = true,\n focus,\n locale,\n format,\n from,\n highlights = [],\n month,\n number,\n range,\n rangeMinDays,\n selected,\n to,\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 = is.disabled\n ? style.textDisabled\n : is.selected || dateTS === rangeTS.end\n ? style.textSelected\n : is.highlight && !is.range\n ? style.textHighlight\n : undefined;\n\n return (\n <Pressable\n disabled={is.disabled || !is.visible || (range && !selected[1] && (is.minRange || is.outOfRange))}\n key={day}\n tabIndex={is.visible && !is.disabled ? `${date.getMonth()}-${date.getDate()}` : undefined}\n data-testid={`${others['data-testid'] || 'calendar'}-${number}-${day}`}\n className={style.cell}\n onEnter={is.ranging ? () => onFocus(date) : undefined}\n onLeave={is.ranging ? () => onFocus() : undefined}\n onPress={() => onPress(date)}\n >\n {is.visible && (\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(textStyle, style.caption, !captions[dateString] && !is.rangeLimit && style.empty)}\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 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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"}
@@ -29,9 +29,8 @@ var Weekdays = function Weekdays(_ref) {
29
29
  className: _CalendarModule.default.weekdays
30
30
  }, _Calendar.DAYS.map(function (day) {
31
31
  return /*#__PURE__*/_react.default.createElement(_primitives.Text, {
32
- small: true,
33
32
  key: day,
34
- upperCase: true,
33
+ small: true,
35
34
  className: (0, _helpers.styles)(_CalendarModule.default.cell, _CalendarModule.default.weekday)
36
35
  }, weekdays[day]);
37
36
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.Weekdays.js","names":["Weekdays","locale","weekdays","style","DAYS","map","day","cell","weekday","displayName","propTypes","PropTypes","string"],"sources":["../../../src/components/Calendar/Calendar.Weekdays.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { Text, View } from '../../primitives';\nimport { DAYS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { getWeekDays } from './helpers';\n\nexport const Weekdays = ({ locale }) => {\n const weekdays = getWeekDays(locale);\n\n return (\n <View row className={style.weekdays}>\n {DAYS.map((day) => (\n <Text small key={day} upperCase className={styles(style.cell, style.weekday)}>\n {weekdays[day]}\n </Text>\n ))}\n </View>\n );\n};\n\nWeekdays.displayName = 'Component:Calendar:Weekdays';\n\nWeekdays.propTypes = {\n locale: PropTypes.string,\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAAgB;EAAA,IAAbC,MAAa,QAAbA,MAAa;EACtC,IAAMC,QAAQ,GAAG,2BAAYD,MAAZ,CAAjB;EAEA,oBACE,6BAAC,gBAAD;IAAM,GAAG,MAAT;IAAU,SAAS,EAAEE,wBAAMD;EAA3B,GACGE,eAAKC,GAAL,CAAS,UAACC,GAAD;IAAA,oBACR,6BAAC,gBAAD;MAAM,KAAK,MAAX;MAAY,GAAG,EAAEA,GAAjB;MAAsB,SAAS,MAA/B;MAAgC,SAAS,EAAE,qBAAOH,wBAAMI,IAAb,EAAmBJ,wBAAMK,OAAzB;IAA3C,GACGN,QAAQ,CAACI,GAAD,CADX,CADQ;EAAA,CAAT,CADH,CADF;AASD,CAZM;;;AAcPN,QAAQ,CAACS,WAAT,GAAuB,6BAAvB;AAEAT,QAAQ,CAACU,SAAT,GAAqB;EACnBT,MAAM,EAAEU,mBAAUC;AADC,CAArB"}
1
+ {"version":3,"file":"Calendar.Weekdays.js","names":["Weekdays","locale","weekdays","style","DAYS","map","day","cell","weekday","displayName","propTypes","PropTypes","string"],"sources":["../../../src/components/Calendar/Calendar.Weekdays.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { Text, View } from '../../primitives';\nimport { DAYS } from './Calendar.constants';\nimport style from './Calendar.module.css';\nimport { getWeekDays } from './helpers';\n\nexport const Weekdays = ({ locale }) => {\n const weekdays = getWeekDays(locale);\n\n return (\n <View row className={style.weekdays}>\n {DAYS.map((day) => (\n <Text key={day} small className={styles(style.cell, style.weekday)}>\n {weekdays[day]}\n </Text>\n ))}\n </View>\n );\n};\n\nWeekdays.displayName = 'Component:Calendar:Weekdays';\n\nWeekdays.propTypes = {\n locale: PropTypes.string,\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAAgB;EAAA,IAAbC,MAAa,QAAbA,MAAa;EACtC,IAAMC,QAAQ,GAAG,2BAAYD,MAAZ,CAAjB;EAEA,oBACE,6BAAC,gBAAD;IAAM,GAAG,MAAT;IAAU,SAAS,EAAEE,wBAAMD;EAA3B,GACGE,eAAKC,GAAL,CAAS,UAACC,GAAD;IAAA,oBACR,6BAAC,gBAAD;MAAM,GAAG,EAAEA,GAAX;MAAgB,KAAK,MAArB;MAAsB,SAAS,EAAE,qBAAOH,wBAAMI,IAAb,EAAmBJ,wBAAMK,OAAzB;IAAjC,GACGN,QAAQ,CAACI,GAAD,CADX,CADQ;EAAA,CAAT,CADH,CADF;AASD,CAZM;;;AAcPN,QAAQ,CAACS,WAAT,GAAuB,6BAAvB;AAEAT,QAAQ,CAACU,SAAT,GAAqB;EACnBT,MAAM,EAAEU,mBAAUC;AADC,CAArB"}
@@ -27,7 +27,7 @@ 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"];
30
+ var _excluded = ["disabledPast", "format", "from", "months", "locale", "range", "rangeMaxDays", "to", "value", "onChange", "onFocus", "onScroll"];
31
31
 
32
32
  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
33
 
@@ -77,6 +77,7 @@ var Calendar = function Calendar(_ref) {
77
77
  onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
78
78
  _ref$onFocus = _ref.onFocus,
79
79
  onFocus = _ref$onFocus === void 0 ? function () {} : _ref$onFocus,
80
+ onScroll = _ref.onScroll,
80
81
  others = _objectWithoutProperties(_ref, _excluded);
81
82
 
82
83
  var _useDevice = (0, _hooks.useDevice)(),
@@ -144,7 +145,7 @@ var Calendar = function Calendar(_ref) {
144
145
  from: from ? (0, _locale.parseDate)(from, format) : undefined,
145
146
  locale: locale,
146
147
  range: range,
147
- to: to ? (0, _locale.parseDate)(to, format) : range && rangeMaxDays && selected[0] ? (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') : undefined,
148
+ to: range && rangeMaxDays && selected[0] ? (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') : to ? (0, _locale.parseDate)(to, format) : undefined,
148
149
  selected: selected,
149
150
  onChange: handleChange,
150
151
  onFocus: isDesktop ? setFocus : undefined
@@ -155,6 +156,7 @@ var Calendar = function Calendar(_ref) {
155
156
  }, !isDesktop && /*#__PURE__*/_react.default.createElement(_Calendar2.Weekdays, {
156
157
  locale: locale
157
158
  }), /*#__PURE__*/_react.default.createElement(_primitives.ScrollView, {
159
+ onScroll: onScroll,
158
160
  horizontal: isDesktop,
159
161
  className: (0, _helpers.styles)(_CalendarModule.default.scrollview, others.className)
160
162
  }, Array.from({
@@ -191,6 +193,7 @@ Calendar.propTypes = {
191
193
  to: _propTypes.default.string,
192
194
  value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
193
195
  onChange: _propTypes.default.func,
194
- onFocus: _propTypes.default.func
196
+ onFocus: _propTypes.default.func,
197
+ onScroll: _propTypes.default.func
195
198
  };
196
199
  //# sourceMappingURL=Calendar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","names":["Calendar","disabledPast","format","from","months","locale","range","rangeMaxDays","to","value","onChange","onFocus","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 ...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: to\n ? parseDate(to, format)\n : range && rangeMaxDays && selected[0]\n ? dateCalc(selected[0], rangeMaxDays, 'days')\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 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};\n"],"mappings":"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"}
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,30 +1,32 @@
1
1
  :root {
2
- --mirai-ui-calendar-cell: calc(var(--mirai-ui-space-XL) + var(--mirai-ui-space-S));
2
+ --mirai-ui-calendar-cell: var(--mirai-ui-space-XL);
3
3
  --mirai-ui-calendar-highlight-color: var(--mirai-ui-accent);
4
- --mirai-ui-calendar-week-margin: 2px;
5
- --mirai-ui-calendar-hover-background: var(--mirai-ui-accent-300);
4
+ --mirai-ui-calendar-padding: var(--mirai-ui-space-XS);
5
+ --mirai-ui-calendar-range-background: var(--mirai-ui-content-background);
6
6
  --mirai-ui-calendar-selected-background: var(--mirai-ui-accent);
7
7
  --mirai-ui-calendar-selected-color: var(--mirai-ui-base);
8
- --mirai-ui-calendar-weekday-color: var(--mirai-ui-content-400);
8
+ --mirai-ui-calendar-weekday-color: var(--mirai-ui-content-light);
9
+ --mirai-ui-calendar-week-margin: 2px;
9
10
  }
10
11
 
11
12
  .scrollview {
12
- max-height: calc(var(--mirai-ui-calendar-cell) * 13.5);
13
+ max-height: calc(var(--mirai-ui-calendar-cell) * 13.2);
13
14
  }
14
15
 
15
16
  .month {
16
- padding: calc(var(--mirai-ui-space-XS) / 2);
17
- width: calc(calc(var(--mirai-ui-calendar-cell) * 7) + var(--mirai-ui-space-XS));
18
17
  justify-content: flex-start;
18
+ padding: var(--mirai-ui-calendar-padding);
19
+ width: calc(var(--mirai-ui-calendar-cell) * 7);
19
20
  }
20
21
 
21
22
  .header {
22
- padding: var(--mirai-ui-space-S);
23
+ padding: var(--mirai-ui-calendar-padding);
23
24
  }
24
25
 
25
26
  .title {
26
27
  flex: 1;
27
28
  text-align: center;
29
+ text-transform: capitalize;
28
30
  }
29
31
 
30
32
  .cell {
@@ -36,11 +38,12 @@
36
38
  }
37
39
 
38
40
  .weekdays {
39
- padding: var(--mirai-ui-space-XS) 0;
41
+ padding: var(--mirai-ui-calendar-padding) 0;
40
42
  }
41
43
 
42
44
  .weekday {
43
45
  color: var(--mirai-ui-calendar-weekday-color);
46
+ text-transform: capitalize;
44
47
  }
45
48
 
46
49
  .day {
@@ -52,7 +55,7 @@
52
55
  }
53
56
 
54
57
  .dayRange:not(.daySelected) {
55
- background-color: var(--mirai-ui-calendar-hover-background);
58
+ background-color: var(--mirai-ui-calendar-range-background);
56
59
  }
57
60
 
58
61
  .daySelected {
@@ -66,7 +69,7 @@
66
69
  }
67
70
 
68
71
  .textDisabled {
69
- color: var(--mirai-ui-content-300);
72
+ color: var(--mirai-ui-content-border);
70
73
  }
71
74
 
72
75
  .textHighlight {
@@ -79,6 +82,7 @@
79
82
 
80
83
  .caption {
81
84
  height: var(--mirai-ui-font-size-small);
85
+ line-height: var(--mirai-ui-font-size-small);
82
86
  max-width: calc(var(--mirai-ui-calendar-cell) * 0.8);
83
87
  overflow: hidden;
84
88
  text-overflow: ellipsis;
@@ -86,7 +90,7 @@
86
90
  }
87
91
 
88
92
  .caption.empty {
89
- color: var(--mirai-ui-content-300);
93
+ color: var(--mirai-ui-content-border);
90
94
  }
91
95
 
92
96
  @media only screen and (max-width: 600px) {
@@ -104,24 +108,20 @@
104
108
  }
105
109
 
106
110
  .weekdays {
107
- border-bottom: solid 1px var(--mirai-ui-content-300);
111
+ border-bottom: solid 1px var(--mirai-ui-content-border);
108
112
  }
109
113
  }
110
114
 
111
115
  @media only screen and (min-width: 600px) {
112
116
  .dayTouchable:hover {
113
- background-color: var(--mirai-ui-calendar-hover-background);
114
- }
115
-
116
- .range .day:not(.daySelected):not(.dayRange):hover {
117
117
  background-color: var(--mirai-ui-calendar-selected-background);
118
118
  }
119
119
 
120
- .range .day:not(.daySelected):not(.dayRange):hover > * {
120
+ .dayTouchable:hover > * {
121
121
  color: var(--mirai-ui-calendar-selected-color);
122
122
  }
123
123
 
124
124
  .month:not(:first-child) {
125
- margin-left: calc(var(--mirai-ui-calendar-cell) / 2);
125
+ margin-left: calc(var(--mirai-ui-calendar-padding) * 2);
126
126
  }
127
127
  }