@jetbrains/ring-ui 5.1.22 → 5.1.24

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.
@@ -10,6 +10,7 @@ declare const units: {
10
10
  export default units;
11
11
  export declare const YEAR = 12;
12
12
  export declare const WEEK = 7;
13
+ export declare const FIFTH_DAY = 4;
13
14
  export declare const weekdays: {
14
15
  MO: number;
15
16
  TU: number;
@@ -26,6 +27,9 @@ export declare const DOUBLE = 2;
26
27
  export declare const HALF = 0.5;
27
28
  export declare const dateType: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
28
29
  export declare function parseTime(time: string): string | null;
30
+ export declare function shiftWeekArray<T>(arr: T[], startOfWeek: number): T[];
31
+ export declare function getWeekStartsOn(locale: Locale | undefined): number;
32
+ export declare function getDayNumInWeek(locale: Locale | undefined, day: number): number;
29
33
  export interface DateInputTranslations {
30
34
  addFirstDate?: string;
31
35
  addSecondDate?: string;
@@ -12,6 +12,7 @@ const units = {
12
12
  export default units;
13
13
  export const YEAR = 12;
14
14
  export const WEEK = 7;
15
+ export const FIFTH_DAY = 4;
15
16
  export const weekdays = {
16
17
  MO: 1,
17
18
  TU: 2,
@@ -42,3 +43,14 @@ export function parseTime(time) {
42
43
  }
43
44
  return result;
44
45
  }
46
+ export function shiftWeekArray(arr, startOfWeek) {
47
+ const shiftTimes = startOfWeek - 1;
48
+ return arr.slice(shiftTimes).concat(arr.slice(0, shiftTimes));
49
+ }
50
+ export function getWeekStartsOn(locale) {
51
+ return locale?.options?.weekStartsOn ?? weekdays.MO;
52
+ }
53
+ export function getDayNumInWeek(locale, day) {
54
+ const weekDays = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(locale));
55
+ return weekDays.indexOf(day);
56
+ }
@@ -334,7 +334,7 @@
334
334
  border-radius: var(--ring-border-radius);
335
335
  }
336
336
 
337
- .Monday {
337
+ .Day1 {
338
338
  position: relative;
339
339
 
340
340
  &::before,
@@ -401,13 +401,13 @@
401
401
  left: 0;
402
402
  }
403
403
 
404
- &.Monday {
404
+ &.Day1 {
405
405
  &::after {
406
406
  height: calc(unit * 5);
407
407
  }
408
408
  }
409
409
 
410
- & + .Tuesday {
410
+ & + .Day2 {
411
411
  position: relative;
412
412
 
413
413
  &::before {
@@ -425,9 +425,9 @@
425
425
  }
426
426
  }
427
427
 
428
- .Friday,
429
- .Saturday,
430
- .Sunday {
428
+ .Day5,
429
+ .Day6,
430
+ .Day7 {
431
431
  &::before,
432
432
  &::after {
433
433
  height: calc(unit * 5);
@@ -437,7 +437,7 @@
437
437
  .spread {
438
438
  &::before,
439
439
  &::after,
440
- & + .Tuesday::before {
440
+ & + .Day2::before {
441
441
  transition: none;
442
442
 
443
443
  background-color: var(--ring-selected-background-color);
@@ -447,7 +447,7 @@
447
447
  .activeSpread {
448
448
  &::before,
449
449
  &::after,
450
- & + .Tuesday::before {
450
+ & + .Day2::before {
451
451
  transition: none;
452
452
 
453
453
  background-color: var(--ring-date-picker-hover-color);
@@ -15,6 +15,7 @@ export default class Day extends Component<DayProps> {
15
15
  onSelect: PropTypes.Requireable<(...args: any[]) => any>;
16
16
  parseDateInput: PropTypes.Requireable<(...args: any[]) => any>;
17
17
  onHover: PropTypes.Requireable<(...args: any[]) => any>;
18
+ locale: PropTypes.Requireable<object>;
18
19
  minDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
19
20
  maxDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
20
21
  };
@@ -10,7 +10,7 @@ import isBefore from 'date-fns/isBefore';
10
10
  import isSameDay from 'date-fns/isSameDay';
11
11
  import isToday from 'date-fns/isToday';
12
12
  import startOfDay from 'date-fns/startOfDay';
13
- import { dateType, weekdays } from './consts';
13
+ import { dateType, weekdays, getDayNumInWeek } from './consts';
14
14
  import styles from './date-picker.css';
15
15
  let hoverTO;
16
16
  export default class Day extends Component {
@@ -23,6 +23,7 @@ export default class Day extends Component {
23
23
  onSelect: PropTypes.func,
24
24
  parseDateInput: PropTypes.func,
25
25
  onHover: PropTypes.func,
26
+ locale: PropTypes.object,
26
27
  minDate: dateType,
27
28
  maxDate: dateType
28
29
  };
@@ -55,8 +56,9 @@ export default class Day extends Component {
55
56
  return this.props.parseDateInput(text);
56
57
  }
57
58
  render() {
58
- const { day, from, currentRange, activeRange, empty } = this.props;
59
+ const { day, from, currentRange, activeRange, empty, locale } = this.props;
59
60
  const reverse = activeRange && activeRange[1] === from;
61
+ const dayInWeek = getDayNumInWeek(locale, getDay(day)) + 1;
60
62
  function makeSpreadRange(range) {
61
63
  return range && [range[0], addDays(range[1], 1)];
62
64
  }
@@ -65,7 +67,7 @@ export default class Day extends Component {
65
67
  const activeSpreadRange = makeSpreadRange(activeRange);
66
68
  return (
67
69
  // TODO make keyboard navigation actually work
68
- <button type="button" className={classNames(styles.day, styles[format(day, 'EEEE')], {
70
+ <button type="button" className={classNames(styles.day, styles[`Day${dayInWeek}`], {
69
71
  [styles.current]: ['date', 'from', 'to'].some(this.is),
70
72
  [styles.active]: !disabled && this.is('activeDate'),
71
73
  [styles.weekend]: [weekdays.SA, weekdays.SU].includes(getDay(day)),
@@ -7,7 +7,7 @@ declare namespace MonthNames {
7
7
  scrollDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
8
8
  onScrollChange: PropTypes.Requireable<(...args: any[]) => any>;
9
9
  currentRange: PropTypes.Requireable<(NonNullable<string | number | Date | null | undefined> | null | undefined)[]>;
10
- locale: PropTypes.Requireable<string>;
10
+ locale: PropTypes.Requireable<object>;
11
11
  };
12
12
  }
13
13
  export default MonthNames;
@@ -15,7 +15,7 @@ class MonthName extends PureComponent {
15
15
  static propTypes = {
16
16
  month: dateType,
17
17
  onScrollChange: PropTypes.func,
18
- locale: PropTypes.string
18
+ locale: PropTypes.object
19
19
  };
20
20
  handleClick = () => {
21
21
  const end = endOfMonth(this.props.month);
@@ -58,5 +58,5 @@ MonthNames.propTypes = {
58
58
  scrollDate: dateType,
59
59
  onScrollChange: PropTypes.func,
60
60
  currentRange: PropTypes.arrayOf(dateType),
61
- locale: PropTypes.string
61
+ locale: PropTypes.object
62
62
  };
@@ -8,7 +8,7 @@ declare function Month(props: MonthProps): React.JSX.Element;
8
8
  declare namespace Month {
9
9
  var propTypes: {
10
10
  month: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
11
- locale: PropTypes.Requireable<string>;
11
+ locale: PropTypes.Requireable<object>;
12
12
  };
13
13
  }
14
14
  export default Month;
@@ -6,7 +6,7 @@ import getDay from 'date-fns/getDay';
6
6
  import setDay from 'date-fns/setDay';
7
7
  import PropTypes from 'prop-types';
8
8
  import Day from './day';
9
- import { dateType, WEEK, weekdays } from './consts';
9
+ import { dateType, WEEK, weekdays, shiftWeekArray, getWeekStartsOn, FIFTH_DAY } from './consts';
10
10
  import styles from './date-picker.css';
11
11
  export default function Month(props) {
12
12
  const start = props.month;
@@ -14,7 +14,9 @@ export default function Month(props) {
14
14
  const { locale } = props;
15
15
  // pad with empty cells starting from last friday
16
16
  const weekday = getDay(start);
17
- let day = setDay(start, weekday >= weekdays.FR ? weekdays.FR : weekdays.FR - WEEK);
17
+ const weekDays = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale));
18
+ const fifthDayOfWeek = weekDays[FIFTH_DAY];
19
+ let day = setDay(start, weekday >= fifthDayOfWeek ? fifthDayOfWeek : fifthDayOfWeek - WEEK);
18
20
  const days = [];
19
21
  while (day < end) {
20
22
  days.push(day);
@@ -29,5 +31,5 @@ export default function Month(props) {
29
31
  }
30
32
  Month.propTypes = {
31
33
  month: dateType,
32
- locale: PropTypes.string
34
+ locale: PropTypes.object
33
35
  };
@@ -7,7 +7,7 @@ interface WeekdaysProps {
7
7
  declare function Weekdays(props: WeekdaysProps): React.JSX.Element;
8
8
  declare namespace Weekdays {
9
9
  var propTypes: {
10
- locale: PropTypes.Requireable<string>;
10
+ locale: PropTypes.Requireable<object>;
11
11
  };
12
12
  }
13
13
  export default Weekdays;
@@ -5,10 +5,10 @@ import format from 'date-fns/format';
5
5
  import setDay from 'date-fns/setDay';
6
6
  import startOfDay from 'date-fns/startOfDay';
7
7
  import PropTypes from 'prop-types';
8
- import { weekdays } from './consts';
8
+ import { getWeekStartsOn, shiftWeekArray, weekdays } from './consts';
9
9
  import styles from './date-picker.css';
10
10
  export default function Weekdays(props) {
11
- const days = Object.values(weekdays).
11
+ const days = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale)).
12
12
  map(value => startOfDay(setDay(new Date(), value)));
13
13
  const { locale } = props;
14
14
  return (<div className={styles.weekdays}>
@@ -20,5 +20,5 @@ export default function Weekdays(props) {
20
20
  </div>);
21
21
  }
22
22
  Weekdays.propTypes = {
23
- locale: PropTypes.string
23
+ locale: PropTypes.object
24
24
  };
@@ -70,12 +70,15 @@
70
70
  -webkit-line-clamp: 1;
71
71
  -webkit-box-orient: vertical;
72
72
 
73
- word-wrap: break-word;
73
+ word-break: break-all;
74
74
 
75
75
  border-radius: var(--ring-border-radius);
76
76
 
77
77
  .multiline & {
78
78
  -webkit-line-clamp: 3;
79
+
80
+ word-wrap: break-word;
81
+ word-break: normal;
79
82
  }
80
83
  }
81
84
 
@@ -347,6 +347,20 @@ function _regeneratorRuntime() {
347
347
  }
348
348
  }, e;
349
349
  }
350
+ function _toPrimitive(t, r) {
351
+ if ("object" != typeof t || !t) return t;
352
+ var e = t[Symbol.toPrimitive];
353
+ if (void 0 !== e) {
354
+ var i = e.call(t, r || "default");
355
+ if ("object" != typeof i) return i;
356
+ throw new TypeError("@@toPrimitive must return a primitive value.");
357
+ }
358
+ return ("string" === r ? String : Number)(t);
359
+ }
360
+ function _toPropertyKey(t) {
361
+ var i = _toPrimitive(t, "string");
362
+ return "symbol" == typeof i ? i : String(i);
363
+ }
350
364
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
351
365
  try {
352
366
  var info = gen[key](arg);
@@ -630,19 +644,5 @@ function _createForOfIteratorHelper(o, allowArrayLike) {
630
644
  }
631
645
  };
632
646
  }
633
- function _toPrimitive(input, hint) {
634
- if (typeof input !== "object" || input === null) return input;
635
- var prim = input[Symbol.toPrimitive];
636
- if (prim !== undefined) {
637
- var res = prim.call(input, hint || "default");
638
- if (typeof res !== "object") return res;
639
- throw new TypeError("@@toPrimitive must return a primitive value.");
640
- }
641
- return (hint === "string" ? String : Number)(input);
642
- }
643
- function _toPropertyKey(arg) {
644
- var key = _toPrimitive(arg, "string");
645
- return typeof key === "symbol" ? key : String(key);
646
- }
647
647
 
648
648
  export { _defineProperty as _, _inherits as a, _createSuper as b, _classCallCheck as c, _createClass as d, _objectWithoutProperties as e, _extends as f, _objectSpread2 as g, _asyncToGenerator as h, _regeneratorRuntime as i, _slicedToArray as j, _assertThisInitialized as k, _toConsumableArray as l, _createForOfIteratorHelper as m, _get as n, _getPrototypeOf as o, _toPropertyKey as p };
@@ -1,3 +1,3 @@
1
- var modules_0c7b7d96 = {"unit":"i__const_unit_0","footer-height":"64px","breakpoint-small":"640px","breakpoint-middle":"960px","breakpoint-large":"1200px","extra-small-screen-media":"(max-width: 639px)","small-screen-media":"(min-width: 640px) and (max-width: 959px)","middle-screen-media":"(min-width: 960px) and (max-width: 1199px)","large-screen-media":"(min-width: 1200px)","cellSize":"24px","calHeight":"288px","calWidth":"296px","yearHeight":"32px","yearWidth":"48px","light":"light_rui_2ac4","clearfix":"clearfix_rui_e0bd","font":"font_rui_e0bd","font-lower":"font-lower_rui_e0bd font_rui_e0bd","font-smaller":"font-smaller_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-smaller-lower":"font-smaller-lower_rui_e0bd font-smaller_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-larger-lower":"font-larger-lower_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-larger":"font-larger_rui_e0bd font-larger-lower_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","thin-font":"thin-font_rui_e0bd","monospace-font":"monospace-font_rui_e0bd","ellipsis":"ellipsis_rui_e0bd","resetButton":"resetButton_rui_e0bd","container":"container_rui_e0bd","hoverable":"hoverable_rui_e0bd","datePicker":"datePicker_rui_e0bd","inline":"inline_rui_e0bd","sizeS":"sizeS_rui_e0bd","sizeM":"sizeM_rui_e0bd","sizeL":"sizeL_rui_e0bd","sizeFULL":"sizeFULL_rui_e0bd","sizeAUTO":"sizeAUTO_rui_e0bd","displayDate":"displayDate_rui_e0bd","displayRange":"displayRange_rui_e0bd","clear":"clear_rui_e0bd","datePopup":"datePopup_rui_e0bd","filterWrapper":"filterWrapper_rui_e0bd filterWrapper_rui_531d","filter":"filter_rui_e0bd filter_rui_531d","calendarIcon":"calendarIcon_rui_e0bd","anchor":"anchor_rui_e0bd","anchorContent":"anchorContent_rui_e0bd","chevronDownIcon":"chevronDownIcon_rui_e0bd","fromInput":"fromInput_rui_e0bd","fromInputWithDivider":"fromInputWithDivider_rui_e0bd","toInput":"toInput_rui_e0bd","dateInput":"dateInput_rui_e0bd","timeInputWithDivider":"timeInputWithDivider_rui_e0bd","weekdays":"weekdays_rui_e0bd","weekday":"weekday_rui_e0bd","weekend":"weekend_rui_e0bd","calendar":"calendar_rui_e0bd","months":"months_rui_e0bd","days":"days_rui_e0bd","month":"month_rui_e0bd","monthTitle":"monthTitle_rui_e0bd","day":"day_rui_e0bd resetButton_rui_8bff","between":"between_rui_e0bd","activeBetween":"activeBetween_rui_e0bd","current":"current_rui_e0bd","active":"active_rui_e0bd","disabled":"disabled_rui_e0bd","from":"from_rui_e0bd","to":"to_rui_e0bd","Monday":"Monday_rui_e0bd","spread":"spread_rui_e0bd","activeSpread":"activeSpread_rui_e0bd","first":"first_rui_e0bd","Tuesday":"Tuesday_rui_e0bd","Friday":"Friday_rui_e0bd","Saturday":"Saturday_rui_e0bd","Sunday":"Sunday_rui_e0bd","empty":"empty_rui_e0bd","today":"today_rui_e0bd","year":"year_rui_e0bd hoverable_rui_e0bd resetButton_rui_8bff","monthNames":"monthNames_rui_e0bd","monthName":"monthName_rui_e0bd hoverable_rui_e0bd resetButton_rui_8bff","monthSlider":"monthSlider_rui_e0bd resetButton_rui_8bff","dragging":"dragging_rui_e0bd","range":"range_rui_e0bd","years":"years_rui_e0bd","currentYear":"currentYear_rui_e0bd"};
1
+ var modules_0c7b7d96 = {"unit":"i__const_unit_0","footer-height":"64px","breakpoint-small":"640px","breakpoint-middle":"960px","breakpoint-large":"1200px","extra-small-screen-media":"(max-width: 639px)","small-screen-media":"(min-width: 640px) and (max-width: 959px)","middle-screen-media":"(min-width: 960px) and (max-width: 1199px)","large-screen-media":"(min-width: 1200px)","cellSize":"24px","calHeight":"288px","calWidth":"296px","yearHeight":"32px","yearWidth":"48px","light":"light_rui_2ac4","clearfix":"clearfix_rui_e0bd","font":"font_rui_e0bd","font-lower":"font-lower_rui_e0bd font_rui_e0bd","font-smaller":"font-smaller_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-smaller-lower":"font-smaller-lower_rui_e0bd font-smaller_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-larger-lower":"font-larger-lower_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","font-larger":"font-larger_rui_e0bd font-larger-lower_rui_e0bd font-lower_rui_e0bd font_rui_e0bd","thin-font":"thin-font_rui_e0bd","monospace-font":"monospace-font_rui_e0bd","ellipsis":"ellipsis_rui_e0bd","resetButton":"resetButton_rui_e0bd","container":"container_rui_e0bd","hoverable":"hoverable_rui_e0bd","datePicker":"datePicker_rui_e0bd","inline":"inline_rui_e0bd","sizeS":"sizeS_rui_e0bd","sizeM":"sizeM_rui_e0bd","sizeL":"sizeL_rui_e0bd","sizeFULL":"sizeFULL_rui_e0bd","sizeAUTO":"sizeAUTO_rui_e0bd","displayDate":"displayDate_rui_e0bd","displayRange":"displayRange_rui_e0bd","clear":"clear_rui_e0bd","datePopup":"datePopup_rui_e0bd","filterWrapper":"filterWrapper_rui_e0bd filterWrapper_rui_531d","filter":"filter_rui_e0bd filter_rui_531d","calendarIcon":"calendarIcon_rui_e0bd","anchor":"anchor_rui_e0bd","anchorContent":"anchorContent_rui_e0bd","chevronDownIcon":"chevronDownIcon_rui_e0bd","fromInput":"fromInput_rui_e0bd","fromInputWithDivider":"fromInputWithDivider_rui_e0bd","toInput":"toInput_rui_e0bd","dateInput":"dateInput_rui_e0bd","timeInputWithDivider":"timeInputWithDivider_rui_e0bd","weekdays":"weekdays_rui_e0bd","weekday":"weekday_rui_e0bd","weekend":"weekend_rui_e0bd","calendar":"calendar_rui_e0bd","months":"months_rui_e0bd","days":"days_rui_e0bd","month":"month_rui_e0bd","monthTitle":"monthTitle_rui_e0bd","day":"day_rui_e0bd resetButton_rui_8bff","between":"between_rui_e0bd","activeBetween":"activeBetween_rui_e0bd","current":"current_rui_e0bd","active":"active_rui_e0bd","disabled":"disabled_rui_e0bd","from":"from_rui_e0bd","to":"to_rui_e0bd","Day1":"Day1_rui_e0bd","spread":"spread_rui_e0bd","activeSpread":"activeSpread_rui_e0bd","first":"first_rui_e0bd","Day2":"Day2_rui_e0bd","Day5":"Day5_rui_e0bd","Day6":"Day6_rui_e0bd","Day7":"Day7_rui_e0bd","empty":"empty_rui_e0bd","today":"today_rui_e0bd","year":"year_rui_e0bd hoverable_rui_e0bd resetButton_rui_8bff","monthNames":"monthNames_rui_e0bd","monthName":"monthName_rui_e0bd hoverable_rui_e0bd resetButton_rui_8bff","monthSlider":"monthSlider_rui_e0bd resetButton_rui_8bff","dragging":"dragging_rui_e0bd","range":"range_rui_e0bd","years":"years_rui_e0bd","currentYear":"currentYear_rui_e0bd"};
2
2
 
3
3
  export { modules_0c7b7d96 as m };
@@ -10,6 +10,7 @@ declare const units: {
10
10
  export default units;
11
11
  export declare const YEAR = 12;
12
12
  export declare const WEEK = 7;
13
+ export declare const FIFTH_DAY = 4;
13
14
  export declare const weekdays: {
14
15
  MO: number;
15
16
  TU: number;
@@ -26,6 +27,9 @@ export declare const DOUBLE = 2;
26
27
  export declare const HALF = 0.5;
27
28
  export declare const dateType: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
28
29
  export declare function parseTime(time: string): string | null;
30
+ export declare function shiftWeekArray<T>(arr: T[], startOfWeek: number): T[];
31
+ export declare function getWeekStartsOn(locale: Locale | undefined): number;
32
+ export declare function getDayNumInWeek(locale: Locale | undefined, day: number): number;
29
33
  export interface DateInputTranslations {
30
34
  addFirstDate?: string;
31
35
  addSecondDate?: string;
@@ -1,4 +1,8 @@
1
1
  import 'core-js/modules/es.regexp.exec.js';
2
+ import 'core-js/modules/es.array.concat.js';
3
+ import 'core-js/modules/es.array.slice.js';
4
+ import 'core-js/modules/es.object.values.js';
5
+ import 'core-js/modules/es.array.index-of.js';
2
6
  import PropTypes from 'prop-types';
3
7
  import add from 'date-fns/add';
4
8
 
@@ -13,6 +17,7 @@ var units = {
13
17
  };
14
18
  var YEAR = 12;
15
19
  var WEEK = 7;
20
+ var FIFTH_DAY = 4;
16
21
  var weekdays = {
17
22
  MO: 1,
18
23
  TU: 2,
@@ -42,5 +47,17 @@ function parseTime(time) {
42
47
  }
43
48
  return result;
44
49
  }
50
+ function shiftWeekArray(arr, startOfWeek) {
51
+ var shiftTimes = startOfWeek - 1;
52
+ return arr.slice(shiftTimes).concat(arr.slice(0, shiftTimes));
53
+ }
54
+ function getWeekStartsOn(locale) {
55
+ var _locale$options$weekS, _locale$options;
56
+ return (_locale$options$weekS = locale === null || locale === void 0 || (_locale$options = locale.options) === null || _locale$options === void 0 ? void 0 : _locale$options.weekStartsOn) !== null && _locale$options$weekS !== void 0 ? _locale$options$weekS : weekdays.MO;
57
+ }
58
+ function getDayNumInWeek(locale, day) {
59
+ var weekDays = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(locale));
60
+ return weekDays.indexOf(day);
61
+ }
45
62
 
46
- export { DOUBLE, HALF, MIDDLE_DAY, WEEK, YEAR, dateType, units as default, parseTime, weekdays, yearDuration, yearScrollSpeed };
63
+ export { DOUBLE, FIFTH_DAY, HALF, MIDDLE_DAY, WEEK, YEAR, dateType, units as default, getDayNumInWeek, getWeekStartsOn, parseTime, shiftWeekArray, weekdays, yearDuration, yearScrollSpeed };
@@ -39,6 +39,8 @@ import '../_helpers/control-label.js';
39
39
  import '../_helpers/input.js';
40
40
  import '../i18n/i18n.js';
41
41
  import 'core-js/modules/es.set.js';
42
+ import 'core-js/modules/es.array.slice.js';
43
+ import 'core-js/modules/es.array.index-of.js';
42
44
  import 'date-fns/add';
43
45
 
44
46
  var DateInput = /*#__PURE__*/function (_React$PureComponent) {
@@ -86,6 +86,7 @@ import 'date-fns/isBefore';
86
86
  import 'date-fns/startOfDay';
87
87
  import 'date-fns';
88
88
  import './date-input.js';
89
+ import 'core-js/modules/es.array.index-of.js';
89
90
  import 'date-fns/add';
90
91
  import './months.js';
91
92
  import 'date-fns/addMonths';
@@ -68,6 +68,8 @@ import 'core-js/modules/es.array.includes.js';
68
68
  import 'core-js/modules/es.string.includes.js';
69
69
  import 'date-fns/getDate';
70
70
  import 'date-fns/isToday';
71
+ import 'core-js/modules/es.array.slice.js';
72
+ import 'core-js/modules/es.array.index-of.js';
71
73
  import 'date-fns/add';
72
74
  import './month-names.js';
73
75
  import 'date-fns/isThisMonth';
@@ -15,6 +15,7 @@ export default class Day extends Component<DayProps> {
15
15
  onSelect: PropTypes.Requireable<(...args: any[]) => any>;
16
16
  parseDateInput: PropTypes.Requireable<(...args: any[]) => any>;
17
17
  onHover: PropTypes.Requireable<(...args: any[]) => any>;
18
+ locale: PropTypes.Requireable<object>;
18
19
  minDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
19
20
  maxDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
20
21
  };
@@ -15,9 +15,12 @@ import isBefore from 'date-fns/isBefore';
15
15
  import isSameDay from 'date-fns/isSameDay';
16
16
  import isToday from 'date-fns/isToday';
17
17
  import startOfDay from 'date-fns/startOfDay';
18
- import { dateType, weekdays } from './consts.js';
18
+ import { dateType, getDayNumInWeek, weekdays } from './consts.js';
19
19
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
20
20
  import 'core-js/modules/es.regexp.exec.js';
21
+ import 'core-js/modules/es.array.slice.js';
22
+ import 'core-js/modules/es.object.values.js';
23
+ import 'core-js/modules/es.array.index-of.js';
21
24
  import 'date-fns/add';
22
25
 
23
26
  var hoverTO;
@@ -74,8 +77,10 @@ var Day = /*#__PURE__*/function (_Component) {
74
77
  from = _this$props.from,
75
78
  currentRange = _this$props.currentRange,
76
79
  activeRange = _this$props.activeRange,
77
- empty = _this$props.empty;
80
+ empty = _this$props.empty,
81
+ locale = _this$props.locale;
78
82
  var reverse = activeRange && activeRange[1] === from;
83
+ var dayInWeek = getDayNumInWeek(locale, getDay(day)) + 1;
79
84
  function makeSpreadRange(range) {
80
85
  return range && [range[0], addDays(range[1], 1)];
81
86
  }
@@ -87,7 +92,7 @@ var Day = /*#__PURE__*/function (_Component) {
87
92
  // TODO make keyboard navigation actually work
88
93
  React.createElement("button", {
89
94
  type: "button",
90
- className: classNames(modules_0c7b7d96.day, modules_0c7b7d96[format(day, 'EEEE')], {
95
+ className: classNames(modules_0c7b7d96.day, modules_0c7b7d96["Day".concat(dayInWeek)], {
91
96
  [modules_0c7b7d96.current]: ['date', 'from', 'to'].some(this.is),
92
97
  [modules_0c7b7d96.active]: !disabled && this.is('activeDate'),
93
98
  [modules_0c7b7d96.weekend]: [weekdays.SA, weekdays.SU].includes(getDay(day)),
@@ -126,6 +131,7 @@ _defineProperty(Day, "propTypes", {
126
131
  onSelect: PropTypes.func,
127
132
  parseDateInput: PropTypes.func,
128
133
  onHover: PropTypes.func,
134
+ locale: PropTypes.object,
129
135
  minDate: dateType,
130
136
  maxDate: dateType
131
137
  });
@@ -7,7 +7,7 @@ declare namespace MonthNames {
7
7
  scrollDate: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
8
8
  onScrollChange: PropTypes.Requireable<(...args: any[]) => any>;
9
9
  currentRange: PropTypes.Requireable<(NonNullable<string | number | Date | null | undefined> | null | undefined)[]>;
10
- locale: PropTypes.Requireable<string>;
10
+ locale: PropTypes.Requireable<object>;
11
11
  };
12
12
  }
13
13
  export default MonthNames;
@@ -17,6 +17,9 @@ import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
17
  import 'date-fns/addYears';
18
18
  import 'date-fns/subYears';
19
19
  import 'core-js/modules/es.regexp.exec.js';
20
+ import 'core-js/modules/es.array.slice.js';
21
+ import 'core-js/modules/es.object.values.js';
22
+ import 'core-js/modules/es.array.index-of.js';
20
23
  import 'date-fns/add';
21
24
 
22
25
  var MonthName = /*#__PURE__*/function (_PureComponent) {
@@ -57,7 +60,7 @@ var MonthName = /*#__PURE__*/function (_PureComponent) {
57
60
  _defineProperty(MonthName, "propTypes", {
58
61
  month: dateType,
59
62
  onScrollChange: PropTypes.func,
60
- locale: PropTypes.string
63
+ locale: PropTypes.object
61
64
  });
62
65
  function MonthNames(props) {
63
66
  var scrollDate = props.scrollDate,
@@ -104,7 +107,7 @@ MonthNames.propTypes = {
104
107
  scrollDate: dateType,
105
108
  onScrollChange: PropTypes.func,
106
109
  currentRange: PropTypes.arrayOf(dateType),
107
- locale: PropTypes.string
110
+ locale: PropTypes.object
108
111
  };
109
112
 
110
113
  export { MonthNames as default };
@@ -11,6 +11,9 @@ import linearFunction from '../global/linear-function.js';
11
11
  import units, { dateType, yearScrollSpeed } from './consts.js';
12
12
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
13
13
  import 'core-js/modules/es.regexp.exec.js';
14
+ import 'core-js/modules/es.array.slice.js';
15
+ import 'core-js/modules/es.object.values.js';
16
+ import 'core-js/modules/es.array.index-of.js';
14
17
  import 'date-fns/add';
15
18
 
16
19
  var COVERYEARS = 3;
@@ -8,7 +8,7 @@ declare function Month(props: MonthProps): React.JSX.Element;
8
8
  declare namespace Month {
9
9
  var propTypes: {
10
10
  month: PropTypes.Requireable<NonNullable<string | number | Date | null | undefined>>;
11
- locale: PropTypes.Requireable<string>;
11
+ locale: PropTypes.Requireable<object>;
12
12
  };
13
13
  }
14
14
  export default Month;
@@ -1,4 +1,5 @@
1
1
  import { f as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.object.values.js';
2
3
  import 'core-js/modules/es.array.map.js';
3
4
  import React from 'react';
4
5
  import addDays from 'date-fns/addDays';
@@ -8,7 +9,7 @@ import getDay from 'date-fns/getDay';
8
9
  import setDay from 'date-fns/setDay';
9
10
  import PropTypes from 'prop-types';
10
11
  import Day from './day.js';
11
- import { dateType, weekdays, WEEK } from './consts.js';
12
+ import { dateType, shiftWeekArray, getWeekStartsOn, weekdays, FIFTH_DAY, WEEK } from './consts.js';
12
13
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
13
14
  import 'core-js/modules/es.array.concat.js';
14
15
  import 'core-js/modules/es.object.to-string.js';
@@ -22,6 +23,8 @@ import 'date-fns/isSameDay';
22
23
  import 'date-fns/isToday';
23
24
  import 'date-fns/startOfDay';
24
25
  import 'core-js/modules/es.regexp.exec.js';
26
+ import 'core-js/modules/es.array.slice.js';
27
+ import 'core-js/modules/es.array.index-of.js';
25
28
  import 'date-fns/add';
26
29
 
27
30
  function Month(props) {
@@ -30,7 +33,9 @@ function Month(props) {
30
33
  var locale = props.locale;
31
34
  // pad with empty cells starting from last friday
32
35
  var weekday = getDay(start);
33
- var day = setDay(start, weekday >= weekdays.FR ? weekdays.FR : weekdays.FR - WEEK);
36
+ var weekDays = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale));
37
+ var fifthDayOfWeek = weekDays[FIFTH_DAY];
38
+ var day = setDay(start, weekday >= fifthDayOfWeek ? fifthDayOfWeek : fifthDayOfWeek - WEEK);
34
39
  var days = [];
35
40
  while (day < end) {
36
41
  days.push(day);
@@ -52,7 +57,7 @@ function Month(props) {
52
57
  }
53
58
  Month.propTypes = {
54
59
  month: dateType,
55
- locale: PropTypes.string
60
+ locale: PropTypes.object
56
61
  };
57
62
 
58
63
  export { Month as default };
@@ -15,6 +15,7 @@ import Month from './month.js';
15
15
  import MonthNames from './month-names.js';
16
16
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
17
  import units, { dateType, DOUBLE, HALF, WEEK, weekdays } from './consts.js';
18
+ import 'core-js/modules/es.object.values.js';
18
19
  import 'date-fns/addDays';
19
20
  import 'date-fns/format';
20
21
  import 'date-fns/setDay';
@@ -37,6 +38,8 @@ import './month-slider.js';
37
38
  import 'date-fns/addYears';
38
39
  import 'date-fns/subYears';
39
40
  import 'core-js/modules/es.regexp.exec.js';
41
+ import 'core-js/modules/es.array.slice.js';
42
+ import 'core-js/modules/es.array.index-of.js';
40
43
  import 'date-fns/add';
41
44
 
42
45
  var unit = units.unit,
@@ -7,7 +7,7 @@ interface WeekdaysProps {
7
7
  declare function Weekdays(props: WeekdaysProps): React.JSX.Element;
8
8
  declare namespace Weekdays {
9
9
  var propTypes: {
10
- locale: PropTypes.Requireable<string>;
10
+ locale: PropTypes.Requireable<object>;
11
11
  };
12
12
  }
13
13
  export default Weekdays;
@@ -9,13 +9,16 @@ import format from 'date-fns/format';
9
9
  import setDay from 'date-fns/setDay';
10
10
  import startOfDay from 'date-fns/startOfDay';
11
11
  import PropTypes from 'prop-types';
12
- import { weekdays } from './consts.js';
12
+ import { shiftWeekArray, getWeekStartsOn, weekdays } from './consts.js';
13
13
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
14
14
  import 'core-js/modules/es.regexp.exec.js';
15
+ import 'core-js/modules/es.array.concat.js';
16
+ import 'core-js/modules/es.array.slice.js';
17
+ import 'core-js/modules/es.array.index-of.js';
15
18
  import 'date-fns/add';
16
19
 
17
20
  function Weekdays(props) {
18
- var days = Object.values(weekdays).map(function (value) {
21
+ var days = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale)).map(function (value) {
19
22
  return startOfDay(setDay(new Date(), value));
20
23
  });
21
24
  var locale = props.locale;
@@ -33,7 +36,7 @@ function Weekdays(props) {
33
36
  }));
34
37
  }
35
38
  Weekdays.propTypes = {
36
- locale: PropTypes.string
39
+ locale: PropTypes.object
37
40
  };
38
41
 
39
42
  export { Weekdays as default };
@@ -16,6 +16,9 @@ import linearFunction from '../global/linear-function.js';
16
16
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
17
  import units, { dateType, yearDuration, DOUBLE, HALF } from './consts.js';
18
18
  import 'core-js/modules/es.regexp.exec.js';
19
+ import 'core-js/modules/es.array.slice.js';
20
+ import 'core-js/modules/es.object.values.js';
21
+ import 'core-js/modules/es.array.index-of.js';
19
22
  import 'date-fns/add';
20
23
 
21
24
  var yearHeight = units.yearHeight,