velocious 1.0.150 → 1.0.152
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/build/src/cli/base-command.d.ts +2 -2
- package/build/src/cli/base-command.d.ts.map +1 -1
- package/build/src/cli/base-command.js +2 -2
- package/build/src/cli/commands/destroy/migration.d.ts +1 -0
- package/build/src/cli/commands/destroy/migration.d.ts.map +1 -1
- package/build/src/cli/commands/generate/base-models.d.ts +1 -0
- package/build/src/cli/commands/generate/base-models.d.ts.map +1 -1
- package/build/src/cli/commands/generate/migration.d.ts +1 -0
- package/build/src/cli/commands/generate/migration.d.ts.map +1 -1
- package/build/src/cli/commands/generate/model.d.ts +1 -0
- package/build/src/cli/commands/generate/model.d.ts.map +1 -1
- package/build/src/cli/commands/init.d.ts +1 -0
- package/build/src/cli/commands/init.d.ts.map +1 -1
- package/build/src/cli/commands/routes.d.ts +1 -0
- package/build/src/cli/commands/routes.d.ts.map +1 -1
- package/build/src/cli/commands/server.d.ts +1 -0
- package/build/src/cli/commands/server.d.ts.map +1 -1
- package/build/src/cli/commands/test.d.ts +1 -0
- package/build/src/cli/commands/test.d.ts.map +1 -1
- package/build/src/cli/index.d.ts +1 -1
- package/build/src/cli/index.d.ts.map +1 -1
- package/build/src/configuration.d.ts +3 -4
- package/build/src/configuration.d.ts.map +1 -1
- package/build/src/configuration.js +3 -3
- package/build/src/controller.d.ts +6 -6
- package/build/src/controller.d.ts.map +1 -1
- package/build/src/controller.js +5 -5
- package/build/src/database/drivers/base-column.d.ts +2 -2
- package/build/src/database/drivers/base-column.d.ts.map +1 -1
- package/build/src/database/drivers/base-column.js +2 -2
- package/build/src/database/drivers/base-foreign-key.d.ts +3 -3
- package/build/src/database/drivers/base-foreign-key.d.ts.map +1 -1
- package/build/src/database/drivers/base-foreign-key.js +2 -2
- package/build/src/database/drivers/base-table.d.ts +2 -2
- package/build/src/database/drivers/base-table.d.ts.map +1 -1
- package/build/src/database/drivers/base-table.js +2 -2
- package/build/src/database/drivers/base.d.ts +16 -16
- package/build/src/database/drivers/base.d.ts.map +1 -1
- package/build/src/database/drivers/base.js +12 -12
- package/build/src/database/drivers/mssql/column.d.ts +3 -4
- package/build/src/database/drivers/mssql/column.d.ts.map +1 -1
- package/build/src/database/drivers/mssql/column.js +2 -2
- package/build/src/database/drivers/mssql/index.d.ts +5 -0
- package/build/src/database/drivers/mssql/index.d.ts.map +1 -1
- package/build/src/database/drivers/mssql/options.js +2 -2
- package/build/src/database/drivers/mssql/structure-sql.d.ts +2 -2
- package/build/src/database/drivers/mssql/structure-sql.d.ts.map +1 -1
- package/build/src/database/drivers/mssql/structure-sql.js +2 -2
- package/build/src/database/drivers/mssql/table.js +2 -2
- package/build/src/database/drivers/mysql/column.d.ts +3 -4
- package/build/src/database/drivers/mysql/column.d.ts.map +1 -1
- package/build/src/database/drivers/mysql/column.js +2 -2
- package/build/src/database/drivers/mysql/index.d.ts +2 -2
- package/build/src/database/drivers/mysql/index.d.ts.map +1 -1
- package/build/src/database/drivers/mysql/index.js +5 -5
- package/build/src/database/drivers/mysql/options.js +2 -2
- package/build/src/database/drivers/mysql/query.d.ts +2 -2
- package/build/src/database/drivers/mysql/query.d.ts.map +1 -1
- package/build/src/database/drivers/mysql/query.js +3 -3
- package/build/src/database/drivers/mysql/structure-sql.d.ts +2 -2
- package/build/src/database/drivers/mysql/structure-sql.d.ts.map +1 -1
- package/build/src/database/drivers/mysql/structure-sql.js +2 -2
- package/build/src/database/drivers/pgsql/column.d.ts +3 -4
- package/build/src/database/drivers/pgsql/column.d.ts.map +1 -1
- package/build/src/database/drivers/pgsql/column.js +2 -2
- package/build/src/database/drivers/pgsql/index.d.ts +1 -1
- package/build/src/database/drivers/pgsql/index.d.ts.map +1 -1
- package/build/src/database/drivers/pgsql/index.js +5 -5
- package/build/src/database/drivers/pgsql/structure-sql.d.ts +2 -2
- package/build/src/database/drivers/pgsql/structure-sql.d.ts.map +1 -1
- package/build/src/database/drivers/pgsql/structure-sql.js +2 -2
- package/build/src/database/drivers/sqlite/base.js +5 -5
- package/build/src/database/drivers/sqlite/column.d.ts +3 -4
- package/build/src/database/drivers/sqlite/column.d.ts.map +1 -1
- package/build/src/database/drivers/sqlite/column.js +2 -2
- package/build/src/database/drivers/sqlite/connection-sql-js.d.ts +2 -2
- package/build/src/database/drivers/sqlite/connection-sql-js.d.ts.map +1 -1
- package/build/src/database/drivers/sqlite/connection-sql-js.js +2 -2
- package/build/src/database/drivers/sqlite/foreign-key.d.ts +2 -2
- package/build/src/database/drivers/sqlite/foreign-key.d.ts.map +1 -1
- package/build/src/database/drivers/sqlite/foreign-key.js +2 -2
- package/build/src/database/drivers/sqlite/index.js +2 -2
- package/build/src/database/drivers/sqlite/index.web.js +2 -2
- package/build/src/database/drivers/sqlite/query.d.ts +2 -2
- package/build/src/database/drivers/sqlite/query.d.ts.map +1 -1
- package/build/src/database/drivers/sqlite/query.js +3 -3
- package/build/src/database/drivers/sqlite/query.web.d.ts +2 -2
- package/build/src/database/drivers/sqlite/query.web.d.ts.map +1 -1
- package/build/src/database/drivers/sqlite/query.web.js +3 -3
- package/build/src/database/migration/index.d.ts +2 -2
- package/build/src/database/migration/index.d.ts.map +1 -1
- package/build/src/database/migration/index.js +3 -3
- package/build/src/database/query/delete-base.d.ts +3 -3
- package/build/src/database/query/delete-base.d.ts.map +1 -1
- package/build/src/database/query/delete-base.js +2 -2
- package/build/src/database/query/insert-base.d.ts +5 -5
- package/build/src/database/query/insert-base.d.ts.map +1 -1
- package/build/src/database/query/insert-base.js +3 -3
- package/build/src/database/query/model-class-query.d.ts +2 -2
- package/build/src/database/query/model-class-query.d.ts.map +1 -1
- package/build/src/database/query/model-class-query.js +2 -2
- package/build/src/database/query/update-base.d.ts +6 -6
- package/build/src/database/query/update-base.d.ts.map +1 -1
- package/build/src/database/query/update-base.js +3 -3
- package/build/src/database/query-parser/options.d.ts +4 -4
- package/build/src/database/query-parser/options.d.ts.map +1 -1
- package/build/src/database/query-parser/options.js +3 -3
- package/build/src/database/record/index.d.ts +34 -34
- package/build/src/database/record/index.d.ts.map +1 -1
- package/build/src/database/record/index.js +27 -28
- package/build/src/database/record/instance-relationships/base.d.ts +2 -2
- package/build/src/database/record/instance-relationships/base.d.ts.map +1 -1
- package/build/src/database/record/instance-relationships/base.js +2 -2
- package/build/src/database/record/instance-relationships/belongs-to.d.ts +2 -2
- package/build/src/database/record/instance-relationships/belongs-to.d.ts.map +1 -1
- package/build/src/database/record/instance-relationships/belongs-to.js +2 -2
- package/build/src/database/record/instance-relationships/has-many.d.ts +4 -4
- package/build/src/database/record/instance-relationships/has-many.d.ts.map +1 -1
- package/build/src/database/record/instance-relationships/has-many.js +3 -3
- package/build/src/database/record/instance-relationships/has-one.d.ts +2 -2
- package/build/src/database/record/instance-relationships/has-one.d.ts.map +1 -1
- package/build/src/database/record/instance-relationships/has-one.js +2 -2
- package/build/src/database/record/validators/base.d.ts +3 -3
- package/build/src/database/record/validators/base.d.ts.map +1 -1
- package/build/src/database/record/validators/base.js +2 -2
- package/build/src/database/table-data/table-column.d.ts +4 -4
- package/build/src/database/table-data/table-column.d.ts.map +1 -1
- package/build/src/database/table-data/table-column.js +3 -3
- package/build/src/environment-handlers/node/cli/commands/generate/base-models.js +2 -2
- package/build/src/error-logger.d.ts +3 -3
- package/build/src/error-logger.d.ts.map +1 -1
- package/build/src/error-logger.js +3 -3
- package/build/src/http-client/websocket-client.d.ts +10 -10
- package/build/src/http-client/websocket-client.d.ts.map +1 -1
- package/build/src/http-client/websocket-client.js +8 -8
- package/build/src/http-server/client/index.d.ts +1 -2
- package/build/src/http-server/client/index.d.ts.map +1 -1
- package/build/src/http-server/client/index.js +2 -2
- package/build/src/http-server/client/params-to-object.d.ts +11 -11
- package/build/src/http-server/client/params-to-object.d.ts.map +1 -1
- package/build/src/http-server/client/params-to-object.js +9 -9
- package/build/src/http-server/client/request-buffer/index.d.ts +1 -2
- package/build/src/http-server/client/request-buffer/index.d.ts.map +1 -1
- package/build/src/http-server/client/request-buffer/index.js +2 -2
- package/build/src/http-server/client/request-parser.d.ts +1 -2
- package/build/src/http-server/client/request-parser.d.ts.map +1 -1
- package/build/src/http-server/client/request-parser.js +2 -2
- package/build/src/http-server/client/request-runner.d.ts +1 -2
- package/build/src/http-server/client/request-runner.d.ts.map +1 -1
- package/build/src/http-server/client/request-runner.js +2 -2
- package/build/src/http-server/client/websocket-request.d.ts +7 -11
- package/build/src/http-server/client/websocket-request.d.ts.map +1 -1
- package/build/src/http-server/client/websocket-request.js +3 -3
- package/build/src/http-server/client/websocket-session.d.ts +3 -4
- package/build/src/http-server/client/websocket-session.d.ts.map +1 -1
- package/build/src/http-server/client/websocket-session.js +3 -3
- package/build/src/http-server/index.d.ts +1 -2
- package/build/src/http-server/index.d.ts.map +1 -1
- package/build/src/http-server/index.js +2 -2
- package/build/src/http-server/server-client.d.ts +1 -2
- package/build/src/http-server/server-client.d.ts.map +1 -1
- package/build/src/http-server/server-client.js +2 -2
- package/build/src/http-server/websocket-events-host.d.ts +2 -2
- package/build/src/http-server/websocket-events-host.d.ts.map +1 -1
- package/build/src/http-server/websocket-events-host.js +2 -2
- package/build/src/http-server/websocket-events.d.ts +2 -2
- package/build/src/http-server/websocket-events.d.ts.map +1 -1
- package/build/src/http-server/websocket-events.js +2 -2
- package/build/src/http-server/worker-handler/index.d.ts +6 -6
- package/build/src/http-server/worker-handler/index.d.ts.map +1 -1
- package/build/src/http-server/worker-handler/index.js +4 -4
- package/build/src/http-server/worker-handler/worker-thread.d.ts +4 -4
- package/build/src/http-server/worker-handler/worker-thread.d.ts.map +1 -1
- package/build/src/http-server/worker-handler/worker-thread.js +3 -3
- package/build/src/logger.d.ts +14 -14
- package/build/src/logger.d.ts.map +1 -1
- package/build/src/logger.js +10 -10
- package/build/src/routes/base-route.d.ts +2 -2
- package/build/src/routes/base-route.d.ts.map +1 -1
- package/build/src/routes/base-route.js +2 -2
- package/build/src/routes/basic-route.js +2 -2
- package/build/src/routes/get-route.js +2 -2
- package/build/src/routes/namespace-route.js +2 -2
- package/build/src/routes/post-route.js +2 -2
- package/build/src/routes/resolver.d.ts +4 -6
- package/build/src/routes/resolver.d.ts.map +1 -1
- package/build/src/routes/resolver.js +4 -4
- package/build/src/routes/resource-route.js +2 -2
- package/build/src/testing/format-value.d.ts +4 -4
- package/build/src/testing/format-value.d.ts.map +1 -1
- package/build/src/testing/format-value.js +7 -7
- package/build/src/testing/test.d.ts +15 -15
- package/build/src/testing/test.d.ts.map +1 -1
- package/build/src/testing/test.js +9 -9
- package/build/src/utils/ensure-error.d.ts +2 -2
- package/build/src/utils/ensure-error.d.ts.map +1 -1
- package/build/src/utils/ensure-error.js +2 -2
- package/build/src/utils/event-emitter.d.ts +4 -0
- package/build/src/utils/event-emitter.d.ts.map +1 -0
- package/build/src/utils/event-emitter.js +6 -0
- package/build/src/utils/with-tracked-stack.d.ts +2 -2
- package/build/src/utils/with-tracked-stack.d.ts.map +1 -1
- package/build/src/utils/with-tracked-stack.js +2 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -28,10 +28,10 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship<MC extends
|
|
|
28
28
|
addToLoaded(models: InstanceType<TMC>[] | InstanceType<TMC>): void;
|
|
29
29
|
/**
|
|
30
30
|
* @abstract
|
|
31
|
-
* @param {Record<string,
|
|
31
|
+
* @param {Record<string, any>} attributes - Attributes.
|
|
32
32
|
* @returns {InstanceType<TMC>} - The build.
|
|
33
33
|
*/
|
|
34
|
-
build(attributes: Record<string,
|
|
34
|
+
build(attributes: Record<string, any>): InstanceType<TMC>;
|
|
35
35
|
/** @returns {boolean | undefined} Whether the relationship should be auto-saved before saving the parent model */
|
|
36
36
|
getAutoSave(): boolean | undefined;
|
|
37
37
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/base.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH;;;;GAIG;AACH,qEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAMjD;;OAEG;IACH,qCAFW,6BAA6B,CAAC,EAAE,EAAE,GAAG,CAAC,EAMhD;IAVD,kCAAkC;IAClC,WADW,OAAO,GAAG,SAAS,CACT;IAMnB,gBAAmB;IACnB,wBAAkB;IAClB,yDAAgC;IAGlC;;;;OAIG;IACH,oBAHW,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,GACrC,IAAI,CAIhB;IAED;;;;OAIG;IACH,kBAHW,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/base.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH;;;;GAIG;AACH,qEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAMjD;;OAEG;IACH,qCAFW,6BAA6B,CAAC,EAAE,EAAE,GAAG,CAAC,EAMhD;IAVD,kCAAkC;IAClC,WADW,OAAO,GAAG,SAAS,CACT;IAMnB,gBAAmB;IACnB,wBAAkB;IAClB,yDAAgC;IAGlC;;;;OAIG;IACH,oBAHW,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,GACrC,IAAI,CAIhB;IAED;;;;OAIG;IACH,kBAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,YAAY,CAAC,GAAG,CAAC,CAI7B;IAED,kHAAkH;IAClH,eADc,OAAO,GAAG,SAAS,CACM;IAEvC;;;OAGG;IACH,8BAHW,OAAO,GACL,IAAI,CAEkD;IAEnE;;;OAGG;IACH,mBAHW,OAAO,GACL,IAAI,CAE4B;IAE7C,+EAA+E;IAC/E,YADc,OAAO,CACY;IAEjC;;;OAGG;IACH,QAFa,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED,sEAAsE;IACtE,YADe,OAAO,CACqB;IAE3C,sIAAsI;IACtI,UADc,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAOrE;IAED,oHAAoH;IACpH,iBADY,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,QAC3B;IAAtB,iDAAoB;IAEvC,iGAAiG;IACjG,wBADc,YAAY,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CACnB;IAE9C,qFAAqF;IACrF,gBADc,OAAO,CAC6B;IAElD,4EAA4E;IAC5E,0BADY,OAAO,QACwC;IAA/B,oBAA6B;IAEzD,8DAA8D;IAC9D,iBADc,MAAM,CAC6C;IAEjE,gDAAgD;IAChD,YADc,YAAY,CAAC,EAAE,CAAC,CACE;IAEhC,sEAAsE;IACtE,iBADc,MAAM,CAC6C;IAEjE,gIAAgI;IAChI,mBADc,OAAO,0BAA0B,EAAE,OAAO,CACV;IAE9C,iFAAiF;IACjF,uBADc,GAAG,GAAG,SAAS,CAK5B;IAED,uFAAuF;IACvF,WADc,MAAM,CACiC;CACtD;0CAlHmD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;;;;WAErC,YAAY,CAAC,EAAE,CAAC;;;;kBAChB,OAAO,0BAA0B,EAAE,OAAO"}
|
|
@@ -32,7 +32,7 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
|
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
34
|
* @abstract
|
|
35
|
-
* @param {Record<string,
|
|
35
|
+
* @param {Record<string, any>} attributes - Attributes.
|
|
36
36
|
* @returns {InstanceType<TMC>} - The build.
|
|
37
37
|
*/
|
|
38
38
|
build(attributes) {
|
|
@@ -92,4 +92,4 @@ export default class VelociousDatabaseRecordBaseInstanceRelationship {
|
|
|
92
92
|
/** @returns {string} The type of relationship (e.g. "has_many", "belongs_to", etc.) */
|
|
93
93
|
getType() { return this.getRelationship().getType(); }
|
|
94
94
|
}
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhYmFzZS9yZWNvcmQvaW5zdGFuY2UtcmVsYXRpb25zaGlwcy9iYXNlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWjs7Ozs7O0dBTUc7QUFFSDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE9BQU8sT0FBTywrQ0FBK0M7SUFDbEUsa0NBQWtDO0lBQ2xDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFFckI7O09BRUc7SUFDSCxZQUFZLEVBQUMsS0FBSyxFQUFFLFlBQVksRUFBQztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxNQUFNO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxVQUFVO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0lBQzVDLENBQUM7SUFFRCxrSEFBa0g7SUFDbEgsV0FBVyxLQUFLLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUM7SUFFdkM7OztPQUdHO0lBQ0gsV0FBVyxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUEsQ0FBQyxDQUFDO0lBRW5FOzs7T0FHRztJQUNILFFBQVEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUEsQ0FBQyxDQUFDO0lBRTdDLCtFQUErRTtJQUMvRSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBLENBQUMsQ0FBQztJQUVqQzs7O09BR0c7SUFDSCxJQUFJO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCxzRUFBc0U7SUFDdEUsUUFBUSxLQUFLLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFFM0Msc0lBQXNJO0lBQ3RJLE1BQU07UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLHdCQUF3QixDQUFDLENBQUE7UUFDcEgsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBRUQsb0hBQW9IO0lBQ3BILFNBQVMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBRXpDLGlHQUFpRztJQUNqRyxvQkFBb0IsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBRTlDLHFGQUFxRjtJQUNyRixZQUFZLEtBQUssT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQSxDQUFDLENBQUM7SUFFbEQsNEVBQTRFO0lBQzVFLFlBQVksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUEsQ0FBQyxDQUFDO0lBRTNELDhEQUE4RDtJQUM5RCxhQUFhLEtBQUssT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUEsQ0FBQyxDQUFDO0lBRWpFLGdEQUFnRDtJQUNoRCxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUVoQyxzRUFBc0U7SUFDdEUsYUFBYSxLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBLENBQUMsQ0FBQztJQUVqRSxnSUFBZ0k7SUFDaEksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQSxDQUFDLENBQUM7SUFFOUMsaUZBQWlGO0lBQ2pGLG1CQUFtQjtRQUNqQixNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUUxRixPQUFPLGdCQUFnQixDQUFBO0lBQ3pCLENBQUM7SUFFRCx1RkFBdUY7SUFDdkYsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFBLENBQUMsQ0FBQztDQUN0RCIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG4vKipcbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IE1DXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBUTUNcbiAqIEB0eXBlZGVmIHtvYmplY3R9IEluc3RhbmNlUmVsYXRpb25zaGlwc0Jhc2VBcmdzXG4gKiBAcHJvcGVydHkge0luc3RhbmNlVHlwZTxNQz59IG1vZGVsIC0gUGFyZW50IG1vZGVsIGluc3RhbmNlLlxuICogQHByb3BlcnR5IHtpbXBvcnQoXCIuLi9yZWxhdGlvbnNoaXBzL2Jhc2UuanNcIikuZGVmYXVsdH0gcmVsYXRpb25zaGlwIC0gUmVsYXRpb25zaGlwIG1ldGFkYXRhIGRlZmluaXRpb24uXG4gKi9cblxuLyoqXG4gKiBBIGdlbmVyaWMgcXVlcnkgb3ZlciBzb21lIG1vZGVsIHR5cGUuXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHRlbXBsYXRlIHt0eXBlb2YgaW1wb3J0KFwiLi4vaW5kZXguanNcIikuZGVmYXVsdH0gVE1DXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c0RhdGFiYXNlUmVjb3JkQmFzZUluc3RhbmNlUmVsYXRpb25zaGlwIHtcbiAgLyoqIEB0eXBlIHtib29sZWFuIHwgdW5kZWZpbmVkfSAqL1xuICBfYXV0b1NhdmUgPSB1bmRlZmluZWRcblxuICAvKipcbiAgICogQHBhcmFtIHtJbnN0YW5jZVJlbGF0aW9uc2hpcHNCYXNlQXJnczxNQywgVE1DPn0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe21vZGVsLCByZWxhdGlvbnNoaXB9KSB7XG4gICAgdGhpcy5fZGlydHkgPSBmYWxzZVxuICAgIHRoaXMubW9kZWwgPSBtb2RlbFxuICAgIHRoaXMucmVsYXRpb25zaGlwID0gcmVsYXRpb25zaGlwXG4gIH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqIEBwYXJhbSB7SW5zdGFuY2VUeXBlPFRNQz5bXSB8IEluc3RhbmNlVHlwZTxUTUM+
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhYmFzZS9yZWNvcmQvaW5zdGFuY2UtcmVsYXRpb25zaGlwcy9iYXNlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWjs7Ozs7O0dBTUc7QUFFSDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE9BQU8sT0FBTywrQ0FBK0M7SUFDbEUsa0NBQWtDO0lBQ2xDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFFckI7O09BRUc7SUFDSCxZQUFZLEVBQUMsS0FBSyxFQUFFLFlBQVksRUFBQztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxNQUFNO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxVQUFVO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO0lBQzVDLENBQUM7SUFFRCxrSEFBa0g7SUFDbEgsV0FBVyxLQUFLLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQSxDQUFDLENBQUM7SUFFdkM7OztPQUdHO0lBQ0gsV0FBVyxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUEsQ0FBQyxDQUFDO0lBRW5FOzs7T0FHRztJQUNILFFBQVEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUEsQ0FBQyxDQUFDO0lBRTdDLCtFQUErRTtJQUMvRSxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBLENBQUMsQ0FBQztJQUVqQzs7O09BR0c7SUFDSCxJQUFJO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCxzRUFBc0U7SUFDdEUsUUFBUSxLQUFLLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFFM0Msc0lBQXNJO0lBQ3RJLE1BQU07UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLHdCQUF3QixDQUFDLENBQUE7UUFDcEgsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBRUQsb0hBQW9IO0lBQ3BILFNBQVMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBRXpDLGlHQUFpRztJQUNqRyxvQkFBb0IsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBRTlDLHFGQUFxRjtJQUNyRixZQUFZLEtBQUssT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQSxDQUFDLENBQUM7SUFFbEQsNEVBQTRFO0lBQzVFLFlBQVksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUEsQ0FBQyxDQUFDO0lBRTNELDhEQUE4RDtJQUM5RCxhQUFhLEtBQUssT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUEsQ0FBQyxDQUFDO0lBRWpFLGdEQUFnRDtJQUNoRCxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUVoQyxzRUFBc0U7SUFDdEUsYUFBYSxLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBLENBQUMsQ0FBQztJQUVqRSxnSUFBZ0k7SUFDaEksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQSxDQUFDLENBQUM7SUFFOUMsaUZBQWlGO0lBQ2pGLG1CQUFtQjtRQUNqQixNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUUxRixPQUFPLGdCQUFnQixDQUFBO0lBQ3pCLENBQUM7SUFFRCx1RkFBdUY7SUFDdkYsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFBLENBQUMsQ0FBQztDQUN0RCIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG4vKipcbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IE1DXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBUTUNcbiAqIEB0eXBlZGVmIHtvYmplY3R9IEluc3RhbmNlUmVsYXRpb25zaGlwc0Jhc2VBcmdzXG4gKiBAcHJvcGVydHkge0luc3RhbmNlVHlwZTxNQz59IG1vZGVsIC0gUGFyZW50IG1vZGVsIGluc3RhbmNlLlxuICogQHByb3BlcnR5IHtpbXBvcnQoXCIuLi9yZWxhdGlvbnNoaXBzL2Jhc2UuanNcIikuZGVmYXVsdH0gcmVsYXRpb25zaGlwIC0gUmVsYXRpb25zaGlwIG1ldGFkYXRhIGRlZmluaXRpb24uXG4gKi9cblxuLyoqXG4gKiBBIGdlbmVyaWMgcXVlcnkgb3ZlciBzb21lIG1vZGVsIHR5cGUuXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHRlbXBsYXRlIHt0eXBlb2YgaW1wb3J0KFwiLi4vaW5kZXguanNcIikuZGVmYXVsdH0gVE1DXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c0RhdGFiYXNlUmVjb3JkQmFzZUluc3RhbmNlUmVsYXRpb25zaGlwIHtcbiAgLyoqIEB0eXBlIHtib29sZWFuIHwgdW5kZWZpbmVkfSAqL1xuICBfYXV0b1NhdmUgPSB1bmRlZmluZWRcblxuICAvKipcbiAgICogQHBhcmFtIHtJbnN0YW5jZVJlbGF0aW9uc2hpcHNCYXNlQXJnczxNQywgVE1DPn0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe21vZGVsLCByZWxhdGlvbnNoaXB9KSB7XG4gICAgdGhpcy5fZGlydHkgPSBmYWxzZVxuICAgIHRoaXMubW9kZWwgPSBtb2RlbFxuICAgIHRoaXMucmVsYXRpb25zaGlwID0gcmVsYXRpb25zaGlwXG4gIH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqIEBwYXJhbSB7SW5zdGFuY2VUeXBlPFRNQz5bXSB8IEluc3RhbmNlVHlwZTxUTUM+fSBtb2RlbHMgLSBNb2RlbCBpbnN0YW5jZXMuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIGFkZFRvTG9hZGVkKG1vZGVscykgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiYWRkVG9Mb2FkZWQgbm90IGltcGxlbWVudGVkXCIpXG4gIH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gYXR0cmlidXRlcyAtIEF0dHJpYnV0ZXMuXG4gICAqIEByZXR1cm5zIHtJbnN0YW5jZVR5cGU8VE1DPn0gLSBUaGUgYnVpbGQuXG4gICAqL1xuICBidWlsZChhdHRyaWJ1dGVzKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCInYnVpbGQnIG5vdCBpbXBsZW1lbnRlZFwiKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtib29sZWFuIHwgdW5kZWZpbmVkfSBXaGV0aGVyIHRoZSByZWxhdGlvbnNoaXAgc2hvdWxkIGJlIGF1dG8tc2F2ZWQgYmVmb3JlIHNhdmluZyB0aGUgcGFyZW50IG1vZGVsICovXG4gIGdldEF1dG9TYXZlKCkgeyByZXR1cm4gdGhpcy5fYXV0b1NhdmUgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG5ld0F1dG9TYXZlVmFsdWUgV2hldGhlciB0aGUgcmVsYXRpb25zaGlwIHNob3VsZCBiZSBhdXRvLXNhdmVkIGJlZm9yZSBzYXZpbmcgdGhlIHBhcmVudCBtb2RlbFxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRBdXRvU2F2ZShuZXdBdXRvU2F2ZVZhbHVlKSB7IHRoaXMuX2F1dG9TYXZlID0gbmV3QXV0b1NhdmVWYWx1ZSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbmV3VmFsdWUgV2hldGhlciB0aGUgcmVsYXRpb25zaGlwIGlzIGRpcnR5IChoYXMgYmVlbiBtb2RpZmllZClcbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0RGlydHkobmV3VmFsdWUpIHsgdGhpcy5fZGlydHkgPSBuZXdWYWx1ZSB9XG5cbiAgLyoqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSByZWxhdGlvbnNoaXAgaXMgZGlydHkgKGhhcyBiZWVuIG1vZGlmaWVkKSAqL1xuICBnZXREaXJ0eSgpIHsgcmV0dXJuIHRoaXMuX2RpcnR5IH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gY29tcGxldGUuXG4gICAqL1xuICBsb2FkKCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIidsb2FkJyBub3QgaW1wbGVtZW50ZWRcIilcbiAgfVxuXG4gIC8qKiAgQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIHJlbGF0aW9uc2hpcCBoYXMgYmVlbiBwcmVsb2FkZWQgKi9cbiAgaXNMb2FkZWQoKSB7IHJldHVybiBCb29sZWFuKHRoaXMuX2xvYWRlZCkgfVxuXG4gIC8qKiBAcmV0dXJucyB7SW5zdGFuY2VUeXBlPFRNQz4gfCBBcnJheTxJbnN0YW5jZVR5cGU8VE1DPj4gfCB1bmRlZmluZWR9IFRoZSBsb2FkZWQgbW9kZWwgb3IgbW9kZWxzIChkZXBlbmRpbmcgb24gcmVsYXRpb25zaGlwIHR5cGUpICovXG4gIGxvYWRlZCgpIHtcbiAgICBpZiAoIXRoaXMuX3ByZWxvYWRlZCAmJiB0aGlzLm1vZGVsLmlzUGVyc2lzdGVkKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLm1vZGVsLmNvbnN0cnVjdG9yLm5hbWV9IyR7dGhpcy5yZWxhdGlvbnNoaXAuZ2V0UmVsYXRpb25zaGlwTmFtZSgpfSBoYXNuJ3QgYmVlbiBwcmVsb2FkZWRgKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9sb2FkZWRcbiAgfVxuXG4gIC8qKiBAcGFyYW0ge0luc3RhbmNlVHlwZTxUTUM+IHwgQXJyYXk8SW5zdGFuY2VUeXBlPFRNQz4+IHwgdW5kZWZpbmVkfSBtb2RlbCAtIFJlbGF0ZWQgbW9kZWwocykgdG8gbWFyayBhcyBsb2FkZWQuICovXG4gIHNldExvYWRlZChtb2RlbCkgeyB0aGlzLl9sb2FkZWQgPSBtb2RlbCB9XG5cbiAgLyoqIEByZXR1cm5zIHtJbnN0YW5jZVR5cGU8VE1DPiB8IEluc3RhbmNlVHlwZTxUTUM+W10gfCB1bmRlZmluZWR9IC0gVGhlIGxvYWRlZCBvciB1bmRlZmluZWQuICAqL1xuICBnZXRMb2FkZWRPclVuZGVmaW5lZCgpIHsgcmV0dXJuIHRoaXMuX2xvYWRlZCB9XG5cbiAgLyoqIEByZXR1cm5zIHtib29sZWFufSBUaGUgbG9hZGVkIG1vZGVsIG9yIG1vZGVscyAoZGVwZW5kaW5nIG9uIHJlbGF0aW9uc2hpcCB0eXBlKSAqL1xuICBnZXRQcmVsb2FkZWQoKSB7IHJldHVybiB0aGlzLl9wcmVsb2FkZWQgfHwgZmFsc2UgfVxuXG4gIC8qKiBAcGFyYW0ge2Jvb2xlYW59IGlzUHJlbG9hZGVkIC0gV2hldGhlciB0aGUgcmVsYXRpb25zaGlwIGlzIHByZWxvYWRlZC4gKi9cbiAgc2V0UHJlbG9hZGVkKGlzUHJlbG9hZGVkKSB7IHRoaXMuX3ByZWxvYWRlZCA9IGlzUHJlbG9hZGVkIH1cblxuICAvKiogQHJldHVybnMge3N0cmluZ30gVGhlIGZvcmVpZ24ga2V5IGZvciB0aGlzIHJlbGF0aW9uc2hpcCAqL1xuICBnZXRGb3JlaWduS2V5KCkgeyByZXR1cm4gdGhpcy5nZXRSZWxhdGlvbnNoaXAoKS5nZXRGb3JlaWduS2V5KCkgfVxuXG4gIC8qKiBAcmV0dXJucyB7SW5zdGFuY2VUeXBlPE1DPn0gLSBUaGUgbW9kZWwuICAqL1xuICBnZXRNb2RlbCgpIHsgcmV0dXJuIHRoaXMubW9kZWwgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgcHJpbWFyeSBrZXkgZm9yIHRoaXMgcmVsYXRpb25zaGlwJ3MgbW9kZWwgKi9cbiAgZ2V0UHJpbWFyeUtleSgpIHsgcmV0dXJuIHRoaXMuZ2V0UmVsYXRpb25zaGlwKCkuZ2V0UHJpbWFyeUtleSgpIH1cblxuICAvKiogQHJldHVybnMge2ltcG9ydChcIi4uL3JlbGF0aW9uc2hpcHMvYmFzZS5qc1wiKS5kZWZhdWx0fSBUaGUgcmVsYXRpb25zaGlwIG9iamVjdCB0aGF0IHRoaXMgaW5zdGFuY2UgcmVsYXRpb25zaGlwIGlzIGJhc2VkIG9uICovXG4gIGdldFJlbGF0aW9uc2hpcCgpIHsgcmV0dXJuIHRoaXMucmVsYXRpb25zaGlwIH1cblxuICAvKiogQHJldHVybnMge1RNQyB8IHVuZGVmaW5lZH0gVGhlIG1vZGVsIGNsYXNzIHRoYXQgdGhpcyBpbnN0YW5jZSByZWxhdGlvbnNoaXAgKi9cbiAgZ2V0VGFyZ2V0TW9kZWxDbGFzcygpIHtcbiAgICBjb25zdCBUYXJnZXRNb2RlbENsYXNzID0gLyoqIEB0eXBlIHtUTUN9ICovICh0aGlzLmdldFJlbGF0aW9uc2hpcCgpLmdldFRhcmdldE1vZGVsQ2xhc3MoKSlcblxuICAgIHJldHVybiBUYXJnZXRNb2RlbENsYXNzXG4gIH1cblxuICAvKiogQHJldHVybnMge3N0cmluZ30gVGhlIHR5cGUgb2YgcmVsYXRpb25zaGlwIChlLmcuIFwiaGFzX21hbnlcIiwgXCJiZWxvbmdzX3RvXCIsIGV0Yy4pICovXG4gIGdldFR5cGUoKSB7IHJldHVybiB0aGlzLmdldFJlbGF0aW9uc2hpcCgpLmdldFR5cGUoKSB9XG59XG5cbiJdfQ==
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export default class VelociousDatabaseRecordBelongsToInstanceRelationship<MC extends typeof import("../index.js").default, TMC extends typeof import("../index.js").default> extends BaseInstanceRelationship<any, any> {
|
|
7
7
|
/**
|
|
8
|
-
* @param {Record<string,
|
|
8
|
+
* @param {Record<string, any>} data - Data payload.
|
|
9
9
|
* @returns {InstanceType<TMC>} - The build.
|
|
10
10
|
*/
|
|
11
|
-
build(data: Record<string,
|
|
11
|
+
build(data: Record<string, any>): InstanceType<TMC>;
|
|
12
12
|
}
|
|
13
13
|
import BaseInstanceRelationship from "./base.js";
|
|
14
14
|
//# sourceMappingURL=belongs-to.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"belongs-to.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/belongs-to.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,0EAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"belongs-to.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/belongs-to.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,0EAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,YAAY,CAAC,GAAG,CAAC,CAY7B;CAiBF;qCA9CoC,WAAW"}
|
|
@@ -13,7 +13,7 @@ export default class VelociousDatabaseRecordBelongsToInstanceRelationship extend
|
|
|
13
13
|
super(args);
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
|
-
* @param {Record<string,
|
|
16
|
+
* @param {Record<string, any>} data - Data payload.
|
|
17
17
|
* @returns {InstanceType<TMC>} - The build.
|
|
18
18
|
*/
|
|
19
19
|
build(data) {
|
|
@@ -37,4 +37,4 @@ export default class VelociousDatabaseRecordBelongsToInstanceRelationship extend
|
|
|
37
37
|
this.setPreloaded(true);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVsb25ncy10by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhYmFzZS9yZWNvcmQvaW5zdGFuY2UtcmVsYXRpb25zaGlwcy9iZWxvbmdzLXRvLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLHdCQUF3QixNQUFNLFdBQVcsQ0FBQTtBQUVoRDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE9BQU8sT0FBTyxvREFBcUQsU0FBUSx3QkFBd0I7SUFDeEc7O09BRUc7SUFDSCxZQUFZLElBQUk7UUFDZCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLElBQUk7UUFDUixNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUV4RSxJQUFJLENBQUMsZ0JBQWdCO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFBO1FBRXpGLE1BQU0sV0FBVyxHQUFHLGdDQUFnQyxDQUFDLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO1FBRWpGLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFBO1FBRTFCLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFFRCxvQkFBb0IsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBRTlDLEtBQUssQ0FBQyxJQUFJO1FBQ1IsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3ZDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDN0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtRQUVuRCxJQUFJLENBQUMsZ0JBQWdCO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFBO1FBRTNFLE1BQU0sWUFBWSxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBRWhFLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQmFzZUluc3RhbmNlUmVsYXRpb25zaGlwIGZyb20gXCIuL2Jhc2UuanNcIlxuXG4vKipcbiAqIEEgZ2VuZXJpYyBxdWVyeSBvdmVyIHNvbWUgbW9kZWwgdHlwZS5cbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IE1DXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBUTUNcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsb2Npb3VzRGF0YWJhc2VSZWNvcmRCZWxvbmdzVG9JbnN0YW5jZVJlbGF0aW9uc2hpcCBleHRlbmRzIEJhc2VJbnN0YW5jZVJlbGF0aW9uc2hpcCB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vYmFzZS5qc1wiKS5JbnN0YW5jZVJlbGF0aW9uc2hpcHNCYXNlQXJnczxNQywgVE1DPn0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgY29uc3RydWN0b3IoYXJncykge1xuICAgIHN1cGVyKGFyZ3MpXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBkYXRhIC0gRGF0YSBwYXlsb2FkLlxuICAgKiBAcmV0dXJucyB7SW5zdGFuY2VUeXBlPFRNQz59IC0gVGhlIGJ1aWxkLlxuICAgKi9cbiAgYnVpbGQoZGF0YSkge1xuICAgIGNvbnN0IFRhcmdldE1vZGVsQ2xhc3MgPSAvKiogQHR5cGUge1RNQ30gKi8gKHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpKVxuXG4gICAgaWYgKCFUYXJnZXRNb2RlbENsYXNzKSB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCBidWlsZCBhIG5ldyByZWNvcmQgd2l0aG91dCBhIHRhcmdldCBtb2RlbFwiKVxuXG4gICAgY29uc3QgbmV3SW5zdGFuY2UgPSAvKiogQHR5cGUge0luc3RhbmNlVHlwZTxUTUM+fSAqLyAobmV3IFRhcmdldE1vZGVsQ2xhc3MoZGF0YSkpXG5cbiAgICB0aGlzLl9sb2FkZWQgPSBuZXdJbnN0YW5jZVxuXG4gICAgcmV0dXJuIG5ld0luc3RhbmNlXG4gIH1cblxuICBnZXRMb2FkZWRPclVuZGVmaW5lZCgpIHsgcmV0dXJuIHRoaXMuX2xvYWRlZCB9XG5cbiAgYXN5bmMgbG9hZCgpIHtcbiAgICBjb25zdCBmb3JlaWduS2V5ID0gdGhpcy5nZXRGb3JlaWduS2V5KClcbiAgICBjb25zdCBmb3JlaWduTW9kZWxJRCA9IHRoaXMuZ2V0TW9kZWwoKS5yZWFkQ29sdW1uKGZvcmVpZ25LZXkpXG4gICAgY29uc3QgVGFyZ2V0TW9kZWxDbGFzcyA9IHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpXG5cbiAgICBpZiAoIVRhcmdldE1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGxvYWQgd2l0aG91dCBhIHRhcmdldCBtb2RlbFwiKVxuXG4gICAgY29uc3QgZm9yZWlnbk1vZGVsID0gYXdhaXQgVGFyZ2V0TW9kZWxDbGFzcy5maW5kKGZvcmVpZ25Nb2RlbElEKVxuXG4gICAgdGhpcy5zZXRMb2FkZWQoZm9yZWlnbk1vZGVsKVxuICAgIHRoaXMuc2V0RGlydHkoZmFsc2UpXG4gICAgdGhpcy5zZXRQcmVsb2FkZWQodHJ1ZSlcbiAgfVxufVxuXG4iXX0=
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export default class VelociousDatabaseRecordHasManyInstanceRelationship<MC extends typeof import("../index.js").default, TMC extends typeof import("../index.js").default> extends BaseInstanceRelationship<any, any> {
|
|
7
7
|
/**
|
|
8
|
-
* @param {Record<string,
|
|
8
|
+
* @param {Record<string, any>} data - Data payload.
|
|
9
9
|
* @returns {InstanceType<TMC>} - The build.
|
|
10
10
|
*/
|
|
11
|
-
build(data: Record<string,
|
|
11
|
+
build(data: Record<string, any>): InstanceType<TMC>;
|
|
12
12
|
/**
|
|
13
|
-
* @param {Record<string,
|
|
13
|
+
* @param {Record<string, any>} data - Data payload.
|
|
14
14
|
* @returns {Promise<InstanceType<TMC>>} - Resolves with the create.
|
|
15
15
|
*/
|
|
16
|
-
create(data: Record<string,
|
|
16
|
+
create(data: Record<string, any>): Promise<InstanceType<TMC>>;
|
|
17
17
|
/**
|
|
18
18
|
* @param {import("../../query/index.js").NestedPreloadRecord} preloads - Preload map for related records.
|
|
19
19
|
* @returns {import("../../query/model-class-query.js").default<TMC>} - The preload.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"has-many.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/has-many.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"has-many.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/has-many.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,YAAY,CAAC,GAAG,CAAC,CAmD7B;IAED;;;OAGG;IACH,aAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAQtC;IAWD;;;OAGG;IACH,kBAHW,OAAO,sBAAsB,EAAE,mBAAmB,GAChD,OAAO,kCAAkC,EAAE,OAAO,CAAC,GAAG,CAAC,CAInE;IAED;;;OAGG;IACH,cAHW,MAAM,GAAG,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAItC;IAED,uFAAuF;IACvF,SADc,OAAO,kCAAkC,EAAE,OAAO,CAAC,GAAG,CAAC,CA2CpE;IAED,sGAAsG;IACtG,UADc,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAWrC;IAED;;;OAGG;IACH,oBAHW,YAAY,CAAC,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC,GACnC,IAAI,CAwBhB;IAED;;;OAGG;IACH,kBAHW,YAAY,CAAC,GAAG,CAAC,EAAE,GACjB,IAAI,CAMhB;CACF;qCA1MoC,WAAW"}
|
|
@@ -13,7 +13,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
|
|
|
13
13
|
super(args);
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
|
-
* @param {Record<string,
|
|
16
|
+
* @param {Record<string, any>} data - Data payload.
|
|
17
17
|
* @returns {InstanceType<TMC>} - The build.
|
|
18
18
|
*/
|
|
19
19
|
build(data) {
|
|
@@ -55,7 +55,7 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
|
|
|
55
55
|
return newInstance;
|
|
56
56
|
}
|
|
57
57
|
/**
|
|
58
|
-
* @param {Record<string,
|
|
58
|
+
* @param {Record<string, any>} data - Data payload.
|
|
59
59
|
* @returns {Promise<InstanceType<TMC>>} - Resolves with the create.
|
|
60
60
|
*/
|
|
61
61
|
async create(data) {
|
|
@@ -172,4 +172,4 @@ export default class VelociousDatabaseRecordHasManyInstanceRelationship extends
|
|
|
172
172
|
this._loaded = models;
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLW1hbnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcmVjb3JkL2luc3RhbmNlLXJlbGF0aW9uc2hpcHMvaGFzLW1hbnkuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sd0JBQXdCLE1BQU0sV0FBVyxDQUFBO0FBRWhEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFPLGtEQUFtRCxTQUFRLHdCQUF3QjtJQUN0Rzs7T0FFRztJQUNILFlBQVksSUFBSTtRQUNkLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsSUFBSTtRQUNSLHdDQUF3QztRQUN4QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO1FBRW5ELElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUE7UUFFOUYsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUc5QyxtREFBbUQ7UUFDbkQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQy9CLDhDQUE4QztZQUM5QyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDOUIsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNoQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7UUFDMUUsQ0FBQztRQUdELGlEQUFpRDtRQUNqRCxNQUFNLFNB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O1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsT0FBTyxNQUFNLEVBQUUsQ0FBQyxDQUFBO1FBRTVHLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFBO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQmFzZUluc3RhbmNlUmVsYXRpb25zaGlwIGZyb20gXCIuL2Jhc2UuanNcIlxuXG4vKipcbiAqIEEgZ2VuZXJpYyBxdWVyeSBvdmVyIHNvbWUgbW9kZWwgdHlwZS5cbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IE1DXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBUTUNcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsb2Npb3VzRGF0YWJhc2VSZWNvcmRIYXNNYW55SW5zdGFuY2VSZWxhdGlvbnNoaXAgZXh0ZW5kcyBCYXNlSW5zdGFuY2VSZWxhdGlvbnNoaXAge1xuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuL2Jhc2UuanNcIikuSW5zdGFuY2VSZWxhdGlvbnNoaXBzQmFzZUFyZ3M8TUMsIFRNQz59IGFyZ3MgLSBPcHRpb25zIG9iamVjdC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGFyZ3MpIHtcbiAgICBzdXBlcihhcmdzKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgdW5rbm93bj59IGRhdGEgLSBEYXRhIHBheWxvYWQuXG4gICAqIEByZXR1cm5zIHtJbnN0YW5jZVR5cGU8VE1DPn0gLSBUaGUgYnVpbGQuXG4gICAqL1xuICBidWlsZChkYXRhKSB7XG4gICAgLy8gU3Bhd24gbmV3IG1vZGVsIG9mIHRoZSB0YXJnZXRlZCBjbGFzc1xuICAgIGNvbnN0IHRhcmdldE1vZGVsQ2xhc3MgPSB0aGlzLmdldFRhcmdldE1vZGVsQ2xhc3MoKVxuXG4gICAgaWYgKCF0YXJnZXRNb2RlbENsYXNzKSB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCBidWlsZCBhIG5ldyByZWNvcmQgd2l0aG91dCBhIHRhZ2V0IG1vZGVsIGNsYXNzXCIpXG5cbiAgICBjb25zdCBuZXdJbnN0YW5jZSA9IG5ldyB0YXJnZXRNb2RlbENsYXNzKGRhdGEpXG5cblxuICAgIC8vIEFkZCBpdCB0byB0aGUgbG9hZGVkIG1vZGVscyBvZiB0aGlzIHJlbGF0aW9uc2hpcFxuICAgIGlmICh0aGlzLl9sb2FkZWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLyoqIEB0eXBlIHtpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0W119ICovXG4gICAgICB0aGlzLl9sb2FkZWQgPSBbbmV3SW5zdGFuY2VdXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2xvYWRlZCkpIHtcbiAgICAgIHRoaXMuX2xvYWRlZC5wdXNoKG5ld0luc3RhbmNlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYExvYWRlZCBoYWQgYW4gdW5leHBlY3RlZCB0eXBlOiAke3R5cGVvZiB0aGlzLl9sb2FkZWR9YClcbiAgICB9XG5cblxuICAgIC8vIFNldCBsb2FkZWQgb24gdGhlIG1vZGVscyBpbnZlcnNlZCByZWxhdGlvbnNoaXBcbiAgICBjb25zdCBpbnZlcnNlT2YgPSB0aGlzLmdldFJlbGF0aW9uc2hpcCgpLmdldEludmVyc2VPZigpXG5cbiAgICBpZiAoaW52ZXJzZU9mKSB7XG4gICAgICBjb25zdCBpbnZlcnNlSW5zdGFuY2VSZWxhdGlvbnNoaXAgPSBuZXdJbnN0YW5jZS5nZXRSZWxhdGlvbnNoaXBCeU5hbWUoaW52ZXJzZU9mKVxuXG4gICAgICBpbnZlcnNlSW5zdGFuY2VSZWxhdGlvbnNoaXAuc2V0QXV0b1NhdmUoZmFsc2UpXG4gICAgICBpbnZlcnNlSW5zdGFuY2VSZWxhdGlvbnNoaXAuc2V0TG9hZGVkKHRoaXMuZ2V0TW9kZWwoKSlcbiAgICB9XG5cblxuICAgIC8vIEFzc2lnbiB0aGUgZm9yZWlnbiBrZXkgdG8gdGhlIG5ldyBtb2RlbFxuICAgIGNvbnN0IHBhcmVudE1vZGVsID0gdGhpcy5nZXRNb2RlbCgpXG5cbiAgICBpZiAocGFyZW50TW9kZWwuaXNQZXJzaXN0ZWQoKSkge1xuICAgICAgY29uc3QgZm9yZWlnbktleU5hbWUgPSB0aGlzLmdldEZvcmVpZ25LZXkoKVxuICAgICAgY29uc3QgZm9yZWlnbktleUF0dHJpYnV0ZU5hbWUgPSB0aGlzLmdldFRhcmdldE1vZGVsQ2xhc3MoKS5nZXRDb2x1bW5OYW1lVG9BdHRyaWJ1dGVOYW1lTWFwKClbZm9yZWlnbktleU5hbWVdXG4gICAgICBjb25zdCBwcmltYXJ5S2V5TmFtZSA9IHRoaXMuZ2V0UHJpbWFyeUtleSgpXG4gICAgICBjb25zdCBmb3JlaWduS2V5VmFsdWUgPSBwYXJlbnRNb2RlbC5yZWFkQ29sdW1uKHByaW1hcnlLZXlOYW1lKVxuICAgICAgY29uc3QgYXNzaWduRGF0YSA9IHt9XG5cbiAgICAgIGFzc2lnbkRhdGFbZm9yZWlnbktleUF0dHJpYnV0ZU5hbWVdID0gZm9yZWlnbktleVZhbHVlXG5cbiAgICAgIG5ld0luc3RhbmNlLmFzc2lnbihhc3NpZ25EYXRhKVxuICAgIH1cblxuXG4gICAgLy8gUmV0dXJuIHRoZSBuZXcgY29udHJ1Y3RlZCBtb2RlbFxuICAgIHJldHVybiBuZXdJbnN0YW5jZVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgdW5rbm93bj59IGRhdGEgLSBEYXRhIHBheWxvYWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEluc3RhbmNlVHlwZTxUTUM+Pn0gLSBSZXNvbHZlcyB3aXRoIHRoZSBjcmVhdGUuXG4gICAqL1xuICBhc3luYyBjcmVhdGUoZGF0YSkge1xuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5idWlsZChkYXRhKVxuXG4gICAgYXdhaXQgbW9kZWwuc2F2ZSgpXG5cbiAgICByZXR1cm4gbW9kZWxcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIGNvbXBsZXRlLiAgKi9cbiAgYXN5bmMgbG9hZCgpIHtcbiAgICBjb25zdCBmb3JlaWduTW9kZWxzID0gYXdhaXQgdGhpcy5xdWVyeSgpLnRvQXJyYXkoKVxuXG4gICAgdGhpcy5zZXRMb2FkZWQoZm9yZWlnbk1vZGVscylcbiAgICB0aGlzLnNldERpcnR5KGZhbHNlKVxuICAgIHRoaXMuc2V0UHJlbG9hZGVkKHRydWUpXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuLi8uLi9xdWVyeS9pbmRleC5qc1wiKS5OZXN0ZWRQcmVsb2FkUmVjb3JkfSBwcmVsb2FkcyAtIFByZWxvYWQgbWFwIGZvciByZWxhdGVkIHJlY29yZHMuXG4gICAqIEByZXR1cm5zIHtpbXBvcnQoXCIuLi8uLi9xdWVyeS9tb2RlbC1jbGFzcy1xdWVyeS5qc1wiKS5kZWZhdWx0PFRNQz59IC0gVGhlIHByZWxvYWQuXG4gICAqL1xuICBwcmVsb2FkKHByZWxvYWRzKSB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnkoKS5jbG9uZSgpLnByZWxvYWQocHJlbG9hZHMpXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBudW1iZXJ9IG1vZGVsSUQgLSBSZWxhdGVkIG1vZGVsIGlkZW50aWZpZXIuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEluc3RhbmNlVHlwZTxUTUM+Pn0gLSBSZXNvbHZlcyB3aXRoIHRoZSBmaW5kLlxuICAgKi9cbiAgYXN5bmMgZmluZChtb2RlbElEKSB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucXVlcnkoKS5maW5kKG1vZGVsSUQpXG4gIH1cblxuICAvKiogQHJldHVybnMge2ltcG9ydChcIi4uLy4uL3F1ZXJ5L21vZGVsLWNsYXNzLXF1ZXJ5LmpzXCIpLmRlZmF1bHQ8VE1DPn0gLSBUaGUgcXVlcnkuICAqL1xuICBxdWVyeSgpIHtcbiAgICBpZiAoIXRoaXMuZ2V0TW9kZWwoKS5pc1BlcnNpc3RlZCgpKSB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgYnVpbGQgYSBxdWVyeSBmb3IgYW4gdW5wZXJzaXN0ZWQgcGFyZW50IG1vZGVsXCIpXG5cbiAgICBjb25zdCBUYXJnZXRNb2RlbENsYXNzID0gdGhpcy5nZXRUYXJnZXRNb2RlbENsYXNzKClcblxuICAgIGlmICghVGFyZ2V0TW9kZWxDbGFzcykgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGxvYWQgd2l0aG91dCBhIHRhcmdldCBtb2RlbCBjbGFzc1wiKVxuXG4gICAgY29uc3QgdGhyb3VnaFJlbGF0aW9uc2hpcE5hbWUgPSB0aGlzLmdldFJlbGF0aW9uc2hpcCgpLnRocm91Z2hcblxuICAgIGlmICh0aHJvdWdoUmVsYXRpb25zaGlwTmFtZSkge1xuICAgICAgY29uc3QgcGFyZW50TW9kZWxDbGFzcyA9IHRoaXMuZ2V0TW9kZWwoKS5nZXRNb2RlbENsYXNzKClcbiAgICAgIGNvbnN0IHRocm91Z2hSZWxhdGlvbnNoaXAgPSBwYXJlbnRNb2RlbENsYXNzLmdldFJlbGF0aW9uc2hpcEJ5TmFtZSh0aHJvdWdoUmVsYXRpb25zaGlwTmFtZSlcbiAgICAgIGNvbnN0IHRocm91Z2hNb2RlbENsYXNzID0gdGhyb3VnaFJlbGF0aW9uc2hpcC5nZXRUYXJnZXRNb2RlbENsYXNzKClcblxuICAgICAgaWYgKCF0aHJvdWdoTW9kZWxDbGFzcykgdGhyb3cgbmV3IEVycm9yKGBUaHJvdWdoIHJlbGF0aW9uc2hpcCAke3Rocm91Z2hSZWxhdGlvbnNoaXBOYW1lfSBoYXMgbm8gdGFyZ2V0IG1vZGVsIGNsYXNzYClcblxuICAgICAgY29uc3QgdGhyb3VnaEZvcmVpZ25LZXkgPSB0aHJvdWdoUmVsYXRpb25zaGlwLmdldEZvcmVpZ25LZXkoKVxuICAgICAgY29uc3QgdGhyb3VnaFByaW1hcnlLZXkgPSB0aHJvdWdoUmVsYXRpb25zaGlwLmdldFByaW1hcnlLZXkoKVxuICAgICAgY29uc3QgdGFyZ2V0Rm9yZWlnbktleSA9IHRoaXMuZ2V0Rm9yZWlnbktleSgpXG4gICAgICBjb25zdCB0YXJnZXRUYWJsZSA9IFRhcmdldE1vZGVsQ2xhc3MudGFibGVOYW1lKClcbiAgICAgIGNvbnN0IHRocm91Z2hUYWJsZSA9IHRocm91Z2hNb2RlbENsYXNzLnRhYmxlTmFtZSgpXG4gICAgICBjb25zdCBkcml2ZXIgPSBUYXJnZXRNb2RlbENsYXNzLmNvbm5lY3Rpb24oKVxuICAgICAgY29uc3QgcGFyZW50UHJpbWFyeUtleSA9IHRoaXMuZ2V0UHJpbWFyeUtleSgpXG4gICAgY29uc3QgcGFyZW50SWQgPSAvKiogQHR5cGUge3N0cmluZyB8IG51bWJlcn0gKi8gKHRoaXMuZ2V0TW9kZWwoKS5yZWFkQ29sdW1uKHBhcmVudFByaW1hcnlLZXkpKVxuICAgICAgY29uc3Qgam9pblNxbCA9IGBMRUZUIEpPSU4gJHtkcml2ZXIucXVvdGVUYWJsZSh0aHJvdWdoVGFibGUpfSBPTiAke2RyaXZlci5xdW90ZVRhYmxlKHRocm91Z2hUYWJsZSl9LiR7ZHJpdmVyLnF1b3RlQ29sdW1uKHRocm91Z2hQcmltYXJ5S2V5KX0gPSAke2RyaXZlci5xdW90ZVRhYmxlKHRhcmdldFRhYmxlKX0uJHtkcml2ZXIucXVvdGVDb2x1bW4odGFyZ2V0Rm9yZWlnbktleSl9YFxuICAgICAgY29uc3Qgd2hlcmVTcWwgPSBgJHtkcml2ZXIucXVvdGVUYWJsZSh0aHJvdWdoVGFibGUpfS4ke2RyaXZlci5xdW90ZUNvbHVtbih0aHJvdWdoRm9yZWlnbktleSl9ID0gJHtkcml2ZXIub3B0aW9ucygpLnF1b3RlKHBhcmVudElkKX1gXG5cbiAgICAgIHJldHVybiBUYXJnZXRNb2RlbENsYXNzLmpvaW5zKGpvaW5TcWwpLndoZXJlKHdoZXJlU3FsKVxuICAgIH1cblxuICAgIGNvbnN0IGZvcmVpZ25LZXkgPSB0aGlzLmdldEZvcmVpZ25LZXkoKVxuICAgIGNvbnN0IHByaW1hcnlLZXkgPSB0aGlzLmdldFByaW1hcnlLZXkoKVxuICAgIGNvbnN0IHByaW1hcnlNb2RlbElEID0gLyoqIEB0eXBlIHtzdHJpbmcgfCBudW1iZXJ9ICovICh0aGlzLmdldE1vZGVsKCkucmVhZENvbHVtbihwcmltYXJ5S2V5KSlcblxuICAgIC8qKiBAdHlwZSB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPn0gKi9cbiAgICBjb25zdCB3aGVyZUFyZ3MgPSB7fVxuXG4gICAgd2hlcmVBcmdzW2ZvcmVpZ25LZXldID0gcHJpbWFyeU1vZGVsSURcblxuICAgIGNvbnN0IHF1ZXJ5ID0gVGFyZ2V0TW9kZWxDbGFzcy53aGVyZSh3aGVyZUFyZ3MpXG5cbiAgICByZXR1cm4gcXVlcnlcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7QXJyYXk8SW5zdGFuY2VUeXBlPFRNQz4+fSBUaGUgbG9hZGVkIG1vZGVsIG9yIG1vZGVscyAoZGVwZW5kaW5nIG9uIHJlbGF0aW9uc2hpcCB0eXBlKSAqL1xuICBsb2FkZWQoKSB7XG4gICAgaWYgKCF0aGlzLl9wcmVsb2FkZWQgJiYgdGhpcy5tb2RlbC5pc1BlcnNpc3RlZCgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7dGhpcy5tb2RlbC5jb25zdHJ1Y3Rvci5uYW1lfSMke3RoaXMucmVsYXRpb25zaGlwLmdldFJlbGF0aW9uc2hpcE5hbWUoKX0gaGFzbid0IGJlZW4gcHJlbG9hZGVkYClcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fbG9hZGVkID09PSB1bmRlZmluZWQgJiYgdGhpcy5tb2RlbC5pc05ld1JlY29yZCgpKSB7XG4gICAgICByZXR1cm4gW11cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fbG9hZGVkXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtJbnN0YW5jZVR5cGU8TUM+W10gfCBJbnN0YW5jZVR5cGU8TUM+fSBtb2RlbHMgLSBNb2RlbCBpbnN0YW5jZXMuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIGFkZFRvTG9hZGVkKG1vZGVscykge1xuICAgIGlmICghbW9kZWxzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJOZWVkIHRvIGdpdmUgc29tZXRoaW5nXCIpXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KG1vZGVscykpIHtcbiAgICAgIGZvciAoY29uc3QgbW9kZWwgb2YgbW9kZWxzKSB7XG4gICAgICAgIGlmICh0aGlzLl9sb2FkZWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuX2xvYWRlZCA9IFttb2RlbF1cbiAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2xvYWRlZCkpIHtcbiAgICAgICAgICB0aGlzLl9sb2FkZWQucHVzaChtb2RlbClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgbG9hZGVkIHR5cGU6ICR7dHlwZW9mIHRoaXMuX2xvYWRlZH1gKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLl9sb2FkZWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLl9sb2FkZWQgPSBbbW9kZWxzXVxuICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2xvYWRlZCkpIHtcbiAgICAgICAgdGhpcy5fbG9hZGVkLnB1c2gobW9kZWxzKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIGxvYWRlZCB0eXBlOiAke3R5cGVvZiB0aGlzLl9sb2FkZWR9YClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtJbnN0YW5jZVR5cGU8VE1DPltdfSBtb2RlbHMgLSBNb2RlbCBpbnN0YW5jZXMuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldExvYWRlZChtb2RlbHMpIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkobW9kZWxzKSkgdGhyb3cgbmV3IEVycm9yKGBBcmd1bWVudCBnaXZlbiB0byBzZXRMb2FkZWQgd2Fzbid0IGFuIGFycmF5OiAke3R5cGVvZiBtb2RlbHN9YClcblxuICAgIHRoaXMuX2xvYWRlZCA9IG1vZGVsc1xuICB9XG59XG4iXX0=
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLW1hbnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcmVjb3JkL2luc3RhbmNlLXJlbGF0aW9uc2hpcHMvaGFzLW1hbnkuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sd0JBQXdCLE1BQU0sV0FBVyxDQUFBO0FBRWhEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFPLGtEQUFtRCxTQUFRLHdCQUF3QjtJQUN0Rzs7T0FFRztJQUNILFlBQVksSUFBSTtRQUNkLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsSUFBSTtRQUNSLHdDQUF3QztRQUN4QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO1FBRW5ELElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUE7UUFFOUYsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUc5QyxtREFBbUQ7UUFDbkQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQy9CLDhDQUE4QztZQUM5QyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDOUIsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNoQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7UUFDMUUsQ0FBQztRQUdELGlEQUFpRDtRQUNqRCxNQUFNLFNB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O1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsT0FBTyxNQUFNLEVBQUUsQ0FBQyxDQUFBO1FBRTVHLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFBO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQmFzZUluc3RhbmNlUmVsYXRpb25zaGlwIGZyb20gXCIuL2Jhc2UuanNcIlxuXG4vKipcbiAqIEEgZ2VuZXJpYyBxdWVyeSBvdmVyIHNvbWUgbW9kZWwgdHlwZS5cbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IE1DXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBUTUNcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsb2Npb3VzRGF0YWJhc2VSZWNvcmRIYXNNYW55SW5zdGFuY2VSZWxhdGlvbnNoaXAgZXh0ZW5kcyBCYXNlSW5zdGFuY2VSZWxhdGlvbnNoaXAge1xuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuL2Jhc2UuanNcIikuSW5zdGFuY2VSZWxhdGlvbnNoaXBzQmFzZUFyZ3M8TUMsIFRNQz59IGFyZ3MgLSBPcHRpb25zIG9iamVjdC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGFyZ3MpIHtcbiAgICBzdXBlcihhcmdzKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gZGF0YSAtIERhdGEgcGF5bG9hZC5cbiAgICogQHJldHVybnMge0luc3RhbmNlVHlwZTxUTUM+fSAtIFRoZSBidWlsZC5cbiAgICovXG4gIGJ1aWxkKGRhdGEpIHtcbiAgICAvLyBTcGF3biBuZXcgbW9kZWwgb2YgdGhlIHRhcmdldGVkIGNsYXNzXG4gICAgY29uc3QgdGFyZ2V0TW9kZWxDbGFzcyA9IHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpXG5cbiAgICBpZiAoIXRhcmdldE1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGJ1aWxkIGEgbmV3IHJlY29yZCB3aXRob3V0IGEgdGFnZXQgbW9kZWwgY2xhc3NcIilcblxuICAgIGNvbnN0IG5ld0luc3RhbmNlID0gbmV3IHRhcmdldE1vZGVsQ2xhc3MoZGF0YSlcblxuXG4gICAgLy8gQWRkIGl0IHRvIHRoZSBsb2FkZWQgbW9kZWxzIG9mIHRoaXMgcmVsYXRpb25zaGlwXG4gICAgaWYgKHRoaXMuX2xvYWRlZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvKiogQHR5cGUge2ltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHRbXX0gKi9cbiAgICAgIHRoaXMuX2xvYWRlZCA9IFtuZXdJbnN0YW5jZV1cbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5fbG9hZGVkKSkge1xuICAgICAgdGhpcy5fbG9hZGVkLnB1c2gobmV3SW5zdGFuY2UpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTG9hZGVkIGhhZCBhbiB1bmV4cGVjdGVkIHR5cGU6ICR7dHlwZW9mIHRoaXMuX2xvYWRlZH1gKVxuICAgIH1cblxuXG4gICAgLy8gU2V0IGxvYWRlZCBvbiB0aGUgbW9kZWxzIGludmVyc2VkIHJlbGF0aW9uc2hpcFxuICAgIGNvbnN0IGludmVyc2VPZiA9IHRoaXMuZ2V0UmVsYXRpb25zaGlwKCkuZ2V0SW52ZXJzZU9mKClcblxuICAgIGlmIChpbnZlcnNlT2YpIHtcbiAgICAgIGNvbnN0IGludmVyc2VJbnN0YW5jZVJlbGF0aW9uc2hpcCA9IG5ld0luc3RhbmNlLmdldFJlbGF0aW9uc2hpcEJ5TmFtZShpbnZlcnNlT2YpXG5cbiAgICAgIGludmVyc2VJbnN0YW5jZVJlbGF0aW9uc2hpcC5zZXRBdXRvU2F2ZShmYWxzZSlcbiAgICAgIGludmVyc2VJbnN0YW5jZVJlbGF0aW9uc2hpcC5zZXRMb2FkZWQodGhpcy5nZXRNb2RlbCgpKVxuICAgIH1cblxuXG4gICAgLy8gQXNzaWduIHRoZSBmb3JlaWduIGtleSB0byB0aGUgbmV3IG1vZGVsXG4gICAgY29uc3QgcGFyZW50TW9kZWwgPSB0aGlzLmdldE1vZGVsKClcblxuICAgIGlmIChwYXJlbnRNb2RlbC5pc1BlcnNpc3RlZCgpKSB7XG4gICAgICBjb25zdCBmb3JlaWduS2V5TmFtZSA9IHRoaXMuZ2V0Rm9yZWlnbktleSgpXG4gICAgICBjb25zdCBmb3JlaWduS2V5QXR0cmlidXRlTmFtZSA9IHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpLmdldENvbHVtbk5hbWVUb0F0dHJpYnV0ZU5hbWVNYXAoKVtmb3JlaWduS2V5TmFtZV1cbiAgICAgIGNvbnN0IHByaW1hcnlLZXlOYW1lID0gdGhpcy5nZXRQcmltYXJ5S2V5KClcbiAgICAgIGNvbnN0IGZvcmVpZ25LZXlWYWx1ZSA9IHBhcmVudE1vZGVsLnJlYWRDb2x1bW4ocHJpbWFyeUtleU5hbWUpXG4gICAgICBjb25zdCBhc3NpZ25EYXRhID0ge31cblxuICAgICAgYXNzaWduRGF0YVtmb3JlaWduS2V5QXR0cmlidXRlTmFtZV0gPSBmb3JlaWduS2V5VmFsdWVcblxuICAgICAgbmV3SW5zdGFuY2UuYXNzaWduKGFzc2lnbkRhdGEpXG4gICAgfVxuXG5cbiAgICAvLyBSZXR1cm4gdGhlIG5ldyBjb250cnVjdGVkIG1vZGVsXG4gICAgcmV0dXJuIG5ld0luc3RhbmNlXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBkYXRhIC0gRGF0YSBwYXlsb2FkLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxJbnN0YW5jZVR5cGU8VE1DPj59IC0gUmVzb2x2ZXMgd2l0aCB0aGUgY3JlYXRlLlxuICAgKi9cbiAgYXN5bmMgY3JlYXRlKGRhdGEpIHtcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMuYnVpbGQoZGF0YSlcblxuICAgIGF3YWl0IG1vZGVsLnNhdmUoKVxuXG4gICAgcmV0dXJuIG1vZGVsXG4gIH1cblxuICAvKiogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gUmVzb2x2ZXMgd2hlbiBjb21wbGV0ZS4gICovXG4gIGFzeW5jIGxvYWQoKSB7XG4gICAgY29uc3QgZm9yZWlnbk1vZGVscyA9IGF3YWl0IHRoaXMucXVlcnkoKS50b0FycmF5KClcblxuICAgIHRoaXMuc2V0TG9hZGVkKGZvcmVpZ25Nb2RlbHMpXG4gICAgdGhpcy5zZXREaXJ0eShmYWxzZSlcbiAgICB0aGlzLnNldFByZWxvYWRlZCh0cnVlKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vLi4vcXVlcnkvaW5kZXguanNcIikuTmVzdGVkUHJlbG9hZFJlY29yZH0gcHJlbG9hZHMgLSBQcmVsb2FkIG1hcCBmb3IgcmVsYXRlZCByZWNvcmRzLlxuICAgKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vLi4vcXVlcnkvbW9kZWwtY2xhc3MtcXVlcnkuanNcIikuZGVmYXVsdDxUTUM+fSAtIFRoZSBwcmVsb2FkLlxuICAgKi9cbiAgcHJlbG9hZChwcmVsb2Fkcykge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5KCkuY2xvbmUoKS5wcmVsb2FkKHByZWxvYWRzKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgbnVtYmVyfSBtb2RlbElEIC0gUmVsYXRlZCBtb2RlbCBpZGVudGlmaWVyLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxJbnN0YW5jZVR5cGU8VE1DPj59IC0gUmVzb2x2ZXMgd2l0aCB0aGUgZmluZC5cbiAgICovXG4gIGFzeW5jIGZpbmQobW9kZWxJRCkge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnF1ZXJ5KCkuZmluZChtb2RlbElEKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtpbXBvcnQoXCIuLi8uLi9xdWVyeS9tb2RlbC1jbGFzcy1xdWVyeS5qc1wiKS5kZWZhdWx0PFRNQz59IC0gVGhlIHF1ZXJ5LiAgKi9cbiAgcXVlcnkoKSB7XG4gICAgaWYgKCF0aGlzLmdldE1vZGVsKCkuaXNQZXJzaXN0ZWQoKSkgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGJ1aWxkIGEgcXVlcnkgZm9yIGFuIHVucGVyc2lzdGVkIHBhcmVudCBtb2RlbFwiKVxuXG4gICAgY29uc3QgVGFyZ2V0TW9kZWxDbGFzcyA9IHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpXG5cbiAgICBpZiAoIVRhcmdldE1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBsb2FkIHdpdGhvdXQgYSB0YXJnZXQgbW9kZWwgY2xhc3NcIilcblxuICAgIGNvbnN0IHRocm91Z2hSZWxhdGlvbnNoaXBOYW1lID0gdGhpcy5nZXRSZWxhdGlvbnNoaXAoKS50aHJvdWdoXG5cbiAgICBpZiAodGhyb3VnaFJlbGF0aW9uc2hpcE5hbWUpIHtcbiAgICAgIGNvbnN0IHBhcmVudE1vZGVsQ2xhc3MgPSB0aGlzLmdldE1vZGVsKCkuZ2V0TW9kZWxDbGFzcygpXG4gICAgICBjb25zdCB0aHJvdWdoUmVsYXRpb25zaGlwID0gcGFyZW50TW9kZWxDbGFzcy5nZXRSZWxhdGlvbnNoaXBCeU5hbWUodGhyb3VnaFJlbGF0aW9uc2hpcE5hbWUpXG4gICAgICBjb25zdCB0aHJvdWdoTW9kZWxDbGFzcyA9IHRocm91Z2hSZWxhdGlvbnNoaXAuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpXG5cbiAgICAgIGlmICghdGhyb3VnaE1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihgVGhyb3VnaCByZWxhdGlvbnNoaXAgJHt0aHJvdWdoUmVsYXRpb25zaGlwTmFtZX0gaGFzIG5vIHRhcmdldCBtb2RlbCBjbGFzc2ApXG5cbiAgICAgIGNvbnN0IHRocm91Z2hGb3JlaWduS2V5ID0gdGhyb3VnaFJlbGF0aW9uc2hpcC5nZXRGb3JlaWduS2V5KClcbiAgICAgIGNvbnN0IHRocm91Z2hQcmltYXJ5S2V5ID0gdGhyb3VnaFJlbGF0aW9uc2hpcC5nZXRQcmltYXJ5S2V5KClcbiAgICAgIGNvbnN0IHRhcmdldEZvcmVpZ25LZXkgPSB0aGlzLmdldEZvcmVpZ25LZXkoKVxuICAgICAgY29uc3QgdGFyZ2V0VGFibGUgPSBUYXJnZXRNb2RlbENsYXNzLnRhYmxlTmFtZSgpXG4gICAgICBjb25zdCB0aHJvdWdoVGFibGUgPSB0aHJvdWdoTW9kZWxDbGFzcy50YWJsZU5hbWUoKVxuICAgICAgY29uc3QgZHJpdmVyID0gVGFyZ2V0TW9kZWxDbGFzcy5jb25uZWN0aW9uKClcbiAgICAgIGNvbnN0IHBhcmVudFByaW1hcnlLZXkgPSB0aGlzLmdldFByaW1hcnlLZXkoKVxuICAgIGNvbnN0IHBhcmVudElkID0gLyoqIEB0eXBlIHtzdHJpbmcgfCBudW1iZXJ9ICovICh0aGlzLmdldE1vZGVsKCkucmVhZENvbHVtbihwYXJlbnRQcmltYXJ5S2V5KSlcbiAgICAgIGNvbnN0IGpvaW5TcWwgPSBgTEVGVCBKT0lOICR7ZHJpdmVyLnF1b3RlVGFibGUodGhyb3VnaFRhYmxlKX0gT04gJHtkcml2ZXIucXVvdGVUYWJsZSh0aHJvdWdoVGFibGUpfS4ke2RyaXZlci5xdW90ZUNvbHVtbih0aHJvdWdoUHJpbWFyeUtleSl9ID0gJHtkcml2ZXIucXVvdGVUYWJsZSh0YXJnZXRUYWJsZSl9LiR7ZHJpdmVyLnF1b3RlQ29sdW1uKHRhcmdldEZvcmVpZ25LZXkpfWBcbiAgICAgIGNvbnN0IHdoZXJlU3FsID0gYCR7ZHJpdmVyLnF1b3RlVGFibGUodGhyb3VnaFRhYmxlKX0uJHtkcml2ZXIucXVvdGVDb2x1bW4odGhyb3VnaEZvcmVpZ25LZXkpfSA9ICR7ZHJpdmVyLm9wdGlvbnMoKS5xdW90ZShwYXJlbnRJZCl9YFxuXG4gICAgICByZXR1cm4gVGFyZ2V0TW9kZWxDbGFzcy5qb2lucyhqb2luU3FsKS53aGVyZSh3aGVyZVNxbClcbiAgICB9XG5cbiAgICBjb25zdCBmb3JlaWduS2V5ID0gdGhpcy5nZXRGb3JlaWduS2V5KClcbiAgICBjb25zdCBwcmltYXJ5S2V5ID0gdGhpcy5nZXRQcmltYXJ5S2V5KClcbiAgICBjb25zdCBwcmltYXJ5TW9kZWxJRCA9IC8qKiBAdHlwZSB7c3RyaW5nIHwgbnVtYmVyfSAqLyAodGhpcy5nZXRNb2RlbCgpLnJlYWRDb2x1bW4ocHJpbWFyeUtleSkpXG5cbiAgICAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj59ICovXG4gICAgY29uc3Qgd2hlcmVBcmdzID0ge31cblxuICAgIHdoZXJlQXJnc1tmb3JlaWduS2V5XSA9IHByaW1hcnlNb2RlbElEXG5cbiAgICBjb25zdCBxdWVyeSA9IFRhcmdldE1vZGVsQ2xhc3Mud2hlcmUod2hlcmVBcmdzKVxuXG4gICAgcmV0dXJuIHF1ZXJ5XG4gIH1cblxuICAvKiogQHJldHVybnMge0FycmF5PEluc3RhbmNlVHlwZTxUTUM+Pn0gVGhlIGxvYWRlZCBtb2RlbCBvciBtb2RlbHMgKGRlcGVuZGluZyBvbiByZWxhdGlvbnNoaXAgdHlwZSkgKi9cbiAgbG9hZGVkKCkge1xuICAgIGlmICghdGhpcy5fcHJlbG9hZGVkICYmIHRoaXMubW9kZWwuaXNQZXJzaXN0ZWQoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3RoaXMubW9kZWwuY29uc3RydWN0b3IubmFtZX0jJHt0aGlzLnJlbGF0aW9uc2hpcC5nZXRSZWxhdGlvbnNoaXBOYW1lKCl9IGhhc24ndCBiZWVuIHByZWxvYWRlZGApXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2xvYWRlZCA9PT0gdW5kZWZpbmVkICYmIHRoaXMubW9kZWwuaXNOZXdSZWNvcmQoKSkge1xuICAgICAgcmV0dXJuIFtdXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2xvYWRlZFxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7SW5zdGFuY2VUeXBlPE1DPltdIHwgSW5zdGFuY2VUeXBlPE1DPn0gbW9kZWxzIC0gTW9kZWwgaW5zdGFuY2VzLlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBhZGRUb0xvYWRlZChtb2RlbHMpIHtcbiAgICBpZiAoIW1vZGVscykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTmVlZCB0byBnaXZlIHNvbWV0aGluZ1wiKVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShtb2RlbHMpKSB7XG4gICAgICBmb3IgKGNvbnN0IG1vZGVsIG9mIG1vZGVscykge1xuICAgICAgICBpZiAodGhpcy5fbG9hZGVkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLl9sb2FkZWQgPSBbbW9kZWxdXG4gICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLl9sb2FkZWQpKSB7XG4gICAgICAgICAgdGhpcy5fbG9hZGVkLnB1c2gobW9kZWwpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIGxvYWRlZCB0eXBlOiAke3R5cGVvZiB0aGlzLl9sb2FkZWR9YClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5fbG9hZGVkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5fbG9hZGVkID0gW21vZGVsc11cbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLl9sb2FkZWQpKSB7XG4gICAgICAgIHRoaXMuX2xvYWRlZC5wdXNoKG1vZGVscylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBsb2FkZWQgdHlwZTogJHt0eXBlb2YgdGhpcy5fbG9hZGVkfWApXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7SW5zdGFuY2VUeXBlPFRNQz5bXX0gbW9kZWxzIC0gTW9kZWwgaW5zdGFuY2VzLlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRMb2FkZWQobW9kZWxzKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG1vZGVscykpIHRocm93IG5ldyBFcnJvcihgQXJndW1lbnQgZ2l2ZW4gdG8gc2V0TG9hZGVkIHdhc24ndCBhbiBhcnJheTogJHt0eXBlb2YgbW9kZWxzfWApXG5cbiAgICB0aGlzLl9sb2FkZWQgPSBtb2RlbHNcbiAgfVxufVxuXG4iXX0=
|
|
@@ -7,10 +7,10 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship<MC extend
|
|
|
7
7
|
/** @type {InstanceType<TMC> | undefined} */
|
|
8
8
|
_loaded: InstanceType<TMC> | undefined;
|
|
9
9
|
/**
|
|
10
|
-
* @param {Record<string,
|
|
10
|
+
* @param {Record<string, any>} data - Data payload.
|
|
11
11
|
* @returns {InstanceType<TMC>} - The build.
|
|
12
12
|
*/
|
|
13
|
-
build(data: Record<string,
|
|
13
|
+
build(data: Record<string, any>): InstanceType<TMC>;
|
|
14
14
|
/**
|
|
15
15
|
* @returns {InstanceType<TMC> | Array<InstanceType<TMC>> | undefined} The loaded model or models (depending on relationship type)
|
|
16
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"has-one.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/has-one.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,uEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD,4CAA4C;IAC5C,SADW,YAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB;IAEnB;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"has-one.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/instance-relationships/has-one.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,uEAHoD,EAAE,SAAzC,cAAe,aAAa,EAAE,OAAQ,EACC,GAAG,SAA1C,cAAe,aAAa,EAAE,OAAQ;IAUjD,4CAA4C;IAC5C,SADW,YAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB;IAEnB;;;OAGG;IACH,YAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,YAAY,CAAC,GAAG,CAAC,CAY7B;IAsBD;;OAEG;IACH,UAFa,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAQpE;IAED,0CAA8C;IAE9C,sFAAsF;IACtF,iBADY,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,QAKvD;IAED,4DAAwE;CACzE;qCA3EoC,WAAW"}
|
|
@@ -15,7 +15,7 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
|
|
|
15
15
|
/** @type {InstanceType<TMC> | undefined} */
|
|
16
16
|
_loaded = undefined;
|
|
17
17
|
/**
|
|
18
|
-
* @param {Record<string,
|
|
18
|
+
* @param {Record<string, any>} data - Data payload.
|
|
19
19
|
* @returns {InstanceType<TMC>} - The build.
|
|
20
20
|
*/
|
|
21
21
|
build(data) {
|
|
@@ -59,4 +59,4 @@ export default class VelociousDatabaseRecordHasOneInstanceRelationship extends B
|
|
|
59
59
|
}
|
|
60
60
|
getTargetModelClass() { return this.relationship.getTargetModelClass(); }
|
|
61
61
|
}
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLW9uZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhYmFzZS9yZWNvcmQvaW5zdGFuY2UtcmVsYXRpb25zaGlwcy9oYXMtb25lLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLHdCQUF3QixNQUFNLFdBQVcsQ0FBQTtBQUVoRDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE9BQU8sT0FBTyxpREFBa0QsU0FBUSx3QkFBd0I7SUFDckc7O09BRUc7SUFDSCxZQUFZLElBQUk7UUFDZCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDYixDQUFDO0lBRUQsNENBQTRDO0lBQzVDLE9BQU8sR0FBRyxTQUFTLENBQUE7SUFFbkI7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLElBQUk7UUFDUixNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQTtRQUV4RSxJQUFJLENBQUMsZ0JBQWdCO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFBO1FBRS9GLE1BQU0sV0FBVyxHQUFHLGdDQUFnQyxDQUFDLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO1FBRWpGLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFBO1FBRTFCLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN2QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDdkMsTUFBTSxjQUFjLEdBQUcsOEJBQThCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUE7UUFDOUYsTUFBTSxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUE7UUFFeEUsSUFBSSxDQUFDLGdCQUFnQjtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQTtRQUVqRiw4Q0FBOEM7UUFDOUMsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFBO1FBRXBCLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxjQUFjLENBQUE7UUFFdEMsTUFBTSxZQUFZLEdBQUcsZ0NBQWdDLENBQUMsQ0FBQyxNQUFNLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFBO1FBRXZHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU07UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLHdCQUF3QixDQUFDLENBQUE7UUFDcEgsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNyQixDQUFDO0lBRUQsb0JBQW9CLEtBQUssT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFBLENBQUMsQ0FBQztJQUU5QyxzRkFBc0Y7SUFDdEYsU0FBUyxDQUFDLEtBQUs7UUFDYixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFBO1FBRXRHLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO0lBQ3RCLENBQUM7SUFFRCxtQkFBbUIsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQSxDQUFDLENBQUM7Q0FDekUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IEJhc2VJbnN0YW5jZVJlbGF0aW9uc2hpcCBmcm9tIFwiLi9iYXNlLmpzXCJcblxuLyoqXG4gKiBBIGdlbmVyaWMgcXVlcnkgb3ZlciBzb21lIG1vZGVsIHR5cGUuXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuLi9pbmRleC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHRlbXBsYXRlIHt0eXBlb2YgaW1wb3J0KFwiLi4vaW5kZXguanNcIikuZGVmYXVsdH0gVE1DXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c0RhdGFiYXNlUmVjb3JkSGFzT25lSW5zdGFuY2VSZWxhdGlvbnNoaXAgZXh0ZW5kcyBCYXNlSW5zdGFuY2VSZWxhdGlvbnNoaXAge1xuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuL2Jhc2UuanNcIikuSW5zdGFuY2VSZWxhdGlvbnNoaXBzQmFzZUFyZ3M8TUMsIFRNQz59IGFyZ3MgLSBPcHRpb25zIG9iamVjdC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGFyZ3MpIHtcbiAgICBzdXBlcihhcmdzKVxuICB9XG5cbiAgLyoqIEB0eXBlIHtJbnN0YW5jZVR5cGU8VE1DPiB8IHVuZGVmaW5lZH0gKi9cbiAgX2xvYWRlZCA9IHVuZGVmaW5lZFxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IGRhdGEgLSBEYXRhIHBheWxvYWQuXG4gICAqIEByZXR1cm5zIHtJbnN0YW5jZVR5cGU8VE1DPn0gLSBUaGUgYnVpbGQuXG4gICAqL1xuICBidWlsZChkYXRhKSB7XG4gICAgY29uc3QgVGFyZ2V0TW9kZWxDbGFzcyA9IC8qKiBAdHlwZSB7VE1DfSAqLyAodGhpcy5nZXRUYXJnZXRNb2RlbENsYXNzKCkpXG5cbiAgICBpZiAoIVRhcmdldE1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGJ1aWxkIGEgbmV3IHJlY29yZCB3aXRob3V0IGEgdGFyZ2V0IG1vZGVsIGNsYXNzXCIpXG5cbiAgICBjb25zdCBuZXdJbnN0YW5jZSA9IC8qKiBAdHlwZSB7SW5zdGFuY2VUeXBlPFRNQz59ICovIChuZXcgVGFyZ2V0TW9kZWxDbGFzcyhkYXRhKSlcblxuICAgIHRoaXMuX2xvYWRlZCA9IG5ld0luc3RhbmNlXG5cbiAgICByZXR1cm4gbmV3SW5zdGFuY2VcbiAgfVxuXG4gIGFzeW5jIGxvYWQoKSB7XG4gICAgY29uc3QgZm9yZWlnbktleSA9IHRoaXMuZ2V0Rm9yZWlnbktleSgpXG4gICAgY29uc3QgcHJpbWFyeUtleSA9IHRoaXMuZ2V0UHJpbWFyeUtleSgpXG4gICAgY29uc3QgcHJpbWFyeU1vZGVsSUQgPSAvKiogQHR5cGUge3N0cmluZyB8IG51bWJlcn0gKi8gKHRoaXMuZ2V0TW9kZWwoKS5yZWFkQ29sdW1uKHByaW1hcnlLZXkpKVxuICAgIGNvbnN0IFRhcmdldE1vZGVsQ2xhc3MgPSAvKiogQHR5cGUge1RNQ30gKi8gKHRoaXMuZ2V0VGFyZ2V0TW9kZWxDbGFzcygpKVxuXG4gICAgaWYgKCFUYXJnZXRNb2RlbENsYXNzKSB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCBsb2FkIHdpdGhvdXQgYSB0YXJnZXQgbW9kZWwgY2xhc3NcIilcblxuICAgIC8qKiBAdHlwZSB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPn0gKi9cbiAgICBjb25zdCB3aGVyZUFyZ3MgPSB7fVxuXG4gICAgd2hlcmVBcmdzW2ZvcmVpZ25LZXldID0gcHJpbWFyeU1vZGVsSURcblxuICAgIGNvbnN0IGZvcmVpZ25Nb2RlbCA9IC8qKiBAdHlwZSB7SW5zdGFuY2VUeXBlPFRNQz59ICovIChhd2FpdCBUYXJnZXRNb2RlbENsYXNzLndoZXJlKHdoZXJlQXJncykuZmlyc3QoKSlcblxuICAgIHRoaXMuc2V0TG9hZGVkKGZvcmVpZ25Nb2RlbClcbiAgICB0aGlzLnNldERpcnR5KGZhbHNlKVxuICAgIHRoaXMuc2V0UHJlbG9hZGVkKHRydWUpXG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMge0luc3RhbmNlVHlwZTxUTUM+IHwgQXJyYXk8SW5zdGFuY2VUeXBlPFRNQz4+IHwgdW5kZWZpbmVkfSBUaGUgbG9hZGVkIG1vZGVsIG9yIG1vZGVscyAoZGVwZW5kaW5nIG9uIHJlbGF0aW9uc2hpcCB0eXBlKVxuICAgKi9cbiAgbG9hZGVkKCkge1xuICAgIGlmICghdGhpcy5fcHJlbG9hZGVkICYmIHRoaXMubW9kZWwuaXNQZXJzaXN0ZWQoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3RoaXMubW9kZWwuY29uc3RydWN0b3IubmFtZX0jJHt0aGlzLnJlbGF0aW9uc2hpcC5nZXRSZWxhdGlvbnNoaXBOYW1lKCl9IGhhc24ndCBiZWVuIHByZWxvYWRlZGApXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2xvYWRlZFxuICB9XG5cbiAgZ2V0TG9hZGVkT3JVbmRlZmluZWQoKSB7IHJldHVybiB0aGlzLl9sb2FkZWQgfVxuXG4gIC8qKiBAcGFyYW0ge0luc3RhbmNlVHlwZTxUTUM+IHwgQXJyYXk8SW5zdGFuY2VUeXBlPFRNQz4+fSBtb2RlbCAtIFJlbGF0ZWQgbW9kZWwocykuICovXG4gIHNldExvYWRlZChtb2RlbCkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KG1vZGVsKSkgdGhyb3cgbmV3IEVycm9yKGBBcmd1bWVudCBnaXZlbiB0byBzZXRMb2FkZWQgd2FzIGFuIGFycmF5OiAke3R5cGVvZiBtb2RlbH1gKVxuXG4gICAgdGhpcy5fbG9hZGVkID0gbW9kZWxcbiAgfVxuXG4gIGdldFRhcmdldE1vZGVsQ2xhc3MoKSB7IHJldHVybiB0aGlzLnJlbGF0aW9uc2hpcC5nZXRUYXJnZXRNb2RlbENsYXNzKCkgfVxufVxuXG4iXX0=
|
|
@@ -2,14 +2,14 @@ export default class VelociousDatabaseRecordValidatorsBase {
|
|
|
2
2
|
/**
|
|
3
3
|
* @param {object} args - Options object.
|
|
4
4
|
* @param {string} args.attributeName - Attribute name.
|
|
5
|
-
* @param {Record<string,
|
|
5
|
+
* @param {Record<string, any>} args.args - Options object.
|
|
6
6
|
*/
|
|
7
7
|
constructor({ attributeName, args }: {
|
|
8
8
|
attributeName: string;
|
|
9
|
-
args: Record<string,
|
|
9
|
+
args: Record<string, any>;
|
|
10
10
|
});
|
|
11
11
|
attributeName: string;
|
|
12
|
-
args: Record<string,
|
|
12
|
+
args: Record<string, any>;
|
|
13
13
|
/**
|
|
14
14
|
* @abstract
|
|
15
15
|
* @param {object} args - Options object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/validators/base.js"],"names":[],"mappings":"AAEA;IACE;;;;OAIG;IACH,qCAHG;QAAqB,aAAa,EAA1B,MAAM;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/database/record/validators/base.js"],"names":[],"mappings":"AAEA;IACE;;;;OAIG;IACH,qCAHG;QAAqB,aAAa,EAA1B,MAAM;QACoB,IAAI,EAA9B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;KAC7B,EAIA;IAFC,sBAAkC;IAClC,0BAAgB;IAGlB;;;;;;OAMG;IACH,mCAJG;QAA4C,KAAK,EAAzC,OAAO,aAAa,EAAE,OAAO;QAChB,aAAa,EAA1B,MAAM;KACd,GAAU,OAAO,CAAC,IAAI,CAAC,CAIzB;CACF"}
|
|
@@ -3,7 +3,7 @@ export default class VelociousDatabaseRecordValidatorsBase {
|
|
|
3
3
|
/**
|
|
4
4
|
* @param {object} args - Options object.
|
|
5
5
|
* @param {string} args.attributeName - Attribute name.
|
|
6
|
-
* @param {Record<string,
|
|
6
|
+
* @param {Record<string, any>} args.args - Options object.
|
|
7
7
|
*/
|
|
8
8
|
constructor({ attributeName, args }) {
|
|
9
9
|
this.attributeName = attributeName;
|
|
@@ -20,4 +20,4 @@ export default class VelociousDatabaseRecordValidatorsBase {
|
|
|
20
20
|
throw new Error("validate not implemented");
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhYmFzZS9yZWNvcmQvdmFsaWRhdG9ycy9iYXNlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixNQUFNLENBQUMsT0FBTyxPQUFPLHFDQUFxQztJQUN4RDs7OztPQUlHO0lBQ0gsWUFBWSxFQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUM7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUE7UUFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7SUFDbEIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBQyxLQUFLLEVBQUUsYUFBYSxFQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsb2Npb3VzRGF0YWJhc2VSZWNvcmRWYWxpZGF0b3JzQmFzZSB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5hdHRyaWJ1dGVOYW1lIC0gQXR0cmlidXRlIG5hbWUuXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gYXJncy5hcmdzIC0gT3B0aW9ucyBvYmplY3QuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih7YXR0cmlidXRlTmFtZSwgYXJnc30pIHtcbiAgICB0aGlzLmF0dHJpYnV0ZU5hbWUgPSBhdHRyaWJ1dGVOYW1lXG4gICAgdGhpcy5hcmdzID0gYXJnc1xuICB9XG5cbiAgLyoqXG4gICAqIEBhYnN0cmFjdFxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4uL2luZGV4LmpzXCIpLmRlZmF1bHR9IGFyZ3MubW9kZWwgLSBNb2RlbCBpbnN0YW5jZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGFyZ3MuYXR0cmlidXRlTmFtZSAtIEF0dHJpYnV0ZSBuYW1lLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIGNvbXBsZXRlLlxuICAgKi9cbiAgYXN5bmMgdmFsaWRhdGUoe21vZGVsLCBhdHRyaWJ1dGVOYW1lfSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgdGhyb3cgbmV3IEVycm9yKFwidmFsaWRhdGUgbm90IGltcGxlbWVudGVkXCIpXG4gIH1cbn1cblxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @typedef {object} TableColumnArgsType
|
|
3
3
|
* @property {boolean} [autoIncrement] - Whether the column auto-increments.
|
|
4
|
-
* @property {
|
|
4
|
+
* @property {any} [default] - Default value for the column.
|
|
5
5
|
* @property {boolean} [dropColumn] - Whether the column should be dropped.
|
|
6
6
|
* @property {boolean|object} [foreignKey] - Foreign key options or flag.
|
|
7
7
|
* @property {boolean|IndexArgType} [index] - Whether the column should be indexed.
|
|
@@ -52,10 +52,10 @@ export default class TableColumn {
|
|
|
52
52
|
*/
|
|
53
53
|
getDefault(): unknown | (() => unknown);
|
|
54
54
|
/**
|
|
55
|
-
* @param {
|
|
55
|
+
* @param {any} newDefault - New default.
|
|
56
56
|
* @returns {void} - No return value.
|
|
57
57
|
*/
|
|
58
|
-
setDefault(newDefault:
|
|
58
|
+
setDefault(newDefault: any): void;
|
|
59
59
|
/**
|
|
60
60
|
* @returns {boolean} - Whether drop column.
|
|
61
61
|
*/
|
|
@@ -145,7 +145,7 @@ export type TableColumnArgsType = {
|
|
|
145
145
|
/**
|
|
146
146
|
* - Default value for the column.
|
|
147
147
|
*/
|
|
148
|
-
default?:
|
|
148
|
+
default?: any;
|
|
149
149
|
/**
|
|
150
150
|
* - Whether the column should be dropped.
|
|
151
151
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-column.d.ts","sourceRoot":"","sources":["../../../../src/database/table-data/table-column.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;GAaG;AAEH;IACE;;;OAGG;IACH,kBAHW,MAAM,SACN,mBAAmB,EAe7B;IAFC,0BAAsB;IACtB,aAAgB;IAGlB;;OAEG;IACH,WAFa,MAAM,CAEW;IAE9B;;OAEG;IACH,cAFa,MAAM,GAAG,SAAS,CAEM;IAErC;;;OAGG;IACH,oBAHW,MAAM,GACJ,IAAI,CAE8B;IAAzB,iBAAuB;IAE7C;;OAEG;IACH,iBAFa,MAAM,CAE2C;IAE9D;;OAEG;IACH,oBAFa,OAAO,CAE2C;IAE/D;;;OAGG;IACH,mCAHW,OAAO,GACL,IAAI,CAEgE;IAEjF;;OAEG;IACH,cAFa,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,CAEI;IAE1C;;;OAGG;IACH,uBAHW,
|
|
1
|
+
{"version":3,"file":"table-column.d.ts","sourceRoot":"","sources":["../../../../src/database/table-data/table-column.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;GAaG;AAEH;IACE;;;OAGG;IACH,kBAHW,MAAM,SACN,mBAAmB,EAe7B;IAFC,0BAAsB;IACtB,aAAgB;IAGlB;;OAEG;IACH,WAFa,MAAM,CAEW;IAE9B;;OAEG;IACH,cAFa,MAAM,GAAG,SAAS,CAEM;IAErC;;;OAGG;IACH,oBAHW,MAAM,GACJ,IAAI,CAE8B;IAAzB,iBAAuB;IAE7C;;OAEG;IACH,iBAFa,MAAM,CAE2C;IAE9D;;OAEG;IACH,oBAFa,OAAO,CAE2C;IAE/D;;;OAGG;IACH,mCAHW,OAAO,GACL,IAAI,CAEgE;IAEjF;;OAEG;IACH,cAFa,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,CAEI;IAE1C;;;OAGG;IACH,uBAHW,GAAG,GACD,IAAI,CAEwC;IAEzD;;OAEG;IACH,iBAFa,OAAO,CAEqC;IAEzD;;OAEG;IACH,iBAFa,OAAO,GAAG,MAAM,GAAG,SAAS,CAEO;IAEhD;;;OAGG;IACH,6BAHW,OAAO,GAAG,MAAM,GAAG,SAAS,GAC1B,IAAI,CAEoD;IAErE;;OAEG;IACH,YAFa,OAAO,GAAC,YAAY,CAEc;IAE/C;;OAEG;IACH,gBAFa,YAAY,CAQxB;IAED,0BAMC;IAED;;;OAGG;IACH,mBAHW,OAAO,GAAC,YAAY,GAClB,IAAI,CAEgC;IAEjD;;OAEG;IACH,gBAFa,MAAM,GAAG,SAAS,CAEe;IAE9C;;;OAGG;IACH,2BAHW,MAAM,GAAG,SAAS,GAChB,IAAI,CAEgD;IAEjE;;OAEG;IACH,WAFa,OAAO,GAAG,SAAS,CAEI;IAEpC;;;OAGG;IACH,kBAHW,OAAO,GACL,IAAI,CAE8B;IAE/C;;OAEG;IACH,iBAFa,OAAO,CAEqC;IAEzD;;;OAGG;IACH,6BAHW,OAAO,GACL,IAAI,CAEoD;IAErE;;OAEG;IACH,WAFa,MAAM,GAAG,SAAS,CAEK;IAEpC;;;OAGG;IACH,iBAHW,MAAM,GAAG,SAAS,GAChB,IAAI,CAE4B;IAE7C;;OAEG;IACH,eAFa,OAAO,CAEoC;IAExD;;;;;OAKG;IACH,+CAJG;QAAsB,aAAa,EAA3B,OAAO;QACoC,MAAM,EAAjD,OAAO,oBAAoB,EAAE,OAAO;KAC5C,GAAU,MAAM,CAkHlB;CACF;2BA3SY;IAAC,MAAM,EAAE,OAAO,CAAA;CAAC;;;;;oBAShB,OAAO;;;;cACP,GAAG;;;;iBACH,OAAO;;;;iBACP,OAAO,GAAC,MAAM;;;;YACd,OAAO,GAAC,YAAY;;;;kBACpB,OAAO;;;;gBACP,MAAM;;;;WACN,OAAO;;;;kBACP,OAAO;;;;iBACP,OAAO;;;;WACP,MAAM"}
|
|
@@ -8,7 +8,7 @@ import TableForeignKey from "./table-foreign-key.js";
|
|
|
8
8
|
/**
|
|
9
9
|
* @typedef {object} TableColumnArgsType
|
|
10
10
|
* @property {boolean} [autoIncrement] - Whether the column auto-increments.
|
|
11
|
-
* @property {
|
|
11
|
+
* @property {any} [default] - Default value for the column.
|
|
12
12
|
* @property {boolean} [dropColumn] - Whether the column should be dropped.
|
|
13
13
|
* @property {boolean|object} [foreignKey] - Foreign key options or flag.
|
|
14
14
|
* @property {boolean|IndexArgType} [index] - Whether the column should be indexed.
|
|
@@ -66,7 +66,7 @@ export default class TableColumn {
|
|
|
66
66
|
*/
|
|
67
67
|
getDefault() { return this.args?.default; }
|
|
68
68
|
/**
|
|
69
|
-
* @param {
|
|
69
|
+
* @param {any} newDefault - New default.
|
|
70
70
|
* @returns {void} - No return value.
|
|
71
71
|
*/
|
|
72
72
|
setDefault(newDefault) { this.args.default = newDefault; }
|
|
@@ -267,4 +267,4 @@ export default class TableColumn {
|
|
|
267
267
|
return sql;
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3RhYmxlLWRhdGEvdGFibGUtY29sdW1uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWjs7R0FFRztBQUVILE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBQ3hDLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBQzFELE9BQU8sZUFBZSxNQUFNLHdCQUF3QixDQUFBO0FBRXBEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFFSCxNQUFNLENBQUMsT0FBTyxPQUFPLFdBQVc7SUFDOUI7OztPQUdHO0lBQ0gsWUFBWSxJQUFJLEVBQUUsSUFBSTtRQUNwQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsTUFBTSxFQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBQyxHQUFHLElBQUksQ0FBQSxDQUFDLHFDQUFxQztZQUU3TSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUE7WUFDckMsQ0FBQztZQUVELGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN6QixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQ2xCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUEsQ0FBQyxDQUFDO0lBRTlCOztPQUVH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LGNBQWMsQ0FBQyxlQUFlLENBQUMsSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQTtRQUMvRyxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqXG4gKiBAdHlwZWRlZiB7e3VuaXF1ZTogYm9vbGVhbn19IEluZGV4QXJnVHlwZVxuICovXG5cbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIlxuaW1wb3J0IHJlc3RBcmdzRXJyb3IgZnJvbSBcIi4uLy4uL3V0aWxzL3Jlc3QtYXJncy1lcnJvci5qc1wiXG5pbXBvcnQgVGFibGVGb3JlaWduS2V5IGZyb20gXCIuL3RhYmxlLWZvcmVpZ24ta2V5LmpzXCJcblxuLyoqXG4gKiBAdHlwZWRlZiB7b2JqZWN0fSBUYWJsZUNvbHVtbkFyZ3NUeXBlXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFthdXRvSW5jcmVtZW50XSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBhdXRvLWluY3JlbWVudHMuXG4gKiBAcHJvcGVydHkge3Vua25vd259IFtkZWZhdWx0XSAtIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb2x1bW4uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtkcm9wQ29sdW1uXSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBzaG91bGQgYmUgZHJvcHBlZC5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbnxvYmplY3R9IFtmb3JlaWduS2V5XSAtIEZvcmVpZ24ga2V5IG9wdGlvbnMgb3IgZmxhZy5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbnxJbmRleEFyZ1R5cGV9IFtpbmRleF0gLSBXaGV0aGVyIHRoZSBjb2x1bW4gc2hvdWxkIGJlIGluZGV4ZWQuXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtpc05ld0NvbHVtbl0gLSBXaGV0aGVyIHRoaXMgY29sdW1uIGlzIGJlaW5nIGFkZGVkIGluIGEgbWlncmF0aW9uLlxuICogQHByb3BlcnR5IHtudW1iZXJ9IFttYXhMZW5ndGhdIC0gTWF4aW11bSBsZW5ndGggZm9yIHRoZSBjb2x1bW4gdmFsdWUuXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtudWxsXSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBhbGxvd3MgbnVsbCB2YWx1ZXMuXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtwb2x5bW9ycGhpY10gLSBXaGV0aGVyIHRoZSBjb2x1bW4gaXMgcG9seW1vcnBoaWMuXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtwcmltYXJ5S2V5XSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBpcyBhIHByaW1hcnkga2V5LlxuICogQHByb3BlcnR5IHtzdHJpbmd9IFt0eXBlXSAtIENvbHVtbiBkYXRhIHR5cGUuXG4gKi9cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGFibGVDb2x1bW4ge1xuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBOYW1lLlxuICAgKiBAcGFyYW0ge1RhYmxlQ29sdW1uQXJnc1R5cGV9IFthcmdzXSAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgY29uc3RydWN0b3IobmFtZSwgYXJncykge1xuICAgIGlmIChhcmdzKSB7XG4gICAgICBjb25zdCB7YXV0b0luY3JlbWVudCwgZGVmYXVsdDogY29sdW1uRGVmYXVsdCwgZHJvcENvbHVtbiwgZm9yZWlnbktleSwgaW5kZXgsIGlzTmV3Q29sdW1uLCBtYXhMZW5ndGgsIG51bGw6IGFyZ3NOdWxsLCBwb2x5bW9ycGhpYywgcHJpbWFyeUtleSwgdHlwZSwgLi4ucmVzdEFyZ3N9ID0gYXJncyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG5cbiAgICAgIGlmIChPYmplY3Qua2V5cyhhcmdzKS5sZW5ndGggPT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbXB0eSBhcmdzIGdpdmVuXCIpXG4gICAgICB9XG5cbiAgICAgIHJlc3RBcmdzRXJyb3IocmVzdEFyZ3MpXG4gICAgfVxuXG4gICAgdGhpcy5hcmdzID0gYXJncyB8fCB7fVxuICAgIHRoaXMubmFtZSA9IG5hbWVcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBuYW1lXG4gICAqL1xuICBnZXROYW1lKCkgeyByZXR1cm4gdGhpcy5uYW1lIH1cblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZyB8IHVuZGVmaW5lZH0gLSBUaGUgbmV3IG5hbWUuXG4gICAqL1xuICBnZXROZXdOYW1lKCkgeyByZXR1cm4gdGhpcy5fbmV3TmFtZSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuZXdOYW1lIC0gTmV3IG5hbWUuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldE5ld05hbWUobmV3TmFtZSkgeyB0aGlzLl9uZXdOYW1lID0gbmV3TmFtZSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IC0gVGhlIGFjdHVhbCBuYW1lLlxuICAgKi9cbiAgZ2V0QWN0dWFsTmFtZSgpIHsgcmV0dXJuIHRoaXMuZ2V0TmV3TmFtZSgpIHx8IHRoaXMuZ2V0TmFtZSgpIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IC0gV2hldGhlciBhdXRvIGluY3JlbWVudC5cbiAgICovXG4gIGdldEF1dG9JbmNyZW1lbnQoKSB7IHJldHVybiB0aGlzLmFyZ3M/LmF1dG9JbmNyZW1lbnQgfHwgZmFsc2UgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG5ld0F1dG9JbmNyZW1lbnQgLSBOZXcgYXV0byBpbmNyZW1lbnQuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldEF1dG9JbmNyZW1lbnQobmV3QXV0b0luY3JlbWVudCkgeyB0aGlzLmFyZ3MuYXV0b0luY3JlbWVudCA9IG5ld0F1dG9JbmNyZW1lbnQgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7dW5rbm93biB8ICgoKSA9PiB1bmtub3duKX0gLSBUaGUgZGVmYXVsdCB2YWx1ZSBvciBmYWN0b3J5LlxuICAgKi9cbiAgZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIHRoaXMuYXJncz8uZGVmYXVsdCB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7dW5rbm93bn0gbmV3RGVmYXVsdCAtIE5ldyBkZWZhdWx0LlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXREZWZhdWx0KG5ld0RlZmF1bHQpIHsgdGhpcy5hcmdzLmRlZmF1bHQgPSBuZXdEZWZhdWx0IH1cblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IC0gV2hldGhlciBkcm9wIGNvbHVtbi5cbiAgICovXG4gIGdldERyb3BDb2x1bW4oKSB7IHJldHVybiB0aGlzLmFyZ3M/LmRyb3BDb2x1bW4gfHwgZmFsc2UgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbiB8IG9iamVjdCB8IHVuZGVmaW5lZH0gLSBXaGV0aGVyIGZvcmVpZ24ga2V5LlxuICAgKi9cbiAgZ2V0Rm9yZWlnbktleSgpIHsgcmV0dXJuIHRoaXMuYXJncz8uZm9yZWlnbktleSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbiB8IG9iamVjdCB8IHVuZGVmaW5lZH0gbmV3Rm9yZWlnbktleSAtIE5ldyBmb3JlaWduIGtleS5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0Rm9yZWlnbktleShuZXdGb3JlaWduS2V5KSB7IHRoaXMuYXJncy5mb3JlaWduS2V5ID0gbmV3Rm9yZWlnbktleSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufEluZGV4QXJnVHlwZX0gLSBXaGV0aGVyIGluZGV4LlxuICAgKi9cbiAgZ2V0SW5kZXgoKSB7IHJldHVybiB0aGlzLmFyZ3M/LmluZGV4IHx8IGZhbHNlIH1cblxuICAvKipcbiAgICogQHJldHVybnMge0luZGV4QXJnVHlwZX0gLSBUaGUgaW5kZXggYXJncy5cbiAgICovXG4gIGdldEluZGV4QXJncygpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuYXJncz8uaW5kZXggPT0gXCJvYmplY3RcIikge1xuICAgICAgcmV0dXJuIHRoaXMuYXJncy5pbmRleFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge3VuaXF1ZTogZmFsc2V9XG4gICAgfVxuICB9XG5cbiAgZ2V0SW5kZXhVbmlxdWUoKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmFyZ3M/LmluZGV4XG5cbiAgICBpZiAodHlwZW9mIGluZGV4ID09IFwib2JqZWN0XCIgJiYgaW5kZXgudW5pcXVlID09PSB0cnVlKSByZXR1cm4gdHJ1ZVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtib29sZWFufEluZGV4QXJnVHlwZX0gbmV3SW5kZXggLSBOZXcgaW5kZXguXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldEluZGV4KG5ld0luZGV4KSB7IHRoaXMuYXJncy5pbmRleCA9IG5ld0luZGV4IH1cblxuICAvKipcbiAgICogQHJldHVybnMge251bWJlciB8IHVuZGVmaW5lZH0gLSBUaGUgbWF4IGxlbmd0aC5cbiAgICovXG4gIGdldE1heExlbmd0aCgpIHsgcmV0dXJuIHRoaXMuYXJncz8ubWF4TGVuZ3RoIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXIgfCB1bmRlZmluZWR9IG5ld01heExlbmd0aCAtIE5ldyBtYXggbGVuZ3RoLlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRNYXhMZW5ndGgobmV3TWF4TGVuZ3RoKSB7IHRoaXMuYXJncy5tYXhMZW5ndGggPSBuZXdNYXhMZW5ndGggfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbiB8IHVuZGVmaW5lZH0gLSBXaGV0aGVyIG51bGwuXG4gICAqL1xuICBnZXROdWxsKCkgeyByZXR1cm4gdGhpcy5hcmdzPy5udWxsIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtib29sZWFufSBudWxsYWJsZSAtIFdoZXRoZXIgbnVsbGFibGUuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldE51bGwobnVsbGFibGUpIHsgdGhpcy5hcmdzLm51bGwgPSBudWxsYWJsZSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIFdoZXRoZXIgcHJpbWFyeSBrZXkuXG4gICAqL1xuICBnZXRQcmltYXJ5S2V5KCkgeyByZXR1cm4gdGhpcy5hcmdzPy5wcmltYXJ5S2V5IHx8IGZhbHNlIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtib29sZWFufSBuZXdQcmltYXJ5S2V5IC0gTmV3IHByaW1hcnkga2V5LlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRQcmltYXJ5S2V5KG5ld1ByaW1hcnlLZXkpIHsgdGhpcy5hcmdzLnByaW1hcnlLZXkgPSBuZXdQcmltYXJ5S2V5IH1cblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZyB8IHVuZGVmaW5lZH0gLSBUaGUgdHlwZS5cbiAgICovXG4gIGdldFR5cGUoKSB7IHJldHVybiB0aGlzLmFyZ3M/LnR5cGUgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gbmV3VHlwZSAtIE5ldyB0eXBlLlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRUeXBlKG5ld1R5cGUpIHsgdGhpcy5hcmdzLnR5cGUgPSBuZXdUeXBlIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IC0gV2hldGhlciBuZXcgY29sdW1uLlxuICAgKi9cbiAgaXNOZXdDb2x1bW4oKSB7IHJldHVybiB0aGlzLmFyZ3M/LmlzTmV3Q29sdW1uIHx8IGZhbHNlIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtvYmplY3R9IGFyZ3MgLSBPcHRpb25zIG9iamVjdC5cbiAgICogQHBhcmFtIHtib29sZWFufSBhcmdzLmZvckFsdGVyVGFibGUgLSBXaGV0aGVyIGZvciBhbHRlciB0YWJsZS5cbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gYXJncy5kcml2ZXIgLSBEYXRhYmFzZSBkcml2ZXIgaW5zdGFuY2UuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IC0gU1FMIHN0cmluZy5cbiAgICovXG4gIGdldFNRTCh7Zm9yQWx0ZXJUYWJsZSwgZHJpdmVyLCAuLi5yZXN0QXJnc30pIHtcbiAgICByZXN0QXJnc0Vycm9yKHJlc3RBcmdzKVxuXG4gICAgY29uc3QgZGF0YWJhc2VUeXBlID0gZHJpdmVyLmdldFR5cGUoKVxuICAgIGNvbnN0IG9wdGlvbnMgPSBkcml2ZXIub3B0aW9ucygpXG4gICAgbGV0IG1heGxlbmd0aCA9IHRoaXMuZ2V0TWF4TGVuZ3RoKClcbiAgICBsZXQgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpPy50b1VwcGVyQ2FzZSgpXG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIikge1xuICAgICAgaWYgKHR5cGUgPT0gXCJEQVRFVElNRVwiKSB7XG4gICAgICAgIHR5cGUgPSBcIlRJTUVTVEFNUFwiXG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJUSU5ZSU5UXCIpIHtcbiAgICAgICAgdHlwZSA9IFwiU01BTExJTlRcIlxuICAgICAgfSBlbHNlIGlmICh0eXBlID09IFwiQkxPQlwiKSB7XG4gICAgICAgIHR5cGUgPSBcIkJZVEVBXCJcbiAgICAgICAgbWF4bGVuZ3RoID0gdW5kZWZpbmVkXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT0gXCJTVFJJTkdcIikge1xuICAgICAgdHlwZSA9IFwiVkFSQ0hBUlwiXG4gICAgICBtYXhsZW5ndGggfHw9IDI1NVxuICAgIH1cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIiAmJiB0eXBlID09IFwiVElOWUlOVFwiKSB7XG4gICAgICB0eXBlID0gXCJTTUFMTElOVFwiXG4gICAgfVxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcIm1zc3FsXCIpIHtcbiAgICAgIGlmICh0eXBlID09IFwiQk9PTEVBTlwiKSB7XG4gICAgICAgIHR5cGUgPSBcIkJJVFwiXG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJVVUlEXCIpIHtcbiAgICAgICAgdHlwZSA9IFwiVkFSQ0hBUlwiXG4gICAgICAgIG1heGxlbmd0aCB8fD0gMzZcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcIkpTT05cIikge1xuICAgICAgICB0eXBlID0gXCJOVkFSQ0hBUihNQVgpXCJcbiAgICAgICAgbWF4bGVuZ3RoID0gdW5kZWZpbmVkXG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJCTE9CXCIpIHtcbiAgICAgICAgdHlwZSA9IFwiVkFSQklOQVJZKE1BWClcIlxuICAgICAgICBtYXhsZW5ndGggPSB1bmRlZmluZWRcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwic3FsaXRlXCIgJiYgdGhpcy5nZXRBdXRvSW5jcmVtZW50KCkgJiYgdGhpcy5nZXRQcmltYXJ5S2V5KCkpIHtcbiAgICAgIHR5cGUgPSBcIklOVEVHRVJcIlxuICAgIH1cblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJwZ3NxbFwiICYmIHRoaXMuZ2V0QXV0b0luY3JlbWVudCgpICYmIHRoaXMuZ2V0UHJpbWFyeUtleSgpKSB7XG4gICAgICB0eXBlID0gXCJTRVJJQUxcIlxuICAgIH1cblxuICAgIGxldCBzcWwgPSBgJHtvcHRpb25zLnF1b3RlQ29sdW1uTmFtZSh0aGlzLmdldEFjdHVhbE5hbWUoKSl9IGBcblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJwZ3NxbFwiICYmIGZvckFsdGVyVGFibGUpIHNxbCArPSBcIlRZUEUgXCJcbiAgICBpZiAodHlwZSkgc3FsICs9IHR5cGVcbiAgICBpZiAodHlwZSAmJiBtYXhsZW5ndGggIT09IHVuZGVmaW5lZCAmJiBtYXhsZW5ndGggIT09IG51bGwpIHNxbCArPSBgKCR7bWF4bGVuZ3RofSlgXG5cbiAgICBpZiAodGhpcy5nZXRBdXRvSW5jcmVtZW50KCkgJiYgZHJpdmVyLnNob3VsZFNldEF1dG9JbmNyZW1lbnRXaGVuUHJpbWFyeUtleSgpKSB7XG4gICAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwibXNzcWxcIikge1xuICAgICAgICBzcWwgKz0gXCIgSURFTlRJVFlcIlxuICAgICAgfSBlbHNlIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJwZ3NxbFwiKSB7XG4gICAgICAgIGlmICh0aGlzLmdldEF1dG9JbmNyZW1lbnQoKSAmJiB0aGlzLmdldFByaW1hcnlLZXkoKSkge1xuICAgICAgICAgIC8vIERvIG5vdGhpbmdcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJwZ3NxbCBhdXRvIGluY3JlbWVudCBtdXN0IGJlIHByaW1hcnkga2V5XCIpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNxbCArPSBcIiBBVVRPX0lOQ1JFTUVOVFwiXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZGVmYXVsdFZhbHVlID0gdGhpcy5nZXREZWZhdWx0KClcblxuICAgIGlmICh0eXBlb2YgZGVmYXVsdFZhbHVlID09IFwiZnVuY3Rpb25cIikge1xuICAgICAgY29uc3QgZXZhbHVhdGVkRGVmYXVsdCA9IGRlZmF1bHRWYWx1ZSgpXG5cbiAgICAgIHNxbCArPSBgIERFRkFVTFQgKGBcblxuICAgICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcInBnc3FsXCIgJiYgZXZhbHVhdGVkRGVmYXVsdCA9PSBcIlVVSUQoKVwiKSB7XG4gICAgICAgIHNxbCArPSBcImdlbl9yYW5kb21fdXVpZCgpXCJcbiAgICAgIH0gZWxzZSBpZiAoZGF0YWJhc2VUeXBlID09IFwibXNzcWxcIiAmJiBldmFsdWF0ZWREZWZhdWx0ID09IFwiVVVJRCgpXCIpIHtcbiAgICAgICAgc3FsICs9IFwiTkVXSUQoKVwiXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzcWwgKz0gZXZhbHVhdGVkRGVmYXVsdFxuICAgICAgfVxuXG4gICAgICBzcWwgKz0gXCIpXCJcbiAgICB9IGVsc2UgaWYgKGRlZmF1bHRWYWx1ZSkge1xuICAgICAgc3FsICs9IGAgREVGQVVMVCAke29wdGlvbnMucXVvdGUoZGVmYXVsdFZhbHVlKX1gXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ2V0UHJpbWFyeUtleSgpKSBzcWwgKz0gXCIgUFJJTUFSWSBLRVlcIlxuICAgIGlmICh0aGlzLmdldE51bGwoKSA9PT0gZmFsc2UpIHNxbCArPSBcIiBOT1QgTlVMTFwiXG5cbiAgICBjb25zdCBmb3JlaWduS2V5ID0gdGhpcy5nZXRGb3JlaWduS2V5KClcblxuICAgIGlmIChmb3JlaWduS2V5KSB7XG4gICAgICBsZXQgZm9yZWlnbktleVRhYmxlLCBmb3JlaWduS2V5Q29sdW1uXG5cbiAgICAgIGlmIChmb3JlaWduS2V5ID09PSB0cnVlKSB7XG4gICAgICAgIGZvcmVpZ25LZXlDb2x1bW4gPSBcImlkXCJcbiAgICAgICAgZm9yZWlnbktleVRhYmxlID0gaW5mbGVjdGlvbi5wbHVyYWxpemUodGhpcy5nZXRBY3R1YWxOYW1lKCkucmVwbGFjZSgvX2lkJC8sIFwiXCIpKVxuICAgICAgfSBlbHNlIGlmIChmb3JlaWduS2V5IGluc3RhbmNlb2YgVGFibGVGb3JlaWduS2V5KSB7XG4gICAgICAgIGZvcmVpZ25LZXlDb2x1bW4gPSBmb3JlaWduS2V5LmdldFJlZmVyZW5jZWRDb2x1bW5OYW1lKClcbiAgICAgICAgZm9yZWlnbktleVRhYmxlID0gZm9yZWlnbktleS5nZXRSZWZlcmVuY2VkVGFibGVOYW1lKClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBmb3JlaWduIGtleSB0eXBlIGdpdmVuOiAke2ZvcmVpZ25LZXl9ICgke3R5cGVvZiBmb3JlaWduS2V5fSlgKVxuICAgICAgfVxuXG4gICAgICBzcWwgKz0gYCBSRUZFUkVOQ0VTICR7b3B0aW9ucy5xdW90ZVRhYmxlTmFtZShmb3JlaWduS2V5VGFibGUpfSgke29wdGlvbnMucXVvdGVDb2x1bW5OYW1lKGZvcmVpZ25LZXlDb2x1bW4pfSlgXG4gICAgfVxuXG4gICAgcmV0dXJuIHNxbFxuICB9XG59XG4iXX0=
|
|
270
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3RhYmxlLWRhdGEvdGFibGUtY29sdW1uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWjs7R0FFRztBQUVILE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBQ3hDLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBQzFELE9BQU8sZUFBZSxNQUFNLHdCQUF3QixDQUFBO0FBRXBEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFFSCxNQUFNLENBQUMsT0FBTyxPQUFPLFdBQVc7SUFDOUI7OztPQUdHO0lBQ0gsWUFBWSxJQUFJLEVBQUUsSUFBSTtRQUNwQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsTUFBTSxFQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBQyxHQUFHLElBQUksQ0FBQSxDQUFDLHFDQUFxQztZQUU3TSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUE7WUFDckMsQ0FBQztZQUVELGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN6QixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQ2xCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sS0FBSyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUEsQ0FBQyxDQUFDO0lBRTlCOztPQUVH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LGNBQWMsQ0FBQyxlQUFlLENBQUMsSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQTtRQUMvRyxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqXG4gKiBAdHlwZWRlZiB7e3VuaXF1ZTogYm9vbGVhbn19IEluZGV4QXJnVHlwZVxuICovXG5cbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIlxuaW1wb3J0IHJlc3RBcmdzRXJyb3IgZnJvbSBcIi4uLy4uL3V0aWxzL3Jlc3QtYXJncy1lcnJvci5qc1wiXG5pbXBvcnQgVGFibGVGb3JlaWduS2V5IGZyb20gXCIuL3RhYmxlLWZvcmVpZ24ta2V5LmpzXCJcblxuLyoqXG4gKiBAdHlwZWRlZiB7b2JqZWN0fSBUYWJsZUNvbHVtbkFyZ3NUeXBlXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFthdXRvSW5jcmVtZW50XSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBhdXRvLWluY3JlbWVudHMuXG4gKiBAcHJvcGVydHkge2FueX0gW2RlZmF1bHRdIC0gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvbHVtbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW2Ryb3BDb2x1bW5dIC0gV2hldGhlciB0aGUgY29sdW1uIHNob3VsZCBiZSBkcm9wcGVkLlxuICogQHByb3BlcnR5IHtib29sZWFufG9iamVjdH0gW2ZvcmVpZ25LZXldIC0gRm9yZWlnbiBrZXkgb3B0aW9ucyBvciBmbGFnLlxuICogQHByb3BlcnR5IHtib29sZWFufEluZGV4QXJnVHlwZX0gW2luZGV4XSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBzaG91bGQgYmUgaW5kZXhlZC5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW2lzTmV3Q29sdW1uXSAtIFdoZXRoZXIgdGhpcyBjb2x1bW4gaXMgYmVpbmcgYWRkZWQgaW4gYSBtaWdyYXRpb24uXG4gKiBAcHJvcGVydHkge251bWJlcn0gW21heExlbmd0aF0gLSBNYXhpbXVtIGxlbmd0aCBmb3IgdGhlIGNvbHVtbiB2YWx1ZS5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW251bGxdIC0gV2hldGhlciB0aGUgY29sdW1uIGFsbG93cyBudWxsIHZhbHVlcy5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW3BvbHltb3JwaGljXSAtIFdoZXRoZXIgdGhlIGNvbHVtbiBpcyBwb2x5bW9ycGhpYy5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW3ByaW1hcnlLZXldIC0gV2hldGhlciB0aGUgY29sdW1uIGlzIGEgcHJpbWFyeSBrZXkuXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3R5cGVdIC0gQ29sdW1uIGRhdGEgdHlwZS5cbiAqL1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUYWJsZUNvbHVtbiB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUuXG4gICAqIEBwYXJhbSB7VGFibGVDb2x1bW5BcmdzVHlwZX0gW2FyZ3NdIC0gT3B0aW9ucyBvYmplY3QuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihuYW1lLCBhcmdzKSB7XG4gICAgaWYgKGFyZ3MpIHtcbiAgICAgIGNvbnN0IHthdXRvSW5jcmVtZW50LCBkZWZhdWx0OiBjb2x1bW5EZWZhdWx0LCBkcm9wQ29sdW1uLCBmb3JlaWduS2V5LCBpbmRleCwgaXNOZXdDb2x1bW4sIG1heExlbmd0aCwgbnVsbDogYXJnc051bGwsIHBvbHltb3JwaGljLCBwcmltYXJ5S2V5LCB0eXBlLCAuLi5yZXN0QXJnc30gPSBhcmdzIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW51c2VkLXZhcnNcblxuICAgICAgaWYgKE9iamVjdC5rZXlzKGFyZ3MpLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkVtcHR5IGFyZ3MgZ2l2ZW5cIilcbiAgICAgIH1cblxuICAgICAgcmVzdEFyZ3NFcnJvcihyZXN0QXJncylcbiAgICB9XG5cbiAgICB0aGlzLmFyZ3MgPSBhcmdzIHx8IHt9XG4gICAgdGhpcy5uYW1lID0gbmFtZVxuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IG5hbWVcbiAgICovXG4gIGdldE5hbWUoKSB7IHJldHVybiB0aGlzLm5hbWUgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nIHwgdW5kZWZpbmVkfSAtIFRoZSBuZXcgbmFtZS5cbiAgICovXG4gIGdldE5ld05hbWUoKSB7IHJldHVybiB0aGlzLl9uZXdOYW1lIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5ld05hbWUgLSBOZXcgbmFtZS5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0TmV3TmFtZShuZXdOYW1lKSB7IHRoaXMuX25ld05hbWUgPSBuZXdOYW1lIH1cblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gLSBUaGUgYWN0dWFsIG5hbWUuXG4gICAqL1xuICBnZXRBY3R1YWxOYW1lKCkgeyByZXR1cm4gdGhpcy5nZXROZXdOYW1lKCkgfHwgdGhpcy5nZXROYW1lKCkgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBXaGV0aGVyIGF1dG8gaW5jcmVtZW50LlxuICAgKi9cbiAgZ2V0QXV0b0luY3JlbWVudCgpIHsgcmV0dXJuIHRoaXMuYXJncz8uYXV0b0luY3JlbWVudCB8fCBmYWxzZSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbmV3QXV0b0luY3JlbWVudCAtIE5ldyBhdXRvIGluY3JlbWVudC5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0QXV0b0luY3JlbWVudChuZXdBdXRvSW5jcmVtZW50KSB7IHRoaXMuYXJncy5hdXRvSW5jcmVtZW50ID0gbmV3QXV0b0luY3JlbWVudCB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHt1bmtub3duIHwgKCgpID0+IHVua25vd24pfSAtIFRoZSBkZWZhdWx0IHZhbHVlIG9yIGZhY3RvcnkuXG4gICAqL1xuICBnZXREZWZhdWx0KCkgeyByZXR1cm4gdGhpcy5hcmdzPy5kZWZhdWx0IH1cblxuICAvKipcbiAgICogQHBhcmFtIHthbnl9IG5ld0RlZmF1bHQgLSBOZXcgZGVmYXVsdC5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0RGVmYXVsdChuZXdEZWZhdWx0KSB7IHRoaXMuYXJncy5kZWZhdWx0ID0gbmV3RGVmYXVsdCB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIFdoZXRoZXIgZHJvcCBjb2x1bW4uXG4gICAqL1xuICBnZXREcm9wQ29sdW1uKCkgeyByZXR1cm4gdGhpcy5hcmdzPy5kcm9wQ29sdW1uIHx8IGZhbHNlIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW4gfCBvYmplY3QgfCB1bmRlZmluZWR9IC0gV2hldGhlciBmb3JlaWduIGtleS5cbiAgICovXG4gIGdldEZvcmVpZ25LZXkoKSB7IHJldHVybiB0aGlzLmFyZ3M/LmZvcmVpZ25LZXkgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW4gfCBvYmplY3QgfCB1bmRlZmluZWR9IG5ld0ZvcmVpZ25LZXkgLSBOZXcgZm9yZWlnbiBrZXkuXG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIE5vIHJldHVybiB2YWx1ZS5cbiAgICovXG4gIHNldEZvcmVpZ25LZXkobmV3Rm9yZWlnbktleSkgeyB0aGlzLmFyZ3MuZm9yZWlnbktleSA9IG5ld0ZvcmVpZ25LZXkgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbnxJbmRleEFyZ1R5cGV9IC0gV2hldGhlciBpbmRleC5cbiAgICovXG4gIGdldEluZGV4KCkgeyByZXR1cm4gdGhpcy5hcmdzPy5pbmRleCB8fCBmYWxzZSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtJbmRleEFyZ1R5cGV9IC0gVGhlIGluZGV4IGFyZ3MuXG4gICAqL1xuICBnZXRJbmRleEFyZ3MoKSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmFyZ3M/LmluZGV4ID09IFwib2JqZWN0XCIpIHtcbiAgICAgIHJldHVybiB0aGlzLmFyZ3MuaW5kZXhcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHt1bmlxdWU6IGZhbHNlfVxuICAgIH1cbiAgfVxuXG4gIGdldEluZGV4VW5pcXVlKCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5hcmdzPy5pbmRleFxuXG4gICAgaWYgKHR5cGVvZiBpbmRleCA9PSBcIm9iamVjdFwiICYmIGluZGV4LnVuaXF1ZSA9PT0gdHJ1ZSkgcmV0dXJuIHRydWVcblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbnxJbmRleEFyZ1R5cGV9IG5ld0luZGV4IC0gTmV3IGluZGV4LlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXRJbmRleChuZXdJbmRleCkgeyB0aGlzLmFyZ3MuaW5kZXggPSBuZXdJbmRleCB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtudW1iZXIgfCB1bmRlZmluZWR9IC0gVGhlIG1heCBsZW5ndGguXG4gICAqL1xuICBnZXRNYXhMZW5ndGgoKSB7IHJldHVybiB0aGlzLmFyZ3M/Lm1heExlbmd0aCB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgdW5kZWZpbmVkfSBuZXdNYXhMZW5ndGggLSBOZXcgbWF4IGxlbmd0aC5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0TWF4TGVuZ3RoKG5ld01heExlbmd0aCkgeyB0aGlzLmFyZ3MubWF4TGVuZ3RoID0gbmV3TWF4TGVuZ3RoIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW4gfCB1bmRlZmluZWR9IC0gV2hldGhlciBudWxsLlxuICAgKi9cbiAgZ2V0TnVsbCgpIHsgcmV0dXJuIHRoaXMuYXJncz8ubnVsbCB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbnVsbGFibGUgLSBXaGV0aGVyIG51bGxhYmxlLlxuICAgKiBAcmV0dXJucyB7dm9pZH0gLSBObyByZXR1cm4gdmFsdWUuXG4gICAqL1xuICBzZXROdWxsKG51bGxhYmxlKSB7IHRoaXMuYXJncy5udWxsID0gbnVsbGFibGUgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBXaGV0aGVyIHByaW1hcnkga2V5LlxuICAgKi9cbiAgZ2V0UHJpbWFyeUtleSgpIHsgcmV0dXJuIHRoaXMuYXJncz8ucHJpbWFyeUtleSB8fCBmYWxzZSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbmV3UHJpbWFyeUtleSAtIE5ldyBwcmltYXJ5IGtleS5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0UHJpbWFyeUtleShuZXdQcmltYXJ5S2V5KSB7IHRoaXMuYXJncy5wcmltYXJ5S2V5ID0gbmV3UHJpbWFyeUtleSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmcgfCB1bmRlZmluZWR9IC0gVGhlIHR5cGUuXG4gICAqL1xuICBnZXRUeXBlKCkgeyByZXR1cm4gdGhpcy5hcmdzPy50eXBlIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IG5ld1R5cGUgLSBOZXcgdHlwZS5cbiAgICogQHJldHVybnMge3ZvaWR9IC0gTm8gcmV0dXJuIHZhbHVlLlxuICAgKi9cbiAgc2V0VHlwZShuZXdUeXBlKSB7IHRoaXMuYXJncy50eXBlID0gbmV3VHlwZSB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIFdoZXRoZXIgbmV3IGNvbHVtbi5cbiAgICovXG4gIGlzTmV3Q29sdW1uKCkgeyByZXR1cm4gdGhpcy5hcmdzPy5pc05ld0NvbHVtbiB8fCBmYWxzZSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzIC0gT3B0aW9ucyBvYmplY3QuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYXJncy5mb3JBbHRlclRhYmxlIC0gV2hldGhlciBmb3IgYWx0ZXIgdGFibGUuXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IGFyZ3MuZHJpdmVyIC0gRGF0YWJhc2UgZHJpdmVyIGluc3RhbmNlLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSAtIFNRTCBzdHJpbmcuXG4gICAqL1xuICBnZXRTUUwoe2ZvckFsdGVyVGFibGUsIGRyaXZlciwgLi4ucmVzdEFyZ3N9KSB7XG4gICAgcmVzdEFyZ3NFcnJvcihyZXN0QXJncylcblxuICAgIGNvbnN0IGRhdGFiYXNlVHlwZSA9IGRyaXZlci5nZXRUeXBlKClcbiAgICBjb25zdCBvcHRpb25zID0gZHJpdmVyLm9wdGlvbnMoKVxuICAgIGxldCBtYXhsZW5ndGggPSB0aGlzLmdldE1heExlbmd0aCgpXG4gICAgbGV0IHR5cGUgPSB0aGlzLmdldFR5cGUoKT8udG9VcHBlckNhc2UoKVxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcInBnc3FsXCIpIHtcbiAgICAgIGlmICh0eXBlID09IFwiREFURVRJTUVcIikge1xuICAgICAgICB0eXBlID0gXCJUSU1FU1RBTVBcIlxuICAgICAgfSBlbHNlIGlmICh0eXBlID09IFwiVElOWUlOVFwiKSB7XG4gICAgICAgIHR5cGUgPSBcIlNNQUxMSU5UXCJcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcIkJMT0JcIikge1xuICAgICAgICB0eXBlID0gXCJCWVRFQVwiXG4gICAgICAgIG1heGxlbmd0aCA9IHVuZGVmaW5lZFxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0eXBlID09IFwiU1RSSU5HXCIpIHtcbiAgICAgIHR5cGUgPSBcIlZBUkNIQVJcIlxuICAgICAgbWF4bGVuZ3RoIHx8PSAyNTVcbiAgICB9XG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcInBnc3FsXCIgJiYgdHlwZSA9PSBcIlRJTllJTlRcIikge1xuICAgICAgdHlwZSA9IFwiU01BTExJTlRcIlxuICAgIH1cblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJtc3NxbFwiKSB7XG4gICAgICBpZiAodHlwZSA9PSBcIkJPT0xFQU5cIikge1xuICAgICAgICB0eXBlID0gXCJCSVRcIlxuICAgICAgfSBlbHNlIGlmICh0eXBlID09IFwiVVVJRFwiKSB7XG4gICAgICAgIHR5cGUgPSBcIlZBUkNIQVJcIlxuICAgICAgICBtYXhsZW5ndGggfHw9IDM2XG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJKU09OXCIpIHtcbiAgICAgICAgdHlwZSA9IFwiTlZBUkNIQVIoTUFYKVwiXG4gICAgICAgIG1heGxlbmd0aCA9IHVuZGVmaW5lZFxuICAgICAgfSBlbHNlIGlmICh0eXBlID09IFwiQkxPQlwiKSB7XG4gICAgICAgIHR5cGUgPSBcIlZBUkJJTkFSWShNQVgpXCJcbiAgICAgICAgbWF4bGVuZ3RoID0gdW5kZWZpbmVkXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcInNxbGl0ZVwiICYmIHRoaXMuZ2V0QXV0b0luY3JlbWVudCgpICYmIHRoaXMuZ2V0UHJpbWFyeUtleSgpKSB7XG4gICAgICB0eXBlID0gXCJJTlRFR0VSXCJcbiAgICB9XG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIiAmJiB0aGlzLmdldEF1dG9JbmNyZW1lbnQoKSAmJiB0aGlzLmdldFByaW1hcnlLZXkoKSkge1xuICAgICAgdHlwZSA9IFwiU0VSSUFMXCJcbiAgICB9XG5cbiAgICBsZXQgc3FsID0gYCR7b3B0aW9ucy5xdW90ZUNvbHVtbk5hbWUodGhpcy5nZXRBY3R1YWxOYW1lKCkpfSBgXG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIiAmJiBmb3JBbHRlclRhYmxlKSBzcWwgKz0gXCJUWVBFIFwiXG4gICAgaWYgKHR5cGUpIHNxbCArPSB0eXBlXG4gICAgaWYgKHR5cGUgJiYgbWF4bGVuZ3RoICE9PSB1bmRlZmluZWQgJiYgbWF4bGVuZ3RoICE9PSBudWxsKSBzcWwgKz0gYCgke21heGxlbmd0aH0pYFxuXG4gICAgaWYgKHRoaXMuZ2V0QXV0b0luY3JlbWVudCgpICYmIGRyaXZlci5zaG91bGRTZXRBdXRvSW5jcmVtZW50V2hlblByaW1hcnlLZXkoKSkge1xuICAgICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcIm1zc3FsXCIpIHtcbiAgICAgICAgc3FsICs9IFwiIElERU5USVRZXCJcbiAgICAgIH0gZWxzZSBpZiAoZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIikge1xuICAgICAgICBpZiAodGhpcy5nZXRBdXRvSW5jcmVtZW50KCkgJiYgdGhpcy5nZXRQcmltYXJ5S2V5KCkpIHtcbiAgICAgICAgICAvLyBEbyBub3RoaW5nXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwicGdzcWwgYXV0byBpbmNyZW1lbnQgbXVzdCBiZSBwcmltYXJ5IGtleVwiKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzcWwgKz0gXCIgQVVUT19JTkNSRU1FTlRcIlxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IHRoaXMuZ2V0RGVmYXVsdCgpXG5cbiAgICBpZiAodHlwZW9mIGRlZmF1bHRWYWx1ZSA9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIGNvbnN0IGV2YWx1YXRlZERlZmF1bHQgPSBkZWZhdWx0VmFsdWUoKVxuXG4gICAgICBzcWwgKz0gYCBERUZBVUxUIChgXG5cbiAgICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJwZ3NxbFwiICYmIGV2YWx1YXRlZERlZmF1bHQgPT0gXCJVVUlEKClcIikge1xuICAgICAgICBzcWwgKz0gXCJnZW5fcmFuZG9tX3V1aWQoKVwiXG4gICAgICB9IGVsc2UgaWYgKGRhdGFiYXNlVHlwZSA9PSBcIm1zc3FsXCIgJiYgZXZhbHVhdGVkRGVmYXVsdCA9PSBcIlVVSUQoKVwiKSB7XG4gICAgICAgIHNxbCArPSBcIk5FV0lEKClcIlxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3FsICs9IGV2YWx1YXRlZERlZmF1bHRcbiAgICAgIH1cblxuICAgICAgc3FsICs9IFwiKVwiXG4gICAgfSBlbHNlIGlmIChkZWZhdWx0VmFsdWUpIHtcbiAgICAgIHNxbCArPSBgIERFRkFVTFQgJHtvcHRpb25zLnF1b3RlKGRlZmF1bHRWYWx1ZSl9YFxuICAgIH1cblxuICAgIGlmICh0aGlzLmdldFByaW1hcnlLZXkoKSkgc3FsICs9IFwiIFBSSU1BUlkgS0VZXCJcbiAgICBpZiAodGhpcy5nZXROdWxsKCkgPT09IGZhbHNlKSBzcWwgKz0gXCIgTk9UIE5VTExcIlxuXG4gICAgY29uc3QgZm9yZWlnbktleSA9IHRoaXMuZ2V0Rm9yZWlnbktleSgpXG5cbiAgICBpZiAoZm9yZWlnbktleSkge1xuICAgICAgbGV0IGZvcmVpZ25LZXlUYWJsZSwgZm9yZWlnbktleUNvbHVtblxuXG4gICAgICBpZiAoZm9yZWlnbktleSA9PT0gdHJ1ZSkge1xuICAgICAgICBmb3JlaWduS2V5Q29sdW1uID0gXCJpZFwiXG4gICAgICAgIGZvcmVpZ25LZXlUYWJsZSA9IGluZmxlY3Rpb24ucGx1cmFsaXplKHRoaXMuZ2V0QWN0dWFsTmFtZSgpLnJlcGxhY2UoL19pZCQvLCBcIlwiKSlcbiAgICAgIH0gZWxzZSBpZiAoZm9yZWlnbktleSBpbnN0YW5jZW9mIFRhYmxlRm9yZWlnbktleSkge1xuICAgICAgICBmb3JlaWduS2V5Q29sdW1uID0gZm9yZWlnbktleS5nZXRSZWZlcmVuY2VkQ29sdW1uTmFtZSgpXG4gICAgICAgIGZvcmVpZ25LZXlUYWJsZSA9IGZvcmVpZ25LZXkuZ2V0UmVmZXJlbmNlZFRhYmxlTmFtZSgpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gZm9yZWlnbiBrZXkgdHlwZSBnaXZlbjogJHtmb3JlaWduS2V5fSAoJHt0eXBlb2YgZm9yZWlnbktleX0pYClcbiAgICAgIH1cblxuICAgICAgc3FsICs9IGAgUkVGRVJFTkNFUyAke29wdGlvbnMucXVvdGVUYWJsZU5hbWUoZm9yZWlnbktleVRhYmxlKX0oJHtvcHRpb25zLnF1b3RlQ29sdW1uTmFtZShmb3JlaWduS2V5Q29sdW1uKX0pYFxuICAgIH1cblxuICAgIHJldHVybiBzcWxcbiAgfVxufVxuXG4iXX0=
|