@c8y/ngx-components 1017.0.93 → 1017.0.95
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/esm2020/core/common/markdown-to-html.pipe.mjs +2 -3
- package/esm2020/core/dynamic-forms/select/select.type.component.mjs +5 -3
- package/esm2020/protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.mjs +4 -4
- package/fesm2015/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs +3 -3
- package/fesm2015/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs.map +1 -1
- package/fesm2015/c8y-ngx-components-protocol-lwm2m.mjs +3 -3
- package/fesm2015/c8y-ngx-components-protocol-lwm2m.mjs.map +1 -1
- package/fesm2015/c8y-ngx-components.mjs +6 -5
- package/fesm2015/c8y-ngx-components.mjs.map +1 -1
- package/fesm2020/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs +3 -3
- package/fesm2020/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs.map +1 -1
- package/fesm2020/c8y-ngx-components-protocol-lwm2m.mjs +3 -3
- package/fesm2020/c8y-ngx-components-protocol-lwm2m.mjs.map +1 -1
- package/fesm2020/c8y-ngx-components.mjs +5 -4
- package/fesm2020/c8y-ngx-components.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -10,8 +10,7 @@ export class MarkdownToHtmlPipe {
|
|
|
10
10
|
}
|
|
11
11
|
transform(markdown, args) {
|
|
12
12
|
return markdown
|
|
13
|
-
? from(import(
|
|
14
|
-
const marked = lib.default;
|
|
13
|
+
? from(import('marked')).pipe(map(marked => {
|
|
15
14
|
const renderer = new marked.Renderer();
|
|
16
15
|
const baseUrl = args?.baseUrl || '';
|
|
17
16
|
if (baseUrl) {
|
|
@@ -45,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
45
44
|
name: 'markdownToHtml'
|
|
46
45
|
}]
|
|
47
46
|
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tdG8taHRtbC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29yZS9jb21tb24vbWFya2Rvd24tdG8taHRtbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBS2pELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFBb0IsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztJQUFHLENBQUM7SUFFL0MsU0FBUyxDQUFDLFFBQWdCLEVBQUUsSUFBMEI7UUFDcEQsT0FBTyxRQUFRO1lBQ2IsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3pCLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDWCxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDdkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUM7Z0JBQ3BDLElBQUksT0FBTyxFQUFFO29CQUNYLE1BQU0scUJBQXFCLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQztvQkFDN0MsUUFBUSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7d0JBQ3JDLElBQUksR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDO3dCQUN0QixPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDakUsQ0FBQyxDQUFDO2lCQUNIO2dCQUNELE1BQU0sb0JBQW9CLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDM0MsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7b0JBQ3BDLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztvQkFDL0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQyxDQUFDO29CQUM5RCxNQUFNLElBQUksR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BFLE9BQU8sU0FBUzt3QkFDZCxDQUFDLENBQUMsSUFBSTt3QkFDTixDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsd0RBQXdELENBQUMsQ0FBQztnQkFDckYsQ0FBQyxDQUFDO2dCQUNGLE9BQVEsTUFBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFDaEUsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxPQUFPLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUNIO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNiLENBQUM7OytHQWpDVSxrQkFBa0I7NkdBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUg5QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxnQkFBZ0I7aUJBQ3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgU2VjdXJpdHlDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ21hcmtkb3duVG9IdG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93blRvSHRtbFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICB0cmFuc2Zvcm0obWFya2Rvd246IHN0cmluZywgYXJncz86IHsgYmFzZVVybDogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiBtYXJrZG93blxuICAgICAgPyBmcm9tKGltcG9ydCgnbWFya2VkJykpLnBpcGUoXG4gICAgICAgICAgbWFwKG1hcmtlZCA9PiB7XG4gICAgICAgICAgICBjb25zdCByZW5kZXJlciA9IG5ldyBtYXJrZWQuUmVuZGVyZXIoKTtcbiAgICAgICAgICAgIGNvbnN0IGJhc2VVcmwgPSBhcmdzPy5iYXNlVXJsIHx8ICcnO1xuICAgICAgICAgICAgaWYgKGJhc2VVcmwpIHtcbiAgICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxSZW5kZXJlckltYWdlID0gcmVuZGVyZXIuaW1hZ2U7XG4gICAgICAgICAgICAgIHJlbmRlcmVyLmltYWdlID0gKGhyZWYsIHRpdGxlLCB0ZXh0KSA9PiB7XG4gICAgICAgICAgICAgICAgaHJlZiA9IGJhc2VVcmwgKyBocmVmO1xuICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFJlbmRlcmVySW1hZ2UuY2FsbChyZW5kZXJlciwgaHJlZiwgdGl0bGUsIHRleHQpO1xuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxSZW5kZXJlckxpbmsgPSByZW5kZXJlci5saW5rO1xuICAgICAgICAgICAgcmVuZGVyZXIubGluayA9IChocmVmLCB0aXRsZSwgdGV4dCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB7IGhvc3RuYW1lLCBwcm90b2NvbCB9ID0gd2luZG93LmxvY2F0aW9uO1xuICAgICAgICAgICAgICBjb25zdCBsb2NhbExpbmsgPSBocmVmLnN0YXJ0c1dpdGgoYCR7cHJvdG9jb2x9Ly8ke2hvc3RuYW1lfWApO1xuICAgICAgICAgICAgICBjb25zdCBodG1sID0gb3JpZ2luYWxSZW5kZXJlckxpbmsuY2FsbChyZW5kZXJlciwgaHJlZiwgdGl0bGUsIHRleHQpO1xuICAgICAgICAgICAgICByZXR1cm4gbG9jYWxMaW5rXG4gICAgICAgICAgICAgICAgPyBodG1sXG4gICAgICAgICAgICAgICAgOiBodG1sLnJlcGxhY2UoL148YSAvLCBgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9yZWZlcnJlciBub29wZW5lciBub2ZvbGxvd1wiIGApO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHJldHVybiAobWFya2VkIGFzIGFueSkucGFyc2UobWFya2Rvd24sIHsgcmVuZGVyZXIgfSk7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWFwKGh0bWwgPT4gdGhpcy5zYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIGh0bWwpKSxcbiAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBvZignPHA+RmFpbGVkIHRvIHByb2Nlc3MgbWFya2Rvd24gZmlsZS48L3A+Jyk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgOiBvZignJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -29,11 +29,13 @@ export class SelectComponent extends FieldType {
|
|
|
29
29
|
if (this.to?.valueProp?.length > 0) {
|
|
30
30
|
this.valueProp = this.to.valueProp;
|
|
31
31
|
}
|
|
32
|
-
this.formControl.setValue(this.to?.initValue ?? undefined);
|
|
33
32
|
}
|
|
34
33
|
}
|
|
35
34
|
SelectComponent.CONFIG = {
|
|
36
|
-
types: [
|
|
35
|
+
types: [
|
|
36
|
+
{ name: 'select', component: SelectComponent, wrappers: ['c8y-form-field'] },
|
|
37
|
+
{ name: 'enum', extends: 'select' }
|
|
38
|
+
]
|
|
37
39
|
};
|
|
38
40
|
SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: SelectComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
41
|
SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: SelectComponent, selector: "c8y-select-type", usesInheritance: true, ngImport: i0, template: "<div class=\"c8y-select-wrapper\">\n <select\n class=\"form-control\"\n [formControl]=\"formControl\"\n [class.is-invalid]=\"showError\"\n [formlyAttributes]=\"field\"\n [required]=\"to.required\"\n >\n <option [ngValue]=\"undefined\" selected disabled>{{ placeholder$ | async | translate }}</option>\n <ng-container *ngFor=\"let opt of to.options\">\n <option [ngValue]=\"opt[valueProp]\" [disabled]=\"opt.disabled || false\">\n {{ opt[labelProp] | translate }}\n </option>\n </ng-container>\n </select>\n</div>\n ", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormlyAttributes, selector: "[formlyAttributes]", inputs: ["formlyAttributes", "id"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.C8yTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
@@ -41,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
41
43
|
type: Component,
|
|
42
44
|
args: [{ selector: 'c8y-select-type', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"c8y-select-wrapper\">\n <select\n class=\"form-control\"\n [formControl]=\"formControl\"\n [class.is-invalid]=\"showError\"\n [formlyAttributes]=\"field\"\n [required]=\"to.required\"\n >\n <option [ngValue]=\"undefined\" selected disabled>{{ placeholder$ | async | translate }}</option>\n <ng-container *ngFor=\"let opt of to.options\">\n <option [ngValue]=\"opt[valueProp]\" [disabled]=\"opt.disabled || false\">\n {{ opt[labelProp] | translate }}\n </option>\n </ng-container>\n </select>\n</div>\n " }]
|
|
43
45
|
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LnR5cGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9keW5hbWljLWZvcm1zL3NlbGVjdC9zZWxlY3QudHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9jb3JlL2R5bmFtaWMtZm9ybXMvc2VsZWN0L3NlbGVjdC50eXBlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7Ozs7O0FBT3JDLE1BQU0sT0FBTyxlQUFnQixTQUFRLFNBQVM7SUFpQzVDLFlBQW9CLGdCQUFrQztRQUNwRCxLQUFLLEVBQUUsQ0FBQztRQURVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF6QnRELGNBQVMsR0FBVyxPQUFPLENBQUM7UUFDNUIsY0FBUyxHQUFXLE9BQU8sQ0FBQztRQUU1QixpQkFBWSxHQUFHLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdkQsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQ3RCLFdBQVc7WUFDVCxDQUFDLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQztZQUNqQixDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FDM0IsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUN4RSxDQUNOLENBQ0YsQ0FBQztRQUVGLHdCQUFtQixHQUFHLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FDL0IsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FDekUsQ0FBQyxJQUFJLENBQ0osR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDekMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQ1osSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FDM0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGdEQUFnRCxDQUFDLEVBQzFGLEVBQUUsT0FBTyxFQUFFLENBQ1osQ0FDRixDQUNGLENBQUM7SUFJRixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQ3BDO1FBRUQsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDcEM7SUFDSCxDQUFDOztBQTVDZSxzQkFBTSxHQUFpQjtJQUNyQyxLQUFLLEVBQUU7UUFDTCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1FBQzVFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO0tBQ3BDO0NBQ0QsQ0FBQTs0R0FOUyxlQUFlO2dHQUFmLGVBQWUsOEVDYjVCLGtqQkFnQkU7MkZESFcsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxpQkFBaUIsbUJBRVYsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlnT3B0aW9uLCBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBkZWZlciwgaXNPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICcuLi8uLi9pMThuJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LXNlbGVjdC10eXBlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC50eXBlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgRmllbGRUeXBlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgc3RhdGljIHJlYWRvbmx5IENPTkZJRzogQ29uZmlnT3B0aW9uID0ge1xuICAgIHR5cGVzOiBbXG4gICAgICB7IG5hbWU6ICdzZWxlY3QnLCBjb21wb25lbnQ6IFNlbGVjdENvbXBvbmVudCwgd3JhcHBlcnM6IFsnYzh5LWZvcm0tZmllbGQnXSB9LFxuICAgICAgeyBuYW1lOiAnZW51bScsIGV4dGVuZHM6ICdzZWxlY3QnIH1cbiAgICBdXG4gIH07XG5cbiAgbGFiZWxQcm9wOiBzdHJpbmcgPSAnbGFiZWwnO1xuICB2YWx1ZVByb3A6IHN0cmluZyA9ICd2YWx1ZSc7XG5cbiAgcGxhY2Vob2xkZXIkID0gZGVmZXIoKCkgPT4gb2YodGhpcy50bz8ucGxhY2Vob2xkZXIpKS5waXBlKFxuICAgIHN3aXRjaE1hcChwbGFjZWhvbGRlciA9PlxuICAgICAgcGxhY2Vob2xkZXJcbiAgICAgICAgPyBvZihwbGFjZWhvbGRlcilcbiAgICAgICAgOiB0aGlzLmRlZmF1bHRQbGFjZWhvbGRlciQucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChnZXR0ZXh0KCdTZWxlY3QgeW91ciBvcHRpb24nKSkpXG4gICAgICAgICAgKVxuICAgIClcbiAgKTtcblxuICBkZWZhdWx0UGxhY2Vob2xkZXIkID0gZGVmZXIoKCkgPT5cbiAgICBpc09ic2VydmFibGUodGhpcy50bz8ub3B0aW9ucykgPyB0aGlzLnRvPy5vcHRpb25zIDogb2YodGhpcy50bz8ub3B0aW9ucylcbiAgKS5waXBlKFxuICAgIG1hcChkYXRhID0+IGdldChkYXRhWzBdLCB0aGlzLmxhYmVsUHJvcCkpLFxuICAgIG1hcChleGFtcGxlID0+XG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgIWV4YW1wbGUgPyBnZXR0ZXh0KCdObyBpdGVtcycpIDogZ2V0dGV4dCgnU2VsZWN0IHlvdXIgb3B0aW9uLCBmb3IgZXhhbXBsZSwge3sgZXhhbXBsZSB9fScpLFxuICAgICAgICB7IGV4YW1wbGUgfVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMudG8/LmxhYmVsUHJvcD8ubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sYWJlbFByb3AgPSB0aGlzLnRvLmxhYmVsUHJvcDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50bz8udmFsdWVQcm9wPy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnZhbHVlUHJvcCA9IHRoaXMudG8udmFsdWVQcm9wO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImM4eS1zZWxlY3Qtd3JhcHBlclwiPlxuICA8c2VsZWN0XG4gICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXG4gICAgW2NsYXNzLmlzLWludmFsaWRdPVwic2hvd0Vycm9yXCJcbiAgICBbZm9ybWx5QXR0cmlidXRlc109XCJmaWVsZFwiXG4gICAgW3JlcXVpcmVkXT1cInRvLnJlcXVpcmVkXCJcbiAgPlxuICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCIgc2VsZWN0ZWQgZGlzYWJsZWQ+e3sgcGxhY2Vob2xkZXIkIHwgYXN5bmMgfCB0cmFuc2xhdGUgfX08L29wdGlvbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHQgb2YgdG8ub3B0aW9uc1wiPlxuICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJvcHRbdmFsdWVQcm9wXVwiIFtkaXNhYmxlZF09XCJvcHQuZGlzYWJsZWQgfHwgZmFsc2VcIj5cbiAgICAgICAge3sgb3B0W2xhYmVsUHJvcF0gfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvb3B0aW9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3NlbGVjdD5cbjwvZGl2PlxuICAiXX0=
|
package/esm2020/protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.mjs
CHANGED
|
@@ -53,9 +53,9 @@ export class Lwm2mBootstrapParametersComponent {
|
|
|
53
53
|
key: 'securityMode',
|
|
54
54
|
id: 'bs-securityMode',
|
|
55
55
|
type: 'select',
|
|
56
|
+
defaultValue: securityMode || SecurityMode.NO_SEC,
|
|
56
57
|
templateOptions: {
|
|
57
58
|
label: gettext('Security mode'),
|
|
58
|
-
initValue: securityMode || SecurityMode.NO_SEC,
|
|
59
59
|
options: [
|
|
60
60
|
{ label: SecurityMode.NO_SEC, value: SecurityMode.NO_SEC },
|
|
61
61
|
{ label: SecurityMode.PSK, value: SecurityMode.PSK }
|
|
@@ -139,9 +139,9 @@ export class Lwm2mBootstrapParametersComponent {
|
|
|
139
139
|
key: 'bindingMode',
|
|
140
140
|
id: 'bs-bindingMode',
|
|
141
141
|
type: 'select',
|
|
142
|
+
defaultValue: bindingMode || BindingMode.U,
|
|
142
143
|
templateOptions: {
|
|
143
144
|
label: gettext('Binding mode'),
|
|
144
|
-
initValue: bindingMode || BindingMode.U,
|
|
145
145
|
options: [
|
|
146
146
|
{ label: gettext('UDP'), value: BindingMode.U },
|
|
147
147
|
{ label: gettext('UDP with queue mode'), value: BindingMode.UQ }
|
|
@@ -223,9 +223,9 @@ export class Lwm2mBootstrapParametersComponent {
|
|
|
223
223
|
key: 'generateBootstrapServerConfig',
|
|
224
224
|
id: 'bs-generateBootstrapServerConfig',
|
|
225
225
|
type: 'select',
|
|
226
|
+
defaultValue: generateBootstrapServerConfig || false,
|
|
226
227
|
templateOptions: {
|
|
227
228
|
label: gettext('Generate bootstrap server config'),
|
|
228
|
-
initValue: generateBootstrapServerConfig || false,
|
|
229
229
|
options: [
|
|
230
230
|
{ label: gettext('Yes'), value: true },
|
|
231
231
|
{ label: gettext('No'), value: false }
|
|
@@ -330,4 +330,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
330
330
|
type: Component,
|
|
331
331
|
args: [{ selector: 'c8y-lwm2m-bootstrap-parameters', template: "<form (ngSubmit)=\"save()\">\n <div class=\"card content-fullpage fit-h\">\n <div class=\"card-header separator grid__col--fullspan\">\n <h1 class=\"card-title\">{{ 'LWM2M bootstrap parameters' | translate }}</h1>\n </div>\n <div class=\"inner-scroll\">\n <formly-form\n [form]=\"form\"\n [fields]=\"fields\"\n [model]=\"model\"\n [options]=\"options\"\n ></formly-form>\n </div>\n <div\n [hidden]=\"options.formState.disabled\"\n class=\"card-footer separator grid__col--fullspan sticky-bottom\"\n >\n <button\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n class=\"btn btn-primary\"\n [disabled]=\"form.invalid || !form.dirty\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n" }]
|
|
332
332
|
}], ctorParameters: function () { return [{ type: i1.AlertService }, { type: i1.Permissions }, { type: i2.FormlyFormBuilder }, { type: i3.Lwm2mBootstrapParametersService }, { type: i4.ActivatedRoute }]; } });
|
|
333
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vYm9vdHN0cmFwLXBhcmFtZXRlcnMvbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vYm9vdHN0cmFwLXBhcmFtZXRlcnMvbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQVMsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRixPQUFPLEVBQXFCLGlCQUFpQixFQUFxQixNQUFNLGtCQUFrQixDQUFDO0FBQzNGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZGLE9BQU8sRUFDTCxXQUFXLEVBRVgsWUFBWSxFQUNiLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7QUFNNUMsTUFBTSxPQUFPLGlDQUFpQztJQXNCNUMsWUFDVSxZQUEwQixFQUMxQixXQUF3QixFQUN4QixPQUEwQixFQUMxQiwyQkFBNEQsRUFDNUQsS0FBcUI7UUFKckIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFDMUIsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUFpQztRQUM1RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQXpCL0IsU0FBSSxHQUFjLElBQUksU0FBUyxDQUFDLEVB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QUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxzQkFBc0I7UUFDMUIsSUFBSTtZQUNGLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUNsRSxJQUFnQyxDQUFDO1NBQ3JDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDOzs4SEFuV1UsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsc0VDaEI5QyxzMEJBNEJBOzJGRFphLGlDQUFpQztrQkFKN0MsU0FBUzsrQkFDRSxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBnZXR0ZXh0LCBBbGVydFNlcnZpY2UsIFBlcm1pc3Npb25zLCBBbGVydCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcsIEZvcm1seUZvcm1CdWlsZGVyLCBGb3JtbHlGb3JtT3B0aW9ucyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU2VydmljZSB9IGZyb20gJy4vbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuc2VydmljZSc7XG5pbXBvcnQge1xuICBCaW5kaW5nTW9kZSxcbiAgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzLFxuICBTZWN1cml0eU1vZGVcbn0gZnJvbSAnLi9sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBmaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW107XG4gIGZvcm06IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICBtb2RlbCA9IHt9O1xuICBvcHRpb25zOiBGb3JtbHlGb3JtT3B0aW9ucyA9IHtcbiAgICBmb3JtU3RhdGU6IHtcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIG1haW5Nb2RlbDogdGhpcy5tb2RlbFxuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHdyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydDogQWxlcnQgPSB7XG4gICAgdGV4dDogZ2V0dGV4dCgnWW91IGRvIG5vdCBoYXZlIHdyaXRlIHBlcm1pc3Npb25zLiBUaGlzIGZvcm0gaXMgcmVhZC1vbmx5LicpLFxuICAgIHR5cGU6ICdpbmZvJ1xuICB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgRElTQUJMRURfSElOVF9URVhUOiBzdHJpbmcgPSBnZXR0ZXh0KFxuICAgICdDaGFuZ2UgdGhlIHNlY3VyaXR5IG1vZGUgdG8gZW5hYmxlIHRoaXMgZmllbGQuJ1xuICApO1xuICBwcml2YXRlIHJlYWRvbmx5IHBhdHRlcm46IFJlZ0V4cCA9IC9eKFthLWZBLUYwLTldezJ9KSskLztcbiAgcHJpdmF0ZSBkZXZpY2VJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvbnMsXG4gICAgcHJpdmF0ZSBidWlsZGVyOiBGb3JtbHlGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGx3bTJtQm9vdHN0cmFwUGFyYW1ldGVyc1N2YzogTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxuICApIHtcbiAgICB0aGlzLmRldmljZUlkID0gdGhpcy5yb3V0ZT8uc25hcHNob3Q/LnBhcmVudD8ucGFyYW1zPy5pZDtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IHBhcmFtZXRlcnM6IEx3bTJtQm9vdHN0cmFwUGFyYW1ldGVycyA9IGF3YWl0IHRoaXMuZ2V0Qm9vdHN0cmFwUGFyYW1ldGVycygpO1xuICAgIGNvbnN0IHtcbiAgICAgIGJpbmRpbmdNb2RlLFxuICAgICAgYm9vdHN0cmFwSWQsXG4gICAgICBib290c3RyYXBLZXksXG4gICAgICBib290c3RyYXBTaG9ydFNlcnZlcklkLFxuICAgICAgZGVmYXVsdE1heGltdW1QZXJpb2QsXG4gICAgICBkZWZhdWx0TWluaW11bVBlcmlvZCxcbiAgICAgIHNlY3VyaXR5TW9kZSxcbiAgICAgIGVuZHBvaW50LFxuICAgICAgZ2VuZXJhdGVCb290c3RyYXBTZXJ2ZXJDb25maWcsXG4gICAgICBsd20ybVNob3J0U2VydmVySWQsXG4gICAgICBzZXJ2ZXJVcmksXG4gICAgICByZWdpc3RyYXRpb25MaWZlVGltZSxcbiAgICAgIHNlcnZlclB1YmxpY0tleSxcbiAgICAgIHNlY3VyaXR5SW5zdGFuY2VPZmZzZXQsXG4gICAgICBwdWJsaWNLZXlPcklkLFxuICAgICAgc2VjcmV0S2V5XG4gICAgfTogTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzID0gcGFyYW1ldGVycztcblxuICAgIGNvbnN0IGxlZnRGaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW10gPSBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ2VuZHBvaW50JyxcbiAgICAgICAgaWQ6ICdicy1lbmRwb2ludCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGVuZHBvaW50LFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRW5kcG9pbnQnKSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJ3VybjppbWVpOjAxMjM0NTY3ODkwMTIzNCcsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnc2VjdXJpdHlNb2RlJyxcbiAgICAgICAgaWQ6ICdicy1zZWN1cml0eU1vZGUnLFxuICAgICAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ1NlY3VyaXR5IG1vZGUnKSxcbiAgICAgICAgICBpbml0VmFsdWU6IHNlY3VyaXR5TW9kZSB8fCBTZWN1cml0eU1vZGUuTk9fU0VDLFxuICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHsgbGFiZWw6IFNlY3VyaXR5TW9kZS5OT19TRUMsIHZhbHVlOiBTZWN1cml0eU1vZGUuTk9fU0VDIH0sXG4gICAgICAgICAgICB7IGxhYmVsOiBTZWN1cml0eU1vZGUuUFNLLCB2YWx1ZTogU2VjdXJpdHlNb2RlLlBTSyB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdib290c3RyYXBJZCcsXG4gICAgICAgIGlkOiAnYnMtYm9vdHN0cmFwSWQnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0Jvb3RzdHJhcCBQU0sgSUQnKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5ESVNBQkxFRF9ISU5UX1RFWFQsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgaG9va3M6IHtcbiAgICAgICAgICBvbkluaXQ6IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHtcbiAgICAgICAgICAgIGZpZWxkLmZvcm1Db250cm9sLnBhdGNoVmFsdWUoYm9vdHN0cmFwSWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXhwcmVzc2lvblByb3BlcnRpZXM6IHtcbiAgICAgICAgICAndGVtcGxhdGVPcHRpb25zLmRpc2FibGVkJzogKG1vZGVsOiBhbnksIGZvcm1TdGF0ZTogYW55LCBmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+XG4gICAgICAgICAgICB0aGlzLmRpc2FibGVQU0tGaWVsZChmb3JtU3RhdGUsIGZpZWxkKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdib290c3RyYXBLZXknLFxuICAgICAgICBpZDogJ2JzLWJvb3RzdHJhcEtleScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnQm9vdHN0cmFwIHByZS1zaGFyZWQga2V5JyksXG4gICAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuRElTQUJMRURfSElOVF9URVhULFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMDEyMzQ1Njc4OWFiY2RlZicsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgcGF0dGVybjogdGhpcy5wYXR0ZXJuXG4gICAgICAgIH0sXG4gICAgICAgIGhvb2tzOiB7XG4gICAgICAgICAgb25Jbml0OiAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICBmaWVsZC5mb3JtQ29udHJvbC5wYXRjaFZhbHVlKGJvb3RzdHJhcEtleSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBleHByZXNzaW9uUHJvcGVydGllczoge1xuICAgICAgICAgICd0ZW1wbGF0ZU9wdGlvbnMuZGlzYWJsZWQnOiAobW9kZWw6IGFueSwgZm9ybVN0YXRlOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT5cbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZVBTS0ZpZWxkKGZvcm1TdGF0ZSwgZmllbGQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3NlY3VyaXR5SW5zdGFuY2VPZmZzZXQnLFxuICAgICAgICBpZDogJ2JzLXNlY3VyaXR5SW5zdGFuY2VPZmZzZXQnLFxuICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBzZWN1cml0eUluc3RhbmNlT2Zmc2V0LFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnU2VjdXJpdHkgaW5zdGFuY2Ugb2Zmc2V0JyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICcwJyxcbiAgICAgICAgICBtaW46IDBcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnYm9vdHN0cmFwU2hvcnRTZXJ2ZXJJZCcsXG4gICAgICAgIGlkOiAnYnMtYm9vdHN0cmFwU2hvcnRTZXJ2ZXJJZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGJvb3RzdHJhcFNob3J0U2VydmVySWQsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdMV00yTSBib290c3RyYXAgc2hvcnQgc2VydmVyIElEJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICcwJyxcbiAgICAgICAgICBtaW46IDBcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAncmVnaXN0cmF0aW9uTGlmZVRpbWUnLFxuICAgICAgICBpZDogJ2JzLXJlZ2lzdHJhdGlvbkxpZmVUaW1lJyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogcmVnaXN0cmF0aW9uTGlmZVRpbWUsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdSZWdpc3RyYXRpb24gbGlmZXRpbWUnKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnaW4gc2Vjb25kcycpLFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnNjAwJyxcbiAgICAgICAgICBtaW46IDBcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnYmluZGluZ01vZGUnLFxuICAgICAgICBpZDogJ2JzLWJpbmRpbmdNb2RlJyxcbiAgICAgICAgdHlwZTogJ3NlbGVjdCcsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdCaW5kaW5nIG1vZGUnKSxcbiAgICAgICAgICBpbml0VmFsdWU6IGJpbmRpbmdNb2RlIHx8IEJpbmRpbmdNb2RlLlUsXG4gICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgeyBsYWJlbDogZ2V0dGV4dCgnVURQJyksIHZhbHVlOiBCaW5kaW5nTW9kZS5VIH0sXG4gICAgICAgICAgICB7IGxhYmVsOiBnZXR0ZXh0KCdVRFAgd2l0aCBxdWV1ZSBtb2RlJyksIHZhbHVlOiBCaW5kaW5nTW9kZS5VUSB9XG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgXTtcblxuICAgIGNvbnN0IHJpZ2h0RmllbGRzOiBGb3JtbHlGaWVsZENvbmZpZ1tdID0gW1xuICAgICAge1xuICAgICAgICBrZXk6ICdzZXJ2ZXJQdWJsaWNLZXknLFxuICAgICAgICBpZDogJ2JzLXNlcnZlclB1YmxpY0tleScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IHNlcnZlclB1YmxpY0tleSxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ1NlcnZlciBwdWJsaWMga2V5JyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICdBQUFBQjNOemFDMXljMkXigKYnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3NlcnZlclVyaScsXG4gICAgICAgIGlkOiAnYnMtc2VydmVyVXJpJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogc2VydmVyVXJpLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnTFdNMk0gc2VydmVyIFVSSScpLFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnY29hcHM6Ly88TFdNMk0tc2VydmVyLWRvbWFpbj46PGNvYXBzLXBvcnQ+J1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdwdWJsaWNLZXlPcklkJyxcbiAgICAgICAgaWQ6ICdicy1wdWJsaWNLZXlPcklkJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdMV00yTSBQU0sgSUQnKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5ESVNBQkxFRF9ISU5UX1RFWFQsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgaG9va3M6IHtcbiAgICAgICAgICBvbkluaXQ6IChmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+IHtcbiAgICAgICAgICAgIGZpZWxkLmZvcm1Db250cm9sLnBhdGNoVmFsdWUocHVibGljS2V5T3JJZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBleHByZXNzaW9uUHJvcGVydGllczoge1xuICAgICAgICAgICd0ZW1wbGF0ZU9wdGlvbnMuZGlzYWJsZWQnOiAobW9kZWw6IGFueSwgZm9ybVN0YXRlOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT5cbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZVBTS0ZpZWxkKGZvcm1TdGF0ZSwgZmllbGQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3NlY3JldEtleScsXG4gICAgICAgIGlkOiAnYnMtc2VjcmV0S2V5JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdMV00yTSBwcmUtc2hhcmVkIGtleScpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLkRJU0FCTEVEX0hJTlRfVEVYVCxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJzAxMjM0NTY3ODlhYmNkZWYnLFxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgIHBhdHRlcm46IHRoaXMucGF0dGVyblxuICAgICAgICB9LFxuICAgICAgICBob29rczoge1xuICAgICAgICAgIG9uSW5pdDogKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4ge1xuICAgICAgICAgICAgZmllbGQuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZShzZWNyZXRLZXkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXhwcmVzc2lvblByb3BlcnRpZXM6IHtcbiAgICAgICAgICAndGVtcGxhdGVPcHRpb25zLmRpc2FibGVkJzogKG1vZGVsOiBhbnksIGZvcm1TdGF0ZTogYW55LCBmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+XG4gICAgICAgICAgICB0aGlzLmRpc2FibGVQU0tGaWVsZChmb3JtU3RhdGUsIGZpZWxkKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdsd20ybVNob3J0U2VydmVySWQnLFxuICAgICAgICBpZDogJ2JzLWx3bTJtU2hvcnRTZXJ2ZXJJZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGx3bTJtU2hvcnRTZXJ2ZXJJZCxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0xXTTJNIHNob3J0IHNlcnZlciBJRCcpLFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2dlbmVyYXRlQm9vdHN0cmFwU2VydmVyQ29uZmlnJyxcbiAgICAgICAgaWQ6ICdicy1nZW5lcmF0ZUJvb3RzdHJhcFNlcnZlckNvbmZpZycsXG4gICAgICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnR2VuZXJhdGUgYm9vdHN0cmFwIHNlcnZlciBjb25maWcnKSxcbiAgICAgICAgICBpbml0VmFsdWU6IGdlbmVyYXRlQm9vdHN0cmFwU2VydmVyQ29uZmlnIHx8IGZhbHNlLFxuICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHsgbGFiZWw6IGdldHRleHQoJ1llcycpLCB2YWx1ZTogdHJ1ZSB9LFxuICAgICAgICAgICAgeyBsYWJlbDogZ2V0dGV4dCgnTm8nKSwgdmFsdWU6IGZhbHNlIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2RlZmF1bHRNaW5pbXVtUGVyaW9kJyxcbiAgICAgICAgaWQ6ICdicy1kZWZhdWx0TWluaW11bVBlcmlvZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRNaW5pbXVtUGVyaW9kLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRGVmYXVsdCBtaW5pbXVtIHBlcmlvZCcpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdpbiBzZWNvbmRzJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICcxMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2RlZmF1bHRNYXhpbXVtUGVyaW9kJyxcbiAgICAgICAgaWQ6ICdicy1kZWZhdWx0TWF4aW11bVBlcmlvZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRNYXhpbXVtUGVyaW9kLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRGVmYXVsdCBtYXhpbXVtIHBlcmlvZCcpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdpbiBzZWNvbmRzJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICc2MCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgdGhpcy5maWVsZHMgPSBbXG4gICAgICB7XG4gICAgICAgIGZpZWxkR3JvdXBDbGFzc05hbWU6ICdjYXJkLWJsb2NrIGQtZ3JpZCBncmlkX19jb2wtLTYtNicsXG4gICAgICAgIGZpZWxkR3JvdXA6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZEdyb3VwQ2xhc3NOYW1lOiAnZm9ybS1ncm91cCBwLTI0IHAtdC04IHAtYi04IG0tYi0wJyxcbiAgICAgICAgICAgIGZpZWxkR3JvdXA6IGxlZnRGaWVsZHNcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkR3JvdXBDbGFzc05hbWU6ICdmb3JtLWdyb3VwIHAtMjQgcC10LTggcC1iLTggbS1iLTAnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogcmlnaHRGaWVsZHNcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgdGhpcy5idWlsZGVyLmJ1aWxkRm9ybSh0aGlzLmZvcm0sIHRoaXMuZmllbGRzLCB0aGlzLm1vZGVsLCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgY29uc3QgdXNlckhhc1dyaXRlUGVybWlzc2lvbiA9IHRoaXMucGVybWlzc2lvbnMuaGFzUm9sZSgnUk9MRV9JTlZFTlRPUllfQURNSU4nKTtcblxuICAgIGlmIChPYmplY3Qua2V5cyhwYXJhbWV0ZXJzKS5sZW5ndGggPT09IDAgfHwgIXVzZXJIYXNXcml0ZVBlcm1pc3Npb24pIHtcbiAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKCk7XG5cbiAgICAgIHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICghdXNlckhhc1dyaXRlUGVybWlzc2lvbikge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuaW5mbyh0aGlzLndyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydC50ZXh0IGFzIHN0cmluZyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gYWxlcnRTZXJ2aWNlIGNoZWNrcyBpZiBnaXZlbiBhbGVydCBleGlzdHMuXG4gICAgLy8gc2F2ZSB0byByZW1vdmUgaXQgd2l0aG91dCBhZGRpdGlvbmFsIGNoZWNrc1xuICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnJlbW92ZSh0aGlzLndyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydCk7XG4gIH1cblxuICBkaXNhYmxlUFNLRmllbGQoXG4gICAgZm9ybVN0YXRlOiB7IGRpc2FibGVkOiBib29sZWFuOyBtYWluTW9kZWw6IEx3bTJtQm9vdHN0cmFwUGFyYW1ldGVycyB9LFxuICAgIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ1xuICApIHtcbiAgICBpZiAoZm9ybVN0YXRlLmRpc2FibGVkKSB7XG4gICAgICBkZWxldGUgZmllbGQudGVtcGxhdGVPcHRpb25zLmRlc2NyaXB0aW9uO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICFmb3JtU3RhdGUubWFpbk1vZGVsLnNlY3VyaXR5TW9kZSB8fFxuICAgICAgZm9ybVN0YXRlLm1haW5Nb2RlbC5zZWN1cml0eU1vZGUgPT09IFNlY3VyaXR5TW9kZS5OT19TRUNcbiAgICApIHtcbiAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucy5kZXNjcmlwdGlvbiA9IHRoaXMuRElTQUJMRURfSElOVF9URVhUO1xuICAgICAgZmllbGQuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZShudWxsKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBkZWxldGUgZmllbGQudGVtcGxhdGVPcHRpb25zLmRlc2NyaXB0aW9uO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGFzeW5jIHNhdmUoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU3ZjLnVwZGF0ZSh7IC4uLnRoaXMubW9kZWwsIC4uLnsgaWQ6IHRoaXMuZGV2aWNlSWQgfSB9KTtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoZ2V0dGV4dCgnQm9vdHN0cmFwIHBhcmFtZXRlcnMgdXBkYXRlZCcpKTtcbiAgICAgIC8vIGRpc2FibGVzIHNhdmUgYnV0dG9uXG4gICAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgICAgIHRoaXMuZm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoeyAuLi5lcnJvciB9KTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRCb290c3RyYXBQYXJhbWV0ZXJzKCk6IFByb21pc2U8THdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5sd20ybUJvb3RzdHJhcFBhcmFtZXRlcnNTdmMuZGV0YWlsKHRoaXMuZGV2aWNlSWQpKVxuICAgICAgICAuZGF0YSBhcyBMd20ybUJvb3RzdHJhcFBhcmFtZXRlcnM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoeyAuLi5lcnJvciB9KTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cbn1cbiIsIjxmb3JtIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cbiAgPGRpdiBjbGFzcz1cImNhcmQgY29udGVudC1mdWxscGFnZSBmaXQtaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBzZXBhcmF0b3IgZ3JpZF9fY29sLS1mdWxsc3BhblwiPlxuICAgICAgPGgxIGNsYXNzPVwiY2FyZC10aXRsZVwiPnt7ICdMV00yTSBib290c3RyYXAgcGFyYW1ldGVycycgfCB0cmFuc2xhdGUgfX08L2gxPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpbm5lci1zY3JvbGxcIj5cbiAgICAgIDxmb3JtbHktZm9ybVxuICAgICAgICBbZm9ybV09XCJmb3JtXCJcbiAgICAgICAgW2ZpZWxkc109XCJmaWVsZHNcIlxuICAgICAgICBbbW9kZWxdPVwibW9kZWxcIlxuICAgICAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAgID48L2Zvcm1seS1mb3JtPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtoaWRkZW5dPVwib3B0aW9ucy5mb3JtU3RhdGUuZGlzYWJsZWRcIlxuICAgICAgY2xhc3M9XCJjYXJkLWZvb3RlciBzZXBhcmF0b3IgZ3JpZF9fY29sLS1mdWxsc3BhbiBzdGlja3ktYm90dG9tXCJcbiAgICA+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHRpdGxlPVwie3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZCB8fCAhZm9ybS5kaXJ0eVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdTYXZlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9mb3JtPlxuIl19
|
|
333
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vYm9vdHN0cmFwLXBhcmFtZXRlcnMvbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vYm9vdHN0cmFwLXBhcmFtZXRlcnMvbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQVMsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRixPQUFPLEVBQXFCLGlCQUFpQixFQUFxQixNQUFNLGtCQUFrQixDQUFDO0FBQzNGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZGLE9BQU8sRUFDTCxXQUFXLEVBRVgsWUFBWSxFQUNiLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7QUFNNUMsTUFBTSxPQUFPLGlDQUFpQztJQXNCNUMsWUFDVSxZQUEwQixFQUMxQixXQUF3QixFQUN4QixPQUEwQixFQUMxQiwyQkFBNEQsRUFDNUQsS0FBcUI7UUFKckIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFDMUIsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUFpQztRQUM1RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQXpCL0IsU0FBSSxHQUFjLElBQUksU0FBUyxDQUFDLEVB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QUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxzQkFBc0I7UUFDMUIsSUFBSTtZQUNGLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUNsRSxJQUFnQyxDQUFDO1NBQ3JDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDOzs4SEFuV1UsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsc0VDaEI5QyxzMEJBNEJBOzJGRFphLGlDQUFpQztrQkFKN0MsU0FBUzsrQkFDRSxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBnZXR0ZXh0LCBBbGVydFNlcnZpY2UsIFBlcm1pc3Npb25zLCBBbGVydCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcsIEZvcm1seUZvcm1CdWlsZGVyLCBGb3JtbHlGb3JtT3B0aW9ucyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU2VydmljZSB9IGZyb20gJy4vbHdtMm0tYm9vdHN0cmFwLXBhcmFtZXRlcnMuc2VydmljZSc7XG5pbXBvcnQge1xuICBCaW5kaW5nTW9kZSxcbiAgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzLFxuICBTZWN1cml0eU1vZGVcbn0gZnJvbSAnLi9sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9sd20ybS1ib290c3RyYXAtcGFyYW1ldGVycy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBmaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW107XG4gIGZvcm06IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICBtb2RlbCA9IHt9O1xuICBvcHRpb25zOiBGb3JtbHlGb3JtT3B0aW9ucyA9IHtcbiAgICBmb3JtU3RhdGU6IHtcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIG1haW5Nb2RlbDogdGhpcy5tb2RlbFxuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHdyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydDogQWxlcnQgPSB7XG4gICAgdGV4dDogZ2V0dGV4dCgnWW91IGRvIG5vdCBoYXZlIHdyaXRlIHBlcm1pc3Npb25zLiBUaGlzIGZvcm0gaXMgcmVhZC1vbmx5LicpLFxuICAgIHR5cGU6ICdpbmZvJ1xuICB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgRElTQUJMRURfSElOVF9URVhUOiBzdHJpbmcgPSBnZXR0ZXh0KFxuICAgICdDaGFuZ2UgdGhlIHNlY3VyaXR5IG1vZGUgdG8gZW5hYmxlIHRoaXMgZmllbGQuJ1xuICApO1xuICBwcml2YXRlIHJlYWRvbmx5IHBhdHRlcm46IFJlZ0V4cCA9IC9eKFthLWZBLUYwLTldezJ9KSskLztcbiAgcHJpdmF0ZSBkZXZpY2VJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvbnMsXG4gICAgcHJpdmF0ZSBidWlsZGVyOiBGb3JtbHlGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGx3bTJtQm9vdHN0cmFwUGFyYW1ldGVyc1N2YzogTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxuICApIHtcbiAgICB0aGlzLmRldmljZUlkID0gdGhpcy5yb3V0ZT8uc25hcHNob3Q/LnBhcmVudD8ucGFyYW1zPy5pZDtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IHBhcmFtZXRlcnM6IEx3bTJtQm9vdHN0cmFwUGFyYW1ldGVycyA9IGF3YWl0IHRoaXMuZ2V0Qm9vdHN0cmFwUGFyYW1ldGVycygpO1xuICAgIGNvbnN0IHtcbiAgICAgIGJpbmRpbmdNb2RlLFxuICAgICAgYm9vdHN0cmFwSWQsXG4gICAgICBib290c3RyYXBLZXksXG4gICAgICBib290c3RyYXBTaG9ydFNlcnZlcklkLFxuICAgICAgZGVmYXVsdE1heGltdW1QZXJpb2QsXG4gICAgICBkZWZhdWx0TWluaW11bVBlcmlvZCxcbiAgICAgIHNlY3VyaXR5TW9kZSxcbiAgICAgIGVuZHBvaW50LFxuICAgICAgZ2VuZXJhdGVCb290c3RyYXBTZXJ2ZXJDb25maWcsXG4gICAgICBsd20ybVNob3J0U2VydmVySWQsXG4gICAgICBzZXJ2ZXJVcmksXG4gICAgICByZWdpc3RyYXRpb25MaWZlVGltZSxcbiAgICAgIHNlcnZlclB1YmxpY0tleSxcbiAgICAgIHNlY3VyaXR5SW5zdGFuY2VPZmZzZXQsXG4gICAgICBwdWJsaWNLZXlPcklkLFxuICAgICAgc2VjcmV0S2V5XG4gICAgfTogTHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzID0gcGFyYW1ldGVycztcblxuICAgIGNvbnN0IGxlZnRGaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW10gPSBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ2VuZHBvaW50JyxcbiAgICAgICAgaWQ6ICdicy1lbmRwb2ludCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGVuZHBvaW50LFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRW5kcG9pbnQnKSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJ3VybjppbWVpOjAxMjM0NTY3ODkwMTIzNCcsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnc2VjdXJpdHlNb2RlJyxcbiAgICAgICAgaWQ6ICdicy1zZWN1cml0eU1vZGUnLFxuICAgICAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBzZWN1cml0eU1vZGUgfHwgU2VjdXJpdHlNb2RlLk5PX1NFQyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ1NlY3VyaXR5IG1vZGUnKSxcbiAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7IGxhYmVsOiBTZWN1cml0eU1vZGUuTk9fU0VDLCB2YWx1ZTogU2VjdXJpdHlNb2RlLk5PX1NFQyB9LFxuICAgICAgICAgICAgeyBsYWJlbDogU2VjdXJpdHlNb2RlLlBTSywgdmFsdWU6IFNlY3VyaXR5TW9kZS5QU0sgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnYm9vdHN0cmFwSWQnLFxuICAgICAgICBpZDogJ2JzLWJvb3RzdHJhcElkJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdCb290c3RyYXAgUFNLIElEJyksXG4gICAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuRElTQUJMRURfSElOVF9URVhULFxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIGhvb2tzOiB7XG4gICAgICAgICAgb25Jbml0OiAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICBmaWVsZC5mb3JtQ29udHJvbC5wYXRjaFZhbHVlKGJvb3RzdHJhcElkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGV4cHJlc3Npb25Qcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCc6IChtb2RlbDogYW55LCBmb3JtU3RhdGU6IGFueSwgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PlxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlUFNLRmllbGQoZm9ybVN0YXRlLCBmaWVsZClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnYm9vdHN0cmFwS2V5JyxcbiAgICAgICAgaWQ6ICdicy1ib290c3RyYXBLZXknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0Jvb3RzdHJhcCBwcmUtc2hhcmVkIGtleScpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLkRJU0FCTEVEX0hJTlRfVEVYVCxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJzAxMjM0NTY3ODlhYmNkZWYnLFxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgIHBhdHRlcm46IHRoaXMucGF0dGVyblxuICAgICAgICB9LFxuICAgICAgICBob29rczoge1xuICAgICAgICAgIG9uSW5pdDogKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4ge1xuICAgICAgICAgICAgZmllbGQuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZShib290c3RyYXBLZXkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXhwcmVzc2lvblByb3BlcnRpZXM6IHtcbiAgICAgICAgICAndGVtcGxhdGVPcHRpb25zLmRpc2FibGVkJzogKG1vZGVsOiBhbnksIGZvcm1TdGF0ZTogYW55LCBmaWVsZDogRm9ybWx5RmllbGRDb25maWcpID0+XG4gICAgICAgICAgICB0aGlzLmRpc2FibGVQU0tGaWVsZChmb3JtU3RhdGUsIGZpZWxkKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdzZWN1cml0eUluc3RhbmNlT2Zmc2V0JyxcbiAgICAgICAgaWQ6ICdicy1zZWN1cml0eUluc3RhbmNlT2Zmc2V0JyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogc2VjdXJpdHlJbnN0YW5jZU9mZnNldCxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ1NlY3VyaXR5IGluc3RhbmNlIG9mZnNldCcpLFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2Jvb3RzdHJhcFNob3J0U2VydmVySWQnLFxuICAgICAgICBpZDogJ2JzLWJvb3RzdHJhcFNob3J0U2VydmVySWQnLFxuICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBib290c3RyYXBTaG9ydFNlcnZlcklkLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnTFdNMk0gYm9vdHN0cmFwIHNob3J0IHNlcnZlciBJRCcpLFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3JlZ2lzdHJhdGlvbkxpZmVUaW1lJyxcbiAgICAgICAgaWQ6ICdicy1yZWdpc3RyYXRpb25MaWZlVGltZScsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IHJlZ2lzdHJhdGlvbkxpZmVUaW1lLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnUmVnaXN0cmF0aW9uIGxpZmV0aW1lJyksXG4gICAgICAgICAgZGVzY3JpcHRpb246IGdldHRleHQoJ2luIHNlY29uZHMnKSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJzYwMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2JpbmRpbmdNb2RlJyxcbiAgICAgICAgaWQ6ICdicy1iaW5kaW5nTW9kZScsXG4gICAgICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGJpbmRpbmdNb2RlIHx8IEJpbmRpbmdNb2RlLlUsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdCaW5kaW5nIG1vZGUnKSxcbiAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICB7IGxhYmVsOiBnZXR0ZXh0KCdVRFAnKSwgdmFsdWU6IEJpbmRpbmdNb2RlLlUgfSxcbiAgICAgICAgICAgIHsgbGFiZWw6IGdldHRleHQoJ1VEUCB3aXRoIHF1ZXVlIG1vZGUnKSwgdmFsdWU6IEJpbmRpbmdNb2RlLlVRIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgY29uc3QgcmlnaHRGaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW10gPSBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ3NlcnZlclB1YmxpY0tleScsXG4gICAgICAgIGlkOiAnYnMtc2VydmVyUHVibGljS2V5JyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogc2VydmVyUHVibGljS2V5LFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnU2VydmVyIHB1YmxpYyBrZXknKSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogJ0FBQUFCM056YUMxeWMyReKApidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnc2VydmVyVXJpJyxcbiAgICAgICAgaWQ6ICdicy1zZXJ2ZXJVcmknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBzZXJ2ZXJVcmksXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdMV00yTSBzZXJ2ZXIgVVJJJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICdjb2FwczovLzxMV00yTS1zZXJ2ZXItZG9tYWluPjo8Y29hcHMtcG9ydD4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3B1YmxpY0tleU9ySWQnLFxuICAgICAgICBpZDogJ2JzLXB1YmxpY0tleU9ySWQnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0xXTTJNIFBTSyBJRCcpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLkRJU0FCTEVEX0hJTlRfVEVYVCxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBob29rczoge1xuICAgICAgICAgIG9uSW5pdDogKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4ge1xuICAgICAgICAgICAgZmllbGQuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZShwdWJsaWNLZXlPcklkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGV4cHJlc3Npb25Qcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgJ3RlbXBsYXRlT3B0aW9ucy5kaXNhYmxlZCc6IChtb2RlbDogYW55LCBmb3JtU3RhdGU6IGFueSwgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PlxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlUFNLRmllbGQoZm9ybVN0YXRlLCBmaWVsZClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnc2VjcmV0S2V5JyxcbiAgICAgICAgaWQ6ICdicy1zZWNyZXRLZXknLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgdGVtcGxhdGVPcHRpb25zOiB7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0xXTTJNIHByZS1zaGFyZWQga2V5JyksXG4gICAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuRElTQUJMRURfSElOVF9URVhULFxuICAgICAgICAgIHBsYWNlaG9sZGVyOiAnMDEyMzQ1Njc4OWFiY2RlZicsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgcGF0dGVybjogdGhpcy5wYXR0ZXJuXG4gICAgICAgIH0sXG4gICAgICAgIGhvb2tzOiB7XG4gICAgICAgICAgb25Jbml0OiAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICBmaWVsZC5mb3JtQ29udHJvbC5wYXRjaFZhbHVlKHNlY3JldEtleSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBleHByZXNzaW9uUHJvcGVydGllczoge1xuICAgICAgICAgICd0ZW1wbGF0ZU9wdGlvbnMuZGlzYWJsZWQnOiAobW9kZWw6IGFueSwgZm9ybVN0YXRlOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT5cbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZVBTS0ZpZWxkKGZvcm1TdGF0ZSwgZmllbGQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2x3bTJtU2hvcnRTZXJ2ZXJJZCcsXG4gICAgICAgIGlkOiAnYnMtbHdtMm1TaG9ydFNlcnZlcklkJyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogbHdtMm1TaG9ydFNlcnZlcklkLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnTFdNMk0gc2hvcnQgc2VydmVyIElEJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICcwJyxcbiAgICAgICAgICBtaW46IDBcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnZ2VuZXJhdGVCb290c3RyYXBTZXJ2ZXJDb25maWcnLFxuICAgICAgICBpZDogJ2JzLWdlbmVyYXRlQm9vdHN0cmFwU2VydmVyQ29uZmlnJyxcbiAgICAgICAgdHlwZTogJ3NlbGVjdCcsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZ2VuZXJhdGVCb290c3RyYXBTZXJ2ZXJDb25maWcgfHwgZmFsc2UsXG4gICAgICAgIHRlbXBsYXRlT3B0aW9uczoge1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdHZW5lcmF0ZSBib290c3RyYXAgc2VydmVyIGNvbmZpZycpLFxuICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgIHsgbGFiZWw6IGdldHRleHQoJ1llcycpLCB2YWx1ZTogdHJ1ZSB9LFxuICAgICAgICAgICAgeyBsYWJlbDogZ2V0dGV4dCgnTm8nKSwgdmFsdWU6IGZhbHNlIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2RlZmF1bHRNaW5pbXVtUGVyaW9kJyxcbiAgICAgICAgaWQ6ICdicy1kZWZhdWx0TWluaW11bVBlcmlvZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRNaW5pbXVtUGVyaW9kLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRGVmYXVsdCBtaW5pbXVtIHBlcmlvZCcpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdpbiBzZWNvbmRzJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICcxMCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2RlZmF1bHRNYXhpbXVtUGVyaW9kJyxcbiAgICAgICAgaWQ6ICdicy1kZWZhdWx0TWF4aW11bVBlcmlvZCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRNYXhpbXVtUGVyaW9kLFxuICAgICAgICB0ZW1wbGF0ZU9wdGlvbnM6IHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRGVmYXVsdCBtYXhpbXVtIHBlcmlvZCcpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdpbiBzZWNvbmRzJyksXG4gICAgICAgICAgcGxhY2Vob2xkZXI6ICc2MCcsXG4gICAgICAgICAgbWluOiAwXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgdGhpcy5maWVsZHMgPSBbXG4gICAgICB7XG4gICAgICAgIGZpZWxkR3JvdXBDbGFzc05hbWU6ICdjYXJkLWJsb2NrIGQtZ3JpZCBncmlkX19jb2wtLTYtNicsXG4gICAgICAgIGZpZWxkR3JvdXA6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmaWVsZEdyb3VwQ2xhc3NOYW1lOiAnZm9ybS1ncm91cCBwLTI0IHAtdC04IHAtYi04IG0tYi0wJyxcbiAgICAgICAgICAgIGZpZWxkR3JvdXA6IGxlZnRGaWVsZHNcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGZpZWxkR3JvdXBDbGFzc05hbWU6ICdmb3JtLWdyb3VwIHAtMjQgcC10LTggcC1iLTggbS1iLTAnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogcmlnaHRGaWVsZHNcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgdGhpcy5idWlsZGVyLmJ1aWxkRm9ybSh0aGlzLmZvcm0sIHRoaXMuZmllbGRzLCB0aGlzLm1vZGVsLCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgY29uc3QgdXNlckhhc1dyaXRlUGVybWlzc2lvbiA9IHRoaXMucGVybWlzc2lvbnMuaGFzUm9sZSgnUk9MRV9JTlZFTlRPUllfQURNSU4nKTtcblxuICAgIGlmIChPYmplY3Qua2V5cyhwYXJhbWV0ZXJzKS5sZW5ndGggPT09IDAgfHwgIXVzZXJIYXNXcml0ZVBlcm1pc3Npb24pIHtcbiAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKCk7XG5cbiAgICAgIHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICghdXNlckhhc1dyaXRlUGVybWlzc2lvbikge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuaW5mbyh0aGlzLndyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydC50ZXh0IGFzIHN0cmluZyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gYWxlcnRTZXJ2aWNlIGNoZWNrcyBpZiBnaXZlbiBhbGVydCBleGlzdHMuXG4gICAgLy8gc2F2ZSB0byByZW1vdmUgaXQgd2l0aG91dCBhZGRpdGlvbmFsIGNoZWNrc1xuICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnJlbW92ZSh0aGlzLndyaXRlUGVybWlzc2lvbk1pc3NpbmdBbGVydCk7XG4gIH1cblxuICBkaXNhYmxlUFNLRmllbGQoXG4gICAgZm9ybVN0YXRlOiB7IGRpc2FibGVkOiBib29sZWFuOyBtYWluTW9kZWw6IEx3bTJtQm9vdHN0cmFwUGFyYW1ldGVycyB9LFxuICAgIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZ1xuICApIHtcbiAgICBpZiAoZm9ybVN0YXRlLmRpc2FibGVkKSB7XG4gICAgICBkZWxldGUgZmllbGQudGVtcGxhdGVPcHRpb25zLmRlc2NyaXB0aW9uO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICFmb3JtU3RhdGUubWFpbk1vZGVsLnNlY3VyaXR5TW9kZSB8fFxuICAgICAgZm9ybVN0YXRlLm1haW5Nb2RlbC5zZWN1cml0eU1vZGUgPT09IFNlY3VyaXR5TW9kZS5OT19TRUNcbiAgICApIHtcbiAgICAgIGZpZWxkLnRlbXBsYXRlT3B0aW9ucy5kZXNjcmlwdGlvbiA9IHRoaXMuRElTQUJMRURfSElOVF9URVhUO1xuICAgICAgZmllbGQuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZShudWxsKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBkZWxldGUgZmllbGQudGVtcGxhdGVPcHRpb25zLmRlc2NyaXB0aW9uO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGFzeW5jIHNhdmUoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubHdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzU3ZjLnVwZGF0ZSh7IC4uLnRoaXMubW9kZWwsIC4uLnsgaWQ6IHRoaXMuZGV2aWNlSWQgfSB9KTtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoZ2V0dGV4dCgnQm9vdHN0cmFwIHBhcmFtZXRlcnMgdXBkYXRlZCcpKTtcbiAgICAgIC8vIGRpc2FibGVzIHNhdmUgYnV0dG9uXG4gICAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgICAgIHRoaXMuZm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoeyAuLi5lcnJvciB9KTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRCb290c3RyYXBQYXJhbWV0ZXJzKCk6IFByb21pc2U8THdtMm1Cb290c3RyYXBQYXJhbWV0ZXJzPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5sd20ybUJvb3RzdHJhcFBhcmFtZXRlcnNTdmMuZGV0YWlsKHRoaXMuZGV2aWNlSWQpKVxuICAgICAgICAuZGF0YSBhcyBMd20ybUJvb3RzdHJhcFBhcmFtZXRlcnM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoeyAuLi5lcnJvciB9KTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cbn1cbiIsIjxmb3JtIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cbiAgPGRpdiBjbGFzcz1cImNhcmQgY29udGVudC1mdWxscGFnZSBmaXQtaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBzZXBhcmF0b3IgZ3JpZF9fY29sLS1mdWxsc3BhblwiPlxuICAgICAgPGgxIGNsYXNzPVwiY2FyZC10aXRsZVwiPnt7ICdMV00yTSBib290c3RyYXAgcGFyYW1ldGVycycgfCB0cmFuc2xhdGUgfX08L2gxPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpbm5lci1zY3JvbGxcIj5cbiAgICAgIDxmb3JtbHktZm9ybVxuICAgICAgICBbZm9ybV09XCJmb3JtXCJcbiAgICAgICAgW2ZpZWxkc109XCJmaWVsZHNcIlxuICAgICAgICBbbW9kZWxdPVwibW9kZWxcIlxuICAgICAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAgID48L2Zvcm1seS1mb3JtPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtoaWRkZW5dPVwib3B0aW9ucy5mb3JtU3RhdGUuZGlzYWJsZWRcIlxuICAgICAgY2xhc3M9XCJjYXJkLWZvb3RlciBzZXBhcmF0b3IgZ3JpZF9fY29sLS1mdWxsc3BhbiBzdGlja3ktYm90dG9tXCJcbiAgICA+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHRpdGxlPVwie3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZCB8fCAhZm9ybS5kaXJ0eVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdTYXZlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9mb3JtPlxuIl19
|
|
@@ -112,9 +112,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
112
112
|
key: 'securityMode',
|
|
113
113
|
id: 'bs-securityMode',
|
|
114
114
|
type: 'select',
|
|
115
|
+
defaultValue: securityMode || SecurityMode.NO_SEC,
|
|
115
116
|
templateOptions: {
|
|
116
117
|
label: gettext('Security mode'),
|
|
117
|
-
initValue: securityMode || SecurityMode.NO_SEC,
|
|
118
118
|
options: [
|
|
119
119
|
{ label: SecurityMode.NO_SEC, value: SecurityMode.NO_SEC },
|
|
120
120
|
{ label: SecurityMode.PSK, value: SecurityMode.PSK }
|
|
@@ -198,9 +198,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
198
198
|
key: 'bindingMode',
|
|
199
199
|
id: 'bs-bindingMode',
|
|
200
200
|
type: 'select',
|
|
201
|
+
defaultValue: bindingMode || BindingMode.U,
|
|
201
202
|
templateOptions: {
|
|
202
203
|
label: gettext('Binding mode'),
|
|
203
|
-
initValue: bindingMode || BindingMode.U,
|
|
204
204
|
options: [
|
|
205
205
|
{ label: gettext('UDP'), value: BindingMode.U },
|
|
206
206
|
{ label: gettext('UDP with queue mode'), value: BindingMode.UQ }
|
|
@@ -282,9 +282,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
282
282
|
key: 'generateBootstrapServerConfig',
|
|
283
283
|
id: 'bs-generateBootstrapServerConfig',
|
|
284
284
|
type: 'select',
|
|
285
|
+
defaultValue: generateBootstrapServerConfig || false,
|
|
285
286
|
templateOptions: {
|
|
286
287
|
label: gettext('Generate bootstrap server config'),
|
|
287
|
-
initValue: generateBootstrapServerConfig || false,
|
|
288
288
|
options: [
|
|
289
289
|
{ label: gettext('Yes'), value: true },
|
|
290
290
|
{ label: gettext('No'), value: false }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs","sources":["../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.service.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.guard.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.model.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.html","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.module.ts","../../protocol-lwm2m/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IResult } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/shared';\nimport { Lwm2mBootstrapParameters } from './lwm2m-bootstrap-parameters.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Lwm2mBootstrapParametersService extends Lwm2mClientService<Lwm2mBootstrapParameters> {\n constructor(client: FetchClient) {\n super(client);\n }\n\n detail(id: string): Promise<IResult<Lwm2mBootstrapParameters | any>> {\n return super.detail(id);\n }\n\n update(entity: Lwm2mBootstrapParameters): Promise<IResult<Lwm2mBootstrapParameters | any>> {\n return super.update(entity);\n }\n\n onBeforeUpdate(entity: Lwm2mBootstrapParameters): Lwm2mBootstrapParameters {\n delete entity.id;\n return entity;\n }\n\n getDetailUrl(entity: Lwm2mBootstrapParameters): string {\n return `${this.listUrl}/${super.getEntityId(entity)}/bootstrapParams`;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { TenantUiService, Permissions } from '@c8y/ngx-components';\nimport { Lwm2mManagedObject } from '@c8y/ngx-components/protocol-lwm2m/shared';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\n\n@Injectable()\nexport class Lwm2mBootstrapParametersGuard implements CanActivate {\n constructor(\n private tenantService: TenantUiService,\n private permissions: Permissions,\n private lwm2mService: Lwm2mBootstrapParametersService\n ) {}\n\n canActivate(route: ActivatedRouteSnapshot) {\n const contextData =\n ((route.data as any).contextData as Lwm2mManagedObject) ||\n ((route.parent.data as any).contextData as Lwm2mManagedObject);\n\n return (\n this.lwm2mService.isLwm2mDevice(contextData) &&\n this.tenantService.isMicroserviceSubscribedInCurrentTenant('lwm2m-agent') &&\n this.permissions.hasRole('ROLE_INVENTORY_READ')\n );\n }\n}\n","export interface Lwm2mBootstrapParameters {\n bindingMode?: BindingMode;\n bootstrapId?: string;\n bootstrapKey?: string;\n bootstrapShortServerId?: number;\n defaultMaximumPeriod?: number;\n defaultMinimumPeriod?: number;\n securityMode?: SecurityMode;\n endpoint?: string;\n generateBootstrapServerConfig?: boolean;\n lwm2mShortServerId?: number;\n serverUri?: string;\n registrationLifeTime?: number;\n serverPublicKey?: string;\n securityInstanceOffset?: number;\n publicKeyOrId?: string;\n secretKey?: string;\n id?: string;\n}\n\nexport enum SecurityMode {\n NO_SEC = 'NO_SEC',\n PSK = 'PSK'\n}\n\nexport enum BindingMode {\n U = 'U',\n UQ = 'UQ'\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { ActivatedRoute } from '@angular/router';\nimport { gettext, AlertService, Permissions, Alert } from '@c8y/ngx-components';\nimport { FormlyFieldConfig, FormlyFormBuilder, FormlyFormOptions } from '@ngx-formly/core';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\nimport {\n BindingMode,\n Lwm2mBootstrapParameters,\n SecurityMode\n} from './lwm2m-bootstrap-parameters.model';\n\n@Component({\n selector: 'c8y-lwm2m-bootstrap-parameters',\n templateUrl: './lwm2m-bootstrap-parameters.component.html'\n})\nexport class Lwm2mBootstrapParametersComponent implements OnInit, OnDestroy {\n fields: FormlyFieldConfig[];\n form: FormGroup = new FormGroup({});\n model = {};\n options: FormlyFormOptions = {\n formState: {\n disabled: false,\n mainModel: this.model\n }\n };\n\n private readonly writePermissionMissingAlert: Alert = {\n text: gettext('You do not have write permissions. This form is read-only.'),\n type: 'info'\n };\n\n private readonly DISABLED_HINT_TEXT: string = gettext(\n 'Change the security mode to enable this field.'\n );\n private readonly pattern: RegExp = /^([a-fA-F0-9]{2})+$/;\n private deviceId: string;\n\n constructor(\n private alertService: AlertService,\n private permissions: Permissions,\n private builder: FormlyFormBuilder,\n private lwm2mBootstrapParametersSvc: Lwm2mBootstrapParametersService,\n private route: ActivatedRoute\n ) {\n this.deviceId = this.route?.snapshot?.parent?.params?.id;\n }\n\n async ngOnInit() {\n const parameters: Lwm2mBootstrapParameters = await this.getBootstrapParameters();\n const {\n bindingMode,\n bootstrapId,\n bootstrapKey,\n bootstrapShortServerId,\n defaultMaximumPeriod,\n defaultMinimumPeriod,\n securityMode,\n endpoint,\n generateBootstrapServerConfig,\n lwm2mShortServerId,\n serverUri,\n registrationLifeTime,\n serverPublicKey,\n securityInstanceOffset,\n publicKeyOrId,\n secretKey\n }: Lwm2mBootstrapParameters = parameters;\n\n const leftFields: FormlyFieldConfig[] = [\n {\n key: 'endpoint',\n id: 'bs-endpoint',\n type: 'string',\n defaultValue: endpoint,\n templateOptions: {\n label: gettext('Endpoint'),\n placeholder: 'urn:imei:012345678901234',\n readonly: true\n }\n },\n {\n key: 'securityMode',\n id: 'bs-securityMode',\n type: 'select',\n templateOptions: {\n label: gettext('Security mode'),\n initValue: securityMode || SecurityMode.NO_SEC,\n options: [\n { label: SecurityMode.NO_SEC, value: SecurityMode.NO_SEC },\n { label: SecurityMode.PSK, value: SecurityMode.PSK }\n ],\n required: true\n }\n },\n {\n key: 'bootstrapId',\n id: 'bs-bootstrapId',\n type: 'string',\n templateOptions: {\n label: gettext('Bootstrap PSK ID'),\n description: this.DISABLED_HINT_TEXT,\n required: true\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(bootstrapId);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'bootstrapKey',\n id: 'bs-bootstrapKey',\n type: 'string',\n templateOptions: {\n label: gettext('Bootstrap pre-shared key'),\n description: this.DISABLED_HINT_TEXT,\n placeholder: '0123456789abcdef',\n required: true,\n pattern: this.pattern\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(bootstrapKey);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'securityInstanceOffset',\n id: 'bs-securityInstanceOffset',\n type: 'number',\n defaultValue: securityInstanceOffset,\n templateOptions: {\n label: gettext('Security instance offset'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'bootstrapShortServerId',\n id: 'bs-bootstrapShortServerId',\n type: 'number',\n defaultValue: bootstrapShortServerId,\n templateOptions: {\n label: gettext('LWM2M bootstrap short server ID'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'registrationLifeTime',\n id: 'bs-registrationLifeTime',\n type: 'number',\n defaultValue: registrationLifeTime,\n templateOptions: {\n label: gettext('Registration lifetime'),\n description: gettext('in seconds'),\n placeholder: '600',\n min: 0\n }\n },\n {\n key: 'bindingMode',\n id: 'bs-bindingMode',\n type: 'select',\n templateOptions: {\n label: gettext('Binding mode'),\n initValue: bindingMode || BindingMode.U,\n options: [\n { label: gettext('UDP'), value: BindingMode.U },\n { label: gettext('UDP with queue mode'), value: BindingMode.UQ }\n ]\n }\n }\n ];\n\n const rightFields: FormlyFieldConfig[] = [\n {\n key: 'serverPublicKey',\n id: 'bs-serverPublicKey',\n type: 'string',\n defaultValue: serverPublicKey,\n templateOptions: {\n label: gettext('Server public key'),\n placeholder: 'AAAAB3NzaC1yc2E…'\n }\n },\n {\n key: 'serverUri',\n id: 'bs-serverUri',\n type: 'string',\n defaultValue: serverUri,\n templateOptions: {\n label: gettext('LWM2M server URI'),\n placeholder: 'coaps://<LWM2M-server-domain>:<coaps-port>'\n }\n },\n {\n key: 'publicKeyOrId',\n id: 'bs-publicKeyOrId',\n type: 'string',\n templateOptions: {\n label: gettext('LWM2M PSK ID'),\n description: this.DISABLED_HINT_TEXT,\n required: true\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(publicKeyOrId);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'secretKey',\n id: 'bs-secretKey',\n type: 'string',\n templateOptions: {\n label: gettext('LWM2M pre-shared key'),\n description: this.DISABLED_HINT_TEXT,\n placeholder: '0123456789abcdef',\n required: true,\n pattern: this.pattern\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(secretKey);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'lwm2mShortServerId',\n id: 'bs-lwm2mShortServerId',\n type: 'number',\n defaultValue: lwm2mShortServerId,\n templateOptions: {\n label: gettext('LWM2M short server ID'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'generateBootstrapServerConfig',\n id: 'bs-generateBootstrapServerConfig',\n type: 'select',\n templateOptions: {\n label: gettext('Generate bootstrap server config'),\n initValue: generateBootstrapServerConfig || false,\n options: [\n { label: gettext('Yes'), value: true },\n { label: gettext('No'), value: false }\n ]\n }\n },\n {\n key: 'defaultMinimumPeriod',\n id: 'bs-defaultMinimumPeriod',\n type: 'number',\n defaultValue: defaultMinimumPeriod,\n templateOptions: {\n label: gettext('Default minimum period'),\n description: gettext('in seconds'),\n placeholder: '10',\n min: 0\n }\n },\n {\n key: 'defaultMaximumPeriod',\n id: 'bs-defaultMaximumPeriod',\n type: 'number',\n defaultValue: defaultMaximumPeriod,\n templateOptions: {\n label: gettext('Default maximum period'),\n description: gettext('in seconds'),\n placeholder: '60',\n min: 0\n }\n }\n ];\n\n this.fields = [\n {\n fieldGroupClassName: 'card-block d-grid grid__col--6-6',\n fieldGroup: [\n {\n fieldGroupClassName: 'form-group p-24 p-t-8 p-b-8 m-b-0',\n fieldGroup: leftFields\n },\n {\n fieldGroupClassName: 'form-group p-24 p-t-8 p-b-8 m-b-0',\n fieldGroup: rightFields\n }\n ]\n }\n ];\n\n this.builder.buildForm(this.form, this.fields, this.model, this.options);\n\n const userHasWritePermission = this.permissions.hasRole('ROLE_INVENTORY_ADMIN');\n\n if (Object.keys(parameters).length === 0 || !userHasWritePermission) {\n this.form.disable();\n\n this.options.formState.disabled = true;\n }\n\n if (!userHasWritePermission) {\n this.alertService.info(this.writePermissionMissingAlert.text as string);\n }\n }\n\n ngOnDestroy() {\n // alertService checks if given alert exists.\n // save to remove it without additional checks\n this.alertService.remove(this.writePermissionMissingAlert);\n }\n\n disablePSKField(\n formState: { disabled: boolean; mainModel: Lwm2mBootstrapParameters },\n field: FormlyFieldConfig\n ) {\n if (formState.disabled) {\n delete field.templateOptions.description;\n return true;\n } else if (\n !formState.mainModel.securityMode ||\n formState.mainModel.securityMode === SecurityMode.NO_SEC\n ) {\n field.templateOptions.description = this.DISABLED_HINT_TEXT;\n field.formControl.patchValue(null);\n return true;\n }\n delete field.templateOptions.description;\n return false;\n }\n\n async save() {\n try {\n await this.lwm2mBootstrapParametersSvc.update({ ...this.model, ...{ id: this.deviceId } });\n this.alertService.success(gettext('Bootstrap parameters updated'));\n // disables save button\n this.form.markAsPristine();\n this.form.updateValueAndValidity();\n } catch (error) {\n this.alertService.addServerFailure({ ...error });\n }\n }\n\n async getBootstrapParameters(): Promise<Lwm2mBootstrapParameters> {\n try {\n return (await this.lwm2mBootstrapParametersSvc.detail(this.deviceId))\n .data as Lwm2mBootstrapParameters;\n } catch (error) {\n this.alertService.addServerFailure({ ...error });\n return {};\n }\n }\n}\n","<form (ngSubmit)=\"save()\">\n <div class=\"card content-fullpage fit-h\">\n <div class=\"card-header separator grid__col--fullspan\">\n <h1 class=\"card-title\">{{ 'LWM2M bootstrap parameters' | translate }}</h1>\n </div>\n <div class=\"inner-scroll\">\n <formly-form\n [form]=\"form\"\n [fields]=\"fields\"\n [model]=\"model\"\n [options]=\"options\"\n ></formly-form>\n </div>\n <div\n [hidden]=\"options.formState.disabled\"\n class=\"card-footer separator grid__col--fullspan sticky-bottom\"\n >\n <button\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n class=\"btn btn-primary\"\n [disabled]=\"form.invalid || !form.dirty\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n","import { NgModule } from '@angular/core';\nimport { CommonModule, CoreModule, gettext, hookRoute, ViewContext } from '@c8y/ngx-components';\nimport { Lwm2mBootstrapParametersGuard } from './lwm2m-bootstrap-parameters.guard';\nimport { Lwm2mBootstrapParametersComponent } from './lwm2m-bootstrap-parameters.component';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\nimport { SharedLwm2mModule } from '@c8y/ngx-components/protocol-lwm2m/shared';\n\n@NgModule({\n imports: [CommonModule, CoreModule, SharedLwm2mModule],\n declarations: [Lwm2mBootstrapParametersComponent],\n providers: [\n Lwm2mBootstrapParametersService,\n Lwm2mBootstrapParametersGuard,\n hookRoute({\n path: 'lwm2m-bootstrap-parameters',\n context: ViewContext.Device,\n component: Lwm2mBootstrapParametersComponent,\n label: gettext('LWM2M bootstrap parameters'),\n icon: 'c8y-device-protocols',\n canActivate: [Lwm2mBootstrapParametersGuard]\n })\n ]\n})\nexport class Lwm2mBootstrapParametersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.Lwm2mBootstrapParametersService","i3.Lwm2mBootstrapParametersService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.mjs","sources":["../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.service.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.guard.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.model.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.ts","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.component.html","../../protocol-lwm2m/bootstrap-parameters/lwm2m-bootstrap-parameters.module.ts","../../protocol-lwm2m/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-bootstrap-parameters.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IResult } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/shared';\nimport { Lwm2mBootstrapParameters } from './lwm2m-bootstrap-parameters.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Lwm2mBootstrapParametersService extends Lwm2mClientService<Lwm2mBootstrapParameters> {\n constructor(client: FetchClient) {\n super(client);\n }\n\n detail(id: string): Promise<IResult<Lwm2mBootstrapParameters | any>> {\n return super.detail(id);\n }\n\n update(entity: Lwm2mBootstrapParameters): Promise<IResult<Lwm2mBootstrapParameters | any>> {\n return super.update(entity);\n }\n\n onBeforeUpdate(entity: Lwm2mBootstrapParameters): Lwm2mBootstrapParameters {\n delete entity.id;\n return entity;\n }\n\n getDetailUrl(entity: Lwm2mBootstrapParameters): string {\n return `${this.listUrl}/${super.getEntityId(entity)}/bootstrapParams`;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { TenantUiService, Permissions } from '@c8y/ngx-components';\nimport { Lwm2mManagedObject } from '@c8y/ngx-components/protocol-lwm2m/shared';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\n\n@Injectable()\nexport class Lwm2mBootstrapParametersGuard implements CanActivate {\n constructor(\n private tenantService: TenantUiService,\n private permissions: Permissions,\n private lwm2mService: Lwm2mBootstrapParametersService\n ) {}\n\n canActivate(route: ActivatedRouteSnapshot) {\n const contextData =\n ((route.data as any).contextData as Lwm2mManagedObject) ||\n ((route.parent.data as any).contextData as Lwm2mManagedObject);\n\n return (\n this.lwm2mService.isLwm2mDevice(contextData) &&\n this.tenantService.isMicroserviceSubscribedInCurrentTenant('lwm2m-agent') &&\n this.permissions.hasRole('ROLE_INVENTORY_READ')\n );\n }\n}\n","export interface Lwm2mBootstrapParameters {\n bindingMode?: BindingMode;\n bootstrapId?: string;\n bootstrapKey?: string;\n bootstrapShortServerId?: number;\n defaultMaximumPeriod?: number;\n defaultMinimumPeriod?: number;\n securityMode?: SecurityMode;\n endpoint?: string;\n generateBootstrapServerConfig?: boolean;\n lwm2mShortServerId?: number;\n serverUri?: string;\n registrationLifeTime?: number;\n serverPublicKey?: string;\n securityInstanceOffset?: number;\n publicKeyOrId?: string;\n secretKey?: string;\n id?: string;\n}\n\nexport enum SecurityMode {\n NO_SEC = 'NO_SEC',\n PSK = 'PSK'\n}\n\nexport enum BindingMode {\n U = 'U',\n UQ = 'UQ'\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { ActivatedRoute } from '@angular/router';\nimport { gettext, AlertService, Permissions, Alert } from '@c8y/ngx-components';\nimport { FormlyFieldConfig, FormlyFormBuilder, FormlyFormOptions } from '@ngx-formly/core';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\nimport {\n BindingMode,\n Lwm2mBootstrapParameters,\n SecurityMode\n} from './lwm2m-bootstrap-parameters.model';\n\n@Component({\n selector: 'c8y-lwm2m-bootstrap-parameters',\n templateUrl: './lwm2m-bootstrap-parameters.component.html'\n})\nexport class Lwm2mBootstrapParametersComponent implements OnInit, OnDestroy {\n fields: FormlyFieldConfig[];\n form: FormGroup = new FormGroup({});\n model = {};\n options: FormlyFormOptions = {\n formState: {\n disabled: false,\n mainModel: this.model\n }\n };\n\n private readonly writePermissionMissingAlert: Alert = {\n text: gettext('You do not have write permissions. This form is read-only.'),\n type: 'info'\n };\n\n private readonly DISABLED_HINT_TEXT: string = gettext(\n 'Change the security mode to enable this field.'\n );\n private readonly pattern: RegExp = /^([a-fA-F0-9]{2})+$/;\n private deviceId: string;\n\n constructor(\n private alertService: AlertService,\n private permissions: Permissions,\n private builder: FormlyFormBuilder,\n private lwm2mBootstrapParametersSvc: Lwm2mBootstrapParametersService,\n private route: ActivatedRoute\n ) {\n this.deviceId = this.route?.snapshot?.parent?.params?.id;\n }\n\n async ngOnInit() {\n const parameters: Lwm2mBootstrapParameters = await this.getBootstrapParameters();\n const {\n bindingMode,\n bootstrapId,\n bootstrapKey,\n bootstrapShortServerId,\n defaultMaximumPeriod,\n defaultMinimumPeriod,\n securityMode,\n endpoint,\n generateBootstrapServerConfig,\n lwm2mShortServerId,\n serverUri,\n registrationLifeTime,\n serverPublicKey,\n securityInstanceOffset,\n publicKeyOrId,\n secretKey\n }: Lwm2mBootstrapParameters = parameters;\n\n const leftFields: FormlyFieldConfig[] = [\n {\n key: 'endpoint',\n id: 'bs-endpoint',\n type: 'string',\n defaultValue: endpoint,\n templateOptions: {\n label: gettext('Endpoint'),\n placeholder: 'urn:imei:012345678901234',\n readonly: true\n }\n },\n {\n key: 'securityMode',\n id: 'bs-securityMode',\n type: 'select',\n defaultValue: securityMode || SecurityMode.NO_SEC,\n templateOptions: {\n label: gettext('Security mode'),\n options: [\n { label: SecurityMode.NO_SEC, value: SecurityMode.NO_SEC },\n { label: SecurityMode.PSK, value: SecurityMode.PSK }\n ],\n required: true\n }\n },\n {\n key: 'bootstrapId',\n id: 'bs-bootstrapId',\n type: 'string',\n templateOptions: {\n label: gettext('Bootstrap PSK ID'),\n description: this.DISABLED_HINT_TEXT,\n required: true\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(bootstrapId);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'bootstrapKey',\n id: 'bs-bootstrapKey',\n type: 'string',\n templateOptions: {\n label: gettext('Bootstrap pre-shared key'),\n description: this.DISABLED_HINT_TEXT,\n placeholder: '0123456789abcdef',\n required: true,\n pattern: this.pattern\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(bootstrapKey);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'securityInstanceOffset',\n id: 'bs-securityInstanceOffset',\n type: 'number',\n defaultValue: securityInstanceOffset,\n templateOptions: {\n label: gettext('Security instance offset'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'bootstrapShortServerId',\n id: 'bs-bootstrapShortServerId',\n type: 'number',\n defaultValue: bootstrapShortServerId,\n templateOptions: {\n label: gettext('LWM2M bootstrap short server ID'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'registrationLifeTime',\n id: 'bs-registrationLifeTime',\n type: 'number',\n defaultValue: registrationLifeTime,\n templateOptions: {\n label: gettext('Registration lifetime'),\n description: gettext('in seconds'),\n placeholder: '600',\n min: 0\n }\n },\n {\n key: 'bindingMode',\n id: 'bs-bindingMode',\n type: 'select',\n defaultValue: bindingMode || BindingMode.U,\n templateOptions: {\n label: gettext('Binding mode'),\n options: [\n { label: gettext('UDP'), value: BindingMode.U },\n { label: gettext('UDP with queue mode'), value: BindingMode.UQ }\n ]\n }\n }\n ];\n\n const rightFields: FormlyFieldConfig[] = [\n {\n key: 'serverPublicKey',\n id: 'bs-serverPublicKey',\n type: 'string',\n defaultValue: serverPublicKey,\n templateOptions: {\n label: gettext('Server public key'),\n placeholder: 'AAAAB3NzaC1yc2E…'\n }\n },\n {\n key: 'serverUri',\n id: 'bs-serverUri',\n type: 'string',\n defaultValue: serverUri,\n templateOptions: {\n label: gettext('LWM2M server URI'),\n placeholder: 'coaps://<LWM2M-server-domain>:<coaps-port>'\n }\n },\n {\n key: 'publicKeyOrId',\n id: 'bs-publicKeyOrId',\n type: 'string',\n templateOptions: {\n label: gettext('LWM2M PSK ID'),\n description: this.DISABLED_HINT_TEXT,\n required: true\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(publicKeyOrId);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'secretKey',\n id: 'bs-secretKey',\n type: 'string',\n templateOptions: {\n label: gettext('LWM2M pre-shared key'),\n description: this.DISABLED_HINT_TEXT,\n placeholder: '0123456789abcdef',\n required: true,\n pattern: this.pattern\n },\n hooks: {\n onInit: (field: FormlyFieldConfig) => {\n field.formControl.patchValue(secretKey);\n }\n },\n expressionProperties: {\n 'templateOptions.disabled': (model: any, formState: any, field: FormlyFieldConfig) =>\n this.disablePSKField(formState, field)\n }\n },\n {\n key: 'lwm2mShortServerId',\n id: 'bs-lwm2mShortServerId',\n type: 'number',\n defaultValue: lwm2mShortServerId,\n templateOptions: {\n label: gettext('LWM2M short server ID'),\n placeholder: '0',\n min: 0\n }\n },\n {\n key: 'generateBootstrapServerConfig',\n id: 'bs-generateBootstrapServerConfig',\n type: 'select',\n defaultValue: generateBootstrapServerConfig || false,\n templateOptions: {\n label: gettext('Generate bootstrap server config'),\n options: [\n { label: gettext('Yes'), value: true },\n { label: gettext('No'), value: false }\n ]\n }\n },\n {\n key: 'defaultMinimumPeriod',\n id: 'bs-defaultMinimumPeriod',\n type: 'number',\n defaultValue: defaultMinimumPeriod,\n templateOptions: {\n label: gettext('Default minimum period'),\n description: gettext('in seconds'),\n placeholder: '10',\n min: 0\n }\n },\n {\n key: 'defaultMaximumPeriod',\n id: 'bs-defaultMaximumPeriod',\n type: 'number',\n defaultValue: defaultMaximumPeriod,\n templateOptions: {\n label: gettext('Default maximum period'),\n description: gettext('in seconds'),\n placeholder: '60',\n min: 0\n }\n }\n ];\n\n this.fields = [\n {\n fieldGroupClassName: 'card-block d-grid grid__col--6-6',\n fieldGroup: [\n {\n fieldGroupClassName: 'form-group p-24 p-t-8 p-b-8 m-b-0',\n fieldGroup: leftFields\n },\n {\n fieldGroupClassName: 'form-group p-24 p-t-8 p-b-8 m-b-0',\n fieldGroup: rightFields\n }\n ]\n }\n ];\n\n this.builder.buildForm(this.form, this.fields, this.model, this.options);\n\n const userHasWritePermission = this.permissions.hasRole('ROLE_INVENTORY_ADMIN');\n\n if (Object.keys(parameters).length === 0 || !userHasWritePermission) {\n this.form.disable();\n\n this.options.formState.disabled = true;\n }\n\n if (!userHasWritePermission) {\n this.alertService.info(this.writePermissionMissingAlert.text as string);\n }\n }\n\n ngOnDestroy() {\n // alertService checks if given alert exists.\n // save to remove it without additional checks\n this.alertService.remove(this.writePermissionMissingAlert);\n }\n\n disablePSKField(\n formState: { disabled: boolean; mainModel: Lwm2mBootstrapParameters },\n field: FormlyFieldConfig\n ) {\n if (formState.disabled) {\n delete field.templateOptions.description;\n return true;\n } else if (\n !formState.mainModel.securityMode ||\n formState.mainModel.securityMode === SecurityMode.NO_SEC\n ) {\n field.templateOptions.description = this.DISABLED_HINT_TEXT;\n field.formControl.patchValue(null);\n return true;\n }\n delete field.templateOptions.description;\n return false;\n }\n\n async save() {\n try {\n await this.lwm2mBootstrapParametersSvc.update({ ...this.model, ...{ id: this.deviceId } });\n this.alertService.success(gettext('Bootstrap parameters updated'));\n // disables save button\n this.form.markAsPristine();\n this.form.updateValueAndValidity();\n } catch (error) {\n this.alertService.addServerFailure({ ...error });\n }\n }\n\n async getBootstrapParameters(): Promise<Lwm2mBootstrapParameters> {\n try {\n return (await this.lwm2mBootstrapParametersSvc.detail(this.deviceId))\n .data as Lwm2mBootstrapParameters;\n } catch (error) {\n this.alertService.addServerFailure({ ...error });\n return {};\n }\n }\n}\n","<form (ngSubmit)=\"save()\">\n <div class=\"card content-fullpage fit-h\">\n <div class=\"card-header separator grid__col--fullspan\">\n <h1 class=\"card-title\">{{ 'LWM2M bootstrap parameters' | translate }}</h1>\n </div>\n <div class=\"inner-scroll\">\n <formly-form\n [form]=\"form\"\n [fields]=\"fields\"\n [model]=\"model\"\n [options]=\"options\"\n ></formly-form>\n </div>\n <div\n [hidden]=\"options.formState.disabled\"\n class=\"card-footer separator grid__col--fullspan sticky-bottom\"\n >\n <button\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n class=\"btn btn-primary\"\n [disabled]=\"form.invalid || !form.dirty\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n","import { NgModule } from '@angular/core';\nimport { CommonModule, CoreModule, gettext, hookRoute, ViewContext } from '@c8y/ngx-components';\nimport { Lwm2mBootstrapParametersGuard } from './lwm2m-bootstrap-parameters.guard';\nimport { Lwm2mBootstrapParametersComponent } from './lwm2m-bootstrap-parameters.component';\nimport { Lwm2mBootstrapParametersService } from './lwm2m-bootstrap-parameters.service';\nimport { SharedLwm2mModule } from '@c8y/ngx-components/protocol-lwm2m/shared';\n\n@NgModule({\n imports: [CommonModule, CoreModule, SharedLwm2mModule],\n declarations: [Lwm2mBootstrapParametersComponent],\n providers: [\n Lwm2mBootstrapParametersService,\n Lwm2mBootstrapParametersGuard,\n hookRoute({\n path: 'lwm2m-bootstrap-parameters',\n context: ViewContext.Device,\n component: Lwm2mBootstrapParametersComponent,\n label: gettext('LWM2M bootstrap parameters'),\n icon: 'c8y-device-protocols',\n canActivate: [Lwm2mBootstrapParametersGuard]\n })\n ]\n})\nexport class Lwm2mBootstrapParametersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.Lwm2mBootstrapParametersService","i3.Lwm2mBootstrapParametersService"],"mappings":"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"}
|
|
@@ -115,9 +115,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
115
115
|
key: 'securityMode',
|
|
116
116
|
id: 'bs-securityMode',
|
|
117
117
|
type: 'select',
|
|
118
|
+
defaultValue: securityMode || SecurityMode.NO_SEC,
|
|
118
119
|
templateOptions: {
|
|
119
120
|
label: gettext('Security mode'),
|
|
120
|
-
initValue: securityMode || SecurityMode.NO_SEC,
|
|
121
121
|
options: [
|
|
122
122
|
{ label: SecurityMode.NO_SEC, value: SecurityMode.NO_SEC },
|
|
123
123
|
{ label: SecurityMode.PSK, value: SecurityMode.PSK }
|
|
@@ -201,9 +201,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
201
201
|
key: 'bindingMode',
|
|
202
202
|
id: 'bs-bindingMode',
|
|
203
203
|
type: 'select',
|
|
204
|
+
defaultValue: bindingMode || BindingMode.U,
|
|
204
205
|
templateOptions: {
|
|
205
206
|
label: gettext('Binding mode'),
|
|
206
|
-
initValue: bindingMode || BindingMode.U,
|
|
207
207
|
options: [
|
|
208
208
|
{ label: gettext('UDP'), value: BindingMode.U },
|
|
209
209
|
{ label: gettext('UDP with queue mode'), value: BindingMode.UQ }
|
|
@@ -285,9 +285,9 @@ class Lwm2mBootstrapParametersComponent {
|
|
|
285
285
|
key: 'generateBootstrapServerConfig',
|
|
286
286
|
id: 'bs-generateBootstrapServerConfig',
|
|
287
287
|
type: 'select',
|
|
288
|
+
defaultValue: generateBootstrapServerConfig || false,
|
|
288
289
|
templateOptions: {
|
|
289
290
|
label: gettext('Generate bootstrap server config'),
|
|
290
|
-
initValue: generateBootstrapServerConfig || false,
|
|
291
291
|
options: [
|
|
292
292
|
{ label: gettext('Yes'), value: true },
|
|
293
293
|
{ label: gettext('No'), value: false }
|