@c8y/ngx-components 1021.2.1 → 1021.4.3
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/assets-navigator/asset-selector/asset-selector-node.component.d.ts +2 -1
- package/assets-navigator/asset-selector/asset-selector-node.component.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector.component.d.ts +2 -1
- package/assets-navigator/asset-selector/asset-selector.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/basic-configuration.component.d.ts +1 -0
- package/auth-configuration/sso-configuration/template-parts/basic-configuration.component.d.ts.map +1 -1
- package/cockpit-config/cockpit-config.service.d.ts.map +1 -1
- package/cockpit-config/cockpit-configuration.component.d.ts +1 -0
- package/cockpit-config/cockpit-configuration.component.d.ts.map +1 -1
- package/cockpit-config/root-node-config.component.d.ts +2 -1
- package/cockpit-config/root-node-config.component.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
- package/core/common/get-group-icon.pipe.d.ts.map +1 -1
- package/core/common/global-config.service.d.ts +1 -1
- package/core/common/global-config.service.d.ts.map +1 -1
- package/core/login/login.component.d.ts.map +1 -1
- package/core/login/login.service.d.ts +1 -1
- package/core/login/login.service.d.ts.map +1 -1
- package/device-profile/device-profile-list.component.d.ts +31 -14
- package/device-profile/device-profile-list.component.d.ts.map +1 -1
- package/esm2022/assets-navigator/asset-selector/asset-selector-node.component.mjs +6 -3
- package/esm2022/assets-navigator/asset-selector/asset-selector.component.mjs +7 -4
- package/esm2022/assets-navigator/asset-selector/miller-view.component.mjs +1 -1
- package/esm2022/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.mjs +1 -1
- package/esm2022/auth-configuration/sso-configuration/template-parts/basic-configuration.component.mjs +5 -3
- package/esm2022/cockpit-config/cockpit-config.service.mjs +7 -3
- package/esm2022/cockpit-config/cockpit-configuration.component.mjs +6 -3
- package/esm2022/cockpit-config/root-node-config.component.mjs +8 -4
- package/esm2022/cockpit-config/setup/cockpit-setup-step3.component.mjs +1 -1
- package/esm2022/context-dashboard/context-dashboard.service.mjs +3 -2
- package/esm2022/core/common/get-group-icon.pipe.mjs +4 -1
- package/esm2022/core/common/global-config.service.mjs +3 -2
- package/esm2022/core/login/login.component.mjs +8 -3
- package/esm2022/core/login/login.service.mjs +5 -2
- package/esm2022/device-grid/columns/group.filtering-form-renderer.component.mjs +1 -1
- package/esm2022/device-profile/device-profile-list.component.mjs +102 -27
- package/esm2022/protocol-lwm2m/components/configuration/typed-forms/firmware-settings.component.mjs +11 -2
- package/esm2022/repository/shared/repository.model.mjs +2 -1
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs +12 -6
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs +5 -3
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs +19 -9
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +2 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-grid.mjs +1 -1
- package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-profile.mjs +110 -35
- package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs +10 -1
- package/fesm2022/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-shared.mjs +1 -0
- package/fesm2022/c8y-ngx-components-repository-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +16 -4
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/locales/locales.pot +20 -2
- package/package.json +1 -1
- package/protocol-lwm2m/components/configuration/typed-forms/firmware-settings.component.d.ts +10 -0
- package/protocol-lwm2m/components/configuration/typed-forms/firmware-settings.component.d.ts.map +1 -1
- package/repository/shared/repository.model.d.ts +2 -1
- package/repository/shared/repository.model.d.ts.map +1 -1
- package/repository/shared/repository.service.d.ts +1 -1
|
@@ -1,47 +1,119 @@
|
|
|
1
|
-
import { Component, forwardRef } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { Component, EventEmitter, forwardRef } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
3
|
+
import { AlertService, BuiltInActionType, DataGridService, gettext, ModalService, PRODUCT_EXPERIENCE_EVENT_SOURCE, Status } from '@c8y/ngx-components';
|
|
4
|
+
import { DeviceTypeGridColumn, RepositoryItemNameGridColumn, RepositoryService, RepositoryType } from '@c8y/ngx-components/repository/shared';
|
|
5
5
|
import { TranslateService } from '@ngx-translate/core';
|
|
6
6
|
import { cloneDeep } from 'lodash-es';
|
|
7
7
|
import { BsModalService } from 'ngx-bootstrap/modal';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { from } from 'rxjs';
|
|
9
|
+
import { map } from 'rxjs/operators';
|
|
10
10
|
import { AddDeviceProfileComponent } from './add-device-profile.component';
|
|
11
11
|
import { PRODUCT_EXPERIENCE_DEVICE_PROFILE } from './device-profile.model';
|
|
12
12
|
import { DeviceProfileService } from './device-profile.service';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@c8y/
|
|
15
|
-
import * as i2 from "@ngx-
|
|
16
|
-
import * as i3 from "
|
|
17
|
-
import * as i4 from "ngx-
|
|
14
|
+
import * as i1 from "@c8y/ngx-components/repository/shared";
|
|
15
|
+
import * as i2 from "@c8y/ngx-components";
|
|
16
|
+
import * as i3 from "ngx-bootstrap/modal";
|
|
17
|
+
import * as i4 from "@ngx-translate/core";
|
|
18
18
|
import * as i5 from "@angular/router";
|
|
19
19
|
import * as i6 from "./device-profile.service";
|
|
20
20
|
import * as i7 from "@angular/common";
|
|
21
21
|
export class DeviceProfileListComponent {
|
|
22
|
-
constructor(
|
|
23
|
-
this.
|
|
24
|
-
this.
|
|
22
|
+
constructor(repositoryService, gridService, modalService, bsModalService, translateService, alertService, router, activatedRoute, deviceProfileService) {
|
|
23
|
+
this.repositoryService = repositoryService;
|
|
24
|
+
this.gridService = gridService;
|
|
25
25
|
this.modalService = modalService;
|
|
26
|
-
this.alertService = alertService;
|
|
27
26
|
this.bsModalService = bsModalService;
|
|
27
|
+
this.translateService = translateService;
|
|
28
|
+
this.alertService = alertService;
|
|
28
29
|
this.router = router;
|
|
30
|
+
this.activatedRoute = activatedRoute;
|
|
29
31
|
this.deviceProfileService = deviceProfileService;
|
|
30
|
-
this.
|
|
31
|
-
this.
|
|
32
|
-
this.
|
|
32
|
+
this.sizeRequestDone = false;
|
|
33
|
+
this.refresh$ = new EventEmitter();
|
|
34
|
+
this.isDataPresent$ = from(this.repositoryService.listRepositoryEntries(RepositoryType.PROFILE, { skipLegacy: true })).pipe(map(({ data }) => data.length > 0));
|
|
35
|
+
this.columns = [
|
|
36
|
+
new RepositoryItemNameGridColumn({
|
|
37
|
+
filterLabel: gettext('Filter device profile by name'),
|
|
38
|
+
placeholder: gettext('ubuntu core')
|
|
39
|
+
}),
|
|
40
|
+
new DeviceTypeGridColumn({ filterLabel: gettext('Filter device profile by device type') })
|
|
41
|
+
];
|
|
42
|
+
this.actionControls = [];
|
|
43
|
+
this.pagination = {
|
|
44
|
+
pageSize: 50,
|
|
45
|
+
currentPage: 1
|
|
46
|
+
};
|
|
33
47
|
this.productExperienceEvent = {
|
|
34
48
|
eventName: PRODUCT_EXPERIENCE_DEVICE_PROFILE.EVENTS.REPOSITORY,
|
|
35
49
|
data: {
|
|
36
50
|
component: PRODUCT_EXPERIENCE_DEVICE_PROFILE.COMPONENTS.DEVICE_PROFILE_LIST
|
|
37
51
|
}
|
|
38
52
|
};
|
|
53
|
+
this.noResultsMessage = gettext('No results to display.');
|
|
54
|
+
this.noDataMessage = gettext('No device profiles to display.');
|
|
55
|
+
this.noResultsSubtitle = gettext('Refine your search terms or check your spelling.');
|
|
56
|
+
this.noDataSubtitle = gettext('Add a new device profile by clicking below.');
|
|
57
|
+
this.serverSideDataCallback = this.onDataSourceModifier.bind(this);
|
|
39
58
|
}
|
|
40
59
|
ngOnInit() {
|
|
41
|
-
this.
|
|
60
|
+
this.actionControls.push({
|
|
61
|
+
type: BuiltInActionType.Edit,
|
|
62
|
+
callback: this.editDeviceProfile.bind(this)
|
|
63
|
+
});
|
|
64
|
+
this.actionControls.push({
|
|
65
|
+
type: 'duplicate',
|
|
66
|
+
icon: 'copy',
|
|
67
|
+
text: gettext('Duplicate'),
|
|
68
|
+
callback: this.duplicateDeviceProfile.bind(this)
|
|
69
|
+
});
|
|
70
|
+
this.actionControls.push({
|
|
71
|
+
type: BuiltInActionType.Delete,
|
|
72
|
+
callback: this.deleteDeviceProfile.bind(this)
|
|
73
|
+
});
|
|
42
74
|
}
|
|
43
|
-
|
|
44
|
-
this.
|
|
75
|
+
async onDataSourceModifier(dataSourceModifier) {
|
|
76
|
+
const dataRequest = this.repositoryService.listRepositoryEntries(RepositoryType.PROFILE, {
|
|
77
|
+
query: this.gridService.getQueryObj(dataSourceModifier.columns),
|
|
78
|
+
skipDefaultOrder: true,
|
|
79
|
+
params: {
|
|
80
|
+
pageSize: dataSourceModifier.pagination.pageSize,
|
|
81
|
+
currentPage: dataSourceModifier.pagination.currentPage
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
const filtererdSizeRequest = this.repositoryService
|
|
85
|
+
.listRepositoryEntries(RepositoryType.PROFILE, {
|
|
86
|
+
skipDefaultOrder: true,
|
|
87
|
+
query: this.gridService.getQueryObj(dataSourceModifier.columns),
|
|
88
|
+
params: { pageSize: 1 }
|
|
89
|
+
})
|
|
90
|
+
.then(response => response?.paging?.totalPages);
|
|
91
|
+
this.sizeRequest = this.repositoryService
|
|
92
|
+
.listRepositoryEntries(RepositoryType.PROFILE, {
|
|
93
|
+
skipDefaultOrder: true,
|
|
94
|
+
params: { pageSize: 1 }
|
|
95
|
+
})
|
|
96
|
+
.then(response => {
|
|
97
|
+
this.sizeRequestDone = true;
|
|
98
|
+
return response?.paging?.totalPages;
|
|
99
|
+
});
|
|
100
|
+
const [dataResponse, size, filteredSize] = await Promise.all([
|
|
101
|
+
dataRequest,
|
|
102
|
+
this.sizeRequest,
|
|
103
|
+
filtererdSizeRequest
|
|
104
|
+
]);
|
|
105
|
+
const { res, data, paging } = dataResponse;
|
|
106
|
+
const serverSideDataResult = {
|
|
107
|
+
res,
|
|
108
|
+
data,
|
|
109
|
+
paging,
|
|
110
|
+
filteredSize,
|
|
111
|
+
size
|
|
112
|
+
};
|
|
113
|
+
return serverSideDataResult;
|
|
114
|
+
}
|
|
115
|
+
editDeviceProfile(deviceProfile) {
|
|
116
|
+
this.router.navigate([deviceProfile.id], { relativeTo: this.activatedRoute });
|
|
45
117
|
}
|
|
46
118
|
async createDeviceProfile() {
|
|
47
119
|
const modal = this.bsModalService.show(AddDeviceProfileComponent, {
|
|
@@ -86,28 +158,31 @@ export class DeviceProfileListComponent {
|
|
|
86
158
|
ok: gettext('Delete')
|
|
87
159
|
}, {}, this.productExperienceEvent);
|
|
88
160
|
await this.delete(deviceProfile.id);
|
|
89
|
-
this.
|
|
161
|
+
this.refresh$.next();
|
|
90
162
|
}
|
|
91
163
|
catch (ex) {
|
|
92
164
|
// do nothing
|
|
93
165
|
}
|
|
94
166
|
}
|
|
167
|
+
trackByName(_index, column) {
|
|
168
|
+
return column.name;
|
|
169
|
+
}
|
|
95
170
|
async delete(profileId) {
|
|
96
171
|
try {
|
|
97
|
-
await this.
|
|
172
|
+
await this.repositoryService.delete(profileId);
|
|
98
173
|
this.alertService.success(gettext('Device profile deleted.'));
|
|
99
174
|
}
|
|
100
175
|
catch (ex) {
|
|
101
176
|
this.alertService.addServerFailure(ex);
|
|
102
177
|
}
|
|
103
178
|
}
|
|
104
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DeviceProfileListComponent, deps: [{ token: i1.
|
|
179
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DeviceProfileListComponent, deps: [{ token: i1.RepositoryService }, { token: i2.DataGridService }, { token: i2.ModalService }, { token: i3.BsModalService }, { token: i4.TranslateService }, { token: i2.AlertService }, { token: i5.Router }, { token: i5.ActivatedRoute }, { token: i6.DeviceProfileService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
105
180
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: DeviceProfileListComponent, selector: "c8y-device-profile-list", providers: [
|
|
106
181
|
{
|
|
107
182
|
provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,
|
|
108
183
|
useExisting: forwardRef(() => DeviceProfileListComponent)
|
|
109
184
|
}
|
|
110
|
-
], ngImport: i0, template: "<c8y-title>{{ 'Device profiles' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n icon=\"c8y-management\"\n label=\"{{ 'Management' | translate }}\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n icon=\"c8y-device-profile\"\n label=\"{{ 'Device profiles' | translate }}\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add device profile' | translate }}\"\n data-cy=\"device-profile-list--Add-device-profile\"\n (click)=\"createDeviceProfile()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n {{ 'Add device profile' | translate }}\n </button>\n</c8y-action-bar-item>\n
|
|
185
|
+
], ngImport: i0, template: "<c8y-title>{{ 'Device profiles' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n icon=\"c8y-management\"\n label=\"{{ 'Management' | translate }}\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n icon=\"c8y-device-profile\"\n label=\"{{ 'Device profiles' | translate }}\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add device profile' | translate }}\"\n data-cy=\"device-profile-list--Add-device-profile\"\n (click)=\"createDeviceProfile()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n {{ 'Add device profile' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/managing-device-data/#managing-device-profiles\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-data-grid\n [title]=\"'Device profiles' | translate\"\n [refresh]=\"refresh$\"\n [pagination]=\"pagination\"\n [columns]=\"columns\"\n [actionControls]=\"actionControls\"\n [infiniteScroll]=\"'auto'\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n >\n <c8y-ui-empty-state\n [icon]=\"stats?.size > 0 ? 'search' : 'c8y-tools'\"\n [title]=\"stats?.size > 0 ? (noResultsMessage | translate) : (noDataMessage | translate)\"\n [subtitle]=\"stats?.size > 0 ? (noResultsSubtitle | translate) : (noDataSubtitle | translate)\"\n *emptyStateContext=\"let stats\"\n [horizontal]=\"stats?.size > 0\"\n >\n <p *ngIf=\"stats?.size === 0\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add device profile' | translate }}\"\n type=\"button\"\n (click)=\"createDeviceProfile()\"\n >\n {{ 'Add device profile' | translate }}\n </button>\n </p>\n </c8y-ui-empty-state>\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n </c8y-data-grid>\n</div>\n", dependencies: [{ kind: "component", type: i2.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "component", type: i2.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i2.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "component", type: i2.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i2.EmptyStateContextDirective, selector: "[emptyStateContext]" }, { kind: "directive", type: i2.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ColumnDirective, selector: "c8y-column", inputs: ["name"] }, { kind: "component", type: i2.DataGridComponent, selector: "c8y-data-grid", inputs: ["title", "loadMoreItemsLabel", "loadingItemsLabel", "showSearch", "refresh", "columns", "rows", "pagination", "infiniteScroll", "serverSideDataCallback", "selectable", "singleSelection", "selectionPrimaryKey", "displayOptions", "actionControls", "bulkActionControls", "headerActionControls", "searchText", "configureColumnsEnabled", "showCounterWarning", "activeClassName", "expandableRows"], outputs: ["rowMouseOver", "rowMouseLeave", "rowClick", "onConfigChange", "onBeforeFilter", "onBeforeSearch", "onFilter", "itemsSelect", "onReload", "onAddCustomColumn", "onRemoveCustomColumn", "onColumnFilterReset", "onSort", "onPageSizeChange", "onColumnReordered", "onColumnVisibilityChange"] }, { kind: "component", type: i2.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: i2.HelpComponent, selector: "c8y-help", inputs: ["src", "isCollapsed", "priority", "icon"] }, { kind: "pipe", type: i2.C8yTranslatePipe, name: "translate" }] }); }
|
|
111
186
|
}
|
|
112
187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DeviceProfileListComponent, decorators: [{
|
|
113
188
|
type: Component,
|
|
@@ -116,6 +191,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
116
191
|
provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,
|
|
117
192
|
useExisting: forwardRef(() => DeviceProfileListComponent)
|
|
118
193
|
}
|
|
119
|
-
], template: "<c8y-title>{{ 'Device profiles' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n icon=\"c8y-management\"\n label=\"{{ 'Management' | translate }}\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n icon=\"c8y-device-profile\"\n label=\"{{ 'Device profiles' | translate }}\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add device profile' | translate }}\"\n data-cy=\"device-profile-list--Add-device-profile\"\n (click)=\"createDeviceProfile()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n {{ 'Add device profile' | translate }}\n </button>\n</c8y-action-bar-item>\n
|
|
120
|
-
}], ctorParameters: () => [{ type: i1.
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLXByb2ZpbGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9kZXZpY2UtcHJvZmlsZS9kZXZpY2UtcHJvZmlsZS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL2RldmljZS1wcm9maWxlL2RldmljZS1wcm9maWxlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBa0IsZ0JBQWdCLEVBQWUsTUFBTSxhQUFhLENBQUM7QUFDNUUsT0FBTyxFQUNMLFlBQVksRUFDWixPQUFPLEVBQ1AsWUFBWSxFQUdaLCtCQUErQixFQUMvQixNQUFNLEVBQ1AsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7OztBQVloRSxNQUFNLE9BQU8sMEJBQTBCO0lBZXJDLFlBQ1UsZ0JBQWtDLEVBQ2xDLGdCQUFrQyxFQUNsQyxZQUEwQixFQUMxQixZQUEwQixFQUMxQixj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WUFDWixJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDOzhHQXBHVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixrREFQMUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsK0JBQStCO2dCQUN4QyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO2FBQzFEO1NBQ0YsMEJDN0JILHNwSUFxSkE7OzJGRHRIYSwwQkFBMEI7a0JBVnRDLFNBQVM7K0JBQ0UseUJBQXlCLGFBRXhCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwrQkFBK0I7NEJBQ3hDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDJCQUEyQixDQUFDO3lCQUMxRDtxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QsIEludmVudG9yeVNlcnZpY2UsIElSZXN1bHRMaXN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHtcbiAgQWxlcnRTZXJ2aWNlLFxuICBnZXR0ZXh0LFxuICBNb2RhbFNlcnZpY2UsXG4gIFByb2R1Y3RFeHBlcmllbmNlRXZlbnQsXG4gIFByb2R1Y3RFeHBlcmllbmNlRXZlbnRTb3VyY2UsXG4gIFBST0RVQ1RfRVhQRVJJRU5DRV9FVkVOVF9TT1VSQ0UsXG4gIFN0YXR1c1xufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFkZERldmljZVByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2FkZC1kZXZpY2UtcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUFJPRFVDVF9FWFBFUklFTkNFX0RFVklDRV9QUk9GSUxFIH0gZnJvbSAnLi9kZXZpY2UtcHJvZmlsZS5tb2RlbCc7XG5pbXBvcnQgeyBEZXZpY2VQcm9maWxlU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLXByb2ZpbGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1kZXZpY2UtcHJvZmlsZS1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RldmljZS1wcm9maWxlLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBQUk9EVUNUX0VYUEVSSUVOQ0VfRVZFTlRfU09VUkNFLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGV2aWNlUHJvZmlsZUxpc3RDb21wb25lbnQpXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERldmljZVByb2ZpbGVMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBQcm9kdWN0RXhwZXJpZW5jZUV2ZW50U291cmNlIHtcbiAgcmVsb2FkaW5nID0gZmFsc2U7XG4gIHJlbG9hZDogQmVoYXZpb3JTdWJqZWN0PHZvaWQ+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgZGV2aWNlUHJvZmlsZXMkOiBPYnNlcnZhYmxlPElSZXN1bHRMaXN0PElNYW5hZ2VkT2JqZWN0Pj4gPSB0aGlzLnJlbG9hZC5waXBlKFxuICAgIHRhcCgoKSA9PiAodGhpcy5yZWxvYWRpbmcgPSB0cnVlKSksXG4gICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuZGV2aWNlUHJvZmlsZVNlcnZpY2UuZ2V0RGV2aWNlUHJvZmlsZXMoKSksXG4gICAgdGFwKCgpID0+ICh0aGlzLnJlbG9hZGluZyA9IGZhbHNlKSlcbiAgKTtcbiAgcHJvZHVjdEV4cGVyaWVuY2VFdmVudDogUHJvZHVjdEV4cGVyaWVuY2VFdmVudCA9IHtcbiAgICBldmVudE5hbWU6IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRS5FVkVOVFMuUkVQT1NJVE9SWSxcbiAgICBkYXRhOiB7XG4gICAgICBjb21wb25lbnQ6IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRS5DT01QT05FTlRTLkRFVklDRV9QUk9GSUxFX0xJU1RcbiAgICB9XG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpbnZlbnRvcnlTZXJ2aWNlOiBJbnZlbnRvcnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogTW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBic01vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGRldmljZVByb2ZpbGVTZXJ2aWNlOiBEZXZpY2VQcm9maWxlU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkRGV2aWNlUHJvZmlsZXMoKTtcbiAgfVxuXG4gIGxvYWREZXZpY2VQcm9maWxlcygpIHtcbiAgICB0aGlzLnJlbG9hZC5uZXh0KCk7XG4gIH1cblxuICBhc3luYyBjcmVhdGVEZXZpY2VQcm9maWxlKCkge1xuICAgIGNvbnN0IG1vZGFsID0gdGhpcy5ic01vZGFsU2VydmljZS5zaG93KEFkZERldmljZVByb2ZpbGVDb21wb25lbnQsIHtcbiAgICAgIGNsYXNzOiAnbW9kYWwtc20nLFxuICAgICAgYXJpYURlc2NyaWJlZGJ5OiAnYWRkRGV2aWNlUHJvZmlsZU1vZGFsRGVzY3JpcHRpb24nLFxuICAgICAgYXJpYUxhYmVsbGVkQnk6ICdhZGREZXZpY2VQcm9maWxlTW9kYWxUaXRsZScsXG4gICAgICBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlLFxuICAgICAga2V5Ym9hcmQ6IGZhbHNlLFxuICAgICAgaW5pdGlhbFN0YXRlOiB7XG4gICAgICAgIHByb2R1Y3RFeHBlcmllbmNlRXZlbnQ6IHtcbiAgICAgICAgICAuLi50aGlzLnByb2R1Y3RFeHBlcmllbmNlRXZlbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgLi4udGhpcy5wcm9kdWN0RXhwZXJpZW5jZUV2ZW50LmRhdGEsXG4gICAgICAgICAgICBjb21wb25lbnQ6IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRS5DT01QT05FTlRTLkFERF9ERVZJQ0VfUFJPRklMRVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pLmNvbnRlbnQgYXMgQWRkRGV2aWNlUHJvZmlsZUNvbXBvbmVudDtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcHJvZmlsZUlkID0gYXdhaXQgbW9kYWwucmVzdWx0O1xuICAgICAgbW9kYWwuY2xvc2UoKTtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoYC9kZXZpY2UtcHJvZmlsZXMvJHtwcm9maWxlSWR9YCk7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIC8vIGRvIG5vdGhpbmdcbiAgICB9XG4gIH1cblxuICBhc3luYyBkdXBsaWNhdGVEZXZpY2VQcm9maWxlKGRldmljZVByb2ZpbGUpIHtcbiAgICBjb25zdCBjb3B5ID0gY2xvbmVEZWVwKGRldmljZVByb2ZpbGUpO1xuICAgIGNvcHkuaWQgPSBudWxsO1xuICAgIGNvcHkubmFtZSA9ICdEdXBsaWNhdGUgb2YgJyArIGRldmljZVByb2ZpbGUubmFtZTtcbiAgICBjb25zdCBtbyA9IChhd2FpdCB0aGlzLmRldmljZVByb2ZpbGVTZXJ2aWNlLmNyZWF0ZURldmljZVByb2ZpbGUoY29weSkpLmRhdGE7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChgL2RldmljZS1wcm9maWxlcy8ke21vLmlkfWApO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlRGV2aWNlUHJvZmlsZShkZXZpY2VQcm9maWxlKSB7XG4gICAgY29uc3QgZGV2aWNlUHJvZmlsZU5hbWUgPSBkZXZpY2VQcm9maWxlLm5hbWU7XG4gICAgY29uc3QgdGl0bGUgPSBnZXR0ZXh0KCdEZWxldGUgZGV2aWNlIHByb2ZpbGUnKTtcbiAgICBjb25zdCBjb25maXJtYXRpb25UZXh0ID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICBnZXR0ZXh0KCdZb3UgYXJlIGFib3V0IHRvIGRlbGV0ZSBhIGRldmljZSBwcm9maWxlIFwie3sgZGV2aWNlUHJvZmlsZU5hbWUgfX1cIi4nKSxcbiAgICAgIHsgZGV2aWNlUHJvZmlsZU5hbWUgfVxuICAgICk7XG4gICAgY29uc3QgZmluYWxRdWVzdGlvbiA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGdldHRleHQoJ0RvIHlvdSB3YW50IHRvIHByb2NlZWQ/JykpO1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLm1vZGFsU2VydmljZS5jb25maXJtKFxuICAgICAgICB0aXRsZSxcbiAgICAgICAgYCR7Y29uZmlybWF0aW9uVGV4dH0gJHtmaW5hbFF1ZXN0aW9ufWAsXG4gICAgICAgIFN0YXR1cy5EQU5HRVIsXG4gICAgICAgIHtcbiAgICAgICAgICBvazogZ2V0dGV4dCgnRGVsZXRlJylcbiAgICAgICAgfSxcbiAgICAgICAge30sXG4gICAgICAgIHRoaXMucHJvZHVjdEV4cGVyaWVuY2VFdmVudFxuICAgICAgKTtcbiAgICAgIGF3YWl0IHRoaXMuZGVsZXRlKGRldmljZVByb2ZpbGUuaWQpO1xuICAgICAgdGhpcy5yZWxvYWQubmV4dCgpO1xuICAgIH0gY2F0Y2ggKGV4KSB7XG4gICAgICAvLyBkbyBub3RoaW5nXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBkZWxldGUocHJvZmlsZUlkKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuaW52ZW50b3J5U2VydmljZS5kZWxldGUocHJvZmlsZUlkKTtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoZ2V0dGV4dCgnRGV2aWNlIHByb2ZpbGUgZGVsZXRlZC4nKSk7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoZXgpO1xuICAgIH1cbiAgfVxufVxuIiwiPGM4eS10aXRsZT57eyAnRGV2aWNlIHByb2ZpbGVzJyB8IHRyYW5zbGF0ZSB9fTwvYzh5LXRpdGxlPlxuXG48Yzh5LWJyZWFkY3J1bWI+XG4gIDxjOHktYnJlYWRjcnVtYi1pdGVtXG4gICAgaWNvbj1cImM4eS1tYW5hZ2VtZW50XCJcbiAgICBsYWJlbD1cInt7ICdNYW5hZ2VtZW50JyB8IHRyYW5zbGF0ZSB9fVwiXG4gID48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG4gIDxjOHktYnJlYWRjcnVtYi1pdGVtXG4gICAgaWNvbj1cImM4eS1kZXZpY2UtcHJvZmlsZVwiXG4gICAgbGFiZWw9XCJ7eyAnRGV2aWNlIHByb2ZpbGVzJyB8IHRyYW5zbGF0ZSB9fVwiXG4gID48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG48L2M4eS1icmVhZGNydW1iPlxuXG48Yzh5LWFjdGlvbi1iYXItaXRlbSBbcGxhY2VtZW50XT1cIidyaWdodCdcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCJcbiAgICB0aXRsZT1cInt7ICdBZGQgZGV2aWNlIHByb2ZpbGUnIHwgdHJhbnNsYXRlIH19XCJcbiAgICBkYXRhLWN5PVwiZGV2aWNlLXByb2ZpbGUtbGlzdC0tQWRkLWRldmljZS1wcm9maWxlXCJcbiAgICAoY2xpY2spPVwiY3JlYXRlRGV2aWNlUHJvZmlsZSgpXCJcbiAgPlxuICAgIDxpIGM4eUljb249XCJwbHVzLWNpcmNsZVwiPjwvaT5cbiAgICB7eyAnQWRkIGRldmljZSBwcm9maWxlJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cbjxjOHktYWN0aW9uLWJhci1pdGVtIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmtcIlxuICAgIHRpdGxlPVwie3sgJ1JlbG9hZCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgIChjbGljayk9XCJsb2FkRGV2aWNlUHJvZmlsZXMoKVwiXG4gID5cbiAgICA8aVxuICAgICAgYzh5SWNvbj1cInJlZnJlc2hcIlxuICAgICAgW25nQ2xhc3NdPVwieyAnaWNvbi1zcGluJzogcmVsb2FkaW5nIH1cIlxuICAgID48L2k+XG4gICAge3sgJ1JlbG9hZCcgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG5cbjxjOHktaGVscFxuICBzcmM9XCIvZG9jcy9kZXZpY2UtbWFuYWdlbWVudC1hcHBsaWNhdGlvbi9tYW5hZ2luZy1kZXZpY2UtZGF0YS8jbWFuYWdpbmctZGV2aWNlLXByb2ZpbGVzXCJcbj48L2M4eS1oZWxwPlxuXG48Yzh5LXVpLWVtcHR5LXN0YXRlXG4gIFtpY29uXT1cIidjOHktZGV2aWNlLXByb2ZpbGUnXCJcbiAgW3RpdGxlXT1cIidObyBkZXZpY2UgcHJvZmlsZXMgYXZhaWxhYmxlLicgfCB0cmFuc2xhdGVcIlxuICBbc3VidGl0bGVdPVwiJ0FkZCBhIG5ldyBkZXZpY2UgcHJvZmlsZSBieSBjbGlja2luZyBiZWxvdy4nIHwgdHJhbnNsYXRlXCJcbiAgKm5nSWY9XCIoZGV2aWNlUHJvZmlsZXMkIHwgYXN5bmMpPy5kYXRhLmxlbmd0aCA9PT0gMFwiXG4+XG4gIDxwPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgIHRpdGxlPVwie3sgJ0FkZCBkZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgKGNsaWNrKT1cImNyZWF0ZURldmljZVByb2ZpbGUoKVwiXG4gICAgPlxuICAgICAge3sgJ0FkZCBkZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9wPlxuPC9jOHktdWktZW1wdHktc3RhdGU+XG5cbjwhLS0gREVWSUNFIFBST0ZJTEVTIExJU1QgLS0+XG48Yzh5LWxpc3QtZ3JvdXAgY2xhc3M9XCJtLWItMjRcIj5cbiAgPGM4eS1saVxuICAgIGNsYXNzPVwicGFnZS1zdGlja3ktaGVhZGVyIGhpZGRlbi14c1wiXG4gICAgW2VtcHR5QWN0aW9uc109XCJ0cnVlXCJcbiAgICAqbmdJZj1cIihkZXZpY2VQcm9maWxlcyQgfCBhc3luYyk/LmRhdGEubGVuZ3RoID4gMFwiXG4gID5cbiAgICA8Yzh5LWxpLWljb24+XG4gICAgICA8aSBjbGFzcz1cInAtbC0yNFwiPjwvaT5cbiAgICA8L2M4eS1saS1pY29uPlxuICAgIDxjOHktbGktYm9keSBjbGFzcz1cImNvbnRlbnQtZmxleC01MFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XG4gICAgICAgIHt7ICdEZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XG4gICAgICAgIHt7ICdEZXZpY2UgdHlwZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvYzh5LWxpLWJvZHk+XG4gIDwvYzh5LWxpPlxuICA8Yzh5LWxpICpjOHlGb3I9XCJsZXQgZGV2aWNlUHJvZmlsZSBvZiBkZXZpY2VQcm9maWxlcyRcIj5cbiAgICA8Yzh5LWxpLWljb24+XG4gICAgICA8aSBjOHlJY29uPVwiYzh5LWRldmljZS1wcm9maWxlXCI+PC9pPlxuICAgIDwvYzh5LWxpLWljb24+XG5cbiAgICA8Yzh5LWxpLWJvZHkgY2xhc3M9XCJjb250ZW50LWZsZXgtNTBcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJjb2wtNlwiXG4gICAgICAgIHRpdGxlPVwie3sgZGV2aWNlUHJvZmlsZS5uYW1lIH19XCJcbiAgICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYnRuLWNsZWFuIG1heC13aWR0aC1pbmhlcml0XCJcbiAgICAgICAgICByb3V0ZXJMaW5rPVwiL2RldmljZS1wcm9maWxlcy97eyBkZXZpY2VQcm9maWxlLmlkIH19XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC10cnVuY2F0ZVwiPlxuICAgICAgICAgICAge3sgZGV2aWNlUHJvZmlsZS5uYW1lIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImNvbC02XCJcbiAgICAgICAgdGl0bGU9XCJ7eyBkZXZpY2VQcm9maWxlLmM4eV9GaWx0ZXI/LnR5cGUgfHwgJy0nIH19XCJcbiAgICAgID5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInRleHQtbGFiZWwtc21hbGwgbS1yLTQgdmlzaWJsZS14c1wiXG4gICAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgID5cbiAgICAgICAgICBEZXZpY2UgdHlwZVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCJcbiAgICAgICAgICAqbmdJZj1cImRldmljZVByb2ZpbGUuYzh5X0ZpbHRlcj8udHlwZTsgZWxzZSBlbXB0eVRleHRcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgZGV2aWNlUHJvZmlsZS5jOHlfRmlsdGVyPy50eXBlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eVRleHQ+XG4gICAgICAgIDxzbWFsbCBjbGFzcz1cInRleHQtbXV0ZWRcIj5cbiAgICAgICAgICA8ZW0+XG4gICAgICAgICAgICB7eyAnVW5kZWZpbmVkJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvZW0+XG4gICAgICAgIDwvc21hbGw+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvYzh5LWxpLWJvZHk+XG5cbiAgICA8Yzh5LWxpLWFjdGlvblxuICAgICAgaWNvbj1cInBlbmNpbFwiXG4gICAgICByb3V0ZXJMaW5rPVwiL2RldmljZS1wcm9maWxlcy97eyBkZXZpY2VQcm9maWxlLmlkIH19XCJcbiAgICAgIGxhYmVsPVwie3sgJ0VkaXQnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIGRhdGEtY3k9XCJkZXZpY2UtcHJvZmlsZS1saXN0LS1lZGl0XCJcbiAgICAgIGM4eVByb2R1Y3RFeHBlcmllbmNlXG4gICAgICBpbmhlcml0XG4gICAgPjwvYzh5LWxpLWFjdGlvbj5cbiAgICA8Yzh5LWxpLWFjdGlvblxuICAgICAgaWNvbj1cImNvcHlcIlxuICAgICAgKGNsaWNrKT1cImR1cGxpY2F0ZURldmljZVByb2ZpbGUoZGV2aWNlUHJvZmlsZSlcIlxuICAgICAgZGF0YS1jeT1cImRldmljZS1wcm9maWxlLWxpc3QtLWR1cGxpY2F0ZVwiXG4gICAgICBsYWJlbD1cInt7ICdEdXBsaWNhdGUnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIGM4eVByb2R1Y3RFeHBlcmllbmNlXG4gICAgICBpbmhlcml0XG4gICAgPjwvYzh5LWxpLWFjdGlvbj5cbiAgICA8Yzh5LWxpLWFjdGlvblxuICAgICAgaWNvbj1cImRlbGV0ZVwiXG4gICAgICAoY2xpY2spPVwiZGVsZXRlRGV2aWNlUHJvZmlsZShkZXZpY2VQcm9maWxlKVwiXG4gICAgICBkYXRhLWN5PVwiZGV2aWNlLXByb2ZpbGUtbGlzdC0tZGVsZXRlXCJcbiAgICAgIGxhYmVsPVwie3sgJ0RlbGV0ZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICAgIGluaGVyaXRcbiAgICA+PC9jOHktbGktYWN0aW9uPlxuICA8L2M4eS1saT5cbjwvYzh5LWxpc3QtZ3JvdXA+XG4iXX0=
|
|
194
|
+
], template: "<c8y-title>{{ 'Device profiles' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n icon=\"c8y-management\"\n label=\"{{ 'Management' | translate }}\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n icon=\"c8y-device-profile\"\n label=\"{{ 'Device profiles' | translate }}\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add device profile' | translate }}\"\n data-cy=\"device-profile-list--Add-device-profile\"\n (click)=\"createDeviceProfile()\"\n >\n <i c8yIcon=\"plus-circle\"></i>\n {{ 'Add device profile' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/managing-device-data/#managing-device-profiles\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-data-grid\n [title]=\"'Device profiles' | translate\"\n [refresh]=\"refresh$\"\n [pagination]=\"pagination\"\n [columns]=\"columns\"\n [actionControls]=\"actionControls\"\n [infiniteScroll]=\"'auto'\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n >\n <c8y-ui-empty-state\n [icon]=\"stats?.size > 0 ? 'search' : 'c8y-tools'\"\n [title]=\"stats?.size > 0 ? (noResultsMessage | translate) : (noDataMessage | translate)\"\n [subtitle]=\"stats?.size > 0 ? (noResultsSubtitle | translate) : (noDataSubtitle | translate)\"\n *emptyStateContext=\"let stats\"\n [horizontal]=\"stats?.size > 0\"\n >\n <p *ngIf=\"stats?.size === 0\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add device profile' | translate }}\"\n type=\"button\"\n (click)=\"createDeviceProfile()\"\n >\n {{ 'Add device profile' | translate }}\n </button>\n </p>\n </c8y-ui-empty-state>\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n </c8y-data-grid>\n</div>\n" }]
|
|
195
|
+
}], ctorParameters: () => [{ type: i1.RepositoryService }, { type: i2.DataGridService }, { type: i2.ModalService }, { type: i3.BsModalService }, { type: i4.TranslateService }, { type: i2.AlertService }, { type: i5.Router }, { type: i5.ActivatedRoute }, { type: i6.DeviceProfileService }] });
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLXByb2ZpbGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9kZXZpY2UtcHJvZmlsZS9kZXZpY2UtcHJvZmlsZS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL2RldmljZS1wcm9maWxlL2RldmljZS1wcm9maWxlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekQsT0FBTyxFQUVMLFlBQVksRUFDWixpQkFBaUIsRUFFakIsZUFBZSxFQUVmLE9BQU8sRUFDUCxZQUFZLEVBQ1osK0JBQStCLEVBSS9CLE1BQU0sRUFDUCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsNEJBQTRCLEVBQzVCLGlCQUFpQixFQUNqQixjQUFjLEVBQ2YsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBWWhFLE1BQU0sT0FB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QkFBeUIsYUFFeEI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLCtCQUErQjs0QkFDeEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMkJBQTJCLENBQUM7eUJBQzFEO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCwgSVJlc3VsdExpc3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBBY3Rpb25Db250cm9sLFxuICBBbGVydFNlcnZpY2UsXG4gIEJ1aWx0SW5BY3Rpb25UeXBlLFxuICBDb2x1bW4sXG4gIERhdGFHcmlkU2VydmljZSxcbiAgRGF0YVNvdXJjZU1vZGlmaWVyLFxuICBnZXR0ZXh0LFxuICBNb2RhbFNlcnZpY2UsXG4gIFBST0RVQ1RfRVhQRVJJRU5DRV9FVkVOVF9TT1VSQ0UsXG4gIFByb2R1Y3RFeHBlcmllbmNlRXZlbnQsXG4gIFNlcnZlclNpZGVEYXRhQ2FsbGJhY2ssXG4gIFNlcnZlclNpZGVEYXRhUmVzdWx0LFxuICBTdGF0dXNcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQge1xuICBEZXZpY2VUeXBlR3JpZENvbHVtbixcbiAgUmVwb3NpdG9yeUl0ZW1OYW1lR3JpZENvbHVtbixcbiAgUmVwb3NpdG9yeVNlcnZpY2UsXG4gIFJlcG9zaXRvcnlUeXBlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS9zaGFyZWQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBZGREZXZpY2VQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9hZGQtZGV2aWNlLXByb2ZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRSB9IGZyb20gJy4vZGV2aWNlLXByb2ZpbGUubW9kZWwnO1xuaW1wb3J0IHsgRGV2aWNlUHJvZmlsZVNlcnZpY2UgfSBmcm9tICcuL2RldmljZS1wcm9maWxlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktZGV2aWNlLXByb2ZpbGUtbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXZpY2UtcHJvZmlsZS1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogUFJPRFVDVF9FWFBFUklFTkNFX0VWRU5UX1NPVVJDRSxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERldmljZVByb2ZpbGVMaXN0Q29tcG9uZW50KVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEZXZpY2VQcm9maWxlTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNpemVSZXF1ZXN0OiBQcm9taXNlPG51bWJlcj47XG4gIHNpemVSZXF1ZXN0RG9uZSA9IGZhbHNlO1xuICByZWZyZXNoJDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBpc0RhdGFQcmVzZW50JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IGZyb20oXG4gICAgdGhpcy5yZXBvc2l0b3J5U2VydmljZS5saXN0UmVwb3NpdG9yeUVudHJpZXMoUmVwb3NpdG9yeVR5cGUuUFJPRklMRSwgeyBza2lwTGVnYWN5OiB0cnVlIH0pXG4gICkucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhLmxlbmd0aCA+IDApKTtcblxuICBjb2x1bW5zOiBDb2x1bW5bXSA9IFtcbiAgICBuZXcgUmVwb3NpdG9yeUl0ZW1OYW1lR3JpZENvbHVtbih7XG4gICAgICBmaWx0ZXJMYWJlbDogZ2V0dGV4dCgnRmlsdGVyIGRldmljZSBwcm9maWxlIGJ5IG5hbWUnKSxcbiAgICAgIHBsYWNlaG9sZGVyOiBnZXR0ZXh0KCd1YnVudHUgY29yZScpXG4gICAgfSksXG4gICAgbmV3IERldmljZVR5cGVHcmlkQ29sdW1uKHsgZmlsdGVyTGFiZWw6IGdldHRleHQoJ0ZpbHRlciBkZXZpY2UgcHJvZmlsZSBieSBkZXZpY2UgdHlwZScpIH0pXG4gIF07XG4gIGFjdGlvbkNvbnRyb2xzOiBBY3Rpb25Db250cm9sW10gPSBbXTtcbiAgc2VydmVyU2lkZURhdGFDYWxsYmFjazogU2VydmVyU2lkZURhdGFDYWxsYmFjaztcbiAgcGFnaW5hdGlvbiA9IHtcbiAgICBwYWdlU2l6ZTogNTAsXG4gICAgY3VycmVudFBhZ2U6IDFcbiAgfTtcbiAgcHJvZHVjdEV4cGVyaWVuY2VFdmVudDogUHJvZHVjdEV4cGVyaWVuY2VFdmVudCA9IHtcbiAgICBldmVudE5hbWU6IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRS5FVkVOVFMuUkVQT1NJVE9SWSxcbiAgICBkYXRhOiB7XG4gICAgICBjb21wb25lbnQ6IFBST0RVQ1RfRVhQRVJJRU5DRV9ERVZJQ0VfUFJPRklMRS5DT01QT05FTlRTLkRFVklDRV9QUk9GSUxFX0xJU1RcbiAgICB9XG4gIH07XG5cbiAgbm9SZXN1bHRzTWVzc2FnZSA9IGdldHRleHQoJ05vIHJlc3VsdHMgdG8gZGlzcGxheS4nKTtcbiAgbm9EYXRhTWVzc2FnZSA9IGdldHRleHQoJ05vIGRldmljZSBwcm9maWxlcyB0byBkaXNwbGF5LicpO1xuICBub1Jlc3VsdHNTdWJ0aXRsZSA9IGdldHRleHQoJ1JlZmluZSB5b3VyIHNlYXJjaCB0ZXJtcyBvciBjaGVjayB5b3VyIHNwZWxsaW5nLicpO1xuICBub0RhdGFTdWJ0aXRsZSA9IGdldHRleHQoJ0FkZCBhIG5ldyBkZXZpY2UgcHJvZmlsZSBieSBjbGlja2luZyBiZWxvdy4nKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlcG9zaXRvcnlTZXJ2aWNlOiBSZXBvc2l0b3J5U2VydmljZSxcbiAgICBwcml2YXRlIGdyaWRTZXJ2aWNlOiBEYXRhR3JpZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE1vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIGJzTW9kYWxTZXJ2aWNlOiBCc01vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgZGV2aWNlUHJvZmlsZVNlcnZpY2U6IERldmljZVByb2ZpbGVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc2VydmVyU2lkZURhdGFDYWxsYmFjayA9IHRoaXMub25EYXRhU291cmNlTW9kaWZpZXIuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aW9uQ29udHJvbHMucHVzaCh7XG4gICAgICB0eXBlOiBCdWlsdEluQWN0aW9uVHlwZS5FZGl0LFxuICAgICAgY2FsbGJhY2s6IHRoaXMuZWRpdERldmljZVByb2ZpbGUuYmluZCh0aGlzKVxuICAgIH0pO1xuICAgIHRoaXMuYWN0aW9uQ29udHJvbHMucHVzaCh7XG4gICAgICB0eXBlOiAnZHVwbGljYXRlJyxcbiAgICAgIGljb246ICdjb3B5JyxcbiAgICAgIHRleHQ6IGdldHRleHQoJ0R1cGxpY2F0ZScpLFxuICAgICAgY2FsbGJhY2s6IHRoaXMuZHVwbGljYXRlRGV2aWNlUHJvZmlsZS5iaW5kKHRoaXMpXG4gICAgfSk7XG4gICAgdGhpcy5hY3Rpb25Db250cm9scy5wdXNoKHtcbiAgICAgIHR5cGU6IEJ1aWx0SW5BY3Rpb25UeXBlLkRlbGV0ZSxcbiAgICAgIGNhbGxiYWNrOiB0aGlzLmRlbGV0ZURldmljZVByb2ZpbGUuYmluZCh0aGlzKVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgb25EYXRhU291cmNlTW9kaWZpZXIoXG4gICAgZGF0YVNvdXJjZU1vZGlmaWVyOiBEYXRhU291cmNlTW9kaWZpZXJcbiAgKTogUHJvbWlzZTxTZXJ2ZXJTaWRlRGF0YVJlc3VsdD4ge1xuICAgIGNvbnN0IGRhdGFSZXF1ZXN0OiBQcm9taXNlPElSZXN1bHRMaXN0PElNYW5hZ2VkT2JqZWN0Pj4gPVxuICAgICAgdGhpcy5yZXBvc2l0b3J5U2VydmljZS5saXN0UmVwb3NpdG9yeUVudHJpZXMoUmVwb3NpdG9yeVR5cGUuUFJPRklMRSwge1xuICAgICAgICBxdWVyeTogdGhpcy5ncmlkU2VydmljZS5nZXRRdWVyeU9iaihkYXRhU291cmNlTW9kaWZpZXIuY29sdW1ucyksXG4gICAgICAgIHNraXBEZWZhdWx0T3JkZXI6IHRydWUsXG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIHBhZ2VTaXplOiBkYXRhU291cmNlTW9kaWZpZXIucGFnaW5hdGlvbi5wYWdlU2l6ZSxcbiAgICAgICAgICBjdXJyZW50UGFnZTogZGF0YVNvdXJjZU1vZGlmaWVyLnBhZ2luYXRpb24uY3VycmVudFBhZ2VcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBjb25zdCBmaWx0ZXJlcmRTaXplUmVxdWVzdDogUHJvbWlzZTxudW1iZXI+ID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZVxuICAgICAgLmxpc3RSZXBvc2l0b3J5RW50cmllcyhSZXBvc2l0b3J5VHlwZS5QUk9GSUxFLCB7XG4gICAgICAgIHNraXBEZWZhdWx0T3JkZXI6IHRydWUsXG4gICAgICAgIHF1ZXJ5OiB0aGlzLmdyaWRTZXJ2aWNlLmdldFF1ZXJ5T2JqKGRhdGFTb3VyY2VNb2RpZmllci5jb2x1bW5zKSxcbiAgICAgICAgcGFyYW1zOiB7IHBhZ2VTaXplOiAxIH1cbiAgICAgIH0pXG4gICAgICAudGhlbihyZXNwb25zZSA9PiByZXNwb25zZT8ucGFnaW5nPy50b3RhbFBhZ2VzKTtcblxuICAgIHRoaXMuc2l6ZVJlcXVlc3QgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlXG4gICAgICAubGlzdFJlcG9zaXRvcnlFbnRyaWVzKFJlcG9zaXRvcnlUeXBlLlBST0ZJTEUsIHtcbiAgICAgICAgc2tpcERlZmF1bHRPcmRlcjogdHJ1ZSxcbiAgICAgICAgcGFyYW1zOiB7IHBhZ2VTaXplOiAxIH1cbiAgICAgIH0pXG4gICAgICAudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgIHRoaXMuc2l6ZVJlcXVlc3REb25lID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlPy5wYWdpbmc/LnRvdGFsUGFnZXM7XG4gICAgICB9KTtcblxuICAgIGNvbnN0IFtkYXRhUmVzcG9uc2UsIHNpemUsIGZpbHRlcmVkU2l6ZV0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICBkYXRhUmVxdWVzdCxcbiAgICAgIHRoaXMuc2l6ZVJlcXVlc3QsXG4gICAgICBmaWx0ZXJlcmRTaXplUmVxdWVzdFxuICAgIF0pO1xuXG4gICAgY29uc3QgeyByZXMsIGRhdGEsIHBhZ2luZyB9ID0gZGF0YVJlc3BvbnNlO1xuXG4gICAgY29uc3Qgc2VydmVyU2lkZURhdGFSZXN1bHQ6IFNlcnZlclNpZGVEYXRhUmVzdWx0ID0ge1xuICAgICAgcmVzLFxuICAgICAgZGF0YSxcbiAgICAgIHBhZ2luZyxcbiAgICAgIGZpbHRlcmVkU2l6ZSxcbiAgICAgIHNpemVcbiAgICB9O1xuXG4gICAgcmV0dXJuIHNlcnZlclNpZGVEYXRhUmVzdWx0O1xuICB9XG5cbiAgZWRpdERldmljZVByb2ZpbGUoZGV2aWNlUHJvZmlsZTogUGFydGlhbDxJTWFuYWdlZE9iamVjdD4pIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZGV2aWNlUHJvZmlsZS5pZF0sIHsgcmVsYXRpdmVUbzogdGhpcy5hY3RpdmF0ZWRSb3V0ZSB9KTtcbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZURldmljZVByb2ZpbGUoKSB7XG4gICAgY29uc3QgbW9kYWwgPSB0aGlzLmJzTW9kYWxTZXJ2aWNlLnNob3coQWRkRGV2aWNlUHJvZmlsZUNvbXBvbmVudCwge1xuICAgICAgY2xhc3M6ICdtb2RhbC1zbScsXG4gICAgICBhcmlhRGVzY3JpYmVkYnk6ICdhZGREZXZpY2VQcm9maWxlTW9kYWxEZXNjcmlwdGlvbicsXG4gICAgICBhcmlhTGFiZWxsZWRCeTogJ2FkZERldmljZVByb2ZpbGVNb2RhbFRpdGxlJyxcbiAgICAgIGlnbm9yZUJhY2tkcm9wQ2xpY2s6IHRydWUsXG4gICAgICBrZXlib2FyZDogZmFsc2UsXG4gICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgcHJvZHVjdEV4cGVyaWVuY2VFdmVudDoge1xuICAgICAgICAgIC4uLnRoaXMucHJvZHVjdEV4cGVyaWVuY2VFdmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAuLi50aGlzLnByb2R1Y3RFeHBlcmllbmNlRXZlbnQuZGF0YSxcbiAgICAgICAgICAgIGNvbXBvbmVudDogUFJPRFVDVF9FWFBFUklFTkNFX0RFVklDRV9QUk9GSUxFLkNPTVBPTkVOVFMuQUREX0RFVklDRV9QUk9GSUxFXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSkuY29udGVudCBhcyBBZGREZXZpY2VQcm9maWxlQ29tcG9uZW50O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwcm9maWxlSWQgPSBhd2FpdCBtb2RhbC5yZXN1bHQ7XG4gICAgICBtb2RhbC5jbG9zZSgpO1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChgL2RldmljZS1wcm9maWxlcy8ke3Byb2ZpbGVJZH1gKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgLy8gZG8gbm90aGluZ1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGR1cGxpY2F0ZURldmljZVByb2ZpbGUoZGV2aWNlUHJvZmlsZSkge1xuICAgIGNvbnN0IGNvcHkgPSBjbG9uZURlZXAoZGV2aWNlUHJvZmlsZSk7XG4gICAgY29weS5pZCA9IG51bGw7XG4gICAgY29weS5uYW1lID0gJ0R1cGxpY2F0ZSBvZiAnICsgZGV2aWNlUHJvZmlsZS5uYW1lO1xuICAgIGNvbnN0IG1vID0gKGF3YWl0IHRoaXMuZGV2aWNlUHJvZmlsZVNlcnZpY2UuY3JlYXRlRGV2aWNlUHJvZmlsZShjb3B5KSkuZGF0YTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGAvZGV2aWNlLXByb2ZpbGVzLyR7bW8uaWR9YCk7XG4gIH1cblxuICBhc3luYyBkZWxldGVEZXZpY2VQcm9maWxlKGRldmljZVByb2ZpbGUpIHtcbiAgICBjb25zdCBkZXZpY2VQcm9maWxlTmFtZSA9IGRldmljZVByb2ZpbGUubmFtZTtcbiAgICBjb25zdCB0aXRsZSA9IGdldHRleHQoJ0RlbGV0ZSBkZXZpY2UgcHJvZmlsZScpO1xuICAgIGNvbnN0IGNvbmZpcm1hdGlvblRleHQgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgIGdldHRleHQoJ1lvdSBhcmUgYWJvdXQgdG8gZGVsZXRlIGEgZGV2aWNlIHByb2ZpbGUgXCJ7eyBkZXZpY2VQcm9maWxlTmFtZSB9fVwiLicpLFxuICAgICAgeyBkZXZpY2VQcm9maWxlTmFtZSB9XG4gICAgKTtcbiAgICBjb25zdCBmaW5hbFF1ZXN0aW9uID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZ2V0dGV4dCgnRG8geW91IHdhbnQgdG8gcHJvY2VlZD8nKSk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubW9kYWxTZXJ2aWNlLmNvbmZpcm0oXG4gICAgICAgIHRpdGxlLFxuICAgICAgICBgJHtjb25maXJtYXRpb25UZXh0fSAke2ZpbmFsUXVlc3Rpb259YCxcbiAgICAgICAgU3RhdHVzLkRBTkdFUixcbiAgICAgICAge1xuICAgICAgICAgIG9rOiBnZXR0ZXh0KCdEZWxldGUnKVxuICAgICAgICB9LFxuICAgICAgICB7fSxcbiAgICAgICAgdGhpcy5wcm9kdWN0RXhwZXJpZW5jZUV2ZW50XG4gICAgICApO1xuICAgICAgYXdhaXQgdGhpcy5kZWxldGUoZGV2aWNlUHJvZmlsZS5pZCk7XG4gICAgICB0aGlzLnJlZnJlc2gkLm5leHQoKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgLy8gZG8gbm90aGluZ1xuICAgIH1cbiAgfVxuXG4gIHRyYWNrQnlOYW1lKF9pbmRleCwgY29sdW1uOiBDb2x1bW4pOiBzdHJpbmcge1xuICAgIHJldHVybiBjb2x1bW4ubmFtZTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZGVsZXRlKHByb2ZpbGVJZCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmRlbGV0ZShwcm9maWxlSWQpO1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2VzcyhnZXR0ZXh0KCdEZXZpY2UgcHJvZmlsZSBkZWxldGVkLicpKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkU2VydmVyRmFpbHVyZShleCk7XG4gICAgfVxuICB9XG59XG4iLCI8Yzh5LXRpdGxlPnt7ICdEZXZpY2UgcHJvZmlsZXMnIHwgdHJhbnNsYXRlIH19PC9jOHktdGl0bGU+XG5cbjxjOHktYnJlYWRjcnVtYj5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBpY29uPVwiYzh5LW1hbmFnZW1lbnRcIlxuICAgIGxhYmVsPVwie3sgJ01hbmFnZW1lbnQnIHwgdHJhbnNsYXRlIH19XCJcbiAgPjwvYzh5LWJyZWFkY3J1bWItaXRlbT5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBpY29uPVwiYzh5LWRldmljZS1wcm9maWxlXCJcbiAgICBsYWJlbD1cInt7ICdEZXZpY2UgcHJvZmlsZXMnIHwgdHJhbnNsYXRlIH19XCJcbiAgPjwvYzh5LWJyZWFkY3J1bWItaXRlbT5cbjwvYzh5LWJyZWFkY3J1bWI+XG5cbjxjOHktYWN0aW9uLWJhci1pdGVtIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmtcIlxuICAgIHRpdGxlPVwie3sgJ0FkZCBkZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgIGRhdGEtY3k9XCJkZXZpY2UtcHJvZmlsZS1saXN0LS1BZGQtZGV2aWNlLXByb2ZpbGVcIlxuICAgIChjbGljayk9XCJjcmVhdGVEZXZpY2VQcm9maWxlKClcIlxuICA+XG4gICAgPGkgYzh5SWNvbj1cInBsdXMtY2lyY2xlXCI+PC9pPlxuICAgIHt7ICdBZGQgZGV2aWNlIHByb2ZpbGUnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuXG48Yzh5LWhlbHBcbiAgc3JjPVwiL2RvY3MvZGV2aWNlLW1hbmFnZW1lbnQtYXBwbGljYXRpb24vbWFuYWdpbmctZGV2aWNlLWRhdGEvI21hbmFnaW5nLWRldmljZS1wcm9maWxlc1wiXG4+PC9jOHktaGVscD5cblxuPGRpdiBjbGFzcz1cImNvbnRlbnQtZnVsbHBhZ2UgYm9yZGVyLXRvcCBib3JkZXItYm90dG9tXCI+XG4gIDxjOHktZGF0YS1ncmlkXG4gICAgW3RpdGxlXT1cIidEZXZpY2UgcHJvZmlsZXMnIHwgdHJhbnNsYXRlXCJcbiAgICBbcmVmcmVzaF09XCJyZWZyZXNoJFwiXG4gICAgW3BhZ2luYXRpb25dPVwicGFnaW5hdGlvblwiXG4gICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXG4gICAgW2FjdGlvbkNvbnRyb2xzXT1cImFjdGlvbkNvbnRyb2xzXCJcbiAgICBbaW5maW5pdGVTY3JvbGxdPVwiJ2F1dG8nXCJcbiAgICBbc2VydmVyU2lkZURhdGFDYWxsYmFja109XCJzZXJ2ZXJTaWRlRGF0YUNhbGxiYWNrXCJcbiAgPlxuICAgIDxjOHktdWktZW1wdHktc3RhdGVcbiAgICAgIFtpY29uXT1cInN0YXRzPy5zaXplID4gMCA/ICdzZWFyY2gnIDogJ2M4eS10b29scydcIlxuICAgICAgW3RpdGxlXT1cInN0YXRzPy5zaXplID4gMCA/IChub1Jlc3VsdHNNZXNzYWdlIHwgdHJhbnNsYXRlKSA6IChub0RhdGFNZXNzYWdlIHwgdHJhbnNsYXRlKVwiXG4gICAgICBbc3VidGl0bGVdPVwic3RhdHM/LnNpemUgPiAwID8gKG5vUmVzdWx0c1N1YnRpdGxlIHwgdHJhbnNsYXRlKSA6IChub0RhdGFTdWJ0aXRsZSB8IHRyYW5zbGF0ZSlcIlxuICAgICAgKmVtcHR5U3RhdGVDb250ZXh0PVwibGV0IHN0YXRzXCJcbiAgICAgIFtob3Jpem9udGFsXT1cInN0YXRzPy5zaXplID4gMFwiXG4gICAgPlxuICAgICAgPHAgKm5nSWY9XCJzdGF0cz8uc2l6ZSA9PT0gMFwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgICAgICAgIHRpdGxlPVwie3sgJ0FkZCBkZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJjcmVhdGVEZXZpY2VQcm9maWxlKClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgJ0FkZCBkZXZpY2UgcHJvZmlsZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3A+XG4gICAgPC9jOHktdWktZW1wdHktc3RhdGU+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrQnk6IHRyYWNrQnlOYW1lXCI+XG4gICAgICA8Yzh5LWNvbHVtbiBbbmFtZV09XCJjb2x1bW4ubmFtZVwiPjwvYzh5LWNvbHVtbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9jOHktZGF0YS1ncmlkPlxuPC9kaXY+XG4iXX0=
|
package/esm2022/protocol-lwm2m/components/configuration/typed-forms/firmware-settings.component.mjs
CHANGED
|
@@ -82,7 +82,16 @@ export class Lwm2mFormFirmwareSettings extends Lwm2mFormWrapperBase {
|
|
|
82
82
|
expressions: {
|
|
83
83
|
hide: 'model.disableFirmwareStateMachine'
|
|
84
84
|
}
|
|
85
|
-
}))
|
|
85
|
+
})),
|
|
86
|
+
{
|
|
87
|
+
key: 'failOnStateAndResultIncompatibility',
|
|
88
|
+
type: 'switch',
|
|
89
|
+
defaultValue: false,
|
|
90
|
+
props: {
|
|
91
|
+
label: gettext('Fail device firmware update on unexpected result'),
|
|
92
|
+
description: gettext('If the configuration is enabled, the firmware update operation will fail if the update result (resource 5) is not as expected based on the LWM2M firmware state machine.')
|
|
93
|
+
}
|
|
94
|
+
}
|
|
86
95
|
]
|
|
87
96
|
}
|
|
88
97
|
];
|
|
@@ -94,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
94
103
|
type: Component,
|
|
95
104
|
args: [{ imports: [CoreModule, Lwm2mUIThemeModule], standalone: true, selector: 'c8y-lwm2m-form-firmware-settings', template: "<formly-form\n *ngIf=\"fields?.length > 0; else empty\"\n [model]=\"model\"\n [form]=\"form\"\n [fields]=\"fields\"\n [options]=\"options\"\n data-cy=\"lwm2m-device-configuration--formly-form\"\n></formly-form>\n<ng-template #empty>\n <c8y-ui-empty-state\n [icon]=\"'c8y-device-protocols'\"\n title=\"{{ 'No configuration selected' | translate }}\"\n subtitle=\"{{ 'Select a configuration on the left' | translate }}\"\n ></c8y-ui-empty-state>\n</ng-template>\n" }]
|
|
96
105
|
}], ctorParameters: () => [{ type: i1.Lwm2mConfigurationService }] });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlybXdhcmUtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vY29tcG9uZW50cy9jb25maWd1cmF0aW9uL3R5cGVkLWZvcm1zL2Zpcm13YXJlLXNldHRpbmdzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb3RvY29sLWx3bTJtL2NvbXBvbmVudHMvY29uZmlndXJhdGlvbi90eXBlZC1mb3Jtcy9mb3JtLXdyYXBwZXItYmFzZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDL0UsT0FBTyxFQUNMLGFBQWEsRUFDYixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLDJCQUEyQixFQUU1QixNQUFNLDBDQUEwQyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7QUFReEYsTUFBTSxPQUFPLHlCQUEwQixTQUFRLG9CQUFzQztJQUVuRixZQUFzQixPQUFvRDtRQUN4RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFESyxZQUFPLEdBQVAsT0FBTyxDQUE2QztRQURoRSxhQUFRLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUc1QyxDQUFDO0lBRUQsVUFBVTtRQUNSLE1BQU0sT0FBTyxHQUFHO1lBQ2Q7Z0JBQ0UsR0FBRyxFQUFFLHdCQUF3QjtnQkFDN0IsS0FBSyxFQUFFLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQztnQkFDOUMsS0FBSyxFQUFFLGtCQUFrQjthQUMxQjtZQUNEO2dCQUNFLEdBQUcsRUFBRSx5QkFBeUI7Z0JBQzlCLEtBQUssRUFBRSxPQUFPLENBQUMsd0NBQXdDLENBQUM7Z0JBQ3hELEtBQUssRUFBRSwyQkFBMkI7YUFDbkM7WUFDRDtnQkFDRSxHQUFHLEVBQUUsYUFBYTtnQkFDbEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQztnQkFDOUMsS0FBSyxFQUFFLGtCQUFrQjthQUMxQjtTQUNGLENBQUM7UUFDRixPQUFPO1lBQ0w7Z0JBQ0UsVUFBVSxFQUFFO29CQUNWO3dCQUNFLEdBQUcsRUFBRSw2QkFBNkI7d0JBQ2xDLElBQUksRUFBRSxRQUFRO3dCQUNkLFlBQVksRUFBRSxLQUFLO3dCQUNuQixLQUFLLEVBQUU7NEJBQ0wsS0FBSyxFQUFFLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQzs0QkFDM0QsV0FBVyxFQUFFLE9BQU8sQ0FBQyxzREFBc0QsQ0FBQzt5QkFDN0U7cUJBQ0Y7b0JBQ0Q7d0JBQ0UsR0FBRyxFQUFFLEtBQUs7d0JBQ1YsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsS0FBSyxFQUFFOzRCQUNMLEtBQUssRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUM7NEJBQ2xDLFdBQVcsRUFBRSxvQkFBb0I7NEJBQ2pDLFdBQVcsRUFBRSxPQUFPLENBQUMsaURBQWlELENBQUM7eUJBQ3hFO3dCQUNELFdBQVcsRUFBRTs0QkFDWCxJQUFJLEVBQUUsbUNBQW1DO3lCQUMxQztxQkFDRjtvQkFDRDt3QkFDRSxHQUFHLEVBQUUsMEJBQTBCO3dCQUMvQixJQUFJLEVBQUUsUUFBUTt3QkFDZCxZQUFZLEVBQUUsS0FBSzt3QkFDbkIsS0FBSyxFQUFFOzRCQUNMLEtBQUssRUFBRSxPQUFPLENBQUMscUNBQXFDLENBQUM7NEJBQ3JELFdBQVcsRUFBRSxPQUFPLENBQ2xCLHdHQUF3RyxDQUN6Rzt5QkFDRjt3QkFDRCxXQUFXLEVBQUU7NEJBQ1gsSUFBSSxFQUFFLG1DQUFtQzt5QkFDMUM7cUJBQ0Y7b0JBQ0QsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDeEIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHO3dCQUNmLElBQUksRUFBRSxRQUFRO3dCQUNkLEtBQUssRUFBRTs0QkFDTCxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7NEJBQ25CLFdBQVcsRUFBRSxPQUFPLENBQUMsc0JBQXNCLENBQUM7NEJBQzVDLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDOzRCQUM1RSxlQUFlLEVBQUUsSUFBSTs0QkFDckIsbUJBQW1CLEVBQUUsSUFBSTt5QkFDMUI7d0JBQ0QsV0FBVyxFQUFFOzRCQUNYLElBQUksRUFBRSxtQ0FBbUM7eUJBQzFDO3FCQUNGLENBQUMsQ0FBQztvQkFDSDt3QkFDRSxHQUFHLEVBQUUscUNBQXFDO3dCQUMxQyxJQUFJLEVBQUUsUUFBUTt3QkFDZCxZQUFZLEVBQUUsS0FBSzt3QkFDbkIsS0FBSyxFQUFFOzRCQUNMLEtBQUssRUFBRSxPQUFPLENBQUMsa0RBQWtELENBQUM7NEJBQ2xFLFdBQVcsRUFBRSxPQUFPLENBQ2xCLDBLQUEwSyxDQUMzSzt5QkFDRjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7OEdBMUZVLHlCQUF5QjtrR0FBekIseUJBQXlCLG1IQ25CdEMsZ2VBZUEsMkNEQVksVUFBVSwyZEFBRSxrQkFBa0I7OzJGQUk3Qix5QkFBeUI7a0JBTnJDLFNBQVM7OEJBRUMsQ0FBQyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsY0FDN0IsSUFBSSxZQUNOLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgTHdtMm1VSVRoZW1lTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9wcm90b2NvbC1sd20ybS9mb3JtbHknO1xuaW1wb3J0IHtcbiAgTFdNMk1FbmRwb2ludCxcbiAgRldVX0RlbGl2ZXJ5TWV0aG9kLFxuICBGV1VfUmVzZXRNZWNoYW5pc20sXG4gIEZXVV9TdXBwb3J0ZWREZXZpY2VQcm90b2NvbCxcbiAgRmlybXdhcmVTZXR0aW5nc1xufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL3Byb3RvY29sLWx3bTJtL21vZGVsJztcbmltcG9ydCB7IEx3bTJtRm9ybVdyYXBwZXJCYXNlIH0gZnJvbSAnLi9mb3JtLXdyYXBwZXItYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHdtMm1Db25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvcHJvdG9jb2wtbHdtMm0vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0td3JhcHBlci1iYXNlLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEx3bTJtVUlUaGVtZU1vZHVsZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnYzh5LWx3bTJtLWZvcm0tZmlybXdhcmUtc2V0dGluZ3MnXG59KVxuZXhwb3J0IGNsYXNzIEx3bTJtRm9ybUZpcm13YXJlU2V0dGluZ3MgZXh0ZW5kcyBMd20ybUZvcm1XcmFwcGVyQmFzZTxGaXJtd2FyZVNldHRpbmdzPiB7XG4gIHByb3RlY3RlZCBlbmRwb2ludCA9IExXTTJNRW5kcG9pbnQuZmlybXdhcmU7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzZXJ2aWNlOiBMd20ybUNvbmZpZ3VyYXRpb25TZXJ2aWNlPEZpcm13YXJlU2V0dGluZ3M+KSB7XG4gICAgc3VwZXIoc2VydmljZSk7XG4gIH1cblxuICBjcmVhdGVGb3JtKCkge1xuICAgIGNvbnN0IHNlbGVjdHMgPSBbXG4gICAgICB7XG4gICAgICAgIGtleTogJ2Zpcm13YXJlRGVsaXZlcnlNZXRob2QnLFxuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnVXBkYXRlYHZlcmJgIGRlbGl2ZXJ5IG1ldGhvZCcpLFxuICAgICAgICBfZW51bTogRldVX0RlbGl2ZXJ5TWV0aG9kXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdzdXBwb3J0ZWREZXZpY2VQcm90b2NvbCcsXG4gICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdVcGRhdGVgdmVyYmAgc3VwcG9ydGVkIGRldmljZSBwcm90b2NvbCcpLFxuICAgICAgICBfZW51bTogRldVX1N1cHBvcnRlZERldmljZVByb3RvY29sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdyZXNldE1ldGhvZCcsXG4gICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdVcGRhdGVgdmVyYmAgcmVzZXQgbWVjaGFuaXNtJyksXG4gICAgICAgIF9lbnVtOiBGV1VfUmVzZXRNZWNoYW5pc21cbiAgICAgIH1cbiAgICBdO1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIGZpZWxkR3JvdXA6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBrZXk6ICdkaXNhYmxlRmlybXdhcmVTdGF0ZU1hY2hpbmUnLFxuICAgICAgICAgICAgdHlwZTogJ3N3aXRjaCcsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0Rpc2FibGUgYXV0b21hdGVkIGZpcm13YXJlIHVwZGF0ZSBzdXBwb3J0JyksXG4gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdUdXJucyBvZmYgdGhlIGludGVybmFsIGZpcm13YXJlIHVwZGF0ZSBzdGF0ZSBtYWNoaW5lJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ3VybCcsXG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdVcGRhdGVgbm91bmAgVVJMJyksXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnZmlybXdhcmUtaW1hZ2UtdXJsJyxcbiAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGdldHRleHQoJ0lmIG5vdCBzcGVjaWZpZWQsIExXTTJNIEFnZW50IGdlbmVyYXRlcyB0aGUgVVJMJylcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHByZXNzaW9uczoge1xuICAgICAgICAgICAgICBoaWRlOiAnbW9kZWwuZGlzYWJsZUZpcm13YXJlU3RhdGVNYWNoaW5lJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAga2V5OiAncmVzZXRTdGF0ZU1hY2hpbmVPblN0YXJ0JyxcbiAgICAgICAgICAgIHR5cGU6ICdzd2l0Y2gnLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdBbHdheXMgcmVzZXQgZmlybXdhcmUgc3RhdGUgbWFjaGluZScpLFxuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dChcbiAgICAgICAgICAgICAgICAnQ29udHJvbHMgaWYgdGhlIExXTTJNIEFnZW50IHBlcmZvcm1zIGFuIGluaXRpYWwgc3RhdGUgbWFjaGluZSByZXNldCBiZWZvcmUgaXQgc3RhcnRzIGEgZmlybXdhcmUgdXBkYXRlJ1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhwcmVzc2lvbnM6IHtcbiAgICAgICAgICAgICAgaGlkZTogJ21vZGVsLmRpc2FibGVGaXJtd2FyZVN0YXRlTWFjaGluZSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLnNlbGVjdHMubWFwKHNlbGVjdCA9PiAoe1xuICAgICAgICAgICAga2V5OiBzZWxlY3Qua2V5LFxuICAgICAgICAgICAgdHlwZTogJ3NlbGVjdCcsXG4gICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICBsYWJlbDogc2VsZWN0LmxhYmVsLFxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogZ2V0dGV4dCgnRGVmYXVsdCBkZXZpY2UgdmFsdWUnKSxcbiAgICAgICAgICAgICAgb3B0aW9uczogT2JqZWN0LnZhbHVlcyhzZWxlY3QuX2VudW0pLm1hcCh2YWx1ZSA9PiAoeyBsYWJlbDogdmFsdWUsIHZhbHVlIH0pKSxcbiAgICAgICAgICAgICAgYWNjZXB0VW5kZWZpbmVkOiB0cnVlLFxuICAgICAgICAgICAgICByZW1vdmVFeGVtcGxpR3JhdGlhOiB0cnVlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhwcmVzc2lvbnM6IHtcbiAgICAgICAgICAgICAgaGlkZTogJ21vZGVsLmRpc2FibGVGaXJtd2FyZVN0YXRlTWFjaGluZSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSksXG4gICAgICAgICAge1xuICAgICAgICAgICAga2V5OiAnZmFpbE9uU3RhdGVBbmRSZXN1bHRJbmNvbXBhdGliaWxpdHknLFxuICAgICAgICAgICAgdHlwZTogJ3N3aXRjaCcsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0ZhaWwgZGV2aWNlIGZpcm13YXJlIHVwZGF0ZSBvbiB1bmV4cGVjdGVkIHJlc3VsdCcpLFxuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dChcbiAgICAgICAgICAgICAgICAnSWYgdGhlIGNvbmZpZ3VyYXRpb24gaXMgZW5hYmxlZCwgdGhlIGZpcm13YXJlIHVwZGF0ZSBvcGVyYXRpb24gd2lsbCBmYWlsIGlmIHRoZSB1cGRhdGUgcmVzdWx0IChyZXNvdXJjZSA1KSBpcyBub3QgYXMgZXhwZWN0ZWQgYmFzZWQgb24gdGhlIExXTTJNIGZpcm13YXJlIHN0YXRlIG1hY2hpbmUuJ1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9XG4gICAgXTtcbiAgfVxufVxuIiwiPGZvcm1seS1mb3JtXG4gICpuZ0lmPVwiZmllbGRzPy5sZW5ndGggPiAwOyBlbHNlIGVtcHR5XCJcbiAgW21vZGVsXT1cIm1vZGVsXCJcbiAgW2Zvcm1dPVwiZm9ybVwiXG4gIFtmaWVsZHNdPVwiZmllbGRzXCJcbiAgW29wdGlvbnNdPVwib3B0aW9uc1wiXG4gIGRhdGEtY3k9XCJsd20ybS1kZXZpY2UtY29uZmlndXJhdGlvbi0tZm9ybWx5LWZvcm1cIlxuPjwvZm9ybWx5LWZvcm0+XG48bmctdGVtcGxhdGUgI2VtcHR5PlxuICA8Yzh5LXVpLWVtcHR5LXN0YXRlXG4gICAgW2ljb25dPVwiJ2M4eS1kZXZpY2UtcHJvdG9jb2xzJ1wiXG4gICAgdGl0bGU9XCJ7eyAnTm8gY29uZmlndXJhdGlvbiBzZWxlY3RlZCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgIHN1YnRpdGxlPVwie3sgJ1NlbGVjdCBhIGNvbmZpZ3VyYXRpb24gb24gdGhlIGxlZnQnIHwgdHJhbnNsYXRlIH19XCJcbiAgPjwvYzh5LXVpLWVtcHR5LXN0YXRlPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -3,6 +3,7 @@ export var RepositoryType;
|
|
|
3
3
|
RepositoryType["FIRMWARE"] = "c8y_Firmware";
|
|
4
4
|
RepositoryType["SOFTWARE"] = "c8y_Software";
|
|
5
5
|
RepositoryType["CONFIGURATION"] = "c8y_ConfigurationDump";
|
|
6
|
+
RepositoryType["PROFILE"] = "c8y_Profile";
|
|
6
7
|
})(RepositoryType || (RepositoryType = {}));
|
|
7
8
|
export const REPOSITORY_BINARY_TYPES = {
|
|
8
9
|
[RepositoryType.SOFTWARE]: 'c8y_SoftwareBinary',
|
|
@@ -71,4 +72,4 @@ export const PRODUCT_EXPERIENCE_REPOSITORY_SHARED = {
|
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
74
|
};
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3NpdG9yeS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3JlcG9zaXRvcnkvc2hhcmVkL3JlcG9zaXRvcnkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4QiwyQ0FBeUIsQ0FBQTtJQUN6QiwyQ0FBeUIsQ0FBQTtJQUN6Qix5REFBdUMsQ0FBQTtJQUN2Qyx5Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBTFcsY0FBYyxLQUFkLGNBQWMsUUFLekI7QUFFRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNyQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxvQkFBb0I7SUFDL0MsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUUsb0JBQW9CO0lBQy9DLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFLDZCQUE2QjtDQUM5RCxDQUFDO0FBd0dGLE1BQU0sQ0FBTixJQUFZLDRCQUtYO0FBTEQsV0FBWSw0QkFBNEI7SUFDdEMsc0VBQXNDLENBQUE7SUFDdEMsMEVBQTBDLENBQUE7SUFDMUMsNERBQTRCLENBQUE7SUFDNUIscUVBQXFDLENBQUE7QUFDdkMsQ0FBQyxFQUxXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFLdkM7QUFNRCxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRztJQUNsRCxRQUFRLEVBQUU7UUFDUixNQUFNLEVBQUU7WUFDTixVQUFVLEVBQUUsb0JBQW9CO1lBQ2hDLFVBQVUsRUFBRSxnQkFBZ0I7U0FDN0I7UUFDRCxVQUFVLEVBQUU7WUFDVixrQkFBa0IsRUFBRSxvQkFBb0I7WUFDeEMsdUJBQXVCLEVBQUUseUJBQXlCO1lBQ2xELG9CQUFvQixFQUFFLHNCQUFzQjtTQUM3QztRQUNELE9BQU8sRUFBRTtZQUNQLHNCQUFzQixFQUFFLHNCQUFzQjtZQUM5QyxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMscUJBQXFCLEVBQUUsMEJBQTBCO1lBQ2pELG9CQUFvQixFQUFFLHlCQUF5QjtZQUMvQyxlQUFlLEVBQUUsZ0JBQWdCO1NBQ2xDO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsWUFBWSxFQUFFLGFBQWE7WUFDM0Isb0JBQW9CLEVBQUUsb0JBQW9CO1lBQzFDLGFBQWEsRUFBRSxjQUFjO1NBQzlCO0tBQ0Y7SUFDRCxRQUFRLEVBQUU7UUFDUixNQUFNLEVBQUU7WUFDTixVQUFVLEVBQUUsb0JBQW9CO1lBQ2hDLFVBQVUsRUFBRSxnQkFBZ0I7U0FDN0I7UUFDRCxVQUFVLEVBQUU7WUFDVixrQkFBa0IsRUFBRSxvQkFBb0I7WUFDeEMsdUJBQXVCLEVBQUUsMEJBQTBCO1lBQ25ELG1CQUFtQixFQUFFLHFCQUFxQjtZQUMxQyxvQkFBb0IsRUFBRSxzQkFBc0I7U0FDN0M7UUFDRCxPQUFPLEVBQUU7WUFDUCw0QkFBNEIsRUFBRSwyQkFBMkI7WUFDekQsNEJBQTRCLEVBQUUsMkJBQTJCO1lBQ3pELGtDQUFrQyxFQUFFLGdDQUFnQztTQUNyRTtRQUNELE9BQU8sRUFBRTtZQUNQLFlBQVksRUFBRSxhQUFhO1lBQzNCLG9CQUFvQixFQUFFLG9CQUFvQjtZQUMxQyxrQkFBa0IsRUFBRSxrQkFBa0I7WUFDdEMsYUFBYSxFQUFFLGNBQWM7WUFDN0IsZ0NBQWdDLEVBQUUsK0JBQStCO1NBQ2xFO0tBQ0Y7SUFDRCxNQUFNLEVBQUU7UUFDTixVQUFVLEVBQUU7WUFDVix1QkFBdUIsRUFBRSx5QkFBeUI7WUFDbEQsMEJBQTBCLEVBQUUsNEJBQTRCO1NBQ3pEO0tBQ0Y7Q0FDTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5cbmV4cG9ydCBlbnVtIFJlcG9zaXRvcnlUeXBlIHtcbiAgRklSTVdBUkUgPSAnYzh5X0Zpcm13YXJlJyxcbiAgU09GVFdBUkUgPSAnYzh5X1NvZnR3YXJlJyxcbiAgQ09ORklHVVJBVElPTiA9ICdjOHlfQ29uZmlndXJhdGlvbkR1bXAnLFxuICBQUk9GSUxFID0gJ2M4eV9Qcm9maWxlJ1xufVxuXG5leHBvcnQgY29uc3QgUkVQT1NJVE9SWV9CSU5BUllfVFlQRVMgPSB7XG4gIFtSZXBvc2l0b3J5VHlwZS5TT0ZUV0FSRV06ICdjOHlfU29mdHdhcmVCaW5hcnknLFxuICBbUmVwb3NpdG9yeVR5cGUuRklSTVdBUkVdOiAnYzh5X0Zpcm13YXJlQmluYXJ5JyxcbiAgW1JlcG9zaXRvcnlUeXBlLkNPTkZJR1VSQVRJT05dOiAnYzh5X0NvbmZpZ3VyYXRpb25EdW1wQmluYXJ5J1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbE1vZGVsIHtcbiAgc2VsZWN0ZWQ/OiB7IGlkPzogc3RyaW5nOyBuYW1lPzogc3RyaW5nOyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgdmVyc2lvbj86IHN0cmluZztcbiAgZGVwZW5kZW5jeT86IHsgYzh5X0Zpcm13YXJlOiB7IHZlcnNpb246IHN0cmluZyB9IH07XG4gIHBhdGNoVmVyc2lvbj86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGRldmljZVR5cGU/OiBzdHJpbmc7XG4gIHNvZnR3YXJlVHlwZT87XG4gIGNvbmZpZ3VyYXRpb25UeXBlPzogc3RyaW5nO1xuICBiaW5hcnk/OiB7XG4gICAgZmlsZT86IEZpbGU7XG4gICAgdXJsPzogc3RyaW5nO1xuICB9O1xuICBjOHlfR2xvYmFsPztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXBvc2l0b3J5Q2F0ZWdvcnkgZXh0ZW5kcyBQYXJ0aWFsPElNYW5hZ2VkT2JqZWN0PiB7XG4gIHR5cGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGM4eV9GaWx0ZXI/OiB7XG4gICAgdHlwZTogc3RyaW5nO1xuICB9O1xuICBzb2Z0d2FyZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlybXdhcmVCaW5hcnkgZXh0ZW5kcyBQYXJ0aWFsPElNYW5hZ2VkT2JqZWN0PiB7XG4gIHR5cGU6ICdjOHlfRmlybXdhcmVCaW5hcnknO1xuICBjOHlfRmlybXdhcmU6IHtcbiAgICB2ZXJzaW9uOiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlybXdhcmVQYXRjaEJpbmFyeSBleHRlbmRzIEZpcm13YXJlQmluYXJ5IHtcbiAgYzh5X1BhdGNoOiB7XG4gICAgZGVwZW5kZW5jeTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvZnR3YXJlQmluYXJ5IGV4dGVuZHMgUGFydGlhbDxJTWFuYWdlZE9iamVjdD4ge1xuICB0eXBlOiBzdHJpbmc7XG4gIGM4eV9Tb2Z0d2FyZToge1xuICAgIHZlcnNpb246IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgUmVwb3NpdG9yeUJpbmFyeSA9IEZpcm13YXJlQmluYXJ5IHwgU29mdHdhcmVCaW5hcnkgfCBGaXJtd2FyZVBhdGNoQmluYXJ5O1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGVkUmVwb3NpdG9yeUJpbmFyeSB7XG4gIGlkPzogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHZlcnNpb246IHN0cmluZztcbiAgdXJsOiBzdHJpbmc7XG4gIGRlcGVuZGVuY3k/OiBzdHJpbmc7XG4gIGM4eV9QYXRjaD86IGJvb2xlYW47XG4gIGlzUGF0Y2g/OiBib29sZWFuO1xuICBwYXRjaERlcGVuZGVuY3k/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlRmlybXdhcmUge1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlU29mdHdhcmUge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBzb2Z0d2FyZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlU29mdHdhcmVDaGFuZ2UgZXh0ZW5kcyBEZXZpY2VTb2Z0d2FyZSB7XG4gIGFjdGlvbjogJ2luc3RhbGwnIHwgJ2RlbGV0ZSc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlndXJhdGlvblNuYXBzaG90IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHRpbWU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBiaW5hcnlVcmw/OiBzdHJpbmc7XG4gIGJpbmFyeT86IGFueTtcbiAgYmluYXJ5VHlwZT86IGFueTtcbiAgZGV2aWNlVHlwZT86IHN0cmluZztcbiAgY29uZmlndXJhdGlvblR5cGU/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1cHBvcnRlZENvbmZpZ3VyYXRpb25JdGVtIHtcbiAgbmFtZTogc3RyaW5nO1xuICBkZXZpY2VUeXBlPzogc3RyaW5nO1xuICBjb25maWd1cmF0aW9uVHlwZT86IHN0cmluZztcbiAgaXNMZWdhY3k/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUNvbmZpZ3VyYXRpb25MaXN0RW1wdHlTdGF0ZSB7XG4gIGljb24/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICB0ZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uIHtcbiAgVVBMT0FEX0NPTkZJRyA9ICdjOHlfVXBsb2FkQ29uZmlnRmlsZScsXG4gIERPV05MT0FEX0NPTkZJRyA9ICdjOHlfRG93bmxvYWRDb25maWdGaWxlJyxcbiAgQ09ORklHID0gJ2M4eV9Db25maWd1cmF0aW9uJyxcbiAgU0VORF9DT05GSUcgPSAnYzh5X1NlbmRDb25maWd1cmF0aW9uJ1xufVxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJDcml0ZXJpYSB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGNvbnN0IFBST0RVQ1RfRVhQRVJJRU5DRV9SRVBPU0lUT1JZX1NIQVJFRCA9IHtcbiAgU09GVFdBUkU6IHtcbiAgICBFVkVOVFM6IHtcbiAgICAgIFJFUE9TSVRPUlk6ICdzb2Z0d2FyZVJlcG9zaXRvcnknLFxuICAgICAgREVWSUNFX1RBQjogJ2RldmljZVNvZnR3YXJlJ1xuICAgIH0sXG4gICAgQ09NUE9ORU5UUzoge1xuICAgICAgQUREX1NPRlRXQVJFX01PREFMOiAnYWRkLXNvZnR3YXJlLW1vZGFsJyxcbiAgICAgIERFVklDRV9TT0ZUV0FSRV9DSEFOR0VTOiAnZGV2aWNlLXNvZnR3YXJlLWNoYW5nZXMnLFxuICAgICAgREVWSUNFX1NPRlRXQVJFX0xJU1Q6ICdkZXZpY2Utc29mdHdhcmUtbGlzdCdcbiAgICB9LFxuICAgIEFDVElPTlM6IHtcbiAgICAgIEFQUExZX1NPRlRXQVJFX0NIQU5HRVM6ICdhcHBseVNvZnR3YXJlQ2hhbmdlcycsXG4gICAgICBDTEVBUl9TT0ZUV0FSRV9DSEFOR0VTOiAnY2xlYXJTb2Z0d2FyZUNoYW5nZXMnLFxuICAgICAgT1BFTl9JTlNUQUxMX1NPRlRXQVJFOiAnb3Blbkluc3RhbGxTb2Z0d2FyZU1vZGFsJyxcbiAgICAgIE9QRU5fVVBEQVRFX1NPRlRXQVJFOiAnb3BlblVwZGF0ZVNvZnR3YXJlTW9kYWwnLFxuICAgICAgREVMRVRFX1NPRlRXQVJFOiAnZGVsZXRlU29mdHdhcmUnXG4gICAgfSxcbiAgICBSRVNVTFRTOiB7XG4gICAgICBBRERfU09GVFdBUkU6ICdhZGRTb2Z0d2FyZScsXG4gICAgICBBRERfU09GVFdBUkVfVkVSU0lPTjogJ2FkZFNvZnR3YXJlVmVyc2lvbicsXG4gICAgICBFRElUX1NPRlRXQVJFOiAnZWRpdFNvZnR3YXJlJ1xuICAgIH1cbiAgfSxcbiAgRklSTVdBUkU6IHtcbiAgICBFVkVOVFM6IHtcbiAgICAgIFJFUE9TSVRPUlk6ICdmaXJtd2FyZVJlcG9zaXRvcnknLFxuICAgICAgREVWSUNFX1RBQjogJ2RldmljZUZpcm13YXJlJ1xuICAgIH0sXG4gICAgQ09NUE9ORU5UUzoge1xuICAgICAgQUREX0ZJUk1XQVJFX01PREFMOiAnYWRkLWZpcm13YXJlLW1vZGFsJyxcbiAgICAgIEFERF9GSVJNV0FSX1BBVENIX01PREFMOiAnYWRkLWZpcm13YXJlLXBhdGNoLW1vZGFsJyxcbiAgICAgIEZJUk1XQVJFX0RFVklDRV9UQUI6ICdmaXJtd2FyZS1kZXZpY2UtdGFiJyxcbiAgICAgIERFVklDRV9GSVJNV0FSRV9MSVNUOiAnZGV2aWNlLWZpcm13YXJlLWxpc3QnXG4gICAgfSxcbiAgICBBQ1RJT05TOiB7XG4gICAgICBPUEVOX0lOU1RBTExfRklSTVdBUkVfRElBTE9HOiAnb3Blbkluc3RhbGxGaXJtd2FyZURpYWxvZycsXG4gICAgICBPUEVOX1JFUExBQ0VfRklSTVdBUkVfRElBTE9HOiAnb3BlblJlcGxhY2VGaXJtd2FyZURpYWxvZycsXG4gICAgICBPUEVOX0lOU1RBTExfRklSTVdBUkVfUEFUQ0hfRElBTE9HOiAnb3Blbkluc3RhbGxGaXJtd2FyZVBhdGNoRGlhbG9nJ1xuICAgIH0sXG4gICAgUkVTVUxUUzoge1xuICAgICAgQUREX0ZJUk1XQVJFOiAnYWRkRmlybXdhcmUnLFxuICAgICAgQUREX0ZJUk1XQVJFX1ZFUlNJT046ICdhZGRGaXJtd2FyZVZlcnNpb24nLFxuICAgICAgQUREX0ZJUk1XQVJFX1BBVENIOiAnYWRkRmlybXdhcmVQYXRjaCcsXG4gICAgICBFRElUX0ZJUk1XQVJFOiAnZWRpdEZpcm13YXJlJyxcbiAgICAgIENSRUFURV9GSVJNV0FSRV9VUERBVEVfT1BFUkFUSU9OOiAnY3JlYXRlRmlybXdhcmVVcGRhdGVPcGVyYXRpb24nXG4gICAgfVxuICB9LFxuICBTSEFSRUQ6IHtcbiAgICBDT01QT05FTlRTOiB7XG4gICAgICBSRVBPU0lUT1JZX1NFTEVDVF9NT0RBTDogJ3JlcG9zaXRvcnktc2VsZWN0LW1vZGFsJyxcbiAgICAgIFNFTEVDVF9DT05GSUdVUkFUSU9OX01PREFMOiAnc2VsZWN0LWNvbmZpZ3VyYXRpb24tbW9kYWwnXG4gICAgfVxuICB9XG59IGFzIGNvbnN0O1xuIl19
|