@plusscommunities/pluss-newsletter-aws-training 1.4.3 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,341 @@
1
+ const values = {
2
+ entityKey: "newsTwo",
3
+ serviceKey: "newsletterTwo",
4
+ updateKey: "newsTwo",
5
+ tableKeyNewsletterEntries: "NewsletterEntriesTwo",
6
+ tableKeyNewsletterSubmissions: "NewsletterSubmissionsTwo",
7
+ tableKeyNewsletterUserEntries: "NewsletterUserEntriesTwo",
8
+ tableNameNewsletterEntries: "newsletterentriesTwo",
9
+ tableNameNewsletterSubmissions: "newslettersubmissionsTwo",
10
+ tableNameNewsletterUserEntries: "newsletteruserentriesTwo",
11
+ stringPostfixSubmissionEmail: "newssubmissionemailTwo",
12
+ permissionNewsletter: "newsletterTwo",
13
+ permissionNewsletterSubmit: "newsletterSubmitTwo",
14
+ activityAddNewsSubmission: "AddNewsSubmissionTwo",
15
+ activityAddNews: "AddNewsTwo",
16
+ activityDeleteNews: "DeleteNewsTwo",
17
+ activityEditNews: "EditNewsTwo",
18
+ notificationApproveNewsSubmission: "ApproveNewsSubmissionTwo",
19
+ notificationRejectNewsSubmission: "RejectNewsSubmissionTwo",
20
+ notificationNewsletterPublished: "NewsletterPublishedTwo",
21
+ routeEntityPath: "/newsTwo/article/:id",
22
+ screenNewsletterPost: "newsletterPostTwo",
23
+ textNewNewsletterSubmission: "New Newsletter Submission",
24
+ textHasSubmittedANewNewsletterPost:
25
+ "has submitted a new newsletter post for review.",
26
+ };
27
+ exports.values = values;
28
+
29
+ exports.permissions = [
30
+ values.permissionNewsletter,
31
+ values.permissionNewsletterSubmit,
32
+ ];
33
+
34
+ exports.entity = {
35
+ key: values.entityKey,
36
+ permission: values.permissionNewsletter,
37
+ table: values.tableNameNewsletterEntries,
38
+ id: "RowId",
39
+ webPath: values.routeEntityPath,
40
+ appPath: values.screenNewsletterPost,
41
+ };
42
+
43
+ exports.serverless = {
44
+ name: values.serviceKey,
45
+ apis: [
46
+ {
47
+ name: "addNewsletterEntry",
48
+ file: "addNewsletterEntry",
49
+ function: "addNewsletterEntry",
50
+ memorySize: 1024,
51
+ timeout: 30,
52
+ path: "add",
53
+ method: "post",
54
+ headers: ["Content-Type", "authkey"],
55
+ },
56
+ {
57
+ name: "editNewsletterEntry",
58
+ file: "editNewsletterEntry",
59
+ function: "editNewsletterEntry",
60
+ memorySize: 128,
61
+ timeout: 10,
62
+ path: "edit",
63
+ method: "post",
64
+ headers: ["Content-Type", "authkey"],
65
+ },
66
+ {
67
+ name: "editNewsletterSubmission",
68
+ file: "editNewsletterSubmission",
69
+ function: "editNewsletterSubmission",
70
+ memorySize: 128,
71
+ timeout: 10,
72
+ path: "editSubmission",
73
+ method: "post",
74
+ headers: ["Content-Type", "authkey"],
75
+ },
76
+ {
77
+ name: "getNewsletterEntry",
78
+ file: "getNewsletterEntry",
79
+ function: "getNewsletterEntry",
80
+ memorySize: 128,
81
+ timeout: 10,
82
+ path: "get/{id}",
83
+ method: "get",
84
+ headers: ["Content-Type", "authkey"],
85
+ },
86
+ {
87
+ name: "getNews",
88
+ file: "getNews",
89
+ function: "getNews",
90
+ memorySize: 128,
91
+ timeout: 10,
92
+ path: "get2/{action}",
93
+ method: "get",
94
+ headers: ["Content-Type", "authkey"],
95
+ },
96
+ {
97
+ name: "getNewsletterEntries",
98
+ file: "getNewsletterEntries",
99
+ function: "getNewsletterEntries",
100
+ memorySize: 1024,
101
+ timeout: 30,
102
+ path: "get",
103
+ method: "get",
104
+ headers: ["Content-Type", "authkey"],
105
+ },
106
+ {
107
+ name: "getFeaturedNewsletterEntries",
108
+ file: "getFeaturedNewsletterEntries",
109
+ function: "getFeaturedNewsletterEntries",
110
+ memorySize: 128,
111
+ timeout: 10,
112
+ path: "getFeatured",
113
+ method: "get",
114
+ headers: ["Content-Type", "authkey"],
115
+ },
116
+ {
117
+ name: "getRecentNewsletterEntries",
118
+ file: "getRecentNewsletterEntries",
119
+ function: "getRecentNewsletterEntries",
120
+ memorySize: 128,
121
+ timeout: 10,
122
+ path: "recent",
123
+ method: "get",
124
+ headers: ["Content-Type", "authkey"],
125
+ },
126
+ {
127
+ name: "searchAvailableNews",
128
+ file: "searchAvailableNews",
129
+ function: "searchAvailableNews",
130
+ memorySize: 128,
131
+ timeout: 10,
132
+ path: "content/search",
133
+ method: "get",
134
+ headers: ["Content-Type", "authkey"],
135
+ },
136
+ {
137
+ name: "getAvailableNews",
138
+ file: "getAvailableNews",
139
+ function: "getAvailableNews",
140
+ memorySize: 128,
141
+ timeout: 10,
142
+ path: "content/get",
143
+ method: "get",
144
+ headers: ["Content-Type", "authkey"],
145
+ },
146
+ {
147
+ name: "getPublishedEntries",
148
+ file: "getPublishedEntries",
149
+ function: "getPublishedEntries",
150
+ memorySize: 128,
151
+ timeout: 10,
152
+ path: "content/specific",
153
+ method: "get",
154
+ headers: ["Content-Type", "authkey"],
155
+ },
156
+ {
157
+ name: "getPublishedAvailableNews",
158
+ file: "getPublishedAvailableNews",
159
+ function: "getPublishedAvailableNews",
160
+ memorySize: 128,
161
+ timeout: 10,
162
+ path: "content/published",
163
+ method: "get",
164
+ headers: ["Content-Type", "authkey"],
165
+ },
166
+ {
167
+ name: "deleteNewsletterEntry",
168
+ file: "deleteNewsletterEntry",
169
+ function: "deleteNewsletterEntry",
170
+ memorySize: 128,
171
+ timeout: 10,
172
+ path: "remove",
173
+ method: "post",
174
+ headers: ["Content-Type", "authkey"],
175
+ },
176
+ {
177
+ name: "hasNewsletterAccess",
178
+ file: "hasNewsletterAccess",
179
+ function: "hasNewsletterAccess",
180
+ memorySize: 128,
181
+ timeout: 10,
182
+ path: "access",
183
+ method: "get",
184
+ headers: ["Content-Type", "authkey"],
185
+ },
186
+ {
187
+ name: "getNewsletterSubmissions",
188
+ file: "getNewsletterSubmissions",
189
+ function: "getNewsletterSubmissions",
190
+ memorySize: 128,
191
+ timeout: 10,
192
+ path: "submissions/get",
193
+ method: "get",
194
+ headers: ["Content-Type", "authkey"],
195
+ },
196
+ {
197
+ name: "getNewsletterSubmission",
198
+ file: "getNewsletterSubmission",
199
+ function: "getNewsletterSubmission",
200
+ memorySize: 128,
201
+ timeout: 10,
202
+ path: "submissions/get/{id}",
203
+ method: "get",
204
+ headers: ["Content-Type", "authkey"],
205
+ },
206
+ {
207
+ name: "handleNewsletterSubmission",
208
+ file: "handleNewsletterSubmission",
209
+ function: "handleNewsletterSubmission",
210
+ memorySize: 128,
211
+ timeout: 10,
212
+ path: "submissions/handle",
213
+ method: "post",
214
+ headers: ["Content-Type", "authkey"],
215
+ },
216
+ {
217
+ name: "getSubmissionCount",
218
+ file: "getSubmissionCount",
219
+ function: "getSubmissionCount",
220
+ memorySize: 128,
221
+ timeout: 10,
222
+ path: "submissions/count",
223
+ method: "get",
224
+ headers: ["Content-Type", "authkey"],
225
+ },
226
+ {
227
+ name: "getTaggedNews",
228
+ file: "getTaggedNews",
229
+ function: "getTaggedNews",
230
+ memorySize: 128,
231
+ timeout: 10,
232
+ path: "tagged/get",
233
+ method: "get",
234
+ headers: ["Content-Type", "authkey"],
235
+ },
236
+ ],
237
+ triggers: [
238
+ {
239
+ name: "newsletterChanged",
240
+ file: "newsletterChanged",
241
+ function: "newsletterChanged",
242
+ memorySize: 2048,
243
+ timeout: 30,
244
+ table: values.tableKeyNewsletterEntries,
245
+ },
246
+ ],
247
+ schedules: [
248
+ {
249
+ name: "watchNewsletter",
250
+ file: "watchNewsletter",
251
+ function: "watchNewsletter",
252
+ memorySize: "2048",
253
+ timeout: "300",
254
+ rate: "1/5 * * * ? *",
255
+ },
256
+ ],
257
+ tables: [
258
+ {
259
+ key: values.tableKeyNewsletterEntries,
260
+ name: values.tableNameNewsletterEntries,
261
+ attributes: [
262
+ { name: "RowId", type: "S" },
263
+ { name: "Site", type: "S" },
264
+ { name: "UnixTimestampReverse", type: "N" },
265
+ { name: "FeaturedExpiry", type: "N" },
266
+ { name: "SourceId", type: "S" },
267
+ { name: "UnsentNotification", type: "S" },
268
+ { name: "UnixTimestamp", type: "N" },
269
+ ],
270
+ id: "RowId",
271
+ indexes: [
272
+ {
273
+ name: "NewsletterEntriesSiteTimestampIndex",
274
+ keys: [
275
+ { name: "Site", type: "HASH" },
276
+ { name: "UnixTimestampReverse", type: "RANGE" },
277
+ ],
278
+ },
279
+ {
280
+ name: "NewsletterEntriesSiteFeaturedExpiryIndex",
281
+ keys: [
282
+ { name: "Site", type: "HASH" },
283
+ { name: "FeaturedExpiry", type: "RANGE" },
284
+ ],
285
+ },
286
+ {
287
+ name: "NewsletterEntriesSiteSourceIdIndex",
288
+ keys: [
289
+ { name: "Site", type: "HASH" },
290
+ { name: "SourceId", type: "RANGE" },
291
+ ],
292
+ },
293
+ {
294
+ name: "NewsletterEntriesUnsentNotiIndex",
295
+ keys: [
296
+ { name: "UnsentNotification", type: "HASH" },
297
+ { name: "UnixTimestamp", type: "RANGE" },
298
+ ],
299
+ },
300
+ ],
301
+ },
302
+ {
303
+ key: values.tableKeyNewsletterSubmissions,
304
+ name: values.tableNameNewsletterSubmissions,
305
+ attributes: [
306
+ { name: "RowId", type: "S" },
307
+ { name: "Site", type: "S" },
308
+ { name: "UnixTimestampReverse", type: "N" },
309
+ ],
310
+ id: "RowId",
311
+ indexes: [
312
+ {
313
+ name: "NewsletterSubmissionsSiteTimestampIndex",
314
+ keys: [
315
+ { name: "Site", type: "HASH" },
316
+ { name: "UnixTimestampReverse", type: "RANGE" },
317
+ ],
318
+ },
319
+ ],
320
+ },
321
+ {
322
+ key: values.tableKeyNewsletterUserEntries,
323
+ name: values.tableNameNewsletterUserEntries,
324
+ attributes: [
325
+ { name: "RowId", type: "S" },
326
+ { name: "UserId", type: "S" },
327
+ { name: "UnixTimestampReverse", type: "N" },
328
+ ],
329
+ id: "RowId",
330
+ indexes: [
331
+ {
332
+ name: "NewsletterUserEntriesUserIdTimestampIndex",
333
+ keys: [
334
+ { name: "UserId", type: "HASH" },
335
+ { name: "UnixTimestampReverse", type: "RANGE" },
336
+ ],
337
+ },
338
+ ],
339
+ },
340
+ ],
341
+ };
@@ -0,0 +1,341 @@
1
+ const values = {
2
+ entityKey: "newsA",
3
+ serviceKey: "newsletterA",
4
+ updateKey: "newsA",
5
+ tableKeyNewsletterEntries: "NewsletterEntriesA",
6
+ tableKeyNewsletterSubmissions: "NewsletterSubmissionsA",
7
+ tableKeyNewsletterUserEntries: "NewsletterUserEntriesA",
8
+ tableNameNewsletterEntries: "newsletterentriesA",
9
+ tableNameNewsletterSubmissions: "newslettersubmissionsA",
10
+ tableNameNewsletterUserEntries: "newsletteruserentriesA",
11
+ stringPostfixSubmissionEmail: "newssubmissionemailA",
12
+ permissionNewsletter: "newsletterA",
13
+ permissionNewsletterSubmit: "newsletterSubmitA",
14
+ activityAddNewsSubmission: "AddNewsSubmissionA",
15
+ activityAddNews: "AddNewsA",
16
+ activityDeleteNews: "DeleteNewsA",
17
+ activityEditNews: "EditNewsA",
18
+ notificationApproveNewsSubmission: "ApproveNewsSubmissionA",
19
+ notificationRejectNewsSubmission: "RejectNewsSubmissionA",
20
+ notificationNewsletterPublished: "NewsletterPublishedA",
21
+ routeEntityPath: "/newsA/article/:id",
22
+ screenNewsletterPost: "newsletterPostA",
23
+ textNewNewsletterSubmission: "New Newsletter Submission",
24
+ textHasSubmittedANewNewsletterPost:
25
+ "has submitted a new newsletter post for review.",
26
+ };
27
+ exports.values = values;
28
+
29
+ exports.permissions = [
30
+ values.permissionNewsletter,
31
+ values.permissionNewsletterSubmit,
32
+ ];
33
+
34
+ exports.entity = {
35
+ key: values.entityKey,
36
+ permission: values.permissionNewsletter,
37
+ table: values.tableNameNewsletterEntries,
38
+ id: "RowId",
39
+ webPath: values.routeEntityPath,
40
+ appPath: values.screenNewsletterPost,
41
+ };
42
+
43
+ exports.serverless = {
44
+ name: values.serviceKey,
45
+ apis: [
46
+ {
47
+ name: "addNewsletterEntry",
48
+ file: "addNewsletterEntry",
49
+ function: "addNewsletterEntry",
50
+ memorySize: 1024,
51
+ timeout: 30,
52
+ path: "add",
53
+ method: "post",
54
+ headers: ["Content-Type", "authkey"],
55
+ },
56
+ {
57
+ name: "editNewsletterEntry",
58
+ file: "editNewsletterEntry",
59
+ function: "editNewsletterEntry",
60
+ memorySize: 128,
61
+ timeout: 10,
62
+ path: "edit",
63
+ method: "post",
64
+ headers: ["Content-Type", "authkey"],
65
+ },
66
+ {
67
+ name: "editNewsletterSubmission",
68
+ file: "editNewsletterSubmission",
69
+ function: "editNewsletterSubmission",
70
+ memorySize: 128,
71
+ timeout: 10,
72
+ path: "editSubmission",
73
+ method: "post",
74
+ headers: ["Content-Type", "authkey"],
75
+ },
76
+ {
77
+ name: "getNewsletterEntry",
78
+ file: "getNewsletterEntry",
79
+ function: "getNewsletterEntry",
80
+ memorySize: 128,
81
+ timeout: 10,
82
+ path: "get/{id}",
83
+ method: "get",
84
+ headers: ["Content-Type", "authkey"],
85
+ },
86
+ {
87
+ name: "getNews",
88
+ file: "getNews",
89
+ function: "getNews",
90
+ memorySize: 128,
91
+ timeout: 10,
92
+ path: "get2/{action}",
93
+ method: "get",
94
+ headers: ["Content-Type", "authkey"],
95
+ },
96
+ {
97
+ name: "getNewsletterEntries",
98
+ file: "getNewsletterEntries",
99
+ function: "getNewsletterEntries",
100
+ memorySize: 1024,
101
+ timeout: 30,
102
+ path: "get",
103
+ method: "get",
104
+ headers: ["Content-Type", "authkey"],
105
+ },
106
+ {
107
+ name: "getFeaturedNewsletterEntries",
108
+ file: "getFeaturedNewsletterEntries",
109
+ function: "getFeaturedNewsletterEntries",
110
+ memorySize: 128,
111
+ timeout: 10,
112
+ path: "getFeatured",
113
+ method: "get",
114
+ headers: ["Content-Type", "authkey"],
115
+ },
116
+ {
117
+ name: "getRecentNewsletterEntries",
118
+ file: "getRecentNewsletterEntries",
119
+ function: "getRecentNewsletterEntries",
120
+ memorySize: 128,
121
+ timeout: 10,
122
+ path: "recent",
123
+ method: "get",
124
+ headers: ["Content-Type", "authkey"],
125
+ },
126
+ {
127
+ name: "searchAvailableNews",
128
+ file: "searchAvailableNews",
129
+ function: "searchAvailableNews",
130
+ memorySize: 128,
131
+ timeout: 10,
132
+ path: "content/search",
133
+ method: "get",
134
+ headers: ["Content-Type", "authkey"],
135
+ },
136
+ {
137
+ name: "getAvailableNews",
138
+ file: "getAvailableNews",
139
+ function: "getAvailableNews",
140
+ memorySize: 128,
141
+ timeout: 10,
142
+ path: "content/get",
143
+ method: "get",
144
+ headers: ["Content-Type", "authkey"],
145
+ },
146
+ {
147
+ name: "getPublishedEntries",
148
+ file: "getPublishedEntries",
149
+ function: "getPublishedEntries",
150
+ memorySize: 128,
151
+ timeout: 10,
152
+ path: "content/specific",
153
+ method: "get",
154
+ headers: ["Content-Type", "authkey"],
155
+ },
156
+ {
157
+ name: "getPublishedAvailableNews",
158
+ file: "getPublishedAvailableNews",
159
+ function: "getPublishedAvailableNews",
160
+ memorySize: 128,
161
+ timeout: 10,
162
+ path: "content/published",
163
+ method: "get",
164
+ headers: ["Content-Type", "authkey"],
165
+ },
166
+ {
167
+ name: "deleteNewsletterEntry",
168
+ file: "deleteNewsletterEntry",
169
+ function: "deleteNewsletterEntry",
170
+ memorySize: 128,
171
+ timeout: 10,
172
+ path: "remove",
173
+ method: "post",
174
+ headers: ["Content-Type", "authkey"],
175
+ },
176
+ {
177
+ name: "hasNewsletterAccess",
178
+ file: "hasNewsletterAccess",
179
+ function: "hasNewsletterAccess",
180
+ memorySize: 128,
181
+ timeout: 10,
182
+ path: "access",
183
+ method: "get",
184
+ headers: ["Content-Type", "authkey"],
185
+ },
186
+ {
187
+ name: "getNewsletterSubmissions",
188
+ file: "getNewsletterSubmissions",
189
+ function: "getNewsletterSubmissions",
190
+ memorySize: 128,
191
+ timeout: 10,
192
+ path: "submissions/get",
193
+ method: "get",
194
+ headers: ["Content-Type", "authkey"],
195
+ },
196
+ {
197
+ name: "getNewsletterSubmission",
198
+ file: "getNewsletterSubmission",
199
+ function: "getNewsletterSubmission",
200
+ memorySize: 128,
201
+ timeout: 10,
202
+ path: "submissions/get/{id}",
203
+ method: "get",
204
+ headers: ["Content-Type", "authkey"],
205
+ },
206
+ {
207
+ name: "handleNewsletterSubmission",
208
+ file: "handleNewsletterSubmission",
209
+ function: "handleNewsletterSubmission",
210
+ memorySize: 128,
211
+ timeout: 10,
212
+ path: "submissions/handle",
213
+ method: "post",
214
+ headers: ["Content-Type", "authkey"],
215
+ },
216
+ {
217
+ name: "getSubmissionCount",
218
+ file: "getSubmissionCount",
219
+ function: "getSubmissionCount",
220
+ memorySize: 128,
221
+ timeout: 10,
222
+ path: "submissions/count",
223
+ method: "get",
224
+ headers: ["Content-Type", "authkey"],
225
+ },
226
+ {
227
+ name: "getTaggedNews",
228
+ file: "getTaggedNews",
229
+ function: "getTaggedNews",
230
+ memorySize: 128,
231
+ timeout: 10,
232
+ path: "tagged/get",
233
+ method: "get",
234
+ headers: ["Content-Type", "authkey"],
235
+ },
236
+ ],
237
+ triggers: [
238
+ {
239
+ name: "newsletterChanged",
240
+ file: "newsletterChanged",
241
+ function: "newsletterChanged",
242
+ memorySize: 2048,
243
+ timeout: 30,
244
+ table: values.tableKeyNewsletterEntries,
245
+ },
246
+ ],
247
+ schedules: [
248
+ {
249
+ name: "watchNewsletter",
250
+ file: "watchNewsletter",
251
+ function: "watchNewsletter",
252
+ memorySize: "2048",
253
+ timeout: "300",
254
+ rate: "1/5 * * * ? *",
255
+ },
256
+ ],
257
+ tables: [
258
+ {
259
+ key: values.tableKeyNewsletterEntries,
260
+ name: values.tableNameNewsletterEntries,
261
+ attributes: [
262
+ { name: "RowId", type: "S" },
263
+ { name: "Site", type: "S" },
264
+ { name: "UnixTimestampReverse", type: "N" },
265
+ { name: "FeaturedExpiry", type: "N" },
266
+ { name: "SourceId", type: "S" },
267
+ { name: "UnsentNotification", type: "S" },
268
+ { name: "UnixTimestamp", type: "N" },
269
+ ],
270
+ id: "RowId",
271
+ indexes: [
272
+ {
273
+ name: "NewsletterEntriesSiteTimestampIndex",
274
+ keys: [
275
+ { name: "Site", type: "HASH" },
276
+ { name: "UnixTimestampReverse", type: "RANGE" },
277
+ ],
278
+ },
279
+ {
280
+ name: "NewsletterEntriesSiteFeaturedExpiryIndex",
281
+ keys: [
282
+ { name: "Site", type: "HASH" },
283
+ { name: "FeaturedExpiry", type: "RANGE" },
284
+ ],
285
+ },
286
+ {
287
+ name: "NewsletterEntriesSiteSourceIdIndex",
288
+ keys: [
289
+ { name: "Site", type: "HASH" },
290
+ { name: "SourceId", type: "RANGE" },
291
+ ],
292
+ },
293
+ {
294
+ name: "NewsletterEntriesUnsentNotiIndex",
295
+ keys: [
296
+ { name: "UnsentNotification", type: "HASH" },
297
+ { name: "UnixTimestamp", type: "RANGE" },
298
+ ],
299
+ },
300
+ ],
301
+ },
302
+ {
303
+ key: values.tableKeyNewsletterSubmissions,
304
+ name: values.tableNameNewsletterSubmissions,
305
+ attributes: [
306
+ { name: "RowId", type: "S" },
307
+ { name: "Site", type: "S" },
308
+ { name: "UnixTimestampReverse", type: "N" },
309
+ ],
310
+ id: "RowId",
311
+ indexes: [
312
+ {
313
+ name: "NewsletterSubmissionsSiteTimestampIndex",
314
+ keys: [
315
+ { name: "Site", type: "HASH" },
316
+ { name: "UnixTimestampReverse", type: "RANGE" },
317
+ ],
318
+ },
319
+ ],
320
+ },
321
+ {
322
+ key: values.tableKeyNewsletterUserEntries,
323
+ name: values.tableNameNewsletterUserEntries,
324
+ attributes: [
325
+ { name: "RowId", type: "S" },
326
+ { name: "UserId", type: "S" },
327
+ { name: "UnixTimestampReverse", type: "N" },
328
+ ],
329
+ id: "RowId",
330
+ indexes: [
331
+ {
332
+ name: "NewsletterUserEntriesUserIdTimestampIndex",
333
+ keys: [
334
+ { name: "UserId", type: "HASH" },
335
+ { name: "UnixTimestampReverse", type: "RANGE" },
336
+ ],
337
+ },
338
+ ],
339
+ },
340
+ ],
341
+ };