@rhinosaas/rebillia-mcp-server 1.0.6 → 1.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -3
- package/dist/services/subscriptionFromProductRatePlan.d.ts +22 -0
- package/dist/services/subscriptionFromProductRatePlan.d.ts.map +1 -0
- package/dist/services/subscriptionFromProductRatePlan.js +212 -0
- package/dist/services/subscriptionFromProductRatePlan.js.map +1 -0
- package/dist/services/subscriptionServices.d.ts +14 -0
- package/dist/services/subscriptionServices.d.ts.map +1 -1
- package/dist/services/subscriptionServices.js +4 -0
- package/dist/services/subscriptionServices.js.map +1 -1
- package/dist/tools/subscriptions/createSubscription.d.ts.map +1 -1
- package/dist/tools/subscriptions/createSubscription.js +17 -60
- package/dist/tools/subscriptions/createSubscription.js.map +1 -1
- package/dist/tools/subscriptions/createSubscriptionFlow.d.ts +5 -0
- package/dist/tools/subscriptions/createSubscriptionFlow.d.ts.map +1 -0
- package/dist/tools/subscriptions/createSubscriptionFlow.js +549 -0
- package/dist/tools/subscriptions/createSubscriptionFlow.js.map +1 -0
- package/dist/tools/subscriptions/index.d.ts +1 -2
- package/dist/tools/subscriptions/index.d.ts.map +1 -1
- package/dist/tools/subscriptions/index.js +1 -4
- package/dist/tools/subscriptions/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -220,17 +220,16 @@ Responses are JSON from the Rebillia Public API (paginated for list endpoints, s
|
|
|
220
220
|
| `update_product_rate_plan_charge` | Update product rate plan charge by ID. |
|
|
221
221
|
| `delete_product_rate_plan_charge` | Delete product rate plan charge by ID. |
|
|
222
222
|
|
|
223
|
-
#### Subscriptions (
|
|
223
|
+
#### Subscriptions (19 tools)
|
|
224
224
|
|
|
225
225
|
| Tool | Description |
|
|
226
226
|
|------|-------------|
|
|
227
227
|
| `list_subscriptions` | List subscriptions (include, status, query, orderBy, sortBy, itemPerPage, pageNo). |
|
|
228
228
|
| `get_subscription` | Get subscription by ID. |
|
|
229
|
-
| `create_subscription` | Create subscription (customerId,
|
|
229
|
+
| `create_subscription` | Create subscription from product rate plan (productRatePlanId, customerId, customerPaymentMethodId, billingAddressId, effectiveStartDate). |
|
|
230
230
|
| `update_subscription` | Update subscription by ID. |
|
|
231
231
|
| `delete_subscription` | Delete subscription by ID. |
|
|
232
232
|
| `update_subscription_status` | Update status (e.g. archived). |
|
|
233
|
-
| `get_subscription_next_bill` | Preview next bill. |
|
|
234
233
|
| `get_subscription_upcoming_charges` | Upcoming charges. |
|
|
235
234
|
| `get_subscription_invoices` | Invoices for subscription. |
|
|
236
235
|
| `get_subscription_logs` | Logs for subscription. |
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build create-subscription ratePlan[] from catalog: GET product-rateplan + list/get product-rateplan-charges.
|
|
3
|
+
*/
|
|
4
|
+
import type { SubscriptionRatePlanChargeItem, SubscriptionRatePlanItem } from "./subscriptionServices.js";
|
|
5
|
+
export type Client = InstanceType<typeof import("../client.js").default>;
|
|
6
|
+
/**
|
|
7
|
+
* Map GET /product-rateplan-charges/{id} body to subscription create ratePlanCharge item.
|
|
8
|
+
*/
|
|
9
|
+
export declare function mapProductChargeGetToSubscriptionCharge(full: unknown, planNameFallback: string): SubscriptionRatePlanChargeItem;
|
|
10
|
+
export interface BuildRatePlanFromCatalogOptions {
|
|
11
|
+
productRatePlanId: number;
|
|
12
|
+
/** If set, verifies the product rate plan belongs to this product and GETs product to ensure it exists. */
|
|
13
|
+
productId?: number;
|
|
14
|
+
/** When false, only attach the product rate plan (no ratePlanCharge array). Default true. */
|
|
15
|
+
includeCharges?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Build a single subscription ratePlan item from catalog APIs (product rate plan + charges).
|
|
19
|
+
*/
|
|
20
|
+
export declare function buildSubscriptionRatePlanFromCatalog(client: Client, opts: BuildRatePlanFromCatalogOptions): Promise<SubscriptionRatePlanItem[]>;
|
|
21
|
+
export declare function resolveProductRatePlanIdByName(client: Client, productId: string, productRatePlanName: string): Promise<number>;
|
|
22
|
+
//# sourceMappingURL=subscriptionFromProductRatePlan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscriptionFromProductRatePlan.d.ts","sourceRoot":"","sources":["../../src/services/subscriptionFromProductRatePlan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAK1G,MAAM,MAAM,MAAM,GAAG,YAAY,CAAC,cAAc,cAAc,EAAE,OAAO,CAAC,CAAC;AAuEzE;;GAEG;AACH,wBAAgB,uCAAuC,CACrD,IAAI,EAAE,OAAO,EACb,gBAAgB,EAAE,MAAM,GACvB,8BAA8B,CAoChC;AAoBD,MAAM,WAAW,+BAA+B;IAC9C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,2GAA2G;IAC3G,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6FAA6F;IAC7F,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAsB,oCAAoC,CACxD,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,+BAA+B,GACpC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CA+CrC;AAED,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build create-subscription ratePlan[] from catalog: GET product-rateplan + list/get product-rateplan-charges.
|
|
3
|
+
*/
|
|
4
|
+
import * as productRatePlanService from "./productRatePlanServices.js";
|
|
5
|
+
import * as productRatePlanChargeService from "./productRatePlanChargeServices.js";
|
|
6
|
+
import * as productService from "./productServices.js";
|
|
7
|
+
function extractDataArray(raw) {
|
|
8
|
+
if (!raw || typeof raw !== "object")
|
|
9
|
+
return [];
|
|
10
|
+
const o = raw;
|
|
11
|
+
if (Array.isArray(o.data)) {
|
|
12
|
+
return o.data.filter((x) => x != null && typeof x === "object");
|
|
13
|
+
}
|
|
14
|
+
return [];
|
|
15
|
+
}
|
|
16
|
+
function extractPlanName(raw) {
|
|
17
|
+
if (!raw || typeof raw !== "object")
|
|
18
|
+
return null;
|
|
19
|
+
const n = raw.name;
|
|
20
|
+
return typeof n === "string" && n.trim() ? n.trim() : null;
|
|
21
|
+
}
|
|
22
|
+
function extractProductIdFromRatePlan(raw) {
|
|
23
|
+
if (!raw || typeof raw !== "object")
|
|
24
|
+
return null;
|
|
25
|
+
const o = raw;
|
|
26
|
+
if (typeof o.productId === "number")
|
|
27
|
+
return o.productId;
|
|
28
|
+
const p = o.product;
|
|
29
|
+
if (p && typeof p === "object" && !Array.isArray(p)) {
|
|
30
|
+
const id = p.id;
|
|
31
|
+
if (typeof id === "number")
|
|
32
|
+
return id;
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
function extractChargeListId(row) {
|
|
37
|
+
if (typeof row.id === "number")
|
|
38
|
+
return row.id;
|
|
39
|
+
if (typeof row.productRatePlanChargeId === "number")
|
|
40
|
+
return row.productRatePlanChargeId;
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
function extractIdFromRatePlanRow(row) {
|
|
44
|
+
if (typeof row.id === "number")
|
|
45
|
+
return row.id;
|
|
46
|
+
if (typeof row.productRatePlanId === "number")
|
|
47
|
+
return row.productRatePlanId;
|
|
48
|
+
if (typeof row.ratePlanId === "number")
|
|
49
|
+
return row.ratePlanId;
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
function extractNameFromRatePlanRow(row) {
|
|
53
|
+
const n = row.name;
|
|
54
|
+
if (typeof n === "string" && n.trim())
|
|
55
|
+
return n.trim();
|
|
56
|
+
const alt = row.ratePlanName;
|
|
57
|
+
if (typeof alt === "string" && alt.trim())
|
|
58
|
+
return alt.trim();
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
/** Skip nested relations; keep scalars, arrays (chargeTier), and nulls. */
|
|
62
|
+
const RELATION_KEYS = new Set([
|
|
63
|
+
"productRateplan",
|
|
64
|
+
"productRatePlan",
|
|
65
|
+
"product",
|
|
66
|
+
"rateplan",
|
|
67
|
+
"company",
|
|
68
|
+
"customer",
|
|
69
|
+
]);
|
|
70
|
+
function normalizeTierForSubscription(tier) {
|
|
71
|
+
return {
|
|
72
|
+
startingUnit: tier.startingUnit ?? tier.starting_unit ?? null,
|
|
73
|
+
endingUnit: tier.endingUnit ?? tier.ending_unit ?? null,
|
|
74
|
+
currency: String(tier.currency ?? tier.iso3 ?? "USD"),
|
|
75
|
+
price: typeof tier.price === "number" ? tier.price : 0,
|
|
76
|
+
priceFormat: tier.priceFormat ?? tier.price_format ?? "",
|
|
77
|
+
tier: typeof tier.tier === "number" ? tier.tier : undefined,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Map GET /product-rateplan-charges/{id} body to subscription create ratePlanCharge item.
|
|
82
|
+
*/
|
|
83
|
+
export function mapProductChargeGetToSubscriptionCharge(full, planNameFallback) {
|
|
84
|
+
if (!full || typeof full !== "object") {
|
|
85
|
+
return { quantity: 1, name: planNameFallback };
|
|
86
|
+
}
|
|
87
|
+
const o = full;
|
|
88
|
+
const out = {};
|
|
89
|
+
for (const [k, v] of Object.entries(o)) {
|
|
90
|
+
if (RELATION_KEYS.has(k))
|
|
91
|
+
continue;
|
|
92
|
+
if (k === "chargeTier") {
|
|
93
|
+
if (Array.isArray(v)) {
|
|
94
|
+
out.chargeTier = v.map((t) => normalizeTierForSubscription(t != null && typeof t === "object" ? t : {}));
|
|
95
|
+
}
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
if (v !== null && typeof v === "object" && !Array.isArray(v))
|
|
99
|
+
continue;
|
|
100
|
+
out[k] = v;
|
|
101
|
+
}
|
|
102
|
+
const id = o.id;
|
|
103
|
+
if (typeof id === "number") {
|
|
104
|
+
out.productRatePlanChargeId = id;
|
|
105
|
+
}
|
|
106
|
+
delete out.id;
|
|
107
|
+
if (out.quantity === undefined)
|
|
108
|
+
out.quantity = 1;
|
|
109
|
+
const nm = out.name;
|
|
110
|
+
if (nm === undefined || nm === null || nm === "") {
|
|
111
|
+
out.name = typeof o.name === "string" && o.name.trim() ? o.name : planNameFallback;
|
|
112
|
+
}
|
|
113
|
+
return out;
|
|
114
|
+
}
|
|
115
|
+
async function fetchAllChargeSummaries(client, ratePlanId) {
|
|
116
|
+
const all = [];
|
|
117
|
+
let pageNo = 1;
|
|
118
|
+
const itemPerPage = 250;
|
|
119
|
+
for (;;) {
|
|
120
|
+
const resp = await productRatePlanChargeService.listRatePlanCharges(client, ratePlanId, {
|
|
121
|
+
pageNo,
|
|
122
|
+
itemPerPage,
|
|
123
|
+
});
|
|
124
|
+
const chunk = extractDataArray(resp);
|
|
125
|
+
all.push(...chunk);
|
|
126
|
+
const totalPages = resp.totalPages ?? 1;
|
|
127
|
+
if (pageNo >= totalPages || chunk.length === 0)
|
|
128
|
+
break;
|
|
129
|
+
pageNo += 1;
|
|
130
|
+
}
|
|
131
|
+
return all;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Build a single subscription ratePlan item from catalog APIs (product rate plan + charges).
|
|
135
|
+
*/
|
|
136
|
+
export async function buildSubscriptionRatePlanFromCatalog(client, opts) {
|
|
137
|
+
const planIdStr = String(opts.productRatePlanId);
|
|
138
|
+
const planRaw = await productRatePlanService.getRatePlan(client, planIdStr);
|
|
139
|
+
const planName = extractPlanName(planRaw);
|
|
140
|
+
if (!planName) {
|
|
141
|
+
throw new Error(`Could not read name from product rate plan ${opts.productRatePlanId} (GET /product-rateplans/{id}).`);
|
|
142
|
+
}
|
|
143
|
+
if (opts.productId != null) {
|
|
144
|
+
await productService.getProduct(client, String(opts.productId));
|
|
145
|
+
const planProductId = extractProductIdFromRatePlan(planRaw);
|
|
146
|
+
if (planProductId != null && planProductId !== opts.productId) {
|
|
147
|
+
throw new Error(`productRatePlanId ${opts.productRatePlanId} belongs to product ${planProductId}, not ${opts.productId}.`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const base = {
|
|
151
|
+
productRatePlanId: opts.productRatePlanId,
|
|
152
|
+
name: planName,
|
|
153
|
+
};
|
|
154
|
+
if (opts.includeCharges === false) {
|
|
155
|
+
return [base];
|
|
156
|
+
}
|
|
157
|
+
const summaries = await fetchAllChargeSummaries(client, planIdStr);
|
|
158
|
+
if (summaries.length === 0) {
|
|
159
|
+
return [base];
|
|
160
|
+
}
|
|
161
|
+
const ratePlanCharge = [];
|
|
162
|
+
for (const row of summaries) {
|
|
163
|
+
const chargeId = extractChargeListId(row);
|
|
164
|
+
if (chargeId == null)
|
|
165
|
+
continue;
|
|
166
|
+
const full = await productRatePlanChargeService.getRatePlanCharge(client, String(chargeId));
|
|
167
|
+
ratePlanCharge.push(mapProductChargeGetToSubscriptionCharge(full, planName));
|
|
168
|
+
}
|
|
169
|
+
if (ratePlanCharge.length === 0) {
|
|
170
|
+
return [base];
|
|
171
|
+
}
|
|
172
|
+
return [{ ...base, ratePlanCharge }];
|
|
173
|
+
}
|
|
174
|
+
export async function resolveProductRatePlanIdByName(client, productId, productRatePlanName) {
|
|
175
|
+
const target = productRatePlanName.trim().toLowerCase();
|
|
176
|
+
if (!target)
|
|
177
|
+
throw new Error("productRatePlanName must be a non-empty string");
|
|
178
|
+
// Paginate through all product rate plans and do case-insensitive match.
|
|
179
|
+
const itemPerPage = 250;
|
|
180
|
+
let pageNo = 1;
|
|
181
|
+
const matches = [];
|
|
182
|
+
for (;;) {
|
|
183
|
+
const resp = await productRatePlanService.listRatePlans(client, productId, {
|
|
184
|
+
pageNo,
|
|
185
|
+
itemPerPage,
|
|
186
|
+
});
|
|
187
|
+
const data = extractDataArray(resp);
|
|
188
|
+
for (const row of data) {
|
|
189
|
+
const name = extractNameFromRatePlanRow(row);
|
|
190
|
+
if (!name)
|
|
191
|
+
continue;
|
|
192
|
+
if (name.toLowerCase() === target) {
|
|
193
|
+
const id = extractIdFromRatePlanRow(row);
|
|
194
|
+
if (id != null)
|
|
195
|
+
matches.push(id);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
const totalPages = resp.totalPages ?? pageNo;
|
|
199
|
+
if (pageNo >= totalPages || data.length === 0)
|
|
200
|
+
break;
|
|
201
|
+
pageNo += 1;
|
|
202
|
+
}
|
|
203
|
+
if (matches.length === 0) {
|
|
204
|
+
throw new Error(`Could not find product rate plan by name "${productRatePlanName}". Use productRatePlanId or provide a name that exactly matches product rate plan name from the catalog.`);
|
|
205
|
+
}
|
|
206
|
+
const unique = Array.from(new Set(matches));
|
|
207
|
+
if (unique.length > 1) {
|
|
208
|
+
throw new Error(`Ambiguous productRatePlanName "${productRatePlanName}". Found multiple rate plans with the same name; use productRatePlanId to disambiguate.`);
|
|
209
|
+
}
|
|
210
|
+
return unique[0];
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=subscriptionFromProductRatePlan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscriptionFromProductRatePlan.js","sourceRoot":"","sources":["../../src/services/subscriptionFromProductRatePlan.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,18 @@ export interface CreateSubscriptionBody {
|
|
|
61
61
|
shippingAddressId?: number;
|
|
62
62
|
[k: string]: unknown;
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Create subscription "from product rate plan" (simplified API).
|
|
66
|
+
* POST /subscriptions/from-product-rateplan
|
|
67
|
+
*/
|
|
68
|
+
export interface CreateSubscriptionFromProductRatePlanBody {
|
|
69
|
+
productRatePlanId: number;
|
|
70
|
+
customerId: number;
|
|
71
|
+
customerPaymentMethodId: number;
|
|
72
|
+
billingAddressId: number;
|
|
73
|
+
effectiveStartDate: string;
|
|
74
|
+
[k: string]: unknown;
|
|
75
|
+
}
|
|
64
76
|
export interface UpdateSubscriptionBody {
|
|
65
77
|
name?: string;
|
|
66
78
|
companyCurrencyId?: number;
|
|
@@ -79,6 +91,8 @@ export declare function getSubscription(client: Client, subscriptionId: string,
|
|
|
79
91
|
include?: string;
|
|
80
92
|
}): Promise<unknown>;
|
|
81
93
|
export declare function createSubscription(client: Client, body: CreateSubscriptionBody): Promise<unknown>;
|
|
94
|
+
/** Create subscription from single product rate plan (simplified API). */
|
|
95
|
+
export declare function createSubscriptionFromProductRatePlan(client: Client, body: CreateSubscriptionFromProductRatePlanBody): Promise<unknown>;
|
|
82
96
|
export declare function updateSubscription(client: Client, subscriptionId: string, body: UpdateSubscriptionBody): Promise<unknown>;
|
|
83
97
|
export declare function deleteSubscription(client: Client, subscriptionId: string): Promise<Record<string, unknown>>;
|
|
84
98
|
export declare function updateSubscriptionStatus(client: Client, subscriptionId: string, status: SubscriptionStatus): Promise<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptionServices.d.ts","sourceRoot":"","sources":["../../src/services/subscriptionServices.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subscriptionServices.d.ts","sourceRoot":"","sources":["../../src/services/subscriptionServices.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,10 @@ export async function getSubscription(client, subscriptionId, params) {
|
|
|
37
37
|
export async function createSubscription(client, body) {
|
|
38
38
|
return client.post("/subscriptions", body);
|
|
39
39
|
}
|
|
40
|
+
/** Create subscription from single product rate plan (simplified API). */
|
|
41
|
+
export async function createSubscriptionFromProductRatePlan(client, body) {
|
|
42
|
+
return client.post("/subscriptions/from-product-rateplan", body);
|
|
43
|
+
}
|
|
40
44
|
export async function updateSubscription(client, subscriptionId, body) {
|
|
41
45
|
const payload = Object.fromEntries(Object.entries(body).filter(([, v]) => v !== undefined));
|
|
42
46
|
return client.put(`/subscriptions/${subscriptionId}`, Object.keys(payload).length ? payload : undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptionServices.js","sourceRoot":"","sources":["../../src/services/subscriptionServices.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0BH,6FAA6F;AAC7F,SAAS,mBAAmB,CAAC,KAAmC;IAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,GAAG,IAAI;QACP,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC,CAAC,CAAC;AACN,CAAC;
|
|
1
|
+
{"version":3,"file":"subscriptionServices.js","sourceRoot":"","sources":["../../src/services/subscriptionServices.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0BH,6FAA6F;AAC7F,SAAS,mBAAmB,CAAC,KAAmC;IAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,GAAG,IAAI;QACP,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC,CAAC,CAAC;AACN,CAAC;AAyED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAc,EACd,MAAgC;IAEhC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,EAAE,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACpE,IAAI,MAAM,EAAE,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACjE,IAAI,MAAM,EAAE,QAAQ,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,IAAI,MAAM,EAAE,WAAW,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CAA6B,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,cAAsB,EACtB,MAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CAAU,kBAAkB,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,IAA4B;IAE5B,OAAO,MAAM,CAAC,IAAI,CAAU,gBAAgB,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,qCAAqC,CACzD,MAAc,EACd,IAA+C;IAE/C,OAAO,MAAM,CAAC,IAAI,CAAU,sCAAsC,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,cAAsB,EACtB,IAA4B;IAE5B,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAC9B,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,EAAE,EAClC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAClD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,cAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAChC,kBAAkB,cAAc,EAAE,CACnC,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;AACxG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAc,EACd,cAAsB,EACtB,MAA0B;IAE1B,OAAO,MAAM,CAAC,GAAG,CAAU,kBAAkB,cAAc,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACpF,CAAC;AAUD,+FAA+F;AAC/F,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAc,EACd,cAAsB,EACtB,MAAmC;IAEnC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CAAU,kBAAkB,cAAc,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7F,CAAC;AAMD,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,MAAc,EACd,cAAsB,EACtB,MAAmC;IAEnC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CAAU,kBAAkB,cAAc,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7F,CAAC;AAQD,6GAA6G;AAC7G,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAc,EACd,cAAsB,EACtB,MAAmC;IAEnC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,IAAI,MAAM,EAAE,WAAW,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/D,CAAC;AACJ,CAAC;AAOD,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,cAAsB,EACtB,MAA+B;IAE/B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,IAAI,MAAM,EAAE,WAAW,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3D,CAAC;AACJ,CAAC;AAQD,yGAAyG;AACzG,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAc,EACd,cAAsB,EACtB,MAA2C;IAE3C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,IAAI,MAAM,EAAE,WAAW,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,qBAAqB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACxE,CAAC;AACJ,CAAC;AAcD,2EAA2E;AAC3E,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,cAAsB,EACtB,MAAwC;IAExC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,IAAI,MAAM,EAAE,WAAW,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACpE,IAAI,MAAM,EAAE,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAChE,CAAC;AACJ,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAc,EACd,cAAsB,EACtB,UAAkB,EAClB,MAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,cAAc,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9E,CAAC;AACJ,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAc,EACd,cAAsB,EACtB,IAAiC;IAEjC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACzB,CAAC;IACjC,OAAO,MAAM,CAAC,IAAI,CAChB,kBAAkB,cAAc,YAAY,EAC5C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAClD,CAAC;AACJ,CAAC;AAWD,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAc,EACd,cAAsB,EACtB,UAAkB,EAClB,IAAoC;IAEpC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACtB,CAAC;IACpC,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,cAAc,UAAU,EAAE,EAC1D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAClD,CAAC;AACJ,CAAC;AAED,gGAAgG;AAChG,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAc,EACd,cAAsB,EACtB,UAAkB;IAElB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAChC,kBAAkB,cAAc,cAAc,UAAU,EAAE,CAC3D,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;AACrG,CAAC;AAED,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAc,EACd,cAAsB,EACtB,QAAgB,EAChB,MAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,qBAAqB,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACnF,CAAC;AACJ,CAAC;AAsBD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAc,EACd,cAAsB,EACtB,UAAkB,EAClB,IAAuC;IAEvC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACnB,CAAC;IACvC,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,UAAU,EAAE,MAAM;QAAE,OAAO,CAAC,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7F,6FAA6F;IAC7F,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IACrF,OAAO,MAAM,CAAC,IAAI,CAChB,kBAAkB,cAAc,cAAc,UAAU,mBAAmB,EAC3E,QAAQ,CACT,CAAC;AACJ,CAAC;AAmBD,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAc,EACd,cAAsB,EACtB,QAAgB,EAChB,IAA0C;IAE1C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAChB,CAAC;IAC1C,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI;QAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,UAAU,EAAE,MAAM;QAAE,OAAO,CAAC,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7F,OAAO,MAAM,CAAC,GAAG,CACf,kBAAkB,cAAc,qBAAqB,QAAQ,EAAE,EAC/D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAClD,CAAC;AACJ,CAAC;AAED,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAc,EACd,cAAsB,EACtB,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAChC,kBAAkB,cAAc,qBAAqB,QAAQ,EAAE,CAChE,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAClG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSubscription.d.ts","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscription.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"createSubscription.d.ts","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscription.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AA4CxC,eAAO,MAAM,sBAAsB,EAAE,IAGpC,CAAC"}
|
|
@@ -1,81 +1,38 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { errorResult, handleToolCall } from "./helpers.js";
|
|
3
3
|
import * as subscriptionService from "../../services/subscriptionServices.js";
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
endingUnit: z.string().optional(),
|
|
8
|
-
price: z.number(),
|
|
9
|
-
priceFormat: z.string().optional(),
|
|
10
|
-
tier: z.number().int().optional(),
|
|
11
|
-
});
|
|
12
|
-
const ratePlanChargeItemSchema = z
|
|
13
|
-
.object({
|
|
14
|
-
productRatePlanChargeId: z.number().int().optional(),
|
|
15
|
-
quantity: z.number().int().min(0),
|
|
16
|
-
name: z.string().optional(),
|
|
17
|
-
billCycleType: z.string().optional(),
|
|
18
|
-
chargeType: z.string().optional(),
|
|
19
|
-
endDateCondition: z.string().optional(),
|
|
20
|
-
taxable: z.boolean().optional(),
|
|
21
|
-
chargeTier: z.array(chargeTierItemSchema).optional(),
|
|
22
|
-
billingPeriod: z.string().optional(),
|
|
23
|
-
billingTiming: z.string().optional(),
|
|
24
|
-
billingPeriodAlignment: z.string().optional(),
|
|
25
|
-
specificBillingPeriod: z.number().int().optional(),
|
|
26
|
-
})
|
|
27
|
-
.passthrough();
|
|
28
|
-
const ratePlanItemSchema = z.object({
|
|
29
|
-
productRatePlanId: z.number().int().positive(),
|
|
30
|
-
name: z.string().optional(),
|
|
31
|
-
type: z.enum(["contract", "ongoing", "prepaid"]).optional(),
|
|
32
|
-
effectiveStartDate: z.string().optional(),
|
|
33
|
-
changeStatusBasedOnCharge: z.boolean().optional(),
|
|
34
|
-
ratePlanCharge: z.array(ratePlanChargeItemSchema).optional(),
|
|
35
|
-
});
|
|
36
|
-
const schema = z.object({
|
|
37
|
-
customerId: z.number().int().positive("customerId is required"),
|
|
38
|
-
name: z.string().min(1, "name is required"),
|
|
39
|
-
companyCurrencyId: z.number().int().positive("companyCurrencyId is required"),
|
|
40
|
-
effectiveStartDate: z.string().min(1, "effectiveStartDate is required (YYYY-MM-DD)"),
|
|
41
|
-
ratePlan: z.array(ratePlanItemSchema).min(1, "ratePlan must have at least one item"),
|
|
42
|
-
companyGatewayId: z.number().int().optional(),
|
|
43
|
-
customerPaymentMethodId: z.number().int().optional(),
|
|
44
|
-
detail: z.string().optional(),
|
|
45
|
-
offlinePaymentId: z.string().optional(),
|
|
46
|
-
billingAddressId: z.number().int().optional(),
|
|
47
|
-
shippingAddressId: z.number().int().optional(),
|
|
48
|
-
});
|
|
4
|
+
const dateSchema = z
|
|
5
|
+
.string()
|
|
6
|
+
.regex(/^\d{4}-\d{2}-\d{2}$/, "effectiveStartDate must be in YYYY-MM-DD format");
|
|
49
7
|
const definition = {
|
|
50
8
|
name: "create_subscription",
|
|
51
|
-
description: "Create a subscription. POST /subscriptions. Required:
|
|
9
|
+
description: "Create a subscription from a product rate plan. POST /subscriptions/from-product-rateplan. Required: productRatePlanId, customerId, customerPaymentMethodId, billingAddressId, effectiveStartDate.",
|
|
52
10
|
inputSchema: {
|
|
53
11
|
type: "object",
|
|
54
12
|
properties: {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
companyCurrencyId: { type: "number", description: "Company currency ID (required)" },
|
|
58
|
-
effectiveStartDate: { type: "string", description: "Effective start date YYYY-MM-DD (required)" },
|
|
59
|
-
ratePlan: {
|
|
60
|
-
type: "array",
|
|
61
|
-
description: "Rate plans: each has productRatePlanId, optional name, type, ratePlanCharge array (each: quantity, optional productRatePlanChargeId or chargeTier)",
|
|
62
|
-
},
|
|
63
|
-
companyGatewayId: { type: "number", description: "Company gateway ID" },
|
|
13
|
+
productRatePlanId: { type: "number", description: "Product rate plan ID" },
|
|
14
|
+
customerId: { type: "number", description: "Customer ID" },
|
|
64
15
|
customerPaymentMethodId: { type: "number", description: "Customer payment method ID" },
|
|
65
|
-
detail: { type: "string", description: "Detail" },
|
|
66
|
-
offlinePaymentId: { type: "string", description: "Offline payment ID" },
|
|
67
16
|
billingAddressId: { type: "number", description: "Billing address ID" },
|
|
68
|
-
|
|
17
|
+
effectiveStartDate: { type: "string", description: "Effective start date YYYY-MM-DD" },
|
|
69
18
|
},
|
|
70
|
-
required: ["
|
|
19
|
+
required: ["productRatePlanId", "customerId", "customerPaymentMethodId", "billingAddressId", "effectiveStartDate"],
|
|
71
20
|
},
|
|
72
21
|
};
|
|
22
|
+
const schema = z.object({
|
|
23
|
+
productRatePlanId: z.number().int().positive("productRatePlanId is required"),
|
|
24
|
+
customerId: z.number().int().positive("customerId is required"),
|
|
25
|
+
customerPaymentMethodId: z.number().int().positive("customerPaymentMethodId is required"),
|
|
26
|
+
billingAddressId: z.number().int().positive("billingAddressId is required"),
|
|
27
|
+
effectiveStartDate: dateSchema,
|
|
28
|
+
});
|
|
73
29
|
async function handler(client, args) {
|
|
74
30
|
const parsed = schema.safeParse(args);
|
|
75
31
|
if (!parsed.success) {
|
|
76
32
|
return errorResult(parsed.error.errors.map((e) => `${e.path.join(".")}: ${e.message}`).join("; "));
|
|
77
33
|
}
|
|
78
|
-
|
|
34
|
+
const payload = parsed.data;
|
|
35
|
+
return handleToolCall(() => subscriptionService.createSubscriptionFromProductRatePlan(client, payload));
|
|
79
36
|
}
|
|
80
37
|
export const createSubscriptionTool = {
|
|
81
38
|
definition,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSubscription.js","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,mBAAmB,MAAM,wCAAwC,CAAC;AAE9E,MAAM,
|
|
1
|
+
{"version":3,"file":"createSubscription.js","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,mBAAmB,MAAM,wCAAwC,CAAC;AAE9E,MAAM,UAAU,GAAG,CAAC;KACjB,MAAM,EAAE;KACR,KAAK,CAAC,qBAAqB,EAAE,iDAAiD,CAAC,CAAC;AAEnF,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,oMAAoM;IACtM,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAC1E,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE;YAC1D,uBAAuB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAE;YACtF,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;YACvE,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;SACvF;QACD,QAAQ,EAAE,CAAC,mBAAmB,EAAE,YAAY,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,oBAAoB,CAAC;KACnH;CACF,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IACtB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC/D,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACzF,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC3E,kBAAkB,EAAE,UAAU;CAC/B,CAAC,CAAC;AAEH,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,IAAyC;IAC9E,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,OAAO,cAAc,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,qCAAqC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAS;IAC1C,UAAU;IACV,OAAO;CACR,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Tool } from "../types.js";
|
|
2
|
+
import type { Client } from "./helpers.js";
|
|
3
|
+
export declare function createSubscriptionFlowHandler(client: Client, args: Record<string, unknown> | undefined): Promise<import("../types.js").ToolResult>;
|
|
4
|
+
export declare const createSubscriptionFlowTool: Tool;
|
|
5
|
+
//# sourceMappingURL=createSubscriptionFlow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSubscriptionFlow.d.ts","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscriptionFlow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAuR3C,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,6CAqW5G;AAMD,eAAO,MAAM,0BAA0B,EAAE,IAGxC,CAAC"}
|
|
@@ -0,0 +1,549 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { errorResult, successResult } from "./helpers.js";
|
|
3
|
+
import * as subscriptionService from "../../services/subscriptionServices.js";
|
|
4
|
+
import * as productService from "../../services/productServices.js";
|
|
5
|
+
import * as ratePlanService from "../../services/productRatePlanServices.js";
|
|
6
|
+
import * as ratePlanChargeService from "../../services/productRatePlanChargeServices.js";
|
|
7
|
+
import * as currencyService from "../../services/currencyServices.js";
|
|
8
|
+
import * as customerService from "../../services/customerServices.js";
|
|
9
|
+
import { mapBillingAddressInputToApiBillingAddress } from "../../types/addressInput.js";
|
|
10
|
+
function isRecord(v) {
|
|
11
|
+
return !!v && typeof v === "object" && !Array.isArray(v);
|
|
12
|
+
}
|
|
13
|
+
function toIntMaybe(v) {
|
|
14
|
+
if (v == null)
|
|
15
|
+
return undefined;
|
|
16
|
+
const n = typeof v === "number" ? v : Number(v);
|
|
17
|
+
return Number.isFinite(n) ? Math.trunc(n) : undefined;
|
|
18
|
+
}
|
|
19
|
+
function toNumberMaybe(v) {
|
|
20
|
+
if (v == null)
|
|
21
|
+
return undefined;
|
|
22
|
+
const n = typeof v === "number" ? v : Number(v);
|
|
23
|
+
return Number.isFinite(n) ? n : undefined;
|
|
24
|
+
}
|
|
25
|
+
function normalizePaymentMethodCurrencyId(paymentMethod) {
|
|
26
|
+
if (!isRecord(paymentMethod))
|
|
27
|
+
return undefined;
|
|
28
|
+
// Heuristics: upstream/normalizers may expose different shapes. We try common ones.
|
|
29
|
+
const direct = "companyCurrencyId" in paymentMethod
|
|
30
|
+
? toIntMaybe(paymentMethod.companyCurrencyId)
|
|
31
|
+
: undefined;
|
|
32
|
+
if (direct != null)
|
|
33
|
+
return direct;
|
|
34
|
+
const currencyId = "currencyId" in paymentMethod ? toIntMaybe(paymentMethod.currencyId) : undefined;
|
|
35
|
+
if (currencyId != null)
|
|
36
|
+
return currencyId;
|
|
37
|
+
const companyCurrency = paymentMethod.companyCurrency;
|
|
38
|
+
if (companyCurrency && isRecord(companyCurrency)) {
|
|
39
|
+
const id = "id" in companyCurrency ? toIntMaybe(companyCurrency.id) : undefined;
|
|
40
|
+
if (id != null)
|
|
41
|
+
return id;
|
|
42
|
+
}
|
|
43
|
+
const currency = paymentMethod.currency;
|
|
44
|
+
if (currency && isRecord(currency)) {
|
|
45
|
+
const id = "id" in currency ? toIntMaybe(currency.id) : undefined;
|
|
46
|
+
if (id != null)
|
|
47
|
+
return id;
|
|
48
|
+
}
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
function safeIsoDateOnly(value) {
|
|
52
|
+
// YYYY-MM-DD (no time zone assumptions)
|
|
53
|
+
return /^\d{4}-\d{2}-\d{2}$/.test(value);
|
|
54
|
+
}
|
|
55
|
+
const newPaymentMethodBillingAddressSchema = z.object({
|
|
56
|
+
countryCode: z.string().min(1, "billingAddress.countryCode is required"),
|
|
57
|
+
street1: z.string().min(1, "billingAddress.street1 is required"),
|
|
58
|
+
city: z.string().min(1, "billingAddress.city is required"),
|
|
59
|
+
state: z.string().min(1, "billingAddress.state is required"),
|
|
60
|
+
zip: z.string().min(1, "billingAddress.zip is required"),
|
|
61
|
+
street2: z.string().optional(),
|
|
62
|
+
});
|
|
63
|
+
const newPaymentMethodSchema = z.object({
|
|
64
|
+
companyGatewayId: z.number().int().positive("companyGatewayId must be a positive integer"),
|
|
65
|
+
type: z.enum(["card", "ach"], { errorMap: () => ({ message: "type must be 'card' or 'ach'" }) }),
|
|
66
|
+
paymentMethodNonce: z.string().min(1, "paymentMethodNonce is required"),
|
|
67
|
+
billingAddress: newPaymentMethodBillingAddressSchema,
|
|
68
|
+
});
|
|
69
|
+
const createSubscriptionFlowSchema = z.object({
|
|
70
|
+
// Step 1: Initial user inputs
|
|
71
|
+
customer: z.number().int().positive("customer (customerId) is required"),
|
|
72
|
+
productName: z.string().min(1, "productName is required"),
|
|
73
|
+
ratePlan: z.string().min(1, "ratePlan is required"),
|
|
74
|
+
saleChannel: z.string().optional(),
|
|
75
|
+
companyIntegration: z.number().int().positive().optional(),
|
|
76
|
+
// Optional disambiguation
|
|
77
|
+
productId: z.number().int().positive().optional(),
|
|
78
|
+
ratePlanId: z.number().int().positive().optional(),
|
|
79
|
+
// Step 3: Currency selection
|
|
80
|
+
companyCurrencyId: z.number().int().positive().optional(),
|
|
81
|
+
// Step 4: Payment method
|
|
82
|
+
paymentMethodKind: z.enum(["existing", "offline", "new"]).optional(),
|
|
83
|
+
customerPaymentMethodId: z.number().int().positive().optional(),
|
|
84
|
+
offlinePaymentId: z.string().min(1).optional(),
|
|
85
|
+
newPaymentMethod: newPaymentMethodSchema.optional(),
|
|
86
|
+
// Step 5: Start date
|
|
87
|
+
startingDate: z.string().optional(),
|
|
88
|
+
// Step 6: Final result inputs
|
|
89
|
+
subscriptionName: z.string().optional(),
|
|
90
|
+
detail: z.string().optional(),
|
|
91
|
+
// Advanced: stateful retries
|
|
92
|
+
stage: z
|
|
93
|
+
.enum([
|
|
94
|
+
"needs_product_and_rate_plan",
|
|
95
|
+
"needs_currency_selection",
|
|
96
|
+
"needs_payment_method_selection",
|
|
97
|
+
"needs_starting_date",
|
|
98
|
+
"submitted",
|
|
99
|
+
])
|
|
100
|
+
.optional(),
|
|
101
|
+
});
|
|
102
|
+
const definition = {
|
|
103
|
+
name: "create_subscription_flow",
|
|
104
|
+
description: "Step-by-step subscription creation flow (product -> ratePlan -> charges -> currency -> payment method -> startingDate -> submit). Returns a 'status' and the next required inputs.",
|
|
105
|
+
inputSchema: {
|
|
106
|
+
type: "object",
|
|
107
|
+
properties: {
|
|
108
|
+
customer: { type: "number", description: "customerId" },
|
|
109
|
+
productName: { type: "string", description: "Product name (searched via list_products)" },
|
|
110
|
+
ratePlan: { type: "string", description: "Rate plan name (must belong to the selected product)" },
|
|
111
|
+
saleChannel: { type: "string", description: "Optional sale channel (mapped to subscription 'source')" },
|
|
112
|
+
companyIntegration: { type: "number", description: "Optional company integration ID (mapped to subscription 'sourceCompanyIntegrationId')" },
|
|
113
|
+
companyCurrencyId: { type: "number", description: "companyCurrencyId (selected currency)" },
|
|
114
|
+
paymentMethodKind: { type: "string", description: "existing | offline | new" },
|
|
115
|
+
customerPaymentMethodId: { type: "number", description: "Existing customer payment method ID" },
|
|
116
|
+
offlinePaymentId: { type: "string", description: "Offline payment ID" },
|
|
117
|
+
newPaymentMethod: { type: "object", description: "{ companyGatewayId, type: card|ach, paymentMethodNonce, billingAddress }" },
|
|
118
|
+
startingDate: { type: "string", description: "effectiveStartDate (YYYY-MM-DD)" },
|
|
119
|
+
subscriptionName: { type: "string", description: "Optional subscription name (defaults derived)" },
|
|
120
|
+
detail: { type: "string", description: "Optional subscription detail (defaults 'New subscription detail')" },
|
|
121
|
+
productId: { type: "number", description: "Optional disambiguation: explicit productId" },
|
|
122
|
+
ratePlanId: { type: "number", description: "Optional disambiguation: explicit productRatePlanId" },
|
|
123
|
+
stage: { type: "string", description: "Optional: force stage (mostly for retries)" },
|
|
124
|
+
},
|
|
125
|
+
required: ["customer", "productName", "ratePlan"],
|
|
126
|
+
},
|
|
127
|
+
};
|
|
128
|
+
function extractPaginatedData(value) {
|
|
129
|
+
if (Array.isArray(value))
|
|
130
|
+
return value;
|
|
131
|
+
if (isRecord(value) && Array.isArray(value.data)) {
|
|
132
|
+
return value.data;
|
|
133
|
+
}
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
function pickSingleByName(items, name, options) {
|
|
137
|
+
const nameField = options?.nameField ?? "name";
|
|
138
|
+
const idField = options?.idField ?? "id";
|
|
139
|
+
const byId = options?.idEquals != null
|
|
140
|
+
? items.filter((it) => toIntMaybe(it[idField]) === options.idEquals)
|
|
141
|
+
: [];
|
|
142
|
+
if (options?.idEquals != null && byId.length === 1)
|
|
143
|
+
return { item: byId[0], matches: byId };
|
|
144
|
+
if (options?.idEquals != null && byId.length > 1) {
|
|
145
|
+
return { matches: byId, reason: `Multiple items match provided id (${options.idEquals})` };
|
|
146
|
+
}
|
|
147
|
+
const normalized = name.trim().toLowerCase();
|
|
148
|
+
const exact = items.filter((it) => {
|
|
149
|
+
const v = it[nameField];
|
|
150
|
+
return typeof v === "string" && v.trim().toLowerCase() === normalized;
|
|
151
|
+
});
|
|
152
|
+
if (exact.length === 1)
|
|
153
|
+
return { item: exact[0], matches: exact };
|
|
154
|
+
if (exact.length > 1)
|
|
155
|
+
return { matches: exact, reason: `Multiple items match exact name '${name}'` };
|
|
156
|
+
// Fallback: contains
|
|
157
|
+
const contains = items.filter((it) => {
|
|
158
|
+
const v = it[nameField];
|
|
159
|
+
return typeof v === "string" && v.toLowerCase().includes(normalized);
|
|
160
|
+
});
|
|
161
|
+
if (contains.length === 1)
|
|
162
|
+
return { item: contains[0], matches: contains };
|
|
163
|
+
if (contains.length > 1)
|
|
164
|
+
return { matches: contains, reason: `Multiple items match name '${name}'` };
|
|
165
|
+
return { matches: [], reason: `No items match name '${name}'` };
|
|
166
|
+
}
|
|
167
|
+
function mapRatePlanChargesForSubscription(ratePlanCharges) {
|
|
168
|
+
const mapped = [];
|
|
169
|
+
for (const c of ratePlanCharges) {
|
|
170
|
+
const chargeRecord = c;
|
|
171
|
+
const quantity = toNumberMaybe(chargeRecord.quantity) ?? 1;
|
|
172
|
+
const productRatePlanChargeId = toIntMaybe(
|
|
173
|
+
// Common normalizer field (rateplanCharge.productRateplanChargeId)
|
|
174
|
+
chargeRecord.productRateplanChargeId ?? chargeRecord.productRatePlanChargeId ?? chargeRecord.productRatePlanChargeID);
|
|
175
|
+
const out = {
|
|
176
|
+
quantity: Number(quantity),
|
|
177
|
+
...(productRatePlanChargeId != null ? { productRatePlanChargeId } : {}),
|
|
178
|
+
};
|
|
179
|
+
if (typeof chargeRecord.name === "string")
|
|
180
|
+
out.name = chargeRecord.name;
|
|
181
|
+
if (typeof chargeRecord.billCycleType === "string")
|
|
182
|
+
out.billCycleType = chargeRecord.billCycleType;
|
|
183
|
+
if (typeof chargeRecord.chargeType === "string")
|
|
184
|
+
out.chargeType = chargeRecord.chargeType;
|
|
185
|
+
if (typeof chargeRecord.endDateCondition === "string")
|
|
186
|
+
out.endDateCondition = chargeRecord.endDateCondition;
|
|
187
|
+
if (typeof chargeRecord.taxable === "boolean")
|
|
188
|
+
out.taxable = chargeRecord.taxable;
|
|
189
|
+
if (typeof chargeRecord.billingPeriod === "string")
|
|
190
|
+
out.billingPeriod = chargeRecord.billingPeriod;
|
|
191
|
+
if (typeof chargeRecord.billingTiming === "string")
|
|
192
|
+
out.billingTiming = chargeRecord.billingTiming;
|
|
193
|
+
if (typeof chargeRecord.billingPeriodAlignment === "string")
|
|
194
|
+
out.billingPeriodAlignment = chargeRecord.billingPeriodAlignment;
|
|
195
|
+
const specificBillingPeriod = toNumberMaybe(chargeRecord.specificBillingPeriod);
|
|
196
|
+
if (specificBillingPeriod != null)
|
|
197
|
+
out.specificBillingPeriod = specificBillingPeriod;
|
|
198
|
+
if (typeof chargeRecord.category === "string")
|
|
199
|
+
out.category = chargeRecord.category;
|
|
200
|
+
if (typeof chargeRecord.chargeModel === "string")
|
|
201
|
+
out.chargeModel = chargeRecord.chargeModel;
|
|
202
|
+
const weight = toNumberMaybe(chargeRecord.weight);
|
|
203
|
+
if (weight != null)
|
|
204
|
+
out.weight = weight;
|
|
205
|
+
// Map tiers when the API/normalizer returns them as an array.
|
|
206
|
+
const tierRaw = chargeRecord.chargeTier;
|
|
207
|
+
if (Array.isArray(tierRaw)) {
|
|
208
|
+
const tiers = tierRaw
|
|
209
|
+
.map((t) => {
|
|
210
|
+
const currency = String(t.currency ?? t.iso3 ?? t.currencyCode ?? "").trim();
|
|
211
|
+
const price = toNumberMaybe(t.price) ?? 0;
|
|
212
|
+
if (!currency || price == null)
|
|
213
|
+
return null;
|
|
214
|
+
return {
|
|
215
|
+
currency,
|
|
216
|
+
price,
|
|
217
|
+
priceFormat: String(t.priceFormat ?? t.price_format ?? "").trim(),
|
|
218
|
+
startingUnit: t.startingUnit != null ? String(t.startingUnit) : undefined,
|
|
219
|
+
endingUnit: t.endingUnit != null ? String(t.endingUnit) : undefined,
|
|
220
|
+
tier: toIntMaybe(t.tier) ?? undefined,
|
|
221
|
+
};
|
|
222
|
+
})
|
|
223
|
+
.filter(Boolean);
|
|
224
|
+
if (tiers.length)
|
|
225
|
+
out.chargeTier = tiers;
|
|
226
|
+
}
|
|
227
|
+
mapped.push(out);
|
|
228
|
+
}
|
|
229
|
+
return { ratePlanCharge: mapped, chargeCount: mapped.length };
|
|
230
|
+
}
|
|
231
|
+
async function listProductsForSearch(client, productName, productId) {
|
|
232
|
+
// We "search" by pulling a reasonably large page and filtering client-side.
|
|
233
|
+
const resp = await productService.listProducts(client, { itemPerPage: 200, pageNo: 1 });
|
|
234
|
+
const products = extractPaginatedData(resp);
|
|
235
|
+
if (!products.length) {
|
|
236
|
+
return { products, matched: [] };
|
|
237
|
+
}
|
|
238
|
+
const matches = pickSingleByName(products, productName, { idField: "id", idEquals: productId, nameField: "name" });
|
|
239
|
+
return { products, matched: matches.matches, single: matches.item };
|
|
240
|
+
}
|
|
241
|
+
async function listRatePlansForProduct(client, product, ratePlanName, ratePlanId) {
|
|
242
|
+
const productIdRaw = product.id ?? product.productId;
|
|
243
|
+
const productIdStr = String(productIdRaw);
|
|
244
|
+
if (!productIdStr)
|
|
245
|
+
throw new Error("product.id is missing from product details response");
|
|
246
|
+
const resp = await ratePlanService.listRatePlans(client, productIdStr, { itemPerPage: 200, pageNo: 1 });
|
|
247
|
+
const ratePlans = extractPaginatedData(resp);
|
|
248
|
+
const pick = pickSingleByName(ratePlans, ratePlanName, { idField: "id", idEquals: ratePlanId, nameField: "name" });
|
|
249
|
+
return { ratePlans, matched: pick.matches, single: pick.item };
|
|
250
|
+
}
|
|
251
|
+
export async function createSubscriptionFlowHandler(client, args) {
|
|
252
|
+
const parsed = createSubscriptionFlowSchema.safeParse(args);
|
|
253
|
+
if (!parsed.success) {
|
|
254
|
+
return errorResult(parsed.error.errors.map((e) => `${e.path.join(".")}: ${e.message}`).join("; "));
|
|
255
|
+
}
|
|
256
|
+
const { customer, productName, ratePlan, saleChannel, companyIntegration, productId, ratePlanId, companyCurrencyId, paymentMethodKind, customerPaymentMethodId, offlinePaymentId, newPaymentMethod, startingDate, subscriptionName, detail, stage, } = parsed.data;
|
|
257
|
+
// ============================================================================
|
|
258
|
+
// Step 2: Fetch additional data needed for all later stages (product -> ratePlan -> charges)
|
|
259
|
+
// ============================================================================
|
|
260
|
+
const productSearch = await listProductsForSearch(client, productName, productId);
|
|
261
|
+
const productSingle = productSearch.single;
|
|
262
|
+
if (!productSingle) {
|
|
263
|
+
const matches = productSearch.matched;
|
|
264
|
+
return errorResult(matches.length
|
|
265
|
+
? `Ambiguous productName '${productName}'. Provide productId to disambiguate. Matches: ${matches
|
|
266
|
+
.slice(0, 5)
|
|
267
|
+
.map((m) => `${String(m.id ?? m.productId ?? "")}: ${String(m.name ?? "")}`)
|
|
268
|
+
.join(", ")}`
|
|
269
|
+
: `Product not found for productName '${productName}'`);
|
|
270
|
+
}
|
|
271
|
+
const ratePlanList = await listRatePlansForProduct(client, productSingle, ratePlan, ratePlanId);
|
|
272
|
+
if (!ratePlanList.single) {
|
|
273
|
+
const matches = ratePlanList.matched;
|
|
274
|
+
return errorResult(matches.length
|
|
275
|
+
? `Ambiguous ratePlan '${ratePlan}'. Provide ratePlanId to disambiguate within product. Matches: ${matches
|
|
276
|
+
.slice(0, 5)
|
|
277
|
+
.map((m) => `${String(m.id ?? "")}: ${String(m.name ?? "")}`)
|
|
278
|
+
.join(", ")}`
|
|
279
|
+
: `ratePlan not found for product '${String(productSingle.name ?? "")}'.`);
|
|
280
|
+
}
|
|
281
|
+
const productDetails = await productService.getProduct(client, String(productSingle.id));
|
|
282
|
+
const selectedRatePlanDetails = await ratePlanService.getRatePlan(client, String(ratePlanList.single.id));
|
|
283
|
+
const ratePlanChargesResp = await ratePlanChargeService.listRatePlanCharges(client, String(ratePlanList.single.id), { itemPerPage: 200, pageNo: 1 });
|
|
284
|
+
// listRatePlanCharges returns paginated shape
|
|
285
|
+
const ratePlanCharges = extractPaginatedData(ratePlanChargesResp);
|
|
286
|
+
const derived = {
|
|
287
|
+
product: productDetails,
|
|
288
|
+
ratePlan: selectedRatePlanDetails,
|
|
289
|
+
ratePlanCharges,
|
|
290
|
+
};
|
|
291
|
+
// ============================================================================
|
|
292
|
+
// Determine stage
|
|
293
|
+
// ============================================================================
|
|
294
|
+
const effectiveStage = stage ??
|
|
295
|
+
(companyCurrencyId == null
|
|
296
|
+
? "needs_currency_selection"
|
|
297
|
+
: paymentMethodKind == null
|
|
298
|
+
? "needs_payment_method_selection"
|
|
299
|
+
: paymentMethodKind === "existing" || paymentMethodKind === "offline" || paymentMethodKind === "new"
|
|
300
|
+
? startingDate == null
|
|
301
|
+
? "needs_starting_date"
|
|
302
|
+
: "submitted"
|
|
303
|
+
: "needs_payment_method_selection");
|
|
304
|
+
// ============================================================================
|
|
305
|
+
// Step 3: Currency selection
|
|
306
|
+
// ============================================================================
|
|
307
|
+
if (effectiveStage === "needs_currency_selection") {
|
|
308
|
+
const currenciesResp = await currencyService.listCurrencies(client, { itemPerPage: 200, pageNo: 1 });
|
|
309
|
+
const currencies = extractPaginatedData(currenciesResp);
|
|
310
|
+
const currencyOptions = currencies
|
|
311
|
+
.map((c) => {
|
|
312
|
+
const id = toIntMaybe(c.id);
|
|
313
|
+
const code = (isRecord(c.currency) ? toIntMaybe(c.currency.id) : undefined) ??
|
|
314
|
+
(isRecord(c.currency)
|
|
315
|
+
? c.currency.code ??
|
|
316
|
+
c.currency.iso3 ??
|
|
317
|
+
c.currency.name
|
|
318
|
+
: undefined);
|
|
319
|
+
return id != null ? { companyCurrencyId: id, currency: code } : null;
|
|
320
|
+
})
|
|
321
|
+
.filter(Boolean);
|
|
322
|
+
return successResult({
|
|
323
|
+
status: "needs_currency_selection",
|
|
324
|
+
product: {
|
|
325
|
+
id: derived.product.id,
|
|
326
|
+
name: derived.product.name,
|
|
327
|
+
},
|
|
328
|
+
ratePlan: {
|
|
329
|
+
id: ratePlanList.single.id,
|
|
330
|
+
name: derived.ratePlan.name,
|
|
331
|
+
type: derived.ratePlan.type,
|
|
332
|
+
},
|
|
333
|
+
ratePlanCharges: {
|
|
334
|
+
count: ratePlanCharges.length,
|
|
335
|
+
// Show a compact view; pricing/tiers can be derived later from product-rateplan-charge definitions.
|
|
336
|
+
items: ratePlanCharges
|
|
337
|
+
.slice(0, 10)
|
|
338
|
+
.map((ch) => ({
|
|
339
|
+
id: ch?.id ?? ch?.productRateplanChargeId,
|
|
340
|
+
name: ch?.name,
|
|
341
|
+
quantity: ch?.quantity,
|
|
342
|
+
chargeType: ch?.chargeType,
|
|
343
|
+
})),
|
|
344
|
+
},
|
|
345
|
+
currencyOptions,
|
|
346
|
+
nextRequired: ["companyCurrencyId"],
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
// ============================================================================
|
|
350
|
+
// Step 4: Payment method selection
|
|
351
|
+
// ============================================================================
|
|
352
|
+
if (effectiveStage === "needs_payment_method_selection") {
|
|
353
|
+
if (companyCurrencyId == null) {
|
|
354
|
+
return errorResult("companyCurrencyId is required for payment method selection");
|
|
355
|
+
}
|
|
356
|
+
const paymentMethodsResp = await customerService.listCustomerPaymentMethods(client, String(customer));
|
|
357
|
+
const methods = extractPaginatedData(paymentMethodsResp);
|
|
358
|
+
const currencyFiltered = methods.filter((pm) => {
|
|
359
|
+
const pmCurrencyId = normalizePaymentMethodCurrencyId(pm);
|
|
360
|
+
if (pmCurrencyId == null)
|
|
361
|
+
return true; // if unknown, keep (best-effort)
|
|
362
|
+
return pmCurrencyId === companyCurrencyId;
|
|
363
|
+
});
|
|
364
|
+
if (methods.length && currencyFiltered.length === 0) {
|
|
365
|
+
return errorResult(`No payment methods found for customer in companyCurrencyId=${companyCurrencyId}`);
|
|
366
|
+
}
|
|
367
|
+
const paymentMethodOptions = currencyFiltered.map((pm) => ({
|
|
368
|
+
customerPaymentMethodId: toIntMaybe(pm.id),
|
|
369
|
+
type: pm.type,
|
|
370
|
+
verified: pm.verified,
|
|
371
|
+
accountName: pm.accountName,
|
|
372
|
+
companyGatewayId: toIntMaybe(pm.companyGateway?.id),
|
|
373
|
+
// Expose useful raw fields for the LLM.
|
|
374
|
+
rawCurrencyId: normalizePaymentMethodCurrencyId(pm),
|
|
375
|
+
}));
|
|
376
|
+
const paymentMethodOptionsClean = paymentMethodOptions.filter((x) => x.customerPaymentMethodId != null);
|
|
377
|
+
return successResult({
|
|
378
|
+
status: "needs_payment_method_selection",
|
|
379
|
+
companyCurrencyId,
|
|
380
|
+
paymentMethodOptions: paymentMethodOptionsClean,
|
|
381
|
+
// The tool/LLM can choose one of:
|
|
382
|
+
// - existing: provide customerPaymentMethodId
|
|
383
|
+
// - offline: provide offlinePaymentId
|
|
384
|
+
// - new: provide newPaymentMethod payload
|
|
385
|
+
nextRequired: ["paymentMethodKind"],
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
// ============================================================================
|
|
389
|
+
// Step 4b / 5: Starting date
|
|
390
|
+
// ============================================================================
|
|
391
|
+
// For 'new' payment method, we must create it first if needed.
|
|
392
|
+
let resolvedCustomerPaymentMethodId = undefined;
|
|
393
|
+
let resolvedCompanyGatewayId = undefined;
|
|
394
|
+
let resolvedOfflinePaymentId = undefined;
|
|
395
|
+
if (paymentMethodKind === "existing") {
|
|
396
|
+
if (customerPaymentMethodId == null) {
|
|
397
|
+
return errorResult("customerPaymentMethodId is required when paymentMethodKind='existing'");
|
|
398
|
+
}
|
|
399
|
+
if (companyCurrencyId == null) {
|
|
400
|
+
return errorResult("companyCurrencyId is required when paymentMethodKind='existing'");
|
|
401
|
+
}
|
|
402
|
+
// Validate that the payment method belongs to this customer and is compatible (best-effort) with the selected currency.
|
|
403
|
+
const paymentMethodsResp = await customerService.listCustomerPaymentMethods(client, String(customer));
|
|
404
|
+
const methods = extractPaginatedData(paymentMethodsResp);
|
|
405
|
+
const currencyFiltered = methods.filter((pm) => {
|
|
406
|
+
const pmCurrencyId = normalizePaymentMethodCurrencyId(pm);
|
|
407
|
+
if (pmCurrencyId == null)
|
|
408
|
+
return true; // unknown currency metadata; keep (best-effort)
|
|
409
|
+
return pmCurrencyId === companyCurrencyId;
|
|
410
|
+
});
|
|
411
|
+
const selected = currencyFiltered.find((pm) => toIntMaybe(pm?.id) === customerPaymentMethodId);
|
|
412
|
+
if (!selected) {
|
|
413
|
+
return errorResult(`customerPaymentMethodId=${customerPaymentMethodId} not found for customer in companyCurrencyId=${companyCurrencyId}`);
|
|
414
|
+
}
|
|
415
|
+
resolvedCustomerPaymentMethodId = customerPaymentMethodId;
|
|
416
|
+
// Infer gatewayId from the payment method when available.
|
|
417
|
+
if (isRecord(selected) && selected.companyGateway && isRecord(selected.companyGateway)) {
|
|
418
|
+
resolvedCompanyGatewayId = toIntMaybe(selected.companyGateway.id);
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
else if (paymentMethodKind === "offline") {
|
|
422
|
+
if (!offlinePaymentId) {
|
|
423
|
+
return errorResult("offlinePaymentId is required when paymentMethodKind='offline'");
|
|
424
|
+
}
|
|
425
|
+
resolvedOfflinePaymentId = offlinePaymentId;
|
|
426
|
+
}
|
|
427
|
+
else if (paymentMethodKind === "new") {
|
|
428
|
+
if (!newPaymentMethod) {
|
|
429
|
+
return errorResult("newPaymentMethod is required when paymentMethodKind='new'");
|
|
430
|
+
}
|
|
431
|
+
const apiBillingAddress = await mapBillingAddressInputToApiBillingAddress(client, newPaymentMethod.billingAddress);
|
|
432
|
+
const created = await customerService.createCustomerPaymentMethod(client, String(customer), {
|
|
433
|
+
companyGatewayId: String(newPaymentMethod.companyGatewayId),
|
|
434
|
+
type: newPaymentMethod.type,
|
|
435
|
+
paymentNonce: newPaymentMethod.paymentMethodNonce,
|
|
436
|
+
billingAddress: apiBillingAddress,
|
|
437
|
+
});
|
|
438
|
+
resolvedCustomerPaymentMethodId = toIntMaybe(created.id);
|
|
439
|
+
resolvedCompanyGatewayId = newPaymentMethod.companyGatewayId;
|
|
440
|
+
if (resolvedCustomerPaymentMethodId == null) {
|
|
441
|
+
return errorResult("Failed to resolve created payment method ID from createCustomerPaymentMethod response");
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
if (effectiveStage === "needs_starting_date") {
|
|
445
|
+
return successResult({
|
|
446
|
+
status: "needs_starting_date",
|
|
447
|
+
companyCurrencyId,
|
|
448
|
+
paymentMethod: {
|
|
449
|
+
kind: paymentMethodKind,
|
|
450
|
+
customerPaymentMethodId: resolvedCustomerPaymentMethodId,
|
|
451
|
+
offlinePaymentId: resolvedOfflinePaymentId,
|
|
452
|
+
},
|
|
453
|
+
nextRequired: ["startingDate"],
|
|
454
|
+
subscriptionPreview: {
|
|
455
|
+
customerId: customer,
|
|
456
|
+
effectiveStartDate: startingDate ?? undefined,
|
|
457
|
+
subscriptionName: subscriptionName ?? `New subscription for ${productName} (${ratePlan})`,
|
|
458
|
+
detail: detail ?? "New subscription detail",
|
|
459
|
+
ratePlan: [
|
|
460
|
+
{
|
|
461
|
+
productRatePlanId: toIntMaybe(derived.ratePlan.productRateplanId ?? derived.ratePlan.productRatePlanId),
|
|
462
|
+
name: derived.ratePlan.name,
|
|
463
|
+
type: derived.ratePlan.type,
|
|
464
|
+
ratePlanCharge: mapRatePlanChargesForSubscription(derived.ratePlanCharges).ratePlanCharge,
|
|
465
|
+
},
|
|
466
|
+
],
|
|
467
|
+
},
|
|
468
|
+
});
|
|
469
|
+
}
|
|
470
|
+
// ============================================================================
|
|
471
|
+
// Submit
|
|
472
|
+
// ============================================================================
|
|
473
|
+
if (!startingDate) {
|
|
474
|
+
return errorResult("startingDate is required to submit");
|
|
475
|
+
}
|
|
476
|
+
if (!safeIsoDateOnly(startingDate)) {
|
|
477
|
+
return errorResult("startingDate must be in YYYY-MM-DD format");
|
|
478
|
+
}
|
|
479
|
+
if (companyCurrencyId == null) {
|
|
480
|
+
return errorResult("companyCurrencyId is required to submit");
|
|
481
|
+
}
|
|
482
|
+
if (!paymentMethodKind) {
|
|
483
|
+
return errorResult("paymentMethodKind is required to submit");
|
|
484
|
+
}
|
|
485
|
+
const companyCurrencyIdInt = toIntMaybe(companyCurrencyId);
|
|
486
|
+
if (companyCurrencyIdInt == null)
|
|
487
|
+
return errorResult("companyCurrencyId is invalid");
|
|
488
|
+
const productRatePlanId = toIntMaybe(derived.ratePlan.productRateplanId ?? derived.ratePlan.productRatePlanId ?? derived.ratePlan.productRatePlanChargeId);
|
|
489
|
+
if (productRatePlanId == null) {
|
|
490
|
+
return errorResult("Unable to derive productRatePlanId from selected rate plan details");
|
|
491
|
+
}
|
|
492
|
+
// Map charges for subscription: productRatePlanChargeId + quantity (clone semantics).
|
|
493
|
+
const { ratePlanCharge } = mapRatePlanChargesForSubscription(derived.ratePlanCharges);
|
|
494
|
+
if (!ratePlanCharge.length) {
|
|
495
|
+
return errorResult("Selected rate plan has no rate plan charges; cannot create subscription");
|
|
496
|
+
}
|
|
497
|
+
const subscriptionBody = {
|
|
498
|
+
customerId: customer,
|
|
499
|
+
name: subscriptionName ?? `New subscription for ${productName} (${ratePlan})`,
|
|
500
|
+
companyCurrencyId: companyCurrencyIdInt,
|
|
501
|
+
effectiveStartDate: startingDate,
|
|
502
|
+
ratePlan: [
|
|
503
|
+
{
|
|
504
|
+
productRatePlanId,
|
|
505
|
+
name: derived.ratePlan.name,
|
|
506
|
+
type: derived.ratePlan.type,
|
|
507
|
+
ratePlanCharge: ratePlanCharge.map((rc) => ({
|
|
508
|
+
productRatePlanChargeId: toIntMaybe(rc.productRatePlanChargeId),
|
|
509
|
+
quantity: toNumberMaybe(rc.quantity) ?? 1,
|
|
510
|
+
// Allow API to inherit charge definition from productRatePlanChargeId when provided.
|
|
511
|
+
...((rc.productRatePlanChargeId != null ? {} : {})),
|
|
512
|
+
})),
|
|
513
|
+
},
|
|
514
|
+
],
|
|
515
|
+
detail: detail ?? "New subscription detail",
|
|
516
|
+
};
|
|
517
|
+
// Optional gateway and payment fields
|
|
518
|
+
if (paymentMethodKind === "existing") {
|
|
519
|
+
subscriptionBody.customerPaymentMethodId = resolvedCustomerPaymentMethodId;
|
|
520
|
+
if (resolvedCompanyGatewayId != null)
|
|
521
|
+
subscriptionBody.companyGatewayId = resolvedCompanyGatewayId;
|
|
522
|
+
}
|
|
523
|
+
else if (paymentMethodKind === "offline") {
|
|
524
|
+
subscriptionBody.offlinePaymentId = resolvedOfflinePaymentId;
|
|
525
|
+
}
|
|
526
|
+
else if (paymentMethodKind === "new") {
|
|
527
|
+
subscriptionBody.customerPaymentMethodId = resolvedCustomerPaymentMethodId;
|
|
528
|
+
subscriptionBody.companyGatewayId = resolvedCompanyGatewayId;
|
|
529
|
+
}
|
|
530
|
+
if (saleChannel) {
|
|
531
|
+
// API/validator naming aligned with subscription entity normalizer:
|
|
532
|
+
// Subscription has `source` field.
|
|
533
|
+
subscriptionBody.source = saleChannel;
|
|
534
|
+
}
|
|
535
|
+
if (companyIntegration != null) {
|
|
536
|
+
// Keep it numeric ID; matches common patterns in other tools (e.g. companyIntegrationId).
|
|
537
|
+
subscriptionBody.sourceCompanyIntegrationId = companyIntegration;
|
|
538
|
+
}
|
|
539
|
+
const created = await subscriptionService.createSubscription(client, subscriptionBody);
|
|
540
|
+
return successResult(created);
|
|
541
|
+
}
|
|
542
|
+
async function handler(client, args) {
|
|
543
|
+
return createSubscriptionFlowHandler(client, args);
|
|
544
|
+
}
|
|
545
|
+
export const createSubscriptionFlowTool = {
|
|
546
|
+
definition,
|
|
547
|
+
handler,
|
|
548
|
+
};
|
|
549
|
+
//# sourceMappingURL=createSubscriptionFlow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSubscriptionFlow.js","sourceRoot":"","sources":["../../../src/tools/subscriptions/createSubscriptionFlow.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Subscription tools: list, get, create, update, delete, status; billing preview and history; rate plans and charges.
|
|
3
3
|
*/
|
|
4
4
|
import type { Tool } from "../types.js";
|
|
5
|
-
/** All
|
|
5
|
+
/** All 19 subscription tools. */
|
|
6
6
|
export declare function registerSubscriptionTools(): Tool[];
|
|
7
7
|
export { listSubscriptionsTool } from "./listSubscriptions.js";
|
|
8
8
|
export { getSubscriptionTool } from "./getSubscription.js";
|
|
@@ -10,7 +10,6 @@ export { createSubscriptionTool } from "./createSubscription.js";
|
|
|
10
10
|
export { updateSubscriptionTool } from "./updateSubscription.js";
|
|
11
11
|
export { deleteSubscriptionTool } from "./deleteSubscription.js";
|
|
12
12
|
export { updateSubscriptionStatusTool } from "./updateSubscriptionStatus.js";
|
|
13
|
-
export { getSubscriptionNextBillTool } from "./getSubscriptionNextBill.js";
|
|
14
13
|
export { getSubscriptionUpcomingChargesTool } from "./getSubscriptionUpcomingCharges.js";
|
|
15
14
|
export { getSubscriptionInvoicesTool } from "./getSubscriptionInvoices.js";
|
|
16
15
|
export { getSubscriptionLogsTool } from "./getSubscriptionLogs.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/subscriptions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/subscriptions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAqBxC,iCAAiC;AACjC,wBAAgB,yBAAyB,IAAI,IAAI,EAAE,CAsBlD;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AACzF,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC"}
|
|
@@ -8,7 +8,6 @@ import { deleteSubscriptionTool } from "./deleteSubscription.js";
|
|
|
8
8
|
import { getSubscriptionExternalInvoicesTool } from "./getSubscriptionExternalInvoices.js";
|
|
9
9
|
import { getSubscriptionInvoicesTool } from "./getSubscriptionInvoices.js";
|
|
10
10
|
import { getSubscriptionLogsTool } from "./getSubscriptionLogs.js";
|
|
11
|
-
import { getSubscriptionNextBillTool } from "./getSubscriptionNextBill.js";
|
|
12
11
|
import { getSubscriptionRatePlanChargeTool } from "./getSubscriptionRatePlanCharge.js";
|
|
13
12
|
import { getSubscriptionRatePlanTool } from "./getSubscriptionRatePlan.js";
|
|
14
13
|
import { getSubscriptionTool } from "./getSubscription.js";
|
|
@@ -21,7 +20,7 @@ import { updateSubscriptionRatePlanChargeTool } from "./updateSubscriptionRatePl
|
|
|
21
20
|
import { updateSubscriptionRatePlanTool } from "./updateSubscriptionRatePlan.js";
|
|
22
21
|
import { updateSubscriptionStatusTool } from "./updateSubscriptionStatus.js";
|
|
23
22
|
import { updateSubscriptionTool } from "./updateSubscription.js";
|
|
24
|
-
/** All
|
|
23
|
+
/** All 19 subscription tools. */
|
|
25
24
|
export function registerSubscriptionTools() {
|
|
26
25
|
return [
|
|
27
26
|
listSubscriptionsTool,
|
|
@@ -30,7 +29,6 @@ export function registerSubscriptionTools() {
|
|
|
30
29
|
updateSubscriptionTool,
|
|
31
30
|
deleteSubscriptionTool,
|
|
32
31
|
updateSubscriptionStatusTool,
|
|
33
|
-
getSubscriptionNextBillTool,
|
|
34
32
|
getSubscriptionUpcomingChargesTool,
|
|
35
33
|
getSubscriptionInvoicesTool,
|
|
36
34
|
getSubscriptionLogsTool,
|
|
@@ -52,7 +50,6 @@ export { createSubscriptionTool } from "./createSubscription.js";
|
|
|
52
50
|
export { updateSubscriptionTool } from "./updateSubscription.js";
|
|
53
51
|
export { deleteSubscriptionTool } from "./deleteSubscription.js";
|
|
54
52
|
export { updateSubscriptionStatusTool } from "./updateSubscriptionStatus.js";
|
|
55
|
-
export { getSubscriptionNextBillTool } from "./getSubscriptionNextBill.js";
|
|
56
53
|
export { getSubscriptionUpcomingChargesTool } from "./getSubscriptionUpcomingCharges.js";
|
|
57
54
|
export { getSubscriptionInvoicesTool } from "./getSubscriptionInvoices.js";
|
|
58
55
|
export { getSubscriptionLogsTool } from "./getSubscriptionLogs.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/subscriptions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/subscriptions/index.ts"],"names":[],"mappings":"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"}
|