@pwrdrvr/microapps-datalib 0.0.18 → 0.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -48
- package/dist/index.js.map +1 -1
- package/dist/manager.d.ts +20 -0
- package/dist/manager.d.ts.map +1 -0
- package/dist/manager.js +26 -0
- package/dist/manager.js.map +1 -0
- package/dist/models/application.d.ts +22 -5
- package/dist/models/application.d.ts.map +1 -1
- package/dist/models/application.js +37 -14
- package/dist/models/application.js.map +1 -1
- package/dist/models/rules.d.ts +8 -4
- package/dist/models/rules.d.ts.map +1 -1
- package/dist/models/rules.js +12 -11
- package/dist/models/rules.js.map +1 -1
- package/dist/models/version.d.ts +13 -6
- package/dist/models/version.d.ts.map +1 -1
- package/dist/models/version.js +21 -15
- package/dist/models/version.js.map +1 -1
- package/package.json +1 -6
- package/src/index.ts +5 -63
- package/src/manager.ts +35 -0
- package/src/models/application.spec.ts +140 -54
- package/src/models/application.ts +61 -18
- package/src/models/rules.spec.ts +32 -25
- package/src/models/rules.ts +17 -12
- package/src/models/version.spec.ts +61 -53
- package/src/models/version.ts +39 -27
- package/LICENSE +0 -21
- package/src/index.spec.ts +0 -89
package/dist/index.d.ts
CHANGED
|
@@ -1,24 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
export { Application, Version, Rules };
|
|
7
|
-
export interface IVersionsAndRules {
|
|
8
|
-
Versions: Version[];
|
|
9
|
-
Rules: Rules;
|
|
10
|
-
}
|
|
11
|
-
export default class Manager {
|
|
12
|
-
static UpdateDefaultRule(appName: string, semVer: string): Promise<void>;
|
|
13
|
-
static GetVersionsAndRules(appName: string): Promise<IVersionsAndRules>;
|
|
14
|
-
private static _client;
|
|
15
|
-
private static _ddbDocClient;
|
|
16
|
-
constructor(args: {
|
|
17
|
-
dynamoDB: DynamoDB;
|
|
18
|
-
tableName: string;
|
|
19
|
-
});
|
|
20
|
-
static get TableName(): string;
|
|
21
|
-
static get DBClient(): DynamoDB;
|
|
22
|
-
static get DBDocClient(): DynamoDBDocument;
|
|
23
|
-
}
|
|
1
|
+
import { DBManager } from './manager';
|
|
2
|
+
import { Application, IVersionsAndRules } from './models/application';
|
|
3
|
+
import { Rules } from './models/rules';
|
|
4
|
+
import { Version } from './models/version';
|
|
5
|
+
export { Application, DBManager, Version, Rules, IVersionsAndRules };
|
|
24
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,51 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Rules = exports.Version = exports.Application = void 0;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
exports.Version = version_1.default;
|
|
13
|
-
class Manager {
|
|
14
|
-
constructor(args) {
|
|
15
|
-
const { dynamoDB, tableName } = args;
|
|
16
|
-
if (Manager._client === undefined) {
|
|
17
|
-
config_1.Config.TableName = tableName;
|
|
18
|
-
Manager._client = dynamoDB;
|
|
19
|
-
Manager._ddbDocClient = lib_dynamodb_1.DynamoDBDocument.from(Manager._client);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
static async UpdateDefaultRule(appName, semVer) {
|
|
23
|
-
const rules = await rules_1.default.LoadAsync(Manager._ddbDocClient, appName);
|
|
24
|
-
const defaultRule = rules.RuleSet.default;
|
|
25
|
-
defaultRule.SemVer = semVer;
|
|
26
|
-
await rules.SaveAsync(this._ddbDocClient);
|
|
27
|
-
}
|
|
28
|
-
static async GetVersionsAndRules(appName) {
|
|
29
|
-
// Get all versions and rules for an app
|
|
30
|
-
// Note: versions are moved out of this key as they become inactive
|
|
31
|
-
// There should be less than, say, 100 versions per app
|
|
32
|
-
const versionTask = version_1.default.LoadVersionsAsync(Manager._ddbDocClient, appName);
|
|
33
|
-
const rulesTask = rules_1.default.LoadAsync(Manager._ddbDocClient, appName);
|
|
34
|
-
await Promise.all([versionTask, rulesTask]);
|
|
35
|
-
return {
|
|
36
|
-
Versions: await versionTask,
|
|
37
|
-
Rules: await rulesTask,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
static get TableName() {
|
|
41
|
-
return config_1.Config.TableName;
|
|
42
|
-
}
|
|
43
|
-
static get DBClient() {
|
|
44
|
-
return Manager._client;
|
|
45
|
-
}
|
|
46
|
-
static get DBDocClient() {
|
|
47
|
-
return Manager._ddbDocClient;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.default = Manager;
|
|
3
|
+
exports.Rules = exports.Version = exports.DBManager = exports.Application = void 0;
|
|
4
|
+
const manager_1 = require("./manager");
|
|
5
|
+
Object.defineProperty(exports, "DBManager", { enumerable: true, get: function () { return manager_1.DBManager; } });
|
|
6
|
+
const application_1 = require("./models/application");
|
|
7
|
+
Object.defineProperty(exports, "Application", { enumerable: true, get: function () { return application_1.Application; } });
|
|
8
|
+
const rules_1 = require("./models/rules");
|
|
9
|
+
Object.defineProperty(exports, "Rules", { enumerable: true, get: function () { return rules_1.Rules; } });
|
|
10
|
+
const version_1 = require("./models/version");
|
|
11
|
+
Object.defineProperty(exports, "Version", { enumerable: true, get: function () { return version_1.Version; } });
|
|
51
12
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAKhB,0FALb,mBAAS,OAKa;AAJ/B,sDAAsE;AAI7D,4FAJA,yBAAW,OAIA;AAHpB,0CAAuC;AAGG,sFAHjC,aAAK,OAGiC;AAF/C,8CAA2C;AAEV,wFAFxB,iBAAO,OAEwB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
3
|
+
export interface IDBManager {
|
|
4
|
+
readonly client: DynamoDBClient;
|
|
5
|
+
readonly ddbDocClient: DynamoDBDocument;
|
|
6
|
+
}
|
|
7
|
+
export declare class DBManager implements IDBManager {
|
|
8
|
+
private _client;
|
|
9
|
+
private _ddbDocClient;
|
|
10
|
+
private _tableName;
|
|
11
|
+
get client(): DynamoDBClient;
|
|
12
|
+
get ddbDocClient(): DynamoDBDocument;
|
|
13
|
+
constructor(args: {
|
|
14
|
+
dynamoClient: DynamoDBClient;
|
|
15
|
+
tableName: string;
|
|
16
|
+
});
|
|
17
|
+
get tableName(): string;
|
|
18
|
+
set tableName(value: string);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;CACzC;AAED,qBAAa,SAAU,YAAW,UAAU;IAC1C,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,UAAU,CAAS;IAE3B,IAAW,MAAM,IAAI,cAAc,CAElC;IAED,IAAW,YAAY,IAAI,gBAAgB,CAE1C;gBAEkB,IAAI,EAAE;QAAE,YAAY,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAO5E,IAAW,SAAS,IAAI,MAAM,CAE7B;IACD,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAEjC;CACF"}
|
package/dist/manager.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DBManager = void 0;
|
|
4
|
+
const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
|
|
5
|
+
class DBManager {
|
|
6
|
+
constructor(args) {
|
|
7
|
+
const { dynamoClient, tableName } = args;
|
|
8
|
+
this._tableName = tableName;
|
|
9
|
+
this._client = dynamoClient;
|
|
10
|
+
this._ddbDocClient = lib_dynamodb_1.DynamoDBDocument.from(this._client);
|
|
11
|
+
}
|
|
12
|
+
get client() {
|
|
13
|
+
return this._client;
|
|
14
|
+
}
|
|
15
|
+
get ddbDocClient() {
|
|
16
|
+
return this._ddbDocClient;
|
|
17
|
+
}
|
|
18
|
+
get tableName() {
|
|
19
|
+
return this._tableName;
|
|
20
|
+
}
|
|
21
|
+
set tableName(value) {
|
|
22
|
+
this._tableName = value;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.DBManager = DBManager;
|
|
26
|
+
//# sourceMappingURL=manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":";;;AACA,wDAAyD;AAOzD,MAAa,SAAS;IAapB,YAAmB,IAAyD;QAC1E,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,+BAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAbD,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IASD,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACD,IAAW,SAAS,CAAC,KAAa;QAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;CACF;AA1BD,8BA0BC"}
|
|
@@ -1,19 +1,36 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DBManager } from '../manager';
|
|
2
|
+
import { Rules } from './rules';
|
|
3
|
+
import { Version, IVersionRecord } from './version';
|
|
4
|
+
export interface IVersionsAndRules {
|
|
5
|
+
Versions: Version[];
|
|
6
|
+
Rules: Rules;
|
|
7
|
+
}
|
|
2
8
|
interface IApplicationRecord {
|
|
3
9
|
PK: string;
|
|
4
10
|
SK: string;
|
|
5
11
|
AppName: string;
|
|
6
12
|
DisplayName: string;
|
|
7
13
|
}
|
|
8
|
-
export
|
|
9
|
-
static
|
|
10
|
-
|
|
14
|
+
export declare class Application implements IApplicationRecord {
|
|
15
|
+
static UpdateDefaultRule(opts: {
|
|
16
|
+
dbManager: DBManager;
|
|
17
|
+
key: Pick<IVersionRecord, 'AppName' | 'SemVer'>;
|
|
18
|
+
}): Promise<void>;
|
|
19
|
+
static GetVersionsAndRules(opts: {
|
|
20
|
+
dbManager: DBManager;
|
|
21
|
+
key: Pick<IApplicationRecord, 'AppName'>;
|
|
22
|
+
}): Promise<IVersionsAndRules>;
|
|
23
|
+
static Load(opts: {
|
|
24
|
+
dbManager: DBManager;
|
|
25
|
+
key: Pick<IApplicationRecord, 'AppName'>;
|
|
26
|
+
}): Promise<Application>;
|
|
27
|
+
static LoadAllApps(dbManager: DBManager): Promise<Application[]>;
|
|
11
28
|
private _keyBy;
|
|
12
29
|
private _appName;
|
|
13
30
|
private _displayName;
|
|
14
31
|
constructor(init?: Partial<IApplicationRecord>);
|
|
15
32
|
get DbStruct(): IApplicationRecord;
|
|
16
|
-
|
|
33
|
+
Save(dbManager: DBManager): Promise<void>;
|
|
17
34
|
get PK(): string;
|
|
18
35
|
get SK(): string;
|
|
19
36
|
get AppName(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/models/application.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/models/application.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAOpD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;CACd;AAED,UAAU,kBAAkB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,WAAY,YAAW,kBAAkB;WAChC,iBAAiB,CAAC,IAAI,EAAE;QAC1C,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;KACjD,GAAG,OAAO,CAAC,IAAI,CAAC;WAWG,mBAAmB,CAAC,IAAI,EAAE;QAC5C,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;KAC1C,GAAG,OAAO,CAAC,iBAAiB,CAAC;WAkBV,IAAI,CAAC,IAAI,EAAE;QAC7B,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;KAC1C,GAAG,OAAO,CAAC,WAAW,CAAC;WAWJ,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAoB7E,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,YAAY,CAAqB;gBAEtB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;IAKrD,IAAW,QAAQ,IAAI,kBAAkB,CAOxC;IAEY,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBtD,IAAW,EAAE,IAAI,MAAM,CAStB;IAED,IAAW,EAAE,IAAI,MAAM,CAStB;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,MAAM,EAEnC;CACF"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Application = void 0;
|
|
3
4
|
const class_transformer_1 = require("class-transformer");
|
|
4
|
-
const
|
|
5
|
+
const rules_1 = require("./rules");
|
|
6
|
+
const version_1 = require("./version");
|
|
5
7
|
var SaveBy;
|
|
6
8
|
(function (SaveBy) {
|
|
7
9
|
SaveBy[SaveBy["AppName"] = 0] = "AppName";
|
|
@@ -12,17 +14,38 @@ class Application {
|
|
|
12
14
|
Object.assign(this, init);
|
|
13
15
|
this._keyBy = SaveBy.AppName;
|
|
14
16
|
}
|
|
15
|
-
static async
|
|
16
|
-
const {
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
static async UpdateDefaultRule(opts) {
|
|
18
|
+
const { dbManager, key } = opts;
|
|
19
|
+
const rules = await rules_1.Rules.Load({ dbManager, key });
|
|
20
|
+
const defaultRule = rules.RuleSet.default;
|
|
21
|
+
defaultRule.SemVer = key.SemVer;
|
|
22
|
+
await rules.Save(dbManager);
|
|
23
|
+
}
|
|
24
|
+
static async GetVersionsAndRules(opts) {
|
|
25
|
+
const { key, dbManager } = opts;
|
|
26
|
+
// Get all versions and rules for an app
|
|
27
|
+
// Note: versions are moved out of this key as they become inactive
|
|
28
|
+
// There should be less than, say, 100 versions per app
|
|
29
|
+
const versionTask = version_1.Version.LoadVersions({ dbManager, key });
|
|
30
|
+
const rulesTask = rules_1.Rules.Load({ dbManager, key });
|
|
31
|
+
await Promise.all([versionTask, rulesTask]);
|
|
32
|
+
return {
|
|
33
|
+
Versions: await versionTask,
|
|
34
|
+
Rules: await rulesTask,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
static async Load(opts) {
|
|
38
|
+
const { key, dbManager } = opts;
|
|
39
|
+
const { Item } = await dbManager.ddbDocClient.get({
|
|
40
|
+
TableName: dbManager.tableName,
|
|
41
|
+
Key: { PK: `appName#${key.AppName}`.toLowerCase(), SK: 'application' },
|
|
19
42
|
});
|
|
20
43
|
const record = class_transformer_1.plainToClass(Application, Item);
|
|
21
44
|
return record;
|
|
22
45
|
}
|
|
23
|
-
static async
|
|
24
|
-
const { Items } = await ddbDocClient.query({
|
|
25
|
-
TableName:
|
|
46
|
+
static async LoadAllApps(dbManager) {
|
|
47
|
+
const { Items } = await dbManager.ddbDocClient.query({
|
|
48
|
+
TableName: dbManager.tableName,
|
|
26
49
|
KeyConditionExpression: 'PK = :pkval',
|
|
27
50
|
ExpressionAttributeValues: {
|
|
28
51
|
':pkval': 'applications',
|
|
@@ -45,18 +68,18 @@ class Application {
|
|
|
45
68
|
DisplayName: this.DisplayName,
|
|
46
69
|
};
|
|
47
70
|
}
|
|
48
|
-
async
|
|
71
|
+
async Save(dbManager) {
|
|
49
72
|
// TODO: Validate that all the fields needed are present
|
|
50
73
|
// Save under specific AppName key
|
|
51
74
|
this._keyBy = SaveBy.AppName;
|
|
52
|
-
const taskByName = ddbDocClient.put({
|
|
53
|
-
TableName:
|
|
75
|
+
const taskByName = dbManager.ddbDocClient.put({
|
|
76
|
+
TableName: dbManager.tableName,
|
|
54
77
|
Item: this.DbStruct,
|
|
55
78
|
});
|
|
56
79
|
// Save under all Applications key
|
|
57
80
|
this._keyBy = SaveBy.Applications;
|
|
58
|
-
const taskByApplications = ddbDocClient.put({
|
|
59
|
-
TableName:
|
|
81
|
+
const taskByApplications = dbManager.ddbDocClient.put({
|
|
82
|
+
TableName: dbManager.tableName,
|
|
60
83
|
Item: this.DbStruct,
|
|
61
84
|
});
|
|
62
85
|
await Promise.all([taskByName, taskByApplications]);
|
|
@@ -97,5 +120,5 @@ class Application {
|
|
|
97
120
|
this._displayName = value;
|
|
98
121
|
}
|
|
99
122
|
}
|
|
100
|
-
exports.
|
|
123
|
+
exports.Application = Application;
|
|
101
124
|
//# sourceMappingURL=application.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/models/application.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/models/application.ts"],"names":[],"mappings":"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"}
|
package/dist/models/rules.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DBManager } from '..';
|
|
2
|
+
import { IVersionRecord } from './version';
|
|
2
3
|
export interface IRule {
|
|
3
4
|
SemVer: string;
|
|
4
5
|
AttributeName: string;
|
|
@@ -14,14 +15,17 @@ export interface IRulesRecord {
|
|
|
14
15
|
RuleSet: RuleSet;
|
|
15
16
|
Version: number;
|
|
16
17
|
}
|
|
17
|
-
export
|
|
18
|
-
static
|
|
18
|
+
export declare class Rules implements IRulesRecord {
|
|
19
|
+
static Load(opts: {
|
|
20
|
+
dbManager: DBManager;
|
|
21
|
+
key: Pick<IVersionRecord, 'AppName'>;
|
|
22
|
+
}): Promise<Rules>;
|
|
19
23
|
private _appName;
|
|
20
24
|
private _ruleSet;
|
|
21
25
|
private _version;
|
|
22
26
|
constructor(init?: Partial<IRulesRecord>);
|
|
23
27
|
get DbStruct(): IRulesRecord;
|
|
24
|
-
|
|
28
|
+
Save(dbManager: DBManager): Promise<void>;
|
|
25
29
|
get PK(): string;
|
|
26
30
|
get SK(): 'rules';
|
|
27
31
|
get AppName(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/models/rules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/models/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,aAAK,OAAO,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,KAAM,YAAW,YAAY;WACpB,IAAI,CAAC,IAAI,EAAE;QAC7B,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;KACtC,GAAG,OAAO,CAAC,KAAK,CAAC;IAWlB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,QAAQ,CAAqB;gBAElB,IAAI,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;IAO/C,IAAW,QAAQ,IAAI,YAAY,CAQlC;IAEY,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBtD,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,IAAW,EAAE,IAAI,OAAO,CAEvB;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAEhC;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;CACF"}
|
package/dist/models/rules.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Rules = void 0;
|
|
3
4
|
const class_transformer_1 = require("class-transformer");
|
|
4
|
-
const config_1 = require("../config");
|
|
5
5
|
class Rules {
|
|
6
6
|
constructor(init) {
|
|
7
7
|
Object.assign(this, init);
|
|
@@ -9,10 +9,11 @@ class Rules {
|
|
|
9
9
|
this._ruleSet = {};
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
static async
|
|
13
|
-
const {
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
static async Load(opts) {
|
|
13
|
+
const { dbManager, key } = opts;
|
|
14
|
+
const { Item } = await dbManager.ddbDocClient.get({
|
|
15
|
+
TableName: dbManager.tableName,
|
|
16
|
+
Key: { PK: `appName#${key.AppName}`.toLowerCase(), SK: 'rules' },
|
|
16
17
|
});
|
|
17
18
|
const record = class_transformer_1.plainToClass(Rules, Item);
|
|
18
19
|
return record;
|
|
@@ -26,16 +27,16 @@ class Rules {
|
|
|
26
27
|
Version: this.Version,
|
|
27
28
|
};
|
|
28
29
|
}
|
|
29
|
-
async
|
|
30
|
+
async Save(dbManager) {
|
|
30
31
|
// TODO: Validate that all the fields needed are present
|
|
31
32
|
// Save under specific AppName key
|
|
32
|
-
const taskByName = ddbDocClient.put({
|
|
33
|
-
TableName:
|
|
33
|
+
const taskByName = dbManager.ddbDocClient.put({
|
|
34
|
+
TableName: dbManager.tableName,
|
|
34
35
|
Item: this.DbStruct,
|
|
35
36
|
});
|
|
36
37
|
// Save under all Applications key
|
|
37
|
-
const taskByApplications = ddbDocClient.put({
|
|
38
|
-
TableName:
|
|
38
|
+
const taskByApplications = dbManager.ddbDocClient.put({
|
|
39
|
+
TableName: dbManager.tableName,
|
|
39
40
|
Item: this.DbStruct,
|
|
40
41
|
});
|
|
41
42
|
await Promise.all([taskByName, taskByApplications]);
|
|
@@ -68,5 +69,5 @@ class Rules {
|
|
|
68
69
|
this._version = value;
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
|
-
exports.
|
|
72
|
+
exports.Rules = Rules;
|
|
72
73
|
//# sourceMappingURL=rules.js.map
|
package/dist/models/rules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/models/rules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/models/rules.ts"],"names":[],"mappings":";;;AAAA,yDAAiD;AAoBjD,MAAa,KAAK;IAmBhB,YAAmB,IAA4B;QAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;SACpB;IACH,CAAC;IAvBM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAGxB;QACC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAEhC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC;YAChD,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,GAAG,EAAE,EAAE,EAAE,EAAE,WAAW,GAAG,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;SACjE,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,gCAAY,CAAiB,KAAK,EAAE,IAAI,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC;IAaD,IAAW,QAAQ;QACjB,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,SAAoB;QACpC,wDAAwD;QAExD,kCAAkC;QAClC,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC;YAC5C,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,IAAI,EAAE,IAAI,CAAC,QAAQ;SACpB,CAAC,CAAC;QAEH,kCAAkC;QAClC,MAAM,kBAAkB,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC;YACpD,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,IAAI,EAAE,IAAI,CAAC,QAAQ;SACpB,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAEpD,+CAA+C;QAC/C,MAAM,UAAU,CAAC;QACjB,MAAM,kBAAkB,CAAC;IAC3B,CAAC;IAED,IAAW,EAAE;QACX,OAAO,WAAW,IAAI,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;IACjD,CAAC;IAED,IAAW,EAAE;QACX,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAkB,CAAC;IACjC,CAAC;IACD,IAAW,OAAO,CAAC,KAAa;QAC9B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAmB,CAAC;IAClC,CAAC;IACD,IAAW,OAAO,CAAC,KAAc;QAC/B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAkB,CAAC;IACjC,CAAC;IACD,IAAW,OAAO,CAAC,KAAa;QAC9B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;CACF;AAtFD,sBAsFC"}
|
package/dist/models/version.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DBManager } from '..';
|
|
2
2
|
export declare type VersionStatus = 'pending' | 'assets-copied' | 'permissioned' | 'integrated' | 'routed' | 'deployed';
|
|
3
3
|
export interface IVersionRecord {
|
|
4
4
|
PK: string;
|
|
@@ -10,9 +10,16 @@ export interface IVersionRecord {
|
|
|
10
10
|
DefaultFile: string;
|
|
11
11
|
IntegrationID: string;
|
|
12
12
|
}
|
|
13
|
-
export
|
|
14
|
-
|
|
15
|
-
static
|
|
13
|
+
export declare type IVersionRecordNoKeysLoose = Partial<Omit<IVersionRecord, 'PK' | 'SK' | 'AppName' | 'SemVer'>> & Pick<IVersionRecord, 'AppName' | 'SemVer'>;
|
|
14
|
+
export declare class Version implements IVersionRecord {
|
|
15
|
+
static LoadVersions(opts: {
|
|
16
|
+
dbManager: DBManager;
|
|
17
|
+
key: Pick<IVersionRecord, 'AppName'>;
|
|
18
|
+
}): Promise<Version[]>;
|
|
19
|
+
static LoadVersion(opts: {
|
|
20
|
+
dbManager: DBManager;
|
|
21
|
+
key: Pick<IVersionRecord, 'AppName' | 'SemVer'>;
|
|
22
|
+
}): Promise<Version>;
|
|
16
23
|
get PK(): string;
|
|
17
24
|
private _keyBy;
|
|
18
25
|
private _appName;
|
|
@@ -21,9 +28,9 @@ export default class Version implements IVersionRecord {
|
|
|
21
28
|
private _status;
|
|
22
29
|
private _defaultFile;
|
|
23
30
|
private _integrationID;
|
|
24
|
-
constructor(init?: Partial<
|
|
31
|
+
constructor(init?: Partial<IVersionRecordNoKeysLoose>);
|
|
25
32
|
get DbStruct(): IVersionRecord;
|
|
26
|
-
|
|
33
|
+
Save(dbManager: DBManager): Promise<void>;
|
|
27
34
|
get SK(): string;
|
|
28
35
|
get AppName(): string;
|
|
29
36
|
set AppName(value: string);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/models/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/models/version.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAM/B,oBAAY,aAAa,GACrB,SAAS,GACT,eAAe,GACf,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,oBAAY,yBAAyB,GAAG,OAAO,CAC7C,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,QAAQ,CAAC,CACzD,GACC,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;AAE7C,qBAAa,OAAQ,YAAW,cAAc;WACxB,YAAY,CAAC,IAAI,EAAE;QACrC,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;KACtC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;WAsBF,WAAW,CAAC,IAAI,EAAE;QACpC,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;KACjD,GAAG,OAAO,CAAC,OAAO,CAAC;IAcpB,IAAW,EAAE,IAAI,MAAM,CAOtB;IAED,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAS;gBAEZ,IAAI,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAU5D,IAAW,QAAQ,IAAI,cAAc,CAWpC;IAEY,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAWtD,IAAW,EAAE,IAAI,MAAM,CAOtB;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IACD,IAAW,IAAI,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED,IAAW,MAAM,IAAI,aAAa,CAEjC;IACD,IAAW,MAAM,CAAC,KAAK,EAAE,aAAa,EAErC;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,MAAM,EAEnC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IACD,IAAW,aAAa,CAAC,KAAK,EAAE,MAAM,EAErC;CACF"}
|
package/dist/models/version.js
CHANGED
|
@@ -1,22 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Version = void 0;
|
|
3
4
|
const class_transformer_1 = require("class-transformer");
|
|
4
|
-
const config_1 = require("../config");
|
|
5
5
|
var SaveBy;
|
|
6
6
|
(function (SaveBy) {
|
|
7
7
|
SaveBy[SaveBy["AppName"] = 0] = "AppName";
|
|
8
8
|
})(SaveBy || (SaveBy = {}));
|
|
9
9
|
class Version {
|
|
10
10
|
constructor(init) {
|
|
11
|
-
Object.assign(this, init);
|
|
12
11
|
this._keyBy = SaveBy.AppName;
|
|
12
|
+
this._status = 'pending';
|
|
13
|
+
this._defaultFile = '';
|
|
14
|
+
this._integrationID = '';
|
|
15
|
+
// Save any passed in values over the defaults
|
|
16
|
+
Object.assign(this, init);
|
|
13
17
|
}
|
|
14
|
-
static async
|
|
15
|
-
const {
|
|
16
|
-
|
|
18
|
+
static async LoadVersions(opts) {
|
|
19
|
+
const { dbManager, key } = opts;
|
|
20
|
+
const { Items } = await dbManager.ddbDocClient.query({
|
|
21
|
+
TableName: dbManager.tableName,
|
|
17
22
|
KeyConditionExpression: 'PK = :pkval and begins_with(SK, :skval)',
|
|
18
23
|
ExpressionAttributeValues: {
|
|
19
|
-
':pkval': `appName#${
|
|
24
|
+
':pkval': `appName#${key.AppName}`.toLowerCase(),
|
|
20
25
|
':skval': 'version',
|
|
21
26
|
},
|
|
22
27
|
});
|
|
@@ -29,12 +34,13 @@ class Version {
|
|
|
29
34
|
}
|
|
30
35
|
return records;
|
|
31
36
|
}
|
|
32
|
-
static async
|
|
33
|
-
const {
|
|
34
|
-
|
|
37
|
+
static async LoadVersion(opts) {
|
|
38
|
+
const { dbManager, key } = opts;
|
|
39
|
+
const { Item } = await dbManager.ddbDocClient.get({
|
|
40
|
+
TableName: dbManager.tableName,
|
|
35
41
|
Key: {
|
|
36
|
-
PK: `appName#${
|
|
37
|
-
SK: `version#${
|
|
42
|
+
PK: `appName#${key.AppName}`.toLowerCase(),
|
|
43
|
+
SK: `version#${key.SemVer}`.toLowerCase(),
|
|
38
44
|
},
|
|
39
45
|
});
|
|
40
46
|
const record = class_transformer_1.plainToClass(Version, Item);
|
|
@@ -60,12 +66,12 @@ class Version {
|
|
|
60
66
|
IntegrationID: this.IntegrationID,
|
|
61
67
|
};
|
|
62
68
|
}
|
|
63
|
-
async
|
|
69
|
+
async Save(dbManager) {
|
|
64
70
|
// TODO: Validate that all the fields needed are present
|
|
65
71
|
// Save under specific AppName key
|
|
66
72
|
this._keyBy = SaveBy.AppName;
|
|
67
|
-
await ddbDocClient.put({
|
|
68
|
-
TableName:
|
|
73
|
+
await dbManager.ddbDocClient.put({
|
|
74
|
+
TableName: dbManager.tableName,
|
|
69
75
|
Item: this.DbStruct,
|
|
70
76
|
});
|
|
71
77
|
}
|
|
@@ -114,5 +120,5 @@ class Version {
|
|
|
114
120
|
this._integrationID = value;
|
|
115
121
|
}
|
|
116
122
|
}
|
|
117
|
-
exports.
|
|
123
|
+
exports.Version = Version;
|
|
118
124
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/models/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/models/version.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pwrdrvr/microapps-datalib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.22",
|
|
4
4
|
"description": "Data library for the microapps framework",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -32,12 +32,7 @@
|
|
|
32
32
|
"class-transformer": "^0.4.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@types/chai": "^4.2.15",
|
|
36
|
-
"@types/mocha": "^8.2.1",
|
|
37
35
|
"@types/node-fetch": "^2.5.8",
|
|
38
|
-
"chai": "^4.3.4",
|
|
39
|
-
"dynamodb-local": "^0.0.31",
|
|
40
|
-
"mocha": "^8.3.0",
|
|
41
36
|
"node-fetch": "^2.6.1"
|
|
42
37
|
},
|
|
43
38
|
"files": [
|