@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.
- package/dist/{chunk-V3RMLU3V.js → chunk-DS2ECDHJ.js} +63 -2
- package/dist/{chunk-V3RMLU3V.js.map → chunk-DS2ECDHJ.js.map} +1 -1
- package/dist/{chunk-MRQREI4L.cjs → chunk-YSRBE3YI.cjs} +63 -2
- package/dist/chunk-YSRBE3YI.cjs.map +1 -0
- package/dist/index.cjs +167 -128
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +28 -28
- package/dist/index.d.ts +28 -28
- package/dist/index.js +136 -97
- package/dist/index.js.map +1 -1
- package/dist/{server-ZsiDw2HO.d.cts → server-CF43MUMf.d.cts} +188 -31
- package/dist/{server-ZsiDw2HO.d.ts → server-CF43MUMf.d.ts} +188 -31
- package/dist/server.cjs +6 -2
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +5 -1
- package/package.json +2 -2
- package/dist/chunk-MRQREI4L.cjs.map +0 -1
|
@@ -1,37 +1,8 @@
|
|
|
1
1
|
import * as _simpleapps_com_augur_utils from '@simpleapps-com/augur-utils';
|
|
2
|
-
import { TPriceData, TInvMastDoc, TCategory,
|
|
2
|
+
import { TPriceData, TItemDetails, TInvMastDoc, TCategory, TAttribute, TItemsFilters, TProductItem, TProductCategory } from '@simpleapps-com/augur-utils';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import { ReactNode } from 'react';
|
|
5
5
|
|
|
6
|
-
/**
|
|
7
|
-
* Minimal type for the augur-api SDK instance.
|
|
8
|
-
* Consumers provide their concrete AugurAPI instance; we keep the type
|
|
9
|
-
* loose so augur-hooks doesn't need to depend directly on the SDK package.
|
|
10
|
-
*/
|
|
11
|
-
type AugurApiClient = any;
|
|
12
|
-
interface AugurHooksProviderProps {
|
|
13
|
-
api: AugurApiClient;
|
|
14
|
-
children: ReactNode;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Provides the augur-api SDK instance to all hooks in the tree.
|
|
18
|
-
*
|
|
19
|
-
* ```tsx
|
|
20
|
-
* import { AugurAPI } from "@simpleapps-com/augur-api";
|
|
21
|
-
* const api = new AugurAPI({ baseUrl: "...", token: "..." });
|
|
22
|
-
*
|
|
23
|
-
* <AugurHooksProvider api={api}>
|
|
24
|
-
* <App />
|
|
25
|
-
* </AugurHooksProvider>
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
declare function AugurHooksProvider({ api, children }: AugurHooksProviderProps): react_jsx_runtime.JSX.Element;
|
|
29
|
-
/**
|
|
30
|
-
* Returns the augur-api SDK instance from context.
|
|
31
|
-
* Throws if called outside of `<AugurHooksProvider>`.
|
|
32
|
-
*/
|
|
33
|
-
declare function useAugurApi(): AugurApiClient;
|
|
34
|
-
|
|
35
6
|
/**
|
|
36
7
|
* Hook-specific types that don't belong in augur-utils.
|
|
37
8
|
* These describe hook parameters and API response shapes.
|
|
@@ -86,6 +57,161 @@ interface GetItemCategoryApiOptions {
|
|
|
86
57
|
rootItemCategoryId?: string;
|
|
87
58
|
}
|
|
88
59
|
|
|
60
|
+
/**
|
|
61
|
+
* Typed callback registry for provider-level queryFn overrides,
|
|
62
|
+
* and auth context for provider-level session injection.
|
|
63
|
+
*
|
|
64
|
+
* Sites register server actions once at the provider level,
|
|
65
|
+
* eliminating per-hook wrappers for CORS/server action routing.
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Auth context provided at the provider level.
|
|
70
|
+
* Auth-provider-agnostic — works with NextAuth, Clerk, Supabase Auth, etc.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```tsx
|
|
74
|
+
* const { data: session, status } = useSession();
|
|
75
|
+
*
|
|
76
|
+
* <AugurHooksProvider
|
|
77
|
+
* api={api}
|
|
78
|
+
* auth={{
|
|
79
|
+
* status,
|
|
80
|
+
* customerId: session?.user?.customerId ?? process.env.NEXT_PUBLIC_DEFAULT_CUSTOMER_ID,
|
|
81
|
+
* userId: session?.user?.id,
|
|
82
|
+
* cartHdrUid: session?.user?.cartHdrUid,
|
|
83
|
+
* }}
|
|
84
|
+
* >
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
interface AugurAuthContext {
|
|
88
|
+
/** Auth loading state — hooks disable queries while "loading". */
|
|
89
|
+
status: "loading" | "authenticated" | "unauthenticated";
|
|
90
|
+
/** Customer ID for pricing. Falls back to env default if undefined. */
|
|
91
|
+
customerId?: string | number;
|
|
92
|
+
/** User ID for cart ownership. */
|
|
93
|
+
userId?: string | number;
|
|
94
|
+
/** Cart header UID from session (if available). */
|
|
95
|
+
cartHdrUid?: string | number;
|
|
96
|
+
}
|
|
97
|
+
/** Paginated response for infinite scroll hooks. */
|
|
98
|
+
interface InfiniteScrollPage {
|
|
99
|
+
data: TProductItem[];
|
|
100
|
+
total: number;
|
|
101
|
+
nextCursor?: number;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Provider-level callback map. Register server actions here to override
|
|
105
|
+
* the default SDK calls in all hooks. Hook-level `queryFn` takes priority
|
|
106
|
+
* over provider callbacks; provider callbacks take priority over the SDK.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```tsx
|
|
110
|
+
* <AugurHooksProvider
|
|
111
|
+
* api={api}
|
|
112
|
+
* callbacks={{
|
|
113
|
+
* getItemPrice: (itemId, customerId, qty) => getItemPriceAction(itemId, customerId, qty),
|
|
114
|
+
* getItemCategory: (uid, opts) => getItemCategoryAction(uid, opts),
|
|
115
|
+
* getCategoryItemsInfinite: (p) => getCategoryItemsAction(p),
|
|
116
|
+
* }}
|
|
117
|
+
* >
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
interface AugurCallbacks {
|
|
121
|
+
/** Override item price fetching (used by useItemPrice and useCartPricing). */
|
|
122
|
+
getItemPrice?: (itemId: string, customerId: string | number, quantity: number) => Promise<TPriceData>;
|
|
123
|
+
/** Override inventory master fetching. */
|
|
124
|
+
getInvMast?: (invMastUid: number, itemId: string) => Promise<TItemDetails>;
|
|
125
|
+
/** Override inventory master doc fetching. */
|
|
126
|
+
getInvMastDoc?: (invMastUid: number, itemId: string, includePricing: "Y" | "N") => Promise<TInvMastDoc>;
|
|
127
|
+
/** Override inventory stock fetching. */
|
|
128
|
+
getInvMastStock?: (invMastUid: number | string) => Promise<number>;
|
|
129
|
+
/** Override item category fetching. */
|
|
130
|
+
getItemCategory?: (itemCategoryUid: number, apiOptions?: GetItemCategoryApiOptions) => Promise<TCategory>;
|
|
131
|
+
/** Override item details fetching. */
|
|
132
|
+
getItemDetails?: (itemId: number | string) => Promise<TItemDetails>;
|
|
133
|
+
/** Override item attributes fetching. */
|
|
134
|
+
getItemAttributes?: (itemCategoryUid: number | string) => Promise<{
|
|
135
|
+
attributes: TAttribute[];
|
|
136
|
+
}>;
|
|
137
|
+
/** Override product category fetching. */
|
|
138
|
+
getProductCategory?: (itemCategoryUid: number | string) => Promise<{
|
|
139
|
+
itemCategoryDesc: string;
|
|
140
|
+
childrenTotal: number;
|
|
141
|
+
children: unknown[];
|
|
142
|
+
categoryImage: string | null;
|
|
143
|
+
}>;
|
|
144
|
+
/** Override product search. */
|
|
145
|
+
getProductSearch?: (pageData: PageData) => Promise<{
|
|
146
|
+
items: unknown[];
|
|
147
|
+
totalResults: number;
|
|
148
|
+
}>;
|
|
149
|
+
/** Override search suggestions. */
|
|
150
|
+
getSearchSuggestions?: (query: string, limit: number, offset: number) => Promise<SearchSuggestionsResponse>;
|
|
151
|
+
/** Override category items infinite scroll. */
|
|
152
|
+
getCategoryItemsInfinite?: (params: {
|
|
153
|
+
itemCategoryUid: number;
|
|
154
|
+
itemsFilters: TItemsFilters;
|
|
155
|
+
pageParam: number;
|
|
156
|
+
}) => Promise<InfiniteScrollPage>;
|
|
157
|
+
/** Override item search infinite scroll. */
|
|
158
|
+
getItemSearchInfinite?: (params: {
|
|
159
|
+
itemsFilters: TItemsFilters;
|
|
160
|
+
itemCategoryUid?: number | string;
|
|
161
|
+
pageParam: number;
|
|
162
|
+
}) => Promise<InfiniteScrollPage>;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Minimal type for the augur-api SDK instance.
|
|
167
|
+
* Consumers provide their concrete AugurAPI instance; we keep the type
|
|
168
|
+
* loose so augur-hooks doesn't need to depend directly on the SDK package.
|
|
169
|
+
*/
|
|
170
|
+
type AugurApiClient = any;
|
|
171
|
+
interface AugurHooksProviderProps {
|
|
172
|
+
api: AugurApiClient;
|
|
173
|
+
/** Optional callback registry for routing SDK calls through server actions. */
|
|
174
|
+
callbacks?: AugurCallbacks;
|
|
175
|
+
/** Optional auth context — hooks fall back to these values when not passed directly. */
|
|
176
|
+
auth?: AugurAuthContext;
|
|
177
|
+
children: ReactNode;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Provides the augur-api SDK instance and optional callbacks to all hooks.
|
|
181
|
+
*
|
|
182
|
+
* ```tsx
|
|
183
|
+
* import { AugurAPI } from "@simpleapps-com/augur-api";
|
|
184
|
+
* const api = new AugurAPI({ baseUrl: "...", token: "..." });
|
|
185
|
+
*
|
|
186
|
+
* <AugurHooksProvider api={api}>
|
|
187
|
+
* <App />
|
|
188
|
+
* </AugurHooksProvider>
|
|
189
|
+
*
|
|
190
|
+
* // With callbacks and auth (eliminates per-hook wrappers):
|
|
191
|
+
* <AugurHooksProvider
|
|
192
|
+
* api={api}
|
|
193
|
+
* callbacks={{
|
|
194
|
+
* getItemPrice: (id, cust, qty) => getItemPriceAction(id, cust, qty),
|
|
195
|
+
* }}
|
|
196
|
+
* auth={{ status, customerId, userId, cartHdrUid }}
|
|
197
|
+
* >
|
|
198
|
+
* <App />
|
|
199
|
+
* </AugurHooksProvider>
|
|
200
|
+
* ```
|
|
201
|
+
*/
|
|
202
|
+
declare function AugurHooksProvider({ api, callbacks, auth, children, }: AugurHooksProviderProps): react_jsx_runtime.JSX.Element;
|
|
203
|
+
/**
|
|
204
|
+
* Returns the augur-api SDK instance from context.
|
|
205
|
+
* Throws if called outside of `<AugurHooksProvider>`.
|
|
206
|
+
*/
|
|
207
|
+
declare function useAugurApi(): AugurApiClient;
|
|
208
|
+
/**
|
|
209
|
+
* Returns the provider-level auth context, if any.
|
|
210
|
+
* Used internally by hooks to fall back to provider auth when
|
|
211
|
+
* auth fields are not passed directly as hook parameters.
|
|
212
|
+
*/
|
|
213
|
+
declare function useAugurAuth(): AugurAuthContext | undefined;
|
|
214
|
+
|
|
89
215
|
declare const PRICE_CACHE_OPTIONS: {
|
|
90
216
|
readonly refetchOnReconnect: true;
|
|
91
217
|
readonly refetchOnWindowFocus: false;
|
|
@@ -269,7 +395,38 @@ declare function getCartPricingQueryOptions(api: AugurApiClient, cartLines: Arra
|
|
|
269
395
|
}[];
|
|
270
396
|
|
|
271
397
|
declare const getCategoryItemsInfiniteKey: (itemCategoryUid: number, itemsFilters: TItemsFilters) => readonly ["categoryItemsInfinite", number, string];
|
|
398
|
+
/**
|
|
399
|
+
* Full infinite query options for category items.
|
|
400
|
+
* Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.
|
|
401
|
+
*/
|
|
402
|
+
declare const getCategoryItemsInfiniteOptions: (api: AugurApiClient, itemCategoryUid: number, itemsFilters: TItemsFilters) => {
|
|
403
|
+
staleTime: number;
|
|
404
|
+
gcTime: number;
|
|
405
|
+
queryKey: readonly ["categoryItemsInfinite", number, string];
|
|
406
|
+
queryFn: ({ pageParam, }: {
|
|
407
|
+
pageParam?: unknown;
|
|
408
|
+
}) => Promise<InfiniteScrollPage>;
|
|
409
|
+
initialPageParam: number;
|
|
410
|
+
getNextPageParam: (lastPage: InfiniteScrollPage) => number | undefined;
|
|
411
|
+
};
|
|
272
412
|
|
|
273
413
|
declare const getItemSearchInfiniteKey: (itemsFilters: TItemsFilters, itemCategoryUid?: number | string) => readonly ["itemSearchInfinite", string, string | number | undefined];
|
|
414
|
+
/**
|
|
415
|
+
* Full infinite query options for item search.
|
|
416
|
+
* Usable for server-side prefetch with `queryClient.prefetchInfiniteQuery()`.
|
|
417
|
+
*/
|
|
418
|
+
declare const getItemSearchInfiniteOptions: (api: AugurApiClient, itemsFilters: TItemsFilters, itemCategoryUid?: number | string) => {
|
|
419
|
+
meta: {
|
|
420
|
+
persist: boolean;
|
|
421
|
+
};
|
|
422
|
+
staleTime: number;
|
|
423
|
+
gcTime: number;
|
|
424
|
+
queryKey: readonly ["itemSearchInfinite", string, string | number | undefined];
|
|
425
|
+
queryFn: ({ pageParam, }: {
|
|
426
|
+
pageParam?: unknown;
|
|
427
|
+
}) => Promise<InfiniteScrollPage>;
|
|
428
|
+
initialPageParam: number;
|
|
429
|
+
getNextPageParam: (lastPage: InfiniteScrollPage) => number | undefined;
|
|
430
|
+
};
|
|
274
431
|
|
|
275
|
-
export { type AugurApiClient as A,
|
|
432
|
+
export { type AugurApiClient as A, getItemSearchInfiniteOptions as B, CATEGORY_CACHE_OPTIONS as C, getProductCategoryKey as D, getProductCategoryOptions as E, getProductSearchKey as F, type GetItemCategoryApiOptions as G, getProductSearchOptions as H, type InfiniteScrollPage as I, getSearchSuggestionsKey as J, getSearchSuggestionsOptions as K, useAugurApi as L, useAugurAuth as M, type PageData as P, type SearchSuggestionsResponse as S, type SearchSuggestion as a, type AugurAuthContext as b, type AugurCallbacks as c, AugurHooksProvider as d, INV_MAST_CACHE_OPTIONS as e, INV_MAST_DOC_CACHE_OPTIONS as f, PRICE_CACHE_OPTIONS as g, SEARCH_SUGGESTIONS_CACHE_OPTIONS as h, getCartPricingQueryOptions as i, getCategoryItemsInfiniteKey as j, getCategoryItemsInfiniteOptions as k, getInvMastDocKey as l, getInvMastDocOptions as m, getInvMastKey as n, getInvMastOptions as o, getInvMastStockKey as p, getInvMastStockOptions as q, getItemAttributesKey as r, getItemAttributesOptions as s, getItemCategoryKey as t, getItemCategoryOptions as u, getItemDetailsKey as v, getItemDetailsOptions as w, getItemPriceKey as x, getItemPriceOptions as y, getItemSearchInfiniteKey as z };
|
package/dist/server.cjs
CHANGED
|
@@ -27,9 +27,9 @@
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
|
|
30
|
-
var _chunkMRQREI4Lcjs = require('./chunk-MRQREI4L.cjs');
|
|
31
30
|
|
|
32
31
|
|
|
32
|
+
var _chunkYSRBE3YIcjs = require('./chunk-YSRBE3YI.cjs');
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
|
|
@@ -57,5 +57,9 @@ var _chunkMRQREI4Lcjs = require('./chunk-MRQREI4L.cjs');
|
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
exports.CATEGORY_CACHE_OPTIONS = _chunkYSRBE3YIcjs.CATEGORY_CACHE_OPTIONS; exports.INV_MAST_CACHE_OPTIONS = _chunkYSRBE3YIcjs.INV_MAST_CACHE_OPTIONS; exports.INV_MAST_DOC_CACHE_OPTIONS = _chunkYSRBE3YIcjs.INV_MAST_DOC_CACHE_OPTIONS; exports.PRICE_CACHE_OPTIONS = _chunkYSRBE3YIcjs.PRICE_CACHE_OPTIONS; exports.SEARCH_SUGGESTIONS_CACHE_OPTIONS = _chunkYSRBE3YIcjs.SEARCH_SUGGESTIONS_CACHE_OPTIONS; exports.getCartPricingQueryOptions = _chunkYSRBE3YIcjs.getCartPricingQueryOptions; exports.getCategoryItemsInfiniteKey = _chunkYSRBE3YIcjs.getCategoryItemsInfiniteKey; exports.getCategoryItemsInfiniteOptions = _chunkYSRBE3YIcjs.getCategoryItemsInfiniteOptions; exports.getInvMastDocKey = _chunkYSRBE3YIcjs.getInvMastDocKey; exports.getInvMastDocOptions = _chunkYSRBE3YIcjs.getInvMastDocOptions; exports.getInvMastKey = _chunkYSRBE3YIcjs.getInvMastKey; exports.getInvMastOptions = _chunkYSRBE3YIcjs.getInvMastOptions; exports.getInvMastStockKey = _chunkYSRBE3YIcjs.getInvMastStockKey; exports.getInvMastStockOptions = _chunkYSRBE3YIcjs.getInvMastStockOptions; exports.getItemAttributesKey = _chunkYSRBE3YIcjs.getItemAttributesKey; exports.getItemAttributesOptions = _chunkYSRBE3YIcjs.getItemAttributesOptions; exports.getItemCategoryKey = _chunkYSRBE3YIcjs.getItemCategoryKey; exports.getItemCategoryOptions = _chunkYSRBE3YIcjs.getItemCategoryOptions; exports.getItemDetailsKey = _chunkYSRBE3YIcjs.getItemDetailsKey; exports.getItemDetailsOptions = _chunkYSRBE3YIcjs.getItemDetailsOptions; exports.getItemPriceKey = _chunkYSRBE3YIcjs.getItemPriceKey; exports.getItemPriceOptions = _chunkYSRBE3YIcjs.getItemPriceOptions; exports.getItemSearchInfiniteKey = _chunkYSRBE3YIcjs.getItemSearchInfiniteKey; exports.getItemSearchInfiniteOptions = _chunkYSRBE3YIcjs.getItemSearchInfiniteOptions; exports.getProductCategoryKey = _chunkYSRBE3YIcjs.getProductCategoryKey; exports.getProductCategoryOptions = _chunkYSRBE3YIcjs.getProductCategoryOptions; exports.getProductSearchKey = _chunkYSRBE3YIcjs.getProductSearchKey; exports.getProductSearchOptions = _chunkYSRBE3YIcjs.getProductSearchOptions; exports.getSearchSuggestionsKey = _chunkYSRBE3YIcjs.getSearchSuggestionsKey; exports.getSearchSuggestionsOptions = _chunkYSRBE3YIcjs.getSearchSuggestionsOptions;
|
|
61
65
|
//# sourceMappingURL=server.cjs.map
|
package/dist/server.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/server.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/server.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,msEAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/server.cjs"}
|
package/dist/server.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as AugurApiClient, C as CATEGORY_CACHE_OPTIONS,
|
|
1
|
+
export { A as AugurApiClient, b as AugurAuthContext, c as AugurCallbacks, C as CATEGORY_CACHE_OPTIONS, e as INV_MAST_CACHE_OPTIONS, f as INV_MAST_DOC_CACHE_OPTIONS, I as InfiniteScrollPage, g as PRICE_CACHE_OPTIONS, P as PageData, h as SEARCH_SUGGESTIONS_CACHE_OPTIONS, i as getCartPricingQueryOptions, j as getCategoryItemsInfiniteKey, k as getCategoryItemsInfiniteOptions, l as getInvMastDocKey, m as getInvMastDocOptions, n as getInvMastKey, o as getInvMastOptions, p as getInvMastStockKey, q as getInvMastStockOptions, r as getItemAttributesKey, s as getItemAttributesOptions, t as getItemCategoryKey, u as getItemCategoryOptions, v as getItemDetailsKey, w as getItemDetailsOptions, x as getItemPriceKey, y as getItemPriceOptions, z as getItemSearchInfiniteKey, B as getItemSearchInfiniteOptions, D as getProductCategoryKey, E as getProductCategoryOptions, F as getProductSearchKey, H as getProductSearchOptions, J as getSearchSuggestionsKey, K as getSearchSuggestionsOptions } from './server-CF43MUMf.cjs';
|
|
2
2
|
import '@simpleapps-com/augur-utils';
|
|
3
3
|
import 'react/jsx-runtime';
|
|
4
4
|
import 'react';
|
package/dist/server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as AugurApiClient, C as CATEGORY_CACHE_OPTIONS,
|
|
1
|
+
export { A as AugurApiClient, b as AugurAuthContext, c as AugurCallbacks, C as CATEGORY_CACHE_OPTIONS, e as INV_MAST_CACHE_OPTIONS, f as INV_MAST_DOC_CACHE_OPTIONS, I as InfiniteScrollPage, g as PRICE_CACHE_OPTIONS, P as PageData, h as SEARCH_SUGGESTIONS_CACHE_OPTIONS, i as getCartPricingQueryOptions, j as getCategoryItemsInfiniteKey, k as getCategoryItemsInfiniteOptions, l as getInvMastDocKey, m as getInvMastDocOptions, n as getInvMastKey, o as getInvMastOptions, p as getInvMastStockKey, q as getInvMastStockOptions, r as getItemAttributesKey, s as getItemAttributesOptions, t as getItemCategoryKey, u as getItemCategoryOptions, v as getItemDetailsKey, w as getItemDetailsOptions, x as getItemPriceKey, y as getItemPriceOptions, z as getItemSearchInfiniteKey, B as getItemSearchInfiniteOptions, D as getProductCategoryKey, E as getProductCategoryOptions, F as getProductSearchKey, H as getProductSearchOptions, J as getSearchSuggestionsKey, K as getSearchSuggestionsOptions } from './server-CF43MUMf.js';
|
|
2
2
|
import '@simpleapps-com/augur-utils';
|
|
3
3
|
import 'react/jsx-runtime';
|
|
4
4
|
import 'react';
|
package/dist/server.js
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
SEARCH_SUGGESTIONS_CACHE_OPTIONS,
|
|
7
7
|
getCartPricingQueryOptions,
|
|
8
8
|
getCategoryItemsInfiniteKey,
|
|
9
|
+
getCategoryItemsInfiniteOptions,
|
|
9
10
|
getInvMastDocKey,
|
|
10
11
|
getInvMastDocOptions,
|
|
11
12
|
getInvMastKey,
|
|
@@ -21,13 +22,14 @@ import {
|
|
|
21
22
|
getItemPriceKey,
|
|
22
23
|
getItemPriceOptions,
|
|
23
24
|
getItemSearchInfiniteKey,
|
|
25
|
+
getItemSearchInfiniteOptions,
|
|
24
26
|
getProductCategoryKey,
|
|
25
27
|
getProductCategoryOptions,
|
|
26
28
|
getProductSearchKey,
|
|
27
29
|
getProductSearchOptions,
|
|
28
30
|
getSearchSuggestionsKey,
|
|
29
31
|
getSearchSuggestionsOptions
|
|
30
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-DS2ECDHJ.js";
|
|
31
33
|
export {
|
|
32
34
|
CATEGORY_CACHE_OPTIONS,
|
|
33
35
|
INV_MAST_CACHE_OPTIONS,
|
|
@@ -36,6 +38,7 @@ export {
|
|
|
36
38
|
SEARCH_SUGGESTIONS_CACHE_OPTIONS,
|
|
37
39
|
getCartPricingQueryOptions,
|
|
38
40
|
getCategoryItemsInfiniteKey,
|
|
41
|
+
getCategoryItemsInfiniteOptions,
|
|
39
42
|
getInvMastDocKey,
|
|
40
43
|
getInvMastDocOptions,
|
|
41
44
|
getInvMastKey,
|
|
@@ -51,6 +54,7 @@ export {
|
|
|
51
54
|
getItemPriceKey,
|
|
52
55
|
getItemPriceOptions,
|
|
53
56
|
getItemSearchInfiniteKey,
|
|
57
|
+
getItemSearchInfiniteOptions,
|
|
54
58
|
getProductCategoryKey,
|
|
55
59
|
getProductCategoryOptions,
|
|
56
60
|
getProductSearchKey,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simpleapps-com/augur-hooks",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "Cross-platform React Query hooks and Zustand stores for Augur ecommerce sites",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"dist"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@simpleapps-com/augur-utils": "0.1.
|
|
34
|
+
"@simpleapps-com/augur-utils": "0.1.7"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"@simpleapps-com/augur-api": "^0.9.6",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-hooks/dist/chunk-MRQREI4L.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-MRQREI4L.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 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"]}
|