@nlabs/reaktor 0.9.0 → 0.10.1
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/.env +1 -0
- package/.env.example +1 -0
- package/DATABASE_I18N_GUIDE.md +434 -0
- package/README.md +9 -0
- package/TEST_UTILITIES_GUIDE.md +360 -0
- package/coverage/index.html +61 -46
- package/dist/actions/apps.js +242 -0
- package/dist/actions/connections.js +90 -0
- package/dist/actions/conversations.js +350 -0
- package/dist/actions/dynamodb.js +150 -0
- package/dist/actions/email.js +152 -0
- package/dist/actions/files.js +283 -0
- package/dist/actions/groups.js +292 -0
- package/dist/actions/images.js +735 -0
- package/dist/actions/index.js +66 -0
- package/dist/actions/ios.js +164 -0
- package/dist/actions/locations.js +122 -0
- package/dist/actions/messages.js +208 -0
- package/dist/actions/notifications.js +59 -0
- package/dist/actions/payments.js +497 -0
- package/dist/actions/personas.js +110 -0
- package/dist/actions/posts.js +595 -0
- package/dist/actions/reactions.js +322 -0
- package/dist/actions/s3.js +133 -0
- package/dist/actions/search.js +90 -0
- package/dist/actions/sms.js +108 -0
- package/dist/actions/statistics.js +62 -0
- package/dist/actions/subscription.js +220 -0
- package/dist/actions/tags.js +292 -0
- package/dist/actions/users.js +784 -0
- package/dist/actions/websockets.js +174 -0
- package/dist/adapters/arangoAdapter.js +46 -0
- package/dist/adapters/fileAdapter.js +76 -0
- package/dist/adapters/imageAdapter.js +40 -0
- package/dist/adapters/messageAdapter.js +49 -0
- package/dist/adapters/postAdapter.js +70 -0
- package/dist/adapters/reaktorAdapter.js +44 -0
- package/dist/adapters/tagAdapter.js +50 -0
- package/dist/adapters/userAdapter.js +115 -0
- package/dist/config.js +125 -0
- package/dist/index.js +66 -0
- package/dist/lambdas/actions/websockets.js +132 -0
- package/dist/lambdas/authorizer.js +67 -0
- package/dist/lambdas/connection.js +91 -0
- package/dist/lambdas/utils/message.js +42 -0
- package/dist/lambdas/utils/websocket.js +105 -0
- package/dist/mocks/conversation.js +35 -0
- package/dist/mocks/file.js +38 -0
- package/dist/mocks/group.js +47 -0
- package/dist/mocks/image.js +44 -0
- package/dist/mocks/nlabs.png +0 -0
- package/dist/mocks/post.js +55 -0
- package/dist/mocks/tag.js +37 -0
- package/dist/mocks/user.js +88 -0
- package/dist/mutations/index.js +26 -0
- package/dist/mutations/locations.js +44 -0
- package/dist/mutations/messages.js +86 -0
- package/dist/mutations/personas.js +100 -0
- package/dist/mutations/posts.js +53 -0
- package/dist/mutations/reactions.js +51 -0
- package/dist/mutations/statistics.js +39 -0
- package/dist/mutations/subscriptions.js +56 -0
- package/dist/mutations/tags.js +120 -0
- package/dist/mutations/users.js +116 -0
- package/dist/objectTypes/app.js +173 -0
- package/dist/objectTypes/bankAccount.js +76 -0
- package/dist/objectTypes/connection.js +48 -0
- package/dist/objectTypes/conversation.js +77 -0
- package/dist/objectTypes/creditCard.js +86 -0
- package/dist/objectTypes/document.js +46 -0
- package/dist/objectTypes/error.js +46 -0
- package/dist/objectTypes/external.js +74 -0
- package/dist/objectTypes/file.js +100 -0
- package/dist/objectTypes/filter.js +43 -0
- package/dist/objectTypes/group.js +123 -0
- package/dist/objectTypes/iapSubscription.js +40 -0
- package/dist/objectTypes/image.js +129 -0
- package/dist/objectTypes/index.js +68 -0
- package/dist/objectTypes/location.js +109 -0
- package/dist/objectTypes/message.js +96 -0
- package/dist/objectTypes/passcode.js +42 -0
- package/dist/objectTypes/persona.js +87 -0
- package/dist/objectTypes/plan.js +95 -0
- package/dist/objectTypes/post.js +125 -0
- package/dist/objectTypes/reaction.js +61 -0
- package/dist/objectTypes/relation.js +49 -0
- package/dist/objectTypes/search.js +72 -0
- package/dist/objectTypes/statistics.js +39 -0
- package/dist/objectTypes/subscription.js +117 -0
- package/dist/objectTypes/tag.js +65 -0
- package/dist/objectTypes/user.js +144 -0
- package/dist/queries/index.js +33 -0
- package/dist/queries/locations.js +45 -0
- package/dist/queries/messages.js +52 -0
- package/dist/queries/posts.js +154 -0
- package/dist/queries/reactions.js +56 -0
- package/dist/queries/statistics.js +39 -0
- package/dist/queries/subscriptions.js +44 -0
- package/dist/queries/tags.js +75 -0
- package/dist/queries/users.js +64 -0
- package/dist/templates/email/layout.js +302 -0
- package/dist/templates/email/passwordForgot.js +38 -0
- package/dist/templates/email/passwordRecovery.js +35 -0
- package/dist/templates/email/verifyEmail.js +38 -0
- package/dist/templates/email/welcome.js +38 -0
- package/dist/templates/sms/passwordForgot.js +24 -0
- package/dist/templates/sms/passwordRecovery.js +24 -0
- package/dist/templates/sms/verifyEmail.js +24 -0
- package/dist/templates/sms/verifyPhone.js +24 -0
- package/dist/templates/sms/welcome.js +24 -0
- package/dist/types/apps.js +32 -0
- package/{lib → dist}/types/arangodb.js +1 -1
- package/{lib → dist}/types/auth.js +1 -1
- package/{lib → dist}/types/connections.js +1 -1
- package/dist/types/conversations.js +16 -0
- package/{lib → dist}/types/email.js +1 -1
- package/dist/types/files.js +16 -0
- package/dist/types/google.js +16 -0
- package/{lib → dist}/types/groups.js +1 -1
- package/dist/types/images.js +16 -0
- package/dist/types/index.js +60 -0
- package/{lib → dist}/types/locations.js +1 -1
- package/{lib → dist}/types/messages.js +1 -1
- package/{lib → dist}/types/notifications.js +1 -1
- package/dist/types/payments.js +16 -0
- package/dist/types/personas.js +16 -0
- package/dist/types/posts.js +16 -0
- package/{lib → dist}/types/tags.js +1 -1
- package/dist/types/users.js +16 -0
- package/dist/types/websockets.js +16 -0
- package/dist/utils/adapterUtils.js +45 -0
- package/dist/utils/analyticsUtils.js +72 -0
- package/dist/utils/arangodbUtils.js +165 -0
- package/dist/utils/auth.js +57 -0
- package/dist/utils/index.js +30 -0
- package/{lib → dist}/utils/session.js +10 -7
- package/index.js +1 -1
- package/jest.config.js +17 -0
- package/jest.setup.js +36 -0
- package/lex.config.cjs +13 -0
- package/lib/actions/apps.js +17 -249
- package/lib/actions/connections.js +7 -0
- package/lib/actions/content.js +17 -0
- package/lib/actions/conversations.js +19 -325
- package/lib/actions/dynamodb.js +2 -150
- package/lib/actions/email.js +2 -152
- package/lib/actions/files.js +5 -287
- package/lib/actions/groups.js +23 -263
- package/lib/actions/images.js +31 -646
- package/lib/actions/index.js +2 -62
- package/lib/actions/ios.js +9 -162
- package/lib/actions/locations.js +7 -110
- package/lib/actions/messages.js +21 -193
- package/lib/actions/notifications.js +2 -59
- package/lib/actions/payments.js +11 -461
- package/lib/actions/posts.js +77 -515
- package/lib/actions/profiles.js +8 -0
- package/lib/actions/reactions.js +25 -312
- package/lib/actions/s3.js +2 -133
- package/lib/actions/search.js +5 -90
- package/lib/actions/sms.js +2 -106
- package/lib/actions/statistics.js +6 -60
- package/lib/actions/subscriptions.js +12 -0
- package/lib/actions/tags.js +19 -262
- package/lib/actions/users.js +67 -537
- package/lib/actions/websockets.js +16 -158
- package/lib/adapters/arangoAdapter.js +2 -46
- package/lib/adapters/contentAdapter.js +2 -0
- package/lib/adapters/fileAdapter.js +2 -76
- package/lib/adapters/imageAdapter.js +2 -0
- package/lib/adapters/messageAdapter.js +2 -0
- package/lib/adapters/postAdapter.js +2 -70
- package/lib/adapters/reaktorAdapter.js +2 -44
- package/lib/adapters/tagAdapter.js +2 -50
- package/lib/adapters/userAdapter.js +2 -110
- package/lib/config.js +2 -125
- package/lib/handlers/graphqlHandler.js +2 -0
- package/lib/index.js +2 -30
- package/lib/lambdas/actions/websockets.js +14 -112
- package/lib/lambdas/authorizer.js +2 -67
- package/lib/lambdas/connection.js +2 -92
- package/lib/lambdas/utils/message.js +2 -42
- package/lib/lambdas/utils/websocket.js +2 -105
- package/lib/mocks/conversation.js +2 -35
- package/lib/mocks/file.js +2 -38
- package/lib/mocks/group.js +2 -47
- package/lib/mocks/image.js +2 -43
- package/lib/mocks/post.js +2 -55
- package/lib/mocks/tag.js +2 -37
- package/lib/mocks/user.js +2 -88
- package/lib/mutations/index.js +2 -0
- package/lib/mutations/locations.integration.js +2 -0
- package/lib/mutations/locations.js +2 -0
- package/lib/mutations/messages.integration.js +2 -0
- package/lib/mutations/messages.js +2 -0
- package/lib/mutations/posts.integration.js +2 -0
- package/lib/mutations/posts.js +2 -0
- package/lib/mutations/profiles.integration.js +2 -0
- package/lib/mutations/profiles.js +2 -0
- package/lib/mutations/reactions.integration.js +2 -0
- package/lib/mutations/reactions.js +2 -0
- package/lib/mutations/statistics.integration.js +2 -0
- package/lib/mutations/statistics.js +2 -0
- package/lib/mutations/subscriptions.integration.js +2 -0
- package/lib/mutations/subscriptions.js +2 -0
- package/lib/mutations/tags.integration.js +2 -0
- package/lib/mutations/tags.js +2 -0
- package/lib/mutations/users.integration.js +2 -0
- package/lib/mutations/users.js +2 -0
- package/lib/objectTypes/app.js +2 -0
- package/lib/objectTypes/bankAccount.js +2 -0
- package/lib/objectTypes/connection.js +2 -0
- package/lib/objectTypes/conversation.js +2 -0
- package/lib/objectTypes/creditCard.js +2 -0
- package/lib/objectTypes/document.js +2 -0
- package/lib/objectTypes/error.js +2 -0
- package/lib/objectTypes/external.js +2 -0
- package/lib/objectTypes/file.js +2 -0
- package/lib/objectTypes/filter.js +2 -0
- package/lib/objectTypes/group.js +2 -0
- package/lib/objectTypes/iapSubscription.js +2 -0
- package/lib/objectTypes/image.js +2 -0
- package/lib/objectTypes/index.js +2 -0
- package/lib/objectTypes/location.js +2 -0
- package/lib/objectTypes/message.js +2 -0
- package/lib/objectTypes/passcode.js +2 -0
- package/lib/objectTypes/plan.js +2 -0
- package/lib/objectTypes/post.js +2 -0
- package/lib/objectTypes/profile.js +2 -0
- package/lib/objectTypes/reaction.js +2 -0
- package/lib/objectTypes/relation.js +2 -0
- package/lib/objectTypes/search.js +2 -0
- package/lib/objectTypes/statistics.js +2 -0
- package/lib/objectTypes/subscription.js +2 -0
- package/lib/objectTypes/tag.js +2 -0
- package/lib/objectTypes/user.js +2 -0
- package/lib/queries/index.js +2 -0
- package/lib/queries/locations.integration.js +2 -0
- package/lib/queries/locations.js +2 -0
- package/lib/queries/messages.integration.js +2 -0
- package/lib/queries/messages.js +2 -0
- package/lib/queries/posts.integration.js +2 -0
- package/lib/queries/posts.js +2 -0
- package/lib/queries/reactions.integration.js +2 -0
- package/lib/queries/reactions.js +2 -0
- package/lib/queries/statistics.js +2 -0
- package/lib/queries/subscriptions.js +2 -0
- package/lib/queries/tags.integration.js +2 -0
- package/lib/queries/tags.js +2 -0
- package/lib/queries/users.integration.js +2 -0
- package/lib/queries/users.js +2 -0
- package/lib/templates/email/layout.js +3 -25
- package/lib/templates/email/passwordForgot.js +3 -25
- package/lib/templates/email/passwordRecovery.js +3 -25
- package/lib/templates/email/verifyEmail.js +3 -25
- package/lib/templates/email/welcome.js +3 -25
- package/lib/templates/sms/passwordForgot.js +2 -24
- package/lib/templates/sms/passwordRecovery.js +2 -24
- package/lib/templates/sms/verifyEmail.js +2 -24
- package/lib/templates/sms/verifyPhone.js +2 -24
- package/lib/templates/sms/welcome.js +2 -24
- package/lib/types/apps.types.js +2 -0
- package/lib/types/arangodb.types.js +1 -0
- package/lib/types/auth.types.js +1 -0
- package/lib/types/connections.types.js +1 -0
- package/lib/types/content.types.js +1 -0
- package/lib/types/conversations.types.js +1 -0
- package/lib/types/email.types.js +1 -0
- package/lib/types/error.types.js +2 -0
- package/lib/types/files.types.js +1 -0
- package/lib/types/google.types.js +1 -0
- package/lib/types/groups.types.js +1 -0
- package/lib/types/images.types.js +1 -0
- package/lib/types/index.js +2 -56
- package/lib/types/locations.types.js +1 -0
- package/lib/types/messages.types.js +1 -0
- package/lib/types/notifications.types.js +1 -0
- package/lib/types/payments.types.js +1 -0
- package/lib/types/posts.types.js +1 -0
- package/lib/types/profiles.types.js +1 -0
- package/lib/types/statistics.types.js +1 -0
- package/lib/types/tags.types.js +1 -0
- package/lib/types/users.types.js +1 -0
- package/lib/types/websockets.types.js +1 -0
- package/lib/utils/adapterUtils.js +2 -45
- package/lib/utils/analyticsUtils.js +2 -72
- package/lib/utils/arangodbUtils.js +5 -142
- package/lib/utils/authUtils.js +2 -0
- package/lib/utils/contextUtils.js +2 -0
- package/lib/utils/dbI18n.example.js +6 -0
- package/lib/utils/dbI18n.js +2 -0
- package/lib/utils/googleTranslate.js +2 -0
- package/lib/utils/graphqlUtils.js +2 -0
- package/lib/utils/index.js +2 -30
- package/lib/utils/languageDetection.js +2 -0
- package/lib/utils/localeUtils.example.js +2 -0
- package/lib/utils/localeUtils.js +2 -0
- package/lib/utils/middlewareUtils.js +2 -0
- package/lib/utils/sessionUtils.js +2 -0
- package/lib/utils/stripeUtils.js +2 -0
- package/lib/utils/templateUtils.js +2 -0
- package/lib/utils/testUtils.js +2 -0
- package/lib/utils/translationQueue.example.js +2 -0
- package/lib/utils/translationQueue.js +2 -0
- package/package.json +41 -37
- package/.eslintrc +0 -10
- package/.prettierrc.js +0 -4
- package/lib/actions/apps.d.ts +0 -25
- package/lib/actions/conversations.d.ts +0 -14
- package/lib/actions/dynamodb.d.ts +0 -8
- package/lib/actions/email.d.ts +0 -5
- package/lib/actions/files.d.ts +0 -19
- package/lib/actions/groups.d.ts +0 -14
- package/lib/actions/images.d.ts +0 -26
- package/lib/actions/index.d.ts +0 -21
- package/lib/actions/ios.d.ts +0 -7
- package/lib/actions/locations.d.ts +0 -5
- package/lib/actions/messages.d.ts +0 -13
- package/lib/actions/notifications.d.ts +0 -5
- package/lib/actions/payments.d.ts +0 -10
- package/lib/actions/posts.d.ts +0 -19
- package/lib/actions/reactions.d.ts +0 -30
- package/lib/actions/s3.d.ts +0 -7
- package/lib/actions/search.d.ts +0 -3
- package/lib/actions/sms.d.ts +0 -3
- package/lib/actions/statistics.d.ts +0 -3
- package/lib/actions/subscription.d.ts +0 -7
- package/lib/actions/subscription.js +0 -218
- package/lib/actions/tags.d.ts +0 -29
- package/lib/actions/users.d.ts +0 -47
- package/lib/actions/websockets.d.ts +0 -19
- package/lib/adapters/arangoAdapter.d.ts +0 -2
- package/lib/adapters/fileAdapter.d.ts +0 -3
- package/lib/adapters/postAdapter.d.ts +0 -2
- package/lib/adapters/reaktorAdapter.d.ts +0 -6
- package/lib/adapters/tagAdapter.d.ts +0 -2
- package/lib/adapters/userAdapter.d.ts +0 -2
- package/lib/config.d.ts +0 -20
- package/lib/index.d.ts +0 -5
- package/lib/lambdas/actions/websockets.d.ts +0 -6
- package/lib/lambdas/authorizer.d.ts +0 -20
- package/lib/lambdas/connection.d.ts +0 -12
- package/lib/lambdas/utils/message.d.ts +0 -1
- package/lib/lambdas/utils/websocket.d.ts +0 -7
- package/lib/mocks/conversation.d.ts +0 -8
- package/lib/mocks/file.d.ts +0 -11
- package/lib/mocks/group.d.ts +0 -17
- package/lib/mocks/image.d.ts +0 -3
- package/lib/mocks/post.d.ts +0 -38
- package/lib/mocks/tag.d.ts +0 -2
- package/lib/mocks/user.d.ts +0 -4
- package/lib/templates/email/layout.d.ts +0 -2
- package/lib/templates/email/passwordForgot.d.ts +0 -2
- package/lib/templates/email/passwordRecovery.d.ts +0 -2
- package/lib/templates/email/verifyEmail.d.ts +0 -2
- package/lib/templates/email/welcome.d.ts +0 -2
- package/lib/templates/sms/passwordForgot.d.ts +0 -2
- package/lib/templates/sms/passwordRecovery.d.ts +0 -2
- package/lib/templates/sms/verifyEmail.d.ts +0 -2
- package/lib/templates/sms/verifyPhone.d.ts +0 -2
- package/lib/templates/sms/welcome.d.ts +0 -2
- package/lib/types/apps.d.ts +0 -46
- package/lib/types/apps.js +0 -32
- package/lib/types/arangodb.d.ts +0 -30
- package/lib/types/auth.d.ts +0 -7
- package/lib/types/connections.d.ts +0 -7
- package/lib/types/conversations.d.ts +0 -29
- package/lib/types/conversations.js +0 -16
- package/lib/types/email.d.ts +0 -13
- package/lib/types/error.d.ts +0 -20
- package/lib/types/files.d.ts +0 -26
- package/lib/types/files.js +0 -16
- package/lib/types/google.d.ts +0 -29
- package/lib/types/google.js +0 -16
- package/lib/types/groups.d.ts +0 -21
- package/lib/types/images.d.ts +0 -51
- package/lib/types/images.js +0 -16
- package/lib/types/index.d.ts +0 -18
- package/lib/types/locations.d.ts +0 -20
- package/lib/types/messages.d.ts +0 -16
- package/lib/types/notifications.d.ts +0 -17
- package/lib/types/payments.d.ts +0 -112
- package/lib/types/payments.js +0 -16
- package/lib/types/posts.d.ts +0 -31
- package/lib/types/posts.js +0 -16
- package/lib/types/statistics.d.ts +0 -3
- package/lib/types/tags.d.ts +0 -10
- package/lib/types/users.d.ts +0 -76
- package/lib/types/users.js +0 -16
- package/lib/types/websocket.d.ts +0 -13
- package/lib/types/websocket.js +0 -16
- package/lib/utils/adapterUtils.d.ts +0 -1
- package/lib/utils/analyticsUtils.d.ts +0 -21
- package/lib/utils/arangodbUtils.d.ts +0 -65
- package/lib/utils/auth.d.ts +0 -20
- package/lib/utils/auth.js +0 -50
- package/lib/utils/index.d.ts +0 -5
- package/lib/utils/session.d.ts +0 -16
- /package/{lib → dist}/types/error.js +0 -0
- /package/{lib → dist}/types/statistics.js +0 -0
package/lib/actions/s3.js
CHANGED
|
@@ -1,133 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var s3_exports = {};
|
|
19
|
-
__export(s3_exports, {
|
|
20
|
-
s3Delete: () => s3Delete,
|
|
21
|
-
s3DeleteList: () => s3DeleteList,
|
|
22
|
-
s3Get: () => s3Get,
|
|
23
|
-
s3GetSignedUrl: () => s3GetSignedUrl,
|
|
24
|
-
s3Head: () => s3Head,
|
|
25
|
-
s3Put: () => s3Put
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(s3_exports);
|
|
28
|
-
var import_client_s3 = require("@aws-sdk/client-s3");
|
|
29
|
-
var import_s3_request_presigner = require("@aws-sdk/s3-request-presigner");
|
|
30
|
-
var import_config = require("../config");
|
|
31
|
-
const s3Get = (params) => new Promise((resolve, reject) => {
|
|
32
|
-
const s3 = new import_client_s3.S3({
|
|
33
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
34
|
-
region: import_config.Config.get("aws.region")
|
|
35
|
-
});
|
|
36
|
-
if (!params.Bucket) {
|
|
37
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
38
|
-
}
|
|
39
|
-
s3.getObject(params, (error, output) => {
|
|
40
|
-
if (error) {
|
|
41
|
-
return reject(error);
|
|
42
|
-
}
|
|
43
|
-
return resolve(output);
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
const s3Head = (params) => new Promise((resolve, reject) => {
|
|
47
|
-
const s3 = new import_client_s3.S3({
|
|
48
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
49
|
-
region: import_config.Config.get("aws.region")
|
|
50
|
-
});
|
|
51
|
-
if (!params.Bucket) {
|
|
52
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
53
|
-
}
|
|
54
|
-
s3.headObject(params, (error, output) => {
|
|
55
|
-
if (error) {
|
|
56
|
-
return reject(error);
|
|
57
|
-
}
|
|
58
|
-
return resolve(output);
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
const s3Put = (params) => new Promise((resolve, reject) => {
|
|
62
|
-
const s3 = new import_client_s3.S3({
|
|
63
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
64
|
-
region: import_config.Config.get("aws.region")
|
|
65
|
-
});
|
|
66
|
-
if (!params.Bucket) {
|
|
67
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
68
|
-
}
|
|
69
|
-
if (!params.StorageClass) {
|
|
70
|
-
params.StorageClass = "REDUCED_REDUNDANCY";
|
|
71
|
-
}
|
|
72
|
-
s3.putObject(params, (error, output) => {
|
|
73
|
-
if (error) {
|
|
74
|
-
return reject(error);
|
|
75
|
-
}
|
|
76
|
-
return resolve(output);
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
const s3Delete = (params) => new Promise((resolve, reject) => {
|
|
80
|
-
const s3 = new import_client_s3.S3({
|
|
81
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
82
|
-
region: import_config.Config.get("aws.region")
|
|
83
|
-
});
|
|
84
|
-
if (!params.Bucket) {
|
|
85
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
86
|
-
}
|
|
87
|
-
s3.deleteObject(params, (error, output) => {
|
|
88
|
-
if (error) {
|
|
89
|
-
return reject(error);
|
|
90
|
-
}
|
|
91
|
-
return resolve(output);
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
const s3DeleteList = (params) => new Promise((resolve, reject) => {
|
|
95
|
-
const s3 = new import_client_s3.S3({
|
|
96
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
97
|
-
region: import_config.Config.get("aws.region")
|
|
98
|
-
});
|
|
99
|
-
if (!params.Bucket) {
|
|
100
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
101
|
-
}
|
|
102
|
-
s3.deleteObjects(params, (error, output) => {
|
|
103
|
-
if (error) {
|
|
104
|
-
return reject(error);
|
|
105
|
-
}
|
|
106
|
-
return resolve(output);
|
|
107
|
-
});
|
|
108
|
-
});
|
|
109
|
-
const s3GetSignedUrl = async (params = {}) => {
|
|
110
|
-
const s3 = new import_client_s3.S3({
|
|
111
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
112
|
-
region: import_config.Config.get("aws.region")
|
|
113
|
-
});
|
|
114
|
-
if (!params.Expires) {
|
|
115
|
-
params.Expires = 12 * 60 * 60;
|
|
116
|
-
}
|
|
117
|
-
if (!params.Bucket) {
|
|
118
|
-
params.Bucket = import_config.Config.get("aws.s3.bucket");
|
|
119
|
-
}
|
|
120
|
-
return await (0, import_s3_request_presigner.getSignedUrl)(s3, new import_client_s3.GetObjectCommand(params), {
|
|
121
|
-
expiresIn: params.Expires
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
125
|
-
0 && (module.exports = {
|
|
126
|
-
s3Delete,
|
|
127
|
-
s3DeleteList,
|
|
128
|
-
s3Get,
|
|
129
|
-
s3GetSignedUrl,
|
|
130
|
-
s3Head,
|
|
131
|
-
s3Put
|
|
132
|
-
});
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvczMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge1xuICBEZWxldGVPYmplY3RDb21tYW5kSW5wdXQsXG4gIERlbGV0ZU9iamVjdENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RDb21tYW5kLFxuICBHZXRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEdldE9iamVjdENvbW1hbmRPdXRwdXQsXG4gIEhlYWRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEhlYWRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RDb21tYW5kSW5wdXQsXG4gIFB1dE9iamVjdENvbW1hbmRPdXRwdXQsXG4gIFMzXG59IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zMyc7XG5pbXBvcnQge2dldFNpZ25lZFVybH0gZnJvbSAnQGF3cy1zZGsvczMtcmVxdWVzdC1wcmVzaWduZXInO1xuXG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnJztcblxuLy8gY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3MzJztcbmV4cG9ydCBjb25zdCBzM0dldCA9IChwYXJhbXM6IEdldE9iamVjdENvbW1hbmRJbnB1dCk6IFByb21pc2U8R2V0T2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMyh7XG4gICAgICBjcmVkZW50aWFsczogQ29uZmlnLmdldCgnYXdzLmNyZWRlbnRpYWxzJyksXG4gICAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICAgIH0pO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuczMuYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuZ2V0T2JqZWN0KHBhcmFtcywgKGVycm9yOiBFcnJvciwgb3V0cHV0OiBHZXRPYmplY3RDb21tYW5kT3V0cHV0KSA9PiB7XG4gICAgICBpZihlcnJvcikge1xuICAgICAgICByZXR1cm4gcmVqZWN0KGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM0hlYWQgPSAocGFyYW1zOiBIZWFkT2JqZWN0Q29tbWFuZElucHV0KTogUHJvbWlzZTxIZWFkT2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMyh7XG4gICAgICBjcmVkZW50aWFsczogQ29uZmlnLmdldCgnYXdzLmNyZWRlbnRpYWxzJyksXG4gICAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICAgIH0pO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuczMuYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuaGVhZE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogSGVhZE9iamVjdENvbW1hbmRPdXRwdXQpID0+IHtcbiAgICAgIGlmKGVycm9yKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZXJyb3IpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM1B1dCA9IChwYXJhbXM6IFB1dE9iamVjdENvbW1hbmRJbnB1dCk6IFByb21pc2U8UHV0T2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBpZighcGFyYW1zLlN0b3JhZ2VDbGFzcykge1xuICAgICAgcGFyYW1zLlN0b3JhZ2VDbGFzcyA9ICdSRURVQ0VEX1JFRFVOREFOQ1knO1xuICAgIH1cblxuICAgIHMzLnB1dE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogUHV0T2JqZWN0Q29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlID0gKHBhcmFtczogRGVsZXRlT2JqZWN0Q29tbWFuZElucHV0KTogUHJvbWlzZTxEZWxldGVPYmplY3RDb21tYW5kT3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgczM6IFMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBzMy5kZWxldGVPYmplY3QocGFyYW1zLCAoZXJyb3IsIG91dHB1dDogRGVsZXRlT2JqZWN0Q29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlTGlzdCA9IChwYXJhbXM6IERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQpOiBQcm9taXNlPERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgczM6IFMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBzMy5kZWxldGVPYmplY3RzKHBhcmFtcywgKGVycm9yOiBFcnJvciwgb3V0cHV0OiBEZWxldGVPYmplY3RzQ29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzR2V0U2lnbmVkVXJsID0gYXN5bmMgKHBhcmFtczogYW55ID0ge30pOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICBjb25zdCBzMzogUzMgPSBuZXcgUzMoe1xuICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICB9KTtcblxuICBpZighcGFyYW1zLkV4cGlyZXMpIHtcbiAgICBwYXJhbXMuRXhwaXJlcyA9IDEyICogNjAgKiA2MDtcbiAgfVxuXG4gIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBnZXRTaWduZWRVcmwoczMsIG5ldyBHZXRPYmplY3RDb21tYW5kKHBhcmFtcyksIHtcbiAgICBleHBpcmVzSW46IHBhcmFtcy5FeHBpcmVzXG4gIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSx1QkFhTztBQUNQLGtDQUEyQjtBQUUzQixvQkFBcUI7QUFHZCxNQUFNLFFBQVEsQ0FBQyxXQUNwQixJQUFJLFFBQVEsQ0FBQyxTQUFTLFdBQVc7QUFDL0IsUUFBTSxLQUFTLElBQUksb0JBQUc7QUFBQSxJQUNwQixhQUFhLHFCQUFPLElBQUksaUJBQWlCO0FBQUEsSUFDekMsUUFBUSxxQkFBTyxJQUFJLFlBQVk7QUFBQSxFQUNqQyxDQUFDO0FBRUQsTUFBRyxDQUFDLE9BQU8sUUFBUTtBQUNqQixXQUFPLFNBQVMscUJBQU8sSUFBSSxlQUFlO0FBQUEsRUFDNUM7QUFFQSxLQUFHLFVBQVUsUUFBUSxDQUFDLE9BQWMsV0FBbUM7QUFDckUsUUFBRyxPQUFPO0FBQ1IsYUFBTyxPQUFPLEtBQUs7QUFBQSxJQUNyQjtBQUVBLFdBQU8sUUFBUSxNQUFNO0FBQUEsRUFDdkIsQ0FBQztBQUNILENBQUM7QUFFSSxNQUFNLFNBQVMsQ0FBQyxXQUNyQixJQUFJLFFBQVEsQ0FBQyxTQUFTLFdBQVc7QUFD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
|
|
1
|
+
import{GetObjectCommand as r,S3 as i}from"@aws-sdk/client-s3";import{getSignedUrl as m}from"@aws-sdk/s3-request-presigner";import{Config as t}from"../config";const D=e=>new Promise((u,o)=>{const c=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),c.getObject(e,(n,s)=>n?o(n):u(s))}),B=e=>new Promise((u,o)=>{const c=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),c.headObject(e,(n,s)=>n?o(n):u(s))}),I=e=>new Promise((u,o)=>{const c=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),e.StorageClass||(e.StorageClass="REDUCED_REDUNDANCY"),c.putObject(e,(n,s)=>n?o(n):u(s))}),x=e=>new Promise((u,o)=>{const c=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),c.deleteObject(e,(n,s)=>n?o(n):u(s))}),E=e=>new Promise((u,o)=>{const c=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),c.deleteObjects(e,(n,s)=>n?o(n):u(s))}),S=async(e={})=>{const u=new i({credentials:t.get("aws.credentials"),region:t.get("aws.region")});return e.Expires||(e.Expires=720*60),e.Bucket||(e.Bucket=t.get("aws.s3.bucket")),await m(u,new r(e),{expiresIn:e.Expires})};export{x as s3Delete,E as s3DeleteList,D as s3Get,S as s3GetSignedUrl,B as s3Head,I as s3Put};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvczMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge1xuICBEZWxldGVPYmplY3RDb21tYW5kSW5wdXQsXG4gIERlbGV0ZU9iamVjdENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RDb21tYW5kLFxuICBHZXRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEdldE9iamVjdENvbW1hbmRPdXRwdXQsXG4gIEhlYWRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEhlYWRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RDb21tYW5kSW5wdXQsXG4gIFB1dE9iamVjdENvbW1hbmRPdXRwdXQsXG4gIFMzXG59IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zMyc7XG5pbXBvcnQge2dldFNpZ25lZFVybH0gZnJvbSAnQGF3cy1zZGsvczMtcmVxdWVzdC1wcmVzaWduZXInO1xuXG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnJztcblxuLy8gY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3MzJztcbmV4cG9ydCBjb25zdCBzM0dldCA9IChwYXJhbXM6IEdldE9iamVjdENvbW1hbmRJbnB1dCk6IFByb21pc2U8R2V0T2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMyh7XG4gICAgICBjcmVkZW50aWFsczogQ29uZmlnLmdldCgnYXdzLmNyZWRlbnRpYWxzJyksXG4gICAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICAgIH0pO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuczMuYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuZ2V0T2JqZWN0KHBhcmFtcywgKGVycm9yOiBFcnJvciwgb3V0cHV0OiBHZXRPYmplY3RDb21tYW5kT3V0cHV0KSA9PiB7XG4gICAgICBpZihlcnJvcikge1xuICAgICAgICByZXR1cm4gcmVqZWN0KGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM0hlYWQgPSAocGFyYW1zOiBIZWFkT2JqZWN0Q29tbWFuZElucHV0KTogUHJvbWlzZTxIZWFkT2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMyh7XG4gICAgICBjcmVkZW50aWFsczogQ29uZmlnLmdldCgnYXdzLmNyZWRlbnRpYWxzJyksXG4gICAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICAgIH0pO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuczMuYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuaGVhZE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogSGVhZE9iamVjdENvbW1hbmRPdXRwdXQpID0+IHtcbiAgICAgIGlmKGVycm9yKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZXJyb3IpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM1B1dCA9IChwYXJhbXM6IFB1dE9iamVjdENvbW1hbmRJbnB1dCk6IFByb21pc2U8UHV0T2JqZWN0Q29tbWFuZE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBpZighcGFyYW1zLlN0b3JhZ2VDbGFzcykge1xuICAgICAgcGFyYW1zLlN0b3JhZ2VDbGFzcyA9ICdSRURVQ0VEX1JFRFVOREFOQ1knO1xuICAgIH1cblxuICAgIHMzLnB1dE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogUHV0T2JqZWN0Q29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlID0gKHBhcmFtczogRGVsZXRlT2JqZWN0Q29tbWFuZElucHV0KTogUHJvbWlzZTxEZWxldGVPYmplY3RDb21tYW5kT3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgczM6IFMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBzMy5kZWxldGVPYmplY3QocGFyYW1zLCAoZXJyb3IsIG91dHB1dDogRGVsZXRlT2JqZWN0Q29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlTGlzdCA9IChwYXJhbXM6IERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQpOiBQcm9taXNlPERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgczM6IFMzID0gbmV3IFMzKHtcbiAgICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgfSk7XG5cbiAgICBpZighcGFyYW1zLkJ1Y2tldCkge1xuICAgICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgICB9XG5cbiAgICBzMy5kZWxldGVPYmplY3RzKHBhcmFtcywgKGVycm9yOiBFcnJvciwgb3V0cHV0OiBEZWxldGVPYmplY3RzQ29tbWFuZE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzR2V0U2lnbmVkVXJsID0gYXN5bmMgKHBhcmFtczogYW55ID0ge30pOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICBjb25zdCBzMzogUzMgPSBuZXcgUzMoe1xuICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICB9KTtcblxuICBpZighcGFyYW1zLkV4cGlyZXMpIHtcbiAgICBwYXJhbXMuRXhwaXJlcyA9IDEyICogNjAgKiA2MDtcbiAgfVxuXG4gIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgcGFyYW1zLkJ1Y2tldCA9IENvbmZpZy5nZXQoJ2F3cy5zMy5idWNrZXQnKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBnZXRTaWduZWRVcmwoczMsIG5ldyBHZXRPYmplY3RDb21tYW5kKHBhcmFtcyksIHtcbiAgICBleHBpcmVzSW46IHBhcmFtcy5FeHBpcmVzXG4gIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLE9BS0Usb0JBQUFBLEVBT0EsTUFBQUMsTUFDSyxxQkFDUCxPQUFRLGdCQUFBQyxNQUFtQixnQ0FFM0IsT0FBUSxVQUFBQyxNQUFhLFlBR2QsTUFBTUMsRUFBU0MsR0FDcEIsSUFBSSxRQUFRLENBQUNDLEVBQVNDLElBQVcsQ0FDL0IsTUFBTUMsRUFBUyxJQUFJUCxFQUFHLENBQ3BCLFlBQWFFLEVBQU8sSUFBSSxpQkFBaUIsRUFDekMsT0FBUUEsRUFBTyxJQUFJLFlBQVksQ0FDakMsQ0FBQyxFQUVHRSxFQUFPLFNBQ1RBLEVBQU8sT0FBU0YsRUFBTyxJQUFJLGVBQWUsR0FHNUNLLEVBQUcsVUFBVUgsRUFBUSxDQUFDSSxFQUFjQyxJQUMvQkQsRUFDTUYsRUFBT0UsQ0FBSyxFQUdkSCxFQUFRSSxDQUFNLENBQ3RCLENBQ0gsQ0FBQyxFQUVVQyxFQUFVTixHQUNyQixJQUFJLFFBQVEsQ0FBQ0MsRUFBU0MsSUFBVyxDQUMvQixNQUFNQyxFQUFTLElBQUlQLEVBQUcsQ0FDcEIsWUFBYUUsRUFBTyxJQUFJLGlCQUFpQixFQUN6QyxPQUFRQSxFQUFPLElBQUksWUFBWSxDQUNqQyxDQUFDLEVBRUdFLEVBQU8sU0FDVEEsRUFBTyxPQUFTRixFQUFPLElBQUksZUFBZSxHQUc1Q0ssRUFBRyxXQUFXSCxFQUFRLENBQUNJLEVBQWNDLElBQ2hDRCxFQUNNRixFQUFPRSxDQUFLLEVBRWRILEVBQVFJLENBQU0sQ0FDdEIsQ0FDSCxDQUFDLEVBRVVFLEVBQVNQLEdBQ3BCLElBQUksUUFBUSxDQUFDQyxFQUFTQyxJQUFXLENBQy9CLE1BQU1DLEVBQUssSUFBSVAsRUFBRyxDQUNoQixZQUFhRSxFQUFPLElBQUksaUJBQWlCLEVBQ3pDLE9BQVFBLEVBQU8sSUFBSSxZQUFZLENBQ2pDLENBQUMsRUFFR0UsRUFBTyxTQUNUQSxFQUFPLE9BQVNGLEVBQU8sSUFBSSxlQUFlLEdBR3hDRSxFQUFPLGVBQ1RBLEVBQU8sYUFBZSxzQkFHeEJHLEVBQUcsVUFBVUgsRUFBUSxDQUFDSSxFQUFjQyxJQUMvQkQsRUFDTUYsRUFBT0UsQ0FBSyxFQUVkSCxFQUFRSSxDQUFNLENBQ3RCLENBQ0gsQ0FBQyxFQUVVRyxFQUFZUixHQUN2QixJQUFJLFFBQVEsQ0FBQ0MsRUFBU0MsSUFBVyxDQUMvQixNQUFNQyxFQUFTLElBQUlQLEVBQUcsQ0FDcEIsWUFBYUUsRUFBTyxJQUFJLGlCQUFpQixFQUN6QyxPQUFRQSxFQUFPLElBQUksWUFBWSxDQUNqQyxDQUFDLEVBRUdFLEVBQU8sU0FDVEEsRUFBTyxPQUFTRixFQUFPLElBQUksZUFBZSxHQUc1Q0ssRUFBRyxhQUFhSCxFQUFRLENBQUNJLEVBQU9DLElBQzNCRCxFQUNNRixFQUFPRSxDQUFLLEVBRWRILEVBQVFJLENBQU0sQ0FDdEIsQ0FDSCxDQUFDLEVBRVVJLEVBQWdCVCxHQUMzQixJQUFJLFFBQVEsQ0FBQ0MsRUFBU0MsSUFBVyxDQUMvQixNQUFNQyxFQUFTLElBQUlQLEVBQUcsQ0FDcEIsWUFBYUUsRUFBTyxJQUFJLGlCQUFpQixFQUN6QyxPQUFRQSxFQUFPLElBQUksWUFBWSxDQUNqQyxDQUFDLEVBRUdFLEVBQU8sU0FDVEEsRUFBTyxPQUFTRixFQUFPLElBQUksZUFBZSxHQUc1Q0ssRUFBRyxjQUFjSCxFQUFRLENBQUNJLEVBQWNDLElBQ25DRCxFQUNNRixFQUFPRSxDQUFLLEVBRWRILEVBQVFJLENBQU0sQ0FDdEIsQ0FDSCxDQUFDLEVBRVVLLEVBQWlCLE1BQU9WLEVBQWMsQ0FBQyxJQUF1QixDQUN6RSxNQUFNRyxFQUFTLElBQUlQLEVBQUcsQ0FDcEIsWUFBYUUsRUFBTyxJQUFJLGlCQUFpQixFQUN6QyxPQUFRQSxFQUFPLElBQUksWUFBWSxDQUNqQyxDQUFDLEVBRUQsT0FBSUUsRUFBTyxVQUNUQSxFQUFPLFFBQVUsSUFBVSxJQUd6QkEsRUFBTyxTQUNUQSxFQUFPLE9BQVNGLEVBQU8sSUFBSSxlQUFlLEdBR3JDLE1BQU1ELEVBQWFNLEVBQUksSUFBSVIsRUFBaUJLLENBQU0sRUFBRyxDQUMxRCxVQUFXQSxFQUFPLE9BQ3BCLENBQUMsQ0FDSCIsCiAgIm5hbWVzIjogWyJHZXRPYmplY3RDb21tYW5kIiwgIlMzIiwgImdldFNpZ25lZFVybCIsICJDb25maWciLCAiczNHZXQiLCAicGFyYW1zIiwgInJlc29sdmUiLCAicmVqZWN0IiwgInMzIiwgImVycm9yIiwgIm91dHB1dCIsICJzM0hlYWQiLCAiczNQdXQiLCAiczNEZWxldGUiLCAiczNEZWxldGVMaXN0IiwgInMzR2V0U2lnbmVkVXJsIl0KfQo=
|
package/lib/actions/search.js
CHANGED
|
@@ -1,90 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
-
};
|
|
11
|
-
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
-
for (let key of __getOwnPropNames(from))
|
|
14
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
-
mod
|
|
26
|
-
));
|
|
27
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
var search_exports = {};
|
|
29
|
-
__export(search_exports, {
|
|
30
|
-
getSearchList: () => getSearchList
|
|
31
|
-
});
|
|
32
|
-
module.exports = __toCommonJS(search_exports);
|
|
33
|
-
var import_arangojs = require("arangojs");
|
|
34
|
-
var import_flatten = __toESM(require("lodash/flatten"));
|
|
35
|
-
var import_uniqBy = __toESM(require("lodash/uniqBy"));
|
|
36
|
-
var import_analyticsUtils = require("../utils/analyticsUtils");
|
|
37
|
-
var import_users = require("./users");
|
|
38
|
-
var import_error = require("../types/error");
|
|
39
|
-
var import_arangodbUtils = require("../utils/arangodbUtils");
|
|
40
|
-
const eventCategory = "search";
|
|
41
|
-
const getSearchList = (context, query, from, to) => {
|
|
42
|
-
const action = "getList";
|
|
43
|
-
const { database } = context;
|
|
44
|
-
const isString = true;
|
|
45
|
-
if (isString) {
|
|
46
|
-
const fields = [
|
|
47
|
-
{ collection: "users", field: "first" },
|
|
48
|
-
{ collection: "users", field: "last" },
|
|
49
|
-
{ collection: "users", field: "email" },
|
|
50
|
-
{ collection: "users", field: "username" },
|
|
51
|
-
{ collection: "users", field: "name" }
|
|
52
|
-
];
|
|
53
|
-
return Promise.all(fields.map((obj) => {
|
|
54
|
-
const qry = `prefix:${query}`;
|
|
55
|
-
const userQry = import_arangojs.aql`FOR u IN FULLTEXT(${obj.collection}, ${obj.field}, ${qry}, 50) RETURN u`;
|
|
56
|
-
return database.query(userQry).then((cursor) => cursor.all());
|
|
57
|
-
})).then((results) => {
|
|
58
|
-
const list = (0, import_uniqBy.default)((0, import_flatten.default)(results), "_key");
|
|
59
|
-
return list.map((item) => {
|
|
60
|
-
const { _id: itemId, name: itemName } = item;
|
|
61
|
-
const collectionIdList = itemId.split("/");
|
|
62
|
-
const collection = collectionIdList[0];
|
|
63
|
-
const name = collection === "users" ? (0, import_users.getDisplayName)(item) : itemName;
|
|
64
|
-
return { ...item, name };
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
const limit = (0, import_arangodbUtils.getLimit)(from, to);
|
|
69
|
-
const aqlQry = `FOR u IN users
|
|
70
|
-
FILTER u.phone == "${query}"
|
|
71
|
-
${limit.aql}
|
|
72
|
-
RETURN u`;
|
|
73
|
-
return database.query(aqlQry).then((cursor) => cursor.all()).then((list = []) => list.map((item) => {
|
|
74
|
-
const { _id: itemId, name: itemName } = item;
|
|
75
|
-
const collectionIdList = itemId.split("/");
|
|
76
|
-
const collection = collectionIdList[0];
|
|
77
|
-
const name = collection === "users" ? (0, import_users.getDisplayName)(item) : itemName;
|
|
78
|
-
return { ...item, name };
|
|
79
|
-
})).catch((error) => (0, import_analyticsUtils.logException)({
|
|
80
|
-
action,
|
|
81
|
-
category: eventCategory,
|
|
82
|
-
label: import_error.ErrorTypes.DATABASE_ERROR,
|
|
83
|
-
value: error.message
|
|
84
|
-
}, context).then(() => null));
|
|
85
|
-
};
|
|
86
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
87
|
-
0 && (module.exports = {
|
|
88
|
-
getSearchList
|
|
89
|
-
});
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc2VhcmNoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0FycmF5Q3Vyc29yfSBmcm9tICdhcmFuZ29qcy9jdXJzb3InO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcblxuaW1wb3J0IHR5cGUge0FyYW5nb0RiTGltaXR9IGZyb20gJy4uL3R5cGVzL2FyYW5nb2RiJztcbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoJztcbmltcG9ydCB0eXBlIHtVc2VyVHlwZX0gZnJvbSAnLi4vdHlwZXMvdXNlcnMnO1xuaW1wb3J0IHtsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzL2FuYWx5dGljc1V0aWxzJztcbmltcG9ydCB7Z2V0RGlzcGxheU5hbWV9IGZyb20gJy4vdXNlcnMnO1xuaW1wb3J0IHtFcnJvclR5cGVzfSBmcm9tICcuLi90eXBlcy9lcnJvcic7XG5pbXBvcnQge2dldExpbWl0fSBmcm9tICcuLi91dGlscy9hcmFuZ29kYlV0aWxzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3NlYXJjaCc7XG5cbmV4cG9ydCBjb25zdCBnZXRTZWFyY2hMaXN0ID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHF1ZXJ5OiBzdHJpbmcsIGZyb206IG51bWJlciwgdG86IG51bWJlcik6IFByb21pc2U8VXNlclR5cGVbXT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRMaXN0JztcbiAgY29uc3Qge2RhdGFiYXNlfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGlzU3RyaW5nOiBib29sZWFuID0gdHJ1ZTtcblxuICBpZihpc1N0cmluZykge1xuICAgIGNvbnN0IGZpZWxkczogYW55W10gPSBbXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICdmaXJzdCd9LFxuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnbGFzdCd9LFxuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnZW1haWwnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ3VzZXJuYW1lJ30sXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICduYW1lJ31cbiAgICBdO1xuXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKGZpZWxkcy5tYXAoKG9iaikgPT4ge1xuICAgICAgY29uc3QgcXJ5OiBzdHJpbmcgPSBgcHJlZml4OiR7cXVlcnl9YDtcbiAgICAgIGNvbnN0IHVzZXJRcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiB1IElOIEZVTExURVhUKCR7b2JqLmNvbGxlY3Rpb259LCAke29iai5maWVsZH0sICR7cXJ5fSwgNTApIFJFVFVSTiB1YDtcbiAgICAgIHJldHVybiBkYXRhYmFzZS5xdWVyeSh1c2VyUXJ5KS50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpO1xuICAgIH0pKVxuICAgICAgLnRoZW4oKHJlc3VsdHMpID0+IHtcbiAgICAgICAgY29uc3QgbGlzdCA9IHVuaXFCeShmbGF0dGVuKHJlc3VsdHMpLCAnX2tleScpO1xuXG4gICAgICAgIHJldHVybiBsaXN0Lm1hcCgoaXRlbTogVXNlclR5cGUpID0+IHtcbiAgICAgICAgICBjb25zdCB7X2lkOiBpdGVtSWQsIG5hbWU6IGl0ZW1OYW1lfSA9IGl0ZW07XG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbklkTGlzdDogc3RyaW5nW10gPSBpdGVtSWQuc3BsaXQoJy8nKTtcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBzdHJpbmcgPSBjb2xsZWN0aW9uSWRMaXN0WzBdO1xuICAgICAgICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IGNvbGxlY3Rpb24gPT09ICd1c2VycycgPyBnZXREaXNwbGF5TmFtZShpdGVtKSA6IGl0ZW1OYW1lO1xuXG4gICAgICAgICAgcmV0dXJuIHsuLi5pdGVtLCBuYW1lfTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IGxpbWl0OiBBcmFuZ29EYkxpbWl0ID0gZ2V0TGltaXQoZnJvbSwgdG8pO1xuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgdSBJTiB1c2Vyc1xuICAgICAgICBGSUxURVIgdS5waG9uZSA9PSBcIiR7cXVlcnl9XCJcbiAgICAgICAgJHtsaW1pdC5hcWx9XG4gICAgICAgIFJFVFVSTiB1YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLnRoZW4oKGxpc3Q6IFVzZXJUeXBlW10gPSBbXSkgPT4gbGlzdC5tYXAoKGl0ZW0pID0+IHtcbiAgICAgIGNvbnN0IHtfaWQ6IGl0ZW1JZCwgbmFtZTogaXRlbU5hbWV9ID0gaXRlbTtcbiAgICAgIGNvbnN0IGNvbGxlY3Rpb25JZExpc3Q6IHN0cmluZ1tdID0gaXRlbUlkLnNwbGl0KCcvJyk7XG4gICAgICBjb25zdCBjb2xsZWN0aW9uOiBzdHJpbmcgPSBjb2xsZWN0aW9uSWRMaXN0WzBdO1xuICAgICAgY29uc3QgbmFtZTogc3RyaW5nID0gY29sbGVjdGlvbiA9PT0gJ3VzZXJzJyA/IGdldERpc3BsYXlOYW1lKGl0ZW0pIDogaXRlbU5hbWU7XG5cbiAgICAgIHJldHVybiB7Li4uaXRlbSwgbmFtZX07XG4gICAgfSkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0V4Y2VwdGlvbih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiBFcnJvclR5cGVzLkRBVEFCQVNFX0VSUk9SLFxuICAgICAgdmFsdWU6IGVycm9yLm1lc3NhZ2VcbiAgICB9LCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsc0JBQWtCO0FBR2xCLHFCQUFvQjtBQUNwQixvQkFBbUI7QUFLbkIsNEJBQTJCO0FBQzNCLG1CQUE2QjtBQUM3QixtQkFBeUI7QUFDekIsMkJBQXVCO0FBRXZCLE1BQU0sZ0JBQXdCO0FBRXZCLE1BQU0sZ0JBQWdCLENBQUMsU0FBcUIsT0FBZSxNQUFjLE9BQW9DO0FBQ2xILFFBQU0sU0FBaUI7QUFDdkIsUUFBTSxFQUFDLFNBQVEsSUFBSTtBQUNuQixRQUFNLFdBQW9CO0FBRTFCLE1BQUcsVUFBVTtBQUNYLFVBQU0sU0FBZ0I7QUFBQSxNQUNwQixFQUFDLFlBQVksU0FBUyxPQUFPLFFBQU87QUFBQSxNQUNwQyxFQUFDLFlBQVksU0FBUyxPQUFPLE9BQU07QUFBQSxNQUNuQyxFQUFDLFlBQVksU0FBUyxPQUFPLFFBQU87QUFBQSxNQUNwQyxFQUFDLFlBQVksU0FBUyxPQUFPLFdBQVU7QUFBQSxNQUN2QyxFQUFDLFlBQVksU0FBUyxPQUFPLE9BQU07QUFBQSxJQUNyQztBQUVBLFdBQU8sUUFBUSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVE7QUFDckMsWUFBTSxNQUFjLFVBQVUsS0FBSztBQUNuQyxZQUFNLFVBQW9CLHdDQUF3QixJQUFJLFVBQVUsS0FBSyxJQUFJLEtBQUssS0FBSyxHQUFHO0FBQ3RGLGFBQU8sU0FBUyxNQUFNLE9BQU8sRUFBRSxLQUFLLENBQUMsV0FBd0IsT0FBTyxJQUFJLENBQUM7QUFBQSxJQUMzRSxDQUFDLENBQUMsRUFDQyxLQUFLLENBQUMsWUFBWTtBQUNqQixZQUFNLFdBQU8sY0FBQUEsYUFBTyxlQUFBQyxTQUFRLE9BQU8sR0FBRyxNQUFNO0FBRTVDLGFBQU8sS0FBSyxJQUFJLENBQUMsU0FBbUI7QUFDbEMsY0FBTSxFQUFDLEtBQUssUUFBUSxNQUFNLFNBQVEsSUFBSTtBQUN0QyxjQUFNLG1CQUE2QixPQUFPLE1BQU0sR0FBRztBQUNuRCxjQUFNLGFBQXFCLGlCQUFpQixDQUFDO0FBQzdDLGNBQU0sT0FBZSxlQUFlLGNBQVUsNkJBQWUsSUFBSSxJQUFJO0FBRXJFLGVBQU8sRUFBQyxHQUFHLE1BQU0sS0FBSTtBQUFBLE1BQ3ZCLENBQUM7QUFBQSxJQUNILENBQUM7QUFBQSxFQUNMO0FBRUEsUUFBTSxZQUF1QiwrQkFBUyxNQUFNLEVBQUU7QUFDOUMsUUFBTSxTQUFpQjtBQUFBLDZCQUNJLEtBQUs7QUFBQSxVQUN4QixNQUFNLEdBQUc7QUFBQTtBQUdqQixTQUFPLFNBQVMsTUFBTSxNQUFNLEVBQ3pCLEtBQUssQ0FBQyxXQUF3QixPQUFPLElBQUksQ0FBQyxFQUMxQyxLQUFLLENBQUMsT0FBbUIsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLFNBQVM7QUFDbEQsVUFBTSxFQUFDLEtBQUssUUFBUSxNQUFNLFNBQVEsSUFBSTtBQUN0QyxVQUFNLG1CQUE2QixPQUFPLE1BQU0sR0FBRztBQUNuRCxVQUFNLGFBQXFCLGlCQUFpQixDQUFDO0FBQzdDLFVBQU0sT0FBZSxlQUFlLGNBQVUsNkJBQWUsSUFBSSxJQUFJO0FBRXJFLFdBQU8sRUFBQyxHQUFHLE1BQU0sS0FBSTtBQUFBLEVBQ3ZCLENBQUMsQ0FBQyxFQUNELE1BQU0sQ0FBQyxjQUFpQixvQ0FBYTtBQUFBLElBQ3BDO0FBQUEsSUFDQSxVQUFVO0FBQUEsSUFDVixPQUFPLHdCQUFXO0FBQUEsSUFDbEIsT0FBTyxNQUFNO0FBQUEsRUFDZixHQUFHLE9BQU8sRUFBRSxLQUFLLE1BQU0sSUFBSSxDQUFDO0FBQ2hDOyIsCiAgIm5hbWVzIjogWyJ1bmlxQnkiLCAiZmxhdHRlbiJdCn0K
|
|
1
|
+
import{aql as T}from"arangojs";import h from"lodash/flatten";import R from"lodash/uniqBy";import{getDisplayName as a}from"./users";import{ErrorTypes as A}from"../types/error.types";import{logException as E}from"../utils/analyticsUtils";import{getLimit as I,useDb as p}from"../utils/arangodbUtils";const b="search",_=(i,n,u,g)=>{const y="getList",{databaseName:l}=i;if(!0){const e=[{collection:"users",field:"first"},{collection:"users",field:"last"},{collection:"users",field:"email"},{collection:"users",field:"username"},{collection:"users",field:"name"}];return Promise.all(e.map(t=>{const o=`prefix:${n}`,r=T`FOR u IN FULLTEXT(${t.collection}, ${t.field}, ${o}, 50) RETURN u`;return p(l).query(r).then(s=>s.all())})).then(t=>R(h(t),"_key").map(r=>{const{_id:s,name:c}=r,L=s.split("/")[0]==="users"?a(r):c;return{...r,name:L}}))}const f=I(u,g),d=`FOR u IN users
|
|
2
|
+
FILTER u.phone == "${n}"
|
|
3
|
+
${f.aql}
|
|
4
|
+
RETURN u`;return p(l).query(d).then(e=>e.all()).then((e=[])=>e.map(t=>{const{_id:o,name:r}=t,m=o.split("/")[0]==="users"?a(t):r;return{...t,name:m}})).catch(e=>E({action:y,category:b,label:A.DATABASE_ERROR,value:e.message},i).then(()=>null))};export{_ as getSearchList};
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc2VhcmNoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQgZmxhdHRlbiBmcm9tICdsb2Rhc2gvZmxhdHRlbic7XG5pbXBvcnQgdW5pcUJ5IGZyb20gJ2xvZGFzaC91bmlxQnknO1xuXG5pbXBvcnQge2dldERpc3BsYXlOYW1lfSBmcm9tICcuL3VzZXJzJztcbmltcG9ydCB7RXJyb3JUeXBlc30gZnJvbSAnLi4vdHlwZXMvZXJyb3IudHlwZXMnO1xuaW1wb3J0IHtsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzL2FuYWx5dGljc1V0aWxzJztcbmltcG9ydCB7Z2V0TGltaXQsIHVzZURifSBmcm9tICcuLi91dGlscy9hcmFuZ29kYlV0aWxzJztcblxuaW1wb3J0IHR5cGUge0FyYW5nb0RiTGltaXR9IGZyb20gJy4uL3R5cGVzL2FyYW5nb2RiLnR5cGVzJztcbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoLnR5cGVzJztcbmltcG9ydCB0eXBlIHtVc2VyVHlwZX0gZnJvbSAnLi4vdHlwZXMvdXNlcnMudHlwZXMnO1xuXG5jb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnc2VhcmNoJztcblxuZXhwb3J0IGNvbnN0IGdldFNlYXJjaExpc3QgPSAoY29udGV4dDogQXBpQ29udGV4dCwgcXVlcnk6IHN0cmluZywgZnJvbTogbnVtYmVyLCB0bzogbnVtYmVyKTogUHJvbWlzZTxVc2VyVHlwZVtdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldExpc3QnO1xuICBjb25zdCB7ZGF0YWJhc2VOYW1lfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGlzU3RyaW5nOiBib29sZWFuID0gdHJ1ZTtcblxuICBpZihpc1N0cmluZykge1xuICAgIGNvbnN0IGZpZWxkczoge2NvbGxlY3Rpb246IHN0cmluZywgZmllbGQ6IHN0cmluZ31bXSA9IFtcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ2ZpcnN0J30sXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICdsYXN0J30sXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICdlbWFpbCd9LFxuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAndXNlcm5hbWUnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ25hbWUnfVxuICAgIF07XG5cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoZmllbGRzLm1hcCgob2JqKSA9PiB7XG4gICAgICBjb25zdCBxcnk6IHN0cmluZyA9IGBwcmVmaXg6JHtxdWVyeX1gO1xuICAgICAgY29uc3QgdXNlclFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIHUgSU4gRlVMTFRFWFQoJHtvYmouY29sbGVjdGlvbn0sICR7b2JqLmZpZWxkfSwgJHtxcnl9LCA1MCkgUkVUVVJOIHVgO1xuICAgICAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkodXNlclFyeSkudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpO1xuICAgIH0pKVxuICAgICAgLnRoZW4oKHJlc3VsdHMpID0+IHtcbiAgICAgICAgY29uc3QgbGlzdCA9IHVuaXFCeShmbGF0dGVuKHJlc3VsdHMpLCAnX2tleScpO1xuXG4gICAgICAgIHJldHVybiBsaXN0Lm1hcCgoaXRlbTogVXNlclR5cGUpID0+IHtcbiAgICAgICAgICBjb25zdCB7X2lkOiBpdGVtSWQsIG5hbWU6IGl0ZW1OYW1lfSA9IGl0ZW07XG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbklkTGlzdDogc3RyaW5nW10gPSBpdGVtSWQuc3BsaXQoJy8nKTtcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBzdHJpbmcgPSBjb2xsZWN0aW9uSWRMaXN0WzBdO1xuICAgICAgICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IGNvbGxlY3Rpb24gPT09ICd1c2VycycgPyBnZXREaXNwbGF5TmFtZShpdGVtKSA6IGl0ZW1OYW1lO1xuXG4gICAgICAgICAgcmV0dXJuIHsuLi5pdGVtLCBuYW1lfTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IGxpbWl0OiBBcmFuZ29EYkxpbWl0ID0gZ2V0TGltaXQoZnJvbSwgdG8pO1xuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgdSBJTiB1c2Vyc1xuICAgICAgICBGSUxURVIgdS5waG9uZSA9PSBcIiR7cXVlcnl9XCJcbiAgICAgICAgJHtsaW1pdC5hcWx9XG4gICAgICAgIFJFVFVSTiB1YDtcblxuICByZXR1cm4gdXNlRGIoZGF0YWJhc2VOYW1lKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC50aGVuKChsaXN0OiBVc2VyVHlwZVtdID0gW10pID0+IGxpc3QubWFwKChpdGVtKSA9PiB7XG4gICAgICBjb25zdCB7X2lkOiBpdGVtSWQsIG5hbWU6IGl0ZW1OYW1lfSA9IGl0ZW07XG4gICAgICBjb25zdCBjb2xsZWN0aW9uSWRMaXN0OiBzdHJpbmdbXSA9IGl0ZW1JZC5zcGxpdCgnLycpO1xuICAgICAgY29uc3QgY29sbGVjdGlvbjogc3RyaW5nID0gY29sbGVjdGlvbklkTGlzdFswXTtcbiAgICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IGNvbGxlY3Rpb24gPT09ICd1c2VycycgPyBnZXREaXNwbGF5TmFtZShpdGVtKSA6IGl0ZW1OYW1lO1xuXG4gICAgICByZXR1cm4gey4uLml0ZW0sIG5hbWV9O1xuICAgIH0pKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFeGNlcHRpb24oe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUixcbiAgICAgIHZhbHVlOiBlcnJvci5tZXNzYWdlXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxPQUFBQSxNQUFVLFdBRWxCLE9BQU9DLE1BQWEsaUJBQ3BCLE9BQU9DLE1BQVksZ0JBRW5CLE9BQVEsa0JBQUFDLE1BQXFCLFVBQzdCLE9BQVEsY0FBQUMsTUFBaUIsdUJBQ3pCLE9BQVEsZ0JBQUFDLE1BQW1CLDBCQUMzQixPQUFRLFlBQUFDLEVBQVUsU0FBQUMsTUFBWSx5QkFNOUIsTUFBTUMsRUFBd0IsU0FFakJDLEVBQWdCLENBQUNDLEVBQXFCQyxFQUFlQyxFQUFjQyxJQUFvQyxDQUNsSCxNQUFNQyxFQUFpQixVQUNqQixDQUFDLGFBQUFDLENBQVksRUFBSUwsRUFHdkIsR0FGMEIsR0FFYixDQUNYLE1BQU1NLEVBQWdELENBQ3BELENBQUMsV0FBWSxRQUFTLE1BQU8sT0FBTyxFQUNwQyxDQUFDLFdBQVksUUFBUyxNQUFPLE1BQU0sRUFDbkMsQ0FBQyxXQUFZLFFBQVMsTUFBTyxPQUFPLEVBQ3BDLENBQUMsV0FBWSxRQUFTLE1BQU8sVUFBVSxFQUN2QyxDQUFDLFdBQVksUUFBUyxNQUFPLE1BQU0sQ0FDckMsRUFFQSxPQUFPLFFBQVEsSUFBSUEsRUFBTyxJQUFLQyxHQUFRLENBQ3JDLE1BQU1DLEVBQWMsVUFBVVAsQ0FBSyxHQUM3QlEsRUFBb0JuQixzQkFBd0JpQixFQUFJLFVBQVUsS0FBS0EsRUFBSSxLQUFLLEtBQUtDLENBQUcsaUJBQ3RGLE9BQU9YLEVBQU1RLENBQVksRUFBRSxNQUFNSSxDQUFPLEVBQUUsS0FBTUMsR0FBV0EsRUFBTyxJQUFJLENBQUMsQ0FDekUsQ0FBQyxDQUFDLEVBQ0MsS0FBTUMsR0FDUW5CLEVBQU9ELEVBQVFvQixDQUFPLEVBQUcsTUFBTSxFQUVoQyxJQUFLQyxHQUFtQixDQUNsQyxLQUFNLENBQUMsSUFBS0MsRUFBUSxLQUFNQyxDQUFRLEVBQUlGLEVBR2hDRyxFQUY2QkYsRUFBTyxNQUFNLEdBQUcsRUFDUCxDQUFDLElBQ1QsUUFBVXBCLEVBQWVtQixDQUFJLEVBQUlFLEVBRXJFLE1BQU8sQ0FBQyxHQUFHRixFQUFNLEtBQUFHLENBQUksQ0FDdkIsQ0FBQyxDQUNGLENBQ0wsQ0FFQSxNQUFNQyxFQUF1QnBCLEVBQVNNLEVBQU1DLENBQUUsRUFDeENjLEVBQWlCO0FBQUEsNkJBQ0loQixDQUFLO0FBQUEsVUFDeEJlLEVBQU0sR0FBRztBQUFBLGtCQUdqQixPQUFPbkIsRUFBTVEsQ0FBWSxFQUFFLE1BQU1ZLENBQU0sRUFDcEMsS0FBTVAsR0FBV0EsRUFBTyxJQUFJLENBQUMsRUFDN0IsS0FBSyxDQUFDUSxFQUFtQixDQUFDLElBQU1BLEVBQUssSUFBS04sR0FBUyxDQUNsRCxLQUFNLENBQUMsSUFBS0MsRUFBUSxLQUFNQyxDQUFRLEVBQUlGLEVBR2hDRyxFQUY2QkYsRUFBTyxNQUFNLEdBQUcsRUFDUCxDQUFDLElBQ1QsUUFBVXBCLEVBQWVtQixDQUFJLEVBQUlFLEVBRXJFLE1BQU8sQ0FBQyxHQUFHRixFQUFNLEtBQUFHLENBQUksQ0FDdkIsQ0FBQyxDQUFDLEVBQ0QsTUFBT0ksR0FBaUJ4QixFQUFhLENBQ3BDLE9BQUFTLEVBQ0EsU0FBVU4sRUFDVixNQUFPSixFQUFXLGVBQ2xCLE1BQU95QixFQUFNLE9BQ2YsRUFBR25CLENBQU8sRUFBRSxLQUFLLElBQU0sSUFBSSxDQUFDLENBQ2hDIiwKICAibmFtZXMiOiBbImFxbCIsICJmbGF0dGVuIiwgInVuaXFCeSIsICJnZXREaXNwbGF5TmFtZSIsICJFcnJvclR5cGVzIiwgImxvZ0V4Y2VwdGlvbiIsICJnZXRMaW1pdCIsICJ1c2VEYiIsICJldmVudENhdGVnb3J5IiwgImdldFNlYXJjaExpc3QiLCAiY29udGV4dCIsICJxdWVyeSIsICJmcm9tIiwgInRvIiwgImFjdGlvbiIsICJkYXRhYmFzZU5hbWUiLCAiZmllbGRzIiwgIm9iaiIsICJxcnkiLCAidXNlclFyeSIsICJjdXJzb3IiLCAicmVzdWx0cyIsICJpdGVtIiwgIml0ZW1JZCIsICJpdGVtTmFtZSIsICJuYW1lIiwgImxpbWl0IiwgImFxbFFyeSIsICJsaXN0IiwgImVycm9yIl0KfQo=
|
package/lib/actions/sms.js
CHANGED
|
@@ -1,106 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
-
};
|
|
11
|
-
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
-
for (let key of __getOwnPropNames(from))
|
|
14
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
-
mod
|
|
26
|
-
));
|
|
27
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
var sms_exports = {};
|
|
29
|
-
__export(sms_exports, {
|
|
30
|
-
sendSms: () => sendSms,
|
|
31
|
-
sendSmsTemplate: () => sendSmsTemplate
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(sms_exports);
|
|
34
|
-
var import_client_sns = require("@aws-sdk/client-sns");
|
|
35
|
-
var import_utils = require("@nlabs/utils");
|
|
36
|
-
var import_fs = __toESM(require("fs"));
|
|
37
|
-
var import_config = require("../config");
|
|
38
|
-
var import_error = require("../types/error");
|
|
39
|
-
var import_analyticsUtils = require("../utils/analyticsUtils");
|
|
40
|
-
const eventCategory = "sms";
|
|
41
|
-
const sendSms = async ({
|
|
42
|
-
content,
|
|
43
|
-
user,
|
|
44
|
-
variables = {}
|
|
45
|
-
}) => {
|
|
46
|
-
const action = "sendSms";
|
|
47
|
-
const snsClient = new import_client_sns.SNSClient({
|
|
48
|
-
credentials: import_config.Config.get("aws.credentials"),
|
|
49
|
-
region: import_config.Config.get("aws.region")
|
|
50
|
-
});
|
|
51
|
-
const { country = "US", phone } = user;
|
|
52
|
-
const phoneNumber = (0, import_utils.parsePhone)(phone, country);
|
|
53
|
-
const templateContent = (0, import_utils.parseTemplate)(content, variables);
|
|
54
|
-
return await snsClient.send(
|
|
55
|
-
new import_client_sns.PublishCommand({
|
|
56
|
-
Message: templateContent,
|
|
57
|
-
MessageAttributes: {
|
|
58
|
-
"AWS.SNS.SMS.SMSType": {
|
|
59
|
-
DataType: "String",
|
|
60
|
-
StringValue: "Transactional"
|
|
61
|
-
},
|
|
62
|
-
"AWS.SNS.SMS.SenderID": {
|
|
63
|
-
DataType: "String",
|
|
64
|
-
StringValue: import_config.Config.get("app.id").trim().replace(/ /g, "").substring(0, 11)
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
PhoneNumber: phoneNumber
|
|
68
|
-
})
|
|
69
|
-
).then((res) => {
|
|
70
|
-
console.log({ res });
|
|
71
|
-
return res;
|
|
72
|
-
}).catch((error) => {
|
|
73
|
-
console.log({ error });
|
|
74
|
-
return (0, import_analyticsUtils.logError)({
|
|
75
|
-
action,
|
|
76
|
-
category: eventCategory,
|
|
77
|
-
label: import_error.ErrorTypes.SMS_ERROR
|
|
78
|
-
}, error, { session: user });
|
|
79
|
-
});
|
|
80
|
-
};
|
|
81
|
-
const sendSmsTemplate = (templateName, {
|
|
82
|
-
user,
|
|
83
|
-
variables = {}
|
|
84
|
-
}) => {
|
|
85
|
-
const action = "sendSmsTemplate";
|
|
86
|
-
try {
|
|
87
|
-
const data = import_fs.default.readFileSync(`./templates/sms/${templateName}.txt`, "utf8");
|
|
88
|
-
const text = (0, import_utils.parseTemplate)(data, variables);
|
|
89
|
-
const params = { text, user };
|
|
90
|
-
return sendSms(params).then((res) => res.status === "queued").catch(
|
|
91
|
-
(error) => (0, import_analyticsUtils.logError)({
|
|
92
|
-
action,
|
|
93
|
-
category: eventCategory,
|
|
94
|
-
label: import_error.ErrorTypes.SMS_ERROR
|
|
95
|
-
}, error, { session: user }).then(() => null)
|
|
96
|
-
);
|
|
97
|
-
} catch (error) {
|
|
98
|
-
return Promise.reject({ errors: [error.message] });
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
102
|
-
0 && (module.exports = {
|
|
103
|
-
sendSms,
|
|
104
|
-
sendSmsTemplate
|
|
105
|
-
});
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc21zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtQdWJsaXNoQ29tbWFuZCwgU05TQ2xpZW50fSBmcm9tICdAYXdzLXNkay9jbGllbnQtc25zJztcbmltcG9ydCB7cGFyc2VQaG9uZSwgcGFyc2VUZW1wbGF0ZX0gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCBmcyBmcm9tICdmcyc7XG5cbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcnO1xuaW1wb3J0IHtFcnJvclR5cGVzfSBmcm9tICcuLi90eXBlcy9lcnJvcic7XG5pbXBvcnQge1NNU1BhcmFtc1R5cGV9IGZyb20gJy4uL3R5cGVzL25vdGlmaWNhdGlvbnMnO1xuaW1wb3J0IHtTZXNzaW9ufSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge2xvZ0Vycm9yfSBmcm9tICcuLi91dGlscy9hbmFseXRpY3NVdGlscyc7XG5cbmNvbnN0IGV2ZW50Q2F0ZWdvcnk6IHN0cmluZyA9ICdzbXMnO1xuXG5leHBvcnQgY29uc3Qgc2VuZFNtcyA9IGFzeW5jICh7XG4gIGNvbnRlbnQsXG4gIHVzZXIsXG4gIHZhcmlhYmxlcyA9IHt9XG59OiBTTVNQYXJhbXNUeXBlKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnc2VuZFNtcyc7XG4gIGNvbnN0IHNuc0NsaWVudCA9IG5ldyBTTlNDbGllbnQoe1xuICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICB9KTtcbiAgY29uc3Qge2NvdW50cnkgPSAnVVMnLCBwaG9uZX0gPSB1c2VyO1xuICBjb25zdCBwaG9uZU51bWJlciA9IHBhcnNlUGhvbmUocGhvbmUsIGNvdW50cnkpO1xuICBjb25zdCB0ZW1wbGF0ZUNvbnRlbnQ6IHN0cmluZyA9IHBhcnNlVGVtcGxhdGUoY29udGVudCwgdmFyaWFibGVzKTtcblxuICByZXR1cm4gYXdhaXQgc25zQ2xpZW50XG4gICAgLnNlbmQoXG4gICAgICBuZXcgUHVibGlzaENvbW1hbmQoe1xuICAgICAgICBNZXNzYWdlOiB0ZW1wbGF0ZUNvbnRlbnQsXG4gICAgICAgIE1lc3NhZ2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgJ0FXUy5TTlMuU01TLlNNU1R5cGUnOiB7XG4gICAgICAgICAgICBEYXRhVHlwZTogJ1N0cmluZycsXG4gICAgICAgICAgICBTdHJpbmdWYWx1ZTogJ1RyYW5zYWN0aW9uYWwnXG4gICAgICAgICAgfSxcbiAgICAgICAgICAnQVdTLlNOUy5TTVMuU2VuZGVySUQnOiB7XG4gICAgICAgICAgICBEYXRhVHlwZTogJ1N0cmluZycsXG4gICAgICAgICAgICBTdHJpbmdWYWx1ZTogQ29uZmlnLmdldCgnYXBwLmlkJykudHJpbSgpLnJlcGxhY2UoLyAvZywgJycpLnN1YnN0cmluZygwLCAxMSlcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFBob25lTnVtYmVyOiBwaG9uZU51bWJlclxuICAgICAgfSksXG4gICAgKVxuICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKHtyZXN9KTtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfSlcbiAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyh7ZXJyb3J9KTtcbiAgICAgIHJldHVybiBsb2dFcnJvcih7XG4gICAgICAgIGFjdGlvbixcbiAgICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICAgIGxhYmVsOiBFcnJvclR5cGVzLlNNU19FUlJPUlxuICAgICAgfSwgZXJyb3IsIHtzZXNzaW9uOiB1c2VyIGFzIFNlc3Npb259KTtcbiAgICB9KTtcbiAgLy8gLnRoZW4oKCkgPT4gbnVsbCk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2VuZFNtc1RlbXBsYXRlID0gKFxuICB0ZW1wbGF0ZU5hbWU6IHN0cmluZyxcbiAge1xuICAgIHVzZXIsXG4gICAgdmFyaWFibGVzID0ge31cbiAgfTogU01TUGFyYW1zVHlwZVxuKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ3NlbmRTbXNUZW1wbGF0ZSc7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBkYXRhID0gZnMucmVhZEZpbGVTeW5jKGAuL3RlbXBsYXRlcy9zbXMvJHt0ZW1wbGF0ZU5hbWV9LnR4dGAsICd1dGY4Jyk7XG4gICAgY29uc3QgdGV4dCA9IHBhcnNlVGVtcGxhdGUoZGF0YSwgdmFyaWFibGVzKTtcbiAgICBjb25zdCBwYXJhbXMgPSB7dGV4dCwgdXNlcn07XG5cbiAgICByZXR1cm4gc2VuZFNtcyhwYXJhbXMpXG4gICAgICAudGhlbigocmVzKSA9PiByZXMuc3RhdHVzID09PSAncXVldWVkJylcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgICAgYWN0aW9uLFxuICAgICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgICAgbGFiZWw6IEVycm9yVHlwZXMuU01TX0VSUk9SXG4gICAgICB9LCBlcnJvciwge3Nlc3Npb246IHVzZXIgYXMgU2Vzc2lvbn0pXG4gICAgICAgIC50aGVuKCgpID0+IG51bGwpXG4gICAgICApO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHtlcnJvcnM6IFtlcnJvci5tZXNzYWdlXX0pO1xuICB9XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FB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
|
|
1
|
+
import{PublishCommand as p,SNSClient as c}from"@aws-sdk/client-sns";import{parsePhone as u,parseTemplate as f}from"@nlabs/utils";import{Config as t}from"../config";import{ErrorTypes as y}from"../types/error.types";import{logError as d}from"../utils/analyticsUtils";const M="sms",w=async({context:n,text:o,user:e,variables:s={}})=>{const a="sendSms",i=new c({credentials:t.get("aws.credentials"),region:t.get("aws.region")}),{country:S="US",phone:m}=e,g=u(m,S),l=f(o,s);return await i.send(new p({Message:l,MessageAttributes:{"AWS.SNS.SMS.SMSType":{DataType:"String",StringValue:"Transactional"},"AWS.SNS.SMS.SenderID":{DataType:"String",StringValue:n.config.details.id.trim().replace(/ /g,"").substring(0,11)}},PhoneNumber:g})).then(r=>!0).catch(r=>(d({action:a,category:M,label:y.SMS_ERROR},r,{session:e}),!1))};export{w as sendSms};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc21zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtQdWJsaXNoQ29tbWFuZCwgU05TQ2xpZW50fSBmcm9tICdAYXdzLXNkay9jbGllbnQtc25zJztcbmltcG9ydCB7cGFyc2VQaG9uZSwgcGFyc2VUZW1wbGF0ZX0gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQge0Vycm9yVHlwZXN9IGZyb20gJy4uL3R5cGVzL2Vycm9yLnR5cGVzJztcbmltcG9ydCB7U01TUGFyYW1zVHlwZX0gZnJvbSAnLi4vdHlwZXMvbm90aWZpY2F0aW9ucy50eXBlcyc7XG5pbXBvcnQge1Nlc3Npb259IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7bG9nRXJyb3J9IGZyb20gJy4uL3V0aWxzL2FuYWx5dGljc1V0aWxzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3Ntcyc7XG5cbmV4cG9ydCBjb25zdCBzZW5kU21zID0gYXN5bmMgKHtcbiAgY29udGV4dCxcbiAgdGV4dCxcbiAgdXNlcixcbiAgdmFyaWFibGVzID0ge31cbn06IFNNU1BhcmFtc1R5cGUpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnc2VuZFNtcyc7XG4gIGNvbnN0IHNuc0NsaWVudCA9IG5ldyBTTlNDbGllbnQoe1xuICAgIGNyZWRlbnRpYWxzOiBDb25maWcuZ2V0KCdhd3MuY3JlZGVudGlhbHMnKSxcbiAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICB9KTtcbiAgY29uc3Qge2NvdW50cnkgPSAnVVMnLCBwaG9uZX0gPSB1c2VyO1xuICBjb25zdCBwaG9uZU51bWJlciA9IHBhcnNlUGhvbmUocGhvbmUsIGNvdW50cnkpO1xuICBjb25zdCB0ZW1wbGF0ZUNvbnRlbnQ6IHN0cmluZyA9IHBhcnNlVGVtcGxhdGUodGV4dCwgdmFyaWFibGVzKTtcblxuICByZXR1cm4gYXdhaXQgc25zQ2xpZW50XG4gICAgLnNlbmQoXG4gICAgICBuZXcgUHVibGlzaENvbW1hbmQoe1xuICAgICAgICBNZXNzYWdlOiB0ZW1wbGF0ZUNvbnRlbnQsXG4gICAgICAgIE1lc3NhZ2VBdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgJ0FXUy5TTlMuU01TLlNNU1R5cGUnOiB7XG4gICAgICAgICAgICBEYXRhVHlwZTogJ1N0cmluZycsXG4gICAgICAgICAgICBTdHJpbmdWYWx1ZTogJ1RyYW5zYWN0aW9uYWwnXG4gICAgICAgICAgfSxcbiAgICAgICAgICAnQVdTLlNOUy5TTVMuU2VuZGVySUQnOiB7XG4gICAgICAgICAgICBEYXRhVHlwZTogJ1N0cmluZycsXG4gICAgICAgICAgICBTdHJpbmdWYWx1ZTogY29udGV4dC5jb25maWcuZGV0YWlscy5pZC50cmltKCkucmVwbGFjZSgvIC9nLCAnJykuc3Vic3RyaW5nKDAsIDExKVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgUGhvbmVOdW1iZXI6IHBob25lTnVtYmVyXG4gICAgICB9KVxuICAgIClcbiAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyh7cmVzfSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKHtlcnJvcn0pO1xuICAgICAgbG9nRXJyb3Ioe1xuICAgICAgICBhY3Rpb24sXG4gICAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgICBsYWJlbDogRXJyb3JUeXBlcy5TTVNfRVJST1JcbiAgICAgIH0sIGVycm9yLCB7c2Vzc2lvbjogdXNlciBhcyBTZXNzaW9ufSk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9KTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxPQUFRLGtCQUFBQSxFQUFnQixhQUFBQyxNQUFnQixzQkFDeEMsT0FBUSxjQUFBQyxFQUFZLGlCQUFBQyxNQUFvQixlQUV4QyxPQUFRLFVBQUFDLE1BQWEsWUFDckIsT0FBUSxjQUFBQyxNQUFpQix1QkFHekIsT0FBUSxZQUFBQyxNQUFlLDBCQUV2QixNQUFNQyxFQUF3QixNQUVqQkMsRUFBVSxNQUFPLENBQzVCLFFBQUFDLEVBQ0EsS0FBQUMsRUFDQSxLQUFBQyxFQUNBLFVBQUFDLEVBQVksQ0FBQyxDQUNmLElBQXVDLENBQ3JDLE1BQU1DLEVBQWlCLFVBQ2pCQyxFQUFZLElBQUliLEVBQVUsQ0FDOUIsWUFBYUcsRUFBTyxJQUFJLGlCQUFpQixFQUN6QyxPQUFRQSxFQUFPLElBQUksWUFBWSxDQUNqQyxDQUFDLEVBQ0ssQ0FBQyxRQUFBVyxFQUFVLEtBQU0sTUFBQUMsQ0FBSyxFQUFJTCxFQUMxQk0sRUFBY2YsRUFBV2MsRUFBT0QsQ0FBTyxFQUN2Q0csRUFBMEJmLEVBQWNPLEVBQU1FLENBQVMsRUFFN0QsT0FBTyxNQUFNRSxFQUNWLEtBQ0MsSUFBSWQsRUFBZSxDQUNqQixRQUFTa0IsRUFDVCxrQkFBbUIsQ0FDakIsc0JBQXVCLENBQ3JCLFNBQVUsU0FDVixZQUFhLGVBQ2YsRUFDQSx1QkFBd0IsQ0FDdEIsU0FBVSxTQUNWLFlBQWFULEVBQVEsT0FBTyxRQUFRLEdBQUcsS0FBSyxFQUFFLFFBQVEsS0FBTSxFQUFFLEVBQUUsVUFBVSxFQUFHLEVBQUUsQ0FDakYsQ0FDRixFQUNBLFlBQWFRLENBQ2YsQ0FBQyxDQUNILEVBQ0MsS0FBTUUsR0FFRSxFQUNSLEVBQ0EsTUFBT0MsSUFFTmQsRUFBUyxDQUNQLE9BQUFPLEVBQ0EsU0FBVU4sRUFDVixNQUFPRixFQUFXLFNBQ3BCLEVBQUdlLEVBQU8sQ0FBQyxRQUFTVCxDQUFlLENBQUMsRUFFN0IsR0FDUixDQUNMIiwKICAibmFtZXMiOiBbIlB1Ymxpc2hDb21tYW5kIiwgIlNOU0NsaWVudCIsICJwYXJzZVBob25lIiwgInBhcnNlVGVtcGxhdGUiLCAiQ29uZmlnIiwgIkVycm9yVHlwZXMiLCAibG9nRXJyb3IiLCAiZXZlbnRDYXRlZ29yeSIsICJzZW5kU21zIiwgImNvbnRleHQiLCAidGV4dCIsICJ1c2VyIiwgInZhcmlhYmxlcyIsICJhY3Rpb24iLCAic25zQ2xpZW50IiwgImNvdW50cnkiLCAicGhvbmUiLCAicGhvbmVOdW1iZXIiLCAidGVtcGxhdGVDb250ZW50IiwgInJlcyIsICJlcnJvciJdCn0K
|
|
@@ -1,62 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var statistics_exports = {};
|
|
19
|
-
__export(statistics_exports, {
|
|
20
|
-
getGlobalStatistics: () => getGlobalStatistics,
|
|
21
|
-
updateGlobalStatistics: () => updateGlobalStatistics
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(statistics_exports);
|
|
24
|
-
var import_arangojs = require("arangojs");
|
|
25
|
-
var import_users = require("./users");
|
|
26
|
-
var import_analyticsUtils = require("../utils/analyticsUtils");
|
|
27
|
-
var import_error = require("../types/error");
|
|
28
|
-
const eventCategory = "statistics";
|
|
29
|
-
const getGlobalStatistics = (context) => {
|
|
30
|
-
const action = "getGlobalStatistics";
|
|
31
|
-
const { database } = context;
|
|
32
|
-
const statisticsQuery = import_arangojs.aql`FOR s IN statistics
|
|
1
|
+
import{aql as a}from"arangojs";import{getActiveUserCount as u}from"./users";import{ErrorTypes as c}from"../types/error.types";import{logError as n}from"../utils/analyticsUtils";import{useDb as p}from"../utils/arangodbUtils";const l="statistics",b=t=>{const r="getGlobalStatistics",{databaseName:e}=t,i=a`FOR s IN statistics
|
|
33
2
|
FILTER s.isGlobal == true
|
|
34
3
|
LIMIT 1
|
|
35
|
-
RETURN s`;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}, error, context));
|
|
41
|
-
};
|
|
42
|
-
const updateGlobalStatistics = (context) => {
|
|
43
|
-
const action = "updateGlobalStatistics";
|
|
44
|
-
const { database } = context;
|
|
45
|
-
const activeUsers = (0, import_users.getActiveUserCount)(context);
|
|
46
|
-
const updatedData = { activeUsers };
|
|
47
|
-
const updateQuery = import_arangojs.aql`UPSERT {isGlobal: true}
|
|
48
|
-
INSERT ${updatedData}
|
|
49
|
-
UPDATE ${updatedData}
|
|
50
|
-
IN statistics RETURN NEW`;
|
|
51
|
-
return database.query(updateQuery).then((cursor) => cursor.next()).catch((error) => (0, import_analyticsUtils.logError)({
|
|
52
|
-
action,
|
|
53
|
-
category: eventCategory,
|
|
54
|
-
label: import_error.ErrorTypes.DATABASE_ERROR
|
|
55
|
-
}, error, context));
|
|
56
|
-
};
|
|
57
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
58
|
-
0 && (module.exports = {
|
|
59
|
-
getGlobalStatistics,
|
|
60
|
-
updateGlobalStatistics
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc3RhdGlzdGljcy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7YXFsfSBmcm9tICdhcmFuZ29qcyc7XG5pbXBvcnQge0FxbFF1ZXJ5fSBmcm9tICdhcmFuZ29qcy9hcWwnO1xuaW1wb3J0IHtBcnJheUN1cnNvcn0gZnJvbSAnYXJhbmdvanMvY3Vyc29yJztcblxuaW1wb3J0IHtnZXRBY3RpdmVVc2VyQ291bnR9IGZyb20gJy4vdXNlcnMnO1xuaW1wb3J0IHtBcGlDb250ZXh0LCBTdGF0aXN0aWNzVHlwZX0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtsb2dFcnJvcn0gZnJvbSAnLi4vdXRpbHMvYW5hbHl0aWNzVXRpbHMnO1xuaW1wb3J0IHtFcnJvclR5cGVzfSBmcm9tICcuLi90eXBlcy9lcnJvcic7XG5cbmNvbnN0IGV2ZW50Q2F0ZWdvcnk6IHN0cmluZyA9ICdzdGF0aXN0aWNzJztcblxuZXhwb3J0IGNvbnN0IGdldEdsb2JhbFN0YXRpc3RpY3MgPSAoY29udGV4dDogQXBpQ29udGV4dCk6IFByb21pc2U8U3RhdGlzdGljc1R5cGU+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0R2xvYmFsU3RhdGlzdGljcyc7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBzdGF0aXN0aWNzUXVlcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiBzIElOIHN0YXRpc3RpY3NcbiAgICBGSUxURVIgcy5pc0dsb2JhbCA9PSB0cnVlXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBzYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoc3RhdGlzdGljc1F1ZXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiBFcnJvclR5cGVzLkRBVEFCQVNFX0VSUk9SXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpKTtcbn07XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVHbG9iYWxTdGF0aXN0aWNzID0gKGNvbnRleHQ6IEFwaUNvbnRleHQpOiBQcm9taXNlPFN0YXRpc3RpY3NUeXBlPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ3VwZGF0ZUdsb2JhbFN0YXRpc3RpY3MnO1xuICBjb25zdCB7ZGF0YWJhc2V9ID0gY29udGV4dDtcbiAgY29uc3QgYWN0aXZlVXNlcnMgPSBnZXRBY3RpdmVVc2VyQ291bnQoY29udGV4dCk7XG4gIGNvbnN0IHVwZGF0ZWREYXRhID0ge2FjdGl2ZVVzZXJzfTtcblxuICBjb25zdCB1cGRhdGVRdWVyeTogQXFsUXVlcnkgPSBhcWxgVVBTRVJUIHtpc0dsb2JhbDogdHJ1ZX1cbiAgSU5TRVJUICR7dXBkYXRlZERhdGF9XG4gIFVQREFURSAke3VwZGF0ZWREYXRhfVxuICBJTiBzdGF0aXN0aWNzIFJFVFVSTiBORVdgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeSh1cGRhdGVRdWVyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgIH0sIGVycm9yLCBjb250ZXh0KSk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSxzQkFBa0I7QUFJbEIsbUJBQWlDO0FBRWpDLDRCQUF1QjtBQUN2QixtQkFBeUI7QUFFekIsTUFBTSxnQkFBd0I7QUFFdkIsTUFBTSxzQkFBc0IsQ0FBQyxZQUFpRDtBQUNuRixRQUFNLFNBQWlCO0FBQ3ZCLFFBQU0sRUFBQyxTQUFRLElBQUk7QUFDbkIsUUFBTSxrQkFBNEI7QUFBQTtBQUFBO0FBQUE7QUFLbEMsU0FBTyxTQUFTLE1BQU0sZUFBZSxFQUNsQyxLQUFLLENBQUMsV0FBd0IsT0FBTyxLQUFLLENBQUMsRUFDM0MsTUFBTSxDQUFDLGNBQWlCLGdDQUFTO0FBQUEsSUFDaEM7QUFBQSxJQUNBLFVBQVU7QUFBQSxJQUNWLE9BQU8sd0JBQVc7QUFBQSxFQUNwQixHQUFHLE9BQU8sT0FBTyxDQUFDO0FBQ3RCO0FBRU8sTUFBTSx5QkFBeUIsQ0FBQyxZQUFpRDtBQUN0RixRQUFNLFNBQWlCO0FBQ3ZCLFFBQU0sRUFBQyxTQUFRLElBQUk7QUFDbkIsUUFBTSxrQkFBYyxpQ0FBbUIsT0FBTztBQUM5QyxRQUFNLGNBQWMsRUFBQyxZQUFXO0FBRWhDLFFBQU0sY0FBd0I7QUFBQSxXQUNyQixXQUFXO0FBQUEsV0FDWCxXQUFXO0FBQUE7QUFHcEIsU0FBTyxTQUFTLE1BQU0sV0FBVyxFQUM5QixLQUFLLENBQUMsV0FBd0IsT0FBTyxLQUFLLENBQUMsRUFDM0MsTUFBTSxDQUFDLGNBQWlCLGdDQUFTO0FBQUEsSUFDaEM7QUFBQSxJQUNBLFVBQVU7QUFBQSxJQUNWLE9BQU8sd0JBQVc7QUFBQSxFQUNwQixHQUFHLE9BQU8sT0FBTyxDQUFDO0FBQ3RCOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
4
|
+
RETURN s`;return p(e).query(i).then(s=>s.next()).catch(s=>n({action:r,category:l,label:c.DATABASE_ERROR},s,t))},S=t=>{const r="updateGlobalStatistics",{databaseName:e}=t,s={activeUsers:u(t)},m=a`UPSERT {isGlobal: true}
|
|
5
|
+
INSERT ${s}
|
|
6
|
+
UPDATE ${s}
|
|
7
|
+
IN statistics RETURN NEW`;return p(e).query(m).then(o=>o.next()).catch(o=>n({action:r,category:l,label:c.DATABASE_ERROR},o,t))};export{b as getGlobalStatistics,S as updateGlobalStatistics};
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc3RhdGlzdGljcy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7YXFsfSBmcm9tICdhcmFuZ29qcyc7XG5pbXBvcnQge0FxbFF1ZXJ5fSBmcm9tICdhcmFuZ29qcy9hcWwnO1xuXG5pbXBvcnQge2dldEFjdGl2ZVVzZXJDb3VudH0gZnJvbSAnLi91c2Vycyc7XG5pbXBvcnQge0Vycm9yVHlwZXN9IGZyb20gJy4uL3R5cGVzL2Vycm9yLnR5cGVzJztcbmltcG9ydCB7bG9nRXJyb3J9IGZyb20gJy4uL3V0aWxzL2FuYWx5dGljc1V0aWxzJztcbmltcG9ydCB7dXNlRGJ9IGZyb20gJy4uL3V0aWxzL2FyYW5nb2RiVXRpbHMnO1xuXG5pbXBvcnQgdHlwZSB7QXBpQ29udGV4dCwgU3RhdGlzdGljc1R5cGV9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3N0YXRpc3RpY3MnO1xuXG5leHBvcnQgY29uc3QgZ2V0R2xvYmFsU3RhdGlzdGljcyA9IChjb250ZXh0OiBBcGlDb250ZXh0KTogUHJvbWlzZTxTdGF0aXN0aWNzVHlwZT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRHbG9iYWxTdGF0aXN0aWNzJztcbiAgY29uc3Qge2RhdGFiYXNlTmFtZX0gPSBjb250ZXh0O1xuICBjb25zdCBzdGF0aXN0aWNzUXVlcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiBzIElOIHN0YXRpc3RpY3NcbiAgICBGSUxURVIgcy5pc0dsb2JhbCA9PSB0cnVlXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBzYDtcblxuICByZXR1cm4gdXNlRGIoZGF0YWJhc2VOYW1lKS5xdWVyeShzdGF0aXN0aWNzUXVlcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgIH0sIGVycm9yLCBjb250ZXh0KSk7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlR2xvYmFsU3RhdGlzdGljcyA9IChjb250ZXh0OiBBcGlDb250ZXh0KTogUHJvbWlzZTxTdGF0aXN0aWNzVHlwZT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICd1cGRhdGVHbG9iYWxTdGF0aXN0aWNzJztcbiAgY29uc3Qge2RhdGFiYXNlTmFtZX0gPSBjb250ZXh0O1xuICBjb25zdCBhY3RpdmVVc2VycyA9IGdldEFjdGl2ZVVzZXJDb3VudChjb250ZXh0KTtcbiAgY29uc3QgdXBkYXRlZERhdGEgPSB7YWN0aXZlVXNlcnN9O1xuXG4gIGNvbnN0IHVwZGF0ZVF1ZXJ5OiBBcWxRdWVyeSA9IGFxbGBVUFNFUlQge2lzR2xvYmFsOiB0cnVlfVxuICBJTlNFUlQgJHt1cGRhdGVkRGF0YX1cbiAgVVBEQVRFICR7dXBkYXRlZERhdGF9XG4gIElOIHN0YXRpc3RpY3MgUkVUVVJOIE5FV2A7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkodXBkYXRlUXVlcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgIH0sIGVycm9yLCBjb250ZXh0KSk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxPQUFBQSxNQUFVLFdBR2xCLE9BQVEsc0JBQUFDLE1BQXlCLFVBQ2pDLE9BQVEsY0FBQUMsTUFBaUIsdUJBQ3pCLE9BQVEsWUFBQUMsTUFBZSwwQkFDdkIsT0FBUSxTQUFBQyxNQUFZLHlCQUlwQixNQUFNQyxFQUF3QixhQUVqQkMsRUFBdUJDLEdBQWlELENBQ25GLE1BQU1DLEVBQWlCLHNCQUNqQixDQUFDLGFBQUFDLENBQVksRUFBSUYsRUFDakJHLEVBQTRCVjtBQUFBO0FBQUE7QUFBQSxjQUtsQyxPQUFPSSxFQUFNSyxDQUFZLEVBQUUsTUFBTUMsQ0FBZSxFQUM3QyxLQUFNQyxHQUFXQSxFQUFPLEtBQUssQ0FBQyxFQUM5QixNQUFPQyxHQUFpQlQsRUFBUyxDQUNoQyxPQUFBSyxFQUNBLFNBQVVILEVBQ1YsTUFBT0gsRUFBVyxjQUNwQixFQUFHVSxFQUFPTCxDQUFPLENBQUMsQ0FDdEIsRUFFYU0sRUFBMEJOLEdBQWlELENBQ3RGLE1BQU1DLEVBQWlCLHlCQUNqQixDQUFDLGFBQUFDLENBQVksRUFBSUYsRUFFakJPLEVBQWMsQ0FBQyxZQUREYixFQUFtQk0sQ0FBTyxDQUNkLEVBRTFCUSxFQUF3QmY7QUFBQSxXQUNyQmMsQ0FBVztBQUFBLFdBQ1hBLENBQVc7QUFBQSw0QkFHcEIsT0FBT1YsRUFBTUssQ0FBWSxFQUFFLE1BQU1NLENBQVcsRUFDekMsS0FBTUosR0FBV0EsRUFBTyxLQUFLLENBQUMsRUFDOUIsTUFBT0MsR0FBaUJULEVBQVMsQ0FDaEMsT0FBQUssRUFDQSxTQUFVSCxFQUNWLE1BQU9ILEVBQVcsY0FDcEIsRUFBR1UsRUFBT0wsQ0FBTyxDQUFDLENBQ3RCIiwKICAibmFtZXMiOiBbImFxbCIsICJnZXRBY3RpdmVVc2VyQ291bnQiLCAiRXJyb3JUeXBlcyIsICJsb2dFcnJvciIsICJ1c2VEYiIsICJldmVudENhdGVnb3J5IiwgImdldEdsb2JhbFN0YXRpc3RpY3MiLCAiY29udGV4dCIsICJhY3Rpb24iLCAiZGF0YWJhc2VOYW1lIiwgInN0YXRpc3RpY3NRdWVyeSIsICJjdXJzb3IiLCAiZXJyb3IiLCAidXBkYXRlR2xvYmFsU3RhdGlzdGljcyIsICJ1cGRhdGVkRGF0YSIsICJ1cGRhdGVRdWVyeSJdCn0K
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import{createHash as x,parseChar as w,parseId as C,parseNum as v,parseVarChar as _}from"@nlabs/utils";import{aql as D}from"arangojs";import{DateTime as U}from"luxon";import{getUser as $}from"./users";import{ErrorTypes as d}from"../types/error.types";import{logError as I,logException as L}from"../utils/analyticsUtils";import{getLimit as F,useDb as P}from"../utils/arangodbUtils";import{isAdminUser as j}from"../utils/sessionUtils";import{getStripeClient as q}from"../utils/stripeUtils";const m="subscription",X=(t,r=0,s=30)=>{const i="getList",{databaseName:e}=t,o=`FOR p IN plans
|
|
2
|
+
${F(r,s).aql}
|
|
3
|
+
SORT p.amount
|
|
4
|
+
RETURN p`;return P(e).query(o).then(n=>n.all()).then((n=[])=>n).catch(n=>I({action:i,category:m,label:d.DATABASE_ERROR},n,{}).then(()=>null).catch(c=>Promise.reject(c)))},B=t=>{const r="getItem",{databaseName:s,session:{userId:i}}=t,e=`FOR s IN subscriptions
|
|
5
|
+
FILTER s.userId == ${i} && s.cancelled > 0
|
|
6
|
+
LET plan = FIRST(
|
|
7
|
+
FOR p IN plans
|
|
8
|
+
FILTER p._key == s.planId
|
|
9
|
+
)
|
|
10
|
+
LIMIT 1
|
|
11
|
+
RETURN MERGE(s, {plan: plan})`;return P(s).query(e).then(a=>a.next()).then((a={})=>a).catch(a=>I({action:r,category:m,label:d.DATABASE_ERROR},a,{}).then(()=>null).catch(o=>Promise.reject(o)))},Y=(t,r)=>{const s="addPlan",{databaseName:i,session:e}=t;if(!j(e))return L({action:s,category:m,label:"unauthorized",value:d.INVALID_SESSION},t).then(()=>null);const o=Date.now(),n=C(r.id),c=n===""?x(`subscription-${e.userId}`):n,{amount:y,currency:p="USD",description:g,interval:R,intervalCount:h,name:f}=r,u=v(y),A=w(R,5).toLowerCase(),S=v(h,5),E=_(f,32),l=_(g,32),O=D`INSERT ${{_key:c,added:o,amount:u,currency:p,description:l,interval:A,intervalCount:S,modified:o,name:E}} IN plans RETURN NEW`;return P(i).query(O).then(b=>b.next()).then(b=>{const T=q(),Q={amount:u*100,currency:p,id:c,interval:A,interval_count:S,metadata:{},product:{name:E,statement_descriptor:l}};return T.plans.create(Q).then(()=>b)}).catch(b=>I({action:s,category:m,label:d.DATABASE_ERROR},b,{}).then(()=>null).catch(T=>Promise.reject(T)))},Z=(t,r)=>{const s="addSubscription",{databaseName:i,session:{userId:e,userAccess:a}}=t;if(!(a>2))return L({action:s,category:m,label:"unauthorized",value:"invalid_session"},t).then(()=>null);const n=Date.now(),c=C(r.id),y=c===""?x(`subscription-${e}`):c,{planId:p,trialEnd:g,trialPeriod:R}=r,h=C(p),f=0;let u=g||Date.now();return f&&(u=U.local().plus({days:R}).toMillis()),$(t,{userId:e}).then(A=>{const E=D`INSERT ${{_key:y,added:n,cancelDate:0,modified:n,planId:h,trialEnd:u,userId:e}} IN plans RETURN NEW`;return P(i).query(E).then(l=>l.next()).then((l={})=>q().subscriptions.create({customer:A.stripeCustomerId,items:[{plan:h}],metadata:{userId:e},trial_end:u}).then(()=>l)).catch(l=>I({action:s,category:m,label:d.DATABASE_ERROR},l,{}).then(()=>null).catch(N=>Promise.reject(N)))})},tt=t=>{const r="deleteSubscription",{databaseName:s}=t,i=Date.now();return B(t).then(e=>q().subscriptions.cancel(e.transactionId).then(({canceled_at:o})=>{if(o){const c=D`UPDATE s WITH ${{cancelDate:o,modified:i,planId:""}} IN subscriptions`;return P(s).query(c).then(()=>!0).catch(y=>I({action:r,category:m,label:d.DATABASE_ERROR},y,{}).then(()=>null).catch(p=>Promise.reject(p)))}return!1}))};export{Y as addPlan,Z as addSubscription,tt as deleteSubscription,X as getPlanList,B as getSubscription};
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc3Vic2NyaXB0aW9ucy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Y3JlYXRlSGFzaCwgcGFyc2VDaGFyLCBwYXJzZUlkLCBwYXJzZU51bSwgcGFyc2VWYXJDaGFyfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0RhdGVUaW1lfSBmcm9tICdsdXhvbic7XG5pbXBvcnQgc3RyaXBlIGZyb20gJ3N0cmlwZSc7XG5cbmltcG9ydCB7Z2V0VXNlcn0gZnJvbSAnLi91c2Vycyc7XG5pbXBvcnQge0Vycm9yVHlwZXN9IGZyb20gJy4uL3R5cGVzL2Vycm9yLnR5cGVzJztcbmltcG9ydCB7bG9nRXJyb3IsIGxvZ0V4Y2VwdGlvbn0gZnJvbSAnLi4vdXRpbHMvYW5hbHl0aWNzVXRpbHMnO1xuaW1wb3J0IHtnZXRMaW1pdCwgdXNlRGJ9IGZyb20gJy4uL3V0aWxzL2FyYW5nb2RiVXRpbHMnO1xuaW1wb3J0IHtpc0FkbWluVXNlcn0gZnJvbSAnLi4vdXRpbHMvc2Vzc2lvblV0aWxzJztcbmltcG9ydCB7Z2V0U3RyaXBlQ2xpZW50fSBmcm9tICcuLi91dGlscy9zdHJpcGVVdGlscyc7XG5cbmltcG9ydCB0eXBlIHtBcmFuZ29EYkxpbWl0fSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYi50eXBlcyc7XG5pbXBvcnQgdHlwZSB7QXBpQ29udGV4dH0gZnJvbSAnLi4vdHlwZXMvYXV0aC50eXBlcyc7XG5pbXBvcnQgdHlwZSB7UGF5bWVudEludGVydmFsLCBQYXltZW50UGxhbiwgUGF5bWVudFN1YnNjcmlwdGlvbn0gZnJvbSAnLi4vdHlwZXMvcGF5bWVudHMudHlwZXMnO1xuXG5cbmNvbnN0IGV2ZW50Q2F0ZWdvcnkgPSAnc3Vic2NyaXB0aW9uJztcblxuZXhwb3J0IGNvbnN0IGdldFBsYW5MaXN0ID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGZyb206IG51bWJlciA9IDAsIHRvOiBudW1iZXIgPSAzMCk6IFByb21pc2U8UGF5bWVudFBsYW5bXT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRMaXN0JztcbiAgY29uc3Qge2RhdGFiYXNlTmFtZX0gPSBjb250ZXh0O1xuICBjb25zdCBsaW1pdDogQXJhbmdvRGJMaW1pdCA9IGdldExpbWl0KGZyb20sIHRvKTtcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIHAgSU4gcGxhbnNcbiAgICAgICR7bGltaXQuYXFsfVxuICAgICAgU09SVCBwLmFtb3VudFxuICAgICAgUkVUVVJOIHBgO1xuXG4gIHJldHVybiB1c2VEYihkYXRhYmFzZU5hbWUpLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLnRoZW4oKGxpc3QgPSBbXSkgPT4gbGlzdClcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgIH0sIGVycm9yLCB7fSkudGhlbigoKSA9PiBudWxsKS5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFN1YnNjcmlwdGlvbiA9IChjb250ZXh0OiBBcGlDb250ZXh0KTogUHJvbWlzZTxQYXltZW50U3Vic2NyaXB0aW9uPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldEl0ZW0nO1xuICBjb25zdCB7ZGF0YWJhc2VOYW1lLCBzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWR9fSA9IGNvbnRleHQ7XG4gIGNvbnN0IGFxbFFyeTogc3RyaW5nID0gYEZPUiBzIElOIHN1YnNjcmlwdGlvbnNcbiAgICAgIEZJTFRFUiBzLnVzZXJJZCA9PSAke3Nlc3Npb25JZH0gJiYgcy5jYW5jZWxsZWQgPiAwXG4gICAgICBMRVQgcGxhbiA9IEZJUlNUKFxuICAgICAgICBGT1IgcCBJTiBwbGFuc1xuICAgICAgICBGSUxURVIgcC5fa2V5ID09IHMucGxhbklkXG4gICAgICApXG4gICAgICBMSU1JVCAxXG4gICAgICBSRVRVUk4gTUVSR0Uocywge3BsYW46IHBsYW59KWA7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKHN1YnNjcmlwdGlvbiA9IHt9KSA9PiBzdWJzY3JpcHRpb24pXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6IEVycm9yVHlwZXMuREFUQUJBU0VfRVJST1JcbiAgICB9LCBlcnJvciwge30pLnRoZW4oKCkgPT4gbnVsbCkuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBhZGRQbGFuID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGl0ZW06IFBheW1lbnRQbGFuKTogUHJvbWlzZTxQYXltZW50UGxhbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdhZGRQbGFuJztcbiAgY29uc3Qge2RhdGFiYXNlTmFtZSwgc2Vzc2lvbn0gPSBjb250ZXh0O1xuICBjb25zdCBpc0FkbWluID0gaXNBZG1pblVzZXIoc2Vzc2lvbik7XG5cbiAgaWYoIWlzQWRtaW4pIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6IEVycm9yVHlwZXMuSU5WQUxJRF9TRVNTSU9OXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IG5vdzogbnVtYmVyID0gRGF0ZS5ub3coKTtcbiAgY29uc3QgZm9ybWF0SWQ6IHN0cmluZyA9IHBhcnNlSWQoaXRlbS5pZCk7XG4gIGNvbnN0IHBsYW5JZDogc3RyaW5nID0gZm9ybWF0SWQgPT09ICcnID8gY3JlYXRlSGFzaChgc3Vic2NyaXB0aW9uLSR7c2Vzc2lvbi51c2VySWR9YCkgOiBmb3JtYXRJZDtcbiAgY29uc3Qge2Ftb3VudCwgY3VycmVuY3kgPSAnVVNEJywgZGVzY3JpcHRpb24sIGludGVydmFsLCBpbnRlcnZhbENvdW50LCBuYW1lfSA9IGl0ZW07XG4gIGNvbnN0IGZvcm1hdEFtb3VudDogbnVtYmVyID0gcGFyc2VOdW0oYW1vdW50KTtcbiAgY29uc3QgZm9ybWF0SW50ZXJ2YWw6IFBheW1lbnRJbnRlcnZhbCA9IHBhcnNlQ2hhcihpbnRlcnZhbCwgNSkudG9Mb3dlckNhc2UoKSBhcyBQYXltZW50SW50ZXJ2YWw7XG4gIGNvbnN0IGZvcm1hdEludGVydmFsQ250OiBudW1iZXIgPSBwYXJzZU51bShpbnRlcnZhbENvdW50LCA1KTtcbiAgY29uc3QgZm9ybWF0TmFtZTogc3RyaW5nID0gcGFyc2VWYXJDaGFyKG5hbWUsIDMyKTtcbiAgY29uc3QgZm9ybWF0RGVzYzogc3RyaW5nID0gcGFyc2VWYXJDaGFyKGRlc2NyaXB0aW9uLCAzMik7XG4gIGNvbnN0IGluc2VydDogUGF5bWVudFBsYW4gPSB7XG4gICAgX2tleTogcGxhbklkLFxuICAgIGFkZGVkOiBub3csXG4gICAgYW1vdW50OiBmb3JtYXRBbW91bnQsXG4gICAgY3VycmVuY3ksXG4gICAgZGVzY3JpcHRpb246IGZvcm1hdERlc2MsXG4gICAgaW50ZXJ2YWw6IGZvcm1hdEludGVydmFsLFxuICAgIGludGVydmFsQ291bnQ6IGZvcm1hdEludGVydmFsQ250LFxuICAgIG1vZGlmaWVkOiBub3csXG4gICAgbmFtZTogZm9ybWF0TmFtZVxuICB9O1xuICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYElOU0VSVCAke2luc2VydH0gSU4gcGxhbnMgUkVUVVJOIE5FV2A7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKHBsYW46IFBheW1lbnRQbGFuKSA9PiB7XG4gICAgICBjb25zdCBzdHJpcGVDbGllbnQgPSBnZXRTdHJpcGVDbGllbnQoKTtcbiAgICAgIGNvbnN0IHN0cmlwZVBsYW46IHN0cmlwZS5QbGFuQ3JlYXRlUGFyYW1zID0ge1xuICAgICAgICBhbW91bnQ6IGZvcm1hdEFtb3VudCAqIDEwMCxcbiAgICAgICAgY3VycmVuY3ksXG4gICAgICAgIGlkOiBwbGFuSWQsXG4gICAgICAgIGludGVydmFsOiBmb3JtYXRJbnRlcnZhbCxcbiAgICAgICAgaW50ZXJ2YWxfY291bnQ6IGZvcm1hdEludGVydmFsQ250LFxuICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICB9LFxuICAgICAgICBwcm9kdWN0OiB7XG4gICAgICAgICAgbmFtZTogZm9ybWF0TmFtZSxcbiAgICAgICAgICBzdGF0ZW1lbnRfZGVzY3JpcHRvcjogZm9ybWF0RGVzY1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gc3RyaXBlQ2xpZW50LnBsYW5zXG4gICAgICAgIC5jcmVhdGUoc3RyaXBlUGxhbilcbiAgICAgICAgLnRoZW4oKCkgPT4gcGxhbik7XG4gICAgfSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgIH0sIGVycm9yLCB7fSkudGhlbigoKSA9PiBudWxsKS5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGFkZFN1YnNjcmlwdGlvbiA9IChjb250ZXh0OiBBcGlDb250ZXh0LCBpdGVtKTogUHJvbWlzZTxQYXltZW50U3Vic2NyaXB0aW9uPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2FkZFN1YnNjcmlwdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZU5hbWUsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZCwgdXNlckFjY2Vzc319ID0gY29udGV4dDtcbiAgY29uc3QgaXNBZG1pbjogYm9vbGVhbiA9IHVzZXJBY2Nlc3MgPiAyO1xuXG4gIGlmKCFpc0FkbWluKSB7XG4gICAgcmV0dXJuIGxvZ0V4Y2VwdGlvbih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAndW5hdXRob3JpemVkJyxcbiAgICAgIHZhbHVlOiAnaW52YWxpZF9zZXNzaW9uJ1xuICAgIH0sIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCk7XG4gIH1cblxuICBjb25zdCBub3c6IG51bWJlciA9IERhdGUubm93KCk7XG4gIGNvbnN0IGZvcm1hdElkOiBzdHJpbmcgPSBwYXJzZUlkKGl0ZW0uaWQpO1xuICBjb25zdCBzdWJzY3JpcHRpb25JZDogc3RyaW5nID0gZm9ybWF0SWQgPT09ICcnID8gY3JlYXRlSGFzaChgc3Vic2NyaXB0aW9uLSR7c2Vzc2lvbklkfWApIDogZm9ybWF0SWQ7XG4gIGNvbnN0IHtwbGFuSWQsIHRyaWFsRW5kLCB0cmlhbFBlcmlvZH0gPSBpdGVtO1xuICBjb25zdCBmb3JtYXRQbGFuSWQ6IHN0cmluZyA9IHBhcnNlSWQocGxhbklkKTtcbiAgY29uc3QgZm9ybWF0VHJpYWxQZXJpb2Q6IG51bWJlciA9IDA7XG4gIGxldCBmb3JtYXRUcmlhbEVuZDogbnVtYmVyID0gdHJpYWxFbmQgfHwgRGF0ZS5ub3coKTtcblxuICBpZihmb3JtYXRUcmlhbFBlcmlvZCkge1xuICAgIGZvcm1hdFRyaWFsRW5kID0gRGF0ZVRpbWUubG9jYWwoKS5wbHVzKHtkYXlzOiB0cmlhbFBlcmlvZH0pLnRvTWlsbGlzKCk7XG4gIH1cblxuICByZXR1cm4gZ2V0VXNlcihjb250ZXh0LCB7dXNlcklkOiBzZXNzaW9uSWR9KVxuICAgIC50aGVuKCh1c2VyKSA9PiB7XG4gICAgICBjb25zdCBpbnNlcnQ6IFBheW1lbnRTdWJzY3JpcHRpb24gPSB7XG4gICAgICAgIF9rZXk6IHN1YnNjcmlwdGlvbklkLFxuICAgICAgICBhZGRlZDogbm93LFxuICAgICAgICBjYW5jZWxEYXRlOiAwLFxuICAgICAgICBtb2RpZmllZDogbm93LFxuICAgICAgICBwbGFuSWQ6IGZvcm1hdFBsYW5JZCxcbiAgICAgICAgdHJpYWxFbmQ6IGZvcm1hdFRyaWFsRW5kLFxuICAgICAgICB1c2VySWQ6IHNlc3Npb25JZFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgSU5TRVJUICR7aW5zZXJ0fSBJTiBwbGFucyBSRVRVUk4gTkVXYDtcblxuICAgICAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkoYXFsUXJ5KVxuICAgICAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgICAgICAudGhlbigoc3Vic2NyaXB0aW9uOiBQYXltZW50U3Vic2NyaXB0aW9uID0ge30pID0+IHtcbiAgICAgICAgICBjb25zdCBzdHJpcGVDbGllbnQgPSBnZXRTdHJpcGVDbGllbnQoKTtcbiAgICAgICAgICByZXR1cm4gc3RyaXBlQ2xpZW50LnN1YnNjcmlwdGlvbnNcbiAgICAgICAgICAgIC5jcmVhdGUoe1xuICAgICAgICAgICAgICBjdXN0b21lcjogdXNlci5zdHJpcGVDdXN0b21lcklkLFxuICAgICAgICAgICAgICBpdGVtczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHBsYW46IGZvcm1hdFBsYW5JZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAgICAgICB1c2VySWQ6IHNlc3Npb25JZFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB0cmlhbF9lbmQ6IGZvcm1hdFRyaWFsRW5kXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gc3Vic2NyaXB0aW9uKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICAgICAgbGFiZWw6IEVycm9yVHlwZXMuREFUQUJBU0VfRVJST1JcbiAgICAgICAgfSwgZXJyb3IsIHt9KS50aGVuKCgpID0+IG51bGwpLmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKSk7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlU3Vic2NyaXB0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZGVsZXRlU3Vic2NyaXB0aW9uJztcbiAgY29uc3Qge2RhdGFiYXNlTmFtZX0gPSBjb250ZXh0O1xuICBjb25zdCBub3c6IG51bWJlciA9IERhdGUubm93KCk7XG5cbiAgcmV0dXJuIGdldFN1YnNjcmlwdGlvbihjb250ZXh0KVxuICAgIC50aGVuKChzdWJzY3JpcHRpb24pID0+IHtcbiAgICAgIGNvbnN0IHN0cmlwZUNsaWVudCA9IGdldFN0cmlwZUNsaWVudCgpO1xuXG4gICAgICByZXR1cm4gc3RyaXBlQ2xpZW50LnN1YnNjcmlwdGlvbnNcbiAgICAgICAgLmNhbmNlbChzdWJzY3JpcHRpb24udHJhbnNhY3Rpb25JZClcbiAgICAgICAgLnRoZW4oKHtjYW5jZWxlZF9hdDogY2FuY2VsRGF0ZX0pID0+IHtcbiAgICAgICAgICAvLyBNYWtlIHN1cmUgd2UgY2FuY2VsbGVkIG9uIFN0cmlwZSBiZWZvcmUgdXBkYXRpbmcgdGhlIGRiXG4gICAgICAgICAgaWYoY2FuY2VsRGF0ZSkge1xuICAgICAgICAgICAgY29uc3QgdXBkYXRlOiBQYXltZW50U3Vic2NyaXB0aW9uID0ge1xuICAgICAgICAgICAgICBjYW5jZWxEYXRlLFxuICAgICAgICAgICAgICBtb2RpZmllZDogbm93LFxuICAgICAgICAgICAgICBwbGFuSWQ6ICcnXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBVUERBVEUgcyBXSVRIICR7dXBkYXRlfSBJTiBzdWJzY3JpcHRpb25zYDtcblxuICAgICAgICAgICAgcmV0dXJuIHVzZURiKGRhdGFiYXNlTmFtZSkucXVlcnkoYXFsUXJ5KVxuICAgICAgICAgICAgICAudGhlbigoKSA9PiB0cnVlKVxuICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGFjdGlvbixcbiAgICAgICAgICAgICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgICAgICAgICAgICBsYWJlbDogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgICAgICAgICAgICB9LCBlcnJvciwge30pLnRoZW4oKCkgPT4gbnVsbCkuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9KTtcbn07XG4iXSwKICAibWFwcGlu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QWMsS0FBSyxJQUFJLEVBRTdCLE9BQU9OLEVBQWdCVCxDQUFPLEVBQzNCLEtBQU1XLEdBQ2dCZCxFQUFnQixFQUVqQixjQUNqQixPQUFPYyxFQUFhLGFBQWEsRUFDakMsS0FBSyxDQUFDLENBQUMsWUFBYStCLENBQVUsSUFBTSxDQUVuQyxHQUFHQSxFQUFZLENBTWIsTUFBTXJDLEVBQW1CakIsa0JBTFcsQ0FDbEMsV0FBQXNELEVBQ0EsU0FBVTNCLEVBQ1YsT0FBUSxFQUNWLENBQ21ELG9CQUVuRCxPQUFPcEIsRUFBTVMsQ0FBWSxFQUFFLE1BQU1DLENBQU0sRUFDcEMsS0FBSyxJQUFNLEVBQUksRUFDZixNQUFPRyxHQUFpQmhCLEVBQVMsQ0FDaEMsT0FBQVcsRUFDQSxTQUFVTCxFQUNWLE1BQU9QLEVBQVcsY0FDcEIsRUFBR2lCLEVBQU8sQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFNLElBQUksRUFBRSxNQUFPQSxHQUFVLFFBQVEsT0FBT0EsQ0FBSyxDQUFDLENBQUMsQ0FDMUUsQ0FDQSxNQUFPLEVBQ1QsQ0FBQyxDQUNKLENBQ0wiLAogICJuYW1lcyI6IFsiY3JlYXRlSGFzaCIsICJwYXJzZUNoYXIiLCAicGFyc2VJZCIsICJwYXJzZU51bSIsICJwYXJzZVZhckNoYXIiLCAiYXFsIiwgIkRhdGVUaW1lIiwgImdldFVzZXIiLCAiRXJyb3JUeXBlcyIsICJsb2dFcnJvciIsICJsb2dFeGNlcHRpb24iLCAiZ2V0TGltaXQiLCAidXNlRGIiLCAiaXNBZG1pblVzZXIiLCAiZ2V0U3RyaXBlQ2xpZW50IiwgImV2ZW50Q2F0ZWdvcnkiLCAiZ2V0UGxhbkxpc3QiLCAiY29udGV4dCIsICJmcm9tIiwgInRvIiwgImFjdGlvbiIsICJkYXRhYmFzZU5hbWUiLCAiYXFsUXJ5IiwgImN1cnNvciIsICJsaXN0IiwgImVycm9yIiwgImdldFN1YnNjcmlwdGlvbiIsICJzZXNzaW9uSWQiLCAic3Vic2NyaXB0aW9uIiwgImFkZFBsYW4iLCAiaXRlbSIsICJzZXNzaW9uIiwgIm5vdyIsICJmb3JtYXRJZCIsICJwbGFuSWQiLCAiYW1vdW50IiwgImN1cnJlbmN5IiwgImRlc2NyaXB0aW9uIiwgImludGVydmFsIiwgImludGVydmFsQ291bnQiLCAibmFtZSIsICJmb3JtYXRBbW91bnQiLCAiZm9ybWF0SW50ZXJ2YWwiLCAiZm9ybWF0SW50ZXJ2YWxDbnQiLCAiZm9ybWF0TmFtZSIsICJmb3JtYXREZXNjIiwgInBsYW4iLCAic3RyaXBlQ2xpZW50IiwgInN0cmlwZVBsYW4iLCAiYWRkU3Vic2NyaXB0aW9uIiwgInVzZXJBY2Nlc3MiLCAic3Vic2NyaXB0aW9uSWQiLCAidHJpYWxFbmQiLCAidHJpYWxQZXJpb2QiLCAiZm9ybWF0UGxhbklkIiwgImZvcm1hdFRyaWFsUGVyaW9kIiwgImZvcm1hdFRyaWFsRW5kIiwgInVzZXIiLCAiZGVsZXRlU3Vic2NyaXB0aW9uIiwgImNhbmNlbERhdGUiXQp9Cg==
|