erp-pos-ecommerce-shared 0.2.0 → 0.2.2

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.
@@ -17,39 +17,41 @@ interface ICategory {
17
17
  tblAttributes?: IAttribute[];
18
18
  }
19
19
 
20
- interface IAttributeResponse {
21
- data: ICategory[];
20
+ interface IBatchResponse {
22
21
  total: number;
22
+ data: IBatch[];
23
23
  skip: number;
24
24
  limit: number;
25
25
  }
26
- interface IAttribute {
27
- attributeID: number;
28
- name: string;
29
- pricePerGram?: number | null;
26
+ interface IStock {
27
+ stockID: number;
28
+ productID: number;
29
+ wareHouseID: number;
30
+ batchID: number;
31
+ quantity: number;
30
32
  syncStatusID: number;
31
33
  masterCodeID: null;
32
- savedBy: number;
33
- savedDate: Date;
34
- deletedBy: null;
35
- deletedDate: null;
36
- categoryID: number | null;
37
- productID: number | null;
38
- materialID: number | null;
39
- tblAttributeValues: IAttributeValue[];
40
- tblCategories: ICategory;
34
+ savedBy: null;
35
+ savedDate: null;
41
36
  }
42
- interface IAttributeValue {
43
- valueID: number;
44
- attributeID: number;
45
- value: string;
37
+ interface IBatch {
38
+ batchID: number;
39
+ batchCode: string;
40
+ entryDate: string;
41
+ expirationDate: string | null;
42
+ providerID: number;
43
+ unitCost: number;
44
+ unitSellingPrice: number;
45
+ taxID: number;
46
+ productDetailID: number;
46
47
  syncStatusID: number;
47
48
  masterCodeID: null;
48
- savedBy: number;
49
- savedDate: Date;
49
+ savedBy: null;
50
+ savedDate: null;
50
51
  deletedBy: null;
51
52
  deletedDate: null;
52
- tblAttributes?: IAttribute;
53
+ tblStocks: IStock[];
54
+ tblProductDetails?: IProductDetails;
53
55
  }
54
56
 
55
57
  interface IProductResponse {
@@ -196,41 +198,51 @@ interface IProductVariantRequest {
196
198
  };
197
199
  }
198
200
 
199
- interface IBatchResponse {
201
+ interface IAttributeFilter {
202
+ query: string | null;
203
+ categoryId: number | null;
204
+ productId: number | null;
205
+ materialId: number | null;
206
+ }
207
+ interface IAttributeQueryParams {
208
+ skip?: number;
209
+ limit?: number;
210
+ filters?: IAttributeFilter;
211
+ }
212
+ interface IAttributeResponse {
213
+ data: ICategory[];
200
214
  total: number;
201
- data: IBatch[];
202
215
  skip: number;
203
216
  limit: number;
204
217
  }
205
- interface IStock {
206
- stockID: number;
207
- productID: number;
208
- wareHouseID: number;
209
- batchID: number;
210
- quantity: number;
218
+ interface IAttribute {
219
+ attributeID: number;
220
+ name: string;
221
+ pricePerGram?: number | null;
211
222
  syncStatusID: number;
212
223
  masterCodeID: null;
213
- savedBy: null;
214
- savedDate: null;
224
+ savedBy: number;
225
+ savedDate: Date;
226
+ deletedBy: null;
227
+ deletedDate: null;
228
+ categoryID: number | null;
229
+ productID: number | null;
230
+ materialID: number | null;
231
+ tblAttributeValues: IAttributeValue[];
232
+ tblCategories?: ICategory;
233
+ tblProducts?: IProduct;
215
234
  }
216
- interface IBatch {
217
- batchID: number;
218
- batchCode: string;
219
- entryDate: string;
220
- expirationDate: string | null;
221
- providerID: number;
222
- unitCost: number;
223
- unitSellingPrice: number;
224
- taxID: number;
225
- productDetailID: number;
235
+ interface IAttributeValue {
236
+ valueID: number;
237
+ attributeID: number;
238
+ value: string;
226
239
  syncStatusID: number;
227
240
  masterCodeID: null;
228
- savedBy: null;
229
- savedDate: null;
241
+ savedBy: number;
242
+ savedDate: Date;
230
243
  deletedBy: null;
231
244
  deletedDate: null;
232
- tblStocks: IStock[];
233
- tblProductDetails?: IProductDetails;
245
+ tblAttributes?: IAttribute;
234
246
  }
235
247
 
236
248
  interface IFilterSelectOption {
@@ -263,4 +275,4 @@ interface IFilterType {
263
275
  priceRangeMax: number | null;
264
276
  }
265
277
 
266
- export type { BatchData as B, IAttribute as I, ProdStats as P, TblCategories as T, IAttributeResponse as a, IAttributeValue as b, IBatch as c, IBatchResponse as d, ICategory as e, ICategoryResponse as f, IFilterSelectOption as g, IFilterType as h, IProduct as i, IProductDetails as j, IProductDetailsResponse as k, IProductResponse as l, IProductVariantRequest as m, IStock as n, ITableFilterConfig as o, ProdStock as p, ProductOptions as q, TblMaterials as r, TblProductsImage as s, TblProductsTag as t, TblTags as u };
278
+ export type { BatchData as B, IAttribute as I, ProdStats as P, TblCategories as T, IAttributeFilter as a, IAttributeQueryParams as b, IAttributeResponse as c, IAttributeValue as d, IBatch as e, IBatchResponse as f, ICategory as g, ICategoryResponse as h, IFilterSelectOption as i, IFilterType as j, IProduct as k, IProductDetails as l, IProductDetailsResponse as m, IProductResponse as n, IProductVariantRequest as o, IStock as p, ITableFilterConfig as q, ProdStock as r, ProductOptions as s, TblMaterials as t, TblProductsImage as u, TblProductsTag as v, TblTags as w };
@@ -1,4 +1,4 @@
1
- import { s as TblProductsImage } from './filters.interface-Cx-AXMPz.js';
1
+ import { u as TblProductsImage } from './filters.interface-glhGBJfx.js';
2
2
 
3
3
  type IField = ITextField | IPasswordField | INumberField | ISelectField | IMultiSelectField | IDateField | IEmailField | IHiddenField | ISwitchField | IFileField | ITagField;
4
4
  interface IHiddenField extends IBaseField {
package/dist/hooks.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
2
  import { UseMutationOptions, UseQueryOptions } from '@tanstack/react-query';
3
- import { d as LoginResponse, U as UpdateBatchData, I as IExchange, b as IExchangeResponse, P as PaymentType, L as LocationResponse, M as MaterialResponse, a as ChangeProductResponse, C as ChangeProductRequest, c as IUpdatePermission, e as PrintQRResponse, G as GetReturnsByOrderIdResponse, R as Response, S as StateResponse, W as WarehouseResponse } from './warehouse.service-geeduO1g.js';
4
- import { I as IAttribute, b as IAttributeValue, a as IAttributeResponse, d as IBatchResponse, c as IBatch, e as ICategory, f as ICategoryResponse, h as IFilterType, i as IProduct, j as IProductDetails, k as IProductDetailsResponse, l as IProductResponse } from './filters.interface-Cx-AXMPz.js';
3
+ import { d as LoginResponse, U as UpdateBatchData, I as IExchange, b as IExchangeResponse, P as PaymentType, L as LocationResponse, M as MaterialResponse, a as ChangeProductResponse, C as ChangeProductRequest, c as IUpdatePermission, e as PrintQRResponse, G as GetReturnsByOrderIdResponse, R as Response, S as StateResponse, W as WarehouseResponse } from './warehouse.service-CDDl5yeV.js';
4
+ import { b as IAttributeQueryParams, I as IAttribute, d as IAttributeValue, c as IAttributeResponse, f as IBatchResponse, e as IBatch, g as ICategory, h as ICategoryResponse, j as IFilterType, k as IProduct, l as IProductDetails, m as IProductDetailsResponse, n as IProductResponse } from './filters.interface-glhGBJfx.js';
5
5
  import { T as TableQueryParams } from './types-CiX8AkJA.js';
6
6
  import { ColumnDef, useReactTable, ColumnFiltersState } from '@tanstack/react-table';
7
7
  import { D as DataTableConfig, S as ServerTableState } from './datatable.interface-DbB5oxj-.js';
8
- import { a as BankTerminalResponse, d as IBankTerminal, g as IBankTerminalResponse, e as IBankTerminalForm, l as IClientResponseById, k as IClientResponse, h as IClient, j as IClientRequest, n as ILocation, o as ILocationResponse, p as IMaterial, r as IModule, u as IOrder, v as IOrderResponse, am as TblOrderStatus, x as IPaymentMethod, y as IPaymentMethodAmountExpected, w as IPayment, a8 as PermissionRole, z as IPermissionRole, a9 as PriceCalculationResponse, C as CalculatePriceRequest, ab as PricePerGramResponse, E as IPricePerGramHistory, ag as SchedulePriceRequest, az as UpdatePriceRequest, F as IPriceType, G as IPriceTypeResponse, Y as ITag, H as IPromotion, J as IPromotionResponse, K as IPromotionType, O as IProviderResponse, N as IProviderRequest, L as IProvider, M as IProviderForSelect, c as ComparisonBy, Q as IReportInventory, P as IReportComparisonByTimeFrame, R as IReportX, S as IReportZ, V as IStockByWarehouseReport, ak as TblOrderDetail, U as IRole, W as IStockMovement, X as IStockMovementResponse, Z as ITax, A as AgentResponse, a0 as IUserForm, $ as IUser, aA as UserResponse, a1 as IWareHouse, a2 as IWareHouseResponse } from './warehouse.interface-BRPPyPIC.js';
9
- import { F as FolioResponse, G as GenderResponse, H as HealthCheckResponse, U as UseOrdersParams$1, P as ProductQueryParams$1, C as CloseShiftData } from './shift.queries-DF8gfQOQ.js';
8
+ import { a as BankTerminalResponse, d as IBankTerminal, g as IBankTerminalResponse, e as IBankTerminalForm, l as IClientResponseById, k as IClientResponse, h as IClient, j as IClientRequest, n as ILocation, o as ILocationResponse, p as IMaterial, r as IModule, u as IOrder, v as IOrderResponse, am as TblOrderStatus, x as IPaymentMethod, y as IPaymentMethodAmountExpected, w as IPayment, a8 as PermissionRole, z as IPermissionRole, a9 as PriceCalculationResponse, C as CalculatePriceRequest, ab as PricePerGramResponse, E as IPricePerGramHistory, ag as SchedulePriceRequest, az as UpdatePriceRequest, F as IPriceType, G as IPriceTypeResponse, Y as ITag, H as IPromotion, J as IPromotionResponse, K as IPromotionType, O as IProviderResponse, N as IProviderRequest, L as IProvider, M as IProviderForSelect, c as ComparisonBy, Q as IReportInventory, P as IReportComparisonByTimeFrame, R as IReportX, S as IReportZ, V as IStockByWarehouseReport, ak as TblOrderDetail, U as IRole, W as IStockMovement, X as IStockMovementResponse, Z as ITax, A as AgentResponse, a0 as IUserForm, $ as IUser, aA as UserResponse, a1 as IWareHouse, a2 as IWareHouseResponse } from './warehouse.interface-fnr42ygU.js';
9
+ import { F as FolioResponse, G as GenderResponse, H as HealthCheckResponse, U as UseOrdersParams$1, P as ProductQueryParams$1, C as CloseShiftData } from './shift.queries-BbWWhwdp.js';
10
10
  import '@tanstack/query-core';
11
11
 
12
12
  declare const useLogin: (options?: UseMutationOptions<LoginResponse, Error, {
@@ -19,6 +19,11 @@ declare const useLogin: (options?: UseMutationOptions<LoginResponse, Error, {
19
19
 
20
20
  declare const attributeKeys: {
21
21
  all: readonly ["attributes"];
22
+ table: (params?: IAttributeQueryParams) => readonly ["attributes", "table", {
23
+ readonly skip: number | undefined;
24
+ readonly limit: number | undefined;
25
+ readonly filters: {};
26
+ }];
22
27
  lists: () => readonly ["attributes", "list"];
23
28
  list: (params: TableQueryParams) => readonly ["attributes", "list", {
24
29
  readonly skip: number | undefined;
@@ -32,17 +37,19 @@ declare const attributeKeys: {
32
37
  byCategory: (categoryId: string) => readonly ["attributes", "category", string];
33
38
  values: (attributeId: string) => readonly ["attributes", "values", string];
34
39
  };
40
+ interface AttributeFilterColumnMap {
41
+ categoryId?: string;
42
+ productId?: string;
43
+ materialId?: string;
44
+ }
45
+ declare const mapTableParamsToAttributeParams: (params: TableQueryParams, columnMap?: Partial<AttributeFilterColumnMap>) => IAttributeQueryParams;
35
46
  declare const useAttributes: (params: {
36
47
  skip: number;
37
48
  limit: number;
38
49
  query: string;
39
50
  }, options?: Omit<UseQueryOptions<IAttributeResponse>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttributeResponse, Error>;
40
51
  /** Alias for useAttributes - paginated list for tables */
41
- declare const useAttributesTable: (params: {
42
- skip: number;
43
- limit: number;
44
- query: string;
45
- }, options?: Omit<UseQueryOptions<IAttributeResponse>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttributeResponse, Error>;
52
+ declare const useAttributesTable: (params?: IAttributeQueryParams, options?: Omit<UseQueryOptions<IAttributeResponse>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttributeResponse, Error>;
46
53
  declare const useAttributesForSelect: (options?: Omit<UseQueryOptions<IAttribute[]>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttribute[], Error>;
47
54
  declare const useAttribute: (attributeId: string | undefined, options?: Omit<UseQueryOptions<IAttribute>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttribute, Error>;
48
55
  declare const useAttributesByProductID: (productId: string | undefined, options?: Omit<UseQueryOptions<IAttribute[]>, "queryKey" | "queryFn">) => _tanstack_react_query.UseQueryResult<IAttribute[], Error>;
@@ -742,6 +749,7 @@ declare const useUpdateProduct: (options?: UseMutationOptions<IProduct, Error, {
742
749
  product: FormData;
743
750
  }, unknown>;
744
751
  declare const useCreateProductVariant: (options?: UseMutationOptions<IProductDetails, Error, FormData>) => _tanstack_react_query.UseMutationResult<IProductDetails, Error, FormData, unknown>;
752
+ declare const useCreateProductVariants: (options?: UseMutationOptions<IProductDetails[], Error, FormData>) => _tanstack_react_query.UseMutationResult<IProductDetails[], Error, FormData, unknown>;
745
753
  declare const useUpdateProductVariant: (options?: UseMutationOptions<IProductDetails, Error, FormData>) => _tanstack_react_query.UseMutationResult<IProductDetails, Error, FormData, unknown>;
746
754
  declare const useDeleteProductVariant: (options?: UseMutationOptions<void, Error, {
747
755
  productDetailId: number;
@@ -1192,4 +1200,4 @@ declare const usePrefetchWarehouse: () => {
1192
1200
  prefetchWarehouse: (warehouseId: number) => Promise<void>;
1193
1201
  };
1194
1202
 
1195
- export { type ProductFilterColumnMap, type UseDataTableOptions, type UseDataTableReturn, attributeKeys, bankTerminalKeys, batchKeys, categoryKeys, clientKeys, exchangeKeys, folioKeys, genderKeys, healthKeys, locationKeys, mapTableParamsToProductParams, materialKeys, moduleKeys, orderKeys, paymentKeys, permissionKeys, pricePerGramKeys, priceTypeKeys, productKeys, productTagKeys, promotionKeys, providerKeys, qrKeys, reportKeys, returnKeys, roleKeys, stateKeys, stockMovementKeys, taxKeys, useAllAgents, useAllBankTerminals, useAllCategories, useAllGenders, useAllLocations, useAllMaterials, useAllModules, useAllProductTags, useAllStates, useAttribute, useAttributeValues, useAttributes, useAttributesByCategoryID, useAttributesByProductID, useAttributesForSelect, useAttributesTable, useBankTerminal, useBankTerminals, useBankTerminalsForSelect, useBankTerminalsTable, useBatches, useBatchesForSelect, useBatchesTable, useCalculatePricePerGram, useCategories, useCategoriesForSelect, useCategoriesTable, useCategory, useChangeOrderProduct, useClient, useClients, useClientsForSelect, useClientsTable, useCloseShift, useCreateAttribute, useCreateAttributeValue, useCreateAttributesForCategory, useCreateAttributesValuesBatch, useCreateBankTerminal, useCreateBatch, useCreateBatchAndUpdateOtherBatches, useCreateCategory, useCreateClient, useCreateExchangeRate, useCreateLocation, useCreateMaterial, useCreateMovement, useCreatePriceType, useCreateProduct, useCreateProductVariant, useCreatePromotion, useCreateProvider, useCreateReturn, useCreateRole, useCreateUser, useCreateWarehouse, useDataTable, useDeleteAttribute, useDeleteBankTerminal, useDeleteCategory, useDeleteClient, useDeleteFuturePricePerGram, useDeleteImageFromProduct, useDeleteLocation, useDeleteMaterial, useDeletePriceType, useDeleteProduct, useDeleteProductVariant, useDeleteProvider, useDeleteRole, useDeleteUser, useDeleteWarehouse, useExchangeRate, useExchangeRates, useExchangeRatesTable, useHealthCheck, useInventoryTable, useIsWeightBased, useLocation, useLocations, useLocationsForSelect, useLocationsTable, useLogin, useMakeNewCashMovement, useMatchedBatches, useMaterial, useMaterials, useMaterialsForSelect, useMaterialsTable, useMovements, useMovementsTable, useNextFolioToUseInBatches, useOrder, useOrders, useOrdersStatusForSelect, useOrdersTable, usePaymentMethods, usePaymentMethodsWithAmount, usePaymentMethodsWithAmountExpected, usePaymentTypes, usePendingReportZ, usePermissionRoleByRoleID, usePermissions, usePrefetchAttribute, usePrefetchBankTerminal, usePrefetchCategory, usePrefetchClient, usePrefetchLocation, usePrefetchMaterial, usePrefetchOrder, usePrefetchPriceType, usePrefetchProduct, usePrefetchPromotion, usePrefetchProvider, usePrefetchRole, usePrefetchUser, usePrefetchWarehouse, usePricePerGram, usePricePerGramHistory, usePriceType, usePriceTypes, usePriceTypesForSelect, usePriceTypesTable, usePrintQR, usePrintReportX, usePrintReportZ, useProduct, useProductVariant, useProductVariants, useProductVariantsForSelect, useProducts, useProductsByCategory, useProductsForSelect, useProductsTable, usePromotion, usePromotions, usePromotionsTable, usePromotionsTypeForSelect, useProvider, useProviders, useProvidersForSelect, useProvidersTable, useQRBaseUrl, useReportByInventory, useReportComparisonByTimeFrame, useReportX, useReportZ, useRestoreBankTerminal, useRestoreCategory, useRestoreClient, useRestoreLocation, useRestoreProduct, useRestoreProductVariant, useRestoreProvider, useRestoreUser, useRestoreWarehouse, useReturnsByOrderId, useRole, useRoles, useRolesTable, useSchedulePricePerGram, useSellersOfDayForSelect, useSellersWithShift, useSendCreditPayment, useSendPayment, useSetNewShift, useStockByWarehouseReport, useTaxesForSelect, useUndeleteAttribute, useUndeleteMaterial, useUndeletePriceType, useUpdateAttribute, useUpdateAttributesForCategory, useUpdateBankTerminal, useUpdateBatch, useUpdateCategory, useUpdateClient, useUpdateFuturePricePerGram, useUpdateLocation, useUpdateMaterial, useUpdatePermission, useUpdatePricePerGram, useUpdatePriceType, useUpdateProduct, useUpdateProductVariant, useUpdatePromotion, useUpdateProvider, useUpdateRole, useUpdateUser, useUpdateWarehouse, useUser, useUsers, useUsersTable, useValidateDiscountCode, useWarehouse, useWarehouses, useWarehousesForSelect, useWarehousesTable, userKeys, warehouseKeys };
1203
+ export { type AttributeFilterColumnMap, type ProductFilterColumnMap, type UseDataTableOptions, type UseDataTableReturn, attributeKeys, bankTerminalKeys, batchKeys, categoryKeys, clientKeys, exchangeKeys, folioKeys, genderKeys, healthKeys, locationKeys, mapTableParamsToAttributeParams, mapTableParamsToProductParams, materialKeys, moduleKeys, orderKeys, paymentKeys, permissionKeys, pricePerGramKeys, priceTypeKeys, productKeys, productTagKeys, promotionKeys, providerKeys, qrKeys, reportKeys, returnKeys, roleKeys, stateKeys, stockMovementKeys, taxKeys, useAllAgents, useAllBankTerminals, useAllCategories, useAllGenders, useAllLocations, useAllMaterials, useAllModules, useAllProductTags, useAllStates, useAttribute, useAttributeValues, useAttributes, useAttributesByCategoryID, useAttributesByProductID, useAttributesForSelect, useAttributesTable, useBankTerminal, useBankTerminals, useBankTerminalsForSelect, useBankTerminalsTable, useBatches, useBatchesForSelect, useBatchesTable, useCalculatePricePerGram, useCategories, useCategoriesForSelect, useCategoriesTable, useCategory, useChangeOrderProduct, useClient, useClients, useClientsForSelect, useClientsTable, useCloseShift, useCreateAttribute, useCreateAttributeValue, useCreateAttributesForCategory, useCreateAttributesValuesBatch, useCreateBankTerminal, useCreateBatch, useCreateBatchAndUpdateOtherBatches, useCreateCategory, useCreateClient, useCreateExchangeRate, useCreateLocation, useCreateMaterial, useCreateMovement, useCreatePriceType, useCreateProduct, useCreateProductVariant, useCreateProductVariants, useCreatePromotion, useCreateProvider, useCreateReturn, useCreateRole, useCreateUser, useCreateWarehouse, useDataTable, useDeleteAttribute, useDeleteBankTerminal, useDeleteCategory, useDeleteClient, useDeleteFuturePricePerGram, useDeleteImageFromProduct, useDeleteLocation, useDeleteMaterial, useDeletePriceType, useDeleteProduct, useDeleteProductVariant, useDeleteProvider, useDeleteRole, useDeleteUser, useDeleteWarehouse, useExchangeRate, useExchangeRates, useExchangeRatesTable, useHealthCheck, useInventoryTable, useIsWeightBased, useLocation, useLocations, useLocationsForSelect, useLocationsTable, useLogin, useMakeNewCashMovement, useMatchedBatches, useMaterial, useMaterials, useMaterialsForSelect, useMaterialsTable, useMovements, useMovementsTable, useNextFolioToUseInBatches, useOrder, useOrders, useOrdersStatusForSelect, useOrdersTable, usePaymentMethods, usePaymentMethodsWithAmount, usePaymentMethodsWithAmountExpected, usePaymentTypes, usePendingReportZ, usePermissionRoleByRoleID, usePermissions, usePrefetchAttribute, usePrefetchBankTerminal, usePrefetchCategory, usePrefetchClient, usePrefetchLocation, usePrefetchMaterial, usePrefetchOrder, usePrefetchPriceType, usePrefetchProduct, usePrefetchPromotion, usePrefetchProvider, usePrefetchRole, usePrefetchUser, usePrefetchWarehouse, usePricePerGram, usePricePerGramHistory, usePriceType, usePriceTypes, usePriceTypesForSelect, usePriceTypesTable, usePrintQR, usePrintReportX, usePrintReportZ, useProduct, useProductVariant, useProductVariants, useProductVariantsForSelect, useProducts, useProductsByCategory, useProductsForSelect, useProductsTable, usePromotion, usePromotions, usePromotionsTable, usePromotionsTypeForSelect, useProvider, useProviders, useProvidersForSelect, useProvidersTable, useQRBaseUrl, useReportByInventory, useReportComparisonByTimeFrame, useReportX, useReportZ, useRestoreBankTerminal, useRestoreCategory, useRestoreClient, useRestoreLocation, useRestoreProduct, useRestoreProductVariant, useRestoreProvider, useRestoreUser, useRestoreWarehouse, useReturnsByOrderId, useRole, useRoles, useRolesTable, useSchedulePricePerGram, useSellersOfDayForSelect, useSellersWithShift, useSendCreditPayment, useSendPayment, useSetNewShift, useStockByWarehouseReport, useTaxesForSelect, useUndeleteAttribute, useUndeleteMaterial, useUndeletePriceType, useUpdateAttribute, useUpdateAttributesForCategory, useUpdateBankTerminal, useUpdateBatch, useUpdateCategory, useUpdateClient, useUpdateFuturePricePerGram, useUpdateLocation, useUpdateMaterial, useUpdatePermission, useUpdatePricePerGram, useUpdatePriceType, useUpdateProduct, useUpdateProductVariant, useUpdatePromotion, useUpdateProvider, useUpdateRole, useUpdateUser, useUpdateWarehouse, useUser, useUsers, useUsersTable, useValidateDiscountCode, useWarehouse, useWarehouses, useWarehousesForSelect, useWarehousesTable, userKeys, warehouseKeys };
package/dist/hooks.js CHANGED
@@ -49,6 +49,22 @@ var getAttributesForSelect = async () => {
49
49
  const { data } = await api.get("/attribute/select");
50
50
  return data;
51
51
  };
52
+ var getAttributesTable = async ({
53
+ skip,
54
+ limit,
55
+ filters
56
+ }) => {
57
+ const queryParams = new URLSearchParams({
58
+ skip: skip?.toString() ?? "",
59
+ limit: limit?.toString() ?? "",
60
+ ...filters?.query && { query: filters.query },
61
+ ...filters?.categoryId && { categoryId: filters.categoryId.toString() },
62
+ ...filters?.productId && { productId: filters.productId.toString() },
63
+ ...filters?.materialId && { materialId: filters.materialId.toString() }
64
+ });
65
+ const { data } = await api.get(`/attribute?${queryParams}`);
66
+ return data;
67
+ };
52
68
  var getAttributeById = async ({
53
69
  attributeId
54
70
  }) => {
@@ -164,6 +180,7 @@ var errorNotification = ({
164
180
  // src/queries/attributes.queries.ts
165
181
  var attributeQueryKeys = {
166
182
  all: ["attributes"],
183
+ table: (params = {}) => [...attributeQueryKeys.all, "table", { skip: params.skip, limit: params.limit, filters: params.filters ?? {} }],
167
184
  lists: () => [...attributeQueryKeys.all, "list"],
168
185
  list: (params) => [
169
186
  ...attributeQueryKeys.lists(),
@@ -188,6 +205,15 @@ var attributes = {
188
205
  queryKey: attributeQueryKeys.list(params),
189
206
  staleTime: 3e4
190
207
  }),
208
+ getAttributesTable: (params = {}) => queryOptions({
209
+ queryFn: () => getAttributesTable({
210
+ skip: params.skip ?? 0,
211
+ limit: params.limit ?? 10,
212
+ filters: params.filters ?? void 0
213
+ }),
214
+ queryKey: attributeQueryKeys.table(params),
215
+ staleTime: 3e4
216
+ }),
191
217
  getAttributesForSelect: () => queryOptions({
192
218
  queryFn: getAttributesForSelect,
193
219
  queryKey: attributeQueryKeys.forSelect(),
@@ -361,11 +387,43 @@ var attributes = {
361
387
 
362
388
  // src/hooks/attributes.hooks.ts
363
389
  var attributeKeys = attributeQueryKeys;
390
+ var defaultColumnMap = {
391
+ categoryId: "categoryID",
392
+ productId: "productID",
393
+ materialId: "materialID"
394
+ };
395
+ function getFilterValue(columnFilters, columnId) {
396
+ const filter = columnFilters?.find((f) => f.id === columnId);
397
+ if (filter?.value == null) return null;
398
+ return typeof filter.value === "string" ? filter.value : String(filter.value);
399
+ }
400
+ function parseNumber(value) {
401
+ if (value == null || value === "") return null;
402
+ const n = Number.parseInt(value, 10);
403
+ return Number.isNaN(n) ? null : n;
404
+ }
405
+ var mapTableParamsToAttributeParams = (params, columnMap) => {
406
+ const map = { ...defaultColumnMap, ...columnMap };
407
+ const cf = params.columnFilters;
408
+ return {
409
+ skip: params.skip,
410
+ limit: params.limit,
411
+ filters: {
412
+ query: params.query ?? null,
413
+ categoryId: parseNumber(getFilterValue(cf, map.categoryId)),
414
+ productId: parseNumber(getFilterValue(cf, map.productId)),
415
+ materialId: parseNumber(getFilterValue(cf, map.materialId))
416
+ }
417
+ };
418
+ };
364
419
  var useAttributes = (params, options) => useQuery({
365
420
  ...attributes.queries.getAttributes(params),
366
421
  ...options
367
422
  });
368
- var useAttributesTable = useAttributes;
423
+ var useAttributesTable = (params, options) => useQuery({
424
+ ...attributes.queries.getAttributesTable(params),
425
+ ...options
426
+ });
369
427
  var useAttributesForSelect = (options) => useQuery({
370
428
  ...attributes.queries.getAttributesForSelect(),
371
429
  staleTime: 10 * 60 * 1e3,
@@ -2790,6 +2848,14 @@ var createProductVariant = async (variant) => {
2790
2848
  });
2791
2849
  return data;
2792
2850
  };
2851
+ var createProductVariants = async (formData) => {
2852
+ const { data } = await api.post("product/variants", formData, {
2853
+ headers: {
2854
+ "Content-Type": "multipart/form-data"
2855
+ }
2856
+ });
2857
+ return data;
2858
+ };
2793
2859
  var updateProductVariant = async (data) => {
2794
2860
  const { data: response } = await api.put(
2795
2861
  `product/variants/update/${data.get("productDetailID")}`,
@@ -2992,6 +3058,22 @@ var products = {
2992
3058
  });
2993
3059
  }
2994
3060
  }),
3061
+ createProductVariants: (queryClient) => ({
3062
+ mutationFn: createProductVariants,
3063
+ onSuccess: () => {
3064
+ queryClient.invalidateQueries({ queryKey: productQueryKeys.all });
3065
+ successNotification({
3066
+ title: "Variantes creadas",
3067
+ message: "Las variantes se han creado correctamente."
3068
+ });
3069
+ },
3070
+ onError: (error) => {
3071
+ errorNotification({
3072
+ title: "Error",
3073
+ message: error.message || "No se pudieron crear las variantes."
3074
+ });
3075
+ }
3076
+ }),
2995
3077
  updateProductVariant: (queryClient) => ({
2996
3078
  mutationFn: updateProductVariant,
2997
3079
  onSuccess: () => {
@@ -3095,7 +3177,7 @@ var products = {
3095
3177
 
3096
3178
  // src/hooks/product.hooks.ts
3097
3179
  var productKeys = productQueryKeys;
3098
- var defaultColumnMap = {
3180
+ var defaultColumnMap2 = {
3099
3181
  categoryId: "tblCategories.categoryName",
3100
3182
  batchId: "batchId",
3101
3183
  supplierId: "supplierId",
@@ -3103,25 +3185,25 @@ var defaultColumnMap = {
3103
3185
  priceRangeMin: "priceRangeMin",
3104
3186
  priceRangeMax: "priceRangeMax"
3105
3187
  };
3106
- function getFilterValue(columnFilters, columnId) {
3188
+ function getFilterValue2(columnFilters, columnId) {
3107
3189
  const filter = columnFilters?.find((f) => f.id === columnId);
3108
3190
  if (filter?.value == null) return null;
3109
3191
  return typeof filter.value === "string" ? filter.value : String(filter.value);
3110
3192
  }
3111
- function parseNumber(value) {
3193
+ function parseNumber2(value) {
3112
3194
  if (value == null || value === "") return null;
3113
3195
  const n = Number.parseInt(value, 10);
3114
3196
  return Number.isNaN(n) ? null : n;
3115
3197
  }
3116
3198
  var mapTableParamsToProductParams = (params, columnMap) => {
3117
- const map = { ...defaultColumnMap, ...columnMap };
3199
+ const map = { ...defaultColumnMap2, ...columnMap };
3118
3200
  const cf = params.columnFilters;
3119
- const categoryId = parseNumber(getFilterValue(cf, map.categoryId));
3120
- const supplierId = parseNumber(getFilterValue(cf, map.supplierId));
3121
- const warehouseId = parseNumber(getFilterValue(cf, map.warehouseId));
3122
- const priceRangeMin = parseNumber(getFilterValue(cf, map.priceRangeMin));
3123
- const priceRangeMax = parseNumber(getFilterValue(cf, map.priceRangeMax));
3124
- const batchRaw = getFilterValue(cf, map.batchId);
3201
+ const categoryId = parseNumber2(getFilterValue2(cf, map.categoryId));
3202
+ const supplierId = parseNumber2(getFilterValue2(cf, map.supplierId));
3203
+ const warehouseId = parseNumber2(getFilterValue2(cf, map.warehouseId));
3204
+ const priceRangeMin = parseNumber2(getFilterValue2(cf, map.priceRangeMin));
3205
+ const priceRangeMax = parseNumber2(getFilterValue2(cf, map.priceRangeMax));
3206
+ const batchRaw = getFilterValue2(cf, map.batchId);
3125
3207
  const batchId = batchRaw !== null ? batchRaw : null;
3126
3208
  return {
3127
3209
  skip: params.skip,
@@ -3192,6 +3274,13 @@ var useCreateProductVariant = (options) => {
3192
3274
  ...options
3193
3275
  });
3194
3276
  };
3277
+ var useCreateProductVariants = (options) => {
3278
+ const queryClient = useQueryClient();
3279
+ return useMutation({
3280
+ ...products.mutations.createProductVariants(queryClient),
3281
+ ...options
3282
+ });
3283
+ };
3195
3284
  var useUpdateProductVariant = (options) => {
3196
3285
  const queryClient = useQueryClient();
3197
3286
  return useMutation({
@@ -4797,6 +4886,6 @@ var usePrefetchWarehouse = () => {
4797
4886
  return { prefetchWarehouse };
4798
4887
  };
4799
4888
 
4800
- export { attributeKeys, bankTerminalKeys, batchKeys, categoryKeys, clientKeys, exchangeKeys, folioKeys, genderKeys, healthKeys, locationKeys, mapTableParamsToProductParams, materialKeys, moduleKeys, orderKeys, paymentKeys, permissionKeys, pricePerGramKeys, priceTypeKeys, productKeys, productTagKeys, promotionKeys, providerKeys, qrKeys, reportKeys, returnKeys, roleKeys, stateKeys, stockMovementKeys, taxKeys, useAllAgents, useAllBankTerminals, useAllCategories, useAllGenders, useAllLocations, useAllMaterials, useAllModules, useAllProductTags, useAllStates, useAttribute, useAttributeValues, useAttributes, useAttributesByCategoryID, useAttributesByProductID, useAttributesForSelect, useAttributesTable, useBankTerminal, useBankTerminals, useBankTerminalsForSelect, useBankTerminalsTable, useBatches, useBatchesForSelect, useBatchesTable, useCalculatePricePerGram, useCategories, useCategoriesForSelect, useCategoriesTable, useCategory, useChangeOrderProduct, useClient, useClients, useClientsForSelect, useClientsTable, useCloseShift, useCreateAttribute, useCreateAttributeValue, useCreateAttributesForCategory, useCreateAttributesValuesBatch, useCreateBankTerminal, useCreateBatch, useCreateBatchAndUpdateOtherBatches, useCreateCategory, useCreateClient, useCreateExchangeRate, useCreateLocation, useCreateMaterial, useCreateMovement, useCreatePriceType, useCreateProduct, useCreateProductVariant, useCreatePromotion, useCreateProvider, useCreateReturn, useCreateRole, useCreateUser, useCreateWarehouse, useDataTable, useDeleteAttribute, useDeleteBankTerminal, useDeleteCategory, useDeleteClient, useDeleteFuturePricePerGram, useDeleteImageFromProduct, useDeleteLocation, useDeleteMaterial, useDeletePriceType, useDeleteProduct, useDeleteProductVariant, useDeleteProvider, useDeleteRole, useDeleteUser, useDeleteWarehouse, useExchangeRate, useExchangeRates, useExchangeRatesTable, useHealthCheck, useInventoryTable, useIsWeightBased, useLocation, useLocations, useLocationsForSelect, useLocationsTable, useLogin, useMakeNewCashMovement, useMatchedBatches, useMaterial, useMaterials, useMaterialsForSelect, useMaterialsTable, useMovements, useMovementsTable, useNextFolioToUseInBatches, useOrder, useOrders, useOrdersStatusForSelect, useOrdersTable, usePaymentMethods, usePaymentMethodsWithAmount, usePaymentMethodsWithAmountExpected, usePaymentTypes, usePendingReportZ, usePermissionRoleByRoleID, usePermissions, usePrefetchAttribute, usePrefetchBankTerminal, usePrefetchCategory, usePrefetchClient, usePrefetchLocation, usePrefetchMaterial, usePrefetchOrder, usePrefetchPriceType, usePrefetchProduct, usePrefetchPromotion, usePrefetchProvider, usePrefetchRole, usePrefetchUser, usePrefetchWarehouse, usePricePerGram, usePricePerGramHistory, usePriceType, usePriceTypes, usePriceTypesForSelect, usePriceTypesTable, usePrintQR, usePrintReportX, usePrintReportZ, useProduct, useProductVariant, useProductVariants, useProductVariantsForSelect, useProducts, useProductsByCategory, useProductsForSelect, useProductsTable, usePromotion, usePromotions, usePromotionsTable, usePromotionsTypeForSelect, useProvider, useProviders, useProvidersForSelect, useProvidersTable, useQRBaseUrl, useReportByInventory, useReportComparisonByTimeFrame, useReportX, useReportZ, useRestoreBankTerminal, useRestoreCategory, useRestoreClient, useRestoreLocation, useRestoreProduct, useRestoreProductVariant, useRestoreProvider, useRestoreUser, useRestoreWarehouse, useReturnsByOrderId, useRole, useRoles, useRolesTable, useSchedulePricePerGram, useSellersOfDayForSelect, useSellersWithShift, useSendCreditPayment, useSendPayment, useSetNewShift, useStockByWarehouseReport, useTaxesForSelect, useUndeleteAttribute, useUndeleteMaterial, useUndeletePriceType, useUpdateAttribute, useUpdateAttributesForCategory, useUpdateBankTerminal, useUpdateBatch, useUpdateCategory, useUpdateClient, useUpdateFuturePricePerGram, useUpdateLocation, useUpdateMaterial, useUpdatePermission, useUpdatePricePerGram, useUpdatePriceType, useUpdateProduct, useUpdateProductVariant, useUpdatePromotion, useUpdateProvider, useUpdateRole, useUpdateUser, useUpdateWarehouse, useUser, useUsers, useUsersTable, useValidateDiscountCode, useWarehouse, useWarehouses, useWarehousesForSelect, useWarehousesTable, userKeys, warehouseKeys };
4889
+ export { attributeKeys, bankTerminalKeys, batchKeys, categoryKeys, clientKeys, exchangeKeys, folioKeys, genderKeys, healthKeys, locationKeys, mapTableParamsToAttributeParams, mapTableParamsToProductParams, materialKeys, moduleKeys, orderKeys, paymentKeys, permissionKeys, pricePerGramKeys, priceTypeKeys, productKeys, productTagKeys, promotionKeys, providerKeys, qrKeys, reportKeys, returnKeys, roleKeys, stateKeys, stockMovementKeys, taxKeys, useAllAgents, useAllBankTerminals, useAllCategories, useAllGenders, useAllLocations, useAllMaterials, useAllModules, useAllProductTags, useAllStates, useAttribute, useAttributeValues, useAttributes, useAttributesByCategoryID, useAttributesByProductID, useAttributesForSelect, useAttributesTable, useBankTerminal, useBankTerminals, useBankTerminalsForSelect, useBankTerminalsTable, useBatches, useBatchesForSelect, useBatchesTable, useCalculatePricePerGram, useCategories, useCategoriesForSelect, useCategoriesTable, useCategory, useChangeOrderProduct, useClient, useClients, useClientsForSelect, useClientsTable, useCloseShift, useCreateAttribute, useCreateAttributeValue, useCreateAttributesForCategory, useCreateAttributesValuesBatch, useCreateBankTerminal, useCreateBatch, useCreateBatchAndUpdateOtherBatches, useCreateCategory, useCreateClient, useCreateExchangeRate, useCreateLocation, useCreateMaterial, useCreateMovement, useCreatePriceType, useCreateProduct, useCreateProductVariant, useCreateProductVariants, useCreatePromotion, useCreateProvider, useCreateReturn, useCreateRole, useCreateUser, useCreateWarehouse, useDataTable, useDeleteAttribute, useDeleteBankTerminal, useDeleteCategory, useDeleteClient, useDeleteFuturePricePerGram, useDeleteImageFromProduct, useDeleteLocation, useDeleteMaterial, useDeletePriceType, useDeleteProduct, useDeleteProductVariant, useDeleteProvider, useDeleteRole, useDeleteUser, useDeleteWarehouse, useExchangeRate, useExchangeRates, useExchangeRatesTable, useHealthCheck, useInventoryTable, useIsWeightBased, useLocation, useLocations, useLocationsForSelect, useLocationsTable, useLogin, useMakeNewCashMovement, useMatchedBatches, useMaterial, useMaterials, useMaterialsForSelect, useMaterialsTable, useMovements, useMovementsTable, useNextFolioToUseInBatches, useOrder, useOrders, useOrdersStatusForSelect, useOrdersTable, usePaymentMethods, usePaymentMethodsWithAmount, usePaymentMethodsWithAmountExpected, usePaymentTypes, usePendingReportZ, usePermissionRoleByRoleID, usePermissions, usePrefetchAttribute, usePrefetchBankTerminal, usePrefetchCategory, usePrefetchClient, usePrefetchLocation, usePrefetchMaterial, usePrefetchOrder, usePrefetchPriceType, usePrefetchProduct, usePrefetchPromotion, usePrefetchProvider, usePrefetchRole, usePrefetchUser, usePrefetchWarehouse, usePricePerGram, usePricePerGramHistory, usePriceType, usePriceTypes, usePriceTypesForSelect, usePriceTypesTable, usePrintQR, usePrintReportX, usePrintReportZ, useProduct, useProductVariant, useProductVariants, useProductVariantsForSelect, useProducts, useProductsByCategory, useProductsForSelect, useProductsTable, usePromotion, usePromotions, usePromotionsTable, usePromotionsTypeForSelect, useProvider, useProviders, useProvidersForSelect, useProvidersTable, useQRBaseUrl, useReportByInventory, useReportComparisonByTimeFrame, useReportX, useReportZ, useRestoreBankTerminal, useRestoreCategory, useRestoreClient, useRestoreLocation, useRestoreProduct, useRestoreProductVariant, useRestoreProvider, useRestoreUser, useRestoreWarehouse, useReturnsByOrderId, useRole, useRoles, useRolesTable, useSchedulePricePerGram, useSellersOfDayForSelect, useSellersWithShift, useSendCreditPayment, useSendPayment, useSetNewShift, useStockByWarehouseReport, useTaxesForSelect, useUndeleteAttribute, useUndeleteMaterial, useUndeletePriceType, useUpdateAttribute, useUpdateAttributesForCategory, useUpdateBankTerminal, useUpdateBatch, useUpdateCategory, useUpdateClient, useUpdateFuturePricePerGram, useUpdateLocation, useUpdateMaterial, useUpdatePermission, useUpdatePricePerGram, useUpdatePriceType, useUpdateProduct, useUpdateProductVariant, useUpdatePromotion, useUpdateProvider, useUpdateRole, useUpdateUser, useUpdateWarehouse, useUser, useUsers, useUsersTable, useValidateDiscountCode, useWarehouse, useWarehouses, useWarehousesForSelect, useWarehousesTable, userKeys, warehouseKeys };
4801
4890
  //# sourceMappingURL=hooks.js.map
4802
4891
  //# sourceMappingURL=hooks.js.map