@open-loyalty/mcp-server 1.0.3 → 1.3.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.
- package/README.md +180 -177
- package/dist/auth/provider.js +2 -14
- package/dist/auth/storage.js +22 -0
- package/dist/client/http.d.ts +5 -0
- package/dist/client/http.js +62 -3
- package/dist/config.d.ts +6 -5
- package/dist/config.js +15 -11
- package/dist/http.js +170 -65
- package/dist/instructions.d.ts +5 -0
- package/dist/instructions.js +420 -0
- package/dist/prompts/fan-engagement-setup.d.ts +107 -0
- package/dist/prompts/fan-engagement-setup.js +492 -0
- package/dist/server.d.ts +1 -1
- package/dist/server.js +68 -278
- package/dist/tools/achievement/handlers.d.ts +117 -0
- package/dist/tools/achievement/handlers.js +161 -0
- package/dist/tools/achievement/index.d.ts +479 -0
- package/dist/tools/achievement/index.js +74 -0
- package/dist/tools/achievement/schemas.d.ts +433 -0
- package/dist/tools/achievement/schemas.js +142 -0
- package/dist/tools/achievement.d.ts +155 -121
- package/dist/tools/achievement.js +82 -39
- package/dist/tools/admin.d.ts +18 -6
- package/dist/tools/admin.js +24 -12
- package/dist/tools/analytics.d.ts +29 -11
- package/dist/tools/analytics.js +58 -48
- package/dist/tools/apikey.d.ts +10 -3
- package/dist/tools/apikey.js +13 -6
- package/dist/tools/audit.d.ts +6 -2
- package/dist/tools/audit.js +8 -4
- package/dist/tools/badge.d.ts +14 -6
- package/dist/tools/badge.js +36 -27
- package/dist/tools/campaign/handlers.d.ts +42 -0
- package/dist/tools/campaign/handlers.js +223 -0
- package/dist/tools/campaign/index.d.ts +783 -0
- package/dist/tools/campaign/index.js +112 -0
- package/dist/tools/campaign/member-handlers.d.ts +60 -0
- package/dist/tools/campaign/member-handlers.js +159 -0
- package/dist/tools/campaign/schemas.d.ts +704 -0
- package/dist/tools/campaign/schemas.js +259 -0
- package/dist/tools/campaign/types.d.ts +161 -0
- package/dist/tools/campaign/types.js +2 -0
- package/dist/tools/campaign.d.ts +41 -16
- package/dist/tools/campaign.js +38 -25
- package/dist/tools/custom-event.d.ts +315 -0
- package/dist/tools/custom-event.js +270 -0
- package/dist/tools/export.d.ts +12 -4
- package/dist/tools/export.js +25 -20
- package/dist/tools/import.d.ts +9 -3
- package/dist/tools/import.js +33 -21
- package/dist/tools/index.d.ts +3 -11
- package/dist/tools/index.js +17 -475
- package/dist/tools/member/handlers.d.ts +111 -0
- package/dist/tools/member/handlers.js +206 -0
- package/dist/tools/member/index.d.ts +169 -0
- package/dist/tools/member/index.js +92 -0
- package/dist/tools/member/schemas.d.ts +89 -0
- package/dist/tools/member/schemas.js +65 -0
- package/dist/tools/member.d.ts +21 -0
- package/dist/tools/member.js +56 -62
- package/dist/tools/points.d.ts +19 -6
- package/dist/tools/points.js +51 -49
- package/dist/tools/referral/handlers.d.ts +47 -0
- package/dist/tools/referral/handlers.js +115 -0
- package/dist/tools/referral/index.d.ts +44 -0
- package/dist/tools/referral/index.js +44 -0
- package/dist/tools/referral/schemas.d.ts +34 -0
- package/dist/tools/referral/schemas.js +52 -0
- package/dist/tools/reward/handlers.d.ts +110 -0
- package/dist/tools/reward/handlers.js +289 -0
- package/dist/tools/reward/index.d.ts +177 -0
- package/dist/tools/reward/index.js +90 -0
- package/dist/tools/reward/schemas.d.ts +116 -0
- package/dist/tools/reward/schemas.js +91 -0
- package/dist/tools/reward.d.ts +18 -0
- package/dist/tools/reward.js +56 -66
- package/dist/tools/role.d.ts +26 -7
- package/dist/tools/role.js +25 -12
- package/dist/tools/segment/handlers.d.ts +87 -0
- package/dist/tools/segment/handlers.js +174 -0
- package/dist/tools/segment/index.d.ts +395 -0
- package/dist/tools/segment/index.js +87 -0
- package/dist/tools/segment/schemas.d.ts +337 -0
- package/dist/tools/segment/schemas.js +79 -0
- package/dist/tools/segment.d.ts +29 -10
- package/dist/tools/segment.js +84 -50
- package/dist/tools/store.d.ts +12 -4
- package/dist/tools/store.js +16 -8
- package/dist/tools/tierset.d.ts +19 -7
- package/dist/tools/tierset.js +44 -35
- package/dist/tools/transaction.d.ts +16 -8
- package/dist/tools/transaction.js +25 -21
- package/dist/tools/wallet-type.d.ts +7 -3
- package/dist/tools/wallet-type.js +14 -12
- package/dist/tools/webhook.d.ts +23 -10
- package/dist/tools/webhook.js +135 -33
- package/dist/types/schemas/achievement.d.ts +12 -309
- package/dist/types/schemas/achievement.js +0 -13
- package/dist/types/schemas/admin.d.ts +10 -97
- package/dist/types/schemas/admin.js +0 -38
- package/dist/types/schemas/badge.d.ts +0 -37
- package/dist/types/schemas/badge.js +0 -11
- package/dist/types/schemas/campaign.d.ts +64 -832
- package/dist/types/schemas/campaign.js +2 -25
- package/dist/types/schemas/common.d.ts +5 -0
- package/dist/types/schemas/common.js +5 -0
- package/dist/types/schemas/export.d.ts +0 -17
- package/dist/types/schemas/export.js +0 -7
- package/dist/types/schemas/member.d.ts +37 -176
- package/dist/types/schemas/member.js +0 -27
- package/dist/types/schemas/points.d.ts +0 -63
- package/dist/types/schemas/points.js +0 -22
- package/dist/types/schemas/reward.d.ts +71 -68
- package/dist/types/schemas/reward.js +8 -28
- package/dist/types/schemas/role.d.ts +0 -100
- package/dist/types/schemas/role.js +0 -29
- package/dist/types/schemas/segment.d.ts +0 -58
- package/dist/types/schemas/segment.js +0 -17
- package/dist/types/schemas/tierset.d.ts +0 -176
- package/dist/types/schemas/tierset.js +0 -27
- package/dist/types/schemas/transaction.d.ts +23 -254
- package/dist/types/schemas/transaction.js +0 -7
- package/dist/types/schemas/wallet-type.d.ts +8 -8
- package/dist/types/schemas/wallet-type.js +1 -1
- package/dist/types/schemas/webhook.d.ts +0 -58
- package/dist/types/schemas/webhook.js +0 -12
- package/dist/utils/errors.js +30 -3
- package/dist/utils/payload.d.ts +12 -0
- package/dist/utils/payload.js +14 -0
- package/dist/workflows/app-login-streak.d.ts +39 -0
- package/dist/workflows/app-login-streak.js +298 -0
- package/dist/workflows/early-arrival.d.ts +33 -0
- package/dist/workflows/early-arrival.js +148 -0
- package/dist/workflows/index.d.ts +101 -0
- package/dist/workflows/index.js +208 -0
- package/dist/workflows/match-attendance.d.ts +45 -0
- package/dist/workflows/match-attendance.js +308 -0
- package/dist/workflows/sportsbar-visit.d.ts +41 -0
- package/dist/workflows/sportsbar-visit.js +284 -0
- package/dist/workflows/vod-watching.d.ts +43 -0
- package/dist/workflows/vod-watching.js +326 -0
- package/package.json +10 -2
|
@@ -23,13 +23,8 @@ export const CampaignEffectEnum = z.enum([
|
|
|
23
23
|
"assign_member_custom_attribute",
|
|
24
24
|
"remove_member_custom_attribute",
|
|
25
25
|
]);
|
|
26
|
-
// Points Rule Schema for give_points effect
|
|
27
|
-
export const CampaignPointsRuleSchema = z.
|
|
28
|
-
description: z.string().optional(),
|
|
29
|
-
expression: z.string().optional(),
|
|
30
|
-
multiplier: z.number().optional(),
|
|
31
|
-
fixedValue: z.number().optional(),
|
|
32
|
-
});
|
|
26
|
+
// Points Rule Schema for give_points effect (string expression)
|
|
27
|
+
export const CampaignPointsRuleSchema = z.string();
|
|
33
28
|
// Units Lock Rule Schema
|
|
34
29
|
export const CampaignUnitsLockRuleSchema = z.object({
|
|
35
30
|
lockStrategy: z.enum(["from_wallet", "no_pending", "expression"]).optional(),
|
|
@@ -146,24 +141,6 @@ export const CampaignSchema = z.object({
|
|
|
146
141
|
labels: z.array(CampaignLabelSchema).optional(),
|
|
147
142
|
memberFilter: z.record(z.unknown()).optional(),
|
|
148
143
|
});
|
|
149
|
-
// Campaign Create Input Schema (matches POST body structure)
|
|
150
|
-
export const CampaignCreateInputSchema = z.object({
|
|
151
|
-
type: CampaignTypeEnum,
|
|
152
|
-
trigger: CampaignTriggerEnum,
|
|
153
|
-
translations: TranslationsSchema,
|
|
154
|
-
activity: CampaignActivitySchema,
|
|
155
|
-
rules: z.array(CampaignRuleSchema),
|
|
156
|
-
visibility: CampaignVisibilitySchema.optional(),
|
|
157
|
-
audience: CampaignAudienceSchema.optional(),
|
|
158
|
-
limits: CampaignLimitsSchema.optional(),
|
|
159
|
-
triggerStrategy: CampaignTriggerStrategySchema.optional(),
|
|
160
|
-
transactionItemsFilters: z.array(CampaignTransactionItemsFilterSchema).optional(),
|
|
161
|
-
event: z.string().optional(),
|
|
162
|
-
displayOrder: z.number().optional(),
|
|
163
|
-
active: z.boolean().optional(),
|
|
164
|
-
labels: z.array(CampaignLabelSchema).optional(),
|
|
165
|
-
memberFilter: z.record(z.unknown()).optional(),
|
|
166
|
-
});
|
|
167
144
|
// Campaign List Item Schema (simplified for list responses)
|
|
168
145
|
export const CampaignListItemSchema = z.object({
|
|
169
146
|
campaignId: z.string(),
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Common storeCode schema used across all tools.
|
|
4
|
+
* Extracted to single source of truth to avoid 86+ duplications.
|
|
5
|
+
*/
|
|
6
|
+
export declare const StoreCodeSchema: z.ZodOptional<z.ZodString>;
|
|
2
7
|
/**
|
|
3
8
|
* Common schema for paginated list responses.
|
|
4
9
|
* The Open Loyalty API returns total in varying formats depending on the endpoint:
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Common storeCode schema used across all tools.
|
|
4
|
+
* Extracted to single source of truth to avoid 86+ duplications.
|
|
5
|
+
*/
|
|
6
|
+
export const StoreCodeSchema = z.string().optional().describe("Store code for multi-tenant routing. DO NOT pass this parameter - the configured default will be used automatically. Only provide a value if the user explicitly asks to work with a different store.");
|
|
2
7
|
/**
|
|
3
8
|
* Common schema for paginated list responses.
|
|
4
9
|
* The Open Loyalty API returns total in varying formats depending on the endpoint:
|
|
@@ -108,20 +108,3 @@ export declare const ExportListResponseSchema: z.ZodObject<{
|
|
|
108
108
|
} | undefined;
|
|
109
109
|
}>;
|
|
110
110
|
export type ExportListResponse = z.infer<typeof ExportListResponseSchema>;
|
|
111
|
-
export declare const ExportCreateInputSchema: z.ZodObject<{
|
|
112
|
-
type: z.ZodEnum<["campaignCode", "member", "memberTier", "memberSegment", "rewardFulfillment"]>;
|
|
113
|
-
filters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
114
|
-
page: z.ZodOptional<z.ZodNumber>;
|
|
115
|
-
perPage: z.ZodOptional<z.ZodNumber>;
|
|
116
|
-
}, "strip", z.ZodTypeAny, {
|
|
117
|
-
type: "member" | "campaignCode" | "memberTier" | "memberSegment" | "rewardFulfillment";
|
|
118
|
-
filters?: Record<string, unknown> | undefined;
|
|
119
|
-
page?: number | undefined;
|
|
120
|
-
perPage?: number | undefined;
|
|
121
|
-
}, {
|
|
122
|
-
type: "member" | "campaignCode" | "memberTier" | "memberSegment" | "rewardFulfillment";
|
|
123
|
-
filters?: Record<string, unknown> | undefined;
|
|
124
|
-
page?: number | undefined;
|
|
125
|
-
perPage?: number | undefined;
|
|
126
|
-
}>;
|
|
127
|
-
export type ExportCreateInput = z.infer<typeof ExportCreateInputSchema>;
|
|
@@ -34,10 +34,3 @@ export const ExportListResponseSchema = z.object({
|
|
|
34
34
|
estimated: z.boolean().optional(),
|
|
35
35
|
}).optional(),
|
|
36
36
|
});
|
|
37
|
-
// Export create input schema - filters vary by type
|
|
38
|
-
export const ExportCreateInputSchema = z.object({
|
|
39
|
-
type: ExportTypeEnum.describe("Export type: campaignCode, member, memberTier, memberSegment, rewardFulfillment."),
|
|
40
|
-
filters: z.record(z.unknown()).optional().describe("Type-specific filters. For campaignCode: { campaignId?, code?, status?, codeId?, usedByMemberId?, createdAt?, usedAt? }. For member exports: member-specific filters."),
|
|
41
|
-
page: z.number().optional().describe("Page number for export."),
|
|
42
|
-
perPage: z.number().optional().describe("Items per page for export."),
|
|
43
|
-
});
|
|
@@ -68,20 +68,10 @@ export declare const MemberSchema: z.ZodObject<{
|
|
|
68
68
|
levelName: z.ZodOptional<z.ZodString>;
|
|
69
69
|
points: z.ZodOptional<z.ZodNumber>;
|
|
70
70
|
}, "strip", z.ZodTypeAny, {
|
|
71
|
+
email: string;
|
|
71
72
|
active: boolean;
|
|
72
73
|
memberId: string;
|
|
73
|
-
email: string;
|
|
74
|
-
createdAt?: string | undefined;
|
|
75
|
-
levelId?: string | undefined;
|
|
76
|
-
agreement1?: boolean | undefined;
|
|
77
|
-
agreement2?: boolean | undefined;
|
|
78
|
-
agreement3?: boolean | undefined;
|
|
79
|
-
firstName?: string | undefined;
|
|
80
|
-
lastName?: string | undefined;
|
|
81
74
|
phone?: string | undefined;
|
|
82
|
-
birthDate?: string | undefined;
|
|
83
|
-
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
84
|
-
loyaltyCardNumber?: string | undefined;
|
|
85
75
|
address?: {
|
|
86
76
|
street?: string | undefined;
|
|
87
77
|
city?: string | undefined;
|
|
@@ -89,95 +79,23 @@ export declare const MemberSchema: z.ZodObject<{
|
|
|
89
79
|
country?: string | undefined;
|
|
90
80
|
province?: string | undefined;
|
|
91
81
|
} | undefined;
|
|
92
|
-
|
|
93
|
-
points?: number | undefined;
|
|
94
|
-
}, {
|
|
95
|
-
active: boolean;
|
|
96
|
-
memberId: string;
|
|
97
|
-
email: string;
|
|
98
|
-
createdAt?: string | undefined;
|
|
99
|
-
levelId?: string | undefined;
|
|
100
|
-
agreement1?: boolean | undefined;
|
|
101
|
-
agreement2?: boolean | undefined;
|
|
102
|
-
agreement3?: boolean | undefined;
|
|
82
|
+
loyaltyCardNumber?: string | undefined;
|
|
103
83
|
firstName?: string | undefined;
|
|
104
84
|
lastName?: string | undefined;
|
|
105
|
-
phone?: string | undefined;
|
|
106
85
|
birthDate?: string | undefined;
|
|
107
86
|
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
street?: string | undefined;
|
|
111
|
-
city?: string | undefined;
|
|
112
|
-
postal?: string | undefined;
|
|
113
|
-
country?: string | undefined;
|
|
114
|
-
province?: string | undefined;
|
|
115
|
-
} | undefined;
|
|
116
|
-
levelName?: string | undefined;
|
|
117
|
-
points?: number | undefined;
|
|
118
|
-
}>;
|
|
119
|
-
export declare const MemberCreateInputSchema: z.ZodObject<{
|
|
120
|
-
storeCode: z.ZodOptional<z.ZodString>;
|
|
121
|
-
email: z.ZodString;
|
|
122
|
-
firstName: z.ZodOptional<z.ZodString>;
|
|
123
|
-
lastName: z.ZodOptional<z.ZodString>;
|
|
124
|
-
phone: z.ZodOptional<z.ZodString>;
|
|
125
|
-
birthDate: z.ZodOptional<z.ZodString>;
|
|
126
|
-
gender: z.ZodOptional<z.ZodEnum<["male", "female", "not_disclosed"]>>;
|
|
127
|
-
loyaltyCardNumber: z.ZodOptional<z.ZodString>;
|
|
128
|
-
agreement1: z.ZodOptional<z.ZodBoolean>;
|
|
129
|
-
agreement2: z.ZodOptional<z.ZodBoolean>;
|
|
130
|
-
agreement3: z.ZodOptional<z.ZodBoolean>;
|
|
131
|
-
address: z.ZodOptional<z.ZodObject<{
|
|
132
|
-
street: z.ZodOptional<z.ZodString>;
|
|
133
|
-
city: z.ZodOptional<z.ZodString>;
|
|
134
|
-
postal: z.ZodOptional<z.ZodString>;
|
|
135
|
-
country: z.ZodOptional<z.ZodString>;
|
|
136
|
-
province: z.ZodOptional<z.ZodString>;
|
|
137
|
-
}, "strip", z.ZodTypeAny, {
|
|
138
|
-
street?: string | undefined;
|
|
139
|
-
city?: string | undefined;
|
|
140
|
-
postal?: string | undefined;
|
|
141
|
-
country?: string | undefined;
|
|
142
|
-
province?: string | undefined;
|
|
143
|
-
}, {
|
|
144
|
-
street?: string | undefined;
|
|
145
|
-
city?: string | undefined;
|
|
146
|
-
postal?: string | undefined;
|
|
147
|
-
country?: string | undefined;
|
|
148
|
-
province?: string | undefined;
|
|
149
|
-
}>>;
|
|
150
|
-
}, "strip", z.ZodTypeAny, {
|
|
151
|
-
email: string;
|
|
152
|
-
storeCode?: string | undefined;
|
|
87
|
+
createdAt?: string | undefined;
|
|
88
|
+
levelId?: string | undefined;
|
|
153
89
|
agreement1?: boolean | undefined;
|
|
154
90
|
agreement2?: boolean | undefined;
|
|
155
91
|
agreement3?: boolean | undefined;
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
phone?: string | undefined;
|
|
159
|
-
birthDate?: string | undefined;
|
|
160
|
-
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
161
|
-
loyaltyCardNumber?: string | undefined;
|
|
162
|
-
address?: {
|
|
163
|
-
street?: string | undefined;
|
|
164
|
-
city?: string | undefined;
|
|
165
|
-
postal?: string | undefined;
|
|
166
|
-
country?: string | undefined;
|
|
167
|
-
province?: string | undefined;
|
|
168
|
-
} | undefined;
|
|
92
|
+
levelName?: string | undefined;
|
|
93
|
+
points?: number | undefined;
|
|
169
94
|
}, {
|
|
170
95
|
email: string;
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
agreement2?: boolean | undefined;
|
|
174
|
-
agreement3?: boolean | undefined;
|
|
175
|
-
firstName?: string | undefined;
|
|
176
|
-
lastName?: string | undefined;
|
|
96
|
+
active: boolean;
|
|
97
|
+
memberId: string;
|
|
177
98
|
phone?: string | undefined;
|
|
178
|
-
birthDate?: string | undefined;
|
|
179
|
-
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
180
|
-
loyaltyCardNumber?: string | undefined;
|
|
181
99
|
address?: {
|
|
182
100
|
street?: string | undefined;
|
|
183
101
|
city?: string | undefined;
|
|
@@ -185,73 +103,18 @@ export declare const MemberCreateInputSchema: z.ZodObject<{
|
|
|
185
103
|
country?: string | undefined;
|
|
186
104
|
province?: string | undefined;
|
|
187
105
|
} | undefined;
|
|
188
|
-
|
|
189
|
-
export declare const MemberUpdateInputSchema: z.ZodObject<{
|
|
190
|
-
storeCode: z.ZodOptional<z.ZodString>;
|
|
191
|
-
memberId: z.ZodString;
|
|
192
|
-
firstName: z.ZodOptional<z.ZodString>;
|
|
193
|
-
lastName: z.ZodOptional<z.ZodString>;
|
|
194
|
-
phone: z.ZodOptional<z.ZodString>;
|
|
195
|
-
birthDate: z.ZodOptional<z.ZodString>;
|
|
196
|
-
gender: z.ZodOptional<z.ZodEnum<["male", "female", "not_disclosed"]>>;
|
|
197
|
-
address: z.ZodOptional<z.ZodObject<{
|
|
198
|
-
street: z.ZodOptional<z.ZodString>;
|
|
199
|
-
city: z.ZodOptional<z.ZodString>;
|
|
200
|
-
postal: z.ZodOptional<z.ZodString>;
|
|
201
|
-
country: z.ZodOptional<z.ZodString>;
|
|
202
|
-
province: z.ZodOptional<z.ZodString>;
|
|
203
|
-
}, "strip", z.ZodTypeAny, {
|
|
204
|
-
street?: string | undefined;
|
|
205
|
-
city?: string | undefined;
|
|
206
|
-
postal?: string | undefined;
|
|
207
|
-
country?: string | undefined;
|
|
208
|
-
province?: string | undefined;
|
|
209
|
-
}, {
|
|
210
|
-
street?: string | undefined;
|
|
211
|
-
city?: string | undefined;
|
|
212
|
-
postal?: string | undefined;
|
|
213
|
-
country?: string | undefined;
|
|
214
|
-
province?: string | undefined;
|
|
215
|
-
}>>;
|
|
216
|
-
agreement1: z.ZodOptional<z.ZodBoolean>;
|
|
217
|
-
agreement2: z.ZodOptional<z.ZodBoolean>;
|
|
218
|
-
agreement3: z.ZodOptional<z.ZodBoolean>;
|
|
219
|
-
}, "strip", z.ZodTypeAny, {
|
|
220
|
-
memberId: string;
|
|
221
|
-
storeCode?: string | undefined;
|
|
222
|
-
agreement1?: boolean | undefined;
|
|
223
|
-
agreement2?: boolean | undefined;
|
|
224
|
-
agreement3?: boolean | undefined;
|
|
106
|
+
loyaltyCardNumber?: string | undefined;
|
|
225
107
|
firstName?: string | undefined;
|
|
226
108
|
lastName?: string | undefined;
|
|
227
|
-
phone?: string | undefined;
|
|
228
109
|
birthDate?: string | undefined;
|
|
229
110
|
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
city?: string | undefined;
|
|
233
|
-
postal?: string | undefined;
|
|
234
|
-
country?: string | undefined;
|
|
235
|
-
province?: string | undefined;
|
|
236
|
-
} | undefined;
|
|
237
|
-
}, {
|
|
238
|
-
memberId: string;
|
|
239
|
-
storeCode?: string | undefined;
|
|
111
|
+
createdAt?: string | undefined;
|
|
112
|
+
levelId?: string | undefined;
|
|
240
113
|
agreement1?: boolean | undefined;
|
|
241
114
|
agreement2?: boolean | undefined;
|
|
242
115
|
agreement3?: boolean | undefined;
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
phone?: string | undefined;
|
|
246
|
-
birthDate?: string | undefined;
|
|
247
|
-
gender?: "male" | "female" | "not_disclosed" | undefined;
|
|
248
|
-
address?: {
|
|
249
|
-
street?: string | undefined;
|
|
250
|
-
city?: string | undefined;
|
|
251
|
-
postal?: string | undefined;
|
|
252
|
-
country?: string | undefined;
|
|
253
|
-
province?: string | undefined;
|
|
254
|
-
} | undefined;
|
|
116
|
+
levelName?: string | undefined;
|
|
117
|
+
points?: number | undefined;
|
|
255
118
|
}>;
|
|
256
119
|
export declare const MemberListItemSchema: z.ZodObject<{
|
|
257
120
|
customerId: z.ZodString;
|
|
@@ -266,28 +129,28 @@ export declare const MemberListItemSchema: z.ZodObject<{
|
|
|
266
129
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
267
130
|
registeredAt: z.ZodOptional<z.ZodString>;
|
|
268
131
|
}, "strip", z.ZodTypeAny, {
|
|
269
|
-
active: boolean;
|
|
270
132
|
email: string;
|
|
133
|
+
active: boolean;
|
|
271
134
|
customerId: string;
|
|
272
|
-
|
|
135
|
+
phone?: string | undefined;
|
|
136
|
+
loyaltyCardNumber?: string | undefined;
|
|
273
137
|
firstName?: string | undefined;
|
|
274
138
|
lastName?: string | undefined;
|
|
275
|
-
phone?: string | undefined;
|
|
276
139
|
birthDate?: string | undefined;
|
|
277
140
|
gender?: string | undefined;
|
|
278
|
-
|
|
141
|
+
createdAt?: string | undefined;
|
|
279
142
|
registeredAt?: string | undefined;
|
|
280
143
|
}, {
|
|
281
|
-
active: boolean;
|
|
282
144
|
email: string;
|
|
145
|
+
active: boolean;
|
|
283
146
|
customerId: string;
|
|
284
|
-
|
|
147
|
+
phone?: string | undefined;
|
|
148
|
+
loyaltyCardNumber?: string | undefined;
|
|
285
149
|
firstName?: string | undefined;
|
|
286
150
|
lastName?: string | undefined;
|
|
287
|
-
phone?: string | undefined;
|
|
288
151
|
birthDate?: string | undefined;
|
|
289
152
|
gender?: string | undefined;
|
|
290
|
-
|
|
153
|
+
createdAt?: string | undefined;
|
|
291
154
|
registeredAt?: string | undefined;
|
|
292
155
|
}>;
|
|
293
156
|
export declare const MemberListResponseSchema: z.ZodObject<{
|
|
@@ -304,28 +167,28 @@ export declare const MemberListResponseSchema: z.ZodObject<{
|
|
|
304
167
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
305
168
|
registeredAt: z.ZodOptional<z.ZodString>;
|
|
306
169
|
}, "strip", z.ZodTypeAny, {
|
|
307
|
-
active: boolean;
|
|
308
170
|
email: string;
|
|
171
|
+
active: boolean;
|
|
309
172
|
customerId: string;
|
|
310
|
-
|
|
173
|
+
phone?: string | undefined;
|
|
174
|
+
loyaltyCardNumber?: string | undefined;
|
|
311
175
|
firstName?: string | undefined;
|
|
312
176
|
lastName?: string | undefined;
|
|
313
|
-
phone?: string | undefined;
|
|
314
177
|
birthDate?: string | undefined;
|
|
315
178
|
gender?: string | undefined;
|
|
316
|
-
|
|
179
|
+
createdAt?: string | undefined;
|
|
317
180
|
registeredAt?: string | undefined;
|
|
318
181
|
}, {
|
|
319
|
-
active: boolean;
|
|
320
182
|
email: string;
|
|
183
|
+
active: boolean;
|
|
321
184
|
customerId: string;
|
|
322
|
-
|
|
185
|
+
phone?: string | undefined;
|
|
186
|
+
loyaltyCardNumber?: string | undefined;
|
|
323
187
|
firstName?: string | undefined;
|
|
324
188
|
lastName?: string | undefined;
|
|
325
|
-
phone?: string | undefined;
|
|
326
189
|
birthDate?: string | undefined;
|
|
327
190
|
gender?: string | undefined;
|
|
328
|
-
|
|
191
|
+
createdAt?: string | undefined;
|
|
329
192
|
registeredAt?: string | undefined;
|
|
330
193
|
}>, "many">;
|
|
331
194
|
total: z.ZodObject<{
|
|
@@ -343,16 +206,16 @@ export declare const MemberListResponseSchema: z.ZodObject<{
|
|
|
343
206
|
}, z.ZodTypeAny, "passthrough">>;
|
|
344
207
|
}, "strip", z.ZodTypeAny, {
|
|
345
208
|
items: {
|
|
346
|
-
active: boolean;
|
|
347
209
|
email: string;
|
|
210
|
+
active: boolean;
|
|
348
211
|
customerId: string;
|
|
349
|
-
|
|
212
|
+
phone?: string | undefined;
|
|
213
|
+
loyaltyCardNumber?: string | undefined;
|
|
350
214
|
firstName?: string | undefined;
|
|
351
215
|
lastName?: string | undefined;
|
|
352
|
-
phone?: string | undefined;
|
|
353
216
|
birthDate?: string | undefined;
|
|
354
217
|
gender?: string | undefined;
|
|
355
|
-
|
|
218
|
+
createdAt?: string | undefined;
|
|
356
219
|
registeredAt?: string | undefined;
|
|
357
220
|
}[];
|
|
358
221
|
total: {
|
|
@@ -364,16 +227,16 @@ export declare const MemberListResponseSchema: z.ZodObject<{
|
|
|
364
227
|
};
|
|
365
228
|
}, {
|
|
366
229
|
items: {
|
|
367
|
-
active: boolean;
|
|
368
230
|
email: string;
|
|
231
|
+
active: boolean;
|
|
369
232
|
customerId: string;
|
|
370
|
-
|
|
233
|
+
phone?: string | undefined;
|
|
234
|
+
loyaltyCardNumber?: string | undefined;
|
|
371
235
|
firstName?: string | undefined;
|
|
372
236
|
lastName?: string | undefined;
|
|
373
|
-
phone?: string | undefined;
|
|
374
237
|
birthDate?: string | undefined;
|
|
375
238
|
gender?: string | undefined;
|
|
376
|
-
|
|
239
|
+
createdAt?: string | undefined;
|
|
377
240
|
registeredAt?: string | undefined;
|
|
378
241
|
}[];
|
|
379
242
|
total: {
|
|
@@ -436,8 +299,6 @@ export declare const MemberTierProgressSchema: z.ZodObject<{
|
|
|
436
299
|
export type MemberAddress = z.infer<typeof MemberAddressSchema>;
|
|
437
300
|
export type MemberAgreement = z.infer<typeof MemberAgreementSchema>;
|
|
438
301
|
export type Member = z.infer<typeof MemberSchema>;
|
|
439
|
-
export type MemberCreateInput = z.infer<typeof MemberCreateInputSchema>;
|
|
440
|
-
export type MemberUpdateInput = z.infer<typeof MemberUpdateInputSchema>;
|
|
441
302
|
export type MemberListItem = z.infer<typeof MemberListItemSchema>;
|
|
442
303
|
export type MemberListResponse = z.infer<typeof MemberListResponseSchema>;
|
|
443
304
|
export type MemberTierProgress = z.infer<typeof MemberTierProgressSchema>;
|
|
@@ -31,33 +31,6 @@ export const MemberSchema = z.object({
|
|
|
31
31
|
levelName: z.string().optional(),
|
|
32
32
|
points: z.number().optional(),
|
|
33
33
|
});
|
|
34
|
-
export const MemberCreateInputSchema = z.object({
|
|
35
|
-
storeCode: z.string().optional(),
|
|
36
|
-
email: z.string().email(),
|
|
37
|
-
firstName: z.string().optional(),
|
|
38
|
-
lastName: z.string().optional(),
|
|
39
|
-
phone: z.string().optional(),
|
|
40
|
-
birthDate: z.string().optional(),
|
|
41
|
-
gender: z.enum(["male", "female", "not_disclosed"]).optional(),
|
|
42
|
-
loyaltyCardNumber: z.string().optional(),
|
|
43
|
-
agreement1: z.boolean().optional(),
|
|
44
|
-
agreement2: z.boolean().optional(),
|
|
45
|
-
agreement3: z.boolean().optional(),
|
|
46
|
-
address: MemberAddressSchema.optional(),
|
|
47
|
-
});
|
|
48
|
-
export const MemberUpdateInputSchema = z.object({
|
|
49
|
-
storeCode: z.string().optional(),
|
|
50
|
-
memberId: z.string(),
|
|
51
|
-
firstName: z.string().optional(),
|
|
52
|
-
lastName: z.string().optional(),
|
|
53
|
-
phone: z.string().optional(),
|
|
54
|
-
birthDate: z.string().optional(),
|
|
55
|
-
gender: z.enum(["male", "female", "not_disclosed"]).optional(),
|
|
56
|
-
address: MemberAddressSchema.optional(),
|
|
57
|
-
agreement1: z.boolean().optional(),
|
|
58
|
-
agreement2: z.boolean().optional(),
|
|
59
|
-
agreement3: z.boolean().optional(),
|
|
60
|
-
});
|
|
61
34
|
// API uses customerId not memberId in responses
|
|
62
35
|
export const MemberListItemSchema = z.object({
|
|
63
36
|
customerId: z.string(),
|
|
@@ -50,66 +50,6 @@ export declare const PointsBalanceSchema: z.ZodObject<{
|
|
|
50
50
|
transferredUnits?: number | undefined;
|
|
51
51
|
blockedUnits?: number | undefined;
|
|
52
52
|
}>;
|
|
53
|
-
export declare const PointsAddInputSchema: z.ZodObject<{
|
|
54
|
-
storeCode: z.ZodOptional<z.ZodString>;
|
|
55
|
-
memberId: z.ZodString;
|
|
56
|
-
points: z.ZodNumber;
|
|
57
|
-
walletCode: z.ZodOptional<z.ZodString>;
|
|
58
|
-
comment: z.ZodOptional<z.ZodString>;
|
|
59
|
-
expiresInDays: z.ZodOptional<z.ZodNumber>;
|
|
60
|
-
lockedUntilDays: z.ZodOptional<z.ZodNumber>;
|
|
61
|
-
}, "strip", z.ZodTypeAny, {
|
|
62
|
-
memberId: string;
|
|
63
|
-
points: number;
|
|
64
|
-
storeCode?: string | undefined;
|
|
65
|
-
comment?: string | undefined;
|
|
66
|
-
walletCode?: string | undefined;
|
|
67
|
-
expiresInDays?: number | undefined;
|
|
68
|
-
lockedUntilDays?: number | undefined;
|
|
69
|
-
}, {
|
|
70
|
-
memberId: string;
|
|
71
|
-
points: number;
|
|
72
|
-
storeCode?: string | undefined;
|
|
73
|
-
comment?: string | undefined;
|
|
74
|
-
walletCode?: string | undefined;
|
|
75
|
-
expiresInDays?: number | undefined;
|
|
76
|
-
lockedUntilDays?: number | undefined;
|
|
77
|
-
}>;
|
|
78
|
-
export declare const PointsSpendInputSchema: z.ZodObject<{
|
|
79
|
-
storeCode: z.ZodOptional<z.ZodString>;
|
|
80
|
-
memberId: z.ZodString;
|
|
81
|
-
points: z.ZodNumber;
|
|
82
|
-
walletCode: z.ZodOptional<z.ZodString>;
|
|
83
|
-
comment: z.ZodOptional<z.ZodString>;
|
|
84
|
-
}, "strip", z.ZodTypeAny, {
|
|
85
|
-
memberId: string;
|
|
86
|
-
points: number;
|
|
87
|
-
storeCode?: string | undefined;
|
|
88
|
-
comment?: string | undefined;
|
|
89
|
-
walletCode?: string | undefined;
|
|
90
|
-
}, {
|
|
91
|
-
memberId: string;
|
|
92
|
-
points: number;
|
|
93
|
-
storeCode?: string | undefined;
|
|
94
|
-
comment?: string | undefined;
|
|
95
|
-
walletCode?: string | undefined;
|
|
96
|
-
}>;
|
|
97
|
-
export declare const PointsTransferInputSchema: z.ZodObject<{
|
|
98
|
-
storeCode: z.ZodOptional<z.ZodString>;
|
|
99
|
-
senderId: z.ZodString;
|
|
100
|
-
receiverId: z.ZodString;
|
|
101
|
-
points: z.ZodNumber;
|
|
102
|
-
}, "strip", z.ZodTypeAny, {
|
|
103
|
-
points: number;
|
|
104
|
-
senderId: string;
|
|
105
|
-
receiverId: string;
|
|
106
|
-
storeCode?: string | undefined;
|
|
107
|
-
}, {
|
|
108
|
-
points: number;
|
|
109
|
-
senderId: string;
|
|
110
|
-
receiverId: string;
|
|
111
|
-
storeCode?: string | undefined;
|
|
112
|
-
}>;
|
|
113
53
|
export declare const PointsHistoryResponseSchema: z.ZodObject<{
|
|
114
54
|
items: z.ZodArray<z.ZodObject<{
|
|
115
55
|
transferId: z.ZodString;
|
|
@@ -182,7 +122,4 @@ export declare const PointsHistoryResponseSchema: z.ZodObject<{
|
|
|
182
122
|
export type PointsTransferType = z.infer<typeof PointsTransferTypeEnum>;
|
|
183
123
|
export type PointsTransfer = z.infer<typeof PointsTransferSchema>;
|
|
184
124
|
export type PointsBalance = z.infer<typeof PointsBalanceSchema>;
|
|
185
|
-
export type PointsAddInput = z.infer<typeof PointsAddInputSchema>;
|
|
186
|
-
export type PointsSpendInput = z.infer<typeof PointsSpendInputSchema>;
|
|
187
|
-
export type PointsTransferInput = z.infer<typeof PointsTransferInputSchema>;
|
|
188
125
|
export type PointsHistoryResponse = z.infer<typeof PointsHistoryResponseSchema>;
|
|
@@ -26,28 +26,6 @@ export const PointsBalanceSchema = z.object({
|
|
|
26
26
|
transferredUnits: z.number().optional(),
|
|
27
27
|
blockedUnits: z.number().optional(),
|
|
28
28
|
});
|
|
29
|
-
export const PointsAddInputSchema = z.object({
|
|
30
|
-
storeCode: z.string().optional(),
|
|
31
|
-
memberId: z.string(),
|
|
32
|
-
points: z.number(),
|
|
33
|
-
walletCode: z.string().optional(),
|
|
34
|
-
comment: z.string().optional(),
|
|
35
|
-
expiresInDays: z.number().optional(),
|
|
36
|
-
lockedUntilDays: z.number().optional(),
|
|
37
|
-
});
|
|
38
|
-
export const PointsSpendInputSchema = z.object({
|
|
39
|
-
storeCode: z.string().optional(),
|
|
40
|
-
memberId: z.string(),
|
|
41
|
-
points: z.number(),
|
|
42
|
-
walletCode: z.string().optional(),
|
|
43
|
-
comment: z.string().optional(),
|
|
44
|
-
});
|
|
45
|
-
export const PointsTransferInputSchema = z.object({
|
|
46
|
-
storeCode: z.string().optional(),
|
|
47
|
-
senderId: z.string(),
|
|
48
|
-
receiverId: z.string(),
|
|
49
|
-
points: z.number(),
|
|
50
|
-
});
|
|
51
29
|
export const PointsHistoryResponseSchema = z.object({
|
|
52
30
|
items: z.array(PointsTransferSchema),
|
|
53
31
|
total: TotalSchema,
|