carbon-react 103.0.0 → 104.1.0

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 (70) hide show
  1. package/lib/components/badge/badge.style.d.ts +1 -1
  2. package/lib/components/badge/badge.style.js +3 -9
  3. package/lib/components/date/__internal__/date-formats/index.d.ts +8 -0
  4. package/lib/components/date/__internal__/date-formats/index.js +47 -0
  5. package/lib/components/date/__internal__/date-picker/date-picker.component.d.ts +3 -0
  6. package/lib/components/date/__internal__/date-picker/date-picker.component.js +154 -0
  7. package/lib/components/date/__internal__/date-picker/date-picker.d.ts +25 -0
  8. package/lib/components/date/{day-picker.style.d.ts → __internal__/date-picker/day-picker.style.d.ts} +0 -0
  9. package/lib/components/date/{day-picker.style.js → __internal__/date-picker/day-picker.style.js} +5 -1
  10. package/lib/components/date/__internal__/date-picker/index.d.ts +1 -0
  11. package/lib/{__internal__/date → components/date/__internal__/date-picker}/index.js +2 -2
  12. package/lib/components/date/{navbar → __internal__/navbar}/button.style.d.ts +0 -0
  13. package/lib/components/date/{navbar → __internal__/navbar}/button.style.js +1 -1
  14. package/lib/components/date/{navbar → __internal__/navbar}/index.d.ts +0 -0
  15. package/lib/components/date/{navbar → __internal__/navbar}/index.js +0 -0
  16. package/lib/components/date/{navbar → __internal__/navbar}/navbar.component.d.ts +0 -0
  17. package/lib/components/date/{navbar → __internal__/navbar}/navbar.component.js +10 -12
  18. package/lib/components/date/__internal__/navbar/navbar.d.ts +8 -0
  19. package/lib/components/date/{navbar → __internal__/navbar}/navbar.style.d.ts +0 -0
  20. package/lib/components/date/{navbar → __internal__/navbar}/navbar.style.js +1 -1
  21. package/lib/components/date/__internal__/utils.d.ts +19 -0
  22. package/lib/components/date/__internal__/utils.js +182 -0
  23. package/lib/components/date/{weekday → __internal__/weekday}/abbr.style.d.ts +0 -0
  24. package/lib/components/date/{weekday → __internal__/weekday}/abbr.style.js +0 -0
  25. package/lib/components/date/{weekday → __internal__/weekday}/index.d.ts +0 -0
  26. package/lib/components/date/{weekday → __internal__/weekday}/index.js +0 -0
  27. package/lib/components/date/{weekday → __internal__/weekday}/weekday.component.d.ts +0 -0
  28. package/lib/components/date/{weekday → __internal__/weekday}/weekday.component.js +0 -0
  29. package/lib/components/date/__internal__/weekday/weekday.d.ts +13 -0
  30. package/lib/components/date/{weekday → __internal__/weekday}/weekday.style.d.ts +0 -0
  31. package/lib/components/date/{weekday → __internal__/weekday}/weekday.style.js +1 -1
  32. package/lib/components/date/date.component.d.ts +27 -55
  33. package/lib/components/date/date.component.js +291 -661
  34. package/lib/components/date/date.d.ts +28 -20
  35. package/lib/components/date/date.style.js +3 -2
  36. package/lib/components/date/index.js +2 -10
  37. package/lib/components/date-range/date-range-context.d.ts +17 -0
  38. package/lib/components/date-range/date-range.component.d.ts +3 -5
  39. package/lib/components/date-range/date-range.component.js +123 -119
  40. package/lib/components/date-range/date-range.context.d.ts +3 -0
  41. package/lib/components/date-range/date-range.context.js +14 -0
  42. package/lib/components/date-range/date-range.d.ts +5 -7
  43. package/lib/components/date-range/date-range.style.js +1 -0
  44. package/lib/components/date-range/index.d.ts +1 -0
  45. package/lib/components/i18n-provider/i18n-provider.component.d.ts +1 -4
  46. package/lib/components/i18n-provider/i18n-provider.component.js +1 -4
  47. package/lib/components/progress-tracker/progress-tracker.component.d.ts +42 -11
  48. package/lib/components/progress-tracker/progress-tracker.component.js +35 -1
  49. package/lib/components/progress-tracker/progress-tracker.d.ts +13 -0
  50. package/lib/components/step-sequence/step-sequence-item/step-sequence-item.style.js +13 -23
  51. package/lib/locales/date-fns-locales/index.d.ts +1 -0
  52. package/lib/locales/date-fns-locales/index.js +18 -0
  53. package/lib/locales/en-gb.js +3 -4
  54. package/lib/locales/locale.d.ts +3 -4
  55. package/lib/locales/pl-pl.d.ts +1 -1
  56. package/lib/locales/pl-pl.js +5 -0
  57. package/lib/style/themes/aegean/aegean-theme.config.d.ts +1 -0
  58. package/lib/style/themes/aegean/aegean-theme.config.js +2 -1
  59. package/lib/style/themes/base/base-theme.config.d.ts +162 -93
  60. package/lib/style/themes/mint/mint-theme.config.d.ts +1 -0
  61. package/lib/style/themes/mint/mint-theme.config.js +2 -1
  62. package/lib/style/themes/sage/index.d.ts +162 -93
  63. package/package.json +7 -7
  64. package/lib/__internal__/date/date.d.ts +0 -34
  65. package/lib/__internal__/date/date.js +0 -216
  66. package/lib/__internal__/date/index.d.ts +0 -1
  67. package/lib/__spec_helper__/mock-date-helper.d.ts +0 -1
  68. package/lib/__spec_helper__/mock-date-helper.js +0 -37
  69. package/lib/components/date/date-picker.component.d.ts +0 -22
  70. package/lib/components/date/date-picker.component.js +0 -218
@@ -1,22 +0,0 @@
1
- export default DatePicker;
2
- declare function DatePicker({ inputElement, inputDate, handleDateSelect, minDate, maxDate, selectedDate, disablePortal, }: {
3
- inputElement: any;
4
- inputDate: any;
5
- handleDateSelect: any;
6
- minDate: any;
7
- maxDate: any;
8
- selectedDate: any;
9
- disablePortal: any;
10
- }): JSX.Element;
11
- declare namespace DatePicker {
12
- namespace propTypes {
13
- const minDate: PropTypes.Requireable<string>;
14
- const maxDate: PropTypes.Requireable<string>;
15
- const disablePortal: PropTypes.Requireable<boolean>;
16
- const inputDate: PropTypes.Requireable<string>;
17
- const inputElement: PropTypes.Validator<object>;
18
- const selectedDate: PropTypes.Requireable<string | object>;
19
- const handleDateSelect: PropTypes.Requireable<(...args: any[]) => any>;
20
- }
21
- }
22
- import PropTypes from "prop-types";
@@ -1,218 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireWildcard(require("react"));
9
-
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
- var _moment = _interopRequireDefault(require("react-day-picker/moment"));
13
-
14
- var _reactDayPicker = _interopRequireDefault(require("react-day-picker"));
15
-
16
- var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
17
-
18
- var _popover = _interopRequireDefault(require("../../__internal__/popover"));
19
-
20
- var _date = _interopRequireDefault(require("../../__internal__/date"));
21
-
22
- var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
23
-
24
- var _navbar = _interopRequireDefault(require("./navbar"));
25
-
26
- var _weekday = _interopRequireDefault(require("./weekday"));
27
-
28
- var _dayPicker = _interopRequireDefault(require("./day-picker.style"));
29
-
30
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
-
32
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
33
-
34
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
-
36
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
37
-
38
- const DatePicker = ({
39
- inputElement,
40
- inputDate,
41
- handleDateSelect,
42
- minDate,
43
- maxDate,
44
- selectedDate,
45
- disablePortal
46
- }) => {
47
- const l = (0, _useLocale.default)();
48
- const locale = l.locale();
49
- const formats = l.date.formats.inputs();
50
- const format = l.date.formats.javascript();
51
- const [lastValidDate, setLastValidDate] = (0, _react.useState)(_date.default.formatDateString(new Date().toString()));
52
- const [localeData, setLocaleData] = (0, _react.useState)({
53
- locale,
54
- formats,
55
- format
56
- });
57
- const ref = (0, _react.useRef)(null);
58
- const popoverModifiers = (0, _react.useMemo)(() => [{
59
- name: "offset",
60
- options: {
61
- offset: [0, 3]
62
- }
63
- }, {
64
- name: "preventOverflow",
65
- options: {
66
- mainAxis: false
67
- }
68
- }], []);
69
- (0, _react.useEffect)(() => {
70
- if (localeData.format === format && (0, _isEqual.default)(localeData.formats, formats) && localeData.locale === locale) {
71
- return;
72
- }
73
-
74
- setLocaleData({
75
- locale,
76
- formats,
77
- format
78
- });
79
- }, [localeData.format, localeData.formats, localeData.locale, format, formats, locale]);
80
- (0, _react.useEffect)(() => {
81
- let monthDate;
82
-
83
- const isoFormattedInputDate = _date.default.formatValue({
84
- value: inputDate,
85
- ...localeData
86
- });
87
-
88
- if (isDateValid(isoFormattedInputDate)) {
89
- monthDate = new Date(isoFormattedInputDate);
90
- setLastValidDate(isoFormattedInputDate);
91
- } else {
92
- monthDate = new Date(lastValidDate);
93
- }
94
-
95
- ref.current.showMonth(monthDate);
96
- }, [inputDate, lastValidDate, localeData]);
97
-
98
- const handleDayClick = (date, modifiers) => {
99
- if (!modifiers.disabled) {
100
- handleDateSelect(date);
101
- }
102
- };
103
-
104
- const datePickerProps = {
105
- disabledDays: getDisabledDays(minDate, maxDate, localeData),
106
- enableOutsideDays: true,
107
- fixedWeeks: true,
108
- initialMonth: selectedDate || undefined,
109
- inline: true,
110
- locale: l.locale(),
111
- localeUtils: _moment.default,
112
- navbarElement: /*#__PURE__*/_react.default.createElement(_navbar.default, null),
113
- onDayClick: handleDayClick,
114
- selectedDays: selectedDate || undefined,
115
- weekdayElement: weekdayElementProps => {
116
- const {
117
- className,
118
- weekday,
119
- localeUtils
120
- } = weekdayElementProps;
121
- const weekdayLong = localeUtils.formatWeekdayLong(weekday, l.locale());
122
- const weekdayShort = localeUtils.formatWeekdayShort(weekday, l.locale());
123
- return /*#__PURE__*/_react.default.createElement(_weekday.default, {
124
- className: className,
125
- title: weekdayLong
126
- }, weekdayShort);
127
- }
128
- };
129
- return /*#__PURE__*/_react.default.createElement(_popover.default, {
130
- placement: "bottom-start",
131
- reference: inputElement,
132
- modifiers: popoverModifiers,
133
- disablePortal: disablePortal
134
- }, /*#__PURE__*/_react.default.createElement(_dayPicker.default, null, /*#__PURE__*/_react.default.createElement(_reactDayPicker.default, _extends({}, datePickerProps, {
135
- ref: ref
136
- }))));
137
- };
138
-
139
- DatePicker.propTypes = {
140
- /** Minimum possible date */
141
- minDate: _propTypes.default.string,
142
-
143
- /** Maximum possible date */
144
- maxDate: _propTypes.default.string,
145
-
146
- /** Boolean to toggle where DatePicker is rendered in relation to the Date Input */
147
- disablePortal: _propTypes.default.bool,
148
-
149
- /* The string value in the date input */
150
- inputDate: _propTypes.default.string,
151
-
152
- /** Element that the DatePicker will be displayed under */
153
- inputElement: _propTypes.default.object.isRequired,
154
-
155
- /** Currently selected date */
156
- selectedDate: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
157
-
158
- /** Callback to set selected date */
159
- handleDateSelect: _propTypes.default.func
160
- };
161
- /**
162
- * Checks if date can be transformed to native js Date object
163
- */
164
-
165
- function isDateValid(string) {
166
- const date = new Date(string);
167
- return date.toString() !== "Invalid Date";
168
- }
169
- /**
170
- * Returns the disabled array of days specified by props maxDate and minDate
171
- */
172
-
173
-
174
- function getDisabledDays(minDate, maxDate, {
175
- locale,
176
- formats,
177
- format
178
- }) {
179
- const days = [];
180
-
181
- if (!minDate && !maxDate) {
182
- return null;
183
- }
184
-
185
- if (minDate && checkIsoFormatAndLength(minDate, locale, formats, format)) {
186
- days.push({
187
- before: _date.default.stringToDate(minDate)
188
- });
189
- }
190
-
191
- if (maxDate && checkIsoFormatAndLength(maxDate, locale, formats, format)) {
192
- days.push({
193
- after: _date.default.stringToDate(maxDate)
194
- });
195
- }
196
-
197
- return days;
198
- }
199
-
200
- function checkIsoFormatAndLength(date, locale, formats, format) {
201
- if (date.length !== 10 || !_date.default.isValidDate({
202
- value: date,
203
- options: {
204
- defaultValue: "YYYY-MM-DD"
205
- },
206
- locale,
207
- formats,
208
- format
209
- })) {
210
- return false;
211
- }
212
-
213
- const array = date.split("-");
214
- return array.length === 3 && array[0].length === 4 && array[1].length === 2 && array[2].length === 2;
215
- }
216
-
217
- var _default = DatePicker;
218
- exports.default = _default;