@fundamental-ngx/core 0.36.0-rc.19 → 0.36.0-rc.21
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/action-bar/package.json +1 -1
- package/action-sheet/package.json +1 -1
- package/alert/package.json +1 -1
- package/avatar/package.json +1 -1
- package/avatar-group/package.json +1 -1
- package/bar/package.json +1 -1
- package/breadcrumb/package.json +1 -1
- package/busy-indicator/package.json +1 -1
- package/button/package.json +1 -1
- package/calendar/package.json +1 -1
- package/card/package.json +1 -1
- package/carousel/package.json +1 -1
- package/checkbox/package.json +1 -1
- package/combobox/package.json +1 -1
- package/content-density/package.json +2 -2
- package/date-picker/package.json +1 -1
- package/datetime/package.json +1 -1
- package/datetime-picker/package.json +1 -1
- package/dialog/package.json +1 -1
- package/dynamic-page/package.json +1 -1
- package/dynamic-side-content/package.json +1 -1
- package/esm2020/feed-list-item/components/item/feed-list-item.component.mjs +23 -13
- package/esm2020/feed-list-item/components/list/feed-list.component.mjs +5 -1
- package/esm2020/feed-list-item/feed-list-item.module.mjs +4 -5
- package/esm2020/utils/directives/truncate/truncate.directive.mjs +27 -96
- package/esm2020/utils/pipes/pipe.module.mjs +33 -4
- package/esm2020/utils/pipes/truncate.pipe.mjs +16 -0
- package/esm2020/utils/public_api.mjs +2 -1
- package/facets/package.json +1 -1
- package/feed-input/package.json +1 -1
- package/feed-list-item/components/item/feed-list-item.component.d.ts +6 -6
- package/feed-list-item/esm2020/components/item/feed-list-item.component.mjs +23 -13
- package/feed-list-item/esm2020/components/list/feed-list.component.mjs +5 -1
- package/feed-list-item/esm2020/feed-list-item.module.mjs +4 -5
- package/feed-list-item/feed-list-item.module.d.ts +1 -1
- package/feed-list-item/fesm2015/fundamental-ngx-core-feed-list-item.mjs +29 -15
- package/feed-list-item/fesm2015/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/feed-list-item/fesm2020/fundamental-ngx-core-feed-list-item.mjs +29 -15
- package/feed-list-item/fesm2020/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/feed-list-item/package.json +1 -1
- package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +29 -15
- package/fesm2015/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-utils.mjs +71 -96
- package/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +29 -15
- package/fesm2020/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-utils.mjs +71 -96
- package/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
- package/file-uploader/package.json +1 -1
- package/fixed-card-layout/package.json +1 -1
- package/flexible-column-layout/package.json +1 -1
- package/form/package.json +1 -1
- package/formatted-text/package.json +1 -1
- package/grid-list/package.json +1 -1
- package/icon/package.json +1 -1
- package/illustrated-message/package.json +1 -1
- package/infinite-scroll/package.json +1 -1
- package/info-label/package.json +1 -1
- package/inline-help/package.json +1 -1
- package/input-group/package.json +1 -1
- package/layout-grid/package.json +1 -1
- package/layout-panel/package.json +1 -1
- package/link/package.json +1 -1
- package/list/package.json +1 -1
- package/menu/package.json +1 -1
- package/message-box/package.json +1 -1
- package/message-strip/package.json +1 -1
- package/message-toast/package.json +1 -1
- package/micro-process-flow/package.json +1 -1
- package/mobile-mode/package.json +1 -1
- package/multi-input/package.json +1 -1
- package/nested-list/package.json +1 -1
- package/notification/package.json +1 -1
- package/object-identifier/package.json +1 -1
- package/object-marker/package.json +1 -1
- package/object-number/package.json +1 -1
- package/object-status/package.json +1 -1
- package/overflow-layout/package.json +4 -4
- package/package.json +2 -2
- package/pagination/package.json +1 -1
- package/panel/package.json +1 -1
- package/popover/package.json +1 -1
- package/product-switch/package.json +1 -1
- package/progress-indicator/package.json +1 -1
- package/quick-view/package.json +1 -1
- package/radio/package.json +1 -1
- package/rating-indicator/package.json +1 -1
- package/resizable-card-layout/package.json +1 -1
- package/scroll-spy/package.json +1 -1
- package/scrollbar/package.json +1 -1
- package/segmented-button/package.json +1 -1
- package/select/package.json +1 -1
- package/shared/package.json +1 -1
- package/shellbar/package.json +1 -1
- package/side-navigation/package.json +1 -1
- package/slider/package.json +1 -1
- package/split-button/package.json +1 -1
- package/splitter/package.json +1 -1
- package/status-indicator/package.json +1 -1
- package/step-input/package.json +1 -1
- package/switch/package.json +1 -1
- package/table/package.json +1 -1
- package/tabs/package.json +1 -1
- package/text/package.json +1 -1
- package/theming/package.json +1 -1
- package/tile/package.json +1 -1
- package/time/package.json +1 -1
- package/time-picker/package.json +1 -1
- package/timeline/package.json +1 -1
- package/title/package.json +1 -1
- package/token/package.json +1 -1
- package/toolbar/package.json +1 -1
- package/tree/package.json +1 -1
- package/upload-collection/package.json +1 -1
- package/utils/directives/truncate/truncate.directive.d.ts +21 -51
- package/utils/esm2020/directives/truncate/truncate.directive.mjs +27 -96
- package/utils/esm2020/pipes/pipe.module.mjs +33 -4
- package/utils/esm2020/pipes/truncate.pipe.mjs +16 -0
- package/utils/esm2020/public_api.mjs +2 -1
- package/utils/fesm2015/fundamental-ngx-core-utils.mjs +71 -96
- package/utils/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
- package/utils/fesm2020/fundamental-ngx-core-utils.mjs +71 -96
- package/utils/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
- package/utils/package.json +1 -1
- package/utils/pipes/pipe.module.d.ts +2 -1
- package/utils/pipes/truncate.pipe.d.ts +7 -0
- package/utils/public_api.d.ts +1 -0
- package/vertical-navigation/package.json +1 -1
- package/wizard/package.json +1 -1
|
@@ -1,32 +1,23 @@
|
|
|
1
|
-
import { Directive, ElementRef,
|
|
2
|
-
import { fromEvent } from 'rxjs';
|
|
1
|
+
import { Directive, ElementRef, Input } from '@angular/core';
|
|
3
2
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
4
|
-
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
|
-
export var DefaultTruncateCharCount;
|
|
7
|
-
(function (DefaultTruncateCharCount) {
|
|
8
|
-
DefaultTruncateCharCount[DefaultTruncateCharCount["MAX"] = 500] = "MAX";
|
|
9
|
-
DefaultTruncateCharCount[DefaultTruncateCharCount["MIN"] = 300] = "MIN";
|
|
10
|
-
})(DefaultTruncateCharCount || (DefaultTruncateCharCount = {}));
|
|
11
4
|
export class TruncateDirective {
|
|
12
5
|
/** @hidden */
|
|
13
|
-
constructor(_elementRef
|
|
6
|
+
constructor(_elementRef) {
|
|
14
7
|
this._elementRef = _elementRef;
|
|
15
|
-
this._renderer = _renderer;
|
|
16
8
|
/**
|
|
17
9
|
* Truncating state
|
|
18
10
|
*/
|
|
19
11
|
this.fdTruncateState = false;
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this.charCountUpdate = new EventEmitter();
|
|
12
|
+
/** @hidden */
|
|
13
|
+
this._customWidthCount = 200;
|
|
14
|
+
this.takeDefaultStyleOnce = true;
|
|
24
15
|
}
|
|
25
16
|
/**
|
|
26
|
-
*
|
|
17
|
+
* Width in pixel for truncation of an element , by default
|
|
27
18
|
*/
|
|
28
|
-
set
|
|
29
|
-
this.
|
|
19
|
+
set fdTruncateWidth(value) {
|
|
20
|
+
this._customWidthCount = coerceNumberProperty(value);
|
|
30
21
|
}
|
|
31
22
|
/**
|
|
32
23
|
* Root native element
|
|
@@ -34,106 +25,46 @@ export class TruncateDirective {
|
|
|
34
25
|
get rootElement() {
|
|
35
26
|
return this._elementRef.nativeElement;
|
|
36
27
|
}
|
|
37
|
-
/**
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
next: () => this._checkWidth()
|
|
45
|
-
});
|
|
46
|
-
this.refreshTruncate();
|
|
28
|
+
/**
|
|
29
|
+
* Method saves default style of target element before first truncate.
|
|
30
|
+
*/
|
|
31
|
+
setDefaultStyle() {
|
|
32
|
+
if (this.takeDefaultStyleOnce) {
|
|
33
|
+
this._defaultStyle = this._truncateTarget.style.cssText;
|
|
34
|
+
this.takeDefaultStyleOnce = false;
|
|
47
35
|
}
|
|
48
36
|
}
|
|
49
37
|
/** @hidden */
|
|
50
|
-
|
|
51
|
-
if (this.
|
|
52
|
-
this.
|
|
38
|
+
ngAfterViewInit() {
|
|
39
|
+
if (this.rootElement) {
|
|
40
|
+
this._truncate();
|
|
53
41
|
}
|
|
54
42
|
}
|
|
55
43
|
/** @hidden */
|
|
56
44
|
ngOnChanges() {
|
|
57
|
-
this.
|
|
58
|
-
this.reset();
|
|
59
|
-
this.refreshTruncate();
|
|
60
|
-
}
|
|
61
|
-
reset() {
|
|
62
|
-
if (this._truncateTarget && this._originalText) {
|
|
63
|
-
this._truncateTarget.textContent = this._originalText + ' ';
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
refreshTarget(event) {
|
|
67
|
-
this._truncateTarget = event.rootElement;
|
|
68
|
-
this._originalText = event.fdTruncateTargetText;
|
|
69
|
-
this.reset();
|
|
70
|
-
this.refreshTruncate();
|
|
71
|
-
}
|
|
72
|
-
refreshTruncate() {
|
|
73
|
-
if (this.fdTruncateState && this._hasMore) {
|
|
74
|
-
this._toggleTruncate();
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/** @hidden
|
|
78
|
-
* Initialising truncate properties
|
|
79
|
-
*/
|
|
80
|
-
_initTruncate() {
|
|
81
|
-
const style = window.getComputedStyle(this.rootElement, null);
|
|
82
|
-
this._widthCount = parseInt(style.getPropertyValue('font-size'), 10) * 25;
|
|
83
|
-
this._checkWidth();
|
|
84
|
-
if (this._originalText && this._originalText.length > this._maxChars) {
|
|
85
|
-
this._hasMore = true;
|
|
86
|
-
this.charCountUpdate.emit(this._hasMore);
|
|
87
|
-
this._truncate();
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
/** @hidden
|
|
91
|
-
* Toggle present text
|
|
92
|
-
*/
|
|
93
|
-
_toggleTruncate() {
|
|
94
|
-
this._truncateTarget.textContent = this.fdTruncateState ? this._truncatedText : this._originalText;
|
|
45
|
+
this._truncate();
|
|
95
46
|
}
|
|
96
|
-
/** @hidden
|
|
97
|
-
* Truncate text in the target box, if the target exceeds the number of characters
|
|
98
|
-
*/
|
|
99
47
|
_truncate() {
|
|
48
|
+
this._truncateTarget = this.rootElement;
|
|
100
49
|
if (!this._truncateTarget) {
|
|
101
50
|
return;
|
|
102
51
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
this._truncatedText = this._truncateTarget.textContent = ellipsisTextArray.join('') + ' … ';
|
|
108
|
-
}
|
|
109
|
-
/** @hidden */
|
|
110
|
-
_checkWidth() {
|
|
111
|
-
const width = this.rootElement.offsetWidth;
|
|
112
|
-
this._maxChars = this._customCharCount
|
|
113
|
-
? this._customCharCount
|
|
114
|
-
: width >= this._widthCount
|
|
115
|
-
? DefaultTruncateCharCount.MAX
|
|
116
|
-
: DefaultTruncateCharCount.MIN;
|
|
117
|
-
if (this.fdTruncateState && this._hasMore) {
|
|
118
|
-
this._truncate();
|
|
119
|
-
}
|
|
52
|
+
this.setDefaultStyle();
|
|
53
|
+
this._truncationStyle = `${this._defaultStyle} max-width: ${this._customWidthCount}px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;`;
|
|
54
|
+
this._truncateTarget.style.cssText = this.fdTruncateState ? this._truncationStyle : this._defaultStyle;
|
|
120
55
|
}
|
|
121
56
|
}
|
|
122
|
-
TruncateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TruncateDirective, deps: [{ token: i0.ElementRef }
|
|
123
|
-
TruncateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: TruncateDirective, selector: "[fd-truncate]", inputs: {
|
|
57
|
+
TruncateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TruncateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
58
|
+
TruncateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: TruncateDirective, selector: "[fd-truncate]", inputs: { fdTruncateWidth: "fdTruncateWidth", fdTruncateState: "fdTruncateState" }, usesOnChanges: true, ngImport: i0 });
|
|
124
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TruncateDirective, decorators: [{
|
|
125
60
|
type: Directive,
|
|
126
61
|
args: [{
|
|
127
62
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
128
63
|
selector: '[fd-truncate]'
|
|
129
64
|
}]
|
|
130
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }
|
|
131
|
-
type: Input
|
|
132
|
-
}], fdTruncateChars: [{
|
|
65
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { fdTruncateWidth: [{
|
|
133
66
|
type: Input
|
|
134
67
|
}], fdTruncateState: [{
|
|
135
68
|
type: Input
|
|
136
|
-
}], charCountUpdate: [{
|
|
137
|
-
type: Output
|
|
138
69
|
}] } });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdXRpbHMvZGlyZWN0aXZlcy90cnVuY2F0ZS90cnVuY2F0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHcEUsTUFBTSxDQUFOLElBQVksd0JBR1g7QUFIRCxXQUFZLHdCQUF3QjtJQUNoQyx1RUFBUyxDQUFBO0lBQ1QsdUVBQVMsQ0FBQTtBQUNiLENBQUMsRUFIVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBR25DO0FBTUQsTUFBTSxPQUFPLGlCQUFpQjtJQW1EMUIsY0FBYztJQUNkLFlBQTZCLFdBQXVCLEVBQW1CLFNBQW9CO1FBQTlELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQW1CLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFyQzNGOztXQUVHO1FBRUgsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEI7O1dBRUc7UUFFSCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUEyQmdELENBQUM7SUE3Qy9GOztPQUVHO0lBQ0gsSUFDSSxlQUFlLENBQUMsS0FBdUI7UUFDdkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUF5Q0Q7O09BRUc7SUFDSCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQzFDLENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQztpQkFDM0MsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUMvQyxTQUFTLENBQUM7Z0JBQ1AsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7YUFDakMsQ0FBQyxDQUFDO1lBRVAsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLFdBQVc7UUFDUCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQzVDLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1NBQy9EO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUF3QjtRQUNsQyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsb0JBQW9CLENBQUM7UUFDaEQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssYUFBYTtRQUNqQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRTFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVuQixJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssZUFBZTtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ3ZHLENBQUM7SUFFRDs7T0FFRztJQUNLLFNBQVM7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN2QixPQUFPO1NBQ1Y7UUFFRCxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8saUJBQWlCLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDL0MsaUJBQWlCLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDM0I7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDaEcsQ0FBQztJQUVELGNBQWM7SUFDTixXQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUM7UUFFM0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCO1lBQ2xDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCO1lBQ3ZCLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVc7Z0JBQzNCLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxHQUFHO2dCQUM5QixDQUFDLENBQUMsd0JBQXdCLENBQUMsR0FBRyxDQUFDO1FBRW5DLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNwQjtJQUNMLENBQUM7OzhHQWpLUSxpQkFBaUI7a0dBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUo3QixTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGVBQWU7aUJBQzVCO3lIQU1HLG9CQUFvQjtzQkFEbkIsS0FBSztnQkFPRixlQUFlO3NCQURsQixLQUFLO2dCQVNOLGVBQWU7c0JBRGQsS0FBSztnQkFPTixlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcblxuZXhwb3J0IGVudW0gRGVmYXVsdFRydW5jYXRlQ2hhckNvdW50IHtcbiAgICBNQVggPSA1MDAsXG4gICAgTUlOID0gMzAwXG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZmQtdHJ1bmNhdGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBUcnVuY2F0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBUYXJnZXQgdGV4dCBmb3IgY2xhbXBpbmdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGZkVHJ1bmNhdGVUYXJnZXRUZXh0OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBDb3VudCBjaGFycyBmb3IgdHJ1bmNhdGluZ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZkVHJ1bmNhdGVDaGFycyh2YWx1ZTogTnVsbGFibGU8bnVtYmVyPikge1xuICAgICAgICB0aGlzLl9jdXN0b21DaGFyQ291bnQgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJ1bmNhdGluZyBzdGF0ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmRUcnVuY2F0ZVN0YXRlID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCByZXR1cm4gY291bnQgb2YgY2hhcmFjdGVycyBmcm9tIHRoZSB0YXJnZXRcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBjaGFyQ291bnRVcGRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RydW5jYXRlVGFyZ2V0OiBIVE1MRWxlbWVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfb3JpZ2luYWxUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RydW5jYXRlZFRleHQ6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY3VzdG9tQ2hhckNvdW50OiBudW1iZXI7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3dpZHRoQ291bnQ6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbWF4Q2hhcnM6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFzTW9yZTogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSB3aW5kb3dSZXNpemUkOiBTdWJzY3JpcHRpb247XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVhZG9ubHkgX3JlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XG5cbiAgICAvKipcbiAgICAgKiBSb290IG5hdGl2ZSBlbGVtZW50XG4gICAgICovXG4gICAgZ2V0IHJvb3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucm9vdEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2luaXRUcnVuY2F0ZSgpO1xuXG4gICAgICAgICAgICB0aGlzLndpbmRvd1Jlc2l6ZSQgPSBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgICAgICAgICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBkZWJvdW5jZVRpbWUoMjAwKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICAgICAgbmV4dDogKCkgPT4gdGhpcy5fY2hlY2tXaWR0aCgpXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFRydW5jYXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy53aW5kb3dSZXNpemUkKSB7XG4gICAgICAgICAgICB0aGlzLndpbmRvd1Jlc2l6ZSQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaFRhcmdldCh0aGlzKTtcbiAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICB0aGlzLnJlZnJlc2hUcnVuY2F0ZSgpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fdHJ1bmNhdGVUYXJnZXQgJiYgdGhpcy5fb3JpZ2luYWxUZXh0KSB7XG4gICAgICAgICAgICB0aGlzLl90cnVuY2F0ZVRhcmdldC50ZXh0Q29udGVudCA9IHRoaXMuX29yaWdpbmFsVGV4dCArICcgJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZnJlc2hUYXJnZXQoZXZlbnQ6IFRydW5jYXRlRGlyZWN0aXZlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RydW5jYXRlVGFyZ2V0ID0gZXZlbnQucm9vdEVsZW1lbnQ7XG4gICAgICAgIHRoaXMuX29yaWdpbmFsVGV4dCA9IGV2ZW50LmZkVHJ1bmNhdGVUYXJnZXRUZXh0O1xuICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgIHRoaXMucmVmcmVzaFRydW5jYXRlKCk7XG4gICAgfVxuXG4gICAgcmVmcmVzaFRydW5jYXRlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5mZFRydW5jYXRlU3RhdGUgJiYgdGhpcy5faGFzTW9yZSkge1xuICAgICAgICAgICAgdGhpcy5fdG9nZ2xlVHJ1bmNhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuXG4gICAgICogIEluaXRpYWxpc2luZyB0cnVuY2F0ZSBwcm9wZXJ0aWVzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfaW5pdFRydW5jYXRlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMucm9vdEVsZW1lbnQsIG51bGwpO1xuICAgICAgICB0aGlzLl93aWR0aENvdW50ID0gcGFyc2VJbnQoc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnZm9udC1zaXplJyksIDEwKSAqIDI1O1xuXG4gICAgICAgIHRoaXMuX2NoZWNrV2lkdGgoKTtcblxuICAgICAgICBpZiAodGhpcy5fb3JpZ2luYWxUZXh0ICYmIHRoaXMuX29yaWdpbmFsVGV4dC5sZW5ndGggPiB0aGlzLl9tYXhDaGFycykge1xuICAgICAgICAgICAgdGhpcy5faGFzTW9yZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmNoYXJDb3VudFVwZGF0ZS5lbWl0KHRoaXMuX2hhc01vcmUpO1xuICAgICAgICAgICAgdGhpcy5fdHJ1bmNhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuXG4gICAgICogIFRvZ2dsZSBwcmVzZW50IHRleHRcbiAgICAgKi9cbiAgICBwcml2YXRlIF90b2dnbGVUcnVuY2F0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdHJ1bmNhdGVUYXJnZXQudGV4dENvbnRlbnQgPSB0aGlzLmZkVHJ1bmNhdGVTdGF0ZSA/IHRoaXMuX3RydW5jYXRlZFRleHQgOiB0aGlzLl9vcmlnaW5hbFRleHQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW5cbiAgICAgKiBUcnVuY2F0ZSB0ZXh0IGluIHRoZSB0YXJnZXQgYm94LCBpZiB0aGUgdGFyZ2V0IGV4Y2VlZHMgdGhlIG51bWJlciBvZiBjaGFyYWN0ZXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfdHJ1bmNhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fdHJ1bmNhdGVUYXJnZXQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVsbGlwc2lzVGV4dEFycmF5ID0gdGhpcy5fb3JpZ2luYWxUZXh0LnNwbGl0KCcnKTtcbiAgICAgICAgd2hpbGUgKGVsbGlwc2lzVGV4dEFycmF5Lmxlbmd0aCA+PSB0aGlzLl9tYXhDaGFycykge1xuICAgICAgICAgICAgZWxsaXBzaXNUZXh0QXJyYXkucG9wKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl90cnVuY2F0ZWRUZXh0ID0gdGhpcy5fdHJ1bmNhdGVUYXJnZXQudGV4dENvbnRlbnQgPSBlbGxpcHNpc1RleHRBcnJheS5qb2luKCcnKSArICcg4oCmICc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jaGVja1dpZHRoKCk6IHZvaWQge1xuICAgICAgICBjb25zdCB3aWR0aCA9IHRoaXMucm9vdEVsZW1lbnQub2Zmc2V0V2lkdGg7XG5cbiAgICAgICAgdGhpcy5fbWF4Q2hhcnMgPSB0aGlzLl9jdXN0b21DaGFyQ291bnRcbiAgICAgICAgICAgID8gdGhpcy5fY3VzdG9tQ2hhckNvdW50XG4gICAgICAgICAgICA6IHdpZHRoID49IHRoaXMuX3dpZHRoQ291bnRcbiAgICAgICAgICAgID8gRGVmYXVsdFRydW5jYXRlQ2hhckNvdW50Lk1BWFxuICAgICAgICAgICAgOiBEZWZhdWx0VHJ1bmNhdGVDaGFyQ291bnQuTUlOO1xuXG4gICAgICAgIGlmICh0aGlzLmZkVHJ1bmNhdGVTdGF0ZSAmJiB0aGlzLl9oYXNNb3JlKSB7XG4gICAgICAgICAgICB0aGlzLl90cnVuY2F0ZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdXRpbHMvZGlyZWN0aXZlcy90cnVuY2F0ZS90cnVuY2F0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFPN0QsTUFBTSxPQUFPLGlCQUFpQjtJQWlDMUIsY0FBYztJQUNkLFlBQTZCLFdBQXVCO1FBQXZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBekJwRDs7V0FFRztRQUVILG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLGNBQWM7UUFDTixzQkFBaUIsR0FBRyxHQUFHLENBQUM7UUFVeEIseUJBQW9CLEdBQUcsSUFBSSxDQUFDO0lBUW1CLENBQUM7SUFqQ3hEOztPQUVHO0lBQ0gsSUFDSSxlQUFlLENBQUMsS0FBdUI7UUFDdkMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUE2QkQ7O09BRUc7SUFDSCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQzFDLENBQUM7SUFFRDs7T0FFRztJQUNILGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUMzQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUN4RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO1NBQ3JDO0lBQ0wsQ0FBQztJQUNELGNBQWM7SUFDZCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNwQjtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sU0FBUztRQUNiLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUV4QyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN2QixPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsZUFBZSxJQUFJLENBQUMsaUJBQWlCLHFFQUFxRSxDQUFDO1FBQ3hKLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDM0csQ0FBQzs7OEdBekVRLGlCQUFpQjtrR0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsZUFBZTtpQkFDNUI7aUdBTU8sZUFBZTtzQkFEbEIsS0FBSztnQkFTTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZmQtdHJ1bmNhdGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBUcnVuY2F0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgLyoqXG4gICAgICogV2lkdGggaW4gcGl4ZWwgZm9yIHRydW5jYXRpb24gb2YgYW4gZWxlbWVudCAsIGJ5IGRlZmF1bHRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBmZFRydW5jYXRlV2lkdGgodmFsdWU6IE51bGxhYmxlPG51bWJlcj4pIHtcbiAgICAgICAgdGhpcy5fY3VzdG9tV2lkdGhDb3VudCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcnVuY2F0aW5nIHN0YXRlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBmZFRydW5jYXRlU3RhdGUgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY3VzdG9tV2lkdGhDb3VudCA9IDIwMDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJ1bmNhdGVUYXJnZXQ6IEhUTUxFbGVtZW50O1xuXG4gICAgLyoqIEBoaWRkZW5cbiAgICAgKiBzYXZlcyBkZWZhdWx0IHN0eWxlIG9mIGVsZW1lbnQgYmVmb3JlIHRydW5jYXRpbmdcbiAgICAgKi9cbiAgICBwcml2YXRlIF9kZWZhdWx0U3R5bGU6IHN0cmluZztcblxuICAgIHByaXZhdGUgdGFrZURlZmF1bHRTdHlsZU9uY2UgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW5cbiAgICAgKiB0cnVuY2F0aW9uIHN0eWxlIGZvciB0cnVuY2F0aW5nIGVsZW1lbnRcbiAgICAgKi9cbiAgICBwcml2YXRlIF90cnVuY2F0aW9uU3R5bGU6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAgIC8qKlxuICAgICAqIFJvb3QgbmF0aXZlIGVsZW1lbnRcbiAgICAgKi9cbiAgICBnZXQgcm9vdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCBzYXZlcyBkZWZhdWx0IHN0eWxlIG9mIHRhcmdldCBlbGVtZW50IGJlZm9yZSBmaXJzdCB0cnVuY2F0ZS5cbiAgICAgKi9cbiAgICBzZXREZWZhdWx0U3R5bGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRha2VEZWZhdWx0U3R5bGVPbmNlKSB7XG4gICAgICAgICAgICB0aGlzLl9kZWZhdWx0U3R5bGUgPSB0aGlzLl90cnVuY2F0ZVRhcmdldC5zdHlsZS5jc3NUZXh0O1xuICAgICAgICAgICAgdGhpcy50YWtlRGVmYXVsdFN0eWxlT25jZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yb290RWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5fdHJ1bmNhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RydW5jYXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdHJ1bmNhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RydW5jYXRlVGFyZ2V0ID0gdGhpcy5yb290RWxlbWVudDtcblxuICAgICAgICBpZiAoIXRoaXMuX3RydW5jYXRlVGFyZ2V0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXREZWZhdWx0U3R5bGUoKTtcbiAgICAgICAgdGhpcy5fdHJ1bmNhdGlvblN0eWxlID0gYCR7dGhpcy5fZGVmYXVsdFN0eWxlfSBtYXgtd2lkdGg6ICR7dGhpcy5fY3VzdG9tV2lkdGhDb3VudH1weDsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IHdoaXRlLXNwYWNlOiBub3dyYXA7YDtcbiAgICAgICAgdGhpcy5fdHJ1bmNhdGVUYXJnZXQuc3R5bGUuY3NzVGV4dCA9IHRoaXMuZmRUcnVuY2F0ZVN0YXRlID8gdGhpcy5fdHJ1bmNhdGlvblN0eWxlIDogdGhpcy5fZGVmYXVsdFN0eWxlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -5,17 +5,46 @@ import { TwoDigitsPipe } from './two-digits.pipe';
|
|
|
5
5
|
import { SafePipe } from './safe.pipe';
|
|
6
6
|
import { ValueByPathPipe } from './value-by-path.pipe';
|
|
7
7
|
import { IsCompactDensityPipe } from './is-compact.pipe';
|
|
8
|
+
import { TruncatePipe } from './truncate.pipe';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
export class PipeModule {
|
|
10
11
|
}
|
|
11
12
|
PipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
-
PipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PipeModule, declarations: [DisplayFnPipe,
|
|
13
|
+
PipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PipeModule, declarations: [DisplayFnPipe,
|
|
14
|
+
SearchHighlightPipe,
|
|
15
|
+
TwoDigitsPipe,
|
|
16
|
+
SafePipe,
|
|
17
|
+
ValueByPathPipe,
|
|
18
|
+
IsCompactDensityPipe,
|
|
19
|
+
TruncatePipe], exports: [DisplayFnPipe,
|
|
20
|
+
SearchHighlightPipe,
|
|
21
|
+
TwoDigitsPipe,
|
|
22
|
+
SafePipe,
|
|
23
|
+
ValueByPathPipe,
|
|
24
|
+
IsCompactDensityPipe,
|
|
25
|
+
TruncatePipe] });
|
|
13
26
|
PipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PipeModule });
|
|
14
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PipeModule, decorators: [{
|
|
15
28
|
type: NgModule,
|
|
16
29
|
args: [{
|
|
17
|
-
declarations: [
|
|
18
|
-
|
|
30
|
+
declarations: [
|
|
31
|
+
DisplayFnPipe,
|
|
32
|
+
SearchHighlightPipe,
|
|
33
|
+
TwoDigitsPipe,
|
|
34
|
+
SafePipe,
|
|
35
|
+
ValueByPathPipe,
|
|
36
|
+
IsCompactDensityPipe,
|
|
37
|
+
TruncatePipe
|
|
38
|
+
],
|
|
39
|
+
exports: [
|
|
40
|
+
DisplayFnPipe,
|
|
41
|
+
SearchHighlightPipe,
|
|
42
|
+
TwoDigitsPipe,
|
|
43
|
+
SafePipe,
|
|
44
|
+
ValueByPathPipe,
|
|
45
|
+
IsCompactDensityPipe,
|
|
46
|
+
TruncatePipe
|
|
47
|
+
]
|
|
19
48
|
}]
|
|
20
49
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi91dGlscy9waXBlcy9waXBlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQXNCL0MsTUFBTSxPQUFPLFVBQVU7O3VHQUFWLFVBQVU7d0dBQVYsVUFBVSxpQkFsQmYsYUFBYTtRQUNiLG1CQUFtQjtRQUNuQixhQUFhO1FBQ2IsUUFBUTtRQUNSLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsWUFBWSxhQUdaLGFBQWE7UUFDYixtQkFBbUI7UUFDbkIsYUFBYTtRQUNiLFFBQVE7UUFDUixlQUFlO1FBQ2Ysb0JBQW9CO1FBQ3BCLFlBQVk7d0dBR1AsVUFBVTsyRkFBVixVQUFVO2tCQXBCdEIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsYUFBYTt3QkFDYixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsUUFBUTt3QkFDUixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsYUFBYTt3QkFDYixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsUUFBUTt3QkFDUixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsWUFBWTtxQkFDZjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERpc3BsYXlGblBpcGUgfSBmcm9tICcuL2Rpc3BsYXlGbi5waXBlJztcbmltcG9ydCB7IFNlYXJjaEhpZ2hsaWdodFBpcGUgfSBmcm9tICcuL3NlYXJjaC1oaWdobGlnaHQucGlwZSc7XG5pbXBvcnQgeyBUd29EaWdpdHNQaXBlIH0gZnJvbSAnLi90d28tZGlnaXRzLnBpcGUnO1xuaW1wb3J0IHsgU2FmZVBpcGUgfSBmcm9tICcuL3NhZmUucGlwZSc7XG5pbXBvcnQgeyBWYWx1ZUJ5UGF0aFBpcGUgfSBmcm9tICcuL3ZhbHVlLWJ5LXBhdGgucGlwZSc7XG5pbXBvcnQgeyBJc0NvbXBhY3REZW5zaXR5UGlwZSB9IGZyb20gJy4vaXMtY29tcGFjdC5waXBlJztcbmltcG9ydCB7IFRydW5jYXRlUGlwZSB9IGZyb20gJy4vdHJ1bmNhdGUucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIERpc3BsYXlGblBpcGUsXG4gICAgICAgIFNlYXJjaEhpZ2hsaWdodFBpcGUsXG4gICAgICAgIFR3b0RpZ2l0c1BpcGUsXG4gICAgICAgIFNhZmVQaXBlLFxuICAgICAgICBWYWx1ZUJ5UGF0aFBpcGUsXG4gICAgICAgIElzQ29tcGFjdERlbnNpdHlQaXBlLFxuICAgICAgICBUcnVuY2F0ZVBpcGVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRGlzcGxheUZuUGlwZSxcbiAgICAgICAgU2VhcmNoSGlnaGxpZ2h0UGlwZSxcbiAgICAgICAgVHdvRGlnaXRzUGlwZSxcbiAgICAgICAgU2FmZVBpcGUsXG4gICAgICAgIFZhbHVlQnlQYXRoUGlwZSxcbiAgICAgICAgSXNDb21wYWN0RGVuc2l0eVBpcGUsXG4gICAgICAgIFRydW5jYXRlUGlwZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUGlwZU1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TruncatePipe {
|
|
4
|
+
transform(value, limit = 500) {
|
|
5
|
+
return value && value.length > limit ? value.substring(0, limit) + '...' : value;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
TruncatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
9
|
+
TruncatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: TruncatePipe, name: "truncate" });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TruncatePipe, decorators: [{
|
|
11
|
+
type: Pipe,
|
|
12
|
+
args: [{
|
|
13
|
+
name: 'truncate'
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3V0aWxzL3BpcGVzL3RydW5jYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxZQUFZO0lBQ3JCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsUUFBZ0IsR0FBRztRQUN4QyxPQUFPLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDckYsQ0FBQzs7eUdBSFEsWUFBWTt1R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBSHhCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLFVBQVU7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3RydW5jYXRlJ1xufSlcbmV4cG9ydCBjbGFzcyBUcnVuY2F0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgbGltaXQ6IG51bWJlciA9IDUwMCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZSAmJiB2YWx1ZS5sZW5ndGggPiBsaW1pdCA/IHZhbHVlLnN1YnN0cmluZygwLCBsaW1pdCkgKyAnLi4uJyA6IHZhbHVlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -28,6 +28,7 @@ export * from './pipes/search-highlight.pipe';
|
|
|
28
28
|
export * from './pipes/safe.pipe';
|
|
29
29
|
export * from './pipes/is-compact.pipe';
|
|
30
30
|
export * from './pipes/value-by-path.pipe';
|
|
31
|
+
export * from './pipes/truncate.pipe';
|
|
31
32
|
export * from './drag-and-drop/drag-and-drop.module';
|
|
32
33
|
export * from './drag-and-drop/dnd-list/dnd-list.directive';
|
|
33
34
|
export * from './drag-and-drop/dnd-item/dnd-item.directive';
|
|
@@ -64,4 +65,4 @@ export * from './list-item/list-item-utils';
|
|
|
64
65
|
export * from './mixins/apply-mixin';
|
|
65
66
|
export * from './services/focus-trap.service';
|
|
66
67
|
export * from './tokens/module-deprecations.token';
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3V0aWxzL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0RUFBNEUsQ0FBQztBQUMzRixjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLGlFQUFpRSxDQUFDO0FBRWhGLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsK0RBQStELENBQUM7QUFFOUUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsZ0NBQWdDLENBQUM7QUFFL0MsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsaURBQWlELENBQUM7QUFFaEUsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxjQUFjLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2lnbm9yZS1jbGljay1vbi1zZWxlY3Rpb24vaWdub3JlLWNsaWNrLW9uLXNlbGVjdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2lnbm9yZS1jbGljay1vbi1zZWxlY3Rpb24vaWdub3JlLWNsaWNrLW9uLXNlbGVjdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL3RlbXBsYXRlL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvdGVtcGxhdGUvdGVtcGxhdGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9vbmx5LWRpZ2l0cy9vbmx5LWRpZ2l0cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL29ubHktZGlnaXRzL29ubHktZGlnaXRzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvcmVzaXplL3Jlc2l6ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL3Jlc2l6ZS9yZXNpemUtaGFuZGxlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvcmVzaXplL3Jlc2l6ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2luaXRpYWwtZm9jdXMvaW5pdGlhbC1mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2xpbmUtY2xhbXAvbGluZS1jbGFtcC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2xpbmUtY2xhbXAvbGluZS1jbGFtcC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2luaXRpYWwtZm9jdXMvaW5pdGlhbC1mb2N1cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2F1dG8tY29tcGxldGUvYXV0by1jb21wbGV0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2F1dG8tY29tcGxldGUvYXV0by1jb21wbGV0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL292ZXJmbG93LWxpc3Qvb3ZlcmZsb3ctbGlzdC1pdGVtLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvb3ZlcmZsb3ctbGlzdC9vdmVyZmxvdy1saXN0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvb3ZlcmZsb3ctbGlzdC9vdmVyZmxvdy1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvdHJ1bmNhdGUvdHJ1bmNhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy90cnVuY2F0ZS90cnVuY2F0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2ZvY3VzLWtleS1tYW5hZ2VyL2ZvY3VzLWtleS1tYW5hZ2VyLWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9mb2N1cy1rZXktbWFuYWdlci9mb2N1cy1rZXktbWFuYWdlci1saXN0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvZm9jdXMta2V5LW1hbmFnZXIvZm9jdXMta2V5LW1hbmFnZXItaGVscGVycy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3BpcGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvZGlzcGxheUZuLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy90d28tZGlnaXRzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9zZWFyY2gtaGlnaGxpZ2h0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9zYWZlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9pcy1jb21wYWN0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy92YWx1ZS1ieS1wYXRoLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy90cnVuY2F0ZS5waXBlJztcblxuZXhwb3J0ICogZnJvbSAnLi9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3AubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZHJhZy1hbmQtZHJvcC9kbmQtbGlzdC9kbmQtbGlzdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kcmFnLWFuZC1kcm9wL2RuZC1pdGVtL2RuZC1pdGVtLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RyYWctYW5kLWRyb3AvZG5kLWtleWJvYXJkLWdyb3VwL2RuZC1rZXlib2FyZC1ncm91cC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kcmFnLWFuZC1kcm9wL2RuZC1rZXlib2FyZC1pdGVtL2RuZC1rZXlib2FyZC1pdGVtLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9jc3MtY2xhc3MtYnVpbGRlci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2Nzcy1zdHlsZS1idWlsZGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvaGFzLWVsZW1lbnQtcmVmLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtc3VwcG9ydC1pdGVtLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvbW9kdWxlLWRlcHJlY2F0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvcmVxdWlyZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2RlY29yYXRvcnMvYXBwbHktY3NzLWNsYXNzLmRlY29yYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2RlY29yYXRvcnMvYXBwbHktY3NzLXN0eWxlLmRlY29yYXRvcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtaW5qZWN0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtY29udGFpbmVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL3JhbmdlLXNlbGVjdG9yJztcblxuZXhwb3J0ICogZnJvbSAnLi91dGlscy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2RhdGF0eXBlcy9oYXNoLmRhdGF0eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YXR5cGVzL3NpemUuZGF0YXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhdHlwZXMvY29sb3ItYWNjZW50LmRhdGF0eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvY29udGVudC1kZW5zaXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9ydGwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3RoZW1lcy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQtc3VwcG9ydC9rZXlib2FyZC1zdXBwb3J0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9yZXNpemUtb2JzZXJ2ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2Rlc3Ryb3llZC5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mdW5jdGlvbnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnN0cyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWJzdHJhY3QtZmQtbmd4LWNsYXNzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saXN0LWl0ZW0vbGlzdC1pdGVtLXV0aWxzJztcblxuZXhwb3J0ICogZnJvbSAnLi9taXhpbnMvYXBwbHktbWl4aW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2ZvY3VzLXRyYXAuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zL21vZHVsZS1kZXByZWNhdGlvbnMudG9rZW4nO1xuIl19
|
package/facets/package.json
CHANGED
package/feed-input/package.json
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { SimpleChanges, ElementRef, OnInit, OnChanges
|
|
1
|
+
import { SimpleChanges, ElementRef, OnInit, OnChanges } from '@angular/core';
|
|
2
2
|
import { CssClassBuilder } from '@fundamental-ngx/core/utils';
|
|
3
3
|
import { Nullable } from '@fundamental-ngx/core/shared';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class FeedListItemComponent implements OnInit, OnChanges, CssClassBuilder {
|
|
6
6
|
private readonly _elementRef;
|
|
7
|
-
private readonly _changeDetectorRef;
|
|
8
7
|
/** User's custom classes */
|
|
9
8
|
class: string;
|
|
10
9
|
/**
|
|
@@ -22,7 +21,7 @@ export declare class FeedListItemComponent implements OnInit, OnChanges, CssClas
|
|
|
22
21
|
/**
|
|
23
22
|
* Max preview characters of Feed text. If you have more than max characters text, you can toggle preview/full text with more/less button.
|
|
24
23
|
*/
|
|
25
|
-
maxChars
|
|
24
|
+
maxChars: number;
|
|
26
25
|
/**
|
|
27
26
|
* Sets the `aria-label` attribute to the element.
|
|
28
27
|
*/
|
|
@@ -50,6 +49,7 @@ export declare class FeedListItemComponent implements OnInit, OnChanges, CssClas
|
|
|
50
49
|
* Apply mobile view
|
|
51
50
|
*/
|
|
52
51
|
mobile: boolean;
|
|
52
|
+
maxCharsAtDefault: boolean;
|
|
53
53
|
/**
|
|
54
54
|
* Apply body class by default
|
|
55
55
|
*/
|
|
@@ -63,7 +63,9 @@ export declare class FeedListItemComponent implements OnInit, OnChanges, CssClas
|
|
|
63
63
|
*/
|
|
64
64
|
hasMore: boolean;
|
|
65
65
|
/** @hidden */
|
|
66
|
-
constructor(_elementRef: ElementRef
|
|
66
|
+
constructor(_elementRef: ElementRef);
|
|
67
|
+
setHasMore(): void;
|
|
68
|
+
setDefaultMaxChars(): void;
|
|
67
69
|
/** @hidden */
|
|
68
70
|
ngOnInit(): void;
|
|
69
71
|
/** @hidden */
|
|
@@ -77,8 +79,6 @@ export declare class FeedListItemComponent implements OnInit, OnChanges, CssClas
|
|
|
77
79
|
elementRef(): ElementRef<any>;
|
|
78
80
|
/** @hidden */
|
|
79
81
|
toggleTextView(): void;
|
|
80
|
-
/** @hidden */
|
|
81
|
-
checkCharCount(isMore: boolean): void;
|
|
82
82
|
static ɵfac: i0.ɵɵFactoryDeclaration<FeedListItemComponent, never>;
|
|
83
83
|
static ɵcmp: i0.ɵɵComponentDeclaration<FeedListItemComponent, "fd-feed-list-item", never, { "class": "class"; "authorTitle": "authorTitle"; "authorLink": "authorLink"; "text": "text"; "maxChars": "maxChars"; "ariaLabel": "ariaLabel"; "ariaLabelledby": "ariaLabelledby"; "moreLabel": "moreLabel"; "lessLabel": "lessLabel"; "isRichText": "isRichText"; "mobile": "mobile"; }, {}, never, ["fd-feed-list-avatar", "fd-feed-list-action", "fd-feed-list-footer"], false>;
|
|
84
84
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { HostBinding } from '@angular/core';
|
|
3
|
-
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ElementRef
|
|
3
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ElementRef } from '@angular/core';
|
|
4
4
|
import { applyCssClass } from '@fundamental-ngx/core/utils';
|
|
5
5
|
import { CSS_CLASS_NAME } from '../../constants';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -11,9 +11,8 @@ import * as i4 from "@fundamental-ngx/core/utils";
|
|
|
11
11
|
import * as i5 from "@fundamental-ngx/i18n";
|
|
12
12
|
export class FeedListItemComponent {
|
|
13
13
|
/** @hidden */
|
|
14
|
-
constructor(_elementRef
|
|
14
|
+
constructor(_elementRef) {
|
|
15
15
|
this._elementRef = _elementRef;
|
|
16
|
-
this._changeDetectorRef = _changeDetectorRef;
|
|
17
16
|
/**
|
|
18
17
|
* Sets the `aria-label` attribute to the element.
|
|
19
18
|
*/
|
|
@@ -27,6 +26,7 @@ export class FeedListItemComponent {
|
|
|
27
26
|
* Apply mobile view
|
|
28
27
|
*/
|
|
29
28
|
this.mobile = false;
|
|
29
|
+
this.maxCharsAtDefault = false;
|
|
30
30
|
/**
|
|
31
31
|
* Apply body class by default
|
|
32
32
|
*/
|
|
@@ -40,15 +40,30 @@ export class FeedListItemComponent {
|
|
|
40
40
|
*/
|
|
41
41
|
this.hasMore = false;
|
|
42
42
|
}
|
|
43
|
+
setHasMore() {
|
|
44
|
+
if (this.text) {
|
|
45
|
+
this.hasMore = this.text.length > this.maxChars;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
setDefaultMaxChars() {
|
|
49
|
+
this.maxChars = this.mobile ? 300 : 500;
|
|
50
|
+
}
|
|
43
51
|
/** @hidden */
|
|
44
52
|
ngOnInit() {
|
|
45
53
|
this.buildComponentCssClass();
|
|
54
|
+
if (!this.maxChars) {
|
|
55
|
+
this.setDefaultMaxChars();
|
|
56
|
+
this.maxCharsAtDefault = true;
|
|
57
|
+
}
|
|
58
|
+
this.setHasMore();
|
|
46
59
|
}
|
|
47
60
|
/** @hidden */
|
|
48
61
|
ngOnChanges(changes) {
|
|
49
62
|
if ('class' in changes || 'isRichText' in changes) {
|
|
50
63
|
this.buildComponentCssClass();
|
|
51
64
|
}
|
|
65
|
+
this.maxCharsAtDefault && this.setDefaultMaxChars();
|
|
66
|
+
this.setHasMore();
|
|
52
67
|
}
|
|
53
68
|
/** CssClassBuilder interface implementation
|
|
54
69
|
* function must return single string
|
|
@@ -65,14 +80,9 @@ export class FeedListItemComponent {
|
|
|
65
80
|
toggleTextView() {
|
|
66
81
|
this.isCollapsed = !this.isCollapsed;
|
|
67
82
|
}
|
|
68
|
-
/** @hidden */
|
|
69
|
-
checkCharCount(isMore) {
|
|
70
|
-
this.hasMore = isMore;
|
|
71
|
-
this._changeDetectorRef.detectChanges();
|
|
72
|
-
}
|
|
73
83
|
}
|
|
74
|
-
FeedListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: FeedListItemComponent, deps: [{ token: i0.ElementRef }
|
|
75
|
-
FeedListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: FeedListItemComponent, selector: "fd-feed-list-item", inputs: { class: "class", authorTitle: "authorTitle", authorLink: "authorLink", text: "text", maxChars: "maxChars", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", moreLabel: "moreLabel", lessLabel: "lessLabel", isRichText: "isRichText", mobile: "mobile" }, host: { properties: { "class.fd-feed-list__body": "this.isFeedListItemBody" } }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"mobile; then headerTmpl; else avatarContent\"></ng-container>\n<div class=\"fd-feed-list__content\">\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </ng-container>\n <p class=\"fd-feed-list__text\">\n <ng-container *ngIf=\"!isRichText\">\n <ng-container *ngTemplateOutlet=\"feedContent; context: { $implicit: author }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isRichText\">\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <fd-formatted-text [htmlText]=\"text\"></fd-formatted-text>\n </ng-container>\n </p>\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #avatarContent>\n <ng-content select=\"fd-feed-list-avatar\"></ng-content>\n</ng-template>\n<ng-template #actionContent>\n <ng-content select=\"fd-feed-list-action\"></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"fd-feed-list-footer\"></ng-content>\n</ng-template>\n\n<ng-template #author>\n <span class=\"fd-feed-list__name\">\n <ng-container *ngIf=\"authorLink; else authorTitleTemplate\">\n <a\n target=\"_blank\"\n fd-link\n [attr.title]=\"authorTitle\"\n [attr.href]=\"authorLink | safe: 'url'\"\n [emphasized]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"authorTitleTemplate\"></ng-container>\n </a> </ng-container\n >:\n </span>\n</ng-template>\n<ng-template #authorTitleTemplate>\n {{ authorTitle }}\n</ng-template>\n\n<ng-template #feedContent let-param>\n <ng-container *ngTemplateOutlet=\"param\"></ng-container>\n <span
|
|
84
|
+
FeedListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: FeedListItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
85
|
+
FeedListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: FeedListItemComponent, selector: "fd-feed-list-item", inputs: { class: "class", authorTitle: "authorTitle", authorLink: "authorLink", text: "text", maxChars: "maxChars", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", moreLabel: "moreLabel", lessLabel: "lessLabel", isRichText: "isRichText", mobile: "mobile" }, host: { properties: { "class.fd-feed-list__body": "this.isFeedListItemBody" } }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"mobile; then headerTmpl; else avatarContent\"></ng-container>\n<div class=\"fd-feed-list__content\">\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </ng-container>\n <p class=\"fd-feed-list__text\">\n <ng-container *ngIf=\"!isRichText\">\n <ng-container *ngTemplateOutlet=\"feedContent; context: { $implicit: author }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isRichText\">\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <fd-formatted-text [htmlText]=\"text\"></fd-formatted-text>\n </ng-container>\n </p>\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #avatarContent>\n <ng-content select=\"fd-feed-list-avatar\"></ng-content>\n</ng-template>\n<ng-template #actionContent>\n <ng-content select=\"fd-feed-list-action\"></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"fd-feed-list-footer\"></ng-content>\n</ng-template>\n\n<ng-template #author>\n <span class=\"fd-feed-list__name\">\n <ng-container *ngIf=\"authorLink; else authorTitleTemplate\">\n <a\n target=\"_blank\"\n fd-link\n [attr.title]=\"authorTitle\"\n [attr.href]=\"authorLink | safe: 'url'\"\n [emphasized]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"authorTitleTemplate\"></ng-container>\n </a> </ng-container\n >:\n </span>\n</ng-template>\n<ng-template #authorTitleTemplate>\n {{ authorTitle }}\n</ng-template>\n\n<ng-template #feedContent let-param>\n <ng-container *ngTemplateOutlet=\"param\"></ng-container>\n <span>\n {{ isCollapsed ? (text | truncate: maxChars) : text }}\n </span>\n <a\n fd-link\n class=\"fd-feed-list__link--more\"\n *ngIf=\"!isRichText && hasMore\"\n (click)=\"toggleTextView()\"\n [innerText]=\"\n isCollapsed\n ? moreLabel || ('coreFeedListItem.moreLabel' | fdTranslate)\n : lessLabel || ('coreFeedListItem.lessLabel' | fdTranslate)\n \"\n ></a>\n</ng-template>\n\n<ng-template #headerTmpl>\n <div class=\"fd-feed-list__wrapper\">\n <div class=\"fd-feed-list__wrapper fd-feed-list__wrapper--header\">\n <ng-container *ngTemplateOutlet=\"avatarContent\"></ng-container>\n <div>\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </div>\n</ng-template>\n", styles: [".fd-feed-list__name a{max-width:75%;display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.fd-feed-list__thumb{display:flex;align-items:center;justify-content:center;max-width:3rem;flex:0 0 3rem;height:3rem;overflow:hidden}.fd-feed-list__thumb img{width:100%;height:100%;object-fit:contain}.fd-feed-list__link--more{cursor:pointer;text-transform:initial}.fd-feed-list__link--more:hover{text-decoration:underline}\n"], dependencies: [{ 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.FormattedTextComponent, selector: "fd-formatted-text", inputs: ["htmlText", "convertedLinksDefaultTarget", "height", "width"], exportAs: ["fd-formatted-text"] }, { kind: "component", type: i3.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "pipe", type: i4.SafePipe, name: "safe" }, { kind: "pipe", type: i4.TruncatePipe, name: "truncate" }, { kind: "pipe", type: i5.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
76
86
|
__decorate([
|
|
77
87
|
applyCssClass,
|
|
78
88
|
__metadata("design:type", Function),
|
|
@@ -81,8 +91,8 @@ __decorate([
|
|
|
81
91
|
], FeedListItemComponent.prototype, "buildComponentCssClass", null);
|
|
82
92
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: FeedListItemComponent, decorators: [{
|
|
83
93
|
type: Component,
|
|
84
|
-
args: [{ selector: 'fd-feed-list-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"mobile; then headerTmpl; else avatarContent\"></ng-container>\n<div class=\"fd-feed-list__content\">\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </ng-container>\n <p class=\"fd-feed-list__text\">\n <ng-container *ngIf=\"!isRichText\">\n <ng-container *ngTemplateOutlet=\"feedContent; context: { $implicit: author }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isRichText\">\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <fd-formatted-text [htmlText]=\"text\"></fd-formatted-text>\n </ng-container>\n </p>\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #avatarContent>\n <ng-content select=\"fd-feed-list-avatar\"></ng-content>\n</ng-template>\n<ng-template #actionContent>\n <ng-content select=\"fd-feed-list-action\"></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"fd-feed-list-footer\"></ng-content>\n</ng-template>\n\n<ng-template #author>\n <span class=\"fd-feed-list__name\">\n <ng-container *ngIf=\"authorLink; else authorTitleTemplate\">\n <a\n target=\"_blank\"\n fd-link\n [attr.title]=\"authorTitle\"\n [attr.href]=\"authorLink | safe: 'url'\"\n [emphasized]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"authorTitleTemplate\"></ng-container>\n </a> </ng-container\n >:\n </span>\n</ng-template>\n<ng-template #authorTitleTemplate>\n {{ authorTitle }}\n</ng-template>\n\n<ng-template #feedContent let-param>\n <ng-container *ngTemplateOutlet=\"param\"></ng-container>\n <span
|
|
85
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }
|
|
94
|
+
args: [{ selector: 'fd-feed-list-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"mobile; then headerTmpl; else avatarContent\"></ng-container>\n<div class=\"fd-feed-list__content\">\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </ng-container>\n <p class=\"fd-feed-list__text\">\n <ng-container *ngIf=\"!isRichText\">\n <ng-container *ngTemplateOutlet=\"feedContent; context: { $implicit: author }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isRichText\">\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <fd-formatted-text [htmlText]=\"text\"></fd-formatted-text>\n </ng-container>\n </p>\n <ng-container *ngIf=\"!mobile\">\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #avatarContent>\n <ng-content select=\"fd-feed-list-avatar\"></ng-content>\n</ng-template>\n<ng-template #actionContent>\n <ng-content select=\"fd-feed-list-action\"></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"fd-feed-list-footer\"></ng-content>\n</ng-template>\n\n<ng-template #author>\n <span class=\"fd-feed-list__name\">\n <ng-container *ngIf=\"authorLink; else authorTitleTemplate\">\n <a\n target=\"_blank\"\n fd-link\n [attr.title]=\"authorTitle\"\n [attr.href]=\"authorLink | safe: 'url'\"\n [emphasized]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"authorTitleTemplate\"></ng-container>\n </a> </ng-container\n >:\n </span>\n</ng-template>\n<ng-template #authorTitleTemplate>\n {{ authorTitle }}\n</ng-template>\n\n<ng-template #feedContent let-param>\n <ng-container *ngTemplateOutlet=\"param\"></ng-container>\n <span>\n {{ isCollapsed ? (text | truncate: maxChars) : text }}\n </span>\n <a\n fd-link\n class=\"fd-feed-list__link--more\"\n *ngIf=\"!isRichText && hasMore\"\n (click)=\"toggleTextView()\"\n [innerText]=\"\n isCollapsed\n ? moreLabel || ('coreFeedListItem.moreLabel' | fdTranslate)\n : lessLabel || ('coreFeedListItem.lessLabel' | fdTranslate)\n \"\n ></a>\n</ng-template>\n\n<ng-template #headerTmpl>\n <div class=\"fd-feed-list__wrapper\">\n <div class=\"fd-feed-list__wrapper fd-feed-list__wrapper--header\">\n <ng-container *ngTemplateOutlet=\"avatarContent\"></ng-container>\n <div>\n <ng-container *ngTemplateOutlet=\"author\"></ng-container>\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"actionContent\"></ng-container>\n </div>\n</ng-template>\n", styles: [".fd-feed-list__name a{max-width:75%;display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.fd-feed-list__thumb{display:flex;align-items:center;justify-content:center;max-width:3rem;flex:0 0 3rem;height:3rem;overflow:hidden}.fd-feed-list__thumb img{width:100%;height:100%;object-fit:contain}.fd-feed-list__link--more{cursor:pointer;text-transform:initial}.fd-feed-list__link--more:hover{text-decoration:underline}\n"] }]
|
|
95
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { class: [{
|
|
86
96
|
type: Input
|
|
87
97
|
}], authorTitle: [{
|
|
88
98
|
type: Input
|
|
@@ -113,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
113
123
|
* function is responsible for order which css classes are applied
|
|
114
124
|
*/
|
|
115
125
|
buildComponentCssClass: [] } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1saXN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvZmVlZC1saXN0LWl0ZW0vY29tcG9uZW50cy9pdGVtL2ZlZWQtbGlzdC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2ZlZWQtbGlzdC1pdGVtL2NvbXBvbmVudHMvaXRlbS9mZWVkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQ0gsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsS0FBSyxFQUVMLFVBQVUsRUFHVixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBbUIsTUFBTSw2QkFBNkIsQ0FBQztBQUc3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7QUFTakQsTUFBTSxPQUFPLHFCQUFxQjtJQW9GOUIsY0FBYztJQUNkLFlBQTZCLFdBQXVCLEVBQW1CLGtCQUFxQztRQUEvRSxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFtQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBeEQ1Rzs7V0FFRztRQUVILGNBQVMsR0FBRyxFQUFFLENBQUM7UUFzQmY7OztXQUdHO1FBRUgsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUVuQjs7V0FFRztRQUVILFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFZjs7V0FFRztRQUVILHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUUxQjs7V0FFRztRQUNILGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBRW5COztXQUVHO1FBQ0gsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUcrRixDQUFDO0lBRWhILGNBQWM7SUFDZCxRQUFRO1FBQ0osSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxPQUFPLElBQUksT0FBTyxJQUFJLFlBQVksSUFBSSxPQUFPLEVBQUU7WUFDL0MsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDakM7SUFDTCxDQUFDO0lBT0QsQUFKQTs7O09BR0c7SUFDSCxzQkFBc0I7UUFDbEIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLElBQUksZUFBZSxDQUFDLENBQUM7SUFDM0csQ0FBQztJQUVELGNBQWM7SUFDZCxVQUFVO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxjQUFjO0lBQ2QsY0FBYztRQUNWLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxjQUFjO0lBQ2QsY0FBYyxDQUFDLE1BQWU7UUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzVDLENBQUM7O2tIQTFIUSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwyYUN4QmxDLHkrRkFtRkE7QUQ2Q0k7SUFMQyxhQUFhOzs7O21FQU9iOzJGQTFHUSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0ksbUJBQW1CLGlCQUdkLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07aUlBSy9DLEtBQUs7c0JBREosS0FBSztnQkFPTixXQUFXO3NCQURWLEtBQUs7Z0JBT04sVUFBVTtzQkFEVCxLQUFLO2dCQU9OLElBQUk7c0JBREgsS0FBSztnQkFPTixRQUFRO3NCQURQLEtBQUs7Z0JBT04sU0FBUztzQkFEUixLQUFLO2dCQU9OLGNBQWM7c0JBRGIsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBUU4sU0FBUztzQkFEUixLQUFLO2dCQVFOLFVBQVU7c0JBRFQsS0FBSztnQkFPTixNQUFNO3NCQURMLEtBQUs7Z0JBT04sa0JBQWtCO3NCQURqQixXQUFXO3VCQUFDLDBCQUEwQjs7UUE2QnZDOzs7V0FHRztRQUNILHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBJbnB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgT25Jbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFwcGx5Q3NzQ2xhc3MsIENzc0NsYXNzQnVpbGRlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuXG5pbXBvcnQgeyBDU1NfQ0xBU1NfTkFNRSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZmVlZC1saXN0LWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWVkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmVlZC1saXN0LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEZlZWRMaXN0SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBDc3NDbGFzc0J1aWxkZXIge1xuICAgIC8qKiBVc2VyJ3MgY3VzdG9tIGNsYXNzZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsYXNzOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBBdXRob3Igb2YgZmVlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXV0aG9yVGl0bGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIExpbmsgdG8gQXV0aG9yIG9mIGZlZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGF1dGhvckxpbms6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKipcbiAgICAgKiBGZWVkIHRleHRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHRleHQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIE1heCBwcmV2aWV3IGNoYXJhY3RlcnMgb2YgRmVlZCB0ZXh0LiBJZiB5b3UgaGF2ZSBtb3JlIHRoYW4gbWF4IGNoYXJhY3RlcnMgdGV4dCwgeW91IGNhbiB0b2dnbGUgcHJldmlldy9mdWxsIHRleHQgd2l0aCBtb3JlL2xlc3MgYnV0dG9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbWF4Q2hhcnM/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsID0gJyc7XG5cbiAgICAvKipcbiAgICAgKiBhcmlhLWxhYmVsbGVkYnkgZm9yIGVsZW1lbnQgZGVzY3JpYmluZy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbGxlZGJ5OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB1c2UgaTE4biBjYXBhYmlsaXRpZXMgaW5zdGVhZFxuICAgICAqIFRleHQgZm9yIG1vcmUgYnV0dG9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtb3JlTGFiZWw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSBpMThuIGNhcGFiaWxpdGllcyBpbnN0ZWFkXG4gICAgICogVGV4dCBmb3IgbGVzcyBidXR0b25cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGxlc3NMYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQXBwbHkgcmljaCBmZWVkIHRleHQsIHBsZWFzZSBub3RlIC0gd2UgdXNlIGEgZm9ybWF0dGVkIHRleHQgY29tcG9uZW50IHdpdGggdGhpcyBvcHRpb24sIGl0IGhhcyBhIGxpc3Qgb2YgY29udHJvbGxlZCB0YWdzIGFuZCBhdHRpYnV0ZXMuXG4gICAgICogVGhpcyBmZWF0dXJlIHNob3VsZCBiZSBoYW5kbGVkIHdpdGggY2FyZSBhcyBpdCBhbGxvd3MgZm9yIGNvdW50bGVzcyBjdXN0b20gbGF5b3V0cy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGlzUmljaFRleHQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEFwcGx5IG1vYmlsZSB2aWV3XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtb2JpbGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEFwcGx5IGJvZHkgY2xhc3MgYnkgZGVmYXVsdFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtZmVlZC1saXN0X19ib2R5JylcbiAgICBpc0ZlZWRMaXN0SXRlbUJvZHkgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogU2hvd3MgdG9nZ2xlIHN0YXRlIG9mIGZlZWQgdGV4dCAtIG1vcmUgb3IgbGVzc1xuICAgICAqL1xuICAgIGlzQ29sbGFwc2VkID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFNob3dzIGhhdmUgeW91IG1vcmUgbGluZSB0aGFuIG1heCBsaW5lc1xuICAgICAqL1xuICAgIGhhc01vcmUgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICgnY2xhc3MnIGluIGNoYW5nZXMgfHwgJ2lzUmljaFRleHQnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnRDc3NDbGFzcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICAvKiogQ3NzQ2xhc3NCdWlsZGVyIGludGVyZmFjZSBpbXBsZW1lbnRhdGlvblxuICAgICAqIGZ1bmN0aW9uIG11c3QgcmV0dXJuIHNpbmdsZSBzdHJpbmdcbiAgICAgKiBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3Igb3JkZXIgd2hpY2ggY3NzIGNsYXNzZXMgYXJlIGFwcGxpZWRcbiAgICAgKi9cbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtDU1NfQ0xBU1NfTkFNRS5pdGVtLCB0aGlzLmNsYXNzLCB0aGlzLmlzUmljaFRleHQgPyAnJyA6IGAke0NTU19DTEFTU19OQU1FLml0ZW19LS1jb2xsYXBzaWJsZWBdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZWxlbWVudFJlZigpOiBFbGVtZW50UmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRvZ2dsZVRleHRWaWV3KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzQ29sbGFwc2VkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjaGVja0NoYXJDb3VudChpc01vcmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNNb3JlID0gaXNNb3JlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vYmlsZTsgdGhlbiBoZWFkZXJUbXBsOyBlbHNlIGF2YXRhckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbjxkaXYgY2xhc3M9XCJmZC1mZWVkLWxpc3RfX2NvbnRlbnRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW1vYmlsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWN0aW9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxwIGNsYXNzPVwiZmQtZmVlZC1saXN0X190ZXh0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNSaWNoVGV4dFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZlZWRDb250ZW50OyBjb250ZXh0OiB7ICRpbXBsaWNpdDogYXV0aG9yIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1JpY2hUZXh0XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZmQtZm9ybWF0dGVkLXRleHQgW2h0bWxUZXh0XT1cInRleHRcIj48L2ZkLWZvcm1hdHRlZC10ZXh0PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3A+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2JpbGVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2F2YXRhckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWF2YXRhclwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2FjdGlvbkNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWFjdGlvblwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Zvb3RlckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWZvb3RlclwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYXV0aG9yPlxuICAgIDxzcGFuIGNsYXNzPVwiZmQtZmVlZC1saXN0X19uYW1lXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdXRob3JMaW5rOyBlbHNlIGF1dGhvclRpdGxlVGVtcGxhdGVcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICBmZC1saW5rXG4gICAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiYXV0aG9yVGl0bGVcIlxuICAgICAgICAgICAgICAgIFthdHRyLmhyZWZdPVwiYXV0aG9yTGluayB8IHNhZmU6ICd1cmwnXCJcbiAgICAgICAgICAgICAgICBbZW1waGFzaXplZF09XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yVGl0bGVUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9hPiA8L25nLWNvbnRhaW5lclxuICAgICAgICA+OlxuICAgIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2F1dGhvclRpdGxlVGVtcGxhdGU+XG4gICAge3sgYXV0aG9yVGl0bGUgfX1cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZmVlZENvbnRlbnQgbGV0LXBhcmFtPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwYXJhbVwiPjwvbmctY29udGFpbmVyPlxuICAgIDxzcGFuXG4gICAgICAgIGZkLXRydW5jYXRlXG4gICAgICAgIFtmZFRydW5jYXRlU3RhdGVdPVwiaXNDb2xsYXBzZWRcIlxuICAgICAgICBbZmRUcnVuY2F0ZUNoYXJzXT1cIm1heENoYXJzXCJcbiAgICAgICAgW2ZkVHJ1bmNhdGVUYXJnZXRUZXh0XT1cInRleHRcIlxuICAgICAgICAoY2hhckNvdW50VXBkYXRlKT1cImNoZWNrQ2hhckNvdW50KCRldmVudClcIlxuICAgID5cbiAgICA8L3NwYW4+XG4gICAgPGFcbiAgICAgICAgZmQtbGlua1xuICAgICAgICBjbGFzcz1cImZkLWZlZWQtbGlzdF9fbGluay0tbW9yZVwiXG4gICAgICAgICpuZ0lmPVwiIWlzUmljaFRleHQgJiYgaGFzTW9yZVwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVUZXh0VmlldygpXCJcbiAgICAgICAgW2lubmVyVGV4dF09XCJcbiAgICAgICAgICAgIGlzQ29sbGFwc2VkXG4gICAgICAgICAgICAgICAgPyBtb3JlTGFiZWwgfHwgKCdjb3JlRmVlZExpc3RJdGVtLm1vcmVMYWJlbCcgfCBmZFRyYW5zbGF0ZSlcbiAgICAgICAgICAgICAgICA6IGxlc3NMYWJlbCB8fCAoJ2NvcmVGZWVkTGlzdEl0ZW0ubGVzc0xhYmVsJyB8IGZkVHJhbnNsYXRlKVxuICAgICAgICBcIlxuICAgID48L2E+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2hlYWRlclRtcGw+XG4gICAgPGRpdiBjbGFzcz1cImZkLWZlZWQtbGlzdF9fd3JhcHBlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZmVlZC1saXN0X193cmFwcGVyIGZkLWZlZWQtbGlzdF9fd3JhcHBlci0taGVhZGVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXZhdGFyQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFjdGlvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1saXN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvZmVlZC1saXN0LWl0ZW0vY29tcG9uZW50cy9pdGVtL2ZlZWQtbGlzdC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2ZlZWQtbGlzdC1pdGVtL2NvbXBvbmVudHMvaXRlbS9mZWVkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQ0gsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsS0FBSyxFQUVMLFVBQVUsRUFHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFtQixNQUFNLDZCQUE2QixDQUFDO0FBRzdFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVNqRCxNQUFNLE9BQU8scUJBQXFCO0lBcUY5QixjQUFjO0lBQ2QsWUFBNkIsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUF6RHBEOztXQUVHO1FBRUgsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQXNCZjs7O1dBR0c7UUFFSCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5COztXQUVHO1FBRUgsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUVmLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQjs7V0FFRztRQUVILHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUUxQjs7V0FFRztRQUNILGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBRW5COztXQUVHO1FBQ0gsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUd1QyxDQUFDO0lBRXhELFVBQVU7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7U0FDbkQ7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsY0FBYztJQUNkLFFBQVE7UUFDSixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksT0FBTyxJQUFJLE9BQU8sSUFBSSxZQUFZLElBQUksT0FBTyxFQUFFO1lBQy9DLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBT0QsQUFKQTs7O09BR0c7SUFDSCxzQkFBc0I7UUFDbEIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLElBQUksZUFBZSxDQUFDLENBQUM7SUFDM0csQ0FBQztJQUVELGNBQWM7SUFDZCxVQUFVO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxjQUFjO0lBQ2QsY0FBYztRQUNWLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3pDLENBQUM7O2tIQXJJUSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwyYUN2QmxDLDQxRkE4RUE7QURrRUk7SUFMQyxhQUFhOzs7O21FQU9iOzJGQTNIUSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0ksbUJBQW1CLGlCQUdkLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07aUdBSy9DLEtBQUs7c0JBREosS0FBSztnQkFPTixXQUFXO3NCQURWLEtBQUs7Z0JBT04sVUFBVTtzQkFEVCxLQUFLO2dCQU9OLElBQUk7c0JBREgsS0FBSztnQkFPTixRQUFRO3NCQURQLEtBQUs7Z0JBT04sU0FBUztzQkFEUixLQUFLO2dCQU9OLGNBQWM7c0JBRGIsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBUU4sU0FBUztzQkFEUixLQUFLO2dCQVFOLFVBQVU7c0JBRFQsS0FBSztnQkFPTixNQUFNO3NCQURMLEtBQUs7Z0JBUU4sa0JBQWtCO3NCQURqQixXQUFXO3VCQUFDLDBCQUEwQjs7UUE2Q3ZDOzs7V0FHRztRQUNILHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBJbnB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgT25Jbml0LFxuICAgIE9uQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFwcGx5Q3NzQ2xhc3MsIENzc0NsYXNzQnVpbGRlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuXG5pbXBvcnQgeyBDU1NfQ0xBU1NfTkFNRSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZmVlZC1saXN0LWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWVkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmVlZC1saXN0LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEZlZWRMaXN0SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBDc3NDbGFzc0J1aWxkZXIge1xuICAgIC8qKiBVc2VyJ3MgY3VzdG9tIGNsYXNzZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsYXNzOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBBdXRob3Igb2YgZmVlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXV0aG9yVGl0bGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIExpbmsgdG8gQXV0aG9yIG9mIGZlZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGF1dGhvckxpbms6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKipcbiAgICAgKiBGZWVkIHRleHRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHRleHQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIE1heCBwcmV2aWV3IGNoYXJhY3RlcnMgb2YgRmVlZCB0ZXh0LiBJZiB5b3UgaGF2ZSBtb3JlIHRoYW4gbWF4IGNoYXJhY3RlcnMgdGV4dCwgeW91IGNhbiB0b2dnbGUgcHJldmlldy9mdWxsIHRleHQgd2l0aCBtb3JlL2xlc3MgYnV0dG9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbWF4Q2hhcnM6IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGFiZWwgPSAnJztcblxuICAgIC8qKlxuICAgICAqIGFyaWEtbGFiZWxsZWRieSBmb3IgZWxlbWVudCBkZXNjcmliaW5nLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsbGVkYnk6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSBpMThuIGNhcGFiaWxpdGllcyBpbnN0ZWFkXG4gICAgICogVGV4dCBmb3IgbW9yZSBidXR0b25cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG1vcmVMYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgdXNlIGkxOG4gY2FwYWJpbGl0aWVzIGluc3RlYWRcbiAgICAgKiBUZXh0IGZvciBsZXNzIGJ1dHRvblxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGVzc0xhYmVsOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBBcHBseSByaWNoIGZlZWQgdGV4dCwgcGxlYXNlIG5vdGUgLSB3ZSB1c2UgYSBmb3JtYXR0ZWQgdGV4dCBjb21wb25lbnQgd2l0aCB0aGlzIG9wdGlvbiwgaXQgaGFzIGEgbGlzdCBvZiBjb250cm9sbGVkIHRhZ3MgYW5kIGF0dGlidXRlcy5cbiAgICAgKiBUaGlzIGZlYXR1cmUgc2hvdWxkIGJlIGhhbmRsZWQgd2l0aCBjYXJlIGFzIGl0IGFsbG93cyBmb3IgY291bnRsZXNzIGN1c3RvbSBsYXlvdXRzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNSaWNoVGV4dCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQXBwbHkgbW9iaWxlIHZpZXdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG1vYmlsZSA9IGZhbHNlO1xuXG4gICAgbWF4Q2hhcnNBdERlZmF1bHQgPSBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBBcHBseSBib2R5IGNsYXNzIGJ5IGRlZmF1bHRcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWZlZWQtbGlzdF9fYm9keScpXG4gICAgaXNGZWVkTGlzdEl0ZW1Cb2R5ID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFNob3dzIHRvZ2dsZSBzdGF0ZSBvZiBmZWVkIHRleHQgLSBtb3JlIG9yIGxlc3NcbiAgICAgKi9cbiAgICBpc0NvbGxhcHNlZCA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBTaG93cyBoYXZlIHlvdSBtb3JlIGxpbmUgdGhhbiBtYXggbGluZXNcbiAgICAgKi9cbiAgICBoYXNNb3JlID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICBzZXRIYXNNb3JlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50ZXh0KSB7XG4gICAgICAgICAgICB0aGlzLmhhc01vcmUgPSB0aGlzLnRleHQubGVuZ3RoID4gdGhpcy5tYXhDaGFycztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldERlZmF1bHRNYXhDaGFycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tYXhDaGFycyA9IHRoaXMubW9iaWxlID8gMzAwIDogNTAwO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICAgICAgaWYgKCF0aGlzLm1heENoYXJzKSB7XG4gICAgICAgICAgICB0aGlzLnNldERlZmF1bHRNYXhDaGFycygpO1xuICAgICAgICAgICAgdGhpcy5tYXhDaGFyc0F0RGVmYXVsdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRIYXNNb3JlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICgnY2xhc3MnIGluIGNoYW5nZXMgfHwgJ2lzUmljaFRleHQnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnRDc3NDbGFzcygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubWF4Q2hhcnNBdERlZmF1bHQgJiYgdGhpcy5zZXREZWZhdWx0TWF4Q2hhcnMoKTtcbiAgICAgICAgdGhpcy5zZXRIYXNNb3JlKCk7XG4gICAgfVxuXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICAvKiogQ3NzQ2xhc3NCdWlsZGVyIGludGVyZmFjZSBpbXBsZW1lbnRhdGlvblxuICAgICAqIGZ1bmN0aW9uIG11c3QgcmV0dXJuIHNpbmdsZSBzdHJpbmdcbiAgICAgKiBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3Igb3JkZXIgd2hpY2ggY3NzIGNsYXNzZXMgYXJlIGFwcGxpZWRcbiAgICAgKi9cbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtDU1NfQ0xBU1NfTkFNRS5pdGVtLCB0aGlzLmNsYXNzLCB0aGlzLmlzUmljaFRleHQgPyAnJyA6IGAke0NTU19DTEFTU19OQU1FLml0ZW19LS1jb2xsYXBzaWJsZWBdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZWxlbWVudFJlZigpOiBFbGVtZW50UmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRvZ2dsZVRleHRWaWV3KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzQ29sbGFwc2VkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vYmlsZTsgdGhlbiBoZWFkZXJUbXBsOyBlbHNlIGF2YXRhckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbjxkaXYgY2xhc3M9XCJmZC1mZWVkLWxpc3RfX2NvbnRlbnRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW1vYmlsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWN0aW9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxwIGNsYXNzPVwiZmQtZmVlZC1saXN0X190ZXh0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNSaWNoVGV4dFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZlZWRDb250ZW50OyBjb250ZXh0OiB7ICRpbXBsaWNpdDogYXV0aG9yIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1JpY2hUZXh0XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZmQtZm9ybWF0dGVkLXRleHQgW2h0bWxUZXh0XT1cInRleHRcIj48L2ZkLWZvcm1hdHRlZC10ZXh0PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3A+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2JpbGVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2F2YXRhckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWF2YXRhclwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2FjdGlvbkNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWFjdGlvblwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Zvb3RlckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtZmVlZC1saXN0LWZvb3RlclwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYXV0aG9yPlxuICAgIDxzcGFuIGNsYXNzPVwiZmQtZmVlZC1saXN0X19uYW1lXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdXRob3JMaW5rOyBlbHNlIGF1dGhvclRpdGxlVGVtcGxhdGVcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICBmZC1saW5rXG4gICAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiYXV0aG9yVGl0bGVcIlxuICAgICAgICAgICAgICAgIFthdHRyLmhyZWZdPVwiYXV0aG9yTGluayB8IHNhZmU6ICd1cmwnXCJcbiAgICAgICAgICAgICAgICBbZW1waGFzaXplZF09XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yVGl0bGVUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9hPiA8L25nLWNvbnRhaW5lclxuICAgICAgICA+OlxuICAgIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2F1dGhvclRpdGxlVGVtcGxhdGU+XG4gICAge3sgYXV0aG9yVGl0bGUgfX1cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZmVlZENvbnRlbnQgbGV0LXBhcmFtPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwYXJhbVwiPjwvbmctY29udGFpbmVyPlxuICAgIDxzcGFuPlxuICAgICAgICB7eyBpc0NvbGxhcHNlZCA/ICh0ZXh0IHwgdHJ1bmNhdGU6IG1heENoYXJzKSA6IHRleHQgfX1cbiAgICA8L3NwYW4+XG4gICAgPGFcbiAgICAgICAgZmQtbGlua1xuICAgICAgICBjbGFzcz1cImZkLWZlZWQtbGlzdF9fbGluay0tbW9yZVwiXG4gICAgICAgICpuZ0lmPVwiIWlzUmljaFRleHQgJiYgaGFzTW9yZVwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVUZXh0VmlldygpXCJcbiAgICAgICAgW2lubmVyVGV4dF09XCJcbiAgICAgICAgICAgIGlzQ29sbGFwc2VkXG4gICAgICAgICAgICAgICAgPyBtb3JlTGFiZWwgfHwgKCdjb3JlRmVlZExpc3RJdGVtLm1vcmVMYWJlbCcgfCBmZFRyYW5zbGF0ZSlcbiAgICAgICAgICAgICAgICA6IGxlc3NMYWJlbCB8fCAoJ2NvcmVGZWVkTGlzdEl0ZW0ubGVzc0xhYmVsJyB8IGZkVHJhbnNsYXRlKVxuICAgICAgICBcIlxuICAgID48L2E+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2hlYWRlclRtcGw+XG4gICAgPGRpdiBjbGFzcz1cImZkLWZlZWQtbGlzdF9fd3JhcHBlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZmVlZC1saXN0X193cmFwcGVyIGZkLWZlZWQtbGlzdF9fd3JhcHBlci0taGVhZGVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXZhdGFyQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXV0aG9yXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFjdGlvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|