@growsober/sdk 1.0.5 → 1.0.8
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/__tests__/e2e.test.d.ts +30 -0
- package/dist/__tests__/e2e.test.js +959 -63
- package/dist/api/mutations/badges.d.ts +116 -0
- package/dist/api/mutations/badges.js +177 -0
- package/dist/api/mutations/brands.d.ts +251 -0
- package/dist/api/mutations/brands.js +242 -0
- package/dist/api/mutations/creators.d.ts +131 -0
- package/dist/api/mutations/creators.js +129 -0
- package/dist/api/mutations/event-chat.d.ts +2 -2
- package/dist/api/mutations/event-chat.js +9 -9
- package/dist/api/mutations/index.d.ts +4 -0
- package/dist/api/mutations/index.js +5 -1
- package/dist/api/mutations/jack.d.ts +29 -0
- package/dist/api/mutations/jack.js +41 -1
- package/dist/api/mutations/products.d.ts +175 -0
- package/dist/api/mutations/products.js +226 -0
- package/dist/api/mutations/support.d.ts +20 -1
- package/dist/api/mutations/support.js +36 -1
- package/dist/api/queries/badges.d.ts +221 -0
- package/dist/api/queries/badges.js +290 -0
- package/dist/api/queries/bookings.d.ts +1 -1
- package/dist/api/queries/brands.d.ts +248 -0
- package/dist/api/queries/brands.js +226 -0
- package/dist/api/queries/businesses.d.ts +61 -1
- package/dist/api/queries/businesses.js +27 -1
- package/dist/api/queries/creators.d.ts +332 -0
- package/dist/api/queries/creators.js +249 -0
- package/dist/api/queries/event-chat.d.ts +1 -1
- package/dist/api/queries/event-chat.js +4 -4
- package/dist/api/queries/events.d.ts +45 -0
- package/dist/api/queries/index.d.ts +5 -0
- package/dist/api/queries/index.js +6 -1
- package/dist/api/queries/jack.d.ts +80 -0
- package/dist/api/queries/jack.js +98 -1
- package/dist/api/queries/library.d.ts +8 -0
- package/dist/api/queries/products.d.ts +185 -0
- package/dist/api/queries/products.js +203 -0
- package/dist/api/queries/support.d.ts +46 -1
- package/dist/api/queries/support.js +48 -1
- package/dist/api/queries/venues.d.ts +304 -0
- package/dist/api/queries/venues.js +211 -0
- package/dist/api/types.d.ts +245 -0
- package/dist/api/types.js +6 -1
- package/dist/api/utils/eventGrouping.d.ts +104 -0
- package/dist/api/utils/eventGrouping.js +155 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5 -1
- package/package.json +5 -2
- package/src/__tests__/e2e.test.ts +996 -64
- package/src/api/mutations/badges.ts +228 -0
- package/src/api/mutations/brands.ts +376 -0
- package/src/api/mutations/creators.ts +171 -0
- package/src/api/mutations/event-chat.ts +8 -8
- package/src/api/mutations/index.ts +4 -0
- package/src/api/mutations/jack.ts +50 -1
- package/src/api/mutations/products.ts +336 -0
- package/src/api/mutations/support.ts +44 -0
- package/src/api/queries/badges.ts +385 -0
- package/src/api/queries/brands.ts +281 -0
- package/src/api/queries/businesses.ts +30 -1
- package/src/api/queries/creators.ts +308 -0
- package/src/api/queries/event-chat.ts +3 -3
- package/src/api/queries/index.ts +5 -0
- package/src/api/queries/jack.ts +139 -1
- package/src/api/queries/products.ts +312 -0
- package/src/api/queries/support.ts +54 -0
- package/src/api/queries/venues.ts +271 -0
- package/src/api/types.ts +317 -1
- package/src/api/utils/eventGrouping.ts +181 -0
- package/src/index.ts +6 -0
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.brandKeys = void 0;
|
|
4
|
+
exports.useBrands = useBrands;
|
|
5
|
+
exports.useBrand = useBrand;
|
|
6
|
+
exports.useBrandBySlug = useBrandBySlug;
|
|
7
|
+
exports.useFeaturedBrands = useFeaturedBrands;
|
|
8
|
+
exports.useBrandOwners = useBrandOwners;
|
|
9
|
+
exports.useBrandCreators = useBrandCreators;
|
|
10
|
+
exports.useBrandRewards = useBrandRewards;
|
|
11
|
+
exports.useBrandSponsoredEvents = useBrandSponsoredEvents;
|
|
12
|
+
const react_query_1 = require("@tanstack/react-query");
|
|
13
|
+
const client_1 = require("../client");
|
|
14
|
+
// ============================================================================
|
|
15
|
+
// QUERY KEY FACTORY
|
|
16
|
+
// ============================================================================
|
|
17
|
+
exports.brandKeys = {
|
|
18
|
+
all: ['brands'],
|
|
19
|
+
lists: () => [...exports.brandKeys.all, 'list'],
|
|
20
|
+
list: (filters) => [...exports.brandKeys.lists(), filters],
|
|
21
|
+
details: () => [...exports.brandKeys.all, 'detail'],
|
|
22
|
+
detail: (id) => [...exports.brandKeys.details(), id],
|
|
23
|
+
slug: (slug) => [...exports.brandKeys.all, 'slug', slug],
|
|
24
|
+
featured: () => [...exports.brandKeys.all, 'featured'],
|
|
25
|
+
owners: (brandId) => [...exports.brandKeys.detail(brandId), 'owners'],
|
|
26
|
+
creators: (brandId) => [...exports.brandKeys.detail(brandId), 'creators'],
|
|
27
|
+
rewards: (brandId) => [...exports.brandKeys.detail(brandId), 'rewards'],
|
|
28
|
+
events: (brandId) => [...exports.brandKeys.detail(brandId), 'events'],
|
|
29
|
+
};
|
|
30
|
+
// ============================================================================
|
|
31
|
+
// QUERY HOOKS
|
|
32
|
+
// ============================================================================
|
|
33
|
+
/**
|
|
34
|
+
* Get paginated list of brands with optional filters
|
|
35
|
+
*
|
|
36
|
+
* @param filters - Query parameters for filtering and pagination
|
|
37
|
+
* @param options - TanStack Query options
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```tsx
|
|
41
|
+
* const { data, isLoading } = useBrands({
|
|
42
|
+
* page: 1,
|
|
43
|
+
* limit: 20,
|
|
44
|
+
* isFeatured: true,
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
function useBrands(filters, options) {
|
|
49
|
+
return (0, react_query_1.useQuery)({
|
|
50
|
+
queryKey: exports.brandKeys.list(filters),
|
|
51
|
+
queryFn: async () => {
|
|
52
|
+
const client = (0, client_1.getApiClient)();
|
|
53
|
+
const response = await client.get('/api/v1/brands', {
|
|
54
|
+
params: filters,
|
|
55
|
+
});
|
|
56
|
+
return response.data;
|
|
57
|
+
},
|
|
58
|
+
...options,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Get a single brand by ID
|
|
63
|
+
*
|
|
64
|
+
* @param id - Brand ID
|
|
65
|
+
* @param options - TanStack Query options
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```tsx
|
|
69
|
+
* const { data, isLoading } = useBrand('brand-123');
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
function useBrand(id, options) {
|
|
73
|
+
return (0, react_query_1.useQuery)({
|
|
74
|
+
queryKey: exports.brandKeys.detail(id),
|
|
75
|
+
queryFn: async () => {
|
|
76
|
+
const client = (0, client_1.getApiClient)();
|
|
77
|
+
const response = await client.get(`/api/v1/brands/${id}`);
|
|
78
|
+
return response.data;
|
|
79
|
+
},
|
|
80
|
+
enabled: !!id,
|
|
81
|
+
...options,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Get a brand by its slug
|
|
86
|
+
*
|
|
87
|
+
* @param slug - Brand slug
|
|
88
|
+
* @param options - TanStack Query options
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```tsx
|
|
92
|
+
* const { data, isLoading } = useBrandBySlug('wellness-co');
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
function useBrandBySlug(slug, options) {
|
|
96
|
+
return (0, react_query_1.useQuery)({
|
|
97
|
+
queryKey: exports.brandKeys.slug(slug),
|
|
98
|
+
queryFn: async () => {
|
|
99
|
+
const client = (0, client_1.getApiClient)();
|
|
100
|
+
const response = await client.get(`/api/v1/brands/slug/${slug}`);
|
|
101
|
+
return response.data;
|
|
102
|
+
},
|
|
103
|
+
enabled: !!slug,
|
|
104
|
+
...options,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get featured brands
|
|
109
|
+
*
|
|
110
|
+
* @param limit - Maximum number of brands to return
|
|
111
|
+
* @param options - TanStack Query options
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```tsx
|
|
115
|
+
* const { data, isLoading } = useFeaturedBrands(10);
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
function useFeaturedBrands(limit, options) {
|
|
119
|
+
return (0, react_query_1.useQuery)({
|
|
120
|
+
queryKey: exports.brandKeys.featured(),
|
|
121
|
+
queryFn: async () => {
|
|
122
|
+
const client = (0, client_1.getApiClient)();
|
|
123
|
+
const response = await client.get('/api/v1/brands/featured', {
|
|
124
|
+
params: { limit },
|
|
125
|
+
});
|
|
126
|
+
return response.data;
|
|
127
|
+
},
|
|
128
|
+
...options,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Get brand owners
|
|
133
|
+
*
|
|
134
|
+
* @param brandId - Brand ID
|
|
135
|
+
* @param options - TanStack Query options
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```tsx
|
|
139
|
+
* const { data, isLoading } = useBrandOwners('brand-123');
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
function useBrandOwners(brandId, options) {
|
|
143
|
+
return (0, react_query_1.useQuery)({
|
|
144
|
+
queryKey: exports.brandKeys.owners(brandId),
|
|
145
|
+
queryFn: async () => {
|
|
146
|
+
const client = (0, client_1.getApiClient)();
|
|
147
|
+
const response = await client.get(`/api/v1/brands/${brandId}/owners`);
|
|
148
|
+
return response.data;
|
|
149
|
+
},
|
|
150
|
+
enabled: !!brandId,
|
|
151
|
+
...options,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Get brand creator partnerships
|
|
156
|
+
*
|
|
157
|
+
* @param brandId - Brand ID
|
|
158
|
+
* @param options - TanStack Query options
|
|
159
|
+
*
|
|
160
|
+
* @example
|
|
161
|
+
* ```tsx
|
|
162
|
+
* const { data, isLoading } = useBrandCreators('brand-123');
|
|
163
|
+
* ```
|
|
164
|
+
*/
|
|
165
|
+
function useBrandCreators(brandId, options) {
|
|
166
|
+
return (0, react_query_1.useQuery)({
|
|
167
|
+
queryKey: exports.brandKeys.creators(brandId),
|
|
168
|
+
queryFn: async () => {
|
|
169
|
+
const client = (0, client_1.getApiClient)();
|
|
170
|
+
const response = await client.get(`/api/v1/brands/${brandId}/creators`);
|
|
171
|
+
return response.data;
|
|
172
|
+
},
|
|
173
|
+
enabled: !!brandId,
|
|
174
|
+
...options,
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Get brand rewards
|
|
179
|
+
*
|
|
180
|
+
* @param brandId - Brand ID
|
|
181
|
+
* @param options - TanStack Query options
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* ```tsx
|
|
185
|
+
* const { data, isLoading } = useBrandRewards('brand-123');
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
188
|
+
function useBrandRewards(brandId, options) {
|
|
189
|
+
return (0, react_query_1.useQuery)({
|
|
190
|
+
queryKey: exports.brandKeys.rewards(brandId),
|
|
191
|
+
queryFn: async () => {
|
|
192
|
+
const client = (0, client_1.getApiClient)();
|
|
193
|
+
const response = await client.get(`/api/v1/rewards/brand/${brandId}`);
|
|
194
|
+
return response.data;
|
|
195
|
+
},
|
|
196
|
+
enabled: !!brandId,
|
|
197
|
+
...options,
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Get events sponsored by a brand
|
|
202
|
+
*
|
|
203
|
+
* @param brandId - Brand ID
|
|
204
|
+
* @param upcoming - Whether to filter to upcoming events only (default: true)
|
|
205
|
+
* @param options - TanStack Query options
|
|
206
|
+
*
|
|
207
|
+
* @example
|
|
208
|
+
* ```tsx
|
|
209
|
+
* const { data, isLoading } = useBrandSponsoredEvents('brand-123');
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
function useBrandSponsoredEvents(brandId, upcoming = true, options) {
|
|
213
|
+
return (0, react_query_1.useQuery)({
|
|
214
|
+
queryKey: exports.brandKeys.events(brandId),
|
|
215
|
+
queryFn: async () => {
|
|
216
|
+
const client = (0, client_1.getApiClient)();
|
|
217
|
+
const response = await client.get(`/api/v1/brands/${brandId}/events`, {
|
|
218
|
+
params: { upcoming },
|
|
219
|
+
});
|
|
220
|
+
return response.data;
|
|
221
|
+
},
|
|
222
|
+
enabled: !!brandId,
|
|
223
|
+
...options,
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhbmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9xdWVyaWVzL2JyYW5kcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1RUEsOEJBZUM7QUFhRCw0QkFjQztBQWFELHdDQWNDO0FBYUQsOENBZUM7QUFhRCx3Q0FjQztBQWFELDRDQWNDO0FBYUQsMENBY0M7QUFjRCwwREFpQkM7QUF4UkQsdURBQWtFO0FBQ2xFLHNDQUF5QztBQVN6QywrRUFBK0U7QUFDL0Usb0JBQW9CO0FBQ3BCLCtFQUErRTtBQUVsRSxRQUFBLFNBQVMsR0FBRztJQUN2QixHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQVU7SUFDeEIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxpQkFBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQVU7SUFDaEQsSUFBSSxFQUFFLENBQUMsT0FBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLGlCQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsT0FBTyxDQUFVO0lBQzFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsaUJBQVMsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFVO0lBQ3BELE1BQU0sRUFBRSxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLGlCQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFVO0lBQzdELElBQUksRUFBRSxDQUFDLElBQVksRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLGlCQUFTLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQVU7SUFDakUsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxpQkFBUyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQVU7SUFDdkQsTUFBTSxFQUFFLENBQUMsT0FBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsaUJBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUs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Q0gsU0FBZ0IsZUFBZSxDQUM3QixPQUFlLEVBQ2YsT0FBeUU7SUFFekUsT0FBTyxJQUFBLHNCQUFRLEVBQUM7UUFDZCxRQUFRLEVBQUUsaUJBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ3BDLE9BQU8sRUFBRSxLQUFLLElBQStCLEVBQUU7WUFDN0MsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3RFLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO1FBQ2xCLEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILFNBQWdCLHVCQUF1QixDQUNyQyxPQUFlLEVBQ2YsUUFBUSxHQUFHLElBQUksRUFDZixPQUF3RTtJQUV4RSxPQUFPLElBQUEsc0JBQVEsRUFBQztRQUNkLFFBQVEsRUFBRSxpQkFBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDbkMsT0FBTyxFQUFFLEtBQUssSUFBOEIsRUFBRTtZQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLE9BQU8sU0FBUyxFQUFFO2dCQUNwRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUU7YUFDckIsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87UUFDbEIsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVF1ZXJ5LCBVc2VRdWVyeU9wdGlvbnMgfSBmcm9tICdAdGFuc3RhY2svcmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgZ2V0QXBpQ2xpZW50IH0gZnJvbSAnLi4vY2xpZW50JztcbmltcG9ydCB0eXBlIHtcbiAgQnJhbmRSZXNwb25zZSxcbiAgQnJhbmRPd25lclJlc3BvbnNlLFxuICBCcmFuZENyZWF0b3JSZXNwb25zZSxcbiAgUmV3YXJkUmVzcG9uc2UsXG4gIEV2ZW50UmVzcG9uc2UsXG59IGZyb20gJy4uL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUVVFUlkgS0VZIEZBQ1RPUllcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGNvbnN0IGJyYW5kS2V5cyA9IHtcbiAgYWxsOiBbJ2JyYW5kcyddIGFzIGNvbnN0LFxuICBsaXN0czogKCkgPT4gWy4uLmJyYW5kS2V5cy5hbGwsICdsaXN0J10gYXMgY29uc3QsXG4gIGxpc3Q6IChmaWx0ZXJzPzogQnJhbmRGaWx0ZXJzKSA9PiBbLi4uYnJhbmRLZXlzLmxpc3RzKCksIGZpbHRlcnNdIGFzIGNvbnN0LFxuICBkZXRhaWxzOiAoKSA9PiBbLi4uYnJhbmRLZXlzLmFsbCwgJ2RldGFpbCddIGFzIGNvbnN0LFxuICBkZXRhaWw6IChpZDogc3RyaW5nKSA9PiBbLi4uYnJhbmRLZXlzLmRldGFpbHMoKSwgaWRdIGFzIGNvbnN0LFxuICBzbHVnOiAoc2x1Zzogc3RyaW5nKSA9PiBbLi4uYnJhbmRLZXlzLmFsbCwgJ3NsdWcnLCBzbHVnXSBhcyBjb25zdCxcbiAgZmVhdHVyZWQ6ICgpID0+IFsuLi5icmFuZEtleXMuYWxsLCAnZmVhdHVyZWQnXSBhcyBjb25zdCxcbiAgb3duZXJzOiAoYnJhbmRJZDogc3RyaW5nKSA9PiBbLi4uYnJhbmRLZXlzLmRldGFpbChicmFuZElkKSwgJ293bmVycyddIGFzIGNvbnN0LFxuICBjcmVhdG9yczogKGJyYW5kSWQ6IHN0cmluZykgPT4gWy4uLmJyYW5kS2V5cy5kZXRhaWwoYnJhbmRJZCksICdjcmVhdG9ycyddIGFzIGNvbnN0LFxuICByZXdhcmRzOiAoYnJhbmRJZDogc3RyaW5nKSA9PiBbLi4uYnJhbmRLZXlzLmRldGFpbChicmFuZElkKSwgJ3Jld2FyZHMnXSBhcyBjb25zdCxcbiAgZXZlbnRzOiAoYnJhbmRJZDogc3RyaW5nKSA9PiBbLi4uYnJhbmRLZXlzLmRldGFpbChicmFuZElkKSwgJ2V2ZW50cyddIGFzIGNvbnN0LFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGludGVyZmFjZSBCcmFuZEZpbHRlcnMge1xuICBwYWdlPzogbnVtYmVyO1xuICBsaW1pdD86IG51bWJlcjtcbiAgc2VhcmNoPzogc3RyaW5nO1xuICBpc1ZlcmlmaWVkPzogYm9vbGVhbjtcbiAgaXNGZWF0dXJlZD86IGJvb2xlYW47XG4gIHNvcnRCeT86IHN0cmluZztcbiAgc29ydE9yZGVyPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGVkQnJhbmRzUmVzcG9uc2Uge1xuICBicmFuZHM6IEJyYW5kUmVzcG9uc2VbXTtcbiAgbWV0YToge1xuICAgIHRvdGFsOiBudW1iZXI7XG4gICAgcGFnZTogbnVtYmVyO1xuICAgIGxpbWl0OiBudW1iZXI7XG4gICAgdG90YWxQYWdlczogbnVtYmVyO1xuICB9O1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBIT09LU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEdldCBwYWdpbmF0ZWQgbGlzdCBvZiBicmFuZHMgd2l0aCBvcHRpb25hbCBmaWx0ZXJzXG4gKlxuICogQHBhcmFtIGZpbHRlcnMgLSBRdWVyeSBwYXJhbWV0ZXJzIGZvciBmaWx0ZXJpbmcgYW5kIHBhZ2luYXRpb25cbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VCcmFuZHMoe1xuICogICBwYWdlOiAxLFxuICogICBsaW1pdDogMjAsXG4gKiAgIGlzRmVhdHVyZWQ6IHRydWUsXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQnJhbmRzKFxuICBmaWx0ZXJzPzogQnJhbmRGaWx0ZXJzLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8UGFnaW5hdGVkQnJhbmRzUmVzcG9uc2U+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGJyYW5kS2V5cy5saXN0KGZpbHRlcnMpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFBhZ2luYXRlZEJyYW5kc1Jlc3BvbnNlPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9icmFuZHMnLCB7XG4gICAgICAgIHBhcmFtczogZmlsdGVycyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBzaW5nbGUgYnJhbmQgYnkgSURcbiAqXG4gKiBAcGFyYW0gaWQgLSBCcmFuZCBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJyYW5kKCdicmFuZC0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQnJhbmQoXG4gIGlkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxCcmFuZFJlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBicmFuZEtleXMuZGV0YWlsKGlkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxCcmFuZFJlc3BvbnNlPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9icmFuZHMvJHtpZH1gKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFpZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBicmFuZCBieSBpdHMgc2x1Z1xuICpcbiAqIEBwYXJhbSBzbHVnIC0gQnJhbmQgc2x1Z1xuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJyYW5kQnlTbHVnKCd3ZWxsbmVzcy1jbycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCcmFuZEJ5U2x1ZyhcbiAgc2x1Zzogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnJhbmRSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnJhbmRLZXlzLnNsdWcoc2x1ZyksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnJhbmRSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvYnJhbmRzL3NsdWcvJHtzbHVnfWApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIXNsdWcsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGZlYXR1cmVkIGJyYW5kc1xuICpcbiAqIEBwYXJhbSBsaW1pdCAtIE1heGltdW0gbnVtYmVyIG9mIGJyYW5kcyB0byByZXR1cm5cbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VGZWF0dXJlZEJyYW5kcygxMCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUZlYXR1cmVkQnJhbmRzKFxuICBsaW1pdD86IG51bWJlcixcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPEJyYW5kUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnJhbmRLZXlzLmZlYXR1cmVkKCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnJhbmRSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9icmFuZHMvZmVhdHVyZWQnLCB7XG4gICAgICAgIHBhcmFtczogeyBsaW1pdCB9LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBicmFuZCBvd25lcnNcbiAqXG4gKiBAcGFyYW0gYnJhbmRJZCAtIEJyYW5kIElEXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQnJhbmRPd25lcnMoJ2JyYW5kLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCcmFuZE93bmVycyhcbiAgYnJhbmRJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnJhbmRPd25lclJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGJyYW5kS2V5cy5vd25lcnMoYnJhbmRJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnJhbmRPd25lclJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2JyYW5kcy8ke2JyYW5kSWR9L293bmVyc2ApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWJyYW5kSWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGJyYW5kIGNyZWF0b3IgcGFydG5lcnNoaXBzXG4gKlxuICogQHBhcmFtIGJyYW5kSWQgLSBCcmFuZCBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJyYW5kQ3JlYXRvcnMoJ2JyYW5kLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCcmFuZENyZWF0b3JzKFxuICBicmFuZElkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxCcmFuZENyZWF0b3JSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBicmFuZEtleXMuY3JlYXRvcnMoYnJhbmRJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnJhbmRDcmVhdG9yUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvYnJhbmRzLyR7YnJhbmRJZH0vY3JlYXRvcnNgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFicmFuZElkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBicmFuZCByZXdhcmRzXG4gKlxuICogQHBhcmFtIGJyYW5kSWQgLSBCcmFuZCBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJyYW5kUmV3YXJkcygnYnJhbmQtMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUJyYW5kUmV3YXJkcyhcbiAgYnJhbmRJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8UmV3YXJkUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnJhbmRLZXlzLnJld2FyZHMoYnJhbmRJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8UmV3YXJkUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvcmV3YXJkcy9icmFuZC8ke2JyYW5kSWR9YCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhYnJhbmRJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgZXZlbnRzIHNwb25zb3JlZCBieSBhIGJyYW5kXG4gKlxuICogQHBhcmFtIGJyYW5kSWQgLSBCcmFuZCBJRFxuICogQHBhcmFtIHVwY29taW5nIC0gV2hldGhlciB0byBmaWx0ZXIgdG8gdXBjb21pbmcgZXZlbnRzIG9ubHkgKGRlZmF1bHQ6IHRydWUpXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQnJhbmRTcG9uc29yZWRFdmVudHMoJ2JyYW5kLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCcmFuZFNwb25zb3JlZEV2ZW50cyhcbiAgYnJhbmRJZDogc3RyaW5nLFxuICB1cGNvbWluZyA9IHRydWUsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxFdmVudFJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGJyYW5kS2V5cy5ldmVudHMoYnJhbmRJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8RXZlbnRSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9icmFuZHMvJHticmFuZElkfS9ldmVudHNgLCB7XG4gICAgICAgIHBhcmFtczogeyB1cGNvbWluZyB9LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhYnJhbmRJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UseQueryOptions } from '@tanstack/react-query';
|
|
2
|
-
import type { BusinessResponse, OfferResponse } from '../types';
|
|
2
|
+
import type { BusinessResponse, OfferResponse, EventResponse } from '../types';
|
|
3
3
|
export declare const businessKeys: {
|
|
4
4
|
all: readonly ["businesses"];
|
|
5
5
|
lists: () => readonly ["businesses", "list"];
|
|
@@ -9,6 +9,7 @@ export declare const businessKeys: {
|
|
|
9
9
|
featured: () => readonly ["businesses", "featured"];
|
|
10
10
|
nearby: (params?: NearbyBusinessParams) => readonly ["businesses", "nearby", NearbyBusinessParams | undefined];
|
|
11
11
|
offers: (businessId: string) => readonly ["businesses", "detail", string, "offers"];
|
|
12
|
+
events: (businessId: string) => readonly ["businesses", "detail", string, "events"];
|
|
12
13
|
};
|
|
13
14
|
export interface BusinessFilters {
|
|
14
15
|
page?: number;
|
|
@@ -210,3 +211,62 @@ export declare function useBusinessOffers(businessId: string, options?: Omit<Use
|
|
|
210
211
|
createdAt: string;
|
|
211
212
|
updatedAt: string;
|
|
212
213
|
}[], Error>;
|
|
214
|
+
/**
|
|
215
|
+
* Get all events for a specific business
|
|
216
|
+
*
|
|
217
|
+
* @param businessId - Business ID
|
|
218
|
+
* @param options - TanStack Query options
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```tsx
|
|
222
|
+
* const { data, isLoading } = useBusinessEvents('business-123');
|
|
223
|
+
* ```
|
|
224
|
+
*/
|
|
225
|
+
export declare function useBusinessEvents(businessId: string, options?: Omit<UseQueryOptions<EventResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
226
|
+
id: string;
|
|
227
|
+
title: string;
|
|
228
|
+
slug?: Record<string, never>;
|
|
229
|
+
description?: Record<string, never>;
|
|
230
|
+
bannerImage?: Record<string, never>;
|
|
231
|
+
startDate: string;
|
|
232
|
+
endDate?: Record<string, never>;
|
|
233
|
+
timezone?: Record<string, never>;
|
|
234
|
+
isRecurring: boolean;
|
|
235
|
+
recurrenceRule?: Record<string, never>;
|
|
236
|
+
locationName?: Record<string, never>;
|
|
237
|
+
locationAddress?: Record<string, never>;
|
|
238
|
+
locationLat?: Record<string, never>;
|
|
239
|
+
locationLong?: Record<string, never>;
|
|
240
|
+
cityId?: Record<string, never>;
|
|
241
|
+
isOnline: boolean;
|
|
242
|
+
onlineUrl?: Record<string, never>;
|
|
243
|
+
totalSpots: number;
|
|
244
|
+
availableSpots: number;
|
|
245
|
+
isFree: boolean;
|
|
246
|
+
price?: Record<string, never>;
|
|
247
|
+
currency: string;
|
|
248
|
+
hubId?: Record<string, never>;
|
|
249
|
+
venueId?: Record<string, never>;
|
|
250
|
+
creatorId?: Record<string, never>;
|
|
251
|
+
sponsorBrandId?: Record<string, never>;
|
|
252
|
+
gatheringType?: "FACILITATOR_LED" | "COMMUNITY" | "SOCIAL" | "ONLINE";
|
|
253
|
+
visibility: "PUBLIC" | "MEMBERS_ONLY" | "INVITE_ONLY";
|
|
254
|
+
requiresApproval: boolean;
|
|
255
|
+
allowWaitlist: boolean;
|
|
256
|
+
whatsappGroup?: Record<string, never>;
|
|
257
|
+
externalUrl?: Record<string, never>;
|
|
258
|
+
status: "DRAFT" | "PUBLISHED" | "CANCELLED" | "COMPLETED";
|
|
259
|
+
isFeatured: boolean;
|
|
260
|
+
isCancelled: boolean;
|
|
261
|
+
isAmbient: boolean;
|
|
262
|
+
ambientCategory?: Record<string, never>;
|
|
263
|
+
vibe?: "CHILL" | "ACTIVE" | "SOCIAL" | "CREATIVE" | "DEEP_TALK" | "ADVENTURE";
|
|
264
|
+
city?: import("@growsober/types/dist/generated").components["schemas"]["EventCityDto"];
|
|
265
|
+
venue?: import("@growsober/types/dist/generated").components["schemas"]["EventVenueDto"];
|
|
266
|
+
creator?: import("@growsober/types/dist/generated").components["schemas"]["EventCreatorDto"];
|
|
267
|
+
sponsorBrand?: import("@growsober/types/dist/generated").components["schemas"]["EventBrandDto"];
|
|
268
|
+
bookingCount: number;
|
|
269
|
+
checkinCount: number;
|
|
270
|
+
createdAt: string;
|
|
271
|
+
publishedAt?: Record<string, never>;
|
|
272
|
+
}[], Error>;
|
|
@@ -6,6 +6,7 @@ exports.useFeaturedBusinesses = useFeaturedBusinesses;
|
|
|
6
6
|
exports.useNearbyBusinesses = useNearbyBusinesses;
|
|
7
7
|
exports.useBusiness = useBusiness;
|
|
8
8
|
exports.useBusinessOffers = useBusinessOffers;
|
|
9
|
+
exports.useBusinessEvents = useBusinessEvents;
|
|
9
10
|
const react_query_1 = require("@tanstack/react-query");
|
|
10
11
|
const client_1 = require("../client");
|
|
11
12
|
// ============================================================================
|
|
@@ -20,6 +21,7 @@ exports.businessKeys = {
|
|
|
20
21
|
featured: () => [...exports.businessKeys.all, 'featured'],
|
|
21
22
|
nearby: (params) => [...exports.businessKeys.all, 'nearby', params],
|
|
22
23
|
offers: (businessId) => [...exports.businessKeys.detail(businessId), 'offers'],
|
|
24
|
+
events: (businessId) => [...exports.businessKeys.detail(businessId), 'events'],
|
|
23
25
|
};
|
|
24
26
|
// ============================================================================
|
|
25
27
|
// QUERY HOOKS
|
|
@@ -151,4 +153,28 @@ function useBusinessOffers(businessId, options) {
|
|
|
151
153
|
...options,
|
|
152
154
|
});
|
|
153
155
|
}
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcXVlcmllcy9idXNpbmVzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTRFQSxzQ0FlQztBQVlELHNEQVlDO0FBaUJELGtEQWdCQztBQWFELGtDQWNDO0FBYUQsOENBY0M7QUExTUQsdURBQWtFO0FBQ2xFLHNDQUF5QztBQUd6QywrRUFBK0U7QUFDL0Usb0JBQW9CO0FBQ3BCLCtFQUErRTtBQUVsRSxRQUFBLFlBQVksR0FBRztJQUMxQixHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQVU7SUFDNUIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxvQkFBWSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQVU7SUFDbkQsSUFBSSxFQUFFLENBQUMsT0FBeUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG9CQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsT0FBTyxDQUFVO0lBQ2hGLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsb0JBQVksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFVO0lBQ3ZELE1BQU0sRUFBRSxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG9CQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFVO0lBQ2hFLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsb0JBQVksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFVO0lBQzFELE1BQU0sRUFBRSxDQUFDLE1BQTZCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxvQkFBWSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFVO0lBQzNGLE1BQU0sRUFBRSxDQUFDLFVBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxvQkFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLENBQVU7Q0FDeEYsQ0FBQztB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QUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixVQUFVLFNBQVMsQ0FBQyxDQUFDO1lBQzdFLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsQ0FBQyxVQUFVO1FBQ3JCLEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VRdWVyeSwgVXNlUXVlcnlPcHRpb25zIH0gZnJvbSAnQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5JztcbmltcG9ydCB7IGdldEFwaUNsaWVudCB9IGZyb20gJy4uL2NsaWVudCc7XG5pbXBvcnQgdHlwZSB7IEJ1c2luZXNzUmVzcG9uc2UsIE9mZmVyUmVzcG9uc2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFFVRVJZIEtFWSBGQUNUT1JZXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBjb25zdCBidXNpbmVzc0tleXMgPSB7XG4gIGFsbDogWydidXNpbmVzc2VzJ10gYXMgY29uc3QsXG4gIGxpc3RzOiAoKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmFsbCwgJ2xpc3QnXSBhcyBjb25zdCxcbiAgbGlzdDogKGZpbHRlcnM/OiBCdXNpbmVzc0ZpbHRlcnMpID0+IFsuLi5idXNpbmVzc0tleXMubGlzdHMoKSwgZmlsdGVyc10gYXMgY29uc3QsXG4gIGRldGFpbHM6ICgpID0+IFsuLi5idXNpbmVzc0tleXMuYWxsLCAnZGV0YWlsJ10gYXMgY29uc3QsXG4gIGRldGFpbDogKGlkOiBzdHJpbmcpID0+IFsuLi5idXNpbmVzc0tleXMuZGV0YWlscygpLCBpZF0gYXMgY29uc3QsXG4gIGZlYXR1cmVkOiAoKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmFsbCwgJ2ZlYXR1cmVkJ10gYXMgY29uc3QsXG4gIG5lYXJieTogKHBhcmFtcz86IE5lYXJieUJ1c2luZXNzUGFyYW1zKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmFsbCwgJ25lYXJieScsIHBhcmFtc10gYXMgY29uc3QsXG4gIG9mZmVyczogKGJ1c2luZXNzSWQ6IHN0cmluZykgPT4gWy4uLmJ1c2luZXNzS2V5cy5kZXRhaWwoYnVzaW5lc3NJZCksICdvZmZlcnMnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVzaW5lc3NGaWx0ZXJzIHtcbiAgcGFnZT86IG51bWJlcjtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHNlYXJjaD86IHN0cmluZztcbiAgY2l0eUlkPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICBoYXNBZkRyaW5rcz86IGJvb2xlYW47XG4gIGlzQWZWZW51ZT86IGJvb2xlYW47XG4gIGlzRmVhdHVyZWQ/OiBib29sZWFuO1xuICBpc1BhcnRuZXI/OiBib29sZWFuO1xuICBsYXQ/OiBudW1iZXI7XG4gIGxvbmc/OiBudW1iZXI7XG4gIHJhZGl1cz86IG51bWJlcjtcbiAgc29ydEJ5Pzogc3RyaW5nO1xuICBzb3J0T3JkZXI/OiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZWFyYnlCdXNpbmVzc1BhcmFtcyB7XG4gIGxhdDogbnVtYmVyO1xuICBsb25nOiBudW1iZXI7XG4gIHJhZGl1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0ZWRCdXNpbmVzc2VzUmVzcG9uc2Uge1xuICBidXNpbmVzc2VzOiBCdXNpbmVzc1Jlc3BvbnNlW107XG4gIHRvdGFsOiBudW1iZXI7XG4gIHBhZ2U6IG51bWJlcjtcbiAgbGltaXQ6IG51bWJlcjtcbiAgdG90YWxQYWdlczogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBIT09LU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEdldCBwYWdpbmF0ZWQgbGlzdCBvZiBidXNpbmVzc2VzIHdpdGggb3B0aW9uYWwgZmlsdGVyc1xuICpcbiAqIEBwYXJhbSBmaWx0ZXJzIC0gUXVlcnkgcGFyYW1ldGVycyBmb3IgZmlsdGVyaW5nIGFuZCBwYWdpbmF0aW9uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQnVzaW5lc3Nlcyh7XG4gKiAgIHBhZ2U6IDEsXG4gKiAgIGxpbWl0OiAyMCxcbiAqICAgY2l0eUlkOiAnY2l0eS0xMjMnLFxuICogICBoYXNBZkRyaW5rczogdHJ1ZSxcbiAqICAgc29ydEJ5OiAnbmFtZScsXG4gKiAgIHNvcnRPcmRlcjogJ2FzYydcbiAqIH0pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCdXNpbmVzc2VzKFxuICBmaWx0ZXJzPzogQnVzaW5lc3NGaWx0ZXJzLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8UGFnaW5hdGVkQnVzaW5lc3Nlc1Jlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBidXNpbmVzc0tleXMubGlzdChmaWx0ZXJzKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxQYWdpbmF0ZWRCdXNpbmVzc2VzUmVzcG9uc2U+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMnLCB7XG4gICAgICAgIHBhcmFtczogZmlsdGVycyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgZmVhdHVyZWQgYnVzaW5lc3Nlc1xuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VGZWF0dXJlZEJ1c2luZXNzZXMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRmVhdHVyZWRCdXNpbmVzc2VzKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnVzaW5lc3NSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBidXNpbmVzc0tleXMuZmVhdHVyZWQoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxCdXNpbmVzc1Jlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMvZmVhdHVyZWQnKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IG5lYXJieSBidXNpbmVzc2VzIGJhc2VkIG9uIGxvY2F0aW9uXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIExvY2F0aW9uIHBhcmFtZXRlcnMgKGxhdGl0dWRlLCBsb25naXR1ZGUsIHJhZGl1cylcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VOZWFyYnlCdXNpbmVzc2VzKHtcbiAqICAgbGF0OiA1MS41MDc0LFxuICogICBsb25nOiAtMC4xMjc4LFxuICogICByYWRpdXM6IDUwMDAgLy8gNWttIHJhZGl1c1xuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZU5lYXJieUJ1c2luZXNzZXMoXG4gIHBhcmFtczogTmVhcmJ5QnVzaW5lc3NQYXJhbXMsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxCdXNpbmVzc1Jlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGJ1c2luZXNzS2V5cy5uZWFyYnkocGFyYW1zKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxCdXNpbmVzc1Jlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMvbmVhcmJ5Jywge1xuICAgICAgICBwYXJhbXMsXG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFwYXJhbXMubGF0ICYmICEhcGFyYW1zLmxvbmcsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGEgc2luZ2xlIGJ1c2luZXNzIGJ5IElEXG4gKlxuICogQHBhcmFtIGlkIC0gQnVzaW5lc3MgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VCdXNpbmVzcygnYnVzaW5lc3MtMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUJ1c2luZXNzKFxuICBpZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnVzaW5lc3NSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnVzaW5lc3NLZXlzLmRldGFpbChpZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnVzaW5lc3NSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvYnVzaW5lc3Nlcy8ke2lkfWApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWlkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhbGwgb2ZmZXJzIGZvciBhIHNwZWNpZmljIGJ1c2luZXNzXG4gKlxuICogQHBhcmFtIGJ1c2luZXNzSWQgLSBCdXNpbmVzcyBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJ1c2luZXNzT2ZmZXJzKCdidXNpbmVzcy0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQnVzaW5lc3NPZmZlcnMoXG4gIGJ1c2luZXNzSWQ6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPE9mZmVyUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnVzaW5lc3NLZXlzLm9mZmVycyhidXNpbmVzc0lkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxPZmZlclJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2J1c2luZXNzZXMvJHtidXNpbmVzc0lkfS9vZmZlcnNgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFidXNpbmVzc0lkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuIl19
|
|
156
|
+
/**
|
|
157
|
+
* Get all events for a specific business
|
|
158
|
+
*
|
|
159
|
+
* @param businessId - Business ID
|
|
160
|
+
* @param options - TanStack Query options
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```tsx
|
|
164
|
+
* const { data, isLoading } = useBusinessEvents('business-123');
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
function useBusinessEvents(businessId, options) {
|
|
168
|
+
return (0, react_query_1.useQuery)({
|
|
169
|
+
queryKey: exports.businessKeys.events(businessId),
|
|
170
|
+
queryFn: async () => {
|
|
171
|
+
const client = (0, client_1.getApiClient)();
|
|
172
|
+
const response = await client.get(`/api/v1/businesses/${businessId}/events`);
|
|
173
|
+
// Handle wrapped response
|
|
174
|
+
return response.data?.data || response.data || [];
|
|
175
|
+
},
|
|
176
|
+
enabled: !!businessId,
|
|
177
|
+
...options,
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcXVlcmllcy9idXNpbmVzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZFQSxzQ0FlQztBQVlELHNEQVlDO0FBaUJELGtEQWdCQztBQWFELGtDQWNDO0FBYUQsOENBY0M7QUFhRCw4Q0FlQztBQXZPRCx1REFBa0U7QUFDbEUsc0NBQXlDO0FBR3pDLCtFQUErRTtBQUMvRSxvQkFBb0I7QUFDcEIsK0VBQStFO0FBRWxFLFFBQUEsWUFBWSxHQUFHO0lBQzFCLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBVTtJQUM1QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG9CQUFZLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBVTtJQUNuRCxJQUFJLEVBQUUsQ0FBQyxPQUF5QixFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsb0JBQVksQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLENBQVU7SUFDaEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxvQkFBWSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQVU7SUFDdkQsTUFBTSxFQUFFLENBQUMsRUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsb0JBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQVU7SUFDaEUsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxvQkFBWSxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQVU7SUFDMUQsTUFBTSxFQUFFLENBQUMsTUFBNkIsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG9CQUFZLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQVU7SUFDM0YsTUFBTSxFQUFFLENBQUMsVUFBa0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG9CQUFZLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFFBQVEsQ0FBVTtJ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USxFQUFFLG9CQUFZLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUN6QyxPQUFPLEVBQUUsS0FBSyxJQUE4QixFQUFFO1lBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUEscUJBQVksR0FBRSxDQUFDO1lBQzlCLE1BQU0sUUFBUSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsVUFBVSxTQUFTLENBQUMsQ0FBQztZQUM3RSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLENBQUMsVUFBVTtRQUNyQixHQUFHLE9BQU87S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLGlCQUFpQixDQUMvQixVQUFrQixFQUNsQixPQUF3RTtJQUV4RSxPQUFPLElBQUEsc0JBQVEsRUFBQztRQUNkLFFBQVEsRUFBRSxvQkFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDekMsT0FBTyxFQUFFLEtBQUssSUFBOEIsRUFBRTtZQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLFVBQVUsU0FBUyxDQUFDLENBQUM7WUFDN0UsMEJBQTBCO1lBQzFCLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLENBQUMsVUFBVTtRQUNyQixHQUFHLE9BQU87S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlUXVlcnksIFVzZVF1ZXJ5T3B0aW9ucyB9IGZyb20gJ0B0YW5zdGFjay9yZWFjdC1xdWVyeSc7XG5pbXBvcnQgeyBnZXRBcGlDbGllbnQgfSBmcm9tICcuLi9jbGllbnQnO1xuaW1wb3J0IHR5cGUgeyBCdXNpbmVzc1Jlc3BvbnNlLCBPZmZlclJlc3BvbnNlLCBFdmVudFJlc3BvbnNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBLRVkgRkFDVE9SWVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgYnVzaW5lc3NLZXlzID0ge1xuICBhbGw6IFsnYnVzaW5lc3NlcyddIGFzIGNvbnN0LFxuICBsaXN0czogKCkgPT4gWy4uLmJ1c2luZXNzS2V5cy5hbGwsICdsaXN0J10gYXMgY29uc3QsXG4gIGxpc3Q6IChmaWx0ZXJzPzogQnVzaW5lc3NGaWx0ZXJzKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmxpc3RzKCksIGZpbHRlcnNdIGFzIGNvbnN0LFxuICBkZXRhaWxzOiAoKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmFsbCwgJ2RldGFpbCddIGFzIGNvbnN0LFxuICBkZXRhaWw6IChpZDogc3RyaW5nKSA9PiBbLi4uYnVzaW5lc3NLZXlzLmRldGFpbHMoKSwgaWRdIGFzIGNvbnN0LFxuICBmZWF0dXJlZDogKCkgPT4gWy4uLmJ1c2luZXNzS2V5cy5hbGwsICdmZWF0dXJlZCddIGFzIGNvbnN0LFxuICBuZWFyYnk6IChwYXJhbXM/OiBOZWFyYnlCdXNpbmVzc1BhcmFtcykgPT4gWy4uLmJ1c2luZXNzS2V5cy5hbGwsICduZWFyYnknLCBwYXJhbXNdIGFzIGNvbnN0LFxuICBvZmZlcnM6IChidXNpbmVzc0lkOiBzdHJpbmcpID0+IFsuLi5idXNpbmVzc0tleXMuZGV0YWlsKGJ1c2luZXNzSWQpLCAnb2ZmZXJzJ10gYXMgY29uc3QsXG4gIGV2ZW50czogKGJ1c2luZXNzSWQ6IHN0cmluZykgPT4gWy4uLmJ1c2luZXNzS2V5cy5kZXRhaWwoYnVzaW5lc3NJZCksICdldmVudHMnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVzaW5lc3NGaWx0ZXJzIHtcbiAgcGFnZT86IG51bWJlcjtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHNlYXJjaD86IHN0cmluZztcbiAgY2l0eUlkPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICBoYXNBZkRyaW5rcz86IGJvb2xlYW47XG4gIGlzQWZWZW51ZT86IGJvb2xlYW47XG4gIGlzRmVhdHVyZWQ/OiBib29sZWFuO1xuICBpc1BhcnRuZXI/OiBib29sZWFuO1xuICBsYXQ/OiBudW1iZXI7XG4gIGxvbmc/OiBudW1iZXI7XG4gIHJhZGl1cz86IG51bWJlcjtcbiAgc29ydEJ5Pzogc3RyaW5nO1xuICBzb3J0T3JkZXI/OiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZWFyYnlCdXNpbmVzc1BhcmFtcyB7XG4gIGxhdDogbnVtYmVyO1xuICBsb25nOiBudW1iZXI7XG4gIHJhZGl1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0ZWRCdXNpbmVzc2VzUmVzcG9uc2Uge1xuICBidXNpbmVzc2VzOiBCdXNpbmVzc1Jlc3BvbnNlW107XG4gIHRvdGFsOiBudW1iZXI7XG4gIHBhZ2U6IG51bWJlcjtcbiAgbGltaXQ6IG51bWJlcjtcbiAgdG90YWxQYWdlczogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBIT09LU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEdldCBwYWdpbmF0ZWQgbGlzdCBvZiBidXNpbmVzc2VzIHdpdGggb3B0aW9uYWwgZmlsdGVyc1xuICpcbiAqIEBwYXJhbSBmaWx0ZXJzIC0gUXVlcnkgcGFyYW1ldGVycyBmb3IgZmlsdGVyaW5nIGFuZCBwYWdpbmF0aW9uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQnVzaW5lc3Nlcyh7XG4gKiAgIHBhZ2U6IDEsXG4gKiAgIGxpbWl0OiAyMCxcbiAqICAgY2l0eUlkOiAnY2l0eS0xMjMnLFxuICogICBoYXNBZkRyaW5rczogdHJ1ZSxcbiAqICAgc29ydEJ5OiAnbmFtZScsXG4gKiAgIHNvcnRPcmRlcjogJ2FzYydcbiAqIH0pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VCdXNpbmVzc2VzKFxuICBmaWx0ZXJzPzogQnVzaW5lc3NGaWx0ZXJzLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8UGFnaW5hdGVkQnVzaW5lc3Nlc1Jlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBidXNpbmVzc0tleXMubGlzdChmaWx0ZXJzKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxQYWdpbmF0ZWRCdXNpbmVzc2VzUmVzcG9uc2U+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMnLCB7XG4gICAgICAgIHBhcmFtczogZmlsdGVycyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgZmVhdHVyZWQgYnVzaW5lc3Nlc1xuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VGZWF0dXJlZEJ1c2luZXNzZXMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRmVhdHVyZWRCdXNpbmVzc2VzKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnVzaW5lc3NSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBidXNpbmVzc0tleXMuZmVhdHVyZWQoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxCdXNpbmVzc1Jlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMvZmVhdHVyZWQnKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IG5lYXJieSBidXNpbmVzc2VzIGJhc2VkIG9uIGxvY2F0aW9uXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIExvY2F0aW9uIHBhcmFtZXRlcnMgKGxhdGl0dWRlLCBsb25naXR1ZGUsIHJhZGl1cylcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VOZWFyYnlCdXNpbmVzc2VzKHtcbiAqICAgbGF0OiA1MS41MDc0LFxuICogICBsb25nOiAtMC4xMjc4LFxuICogICByYWRpdXM6IDUwMDAgLy8gNWttIHJhZGl1c1xuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZU5lYXJieUJ1c2luZXNzZXMoXG4gIHBhcmFtczogTmVhcmJ5QnVzaW5lc3NQYXJhbXMsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxCdXNpbmVzc1Jlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGJ1c2luZXNzS2V5cy5uZWFyYnkocGFyYW1zKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxCdXNpbmVzc1Jlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL2J1c2luZXNzZXMvbmVhcmJ5Jywge1xuICAgICAgICBwYXJhbXMsXG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFwYXJhbXMubGF0ICYmICEhcGFyYW1zLmxvbmcsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGEgc2luZ2xlIGJ1c2luZXNzIGJ5IElEXG4gKlxuICogQHBhcmFtIGlkIC0gQnVzaW5lc3MgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VCdXNpbmVzcygnYnVzaW5lc3MtMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUJ1c2luZXNzKFxuICBpZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8QnVzaW5lc3NSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnVzaW5lc3NLZXlzLmRldGFpbChpZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8QnVzaW5lc3NSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvYnVzaW5lc3Nlcy8ke2lkfWApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWlkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhbGwgb2ZmZXJzIGZvciBhIHNwZWNpZmljIGJ1c2luZXNzXG4gKlxuICogQHBhcmFtIGJ1c2luZXNzSWQgLSBCdXNpbmVzcyBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJ1c2luZXNzT2ZmZXJzKCdidXNpbmVzcy0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQnVzaW5lc3NPZmZlcnMoXG4gIGJ1c2luZXNzSWQ6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPE9mZmVyUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnVzaW5lc3NLZXlzLm9mZmVycyhidXNpbmVzc0lkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxPZmZlclJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2J1c2luZXNzZXMvJHtidXNpbmVzc0lkfS9vZmZlcnNgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFidXNpbmVzc0lkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhbGwgZXZlbnRzIGZvciBhIHNwZWNpZmljIGJ1c2luZXNzXG4gKlxuICogQHBhcmFtIGJ1c2luZXNzSWQgLSBCdXNpbmVzcyBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUJ1c2luZXNzRXZlbnRzKCdidXNpbmVzcy0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQnVzaW5lc3NFdmVudHMoXG4gIGJ1c2luZXNzSWQ6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPEV2ZW50UmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogYnVzaW5lc3NLZXlzLmV2ZW50cyhidXNpbmVzc0lkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxFdmVudFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2J1c2luZXNzZXMvJHtidXNpbmVzc0lkfS9ldmVudHNgKTtcbiAgICAgIC8vIEhhbmRsZSB3cmFwcGVkIHJlc3BvbnNlXG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YT8uZGF0YSB8fCByZXNwb25zZS5kYXRhIHx8IFtdO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFidXNpbmVzc0lkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuIl19
|