@c8y/ngx-components 1020.4.3 → 1020.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts +19 -0
- package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts +32 -0
- package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts +33 -0
- package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts +24 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.model.d.ts +3 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.model.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.d.ts +20 -0
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector.component.d.ts +40 -0
- package/alarm-event-selector/alarm-event-selector.component.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector.model.d.ts +44 -0
- package/alarm-event-selector/alarm-event-selector.model.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector.module.d.ts +21 -0
- package/alarm-event-selector/alarm-event-selector.module.d.ts.map +1 -0
- package/alarm-event-selector/alarm-event-selector.service.d.ts +30 -0
- package/alarm-event-selector/alarm-event-selector.service.d.ts.map +1 -0
- package/alarm-event-selector/c8y-ngx-components-alarm-event-selector.d.ts.map +1 -0
- package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts +25 -0
- package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts.map +1 -0
- package/alarm-event-selector/index.d.ts +7 -0
- package/alarm-event-selector/index.d.ts.map +1 -0
- package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts +9 -0
- package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts.map +1 -0
- package/core/product-experience/gainsight.service.d.ts.map +1 -1
- package/esm2022/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.mjs +64 -0
- package/esm2022/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.mjs +121 -0
- package/esm2022/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.mjs +113 -0
- package/esm2022/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.mjs +37 -0
- package/esm2022/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.model.mjs +2 -0
- package/esm2022/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.mjs +35 -0
- package/esm2022/alarm-event-selector/alarm-event-selector.component.mjs +125 -0
- package/esm2022/alarm-event-selector/alarm-event-selector.model.mjs +2 -0
- package/esm2022/alarm-event-selector/alarm-event-selector.module.mjs +67 -0
- package/esm2022/alarm-event-selector/alarm-event-selector.service.mjs +125 -0
- package/esm2022/alarm-event-selector/c8y-ngx-components-alarm-event-selector.mjs +5 -0
- package/esm2022/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.mjs +65 -0
- package/esm2022/alarm-event-selector/index.mjs +7 -0
- package/esm2022/alarm-event-selector/pipes/includes-alarm.pipe.mjs +21 -0
- package/esm2022/core/product-experience/gainsight.service.mjs +4 -1
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +711 -0
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components.mjs +3 -0
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/locales/locales.pot +87 -0
- package/package.json +1 -1
package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { AbstractControl, ControlValueAccessor, FormBuilder, FormGroup, ValidationErrors, Validator } from '@angular/forms';
|
|
3
|
+
import { TimelineType } from '../alarm-event-selector.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class AlarmEventAttributesFormComponent implements ControlValueAccessor, Validator, OnInit {
|
|
6
|
+
private formBuilder;
|
|
7
|
+
timelineType: TimelineType;
|
|
8
|
+
formGroup: FormGroup;
|
|
9
|
+
constructor(formBuilder: FormBuilder);
|
|
10
|
+
ngOnInit(): void;
|
|
11
|
+
validate(_control: AbstractControl): ValidationErrors;
|
|
12
|
+
writeValue(obj: any): void;
|
|
13
|
+
registerOnChange(fn: any): void;
|
|
14
|
+
registerOnTouched(fn: any): void;
|
|
15
|
+
setDisabledState(isDisabled: boolean): void;
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventAttributesFormComponent, never>;
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmEventAttributesFormComponent, "c8y-alarm-event-attributes-form", never, { "timelineType": { "alias": "timelineType"; "required": false; }; }, {}, never, never, false, never>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=alarm-event-attributes-form.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-attributes-form.component.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,MAAM,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,SAAS,EAGT,gBAAgB,EAChB,SAAS,EAEV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAE7D,qBAgBa,iCAAkC,YAAW,oBAAoB,EAAE,SAAS,EAAE,MAAM;IAInF,OAAO,CAAC,WAAW;IAHtB,YAAY,EAAE,YAAY,CAAC;IACpC,SAAS,EAAE,SAAS,CAAC;gBAED,WAAW,EAAE,WAAW;IAE5C,QAAQ;IAQR,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB;IAIrD,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI1B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,gBAAgB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;yCA9BhC,iCAAiC;2CAAjC,iCAAiC;CAiC7C"}
|
package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { AbstractControl, ControlValueAccessor, FormArray, FormBuilder, ValidationErrors, Validator } from '@angular/forms';
|
|
3
|
+
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
4
|
+
import { AlarmOrEvent, TimelineType, TimelineTypeTexts } from '../alarm-event-selector.model';
|
|
5
|
+
import { WidgetConfigComponent } from '@c8y/ngx-components/context-dashboard';
|
|
6
|
+
import { AlarmEventSelectorModalService } from '../alarm-event-selector-modal/alarm-event-selector-modal.service';
|
|
7
|
+
import { AlarmEventSelectorService } from '../alarm-event-selector.service';
|
|
8
|
+
import { AlarmEventSelectorModalOptions } from '../alarm-event-selector-modal/alarm-event-selector-modal.model';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export declare class AlarmEventSelectionListComponent implements ControlValueAccessor, Validator, OnInit {
|
|
11
|
+
private alarmEventModalService;
|
|
12
|
+
private alarmEventSelectService;
|
|
13
|
+
private formBuilder;
|
|
14
|
+
private widgetComponent;
|
|
15
|
+
timelineType: TimelineType;
|
|
16
|
+
config: Partial<AlarmEventSelectorModalOptions>;
|
|
17
|
+
formArray: FormArray;
|
|
18
|
+
timelineTypeTexts: TimelineTypeTexts;
|
|
19
|
+
constructor(alarmEventModalService: AlarmEventSelectorModalService, alarmEventSelectService: AlarmEventSelectorService, formBuilder: FormBuilder, widgetComponent: WidgetConfigComponent);
|
|
20
|
+
ngOnInit(): void;
|
|
21
|
+
registerOnTouched(fn: any): void;
|
|
22
|
+
validate(_control: AbstractControl): ValidationErrors;
|
|
23
|
+
writeValue(val: AlarmOrEvent[]): void;
|
|
24
|
+
registerOnChange(fn: any): void;
|
|
25
|
+
add(): void;
|
|
26
|
+
onItemRemoved(index: number): void;
|
|
27
|
+
drop(event: CdkDragDrop<AlarmOrEvent[]>): void;
|
|
28
|
+
private transformValue;
|
|
29
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectionListComponent, [null, null, null, { optional: true; }]>;
|
|
30
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmEventSelectionListComponent, "c8y-alarm-event-selection-list", never, { "timelineType": { "alias": "timelineType"; "required": false; }; "config": { "alias": "config"; "required": false; }; }, {}, never, never, false, never>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=alarm-event-selection-list.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selection-list.component.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,MAAM,EAAY,MAAM,eAAe,CAAC;AAC/E,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,WAAW,EAGX,gBAAgB,EAChB,SAAS,EACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,WAAW,EAAmB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,gEAAgE,CAAC;;AAEhH,qBAgBa,gCAAiC,YAAW,oBAAoB,EAAE,SAAS,EAAE,MAAM;IAQ5F,OAAO,CAAC,sBAAsB;IAC9B,OAAO,CAAC,uBAAuB;IAC/B,OAAO,CAAC,WAAW;IACP,OAAO,CAAC,eAAe;IAV5B,YAAY,EAAE,YAAY,CAAW;IACrC,MAAM,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAM;IAE9D,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,iBAAiB,CAAC;gBAG3B,sBAAsB,EAAE,8BAA8B,EACtD,uBAAuB,EAAE,yBAAyB,EAClD,WAAW,EAAE,WAAW,EACZ,eAAe,EAAE,qBAAqB;IAK5D,QAAQ,IAAI,IAAI;IAShB,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB;IAIrD,UAAU,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,IAAI;IAWrC,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,GAAG;IAuBH,aAAa,CAAC,KAAK,EAAE,MAAM;IAI3B,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,YAAY,EAAE,CAAC;IAMvC,OAAO,CAAC,cAAc;yCAjFX,gCAAgC;2CAAhC,gCAAgC;CAuF5C"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { EventEmitter, OnDestroy } from '@angular/core';
|
|
2
|
+
import { AbstractControl, ControlValueAccessor, FormBuilder, FormGroup, ValidationErrors, Validator } from '@angular/forms';
|
|
3
|
+
import { AlarmOrEvent, TimelineType } from '../alarm-event-selector.model';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class AlarmEventSelectorListItemComponent implements ControlValueAccessor, Validator, OnDestroy {
|
|
7
|
+
private formBuilder;
|
|
8
|
+
timelineType: TimelineType;
|
|
9
|
+
highlightText: string;
|
|
10
|
+
showAddRemoveButton: boolean;
|
|
11
|
+
isSelected: boolean;
|
|
12
|
+
optionToRemove: boolean;
|
|
13
|
+
showActiveToggle: boolean;
|
|
14
|
+
allowItemEdit: boolean;
|
|
15
|
+
added: EventEmitter<AlarmOrEvent>;
|
|
16
|
+
removed: EventEmitter<AlarmOrEvent>;
|
|
17
|
+
formGroup: FormGroup;
|
|
18
|
+
valid$: Observable<boolean>;
|
|
19
|
+
private destroy$;
|
|
20
|
+
constructor(formBuilder: FormBuilder);
|
|
21
|
+
ngOnDestroy(): void;
|
|
22
|
+
validate(_control: AbstractControl): ValidationErrors;
|
|
23
|
+
writeValue(obj: any): void;
|
|
24
|
+
registerOnChange(fn: any): void;
|
|
25
|
+
registerOnTouched(fn: any): void;
|
|
26
|
+
setDisabledState(isDisabled: boolean): void;
|
|
27
|
+
addOrRemoveItem(): void;
|
|
28
|
+
remove(): void;
|
|
29
|
+
private transformFormValue;
|
|
30
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorListItemComponent, never>;
|
|
31
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmEventSelectorListItemComponent, "c8y-alarm-event-selector-list-item", never, { "timelineType": { "alias": "timelineType"; "required": false; }; "highlightText": { "alias": "highlightText"; "required": false; }; "showAddRemoveButton": { "alias": "showAddRemoveButton"; "required": false; }; "isSelected": { "alias": "isSelected"; "required": false; }; "optionToRemove": { "alias": "optionToRemove"; "required": false; }; "showActiveToggle": { "alias": "showActiveToggle"; "required": false; }; "allowItemEdit": { "alias": "allowItemEdit"; "required": false; }; }, { "added": "added"; "removed": "removed"; }, never, ["c8y-li-drag-handle"], false, never>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=alarm-event-selector-list-item.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector-list-item.component.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAqB,SAAS,EAAU,MAAM,eAAe,CAAC;AAC9F,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,SAAS,EAGT,gBAAgB,EAChB,SAAS,EACV,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAW,MAAM,MAAM,CAAC;;AAE3C,qBAgBa,mCACX,YAAW,oBAAoB,EAAE,SAAS,EAAE,SAAS;IAiBzC,OAAO,CAAC,WAAW;IAftB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,UAAQ;IAC3B,UAAU,UAAS;IACnB,cAAc,UAAS;IACvB,gBAAgB,UAAS;IACzB,aAAa,UAAS;IAErB,KAAK,6BAAoC;IACzC,OAAO,6BAAoC;IAErD,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAuB;gBAEnB,WAAW,EAAE,WAAW;IAa5C,WAAW;IAKX,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB;IAIrD,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI1B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,gBAAgB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAI3C,eAAe;IASf,MAAM;IAIN,OAAO,CAAC,kBAAkB;yCArEf,mCAAmC;2CAAnC,mCAAmC;CA0E/C"}
|
package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { IIdentified } from '@c8y/client';
|
|
2
|
+
import { BsModalRef } from 'ngx-bootstrap/modal';
|
|
3
|
+
import { AlarmOrEvent, TimelineType } from '../alarm-event-selector.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class AlarmEventSelectorModalComponent {
|
|
6
|
+
private bsModal;
|
|
7
|
+
selectType: TimelineType;
|
|
8
|
+
contextAsset: IIdentified;
|
|
9
|
+
allowChangingContext: boolean;
|
|
10
|
+
allowSearch: boolean;
|
|
11
|
+
selectedItems: AlarmOrEvent[];
|
|
12
|
+
title: string;
|
|
13
|
+
saveButtonLabel: string;
|
|
14
|
+
readonly result: Promise<AlarmOrEvent[]>;
|
|
15
|
+
private save;
|
|
16
|
+
private cancel;
|
|
17
|
+
constructor(bsModal: BsModalRef);
|
|
18
|
+
saveChanges(): void;
|
|
19
|
+
close(): void;
|
|
20
|
+
selectionChange(selection: Array<AlarmOrEvent>): void;
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorModalComponent, never>;
|
|
22
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmEventSelectorModalComponent, "c8y-alarm-event-selector-modal", never, {}, {}, never, never, false, never>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=alarm-event-selector-modal.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector-modal.component.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAE3E,qBAIa,gCAAgC;IAgB/B,OAAO,CAAC,OAAO;IAf3B,UAAU,EAAE,YAAY,CAAW;IACnC,YAAY,EAAE,WAAW,CAAC;IAC1B,oBAAoB,UAAQ;IAC5B,WAAW,UAAQ;IACnB,aAAa,iBAA6B;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAGrC;IAEH,OAAO,CAAC,IAAI,CAAkC;IAC9C,OAAO,CAAC,MAAM,CAAyB;gBAEnB,OAAO,EAAE,UAAU;IAEvC,WAAW,IAAI,IAAI;IAKnB,KAAK;IAKL,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;yCA5BnC,gCAAgC;2CAAhC,gCAAgC;CA+B5C"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { AlarmEventSelectorModalComponent } from './alarm-event-selector-modal.component';
|
|
2
|
+
export type AlarmEventSelectorModalOptions = Pick<AlarmEventSelectorModalComponent, 'selectType' | 'contextAsset' | 'allowChangingContext' | 'selectedItems' | 'allowSearch' | 'title' | 'saveButtonLabel'>;
|
|
3
|
+
//# sourceMappingURL=alarm-event-selector-modal.model.d.ts.map
|
package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.model.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector-modal.model.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAE1F,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,gCAAgC,EAC9B,YAAY,GACZ,cAAc,GACd,sBAAsB,GACtB,eAAe,GACf,aAAa,GACb,OAAO,GACP,iBAAiB,CACpB,CAAC"}
|
package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AlarmOrEvent } from '../alarm-event-selector.model';
|
|
2
|
+
import { BsModalService } from 'ngx-bootstrap/modal';
|
|
3
|
+
import { AlarmEventSelectorModalOptions } from './alarm-event-selector-modal.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Service to open the alarm event selector modal.
|
|
7
|
+
*/
|
|
8
|
+
export declare class AlarmEventSelectorModalService {
|
|
9
|
+
private modal;
|
|
10
|
+
constructor(modal: BsModalService);
|
|
11
|
+
/**
|
|
12
|
+
* Opents the alarm or event selector modal.
|
|
13
|
+
* @param initialState Initial state of the modal.
|
|
14
|
+
* @returns Promise that resolves with the selected alarms or events.
|
|
15
|
+
*/
|
|
16
|
+
selectItems(initialState?: Partial<AlarmEventSelectorModalOptions>): Promise<AlarmOrEvent[]>;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorModalService, never>;
|
|
18
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AlarmEventSelectorModalService>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=alarm-event-selector-modal.service.d.ts.map
|
package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector-modal.service.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;;AAEpF;;GAEG;AACH,qBACa,8BAA8B;IAC7B,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,cAAc;IACzC;;;;OAIG;IACH,WAAW,CAAC,YAAY,GAAE,OAAO,CAAC,8BAA8B,CAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;yCAPrF,8BAA8B;6CAA9B,8BAA8B;CAiB1C"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { IIdentified } from '@c8y/client';
|
|
3
|
+
import { BehaviorSubject, Observable } from 'rxjs';
|
|
4
|
+
import { AlarmOrEvent, TimelineType, TimelineTypeTexts } from './alarm-event-selector.model';
|
|
5
|
+
import { AlarmEventSelectorService } from './alarm-event-selector.service';
|
|
6
|
+
import { AssetSelectionChangeEvent } from '@c8y/ngx-components/assets-navigator';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare class AlarmEventSelectorComponent implements OnInit {
|
|
9
|
+
private alarmEventSelectorService;
|
|
10
|
+
timelineType: TimelineType;
|
|
11
|
+
contextAsset: IIdentified;
|
|
12
|
+
allowChangingContext: boolean;
|
|
13
|
+
selectedItems: AlarmOrEvent[];
|
|
14
|
+
allowSearch: boolean;
|
|
15
|
+
selectionChange: EventEmitter<AlarmOrEvent[]>;
|
|
16
|
+
filterString: string;
|
|
17
|
+
maxNumberOfItems: number;
|
|
18
|
+
loadingItems: boolean;
|
|
19
|
+
assetSelection: BehaviorSubject<IIdentified>;
|
|
20
|
+
items$: Observable<AlarmOrEvent[]>;
|
|
21
|
+
filteredItems$: Observable<AlarmOrEvent[]>;
|
|
22
|
+
filterStringChanges$: Observable<string>;
|
|
23
|
+
timelineTypeTexts: TimelineTypeTexts;
|
|
24
|
+
isExpanded: boolean;
|
|
25
|
+
private filterString$;
|
|
26
|
+
constructor(alarmEventSelectorService: AlarmEventSelectorService);
|
|
27
|
+
ngOnInit(): Promise<void>;
|
|
28
|
+
itemAdded(item: AlarmOrEvent): void;
|
|
29
|
+
itemRemoved(alarm: AlarmOrEvent): void;
|
|
30
|
+
assetSelectionChanged(evt: AssetSelectionChangeEvent): void;
|
|
31
|
+
trackByFn(_index: number, item: AlarmOrEvent): string;
|
|
32
|
+
filterStringChanged(newValue?: string): void;
|
|
33
|
+
private setupObservables;
|
|
34
|
+
private selectAsset;
|
|
35
|
+
private emitCurrentSelection;
|
|
36
|
+
private includesFilterString;
|
|
37
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorComponent, never>;
|
|
38
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmEventSelectorComponent, "c8y-alarm-event-selector", never, { "timelineType": { "alias": "timelineType"; "required": false; }; "contextAsset": { "alias": "contextAsset"; "required": false; }; "allowChangingContext": { "alias": "allowChangingContext"; "required": false; }; "selectedItems": { "alias": "selectedItems"; "required": false; }; "allowSearch": { "alias": "allowSearch"; "required": false; }; }, { "selectionChange": "selectionChange"; }, never, never, false, never>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=alarm-event-selector.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector.component.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/alarm-event-selector.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAqB,MAAM,EAAU,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAiB,UAAU,EAAE,MAAM,MAAM,CAAC;AASlE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;;AAEjF,qBAWa,2BAA4B,YAAW,MAAM;IAmB5C,OAAO,CAAC,yBAAyB;IAlBpC,YAAY,EAAE,YAAY,CAAW;IACrC,YAAY,EAAE,WAAW,CAAC;IAC1B,oBAAoB,UAAQ;IAC5B,aAAa,iBAA6B;IAC1C,WAAW,UAAQ;IAClB,eAAe,+BAAsC;IAC/D,YAAY,SAAM;IAClB,gBAAgB,SAAM;IAEtB,YAAY,UAAS;IACrB,cAAc,+BAA0C;IACxD,MAAM,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IACnC,cAAc,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3C,oBAAoB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,UAAU,UAAS;IACnB,OAAO,CAAC,aAAa,CAA2B;gBAE5B,yBAAyB,EAAE,yBAAyB;IAElE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ/B,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAMnC,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAUtC,qBAAqB,CAAC,GAAG,EAAE,yBAAyB,GAAG,IAAI;IAQ3D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM;IAIrD,mBAAmB,CAAC,QAAQ,SAAK,GAAG,IAAI;YAK1B,gBAAgB;IA8B9B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,oBAAoB;yCArGjB,2BAA2B;2CAA3B,2BAA2B;CAkHvC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IIdentified } from '@c8y/client';
|
|
2
|
+
export type TimelineType = 'ALARM' | 'EVENT';
|
|
3
|
+
type AlarmOrEventBase = {
|
|
4
|
+
timelineType: TimelineType;
|
|
5
|
+
color: string;
|
|
6
|
+
__active?: boolean;
|
|
7
|
+
label: string;
|
|
8
|
+
filters: {
|
|
9
|
+
type: string;
|
|
10
|
+
};
|
|
11
|
+
__target: IIdentified;
|
|
12
|
+
};
|
|
13
|
+
export type AlarmDetails = AlarmOrEventBase & {
|
|
14
|
+
timelineType: 'ALARM';
|
|
15
|
+
filters: {
|
|
16
|
+
type: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
export type EventDetails = AlarmOrEventBase & {
|
|
20
|
+
timelineType: 'EVENT';
|
|
21
|
+
filters: {
|
|
22
|
+
type: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
export type AlarmOrEvent = AlarmDetails | EventDetails;
|
|
26
|
+
export type TimelineTypeTexts = {
|
|
27
|
+
listTitle: string;
|
|
28
|
+
emptyStateIcon: string;
|
|
29
|
+
emptyStateTitle: string;
|
|
30
|
+
emptyStateSubtitle: string;
|
|
31
|
+
addButtonLabel: string;
|
|
32
|
+
addCustomItemButtonLabel: string;
|
|
33
|
+
selectorTitle: string;
|
|
34
|
+
availableItemsTitle: string;
|
|
35
|
+
assetWithNoItemsEmptyStateSubtitle: string;
|
|
36
|
+
largeNumberOfItemsInfo: string;
|
|
37
|
+
selectedItemsTitle: string;
|
|
38
|
+
noSelectedItemsTitle: string;
|
|
39
|
+
recentItemsWarningTitle: string;
|
|
40
|
+
recentItemsWarningText: string;
|
|
41
|
+
addCustomText: string;
|
|
42
|
+
};
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=alarm-event-selector.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector.model.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/alarm-event-selector.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;AAE7C,KAAK,gBAAgB,GAAG;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,QAAQ,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;AAEvD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,wBAAwB,EAAE,MAAM,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kCAAkC,EAAE,MAAM,CAAC;IAC3C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./alarm-event-selection-list/alarm-event-selection-list.component";
|
|
3
|
+
import * as i2 from "./alarm-event-selector-list-item/alarm-event-selector-list-item.component";
|
|
4
|
+
import * as i3 from "./alarm-event-attributes-form/alarm-event-attributes-form.component";
|
|
5
|
+
import * as i4 from "./alarm-event-selector-modal/alarm-event-selector-modal.component";
|
|
6
|
+
import * as i5 from "./alarm-event-selector.component";
|
|
7
|
+
import * as i6 from "./pipes/includes-alarm.pipe";
|
|
8
|
+
import * as i7 from "./custom-alarm-event-form/custom-alarm-event-form.component";
|
|
9
|
+
import * as i8 from "@c8y/ngx-components";
|
|
10
|
+
import * as i9 from "@angular/cdk/drag-drop";
|
|
11
|
+
import * as i10 from "ngx-bootstrap/popover";
|
|
12
|
+
import * as i11 from "ngx-bootstrap/tooltip";
|
|
13
|
+
import * as i12 from "@c8y/ngx-components/assets-navigator";
|
|
14
|
+
import * as i13 from "ngx-bootstrap/collapse";
|
|
15
|
+
import * as i14 from "@angular/router";
|
|
16
|
+
export declare class AlarmEventSelectorModule {
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorModule, never>;
|
|
18
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AlarmEventSelectorModule, [typeof i1.AlarmEventSelectionListComponent, typeof i2.AlarmEventSelectorListItemComponent, typeof i3.AlarmEventAttributesFormComponent, typeof i4.AlarmEventSelectorModalComponent, typeof i5.AlarmEventSelectorComponent, typeof i6.IncludesAlarmOrEventPipe, typeof i7.CustomAlarmEventFormComponent], [typeof i8.CommonModule, typeof i8.CoreModule, typeof i9.DragDropModule, typeof i10.PopoverModule, typeof i11.TooltipModule, typeof i12.AssetSelectorModule, typeof i13.CollapseModule, typeof i14.RouterModule], [typeof i1.AlarmEventSelectionListComponent]>;
|
|
19
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AlarmEventSelectorModule>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=alarm-event-selector.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector.module.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/alarm-event-selector.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAgBA,qBAsBa,wBAAwB;yCAAxB,wBAAwB;0CAAxB,wBAAwB;0CAAxB,wBAAwB;CAAG"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { AlarmOrEvent, TimelineType, TimelineTypeTexts } from './alarm-event-selector.model';
|
|
2
|
+
import { AlarmService, EventService, IIdentified } from '@c8y/client';
|
|
3
|
+
import { ColorService } from '@c8y/ngx-components';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class AlarmEventSelectorService {
|
|
6
|
+
private alarmService;
|
|
7
|
+
private eventsService;
|
|
8
|
+
private color;
|
|
9
|
+
constructor(alarmService: AlarmService, eventsService: EventService, color: ColorService);
|
|
10
|
+
/**
|
|
11
|
+
* This method returns the texts for the timeline type.
|
|
12
|
+
* @param timelineType The timeline type.
|
|
13
|
+
* @returns The texts for the timeline type.
|
|
14
|
+
*/
|
|
15
|
+
timelineTypeTexts(timelineType: TimelineType): TimelineTypeTexts;
|
|
16
|
+
/**
|
|
17
|
+
* This method returns the items of the asset based on the timeline type.
|
|
18
|
+
* @param parentReference The parent reference.
|
|
19
|
+
* @param timelineType The timeline type.
|
|
20
|
+
* @returns The alarms or events of the asset.
|
|
21
|
+
*/
|
|
22
|
+
getItemsOfAsset(parentReference: IIdentified, timelineType: TimelineType): Promise<AlarmOrEvent[]>;
|
|
23
|
+
getBlankItem(timelineType: TimelineType, asset: IIdentified, blankItemColor: string): AlarmOrEvent | null;
|
|
24
|
+
private getAlarmsOfAsset;
|
|
25
|
+
private getEventsOfAsset;
|
|
26
|
+
private createItem;
|
|
27
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmEventSelectorService, never>;
|
|
28
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AlarmEventSelectorService>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=alarm-event-selector.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alarm-event-selector.service.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/alarm-event-selector.service.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EAEZ,YAAY,EACZ,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAkB,WAAW,EAAE,MAAM,aAAa,CAAC;AAEtF,OAAO,EAAE,YAAY,EAAW,MAAM,qBAAqB,CAAC;;AAE5D,qBACa,yBAAyB;IAElC,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,KAAK;gBAFL,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,YAAY,EAC3B,KAAK,EAAE,YAAY;IAG7B;;;;OAIG;IACH,iBAAiB,CAAC,YAAY,EAAE,YAAY,GAAG,iBAAiB;IA+ChE;;;;;OAKG;IACG,eAAe,CACnB,eAAe,EAAE,WAAW,EAC5B,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,YAAY,EAAE,CAAC;IAQ1B,YAAY,CACV,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,MAAM,GACrB,YAAY,GAAG,IAAI;YA0BR,gBAAgB;YAWhB,gBAAgB;YAWhB,UAAU;yCAhIb,yBAAyB;6CAAzB,yBAAyB;CA0JrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-alarm-event-selector.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/c8y-ngx-components-alarm-event-selector.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import { FormBuilder, FormGroup } from '@angular/forms';
|
|
3
|
+
import { AlarmOrEvent, TimelineType } from '../alarm-event-selector.model';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
import { IIdentified } from '@c8y/client';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export declare class CustomAlarmEventFormComponent implements OnInit, OnDestroy {
|
|
8
|
+
private formBuilder;
|
|
9
|
+
timelineType: TimelineType;
|
|
10
|
+
target: IIdentified;
|
|
11
|
+
added: EventEmitter<AlarmOrEvent>;
|
|
12
|
+
cancel: EventEmitter<void>;
|
|
13
|
+
formGroup: FormGroup;
|
|
14
|
+
valid$: Observable<boolean>;
|
|
15
|
+
private destroy$;
|
|
16
|
+
private defaultColor;
|
|
17
|
+
constructor(formBuilder: FormBuilder);
|
|
18
|
+
ngOnInit(): void;
|
|
19
|
+
ngOnDestroy(): void;
|
|
20
|
+
add(): void;
|
|
21
|
+
private transformFormValue;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CustomAlarmEventFormComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CustomAlarmEventFormComponent, "c8y-custom-alarm-event-form", never, { "timelineType": { "alias": "timelineType"; "required": false; }; "target": { "alias": "target"; "required": false; }; }, { "added": "added"; "cancel": "cancel"; }, never, never, false, never>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=custom-alarm-event-form.component.d.ts.map
|
package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-alarm-event-form.component.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAS,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAW,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;;AAE1C,qBAIa,6BAA8B,YAAW,MAAM,EAAE,SAAS;IAWzD,OAAO,CAAC,WAAW;IAVtB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC;IACnB,KAAK,6BAAoC;IACzC,MAAM,qBAA4B;IAE5C,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,YAAY,CAAS;gBAET,WAAW,EAAE,WAAW;IAe5C,QAAQ;IAaR,WAAW;IAKX,GAAG;IAOH,OAAO,CAAC,kBAAkB;yCAnDf,6BAA6B;2CAA7B,6BAA6B;CAwDzC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './alarm-event-selector.module';
|
|
2
|
+
export * from './alarm-event-selection-list/alarm-event-selection-list.component';
|
|
3
|
+
export * from './alarm-event-selector.model';
|
|
4
|
+
export * from './alarm-event-selector.service';
|
|
5
|
+
export * from './alarm-event-selector-modal/alarm-event-selector-modal.service';
|
|
6
|
+
export * from './alarm-event-attributes-form/alarm-event-attributes-form.component';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../alarm-event-selector/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mEAAmE,CAAC;AAClF,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iEAAiE,CAAC;AAChF,cAAc,qEAAqE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PipeTransform } from '@angular/core';
|
|
2
|
+
import { AlarmDetails, EventDetails } from '../alarm-event-selector.model';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IncludesAlarmOrEventPipe implements PipeTransform {
|
|
5
|
+
transform<T extends AlarmDetails | EventDetails>(itemList: T[], item?: T): boolean;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IncludesAlarmOrEventPipe, never>;
|
|
7
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<IncludesAlarmOrEventPipe, "includesAlarmOrEvent", false>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=includes-alarm.pipe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"includes-alarm.pipe.d.ts","sourceRoot":"","sources":["../../../alarm-event-selector/pipes/includes-alarm.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,aAAa,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAE3E,qBAGa,wBAAyB,YAAW,aAAa;IAC5D,SAAS,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO;yCADvE,wBAAwB;uCAAxB,wBAAwB;CAYpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gainsight.service.d.ts","sourceRoot":"","sources":["../../../core/product-experience/gainsight.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gainsight.service.d.ts","sourceRoot":"","sources":["../../../core/product-experience/gainsight.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Component, forwardRef, Input } from '@angular/core';
|
|
2
|
+
import { FormBuilder, NG_VALIDATORS, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
|
|
3
|
+
import { take } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/forms";
|
|
6
|
+
import * as i2 from "@c8y/ngx-components";
|
|
7
|
+
export class AlarmEventAttributesFormComponent {
|
|
8
|
+
constructor(formBuilder) {
|
|
9
|
+
this.formBuilder = formBuilder;
|
|
10
|
+
}
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
this.formGroup = this.formBuilder.group({
|
|
13
|
+
label: ['', [Validators.required]],
|
|
14
|
+
filters: this.formBuilder.group({ type: ['', [Validators.required]] }),
|
|
15
|
+
timelineType: ''
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
validate(_control) {
|
|
19
|
+
return this.formGroup?.valid ? null : { formInvalid: {} };
|
|
20
|
+
}
|
|
21
|
+
writeValue(obj) {
|
|
22
|
+
this.formGroup.patchValue(obj);
|
|
23
|
+
}
|
|
24
|
+
registerOnChange(fn) {
|
|
25
|
+
this.formGroup.valueChanges.subscribe(fn);
|
|
26
|
+
}
|
|
27
|
+
registerOnTouched(fn) {
|
|
28
|
+
this.formGroup.valueChanges.pipe(take(1)).subscribe(fn);
|
|
29
|
+
}
|
|
30
|
+
setDisabledState(isDisabled) {
|
|
31
|
+
isDisabled ? this.formGroup.disable() : this.formGroup.enable();
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: AlarmEventAttributesFormComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: AlarmEventAttributesFormComponent, selector: "c8y-alarm-event-attributes-form", inputs: { timelineType: "timelineType" }, providers: [
|
|
35
|
+
{
|
|
36
|
+
provide: NG_VALUE_ACCESSOR,
|
|
37
|
+
useExisting: forwardRef(() => AlarmEventAttributesFormComponent),
|
|
38
|
+
multi: true
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
provide: NG_VALIDATORS,
|
|
42
|
+
useExisting: forwardRef(() => AlarmEventAttributesFormComponent),
|
|
43
|
+
multi: true
|
|
44
|
+
}
|
|
45
|
+
], ngImport: i0, template: "<div [formGroup]=\"formGroup\">\n <c8y-form-group>\n <label class=\"m-0\">{{ 'Label' | translate }}</label>\n <input\n class=\"form-control flex-grow\"\n name=\"label\"\n formControlName=\"label\"\n [placeholder]=\"\n 'e.g. {{ example }}'\n | translate\n : {\n example:\n timelineType === 'ALARM'\n ? 'Alarm unavailable'\n : 'Location update'\n }\n \"\n />\n </c8y-form-group>\n\n <div formGroupName=\"filters\">\n <c8y-form-group>\n <label class=\"m-0\">{{ 'Type' | translate }}</label>\n <input\n class=\"form-control flex-grow\"\n name=\"type\"\n formControlName=\"type\"\n [placeholder]=\"\n 'e.g. {{ example }}'\n | translate\n : {\n example:\n timelineType === 'ALARM'\n ? 'c8y_UnavailabilityAlarm'\n : 'c8y_LocationUpdate'\n }\n \"\n />\n </c8y-form-group>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i2.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: i2.RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "pipe", type: i2.C8yTranslatePipe, name: "translate" }] }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: AlarmEventAttributesFormComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'c8y-alarm-event-attributes-form', providers: [
|
|
50
|
+
{
|
|
51
|
+
provide: NG_VALUE_ACCESSOR,
|
|
52
|
+
useExisting: forwardRef(() => AlarmEventAttributesFormComponent),
|
|
53
|
+
multi: true
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
provide: NG_VALIDATORS,
|
|
57
|
+
useExisting: forwardRef(() => AlarmEventAttributesFormComponent),
|
|
58
|
+
multi: true
|
|
59
|
+
}
|
|
60
|
+
], template: "<div [formGroup]=\"formGroup\">\n <c8y-form-group>\n <label class=\"m-0\">{{ 'Label' | translate }}</label>\n <input\n class=\"form-control flex-grow\"\n name=\"label\"\n formControlName=\"label\"\n [placeholder]=\"\n 'e.g. {{ example }}'\n | translate\n : {\n example:\n timelineType === 'ALARM'\n ? 'Alarm unavailable'\n : 'Location update'\n }\n \"\n />\n </c8y-form-group>\n\n <div formGroupName=\"filters\">\n <c8y-form-group>\n <label class=\"m-0\">{{ 'Type' | translate }}</label>\n <input\n class=\"form-control flex-grow\"\n name=\"type\"\n formControlName=\"type\"\n [placeholder]=\"\n 'e.g. {{ example }}'\n | translate\n : {\n example:\n timelineType === 'ALARM'\n ? 'c8y_UnavailabilityAlarm'\n : 'c8y_LocationUpdate'\n }\n \"\n />\n </c8y-form-group>\n </div>\n</div>\n" }]
|
|
61
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { timelineType: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}] } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxhcm0tZXZlbnQtYXR0cmlidXRlcy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FsYXJtLWV2ZW50LXNlbGVjdG9yL2FsYXJtLWV2ZW50LWF0dHJpYnV0ZXMtZm9ybS9hbGFybS1ldmVudC1hdHRyaWJ1dGVzLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vYWxhcm0tZXZlbnQtc2VsZWN0b3IvYWxhcm0tZXZlbnQtYXR0cmlidXRlcy1mb3JtL2FsYXJtLWV2ZW50LWF0dHJpYnV0ZXMtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUdMLFdBQVcsRUFFWCxhQUFhLEVBQ2IsaUJBQWlCLEVBR2pCLFVBQVUsRUFDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQW1CdEMsTUFBTSxPQUFPLGlDQUFpQztJQUk1QyxZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUFHLENBQUM7SUFFaEQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDdEMsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdEUsWUFBWSxFQUFFLEVBQUU7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVEsQ0FBQyxRQUF5QjtRQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxVQUFVLENBQUMsR0FBUTtRQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDbEMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2xFLENBQUM7OEdBaENVLGlDQUFpQztrR0FBakMsaUNBQWlDLG9HQWJqQztZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUNBQWlDLENBQUM7Z0JBQ2hFLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztnQkFDaEUsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQzdCSCwwbENBeUNBOzsyRkRWYSxpQ0FBaUM7a0JBaEI3QyxTQUFTOytCQUNFLGlDQUFpQyxhQUVoQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQ0FBa0MsQ0FBQzs0QkFDaEUsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtDQUFrQyxDQUFDOzRCQUNoRSxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtnRkFHUSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBGb3JtQnVpbGRlcixcbiAgRm9ybUdyb3VwLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxuICBWYWxpZGF0b3JzXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUaW1lbGluZVR5cGUgfSBmcm9tICcuLi9hbGFybS1ldmVudC1zZWxlY3Rvci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hbGFybS1ldmVudC1hdHRyaWJ1dGVzLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxhcm0tZXZlbnQtYXR0cmlidXRlcy1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBbGFybUV2ZW50QXR0cmlidXRlc0Zvcm1Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBbGFybUV2ZW50QXR0cmlidXRlc0Zvcm1Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQWxhcm1FdmVudEF0dHJpYnV0ZXNGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciwgT25Jbml0IHtcbiAgQElucHV0KCkgdGltZWxpbmVUeXBlOiBUaW1lbGluZVR5cGU7XG4gIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBsYWJlbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgZmlsdGVyczogdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7IHR5cGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSB9KSxcbiAgICAgIHRpbWVsaW5lVHlwZTogJydcbiAgICB9KTtcbiAgfVxuXG4gIHZhbGlkYXRlKF9jb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXA/LnZhbGlkID8gbnVsbCA6IHsgZm9ybUludmFsaWQ6IHt9IH07XG4gIH1cblxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZShvYmopO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZShmbik7XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGZuKTtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlzRGlzYWJsZWQgPyB0aGlzLmZvcm1Hcm91cC5kaXNhYmxlKCkgOiB0aGlzLmZvcm1Hcm91cC5lbmFibGUoKTtcbiAgfVxufVxuIiwiPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgPGxhYmVsIGNsYXNzPVwibS0wXCI+e3sgJ0xhYmVsJyB8IHRyYW5zbGF0ZSB9fTwvbGFiZWw+XG4gICAgPGlucHV0XG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBmbGV4LWdyb3dcIlxuICAgICAgbmFtZT1cImxhYmVsXCJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cImxhYmVsXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJcbiAgICAgICAgJ2UuZy4ge3sgZXhhbXBsZSB9fSdcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgZXhhbXBsZTpcbiAgICAgICAgICAgICAgICAgIHRpbWVsaW5lVHlwZSA9PT0gJ0FMQVJNJ1xuICAgICAgICAgICAgICAgICAgICA/ICdBbGFybSB1bmF2YWlsYWJsZSdcbiAgICAgICAgICAgICAgICAgICAgOiAnTG9jYXRpb24gdXBkYXRlJ1xuICAgICAgICAgICAgICB9XG4gICAgICBcIlxuICAgIC8+XG4gIDwvYzh5LWZvcm0tZ3JvdXA+XG5cbiAgPGRpdiBmb3JtR3JvdXBOYW1lPVwiZmlsdGVyc1wiPlxuICAgIDxjOHktZm9ybS1ncm91cD5cbiAgICAgIDxsYWJlbCBjbGFzcz1cIm0tMFwiPnt7ICdUeXBlJyB8IHRyYW5zbGF0ZSB9fTwvbGFiZWw+XG4gICAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZmxleC1ncm93XCJcbiAgICAgICAgbmFtZT1cInR5cGVcIlxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ0eXBlXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxuICAgICAgICAgICdlLmcuIHt7IGV4YW1wbGUgfX0nXG4gICAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgIGV4YW1wbGU6XG4gICAgICAgICAgICAgICAgICAgIHRpbWVsaW5lVHlwZSA9PT0gJ0FMQVJNJ1xuICAgICAgICAgICAgICAgICAgICAgID8gJ2M4eV9VbmF2YWlsYWJpbGl0eUFsYXJtJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2M4eV9Mb2NhdGlvblVwZGF0ZSdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgIFwiXG4gICAgICAvPlxuICAgIDwvYzh5LWZvcm0tZ3JvdXA+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|