@shopify/shopify-app-remix 2.8.1 → 3.0.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/dist/cjs/server/authenticate/admin/billing/cancel.js +4 -2
- package/dist/cjs/server/authenticate/admin/billing/cancel.js.map +1 -1
- package/dist/cjs/server/authenticate/admin/billing/check.js +4 -2
- package/dist/cjs/server/authenticate/admin/billing/check.js.map +1 -1
- package/dist/cjs/server/authenticate/admin/billing/request.js +4 -2
- package/dist/cjs/server/authenticate/admin/billing/request.js.map +1 -1
- package/dist/cjs/server/authenticate/admin/billing/require.js +4 -2
- package/dist/cjs/server/authenticate/admin/billing/require.js.map +1 -1
- package/dist/cjs/server/authenticate/admin/strategies/auth-code-flow.js +3 -0
- package/dist/cjs/server/authenticate/admin/strategies/auth-code-flow.js.map +1 -1
- package/dist/cjs/server/authenticate/admin/strategies/token-exchange.js +7 -2
- package/dist/cjs/server/authenticate/admin/strategies/token-exchange.js.map +1 -1
- package/dist/cjs/server/authenticate/helpers/idempotent-promise-handler.js +1 -0
- package/dist/cjs/server/authenticate/helpers/idempotent-promise-handler.js.map +1 -1
- package/dist/cjs/server/authenticate/helpers/invalidate-access-token.js +11 -0
- package/dist/cjs/server/authenticate/helpers/invalidate-access-token.js.map +1 -0
- package/dist/cjs/server/authenticate/helpers/reject-bot-request.js +11 -1
- package/dist/cjs/server/authenticate/helpers/reject-bot-request.js.map +1 -1
- package/dist/cjs/server/authenticate/public/appProxy/authenticate.js +4 -0
- package/dist/cjs/server/authenticate/public/appProxy/authenticate.js.map +1 -1
- package/dist/cjs/server/authenticate/public/checkout/authenticate.js +2 -25
- package/dist/cjs/server/authenticate/public/checkout/authenticate.js.map +1 -1
- package/dist/cjs/server/authenticate/public/customer-account/authenticate.js +10 -0
- package/dist/cjs/server/authenticate/public/customer-account/authenticate.js.map +1 -0
- package/dist/cjs/server/authenticate/public/extension/authenticate.js +33 -0
- package/dist/cjs/server/authenticate/public/extension/authenticate.js.map +1 -0
- package/dist/cjs/server/authenticate/public/factory.js +7 -14
- package/dist/cjs/server/authenticate/public/factory.js.map +1 -1
- package/dist/cjs/server/authenticate/webhooks/authenticate.js +6 -26
- package/dist/cjs/server/authenticate/webhooks/authenticate.js.map +1 -1
- package/dist/cjs/server/clients/admin/rest.js +4 -1
- package/dist/cjs/server/clients/admin/rest.js.map +1 -1
- package/dist/cjs/server/future/flags.js +0 -10
- package/dist/cjs/server/future/flags.js.map +1 -1
- package/dist/cjs/server/index.js +4 -0
- package/dist/cjs/server/index.js.map +1 -1
- package/dist/cjs/server/shopify-app.js +7 -1
- package/dist/cjs/server/shopify-app.js.map +1 -1
- package/dist/cjs/server/version.js +1 -1
- package/dist/esm/react/components/AppProvider/AppProvider.mjs +1 -1
- package/dist/esm/server/authenticate/admin/billing/cancel.mjs +4 -2
- package/dist/esm/server/authenticate/admin/billing/cancel.mjs.map +1 -1
- package/dist/esm/server/authenticate/admin/billing/check.mjs +4 -2
- package/dist/esm/server/authenticate/admin/billing/check.mjs.map +1 -1
- package/dist/esm/server/authenticate/admin/billing/request.mjs +4 -2
- package/dist/esm/server/authenticate/admin/billing/request.mjs.map +1 -1
- package/dist/esm/server/authenticate/admin/billing/require.mjs +4 -2
- package/dist/esm/server/authenticate/admin/billing/require.mjs.map +1 -1
- package/dist/esm/server/authenticate/admin/strategies/auth-code-flow.mjs +3 -0
- package/dist/esm/server/authenticate/admin/strategies/auth-code-flow.mjs.map +1 -1
- package/dist/esm/server/authenticate/admin/strategies/token-exchange.mjs +7 -2
- package/dist/esm/server/authenticate/admin/strategies/token-exchange.mjs.map +1 -1
- package/dist/esm/server/authenticate/helpers/idempotent-promise-handler.mjs +1 -0
- package/dist/esm/server/authenticate/helpers/idempotent-promise-handler.mjs.map +1 -1
- package/dist/esm/server/authenticate/helpers/invalidate-access-token.mjs +9 -0
- package/dist/esm/server/authenticate/helpers/invalidate-access-token.mjs.map +1 -0
- package/dist/esm/server/authenticate/helpers/reject-bot-request.mjs +11 -1
- package/dist/esm/server/authenticate/helpers/reject-bot-request.mjs.map +1 -1
- package/dist/esm/server/authenticate/public/appProxy/authenticate.mjs +4 -0
- package/dist/esm/server/authenticate/public/appProxy/authenticate.mjs.map +1 -1
- package/dist/esm/server/authenticate/public/checkout/authenticate.mjs +2 -25
- package/dist/esm/server/authenticate/public/checkout/authenticate.mjs.map +1 -1
- package/dist/esm/server/authenticate/public/customer-account/authenticate.mjs +8 -0
- package/dist/esm/server/authenticate/public/customer-account/authenticate.mjs.map +1 -0
- package/dist/esm/server/authenticate/public/extension/authenticate.mjs +31 -0
- package/dist/esm/server/authenticate/public/extension/authenticate.mjs.map +1 -0
- package/dist/esm/server/authenticate/public/factory.mjs +7 -14
- package/dist/esm/server/authenticate/public/factory.mjs.map +1 -1
- package/dist/esm/server/authenticate/webhooks/authenticate.mjs +6 -26
- package/dist/esm/server/authenticate/webhooks/authenticate.mjs.map +1 -1
- package/dist/esm/server/clients/admin/rest.mjs +4 -1
- package/dist/esm/server/clients/admin/rest.mjs.map +1 -1
- package/dist/esm/server/future/flags.mjs +0 -10
- package/dist/esm/server/future/flags.mjs.map +1 -1
- package/dist/esm/server/index.mjs +1 -1
- package/dist/esm/server/shopify-app.mjs +7 -2
- package/dist/esm/server/shopify-app.mjs.map +1 -1
- package/dist/esm/server/version.mjs +1 -1
- package/dist/ts/react/components/AppProvider/AppProvider.doc.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/billing/cancel.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/billing/check.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/billing/request.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/billing/require.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/billing/types.d.ts +44 -82
- package/dist/ts/server/authenticate/admin/billing/types.d.ts.map +1 -1
- package/dist/ts/server/authenticate/admin/strategies/token-exchange.d.ts.map +1 -1
- package/dist/ts/server/authenticate/fulfillment-service/types.d.ts +4 -3
- package/dist/ts/server/authenticate/fulfillment-service/types.d.ts.map +1 -1
- package/dist/ts/server/authenticate/helpers/index.d.ts +1 -0
- package/dist/ts/server/authenticate/helpers/index.d.ts.map +1 -1
- package/dist/ts/server/authenticate/helpers/invalidate-access-token.d.ts +4 -0
- package/dist/ts/server/authenticate/helpers/invalidate-access-token.d.ts.map +1 -0
- package/dist/ts/server/authenticate/helpers/reject-bot-request.d.ts.map +1 -1
- package/dist/ts/server/authenticate/public/appProxy/authenticate.d.ts.map +1 -1
- package/dist/ts/server/authenticate/public/checkout/authenticate.d.ts.map +1 -1
- package/dist/ts/server/authenticate/public/checkout/authenticate.public.checkout.doc.d.ts.map +1 -1
- package/dist/ts/server/authenticate/public/customer-account/authenticate.d.ts +4 -0
- package/dist/ts/server/authenticate/public/customer-account/authenticate.d.ts.map +1 -0
- package/dist/ts/server/authenticate/public/customer-account/authenticate.public.customerAccount.doc.d.ts +4 -0
- package/dist/ts/server/authenticate/public/customer-account/authenticate.public.customerAccount.doc.d.ts.map +1 -0
- package/dist/ts/server/authenticate/public/customer-account/types.d.ts +58 -0
- package/dist/ts/server/authenticate/public/customer-account/types.d.ts.map +1 -0
- package/dist/ts/server/authenticate/public/extension/authenticate.d.ts +4 -0
- package/dist/ts/server/authenticate/public/extension/authenticate.d.ts.map +1 -0
- package/dist/ts/server/authenticate/public/extension/types.d.ts +7 -0
- package/dist/ts/server/authenticate/public/extension/types.d.ts.map +1 -0
- package/dist/ts/server/authenticate/public/factory.d.ts +1 -2
- package/dist/ts/server/authenticate/public/factory.d.ts.map +1 -1
- package/dist/ts/server/authenticate/public/types.d.ts +21 -17
- package/dist/ts/server/authenticate/public/types.d.ts.map +1 -1
- package/dist/ts/server/authenticate/webhooks/authenticate.d.ts +1 -2
- package/dist/ts/server/authenticate/webhooks/authenticate.d.ts.map +1 -1
- package/dist/ts/server/authenticate/webhooks/authenticate.webhooks.doc.d.ts.map +1 -1
- package/dist/ts/server/authenticate/webhooks/types.d.ts +7 -45
- package/dist/ts/server/authenticate/webhooks/types.d.ts.map +1 -1
- package/dist/ts/server/future/flags.d.ts +2 -18
- package/dist/ts/server/future/flags.d.ts.map +1 -1
- package/dist/ts/server/index.d.ts +2 -1
- package/dist/ts/server/index.d.ts.map +1 -1
- package/dist/ts/server/shopify-app.d.ts +2 -1
- package/dist/ts/server/shopify-app.d.ts.map +1 -1
- package/dist/ts/server/types-contexts.d.ts +35 -0
- package/dist/ts/server/types-contexts.d.ts.map +1 -0
- package/dist/ts/server/types.d.ts +2 -2
- package/dist/ts/server/types.d.ts.map +1 -1
- package/dist/ts/server/unauthenticated/storefront/types.d.ts +66 -0
- package/dist/ts/server/unauthenticated/storefront/types.d.ts.map +1 -1
- package/dist/ts/server/version.d.ts +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +19 -21
package/dist/cjs/server/index.js
CHANGED
|
@@ -32,6 +32,10 @@ Object.defineProperty(exports, "LogSeverity", {
|
|
|
32
32
|
enumerable: true,
|
|
33
33
|
get: function () { return shopifyApi.LogSeverity; }
|
|
34
34
|
});
|
|
35
|
+
Object.defineProperty(exports, "Session", {
|
|
36
|
+
enumerable: true,
|
|
37
|
+
get: function () { return shopifyApi.Session; }
|
|
38
|
+
});
|
|
35
39
|
Object.defineProperty(exports, "AppDistribution", {
|
|
36
40
|
enumerable: true,
|
|
37
41
|
get: function () { return types.AppDistribution; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/server/index.ts"],"sourcesContent":[null],"names":["setAbstractRuntimeString"],"mappings":";;;;;;;;;;AAGAA,gCAAwB,CAAC,MAAK;AAC5B,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/server/index.ts"],"sourcesContent":[null],"names":["setAbstractRuntimeString"],"mappings":";;;;;;;;;;AAGAA,gCAAwB,CAAC,MAAK;AAC5B,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -86,6 +86,8 @@ function isAppStoreApp(_shopify, config) {
|
|
|
86
86
|
function isSingleMerchantApp(_shopify, config) {
|
|
87
87
|
return config.distribution === types.AppDistribution.SingleMerchant;
|
|
88
88
|
}
|
|
89
|
+
// This function is only exported so we can unit test it without having to mock the underlying module.
|
|
90
|
+
// It's not available to consumers of the library because it is not exported in the index module, and never should be.
|
|
89
91
|
function deriveApi(appConfig) {
|
|
90
92
|
let appUrl;
|
|
91
93
|
try {
|
|
@@ -112,8 +114,9 @@ function deriveApi(appConfig) {
|
|
|
112
114
|
isEmbeddedApp: appConfig.isEmbeddedApp ?? true,
|
|
113
115
|
apiVersion: appConfig.apiVersion ?? shopifyApi.LATEST_API_VERSION,
|
|
114
116
|
isCustomStoreApp: appConfig.distribution === types.AppDistribution.ShopifyAdmin,
|
|
117
|
+
billing: appConfig.billing,
|
|
115
118
|
future: {
|
|
116
|
-
|
|
119
|
+
lineItemBilling: true,
|
|
117
120
|
},
|
|
118
121
|
_logDisabledFutureFlags: false,
|
|
119
122
|
});
|
|
@@ -127,6 +130,8 @@ function deriveConfig(appConfig, apiConfig) {
|
|
|
127
130
|
return {
|
|
128
131
|
...appConfig,
|
|
129
132
|
...apiConfig,
|
|
133
|
+
billing: appConfig.billing,
|
|
134
|
+
scopes: apiConfig.scopes,
|
|
130
135
|
idempotentPromiseHandler: new idempotentPromiseHandler.IdempotentPromiseHandler(),
|
|
131
136
|
canUseLoginForm: appConfig.distribution !== types.AppDistribution.ShopifyAdmin,
|
|
132
137
|
useOnlineTokens: appConfig.useOnlineTokens ?? false,
|
|
@@ -143,5 +148,6 @@ function deriveConfig(appConfig, apiConfig) {
|
|
|
143
148
|
};
|
|
144
149
|
}
|
|
145
150
|
|
|
151
|
+
exports.deriveApi = deriveApi;
|
|
146
152
|
exports.shopifyApp = shopifyApp;
|
|
147
153
|
//# sourceMappingURL=shopify-app.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shopify-app.js","sources":["../../../../src/server/shopify-app.ts"],"sourcesContent":[null],"names":["overrideLogger","authStrategyFactory","TokenExchangeStrategy","AuthCodeFlowStrategy","addDocumentResponseHeadersFactory","registerWebhooksFactory","authenticateFlowFactory","authenticatePublicFactory","authenticateFulfillmentServiceFactory","authenticateWebhookFactory","unauthenticatedAdminContextFactory","unauthenticatedStorefrontContextFactory","loginFactory","logDisabledFutureFlags","AppDistribution","ShopifyError","SHOPIFY_REMIX_LIBRARY_VERSION","shopifyApi","LATEST_API_VERSION","IdempotentPromiseHandler"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAsCA;;;;;;;;;;;;;;;;;;;;AAoBG;AACG,SAAU,UAAU,CAKxB,SAA2B,EAAA;AAC3B,IAAA,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,YAAY,CAAU,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAGA,6BAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAE1C,IAAA,IAAI,SAAS,CAAC,QAAQ,EAAE;QACtB,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC9C;IAED,MAAM,MAAM,GAAgB,EAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAC,CAAC;IAClD,MAAM,YAAY,GAAGC,gCAAmB,CAAoB;AAC1D,QAAA,GAAG,MAAM;QACT,QAAQ,EACN,MAAM,CAAC,MAAM,CAAC,gCAAgC,IAAI,MAAM,CAAC,aAAa;AACpE,cAAE,IAAIC,mCAAqB,CAAC,MAAM,CAAC;AACnC,cAAE,IAAIC,iCAAoB,CAAC,MAAM,CAAC;AACvC,KAAA,CAAC,CAAC;AAEH,IAAA,MAAM,OAAO,GAGmB;QAC9B,cAAc,EAAE,MAAM,CAAC,cAAc;AACrC,QAAA,0BAA0B,EAAEC,oDAAiC,CAAC,MAAM,CAAC;AACrE,QAAA,gBAAgB,EAAEC,gCAAuB,CAAC,MAAM,CAAC;AACjD,QAAA,YAAY,EAAE;AACZ,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,IAAI,EAAEC,sCAAuB,CAAY,MAAM,CAAC;AAChD,YAAA,MAAM,EAAEC,iCAAyB,
|
|
1
|
+
{"version":3,"file":"shopify-app.js","sources":["../../../../src/server/shopify-app.ts"],"sourcesContent":[null],"names":["overrideLogger","authStrategyFactory","TokenExchangeStrategy","AuthCodeFlowStrategy","addDocumentResponseHeadersFactory","registerWebhooksFactory","authenticateFlowFactory","authenticatePublicFactory","authenticateFulfillmentServiceFactory","authenticateWebhookFactory","unauthenticatedAdminContextFactory","unauthenticatedStorefrontContextFactory","loginFactory","logDisabledFutureFlags","AppDistribution","ShopifyError","SHOPIFY_REMIX_LIBRARY_VERSION","shopifyApi","LATEST_API_VERSION","IdempotentPromiseHandler"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { AppProvider as AppProvider$1 } from '@shopify/polaris';
|
|
3
|
-
import englishI18n from '@shopify/polaris/locales/en.json'
|
|
3
|
+
import englishI18n from '@shopify/polaris/locales/en.json' with { type: 'json' };
|
|
4
4
|
import { APP_BRIDGE_URL } from '../../const.mjs';
|
|
5
5
|
import { RemixPolarisLink } from '../RemixPolarisLink.mjs';
|
|
6
6
|
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { HttpResponseError } from '@shopify/shopify-api';
|
|
2
2
|
import '@remix-run/server-runtime';
|
|
3
3
|
import { redirectToAuthPage } from '../helpers/redirect-to-auth-page.mjs';
|
|
4
|
+
import { invalidateAccessToken } from '../../helpers/invalidate-access-token.mjs';
|
|
5
|
+
import 'isbot';
|
|
4
6
|
|
|
5
7
|
function cancelBillingFactory(params, request, session) {
|
|
6
8
|
return async function cancelBilling(options) {
|
|
7
|
-
const { api, logger
|
|
9
|
+
const { api, logger } = params;
|
|
8
10
|
logger.debug('Cancelling billing', { shop: session.shop, ...options });
|
|
9
11
|
try {
|
|
10
12
|
return await api.billing.cancel({
|
|
@@ -19,7 +21,7 @@ function cancelBillingFactory(params, request, session) {
|
|
|
19
21
|
logger.debug('API token was invalid, redirecting to OAuth', {
|
|
20
22
|
shop: session.shop,
|
|
21
23
|
});
|
|
22
|
-
await
|
|
24
|
+
await invalidateAccessToken(params, session);
|
|
23
25
|
throw await redirectToAuthPage(params, request, session.shop);
|
|
24
26
|
}
|
|
25
27
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cancel.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/cancel.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cancel.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/cancel.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;SAQgB,oBAAoB,CAClC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,OAAO,eAAe,aAAa,CAAC,OAA6B,EAAA;AAC/D,QAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;AAE7B,QAAA,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,OAAO,EAAC,CAAC,CAAC;AAErE,QAAA,IAAI;AACF,YAAA,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC9B,OAAO;gBACP,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,aAAA,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;AACrE,gBAAA,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;oBAC1D,IAAI,EAAE,OAAO,CAAC,IAAI;AACnB,iBAAA,CAAC,CAAC;AACH,gBAAA,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;aAC/D;iBAAM;AACL,gBAAA,MAAM,KAAK,CAAC;aACb;SACF;AACH,KAAC,CAAC;AACJ;;;;"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { HttpResponseError } from '@shopify/shopify-api';
|
|
2
2
|
import '@remix-run/server-runtime';
|
|
3
3
|
import { redirectToAuthPage } from '../helpers/redirect-to-auth-page.mjs';
|
|
4
|
+
import { invalidateAccessToken } from '../../helpers/invalidate-access-token.mjs';
|
|
5
|
+
import 'isbot';
|
|
4
6
|
|
|
5
7
|
function checkBillingFactory(params, request, session) {
|
|
6
8
|
return async function checkBilling(options) {
|
|
7
|
-
const { api, logger
|
|
9
|
+
const { api, logger } = params;
|
|
8
10
|
logger.debug('Checking billing plans', { shop: session.shop, ...options });
|
|
9
11
|
try {
|
|
10
12
|
return await api.billing.check({
|
|
@@ -19,7 +21,7 @@ function checkBillingFactory(params, request, session) {
|
|
|
19
21
|
logger.debug('API token was invalid, redirecting to OAuth', {
|
|
20
22
|
shop: session.shop,
|
|
21
23
|
});
|
|
22
|
-
await
|
|
24
|
+
await invalidateAccessToken(params, session);
|
|
23
25
|
throw await redirectToAuthPage(params, request, session.shop);
|
|
24
26
|
}
|
|
25
27
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/check.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"check.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/check.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;SASgB,mBAAmB,CACjC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,OAAO,eAAe,YAAY,CAAC,OAAoC,EAAA;AACrE,QAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;AAE7B,QAAA,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,OAAO,EAAC,CAAC,CAAC;AAEzE,QAAA,IAAI;AACF,YAAA,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,OAAO,CAAC,KAAiB;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;AACtB,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;AACrE,gBAAA,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;oBAC1D,IAAI,EAAE,OAAO,CAAC,IAAI;AACnB,iBAAA,CAAC,CAAC;AACH,gBAAA,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;aAC/D;iBAAM;AACL,gBAAA,MAAM,KAAK,CAAC;aACb;SACF;AACH,KAAC,CAAC;AACJ;;;;"}
|
|
@@ -2,10 +2,12 @@ import { HttpResponseError } from '@shopify/shopify-api';
|
|
|
2
2
|
import { redirect } from '@remix-run/server-runtime';
|
|
3
3
|
import { redirectToAuthPage } from '../helpers/redirect-to-auth-page.mjs';
|
|
4
4
|
import { getAppBridgeHeaders } from '../helpers/redirect-with-app-bridge-headers.mjs';
|
|
5
|
+
import { invalidateAccessToken } from '../../helpers/invalidate-access-token.mjs';
|
|
6
|
+
import 'isbot';
|
|
5
7
|
|
|
6
8
|
function requestBillingFactory(params, request, session) {
|
|
7
9
|
return async function requestBilling({ plan, isTest, returnUrl, ...overrides }) {
|
|
8
|
-
const { api, logger
|
|
10
|
+
const { api, logger } = params;
|
|
9
11
|
logger.info('Requesting billing', {
|
|
10
12
|
shop: session.shop,
|
|
11
13
|
plan,
|
|
@@ -28,7 +30,7 @@ function requestBillingFactory(params, request, session) {
|
|
|
28
30
|
logger.debug('API token was invalid, redirecting to OAuth', {
|
|
29
31
|
shop: session.shop,
|
|
30
32
|
});
|
|
31
|
-
await
|
|
33
|
+
await invalidateAccessToken(params, session);
|
|
32
34
|
throw await redirectToAuthPage(params, request, session.shop);
|
|
33
35
|
}
|
|
34
36
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/request.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/request.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;SAcgB,qBAAqB,CACnC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,OAAO,eAAe,cAAc,CAAC,EACnC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,SAAS,EACkB,EAAA;AAC9B,QAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;AAE7B,QAAA,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI;YACJ,MAAM;YACN,SAAS;AACV,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,MAAoC,CAAC;AACzC,QAAA,IAAI;AACF,YAAA,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;AACjC,gBAAA,IAAI,EAAE,IAAc;gBACpB,OAAO;gBACP,MAAM;gBACN,SAAS;AACT,gBAAA,YAAY,EAAE,IAAI;AAClB,gBAAA,GAAG,SAAS;AACb,aAAA,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;AACrE,gBAAA,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;oBAC1D,IAAI,EAAE,OAAO,CAAC,IAAI;AACnB,iBAAA,CAAC,CAAC;AACH,gBAAA,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;aAC/D;iBAAM;AACL,gBAAA,MAAM,KAAK,CAAC;aACb;SACF;AAED,QAAA,MAAM,gBAAgB,CACpB,MAAM,EACN,OAAO,EACP,MAAM,CAAC,eAAe,EACtB,OAAO,CAAC,IAAI,CACb,CAAC;AACJ,KAAC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAmB,EACnB,OAAgB,EAChB,GAAW,EACX,IAAY,EAAA;AAEZ,IAAA,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;IAEhC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAC,GAAG,EAAC,CAAC,CAAC;IAE9C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxC,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC;IAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE1D,IAAI,YAAY,EAAE;;;;;AAKhB,QAAA,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE;AAC5B,YAAA,MAAM,EAAE,GAAG;AACX,YAAA,UAAU,EAAE,cAAc;AAC1B,YAAA,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC;AAClC,SAAA,CAAC,CAAC;KACJ;SAAM,IAAI,iBAAiB,EAAE;AAC5B,QAAA,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,IAAI;YACJ,IAAI,EAAE,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE;AAC1C,YAAA,UAAU,EAAE,GAAG;AAChB,SAAA,CAAC,CAAC;AAEH,QAAA,MAAM,QAAQ,CAAC,CAAG,EAAA,MAAM,CAAC,IAAI,CAAC,cAAc,CAAA,CAAA,EAAI,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC,CAAC;KACtE;SAAM;;AAEL,QAAA,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;KACrB;AACH;;;;"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { HttpResponseError } from '@shopify/shopify-api';
|
|
2
2
|
import '@remix-run/server-runtime';
|
|
3
3
|
import { redirectToAuthPage } from '../helpers/redirect-to-auth-page.mjs';
|
|
4
|
+
import { invalidateAccessToken } from '../../helpers/invalidate-access-token.mjs';
|
|
5
|
+
import 'isbot';
|
|
4
6
|
|
|
5
7
|
function requireBillingFactory(params, request, session) {
|
|
6
|
-
const { api, logger
|
|
8
|
+
const { api, logger } = params;
|
|
7
9
|
return async function requireBilling(options) {
|
|
8
10
|
const logContext = {
|
|
9
11
|
shop: session.shop,
|
|
@@ -23,7 +25,7 @@ function requireBillingFactory(params, request, session) {
|
|
|
23
25
|
catch (error) {
|
|
24
26
|
if (error instanceof HttpResponseError && error.response.code === 401) {
|
|
25
27
|
logger.debug('API token was invalid, redirecting to OAuth', logContext);
|
|
26
|
-
await
|
|
28
|
+
await invalidateAccessToken(params, session);
|
|
27
29
|
throw await redirectToAuthPage(params, request, session.shop);
|
|
28
30
|
}
|
|
29
31
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/require.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/require.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;SAagB,qBAAqB,CACnC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;AAE7B,IAAA,OAAO,eAAe,cAAc,CAAC,OAAsC,EAAA;AACzE,QAAA,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;AAEF,QAAA,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,UAAU,CAAC,CAAC;AAE1D,QAAA,IAAI,IAAgC,CAAC;AACrC,QAAA,IAAI;AACF,YAAA,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,OAAO,CAAC,KAAiB;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;AACtB,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;AACrE,gBAAA,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE,UAAU,CAAC,CAAC;AAExE,gBAAA,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;aAC/D;iBAAM;AACL,gBAAA,MAAM,KAAK,CAAC;aACb;SACF;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAC1B,YAAA,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC;YACjD,MAAM,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;SAClE;AAED,QAAA,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;AAEpD,QAAA,OAAO,IAAI,CAAC;AACd,KAAC,CAAC;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-code-flow.mjs","sources":["../../../../../../../src/server/authenticate/admin/strategies/auth-code-flow.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;MA+Ba,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"auth-code-flow.mjs","sources":["../../../../../../../src/server/authenticate/admin/strategies/auth-code-flow.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { InvalidJwtError, RequestedTokenType, HttpResponseError } from '@shopify/shopify-api';
|
|
2
2
|
import { respondToInvalidSessionToken } from '../../helpers/respond-to-invalid-session-token.mjs';
|
|
3
|
+
import { invalidateAccessToken } from '../../helpers/invalidate-access-token.mjs';
|
|
3
4
|
import 'isbot';
|
|
4
5
|
import '@remix-run/server-runtime';
|
|
5
6
|
import { handleClientErrorFactory } from '../helpers/handle-client-error.mjs';
|
|
6
7
|
import { triggerAfterAuthHook } from '../helpers/trigger-after-auth-hook.mjs';
|
|
7
8
|
|
|
8
9
|
class TokenExchangeStrategy {
|
|
10
|
+
api;
|
|
11
|
+
config;
|
|
12
|
+
logger;
|
|
9
13
|
constructor({ api, config, logger }) {
|
|
10
14
|
this.api = api;
|
|
11
15
|
this.config = config;
|
|
@@ -17,7 +21,7 @@ class TokenExchangeStrategy {
|
|
|
17
21
|
const { shop, session, sessionToken } = sessionContext;
|
|
18
22
|
if (!sessionToken)
|
|
19
23
|
throw new InvalidJwtError();
|
|
20
|
-
if (!session || session.
|
|
24
|
+
if (!session || !session.isActive(undefined)) {
|
|
21
25
|
logger.info('No valid session found');
|
|
22
26
|
logger.info('Requesting offline access token');
|
|
23
27
|
const { session: offlineSession } = await this.exchangeToken({
|
|
@@ -58,7 +62,8 @@ class TokenExchangeStrategy {
|
|
|
58
62
|
request,
|
|
59
63
|
onError: async ({ session, error }) => {
|
|
60
64
|
if (error.response.code === 401) {
|
|
61
|
-
|
|
65
|
+
logger.debug('Responding to invalid access token');
|
|
66
|
+
await invalidateAccessToken({ config, api, logger }, session);
|
|
62
67
|
respondToInvalidSessionToken({
|
|
63
68
|
params: { config, api, logger },
|
|
64
69
|
request,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-exchange.mjs","sources":["../../../../../../../src/server/authenticate/admin/strategies/token-exchange.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-exchange.mjs","sources":["../../../../../../../src/server/authenticate/admin/strategies/token-exchange.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idempotent-promise-handler.mjs","sources":["../../../../../../src/server/authenticate/helpers/idempotent-promise-handler.ts"],"sourcesContent":[null],"names":[],"mappings":"AAKA,MAAM,iBAAiB,GAAG,KAAK,CAAC;MAEnB,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"idempotent-promise-handler.mjs","sources":["../../../../../../src/server/authenticate/helpers/idempotent-promise-handler.ts"],"sourcesContent":[null],"names":[],"mappings":"AAKA,MAAM,iBAAiB,GAAG,KAAK,CAAC;MAEnB,wBAAwB,CAAA;AACzB,IAAA,WAAW,CAAsB;AAE3C,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;KAC9C;AAED,IAAA,MAAM,aAAa,CAAC,EAClB,eAAe,EACf,UAAU,GACoB,EAAA;AAC9B,QAAA,IAAI;AACF,YAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE;gBACtC,MAAM,eAAe,EAAE,CAAC;aACzB;SACF;gBAAS;YACR,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;AAED,QAAA,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;AAEO,IAAA,iBAAiB,CAAC,UAAkB,EAAA;QAC1C,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7C,YAAA,OAAO,IAAI,CAAC;SACb;AACD,QAAA,OAAO,KAAK,CAAC;KACd;AAEO,IAAA,MAAM,qBAAqB,GAAA;AACjC,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,KAAI;YACjD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,iBAAiB,EAAE;AACzC,gBAAA,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACxB;AACH,SAAC,CAAC,CAAC;KACJ;AACF;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
async function invalidateAccessToken(params, session) {
|
|
2
|
+
const { logger, config } = params;
|
|
3
|
+
logger.debug(`Invalidating access token for session - ${session.id}`);
|
|
4
|
+
session.accessToken = undefined;
|
|
5
|
+
await config.sessionStorage.storeSession(session);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { invalidateAccessToken };
|
|
9
|
+
//# sourceMappingURL=invalidate-access-token.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidate-access-token.mjs","sources":["../../../../../../src/server/authenticate/helpers/invalidate-access-token.ts"],"sourcesContent":[null],"names":[],"mappings":"AAIO,eAAe,qBAAqB,CACzC,MAAmB,EACnB,OAAgB,EAAA;AAEhB,IAAA,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG,MAAM,CAAC;IAEhC,MAAM,CAAC,KAAK,CAAC,CAAA,wCAAA,EAA2C,OAAO,CAAC,EAAE,CAAE,CAAA,CAAC,CAAC;AAEtE,IAAA,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAChC,MAAM,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AACpD;;;;"}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import { isbot } from 'isbot';
|
|
2
2
|
|
|
3
|
+
const SHOPIFY_POS_USER_AGENT = /Shopify POS\//;
|
|
4
|
+
const SHOPIFY_MOBILE_USER_AGENT = /Shopify Mobile\//;
|
|
5
|
+
const SHOPIFY_USER_AGENTS = [SHOPIFY_POS_USER_AGENT, SHOPIFY_MOBILE_USER_AGENT];
|
|
3
6
|
function respondToBotRequest({ logger }, request) {
|
|
4
|
-
|
|
7
|
+
const userAgent = request.headers.get('User-Agent') ?? '';
|
|
8
|
+
// We call isbot below to prevent good (self-identifying) bots from triggering auth requests, but there are some
|
|
9
|
+
// Shopify-specific cases we want to allow that are identified as bots by isbot.
|
|
10
|
+
if (SHOPIFY_USER_AGENTS.some((agent) => agent.test(userAgent))) {
|
|
11
|
+
logger.debug('Request is from a Shopify agent, allow');
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
if (isbot(userAgent)) {
|
|
5
15
|
logger.debug('Request is from a bot, skipping auth');
|
|
6
16
|
throw new Response(undefined, { status: 410, statusText: 'Gone' });
|
|
7
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reject-bot-request.mjs","sources":["../../../../../../src/server/authenticate/helpers/reject-bot-request.ts"],"sourcesContent":[null],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"reject-bot-request.mjs","sources":["../../../../../../src/server/authenticate/helpers/reject-bot-request.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAIA,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAC/C,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAErD,MAAM,mBAAmB,GAAG,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,CAAC;SAEhE,mBAAmB,CACjC,EAAC,MAAM,EAAc,EACrB,OAAgB,EAAA;AAEhB,IAAA,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;;;AAI1D,IAAA,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE;AAC9D,QAAA,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACvD,OAAO;KACR;AAED,IAAA,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE;AACpB,QAAA,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;AACrD,QAAA,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE,EAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC,CAAC;KAClE;AACH;;;;"}
|
|
@@ -17,6 +17,10 @@ function authenticateAppProxyFactory(params) {
|
|
|
17
17
|
const sessionId = api.session.getOfflineId(shop);
|
|
18
18
|
const session = await config.sessionStorage.loadSession(sessionId);
|
|
19
19
|
if (!session) {
|
|
20
|
+
logger.debug('Could not find offline session, returning empty context', {
|
|
21
|
+
shop,
|
|
22
|
+
...Object.fromEntries(url.searchParams.entries()),
|
|
23
|
+
});
|
|
20
24
|
const context = {
|
|
21
25
|
liquid,
|
|
22
26
|
session: undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/appProxy/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/appProxy/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { validateSessionToken } from '../../helpers/validate-session-token.mjs';
|
|
3
|
-
import { getSessionTokenHeader } from '../../helpers/get-session-token-header.mjs';
|
|
4
|
-
import { respondToBotRequest } from '../../helpers/reject-bot-request.mjs';
|
|
5
|
-
import { respondToOptionsRequest } from '../../helpers/respond-to-options-request.mjs';
|
|
6
|
-
import '@remix-run/server-runtime';
|
|
1
|
+
import { authenticateExtensionFactory } from '../extension/authenticate.mjs';
|
|
7
2
|
|
|
8
3
|
function authenticateCheckoutFactory(params) {
|
|
9
|
-
return
|
|
10
|
-
const { logger } = params;
|
|
11
|
-
const corsHeaders = options.corsHeaders ?? [];
|
|
12
|
-
respondToBotRequest(params, request);
|
|
13
|
-
respondToOptionsRequest(params, request, corsHeaders);
|
|
14
|
-
const sessionTokenHeader = getSessionTokenHeader(request);
|
|
15
|
-
logger.info('Authenticating checkout request');
|
|
16
|
-
if (!sessionTokenHeader) {
|
|
17
|
-
logger.debug('Request did not contain a session token');
|
|
18
|
-
throw new Response(undefined, {
|
|
19
|
-
status: 401,
|
|
20
|
-
statusText: 'Unauthorized',
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
return {
|
|
24
|
-
sessionToken: await validateSessionToken(params, request, sessionTokenHeader, { checkAudience: false }),
|
|
25
|
-
cors: ensureCORSHeadersFactory(params, request, corsHeaders),
|
|
26
|
-
};
|
|
27
|
-
};
|
|
4
|
+
return authenticateExtensionFactory(params, 'checkout');
|
|
28
5
|
}
|
|
29
6
|
|
|
30
7
|
export { authenticateCheckoutFactory };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/checkout/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/checkout/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAKM,SAAU,2BAA2B,CACzC,MAAmB,EAAA;AAEnB,IAAA,OAAO,4BAA4B,CACjC,MAAM,EACN,UAAU,CACa,CAAC;AAC5B;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { authenticateExtensionFactory } from '../extension/authenticate.mjs';
|
|
2
|
+
|
|
3
|
+
function authenticateCustomerAccountFactory(params) {
|
|
4
|
+
return authenticateExtensionFactory(params, 'customer account');
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export { authenticateCustomerAccountFactory };
|
|
8
|
+
//# sourceMappingURL=authenticate.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/customer-account/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAMM,SAAU,kCAAkC,CAChD,MAAmB,EAAA;AAEnB,IAAA,OAAO,4BAA4B,CACjC,MAAM,EACN,kBAAkB,CACY,CAAC;AACnC;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ensureCORSHeadersFactory } from '../../helpers/ensure-cors-headers.mjs';
|
|
2
|
+
import { validateSessionToken } from '../../helpers/validate-session-token.mjs';
|
|
3
|
+
import { getSessionTokenHeader } from '../../helpers/get-session-token-header.mjs';
|
|
4
|
+
import { respondToBotRequest } from '../../helpers/reject-bot-request.mjs';
|
|
5
|
+
import { respondToOptionsRequest } from '../../helpers/respond-to-options-request.mjs';
|
|
6
|
+
import '@remix-run/server-runtime';
|
|
7
|
+
|
|
8
|
+
function authenticateExtensionFactory(params, requestType) {
|
|
9
|
+
return async function authenticateExtension(request, options = {}) {
|
|
10
|
+
const { logger } = params;
|
|
11
|
+
const corsHeaders = options.corsHeaders ?? [];
|
|
12
|
+
respondToBotRequest(params, request);
|
|
13
|
+
respondToOptionsRequest(params, request, corsHeaders);
|
|
14
|
+
const sessionTokenHeader = getSessionTokenHeader(request);
|
|
15
|
+
logger.info(`Authenticating ${requestType} request`);
|
|
16
|
+
if (!sessionTokenHeader) {
|
|
17
|
+
logger.debug('Request did not contain a session token');
|
|
18
|
+
throw new Response(undefined, {
|
|
19
|
+
status: 401,
|
|
20
|
+
statusText: 'Unauthorized',
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
sessionToken: await validateSessionToken(params, request, sessionTokenHeader, { checkAudience: false }),
|
|
25
|
+
cors: ensureCORSHeadersFactory(params, request, corsHeaders),
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export { authenticateExtensionFactory };
|
|
31
|
+
//# sourceMappingURL=authenticate.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authenticate.mjs","sources":["../../../../../../../src/server/authenticate/public/extension/authenticate.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAYgB,SAAA,4BAA4B,CAC1C,MAAmB,EACnB,WAAmB,EAAA;IAEnB,OAAO,eAAe,qBAAqB,CACzC,OAAO,EACP,OAAO,GAAG,EAAE,EAAA;AAEZ,QAAA,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,CAAC;AAExB,QAAA,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;AAE9C,QAAA,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACrC,QAAA,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;AAEtD,QAAA,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAE1D,QAAA,MAAM,CAAC,IAAI,CAAC,kBAAkB,WAAW,CAAA,QAAA,CAAU,CAAC,CAAC;QAErD,IAAI,CAAC,kBAAkB,EAAE;AACvB,YAAA,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;AACxD,YAAA,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE;AAC5B,gBAAA,MAAM,EAAE,GAAG;AACX,gBAAA,UAAU,EAAE,cAAc;AAC3B,aAAA,CAAC,CAAC;SACJ;QAED,OAAO;AACL,YAAA,YAAY,EAAE,MAAM,oBAAoB,CACtC,MAAM,EACN,OAAO,EACP,kBAAkB,EAClB,EAAC,aAAa,EAAE,KAAK,EAAC,CACvB;YACD,IAAI,EAAE,wBAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC;SAC7D,CAAC;AACJ,KAAC,CAAC;AACJ;;;;"}
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import { authenticateCheckoutFactory } from './checkout/authenticate.mjs';
|
|
2
2
|
import { authenticateAppProxyFactory } from './appProxy/authenticate.mjs';
|
|
3
|
+
import { authenticateCustomerAccountFactory } from './customer-account/authenticate.mjs';
|
|
3
4
|
|
|
4
5
|
function authenticatePublicFactory(params) {
|
|
5
|
-
const { logger, config } = params;
|
|
6
6
|
const authenticateCheckout = authenticateCheckoutFactory(params);
|
|
7
7
|
const authenticateAppProxy = authenticateAppProxyFactory(params);
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return context;
|
|
14
|
-
}
|
|
15
|
-
const authenticatePublic = (request, options) => {
|
|
16
|
-
logger.deprecated('3.0.0', 'authenticate.public() will be deprecated in v3. Use authenticate.public.checkout() instead.');
|
|
17
|
-
return authenticateCheckout(request, options);
|
|
8
|
+
const authenticateCustomerAccount = authenticateCustomerAccountFactory(params);
|
|
9
|
+
const context = {
|
|
10
|
+
checkout: authenticateCheckout,
|
|
11
|
+
appProxy: authenticateAppProxy,
|
|
12
|
+
customerAccount: authenticateCustomerAccount,
|
|
18
13
|
};
|
|
19
|
-
|
|
20
|
-
authenticatePublic.appProxy = authenticateAppProxy;
|
|
21
|
-
return authenticatePublic;
|
|
14
|
+
return context;
|
|
22
15
|
}
|
|
23
16
|
|
|
24
17
|
export { authenticatePublicFactory };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.mjs","sources":["../../../../../../src/server/authenticate/public/factory.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"factory.mjs","sources":["../../../../../../src/server/authenticate/public/factory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AASM,SAAU,yBAAyB,CAEvC,MAAmB,EAAA;AACnB,IAAA,MAAM,oBAAoB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;AACjE,IAAA,MAAM,oBAAoB,GAAG,2BAA2B,CAAY,MAAM,CAAC,CAAC;AAC5E,IAAA,MAAM,2BAA2B,GAC/B,kCAAkC,CAAC,MAAM,CAAC,CAAC;AAE7C,IAAA,MAAM,OAAO,GAAuB;AAClC,QAAA,QAAQ,EAAE,oBAAoB;AAC9B,QAAA,QAAQ,EAAE,oBAAoB;AAC9B,QAAA,eAAe,EAAE,2BAA2B;KAC7C,CAAC;AAEF,IAAA,OAAO,OAAO,CAAC;AACjB;;;;"}
|
|
@@ -46,35 +46,15 @@ function authenticateWebhookFactory(params) {
|
|
|
46
46
|
if (!session) {
|
|
47
47
|
return webhookContext;
|
|
48
48
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
handleClientError: handleClientErrorFactory({ request }),
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
const restClient = new api.clients.Rest({
|
|
59
|
-
session,
|
|
60
|
-
apiVersion: check.apiVersion,
|
|
61
|
-
});
|
|
62
|
-
const graphqlClient = new api.clients.Graphql({
|
|
63
|
-
session,
|
|
64
|
-
apiVersion: check.apiVersion,
|
|
65
|
-
});
|
|
66
|
-
Object.entries(api.rest).forEach(([name, resource]) => {
|
|
67
|
-
Reflect.set(restClient, name, resource);
|
|
68
|
-
});
|
|
69
|
-
admin = {
|
|
70
|
-
rest: restClient,
|
|
71
|
-
graphql: graphqlClient,
|
|
72
|
-
};
|
|
73
|
-
}
|
|
49
|
+
const admin = adminClientFactory({
|
|
50
|
+
params,
|
|
51
|
+
session,
|
|
52
|
+
handleClientError: handleClientErrorFactory({ request }),
|
|
53
|
+
});
|
|
74
54
|
return {
|
|
75
55
|
...webhookContext,
|
|
76
56
|
session,
|
|
77
|
-
admin
|
|
57
|
+
admin,
|
|
78
58
|
};
|
|
79
59
|
};
|
|
80
60
|
}
|