@alexasomba/better-auth-paystack 2.2.0 → 2.4.0
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 +12 -6
- package/dist/client.d.mts +8 -2
- package/dist/client.d.mts.map +1 -1
- package/dist/client.mjs +29 -18
- package/dist/client.mjs.map +1 -1
- package/dist/index.d.mts +370 -399
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +179 -118
- package/dist/index.mjs.map +1 -1
- package/dist/{types-B5ZnlFrq.d.mts → types-CNI2ur0p.d.mts} +22 -9
- package/dist/types-CNI2ur0p.d.mts.map +1 -0
- package/dist/version-C_50YiuM.mjs +6 -0
- package/dist/version-C_50YiuM.mjs.map +1 -0
- package/package.json +19 -20
- package/dist/types-B5ZnlFrq.d.mts.map +0 -1
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/operations.ts","../src/index.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/routes.ts","../src/version.ts","../src/operations.ts","../src/index.ts"],"mappings":"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"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { t as PACKAGE_VERSION } from "./version-C_50YiuM.mjs";
|
|
2
|
+
import { HIDE_METADATA, defineErrorCodes, logger } from "better-auth";
|
|
2
3
|
import { defu } from "defu";
|
|
3
|
-
import { createAuthEndpoint, createAuthMiddleware } from "
|
|
4
|
-
import { HIDE_METADATA, logger } from "better-auth";
|
|
5
|
-
import { APIError, getSessionFromCtx, originCheck, sessionMiddleware } from "better-auth/api";
|
|
4
|
+
import { APIError, createAuthEndpoint, createAuthMiddleware, getSessionFromCtx, originCheck, sessionMiddleware } from "better-auth/api";
|
|
6
5
|
import { z } from "zod";
|
|
7
6
|
import { PaystackResponse } from "@alexasomba/paystack-node";
|
|
8
7
|
import { mergeSchema } from "better-auth/db";
|
|
@@ -229,21 +228,34 @@ async function syncSubscriptionSeats(ctx, organizationId, options) {
|
|
|
229
228
|
}
|
|
230
229
|
//#endregion
|
|
231
230
|
//#region src/middleware.ts
|
|
231
|
+
const BILLING_ORG_ROLES = new Set(["owner", "admin"]);
|
|
232
|
+
function hasBillingRole(role) {
|
|
233
|
+
if (Array.isArray(role)) return role.some((value) => hasBillingRole(value));
|
|
234
|
+
if (typeof role !== "string") return false;
|
|
235
|
+
return role.split(",").map((value) => value.trim()).some((value) => BILLING_ORG_ROLES.has(value));
|
|
236
|
+
}
|
|
232
237
|
const referenceMiddleware = (options, action) => createAuthMiddleware(async (ctx) => {
|
|
233
238
|
const session = ctx.context.session;
|
|
234
239
|
if (session === null || session === void 0) throw new APIError("UNAUTHORIZED");
|
|
235
240
|
const body = ctx.body ?? {};
|
|
236
241
|
const query = ctx.query ?? {};
|
|
237
|
-
const
|
|
242
|
+
const requestQueryReferenceId = typeof ctx.request?.url === "string" ? new URL(ctx.request.url).searchParams.get("referenceId") ?? void 0 : void 0;
|
|
243
|
+
const referenceId = body.referenceId ?? query.referenceId ?? requestQueryReferenceId ?? session.user.id;
|
|
238
244
|
const subscriptionOptions = options.subscription;
|
|
239
|
-
if (referenceId === session.user.id) return {
|
|
245
|
+
if (referenceId === session.user.id) return { context: {
|
|
246
|
+
...ctx.context,
|
|
247
|
+
referenceId
|
|
248
|
+
} };
|
|
240
249
|
if (subscriptionOptions?.enabled === true && "authorizeReference" in subscriptionOptions && typeof subscriptionOptions.authorizeReference === "function") {
|
|
241
250
|
if (await subscriptionOptions.authorizeReference({
|
|
242
251
|
user: session.user,
|
|
243
252
|
session: session.session,
|
|
244
253
|
referenceId,
|
|
245
254
|
action
|
|
246
|
-
}, ctx) === true) return {
|
|
255
|
+
}, ctx) === true) return { context: {
|
|
256
|
+
...ctx.context,
|
|
257
|
+
referenceId
|
|
258
|
+
} };
|
|
247
259
|
throw new APIError("UNAUTHORIZED");
|
|
248
260
|
}
|
|
249
261
|
if (options.organization?.enabled === true) {
|
|
@@ -257,13 +269,13 @@ const referenceMiddleware = (options, action) => createAuthMiddleware(async (ctx
|
|
|
257
269
|
value: referenceId
|
|
258
270
|
}]
|
|
259
271
|
});
|
|
260
|
-
if (member !== null && member !== void 0) {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
}
|
|
272
|
+
if (member !== null && member !== void 0 && hasBillingRole(member.role)) return { context: {
|
|
273
|
+
...ctx.context,
|
|
274
|
+
referenceId
|
|
275
|
+
} };
|
|
264
276
|
}
|
|
265
|
-
logger.error(`Passing referenceId into a subscription action isn't allowed
|
|
266
|
-
throw new APIError("BAD_REQUEST", { message: "Passing referenceId isn't allowed without subscription.authorizeReference or
|
|
277
|
+
logger.error(`Passing referenceId into a subscription action isn't allowed unless subscription.authorizeReference allows it or the session user is an organization owner/admin.`);
|
|
278
|
+
throw new APIError("BAD_REQUEST", { message: "Passing referenceId isn't allowed without subscription.authorizeReference or organization owner/admin membership." });
|
|
267
279
|
});
|
|
268
280
|
//#endregion
|
|
269
281
|
//#region src/limits.ts
|
|
@@ -321,6 +333,32 @@ function isAllowedSubscriptionChannel(channel, allowedChannels) {
|
|
|
321
333
|
if (allowedChannels === void 0) return true;
|
|
322
334
|
return channel !== void 0 && channel !== null && allowedChannels.includes(channel);
|
|
323
335
|
}
|
|
336
|
+
async function assertReferenceAccess(ctx, options, data) {
|
|
337
|
+
if (data.referenceId === data.user.id) return;
|
|
338
|
+
if (options.subscription?.enabled === true && typeof options.subscription.authorizeReference === "function") {
|
|
339
|
+
if (await options.subscription.authorizeReference({
|
|
340
|
+
user: data.user,
|
|
341
|
+
session: data.session,
|
|
342
|
+
referenceId: data.referenceId,
|
|
343
|
+
action: data.action
|
|
344
|
+
}, ctx) === true) return;
|
|
345
|
+
throw new APIError("UNAUTHORIZED");
|
|
346
|
+
}
|
|
347
|
+
if (options.organization?.enabled === true) {
|
|
348
|
+
const member = await ctx.context.adapter.findOne({
|
|
349
|
+
model: "member",
|
|
350
|
+
where: [{
|
|
351
|
+
field: "userId",
|
|
352
|
+
value: data.user.id
|
|
353
|
+
}, {
|
|
354
|
+
field: "organizationId",
|
|
355
|
+
value: data.referenceId
|
|
356
|
+
}]
|
|
357
|
+
});
|
|
358
|
+
if (member !== null && member !== void 0 && hasBillingRole(member.role)) return;
|
|
359
|
+
}
|
|
360
|
+
throw new APIError("UNAUTHORIZED");
|
|
361
|
+
}
|
|
324
362
|
async function hmacSha512Hex(secret, message) {
|
|
325
363
|
const encoder = new TextEncoder();
|
|
326
364
|
const keyData = encoder.encode(secret);
|
|
@@ -1301,8 +1339,15 @@ const listSubscriptions = (options, path = "/list-subscriptions") => {
|
|
|
1301
1339
|
const session = await getSessionFromCtx(ctx);
|
|
1302
1340
|
if (session === void 0 || session === null) throw new APIError("UNAUTHORIZED");
|
|
1303
1341
|
const referenceIdPart = ctx.context.referenceId;
|
|
1304
|
-
const queryRefId = ctx.query?.referenceId;
|
|
1305
|
-
const
|
|
1342
|
+
const queryRefId = ctx.query?.referenceId ?? (typeof ctx.request?.url === "string" ? new URL(ctx.request.url).searchParams.get("referenceId") ?? void 0 : void 0);
|
|
1343
|
+
const userId = session.user.id;
|
|
1344
|
+
if (queryRefId !== void 0 && queryRefId !== userId && referenceIdPart !== queryRefId) await assertReferenceAccess(ctx, options, {
|
|
1345
|
+
user: session.user,
|
|
1346
|
+
session: session.session,
|
|
1347
|
+
referenceId: queryRefId,
|
|
1348
|
+
action: "list-subscriptions"
|
|
1349
|
+
});
|
|
1350
|
+
const referenceId = queryRefId ?? referenceIdPart ?? userId;
|
|
1306
1351
|
const res = await ctx.context.adapter.findMany({
|
|
1307
1352
|
model: "subscription",
|
|
1308
1353
|
where: [{
|
|
@@ -1326,8 +1371,15 @@ const listTransactions = (options, path = "/list-transactions") => {
|
|
|
1326
1371
|
const session = await getSessionFromCtx(ctx);
|
|
1327
1372
|
if (session === void 0 || session === null) throw new APIError("UNAUTHORIZED");
|
|
1328
1373
|
const referenceIdPart = ctx.context.referenceId;
|
|
1329
|
-
const queryRefId = ctx.query?.referenceId;
|
|
1330
|
-
const
|
|
1374
|
+
const queryRefId = ctx.query?.referenceId ?? (typeof ctx.request?.url === "string" ? new URL(ctx.request.url).searchParams.get("referenceId") ?? void 0 : void 0);
|
|
1375
|
+
const userId = session.user.id;
|
|
1376
|
+
if (queryRefId !== void 0 && queryRefId !== userId && referenceIdPart !== queryRefId) await assertReferenceAccess(ctx, options, {
|
|
1377
|
+
user: session.user,
|
|
1378
|
+
session: session.session,
|
|
1379
|
+
referenceId: queryRefId,
|
|
1380
|
+
action: "list-transactions"
|
|
1381
|
+
});
|
|
1382
|
+
const referenceId = queryRefId ?? referenceIdPart ?? userId;
|
|
1331
1383
|
const sorted = (await ctx.context.adapter.findMany({
|
|
1332
1384
|
model: "paystackTransaction",
|
|
1333
1385
|
where: [{
|
|
@@ -1566,8 +1618,6 @@ const getConfig = (options, path = "/get-config") => {
|
|
|
1566
1618
|
});
|
|
1567
1619
|
});
|
|
1568
1620
|
};
|
|
1569
|
-
//#endregion
|
|
1570
|
-
//#region src/schema.ts
|
|
1571
1621
|
const transactions = { paystackTransaction: { fields: {
|
|
1572
1622
|
reference: {
|
|
1573
1623
|
type: "string",
|
|
@@ -1803,8 +1853,17 @@ const plans = { paystackPlan: { fields: {
|
|
|
1803
1853
|
required: true
|
|
1804
1854
|
}
|
|
1805
1855
|
} } };
|
|
1856
|
+
({
|
|
1857
|
+
...subscriptions,
|
|
1858
|
+
...transactions,
|
|
1859
|
+
...user,
|
|
1860
|
+
...organization,
|
|
1861
|
+
...products,
|
|
1862
|
+
...plans
|
|
1863
|
+
});
|
|
1806
1864
|
const getSchema = (options) => {
|
|
1807
1865
|
let baseSchema;
|
|
1866
|
+
const optionSchema = options.schema;
|
|
1808
1867
|
if (options.subscription?.enabled === true) baseSchema = {
|
|
1809
1868
|
...subscriptions,
|
|
1810
1869
|
...transactions,
|
|
@@ -1823,10 +1882,10 @@ const getSchema = (options) => {
|
|
|
1823
1882
|
...organization
|
|
1824
1883
|
};
|
|
1825
1884
|
if (options.schema !== void 0 && options.subscription?.enabled !== true && "subscription" in options.schema) {
|
|
1826
|
-
const { subscription: _subscription, ...restSchema } =
|
|
1885
|
+
const { subscription: _subscription, ...restSchema } = optionSchema ?? {};
|
|
1827
1886
|
return mergeSchema(baseSchema, restSchema);
|
|
1828
1887
|
}
|
|
1829
|
-
return mergeSchema(baseSchema,
|
|
1888
|
+
return mergeSchema(baseSchema, optionSchema);
|
|
1830
1889
|
};
|
|
1831
1890
|
//#endregion
|
|
1832
1891
|
//#region src/operations.ts
|
|
@@ -2055,7 +2114,7 @@ async function chargeSubscriptionRenewal(ctx, options, input) {
|
|
|
2055
2114
|
//#endregion
|
|
2056
2115
|
//#region src/index.ts
|
|
2057
2116
|
const INTERNAL_ERROR_CODES = defineErrorCodes(Object.fromEntries(Object.entries(PAYSTACK_ERROR_CODES).map(([key, value]) => [key, typeof value === "string" ? value : value.message])));
|
|
2058
|
-
const
|
|
2117
|
+
const createPaystackPlugin = (options) => {
|
|
2059
2118
|
const routeOptions = {
|
|
2060
2119
|
...options,
|
|
2061
2120
|
webhook: {
|
|
@@ -2065,6 +2124,7 @@ const paystack = (options) => {
|
|
|
2065
2124
|
};
|
|
2066
2125
|
return {
|
|
2067
2126
|
id: "paystack",
|
|
2127
|
+
version: PACKAGE_VERSION,
|
|
2068
2128
|
endpoints: {
|
|
2069
2129
|
initializeTransaction: initializeTransaction(routeOptions, "/paystack/initialize-transaction"),
|
|
2070
2130
|
verifyTransaction: verifyTransaction(routeOptions, "/paystack/verify-transaction"),
|
|
@@ -2084,97 +2144,97 @@ const paystack = (options) => {
|
|
|
2084
2144
|
listPlans: listPlans(routeOptions, "/paystack/list-plans")
|
|
2085
2145
|
},
|
|
2086
2146
|
schema: getSchema(options),
|
|
2087
|
-
init: (ctx) => {
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
}
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
}
|
|
2117
|
-
}
|
|
2118
|
-
} catch (error) {
|
|
2119
|
-
ctx.logger.error("Failed to create Paystack customer for user", error);
|
|
2147
|
+
init: ((ctx) => {
|
|
2148
|
+
const organizationPluginAvailable = ctx.hasPlugin("organization");
|
|
2149
|
+
if (options.organization?.enabled === true && !organizationPluginAvailable) ctx.logger.error("Paystack organization billing is enabled, but the Better Auth organization plugin was not found. Organization billing hooks will be skipped.");
|
|
2150
|
+
return { options: { databaseHooks: {
|
|
2151
|
+
user: { create: { async after(user, hookCtx) {
|
|
2152
|
+
if (!hookCtx || options.createCustomerOnSignUp !== true || user.email === null || user.email === void 0 || user.email === "") return;
|
|
2153
|
+
try {
|
|
2154
|
+
const paystackOps = getPaystackOps(options.paystackClient);
|
|
2155
|
+
if (!paystackOps) return;
|
|
2156
|
+
const sdkRes = unwrapSdkResult(await paystackOps.customer?.create({ body: {
|
|
2157
|
+
email: user.email,
|
|
2158
|
+
first_name: user.name ?? void 0,
|
|
2159
|
+
metadata: JSON.stringify({ userId: user.id })
|
|
2160
|
+
} }) ?? await Promise.reject(/* @__PURE__ */ new Error("Paystack client missing customer ops")));
|
|
2161
|
+
const customerCode = sdkRes?.customer_code;
|
|
2162
|
+
if (customerCode !== void 0 && customerCode !== null && customerCode !== "") {
|
|
2163
|
+
await ctx.adapter.update({
|
|
2164
|
+
model: "user",
|
|
2165
|
+
where: [{
|
|
2166
|
+
field: "id",
|
|
2167
|
+
value: user.id
|
|
2168
|
+
}],
|
|
2169
|
+
update: { paystackCustomerCode: customerCode }
|
|
2170
|
+
});
|
|
2171
|
+
if (typeof options.onCustomerCreate === "function") await options.onCustomerCreate({
|
|
2172
|
+
paystackCustomer: sdkRes,
|
|
2173
|
+
user: {
|
|
2174
|
+
...user,
|
|
2175
|
+
paystackCustomerCode: customerCode
|
|
2176
|
+
}
|
|
2177
|
+
}, hookCtx);
|
|
2120
2178
|
}
|
|
2121
|
-
}
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
email: targetEmail,
|
|
2148
|
-
first_name: org.name,
|
|
2149
|
-
metadata: JSON.stringify({ organizationId: org.id })
|
|
2150
|
-
}, extraCreateParams);
|
|
2151
|
-
const paystackOps = getPaystackOps(options.paystackClient);
|
|
2152
|
-
if (!paystackOps) return;
|
|
2153
|
-
const sdkRes = unwrapSdkResult(await paystackOps.customer?.create({ body: params }) ?? await Promise.reject(/* @__PURE__ */ new Error("Paystack client missing customer ops")));
|
|
2154
|
-
const customerCode = sdkRes?.customer_code;
|
|
2155
|
-
if (customerCode !== void 0 && customerCode !== null && customerCode !== "" && sdkRes !== void 0 && sdkRes !== null) {
|
|
2156
|
-
await ctx.adapter.update({
|
|
2157
|
-
model: "organization",
|
|
2158
|
-
where: [{
|
|
2159
|
-
field: "id",
|
|
2160
|
-
value: org.id
|
|
2161
|
-
}],
|
|
2162
|
-
update: { paystackCustomerCode: customerCode }
|
|
2163
|
-
});
|
|
2164
|
-
if (typeof options.organization?.onCustomerCreate === "function") await options.organization.onCustomerCreate({
|
|
2165
|
-
paystackCustomer: sdkRes,
|
|
2166
|
-
organization: {
|
|
2167
|
-
...org,
|
|
2168
|
-
paystackCustomerCode: customerCode
|
|
2169
|
-
}
|
|
2170
|
-
}, hookCtx);
|
|
2171
|
-
}
|
|
2172
|
-
} catch (error) {
|
|
2173
|
-
ctx.logger.error("Failed to create Paystack customer for organization", error);
|
|
2179
|
+
} catch (error) {
|
|
2180
|
+
ctx.logger.error("Failed to create Paystack customer for user", error);
|
|
2181
|
+
}
|
|
2182
|
+
} } },
|
|
2183
|
+
organization: options.organization?.enabled === true && organizationPluginAvailable ? { create: { async after(org, hookCtx) {
|
|
2184
|
+
try {
|
|
2185
|
+
const extraCreateParams = typeof options.organization?.getCustomerCreateParams === "function" ? await options.organization.getCustomerCreateParams(org, hookCtx) : {};
|
|
2186
|
+
let targetEmail = org.email;
|
|
2187
|
+
if (targetEmail === void 0 || targetEmail === null) {
|
|
2188
|
+
const ownerMember = await ctx.adapter.findOne({
|
|
2189
|
+
model: "member",
|
|
2190
|
+
where: [{
|
|
2191
|
+
field: "organizationId",
|
|
2192
|
+
value: org.id
|
|
2193
|
+
}, {
|
|
2194
|
+
field: "role",
|
|
2195
|
+
value: "owner"
|
|
2196
|
+
}]
|
|
2197
|
+
});
|
|
2198
|
+
if (ownerMember !== null && ownerMember !== void 0) targetEmail = (await ctx.adapter.findOne({
|
|
2199
|
+
model: "user",
|
|
2200
|
+
where: [{
|
|
2201
|
+
field: "id",
|
|
2202
|
+
value: ownerMember.userId
|
|
2203
|
+
}]
|
|
2204
|
+
}))?.email;
|
|
2174
2205
|
}
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
|
|
2206
|
+
if (targetEmail === void 0 || targetEmail === null) return;
|
|
2207
|
+
const params = defu({
|
|
2208
|
+
email: targetEmail,
|
|
2209
|
+
first_name: org.name,
|
|
2210
|
+
metadata: JSON.stringify({ organizationId: org.id })
|
|
2211
|
+
}, extraCreateParams);
|
|
2212
|
+
const paystackOps = getPaystackOps(options.paystackClient);
|
|
2213
|
+
if (!paystackOps) return;
|
|
2214
|
+
const sdkRes = unwrapSdkResult(await paystackOps.customer?.create({ body: params }) ?? await Promise.reject(/* @__PURE__ */ new Error("Paystack client missing customer ops")));
|
|
2215
|
+
const customerCode = sdkRes?.customer_code;
|
|
2216
|
+
if (customerCode !== void 0 && customerCode !== null && customerCode !== "" && sdkRes !== void 0 && sdkRes !== null) {
|
|
2217
|
+
await ctx.adapter.update({
|
|
2218
|
+
model: "organization",
|
|
2219
|
+
where: [{
|
|
2220
|
+
field: "id",
|
|
2221
|
+
value: org.id
|
|
2222
|
+
}],
|
|
2223
|
+
update: { paystackCustomerCode: customerCode }
|
|
2224
|
+
});
|
|
2225
|
+
if (typeof options.organization?.onCustomerCreate === "function") await options.organization.onCustomerCreate({
|
|
2226
|
+
paystackCustomer: sdkRes,
|
|
2227
|
+
organization: {
|
|
2228
|
+
...org,
|
|
2229
|
+
paystackCustomerCode: customerCode
|
|
2230
|
+
}
|
|
2231
|
+
}, hookCtx);
|
|
2232
|
+
}
|
|
2233
|
+
} catch (error) {
|
|
2234
|
+
ctx.logger.error("Failed to create Paystack customer for organization", error);
|
|
2235
|
+
}
|
|
2236
|
+
} } } : void 0,
|
|
2237
|
+
member: organizationPluginAvailable ? {
|
|
2178
2238
|
create: {
|
|
2179
2239
|
before: async (member, ctx) => {
|
|
2180
2240
|
if (options.subscription?.enabled === true && member.organizationId && ctx !== null && ctx !== void 0) await checkSeatLimit(ctx, member.organizationId);
|
|
@@ -2186,8 +2246,8 @@ const paystack = (options) => {
|
|
|
2186
2246
|
delete: { after: async (member, ctx) => {
|
|
2187
2247
|
if (options.subscription?.enabled === true && typeof member?.organizationId === "string" && ctx) await syncSubscriptionSeats(ctx, member.organizationId, routeOptions);
|
|
2188
2248
|
} }
|
|
2189
|
-
},
|
|
2190
|
-
invitation: {
|
|
2249
|
+
} : void 0,
|
|
2250
|
+
invitation: organizationPluginAvailable ? {
|
|
2191
2251
|
create: {
|
|
2192
2252
|
before: async (invitation, ctx) => {
|
|
2193
2253
|
if (options.subscription?.enabled === true && invitation.organizationId && ctx !== null && ctx !== void 0) await checkSeatLimit(ctx, invitation.organizationId);
|
|
@@ -2199,8 +2259,8 @@ const paystack = (options) => {
|
|
|
2199
2259
|
delete: { after: async (invitation, ctx) => {
|
|
2200
2260
|
if (options.subscription?.enabled === true && typeof invitation?.organizationId === "string" && ctx) await syncSubscriptionSeats(ctx, invitation.organizationId, routeOptions);
|
|
2201
2261
|
} }
|
|
2202
|
-
},
|
|
2203
|
-
team: { create: { before: async (team, ctx) => {
|
|
2262
|
+
} : void 0,
|
|
2263
|
+
team: organizationPluginAvailable ? { create: { before: async (team, ctx) => {
|
|
2204
2264
|
if (options.subscription?.enabled === true && team.organizationId && ctx) {
|
|
2205
2265
|
const subscription = await getOrganizationSubscription(ctx, team.organizationId);
|
|
2206
2266
|
if (subscription !== null && subscription !== void 0) {
|
|
@@ -2208,13 +2268,14 @@ const paystack = (options) => {
|
|
|
2208
2268
|
if (typeof maxTeams === "number") await checkTeamLimit(ctx, team.organizationId, maxTeams);
|
|
2209
2269
|
}
|
|
2210
2270
|
}
|
|
2211
|
-
} } }
|
|
2212
|
-
} };
|
|
2213
|
-
},
|
|
2271
|
+
} } } : void 0
|
|
2272
|
+
} } };
|
|
2273
|
+
}),
|
|
2214
2274
|
$ERROR_CODES: INTERNAL_ERROR_CODES,
|
|
2215
2275
|
options
|
|
2216
2276
|
};
|
|
2217
2277
|
};
|
|
2278
|
+
const paystack = createPaystackPlugin;
|
|
2218
2279
|
//#endregion
|
|
2219
2280
|
export { chargeSubscriptionRenewal, paystack, syncPaystackPlans, syncPaystackProducts };
|
|
2220
2281
|
|