contentoh-components-library 21.3.3 → 21.3.5

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 (202) hide show
  1. package/.env.development +2 -5
  2. package/.env.production +25 -25
  3. package/dist/components/atoms/GeneralButton/index.js +6 -2
  4. package/dist/components/atoms/Select/VersionSelect.js +2 -1
  5. package/dist/components/molecules/CustomSelect/CustomSelect.stories.js +22 -21
  6. package/dist/components/molecules/CustomSelect/SelectItem.js +1 -10
  7. package/dist/components/molecules/HeaderTop/index.js +5 -10
  8. package/dist/components/molecules/HeaderTop/styles.js +1 -1
  9. package/dist/components/organisms/CreateVersion/RenderChilds.js +11 -11
  10. package/dist/components/organisms/CreateVersion/index.js +30 -89
  11. package/dist/components/organisms/OrderDetail/OrderDetail.stories.js +1 -1
  12. package/dist/components/organisms/OrderDetail/index.js +20 -11
  13. package/dist/components/organisms/OrderDetail/styles.js +1 -1
  14. package/dist/components/organisms/OrderDetail/utils/Table/styles.js +1 -1
  15. package/dist/components/organisms/OrderDetail/utils/Table/utils.js +45 -15
  16. package/dist/components/organisms/VersionSelector/index.js +28 -2
  17. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +69 -147
  18. package/dist/components/pages/ProviderProductEdition/index.js +19 -39
  19. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +77 -67
  20. package/dist/components/pages/RetailerProductEdition/index.js +5 -24
  21. package/dist/global-files/fonts.css +3 -15
  22. package/dist/global-files/variables.js +0 -2
  23. package/dist/index.js +46 -267
  24. package/package.json +1 -12
  25. package/src/components/atoms/GeneralButton/index.js +4 -1
  26. package/src/components/atoms/Select/VersionSelect.js +4 -2
  27. package/src/components/molecules/CustomSelect/CustomSelect.stories.js +12 -20
  28. package/src/components/molecules/CustomSelect/SelectItem.js +0 -7
  29. package/src/components/molecules/HeaderTop/index.js +6 -11
  30. package/src/components/molecules/HeaderTop/styles.js +0 -4
  31. package/src/components/organisms/CreateVersion/RenderChilds.js +28 -34
  32. package/src/components/organisms/CreateVersion/index.js +16 -36
  33. package/src/components/organisms/OrderDetail/OrderDetail.stories.js +1 -1
  34. package/src/components/organisms/OrderDetail/index.js +19 -12
  35. package/src/components/organisms/OrderDetail/styles.js +1 -0
  36. package/src/components/organisms/OrderDetail/utils/Table/styles.js +26 -0
  37. package/src/components/organisms/OrderDetail/utils/Table/utils.js +30 -15
  38. package/src/components/organisms/VersionSelector/index.js +18 -3
  39. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +75 -166
  40. package/src/components/pages/ProviderProductEdition/index.js +3 -22
  41. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +79 -67
  42. package/src/components/pages/RetailerProductEdition/index.js +2 -14
  43. package/src/global-files/customHooks.js +2 -2
  44. package/src/global-files/fonts.css +3 -15
  45. package/src/global-files/variables.js +0 -2
  46. package/src/index.js +0 -17
  47. package/dist/assets/images/customSelect/starIcon.svg +0 -14
  48. package/dist/assets/images/defaultImages/Spinner.gif +0 -0
  49. package/dist/assets/images/defaultImages/notFound.svg +0 -124
  50. package/dist/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +0 -72
  51. package/dist/components/atoms/ButtonFileChooser/index.js +0 -118
  52. package/dist/components/atoms/ButtonFileChooser/styles.js +0 -20
  53. package/dist/components/atoms/ButtonV2/ButtonV2.stories.js +0 -66
  54. package/dist/components/atoms/ButtonV2/index.js +0 -110
  55. package/dist/components/atoms/ButtonV2/styles.js +0 -53
  56. package/dist/components/atoms/CustomIcon/CustomIcon.stories.js +0 -50
  57. package/dist/components/atoms/CustomIcon/index.js +0 -40
  58. package/dist/components/atoms/CustomIcon/styles.js +0 -33
  59. package/dist/components/atoms/IconFile/IconFile.stories.js +0 -48
  60. package/dist/components/atoms/IconFile/index.js +0 -249
  61. package/dist/components/atoms/IconFile/styles.js +0 -23
  62. package/dist/components/atoms/Image/Image.stories.js +0 -73
  63. package/dist/components/atoms/Image/index.js +0 -76
  64. package/dist/components/atoms/Image/styles.js +0 -43
  65. package/dist/components/atoms/ImageLink/ImageLink.stories.js +0 -63
  66. package/dist/components/atoms/ImageLink/index.js +0 -77
  67. package/dist/components/atoms/ImageLink/styles.js +0 -40
  68. package/dist/components/atoms/ImagePreview/ImagePreview.stories.js +0 -70
  69. package/dist/components/atoms/ImagePreview/index.js +0 -222
  70. package/dist/components/atoms/ImagePreview/styles.js +0 -44
  71. package/dist/components/atoms/InputText/InputText.stories.js +0 -60
  72. package/dist/components/atoms/InputText/index.js +0 -66
  73. package/dist/components/atoms/InputText/styles.js +0 -32
  74. package/dist/components/atoms/NotFound/NotFound.stories.js +0 -36
  75. package/dist/components/atoms/NotFound/index.js +0 -75
  76. package/dist/components/atoms/NotFound/styles.js +0 -20
  77. package/dist/components/atoms/SelectItemV2/SelectItemV2.stories.js +0 -45
  78. package/dist/components/atoms/SelectItemV2/index.js +0 -57
  79. package/dist/components/atoms/SelectItemV2/styles.js +0 -30
  80. package/dist/components/atoms/Tooltip/Tooltip.stories.js +0 -66
  81. package/dist/components/atoms/Tooltip/index.js +0 -72
  82. package/dist/components/atoms/Tooltip/styles.js +0 -20
  83. package/dist/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +0 -66
  84. package/dist/components/molecules/ButtonDownloadFile/index.js +0 -179
  85. package/dist/components/molecules/ButtonDownloadFile/styles.js +0 -23
  86. package/dist/components/molecules/Dropdown/Dropdown.stories.js +0 -98
  87. package/dist/components/molecules/Dropdown/index.js +0 -150
  88. package/dist/components/molecules/Dropdown/styles.js +0 -26
  89. package/dist/components/molecules/ImageTooltip/ImageTooltip.stories.js +0 -82
  90. package/dist/components/molecules/ImageTooltip/index.js +0 -85
  91. package/dist/components/molecules/ImageTooltip/styles.js +0 -33
  92. package/dist/components/molecules/SelectV2/SelectV2.stories.js +0 -119
  93. package/dist/components/molecules/SelectV2/index.js +0 -306
  94. package/dist/components/molecules/SelectV2/styles.js +0 -42
  95. package/dist/components/molecules/SelectV2/test.js +0 -95
  96. package/dist/components/molecules/SelectV2/test.stories.js +0 -27
  97. package/dist/components/organisms/Chat/Chat.stories.js +0 -215
  98. package/dist/components/organisms/Chat/ChatLists/ChatLists.stories.js +0 -83
  99. package/dist/components/organisms/Chat/ChatLists/index.js +0 -160
  100. package/dist/components/organisms/Chat/ChatLists/styles.js +0 -29
  101. package/dist/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +0 -176
  102. package/dist/components/organisms/Chat/ContainerItems/index.js +0 -569
  103. package/dist/components/organisms/Chat/ContainerItems/styles.js +0 -20
  104. package/dist/components/organisms/Chat/ContentChat/ContentChat.stories.js +0 -142
  105. package/dist/components/organisms/Chat/ContentChat/index.js +0 -1422
  106. package/dist/components/organisms/Chat/ContentChat/styles.js +0 -20
  107. package/dist/components/organisms/Chat/Footer/Footer.stories.js +0 -43
  108. package/dist/components/organisms/Chat/Footer/index.js +0 -984
  109. package/dist/components/organisms/Chat/Footer/styles.js +0 -32
  110. package/dist/components/organisms/Chat/Header/Header.stories.js +0 -96
  111. package/dist/components/organisms/Chat/Header/index.js +0 -84
  112. package/dist/components/organisms/Chat/Header/styles.js +0 -20
  113. package/dist/components/organisms/Chat/index.js +0 -327
  114. package/dist/components/organisms/Chat/styles.js +0 -29
  115. package/dist/components/organisms/Modal/Modal.stories.js +0 -66
  116. package/dist/components/organisms/Modal/index.js +0 -95
  117. package/dist/components/organisms/Modal/styles.js +0 -20
  118. package/dist/components/organisms/RangeCalendar/RangeCalendar.stories.js +0 -33
  119. package/dist/components/organisms/RangeCalendar/index.js +0 -148
  120. package/dist/components/organisms/RangeCalendar/styles.js +0 -27
  121. package/dist/global-files/handle_http.js +0 -383
  122. package/dist/global-files/utils.js +0 -484
  123. package/src/assets/images/customSelect/starIcon.svg +0 -14
  124. package/src/assets/images/defaultImages/Spinner.gif +0 -0
  125. package/src/assets/images/defaultImages/notFound.svg +0 -124
  126. package/src/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +0 -47
  127. package/src/components/atoms/ButtonFileChooser/index.js +0 -69
  128. package/src/components/atoms/ButtonFileChooser/styles.js +0 -4
  129. package/src/components/atoms/ButtonV2/ButtonV2.stories.js +0 -53
  130. package/src/components/atoms/ButtonV2/index.js +0 -85
  131. package/src/components/atoms/ButtonV2/styles.js +0 -217
  132. package/src/components/atoms/CustomIcon/CustomIcon.stories.js +0 -36
  133. package/src/components/atoms/CustomIcon/index.js +0 -41
  134. package/src/components/atoms/CustomIcon/styles.js +0 -85
  135. package/src/components/atoms/IconFile/IconFile.stories.js +0 -35
  136. package/src/components/atoms/IconFile/index.js +0 -119
  137. package/src/components/atoms/IconFile/styles.js +0 -67
  138. package/src/components/atoms/Image/Image.stories.js +0 -51
  139. package/src/components/atoms/Image/index.js +0 -55
  140. package/src/components/atoms/Image/styles.js +0 -34
  141. package/src/components/atoms/ImageLink/ImageLink.stories.js +0 -43
  142. package/src/components/atoms/ImageLink/index.js +0 -57
  143. package/src/components/atoms/ImageLink/styles.js +0 -30
  144. package/src/components/atoms/ImagePreview/ImagePreview.stories.js +0 -52
  145. package/src/components/atoms/ImagePreview/index.js +0 -191
  146. package/src/components/atoms/ImagePreview/styles.js +0 -77
  147. package/src/components/atoms/InputText/InputText.stories.js +0 -39
  148. package/src/components/atoms/InputText/index.js +0 -61
  149. package/src/components/atoms/InputText/styles.js +0 -89
  150. package/src/components/atoms/NotFound/NotFound.stories.js +0 -19
  151. package/src/components/atoms/NotFound/index.js +0 -52
  152. package/src/components/atoms/NotFound/styles.js +0 -55
  153. package/src/components/atoms/SelectItemV2/SelectItemV2.stories.js +0 -26
  154. package/src/components/atoms/SelectItemV2/index.js +0 -61
  155. package/src/components/atoms/SelectItemV2/styles.js +0 -90
  156. package/src/components/atoms/Tooltip/Tooltip.stories.js +0 -51
  157. package/src/components/atoms/Tooltip/index.js +0 -59
  158. package/src/components/atoms/Tooltip/styles.js +0 -42
  159. package/src/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +0 -54
  160. package/src/components/molecules/ButtonDownloadFile/index.js +0 -111
  161. package/src/components/molecules/ButtonDownloadFile/styles.js +0 -66
  162. package/src/components/molecules/Dropdown/Dropdown.stories.js +0 -103
  163. package/src/components/molecules/Dropdown/index.js +0 -150
  164. package/src/components/molecules/Dropdown/styles.js +0 -75
  165. package/src/components/molecules/ImageTooltip/ImageTooltip.stories.js +0 -68
  166. package/src/components/molecules/ImageTooltip/index.js +0 -63
  167. package/src/components/molecules/ImageTooltip/styles.js +0 -18
  168. package/src/components/molecules/SelectV2/SelectV2.stories.js +0 -114
  169. package/src/components/molecules/SelectV2/index.js +0 -350
  170. package/src/components/molecules/SelectV2/styles.js +0 -105
  171. package/src/components/molecules/SelectV2/test.js +0 -61
  172. package/src/components/molecules/SelectV2/test.stories.js +0 -10
  173. package/src/components/organisms/Chat/Chat.stories.js +0 -199
  174. package/src/components/organisms/Chat/ChatLists/ChatLists.stories.js +0 -65
  175. package/src/components/organisms/Chat/ChatLists/Rotoplas.jpeg +0 -0
  176. package/src/components/organisms/Chat/ChatLists/THD.png +0 -0
  177. package/src/components/organisms/Chat/ChatLists/index.js +0 -141
  178. package/src/components/organisms/Chat/ChatLists/styles.js +0 -162
  179. package/src/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +0 -142
  180. package/src/components/organisms/Chat/ContainerItems/index.js +0 -549
  181. package/src/components/organisms/Chat/ContainerItems/styles.js +0 -328
  182. package/src/components/organisms/Chat/ContentChat/ContentChat.stories.js +0 -102
  183. package/src/components/organisms/Chat/ContentChat/Rotoplas.jpeg +0 -0
  184. package/src/components/organisms/Chat/ContentChat/THD.png +0 -0
  185. package/src/components/organisms/Chat/ContentChat/index.js +0 -900
  186. package/src/components/organisms/Chat/ContentChat/styles.js +0 -41
  187. package/src/components/organisms/Chat/Footer/Footer.stories.js +0 -22
  188. package/src/components/organisms/Chat/Footer/index.js +0 -669
  189. package/src/components/organisms/Chat/Footer/styles.js +0 -286
  190. package/src/components/organisms/Chat/Header/Header.stories.js +0 -66
  191. package/src/components/organisms/Chat/Header/index.js +0 -94
  192. package/src/components/organisms/Chat/Header/styles.js +0 -49
  193. package/src/components/organisms/Chat/index.js +0 -294
  194. package/src/components/organisms/Chat/styles.js +0 -42
  195. package/src/components/organisms/Modal/Modal.stories.js +0 -55
  196. package/src/components/organisms/Modal/index.js +0 -97
  197. package/src/components/organisms/Modal/styles.js +0 -103
  198. package/src/components/organisms/RangeCalendar/RangeCalendar.stories.js +0 -16
  199. package/src/components/organisms/RangeCalendar/index.js +0 -121
  200. package/src/components/organisms/RangeCalendar/styles.js +0 -883
  201. package/src/global-files/handle_http.js +0 -231
  202. package/src/global-files/utils.js +0 -309
@@ -1,231 +0,0 @@
1
- import axios from "axios";
2
-
3
- //============================================================
4
- /**
5
- * funcion que realiza un axios GET
6
- *
7
- * Si <body> es undefined significa que hubo error
8
-
9
- * @returns { Promise<{
10
- * body: {} | undefined ,
11
- * message: string,
12
- * errorDetail: string
13
- * }> }
14
- *
15
- */
16
- //============================================================
17
- export const fetchGET = (
18
- endpoint = "",
19
- paramsQuery = {},
20
- paramsHeaders = {}
21
- ) => {
22
- return new Promise(async (response) => {
23
- //console.log("======= fetchGET =========");
24
- try {
25
- let URL = endpoint;
26
- const keysParamsQuery = Object.keys(paramsQuery);
27
- // agregar cada param query a la URL
28
- keysParamsQuery.forEach((key, index) => {
29
- if (index == 0) {
30
- URL += `?${key}=${paramsQuery[key]}`;
31
- } else {
32
- URL += `&${key}=${paramsQuery[key]}`;
33
- }
34
- });
35
- //console.log("URL:", URL);
36
- const respHTTPjson = await axios.get(URL, { headers: paramsHeaders });
37
- // verificar si existe un error en la peticion realizada
38
- if (respHTTPjson.status !== 200) {
39
- return response({
40
- message: "No fue posible llevar a cabo la operación",
41
- errorDetail: respHTTPjson.statusText,
42
- });
43
- }
44
- // obtener body backend
45
- const body = JSON.parse(respHTTPjson.data.body);
46
-
47
- // verificar si existe error desde el backend
48
- if (respHTTPjson.data.statusCode !== 200) {
49
- return response({
50
- message: body.message ?? "",
51
- errorDetail: body.errorDetail ?? "",
52
- });
53
- }
54
- // success
55
- return response({ body });
56
- } catch (err) {
57
- return response({
58
- message: "Error al obtener los datos",
59
- errorDetail: err.message,
60
- });
61
- }
62
- });
63
- };
64
-
65
- //============================================================
66
- /**
67
- * funcion que realiza un axios POST
68
- *
69
- * Si <body> es undefined significa que hubo error
70
-
71
- * @returns { Promise<{
72
- * body: {} | undefined ,
73
- * message: string,
74
- * errorDetail: string
75
- * }> }
76
- *
77
- */
78
- //============================================================
79
- export const fetchPOST = (
80
- endpoint = "",
81
- paramsBody = {},
82
- paramsHeaders = {}
83
- ) => {
84
- return new Promise(async (response) => {
85
- //console.log("======= fetchPOST =========");
86
- try {
87
- const respHTTPjson = await axios.post(endpoint, paramsBody, {
88
- headers: paramsHeaders,
89
- });
90
-
91
- // verificar si existe un error en la peticion realizada
92
- if (respHTTPjson.status !== 200) {
93
- return response({
94
- message: "No fue posible llevar a cabo la operación",
95
- errorDetail: respHTTPjson.statusText,
96
- });
97
- }
98
- // obtener body backend
99
- const body = JSON.parse(respHTTPjson.data.body);
100
-
101
- // verificar si existe error desde el backend
102
- if (respHTTPjson.data.statusCode !== 200) {
103
- console.log(body);
104
- return response({
105
- message: body.message ?? "",
106
- errorDetail: body.errorDetail ?? "",
107
- });
108
- }
109
- // success
110
- return response({ body });
111
- } catch (err) {
112
- return response({
113
- message: "Error al guardar los datos",
114
- errorDetail: err.message,
115
- });
116
- }
117
- });
118
- };
119
-
120
- //============================================================
121
- /**
122
- * funcion que realiza un axios GET
123
- *
124
- * Si <body> es undefined significa que hubo error
125
-
126
- * @returns { Promise<{
127
- * body: {} | undefined ,
128
- * message: string,
129
- * errorDetail: string
130
- * }> }
131
- *
132
- */
133
- //============================================================
134
- export const fetchPUT = (
135
- endpoint = "",
136
- paramsBody = {},
137
- paramsHeaders = {}
138
- ) => {
139
- return new Promise(async (response) => {
140
- //console.log("======= fetchPUT =========");
141
- try {
142
- const respHTTPjson = await axios.put(endpoint, paramsBody, {
143
- headers: paramsHeaders,
144
- });
145
-
146
- // verificar si existe un error en la peticion realizada
147
- if (respHTTPjson.status !== 200) {
148
- return response({
149
- message: "No fue posible llevar a cabo la operación",
150
- errorDetail: respHTTPjson.statusText,
151
- });
152
- }
153
-
154
- // obtener body backend
155
- const body = JSON.parse(respHTTPjson.data.body);
156
-
157
- // verificar si existe error desde el backend
158
- if (respHTTPjson.data.statusCode !== 200) {
159
- return response({
160
- message: body.message ?? "",
161
- errorDetail: body.errorDetail ?? "",
162
- });
163
- }
164
-
165
- // success
166
- return response({ body });
167
- } catch (err) {
168
- return response({
169
- message: "Error al actualizar los datos",
170
- errorDetail: err.message,
171
- });
172
- }
173
- });
174
- };
175
-
176
- //============================================================
177
- /**
178
- * funcion que realiza un axios GET
179
- *
180
- * Si <body> es undefined significa que hubo error
181
-
182
- * @returns { Promise<{
183
- * body: {} | undefined ,
184
- * message: string,
185
- * errorDetail: string
186
- * }> }
187
- *
188
- */
189
- //============================================================
190
- export const fetchDELETE = (
191
- endpoint = "",
192
- paramsBody = {},
193
- paramsHeaders = {}
194
- ) => {
195
- return new Promise(async (response) => {
196
- //console.log("======= fetchDELETE =========");
197
- try {
198
- const respHTTPjson = await axios.delete(endpoint, {
199
- data: paramsBody,
200
- headers: paramsHeaders,
201
- });
202
-
203
- // verificar si existe un error en la peticion realizada
204
- if (respHTTPjson.status !== 200) {
205
- return response({
206
- message: "No fue posible llevar a cabo la operación",
207
- errorDetail: respHTTPjson.statusText,
208
- });
209
- }
210
-
211
- // obtener body backend
212
- const body = JSON.parse(respHTTPjson.data.body);
213
-
214
- // verificar si existe error desde el backend
215
- if (respHTTPjson.data.statusCode !== 200) {
216
- return response({
217
- message: body.message ?? "",
218
- errorDetail: body.errorDetail ?? "",
219
- });
220
- }
221
-
222
- // success
223
- return response({ body });
224
- } catch (err) {
225
- return response({
226
- message: "Error al actualizar los datos",
227
- errorDetail: err.message,
228
- });
229
- }
230
- });
231
- };
@@ -1,309 +0,0 @@
1
- import { Base64 } from "js-base64";
2
- import moment from "moment";
3
-
4
- /*====================================================================
5
- UTILERIAS PARA EL MANEJO DE ARCHIVOS
6
- ======================================================================*/
7
- /*------------------------
8
- devolver el base64
9
- completo de un file
10
- --------------------------*/
11
- export const getBase64 = async (file) => {
12
- return new Promise((success) => {
13
- const reader = new FileReader();
14
- reader.addEventListener("loadend", () => {
15
- success(reader.result);
16
- });
17
- reader.readAsDataURL(file);
18
- });
19
- };
20
-
21
- /*------------------------
22
- devolver la data de un string base64
23
- --------------------------*/
24
- export const getDataBase64 = (base64Full) => {
25
- //const base64 = reader.result.replace(/^data:\w+\/\w+.*;base64,/, "");
26
- try {
27
- const base64 = base64Full.split("base64,");
28
- return base64.length ? base64[1] : undefined;
29
- } catch (err) {
30
- return undefined;
31
- }
32
- };
33
-
34
- /*------------------------
35
- devolver un data Buffer a partir
36
- de un data base64
37
- --------------------------*/
38
- export const getDataBuffer = (dataBase64) => {
39
- try {
40
- const dataBuffer = Buffer.from(dataBase64, "base64");
41
- return dataBuffer;
42
- } catch (err) {
43
- return undefined;
44
- }
45
- };
46
-
47
- /*------------------------
48
- devolver la extension de un file
49
- a partir de un string: "name.ext"
50
- --------------------------*/
51
- export const getFileExtension = (fileName = "") => {
52
- const nameParts = fileName.split(".");
53
- let ext = "";
54
- nameParts.forEach((part, index) => {
55
- if (index !== 0) {
56
- if (index + 1 === nameParts.length) ext += part;
57
- else ext += part + ".";
58
- }
59
- });
60
- return ext === "" ? undefined : ext;
61
- };
62
-
63
- /*------------------------
64
- devolver el nombre de un file
65
- a partir de un string: "name.ext"
66
- --------------------------*/
67
- export const getFileName = (fileName = "") => {
68
- const nameParts = fileName.split(".");
69
- if (nameParts.length) return nameParts[0];
70
- return undefined;
71
- };
72
-
73
- /*------------------------
74
- obtener la URL de una imagen
75
- con un peso mas pequeño al
76
- peso original pasando como
77
- parametros:
78
- => bucket: <string> bucket en donde se ecuentra la img
79
- => key: <string> ruta y nombre completa de la img (keyS3)
80
- => width: <number> largo de la img en px
81
- => height: <number> altura de la img en px
82
- --------------------------*/
83
- export const getImageURL = (bucket, key, width, height) => {
84
- try {
85
- const configAWS = {
86
- bucket: bucket,
87
- key: key,
88
- edits: {
89
- resize: {
90
- width: width,
91
- height: height,
92
- fit: "contain",
93
- background: { r: 255, g: 255, b: 255, alpha: 0 },
94
- },
95
- },
96
- };
97
- let url = "https://d24s337exbt5zr.cloudfront.net/";
98
- url += Base64.encode(JSON.stringify(configAWS));
99
- return url;
100
- } catch (err) {
101
- console.log(`ERROR al obtener la URL de la imagen (${key})`, err.message);
102
- return undefined;
103
- }
104
- };
105
-
106
- /*------------------------
107
- obtener la dimension de una imagen
108
- a partir de un objeto <File>
109
- retorno: {
110
- => width: <number> largo de la img en px
111
- => height: <number> altura de la img en px
112
- }
113
- NOTA regresa <undefined> si no se pudo
114
- obtener la dimension de la imagen
115
- --------------------------*/
116
- export const getImageSize = (file) => {
117
- return new Promise(async (response) => {
118
- const img = new Image();
119
- img.onload = () => response({ width: img.width, height: img.height });
120
- img.onerror = () => response(undefined);
121
- const base64 = await getBase64(file);
122
- img.src = base64;
123
- });
124
- };
125
-
126
- /*------------------------
127
- obtener una redimension (height) proporcional
128
- a la dimension original (height) a partir de
129
- un width deseado
130
- retorno:
131
- => newHeight: <number> altura de la img en px
132
- NOTA regresa <undefined> si no se pudo
133
- obtener el nuevo <height> de la imagen
134
- --------------------------*/
135
- export const getResizeImgHeight = (originalWidth, originalHeight, newWidth) => {
136
- /*
137
- console.log(`==================
138
- original width: ${originalWidth}
139
- original height: ${originalHeight}
140
- newWidth: ${newWidth}`);
141
- */
142
- const scale = (newWidth * 100) / originalWidth / 100;
143
- //console.log("scale:", scale);
144
- return Math.ceil(originalHeight * scale);
145
- };
146
-
147
- /*====================================================================
148
- UTILERIAS PARA EL MANEJO DE FECHAS
149
- ======================================================================*/
150
- /*------------------------
151
- nombres de los dias de la semana
152
- --------------------------*/
153
- const weekdayName = {
154
- 1: { short: "Dom", full: "Domingo" },
155
- 2: { short: "Lun", full: "Lunes" },
156
- 3: { short: "Mar", full: "Martes" },
157
- 4: { short: "Mié", full: "Miércoles" },
158
- 5: { short: "Jue", full: "Jueves" },
159
- 6: { short: "Vie", full: "Viernes" },
160
- 7: { short: "Sab", full: "Sabado" },
161
- };
162
- /*------------------------
163
- nombres de los meses
164
- --------------------------*/
165
- const monthName = {
166
- 1: { short: "Ene", full: "Enero" },
167
- 2: { short: "Feb", full: "Febrero" },
168
- 3: { short: "Mar", full: "Marzo" },
169
- 4: { short: "Abr", full: "Abril" },
170
- 5: { short: "May", full: "Mayo" },
171
- 6: { short: "Jun", full: "Junio" },
172
- 7: { short: "Jul", full: "Julio" },
173
- 8: { short: "Ago", full: "Agosto" },
174
- 9: { short: "Sep", full: "Septiembre" },
175
- 10: { short: "Oct", full: "Octubre" },
176
- 11: { short: "Nov", full: "Noviembre" },
177
- 12: { short: "Dic", full: "Diciembre" },
178
- };
179
-
180
- /*------------------------
181
- Obtener una fecha a partir de
182
- un objeto Date() en formato:
183
- 'DDD dd MMM aaaa'
184
- ejemplo: 'Ene 12 Jul 2022'
185
- --------------------------*/
186
- export const getFullDate = (date = new Date()) => {
187
- if (isNaN(date)) return undefined;
188
- let dateString = `${weekdayName[date.getDay() + 1].short} `;
189
- dateString += date.getDate() + " ";
190
- dateString += `${monthName[date.getMonth() + 1].short} `;
191
- dateString += date.getFullYear();
192
- return dateString;
193
- };
194
-
195
- /*------------------------
196
- Obtener una fecha a partir de
197
- un objeto Date() en formato:
198
- 'dd de MMMM del aaaa'
199
- ejemplo: '12 de octubre del 2022'
200
- => si es la fecha del dia actual:
201
- devolvera 'Hoy'
202
- => si es la fecha del dia de ayer:
203
- devolvera 'Ayer'
204
- => si es fecha del mismo año:
205
- devolvera '12 de octubre'
206
- --------------------------*/
207
- export const getCustomDate = (date = new Date()) => {
208
- if (isNaN(date)) return "";
209
- let dateString = date.getDate() + " de ";
210
- dateString += `${monthName[date.getMonth() + 1].full}`;
211
- const today = new Date();
212
- const yesterday = new Date();
213
- yesterday.setDate(today.getDate() - 1);
214
-
215
- // fecha de Hoy
216
- if (
217
- date.getDate() === today.getDate() &&
218
- date.getMonth() === today.getMonth() &&
219
- date.getFullYear() === today.getFullYear()
220
- ) {
221
- return "Hoy";
222
- }
223
- // fecha de Ayer
224
- if (
225
- date.getDate() === yesterday.getDate() &&
226
- date.getMonth() === yesterday.getMonth() &&
227
- date.getFullYear() === yesterday.getFullYear()
228
- ) {
229
- return "Ayer";
230
- }
231
- // fechas del mismo año
232
- if (date.getFullYear() === today.getFullYear()) return dateString;
233
- // fechas de diferente año
234
- return dateString + " del " + date.getFullYear();
235
- };
236
-
237
- /*------------------------
238
- Obtener una hora a partir de
239
- una fecha string (current_timestamp)
240
- en formato: 'hh:mm PM/AM'
241
- ejemplo: '12:34 PM'
242
- --------------------------*/
243
- export const getTime = (time = "") => {
244
- if ([undefined, null, ""].includes(time))
245
- return moment(new Date()).format("LT");
246
- else return moment(time).format("LT");
247
- };
248
-
249
- /*====================================================================
250
- UTILERIAS PARA EL MANEJO DE VALIDACIONES
251
- ======================================================================*/
252
- /*------------------------
253
- recibe un number o string
254
- y determina si es numero natural
255
- 0,1,2,...
256
- --------------------------*/
257
- export const isValidNaturalNumber = (number) => {
258
- if ([undefined, null, ""].includes(number)) return false;
259
- if (!["string", "number"].includes(typeof number)) return false;
260
- try {
261
- const numberString = number + "";
262
- for (let i = 0; i < numberString.length; i++) {
263
- if ("0123456789".indexOf(numberString.charAt(i)) === -1) return false;
264
- }
265
- return true;
266
- } catch (err) {
267
- return false;
268
- }
269
- };
270
-
271
- /*------------------------
272
- recibe un array y determina si
273
- el array esta vacio []
274
- --------------------------*/
275
- export const isArrayEmpty = (array) => {
276
- if (Array.isArray(array) && array.length) return false;
277
- return true;
278
- };
279
-
280
- /*------------------------
281
- recibe un string y determina si
282
- esta vacio ""
283
- --------------------------*/
284
- export const isStringEmpty = (cad) => {
285
- if (cad && typeof cad === "string" && cad.trim().length !== 0) return false;
286
- return true;
287
- };
288
-
289
- /*------------------------
290
- recibe un string JSON y lo
291
- decodifica a su valor original
292
- --------------------------*/
293
- export const decodeJSON = (valueJSON) => {
294
- try {
295
- const decodeValue = JSON.parse(valueJSON);
296
- return decodeValue;
297
- } catch (err) {
298
- return valueJSON;
299
- }
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
- };