UNPKG

18.2 kBJavaScriptView Raw
1import * as tslib_1 from "tslib";
2import { IonicNativePlugin, cordova } from '@ionic-native/core';
3import { Injectable } from '@angular/core';
4var IntelSecurity = /** @class */ (function (_super) {
5 tslib_1.__extends(IntelSecurity, _super);
6 function IntelSecurity() {
7 var _this = _super !== null && _super.apply(this, arguments) || this;
8 /**
9 * returns an IntelSecurityStorage object
10 * @type {IntelSecurityStorage}
11 */
12 _this.storage = new IntelSecurityStorage();
13 /**
14 * Returns an IntelSecurityData object
15 * @type {IntelSecurityData}
16 */
17 _this.data = new IntelSecurityData();
18 return _this;
19 }
20 IntelSecurity.pluginName = "IntelSecurity";
21 IntelSecurity.plugin = "com-intel-security-cordova-plugin";
22 IntelSecurity.pluginRef = "intel.security";
23 IntelSecurity.repo = "https://github.com/AppSecurityApi/com-intel-security-cordova-plugin";
24 IntelSecurity.platforms = ["Android", "iOS", "Windows", "Windows Phone 8"];
25 IntelSecurity = tslib_1.__decorate([
26 Injectable()
27 ], IntelSecurity);
28 return IntelSecurity;
29}(IonicNativePlugin));
30export { IntelSecurity };
31var IntelSecurityData = /** @class */ (function () {
32 function IntelSecurityData() {
33 }
34 IntelSecurityData.prototype.createFromData = function (options) { return cordova(this, "createFromData", { "otherPromise": true }, arguments); };
35 IntelSecurityData.prototype.createFromSealedData = function (options) { return cordova(this, "createFromSealedData", { "otherPromise": true }, arguments); };
36 IntelSecurityData.prototype.getData = function (instanceID) { return cordova(this, "getData", { "otherPromise": true }, arguments); };
37 IntelSecurityData.prototype.getSealedData = function (instanceID) { return cordova(this, "getSealedData", { "otherPromise": true }, arguments); };
38 IntelSecurityData.prototype.getTag = function (instanceID) { return cordova(this, "getTag", { "otherPromise": true }, arguments); };
39 IntelSecurityData.prototype.getPolicy = function (instanceID) { return cordova(this, "getPolicy", { "otherPromise": true }, arguments); };
40 IntelSecurityData.prototype.getOwners = function (instanceID) { return cordova(this, "getOwners", { "otherPromise": true }, arguments); };
41 IntelSecurityData.prototype.getCreator = function (instanceID) { return cordova(this, "getCreator", { "otherPromise": true }, arguments); };
42 IntelSecurityData.prototype.getWebOwners = function (instanceID) { return cordova(this, "getWebOwners", { "otherPromise": true }, arguments); };
43 IntelSecurityData.prototype.changeExtraKey = function (options) { return cordova(this, "changeExtraKey", { "otherPromise": true }, arguments); };
44 IntelSecurityData.prototype.destroy = function (instanceID) { return cordova(this, "destroy", { "otherPromise": true }, arguments); };
45 IntelSecurityData.pluginName = "IntelSecurity";
46 IntelSecurityData.plugin = "com-intel-security-cordova-plugin";
47 IntelSecurityData.pluginRef = "intel.security.secureData";
48 IntelSecurityData = tslib_1.__decorate([], IntelSecurityData);
49 return IntelSecurityData;
50}());
51export { IntelSecurityData };
52var IntelSecurityStorage = /** @class */ (function () {
53 function IntelSecurityStorage() {
54 }
55 IntelSecurityStorage.prototype.delete = function (options) { return cordova(this, "delete", { "otherPromise": true }, arguments); };
56 IntelSecurityStorage.prototype.read = function (options) { return cordova(this, "read", { "otherPromise": true }, arguments); };
57 IntelSecurityStorage.prototype.write = function (options) { return cordova(this, "write", { "otherPromise": true }, arguments); };
58 IntelSecurityStorage.pluginName = "IntelSecurity";
59 IntelSecurityStorage.plugin = "com-intel-security-cordova-plugin";
60 IntelSecurityStorage.pluginRef = "intel.security.secureStorage";
61 IntelSecurityStorage = tslib_1.__decorate([], IntelSecurityStorage);
62 return IntelSecurityStorage;
63}());
64export { IntelSecurityStorage };
65//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvQGlvbmljLW5hdGl2ZS9wbHVnaW5zL2ludGVsLXNlY3VyaXR5L25neC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyw4QkFBc0MsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztJQTRFUix5Q0FBaUI7OztRQUNsRDs7O1dBR0c7UUFDSCxhQUFPLEdBQXlCLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUUzRDs7O1dBR0c7UUFDSCxVQUFJLEdBQXNCLElBQUksaUJBQWlCLEVBQUUsQ0FBQzs7Ozs7Ozs7SUFYdkMsYUFBYTtRQUR6QixVQUFVLEVBQUU7T0FDQSxhQUFhO3dCQTdFMUI7RUE2RW1DLGlCQUFpQjtTQUF2QyxhQUFhOzs7O0lBNkJ4QiwwQ0FBYyxhQUFDLE9BQWlDO0lBV2hELGdEQUFvQixhQUFDLE9BQStCO0lBVXBELG1DQUFPLGFBQUMsVUFBa0I7SUFVMUIseUNBQWEsYUFBQyxVQUFlO0lBVTdCLGtDQUFNLGFBQUMsVUFBZTtJQVV0QixxQ0FBUyxhQUFDLFVBQWU7SUFVekIscUNBQVMsYUFBQyxVQUFlO0lBVXpCLHNDQUFVLGFBQUMsVUFBZTtJQVUxQix3Q0FBWSxhQUFDLFVBQWU7SUFZNUIsMENBQWMsYUFBQyxPQUFZO0lBVTNCLG1DQUFPLGFBQUMsVUFBZTs7OztJQTlHWixpQkFBaUIsMEJBQWpCLGlCQUFpQjs0QkFuRzlCOztTQW1HYSxpQkFBaUI7Ozs7SUFvSTVCLHFDQUFNLGFBQUMsT0FBNkM7SUFhcEQsbUNBQUksYUFBQyxPQUlKO0lBYUQsb0NBQUssYUFBQyxPQUlMOzs7O0lBM0NVLG9CQUFvQiwwQkFBcEIsb0JBQW9COytCQTlOakM7O1NBOE5hLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmRvdmEsIElvbmljTmF0aXZlUGx1Z2luLCBQbHVnaW4gfSBmcm9tICdAaW9uaWMtbmF0aXZlL2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogYW55O1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVsU2VjdXJpdHlEYXRhT3B0aW9ucyB7XG4gIC8qIE5vbi1lbXB0eSBzdHJpbmcuICoqL1xuICBkYXRhOiBTdHJpbmc7XG4gIC8qKiBUYWcgdGV4dC4gICovXG4gIHRhZz86IFN0cmluZztcbiAgLyoqIFZhbGlkIHNlY3VyZSBkYXRhIGluc3RhbmNlIElELiAqL1xuICBleHRyYUtleT86IE51bWJlcjtcbiAgLyoqIEFwcGxpY2F0aW9uIGFjY2VzcyBjb250cm9sIHBvbGljeS4gKi9cbiAgYXBwQWNjZXNzQ29udHJvbD86IE51bWJlcjtcbiAgLyoqIERldmljZSBsb2NhbGl0eSBwb2xpY3kuICovXG4gIGRldmljZUxvY2FsaXR5PzogTnVtYmVyO1xuICAvKiogU2Vuc2l0aXZpdHkgbGV2ZWwgcG9saWN5LiAqL1xuICBzZW5zaXRpdml0eUxldmVsPzogTnVtYmVyO1xuICAvKiogRGlzYWxsb3cgc2VhbGVkIGJsb2IgYWNjZXNzLiAqL1xuICBub1N0b3JlPzogQm9vbGVhbjtcbiAgLyoqIERpc2FsbG93IHBsYWluLXRleHQgZGF0YSBhY2Nlc3MuICovXG4gIG5vUmVhZD86IEJvb2xlYW47XG4gIC8qKiBDcmVhdG9yIHVuaXF1ZSBJRC4gKi9cbiAgY3JlYXRvcj86IE51bWJlcjtcbiAgLyoqIEFycmF5IG9mIG93bmVycyB1bmlxdWUgSURzLiAqL1xuICBvd25lcnM/OiBOdW1iZXJbXTtcbiAgLyoqIExpc3Qgb2YgdHJ1c3RlZCB3ZWIgZG9tYWlucy4gKi9cbiAgd2ViT3duZXJzPzogU3RyaW5nW107XG59XG5cbi8qKlxuICogQG5hbWUgSW50ZWwgU2VjdXJpdHlcbiAqIEBkZXNjcmlwdGlvblxuICogVGhlIEFwcCBTZWN1cml0eSBBUEkgZW5hYmxlcyB0aGUgdXNlIG9mIHNlY3VyaXR5IHByb3BlcnRpZXMgYW5kIGNhcGFiaWxpdGllcyBvbiB0aGUgcGxhdGZvcm0sIHVzaW5nIGEgbmV3IHNldCBvZiBBUEkgZGVmaW5lZCBmb3IgYXBwbGljYXRpb24gZGV2ZWxvcGVycy4gWW91IGFyZSBub3QgcmVxdWlyZWQgdG8gYmUgYSBzZWN1cml0eSBleHBlcnQgdG8gbWFrZSBnb29kIHVzZSBvZiB0aGUgQVBJLiBLZXkgZWxlbWVudHMsIHN1Y2ggYXMgZW5jcnlwdGlvbiBvZiBkYXRhIGFuZCBlc3RhYmxpc2htZW50cyBvZiBjYXBhYmlsaXRpZXMsIGlzIGFic3RyYWN0ZWQgYW5kIGRvbmUgYnkgdGhlIEFQSSBpbXBsZW1lbnRhdGlvbiwgZm9yIHlvdS5cbiAqXG4gKiBGb3IgZXhhbXBsZTpcbiAqIC0gVXNlIHRoZSBBUEkgdG8gc3RvcmUgKEUuZy4gY2FjaGUpIGRhdGEgbG9jYWxseSwgdXNpbmcgdGhlIGRldmljZSBub24tdm9sYXRpbGUgc3RvcmFnZS4gRGF0YSBwcm90ZWN0aW9uL2VuY3J5cHRpb24gd2lsbCBiZSBkb25lIGZvciB5b3UgYnkgdGhlIEFQSSBpbXBsZW1lbnRhdGlvblxuICogLSBFc3RhYmxpc2ggYSBjb25uZWN0aW9uIHdpdGggcmVtb3RlIHNlcnZlciAoRS5nLiBYSFIpIHVzaW5nIGEgcHJvdGVjdGVkIGNoYW5uZWwuIFNTTC9UTFMgZXN0YWJsaXNobWVudCBhbmQgdXNhZ2Ugd2lsbCBiZSBkb25lIGZvciB5b3UgYnkgdGhlIEFQSSBpbXBsZW1lbnRhdGlvblxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uIHBsZWFzZSB2aXNpdCB0aGUgW0FQSSBkb2N1bWVudGF0aW9uXShodHRwczovL3NvZnR3YXJlLmludGVsLmNvbS9lbi11cy9hcHAtc2VjdXJpdHktYXBpL2FwaSkuXG4gKlxuICogQHVzYWdlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBJbnRlbFNlY3VyaXR5IH0gZnJvbSAnQGlvbmljLW5hdGl2ZS9pbnRlbC1zZWN1cml0eS9uZ3gnO1xuICogLi4uXG4gKiBjb25zdHJ1Y3Rvcihwcml2YXRlIGludGVsU2VjdXJpdHk6IEludGVsU2VjdXJpdHkpIHsgfVxuICogLi4uXG4gKlxuICogbGV0IHN0b3JhZ2VJRCA9ICdpZCc7XG4gKlxuICogdGhpcy5pbnRlbFNlY3VyaXR5LmRhdGEuY3JlYXRlRnJvbURhdGEoeyBkYXRhOiAnU2FtcGxlIERhdGEnIH0pXG4gKiAgIC50aGVuKChpbnN0YW5jZUlEOiBOdW1iZXIpID0+IHRoaXMuaW50ZWxTZWN1cml0eS5zdG9yYWdlLndyaXRlKHsgaWQ6IHN0b3JhZ2VJZCwgaW5zdGFuY2VJRDogaW5zdGFuY2VJRCB9KSlcbiAqICAgLmNhdGNoKChlcnJvcjogYW55KSA9PiBjb25zb2xlLmxvZyhlcnJvcikpO1xuICpcbiAqIHRoaXMuaW50ZWxTZWN1cml0eS5zdG9yYWdlLnJlYWQoe2lkOiBzdG9yYWdlSUQgfSlcbiAqICAgLnRoZW4oKGluc3RhbmNlSUQ6IG51bWJlcikgPT4gdGhpcy5pbnRlbFNlY3VyaXR5LmRhdGEuZ2V0RGF0YShpbnN0YW5jZUlEKSlcbiAqICAgLnRoZW4oKGRhdGE6IHN0cmluZykgPT4gY29uc29sZS5sb2coZGF0YSkpIC8vIFJlc29sdmVzIHRvICdTYW1wbGUgRGF0YSdcbiAqICAgLmNhdGNoKChlcnJvcjogYW55KSA9PiBjb25zb2xlLmxvZyhlcnJvcikpO1xuICpcbiAqIHRoaXMuaW50ZWxTZWN1cml0eS5zdG9yYWdlLmRlbGV0ZSh7IGlkOiBzdG9yYWdlSUQgfSlcbiAqICAgLnRoZW4oKCkgPT4gY29uc29sZS5sb2coJ0RlbGV0ZWQgU3VjY2Vzc2Z1bGx5JykpXG4gKiAgIC5jYXRjaCgoZXJyb3I6IGFueSkgPT4gY29uc29sZS5sb2coZXJyb3IpKTtcbiAqIGBgYFxuICogQGNsYXNzZXNcbiAqIEludGVsU2VjdXJpdHlEYXRhXG4gKiBJbnRlbFNlY3VyaXR5U3RvcmFnZVxuICogQGludGVyZmFjZXNcbiAqIEludGVsU2VjdXJpdHlEYXRhT3B0aW9uc1xuICovXG5AUGx1Z2luKHtcbiAgcGx1Z2luTmFtZTogJ0ludGVsU2VjdXJpdHknLFxuICBwbHVnaW46ICdjb20taW50ZWwtc2VjdXJpdHktY29yZG92YS1wbHVnaW4nLFxuICBwbHVnaW5SZWY6ICdpbnRlbC5zZWN1cml0eScsXG4gIHJlcG86ICdodHRwczovL2dpdGh1Yi5jb20vQXBwU2VjdXJpdHlBcGkvY29tLWludGVsLXNlY3VyaXR5LWNvcmRvdmEtcGx1Z2luJyxcbiAgcGxhdGZvcm1zOiBbJ0FuZHJvaWQnLCAnaU9TJywgJ1dpbmRvd3MnLCAnV2luZG93cyBQaG9uZSA4J11cbn0pXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSW50ZWxTZWN1cml0eSBleHRlbmRzIElvbmljTmF0aXZlUGx1Z2luIHtcbiAgLyoqXG4gICAqIHJldHVybnMgYW4gSW50ZWxTZWN1cml0eVN0b3JhZ2Ugb2JqZWN0XG4gICAqIEB0eXBlIHtJbnRlbFNlY3VyaXR5U3RvcmFnZX1cbiAgICovXG4gIHN0b3JhZ2U6IEludGVsU2VjdXJpdHlTdG9yYWdlID0gbmV3IEludGVsU2VjdXJpdHlTdG9yYWdlKCk7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gSW50ZWxTZWN1cml0eURhdGEgb2JqZWN0XG4gICAqIEB0eXBlIHtJbnRlbFNlY3VyaXR5RGF0YX1cbiAgICovXG4gIGRhdGE6IEludGVsU2VjdXJpdHlEYXRhID0gbmV3IEludGVsU2VjdXJpdHlEYXRhKCk7XG59XG5cbi8qKlxuICogQGhpZGRlblxuICovXG5AUGx1Z2luKHtcbiAgcGx1Z2luTmFtZTogJ0ludGVsU2VjdXJpdHknLFxuICBwbHVnaW46ICdjb20taW50ZWwtc2VjdXJpdHktY29yZG92YS1wbHVnaW4nLFxuICBwbHVnaW5SZWY6ICdpbnRlbC5zZWN1cml0eS5zZWN1cmVEYXRhJ1xufSlcbmV4cG9ydCBjbGFzcyBJbnRlbFNlY3VyaXR5RGF0YSB7XG4gIC8qKlxuICAgKiBUaGlzIGNyZWF0ZXMgYSBuZXcgaW5zdGFuY2Ugb2Ygc2VjdXJlIGRhdGEgdXNpbmcgcGxhaW4tdGV4dCBkYXRhLlxuICAgKiBAcGFyYW0gb3B0aW9ucyB7SW50ZWxTZWN1cml0eURhdGFPcHRpb25zfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIGluc3RhbmNlSUQgb2YgdGhlIGNyZWF0ZWQgZGF0YSBpbnN0YW5jZSwgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgY3JlYXRlRnJvbURhdGEob3B0aW9uczogSW50ZWxTZWN1cml0eURhdGFPcHRpb25zKTogUHJvbWlzZTxOdW1iZXI+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBjcmVhdGVzIGEgbmV3IGluc3RhbmNlIG9mIHNlY3VyZSBkYXRhICh1c2luZyBzZWFsZWQgZGF0YSlcbiAgICogQHBhcmFtIG9wdGlvbnMge09iamVjdH1cbiAgICogQHBhcmFtIG9wdGlvbnMuc2VhbGVkRGF0YSB7c3RyaW5nfSBTZWFsZWQgZGF0YSBpbiBzdHJpbmcgZm9ybWF0LlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIGluc3RhbmNlSUQgb2YgdGhlIGNyZWF0ZWQgZGF0YSBpbnN0YW5jZSwgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgY3JlYXRlRnJvbVNlYWxlZERhdGEob3B0aW9uczogeyBzZWFsZWREYXRhOiBzdHJpbmcgfSk6IFByb21pc2U8TnVtYmVyPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgcmV0dXJucyB0aGUgcGxhaW4tdGV4dCBkYXRhIG9mIHRoZSBzZWN1cmUgZGF0YSBpbnN0YW5jZS5cbiAgICogQHBhcmFtIGluc3RhbmNlSUQge051bWJlcn0gU2VjdXJlIGRhdGEgaW5zdGFuY2UgSUQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59IFJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGRhdGEgYXMgcGxhaW4tdGV4dCwgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgZ2V0RGF0YShpbnN0YW5jZUlEOiBOdW1iZXIpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIHJldHVybnMgdGhlIHNlYWxlZCBjaHVuayBvZiBhIHNlY3VyZSBkYXRhIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0aGUgc2VhbGVkIGRhdGEsIG9yIHJlamVjdHMgd2l0aCBhbiBlcnJvci5cbiAgICovXG4gIEBDb3Jkb3ZhKHsgb3RoZXJQcm9taXNlOiB0cnVlIH0pXG4gIGdldFNlYWxlZERhdGEoaW5zdGFuY2VJRDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyByZXR1cm5zIHRoZSB0YWcgb2YgdGhlIHNlY3VyZSBkYXRhIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8c3RyaW5nPn0gUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0aGUgdGFnLCBvciByZWplY3RzIHdpdGggYW4gZXJyb3IuXG4gICAqL1xuICBAQ29yZG92YSh7IG90aGVyUHJvbWlzZTogdHJ1ZSB9KVxuICBnZXRUYWcoaW5zdGFuY2VJRDogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyByZXR1cm5zIHRoZSBkYXRhIHBvbGljeSBvZiB0aGUgc2VjdXJlIGRhdGEgaW5zdGFuY2UuXG4gICAqIEBwYXJhbSBpbnN0YW5jZUlEIHthbnl9IFNlY3VyZSBkYXRhIGluc3RhbmNlIElELlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBwb2xpY3kgb2JqZWN0LCBvciByZWplY3RzIHdpdGggYW4gZXJyb3IuXG4gICAqL1xuICBAQ29yZG92YSh7IG90aGVyUHJvbWlzZTogdHJ1ZSB9KVxuICBnZXRQb2xpY3koaW5zdGFuY2VJRDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyByZXR1cm5zIGFuIGFycmF5IG9mIHRoZSBkYXRhIG93bmVycyB1bmlxdWUgSURzLlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8QXJyYXk+fSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFuIGFycmF5IG9mIG93bmVycycgdW5pcXVlIElEcywgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgZ2V0T3duZXJzKGluc3RhbmNlSUQ6IGFueSk6IFByb21pc2U8YW55W10+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyByZXR1cm5zIHRoZSBkYXRhIGNyZWF0b3IgdW5pcXVlIElELlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8TnVtYmVyPn0gUmV0dXJucyBhIHByb21zaWUgdGhhdCByZXNvbHZlcyB0byB0aGUgY3JlYXRvcidzIHVuaXF1ZSBJRCwgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgZ2V0Q3JlYXRvcihpbnN0YW5jZUlEOiBhbnkpOiBQcm9taXNlPE51bWJlcj4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIHJldHVybnMgYW4gYXJyYXkgb2YgdGhlIHRydXN0ZWQgd2ViIGRvbWFpbnMgb2YgdGhlIHNlY3VyZSBkYXRhIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8QXJyYXk+fSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgbGlzdCBvZiB3ZWIgb3duZXJzLCBvciByZWplY3RzIHdpdGggYW4gZXJyb3IuXG4gICAqL1xuICBAQ29yZG92YSh7IG90aGVyUHJvbWlzZTogdHJ1ZSB9KVxuICBnZXRXZWJPd25lcnMoaW5zdGFuY2VJRDogYW55KTogUHJvbWlzZTxhbnlbXT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGNoYW5nZXMgdGhlIGV4dHJhIGtleSBvZiBhIHNlY3VyZSBkYXRhIGluc3RhbmNlLiBUbyBzdWNjZXNzZnVsbHkgcmVwbGFjZSB0aGUgZXh0cmEga2V5LCB0aGUgY2FsbGluZyBhcHBsaWNhdGlvbiBtdXN0IGhhdmUgc3VmZmljaWVudCBhY2Nlc3MgdG8gdGhlIHBsYWluLXRleHQgZGF0YS5cbiAgICogQHBhcmFtIG9wdGlvbnMge09iamVjdH1cbiAgICogQHBhcmFtIG9wdGlvbnMuaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHBhcmFtIG9wdGlvbnMuZXh0cmFLZXkge051bWJlcn0gRXh0cmEgc2VhbGluZyBzZWNyZXQgZm9yIHNlY3VyZSBkYXRhIGluc3RhbmNlLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggbm8gcGFyYW1ldGVycywgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgY2hhbmdlRXh0cmFLZXkob3B0aW9uczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogVGhpcyByZWxlYXNlcyBhIHNlY3VyZSBkYXRhIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJRCB7YW55fSBTZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUmV0dXJucyBhIHByb21pc2UgdGhhdCByZXNvdmxlcyB3aXRoIG5vIHBhcmFtZXRlcnMsIG9yIHJlamVjdHMgd2l0aCBhbiBlcnJvci5cbiAgICovXG4gIEBDb3Jkb3ZhKHsgb3RoZXJQcm9taXNlOiB0cnVlIH0pXG4gIGRlc3Ryb3koaW5zdGFuY2VJRDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cbn1cblxuLyoqXG4gKiBAaGlkZGVuXG4gKi9cbkBQbHVnaW4oe1xuICBwbHVnaW5OYW1lOiAnSW50ZWxTZWN1cml0eScsXG4gIHBsdWdpbjogJ2NvbS1pbnRlbC1zZWN1cml0eS1jb3Jkb3ZhLXBsdWdpbicsXG4gIHBsdWdpblJlZjogJ2ludGVsLnNlY3VyaXR5LnNlY3VyZVN0b3JhZ2UnXG59KVxuZXhwb3J0IGNsYXNzIEludGVsU2VjdXJpdHlTdG9yYWdlIHtcbiAgLyoqXG4gICAqIFRoaXMgZGVsZXRlcyBhIHNlY3VyZSBzdG9yYWdlIHJlc291cmNlIChpbmRpY2F0ZWQgYnkgaWQpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyB7T2JqZWN0fVxuICAgKiBAcGFyYW0gb3B0aW9ucy5pZCB7U3RyaW5nfSBTdG9yYWdlIHJlc291cmNlIGlkZW50aWZpZXIuXG4gICAqIEBwYXJhbSBbb3B0aW9ucy5zdG9yYWdlVHlwZV0ge051bWJlcn0gU3RvcmFnZSB0eXBlLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggbm8gcGFyYW1ldGVycywgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgZGVsZXRlKG9wdGlvbnM6IHsgaWQ6IHN0cmluZzsgc3RvcmFnZVR5cGU/OiBOdW1iZXIgfSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgcmVhZHMgdGhlIGRhdGEgZnJvbSBzZWN1cmUgc3RvcmFnZSAoaW5kaWNhdGVkIGJ5IGlkKSBhbmQgY3JlYXRlcyBhIG5ldyBzZWN1cmUgZGF0YSBpbnN0YW5jZS5cbiAgICogQHBhcmFtIG9wdGlvbnMge09iamVjdH1cbiAgICogQHBhcmFtIG9wdGlvbnMuaWQge1N0cmluZ30gU3RvcmFnZSByZXNvdXJjZSBpZGVudGlmaWVyLlxuICAgKiBAcGFyYW0gW29wdGlvbnMuc3RvcmFnZVR5cGVdIHtOdW1iZXJ9IFN0b3JhZ2UgdHlwZS5cbiAgICogQHBhcmFtIFtvcHRpb25zLmV4dHJhS2V5XSB7TnVtYmVyfSBWYWxpZCBzZWN1cmUgZGF0YSBpbnN0YW5jZSBJRC5cbiAgICogQHJldHVybnMge1Byb21pc2U8TnVtYmVyPn0gUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBpbnN0YW5jZSBJRCBvZiB0aGUgY3JlYXRlZCBzZWN1cmUgZGF0YSBpbnN0YW5jZSwgb3IgcmVqZWN0cyB3aXRoIGFuIGVycm9yLlxuICAgKi9cbiAgQENvcmRvdmEoeyBvdGhlclByb21pc2U6IHRydWUgfSlcbiAgcmVhZChvcHRpb25zOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBzdG9yYWdlVHlwZT86IE51bWJlcjtcbiAgICBleHRyYUtleT86IE51bWJlcjtcbiAgfSk6IFByb21pc2U8TnVtYmVyPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgd3JpdGVzIHRoZSBkYXRhIGNvbnRhaW5lZCBpbiBhIHNlY3VyZSBkYXRhIGluc3RhbmNlIGludG8gc2VjdXJlIHN0b3JhZ2UuXG4gICAqIEBwYXJhbSBvcHRpb25zIHtPYmplY3R9XG4gICAqIEBwYXJhbSBvcHRpb25zLmlkIHtTdHJpbmd9IFN0b3JhZ2UgcmVzb3VyY2UgaWRlbnRpZmllci5cbiAgICogQHBhcmFtIG9wdGlvbnMuaW5zdGFuY2VJRCB7TnVtYmVyfSBWYWxpZCBzZWN1cmUgZGF0YSBpbnN0YW5jZSBJRFxuICAgKiBAcGFyYW0gW29wdGlvbnMuc3RvcmFnZVR5cGVdIHtOdW1iZXJ9IFN0b3JhZ2UgdHlwZS5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB3aXRoIG5vIHBhcmFtZXRlcnMsIG9yIHJlamVjdHMgd2l0aCBhbiBlcnJvci5cbiAgICovXG4gIEBDb3Jkb3ZhKHsgb3RoZXJQcm9taXNlOiB0cnVlIH0pXG4gIHdyaXRlKG9wdGlvbnM6IHtcbiAgICBpZDogU3RyaW5nO1xuICAgIGluc3RhbmNlSUQ6IE51bWJlcjtcbiAgICBzdG9yYWdlVHlwZT86IE51bWJlcjtcbiAgfSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG59XG4iXX0=
\No newline at end of file