@varius.io/framework 9.0.2 → 10.0.0

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.
@@ -23,8 +23,7 @@ import * as kong from "./kong";
23
23
  import * as user from "./user";
24
24
  import * as api from "./api";
25
25
  import * as kinesis from "./kinesis";
26
- import * as firestore from "./firestore";
27
26
  import * as scheduler from "./scheduler";
28
27
  import * as events from "./events";
29
- export { analytics, atomicCounter, blockv, oldBlockv, billing, businesses, cloudfront, distribution, iot, nonce, merchants, pg, points, prizes, providers, scheduler, secret, sns, sqs, studio, ws, kong, user, api, kinesis, firestore, viewers, events, };
28
+ export { analytics, atomicCounter, blockv, oldBlockv, billing, businesses, cloudfront, distribution, iot, nonce, merchants, pg, points, prizes, providers, scheduler, secret, sns, sqs, studio, ws, kong, user, api, kinesis, viewers, events, };
30
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,EACN,SAAS,EACT,aAAa,EACb,MAAM,EACN,SAAS,EACT,OAAO,EACP,UAAU,EACV,UAAU,EAEV,YAAY,EACZ,GAAG,EACH,KAAK,EACL,SAAS,EACT,EAAE,EACF,MAAM,EACN,MAAM,EACN,SAAS,EACT,SAAS,EACT,MAAM,EACN,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,IAAI,EACJ,IAAI,EAEJ,GAAG,EACH,OAAO,EACP,SAAS,EACT,OAAO,EACP,MAAM,GACN,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,EACN,SAAS,EACT,aAAa,EACb,MAAM,EACN,SAAS,EACT,OAAO,EACP,UAAU,EACV,UAAU,EAEV,YAAY,EACZ,GAAG,EACH,KAAK,EACL,SAAS,EACT,EAAE,EACF,MAAM,EACN,MAAM,EACN,SAAS,EACT,SAAS,EACT,MAAM,EACN,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,IAAI,EACJ,IAAI,EAEJ,GAAG,EACH,OAAO,EACP,OAAO,EACP,MAAM,GACN,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.events = exports.viewers = exports.firestore = exports.kinesis = exports.api = exports.user = exports.kong = exports.ws = exports.studio = exports.sqs = exports.sns = exports.secret = exports.scheduler = exports.providers = exports.prizes = exports.points = exports.pg = exports.merchants = exports.nonce = exports.iot = exports.distribution = exports.cloudfront = exports.businesses = exports.billing = exports.oldBlockv = exports.blockv = exports.atomicCounter = exports.analytics = void 0;
3
+ exports.events = exports.viewers = exports.kinesis = exports.api = exports.user = exports.kong = exports.ws = exports.studio = exports.sqs = exports.sns = exports.secret = exports.scheduler = exports.providers = exports.prizes = exports.points = exports.pg = exports.merchants = exports.nonce = exports.iot = exports.distribution = exports.cloudfront = exports.businesses = exports.billing = exports.oldBlockv = exports.blockv = exports.atomicCounter = exports.analytics = void 0;
4
4
  const sns = require("./sns");
5
5
  exports.sns = sns;
6
6
  const sqs = require("./sqs");
@@ -53,8 +53,6 @@ const api = require("./api");
53
53
  exports.api = api;
54
54
  const kinesis = require("./kinesis");
55
55
  exports.kinesis = kinesis;
56
- const firestore = require("./firestore");
57
- exports.firestore = firestore;
58
56
  const scheduler = require("./scheduler");
59
57
  exports.scheduler = scheduler;
60
58
  const events = require("./events");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAkD5B,kBAAG;AAjDJ,6BAA6B;AAkD5B,kBAAG;AAjDJ,mCAAmC;AAkDlC,wBAAM;AAjDP,mCAAmC;AA+BlC,wBAAM;AA9BP,0CAA0C;AA+BzC,8BAAS;AA9BV,yCAAyC;AA2BxC,8BAAS;AA1BV,6BAA6B;AAmC5B,kBAAG;AAlCJ,mCAAmC;AA0ClC,wBAAM;AAzCP,2CAA2C;AA8B1C,gCAAU;AA7BX,2BAA2B;AA4C1B,gBAAE;AA3CH,yCAA4B;AAkC3B,aAlCM,kBAAE,CAkCN;AAjCH,iCAAiC;AA+BhC,sBAAK;AA9BN,kDAAkD;AAqBjD,sCAAa;AApBd,sCAAsC;AACtC,qCAAqC;AAsBpC,0BAAO;AArBR,2CAA2C;AAsB1C,gCAAU;AArBX,qCAAqC;AA4CpC,0BAAO;AA3CR,+CAA+C;AAuB9C,oCAAY;AAtBb,yCAAyC;AA6BxC,8BAAS;AA5BV,mCAAmC;AA2BlC,wBAAM;AA1BP,mCAAmC;AAyBlC,wBAAM;AAxBP,yCAAyC;AAsBxC,8BAAS;AArBV,+BAA+B;AAgC9B,oBAAI;AA/BL,+BAA+B;AAgC9B,oBAAI;AA/BL,4CAA4C;AAC5C,6BAA6B;AAgC5B,kBAAG;AA/BJ,qCAAqC;AAgCpC,0BAAO;AA/BR,yCAAyC;AAgCxC,8BAAS;AA/BV,yCAAyC;AAoBxC,8BAAS;AAnBV,mCAAmC;AAgClC,wBAAM"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAiD5B,kBAAG;AAhDJ,6BAA6B;AAiD5B,kBAAG;AAhDJ,mCAAmC;AAiDlC,wBAAM;AAhDP,mCAAmC;AA8BlC,wBAAM;AA7BP,0CAA0C;AA8BzC,8BAAS;AA7BV,yCAAyC;AA0BxC,8BAAS;AAzBV,6BAA6B;AAkC5B,kBAAG;AAjCJ,mCAAmC;AAyClC,wBAAM;AAxCP,2CAA2C;AA6B1C,gCAAU;AA5BX,2BAA2B;AA2C1B,gBAAE;AA1CH,yCAA4B;AAiC3B,aAjCM,kBAAE,CAiCN;AAhCH,iCAAiC;AA8BhC,sBAAK;AA7BN,kDAAkD;AAoBjD,sCAAa;AAnBd,sCAAsC;AACtC,qCAAqC;AAqBpC,0BAAO;AApBR,2CAA2C;AAqB1C,gCAAU;AApBX,qCAAqC;AA0CpC,0BAAO;AAzCR,+CAA+C;AAsB9C,oCAAY;AArBb,yCAAyC;AA4BxC,8BAAS;AA3BV,mCAAmC;AA0BlC,wBAAM;AAzBP,mCAAmC;AAwBlC,wBAAM;AAvBP,yCAAyC;AAqBxC,8BAAS;AApBV,+BAA+B;AA+B9B,oBAAI;AA9BL,+BAA+B;AA+B9B,oBAAI;AA9BL,4CAA4C;AAC5C,6BAA6B;AA+B5B,kBAAG;AA9BJ,qCAAqC;AA+BpC,0BAAO;AA9BR,yCAAyC;AAoBxC,8BAAS;AAnBV,mCAAmC;AA+BlC,wBAAM"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varius.io/framework",
3
- "version": "9.0.2",
3
+ "version": "10.0.0",
4
4
  "main": "./build/index.js",
5
5
  "type": "./build/index.d.ts",
6
6
  "scripts": {
@@ -14,7 +14,6 @@
14
14
  "cleanup": "npm run verify && npm run format"
15
15
  },
16
16
  "dependencies": {
17
- "@google-cloud/firestore": "^4.8.0",
18
17
  "ajv": "^6.5.4",
19
18
  "analytics-node": "^3.4.0-beta.3",
20
19
  "aws-sdk": "^2.758.0",
@@ -1,38 +0,0 @@
1
- import { UpdateData } from "@google-cloud/firestore";
2
- export interface Document<T> {
3
- id: string;
4
- path: string;
5
- data: T;
6
- }
7
- /**
8
- * Gets a document from firestore.
9
- * @param collection The collection name.
10
- * @param docId The document id.
11
- */
12
- export declare function get<T extends object>(collection: string, docId: string): Promise<Document<T>>;
13
- /**
14
- * Sets a document in firestore.
15
- * @param collection The collection name.
16
- * @param docId The document id.
17
- * @param data The data to set.
18
- */
19
- export declare function set<T extends object>(collection: string, docId: string, data: T): Promise<Document<T>>;
20
- /**
21
- * Updates a document in firestore.
22
- * @param collection The collection name.
23
- * @param docId The document id.
24
- * @param data The data to set.
25
- */
26
- export declare function update(collection: string, docId: string, data: object): Promise<void>;
27
- /**
28
- * Applies changes to a document's data in firestore.
29
- *
30
- * NOTE: Partial updates are only allowed at the top-level. Fields nested under
31
- * objects will be deleted if unspecified.
32
- *
33
- * @param collection The collection name.
34
- * @param id The document id.
35
- * @param func The function to call which returns an update object.
36
- */
37
- export declare function apply<T extends object>(collection: string, docId: string, func: (doc: Document<T>) => Promise<UpdateData> | UpdateData): Promise<void>;
38
- //# sourceMappingURL=firestore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"firestore.d.ts","sourceRoot":"","sources":["../../src/services/firestore.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,UAAU,EAGV,MAAM,yBAAyB,CAAC;AAYjC,MAAM,WAAW,QAAQ,CAAC,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACR;AAED;;;;GAIG;AACH,wBAAsB,GAAG,CAAC,CAAC,SAAS,MAAM,EACzC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAUtB;AAED;;;;;GAKG;AACH,wBAAsB,GAAG,CAAC,CAAC,SAAS,MAAM,EACzC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,CAAC,GACL,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAUtB;AAED;;;;;GAKG;AACH,wBAAsB,MAAM,CAC3B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;;;;GASG;AACH,wBAAsB,KAAK,CAAC,CAAC,SAAS,MAAM,EAC3C,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,GAC1D,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
@@ -1,108 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.apply = exports.update = exports.set = exports.get = void 0;
13
- const firestore_1 = require("@google-cloud/firestore");
14
- const debug_1 = require("debug");
15
- const f = new firestore_1.Firestore({
16
- // ignore nested properties set to `undefined`... the default of `false`
17
- // will throw an exception, but `true` enables (top-level!) partial updates
18
- ignoreUndefinedProperties: true,
19
- });
20
- const debug = (0, debug_1.default)("firestore");
21
- (0, firestore_1.setLogFunction)(debug);
22
- /**
23
- * Gets a document from firestore.
24
- * @param collection The collection name.
25
- * @param docId The document id.
26
- */
27
- function get(collection, docId) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const c = f.collection(collection);
30
- const doc = yield c.doc(docId).get();
31
- const data = doc.data();
32
- return {
33
- id: docId,
34
- path: doc.ref.path,
35
- data,
36
- };
37
- });
38
- }
39
- exports.get = get;
40
- /**
41
- * Sets a document in firestore.
42
- * @param collection The collection name.
43
- * @param docId The document id.
44
- * @param data The data to set.
45
- */
46
- function set(collection, docId, data) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- const c = f.collection(collection);
49
- const doc = c.doc(docId);
50
- yield doc.set(data);
51
- return {
52
- id: docId,
53
- path: doc.path,
54
- data,
55
- };
56
- });
57
- }
58
- exports.set = set;
59
- /**
60
- * Updates a document in firestore.
61
- * @param collection The collection name.
62
- * @param docId The document id.
63
- * @param data The data to set.
64
- */
65
- function update(collection, docId, data) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- const c = f.collection(collection);
68
- yield c.doc(docId).update(data);
69
- });
70
- }
71
- exports.update = update;
72
- /**
73
- * Applies changes to a document's data in firestore.
74
- *
75
- * NOTE: Partial updates are only allowed at the top-level. Fields nested under
76
- * objects will be deleted if unspecified.
77
- *
78
- * @param collection The collection name.
79
- * @param id The document id.
80
- * @param func The function to call which returns an update object.
81
- */
82
- function apply(collection, docId, func) {
83
- return __awaiter(this, void 0, void 0, function* () {
84
- let doc = yield get(collection, docId);
85
- // create the document if it doesn't already exist
86
- if (!doc.data) {
87
- doc = yield set(collection, docId, {});
88
- }
89
- const up = yield func(doc);
90
- if (up === null) {
91
- // note: this could be useful as a way to delete
92
- throw new Error("unimplemented");
93
- }
94
- else if (up !== undefined) {
95
- // convert `undefined` values to firestore field deletion
96
- for (const [key, value] of Object.entries(up)) {
97
- if (value === undefined) {
98
- up[key] = firestore_1.FieldValue.delete();
99
- }
100
- }
101
- if (Object.keys(up).length > 0) {
102
- yield update(collection, docId, up);
103
- }
104
- }
105
- });
106
- }
107
- exports.apply = apply;
108
- //# sourceMappingURL=firestore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"firestore.js","sourceRoot":"","sources":["../../src/services/firestore.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAKiC;AACjC,iCAAgC;AAEhC,MAAM,CAAC,GAAG,IAAI,qBAAS,CAAC;IACvB,wEAAwE;IACxE,2EAA2E;IAC3E,yBAAyB,EAAE,IAAI;CAC/B,CAAC,CAAC;AAEH,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,WAAW,CAAC,CAAC;AACvC,IAAA,0BAAc,EAAC,KAAK,CAAC,CAAC;AAQtB;;;;GAIG;AACH,SAAsB,GAAG,CACxB,UAAkB,EAClB,KAAa;;QAEb,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAO,CAAC;QAE7B,OAAO;YACN,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI;YAClB,IAAI;SACJ,CAAC;IACH,CAAC;CAAA;AAbD,kBAaC;AAED;;;;;GAKG;AACH,SAAsB,GAAG,CACxB,UAAkB,EAClB,KAAa,EACb,IAAO;;QAEP,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACnC,MAAM,GAAG,GAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEpB,OAAO;YACN,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI;SACJ,CAAC;IACH,CAAC;CAAA;AAdD,kBAcC;AAED;;;;;GAKG;AACH,SAAsB,MAAM,CAC3B,UAAkB,EAClB,KAAa,EACb,IAAY;;QAEZ,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACnC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CAAA;AAPD,wBAOC;AAED;;;;;;;;;GASG;AACH,SAAsB,KAAK,CAC1B,UAAkB,EAClB,KAAa,EACb,IAA4D;;QAE5D,IAAI,GAAG,GAAG,MAAM,GAAG,CAAI,UAAU,EAAE,KAAK,CAAC,CAAC;QAE1C,kDAAkD;QAElD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACd,GAAG,GAAG,MAAM,GAAG,CAAI,UAAU,EAAE,KAAK,EAAE,EAAO,CAAC,CAAC;SAC/C;QAED,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;QAE3B,IAAI,EAAE,KAAK,IAAI,EAAE;YAChB,gDAAgD;YAChD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;SACjC;aACI,IAAI,EAAE,KAAK,SAAS,EAAE;YAC1B,yDAAyD;YACzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;oBACxB,EAAE,CAAC,GAAG,CAAC,GAAG,sBAAU,CAAC,MAAM,EAAE,CAAC;iBAC9B;aACD;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,MAAM,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;aACpC;SACD;IACF,CAAC;CAAA;AA/BD,sBA+BC"}