@nlabs/reaktor 0.3.0 → 0.4.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.
Files changed (128) hide show
  1. package/lib/actions/conversations.d.ts +14 -0
  2. package/lib/actions/conversations.js +333 -0
  3. package/lib/actions/dynamodb.js +155 -0
  4. package/lib/actions/email.js +177 -0
  5. package/lib/actions/files.js +319 -0
  6. package/lib/{data → actions}/groups.d.ts +4 -3
  7. package/lib/actions/groups.js +282 -0
  8. package/lib/actions/images.d.ts +22 -0
  9. package/lib/actions/images.js +682 -0
  10. package/lib/actions/index.js +40 -0
  11. package/lib/{data → actions}/ios.d.ts +2 -1
  12. package/lib/actions/ios.js +179 -0
  13. package/lib/actions/locations.js +112 -0
  14. package/lib/actions/messages.d.ts +13 -0
  15. package/lib/actions/messages.js +216 -0
  16. package/lib/actions/notifications.js +63 -0
  17. package/lib/{data → actions}/payments.d.ts +2 -2
  18. package/lib/actions/payments.js +491 -0
  19. package/lib/actions/posts.d.ts +19 -0
  20. package/lib/actions/posts.js +538 -0
  21. package/lib/actions/reactions.d.ts +30 -0
  22. package/lib/actions/reactions.js +340 -0
  23. package/lib/{data → actions}/s3.d.ts +1 -1
  24. package/lib/actions/s3.js +122 -0
  25. package/lib/{data → actions}/search.d.ts +2 -2
  26. package/lib/actions/search.js +99 -0
  27. package/lib/actions/sms.js +76 -0
  28. package/lib/actions/statistics.d.ts +2 -0
  29. package/lib/actions/statistics.js +63 -0
  30. package/lib/actions/subscription.js +209 -0
  31. package/lib/actions/tags.d.ts +26 -0
  32. package/lib/actions/tags.js +340 -0
  33. package/lib/actions/users.d.ts +44 -0
  34. package/lib/actions/users.js +571 -0
  35. package/lib/{data → actions}/websockets.d.ts +1 -1
  36. package/lib/actions/websockets.js +156 -0
  37. package/lib/config.d.ts +2 -3
  38. package/lib/config.js +120 -0
  39. package/lib/index.d.ts +1 -1
  40. package/lib/index.js +23 -0
  41. package/lib/templates/email/layout.d.ts +2 -0
  42. package/lib/templates/email/layout.js +292 -0
  43. package/lib/templates/email/passwordForgot.d.ts +2 -0
  44. package/lib/templates/email/passwordForgot.js +28 -0
  45. package/lib/templates/email/passwordRecovery.d.ts +2 -0
  46. package/lib/templates/email/passwordRecovery.js +25 -0
  47. package/lib/templates/email/verifyEmail.d.ts +2 -0
  48. package/lib/templates/email/verifyEmail.js +28 -0
  49. package/lib/templates/email/welcome.d.ts +2 -0
  50. package/lib/templates/email/welcome.js +28 -0
  51. package/lib/templates/sms/passwordForgot.d.ts +2 -0
  52. package/lib/templates/sms/passwordForgot.js +14 -0
  53. package/lib/templates/sms/passwordRecovery.d.ts +2 -0
  54. package/lib/templates/sms/passwordRecovery.js +14 -0
  55. package/lib/templates/sms/verifyEmail.d.ts +2 -0
  56. package/lib/templates/sms/verifyEmail.js +14 -0
  57. package/lib/templates/sms/verifyPhone.d.ts +2 -0
  58. package/lib/templates/sms/verifyPhone.js +14 -0
  59. package/lib/templates/sms/welcome.d.ts +2 -0
  60. package/lib/templates/sms/welcome.js +14 -0
  61. package/lib/types/apps.d.ts +2 -2
  62. package/lib/types/apps.js +4 -0
  63. package/lib/types/arangodb.js +4 -0
  64. package/lib/types/auth.d.ts +4 -8
  65. package/lib/types/auth.js +4 -0
  66. package/lib/types/conversations.d.ts +5 -3
  67. package/lib/types/conversations.js +4 -0
  68. package/lib/types/email.d.ts +2 -2
  69. package/lib/types/email.js +4 -0
  70. package/lib/types/files.js +4 -0
  71. package/lib/types/google.js +4 -0
  72. package/lib/types/groups.d.ts +2 -1
  73. package/lib/types/groups.js +4 -0
  74. package/lib/types/images.d.ts +8 -5
  75. package/lib/types/images.js +4 -0
  76. package/lib/types/index.d.ts +1 -1
  77. package/lib/types/index.js +37 -0
  78. package/lib/types/locations.js +4 -0
  79. package/lib/types/messages.d.ts +12 -2
  80. package/lib/types/messages.js +4 -0
  81. package/lib/types/notifications.d.ts +2 -2
  82. package/lib/types/notifications.js +4 -0
  83. package/lib/types/payments.js +4 -0
  84. package/lib/types/posts.d.ts +18 -1
  85. package/lib/types/posts.js +4 -0
  86. package/lib/types/statistics.d.ts +3 -0
  87. package/lib/types/statistics.js +4 -0
  88. package/lib/types/tags.d.ts +6 -0
  89. package/lib/types/tags.js +4 -0
  90. package/lib/types/users.d.ts +15 -10
  91. package/lib/types/users.js +4 -0
  92. package/lib/utils/analytics.d.ts +7 -0
  93. package/lib/utils/analytics.js +107 -0
  94. package/lib/utils/arangodb.d.ts +1 -1
  95. package/lib/utils/arangodb.js +122 -0
  96. package/lib/utils/auth.js +78 -0
  97. package/lib/utils/graphql.js +40 -0
  98. package/lib/utils/index.d.ts +1 -1
  99. package/lib/utils/index.js +26 -0
  100. package/lib/utils/objects.js +53 -0
  101. package/lib/utils/session.d.ts +18 -0
  102. package/lib/utils/session.js +42 -0
  103. package/package.json +35 -33
  104. package/lib/data/conversations.d.ts +0 -8
  105. package/lib/data/images.d.ts +0 -21
  106. package/lib/data/messages.d.ts +0 -9
  107. package/lib/data/posts.d.ts +0 -23
  108. package/lib/data/reactions.d.ts +0 -14
  109. package/lib/data/tags.d.ts +0 -14
  110. package/lib/data/users.d.ts +0 -17
  111. package/lib/types/reactions.d.ts +0 -15
  112. package/lib/utils/redis.d.ts +0 -1
  113. package/templates/email/layout.html +0 -279
  114. package/templates/email/passwordForgot.html +0 -15
  115. package/templates/email/passwordRecovery.html +0 -12
  116. package/templates/email/verifyEmail.html +0 -15
  117. package/templates/sms/passwordForgot.txt +0 -1
  118. package/templates/sms/passwordRecovery.txt +0 -1
  119. package/templates/sms/verifyEmail.txt +0 -1
  120. package/templates/sms/verifyPhone.txt +0 -1
  121. /package/lib/{data → actions}/dynamodb.d.ts +0 -0
  122. /package/lib/{data → actions}/email.d.ts +0 -0
  123. /package/lib/{data → actions}/files.d.ts +0 -0
  124. /package/lib/{data → actions}/index.d.ts +0 -0
  125. /package/lib/{data → actions}/locations.d.ts +0 -0
  126. /package/lib/{data → actions}/notifications.d.ts +0 -0
  127. /package/lib/{data → actions}/sms.d.ts +0 -0
  128. /package/lib/{data → actions}/subscription.d.ts +0 -0
@@ -0,0 +1,156 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
+ var __export = (target, all) => {
26
+ __markAsModule(target);
27
+ for (var name in all)
28
+ __defProp(target, name, { get: all[name], enumerable: true });
29
+ };
30
+ var __reExport = (target, module2, desc) => {
31
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
32
+ for (let key of __getOwnPropNames(module2))
33
+ if (!__hasOwnProp.call(target, key) && key !== "default")
34
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
35
+ }
36
+ return target;
37
+ };
38
+ var __toModule = (module2) => {
39
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
40
+ };
41
+ __export(exports, {
42
+ addConnection: () => addConnection,
43
+ getConnectionByConvo: () => getConnectionByConvo,
44
+ getConnectionById: () => getConnectionById,
45
+ getConnectionByUser: () => getConnectionByUser,
46
+ removeConnection: () => removeConnection
47
+ });
48
+ var import_utils = __toModule(require("@nlabs/utils"));
49
+ var import_arangojs = __toModule(require("arangojs"));
50
+ var import_aws_sdk = __toModule(require("aws-sdk"));
51
+ var import_utils2 = __toModule(require("../utils"));
52
+ const cognito = new import_aws_sdk.default.CognitoIdentityServiceProvider({
53
+ apiVersion: "2016-04-18",
54
+ region: "us-east-1"
55
+ });
56
+ const addConnection = async (connectionId, token) => {
57
+ const formatConnId = (0, import_utils.parseString)(connectionId, 32);
58
+ const formatToken = (0, import_utils.parseString)(token);
59
+ try {
60
+ const { UserAttributes: cognitoAttributes } = await cognito.getUser({ AccessToken: formatToken }).promise();
61
+ const userAttributes = cognitoAttributes.reduce((userObj, attributes) => {
62
+ const { Name: key, Value: value } = attributes;
63
+ if (key !== void 0) {
64
+ const formatKey = key.replace("custom:", "");
65
+ userObj[formatKey] = value;
66
+ }
67
+ return userObj;
68
+ }, {});
69
+ const db = (0, import_utils2.useDb)(process.env.ARANGODB_DATABASE);
70
+ const update = {
71
+ connectionId: formatConnId,
72
+ modified: Date.now()
73
+ };
74
+ const insert = __spreadProps(__spreadValues({}, update), {
75
+ _key: (0, import_utils.createHash)(`connection-${formatConnId}`),
76
+ sub: userAttributes.sub
77
+ });
78
+ const aqlQry = import_arangojs.aql`UPSERT {sub: ${insert.sub}}
79
+ INSERT ${insert}
80
+ UPDATE ${update}
81
+ IN connections RETURN NEW`;
82
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
83
+ throw error;
84
+ });
85
+ } catch (error) {
86
+ throw new Error("Unauthorized Context");
87
+ }
88
+ };
89
+ const getConnectionByUser = (userId) => {
90
+ const formatUserId = (0, import_utils.parseId)(userId);
91
+ const db = (0, import_utils2.useDb)(process.env.ARANGODB_DATABASE);
92
+ const aqlQry = import_arangojs.aql`FOR c IN connections
93
+ FILTER c.userId == ${formatUserId}
94
+ LIMIT 1
95
+ RETURN c`;
96
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
97
+ throw error;
98
+ });
99
+ };
100
+ const getConnectionById = (connectionId) => {
101
+ const formatConnId = (0, import_utils.parseString)(connectionId, 32);
102
+ const db = (0, import_utils2.useDb)(process.env.ARANGODB_DATABASE);
103
+ const aqlQry = import_arangojs.aql`FOR c IN connections
104
+ FILTER c.connectionId == ${formatConnId}
105
+ LET user = FIRST(
106
+ FOR u IN users
107
+ FILTER u.sub == c.sub
108
+ LIMIT 1
109
+ RETURN u;
110
+ )
111
+ LIMIT 1
112
+ RETURN MERGE(c, {user:user}`;
113
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
114
+ throw error;
115
+ });
116
+ };
117
+ const getConnectionByConvo = (context, convoId) => {
118
+ const { database, session: { userId: sessionId } } = context;
119
+ const sessionDocId = `users/${(0, import_utils.parseId)(sessionId)}`;
120
+ const convoDocId = `conversations/${(0, import_utils.parseId)(convoId)}`;
121
+ const db = database;
122
+ const aqlQry = import_arangojs.aql`FOR c, e IN 1..1 OUTBOUND ${sessionDocId} hasConversations
123
+ FILTER c._id == ${convoDocId}
124
+ LIMIT 1
125
+ LET u = (
126
+ FOR inUser, inEdge IN 1..1 INBOUND ${convoDocId} hasConversations
127
+ FOR n IN connections
128
+ FILTER inUser.sub == n.sub
129
+ RETURN n.connectionId
130
+ )
131
+ RETURN u`;
132
+ return db.query(aqlQry).then((cursor) => cursor.all()).catch((error) => {
133
+ throw error;
134
+ });
135
+ };
136
+ const removeConnection = (connectionId) => {
137
+ const formatConnId = (0, import_utils.parseString)(connectionId, 32);
138
+ const db = (0, import_utils2.useDb)(process.env.ARANGODB_DATABASE);
139
+ const aqlQry = import_arangojs.aql`FOR c IN connections
140
+ FILTER c.connectionId == ${formatConnId}
141
+ LIMIT 1
142
+ REMOVE c IN connections
143
+ RETURN OLD`;
144
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
145
+ throw error;
146
+ });
147
+ };
148
+ // Annotate the CommonJS export names for ESM import in node:
149
+ 0 && (module.exports = {
150
+ addConnection,
151
+ getConnectionByConvo,
152
+ getConnectionById,
153
+ getConnectionByUser,
154
+ removeConnection
155
+ });
156
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvd2Vic29ja2V0cy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtjcmVhdGVIYXNoLCBwYXJzZUlkLCBwYXJzZVN0cmluZ30gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7YXFsLCBEYXRhYmFzZX0gZnJvbSAnYXJhbmdvanMnO1xuaW1wb3J0IHtBcWxRdWVyeX0gZnJvbSAnYXJhbmdvanMvYXFsJztcbmltcG9ydCB7QXJyYXlDdXJzb3J9IGZyb20gJ2FyYW5nb2pzL2N1cnNvcic7XG5pbXBvcnQgQVdTIGZyb20gJ2F3cy1zZGsnO1xuXG5pbXBvcnQge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgnO1xuaW1wb3J0IHt1c2VEYn0gZnJvbSAnLi4vdXRpbHMnO1xuXG5jb25zdCBjb2duaXRvID0gbmV3IEFXUy5Db2duaXRvSWRlbnRpdHlTZXJ2aWNlUHJvdmlkZXIoe1xuICBhcGlWZXJzaW9uOiAnMjAxNi0wNC0xOCcsXG4gIHJlZ2lvbjogJ3VzLWVhc3QtMSdcbn0pO1xuXG5leHBvcnQgY29uc3QgYWRkQ29ubmVjdGlvbiA9IGFzeW5jIChjb25uZWN0aW9uSWQ6IHN0cmluZywgdG9rZW46IHN0cmluZyk6IFByb21pc2U8YW55PiA9PiB7XG4gIC8vIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2RlbGV0ZSc7XG4gIGNvbnN0IGZvcm1hdENvbm5JZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoY29ubmVjdGlvbklkLCAzMik7XG4gIGNvbnN0IGZvcm1hdFRva2VuOiBzdHJpbmcgPSBwYXJzZVN0cmluZyh0b2tlbik7XG5cbiAgLy8gR2V0IHVzZXIgaWQgZnJvbSB0b2tlblxuICB0cnkge1xuICAgIGNvbnN0IHtVc2VyQXR0cmlidXRlczogY29nbml0b0F0dHJpYnV0ZXN9ID0gYXdhaXQgY29nbml0by5nZXRVc2VyKHtBY2Nlc3NUb2tlbjogZm9ybWF0VG9rZW59KS5wcm9taXNlKCk7XG5cbiAgICAvLyB1c2VybmFtZSA9IGNvZ25pdG9Vc2VybmFtZTtcbiAgICBjb25zdCB1c2VyQXR0cmlidXRlczogYW55ID0gY29nbml0b0F0dHJpYnV0ZXMucmVkdWNlKCh1c2VyT2JqLCBhdHRyaWJ1dGVzOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHtOYW1lOiBrZXksIFZhbHVlOiB2YWx1ZX0gPSBhdHRyaWJ1dGVzO1xuXG4gICAgICBpZihrZXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBmb3JtYXRLZXk6IHN0cmluZyA9IGtleS5yZXBsYWNlKCdjdXN0b206JywgJycpO1xuICAgICAgICB1c2VyT2JqW2Zvcm1hdEtleV0gPSB2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHVzZXJPYmo7XG4gICAgfSwge30pO1xuXG4gICAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIocHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UpO1xuICAgIGNvbnN0IHVwZGF0ZSA9IHtcbiAgICAgIGNvbm5lY3Rpb25JZDogZm9ybWF0Q29ubklkLFxuICAgICAgbW9kaWZpZWQ6IERhdGUubm93KClcbiAgICB9O1xuICAgIGNvbnN0IGluc2VydCA9IHtcbiAgICAgIC4uLnVwZGF0ZSxcbiAgICAgIF9rZXk6IGNyZWF0ZUhhc2goYGNvbm5lY3Rpb24tJHtmb3JtYXRDb25uSWR9YCksXG4gICAgICBzdWI6IHVzZXJBdHRyaWJ1dGVzLnN1YlxuICAgIH07XG4gICAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBVUFNFUlQge3N1YjogJHtpbnNlcnQuc3VifX1cbiAgICAgIElOU0VSVCAke2luc2VydH1cbiAgICAgIFVQREFURSAke3VwZGF0ZX1cbiAgICAgIElOIGNvbm5lY3Rpb25zIFJFVFVSTiBORVdgO1xuXG4gICAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH0pO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdVbmF1dGhvcml6ZWQgQ29udGV4dCcpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29ubmVjdGlvbkJ5VXNlciA9ICh1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiA9PiB7XG4gIGNvbnN0IGZvcm1hdFVzZXJJZDogc3RyaW5nID0gcGFyc2VJZCh1c2VySWQpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBjLnVzZXJJZCA9PSAke2Zvcm1hdFVzZXJJZH1cbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIGNgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29ubmVjdGlvbkJ5SWQgPSAoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4gPT4ge1xuICBjb25zdCBmb3JtYXRDb25uSWQ6IHN0cmluZyA9IHBhcnNlU3RyaW5nKGNvbm5lY3Rpb25JZCwgMzIpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBjLmNvbm5lY3Rpb25JZCA9PSAke2Zvcm1hdENvbm5JZH1cbiAgICBMRVQgdXNlciA9IEZJUlNUKFxuICAgICAgRk9SIHUgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiB1LnN1YiA9PSBjLnN1YlxuICAgICAgTElNSVQgMVxuICAgICAgUkVUVVJOIHU7XG4gICAgKVxuICAgIExJTUlUIDFcbiAgICBSRVRVUk4gTUVSR0UoYywge3VzZXI6dXNlcn1gO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29ubmVjdGlvbkJ5Q29udm8gPSAoY29udGV4dDogQXBpQ29udGV4dCwgY29udm9JZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3Qge2RhdGFiYXNlLCBzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWR9fSA9IGNvbnRleHQ7XG4gIGNvbnN0IHNlc3Npb25Eb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7cGFyc2VJZChzZXNzaW9uSWQpfWA7XG4gIGNvbnN0IGNvbnZvRG9jSWQ6IHN0cmluZyA9IGBjb252ZXJzYXRpb25zLyR7cGFyc2VJZChjb252b0lkKX1gO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSBkYXRhYmFzZTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvbnNcbiAgRklMVEVSIGMuX2lkID09ICR7Y29udm9Eb2NJZH1cbiAgTElNSVQgMVxuICBMRVQgdSA9IChcbiAgICBGT1IgaW5Vc2VyLCBpbkVkZ2UgSU4gMS4uMSBJTkJPVU5EICR7Y29udm9Eb2NJZH0gaGFzQ29udmVyc2F0aW9uc1xuICAgIEZPUiBuIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGluVXNlci5zdWIgPT0gbi5zdWJcbiAgICBSRVRVUk4gbi5jb25uZWN0aW9uSWRcbiAgKVxuICBSRVRVUk4gdWA7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUNvbm5lY3Rpb24gPSAoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4gPT4ge1xuICAvLyBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdkZWxldGUnO1xuICBjb25zdCBmb3JtYXRDb25uSWQ6IHN0cmluZyA9IHBhcnNlU3RyaW5nKGNvbm5lY3Rpb25JZCwgMzIpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgICAgRklMVEVSIGMuY29ubmVjdGlvbklkID09ICR7Zm9ybWF0Q29ubklkfVxuICAgICAgTElNSVQgMVxuICAgICAgUkVNT1ZFIGMgSU4gY29ubmVjdGlvbnNcbiAgICAgIFJFVFVSTiBPTERgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUErQztBQUMvQyxzQkFBNEI7QUFHNUIscUJBQWdCO0FBR2hCLG9CQUFvQjtBQUVwQixNQUFNLFVBQVUsSUFBSSx1QkFBSSwrQkFBK0I7QUFBQSxFQUNyRCxZQUFZO0FBQUEsRUFDWixRQUFRO0FBQUE7QUFHSCxNQUFNLGdCQUFnQixPQUFPLGNBQXNCLFVBQWdDO0FBRXhGLFFBQU0sZUFB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
package/lib/config.d.ts CHANGED
@@ -5,17 +5,16 @@ export interface AppConfig {
5
5
  readonly giphy?: object;
6
6
  readonly google?: object;
7
7
  readonly image?: object;
8
- readonly redis?: object;
9
8
  readonly stripe?: object;
10
9
  readonly twilio?: object;
11
10
  }
12
11
  export interface EnvConfig {
13
- readonly default: AppConfig;
12
+ readonly local: AppConfig;
14
13
  readonly dev: AppConfig;
15
14
  readonly prod: AppConfig;
16
15
  readonly test: AppConfig;
17
16
  }
18
17
  export declare class Config {
19
- static values: EnvConfig;
18
+ static values(): EnvConfig;
20
19
  static get(path: string | string[]): any;
21
20
  }
package/lib/config.js ADDED
@@ -0,0 +1,120 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ Config: () => Config
26
+ });
27
+ var import_get = __toModule(require("lodash/get"));
28
+ var import_merge = __toModule(require("lodash/merge"));
29
+ const appPackage = require("../package.json");
30
+ class Config {
31
+ static values() {
32
+ return {
33
+ local: {
34
+ app: {
35
+ name: "reaktor",
36
+ url: "reaktor.io",
37
+ version: appPackage.version
38
+ },
39
+ arangodb: {
40
+ database: process.env.ARANGODB_DATABASE || "reaktor",
41
+ dump: "/Applications/ArangoDB-CLI.app/Contents/MacOS/arangodump",
42
+ password: process.env.ARANGODB_PASSWORD,
43
+ port: process.env.ARANGODB_PORT,
44
+ restore: "/Applications/ArangoDB-CLI.app/Contents/MacOS/arangorestore",
45
+ url: `${process.env.ARANGODB_URL || "db.reaktor.io"}:${process.env.ARANGODB_PORT || "8529"}`,
46
+ username: process.env.ARANGODB_USERNAME || "reaktor"
47
+ },
48
+ aws: {
49
+ Bucket: "dev.reaktor.io",
50
+ accessKeyId: "AKIAJIYDT3EA2ZFMTJNA",
51
+ maxRetries: 3,
52
+ region: "us-east-1",
53
+ secretAccessKey: "bUssQRtJTZC7geF9RDH5KCn8CalVnf2VT34yqS+9",
54
+ signatureVersion: "v4"
55
+ },
56
+ giphy: {
57
+ key: "dc6zaTOxFJmzC"
58
+ },
59
+ google: {
60
+ analytics: {
61
+ accountId: "78158717",
62
+ trackingId: "UA-78158717-1"
63
+ },
64
+ geocode: {
65
+ key: "AIzaSyBwjmpBjWhiJoBCZiYzRurM9m4WnCxslv0",
66
+ url: "https://maps.googleapis.com/maps/api/geocode/json"
67
+ },
68
+ key: "AIzaSyC3_f2Us3y0qjbyMJ-4t5ObtCzfq_FHIgQ"
69
+ },
70
+ image: {
71
+ imgQuality: 90,
72
+ imgSize: 1500,
73
+ thmQuality: 80,
74
+ thmSize: 150
75
+ },
76
+ stripe: {
77
+ token: "sk_test_LS956be57YUXTB5a4sLGb5BQ"
78
+ },
79
+ twilio: {
80
+ number: "+15005550006",
81
+ sid: "AC6bd7f513cbed2e5134c650be06cc732e",
82
+ token: "520ae739e761bab759b147f1ad28278f"
83
+ }
84
+ },
85
+ dev: {
86
+ aws: {
87
+ Bucket: "dev.reaktor.io"
88
+ }
89
+ },
90
+ prod: {
91
+ arangodb: {
92
+ dump: "/usr/bin/arangodump",
93
+ restore: "/usr/bin/arangorestore"
94
+ },
95
+ aws: {
96
+ Bucket: "box.reaktor.io"
97
+ },
98
+ stripe: {
99
+ token: "sk_live_bElZl8RLhMCJy33KG4lyLD4o"
100
+ },
101
+ twilio: {
102
+ number: "+18554165227",
103
+ sid: "AC90b0528a911e652d643329a4d7b4d2c7",
104
+ token: "a7941d173bd4846d0966a186e9865b72"
105
+ }
106
+ },
107
+ test: {}
108
+ };
109
+ }
110
+ static get(path) {
111
+ const environment = process.env.stage || "local";
112
+ const configValues = (0, import_merge.default)(this.values().local, this.values()[environment], { environment });
113
+ return (0, import_get.default)(configValues, path);
114
+ }
115
+ }
116
+ // Annotate the CommonJS export names for ESM import in node:
117
+ 0 && (module.exports = {
118
+ Config
119
+ });
120
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoL2dldCc7XG5pbXBvcnQgbWVyZ2UgZnJvbSAnbG9kYXNoL21lcmdlJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBDb25maWcge1xuICByZWFkb25seSBhcHA/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGFyYW5nb2RiPzogb2JqZWN0O1xuICByZWFkb25seSBhd3M/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGdpcGh5Pzogb2JqZWN0O1xuICByZWFkb25seSBnb29nbGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGltYWdlPzogb2JqZWN0O1xuICByZWFkb25seSBzdHJpcGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IHR3aWxpbz86IG9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZDb25maWcge1xuICByZWFkb25seSBsb2NhbDogQXBwQ29uZmlnO1xuICByZWFkb25seSBkZXY6IEFwcENvbmZpZztcbiAgcmVhZG9ubHkgcHJvZDogQXBwQ29uZmlnO1xuICByZWFkb25seSB0ZXN0OiBBcHBDb25maWc7XG59XG5cbmNvbnN0IGFwcFBhY2thZ2U6IGFueSA9IHJlcXVpcmUoJy4uL3BhY2thZ2UuanNvbicpO1xuXG5leHBvcnQgY2xhc3MgQ29uZmlnIHtcbiAgc3RhdGljIHZhbHVlcygpOiBFbnZDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBsb2NhbDoge1xuICAgICAgICBhcHA6IHtcbiAgICAgICAgICBuYW1lOiAncmVha3RvcicsXG4gICAgICAgICAgdXJsOiAncmVha3Rvci5pbycsXG4gICAgICAgICAgdmVyc2lvbjogYXBwUGFja2FnZS52ZXJzaW9uXG4gICAgICAgIH0sXG4gICAgICAgIGFyYW5nb2RiOiB7XG4gICAgICAgICAgZGF0YWJhc2U6IHByb2Nlc3MuZW52LkFSQU5HT0RCX0RBVEFCQVNFIHx8ICdyZWFrdG9yJyxcbiAgICAgICAgICBkdW1wOiAnL0FwcGxpY2F0aW9ucy9BcmFuZ29EQi1DTEkuYXBwL0NvbnRlbnRzL01hY09TL2FyYW5nb2R1bXAnLFxuICAgICAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5BUkFOR09EQl9QQVNTV09SRCxcbiAgICAgICAgICBwb3J0OiBwcm9jZXNzLmVudi5BUkFOR09EQl9QT1JULFxuICAgICAgICAgIHJlc3RvcmU6ICcvQXBwbGljYXRpb25zL0FyYW5nb0RCLUNMSS5hcHAvQ29udGVudHMvTWFjT1MvYXJhbmdvcmVzdG9yZScsXG4gICAgICAgICAgdXJsOiBgJHtwcm9jZXNzLmVudi5BUkFOR09EQl9VUkwgfHwgJ2RiLnJlYWt0b3IuaW8nfToke3Byb2Nlc3MuZW52LkFSQU5HT0RCX1BPUlQgfHwgJzg1MjknfWAsXG4gICAgICAgICAgdXNlcm5hbWU6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1VTRVJOQU1FIHx8ICdyZWFrdG9yJ1xuICAgICAgICB9LFxuICAgICAgICBhd3M6IHtcbiAgICAgICAgICBCdWNrZXQ6ICdkZXYucmVha3Rvci5pbycsXG4gICAgICAgICAgYWNjZXNzS2V5SWQ6ICdBS0lBSklZRFQzRUEyWkZNVEpOQScsXG4gICAgICAgICAgbWF4UmV0cmllczogMyxcbiAgICAgICAgICByZWdpb246ICd1cy1lYXN0LTEnLFxuICAgICAgICAgIHNlY3JldEFjY2Vzc0tleTogJ2JVc3NRUnRKVFpDN2dlRjlSREg1S0NuOENhbFZuZjJWVDM0eXFTKzknLFxuICAgICAgICAgIHNpZ25hdHVyZVZlcnNpb246ICd2NCdcbiAgICAgICAgfSxcbiAgICAgICAgZ2lwaHk6IHtcbiAgICAgICAgICBrZXk6ICdkYzZ6YVRPeEZKbXpDJ1xuICAgICAgICB9LFxuICAgICAgICBnb29nbGU6IHtcbiAgICAgICAgICBhbmFseXRpY3M6IHtcbiAgICAgICAgICAgIGFjY291bnRJZDogJzc4MTU4NzE3JyxcbiAgICAgICAgICAgIHRyYWNraW5nSWQ6ICdVQS03ODE1ODcxNy0xJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZ2VvY29kZToge1xuICAgICAgICAgICAga2V5OiAnQUl6YVN5QndqbXBCaldoaUpvQkNaaVl6UnVyTTltNFduQ3hzbHYwJyxcbiAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzL2FwaS9nZW9jb2RlL2pzb24nXG4gICAgICAgICAgfSxcbiAgICAgICAgICBrZXk6ICdBSXphU3lDM19mMlVzM3kwcWpieU1KLTR0NU9idEN6ZnFfRkhJZ1EnXG4gICAgICAgIH0sXG4gICAgICAgIGltYWdlOiB7XG4gICAgICAgICAgaW1nUXVhbGl0eTogOTAsXG4gICAgICAgICAgaW1nU2l6ZTogMTUwMCxcbiAgICAgICAgICB0aG1RdWFsaXR5OiA4MCxcbiAgICAgICAgICB0aG1TaXplOiAxNTBcbiAgICAgICAgfSxcbiAgICAgICAgc3RyaXBlOiB7XG4gICAgICAgICAgdG9rZW46ICdza190ZXN0X0xTOTU2YmU1N1lVWFRCNWE0c0xHYjVCUSdcbiAgICAgICAgfSxcbiAgICAgICAgdHdpbGlvOiB7XG4gICAgICAgICAgbnVtYmVyOiAnKzE1MDA1NTUwMDA2JyxcbiAgICAgICAgICBzaWQ6ICdBQzZiZDdmNTEzY2JlZDJlNTEzNGM2NTBiZTA2Y2M3MzJlJyxcbiAgICAgICAgICB0b2tlbjogJzUyMGFlNzM5ZTc2MWJhYjc1OWIxNDdmMWFkMjgyNzhmJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGV2OiB7XG4gICAgICAgIGF3czoge1xuICAgICAgICAgIEJ1Y2tldDogJ2Rldi5yZWFrdG9yLmlvJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcHJvZDoge1xuICAgICAgICBhcmFuZ29kYjoge1xuICAgICAgICAgIGR1bXA6ICcvdXNyL2Jpbi9hcmFuZ29kdW1wJyxcbiAgICAgICAgICByZXN0b3JlOiAnL3Vzci9iaW4vYXJhbmdvcmVzdG9yZSdcbiAgICAgICAgfSxcbiAgICAgICAgYXdzOiB7XG4gICAgICAgICAgQnVja2V0OiAnYm94LnJlYWt0b3IuaW8nXG4gICAgICAgIH0sXG4gICAgICAgIHN0cmlwZToge1xuICAgICAgICAgIHRva2VuOiAnc2tfbGl2ZV9iRWxabDhSTGhNQ0p5MzNLRzRseUxENG8nXG4gICAgICAgIH0sXG4gICAgICAgIHR3aWxpbzoge1xuICAgICAgICAgIG51bWJlcjogJysxODU1NDE2NTIyNycsXG4gICAgICAgICAgc2lkOiAnQUM5MGIwNTI4YTkxMWU2NTJkNjQzMzI5YTRkN2I0ZDJjNycsXG4gICAgICAgICAgdG9rZW46ICdhNzk0MWQxNzNiZDQ4NDZkMDk2NmExODZlOTg2NWI3MidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHRlc3Q6IHtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldChwYXRoOiBzdHJpbmcgfCBzdHJpbmdbXSk6IGFueSB7XG4gICAgY29uc3QgZW52aXJvbm1lbnQ6IHN0cmluZyA9IHByb2Nlc3MuZW52LnN0YWdlIHx8ICdsb2NhbCc7XG4gICAgY29uc3QgY29uZmlnVmFsdWVzOiBvYmplY3QgPSBtZXJnZSh0aGlzLnZhbHVlcygpLmxvY2FsLCB0aGlzLnZhbHVlcygpW2Vudmlyb25tZW50XSwge2Vudmlyb25tZW50fSk7XG4gICAgcmV0dXJuIGdldChjb25maWdWYWx1ZXMsIHBhdGgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUlBLGlCQUFnQjtBQUNoQixtQkFBa0I7QUFvQmxCLE1BQU0sYUFBa0IsUUFBUTtBQUV6QixhQUFhO0FBQUEsU0FDWCxTQUFvQjtBQUN6QixXQUFPO0FBQUEsTUFDTCxPQUFPO0FBQUEsUUFDTCxLQUFLO0FBQUEsVUFDSCxNQUFNO0FBQUEsVUFDTixLQUFLO0FBQUEsVUFDTCxTQUFTLFdBQVc7QUFBQTtBQUFBLFFBRXRCLFVBQVU7QUFBQSxVQUNSLFVBQVUsUUFBUSxJQUFJLHFCQUFxQjtBQUFBLFVBQzNDLE1BQU07QUFBQSxVQUNOLFVBQVUsUUFBUSxJQUFJO0FBQUEsVUFDdEIsTUFBTSxRQUFRLElBQUk7QUFBQSxVQUNsQixTQUFTO0FBQUEsVUFDVCxLQUFLLEdBQUcsUUFBUSxJQUFJLGdCQUFnQixtQkFBbUIsUUFBUSxJQUFJLGlCQUFpQjtBQUFBLFVBQ3BGLFVBQVUsUUFBUSxJQUFJLHFCQUFxQjtBQUFBO0FBQUEsUUFFN0MsS0FBSztBQUFBLFVBQ0gsUUFBUTtBQUFBLFVBQ1IsYUFBYTtBQUFBLFVBQ2IsWUFBWTtBQUFBLFVBQ1osUUFBUTtBQUFBLFVBQ1IsaUJBQWlCO0FBQUEsVUFDakIsa0JBQWtCO0FBQUE7QUFBQSxRQUVwQixPQUFPO0FBQUEsVUFDTCxLQUFLO0FBQUE7QUFBQSxRQUVQLFFBQVE7QUFBQSxVQUNOLFdBQVc7QUFBQSxZQUNULFdBQVc7QUFBQSxZQUNYLFlBQVk7QUFBQTtBQUFBLFVBRWQsU0FBUztBQUFBLFlBQ1AsS0FBSztBQUFBLFlBQ0wsS0FBSztBQUFBO0FBQUEsVUFFUCxLQUFLO0FBQUE7QUFBQSxRQUVQLE9BQU87QUFBQSxVQUNMLFlBQVk7QUFBQSxVQUNaLFNBQVM7QUFBQSxVQUNULFlBQVk7QUFBQSxVQUNaLFNBQVM7QUFBQTtBQUFBLFFBRVgsUUFBUTtBQUFBLFVBQ04sT0FBTztBQUFBO0FBQUEsUUFFVCxRQUFRO0FBQUEsVUFDTixRQUFRO0FBQUEsVUFDUixLQUFLO0FBQUEsVUFDTCxPQUFPO0FBQUE7QUFBQTtBQUFBLE1BR1gsS0FBSztBQUFBLFFBQ0gsS0FBSztBQUFBLFVBQ0gsUUFBUTtBQUFBO0FBQUE7QUFBQSxNQUdaLE1BQU07QUFBQSxRQUNKLFVBQVU7QUFBQSxVQUNSLE1BQU07QUFBQSxVQUNOLFNBQVM7QUFBQTtBQUFBLFFBRVgsS0FBSztBQUFBLFVBQ0gsUUFBUTtBQUFBO0FBQUEsUUFFVixRQUFRO0FBQUEsVUFDTixPQUFPO0FBQUE7QUFBQSxRQUVULFFBQVE7QUFBQSxVQUNOLFFBQVE7QUFBQSxVQUNSLEtBQUs7QUFBQSxVQUNMLE9BQU87QUFBQTtBQUFBO0FBQUEsTUFHWCxNQUFNO0FBQUE7QUFBQTtBQUFBLFNBS0gsSUFBSSxNQUE4QjtBQUN2QyxVQUFNLGNBQXNCLFFBQVEsSUFBSSxTQUFTO0FBQ2pELFVBQU0sZUFBdUIsMEJBQU0sS0FBSyxTQUFTLE9BQU8sS0FBSyxTQUFTLGNBQWMsRUFBQztBQUNyRixXQUFPLHdCQUFJLGNBQWM7QUFBQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo=
package/lib/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export * from './data';
1
+ export * from './actions';
2
2
  export * from './utils';
3
3
  export * from './types';
package/lib/index.js ADDED
@@ -0,0 +1,23 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __reExport = (target, module2, desc) => {
9
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
10
+ for (let key of __getOwnPropNames(module2))
11
+ if (!__hasOwnProp.call(target, key) && key !== "default")
12
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
13
+ }
14
+ return target;
15
+ };
16
+ var __toModule = (module2) => {
17
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
18
+ };
19
+ __markAsModule(exports);
20
+ __reExport(exports, __toModule(require("./actions")));
21
+ __reExport(exports, __toModule(require("./utils")));
22
+ __reExport(exports, __toModule(require("./types")));
23
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUlBLG9CQUFjO0FBQ2Qsb0JBQWM7QUFDZCxvQkFBYzsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,2 @@
1
+ declare const _default: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>\n <title>[appName]</title>\n <link type=\"text/css\" rel=\"stylesheet\" href=\"https://fonts.googleapis.com/css?family=Open+Sans:400,700\"/>\n <style type=\"text/css\">\n .ExternalClass,\n .ExternalClass p,\n .ExternalClass span,\n .ExternalClass font,\n .ExternalClass td,\n .ExternalClass div {\n line-height: 100%;\n }\n\n body, img, div, p, ul, li, span, strong, a {\n margin: 0;\n padding: 0;\n }\n\n table {\n border-spacing: 0;\n }\n\n table td {\n border-collapse: collapse;\n }\n\n body {\n color: #000;\n font-family: 'Open Sans', sans-serif, Arial, Helvetica;\n font-size: 14px;\n line-height: 1;\n background-color: #EAEAEA;\n width: 100% !important;\n -webkit-text-size-adjust: none;\n -ms-text-size-adjust: none;\n }\n\n a,\n a:link,\n a:hover,\n a[href^=\"tel\"], a[href^=\"sms\"] {\n color: #000;\n outline: none;\n text-decoration: none !important;\n }\n\n a {\n border: none !important;\n outline: none !important;\n }\n\n a[href^=\"tel\"], a[href^=\"sms\"] {\n pointer-events: none;\n cursor: default;\n }\n\n .mobile_link a[href^=\"tel\"],\n .mobile_link a[href^=\"sms\"] {\n text-decoration: default;\n color: #000 !important;\n pointer-events: auto;\n cursor: default;\n }\n\n img {\n border: none;\n outline: none;\n text-decoration: none;\n height: auto;\n max-width: 100%;\n }\n\n table {\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n }\n\n tr,\n td {\n margin: 0;\n padding: 0;\n }\n\n @media only screen and (max-width: 799px) {\n table[class=\"Externalmain\"] {\n width: 100% !important;\n }\n }\n\n @media only screen and (max-width: 499px) {\n table[class=\"ExternalClass\"] {\n width: 100% !important;\n }\n }\n </style>\n</head>\n\n<body text=\"#333333\" link=\"#9d470a\" bgcolor=\"#EAEAEA\" alink=\"#9d470a\" yahoo=\"fix\" style=\"width:100% !important; color:#ffffff; font-family: 'Open Sans', Arial, Helvetica, sans-serif; font-size:12px; line-height:1;\">\n<table width=\"100%\" class=\"Externalmain\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\">\n <tr>\n <td>\n <table width=\"600\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\" class=\"ExternalClass\">\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\">\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\">\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n <tr>\n <td height=\"35\" style=\"background:#000000;\">\n <img width=\"1\" height=\"1\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td align=\"center\" style=\"background:#000000;\">\n <img width=\"130\" height=\"130\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/apps/[appId]/images/email/logo.png\"/>\n </td>\n </tr>\n <tr>\n <td height=\"30\" style=\"background:#000000;\">\n <img width=\"1\" height=\"1\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"text-align: center;background: #ffffff;\">\n <tr>\n <td height=\"50\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n <tr>\n <td width=\"100%\" style=\"font-family: 'Open Sans', Arial, Helvetica, sans-serif; color: #77737b; font-size: 14px; letter-spacing: 1px; text-transform: uppercase;\">\n [subTitle]\n </td>\n </tr>\n <tr>\n <td height=\"15\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n <tr>\n <td align=\"center\">\n <img width=\"56\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/border.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n <tr>\n <td height=\"15\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n <tr>\n <td width=\"100%\" style=\"font-family: 'Open Sans', Arial, Helvetica, sans-serif; color: #1e1c20; font-size: 30px; letter-spacing: 3px; text-transform: uppercase; font-weight: bold;\">\n [title]\n </td>\n </tr>\n <tr>\n <td height=\"30\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"color: #000000; text-align: center;background: #ffffff;\">\n <tr>\n <td width=\"30\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n <td>\n [message]\n </td>\n <td width=\"30\">\n <img width=\"1\" height=\"1\" border=\"0\" src=\"https://box.reaktor.io/images/email/spacer.png\" alt=\"\" title=\"\"/>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"background: #000000;\">\n <tr>\n <td height=\"20\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n <tr>\n <td align=\"center\" width=\"89\">\n <a href=\"#\">\n <img width=\"90\" height=\"30\" border=\"0\" title=\"\" alt=\"[appName]\" src=\"https://box.reaktor.io/apps/[appId]/images/email/logo-txt.png\"/>\n </a>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n <tr>\n <td height=\"20\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n <tr>\n <td height=\"23\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td align=\"center\">\n <table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\">\n <tr>\n [links]\n </tr>\n </table>\n </td>\n </tr>\n <tr>\n <td>\n <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"text-align: center;\">\n <tr>\n <td height=\"30\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td style=\"font-family: 'Open Sans', Arial, Helvetica, sans-serif; color: #333;font-size: 12px;\">\n To stop receiving these emails\n <a style=\"font-size: 12px; font-family: 'Open Sans', Arial, Helvetica, sans-serif; color: #333; text-decoration: underline;\" href=\"#\"> unsubscribe</a>.\n </td>\n </tr>\n <tr>\n <td height=\"13\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n <tr>\n <td style=\"font-family: 'Open Sans', Arial, Helvetica, sans-serif; color: #333; font-size: 12px;\">\n Powered by <a style=\"color: #333;\" href=\"https://reaktor.io\">Reaktor.io</a>\n </td>\n </tr>\n <tr>\n <td height=\"35\">\n <img width=\"1\" height=\"1\" border=\"0\" title=\"\" alt=\"\" src=\"https://box.reaktor.io/images/email/spacer.png\"/>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n</table>\n</body>\n</html>";
2
+ export default _default;