npm-pkg-hook 1.3.9 → 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,38 @@
1
+ import { useState, useEffect } from 'react'
2
+
3
+ export const usePWAInstall = () => {
4
+ const [deferredPrompt, setDeferredPrompt] = useState(null)
5
+ const [isInstallable, setIsInstallable] = useState(false)
6
+
7
+ useEffect(() => {
8
+ const handleBeforeInstallPrompt = (e) => {
9
+ e.preventDefault() // Evita que el navegador muestre el diálogo automáticamente
10
+ setDeferredPrompt(e) // Almacena el evento para que puedas llamarlo más tarde
11
+ setIsInstallable(true) // Marca que la PWA es instalable
12
+ }
13
+
14
+ window.addEventListener('beforeinstallprompt', handleBeforeInstallPrompt)
15
+
16
+ return () => {
17
+ window.removeEventListener('beforeinstallprompt', handleBeforeInstallPrompt)
18
+ }
19
+ }, [])
20
+
21
+ const installPWA = () => {
22
+ if (deferredPrompt) {
23
+ deferredPrompt.prompt()
24
+
25
+ deferredPrompt.userChoice.then((choiceResult) => {
26
+ if (choiceResult.outcome === 'accepted') {
27
+ console.log('User accepted the install prompt')
28
+ } else {
29
+ console.log('User dismissed the install prompt')
30
+ }
31
+ setDeferredPrompt(null) // Limpia el evento después de usarlo
32
+ setIsInstallable(false) // Oculta el botón de instalación
33
+ })
34
+ }
35
+ }
36
+
37
+ return { isInstallable, installPWA }
38
+ }
@@ -0,0 +1,3 @@
1
+ export * from './useCreatePaymentMethod'
2
+ export * from './useGetAllPaymentMethods'
3
+ export * from './useGetPaymentMethod'
@@ -0,0 +1,62 @@
1
+ import { gql } from '@apollo/client'
2
+
3
+ export const GET_PAYMENT_METHOD = gql`
4
+ query getPaymentMethod($payId: ID!) {
5
+ getPaymentMethod(payId: $payId) {
6
+ payId
7
+ name
8
+ icon
9
+ state
10
+ paymentPriority
11
+ createdAt
12
+ updatedAt
13
+ }
14
+ }
15
+ `
16
+
17
+ export const GET_ALL_PAYMENT_METHODS = gql`
18
+ query getAllPaymentMethods {
19
+ getAllPaymentMethods {
20
+ payId
21
+ name
22
+ icon
23
+ state
24
+ paymentPriority
25
+ createdAt
26
+ updatedAt
27
+ }
28
+ }
29
+ `
30
+
31
+ export const CREATE_PAYMENT_METHOD = gql`
32
+ mutation createPaymentMethod($input: CreatePaymentMethodInput!) {
33
+ createPaymentMethod(input: $input) {
34
+ payId
35
+ name
36
+ icon
37
+ state
38
+ paymentPriority
39
+ createdAt
40
+ updatedAt
41
+ }
42
+ }
43
+ `
44
+
45
+ export const UPDATE_PAYMENT_METHOD = gql`
46
+ mutation updatePaymentMethod($payId: ID!, $input: UpdatePaymentMethodInput!) {
47
+ updatePaymentMethod(payId: $payId, input: $input) {
48
+ payId
49
+ name
50
+ icon
51
+ state
52
+ paymentPriority
53
+ updatedAt
54
+ }
55
+ }
56
+ `
57
+
58
+ export const DELETE_PAYMENT_METHOD = gql`
59
+ mutation deletePaymentMethod($payId: ID!) {
60
+ deletePaymentMethod(payId: $payId)
61
+ }
62
+ `
@@ -0,0 +1,28 @@
1
+ export interface PaymentMethod {
2
+ payId: string
3
+ name: string
4
+ icon: string
5
+ state: string
6
+ paymentPriority: number
7
+ createdAt?: string
8
+ updatedAt?: string
9
+ }
10
+
11
+ export interface CreatePaymentMethodInput {
12
+ payId: string
13
+ name: string
14
+ icon: string
15
+ state: string
16
+ paymentPriority: number
17
+ mIcon?: number
18
+ mState?: number
19
+ }
20
+
21
+ export interface UpdatePaymentMethodInput {
22
+ name?: string
23
+ icon?: string
24
+ state?: string
25
+ paymentPriority?: number
26
+ mIcon?: number
27
+ mState?: number
28
+ }
@@ -0,0 +1,25 @@
1
+ 'use client'
2
+
3
+ import { useMutation } from '@apollo/client'
4
+
5
+ import { CREATE_PAYMENT_METHOD, GET_ALL_PAYMENT_METHODS } from '../paymentMethod.gql'
6
+ import { CreatePaymentMethodInput, PaymentMethod } from '../paymentMethod.types'
7
+
8
+
9
+ export const useCreatePaymentMethod = () => {
10
+ const [createPaymentMethod, { loading, error }] = useMutation<
11
+ { createPaymentMethod: PaymentMethod },
12
+ { input: CreatePaymentMethodInput }
13
+ >(CREATE_PAYMENT_METHOD, {
14
+ refetchQueries: [{ query: GET_ALL_PAYMENT_METHODS }]
15
+ })
16
+
17
+ const handleCreate = async (input: CreatePaymentMethodInput) => {
18
+ const res = await createPaymentMethod({ variables: { input } })
19
+ return res.data?.createPaymentMethod
20
+ }
21
+ return [handleCreate, {
22
+ loading,
23
+ error
24
+ }]
25
+ }
@@ -0,0 +1,19 @@
1
+ 'use client'
2
+
3
+ import { useQuery } from '@apollo/client'
4
+
5
+ import { GET_ALL_PAYMENT_METHODS } from '../paymentMethod.gql'
6
+ import { PaymentMethod } from '../paymentMethod.types'
7
+
8
+ export const useGetAllPaymentMethods = () => {
9
+ const { data, loading, error, refetch } = useQuery<{
10
+ getAllPaymentMethods: PaymentMethod[]
11
+ }>(GET_ALL_PAYMENT_METHODS)
12
+
13
+ return {
14
+ data: data?.getAllPaymentMethods ?? [],
15
+ loading,
16
+ error,
17
+ refetch
18
+ }
19
+ }
@@ -0,0 +1,26 @@
1
+ 'use client'
2
+
3
+ import { useQuery } from '@apollo/client'
4
+
5
+ import { GET_PAYMENT_METHOD } from '../paymentMethod.gql'
6
+ import { PaymentMethod } from '../paymentMethod.types'
7
+
8
+ interface Props {
9
+ payId: string
10
+ }
11
+
12
+ export const useGetPaymentMethod = ({ payId }: Props) => {
13
+ const { data, loading, error } = useQuery<{ getPaymentMethod: PaymentMethod }>(
14
+ GET_PAYMENT_METHOD,
15
+ {
16
+ variables: { payId },
17
+ skip: !payId
18
+ }
19
+ )
20
+
21
+ return {
22
+ paymentMethod: data?.getPaymentMethod,
23
+ loading,
24
+ error
25
+ }
26
+ }
@@ -0,0 +1,33 @@
1
+ import { useEffect, useState } from 'react'
2
+
3
+ /**
4
+ * Custom hook to fetch a free port from the API route `/api/port`.
5
+ *
6
+ * @returns {Object} Object containing the fetched port and loading/error states
7
+ */
8
+ export const usePortFetcher = () => {
9
+ const [port, setPort] = useState<string | null>(null)
10
+ const [loading, setLoading] = useState(true)
11
+ const [error, setError] = useState<string | null>(null)
12
+
13
+ useEffect(() => {
14
+ const fetchPort = async () => {
15
+ try {
16
+ const res = await fetch('/api/port')
17
+ if (!res.ok) throw new Error('Failed to fetch port')
18
+
19
+ const data = await res.json()
20
+ setPort(data.port)
21
+ } catch (err: any) {
22
+ console.error('Error fetching port:', err)
23
+ setError(err.message || 'Unknown error')
24
+ } finally {
25
+ setLoading(false)
26
+ }
27
+ }
28
+
29
+ fetchPort()
30
+ }, [])
31
+
32
+ return { port, loading, error }
33
+ }
@@ -0,0 +1,68 @@
1
+ // usePrintSaleTicket.ts
2
+ import { gql, useMutation, MutationHookOptions } from '@apollo/client'
3
+ import { useCallback } from 'react'
4
+
5
+ /* ------------------------------
6
+ TYPES
7
+ ------------------------------ */
8
+
9
+ export interface PrintSaleTicketResponse {
10
+ printSaleTicket: {
11
+ message: string
12
+ success: boolean
13
+ data: string | null
14
+ __typename: string
15
+ }
16
+ }
17
+
18
+ export interface PrintSaleTicketVars {
19
+ saleId: string
20
+ }
21
+
22
+ /* ------------------------------
23
+ GQL
24
+ ------------------------------ */
25
+
26
+ const PRINT_SALE_TICKET = gql`
27
+ mutation printSaleTicket($saleId: ID!) {
28
+ printSaleTicket(saleId: $saleId) {
29
+ message
30
+ success
31
+ data
32
+ __typename
33
+ }
34
+ }
35
+ `
36
+
37
+ /* ------------------------------
38
+ HOOK
39
+ ------------------------------ */
40
+
41
+ /**
42
+ *
43
+ * @param options
44
+ */
45
+ export function usePrintSaleTicket(
46
+ options?: MutationHookOptions<PrintSaleTicketResponse, PrintSaleTicketVars>
47
+ ) {
48
+ const [runMutation, { loading, data, error }] = useMutation<
49
+ PrintSaleTicketResponse,
50
+ PrintSaleTicketVars
51
+ >(PRINT_SALE_TICKET, options)
52
+
53
+ const printSale = useCallback(
54
+ async (saleId: string) => {
55
+ const result = await runMutation({
56
+ variables: { saleId }
57
+ })
58
+ return result.data?.printSaleTicket
59
+ },
60
+ [runMutation]
61
+ )
62
+
63
+ return [printSale, {
64
+ loading,
65
+ data: data?.printSaleTicket,
66
+ error
67
+ }]
68
+ }
@@ -0,0 +1,341 @@
1
+ import {
2
+ useApolloClient,
3
+ useLazyQuery,
4
+ useMutation,
5
+ useQuery
6
+ } from '@apollo/client'
7
+ import { useCallback, useMemo, useState } from 'react'
8
+
9
+ import { useStockUpdatedAllSubscription } from '../useStock'
10
+
11
+ import {
12
+ GET_ALL_EXTRA_PRODUCT,
13
+ GET_ALL_PRODUCT_STORE,
14
+ GET_EXTRAS_PRODUCT_FOOD_OPTIONAL,
15
+ GET_ONE_PRODUCTS_FOOD,
16
+ UPDATE_PRODUCT_FOOD
17
+ } from './queriesStore'
18
+ export * from './useEditProduct'
19
+
20
+ interface UseProductsFoodOptions {
21
+ idStore?: string | null
22
+ categories?: string[]
23
+ desc?: string[]
24
+ fetchPolicy?: 'cache-first' | 'cache-and-network' | 'network-only' | 'no-cache'
25
+ fromDate?: string | null
26
+ gender?: string[]
27
+ max?: number
28
+ min?: number | null
29
+ pState?: number
30
+ search?: string | null
31
+ toDate?: string | null
32
+ dataSale?: Array<{ pId: string }>
33
+ isShopppingCard?: boolean
34
+ callback: (args: any) => void
35
+ }
36
+ export const useProductsFood = ({
37
+ idStore = null,
38
+ categories = [],
39
+ desc = [],
40
+ fetchPolicy = 'cache-and-network',
41
+ fromDate = null,
42
+ gender = [],
43
+ max = 100,
44
+ min = null,
45
+ pState,
46
+ search = null,
47
+ toDate = null,
48
+ dataSale = [],
49
+ isShopppingCard = false,
50
+ callback
51
+ }: UseProductsFoodOptions) => {
52
+ const [showMore, setShowMore] = useState(500)
53
+ const client = useApolloClient()
54
+ const variables = useMemo(() => {return {
55
+ categories,
56
+ desc,
57
+ gender,
58
+ max,
59
+ min,
60
+ pState,
61
+ search
62
+ }}, [categories, desc, gender, max, min, pState, search, callback])
63
+
64
+ const { data, loading, fetchMore, refetch, error, called } = useQuery(GET_ALL_PRODUCT_STORE, {
65
+ onCompleted: (data) => {
66
+ callback(data)
67
+ },
68
+ fetchPolicy,
69
+ notifyOnNetworkStatusChange: true,
70
+ nextFetchPolicy: 'cache-first',
71
+ refetchWritePolicy: 'merge',
72
+ variables
73
+ })
74
+
75
+ const productsFood = data?.productFoodsAll?.data ?? []
76
+ /**
77
+ * Callback when subscription emits a stock update.
78
+ * Updates Apollo cache for GET_ALL_PRODUCT_STORE with same variables so UI updates reactively.
79
+ */
80
+ const onStockUpdated = useCallback(
81
+ (payload: any) => {
82
+ try {
83
+ if (!payload || !payload.pId) return
84
+
85
+ // Try to read current query result from cache (may throw if not present)
86
+ const cached = client.readQuery({
87
+ query: GET_ALL_PRODUCT_STORE,
88
+ variables
89
+ })
90
+
91
+ if (!cached?.productFoodsAll?.data) return
92
+
93
+ const updatedData = cached.productFoodsAll.data.map((prod: any) => {
94
+ if (!prod || prod.pId !== payload.pId) return prod
95
+
96
+ // update stock in-place preserving other fields; prefer 'stock' field name but keep others
97
+ return {
98
+ ...prod,
99
+ // if your product model uses another field name replace 'stock' accordingly
100
+ stock: payload.newStock,
101
+ previousStock: payload.previousStock ?? prod.previousStock ?? null,
102
+ // keep a meta object with event info for UI if needed
103
+ lastStockEvent: {
104
+ event: payload.event,
105
+ meta: payload.meta
106
+ }
107
+ }
108
+ })
109
+
110
+ // Write back to cache so queries using GET_ALL_PRODUCT_STORE update automatically
111
+ client.writeQuery({
112
+ query: GET_ALL_PRODUCT_STORE,
113
+ variables,
114
+ data: {
115
+ ...cached,
116
+ productFoodsAll: {
117
+ ...cached.productFoodsAll,
118
+ data: updatedData
119
+ }
120
+ }
121
+ })
122
+ } catch (err) {
123
+ // be silent but log for debugging
124
+ // (don't throw — subscription should not break the app)
125
+
126
+ console.error('useProductsFood: failed updating cache from subscription', err)
127
+ }
128
+ },
129
+ // include all variables that affect the cache key
130
+ [client, JSON.stringify(variables)]
131
+ )
132
+ // Attach subscription only if idStore is provided (the subscription hook internally skips when idStore is falsy)
133
+ useStockUpdatedAllSubscription(idStore ?? '', onStockUpdated)
134
+
135
+ if (!isShopppingCard) {
136
+ return [
137
+ productsFood, {
138
+ pagination: data?.productFoodsAll?.pagination || {},
139
+ loading: called ? false : loading,
140
+ error,
141
+ showMore,
142
+ fetchMore,
143
+ refetch,
144
+ setShowMore
145
+ }
146
+ ]
147
+ }
148
+
149
+ const updatedProductsFood = productsFood.map((product: any) => {return {
150
+ ...product,
151
+ existsInSale: Array.isArray(dataSale) && dataSale.some(item => {return item.pId === product.pId})
152
+ }})
153
+
154
+ return [
155
+ updatedProductsFood,
156
+ {
157
+ pagination: data?.productFoodsAll?.pagination || {},
158
+ loading: called ? false : loading,
159
+ error,
160
+ showMore,
161
+ fetchMore,
162
+ refetch,
163
+ setShowMore
164
+ }
165
+ ]
166
+ }
167
+
168
+ export const useDeleteProductsFood = ({
169
+ sendNotification = (arg) => { return arg },
170
+ onSuccess = (arg) => { return arg }
171
+ } = {
172
+ sendNotification: (arg) => { return arg },
173
+ onSuccess: (arg) => { return arg }
174
+ }) => {
175
+ const [updateProductFoods, { data, loading, error }] = useMutation(UPDATE_PRODUCT_FOOD)
176
+
177
+ const handleDelete = async product => {
178
+ const { pId, pState } = product || {}
179
+ return await updateProductFoods({
180
+ variables: {
181
+ input: {
182
+ pId,
183
+ pState
184
+ }
185
+ },
186
+ update(cache) {
187
+ cache.modify({
188
+ fields: {
189
+ productFoodsAll(dataOld = []) {
190
+ if (Array.isArray(dataOld) && dataOld?.length) {
191
+ const product = dataOld?.find((product) => {
192
+ return product.pId === pId
193
+ })
194
+ if (product) {
195
+ const newProductList = dataOld?.filter((product) => {
196
+ return product?.pId !== pId
197
+ })
198
+ return newProductList
199
+ }
200
+ return dataOld
201
+ }
202
+ return []
203
+
204
+ }
205
+ }
206
+ })
207
+ cache.modify({
208
+ fields: {
209
+ getCatProductsWithProduct(dataOld = []) {
210
+ if (Array.isArray(dataOld?.catProductsWithProduct) && dataOld?.catProductsWithProduct?.length) {
211
+ const newListCatProducts = dataOld?.catProductsWithProduct?.map((categories) => {
212
+ return {
213
+ ...categories,
214
+ productFoodsAll: categories?.productFoodsAll?.length
215
+ ? categories?.productFoodsAll?.filter((product) => {
216
+ return product?.pId !== pId
217
+ })
218
+ : []
219
+ }
220
+ })
221
+ return {
222
+ catProductsWithProduct: newListCatProducts,
223
+ totalCount: newListCatProducts?.length
224
+ }
225
+ }
226
+ return dataOld
227
+ }
228
+ }
229
+ })
230
+ }
231
+ }).then(() => {
232
+ onSuccess()
233
+ return sendNotification({
234
+ title: 'Éxito',
235
+ description: pState === 1 ? 'El producto se ha eliminado correctamente' : 'El producto se ha restaurando correctamente',
236
+ backgroundColor: 'success'
237
+ })
238
+ }).catch((e) => {
239
+ console.log(e)
240
+ return sendNotification({
241
+ title: 'Error',
242
+ description: 'Ocurrió un error',
243
+ backgroundColor: 'error'
244
+ })
245
+ })
246
+ }
247
+ return {
248
+ handleDelete, data, loading, error
249
+ }
250
+ }
251
+
252
+ export const useExtProductFoodsAll = () => {
253
+ const [ExtProductFoodsAll,
254
+ {
255
+ data,
256
+ loading,
257
+ error
258
+ }
259
+ ] = useLazyQuery(GET_ALL_EXTRA_PRODUCT)
260
+
261
+ const handleExtProductFoodsAll = (pId) => {
262
+ if (!pId) return
263
+ return ExtProductFoodsAll({
264
+ variables: {
265
+ pId
266
+ }
267
+ })
268
+ }
269
+ return [handleExtProductFoodsAll,
270
+ {
271
+ data: data?.ExtProductFoodsAll || [],
272
+ loading,
273
+ error
274
+ }
275
+ ]
276
+ }
277
+
278
+ export const useExtProductFoodsOptionalAll = () => {
279
+ const [ExtProductFoodsOptionalAll,
280
+ {
281
+ data,
282
+ loading,
283
+ error
284
+ }] = useLazyQuery(GET_EXTRAS_PRODUCT_FOOD_OPTIONAL)
285
+
286
+ const handleGetExtProductFood = (pId) => {
287
+ try {
288
+ ExtProductFoodsOptionalAll({
289
+ variables: {
290
+ pId
291
+ }
292
+ })
293
+ } catch (e) {
294
+ console.log(e)
295
+ }
296
+ }
297
+ return [handleGetExtProductFood,
298
+ {
299
+ data: data?.ExtProductFoodsOptionalAll || [],
300
+ loading,
301
+ error
302
+ }]
303
+ }
304
+
305
+ interface UseGetOneProductsFoodOptions {
306
+ fetchOnlyProduct?: boolean
307
+ }
308
+ export const useGetOneProductsFood = ({ fetchOnlyProduct = false }: UseGetOneProductsFoodOptions = {}) => {
309
+ const [productFoodsOne,
310
+ {
311
+ data,
312
+ loading,
313
+ error
314
+ }] = useLazyQuery(GET_ONE_PRODUCTS_FOOD)
315
+
316
+ const [handleGetExtProductFood, { data: dataOptional }] = useExtProductFoodsOptionalAll()
317
+ const [handleExtProductFoodsAll, { data: dataExtra }] = useExtProductFoodsAll()
318
+ const handleGetOneProduct = async (food: any) => {
319
+ const { pId } = food
320
+ try {
321
+ const product = await productFoodsOne({
322
+ variables: {
323
+ pId
324
+ }
325
+ })
326
+ if (!fetchOnlyProduct) handleGetExtProductFood(pId)
327
+ if (!fetchOnlyProduct) handleExtProductFoodsAll(pId)
328
+ return product
329
+ } catch (e) {
330
+ console.log(e)
331
+ }
332
+ }
333
+ const handleFunctionQuery = fetchOnlyProduct ? productFoodsOne : handleGetOneProduct
334
+ return [handleFunctionQuery, {
335
+ data: data?.productFoodsOne || {},
336
+ dataExtra,
337
+ dataOptional,
338
+ loading,
339
+ error
340
+ }]
341
+ }