@l-v-yonsama/multi-platform-database-drivers 0.7.1 → 0.8.7

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 (58) hide show
  1. package/built/src/drivers/AwsDriver.d.ts +17 -3
  2. package/built/src/drivers/AwsDriver.js +78 -0
  3. package/built/src/drivers/AwsDriver.js.map +1 -1
  4. package/built/src/drivers/DBDriverResolver.d.ts +2 -0
  5. package/built/src/drivers/DBDriverResolver.js +7 -0
  6. package/built/src/drivers/DBDriverResolver.js.map +1 -1
  7. package/built/src/drivers/ISQLSupportDriver.d.ts +16 -0
  8. package/built/src/drivers/ISQLSupportDriver.js +16 -0
  9. package/built/src/drivers/ISQLSupportDriver.js.map +1 -0
  10. package/built/src/drivers/RDSBaseDriver.d.ts +3 -4
  11. package/built/src/drivers/RDSBaseDriver.js +28 -34
  12. package/built/src/drivers/RDSBaseDriver.js.map +1 -1
  13. package/built/src/drivers/aws/AwsCloudwatchServiceClient.js +3 -1
  14. package/built/src/drivers/aws/AwsCloudwatchServiceClient.js.map +1 -1
  15. package/built/src/drivers/aws/AwsDynamoServiceClient.d.ts +57 -0
  16. package/built/src/drivers/aws/AwsDynamoServiceClient.js +369 -0
  17. package/built/src/drivers/aws/AwsDynamoServiceClient.js.map +1 -0
  18. package/built/src/drivers/aws/index.d.ts +1 -0
  19. package/built/src/drivers/aws/index.js +1 -0
  20. package/built/src/drivers/aws/index.js.map +1 -1
  21. package/built/src/drivers/index.d.ts +1 -0
  22. package/built/src/drivers/index.js +1 -0
  23. package/built/src/drivers/index.js.map +1 -1
  24. package/built/src/examples/dynamo.d.ts +1 -0
  25. package/built/src/examples/dynamo.js +74 -0
  26. package/built/src/examples/dynamo.js.map +1 -0
  27. package/built/src/helpers/SQLHelper.js +46 -9
  28. package/built/src/helpers/SQLHelper.js.map +1 -1
  29. package/built/src/resource/DbResource.d.ts +26 -5
  30. package/built/src/resource/DbResource.js +63 -1
  31. package/built/src/resource/DbResource.js.map +1 -1
  32. package/built/src/types/helpers/index.d.ts +4 -4
  33. package/built/src/types/helpers/index.js.map +1 -1
  34. package/built/src/types/resource/AwsDynamoTableAttributes.d.ts +47 -0
  35. package/built/src/types/resource/AwsDynamoTableAttributes.js +3 -0
  36. package/built/src/types/resource/AwsDynamoTableAttributes.js.map +1 -0
  37. package/built/src/types/resource/AwsServiceType.d.ts +2 -1
  38. package/built/src/types/resource/AwsServiceType.js +1 -0
  39. package/built/src/types/resource/AwsServiceType.js.map +1 -1
  40. package/built/src/types/resource/PartiQLAttrType.d.ts +2 -0
  41. package/built/src/types/resource/PartiQLAttrType.js +38 -0
  42. package/built/src/types/resource/PartiQLAttrType.js.map +1 -0
  43. package/built/src/types/resource/ResourceType.d.ts +2 -0
  44. package/built/src/types/resource/ResourceType.js +2 -0
  45. package/built/src/types/resource/ResourceType.js.map +1 -1
  46. package/built/src/types/resource/index.d.ts +2 -0
  47. package/built/src/types/resource/index.js +2 -0
  48. package/built/src/types/resource/index.js.map +1 -1
  49. package/built/src/utils/dbType.d.ts +2 -1
  50. package/built/src/utils/dbType.js +8 -1
  51. package/built/src/utils/dbType.js.map +1 -1
  52. package/built/src/utils/driverUtil.d.ts +13 -0
  53. package/built/src/utils/driverUtil.js +35 -0
  54. package/built/src/utils/driverUtil.js.map +1 -0
  55. package/built/src/utils/index.d.ts +1 -0
  56. package/built/src/utils/index.js +1 -0
  57. package/built/src/utils/index.js.map +1 -1
  58. package/package.json +7 -2
@@ -0,0 +1,369 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AwsDynamoServiceClient = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
6
+ const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
7
+ const rdh_1 = require("@l-v-yonsama/rdh");
8
+ const pluralize_1 = require("pluralize");
9
+ const resource_1 = require("../../resource");
10
+ const types_1 = require("../../types");
11
+ const utils_1 = require("../../utils");
12
+ const AwsServiceClient_1 = require("./AwsServiceClient");
13
+ const helpers_1 = require("../../helpers");
14
+ class AwsDynamoServiceClient extends AwsServiceClient_1.AwsServiceClient {
15
+ constructor(conRes, config) {
16
+ super(conRes, config);
17
+ this.interrupted = false;
18
+ }
19
+ connectSub() {
20
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
21
+ this.client = new client_dynamodb_1.DynamoDBClient(this.config);
22
+ this.docClient = lib_dynamodb_1.DynamoDBDocumentClient.from(this.client);
23
+ this.interrupted = false;
24
+ return this.test(false);
25
+ });
26
+ }
27
+ testSub() {
28
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
29
+ if (this.client) {
30
+ yield this.listTableNames(1);
31
+ }
32
+ });
33
+ }
34
+ kill() {
35
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
36
+ this.interrupted = true;
37
+ return '';
38
+ });
39
+ }
40
+ listTableNames(limit) {
41
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
42
+ let lastEvaluatedTableName = undefined;
43
+ const tableNames = [];
44
+ do {
45
+ const command = new client_dynamodb_1.ListTablesCommand({
46
+ ExclusiveStartTableName: lastEvaluatedTableName,
47
+ Limit: Math.min(100, limit !== null && limit !== void 0 ? limit : 1),
48
+ });
49
+ const response = yield this.client.send(command);
50
+ lastEvaluatedTableName = response.LastEvaluatedTableName;
51
+ tableNames.push(...response.TableNames);
52
+ if (limit && tableNames.length >= limit) {
53
+ break;
54
+ }
55
+ } while (lastEvaluatedTableName);
56
+ return tableNames;
57
+ });
58
+ }
59
+ count(tableName) {
60
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ const res = yield this.client.send(new client_dynamodb_1.DescribeTableCommand({
62
+ TableName: tableName,
63
+ }));
64
+ return res.Table.ItemCount;
65
+ });
66
+ }
67
+ listTables() {
68
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
69
+ const tableNames = yield this.listTableNames();
70
+ const tableList = [];
71
+ yield Promise.all(tableNames.map((TableName) => tslib_1.__awaiter(this, void 0, void 0, function* () {
72
+ var _a, _b;
73
+ const res = yield this.client.send(new client_dynamodb_1.DescribeTableCommand({
74
+ TableName,
75
+ }));
76
+ if (res.Table) {
77
+ const tableDef = res.Table;
78
+ tableList.push(tableDef);
79
+ if (((_a = res.Table) === null || _a === void 0 ? void 0 : _a.ItemCount) > 0) {
80
+ const res2 = yield this.client.send(new client_dynamodb_1.ScanCommand({
81
+ TableName,
82
+ Limit: 1,
83
+ }));
84
+ if (((_b = res2.Items) === null || _b === void 0 ? void 0 : _b.length) > 0) {
85
+ const item0 = res2.Items[0];
86
+ tableDef.ExtraItems = Object.keys(item0).map((name) => ({
87
+ name,
88
+ value: item0[name],
89
+ }));
90
+ }
91
+ }
92
+ }
93
+ })));
94
+ return tableList;
95
+ });
96
+ }
97
+ scan(params) {
98
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
99
+ const { target, limit, keyword, startTime, endTime, withValue } = params;
100
+ return null;
101
+ });
102
+ }
103
+ getInfomationSchemas() {
104
+ var _a, _b, _c, _d, _e, _f, _g, _h;
105
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
106
+ if (!this.conRes) {
107
+ return null;
108
+ }
109
+ const dbDatabase = new resource_1.AwsDatabase('DynamoDB', types_1.AwsServiceType.DynamoDB);
110
+ try {
111
+ const tables = yield this.listTables();
112
+ for (const table of tables) {
113
+ const dynamoTable = new resource_1.DbDynamoTable(table.TableName, {
114
+ CreationDateTime: table.CreationDateTime,
115
+ TableStatus: table.TableStatus,
116
+ ReadCapacityUnits: (_a = table.ProvisionedThroughput) === null || _a === void 0 ? void 0 : _a.ReadCapacityUnits,
117
+ WriteCapacityUnits: (_b = table.ProvisionedThroughput) === null || _b === void 0 ? void 0 : _b.WriteCapacityUnits,
118
+ TableSizeBytes: table.TableSizeBytes,
119
+ ItemCount: table.ItemCount,
120
+ TableArn: table.TableArn,
121
+ lsi: (_d = (_c = table.LocalSecondaryIndexes) === null || _c === void 0 ? void 0 : _c.map((it) => {
122
+ return {
123
+ IndexName: it.IndexName,
124
+ KeySchema: it.KeySchema,
125
+ IndexSizeBytes: it.IndexSizeBytes,
126
+ ItemCount: it.ItemCount,
127
+ IndexArn: it.IndexArn,
128
+ };
129
+ })) !== null && _d !== void 0 ? _d : [],
130
+ gsi: (_f = (_e = table.GlobalSecondaryIndexes) === null || _e === void 0 ? void 0 : _e.map((it) => {
131
+ return {
132
+ IndexName: it.IndexName,
133
+ KeySchema: it.KeySchema,
134
+ IndexStatus: it.IndexStatus,
135
+ IndexSizeBytes: it.IndexSizeBytes,
136
+ ItemCount: it.ItemCount,
137
+ IndexArn: it.IndexArn,
138
+ };
139
+ })) !== null && _f !== void 0 ? _f : [],
140
+ });
141
+ (_g = table.AttributeDefinitions) === null || _g === void 0 ? void 0 : _g.forEach((attr) => {
142
+ var _a, _b;
143
+ const pk = (_a = table.KeySchema) === null || _a === void 0 ? void 0 : _a.some((it) => it.AttributeName === attr.AttributeName && it.KeyType === 'HASH');
144
+ const sk = (_b = table.KeySchema) === null || _b === void 0 ? void 0 : _b.some((it) => it.AttributeName === attr.AttributeName && it.KeyType === 'RANGE');
145
+ dynamoTable.addChild(new resource_1.DbDynamoTableColumn(attr.AttributeName, attr.AttributeType, pk, sk));
146
+ });
147
+ (_h = table.ExtraItems) === null || _h === void 0 ? void 0 : _h.forEach((item) => {
148
+ if (!dynamoTable.getChildByName(item.name)) {
149
+ dynamoTable.addChild(new resource_1.DbDynamoTableColumn(item.name, Object.keys(item.value)[0], false, false));
150
+ }
151
+ });
152
+ dbDatabase.addChild(dynamoTable);
153
+ }
154
+ dbDatabase.comment = `${tables.length} ${(0, pluralize_1.plural)('table')}`;
155
+ }
156
+ catch (e) {
157
+ console.error(e);
158
+ }
159
+ this.awsDatabase = dbDatabase;
160
+ return dbDatabase;
161
+ });
162
+ }
163
+ createTable(params) {
164
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
165
+ yield this.client.send(new client_dynamodb_1.CreateTableCommand(params));
166
+ });
167
+ }
168
+ putItem(params) {
169
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
170
+ yield this.docClient.send(new lib_dynamodb_1.PutCommand(params));
171
+ });
172
+ }
173
+ getItem(params) {
174
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
175
+ const { Item } = yield this.docClient.send(new lib_dynamodb_1.GetCommand(params));
176
+ return Item;
177
+ });
178
+ }
179
+ deleteItem(params) {
180
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
181
+ yield this.docClient.send(new lib_dynamodb_1.DeleteCommand(params));
182
+ });
183
+ }
184
+ updateItem(params) {
185
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
186
+ yield this.docClient.send(new lib_dynamodb_1.UpdateCommand(params));
187
+ });
188
+ }
189
+ scanItems(params) {
190
+ var _a, _b;
191
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
192
+ let LastEvaluatedKey = undefined;
193
+ let CapacityUnits = 0;
194
+ if (params.ExclusiveStartKey) {
195
+ LastEvaluatedKey = params.ExclusiveStartKey;
196
+ }
197
+ const Items = [];
198
+ do {
199
+ const command = new lib_dynamodb_1.ScanCommand(Object.assign(Object.assign({}, params), { Limit: params.Limit ? params.Limit - Items.length : undefined, ExclusiveStartKey: LastEvaluatedKey ? LastEvaluatedKey : undefined, ReturnConsumedCapacity: 'TOTAL' }));
200
+ const response = yield this.client.send(command);
201
+ LastEvaluatedKey = response.LastEvaluatedKey;
202
+ CapacityUnits += (_b = (_a = response.ConsumedCapacity) === null || _a === void 0 ? void 0 : _a.CapacityUnits) !== null && _b !== void 0 ? _b : 0;
203
+ Items.push(...response.Items);
204
+ if (params.Limit && Items.length >= params.Limit) {
205
+ break;
206
+ }
207
+ } while (LastEvaluatedKey);
208
+ return {
209
+ Items,
210
+ LastEvaluatedKey,
211
+ Count: Items.length,
212
+ CapacityUnits,
213
+ };
214
+ });
215
+ }
216
+ queryItems(params) {
217
+ var _a, _b;
218
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
219
+ let LastEvaluatedKey = undefined;
220
+ let CapacityUnits = 0;
221
+ if (params.ExclusiveStartKey) {
222
+ LastEvaluatedKey = params.ExclusiveStartKey;
223
+ }
224
+ const Items = [];
225
+ do {
226
+ const command = new lib_dynamodb_1.QueryCommand(Object.assign(Object.assign({}, params), { Limit: params.Limit ? params.Limit - Items.length : undefined, ExclusiveStartKey: LastEvaluatedKey ? LastEvaluatedKey : undefined, ReturnConsumedCapacity: 'TOTAL' }));
227
+ const response = yield this.client.send(command);
228
+ LastEvaluatedKey = response.LastEvaluatedKey;
229
+ CapacityUnits += (_b = (_a = response.ConsumedCapacity) === null || _a === void 0 ? void 0 : _a.CapacityUnits) !== null && _b !== void 0 ? _b : 0;
230
+ Items.push(...response.Items);
231
+ if (params.Limit && Items.length >= params.Limit) {
232
+ break;
233
+ }
234
+ } while (LastEvaluatedKey);
235
+ return {
236
+ Items,
237
+ LastEvaluatedKey,
238
+ Count: Items.length,
239
+ CapacityUnits,
240
+ };
241
+ });
242
+ }
243
+ executeStatement(params) {
244
+ var _a, _b;
245
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
246
+ this.interrupted = false;
247
+ let LastEvaluatedKey = undefined;
248
+ let NextToken = params.NextToken;
249
+ let CapacityUnits = 0;
250
+ const Items = [];
251
+ do {
252
+ if (this.interrupted) {
253
+ this.interrupted = false;
254
+ throw new Error('INTERRUPT');
255
+ }
256
+ const command = new lib_dynamodb_1.ExecuteStatementCommand(Object.assign(Object.assign({}, params), { Limit: params.Limit ? params.Limit - Items.length : undefined, NextToken, ReturnConsumedCapacity: 'TOTAL' }));
257
+ const response = yield this.client.send(command);
258
+ LastEvaluatedKey = response.LastEvaluatedKey;
259
+ NextToken = response.NextToken;
260
+ CapacityUnits += (_b = (_a = response.ConsumedCapacity) === null || _a === void 0 ? void 0 : _a.CapacityUnits) !== null && _b !== void 0 ? _b : 0;
261
+ Items.push(...response.Items);
262
+ if (params.Limit && Items.length >= params.Limit) {
263
+ break;
264
+ }
265
+ } while (LastEvaluatedKey || NextToken);
266
+ return {
267
+ Items,
268
+ LastEvaluatedKey,
269
+ NextToken,
270
+ Count: Items.length,
271
+ CapacityUnits,
272
+ };
273
+ });
274
+ }
275
+ requestPartiql(params) {
276
+ var _a, _b, _c, _d, _e;
277
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
278
+ const { sql, conditions } = params;
279
+ let rdb = undefined;
280
+ let qst = undefined;
281
+ let dbTable = undefined;
282
+ if ((conditions === null || conditions === void 0 ? void 0 : conditions.rawQueries) !== true) {
283
+ qst = (0, helpers_1.parseQuery)(sql);
284
+ dbTable = this.getDbTable(qst);
285
+ if ((_a = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _a === void 0 ? void 0 : _a.type) {
286
+ if (!params.meta) {
287
+ params.meta = {};
288
+ }
289
+ params.meta.type = (_b = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _b === void 0 ? void 0 : _b.type;
290
+ }
291
+ }
292
+ let Statement = sql;
293
+ let Limit = undefined;
294
+ if (((_c = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _c === void 0 ? void 0 : _c.type) === 'select' &&
295
+ sql.toLocaleLowerCase().indexOf('limit')) {
296
+ const r = sql.match(/\bLIMIT\s+(\d+)/i);
297
+ if (r && r.length >= 2) {
298
+ Limit = (0, rdh_1.toNum)(r[1]);
299
+ Statement = sql.replace(/\bLIMIT\s+\d+/i, '');
300
+ }
301
+ }
302
+ const binds = (_d = conditions === null || conditions === void 0 ? void 0 : conditions.binds) !== null && _d !== void 0 ? _d : [];
303
+ const startTime = new Date().getTime();
304
+ const { CapacityUnits: capacityUnits, Count, Items, } = yield this.executeStatement({
305
+ Statement,
306
+ Parameters: binds,
307
+ Limit,
308
+ });
309
+ const elapsedTimeMilli = new Date().getTime() - startTime;
310
+ if (Count === 0) {
311
+ const rdb = rdh_1.ResultSetDataBuilder.createEmpty({
312
+ noRecordsReason: 'No records.',
313
+ });
314
+ rdb.setSummary({
315
+ elapsedTimeMilli,
316
+ selectedRows: 0,
317
+ capacityUnits,
318
+ });
319
+ return rdb.build();
320
+ }
321
+ const records = Items[0];
322
+ rdb = new rdh_1.ResultSetDataBuilder(Object.keys(records).map((it) => {
323
+ const col = dbTable === null || dbTable === void 0 ? void 0 : dbTable.getChildByName(it);
324
+ return (0, rdh_1.createRdhKey)({
325
+ name: it,
326
+ type: (0, types_1.parseDynamoAttrType)(col === null || col === void 0 ? void 0 : col.attrType),
327
+ required: (col === null || col === void 0 ? void 0 : col.pk) || (col === null || col === void 0 ? void 0 : col.sk),
328
+ });
329
+ }));
330
+ Items.forEach((item) => {
331
+ rdb.addRow(item);
332
+ });
333
+ (0, utils_1.setRdhMetaAndStatement)({
334
+ connectionName: this.conRes.name,
335
+ params,
336
+ rdb,
337
+ type: (_e = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _e === void 0 ? void 0 : _e.type,
338
+ qst,
339
+ dbTable,
340
+ });
341
+ rdb.resetKeyTypeByRows();
342
+ rdb.setSummary({
343
+ elapsedTimeMilli,
344
+ selectedRows: rdb.rs.rows.length,
345
+ capacityUnits,
346
+ });
347
+ return rdb.build();
348
+ });
349
+ }
350
+ getDbTable(qst) {
351
+ const db = this.awsDatabase;
352
+ if (qst === undefined || qst.names === undefined || db === undefined) {
353
+ return undefined;
354
+ }
355
+ return db.getChildByName(qst.names.tableName, false);
356
+ }
357
+ closeSub() {
358
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
359
+ this.docClient.destroy();
360
+ this.client.destroy();
361
+ this.interrupted = false;
362
+ });
363
+ }
364
+ getServiceName() {
365
+ return 'DynamoDB';
366
+ }
367
+ }
368
+ exports.AwsDynamoServiceClient = AwsDynamoServiceClient;
369
+ //# sourceMappingURL=AwsDynamoServiceClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AwsDynamoServiceClient.js","sourceRoot":"","sources":["../../../../src/drivers/aws/AwsDynamoServiceClient.ts"],"names":[],"mappings":";;;;AAEA,8DASkC;AAClC,wDAoB+B;AAC/B,0CAK0B;AAC1B,yCAAmC;AACnC,6CAIwB;AACxB,uCAOqB;AACrB,uCAAqD;AAGrD,yDAAsD;AACtD,2CAA2C;AAK3C,MAAa,sBACX,SAAQ,mCAAgB;IAQxB,YAAY,MAAyB,EAAE,MAAwB;QAC7D,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAHhB,gBAAW,GAAG,KAAK,CAAC;IAI5B,CAAC;IAEK,UAAU;;YAId,IAAI,CAAC,MAAM,GAAG,IAAI,gCAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,GAAG,qCAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;KAAA;IAEe,OAAO;;YACrB,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;aAC9B;QACH,CAAC;KAAA;IAEK,IAAI;;YACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,OAAO,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,cAAc,CAAC,KAAc;;YACjC,IAAI,sBAAsB,GAAuB,SAAS,CAAC;YAE3D,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,GAAG;gBACD,MAAM,OAAO,GAAG,IAAI,mCAAiB,CAAC;oBACpC,uBAAuB,EAAE,sBAAsB;oBAC/C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAC;iBACjC,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjD,sBAAsB,GAAG,QAAQ,CAAC,sBAAsB,CAAC;gBAEzD,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACxC,IAAI,KAAK,IAAI,UAAU,CAAC,MAAM,IAAI,KAAK,EAAE;oBACvC,MAAM;iBACP;aACF,QAAQ,sBAAsB,EAAE;YACjC,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;IAEK,KAAK,CAAC,SAAiB;;YAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAChC,IAAI,sCAAoB,CAAC;gBACvB,SAAS,EAAE,SAAS;aACrB,CAAC,CACH,CAAC;YACF,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7B,CAAC;KAAA;IAEK,UAAU;;YACd,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/C,MAAM,SAAS,GAA8B,EAAE,CAAC;YAChD,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CAAC,CAAO,SAAS,EAAE,EAAE;;gBACjC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAChC,IAAI,sCAAoB,CAAC;oBACvB,SAAS;iBACV,CAAC,CACH,CAAC;gBACF,IAAI,GAAG,CAAC,KAAK,EAAE;oBACb,MAAM,QAAQ,GAA4B,GAAG,CAAC,KAAK,CAAC;oBACpD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACzB,IAAI,CAAA,MAAA,GAAG,CAAC,KAAK,0CAAE,SAAS,IAAG,CAAC,EAAE;wBAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACjC,IAAI,6BAAmB,CAAC;4BACtB,SAAS;4BACT,KAAK,EAAE,CAAC;yBACT,CAAC,CACH,CAAC;wBACF,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,IAAG,CAAC,EAAE;4BAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BAC5B,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gCACtD,IAAI;gCACJ,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;6BACnB,CAAC,CAAC,CAAC;yBACL;qBACF;iBACF;YACH,CAAC,CAAA,CAAC,CACH,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;IAEK,IAAI,CAAC,MAAkB;;YAC3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAEK,oBAAoB;;;YACxB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,OAAO,IAAI,CAAC;aACb;YAED,MAAM,UAAU,GAAG,IAAI,sBAAW,CAAC,UAAU,EAAE,sBAAc,CAAC,QAAQ,CAAC,CAAC;YAExE,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAEvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,MAAM,WAAW,GAAG,IAAI,wBAAa,CAAC,KAAK,CAAC,SAAS,EAAE;wBACrD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;wBACxC,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,iBAAiB,EAAE,MAAA,KAAK,CAAC,qBAAqB,0CAAE,iBAAiB;wBACjE,kBAAkB,EAAE,MAAA,KAAK,CAAC,qBAAqB,0CAAE,kBAAkB;wBACnE,cAAc,EAAE,KAAK,CAAC,cAAc;wBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,GAAG,EACD,MAAA,MAAA,KAAK,CAAC,qBAAqB,0CAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;4BACtC,OAAO;gCACL,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,cAAc,EAAE,EAAE,CAAC,cAAc;gCACjC,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,QAAQ,EAAE,EAAE,CAAC,QAAQ;6BACtB,CAAC;wBACJ,CAAC,CAAC,mCAAI,EAAE;wBACV,GAAG,EACD,MAAA,MAAA,KAAK,CAAC,sBAAsB,0CAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;4BACvC,OAAO;gCACL,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,WAAW,EAAE,EAAE,CAAC,WAAW;gCAC3B,cAAc,EAAE,EAAE,CAAC,cAAc;gCACjC,SAAS,EAAE,EAAE,CAAC,SAAS;gCACvB,QAAQ,EAAE,EAAE,CAAC,QAAQ;6BACtB,CAAC;wBACJ,CAAC,CAAC,mCAAI,EAAE;qBACX,CAAC,CAAC;oBACH,MAAA,KAAK,CAAC,oBAAoB,0CAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;wBAC3C,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,SAAS,0CAAE,IAAI,CAC9B,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,OAAO,KAAK,MAAM,CACnE,CAAC;wBACF,MAAM,EAAE,GAAG,MAAA,KAAK,CAAC,SAAS,0CAAE,IAAI,CAC9B,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,OAAO,KAAK,OAAO,CACpE,CAAC;wBACF,WAAW,CAAC,QAAQ,CAClB,IAAI,8BAAmB,CACrB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,EAAE,EACF,EAAE,CACH,CACF,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACH,MAAA,KAAK,CAAC,UAAU,0CAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBACjC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BAC1C,WAAW,CAAC,QAAQ,CAClB,IAAI,8BAAmB,CACrB,IAAI,CAAC,IAAI,EACT,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC1B,KAAK,EACL,KAAK,CACN,CACF,CAAC;yBACH;oBACH,CAAC,CAAC,CAAC;oBACH,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;iBAClC;gBACD,UAAU,CAAC,OAAO,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,IAAA,kBAAM,EAAC,OAAO,CAAC,EAAE,CAAC;aAC5D;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAElB;YACD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,OAAO,UAAU,CAAC;;KACnB;IAEK,WAAW,CAAC,MAA+B;;YAC/C,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,oCAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;KAAA;IAEK,OAAO,CAAC,MAAuB;;YACnC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,yBAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACpD,CAAC;KAAA;IAEK,OAAO,CACX,MAAuB;;YAEvB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,yBAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAEK,UAAU,CAAC,MAA0B;;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,4BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,CAAC;KAAA;IAEK,UAAU,CAAC,MAA0B;;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,4BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,CAAC;KAAA;IAEK,SAAS,CAAC,MAAwB;;;YAMtC,IAAI,gBAAgB,GAClB,SAAS,CAAC;YACZ,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,iBAAiB,EAAE;gBAC5B,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC;aAC7C;YAED,MAAM,KAAK,GAA+B,EAAE,CAAC;YAC7C,GAAG;gBACD,MAAM,OAAO,GAAG,IAAI,0BAAW,iCAC1B,MAAM,KACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC7D,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAClE,sBAAsB,EAAE,OAAO,IAC/B,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjD,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;gBAC7C,aAAa,IAAI,MAAA,MAAA,QAAQ,CAAC,gBAAgB,0CAAE,aAAa,mCAAI,CAAC,CAAC;gBAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;oBAChD,MAAM;iBACP;aACF,QAAQ,gBAAgB,EAAE;YAE3B,OAAO;gBACL,KAAK;gBACL,gBAAgB;gBAChB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,aAAa;aACd,CAAC;;KACH;IAEK,UAAU,CAAC,MAAyB;;;YAMxC,IAAI,gBAAgB,GAClB,SAAS,CAAC;YACZ,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,iBAAiB,EAAE;gBAC5B,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC;aAC7C;YAED,MAAM,KAAK,GAAgC,EAAE,CAAC;YAC9C,GAAG;gBACD,MAAM,OAAO,GAAG,IAAI,2BAAY,iCAC3B,MAAM,KACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC7D,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAClE,sBAAsB,EAAE,OAAO,IAC/B,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjD,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;gBAC7C,aAAa,IAAI,MAAA,MAAA,QAAQ,CAAC,gBAAgB,0CAAE,aAAa,mCAAI,CAAC,CAAC;gBAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;oBAChD,MAAM;iBACP;aACF,QAAQ,gBAAgB,EAAE;YAE3B,OAAO;gBACL,KAAK;gBACL,gBAAgB;gBAChB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,aAAa;aACd,CAAC;;KACH;IAEK,gBAAgB,CAAC,MAAoC;;;YAOzD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,gBAAgB,GAClB,SAAS,CAAC;YACZ,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACjC,IAAI,aAAa,GAAG,CAAC,CAAC;YAEtB,MAAM,KAAK,GAAgC,EAAE,CAAC;YAC9C,GAAG;gBACD,IAAI,IAAI,CAAC,WAAW,EAAE;oBACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;iBAC9B;gBACD,MAAM,OAAO,GAAG,IAAI,sCAAuB,iCACtC,MAAM,KACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC7D,SAAS,EACT,sBAAsB,EAAE,OAAO,IAC/B,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjD,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;gBAC7C,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;gBAC/B,aAAa,IAAI,MAAA,MAAA,QAAQ,CAAC,gBAAgB,0CAAE,aAAa,mCAAI,CAAC,CAAC;gBAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;oBAChD,MAAM;iBACP;aACF,QAAQ,gBAAgB,IAAI,SAAS,EAAE;YAExC,OAAO;gBACL,KAAK;gBACL,gBAAgB;gBAChB,SAAS;gBACT,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,aAAa;aACd,CAAC;;KACH;IAEK,cAAc,CAAC,MAAmB;;;YACtC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;YACnC,IAAI,GAAG,GAAqC,SAAS,CAAC;YACtD,IAAI,GAAG,GAA2B,SAAS,CAAC;YAC5C,IAAI,OAAO,GAA8B,SAAS,CAAC;YAEnD,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,MAAK,IAAI,EAAE;gBACnC,GAAG,GAAG,IAAA,oBAAU,EAAC,GAAG,CAAC,CAAC;gBACtB,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC/B,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,EAAE;oBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;wBAChB,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;qBAClB;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,CAAC;iBACnC;aACF;YAED,IAAI,SAAS,GAAG,GAAG,CAAC;YACpB,IAAI,KAAK,GAAuB,SAAS,CAAC;YAC1C,IACE,CAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,MAAK,QAAQ;gBAC3B,GAAG,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EACxC;gBACA,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;oBACtB,KAAK,GAAG,IAAA,WAAK,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpB,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;iBAC/C;aACF;YACD,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,mCAAI,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,EACJ,aAAa,EAAE,aAAa,EAC5B,KAAK,EACL,KAAK,GACN,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;gBAC9B,SAAS;gBACT,UAAU,EAAE,KAAK;gBACjB,KAAK;aACN,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;YAE1D,IAAI,KAAK,KAAK,CAAC,EAAE;gBACf,MAAM,GAAG,GAAG,0BAAoB,CAAC,WAAW,CAAC;oBAC3C,eAAe,EAAE,aAAa;iBAC/B,CAAC,CAAC;gBACH,GAAG,CAAC,UAAU,CAAC;oBACb,gBAAgB;oBAChB,YAAY,EAAE,CAAC;oBACf,aAAa;iBACd,CAAC,CAAC;gBACH,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC;aACpB;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,GAAG,GAAG,IAAI,0BAAoB,CAC5B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9B,MAAM,GAAG,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,EAAE,CAAC,CAAC;gBACxC,OAAO,IAAA,kBAAY,EAAC;oBAClB,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,IAAA,2BAAmB,EAAC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,CAAC;oBACxC,QAAQ,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,MAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,CAAA;iBAC7B,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;YACF,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH,IAAA,8BAAsB,EAAC;gBACrB,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBAChC,MAAM;gBACN,GAAG;gBACH,IAAI,EAAE,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI;gBACpB,GAAG;gBACH,OAAO;aACR,CAAC,CAAC;YAEH,GAAG,CAAC,kBAAkB,EAAE,CAAC;YACzB,GAAG,CAAC,UAAU,CAAC;gBACb,gBAAgB;gBAChB,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM;gBAChC,aAAa;aACd,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC;;KACpB;IAEO,UAAU,CAAC,GAAgB;QACjC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;QAC5B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE;YACpE,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAkB,CAAC;IACxE,CAAC;IAEe,QAAQ;;YACtB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;KAAA;IAES,cAAc;QACtB,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AApbD,wDAobC"}
@@ -1,4 +1,5 @@
1
1
  export * from './AwsCloudwatchServiceClient';
2
+ export * from './AwsDynamoServiceClient';
2
3
  export * from './AwsS3ServiceClient';
3
4
  export * from './AwsServiceClient';
4
5
  export * from './AwsSESServiceClient';
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./AwsCloudwatchServiceClient"), exports);
5
+ tslib_1.__exportStar(require("./AwsDynamoServiceClient"), exports);
5
6
  tslib_1.__exportStar(require("./AwsS3ServiceClient"), exports);
6
7
  tslib_1.__exportStar(require("./AwsServiceClient"), exports);
7
8
  tslib_1.__exportStar(require("./AwsSESServiceClient"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/drivers/aws/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,+DAAqC;AACrC,6DAAmC;AACnC,gEAAsC;AACtC,gEAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/drivers/aws/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,mEAAyC;AACzC,+DAAqC;AACrC,6DAAmC;AACnC,gEAAsC;AACtC,gEAAsC"}
@@ -11,3 +11,4 @@ export * from './RDSBaseDriver';
11
11
  export * from './RedisDriver';
12
12
  export * from './SQLiteDriver';
13
13
  export * from './SQLServerDriver';
14
+ export * from './ISQLSupportDriver';
@@ -14,4 +14,5 @@ tslib_1.__exportStar(require("./RDSBaseDriver"), exports);
14
14
  tslib_1.__exportStar(require("./RedisDriver"), exports);
15
15
  tslib_1.__exportStar(require("./SQLiteDriver"), exports);
16
16
  tslib_1.__exportStar(require("./SQLServerDriver"), exports);
17
+ tslib_1.__exportStar(require("./ISQLSupportDriver"), exports);
17
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/drivers/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,sDAA4B;AAC5B,sDAA4B;AAC5B,uDAA6B;AAC7B,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,4DAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/drivers/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,sDAA4B;AAC5B,sDAA4B;AAC5B,uDAA6B;AAC7B,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,4DAAkC;AAClC,8DAAoC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
5
+ const client = new client_dynamodb_1.DynamoDBClient({
6
+ region: 'us-east-1',
7
+ endpoint: 'http://localhost:6005',
8
+ credentials: {
9
+ accessKeyId: 'test',
10
+ secretAccessKey: 'test',
11
+ },
12
+ });
13
+ function listTables() {
14
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
+ let lastEvaluatedTableName = undefined;
16
+ const command = new client_dynamodb_1.ListTablesCommand({
17
+ ExclusiveStartTableName: lastEvaluatedTableName,
18
+ });
19
+ const tableNames = [];
20
+ do {
21
+ const response = yield client.send(command);
22
+ lastEvaluatedTableName = response.LastEvaluatedTableName;
23
+ tableNames.push(...response.TableNames);
24
+ } while (lastEvaluatedTableName);
25
+ yield Promise.all(tableNames.map((it) => tslib_1.__awaiter(this, void 0, void 0, function* () {
26
+ const res = yield client.send(new client_dynamodb_1.DescribeTableCommand({
27
+ TableName: tableNames[0],
28
+ }));
29
+ console.log(res.Table);
30
+ })));
31
+ });
32
+ }
33
+ function createTable() {
34
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
35
+ const command = new client_dynamodb_1.CreateTableCommand({
36
+ TableName: 'EspressoDrinks',
37
+ AttributeDefinitions: [
38
+ {
39
+ AttributeName: 'DrinkName',
40
+ AttributeType: 'S',
41
+ },
42
+ ],
43
+ KeySchema: [
44
+ {
45
+ AttributeName: 'DrinkName',
46
+ KeyType: 'HASH',
47
+ },
48
+ ],
49
+ ProvisionedThroughput: {
50
+ ReadCapacityUnits: 1,
51
+ WriteCapacityUnits: 1,
52
+ },
53
+ });
54
+ const response = yield client.send(command);
55
+ console.log(response);
56
+ });
57
+ }
58
+ function putItem() {
59
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
60
+ const command = new client_dynamodb_1.PutItemCommand({
61
+ TableName: 'EspressoDrinks',
62
+ Item: {
63
+ DrinkName: { S: 'Shiba Inu' },
64
+ },
65
+ });
66
+ const response = yield client.send(command);
67
+ console.log(response);
68
+ return response;
69
+ });
70
+ }
71
+ (() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
72
+ yield listTables();
73
+ }))();
74
+ //# sourceMappingURL=dynamo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamo.js","sourceRoot":"","sources":["../../../src/examples/dynamo.ts"],"names":[],"mappings":";;;AAAA,8DAOkC;AAElC,MAAM,MAAM,GAAG,IAAI,gCAAc,CAAC;IAChC,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,uBAAuB;IACjC,WAAW,EAAE;QACX,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,MAAM;KACxB;CACF,CAAC,CAAC;AAEH,SAAe,UAAU;;QACvB,IAAI,sBAAsB,GAAuB,SAAS,CAAC;QAE3D,MAAM,OAAO,GAAG,IAAI,mCAAiB,CAAC;YACpC,uBAAuB,EAAE,sBAAsB;SAChD,CAAC,CAAC;QAEH,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,GAAG;YACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5C,sBAAsB,GAAG,QAAQ,CAAC,sBAAsB,CAAC;YAEzD,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;SACzC,QAAQ,sBAAsB,EAAE;QAGjC,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CAAC,CAAO,EAAE,EAAE,EAAE;YAC1B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAC3B,IAAI,sCAAoB,CAAC;gBACvB,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;aACzB,CAAC,CACH,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAA,CAAC,CACH,CAAC;IACJ,CAAC;CAAA;AAED,SAAe,WAAW;;QACxB,MAAM,OAAO,GAAG,IAAI,oCAAkB,CAAC;YACrC,SAAS,EAAE,gBAAgB;YAC3B,oBAAoB,EAAE;gBACpB;oBACE,aAAa,EAAE,WAAW;oBAC1B,aAAa,EAAE,GAAG;iBACnB;aACF;YACD,SAAS,EAAE;gBACT;oBACE,aAAa,EAAE,WAAW;oBAC1B,OAAO,EAAE,MAAM;iBAChB;aACF;YACD,qBAAqB,EAAE;gBACrB,iBAAiB,EAAE,CAAC;gBACpB,kBAAkB,EAAE,CAAC;aACtB;SACF,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;CAAA;AAED,SAAe,OAAO;;QACpB,MAAM,OAAO,GAAG,IAAI,gCAAc,CAAC;YACjC,SAAS,EAAE,gBAAgB;YAC3B,IAAI,EAAE;gBACJ,SAAS,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE;aAC9B;SACF,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;CAAA;AAED,CAAC,GAAS,EAAE;IACV,MAAM,UAAU,EAAE,CAAC;AAGrB,CAAC,CAAA,CAAC,EAAE,CAAC"}
@@ -6,6 +6,8 @@ const rdh_1 = require("@l-v-yonsama/rdh");
6
6
  const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
7
7
  const os = tslib_1.__importStar(require("os"));
8
8
  const pgsql_ast_parser_1 = require("pgsql-ast-parser");
9
+ const resource_1 = require("../resource");
10
+ const DbResource_1 = require("../resource/DbResource");
9
11
  const types_1 = require("../types");
10
12
  const constant_1 = require("./constant");
11
13
  const RuleEngine_1 = require("./RuleEngine");
@@ -201,7 +203,7 @@ const toViewDataNormalizedQuery = (params) => {
201
203
  };
202
204
  exports.toViewDataNormalizedQuery = toViewDataNormalizedQuery;
203
205
  const createConditionalClause = ({ conditions, columns, params, indent, quote, }) => {
204
- var _a, _b, _c, _d, _e, _f;
206
+ var _a, _b, _c, _d;
205
207
  const queries = [];
206
208
  let andOr = 'AND';
207
209
  const nestedList = [];
@@ -225,7 +227,16 @@ const createConditionalClause = ({ conditions, columns, params, indent, quote, }
225
227
  }
226
228
  else {
227
229
  const { fact, value, operator } = nest;
228
- const colType = (_b = (_a = columns.find((it) => (0, rdh_1.equalsIgnoreCase)(it.name, fact))) === null || _a === void 0 ? void 0 : _a.colType) !== null && _b !== void 0 ? _b : rdh_1.GeneralColumnType.TEXT;
230
+ const mcol = columns.find((it) => (0, rdh_1.equalsIgnoreCase)(it.name, fact));
231
+ let colType = rdh_1.GeneralColumnType.TEXT;
232
+ if (mcol) {
233
+ if (mcol instanceof DbResource_1.DbColumn) {
234
+ colType = mcol.colType;
235
+ }
236
+ else {
237
+ colType = (0, types_1.parseDynamoAttrType)(mcol.attrType);
238
+ }
239
+ }
229
240
  let q = `${wrapQuote(fact, quote)} ${(0, RuleEngine_1.operatorToSQLString)(operator)} `;
230
241
  if (operator === 'isNull' || operator === 'isNotNull') {
231
242
  }
@@ -288,16 +299,16 @@ const createConditionalClause = ({ conditions, columns, params, indent, quote, }
288
299
  else {
289
300
  let val = null;
290
301
  if ((0, rdh_1.isNumericLike)(colType)) {
291
- val = (_c = (0, rdh_1.toNum)(value)) !== null && _c !== void 0 ? _c : null;
302
+ val = (_a = (0, rdh_1.toNum)(value)) !== null && _a !== void 0 ? _a : null;
292
303
  }
293
304
  else if ((0, rdh_1.isBooleanLike)(colType)) {
294
- val = (_d = (0, rdh_1.toBoolean)(value)) !== null && _d !== void 0 ? _d : null;
305
+ val = (_b = (0, rdh_1.toBoolean)(value)) !== null && _b !== void 0 ? _b : null;
295
306
  }
296
307
  else if ((0, rdh_1.isDateTimeOrDate)(colType)) {
297
- val = (_e = (0, rdh_1.toDate)(value)) !== null && _e !== void 0 ? _e : null;
308
+ val = (_c = (0, rdh_1.toDate)(value)) !== null && _c !== void 0 ? _c : null;
298
309
  }
299
310
  else if ((0, rdh_1.isTime)(colType)) {
300
- val = (_f = (0, rdh_1.toTime)(value)) !== null && _f !== void 0 ? _f : null;
311
+ val = (_d = (0, rdh_1.toTime)(value)) !== null && _d !== void 0 ? _d : null;
301
312
  }
302
313
  else {
303
314
  val = value;
@@ -547,11 +558,12 @@ const normalizeSimpleParametersQuery = (query, bindParams) => {
547
558
  };
548
559
  exports.normalizeSimpleParametersQuery = normalizeSimpleParametersQuery;
549
560
  const getProposals = (params) => {
550
- const { db, sql, lastChar, keyword, parentWord } = params;
561
+ const { db: idb, sql, lastChar, keyword, parentWord } = params;
551
562
  const upperKeyword = keyword.toUpperCase();
552
563
  const upperParentWord = parentWord === null || parentWord === void 0 ? void 0 : parentWord.toUpperCase();
553
564
  let ast;
554
565
  const retList = [];
566
+ const db = idb instanceof DbResource_1.RdsDatabase ? idb : toRdsDatabase(idb);
555
567
  try {
556
568
  if (db) {
557
569
  try {
@@ -591,10 +603,15 @@ const getProposals = (params) => {
591
603
  };
592
604
  exports.getProposals = getProposals;
593
605
  const getResourcePositions = (params) => {
594
- const { db, sql } = params;
606
+ const { db: idb, sql } = params;
595
607
  const sqlLowerCase = sql.toLocaleLowerCase();
596
608
  const retList = [];
597
- const schema = db.getSchema({ isDefault: true });
609
+ if (idb === undefined) {
610
+ return retList;
611
+ }
612
+ const schema = idb instanceof DbResource_1.RdsDatabase
613
+ ? idb.getSchema({ isDefault: true })
614
+ : toRdsDatabase(idb).getSchema({ isDefault: true });
598
615
  const tableNames = schema.children
599
616
  .map((it) => it.name.toLocaleLowerCase())
600
617
  .join('|');
@@ -976,4 +993,24 @@ const separateMultipleQueries = (text) => {
976
993
  return queries.filter((it) => it.replace(/[\r\n]+/g, ' ').trim().length > 0);
977
994
  };
978
995
  exports.separateMultipleQueries = separateMultipleQueries;
996
+ const toRdsDatabase = (awsDb) => {
997
+ if (awsDb === undefined) {
998
+ return undefined;
999
+ }
1000
+ const db = new DbResource_1.RdsDatabase(awsDb.name);
1001
+ const schema = new resource_1.DbSchema('public');
1002
+ schema.isDefault = true;
1003
+ db.addChild(schema);
1004
+ awsDb.children.forEach((tbl) => {
1005
+ const table = new DbResource_1.DbTable(tbl.name, 'TABLE', '');
1006
+ schema.addChild(table);
1007
+ tbl.children.forEach((col) => {
1008
+ const column = new DbResource_1.DbColumn(col.name, (0, types_1.parseDynamoAttrType)(col.attrType), {
1009
+ key: col.pk ? 'PRI' : '',
1010
+ });
1011
+ table.addChild(column);
1012
+ });
1013
+ });
1014
+ return db;
1015
+ };
979
1016
  //# sourceMappingURL=SQLHelper.js.map