@gympass/yoga 7.49.0 → 7.50.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.
@@ -0,0 +1,246 @@
1
+ var _excluded = ["_disabled", "inputFilled"];
2
+
3
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
4
+
5
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
+
7
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
8
+
9
+ function _taggedTemplateLiteralLoose(strings, raw) { if (!raw) { raw = strings.slice(0); } strings.raw = raw; return strings; }
10
+
11
+ /* eslint-disable react/jsx-props-no-spreading */
12
+ import React, { useEffect, useRef, useState, useCallback } from 'react';
13
+ import { Booking, BookingFilled } from '@gympass/yoga-icons';
14
+ import { Text } from '@gympass/yoga';
15
+ import styled, { css } from 'styled-components';
16
+ import { bool, oneOf, func, instanceOf, string } from 'prop-types';
17
+ import moment from 'moment';
18
+ import { theme } from '../../Theme';
19
+ import Calendar from './Calendar';
20
+ var Wrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n position: relative;\n display: inline-block;\n vertical-align: top;\n width: ", ";\n"])), function (props) {
21
+ return props.fullWidth ? '100%' : css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n ", "px\n "])), theme.components.input.width);
22
+ });
23
+
24
+ var getSelectorBorderColor = function getSelectorBorderColor(open, error, disabled, colors, input) {
25
+ if (error) {
26
+ return colors.feedback.attention[1];
27
+ }
28
+
29
+ if (disabled) {
30
+ return colors.elements.backgroundAndDisabled;
31
+ }
32
+
33
+ if (open) {
34
+ return colors.deep;
35
+ }
36
+
37
+ return input.border.color["default"];
38
+ };
39
+
40
+ var Selector = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
41
+ var open = _ref.open,
42
+ error = _ref.error,
43
+ disabled = _ref.disabled,
44
+ _ref$theme$yoga = _ref.theme.yoga,
45
+ components = _ref$theme$yoga.components,
46
+ colors = _ref$theme$yoga.colors,
47
+ spacing = _ref$theme$yoga.spacing;
48
+ return "\n position: relative;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n box-sizing: border-box;\n height: " + components.input.height + "px;\n width: 100%;\n padding: " + spacing.small + "px;\n background-color: " + colors.white + ";\n border-radius: " + components.input.border.radius + "px;\n border-width: " + components.input.border.width + "px;\n border-style: solid;\n border-color: " + getSelectorBorderColor(open, error, disabled, colors, components.input) + "\n color: " + components.input.font.color.focus + ";\n ";
49
+ });
50
+ var Input = styled(Text.Small)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref2) {
51
+ var disabled = _ref2.disabled,
52
+ colors = _ref2.theme.yoga.colors;
53
+ return "\n width: 100%;\n padding: 0;\n border: none;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: " + (!disabled ? colors.text.primary : colors.text.disabled) + "\n ";
54
+ });
55
+ var InputPlaceholder = styled(Text.Small)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref3) {
56
+ var disabled = _ref3.disabled,
57
+ colors = _ref3.theme.yoga.colors;
58
+ return "\n color: " + (!disabled ? colors.text.secondary : colors.text.disabled) + "\n ";
59
+ });
60
+ var TButton = styled.button(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n display: flex;\n align-content: center;\n align-items: center;\n justify-content: flex-end;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: none;\n outline: none;\n background-color: transparent;\n cursor: pointer;\n"])));
61
+ var Panel = styled.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref4) {
62
+ var _ref4$theme$yoga = _ref4.theme.yoga,
63
+ components = _ref4$theme$yoga.components,
64
+ colors = _ref4$theme$yoga.colors,
65
+ radii = _ref4$theme$yoga.radii,
66
+ borders = _ref4$theme$yoga.borders,
67
+ spacing = _ref4$theme$yoga.spacing;
68
+ return "\n position: absolute;\n background-color: " + colors.white + ";\n border: " + borders.small + "px solid " + colors.elements.lineAndBorders + ";\n z-index: 1;\n width: " + components.input.width + "px;\n left: 0;\n border-radius: " + radii.regular + "px;\n margin-top: " + spacing.xxsmall + "px;\n ";
69
+ });
70
+ var CalendarIcon = styled(function (_ref5) {
71
+ var _disabled = _ref5._disabled,
72
+ inputFilled = _ref5.inputFilled,
73
+ props = _objectWithoutPropertiesLoose(_ref5, _excluded);
74
+
75
+ return !inputFilled ? /*#__PURE__*/React.createElement(Booking, _extends({
76
+ width: 20,
77
+ height: 20
78
+ }, props)) : /*#__PURE__*/React.createElement(BookingFilled, _extends({
79
+ width: 20,
80
+ height: 20
81
+ }, props));
82
+ })(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref6) {
83
+ var disabled = _ref6.disabled,
84
+ _ref6$theme$yoga = _ref6.theme.yoga,
85
+ colors = _ref6$theme$yoga.colors,
86
+ spacing = _ref6$theme$yoga.spacing;
87
+ return "\n fill: " + (disabled ? colors.text.disabled : colors.text.primary) + ";\n margin-right: " + spacing.xxsmall + "px;\n ";
88
+ });
89
+ var ErrorWrapper = styled(Text.Small)(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref7) {
90
+ var _ref7$theme$yoga = _ref7.theme.yoga,
91
+ colors = _ref7$theme$yoga.colors,
92
+ components = _ref7$theme$yoga.components;
93
+ return "\n margin-top: " + components.input.helper.margin.top + "px;\n font-size: " + components.input.helper.font.size + "px;\n color: " + colors.feedback.attention[1] + ";\n position: absolute;\n ";
94
+ });
95
+ export var toUTC = function toUTC(date) {
96
+ return new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds());
97
+ };
98
+
99
+ function Datepicker(_ref8) {
100
+ var fullWidth = _ref8.fullWidth,
101
+ type = _ref8.type,
102
+ placeholder = _ref8.placeholder,
103
+ startDate = _ref8.startDate,
104
+ endDate = _ref8.endDate,
105
+ onSelectSingle = _ref8.onSelectSingle,
106
+ disabled = _ref8.disabled,
107
+ onSelectRange = _ref8.onSelectRange,
108
+ disablePastDates = _ref8.disablePastDates,
109
+ disableFutureDates = _ref8.disableFutureDates,
110
+ error = _ref8.error,
111
+ onOpen = _ref8.onOpen;
112
+
113
+ var _useState = useState(),
114
+ open = _useState[0],
115
+ setOpen = _useState[1];
116
+
117
+ var _useState2 = useState(startDate),
118
+ startD = _useState2[0],
119
+ setStartDate = _useState2[1];
120
+
121
+ var _useState3 = useState(endDate),
122
+ endD = _useState3[0],
123
+ setEndDate = _useState3[1];
124
+
125
+ var ref = useRef(null);
126
+
127
+ var _useState4 = useState(false),
128
+ inputFilled = _useState4[0],
129
+ setInputFilled = _useState4[1];
130
+
131
+ var triggerOnOpen = useCallback(function () {
132
+ if (onOpen) onOpen(open === 'true');
133
+ }, [open]);
134
+
135
+ var onBlur = function onBlur() {
136
+ setOpen(false.toString());
137
+ triggerOnOpen();
138
+ };
139
+
140
+ useEffect(function () {
141
+ if (type === 'single' && onSelectSingle) {
142
+ onSelectSingle(startD);
143
+ setOpen(false.toString());
144
+ } else if (type === 'range' && onSelectRange) {
145
+ onSelectRange(startD, endD);
146
+ }
147
+
148
+ setInputFilled(!!startD);
149
+ }, [startD, endD]);
150
+
151
+ var onDateSingleSelect = function onDateSingleSelect(startLocal) {
152
+ setStartDate(startLocal);
153
+ };
154
+
155
+ useEffect(function () {
156
+ if (open === 'true') ref.current.focus();
157
+ }, [open]);
158
+
159
+ var onDateRangeSelect = function onDateRangeSelect(selectedDate) {
160
+ if (!endD) {
161
+ if (!startD) {
162
+ setStartDate(selectedDate);
163
+ } else if (selectedDate < startD) {
164
+ setStartDate(selectedDate);
165
+ setEndDate(undefined);
166
+ } else setEndDate(selectedDate);
167
+ } else {
168
+ setStartDate(selectedDate);
169
+ setEndDate(undefined);
170
+ }
171
+ };
172
+
173
+ var renderInput = function renderInput() {
174
+ if (!startD && !endD) {
175
+ return /*#__PURE__*/React.createElement(InputPlaceholder, {
176
+ disabled: disabled
177
+ }, placeholder != null ? placeholder : "Select Date");
178
+ }
179
+
180
+ var dateFormat = 'MMM D, YYYY';
181
+ return startD && /*#__PURE__*/React.createElement(Input, {
182
+ disabled: disabled
183
+ }, moment(startD).format(dateFormat), endD && " - " + moment(endD).format(dateFormat));
184
+ };
185
+
186
+ return /*#__PURE__*/React.createElement(Wrapper, {
187
+ fullWidth: fullWidth,
188
+ tabIndex: "0"
189
+ }, /*#__PURE__*/React.createElement(Selector, {
190
+ open: open === 'true',
191
+ disabled: disabled,
192
+ error: error
193
+ }, renderInput(), /*#__PURE__*/React.createElement(TButton, {
194
+ onClick: function onClick() {
195
+ if (!disabled) {
196
+ setOpen((open !== 'true').toString());
197
+ }
198
+
199
+ triggerOnOpen();
200
+ }
201
+ }, /*#__PURE__*/React.createElement(CalendarIcon, {
202
+ disabled: disabled,
203
+ inputFilled: inputFilled
204
+ }))), error && /*#__PURE__*/React.createElement(ErrorWrapper, null, error), open === 'true' && /*#__PURE__*/React.createElement(Panel, {
205
+ tabIndex: -1,
206
+ ref: ref,
207
+ onBlur: onBlur
208
+ }, /*#__PURE__*/React.createElement(Calendar, {
209
+ type: type,
210
+ startDate: startD,
211
+ endDate: endD,
212
+ onSelectSingle: onDateSingleSelect,
213
+ onSelectRange: onDateRangeSelect,
214
+ disablePastDates: disablePastDates,
215
+ disableFutureDates: disableFutureDates
216
+ })));
217
+ }
218
+
219
+ Datepicker.propTypes = {
220
+ fullWidth: bool,
221
+ type: oneOf(['single', 'range']).isRequired,
222
+ placeholder: string,
223
+ startDate: instanceOf(Date),
224
+ endDate: instanceOf(Date),
225
+ disabled: bool,
226
+ onSelectSingle: func,
227
+ onSelectRange: func,
228
+ disablePastDates: bool,
229
+ disableFutureDates: bool,
230
+ error: string,
231
+ onOpen: func
232
+ };
233
+ Datepicker.defaultProps = {
234
+ fullWidth: false,
235
+ placeholder: undefined,
236
+ startDate: undefined,
237
+ endDate: undefined,
238
+ disabled: false,
239
+ onSelectSingle: undefined,
240
+ onSelectRange: undefined,
241
+ disablePastDates: false,
242
+ disableFutureDates: false,
243
+ error: undefined,
244
+ onOpen: undefined
245
+ };
246
+ export default Datepicker;
@@ -0,0 +1,200 @@
1
+ import React from 'react';
2
+ import { fireEvent, render, screen } from '@testing-library/react';
3
+ import moment from 'moment';
4
+ import { ThemeProvider, Datepicker } from '../..';
5
+ describe('<Datepicker />', function () {
6
+ var testDate = new Date(2022, 7, 3);
7
+ describe('Snapshots', function () {
8
+ it('should match with single Datepicker', function () {
9
+ var _render = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
10
+ type: "single"
11
+ }))),
12
+ container = _render.container;
13
+
14
+ expect(container).toMatchSnapshot();
15
+ });
16
+ it('should match with range Datepicker', function () {
17
+ var _render2 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
18
+ type: "range"
19
+ }))),
20
+ container = _render2.container;
21
+
22
+ expect(container).toMatchSnapshot();
23
+ });
24
+ it('should match with default selected date single Datepicker', function () {
25
+ var _render3 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
26
+ type: "single",
27
+ startDate: testDate
28
+ }))),
29
+ container = _render3.container;
30
+
31
+ expect(container).toMatchSnapshot();
32
+ });
33
+ it('should match with default selected dates range Datepicker', function () {
34
+ var endDate = new Date();
35
+ endDate.setDate(testDate.getDate() + 15);
36
+
37
+ var _render4 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
38
+ type: "range",
39
+ startDate: testDate,
40
+ endDate: endDate
41
+ }))),
42
+ container = _render4.container;
43
+
44
+ expect(container).toMatchSnapshot();
45
+ });
46
+ it('should match with custom placeholder single Datepicker', function () {
47
+ var _render5 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
48
+ type: "single",
49
+ placeholder: "This is a custom placeholder :)"
50
+ }))),
51
+ container = _render5.container;
52
+
53
+ expect(container).toMatchSnapshot();
54
+ });
55
+ it('should match with disabled past dates Datepicker', function () {
56
+ var _render6 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
57
+ type: "single",
58
+ disablePastDates: true
59
+ }))),
60
+ container = _render6.container;
61
+
62
+ expect(container).toMatchSnapshot();
63
+ });
64
+ it('should match with disabled future dates Datepicker', function () {
65
+ var _render7 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
66
+ type: "single",
67
+ disableFutureDates: true
68
+ }))),
69
+ container = _render7.container;
70
+
71
+ expect(container).toMatchSnapshot();
72
+ });
73
+ it('should match with disabled Datepicker', function () {
74
+ var _render8 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
75
+ type: "single",
76
+ disabled: true
77
+ }))),
78
+ container = _render8.container;
79
+
80
+ expect(container).toMatchSnapshot();
81
+ });
82
+ it('should match with error Datepicker', function () {
83
+ var _render9 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
84
+ type: "single",
85
+ error: "This is an error"
86
+ }))),
87
+ container = _render9.container;
88
+
89
+ expect(container).toMatchSnapshot();
90
+ });
91
+ });
92
+ describe('Unit', function () {
93
+ var dateFormat = 'MMM D, YYYY';
94
+ it('should call onSelectSingle function on single Datepicker', function () {
95
+ var onSelectSingle = jest.fn();
96
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
97
+ type: "single",
98
+ onSelectSingle: onSelectSingle
99
+ })));
100
+ expect(onSelectSingle).toHaveBeenCalledTimes(1);
101
+ fireEvent.click(screen.getByRole('button'));
102
+ var day10 = screen.queryAllByText('10')[0];
103
+ fireEvent.click(day10);
104
+ expect(onSelectSingle).toHaveBeenCalledTimes(2);
105
+ });
106
+ it('should call onSelectRange function on range Datepicker', function () {
107
+ var onSelectRange = jest.fn();
108
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
109
+ type: "range",
110
+ onSelectRange: onSelectRange
111
+ })));
112
+ expect(onSelectRange).toHaveBeenCalledTimes(1);
113
+ fireEvent.click(screen.getByRole('button'));
114
+ var day10 = screen.queryAllByText('10')[0];
115
+ var day20 = screen.queryAllByText('20')[0];
116
+ fireEvent.click(day10);
117
+ expect(onSelectRange).toHaveBeenCalledTimes(2);
118
+ fireEvent.click(day20);
119
+ expect(onSelectRange).toHaveBeenCalledTimes(3);
120
+ });
121
+ it('should display default date on single Datepicker', function () {
122
+ var currentDate = new Date();
123
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
124
+ type: "single",
125
+ startDate: currentDate
126
+ })));
127
+ var formattedDate = moment(currentDate).format(dateFormat);
128
+ expect(screen.getByText(formattedDate)).toBeVisible();
129
+ });
130
+ it('should display default date range on range Datepicker', function () {
131
+ var currentDate = new Date();
132
+ var end = new Date();
133
+ end.setDate(currentDate.getDate() + 15);
134
+ var formattedStartDate = moment(currentDate).format(dateFormat);
135
+ var formattedEndDate = moment(end).format(dateFormat);
136
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
137
+ type: "range",
138
+ startDate: currentDate,
139
+ endDate: end
140
+ })));
141
+ expect(screen.getByText(formattedStartDate + " - " + formattedEndDate)).toBeVisible();
142
+ });
143
+ it('should display custom placeholder and "Select Date" if none is provided', function () {
144
+ var _render10 = render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
145
+ type: "single",
146
+ placeholder: "This is a custom placeholder :)"
147
+ }))),
148
+ rerender = _render10.rerender;
149
+
150
+ expect(screen.getByText('This is a custom placeholder :)')).toBeVisible();
151
+ rerender( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
152
+ type: "single"
153
+ })));
154
+ expect(screen.getByText('Select Date')).toBeVisible();
155
+ });
156
+ it('should disable past dates', function () {
157
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
158
+ type: "single",
159
+ disablePastDates: true
160
+ })));
161
+ fireEvent.click(screen.getByRole('button'));
162
+ var previousMonthArrow = screen.getByTestId('previous-month-arrow');
163
+ fireEvent.click(previousMonthArrow);
164
+ [].concat(Array(25)).forEach(function (_e, i) {
165
+ return expect(screen.getAllByText("" + (i + 1))[0].closest('div')).toHaveAttribute('disabled');
166
+ });
167
+ });
168
+ it('should disable future dates', function () {
169
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
170
+ type: "single",
171
+ startDate: testDate,
172
+ disableFutureDates: true
173
+ })));
174
+ fireEvent.click(screen.getByRole('button'));
175
+ var nextMonthArrow = screen.getByTestId('next-month-arrow');
176
+ fireEvent.click(nextMonthArrow);
177
+ [].concat(Array(25)).forEach(function (_e, i) {
178
+ return expect(screen.getAllByText("" + (i + 1))[0].closest('div')).toHaveAttribute('disabled');
179
+ });
180
+ });
181
+ it('should be disabled', function () {
182
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
183
+ type: "single",
184
+ startDate: testDate,
185
+ disabled: true
186
+ })));
187
+ var formattedDate = moment(testDate).format(dateFormat);
188
+ var datepickerInput = screen.getByText(formattedDate);
189
+ expect(datepickerInput).toHaveAttribute('disabled');
190
+ expect(datepickerInput.closest('div')).toHaveAttribute('disabled');
191
+ });
192
+ it('should display an error', function () {
193
+ render( /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(Datepicker, {
194
+ type: "single",
195
+ error: "This is an error"
196
+ })));
197
+ expect(screen.getByText('This is an error')).toBeVisible();
198
+ });
199
+ });
200
+ });
@@ -0,0 +1,2 @@
1
+ import Datepicker from './Datepicker';
2
+ export default Datepicker;
@@ -12,6 +12,7 @@ import _componentThemes_Card$Card from "./../../Card/Card.theme.js";
12
12
  import _componentThemes_Card$CardWeb from "./../../Card/Card.web.theme.js";
13
13
  import _componentThemes_Checkbox$Checkbox from "./../../Checkbox/Checkbox.theme.js";
14
14
  import _componentThemes_Checkbox$CheckboxSwitch from "./../../Checkbox/CheckboxSwitch.theme.js";
15
+ import _componentThemes_Datepicker$Datepicker from "./../../Datepicker/Datepicker.theme.js";
15
16
  import _componentThemes_Dialog$Dialog from "./../../Dialog/Dialog.theme.js";
16
17
  import _componentThemes_Divider$Divider from "./../../Divider/Divider.theme.js";
17
18
  import _componentThemes_Drawer$Drawer from "./../../Drawer/Drawer.theme.js";
@@ -46,6 +47,7 @@ var componentThemes = {
46
47
  Card$CardWeb: _componentThemes_Card$CardWeb,
47
48
  Checkbox$Checkbox: _componentThemes_Checkbox$Checkbox,
48
49
  Checkbox$CheckboxSwitch: _componentThemes_Checkbox$CheckboxSwitch,
50
+ Datepicker$Datepicker: _componentThemes_Datepicker$Datepicker,
49
51
  Dialog$Dialog: _componentThemes_Dialog$Dialog,
50
52
  Divider$Divider: _componentThemes_Divider$Divider,
51
53
  Drawer$Drawer: _componentThemes_Drawer$Drawer,
package/esm/index.js CHANGED
@@ -28,6 +28,7 @@ import Menu from './Menu';
28
28
  import Banner from './Banner';
29
29
  import Heading from './Heading';
30
30
  import Feedback from './Feedback';
31
+ import Datepicker from './Datepicker';
31
32
  import Drawer from './Drawer';
32
33
  import Skeleton from './Skeleton';
33
- export { ThemeProvider, FontLoader, createTheme, yogaTheme, theme, Button, List, Checkbox, RadioGroup, Slider, Card, PlanCard, Stepper, Container, Row, Col, Hide, Text, Rating, EventCard, Tag, Input, Progress, Dropdown, TextArea, AutoComplete, Icon, Chips, Box, Snackbar, Avatar, BottomSheet, Dialog, Divider, Header, Menu, Banner, Heading, Feedback, Drawer, Skeleton };
34
+ export { ThemeProvider, FontLoader, createTheme, yogaTheme, theme, Button, List, Checkbox, RadioGroup, Slider, Card, PlanCard, Stepper, Container, Row, Col, Hide, Text, Rating, EventCard, Tag, Input, Progress, Dropdown, TextArea, AutoComplete, Icon, Chips, Box, Snackbar, Avatar, BottomSheet, Dialog, Divider, Header, Menu, Banner, Heading, Feedback, Datepicker, Drawer, Skeleton };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gympass/yoga",
3
- "version": "7.49.0",
3
+ "version": "7.50.0",
4
4
  "description": "Gympass component library",
5
5
  "main": "./cjs",
6
6
  "sideEffects": false,
@@ -51,7 +51,7 @@
51
51
  "react": ">=16",
52
52
  "styled-components": "^4.4.0"
53
53
  },
54
- "gitHead": "3862cde61ad643c9eb46ae601081f376e9d76196",
54
+ "gitHead": "2e47f0194f1ae130b94a7ab79f757e7b92a99c0c",
55
55
  "module": "./esm",
56
56
  "private": false,
57
57
  "react-native": "./cjs/index.native.js"