@simpleapps-com/augur-hooks 0.1.5 → 0.1.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.
@@ -201,6 +201,9 @@ function getCartPricingQueryOptions(api, cartLines, customerId) {
201
201
  }
202
202
 
203
203
  // src/queries/category-items-infinite.ts
204
+ import {
205
+ CACHE_CONFIG as CACHE_CONFIG11
206
+ } from "@simpleapps-com/augur-utils";
204
207
  var getCategoryItemsInfiniteKey = (itemCategoryUid, itemsFilters) => {
205
208
  return [
206
209
  "categoryItemsInfinite",
@@ -208,8 +211,37 @@ var getCategoryItemsInfiniteKey = (itemCategoryUid, itemsFilters) => {
208
211
  JSON.stringify(itemsFilters)
209
212
  ];
210
213
  };
214
+ var getCategoryItemsInfiniteOptions = (api, itemCategoryUid, itemsFilters) => ({
215
+ queryKey: getCategoryItemsInfiniteKey(itemCategoryUid, itemsFilters),
216
+ queryFn: async ({
217
+ pageParam = 0
218
+ }) => {
219
+ const response = await api.openSearch.itemSearch.list({
220
+ q: itemsFilters.q || "",
221
+ searchType: "query",
222
+ size: itemsFilters.limit,
223
+ from: pageParam,
224
+ classId5List: String(itemCategoryUid),
225
+ filters: itemsFilters.filters?.length ? JSON.stringify(itemsFilters.filters) : void 0
226
+ });
227
+ const items = response.data?.items ?? [];
228
+ const total = response.data?.totalResults ?? 0;
229
+ const nextOffset = pageParam + itemsFilters.limit;
230
+ return {
231
+ data: items,
232
+ total,
233
+ nextCursor: nextOffset < total ? nextOffset : void 0
234
+ };
235
+ },
236
+ initialPageParam: 0,
237
+ getNextPageParam: (lastPage) => lastPage.nextCursor,
238
+ ...CACHE_CONFIG11.SEMI_STATIC
239
+ });
211
240
 
212
241
  // src/queries/item-search-infinite.ts
242
+ import {
243
+ CACHE_CONFIG as CACHE_CONFIG12
244
+ } from "@simpleapps-com/augur-utils";
213
245
  var getItemSearchInfiniteKey = (itemsFilters, itemCategoryUid) => {
214
246
  return [
215
247
  "itemSearchInfinite",
@@ -217,6 +249,33 @@ var getItemSearchInfiniteKey = (itemsFilters, itemCategoryUid) => {
217
249
  itemCategoryUid
218
250
  ];
219
251
  };
252
+ var getItemSearchInfiniteOptions = (api, itemsFilters, itemCategoryUid) => ({
253
+ queryKey: getItemSearchInfiniteKey(itemsFilters, itemCategoryUid),
254
+ queryFn: async ({
255
+ pageParam = 0
256
+ }) => {
257
+ const response = await api.openSearch.itemSearch.list({
258
+ q: itemsFilters.q,
259
+ searchType: "query",
260
+ size: itemsFilters.limit,
261
+ from: pageParam,
262
+ classId5List: itemCategoryUid ? String(itemCategoryUid) : void 0,
263
+ filters: itemsFilters.filters?.length ? JSON.stringify(itemsFilters.filters) : void 0
264
+ });
265
+ const items = response.data?.items ?? [];
266
+ const total = response.data?.totalResults ?? 0;
267
+ const nextOffset = pageParam + itemsFilters.limit;
268
+ return {
269
+ data: items,
270
+ total,
271
+ nextCursor: nextOffset < total ? nextOffset : void 0
272
+ };
273
+ },
274
+ initialPageParam: 0,
275
+ getNextPageParam: (lastPage) => lastPage.nextCursor,
276
+ ...CACHE_CONFIG12.SEMI_STATIC,
277
+ meta: { persist: true }
278
+ });
220
279
 
221
280
  export {
222
281
  PRICE_CACHE_OPTIONS,
@@ -246,6 +305,8 @@ export {
246
305
  getSearchSuggestionsOptions,
247
306
  getCartPricingQueryOptions,
248
307
  getCategoryItemsInfiniteKey,
249
- getItemSearchInfiniteKey
308
+ getCategoryItemsInfiniteOptions,
309
+ getItemSearchInfiniteKey,
310
+ getItemSearchInfiniteOptions
250
311
  };
251
- //# sourceMappingURL=chunk-V3RMLU3V.js.map
312
+ //# sourceMappingURL=chunk-DS2ECDHJ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/queries/item-price.ts","../src/queries/inv-mast-doc.ts","../src/queries/item-category.ts","../src/queries/inv-mast.ts","../src/queries/inv-mast-stock.ts","../src/queries/product-category.ts","../src/queries/item-details.ts","../src/queries/item-attributes.ts","../src/queries/product-search.ts","../src/queries/search-suggestions.ts","../src/queries/cart-pricing.ts","../src/queries/category-items-infinite.ts","../src/queries/item-search-infinite.ts"],"sourcesContent":["import { CACHE_CONFIG, type TPriceData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const PRICE_CACHE_OPTIONS = {\n ...CACHE_CONFIG.SEMI_STATIC,\n refetchOnReconnect: true,\n refetchOnWindowFocus: false,\n meta: { persist: true },\n} as const;\n\n/**\n * Generates a consistent query key for item price queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemPriceKey = (\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => {\n return [\"price\", itemId?.toUpperCase() || \"\", customerId, quantity] as const;\n};\n\n/**\n * Query options for item price. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemPriceOptions = (\n api: AugurApiClient,\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => ({\n queryKey: getItemPriceKey(itemId, customerId, quantity),\n queryFn: async (): Promise<TPriceData> => {\n const response = await api.pricing.priceEngine.get({\n itemId: itemId?.toUpperCase() || \"\",\n customerId: Number(customerId),\n quantity,\n });\n return response.data;\n },\n ...PRICE_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TInvMastDoc } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_DOC_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for inv mast doc queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getInvMastDocKey = (\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => {\n return [\n \"invMastDoc\",\n invMastUid,\n itemId.toUpperCase(),\n includePricing,\n ] as const;\n};\n\n/**\n * Query options for inv mast doc. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getInvMastDocOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => ({\n queryKey: getInvMastDocKey(invMastUid, itemId, includePricing),\n queryFn: async (): Promise<TInvMastDoc> => {\n const response = await api.items.invMast.doc.list(invMastUid, {\n includePricing,\n });\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_DOC_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { GetItemCategoryApiOptions } from \"../types\";\n\nexport const CATEGORY_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\ntype ItemCategoryQueryKey = readonly [\n \"itemCategory\",\n number,\n GetItemCategoryApiOptions | undefined,\n];\n\n/**\n * Generates a consistent query key for item category queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemCategoryKey = (\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n): ItemCategoryQueryKey => {\n return [\"itemCategory\", itemCategoryUid, apiOptions] as const;\n};\n\n/**\n * Query options for item category. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n) => ({\n queryKey: getItemCategoryKey(itemCategoryUid, apiOptions),\n queryFn: async (): Promise<TCategory> => {\n const response = await api.items.itemCategory.get(\n itemCategoryUid,\n apiOptions,\n );\n if (!response.data) throw new Error(\"Item category not found\");\n return response.data;\n },\n ...CATEGORY_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\nexport const getInvMastKey = (invMastUid: number, itemId: string) => {\n return [\"invMast\", invMastUid, itemId.toUpperCase()] as const;\n};\n\nexport const getInvMastOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n) => ({\n queryKey: getInvMastKey(invMastUid, itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.get(invMastUid);\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TStockData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getInvMastStockKey = (invMastUid: number | string) => {\n return [\"invMastStock\", invMastUid] as const;\n};\n\nexport const getInvMastStockOptions = (\n api: AugurApiClient,\n invMastUid: number | string,\n) => ({\n queryKey: getInvMastStockKey(invMastUid),\n queryFn: async (): Promise<number> => {\n const response = await api.items.invMast.stock.list(Number(invMastUid));\n const stockData: TStockData[] = response.data?.stockData ?? [];\n return stockData.reduce(\n (qty: number, stock: TStockData) => qty + stock.qtyOnHand,\n 0,\n );\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG, type TProductCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\ntype ProductCategoryResponse = {\n itemCategoryDesc: string;\n childrenTotal: number;\n children: TProductCategory[];\n categoryImage: string | null;\n};\n\nexport const getProductCategoryKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"productCategory\", itemCategoryUid] as const;\n};\n\nexport const getProductCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getProductCategoryKey(itemCategoryUid),\n queryFn: async (): Promise<ProductCategoryResponse> => {\n const response = await api.items.itemCategory.get(\n Number(itemCategoryUid),\n );\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemDetailsKey = (itemId: number | string) => {\n return [\"itemDetails\", itemId] as const;\n};\n\nexport const getItemDetailsOptions = (\n api: AugurApiClient,\n itemId: number | string,\n) => ({\n queryKey: getItemDetailsKey(itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.doc.list(Number(itemId));\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemAttributesKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"itemAttributes\", itemCategoryUid] as const;\n};\n\nexport const getItemAttributesOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getItemAttributesKey(itemCategoryUid),\n queryFn: async () => {\n const response = await api.openSearch.itemSearch.attributes.list({\n q: \"\",\n searchType: \"query\",\n classId5List: String(itemCategoryUid),\n });\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TProductItem } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { PageData } from \"../types\";\n\ntype ProductSearchResponse = {\n items: TProductItem[];\n totalResults: number;\n};\n\n/**\n * Generates a consistent query key for product search queries.\n */\nexport const getProductSearchKey = (pageData: PageData) => {\n return [\n \"productSearch\",\n pageData.q,\n pageData.limit,\n pageData.offset,\n pageData.sortBy,\n pageData.itemCategoryUid,\n ] as const;\n};\n\n/**\n * Query options for product search. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getProductSearchOptions = (\n api: AugurApiClient,\n pageData: PageData,\n) => ({\n queryKey: getProductSearchKey(pageData),\n queryFn: async (): Promise<ProductSearchResponse> => {\n const response = await api.openSearch.itemSearch.list({\n q: pageData.q,\n searchType: \"query\",\n size: pageData.limit,\n from: pageData.offset,\n classId5List: pageData.itemCategoryUid\n ? String(pageData.itemCategoryUid)\n : undefined,\n filters: pageData.filters\n ? JSON.stringify(pageData.filters)\n : undefined,\n });\n return response.data;\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { SearchSuggestionsResponse } from \"../types\";\n\nexport const SEARCH_SUGGESTIONS_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for search suggestion queries.\n */\nexport const getSearchSuggestionsKey = (\n query: string,\n limit: number,\n offset: number,\n) => {\n return [\"searchSuggestions\", query, limit, offset] as const;\n};\n\n/**\n * Query options for search suggestions. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getSearchSuggestionsOptions = (\n api: AugurApiClient,\n query: string,\n limit: number = 10,\n offset: number = 0,\n) => ({\n queryKey: getSearchSuggestionsKey(query, limit, offset),\n queryFn: async (): Promise<SearchSuggestionsResponse> => {\n const response = await api.openSearch.suggestions.suggest.list({\n q: query,\n });\n return response.data;\n },\n ...SEARCH_SUGGESTIONS_CACHE_OPTIONS,\n});\n","import type { AugurApiClient } from \"../provider\";\nimport { getItemPriceOptions } from \"./item-price\";\n\n/**\n * Get cart pricing query options for prefetching or parent components.\n */\nexport function getCartPricingQueryOptions(\n api: AugurApiClient,\n cartLines: Array<{ itemId: string; quantity: number }>,\n customerId: string | number | undefined,\n) {\n return cartLines.map((line) => ({\n ...getItemPriceOptions(api, line.itemId, customerId, line.quantity),\n enabled: !!customerId && !!line.itemId,\n }));\n}\n","import type { TItemsFilters } from \"@simpleapps-com/augur-utils\";\n\nexport const getCategoryItemsInfiniteKey = (\n itemCategoryUid: number,\n itemsFilters: TItemsFilters,\n) => {\n return [\n \"categoryItemsInfinite\",\n itemCategoryUid,\n JSON.stringify(itemsFilters),\n ] as const;\n};\n","import type { TItemsFilters } from \"@simpleapps-com/augur-utils\";\n\nexport const getItemSearchInfiniteKey = (\n itemsFilters: TItemsFilters,\n itemCategoryUid?: number | string,\n) => {\n return [\n \"itemSearchInfinite\",\n JSON.stringify(itemsFilters),\n itemCategoryUid,\n ] as const;\n};\n"],"mappings":"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","names":["CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG"]}
1
+ {"version":3,"sources":["../src/queries/item-price.ts","../src/queries/inv-mast-doc.ts","../src/queries/item-category.ts","../src/queries/inv-mast.ts","../src/queries/inv-mast-stock.ts","../src/queries/product-category.ts","../src/queries/item-details.ts","../src/queries/item-attributes.ts","../src/queries/product-search.ts","../src/queries/search-suggestions.ts","../src/queries/cart-pricing.ts","../src/queries/category-items-infinite.ts","../src/queries/item-search-infinite.ts"],"sourcesContent":["import { CACHE_CONFIG, type TPriceData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const PRICE_CACHE_OPTIONS = {\n ...CACHE_CONFIG.SEMI_STATIC,\n refetchOnReconnect: true,\n refetchOnWindowFocus: false,\n meta: { persist: true },\n} as const;\n\n/**\n * Generates a consistent query key for item price queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemPriceKey = (\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => {\n return [\"price\", itemId?.toUpperCase() || \"\", customerId, quantity] as const;\n};\n\n/**\n * Query options for item price. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemPriceOptions = (\n api: AugurApiClient,\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => ({\n queryKey: getItemPriceKey(itemId, customerId, quantity),\n queryFn: async (): Promise<TPriceData> => {\n const response = await api.pricing.priceEngine.get({\n itemId: itemId?.toUpperCase() || \"\",\n customerId: Number(customerId),\n quantity,\n });\n return response.data;\n },\n ...PRICE_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TInvMastDoc } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_DOC_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for inv mast doc queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getInvMastDocKey = (\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => {\n return [\n \"invMastDoc\",\n invMastUid,\n itemId.toUpperCase(),\n includePricing,\n ] as const;\n};\n\n/**\n * Query options for inv mast doc. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getInvMastDocOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => ({\n queryKey: getInvMastDocKey(invMastUid, itemId, includePricing),\n queryFn: async (): Promise<TInvMastDoc> => {\n const response = await api.items.invMast.doc.list(invMastUid, {\n includePricing,\n });\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_DOC_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { GetItemCategoryApiOptions } from \"../types\";\n\nexport const CATEGORY_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\ntype ItemCategoryQueryKey = readonly [\n \"itemCategory\",\n number,\n GetItemCategoryApiOptions | undefined,\n];\n\n/**\n * Generates a consistent query key for item category queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemCategoryKey = (\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n): ItemCategoryQueryKey => {\n return [\"itemCategory\", itemCategoryUid, apiOptions] as const;\n};\n\n/**\n * Query options for item category. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n) => ({\n queryKey: getItemCategoryKey(itemCategoryUid, apiOptions),\n queryFn: async (): Promise<TCategory> => {\n const response = await api.items.itemCategory.get(\n itemCategoryUid,\n apiOptions,\n );\n if (!response.data) throw new Error(\"Item category not found\");\n return response.data;\n },\n ...CATEGORY_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\nexport const getInvMastKey = (invMastUid: number, itemId: string) => {\n return [\"invMast\", invMastUid, itemId.toUpperCase()] as const;\n};\n\nexport const getInvMastOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n) => ({\n queryKey: getInvMastKey(invMastUid, itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.get(invMastUid);\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TStockData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getInvMastStockKey = (invMastUid: number | string) => {\n return [\"invMastStock\", invMastUid] as const;\n};\n\nexport const getInvMastStockOptions = (\n api: AugurApiClient,\n invMastUid: number | string,\n) => ({\n queryKey: getInvMastStockKey(invMastUid),\n queryFn: async (): Promise<number> => {\n const response = await api.items.invMast.stock.list(Number(invMastUid));\n const stockData: TStockData[] = response.data?.stockData ?? [];\n return stockData.reduce(\n (qty: number, stock: TStockData) => qty + stock.qtyOnHand,\n 0,\n );\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG, type TProductCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\ntype ProductCategoryResponse = {\n itemCategoryDesc: string;\n childrenTotal: number;\n children: TProductCategory[];\n categoryImage: string | null;\n};\n\nexport const getProductCategoryKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"productCategory\", itemCategoryUid] as const;\n};\n\nexport const getProductCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getProductCategoryKey(itemCategoryUid),\n queryFn: async (): Promise<ProductCategoryResponse> => {\n const response = await api.items.itemCategory.get(\n Number(itemCategoryUid),\n );\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemDetailsKey = (itemId: number | string) => {\n return [\"itemDetails\", itemId] as const;\n};\n\nexport const getItemDetailsOptions = (\n api: AugurApiClient,\n itemId: number | string,\n) => ({\n queryKey: getItemDetailsKey(itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.doc.list(Number(itemId));\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemAttributesKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"itemAttributes\", itemCategoryUid] as const;\n};\n\nexport const getItemAttributesOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getItemAttributesKey(itemCategoryUid),\n queryFn: async () => {\n const response = await api.openSearch.itemSearch.attributes.list({\n q: \"\",\n searchType: \"query\",\n classId5List: String(itemCategoryUid),\n });\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TProductItem } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { PageData } from \"../types\";\n\ntype ProductSearchResponse = {\n items: TProductItem[];\n totalResults: number;\n};\n\n/**\n * Generates a consistent query key for product search queries.\n */\nexport const getProductSearchKey = (pageData: PageData) => {\n return [\n \"productSearch\",\n pageData.q,\n pageData.limit,\n pageData.offset,\n pageData.sortBy,\n pageData.itemCategoryUid,\n ] as const;\n};\n\n/**\n * Query options for product search. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getProductSearchOptions = (\n api: AugurApiClient,\n pageData: PageData,\n) => ({\n queryKey: getProductSearchKey(pageData),\n queryFn: async (): Promise<ProductSearchResponse> => {\n const response = await api.openSearch.itemSearch.list({\n q: pageData.q,\n searchType: \"query\",\n size: pageData.limit,\n from: pageData.offset,\n classId5List: pageData.itemCategoryUid\n ? String(pageData.itemCategoryUid)\n : undefined,\n filters: pageData.filters\n ? JSON.stringify(pageData.filters)\n : undefined,\n });\n return response.data;\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { SearchSuggestionsResponse } from \"../types\";\n\nexport const SEARCH_SUGGESTIONS_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for search suggestion queries.\n */\nexport const getSearchSuggestionsKey = (\n query: string,\n limit: number,\n offset: number,\n) => {\n return [\"searchSuggestions\", query, limit, offset] as const;\n};\n\n/**\n * Query options for search suggestions. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getSearchSuggestionsOptions = (\n api: AugurApiClient,\n query: string,\n limit: number = 10,\n offset: number = 0,\n) => ({\n queryKey: getSearchSuggestionsKey(query, limit, offset),\n queryFn: async (): Promise<SearchSuggestionsResponse> => {\n const response = await api.openSearch.suggestions.suggest.list({\n q: query,\n });\n return response.data;\n },\n ...SEARCH_SUGGESTIONS_CACHE_OPTIONS,\n});\n","import type { AugurApiClient } from \"../provider\";\nimport { getItemPriceOptions } from \"./item-price\";\n\n/**\n * Get cart pricing query options for prefetching or parent components.\n */\nexport function getCartPricingQueryOptions(\n api: AugurApiClient,\n cartLines: Array<{ itemId: string; quantity: number }>,\n customerId: string | number | undefined,\n) {\n return cartLines.map((line) => ({\n ...getItemPriceOptions(api, line.itemId, customerId, line.quantity),\n enabled: !!customerId && !!line.itemId,\n }));\n}\n","import {\n CACHE_CONFIG,\n type TItemsFilters,\n type TProductItem,\n} from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { InfiniteScrollPage } from \"../callbacks\";\n\nexport const getCategoryItemsInfiniteKey = (\n itemCategoryUid: number,\n itemsFilters: TItemsFilters,\n) => {\n return [\n \"categoryItemsInfinite\",\n itemCategoryUid,\n JSON.stringify(itemsFilters),\n ] as const;\n};\n\n/**\n * Full infinite query options for category items.\n * Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.\n */\nexport const getCategoryItemsInfiniteOptions = (\n api: AugurApiClient,\n itemCategoryUid: number,\n itemsFilters: TItemsFilters,\n) => ({\n queryKey: getCategoryItemsInfiniteKey(itemCategoryUid, itemsFilters),\n queryFn: async ({\n pageParam = 0,\n }: {\n pageParam?: unknown;\n }): Promise<InfiniteScrollPage> => {\n const response = await api.openSearch.itemSearch.list({\n q: itemsFilters.q || \"\",\n searchType: \"query\",\n size: itemsFilters.limit,\n from: pageParam as number,\n classId5List: String(itemCategoryUid),\n filters: itemsFilters.filters?.length\n ? JSON.stringify(itemsFilters.filters)\n : undefined,\n });\n const items: TProductItem[] = response.data?.items ?? [];\n const total: number = response.data?.totalResults ?? 0;\n const nextOffset = (pageParam as number) + itemsFilters.limit;\n return {\n data: items,\n total,\n nextCursor: nextOffset < total ? nextOffset : undefined,\n };\n },\n initialPageParam: 0,\n getNextPageParam: (lastPage: InfiniteScrollPage) => lastPage.nextCursor,\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import {\n CACHE_CONFIG,\n type TItemsFilters,\n type TProductItem,\n} from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { InfiniteScrollPage } from \"../callbacks\";\n\nexport const getItemSearchInfiniteKey = (\n itemsFilters: TItemsFilters,\n itemCategoryUid?: number | string,\n) => {\n return [\n \"itemSearchInfinite\",\n JSON.stringify(itemsFilters),\n itemCategoryUid,\n ] as const;\n};\n\n/**\n * Full infinite query options for item search.\n * Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.\n */\nexport const getItemSearchInfiniteOptions = (\n api: AugurApiClient,\n itemsFilters: TItemsFilters,\n itemCategoryUid?: number | string,\n) => ({\n queryKey: getItemSearchInfiniteKey(itemsFilters, itemCategoryUid),\n queryFn: async ({\n pageParam = 0,\n }: {\n pageParam?: unknown;\n }): Promise<InfiniteScrollPage> => {\n const response = await api.openSearch.itemSearch.list({\n q: itemsFilters.q,\n searchType: \"query\",\n size: itemsFilters.limit,\n from: pageParam as number,\n classId5List: itemCategoryUid ? String(itemCategoryUid) : undefined,\n filters: itemsFilters.filters?.length\n ? JSON.stringify(itemsFilters.filters)\n : undefined,\n });\n const items: TProductItem[] = response.data?.items ?? [];\n const total: number = response.data?.totalResults ?? 0;\n const nextOffset = (pageParam as number) + itemsFilters.limit;\n return {\n data: items,\n total,\n nextCursor: nextOffset < total ? nextOffset : undefined,\n };\n },\n initialPageParam: 0,\n getNextPageParam: (lastPage: InfiniteScrollPage) => lastPage.nextCursor,\n ...CACHE_CONFIG.SEMI_STATIC,\n meta: { persist: true },\n});\n"],"mappings":"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","names":["CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG","CACHE_CONFIG"]}
@@ -201,6 +201,9 @@ function getCartPricingQueryOptions(api, cartLines, customerId) {
201
201
  }
202
202
 
203
203
  // src/queries/category-items-infinite.ts
204
+
205
+
206
+
204
207
  var getCategoryItemsInfiniteKey = (itemCategoryUid, itemsFilters) => {
205
208
  return [
206
209
  "categoryItemsInfinite",
@@ -208,8 +211,37 @@ var getCategoryItemsInfiniteKey = (itemCategoryUid, itemsFilters) => {
208
211
  JSON.stringify(itemsFilters)
209
212
  ];
210
213
  };
214
+ var getCategoryItemsInfiniteOptions = (api, itemCategoryUid, itemsFilters) => ({
215
+ queryKey: getCategoryItemsInfiniteKey(itemCategoryUid, itemsFilters),
216
+ queryFn: async ({
217
+ pageParam = 0
218
+ }) => {
219
+ const response = await api.openSearch.itemSearch.list({
220
+ q: itemsFilters.q || "",
221
+ searchType: "query",
222
+ size: itemsFilters.limit,
223
+ from: pageParam,
224
+ classId5List: String(itemCategoryUid),
225
+ filters: _optionalChain([itemsFilters, 'access', _7 => _7.filters, 'optionalAccess', _8 => _8.length]) ? JSON.stringify(itemsFilters.filters) : void 0
226
+ });
227
+ const items = _nullishCoalesce(_optionalChain([response, 'access', _9 => _9.data, 'optionalAccess', _10 => _10.items]), () => ( []));
228
+ const total = _nullishCoalesce(_optionalChain([response, 'access', _11 => _11.data, 'optionalAccess', _12 => _12.totalResults]), () => ( 0));
229
+ const nextOffset = pageParam + itemsFilters.limit;
230
+ return {
231
+ data: items,
232
+ total,
233
+ nextCursor: nextOffset < total ? nextOffset : void 0
234
+ };
235
+ },
236
+ initialPageParam: 0,
237
+ getNextPageParam: (lastPage) => lastPage.nextCursor,
238
+ ..._augurutils.CACHE_CONFIG.SEMI_STATIC
239
+ });
211
240
 
212
241
  // src/queries/item-search-infinite.ts
242
+
243
+
244
+
213
245
  var getItemSearchInfiniteKey = (itemsFilters, itemCategoryUid) => {
214
246
  return [
215
247
  "itemSearchInfinite",
@@ -217,6 +249,35 @@ var getItemSearchInfiniteKey = (itemsFilters, itemCategoryUid) => {
217
249
  itemCategoryUid
218
250
  ];
219
251
  };
252
+ var getItemSearchInfiniteOptions = (api, itemsFilters, itemCategoryUid) => ({
253
+ queryKey: getItemSearchInfiniteKey(itemsFilters, itemCategoryUid),
254
+ queryFn: async ({
255
+ pageParam = 0
256
+ }) => {
257
+ const response = await api.openSearch.itemSearch.list({
258
+ q: itemsFilters.q,
259
+ searchType: "query",
260
+ size: itemsFilters.limit,
261
+ from: pageParam,
262
+ classId5List: itemCategoryUid ? String(itemCategoryUid) : void 0,
263
+ filters: _optionalChain([itemsFilters, 'access', _13 => _13.filters, 'optionalAccess', _14 => _14.length]) ? JSON.stringify(itemsFilters.filters) : void 0
264
+ });
265
+ const items = _nullishCoalesce(_optionalChain([response, 'access', _15 => _15.data, 'optionalAccess', _16 => _16.items]), () => ( []));
266
+ const total = _nullishCoalesce(_optionalChain([response, 'access', _17 => _17.data, 'optionalAccess', _18 => _18.totalResults]), () => ( 0));
267
+ const nextOffset = pageParam + itemsFilters.limit;
268
+ return {
269
+ data: items,
270
+ total,
271
+ nextCursor: nextOffset < total ? nextOffset : void 0
272
+ };
273
+ },
274
+ initialPageParam: 0,
275
+ getNextPageParam: (lastPage) => lastPage.nextCursor,
276
+ ..._augurutils.CACHE_CONFIG.SEMI_STATIC,
277
+ meta: { persist: true }
278
+ });
279
+
280
+
220
281
 
221
282
 
222
283
 
@@ -247,5 +308,5 @@ var getItemSearchInfiniteKey = (itemsFilters, itemCategoryUid) => {
247
308
 
248
309
 
249
310
 
250
- exports.PRICE_CACHE_OPTIONS = PRICE_CACHE_OPTIONS; exports.getItemPriceKey = getItemPriceKey; exports.getItemPriceOptions = getItemPriceOptions; exports.INV_MAST_DOC_CACHE_OPTIONS = INV_MAST_DOC_CACHE_OPTIONS; exports.getInvMastDocKey = getInvMastDocKey; exports.getInvMastDocOptions = getInvMastDocOptions; exports.CATEGORY_CACHE_OPTIONS = CATEGORY_CACHE_OPTIONS; exports.getItemCategoryKey = getItemCategoryKey; exports.getItemCategoryOptions = getItemCategoryOptions; exports.INV_MAST_CACHE_OPTIONS = INV_MAST_CACHE_OPTIONS; exports.getInvMastKey = getInvMastKey; exports.getInvMastOptions = getInvMastOptions; exports.getInvMastStockKey = getInvMastStockKey; exports.getInvMastStockOptions = getInvMastStockOptions; exports.getProductCategoryKey = getProductCategoryKey; exports.getProductCategoryOptions = getProductCategoryOptions; exports.getItemDetailsKey = getItemDetailsKey; exports.getItemDetailsOptions = getItemDetailsOptions; exports.getItemAttributesKey = getItemAttributesKey; exports.getItemAttributesOptions = getItemAttributesOptions; exports.getProductSearchKey = getProductSearchKey; exports.getProductSearchOptions = getProductSearchOptions; exports.SEARCH_SUGGESTIONS_CACHE_OPTIONS = SEARCH_SUGGESTIONS_CACHE_OPTIONS; exports.getSearchSuggestionsKey = getSearchSuggestionsKey; exports.getSearchSuggestionsOptions = getSearchSuggestionsOptions; exports.getCartPricingQueryOptions = getCartPricingQueryOptions; exports.getCategoryItemsInfiniteKey = getCategoryItemsInfiniteKey; exports.getItemSearchInfiniteKey = getItemSearchInfiniteKey;
251
- //# sourceMappingURL=chunk-MRQREI4L.cjs.map
311
+ exports.PRICE_CACHE_OPTIONS = PRICE_CACHE_OPTIONS; exports.getItemPriceKey = getItemPriceKey; exports.getItemPriceOptions = getItemPriceOptions; exports.INV_MAST_DOC_CACHE_OPTIONS = INV_MAST_DOC_CACHE_OPTIONS; exports.getInvMastDocKey = getInvMastDocKey; exports.getInvMastDocOptions = getInvMastDocOptions; exports.CATEGORY_CACHE_OPTIONS = CATEGORY_CACHE_OPTIONS; exports.getItemCategoryKey = getItemCategoryKey; exports.getItemCategoryOptions = getItemCategoryOptions; exports.INV_MAST_CACHE_OPTIONS = INV_MAST_CACHE_OPTIONS; exports.getInvMastKey = getInvMastKey; exports.getInvMastOptions = getInvMastOptions; exports.getInvMastStockKey = getInvMastStockKey; exports.getInvMastStockOptions = getInvMastStockOptions; exports.getProductCategoryKey = getProductCategoryKey; exports.getProductCategoryOptions = getProductCategoryOptions; exports.getItemDetailsKey = getItemDetailsKey; exports.getItemDetailsOptions = getItemDetailsOptions; exports.getItemAttributesKey = getItemAttributesKey; exports.getItemAttributesOptions = getItemAttributesOptions; exports.getProductSearchKey = getProductSearchKey; exports.getProductSearchOptions = getProductSearchOptions; exports.SEARCH_SUGGESTIONS_CACHE_OPTIONS = SEARCH_SUGGESTIONS_CACHE_OPTIONS; exports.getSearchSuggestionsKey = getSearchSuggestionsKey; exports.getSearchSuggestionsOptions = getSearchSuggestionsOptions; exports.getCartPricingQueryOptions = getCartPricingQueryOptions; exports.getCategoryItemsInfiniteKey = getCategoryItemsInfiniteKey; exports.getCategoryItemsInfiniteOptions = getCategoryItemsInfiniteOptions; exports.getItemSearchInfiniteKey = getItemSearchInfiniteKey; exports.getItemSearchInfiniteOptions = getItemSearchInfiniteOptions;
312
+ //# sourceMappingURL=chunk-YSRBE3YI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/chunk-YSRBE3YI.cjs","../src/queries/item-price.ts","../src/queries/inv-mast-doc.ts","../src/queries/item-category.ts","../src/queries/inv-mast.ts","../src/queries/inv-mast-stock.ts","../src/queries/product-category.ts","../src/queries/item-details.ts","../src/queries/item-attributes.ts","../src/queries/product-search.ts","../src/queries/search-suggestions.ts","../src/queries/cart-pricing.ts","../src/queries/category-items-infinite.ts","../src/queries/item-search-infinite.ts"],"names":["CACHE_CONFIG"],"mappings":"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","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/chunk-YSRBE3YI.cjs","sourcesContent":[null,"import { CACHE_CONFIG, type TPriceData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const PRICE_CACHE_OPTIONS = {\n ...CACHE_CONFIG.SEMI_STATIC,\n refetchOnReconnect: true,\n refetchOnWindowFocus: false,\n meta: { persist: true },\n} as const;\n\n/**\n * Generates a consistent query key for item price queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemPriceKey = (\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => {\n return [\"price\", itemId?.toUpperCase() || \"\", customerId, quantity] as const;\n};\n\n/**\n * Query options for item price. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemPriceOptions = (\n api: AugurApiClient,\n itemId: string | undefined,\n customerId: string | number | undefined,\n quantity: number = 1,\n) => ({\n queryKey: getItemPriceKey(itemId, customerId, quantity),\n queryFn: async (): Promise<TPriceData> => {\n const response = await api.pricing.priceEngine.get({\n itemId: itemId?.toUpperCase() || \"\",\n customerId: Number(customerId),\n quantity,\n });\n return response.data;\n },\n ...PRICE_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TInvMastDoc } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_DOC_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for inv mast doc queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getInvMastDocKey = (\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => {\n return [\n \"invMastDoc\",\n invMastUid,\n itemId.toUpperCase(),\n includePricing,\n ] as const;\n};\n\n/**\n * Query options for inv mast doc. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getInvMastDocOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n includePricing: \"Y\" | \"N\",\n) => ({\n queryKey: getInvMastDocKey(invMastUid, itemId, includePricing),\n queryFn: async (): Promise<TInvMastDoc> => {\n const response = await api.items.invMast.doc.list(invMastUid, {\n includePricing,\n });\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_DOC_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { GetItemCategoryApiOptions } from \"../types\";\n\nexport const CATEGORY_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\ntype ItemCategoryQueryKey = readonly [\n \"itemCategory\",\n number,\n GetItemCategoryApiOptions | undefined,\n];\n\n/**\n * Generates a consistent query key for item category queries.\n * Usable in both client hooks and server-side prefetch.\n */\nexport const getItemCategoryKey = (\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n): ItemCategoryQueryKey => {\n return [\"itemCategory\", itemCategoryUid, apiOptions] as const;\n};\n\n/**\n * Query options for item category. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getItemCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number,\n apiOptions?: GetItemCategoryApiOptions,\n) => ({\n queryKey: getItemCategoryKey(itemCategoryUid, apiOptions),\n queryFn: async (): Promise<TCategory> => {\n const response = await api.items.itemCategory.get(\n itemCategoryUid,\n apiOptions,\n );\n if (!response.data) throw new Error(\"Item category not found\");\n return response.data;\n },\n ...CATEGORY_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const INV_MAST_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\nexport const getInvMastKey = (invMastUid: number, itemId: string) => {\n return [\"invMast\", invMastUid, itemId.toUpperCase()] as const;\n};\n\nexport const getInvMastOptions = (\n api: AugurApiClient,\n invMastUid: number,\n itemId: string,\n) => ({\n queryKey: getInvMastKey(invMastUid, itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.get(invMastUid);\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...INV_MAST_CACHE_OPTIONS,\n});\n","import { CACHE_CONFIG, type TStockData } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getInvMastStockKey = (invMastUid: number | string) => {\n return [\"invMastStock\", invMastUid] as const;\n};\n\nexport const getInvMastStockOptions = (\n api: AugurApiClient,\n invMastUid: number | string,\n) => ({\n queryKey: getInvMastStockKey(invMastUid),\n queryFn: async (): Promise<number> => {\n const response = await api.items.invMast.stock.list(Number(invMastUid));\n const stockData: TStockData[] = response.data?.stockData ?? [];\n return stockData.reduce(\n (qty: number, stock: TStockData) => qty + stock.qtyOnHand,\n 0,\n );\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG, type TProductCategory } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\ntype ProductCategoryResponse = {\n itemCategoryDesc: string;\n childrenTotal: number;\n children: TProductCategory[];\n categoryImage: string | null;\n};\n\nexport const getProductCategoryKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"productCategory\", itemCategoryUid] as const;\n};\n\nexport const getProductCategoryOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getProductCategoryKey(itemCategoryUid),\n queryFn: async (): Promise<ProductCategoryResponse> => {\n const response = await api.items.itemCategory.get(\n Number(itemCategoryUid),\n );\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TItemDetails } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemDetailsKey = (itemId: number | string) => {\n return [\"itemDetails\", itemId] as const;\n};\n\nexport const getItemDetailsOptions = (\n api: AugurApiClient,\n itemId: number | string,\n) => ({\n queryKey: getItemDetailsKey(itemId),\n queryFn: async (): Promise<TItemDetails> => {\n const response = await api.items.invMast.doc.list(Number(itemId));\n if (!response.data) throw new Error(\"Item not found\");\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\n\nexport const getItemAttributesKey = (\n itemCategoryUid: number | string | null,\n) => {\n return [\"itemAttributes\", itemCategoryUid] as const;\n};\n\nexport const getItemAttributesOptions = (\n api: AugurApiClient,\n itemCategoryUid: number | string,\n) => ({\n queryKey: getItemAttributesKey(itemCategoryUid),\n queryFn: async () => {\n const response = await api.openSearch.itemSearch.attributes.list({\n q: \"\",\n searchType: \"query\",\n classId5List: String(itemCategoryUid),\n });\n return response.data;\n },\n ...CACHE_CONFIG.STATIC,\n});\n","import { CACHE_CONFIG, type TProductItem } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { PageData } from \"../types\";\n\ntype ProductSearchResponse = {\n items: TProductItem[];\n totalResults: number;\n};\n\n/**\n * Generates a consistent query key for product search queries.\n */\nexport const getProductSearchKey = (pageData: PageData) => {\n return [\n \"productSearch\",\n pageData.q,\n pageData.limit,\n pageData.offset,\n pageData.sortBy,\n pageData.itemCategoryUid,\n ] as const;\n};\n\n/**\n * Query options for product search. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getProductSearchOptions = (\n api: AugurApiClient,\n pageData: PageData,\n) => ({\n queryKey: getProductSearchKey(pageData),\n queryFn: async (): Promise<ProductSearchResponse> => {\n const response = await api.openSearch.itemSearch.list({\n q: pageData.q,\n searchType: \"query\",\n size: pageData.limit,\n from: pageData.offset,\n classId5List: pageData.itemCategoryUid\n ? String(pageData.itemCategoryUid)\n : undefined,\n filters: pageData.filters\n ? JSON.stringify(pageData.filters)\n : undefined,\n });\n return response.data;\n },\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import { CACHE_CONFIG } from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { SearchSuggestionsResponse } from \"../types\";\n\nexport const SEARCH_SUGGESTIONS_CACHE_OPTIONS = CACHE_CONFIG.STATIC;\n\n/**\n * Generates a consistent query key for search suggestion queries.\n */\nexport const getSearchSuggestionsKey = (\n query: string,\n limit: number,\n offset: number,\n) => {\n return [\"searchSuggestions\", query, limit, offset] as const;\n};\n\n/**\n * Query options for search suggestions. Accepts the SDK instance so it works\n * in both client (via provider) and server (via direct construction).\n */\nexport const getSearchSuggestionsOptions = (\n api: AugurApiClient,\n query: string,\n limit: number = 10,\n offset: number = 0,\n) => ({\n queryKey: getSearchSuggestionsKey(query, limit, offset),\n queryFn: async (): Promise<SearchSuggestionsResponse> => {\n const response = await api.openSearch.suggestions.suggest.list({\n q: query,\n });\n return response.data;\n },\n ...SEARCH_SUGGESTIONS_CACHE_OPTIONS,\n});\n","import type { AugurApiClient } from \"../provider\";\nimport { getItemPriceOptions } from \"./item-price\";\n\n/**\n * Get cart pricing query options for prefetching or parent components.\n */\nexport function getCartPricingQueryOptions(\n api: AugurApiClient,\n cartLines: Array<{ itemId: string; quantity: number }>,\n customerId: string | number | undefined,\n) {\n return cartLines.map((line) => ({\n ...getItemPriceOptions(api, line.itemId, customerId, line.quantity),\n enabled: !!customerId && !!line.itemId,\n }));\n}\n","import {\n CACHE_CONFIG,\n type TItemsFilters,\n type TProductItem,\n} from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { InfiniteScrollPage } from \"../callbacks\";\n\nexport const getCategoryItemsInfiniteKey = (\n itemCategoryUid: number,\n itemsFilters: TItemsFilters,\n) => {\n return [\n \"categoryItemsInfinite\",\n itemCategoryUid,\n JSON.stringify(itemsFilters),\n ] as const;\n};\n\n/**\n * Full infinite query options for category items.\n * Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.\n */\nexport const getCategoryItemsInfiniteOptions = (\n api: AugurApiClient,\n itemCategoryUid: number,\n itemsFilters: TItemsFilters,\n) => ({\n queryKey: getCategoryItemsInfiniteKey(itemCategoryUid, itemsFilters),\n queryFn: async ({\n pageParam = 0,\n }: {\n pageParam?: unknown;\n }): Promise<InfiniteScrollPage> => {\n const response = await api.openSearch.itemSearch.list({\n q: itemsFilters.q || \"\",\n searchType: \"query\",\n size: itemsFilters.limit,\n from: pageParam as number,\n classId5List: String(itemCategoryUid),\n filters: itemsFilters.filters?.length\n ? JSON.stringify(itemsFilters.filters)\n : undefined,\n });\n const items: TProductItem[] = response.data?.items ?? [];\n const total: number = response.data?.totalResults ?? 0;\n const nextOffset = (pageParam as number) + itemsFilters.limit;\n return {\n data: items,\n total,\n nextCursor: nextOffset < total ? nextOffset : undefined,\n };\n },\n initialPageParam: 0,\n getNextPageParam: (lastPage: InfiniteScrollPage) => lastPage.nextCursor,\n ...CACHE_CONFIG.SEMI_STATIC,\n});\n","import {\n CACHE_CONFIG,\n type TItemsFilters,\n type TProductItem,\n} from \"@simpleapps-com/augur-utils\";\nimport type { AugurApiClient } from \"../provider\";\nimport type { InfiniteScrollPage } from \"../callbacks\";\n\nexport const getItemSearchInfiniteKey = (\n itemsFilters: TItemsFilters,\n itemCategoryUid?: number | string,\n) => {\n return [\n \"itemSearchInfinite\",\n JSON.stringify(itemsFilters),\n itemCategoryUid,\n ] as const;\n};\n\n/**\n * Full infinite query options for item search.\n * Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.\n */\nexport const getItemSearchInfiniteOptions = (\n api: AugurApiClient,\n itemsFilters: TItemsFilters,\n itemCategoryUid?: number | string,\n) => ({\n queryKey: getItemSearchInfiniteKey(itemsFilters, itemCategoryUid),\n queryFn: async ({\n pageParam = 0,\n }: {\n pageParam?: unknown;\n }): Promise<InfiniteScrollPage> => {\n const response = await api.openSearch.itemSearch.list({\n q: itemsFilters.q,\n searchType: \"query\",\n size: itemsFilters.limit,\n from: pageParam as number,\n classId5List: itemCategoryUid ? String(itemCategoryUid) : undefined,\n filters: itemsFilters.filters?.length\n ? JSON.stringify(itemsFilters.filters)\n : undefined,\n });\n const items: TProductItem[] = response.data?.items ?? [];\n const total: number = response.data?.totalResults ?? 0;\n const nextOffset = (pageParam as number) + itemsFilters.limit;\n return {\n data: items,\n total,\n nextCursor: nextOffset < total ? nextOffset : undefined,\n };\n },\n initialPageParam: 0,\n getNextPageParam: (lastPage: InfiniteScrollPage) => lastPage.nextCursor,\n ...CACHE_CONFIG.SEMI_STATIC,\n meta: { persist: true },\n});\n"]}