npm-pkg-hook 1.3.8 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (394) hide show
  1. package/.babelrc +2 -10
  2. package/.env +5 -1
  3. package/dist/index.js +17953 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +17711 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/eslint.config.mjs +154 -0
  8. package/expire.json +1 -0
  9. package/index.d.ts +2 -0
  10. package/jest.config.ts +9 -0
  11. package/package.json +45 -36
  12. package/src/config/client/errors.ts +39 -0
  13. package/src/config/content/en.json +5 -0
  14. package/src/config/content/es.json +5 -0
  15. package/src/config/content/index.ts +16 -0
  16. package/src/hooks/addTenMinutes/index.ts +14 -0
  17. package/src/hooks/calculateLogLatHaversine/index.ts +41 -0
  18. package/src/hooks/completeSchedules/index.ts +22 -0
  19. package/src/hooks/convertToMilitaryTime/index.ts +18 -0
  20. package/src/hooks/generateStoreURL/index.ts +41 -0
  21. package/src/hooks/generateTemplate/index.ts +66 -0
  22. package/src/hooks/getCardType/index.ts +24 -0
  23. package/src/hooks/getCategoriesWithProduct/{index.js → index.ts} +7 -7
  24. package/src/hooks/getGlobalSession/index.ts +69 -0
  25. package/src/hooks/getSession/index.ts +72 -0
  26. package/src/hooks/getTodayTimestamps/index.ts +70 -0
  27. package/src/hooks/getTotalHours/index.ts +76 -0
  28. package/src/hooks/handleLogin/index.ts +14 -0
  29. package/src/hooks/index.ts +154 -0
  30. package/src/hooks/isTokenExpired/index.ts +17 -0
  31. package/src/hooks/newMessageSubscription/index.ts +28 -0
  32. package/src/hooks/newStoreOrderSubscription/index.ts +26 -0
  33. package/src/hooks/{useStatusOpenStore/helpers/index.js → statusOpenStores/helpers/index.ts} +24 -1
  34. package/src/hooks/statusOpenStores/index.ts +221 -0
  35. package/src/hooks/updateExtProductFoodsOptional/{index.js → index.ts} +15 -6
  36. package/src/hooks/useAcumulateDate/index.ts +18 -0
  37. package/src/hooks/useAllStoresPendingToRegister/index.ts +37 -0
  38. package/src/hooks/useAmountInput/index.ts +127 -0
  39. package/src/hooks/useAnimationText/{index.jsx → index.ts} +2 -2
  40. package/src/hooks/useAsideCart/index.ts +217 -0
  41. package/src/hooks/useBanner/{index.js → index.ts} +2 -1
  42. package/src/hooks/useCart/{queries.js → queries.ts} +11 -1
  43. package/src/hooks/useCart/useCart/helpers/{index.js → index.ts} +10 -6
  44. package/src/hooks/useCart/useCart/{index.js → index.ts} +58 -44
  45. package/src/hooks/useCart/useGetCart/{index.js → index.ts} +6 -3
  46. package/src/hooks/useCatWithProduct/{index.js → index.ts} +17 -7
  47. package/src/hooks/useCatWithProduct/{queries.js → queries.ts} +50 -23
  48. package/src/hooks/useCatWithProduct/types/index.ts +104 -0
  49. package/src/hooks/useCatWithProductClient/{index.js → index.ts} +19 -18
  50. package/src/hooks/useCatWithProductClient/{queries.js → queries.ts} +1 -0
  51. package/src/hooks/useCategoriesProduct/{index.js → index.ts} +3 -1
  52. package/src/hooks/useCategoriesProduct/{queries.js → queries.ts} +2 -2
  53. package/src/hooks/useCategoryInStore/index.ts +167 -0
  54. package/src/hooks/useCategoryInStore/{queries.js → queries.ts} +2 -2
  55. package/src/hooks/useCategoryStore/{index.js → index.ts} +4 -3
  56. package/src/hooks/useCategoryStore/{queries.js → queries.ts} +2 -2
  57. package/src/hooks/useChartData/{index.js → index.ts} +31 -34
  58. package/src/hooks/useChartData/useChartData/{index.js → index.ts} +31 -30
  59. package/src/hooks/useChartData/useChartDataAllOrders/{index.js → index.ts} +4 -4
  60. package/src/hooks/useChatRoomSubscription/index.ts +28 -0
  61. package/src/hooks/useCheckbox/{index.js → index.ts} +1 -1
  62. package/src/hooks/useCities/index.ts +14 -0
  63. package/src/hooks/useCities/queries.ts +12 -0
  64. package/src/hooks/useClients/{index.js → index.ts} +36 -10
  65. package/src/hooks/useClients/queries.ts +215 -0
  66. package/src/hooks/useColorByLetters/helpers/alea.ts +73 -0
  67. package/src/hooks/useColorByLetters/helpers/colors.ts +45 -0
  68. package/src/hooks/useColorByLetters/helpers/index.ts +24 -0
  69. package/src/hooks/useColorByLetters/helpers/mersenne_twister.ts +118 -0
  70. package/src/hooks/useColorByLetters/index.ts +24 -0
  71. package/src/hooks/useConnection/index.ts +24 -0
  72. package/src/hooks/useCountries/index.ts +20 -0
  73. package/src/hooks/useCountries/queries.ts +12 -0
  74. package/src/hooks/useCreateDeliveryTime/index.ts +51 -0
  75. package/src/hooks/useCreateOrderStatusType/index.ts +134 -0
  76. package/src/hooks/useCreateProduct/helpers/index.ts +23 -0
  77. package/src/hooks/useCreateProduct/helpers/manageCacheDataCatProduct/{index.js → index.ts} +1 -1
  78. package/src/hooks/useCreateProduct/helpers/useEditImageProduct/{index.js → index.ts} +14 -8
  79. package/src/hooks/useCreateProduct/index.ts +337 -0
  80. package/src/hooks/useCreateStorePendingToRegister/index.ts +17 -0
  81. package/src/hooks/useCreateStorePendingToRegister/queries.ts +10 -0
  82. package/src/hooks/useDashboardComponents/index.ts +50 -0
  83. package/src/hooks/useDeleteExtraProductFoods/index.ts +13 -0
  84. package/src/hooks/useDeleteSubProductOptional/{index.js → index.ts} +5 -3
  85. package/src/hooks/useDeliveryTime/index.ts +29 -0
  86. package/src/hooks/useDepartments/index.ts +14 -0
  87. package/src/hooks/useDepartments/queries.ts +13 -0
  88. package/src/hooks/useDessert/{index.js → index.ts} +162 -114
  89. package/src/hooks/useDessertWithPrice/helpers/index.ts +76 -0
  90. package/src/hooks/useDessertWithPrice/index.ts +381 -0
  91. package/src/hooks/useDessertWithPrice/queries.ts +18 -0
  92. package/src/hooks/useDevWS/index.ts +53 -0
  93. package/src/hooks/useDevices/index.ts +2 -0
  94. package/src/hooks/useDevices/queries.ts +28 -0
  95. package/src/hooks/useDevices/useGetDevices.ts +28 -0
  96. package/src/hooks/useDevices/useRegisterDevices.ts +75 -0
  97. package/src/hooks/useDownloadReports/helpers/downloadFileFromResponse.ts +21 -0
  98. package/src/hooks/useDownloadReports/index.ts +2 -0
  99. package/src/hooks/useDownloadReports/useDownloadReportByDay/index.ts +105 -0
  100. package/src/hooks/useDownloadReports/useGetReportByDateRange/index.ts +116 -0
  101. package/src/hooks/useDrag/{index.js → index.ts} +16 -0
  102. package/src/hooks/useDropzone/{index.js → index.ts} +2 -2
  103. package/src/hooks/useDynamicAuth/{index.js → index.ts} +2 -1
  104. package/src/hooks/useEditCategory/{index.js → index.ts} +14 -14
  105. package/src/hooks/useEditOneExtProductFoodOptional/index.ts +28 -0
  106. package/src/hooks/useEditOneExtProductFoodOptional/{queries.js → queries.ts} +2 -2
  107. package/src/hooks/useEditSubProductOptional/index.ts +12 -0
  108. package/src/hooks/useEmployee/index.ts +18 -0
  109. package/src/hooks/useEmployee/queries.ts +85 -0
  110. package/src/hooks/useEmployee/useCreateEmployee.ts +90 -0
  111. package/src/hooks/useEvent/{index.js → index.ts} +1 -0
  112. package/src/hooks/useFavoriteStores/index.ts +31 -0
  113. package/src/hooks/useFavoriteStores/queries.ts +54 -0
  114. package/src/hooks/useFetchMoreInteractions/index.jsx +26 -26
  115. package/src/hooks/useFilterConfigs/index.ts +173 -0
  116. package/src/hooks/useFingerprintjs/{index.js → index.ts} +32 -7
  117. package/src/hooks/useFormTools/index.ts +143 -0
  118. package/src/hooks/useFormatDate/index.ts +91 -0
  119. package/src/hooks/useFullScreenMode/{index.js → index.ts} +1 -5
  120. package/src/hooks/useGetAllLocationUser/index.ts +13 -0
  121. package/src/hooks/useGetAllLocationUser/queries.ts +44 -0
  122. package/src/hooks/{useSales/useGetAllSales/index.js → useGetAllSales/index.ts} +3 -2
  123. package/src/hooks/useGetCookies/index.ts +43 -0
  124. package/src/hooks/useGetExtProductFoodsSubOptionalAll/{index.js → index.ts} +2 -1
  125. package/src/hooks/useGetFoodRecomended/{index.js → index.ts} +2 -1
  126. package/src/hooks/useGetMessagesToRoom/index.ts +23 -0
  127. package/src/hooks/useGetMinPrice/{index.js → index.ts} +2 -1
  128. package/src/hooks/useGetOneStoreRating/{index.js → index.ts} +2 -1
  129. package/src/hooks/useGetSalesAmountToday/index.ts +31 -0
  130. package/src/hooks/useGetStoreCookie/index.ts +21 -0
  131. package/src/hooks/useGoogleLogin/{index.js → index.ts} +14 -5
  132. package/src/hooks/useHover/{index.js → index.ts} +3 -0
  133. package/src/hooks/useImageOptimization/{index.js → index.ts} +4 -0
  134. package/src/hooks/useImageUploaderProduct/helper/canvasUtils.ts +146 -0
  135. package/src/hooks/useImageUploaderProduct/helper/getOrientation.ts +54 -0
  136. package/src/hooks/useImageUploaderProduct/helper/index.ts +5 -0
  137. package/src/hooks/useImageUploaderProduct/index.ts +295 -0
  138. package/src/hooks/useImageWeight/{index.js → index.ts} +4 -0
  139. package/src/hooks/useImagesStore/index.ts +227 -0
  140. package/src/hooks/useImagesStore/{queries.js → queries.ts} +4 -68
  141. package/src/hooks/useImagesStore/utils/index.ts +4 -0
  142. package/src/hooks/useIncomingOrders/index.ts +11 -0
  143. package/src/hooks/useIncomingOrders/queries.ts +87 -0
  144. package/src/hooks/useIntersection/{index.js → index.ts} +1 -1
  145. package/src/hooks/useInventory/index.ts +2 -0
  146. package/src/hooks/useInventory/queries.ts +58 -0
  147. package/src/hooks/useInventory/useGetProductsInStock.ts +16 -0
  148. package/src/hooks/useInventory/useUpdateManageStock.ts +41 -0
  149. package/src/hooks/useLazyScript/{index.js → index.ts} +3 -0
  150. package/src/hooks/useLocalBackendIp/index.ts +34 -0
  151. package/src/hooks/useLocalSorage/{index.js → index.ts} +3 -3
  152. package/src/hooks/useLocationManager/index.ts +63 -0
  153. package/src/hooks/useLoginEmployeeInStore/index.ts +38 -0
  154. package/src/hooks/useLogout/helpers/BroadcastChannel.ts +74 -0
  155. package/src/hooks/useLogout/helpers/apiBaseUrl.ts +12 -0
  156. package/src/hooks/useLogout/helpers/fetchData.ts +37 -0
  157. package/src/hooks/useLogout/helpers/getCsrfToken.ts +37 -0
  158. package/src/hooks/useLogout/helpers/index.ts +65 -0
  159. package/src/hooks/useLogout/helpers/logger.ts +88 -0
  160. package/src/hooks/useLogout/helpers/parseUrl.ts +39 -0
  161. package/src/hooks/useLogout/index.ts +105 -0
  162. package/src/hooks/useManageNewOrder/helpers/index.ts +45 -0
  163. package/src/hooks/useManageNewOrder/index.ts +104 -0
  164. package/src/hooks/useManageQueryParams/index.ts +120 -0
  165. package/src/hooks/useMobile/index.ts +65 -0
  166. package/src/hooks/useModules/helpers/index.ts +1 -0
  167. package/src/hooks/useModules/helpers/validateModules.ts +43 -0
  168. package/src/hooks/useModules/index.ts +124 -0
  169. package/src/hooks/useMouse/index.ts +55 -0
  170. package/src/hooks/useOrderStatusTypes/index.ts +2 -0
  171. package/src/hooks/useOrderStatusTypes/useOrderStatusTypes/index.ts +133 -0
  172. package/src/hooks/useOrderStatusTypes/useUpdateOrderStatusPriorities/index.ts +99 -0
  173. package/src/hooks/useOrders/index.ts +3 -0
  174. package/src/hooks/useOrders/queries.ts +99 -0
  175. package/src/hooks/useOrders/useChangeOrderState/index.ts +128 -0
  176. package/src/hooks/useOrders/{index.js → useOrdersFromStore/index.ts} +20 -18
  177. package/src/hooks/usePWAInstall/index.ts +38 -0
  178. package/src/hooks/usePaymentMethod/index.ts +3 -0
  179. package/src/hooks/usePaymentMethod/paymentMethod.gql.ts +62 -0
  180. package/src/hooks/usePaymentMethod/paymentMethod.types.ts +28 -0
  181. package/src/hooks/usePaymentMethod/useCreatePaymentMethod/index.ts +25 -0
  182. package/src/hooks/usePaymentMethod/useGetAllPaymentMethods/index.ts +19 -0
  183. package/src/hooks/usePaymentMethod/useGetPaymentMethod/index.ts +26 -0
  184. package/src/hooks/usePortFetcher/index.ts +33 -0
  185. package/src/hooks/usePrintSaleTicket/index.ts +68 -0
  186. package/src/hooks/useProductsFood/index.ts +341 -0
  187. package/src/hooks/useProductsFood/{queriesStore.js → queriesStore.ts} +151 -84
  188. package/src/hooks/useProductsFood/types/index.ts +0 -0
  189. package/src/hooks/useProductsFood/useEditProduct.ts +49 -0
  190. package/src/hooks/useProductsFood/usetagsProducts.ts +101 -0
  191. package/src/hooks/useProviders/useProvidersCreateStore/{index.js → index.ts} +2 -1
  192. package/src/hooks/useProviders/useProvidersDataStore/{index.js → index.ts} +2 -1
  193. package/src/hooks/useProvidersStore/{index.js → index.ts} +2 -1
  194. package/src/hooks/usePushNotificationOrder/index.ts +52 -0
  195. package/src/hooks/usePushNotifications/helpers/index.ts +123 -0
  196. package/src/hooks/usePushNotifications/index.ts +150 -0
  197. package/src/hooks/useQueryLocationsMap/index.ts +20 -0
  198. package/src/hooks/useQueryLocationsMap/queries.ts +40 -0
  199. package/src/hooks/useRatingArrayData/{index.js → index.ts} +4 -4
  200. package/src/hooks/useRatingArrayData/{queries.js → queries.ts} +1 -1
  201. package/src/hooks/useReactToPrint/index.ts +4 -0
  202. package/src/hooks/useRemoveExtraProductFoodsOptional/{index.js → index.ts} +2 -1
  203. package/src/hooks/useRemoveExtraProductFoodsOptional/{queries.js → queries.ts} +4 -4
  204. package/src/hooks/useReport/{index.js → index.ts} +5 -5
  205. package/src/hooks/useReport/{queries.js → queries.ts} +4 -55
  206. package/src/hooks/useRestaurant/helpers/index.ts +28 -0
  207. package/src/hooks/useRestaurant/helpers/manageStatusOpen.ts +26 -0
  208. package/src/hooks/useRestaurant/index.ts +71 -0
  209. package/src/hooks/useRestaurant/{queries.js → queries.ts} +2 -1
  210. package/src/hooks/useRoads/index.ts +20 -0
  211. package/src/hooks/useRoads/queries.ts +13 -0
  212. package/src/hooks/useRoles/index.ts +4 -0
  213. package/src/hooks/useRoles/queries.ts +70 -0
  214. package/src/hooks/useRoles/useCreateRole.ts +40 -0
  215. package/src/hooks/useRoles/useGetRoles.ts +37 -0
  216. package/src/hooks/useRoles/useRemoveRoles.ts +40 -0
  217. package/src/hooks/useRoles/useUpdateRolesPriority.ts +44 -0
  218. package/src/hooks/useSales/helpers/add-product.utils.ts +120 -0
  219. package/src/hooks/useSales/helpers/apply-discount-to-cart.utils.ts +292 -0
  220. package/src/hooks/useSales/helpers/comment-product.utils.ts +41 -0
  221. package/src/hooks/useSales/helpers/constants/index.ts +38 -0
  222. package/src/hooks/useSales/helpers/extras.utils.ts +42 -0
  223. package/src/hooks/useSales/helpers/filterProductsByCarProId.utils.ts +17 -0
  224. package/src/hooks/useSales/helpers/increment-product-quantity.utils.ts +76 -0
  225. package/src/hooks/useSales/helpers/index.ts +3 -0
  226. package/src/hooks/useSales/helpers/initializer.utils.ts +22 -0
  227. package/src/hooks/useSales/helpers/isStockInsufficient.ts +3 -0
  228. package/src/hooks/useSales/helpers/remove-product.utils.test.ts +49 -0
  229. package/src/hooks/useSales/helpers/remove-product.utils.ts +34 -0
  230. package/src/hooks/useSales/helpers/resolveProduct.ts +29 -0
  231. package/src/hooks/useSales/helpers/useAddToCart.ts +64 -0
  232. package/src/hooks/useSales/index.ts +1418 -0
  233. package/src/hooks/useSales/{queries.js → queries.ts} +256 -166
  234. package/src/hooks/useSales/types/index.ts +206 -0
  235. package/src/hooks/useSales/types/use-sales.types.ts +8 -0
  236. package/src/hooks/useSales/useGetSale.ts +21 -0
  237. package/src/hooks/useSales/useTotalSales.ts +24 -0
  238. package/src/hooks/useSaveAvailableProduct/helpers/{index.js → index.ts} +4 -4
  239. package/src/hooks/useSaveAvailableProduct/{index.js → index.ts} +7 -1
  240. package/src/hooks/useSaveLocation/index.ts +17 -0
  241. package/src/hooks/useSaveLocation/queries.ts +19 -0
  242. package/src/hooks/useSchedule/{index.jsx → index.ts} +16 -4
  243. package/src/hooks/useSchedule/{index.js → schedule.ts} +22 -15
  244. package/src/hooks/useScheduleData/{index.js → index.ts} +21 -9
  245. package/src/hooks/useSetImageProducts/index.ts +59 -0
  246. package/src/hooks/useSetImageProducts/queries.ts +18 -0
  247. package/src/hooks/useSetSession/{index.js → index.ts} +16 -17
  248. package/src/hooks/useSetupSchedule/helpers/index.ts +85 -0
  249. package/src/hooks/useSetupSchedule/index.ts +284 -0
  250. package/src/hooks/useStatusOpenStore/helpers/index.ts +124 -0
  251. package/src/hooks/useStatusOpenStore/{index.js → index.ts} +39 -16
  252. package/src/hooks/useStatusOrdersClient/{index.js → index.ts} +3 -2
  253. package/src/hooks/useStatusOrdersClient/{queries.js → queries.ts} +2 -2
  254. package/src/hooks/useStock/index.ts +1 -0
  255. package/src/hooks/useStock/useStockUpdatedAllSubscription.ts +40 -0
  256. package/src/hooks/useStockMovements/helpers/index.ts +16 -0
  257. package/src/hooks/useStockMovements/index.ts +39 -0
  258. package/src/hooks/useStore/index.ts +83 -0
  259. package/src/hooks/useStore/{queries.js → queries.ts} +71 -71
  260. package/src/hooks/useStoreContacts/{index.js → index.ts} +11 -5
  261. package/src/hooks/useStoreTable/index.ts +2 -0
  262. package/src/hooks/useStoreTable/queries.ts +47 -0
  263. package/src/hooks/useStoreTable/useStoreTableCreate.ts +77 -0
  264. package/src/hooks/useStoreTable/useStoreTables.ts +15 -0
  265. package/src/hooks/useSubscriptionValidation/index.ts +112 -0
  266. package/src/hooks/useTagProducts/index.ts +3 -0
  267. package/src/hooks/useTagProducts/useDeleteOneTag.ts +106 -0
  268. package/src/hooks/useTagProducts/useGetAllTags.ts +68 -0
  269. package/src/hooks/useTagProducts/useRegisterMultipleTags.ts +157 -0
  270. package/src/hooks/useTheme/index.ts +65 -0
  271. package/src/hooks/useTimeAgo/{useTimeAgo.js → useTimeAgo.ts} +7 -7
  272. package/src/hooks/useTokenCards/index.ts +45 -0
  273. package/src/hooks/useTopProductsMovements/index.ts +27 -0
  274. package/src/hooks/useTotalAllSales/index.ts +25 -0
  275. package/src/hooks/useTotalProductsInStock/index.ts +23 -0
  276. package/src/hooks/useTotalProductsSold/index.ts +23 -0
  277. package/src/hooks/useTotalProductsSolded/index.ts +20 -0
  278. package/src/hooks/useUpdateCart/{index.js → index.ts} +3 -2
  279. package/src/hooks/useUpdateCartCookie/index.ts +60 -0
  280. package/src/hooks/useUpdateDashboardComponent/index.ts +91 -0
  281. package/src/hooks/useUpdateExistingOrders/{index.js → index.ts} +5 -11
  282. package/src/hooks/useUpdateExtProductFoodsSubOptional/index.ts +61 -0
  283. package/src/hooks/useUpdateModuleOrder/index.ts +37 -0
  284. package/src/hooks/useUpdateMultipleExtProduct/index.ts +34 -0
  285. package/src/hooks/useUpdateMultipleExtProduct/queries.ts +33 -0
  286. package/src/hooks/useUpdateMultipleProducts/index.ts +117 -0
  287. package/src/hooks/useUpdateMultipleProducts/queries.ts +51 -0
  288. package/src/hooks/useUploadProducts/helpers/index.ts +1 -0
  289. package/src/hooks/useUploadProducts/helpers/parseNumber.ts +37 -0
  290. package/src/hooks/useUploadProducts/helpers/validateProductDataExcel.ts +73 -0
  291. package/src/hooks/useUploadProducts/index.ts +442 -0
  292. package/src/hooks/useUpsertGoal/index.ts +68 -0
  293. package/src/hooks/useUser/{index.js → index.ts} +11 -4
  294. package/src/hooks/useUser/{queries.js → queries.ts} +9 -4
  295. package/src/hooks/useWeeklyStockMovement/helpers/index.ts +32 -0
  296. package/src/hooks/useWeeklyStockMovement/index.ts +52 -0
  297. package/src/hooks/useWindowSize/{index.js → index.ts} +9 -2
  298. package/src/index.ts +12 -0
  299. package/src/security/index.ts +1 -0
  300. package/src/services/index.ts +1 -0
  301. package/src/utils/UtilDateRange.ts +56 -0
  302. package/src/utils/generateCode.ts +222 -0
  303. package/src/utils/index.ts +2 -0
  304. package/src/utils/utils.ts +344 -0
  305. package/tsconfig.eslint.json +17 -0
  306. package/tsconfig.json +21 -0
  307. package/tsup.config.ts +24 -0
  308. package/.eslintrc.js +0 -38
  309. package/.eslintrc.json +0 -127
  310. package/next.config.js +0 -126
  311. package/src/config/client/errors.js +0 -26
  312. package/src/hooks/getGlobalSession/index.js +0 -49
  313. package/src/hooks/getSession/index.js +0 -18
  314. package/src/hooks/handleLogin/index.js +0 -10
  315. package/src/hooks/index.js +0 -77
  316. package/src/hooks/useAcumulateDate/index.js +0 -16
  317. package/src/hooks/useAsideCart/index.js +0 -155
  318. package/src/hooks/useCategoryInStore/index.js +0 -98
  319. package/src/hooks/useClients/queries.js +0 -127
  320. package/src/hooks/useConnection/index.js +0 -22
  321. package/src/hooks/useCreateProduct/index.js +0 -291
  322. package/src/hooks/useDevices/index.js +0 -35
  323. package/src/hooks/useDevices/queries.js +0 -19
  324. package/src/hooks/useEditOneExtProductFoodOptional/index.js +0 -28
  325. package/src/hooks/useEditSubProductOptional/index.js +0 -11
  326. package/src/hooks/useEmployee/index.js +0 -13
  327. package/src/hooks/useEmployee/queries.js +0 -17
  328. package/src/hooks/useFavoriteStores/index.js +0 -19
  329. package/src/hooks/useFavoriteStores/queries.js +0 -47
  330. package/src/hooks/useFormTools/index.js +0 -100
  331. package/src/hooks/useFormatDate/index.js +0 -33
  332. package/src/hooks/useGetStoreCookie/index.js +0 -22
  333. package/src/hooks/useImagesStore/index.js +0 -183
  334. package/src/hooks/useLogout/helpers/BroadcastChannel.js +0 -32
  335. package/src/hooks/useLogout/helpers/apiBaseUrl.js +0 -8
  336. package/src/hooks/useLogout/helpers/fetchData.js +0 -29
  337. package/src/hooks/useLogout/helpers/getCsrfToken.js +0 -30
  338. package/src/hooks/useLogout/helpers/index.js +0 -54
  339. package/src/hooks/useLogout/helpers/logger.js +0 -72
  340. package/src/hooks/useLogout/helpers/parseUrl.js +0 -36
  341. package/src/hooks/useLogout/index.js +0 -46
  342. package/src/hooks/useManageQueryParams/index.js +0 -37
  343. package/src/hooks/useMobile/index.js +0 -39
  344. package/src/hooks/useOrders/queries.js +0 -328
  345. package/src/hooks/useProductsFood/index.js +0 -234
  346. package/src/hooks/useProductsFood/useEditProduct.js +0 -8
  347. package/src/hooks/useProductsFood/usetagsProducts.js +0 -94
  348. package/src/hooks/useRestaurant/index.js +0 -19
  349. package/src/hooks/useSales/helpers/index.js +0 -8
  350. package/src/hooks/useSales/index.js +0 -1102
  351. package/src/hooks/useSales/useGetSale.js +0 -13
  352. package/src/hooks/useSales/useTotalSales.js +0 -24
  353. package/src/hooks/useStore/index.js +0 -70
  354. package/src/hooks/useUpdateExtProductFoodsSubOptional/index.js +0 -38
  355. package/src/index.jsx +0 -4
  356. package/src/utils/index.js +0 -141
  357. /package/src/config/client/{index.js → index.ts} +0 -0
  358. /package/src/hooks/getCategoriesWithProduct/helpers/{index.js → index.ts} +0 -0
  359. /package/src/hooks/useAnimationFrame/{index.js → index.ts} +0 -0
  360. /package/src/hooks/useAsideCart/helpers/{index.js → index.ts} +0 -0
  361. /package/src/hooks/useAsideCart/{queries.js → queries.ts} +0 -0
  362. /package/src/hooks/useCart/{index.js → index.ts} +0 -0
  363. /package/src/hooks/useDeleteSubProductOptional/{queries.js → queries.ts} +0 -0
  364. /package/src/hooks/useDessert/helpers/{index.js → index.ts} +0 -0
  365. /package/src/hooks/useDynamicAuth/{queries.js → queries.ts} +0 -0
  366. /package/src/hooks/useEditSubProductOptional/{queries.js → queries.ts} +0 -0
  367. /package/src/hooks/useFetchJson/{index.js → index.ts} +0 -0
  368. /package/src/hooks/useFormatNumberPhone/{index.js → index.ts} +0 -0
  369. /package/src/hooks/useGenerateNumberArray/{index.js → index.ts} +0 -0
  370. /package/src/hooks/useGetFoodRecomended/{queries.js → queries.ts} +0 -0
  371. /package/src/hooks/useGetMinPrice/{queries.js → queries.ts} +0 -0
  372. /package/src/hooks/useGetOneStoreRating/{queries.js → queries.ts} +0 -0
  373. /package/src/hooks/useGoogleLogin/{loadScript.js → loadScript.ts} +0 -0
  374. /package/src/hooks/useGoogleLogin/{removeScript.js → removeScript.ts} +0 -0
  375. /package/src/hooks/useInnerHtml/{index.js → index.ts} +0 -0
  376. /package/src/hooks/useKeypress/{index.js → index.ts} +0 -0
  377. /package/src/hooks/useLocationNavigate/{index.js → index.ts} +0 -0
  378. /package/src/{security/index.js → hooks/useManageNewOrder/helpers/mock.ts} +0 -0
  379. /package/src/hooks/useMutateHeight/{index.js → index.ts} +0 -0
  380. /package/src/hooks/useOrderClient/{index.js → index.ts} +0 -0
  381. /package/src/hooks/useProviders/{index.js → index.ts} +0 -0
  382. /package/src/hooks/useProviders/{queries.js → queries.ts} +0 -0
  383. /package/src/hooks/useProvidersStore/{queries.js → queries.ts} +0 -0
  384. /package/src/hooks/useReactToPrint/{index.js → index.txt} +0 -0
  385. /package/src/hooks/useSaveAvailableProduct/{queries.js → queries.ts} +0 -0
  386. /package/src/hooks/useSchedule/{queries.js → queries.ts} +0 -0
  387. /package/src/hooks/useScroll/{index.js → index.ts} +0 -0
  388. /package/src/hooks/useScrollRotate/{index.js → index.ts} +0 -0
  389. /package/src/hooks/useSetState/{index.js → index.ts} +0 -0
  390. /package/src/hooks/useStatusOrdersClient/helpers/{index.js → index.ts} +0 -0
  391. /package/src/hooks/useStoreCalendar/{index.js → index.ts} +0 -0
  392. /package/src/hooks/useStoreContacts/{queries.js → queries.ts} +0 -0
  393. /package/src/mock/dessert/{index.js → index.ts} +0 -0
  394. /package/src/mock/{index.js → index.ts} +0 -0
@@ -0,0 +1,284 @@
1
+ import { useEffect, useState } from 'react'
2
+
3
+ import { days as NameDays } from '../../utils'
4
+ import { convertToMilitaryTime } from '../convertToMilitaryTime'
5
+ import { useSchedules, useCreateSchedules } from '../useSchedule'
6
+ import { GET_ONE_SCHEDULE_STORE, GET_SCHEDULE_STORE } from '../useSchedule/queries'
7
+
8
+ import {
9
+ dateEnum,
10
+ initialDays,
11
+ timeSuggestions
12
+ } from './helpers'
13
+ export * from './helpers/index'
14
+
15
+ export const useSetupSchedule = ({
16
+ idStore = null, sendNotification = (args) => {
17
+ return args
18
+ }
19
+ } = {}) => {
20
+ const [days, setDays] = useState(initialDays === null ? [] : initialDays)
21
+ const [alertModal, setAlertModal] = useState(false)
22
+ const [selectedDay, setSelectedDay] = useState({})
23
+ const [setStoreSchedule] = useCreateSchedules()
24
+
25
+ const onCompleted = (data: any) => {
26
+ if (Array.isArray(data) && data?.length > 0) {
27
+ // Mapeamos los datos recibidos y los convertimos en un objeto con la estructura deseada
28
+ const newSchedules = data.map((day) => {return {
29
+ day: day.schDay,
30
+ name: NameDays[day.schDay],
31
+ selected: day.schHoEnd !== '00:00' || day.schHoSta !== '00:00',
32
+ ...day
33
+ }})
34
+
35
+ // Actualizamos el estado days
36
+ setDays(prevDays => {
37
+ // Creamos un nuevo array combinando los elementos existentes en days con los nuevos datos
38
+ const updatedDays = prevDays?.map(existingDay => {
39
+ // Buscamos si hay un elemento con el mismo día en los nuevos datos
40
+ const newData = newSchedules.find(newDay => {return newDay.day === existingDay.day})
41
+ // Si encontramos el día en los nuevos datos, lo fusionamos con el día existente
42
+ if (newData) {
43
+ return { ...existingDay, ...newData }
44
+ }
45
+ // Si no encontramos el día en los nuevos datos, simplemente devolvemos el día existente
46
+ return existingDay
47
+ })
48
+
49
+ // Ahora, buscamos los nuevos días que no están en days y los agregamos al array
50
+ newSchedules.forEach(newDay => {
51
+ if (!updatedDays.some(existingDay => {return existingDay.day === newDay.day})) {
52
+ updatedDays.push(newDay)
53
+ }
54
+ })
55
+
56
+ // Devolvemos el nuevo array actualizado
57
+ return updatedDays
58
+ })
59
+ }
60
+ }
61
+
62
+ const [data, { loading: lsc }] = useSchedules({ schDay: 1 })
63
+
64
+ const toggleCheck = (index) => {
65
+ const updatedDays = [...days]
66
+ updatedDays[index].checked = !updatedDays[index].checked
67
+ setDays(updatedDays)
68
+ }
69
+
70
+ const duplicateDay = (index) => {
71
+ const selectedDay = days[index]
72
+ // Lógica para desplegar el modal y seleccionar los días donde se replicará
73
+ const selectedDaysToDuplicate = days.filter((day) => {return day.checked})
74
+ const updatedDays = [...days]
75
+ selectedDaysToDuplicate.forEach((dayToDuplicate) => {
76
+ const duplicatedDay = { ...selectedDay, checked: false }
77
+ updatedDays.push(duplicatedDay)
78
+ })
79
+ setDays(updatedDays)
80
+ }
81
+
82
+ const handleSelectedDay = (day) => {
83
+ const isSaved = days.find((data) => {
84
+ return data.day === day
85
+ })
86
+ if (isSaved?.schId && isSaved?.selected) {
87
+ setSelectedDay(isSaved)
88
+ return setAlertModal(true)
89
+ }
90
+ const updatedDays = days?.map((d) => {
91
+ if (d.day === day) {
92
+ return { ...d, selected: !d.selected }
93
+ }
94
+ return { ...d }
95
+
96
+ })
97
+ setDays(updatedDays)
98
+ }
99
+ const selectedDays = days?.filter((day) => {return Boolean(day.selected)}).map((day) => {
100
+ return day.day
101
+ })
102
+ /**
103
+ *
104
+ * @param hora1
105
+ * @param hora2
106
+ */
107
+ function sumHours (hora1, hora2) {
108
+ const [hora1Horas, hora1Minutos] = hora1.split(':').map(Number)
109
+ const [hora2Horas, hora2Minutos] = hora2.split(':').map(Number)
110
+
111
+ let sumaHour = hora1Horas + hora2Horas
112
+ let sumMinutes = hora1Minutos + hora2Minutos
113
+
114
+ if (sumMinutes >= 60) {
115
+ sumMinutes -= 60
116
+ sumaHour++
117
+ }
118
+
119
+ if (sumaHour >= 24) {
120
+ sumaHour -= 24
121
+ }
122
+
123
+ const horaSumada = `${String(sumaHour).padStart(2, '0')}:${String(sumMinutes).padStart(2, '0')}`
124
+ return horaSumada
125
+ }
126
+ /**
127
+ *
128
+ * @param hora1
129
+ * @param hora2
130
+ */
131
+ function isLessThanOneHour (hora1, hora2) {
132
+ const suma = sumHours(hora1, hora2)
133
+ const [sumaHour, sumMinutes] = suma.split(':').map(Number)
134
+ const totalMinutos = (sumaHour * 60) + sumMinutes
135
+
136
+ if (totalMinutos < 60) {
137
+ return true // La suma de las horas es menor a una hora
138
+ }
139
+ return false // La suma de las horas es igual o mayor a una hora
140
+ }
141
+ const onChangeSaveHour = async ({ time, name, day }) => {
142
+ setDays(prevDays => {
143
+ const updatedDays = prevDays?.map((d) => {
144
+ if (d.day === day) {
145
+ return { ...d, [name]: time, loading: Boolean(name === dateEnum.schHoEnd) }
146
+ }
147
+ return { ...d }
148
+
149
+ })
150
+
151
+ if (name === dateEnum.schHoEnd) {
152
+ const findHour = updatedDays.find((d) => {
153
+ return d.day === day
154
+ })
155
+ const schHoSta = findHour?.schHoSta
156
+ const schHoEnd = findHour?.schHoEnd
157
+ const startHour = convertToMilitaryTime(schHoSta)
158
+ const endHour = convertToMilitaryTime(schHoEnd)
159
+ if (isLessThanOneHour(startHour, endHour)) {
160
+
161
+ sendNotification({
162
+ description: 'Error, el horario debe ser mayor a una hora',
163
+ title: 'Error',
164
+ backgroundColor: 'error'
165
+ })
166
+ }
167
+ // Comparar solo las horas y minutos
168
+ if (startHour === endHour) {
169
+
170
+ sendNotification({
171
+ description: 'Error, la hora de salida no debe ser igual a la hora final',
172
+ title: 'Error',
173
+ backgroundColor: 'error'
174
+ })
175
+ }
176
+ if (startHour > endHour) {
177
+
178
+ sendNotification({
179
+ description: 'Error, la hora de salida debe ser mayor que la de entrada',
180
+ title: 'Error',
181
+ backgroundColor: 'error'
182
+ })
183
+ }
184
+
185
+ if (startHour !== endHour && startHour < endHour && !isLessThanOneHour(startHour, endHour)) {
186
+ setStoreSchedule({
187
+ variables: {
188
+ input: {
189
+ schHoSta: schHoSta ?? '00:00',
190
+ schHoEnd: schHoEnd ?? '00:00',
191
+ schState: 1,
192
+ schDay: day
193
+ }
194
+ },
195
+ update (cache) {
196
+ cache.modify({
197
+ fields: {
198
+ getStoreSchedules (dataOld = []) {
199
+ return cache.writeQuery({ query: GET_SCHEDULE_STORE, data: dataOld })
200
+ },
201
+ getOneStoreSchedules (dataOld = []) {
202
+ return cache.writeQuery({ query: GET_ONE_SCHEDULE_STORE, data: dataOld })
203
+ }
204
+ }
205
+ })
206
+ }
207
+ })
208
+ }
209
+ const newUpdatedDays = updatedDays.map((d) => {
210
+ if (d.day === day) {
211
+ return { ...d, loading: false }
212
+ }
213
+ return { ...d }
214
+
215
+ })
216
+ // Devolver el nuevo estado actualizado
217
+ return newUpdatedDays
218
+ }
219
+ // Devolver el nuevo estado
220
+ return updatedDays
221
+ })
222
+ }
223
+
224
+ const handleDeleteSchedule = async (day) => {
225
+ await setStoreSchedule({
226
+ variables: {
227
+ input: {
228
+ schHoSta: '00:00',
229
+ schHoEnd: '00:00',
230
+ schState: 1,
231
+ schDay: day,
232
+ idStore
233
+ }
234
+ },
235
+ update (cache) {
236
+ cache.modify({
237
+ fields: {
238
+ getStoreSchedules (dataOld = []) {
239
+ return cache.writeQuery({ query: GET_SCHEDULE_STORE, data: dataOld })
240
+ },
241
+ getOneStoreSchedules (dataOld = []) {
242
+ return cache.writeQuery({ query: GET_ONE_SCHEDULE_STORE, data: dataOld })
243
+ }
244
+ }
245
+ })
246
+ }
247
+ })
248
+ setDays(prevDays => {
249
+ if (!prevDays) return []
250
+ const updatedDays = prevDays?.map((d) => {
251
+ if (d.day === day) {
252
+ return {
253
+ ...d,
254
+ [dateEnum.schHoEnd]: dateEnum?.schHoEnd,
255
+ [dateEnum.schHoSta]: dateEnum?.schHoSta,
256
+ selected: false
257
+ }
258
+ }
259
+ return { ...d }
260
+
261
+ })
262
+ return updatedDays
263
+ })
264
+ setAlertModal(false)
265
+ }
266
+ useEffect(() => {
267
+ onCompleted(data)
268
+ }, [data])
269
+
270
+ return {
271
+ duplicateDay,
272
+ toggleCheck,
273
+ handleSelectedDay,
274
+ onChangeSaveHour,
275
+ handleDeleteSchedule,
276
+ setAlertModal,
277
+ days,
278
+ selectedDays,
279
+ selectedDay,
280
+ alertModal,
281
+ loading: lsc,
282
+ times: timeSuggestions
283
+ }
284
+ }
@@ -0,0 +1,124 @@
1
+ export const getDayFromOpeningKey = (key) => {
2
+ const days = {
3
+ openingSun: 0,
4
+ openingMon: 1,
5
+ openingTue: 2,
6
+ openingWed: 3,
7
+ openingThu: 4,
8
+ openingFri: 5,
9
+ openingSat: 6
10
+ }
11
+ return days[key] !== undefined ? days[key] : -1
12
+ }
13
+
14
+ // Función para convertir el objeto de tiempo en una cadena de tiempo
15
+ /**
16
+ *
17
+ * @param timeStr
18
+ */
19
+ export function getTimeString (timeStr) {
20
+ return timeStr || '00:00' // Return '00:00' for empty time strings
21
+ }
22
+
23
+ /**
24
+ *
25
+ */
26
+ export function getCurrentDayAndTime () {
27
+ try {
28
+ const date = new Date()
29
+ const currentTime = date.getHours() * 60 + date.getMinutes()
30
+ const currentDayOfWeek = date.getDay()
31
+ return { currentTime, currentDayOfWeek }
32
+ } catch (error) {
33
+ return {
34
+
35
+ }
36
+ }
37
+ }
38
+
39
+ /**
40
+ *
41
+ * @param timeStr
42
+ */
43
+ export function getTimeObject (timeStr) {
44
+ try {
45
+ if (!timeStr || !/\d{2}:\d{2}/.test(timeStr)) {
46
+ return { hours: 0, minutes: 0 } // Return default values for invalid input
47
+ }
48
+ const [hours, minutes] = timeStr.split(':').map(str => {return parseInt(str)})
49
+ return { hours, minutes }
50
+ } catch (e) {
51
+ return { hours: 0, minutes: 0 } // Return default values on error
52
+ }
53
+ }
54
+
55
+ /**
56
+ *
57
+ * @param openings
58
+ */
59
+ export function sortOpeningsByDay (openings) {
60
+ const days = [
61
+ 'openingSun',
62
+ 'openingMon',
63
+ 'openingTue',
64
+ 'openingWed',
65
+ 'openingThu',
66
+ 'openingFri',
67
+ 'openingSat'
68
+ ]
69
+ const sortedOpenings = {}
70
+
71
+ days.forEach((day) => {
72
+ sortedOpenings[day] = openings[day] || '00:00 - 00:00' // Agregar horario vacío para los días faltantes
73
+ })
74
+
75
+ return sortedOpenings
76
+ }
77
+
78
+ // Función para obtener la clave de openings a partir del día de la semana
79
+ /**
80
+ *
81
+ * @param day
82
+ */
83
+ export function getOpeningKeyFromDay (day) {
84
+ const days = {
85
+ 0: 'openingSun',
86
+ 1: 'openingMon',
87
+ 2: 'openingTue',
88
+ 3: 'openingWed',
89
+ 4: 'openingThu',
90
+ 5: 'openingFri',
91
+ 6: 'openingSat'
92
+ }
93
+ return days[day]
94
+ }
95
+
96
+ export const weekDays = [
97
+ 'Domingo',
98
+ 'Lunes',
99
+ 'Martes',
100
+ 'Miércoles',
101
+ 'Jueves',
102
+ 'Viernes',
103
+ 'Sábado'
104
+ ]
105
+
106
+ /**
107
+ *
108
+ * @param text
109
+ */
110
+ export function timeToInt (text) {
111
+ const hour = parseInt(text.substring(0, 2))
112
+ const minute = parseInt(text.substring(3))
113
+ return hour * 60 + minute
114
+ }
115
+
116
+ export const days = {
117
+ Monday: 'Lunes',
118
+ Tuesday: 'Martes',
119
+ Wednesday: 'Miércoles',
120
+ Thursday: 'Jueves',
121
+ Friday: 'Viernes',
122
+ Saturday: 'Sábado',
123
+ Sunday: 'Domingo'
124
+ }
@@ -1,4 +1,7 @@
1
- import { useEffect, useState } from 'react'
1
+ import { useEffect, useState } from 'react'
2
+
3
+ import { useFormatDate } from '../useFormatDate'
4
+
2
5
  import {
3
6
  getDayFromOpeningKey,
4
7
  getCurrentDayAndTime,
@@ -10,18 +13,24 @@ import {
10
13
  days,
11
14
  getTimeObject
12
15
  } from './helpers'
13
- import { useFormatDate } from '../useFormatDate'
14
16
 
15
17
  export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
16
18
  const [open, setOpen] = useState('')
17
19
  const [openNow, setOpenNow] = useState(false)
18
- const { handleHourPmAM } = useFormatDate({})
20
+ const { handleHourPmAM } = useFormatDate({
21
+ date: null
22
+ })
19
23
 
20
24
  const handleMessageHour = (message, open) => {
21
25
  setOpen(message)
22
26
  setOpenNow(open)
23
27
  }
24
28
 
29
+ /**
30
+ *
31
+ * @param dataSchedules
32
+ * @param currentDayOfWeek
33
+ */
25
34
  function getNextDaySchedule (dataSchedules, currentDayOfWeek) {
26
35
  const today = new Date()
27
36
  const tomorrow = new Date(today)
@@ -29,16 +38,22 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
29
38
  const dayOfWeekTomorrow = tomorrow.getDay()
30
39
 
31
40
  const findNextDay = dataSchedules?.length
32
- ? dataSchedules?.some((schedule) => schedule?.schDay === dayOfWeekTomorrow)
41
+ ? dataSchedules?.some((schedule) => {return schedule?.schDay === dayOfWeekTomorrow})
33
42
  : false
34
43
 
35
44
  const findDataNextDay = dataSchedules?.length
36
- ? dataSchedules?.find((schedule) => schedule?.schDay === dayOfWeekTomorrow)
45
+ ? dataSchedules?.find((schedule) => {return schedule?.schDay === dayOfWeekTomorrow})
37
46
  : {}
38
47
 
39
48
  return { findNextDay, findDataNextDay, dayOfWeekTomorrow }
40
49
  }
41
50
 
51
+ /**
52
+ *
53
+ * @param openings
54
+ * @param currentTime
55
+ * @param currentDayOfWeek
56
+ */
42
57
  function getOpeningStatus (openings, currentTime, currentDayOfWeek) {
43
58
  const weekDayLookup = [
44
59
  'Sunday',
@@ -56,10 +71,10 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
56
71
  for (let i = 0; i < 7; i++) {
57
72
  const dayName = weekDayLookup[dayOfWeek % 7]
58
73
  const opening = openings && openings['opening' + dayName.substring(0, 3)]
59
- const timeSpans = opening?.split(';').map((item) => item.trim())
74
+ const timeSpans = opening?.split(';').map((item) => {return item.trim()})
60
75
 
61
76
  for (const span of timeSpans) {
62
- const hours = span.split('-').map((item) => item.trim())
77
+ const hours = span.split('-').map((item) => {return item.trim()})
63
78
  const openTime = timeToInt(hours[0])
64
79
  const closeTime = timeToInt(hours[1])
65
80
 
@@ -84,7 +99,11 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
84
99
  )
85
100
  }
86
101
 
87
- const { findNextDay, findDataNextDay, dayOfWeekTomorrow } = getNextDaySchedule(
102
+ const {
103
+ findNextDay,
104
+ findDataNextDay,
105
+ dayOfWeekTomorrow
106
+ } = getNextDaySchedule(
88
107
  dataSchedules,
89
108
  currentDayOfWeek
90
109
  )
@@ -92,16 +111,16 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
92
111
  if (findNextDay && findDataNextDay?.schHoSta) {
93
112
  const nameOfDayTomorrow = weekDays[dayOfWeekTomorrow]
94
113
  return handleMessageHour(
95
- `Cerrado - Mañana ${nameOfDayTomorrow} ${!!findDataNextDay?.schHoSta && 'a las'} ${
96
- findDataNextDay?.schHoSta ? findDataNextDay?.schHoSta : ''
97
- }`,
98
- false
114
+ `Cerrado abre Mañana ${nameOfDayTomorrow} ${Boolean(findDataNextDay?.schHoSta) && 'a las'} ${
115
+ handleHourPmAM(findDataNextDay?.schHoSta) ?? ''
116
+ }`,
117
+ false
99
118
  )
100
119
  }
101
120
 
102
121
  const nextDayName = weekDayLookup[(dayOfWeek + 1) % 7]
103
- const nextOpening = openings && openings['opening' + nextDayName.substring(0, 3)]
104
- const nextHours = nextOpening?.split(';')?.map((item) => item?.trim())
122
+ const nextOpening = openings?.['opening' + nextDayName.substring(0, 3)]
123
+ const nextHours = nextOpening?.split(';')?.map((item) => {return item?.trim()})
105
124
 
106
125
  if (nextHours[0] !== ceroHours) {
107
126
  return handleMessageHour(
@@ -117,6 +136,10 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
117
136
  return handleMessageHour('Cerrado', false)
118
137
  }
119
138
 
139
+ /**
140
+ *
141
+ * @param openings
142
+ */
120
143
  function getIsOpening (openings) {
121
144
  const { currentTime, currentDayOfWeek } = getCurrentDayAndTime()
122
145
  return getOpeningStatus(openings, currentTime, currentDayOfWeek)
@@ -147,10 +170,10 @@ export const useStatusOpenStore = ({ dataSchedules = [] } = {}) => {
147
170
  const sortedOpenings = sortOpeningsByDay(openings)
148
171
 
149
172
  // Crear el array completo con objetos de tiempo
150
- // eslint-disable-next-line no-unused-vars
173
+
151
174
  const fullArray = Object.keys(sortedOpenings).map((key) => {
152
175
  const day = getDayFromOpeningKey(key)
153
- const [schHoSta, schHoEnd] = openings[key].split(' - ').map(timeStr => getTimeObject(timeStr))
176
+ const [schHoSta, schHoEnd] = openings[key].split(' - ').map(timeStr => {return getTimeObject(timeStr)})
154
177
  return {
155
178
  __typename: 'StoreSchedule',
156
179
  schId: '',
@@ -1,6 +1,7 @@
1
- import { useQuery } from '@apollo/client'
2
- import { GET_ALL_PEDIDOS_STATUS } from './queries'
1
+ import { useQuery } from '@apollo/client'
2
+
3
3
  import { filterOrders } from './helpers'
4
+ import { GET_ALL_PEDIDOS_STATUS } from './queries'
4
5
 
5
6
  export const useStatusOrdersClient = () => {
6
7
  const { data, loading, error } = useQuery(GET_ALL_PEDIDOS_STATUS, {
@@ -6,7 +6,7 @@ export const GET_ALL_PEDIDOS_STATUS = gql`
6
6
  pdpId
7
7
  idStore
8
8
  pCodeRef
9
- payMethodPState
9
+ payId
10
10
  pPRecoger
11
11
  totalProductsPrice
12
12
  pSState
@@ -48,7 +48,7 @@ export const GET_ALL_PEDIDOS_STATUS = gql`
48
48
  ShoppingCard
49
49
  pCodeRef
50
50
  pPStateP
51
- payMethodPState
51
+ payId
52
52
  pPRecoger
53
53
  pDatCre
54
54
  pDatMod
@@ -0,0 +1 @@
1
+ export { useStockUpdatedAllSubscription } from './useStockUpdatedAllSubscription'
@@ -0,0 +1,40 @@
1
+
2
+ import { useSubscription, gql } from '@apollo/client'
3
+
4
+ const NEW_STORE_ORDER_SUBSCRIPTION = gql`
5
+ subscription StockUpdatedAll($idStore: String) {
6
+ StockUpdatedAll(idStore: $idStore) {
7
+ pId
8
+ newStock
9
+ previousStock
10
+ event
11
+ meta
12
+ }
13
+ }
14
+ `
15
+
16
+ interface StockUpdatedAllData {
17
+ StockUpdatedAll: {
18
+ pId: string
19
+ newStock: number
20
+ previousStock: number
21
+ event: string
22
+ meta: any
23
+ }
24
+ }
25
+
26
+ export const useStockUpdatedAllSubscription = (
27
+ idStore: string,
28
+ onStockUpdated: (data: StockUpdatedAllData['StockUpdatedAll']) => void
29
+ ) => {
30
+ return useSubscription<StockUpdatedAllData>(NEW_STORE_ORDER_SUBSCRIPTION, {
31
+ variables: { idStore },
32
+ skip: !idStore,
33
+ onSubscriptionData: ({ subscriptionData }) => {
34
+ const data = subscriptionData.data?.StockUpdatedAll
35
+ if (!data) return
36
+ onStockUpdated(data)
37
+ }
38
+ })
39
+ }
40
+
@@ -0,0 +1,16 @@
1
+ export const fillMissingDates = (data, days = 7) => {
2
+ const today = new Date()
3
+ const filledData = []
4
+
5
+ for (let i = days - 1; i >= 0; i--) {
6
+ const date = new Date()
7
+ date.setDate(today.getDate() - i)
8
+
9
+ const formattedDate = date.toISOString().split('T')[0] // "YYYY-MM-DD"
10
+ const existingData = data.find(item => {return item.date === formattedDate})
11
+
12
+ filledData.push(existingData || { date: formattedDate, TotalIn: 0, TotalOut: 0, TotalAdjustment: 0 })
13
+ }
14
+
15
+ return filledData
16
+ }
@@ -0,0 +1,39 @@
1
+ import { useQuery, gql } from '@apollo/client'
2
+ import { useState, useEffect } from 'react'
3
+
4
+ import { fillMissingDates } from './helpers'
5
+
6
+ const GET_STOCK_MOVEMENTS = gql`
7
+ query {
8
+ getStockMovementsByDay {
9
+ date
10
+ total_in,
11
+ total_adjustment
12
+ total_out
13
+ }
14
+ }
15
+ `
16
+
17
+ /**
18
+ * Custom hook to fetch stock movements data for visualization.
19
+ * @returns {Object} { data, loading, error }
20
+ */
21
+ export const useStockMovements = () => {
22
+ const { data, loading, error } = useQuery(GET_STOCK_MOVEMENTS)
23
+ const [chartData, setChartData] = useState([])
24
+
25
+ useEffect(() => {
26
+ if (data && data.getStockMovementsByDay) {
27
+ // Transform data to be compatible with Recharts
28
+ const formattedData = data.getStockMovementsByDay.map(entry => {return {
29
+ date: entry.date,
30
+ TotalIn: entry.total_in ?? 0,
31
+ TotalOut: entry.total_out ?? 0,
32
+ TotalAdjustment: entry.total_adjustment ?? 0
33
+ }})
34
+ setChartData(formattedData)
35
+ }
36
+ }, [data])
37
+
38
+ return [fillMissingDates(chartData), { loading, error }]
39
+ }