3a-ecommerce-utils 1.0.0 → 1.0.1

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.
@@ -0,0 +1,464 @@
1
+ import './client-DYGi_pyp.mjs';
2
+ import { LogLevel } from '3a-ecommerce-types';
3
+
4
+ interface AuthTokens {
5
+ accessToken: string;
6
+ refreshToken?: string;
7
+ expiresIn?: number;
8
+ }
9
+ interface StoredAuth {
10
+ user: any;
11
+ token: string;
12
+ expiresIn: number;
13
+ }
14
+ declare const storeAuth: (data: {
15
+ user: any;
16
+ accessToken: string;
17
+ refreshToken?: string;
18
+ expiresIn?: number;
19
+ }) => void;
20
+ declare const getStoredAuth: () => StoredAuth | null;
21
+ declare const isTokenExpired: () => boolean;
22
+ declare const willTokenExpireSoon: () => boolean;
23
+ declare const clearAuth: () => void;
24
+ declare const validateUserRole: (requiredRole: string) => boolean;
25
+ declare const getCurrentUser: () => any;
26
+ declare const getAccessToken: () => string | null;
27
+ declare const getRefreshToken: () => string | null;
28
+ declare const updateAccessToken: (newToken: string, expiresIn?: number) => void;
29
+ declare const setupAutoRefresh: (refreshFn: () => Promise<void>) => () => void;
30
+
31
+ /**
32
+ * Cookie utility functions for secure authentication storage
33
+ */
34
+ interface CookieOptions {
35
+ expires?: number;
36
+ path?: string;
37
+ domain?: string;
38
+ secure?: boolean;
39
+ sameSite?: 'Strict' | 'Lax' | 'None';
40
+ }
41
+ /**
42
+ * Set a cookie with the given name, value, and options
43
+ */
44
+ declare const setCookie: (name: string, value: string, options?: CookieOptions) => void;
45
+ /**
46
+ * Get a cookie value by name
47
+ */
48
+ declare const getCookie: (name: string) => string | null;
49
+ /**
50
+ * Remove a cookie by name
51
+ */
52
+ declare const removeCookie: (name: string, options?: CookieOptions) => void;
53
+ /**
54
+ * Check if cookies are enabled in the browser
55
+ */
56
+ declare const areCookiesEnabled: () => boolean;
57
+ declare const AUTH_COOKIE_NAMES: {
58
+ readonly ACCESS_TOKEN: "accessToken";
59
+ readonly REFRESH_TOKEN: "refreshToken";
60
+ readonly TOKEN_EXPIRY: "tokenExpiry";
61
+ readonly USER: "user";
62
+ };
63
+
64
+ /**
65
+ * Helper Utilities
66
+ * Commonly used utility functions across services and frontend apps
67
+ */
68
+ declare const capitalize: (str: string) => string;
69
+ declare const capitalizeWords: (str: string) => string;
70
+ declare const toTitleCase: (str: string) => string;
71
+ declare const slugify: (str: string) => string;
72
+ declare const generateRandomCode: (length?: number) => string;
73
+ declare const truncate: (str: string, length: number, suffix?: string) => string;
74
+ declare const formatCurrency: (amount: number, currency?: string) => string;
75
+ declare const formatNumber: (num: number, decimals?: number) => number;
76
+ declare const roundUp: (num: number, decimals?: number) => number;
77
+ declare const roundDown: (num: number, decimals?: number) => number;
78
+ declare const calculatePercentage: (value: number, percentage: number) => number;
79
+ declare const calculateDiscount: (price: number, discountPercent: number) => number;
80
+ declare const calculateTax: (amount: number, taxRate: number) => number;
81
+ declare const chunk: <T>(arr: T[], size: number) => T[][];
82
+ declare const unique: <T>(arr: T[]) => T[];
83
+ declare const removeDuplicates: <T extends Record<string, any>>(arr: T[], key: keyof T) => T[];
84
+ declare const groupBy: <T extends Record<string, any>>(arr: T[], key: keyof T) => Record<string, T[]>;
85
+ declare const sortBy: <T extends Record<string, any>>(arr: T[], key: keyof T, order?: "ASC" | "DESC") => T[];
86
+ declare const flatten: <T>(arr: T[][]) => T[];
87
+ declare const difference: <T>(arr1: T[], arr2: T[]) => T[];
88
+ declare const intersection: <T>(arr1: T[], arr2: T[]) => T[];
89
+ declare const omit: <T extends Record<string, any>>(obj: T, keys: (keyof T)[]) => Partial<T>;
90
+ declare const pick: <T extends Record<string, any>>(obj: T, keys: (keyof T)[]) => Partial<T>;
91
+ declare const deepMerge: <T extends Record<string, any>>(target: T, source: Partial<T>) => T;
92
+ declare const isEmpty: (obj: Record<string, any>) => boolean;
93
+ declare const getNestedValue: <T = any>(obj: Record<string, any>, path: string) => T | undefined;
94
+ declare const setNestedValue: (obj: Record<string, any>, path: string, value: any) => void;
95
+ declare const formatDate: (date: Date | string, format?: string) => string;
96
+ declare const addDays: (date: Date, days: number) => Date;
97
+ declare const addHours: (date: Date, hours: number) => Date;
98
+ declare const getDaysDifference: (date1: Date, date2: Date) => number;
99
+ declare const isDateInRange: (date: Date, startDate: Date, endDate: Date) => boolean;
100
+ declare const isFutureDate: (date: Date) => boolean;
101
+ declare const isPastDate: (date: Date) => boolean;
102
+ declare const delay: (ms: number) => Promise<void>;
103
+ declare const debounce: <T extends (...args: any[]) => any>(fn: T, wait: number) => ((...args: Parameters<T>) => void);
104
+ declare const throttle: <T extends (...args: any[]) => any>(fn: T, limit: number) => ((...args: Parameters<T>) => void);
105
+ declare const tryParse: <T = any>(json: string, fallback: T) => T;
106
+ declare const withErrorHandling: <T>(fn: () => Promise<T>) => Promise<{
107
+ success: boolean;
108
+ data?: T;
109
+ error?: string;
110
+ }>;
111
+ declare const createApiResponse: <T>(success: boolean, data?: T, message?: string, statusCode?: number) => {
112
+ success: boolean;
113
+ statusCode: number;
114
+ message: string;
115
+ data: {} | null;
116
+ };
117
+ declare const retry: <T>(fn: () => Promise<T>, maxAttempts?: number, delayMs?: number) => Promise<T>;
118
+ declare const isString: (val: unknown) => val is string;
119
+ declare const isNumber: (val: unknown) => val is number;
120
+ declare const isBoolean: (val: unknown) => val is boolean;
121
+ declare const isArray: (val: unknown) => val is unknown[];
122
+ declare const isObject: (val: unknown) => val is Record<string, unknown>;
123
+ declare const isFunction: (val: unknown) => val is Function;
124
+ declare const isNull: (val: unknown) => val is null;
125
+ declare const isUndefined: (val: unknown) => val is undefined;
126
+ declare const isNullOrUndefined: (val: unknown) => val is null | undefined;
127
+ declare const formatIndianCompact: (num?: number) => string;
128
+ declare function formatPrice(price: number): string;
129
+ declare function formatPriceShort(price: number): string;
130
+
131
+ declare const SHELL_APP_URL = "http://localhost:3000";
132
+ declare const ADMIN_APP_URL = "http://localhost:3001";
133
+ declare const SELLER_APP_URL = "http://localhost:3002";
134
+ declare const STOREFRONT_APP_URL = "http://localhost:3003";
135
+ declare const PORT_CONFIG: {
136
+ AUTH_SERVICE: number;
137
+ CATEGORY_SERVICE: number;
138
+ COUPON_SERVICE: number;
139
+ PRODUCT_SERVICE: number;
140
+ ORDER_SERVICE: number;
141
+ GRAPHQL_GATEWAY: number;
142
+ STOREFRONT_APP: number;
143
+ ADMIN_APP: number;
144
+ SELLER_APP: number;
145
+ SHELL_APP: number;
146
+ };
147
+ declare const SERVICE_URLS: {
148
+ AUTH_SERVICE: string;
149
+ CATEGORY_SERVICE: string;
150
+ COUPON_SERVICE: string;
151
+ PRODUCT_SERVICE: string;
152
+ ORDER_SERVICE: string;
153
+ GRAPHQL_GATEWAY: string;
154
+ AUTH_API: string;
155
+ CATEGORY_API: string;
156
+ COUPON_API: string;
157
+ PRODUCT_API: string;
158
+ ORDER_API: string;
159
+ };
160
+ declare const DATABASE_CONFIG: {
161
+ MONGODB_URI: string;
162
+ REDIS_URL: string;
163
+ };
164
+ declare const DEFAULT_CORS_ORIGINS: string[];
165
+ declare const JWT_CONFIG: {
166
+ ACCESS_TOKEN_EXPIRY: string;
167
+ REFRESH_TOKEN_EXPIRY: string;
168
+ PASSWORD_MIN_LENGTH: number;
169
+ PASSWORD_PATTERN: RegExp;
170
+ };
171
+ declare const PAGINATION: {
172
+ DEFAULT_PAGE: number;
173
+ DEFAULT_LIMIT: number;
174
+ DEFAULT_PAGE_SIZE: number;
175
+ MAX_PAGE_SIZE: number;
176
+ MIN_PAGE_SIZE: number;
177
+ DEFAULT_SORT_BY: string;
178
+ DEFAULT_SORT_ORDER: "DESC";
179
+ };
180
+ declare const PRODUCT_CONFIG: {
181
+ MIN_PRICE: number;
182
+ MAX_PRICE: number;
183
+ MIN_STOCK: number;
184
+ MAX_RATING: number;
185
+ MIN_RATING: number;
186
+ DEFAULT_RATING: number;
187
+ MAX_IMAGE_SIZE: number;
188
+ ALLOWED_IMAGE_TYPES: string[];
189
+ };
190
+ declare const ORDER_CONFIG: {
191
+ TAX_RATE: number;
192
+ SHIPPING_COST_STANDARD: number;
193
+ SHIPPING_COST_EXPRESS: number;
194
+ SHIPPING_COST_OVERNIGHT: number;
195
+ MIN_ORDER_AMOUNT: number;
196
+ MAX_ORDER_ITEMS: number;
197
+ };
198
+ declare const COUPON_CONFIG: {
199
+ CODE_LENGTH: number;
200
+ CODE_UPPERCASE: boolean;
201
+ MAX_DISCOUNT_PERCENTAGE: number;
202
+ MAX_DISCOUNT_FIXED: number;
203
+ MIN_PURCHASE_REQUIRED: number;
204
+ };
205
+ declare const API_ENDPOINTS: {
206
+ AUTH: {
207
+ LOGIN: string;
208
+ REGISTER: string;
209
+ LOGOUT: string;
210
+ PROFILE: string;
211
+ REFRESH: string;
212
+ VERIFY: string;
213
+ };
214
+ PRODUCTS: {
215
+ LIST: string;
216
+ CREATE: string;
217
+ GET: string;
218
+ UPDATE: string;
219
+ DELETE: string;
220
+ SEARCH: string;
221
+ };
222
+ ORDERS: {
223
+ LIST: string;
224
+ CREATE: string;
225
+ GET: string;
226
+ UPDATE: string;
227
+ CANCEL: string;
228
+ TRACK: string;
229
+ };
230
+ CATEGORIES: {
231
+ LIST: string;
232
+ CREATE: string;
233
+ GET: string;
234
+ UPDATE: string;
235
+ DELETE: string;
236
+ };
237
+ COUPONS: {
238
+ LIST: string;
239
+ CREATE: string;
240
+ GET: string;
241
+ UPDATE: string;
242
+ DELETE: string;
243
+ VALIDATE: string;
244
+ };
245
+ };
246
+ declare const HTTP_STATUS: {
247
+ OK: number;
248
+ CREATED: number;
249
+ NO_CONTENT: number;
250
+ BAD_REQUEST: number;
251
+ UNAUTHORIZED: number;
252
+ FORBIDDEN: number;
253
+ NOT_FOUND: number;
254
+ CONFLICT: number;
255
+ UNPROCESSABLE_ENTITY: number;
256
+ INTERNAL_SERVER_ERROR: number;
257
+ SERVICE_UNAVAILABLE: number;
258
+ };
259
+ declare const ERROR_MESSAGES: {
260
+ UNAUTHORIZED: string;
261
+ FORBIDDEN: string;
262
+ NO_TOKEN: string;
263
+ INVALID_TOKEN: string;
264
+ INVALID_CREDENTIALS: string;
265
+ USER_EXISTS: string;
266
+ USER_NOT_FOUND: string;
267
+ ACCOUNT_DEACTIVATED: string;
268
+ EMAIL_PASSWORD_MISMATCH: string;
269
+ NOT_FOUND: string;
270
+ VALIDATION_FAILED: string;
271
+ INTERNAL_ERROR: string;
272
+ SERVICE_UNAVAILABLE: string;
273
+ FAILED_TO_FETCH: string;
274
+ PRODUCT_NOT_FOUND: string;
275
+ INSUFFICIENT_STOCK: string;
276
+ FAILED_TO_GET_PRODUCTS: string;
277
+ FAILED_TO_CREATE_PRODUCT: string;
278
+ FAILED_TO_UPDATE_PRODUCT: string;
279
+ FAILED_TO_DELETE_PRODUCT: string;
280
+ CATEGORY_NOT_FOUND: string;
281
+ FAILED_TO_GET_CATEGORIES: string;
282
+ FAILED_TO_CREATE_CATEGORY: string;
283
+ FAILED_TO_UPDATE_CATEGORY: string;
284
+ FAILED_TO_DELETE_CATEGORY: string;
285
+ ORDER_NOT_FOUND: string;
286
+ INVALID_ORDER_STATUS: string;
287
+ FAILED_TO_GET_ORDERS: string;
288
+ FAILED_TO_CREATE_ORDER: string;
289
+ FAILED_TO_UPDATE_ORDER: string;
290
+ INVALID_COUPON: string;
291
+ COUPON_NOT_FOUND: string;
292
+ COUPON_EXPIRED: string;
293
+ COUPON_LIMIT_REACHED: string;
294
+ FAILED_TO_GET_COUPONS: string;
295
+ FAILED_TO_CREATE_COUPON: string;
296
+ FAILED_TO_UPDATE_COUPON: string;
297
+ FAILED_TO_DELETE_COUPON: string;
298
+ REVIEW_NOT_FOUND: string;
299
+ DUPLICATE_REVIEW: string;
300
+ OWN_REVIEW_ONLY: string;
301
+ FAILED_TO_GET_REVIEWS: string;
302
+ FAILED_TO_CREATE_REVIEW: string;
303
+ FAILED_TO_DELETE_REVIEW: string;
304
+ ADDRESS_NOT_FOUND: string;
305
+ FAILED_TO_GET_ADDRESSES: string;
306
+ };
307
+ declare const SUCCESS_MESSAGES: {
308
+ CREATED: string;
309
+ UPDATED: string;
310
+ DELETED: string;
311
+ FETCHED: string;
312
+ USER_REGISTERED: string;
313
+ LOGIN_SUCCESS: string;
314
+ LOGOUT_SUCCESS: string;
315
+ PROFILE_UPDATED: string;
316
+ PASSWORD_CHANGED: string;
317
+ PRODUCT_CREATED: string;
318
+ PRODUCT_UPDATED: string;
319
+ PRODUCT_DELETED: string;
320
+ CATEGORY_CREATED: string;
321
+ CATEGORY_UPDATED: string;
322
+ CATEGORY_DELETED: string;
323
+ ORDER_PLACED: string;
324
+ ORDER_UPDATED: string;
325
+ ORDER_CANCELLED: string;
326
+ COUPON_CREATED: string;
327
+ COUPON_UPDATED: string;
328
+ COUPON_DELETED: string;
329
+ COUPON_APPLIED: string;
330
+ REVIEW_SUBMITTED: string;
331
+ REVIEW_DELETED: string;
332
+ PAYMENT_SUCCESSFUL: string;
333
+ };
334
+ declare const CACHE_CONFIG: {
335
+ DASHBOARD_STATS_TTL: number;
336
+ DASHBOARD_STATS_REFETCH: number;
337
+ PRODUCTS_TTL: number;
338
+ CATEGORIES_TTL: number;
339
+ USER_PROFILE_TTL: number;
340
+ ORDERS_TTL: number;
341
+ };
342
+ declare const TIMEOUT_CONFIG: {
343
+ API_REQUEST: number;
344
+ DATABASE: number;
345
+ GRAPHQL: number;
346
+ };
347
+ declare const REGEX_PATTERNS: {
348
+ EMAIL: RegExp;
349
+ PHONE: RegExp;
350
+ POSTAL_CODE: RegExp;
351
+ COUPON_CODE: RegExp;
352
+ PRODUCT_SKU: RegExp;
353
+ URL: RegExp;
354
+ };
355
+ declare const ENV_PRESETS: {
356
+ DEVELOPMENT: {
357
+ corsOrigins: string[];
358
+ logLevel: string;
359
+ apiTimeout: number;
360
+ };
361
+ PRODUCTION: {
362
+ corsOrigins: string[];
363
+ logLevel: string;
364
+ apiTimeout: number;
365
+ };
366
+ TESTING: {
367
+ corsOrigins: string[];
368
+ logLevel: string;
369
+ apiTimeout: number;
370
+ };
371
+ };
372
+
373
+ interface LogEntry {
374
+ level: LogLevel;
375
+ message: string;
376
+ timestamp: string;
377
+ data?: any;
378
+ context?: string;
379
+ }
380
+ /**
381
+ * Client-safe Logger for frontend applications
382
+ * Uses console only, no file system access
383
+ */
384
+ declare class Logger {
385
+ private static logs;
386
+ private static maxLogs;
387
+ private static enableConsole;
388
+ static configure(options: {
389
+ maxLogs?: number;
390
+ enableConsole?: boolean;
391
+ }): void;
392
+ private static addLog;
393
+ private static format;
394
+ static debug(message: string, data?: any, context?: string): void;
395
+ static info(message: string, data?: any, context?: string): void;
396
+ static warn(message: string, data?: any, context?: string): void;
397
+ static error(message: string, error?: any, context?: string): void;
398
+ private static log;
399
+ static getLogs(level?: LogLevel): LogEntry[];
400
+ static clearLogs(): void;
401
+ }
402
+
403
+ declare const GET_USERS_QUERY = "\n query GetUsers($page: Int, $limit: Int, $search: String, $role: String) {\n users(page: $page, limit: $limit, search: $search, role: $role) {\n users {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n lastLogin\n }\n pagination {\n page\n limit\n total\n pages\n sellerCount\n adminCount\n customerCount\n }\n }\n }\n";
404
+ declare const GET_USER_QUERY = "\n query GetUser($id: ID!) {\n user(id: $id) {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n lastLogin\n }\n }\n";
405
+ declare const GET_USER_BY_ID_QUERY = "\n query GetUserById($id: ID!) {\n getUserById(id: $id) {\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n lastLogin\n }\n accessToken\n refreshToken\n tokenExpiry\n }\n }\n";
406
+ declare const GET_ME_QUERY = "\n query GetMe {\n me {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n lastLogin\n }\n }\n";
407
+ declare const LOGIN_MUTATION = "\n mutation Login($input: LoginInput!) {\n login(input: $input) {\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n }\n accessToken\n refreshToken\n }\n }\n";
408
+ declare const REGISTER_MUTATION = "\n mutation Register($input: RegisterInput!) {\n register(input: $input) {\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n }\n accessToken\n refreshToken\n }\n }\n";
409
+ declare const GOOGLE_AUTH_MUTATION = "\n mutation GoogleAuth($input: GoogleAuthInput!) {\n googleAuth(input: $input) {\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n profilePicture\n }\n accessToken\n refreshToken\n }\n }\n";
410
+ declare const LOGOUT_MUTATION = "\n mutation Logout {\n logout\n }\n";
411
+ declare const UPDATE_USER_ROLE_MUTATION = "\n mutation UpdateUserRole($id: ID!, $role: String!) {\n updateUserRole(id: $id, role: $role) {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n lastLogin\n }\n }\n";
412
+ declare const DELETE_USER_MUTATION = "\n mutation DeleteUser($id: ID!) {\n deleteUser(id: $id)\n }\n";
413
+ declare const SEND_VERIFICATION_EMAIL_MUTATION = "\n mutation SendVerificationEmail($source: String) {\n sendVerificationEmail(source: $source) {\n success\n message\n }\n }\n";
414
+ declare const VERIFY_EMAIL_MUTATION = "\n mutation VerifyEmail {\n verifyEmail {\n success\n message\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n }\n }\n }\n";
415
+ declare const FORGOT_PASSWORD_MUTATION = "\n mutation ForgotPassword($email: String!, $role: String!) {\n forgotPassword(email: $email, role: $role) {\n success\n message\n resetToken\n resetUrl\n }\n }\n";
416
+ declare const RESET_PASSWORD_MUTATION = "\n mutation ResetPassword($token: String!, $password: String!, $confirmPassword: String!) {\n resetPassword(token: $token, password: $password, confirmPassword: $confirmPassword) {\n success\n message\n }\n }\n";
417
+ declare const VALIDATE_RESET_TOKEN_QUERY = "\n query ValidateResetToken($token: String!) {\n validateResetToken(token: $token) {\n success\n message\n email\n }\n }\n";
418
+ declare const UPDATE_PROFILE_MUTATION = "\n mutation UpdateProfile($input: UpdateProfileInput!) {\n updateProfile(input: $input) {\n success\n message\n user {\n id\n name\n email\n role\n isActive\n emailVerified\n createdAt\n }\n }\n }\n";
419
+
420
+ declare const GET_PRODUCTS_QUERY = "\n query GetProducts($page: Int, $limit: Int, $search: String, $category: String, $minPrice: Float, $maxPrice: Float, $sortBy: String, $sortOrder: String, $featured: Boolean, $includeInactive: Boolean) {\n products(page: $page, limit: $limit, search: $search, category: $category, minPrice: $minPrice, maxPrice: $maxPrice, sortBy: $sortBy, sortOrder: $sortOrder, featured: $featured, includeInactive: $includeInactive) {\n products {\n id\n name\n description\n price\n stock\n category\n sellerId\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n pagination {\n page\n limit\n total\n pages\n }\n }\n }\n";
421
+ declare const GET_PRODUCT_QUERY = "\n query GetProduct($id: ID!) {\n product(id: $id) {\n id\n name\n description\n price\n stock\n category\n sellerId\n seller {\n id\n name\n email\n }\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n }\n";
422
+ declare const GET_PRODUCTS_BY_SELLER_QUERY = "\n query GetProductsBySeller($sellerId: String!) {\n productsBySeller(sellerId: $sellerId) {\n id\n name\n description\n price\n stock\n category\n sellerId\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n }\n";
423
+ declare const CREATE_PRODUCT_MUTATION = "\n mutation CreateProduct($input: CreateProductInput!) {\n createProduct(input: $input) {\n id\n name\n description\n price\n stock\n category\n sellerId\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n }\n";
424
+ declare const UPDATE_PRODUCT_MUTATION = "\n mutation UpdateProduct($id: ID!, $input: UpdateProductInput!) {\n updateProduct(id: $id, input: $input) {\n id\n name\n description\n price\n stock\n category\n sellerId\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n }\n";
425
+ declare const DELETE_PRODUCT_MUTATION = "\n mutation DeleteProduct($id: ID!) {\n deleteProduct(id: $id)\n }\n";
426
+ declare const SEARCH_PRODUCTS_QUERY = "\n query SearchProducts($search: String!, $limit: Int) {\n searchProducts(search: $search, limit: $limit) {\n id\n name\n description\n price\n stock\n category\n sellerId\n isActive\n imageUrl\n tags\n rating\n reviewCount\n createdAt\n updatedAt\n }\n }\n";
427
+
428
+ declare const GET_ORDERS_QUERY = "\n query GetOrders($page: Int, $limit: Int, $customerId: String) {\n orders(page: $page, limit: $limit, customerId: $customerId) {\n orders {\n id\n orderNumber\n customerId\n customerEmail\n items {\n productId\n productName\n quantity\n price\n subtotal\n }\n subtotal\n tax\n shipping\n discount\n total\n orderStatus\n paymentStatus\n paymentMethod\n shippingAddress {\n street\n city\n state\n zip\n country\n }\n notes\n createdAt\n updatedAt\n }\n pagination {\n page\n limit\n total\n pages\n }\n }\n }\n";
429
+ declare const GET_ORDER_QUERY = "\n query GetOrder($id: ID!) {\n order(id: $id) {\n id\n orderNumber\n customerId\n customerEmail\n items {\n productId\n productName\n quantity\n price\n subtotal\n }\n subtotal\n tax\n shipping\n total\n orderStatus\n paymentStatus\n paymentMethod\n shippingAddress {\n street\n city\n state\n zip\n country\n }\n notes\n createdAt\n updatedAt\n }\n }\n";
430
+ declare const GET_ORDERS_BY_CUSTOMER_QUERY = "\n query GetOrdersByCustomer($customerId: String!) {\n ordersByCustomer(customerId: $customerId) {\n id\n orderNumber\n customerId\n customerEmail\n items {\n productId\n productName\n quantity\n price\n subtotal\n }\n subtotal\n tax\n shipping\n total\n orderStatus\n paymentStatus\n paymentMethod\n shippingAddress {\n street\n city\n state\n zip\n country\n }\n notes\n createdAt\n updatedAt\n }\n }\n";
431
+ declare const CREATE_ORDER_MUTATION = "\n mutation CreateOrder($input: CreateOrderInput!) {\n createOrder(input: $input) {\n order {\n id\n orderNumber\n customerId\n customerEmail\n sellerId\n items {\n productId\n productName\n quantity\n price\n sellerId\n subtotal\n }\n subtotal\n tax\n shipping\n discount\n couponCode\n total\n orderStatus\n paymentStatus\n paymentMethod\n shippingAddress {\n street\n city\n state\n zip\n country\n }\n notes\n createdAt\n updatedAt\n }\n orders {\n id\n orderNumber\n customerId\n customerEmail\n sellerId\n items {\n productId\n productName\n quantity\n price\n sellerId\n subtotal\n }\n subtotal\n tax\n shipping\n discount\n total\n orderStatus\n paymentStatus\n createdAt\n }\n orderCount\n }\n }\n";
432
+ declare const UPDATE_ORDER_STATUS_MUTATION = "\n mutation UpdateOrderStatus($id: ID!, $status: OrderStatus!) {\n updateOrderStatus(id: $id, status: $status) {\n id\n orderNumber\n orderStatus\n updatedAt\n }\n }\n";
433
+ declare const UPDATE_PAYMENT_STATUS_MUTATION = "\n mutation UpdatePaymentStatus($id: ID!, $status: PaymentStatus!) {\n updatePaymentStatus(id: $id, status: $status) {\n id\n orderNumber\n paymentStatus\n updatedAt\n }\n }\n";
434
+ declare const CANCEL_ORDER_MUTATION = "\n mutation CancelOrder($id: ID!) {\n cancelOrder(id: $id) {\n id\n orderNumber\n orderStatus\n updatedAt\n }\n }\n";
435
+
436
+ declare const GET_COUPONS_QUERY = "\n query GetCoupons($page: Int, $limit: Int, $isActive: Boolean, $search: String) {\n coupons(page: $page, limit: $limit, isActive: $isActive, search: $search) {\n coupons {\n id\n code\n description\n discountType\n discount\n minPurchase\n maxDiscount\n validFrom\n validTo\n usageLimit\n usageCount\n isActive\n createdAt\n updatedAt\n }\n pagination {\n page\n limit\n total\n pages\n }\n }\n }\n";
437
+ declare const GET_COUPON_QUERY = "\n query GetCoupon($id: ID!) {\n coupon(id: $id) {\n id\n code\n description\n discountType\n discount\n minPurchase\n maxDiscount\n validFrom\n validTo\n usageLimit\n usageCount\n isActive\n createdAt\n updatedAt\n }\n }\n";
438
+ declare const VALIDATE_COUPON_QUERY = "\n query ValidateCoupon($code: String!, $orderTotal: Float!) {\n validateCoupon(code: $code, orderTotal: $orderTotal) {\n valid\n discount\n discountValue\n finalTotal\n discountType\n message\n code\n }\n }\n";
439
+ declare const CREATE_COUPON_MUTATION = "\n mutation CreateCoupon($input: CreateCouponInput!) {\n createCoupon(input: $input) {\n id\n code\n description\n discountType\n discount\n minPurchase\n maxDiscount\n validFrom\n validTo\n usageLimit\n usageCount\n isActive\n createdAt\n updatedAt\n }\n }\n";
440
+ declare const UPDATE_COUPON_MUTATION = "\n mutation UpdateCoupon($id: ID!, $input: UpdateCouponInput!) {\n updateCoupon(id: $id, input: $input) {\n id\n code\n description\n discountType\n discount\n minPurchase\n maxDiscount\n validFrom\n validTo\n usageLimit\n usageCount\n isActive\n createdAt\n updatedAt\n }\n }\n";
441
+ declare const DELETE_COUPON_MUTATION = "\n mutation DeleteCoupon($id: ID!) {\n deleteCoupon(id: $id)\n }\n";
442
+ declare const TOGGLE_COUPON_STATUS_MUTATION = "\n mutation ToggleCouponStatus($id: ID!) {\n toggleCouponStatus(id: $id) {\n id\n isActive\n }\n }\n";
443
+
444
+ declare const GET_CATEGORIES_QUERY = "\n query GetCategories($filter: CategoryFilterInput) {\n categories(filter: $filter) {\n success\n message\n data {\n id\n name\n description\n icon\n slug\n isActive\n productCount\n createdAt\n updatedAt\n }\n count\n }\n }\n";
445
+ declare const GET_CATEGORY_QUERY = "\n query GetCategory($id: String!) {\n category(id: $id) {\n id\n name\n description\n icon\n slug\n isActive\n productCount\n createdAt\n updatedAt\n }\n }\n";
446
+ declare const CREATE_CATEGORY_MUTATION = "\n mutation CreateCategory($input: CategoryInput!) {\n createCategory(input: $input) {\n success\n message\n data {\n id\n name\n description\n icon\n slug\n isActive\n productCount\n createdAt\n updatedAt\n }\n }\n }\n";
447
+ declare const UPDATE_CATEGORY_MUTATION = "\n mutation UpdateCategory($id: ID!, $input: CategoryInput!) {\n updateCategory(id: $id, input: $input) {\n success\n message\n data {\n id\n name\n description\n icon\n slug\n isActive\n productCount\n createdAt\n updatedAt\n }\n }\n }\n";
448
+ declare const DELETE_CATEGORY_MUTATION = "\n mutation DeleteCategory($id: ID!) {\n deleteCategory(id: $id) {\n success\n message\n }\n }\n";
449
+
450
+ declare const DASHBOARD_STATS_QUERY = "\n query GetDashboardStats {\n dashboardStats {\n totalUsers\n totalOrders\n totalRevenue\n pendingOrders\n }\n }\n";
451
+ declare const SALES_ANALYTICS_QUERY = "\n query GetSalesAnalytics($period: String!) {\n salesAnalytics(period: $period) {\n daily {\n date\n sales\n orders\n revenue\n }\n weekly {\n date\n sales\n orders\n revenue\n }\n monthly {\n date\n sales\n orders\n revenue\n }\n }\n }\n";
452
+
453
+ declare const GET_PRODUCT_REVIEWS_QUERY = "\n query GetProductReviews($productId: ID!, $page: Int, $limit: Int) {\n productReviews(productId: $productId, page: $page, limit: $limit) {\n reviews {\n id\n productId\n userId\n userName\n rating\n comment\n helpful\n createdAt\n }\n pagination {\n page\n limit\n total\n pages\n }\n }\n }\n";
454
+ declare const CREATE_REVIEW_MUTATION = "\n mutation CreateReview($productId: ID!, $input: CreateReviewInput!) {\n createReview(productId: $productId, input: $input) {\n success\n message\n review {\n id\n productId\n userId\n userName\n rating\n comment\n helpful\n createdAt\n }\n }\n }\n";
455
+ declare const MARK_REVIEW_HELPFUL_MUTATION = "\n mutation MarkReviewHelpful($reviewId: ID!) {\n markReviewHelpful(reviewId: $reviewId) {\n id\n helpful\n }\n }\n";
456
+ declare const DELETE_REVIEW_MUTATION = "\n mutation DeleteReview($reviewId: ID!) {\n deleteReview(reviewId: $reviewId)\n }\n";
457
+
458
+ declare const GET_MY_ADDRESSES_QUERY = "\n query GetMyAddresses {\n myAddresses {\n addresses {\n id\n userId\n street\n city\n state\n zip\n country\n isDefault\n label\n createdAt\n updatedAt\n }\n }\n }\n";
459
+ declare const ADD_ADDRESS_MUTATION = "\n mutation AddAddress($input: AddAddressInput!) {\n addAddress(input: $input) {\n success\n message\n address {\n id\n userId\n street\n city\n state\n zip\n country\n isDefault\n label\n createdAt\n updatedAt\n }\n }\n }\n";
460
+ declare const UPDATE_ADDRESS_MUTATION = "\n mutation UpdateAddress($id: ID!, $input: UpdateAddressInput!) {\n updateAddress(id: $id, input: $input) {\n success\n message\n address {\n id\n userId\n street\n city\n state\n zip\n country\n isDefault\n label\n createdAt\n updatedAt\n }\n }\n }\n";
461
+ declare const DELETE_ADDRESS_MUTATION = "\n mutation DeleteAddress($id: ID!) {\n deleteAddress(id: $id) {\n success\n message\n }\n }\n";
462
+ declare const SET_DEFAULT_ADDRESS_MUTATION = "\n mutation SetDefaultAddress($id: ID!) {\n setDefaultAddress(id: $id) {\n success\n message\n address {\n id\n userId\n street\n city\n state\n zip\n country\n isDefault\n label\n createdAt\n updatedAt\n }\n }\n }\n";
463
+
464
+ export { DELETE_COUPON_MUTATION as $, type AuthTokens as A, GET_PRODUCT_QUERY as B, GET_PRODUCTS_BY_SELLER_QUERY as C, DELETE_USER_MUTATION as D, CREATE_PRODUCT_MUTATION as E, FORGOT_PASSWORD_MUTATION as F, GET_USERS_QUERY as G, UPDATE_PRODUCT_MUTATION as H, DELETE_PRODUCT_MUTATION as I, SEARCH_PRODUCTS_QUERY as J, GET_ORDERS_QUERY as K, LOGIN_MUTATION as L, GET_ORDER_QUERY as M, GET_ORDERS_BY_CUSTOMER_QUERY as N, CREATE_ORDER_MUTATION as O, UPDATE_ORDER_STATUS_MUTATION as P, UPDATE_PAYMENT_STATUS_MUTATION as Q, REGISTER_MUTATION as R, type StoredAuth as S, CANCEL_ORDER_MUTATION as T, UPDATE_USER_ROLE_MUTATION as U, VERIFY_EMAIL_MUTATION as V, GET_COUPONS_QUERY as W, GET_COUPON_QUERY as X, VALIDATE_COUPON_QUERY as Y, CREATE_COUPON_MUTATION as Z, UPDATE_COUPON_MUTATION as _, getCurrentUser as a, isArray as a$, TOGGLE_COUPON_STATUS_MUTATION as a0, GET_CATEGORIES_QUERY as a1, GET_CATEGORY_QUERY as a2, CREATE_CATEGORY_MUTATION as a3, UPDATE_CATEGORY_MUTATION as a4, DELETE_CATEGORY_MUTATION as a5, DASHBOARD_STATS_QUERY as a6, SALES_ANALYTICS_QUERY as a7, GET_PRODUCT_REVIEWS_QUERY as a8, CREATE_REVIEW_MUTATION as a9, sortBy as aA, flatten as aB, difference as aC, intersection as aD, omit as aE, pick as aF, deepMerge as aG, isEmpty as aH, getNestedValue as aI, setNestedValue as aJ, formatDate as aK, addDays as aL, addHours as aM, getDaysDifference as aN, isDateInRange as aO, isFutureDate as aP, isPastDate as aQ, delay as aR, debounce as aS, throttle as aT, tryParse as aU, withErrorHandling as aV, createApiResponse as aW, retry as aX, isString as aY, isNumber as aZ, isBoolean as a_, MARK_REVIEW_HELPFUL_MUTATION as aa, DELETE_REVIEW_MUTATION as ab, GET_MY_ADDRESSES_QUERY as ac, ADD_ADDRESS_MUTATION as ad, UPDATE_ADDRESS_MUTATION as ae, DELETE_ADDRESS_MUTATION as af, SET_DEFAULT_ADDRESS_MUTATION as ag, type LogEntry as ah, Logger as ai, capitalize as aj, capitalizeWords as ak, toTitleCase as al, slugify as am, generateRandomCode as an, truncate as ao, formatCurrency as ap, formatNumber as aq, roundUp as ar, roundDown as as, calculatePercentage as at, calculateDiscount as au, calculateTax as av, chunk as aw, unique as ax, removeDuplicates as ay, groupBy as az, getAccessToken as b, isObject as b0, isFunction as b1, isNull as b2, isUndefined as b3, isNullOrUndefined as b4, formatIndianCompact as b5, formatPrice as b6, formatPriceShort as b7, SHELL_APP_URL as b8, ADMIN_APP_URL as b9, SELLER_APP_URL as ba, STOREFRONT_APP_URL as bb, PORT_CONFIG as bc, SERVICE_URLS as bd, DATABASE_CONFIG as be, DEFAULT_CORS_ORIGINS as bf, JWT_CONFIG as bg, PAGINATION as bh, PRODUCT_CONFIG as bi, ORDER_CONFIG as bj, COUPON_CONFIG as bk, API_ENDPOINTS as bl, HTTP_STATUS as bm, ERROR_MESSAGES as bn, SUCCESS_MESSAGES as bo, CACHE_CONFIG as bp, TIMEOUT_CONFIG as bq, REGEX_PATTERNS as br, ENV_PRESETS as bs, clearAuth as c, getRefreshToken as d, setupAutoRefresh as e, setCookie as f, getStoredAuth as g, getCookie as h, isTokenExpired as i, areCookiesEnabled as j, AUTH_COOKIE_NAMES as k, GET_USER_QUERY as l, GET_USER_BY_ID_QUERY as m, GET_ME_QUERY as n, GOOGLE_AUTH_MUTATION as o, LOGOUT_MUTATION as p, SEND_VERIFICATION_EMAIL_MUTATION as q, removeCookie as r, storeAuth as s, RESET_PASSWORD_MUTATION as t, updateAccessToken as u, validateUserRole as v, willTokenExpireSoon as w, VALIDATE_RESET_TOKEN_QUERY as x, UPDATE_PROFILE_MUTATION as y, GET_PRODUCTS_QUERY as z };
@@ -0,0 +1,3 @@
1
+ export { ad as ADD_ADDRESS_MUTATION, b9 as ADMIN_APP_URL, bl as API_ENDPOINTS, k as AUTH_COOKIE_NAMES, A as AuthTokens, bp as CACHE_CONFIG, T as CANCEL_ORDER_MUTATION, bk as COUPON_CONFIG, a3 as CREATE_CATEGORY_MUTATION, Z as CREATE_COUPON_MUTATION, O as CREATE_ORDER_MUTATION, E as CREATE_PRODUCT_MUTATION, a9 as CREATE_REVIEW_MUTATION, a6 as DASHBOARD_STATS_QUERY, be as DATABASE_CONFIG, bf as DEFAULT_CORS_ORIGINS, af as DELETE_ADDRESS_MUTATION, a5 as DELETE_CATEGORY_MUTATION, $ as DELETE_COUPON_MUTATION, I as DELETE_PRODUCT_MUTATION, ab as DELETE_REVIEW_MUTATION, D as DELETE_USER_MUTATION, bs as ENV_PRESETS, bn as ERROR_MESSAGES, F as FORGOT_PASSWORD_MUTATION, a1 as GET_CATEGORIES_QUERY, a2 as GET_CATEGORY_QUERY, W as GET_COUPONS_QUERY, X as GET_COUPON_QUERY, n as GET_ME_QUERY, ac as GET_MY_ADDRESSES_QUERY, N as GET_ORDERS_BY_CUSTOMER_QUERY, K as GET_ORDERS_QUERY, M as GET_ORDER_QUERY, C as GET_PRODUCTS_BY_SELLER_QUERY, z as GET_PRODUCTS_QUERY, B as GET_PRODUCT_QUERY, a8 as GET_PRODUCT_REVIEWS_QUERY, G as GET_USERS_QUERY, m as GET_USER_BY_ID_QUERY, l as GET_USER_QUERY, o as GOOGLE_AUTH_MUTATION, bm as HTTP_STATUS, bg as JWT_CONFIG, L as LOGIN_MUTATION, p as LOGOUT_MUTATION, ai as Logger, aa as MARK_REVIEW_HELPFUL_MUTATION, bj as ORDER_CONFIG, bh as PAGINATION, bc as PORT_CONFIG, bi as PRODUCT_CONFIG, br as REGEX_PATTERNS, R as REGISTER_MUTATION, t as RESET_PASSWORD_MUTATION, a7 as SALES_ANALYTICS_QUERY, J as SEARCH_PRODUCTS_QUERY, ba as SELLER_APP_URL, q as SEND_VERIFICATION_EMAIL_MUTATION, bd as SERVICE_URLS, ag as SET_DEFAULT_ADDRESS_MUTATION, b8 as SHELL_APP_URL, bb as STOREFRONT_APP_URL, bo as SUCCESS_MESSAGES, S as StoredAuth, bq as TIMEOUT_CONFIG, a0 as TOGGLE_COUPON_STATUS_MUTATION, ae as UPDATE_ADDRESS_MUTATION, a4 as UPDATE_CATEGORY_MUTATION, _ as UPDATE_COUPON_MUTATION, P as UPDATE_ORDER_STATUS_MUTATION, Q as UPDATE_PAYMENT_STATUS_MUTATION, H as UPDATE_PRODUCT_MUTATION, y as UPDATE_PROFILE_MUTATION, U as UPDATE_USER_ROLE_MUTATION, Y as VALIDATE_COUPON_QUERY, x as VALIDATE_RESET_TOKEN_QUERY, V as VERIFY_EMAIL_MUTATION, aL as addDays, aM as addHours, j as areCookiesEnabled, au as calculateDiscount, at as calculatePercentage, av as calculateTax, aj as capitalize, ak as capitalizeWords, aw as chunk, c as clearAuth, aW as createApiResponse, aS as debounce, aG as deepMerge, aR as delay, aC as difference, aB as flatten, ap as formatCurrency, aK as formatDate, b5 as formatIndianCompact, aq as formatNumber, b6 as formatPrice, b7 as formatPriceShort, an as generateRandomCode, b as getAccessToken, h as getCookie, a as getCurrentUser, aN as getDaysDifference, aI as getNestedValue, d as getRefreshToken, g as getStoredAuth, az as groupBy, aD as intersection, a$ as isArray, a_ as isBoolean, aO as isDateInRange, aH as isEmpty, b1 as isFunction, aP as isFutureDate, b2 as isNull, b4 as isNullOrUndefined, aZ as isNumber, b0 as isObject, aQ as isPastDate, aY as isString, i as isTokenExpired, b3 as isUndefined, aE as omit, aF as pick, r as removeCookie, ay as removeDuplicates, aX as retry, as as roundDown, ar as roundUp, f as setCookie, aJ as setNestedValue, e as setupAutoRefresh, am as slugify, aA as sortBy, s as storeAuth, aT as throttle, al as toTitleCase, ao as truncate, aU as tryParse, ax as unique, u as updateAccessToken, v as validateUserRole, w as willTokenExpireSoon, aV as withErrorHandling } from './client-DgNiKrLe.mjs';
2
+ export { y as batchValidate, h as isValidCouponCode, i as isValidEmail, p as isValidObjectId, a as isValidPassword, d as isValidPhone, f as isValidPostalCode, t as isValidSku, r as isValidUrl, j as validateCouponCode, w as validateDate, x as validateDateRange, n as validateDiscountPercentage, v as validateEmail, c as validateName, q as validateObjectId, o as validatePagination, b as validatePassword, e as validatePhone, g as validatePostalCode, k as validatePrice, l as validateQuantity, m as validateRating, u as validateSku, s as validateUrl } from './client-DYGi_pyp.mjs';
3
+ import '3a-ecommerce-types';
@@ -0,0 +1,3 @@
1
+ export { ad as ADD_ADDRESS_MUTATION, b9 as ADMIN_APP_URL, bl as API_ENDPOINTS, k as AUTH_COOKIE_NAMES, A as AuthTokens, bp as CACHE_CONFIG, T as CANCEL_ORDER_MUTATION, bk as COUPON_CONFIG, a3 as CREATE_CATEGORY_MUTATION, Z as CREATE_COUPON_MUTATION, O as CREATE_ORDER_MUTATION, E as CREATE_PRODUCT_MUTATION, a9 as CREATE_REVIEW_MUTATION, a6 as DASHBOARD_STATS_QUERY, be as DATABASE_CONFIG, bf as DEFAULT_CORS_ORIGINS, af as DELETE_ADDRESS_MUTATION, a5 as DELETE_CATEGORY_MUTATION, $ as DELETE_COUPON_MUTATION, I as DELETE_PRODUCT_MUTATION, ab as DELETE_REVIEW_MUTATION, D as DELETE_USER_MUTATION, bs as ENV_PRESETS, bn as ERROR_MESSAGES, F as FORGOT_PASSWORD_MUTATION, a1 as GET_CATEGORIES_QUERY, a2 as GET_CATEGORY_QUERY, W as GET_COUPONS_QUERY, X as GET_COUPON_QUERY, n as GET_ME_QUERY, ac as GET_MY_ADDRESSES_QUERY, N as GET_ORDERS_BY_CUSTOMER_QUERY, K as GET_ORDERS_QUERY, M as GET_ORDER_QUERY, C as GET_PRODUCTS_BY_SELLER_QUERY, z as GET_PRODUCTS_QUERY, B as GET_PRODUCT_QUERY, a8 as GET_PRODUCT_REVIEWS_QUERY, G as GET_USERS_QUERY, m as GET_USER_BY_ID_QUERY, l as GET_USER_QUERY, o as GOOGLE_AUTH_MUTATION, bm as HTTP_STATUS, bg as JWT_CONFIG, L as LOGIN_MUTATION, p as LOGOUT_MUTATION, ai as Logger, aa as MARK_REVIEW_HELPFUL_MUTATION, bj as ORDER_CONFIG, bh as PAGINATION, bc as PORT_CONFIG, bi as PRODUCT_CONFIG, br as REGEX_PATTERNS, R as REGISTER_MUTATION, t as RESET_PASSWORD_MUTATION, a7 as SALES_ANALYTICS_QUERY, J as SEARCH_PRODUCTS_QUERY, ba as SELLER_APP_URL, q as SEND_VERIFICATION_EMAIL_MUTATION, bd as SERVICE_URLS, ag as SET_DEFAULT_ADDRESS_MUTATION, b8 as SHELL_APP_URL, bb as STOREFRONT_APP_URL, bo as SUCCESS_MESSAGES, S as StoredAuth, bq as TIMEOUT_CONFIG, a0 as TOGGLE_COUPON_STATUS_MUTATION, ae as UPDATE_ADDRESS_MUTATION, a4 as UPDATE_CATEGORY_MUTATION, _ as UPDATE_COUPON_MUTATION, P as UPDATE_ORDER_STATUS_MUTATION, Q as UPDATE_PAYMENT_STATUS_MUTATION, H as UPDATE_PRODUCT_MUTATION, y as UPDATE_PROFILE_MUTATION, U as UPDATE_USER_ROLE_MUTATION, Y as VALIDATE_COUPON_QUERY, x as VALIDATE_RESET_TOKEN_QUERY, V as VERIFY_EMAIL_MUTATION, aL as addDays, aM as addHours, j as areCookiesEnabled, au as calculateDiscount, at as calculatePercentage, av as calculateTax, aj as capitalize, ak as capitalizeWords, aw as chunk, c as clearAuth, aW as createApiResponse, aS as debounce, aG as deepMerge, aR as delay, aC as difference, aB as flatten, ap as formatCurrency, aK as formatDate, b5 as formatIndianCompact, aq as formatNumber, b6 as formatPrice, b7 as formatPriceShort, an as generateRandomCode, b as getAccessToken, h as getCookie, a as getCurrentUser, aN as getDaysDifference, aI as getNestedValue, d as getRefreshToken, g as getStoredAuth, az as groupBy, aD as intersection, a$ as isArray, a_ as isBoolean, aO as isDateInRange, aH as isEmpty, b1 as isFunction, aP as isFutureDate, b2 as isNull, b4 as isNullOrUndefined, aZ as isNumber, b0 as isObject, aQ as isPastDate, aY as isString, i as isTokenExpired, b3 as isUndefined, aE as omit, aF as pick, r as removeCookie, ay as removeDuplicates, aX as retry, as as roundDown, ar as roundUp, f as setCookie, aJ as setNestedValue, e as setupAutoRefresh, am as slugify, aA as sortBy, s as storeAuth, aT as throttle, al as toTitleCase, ao as truncate, aU as tryParse, ax as unique, u as updateAccessToken, v as validateUserRole, w as willTokenExpireSoon, aV as withErrorHandling } from './client-BHgqHSo9.js';
2
+ export { y as batchValidate, h as isValidCouponCode, i as isValidEmail, p as isValidObjectId, a as isValidPassword, d as isValidPhone, f as isValidPostalCode, t as isValidSku, r as isValidUrl, j as validateCouponCode, w as validateDate, x as validateDateRange, n as validateDiscountPercentage, v as validateEmail, c as validateName, q as validateObjectId, o as validatePagination, b as validatePassword, e as validatePhone, g as validatePostalCode, k as validatePrice, l as validateQuantity, m as validateRating, u as validateSku, s as validateUrl } from './client-DYGi_pyp.js';
3
+ import '3a-ecommerce-types';