@elliemae/ds-time-picker 2.2.0-alpha.3 → 2.2.0-next.2
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/cjs/DSTimePicker.js +115 -100
- package/cjs/DSTimePickerMenu.js +33 -46
- package/cjs/PickerPanel.js +254 -151
- package/cjs/TimePickerDropdown.js +52 -73
- package/cjs/TimePickerImpl.js +138 -146
- package/cjs/TimePickerMenu.js +209 -138
- package/cjs/index.js +17 -40
- package/cjs/moveElementOnScroll.js +39 -57
- package/cjs/utils.js +24 -57
- package/esm/DSTimePicker.js +105 -71
- package/esm/DSTimePickerMenu.js +22 -17
- package/esm/PickerPanel.js +242 -120
- package/esm/TimePickerDropdown.js +44 -44
- package/esm/TimePickerImpl.js +117 -106
- package/esm/TimePickerMenu.js +191 -102
- package/esm/index.js +4 -11
- package/esm/moveElementOnScroll.js +34 -28
- package/esm/utils.js +17 -28
- package/package.json +7 -7
- package/types/PickerPanel.d.ts +0 -1
- package/types/TimePickerDropdown.d.ts +0 -1
- package/types/TimePickerImpl.d.ts +0 -1
- package/cjs/DSTimePicker.js.map +0 -7
- package/cjs/DSTimePickerMenu.js.map +0 -7
- package/cjs/PickerPanel.js.map +0 -7
- package/cjs/TimePickerDropdown.js.map +0 -7
- package/cjs/TimePickerImpl.js.map +0 -7
- package/cjs/TimePickerMenu.js.map +0 -7
- package/cjs/index.js.map +0 -7
- package/cjs/moveElementOnScroll.js.map +0 -7
- package/cjs/utils.js.map +0 -7
- package/esm/DSTimePicker.js.map +0 -7
- package/esm/DSTimePickerMenu.js.map +0 -7
- package/esm/PickerPanel.js.map +0 -7
- package/esm/TimePickerDropdown.js.map +0 -7
- package/esm/TimePickerImpl.js.map +0 -7
- package/esm/TimePickerMenu.js.map +0 -7
- package/esm/index.js.map +0 -7
- package/esm/moveElementOnScroll.js.map +0 -7
- package/esm/utils.js.map +0 -7
package/cjs/utils.js
CHANGED
|
@@ -1,64 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __reExport = (target, module2, copyDefault, desc) => {
|
|
13
|
-
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(module2))
|
|
15
|
-
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
16
|
-
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return target;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (module2, isNodeMode) => {
|
|
21
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
22
|
-
};
|
|
23
|
-
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
24
|
-
return (module2, temp) => {
|
|
25
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
-
};
|
|
27
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
28
|
-
var utils_exports = {};
|
|
29
|
-
__export(utils_exports, {
|
|
30
|
-
convertTimeString: () => convertTimeString,
|
|
31
|
-
getOptionIndex: () => getOptionIndex,
|
|
32
|
-
isAM: () => isAM,
|
|
33
|
-
validateIndex: () => validateIndex
|
|
34
|
-
});
|
|
35
|
-
var React = __toESM(require("react"));
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
36
5
|
const validateIndex = (index, options) => {
|
|
37
|
-
if (index < 0)
|
|
38
|
-
|
|
39
|
-
if (index >= options.length)
|
|
40
|
-
return options.length - 1;
|
|
6
|
+
if (index < 0) return 0;
|
|
7
|
+
if (index >= options.length) return options.length - 1;
|
|
41
8
|
return index;
|
|
42
9
|
};
|
|
43
|
-
const getOptionIndex = (options, selectedOption
|
|
44
|
-
|
|
10
|
+
const getOptionIndex = function (options, selectedOption) {
|
|
11
|
+
let valueProperty = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'value';
|
|
12
|
+
const index = options.findIndex(option => option[valueProperty] === selectedOption);
|
|
45
13
|
return validateIndex(index, options);
|
|
46
14
|
};
|
|
47
|
-
const isAM =
|
|
48
|
-
const convertTimeString =
|
|
49
|
-
if (!string)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
meridiem = "PM";
|
|
54
|
-
const arr = string.split(":");
|
|
15
|
+
const isAM = time => time && time.hour() < 12;
|
|
16
|
+
const convertTimeString = string => {
|
|
17
|
+
if (!string) return null;
|
|
18
|
+
let meridiem = 'AM';
|
|
19
|
+
if (string.toUpperCase().includes('PM')) meridiem = 'PM';
|
|
20
|
+
const arr = string.split(':');
|
|
55
21
|
let hour = parseInt(arr[0], 10);
|
|
56
|
-
if (meridiem ===
|
|
57
|
-
|
|
58
|
-
if (meridiem ===
|
|
59
|
-
|
|
60
|
-
if (meridiem === "PM" && hour === 12)
|
|
61
|
-
hour = 12;
|
|
22
|
+
if (meridiem === 'PM' && hour !== 12) hour += 12; // formats to 24
|
|
23
|
+
|
|
24
|
+
if (meridiem === 'AM' && hour === 12) hour = 0;
|
|
25
|
+
if (meridiem === 'PM' && hour === 12) hour = 12;
|
|
62
26
|
const min = parseInt(arr[1], 10);
|
|
63
27
|
const sec = parseInt(arr[2], 10);
|
|
64
28
|
return {
|
|
@@ -67,5 +31,8 @@ const convertTimeString = (string) => {
|
|
|
67
31
|
sec
|
|
68
32
|
};
|
|
69
33
|
};
|
|
70
|
-
|
|
71
|
-
|
|
34
|
+
|
|
35
|
+
exports.convertTimeString = convertTimeString;
|
|
36
|
+
exports.getOptionIndex = getOptionIndex;
|
|
37
|
+
exports.isAM = isAM;
|
|
38
|
+
exports.validateIndex = validateIndex;
|
package/esm/DSTimePicker.js
CHANGED
|
@@ -1,77 +1,111 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
1
|
+
import 'react';
|
|
2
|
+
import { PropTypes, describe } from 'react-desc';
|
|
3
|
+
import moment from 'moment';
|
|
4
|
+
import TimePickerImpl from './TimePickerImpl.js';
|
|
5
|
+
import { jsx } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
const DSTimePicker = _ref => {
|
|
8
|
+
let {
|
|
9
|
+
containerProps = {},
|
|
10
|
+
innerRef,
|
|
11
|
+
className = '',
|
|
12
|
+
disabled = false,
|
|
13
|
+
value = '',
|
|
14
|
+
format,
|
|
15
|
+
style = {},
|
|
16
|
+
onChange = () => null,
|
|
17
|
+
onOpen = () => null,
|
|
18
|
+
isOpen = undefined,
|
|
19
|
+
clearable = false,
|
|
20
|
+
hasHeader = true,
|
|
21
|
+
hasHeaderDisplay = false,
|
|
22
|
+
'aria-label': ariaLabel,
|
|
23
|
+
zIndex = 'auto',
|
|
24
|
+
placement = 'bottom',
|
|
25
|
+
disabledTimes,
|
|
26
|
+
minutesInterval = 1
|
|
27
|
+
} = _ref;
|
|
28
|
+
return /*#__PURE__*/jsx(TimePickerImpl, {
|
|
29
|
+
ref: innerRef,
|
|
30
|
+
"aria-label": ariaLabel,
|
|
31
|
+
className: className,
|
|
32
|
+
clearable: clearable,
|
|
33
|
+
containerProps: containerProps,
|
|
34
|
+
disabled: disabled,
|
|
35
|
+
format: format,
|
|
36
|
+
hasHeader: hasHeader,
|
|
37
|
+
hasHeaderDisplay: hasHeaderDisplay,
|
|
38
|
+
isOpen: isOpen,
|
|
39
|
+
onChange: onChange,
|
|
40
|
+
onOpen: onOpen,
|
|
41
|
+
placement: placement,
|
|
42
|
+
style: style,
|
|
43
|
+
value: value,
|
|
44
|
+
zIndex: zIndex,
|
|
45
|
+
minutesInterval: minutesInterval,
|
|
46
|
+
disabledTimes: disabledTimes
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
|
|
45
50
|
DSTimePicker.defaultProps = {
|
|
46
|
-
format:
|
|
51
|
+
format: 'hh:mm:ss A'
|
|
47
52
|
};
|
|
48
53
|
const props = {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
54
|
+
/** a11y label */
|
|
55
|
+
'aria-label': PropTypes.string.description('a11y label'),
|
|
56
|
+
|
|
57
|
+
/** inject props to time picker wrapper */
|
|
58
|
+
containerProps: PropTypes.object.description('inject props to time picker wrapper'),
|
|
59
|
+
|
|
60
|
+
/** Whether the time picker is disabled or not */
|
|
61
|
+
disabled: PropTypes.bool.description('Whether the time picker is disabled or not'),
|
|
62
|
+
|
|
63
|
+
/** Time picker value */
|
|
64
|
+
value: PropTypes.instanceOf(moment).description('Time picker value'),
|
|
65
|
+
|
|
66
|
+
/** Time format (hh:mm:ss, H:m:s) */
|
|
67
|
+
format: PropTypes.string.description('Time format (hh:mm:ss, H:m:s)'),
|
|
68
|
+
|
|
69
|
+
/** toggle header style */
|
|
70
|
+
hasHeader: PropTypes.bool.description('toggle header style'),
|
|
71
|
+
|
|
72
|
+
/** toggle header display */
|
|
73
|
+
hasHeaderDisplay: PropTypes.bool.description('toggle header display'),
|
|
74
|
+
|
|
75
|
+
/** Handler when time picker value changes */
|
|
76
|
+
onChange: PropTypes.func.description('Handler when time picker value changes'),
|
|
77
|
+
|
|
78
|
+
/** Handler when the time picker menu opens */
|
|
79
|
+
onOpen: PropTypes.func.description('Handler when the time picker menu opens'),
|
|
80
|
+
|
|
81
|
+
/** Whether the time picker menu is opened or not */
|
|
82
|
+
isOpen: PropTypes.bool.description('Whether the time picker menu is opened or not'),
|
|
83
|
+
|
|
84
|
+
/** ref for time picker input */
|
|
85
|
+
innerRef: PropTypes.func.description('ref for time picker input'),
|
|
86
|
+
|
|
87
|
+
/** Enable to clear the time picker value */
|
|
88
|
+
clearable: PropTypes.bool.description('Enable to clear the time picker value'),
|
|
89
|
+
|
|
90
|
+
/** class for time picker */
|
|
91
|
+
className: PropTypes.string.description('class for time picker'),
|
|
92
|
+
|
|
93
|
+
/** style object */
|
|
94
|
+
style: PropTypes.object.description('style object'),
|
|
95
|
+
|
|
96
|
+
/** z index for menu */
|
|
97
|
+
zIndex: PropTypes.number.description('z index for menu'),
|
|
98
|
+
|
|
99
|
+
/** DSPopper placement */
|
|
100
|
+
placement: PropTypes.string.description('DSPopper placement'),
|
|
101
|
+
|
|
102
|
+
/** disabled time */
|
|
103
|
+
disabledTimes: PropTypes.object.description('disabled time'),
|
|
104
|
+
|
|
105
|
+
/** steps for the picker */
|
|
106
|
+
minutesInterval: PropTypes.number.description('steps for the picker')
|
|
67
107
|
};
|
|
68
|
-
DSTimePicker.propTypes = props;
|
|
69
108
|
const DSTimePickerWithSchema = describe(DSTimePicker);
|
|
70
109
|
DSTimePickerWithSchema.propTypes = props;
|
|
71
|
-
|
|
72
|
-
export {
|
|
73
|
-
DSTimePicker,
|
|
74
|
-
DSTimePickerWithSchema,
|
|
75
|
-
DSTimePicker_default as default
|
|
76
|
-
};
|
|
77
|
-
//# sourceMappingURL=DSTimePicker.js.map
|
|
110
|
+
|
|
111
|
+
export { DSTimePicker, DSTimePickerWithSchema, DSTimePicker as default };
|
package/esm/DSTimePickerMenu.js
CHANGED
|
@@ -1,19 +1,24 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
7
|
+
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
8
|
+
import 'react';
|
|
9
|
+
import styled from 'styled-components';
|
|
10
|
+
import { TimePickerMenu } from './TimePickerMenu.js';
|
|
11
|
+
import { jsx } from 'react/jsx-runtime';
|
|
12
|
+
|
|
13
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
14
|
+
|
|
15
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
16
|
+
const DSTimePickerMenuWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
17
|
+
componentId: "sc-1lnruj5-0"
|
|
18
|
+
})(["display:flex;height:18.6rem;"]);
|
|
19
|
+
|
|
9
20
|
function DSTimePickerMenu(props) {
|
|
10
|
-
return
|
|
11
|
-
...props
|
|
12
|
-
}));
|
|
21
|
+
return /*#__PURE__*/_jsx(DSTimePickerMenuWrapper, {}, void 0, /*#__PURE__*/jsx(TimePickerMenu, _objectSpread({}, props)));
|
|
13
22
|
}
|
|
14
|
-
|
|
15
|
-
export {
|
|
16
|
-
DSTimePickerMenu,
|
|
17
|
-
DSTimePickerMenu_default as default
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=DSTimePickerMenu.js.map
|
|
23
|
+
|
|
24
|
+
export { DSTimePickerMenu, DSTimePickerMenu as default };
|