contentoh-components-library 21.3.1 → 21.3.3

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 (60) hide show
  1. package/dist/assets/fonts/{Roboto → roboto}/LICENSE.txt +0 -0
  2. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Black.ttf +0 -0
  3. package/dist/assets/fonts/{Roboto → roboto}/Roboto-BlackItalic.ttf +0 -0
  4. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Bold.ttf +0 -0
  5. package/dist/assets/fonts/{Roboto → roboto}/Roboto-BoldItalic.ttf +0 -0
  6. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Italic.ttf +0 -0
  7. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Light.ttf +0 -0
  8. package/dist/assets/fonts/{Roboto → roboto}/Roboto-LightItalic.ttf +0 -0
  9. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Medium.ttf +0 -0
  10. package/dist/assets/fonts/{Roboto → roboto}/Roboto-MediumItalic.ttf +0 -0
  11. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Regular.ttf +0 -0
  12. package/dist/assets/fonts/{Roboto → roboto}/Roboto-Thin.ttf +0 -0
  13. package/dist/assets/fonts/{Roboto → roboto}/Roboto-ThinItalic.ttf +0 -0
  14. package/dist/components/molecules/SelectV2/index.js +24 -16
  15. package/dist/components/molecules/SelectV2/test.js +95 -0
  16. package/dist/components/{atoms/ChatPopUp/ChatPopUp.stories.js → molecules/SelectV2/test.stories.js} +7 -8
  17. package/dist/components/organisms/RangeCalendar/index.js +10 -2
  18. package/dist/global-files/utils.js +14 -2
  19. package/package.json +1 -1
  20. package/src/assets/fonts/{Roboto → roboto}/LICENSE.txt +0 -0
  21. package/src/assets/fonts/{Roboto → roboto}/Roboto-Black.ttf +0 -0
  22. package/src/assets/fonts/{Roboto → roboto}/Roboto-BlackItalic.ttf +0 -0
  23. package/src/assets/fonts/{Roboto → roboto}/Roboto-Bold.ttf +0 -0
  24. package/src/assets/fonts/{Roboto → roboto}/Roboto-BoldItalic.ttf +0 -0
  25. package/src/assets/fonts/{Roboto → roboto}/Roboto-Italic.ttf +0 -0
  26. package/src/assets/fonts/{Roboto → roboto}/Roboto-Light.ttf +0 -0
  27. package/src/assets/fonts/{Roboto → roboto}/Roboto-LightItalic.ttf +0 -0
  28. package/src/assets/fonts/{Roboto → roboto}/Roboto-Medium.ttf +0 -0
  29. package/src/assets/fonts/{Roboto → roboto}/Roboto-MediumItalic.ttf +0 -0
  30. package/src/assets/fonts/{Roboto → roboto}/Roboto-Regular.ttf +0 -0
  31. package/src/assets/fonts/{Roboto → roboto}/Roboto-Thin.ttf +0 -0
  32. package/src/assets/fonts/{Roboto → roboto}/Roboto-ThinItalic.ttf +0 -0
  33. package/src/components/molecules/SelectV2/index.js +37 -22
  34. package/src/components/molecules/SelectV2/test.js +61 -0
  35. package/src/components/molecules/SelectV2/test.stories.js +10 -0
  36. package/src/components/organisms/RangeCalendar/index.js +10 -6
  37. package/src/global-files/utils.js +9 -0
  38. package/dist/assets/images/chatPopup/Spinner.gif +0 -0
  39. package/dist/assets/images/chatPopup/close.svg +0 -3
  40. package/dist/assets/images/chatPopup/defaultImage.png +0 -0
  41. package/dist/assets/images/chatPopup/defaultProfile.png +0 -0
  42. package/dist/assets/images/chatPopup/doc.svg +0 -1
  43. package/dist/assets/images/chatPopup/document.svg +0 -1
  44. package/dist/assets/images/chatPopup/iconChat.svg +0 -19
  45. package/dist/assets/images/chatPopup/iconPlus.svg +0 -3
  46. package/dist/assets/images/chatPopup/pdf.svg +0 -75
  47. package/dist/assets/images/chatPopup/remove.svg +0 -4
  48. package/dist/assets/images/chatPopup/send.svg +0 -3
  49. package/dist/assets/images/chatPopup/svgIcon.svg +0 -109
  50. package/dist/assets/images/chatPopup/upload_file.svg +0 -3
  51. package/dist/assets/images/chatPopup/xls.svg +0 -53
  52. package/dist/components/atoms/ChatPopUp/index.js +0 -841
  53. package/dist/components/atoms/ChatPopUp/styles.js +0 -27
  54. package/dist/components/atoms/ChatPopUp/utils/handlersChat.js +0 -182
  55. package/dist/components/atoms/StatusTag/StatusTag.stories.js +0 -48
  56. package/dist/components/atoms/StatusTag/index.js +0 -58
  57. package/dist/components/atoms/StatusTag/styles.js +0 -20
  58. package/dist/components/pages/RegistrationLoginFirstStep/RegistrationLoginFirstStep.stories.js +0 -37
  59. package/dist/components/pages/RegistrationLoginFirstStep/index.js +0 -269
  60. package/dist/components/pages/RegistrationLoginFirstStep/styles.js +0 -20
File without changes
@@ -39,6 +39,7 @@ var SelectV2 = function SelectV2(props) {
39
39
  var _positions$positionDr;
40
40
 
41
41
  var items = props.items,
42
+ initialSelectedItems = props.initialSelectedItems,
42
43
  triggerType = props.triggerType,
43
44
  selectButton = props.selectButton,
44
45
  defaultItem = props.defaultItem,
@@ -99,36 +100,40 @@ var SelectV2 = function SelectV2(props) {
99
100
  var refInputTextSearch = (0, _react.useRef)(); // cada que cambie la lista de items
100
101
 
101
102
  (0, _react.useEffect)(function () {
102
- if ((0, _utils.isArrayEmpty)(items)) {
103
+ if ((0, _utils.isArrayEmpty)(items) || !(0, _utils.isObject)(initialSelectedItems)) {
103
104
  setSelectedItems({});
105
+ renderItems();
106
+ renderLabelSelect();
104
107
  return;
105
108
  } // items iniciales seleccionados
106
109
 
107
110
 
108
- var initialSelectedItems = {};
109
- items.forEach(function (item) {
110
- if (item.selected) {
111
- if (multiple) initialSelectedItems[item.value] = item.value;else initialSelectedItems = (0, _defineProperty2.default)({}, item.value, item.value);
112
- }
113
- });
114
- setSelectedItems(initialSelectedItems);
111
+ if (!multiple) {
112
+ var values = Object.keys(initialSelectedItems);
113
+ if (values.length) setSelectedItems((0, _defineProperty2.default)({}, values[0], null));else setSelectedItems({});
114
+ } else {
115
+ setSelectedItems(initialSelectedItems);
116
+ }
117
+
118
+ renderItems();
119
+ renderLabelSelect();
115
120
  }, [items]); // cada que cambien los items seleccionados
116
121
 
117
122
  (0, _react.useEffect)(function () {
118
- if (!selectedItems) return;
123
+ if (!(0, _utils.isObject)(selectedItems)) return;
119
124
  renderItems();
120
125
  renderLabelSelect();
121
- onChange && onChange(Object.values(selectedItems));
122
126
  }, [selectedItems]); // evento click de cada item de la lista
123
127
 
124
128
  var onClickItem = function onClickItem(isSelected, value) {
125
129
  var selectedItemsCopy = (0, _objectSpread2.default)({}, selectedItems);
126
130
 
127
131
  if (isSelected) {
128
- multiple ? selectedItemsCopy[value] = value : selectedItemsCopy = (0, _defineProperty2.default)({}, value, value);
132
+ multiple ? selectedItemsCopy[value] = null : selectedItemsCopy = (0, _defineProperty2.default)({}, value, null);
129
133
  } else delete selectedItemsCopy[value];
130
134
 
131
135
  setSelectedItems(selectedItemsCopy);
136
+ onChange && onChange(selectedItemsCopy);
132
137
  };
133
138
 
134
139
  var onClickSearch = function onClickSearch() {
@@ -138,8 +143,8 @@ var SelectV2 = function SelectV2(props) {
138
143
  };
139
144
 
140
145
  var renderLabelSelect = function renderLabelSelect() {
141
- if (!selectedItems) return;
142
- var selectedItemsCopy = Object.values(selectedItems);
146
+ if (!(0, _utils.isObject)(selectedItems)) return;
147
+ var selectedItemsCopy = Object.keys(selectedItems);
143
148
 
144
149
  if (selectedItemsCopy.length > 1) {
145
150
  setLabelSelect("Personalizado");
@@ -188,7 +193,7 @@ var SelectV2 = function SelectV2(props) {
188
193
  label: item.label,
189
194
  value: item.value,
190
195
  checkbox: typeSelectItems === "checkbox" ? true : typeSelectItems === "marginCheckbox" ? false : undefined,
191
- selected: selectedItems && selectedItems[item.value] ? true : false,
196
+ selected: (0, _utils.isObject)(selectedItems) && selectedItems[item.value] !== undefined ? true : false,
192
197
  onClick: onClickItem
193
198
  }, classNameSelect + "_item" + index);
194
199
  }));
@@ -259,9 +264,12 @@ var SelectV2 = function SelectV2(props) {
259
264
  label: defaultItem.label,
260
265
  value: null,
261
266
  checkbox: defaultItem.itemType === "checkbox" ? true : defaultItem.itemType === "marginCheckbox" ? false : undefined,
262
- selected: selectedItems && Object.keys(selectedItems).length ? false : true,
267
+ selected: (0, _utils.isObject)(selectedItems) && Object.keys(selectedItems).length ? false : true,
263
268
  onClick: function onClick(isSelected, value) {
264
- selectedItems && Object.keys(selectedItems).length && setSelectedItems({});
269
+ if ((0, _utils.isObject)(selectedItems) && Object.keys(selectedItems).length) {
270
+ setSelectedItems({});
271
+ onChange && onChange({});
272
+ }
265
273
  }
266
274
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
267
275
  className: "container-items",
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.TestSelectV2 = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
11
+
12
+ var _react = require("react");
13
+
14
+ var _ = require(".");
15
+
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+
18
+ var TestSelectV2 = function TestSelectV2() {
19
+ var _useState = (0, _react.useState)([{
20
+ label: "item 1",
21
+ value: 1
22
+ }, {
23
+ label: "item 2",
24
+ value: 2
25
+ }, {
26
+ label: "item 3",
27
+ value: 3
28
+ }, {
29
+ label: "item 4",
30
+ value: 4
31
+ }]),
32
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
33
+ items = _useState2[0],
34
+ setItems = _useState2[1];
35
+
36
+ var _useState3 = (0, _react.useState)({
37
+ 2: null,
38
+ 4: null
39
+ }),
40
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
41
+ selected = _useState4[0],
42
+ setSelected = _useState4[1];
43
+
44
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
45
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_.SelectV2, {
46
+ items: items,
47
+ initialSelectedItems: undefined,
48
+ triggerType: "hover",
49
+ selectButton: {
50
+ type: "whiteS3",
51
+ transparent: true,
52
+ disabled: false,
53
+ label: "Prueba select",
54
+ size: 12
55
+ },
56
+ defaultItem: {
57
+ label: "default opcion",
58
+ itemType: "labelOnly",
59
+ showLabelInSelect: true
60
+ },
61
+ inputSearch: {
62
+ defaultText: "Buscar"
63
+ },
64
+ typeSelectItems: "checkbox",
65
+ multiple: false,
66
+ borderType: "oval",
67
+ onChange: function onChange(selectedItems) {
68
+ console.log("onChange:", selectedItems);
69
+ setSelected(selectedItems);
70
+ }
71
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
72
+ onClick: function onClick(event) {
73
+ setItems([{
74
+ label: "item 1",
75
+ value: 1
76
+ }, {
77
+ label: "item 2",
78
+ value: 2
79
+ }, {
80
+ label: "item 3",
81
+ value: 3
82
+ }, {
83
+ label: "item 4",
84
+ value: 4
85
+ }, {
86
+ label: "item 5",
87
+ value: 5
88
+ }]);
89
+ },
90
+ children: "Refresh lista"
91
+ })]
92
+ });
93
+ };
94
+
95
+ exports.TestSelectV2 = TestSelectV2;
@@ -5,24 +5,23 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.ChatPopUpDefault = void 0;
8
+ exports.default = exports.Test = void 0;
9
9
 
10
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
11
 
12
- var _index = require("./index");
12
+ var _test = require("./test");
13
13
 
14
14
  var _jsxRuntime = require("react/jsx-runtime");
15
15
 
16
16
  var _default = {
17
- title: "Components/atoms/ChatPopUp",
18
- component: _index.ChatPopUp
17
+ title: "Components/molecules/SelectV2/TestSelectV2",
18
+ component: _test.TestSelectV2
19
19
  };
20
20
  exports.default = _default;
21
21
 
22
22
  var Template = function Template(args) {
23
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChatPopUp, (0, _objectSpread2.default)({}, args));
23
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_test.TestSelectV2, (0, _objectSpread2.default)({}, args));
24
24
  };
25
25
 
26
- var ChatPopUpDefault = Template.bind({});
27
- exports.ChatPopUpDefault = ChatPopUpDefault;
28
- ChatPopUpDefault.args = {};
26
+ var Test = Template.bind({});
27
+ exports.Test = Test;
@@ -37,12 +37,12 @@ var RangeCalendar = function RangeCalendar(_ref) {
37
37
  _ref$calendarId = _ref.calendarId,
38
38
  calendarId = _ref$calendarId === void 0 ? "calendar-id" : _ref$calendarId;
39
39
 
40
- var _useState = (0, _react.useState)(currentDates !== null && currentDates !== void 0 && currentDates.start ? new Date(currentDates.start) : new Date()),
40
+ var _useState = (0, _react.useState)(new Date()),
41
41
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
42
42
  startDate = _useState2[0],
43
43
  setStartDate = _useState2[1];
44
44
 
45
- var _useState3 = (0, _react.useState)(currentDates !== null && currentDates !== void 0 && currentDates.end ? new Date(currentDates.end) : new Date()),
45
+ var _useState3 = (0, _react.useState)(new Date()),
46
46
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
47
47
  endDate = _useState4[0],
48
48
  setEndDate = _useState4[1];
@@ -52,6 +52,14 @@ var RangeCalendar = function RangeCalendar(_ref) {
52
52
  showCalendar = _useCloseModal2[0],
53
53
  setShowCalendar = _useCloseModal2[1];
54
54
 
55
+ (0, _react.useEffect)(function () {
56
+ if (currentDates) {
57
+ console.log(currentDates);
58
+ setStartDate(new Date(currentDates.start));
59
+ setEndDate(new Date(currentDates.end));
60
+ }
61
+ }, [currentDates]);
62
+
55
63
  var onChange = function onChange(dates) {
56
64
  var _dates = (0, _slicedToArray2.default)(dates, 2),
57
65
  start = _dates[0],
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.isValidNaturalNumber = exports.isStringEmpty = exports.isArrayEmpty = exports.getTime = exports.getResizeImgHeight = exports.getImageURL = exports.getImageSize = exports.getFullDate = exports.getFileName = exports.getFileExtension = exports.getDataBuffer = exports.getDataBase64 = exports.getCustomDate = exports.getBase64 = exports.decodeJSON = void 0;
8
+ exports.isValidNaturalNumber = exports.isStringEmpty = exports.isObject = exports.isArrayEmpty = exports.getTime = exports.getResizeImgHeight = exports.getImageURL = exports.getImageSize = exports.getFullDate = exports.getFileName = exports.getFileExtension = exports.getDataBuffer = exports.getDataBase64 = exports.getCustomDate = exports.getBase64 = exports.decodeJSON = void 0;
9
9
 
10
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
11
 
@@ -468,5 +468,17 @@ var decodeJSON = function decodeJSON(valueJSON) {
468
468
  return valueJSON;
469
469
  }
470
470
  };
471
+ /*------------------------
472
+ recibe un dato y determina si
473
+ es objeto JS
474
+ --------------------------*/
475
+
476
+
477
+ exports.decodeJSON = decodeJSON;
478
+
479
+ var isObject = function isObject(obj) {
480
+ if (obj && (0, _typeof2.default)(obj) === "object" && !Array.isArray(obj)) return true;
481
+ return false;
482
+ };
471
483
 
472
- exports.decodeJSON = decodeJSON;
484
+ exports.isObject = isObject;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "contentoh-components-library",
3
- "version": "21.3.1",
3
+ "version": "21.3.3",
4
4
  "dependencies": {
5
5
  "@aws-amplify/auth": "^4.5.3",
6
6
  "@aws-amplify/datastore": "^3.11.0",
File without changes
@@ -14,7 +14,11 @@ import {
14
14
  faCaretDown as IconDownArrow,
15
15
  faSearch as IconSearch,
16
16
  } from "@fortawesome/free-solid-svg-icons";
17
- import { isArrayEmpty, isStringEmpty } from "../../../global-files/utils";
17
+ import {
18
+ isArrayEmpty,
19
+ isObject,
20
+ isStringEmpty,
21
+ } from "../../../global-files/utils";
18
22
  import { SelectItemV2 } from "../../atoms/SelectItemV2";
19
23
  import { InputText } from "../../atoms/InputText";
20
24
 
@@ -24,10 +28,10 @@ export const SelectV2 = (props) => {
24
28
  {
25
29
  label: string,
26
30
  value: string | number,
27
- selected: (boolean) true -> item seleccionado al inicio
28
31
  } ,
29
32
  ...
30
33
  ] */,
34
+ initialSelectedItems, // { value: null , ... } -> value = string | number
31
35
  triggerType, // (string) "hover" | "click"
32
36
  selectButton /* {
33
37
  className: string,
@@ -57,7 +61,7 @@ export const SelectV2 = (props) => {
57
61
  classNameSelect, // (string) clase del container select
58
62
  classNameDropdown, // (string) clase del contenedor tooltip
59
63
  positionDropdown, // (string) posicion del contenedor tooltip (values en object positions)
60
- onChange, // (selectedItems: []) = {} array con los values de los items seleccionados
64
+ onChange, // (selectedItems: {}) = {} obj con los values de los items seleccionados
61
65
  } = props;
62
66
  const positions = {
63
67
  topStart: "top-start",
@@ -86,27 +90,29 @@ export const SelectV2 = (props) => {
86
90
 
87
91
  // cada que cambie la lista de items
88
92
  useEffect(() => {
89
- if (isArrayEmpty(items)) {
93
+ if (isArrayEmpty(items) || !isObject(initialSelectedItems)) {
90
94
  setSelectedItems({});
95
+ renderItems();
96
+ renderLabelSelect();
91
97
  return;
92
98
  }
93
99
  // items iniciales seleccionados
94
- let initialSelectedItems = {};
95
- items.forEach((item) => {
96
- if (item.selected) {
97
- if (multiple) initialSelectedItems[item.value] = item.value;
98
- else initialSelectedItems = { [item.value]: item.value };
99
- }
100
- });
101
- setSelectedItems(initialSelectedItems);
100
+ if (!multiple) {
101
+ const values = Object.keys(initialSelectedItems);
102
+ if (values.length) setSelectedItems({ [values[0]]: null });
103
+ else setSelectedItems({});
104
+ } else {
105
+ setSelectedItems(initialSelectedItems);
106
+ }
107
+ renderItems();
108
+ renderLabelSelect();
102
109
  }, [items]);
103
110
 
104
111
  // cada que cambien los items seleccionados
105
112
  useEffect(() => {
106
- if (!selectedItems) return;
113
+ if (!isObject(selectedItems)) return;
107
114
  renderItems();
108
115
  renderLabelSelect();
109
- onChange && onChange(Object.values(selectedItems));
110
116
  }, [selectedItems]);
111
117
 
112
118
  // evento click de cada item de la lista
@@ -114,10 +120,11 @@ export const SelectV2 = (props) => {
114
120
  let selectedItemsCopy = { ...selectedItems };
115
121
  if (isSelected) {
116
122
  multiple
117
- ? (selectedItemsCopy[value] = value)
118
- : (selectedItemsCopy = { [value]: value });
123
+ ? (selectedItemsCopy[value] = null)
124
+ : (selectedItemsCopy = { [value]: null });
119
125
  } else delete selectedItemsCopy[value];
120
126
  setSelectedItems(selectedItemsCopy);
127
+ onChange && onChange(selectedItemsCopy);
121
128
  };
122
129
 
123
130
  const onClickSearch = () => {
@@ -127,8 +134,8 @@ export const SelectV2 = (props) => {
127
134
  };
128
135
 
129
136
  const renderLabelSelect = () => {
130
- if (!selectedItems) return;
131
- const selectedItemsCopy = Object.values(selectedItems);
137
+ if (!isObject(selectedItems)) return;
138
+ const selectedItemsCopy = Object.keys(selectedItems);
132
139
  if (selectedItemsCopy.length > 1) {
133
140
  setLabelSelect("Personalizado");
134
141
  } else if (selectedItemsCopy.length === 1) {
@@ -181,7 +188,11 @@ export const SelectV2 = (props) => {
181
188
  ? false
182
189
  : undefined
183
190
  }
184
- selected={selectedItems && selectedItems[item.value] ? true : false}
191
+ selected={
192
+ isObject(selectedItems) && selectedItems[item.value] !== undefined
193
+ ? true
194
+ : false
195
+ }
185
196
  onClick={onClickItem}
186
197
  />
187
198
  );
@@ -285,14 +296,18 @@ export const SelectV2 = (props) => {
285
296
  : undefined
286
297
  }
287
298
  selected={
288
- selectedItems && Object.keys(selectedItems).length
299
+ isObject(selectedItems) && Object.keys(selectedItems).length
289
300
  ? false
290
301
  : true
291
302
  }
292
303
  onClick={(isSelected, value) => {
293
- selectedItems &&
294
- Object.keys(selectedItems).length &&
304
+ if (
305
+ isObject(selectedItems) &&
306
+ Object.keys(selectedItems).length
307
+ ) {
295
308
  setSelectedItems({});
309
+ onChange && onChange({});
310
+ }
296
311
  }}
297
312
  />
298
313
  )}
@@ -0,0 +1,61 @@
1
+ import { useEffect, useState } from "react";
2
+ import { SelectV2 } from ".";
3
+
4
+ export const TestSelectV2 = () => {
5
+ const [items, setItems] = useState([
6
+ { label: "item 1", value: 1 },
7
+ { label: "item 2", value: 2 },
8
+ { label: "item 3", value: 3 },
9
+ { label: "item 4", value: 4 },
10
+ ]);
11
+ const [selected, setSelected] = useState({
12
+ 2: null,
13
+ 4: null,
14
+ });
15
+
16
+ return (
17
+ <>
18
+ <SelectV2
19
+ items={items}
20
+ initialSelectedItems={undefined}
21
+ triggerType={"hover"}
22
+ selectButton={{
23
+ type: "whiteS3",
24
+ transparent: true,
25
+ disabled: false,
26
+ label: "Prueba select",
27
+ size: 12,
28
+ }}
29
+ defaultItem={{
30
+ label: "default opcion",
31
+ itemType: "labelOnly",
32
+ showLabelInSelect: true,
33
+ }}
34
+ inputSearch={{
35
+ defaultText: "Buscar",
36
+ }}
37
+ typeSelectItems={"checkbox"}
38
+ multiple={false}
39
+ borderType={"oval"}
40
+ onChange={(selectedItems) => {
41
+ console.log("onChange:", selectedItems);
42
+ setSelected(selectedItems);
43
+ }}
44
+ />
45
+
46
+ <button
47
+ onClick={(event) => {
48
+ setItems([
49
+ { label: "item 1", value: 1 },
50
+ { label: "item 2", value: 2 },
51
+ { label: "item 3", value: 3 },
52
+ { label: "item 4", value: 4 },
53
+ { label: "item 5", value: 5 },
54
+ ]);
55
+ }}
56
+ >
57
+ Refresh lista
58
+ </button>
59
+ </>
60
+ );
61
+ };
@@ -0,0 +1,10 @@
1
+ import { TestSelectV2 } from "./test";
2
+
3
+ export default {
4
+ title: "Components/molecules/SelectV2/TestSelectV2",
5
+ component: TestSelectV2,
6
+ };
7
+
8
+ const Template = (args) => <TestSelectV2 {...args} />;
9
+
10
+ export const Test = Template.bind({});
@@ -3,6 +3,7 @@ import { useState } from "react";
3
3
  import DatePicker, { registerLocale, setDefaultLocale } from "react-datepicker";
4
4
  import es from "date-fns/locale/es";
5
5
  import { useCloseModal } from "../../../global-files/customHooks";
6
+ import { useEffect } from "react";
6
7
  registerLocale("es", es);
7
8
 
8
9
  export const RangeCalendar = ({
@@ -12,13 +13,16 @@ export const RangeCalendar = ({
12
13
  label = "Elige las fechas",
13
14
  calendarId = "calendar-id",
14
15
  }) => {
15
- const [startDate, setStartDate] = useState(
16
- currentDates?.start ? new Date(currentDates.start) : new Date()
17
- );
18
- const [endDate, setEndDate] = useState(
19
- currentDates?.end ? new Date(currentDates.end) : new Date()
20
- );
16
+ const [startDate, setStartDate] = useState(new Date());
17
+ const [endDate, setEndDate] = useState(new Date());
21
18
  const [showCalendar, setShowCalendar] = useCloseModal(calendarId);
19
+ useEffect(() => {
20
+ if (currentDates) {
21
+ console.log(currentDates);
22
+ setStartDate(new Date(currentDates.start));
23
+ setEndDate(new Date(currentDates.end));
24
+ }
25
+ }, [currentDates]);
22
26
  const onChange = (dates) => {
23
27
  const [start, end] = dates;
24
28
  setStartDate(start);
@@ -298,3 +298,12 @@ export const decodeJSON = (valueJSON) => {
298
298
  return valueJSON;
299
299
  }
300
300
  };
301
+
302
+ /*------------------------
303
+ recibe un dato y determina si
304
+ es objeto JS
305
+ --------------------------*/
306
+ export const isObject = (obj) => {
307
+ if (obj && typeof obj === "object" && !Array.isArray(obj)) return true;
308
+ return false;
309
+ };
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14">
2
- <path id="close_FILL0_wght400_GRAD0_opsz48" d="M6.385,19.308,5.308,18.231l5.923-5.923L5.308,6.385,6.385,5.308l5.923,5.923,5.923-5.923,1.077,1.077-5.923,5.923,5.923,5.923-1.077,1.077-5.923-5.923Z" transform="translate(-5.308 -5.308)" fill="#fff"/>
3
- </svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 51 65" fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round"><use xlink:href="#C" x=".5" y=".5"/><defs><filter id="A" x="-6%" y="-4.6875%" width="116%" height="112.5%"><feGaussianBlur in="SourceAlpha" stdDeviation="1"/><feOffset dx="2" dy="2" result="B"/><feFlood flood-color="#000" flood-opacity=".2"/><feComposite in2="B" operator="in" result="C"/><feMerge><feMergeNode in="C"/><feMergeNode in="SourceGraphic"/></feMerge></filter><filter id="B" x="-27.5%" y="-32.5%" width="160%" height="160%"><feGaussianBlur in="SourceAlpha" stdDeviation="2"/><feOffset dx="1" dy="-1" result="B"/><feFlood flood-color="#000" flood-opacity=".2"/><feComposite in2="B" operator="in" result="C"/><feMerge><feMergeNode in="C"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><symbol id="C" overflow="visible"><path d="M50 20L30 0H5a4.99 4.99 0 0 0-5 5v54a4.99 4.99 0 0 0 5 5h40a4.99 4.99 0 0 0 5-5z" fill="#2196f3" stroke="none" filter="url(#A)"/><defs/><g transform="matrix(-1 0 0 -1 50 20)"><path d="M20 20L0 0h15a4.99 4.99 0 0 1 5 5z" fill="#90caf9" stroke="none" filter="url(#B)"/><defs/></g><path d="M10 17.5h17.5V20H10zm0 10h27.5V30H10zm0 10h27.5V40H10zm0 10h27.5V50H10z" stroke="none"/></symbol></svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 66 81" fill="#fff" fill-rule="evenodd" stroke="#000" stroke-linecap="round" stroke-linejoin="round"><use xlink:href="#A" x=".5" y=".5"/><symbol id="A" overflow="visible"><path d="M44.674 0H0v79.977h65V20.012L44.674 0zM60.93 75.993H4.07V4.007h38.593v18.008h18.291v53.978zm-10.151-40H14.221v-3.984h36.558zm0 9.995H14.221v-3.984h36.558zm0 10.017H14.221v-4.007h36.558zm0 9.994H14.221v-4.007h36.558z" fill="#2a3282" stroke="none"/></symbol></svg>
@@ -1,19 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14" height="14" viewBox="0 0 14 14">
2
- <defs>
3
- <style>
4
- .cls-1 {
5
- fill: #707070;
6
- }
7
-
8
- .cls-2 {
9
- clip-path: url(#clip-path);
10
- }
11
- </style>
12
- <clipPath id="clip-path">
13
- <rect id="Rectángulo_368" data-name="Rectángulo 368" class="cls-1" width="14" height="14" transform="translate(1737 869)"/>
14
- </clipPath>
15
- </defs>
16
- <g id="Enmascarar_grupo_83" data-name="Enmascarar grupo 83" class="cls-2" transform="translate(-1737 -869)">
17
- <path id="forum_FILL0_wght400_GRAD0_opsz48" class="cls-1" d="M1.4,11.9V2.135a.728.728,0,0,1,.228-.49A.651.651,0,0,1,2.1,1.4h9.082a.675.675,0,0,1,.49.236.714.714,0,0,1,.227.5v6.23a.728.728,0,0,1-.227.49.666.666,0,0,1-.49.245H4.2Zm3.518.7a.678.678,0,0,1-.481-.245.716.716,0,0,1-.236-.49V10.15h8.75V4.2H14.7a.651.651,0,0,1,.472.245.744.744,0,0,1,.227.508v10.43L12.617,12.6ZM10.85,2.45H2.45V9.363L3.763,8.05H10.85Zm-8.4,0v0Z" transform="translate(1735.6 867.609)"/>
18
- </g>
19
- </svg>