contentoh-components-library 21.2.105 → 21.2.106

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 (192) hide show
  1. package/.env.development +5 -2
  2. package/.env.production +25 -25
  3. package/dist/assets/images/customSelect/starIcon.svg +14 -0
  4. package/dist/assets/images/defaultImages/Spinner.gif +0 -0
  5. package/dist/assets/images/defaultImages/notFound.svg +124 -0
  6. package/dist/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +72 -0
  7. package/dist/components/atoms/ButtonFileChooser/index.js +118 -0
  8. package/dist/components/atoms/ButtonFileChooser/styles.js +20 -0
  9. package/dist/components/atoms/ButtonV2/ButtonV2.stories.js +66 -0
  10. package/dist/components/atoms/ButtonV2/index.js +110 -0
  11. package/dist/components/atoms/ButtonV2/styles.js +53 -0
  12. package/dist/components/atoms/CustomIcon/CustomIcon.stories.js +50 -0
  13. package/dist/components/atoms/CustomIcon/index.js +40 -0
  14. package/dist/components/atoms/CustomIcon/styles.js +33 -0
  15. package/dist/components/atoms/GeneralButton/index.js +2 -6
  16. package/dist/components/atoms/IconFile/IconFile.stories.js +48 -0
  17. package/dist/components/atoms/IconFile/index.js +249 -0
  18. package/dist/components/atoms/IconFile/styles.js +23 -0
  19. package/dist/components/atoms/Image/Image.stories.js +73 -0
  20. package/dist/components/atoms/Image/index.js +76 -0
  21. package/dist/components/atoms/Image/styles.js +43 -0
  22. package/dist/components/atoms/ImageLink/ImageLink.stories.js +63 -0
  23. package/dist/components/atoms/ImageLink/index.js +77 -0
  24. package/dist/components/atoms/ImageLink/styles.js +40 -0
  25. package/dist/components/atoms/ImagePreview/ImagePreview.stories.js +70 -0
  26. package/dist/components/atoms/ImagePreview/index.js +222 -0
  27. package/dist/components/atoms/ImagePreview/styles.js +44 -0
  28. package/dist/components/atoms/InputText/InputText.stories.js +60 -0
  29. package/dist/components/atoms/InputText/index.js +66 -0
  30. package/dist/components/atoms/InputText/styles.js +32 -0
  31. package/dist/components/atoms/NotFound/NotFound.stories.js +36 -0
  32. package/dist/components/atoms/NotFound/index.js +75 -0
  33. package/dist/components/atoms/NotFound/styles.js +20 -0
  34. package/dist/components/atoms/Select/VersionSelect.js +1 -2
  35. package/dist/components/atoms/SelectItemV2/SelectItemV2.stories.js +45 -0
  36. package/dist/components/atoms/SelectItemV2/index.js +57 -0
  37. package/dist/components/atoms/SelectItemV2/styles.js +30 -0
  38. package/dist/components/atoms/Tooltip/Tooltip.stories.js +66 -0
  39. package/dist/components/atoms/Tooltip/index.js +72 -0
  40. package/dist/components/atoms/Tooltip/styles.js +20 -0
  41. package/dist/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +66 -0
  42. package/dist/components/molecules/ButtonDownloadFile/index.js +179 -0
  43. package/dist/components/molecules/ButtonDownloadFile/styles.js +23 -0
  44. package/dist/components/molecules/CustomSelect/CustomSelect.stories.js +21 -22
  45. package/dist/components/molecules/CustomSelect/SelectItem.js +10 -1
  46. package/dist/components/molecules/Dropdown/Dropdown.stories.js +98 -0
  47. package/dist/components/molecules/Dropdown/index.js +150 -0
  48. package/dist/components/molecules/Dropdown/styles.js +26 -0
  49. package/dist/components/molecules/HeaderTop/index.js +10 -5
  50. package/dist/components/molecules/HeaderTop/styles.js +1 -1
  51. package/dist/components/molecules/ImageTooltip/ImageTooltip.stories.js +82 -0
  52. package/dist/components/molecules/ImageTooltip/index.js +85 -0
  53. package/dist/components/molecules/ImageTooltip/styles.js +33 -0
  54. package/dist/components/molecules/SelectV2/SelectV2.stories.js +119 -0
  55. package/dist/components/molecules/SelectV2/index.js +298 -0
  56. package/dist/components/molecules/SelectV2/styles.js +42 -0
  57. package/dist/components/organisms/Chat/Chat.stories.js +215 -0
  58. package/dist/components/organisms/Chat/ChatLists/ChatLists.stories.js +83 -0
  59. package/dist/components/organisms/Chat/ChatLists/index.js +160 -0
  60. package/dist/components/organisms/Chat/ChatLists/styles.js +29 -0
  61. package/dist/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +176 -0
  62. package/dist/components/organisms/Chat/ContainerItems/index.js +569 -0
  63. package/dist/components/organisms/Chat/ContainerItems/styles.js +20 -0
  64. package/dist/components/organisms/Chat/ContentChat/ContentChat.stories.js +142 -0
  65. package/dist/components/organisms/Chat/ContentChat/index.js +1422 -0
  66. package/dist/components/organisms/Chat/ContentChat/styles.js +20 -0
  67. package/dist/components/organisms/Chat/Footer/Footer.stories.js +43 -0
  68. package/dist/components/organisms/Chat/Footer/index.js +984 -0
  69. package/dist/components/organisms/Chat/Footer/styles.js +32 -0
  70. package/dist/components/organisms/Chat/Header/Header.stories.js +96 -0
  71. package/dist/components/organisms/Chat/Header/index.js +84 -0
  72. package/dist/components/organisms/Chat/Header/styles.js +20 -0
  73. package/dist/components/organisms/Chat/index.js +327 -0
  74. package/dist/components/organisms/Chat/styles.js +29 -0
  75. package/dist/components/organisms/CreateVersion/RenderChilds.js +11 -11
  76. package/dist/components/organisms/CreateVersion/index.js +89 -30
  77. package/dist/components/organisms/Modal/Modal.stories.js +66 -0
  78. package/dist/components/organisms/Modal/index.js +95 -0
  79. package/dist/components/organisms/Modal/styles.js +20 -0
  80. package/dist/components/organisms/OrderDetail/OrderDetail.stories.js +1 -1
  81. package/dist/components/organisms/OrderDetail/index.js +11 -20
  82. package/dist/components/organisms/OrderDetail/styles.js +1 -1
  83. package/dist/components/organisms/OrderDetail/utils/Table/styles.js +1 -1
  84. package/dist/components/organisms/OrderDetail/utils/Table/utils.js +15 -45
  85. package/dist/components/organisms/VersionSelector/index.js +2 -28
  86. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +147 -69
  87. package/dist/components/pages/ProviderProductEdition/index.js +22 -2
  88. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +67 -77
  89. package/dist/components/pages/RetailerProductEdition/index.js +24 -5
  90. package/dist/global-files/fonts.css +12 -0
  91. package/dist/global-files/handle_http.js +383 -0
  92. package/dist/global-files/utils.js +472 -0
  93. package/dist/global-files/variables.js +2 -0
  94. package/dist/index.js +254 -46
  95. package/package.json +12 -1
  96. package/src/assets/images/customSelect/starIcon.svg +14 -0
  97. package/src/assets/images/defaultImages/Spinner.gif +0 -0
  98. package/src/assets/images/defaultImages/notFound.svg +124 -0
  99. package/src/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +47 -0
  100. package/src/components/atoms/ButtonFileChooser/index.js +69 -0
  101. package/src/components/atoms/ButtonFileChooser/styles.js +4 -0
  102. package/src/components/atoms/ButtonV2/ButtonV2.stories.js +53 -0
  103. package/src/components/atoms/ButtonV2/index.js +85 -0
  104. package/src/components/atoms/ButtonV2/styles.js +217 -0
  105. package/src/components/atoms/CustomIcon/CustomIcon.stories.js +36 -0
  106. package/src/components/atoms/CustomIcon/index.js +41 -0
  107. package/src/components/atoms/CustomIcon/styles.js +85 -0
  108. package/src/components/atoms/GeneralButton/index.js +1 -4
  109. package/src/components/atoms/IconFile/IconFile.stories.js +35 -0
  110. package/src/components/atoms/IconFile/index.js +119 -0
  111. package/src/components/atoms/IconFile/styles.js +67 -0
  112. package/src/components/atoms/Image/Image.stories.js +51 -0
  113. package/src/components/atoms/Image/index.js +55 -0
  114. package/src/components/atoms/Image/styles.js +34 -0
  115. package/src/components/atoms/ImageLink/ImageLink.stories.js +43 -0
  116. package/src/components/atoms/ImageLink/index.js +57 -0
  117. package/src/components/atoms/ImageLink/styles.js +30 -0
  118. package/src/components/atoms/ImagePreview/ImagePreview.stories.js +52 -0
  119. package/src/components/atoms/ImagePreview/index.js +191 -0
  120. package/src/components/atoms/ImagePreview/styles.js +77 -0
  121. package/src/components/atoms/InputText/InputText.stories.js +39 -0
  122. package/src/components/atoms/InputText/index.js +61 -0
  123. package/src/components/atoms/InputText/styles.js +89 -0
  124. package/src/components/atoms/NotFound/NotFound.stories.js +19 -0
  125. package/src/components/atoms/NotFound/index.js +52 -0
  126. package/src/components/atoms/NotFound/styles.js +55 -0
  127. package/src/components/atoms/Select/VersionSelect.js +2 -4
  128. package/src/components/atoms/SelectItemV2/SelectItemV2.stories.js +26 -0
  129. package/src/components/atoms/SelectItemV2/index.js +61 -0
  130. package/src/components/atoms/SelectItemV2/styles.js +90 -0
  131. package/src/components/atoms/Tooltip/Tooltip.stories.js +51 -0
  132. package/src/components/atoms/Tooltip/index.js +59 -0
  133. package/src/components/atoms/Tooltip/styles.js +42 -0
  134. package/src/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +54 -0
  135. package/src/components/molecules/ButtonDownloadFile/index.js +111 -0
  136. package/src/components/molecules/ButtonDownloadFile/styles.js +66 -0
  137. package/src/components/molecules/CustomSelect/CustomSelect.stories.js +20 -12
  138. package/src/components/molecules/CustomSelect/SelectItem.js +7 -0
  139. package/src/components/molecules/Dropdown/Dropdown.stories.js +103 -0
  140. package/src/components/molecules/Dropdown/index.js +150 -0
  141. package/src/components/molecules/Dropdown/styles.js +75 -0
  142. package/src/components/molecules/HeaderTop/index.js +11 -6
  143. package/src/components/molecules/HeaderTop/styles.js +4 -0
  144. package/src/components/molecules/ImageTooltip/ImageTooltip.stories.js +68 -0
  145. package/src/components/molecules/ImageTooltip/index.js +63 -0
  146. package/src/components/molecules/ImageTooltip/styles.js +18 -0
  147. package/src/components/molecules/SelectV2/SelectV2.stories.js +114 -0
  148. package/src/components/molecules/SelectV2/index.js +335 -0
  149. package/src/components/molecules/SelectV2/styles.js +105 -0
  150. package/src/components/organisms/Chat/Chat.stories.js +199 -0
  151. package/src/components/organisms/Chat/ChatLists/ChatLists.stories.js +65 -0
  152. package/src/components/organisms/Chat/ChatLists/Rotoplas.jpeg +0 -0
  153. package/src/components/organisms/Chat/ChatLists/THD.png +0 -0
  154. package/src/components/organisms/Chat/ChatLists/index.js +141 -0
  155. package/src/components/organisms/Chat/ChatLists/styles.js +162 -0
  156. package/src/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +142 -0
  157. package/src/components/organisms/Chat/ContainerItems/index.js +549 -0
  158. package/src/components/organisms/Chat/ContainerItems/styles.js +328 -0
  159. package/src/components/organisms/Chat/ContentChat/ContentChat.stories.js +102 -0
  160. package/src/components/organisms/Chat/ContentChat/Rotoplas.jpeg +0 -0
  161. package/src/components/organisms/Chat/ContentChat/THD.png +0 -0
  162. package/src/components/organisms/Chat/ContentChat/index.js +900 -0
  163. package/src/components/organisms/Chat/ContentChat/styles.js +41 -0
  164. package/src/components/organisms/Chat/Footer/Footer.stories.js +22 -0
  165. package/src/components/organisms/Chat/Footer/index.js +669 -0
  166. package/src/components/organisms/Chat/Footer/styles.js +286 -0
  167. package/src/components/organisms/Chat/Header/Header.stories.js +66 -0
  168. package/src/components/organisms/Chat/Header/index.js +94 -0
  169. package/src/components/organisms/Chat/Header/styles.js +49 -0
  170. package/src/components/organisms/Chat/index.js +294 -0
  171. package/src/components/organisms/Chat/styles.js +42 -0
  172. package/src/components/organisms/CreateVersion/RenderChilds.js +34 -28
  173. package/src/components/organisms/CreateVersion/index.js +36 -16
  174. package/src/components/organisms/Modal/Modal.stories.js +55 -0
  175. package/src/components/organisms/Modal/index.js +97 -0
  176. package/src/components/organisms/Modal/styles.js +103 -0
  177. package/src/components/organisms/OrderDetail/OrderDetail.stories.js +1 -1
  178. package/src/components/organisms/OrderDetail/index.js +12 -19
  179. package/src/components/organisms/OrderDetail/styles.js +0 -1
  180. package/src/components/organisms/OrderDetail/utils/Table/styles.js +0 -26
  181. package/src/components/organisms/OrderDetail/utils/Table/utils.js +15 -30
  182. package/src/components/organisms/VersionSelector/index.js +3 -18
  183. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +166 -75
  184. package/src/components/pages/ProviderProductEdition/index.js +21 -2
  185. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +67 -79
  186. package/src/components/pages/RetailerProductEdition/index.js +14 -2
  187. package/src/global-files/customHooks.js +2 -2
  188. package/src/global-files/fonts.css +12 -0
  189. package/src/global-files/handle_http.js +231 -0
  190. package/src/global-files/utils.js +300 -0
  191. package/src/global-files/variables.js +2 -0
  192. package/src/index.js +16 -0
@@ -0,0 +1,82 @@
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.default = exports.ImageTooltipTest = exports.ImageTooltipOK = exports.ImageTooltipERROR = void 0;
9
+
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
+
12
+ var _index = require("./index");
13
+
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+
16
+ var _default = {
17
+ title: "Components/molecules/ImageTooltip",
18
+ component: _index.ImageTooltip,
19
+ argTypes: {
20
+ position: {
21
+ options: [undefined, "topStart", "topEnd", "topCenter", "rightStart", "rightEnd", "rightCenter", "bottomStart", "bottomEnd", "bottomCenter", "leftStart", "leftEnd", "leftCenter"],
22
+ control: {
23
+ type: "select"
24
+ }
25
+ }
26
+ }
27
+ };
28
+ exports.default = _default;
29
+
30
+ var Template = function Template(args) {
31
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ImageTooltip, (0, _objectSpread2.default)({}, args));
32
+ };
33
+
34
+ var keyS3_test = "84300/1/chat/playa-213f791b-d890-48e1-be19-28bf5a95d517.jpeg";
35
+ var srcTest = "https://content-management-images.s3.amazonaws.com/".concat(keyS3_test);
36
+ var ImageTooltipTest = Template.bind({});
37
+ exports.ImageTooltipTest = ImageTooltipTest;
38
+ ImageTooltipTest.args = {
39
+ width: "200px",
40
+ sizeLoading: "50",
41
+ colorLoading: "#bbbbbb",
42
+ src: "bn",
43
+ componentDefault: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
44
+ children: "test error"
45
+ }),
46
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
47
+ children: " mensaje del tooltip test "
48
+ }),
49
+ position: undefined
50
+ };
51
+ var keyS3_OK = "84300/1/chat/f6579ed5-16e5-48d8-ace5-6be8e8e68f53-38896acf-9179-4686-9088-9784df624ab8.png";
52
+ var srcOK = "https://content-management-images.s3.amazonaws.com/".concat(keyS3_OK);
53
+ var ImageTooltipOK = Template.bind({});
54
+ exports.ImageTooltipOK = ImageTooltipOK;
55
+ ImageTooltipOK.args = {
56
+ width: "250px",
57
+ sizeLoading: "40",
58
+ src: srcOK,
59
+ componentDefault: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
60
+ children: " img no cargada "
61
+ }),
62
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
63
+ children: " mensaje del tooltip OK "
64
+ }),
65
+ position: undefined
66
+ };
67
+ var keyS3_ERROR = "84300/1/chat/21dba1da-3c60-42c4-97bd-033664808256-fb19ff57-b91c-4ef2-ba2a-d857b55fb33b.svg";
68
+ var srcERROR = "https://content-management-images.s3.amazonaws.com/".concat(keyS3_ERROR);
69
+ var ImageTooltipERROR = Template.bind({});
70
+ exports.ImageTooltipERROR = ImageTooltipERROR;
71
+ ImageTooltipERROR.args = {
72
+ width: "300px",
73
+ sizeLoading: "60",
74
+ src: srcERROR,
75
+ componentDefault: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
76
+ children: " ERROR al cargar "
77
+ }),
78
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
79
+ children: " mensaje del tooltip ERROR "
80
+ }),
81
+ position: undefined
82
+ };
@@ -0,0 +1,85 @@
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.ImageTooltip = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
11
+
12
+ var _styles = require("./styles");
13
+
14
+ var _reactFontawesome = require("@fortawesome/react-fontawesome");
15
+
16
+ var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
17
+
18
+ var _react = require("react");
19
+
20
+ var _Tooltip = require("../../atoms/Tooltip");
21
+
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
+
24
+ var ImageTooltip = function ImageTooltip(props) {
25
+ var className = props.className,
26
+ width = props.width,
27
+ sizeLoading = props.sizeLoading,
28
+ colorLoading = props.colorLoading,
29
+ classNameLoading = props.classNameLoading,
30
+ src = props.src,
31
+ componentDefault = props.componentDefault,
32
+ classNameImg = props.classNameImg,
33
+ classNameTooltip = props.classNameTooltip,
34
+ componentTooltip = props.componentTooltip,
35
+ position = props.position;
36
+
37
+ var _useState = (0, _react.useState)(),
38
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
39
+ imgLoad = _useState2[0],
40
+ setImgLoad = _useState2[1];
41
+
42
+ var _useState3 = (0, _react.useState)(false),
43
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
44
+ loading = _useState4[0],
45
+ setLoading = _useState4[1];
46
+ /* solo para hacer pruebas en modo dev
47
+ useEffect(() => {
48
+ setTimeout(() => {
49
+ setLoading(false);
50
+ }, 5000);
51
+ }, []);
52
+ */
53
+
54
+
55
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Tooltip.Tooltip, {
56
+ position: position !== null && position !== void 0 ? position : "topCenter",
57
+ addArrow: false,
58
+ transitionType: "zoom",
59
+ followCursor: false,
60
+ className: className,
61
+ classNameTooltip: classNameTooltip,
62
+ componentTooltip: imgLoad !== undefined && !loading && componentTooltip,
63
+ children: [src && (imgLoad === undefined || loading) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.ContainerLoading, {
64
+ className: classNameLoading,
65
+ sizeLoading: sizeLoading,
66
+ colorLoading: colorLoading,
67
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactFontawesome.FontAwesomeIcon, {
68
+ pulse: true,
69
+ icon: _freeSolidSvgIcons.faSpinner
70
+ })
71
+ }), (!src || imgLoad === false && !loading) && componentDefault, /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.Img, {
72
+ className: classNameImg,
73
+ src: src,
74
+ onLoad: function onLoad(event) {
75
+ return setImgLoad(true);
76
+ },
77
+ onError: function onError(event) {
78
+ return setImgLoad(false);
79
+ },
80
+ show: imgLoad === true && !loading
81
+ })]
82
+ });
83
+ };
84
+
85
+ exports.ImageTooltip = ImageTooltip;
@@ -0,0 +1,33 @@
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.Img = exports.ContainerLoading = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
11
+
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+
14
+ var _variables = require("../../../global-files/variables");
15
+
16
+ var _templateObject, _templateObject2;
17
+
18
+ var ContainerLoading = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n display: grid;\n place-items: center;\n min-width: min-content;\n font-size: ", "px;\n color: ", ";\n padding: 5px;\n"])), function (_ref) {
19
+ var sizeLoading = _ref.sizeLoading;
20
+ return sizeLoading ? sizeLoading : "30";
21
+ }, function (_ref2) {
22
+ var colorLoading = _ref2.colorLoading;
23
+ return colorLoading ? colorLoading : "#9e2674";
24
+ });
25
+
26
+ exports.ContainerLoading = ContainerLoading;
27
+
28
+ var Img = _styledComponents.default.img(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: ", ";\n width: 100%;\n object-fit: contain;\n"])), function (_ref3) {
29
+ var show = _ref3.show;
30
+ return show ? "grid" : "none";
31
+ });
32
+
33
+ exports.Img = Img;
@@ -0,0 +1,119 @@
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.default = exports.SelectV2Test = void 0;
9
+
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
+
12
+ var _index = require("./index");
13
+
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+
16
+ var _default = {
17
+ title: "Components/molecules/SelectV2",
18
+ component: _index.SelectV2,
19
+ argTypes: {
20
+ positionDropdown: {
21
+ options: [undefined, "topStart", "topEnd", "topCenter", "rightStart", "rightEnd", "rightCenter", "bottomStart", "bottomEnd", "bottomCenter", "leftStart", "leftEnd", "leftCenter"],
22
+ control: {
23
+ type: "select"
24
+ }
25
+ },
26
+ triggerType: {
27
+ options: [undefined, "hover", "click"],
28
+ control: {
29
+ type: "select"
30
+ }
31
+ },
32
+ typeSelectItems: {
33
+ options: [undefined, "checkbox", "marginCheckbox", "labelOnly"],
34
+ control: {
35
+ type: "select"
36
+ }
37
+ },
38
+ borderType: {
39
+ options: [undefined, "rectangle", "oval"],
40
+ control: {
41
+ type: "select"
42
+ }
43
+ },
44
+ alignmentItemsOverflow: {
45
+ options: [undefined, "columns", "rows"],
46
+ control: {
47
+ type: "select"
48
+ }
49
+ }
50
+ }
51
+ };
52
+ exports.default = _default;
53
+
54
+ var Template = function Template(args) {
55
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.SelectV2, (0, _objectSpread2.default)({}, args));
56
+ };
57
+
58
+ var SelectV2Test = Template.bind({});
59
+ exports.SelectV2Test = SelectV2Test;
60
+ SelectV2Test.args = {
61
+ items: [{
62
+ label: "Palomitas de maiz",
63
+ value: 1,
64
+ selected: false
65
+ }, {
66
+ label: "Sabritas",
67
+ value: 2,
68
+ selected: true
69
+ }, {
70
+ label: "sabritas Doritos",
71
+ value: 3,
72
+ selected: false
73
+ }, {
74
+ label: "Este es un texto muy largo que deberia llegar al limite establecido para el width",
75
+ value: 4,
76
+ selected: true
77
+ }, {
78
+ label: "galletas",
79
+ value: 5,
80
+ selected: false
81
+ }, {
82
+ label: "jugo de uva",
83
+ value: 6,
84
+ selected: false
85
+ }],
86
+ triggerType: "hover",
87
+ selectButton: {
88
+ className: "btnSelectPrueba",
89
+ type: "whiteS3",
90
+ transparent: undefined,
91
+ disabled: false,
92
+ label: "select de prueba",
93
+ size: 12,
94
+ borderType: "oval"
95
+ },
96
+ defaultItem: {
97
+ label: "Ningun filtro",
98
+ itemType: undefined,
99
+ showLabelInSelect: true
100
+ },
101
+ inputSearch: {
102
+ className: "inputBusqueda",
103
+ defaultText: "hola"
104
+ },
105
+ typeSelectItems: undefined,
106
+ borderType: undefined,
107
+ maxWidthSelect: "150px",
108
+ maxWidthDropdown: "300px",
109
+ maxHeightDropdown: "300px",
110
+ maxWidthItems: "100px",
111
+ alignmentItemsOverflow: undefined,
112
+ multiple: true,
113
+ classNameSelect: "selectPrueba",
114
+ classNameDropdown: "dropdownSelectPrueba",
115
+ positionDropdown: undefined,
116
+ onChange: function onChange(selectedItems) {
117
+ console.log("selectedItems:", selectedItems);
118
+ }
119
+ };
@@ -0,0 +1,298 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.SelectV2 = void 0;
11
+
12
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
13
+
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
15
+
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _material = require("@mui/material");
23
+
24
+ var _styles = require("./styles");
25
+
26
+ var _ButtonV = require("../../atoms/ButtonV2");
27
+
28
+ var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
29
+
30
+ var _utils = require("../../../global-files/utils");
31
+
32
+ var _SelectItemV = require("../../atoms/SelectItemV2");
33
+
34
+ var _InputText = require("../../atoms/InputText");
35
+
36
+ var _jsxRuntime = require("react/jsx-runtime");
37
+
38
+ var SelectV2 = function SelectV2(props) {
39
+ var _positions$positionDr;
40
+
41
+ var items = props.items,
42
+ triggerType = props.triggerType,
43
+ selectButton = props.selectButton,
44
+ defaultItem = props.defaultItem,
45
+ inputSearch = props.inputSearch,
46
+ maxWidthSelect = props.maxWidthSelect,
47
+ maxWidthDropdown = props.maxWidthDropdown,
48
+ maxHeightDropdown = props.maxHeightDropdown,
49
+ maxWidthItems = props.maxWidthItems,
50
+ alignmentItemsOverflow = props.alignmentItemsOverflow,
51
+ typeSelectItems = props.typeSelectItems,
52
+ multiple = props.multiple,
53
+ borderType = props.borderType,
54
+ classNameSelect = props.classNameSelect,
55
+ classNameDropdown = props.classNameDropdown,
56
+ positionDropdown = props.positionDropdown,
57
+ onChange = props.onChange;
58
+ var positions = {
59
+ topStart: "top-start",
60
+ topEnd: "top-end",
61
+ topCenter: "top",
62
+ rightStart: "right-start",
63
+ rightEnd: "right-end",
64
+ rightCenter: "right",
65
+ bottomStart: "bottom-start",
66
+ bottomEnd: "bottom-end",
67
+ bottomCenter: "bottom",
68
+ leftStart: "left-start",
69
+ leftEnd: "left-end",
70
+ leftCenter: "left"
71
+ };
72
+
73
+ var _useState = (0, _react.useState)(),
74
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
75
+ selectedItems = _useState2[0],
76
+ setSelectedItems = _useState2[1]; // { .. }
77
+
78
+
79
+ var _useState3 = (0, _react.useState)([]),
80
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
81
+ customItems = _useState4[0],
82
+ setCustomItems = _useState4[1];
83
+
84
+ var _useState5 = (0, _react.useState)(false),
85
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
86
+ showDropdown = _useState6[0],
87
+ setShowDropdown = _useState6[1];
88
+
89
+ var _useState7 = (0, _react.useState)("Sin titulo"),
90
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
91
+ labelSelect = _useState8[0],
92
+ setLabelSelect = _useState8[1];
93
+
94
+ var _useState9 = (0, _react.useState)(""),
95
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
96
+ textInputSearch = _useState10[0],
97
+ setTextInputSearch = _useState10[1];
98
+
99
+ var refInputTextSearch = (0, _react.useRef)(); // cada que cambie la lista de items
100
+
101
+ (0, _react.useEffect)(function () {
102
+ if ((0, _utils.isArrayEmpty)(items)) {
103
+ setSelectedItems({});
104
+ return;
105
+ } // items iniciales seleccionados
106
+
107
+
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);
115
+ }, [items]); // cada que cambien los items seleccionados
116
+
117
+ (0, _react.useEffect)(function () {
118
+ if (!selectedItems) return;
119
+ renderItems();
120
+ renderLabelSelect();
121
+ onChange && onChange(Object.values(selectedItems));
122
+ }, [selectedItems]); // evento click de cada item de la lista
123
+
124
+ var onClickItem = function onClickItem(isSelected, value) {
125
+ var selectedItemsCopy = (0, _objectSpread2.default)({}, selectedItems);
126
+
127
+ if (isSelected) {
128
+ multiple ? selectedItemsCopy[value] = value : selectedItemsCopy = (0, _defineProperty2.default)({}, value, value);
129
+ } else delete selectedItemsCopy[value];
130
+
131
+ setSelectedItems(selectedItemsCopy);
132
+ };
133
+
134
+ var onClickSearch = function onClickSearch() {
135
+ setTextInputSearch(textInputSearch.trim());
136
+ (refInputTextSearch === null || refInputTextSearch === void 0 ? void 0 : refInputTextSearch.current) && refInputTextSearch.current.blur();
137
+ renderItems(textInputSearch.trim());
138
+ };
139
+
140
+ var renderLabelSelect = function renderLabelSelect() {
141
+ if (!selectedItems) return;
142
+ var selectedItemsCopy = Object.values(selectedItems);
143
+
144
+ if (selectedItemsCopy.length > 1) {
145
+ setLabelSelect("Personalizado");
146
+ } else if (selectedItemsCopy.length === 1) {
147
+ var labelItem = undefined;
148
+
149
+ var _iterator = (0, _createForOfIteratorHelper2.default)(items),
150
+ _step;
151
+
152
+ try {
153
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
154
+ var item = _step.value;
155
+
156
+ if (item.value == selectedItemsCopy[0]) {
157
+ labelItem = item.label;
158
+ break;
159
+ }
160
+ }
161
+ } catch (err) {
162
+ _iterator.e(err);
163
+ } finally {
164
+ _iterator.f();
165
+ }
166
+
167
+ !(0, _utils.isStringEmpty)(labelItem) ? setLabelSelect(labelItem) : setLabelSelect("Sin titulo");
168
+ } else {
169
+ if (!(0, _utils.isStringEmpty)(defaultItem === null || defaultItem === void 0 ? void 0 : defaultItem.label) && defaultItem !== null && defaultItem !== void 0 && defaultItem.showLabelInSelect) {
170
+ setLabelSelect(defaultItem.label);
171
+ } else if (!(0, _utils.isStringEmpty)(selectButton === null || selectButton === void 0 ? void 0 : selectButton.label)) {
172
+ setLabelSelect(selectButton.label);
173
+ } else {
174
+ setLabelSelect("Sin titulo");
175
+ }
176
+ }
177
+ };
178
+
179
+ var renderItems = function renderItems() {
180
+ var textSearch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
181
+ if ((0, _utils.isArrayEmpty)(items)) setCustomItems([]);
182
+ setCustomItems(items.map(function (item, index) {
183
+ if (!(0, _utils.isStringEmpty)(textSearch) && !item.label.trim().toLowerCase().includes(textSearch.trim().toLowerCase())) {
184
+ return null;
185
+ }
186
+
187
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_SelectItemV.SelectItemV2, {
188
+ label: item.label,
189
+ value: item.value,
190
+ checkbox: typeSelectItems === "checkbox" ? true : typeSelectItems === "marginCheckbox" ? false : undefined,
191
+ selected: selectedItems && selectedItems[item.value] ? true : false,
192
+ onClick: onClickItem
193
+ }, classNameSelect + "_item" + index);
194
+ }));
195
+ };
196
+
197
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.ClickAwayListener, {
198
+ onClickAway: function onClickAway(event) {
199
+ if (triggerType !== "hover") setShowDropdown(false);
200
+ },
201
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.Container, {
202
+ className: !(0, _utils.isStringEmpty)(classNameSelect) ? classNameSelect : "",
203
+ borderType: borderType,
204
+ maxWidthSelect: maxWidthSelect,
205
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
206
+ placement: (_positions$positionDr = positions[positionDropdown]) !== null && _positions$positionDr !== void 0 ? _positions$positionDr : positions.bottomCenter,
207
+ open: triggerType !== "hover" ? showDropdown : undefined,
208
+ arrow: false,
209
+ componentsProps: {
210
+ tooltip: {
211
+ className: "dropdownSelect" + ((0, _utils.isStringEmpty)(classNameDropdown) ? "" : " " + classNameDropdown)
212
+ },
213
+ popper: {
214
+ disablePortal: true
215
+ },
216
+ transition: {
217
+ timeout: 300
218
+ }
219
+ },
220
+ TransitionComponent: _material.Fade,
221
+ enterDelay: 100,
222
+ followCursor: false,
223
+ disableFocusListener: true,
224
+ disableTouchListener: true,
225
+ disableHoverListener: triggerType !== "hover" || (selectButton === null || selectButton === void 0 ? void 0 : selectButton.disabled),
226
+ title: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
227
+ children: [inputSearch && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
228
+ className: "container-inputSearch" + (!(0, _utils.isStringEmpty)(inputSearch === null || inputSearch === void 0 ? void 0 : inputSearch.className) ? " " + inputSearch.className : ""),
229
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
230
+ className: "buttonSearch",
231
+ type: "gray",
232
+ transparent: true,
233
+ size: 14,
234
+ icon: _freeSolidSvgIcons.faSearch,
235
+ onClick: function onClick(event) {
236
+ if ((0, _utils.isStringEmpty)(textInputSearch) && refInputTextSearch !== null && refInputTextSearch !== void 0 && refInputTextSearch.current) {
237
+ setTextInputSearch("");
238
+ refInputTextSearch.current.focus();
239
+ } else {
240
+ onClickSearch();
241
+ }
242
+ }
243
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputText.InputText, {
244
+ className: "inputSearch",
245
+ type: "black",
246
+ transparent: true,
247
+ size: 12,
248
+ placeHolder: (0, _utils.isStringEmpty)(inputSearch === null || inputSearch === void 0 ? void 0 : inputSearch.defaultText) ? "Texto a buscar" : inputSearch.defaultText,
249
+ text: textInputSearch,
250
+ onChangeText: function onChangeText(newValue) {
251
+ return setTextInputSearch(newValue);
252
+ },
253
+ onEnter: function onEnter(event) {
254
+ return onClickSearch();
255
+ },
256
+ refInputText: refInputTextSearch
257
+ })]
258
+ }), defaultItem && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SelectItemV.SelectItemV2, {
259
+ label: defaultItem.label,
260
+ value: null,
261
+ checkbox: defaultItem.itemType === "checkbox" ? true : defaultItem.itemType === "marginCheckbox" ? false : undefined,
262
+ selected: selectedItems && Object.keys(selectedItems).length ? false : true,
263
+ onClick: function onClick(isSelected, value) {
264
+ selectedItems && Object.keys(selectedItems).length && setSelectedItems({});
265
+ }
266
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
267
+ className: "container-items",
268
+ children: customItems
269
+ })]
270
+ }),
271
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.ContainerSelect, {
272
+ className: "container-buttonSelect",
273
+ maxWidthDropdown: maxWidthDropdown,
274
+ maxHeightDropdown: maxHeightDropdown,
275
+ alignmentItemsOverflow: alignmentItemsOverflow,
276
+ maxWidthItems: maxWidthItems,
277
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
278
+ className: "buttonSelect" + (!(0, _utils.isStringEmpty)(selectButton === null || selectButton === void 0 ? void 0 : selectButton.className) ? " " + selectButton.className : ""),
279
+ disabled: selectButton === null || selectButton === void 0 ? void 0 : selectButton.disabled,
280
+ type: selectButton === null || selectButton === void 0 ? void 0 : selectButton.type,
281
+ transparent: selectButton === null || selectButton === void 0 ? void 0 : selectButton.transparent,
282
+ label: labelSelect,
283
+ size: selectButton === null || selectButton === void 0 ? void 0 : selectButton.size,
284
+ icon: _freeSolidSvgIcons.faCaretDown,
285
+ iconPosition: "end",
286
+ onClick: function onClick(event) {
287
+ if (triggerType !== "hover") setShowDropdown(function (prev) {
288
+ return !prev;
289
+ });
290
+ }
291
+ })
292
+ })
293
+ })
294
+ })
295
+ });
296
+ };
297
+
298
+ exports.SelectV2 = SelectV2;
@@ -0,0 +1,42 @@
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.ContainerSelect = exports.Container = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
11
+
12
+ var _variables = require("../../../global-files/variables");
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject, _templateObject2;
17
+
18
+ var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: fit-content;\n max-width: ", ";\n //border: 1px solid red;\n border-radius: ", ";\n"])), function (_ref) {
19
+ var maxWidthSelect = _ref.maxWidthSelect;
20
+ return maxWidthSelect ? maxWidthSelect : "unset";
21
+ }, function (_ref2) {
22
+ var borderType = _ref2.borderType;
23
+ return (borderType === null || borderType === void 0 ? void 0 : borderType.toLowerCase()) === "rectangle" ? "6px" : (borderType === null || borderType === void 0 ? void 0 : borderType.toLowerCase()) === "oval" ? "17px" : "0px"; // default none
24
+ });
25
+
26
+ exports.Container = Container;
27
+
28
+ var ContainerSelect = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n border-radius: inherit;\n\n .buttonSelect {\n width: 100%;\n border-radius: inherit;\n\n .button {\n padding: 10px 16px;\n gap: 10px;\n .icon {\n font-size: 13px;\n }\n }\n }\n\n + .MuiTooltip-popper {\n background-color: transparent;\n\n .dropdownSelect {\n --background: white;\n box-shadow: 0px 0px 10px 1px gray;\n background-color: var(--background);\n padding: 0px 0px;\n border-radius: 7px;\n display: flex;\n flex-direction: column;\n gap: 0px;\n overflow: hidden;\n max-width: ", ";\n max-height: ", ";\n\n .container-inputSearch {\n width: 100%;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n gap: 0px;\n padding: 0px 10px 8px 10px;\n border-bottom: 1px solid #f0f0f0;\n\n .inputSearch {\n padding-left: 8px;\n flex-grow: 2;\n }\n }\n\n .selectItemV2 {\n width: 100%;\n\n .button {\n justify-content: flex-start;\n }\n }\n\n .container-items {\n flex-grow: 2;\n display: flex;\n flex-direction: column;\n flex-wrap: ", ";\n overflow: auto;\n\n .selectItemV2 {\n width: ", ";\n }\n }\n }\n\n &[data-popper-placement*=\"bottom\"] .dropdownSelect {\n margin-top: 10px;\n }\n &[data-popper-placement*=\"top\"] .dropdownSelect {\n margin-bottom: 10px;\n }\n &[data-popper-placement*=\"left\"] .dropdownSelect {\n margin-right: 10px;\n }\n &[data-popper-placement*=\"right\"] .dropdownSelect {\n margin-left: 10px;\n }\n }\n"])), function (_ref3) {
29
+ var maxWidthDropdown = _ref3.maxWidthDropdown;
30
+ return maxWidthDropdown ? maxWidthDropdown : "400px";
31
+ }, function (_ref4) {
32
+ var maxHeightDropdown = _ref4.maxHeightDropdown;
33
+ return maxHeightDropdown ? maxHeightDropdown : "80vh";
34
+ }, function (_ref5) {
35
+ var alignmentItemsOverflow = _ref5.alignmentItemsOverflow;
36
+ return alignmentItemsOverflow === "columns" ? "wrap" : "nowrap";
37
+ }, function (_ref6) {
38
+ var maxWidthItems = _ref6.maxWidthItems;
39
+ return maxWidthItems ? maxWidthItems : "100%";
40
+ });
41
+
42
+ exports.ContainerSelect = ContainerSelect;