@natec/mef-dev-ui-kit 16.2.4 → 16.2.5
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/README.md +6 -1
- package/esm2022/lib/markup-kit/executors/mefdev-executor-page/mefdev-executor-page.component.mjs +69 -1
- package/esm2022/lib/markup-kit/executors/stage/stage.component.mjs +4 -1
- package/esm2022/lib/markup-kit/executors/step-executor/step-executor.component.mjs +116 -1
- package/fesm2022/natec-mef-dev-ui-kit.mjs +186 -0
- package/fesm2022/natec-mef-dev-ui-kit.mjs.map +1 -1
- package/lib/markup-kit/card/card.module.d.ts +1 -1
- package/lib/markup-kit/executors/mefdev-executor-page/mefdev-executor-page.component.d.ts +68 -0
- package/lib/markup-kit/executors/stage/stage.component.d.ts +3 -0
- package/lib/markup-kit/executors/step-executor/step-executor.component.d.ts +115 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -37,6 +37,11 @@ You can use the library on the following versions of Angular:
|
|
|
37
37
|
npm i bootstrap@5
|
|
38
38
|
```
|
|
39
39
|
|
|
40
|
+
> Ngx-bootstrap provides Bootstrap components powered by Angular, so you don't need to include original JS components.ngx-bootstrap:
|
|
41
|
+
```sh
|
|
42
|
+
npm i ngx-bootstrap@10
|
|
43
|
+
```
|
|
44
|
+
|
|
40
45
|
> CSS font-family parser/stringifier. Font-awesome:
|
|
41
46
|
```sh
|
|
42
47
|
npm i font-awesome@4
|
|
@@ -133,4 +138,4 @@ ___
|
|
|
133
138
|
* Documentation of the library: https://mef.dev/ui_kit
|
|
134
139
|
* Demo of the library: https://mef.dev/ui_kit_demo
|
|
135
140
|
* Library package: https://www.npmjs.com/package/@natec/mef-dev-ui-kit
|
|
136
|
-
* Ui-kit-lib at GitHub: https://github.com/mef-dev/ui-kit-demo.git
|
|
141
|
+
* Ui-kit-lib at GitHub: https://github.com/mef-dev/ui-kit-demo.git
|
package/esm2022/lib/markup-kit/executors/mefdev-executor-page/mefdev-executor-page.component.mjs
CHANGED
|
@@ -1,12 +1,80 @@
|
|
|
1
1
|
import { Component, EventEmitter, Host, Input, Output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "../step-executor/step-executor.component";
|
|
4
|
+
/**
|
|
5
|
+
* A component that allows us to create a content page - a step in our executor.
|
|
6
|
+
* Each individual step can have different styles, content and settings.
|
|
7
|
+
*
|
|
8
|
+
* Example of usage:
|
|
9
|
+
*
|
|
10
|
+
* ```
|
|
11
|
+
* <mefdev-executor-page
|
|
12
|
+
* [title]="'Executor title 1'"
|
|
13
|
+
* [isActive]="mainExecutor.activePageInd === 0"
|
|
14
|
+
* [isCompleted]="mainExecutor.activePageInd >= 0"
|
|
15
|
+
* class="yourClass">
|
|
16
|
+
* <!-- Content of the first executor step -->
|
|
17
|
+
* </mefdev-executor-page>
|
|
18
|
+
* <mefdev-executor-page
|
|
19
|
+
* [title]="'Executor title 2'"
|
|
20
|
+
* [isActive]="mainExecutor.activePageInd === 1"
|
|
21
|
+
* [isCompleted]="mainExecutor.activePageInd >= 1"
|
|
22
|
+
* class="yourClass">
|
|
23
|
+
* <!-- Content of the second executor step -->
|
|
24
|
+
* </mefdev-executor-page>
|
|
25
|
+
* <mefdev-executor-page
|
|
26
|
+
* [title]="'Executor title 3'"
|
|
27
|
+
* [isActive]="mainExecutor.activePageInd === 2"
|
|
28
|
+
* [isCompleted]="mainExecutor.activePageInd >= 2"
|
|
29
|
+
* class="yourClass">
|
|
30
|
+
* <!-- Content of the third executor step -->
|
|
31
|
+
* </mefdev-executor-page>
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
4
35
|
export class MefdevExecutorPageComponent {
|
|
5
36
|
_mainExecutor;
|
|
6
37
|
_elementRef;
|
|
38
|
+
/**
|
|
39
|
+
* The title of the step
|
|
40
|
+
* @usageNotes
|
|
41
|
+
* ```
|
|
42
|
+
* <mefdev-executor-page [title]="'Description of situation 1'"></mefdev-executor-page>
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
7
45
|
title;
|
|
46
|
+
/**
|
|
47
|
+
* The input parameter that corresponds to whether the current step matches the respective page.
|
|
48
|
+
* The value of the active page is passed by reference from the specific component StepExecutorComponent.
|
|
49
|
+
*
|
|
50
|
+
* @usageNotes
|
|
51
|
+
* ```
|
|
52
|
+
* <mefdev-step-executor #mainExecutor>
|
|
53
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 0">
|
|
54
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 1">
|
|
55
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 2">
|
|
56
|
+
* </<mefdev-step-executor>
|
|
57
|
+
*
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
8
60
|
isActive = false;
|
|
61
|
+
/**
|
|
62
|
+
* The input parameter that checks whether the step is completed.
|
|
63
|
+
*
|
|
64
|
+
* @usageNotes
|
|
65
|
+
* ```
|
|
66
|
+
* <mefdev-executor-page [isCompleted]="mainExecutor.activePageInd >= 0"></mefdev-executor-page>
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
9
69
|
isCompleted = false;
|
|
70
|
+
/**
|
|
71
|
+
* The output parameter that emits a boolean value indicating whether our completed step has changed.
|
|
72
|
+
*
|
|
73
|
+
* @usageNotes
|
|
74
|
+
* ```
|
|
75
|
+
* <mefdev-executor-page (isCompletedChange)="onStepChanged($event)"></mefdev-executor-page>
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
10
78
|
isCompletedChange = new EventEmitter();
|
|
11
79
|
elRef;
|
|
12
80
|
constructor(_mainExecutor, _elementRef) {
|
|
@@ -41,4 +109,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
41
109
|
}], isCompletedChange: [{
|
|
42
110
|
type: Output
|
|
43
111
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVmZGV2LWV4ZWN1dG9yLXBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkta2l0LWxpYi9zcmMvbGliL21hcmt1cC1raXQvZXhlY3V0b3JzL21lZmRldi1leGVjdXRvci1wYWdlL21lZmRldi1leGVjdXRvci1wYWdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFjLFlBQVksRUFBRSxJQUFJLEVBQ3pDLEtBQUssRUFBYSxNQUFNLEVBQ3pCLE1BQU0sZUFBZSxDQUFDOzs7QUFHdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQThCSTtBQU9KLE1BQU0sT0FBTywyQkFBMkI7SUFtRGxCO0lBQ1I7SUFsRFo7Ozs7OztPQU1HO0lBQ00sS0FBSyxDQUFTO0lBRXZCOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDTSxRQUFRLEdBQVksS0FBSyxDQUFDO0lBR25DOzs7Ozs7O09BT0c7SUFDTSxXQUFXLEdBQVksS0FBSyxDQUFDO0lBRXRDOzs7Ozs7O09BT0c7SUFDTyxpQkFBaUIsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUUxRSxLQUFLLENBQWE7SUFFekIsWUFDb0IsYUFBb0MsRUFDNUMsV0FBdUI7UUFEZixrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7UUFDNUMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFFakMsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7UUFDekIsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsSUFBSSxhQUFhLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ3JDLGFBQWEsQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNwRSxDQUFDO3VHQS9EVSwyQkFBMkI7MkZBQTNCLDJCQUEyQixvTkFINUIsMkJBQTJCOzsyRkFHMUIsMkJBQTJCO2tCQUx2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3RDOzswQkFxRE0sSUFBSTtxRUExQ0EsS0FBSztzQkFBYixLQUFLO2dCQWdCRyxRQUFRO3NCQUFoQixLQUFLO2dCQVdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBVUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdCxcclxuICBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXNcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RlcEV4ZWN1dG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vc3RlcC1leGVjdXRvci9zdGVwLWV4ZWN1dG9yLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQSBjb21wb25lbnQgdGhhdCBhbGxvd3MgdXMgdG8gY3JlYXRlIGEgY29udGVudCBwYWdlIC0gYSBzdGVwIGluIG91ciBleGVjdXRvci5cclxuICogRWFjaCBpbmRpdmlkdWFsIHN0ZXAgY2FuIGhhdmUgZGlmZmVyZW50IHN0eWxlcywgY29udGVudCBhbmQgc2V0dGluZ3MuXHJcbiAqXHJcbiAqIEV4YW1wbGUgb2YgdXNhZ2U6XHJcbiAqXHJcbiAqIGBgYFxyXG4gKiAgPG1lZmRldi1leGVjdXRvci1wYWdlXHJcbiAqICAgICBbdGl0bGVdPVwiJ0V4ZWN1dG9yIHRpdGxlIDEnXCJcclxuICogICAgIFtpc0FjdGl2ZV09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA9PT0gMFwiXHJcbiAqICAgICBbaXNDb21wbGV0ZWRdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPj0gMFwiXHJcbiAqICAgICBjbGFzcz1cInlvdXJDbGFzc1wiPlxyXG4gKiAgICAgIDwhLS0gQ29udGVudCBvZiB0aGUgZmlyc3QgZXhlY3V0b3Igc3RlcCAtLT5cclxuICogIDwvbWVmZGV2LWV4ZWN1dG9yLXBhZ2U+XHJcbiAqICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2VcclxuICogICAgIFt0aXRsZV09XCInRXhlY3V0b3IgdGl0bGUgMidcIlxyXG4gKiAgICAgW2lzQWN0aXZlXT1cIm1haW5FeGVjdXRvci5hY3RpdmVQYWdlSW5kID09PSAxXCJcclxuICogICAgIFtpc0NvbXBsZXRlZF09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA+PSAxXCJcclxuICogICAgIGNsYXNzPVwieW91ckNsYXNzXCI+XHJcbiAqICAgICAgPCEtLSBDb250ZW50IG9mIHRoZSBzZWNvbmQgZXhlY3V0b3Igc3RlcCAtLT5cclxuICogIDwvbWVmZGV2LWV4ZWN1dG9yLXBhZ2U+XHJcbiAqICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2VcclxuICogICAgIFt0aXRsZV09XCInRXhlY3V0b3IgdGl0bGUgMydcIlxyXG4gKiAgICAgW2lzQWN0aXZlXT1cIm1haW5FeGVjdXRvci5hY3RpdmVQYWdlSW5kID09PSAyXCJcclxuICogICAgIFtpc0NvbXBsZXRlZF09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA+PSAyXCJcclxuICogICAgIGNsYXNzPVwieW91ckNsYXNzXCI+XHJcbiAqICAgICAgPCEtLSBDb250ZW50IG9mIHRoZSB0aGlyZCBleGVjdXRvciBzdGVwIC0tPlxyXG4gKiAgPC9tZWZkZXYtZXhlY3V0b3ItcGFnZT5cclxuICogYGBgXHJcbiAqXHJcbiAgKi9cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWVmZGV2LWV4ZWN1dG9yLXBhZ2UnLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgTWVmZGV2RXhlY3V0b3JQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHRpdGxlIG9mIHRoZSBzdGVwXHJcbiAgICogQHVzYWdlTm90ZXNcclxuICAgKiBgYGBcclxuICAgKiAgPG1lZmRldi1leGVjdXRvci1wYWdlIFt0aXRsZV09XCInRGVzY3JpcHRpb24gb2Ygc2l0dWF0aW9uIDEnXCI+PC9tZWZkZXYtZXhlY3V0b3ItcGFnZT5cclxuICAgKiBgYGBcclxuICAgKi9cclxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgaW5wdXQgcGFyYW1ldGVyIHRoYXQgY29ycmVzcG9uZHMgdG8gd2hldGhlciB0aGUgY3VycmVudCBzdGVwIG1hdGNoZXMgdGhlIHJlc3BlY3RpdmUgcGFnZS5cclxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIGFjdGl2ZSBwYWdlIGlzIHBhc3NlZCBieSByZWZlcmVuY2UgZnJvbSB0aGUgc3BlY2lmaWMgY29tcG9uZW50IFN0ZXBFeGVjdXRvckNvbXBvbmVudC5cclxuICAgKlxyXG4gICAqIEB1c2FnZU5vdGVzXHJcbiAgICogYGBgXHJcbiAgICogIDxtZWZkZXYtc3RlcC1leGVjdXRvciAjbWFpbkV4ZWN1dG9yPlxyXG4gICAqICAgIDxtZWZkZXYtZXhlY3V0b3ItcGFnZSBbaXNBY3RpdmVdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPT09IDBcIj5cclxuICAgKiAgICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2UgW2lzQWN0aXZlXT1cIm1haW5FeGVjdXRvci5hY3RpdmVQYWdlSW5kID09PSAxXCI+XHJcbiAgICogICAgPG1lZmRldi1leGVjdXRvci1wYWdlIFtpc0FjdGl2ZV09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA9PT0gMlwiPlxyXG4gICAqICA8LzxtZWZkZXYtc3RlcC1leGVjdXRvcj5cclxuICAgKlxyXG4gICAqIGBgYFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGlzQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBUaGUgaW5wdXQgcGFyYW1ldGVyIHRoYXQgY2hlY2tzIHdoZXRoZXIgdGhlIHN0ZXAgaXMgY29tcGxldGVkLlxyXG4gICAqXHJcbiAgICogQHVzYWdlTm90ZXNcclxuICAgKiBgYGBcclxuICAgKiAgPG1lZmRldi1leGVjdXRvci1wYWdlIFtpc0NvbXBsZXRlZF09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA+PSAwXCI+PC9tZWZkZXYtZXhlY3V0b3ItcGFnZT5cclxuICAgKiBgYGBcclxuICAgKi9cclxuICBASW5wdXQoKSBpc0NvbXBsZXRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgb3V0cHV0IHBhcmFtZXRlciB0aGF0IGVtaXRzIGEgYm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIgb3VyIGNvbXBsZXRlZCBzdGVwIGhhcyBjaGFuZ2VkLlxyXG4gICAqXHJcbiAgICogQHVzYWdlTm90ZXNcclxuICAgKiBgYGBcclxuICAgKiAgPG1lZmRldi1leGVjdXRvci1wYWdlIChpc0NvbXBsZXRlZENoYW5nZSk9XCJvblN0ZXBDaGFuZ2VkKCRldmVudClcIj48L21lZmRldi1leGVjdXRvci1wYWdlPlxyXG4gICAqIGBgYFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBpc0NvbXBsZXRlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwdWJsaWMgZWxSZWY6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgICBASG9zdCgpIHByaXZhdGUgX21haW5FeGVjdXRvcjogU3RlcEV4ZWN1dG9yQ29tcG9uZW50LFxyXG4gICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgKSB7XHJcbiAgICB0aGlzLmVsUmVmID0gX2VsZW1lbnRSZWY7XHJcbiAgICBfbWFpbkV4ZWN1dG9yLnBhZ2VzLnB1c2godGhpcyk7XHJcbiAgICBpZiAoX21haW5FeGVjdXRvci5hY3RpdmVQYWdlSW5kID09IC0xKSB7XHJcbiAgICAgIF9tYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA9IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICB0aGlzLmlzQ29tcGxldGVkQ2hhbmdlLmVtaXQoY2hhbmdlc1snaXNDb21wbGV0ZWQnXT8uY3VycmVudFZhbHVlKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@angular/common";
|
|
4
|
+
/**
|
|
5
|
+
* @ignore
|
|
6
|
+
*/
|
|
4
7
|
export class StageComponent {
|
|
5
8
|
currentExecutorStep;
|
|
6
9
|
isRightModal;
|
|
@@ -21,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
21
24
|
}], title: [{
|
|
22
25
|
type: Input
|
|
23
26
|
}] } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkta2l0LWxpYi9zcmMvbGliL21hcmt1cC1raXQvZXhlY3V0b3JzL3N0YWdlL3N0YWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWtpdC1saWIvc3JjL2xpYi9tYXJrdXAta2l0L2V4ZWN1dG9ycy9zdGFnZS9zdGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRWpEOztHQUVHO0FBUUgsTUFBTSxPQUFPLGNBQWM7SUFFaEIsbUJBQW1CLENBQVM7SUFDNUIsWUFBWSxDQUFVO0lBQ3RCLFdBQVcsQ0FBVTtJQUNyQixLQUFLLENBQVM7dUdBTFosY0FBYzsyRkFBZCxjQUFjLHNMQ1ozQix5c0NBdUJBOzsyRkRYYSxjQUFjO2tCQU4xQixTQUFTOytCQUNFLGNBQWM7OEJBT2YsbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKi9cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWVmZGV2LXN0YWdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N0YWdlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU3RhZ2VDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBjdXJyZW50RXhlY3V0b3JTdGVwOiBudW1iZXI7XHJcbiAgQElucHV0KCkgaXNSaWdodE1vZGFsOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGlzQ29tcGxldGVkOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzdGVwXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ29tcGxldGVkIGVsc2UgZG9uZVwiPlxyXG4gICAgICAgIDxzdmcgd2lkdGg9XCIzNlwiIGhlaWdodD1cIjM2XCIgdmlld0JveD1cIjAgMCAzNiAzNlwiIFtuZ1N0eWxlXT1cImlzUmlnaHRNb2RhbCA/IHsgJ2ZpbGwnOiAnI0ZGRkZGRicgfSA6IHsgJ2ZpbGwnOiAnI0YzRjNGMycgfVwiPlxyXG4gICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiByeD1cIjE4XCIgLz5cclxuICAgICAgICAgICAgPHRleHQgY2xhc3M9XCJib2R5LTNcIiB4PVwiNTAlXCIgeT1cIjUwJVwiIGRvbWluYW50LWJhc2VsaW5lPVwibWlkZGxlXCIgdGV4dC1hbmNob3I9XCJtaWRkbGVcIiBmb250LXNpemU9XCIxNlwiIGZpbGw9XCJibGFja1wiPlxyXG4gICAgICAgICAgICAgICAge3sgY3VycmVudEV4ZWN1dG9yU3RlcCB9fVxyXG4gICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJvZHktNiBkZXNjcmlwdGlvblN0ZXBUZXh0XCIgKm5nSWY9XCIhaXNSaWdodE1vZGFsXCI+XHJcbiAgICAgICAgICAgIHt7IHRpdGxlIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjZG9uZT5cclxuICAgIDxzdmcgd2lkdGg9XCIzNlwiIGhlaWdodD1cIjM2XCIgdmlld0JveD1cIjAgMCAzNiAzNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgIDxyZWN0IHg9XCIwLjVcIiB5PVwiMC41XCIgd2lkdGg9XCIzNVwiIGhlaWdodD1cIjM1XCIgcng9XCIxNy41XCIgc3Ryb2tlPVwiIzkyOTI5MlwiLz5cclxuICAgICAgICA8cGF0aCBkPVwiTTI0LjczNzMgMTBMMTQuNTQ2NiAyMC4zNzY5TDExLjI0MTUgMTcuMDExNEw4IDIwLjMxMjJMMTEuMzA1MSAyMy42Nzc3TDE0LjU2NzggMjdMMTcuODA5MyAyMy42OTkyTDI4IDEzLjMyMjRMMjQuNzM3MyAxMFpcIlxyXG4gICAgICAgICAgICAgIGZpbGw9XCIjMjhCNDQ2XCIvPlxyXG4gICAgPC9zdmc+XHJcbiAgICA8c3BhbiBjbGFzcz1cImJvZHktNiBkZXNjcmlwdGlvblN0ZXBUZXh0XCIgKm5nSWY9XCIhaXNSaWdodE1vZGFsXCI+XHJcbiAgICAgICAge3sgdGl0bGUgfX1cclxuICAgIDwvc3Bhbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
|
@@ -2,13 +2,104 @@ import { Component, ContentChild, EventEmitter, Input, Output, ViewChild } from
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@angular/common";
|
|
4
4
|
import * as i2 from "../stage/stage.component";
|
|
5
|
+
/**
|
|
6
|
+
* Wrapper component that represents a specific encapsulated executor.
|
|
7
|
+
*
|
|
8
|
+
* Example of usage:
|
|
9
|
+
*```
|
|
10
|
+
* <mefdev-step-executor #mainExecutor [view]="'regular'">
|
|
11
|
+
*
|
|
12
|
+
* <ng-template #title>
|
|
13
|
+
* <!-- Content for the executor title -->
|
|
14
|
+
* </ng-template>
|
|
15
|
+
* <ng-template #description>
|
|
16
|
+
* <!-- Content for the executor description -->
|
|
17
|
+
* </ng-template>
|
|
18
|
+
*
|
|
19
|
+
* <mefdev-executor-page
|
|
20
|
+
* [title]="'Description of situation 1'"
|
|
21
|
+
* [isActive]="mainExecutor.activePageInd === 0"
|
|
22
|
+
* [isCompleted]="mainExecutor.activePageInd >= 0">
|
|
23
|
+
* <!-- Content of the first executor step -->
|
|
24
|
+
* </mefdev-executor-page>
|
|
25
|
+
* <mefdev-executor-page
|
|
26
|
+
* [title]="'Description of situation 2'"
|
|
27
|
+
* [isActive]="mainExecutor.activePageInd === 1"
|
|
28
|
+
* [isCompleted]="mainExecutor.activePageInd >= 1">
|
|
29
|
+
* <!-- Content of the second executor step -->
|
|
30
|
+
* </mefdev-executor-page>
|
|
31
|
+
* <mefdev-executor-page
|
|
32
|
+
* [title]="'Description of situation 3'"
|
|
33
|
+
* [isActive]="mainExecutor.activePageInd === 2"
|
|
34
|
+
* [isCompleted]="mainExecutor.activePageInd >= 2">
|
|
35
|
+
* <!-- Content of the third executor step -->
|
|
36
|
+
* </mefdev-executor-page>
|
|
37
|
+
*
|
|
38
|
+
* <ng-template #footer>
|
|
39
|
+
* <!-- Content for the executor footer -->
|
|
40
|
+
* <ng-template>
|
|
41
|
+
*
|
|
42
|
+
* </mefdev-step-executor>
|
|
43
|
+
*
|
|
44
|
+
*```
|
|
45
|
+
*/
|
|
5
46
|
export class StepExecutorComponent {
|
|
6
47
|
renderer;
|
|
48
|
+
/**
|
|
49
|
+
* Mandatory input parameter that specifies the type of the step-by-step wizard.
|
|
50
|
+
* It can have three options: regular, modal, right.
|
|
51
|
+
*
|
|
52
|
+
* @usageNotes
|
|
53
|
+
* ```
|
|
54
|
+
* <mefdev-step-executor #mainExecutor [view]="'regular'"></mefdev-step-executor>
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
7
57
|
view;
|
|
58
|
+
/**
|
|
59
|
+
* ViewChild reference to the host executor content.
|
|
60
|
+
*/
|
|
8
61
|
container;
|
|
62
|
+
/**
|
|
63
|
+
* Template for displaying the content of the executor title.
|
|
64
|
+
*
|
|
65
|
+
* @usageNotes
|
|
66
|
+
* ```
|
|
67
|
+
* <ng-template #title>
|
|
68
|
+
* <!-- Content for the executor title -->
|
|
69
|
+
* </ng-template>
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
9
72
|
title;
|
|
73
|
+
/**
|
|
74
|
+
* Template for displaying the content of the executor description.
|
|
75
|
+
*
|
|
76
|
+
* @usageNotes
|
|
77
|
+
* ```
|
|
78
|
+
* <ng-template #description>
|
|
79
|
+
* <!-- Content for the executor description -->
|
|
80
|
+
* </ng-template>
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
10
83
|
description;
|
|
84
|
+
/**
|
|
85
|
+
* Template for displaying the content of the executor footer.
|
|
86
|
+
*
|
|
87
|
+
* @usageNotes
|
|
88
|
+
* ```
|
|
89
|
+
* <ng-template #footer>
|
|
90
|
+
* <!-- Content for the executor footer -->
|
|
91
|
+
* </ng-template>
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
11
94
|
footer;
|
|
95
|
+
/**
|
|
96
|
+
* The output parameter that emits the class of the active page - active step.
|
|
97
|
+
*
|
|
98
|
+
* @usageNotes
|
|
99
|
+
* ```
|
|
100
|
+
* <mefdev-step-executor #mainExecutor (onActivePageChange)="getActiveStep($event)"></mefdev-step-executor>
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
12
103
|
onActivePageChange = new EventEmitter();
|
|
13
104
|
_activePageInd = 0;
|
|
14
105
|
pages = [];
|
|
@@ -35,15 +126,24 @@ export class StepExecutorComponent {
|
|
|
35
126
|
this.renderer.appendChild(this.container.nativeElement, this.activePage?.elRef.nativeElement);
|
|
36
127
|
this.onActivePageChange.emit(this.pages.find((el) => el.isActive));
|
|
37
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Check whether there is a next step of the executor. If we are at the last step - disable the 'next' button
|
|
131
|
+
*/
|
|
38
132
|
nextBtnIsDisabled() {
|
|
39
133
|
return this._activePageInd === this.pages.length - 1;
|
|
40
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Check whether there is a next step of the executor. If we are at the last step - disable the 'next' button
|
|
137
|
+
*/
|
|
41
138
|
prev() {
|
|
42
139
|
const newPageInd = this.activePageInd - 1;
|
|
43
140
|
if (newPageInd >= 0) {
|
|
44
141
|
this.activePageInd = newPageInd;
|
|
45
142
|
}
|
|
46
143
|
}
|
|
144
|
+
/**
|
|
145
|
+
* Go back to the previous step
|
|
146
|
+
*/
|
|
47
147
|
cancel() {
|
|
48
148
|
this.activePageInd = 0;
|
|
49
149
|
const newPageInd = this.activePageInd - 1;
|
|
@@ -51,21 +151,33 @@ export class StepExecutorComponent {
|
|
|
51
151
|
this.activePageInd = newPageInd;
|
|
52
152
|
}
|
|
53
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Go to the next step
|
|
156
|
+
*/
|
|
54
157
|
next() {
|
|
55
158
|
const newPageInd = this.activePageInd + 1;
|
|
56
159
|
if (newPageInd < this.pages.length) {
|
|
57
160
|
this.activePageInd = newPageInd;
|
|
58
161
|
}
|
|
59
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Set a specific active page
|
|
165
|
+
*/
|
|
60
166
|
setActivePage(pageNumber) {
|
|
61
167
|
pageNumber -= 1;
|
|
62
168
|
if (pageNumber < this.pages.length && pageNumber >= 0) {
|
|
63
169
|
this.activePageInd = pageNumber;
|
|
64
170
|
}
|
|
65
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Add new page
|
|
174
|
+
*/
|
|
66
175
|
addPage(page) {
|
|
67
176
|
this.pages.push(page);
|
|
68
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* Delete a specific page
|
|
180
|
+
*/
|
|
69
181
|
removeSpecificPage(page) {
|
|
70
182
|
const index = this.pages.indexOf(page);
|
|
71
183
|
if (index !== -1) {
|
|
@@ -75,6 +187,9 @@ export class StepExecutorComponent {
|
|
|
75
187
|
}
|
|
76
188
|
}
|
|
77
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Delete a page by its index
|
|
192
|
+
*/
|
|
78
193
|
removePageByIndex(index) {
|
|
79
194
|
if (index >= 0 && index < this.pages.length) {
|
|
80
195
|
this.pages.splice(index, 1);
|
|
@@ -107,4 +222,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
107
222
|
}], onActivePageChange: [{
|
|
108
223
|
type: Output
|
|
109
224
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1leGVjdXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQtbGliL3NyYy9saWIvbWFya3VwLWtpdC9leGVjdXRvcnMvc3RlcC1leGVjdXRvci9zdGVwLWV4ZWN1dG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWtpdC1saWIvc3JjL2xpYi9tYXJrdXAta2l0L2V4ZWN1dG9ycy9zdGVwLWV4ZWN1dG9yL3N0ZXAtZXhlY3V0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNZLFNBQVMsRUFDeEIsWUFBWSxFQUNaLFlBQVksRUFBRSxLQUFLLEVBQ25CLE1BQU0sRUFDTyxTQUFTLEVBQ3pCLE1BQU0sZUFBZSxDQUFDOzs7O0FBU3ZCLE1BQU0sT0FBTyxxQkFBcUI7SUFZVjtJQVZLLElBQUksQ0FBUztJQUNkLFNBQVMsQ0FBMEI7SUFDcEMsS0FBSyxDQUFvQjtJQUNuQixXQUFXLENBQW9CO0lBQ3BDLE1BQU0sQ0FBb0I7SUFDeEMsa0JBQWtCLEdBQThDLElBQUksWUFBWSxFQUErQixDQUFDO0lBRW5ILGNBQWMsR0FBVyxDQUFDLENBQUM7SUFDM0IsS0FBSyxHQUFrQyxFQUFFLENBQUM7SUFFakQsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFHLENBQUM7SUFFM0MsSUFBVyxhQUFhLENBQUMsZ0JBQXdCO1FBQzdDLElBQUksQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUM7UUFDdkMsSUFBSSxnQkFBZ0IsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN6QyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFNBQVMsSUFBSSxFQUFFLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFNB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LENBQUMsSUFBSSxFQUFFLENBQUM7YUFDZjtTQUNKO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQWE7UUFDM0IsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2Y7U0FDSjtJQUVMLENBQUM7dUdBN0ZRLHFCQUFxQjsyRkFBckIscUJBQXFCLGlnQkNmbEMsK2hKQXVIQTs7MkZEeEdhLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDSSxzQkFBc0I7Z0dBT1AsSUFBSTtzQkFBNUIsS0FBSzt1QkFBQyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUM7Z0JBQ0MsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUNDLEtBQUs7c0JBQTNCLFlBQVk7dUJBQUMsT0FBTztnQkFDUSxXQUFXO3NCQUF2QyxZQUFZO3VCQUFDLGFBQWE7Z0JBQ0gsTUFBTTtzQkFBN0IsWUFBWTt1QkFBQyxRQUFRO2dCQUNaLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsXHJcbiAgICBDb250ZW50Q2hpbGQsIEVsZW1lbnRSZWYsXHJcbiAgICBFdmVudEVtaXR0ZXIsIElucHV0LFxyXG4gICAgT3V0cHV0LCBSZW5kZXJlcjIsXHJcbiAgICBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uL21lZmRldi1leGVjdXRvci1wYWdlL21lZmRldi1leGVjdXRvci1wYWdlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbWVmZGV2LXN0ZXAtZXhlY3V0b3InLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N0ZXAtZXhlY3V0b3IuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vc3RlcC1leGVjdXRvci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU3RlcEV4ZWN1dG9yQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pIHZpZXc6IHN0cmluZztcclxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgICBAQ29udGVudENoaWxkKCd0aXRsZScpIHRpdGxlOiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICAgIEBDb250ZW50Q2hpbGQoJ2Rlc2NyaXB0aW9uJykgZGVzY3JpcHRpb246IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG4gICAgQENvbnRlbnRDaGlsZCgnZm9vdGVyJykgZm9vdGVyOiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICAgIEBPdXRwdXQoKSBvbkFjdGl2ZVBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQ+KCk7XHJcblxyXG4gICAgcHVibGljIF9hY3RpdmVQYWdlSW5kOiBudW1iZXIgPSAwO1xyXG4gICAgcHVibGljIHBhZ2VzOiBNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnRbXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cclxuXHJcbiAgICBwdWJsaWMgc2V0IGFjdGl2ZVBhZ2VJbmQoYWN0aXZlUGFnZU51bWJlcjogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5fYWN0aXZlUGFnZUluZCA9IGFjdGl2ZVBhZ2VOdW1iZXI7XHJcbiAgICAgICAgaWYgKGFjdGl2ZVBhZ2VOdW1iZXIgPj0gMCAmJiB0aGlzLmNvbnRhaW5lcikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgIT0gJycpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCB0aGlzLmFjdGl2ZVBhZ2U/LmVsUmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgICAgICB0aGlzLm9uQWN0aXZlUGFnZUNoYW5nZS5lbWl0KHRoaXMucGFnZXMuZmluZCgoZWw6IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCkgPT4gZWwuaXNBY3RpdmUpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBhY3RpdmVQYWdlSW5kKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBhZ2VJbmQ7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGFjdGl2ZVBhZ2UoKTogTWVmZGV2RXhlY3V0b3JQYWdlQ29tcG9uZW50IHwgbnVsbCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlUGFnZUluZCA9PSAtMSA/IG51bGwgOiB0aGlzLnBhZ2VzW3RoaXMuYWN0aXZlUGFnZUluZF07XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCwgdGhpcy5hY3RpdmVQYWdlPy5lbFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgICAgICB0aGlzLm9uQWN0aXZlUGFnZUNoYW5nZS5lbWl0KHRoaXMucGFnZXMuZmluZCgoZWw6IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCkgPT4gZWwuaXNBY3RpdmUpKTtcclxuICAgIH1cclxuXHJcbiAgICBuZXh0QnRuSXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYWN0aXZlUGFnZUluZCA9PT0gdGhpcy5wYWdlcy5sZW5ndGggLSAxO1xyXG4gICAgfVxyXG5cclxuICAgIHByZXYoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgbmV3UGFnZUluZCA9IHRoaXMuYWN0aXZlUGFnZUluZCAtIDE7XHJcbiAgICAgICAgaWYgKG5ld1BhZ2VJbmQgPj0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmQgPSBuZXdQYWdlSW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWwoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kID0gMDtcclxuICAgICAgICBjb25zdCBuZXdQYWdlSW5kID0gdGhpcy5hY3RpdmVQYWdlSW5kIC0gMTtcclxuICAgICAgICBpZiAobmV3UGFnZUluZCA+PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUGFnZUluZCA9IG5ld1BhZ2VJbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5leHQoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgbmV3UGFnZUluZCA9IHRoaXMuYWN0aXZlUGFnZUluZCArIDE7XHJcbiAgICAgICAgaWYgKG5ld1BhZ2VJbmQgPCB0aGlzLnBhZ2VzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmQgPSBuZXdQYWdlSW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZXRBY3RpdmVQYWdlKHBhZ2VOdW1iZXI6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIHBhZ2VOdW1iZXIgLT0gMTtcclxuICAgICAgICBpZiAocGFnZU51bWJlciA8IHRoaXMucGFnZXMubGVuZ3RoICYmIHBhZ2VOdW1iZXIgPj0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmQgPSBwYWdlTnVtYmVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhZGRQYWdlKHBhZ2U6IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucGFnZXMucHVzaChwYWdlKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVTcGVjaWZpY1BhZ2UocGFnZTogTWVmZGV2RXhlY3V0b3JQYWdlQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgaW5kZXg6IG51bWJlciA9IHRoaXMucGFnZXMuaW5kZXhPZihwYWdlKTtcclxuICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZVBhZ2VJbmQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucHJldigpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZVBhZ2VCeUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICBpZiAoaW5kZXggPj0gMCAmJiBpbmRleCA8IHRoaXMucGFnZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZVBhZ2VJbmQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucHJldigpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG59XHJcbiIsIjwhLS12aWV3ID09IHJlZ3VsYXItLT5cclxuXHJcbjxkaXYgY2xhc3M9XCJzdGVwRXhlY3V0b3JCbG9ja1wiICpuZ0lmPVwidmlldyA9PT0gJ3JlZ3VsYXInXCI+XHJcbiAgPGhlYWRlciBjbGFzcz1cInN0ZXBFeGVjdXRvckhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInN0ZXBFeGVjdXRvckhlYWRlclRleHRcIj5cclxuICAgICAgPGgxIGNsYXNzPVwidGl0bGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvaDE+XHJcbiAgICAgIDxwIGNsYXNzPVwiYm9keS01XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZXNjcmlwdGlvblwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJzdGVwc1wiPlxyXG4gICAgICA8bWVmZGV2LXN0YWdlICpuZ0Zvcj1cImxldCBwYWdlIG9mIHBhZ2VzOyBsZXQgcGFnZUluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc1JpZ2h0TW9kYWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJwYWdlLnRpdGxlXCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VycmVudEV4ZWN1dG9yU3RlcF09XCJwYWdlSW5kZXggKyAxXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNDb21wbGV0ZWRdPVwicGFnZS5pc0NvbXBsZXRlZFwiPlxyXG4gICAgICA8L21lZmRldi1zdGFnZT5cclxuICAgIDwvZGl2PlxyXG4gIDwvaGVhZGVyPlxyXG5cclxuICA8ZGl2ICpuZ0lmPVwiYWN0aXZlUGFnZVwiIGNsYXNzPVwiZXhlY3V0b3JDaGFuZ2VDb250ZW50XCI+XHJcbiAgICA8ZGl2ICNjb250YWluZXI+PC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJmb290ZXJCdXR0b25zXCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcblxyXG48IS0tdmlldyA9PSBtb2RhbC0tPlxyXG5cclxuPGRpdiBjbGFzcz1cIm1vZGFsU3RlcEV4ZWN1dG9yXCIgKm5nSWY9XCJ2aWV3ID09PSAnbW9kYWwnXCI+XHJcblxyXG4gIDxoZWFkZXIgY2xhc3M9XCJtb2RhbEhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImhlYWRlck1vZGFsVGV4dFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dEFuZENsb3NlQnV0dG9uXCI+XHJcbiAgICAgICAgPGgxIGNsYXNzPVwidGl0bGVcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2gxPlxyXG4gICAgICAgIDxwIGNsYXNzPVwiYm9keS01XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlc2NyaXB0aW9uXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9wPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGFydGljbGUgY2xhc3M9XCJjbG9zZUJ0blwiPlxyXG4gICAgICAgIDxzdmcgd2lkdGg9XCIxNVwiIGhlaWdodD1cIjE1XCIgdmlld0JveD1cIjAgMCAxNSAxNVwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTYuMjY3MzUgNy42ODEzNUwwLjYxMDM1MiAyLjAyNDM1TDIuMDI0MzUgMC42MTAzNTJMNy42ODEzNSA2LjI2NzM1TDEzLjMzODQgMC42MTAzNTJMMTQuNzUyNCAyLjAyNDM1TDkuMDk1MzUgNy42ODEzNUwxNC43NTI0IDEzLjMzODRMMTMuMzM4NCAxNC43NTI0TDcuNjgxMzUgOS4wOTUzNUwyLjAyNDM1IDE0Ljc1MjRMMC42MTAzNTIgMTMuMzM4NEw2LjI2NzM1IDcuNjgxMzVaXCIgZmlsbD1cIiM0RDRENERcIi8+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgIDwvYXJ0aWNsZT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsU3RlcHNcIj5cclxuICAgICAgPG1lZmRldi1zdGFnZSAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlczsgbGV0IHBhZ2VJbmRleCA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNSaWdodE1vZGFsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwicGFnZS50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRFeGVjdXRvclN0ZXBdPVwicGFnZUluZGV4ICsgMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lzQ29tcGxldGVkXT1cInBhZ2UuaXNDb21wbGV0ZWRcIj5cclxuICAgICAgPC9tZWZkZXYtc3RhZ2U+XHJcbiAgICA8L2Rpdj5cclxuICA8L2hlYWRlcj5cclxuXHJcbiAgPG1haW4gKm5nSWY9XCJhY3RpdmVQYWdlXCIgY2xhc3M9XCJtb2RhbEV4ZWN1dG9yTWFpbkNvbnRlbnRcIj5cclxuICAgIDxkaXYgI2NvbnRhaW5lcj48L2Rpdj5cclxuICA8L21haW4+XHJcblxyXG4gIDxmb290ZXIgY2xhc3M9XCJtb2RhbEZvb3RlclwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L2Zvb3Rlcj5cclxuXHJcbjwvZGl2PlxyXG5cclxuPCEtLXZpZXcgPT0gcmlnaHQtLT5cclxuXHJcbjxkaXYgY2xhc3M9XCJyaWdodEV4ZWN1dG9yQmxvY2tcIiAqbmdJZj1cInZpZXcgPT09ICdyaWdodCdcIj5cclxuXHJcbiAgPGhlYWRlciBjbGFzcz1cInJpZ2h0RXhlY3V0b3JIZWFkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyaWdodEV4ZWN1dG9yVGV4dEFuZENsb3NlQnV0dG9uXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiYm9keS0xXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aXRsZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxwIGNsYXNzPVwiYm9keS01XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZXNjcmlwdGlvblwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjbG9zZUJ1dHRvblwiPlxyXG4gICAgICA8c3ZnIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxN1wiIHZpZXdCb3g9XCIwIDAgMTcgMTdcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTYuMDU2NiAxLjU5OTcxTDE0LjY1NjYgMC4xOTk3MDdMOC4wNTY2NCA2Ljc5OTcxTDEuNDU2NjQgMC4xOTk3MDdMMC4wNTY2NDA2IDEuNTk5NzFMNi42NTY2NCA4LjE5OTcxTDAuMDU2NjQwNiAxNC43OTk3TDEuNDU2NjQgMTYuMTk5N0w4LjA1NjY0IDkuNTk5NzFMMTQuNjU2NiAxNi4xOTk3TDE2LjA1NjYgMTQuNzk5N0w5LjQ1NjY0IDguMTk5NzFMMTYuMDU2NiAxLjU5OTcxWlwiIGZpbGw9XCIjNTI1MjUyXCIvPlxyXG4gICAgICA8L3N2Zz5cclxuICAgIDwvZGl2PlxyXG4gIDwvaGVhZGVyPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgPHN2ZyB3aWR0aD1cIjM2M1wiIGhlaWdodD1cIjFcIiB2aWV3Qm94PVwiMCAwIDM2MyAxXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgIDxsaW5lIHgxPVwiLTQuMzcxMTRlLTA4XCIgeTE9XCIwLjVcIiB4Mj1cIjM2Mi42NzRcIiB5Mj1cIjAuNDk5OTY4XCIgc3Ryb2tlPVwiIzRENEQ0RFwiLz5cclxuICAgIDwvc3ZnPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29udGVudEV4ZWN1dG9yXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmlnaHRDaGFuZ2VDb250ZW50XCI+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJhY3RpdmVQYWdlXCIgY2xhc3M9XCJleGVjdXRvckNoYW5nZUNvbnRlbnRcIj5cclxuICAgICAgICA8ZGl2ICNjb250YWluZXI+PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicmlnaHRTdGVwc1wiPlxyXG4gICAgICAgIDxtZWZkZXYtc3RhZ2UgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXM7IGxldCBwYWdlSW5kZXggPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbaXNSaWdodE1vZGFsXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInBhZ2UudGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRFeGVjdXRvclN0ZXBdPVwicGFnZUluZGV4ICsgMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbaXNDb21wbGV0ZWRdPVwicGFnZS5pc0NvbXBsZXRlZFwiPlxyXG4gICAgICAgIDwvbWVmZGV2LXN0YWdlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxmb290ZXIgY2xhc3M9XCJyaWdodEZvb3RlclwiPlxyXG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9mb290ZXI+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuIl19
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1leGVjdXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQtbGliL3NyYy9saWIvbWFya3VwLWtpdC9leGVjdXRvcnMvc3RlcC1leGVjdXRvci9zdGVwLWV4ZWN1dG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWtpdC1saWIvc3JjL2xpYi9tYXJrdXAta2l0L2V4ZWN1dG9ycy9zdGVwLWV4ZWN1dG9yL3N0ZXAtZXhlY3V0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNZLFNBQVMsRUFDeEIsWUFBWSxFQUNaLFlBQVksRUFBRSxLQUFLLEVBQ25CLE1BQU0sRUFDTyxTQUFTLEVBQ3pCLE1BQU0sZUFBZSxDQUFDOzs7O0FBR3ZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBUUgsTUFBTSxPQUFPLHFCQUFxQjtJQXFFVjtJQW5FcEI7Ozs7Ozs7O09BUUc7SUFDc0IsSUFBSSxDQUFTO0lBR3RDOztPQUVHO0lBQ3FCLFNBQVMsQ0FBMEI7SUFFM0Q7Ozs7Ozs7OztPQVNHO0lBQ29CLEtBQUssQ0FBb0I7SUFFaEQ7Ozs7Ozs7OztPQVNHO0lBQzBCLFdBQVcsQ0FBb0I7SUFHNUQ7Ozs7Ozs7OztPQVNHO0lBQ3FCLE1BQU0sQ0FBb0I7SUFFbEQ7Ozs7Ozs7T0FPRztJQUNPLGtCQUFrQixHQUE4QyxJQUFJLFlBQVksRUFBK0IsQ0FBQztJQUVuSCxjQUFjLEdBQVcsQ0FBQyxDQUFDO0lBQzNCLEtBQUssR0FBa0MsRUFBRSxDQUFDO0lBRWpELFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBRyxDQUFDO0lBRTNDLElBQVcsYUFBYSxDQUFDLGdCQUF3QjtRQUM3QyxJQUFJLENBQUMsY0FBYyxHQUFHLGdCQUFnQixDQUFDO1FBQ3ZDLElBQUksZ0JBQWdCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDekMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxTQUFTLElBQUksRUFBRSxFQUFFO2dCQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO2FBQy9DO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDOUYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQStCLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ25HO0lBQ0wsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUErQixFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxpQkFBaUI7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7T0FFRztJQUNILElBQUk7UUFDQSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUMxQyxJQUFJLFVBQVUsSUFBSSxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUM7U0FDbkM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0YsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDMUMsSUFBSSxVQUFVLElBQUksQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSTtRQUNBLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQzFDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUdEOztPQUVHO0lBQ0gsYUFBYSxDQUFDLFVBQWtCO1FBQzVCLFVBQVUsSUFBSSxDQUFDLENBQUM7UUFDaEIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksVUFBVSxJQUFJLENBQUMsRUFBRTtZQUNuRCxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQztTQUNuQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxJQUFpQztRQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBR0Q7O09BRUc7SUFDSCxrQkFBa0IsQ0FBQyxJQUFpQztRQUNoRCxNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM1QixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUM5QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDZjtTQUNKO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCLENBQUMsS0FBYTtRQUMzQixJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM1QixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUM5QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDZjtTQUNKO0lBRUwsQ0FBQzt1R0FoTFEscUJBQXFCOzJGQUFyQixxQkFBcUIsaWdCQ3pEbEMsK2hKQXVIQTs7MkZEOURhLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDSSxzQkFBc0I7Z0dBZ0JQLElBQUk7c0JBQTVCLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDO2dCQU1DLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFZQyxLQUFLO3NCQUEzQixZQUFZO3VCQUFDLE9BQU87Z0JBWVEsV0FBVztzQkFBdkMsWUFBWTt1QkFBQyxhQUFhO2dCQWFILE1BQU07c0JBQTdCLFlBQVk7dUJBQUMsUUFBUTtnQkFVWixrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LFxyXG4gICAgQ29udGVudENoaWxkLCBFbGVtZW50UmVmLFxyXG4gICAgRXZlbnRFbWl0dGVyLCBJbnB1dCxcclxuICAgIE91dHB1dCwgUmVuZGVyZXIyLFxyXG4gICAgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQgfSBmcm9tICcuLi9tZWZkZXYtZXhlY3V0b3ItcGFnZS9tZWZkZXYtZXhlY3V0b3ItcGFnZS5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIFdyYXBwZXIgY29tcG9uZW50IHRoYXQgcmVwcmVzZW50cyBhIHNwZWNpZmljIGVuY2Fwc3VsYXRlZCBleGVjdXRvci5cclxuICpcclxuICogRXhhbXBsZSBvZiB1c2FnZTpcclxuICpgYGBcclxuICogPG1lZmRldi1zdGVwLWV4ZWN1dG9yICNtYWluRXhlY3V0b3IgW3ZpZXddPVwiJ3JlZ3VsYXInXCI+XHJcbiAqXHJcbiAqICA8bmctdGVtcGxhdGUgI3RpdGxlPlxyXG4gKiAgICA8IS0tIENvbnRlbnQgZm9yIHRoZSBleGVjdXRvciB0aXRsZSAtLT5cclxuICogIDwvbmctdGVtcGxhdGU+XHJcbiAqICA8bmctdGVtcGxhdGUgI2Rlc2NyaXB0aW9uPlxyXG4gKiAgICA8IS0tIENvbnRlbnQgZm9yIHRoZSBleGVjdXRvciBkZXNjcmlwdGlvbiAtLT5cclxuICogIDwvbmctdGVtcGxhdGU+XHJcbiAqXHJcbiAqICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2VcclxuICogICAgIFt0aXRsZV09XCInRGVzY3JpcHRpb24gb2Ygc2l0dWF0aW9uIDEnXCJcclxuICogICAgIFtpc0FjdGl2ZV09XCJtYWluRXhlY3V0b3IuYWN0aXZlUGFnZUluZCA9PT0gMFwiXHJcbiAqICAgICBbaXNDb21wbGV0ZWRdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPj0gMFwiPlxyXG4gKiAgICAgIDwhLS0gQ29udGVudCBvZiB0aGUgZmlyc3QgZXhlY3V0b3Igc3RlcCAtLT5cclxuICogIDwvbWVmZGV2LWV4ZWN1dG9yLXBhZ2U+XHJcbiAqICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2VcclxuICogICAgW3RpdGxlXT1cIidEZXNjcmlwdGlvbiBvZiBzaXR1YXRpb24gMidcIlxyXG4gKiAgICBbaXNBY3RpdmVdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPT09IDFcIlxyXG4gKiAgICBbaXNDb21wbGV0ZWRdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPj0gMVwiPlxyXG4gKiAgICAgPCEtLSBDb250ZW50IG9mIHRoZSBzZWNvbmQgZXhlY3V0b3Igc3RlcCAtLT5cclxuICogIDwvbWVmZGV2LWV4ZWN1dG9yLXBhZ2U+XHJcbiAqICA8bWVmZGV2LWV4ZWN1dG9yLXBhZ2VcclxuICogICAgW3RpdGxlXT1cIidEZXNjcmlwdGlvbiBvZiBzaXR1YXRpb24gMydcIlxyXG4gKiAgICBbaXNBY3RpdmVdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPT09IDJcIlxyXG4gKiAgICBbaXNDb21wbGV0ZWRdPVwibWFpbkV4ZWN1dG9yLmFjdGl2ZVBhZ2VJbmQgPj0gMlwiPlxyXG4gKiAgICAgIDwhLS0gQ29udGVudCBvZiB0aGUgdGhpcmQgZXhlY3V0b3Igc3RlcCAtLT5cclxuICogIDwvbWVmZGV2LWV4ZWN1dG9yLXBhZ2U+XHJcbiAqXHJcbiAqICA8bmctdGVtcGxhdGUgI2Zvb3Rlcj5cclxuICogICAgPCEtLSBDb250ZW50IGZvciB0aGUgZXhlY3V0b3IgZm9vdGVyIC0tPlxyXG4gKiAgPG5nLXRlbXBsYXRlPlxyXG4gKlxyXG4gKiA8L21lZmRldi1zdGVwLWV4ZWN1dG9yPlxyXG4gKlxyXG4gKmBgYFxyXG4gKi9cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdtZWZkZXYtc3RlcC1leGVjdXRvcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3RlcC1leGVjdXRvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zdGVwLWV4ZWN1dG9yLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBTdGVwRXhlY3V0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIE1hbmRhdG9yeSBpbnB1dCBwYXJhbWV0ZXIgdGhhdCBzcGVjaWZpZXMgdGhlIHR5cGUgb2YgdGhlIHN0ZXAtYnktc3RlcCB3aXphcmQuXHJcbiAgICAgKiBJdCBjYW4gaGF2ZSB0aHJlZSBvcHRpb25zOiByZWd1bGFyLCBtb2RhbCwgcmlnaHQuXHJcbiAgICAgKlxyXG4gICAgICogQHVzYWdlTm90ZXNcclxuICAgICAqIGBgYFxyXG4gICAgICogIDxtZWZkZXYtc3RlcC1leGVjdXRvciAjbWFpbkV4ZWN1dG9yIFt2aWV3XT1cIidyZWd1bGFyJ1wiPjwvbWVmZGV2LXN0ZXAtZXhlY3V0b3I+XHJcbiAgICAgKiBgYGBcclxuICAgICAqL1xyXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pIHZpZXc6IHN0cmluZztcclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWaWV3Q2hpbGQgcmVmZXJlbmNlIHRvIHRoZSBob3N0IGV4ZWN1dG9yIGNvbnRlbnQuXHJcbiAgICAgKi9cclxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUZW1wbGF0ZSBmb3IgZGlzcGxheWluZyB0aGUgY29udGVudCBvZiB0aGUgZXhlY3V0b3IgdGl0bGUuXHJcbiAgICAgKlxyXG4gICAgICogQHVzYWdlTm90ZXNcclxuICAgICAqIGBgYFxyXG4gICAgICogPG5nLXRlbXBsYXRlICN0aXRsZT5cclxuICAgICAqICAgPCEtLSBDb250ZW50IGZvciB0aGUgZXhlY3V0b3IgdGl0bGUgLS0+XHJcbiAgICAgKiA8L25nLXRlbXBsYXRlPlxyXG4gICAgICogYGBgXHJcbiAgICAgKi9cclxuICAgIEBDb250ZW50Q2hpbGQoJ3RpdGxlJykgdGl0bGU6IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGVtcGxhdGUgZm9yIGRpc3BsYXlpbmcgdGhlIGNvbnRlbnQgb2YgdGhlIGV4ZWN1dG9yIGRlc2NyaXB0aW9uLlxyXG4gICAgICpcclxuICAgICAqIEB1c2FnZU5vdGVzXHJcbiAgICAgKiBgYGBcclxuICAgICAqIDxuZy10ZW1wbGF0ZSAjZGVzY3JpcHRpb24+XHJcbiAgICAgKiAgPCEtLSBDb250ZW50IGZvciB0aGUgZXhlY3V0b3IgZGVzY3JpcHRpb24gLS0+XHJcbiAgICAgKiA8L25nLXRlbXBsYXRlPlxyXG4gICAgICogYGBgXHJcbiAgICAgKi9cclxuICAgIEBDb250ZW50Q2hpbGQoJ2Rlc2NyaXB0aW9uJykgZGVzY3JpcHRpb246IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRlbXBsYXRlIGZvciBkaXNwbGF5aW5nIHRoZSBjb250ZW50IG9mIHRoZSBleGVjdXRvciBmb290ZXIuXHJcbiAgICAgKlxyXG4gICAgICogQHVzYWdlTm90ZXNcclxuICAgICAqIGBgYFxyXG4gICAgICogPG5nLXRlbXBsYXRlICNmb290ZXI+XHJcbiAgICAgKiAgICA8IS0tIENvbnRlbnQgZm9yIHRoZSBleGVjdXRvciBmb290ZXIgLS0+XHJcbiAgICAgKiA8L25nLXRlbXBsYXRlPlxyXG4gICAgICogYGBgXHJcbiAgICAgKi9cclxuICAgIEBDb250ZW50Q2hpbGQoJ2Zvb3RlcicpIGZvb3RlcjogVGVtcGxhdGVSZWY8dm9pZD47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgb3V0cHV0IHBhcmFtZXRlciB0aGF0IGVtaXRzIHRoZSBjbGFzcyBvZiB0aGUgYWN0aXZlIHBhZ2UgLSBhY3RpdmUgc3RlcC5cclxuICAgICAqXHJcbiAgICAgKiBAdXNhZ2VOb3Rlc1xyXG4gICAgICogYGBgXHJcbiAgICAgKiAgPG1lZmRldi1zdGVwLWV4ZWN1dG9yICNtYWluRXhlY3V0b3IgKG9uQWN0aXZlUGFnZUNoYW5nZSk9XCJnZXRBY3RpdmVTdGVwKCRldmVudClcIj48L21lZmRldi1zdGVwLWV4ZWN1dG9yPlxyXG4gICAgICogYGBgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkFjdGl2ZVBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQ+KCk7XHJcblxyXG4gICAgcHVibGljIF9hY3RpdmVQYWdlSW5kOiBudW1iZXIgPSAwO1xyXG4gICAgcHVibGljIHBhZ2VzOiBNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnRbXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cclxuXHJcbiAgICBwdWJsaWMgc2V0IGFjdGl2ZVBhZ2VJbmQoYWN0aXZlUGFnZU51bWJlcjogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5fYWN0aXZlUGFnZUluZCA9IGFjdGl2ZVBhZ2VOdW1iZXI7XHJcbiAgICAgICAgaWYgKGFjdGl2ZVBhZ2VOdW1iZXIgPj0gMCAmJiB0aGlzLmNvbnRhaW5lcikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgIT0gJycpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCB0aGlzLmFjdGl2ZVBhZ2U/LmVsUmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgICAgICB0aGlzLm9uQWN0aXZlUGFnZUNoYW5nZS5lbWl0KHRoaXMucGFnZXMuZmluZCgoZWw6IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCkgPT4gZWwuaXNBY3RpdmUpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBhY3RpdmVQYWdlSW5kKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBhZ2VJbmQ7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGFjdGl2ZVBhZ2UoKTogTWVmZGV2RXhlY3V0b3JQYWdlQ29tcG9uZW50IHwgbnVsbCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlUGFnZUluZCA9PSAtMSA/IG51bGwgOiB0aGlzLnBhZ2VzW3RoaXMuYWN0aXZlUGFnZUluZF07XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCwgdGhpcy5hY3RpdmVQYWdlPy5lbFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgICAgICB0aGlzLm9uQWN0aXZlUGFnZUNoYW5nZS5lbWl0KHRoaXMucGFnZXMuZmluZCgoZWw6IE1lZmRldkV4ZWN1dG9yUGFnZUNvbXBvbmVudCkgPT4gZWwuaXNBY3RpdmUpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIHdoZXRoZXIgdGhlcmUgaXMgYSBuZXh0IHN0ZXAgb2YgdGhlIGV4ZWN1dG9yLiBJZiB3ZSBhcmUgYXQgdGhlIGxhc3Qgc3RlcCAtIGRpc2FibGUgdGhlICduZXh0JyBidXR0b25cclxuICAgICAqL1xyXG4gICAgbmV4dEJ0bklzRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVBhZ2VJbmQgPT09IHRoaXMucGFnZXMubGVuZ3RoIC0gMTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIHdoZXRoZXIgdGhlcmUgaXMgYSBuZXh0IHN0ZXAgb2YgdGhlIGV4ZWN1dG9yLiBJZiB3ZSBhcmUgYXQgdGhlIGxhc3Qgc3RlcCAtIGRpc2FibGUgdGhlICduZXh0JyBidXR0b25cclxuICAgICAqL1xyXG4gICAgcHJldigpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBuZXdQYWdlSW5kID0gdGhpcy5hY3RpdmVQYWdlSW5kIC0gMTtcclxuICAgICAgICBpZiAobmV3UGFnZUluZCA+PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUGFnZUluZCA9IG5ld1BhZ2VJbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR28gYmFjayB0byB0aGUgcHJldmlvdXMgc3RlcFxyXG4gICAgICovXHJcbiAgICBjYW5jZWwoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kID0gMDtcclxuICAgICAgICBjb25zdCBuZXdQYWdlSW5kID0gdGhpcy5hY3RpdmVQYWdlSW5kIC0gMTtcclxuICAgICAgICBpZiAobmV3UGFnZUluZCA+PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUGFnZUluZCA9IG5ld1BhZ2VJbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR28gdG8gdGhlIG5leHQgc3RlcFxyXG4gICAgICovXHJcbiAgICBuZXh0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IG5ld1BhZ2VJbmQgPSB0aGlzLmFjdGl2ZVBhZ2VJbmQgKyAxO1xyXG4gICAgICAgIGlmIChuZXdQYWdlSW5kIDwgdGhpcy5wYWdlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kID0gbmV3UGFnZUluZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2V0IGEgc3BlY2lmaWMgYWN0aXZlIHBhZ2VcclxuICAgICAqL1xyXG4gICAgc2V0QWN0aXZlUGFnZShwYWdlTnVtYmVyOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICBwYWdlTnVtYmVyIC09IDE7XHJcbiAgICAgICAgaWYgKHBhZ2VOdW1iZXIgPCB0aGlzLnBhZ2VzLmxlbmd0aCAmJiBwYWdlTnVtYmVyID49IDApIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kID0gcGFnZU51bWJlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGQgbmV3IHBhZ2VcclxuICAgICAqL1xyXG4gICAgYWRkUGFnZShwYWdlOiBNZWZkZXZFeGVjdXRvclBhZ2VDb21wb25lbnQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnBhZ2VzLnB1c2gocGFnZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVsZXRlIGEgc3BlY2lmaWMgcGFnZVxyXG4gICAgICovXHJcbiAgICByZW1vdmVTcGVjaWZpY1BhZ2UocGFnZTogTWVmZGV2RXhlY3V0b3JQYWdlQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgaW5kZXg6IG51bWJlciA9IHRoaXMucGFnZXMuaW5kZXhPZihwYWdlKTtcclxuICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZVBhZ2VJbmQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucHJldigpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVsZXRlIGEgcGFnZSBieSBpdHMgaW5kZXhcclxuICAgICAqL1xyXG4gICAgcmVtb3ZlUGFnZUJ5SW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIGlmIChpbmRleCA+PSAwICYmIGluZGV4IDwgdGhpcy5wYWdlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgdGhpcy5wYWdlcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuYWN0aXZlUGFnZUluZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wcmV2KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuIiwiPCEtLXZpZXcgPT0gcmVndWxhci0tPlxyXG5cclxuPGRpdiBjbGFzcz1cInN0ZXBFeGVjdXRvckJsb2NrXCIgKm5nSWY9XCJ2aWV3ID09PSAncmVndWxhcidcIj5cclxuICA8aGVhZGVyIGNsYXNzPVwic3RlcEV4ZWN1dG9ySGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic3RlcEV4ZWN1dG9ySGVhZGVyVGV4dFwiPlxyXG4gICAgICA8aDEgY2xhc3M9XCJ0aXRsZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9oMT5cclxuICAgICAgPHAgY2xhc3M9XCJib2R5LTVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlc2NyaXB0aW9uXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInN0ZXBzXCI+XHJcbiAgICAgIDxtZWZkZXYtc3RhZ2UgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXM7IGxldCBwYWdlSW5kZXggPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2lzUmlnaHRNb2RhbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInBhZ2UudGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjdXJyZW50RXhlY3V0b3JTdGVwXT1cInBhZ2VJbmRleCArIDFcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc0NvbXBsZXRlZF09XCJwYWdlLmlzQ29tcGxldGVkXCI+XHJcbiAgICAgIDwvbWVmZGV2LXN0YWdlPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9oZWFkZXI+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJhY3RpdmVQYWdlXCIgY2xhc3M9XCJleGVjdXRvckNoYW5nZUNvbnRlbnRcIj5cclxuICAgIDxkaXYgI2NvbnRhaW5lcj48L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImZvb3RlckJ1dHRvbnNcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyXCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuXHJcbjwhLS12aWV3ID09IG1vZGFsLS0+XHJcblxyXG48ZGl2IGNsYXNzPVwibW9kYWxTdGVwRXhlY3V0b3JcIiAqbmdJZj1cInZpZXcgPT09ICdtb2RhbCdcIj5cclxuXHJcbiAgPGhlYWRlciBjbGFzcz1cIm1vZGFsSGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyTW9kYWxUZXh0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0QW5kQ2xvc2VCdXR0b25cIj5cclxuICAgICAgICA8aDEgY2xhc3M9XCJ0aXRsZVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aXRsZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvaDE+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJib2R5LTVcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVzY3JpcHRpb25cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L3A+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YXJ0aWNsZSBjbGFzcz1cImNsb3NlQnRuXCI+XHJcbiAgICAgICAgPHN2ZyB3aWR0aD1cIjE1XCIgaGVpZ2h0PVwiMTVcIiB2aWV3Qm94PVwiMCAwIDE1IDE1XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNi4yNjczNSA3LjY4MTM1TDAuNjEwMzUyIDIuMDI0MzVMMi4wMjQzNSAwLjYxMDM1Mkw3LjY4MTM1IDYuMjY3MzVMMTMuMzM4NCAwLjYxMDM1MkwxNC43NTI0IDIuMDI0MzVMOS4wOTUzNSA3LjY4MTM1TDE0Ljc1MjQgMTMuMzM4NEwxMy4zMzg0IDE0Ljc1MjRMNy42ODEzNSA5LjA5NTM1TDIuMDI0MzUgMTQuNzUyNEwwLjYxMDM1MiAxMy4zMzg0TDYuMjY3MzUgNy42ODEzNVpcIiBmaWxsPVwiIzRENEQ0RFwiLz5cclxuICAgICAgICA8L3N2Zz5cclxuICAgICAgPC9hcnRpY2xlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWxTdGVwc1wiPlxyXG4gICAgICA8bWVmZGV2LXN0YWdlICpuZ0Zvcj1cImxldCBwYWdlIG9mIHBhZ2VzOyBsZXQgcGFnZUluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpc1JpZ2h0TW9kYWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJwYWdlLnRpdGxlXCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VycmVudEV4ZWN1dG9yU3RlcF09XCJwYWdlSW5kZXggKyAxXCJcclxuICAgICAgICAgICAgICAgICAgICBbaXNDb21wbGV0ZWRdPVwicGFnZS5pc0NvbXBsZXRlZFwiPlxyXG4gICAgICA8L21lZmRldi1zdGFnZT5cclxuICAgIDwvZGl2PlxyXG4gIDwvaGVhZGVyPlxyXG5cclxuICA8bWFpbiAqbmdJZj1cImFjdGl2ZVBhZ2VcIiBjbGFzcz1cIm1vZGFsRXhlY3V0b3JNYWluQ29udGVudFwiPlxyXG4gICAgPGRpdiAjY29udGFpbmVyPjwvZGl2PlxyXG4gIDwvbWFpbj5cclxuXHJcbiAgPGZvb3RlciBjbGFzcz1cIm1vZGFsRm9vdGVyXCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZm9vdGVyPlxyXG5cclxuPC9kaXY+XHJcblxyXG48IS0tdmlldyA9PSByaWdodC0tPlxyXG5cclxuPGRpdiBjbGFzcz1cInJpZ2h0RXhlY3V0b3JCbG9ja1wiICpuZ0lmPVwidmlldyA9PT0gJ3JpZ2h0J1wiPlxyXG5cclxuICA8aGVhZGVyIGNsYXNzPVwicmlnaHRFeGVjdXRvckhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJpZ2h0RXhlY3V0b3JUZXh0QW5kQ2xvc2VCdXR0b25cIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJib2R5LTFcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHAgY2xhc3M9XCJib2R5LTVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlc2NyaXB0aW9uXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNsb3NlQnV0dG9uXCI+XHJcbiAgICAgIDxzdmcgd2lkdGg9XCIxN1wiIGhlaWdodD1cIjE3XCIgdmlld0JveD1cIjAgMCAxNyAxN1wiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xNi4wNTY2IDEuNTk5NzFMMTQuNjU2NiAwLjE5OTcwN0w4LjA1NjY0IDYuNzk5NzFMMS40NTY2NCAwLjE5OTcwN0wwLjA1NjY0MDYgMS41OTk3MUw2LjY1NjY0IDguMTk5NzFMMC4wNTY2NDA2IDE0Ljc5OTdMMS40NTY2NCAxNi4xOTk3TDguMDU2NjQgOS41OTk3MUwxNC42NTY2IDE2LjE5OTdMMTYuMDU2NiAxNC43OTk3TDkuNDU2NjQgOC4xOTk3MUwxNi4wNTY2IDEuNTk5NzFaXCIgZmlsbD1cIiM1MjUyNTJcIi8+XHJcbiAgICAgIDwvc3ZnPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9oZWFkZXI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJsaW5lXCI+XHJcbiAgICA8c3ZnIHdpZHRoPVwiMzYzXCIgaGVpZ2h0PVwiMVwiIHZpZXdCb3g9XCIwIDAgMzYzIDFcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgPGxpbmUgeDE9XCItNC4zNzExNGUtMDhcIiB5MT1cIjAuNVwiIHgyPVwiMzYyLjY3NFwiIHkyPVwiMC40OTk5NjhcIiBzdHJva2U9XCIjNEQ0RDREXCIvPlxyXG4gICAgPC9zdmc+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjb250ZW50RXhlY3V0b3JcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyaWdodENoYW5nZUNvbnRlbnRcIj5cclxuICAgICAgPGRpdiAqbmdJZj1cImFjdGl2ZVBhZ2VcIiBjbGFzcz1cImV4ZWN1dG9yQ2hhbmdlQ29udGVudFwiPlxyXG4gICAgICAgIDxkaXYgI2NvbnRhaW5lcj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFN0ZXBzXCI+XHJcbiAgICAgICAgPG1lZmRldi1zdGFnZSAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlczsgbGV0IHBhZ2VJbmRleCA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtpc1JpZ2h0TW9kYWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwicGFnZS50aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY3VycmVudEV4ZWN1dG9yU3RlcF09XCJwYWdlSW5kZXggKyAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtpc0NvbXBsZXRlZF09XCJwYWdlLmlzQ29tcGxldGVkXCI+XHJcbiAgICAgICAgPC9tZWZkZXYtc3RhZ2U+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGZvb3RlciBjbGFzcz1cInJpZ2h0Rm9vdGVyXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Zvb3Rlcj5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -3821,6 +3821,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
3821
3821
|
}]
|
|
3822
3822
|
}] });
|
|
3823
3823
|
|
|
3824
|
+
/**
|
|
3825
|
+
* @ignore
|
|
3826
|
+
*/
|
|
3824
3827
|
class StageComponent {
|
|
3825
3828
|
currentExecutorStep;
|
|
3826
3829
|
isRightModal;
|
|
@@ -3842,13 +3845,104 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
3842
3845
|
type: Input
|
|
3843
3846
|
}] } });
|
|
3844
3847
|
|
|
3848
|
+
/**
|
|
3849
|
+
* Wrapper component that represents a specific encapsulated executor.
|
|
3850
|
+
*
|
|
3851
|
+
* Example of usage:
|
|
3852
|
+
*```
|
|
3853
|
+
* <mefdev-step-executor #mainExecutor [view]="'regular'">
|
|
3854
|
+
*
|
|
3855
|
+
* <ng-template #title>
|
|
3856
|
+
* <!-- Content for the executor title -->
|
|
3857
|
+
* </ng-template>
|
|
3858
|
+
* <ng-template #description>
|
|
3859
|
+
* <!-- Content for the executor description -->
|
|
3860
|
+
* </ng-template>
|
|
3861
|
+
*
|
|
3862
|
+
* <mefdev-executor-page
|
|
3863
|
+
* [title]="'Description of situation 1'"
|
|
3864
|
+
* [isActive]="mainExecutor.activePageInd === 0"
|
|
3865
|
+
* [isCompleted]="mainExecutor.activePageInd >= 0">
|
|
3866
|
+
* <!-- Content of the first executor step -->
|
|
3867
|
+
* </mefdev-executor-page>
|
|
3868
|
+
* <mefdev-executor-page
|
|
3869
|
+
* [title]="'Description of situation 2'"
|
|
3870
|
+
* [isActive]="mainExecutor.activePageInd === 1"
|
|
3871
|
+
* [isCompleted]="mainExecutor.activePageInd >= 1">
|
|
3872
|
+
* <!-- Content of the second executor step -->
|
|
3873
|
+
* </mefdev-executor-page>
|
|
3874
|
+
* <mefdev-executor-page
|
|
3875
|
+
* [title]="'Description of situation 3'"
|
|
3876
|
+
* [isActive]="mainExecutor.activePageInd === 2"
|
|
3877
|
+
* [isCompleted]="mainExecutor.activePageInd >= 2">
|
|
3878
|
+
* <!-- Content of the third executor step -->
|
|
3879
|
+
* </mefdev-executor-page>
|
|
3880
|
+
*
|
|
3881
|
+
* <ng-template #footer>
|
|
3882
|
+
* <!-- Content for the executor footer -->
|
|
3883
|
+
* <ng-template>
|
|
3884
|
+
*
|
|
3885
|
+
* </mefdev-step-executor>
|
|
3886
|
+
*
|
|
3887
|
+
*```
|
|
3888
|
+
*/
|
|
3845
3889
|
class StepExecutorComponent {
|
|
3846
3890
|
renderer;
|
|
3891
|
+
/**
|
|
3892
|
+
* Mandatory input parameter that specifies the type of the step-by-step wizard.
|
|
3893
|
+
* It can have three options: regular, modal, right.
|
|
3894
|
+
*
|
|
3895
|
+
* @usageNotes
|
|
3896
|
+
* ```
|
|
3897
|
+
* <mefdev-step-executor #mainExecutor [view]="'regular'"></mefdev-step-executor>
|
|
3898
|
+
* ```
|
|
3899
|
+
*/
|
|
3847
3900
|
view;
|
|
3901
|
+
/**
|
|
3902
|
+
* ViewChild reference to the host executor content.
|
|
3903
|
+
*/
|
|
3848
3904
|
container;
|
|
3905
|
+
/**
|
|
3906
|
+
* Template for displaying the content of the executor title.
|
|
3907
|
+
*
|
|
3908
|
+
* @usageNotes
|
|
3909
|
+
* ```
|
|
3910
|
+
* <ng-template #title>
|
|
3911
|
+
* <!-- Content for the executor title -->
|
|
3912
|
+
* </ng-template>
|
|
3913
|
+
* ```
|
|
3914
|
+
*/
|
|
3849
3915
|
title;
|
|
3916
|
+
/**
|
|
3917
|
+
* Template for displaying the content of the executor description.
|
|
3918
|
+
*
|
|
3919
|
+
* @usageNotes
|
|
3920
|
+
* ```
|
|
3921
|
+
* <ng-template #description>
|
|
3922
|
+
* <!-- Content for the executor description -->
|
|
3923
|
+
* </ng-template>
|
|
3924
|
+
* ```
|
|
3925
|
+
*/
|
|
3850
3926
|
description;
|
|
3927
|
+
/**
|
|
3928
|
+
* Template for displaying the content of the executor footer.
|
|
3929
|
+
*
|
|
3930
|
+
* @usageNotes
|
|
3931
|
+
* ```
|
|
3932
|
+
* <ng-template #footer>
|
|
3933
|
+
* <!-- Content for the executor footer -->
|
|
3934
|
+
* </ng-template>
|
|
3935
|
+
* ```
|
|
3936
|
+
*/
|
|
3851
3937
|
footer;
|
|
3938
|
+
/**
|
|
3939
|
+
* The output parameter that emits the class of the active page - active step.
|
|
3940
|
+
*
|
|
3941
|
+
* @usageNotes
|
|
3942
|
+
* ```
|
|
3943
|
+
* <mefdev-step-executor #mainExecutor (onActivePageChange)="getActiveStep($event)"></mefdev-step-executor>
|
|
3944
|
+
* ```
|
|
3945
|
+
*/
|
|
3852
3946
|
onActivePageChange = new EventEmitter();
|
|
3853
3947
|
_activePageInd = 0;
|
|
3854
3948
|
pages = [];
|
|
@@ -3875,15 +3969,24 @@ class StepExecutorComponent {
|
|
|
3875
3969
|
this.renderer.appendChild(this.container.nativeElement, this.activePage?.elRef.nativeElement);
|
|
3876
3970
|
this.onActivePageChange.emit(this.pages.find((el) => el.isActive));
|
|
3877
3971
|
}
|
|
3972
|
+
/**
|
|
3973
|
+
* Check whether there is a next step of the executor. If we are at the last step - disable the 'next' button
|
|
3974
|
+
*/
|
|
3878
3975
|
nextBtnIsDisabled() {
|
|
3879
3976
|
return this._activePageInd === this.pages.length - 1;
|
|
3880
3977
|
}
|
|
3978
|
+
/**
|
|
3979
|
+
* Check whether there is a next step of the executor. If we are at the last step - disable the 'next' button
|
|
3980
|
+
*/
|
|
3881
3981
|
prev() {
|
|
3882
3982
|
const newPageInd = this.activePageInd - 1;
|
|
3883
3983
|
if (newPageInd >= 0) {
|
|
3884
3984
|
this.activePageInd = newPageInd;
|
|
3885
3985
|
}
|
|
3886
3986
|
}
|
|
3987
|
+
/**
|
|
3988
|
+
* Go back to the previous step
|
|
3989
|
+
*/
|
|
3887
3990
|
cancel() {
|
|
3888
3991
|
this.activePageInd = 0;
|
|
3889
3992
|
const newPageInd = this.activePageInd - 1;
|
|
@@ -3891,21 +3994,33 @@ class StepExecutorComponent {
|
|
|
3891
3994
|
this.activePageInd = newPageInd;
|
|
3892
3995
|
}
|
|
3893
3996
|
}
|
|
3997
|
+
/**
|
|
3998
|
+
* Go to the next step
|
|
3999
|
+
*/
|
|
3894
4000
|
next() {
|
|
3895
4001
|
const newPageInd = this.activePageInd + 1;
|
|
3896
4002
|
if (newPageInd < this.pages.length) {
|
|
3897
4003
|
this.activePageInd = newPageInd;
|
|
3898
4004
|
}
|
|
3899
4005
|
}
|
|
4006
|
+
/**
|
|
4007
|
+
* Set a specific active page
|
|
4008
|
+
*/
|
|
3900
4009
|
setActivePage(pageNumber) {
|
|
3901
4010
|
pageNumber -= 1;
|
|
3902
4011
|
if (pageNumber < this.pages.length && pageNumber >= 0) {
|
|
3903
4012
|
this.activePageInd = pageNumber;
|
|
3904
4013
|
}
|
|
3905
4014
|
}
|
|
4015
|
+
/**
|
|
4016
|
+
* Add new page
|
|
4017
|
+
*/
|
|
3906
4018
|
addPage(page) {
|
|
3907
4019
|
this.pages.push(page);
|
|
3908
4020
|
}
|
|
4021
|
+
/**
|
|
4022
|
+
* Delete a specific page
|
|
4023
|
+
*/
|
|
3909
4024
|
removeSpecificPage(page) {
|
|
3910
4025
|
const index = this.pages.indexOf(page);
|
|
3911
4026
|
if (index !== -1) {
|
|
@@ -3915,6 +4030,9 @@ class StepExecutorComponent {
|
|
|
3915
4030
|
}
|
|
3916
4031
|
}
|
|
3917
4032
|
}
|
|
4033
|
+
/**
|
|
4034
|
+
* Delete a page by its index
|
|
4035
|
+
*/
|
|
3918
4036
|
removePageByIndex(index) {
|
|
3919
4037
|
if (index >= 0 && index < this.pages.length) {
|
|
3920
4038
|
this.pages.splice(index, 1);
|
|
@@ -3948,12 +4066,80 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
3948
4066
|
type: Output
|
|
3949
4067
|
}] } });
|
|
3950
4068
|
|
|
4069
|
+
/**
|
|
4070
|
+
* A component that allows us to create a content page - a step in our executor.
|
|
4071
|
+
* Each individual step can have different styles, content and settings.
|
|
4072
|
+
*
|
|
4073
|
+
* Example of usage:
|
|
4074
|
+
*
|
|
4075
|
+
* ```
|
|
4076
|
+
* <mefdev-executor-page
|
|
4077
|
+
* [title]="'Executor title 1'"
|
|
4078
|
+
* [isActive]="mainExecutor.activePageInd === 0"
|
|
4079
|
+
* [isCompleted]="mainExecutor.activePageInd >= 0"
|
|
4080
|
+
* class="yourClass">
|
|
4081
|
+
* <!-- Content of the first executor step -->
|
|
4082
|
+
* </mefdev-executor-page>
|
|
4083
|
+
* <mefdev-executor-page
|
|
4084
|
+
* [title]="'Executor title 2'"
|
|
4085
|
+
* [isActive]="mainExecutor.activePageInd === 1"
|
|
4086
|
+
* [isCompleted]="mainExecutor.activePageInd >= 1"
|
|
4087
|
+
* class="yourClass">
|
|
4088
|
+
* <!-- Content of the second executor step -->
|
|
4089
|
+
* </mefdev-executor-page>
|
|
4090
|
+
* <mefdev-executor-page
|
|
4091
|
+
* [title]="'Executor title 3'"
|
|
4092
|
+
* [isActive]="mainExecutor.activePageInd === 2"
|
|
4093
|
+
* [isCompleted]="mainExecutor.activePageInd >= 2"
|
|
4094
|
+
* class="yourClass">
|
|
4095
|
+
* <!-- Content of the third executor step -->
|
|
4096
|
+
* </mefdev-executor-page>
|
|
4097
|
+
* ```
|
|
4098
|
+
*
|
|
4099
|
+
*/
|
|
3951
4100
|
class MefdevExecutorPageComponent {
|
|
3952
4101
|
_mainExecutor;
|
|
3953
4102
|
_elementRef;
|
|
4103
|
+
/**
|
|
4104
|
+
* The title of the step
|
|
4105
|
+
* @usageNotes
|
|
4106
|
+
* ```
|
|
4107
|
+
* <mefdev-executor-page [title]="'Description of situation 1'"></mefdev-executor-page>
|
|
4108
|
+
* ```
|
|
4109
|
+
*/
|
|
3954
4110
|
title;
|
|
4111
|
+
/**
|
|
4112
|
+
* The input parameter that corresponds to whether the current step matches the respective page.
|
|
4113
|
+
* The value of the active page is passed by reference from the specific component StepExecutorComponent.
|
|
4114
|
+
*
|
|
4115
|
+
* @usageNotes
|
|
4116
|
+
* ```
|
|
4117
|
+
* <mefdev-step-executor #mainExecutor>
|
|
4118
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 0">
|
|
4119
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 1">
|
|
4120
|
+
* <mefdev-executor-page [isActive]="mainExecutor.activePageInd === 2">
|
|
4121
|
+
* </<mefdev-step-executor>
|
|
4122
|
+
*
|
|
4123
|
+
* ```
|
|
4124
|
+
*/
|
|
3955
4125
|
isActive = false;
|
|
4126
|
+
/**
|
|
4127
|
+
* The input parameter that checks whether the step is completed.
|
|
4128
|
+
*
|
|
4129
|
+
* @usageNotes
|
|
4130
|
+
* ```
|
|
4131
|
+
* <mefdev-executor-page [isCompleted]="mainExecutor.activePageInd >= 0"></mefdev-executor-page>
|
|
4132
|
+
* ```
|
|
4133
|
+
*/
|
|
3956
4134
|
isCompleted = false;
|
|
4135
|
+
/**
|
|
4136
|
+
* The output parameter that emits a boolean value indicating whether our completed step has changed.
|
|
4137
|
+
*
|
|
4138
|
+
* @usageNotes
|
|
4139
|
+
* ```
|
|
4140
|
+
* <mefdev-executor-page (isCompletedChange)="onStepChanged($event)"></mefdev-executor-page>
|
|
4141
|
+
* ```
|
|
4142
|
+
*/
|
|
3957
4143
|
isCompletedChange = new EventEmitter();
|
|
3958
4144
|
elRef;
|
|
3959
4145
|
constructor(_mainExecutor, _elementRef) {
|