ngx-tethys 16.1.0 → 16.1.2
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/CHANGELOG.md +24 -0
- package/esm2022/grid/flex.mjs +61 -24
- package/esm2022/grid/module.mjs +42 -6
- package/esm2022/grid/thy-grid.component.mjs +56 -22
- package/esm2022/image/image.directive.mjs +4 -3
- package/esm2022/util/index.mjs +2 -1
- package/esm2022/util/ng.mjs +7 -0
- package/esm2022/version.mjs +2 -2
- package/fesm2022/ngx-tethys-grid.mjs +153 -47
- package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
- package/fesm2022/ngx-tethys-image.mjs +3 -2
- package/fesm2022/ngx-tethys-image.mjs.map +1 -1
- package/fesm2022/ngx-tethys-util.mjs +8 -1
- package/fesm2022/ngx-tethys-util.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/grid/flex.d.ts +16 -2
- package/grid/module.d.ts +1 -1
- package/grid/thy-grid.component.d.ts +13 -7
- package/image/styles/image.scss +4 -0
- package/package.json +1 -1
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
- package/util/index.d.ts +1 -0
- package/util/ng.d.ts +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [16.1.2](https://github.com/atinc/ngx-tethys/compare/16.1.1...16.1.2) (2023-09-05)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **image:** set default cursor when thyDisablePreview is true #INFR-9513 ([#2833](https://github.com/atinc/ngx-tethys/issues/2833)) ([77a1c02](https://github.com/atinc/ngx-tethys/commit/77a1c024e9e0ac8f3c345e71bf1f5607b2e8cdd0)), closes [#INFR-9513](https://github.com/atinc/ngx-tethys/issues/INFR-9513)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* **cdk:** rename useAction and useAsync to actionBehavior and asyncBehavior #INFR-9544 ([#2834](https://github.com/atinc/ngx-tethys/issues/2834)) ([414f1a9](https://github.com/atinc/ngx-tethys/commit/414f1a918641153a33bab84dada6091a905b42a0)), closes [#INFR-9544](https://github.com/atinc/ngx-tethys/issues/INFR-9544)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## [16.1.1](https://github.com/atinc/ngx-tethys/compare/16.1.0-next.0...16.1.1) (2023-09-01)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
* **cdk:** export some types for behaviors #INFR-9498 ([2c101d6](https://github.com/atinc/ngx-tethys/commit/2c101d639e47562a703a9ac70a935f8ff25bc286)), closes [#INFR-9498](https://github.com/atinc/ngx-tethys/issues/INFR-9498)
|
|
25
|
+
* **grid:** add thyFlex, thyFlexItem and thyGrid directives and refactor related components use hostDirectives #INFR-9461 ([d6b499b](https://github.com/atinc/ngx-tethys/commit/d6b499b9f00d6bcc9ae9acbebafc14fad9e6e997)), closes [#INFR-9461](https://github.com/atinc/ngx-tethys/issues/INFR-9461)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
5
29
|
# [16.1.0](https://github.com/atinc/ngx-tethys/compare/16.1.0-next.0...16.1.0) (2023-08-31)
|
|
6
30
|
|
|
7
31
|
|
package/esm2022/grid/flex.mjs
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Directive, Input } from '@angular/core';
|
|
2
2
|
import { useHostRenderer } from '@tethys/cdk/dom';
|
|
3
3
|
import { isUndefinedOrNull } from '@tethys/cdk/is';
|
|
4
|
+
import { hasLaterChange } from 'ngx-tethys/util';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
/**
|
|
6
7
|
* 设置容器为 Flex 布局组件
|
|
7
8
|
* @name thy-flex, [thyFlex]
|
|
8
9
|
* @order 20
|
|
9
10
|
*/
|
|
10
|
-
// eslint-disable-next-line @angular-eslint/
|
|
11
|
+
// eslint-disable-next-line @angular-eslint/directive-class-suffix
|
|
11
12
|
export class ThyFlex {
|
|
12
13
|
get direction() {
|
|
13
14
|
const direction = this.thyDirection ?? this.thyDirection;
|
|
@@ -20,7 +21,7 @@ export class ThyFlex {
|
|
|
20
21
|
this.updateClasses();
|
|
21
22
|
}
|
|
22
23
|
ngOnChanges(changes) {
|
|
23
|
-
if (
|
|
24
|
+
if (hasLaterChange(changes)) {
|
|
24
25
|
this.updateClasses();
|
|
25
26
|
}
|
|
26
27
|
}
|
|
@@ -41,16 +42,14 @@ export class ThyFlex {
|
|
|
41
42
|
this.hostRenderer.updateClass(classes);
|
|
42
43
|
this.hostRenderer.setStyle('gap', `${this.thyGap ?? '0'}px`);
|
|
43
44
|
}
|
|
44
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlex, deps: [], target: i0.ɵɵFactoryTarget.
|
|
45
|
-
static { this.ɵ
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlex, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
46
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: ThyFlex, isStandalone: true, selector: "[thyFlex]", inputs: { thyDirection: "thyDirection", thyWrap: "thyWrap", thyJustifyContent: "thyJustifyContent", thyAlignItems: "thyAlignItems", thyGap: "thyGap" }, host: { classAttribute: "thy-flex d-flex" }, usesOnChanges: true, ngImport: i0 }); }
|
|
46
47
|
}
|
|
47
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlex, decorators: [{
|
|
48
|
-
type:
|
|
49
|
+
type: Directive,
|
|
49
50
|
args: [{
|
|
50
|
-
selector: '
|
|
51
|
-
template: `<ng-content></ng-content>`,
|
|
51
|
+
selector: '[thyFlex]',
|
|
52
52
|
standalone: true,
|
|
53
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
54
53
|
host: {
|
|
55
54
|
class: 'thy-flex d-flex'
|
|
56
55
|
}
|
|
@@ -66,12 +65,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
66
65
|
}], thyGap: [{
|
|
67
66
|
type: Input
|
|
68
67
|
}] } });
|
|
68
|
+
/**
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
export class ThyFlexComponent {
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
73
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: ThyFlexComponent, isStandalone: true, selector: "thy-flex", hostDirectives: [{ directive: ThyFlex, inputs: ["thyDirection", "thyDirection", "thyWrap", "thyWrap", "thyJustifyContent", "thyJustifyContent", "thyAlignItems", "thyAlignItems", "thyGap", "thyGap"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
74
|
+
}
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexComponent, decorators: [{
|
|
76
|
+
type: Component,
|
|
77
|
+
args: [{
|
|
78
|
+
selector: 'thy-flex',
|
|
79
|
+
template: `<ng-content></ng-content>`,
|
|
80
|
+
standalone: true,
|
|
81
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
82
|
+
hostDirectives: [
|
|
83
|
+
{
|
|
84
|
+
directive: ThyFlex,
|
|
85
|
+
inputs: ['thyDirection', 'thyWrap', 'thyJustifyContent', 'thyAlignItems', 'thyGap']
|
|
86
|
+
}
|
|
87
|
+
],
|
|
88
|
+
imports: [ThyFlex]
|
|
89
|
+
}]
|
|
90
|
+
}] });
|
|
69
91
|
/**
|
|
70
92
|
* 设置为 Flex Item 组件
|
|
71
93
|
* @name thy-flex-item, [thyFlexItem]
|
|
72
94
|
* @order 25
|
|
73
95
|
*/
|
|
74
|
-
// eslint-disable-next-line @angular-eslint/
|
|
96
|
+
// eslint-disable-next-line @angular-eslint/directive-class-suffix
|
|
75
97
|
export class ThyFlexItem {
|
|
76
98
|
constructor() {
|
|
77
99
|
this.hostRenderer = useHostRenderer();
|
|
@@ -80,7 +102,7 @@ export class ThyFlexItem {
|
|
|
80
102
|
this.updateClasses();
|
|
81
103
|
}
|
|
82
104
|
ngOnChanges(changes) {
|
|
83
|
-
if (
|
|
105
|
+
if (hasLaterChange(changes)) {
|
|
84
106
|
this.updateClasses();
|
|
85
107
|
}
|
|
86
108
|
}
|
|
@@ -107,16 +129,14 @@ export class ThyFlexItem {
|
|
|
107
129
|
}
|
|
108
130
|
this.hostRenderer.updateClass(classes);
|
|
109
131
|
}
|
|
110
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexItem, deps: [], target: i0.ɵɵFactoryTarget.
|
|
111
|
-
static { this.ɵ
|
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
133
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: ThyFlexItem, isStandalone: true, selector: "[thyFlexItem]", inputs: { thyFlexItem: "thyFlexItem", thyGrow: "thyGrow", thyShrink: "thyShrink", thyBasis: "thyBasis" }, host: { classAttribute: "thy-flex-item" }, usesOnChanges: true, ngImport: i0 }); }
|
|
112
134
|
}
|
|
113
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexItem, decorators: [{
|
|
114
|
-
type:
|
|
136
|
+
type: Directive,
|
|
115
137
|
args: [{
|
|
116
|
-
selector: '
|
|
117
|
-
template: `<ng-content></ng-content>`,
|
|
138
|
+
selector: '[thyFlexItem]',
|
|
118
139
|
standalone: true,
|
|
119
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
120
140
|
host: {
|
|
121
141
|
class: 'thy-flex-item'
|
|
122
142
|
}
|
|
@@ -130,13 +150,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
130
150
|
}], thyBasis: [{
|
|
131
151
|
type: Input
|
|
132
152
|
}] } });
|
|
153
|
+
/**
|
|
154
|
+
* @internal
|
|
155
|
+
*/
|
|
156
|
+
export class ThyFlexItemComponent {
|
|
157
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
158
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: ThyFlexItemComponent, isStandalone: true, selector: "thy-flex-item", hostDirectives: [{ directive: ThyFlexItem, inputs: ["thyFlexItem", "thyFlexItem", "thyGrow", "thyGrow", "thyShrink", "thyShrink", "thyBasis", "thyBasis"] }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
159
|
+
}
|
|
160
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyFlexItemComponent, decorators: [{
|
|
161
|
+
type: Component,
|
|
162
|
+
args: [{
|
|
163
|
+
selector: 'thy-flex-item',
|
|
164
|
+
template: `<ng-content></ng-content>`,
|
|
165
|
+
standalone: true,
|
|
166
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
167
|
+
imports: [ThyFlexItem],
|
|
168
|
+
hostDirectives: [
|
|
169
|
+
{
|
|
170
|
+
directive: ThyFlexItem,
|
|
171
|
+
inputs: ['thyFlexItem', 'thyGrow', 'thyShrink', 'thyBasis']
|
|
172
|
+
}
|
|
173
|
+
]
|
|
174
|
+
}]
|
|
175
|
+
}] });
|
|
133
176
|
function normalizeStartEnd(value) {
|
|
134
177
|
return value === 'flex-start' ? 'start' : value === 'flex-end' ? 'end' : value;
|
|
135
178
|
}
|
|
136
|
-
function hasChanges(changes) {
|
|
137
|
-
const hasChange = Object.keys(changes).find(key => {
|
|
138
|
-
return changes[key] && !changes[key].isFirstChange();
|
|
139
|
-
});
|
|
140
|
-
return !!hasChange;
|
|
141
|
-
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ncmlkL2ZsZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFrQm5EOzs7O0dBSUc7QUFVSCxrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLE9BQU87SUErQmhCLElBQUksU0FBUztRQUNULE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN6RCxPQUFPLFNBQVMsSUFBSSxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVEO1FBbkNRLGlCQUFZLEdBQUcsZUFBZSxFQUFFLENBQUM7SUFtQzFCLENBQUM7SUFFaEIsUUFBUTtRQUNKLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QjtJQUNMLENBQUM7SUFFTyxhQUFhO1FBQ2pCLE1BQU0sT0FBTyxHQUFhLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDNUMsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN4RTtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3hDO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNwQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDMUM7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDakUsQ0FBQzs4R0FoRVEsT0FBTztrR0FBUCxPQUFPLHlTQVJOLDJCQUEyQjs7MkZBUTVCLE9BQU87a0JBVm5CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGlCQUFpQjtxQkFDM0I7aUJBQ0o7MEVBU1ksWUFBWTtzQkFBcEIsS0FBSztnQkFNRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUtHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBTUcsTUFBTTtzQkFBZCxLQUFLOztBQXNDVjs7OztHQUlHO0FBVUgsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBTyxXQUFXO0lBeUJwQjtRQXhCUSxpQkFBWSxHQUFHLGVBQWUsRUFBRSxDQUFDO0lBd0IxQixDQUFDO0lBRWhCLFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNqQixNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLE1BQU0sRUFBRTtnQkFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2FBQzVDO2lCQUFNO2dCQUNILElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDeEQ7U0FDSjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQzdDO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNwQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDakQ7UUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDM0Q7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDOzhHQTFEUSxXQUFXO2tHQUFYLFdBQVcsa1FBUlYsMkJBQTJCOzsyRkFRNUIsV0FBVztrQkFWdkIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsZUFBZTtxQkFDekI7aUJBQ0o7MEVBUVksV0FBVztzQkFBbkIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUcsU0FBUztzQkFBakIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLOztBQXNDVixTQUFTLGlCQUFpQixDQUFDLEtBQWE7SUFDcEMsT0FBTyxLQUFLLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQ25GLENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxPQUFzQjtJQUN0QyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUM5QyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6RCxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUN2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1c2VIb3N0UmVuZGVyZXIgfSBmcm9tICdAdGV0aHlzL2Nkay9kb20nO1xuaW1wb3J0IHsgaXNVbmRlZmluZWRPck51bGwgfSBmcm9tICdAdGV0aHlzL2Nkay9pcyc7XG5cbmV4cG9ydCB0eXBlIFRoeUZsZXhEaXJlY3Rpb24gPSAncm93JyB8ICdjb2x1bW4nIHwgJ3Jvdy1yZXZlcnNlJyB8ICdjb2x1bW4tcmV2ZXJzZSc7XG5leHBvcnQgdHlwZSBUaHlGbGV4V3JhcCA9ICdub3dyYXAnIHwgJ3dyYXAnIHwgJ3dyYXAtcmV2ZXJzZSc7XG5leHBvcnQgdHlwZSBUaHlGbGV4SnVzdGlmeUNvbnRlbnQgPVxuICAgIHwgJ3N0YXJ0J1xuICAgIHwgJ2VuZCdcbiAgICB8ICdmbGV4LXN0YXJ0J1xuICAgIHwgJ2ZsZXgtZW5kJ1xuICAgIHwgJ2NlbnRlcidcbiAgICB8ICdzcGFjZS1iZXR3ZWVuJ1xuICAgIHwgJ3NwYWNlLWFyb3VuZCdcbiAgICB8ICdpbml0aWFsJ1xuICAgIHwgJ2luaGVyaXQnO1xuZXhwb3J0IHR5cGUgVGh5RmxleEFsaWduSXRlbXMgPSAnc3RhcnQnIHwgJ2VuZCcgfCAnc3RyZXRjaCcgfCAnY2VudGVyJyB8ICdmbGV4LXN0YXJ0JyB8ICdmbGV4LWVuZCcgfCAnYmFzZWxpbmUnIHwgJ2luaXRpYWwnIHwgJ2luaGVyaXQnO1xuZXhwb3J0IHR5cGUgVGh5RmxleEdyb3cgPSAnMScgfCAnMCcgfCAwIHwgMTtcbmV4cG9ydCB0eXBlIFRoeUZsZXhTaHJpbmsgPSAnMScgfCAnMCcgfCAwIHwgMTtcblxuLyoqXG4gKiDorr7nva7lrrnlmajkuLogRmxleCDluIPlsYDnu4Tku7ZcbiAqIEBuYW1lIHRoeS1mbGV4LCBbdGh5RmxleF1cbiAqIEBvcmRlciAyMFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1mbGV4LCBbdGh5RmxleF0nLFxuICAgIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWZsZXggZC1mbGV4J1xuICAgIH1cbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBUaHlGbGV4IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICAvKipcbiAgICAgKiBGbGV4IOaWueWQke+8jOS4uiByb3cg5oiW6ICFIGNvbHVtblxuICAgICAqIEBkZWZhdWx0IHJvd1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeURpcmVjdGlvbjogVGh5RmxleERpcmVjdGlvbjtcblxuICAgIC8qKlxuICAgICAqIEZsZXggV3JhcFxuICAgICAqIEBkZWZhdWx0IG5vd3JhcFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVdyYXA6IFRoeUZsZXhXcmFwO1xuXG4gICAgLyoqXG4gICAgICogSnVzdGlmeSBDb250ZW50XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5SnVzdGlmeUNvbnRlbnQ6IFRoeUZsZXhKdXN0aWZ5Q29udGVudDtcblxuICAgIC8qKlxuICAgICAqIEFsaWduIEl0ZW1zXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5QWxpZ25JdGVtczogVGh5RmxleEFsaWduSXRlbXM7XG5cbiAgICAvKipcbiAgICAgKiBGbGV4IEl0ZW0g5LmL6Ze055qE6Ze06ZqZIEdhcFxuICAgICAqIEBkZWZhdWx0IDBcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlHYXA6IG51bWJlcjtcblxuICAgIGdldCBkaXJlY3Rpb24oKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMudGh5RGlyZWN0aW9uID8/IHRoaXMudGh5RGlyZWN0aW9uO1xuICAgICAgICByZXR1cm4gZGlyZWN0aW9uIHx8ICdyb3cnO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChoYXNDaGFuZ2VzKGNoYW5nZXMpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQ2xhc3NlcygpIHtcbiAgICAgICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgaWYgKCFpc1VuZGVmaW5lZE9yTnVsbCh0aGlzLnRoeUp1c3RpZnlDb250ZW50KSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGBqdXN0aWZ5LWNvbnRlbnQtJHtub3JtYWxpemVTdGFydEVuZCh0aGlzLnRoeUp1c3RpZnlDb250ZW50KX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHRoaXMudGh5QWxpZ25JdGVtcykpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaChgYWxpZ24taXRlbXMtJHtub3JtYWxpemVTdGFydEVuZCh0aGlzLnRoeUFsaWduSXRlbXMpfWApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNVbmRlZmluZWRPck51bGwodGhpcy50aHlXcmFwKSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGBmbGV4LSR7dGhpcy50aHlXcmFwfWApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNVbmRlZmluZWRPck51bGwodGhpcy5kaXJlY3Rpb24pKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYGZsZXgtJHt0aGlzLmRpcmVjdGlvbn1gKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci51cGRhdGVDbGFzcyhjbGFzc2VzKTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2dhcCcsIGAke3RoaXMudGh5R2FwID8/ICcwJ31weGApO1xuICAgIH1cbn1cblxuLyoqXG4gKiDorr7nva7kuLogRmxleCBJdGVtIOe7hOS7tlxuICogQG5hbWUgdGh5LWZsZXgtaXRlbSwgW3RoeUZsZXhJdGVtXVxuICogQG9yZGVyIDI1XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWZsZXgtaXRlbSwgW3RoeUZsZXhJdGVtXScsXG4gICAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktZmxleC1pdGVtJ1xuICAgIH1cbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBUaHlGbGV4SXRlbSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgLyoqXG4gICAgICogRmxleCBJdGVtIOWxnuaAp++8jOihqOekuiBncm93IOOAgXNocmluayDjgIFiYXNpc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUZsZXhJdGVtOiAnZmlsbCcgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBGbGV3IEdyb3fvvIzorr7nva7miJbmo4DntKLlvLnmgKfnm5LlrZDnmoTmianlsZXmr5TnjofvvIzorr7nva4gMSDkuLrloavlhYXliankvZnljLrln59cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlHcm93OiBUaHlGbGV4R3JvdztcblxuICAgIC8qKlxuICAgICAqIEZsZXggU2hyaW5r77yM6K6+572u5oiW5qOA57Si5by55oCn55uS5pS257yp5q+U5L6LXG4gICAgICogQGRlZmF1bHQgMVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVNocmluazogVGh5RmxleFNocmluaztcblxuICAgIC8qKlxuICAgICAqIEZsZXggQmFzaXPvvIzorr7nva7miJbmo4DntKLlvLnmgKfnm5LkvLjnvKnln7rlh4blgLxcbiAgICAgKiBAZGVmYXVsdCAxXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5QmFzaXM6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChoYXNDaGFuZ2VzKGNoYW5nZXMpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQ2xhc3NlcygpIHtcbiAgICAgICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2ZsZXgnLCAnJyk7XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdiYXNpcycsICcnKTtcbiAgICAgICAgaWYgKHRoaXMudGh5RmxleEl0ZW0pIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRoeUZsZXhJdGVtID09PSAnZmlsbCcpIHtcbiAgICAgICAgICAgICAgICBjbGFzc2VzLnB1c2goYGZsZXgtJHt0aGlzLnRoeUZsZXhJdGVtfWApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci5zZXRTdHlsZSgnZmxleCcsIHRoaXMudGh5RmxleEl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghaXNVbmRlZmluZWRPck51bGwodGhpcy50aHlHcm93KSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGBmbGV4LWdyb3ctJHt0aGlzLnRoeUdyb3d9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc1VuZGVmaW5lZE9yTnVsbCh0aGlzLnRoeVNocmluaykpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaChgZmxleC1zaHJpbmstJHt0aGlzLnRoeVNocmlua31gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHRoaXMudGh5QmFzaXMpKSB7XG4gICAgICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci5zZXRTdHlsZSgnZmxleC1iYXNpcycsIHRoaXMudGh5QmFzaXMpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnVwZGF0ZUNsYXNzKGNsYXNzZXMpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplU3RhcnRFbmQodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlID09PSAnZmxleC1zdGFydCcgPyAnc3RhcnQnIDogdmFsdWUgPT09ICdmbGV4LWVuZCcgPyAnZW5kJyA6IHZhbHVlO1xufVxuXG5mdW5jdGlvbiBoYXNDaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiBib29sZWFuIHtcbiAgICBjb25zdCBoYXNDaGFuZ2UgPSBPYmplY3Qua2V5cyhjaGFuZ2VzKS5maW5kKGtleSA9PiB7XG4gICAgICAgIHJldHVybiBjaGFuZ2VzW2tleV0gJiYgIWNoYW5nZXNba2V5XS5pc0ZpcnN0Q2hhbmdlKCk7XG4gICAgfSk7XG4gICAgcmV0dXJuICEhaGFzQ2hhbmdlO1xufVxuIl19
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ncmlkL2ZsZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWtCakQ7Ozs7R0FJRztBQVFILGtFQUFrRTtBQUNsRSxNQUFNLE9BQU8sT0FBTztJQStCaEIsSUFBSSxTQUFTO1FBQ1QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3pELE9BQU8sU0FBUyxJQUFJLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRUQ7UUFuQ1EsaUJBQVksR0FBRyxlQUFlLEVBQUUsQ0FBQztJQW1DMUIsQ0FBQztJQUVoQixRQUFRO1FBQ0osSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUM1QyxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDaEY7UUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMs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QU8sRUFBRSxDQUFDLFdBQVcsQ0FBQztvQkFDdEIsY0FBYyxFQUFFO3dCQUNaOzRCQUNJLFNBQVMsRUFBRSxXQUFXOzRCQUN0QixNQUFNLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUM7eUJBQzlEO3FCQUNKO2lCQUNKOztBQUdELFNBQVMsaUJBQWlCLENBQUMsS0FBYTtJQUNwQyxPQUFPLEtBQUssS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDbkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1c2VIb3N0UmVuZGVyZXIgfSBmcm9tICdAdGV0aHlzL2Nkay9kb20nO1xuaW1wb3J0IHsgaXNVbmRlZmluZWRPck51bGwgfSBmcm9tICdAdGV0aHlzL2Nkay9pcyc7XG5pbXBvcnQgeyBoYXNMYXRlckNoYW5nZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmV4cG9ydCB0eXBlIFRoeUZsZXhEaXJlY3Rpb24gPSAncm93JyB8ICdjb2x1bW4nIHwgJ3Jvdy1yZXZlcnNlJyB8ICdjb2x1bW4tcmV2ZXJzZSc7XG5leHBvcnQgdHlwZSBUaHlGbGV4V3JhcCA9ICdub3dyYXAnIHwgJ3dyYXAnIHwgJ3dyYXAtcmV2ZXJzZSc7XG5leHBvcnQgdHlwZSBUaHlGbGV4SnVzdGlmeUNvbnRlbnQgPVxuICAgIHwgJ3N0YXJ0J1xuICAgIHwgJ2VuZCdcbiAgICB8ICdmbGV4LXN0YXJ0J1xuICAgIHwgJ2ZsZXgtZW5kJ1xuICAgIHwgJ2NlbnRlcidcbiAgICB8ICdzcGFjZS1iZXR3ZWVuJ1xuICAgIHwgJ3NwYWNlLWFyb3VuZCdcbiAgICB8ICdpbml0aWFsJ1xuICAgIHwgJ2luaGVyaXQnO1xuZXhwb3J0IHR5cGUgVGh5RmxleEFsaWduSXRlbXMgPSAnc3RhcnQnIHwgJ2VuZCcgfCAnc3RyZXRjaCcgfCAnY2VudGVyJyB8ICdmbGV4LXN0YXJ0JyB8ICdmbGV4LWVuZCcgfCAnYmFzZWxpbmUnIHwgJ2luaXRpYWwnIHwgJ2luaGVyaXQnO1xuZXhwb3J0IHR5cGUgVGh5RmxleEdyb3cgPSAnMScgfCAnMCcgfCAwIHwgMTtcbmV4cG9ydCB0eXBlIFRoeUZsZXhTaHJpbmsgPSAnMScgfCAnMCcgfCAwIHwgMTtcblxuLyoqXG4gKiDorr7nva7lrrnlmajkuLogRmxleCDluIPlsYDnu4Tku7ZcbiAqIEBuYW1lIHRoeS1mbGV4LCBbdGh5RmxleF1cbiAqIEBvcmRlciAyMFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0aHlGbGV4XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWZsZXggZC1mbGV4J1xuICAgIH1cbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBUaHlGbGV4IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICAvKipcbiAgICAgKiBGbGV4IOaWueWQke+8jOS4uiByb3cg5oiW6ICFIGNvbHVtblxuICAgICAqIEBkZWZhdWx0IHJvd1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeURpcmVjdGlvbjogVGh5RmxleERpcmVjdGlvbjtcblxuICAgIC8qKlxuICAgICAqIEZsZXggV3JhcFxuICAgICAqIEBkZWZhdWx0IG5vd3JhcFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVdyYXA6IFRoeUZsZXhXcmFwO1xuXG4gICAgLyoqXG4gICAgICogSnVzdGlmeSBDb250ZW50XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5SnVzdGlmeUNvbnRlbnQ6IFRoeUZsZXhKdXN0aWZ5Q29udGVudDtcblxuICAgIC8qKlxuICAgICAqIEFsaWduIEl0ZW1zXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5QWxpZ25JdGVtczogVGh5RmxleEFsaWduSXRlbXM7XG5cbiAgICAvKipcbiAgICAgKiBGbGV4IEl0ZW0g5LmL6Ze055qE6Ze06ZqZIEdhcFxuICAgICAqIEBkZWZhdWx0IDBcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlHYXA6IG51bWJlcjtcblxuICAgIGdldCBkaXJlY3Rpb24oKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMudGh5RGlyZWN0aW9uID8/IHRoaXMudGh5RGlyZWN0aW9uO1xuICAgICAgICByZXR1cm4gZGlyZWN0aW9uIHx8ICdyb3cnO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChoYXNMYXRlckNoYW5nZShjaGFuZ2VzKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUNsYXNzZXMoKSB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGlmICghaXNVbmRlZmluZWRPck51bGwodGhpcy50aHlKdXN0aWZ5Q29udGVudCkpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaChganVzdGlmeS1jb250ZW50LSR7bm9ybWFsaXplU3RhcnRFbmQodGhpcy50aHlKdXN0aWZ5Q29udGVudCl9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc1VuZGVmaW5lZE9yTnVsbCh0aGlzLnRoeUFsaWduSXRlbXMpKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYGFsaWduLWl0ZW1zLSR7bm9ybWFsaXplU3RhcnRFbmQodGhpcy50aHlBbGlnbkl0ZW1zKX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHRoaXMudGh5V3JhcCkpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaChgZmxleC0ke3RoaXMudGh5V3JhcH1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHRoaXMuZGlyZWN0aW9uKSkge1xuICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGBmbGV4LSR7dGhpcy5kaXJlY3Rpb259YCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIudXBkYXRlQ2xhc3MoY2xhc3Nlcyk7XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdnYXAnLCBgJHt0aGlzLnRoeUdhcCA/PyAnMCd9cHhgKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWZsZXgnLFxuICAgIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IFRoeUZsZXgsXG4gICAgICAgICAgICBpbnB1dHM6IFsndGh5RGlyZWN0aW9uJywgJ3RoeVdyYXAnLCAndGh5SnVzdGlmeUNvbnRlbnQnLCAndGh5QWxpZ25JdGVtcycsICd0aHlHYXAnXVxuICAgICAgICB9XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbVGh5RmxleF1cbn0pXG5leHBvcnQgY2xhc3MgVGh5RmxleENvbXBvbmVudCB7fVxuXG4vKipcbiAqIOiuvue9ruS4uiBGbGV4IEl0ZW0g57uE5Lu2XG4gKiBAbmFtZSB0aHktZmxleC1pdGVtLCBbdGh5RmxleEl0ZW1dXG4gKiBAb3JkZXIgMjVcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdGh5RmxleEl0ZW1dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aHktZmxleC1pdGVtJ1xuICAgIH1cbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBUaHlGbGV4SXRlbSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIGhvc3RSZW5kZXJlciA9IHVzZUhvc3RSZW5kZXJlcigpO1xuXG4gICAgLyoqXG4gICAgICogRmxleCBJdGVtIOWxnuaAp++8jOihqOekuiBncm93IOOAgXNocmluayDjgIFiYXNpc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUZsZXhJdGVtOiAnZmlsbCcgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBGbGV3IEdyb3fvvIzorr7nva7miJbmo4DntKLlvLnmgKfnm5LlrZDnmoTmianlsZXmr5TnjofvvIzorr7nva4gMSDkuLrloavlhYXliankvZnljLrln59cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlHcm93OiBUaHlGbGV4R3JvdztcblxuICAgIC8qKlxuICAgICAqIEZsZXggU2hyaW5r77yM6K6+572u5oiW5qOA57Si5by55oCn55uS5pS257yp5q+U5L6LXG4gICAgICogQGRlZmF1bHQgMVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVNocmluazogVGh5RmxleFNocmluaztcblxuICAgIC8qKlxuICAgICAqIEZsZXggQmFzaXPvvIzorr7nva7miJbmo4DntKLlvLnmgKfnm5LkvLjnvKnln7rlh4blgLxcbiAgICAgKiBAZGVmYXVsdCAxXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5QmFzaXM6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChoYXNMYXRlckNoYW5nZShjaGFuZ2VzKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUNsYXNzZXMoKSB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdmbGV4JywgJycpO1xuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci5zZXRTdHlsZSgnYmFzaXMnLCAnJyk7XG4gICAgICAgIGlmICh0aGlzLnRoeUZsZXhJdGVtKSB7XG4gICAgICAgICAgICBpZiAodGhpcy50aHlGbGV4SXRlbSA9PT0gJ2ZpbGwnKSB7XG4gICAgICAgICAgICAgICAgY2xhc3Nlcy5wdXNoKGBmbGV4LSR7dGhpcy50aHlGbGV4SXRlbX1gKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2ZsZXgnLCB0aGlzLnRoeUZsZXhJdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHRoaXMudGh5R3JvdykpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaChgZmxleC1ncm93LSR7dGhpcy50aHlHcm93fWApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNVbmRlZmluZWRPck51bGwodGhpcy50aHlTaHJpbmspKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goYGZsZXgtc2hyaW5rLSR7dGhpcy50aHlTaHJpbmt9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc1VuZGVmaW5lZE9yTnVsbCh0aGlzLnRoeUJhc2lzKSkge1xuICAgICAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2ZsZXgtYmFzaXMnLCB0aGlzLnRoeUJhc2lzKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci51cGRhdGVDbGFzcyhjbGFzc2VzKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWZsZXgtaXRlbScsXG4gICAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGltcG9ydHM6IFtUaHlGbGV4SXRlbV0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgZGlyZWN0aXZlOiBUaHlGbGV4SXRlbSxcbiAgICAgICAgICAgIGlucHV0czogWyd0aHlGbGV4SXRlbScsICd0aHlHcm93JywgJ3RoeVNocmluaycsICd0aHlCYXNpcyddXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUZsZXhJdGVtQ29tcG9uZW50IHt9XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZVN0YXJ0RW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gJ2ZsZXgtc3RhcnQnID8gJ3N0YXJ0JyA6IHZhbHVlID09PSAnZmxleC1lbmQnID8gJ2VuZCcgOiB2YWx1ZTtcbn1cbiJdfQ==
|
package/esm2022/grid/module.mjs
CHANGED
|
@@ -1,20 +1,56 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { ThyRowDirective } from './thy-row.directive';
|
|
3
3
|
import { ThyColDirective } from './thy-col.directive';
|
|
4
|
-
import { ThyGridComponent } from './thy-grid.component';
|
|
4
|
+
import { ThyGrid, ThyGridComponent } from './thy-grid.component';
|
|
5
5
|
import { ThyGridItemComponent } from './thy-grid-item.component';
|
|
6
|
-
import { ThyFlex, ThyFlexItem } from './flex';
|
|
6
|
+
import { ThyFlex, ThyFlexComponent, ThyFlexItem, ThyFlexItemComponent } from './flex';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class ThyGridModule {
|
|
9
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: ThyGridModule, imports: [
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: ThyGridModule, imports: [ThyGrid,
|
|
11
|
+
ThyGridComponent,
|
|
12
|
+
ThyGridItemComponent,
|
|
13
|
+
ThyRowDirective,
|
|
14
|
+
ThyColDirective,
|
|
15
|
+
ThyFlex,
|
|
16
|
+
ThyFlexItem,
|
|
17
|
+
ThyFlexComponent,
|
|
18
|
+
ThyFlexItemComponent], exports: [ThyGrid,
|
|
19
|
+
ThyGridComponent,
|
|
20
|
+
ThyGridItemComponent,
|
|
21
|
+
ThyRowDirective,
|
|
22
|
+
ThyColDirective,
|
|
23
|
+
ThyFlex,
|
|
24
|
+
ThyFlexItem,
|
|
25
|
+
ThyFlexComponent,
|
|
26
|
+
ThyFlexItemComponent] }); }
|
|
11
27
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridModule }); }
|
|
12
28
|
}
|
|
13
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridModule, decorators: [{
|
|
14
30
|
type: NgModule,
|
|
15
31
|
args: [{
|
|
16
|
-
exports: [
|
|
17
|
-
|
|
32
|
+
exports: [
|
|
33
|
+
ThyGrid,
|
|
34
|
+
ThyGridComponent,
|
|
35
|
+
ThyGridItemComponent,
|
|
36
|
+
ThyRowDirective,
|
|
37
|
+
ThyColDirective,
|
|
38
|
+
ThyFlex,
|
|
39
|
+
ThyFlexItem,
|
|
40
|
+
ThyFlexComponent,
|
|
41
|
+
ThyFlexItemComponent
|
|
42
|
+
],
|
|
43
|
+
imports: [
|
|
44
|
+
ThyGrid,
|
|
45
|
+
ThyGridComponent,
|
|
46
|
+
ThyGridItemComponent,
|
|
47
|
+
ThyRowDirective,
|
|
48
|
+
ThyColDirective,
|
|
49
|
+
ThyFlex,
|
|
50
|
+
ThyFlexItem,
|
|
51
|
+
ThyFlexComponent,
|
|
52
|
+
ThyFlexItemComponent
|
|
53
|
+
]
|
|
18
54
|
}]
|
|
19
55
|
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyaWQvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxRQUFRLENBQUM7O0FBMEJ0RixNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFYbEIsT0FBTztZQUNQLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsZUFBZTtZQUNmLGVBQWU7WUFDZixPQUFPO1lBQ1AsV0FBVztZQUNYLGdCQUFnQjtZQUNoQixvQkFBb0IsYUFuQnBCLE9BQU87WUFDUCxnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLGVBQWU7WUFDZixlQUFlO1lBQ2YsT0FBTztZQUNQLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsb0JBQW9COytHQWNmLGFBQWE7OzJGQUFiLGFBQWE7a0JBeEJ6QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsT0FBTzt3QkFDUCxXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsT0FBTzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjtxQkFDdkI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5Um93RGlyZWN0aXZlIH0gZnJvbSAnLi90aHktcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUaHlDb2xEaXJlY3RpdmUgfSBmcm9tICcuL3RoeS1jb2wuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRoeUdyaWQsIFRoeUdyaWRDb21wb25lbnQgfSBmcm9tICcuL3RoeS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaHlHcmlkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdGh5LWdyaWQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5RmxleCwgVGh5RmxleENvbXBvbmVudCwgVGh5RmxleEl0ZW0sIFRoeUZsZXhJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9mbGV4JztcblxuQE5nTW9kdWxlKHtcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFRoeUdyaWQsXG4gICAgICAgIFRoeUdyaWRDb21wb25lbnQsXG4gICAgICAgIFRoeUdyaWRJdGVtQ29tcG9uZW50LFxuICAgICAgICBUaHlSb3dEaXJlY3RpdmUsXG4gICAgICAgIFRoeUNvbERpcmVjdGl2ZSxcbiAgICAgICAgVGh5RmxleCxcbiAgICAgICAgVGh5RmxleEl0ZW0sXG4gICAgICAgIFRoeUZsZXhDb21wb25lbnQsXG4gICAgICAgIFRoeUZsZXhJdGVtQ29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFRoeUdyaWQsXG4gICAgICAgIFRoeUdyaWRDb21wb25lbnQsXG4gICAgICAgIFRoeUdyaWRJdGVtQ29tcG9uZW50LFxuICAgICAgICBUaHlSb3dEaXJlY3RpdmUsXG4gICAgICAgIFRoeUNvbERpcmVjdGl2ZSxcbiAgICAgICAgVGh5RmxleCxcbiAgICAgICAgVGh5RmxleEl0ZW0sXG4gICAgICAgIFRoeUZsZXhDb21wb25lbnQsXG4gICAgICAgIFRoeUZsZXhJdGVtQ29tcG9uZW50XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlHcmlkTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ViewportRuler } from '@angular/cdk/scrolling';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, Input, NgZone, QueryList } from '@angular/core';
|
|
3
|
-
import {
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ContentChildren, Directive, ElementRef, Input, NgZone, QueryList, inject } from '@angular/core';
|
|
3
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { Observable, Subject } from 'rxjs';
|
|
5
|
-
import {
|
|
5
|
+
import { throttleTime } from 'rxjs/operators';
|
|
6
6
|
import { THY_GRID_COMPONENT } from './grid.token';
|
|
7
7
|
import { ThyGridItemComponent } from './thy-grid-item.component';
|
|
8
8
|
import { useHostRenderer } from '@tethys/cdk/dom';
|
|
@@ -22,9 +22,9 @@ export const screenBreakpointsMap = {
|
|
|
22
22
|
* @name thy-grid, [thyGrid]
|
|
23
23
|
* @order 10
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
// eslint-disable-next-line @angular-eslint/directive-class-suffix
|
|
26
|
+
export class ThyGrid {
|
|
26
27
|
constructor(elementRef, viewportRuler, ngZone) {
|
|
27
|
-
super();
|
|
28
28
|
this.elementRef = elementRef;
|
|
29
29
|
this.viewportRuler = viewportRuler;
|
|
30
30
|
this.ngZone = ngZone;
|
|
@@ -55,6 +55,7 @@ export class ThyGridComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
55
55
|
this.hostRenderer = useHostRenderer();
|
|
56
56
|
this.numRegex = /^\d+$/;
|
|
57
57
|
this.gridItemPropValueChange$ = new Subject();
|
|
58
|
+
this.takeUntilDestroyed = takeUntilDestroyed();
|
|
58
59
|
}
|
|
59
60
|
ngOnInit() {
|
|
60
61
|
this.setGridStyle();
|
|
@@ -62,9 +63,10 @@ export class ThyGridComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
62
63
|
this.listenResizeEvent();
|
|
63
64
|
}
|
|
64
65
|
}
|
|
66
|
+
ngOnChanges(changes) { }
|
|
65
67
|
ngAfterContentInit() {
|
|
66
68
|
this.handleGridItems();
|
|
67
|
-
this.gridItems.changes.pipe(
|
|
69
|
+
this.gridItems.changes.pipe(this.takeUntilDestroyed).subscribe(() => {
|
|
68
70
|
Promise.resolve().then(() => {
|
|
69
71
|
this.handleGridItems();
|
|
70
72
|
});
|
|
@@ -88,7 +90,7 @@ export class ThyGridComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
88
90
|
if (this.thyResponsive === 'screen') {
|
|
89
91
|
this.viewportRuler
|
|
90
92
|
.change(100)
|
|
91
|
-
.pipe(
|
|
93
|
+
.pipe(this.takeUntilDestroyed)
|
|
92
94
|
.subscribe(() => {
|
|
93
95
|
this.responsiveContainerWidth = this.viewportRuler.getViewportSize().width;
|
|
94
96
|
this.setGridStyle();
|
|
@@ -98,7 +100,7 @@ export class ThyGridComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
98
100
|
else {
|
|
99
101
|
this.ngZone.runOutsideAngular(() => {
|
|
100
102
|
this.gridResizeObserver(this.elementRef.nativeElement)
|
|
101
|
-
.pipe(throttleTime(100),
|
|
103
|
+
.pipe(throttleTime(100), this.takeUntilDestroyed)
|
|
102
104
|
.subscribe(data => {
|
|
103
105
|
this.responsiveContainerWidth = data[0]?.contentRect?.width;
|
|
104
106
|
this.setGridStyle();
|
|
@@ -175,27 +177,22 @@ export class ThyGridComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
175
177
|
};
|
|
176
178
|
});
|
|
177
179
|
}
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridComponent, deps: [{ token: i0.ElementRef }, { token: i1.ViewportRuler }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
182
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: ThyGridComponent, isStandalone: true, selector: "thy-grid, [thyGrid]", inputs: { thyCols: "thyCols", thyXGap: "thyXGap", thyYGap: "thyYGap", thyGap: "thyGap", thyResponsive: "thyResponsive" }, host: { classAttribute: "thy-grid" }, providers: [
|
|
180
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGrid, deps: [{ token: i0.ElementRef }, { token: i1.ViewportRuler }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
181
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: ThyGrid, isStandalone: true, selector: "[thyGrid]", inputs: { thyCols: "thyCols", thyXGap: "thyXGap", thyYGap: "thyYGap", thyGap: "thyGap", thyResponsive: "thyResponsive" }, host: { classAttribute: "thy-grid" }, providers: [
|
|
183
182
|
{
|
|
184
183
|
provide: THY_GRID_COMPONENT,
|
|
185
|
-
useExisting:
|
|
184
|
+
useExisting: ThyGrid
|
|
186
185
|
}
|
|
187
|
-
], queries: [{ propertyName: "gridItems", predicate: ThyGridItemComponent }],
|
|
186
|
+
], queries: [{ propertyName: "gridItems", predicate: ThyGridItemComponent }], usesOnChanges: true, ngImport: i0 }); }
|
|
188
187
|
}
|
|
189
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type:
|
|
190
|
-
type:
|
|
188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGrid, decorators: [{
|
|
189
|
+
type: Directive,
|
|
191
190
|
args: [{
|
|
192
|
-
selector: '
|
|
193
|
-
template: '<ng-content></ng-content>',
|
|
194
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
191
|
+
selector: '[thyGrid]',
|
|
195
192
|
providers: [
|
|
196
193
|
{
|
|
197
194
|
provide: THY_GRID_COMPONENT,
|
|
198
|
-
useExisting:
|
|
195
|
+
useExisting: ThyGrid
|
|
199
196
|
}
|
|
200
197
|
],
|
|
201
198
|
host: {
|
|
@@ -217,7 +214,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
217
214
|
}], thyResponsive: [{
|
|
218
215
|
type: Input
|
|
219
216
|
}] } });
|
|
217
|
+
/**
|
|
218
|
+
* @internal
|
|
219
|
+
*/
|
|
220
|
+
export class ThyGridComponent {
|
|
221
|
+
constructor() {
|
|
222
|
+
this.grid = inject(ThyGrid);
|
|
223
|
+
}
|
|
224
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
225
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: ThyGridComponent, isStandalone: true, selector: "thy-grid", providers: [
|
|
226
|
+
{
|
|
227
|
+
provide: THY_GRID_COMPONENT,
|
|
228
|
+
useExisting: ThyGrid
|
|
229
|
+
}
|
|
230
|
+
], hostDirectives: [{ directive: ThyGrid, inputs: ["thyCols", "thyCols", "thyXGap", "thyXGap", "thyYGap", "thyYGap", "thyGap", "thyGap", "thyResponsive", "thyResponsive"] }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
231
|
+
}
|
|
232
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyGridComponent, decorators: [{
|
|
233
|
+
type: Component,
|
|
234
|
+
args: [{
|
|
235
|
+
selector: 'thy-grid',
|
|
236
|
+
template: '<ng-content></ng-content>',
|
|
237
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
238
|
+
standalone: true,
|
|
239
|
+
imports: [ThyGrid],
|
|
240
|
+
providers: [
|
|
241
|
+
{
|
|
242
|
+
provide: THY_GRID_COMPONENT,
|
|
243
|
+
useExisting: ThyGrid
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
hostDirectives: [
|
|
247
|
+
{
|
|
248
|
+
directive: ThyGrid,
|
|
249
|
+
inputs: ['thyCols', 'thyXGap', 'thyYGap', 'thyGap', 'thyResponsive']
|
|
250
|
+
}
|
|
251
|
+
]
|
|
252
|
+
}]
|
|
253
|
+
}] });
|
|
220
254
|
function getRawSpan(span) {
|
|
221
255
|
return span === undefined || span === null ? THY_GRID_ITEM_DEFAULT_SPAN : span;
|
|
222
256
|
}
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGh5LWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyaWQvdGh5LWdyaWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBR04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFNbEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsRUFBRSxDQUFDO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRztJQUNoQyxFQUFFLEVBQUUsQ0FBQztJQUNMLEVBQUUsRUFBRSxHQUFHO0lBQ1AsRUFBRSxFQUFFLEdBQUc7SUFDUCxFQUFFLEVBQUUsR0FBRztJQUNQLEVBQUUsRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQUVGOzs7O0dBSUc7QUFnQkgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztJQWlEN0QsWUFBb0IsVUFBc0IsRUFBVSxhQUE0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QkFDcEI7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CO2tKQUswQyxTQUFTO3NCQUEvQyxlQUFlO3VCQUFDLG9CQUFvQjtnQkFNNUIsT0FBTztzQkFBZixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csTUFBTTtzQkFBZCxLQUFLO2dCQVFHLGFBQWE7c0JBQXJCLEtBQUs7O0FBeUpWLFNBQVMsVUFBVSxDQUFDLElBQThEO0lBQzlFLE9BQU8sSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ25GLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3cG9ydFJ1bGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIFF1ZXJ5TGlzdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1peGluQmFzZSwgbWl4aW5VbnN1YnNjcmliZSB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRoeUdyaWRUb2tlbiwgVEhZX0dSSURfQ09NUE9ORU5UIH0gZnJvbSAnLi9ncmlkLnRva2VuJztcbmltcG9ydCB7IFRoeUdyaWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi90aHktZ3JpZC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB1c2VIb3N0UmVuZGVyZXIgfSBmcm9tICdAdGV0aHlzL2Nkay9kb20nO1xuXG5leHBvcnQgdHlwZSBUaHlHcmlkUmVzcG9uc2l2ZU1vZGUgPSAnbm9uZScgfCAnc2VsZicgfCAnc2NyZWVuJztcblxuZXhwb3J0IHR5cGUgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiA9IHN0cmluZztcblxuZXhwb3J0IGNvbnN0IFRIWV9HUklEX0RFRkFVTFRfQ09MVU1OUyA9IDI0O1xuXG5leHBvcnQgY29uc3QgVEhZX0dSSURfSVRFTV9ERUZBVUxUX1NQQU4gPSAxO1xuXG5leHBvcnQgY29uc3Qgc2NyZWVuQnJlYWtwb2ludHNNYXAgPSB7XG4gICAgeHM6IDAsXG4gICAgc206IDU3NixcbiAgICBtZDogNzY4LFxuICAgIGxnOiA5OTIsXG4gICAgeGw6IDEyMDBcbn07XG5cbi8qKlxuICog5qCF5qC857uE5Lu2XG4gKiBAbmFtZSB0aHktZ3JpZCwgW3RoeUdyaWRdXG4gKiBAb3JkZXIgMTBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktZ3JpZCwgW3RoeUdyaWRdJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUSFlfR1JJRF9DT01QT05FTlQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogVGh5R3JpZENvbXBvbmVudFxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWdyaWQnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeUdyaWRDb21wb25lbnQgZXh0ZW5kcyBtaXhpblVuc3Vic2NyaWJlKE1peGluQmFzZSkgaW1wbGVtZW50cyBUaHlHcmlkVG9rZW4sIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKFRoeUdyaWRJdGVtQ29tcG9uZW50KSBncmlkSXRlbXMhOiBRdWVyeUxpc3Q8VGh5R3JpZEl0ZW1Db21wb25lbnQ+O1xuXG4gICAgLyoqXG4gICAgICog5qCF5qC855qE5YiX5pWwXG4gICAgICogQGRlZmF1bHQgMjRcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlDb2xzOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uID0gVEhZX0dSSURfREVGQVVMVF9DT0xVTU5TO1xuXG4gICAgLyoqXG4gICAgICog5qCF5qC855qE5rC05bmz6Ze06ZqUXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5WEdhcDogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiA9IDA7XG5cbiAgICAvKipcbiAgICAgKiDmoIXmoLznmoTlnoLnm7Tpl7TpmpRcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlZR2FwOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uID0gMDtcblxuICAgIC8qKlxuICAgICAqIOagheagvOeahOawtOW5s+WSjOWeguebtOmXtOmalFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUdhcDogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiA9IDA7XG5cbiAgICAvKipcbiAgICAgKiDlk43lupTlvI/moIXmoLzliJfmlbA8YnIvPlxuICAgICAqIG5vbmU6IOS4jei/m+ihjOWTjeW6lOW8j+W4g+WxgOOAgjxici8+XG4gICAgICogc2VsZu+8muagueaNrmdyaWTnmoToh6rouqvlrr3luqbov5vooYzlk43lupTlvI/luIPlsYDjgII8YnIvPlxuICAgICAqIHNjcmVlbu+8muagueaNruWxj+W5leaWreeCuei/m+ihjOWTjeW6lOW8j+W4g+WxgO+8jOebruWJjemihOiuvuS6hjXnp43lk43lupTlvI/lsLrlr7jvvJpgeHM6IDAsIHNtOiA1NzYsIG1kOiA3NjgsIGxnOiA5OTIsIHhsOiAxMjAwYOOAglxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVJlc3BvbnNpdmU6IFRoeUdyaWRSZXNwb25zaXZlTW9kZSA9ICdub25lJztcblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICBwcml2YXRlIGNvbHM6IG51bWJlcjtcblxuICAgIHB1YmxpYyB4R2FwOiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHlHYXA6IG51bWJlcjtcblxuICAgIHByaXZhdGUgbnVtUmVnZXggPSAvXlxcZCskLztcblxuICAgIHByaXZhdGUgcmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgZ3JpZEl0ZW1Qcm9wVmFsdWVDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSB2aWV3cG9ydFJ1bGVyOiBWaWV3cG9ydFJ1bGVyLCBwcml2YXRlIG5nWm9uZTogTmdab25lKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0R3JpZFN0eWxlKCk7XG5cbiAgICAgICAgaWYgKHRoaXMudGh5UmVzcG9uc2l2ZSAhPT0gJ25vbmUnKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RlblJlc2l6ZUV2ZW50KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFuZGxlR3JpZEl0ZW1zKCk7XG5cbiAgICAgICAgdGhpcy5ncmlkSXRlbXMuY2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlR3JpZEl0ZW1zKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRHcmlkU3R5bGUoKSB7XG4gICAgICAgIHRoaXMuY29scyA9IHRoaXMuY2FsY3VsYXRlQWN0dWFsVmFsdWUodGhpcy50aHlDb2xzIHx8IFRIWV9HUklEX0RFRkFVTFRfQ09MVU1OUywgVEhZX0dSSURfREVGQVVMVF9DT0xVTU5TKTtcbiAgICAgICAgaWYgKCF0aGlzLnRoeVhHYXAgJiYgIXRoaXMudGh5WUdhcCkge1xuICAgICAgICAgICAgdGhpcy54R2FwID0gdGhpcy5jYWxjdWxhdGVBY3R1YWxWYWx1ZSh0aGlzLnRoeUdhcCB8fCAwKTtcbiAgICAgICAgICAgIHRoaXMueUdhcCA9IHRoaXMueEdhcDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMueEdhcCA9IHRoaXMuY2FsY3VsYXRlQWN0dWFsVmFsdWUodGhpcy50aHlYR2FwIHx8IHRoaXMudGh5R2FwKTtcbiAgICAgICAgICAgIHRoaXMueUdhcCA9IHRoaXMuY2FsY3VsYXRlQWN0dWFsVmFsdWUodGhpcy50aHlZR2FwIHx8IHRoaXMudGh5R2FwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdkaXNwbGF5JywgJ2dyaWQnKTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2dyaWQtdGVtcGxhdGUtY29sdW1ucycsIGByZXBlYXQoJHt0aGlzLmNvbHN9LCBtaW5tYXgoMCwgMWZyKSlgKTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuc2V0U3R5bGUoJ2dhcCcsIGAke3RoaXMueUdhcH1weCAke3RoaXMueEdhcH1weGApO1xuICAgIH1cblxuICAgIHByaXZhdGUgbGlzdGVuUmVzaXplRXZlbnQoKSB7XG4gICAgICAgIGlmICh0aGlzLnRoeVJlc3BvbnNpdmUgPT09ICdzY3JlZW4nKSB7XG4gICAgICAgICAgICB0aGlzLnZpZXdwb3J0UnVsZXJcbiAgICAgICAgICAgICAgICAuY2hhbmdlKDEwMClcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlJCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoID0gdGhpcy52aWV3cG9ydFJ1bGVyLmdldFZpZXdwb3J0U2l6ZSgpLndpZHRoO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEdyaWRTdHlsZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdyaWRJdGVtcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFJlc2l6ZU9ic2VydmVyKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUoMTAwKSwgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSQpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNwb25zaXZlQ29udGFpbmVyV2lkdGggPSBkYXRhWzBdPy5jb250ZW50UmVjdD8ud2lkdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEdyaWRTdHlsZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVHcmlkSXRlbXMoKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlR3JpZEl0ZW1zKCkge1xuICAgICAgICB0aGlzLmdyaWRJdGVtcy5mb3JFYWNoKChncmlkSXRlbTogVGh5R3JpZEl0ZW1Db21wb25lbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJhd1NwYW4gPSBnZXRSYXdTcGFuKGdyaWRJdGVtLnRoeVNwYW4pO1xuICAgICAgICAgICAgY29uc3Qgc3BhbiA9IHRoaXMuY2FsY3VsYXRlQWN0dWFsVmFsdWUocmF3U3BhbiwgVEhZX0dSSURfSVRFTV9ERUZBVUxUX1NQQU4pO1xuICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdGhpcy5jYWxjdWxhdGVBY3R1YWxWYWx1ZShncmlkSXRlbS50aHlPZmZzZXQgfHwgMCk7XG5cbiAgICAgICAgICAgIGdyaWRJdGVtLnNwYW4gPSBNYXRoLm1pbihzcGFuICsgb2Zmc2V0LCB0aGlzLmNvbHMpO1xuICAgICAgICAgICAgZ3JpZEl0ZW0ub2Zmc2V0ID0gb2Zmc2V0O1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmdyaWRJdGVtUHJvcFZhbHVlQ2hhbmdlJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVBY3R1YWxWYWx1ZShyYXdWYWx1ZTogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiwgZGVmYXVsdFZhbHVlPzogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMubnVtUmVnZXgudGVzdChyYXdWYWx1ZS50b1N0cmluZygpLnRyaW0oKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBOdW1iZXIocmF3VmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2l2ZVZhbHVlTWFwID0gdGhpcy5nZXRSZXNwb25zaXZlVmFsdWVNYXAocmF3VmFsdWUgYXMgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbik7XG4gICAgICAgICAgICBjb25zdCBicmVha3BvaW50S2V5cyA9IE9iamVjdC5rZXlzKHJlc3BvbnNpdmVWYWx1ZU1hcCk7XG4gICAgICAgICAgICBjb25zdCBicmVha3BvaW50ID0gdGhpcy5jYWxjdWxhdGVCcmVha1BvaW50KGJyZWFrcG9pbnRLZXlzKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMudGh5UmVzcG9uc2l2ZSAhPT0gJ25vbmUnICYmIGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2l2ZVZhbHVlTWFwW2JyZWFrcG9pbnRdO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChicmVha3BvaW50S2V5cy5pbmNsdWRlcygnMCcpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNpdmVWYWx1ZU1hcFsnMCddO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVmYXVsdFZhbHVlIHx8IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJlc3BvbnNpdmVWYWx1ZU1hcChyZXNwb25zaXZlVmFsdWU6IHN0cmluZyk6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0ge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2l2ZVZhbHVlLnNwbGl0KCcgJykucmVkdWNlKChtYXA6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0sIGl0ZW06IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubnVtUmVnZXgudGVzdChpdGVtLnRvU3RyaW5nKCkpKSB7XG4gICAgICAgICAgICAgICAgaXRlbSA9IGAwOiR7aXRlbX1gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgW2tleSwgdmFsdWVdID0gaXRlbS5zcGxpdCgnOicpO1xuICAgICAgICAgICAgbWFwW2tleV0gPSBOdW1iZXIodmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIG1hcDtcbiAgICAgICAgfSwge30pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQnJlYWtQb2ludChicmVha3BvaW50S2V5czogc3RyaW5nW10pOiBzdHJpbmcge1xuICAgICAgICBpZiAodGhpcy50aHlSZXNwb25zaXZlID09PSAnc2NyZWVuJykge1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLnJlc3BvbnNpdmVDb250YWluZXJXaWR0aCB8fCB0aGlzLnZpZXdwb3J0UnVsZXIuZ2V0Vmlld3BvcnRTaXplKCkud2lkdGg7XG4gICAgICAgICAgICByZXR1cm4gYnJlYWtwb2ludEtleXMuZmluZCgoa2V5OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaW5kZXggPCBicmVha3BvaW50S2V5cy5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgID8gd2lkdGggPj0gc2NyZWVuQnJlYWtwb2ludHNNYXBba2V5XSAmJiB3aWR0aCA8IHNjcmVlbkJyZWFrcG9pbnRzTWFwW2JyZWFrcG9pbnRLZXlzW2luZGV4ICsgMV1dXG4gICAgICAgICAgICAgICAgICAgIDogd2lkdGggPj0gc2NyZWVuQnJlYWtwb2ludHNNYXBba2V5XTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLnJlc3BvbnNpdmVDb250YWluZXJXaWR0aCB8fCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgICAgICAgIHJldHVybiBicmVha3BvaW50S2V5cy5maW5kKChrZXk6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpbmRleCA8IGJyZWFrcG9pbnRLZXlzLmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICAgICAgPyB3aWR0aCA+PSBOdW1iZXIoa2V5KSAmJiB3aWR0aCA8IE51bWJlcihicmVha3BvaW50S2V5c1tpbmRleCArIDFdKVxuICAgICAgICAgICAgICAgICAgICA6IHdpZHRoID49IE51bWJlcihrZXkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdyaWRSZXNpemVPYnNlcnZlcihlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8UmVzaXplT2JzZXJ2ZXJFbnRyeVtdPiB7XG4gICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXNpemUgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXM6IFJlc2l6ZU9ic2VydmVyRW50cnlbXSkgPT4ge1xuICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQoZW50cmllcyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlc2l6ZS5vYnNlcnZlKGVsZW1lbnQpO1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNpemUuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBnZXRSYXdTcGFuKHNwYW46IG51bWJlciB8IFRoeUdyaWRSZXNwb25zaXZlRGVzY3JpcHRpb24gfCB1bmRlZmluZWQgfCBudWxsKTogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiB7XG4gICAgcmV0dXJuIHNwYW4gPT09IHVuZGVmaW5lZCB8fCBzcGFuID09PSBudWxsID8gVEhZX0dSSURfSVRFTV9ERUZBVUxUX1NQQU4gOiBzcGFuO1xufVxuIl19
|
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGh5LWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyaWQvdGh5LWdyaWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsRUFFVCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFPbEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsRUFBRSxDQUFDO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRztJQUNoQyxFQUFFLEVBQUUsQ0FBQztJQUNMLEVBQUUsRUFBRSxHQUFHO0lBQ1AsRUFBRSxFQUFFLEdBQUc7SUFDUCxFQUFFLEVBQUUsR0FBRztJQUNQLEVBQUUsRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQUVGOzs7O0dBSUc7QUFjSCxrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLE9BQU87SUFtRGhCLFlBQW9CLFVBQXNCLEVBQVUsYUFBNEIsRUFBVSxNQUFjO1FBQXBG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QUFNO3NCQUFkLEtBQUs7Z0JBUUcsYUFBYTtzQkFBckIsS0FBSzs7QUF1SlY7O0dBRUc7QUFvQkgsTUFBTSxPQUFPLGdCQUFnQjtJQW5CN0I7UUFvQkksU0FBSSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUMxQjs4R0FGWSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix1REFiZDtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFdBQVcsRUFBRSxPQUFPO2FBQ3ZCO1NBQ0osZ0NBdE1RLE9BQU8sK0pBNkxOLDJCQUEyQjs7MkZBaUI1QixnQkFBZ0I7a0JBbkI1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFdBQVcsRUFBRSxPQUFPO3lCQUN2QjtxQkFDSjtvQkFDRCxjQUFjLEVBQUU7d0JBQ1o7NEJBQ0ksU0FBUyxFQUFFLE9BQU87NEJBQ2xCLE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxlQUFlLENBQUM7eUJBQ3ZFO3FCQUNKO2lCQUNKOztBQUtELFNBQVMsVUFBVSxDQUFDLElBQThEO0lBQzlFLE9BQU8sSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ25GLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3cG9ydFJ1bGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0aHJvdHRsZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUaHlHcmlkVG9rZW4sIFRIWV9HUklEX0NPTVBPTkVOVCB9IGZyb20gJy4vZ3JpZC50b2tlbic7XG5pbXBvcnQgeyBUaHlHcmlkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdGh5LWdyaWQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgdXNlSG9zdFJlbmRlcmVyIH0gZnJvbSAnQHRldGh5cy9jZGsvZG9tJztcbmltcG9ydCB7IGhhc0xhdGVyQ2hhbmdlIH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuZXhwb3J0IHR5cGUgVGh5R3JpZFJlc3BvbnNpdmVNb2RlID0gJ25vbmUnIHwgJ3NlbGYnIHwgJ3NjcmVlbic7XG5cbmV4cG9ydCB0eXBlIFRoeUdyaWRSZXNwb25zaXZlRGVzY3JpcHRpb24gPSBzdHJpbmc7XG5cbmV4cG9ydCBjb25zdCBUSFlfR1JJRF9ERUZBVUxUX0NPTFVNTlMgPSAyNDtcblxuZXhwb3J0IGNvbnN0IFRIWV9HUklEX0lURU1fREVGQVVMVF9TUEFOID0gMTtcblxuZXhwb3J0IGNvbnN0IHNjcmVlbkJyZWFrcG9pbnRzTWFwID0ge1xuICAgIHhzOiAwLFxuICAgIHNtOiA1NzYsXG4gICAgbWQ6IDc2OCxcbiAgICBsZzogOTkyLFxuICAgIHhsOiAxMjAwXG59O1xuXG4vKipcbiAqIOagheagvOe7hOS7tlxuICogQG5hbWUgdGh5LWdyaWQsIFt0aHlHcmlkXVxuICogQG9yZGVyIDEwXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3RoeUdyaWRdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVEhZX0dSSURfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFRoeUdyaWRcbiAgICAgICAgfVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS1ncmlkJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGNsYXNzIFRoeUdyaWQgaW1wbGVtZW50cyBUaHlHcmlkVG9rZW4sIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0IHtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKFRoeUdyaWRJdGVtQ29tcG9uZW50KSBncmlkSXRlbXMhOiBRdWVyeUxpc3Q8VGh5R3JpZEl0ZW1Db21wb25lbnQ+O1xuXG4gICAgLyoqXG4gICAgICog5qCF5qC855qE5YiX5pWwXG4gICAgICogQGRlZmF1bHQgMjRcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlDb2xzOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uID0gVEhZX0dSSURfREVGQVVMVF9DT0xVTU5TO1xuXG4gICAgLyoqXG4gICAgICog5qCF5qC855qE5rC05bmz6Ze06ZqUXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5WEdhcDogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiA9IDA7XG5cbiAgICAvKipcbiAgICAgKiDmoIXmoLznmoTlnoLnm7Tpl7TpmpRcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlZR2FwOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uID0gMDtcblxuICAgIC8qKlxuICAgICAqIOagheagvOeahOawtOW5s+WSjOWeguebtOmXtOmalFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUdhcDogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiA9IDA7XG5cbiAgICAvKipcbiAgICAgKiDlk43lupTlvI/moIXmoLzliJfmlbA8YnIvPlxuICAgICAqIG5vbmU6IOS4jei/m+ihjOWTjeW6lOW8j+W4g+WxgOOAgjxici8+XG4gICAgICogc2VsZu+8muagueaNrmdyaWTnmoToh6rouqvlrr3luqbov5vooYzlk43lupTlvI/luIPlsYDjgII8YnIvPlxuICAgICAqIHNjcmVlbu+8muagueaNruWxj+W5leaWreeCuei/m+ihjOWTjeW6lOW8j+W4g+WxgO+8jOebruWJjemihOiuvuS6hjXnp43lk43lupTlvI/lsLrlr7jvvJpgeHM6IDAsIHNtOiA1NzYsIG1kOiA3NjgsIGxnOiA5OTIsIHhsOiAxMjAwYOOAglxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVJlc3BvbnNpdmU6IFRoeUdyaWRSZXNwb25zaXZlTW9kZSA9ICdub25lJztcblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICBwcml2YXRlIGNvbHM6IG51bWJlcjtcblxuICAgIHB1YmxpYyB4R2FwOiBudW1iZXI7XG5cbiAgICBwcml2YXRlIHlHYXA6IG51bWJlcjtcblxuICAgIHByaXZhdGUgbnVtUmVnZXggPSAvXlxcZCskLztcblxuICAgIHByaXZhdGUgcmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgZ3JpZEl0ZW1Qcm9wVmFsdWVDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgdGFrZVVudGlsRGVzdHJveWVkID0gdGFrZVVudGlsRGVzdHJveWVkKCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgdmlld3BvcnRSdWxlcjogVmlld3BvcnRSdWxlciwgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEdyaWRTdHlsZSgpO1xuXG4gICAgICAgIGlmICh0aGlzLnRoeVJlc3BvbnNpdmUgIT09ICdub25lJykge1xuICAgICAgICAgICAgdGhpcy5saXN0ZW5SZXNpemVFdmVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYW5kbGVHcmlkSXRlbXMoKTtcblxuICAgICAgICB0aGlzLmdyaWRJdGVtcy5jaGFuZ2VzLnBpcGUodGhpcy50YWtlVW50aWxEZXN0cm95ZWQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdyaWRJdGVtcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0R3JpZFN0eWxlKCkge1xuICAgICAgICB0aGlzLmNvbHMgPSB0aGlzLmNhbGN1bGF0ZUFjdHVhbFZhbHVlKHRoaXMudGh5Q29scyB8fCBUSFlfR1JJRF9ERUZBVUxUX0NPTFVNTlMsIFRIWV9HUklEX0RFRkFVTFRfQ09MVU1OUyk7XG4gICAgICAgIGlmICghdGhpcy50aHlYR2FwICYmICF0aGlzLnRoeVlHYXApIHtcbiAgICAgICAgICAgIHRoaXMueEdhcCA9IHRoaXMuY2FsY3VsYXRlQWN0dWFsVmFsdWUodGhpcy50aHlHYXAgfHwgMCk7XG4gICAgICAgICAgICB0aGlzLnlHYXAgPSB0aGlzLnhHYXA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnhHYXAgPSB0aGlzLmNhbGN1bGF0ZUFjdHVhbFZhbHVlKHRoaXMudGh5WEdhcCB8fCB0aGlzLnRoeUdhcCk7XG4gICAgICAgICAgICB0aGlzLnlHYXAgPSB0aGlzLmNhbGN1bGF0ZUFjdHVhbFZhbHVlKHRoaXMudGh5WUdhcCB8fCB0aGlzLnRoeUdhcCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmhvc3RSZW5kZXJlci5zZXRTdHlsZSgnZGlzcGxheScsICdncmlkJyk7XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdncmlkLXRlbXBsYXRlLWNvbHVtbnMnLCBgcmVwZWF0KCR7dGhpcy5jb2xzfSwgbWlubWF4KDAsIDFmcikpYCk7XG4gICAgICAgIHRoaXMuaG9zdFJlbmRlcmVyLnNldFN0eWxlKCdnYXAnLCBgJHt0aGlzLnlHYXB9cHggJHt0aGlzLnhHYXB9cHhgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxpc3RlblJlc2l6ZUV2ZW50KCkge1xuICAgICAgICBpZiAodGhpcy50aHlSZXNwb25zaXZlID09PSAnc2NyZWVuJykge1xuICAgICAgICAgICAgdGhpcy52aWV3cG9ydFJ1bGVyXG4gICAgICAgICAgICAgICAgLmNoYW5nZSgxMDApXG4gICAgICAgICAgICAgICAgLnBpcGUodGhpcy50YWtlVW50aWxEZXN0cm95ZWQpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoID0gdGhpcy52aWV3cG9ydFJ1bGVyLmdldFZpZXdwb3J0U2l6ZSgpLndpZHRoO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEdyaWRTdHlsZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdyaWRJdGVtcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFJlc2l6ZU9ic2VydmVyKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUoMTAwKSwgdGhpcy50YWtlVW50aWxEZXN0cm95ZWQpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNpdmVDb250YWluZXJXaWR0aCA9IGRhdGFbMF0/LmNvbnRlbnRSZWN0Py53aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0R3JpZFN0eWxlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdyaWRJdGVtcygpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVHcmlkSXRlbXMoKSB7XG4gICAgICAgIHRoaXMuZ3JpZEl0ZW1zLmZvckVhY2goKGdyaWRJdGVtOiBUaHlHcmlkSXRlbUNvbXBvbmVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmF3U3BhbiA9IGdldFJhd1NwYW4oZ3JpZEl0ZW0udGh5U3Bhbik7XG4gICAgICAgICAgICBjb25zdCBzcGFuID0gdGhpcy5jYWxjdWxhdGVBY3R1YWxWYWx1ZShyYXdTcGFuLCBUSFlfR1JJRF9JVEVNX0RFRkFVTFRfU1BBTik7XG4gICAgICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLmNhbGN1bGF0ZUFjdHVhbFZhbHVlKGdyaWRJdGVtLnRoeU9mZnNldCB8fCAwKTtcblxuICAgICAgICAgICAgZ3JpZEl0ZW0uc3BhbiA9IE1hdGgubWluKHNwYW4gKyBvZmZzZXQsIHRoaXMuY29scyk7XG4gICAgICAgICAgICBncmlkSXRlbS5vZmZzZXQgPSBvZmZzZXQ7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZ3JpZEl0ZW1Qcm9wVmFsdWVDaGFuZ2UkLm5leHQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUFjdHVhbFZhbHVlKHJhd1ZhbHVlOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uLCBkZWZhdWx0VmFsdWU/OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBpZiAodGhpcy5udW1SZWdleC50ZXN0KHJhd1ZhbHVlLnRvU3RyaW5nKCkudHJpbSgpKSkge1xuICAgICAgICAgICAgcmV0dXJuIE51bWJlcihyYXdWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zaXZlVmFsdWVNYXAgPSB0aGlzLmdldFJlc3BvbnNpdmVWYWx1ZU1hcChyYXdWYWx1ZSBhcyBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IGJyZWFrcG9pbnRLZXlzID0gT2JqZWN0LmtleXMocmVzcG9uc2l2ZVZhbHVlTWFwKTtcbiAgICAgICAgICAgIGNvbnN0IGJyZWFrcG9pbnQgPSB0aGlzLmNhbGN1bGF0ZUJyZWFrUG9pbnQoYnJlYWtwb2ludEtleXMpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy50aHlSZXNwb25zaXZlICE9PSAnbm9uZScgJiYgYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zaXZlVmFsdWVNYXBbYnJlYWtwb2ludF07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGJyZWFrcG9pbnRLZXlzLmluY2x1ZGVzKCcwJykpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2l2ZVZhbHVlTWFwWycwJ107XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBkZWZhdWx0VmFsdWUgfHwgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UmVzcG9uc2l2ZVZhbHVlTWFwKHJlc3BvbnNpdmVWYWx1ZTogc3RyaW5nKTogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfSB7XG4gICAgICAgIHJldHVybiByZXNwb25zaXZlVmFsdWUuc3BsaXQoJyAnKS5yZWR1Y2UoKG1hcDogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfSwgaXRlbTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5udW1SZWdleC50ZXN0KGl0ZW0udG9TdHJpbmcoKSkpIHtcbiAgICAgICAgICAgICAgICBpdGVtID0gYDA6JHtpdGVtfWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBba2V5LCB2YWx1ZV0gPSBpdGVtLnNwbGl0KCc6Jyk7XG4gICAgICAgICAgICBtYXBba2V5XSA9IE51bWJlcih2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gbWFwO1xuICAgICAgICB9LCB7fSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVCcmVha1BvaW50KGJyZWFrcG9pbnRLZXlzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLnRoeVJlc3BvbnNpdmUgPT09ICdzY3JlZW4nKSB7XG4gICAgICAgICAgICBjb25zdCB3aWR0aCA9IHRoaXMucmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoIHx8IHRoaXMudmlld3BvcnRSdWxlci5nZXRWaWV3cG9ydFNpemUoKS53aWR0aDtcbiAgICAgICAgICAgIHJldHVybiBicmVha3BvaW50S2V5cy5maW5kKChrZXk6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpbmRleCA8IGJyZWFrcG9pbnRLZXlzLmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICAgICAgPyB3aWR0aCA+PSBzY3JlZW5CcmVha3BvaW50c01hcFtrZXldICYmIHdpZHRoIDwgc2NyZWVuQnJlYWtwb2ludHNNYXBbYnJlYWtwb2ludEtleXNbaW5kZXggKyAxXV1cbiAgICAgICAgICAgICAgICAgICAgOiB3aWR0aCA+PSBzY3JlZW5CcmVha3BvaW50c01hcFtrZXldO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB3aWR0aCA9IHRoaXMucmVzcG9uc2l2ZUNvbnRhaW5lcldpZHRoIHx8IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgICAgICAgICAgcmV0dXJuIGJyZWFrcG9pbnRLZXlzLmZpbmQoKGtleTogc3RyaW5nLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGluZGV4IDwgYnJlYWtwb2ludEtleXMubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICA/IHdpZHRoID49IE51bWJlcihrZXkpICYmIHdpZHRoIDwgTnVtYmVyKGJyZWFrcG9pbnRLZXlzW2luZGV4ICsgMV0pXG4gICAgICAgICAgICAgICAgICAgIDogd2lkdGggPj0gTnVtYmVyKGtleSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ3JpZFJlc2l6ZU9ic2VydmVyKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2JzZXJ2YWJsZTxSZXNpemVPYnNlcnZlckVudHJ5W10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc2l6ZSA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllczogUmVzaXplT2JzZXJ2ZXJFbnRyeVtdKSA9PiB7XG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChlbnRyaWVzKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmVzaXplLm9ic2VydmUoZWxlbWVudCk7XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJlc2l6ZS5kaXNjb25uZWN0KCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWdyaWQnLFxuICAgIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVGh5R3JpZF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRIWV9HUklEX0NPTVBPTkVOVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBUaHlHcmlkXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogVGh5R3JpZCxcbiAgICAgICAgICAgIGlucHV0czogWyd0aHlDb2xzJywgJ3RoeVhHYXAnLCAndGh5WUdhcCcsICd0aHlHYXAnLCAndGh5UmVzcG9uc2l2ZSddXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUdyaWRDb21wb25lbnQge1xuICAgIGdyaWQgPSBpbmplY3QoVGh5R3JpZCk7XG59XG5cbmZ1bmN0aW9uIGdldFJhd1NwYW4oc3BhbjogbnVtYmVyIHwgVGh5R3JpZFJlc3BvbnNpdmVEZXNjcmlwdGlvbiB8IHVuZGVmaW5lZCB8IG51bGwpOiBudW1iZXIgfCBUaHlHcmlkUmVzcG9uc2l2ZURlc2NyaXB0aW9uIHtcbiAgICByZXR1cm4gc3BhbiA9PT0gdW5kZWZpbmVkIHx8IHNwYW4gPT09IG51bGwgPyBUSFlfR1JJRF9JVEVNX0RFRkFVTFRfU1BBTiA6IHNwYW47XG59XG4iXX0=
|
|
@@ -100,7 +100,7 @@ export class ThyImageDirective {
|
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
102
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: ThyImageDirective, deps: [{ token: i1.ThyImageService }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
103
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: ThyImageDirective, isStandalone: true, selector: "img[thyImage]", inputs: { thySrc: "thySrc", thyPreviewSrc: "thyPreviewSrc", thyOriginSrc: "thyOriginSrc", thyImageMeta: "thyImageMeta", thyDisablePreview: "thyDisablePreview", thyResolveSize: "thyResolveSize" }, host: { listeners: { "click": "onPreview($event)" }, classAttribute: "thy-image" }, exportAs: ["thyImage"], usesOnChanges: true, ngImport: i0 }); }
|
|
103
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: ThyImageDirective, isStandalone: true, selector: "img[thyImage]", inputs: { thySrc: "thySrc", thyPreviewSrc: "thyPreviewSrc", thyOriginSrc: "thyOriginSrc", thyImageMeta: "thyImageMeta", thyDisablePreview: "thyDisablePreview", thyResolveSize: "thyResolveSize" }, host: { listeners: { "click": "onPreview($event)" }, properties: { "class.thy-image-disabled": "thyDisablePreview" }, classAttribute: "thy-image" }, exportAs: ["thyImage"], usesOnChanges: true, ngImport: i0 }); }
|
|
104
104
|
}
|
|
105
105
|
__decorate([
|
|
106
106
|
InputBoolean(),
|
|
@@ -117,7 +117,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
117
117
|
exportAs: 'thyImage',
|
|
118
118
|
host: {
|
|
119
119
|
'(click)': 'onPreview($event)',
|
|
120
|
-
class: 'thy-image'
|
|
120
|
+
class: 'thy-image',
|
|
121
|
+
'[class.thy-image-disabled]': 'thyDisablePreview'
|
|
121
122
|
},
|
|
122
123
|
standalone: true
|
|
123
124
|
}]
|
|
@@ -134,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
134
135
|
}], thyResolveSize: [{
|
|
135
136
|
type: Input
|
|
136
137
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltYWdlL2ltYWdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFJTCxRQUFRLEVBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBRWxEOzs7O0dBSUc7QUFVSCxNQUFNLE9BQU8saUJBQWlCO0lBZ0MxQixJQUFJLFdBQVc7UUFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ25DLENBQUM7SUFJRCxZQUFvQixlQUFnQyxFQUFVLFFBQWtCLEVBQVUsVUFBc0I7UUFBNUYsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFYaEg7O1dBRUc7UUFDc0IsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFRbUUsQ0FBQztJQUVwSCxRQUFRO1FBQ0osSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFFRCxjQUFjO1FBQ1YsT0FBTyxJQUFJLEVBQUU7WUFDVCxzREFBc0Q7WUFDdEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM3RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMs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QU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7OEdBdkhRLGlCQUFpQjtrR0FBakIsaUJBQWlCOztBQXlCMUI7SUFBVSxZQUFZLEVBQUU7OzREQUE0QjtBQUtwRDtJQUFVLFlBQVksRUFBRTs7eURBQXdCOzJGQTlCdkMsaUJBQWlCO2tCQVQ3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUUsVUFBVTtvQkFDcEIsSUFBSSxFQUFFO3dCQUNGLFNBQVMsRUFBRSxtQkFBbUI7d0JBQzlCLEtBQUssRUFBRSxXQUFXO3FCQUNyQjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7c0pBS1ksTUFBTTtzQkFBZCxLQUFLO2dCQUtHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBS0csWUFBWTtzQkFBcEIsS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQU1tQixpQkFBaUI7c0JBQXpDLEtBQUs7Z0JBS21CLGNBQWM7c0JBQXRDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdEZsYWdzLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBJbmplY3RvcixcbiAgICBPbkRlc3Ryb3ksXG4gICAgQWZ0ZXJWaWV3SW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlJbWFnZUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9pbWFnZS1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5SW1hZ2VNZXRhIH0gZnJvbSAnLi9pbWFnZS5jbGFzcyc7XG5pbXBvcnQgeyBUaHlJbWFnZVNlcnZpY2UgfSBmcm9tICcuL2ltYWdlLnNlcnZpY2UnO1xuXG4vKipcbiAqIHRoeUltYWdlOiDpooTop4jlm77niYfmjIfku6TvvIzlj6rlj6/nu5HlrprliLAgaW1nIOagh+etvuS4ilxuICogQG5hbWUgaW1nW3RoeUltYWdlXVxuICogQG9yZGVyIDEwXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnaW1nW3RoeUltYWdlXScsXG4gICAgZXhwb3J0QXM6ICd0aHlJbWFnZScsXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdvblByZXZpZXcoJGV2ZW50KScsXG4gICAgICAgIGNsYXNzOiAndGh5LWltYWdlJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUaHlJbWFnZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qKlxuICAgICAqIOWbvueJh+WcsOWdgFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVNyYzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog6aKE6KeI5Zu+54mH5Zyw5Z2AXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5UHJldmlld1NyYzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog5Zu+54mH5Y6f5Zu+5Zyw5Z2AXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5T3JpZ2luU3JjOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDlm77niYfpmYTliqDkv6Hmga/vvIzljIXlkKsgeyBuYW1lOiBzdHJpbmcsIHNpemU/OiBzdHJpbmcgfCBudW1iZXI7IH1cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlJbWFnZU1ldGE6IFRoeUltYWdlTWV0YTtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuemgeatoumihOiniFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHRoeURpc2FibGVQcmV2aWV3OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm6Ieq5Yqo6K6h566X5Zu+54mH6LWE5rqQ5aSn5bCPXG4gICAgICovXG4gICAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHRoeVJlc29sdmVTaXplID0gZmFsc2U7XG5cbiAgICBnZXQgcHJldmlld2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy50aHlEaXNhYmxlUHJldmlldztcbiAgICB9XG5cbiAgICBwcml2YXRlIHBhcmVudEdyb3VwOiBUaHlJbWFnZUdyb3VwQ29tcG9uZW50O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0aHlJbWFnZVNlcnZpY2U6IFRoeUltYWdlU2VydmljZSwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdldFBhcmVudEdyb3VwKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYXJlbnRHcm91cCkge1xuICAgICAgICAgICAgdGhpcy5hZGRQYXJlbnRJbWFnZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0UGFyZW50R3JvdXAoKSB7XG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICAvLyDlpJrlsYIgdGh5LWltYWdlLWdyb3VwIOW1jOWll+aXtu+8jOiOt+WPluacgOWkluWxgiB0aHktaW1hZ2UtZ3JvdXAg5LiL55qE5omA5pyJ5Zu+54mHXG4gICAgICAgICAgICBjb25zdCBpbmplY3RvciA9IHRoaXMucGFyZW50R3JvdXA/LmluamVjdG9yIHx8IHRoaXMuaW5qZWN0b3I7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRHcm91cCA9IGluamVjdG9yLmdldChUaHlJbWFnZUdyb3VwQ29tcG9uZW50LCBudWxsLCBJbmplY3RGbGFncy5Ta2lwU2VsZik7XG4gICAgICAgICAgICBpZiAoIXBhcmVudEdyb3VwKSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnBhcmVudEdyb3VwID0gcGFyZW50R3JvdXA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRQYXJlbnRJbWFnZSgpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRFbGVtZW50OiBIVE1MRWxlbWVudCA9IHRoaXMucGFyZW50R3JvdXAuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgaW1hZ2VzID0gcGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbWdbdGh5SW1hZ2VdJyk7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoaW1hZ2VzLCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMucGFyZW50R3JvdXAuYWRkSW1hZ2UodGhpcywgaW5kZXgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmVudEdyb3VwLmFkZEltYWdlKHRoaXMsIHRoaXMucGFyZW50R3JvdXAuaW1hZ2VzLmxlbmd0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyB0aHlTcmMgfSA9IGNoYW5nZXM7XG4gICAgICAgIGlmICh0aHlTcmMpIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNyYyA9IHRoeVNyYy5jdXJyZW50VmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblByZXZpZXcoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLnByZXZpZXdhYmxlIHx8IGV2ZW50LmJ1dHRvbiAhPT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnBhcmVudEdyb3VwKSB7XG4gICAgICAgICAgICBjb25zdCBwcmV2aWV3QWJsZUltYWdlcyA9IHRoaXMucGFyZW50R3JvdXAuaW1hZ2VzLmZpbHRlcihlID0+IGUucHJldmlld2FibGUpO1xuICAgICAgICAgICAgY29uc3QgcHJldmlld0ltYWdlcyA9IHByZXZpZXdBYmxlSW1hZ2VzLm1hcChlID0+ICh7XG4gICAgICAgICAgICAgICAgc3JjOiBlLnRoeVByZXZpZXdTcmMgfHwgZS50aHlTcmMsXG4gICAgICAgICAgICAgICAgLi4uZS50aHlJbWFnZU1ldGEsXG4gICAgICAgICAgICAgICAgb3JpZ2luOiB7XG4gICAgICAgICAgICAgICAgICAgIHNyYzogZS50aHlPcmlnaW5TcmNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICBjb25zdCBzdGFydEluZGV4ID0gcHJldmlld0FibGVJbWFnZXMuZmluZEluZGV4KGVsID0+IHRoaXMgPT09IGVsKTtcbiAgICAgICAgICAgIHRoaXMudGh5SW1hZ2VTZXJ2aWNlLnByZXZpZXcocHJldmlld0ltYWdlcywge1xuICAgICAgICAgICAgICAgIHN0YXJ0SW5kZXgsXG4gICAgICAgICAgICAgICAgcmVzb2x2ZVNpemU6IHRoaXMudGh5UmVzb2x2ZVNpemVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcHJldmlld0ltYWdlcyA9IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHNyYzogdGhpcy50aHlQcmV2aWV3U3JjIHx8IHRoaXMudGh5U3JjLFxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnRoeUltYWdlTWV0YSxcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM6IHRoaXMudGh5T3JpZ2luU3JjXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgdGhpcy50aHlJbWFnZVNlcnZpY2UucHJldmlldyhwcmV2aWV3SW1hZ2VzLCB7IHJlc29sdmVTaXplOiB0aGlzLnRoeVJlc29sdmVTaXplIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhcmVudEdyb3VwKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMucGFyZW50R3JvdXAuaW1hZ2VzLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09IHRoaXMpO1xuICAgICAgICAgICAgdGhpcy5wYXJlbnRHcm91cC5yZW1vdmVJbWFnZShpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltYWdlL2ltYWdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFJTCxRQUFRLEVBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBRWxEOzs7O0dBSUc7QUFXSCxNQUFNLE9BQU8saUJBQWlCO0lBZ0MxQixJQUFJLFdBQVc7UUFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ25DLENBQUM7SUFJRCxZQUFvQixlQUFnQyxFQUFVLFFBQWtCLEVBQVUsVUFBc0I7UUFBNUYsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFYaEg7O1dBRUc7UUFDc0IsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFRbUUsQ0FBQztJQUVwSCxRQUFRO1FBQ0osSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFFRCxjQUFjO1FBQ1YsT0FBTyxJQUFJLEVBQUU7WUFDVCxzREFBc0Q7WUFDdEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM3RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckYsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDZCxNQUFNO2FBQ1Q7WUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFRCxjQUFjO1FBQ1YsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE1BQU0sYUFBYSxHQUFnQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7WUFDMUUsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQy9ELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNsRixJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQzFDO2lCQUFNO2dCQUNILElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNuRTtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzNCLElBQUksTUFBTSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7U0FDM0Q7SUFDTCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWlCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3pDLE9BQU87U0FDVjtRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUM3RSxNQUFNLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5QyxHQUFHLEVBQUUsQ0FBQyxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsTUFBTTtnQkFDaEMsR0FBRyxDQUFDLENBQUMsWUFBWTtnQkFDakIsTUFBTSxFQUFFO29CQUNKLEdBQUcsRUFBRSxDQUFDLENBQUMsWUFBWTtpQkFDdEI7YUFDSixDQUFDLENBQUMsQ0FBQztZQUNKLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7Z0JBQ3hDLFVBQVU7Z0JBQ1YsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjO2FBQ25DLENBQUMsQ0FBQztTQUNOO2FBQU07WUFDSCxNQUFNLGFBQWEsR0FBRztnQkFDbEI7b0JBQ0ksR0FBRyxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLE1BQU07b0JBQ3RDLEdBQUcsSUFBSSxDQUFDLFlBQVk7b0JBQ3BCLE1BQU0sRUFBRTt3QkFDSixHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVk7cUJBQ3pCO2lCQUNKO2FBQ0osQ0FBQztZQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztTQUNyRjtJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7OEdBdkhRLGlCQUFpQjtrR0FBakIsaUJBQWlCOztBQXlCMUI7SUFBVSxZQUFZLEVBQUU7OzREQUE0QjtBQUtwRDtJQUFVLFlBQVksRUFBRTs7eURBQXdCOzJGQTlCdkMsaUJBQWlCO2tCQVY3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUUsVUFBVTtvQkFDcEIsSUFBSSxFQUFFO3dCQUNGLFNBQVMsRUFBRSxtQkFBbUI7d0JBQzlCLEtBQUssRUFBRSxXQUFXO3dCQUNsQiw0QkFBNEIsRUFBRSxtQkFBbUI7cUJBQ3BEO29CQUNELFVBQVUsRUFBRSxJQUFJO2lCQUNuQjtzSkFLWSxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csYUFBYTtzQkFBckIsS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBTW1CLGlCQUFpQjtzQkFBekMsS0FBSztnQkFLbUIsY0FBYztzQkFBdEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5qZWN0RmxhZ3MsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIEluamVjdG9yLFxuICAgIE9uRGVzdHJveSxcbiAgICBBZnRlclZpZXdJbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcbmltcG9ydCB7IFRoeUltYWdlR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaHlJbWFnZU1ldGEgfSBmcm9tICcuL2ltYWdlLmNsYXNzJztcbmltcG9ydCB7IFRoeUltYWdlU2VydmljZSB9IGZyb20gJy4vaW1hZ2Uuc2VydmljZSc7XG5cbi8qKlxuICogdGh5SW1hZ2U6IOmihOiniOWbvueJh+aMh+S7pO+8jOWPquWPr+e7keWumuWIsCBpbWcg5qCH562+5LiKXG4gKiBAbmFtZSBpbWdbdGh5SW1hZ2VdXG4gKiBAb3JkZXIgMTBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdpbWdbdGh5SW1hZ2VdJyxcbiAgICBleHBvcnRBczogJ3RoeUltYWdlJyxcbiAgICBob3N0OiB7XG4gICAgICAgICcoY2xpY2spJzogJ29uUHJldmlldygkZXZlbnQpJyxcbiAgICAgICAgY2xhc3M6ICd0aHktaW1hZ2UnLFxuICAgICAgICAnW2NsYXNzLnRoeS1pbWFnZS1kaXNhYmxlZF0nOiAndGh5RGlzYWJsZVByZXZpZXcnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeUltYWdlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICog5Zu+54mH5Zyw5Z2AXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5U3JjOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDpooTop4jlm77niYflnLDlnYBcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQcmV2aWV3U3JjOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDlm77niYfljp/lm77lnLDlnYBcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlPcmlnaW5TcmM6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOWbvueJh+mZhOWKoOS/oeaBr++8jOWMheWQqyB7IG5hbWU6IHN0cmluZywgc2l6ZT86IHN0cmluZyB8IG51bWJlcjsgfVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUltYWdlTWV0YTogVGh5SW1hZ2VNZXRhO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm56aB5q2i6aKE6KeIXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGh5RGlzYWJsZVByZXZpZXc6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKboh6rliqjorqHnrpflm77niYfotYTmupDlpKflsI9cbiAgICAgKi9cbiAgICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGh5UmVzb2x2ZVNpemUgPSBmYWxzZTtcblxuICAgIGdldCBwcmV2aWV3YWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnRoeURpc2FibGVQcmV2aWV3O1xuICAgIH1cblxuICAgIHByaXZhdGUgcGFyZW50R3JvdXA6IFRoeUltYWdlR3JvdXBDb21wb25lbnQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRoeUltYWdlU2VydmljZTogVGh5SW1hZ2VTZXJ2aWNlLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2V0UGFyZW50R3JvdXAoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhcmVudEdyb3VwKSB7XG4gICAgICAgICAgICB0aGlzLmFkZFBhcmVudEltYWdlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRQYXJlbnRHcm91cCgpIHtcbiAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIC8vIOWkmuWxgiB0aHktaW1hZ2UtZ3JvdXAg5bWM5aWX5pe277yM6I635Y+W5pyA5aSW5bGCIHRoeS1pbWFnZS1ncm91cCDkuIvnmoTmiYDmnInlm77niYdcbiAgICAgICAgICAgIGNvbnN0IGluamVjdG9yID0gdGhpcy5wYXJlbnRHcm91cD8uaW5qZWN0b3IgfHwgdGhpcy5pbmplY3RvcjtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudEdyb3VwID0gaW5qZWN0b3IuZ2V0KFRoeUltYWdlR3JvdXBDb21wb25lbnQsIG51bGwsIEluamVjdEZsYWdzLlNraXBTZWxmKTtcbiAgICAgICAgICAgIGlmICghcGFyZW50R3JvdXApIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucGFyZW50R3JvdXAgPSBwYXJlbnRHcm91cDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZFBhcmVudEltYWdlKCkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gdGhpcy5wYXJlbnRHcm91cC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBpbWFnZXMgPSBwYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2ltZ1t0aHlJbWFnZV0nKTtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChpbWFnZXMsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYXJlbnRHcm91cC5hZGRJbWFnZSh0aGlzLCBpbmRleCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucGFyZW50R3JvdXAuYWRkSW1hZ2UodGhpcywgdGhpcy5wYXJlbnRHcm91cC5pbWFnZXMubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHRoeVNyYyB9ID0gY2hhbmdlcztcbiAgICAgICAgaWYgKHRoeVNyYykge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3JjID0gdGh5U3JjLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uUHJldmlldyhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMucHJldmlld2FibGUgfHwgZXZlbnQuYnV0dG9uICE9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucGFyZW50R3JvdXApIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXZpZXdBYmxlSW1hZ2VzID0gdGhpcy5wYXJlbnRHcm91cC5pbWFnZXMuZmlsdGVyKGUgPT4gZS5wcmV2aWV3YWJsZSk7XG4gICAgICAgICAgICBjb25zdCBwcmV2aWV3SW1hZ2VzID0gcHJldmlld0FibGVJbWFnZXMubWFwKGUgPT4gKHtcbiAgICAgICAgICAgICAgICBzcmM6IGUudGh5UHJldmlld1NyYyB8fCBlLnRoeVNyYyxcbiAgICAgICAgICAgICAgICAuLi5lLnRoeUltYWdlTWV0YSxcbiAgICAgICAgICAgICAgICBvcmlnaW46IHtcbiAgICAgICAgICAgICAgICAgICAgc3JjOiBlLnRoeU9yaWdpblNyY1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSBwcmV2aWV3QWJsZUltYWdlcy5maW5kSW5kZXgoZWwgPT4gdGhpcyA9PT0gZWwpO1xuICAgICAgICAgICAgdGhpcy50aHlJbWFnZVNlcnZpY2UucHJldmlldyhwcmV2aWV3SW1hZ2VzLCB7XG4gICAgICAgICAgICAgICAgc3RhcnRJbmRleCxcbiAgICAgICAgICAgICAgICByZXNvbHZlU2l6ZTogdGhpcy50aHlSZXNvbHZlU2l6ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBwcmV2aWV3SW1hZ2VzID0gW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgc3JjOiB0aGlzLnRoeVByZXZpZXdTcmMgfHwgdGhpcy50aHlTcmMsXG4gICAgICAgICAgICAgICAgICAgIC4uLnRoaXMudGh5SW1hZ2VNZXRhLFxuICAgICAgICAgICAgICAgICAgICBvcmlnaW46IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYzogdGhpcy50aHlPcmlnaW5TcmNcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICB0aGlzLnRoeUltYWdlU2VydmljZS5wcmV2aWV3KHByZXZpZXdJbWFnZXMsIHsgcmVzb2x2ZVNpemU6IHRoaXMudGh5UmVzb2x2ZVNpemUgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50R3JvdXApIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYXJlbnRHcm91cC5pbWFnZXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbSA9PT0gdGhpcyk7XG4gICAgICAgICAgICB0aGlzLnBhcmVudEdyb3VwLnJlbW92ZUltYWdlKGluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|