npm-pkg-hook 1.12.3 → 1.12.7
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.
- package/dist/index.cjs +20089 -0
- package/dist/index.js +19854 -0
- package/dist/index.mjs +19854 -0
- package/package.json +28 -6
- package/.babelrc +0 -0
- package/.env +0 -5
- package/.eslintrc.js +0 -38
- package/.eslintrc.json +0 -127
- package/.github/pull_request_template.md +0 -18
- package/.github/workflows/pepeline.yaml +0 -30
- package/expire.json +0 -1
- package/jsconfig.json +0 -28
- package/script.txt +0 -7
- package/src/config/client/errors.js +0 -26
- package/src/config/client/index.js +0 -1
- package/src/config/content/en.json +0 -5
- package/src/config/content/es.json +0 -5
- package/src/config/content/index.js +0 -16
- package/src/cookies/index.js +0 -3
- package/src/hooks/addTenMinutes/index.js +0 -14
- package/src/hooks/calculateLogLatHaversine/index.js +0 -30
- package/src/hooks/completeSchedules/index.js +0 -22
- package/src/hooks/convertToMilitaryTime/index.js +0 -14
- package/src/hooks/generateStoreURL/index.js +0 -38
- package/src/hooks/generateTemplate/index.js +0 -62
- package/src/hooks/getCardType/index.js +0 -24
- package/src/hooks/getCategoriesWithProduct/helpers/index.js +0 -7
- package/src/hooks/getCategoriesWithProduct/index.js +0 -62
- package/src/hooks/getGlobalSession/index.js +0 -49
- package/src/hooks/getSession/index.js +0 -18
- package/src/hooks/getTodayTimestamps/index.js +0 -64
- package/src/hooks/getTotalHours/index.js +0 -48
- package/src/hooks/handleLogin/index.js +0 -10
- package/src/hooks/index.ts +0 -146
- package/src/hooks/isTokenExpired/index.js +0 -17
- package/src/hooks/newMessageSubscription/index.js +0 -28
- package/src/hooks/newStoreOrderSubscription/index.js +0 -26
- package/src/hooks/statusOpenStores/helpers/index.js +0 -101
- package/src/hooks/statusOpenStores/index.js +0 -156
- package/src/hooks/updateExtProductFoodsOptional/index.js +0 -40
- package/src/hooks/useAcumulateDate/index.js +0 -16
- package/src/hooks/useAllStoresPendingToRegister/index.js +0 -34
- package/src/hooks/useAmountInput/index.ts +0 -117
- package/src/hooks/useAnimationFrame/index.js +0 -45
- package/src/hooks/useAnimationText/index.jsx +0 -31
- package/src/hooks/useAsideCart/helpers/index.js +0 -22
- package/src/hooks/useAsideCart/index.js +0 -214
- package/src/hooks/useAsideCart/queries.js +0 -10
- package/src/hooks/useBanner/index.js +0 -19
- package/src/hooks/useCart/index.js +0 -2
- package/src/hooks/useCart/queries.js +0 -174
- package/src/hooks/useCart/useCart/helpers/index.js +0 -75
- package/src/hooks/useCart/useCart/index.js +0 -412
- package/src/hooks/useCart/useGetCart/index.js +0 -33
- package/src/hooks/useCatWithProduct/index.js +0 -48
- package/src/hooks/useCatWithProduct/queries.js +0 -200
- package/src/hooks/useCatWithProductClient/index.js +0 -56
- package/src/hooks/useCatWithProductClient/queries.js +0 -56
- package/src/hooks/useCategoriesProduct/index.js +0 -13
- package/src/hooks/useCategoriesProduct/queries.js +0 -16
- package/src/hooks/useCategoryInStore/index.js +0 -100
- package/src/hooks/useCategoryInStore/queries.js +0 -78
- package/src/hooks/useCategoryStore/index.js +0 -7
- package/src/hooks/useCategoryStore/queries.js +0 -16
- package/src/hooks/useChartData/index.js +0 -170
- package/src/hooks/useChartData/useChartData/index.js +0 -199
- package/src/hooks/useChartData/useChartDataAllOrders/index.js +0 -94
- package/src/hooks/useChatRoomSubscription/index.js +0 -28
- package/src/hooks/useCheckbox/index.js +0 -115
- package/src/hooks/useCities/index.js +0 -13
- package/src/hooks/useCities/queries.js +0 -12
- package/src/hooks/useClients/index.js +0 -96
- package/src/hooks/useClients/queries.js +0 -212
- package/src/hooks/useColorByLetters/helpers/alea.js +0 -54
- package/src/hooks/useColorByLetters/helpers/colors.js +0 -45
- package/src/hooks/useColorByLetters/helpers/index.js +0 -18
- package/src/hooks/useColorByLetters/helpers/mersenne_twister.js +0 -118
- package/src/hooks/useColorByLetters/index.js +0 -27
- package/src/hooks/useConnection/index.js +0 -24
- package/src/hooks/useCountries/index.js +0 -19
- package/src/hooks/useCountries/queries.js +0 -12
- package/src/hooks/useCreateDeliveryTime/index.js +0 -51
- package/src/hooks/useCreateOrderStatusType/index.ts +0 -132
- package/src/hooks/useCreateProduct/helpers/index.js +0 -23
- package/src/hooks/useCreateProduct/helpers/manageCacheDataCatProduct/index.js +0 -52
- package/src/hooks/useCreateProduct/helpers/useEditImageProduct/index.js +0 -176
- package/src/hooks/useCreateProduct/index.js +0 -334
- package/src/hooks/useCreateStorePendingToRegister/index.js +0 -13
- package/src/hooks/useCreateStorePendingToRegister/queries.js +0 -10
- package/src/hooks/useDashboardComponents/index.js +0 -50
- package/src/hooks/useDeleteExtraProductFoods/index.js +0 -12
- package/src/hooks/useDeleteSubProductOptional/index.js +0 -30
- package/src/hooks/useDeleteSubProductOptional/queries.js +0 -10
- package/src/hooks/useDeliveryTime/index.js +0 -27
- package/src/hooks/useDepartments/index.js +0 -13
- package/src/hooks/useDepartments/queries.js +0 -13
- package/src/hooks/useDessert/helpers/index.js +0 -51
- package/src/hooks/useDessert/index.js +0 -525
- package/src/hooks/useDessertWithPrice/helpers/index.js +0 -76
- package/src/hooks/useDessertWithPrice/index.js +0 -373
- package/src/hooks/useDessertWithPrice/queries.js +0 -18
- package/src/hooks/useDevWS/index.ts +0 -53
- package/src/hooks/useDevices/index.js +0 -2
- package/src/hooks/useDevices/queries.js +0 -28
- package/src/hooks/useDevices/useGetDevices.js +0 -28
- package/src/hooks/useDevices/useRegisterDevices.js +0 -75
- package/src/hooks/useDownloadReports/helpers/downloadFileFromResponse.ts +0 -21
- package/src/hooks/useDownloadReports/index.ts +0 -2
- package/src/hooks/useDownloadReports/useDownloadReportByDay/index.ts +0 -103
- package/src/hooks/useDownloadReports/useGetReportByDateRange/index.ts +0 -115
- package/src/hooks/useDrag/index.js +0 -63
- package/src/hooks/useDropzone/index.js +0 -94
- package/src/hooks/useDynamicAuth/index.js +0 -13
- package/src/hooks/useDynamicAuth/queries.js +0 -24
- package/src/hooks/useEditCategory/index.js +0 -41
- package/src/hooks/useEditOneExtProductFoodOptional/index.js +0 -28
- package/src/hooks/useEditOneExtProductFoodOptional/queries.js +0 -16
- package/src/hooks/useEditSubProductOptional/index.js +0 -11
- package/src/hooks/useEditSubProductOptional/queries.js +0 -10
- package/src/hooks/useEmployee/index.js +0 -17
- package/src/hooks/useEmployee/queries.js +0 -85
- package/src/hooks/useEmployee/useCreateEmployee.js +0 -86
- package/src/hooks/useEvent/index.js +0 -34
- package/src/hooks/useFavoriteStores/index.js +0 -29
- package/src/hooks/useFavoriteStores/queries.js +0 -54
- package/src/hooks/useFetchJson/index.js +0 -25
- package/src/hooks/useFetchMoreInteractions/index.jsx +0 -39
- package/src/hooks/useFingerprintjs/index.js +0 -172
- package/src/hooks/useFormTools/index.js +0 -116
- package/src/hooks/useFormatDate/index.js +0 -86
- package/src/hooks/useFormatNumberPhone/index.js +0 -23
- package/src/hooks/useFullScreenMode/index.js +0 -65
- package/src/hooks/useGenerateNumberArray/index.js +0 -17
- package/src/hooks/useGetAllLocationUser/index.js +0 -12
- package/src/hooks/useGetAllLocationUser/queries.js +0 -44
- package/src/hooks/useGetCookies/index.js +0 -43
- package/src/hooks/useGetExtProductFoodsSubOptionalAll/index.js +0 -14
- package/src/hooks/useGetFoodRecomended/index.js +0 -32
- package/src/hooks/useGetFoodRecomended/queries.js +0 -47
- package/src/hooks/useGetMessagesToRoom/index.js +0 -23
- package/src/hooks/useGetMinPrice/index.js +0 -12
- package/src/hooks/useGetMinPrice/queries.js +0 -7
- package/src/hooks/useGetOneStoreRating/index.js +0 -40
- package/src/hooks/useGetOneStoreRating/queries.js +0 -18
- package/src/hooks/useGetSalesAmountToday/index.js +0 -31
- package/src/hooks/useGetStoreCookie/index.js +0 -21
- package/src/hooks/useGoogleLogin/index.js +0 -160
- package/src/hooks/useGoogleLogin/loadScript.js +0 -15
- package/src/hooks/useGoogleLogin/removeScript.js +0 -7
- package/src/hooks/useHover/index.js +0 -29
- package/src/hooks/useImageOptimization/index.js +0 -28
- package/src/hooks/useImageUploaderProduct/helper/canvasUtils.ts +0 -130
- package/src/hooks/useImageUploaderProduct/helper/getOrientation.ts +0 -53
- package/src/hooks/useImageUploaderProduct/helper/index.ts +0 -5
- package/src/hooks/useImageUploaderProduct/index.ts +0 -292
- package/src/hooks/useImageWeight/index.js +0 -51
- package/src/hooks/useImagesStore/index.js +0 -225
- package/src/hooks/useImagesStore/queries.js +0 -193
- package/src/hooks/useImagesStore/utils/index.js +0 -4
- package/src/hooks/useIncomingOrders/index.js +0 -10
- package/src/hooks/useIncomingOrders/queries.js +0 -87
- package/src/hooks/useInnerHtml/index.js +0 -39
- package/src/hooks/useIntersection/index.js +0 -84
- package/src/hooks/useInventory/index.js +0 -2
- package/src/hooks/useInventory/queries.js +0 -58
- package/src/hooks/useInventory/useGetProductsInStock.js +0 -15
- package/src/hooks/useInventory/useUpdateManageStock.js +0 -41
- package/src/hooks/useKeypress/index.js +0 -28
- package/src/hooks/useLazyScript/index.js +0 -71
- package/src/hooks/useLocalBackendIp/index.js +0 -34
- package/src/hooks/useLocalSorage/index.js +0 -36
- package/src/hooks/useLocationManager/index.js +0 -63
- package/src/hooks/useLocationNavigate/index.js +0 -54
- package/src/hooks/useLoginEmployeeInStore/index.js +0 -38
- package/src/hooks/useLogout/helpers/BroadcastChannel.js +0 -31
- package/src/hooks/useLogout/helpers/apiBaseUrl.js +0 -8
- package/src/hooks/useLogout/helpers/fetchData.js +0 -28
- package/src/hooks/useLogout/helpers/getCsrfToken.js +0 -30
- package/src/hooks/useLogout/helpers/index.js +0 -57
- package/src/hooks/useLogout/helpers/logger.js +0 -70
- package/src/hooks/useLogout/helpers/parseUrl.js +0 -36
- package/src/hooks/useLogout/index.js +0 -96
- package/src/hooks/useManageNewOrder/helpers/index.js +0 -45
- package/src/hooks/useManageNewOrder/helpers/mock.js +0 -0
- package/src/hooks/useManageNewOrder/index.js +0 -102
- package/src/hooks/useManageQueryParams/index.js +0 -40
- package/src/hooks/useMobile/index.js +0 -65
- package/src/hooks/useModules/helpers/index.js +0 -1
- package/src/hooks/useModules/helpers/validateModules.js +0 -29
- package/src/hooks/useModules/index.js +0 -58
- package/src/hooks/useMouse/index.ts +0 -50
- package/src/hooks/useMutateHeight/index.js +0 -36
- package/src/hooks/useOrderClient/index.js +0 -5
- package/src/hooks/useOrderStatusTypes/index.ts +0 -2
- package/src/hooks/useOrderStatusTypes/useOrderStatusTypes/index.ts +0 -133
- package/src/hooks/useOrderStatusTypes/useUpdateOrderStatusPriorities/index.ts +0 -97
- package/src/hooks/useOrders/index.js +0 -3
- package/src/hooks/useOrders/queries.js +0 -89
- package/src/hooks/useOrders/useChangeOrderState/index.ts +0 -125
- package/src/hooks/useOrders/useOrdersFromStore/index.ts +0 -77
- package/src/hooks/usePWAInstall/index.js +0 -38
- package/src/hooks/usePortFetcher/index.ts +0 -33
- package/src/hooks/useProductsFood/index.js +0 -253
- package/src/hooks/useProductsFood/queriesStore.js +0 -964
- package/src/hooks/useProductsFood/useEditProduct.js +0 -48
- package/src/hooks/useProductsFood/usetagsProducts.js +0 -98
- package/src/hooks/useProviders/index.js +0 -3
- package/src/hooks/useProviders/queries.js +0 -31
- package/src/hooks/useProviders/useProvidersCreateStore/index.js +0 -12
- package/src/hooks/useProviders/useProvidersDataStore/index.js +0 -24
- package/src/hooks/useProvidersStore/index.js +0 -24
- package/src/hooks/useProvidersStore/queries.js +0 -31
- package/src/hooks/usePushNotificationOrder/index.js +0 -52
- package/src/hooks/usePushNotifications/helpers/index.js +0 -114
- package/src/hooks/usePushNotifications/index.js +0 -149
- package/src/hooks/useQueryLocationsMap/index.js +0 -19
- package/src/hooks/useQueryLocationsMap/queries.js +0 -40
- package/src/hooks/useRatingArrayData/index.js +0 -54
- package/src/hooks/useRatingArrayData/queries.js +0 -19
- package/src/hooks/useReactToPrint/index.js +0 -1223
- package/src/hooks/useRemoveExtraProductFoodsOptional/index.js +0 -23
- package/src/hooks/useRemoveExtraProductFoodsOptional/queries.js +0 -48
- package/src/hooks/useReport/index.js +0 -47
- package/src/hooks/useReport/queries.js +0 -123
- package/src/hooks/useRestaurant/helpers/index.js +0 -24
- package/src/hooks/useRestaurant/helpers/manageStatusOpen.js +0 -26
- package/src/hooks/useRestaurant/index.js +0 -69
- package/src/hooks/useRestaurant/queries.js +0 -81
- package/src/hooks/useRoads/index.js +0 -19
- package/src/hooks/useRoads/queries.js +0 -13
- package/src/hooks/useRoles/index.js +0 -4
- package/src/hooks/useRoles/queries.js +0 -70
- package/src/hooks/useRoles/useCreateRole.js +0 -37
- package/src/hooks/useRoles/useGetRoles.js +0 -36
- package/src/hooks/useRoles/useRemoveRoles.js +0 -40
- package/src/hooks/useRoles/useUpdateRolesPriority.js +0 -44
- package/src/hooks/useSales/helpers/index.js +0 -55
- package/src/hooks/useSales/index.js +0 -1381
- package/src/hooks/useSales/queries.js +0 -424
- package/src/hooks/useSales/useGetAllSales/index.js +0 -25
- package/src/hooks/useSales/useGetSale.js +0 -13
- package/src/hooks/useSales/useTotalSales.js +0 -23
- package/src/hooks/useSaveAvailableProduct/helpers/index.js +0 -38
- package/src/hooks/useSaveAvailableProduct/index.js +0 -31
- package/src/hooks/useSaveAvailableProduct/queries.js +0 -10
- package/src/hooks/useSaveLocation/index.js +0 -16
- package/src/hooks/useSaveLocation/queries.js +0 -19
- package/src/hooks/useSchedule/index.js +0 -78
- package/src/hooks/useSchedule/index.jsx +0 -22
- package/src/hooks/useSchedule/queries.js +0 -43
- package/src/hooks/useScheduleData/index.js +0 -123
- package/src/hooks/useScroll/index.js +0 -56
- package/src/hooks/useScrollRotate/index.js +0 -16
- package/src/hooks/useSetImageProducts/index.js +0 -57
- package/src/hooks/useSetImageProducts/queries.js +0 -18
- package/src/hooks/useSetSession/index.js +0 -44
- package/src/hooks/useSetState/index.js +0 -24
- package/src/hooks/useSetupSchedule/helpers/index.js +0 -85
- package/src/hooks/useSetupSchedule/index.js +0 -272
- package/src/hooks/useStatusOpenStore/helpers/index.js +0 -101
- package/src/hooks/useStatusOpenStore/index.js +0 -179
- package/src/hooks/useStatusOrdersClient/helpers/index.js +0 -14
- package/src/hooks/useStatusOrdersClient/index.js +0 -17
- package/src/hooks/useStatusOrdersClient/queries.js +0 -80
- package/src/hooks/useStockMovements/helpers/index.js +0 -16
- package/src/hooks/useStockMovements/index.js +0 -38
- package/src/hooks/useStore/index.js +0 -80
- package/src/hooks/useStore/queries.js +0 -163
- package/src/hooks/useStoreCalendar/index.js +0 -5
- package/src/hooks/useStoreContacts/index.js +0 -47
- package/src/hooks/useStoreContacts/queries.js +0 -48
- package/src/hooks/useStoreTable/index.js +0 -2
- package/src/hooks/useStoreTable/queries.js +0 -47
- package/src/hooks/useStoreTable/useStoreTableCreate.js +0 -76
- package/src/hooks/useStoreTable/useStoreTables.js +0 -14
- package/src/hooks/useSubscriptionValidation/index.js +0 -41
- package/src/hooks/useTagProducts/index.ts +0 -3
- package/src/hooks/useTagProducts/useDeleteOneTag.ts +0 -106
- package/src/hooks/useTagProducts/useGetAllTags.ts +0 -68
- package/src/hooks/useTagProducts/useRegisterMultipleTags.ts +0 -156
- package/src/hooks/useTimeAgo/useTimeAgo.js +0 -39
- package/src/hooks/useTokenCards/index.js +0 -41
- package/src/hooks/useTopProductsMovements/index.js +0 -27
- package/src/hooks/useTotalAllSales/index.js +0 -25
- package/src/hooks/useTotalProductsInStock/index.js +0 -23
- package/src/hooks/useTotalProductsSold/index.js +0 -23
- package/src/hooks/useTotalProductsSolded/index.js +0 -20
- package/src/hooks/useUpdateCart/index.js +0 -130
- package/src/hooks/useUpdateCartCookie/index.js +0 -43
- package/src/hooks/useUpdateDashboardComponent/index.ts +0 -91
- package/src/hooks/useUpdateExistingOrders/index.js +0 -85
- package/src/hooks/useUpdateExtProductFoodsSubOptional/index.js +0 -60
- package/src/hooks/useUpdateModuleOrder/index.js +0 -37
- package/src/hooks/useUpdateMultipleExtProduct/index.js +0 -33
- package/src/hooks/useUpdateMultipleExtProduct/queries.js +0 -33
- package/src/hooks/useUpdateMultipleProducts/index.js +0 -80
- package/src/hooks/useUpdateMultipleProducts/queries.js +0 -51
- package/src/hooks/useUploadProducts/helpers/index.js +0 -1
- package/src/hooks/useUploadProducts/helpers/parseNumber.js +0 -37
- package/src/hooks/useUploadProducts/helpers/validateProductDataExcel.js +0 -73
- package/src/hooks/useUploadProducts/index.js +0 -422
- package/src/hooks/useUpsertGoal/index.js +0 -68
- package/src/hooks/useUser/index.js +0 -23
- package/src/hooks/useUser/queries.js +0 -131
- package/src/hooks/useWeeklyStockMovement/helpers/index.js +0 -32
- package/src/hooks/useWeeklyStockMovement/index.js +0 -51
- package/src/hooks/useWindowSize/index.js +0 -38
- package/src/index.jsx +0 -9
- package/src/mock/dessert/index.js +0 -16
- package/src/mock/index.js +0 -1
- package/src/security/index.js +0 -1
- package/src/services/index.js +0 -0
- package/src/utils/UtilDateRange.js +0 -31
- package/src/utils/index.js +0 -306
- package/tsconfig.json +0 -5
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { gql, useQuery } from '@apollo/client'
|
|
2
|
-
import { fillLast7Weeks } from './helpers' // Asegúrate de importar el helper
|
|
3
|
-
|
|
4
|
-
const GET_WEEKLY_STOCK_MOVEMENT = gql`
|
|
5
|
-
query GetStockMovementPercentageChange {
|
|
6
|
-
getStockMovementWeeklyComparison {
|
|
7
|
-
weekStart
|
|
8
|
-
totalOut
|
|
9
|
-
prevTotalOut
|
|
10
|
-
percentageChange
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
`
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Custom hook to fetch and format weekly stock movement data.
|
|
17
|
-
* @returns {Object} - { data, loading, error, formattedData }
|
|
18
|
-
*/
|
|
19
|
-
export const useWeeklyStockMovement = () => {
|
|
20
|
-
const { data, loading, error } = useQuery(GET_WEEKLY_STOCK_MOVEMENT)
|
|
21
|
-
|
|
22
|
-
// Transform data and fill missing weeks
|
|
23
|
-
const rawData = data?.getStockMovementWeeklyComparison || []
|
|
24
|
-
const formattedData = fillLast7Weeks(
|
|
25
|
-
rawData.map(item => ({
|
|
26
|
-
...item,
|
|
27
|
-
percentageChange: formatPercentageChange(item.percentageChange)
|
|
28
|
-
}))
|
|
29
|
-
)
|
|
30
|
-
|
|
31
|
-
return [formattedData, { loading, error }]
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Ensures percentageChange is a valid string percentage, clamping between -100% and 100%.
|
|
36
|
-
*
|
|
37
|
-
* @param {string | null} percentageChange - Raw percentage change value.
|
|
38
|
-
* @returns {string} - Formatted and clamped percentage change.
|
|
39
|
-
*/
|
|
40
|
-
const formatPercentageChange = (percentageChange) => {
|
|
41
|
-
if (percentageChange === null) return 'N/A'
|
|
42
|
-
|
|
43
|
-
// Convertir a número
|
|
44
|
-
let parsedValue = parseFloat(percentageChange)
|
|
45
|
-
|
|
46
|
-
// Clampear entre -100% y 100%
|
|
47
|
-
if (isNaN(parsedValue)) return 'N/A'
|
|
48
|
-
parsedValue = Math.max(-100, Math.min(100, parsedValue))
|
|
49
|
-
|
|
50
|
-
return `${parsedValue.toFixed(1)}`
|
|
51
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { useState, useEffect } from 'react'
|
|
2
|
-
|
|
3
|
-
export function useWindowSize () {
|
|
4
|
-
// Initialize state with undefined width/height so server and client renders match
|
|
5
|
-
// Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/
|
|
6
|
-
const [windowSize, setWindowSize] = useState({
|
|
7
|
-
width: undefined,
|
|
8
|
-
height: undefined
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
useEffect(() => {
|
|
12
|
-
// Handler to call on window resize
|
|
13
|
-
function handleResize () {
|
|
14
|
-
// Set window width/height to state
|
|
15
|
-
setWindowSize({
|
|
16
|
-
width: window.innerWidth,
|
|
17
|
-
height: window.innerHeight
|
|
18
|
-
})
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// Add event listener
|
|
22
|
-
window.addEventListener('resize', handleResize)
|
|
23
|
-
|
|
24
|
-
// Call handler right away so state gets updated with initial window size
|
|
25
|
-
handleResize()
|
|
26
|
-
|
|
27
|
-
// Remove event listener on cleanup
|
|
28
|
-
return () => window.removeEventListener('resize', handleResize)
|
|
29
|
-
}, []) // Empty array ensures that effect is only run on mount
|
|
30
|
-
|
|
31
|
-
return windowSize
|
|
32
|
-
}
|
|
33
|
-
// Como se usa
|
|
34
|
-
|
|
35
|
-
// 1 -const size = useWindowSize();
|
|
36
|
-
// 2 <div>
|
|
37
|
-
// {size.width}px / {size.height}px
|
|
38
|
-
// </div>
|
package/src/index.jsx
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { RandomCode } from '../../utils'
|
|
2
|
-
|
|
3
|
-
export const MockData = {
|
|
4
|
-
lists: {
|
|
5
|
-
'01list': {
|
|
6
|
-
id: RandomCode(9),
|
|
7
|
-
title: 'Elige tu salsa favorita',
|
|
8
|
-
numberLimit: 0,
|
|
9
|
-
required: 0,
|
|
10
|
-
value: '',
|
|
11
|
-
cards: [
|
|
12
|
-
]
|
|
13
|
-
}
|
|
14
|
-
},
|
|
15
|
-
listIds: ['01list']
|
|
16
|
-
}
|
package/src/mock/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './dessert'
|
package/src/security/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const future = null
|
package/src/services/index.js
DELETED
|
File without changes
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export class UtilDateRange {
|
|
2
|
-
constructor (date = new Date()) {
|
|
3
|
-
this.date = new Date(date) // Asegura que sea un objeto Date
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
toLocalTime (date) {
|
|
7
|
-
const offset = -5 // UTC-5 (ajustar si es necesario)
|
|
8
|
-
const localDate = new Date(date)
|
|
9
|
-
localDate.setHours(localDate.getHours() + offset)
|
|
10
|
-
return localDate
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
getStartOfDay () {
|
|
14
|
-
const localDate = this.toLocalTime(this.date)
|
|
15
|
-
localDate.setHours(0, 0, 0, 0)
|
|
16
|
-
return localDate
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
getEndOfDay () {
|
|
20
|
-
const localDate = this.toLocalTime(this.date)
|
|
21
|
-
localDate.setHours(23, 59, 59, 999)
|
|
22
|
-
return localDate
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
getRange () {
|
|
26
|
-
return {
|
|
27
|
-
start: this.getStartOfDay(),
|
|
28
|
-
end: this.getEndOfDay()
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
package/src/utils/index.js
DELETED
|
@@ -1,306 +0,0 @@
|
|
|
1
|
-
import { randomBytes } from 'crypto'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* @description It takes an array of elements and returns an object with a submit hook for each element.
|
|
5
|
-
* @version 0.1.1
|
|
6
|
-
* @param {array} elements elementos del formulario
|
|
7
|
-
* @return {array} devuelve un array de booleanos con el nombre identificador para cada estado en react.
|
|
8
|
-
*/
|
|
9
|
-
const validTypes = {
|
|
10
|
-
text: true,
|
|
11
|
-
password: true,
|
|
12
|
-
email: true,
|
|
13
|
-
number: true,
|
|
14
|
-
hidden: true,
|
|
15
|
-
textarea: true
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export const statusOrder = {
|
|
19
|
-
0: '',
|
|
20
|
-
1: 'ENTRANTE',
|
|
21
|
-
2: 'PROCESO',
|
|
22
|
-
3: 'LISTOS',
|
|
23
|
-
4: 'CONCLUIDOS',
|
|
24
|
-
5: 'REJECTED'
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export const statusProduct = {
|
|
28
|
-
deleted: 0,
|
|
29
|
-
active: 1
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export const validationSubmitHooks = elements => {
|
|
33
|
-
if (!elements || elements.length === 0) {
|
|
34
|
-
return {}
|
|
35
|
-
}
|
|
36
|
-
let errorForm = {}
|
|
37
|
-
|
|
38
|
-
for (const element of elements) {
|
|
39
|
-
if (element.name) {
|
|
40
|
-
const elementType = element.type || element.tagName.toLowerCase()
|
|
41
|
-
if (validTypes[elementType]) {
|
|
42
|
-
if (element.dataset.required === 'true') {
|
|
43
|
-
if (!element.value) {
|
|
44
|
-
errorForm = { ...errorForm, [element.name]: true }
|
|
45
|
-
} else {
|
|
46
|
-
errorForm = { ...errorForm, [element.name]: false }
|
|
47
|
-
}
|
|
48
|
-
} else {
|
|
49
|
-
errorForm = { ...errorForm, [element.name]: false }
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
return errorForm
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export const getCurrentDomain = () => {
|
|
59
|
-
return typeof window !== 'undefined' && window.location.hostname
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Generates a cryptographically secure random string of given length.
|
|
64
|
-
* @param length - Desired length of the generated code.
|
|
65
|
-
* @param options - Optional prefix/suffix configuration.
|
|
66
|
-
* @returns Random alphanumeric string with optional prefix and suffix.
|
|
67
|
-
*/
|
|
68
|
-
export const RandomCode = (
|
|
69
|
-
length,
|
|
70
|
-
options
|
|
71
|
-
) => {
|
|
72
|
-
if (length <= 0) {
|
|
73
|
-
throw new Error('Length must be greater than 0')
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
|
|
77
|
-
const charactersLength = characters.length
|
|
78
|
-
|
|
79
|
-
// Generate enough random bytes
|
|
80
|
-
const randomBuffer = randomBytes(length)
|
|
81
|
-
let code = ''
|
|
82
|
-
|
|
83
|
-
for (let i = 0; i < length; i++) {
|
|
84
|
-
const index = randomBuffer[i] % charactersLength
|
|
85
|
-
code += characters.charAt(index)
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
return `${options?.prefix ?? ''}${code}${options?.suffix ?? ''}`
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* actualizar cache de apollo
|
|
93
|
-
* @param {{ cache: object, query: object, nameFun: string, dataNew: object, type: number, id: string }} params Parámetros para actualizar el cachet de apollo
|
|
94
|
-
* @returns {null} no hay retorno
|
|
95
|
-
*/
|
|
96
|
-
export const updateCacheMod = async ({ cache, query, nameFun, dataNew, type, id }) => {
|
|
97
|
-
return cache.modify({
|
|
98
|
-
fields: {
|
|
99
|
-
[nameFun] (dataOld = []) {
|
|
100
|
-
if (type === 1) return cache.writeQuery({ query, data: [...(dataOld || []), { ...(dataNew || {}) }] })
|
|
101
|
-
if (type === 2) return cache.writeQuery({ query, data: { ...(dataOld || {}), ...(dataNew || {}) } })
|
|
102
|
-
if (type === 3) return cache.writeQuery({ query, data: dataOld.filter(x => { return x === id }) })
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
})
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Formatea un valor como un número siguiendo el formato de Colombia.
|
|
109
|
-
* Si el valor no es un número válido, lo devuelve tal como está.
|
|
110
|
-
*
|
|
111
|
-
* @param {string|number} value - El valor a formatear.
|
|
112
|
-
* @returns {string} El valor formateado como número o el valor original si no es numérico.
|
|
113
|
-
*/
|
|
114
|
-
export const numberFormat = value => {
|
|
115
|
-
// Verifica si el valor es nulo o indefinido, devolviendo el mismo valor.
|
|
116
|
-
if (value === null || value === undefined) {
|
|
117
|
-
return value
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
// Convierte el valor a string y elimina puntos.
|
|
121
|
-
const stringValue = `${value}`.replace(/\./g, '')
|
|
122
|
-
|
|
123
|
-
// Intenta convertir a número y formatear si es posible.
|
|
124
|
-
const numberValue = parseFloat(stringValue)
|
|
125
|
-
if (!isNaN(numberValue)) {
|
|
126
|
-
return new Intl.NumberFormat('es-CO', {
|
|
127
|
-
minimumFractionDigits: 2,
|
|
128
|
-
style: 'decimal',
|
|
129
|
-
maximumFractionDigits: 2
|
|
130
|
-
}).format(numberValue)
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
// Devuelve el valor original si no es un número.
|
|
134
|
-
return value
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
*
|
|
138
|
-
* @param {Object} data objeto a filtrar
|
|
139
|
-
* @param {Array} filters array a comparar o claves del objeto a excluir
|
|
140
|
-
* @param {boolean} dataFilter booleano para devolver los datos filtrados o no
|
|
141
|
-
* @return {Object} devuelve un objeto con los datos filtrados
|
|
142
|
-
*/
|
|
143
|
-
export const filterKeyObject = (data, filters, dataFilter) => {
|
|
144
|
-
let values = {}; let valuesFilter = {}
|
|
145
|
-
for (const elem in data) {
|
|
146
|
-
let coincidence = false
|
|
147
|
-
for (let i = 0; i < filters.length; i++) {
|
|
148
|
-
if (elem === filters[i]) coincidence = true
|
|
149
|
-
else valuesFilter = filters[i]
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
if (!coincidence) values = { ...values, [elem]: data[elem] }
|
|
153
|
-
else valuesFilter = { ...valuesFilter, [elem]: data[elem] }
|
|
154
|
-
}
|
|
155
|
-
if (!dataFilter) return values
|
|
156
|
-
if (dataFilter) return { values, valuesFilter }
|
|
157
|
-
}
|
|
158
|
-
export const MONTHS = [
|
|
159
|
-
'January',
|
|
160
|
-
'February',
|
|
161
|
-
'March',
|
|
162
|
-
'April',
|
|
163
|
-
'May',
|
|
164
|
-
'June',
|
|
165
|
-
'July',
|
|
166
|
-
'August',
|
|
167
|
-
'September',
|
|
168
|
-
'October',
|
|
169
|
-
'November',
|
|
170
|
-
'December'
|
|
171
|
-
]
|
|
172
|
-
export const SPANISH_MONTHS = {
|
|
173
|
-
0: 'Enero',
|
|
174
|
-
1: 'Febrero',
|
|
175
|
-
2: 'Marzo',
|
|
176
|
-
3: 'Abril',
|
|
177
|
-
4: 'Mayo',
|
|
178
|
-
5: 'Junio',
|
|
179
|
-
6: 'Julio',
|
|
180
|
-
7: 'Augosto',
|
|
181
|
-
8: 'Septiembre',
|
|
182
|
-
9: 'Octubre',
|
|
183
|
-
10: 'Noviembre ',
|
|
184
|
-
11: 'Diciembre'
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export const days = {
|
|
188
|
-
1: 'Lunes',
|
|
189
|
-
2: 'Martes',
|
|
190
|
-
3: 'Miércoles',
|
|
191
|
-
4: 'Jueves',
|
|
192
|
-
5: 'Viernes',
|
|
193
|
-
6: 'Sábado',
|
|
194
|
-
0: 'Domingo'
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
export const convertBase64 = file => {
|
|
198
|
-
return new Promise((resolve, reject) => {
|
|
199
|
-
const reader = new FileReader()
|
|
200
|
-
if (file) {
|
|
201
|
-
reader.readAsDataURL(file)
|
|
202
|
-
}
|
|
203
|
-
reader.onload = () => {
|
|
204
|
-
resolve(reader.result)
|
|
205
|
-
}
|
|
206
|
-
reader.onerror = error => {
|
|
207
|
-
reject(error)
|
|
208
|
-
}
|
|
209
|
-
})
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
export const validationImg = file => { return (/\.(jpg|png|gif|jpeg)$/i).test(file.name) }
|
|
213
|
-
|
|
214
|
-
export const SERVICES = Object.freeze({
|
|
215
|
-
WEB_SOCKET_CHAT: 'web-socket-chat',
|
|
216
|
-
ADMIN_SERVER: 'admin-server',
|
|
217
|
-
ADMIN_STORE: 'admin-store',
|
|
218
|
-
MAIN: 'main'
|
|
219
|
-
})
|
|
220
|
-
|
|
221
|
-
export const paymentMethodCards = [
|
|
222
|
-
{
|
|
223
|
-
name: 'Visa',
|
|
224
|
-
icon: 'IconVisa'
|
|
225
|
-
},
|
|
226
|
-
{
|
|
227
|
-
name: 'MasterCard',
|
|
228
|
-
icon: 'IconMasterCard'
|
|
229
|
-
}
|
|
230
|
-
]
|
|
231
|
-
|
|
232
|
-
export const CATEGORY_EMPTY = 'NINGUNO'
|
|
233
|
-
|
|
234
|
-
export * from './UtilDateRange'
|
|
235
|
-
|
|
236
|
-
const cleanValue = ({ value, decimalSeparator, groupSeparator, allowDecimals, decimalsLimit, allowNegativeValue, disableAbbreviations }) => {
|
|
237
|
-
if (typeof value !== 'string') return null
|
|
238
|
-
|
|
239
|
-
// Remove currency symbols and whitespace
|
|
240
|
-
let cleaned = value.replace(/[$€£¥]/g, '').trim()
|
|
241
|
-
|
|
242
|
-
// Handle abbreviations like K, M, B
|
|
243
|
-
if (!disableAbbreviations) {
|
|
244
|
-
cleaned = cleaned.replace(/([kmb])\b/i, (match) => {
|
|
245
|
-
const multipliers = { k: 1e3, m: 1e6, b: 1e9 }
|
|
246
|
-
return multipliers[match.toLowerCase()] ? `*${multipliers[match.toLowerCase()]}` : ''
|
|
247
|
-
})
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
// Replace group separator with empty string
|
|
251
|
-
if (groupSeparator) {
|
|
252
|
-
cleaned = cleaned.replace(new RegExp(`\\${groupSeparator}`, 'g'), '')
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
// Replace decimal separator with a dot
|
|
256
|
-
if (decimalSeparator) {
|
|
257
|
-
cleaned = cleaned.replace(new RegExp(`\\${decimalSeparator}`, 'g'), '.')
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
// Remove any non-numeric characters except for the decimal point
|
|
261
|
-
cleaned = cleaned.replace(/[^0-9.-]/g, '')
|
|
262
|
-
|
|
263
|
-
// Limit decimals if specified
|
|
264
|
-
if (allowDecimals && decimalsLimit > 0) {
|
|
265
|
-
const parts = cleaned.split('.')
|
|
266
|
-
if (parts.length > 1) {
|
|
267
|
-
parts[1] = parts[1].slice(0, decimalsLimit)
|
|
268
|
-
cleaned = parts.join('.')
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
// Handle negative values
|
|
273
|
-
if (!allowNegativeValue) {
|
|
274
|
-
cleaned = cleaned.replace(/-/g, '')
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
return cleaned
|
|
278
|
-
}
|
|
279
|
-
/**
|
|
280
|
-
* Converts a formatted string with group and decimal separators into a float number.
|
|
281
|
-
*
|
|
282
|
-
* @param value - The formatted string input, e.g., "$ 1.234,56"
|
|
283
|
-
* @param decimalSeparator - The character used as decimal separator, e.g., ','
|
|
284
|
-
* @param groupSeparator - The character used as group/thousands separator, e.g., '.'
|
|
285
|
-
* @returns The parsed float value or null if input is invalid
|
|
286
|
-
*/
|
|
287
|
-
export function parseFormattedFloat (value) {
|
|
288
|
-
if (!value) return 0
|
|
289
|
-
const options = {
|
|
290
|
-
decimalSeparator: ',',
|
|
291
|
-
groupSeparator: '.',
|
|
292
|
-
allowDecimals: true,
|
|
293
|
-
decimalsLimit: 20,
|
|
294
|
-
allowNegativeValue: true,
|
|
295
|
-
disableAbbreviations: false
|
|
296
|
-
}
|
|
297
|
-
const cleaned = cleanValue({ value, ...options })
|
|
298
|
-
|
|
299
|
-
const normalized = (typeof options.decimalSeparator === 'string' && options.decimalSeparator !== '')
|
|
300
|
-
// Replace the decimal separator with a dot for parsing
|
|
301
|
-
? cleaned.replace(options.decimalSeparator, '.')
|
|
302
|
-
: cleaned
|
|
303
|
-
|
|
304
|
-
const num = parseFloat(normalized)
|
|
305
|
-
return isNaN(num) ? 0 : num
|
|
306
|
-
}
|