@nhost/stripe-graphql-js 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/builder.d.ts +66 -0
- package/dist/builder.d.ts.map +1 -0
- package/dist/builder.js +15 -0
- package/dist/builder.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/schema/address.d.ts +2 -0
- package/dist/schema/address.d.ts.map +1 -0
- package/dist/schema/address.js +14 -0
- package/dist/schema/address.js.map +1 -0
- package/dist/schema/billing-portal-session.d.ts +2 -0
- package/dist/schema/billing-portal-session.d.ts.map +1 -0
- package/dist/schema/billing-portal-session.js +23 -0
- package/dist/schema/billing-portal-session.js.map +1 -0
- package/dist/schema/customer-shipping.d.ts +2 -0
- package/dist/schema/customer-shipping.d.ts.map +1 -0
- package/dist/schema/customer-shipping.js +24 -0
- package/dist/schema/customer-shipping.js.map +1 -0
- package/dist/schema/customer-tax-location.d.ts +2 -0
- package/dist/schema/customer-tax-location.d.ts.map +1 -0
- package/dist/schema/customer-tax-location.js +20 -0
- package/dist/schema/customer-tax-location.js.map +1 -0
- package/dist/schema/customer-tax.d.ts +2 -0
- package/dist/schema/customer-tax.d.ts.map +1 -0
- package/dist/schema/customer-tax.js +21 -0
- package/dist/schema/customer-tax.js.map +1 -0
- package/dist/schema/customer.d.ts +2 -0
- package/dist/schema/customer.d.ts.map +1 -0
- package/dist/schema/customer.js +126 -0
- package/dist/schema/customer.js.map +1 -0
- package/dist/schema/customers.d.ts +2 -0
- package/dist/schema/customers.d.ts.map +1 -0
- package/dist/schema/customers.js +15 -0
- package/dist/schema/customers.js.map +1 -0
- package/dist/schema/index.d.ts +46 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +50 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/invoice-automatic-tax.d.ts +2 -0
- package/dist/schema/invoice-automatic-tax.d.ts.map +1 -0
- package/dist/schema/invoice-automatic-tax.js +12 -0
- package/dist/schema/invoice-automatic-tax.js.map +1 -0
- package/dist/schema/invoice-custom-field.d.ts +2 -0
- package/dist/schema/invoice-custom-field.d.ts.map +1 -0
- package/dist/schema/invoice-custom-field.js +10 -0
- package/dist/schema/invoice-custom-field.js.map +1 -0
- package/dist/schema/invoice-customer-shipping.d.ts +2 -0
- package/dist/schema/invoice-customer-shipping.d.ts.map +1 -0
- package/dist/schema/invoice-customer-shipping.js +24 -0
- package/dist/schema/invoice-customer-shipping.js.map +1 -0
- package/dist/schema/invoice-customer-tax-id.d.ts +2 -0
- package/dist/schema/invoice-customer-tax-id.d.ts.map +1 -0
- package/dist/schema/invoice-customer-tax-id.js +12 -0
- package/dist/schema/invoice-customer-tax-id.js.map +1 -0
- package/dist/schema/invoice-line-item-period.d.ts +2 -0
- package/dist/schema/invoice-line-item-period.d.ts.map +1 -0
- package/dist/schema/invoice-line-item-period.js +10 -0
- package/dist/schema/invoice-line-item-period.js.map +1 -0
- package/dist/schema/invoice-line-item-tax-amount.d.ts +2 -0
- package/dist/schema/invoice-line-item-tax-amount.d.ts.map +1 -0
- package/dist/schema/invoice-line-item-tax-amount.js +15 -0
- package/dist/schema/invoice-line-item-tax-amount.js.map +1 -0
- package/dist/schema/invoice-line-item.d.ts +2 -0
- package/dist/schema/invoice-line-item.d.ts.map +1 -0
- package/dist/schema/invoice-line-item.js +59 -0
- package/dist/schema/invoice-line-item.js.map +1 -0
- package/dist/schema/invoice-line-items.d.ts +2 -0
- package/dist/schema/invoice-line-items.d.ts.map +1 -0
- package/dist/schema/invoice-line-items.js +15 -0
- package/dist/schema/invoice-line-items.js.map +1 -0
- package/dist/schema/invoice-rendering-options.d.ts +2 -0
- package/dist/schema/invoice-rendering-options.d.ts.map +1 -0
- package/dist/schema/invoice-rendering-options.js +12 -0
- package/dist/schema/invoice-rendering-options.js.map +1 -0
- package/dist/schema/invoice-status-transitions.d.ts +2 -0
- package/dist/schema/invoice-status-transitions.d.ts.map +1 -0
- package/dist/schema/invoice-status-transitions.js +24 -0
- package/dist/schema/invoice-status-transitions.js.map +1 -0
- package/dist/schema/invoice.d.ts +2 -0
- package/dist/schema/invoice.d.ts.map +1 -0
- package/dist/schema/invoice.js +201 -0
- package/dist/schema/invoice.js.map +1 -0
- package/dist/schema/invoices.d.ts +2 -0
- package/dist/schema/invoices.d.ts.map +1 -0
- package/dist/schema/invoices.js +15 -0
- package/dist/schema/invoices.js.map +1 -0
- package/dist/schema/payment-method-billing-details.d.ts +2 -0
- package/dist/schema/payment-method-billing-details.d.ts.map +1 -0
- package/dist/schema/payment-method-billing-details.js +21 -0
- package/dist/schema/payment-method-billing-details.js.map +1 -0
- package/dist/schema/payment-method-card-checks.d.ts +2 -0
- package/dist/schema/payment-method-card-checks.d.ts.map +1 -0
- package/dist/schema/payment-method-card-checks.js +17 -0
- package/dist/schema/payment-method-card-checks.js.map +1 -0
- package/dist/schema/payment-method-card-networks.d.ts +2 -0
- package/dist/schema/payment-method-card-networks.d.ts.map +1 -0
- package/dist/schema/payment-method-card-networks.js +12 -0
- package/dist/schema/payment-method-card-networks.js.map +1 -0
- package/dist/schema/payment-method-card-three-d-secure-usage.d.ts +2 -0
- package/dist/schema/payment-method-card-three-d-secure-usage.d.ts.map +1 -0
- package/dist/schema/payment-method-card-three-d-secure-usage.js +9 -0
- package/dist/schema/payment-method-card-three-d-secure-usage.js.map +1 -0
- package/dist/schema/payment-method-card-wallet-masterpass.d.ts +2 -0
- package/dist/schema/payment-method-card-wallet-masterpass.d.ts.map +1 -0
- package/dist/schema/payment-method-card-wallet-masterpass.js +22 -0
- package/dist/schema/payment-method-card-wallet-masterpass.js.map +1 -0
- package/dist/schema/payment-method-card-wallet-visa-checkout.d.ts +2 -0
- package/dist/schema/payment-method-card-wallet-visa-checkout.d.ts.map +1 -0
- package/dist/schema/payment-method-card-wallet-visa-checkout.js +22 -0
- package/dist/schema/payment-method-card-wallet-visa-checkout.js.map +1 -0
- package/dist/schema/payment-method-card-wallet.d.ts +2 -0
- package/dist/schema/payment-method-card-wallet.d.ts.map +1 -0
- package/dist/schema/payment-method-card-wallet.js +31 -0
- package/dist/schema/payment-method-card-wallet.js.map +1 -0
- package/dist/schema/payment-method-card.d.ts +2 -0
- package/dist/schema/payment-method-card.d.ts.map +1 -0
- package/dist/schema/payment-method-card.js +48 -0
- package/dist/schema/payment-method-card.js.map +1 -0
- package/dist/schema/payment-method.d.ts +2 -0
- package/dist/schema/payment-method.d.ts.map +1 -0
- package/dist/schema/payment-method.js +27 -0
- package/dist/schema/payment-method.js.map +1 -0
- package/dist/schema/payment-methods.d.ts +2 -0
- package/dist/schema/payment-methods.d.ts.map +1 -0
- package/dist/schema/payment-methods.js +66 -0
- package/dist/schema/payment-methods.js.map +1 -0
- package/dist/schema/plan-transform-usage.d.ts +2 -0
- package/dist/schema/plan-transform-usage.d.ts.map +1 -0
- package/dist/schema/plan-transform-usage.js +15 -0
- package/dist/schema/plan-transform-usage.js.map +1 -0
- package/dist/schema/plan.d.ts +2 -0
- package/dist/schema/plan.d.ts.map +1 -0
- package/dist/schema/plan.js +69 -0
- package/dist/schema/plan.js.map +1 -0
- package/dist/schema/price.d.ts +2 -0
- package/dist/schema/price.d.ts.map +1 -0
- package/dist/schema/price.js +63 -0
- package/dist/schema/price.js.map +1 -0
- package/dist/schema/product.d.ts +2 -0
- package/dist/schema/product.d.ts.map +1 -0
- package/dist/schema/product.js +75 -0
- package/dist/schema/product.js.map +1 -0
- package/dist/schema/stripe.d.ts +2 -0
- package/dist/schema/stripe.d.ts.map +1 -0
- package/dist/schema/stripe.js +117 -0
- package/dist/schema/stripe.js.map +1 -0
- package/dist/schema/subscription-automatic-tax.d.ts +2 -0
- package/dist/schema/subscription-automatic-tax.d.ts.map +1 -0
- package/dist/schema/subscription-automatic-tax.js +10 -0
- package/dist/schema/subscription-automatic-tax.js.map +1 -0
- package/dist/schema/subscription-billing-thresholds.d.ts +2 -0
- package/dist/schema/subscription-billing-thresholds.d.ts.map +1 -0
- package/dist/schema/subscription-billing-thresholds.js +15 -0
- package/dist/schema/subscription-billing-thresholds.js.map +1 -0
- package/dist/schema/subscription-item-billing-thresholds.d.ts +2 -0
- package/dist/schema/subscription-item-billing-thresholds.d.ts.map +1 -0
- package/dist/schema/subscription-item-billing-thresholds.js +12 -0
- package/dist/schema/subscription-item-billing-thresholds.js.map +1 -0
- package/dist/schema/subscription-item.d.ts +2 -0
- package/dist/schema/subscription-item.d.ts.map +1 -0
- package/dist/schema/subscription-item.js +33 -0
- package/dist/schema/subscription-item.js.map +1 -0
- package/dist/schema/subscription-items.d.ts +2 -0
- package/dist/schema/subscription-items.d.ts.map +1 -0
- package/dist/schema/subscription-items.js +15 -0
- package/dist/schema/subscription-items.js.map +1 -0
- package/dist/schema/subscription-pause-collection.d.ts +2 -0
- package/dist/schema/subscription-pause-collection.d.ts.map +1 -0
- package/dist/schema/subscription-pause-collection.js +16 -0
- package/dist/schema/subscription-pause-collection.js.map +1 -0
- package/dist/schema/subscription.d.ts +2 -0
- package/dist/schema/subscription.d.ts.map +1 -0
- package/dist/schema/subscription.js +134 -0
- package/dist/schema/subscription.js.map +1 -0
- package/dist/schema/subscriptions.d.ts +2 -0
- package/dist/schema/subscriptions.d.ts.map +1 -0
- package/dist/schema/subscriptions.js +15 -0
- package/dist/schema/subscriptions.js.map +1 -0
- package/dist/schema/tax-rate.d.ts +2 -0
- package/dist/schema/tax-rate.d.ts.map +1 -0
- package/dist/schema/tax-rate.js +58 -0
- package/dist/schema/tax-rate.js.map +1 -0
- package/dist/schema/test-clock.d.ts +2 -0
- package/dist/schema/test-clock.d.ts.map +1 -0
- package/dist/schema/test-clock.js +19 -0
- package/dist/schema/test-clock.js.map +1 -0
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +41 -0
- package/dist/server.js.map +1 -0
- package/dist/types.d.ts +32 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +5 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +34 -0
- package/dist/utils.js.map +1 -0
- package/package.json +1 -1
package/dist/server.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.schema = exports.createStripeGraphQLServer = void 0;
|
|
4
|
+
const node_1 = require("@graphql-yoga/node");
|
|
5
|
+
const schema_1 = require("./schema");
|
|
6
|
+
Object.defineProperty(exports, "schema", { enumerable: true, get: function () { return schema_1.schema; } });
|
|
7
|
+
const utils_1 = require("./utils");
|
|
8
|
+
const createStripeGraphQLServer = (params) => {
|
|
9
|
+
const cors = params === null || params === void 0 ? void 0 : params.cors;
|
|
10
|
+
const isAllowed = params === null || params === void 0 ? void 0 : params.isAllowed;
|
|
11
|
+
const context = (context) => {
|
|
12
|
+
const { request } = context;
|
|
13
|
+
// user id
|
|
14
|
+
const userClaims = (0, utils_1.getUserClaims)(request);
|
|
15
|
+
// check if using correct `x-hasura-admin-secret` header
|
|
16
|
+
const adminSecretFromHeader = request.headers.get('x-hasura-admin-secret');
|
|
17
|
+
const adminSecret = process.env.NHOST_ADMIN_SECRET;
|
|
18
|
+
// check if the request is from Hasura
|
|
19
|
+
const nhostWebhookSecretFromHeader = request.headers.get('x-nhost-webhook-secret');
|
|
20
|
+
const nhostWebhookSecret = process.env.NHOST_WEBHOOK_SECRET;
|
|
21
|
+
const role = request.headers.get('x-hasura-role');
|
|
22
|
+
// variables
|
|
23
|
+
const isAdmin = adminSecretFromHeader === adminSecret ||
|
|
24
|
+
(role === 'admin' && nhostWebhookSecretFromHeader === nhostWebhookSecret);
|
|
25
|
+
// if no isAllowed function is provided, we will allow admin requests
|
|
26
|
+
const isAllowedFunction = isAllowed ||
|
|
27
|
+
((_stripeCustomerId, context) => {
|
|
28
|
+
return context.isAdmin;
|
|
29
|
+
});
|
|
30
|
+
// return
|
|
31
|
+
return Object.assign(Object.assign({}, context), { isAllowed: isAllowedFunction, userClaims,
|
|
32
|
+
isAdmin });
|
|
33
|
+
};
|
|
34
|
+
return (0, node_1.createServer)({
|
|
35
|
+
cors,
|
|
36
|
+
context,
|
|
37
|
+
schema: schema_1.schema
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
exports.createStripeGraphQLServer = createStripeGraphQLServer;
|
|
41
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;AAAA,6CAAqE;AAErE,qCAAiC;AAmDG,uFAnD3B,eAAM,OAmD2B;AAjD1C,mCAAuC;AAEvC,MAAM,yBAAyB,GAAG,CAAC,MAA0B,EAAE,EAAE;IAC/D,MAAM,IAAI,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAA;IACzB,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;IAEnC,MAAM,OAAO,GAAG,CAAC,OAA2B,EAAW,EAAE;QACvD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QAE3B,UAAU;QACV,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAA;QAEzC,wDAAwD;QACxD,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAA;QAElD,sCAAsC;QACtC,MAAM,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;QAClF,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAA;QAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAEjD,YAAY;QACZ,MAAM,OAAO,GACX,qBAAqB,KAAK,WAAW;YACrC,CAAC,IAAI,KAAK,OAAO,IAAI,4BAA4B,KAAK,kBAAkB,CAAC,CAAA;QAE3E,qEAAqE;QACrE,MAAM,iBAAiB,GACrB,SAAS;YACT,CAAC,CAAC,iBAAyB,EAAE,OAAgB,EAAE,EAAE;gBAC/C,OAAO,OAAO,CAAC,OAAO,CAAA;YACxB,CAAC,CAAC,CAAA;QAEJ,SAAS;QACT,uCACK,OAAO,KACV,SAAS,EAAE,iBAAiB,EAC5B,UAAU;YACV,OAAO,IACR;IACH,CAAC,CAAA;IAED,OAAO,IAAA,mBAAY,EAAC;QAClB,IAAI;QACJ,OAAO;QACP,MAAM,EAAN,eAAM;KACP,CAAC,CAAA;AACJ,CAAC,CAAA;AAEQ,8DAAyB"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type Stripe from 'stripe';
|
|
2
|
+
import type { CORSOptions, YogaInitialContext } from '@graphql-yoga/node';
|
|
3
|
+
export declare type StripeGraphQLContext = {
|
|
4
|
+
isAllowed: (stripeCustomerId: string, context: Context) => boolean;
|
|
5
|
+
userClaims?: UserHasuraClaims;
|
|
6
|
+
isAdmin: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare type Context = YogaInitialContext & StripeGraphQLContext;
|
|
9
|
+
export declare type CreateServerProps = {
|
|
10
|
+
cors?: CORSOptions;
|
|
11
|
+
isAllowed?: (stripeCustomerId: string, context: Context) => boolean;
|
|
12
|
+
};
|
|
13
|
+
export declare type StripePaymentMethod = Stripe.PaymentMethod & {
|
|
14
|
+
customer: string | null;
|
|
15
|
+
};
|
|
16
|
+
export declare type StripeSubscription = Stripe.Subscription & {
|
|
17
|
+
customer: string;
|
|
18
|
+
test_clock: string | null;
|
|
19
|
+
};
|
|
20
|
+
export declare type StripeInvoice = Stripe.Invoice & {
|
|
21
|
+
id: string;
|
|
22
|
+
customer: string;
|
|
23
|
+
default_payment_method: StripePaymentMethod | null;
|
|
24
|
+
};
|
|
25
|
+
export declare type UserHasuraClaims = {
|
|
26
|
+
'x-hasura-user-id': string;
|
|
27
|
+
'x-hasura-default-role': string;
|
|
28
|
+
'x-hasura-allowed-roles': string[];
|
|
29
|
+
} & {
|
|
30
|
+
[key: string]: string;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEzE,oBAAY,oBAAoB,GAAG;IACjC,SAAS,EAAE,CAAC,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAA;IAClE,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,oBAAY,OAAO,GAAG,kBAAkB,GAAG,oBAAoB,CAAA;AAE/D,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,SAAS,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAA;CACpE,CAAA;AAID,oBAAY,mBAAmB,GAAG,MAAM,CAAC,aAAa,GAAG;IACvD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB,CAAA;AAED,oBAAY,kBAAkB,GAAG,MAAM,CAAC,YAAY,GAAG;IACrD,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B,CAAA;AAED,oBAAY,aAAa,GAAG,MAAM,CAAC,OAAO,GAAG;IAC3C,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,sBAAsB,EAAE,mBAAmB,GAAG,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,gBAAgB,GAAG;IAC7B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,uBAAuB,EAAE,MAAM,CAAA;IAC/B,wBAAwB,EAAE,MAAM,EAAE,CAAA;CACnC,GAAG;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB,CAAA"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAM1C,eAAO,MAAM,MAAM,QAEjB,CAAA;AAEF,eAAO,MAAM,aAAa,QAAS,OAAO,KAAG,gBAAgB,GAAG,SAqB/D,CAAA"}
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getUserClaims = exports.stripe = void 0;
|
|
7
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
8
|
+
const stripe_1 = __importDefault(require("stripe"));
|
|
9
|
+
if (!process.env.STRIPE_SECRET_KEY) {
|
|
10
|
+
throw new Error('STRIPE_SECRET_KEY env var is not set');
|
|
11
|
+
}
|
|
12
|
+
exports.stripe = new stripe_1.default(process.env.STRIPE_SECRET_KEY, {
|
|
13
|
+
apiVersion: '2022-08-01'
|
|
14
|
+
});
|
|
15
|
+
const getUserClaims = (req) => {
|
|
16
|
+
try {
|
|
17
|
+
const authorizationHeader = req.headers.get('authorization');
|
|
18
|
+
const accessToken = authorizationHeader === null || authorizationHeader === void 0 ? void 0 : authorizationHeader.split(' ')[1];
|
|
19
|
+
if (!accessToken) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
if (!process.env.NHOST_JWT_SECRET) {
|
|
23
|
+
throw new Error('NHOST_JWT_SECRET env var is not set');
|
|
24
|
+
}
|
|
25
|
+
const jwtSecret = JSON.parse(process.env.NHOST_JWT_SECRET);
|
|
26
|
+
const decodedToken = jsonwebtoken_1.default.verify(accessToken, jwtSecret.key);
|
|
27
|
+
return decodedToken['https://hasura.io/jwt/claims'];
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
exports.getUserClaims = getUserClaims;
|
|
34
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,gEAA8B;AAC9B,oDAA2B;AAI3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;IAClC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;CACxD;AAEY,QAAA,MAAM,GAAG,IAAI,gBAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;IAC9D,UAAU,EAAE,YAAY;CACzB,CAAC,CAAA;AAEK,MAAM,aAAa,GAAG,CAAC,GAAY,EAAgC,EAAE;IAC1E,IAAI;QACF,MAAM,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAE5D,MAAM,WAAW,GAAG,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAEtD,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,SAAS,CAAA;SACjB;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;SACvD;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;QAE1D,MAAM,YAAY,GAAG,sBAAG,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAQ,CAAA;QAClE,OAAO,YAAY,CAAC,8BAA8B,CAAqB,CAAA;KACxE;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,SAAS,CAAA;KACjB;AACH,CAAC,CAAA;AArBY,QAAA,aAAa,iBAqBzB"}
|