@inspark/inspark-components 14.0.71 → 19.0.1
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/full/bms.css +3 -2363
- package/full/bms.js +1 -1
- package/full/components/autocomplete/autocomplete.component.d.ts +36 -57
- package/full/components/autocomplete/autocomplete.component.d.ts.map +1 -0
- package/full/components/autocomplete/autocomplete.module.d.ts +10 -0
- package/full/components/autocomplete/autocomplete.module.d.ts.map +1 -0
- package/full/components/breadcrumb/breadcrumb.component.d.ts +2 -1
- package/full/components/breadcrumb/breadcrumb.component.d.ts.map +1 -0
- package/full/components/breadcrumb/breadcrumb.module.d.ts +9 -0
- package/full/components/breadcrumb/breadcrumb.module.d.ts.map +1 -0
- package/full/components/button/button.component.d.ts +9 -8
- package/full/components/button/button.component.d.ts.map +1 -0
- package/full/components/button/button.module.d.ts +12 -0
- package/full/components/button/button.module.d.ts.map +1 -0
- package/full/components/checkbox/checkbox.component.d.ts +2 -1
- package/full/components/checkbox/checkbox.component.d.ts.map +1 -0
- package/full/components/checkbox/checkbox.module.d.ts +10 -0
- package/full/components/checkbox/checkbox.module.d.ts.map +1 -0
- package/full/components/communication.service.d.ts +1 -0
- package/full/components/communication.service.d.ts.map +1 -0
- package/full/components/component-container/component-container.component.d.ts +3 -2
- package/full/components/component-container/component-container.component.d.ts.map +1 -0
- package/full/components/component-container/component-container.module.d.ts +9 -0
- package/full/components/component-container/component-container.module.d.ts.map +1 -0
- package/full/components/content-toggle/content-toggle.component.d.ts +2 -1
- package/full/components/content-toggle/content-toggle.component.d.ts.map +1 -0
- package/full/components/dropdown/dropdown.component.d.ts +31 -108
- package/full/components/dropdown/dropdown.component.d.ts.map +1 -0
- package/full/components/dropdown/dropdown.module.d.ts +10 -0
- package/full/components/dropdown/dropdown.module.d.ts.map +1 -0
- package/full/components/empty/empty.component.d.ts +2 -1
- package/full/components/empty/empty.component.d.ts.map +1 -0
- package/full/components/file/file.component.d.ts +2 -1
- package/full/components/file/file.component.d.ts.map +1 -0
- package/full/components/file/file.module.d.ts +9 -0
- package/full/components/file/file.module.d.ts.map +1 -0
- package/full/components/header/header.component.d.ts +2 -1
- package/full/components/header/header.component.d.ts.map +1 -0
- package/full/components/inline-message/inline-message.component.d.ts +2 -1
- package/full/components/inline-message/inline-message.component.d.ts.map +1 -0
- package/full/components/input-group/input-group.component.d.ts +2 -1
- package/full/components/input-group/input-group.component.d.ts.map +1 -0
- package/full/components/input-text/input-text.component.d.ts +2 -1
- package/full/components/input-text/input-text.component.d.ts.map +1 -0
- package/full/components/input-text/input-text.module.d.ts +10 -0
- package/full/components/input-text/input-text.module.d.ts.map +1 -0
- package/full/components/inspark.module.d.ts +41 -44
- package/full/components/inspark.module.d.ts.map +1 -0
- package/full/components/inspark.shared.d.ts +2 -1
- package/full/components/inspark.shared.d.ts.map +1 -0
- package/full/components/legacy/legacy-components.module.d.ts +12 -0
- package/full/components/legacy/legacy-components.module.d.ts.map +1 -0
- package/full/components/legacy/legacy-ui.module.d.ts +13 -0
- package/full/components/legacy/legacy-ui.module.d.ts.map +1 -0
- package/full/components/link/link.component.d.ts +4 -3
- package/full/components/link/link.component.d.ts.map +1 -0
- package/full/components/link/link.module.d.ts +11 -0
- package/full/components/link/link.module.d.ts.map +1 -0
- package/full/components/modal-input-text/modal-input-text.component.d.ts +2 -1
- package/full/components/modal-input-text/modal-input-text.component.d.ts.map +1 -0
- package/full/components/object-tree/object-tree.component.d.ts +2 -1
- package/full/components/object-tree/object-tree.component.d.ts.map +1 -0
- package/full/components/panel/panel.component.d.ts +2 -1
- package/full/components/panel/panel.component.d.ts.map +1 -0
- package/full/components/pie/pie.component.d.ts +2 -1
- package/full/components/pie/pie.component.d.ts.map +1 -0
- package/full/components/pie/pie.service.d.ts +1 -0
- package/full/components/pie/pie.service.d.ts.map +1 -0
- package/full/components/preloader/preloader.component.d.ts +3 -2
- package/full/components/preloader/preloader.component.d.ts.map +1 -0
- package/full/components/preloader/preloader.module.d.ts +9 -0
- package/full/components/preloader/preloader.module.d.ts.map +1 -0
- package/full/components/radiobutton/radiobutton.component.d.ts +2 -1
- package/full/components/radiobutton/radiobutton.component.d.ts.map +1 -0
- package/full/components/select-button/select-button.component.d.ts +3 -2
- package/full/components/select-button/select-button.component.d.ts.map +1 -0
- package/full/components/select-button/select-button.module.d.ts +9 -0
- package/full/components/select-button/select-button.module.d.ts.map +1 -0
- package/full/components/select-list/select-list.component.d.ts +2 -1
- package/full/components/select-list/select-list.component.d.ts.map +1 -0
- package/full/components/shared/shared-components.module.d.ts +11 -0
- package/full/components/shared/shared-components.module.d.ts.map +1 -0
- package/full/components/shared/shared-ui.module.d.ts +12 -0
- package/full/components/shared/shared-ui.module.d.ts.map +1 -0
- package/full/components/status-circle/status-circle.component.d.ts +2 -1
- package/full/components/status-circle/status-circle.component.d.ts.map +1 -0
- package/full/components/sticky/sticky.component.d.ts +2 -1
- package/full/components/sticky/sticky.component.d.ts.map +1 -0
- package/full/components/sticky/sticky.module.d.ts +9 -0
- package/full/components/sticky/sticky.module.d.ts.map +1 -0
- package/full/components/svg/svg.component.d.ts +4 -4
- package/full/components/svg/svg.component.d.ts.map +1 -0
- package/full/components/svg/svg.module.d.ts +10 -0
- package/full/components/svg/svg.module.d.ts.map +1 -0
- package/full/components/switcher/switcher.component.d.ts +2 -1
- package/full/components/switcher/switcher.component.d.ts.map +1 -0
- package/full/components/table/table-click-outside.directive.d.ts +2 -1
- package/full/components/table/table-click-outside.directive.d.ts.map +1 -0
- package/full/components/table/table-columns-multiselect/table-columns-multiselect.component.d.ts +2 -1
- package/full/components/table/table-columns-multiselect/table-columns-multiselect.component.d.ts.map +1 -0
- package/full/components/table/table-menu-overlay/table-menu-overlay.component.d.ts +2 -1
- package/full/components/table/table-menu-overlay/table-menu-overlay.component.d.ts.map +1 -0
- package/full/components/table/table.component.d.ts +10 -12
- package/full/components/table/table.component.d.ts.map +1 -0
- package/full/components/textarea/textarea.component.d.ts +2 -1
- package/full/components/textarea/textarea.component.d.ts.map +1 -0
- package/full/components/textarea/textarea.module.d.ts +10 -0
- package/full/components/textarea/textarea.module.d.ts.map +1 -0
- package/full/components/toolbar/toolbar.component.d.ts +2 -1
- package/full/components/toolbar/toolbar.component.d.ts.map +1 -0
- package/full/components/toolbar/toolbar.module.d.ts +9 -0
- package/full/components/toolbar/toolbar.module.d.ts.map +1 -0
- package/full/components/tooltip/tooltip.component.d.ts +2 -1
- package/full/components/tooltip/tooltip.component.d.ts.map +1 -0
- package/full/components/tree-table/tree-table.component.d.ts +3 -2
- package/full/components/tree-table/tree-table.component.d.ts.map +1 -0
- package/full/fesm2022/inspark-inspark-components.mjs +6292 -0
- package/full/fesm2022/inspark-inspark-components.mjs.map +1 -0
- package/full/index.css +6 -2366
- package/full/index.d.ts +1 -0
- package/full/index.js +1 -1
- package/full/inspark-inspark-components.d.ts.map +1 -0
- package/full/interface.d.ts +3 -2
- package/full/interface.d.ts.map +1 -0
- package/full/pipes/pipes.module.d.ts +1 -0
- package/full/pipes/pipes.module.d.ts.map +1 -0
- package/full/pipes/propertyValue.pipe.d.ts +1 -0
- package/full/pipes/propertyValue.pipe.d.ts.map +1 -0
- package/full/pipes/safeUrl.pipe.d.ts +1 -0
- package/full/pipes/safeUrl.pipe.d.ts.map +1 -0
- package/full/pipes/sort-by.pipe.d.ts +1 -0
- package/full/pipes/sort-by.pipe.d.ts.map +1 -0
- package/full/pipes/time.pipe.d.ts +2 -1
- package/full/pipes/time.pipe.d.ts.map +1 -0
- package/full/public_api.d.ts +24 -7
- package/full/public_api.d.ts.map +1 -0
- package/full/services/inspark-dialog.service.d.ts +19 -6
- package/full/services/inspark-dialog.service.d.ts.map +1 -0
- package/full/services/inspark-message.service.d.ts +3 -2
- package/full/services/inspark-message.service.d.ts.map +1 -0
- package/full/utils/gettextMarker.function.d.ts +1 -0
- package/full/utils/gettextMarker.function.d.ts.map +1 -0
- package/full/utils/hybrid/prime-table/row-state.enum.d.ts +1 -0
- package/full/utils/hybrid/prime-table/row-state.enum.d.ts.map +1 -0
- package/full/utils/hybrid/prime-table/table-row-data.model.d.ts +1 -0
- package/full/utils/hybrid/prime-table/table-row-data.model.d.ts.map +1 -0
- package/interface/index.d.ts +1 -0
- package/interface/inspark-inspark-components.d.ts.map +1 -0
- package/interface/interface.d.ts +3 -2
- package/interface/interface.d.ts.map +1 -0
- package/interface/public_api.d.ts +1 -0
- package/interface/public_api.d.ts.map +1 -0
- package/package.json +1 -1
- package/full/components/primeng.module.d.ts +0 -7
- package/full/esm2020/components/autocomplete/autocomplete.component.mjs +0 -220
- package/full/esm2020/components/breadcrumb/breadcrumb.component.mjs +0 -20
- package/full/esm2020/components/button/button.component.mjs +0 -160
- package/full/esm2020/components/checkbox/checkbox.component.mjs +0 -89
- package/full/esm2020/components/communication.service.mjs +0 -25
- package/full/esm2020/components/component-container/component-container.component.mjs +0 -17
- package/full/esm2020/components/content-toggle/content-toggle.component.mjs +0 -49
- package/full/esm2020/components/dropdown/dropdown.component.mjs +0 -338
- package/full/esm2020/components/empty/empty.component.mjs +0 -12
- package/full/esm2020/components/file/file.component.mjs +0 -53
- package/full/esm2020/components/header/header.component.mjs +0 -29
- package/full/esm2020/components/inline-message/inline-message.component.mjs +0 -20
- package/full/esm2020/components/input-group/input-group.component.mjs +0 -166
- package/full/esm2020/components/input-text/input-text.component.mjs +0 -149
- package/full/esm2020/components/inspark.module.mjs +0 -239
- package/full/esm2020/components/inspark.shared.mjs +0 -25
- package/full/esm2020/components/link/link.component.mjs +0 -131
- package/full/esm2020/components/modal-input-text/modal-input-text.component.mjs +0 -88
- package/full/esm2020/components/object-tree/object-tree.component.mjs +0 -14
- package/full/esm2020/components/panel/panel.component.mjs +0 -11
- package/full/esm2020/components/pie/pie.component.mjs +0 -44
- package/full/esm2020/components/pie/pie.service.mjs +0 -55
- package/full/esm2020/components/preloader/preloader.component.mjs +0 -25
- package/full/esm2020/components/primeng.module.mjs +0 -22
- package/full/esm2020/components/radiobutton/radiobutton.component.mjs +0 -50
- package/full/esm2020/components/select-button/select-button.component.mjs +0 -190
- package/full/esm2020/components/select-list/select-list.component.mjs +0 -55
- package/full/esm2020/components/status-circle/status-circle.component.mjs +0 -39
- package/full/esm2020/components/sticky/sticky.component.mjs +0 -64
- package/full/esm2020/components/svg/svg.component.mjs +0 -28
- package/full/esm2020/components/switcher/switcher.component.mjs +0 -123
- package/full/esm2020/components/table/table-click-outside.directive.mjs +0 -31
- package/full/esm2020/components/table/table-columns-multiselect/table-columns-multiselect.component.mjs +0 -32
- package/full/esm2020/components/table/table-menu-overlay/table-menu-overlay.component.mjs +0 -26
- package/full/esm2020/components/table/table.component.mjs +0 -482
- package/full/esm2020/components/textarea/textarea.component.mjs +0 -87
- package/full/esm2020/components/toolbar/toolbar.component.mjs +0 -30
- package/full/esm2020/components/tooltip/tooltip.component.mjs +0 -14
- package/full/esm2020/components/tree-table/tree-table.component.mjs +0 -206
- package/full/esm2020/inspark-inspark-components.mjs +0 -5
- package/full/esm2020/interface.mjs +0 -2
- package/full/esm2020/pipes/pipes.module.mjs +0 -19
- package/full/esm2020/pipes/propertyValue.pipe.mjs +0 -25
- package/full/esm2020/pipes/safeUrl.pipe.mjs +0 -36
- package/full/esm2020/pipes/sort-by.pipe.mjs +0 -28
- package/full/esm2020/pipes/time.pipe.mjs +0 -206
- package/full/esm2020/public_api.mjs +0 -60
- package/full/esm2020/services/inspark-dialog.service.mjs +0 -61
- package/full/esm2020/services/inspark-message.service.mjs +0 -77
- package/full/esm2020/utils/gettextMarker.function.mjs +0 -5
- package/full/esm2020/utils/hybrid/prime-table/row-state.enum.mjs +0 -9
- package/full/esm2020/utils/hybrid/prime-table/table-row-data.model.mjs +0 -2
- package/full/fesm2015/inspark-inspark-components.mjs +0 -3664
- package/full/fesm2015/inspark-inspark-components.mjs.map +0 -1
- package/full/fesm2020/inspark-inspark-components.mjs +0 -3666
- package/full/fesm2020/inspark-inspark-components.mjs.map +0 -1
- package/full/package.json +0 -36
- package/interface/esm2020/inspark-inspark-components.mjs +0 -5
- package/interface/esm2020/interface.mjs +0 -2
- package/interface/esm2020/public_api.mjs +0 -5
- package/interface/fesm2020/inspark-inspark-components.mjs +0 -8
- package/interface/fesm2020/inspark-inspark-components.mjs.map +0 -1
- package/interface/package.json +0 -36
- /package/interface/{fesm2015 → fesm2022}/inspark-inspark-components.mjs +0 -0
- /package/interface/{fesm2015 → fesm2022}/inspark-inspark-components.mjs.map +0 -0
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef, Input } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/forms";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
export class TextareaComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.name = null;
|
|
9
|
-
this.label = null;
|
|
10
|
-
this.required = false;
|
|
11
|
-
this.error = null;
|
|
12
|
-
this.placeholder = '';
|
|
13
|
-
this.id = null;
|
|
14
|
-
this.minHeight = 30;
|
|
15
|
-
this.maxlength = 100000;
|
|
16
|
-
this.propagateChange = (_) => {
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Write form value to the DOM element (model => view)
|
|
21
|
-
*/
|
|
22
|
-
writeValue(value) {
|
|
23
|
-
this.value = value;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Write form disabled state to the DOM element (model => view)
|
|
27
|
-
*/
|
|
28
|
-
setDisabledState(isDisabled) {
|
|
29
|
-
this.disabled = isDisabled;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Update form when DOM element value changes (view => model)
|
|
33
|
-
*/
|
|
34
|
-
registerOnChange(fn) {
|
|
35
|
-
// Store the provided function as an internal method.
|
|
36
|
-
this.propagateChange = fn;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Update form when DOM element is blurred (view => model)
|
|
40
|
-
*/
|
|
41
|
-
registerOnTouched(fn) {
|
|
42
|
-
// Store the provided function as an internal method.
|
|
43
|
-
this.onTouched = fn;
|
|
44
|
-
}
|
|
45
|
-
onChange(_) {
|
|
46
|
-
this.propagateChange(this.value);
|
|
47
|
-
}
|
|
48
|
-
onTouched() {
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
TextareaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
-
TextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextareaComponent, selector: "in-textarea", inputs: { name: "name", label: "label", required: "required", error: "error", placeholder: "placeholder", id: "id", disabled: "disabled", minHeight: "minHeight", maxlength: "maxlength" }, providers: [
|
|
53
|
-
{
|
|
54
|
-
provide: NG_VALUE_ACCESSOR,
|
|
55
|
-
useExisting: forwardRef(() => TextareaComponent),
|
|
56
|
-
multi: true,
|
|
57
|
-
}
|
|
58
|
-
], ngImport: i0, template: "<label class=\"c-label\">\r\n <span *ngIf=\"label\" class=\"c-label__content\">\r\n {{label}}\r\n <span *ngIf=\"required\" class=\"c-label__req\">*</span>\r\n<span *ngIf=\"error\" class=\"c-label__sub_is-error\">{{error}}</span>\r\n </span>\r\n <textarea (change)=\"onChange($event)\"\r\n (input)=\"onChange($event)\"\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n [id]=\"id\"\r\n [name]=\"name\"\r\n [ngStyle]=\"{ 'min-height': minHeight+'px' }\"\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n class=\"c-textarea field_{{id}}\"\r\n type=\"text\"\r\n ></textarea>\r\n</label>\r\n", styles: [""], 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextareaComponent, decorators: [{
|
|
60
|
-
type: Component,
|
|
61
|
-
args: [{ selector: 'in-textarea', providers: [
|
|
62
|
-
{
|
|
63
|
-
provide: NG_VALUE_ACCESSOR,
|
|
64
|
-
useExisting: forwardRef(() => TextareaComponent),
|
|
65
|
-
multi: true,
|
|
66
|
-
}
|
|
67
|
-
], template: "<label class=\"c-label\">\r\n <span *ngIf=\"label\" class=\"c-label__content\">\r\n {{label}}\r\n <span *ngIf=\"required\" class=\"c-label__req\">*</span>\r\n<span *ngIf=\"error\" class=\"c-label__sub_is-error\">{{error}}</span>\r\n </span>\r\n <textarea (change)=\"onChange($event)\"\r\n (input)=\"onChange($event)\"\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n [id]=\"id\"\r\n [name]=\"name\"\r\n [ngStyle]=\"{ 'min-height': minHeight+'px' }\"\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n class=\"c-textarea field_{{id}}\"\r\n type=\"text\"\r\n ></textarea>\r\n</label>\r\n" }]
|
|
68
|
-
}], propDecorators: { name: [{
|
|
69
|
-
type: Input
|
|
70
|
-
}], label: [{
|
|
71
|
-
type: Input
|
|
72
|
-
}], required: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}], error: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}], placeholder: [{
|
|
77
|
-
type: Input
|
|
78
|
-
}], id: [{
|
|
79
|
-
type: Input
|
|
80
|
-
}], disabled: [{
|
|
81
|
-
type: Input
|
|
82
|
-
}], minHeight: [{
|
|
83
|
-
type: Input
|
|
84
|
-
}], maxlength: [{
|
|
85
|
-
type: Input
|
|
86
|
-
}] } });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5zcGFyay1jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luc3BhcmstY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBY3ZFLE1BQU0sT0FBTyxpQkFBaUI7SUFaOUI7UUFjVyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osVUFBSyxHQUFHLElBQUksQ0FBQztRQUNiLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsVUFBSyxHQUFHLElBQUksQ0FBQztRQUNiLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLE9BQUUsR0FBRyxJQUFJLENBQUM7UUFFVixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsY0FBUyxHQUFHLE1BQU0sQ0FBQztRQWtDcEIsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO1FBQ3JDLENBQUMsQ0FBQztLQVNIO0lBeENDOztPQUVHO0lBQ0gsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsVUFBbUI7UUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDN0IsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixxREFBcUQ7UUFDckQsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCLENBQUMsRUFBTztRQUN2QixxREFBcUQ7UUFDckQsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUtELFFBQVEsQ0FBQyxDQUFNO1FBQ2IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFNBQVM7SUFDakIsQ0FBQzs7OEdBcERVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGtPQVJqQjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQ2hELEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRiwwQkNiSCxxdUJBbUJBOzJGREphLGlCQUFpQjtrQkFaN0IsU0FBUzsrQkFDRSxhQUFhLGFBR1o7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7NEJBQ2hELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGOzhCQUlRLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpbi10ZXh0YXJlYScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHRhcmVhLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXh0YXJlYS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGV4dGFyZWFDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH1cclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dGFyZWFDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIEBJbnB1dCgpIG5hbWUgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGxhYmVsID0gbnVsbDtcclxuICBASW5wdXQoKSByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGVycm9yID0gbnVsbDtcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xyXG4gIEBJbnB1dCgpIGlkID0gbnVsbDtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBtaW5IZWlnaHQgPSAzMDtcclxuICBASW5wdXQoKSBtYXhsZW5ndGggPSAxMDAwMDA7XHJcblxyXG4gIHZhbHVlOiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdyaXRlIGZvcm0gdmFsdWUgdG8gdGhlIERPTSBlbGVtZW50IChtb2RlbCA9PiB2aWV3KVxyXG4gICAqL1xyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV3JpdGUgZm9ybSBkaXNhYmxlZCBzdGF0ZSB0byB0aGUgRE9NIGVsZW1lbnQgKG1vZGVsID0+IHZpZXcpXHJcbiAgICovXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZSBmb3JtIHdoZW4gRE9NIGVsZW1lbnQgdmFsdWUgY2hhbmdlcyAodmlldyA9PiBtb2RlbClcclxuICAgKi9cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIC8vIFN0b3JlIHRoZSBwcm92aWRlZCBmdW5jdGlvbiBhcyBhbiBpbnRlcm5hbCBtZXRob2QuXHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIGZvcm0gd2hlbiBET00gZWxlbWVudCBpcyBibHVycmVkICh2aWV3ID0+IG1vZGVsKVxyXG4gICAqL1xyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIC8vIFN0b3JlIHRoZSBwcm92aWRlZCBmdW5jdGlvbiBhcyBhbiBpbnRlcm5hbCBtZXRob2QuXHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgb25DaGFuZ2UoXzogYW55KSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaGVkKCkge1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGxhYmVsIGNsYXNzPVwiYy1sYWJlbFwiPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJsYWJlbFwiIGNsYXNzPVwiYy1sYWJlbF9fY29udGVudFwiPlxyXG4gICAgICAgIHt7bGFiZWx9fVxyXG4gICAgICA8c3BhbiAqbmdJZj1cInJlcXVpcmVkXCIgY2xhc3M9XCJjLWxhYmVsX19yZXFcIj4qPC9zcGFuPlxyXG48c3BhbiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJjLWxhYmVsX19zdWJfaXMtZXJyb3JcIj57e2Vycm9yfX08L3NwYW4+XHJcbiAgICA8L3NwYW4+XHJcbiAgPHRleHRhcmVhIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIChpbnB1dCk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAgIFtpZF09XCJpZFwiXHJcbiAgICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxyXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7ICdtaW4taGVpZ2h0JzogbWluSGVpZ2h0KydweCcgfVwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYy10ZXh0YXJlYSBmaWVsZF97e2lkfX1cIlxyXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgPjwvdGV4dGFyZWE+XHJcbjwvbGFiZWw+XHJcbiJdfQ==
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/router";
|
|
5
|
-
import * as i2 from "../sticky/sticky.component";
|
|
6
|
-
export class ToolbarComponent {
|
|
7
|
-
constructor(element, cdRef, router) {
|
|
8
|
-
this.element = element;
|
|
9
|
-
this.cdRef = cdRef;
|
|
10
|
-
this.router = router;
|
|
11
|
-
this.display = false;
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
}
|
|
15
|
-
clickedOutsideOverlay(event) {
|
|
16
|
-
if (!this.element.nativeElement.contains(event.target)) {
|
|
17
|
-
this.display = false;
|
|
18
|
-
this.cdRef.detectChanges();
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ToolbarComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
-
ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ToolbarComponent, selector: "in-toolbar", inputs: { title: "title" }, ngImport: i0, template: "<div class=\"toolbar-wrapper\">\r\n <in-sticky top=\"60\">\r\n\r\n <div class=\"c-panel toolbar-container\">\r\n <div class=\"c-toolbar\">\r\n <div class=\"c-toolbar__side-left\">\r\n <div class=\"c-toolbar__title\">{{title}}</div>\r\n </div>\r\n <div class=\"c-toolbar__side-center\">\r\n\r\n </div>\r\n <div class=\"c-toolbar__side-right\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </in-sticky>\r\n</div>\r\n", styles: [".toolbar-wrapper{padding-bottom:4px}.toolbar-container{padding:8px;position:relative}:host{position:sticky;z-index:2}.c-toolbar{display:inline-flex;width:100%;flex-wrap:wrap}.c-toolbar__side-left{flex:100%;text-align:left}@media screen and (min-width: 1200px){.c-toolbar__side-left{flex:1}}.c-toolbar__title{display:inline-flex;vertical-align:middle;font-size:22px}.c-toolbar__side-right{display:flex;text-align:right}.add-widget{position:fixed;right:16px;bottom:16px}.widget-container{position:absolute;inset:40px 0 0;overflow:auto}.widget-block{position:absolute;inset:5px}.sidebar{background:var(--main-background);position:absolute;left:0;top:35px;bottom:0;height:100vh;z-index:100;width:300px;box-shadow:0 0 3px 8px #0000001a;overflow:auto}.right-side{display:flex;align-items:center;justify-content:flex-end;flex:1}.right-side>*{margin-left:5px}.left-side{white-space:nowrap;display:flex;align-items:center;justify-content:flex-start}.left-side>*{margin-right:5px}.controls-panel{height:41px;border-radius:2px;padding:4px 0;margin:0 5px 5px;display:flex}.dashboard-list{position:relative}.title{font-size:22px}\n"], dependencies: [{ kind: "component", type: i2.InsparkStickyComponent, selector: "in-sticky", inputs: ["top", "isInline", "isFloated", "zIndex", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ToolbarComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'in-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, entryComponents: [], template: "<div class=\"toolbar-wrapper\">\r\n <in-sticky top=\"60\">\r\n\r\n <div class=\"c-panel toolbar-container\">\r\n <div class=\"c-toolbar\">\r\n <div class=\"c-toolbar__side-left\">\r\n <div class=\"c-toolbar__title\">{{title}}</div>\r\n </div>\r\n <div class=\"c-toolbar__side-center\">\r\n\r\n </div>\r\n <div class=\"c-toolbar__side-right\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </in-sticky>\r\n</div>\r\n", styles: [".toolbar-wrapper{padding-bottom:4px}.toolbar-container{padding:8px;position:relative}:host{position:sticky;z-index:2}.c-toolbar{display:inline-flex;width:100%;flex-wrap:wrap}.c-toolbar__side-left{flex:100%;text-align:left}@media screen and (min-width: 1200px){.c-toolbar__side-left{flex:1}}.c-toolbar__title{display:inline-flex;vertical-align:middle;font-size:22px}.c-toolbar__side-right{display:flex;text-align:right}.add-widget{position:fixed;right:16px;bottom:16px}.widget-container{position:absolute;inset:40px 0 0;overflow:auto}.widget-block{position:absolute;inset:5px}.sidebar{background:var(--main-background);position:absolute;left:0;top:35px;bottom:0;height:100vh;z-index:100;width:300px;box-shadow:0 0 3px 8px #0000001a;overflow:auto}.right-side{display:flex;align-items:center;justify-content:flex-end;flex:1}.right-side>*{margin-left:5px}.left-side{white-space:nowrap;display:flex;align-items:center;justify-content:flex-start}.left-side>*{margin-right:5px}.controls-panel{height:41px;border-radius:2px;padding:4px 0;margin:0 5px 5px;display:flex}.dashboard-list{position:relative}.title{font-size:22px}\n"] }]
|
|
27
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.Router }]; }, propDecorators: { title: [{
|
|
28
|
-
type: Input
|
|
29
|
-
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnNwYXJrLWNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luc3BhcmstY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQVN2QyxNQUFNLE9BQU8sZ0JBQWdCO0lBUzNCLFlBQW1CLE9BQW1CLEVBQVUsS0FBd0IsRUFBUyxNQUFjO1FBQTVFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUFTLFdBQU0sR0FBTixNQUFNLENBQVE7UUFML0YsWUFBTyxHQUFHLEtBQUssQ0FBQztJQU9oQixDQUFDO0lBRUQsUUFBUTtJQUVSLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxLQUFLO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDOzs2R0F0QlUsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsOEVDVjdCLHdnQkFtQkE7MkZEVGEsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxtQkFDOUIsRUFBRTtzSkFLVixLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2luLXRvb2xiYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90b29sYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZW50cnlDb21wb25lbnRzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbGJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cclxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xyXG4gIGRpc3BsYXkgPSBmYWxzZTtcclxuICBvYmplY3RzO1xyXG5cclxuICBzZWxlY3RlZDogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZiwgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyByb3V0ZXI6IFJvdXRlcikge1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGlja2VkT3V0c2lkZU92ZXJsYXkoZXZlbnQpIHtcclxuICAgIGlmICghdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xyXG4gICAgICB0aGlzLmRpc3BsYXkgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwidG9vbGJhci13cmFwcGVyXCI+XHJcbiAgPGluLXN0aWNreSB0b3A9XCI2MFwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjLXBhbmVsIHRvb2xiYXItY29udGFpbmVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjLXRvb2xiYXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYy10b29sYmFyX19zaWRlLWxlZnRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjLXRvb2xiYXJfX3RpdGxlXCI+e3t0aXRsZX19PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImMtdG9vbGJhcl9fc2lkZS1jZW50ZXJcIj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImMtdG9vbGJhcl9fc2lkZS1yaWdodFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2luLXN0aWNreT5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TooltipComponent {
|
|
4
|
-
constructor() { }
|
|
5
|
-
ngOnInit() {
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
-
TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TooltipComponent, selector: "in-tooltip", ngImport: i0, template: "<div class=\"c-tooltip c-tooltip_left\">\r\n <ng-content></ng-content>\r\n <div class=\"c-tooltip__content\" style=\"width: 12em;\" >\r\n <ng-content select=\"tooltip_content\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n", styles: [".c-tooltip{display:inline-block;position:relative;text-align:left;overflow:visible}.c-tooltip:hover .c-tooltip__content{visibility:visible;opacity:1}.c-tooltip_left>.c-tooltip__content{inset:50% 100% auto auto;margin-right:12px;border-top-right-radius:0}.c-tooltip_left>.c-tooltip__content:before{border-top-color:var(--colorBgLevel2, #282A31);border-left-color:var(--colorBgLevel2, #282A31)}.c-tooltip__content{position:absolute;width:auto;margin:0 0 12px;padding:9px 12px;font-size:13px;font-weight:400;letter-spacing:normal;border-radius:3px;line-height:1.64286;visibility:hidden;opacity:0;transition:opacity .3s linear;z-index:1070;background:var(--colorBgLevel2, #282A31);color:var(--ids-theme-text-color, #fff);white-space:normal;text-transform:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
11
|
-
type: Component,
|
|
12
|
-
args: [{ selector: 'in-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"c-tooltip c-tooltip_left\">\r\n <ng-content></ng-content>\r\n <div class=\"c-tooltip__content\" style=\"width: 12em;\" >\r\n <ng-content select=\"tooltip_content\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n", styles: [".c-tooltip{display:inline-block;position:relative;text-align:left;overflow:visible}.c-tooltip:hover .c-tooltip__content{visibility:visible;opacity:1}.c-tooltip_left>.c-tooltip__content{inset:50% 100% auto auto;margin-right:12px;border-top-right-radius:0}.c-tooltip_left>.c-tooltip__content:before{border-top-color:var(--colorBgLevel2, #282A31);border-left-color:var(--colorBgLevel2, #282A31)}.c-tooltip__content{position:absolute;width:auto;margin:0 0 12px;padding:9px 12px;font-size:13px;font-weight:400;letter-spacing:normal;border-radius:3px;line-height:1.64286;visibility:hidden;opacity:0;transition:opacity .3s linear;z-index:1070;background:var(--colorBgLevel2, #282A31);color:var(--ids-theme-text-color, #fff);white-space:normal;text-transform:none}\n"] }]
|
|
13
|
-
}], ctorParameters: function () { return []; } });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnNwYXJrLWNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luc3BhcmstY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRM0UsTUFBTSxPQUFPLGdCQUFnQjtJQUUzQixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7NkdBTFUsZ0JBQWdCO2lHQUFoQixnQkFBZ0Isa0RDUjdCLG1PQU9BOzJGRENhLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaW4tdG9vbHRpcCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3Rvb2x0aXAuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImMtdG9vbHRpcCBjLXRvb2x0aXBfbGVmdFwiPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8ZGl2IGNsYXNzPVwiYy10b29sdGlwX19jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDogMTJlbTtcIiA+XHJcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0b29sdGlwX2NvbnRlbnRcIj48L25nLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuIl19
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import { Component, ContentChildren, EventEmitter, Input, NgModule, Output, QueryList } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { InsparkTemplate } from '../inspark.shared';
|
|
4
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
5
|
-
import { FormsModule } from '@angular/forms';
|
|
6
|
-
import { TableComponentModule } from '../table/table.component';
|
|
7
|
-
import { PipesModule } from '../../pipes/pipes.module';
|
|
8
|
-
import { TreeTableModule } from 'primeng/treetable';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "primeng/treetable";
|
|
12
|
-
import * as i3 from "primeng/api";
|
|
13
|
-
import * as i4 from "@angular/forms";
|
|
14
|
-
import * as i5 from "../table/table-columns-multiselect/table-columns-multiselect.component";
|
|
15
|
-
import * as i6 from "../../pipes/propertyValue.pipe";
|
|
16
|
-
import * as i7 from "@ngx-translate/core";
|
|
17
|
-
export class TreeTableComponent {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.columns = [];
|
|
20
|
-
this.values = [];
|
|
21
|
-
this.checkboxSelection = true;
|
|
22
|
-
this.activeChange = new EventEmitter();
|
|
23
|
-
this.selectionChange = new EventEmitter();
|
|
24
|
-
this.addAction = new EventEmitter();
|
|
25
|
-
this.csvAction = new EventEmitter();
|
|
26
|
-
this.saveAction = new EventEmitter();
|
|
27
|
-
this.collapseAction = new EventEmitter();
|
|
28
|
-
this.removeAction = new EventEmitter();
|
|
29
|
-
this.unlinkAction = new EventEmitter();
|
|
30
|
-
this.groupEditAction = new EventEmitter();
|
|
31
|
-
this.groupAddAction = new EventEmitter();
|
|
32
|
-
this.rowIndex = 0;
|
|
33
|
-
this.isCollapse = true;
|
|
34
|
-
this._selection = null;
|
|
35
|
-
}
|
|
36
|
-
set selection(val) {
|
|
37
|
-
this._selection = val;
|
|
38
|
-
}
|
|
39
|
-
get selectionValue() {
|
|
40
|
-
return this._selection;
|
|
41
|
-
}
|
|
42
|
-
set selectionValue(val) {
|
|
43
|
-
this._selection = val;
|
|
44
|
-
this.selectionChange.emit(val);
|
|
45
|
-
}
|
|
46
|
-
isRowActive(row) {
|
|
47
|
-
return this.active && this.active.id === row.id;
|
|
48
|
-
}
|
|
49
|
-
visibleColumns() {
|
|
50
|
-
return this.columns.filter(column => !column.isHidden);
|
|
51
|
-
}
|
|
52
|
-
columnsChange(data) {
|
|
53
|
-
data.column.isHidden = !data.event;
|
|
54
|
-
}
|
|
55
|
-
ngAfterContentInit() {
|
|
56
|
-
this.templates.forEach((item) => {
|
|
57
|
-
switch (item.getType()) {
|
|
58
|
-
case 'caption':
|
|
59
|
-
this.captionTemplate = item.template;
|
|
60
|
-
break;
|
|
61
|
-
case 'header':
|
|
62
|
-
this.headerTemplate = item.template;
|
|
63
|
-
break;
|
|
64
|
-
case 'body':
|
|
65
|
-
this.bodyTemplate = item.template;
|
|
66
|
-
break;
|
|
67
|
-
case 'value':
|
|
68
|
-
this.valueTemplate = item.template;
|
|
69
|
-
break;
|
|
70
|
-
case 'loadingbody':
|
|
71
|
-
this.loadingBodyTemplate = item.template;
|
|
72
|
-
break;
|
|
73
|
-
case 'footer':
|
|
74
|
-
this.footerTemplate = item.template;
|
|
75
|
-
break;
|
|
76
|
-
case 'summary':
|
|
77
|
-
this.summaryTemplate = item.template;
|
|
78
|
-
break;
|
|
79
|
-
case 'colgroup':
|
|
80
|
-
this.colGroupTemplate = item.template;
|
|
81
|
-
break;
|
|
82
|
-
case 'rowexpansion':
|
|
83
|
-
this.expandedRowTemplate = item.template;
|
|
84
|
-
break;
|
|
85
|
-
case 'frozenrows':
|
|
86
|
-
this.frozenRowsTemplate = item.template;
|
|
87
|
-
break;
|
|
88
|
-
case 'frozenheader':
|
|
89
|
-
this.frozenHeaderTemplate = item.template;
|
|
90
|
-
break;
|
|
91
|
-
case 'frozenbody':
|
|
92
|
-
this.frozenBodyTemplate = item.template;
|
|
93
|
-
break;
|
|
94
|
-
case 'frozenfooter':
|
|
95
|
-
this.frozenFooterTemplate = item.template;
|
|
96
|
-
break;
|
|
97
|
-
case 'frozencolgroup':
|
|
98
|
-
this.frozenColGroupTemplate = item.template;
|
|
99
|
-
break;
|
|
100
|
-
case 'emptymessage':
|
|
101
|
-
this.emptyMessageTemplate = item.template;
|
|
102
|
-
break;
|
|
103
|
-
case 'paginatorleft':
|
|
104
|
-
this.paginatorLeftTemplate = item.template;
|
|
105
|
-
break;
|
|
106
|
-
case 'paginatorright':
|
|
107
|
-
this.paginatorRightTemplate = item.template;
|
|
108
|
-
break;
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
collapse(event, dt) {
|
|
113
|
-
this.values.forEach((node) => {
|
|
114
|
-
this.toggleCollapse(node, this.isCollapse);
|
|
115
|
-
});
|
|
116
|
-
this.isCollapse = !this.isCollapse;
|
|
117
|
-
dt.filterGlobal(this.searchText, 'contains');
|
|
118
|
-
}
|
|
119
|
-
toggleCollapse(node, isCollapsed) {
|
|
120
|
-
if (node.children) {
|
|
121
|
-
node.expanded = isCollapsed;
|
|
122
|
-
for (const cn of node.children) {
|
|
123
|
-
if (cn) {
|
|
124
|
-
this.toggleCollapse(cn, isCollapsed);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
TreeTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
131
|
-
TreeTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TreeTableComponent, selector: "in-tree-table", inputs: { columns: "columns", values: "values", scrollHeight: "scrollHeight", scrollable: "scrollable", selectionMode: "selectionMode", label: "label", error: "error", class: "class", required: "required", style: "style", toolbar: "toolbar", checkboxSelection: "checkboxSelection", active: "active", sortField: "sortField", isAscending: "isAscending", dataKey: "dataKey", selection: "selection" }, outputs: { activeChange: "activeChange", selectionChange: "selectionChange", addAction: "addAction", csvAction: "csvAction", saveAction: "saveAction", collapseAction: "collapseAction", removeAction: "removeAction", unlinkAction: "unlinkAction", groupEditAction: "groupEditAction", groupAddAction: "groupAddAction" }, queries: [{ propertyName: "templates", predicate: InsparkTemplate }], ngImport: i0, template: "<p-treeTable #dt\r\n [(selection)]=\"selectionValue\"\r\n [class]=\"class\"\r\n [columns]=\"visibleColumns()\"\r\n [resizableColumns]=\"true\"\r\n [scrollHeight]=\"scrollHeight\"\r\n [scrollable]=\"scrollable\"\r\n [selectionMode]=\"selectionMode\"\r\n [sortField]=\"sortField || 'id'\"\r\n [sortOrder]=\"isAscending ? 1 : -1\"\r\n [style]=\"style\"\r\n [value]=\"values\"\r\n columnResizeMode=\"expand\"\r\n>\r\n <ng-template let-columns pTemplate=\"colgroup\">\r\n <colgroup>\r\n <col *ngIf=\"checkboxSelection\" style=\"width:44px;\">\r\n <col *ngFor=\"let col of visibleColumns()\" [style.width]=\"col.width ? col.width : '10px'\">\r\n </colgroup>\r\n </ng-template>\r\n <ng-template let-columns pTemplate=\"header\">\r\n <tr>\r\n <th *ngIf=\"checkboxSelection\">\r\n <p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns; let i = index\" [ttSortableColumn]=\"col.field\" class=\"u-position-relative\"\r\n ttResizableColumn>\r\n <div class=\"p-treetable-thead-title\" title=\"{{col.label | translate}}\">\r\n {{col.label | translate}}\r\n </div>\r\n <p-treeTableSortIcon [field]=\"col.field\" class=\"p-sortable-column-buttons\"></p-treeTableSortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template let-columns=\"columns\" let-rowData=\"rowData\" let-rowNode pTemplate=\"body\">\r\n <tr [ngClass]=\"{row_active: isRowActive(rowData)}\" [ttSelectableRow]=\"rowNode\" class=\"row\">\r\n <td *ngIf=\"checkboxSelection\">\r\n <p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\r\n </td>\r\n <td (click)=\"activeChange.emit(rowData)\" *ngFor=\"let col of columns; let i = index\"\r\n class=\"_u-overflow-visible\">\r\n <div class=\"\" style=\"display: flex; flex-wrap: nowrap;\">\r\n <ng-template [ngIf]=\"i == 0\">\r\n <p-treeTableToggler [rowNode]=\"rowNode\" style=\"align-self: center;\"></p-treeTableToggler>\r\n </ng-template>\r\n <div [ngClass]=\"{ 'p-treetable-tbody-content_has-toggler ': i == 0 }\"\r\n class=\"p-treetable-tbody-content cell-content_hover\"\r\n style=\"flex-grow: 1;\"\r\n title=\"{{rowData | propertyValue: col.field}}\">\r\n <ng-container *ngIf=\"!valueTemplate\">\r\n <i *ngIf=\"rowData.icon && i == 0\" [ngClass]=\"rowData.icon\" class=\"u-margin-right-tiny\"></i>\r\n {{rowData | propertyValue: col.field}}\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"valueTemplate; context: {$implicit: { data: rowData, col: col}}\"></ng-container>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template *ngIf=\"toolbar\" pTemplate=\"caption\">\r\n\r\n <div class=\"o-grid o-grid_no-gutter\">\r\n <div class=\"c-tree-table__toolbar-content u-display-inline-flex\">\r\n <div class=\"c-form c-form_inline u-display-inline-block\">\r\n <form class=\"c-label\">\r\n <div class=\"input-wrapper u-margin-right-tiny\">\r\n <input #searchTextInput\r\n (input)=\"dt.filterGlobal($event.target.value, 'contains')\"\r\n [(ngModel)]=\"searchText\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n autofocus=\"\"\r\n class=\"search-box c-input c-input_small ng-pristine ng-valid ng-scope ng-empty ng-touched\"\r\n pInputText\r\n placeholder=\"{{('SHARED.SEARCH' | translate) + ':'}}\"\r\n required\r\n style=\"padding-right: 28px\"\r\n tabindex=\"1\"\r\n type=\"search\"\r\n >\r\n <button (click)=\"dt.filterGlobal($event.target.value, 'contains')\" class=\"button-reset\" type=\"reset\"\r\n [attr.title]=\"'Reset' | translate\">\r\n <i class=\"in in-close\"></i>\r\n </button>\r\n </div>\r\n </form>\r\n </div>\r\n <div class=\"c-btn c-btn_border-free c-btn_small\">\r\n <in-table-columns-multiselect (columnsChange)=\"columnsChange($event)\"\r\n [columns]=\"columns\"></in-table-columns-multiselect>\r\n </div>\r\n\r\n <button (click)=\"addAction.emit($event)\" *ngIf=\"toolbar.add\" [disabled]=\"toolbar.add.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n <i class=\"in in-plus\" [title]=\"toolbar.add.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C'\"></i>\r\n </button>\r\n\r\n <button (click)=\"groupAddAction.emit($event)\" *ngIf=\"toolbar.groupAdd\" [disabled]=\"toolbar.groupAdd.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n <i class=\"in in-folder-closed\" [title]=\"toolbar.groupAdd.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443'\"></i>\r\n </button>\r\n\r\n\r\n <button (click)=\"saveAction.emit($event)\" *ngIf=\"toolbar.save\"\r\n [disabled]=\"toolbar.save.disabled\"\r\n class=\"c-btn c-btn_primary c-btn_small\"\r\n title=\"{{'Save' | translate}}\"\r\n >\r\n {{'Save' | translate}}\r\n </button>\r\n <button (click)=\"groupEditAction.emit($event)\" *ngIf=\"toolbar.groupEdit && toolbar.groupEdit.active\"\r\n [disabled]=\"toolbar.groupEdit.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-pencil\" title=\"{{'groupEdit' | translate}}\"></i>\r\n </button>\r\n <button (click)=\"removeAction.emit($event)\" *ngIf=\"toolbar.remove && toolbar.remove.active\"\r\n [disabled]=\"toolbar.remove.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-trash\" [title]=\"toolbar.remove?.title || '\u0423\u0434\u0430\u043B\u0438\u0442\u044C'\"></i>\r\n </button>\r\n <button (click)=\"unlinkAction.emit($event)\" *ngIf=\"toolbar.unlink\" [disabled]=\"toolbar.unlink.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-link-off\" title=\"{{'Detach tag from selected items' | translate}}\"></i>\r\n </button>\r\n <button (click)=\"csvAction.emit($event)\" *ngIf=\"toolbar.csv\" [disabled]=\"toolbar.csv.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n<!-- Todo: \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u044C \u043D\u0430 in-file-csv-->\r\n <i class=\"in in-file-excel-outline\" title=\"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A CSV\"></i>\r\n </button>\r\n <button *ngIf=\"toolbar.collapse\"\r\n class=\"c-btn c-btn_small c-btn_svg-24 c-icon c-icon_svg c-icon_svg-24 c-btn_border-free\"\r\n (click)=\"collapse($event, dt)\"\r\n title=\"{{(isCollapse ? 'Expand all' : 'Collapse all') | translate}}\">\r\n <svg *ngIf=\"isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path d=\"M20 2H4v2h16V2zM4 20v2h16v-2H4zM12 5l5 6H7l5-6zM17 13l-5 6-5-6h10z\"/>\r\n </svg>\r\n <svg *ngIf=\"!isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path fill-rule=\"evenodd\" d=\"M17 3l-5 6-5-6h10zM4 13v-2h16v2H4zm8 2l5 6H7l5-6z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-treeTable>\r\n", styles: ["@charset \"UTF-8\";.p-sortable-column{cursor:pointer;position:relative}.p-sortable-column-buttons{position:absolute;top:0;right:0;width:18px;height:100%;display:inline-flex;align-items:center;z-index:10000}.p-sortable-column-buttons>a{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.u-overflow-visible{overflow:visible!important}.button-reset{display:flex;align-items:center;position:absolute;right:6px;top:5px;padding:6px;font-size:15px;border:none;outline:0;cursor:pointer;color:var(--colorTextMuted);background-color:transparent}.button-reset:hover{color:var(--colorIcon)}.input-wrapper{position:relative;display:flex;align-items:baseline}.c-input:not(:valid)~.button-reset{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.TreeTable, selector: "p-treeTable", inputs: ["columns", "style", "styleClass", "tableStyle", "tableStyleClass", "autoLayout", "lazy", "lazyLoadOnInit", "paginator", "rows", "first", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "customSort", "selectionMode", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "compareSelectionBy", "rowHover", "loading", "loadingIcon", "showLoader", "scrollable", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "frozenColumns", "resizableColumns", "columnResizeMode", "reorderableColumns", "contextMenu", "rowTrackBy", "filters", "globalFilterFields", "filterDelay", "filterMode", "filterLocale", "virtualRowHeight", "value", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection"], outputs: ["selectionChange", "contextMenuSelectionChange", "onFilter", "onNodeExpand", "onNodeCollapse", "onPage", "onSort", "onLazyLoad", "sortFunction", "onColResize", "onColReorder", "onNodeSelect", "onNodeUnselect", "onContextMenuSelect", "onHeaderCheckboxToggle", "onEditInit", "onEditComplete", "onEditCancel"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i2.TreeTableToggler, selector: "p-treeTableToggler", inputs: ["rowNode"] }, { kind: "directive", type: i2.TTSortableColumn, selector: "[ttSortableColumn]", inputs: ["ttSortableColumn", "ttSortableColumnDisabled"] }, { kind: "component", type: i2.TTSortIcon, selector: "p-treeTableSortIcon", inputs: ["field", "ariaLabelDesc", "ariaLabelAsc"] }, { kind: "directive", type: i2.TTResizableColumn, selector: "[ttResizableColumn]", inputs: ["ttResizableColumnDisabled"] }, { kind: "directive", type: i2.TTSelectableRow, selector: "[ttSelectableRow]", inputs: ["ttSelectableRow", "ttSelectableRowDisabled"] }, { kind: "component", type: i2.TTCheckbox, selector: "p-treeTableCheckbox", inputs: ["disabled", "value"] }, { kind: "component", type: i2.TTHeaderCheckbox, selector: "p-treeTableHeaderCheckbox" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.TableColumnsMultiselectComponent, selector: "in-table-columns-multiselect", inputs: ["columns", "disableActiveCheckboxes"], outputs: ["columnsChange"] }, { kind: "pipe", type: i6.PropertyValuePipe, name: "propertyValue" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponent, decorators: [{
|
|
133
|
-
type: Component,
|
|
134
|
-
args: [{ selector: 'in-tree-table', entryComponents: [], template: "<p-treeTable #dt\r\n [(selection)]=\"selectionValue\"\r\n [class]=\"class\"\r\n [columns]=\"visibleColumns()\"\r\n [resizableColumns]=\"true\"\r\n [scrollHeight]=\"scrollHeight\"\r\n [scrollable]=\"scrollable\"\r\n [selectionMode]=\"selectionMode\"\r\n [sortField]=\"sortField || 'id'\"\r\n [sortOrder]=\"isAscending ? 1 : -1\"\r\n [style]=\"style\"\r\n [value]=\"values\"\r\n columnResizeMode=\"expand\"\r\n>\r\n <ng-template let-columns pTemplate=\"colgroup\">\r\n <colgroup>\r\n <col *ngIf=\"checkboxSelection\" style=\"width:44px;\">\r\n <col *ngFor=\"let col of visibleColumns()\" [style.width]=\"col.width ? col.width : '10px'\">\r\n </colgroup>\r\n </ng-template>\r\n <ng-template let-columns pTemplate=\"header\">\r\n <tr>\r\n <th *ngIf=\"checkboxSelection\">\r\n <p-treeTableHeaderCheckbox></p-treeTableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns; let i = index\" [ttSortableColumn]=\"col.field\" class=\"u-position-relative\"\r\n ttResizableColumn>\r\n <div class=\"p-treetable-thead-title\" title=\"{{col.label | translate}}\">\r\n {{col.label | translate}}\r\n </div>\r\n <p-treeTableSortIcon [field]=\"col.field\" class=\"p-sortable-column-buttons\"></p-treeTableSortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template let-columns=\"columns\" let-rowData=\"rowData\" let-rowNode pTemplate=\"body\">\r\n <tr [ngClass]=\"{row_active: isRowActive(rowData)}\" [ttSelectableRow]=\"rowNode\" class=\"row\">\r\n <td *ngIf=\"checkboxSelection\">\r\n <p-treeTableCheckbox [value]=\"rowNode\"></p-treeTableCheckbox>\r\n </td>\r\n <td (click)=\"activeChange.emit(rowData)\" *ngFor=\"let col of columns; let i = index\"\r\n class=\"_u-overflow-visible\">\r\n <div class=\"\" style=\"display: flex; flex-wrap: nowrap;\">\r\n <ng-template [ngIf]=\"i == 0\">\r\n <p-treeTableToggler [rowNode]=\"rowNode\" style=\"align-self: center;\"></p-treeTableToggler>\r\n </ng-template>\r\n <div [ngClass]=\"{ 'p-treetable-tbody-content_has-toggler ': i == 0 }\"\r\n class=\"p-treetable-tbody-content cell-content_hover\"\r\n style=\"flex-grow: 1;\"\r\n title=\"{{rowData | propertyValue: col.field}}\">\r\n <ng-container *ngIf=\"!valueTemplate\">\r\n <i *ngIf=\"rowData.icon && i == 0\" [ngClass]=\"rowData.icon\" class=\"u-margin-right-tiny\"></i>\r\n {{rowData | propertyValue: col.field}}\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"valueTemplate; context: {$implicit: { data: rowData, col: col}}\"></ng-container>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template *ngIf=\"toolbar\" pTemplate=\"caption\">\r\n\r\n <div class=\"o-grid o-grid_no-gutter\">\r\n <div class=\"c-tree-table__toolbar-content u-display-inline-flex\">\r\n <div class=\"c-form c-form_inline u-display-inline-block\">\r\n <form class=\"c-label\">\r\n <div class=\"input-wrapper u-margin-right-tiny\">\r\n <input #searchTextInput\r\n (input)=\"dt.filterGlobal($event.target.value, 'contains')\"\r\n [(ngModel)]=\"searchText\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n autofocus=\"\"\r\n class=\"search-box c-input c-input_small ng-pristine ng-valid ng-scope ng-empty ng-touched\"\r\n pInputText\r\n placeholder=\"{{('SHARED.SEARCH' | translate) + ':'}}\"\r\n required\r\n style=\"padding-right: 28px\"\r\n tabindex=\"1\"\r\n type=\"search\"\r\n >\r\n <button (click)=\"dt.filterGlobal($event.target.value, 'contains')\" class=\"button-reset\" type=\"reset\"\r\n [attr.title]=\"'Reset' | translate\">\r\n <i class=\"in in-close\"></i>\r\n </button>\r\n </div>\r\n </form>\r\n </div>\r\n <div class=\"c-btn c-btn_border-free c-btn_small\">\r\n <in-table-columns-multiselect (columnsChange)=\"columnsChange($event)\"\r\n [columns]=\"columns\"></in-table-columns-multiselect>\r\n </div>\r\n\r\n <button (click)=\"addAction.emit($event)\" *ngIf=\"toolbar.add\" [disabled]=\"toolbar.add.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n <i class=\"in in-plus\" [title]=\"toolbar.add.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C'\"></i>\r\n </button>\r\n\r\n <button (click)=\"groupAddAction.emit($event)\" *ngIf=\"toolbar.groupAdd\" [disabled]=\"toolbar.groupAdd.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n <i class=\"in in-folder-closed\" [title]=\"toolbar.groupAdd.title || '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443'\"></i>\r\n </button>\r\n\r\n\r\n <button (click)=\"saveAction.emit($event)\" *ngIf=\"toolbar.save\"\r\n [disabled]=\"toolbar.save.disabled\"\r\n class=\"c-btn c-btn_primary c-btn_small\"\r\n title=\"{{'Save' | translate}}\"\r\n >\r\n {{'Save' | translate}}\r\n </button>\r\n <button (click)=\"groupEditAction.emit($event)\" *ngIf=\"toolbar.groupEdit && toolbar.groupEdit.active\"\r\n [disabled]=\"toolbar.groupEdit.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-pencil\" title=\"{{'groupEdit' | translate}}\"></i>\r\n </button>\r\n <button (click)=\"removeAction.emit($event)\" *ngIf=\"toolbar.remove && toolbar.remove.active\"\r\n [disabled]=\"toolbar.remove.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-trash\" [title]=\"toolbar.remove?.title || '\u0423\u0434\u0430\u043B\u0438\u0442\u044C'\"></i>\r\n </button>\r\n <button (click)=\"unlinkAction.emit($event)\" *ngIf=\"toolbar.unlink\" [disabled]=\"toolbar.unlink.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\">\r\n <i class=\"in in-link-off\" title=\"{{'Detach tag from selected items' | translate}}\"></i>\r\n </button>\r\n <button (click)=\"csvAction.emit($event)\" *ngIf=\"toolbar.csv\" [disabled]=\"toolbar.csv.disabled\"\r\n class=\"c-btn c-btn_border-free c-btn_small\"\r\n >\r\n<!-- Todo: \u0437\u0430\u043C\u0435\u043D\u0438\u0442\u044C \u043D\u0430 in-file-csv-->\r\n <i class=\"in in-file-excel-outline\" title=\"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A CSV\"></i>\r\n </button>\r\n <button *ngIf=\"toolbar.collapse\"\r\n class=\"c-btn c-btn_small c-btn_svg-24 c-icon c-icon_svg c-icon_svg-24 c-btn_border-free\"\r\n (click)=\"collapse($event, dt)\"\r\n title=\"{{(isCollapse ? 'Expand all' : 'Collapse all') | translate}}\">\r\n <svg *ngIf=\"isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path d=\"M20 2H4v2h16V2zM4 20v2h16v-2H4zM12 5l5 6H7l5-6zM17 13l-5 6-5-6h10z\"/>\r\n </svg>\r\n <svg *ngIf=\"!isCollapse\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path fill-rule=\"evenodd\" d=\"M17 3l-5 6-5-6h10zM4 13v-2h16v2H4zm8 2l5 6H7l5-6z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-treeTable>\r\n", styles: ["@charset \"UTF-8\";.p-sortable-column{cursor:pointer;position:relative}.p-sortable-column-buttons{position:absolute;top:0;right:0;width:18px;height:100%;display:inline-flex;align-items:center;z-index:10000}.p-sortable-column-buttons>a{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.u-overflow-visible{overflow:visible!important}.button-reset{display:flex;align-items:center;position:absolute;right:6px;top:5px;padding:6px;font-size:15px;border:none;outline:0;cursor:pointer;color:var(--colorTextMuted);background-color:transparent}.button-reset:hover{color:var(--colorIcon)}.input-wrapper{position:relative;display:flex;align-items:baseline}.c-input:not(:valid)~.button-reset{display:none}\n"] }]
|
|
135
|
-
}], propDecorators: { columns: [{
|
|
136
|
-
type: Input
|
|
137
|
-
}], values: [{
|
|
138
|
-
type: Input
|
|
139
|
-
}], scrollHeight: [{
|
|
140
|
-
type: Input
|
|
141
|
-
}], scrollable: [{
|
|
142
|
-
type: Input
|
|
143
|
-
}], selectionMode: [{
|
|
144
|
-
type: Input
|
|
145
|
-
}], label: [{
|
|
146
|
-
type: Input
|
|
147
|
-
}], error: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], class: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}], required: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}], style: [{
|
|
154
|
-
type: Input
|
|
155
|
-
}], toolbar: [{
|
|
156
|
-
type: Input
|
|
157
|
-
}], checkboxSelection: [{
|
|
158
|
-
type: Input
|
|
159
|
-
}], active: [{
|
|
160
|
-
type: Input
|
|
161
|
-
}], sortField: [{
|
|
162
|
-
type: Input
|
|
163
|
-
}], isAscending: [{
|
|
164
|
-
type: Input
|
|
165
|
-
}], dataKey: [{
|
|
166
|
-
type: Input
|
|
167
|
-
}], activeChange: [{
|
|
168
|
-
type: Output
|
|
169
|
-
}], templates: [{
|
|
170
|
-
type: ContentChildren,
|
|
171
|
-
args: [InsparkTemplate]
|
|
172
|
-
}], selectionChange: [{
|
|
173
|
-
type: Output
|
|
174
|
-
}], addAction: [{
|
|
175
|
-
type: Output
|
|
176
|
-
}], csvAction: [{
|
|
177
|
-
type: Output
|
|
178
|
-
}], saveAction: [{
|
|
179
|
-
type: Output
|
|
180
|
-
}], collapseAction: [{
|
|
181
|
-
type: Output
|
|
182
|
-
}], removeAction: [{
|
|
183
|
-
type: Output
|
|
184
|
-
}], unlinkAction: [{
|
|
185
|
-
type: Output
|
|
186
|
-
}], groupEditAction: [{
|
|
187
|
-
type: Output
|
|
188
|
-
}], groupAddAction: [{
|
|
189
|
-
type: Output
|
|
190
|
-
}], selection: [{
|
|
191
|
-
type: Input
|
|
192
|
-
}] } });
|
|
193
|
-
export class TreeTableComponentModule {
|
|
194
|
-
}
|
|
195
|
-
TreeTableComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
196
|
-
TreeTableComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponentModule, declarations: [TreeTableComponent], imports: [CommonModule, TreeTableModule, PipesModule, TranslateModule, FormsModule, TableComponentModule], exports: [TreeTableComponent] });
|
|
197
|
-
TreeTableComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponentModule, imports: [CommonModule, TreeTableModule, PipesModule, TranslateModule, FormsModule, TableComponentModule] });
|
|
198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTableComponentModule, decorators: [{
|
|
199
|
-
type: NgModule,
|
|
200
|
-
args: [{
|
|
201
|
-
imports: [CommonModule, TreeTableModule, PipesModule, TranslateModule, FormsModule, TableComponentModule],
|
|
202
|
-
exports: [TreeTableComponent],
|
|
203
|
-
declarations: [TreeTableComponent]
|
|
204
|
-
}]
|
|
205
|
-
}] });
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnNwYXJrLWNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvdHJlZS10YWJsZS90cmVlLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luc3BhcmstY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy90cmVlLXRhYmxlL3RyZWUtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBR3JELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7O0FBVWxELE1BQU0sT0FBTyxrQkFBa0I7SUFOL0I7UUFRVyxZQUFPLEdBQW1CLEVBQUUsQ0FBQztRQUM3QixXQUFNLEdBQUcsRUFBRSxDQUFDO1FBVVosc0JBQWlCLEdBQUcsSUFBSSxDQUFDO1FBTXhCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV2QyxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3hELGNBQVMs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QUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkF3Qk0sU0FBUztzQkFBckIsS0FBSzs7QUE2SFIsTUFBTSxPQUFPLHdCQUF3Qjs7cUhBQXhCLHdCQUF3QjtzSEFBeEIsd0JBQXdCLGlCQWxMeEIsa0JBQWtCLGFBOEtuQixZQUFZLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixhQTlLN0Ysa0JBQWtCO3NIQWtMbEIsd0JBQXdCLFlBSnpCLFlBQVksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsb0JBQW9COzJGQUk3Rix3QkFBd0I7a0JBTHBDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQztvQkFDekcsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBOZ01vZHVsZSxcclxuICBPdXRwdXQsXHJcbiAgUXVlcnlMaXN0LFxyXG4gIFRlbXBsYXRlUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge0luc3BhcmtUZW1wbGF0ZX0gZnJvbSAnLi4vaW5zcGFyay5zaGFyZWQnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtUYWJsZUNvbXBvbmVudE1vZHVsZX0gZnJvbSAnLi4vdGFibGUvdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHtQaXBlc01vZHVsZX0gZnJvbSAnLi4vLi4vcGlwZXMvcGlwZXMubW9kdWxlJztcclxuaW1wb3J0IHtUYWJsZVJvd0RhdGF9IGZyb20gJy4uLy4uL3V0aWxzL2h5YnJpZC9wcmltZS10YWJsZS90YWJsZS1yb3ctZGF0YS5tb2RlbCc7XHJcbmltcG9ydCB7VGFibGVDb2x1bW5zfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1RyZWVUYWJsZU1vZHVsZX0gZnJvbSAncHJpbWVuZy90cmVldGFibGUnO1xyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2luLXRyZWUtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cmVlLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cmVlLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW50cnlDb21wb25lbnRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyZWVUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xyXG5cclxuICBASW5wdXQoKSBjb2x1bW5zOiBUYWJsZUNvbHVtbnNbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHZhbHVlcyA9IFtdO1xyXG4gIEBJbnB1dCgpIHNjcm9sbEhlaWdodDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNjcm9sbGFibGU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VsZWN0aW9uTW9kZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZXJyb3I6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHN0eWxlOiBhbnk7XHJcbiAgQElucHV0KCkgdG9vbGJhcjogYW55O1xyXG4gIEBJbnB1dCgpIGNoZWNrYm94U2VsZWN0aW9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhY3RpdmU7XHJcbiAgQElucHV0KCkgc29ydEZpZWxkO1xyXG4gIEBJbnB1dCgpIGlzQXNjZW5kaW5nO1xyXG4gIEBJbnB1dCgpIGRhdGFLZXk7XHJcblxyXG4gIEBPdXRwdXQoKSBhY3RpdmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAQ29udGVudENoaWxkcmVuKEluc3BhcmtUZW1wbGF0ZSkgdGVtcGxhdGVzOiBRdWVyeUxpc3Q8SW5zcGFya1RlbXBsYXRlPjtcclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgYWRkQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBjc3ZBY3Rpb246IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHNhdmVBY3Rpb246IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGNvbGxhcHNlQWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSByZW1vdmVBY3Rpb246IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHVubGlua0FjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgZ3JvdXBFZGl0QWN0aW9uOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBncm91cEFkZEFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgYm9keVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGxvYWRpbmdCb2R5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgY2FwdGlvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGZyb3plblJvd3NUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBzdW1tYXJ5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgY29sR3JvdXBUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBleHBhbmRlZFJvd1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGZyb3plbkhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGZyb3plbkJvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBmcm96ZW5Gb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBmcm96ZW5Db2xHcm91cFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGVtcHR5TWVzc2FnZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHBhZ2luYXRvckxlZnRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwYWdpbmF0b3JSaWdodFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHZhbHVlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgc2VhcmNoVGV4dDogc3RyaW5nO1xyXG4gIHJvd0luZGV4ID0gMDtcclxuICBpc0NvbGxhcHNlID0gdHJ1ZTtcclxuICBfc2VsZWN0aW9uID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgc2V0IHNlbGVjdGlvbih2YWwpIHtcclxuICAgIHRoaXMuX3NlbGVjdGlvbiA9IHZhbDtcclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3Rpb25WYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl9zZWxlY3Rpb247XHJcbiAgfVxyXG5cclxuICBzZXQgc2VsZWN0aW9uVmFsdWUodmFsKSB7XHJcbiAgICB0aGlzLl9zZWxlY3Rpb24gPSB2YWw7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHZhbCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNSb3dBY3RpdmUocm93OiBUYWJsZVJvd0RhdGEpIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZSAmJiB0aGlzLmFjdGl2ZS5pZCA9PT0gcm93LmlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHZpc2libGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uc1tdIHtcclxuICAgIHJldHVybiB0aGlzLmNvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiAhY29sdW1uLmlzSGlkZGVuKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb2x1bW5zQ2hhbmdlKGRhdGEpIHtcclxuICAgIGRhdGEuY29sdW1uLmlzSGlkZGVuID0gIWRhdGEuZXZlbnQ7XHJcbiAgfVxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcclxuICAgIHRoaXMudGVtcGxhdGVzLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgc3dpdGNoIChpdGVtLmdldFR5cGUoKSkge1xyXG4gICAgICAgIGNhc2UgJ2NhcHRpb24nOlxyXG4gICAgICAgICAgdGhpcy5jYXB0aW9uVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgJ2hlYWRlcic6XHJcbiAgICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdib2R5JzpcclxuICAgICAgICAgIHRoaXMuYm9keVRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3ZhbHVlJzpcclxuICAgICAgICAgIHRoaXMudmFsdWVUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnbG9hZGluZ2JvZHknOlxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nQm9keVRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdmb290ZXInOlxyXG4gICAgICAgICAgdGhpcy5mb290ZXJUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnc3VtbWFyeSc6XHJcbiAgICAgICAgICB0aGlzLnN1bW1hcnlUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnY29sZ3JvdXAnOlxyXG4gICAgICAgICAgdGhpcy5jb2xHcm91cFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdyb3dleHBhbnNpb24nOlxyXG4gICAgICAgICAgdGhpcy5leHBhbmRlZFJvd1RlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdmcm96ZW5yb3dzJzpcclxuICAgICAgICAgIHRoaXMuZnJvemVuUm93c1RlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlICdmcm96ZW5oZWFkZXInOlxyXG4gICAgICAgICAgdGhpcy5mcm96ZW5IZWFkZXJUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnZnJvemVuYm9keSc6XHJcbiAgICAgICAgICB0aGlzLmZyb3plbkJvZHlUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnZnJvemVuZm9vdGVyJzpcclxuICAgICAgICAgIHRoaXMuZnJvemVuRm9vdGVyVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgJ2Zyb3plbmNvbGdyb3VwJzpcclxuICAgICAgICAgIHRoaXMuZnJvemVuQ29sR3JvdXBUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnZW1wdHltZXNzYWdlJzpcclxuICAgICAgICAgIHRoaXMuZW1wdHlNZXNzYWdlVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgJ3BhZ2luYXRvcmxlZnQnOlxyXG4gICAgICAgICAgdGhpcy5wYWdpbmF0b3JMZWZ0VGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgJ3BhZ2luYXRvcnJpZ2h0JzpcclxuICAgICAgICAgIHRoaXMucGFnaW5hdG9yUmlnaHRUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjb2xsYXBzZShldmVudCwgZHQpIHtcclxuICAgIHRoaXMudmFsdWVzLmZvckVhY2goKG5vZGUpID0+IHtcclxuICAgICAgdGhpcy50b2dnbGVDb2xsYXBzZShub2RlLCB0aGlzLmlzQ29sbGFwc2UpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmlzQ29sbGFwc2UgPSAhdGhpcy5pc0NvbGxhcHNlO1xyXG4gICAgZHQuZmlsdGVyR2xvYmFsKHRoaXMuc2VhcmNoVGV4dCwgJ2NvbnRhaW5zJyk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVDb2xsYXBzZShub2RlOiBhbnksIGlzQ29sbGFwc2VkOiBib29sZWFuKSB7XHJcblxyXG4gICAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcclxuICAgICAgbm9kZS5leHBhbmRlZCA9IGlzQ29sbGFwc2VkO1xyXG4gICAgICBmb3IgKGNvbnN0IGNuIG9mIG5vZGUuY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoY24pIHtcclxuICAgICAgICAgIHRoaXMudG9nZ2xlQ29sbGFwc2UoY24sIGlzQ29sbGFwc2VkKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmVlVGFibGVNb2R1bGUsIFBpcGVzTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEZvcm1zTW9kdWxlLCBUYWJsZUNvbXBvbmVudE1vZHVsZV0sXHJcbiAgZXhwb3J0czogW1RyZWVUYWJsZUNvbXBvbmVudF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbVHJlZVRhYmxlQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJlZVRhYmxlQ29tcG9uZW50TW9kdWxlIHtcclxufVxyXG4iLCI8cC10cmVlVGFibGUgI2R0XHJcbiAgICAgICAgICAgICBbKHNlbGVjdGlvbildPVwic2VsZWN0aW9uVmFsdWVcIlxyXG4gICAgICAgICAgICAgW2NsYXNzXT1cImNsYXNzXCJcclxuICAgICAgICAgICAgIFtjb2x1bW5zXT1cInZpc2libGVDb2x1bW5zKClcIlxyXG4gICAgICAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICBbc2Nyb2xsSGVpZ2h0XT1cInNjcm9sbEhlaWdodFwiXHJcbiAgICAgICAgICAgICBbc2Nyb2xsYWJsZV09XCJzY3JvbGxhYmxlXCJcclxuICAgICAgICAgICAgIFtzZWxlY3Rpb25Nb2RlXT1cInNlbGVjdGlvbk1vZGVcIlxyXG4gICAgICAgICAgICAgW3NvcnRGaWVsZF09XCJzb3J0RmllbGQgfHwgJ2lkJ1wiXHJcbiAgICAgICAgICAgICBbc29ydE9yZGVyXT1cImlzQXNjZW5kaW5nID8gMSA6IC0xXCJcclxuICAgICAgICAgICAgIFtzdHlsZV09XCJzdHlsZVwiXHJcbiAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVzXCJcclxuICAgICAgICAgICAgIGNvbHVtblJlc2l6ZU1vZGU9XCJleHBhbmRcIlxyXG4+XHJcbiAgPG5nLXRlbXBsYXRlIGxldC1jb2x1bW5zIHBUZW1wbGF0ZT1cImNvbGdyb3VwXCI+XHJcbiAgICA8Y29sZ3JvdXA+XHJcbiAgICAgIDxjb2wgKm5nSWY9XCJjaGVja2JveFNlbGVjdGlvblwiIHN0eWxlPVwid2lkdGg6NDRweDtcIj5cclxuICAgICAgPGNvbCAqbmdGb3I9XCJsZXQgY29sIG9mIHZpc2libGVDb2x1bW5zKClcIiBbc3R5bGUud2lkdGhdPVwiY29sLndpZHRoID8gY29sLndpZHRoIDogJzEwcHgnXCI+XHJcbiAgICA8L2NvbGdyb3VwPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPG5nLXRlbXBsYXRlIGxldC1jb2x1bW5zIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGggKm5nSWY9XCJjaGVja2JveFNlbGVjdGlvblwiPlxyXG4gICAgICAgIDxwLXRyZWVUYWJsZUhlYWRlckNoZWNrYm94PjwvcC10cmVlVGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgPC90aD5cclxuICAgICAgPHRoICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiIFt0dFNvcnRhYmxlQ29sdW1uXT1cImNvbC5maWVsZFwiIGNsYXNzPVwidS1wb3NpdGlvbi1yZWxhdGl2ZVwiXHJcbiAgICAgICAgICB0dFJlc2l6YWJsZUNvbHVtbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicC10cmVldGFibGUtdGhlYWQtdGl0bGVcIiB0aXRsZT1cInt7Y29sLmxhYmVsIHwgdHJhbnNsYXRlfX1cIj5cclxuICAgICAgICAgIHt7Y29sLmxhYmVsIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8cC10cmVlVGFibGVTb3J0SWNvbiBbZmllbGRdPVwiY29sLmZpZWxkXCIgY2xhc3M9XCJwLXNvcnRhYmxlLWNvbHVtbi1idXR0b25zXCI+PC9wLXRyZWVUYWJsZVNvcnRJY29uPlxyXG4gICAgICA8L3RoPlxyXG4gICAgPC90cj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8bmctdGVtcGxhdGUgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCIgbGV0LXJvd0RhdGE9XCJyb3dEYXRhXCIgbGV0LXJvd05vZGUgcFRlbXBsYXRlPVwiYm9keVwiPlxyXG4gICAgPHRyIFtuZ0NsYXNzXT1cIntyb3dfYWN0aXZlOiBpc1Jvd0FjdGl2ZShyb3dEYXRhKX1cIiBbdHRTZWxlY3RhYmxlUm93XT1cInJvd05vZGVcIiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICA8dGQgKm5nSWY9XCJjaGVja2JveFNlbGVjdGlvblwiPlxyXG4gICAgICAgIDxwLXRyZWVUYWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dOb2RlXCI+PC9wLXRyZWVUYWJsZUNoZWNrYm94PlxyXG4gICAgICA8L3RkPlxyXG4gICAgICA8dGQgKGNsaWNrKT1cImFjdGl2ZUNoYW5nZS5lbWl0KHJvd0RhdGEpXCIgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICAgIGNsYXNzPVwiX3Utb3ZlcmZsb3ctdmlzaWJsZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogbm93cmFwO1wiPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cImkgPT0gMFwiPlxyXG4gICAgICAgICAgICA8cC10cmVlVGFibGVUb2dnbGVyICBbcm93Tm9kZV09XCJyb3dOb2RlXCIgc3R5bGU9XCJhbGlnbi1zZWxmOiBjZW50ZXI7XCI+PC9wLXRyZWVUYWJsZVRvZ2dsZXI+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7ICdwLXRyZWV0YWJsZS10Ym9keS1jb250ZW50X2hhcy10b2dnbGVyICc6IGkgPT0gMCB9XCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJwLXRyZWV0YWJsZS10Ym9keS1jb250ZW50IGNlbGwtY29udGVudF9ob3ZlclwiXHJcbiAgICAgICAgICAgICAgIHN0eWxlPVwiZmxleC1ncm93OiAxO1wiXHJcbiAgICAgICAgICAgICAgIHRpdGxlPVwie3tyb3dEYXRhIHwgcHJvcGVydHlWYWx1ZTogY29sLmZpZWxkfX1cIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF2YWx1ZVRlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgICAgPGkgKm5nSWY9XCJyb3dEYXRhLmljb24gJiYgaSA9PSAwXCIgW25nQ2xhc3NdPVwicm93RGF0YS5pY29uXCIgY2xhc3M9XCJ1LW1hcmdpbi1yaWdodC10aW55XCI+PC9pPlxyXG4gICAgICAgICAgICAgIHt7cm93RGF0YSB8IHByb3BlcnR5VmFsdWU6IGNvbC5maWVsZH19XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidmFsdWVUZW1wbGF0ZTsgY29udGV4dDogeyRpbXBsaWNpdDogeyBkYXRhOiByb3dEYXRhLCBjb2w6IGNvbH19XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC90ZD5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwidG9vbGJhclwiIHBUZW1wbGF0ZT1cImNhcHRpb25cIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiby1ncmlkIG8tZ3JpZF9uby1ndXR0ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImMtdHJlZS10YWJsZV9fdG9vbGJhci1jb250ZW50IHUtZGlzcGxheS1pbmxpbmUtZmxleFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjLWZvcm0gYy1mb3JtX2lubGluZSB1LWRpc3BsYXktaW5saW5lLWJsb2NrXCI+XHJcbiAgICAgICAgICA8Zm9ybSBjbGFzcz1cImMtbGFiZWxcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LXdyYXBwZXIgdS1tYXJnaW4tcmlnaHQtdGlueVwiPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCAjc2VhcmNoVGV4dElucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgIChpbnB1dCk9XCJkdC5maWx0ZXJHbG9iYWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ2NvbnRhaW5zJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJcclxuICAgICAgICAgICAgICAgICAgICAgYXV0b2ZvY3VzPVwiXCJcclxuICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWFyY2gtYm94IGMtaW5wdXQgYy1pbnB1dF9zbWFsbCBuZy1wcmlzdGluZSBuZy12YWxpZCBuZy1zY29wZSBuZy1lbXB0eSBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgcElucHV0VGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7KCdTSEFSRUQuU0VBUkNIJyB8IHRyYW5zbGF0ZSkgKyAnOid9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwicGFkZGluZy1yaWdodDogMjhweFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkdC5maWx0ZXJHbG9iYWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ2NvbnRhaW5zJylcIiBjbGFzcz1cImJ1dHRvbi1yZXNldFwiIHR5cGU9XCJyZXNldFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCInUmVzZXQnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImluIGluLWNsb3NlXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYy1idG4gYy1idG5fYm9yZGVyLWZyZWUgYy1idG5fc21hbGxcIj5cclxuICAgICAgICAgIDxpbi10YWJsZS1jb2x1bW5zLW11bHRpc2VsZWN0IChjb2x1bW5zQ2hhbmdlKT1cImNvbHVtbnNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sdW1uc109XCJjb2x1bW5zXCI+PC9pbi10YWJsZS1jb2x1bW5zLW11bHRpc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJhZGRBY3Rpb24uZW1pdCgkZXZlbnQpXCIgKm5nSWY9XCJ0b29sYmFyLmFkZFwiIFtkaXNhYmxlZF09XCJ0b29sYmFyLmFkZC5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImMtYnRuIGMtYnRuX2JvcmRlci1mcmVlIGMtYnRuX3NtYWxsXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImluIGluLXBsdXNcIiBbdGl0bGVdPVwidG9vbGJhci5hZGQudGl0bGUgfHwgJ9CU0L7QsdCw0LLQuNGC0YwnXCI+PC9pPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJncm91cEFkZEFjdGlvbi5lbWl0KCRldmVudClcIiAqbmdJZj1cInRvb2xiYXIuZ3JvdXBBZGRcIiBbZGlzYWJsZWRdPVwidG9vbGJhci5ncm91cEFkZC5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImMtYnRuIGMtYnRuX2JvcmRlci1mcmVlIGMtYnRuX3NtYWxsXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImluIGluLWZvbGRlci1jbG9zZWRcIiBbdGl0bGVdPVwidG9vbGJhci5ncm91cEFkZC50aXRsZSB8fCAn0JTQvtCx0LDQstC40YLRjCDQs9GA0YPQv9C/0YMnXCI+PC9pPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG5cclxuXHJcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwic2F2ZUFjdGlvbi5lbWl0KCRldmVudClcIiAqbmdJZj1cInRvb2xiYXIuc2F2ZVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidG9vbGJhci5zYXZlLmRpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYy1idG4gYy1idG5fcHJpbWFyeSBjLWJ0bl9zbWFsbFwiXHJcbiAgICAgICAgICAgICAgICB0aXRsZT1cInt7J1NhdmUnIHwgdHJhbnNsYXRlfX1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7J1NhdmUnIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJncm91cEVkaXRBY3Rpb24uZW1pdCgkZXZlbnQpXCIgKm5nSWY9XCJ0b29sYmFyLmdyb3VwRWRpdCAmJiB0b29sYmFyLmdyb3VwRWRpdC5hY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRvb2xiYXIuZ3JvdXBFZGl0LmRpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYy1idG4gYy1idG5fYm9yZGVyLWZyZWUgYy1idG5fc21hbGxcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiaW4gaW4tcGVuY2lsXCIgdGl0bGU9XCJ7eydncm91cEVkaXQnIHwgdHJhbnNsYXRlfX1cIj48L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwicmVtb3ZlQWN0aW9uLmVtaXQoJGV2ZW50KVwiICpuZ0lmPVwidG9vbGJhci5yZW1vdmUgJiYgdG9vbGJhci5yZW1vdmUuYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0b29sYmFyLnJlbW92ZS5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImMtYnRuIGMtYnRuX2JvcmRlci1mcmVlIGMtYnRuX3NtYWxsXCI+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImluIGluLXRyYXNoXCIgW3RpdGxlXT1cInRvb2xiYXIucmVtb3ZlPy50aXRsZSB8fCAn0KPQtNCw0LvQuNGC0YwnXCI+PC9pPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cInVubGlua0FjdGlvbi5lbWl0KCRldmVudClcIiAqbmdJZj1cInRvb2xiYXIudW5saW5rXCIgW2Rpc2FibGVkXT1cInRvb2xiYXIudW5saW5rLmRpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYy1idG4gYy1idG5fYm9yZGVyLWZyZWUgYy1idG5fc21hbGxcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiaW4gaW4tbGluay1vZmZcIiB0aXRsZT1cInt7J0RldGFjaCB0YWcgZnJvbSBzZWxlY3RlZCBpdGVtcycgfCB0cmFuc2xhdGV9fVwiPjwvaT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjc3ZBY3Rpb24uZW1pdCgkZXZlbnQpXCIgKm5nSWY9XCJ0b29sYmFyLmNzdlwiIFtkaXNhYmxlZF09XCJ0b29sYmFyLmNzdi5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImMtYnRuIGMtYnRuX2JvcmRlci1mcmVlIGMtYnRuX3NtYWxsXCJcclxuICAgICAgICA+XHJcbjwhLS0gICAgICAgICAgVG9kbzog0LfQsNC80LXQvdC40YLRjCDQvdCwIGluLWZpbGUtY3N2LS0+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImluIGluLWZpbGUtZXhjZWwtb3V0bGluZVwiIHRpdGxlPVwi0KHQvtGF0YDQsNC90LjRgtGMINC60LDQuiBDU1ZcIj48L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiAgKm5nSWY9XCJ0b29sYmFyLmNvbGxhcHNlXCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cImMtYnRuIGMtYnRuX3NtYWxsIGMtYnRuX3N2Zy0yNCBjLWljb24gYy1pY29uX3N2ZyBjLWljb25fc3ZnLTI0IGMtYnRuX2JvcmRlci1mcmVlXCJcclxuICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29sbGFwc2UoJGV2ZW50LCBkdClcIlxyXG4gICAgICAgICAgICAgICAgIHRpdGxlPVwie3soaXNDb2xsYXBzZSA/ICdFeHBhbmQgYWxsJyA6ICdDb2xsYXBzZSBhbGwnKSB8IHRyYW5zbGF0ZX19XCI+XHJcbiAgICAgICAgICA8c3ZnICpuZ0lmPVwiaXNDb2xsYXBzZVwiICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIk0yMCAySDR2MmgxNlYyek00IDIwdjJoMTZ2LTJINHpNMTIgNWw1IDZIN2w1LTZ6TTE3IDEzbC01IDYtNS02aDEwelwiLz5cclxuICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPHN2ZyAqbmdJZj1cIiFpc0NvbGxhcHNlXCIgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwiY3VycmVudENvbG9yXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiPlxyXG4gICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xNyAzbC01IDYtNS02aDEwek00IDEzdi0yaDE2djJINHptOCAybDUgNkg3bDUtNnpcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIvPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLXRyZWVUYWJsZT5cclxuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public_api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGFyay1pbnNwYXJrLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnNwYXJrLWNvbXBvbmVudHMvc3JjL2luc3BhcmstaW5zcGFyay1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5zcGFyay1jb21wb25lbnRzL3NyYy9pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TWVudUl0ZW19IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlQ2VsbERhdGEge1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiAnc3VjY2VzcycgfCAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2NyaXRpY2FsJyB8ICdmYWxzZXZhbHVlJztcclxuICBpc0VkaXQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDb2x1bW5zIHtcclxuXHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIHNpemU6IHN0cmluZztcclxuICB3aWR0aD86IHN0cmluZztcclxuICBpc0hpZGRlbj86IGJvb2xlYW47XHJcbiAgaXNTZWNvbmRhcnk/OiBib29sZWFuO1xyXG4gIGlzUmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gIGdyb3VwS2V5Pzogc3RyaW5nW107XHJcbiAgZ3JvdXBPcmRlcj86IChudW1iZXIgfCBzdHJpbmcpW107XHJcbiAgdHJhbnNsYXRhYmxlPzogYm9vbGVhbjtcclxuICBpc0ZpbHRlcmluZz86IGJvb2xlYW47XHJcbiAgY29sX2ludmlzaWJsZT86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGFya01lbnVJdGVtIGV4dGVuZHMgTWVudUl0ZW0ge1xyXG4gIHN2Zz86IHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCB0eXBlIENpcmNsZU1vZGUgPSAnc3VjY2VzcycgfCAnd2FybmluZycgfCAnZXJyb3InIHwgJ2ZhbHNldmFsdWUnIHwgJ21haW50ZW5hbmNlJyB8ICdwcmltYXJ5JyB8ICdub25lJyB8ICdjcml0aWNhbCcgfCAnaW52ZXJzZScgfCAnYmxhY2snO1xyXG5leHBvcnQgdHlwZSBDaXJjbGVTaXplID0gJ21pbmknIHwgJ3NtYWxsJyB8ICdub3JtYWwnIHwgJ2JpZyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRvb2xCYXIge1xyXG4gIGFkZD86IFRvb2xCYXJJdGVtO1xyXG4gIGNvbGxhcHNlPzogVG9vbEJhckl0ZW07XHJcbiAgY3N2PzogVG9vbEJhckl0ZW07XHJcbiAgZXhwYW5kQWxsPzogVG9vbEJhckl0ZW07XHJcbiAgZmlsdGVyPzogVG9vbEJhckZpbHRlckl0ZW07XHJcbiAgZ3JvdXBBZGQ/OiBUb29sQmFySXRlbTtcclxuICBncm91cEVkaXQ/OiBUb29sQmFySXRlbTtcclxuICBncm91cFNvcnQ/OiBUb29sQmFySXRlbTtcclxuICBsaW5rPzogVG9vbEJhckl0ZW07XHJcbiAgcGFyYW1zRWRpdD86IFRvb2xCYXJJdGVtO1xyXG4gIHJlbW92ZT86IFRvb2xCYXJJdGVtO1xyXG4gIHNlYXJjaD86IFRvb2xCYXJGaWx0ZXJJdGVtO1xyXG4gIHNhdmU/OiBUb29sQmFySXRlbTtcclxuICB0cmVlPzogVG9vbEJhckl0ZW07XHJcbiAgdW5saW5rPzogVG9vbEJhckl0ZW07XHJcblxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRvb2xCYXJJdGVtIHtcclxuICBhY3RpdmU/OiBib29sZWFuO1xyXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcclxuICB0aXRsZT86IHN0cmluZztcclxuICBsYWJlbD86IFRvb2xCYXJHcm91cFNvcnRPcHRpb25bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUb29sQmFyRmlsdGVySXRlbSB7XHJcbiAgYWN0aXZlPzogYm9vbGVhbjtcclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgY29scz86IFRvb2xCYXJGaWx0ZXJDb2x1bW5bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUb29sQmFyRmlsdGVyQ29sdW1uIHtcclxuICBmaWVsZD86IHN0cmluZyxcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIG9wdGlvbnM/OiBUb29sQmFyRmlsdGVyQ29sdW1uT3B0aW9uW11cclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFRvb2xCYXJGaWx0ZXJDb2x1bW5PcHRpb24ge1xyXG4gIGxhYmVsPzogc3RyaW5nO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRvb2xCYXJHcm91cFNvcnRPcHRpb24ge1xyXG4gIGxhYmVsPzogc3RyaW5nO1xyXG4gIHZhbHVlPzogYW55O1xyXG59XHJcbiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { PropertyValuePipe } from './propertyValue.pipe';
|
|
3
|
-
import { FormatNumToTime, InDate, NumToShortWeekdayPipe, ShortToFullWeekdayPipe } from './time.pipe';
|
|
4
|
-
import { SafeUrlPipe } from './safeUrl.pipe';
|
|
5
|
-
import { SortByPipe } from "./sort-by.pipe";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class PipesModule {
|
|
8
|
-
}
|
|
9
|
-
PipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
-
PipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PipesModule, declarations: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe], exports: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe] });
|
|
11
|
-
PipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PipesModule });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PipesModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
exports: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe],
|
|
16
|
-
declarations: [PropertyValuePipe, NumToShortWeekdayPipe, FormatNumToTime, InDate, ShortToFullWeekdayPipe, SafeUrlPipe, SortByPipe]
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5zcGFyay1jb21wb25lbnRzL3NyYy9waXBlcy9waXBlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNuRyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQU0xQyxNQUFNLE9BQU8sV0FBVzs7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLGlCQUZQLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLFVBQVUsYUFEdkgsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsVUFBVTt5R0FHakgsV0FBVzsyRkFBWCxXQUFXO2tCQUp2QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQztvQkFDN0gsWUFBWSxFQUFFLENBQUMsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDO2lCQUNuSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1Byb3BlcnR5VmFsdWVQaXBlfSBmcm9tICcuL3Byb3BlcnR5VmFsdWUucGlwZSc7XHJcbmltcG9ydCB7Rm9ybWF0TnVtVG9UaW1lLCBJbkRhdGUsIE51bVRvU2hvcnRXZWVrZGF5UGlwZSwgU2hvcnRUb0Z1bGxXZWVrZGF5UGlwZX0gZnJvbSAnLi90aW1lLnBpcGUnO1xyXG5pbXBvcnQge1NhZmVVcmxQaXBlfSBmcm9tICcuL3NhZmVVcmwucGlwZSc7XHJcbmltcG9ydCB7U29ydEJ5UGlwZX0gZnJvbSBcIi4vc29ydC1ieS5waXBlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGV4cG9ydHM6IFtQcm9wZXJ0eVZhbHVlUGlwZSwgTnVtVG9TaG9ydFdlZWtkYXlQaXBlLCBGb3JtYXROdW1Ub1RpbWUsIEluRGF0ZSwgU2hvcnRUb0Z1bGxXZWVrZGF5UGlwZSwgU2FmZVVybFBpcGUsIFNvcnRCeVBpcGVdLFxyXG4gIGRlY2xhcmF0aW9uczogW1Byb3BlcnR5VmFsdWVQaXBlLCBOdW1Ub1Nob3J0V2Vla2RheVBpcGUsIEZvcm1hdE51bVRvVGltZSwgSW5EYXRlLCBTaG9ydFRvRnVsbFdlZWtkYXlQaXBlLCBTYWZlVXJsUGlwZSwgU29ydEJ5UGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFBpcGVzTW9kdWxlIHtcclxufVxyXG4iXX0=
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class PropertyValuePipe {
|
|
4
|
-
transform(value, name) {
|
|
5
|
-
if (Array.isArray(value) || !(value instanceof Object) || !name) {
|
|
6
|
-
return value;
|
|
7
|
-
}
|
|
8
|
-
else if (name.indexOf('.') > -1) {
|
|
9
|
-
const splitName = name.split(/\.(.+)/, 2);
|
|
10
|
-
return this.transform(value[splitName[0]], splitName[1]);
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
return value[name];
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
PropertyValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PropertyValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
18
|
-
PropertyValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PropertyValuePipe, name: "propertyValue" });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PropertyValuePipe, decorators: [{
|
|
20
|
-
type: Pipe,
|
|
21
|
-
args: [{
|
|
22
|
-
name: 'propertyValue'
|
|
23
|
-
}]
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlWYWx1ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5zcGFyay1jb21wb25lbnRzL3NyYy9waXBlcy9wcm9wZXJ0eVZhbHVlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7O0FBS2xELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsU0FBUyxDQUFDLEtBQVUsRUFBRSxJQUFZO1FBQ2hDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQy9ELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7YUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDakMsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDcEQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMxRDthQUFNO1lBQ0wsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEI7SUFDSCxDQUFDOzs4R0FWVSxpQkFBaUI7NEdBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUg3QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3Byb3BlcnR5VmFsdWUnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBuYW1lOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpIHx8ICEodmFsdWUgaW5zdGFuY2VvZiBPYmplY3QpIHx8ICFuYW1lKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH0gZWxzZSBpZiAobmFtZS5pbmRleE9mKCcuJykgPiAtMSkge1xyXG4gICAgICBjb25zdCBzcGxpdE5hbWU6IHN0cmluZ1tdID0gbmFtZS5zcGxpdCgvXFwuKC4rKS8sIDIpO1xyXG4gICAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0odmFsdWVbc3BsaXROYW1lWzBdXSwgc3BsaXROYW1lWzFdKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZVtuYW1lXTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Pipe } from '@angular/core';
|
|
3
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/platform-browser";
|
|
6
|
-
/**
|
|
7
|
-
* Sanitize HTML
|
|
8
|
-
*/
|
|
9
|
-
export class SafeUrlPipe {
|
|
10
|
-
/**
|
|
11
|
-
* Pipe Constructor
|
|
12
|
-
*
|
|
13
|
-
* @param _sanitizer: DomSanitezer
|
|
14
|
-
*/
|
|
15
|
-
// tslint:disable-next-line
|
|
16
|
-
constructor(_sanitizer) {
|
|
17
|
-
this._sanitizer = _sanitizer;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Transform
|
|
21
|
-
*
|
|
22
|
-
* @param value: string
|
|
23
|
-
*/
|
|
24
|
-
transform(value) {
|
|
25
|
-
return this._sanitizer.bypassSecurityTrustResourceUrl(value);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
SafeUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SafeUrlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
29
|
-
SafeUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: SafeUrlPipe, name: "safeUrl" });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SafeUrlPipe, decorators: [{
|
|
31
|
-
type: Pipe,
|
|
32
|
-
args: [{
|
|
33
|
-
name: 'safeUrl'
|
|
34
|
-
}]
|
|
35
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZVVybC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5zcGFyay1jb21wb25lbnRzL3NyYy9waXBlcy9zYWZlVXJsLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxZQUFZLEVBQWtCLE1BQU0sMkJBQTJCLENBQUM7OztBQUV4RTs7R0FFRztBQUlILE1BQU0sT0FBTyxXQUFXO0lBQ3RCOzs7O09BSUc7SUFDSCwyQkFBMkI7SUFDM0IsWUFBc0IsVUFBd0I7UUFBeEIsZUFBVSxHQUFWLFVBQVUsQ0FBYztJQUM5QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDOzt3R0FqQlUsV0FBVztzR0FBWCxXQUFXOzJGQUFYLFdBQVc7a0JBSHZCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFNBQVM7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbi8qKlxyXG4gKiBTYW5pdGl6ZSBIVE1MXHJcbiAqL1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NhZmVVcmwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWZlVXJsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIC8qKlxyXG4gICAqIFBpcGUgQ29uc3RydWN0b3JcclxuICAgKlxyXG4gICAqIEBwYXJhbSBfc2FuaXRpemVyOiBEb21TYW5pdGV6ZXJcclxuICAgKi9cclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUcmFuc2Zvcm1cclxuICAgKlxyXG4gICAqIEBwYXJhbSB2YWx1ZTogc3RyaW5nXHJcbiAgICovXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBTYWZlUmVzb3VyY2VVcmwge1xyXG4gICAgcmV0dXJuIHRoaXMuX3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|