@data-driven-forms/carbon-component-mapper 3.12.2 → 3.13.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.
@@ -2,184 +2,31 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
9
 
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
11
 
18
- var _react = _interopRequireWildcard(require("react"));
12
+ var _react = _interopRequireDefault(require("react"));
19
13
 
20
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
21
15
 
22
- var _useFieldApi2 = _interopRequireDefault(require("@data-driven-forms/react-form-renderer/use-field-api"));
23
-
24
- var _TimePicker = _interopRequireDefault(require("carbon-components-react/lib/components/TimePicker/TimePicker.js"));
25
-
26
- var _TimePickerSelect = _interopRequireDefault(require("carbon-components-react/lib/components/TimePickerSelect/TimePickerSelect.js"));
27
-
28
- var _SelectItem = _interopRequireDefault(require("carbon-components-react/lib/components/SelectItem/SelectItem.js"));
29
-
30
- var _prepareProps = _interopRequireDefault(require("../prepare-props"));
31
-
32
- var _helperTextBlock = _interopRequireDefault(require("../helper-text-block/helper-text-block"));
33
-
34
- var _excluded = ["input", "meta", "twelveHoursFormat", "timezones", "validateOnMount", "helperText", "WrapperProps"],
35
- _excluded2 = ["showAs"];
36
-
37
- 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); }
38
-
39
- 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; }
40
-
41
- var TimePicker = function TimePicker(props) {
42
- var _timezones$;
43
-
44
- var _useFieldApi = (0, _useFieldApi2["default"])((0, _prepareProps["default"])(props)),
45
- input = _useFieldApi.input,
46
- meta = _useFieldApi.meta,
47
- twelveHoursFormat = _useFieldApi.twelveHoursFormat,
48
- timezones = _useFieldApi.timezones,
49
- validateOnMount = _useFieldApi.validateOnMount,
50
- helperText = _useFieldApi.helperText,
51
- WrapperProps = _useFieldApi.WrapperProps,
52
- rest = (0, _objectWithoutProperties2["default"])(_useFieldApi, _excluded);
53
-
54
- var _useState = (0, _react.useState)(timezones ? (_timezones$ = timezones[0]) === null || _timezones$ === void 0 ? void 0 : _timezones$.value : ''),
55
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
56
- timezone = _useState2[0],
57
- selectTimezone = _useState2[1];
58
-
59
- var _useState3 = (0, _react.useState)('AM'),
60
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
61
- format = _useState4[0],
62
- selectFormat = _useState4[1];
63
-
64
- var isMounted = (0, _react.useRef)(false);
65
- var invalid = (meta.touched || validateOnMount) && (meta.error || meta.submitError);
66
- var warnText = (meta.touched || validateOnMount) && meta.warning;
67
- var finalValue = input.value;
68
-
69
- if (input.value instanceof Date) {
70
- var _timezones$find;
71
-
72
- var _input$value$toLocale = input.value.toLocaleTimeString('en-us', {
73
- hour12: !!twelveHoursFormat,
74
- timeZone: timezones === null || timezones === void 0 ? void 0 : (_timezones$find = timezones.find(function (_ref) {
75
- var value = _ref.value;
76
- return value === timezone;
77
- })) === null || _timezones$find === void 0 ? void 0 : _timezones$find.showAs
78
- }).split(':'),
79
- _input$value$toLocale2 = (0, _slicedToArray2["default"])(_input$value$toLocale, 2),
80
- _input$value$toLocale3 = _input$value$toLocale2[0],
81
- hours = _input$value$toLocale3 === void 0 ? '00' : _input$value$toLocale3,
82
- _input$value$toLocale4 = _input$value$toLocale2[1],
83
- minutes = _input$value$toLocale4 === void 0 ? '00' : _input$value$toLocale4;
84
-
85
- finalValue = "".concat(String(hours).padStart(2, '0'), ":").concat(String(minutes).padStart(2, '0'));
86
- }
87
-
88
- var enhnancedOnBlur = function enhnancedOnBlur() {
89
- var _finalValue;
90
-
91
- var _ref2 = ((_finalValue = finalValue) === null || _finalValue === void 0 ? void 0 : _finalValue.split(':')) || [],
92
- _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
93
- _ref3$ = _ref3[0],
94
- hours = _ref3$ === void 0 ? '00' : _ref3$,
95
- _ref3$2 = _ref3[1],
96
- minutes = _ref3$2 === void 0 ? '00' : _ref3$2;
97
-
98
- if (!hours || isNaN(hours)) {
99
- hours = '00';
100
- }
101
-
102
- if (!minutes || isNaN(minutes)) {
103
- minutes = '00';
104
- }
105
-
106
- if (twelveHoursFormat) {
107
- hours = hours % 12;
16
+ var _timePickerString = _interopRequireDefault(require("../time-picker-string/time-picker-string"));
108
17
 
109
- if (format === 'PM') {
110
- hours = hours + 12;
111
- }
112
- } else {
113
- hours = hours % 24;
114
- }
18
+ var _timePickerDate = _interopRequireDefault(require("../time-picker-date"));
115
19
 
116
- minutes = minutes % 59;
117
- var enhancedValue = new Date("Jan 1 2000 ".concat(hours, ":").concat(minutes, ":00 ").concat(timezone));
118
- input.onChange(enhancedValue);
119
- input.onBlur();
120
- };
20
+ var _excluded = ["useStringFormat"];
121
21
 
122
- (0, _react.useEffect)(function () {
123
- if (isMounted.current === true) {
124
- enhnancedOnBlur();
125
- } else {
126
- isMounted.current = true;
127
- }
128
- }, [timezone, format]);
129
- return /*#__PURE__*/_react["default"].createElement("div", WrapperProps, /*#__PURE__*/_react["default"].createElement(_TimePicker["default"], (0, _extends2["default"])({}, input, {
130
- value: finalValue,
131
- onBlur: enhnancedOnBlur,
132
- key: input.name,
133
- id: input.name,
134
- invalid: Boolean(invalid),
135
- invalidText: invalid || ''
136
- }, rest), twelveHoursFormat && /*#__PURE__*/_react["default"].createElement(_TimePickerSelect["default"], {
137
- labelText: "Period",
138
- id: "".concat(rest.id || input.name, "-12h"),
139
- onChange: function onChange(_ref4) {
140
- var value = _ref4.target.value;
141
- return selectFormat(value);
142
- }
143
- }, /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], {
144
- value: "AM",
145
- text: "AM"
146
- }), /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], {
147
- value: "PM",
148
- text: "PM"
149
- })), timezones && /*#__PURE__*/_react["default"].createElement(_TimePickerSelect["default"], {
150
- labelText: "Timezone",
151
- id: "".concat(rest.id || input.name, "-timezones"),
152
- onChange: function onChange(_ref5) {
153
- var value = _ref5.target.value;
154
- return selectTimezone(value);
155
- }
156
- }, timezones.map(function (_ref6) {
157
- var showAs = _ref6.showAs,
158
- tz = (0, _objectWithoutProperties2["default"])(_ref6, _excluded2);
159
- return /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], (0, _extends2["default"])({
160
- key: tz.value,
161
- text: tz.label
162
- }, tz));
163
- }))), /*#__PURE__*/_react["default"].createElement(_helperTextBlock["default"], {
164
- helperText: !invalid && helperText,
165
- warnText: warnText
166
- }));
22
+ var TimePicker = function TimePicker(_ref) {
23
+ var useStringFormat = _ref.useStringFormat,
24
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
25
+ return useStringFormat ? /*#__PURE__*/_react["default"].createElement(_timePickerString["default"], props) : /*#__PURE__*/_react["default"].createElement(_timePickerDate["default"], props);
167
26
  };
168
27
 
169
28
  TimePicker.propTypes = {
170
- isDisabled: _propTypes["default"].bool,
171
- isReadOnly: _propTypes["default"].bool,
172
- isRequired: _propTypes["default"].bool,
173
- label: _propTypes["default"].node,
174
- labelText: _propTypes["default"].node,
175
- description: _propTypes["default"].node,
176
- twelveHoursFormat: _propTypes["default"].bool,
177
- timezones: _propTypes["default"].arrayOf(_propTypes["default"].shape({
178
- value: _propTypes["default"].string.isRequired,
179
- label: _propTypes["default"].node.isRequired,
180
- showAs: _propTypes["default"].string.isRequired
181
- })),
182
- WrapperProps: _propTypes["default"].object
29
+ useStringFormat: _propTypes["default"].bool
183
30
  };
184
31
  var _default = TimePicker;
185
32
  exports["default"] = _default;
@@ -0,0 +1,2 @@
1
+ export { default } from './time-picker-base';
2
+ export * from './time-picker-base';
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {};
9
+ Object.defineProperty(exports, "default", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _timePickerBase["default"];
13
+ }
14
+ });
15
+
16
+ var _timePickerBase = _interopRequireWildcard(require("./time-picker-base"));
17
+
18
+ Object.keys(_timePickerBase).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
+ if (key in exports && exports[key] === _timePickerBase[key]) return;
22
+ Object.defineProperty(exports, key, {
23
+ enumerable: true,
24
+ get: function get() {
25
+ return _timePickerBase[key];
26
+ }
27
+ });
28
+ });
29
+
30
+ 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); }
31
+
32
+ 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; }
@@ -0,0 +1 @@
1
+ {"main":"index.js","module":"../esm/time-picker-base","typings":"index.d.ts"}
@@ -0,0 +1,29 @@
1
+ import { ReactNode } from "react";
2
+ import { AnyObject, Input } from "@data-driven-forms/react-form-renderer";
3
+
4
+ import { FormGroupProps } from "../form-group";
5
+
6
+ import { TimePickerProps as CarbonTimePickerProps, SelectItemProps } from 'carbon-components-react';
7
+
8
+ export interface Timezone extends SelectItemProps {
9
+ value: string;
10
+ label?: string;
11
+ }
12
+
13
+ interface InternalTimePickerBaseProps extends CarbonTimePickerProps, AnyObject {
14
+ twelveHoursFormat?: boolean;
15
+ timezones?: Timezone[];
16
+ input: Input<any>;
17
+ enhnancedOnBlur?: () => void;
18
+ enhancedOnChange?: (value: string) => void;
19
+ finalValue: any;
20
+ warnText?: ReactNode;
21
+ selectFormat: (value: 'AM' | 'PM') => void;
22
+ selectTimezone: (value: string) => void;
23
+ }
24
+
25
+ export type TimePickerBaseProps = InternalTimePickerBaseProps & FormGroupProps;
26
+
27
+ declare const TimePickerBase: React.ComponentType<TimePickerBaseProps>;
28
+
29
+ export default TimePickerBase;
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _TimePicker = _interopRequireDefault(require("carbon-components-react/lib/components/TimePicker/TimePicker.js"));
19
+
20
+ var _TimePickerSelect = _interopRequireDefault(require("carbon-components-react/lib/components/TimePickerSelect/TimePickerSelect.js"));
21
+
22
+ var _SelectItem = _interopRequireDefault(require("carbon-components-react/lib/components/SelectItem/SelectItem.js"));
23
+
24
+ var _helperTextBlock = _interopRequireDefault(require("../helper-text-block/helper-text-block"));
25
+
26
+ var _excluded = ["WrapperProps", "input", "enhnancedOnBlur", "enhancedOnChange", "finalValue", "invalid", "twelveHoursFormat", "timezones", "helperText", "warnText", "selectFormat", "selectTimezone"],
27
+ _excluded2 = ["showAs"];
28
+
29
+ var TimePickerBase = function TimePickerBase(_ref) {
30
+ var WrapperProps = _ref.WrapperProps,
31
+ input = _ref.input,
32
+ enhnancedOnBlur = _ref.enhnancedOnBlur,
33
+ enhancedOnChange = _ref.enhancedOnChange,
34
+ finalValue = _ref.finalValue,
35
+ invalid = _ref.invalid,
36
+ twelveHoursFormat = _ref.twelveHoursFormat,
37
+ timezones = _ref.timezones,
38
+ helperText = _ref.helperText,
39
+ warnText = _ref.warnText,
40
+ selectFormat = _ref.selectFormat,
41
+ selectTimezone = _ref.selectTimezone,
42
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
43
+ return /*#__PURE__*/_react["default"].createElement("div", WrapperProps, /*#__PURE__*/_react["default"].createElement(_TimePicker["default"], (0, _extends2["default"])({}, input, enhnancedOnBlur && {
44
+ onBlur: enhnancedOnBlur
45
+ }, enhancedOnChange && {
46
+ onChange: function onChange(e) {
47
+ return enhancedOnChange(e.target.value);
48
+ }
49
+ }, {
50
+ onBlur: enhnancedOnBlur,
51
+ value: finalValue,
52
+ key: input.name,
53
+ id: input.name,
54
+ invalid: Boolean(invalid),
55
+ invalidText: invalid || ''
56
+ }, rest), twelveHoursFormat && /*#__PURE__*/_react["default"].createElement(_TimePickerSelect["default"], {
57
+ labelText: "Period",
58
+ id: "".concat(rest.id || input.name, "-12h"),
59
+ onChange: function onChange(_ref2) {
60
+ var value = _ref2.target.value;
61
+ return selectFormat(value);
62
+ }
63
+ }, /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], {
64
+ value: "AM",
65
+ text: "AM"
66
+ }), /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], {
67
+ value: "PM",
68
+ text: "PM"
69
+ })), timezones && /*#__PURE__*/_react["default"].createElement(_TimePickerSelect["default"], {
70
+ labelText: "Timezone",
71
+ id: "".concat(rest.id || input.name, "-timezones"),
72
+ onChange: function onChange(_ref3) {
73
+ var value = _ref3.target.value;
74
+ return selectTimezone(value);
75
+ }
76
+ }, timezones.map(function (_ref4) {
77
+ var showAs = _ref4.showAs,
78
+ tz = (0, _objectWithoutProperties2["default"])(_ref4, _excluded2);
79
+ return /*#__PURE__*/_react["default"].createElement(_SelectItem["default"], (0, _extends2["default"])({
80
+ key: tz.value,
81
+ text: tz.label
82
+ }, tz));
83
+ }))), /*#__PURE__*/_react["default"].createElement(_helperTextBlock["default"], {
84
+ helperText: !invalid && helperText,
85
+ warnText: warnText
86
+ }));
87
+ };
88
+
89
+ TimePickerBase.propTypes = {
90
+ isDisabled: _propTypes["default"].bool,
91
+ isReadOnly: _propTypes["default"].bool,
92
+ isRequired: _propTypes["default"].bool,
93
+ label: _propTypes["default"].node,
94
+ labelText: _propTypes["default"].node,
95
+ description: _propTypes["default"].node,
96
+ twelveHoursFormat: _propTypes["default"].bool,
97
+ timezones: _propTypes["default"].arrayOf(_propTypes["default"].shape({
98
+ value: _propTypes["default"].string.isRequired,
99
+ label: _propTypes["default"].node.isRequired,
100
+ showAs: _propTypes["default"].string
101
+ })),
102
+ WrapperProps: _propTypes["default"].object,
103
+ input: _propTypes["default"].shape({
104
+ name: _propTypes["default"].string
105
+ }).isRequired,
106
+ enhnancedOnBlur: _propTypes["default"].func,
107
+ enhancedOnChange: _propTypes["default"].func,
108
+ finalValue: _propTypes["default"].any,
109
+ invalid: _propTypes["default"].node,
110
+ helperText: _propTypes["default"].node,
111
+ warnText: _propTypes["default"].node,
112
+ selectFormat: _propTypes["default"].func.isRequired,
113
+ selectTimezone: _propTypes["default"].func.isRequired
114
+ };
115
+ var _default = TimePickerBase;
116
+ exports["default"] = _default;
@@ -0,0 +1,2 @@
1
+ export { default } from './time-picker-date';
2
+ export * from './time-picker-date';
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {};
9
+ Object.defineProperty(exports, "default", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _timePickerDate["default"];
13
+ }
14
+ });
15
+
16
+ var _timePickerDate = _interopRequireWildcard(require("./time-picker-date"));
17
+
18
+ Object.keys(_timePickerDate).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
+ if (key in exports && exports[key] === _timePickerDate[key]) return;
22
+ Object.defineProperty(exports, key, {
23
+ enumerable: true,
24
+ get: function get() {
25
+ return _timePickerDate[key];
26
+ }
27
+ });
28
+ });
29
+
30
+ 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); }
31
+
32
+ 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; }
@@ -0,0 +1 @@
1
+ {"main":"index.js","module":"../esm/time-picker-date","typings":"index.d.ts"}
@@ -0,0 +1,21 @@
1
+ import { UseFieldApiComponentConfig } from "@data-driven-forms/react-form-renderer";
2
+
3
+ import { FormGroupProps } from "../form-group";
4
+
5
+ import { TimePickerProps as CarbonTimePickerProps, SelectItemProps } from 'carbon-components-react';
6
+
7
+ export interface Timezone extends SelectItemProps {
8
+ value: string;
9
+ label?: string;
10
+ }
11
+
12
+ interface InternalTimePickerProps extends CarbonTimePickerProps {
13
+ twelveHoursFormat?: boolean;
14
+ timezones?: Timezone[];
15
+ }
16
+
17
+ export type TimePickerDateProps = InternalTimePickerProps & FormGroupProps & UseFieldApiComponentConfig;
18
+
19
+ declare const TimePickerDate: React.ComponentType<TimePickerDateProps>;
20
+
21
+ export default TimePickerDate;
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _propTypes = _interopRequireDefault(require("prop-types"));
21
+
22
+ var _useFieldApi2 = _interopRequireDefault(require("@data-driven-forms/react-form-renderer/use-field-api"));
23
+
24
+ var _prepareProps = _interopRequireDefault(require("../prepare-props"));
25
+
26
+ var _timePickerBase = _interopRequireDefault(require("../time-picker-base"));
27
+
28
+ var _excluded = ["input", "meta", "twelveHoursFormat", "timezones", "validateOnMount", "helperText", "WrapperProps"];
29
+
30
+ 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); }
31
+
32
+ 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; }
33
+
34
+ var TimePickerDate = function TimePickerDate(props) {
35
+ var _timezones$;
36
+
37
+ var _useFieldApi = (0, _useFieldApi2["default"])((0, _prepareProps["default"])(props)),
38
+ input = _useFieldApi.input,
39
+ meta = _useFieldApi.meta,
40
+ twelveHoursFormat = _useFieldApi.twelveHoursFormat,
41
+ timezones = _useFieldApi.timezones,
42
+ validateOnMount = _useFieldApi.validateOnMount,
43
+ helperText = _useFieldApi.helperText,
44
+ WrapperProps = _useFieldApi.WrapperProps,
45
+ rest = (0, _objectWithoutProperties2["default"])(_useFieldApi, _excluded);
46
+
47
+ var _useState = (0, _react.useState)(timezones ? (_timezones$ = timezones[0]) === null || _timezones$ === void 0 ? void 0 : _timezones$.value : ''),
48
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
49
+ timezone = _useState2[0],
50
+ selectTimezone = _useState2[1];
51
+
52
+ var _useState3 = (0, _react.useState)('AM'),
53
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
54
+ format = _useState4[0],
55
+ selectFormat = _useState4[1];
56
+
57
+ var isMounted = (0, _react.useRef)(false);
58
+ var invalid = (meta.touched || validateOnMount) && (meta.error || meta.submitError);
59
+ var warnText = (meta.touched || validateOnMount) && meta.warning;
60
+ var finalValue = input.value;
61
+
62
+ if (input.value instanceof Date) {
63
+ var _timezones$find;
64
+
65
+ var _input$value$toLocale = input.value.toLocaleTimeString('en-us', {
66
+ hour12: !!twelveHoursFormat,
67
+ timeZone: timezones === null || timezones === void 0 ? void 0 : (_timezones$find = timezones.find(function (_ref) {
68
+ var value = _ref.value;
69
+ return value === timezone;
70
+ })) === null || _timezones$find === void 0 ? void 0 : _timezones$find.showAs
71
+ }).split(':'),
72
+ _input$value$toLocale2 = (0, _slicedToArray2["default"])(_input$value$toLocale, 2),
73
+ _input$value$toLocale3 = _input$value$toLocale2[0],
74
+ hours = _input$value$toLocale3 === void 0 ? '00' : _input$value$toLocale3,
75
+ _input$value$toLocale4 = _input$value$toLocale2[1],
76
+ minutes = _input$value$toLocale4 === void 0 ? '00' : _input$value$toLocale4;
77
+
78
+ finalValue = "".concat(String(hours).padStart(2, '0'), ":").concat(String(minutes).padStart(2, '0'));
79
+ }
80
+
81
+ var enhnancedOnBlur = function enhnancedOnBlur() {
82
+ var _finalValue;
83
+
84
+ var _ref2 = ((_finalValue = finalValue) === null || _finalValue === void 0 ? void 0 : _finalValue.split(':')) || [],
85
+ _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
86
+ _ref3$ = _ref3[0],
87
+ hours = _ref3$ === void 0 ? '00' : _ref3$,
88
+ _ref3$2 = _ref3[1],
89
+ minutes = _ref3$2 === void 0 ? '00' : _ref3$2;
90
+
91
+ if (!hours || isNaN(hours)) {
92
+ hours = '00';
93
+ }
94
+
95
+ if (!minutes || isNaN(minutes)) {
96
+ minutes = '00';
97
+ }
98
+
99
+ if (twelveHoursFormat) {
100
+ hours = hours % 12;
101
+
102
+ if (format === 'PM') {
103
+ hours = hours + 12;
104
+ }
105
+ } else {
106
+ hours = hours % 24;
107
+ }
108
+
109
+ minutes = minutes % 59;
110
+ var enhancedValue = new Date("Jan 1 2000 ".concat(hours, ":").concat(minutes, ":00 ").concat(timezone));
111
+ input.onChange(enhancedValue);
112
+ input.onBlur();
113
+ };
114
+
115
+ (0, _react.useEffect)(function () {
116
+ if (isMounted.current === true) {
117
+ enhnancedOnBlur();
118
+ } else {
119
+ isMounted.current = true;
120
+ }
121
+ }, [timezone, format]);
122
+ return /*#__PURE__*/_react["default"].createElement(_timePickerBase["default"], (0, _extends2["default"])({
123
+ WrapperProps: WrapperProps,
124
+ input: input,
125
+ enhnancedOnBlur: enhnancedOnBlur,
126
+ finalValue: finalValue,
127
+ invalid: invalid,
128
+ twelveHoursFormat: twelveHoursFormat,
129
+ timezones: timezones,
130
+ helperText: helperText,
131
+ warnText: warnText,
132
+ selectFormat: selectFormat,
133
+ selectTimezone: selectTimezone
134
+ }, rest));
135
+ };
136
+
137
+ TimePickerDate.propTypes = {
138
+ isDisabled: _propTypes["default"].bool,
139
+ isReadOnly: _propTypes["default"].bool,
140
+ isRequired: _propTypes["default"].bool,
141
+ label: _propTypes["default"].node,
142
+ labelText: _propTypes["default"].node,
143
+ description: _propTypes["default"].node,
144
+ twelveHoursFormat: _propTypes["default"].bool,
145
+ timezones: _propTypes["default"].arrayOf(_propTypes["default"].shape({
146
+ value: _propTypes["default"].string.isRequired,
147
+ label: _propTypes["default"].node.isRequired,
148
+ showAs: _propTypes["default"].string
149
+ })),
150
+ WrapperProps: _propTypes["default"].object
151
+ };
152
+ var _default = TimePickerDate;
153
+ exports["default"] = _default;
@@ -0,0 +1,2 @@
1
+ export { default } from './time-picker-string';
2
+ export * from './time-picker-string';
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {};
9
+ Object.defineProperty(exports, "default", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _timePickerString["default"];
13
+ }
14
+ });
15
+
16
+ var _timePickerString = _interopRequireWildcard(require("./time-picker-string"));
17
+
18
+ Object.keys(_timePickerString).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
+ if (key in exports && exports[key] === _timePickerString[key]) return;
22
+ Object.defineProperty(exports, key, {
23
+ enumerable: true,
24
+ get: function get() {
25
+ return _timePickerString[key];
26
+ }
27
+ });
28
+ });
29
+
30
+ 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); }
31
+
32
+ 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; }
@@ -0,0 +1 @@
1
+ {"main":"index.js","module":"../esm/time-picker-string","typings":"index.d.ts"}
@@ -0,0 +1,21 @@
1
+ import { UseFieldApiComponentConfig } from "@data-driven-forms/react-form-renderer";
2
+
3
+ import { FormGroupProps } from "../form-group";
4
+
5
+ import { TimePickerProps as CarbonTimePickerProps, SelectItemProps } from 'carbon-components-react';
6
+
7
+ export interface Timezone extends SelectItemProps {
8
+ value: string;
9
+ label?: string;
10
+ }
11
+
12
+ interface InternalTimePickerProps extends CarbonTimePickerProps {
13
+ twelveHoursFormat?: boolean;
14
+ timezones?: Timezone[];
15
+ }
16
+
17
+ export type TimePickerStringProps = InternalTimePickerProps & FormGroupProps & UseFieldApiComponentConfig;
18
+
19
+ declare const TimePickerString: React.ComponentType<TimePickerStringProps>;
20
+
21
+ export default TimePickerString;