@pingux/astro 2.2.0 → 2.3.0-alpha.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.
- package/lib/cjs/components/Calendar/Calendar.js +202 -0
- package/lib/cjs/components/Calendar/Calendar.stories.js +192 -0
- package/lib/cjs/components/Calendar/Calendar.styles.js +74 -0
- package/lib/cjs/components/Calendar/Calendar.test.js +324 -0
- package/lib/cjs/components/Calendar/CalendarCell.js +125 -0
- package/lib/cjs/components/Calendar/CalendarGrid.js +77 -0
- package/lib/cjs/components/Calendar/index.js +14 -0
- package/lib/cjs/components/DatePicker/DateField.js +316 -0
- package/lib/cjs/components/DatePicker/DatePicker.js +195 -0
- package/lib/cjs/components/DatePicker/DatePicker.stories.js +205 -0
- package/lib/cjs/components/DatePicker/DatePicker.styles.js +60 -0
- package/lib/cjs/components/DatePicker/DatePicker.test.js +570 -0
- package/lib/cjs/components/DatePicker/DateSegment.js +71 -0
- package/lib/cjs/components/DatePicker/index.js +14 -0
- package/lib/cjs/components/IconButton/IconButton.styles.js +4 -0
- package/lib/cjs/components/TextField/TextField.js +1 -1
- package/lib/cjs/hooks/useOverlayPanelState/useOverlayPanelState.test.js +2 -2
- package/lib/cjs/index.js +132 -59
- package/lib/cjs/styles/forms/index.js +2 -0
- package/lib/cjs/styles/variants/variants.js +4 -2
- package/lib/components/Calendar/Calendar.js +190 -0
- package/lib/components/Calendar/Calendar.stories.js +171 -0
- package/lib/components/Calendar/Calendar.styles.js +66 -0
- package/lib/components/Calendar/Calendar.test.js +321 -0
- package/lib/components/Calendar/CalendarCell.js +111 -0
- package/lib/components/Calendar/CalendarGrid.js +68 -0
- package/lib/components/Calendar/index.js +1 -0
- package/lib/components/DatePicker/DateField.js +303 -0
- package/lib/components/DatePicker/DatePicker.js +183 -0
- package/lib/components/DatePicker/DatePicker.stories.js +180 -0
- package/lib/components/DatePicker/DatePicker.styles.js +51 -0
- package/lib/components/DatePicker/DatePicker.test.js +563 -0
- package/lib/components/DatePicker/DateSegment.js +58 -0
- package/lib/components/DatePicker/index.js +1 -0
- package/lib/components/IconButton/IconButton.styles.js +4 -0
- package/lib/components/TextField/TextField.js +1 -1
- package/lib/hooks/useOverlayPanelState/useOverlayPanelState.test.js +2 -2
- package/lib/index.js +8 -0
- package/lib/styles/forms/index.js +2 -0
- package/lib/styles/variants/variants.js +3 -1
- package/package.json +7 -1
- package/NOTICE.html +0 -12399
- /package/lib/cjs/{styles/variants/callout.js → components/Callout/Callout.styles.js} +0 -0
- /package/lib/{styles/variants/callout.js → components/Callout/Callout.styles.js} +0 -0
@@ -0,0 +1,202 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
4
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
5
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
6
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
7
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
8
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
9
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
10
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
11
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
12
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
13
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
14
|
+
_Object$defineProperty(exports, "__esModule", {
|
15
|
+
value: true
|
16
|
+
});
|
17
|
+
exports["default"] = void 0;
|
18
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
19
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
20
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
21
|
+
var _react = _interopRequireWildcard(require("react"));
|
22
|
+
var _date = require("@internationalized/date");
|
23
|
+
var _calendar = require("@react-aria/calendar");
|
24
|
+
var _i18n = require("@react-aria/i18n");
|
25
|
+
var _visuallyHidden = require("@react-aria/visually-hidden");
|
26
|
+
var _calendar2 = require("@react-stately/calendar");
|
27
|
+
var _ChevronDoubleLeftIcon = _interopRequireDefault(require("mdi-react/ChevronDoubleLeftIcon"));
|
28
|
+
var _ChevronDoubleRightIcon = _interopRequireDefault(require("mdi-react/ChevronDoubleRightIcon"));
|
29
|
+
var _ChevronLeftIcon = _interopRequireDefault(require("mdi-react/ChevronLeftIcon"));
|
30
|
+
var _ChevronRightIcon = _interopRequireDefault(require("mdi-react/ChevronRightIcon"));
|
31
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
32
|
+
var _index = require("../../index");
|
33
|
+
var _CalendarGrid = _interopRequireDefault(require("./CalendarGrid"));
|
34
|
+
var _react2 = require("@emotion/react");
|
35
|
+
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); }
|
36
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
37
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
38
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
39
|
+
/**
|
40
|
+
* A simple component to display a monthly grid for date selection.
|
41
|
+
* Utilizes [useCalendar, useCalendarGrid, useCalendarCell](https://react-spectrum.adobe.com/react-aria/useCalendar.html),
|
42
|
+
* from React Aria and [useCalendarState](https://react-spectrum.adobe.com/react-stately/useCalendarState.html)
|
43
|
+
* from React Stately.
|
44
|
+
*/
|
45
|
+
|
46
|
+
var Calendar = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
47
|
+
var value = props.value,
|
48
|
+
defaultValue = props.defaultValue,
|
49
|
+
minValue = props.minValue,
|
50
|
+
maxValue = props.maxValue;
|
51
|
+
var _useLocale = (0, _i18n.useLocale)(),
|
52
|
+
locale = _useLocale.locale;
|
53
|
+
var calenderRef = (0, _react.useRef)();
|
54
|
+
|
55
|
+
// istanbul ignore next
|
56
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
57
|
+
return calenderRef.current;
|
58
|
+
});
|
59
|
+
var parsedDates = {
|
60
|
+
value: typeof value === 'string' && (0, _date.parseDate)(value) || value,
|
61
|
+
defaultValue: typeof defaultValue === 'string' && (0, _date.parseDate)(defaultValue) || defaultValue,
|
62
|
+
maxValue: typeof maxValue === 'string' && (0, _date.parseDate)(maxValue) || maxValue,
|
63
|
+
minValue: typeof minValue === 'string' && (0, _date.parseDate)(minValue) || minValue
|
64
|
+
};
|
65
|
+
var state = (0, _calendar2.useCalendarState)(_objectSpread(_objectSpread(_objectSpread({}, props), parsedDates), {}, {
|
66
|
+
locale: locale,
|
67
|
+
createCalendar: _date.createCalendar
|
68
|
+
}));
|
69
|
+
var _useCalendar = (0, _calendar.useCalendar)(_objectSpread(_objectSpread({}, props), parsedDates), state, calenderRef),
|
70
|
+
calendarProps = _useCalendar.calendarProps,
|
71
|
+
prevButtonProps = _useCalendar.prevButtonProps,
|
72
|
+
nextButtonProps = _useCalendar.nextButtonProps,
|
73
|
+
title = _useCalendar.title;
|
74
|
+
|
75
|
+
/**
|
76
|
+
* Grabs the currently displayed date for yearly navigation.
|
77
|
+
*/
|
78
|
+
|
79
|
+
var _useState = (0, _react.useState)(),
|
80
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
81
|
+
currentDate = _useState2[0],
|
82
|
+
setCurrentDate = _useState2[1];
|
83
|
+
var todayDate = (0, _react.useMemo)(function () {
|
84
|
+
setCurrentDate(state.visibleRange.start);
|
85
|
+
}, [state.visibleRange.start]);
|
86
|
+
var nav = {
|
87
|
+
NEXT: 'next',
|
88
|
+
PREVIOUS: 'previous'
|
89
|
+
};
|
90
|
+
|
91
|
+
/**
|
92
|
+
* Function handles the navigation to previous and next year
|
93
|
+
* based on the currently displayed date.
|
94
|
+
*/
|
95
|
+
|
96
|
+
var handleYearSelection = (0, _react.useCallback)(function (navigation) {
|
97
|
+
var tempValue;
|
98
|
+
if (navigation === nav.PREVIOUS) {
|
99
|
+
tempValue = currentDate.subtract({
|
100
|
+
years: 1
|
101
|
+
});
|
102
|
+
} else if (navigation === nav.NEXT) {
|
103
|
+
tempValue = currentDate.add({
|
104
|
+
years: 1
|
105
|
+
});
|
106
|
+
}
|
107
|
+
state.setFocusedDate(tempValue);
|
108
|
+
setCurrentDate(tempValue);
|
109
|
+
}, [currentDate, state, todayDate]);
|
110
|
+
return (0, _react2.jsx)(_index.Box, (0, _extends2["default"])({}, calendarProps, {
|
111
|
+
ref: calenderRef,
|
112
|
+
variant: "calendar.calendarContainer"
|
113
|
+
}), (0, _react2.jsx)(_index.Box, {
|
114
|
+
className: "header",
|
115
|
+
isRow: true,
|
116
|
+
variant: "calendar.calendarHeader",
|
117
|
+
verticalAlign: "middle"
|
118
|
+
}, (0, _react2.jsx)(_index.IconButton, {
|
119
|
+
onPress: function onPress() {
|
120
|
+
return handleYearSelection(nav.PREVIOUS);
|
121
|
+
},
|
122
|
+
mx: "sm",
|
123
|
+
isDisabled: prevButtonProps.isDisabled,
|
124
|
+
"aria-label": "previous year navigation"
|
125
|
+
}, (0, _react2.jsx)(_index.Icon, {
|
126
|
+
icon: _ChevronDoubleLeftIcon["default"],
|
127
|
+
size: 18
|
128
|
+
})), (0, _react2.jsx)(_index.IconButton, prevButtonProps, (0, _react2.jsx)(_index.Icon, {
|
129
|
+
icon: _ChevronLeftIcon["default"],
|
130
|
+
size: 18
|
131
|
+
})), (0, _react2.jsx)(_visuallyHidden.VisuallyHidden, null, (0, _react2.jsx)(_index.Text, null, calendarProps['aria-label'])), (0, _react2.jsx)(_index.Text, {
|
132
|
+
variant: "itemTitle",
|
133
|
+
role: "heading",
|
134
|
+
"aria-level": "3",
|
135
|
+
fontWeight: 3
|
136
|
+
}, title), (0, _react2.jsx)(_index.IconButton, nextButtonProps, (0, _react2.jsx)(_index.Icon, {
|
137
|
+
icon: _ChevronRightIcon["default"],
|
138
|
+
size: 18
|
139
|
+
})), (0, _react2.jsx)(_index.IconButton, {
|
140
|
+
onPress: function onPress() {
|
141
|
+
return handleYearSelection(nav.NEXT);
|
142
|
+
},
|
143
|
+
mx: "sm",
|
144
|
+
isDisabled: nextButtonProps.isDisabled,
|
145
|
+
"aria-label": "next year navigation"
|
146
|
+
}, (0, _react2.jsx)(_index.Icon, {
|
147
|
+
icon: _ChevronDoubleRightIcon["default"],
|
148
|
+
size: 18
|
149
|
+
}))), (0, _react2.jsx)(_CalendarGrid["default"], {
|
150
|
+
state: state
|
151
|
+
}), (0, _react2.jsx)(_visuallyHidden.VisuallyHidden, null, (0, _react2.jsx)(_index.Button, {
|
152
|
+
"aria-label": nextButtonProps['aria-label'],
|
153
|
+
isDisabled: nextButtonProps.isDisabled,
|
154
|
+
onPress: function onPress() {
|
155
|
+
return state.focusNextPage();
|
156
|
+
},
|
157
|
+
tabIndex: -1
|
158
|
+
})));
|
159
|
+
});
|
160
|
+
Calendar.propTypes = {
|
161
|
+
/** Prop to provide a custom default date (uncontrolled) */
|
162
|
+
defaultValue: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
163
|
+
/** Prop to provide a default date (controlled) */
|
164
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
165
|
+
/** custom week days for other calendars */
|
166
|
+
customWeekDays: _propTypes["default"].arrayOf(_propTypes["default"].string),
|
167
|
+
/** Whether the element should receive focus on render. */
|
168
|
+
hasAutoFocus: _propTypes["default"].bool,
|
169
|
+
/** The element's unique identifier. */
|
170
|
+
id: _propTypes["default"].string,
|
171
|
+
/**
|
172
|
+
* Callback that is called for each date of the calendar.
|
173
|
+
* If it returns true, then the date is unavailable.
|
174
|
+
*
|
175
|
+
* (date: DateValue) => boolean
|
176
|
+
*/
|
177
|
+
isDateUnavailable: _propTypes["default"].func,
|
178
|
+
/** Whether the calendar is disabled. */
|
179
|
+
isDisabled: _propTypes["default"].bool,
|
180
|
+
/** Whether the calendar dates are only focusable. */
|
181
|
+
isReadOnly: _propTypes["default"].bool,
|
182
|
+
/** Whether user input is required on the input before form submission. */
|
183
|
+
isRequired: _propTypes["default"].bool,
|
184
|
+
/** The maximum allowed date that a user may select. */
|
185
|
+
maxValue: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
186
|
+
/** The minimum allowed date that a user may select. */
|
187
|
+
minValue: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
188
|
+
/** Handler that is called when the element loses focus. */
|
189
|
+
onBlur: _propTypes["default"].func,
|
190
|
+
/** Handler that is called when the element's selection state changes. */
|
191
|
+
onChange: _propTypes["default"].func,
|
192
|
+
/** Handler that is called when the element receives focus. */
|
193
|
+
onFocus: _propTypes["default"].func,
|
194
|
+
/** Handler that is called when the element's focus status changes. */
|
195
|
+
onFocusChange: _propTypes["default"].func,
|
196
|
+
/** Handler that is called when a key is pressed. */
|
197
|
+
onKeyDown: _propTypes["default"].func,
|
198
|
+
/** Handler that is called when a key is released. */
|
199
|
+
onKeyUp: _propTypes["default"].func
|
200
|
+
};
|
201
|
+
var _default = Calendar;
|
202
|
+
exports["default"] = _default;
|
@@ -0,0 +1,192 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
4
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
5
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
6
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
7
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
8
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
9
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
10
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
11
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
12
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
13
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
14
|
+
_Object$defineProperty(exports, "__esModule", {
|
15
|
+
value: true
|
16
|
+
});
|
17
|
+
exports["default"] = exports.UnavailableDates = exports.ReadOnly = exports.MinimumDate = exports.MaximumDate = exports.Disabled = exports.DefaultValue = exports.Default = exports.Controlled = exports.Autofocus = void 0;
|
18
|
+
var _some = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/some"));
|
19
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
20
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
21
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
22
|
+
var _react = _interopRequireWildcard(require("react"));
|
23
|
+
var _date = require("@internationalized/date");
|
24
|
+
var _ariaAttributes = require("../../utils/docUtils/ariaAttributes");
|
25
|
+
var _Calendar = _interopRequireDefault(require("./Calendar"));
|
26
|
+
var _react2 = require("@emotion/react");
|
27
|
+
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); }
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
29
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
30
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
31
|
+
var _default = {
|
32
|
+
title: 'Components/Calendar',
|
33
|
+
component: _Calendar["default"],
|
34
|
+
parameters: {
|
35
|
+
actions: {
|
36
|
+
argTypesRegex: '^on.*'
|
37
|
+
},
|
38
|
+
docs: {
|
39
|
+
source: {
|
40
|
+
type: 'code'
|
41
|
+
}
|
42
|
+
}
|
43
|
+
},
|
44
|
+
argTypes: _objectSpread({
|
45
|
+
customWeekDays: {
|
46
|
+
control: {
|
47
|
+
type: 'array'
|
48
|
+
}
|
49
|
+
},
|
50
|
+
value: {
|
51
|
+
control: {
|
52
|
+
type: 'text'
|
53
|
+
}
|
54
|
+
},
|
55
|
+
defaultValue: {
|
56
|
+
control: {
|
57
|
+
type: 'text'
|
58
|
+
}
|
59
|
+
},
|
60
|
+
hasAutoFocus: {
|
61
|
+
control: {
|
62
|
+
type: 'boolean'
|
63
|
+
},
|
64
|
+
defaultValue: false
|
65
|
+
},
|
66
|
+
id: {
|
67
|
+
control: {
|
68
|
+
type: 'text'
|
69
|
+
}
|
70
|
+
},
|
71
|
+
isDisabled: {
|
72
|
+
control: {
|
73
|
+
type: 'boolean'
|
74
|
+
},
|
75
|
+
defaultValue: false
|
76
|
+
},
|
77
|
+
isReadOnly: {
|
78
|
+
control: {
|
79
|
+
type: 'boolean'
|
80
|
+
},
|
81
|
+
defaultValue: false
|
82
|
+
},
|
83
|
+
isRequired: {
|
84
|
+
control: {
|
85
|
+
type: 'boolean'
|
86
|
+
},
|
87
|
+
defaultValue: false
|
88
|
+
},
|
89
|
+
maxValue: {
|
90
|
+
control: {
|
91
|
+
type: 'text'
|
92
|
+
}
|
93
|
+
},
|
94
|
+
minValue: {
|
95
|
+
control: {
|
96
|
+
type: 'text'
|
97
|
+
}
|
98
|
+
},
|
99
|
+
onChange: {
|
100
|
+
control: {
|
101
|
+
type: 'func'
|
102
|
+
},
|
103
|
+
defaultValue: null,
|
104
|
+
action: 'change'
|
105
|
+
},
|
106
|
+
onFocusChange: {
|
107
|
+
control: {
|
108
|
+
type: 'func'
|
109
|
+
},
|
110
|
+
defaultValue: null,
|
111
|
+
action: 'focus change'
|
112
|
+
}
|
113
|
+
}, _ariaAttributes.ariaAttributeBaseArgTypes)
|
114
|
+
};
|
115
|
+
exports["default"] = _default;
|
116
|
+
var Default = function Default(args) {
|
117
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
118
|
+
"aria-label": "calendar-default"
|
119
|
+
}));
|
120
|
+
};
|
121
|
+
exports.Default = Default;
|
122
|
+
var DefaultValue = function DefaultValue(args) {
|
123
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
124
|
+
"aria-label": "calendar-with-default-value",
|
125
|
+
defaultValue: "2022-08-10"
|
126
|
+
}));
|
127
|
+
};
|
128
|
+
exports.DefaultValue = DefaultValue;
|
129
|
+
var Controlled = function Controlled(args) {
|
130
|
+
var _useState = (0, _react.useState)(null),
|
131
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
132
|
+
date = _useState2[0],
|
133
|
+
setDate = _useState2[1];
|
134
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
135
|
+
"aria-label": "calendar-component-controlled",
|
136
|
+
value: date,
|
137
|
+
onChange: setDate
|
138
|
+
}));
|
139
|
+
};
|
140
|
+
exports.Controlled = Controlled;
|
141
|
+
var Disabled = function Disabled(args) {
|
142
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
143
|
+
"aria-label": "calendar-component-disabled",
|
144
|
+
isDisabled: true
|
145
|
+
}));
|
146
|
+
};
|
147
|
+
exports.Disabled = Disabled;
|
148
|
+
var ReadOnly = function ReadOnly(args) {
|
149
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
150
|
+
"aria-label": "calendar-component-readonly",
|
151
|
+
isReadOnly: true
|
152
|
+
}));
|
153
|
+
};
|
154
|
+
exports.ReadOnly = ReadOnly;
|
155
|
+
var UnavailableDates = function UnavailableDates(args) {
|
156
|
+
var unavailableRanges = [['2022-07-29', '2022-08-05'], ['2022-08-15', '2022-08-20'], ['2022-08-25', '2022-08-26']];
|
157
|
+
// This function is run against each date in the calendar
|
158
|
+
var isDateUnavailable = function isDateUnavailable(date) {
|
159
|
+
return (0, _some["default"])(unavailableRanges).call(unavailableRanges, function (interval) {
|
160
|
+
return date.compare((0, _date.parseDate)(interval[0])) >= 0 && date.compare((0, _date.parseDate)(interval[1])) <= 0;
|
161
|
+
});
|
162
|
+
};
|
163
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
164
|
+
"aria-label": "calendar-component-unavailable-dates",
|
165
|
+
defaultValue: "2022-08-10",
|
166
|
+
isDateUnavailable: isDateUnavailable
|
167
|
+
}));
|
168
|
+
};
|
169
|
+
exports.UnavailableDates = UnavailableDates;
|
170
|
+
var MinimumDate = function MinimumDate(args) {
|
171
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
172
|
+
"aria-label": "calendar-component-min-date",
|
173
|
+
minValue: "2022-09-10",
|
174
|
+
defaultDate: "2022-09-14"
|
175
|
+
}));
|
176
|
+
};
|
177
|
+
exports.MinimumDate = MinimumDate;
|
178
|
+
var MaximumDate = function MaximumDate(args) {
|
179
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
180
|
+
"aria-label": "calendar-component-max-date",
|
181
|
+
maxValue: "2022-10-10",
|
182
|
+
defaultValue: "2022-10-05"
|
183
|
+
}));
|
184
|
+
};
|
185
|
+
exports.MaximumDate = MaximumDate;
|
186
|
+
var Autofocus = function Autofocus(args) {
|
187
|
+
return (0, _react2.jsx)(_Calendar["default"], (0, _extends2["default"])({}, args, {
|
188
|
+
"aria-label": "calendar-component",
|
189
|
+
hasAutoFocus: true
|
190
|
+
}));
|
191
|
+
};
|
192
|
+
exports.Autofocus = Autofocus;
|
@@ -0,0 +1,74 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
4
|
+
_Object$defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports["default"] = void 0;
|
8
|
+
var calendarBody = {
|
9
|
+
borderTop: '1px solid',
|
10
|
+
borderTopColor: 'neutral.80',
|
11
|
+
'& > tr:nth-of-type(odd) ': {
|
12
|
+
backgroundColor: 'white'
|
13
|
+
}
|
14
|
+
};
|
15
|
+
var calendarButton = {
|
16
|
+
py: 'sm',
|
17
|
+
fontSize: 'sm',
|
18
|
+
fontWeight: 1,
|
19
|
+
color: 'neutral.10',
|
20
|
+
lineHeight: '16px',
|
21
|
+
width: '40.5px',
|
22
|
+
height: '40px',
|
23
|
+
'&.is-hovered': {
|
24
|
+
bg: 'accent.99',
|
25
|
+
cursor: 'pointer'
|
26
|
+
},
|
27
|
+
'&.is-selected': {
|
28
|
+
bg: 'active',
|
29
|
+
color: 'white',
|
30
|
+
outline: 'none',
|
31
|
+
boxShadow: 'none'
|
32
|
+
},
|
33
|
+
'&.is-unavailable': {
|
34
|
+
backgroundColor: 'neutral.80'
|
35
|
+
},
|
36
|
+
'&:not(.is-outside-visible-range)&.is-extreme&:not(.is-completely-disabled)': {
|
37
|
+
backgroundColor: 'neutral.80',
|
38
|
+
color: 'neutral.10',
|
39
|
+
opacity: 1
|
40
|
+
}
|
41
|
+
};
|
42
|
+
var calendarCell = {
|
43
|
+
cursor: 'default',
|
44
|
+
textAlign: 'center',
|
45
|
+
position: 'relative',
|
46
|
+
color: '#333'
|
47
|
+
};
|
48
|
+
var columnHeader = {
|
49
|
+
fontSize: '13px',
|
50
|
+
fontWeight: 1,
|
51
|
+
width: '40px',
|
52
|
+
height: '16px',
|
53
|
+
mb: '12px'
|
54
|
+
};
|
55
|
+
var calendarContainer = {
|
56
|
+
boxShadow: 'standard',
|
57
|
+
textAlign: 'center',
|
58
|
+
maxWidth: '280px'
|
59
|
+
};
|
60
|
+
var calendarHeader = {
|
61
|
+
justifyContent: 'space-between',
|
62
|
+
mt: '10px',
|
63
|
+
mb: '17px',
|
64
|
+
alignItems: 'center'
|
65
|
+
};
|
66
|
+
var _default = {
|
67
|
+
calendarBody: calendarBody,
|
68
|
+
calendarButton: calendarButton,
|
69
|
+
calendarCell: calendarCell,
|
70
|
+
calendarContainer: calendarContainer,
|
71
|
+
calendarHeader: calendarHeader,
|
72
|
+
columnHeader: columnHeader
|
73
|
+
};
|
74
|
+
exports["default"] = _default;
|