@shopify/shopify-app-session-storage-mongodb 3.0.2 → 3.0.4

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 CHANGED
@@ -27,4 +27,4 @@ const shopify = shopifyApp({
27
27
  });
28
28
  ```
29
29
 
30
- If you prefer to use your own implementation of a session storage mechanism that is compatible with the `@shopify/shopify-app-express` package, see the [implementing session storage guide](https://github.com/Shopify/shopify-app-js/blob/main/packages/shopify-app-session-storage/implementing-session-storage.md).
30
+ If you prefer to use your own implementation of a session storage mechanism that is compatible with the `@shopify/shopify-app-express` package, see the [implementing session storage guide](../shopify-app-session-storage/implementing-session-storage.md).
@@ -0,0 +1,99 @@
1
+ 'use strict';
2
+
3
+ var mongodb = require('mongodb');
4
+ var shopifyApi = require('@shopify/shopify-api');
5
+
6
+ function _interopNamespaceDefault(e) {
7
+ var n = Object.create(null);
8
+ if (e) {
9
+ Object.keys(e).forEach(function (k) {
10
+ if (k !== 'default') {
11
+ var d = Object.getOwnPropertyDescriptor(e, k);
12
+ Object.defineProperty(n, k, d.get ? d : {
13
+ enumerable: true,
14
+ get: function () { return e[k]; }
15
+ });
16
+ }
17
+ });
18
+ }
19
+ n.default = e;
20
+ return Object.freeze(n);
21
+ }
22
+
23
+ var mongodb__namespace = /*#__PURE__*/_interopNamespaceDefault(mongodb);
24
+
25
+ const defaultMongoDBSessionStorageOptions = {
26
+ sessionCollectionName: 'shopify_sessions',
27
+ };
28
+ class MongoDBSessionStorage {
29
+ static withCredentials(host, dbName, username, password, opts) {
30
+ return new MongoDBSessionStorage(new URL(`mongodb://${encodeURIComponent(username)}:${encodeURIComponent(password)}@${host}/`), dbName, opts);
31
+ }
32
+ constructor(dbUrl, dbName, opts = {}) {
33
+ this.dbUrl = dbUrl;
34
+ this.dbName = dbName;
35
+ if (typeof this.dbUrl === 'string') {
36
+ this.dbUrl = new URL(this.dbUrl);
37
+ }
38
+ this.options = { ...defaultMongoDBSessionStorageOptions, ...opts };
39
+ this.ready = this.init();
40
+ }
41
+ async storeSession(session) {
42
+ await this.ready;
43
+ await this.collection.findOneAndReplace({ id: session.id }, session.toObject(), {
44
+ upsert: true,
45
+ });
46
+ return true;
47
+ }
48
+ async loadSession(id) {
49
+ await this.ready;
50
+ const result = await this.collection.findOne({ id });
51
+ return result ? new shopifyApi.Session(result) : undefined;
52
+ }
53
+ async deleteSession(id) {
54
+ await this.ready;
55
+ await this.collection.deleteOne({ id });
56
+ return true;
57
+ }
58
+ async deleteSessions(ids) {
59
+ await this.ready;
60
+ await this.collection.deleteMany({ id: { $in: ids } });
61
+ return true;
62
+ }
63
+ async findSessionsByShop(shop) {
64
+ await this.ready;
65
+ const rawResults = await this.collection.find({ shop }).toArray();
66
+ if (!rawResults || rawResults?.length === 0)
67
+ return [];
68
+ return rawResults.map((rawResult) => new shopifyApi.Session(rawResult));
69
+ }
70
+ async disconnect() {
71
+ await this.client.close();
72
+ }
73
+ get collection() {
74
+ return this.client
75
+ .db(this.dbName)
76
+ .collection(this.options.sessionCollectionName);
77
+ }
78
+ async init() {
79
+ this.client = new mongodb__namespace.MongoClient(this.dbUrl.toString());
80
+ await this.client.connect();
81
+ await this.client.db().command({ ping: 1 });
82
+ await this.createCollection();
83
+ }
84
+ async hasSessionCollection() {
85
+ const collections = await this.client.db().collections();
86
+ return collections
87
+ .map((collection) => collection.collectionName)
88
+ .includes(this.options.sessionCollectionName);
89
+ }
90
+ async createCollection() {
91
+ const hasSessionCollection = await this.hasSessionCollection();
92
+ if (!hasSessionCollection) {
93
+ await this.client.db().collection(this.options.sessionCollectionName);
94
+ }
95
+ }
96
+ }
97
+
98
+ exports.MongoDBSessionStorage = MongoDBSessionStorage;
99
+ //# sourceMappingURL=mongodb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongodb.js","sources":["../../../src/mongodb.ts"],"sourcesContent":[null],"names":["Session","mongodb"],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import * as mongodb from 'mongodb';
2
+ import { Session } from '@shopify/shopify-api';
3
+
4
+ const defaultMongoDBSessionStorageOptions = {
5
+ sessionCollectionName: 'shopify_sessions',
6
+ };
7
+ class MongoDBSessionStorage {
8
+ static withCredentials(host, dbName, username, password, opts) {
9
+ return new MongoDBSessionStorage(new URL(`mongodb://${encodeURIComponent(username)}:${encodeURIComponent(password)}@${host}/`), dbName, opts);
10
+ }
11
+ constructor(dbUrl, dbName, opts = {}) {
12
+ this.dbUrl = dbUrl;
13
+ this.dbName = dbName;
14
+ if (typeof this.dbUrl === 'string') {
15
+ this.dbUrl = new URL(this.dbUrl);
16
+ }
17
+ this.options = { ...defaultMongoDBSessionStorageOptions, ...opts };
18
+ this.ready = this.init();
19
+ }
20
+ async storeSession(session) {
21
+ await this.ready;
22
+ await this.collection.findOneAndReplace({ id: session.id }, session.toObject(), {
23
+ upsert: true,
24
+ });
25
+ return true;
26
+ }
27
+ async loadSession(id) {
28
+ await this.ready;
29
+ const result = await this.collection.findOne({ id });
30
+ return result ? new Session(result) : undefined;
31
+ }
32
+ async deleteSession(id) {
33
+ await this.ready;
34
+ await this.collection.deleteOne({ id });
35
+ return true;
36
+ }
37
+ async deleteSessions(ids) {
38
+ await this.ready;
39
+ await this.collection.deleteMany({ id: { $in: ids } });
40
+ return true;
41
+ }
42
+ async findSessionsByShop(shop) {
43
+ await this.ready;
44
+ const rawResults = await this.collection.find({ shop }).toArray();
45
+ if (!rawResults || rawResults?.length === 0)
46
+ return [];
47
+ return rawResults.map((rawResult) => new Session(rawResult));
48
+ }
49
+ async disconnect() {
50
+ await this.client.close();
51
+ }
52
+ get collection() {
53
+ return this.client
54
+ .db(this.dbName)
55
+ .collection(this.options.sessionCollectionName);
56
+ }
57
+ async init() {
58
+ this.client = new mongodb.MongoClient(this.dbUrl.toString());
59
+ await this.client.connect();
60
+ await this.client.db().command({ ping: 1 });
61
+ await this.createCollection();
62
+ }
63
+ async hasSessionCollection() {
64
+ const collections = await this.client.db().collections();
65
+ return collections
66
+ .map((collection) => collection.collectionName)
67
+ .includes(this.options.sessionCollectionName);
68
+ }
69
+ async createCollection() {
70
+ const hasSessionCollection = await this.hasSessionCollection();
71
+ if (!hasSessionCollection) {
72
+ await this.client.db().collection(this.options.sessionCollectionName);
73
+ }
74
+ }
75
+ }
76
+
77
+ export { MongoDBSessionStorage };
78
+ //# sourceMappingURL=mongodb.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongodb.mjs","sources":["../../../src/mongodb.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../../node_modules/tslib/tslib.d.ts","../../../../../node_modules/@types/react/global.d.ts","../../../../../node_modules/csstype/index.d.ts","../../../../../node_modules/@types/prop-types/index.d.ts","../../../../../node_modules/@types/scheduler/tracing.d.ts","../../../../../node_modules/@types/react/index.d.ts","../../../../../node_modules/@types/react/jsx-runtime.d.ts","../../../../../node_modules/@types/node/assert.d.ts","../../../../../node_modules/@types/node/assert/strict.d.ts","../../../../../node_modules/buffer/index.d.ts","../../../../../node_modules/undici-types/header.d.ts","../../../../../node_modules/undici-types/readable.d.ts","../../../../../node_modules/undici-types/file.d.ts","../../../../../node_modules/undici-types/fetch.d.ts","../../../../../node_modules/undici-types/formdata.d.ts","../../../../../node_modules/undici-types/connector.d.ts","../../../../../node_modules/undici-types/client.d.ts","../../../../../node_modules/undici-types/errors.d.ts","../../../../../node_modules/undici-types/dispatcher.d.ts","../../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../../node_modules/undici-types/global-origin.d.ts","../../../../../node_modules/undici-types/pool-stats.d.ts","../../../../../node_modules/undici-types/pool.d.ts","../../../../../node_modules/undici-types/handlers.d.ts","../../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../../node_modules/undici-types/agent.d.ts","../../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../../node_modules/undici-types/mock-agent.d.ts","../../../../../node_modules/undici-types/mock-client.d.ts","../../../../../node_modules/undici-types/mock-pool.d.ts","../../../../../node_modules/undici-types/mock-errors.d.ts","../../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../../node_modules/undici-types/api.d.ts","../../../../../node_modules/undici-types/cookies.d.ts","../../../../../node_modules/undici-types/patch.d.ts","../../../../../node_modules/undici-types/filereader.d.ts","../../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../../node_modules/undici-types/websocket.d.ts","../../../../../node_modules/undici-types/content-type.d.ts","../../../../../node_modules/undici-types/cache.d.ts","../../../../../node_modules/undici-types/interceptors.d.ts","../../../../../node_modules/undici-types/index.d.ts","../../../../../node_modules/@types/node/globals.d.ts","../../../../../node_modules/@types/node/async_hooks.d.ts","../../../../../node_modules/@types/node/buffer.d.ts","../../../../../node_modules/@types/node/child_process.d.ts","../../../../../node_modules/@types/node/cluster.d.ts","../../../../../node_modules/@types/node/console.d.ts","../../../../../node_modules/@types/node/constants.d.ts","../../../../../node_modules/@types/node/crypto.d.ts","../../../../../node_modules/@types/node/dgram.d.ts","../../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../../node_modules/@types/node/dns.d.ts","../../../../../node_modules/@types/node/dns/promises.d.ts","../../../../../node_modules/@types/node/domain.d.ts","../../../../../node_modules/@types/node/dom-events.d.ts","../../../../../node_modules/@types/node/events.d.ts","../../../../../node_modules/@types/node/fs.d.ts","../../../../../node_modules/@types/node/fs/promises.d.ts","../../../../../node_modules/@types/node/http.d.ts","../../../../../node_modules/@types/node/http2.d.ts","../../../../../node_modules/@types/node/https.d.ts","../../../../../node_modules/@types/node/inspector.d.ts","../../../../../node_modules/@types/node/module.d.ts","../../../../../node_modules/@types/node/net.d.ts","../../../../../node_modules/@types/node/os.d.ts","../../../../../node_modules/@types/node/path.d.ts","../../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../../node_modules/@types/node/process.d.ts","../../../../../node_modules/@types/node/punycode.d.ts","../../../../../node_modules/@types/node/querystring.d.ts","../../../../../node_modules/@types/node/readline.d.ts","../../../../../node_modules/@types/node/readline/promises.d.ts","../../../../../node_modules/@types/node/repl.d.ts","../../../../../node_modules/@types/node/sea.d.ts","../../../../../node_modules/@types/node/stream.d.ts","../../../../../node_modules/@types/node/stream/promises.d.ts","../../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../../node_modules/@types/node/stream/web.d.ts","../../../../../node_modules/@types/node/string_decoder.d.ts","../../../../../node_modules/@types/node/test.d.ts","../../../../../node_modules/@types/node/timers.d.ts","../../../../../node_modules/@types/node/timers/promises.d.ts","../../../../../node_modules/@types/node/tls.d.ts","../../../../../node_modules/@types/node/trace_events.d.ts","../../../../../node_modules/@types/node/tty.d.ts","../../../../../node_modules/@types/node/url.d.ts","../../../../../node_modules/@types/node/util.d.ts","../../../../../node_modules/@types/node/v8.d.ts","../../../../../node_modules/@types/node/vm.d.ts","../../../../../node_modules/@types/node/wasi.d.ts","../../../../../node_modules/@types/node/worker_threads.d.ts","../../../../../node_modules/@types/node/zlib.d.ts","../../../../../node_modules/@types/node/globals.global.d.ts","../../../../../node_modules/@types/node/index.d.ts","../../../../../node_modules/bson/bson.d.ts","../../../../../node_modules/mongodb/mongodb.d.ts","../../../../../node_modules/compare-versions/lib/esm/utils.d.ts","../../../../../node_modules/compare-versions/lib/esm/compare.d.ts","../../../../../node_modules/compare-versions/lib/esm/compareVersions.d.ts","../../../../../node_modules/compare-versions/lib/esm/satisfies.d.ts","../../../../../node_modules/compare-versions/lib/esm/validate.d.ts","../../../../../node_modules/compare-versions/lib/esm/index.d.ts","../../../shopify-api/lib/types.ts","../../../shopify-api/runtime/http/types.ts","../../../shopify-api/lib/error.ts","../../../shopify-api/lib/version.ts","../../../shopify-api/lib/logger/types.ts","../../../shopify-api/lib/logger/log.ts","../../../shopify-api/lib/logger/index.ts","../../../shopify-api/future/flags.ts","../../../shopify-api/rest/types.ts","../../../shopify-api/lib/auth/scopes/index.ts","../../../shopify-api/lib/auth/oauth/types.ts","../../../shopify-api/runtime/crypto/crypto.ts","../../../shopify-api/runtime/crypto/types.ts","../../../shopify-api/runtime/crypto/utils.ts","../../../shopify-api/runtime/http/utils.ts","../../../shopify-api/runtime/http/headers.ts","../../../shopify-api/runtime/http/cookies.ts","../../../shopify-api/runtime/http/index.ts","../../../shopify-api/lib/session/types.ts","../../../shopify-api/lib/session/session.ts","../../../shopify-api/lib/billing/types.ts","../../../shopify-api/lib/base-types.ts","../../../../../node_modules/@cloudflare/workers-types/index.d.ts","../../../../api-clients/graphql-client/dist/ts/graphql-client/types.d.ts","../../../../api-clients/graphql-client/dist/ts/graphql-client/graphql-client.d.ts","../../../../api-clients/graphql-client/dist/ts/graphql-client/index.d.ts","../../../../api-clients/graphql-client/dist/ts/graphql-client/utilities.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/operation-types.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/types.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/validations.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/api-versions.d.ts","../../../../api-clients/graphql-client/dist/ts/graphql-client/http-fetch.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/utilities.d.ts","../../../../api-clients/graphql-client/dist/ts/api-client-utilities/index.d.ts","../../../../api-clients/graphql-client/dist/ts/index.d.ts","../../../../api-clients/admin-api-client/dist/ts/types.d.ts","../../../../api-clients/admin-api-client/dist/ts/graphql/types.d.ts","../../../../api-clients/admin-api-client/dist/ts/graphql/client.d.ts","../../../../api-clients/admin-api-client/dist/ts/graphql/index.d.ts","../../../../api-clients/admin-api-client/dist/ts/rest/types.d.ts","../../../../api-clients/admin-api-client/dist/ts/rest/client.d.ts","../../../../api-clients/admin-api-client/dist/ts/rest/index.d.ts","../../../../api-clients/admin-api-client/dist/ts/index.d.ts","../../../shopify-api/runtime/crypto/index.ts","../../../shopify-api/runtime/platform/types.ts","../../../shopify-api/runtime/platform/runtime-string.ts","../../../shopify-api/runtime/platform/index.ts","../../../shopify-api/runtime/index.ts","../../../shopify-api/lib/clients/admin/types.ts","../../../../../node_modules/@shopify/network/build/ts/network.d.ts","../../../../../node_modules/@shopify/network/build/ts/index.d.ts","../../../shopify-api/lib/clients/common.ts","../../../shopify-api/lib/clients/admin/graphql/client.ts","../../../../api-clients/storefront-api-client/dist/ts/types.d.ts","../../../../api-clients/storefront-api-client/dist/ts/storefront-api-client.d.ts","../../../../api-clients/storefront-api-client/dist/ts/index.d.ts","../../../shopify-api/lib/clients/storefront/client.ts","../../../shopify-api/lib/clients/graphql_proxy/types.ts","../../../shopify-api/lib/clients/admin/rest/client.ts","../../../shopify-api/lib/clients/types.ts","../../../shopify-api/rest/base.ts","../../../shopify-api/rest/load-rest-resources.ts","../../../shopify-api/lib/config.ts","../../../shopify-api/lib/clients/admin/index.ts","../../../shopify-api/lib/clients/storefront/index.ts","../../../shopify-api/lib/clients/graphql_proxy/graphql_proxy.ts","../../../shopify-api/lib/clients/index.ts","../../../../../node_modules/isbot/index.d.ts","../../../shopify-api/lib/utils/processed-query.ts","../../../shopify-api/lib/auth/oauth/safe-compare.ts","../../../shopify-api/runtime/types.ts","../../../shopify-api/lib/utils/types.ts","../../../shopify-api/lib/utils/hmac-validator.ts","../../../shopify-api/lib/auth/decode-host.ts","../../../shopify-api/lib/utils/shop-admin-url-helper.ts","../../../shopify-api/lib/utils/shop-validator.ts","../../../shopify-api/lib/utils/fetch-request.ts","../../../shopify-api/lib/auth/oauth/nonce.ts","../../../../../node_modules/@types/uuid/index.d.ts","../../../../../node_modules/jose/dist/types/types.d.ts","../../../../../node_modules/jose/dist/types/jwe/compact/decrypt.d.ts","../../../../../node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts","../../../../../node_modules/jose/dist/types/jwe/general/decrypt.d.ts","../../../../../node_modules/jose/dist/types/jwe/general/encrypt.d.ts","../../../../../node_modules/jose/dist/types/jws/compact/verify.d.ts","../../../../../node_modules/jose/dist/types/jws/flattened/verify.d.ts","../../../../../node_modules/jose/dist/types/jws/general/verify.d.ts","../../../../../node_modules/jose/dist/types/jwt/verify.d.ts","../../../../../node_modules/jose/dist/types/jwt/decrypt.d.ts","../../../../../node_modules/jose/dist/types/jwt/produce.d.ts","../../../../../node_modules/jose/dist/types/jwe/compact/encrypt.d.ts","../../../../../node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts","../../../../../node_modules/jose/dist/types/jws/compact/sign.d.ts","../../../../../node_modules/jose/dist/types/jws/flattened/sign.d.ts","../../../../../node_modules/jose/dist/types/jws/general/sign.d.ts","../../../../../node_modules/jose/dist/types/jwt/sign.d.ts","../../../../../node_modules/jose/dist/types/jwt/encrypt.d.ts","../../../../../node_modules/jose/dist/types/jwk/thumbprint.d.ts","../../../../../node_modules/jose/dist/types/jwk/embedded.d.ts","../../../../../node_modules/jose/dist/types/jwks/local.d.ts","../../../../../node_modules/jose/dist/types/jwks/remote.d.ts","../../../../../node_modules/jose/dist/types/jwt/unsecured.d.ts","../../../../../node_modules/jose/dist/types/key/export.d.ts","../../../../../node_modules/jose/dist/types/key/import.d.ts","../../../../../node_modules/jose/dist/types/util/decode_protected_header.d.ts","../../../../../node_modules/jose/dist/types/util/decode_jwt.d.ts","../../../../../node_modules/jose/dist/types/util/errors.d.ts","../../../../../node_modules/jose/dist/types/key/generate_key_pair.d.ts","../../../../../node_modules/jose/dist/types/key/generate_secret.d.ts","../../../../../node_modules/jose/dist/types/util/base64url.d.ts","../../../../../node_modules/jose/dist/types/util/runtime.d.ts","../../../../../node_modules/jose/dist/types/index.d.ts","../../../shopify-api/lib/utils/get-hmac-key.ts","../../../shopify-api/lib/session/decode-session-token.ts","../../../shopify-api/lib/session/session-utils.ts","../../../shopify-api/lib/auth/oauth/create-session.ts","../../../shopify-api/lib/auth/oauth/oauth.ts","../../../shopify-api/lib/auth/oauth/token-exchange.ts","../../../shopify-api/lib/auth/types.ts","../../../shopify-api/lib/auth/get-embedded-app-url.ts","../../../shopify-api/lib/auth/index.ts","../../../shopify-api/lib/session/index.ts","../../../shopify-api/lib/utils/version-compatible.ts","../../../shopify-api/lib/utils/index.ts","../../../shopify-api/lib/webhooks/types.ts","../../../shopify-api/lib/webhooks/registry.ts","../../../shopify-api/lib/webhooks/query-template.ts","../../../shopify-api/lib/webhooks/register.ts","../../../shopify-api/lib/webhooks/validate.ts","../../../shopify-api/lib/webhooks/process.ts","../../../shopify-api/lib/webhooks/index.ts","../../../shopify-api/lib/billing/check.ts","../../../shopify-api/lib/billing/request.ts","../../../shopify-api/lib/billing/cancel.ts","../../../shopify-api/lib/billing/subscriptions.ts","../../../shopify-api/lib/billing/index.ts","../../../shopify-api/lib/flow/validate.ts","../../../shopify-api/lib/flow/index.ts","../../../shopify-api/lib/fulfillment-service/validate.ts","../../../shopify-api/lib/fulfillment-service/index.ts","../../../shopify-api/lib/session/classes.ts","../../../shopify-api/lib/index.ts","../../shopify-app-session-storage/dist/ts/types.d.ts","../../shopify-app-session-storage/dist/ts/abstract-migration-engine.d.ts","../../shopify-app-session-storage/dist/ts/rdbms-session-storage-migrator.d.ts","../../shopify-app-session-storage/dist/ts/index.d.ts","../src/mongodb.ts","../../../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../../../node_modules/chalk/index.d.ts","../../../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../../../node_modules/@jest/schemas/build/index.d.ts","../../../../../node_modules/pretty-format/build/index.d.ts","../../../../../node_modules/jest-diff/build/index.d.ts","../../../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../../../node_modules/expect/build/index.d.ts","../../../../../node_modules/@types/jest/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true,"impliedFormat":1},{"version":"76f838d5d49b65de83bc345c04aa54c62a3cfdb72a477dc0c0fce89a30596c30","affectsGlobalScope":true,"impliedFormat":1},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true,"impliedFormat":1},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a1971efcba559ea9002ada4c4e3c925004fb67a755300d53b5edf9399354900","impliedFormat":1},{"version":"55461596dc873b866911ef4e640fae4c39da7ac1fbc7ef5e649cb2f2fb42c349","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"9ed09d4538e25fc79cefc5e7b5bfbae0464f06d2984f19da009f85d13656c211","impliedFormat":1},{"version":"b1bf87add0ccfb88472cd4c6013853d823a7efb791c10bb7a11679526be91eda","impliedFormat":1},{"version":"91f0ee35a4c34ca328a4680a013631acde2688e50e86a49e6aa619f73fd0f7e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","impliedFormat":1},{"version":"3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","impliedFormat":1},{"version":"e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","impliedFormat":1},{"version":"471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","impliedFormat":1},{"version":"c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","impliedFormat":1},{"version":"40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","impliedFormat":1},{"version":"8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","impliedFormat":1},{"version":"4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1","impliedFormat":1},{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true,"impliedFormat":1},{"version":"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c","impliedFormat":1},{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","impliedFormat":1},{"version":"d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9","impliedFormat":1},{"version":"a9544f6f8af0d046565e8dde585502698ebc99eef28b715bad7c2bded62e4a32","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","impliedFormat":1},{"version":"4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","impliedFormat":1},{"version":"d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","impliedFormat":1},{"version":"7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","impliedFormat":1},{"version":"b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true,"impliedFormat":1},{"version":"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","impliedFormat":1},{"version":"b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","impliedFormat":1},{"version":"afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","impliedFormat":1},{"version":"9bd8e5984676cf28ebffcc65620b4ab5cb38ab2ec0aac0825df8568856895653","impliedFormat":1},{"version":"396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","impliedFormat":1},{"version":"5e8dc64e7e68b2b3ea52ed685cf85239e0d5fb9df31aabc94370c6bc7e19077b","impliedFormat":1},{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true,"impliedFormat":1},{"version":"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","impliedFormat":1},{"version":"45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","impliedFormat":1},{"version":"0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7","impliedFormat":1},{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true,"impliedFormat":1},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true,"impliedFormat":1},{"version":"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","impliedFormat":1},{"version":"54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","impliedFormat":1},{"version":"d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","impliedFormat":1},{"version":"8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","impliedFormat":1},{"version":"01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","impliedFormat":1},{"version":"9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024","impliedFormat":1},{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true,"impliedFormat":1},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true,"impliedFormat":1},{"version":"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","impliedFormat":1},{"version":"4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","impliedFormat":1},{"version":"7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","impliedFormat":1},{"version":"7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df","impliedFormat":1},{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","impliedFormat":1},{"version":"79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","impliedFormat":1},{"version":"21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b","impliedFormat":1},{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc","impliedFormat":1},{"version":"7cc1b4e7390d449fc3054863cd0d5acc48355b45586eb321d9156e50b6f4d50f","impliedFormat":1},{"version":"01a8a1325d1e97da3be1876c80672367ae62037071cfb32aac61a6d420acbe74","impliedFormat":1},{"version":"df78f481a21572c6b556c30b4de8ca83e51f0301eaa7275dd47ff509b13de94f","impliedFormat":1},{"version":"759e6b9397dc9808a5695b4fe0c52b8966089c44e46840ddd32ab38386ca9219","impliedFormat":1},{"version":"45fae1d446b18194045aed34d0e909563af3790a3de23ca883ba798a8581a40d","impliedFormat":1},{"version":"b3baa7bea7a0797d9d4011fb90f9a3e18550b5f874e4473f52e324178f60b297","impliedFormat":1},{"version":"5d5207644f363b8d5578191e5f325c53c0bbc1fddf7204eb715d3793a0342607","impliedFormat":1},{"version":"4b50786b05f371977086122649557a4892502d4a50922d80dc772b374811398e","impliedFormat":1},{"version":"5980ac1b4e08a1fb20d1afd8c14125388e8c9574895e0db3bb5b1358d4082d9a","impliedFormat":1},{"version":"1d111c7be267bc30d01625532ef7b33f4bb9c1f8e273c200d5ded612c242cd08","impliedFormat":1},{"version":"0a310dccb27b2a103e2a34845eff6ebf0fd275fd65182c8617101257d6d26ebe","impliedFormat":1},{"version":"dc6246ac8a60b62a4044ab016442c6c877cede03f6f94499b354f1ee8def05ea","impliedFormat":1},{"version":"fcf4e506a4b6fc2fe83ecaf6ecfb938fd142037c329adb430308e9c3cbd2c37e","impliedFormat":1},{"version":"2efef61e21d22d475b64716eeb97d9051ca86b7823f08006bb3f439bd509a698","impliedFormat":1},{"version":"70746c7dae7750b0f8475c58dfeb9edd892c31fecc3ee9bbe61d1b9350b94cc0","impliedFormat":1},{"version":"1bc5ee1f651bf6b837d1005a7a7a20500dfb7a0747786629faf4589b4f984385","impliedFormat":1},{"version":"8e842019694f531e8cc68423bb8d234e348894e6a42f0d7951def4aab762b077","impliedFormat":1},{"version":"3339efffe55d8c03a605be5820967a6aec3da6da24bfb6483269f320293106c6","impliedFormat":1},{"version":"85d7a38b91b6bc4b1d0ce8a54e01ab4410661112bfea18211c57b229bc743095","impliedFormat":1},{"version":"c775aeb64e878b1cc78266531a24a580c6bb146c4b6b8b1f88a5da91030c1cdb","impliedFormat":1},{"version":"a64dc000259068164898278c83f5579443ecce2c4bbb8a0f501798a4023a5c8e","impliedFormat":1},{"version":"0355f3ceab0facac6c7af26870d7c83d0f73295f70c0aa9b68dfa8f45de30e7d","impliedFormat":1},{"version":"d5b5e9c205d968bc5c3aa527c6bb3b873eae2e96a35ca327cd6cb1c3819be53b","impliedFormat":1},{"version":"47f1674836b5550ac5a2d8508c8bb985d82b97fbdab7016418da0bf5750e3d30","impliedFormat":1},{"version":"f0698187c1c26d2d41df5fa2e0efd518855ee0230751df48fe8fc5e95104ee4a","impliedFormat":1},{"version":"1a2f8d3c0acc6b4201e87e945154b6856020ec240d676b053ced456c3e9cf3e2","impliedFormat":1},{"version":"fdaae1f8cf97ae9854b855bba0ef1986cba707991a912466ea6a77a3a08978f0","impliedFormat":1},{"version":"de3d447957fc7fd6ec73b92af6b3c5b005b5457185f7391f6cb8f9454c683106","impliedFormat":1},{"version":"5930b82f037a07aab5466b78e626b68a92d03e90b2ff07986343acdee82b09c7","impliedFormat":1},{"version":"c3821d3b26d23fa221b65717b36c401d51cf018daaf75cd9d949a228a6c1fc7d","impliedFormat":1},{"version":"16bd138ac5722a4aeb9a5f4bde6c6609c123d6bda5f95e8210a8251c0585ae05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7bdbf9ff9f737504bd223c7b8cfae0ae62dd91f4aeef506ac1a823be119f855","impliedFormat":1},{"version":"cd842aa849dcd6d071d1c842e9849fbf8c6e1066da917a547599e91928f72d05","impliedFormat":1},{"version":"f9dc9fd4236f5b5950ca482f8f94dc13160ae06ee69f8e7af5f4b9e5c47bde4f","impliedFormat":1},{"version":"b85d42b044c3706c4a8f7ce187678108f52858cd30244aa65816818ea2ac523a","impliedFormat":1},{"version":"f13271cf7b6ae88e2fb80fb6b00689695a189fb95e814444b5971b8d6180a1d4","impliedFormat":1},{"version":"24ba31decd882aa7f5adf9208f88c5dc2d64cf1121cd9bc33255fcd183080973","impliedFormat":1},{"version":"801ff78aad3b6dcb84e390ff5ff1190569b2532da7d234ae1193db2c5af7d117","impliedFormat":1},{"version":"504e97bde536d03afd59e0907abf04c879e387d442932274627d4dbbf55779c1","impliedFormat":1},{"version":"96d6a4fb06e4d1361abe3c0472e8d0e4c6b4d89fd9331112e4fd0b7e4ff10ec5","impliedFormat":1},{"version":"4c0d93f69f95d273cea31e7680e30d06945c2dbe40f905f95577b48961f9f790","impliedFormat":1},{"version":"05e61ea8def7d60c293f166518091b55c5d12e68bbf06c18192d5ca260a002d3","impliedFormat":1},{"version":"cb1d14294b25c695cf3c3a71e23f028eaf18f0c795f85b2d486ef0060a3bf8f2","impliedFormat":1},{"version":"43d897c85406cd5e7f3b4e2ee7e1d7e1040bc9e63f7b820db52e1e005c218d97","impliedFormat":1},{"version":"136d8c587087fa215d24b7b22b1f0c31578b2dfbfec35c4c376f4b28b3185e54","impliedFormat":1},{"version":"d6517e73cb1c442253cf227980514480722030149a3071ab5a835a4b8393e3a9","impliedFormat":1},{"version":"207544ff4e6e3685098bdf013673db192b0a5788dd780781baf40276b3f4aec6","impliedFormat":1},{"version":"196eebfc5cfeadd8af67de300442aa2518707bcf02d5ae3ae9a19832b1b9e1e9","impliedFormat":1},{"version":"058a9a128cc87b531fce7bf705dfda32fe77bd7f5f83dcebbe502b2bfadb2e82","impliedFormat":1},{"version":"e460d2eedf27885d96c49e9848b447564faec0ee251b89038d1624ac3ef81088","impliedFormat":1},{"version":"01a8022774597128bb9863f24db4eb504a9d7272ea6ff335db3892eb8242582f","impliedFormat":1},{"version":"310dd22e86859518b72aa18158aa42ea542528c53517177491e18a3b19515d24","impliedFormat":1},{"version":"7bd663e45a60195fafcd826f69c2c2ce289417babc2b2080573a850b0c7b159a","impliedFormat":1},{"version":"0fca4bbbffa6117bfc05622e9f725248cc33469710a6f504ed303ef6e2cfea98","impliedFormat":1},{"version":"24a75822c1d4f56a5e8e73d08a54d5519c499f09bdc5d8f6b67befaf47f9a85e","impliedFormat":1},{"version":"117217e9f4c8e59500965f86f6829a125edc8c6484c5db26fe2d7f68eb89c520","impliedFormat":1},{"version":"a8407e353022f0b6321a2e91b72b18c3ab632e91bad29457fcca5d61604447b1","impliedFormat":1},{"version":"96f6781abbd4903e137f8dd59440d2c77e4ca903a2226217fa90a83d09a3e772","impliedFormat":1},{"version":"46439fd047f993161368be2cbcc7bf13bc3ef45bb428d01301c6de72c7b12eda","impliedFormat":1},{"version":"95cbe4af92c1e4bfb8ffbe25fbf7dede800c144c9e073c9f5b23b3f3938520ed","impliedFormat":1},{"version":"56b2e1475269144d3cb2483b5ad0d578681f6d8a7429e68f371295e09ae624a2","impliedFormat":1},{"version":"45d382afe9eebdd510b592cd41e7e452297ed9a4899ffdc8f6804dc408149a5f","impliedFormat":1},{"version":"31174d359b227d6b0810b1b7a017cca56bd6829f4966a124592b83f6bb6952f8","impliedFormat":1},{"version":"aca0f5b02e5a3d6ae9f53d04c9deb4b71ccbcdccc3d2ca7f1ac26ee1be7ff67e","impliedFormat":1},{"version":"7c730e0e39db6081b6bc4ce05a250c54822257e998263808e3e74df26985ed60","impliedFormat":1},{"version":"24d07db7fa9cca2a26f1079205285cfd51452c65d0ed479a0bfa342ad2c2b13a","impliedFormat":1},{"version":"2d2fd16c363f7942f0a544a0f8722f9a18f287098fa16568da2dc7a1e34ca88b","impliedFormat":1},{"version":"ef7185dfbda9e3b84abc4f19916cfad12fcef5e90a15f79a358906fd5ce134ae","impliedFormat":1},{"version":"d6ef9ed294c73c11aa075a17abbca17145ccc7b29938f351822a3416a2a76e8d","impliedFormat":1},{"version":"b3525a15acfc7bdd8b2d258822169b20c68ade3ce871725b6b3a30f969a417a5","impliedFormat":1},{"version":"03eef9732dea0cf9d46f28560f46fc56e62647641a058cb90bf8e77bd202be4f","impliedFormat":1},{"version":"94c6cbdddd173e0e0a0be07d950066ecf8a36858c996dfcfced69ddd86ce9a3f","impliedFormat":1},{"version":"7646924246535bc646fa03d94f31ed0f3ff2ea68755419d0f9073036a6f9a17a","impliedFormat":1},{"version":"53063c6776983499abfd0371a3e0417401687f23014c5095469aae0ef93d1bd7","impliedFormat":1},{"version":"932f104d8a6bad57461062ef54aedb34fc9822f5b700187f3dd73d516dc6860a","impliedFormat":1},{"version":"8347ac76d2e683cc3e37da4f5970ca6f21e3968749a8d3c6c6d1985838d722e8","impliedFormat":1},{"version":"ecb1cff7859cab5248bcf4bc400426d9be9df7ce46bd8c392d4f417bb4dca71d","impliedFormat":1},{"version":"603ad347b05dc035b9c3026e7e7fd21bd49a7e2240243150cd811bda8e688656","impliedFormat":1},{"version":"38f30bae10354806e815bd88e356cd2667b400fae3840716ca0731e1676db737","impliedFormat":1},{"version":"45e896e66638d44487813fcd76d5a1a49526c9edfdc9679a39fcc17e7938ec99","impliedFormat":1},{"version":"9fa699ecc69e9ae81c7137645c7eb432f0551e8d38090915fce3274501565350","impliedFormat":1},{"version":"0e89cddc298e8b91fec5a7d588ad50736bb5ffbc80e4328a4e4044b42f8ed758","impliedFormat":1},{"version":"749568cdd085c83cc6ed783004c8290cb6bef52831d96ef1973c973e5d5f7684","impliedFormat":1},{"version":"84420288b2948c518c5922200dd4ff8211d1c37f5c65da49ed5fd4a4bd3600c2","impliedFormat":1},{"version":"84c3e20504cfedc743dba0f952468bf58596a11065252878697323567a2c0d23","impliedFormat":1},{"version":"86872951709e0256f456bd8edee87c6318dd4d505800d5df73515ea53667b5e4","impliedFormat":1},{"version":"7d2b7fe4adb76d8253f20e4dbdce044f1cdfab4902ec33c3604585f553883f7d","impliedFormat":1},{"version":"44f3d3ae0d27a0622e1366d5605870d5c207e3729f84fa3a7381ed81d0460d7c","impliedFormat":1},{"version":"61e379420fd4581a8384e7e60c145fd1dac2c3ee9abda2966247df67e0c2a31c","impliedFormat":1},{"version":"e30684e37b9298fcc60a8b8fc535ef3b03a442a5caa2ff1261b6dd40c64bf6b3","impliedFormat":1},{"version":"202f68234b980e956ec6e70114f70a7e39a38907e19b51ecdee92475ddef04bb","impliedFormat":1},{"version":"bf4be9b34eadf5f0a4518899f50d45691cb13a34f44ac182ba109a3ecdf94fe2","impliedFormat":1},{"version":"9e93bf465982e217c9da4f86df589f5123e22eb13a9d69b57b68bd50ea58d90e","impliedFormat":1},{"version":"cfc21c6c04a6afc79f8168b44e8f8284b574baf15ea320aa37a56423d9b81016","impliedFormat":1},{"version":"bf769f7ca710257e9a68923ee6a747b9faccc9e50b588a1c6c166b803c26d225","impliedFormat":1},{"version":"1b0a3d3bb51ad9e731746a5f5982cc817987c426c0f5341617e1c33e54910d3e","impliedFormat":1},{"version":"410913a50c2e85ff9cdc0df0c87f288ec991f8964ca3164bf197512255559410","impliedFormat":1},{"version":"94c8e9c00244bbf1c868ca526b12b4db1fab144e3f5e18af3591b5b471854157","impliedFormat":1},{"version":"6e5e666fa6adeb60774b576084eeff65181a40443166f0a46ae9ba0829300fcb","impliedFormat":1},{"version":"1a4d43bdc0f2e240395fd204e597349411c1141dd08f5114c37d6268c3c9d577","impliedFormat":1},{"version":"874e58f8d945c7ac25599128a40ec9615aa67546e91ca12cbf12f97f6baf54ff","impliedFormat":1},{"version":"da2627da8d01662eb137ccd84af7ffa8c94cf2b2547d4970f17802324e54defc","impliedFormat":1},{"version":"07af06b740c01ed0473ebdd3f2911c8e4f5ebf4094291d31db7c1ab24ff559aa","impliedFormat":1},{"version":"ba1450574b1962fcf595fc53362b4d684c76603da5f45b44bc4c7eeed5de045b","impliedFormat":1},{"version":"b7903668ee9558d758c64c15d66a89ed328fee5ac629b2077415f0b6ca2f41bc","impliedFormat":1},{"version":"c7628425ee3076c4530b4074f7d48f012577a59f5ddade39cea236d6405c36ba","impliedFormat":1},{"version":"38f244e69cb2fa9f758c909eb2633216adb8b71961bde979636f2ead4cd47676","impliedFormat":1},{"version":"52cc694628af5397d2c36dad5e7b527d3b41f07abcfd38a454a41fa4b1f15a33","impliedFormat":1},{"version":"a70af7701133abfb70d8c0c69b6a4e07c57ab4568df667764d593e260ffa80e6","impliedFormat":1},{"version":"166cc0be8985065439a81d69a98cadfeb2e405699940ec15b8f91a1393f06d27","impliedFormat":1},{"version":"2e90928c29c445563409d89a834662c2ba6a660204fb3d4dc181914e77f8e29d","impliedFormat":1},{"version":"5736ef64b6b5d45da04a4cffd8cb755601d9009df1701012f15cab20f70503de","impliedFormat":1},{"version":"d7af890ef486b4734d206a66b215ebc09f6743b7fb2f3c79f2fb8716d1912d27","impliedFormat":1},{"version":"8d7bccd81b079ef9d7019119f4e8e4f8a679961a7e1a6e9275a0f2a31bfb19a9","impliedFormat":1},{"version":"c8dd60cff975cf22752715ff7f4c5475155626b65fb73cf3d9c5971efe7359ee","impliedFormat":1},{"version":"be3d469b2ed22f589bebb5de04f8a31b8d0a27f1f71af2c2d4a11f4830373d06","impliedFormat":1},{"version":"33276d8b87fc332c9afbae0223ab29c7be9aa266c3fa97bd7df8bb7f5b3fb7ac","impliedFormat":1},{"version":"086d9e59a579981bdf4f3bfa6e8e893570e5005f7219292bf7d90c153066cdfc","impliedFormat":1},{"version":"1ea59d0d71022de8ea1c98a3f88d452ad5701c7f85e74ddaa0b3b9a34ed0e81c","impliedFormat":1},{"version":"47ebce68c9e909bb3266b6fea2a3cba5b95c2f5a6870b1adeedbfac0866c8e7a","impliedFormat":1},{"version":"9d3496dbbca98811b532f84bc93bb05219ab1aa36d15edab127684fb3bab91da","impliedFormat":1},{"version":"fa87680283b0bb2029c4ffa139ff7e1f5cf50d503771cb3363a8f6a51cc38f90","impliedFormat":1},{"version":"2ec34187ace00e5519aacadeb4ab733ecb3778880f5d4650a75d10481a062d19","impliedFormat":1},{"version":"e61386acce0795d30311482059e06aeb1280afee2f2d4324fe05f1be7601dc1c","impliedFormat":1},{"version":"94a8db9488e94334728f853b24fc9e32156d58a6ae2e5cd831fe6f5ad84f4d92","impliedFormat":1},{"version":"571f3ad8e2a0fad3427b4f1fab4b853aba00e3a69b8d47f2bedc936f1d054a49","impliedFormat":1},{"version":"cbbfb46212add763ece0d7717e633e3a0da2418a5a818081540d61fde96b1bff","impliedFormat":1},{"version":"05f2c8bf21c05e42f0286c4b98daee180e9f1d666b39d7d73b28c537fe69401a","impliedFormat":1},{"version":"e0132968f8201c42d3a3f6a9dc29bc85c609fd4579598e1754df8c441d9752c8","impliedFormat":1},{"version":"4c0ace9d7bfac607df72f3c43c6e7f6706488a1494cc241bef4005e9aadfc52e","impliedFormat":1},{"version":"833c25a712db56a7fd54664b98085d2d4bf6a6d21c7a5ff740914eebac29c899","impliedFormat":1},{"version":"cce3aae9d6e3ec46d2f572ab2db487bbdec2ef8ba7c352869aacfd6324231818","impliedFormat":1},{"version":"4811378069773d0ffdb36fd2eccc34ae64d8058e6392da3a848d4cb94bba6f14","impliedFormat":1},{"version":"1597023d6cd0890fe459c868c36a08609db3f3fe3223c9a8bf52ed6d1d3eed7c","impliedFormat":1},{"version":"e6414a1b3426cbeabd46f14b84216097a427cf0316c465d21674991a0318dcb5","impliedFormat":1},{"version":"1783f458ff9d8620531898192f5e120f1239665bf38729137e11547c2ba0ad9e","impliedFormat":1},{"version":"b4d7881696c3e2113e15744a9bee15582ec5655899a5ab2456511ceb25587d50","impliedFormat":1},{"version":"fff086dd2bcfe63619803b22bccd0c6205febca74821e88675d0e8d7fdbeeb27","impliedFormat":1},{"version":"1593b9a626d92cc39bcb82bd757a6d1f7622923380a0d4669f169eb1818233a1","impliedFormat":1},{"version":"a8532730b4128246321f36ec5267727879f55de3a79c787e82505aa4a060ae6d","impliedFormat":1},{"version":"587469373328ea5394e0fd441a50ba463a6dd00e047eb03697ef5734928c9c9d","impliedFormat":1},{"version":"a11e6248a1e6eb203ea6be8cfaa01965cd25fb3bdd8feed60cc06832ce65ef01","impliedFormat":1},{"version":"5dfa1e5544e9ed802c2c32de815597bceb89e4408c01eacccafaa66055a9710b","impliedFormat":1},{"version":"294c7679a73f7fc723f70a3dddea0d05d1716204919c5d524a0a4f743493f023","impliedFormat":1},{"version":"eaa00173f760fe1c4dcd0479c57737a5816e2be9212773af5a6e2e7db1a80bf9","impliedFormat":1},{"version":"85bd725144069a49927411c1d5bd29ac8f507f89410b3279433583a532480ebc","impliedFormat":1},{"version":"f4ebd6fb68c326db053b225828bf211218e16bb489dc26291f13509bf9f6284a","impliedFormat":1},{"version":"1fd96383b40ab8dc0ae4197c3b6d37328fe79779c3b2be24685e502268cb4ff5","impliedFormat":1},{"version":"48457e45dc93af33ca2e08cfce749473afd5cf33ff63f3c1e46cfbdc83bbc8b5","impliedFormat":1},{"version":"c14ee4afaa260b7ba3f57c9aa62ea1dc6f669b40faf4ceec062fbe1d9857b6a7","impliedFormat":1},{"version":"5523de77e01ad20927ef45dfe246cca902577ddf3deadaa913f4880324a356a7","impliedFormat":1},{"version":"f51cd30d71a743daf51e6bfa0e484286534900de73035e78a4c6bd6c52dc5b5c","impliedFormat":1},{"version":"dde9f75371884d2be3d2e3a01286f1c501979162320529d3c25cf852d04f31e4","impliedFormat":1},{"version":"809796eb4b7225ff86520b529e0d0949f941904adc42a650824181a5a2d6fe0e","impliedFormat":1},{"version":"f2b4812e1fab308341a66515ee64e57da1978a48adf8f8acd2de3a4cfc05c732","signature":"8889dc95aee3670945cb219549508c8f4cc71c5ac6b5ddb1af27fd75c67b87e1","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"5ab630d466ac55baa6d32820378098404fc18ba9da6f7bc5df30c5dbb1cffae8","affectsGlobalScope":true,"impliedFormat":1}],"root":[302],"options":{"composite":true,"declaration":true,"declarationMap":true,"downlevelIteration":true,"emitDeclarationOnly":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"jsx":4,"module":100,"noEmitOnError":false,"noImplicitAny":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./ts","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strictNullChecks":true,"stripInternal":true,"target":8},"fileIdsList":[[305],[205],[307,310],[60],[96],[97,102,131],[98,109,110,117,128,139],[98,99,109,117],[100,140],[101,102,110,118],[102,128,136],[103,105,109,117],[96,104],[105,106],[109],[107,109],[96,109],[109,110,111,128,139],[109,110,111,124,128,131],[94,97,144],[105,109,112,117,128,139],[109,110,112,113,117,128,136,139],[112,114,128,136,139],[60,61,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146],[109,115],[116,139,144],[105,109,117,128],[118],[119],[96,120],[121,138,144],[122],[123],[109,124,125],[124,126,140,142],[97,109,128,129,130,131],[97,128,130],[128,129],[131],[132],[96,128],[109,134,135],[134,135],[102,117,128,136],[137],[117,138],[97,112,123,139],[102,140],[128,141],[116,142],[143],[97,102,109,111,120,128,139,142,144],[128,145],[54,55,56,57],[58],[150],[150,151,152,153,154],[303,309],[307],[304,308],[235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266],[235],[235,245],[105,109,117,128,136,147,148],[306],[71,75,139],[71,128,139],[66],[68,71,136,139],[117,136],[147],[66,147],[68,71,117,139],[63,64,67,70,97,109,128,139],[63,69],[67,71,97,131,139,147],[97,147],[87,97,147],[65,66,147],[71],[65,66,67,68,69,70,71,72,73,75,76,77,78,79,80,81,82,83,84,85,86,88,89,90,91,92,93],[71,78,79],[69,71,79,80],[70],[63,66,71],[71,75,79,80],[75],[69,71,74,139],[63,68,69,71,75,78],[97,128],[66,71,87,97,144,147],[191,192],[193],[190,191],[190,192,194,195,197],[195],[196],[190],[182,184,185,186,187,188],[178],[179,183],[179,184],[184],[179],[178,179],[179,180],[147,178],[181,189],[190,209,210],[209],[53,59,149,297,301],[298],[298,299,300],[298,299],[297],[53,59,162,177],[53,59],[53,59,158,173,177,229,231,274],[53,59,177,225,233,272,273,275],[53,59,162,166,175,177,234,270],[53,59,199],[53,59,158,162,166,173,175,177,207,215,223,224,225,228,231,232,233,271],[53,59,158],[53,59,166,175,177,207,215,231,232,269,271],[53,59,157],[53,59,166,173,273],[53,59,156,163,164,165,176],[53,59,158,176,177,219],[53,59,177,287,288,289,290],[53,59,156,158,163,168,176,177,199,219,275],[53,59,156,163,175],[53,59,156,158,162,175,177,198,203,207,215],[53,59,208,214],[53,59,156,158,162,175,177,198,203,204,206,207,215],[53,59,156,175,198,203],[53,59,156,158,159,162,177,198,203,206],[53,59,158,177,213,219],[53,59,175,215],[53,59,177,215,219,220,221],[53,59,156,158,162,175,177,203,207,211,215],[53,59,212],[53,59,156,173,175,198,204,206,208,212,213,214],[53,59,156,158,162,165,177],[53,59,177,292],[53,59,177,227,228],[53,59,177,294],[53,59,156,158,159,162,163,164,174,176,177,202,214,215,217,218,222,227,274,276,277,279,280,286,291,293,295,296],[53,59,155,156,158,159,160,161,177],[53,59,156,160,177],[53,59,175],[53,59,158,174,177,267,268],[53,59,177,269,270],[53,59,158,162,166,173,174,175,177,231,269],[53,59,158,165,166,174],[53,59,166,173],[53,59,156,162,177,203],[53,59,156,158,162,166,168,173,177,199,224,225,227],[53,59,177,228,230,231,278],[53,59,158,177,229,230],[53,59,226],[53,59,156,177],[53,59,177,280,281,283,284,285],[53,59,158,162,173,177,206,280,284],[53,59,156,158,162,175,177,219,280,281,282],[53,59,158,162,177,280],[53,59,175,226,227],[53,59,156,162,173,177,227,228,280,281],[53,59,156,158,164,173,175,177,204,214,215],[53,59,162,164,177,216,297],[53,59,167,168,169],[53,59,158,167,168],[53,59,169,170,171,173],[53,59,157,170,171,172],[53,59,173,199,202],[53,59,200,201],[53,59,200],[53,59,157,168,200],[297,301]],"referencedMap":[[306,1],[206,2],[311,3],[60,4],[61,4],[96,5],[97,6],[98,7],[99,8],[100,9],[101,10],[102,11],[103,12],[104,13],[105,14],[106,14],[108,15],[107,16],[109,17],[110,18],[111,19],[95,20],[112,21],[113,22],[114,23],[147,24],[115,25],[116,26],[117,27],[118,28],[119,29],[120,30],[121,31],[122,32],[123,33],[124,34],[125,34],[126,35],[128,36],[130,37],[129,38],[131,39],[132,40],[133,41],[134,42],[135,43],[136,44],[137,45],[138,46],[139,47],[140,48],[141,49],[142,50],[143,51],[144,52],[145,53],[58,54],[59,55],[151,56],[155,57],[310,58],[308,59],[309,60],[267,61],[236,62],[246,62],[237,62],[247,62],[238,62],[239,62],[254,62],[253,62],[255,62],[256,62],[248,62],[240,62],[249,62],[241,62],[250,62],[242,62],[244,62],[252,63],[245,62],[251,63],[257,63],[243,62],[258,62],[263,62],[264,62],[259,62],[261,62],[260,62],[262,62],[266,62],[149,64],[307,65],[78,66],[85,67],[77,66],[92,68],[69,69],[68,70],[91,71],[86,72],[89,73],[71,74],[70,75],[66,76],[65,77],[88,78],[67,79],[72,80],[76,80],[94,81],[93,80],[80,82],[81,83],[83,84],[79,85],[82,86],[87,71],[74,87],[75,88],[84,89],[64,90],[90,91],[193,92],[194,93],[192,94],[198,95],[196,96],[197,97],[195,94],[191,98],[189,99],[183,100],[184,101],[188,102],[185,103],[180,104],[187,105],[181,106],[179,107],[190,108],[211,109],[210,110],[209,98],[302,111],[299,112],[301,113],[300,114],[298,115],[163,116],[229,117],[275,118],[276,119],[271,120],[233,121],[272,122],[225,123],[273,124],[166,125],[165,117],[274,126],[177,127],[289,128],[287,128],[291,129],[288,130],[290,128],[176,131],[208,132],[219,133],[214,134],[204,135],[207,136],[221,137],[213,138],[222,139],[212,140],[220,141],[215,142],[218,143],[158,125],[293,144],[292,145],[295,146],[294,145],[297,147],[162,148],[161,149],[160,117],[296,150],[269,151],[277,152],[270,153],[175,154],[174,155],[156,117],[232,156],[268,117],[228,157],[279,158],[224,117],[230,117],[231,159],[227,160],[278,161],[159,117],[286,162],[285,163],[282,117],[283,164],[281,165],[280,166],[284,167],[216,168],[217,169],[164,117],[167,117],[199,170],[168,117],[169,171],[172,172],[171,125],[173,173],[157,117],[170,117],[203,174],[202,175],[201,176],[200,117],[226,177]],"exportedModulesMap":[[306,1],[206,2],[311,3],[60,4],[61,4],[96,5],[97,6],[98,7],[99,8],[100,9],[101,10],[102,11],[103,12],[104,13],[105,14],[106,14],[108,15],[107,16],[109,17],[110,18],[111,19],[95,20],[112,21],[113,22],[114,23],[147,24],[115,25],[116,26],[117,27],[118,28],[119,29],[120,30],[121,31],[122,32],[123,33],[124,34],[125,34],[126,35],[128,36],[130,37],[129,38],[131,39],[132,40],[133,41],[134,42],[135,43],[136,44],[137,45],[138,46],[139,47],[140,48],[141,49],[142,50],[143,51],[144,52],[145,53],[58,54],[59,55],[151,56],[155,57],[310,58],[308,59],[309,60],[267,61],[236,62],[246,62],[237,62],[247,62],[238,62],[239,62],[254,62],[253,62],[255,62],[256,62],[248,62],[240,62],[249,62],[241,62],[250,62],[242,62],[244,62],[252,63],[245,62],[251,63],[257,63],[243,62],[258,62],[263,62],[264,62],[259,62],[261,62],[260,62],[262,62],[266,62],[149,64],[307,65],[78,66],[85,67],[77,66],[92,68],[69,69],[68,70],[91,71],[86,72],[89,73],[71,74],[70,75],[66,76],[65,77],[88,78],[67,79],[72,80],[76,80],[94,81],[93,80],[80,82],[81,83],[83,84],[79,85],[82,86],[87,71],[74,87],[75,88],[84,89],[64,90],[90,91],[193,92],[194,93],[192,94],[198,95],[196,96],[197,97],[195,94],[191,98],[189,99],[183,100],[184,101],[188,102],[185,103],[180,104],[187,105],[181,106],[179,107],[190,108],[211,109],[210,110],[209,98],[302,178],[299,112],[301,113],[300,114],[298,115],[163,116],[229,117],[275,118],[276,119],[271,120],[233,121],[272,122],[225,123],[273,124],[166,125],[165,117],[274,126],[177,127],[289,128],[287,128],[291,129],[288,130],[290,128],[176,131],[208,132],[219,133],[214,134],[204,135],[207,136],[221,137],[213,138],[222,139],[212,140],[220,141],[215,142],[218,143],[158,125],[293,144],[292,145],[295,146],[294,145],[297,147],[162,148],[161,149],[160,117],[296,150],[269,151],[277,152],[270,153],[175,154],[174,155],[156,117],[232,156],[268,117],[228,157],[279,158],[224,117],[230,117],[231,159],[227,160],[278,161],[159,117],[286,162],[285,163],[282,117],[283,164],[281,165],[280,166],[284,167],[216,168],[217,169],[164,117],[167,117],[199,170],[168,117],[169,171],[172,172],[171,125],[173,173],[157,117],[170,117],[203,174],[202,175],[201,176],[200,117],[226,177]],"semanticDiagnosticsPerFile":[178,303,306,206,205,305,311,60,61,96,97,98,99,100,101,102,103,104,105,106,108,107,109,110,111,95,146,112,113,114,147,115,116,117,118,119,120,121,122,123,124,125,126,127,128,130,129,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,56,54,58,59,57,234,148,62,304,151,152,155,153,150,154,55,310,223,308,309,267,236,246,237,247,238,239,254,253,255,256,248,240,249,241,250,242,244,252,245,251,257,243,258,263,264,259,235,265,261,260,262,266,149,307,53,51,52,9,10,12,11,2,13,14,15,16,17,18,19,20,3,21,4,22,26,23,24,25,27,28,29,5,30,31,32,33,6,37,34,35,36,38,7,39,44,45,40,41,42,43,8,49,46,47,48,1,50,78,85,77,92,69,68,91,86,89,71,70,66,65,88,67,72,73,76,63,94,93,80,81,83,79,82,87,74,75,84,64,90,193,194,192,198,196,197,195,191,186,189,183,184,188,185,180,187,181,179,182,190,211,210,209,302,299,301,300,298,163,229,275,276,271,233,272,225,273,166,165,274,177,289,287,291,288,290,176,208,219,214,204,207,221,213,222,212,220,215,218,158,293,292,295,294,297,162,161,160,296,269,277,270,175,174,156,232,268,228,279,224,230,231,227,278,159,286,285,282,283,281,280,284,216,217,164,167,199,168,169,172,171,173,157,170,203,202,201,200,226],"latestChangedDtsFile":"./ts/mongodb.d.ts"},"version":"5.4.5"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shopify/shopify-app-session-storage-mongodb",
3
- "version": "3.0.2",
3
+ "version": "3.0.4",
4
4
  "description": "Shopify App Session Storage for MongoDB",
5
5
  "repository": {
6
6
  "type": "git",
@@ -9,12 +9,23 @@
9
9
  "bugs": {
10
10
  "url": "https://github.com/Shopify/shopify-app-js/issues"
11
11
  },
12
- "homepage": "https://github.com/Shopify/shopify-app-js/tree/main/packages/shopify-app-session-storage-mongodb",
12
+ "homepage": "https://github.com/Shopify/shopify-app-js/tree/main/packages/apps/session-storage/shopify-app-session-storage-mongodb",
13
13
  "author": "Shopify Inc.",
14
14
  "license": "MIT",
15
- "main": "./build/cjs/mongodb.js",
16
- "types": "./build/ts/mongodb.d.ts",
17
- "scripts": {},
15
+ "main": "./dist/cjs/mongodb.js",
16
+ "module": "./dist/esm/mongodb.mjs",
17
+ "types": "./dist/ts/mongodb.d.ts",
18
+ "scripts": {
19
+ "lint": "eslint . --ext .js,.ts",
20
+ "build": "yarn run rollup && yarn tsc -p ./tsconfig.build.json",
21
+ "test": "jest",
22
+ "test:ci": "yarn test",
23
+ "rollup": "rollup -c rollup.config.js --bundleConfigAsCjs",
24
+ "clean": "rimraf .rollup.cache dist",
25
+ "changeset": "changeset",
26
+ "version": "changeset version",
27
+ "release": "yarn build && changeset publish"
28
+ },
18
29
  "publishConfig": {
19
30
  "access": "public"
20
31
  },
@@ -34,15 +45,14 @@
34
45
  "mongodb": "^6.3.0"
35
46
  },
36
47
  "peerDependencies": {
37
- "@shopify/shopify-api": "^9.5.1",
38
- "@shopify/shopify-app-session-storage": "^2.1.2"
48
+ "@shopify/shopify-api": "^9.7.2",
49
+ "@shopify/shopify-app-session-storage": "^2.1.4"
39
50
  },
40
51
  "devDependencies": {
41
- "@shopify/shopify-app-session-storage-test-utils": "^2.0.2"
52
+ "@shopify/shopify-app-session-storage-test-utils": "^2.0.4"
42
53
  },
43
54
  "files": [
44
- "build/*",
45
- "!bundle/*",
55
+ "dist/*",
46
56
  "!tsconfig.tsbuildinfo",
47
57
  "!node_modules"
48
58
  ]
@@ -1,117 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var mongodb = require('mongodb');
6
- var shopifyApi = require('@shopify/shopify-api');
7
-
8
- function _interopNamespace(e) {
9
- if (e && e.__esModule) return e;
10
- var n = Object.create(null);
11
- if (e) {
12
- Object.keys(e).forEach(function (k) {
13
- if (k !== 'default') {
14
- var d = Object.getOwnPropertyDescriptor(e, k);
15
- Object.defineProperty(n, k, d.get ? d : {
16
- enumerable: true,
17
- get: function () { return e[k]; }
18
- });
19
- }
20
- });
21
- }
22
- n["default"] = e;
23
- return Object.freeze(n);
24
- }
25
-
26
- var mongodb__namespace = /*#__PURE__*/_interopNamespace(mongodb);
27
-
28
- const defaultMongoDBSessionStorageOptions = {
29
- sessionCollectionName: 'shopify_sessions'
30
- };
31
- class MongoDBSessionStorage {
32
- static withCredentials(host, dbName, username, password, opts) {
33
- return new MongoDBSessionStorage(new URL(`mongodb://${encodeURIComponent(username)}:${encodeURIComponent(password)}@${host}/`), dbName, opts);
34
- }
35
- constructor(dbUrl, dbName, opts = {}) {
36
- this.dbUrl = dbUrl;
37
- this.dbName = dbName;
38
- this.ready = void 0;
39
- this.options = void 0;
40
- // `mongodb` has no types for `MongoClient`???!
41
- this.client = void 0;
42
- if (typeof this.dbUrl === 'string') {
43
- this.dbUrl = new URL(this.dbUrl);
44
- }
45
- this.options = {
46
- ...defaultMongoDBSessionStorageOptions,
47
- ...opts
48
- };
49
- this.ready = this.init();
50
- }
51
- async storeSession(session) {
52
- await this.ready;
53
- await this.collection.findOneAndReplace({
54
- id: session.id
55
- }, session.toObject(), {
56
- upsert: true
57
- });
58
- return true;
59
- }
60
- async loadSession(id) {
61
- await this.ready;
62
- const result = await this.collection.findOne({
63
- id
64
- });
65
- return result ? new shopifyApi.Session(result) : undefined;
66
- }
67
- async deleteSession(id) {
68
- await this.ready;
69
- await this.collection.deleteOne({
70
- id
71
- });
72
- return true;
73
- }
74
- async deleteSessions(ids) {
75
- await this.ready;
76
- await this.collection.deleteMany({
77
- id: {
78
- $in: ids
79
- }
80
- });
81
- return true;
82
- }
83
- async findSessionsByShop(shop) {
84
- await this.ready;
85
- const rawResults = await this.collection.find({
86
- shop
87
- }).toArray();
88
- if (!rawResults || (rawResults === null || rawResults === void 0 ? void 0 : rawResults.length) === 0) return [];
89
- return rawResults.map(rawResult => new shopifyApi.Session(rawResult));
90
- }
91
- async disconnect() {
92
- await this.client.close();
93
- }
94
- get collection() {
95
- return this.client.db(this.dbName).collection(this.options.sessionCollectionName);
96
- }
97
- async init() {
98
- this.client = new mongodb__namespace.MongoClient(this.dbUrl.toString());
99
- await this.client.connect();
100
- await this.client.db().command({
101
- ping: 1
102
- });
103
- await this.createCollection();
104
- }
105
- async hasSessionCollection() {
106
- const collections = await this.client.db().collections();
107
- return collections.map(collection => collection.collectionName).includes(this.options.sessionCollectionName);
108
- }
109
- async createCollection() {
110
- const hasSessionCollection = await this.hasSessionCollection();
111
- if (!hasSessionCollection) {
112
- await this.client.db().collection(this.options.sessionCollectionName);
113
- }
114
- }
115
- }
116
-
117
- exports.MongoDBSessionStorage = MongoDBSessionStorage;
@@ -1,182 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MongoDBSessionStorage = void 0;
4
- var tslib_1 = require("tslib");
5
- var mongodb = tslib_1.__importStar(require("mongodb"));
6
- var shopify_api_1 = require("@shopify/shopify-api");
7
- var defaultMongoDBSessionStorageOptions = {
8
- sessionCollectionName: 'shopify_sessions',
9
- };
10
- var MongoDBSessionStorage = /** @class */ (function () {
11
- function MongoDBSessionStorage(dbUrl, dbName, opts) {
12
- if (opts === void 0) { opts = {}; }
13
- this.dbUrl = dbUrl;
14
- this.dbName = dbName;
15
- if (typeof this.dbUrl === 'string') {
16
- this.dbUrl = new URL(this.dbUrl);
17
- }
18
- this.options = tslib_1.__assign(tslib_1.__assign({}, defaultMongoDBSessionStorageOptions), opts);
19
- this.ready = this.init();
20
- }
21
- MongoDBSessionStorage.withCredentials = function (host, dbName, username, password, opts) {
22
- return new MongoDBSessionStorage(new URL("mongodb://".concat(encodeURIComponent(username), ":").concat(encodeURIComponent(password), "@").concat(host, "/")), dbName, opts);
23
- };
24
- MongoDBSessionStorage.prototype.storeSession = function (session) {
25
- return tslib_1.__awaiter(this, void 0, void 0, function () {
26
- return tslib_1.__generator(this, function (_a) {
27
- switch (_a.label) {
28
- case 0: return [4 /*yield*/, this.ready];
29
- case 1:
30
- _a.sent();
31
- return [4 /*yield*/, this.collection.findOneAndReplace({ id: session.id }, session.toObject(), {
32
- upsert: true,
33
- })];
34
- case 2:
35
- _a.sent();
36
- return [2 /*return*/, true];
37
- }
38
- });
39
- });
40
- };
41
- MongoDBSessionStorage.prototype.loadSession = function (id) {
42
- return tslib_1.__awaiter(this, void 0, void 0, function () {
43
- var result;
44
- return tslib_1.__generator(this, function (_a) {
45
- switch (_a.label) {
46
- case 0: return [4 /*yield*/, this.ready];
47
- case 1:
48
- _a.sent();
49
- return [4 /*yield*/, this.collection.findOne({ id: id })];
50
- case 2:
51
- result = _a.sent();
52
- return [2 /*return*/, result ? new shopify_api_1.Session(result) : undefined];
53
- }
54
- });
55
- });
56
- };
57
- MongoDBSessionStorage.prototype.deleteSession = function (id) {
58
- return tslib_1.__awaiter(this, void 0, void 0, function () {
59
- return tslib_1.__generator(this, function (_a) {
60
- switch (_a.label) {
61
- case 0: return [4 /*yield*/, this.ready];
62
- case 1:
63
- _a.sent();
64
- return [4 /*yield*/, this.collection.deleteOne({ id: id })];
65
- case 2:
66
- _a.sent();
67
- return [2 /*return*/, true];
68
- }
69
- });
70
- });
71
- };
72
- MongoDBSessionStorage.prototype.deleteSessions = function (ids) {
73
- return tslib_1.__awaiter(this, void 0, void 0, function () {
74
- return tslib_1.__generator(this, function (_a) {
75
- switch (_a.label) {
76
- case 0: return [4 /*yield*/, this.ready];
77
- case 1:
78
- _a.sent();
79
- return [4 /*yield*/, this.collection.deleteMany({ id: { $in: ids } })];
80
- case 2:
81
- _a.sent();
82
- return [2 /*return*/, true];
83
- }
84
- });
85
- });
86
- };
87
- MongoDBSessionStorage.prototype.findSessionsByShop = function (shop) {
88
- return tslib_1.__awaiter(this, void 0, void 0, function () {
89
- var rawResults;
90
- return tslib_1.__generator(this, function (_a) {
91
- switch (_a.label) {
92
- case 0: return [4 /*yield*/, this.ready];
93
- case 1:
94
- _a.sent();
95
- return [4 /*yield*/, this.collection.find({ shop: shop }).toArray()];
96
- case 2:
97
- rawResults = _a.sent();
98
- if (!rawResults || (rawResults === null || rawResults === void 0 ? void 0 : rawResults.length) === 0)
99
- return [2 /*return*/, []];
100
- return [2 /*return*/, rawResults.map(function (rawResult) { return new shopify_api_1.Session(rawResult); })];
101
- }
102
- });
103
- });
104
- };
105
- MongoDBSessionStorage.prototype.disconnect = function () {
106
- return tslib_1.__awaiter(this, void 0, void 0, function () {
107
- return tslib_1.__generator(this, function (_a) {
108
- switch (_a.label) {
109
- case 0: return [4 /*yield*/, this.client.close()];
110
- case 1:
111
- _a.sent();
112
- return [2 /*return*/];
113
- }
114
- });
115
- });
116
- };
117
- Object.defineProperty(MongoDBSessionStorage.prototype, "collection", {
118
- get: function () {
119
- return this.client
120
- .db(this.dbName)
121
- .collection(this.options.sessionCollectionName);
122
- },
123
- enumerable: false,
124
- configurable: true
125
- });
126
- MongoDBSessionStorage.prototype.init = function () {
127
- return tslib_1.__awaiter(this, void 0, void 0, function () {
128
- return tslib_1.__generator(this, function (_a) {
129
- switch (_a.label) {
130
- case 0:
131
- this.client = new mongodb.MongoClient(this.dbUrl.toString());
132
- return [4 /*yield*/, this.client.connect()];
133
- case 1:
134
- _a.sent();
135
- return [4 /*yield*/, this.client.db().command({ ping: 1 })];
136
- case 2:
137
- _a.sent();
138
- return [4 /*yield*/, this.createCollection()];
139
- case 3:
140
- _a.sent();
141
- return [2 /*return*/];
142
- }
143
- });
144
- });
145
- };
146
- MongoDBSessionStorage.prototype.hasSessionCollection = function () {
147
- return tslib_1.__awaiter(this, void 0, void 0, function () {
148
- var collections;
149
- return tslib_1.__generator(this, function (_a) {
150
- switch (_a.label) {
151
- case 0: return [4 /*yield*/, this.client.db().collections()];
152
- case 1:
153
- collections = _a.sent();
154
- return [2 /*return*/, collections
155
- .map(function (collection) { return collection.collectionName; })
156
- .includes(this.options.sessionCollectionName)];
157
- }
158
- });
159
- });
160
- };
161
- MongoDBSessionStorage.prototype.createCollection = function () {
162
- return tslib_1.__awaiter(this, void 0, void 0, function () {
163
- var hasSessionCollection;
164
- return tslib_1.__generator(this, function (_a) {
165
- switch (_a.label) {
166
- case 0: return [4 /*yield*/, this.hasSessionCollection()];
167
- case 1:
168
- hasSessionCollection = _a.sent();
169
- if (!!hasSessionCollection) return [3 /*break*/, 3];
170
- return [4 /*yield*/, this.client.db().collection(this.options.sessionCollectionName)];
171
- case 2:
172
- _a.sent();
173
- _a.label = 3;
174
- case 3: return [2 /*return*/];
175
- }
176
- });
177
- });
178
- };
179
- return MongoDBSessionStorage;
180
- }());
181
- exports.MongoDBSessionStorage = MongoDBSessionStorage;
182
- //# sourceMappingURL=mongodb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mongodb.js","sourceRoot":"","sources":["../../src/mongodb.ts"],"names":[],"mappings":";;;;AAAA,uDAAmC;AACnC,oDAA6C;AAM7C,IAAM,mCAAmC,GAAiC;IACxE,qBAAqB,EAAE,kBAAkB;CAC1C,CAAC;AAEF;IAwBE,+BACU,KAAU,EACV,MAAc,EACtB,IAAgD;QAAhD,qBAAA,EAAA,SAAgD;QAFxC,UAAK,GAAL,KAAK,CAAK;QACV,WAAM,GAAN,MAAM,CAAQ;QAGtB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,OAAO,yCAAO,mCAAmC,GAAK,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAjCM,qCAAe,GAAtB,UACE,IAAY,EACZ,MAAc,EACd,QAAgB,EAChB,QAAgB,EAChB,IAA2C;QAE3C,OAAO,IAAI,qBAAqB,CAC9B,IAAI,GAAG,CACL,oBAAa,kBAAkB,CAAC,QAAQ,CAAC,cAAI,kBAAkB,CAC7D,QAAQ,CACT,cAAI,IAAI,MAAG,CACb,EACD,MAAM,EACN,IAAI,CACL,CAAC;IACJ,CAAC;IAmBY,4CAAY,GAAzB,UAA0B,OAAgB;;;;4BACxC,qBAAM,IAAI,CAAC,KAAK,EAAA;;wBAAhB,SAAgB,CAAC;wBAEjB,qBAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CACrC,EAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAC,EAChB,OAAO,CAAC,QAAQ,EAAE,EAClB;gCACE,MAAM,EAAE,IAAI;6BACb,CACF,EAAA;;wBAND,SAMC,CAAC;wBACF,sBAAO,IAAI,EAAC;;;;KACb;IAEY,2CAAW,GAAxB,UAAyB,EAAU;;;;;4BACjC,qBAAM,IAAI,CAAC,KAAK,EAAA;;wBAAhB,SAAgB,CAAC;wBAEF,qBAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAC,EAAE,IAAA,EAAC,CAAC,EAAA;;wBAA5C,MAAM,GAAG,SAAmC;wBAElD,sBAAO,MAAM,CAAC,CAAC,CAAC,IAAI,qBAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC;;;;KACjD;IAEY,6CAAa,GAA1B,UAA2B,EAAU;;;;4BACnC,qBAAM,IAAI,CAAC,KAAK,EAAA;;wBAAhB,SAAgB,CAAC;wBACjB,qBAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAC,EAAE,IAAA,EAAC,CAAC,EAAA;;wBAArC,SAAqC,CAAC;wBACtC,sBAAO,IAAI,EAAC;;;;KACb;IAEY,8CAAc,GAA3B,UAA4B,GAAa;;;;4BACvC,qBAAM,IAAI,CAAC,KAAK,EAAA;;wBAAhB,SAAgB,CAAC;wBACjB,qBAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAC,EAAE,EAAE,EAAC,GAAG,EAAE,GAAG,EAAC,EAAC,CAAC,EAAA;;wBAAlD,SAAkD,CAAC;wBACnD,sBAAO,IAAI,EAAC;;;;KACb;IAEY,kDAAkB,GAA/B,UAAgC,IAAY;;;;;4BAC1C,qBAAM,IAAI,CAAC,KAAK,EAAA;;wBAAhB,SAAgB,CAAC;wBAEE,qBAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC,IAAI,MAAA,EAAC,CAAC,CAAC,OAAO,EAAE,EAAA;;wBAAzD,UAAU,GAAG,SAA4C;wBAC/D,IAAI,CAAC,UAAU,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,MAAK,CAAC;4BAAE,sBAAO,EAAE,EAAC;wBAEvD,sBAAO,UAAU,CAAC,GAAG,CAAC,UAAC,SAAc,IAAK,OAAA,IAAI,qBAAO,CAAC,SAAS,CAAC,EAAtB,CAAsB,CAAC,EAAC;;;;KACnE;IAEY,0CAAU,GAAvB;;;;4BACE,qBAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAA;;wBAAzB,SAAyB,CAAC;;;;;KAC3B;IAED,sBAAY,6CAAU;aAAtB;YACE,OAAO,IAAI,CAAC,MAAM;iBACf,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;iBACf,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;;;OAAA;IAEa,oCAAI,GAAlB;;;;;wBACE,IAAI,CAAC,MAAM,GAAG,IAAK,OAAe,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACtE,qBAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAA;;wBAA3B,SAA2B,CAAC;wBAC5B,qBAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,EAAA;;wBAAzC,SAAyC,CAAC;wBAC1C,qBAAM,IAAI,CAAC,gBAAgB,EAAE,EAAA;;wBAA7B,SAA6B,CAAC;;;;;KAC/B;IAEa,oDAAoB,GAAlC;;;;;4BACsB,qBAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,EAAA;;wBAAlD,WAAW,GAAG,SAAoC;wBACxD,sBAAO,WAAW;iCACf,GAAG,CAAC,UAAC,UAAe,IAAK,OAAA,UAAU,CAAC,cAAc,EAAzB,CAAyB,CAAC;iCACnD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAC;;;;KACjD;IAEa,gDAAgB,GAA9B;;;;;4BAC+B,qBAAM,IAAI,CAAC,oBAAoB,EAAE,EAAA;;wBAAxD,oBAAoB,GAAG,SAAiC;6BAC1D,CAAC,oBAAoB,EAArB,wBAAqB;wBACvB,qBAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAA;;wBAArE,SAAqE,CAAC;;;;;;KAEzE;IACH,4BAAC;AAAD,CAAC,AA5GD,IA4GC;AA5GY,sDAAqB"}
File without changes
File without changes