colibri-ui 0.7.110 → 0.7.112

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 (72) hide show
  1. package/Avatar/Avatar.module.css +1 -1
  2. package/Calendar/components/Month/Month.d.ts +2 -0
  3. package/Calendar/components/Month/Month.js +1 -1
  4. package/Calendar/components/Month/index.module.css +1 -1
  5. package/Calendar/index.d.ts +2 -18
  6. package/Calendar/index.js +28 -18
  7. package/Calendar/index.module.css +2 -7
  8. package/Calendar/index.props.d.ts +21 -0
  9. package/Checkbox/Checkbox.module.css +2 -2
  10. package/Datepicker/Datepicker.module.css +5 -0
  11. package/Datepicker/components/DatePicker/index.d.ts +7 -0
  12. package/Datepicker/components/DatePicker/index.js +52 -0
  13. package/Datepicker/components/DatePicker/index.module.css +33 -0
  14. package/Datepicker/components/TimePicker/Label/index.d.ts +8 -0
  15. package/Datepicker/components/TimePicker/Label/index.js +23 -0
  16. package/Datepicker/components/TimePicker/helpers.d.ts +12 -0
  17. package/Datepicker/components/TimePicker/helpers.js +41 -0
  18. package/Datepicker/components/TimePicker/index.d.ts +9 -0
  19. package/Datepicker/components/TimePicker/index.js +80 -0
  20. package/Datepicker/components/TimePicker/index.module.css +67 -0
  21. package/Datepicker/index.d.ts +8 -0
  22. package/Datepicker/index.js +31 -0
  23. package/Datepicker/package.json +6 -0
  24. package/Dropdown/index.js +25 -18
  25. package/Dropdown/index.props.d.ts +2 -0
  26. package/Menu/components/MenuItem/MenuItem.module.css +5 -5
  27. package/Menu/components/MenuItem/index.js +1 -1
  28. package/Select/index.d.ts +1 -1
  29. package/Select/index.js +5 -2
  30. package/Select/index.module.css +1 -1
  31. package/Select/index.props.d.ts +2 -0
  32. package/TimeSelect/index.d.ts +1 -1
  33. package/esm/Avatar/Avatar.module.css +1 -1
  34. package/esm/Calendar/components/Month/Month.d.ts +2 -0
  35. package/esm/Calendar/components/Month/Month.js +1 -1
  36. package/esm/Calendar/components/Month/index.module.css +1 -1
  37. package/esm/Calendar/index.d.ts +2 -18
  38. package/esm/Calendar/index.js +28 -18
  39. package/esm/Calendar/index.module.css +2 -7
  40. package/esm/Calendar/index.props.d.ts +21 -0
  41. package/esm/Checkbox/Checkbox.module.css +2 -2
  42. package/esm/Datepicker/Datepicker.module.css +5 -0
  43. package/esm/Datepicker/components/DatePicker/index.d.ts +7 -0
  44. package/esm/Datepicker/components/DatePicker/index.js +42 -0
  45. package/esm/Datepicker/components/DatePicker/index.module.css +33 -0
  46. package/esm/Datepicker/components/TimePicker/Label/index.d.ts +8 -0
  47. package/esm/Datepicker/components/TimePicker/Label/index.js +15 -0
  48. package/esm/Datepicker/components/TimePicker/helpers.d.ts +12 -0
  49. package/esm/Datepicker/components/TimePicker/helpers.js +35 -0
  50. package/esm/Datepicker/components/TimePicker/index.d.ts +9 -0
  51. package/esm/Datepicker/components/TimePicker/index.js +70 -0
  52. package/esm/Datepicker/components/TimePicker/index.module.css +67 -0
  53. package/esm/Datepicker/index.d.ts +8 -0
  54. package/esm/Datepicker/index.js +21 -0
  55. package/esm/Dropdown/index.js +25 -18
  56. package/esm/Dropdown/index.props.d.ts +2 -0
  57. package/esm/Menu/components/MenuItem/MenuItem.module.css +5 -5
  58. package/esm/Menu/components/MenuItem/index.js +1 -1
  59. package/esm/Select/index.d.ts +1 -1
  60. package/esm/Select/index.js +5 -2
  61. package/esm/Select/index.module.css +1 -1
  62. package/esm/Select/index.props.d.ts +2 -0
  63. package/esm/TimeSelect/index.d.ts +1 -1
  64. package/esm/helpers/date/index.d.ts +1 -0
  65. package/esm/helpers/date/index.js +5 -1
  66. package/esm/index.d.ts +1 -0
  67. package/esm/index.js +1 -0
  68. package/helpers/date/index.d.ts +1 -0
  69. package/helpers/date/index.js +5 -0
  70. package/index.d.ts +1 -0
  71. package/index.js +55 -53
  72. package/package.json +1 -1
@@ -4,9 +4,9 @@
4
4
  transition: border-color 0.15s ease;
5
5
  }
6
6
  .avatar_bordered {
7
- padding: 3px;
8
7
  background-color: var(--palette-white);
9
8
  border: 3px solid var(--palette-bg-2);
9
+ padding: 3px;
10
10
  }
11
11
  .avatar_bordered:hover {
12
12
  border-color: var(--palette-bg-4);
@@ -1,3 +1,4 @@
1
+ import type { CalendarTitleSize } from "../../index.props";
1
2
  import type { FunctionComponent } from "react";
2
3
  export interface FCWithElements<T = {}> extends FunctionComponent<T> {
3
4
  }
@@ -10,6 +11,7 @@ type Props = {
10
11
  onDayClick: (date: string) => void;
11
12
  offsetLeft: number;
12
13
  availableDates?: string[];
14
+ titleSize?: CalendarTitleSize;
13
15
  };
14
16
  export declare const Month: FCWithElements<Props>;
15
17
  export {};
@@ -72,7 +72,7 @@ var Month = function Month(props) {
72
72
  className: clx(styles__default.default["month-name"])
73
73
  }, /*#__PURE__*/React__namespace.createElement(index.default, {
74
74
  tag: "span",
75
- size: "h3"
75
+ size: props.titleSize
76
76
  }, index$1.getUpperMonthName(props.startDate))), /*#__PURE__*/React__namespace.createElement("div", {
77
77
  className: clx(styles__default.default.table)
78
78
  }, /*#__PURE__*/React__namespace.createElement("ul", {
@@ -5,7 +5,7 @@
5
5
  }
6
6
 
7
7
  .month-name {
8
- padding: 6px 0 25px;
8
+ padding: 7px 0 25px;
9
9
  text-align: center;
10
10
  }
11
11
 
@@ -1,20 +1,4 @@
1
1
  import React from "react";
2
- import type { Preset } from "./components/Presets";
3
- type ChangePayload = {
4
- date: string;
5
- period: number;
6
- };
7
- type Props = {
8
- today: string;
9
- selectedDate?: string;
10
- selectedPeriod?: number;
11
- canSelectRange?: boolean;
12
- activeDates?: string[];
13
- datePresets?: Preset[];
14
- availableDates?: string[];
15
- onChange?: (payload: ChangePayload) => void;
16
- onCancel?: () => void;
17
- withContinueButton?: boolean;
18
- };
19
- declare const Calendar: React.FC<Props>;
2
+ import type { CalendarProps } from "./index.props";
3
+ declare const Calendar: React.FC<CalendarProps>;
20
4
  export default Calendar;
package/Calendar/index.js CHANGED
@@ -36,20 +36,25 @@ var Calendar = function Calendar(_a) {
36
36
  canSelectRange = _a.canSelectRange,
37
37
  onChange = _a.onChange,
38
38
  onCancel = _a.onCancel,
39
- _b = _a.withContinueButton,
40
- withContinueButton = _b === void 0 ? false : _b;
39
+ _b = _a.minWidth,
40
+ minWidth = _b === void 0 ? 360 : _b,
41
+ _c = _a.withContinueButton,
42
+ withContinueButton = _c === void 0 ? false : _c,
43
+ className = _a.className,
44
+ _d = _a.titleSize,
45
+ titleSize = _d === void 0 ? "h3" : _d;
41
46
  var $root = React.useRef(null);
42
47
  var startMonth = getStartMonth.getStartMonth({
43
48
  today: today,
44
49
  activeDates: activeDates
45
50
  });
46
- var _c = React.useState(initialSelectedDate),
47
- selectedDate = _c[0],
48
- setSelectedDate = _c[1];
49
- var _d = React.useState(initialSelectedPeriod),
50
- selectedPeriod = _d[0],
51
- setSelectedPeriod = _d[1];
52
- var _e = React.useState(function () {
51
+ var _e = React.useState(initialSelectedDate),
52
+ selectedDate = _e[0],
53
+ setSelectedDate = _e[1];
54
+ var _f = React.useState(initialSelectedPeriod),
55
+ selectedPeriod = _f[0],
56
+ setSelectedPeriod = _f[1];
57
+ var _g = React.useState(function () {
53
58
  if (initialSelectedDate) {
54
59
  return getNumberOfMonthsBetweenDates.getNumberOfMonthsBetweenDates(startMonth, initialSelectedDate);
55
60
  } else if (activeDates && activeDates.length) {
@@ -57,14 +62,14 @@ var Calendar = function Calendar(_a) {
57
62
  }
58
63
  return 0;
59
64
  }),
60
- currentMonthOffset = _e[0],
61
- setCurrentMonthOffset = _e[1];
62
- var _f = React.useState(0),
63
- contentWidth = _f[0],
64
- setContentWidth = _f[1];
65
- var _g = React.useState(true),
66
- isRangeCompleted = _g[0],
67
- setIsRangeCompleted = _g[1];
65
+ currentMonthOffset = _g[0],
66
+ setCurrentMonthOffset = _g[1];
67
+ var _h = React.useState(0),
68
+ contentWidth = _h[0],
69
+ setContentWidth = _h[1];
70
+ var _j = React.useState(true),
71
+ isRangeCompleted = _j[0],
72
+ setIsRangeCompleted = _j[1];
68
73
  React.useEffect(function () {
69
74
  var _a;
70
75
  setContentWidth(((_a = $root.current) === null || _a === void 0 ? void 0 : _a.offsetWidth) || 0);
@@ -149,7 +154,10 @@ var Calendar = function Calendar(_a) {
149
154
  onDayClick: handleDayClick
150
155
  };
151
156
  return /*#__PURE__*/React__default.default.createElement("div", {
152
- className: clx(styles__default.default.root),
157
+ className: clx(styles__default.default.root, className),
158
+ style: {
159
+ minWidth: "".concat(minWidth, "px")
160
+ },
153
161
  "data-testid": "calendar",
154
162
  ref: $root
155
163
  }, /*#__PURE__*/React__default.default.createElement("div", null, contentWidth ? (/*#__PURE__*/React__default.default.createElement("div", {
@@ -167,9 +175,11 @@ var Calendar = function Calendar(_a) {
167
175
  offsetLeft: index * contentWidth
168
176
  });
169
177
  return /*#__PURE__*/React__default.default.createElement(Month.Month, tslib.__assign({}, attrs, {
178
+ titleSize: titleSize,
170
179
  key: "month-".concat(index)
171
180
  }));
172
181
  }))) : (/*#__PURE__*/React__default.default.createElement(Month.Month, tslib.__assign({
182
+ titleSize: titleSize,
173
183
  today: today,
174
184
  startDate: getMonthStartDate(currentMonthOffset),
175
185
  offsetLeft: 0
@@ -3,18 +3,13 @@
3
3
  flex-direction: column;
4
4
  -moz-osx-font-smoothing: grayscale;
5
5
  -webkit-font-smoothing: antialiased;
6
- gap: 16px;
7
- min-width: 300px;
6
+ gap: 1rem;
7
+ min-width: 360px;
8
8
  overflow: hidden;
9
9
  position: relative;
10
10
  text-rendering: optimizelegibility;
11
11
  text-size-adjust: 100%;
12
12
  }
13
- @media (width >= 360px) {
14
- .root {
15
- min-width: 360px;
16
- }
17
- }
18
13
 
19
14
  .month-control {
20
15
  background: transparent;
@@ -0,0 +1,21 @@
1
+ import type { Preset } from "./components/Presets";
2
+ export type CalendarPayload = {
3
+ date: string;
4
+ period: number;
5
+ };
6
+ export type CalendarTitleSize = "xs" | "s" | "m" | "l" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
7
+ export type CalendarProps = {
8
+ today: string;
9
+ selectedDate?: string;
10
+ selectedPeriod?: number;
11
+ canSelectRange?: boolean;
12
+ activeDates?: string[];
13
+ datePresets?: Preset[];
14
+ availableDates?: string[];
15
+ onChange?: (payload: CalendarPayload) => void;
16
+ onCancel?: () => void;
17
+ withContinueButton?: boolean;
18
+ className?: string;
19
+ minWidth?: number;
20
+ titleSize?: CalendarTitleSize;
21
+ };
@@ -57,8 +57,8 @@
57
57
  box-shadow: 0 0 0 2px var(--palette-alert);
58
58
  }
59
59
  .variant_primary_checked::after {
60
- border-block-end: 2px solid var(--palette-white);
61
- border-inline-end: 2px solid var(--palette-white);
60
+ border-block-end: 2px solid var(--palette-black);
61
+ border-inline-end: 2px solid var(--palette-black);
62
62
  }
63
63
 
64
64
  .control {
@@ -0,0 +1,5 @@
1
+ .root {
2
+ display: flex;
3
+ flex-shrink: 0;
4
+ font-size: 14px;
5
+ }
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type Props = {
3
+ className?: string;
4
+ selectedDate?: string;
5
+ };
6
+ declare const DatePicker: ({ className, selectedDate }: Props) => React.JSX.Element;
7
+ export default DatePicker;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var classNames = require('classnames/bind');
7
+ var index = require('../../../Dropdown/index.js');
8
+ var index$1 = require('../../../Calendar/index.js');
9
+ var index$2 = require('../../../helpers/date/index.js');
10
+ var styles = require('./index.module.css');
11
+
12
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefault(React);
15
+ var classNames__default = /*#__PURE__*/_interopDefault(classNames);
16
+ var styles__default = /*#__PURE__*/_interopDefault(styles);
17
+
18
+ var clx = classNames__default.default.bind(styles__default.default);
19
+ var DatePicker = function DatePicker(_a) {
20
+ var className = _a.className,
21
+ _b = _a.selectedDate,
22
+ selectedDate = _b === void 0 ? "" : _b;
23
+ var _c = React.useState(selectedDate),
24
+ date = _c[0],
25
+ setDate = _c[1];
26
+ return /*#__PURE__*/React__default.default.createElement("div", {
27
+ className: clx(styles__default.default.root, className)
28
+ }, /*#__PURE__*/React__default.default.createElement("div", {
29
+ className: clx(styles__default.default["date-picker"])
30
+ }, /*#__PURE__*/React__default.default.createElement(index.default, {
31
+ placement: "bottom",
32
+ preventAutoClose: true,
33
+ fontSize: 14,
34
+ trigger: ["click"],
35
+ overlay: /*#__PURE__*/React__default.default.createElement(index$1.default, {
36
+ minWidth: 260,
37
+ className: styles__default.default.calendar,
38
+ today: index$2.toISODate(new Date()),
39
+ titleSize: "h5",
40
+ selectedDate: date,
41
+ onChange: function onChange(payload) {
42
+ setDate(payload.date);
43
+ }
44
+ })
45
+ }, /*#__PURE__*/React__default.default.createElement("input", {
46
+ className: clx(styles__default.default["date-picker-input-control"]),
47
+ value: index$2.toDMYDate(date),
48
+ readOnly: true
49
+ }))));
50
+ };
51
+
52
+ exports.default = DatePicker;
@@ -0,0 +1,33 @@
1
+ .root {
2
+ width: 100px;
3
+ }
4
+ .root:focus-within {
5
+ z-index: 2;
6
+ }
7
+
8
+ .date-picker {
9
+ display: inline-block;
10
+ }
11
+
12
+ .date-picker-input-control {
13
+ background-color: var(--palette-white);
14
+ border: 0;
15
+ border-radius: 0.375rem;
16
+ border-bottom-left-radius: 0;
17
+ border-top-left-radius: 0;
18
+ box-shadow: inset 0 0 0 1px var(--palette-bg-3);
19
+ box-sizing: border-box;
20
+ color: var(--palette-black);
21
+ font-size: 14px;
22
+ height: 36px;
23
+ outline: 0;
24
+ padding: 0 10px;
25
+ width: 100%;
26
+ }
27
+ .date-picker-input-control:focus {
28
+ box-shadow: inset 0 0 0 1px var(--palette-primary-3), 0 0 0 2px var(--palette-primary-2);
29
+ }
30
+
31
+ .calendar {
32
+ max-width: 250px;
33
+ }
@@ -0,0 +1,8 @@
1
+ import type { FC } from "react";
2
+ type OptionLabelProps = {
3
+ time: string;
4
+ onClick?: () => void;
5
+ onMouseEnter?: () => void;
6
+ };
7
+ declare const OptionLabel: FC<OptionLabelProps>;
8
+ export default OptionLabel;
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var React__default = /*#__PURE__*/_interopDefault(React);
10
+
11
+ var OptionLabel = function OptionLabel(_a) {
12
+ var time = _a.time,
13
+ onClick = _a.onClick,
14
+ onMouseEnter = _a.onMouseEnter;
15
+ var ref = React.useRef(null);
16
+ return /*#__PURE__*/React__default.default.createElement("span", {
17
+ onClick: onClick,
18
+ onMouseEnter: onMouseEnter,
19
+ ref: ref
20
+ }, time);
21
+ };
22
+
23
+ exports.default = OptionLabel;
@@ -0,0 +1,12 @@
1
+ export type Timestamp = {
2
+ time: string;
3
+ disabled?: boolean;
4
+ };
5
+ export declare const DEFAULT_TIME: {
6
+ index: number;
7
+ time: string;
8
+ };
9
+ export declare const formatTime: (date: Date) => string;
10
+ export declare const generateSuggest: (interval?: number) => Timestamp[];
11
+ export declare const checkIsBeforeNow: (time: string, currentDate?: Date | null) => boolean;
12
+ export declare const checkIsBeforeSelectedDate: (time: string, interval: number, date?: Date | null) => boolean;
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var dateFns = require('date-fns');
4
+
5
+ var day = new Date();
6
+ day.setHours(24, 0, 0, 0);
7
+ var DEFAULT_TIME = {
8
+ index: 24,
9
+ time: "12:00"
10
+ };
11
+ var formatTime = function formatTime(date) {
12
+ return dateFns.format(date, "HH:mm");
13
+ };
14
+ var generateSuggest = function generateSuggest(interval) {
15
+ if (interval === void 0) {
16
+ interval = 15;
17
+ }
18
+ return new Array(24 * 60 / interval).fill(null).map(function (_, index) {
19
+ var date = dateFns.addMinutes(day, index * interval);
20
+ return {
21
+ time: formatTime(date)
22
+ };
23
+ });
24
+ };
25
+ var checkIsBeforeNow = function checkIsBeforeNow(time, currentDate) {
26
+ return currentDate ? dateFns.isBefore(dateFns.parse(time, "HH:mm", currentDate), new Date()) : false;
27
+ };
28
+ var checkIsBeforeSelectedDate = function checkIsBeforeSelectedDate(time, interval, date) {
29
+ if (date) {
30
+ var selectedDate = new Date(date);
31
+ selectedDate.setMinutes(selectedDate.getMinutes() + interval);
32
+ return dateFns.isBefore(dateFns.parse(time, "HH:mm", date), selectedDate);
33
+ }
34
+ return false;
35
+ };
36
+
37
+ exports.DEFAULT_TIME = DEFAULT_TIME;
38
+ exports.checkIsBeforeNow = checkIsBeforeNow;
39
+ exports.checkIsBeforeSelectedDate = checkIsBeforeSelectedDate;
40
+ exports.formatTime = formatTime;
41
+ exports.generateSuggest = generateSuggest;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ interface TimePickerProps {
3
+ className?: string;
4
+ interval?: 5 | 10 | 15 | 30;
5
+ value?: string;
6
+ selectedTime?: string;
7
+ }
8
+ declare const _default: React.MemoExoticComponent<({ className, interval, selectedTime, }: TimePickerProps) => React.JSX.Element>;
9
+ export default _default;
@@ -0,0 +1,80 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var React = require('react');
7
+ var classNames = require('classnames/bind');
8
+ var index$1 = require('../../../Select/index.js');
9
+ var styles = require('./index.module.css');
10
+ var helpers = require('./helpers.js');
11
+ var index = require('./Label/index.js');
12
+
13
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
+
15
+ var React__default = /*#__PURE__*/_interopDefault(React);
16
+ var classNames__default = /*#__PURE__*/_interopDefault(classNames);
17
+ var styles__default = /*#__PURE__*/_interopDefault(styles);
18
+
19
+ var clx = classNames__default.default.bind(styles__default.default);
20
+ var TimePicker = function TimePicker(_a) {
21
+ var className = _a.className,
22
+ _b = _a.interval,
23
+ interval = _b === void 0 ? 30 : _b,
24
+ _c = _a.selectedTime,
25
+ selectedTime = _c === void 0 ? "" : _c;
26
+ var _d = React.useState(selectedTime),
27
+ time = _d[0],
28
+ setTime = _d[1];
29
+ var baseOptions = React.useMemo(function () {
30
+ return helpers.generateSuggest(interval).map(function (item) {
31
+ return {
32
+ value: item.time,
33
+ label: /*#__PURE__*/React__default.default.createElement(index.default, {
34
+ time: item.time
35
+ })
36
+ };
37
+ });
38
+ }, [interval]);
39
+ var options = React.useMemo(function () {
40
+ return baseOptions.map(function (option) {
41
+ return tslib.__assign(tslib.__assign({}, option), {
42
+ disabled: false
43
+ });
44
+ });
45
+ }, [baseOptions, interval]);
46
+ return /*#__PURE__*/React__default.default.createElement("div", {
47
+ className: clx(styles__default.default.root, className)
48
+ }, /*#__PURE__*/React__default.default.createElement("div", {
49
+ className: clx(styles__default.default["time-picker"])
50
+ }, /*#__PURE__*/React__default.default.createElement("span", {
51
+ className: clx(styles__default.default["time-input-wrapper"])
52
+ }, /*#__PURE__*/React__default.default.createElement("span", {
53
+ className: clx(styles__default.default.select)
54
+ }, /*#__PURE__*/React__default.default.createElement("span", {
55
+ className: clx(styles__default.default["text-input"])
56
+ }, /*#__PURE__*/React__default.default.createElement(index$1.default, {
57
+ value: time,
58
+ className: clx(styles__default.default["select-input-control"]),
59
+ options: options,
60
+ fontSize: 14,
61
+ customInputRoot: /*#__PURE__*/React__default.default.createElement("input", {
62
+ "aria-expanded": "false",
63
+ "aria-haspopup": "true",
64
+ "aria-invalid": "false",
65
+ autoComplete: "off",
66
+ className: clx(styles__default.default["text-input-control"]),
67
+ maxLength: 5,
68
+ value: time,
69
+ readOnly: true
70
+ }),
71
+ onChange: function onChange(time) {
72
+ return setTime(time);
73
+ }
74
+ }), /*#__PURE__*/React__default.default.createElement("span", {
75
+ className: clx(styles__default.default["text-input-box"])
76
+ }))))));
77
+ };
78
+ var TimePickerInput = /*#__PURE__*/React.memo(TimePicker);
79
+
80
+ exports.default = TimePickerInput;
@@ -0,0 +1,67 @@
1
+ .root {
2
+ width: 88px;
3
+ }
4
+
5
+ .time-picker {
6
+ display: inline-block;
7
+ }
8
+
9
+ .time-input-wrapper {
10
+ display: inline-block;
11
+ }
12
+
13
+ .select {
14
+ display: inline-block;
15
+ max-width: 100%;
16
+ position: relative;
17
+ vertical-align: bottom;
18
+ }
19
+
20
+ .text-input {
21
+ box-sizing: border-box;
22
+ display: inline-block;
23
+ position: relative;
24
+ vertical-align: top;
25
+ width: 100%;
26
+ }
27
+
28
+ .text-input-control {
29
+ background: 0 0;
30
+ border: 0 solid transparent;
31
+ border-width: 8px 16px;
32
+ box-sizing: border-box;
33
+ color: var(--palette-black);
34
+ font-size: 1em;
35
+ height: 36px;
36
+ margin: 0;
37
+ outline: 0;
38
+ padding: 0;
39
+ position: relative;
40
+ -webkit-tap-highlight-color: transparent;
41
+ vertical-align: top;
42
+ width: 100%;
43
+ text-align: center;
44
+ z-index: 2;
45
+ }
46
+
47
+ .text-input-box {
48
+ background-color: var(--palette-white);
49
+ border: 1px solid var(--palette-bg-3);
50
+ border-radius: 0.375rem;
51
+ border-bottom-right-radius: 0;
52
+ border-right-width: 0;
53
+ border-top-right-radius: 0;
54
+ inset: 0;
55
+ box-sizing: border-box;
56
+ display: inline-block;
57
+ height: 36px;
58
+ position: absolute;
59
+ transition: background-color 0.15s linear;
60
+ z-index: 1;
61
+ }
62
+
63
+ .select-input-control:focus-within + .text-input-box {
64
+ border-color: var(--palette-primary-3);
65
+ border-width: 1px;
66
+ box-shadow: 0 0 0 2px var(--palette-primary-2);
67
+ }
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ type Props = {
3
+ className?: string;
4
+ selectedTime?: string;
5
+ selectedDate?: string;
6
+ };
7
+ declare const Datepicker: ({ className, selectedTime, selectedDate }: Props) => React.JSX.Element;
8
+ export default Datepicker;
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var classNames = require('classnames/bind');
7
+ var styles = require('./Datepicker.module.css');
8
+ var index = require('./components/TimePicker/index.js');
9
+ var index$1 = require('./components/DatePicker/index.js');
10
+
11
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefault(React);
14
+ var classNames__default = /*#__PURE__*/_interopDefault(classNames);
15
+ var styles__default = /*#__PURE__*/_interopDefault(styles);
16
+
17
+ var clx = classNames__default.default.bind(styles__default.default);
18
+ var Datepicker = function Datepicker(_a) {
19
+ var className = _a.className,
20
+ selectedTime = _a.selectedTime,
21
+ selectedDate = _a.selectedDate;
22
+ return /*#__PURE__*/React__default.default.createElement("div", {
23
+ className: clx(styles__default.default.root, className)
24
+ }, /*#__PURE__*/React__default.default.createElement(index.default, {
25
+ selectedTime: selectedTime
26
+ }), /*#__PURE__*/React__default.default.createElement(index$1.default, {
27
+ selectedDate: selectedDate
28
+ }));
29
+ };
30
+
31
+ exports.default = Datepicker;
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": false,
3
+ "module": "../esm/Datepicker/index.js",
4
+ "main": "./index.js",
5
+ "types": "./index.d.ts"
6
+ }