@ssv/ngx.ux 2.0.2 → 2.1.0-dev.23
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/LICENSE +21 -21
- package/README.md +296 -297
- package/config.d.ts +7 -7
- package/esm2020/config.mjs +7 -7
- package/esm2020/index.mjs +5 -5
- package/esm2020/internal/internal.model.mjs +2 -2
- package/esm2020/module.mjs +65 -65
- package/esm2020/platform/window.mjs +30 -30
- package/esm2020/ssv-ngx.ux.mjs +4 -4
- package/esm2020/version.mjs +2 -2
- package/esm2020/viewport/index.mjs +9 -9
- package/esm2020/viewport/viewport-data/index.mjs +4 -4
- package/esm2020/viewport/viewport-data/viewport-data-matcher.mjs +108 -108
- package/esm2020/viewport/viewport-data/viewport-data.pipe.mjs +43 -43
- package/esm2020/viewport/viewport-data/viewport-data.service.mjs +37 -37
- package/esm2020/viewport/viewport-data/viewport-data.utils.mjs +100 -100
- package/esm2020/viewport/viewport-matcher-var.directive.mjs +63 -63
- package/esm2020/viewport/viewport-matcher.directive.mjs +131 -131
- package/esm2020/viewport/viewport-server-size.service.mjs +43 -43
- package/esm2020/viewport/viewport.const.mjs +17 -18
- package/esm2020/viewport/viewport.model.mjs +30 -31
- package/esm2020/viewport/viewport.service.mjs +66 -67
- package/esm2020/viewport/viewport.util.mjs +117 -117
- package/fesm2015/ssv-ngx.ux.mjs +787 -790
- package/fesm2015/ssv-ngx.ux.mjs.map +1 -1
- package/fesm2020/ssv-ngx.ux.mjs +781 -784
- package/fesm2020/ssv-ngx.ux.mjs.map +1 -1
- package/index.d.ts +4 -4
- package/internal/internal.model.d.ts +9 -9
- package/module.d.ts +19 -19
- package/package.json +1 -1
- package/platform/window.d.ts +13 -13
- package/version.d.ts +1 -1
- package/viewport/index.d.ts +8 -8
- package/viewport/viewport-data/index.d.ts +3 -3
- package/viewport/viewport-data/viewport-data-matcher.d.ts +32 -32
- package/viewport/viewport-data/viewport-data.pipe.d.ts +18 -18
- package/viewport/viewport-data/viewport-data.service.d.ts +20 -20
- package/viewport/viewport-data/viewport-data.utils.d.ts +21 -21
- package/viewport/viewport-matcher-var.directive.d.ts +25 -25
- package/viewport/viewport-matcher.directive.d.ts +33 -33
- package/viewport/viewport-server-size.service.d.ts +12 -12
- package/viewport/viewport.const.d.ts +5 -5
- package/viewport/viewport.model.d.ts +56 -57
- package/viewport/viewport.service.d.ts +37 -37
- package/viewport/viewport.util.d.ts +25 -25
- package/CHANGELOG.md +0 -149
- package/bundles/ssv-ngx.ux.umd.js +0 -1219
- package/bundles/ssv-ngx.ux.umd.js.map +0 -1
- package/bundles/ssv-ngx.ux.umd.min.js +0 -16
- package/bundles/ssv-ngx.ux.umd.min.js.map +0 -1
- package/esm2015/config.js +0 -7
- package/esm2015/index.js +0 -5
- package/esm2015/internal/internal.model.js +0 -2
- package/esm2015/module.js +0 -50
- package/esm2015/platform/window.js +0 -28
- package/esm2015/ssv-ngx.ux.js +0 -7
- package/esm2015/version.js +0 -2
- package/esm2015/viewport/index.js +0 -9
- package/esm2015/viewport/viewport-data/index.js +0 -4
- package/esm2015/viewport/viewport-data/viewport-data-matcher.js +0 -108
- package/esm2015/viewport/viewport-data/viewport-data.pipe.js +0 -43
- package/esm2015/viewport/viewport-data/viewport-data.service.js +0 -38
- package/esm2015/viewport/viewport-data/viewport-data.utils.js +0 -100
- package/esm2015/viewport/viewport-matcher-var.directive.js +0 -64
- package/esm2015/viewport/viewport-matcher.directive.js +0 -134
- package/esm2015/viewport/viewport-server-size.service.js +0 -38
- package/esm2015/viewport/viewport.const.js +0 -18
- package/esm2015/viewport/viewport.model.js +0 -31
- package/esm2015/viewport/viewport.service.js +0 -69
- package/esm2015/viewport/viewport.util.js +0 -117
- package/fesm2015/ssv-ngx.ux.js +0 -807
- package/fesm2015/ssv-ngx.ux.js.map +0 -1
- package/ssv-ngx.ux.d.ts +0 -6
- package/ssv-ngx.ux.metadata.json +0 -1
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
import { Directive, Input, } from "@angular/core";
|
|
2
|
-
import { Subscription, Subject } from "rxjs";
|
|
3
|
-
import { tap, filter, pairwise, startWith } from "rxjs/operators";
|
|
4
|
-
import { isViewportSizeMatcherExpression, isViewportSizeMatcherTupleExpression, isViewportConditionMatch } from "./viewport.util";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./viewport.service";
|
|
7
|
-
export class SsvViewportMatcherContext {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.sizeType = null;
|
|
10
|
-
this.sizeTypeExclude = null;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
export class SsvViewportMatcherDirective {
|
|
14
|
-
constructor(viewport, renderer, viewContainer, cdr, templateRef) {
|
|
15
|
-
this.viewport = viewport;
|
|
16
|
-
this.renderer = renderer;
|
|
17
|
-
this.viewContainer = viewContainer;
|
|
18
|
-
this.cdr = cdr;
|
|
19
|
-
this._context = new SsvViewportMatcherContext();
|
|
20
|
-
this._thenTemplateRef = null;
|
|
21
|
-
this._elseTemplateRef = null;
|
|
22
|
-
this._thenViewRef = null;
|
|
23
|
-
this._elseViewRef = null;
|
|
24
|
-
this.sizeType$$ = Subscription.EMPTY;
|
|
25
|
-
this.cssClass$$ = Subscription.EMPTY;
|
|
26
|
-
this._update$ = new Subject();
|
|
27
|
-
this._thenTemplateRef = templateRef;
|
|
28
|
-
}
|
|
29
|
-
set ssvViewportMatcher(value) {
|
|
30
|
-
if (isViewportSizeMatcherExpression(value)) {
|
|
31
|
-
this._context.expression = value;
|
|
32
|
-
}
|
|
33
|
-
else if (isViewportSizeMatcherTupleExpression(value)) {
|
|
34
|
-
const [op, size] = value;
|
|
35
|
-
this._context.expression = {
|
|
36
|
-
operation: op,
|
|
37
|
-
size
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this._context.sizeType = value;
|
|
42
|
-
}
|
|
43
|
-
if (this.sizeInfo) {
|
|
44
|
-
this._update$.next(this._context);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
set ssvViewportMatcherExclude(value) {
|
|
48
|
-
this._context.sizeTypeExclude = value;
|
|
49
|
-
if (this.sizeInfo) {
|
|
50
|
-
this._update$.next(this._context);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
set ssvViewportMatcherElse(templateRef) {
|
|
54
|
-
this._elseTemplateRef = templateRef;
|
|
55
|
-
this._elseViewRef = null; // clear previous view if any.
|
|
56
|
-
if (this.sizeInfo) {
|
|
57
|
-
this._update$.next(this._context);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
ngOnInit() {
|
|
61
|
-
// console.log("ssvViewportMatcher init");
|
|
62
|
-
this._update$
|
|
63
|
-
.pipe(
|
|
64
|
-
// tap(x => console.log(">>> ssvViewportMatcher - update triggered", x)),
|
|
65
|
-
filter(() => !!this.sizeInfo),
|
|
66
|
-
// tap(x => console.log(">>> ssvViewportMatcher - updating...", x)),
|
|
67
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
68
|
-
tap(() => this._updateView(this.sizeInfo)), tap(() => this.cdr.markForCheck()))
|
|
69
|
-
.subscribe();
|
|
70
|
-
this.sizeType$$ = this.viewport.sizeType$
|
|
71
|
-
.pipe(
|
|
72
|
-
// tap(x => console.log("ssvViewportMatcher - sizeType changed", x)),
|
|
73
|
-
tap(x => this.sizeInfo = x), tap(() => this._update$.next(this._context)))
|
|
74
|
-
.subscribe();
|
|
75
|
-
this.cssClass$$ = this.viewport.sizeType$
|
|
76
|
-
.pipe(startWith(undefined), filter(() => !!(this._thenViewRef || this._elseViewRef)), pairwise(), tap(([prev, curr]) => {
|
|
77
|
-
const el = this._thenViewRef
|
|
78
|
-
? this._thenViewRef.rootNodes[0]
|
|
79
|
-
: this._elseViewRef?.rootNodes[0];
|
|
80
|
-
if (!el.classList) {
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
if (prev) {
|
|
84
|
-
this.renderer.removeClass(el, `ssv-vp-size--${prev.name}`);
|
|
85
|
-
}
|
|
86
|
-
this.renderer.addClass(el, `ssv-vp-size--${curr?.name}`);
|
|
87
|
-
}))
|
|
88
|
-
.subscribe();
|
|
89
|
-
}
|
|
90
|
-
ngOnDestroy() {
|
|
91
|
-
this.cssClass$$.unsubscribe();
|
|
92
|
-
this.sizeType$$.unsubscribe();
|
|
93
|
-
this._update$.complete();
|
|
94
|
-
}
|
|
95
|
-
_updateView(sizeInfo) {
|
|
96
|
-
if (isViewportConditionMatch(sizeInfo, this._context, this.viewport.sizeTypeMap)) {
|
|
97
|
-
if (!this._thenViewRef) {
|
|
98
|
-
this.viewContainer.clear();
|
|
99
|
-
this._elseViewRef = null;
|
|
100
|
-
if (this._thenTemplateRef) {
|
|
101
|
-
this._thenViewRef = this.viewContainer.createEmbeddedView(this._thenTemplateRef, this._context);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
if (!this._elseViewRef) {
|
|
107
|
-
this.viewContainer.clear();
|
|
108
|
-
this._thenViewRef = null;
|
|
109
|
-
if (this._elseTemplateRef) {
|
|
110
|
-
this._elseViewRef = this.viewContainer.createEmbeddedView(this._elseTemplateRef, this._context);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
SsvViewportMatcherDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvViewportMatcherDirective, deps: [{ token: i1.ViewportService }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
117
|
-
SsvViewportMatcherDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SsvViewportMatcherDirective, selector: "[ssvViewportMatcher]", inputs: { ssvViewportMatcher: "ssvViewportMatcher", ssvViewportMatcherExclude: "ssvViewportMatcherExclude", ssvViewportMatcherElse: "ssvViewportMatcherElse" }, exportAs: ["ssvViewportMatcher"], ngImport: i0 });
|
|
118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvViewportMatcherDirective, decorators: [{
|
|
119
|
-
type: Directive,
|
|
120
|
-
args: [{
|
|
121
|
-
selector: "[ssvViewportMatcher]",
|
|
122
|
-
exportAs: "ssvViewportMatcher",
|
|
123
|
-
}]
|
|
124
|
-
}], ctorParameters: function () { return [{ type: i1.ViewportService }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: i0.TemplateRef }]; }, propDecorators: { ssvViewportMatcher: [{
|
|
125
|
-
type: Input
|
|
126
|
-
}], ssvViewportMatcherExclude: [{
|
|
127
|
-
type: Input
|
|
128
|
-
}], ssvViewportMatcherElse: [{
|
|
129
|
-
type: Input
|
|
130
|
-
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQtbWF0Y2hlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQtbWF0Y2hlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdOLFNBQVMsRUFHVCxLQUFLLEdBSUwsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xFLE9BQU8sRUFDTiwrQkFBK0IsRUFDL0Isb0NBQW9DLEVBQ3BDLHdCQUF3QixFQUN4QixNQUFNLGlCQUFpQixDQUFDOzs7QUFHekIsTUFBTSxPQUFPLHlCQUF5QjtJQUF0QztRQUVDLGFBQVEsR0FBNkIsSUFBSSxDQUFDO1FBQzFDLG9CQUFlLEdBQTZCLElBQUksQ0FBQztJQUdsRCxDQUFDO0NBQUE7QUFNRCxNQUFNLE9BQU8sMkJBQTJCO0lBK0N2QyxZQUNTLFFBQXlCLEVBQ3pCLFFBQW1CLEVBQ25CLGFBQStCLEVBQy9CLEdBQXNCLEVBQzlCLFdBQW1EO1FBSjNDLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBL0N2QixhQUFRLEdBQThCLElBQUkseUJBQXlCLEVBQUUsQ0FBQztRQUN0RSxxQkFBZ0IsR0FBa0QsSUFBSSxDQUFDO1FBQ3ZFLHFCQUFnQixHQUFrRCxJQUFJLENBQUM7UUFDdkUsaUJBQVksR0FBc0QsSUFBSSxDQUFDO1FBQ3ZFLGlCQUFZLEdBQXNELElBQUksQ0FBQztRQUN2RSxlQUFVLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUNoQyxlQUFV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RCxJQUFJLENBQUMsZ0JBQWdCLEVBQ3JCLElBQUksQ0FBQyxRQUFRLENBQ2IsQ0FBQztpQkFDRjthQUNEO1NBQ0Q7YUFBTTtZQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztnQkFFekIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FDeEQsSUFBSSxDQUFDLGdCQUFnQixFQUNyQixJQUFJLENBQUMsUUFBUSxDQUNiLENBQUM7aUJBQ0Y7YUFDRDtTQUNEO0lBQ0YsQ0FBQzs7d0hBcklXLDJCQUEyQjs0R0FBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLG9CQUFvQjtpQkFDOUI7dU5BY2Esa0JBQWtCO3NCQUE5QixLQUFLO2dCQWtCTyx5QkFBeUI7c0JBQXJDLEtBQUs7Z0JBUU8sc0JBQXNCO3NCQUFsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRPbkluaXQsXHJcblx0T25EZXN0cm95LFxyXG5cdERpcmVjdGl2ZSxcclxuXHRSZW5kZXJlcjIsXHJcblx0Vmlld0NvbnRhaW5lclJlZixcclxuXHRJbnB1dCxcclxuXHRFbWJlZGRlZFZpZXdSZWYsXHJcblx0VGVtcGxhdGVSZWYsXHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgdGFwLCBmaWx0ZXIsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmltcG9ydCB7IFZpZXdwb3J0U2VydmljZSB9IGZyb20gXCIuL3ZpZXdwb3J0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtcclxuXHRpc1ZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uLFxyXG5cdGlzVmlld3BvcnRTaXplTWF0Y2hlclR1cGxlRXhwcmVzc2lvbixcclxuXHRpc1ZpZXdwb3J0Q29uZGl0aW9uTWF0Y2hcclxufSBmcm9tIFwiLi92aWV3cG9ydC51dGlsXCI7XHJcbmltcG9ydCB7IFZpZXdwb3J0U2l6ZVR5cGVJbmZvLCBWaWV3cG9ydE1hdGNoQ29uZGl0aW9ucywgVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb24gfSBmcm9tIFwiLi92aWV3cG9ydC5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNzdlZpZXdwb3J0TWF0Y2hlckNvbnRleHQgaW1wbGVtZW50cyBWaWV3cG9ydE1hdGNoQ29uZGl0aW9ucyB7XHJcblxyXG5cdHNpemVUeXBlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgPSBudWxsO1xyXG5cdHNpemVUeXBlRXhjbHVkZTogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsID0gbnVsbDtcclxuXHRleHByZXNzaW9uPzogVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb247XHJcblxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuXHRzZWxlY3RvcjogXCJbc3N2Vmlld3BvcnRNYXRjaGVyXVwiLFxyXG5cdGV4cG9ydEFzOiBcInNzdlZpZXdwb3J0TWF0Y2hlclwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3N2Vmlld3BvcnRNYXRjaGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuXHRzaXplSW5mbzogVmlld3BvcnRTaXplVHlwZUluZm8gfCB1bmRlZmluZWQ7XHJcblxyXG5cdHByaXZhdGUgX2NvbnRleHQ6IFNzdlZpZXdwb3J0TWF0Y2hlckNvbnRleHQgPSBuZXcgU3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dCgpO1xyXG5cdHByaXZhdGUgX3RoZW5UZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4gfCBudWxsID0gbnVsbDtcclxuXHRwcml2YXRlIF9lbHNlVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPFNzdlZpZXdwb3J0TWF0Y2hlckNvbnRleHQ+IHwgbnVsbCA9IG51bGw7XHJcblx0cHJpdmF0ZSBfdGhlblZpZXdSZWY6IEVtYmVkZGVkVmlld1JlZjxTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0PiB8IG51bGwgPSBudWxsO1xyXG5cdHByaXZhdGUgX2Vsc2VWaWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4gfCBudWxsID0gbnVsbDtcclxuXHRwcml2YXRlIHNpemVUeXBlJCQgPSBTdWJzY3JpcHRpb24uRU1QVFk7XHJcblx0cHJpdmF0ZSBjc3NDbGFzcyQkID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgX3VwZGF0ZSQgPSBuZXcgU3ViamVjdDxTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0PigpO1xyXG5cclxuXHRASW5wdXQoKSBzZXQgc3N2Vmlld3BvcnRNYXRjaGVyKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IFZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uKSB7XHJcblx0XHRpZiAoaXNWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbih2YWx1ZSkpIHtcclxuXHRcdFx0dGhpcy5fY29udGV4dC5leHByZXNzaW9uID0gdmFsdWU7XHJcblx0XHR9IGVsc2UgaWYgKGlzVmlld3BvcnRTaXplTWF0Y2hlclR1cGxlRXhwcmVzc2lvbih2YWx1ZSkpIHtcclxuXHRcdFx0Y29uc3QgW29wLCBzaXplXSA9IHZhbHVlO1xyXG5cdFx0XHR0aGlzLl9jb250ZXh0LmV4cHJlc3Npb24gPSB7XHJcblx0XHRcdFx0b3BlcmF0aW9uOiBvcCxcclxuXHRcdFx0XHRzaXplXHJcblx0XHRcdH07XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLl9jb250ZXh0LnNpemVUeXBlID0gdmFsdWU7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHRoaXMuc2l6ZUluZm8pIHtcclxuXHRcdFx0dGhpcy5fdXBkYXRlJC5uZXh0KHRoaXMuX2NvbnRleHQpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QElucHV0KCkgc2V0IHNzdlZpZXdwb3J0TWF0Y2hlckV4Y2x1ZGUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKSB7XHJcblx0XHR0aGlzLl9jb250ZXh0LnNpemVUeXBlRXhjbHVkZSA9IHZhbHVlO1xyXG5cclxuXHRcdGlmICh0aGlzLnNpemVJbmZvKSB7XHJcblx0XHRcdHRoaXMuX3VwZGF0ZSQubmV4dCh0aGlzLl9jb250ZXh0KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBJbnB1dCgpIHNldCBzc3ZWaWV3cG9ydE1hdGNoZXJFbHNlKHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0PiB8IG51bGwpIHtcclxuXHRcdHRoaXMuX2Vsc2VUZW1wbGF0ZVJlZiA9IHRlbXBsYXRlUmVmO1xyXG5cdFx0dGhpcy5fZWxzZVZpZXdSZWYgPSBudWxsOyAvLyBjbGVhciBwcmV2aW91cyB2aWV3IGlmIGFueS5cclxuXHRcdGlmICh0aGlzLnNpemVJbmZvKSB7XHJcblx0XHRcdHRoaXMuX3VwZGF0ZSQubmV4dCh0aGlzLl9jb250ZXh0KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSB2aWV3cG9ydDogVmlld3BvcnRTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG5cdFx0cHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxyXG5cdFx0cHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG5cdFx0dGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPFNzdlZpZXdwb3J0TWF0Y2hlckNvbnRleHQ+LFxyXG5cdCkge1xyXG5cdFx0dGhpcy5fdGhlblRlbXBsYXRlUmVmID0gdGVtcGxhdGVSZWY7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdC8vIGNvbnNvbGUubG9nKFwic3N2Vmlld3BvcnRNYXRjaGVyIGluaXRcIik7XHJcblxyXG5cdFx0dGhpcy5fdXBkYXRlJFxyXG5cdFx0XHQucGlwZShcclxuXHRcdFx0XHQvLyB0YXAoeCA9PiBjb25zb2xlLmxvZyhcIj4+PiBzc3ZWaWV3cG9ydE1hdGNoZXIgLSB1cGRhdGUgdHJpZ2dlcmVkXCIsIHgpKSxcclxuXHRcdFx0XHRmaWx0ZXIoKCkgPT4gISF0aGlzLnNpemVJbmZvKSxcclxuXHRcdFx0XHQvLyB0YXAoeCA9PiBjb25zb2xlLmxvZyhcIj4+PiBzc3ZWaWV3cG9ydE1hdGNoZXIgLSB1cGRhdGluZy4uLlwiLCB4KSksXHJcblx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuXHRcdFx0XHR0YXAoKCkgPT4gdGhpcy5fdXBkYXRlVmlldyh0aGlzLnNpemVJbmZvISkpLFxyXG5cdFx0XHRcdHRhcCgoKSA9PiB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKSlcclxuXHRcdFx0KVxyXG5cdFx0XHQuc3Vic2NyaWJlKCk7XHJcblxyXG5cdFx0dGhpcy5zaXplVHlwZSQkID0gdGhpcy52aWV3cG9ydC5zaXplVHlwZSRcclxuXHRcdFx0LnBpcGUoXHJcblx0XHRcdFx0Ly8gdGFwKHggPT4gY29uc29sZS5sb2coXCJzc3ZWaWV3cG9ydE1hdGNoZXIgLSBzaXplVHlwZSBjaGFuZ2VkXCIsIHgpKSxcclxuXHRcdFx0XHR0YXAoeCA9PiB0aGlzLnNpemVJbmZvID0geCksXHJcblx0XHRcdFx0dGFwKCgpID0+IHRoaXMuX3VwZGF0ZSQubmV4dCh0aGlzLl9jb250ZXh0KSksXHJcblx0XHRcdClcclxuXHRcdFx0LnN1YnNjcmliZSgpO1xyXG5cclxuXHRcdHRoaXMuY3NzQ2xhc3MkJCA9IHRoaXMudmlld3BvcnQuc2l6ZVR5cGUkXHJcblx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdHN0YXJ0V2l0aDxWaWV3cG9ydFNpemVUeXBlSW5mbyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKSxcclxuXHRcdFx0XHRmaWx0ZXIoKCkgPT4gISEodGhpcy5fdGhlblZpZXdSZWYgfHwgdGhpcy5fZWxzZVZpZXdSZWYpKSxcclxuXHRcdFx0XHRwYWlyd2lzZSgpLFxyXG5cdFx0XHRcdHRhcCgoW3ByZXYsIGN1cnJdKSA9PiB7XHJcblx0XHRcdFx0XHRjb25zdCBlbDogRWxlbWVudCA9IHRoaXMuX3RoZW5WaWV3UmVmXHJcblx0XHRcdFx0XHRcdD8gdGhpcy5fdGhlblZpZXdSZWYucm9vdE5vZGVzWzBdXHJcblx0XHRcdFx0XHRcdDogdGhpcy5fZWxzZVZpZXdSZWY/LnJvb3ROb2Rlc1swXTtcclxuXHJcblx0XHRcdFx0XHRpZiAoIWVsLmNsYXNzTGlzdCkge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRpZiAocHJldikge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGVsLCBgc3N2LXZwLXNpemUtLSR7cHJldi5uYW1lfWApO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5hZGRDbGFzcyhlbCwgYHNzdi12cC1zaXplLS0ke2N1cnI/Lm5hbWV9YCk7XHJcblx0XHRcdFx0fSksXHJcblx0XHRcdClcclxuXHRcdFx0LnN1YnNjcmliZSgpO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHR0aGlzLmNzc0NsYXNzJCQudW5zdWJzY3JpYmUoKTtcclxuXHRcdHRoaXMuc2l6ZVR5cGUkJC51bnN1YnNjcmliZSgpO1xyXG5cdFx0dGhpcy5fdXBkYXRlJC5jb21wbGV0ZSgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfdXBkYXRlVmlldyhzaXplSW5mbzogVmlld3BvcnRTaXplVHlwZUluZm8pIHtcclxuXHRcdGlmIChpc1ZpZXdwb3J0Q29uZGl0aW9uTWF0Y2goc2l6ZUluZm8sIHRoaXMuX2NvbnRleHQsIHRoaXMudmlld3BvcnQuc2l6ZVR5cGVNYXApKSB7XHJcblx0XHRcdGlmICghdGhpcy5fdGhlblZpZXdSZWYpIHtcclxuXHRcdFx0XHR0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcclxuXHRcdFx0XHR0aGlzLl9lbHNlVmlld1JlZiA9IG51bGw7XHJcblxyXG5cdFx0XHRcdGlmICh0aGlzLl90aGVuVGVtcGxhdGVSZWYpIHtcclxuXHRcdFx0XHRcdHRoaXMuX3RoZW5WaWV3UmVmID0gdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcclxuXHRcdFx0XHRcdFx0dGhpcy5fdGhlblRlbXBsYXRlUmVmLFxyXG5cdFx0XHRcdFx0XHR0aGlzLl9jb250ZXh0LFxyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdGlmICghdGhpcy5fZWxzZVZpZXdSZWYpIHtcclxuXHRcdFx0XHR0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcclxuXHRcdFx0XHR0aGlzLl90aGVuVmlld1JlZiA9IG51bGw7XHJcblxyXG5cdFx0XHRcdGlmICh0aGlzLl9lbHNlVGVtcGxhdGVSZWYpIHtcclxuXHRcdFx0XHRcdHRoaXMuX2Vsc2VWaWV3UmVmID0gdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcclxuXHRcdFx0XHRcdFx0dGhpcy5fZWxzZVRlbXBsYXRlUmVmLFxyXG5cdFx0XHRcdFx0XHR0aGlzLl9jb250ZXh0LFxyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcbiJdfQ==
|
|
1
|
+
import { Directive, Input, } from "@angular/core";
|
|
2
|
+
import { Subscription, Subject } from "rxjs";
|
|
3
|
+
import { tap, filter, pairwise, startWith } from "rxjs/operators";
|
|
4
|
+
import { isViewportSizeMatcherExpression, isViewportSizeMatcherTupleExpression, isViewportConditionMatch } from "./viewport.util";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./viewport.service";
|
|
7
|
+
export class SsvViewportMatcherContext {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.sizeType = null;
|
|
10
|
+
this.sizeTypeExclude = null;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class SsvViewportMatcherDirective {
|
|
14
|
+
constructor(viewport, renderer, viewContainer, cdr, templateRef) {
|
|
15
|
+
this.viewport = viewport;
|
|
16
|
+
this.renderer = renderer;
|
|
17
|
+
this.viewContainer = viewContainer;
|
|
18
|
+
this.cdr = cdr;
|
|
19
|
+
this._context = new SsvViewportMatcherContext();
|
|
20
|
+
this._thenTemplateRef = null;
|
|
21
|
+
this._elseTemplateRef = null;
|
|
22
|
+
this._thenViewRef = null;
|
|
23
|
+
this._elseViewRef = null;
|
|
24
|
+
this.sizeType$$ = Subscription.EMPTY;
|
|
25
|
+
this.cssClass$$ = Subscription.EMPTY;
|
|
26
|
+
this._update$ = new Subject();
|
|
27
|
+
this._thenTemplateRef = templateRef;
|
|
28
|
+
}
|
|
29
|
+
set ssvViewportMatcher(value) {
|
|
30
|
+
if (isViewportSizeMatcherExpression(value)) {
|
|
31
|
+
this._context.expression = value;
|
|
32
|
+
}
|
|
33
|
+
else if (isViewportSizeMatcherTupleExpression(value)) {
|
|
34
|
+
const [op, size] = value;
|
|
35
|
+
this._context.expression = {
|
|
36
|
+
operation: op,
|
|
37
|
+
size
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
this._context.sizeType = value;
|
|
42
|
+
}
|
|
43
|
+
if (this.sizeInfo) {
|
|
44
|
+
this._update$.next(this._context);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
set ssvViewportMatcherExclude(value) {
|
|
48
|
+
this._context.sizeTypeExclude = value;
|
|
49
|
+
if (this.sizeInfo) {
|
|
50
|
+
this._update$.next(this._context);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
set ssvViewportMatcherElse(templateRef) {
|
|
54
|
+
this._elseTemplateRef = templateRef;
|
|
55
|
+
this._elseViewRef = null; // clear previous view if any.
|
|
56
|
+
if (this.sizeInfo) {
|
|
57
|
+
this._update$.next(this._context);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
ngOnInit() {
|
|
61
|
+
// console.log("ssvViewportMatcher init");
|
|
62
|
+
this._update$
|
|
63
|
+
.pipe(
|
|
64
|
+
// tap(x => console.log(">>> ssvViewportMatcher - update triggered", x)),
|
|
65
|
+
filter(() => !!this.sizeInfo),
|
|
66
|
+
// tap(x => console.log(">>> ssvViewportMatcher - updating...", x)),
|
|
67
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
68
|
+
tap(() => this._updateView(this.sizeInfo)), tap(() => this.cdr.markForCheck()))
|
|
69
|
+
.subscribe();
|
|
70
|
+
this.sizeType$$ = this.viewport.sizeType$
|
|
71
|
+
.pipe(
|
|
72
|
+
// tap(x => console.log("ssvViewportMatcher - sizeType changed", x)),
|
|
73
|
+
tap(x => this.sizeInfo = x), tap(() => this._update$.next(this._context)))
|
|
74
|
+
.subscribe();
|
|
75
|
+
this.cssClass$$ = this.viewport.sizeType$
|
|
76
|
+
.pipe(startWith(undefined), filter(() => !!(this._thenViewRef || this._elseViewRef)), pairwise(), tap(([prev, curr]) => {
|
|
77
|
+
const el = this._thenViewRef
|
|
78
|
+
? this._thenViewRef.rootNodes[0]
|
|
79
|
+
: this._elseViewRef?.rootNodes[0];
|
|
80
|
+
if (!el.classList) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (prev) {
|
|
84
|
+
this.renderer.removeClass(el, `ssv-vp-size--${prev.name}`);
|
|
85
|
+
}
|
|
86
|
+
this.renderer.addClass(el, `ssv-vp-size--${curr?.name}`);
|
|
87
|
+
}))
|
|
88
|
+
.subscribe();
|
|
89
|
+
}
|
|
90
|
+
ngOnDestroy() {
|
|
91
|
+
this.cssClass$$.unsubscribe();
|
|
92
|
+
this.sizeType$$.unsubscribe();
|
|
93
|
+
this._update$.complete();
|
|
94
|
+
}
|
|
95
|
+
_updateView(sizeInfo) {
|
|
96
|
+
if (isViewportConditionMatch(sizeInfo, this._context, this.viewport.sizeTypeMap)) {
|
|
97
|
+
if (!this._thenViewRef) {
|
|
98
|
+
this.viewContainer.clear();
|
|
99
|
+
this._elseViewRef = null;
|
|
100
|
+
if (this._thenTemplateRef) {
|
|
101
|
+
this._thenViewRef = this.viewContainer.createEmbeddedView(this._thenTemplateRef, this._context);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
if (!this._elseViewRef) {
|
|
107
|
+
this.viewContainer.clear();
|
|
108
|
+
this._thenViewRef = null;
|
|
109
|
+
if (this._elseTemplateRef) {
|
|
110
|
+
this._elseViewRef = this.viewContainer.createEmbeddedView(this._elseTemplateRef, this._context);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
SsvViewportMatcherDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvViewportMatcherDirective, deps: [{ token: i1.ViewportService }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
117
|
+
SsvViewportMatcherDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SsvViewportMatcherDirective, selector: "[ssvViewportMatcher]", inputs: { ssvViewportMatcher: "ssvViewportMatcher", ssvViewportMatcherExclude: "ssvViewportMatcherExclude", ssvViewportMatcherElse: "ssvViewportMatcherElse" }, exportAs: ["ssvViewportMatcher"], ngImport: i0 });
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvViewportMatcherDirective, decorators: [{
|
|
119
|
+
type: Directive,
|
|
120
|
+
args: [{
|
|
121
|
+
selector: "[ssvViewportMatcher]",
|
|
122
|
+
exportAs: "ssvViewportMatcher",
|
|
123
|
+
}]
|
|
124
|
+
}], ctorParameters: function () { return [{ type: i1.ViewportService }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: i0.TemplateRef }]; }, propDecorators: { ssvViewportMatcher: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], ssvViewportMatcherExclude: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], ssvViewportMatcherElse: [{
|
|
129
|
+
type: Input
|
|
130
|
+
}] } });
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQtbWF0Y2hlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQtbWF0Y2hlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdOLFNBQVMsRUFHVCxLQUFLLEdBSUwsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xFLE9BQU8sRUFDTiwrQkFBK0IsRUFDL0Isb0NBQW9DLEVBQ3BDLHdCQUF3QixFQUN4QixNQUFNLGlCQUFpQixDQUFDOzs7QUFHekIsTUFBTSxPQUFPLHlCQUF5QjtJQUF0QztRQUVDLGFBQVEsR0FBNkIsSUFBSSxDQUFDO1FBQzFDLG9CQUFlLEdBQTZCLElBQUksQ0FBQztJQUdsRCxDQUFDO0NBQUE7QUFNRCxNQUFNLE9BQU8sMkJBQTJCO0lBK0N2QyxZQUNTLFFBQXlCLEVBQ3pCLFFBQW1CLEVBQ25CLGFBQStCLEVBQy9CLEdBQXNCLEVBQzlCLFdBQW1EO1FBSjNDLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBL0N2QixhQUFRLEdBQThCLElBQUkseUJBQXlCLEVBQUUsQ0FBQztRQUN0RSxxQkFBZ0IsR0FBa0QsSUFBSSxDQUFDO1FBQ3ZFLHFCQUFnQixHQUFrRCxJQUFJLENBQUM7UUFDdkUsaUJBQVksR0FBc0QsSUFBSSxDQUFDO1FBQ3ZFLGlCQUFZLEdBQXNELElBQUksQ0FBQztRQUN2RSxlQUFVLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUNoQyxlQUFV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RCxJQUFJLENBQUMsZ0JBQWdCLEVBQ3JCLElBQUksQ0FBQyxRQUFRLENBQ2IsQ0FBQztpQkFDRjthQUNEO1NBQ0Q7YUFBTTtZQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztnQkFFekIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FDeEQsSUFBSSxDQUFDLGdCQUFnQixFQUNyQixJQUFJLENBQUMsUUFBUSxDQUNiLENBQUM7aUJBQ0Y7YUFDRDtTQUNEO0lBQ0YsQ0FBQzs7d0hBcklXLDJCQUEyQjs0R0FBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLG9CQUFvQjtpQkFDOUI7dU5BY2Esa0JBQWtCO3NCQUE5QixLQUFLO2dCQWtCTyx5QkFBeUI7c0JBQXJDLEtBQUs7Z0JBUU8sc0JBQXNCO3NCQUFsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0T25Jbml0LFxuXHRPbkRlc3Ryb3ksXG5cdERpcmVjdGl2ZSxcblx0UmVuZGVyZXIyLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxuXHRJbnB1dCxcblx0RW1iZWRkZWRWaWV3UmVmLFxuXHRUZW1wbGF0ZVJlZixcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFwLCBmaWx0ZXIsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuaW1wb3J0IHsgVmlld3BvcnRTZXJ2aWNlIH0gZnJvbSBcIi4vdmlld3BvcnQuc2VydmljZVwiO1xuaW1wb3J0IHtcblx0aXNWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbixcblx0aXNWaWV3cG9ydFNpemVNYXRjaGVyVHVwbGVFeHByZXNzaW9uLFxuXHRpc1ZpZXdwb3J0Q29uZGl0aW9uTWF0Y2hcbn0gZnJvbSBcIi4vdmlld3BvcnQudXRpbFwiO1xuaW1wb3J0IHsgVmlld3BvcnRTaXplVHlwZUluZm8sIFZpZXdwb3J0TWF0Y2hDb25kaXRpb25zLCBWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbiB9IGZyb20gXCIuL3ZpZXdwb3J0Lm1vZGVsXCI7XG5cbmV4cG9ydCBjbGFzcyBTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0IGltcGxlbWVudHMgVmlld3BvcnRNYXRjaENvbmRpdGlvbnMge1xuXG5cdHNpemVUeXBlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgPSBudWxsO1xuXHRzaXplVHlwZUV4Y2x1ZGU6IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCA9IG51bGw7XG5cdGV4cHJlc3Npb24/OiBWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbjtcblxufVxuXG5ARGlyZWN0aXZlKHtcblx0c2VsZWN0b3I6IFwiW3NzdlZpZXdwb3J0TWF0Y2hlcl1cIixcblx0ZXhwb3J0QXM6IFwic3N2Vmlld3BvcnRNYXRjaGVyXCIsXG59KVxuZXhwb3J0IGNsYXNzIFNzdlZpZXdwb3J0TWF0Y2hlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuXHRzaXplSW5mbzogVmlld3BvcnRTaXplVHlwZUluZm8gfCB1bmRlZmluZWQ7XG5cblx0cHJpdmF0ZSBfY29udGV4dDogU3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dCA9IG5ldyBTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0KCk7XG5cdHByaXZhdGUgX3RoZW5UZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4gfCBudWxsID0gbnVsbDtcblx0cHJpdmF0ZSBfZWxzZVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0PiB8IG51bGwgPSBudWxsO1xuXHRwcml2YXRlIF90aGVuVmlld1JlZjogRW1iZWRkZWRWaWV3UmVmPFNzdlZpZXdwb3J0TWF0Y2hlckNvbnRleHQ+IHwgbnVsbCA9IG51bGw7XG5cdHByaXZhdGUgX2Vsc2VWaWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4gfCBudWxsID0gbnVsbDtcblx0cHJpdmF0ZSBzaXplVHlwZSQkID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXHRwcml2YXRlIGNzc0NsYXNzJCQgPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3VwZGF0ZSQgPSBuZXcgU3ViamVjdDxTc3ZWaWV3cG9ydE1hdGNoZXJDb250ZXh0PigpO1xuXG5cdEBJbnB1dCgpIHNldCBzc3ZWaWV3cG9ydE1hdGNoZXIodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb24pIHtcblx0XHRpZiAoaXNWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbih2YWx1ZSkpIHtcblx0XHRcdHRoaXMuX2NvbnRleHQuZXhwcmVzc2lvbiA9IHZhbHVlO1xuXHRcdH0gZWxzZSBpZiAoaXNWaWV3cG9ydFNpemVNYXRjaGVyVHVwbGVFeHByZXNzaW9uKHZhbHVlKSkge1xuXHRcdFx0Y29uc3QgW29wLCBzaXplXSA9IHZhbHVlO1xuXHRcdFx0dGhpcy5fY29udGV4dC5leHByZXNzaW9uID0ge1xuXHRcdFx0XHRvcGVyYXRpb246IG9wLFxuXHRcdFx0XHRzaXplXG5cdFx0XHR9O1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9jb250ZXh0LnNpemVUeXBlID0gdmFsdWU7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc2l6ZUluZm8pIHtcblx0XHRcdHRoaXMuX3VwZGF0ZSQubmV4dCh0aGlzLl9jb250ZXh0KTtcblx0XHR9XG5cdH1cblxuXHRASW5wdXQoKSBzZXQgc3N2Vmlld3BvcnRNYXRjaGVyRXhjbHVkZSh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pIHtcblx0XHR0aGlzLl9jb250ZXh0LnNpemVUeXBlRXhjbHVkZSA9IHZhbHVlO1xuXG5cdFx0aWYgKHRoaXMuc2l6ZUluZm8pIHtcblx0XHRcdHRoaXMuX3VwZGF0ZSQubmV4dCh0aGlzLl9jb250ZXh0KTtcblx0XHR9XG5cdH1cblxuXHRASW5wdXQoKSBzZXQgc3N2Vmlld3BvcnRNYXRjaGVyRWxzZSh0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4gfCBudWxsKSB7XG5cdFx0dGhpcy5fZWxzZVRlbXBsYXRlUmVmID0gdGVtcGxhdGVSZWY7XG5cdFx0dGhpcy5fZWxzZVZpZXdSZWYgPSBudWxsOyAvLyBjbGVhciBwcmV2aW91cyB2aWV3IGlmIGFueS5cblx0XHRpZiAodGhpcy5zaXplSW5mbykge1xuXHRcdFx0dGhpcy5fdXBkYXRlJC5uZXh0KHRoaXMuX2NvbnRleHQpO1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgdmlld3BvcnQ6IFZpZXdwb3J0U2VydmljZSxcblx0XHRwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG5cdFx0cHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcblx0XHR0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8U3N2Vmlld3BvcnRNYXRjaGVyQ29udGV4dD4sXG5cdCkge1xuXHRcdHRoaXMuX3RoZW5UZW1wbGF0ZVJlZiA9IHRlbXBsYXRlUmVmO1xuXHR9XG5cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdFx0Ly8gY29uc29sZS5sb2coXCJzc3ZWaWV3cG9ydE1hdGNoZXIgaW5pdFwiKTtcblxuXHRcdHRoaXMuX3VwZGF0ZSRcblx0XHRcdC5waXBlKFxuXHRcdFx0XHQvLyB0YXAoeCA9PiBjb25zb2xlLmxvZyhcIj4+PiBzc3ZWaWV3cG9ydE1hdGNoZXIgLSB1cGRhdGUgdHJpZ2dlcmVkXCIsIHgpKSxcblx0XHRcdFx0ZmlsdGVyKCgpID0+ICEhdGhpcy5zaXplSW5mbyksXG5cdFx0XHRcdC8vIHRhcCh4ID0+IGNvbnNvbGUubG9nKFwiPj4+IHNzdlZpZXdwb3J0TWF0Y2hlciAtIHVwZGF0aW5nLi4uXCIsIHgpKSxcblx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cblx0XHRcdFx0dGFwKCgpID0+IHRoaXMuX3VwZGF0ZVZpZXcodGhpcy5zaXplSW5mbyEpKSxcblx0XHRcdFx0dGFwKCgpID0+IHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpKVxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgpO1xuXG5cdFx0dGhpcy5zaXplVHlwZSQkID0gdGhpcy52aWV3cG9ydC5zaXplVHlwZSRcblx0XHRcdC5waXBlKFxuXHRcdFx0XHQvLyB0YXAoeCA9PiBjb25zb2xlLmxvZyhcInNzdlZpZXdwb3J0TWF0Y2hlciAtIHNpemVUeXBlIGNoYW5nZWRcIiwgeCkpLFxuXHRcdFx0XHR0YXAoeCA9PiB0aGlzLnNpemVJbmZvID0geCksXG5cdFx0XHRcdHRhcCgoKSA9PiB0aGlzLl91cGRhdGUkLm5leHQodGhpcy5fY29udGV4dCkpLFxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgpO1xuXG5cdFx0dGhpcy5jc3NDbGFzcyQkID0gdGhpcy52aWV3cG9ydC5zaXplVHlwZSRcblx0XHRcdC5waXBlKFxuXHRcdFx0XHRzdGFydFdpdGg8Vmlld3BvcnRTaXplVHlwZUluZm8gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCksXG5cdFx0XHRcdGZpbHRlcigoKSA9PiAhISh0aGlzLl90aGVuVmlld1JlZiB8fCB0aGlzLl9lbHNlVmlld1JlZikpLFxuXHRcdFx0XHRwYWlyd2lzZSgpLFxuXHRcdFx0XHR0YXAoKFtwcmV2LCBjdXJyXSkgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGVsOiBFbGVtZW50ID0gdGhpcy5fdGhlblZpZXdSZWZcblx0XHRcdFx0XHRcdD8gdGhpcy5fdGhlblZpZXdSZWYucm9vdE5vZGVzWzBdXG5cdFx0XHRcdFx0XHQ6IHRoaXMuX2Vsc2VWaWV3UmVmPy5yb290Tm9kZXNbMF07XG5cblx0XHRcdFx0XHRpZiAoIWVsLmNsYXNzTGlzdCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAocHJldikge1xuXHRcdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhlbCwgYHNzdi12cC1zaXplLS0ke3ByZXYubmFtZX1gKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5hZGRDbGFzcyhlbCwgYHNzdi12cC1zaXplLS0ke2N1cnI/Lm5hbWV9YCk7XG5cdFx0XHRcdH0pLFxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgpO1xuXHR9XG5cblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cdFx0dGhpcy5jc3NDbGFzcyQkLnVuc3Vic2NyaWJlKCk7XG5cdFx0dGhpcy5zaXplVHlwZSQkLnVuc3Vic2NyaWJlKCk7XG5cdFx0dGhpcy5fdXBkYXRlJC5jb21wbGV0ZSgpO1xuXHR9XG5cblx0cHJpdmF0ZSBfdXBkYXRlVmlldyhzaXplSW5mbzogVmlld3BvcnRTaXplVHlwZUluZm8pIHtcblx0XHRpZiAoaXNWaWV3cG9ydENvbmRpdGlvbk1hdGNoKHNpemVJbmZvLCB0aGlzLl9jb250ZXh0LCB0aGlzLnZpZXdwb3J0LnNpemVUeXBlTWFwKSkge1xuXHRcdFx0aWYgKCF0aGlzLl90aGVuVmlld1JlZikge1xuXHRcdFx0XHR0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcblx0XHRcdFx0dGhpcy5fZWxzZVZpZXdSZWYgPSBudWxsO1xuXG5cdFx0XHRcdGlmICh0aGlzLl90aGVuVGVtcGxhdGVSZWYpIHtcblx0XHRcdFx0XHR0aGlzLl90aGVuVmlld1JlZiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcoXG5cdFx0XHRcdFx0XHR0aGlzLl90aGVuVGVtcGxhdGVSZWYsXG5cdFx0XHRcdFx0XHR0aGlzLl9jb250ZXh0LFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9IGVsc2Uge1xuXHRcdFx0aWYgKCF0aGlzLl9lbHNlVmlld1JlZikge1xuXHRcdFx0XHR0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcblx0XHRcdFx0dGhpcy5fdGhlblZpZXdSZWYgPSBudWxsO1xuXG5cdFx0XHRcdGlmICh0aGlzLl9lbHNlVGVtcGxhdGVSZWYpIHtcblx0XHRcdFx0XHR0aGlzLl9lbHNlVmlld1JlZiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcoXG5cdFx0XHRcdFx0XHR0aGlzLl9lbHNlVGVtcGxhdGVSZWYsXG5cdFx0XHRcdFx0XHR0aGlzLl9jb250ZXh0LFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuIl19
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
import { Injectable, Inject, InjectionToken, Optional } from "@angular/core";
|
|
2
|
-
import { DeviceType } from "./viewport.model";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./viewport.model";
|
|
5
|
-
// todo: make this configurable
|
|
6
|
-
/** Viewport size for SSR. */
|
|
7
|
-
const viewportSizeSSR = {
|
|
8
|
-
[DeviceType.desktop]: {
|
|
9
|
-
width: 1366,
|
|
10
|
-
height: 768,
|
|
11
|
-
},
|
|
12
|
-
[DeviceType.tablet]: {
|
|
13
|
-
width: 768,
|
|
14
|
-
height: 1024,
|
|
15
|
-
},
|
|
16
|
-
[DeviceType.mobile]: {
|
|
17
|
-
width: 414,
|
|
18
|
-
height: 736,
|
|
19
|
-
},
|
|
20
|
-
};
|
|
21
|
-
export const UX_VIEWPORT_SSR_DEVICE = new InjectionToken("@ssv/ngx.ux-config/viewport/ssr-device");
|
|
22
|
-
export class ViewportServerSizeService {
|
|
23
|
-
constructor(deviceType) {
|
|
24
|
-
this.deviceType = deviceType;
|
|
25
|
-
}
|
|
26
|
-
get() {
|
|
27
|
-
return viewportSizeSSR[this.deviceType] || viewportSizeSSR[DeviceType.desktop];
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
ViewportServerSizeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, deps: [{ token: UX_VIEWPORT_SSR_DEVICE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
-
ViewportServerSizeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, providedIn: "root" });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, decorators: [{
|
|
33
|
-
type: Injectable,
|
|
34
|
-
args: [{
|
|
35
|
-
providedIn: "root",
|
|
36
|
-
}]
|
|
37
|
-
}], ctorParameters: function () { return [{ type: i1.DeviceType, decorators: [{
|
|
38
|
-
type: Optional
|
|
39
|
-
}, {
|
|
40
|
-
type: Inject,
|
|
41
|
-
args: [UX_VIEWPORT_SSR_DEVICE]
|
|
42
|
-
}] }]; } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable, Inject, InjectionToken, Optional } from "@angular/core";
|
|
2
|
+
import { DeviceType } from "./viewport.model";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./viewport.model";
|
|
5
|
+
// todo: make this configurable
|
|
6
|
+
/** Viewport size for SSR. */
|
|
7
|
+
const viewportSizeSSR = {
|
|
8
|
+
[DeviceType.desktop]: {
|
|
9
|
+
width: 1366,
|
|
10
|
+
height: 768,
|
|
11
|
+
},
|
|
12
|
+
[DeviceType.tablet]: {
|
|
13
|
+
width: 768,
|
|
14
|
+
height: 1024,
|
|
15
|
+
},
|
|
16
|
+
[DeviceType.mobile]: {
|
|
17
|
+
width: 414,
|
|
18
|
+
height: 736,
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
export const UX_VIEWPORT_SSR_DEVICE = new InjectionToken("@ssv/ngx.ux-config/viewport/ssr-device");
|
|
22
|
+
export class ViewportServerSizeService {
|
|
23
|
+
constructor(deviceType) {
|
|
24
|
+
this.deviceType = deviceType;
|
|
25
|
+
}
|
|
26
|
+
get() {
|
|
27
|
+
return viewportSizeSSR[this.deviceType] || viewportSizeSSR[DeviceType.desktop];
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
ViewportServerSizeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, deps: [{ token: UX_VIEWPORT_SSR_DEVICE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
+
ViewportServerSizeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, providedIn: "root" });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ViewportServerSizeService, decorators: [{
|
|
33
|
+
type: Injectable,
|
|
34
|
+
args: [{
|
|
35
|
+
providedIn: "root",
|
|
36
|
+
}]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.DeviceType, decorators: [{
|
|
38
|
+
type: Optional
|
|
39
|
+
}, {
|
|
40
|
+
type: Inject,
|
|
41
|
+
args: [UX_VIEWPORT_SSR_DEVICE]
|
|
42
|
+
}] }]; } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQtc2VydmVyLXNpemUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92aWV3cG9ydC92aWV3cG9ydC1zZXJ2ZXItc2l6ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0UsT0FBTyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBRzVELCtCQUErQjtBQUMvQiw2QkFBNkI7QUFDN0IsTUFBTSxlQUFlLEdBQTZCO0lBQ2pELENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3JCLEtBQUssRUFBRSxJQUFJO1FBQ1gsTUFBTSxFQUFFLEdBQUc7S0FDWDtJQUNELENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BCLEtBQUssRUFBRSxHQUFHO1FBQ1YsTUFBTSxFQUFFLElBQUk7S0FDWjtJQUNELENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BCLEtBQUssRUFBRSxHQUFHO1FBQ1YsTUFBTSxFQUFFLEdBQUc7S0FDWDtDQUNELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FBWSx3Q0FBd0MsQ0FBQyxDQUFDO0FBSzlHLE1BQU0sT0FBTyx5QkFBeUI7SUFFckMsWUFDcUQsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUUzRSxDQUFDO0lBRUQsR0FBRztRQUNGLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hGLENBQUM7O3NIQVRXLHlCQUF5QixrQkFHaEIsc0JBQXNCOzBIQUgvQix5QkFBeUIsY0FGekIsTUFBTTsyRkFFTix5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFJRSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gXCIuLi9pbnRlcm5hbC9pbnRlcm5hbC5tb2RlbFwiO1xuaW1wb3J0IHsgRGV2aWNlVHlwZSwgVmlld3BvcnRTaXplIH0gZnJvbSBcIi4vdmlld3BvcnQubW9kZWxcIjtcbmltcG9ydCB7IFV4T3B0aW9ucyB9IGZyb20gXCIuLi9jb25maWdcIjtcblxuLy8gdG9kbzogbWFrZSB0aGlzIGNvbmZpZ3VyYWJsZVxuLyoqIFZpZXdwb3J0IHNpemUgZm9yIFNTUi4gKi9cbmNvbnN0IHZpZXdwb3J0U2l6ZVNTUjogRGljdGlvbmFyeTxWaWV3cG9ydFNpemU+ID0ge1xuXHRbRGV2aWNlVHlwZS5kZXNrdG9wXToge1xuXHRcdHdpZHRoOiAxMzY2LFxuXHRcdGhlaWdodDogNzY4LFxuXHR9LFxuXHRbRGV2aWNlVHlwZS50YWJsZXRdOiB7XG5cdFx0d2lkdGg6IDc2OCxcblx0XHRoZWlnaHQ6IDEwMjQsXG5cdH0sXG5cdFtEZXZpY2VUeXBlLm1vYmlsZV06IHtcblx0XHR3aWR0aDogNDE0LFxuXHRcdGhlaWdodDogNzM2LFxuXHR9LFxufTtcblxuZXhwb3J0IGNvbnN0IFVYX1ZJRVdQT1JUX1NTUl9ERVZJQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48VXhPcHRpb25zPihcIkBzc3Yvbmd4LnV4LWNvbmZpZy92aWV3cG9ydC9zc3ItZGV2aWNlXCIpO1xuXG5ASW5qZWN0YWJsZSh7XG5cdHByb3ZpZGVkSW46IFwicm9vdFwiLFxufSlcbmV4cG9ydCBjbGFzcyBWaWV3cG9ydFNlcnZlclNpemVTZXJ2aWNlIHtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRAT3B0aW9uYWwoKSBASW5qZWN0KFVYX1ZJRVdQT1JUX1NTUl9ERVZJQ0UpIHByaXZhdGUgZGV2aWNlVHlwZTogRGV2aWNlVHlwZSxcblx0KSB7XG5cdH1cblxuXHRnZXQoKTogVmlld3BvcnRTaXplIHtcblx0XHRyZXR1cm4gdmlld3BvcnRTaXplU1NSW3RoaXMuZGV2aWNlVHlwZV0gfHwgdmlld3BvcnRTaXplU1NSW0RldmljZVR5cGUuZGVza3RvcF07XG5cdH1cblxufVxuIl19
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import { ViewportDataMatchStrategy } from "./viewport-data/viewport-data-matcher";
|
|
2
|
-
/** Default viewport breakpoints. */
|
|
3
|
-
export const UX_VIEWPORT_DEFAULT_BREAKPOINTS = {
|
|
4
|
-
xsmall: 450,
|
|
5
|
-
small: 767,
|
|
6
|
-
medium: 992,
|
|
7
|
-
large:
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHbEYsb0NBQW9DO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUF1QjtJQUNsRSxNQUFNLEVBQUUsR0FBRztJQUNYLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLEdBQUc7SUFDWCxLQUFLLEVBQUUsSUFBSTtJQUNYLEdBQUcsRUFBRSxJQUFJO0lBQ1QsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLEtBQUssRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFzQjtJQUM1RCxrQkFBa0IsRUFBRSxFQUFFO0lBQ3RCLFdBQVcsRUFBRSwrQkFBK0I7SUFDNUMsd0JBQXdCLEVBQUUseUJBQXlCLENBQUMsT0FBTztDQUMzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gXCIuLi9pbnRlcm5hbC9pbnRlcm5hbC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBWaWV3cG9ydERhdGFNYXRjaFN0cmF0ZWd5IH0gZnJvbSBcIi4vdmlld3BvcnQtZGF0YS92aWV3cG9ydC1kYXRhLW1hdGNoZXJcIjtcclxuaW1wb3J0IHsgVXhWaWV3cG9ydE9wdGlvbnMgfSBmcm9tIFwiLi92aWV3cG9ydC5tb2RlbFwiO1xyXG5cclxuLyoqIERlZmF1bHQgdmlld3BvcnQgYnJlYWtwb2ludHMuICovXHJcbmV4cG9ydCBjb25zdCBVWF9WSUVXUE9SVF9ERUZBVUxUX0JSRUFLUE9JTlRTOiBEaWN0aW9uYXJ5PG51bWJlcj4gPSB7XHJcblx0eHNtYWxsOiA0NTAsXHJcblx0c21hbGw6IDc2NyxcclxuXHRtZWRpdW06IDk5MixcclxuXHRsYXJnZTogMTI4MCxcclxuXHRmaGQ6IDE5MjAsXHJcblx0cWhkOiAyNTYwLFxyXG5cdHVoZDRrOiAzODQwLFxyXG5cdHVoZDhrOiA3NjgwLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFVYX1ZJRVdQT1JUX0RFRkFVTFRfQ09ORklHOiBVeFZpZXdwb3J0T3B0aW9ucyA9IHtcclxuXHRyZXNpemVQb2xsaW5nU3BlZWQ6IDMzLFxyXG5cdGJyZWFrcG9pbnRzOiBVWF9WSUVXUE9SVF9ERUZBVUxUX0JSRUFLUE9JTlRTLFxyXG5cdGRlZmF1bHREYXRhTWF0Y2hTdHJhdGVneTogVmlld3BvcnREYXRhTWF0Y2hTdHJhdGVneS5zbWFsbGVyLFxyXG59O1xyXG4iXX0=
|
|
1
|
+
import { ViewportDataMatchStrategy } from "./viewport-data/viewport-data-matcher";
|
|
2
|
+
/** Default viewport breakpoints. */
|
|
3
|
+
export const UX_VIEWPORT_DEFAULT_BREAKPOINTS = {
|
|
4
|
+
xsmall: 450,
|
|
5
|
+
small: 767,
|
|
6
|
+
medium: 992,
|
|
7
|
+
large: 1200,
|
|
8
|
+
xlarge: 1500,
|
|
9
|
+
xxlarge: 1920,
|
|
10
|
+
xxlarge1: 2100,
|
|
11
|
+
};
|
|
12
|
+
export const UX_VIEWPORT_DEFAULT_CONFIG = {
|
|
13
|
+
resizePollingSpeed: 33,
|
|
14
|
+
breakpoints: UX_VIEWPORT_DEFAULT_BREAKPOINTS,
|
|
15
|
+
defaultDataMatchStrategy: ViewportDataMatchStrategy.smaller,
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHbEYsb0NBQW9DO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUF1QjtJQUNsRSxNQUFNLEVBQUUsR0FBRztJQUNYLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLEdBQUc7SUFDWCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLElBQUk7SUFDYixRQUFRLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBc0I7SUFDNUQsa0JBQWtCLEVBQUUsRUFBRTtJQUN0QixXQUFXLEVBQUUsK0JBQStCO0lBQzVDLHdCQUF3QixFQUFFLHlCQUF5QixDQUFDLE9BQU87Q0FDM0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tIFwiLi4vaW50ZXJuYWwvaW50ZXJuYWwubW9kZWxcIjtcbmltcG9ydCB7IFZpZXdwb3J0RGF0YU1hdGNoU3RyYXRlZ3kgfSBmcm9tIFwiLi92aWV3cG9ydC1kYXRhL3ZpZXdwb3J0LWRhdGEtbWF0Y2hlclwiO1xuaW1wb3J0IHsgVXhWaWV3cG9ydE9wdGlvbnMgfSBmcm9tIFwiLi92aWV3cG9ydC5tb2RlbFwiO1xuXG4vKiogRGVmYXVsdCB2aWV3cG9ydCBicmVha3BvaW50cy4gKi9cbmV4cG9ydCBjb25zdCBVWF9WSUVXUE9SVF9ERUZBVUxUX0JSRUFLUE9JTlRTOiBEaWN0aW9uYXJ5PG51bWJlcj4gPSB7XG5cdHhzbWFsbDogNDUwLFxuXHRzbWFsbDogNzY3LFxuXHRtZWRpdW06IDk5Mixcblx0bGFyZ2U6IDEyMDAsXG5cdHhsYXJnZTogMTUwMCxcblx0eHhsYXJnZTogMTkyMCxcblx0eHhsYXJnZTE6IDIxMDAsXG59O1xuXG5leHBvcnQgY29uc3QgVVhfVklFV1BPUlRfREVGQVVMVF9DT05GSUc6IFV4Vmlld3BvcnRPcHRpb25zID0ge1xuXHRyZXNpemVQb2xsaW5nU3BlZWQ6IDMzLFxuXHRicmVha3BvaW50czogVVhfVklFV1BPUlRfREVGQVVMVF9CUkVBS1BPSU5UUyxcblx0ZGVmYXVsdERhdGFNYXRjaFN0cmF0ZWd5OiBWaWV3cG9ydERhdGFNYXRjaFN0cmF0ZWd5LnNtYWxsZXIsXG59O1xuIl19
|
|
@@ -1,31 +1,30 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The indices of each breakpoint provided based on the `UX_VIEWPORT_DEFAULT_BREAKPOINTS`.
|
|
3
|
-
* @see UX_VIEWPORT_DEFAULT_BREAKPOINTS
|
|
4
|
-
*/
|
|
5
|
-
export var ViewportSizeType;
|
|
6
|
-
(function (ViewportSizeType) {
|
|
7
|
-
ViewportSizeType[ViewportSizeType["xsmall"] = 0] = "xsmall";
|
|
8
|
-
ViewportSizeType[ViewportSizeType["small"] = 1] = "small";
|
|
9
|
-
ViewportSizeType[ViewportSizeType["medium"] = 2] = "medium";
|
|
10
|
-
ViewportSizeType[ViewportSizeType["large"] = 3] = "large";
|
|
11
|
-
ViewportSizeType[ViewportSizeType["
|
|
12
|
-
ViewportSizeType[ViewportSizeType["
|
|
13
|
-
ViewportSizeType[ViewportSizeType["
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
ComparisonOperation["
|
|
19
|
-
ComparisonOperation["
|
|
20
|
-
ComparisonOperation["
|
|
21
|
-
ComparisonOperation["
|
|
22
|
-
ComparisonOperation["
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
DeviceType["
|
|
28
|
-
DeviceType["
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7OztHQUdHO0FBQ0gsTUFBTSxDQUFOLElBQVksZ0JBU1g7QUFURCxXQUFZLGdCQUFnQjtJQUMzQiwyREFBVSxDQUFBO0lBQ1YseURBQVMsQ0FBQTtJQUNULDJEQUFVLENBQUE7SUFDVix5REFBUyxDQUFBO0lBQ1QscURBQU8sQ0FBQTtJQUNQLHFEQUFPLENBQUE7SUFDUCx5REFBUyxDQUFBO0lBQ1QseURBQVMsQ0FBQTtBQUNWLENBQUMsRUFUVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBUzNCO0FBRUQsTUFBTSxDQUFOLElBQVksbUJBT1g7QUFQRCxXQUFZLG1CQUFtQjtJQUM5QixtQ0FBWSxDQUFBO0lBQ1osdUNBQWdCLENBQUE7SUFDaEIscUNBQWMsQ0FBQTtJQUNkLDZDQUFzQixDQUFBO0lBQ3RCLHdDQUFpQixDQUFBO0lBQ2pCLGdEQUF5QixDQUFBO0FBQzFCLENBQUMsRUFQVyxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBTzlCO0FBRUQsTUFBTSxDQUFOLElBQVksVUFJWDtBQUpELFdBQVksVUFBVTtJQUNyQixpQ0FBbUIsQ0FBQTtJQUNuQiwrQkFBaUIsQ0FBQTtJQUNqQiwrQkFBaUIsQ0FBQTtBQUNsQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSBcIi4uL2ludGVybmFsL2ludGVybmFsLm1vZGVsXCI7XHJcbmltcG9ydCB7IFZpZXdwb3J0RGF0YU1hdGNoU3RyYXRlZ3kgfSBmcm9tIFwiLi92aWV3cG9ydC1kYXRhXCI7XHJcblxyXG4vKipcclxuICogVGhlIGluZGljZXMgb2YgZWFjaCBicmVha3BvaW50IHByb3ZpZGVkIGJhc2VkIG9uIHRoZSBgVVhfVklFV1BPUlRfREVGQVVMVF9CUkVBS1BPSU5UU2AuXHJcbiAqIEBzZWUgVVhfVklFV1BPUlRfREVGQVVMVF9CUkVBS1BPSU5UU1xyXG4gKi9cclxuZXhwb3J0IGVudW0gVmlld3BvcnRTaXplVHlwZSB7XHJcblx0eHNtYWxsID0gMCxcclxuXHRzbWFsbCA9IDEsXHJcblx0bWVkaXVtID0gMixcclxuXHRsYXJnZSA9IDMsXHJcblx0ZmhkID0gNCxcclxuXHRxaGQgPSA2LFxyXG5cdHVoZDRrID0gNyxcclxuXHR1aGQ4ayA9IDgsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENvbXBhcmlzb25PcGVyYXRpb24ge1xyXG5cdGVxdWFscyA9IFwiPVwiLFxyXG5cdG5vdEVxdWFscyA9IFwiPD5cIixcclxuXHRsZXNzVGhhbiA9IFwiPFwiLFxyXG5cdGxlc3NPckVxdWFsVGhhbiA9IFwiPD1cIixcclxuXHRncmVhdGVyVGhhbiA9IFwiPlwiLFxyXG5cdGdyZWF0ZXJPckVxdWFsVGhhbiA9IFwiPj1cIixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRGV2aWNlVHlwZSB7XHJcblx0ZGVza3RvcCA9IFwiZGVza3RvcFwiLFxyXG5cdG1vYmlsZSA9IFwibW9iaWxlXCIsXHJcblx0dGFibGV0ID0gXCJ0YWJsZXRcIlxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFV4Vmlld3BvcnRPcHRpb25zIHtcclxuXHQvKiogUG9sbGluZyBzcGVlZCBvbiByZXNpemluZyAoaW4gbWlsbGlzZWNvbmRzKS4gZS5nLiB0aGUgaGlnaGVyIHRoZSBudW1iZXIgdGhlIGxvbmdlciBpdCB0YWtlcyB0byByZWNhbGN1bGF0ZS4gKi9cclxuXHRyZXNpemVQb2xsaW5nU3BlZWQ6IG51bWJlcjtcclxuXHJcblx0LyoqIEJyZWFrcG9pbnRzIHRvIHVzZS4gS2V5IG5lZWRzIHRvIG1hdGNoIHRoZSBzaXplIHR5cGUgYW5kIHRoZSB2YWx1ZSB0aGUgd2lkdGggdGhyZXNob2xkLlxyXG5cdCAqIGUuZy4gZ2l2ZW4gd2lkdGggJzEwMDAnIGFuZCBgbWVkaXVtYCBpcyBzZXQgdG8gJzk5MicgPT4gYGxhcmdlYC5cclxuXHQgKi9cclxuXHRicmVha3BvaW50czogRGljdGlvbmFyeTxudW1iZXI+O1xyXG5cclxuXHQvKiogRGVmYXVsdCBkYXRhIG1hdGNoIHN0cmF0ZWd5IHRvIHVzZS4gKi9cclxuXHRkZWZhdWx0RGF0YU1hdGNoU3RyYXRlZ3k6IFZpZXdwb3J0RGF0YU1hdGNoU3RyYXRlZ3k7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVmlld3BvcnRTaXplIHtcclxuXHR3aWR0aDogbnVtYmVyO1xyXG5cdGhlaWdodDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFZpZXdwb3J0U2l6ZVR5cGVJbmZvIHtcclxuXHR0eXBlOiBudW1iZXI7XHJcblx0bmFtZTogc3RyaW5nO1xyXG5cdHdpZHRoVGhyZXNob2xkOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVmlld3BvcnRNYXRjaENvbmRpdGlvbnMge1xyXG5cdHNpemVUeXBlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xyXG5cdHNpemVUeXBlRXhjbHVkZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcclxuXHRleHByZXNzaW9uPzogVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb24ge1xyXG5cdHNpemU6IHN0cmluZztcclxuXHRvcGVyYXRpb246IENvbXBhcmlzb25PcGVyYXRpb247XHJcbn1cclxuIl19
|
|
1
|
+
/**
|
|
2
|
+
* The indices of each breakpoint provided based on the `UX_VIEWPORT_DEFAULT_BREAKPOINTS`.
|
|
3
|
+
* @see UX_VIEWPORT_DEFAULT_BREAKPOINTS
|
|
4
|
+
*/
|
|
5
|
+
export var ViewportSizeType;
|
|
6
|
+
(function (ViewportSizeType) {
|
|
7
|
+
ViewportSizeType[ViewportSizeType["xsmall"] = 0] = "xsmall";
|
|
8
|
+
ViewportSizeType[ViewportSizeType["small"] = 1] = "small";
|
|
9
|
+
ViewportSizeType[ViewportSizeType["medium"] = 2] = "medium";
|
|
10
|
+
ViewportSizeType[ViewportSizeType["large"] = 3] = "large";
|
|
11
|
+
ViewportSizeType[ViewportSizeType["xlarge"] = 4] = "xlarge";
|
|
12
|
+
ViewportSizeType[ViewportSizeType["xxlarge"] = 5] = "xxlarge";
|
|
13
|
+
ViewportSizeType[ViewportSizeType["xxlarge1"] = 6] = "xxlarge1";
|
|
14
|
+
})(ViewportSizeType || (ViewportSizeType = {}));
|
|
15
|
+
export var ComparisonOperation;
|
|
16
|
+
(function (ComparisonOperation) {
|
|
17
|
+
ComparisonOperation["equals"] = "=";
|
|
18
|
+
ComparisonOperation["notEquals"] = "<>";
|
|
19
|
+
ComparisonOperation["lessThan"] = "<";
|
|
20
|
+
ComparisonOperation["lessOrEqualThan"] = "<=";
|
|
21
|
+
ComparisonOperation["greaterThan"] = ">";
|
|
22
|
+
ComparisonOperation["greaterOrEqualThan"] = ">=";
|
|
23
|
+
})(ComparisonOperation || (ComparisonOperation = {}));
|
|
24
|
+
export var DeviceType;
|
|
25
|
+
(function (DeviceType) {
|
|
26
|
+
DeviceType["desktop"] = "desktop";
|
|
27
|
+
DeviceType["mobile"] = "mobile";
|
|
28
|
+
DeviceType["tablet"] = "tablet";
|
|
29
|
+
})(DeviceType || (DeviceType = {}));
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlld3BvcnQvdmlld3BvcnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7OztHQUdHO0FBQ0gsTUFBTSxDQUFOLElBQVksZ0JBUVg7QUFSRCxXQUFZLGdCQUFnQjtJQUMzQiwyREFBVSxDQUFBO0lBQ1YseURBQVMsQ0FBQTtJQUNULDJEQUFVLENBQUE7SUFDVix5REFBUyxDQUFBO0lBQ1QsMkRBQVUsQ0FBQTtJQUNWLDZEQUFXLENBQUE7SUFDWCwrREFBWSxDQUFBO0FBQ2IsQ0FBQyxFQVJXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFRM0I7QUFFRCxNQUFNLENBQU4sSUFBWSxtQkFPWDtBQVBELFdBQVksbUJBQW1CO0lBQzlCLG1DQUFZLENBQUE7SUFDWix1Q0FBZ0IsQ0FBQTtJQUNoQixxQ0FBYyxDQUFBO0lBQ2QsNkNBQXNCLENBQUE7SUFDdEIsd0NBQWlCLENBQUE7SUFDakIsZ0RBQXlCLENBQUE7QUFDMUIsQ0FBQyxFQVBXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFPOUI7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3JCLGlDQUFtQixDQUFBO0lBQ25CLCtCQUFpQixDQUFBO0lBQ2pCLCtCQUFpQixDQUFBO0FBQ2xCLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tIFwiLi4vaW50ZXJuYWwvaW50ZXJuYWwubW9kZWxcIjtcbmltcG9ydCB7IFZpZXdwb3J0RGF0YU1hdGNoU3RyYXRlZ3kgfSBmcm9tIFwiLi92aWV3cG9ydC1kYXRhXCI7XG5cbi8qKlxuICogVGhlIGluZGljZXMgb2YgZWFjaCBicmVha3BvaW50IHByb3ZpZGVkIGJhc2VkIG9uIHRoZSBgVVhfVklFV1BPUlRfREVGQVVMVF9CUkVBS1BPSU5UU2AuXG4gKiBAc2VlIFVYX1ZJRVdQT1JUX0RFRkFVTFRfQlJFQUtQT0lOVFNcbiAqL1xuZXhwb3J0IGVudW0gVmlld3BvcnRTaXplVHlwZSB7XG5cdHhzbWFsbCA9IDAsXG5cdHNtYWxsID0gMSxcblx0bWVkaXVtID0gMixcblx0bGFyZ2UgPSAzLFxuXHR4bGFyZ2UgPSA0LFxuXHR4eGxhcmdlID0gNSxcblx0eHhsYXJnZTEgPSA2LFxufVxuXG5leHBvcnQgZW51bSBDb21wYXJpc29uT3BlcmF0aW9uIHtcblx0ZXF1YWxzID0gXCI9XCIsXG5cdG5vdEVxdWFscyA9IFwiPD5cIixcblx0bGVzc1RoYW4gPSBcIjxcIixcblx0bGVzc09yRXF1YWxUaGFuID0gXCI8PVwiLFxuXHRncmVhdGVyVGhhbiA9IFwiPlwiLFxuXHRncmVhdGVyT3JFcXVhbFRoYW4gPSBcIj49XCIsXG59XG5cbmV4cG9ydCBlbnVtIERldmljZVR5cGUge1xuXHRkZXNrdG9wID0gXCJkZXNrdG9wXCIsXG5cdG1vYmlsZSA9IFwibW9iaWxlXCIsXG5cdHRhYmxldCA9IFwidGFibGV0XCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVeFZpZXdwb3J0T3B0aW9ucyB7XG5cdC8qKiBQb2xsaW5nIHNwZWVkIG9uIHJlc2l6aW5nIChpbiBtaWxsaXNlY29uZHMpLiBlLmcuIHRoZSBoaWdoZXIgdGhlIG51bWJlciB0aGUgbG9uZ2VyIGl0IHRha2VzIHRvIHJlY2FsY3VsYXRlLiAqL1xuXHRyZXNpemVQb2xsaW5nU3BlZWQ6IG51bWJlcjtcblxuXHQvKiogQnJlYWtwb2ludHMgdG8gdXNlLiBLZXkgbmVlZHMgdG8gbWF0Y2ggdGhlIHNpemUgdHlwZSBhbmQgdGhlIHZhbHVlIHRoZSB3aWR0aCB0aHJlc2hvbGQuXG5cdCAqIGUuZy4gZ2l2ZW4gd2lkdGggJzEwMDAnIGFuZCBgbWVkaXVtYCBpcyBzZXQgdG8gJzk5MicgPT4gYGxhcmdlYC5cblx0ICovXG5cdGJyZWFrcG9pbnRzOiBEaWN0aW9uYXJ5PG51bWJlcj47XG5cblx0LyoqIERlZmF1bHQgZGF0YSBtYXRjaCBzdHJhdGVneSB0byB1c2UuICovXG5cdGRlZmF1bHREYXRhTWF0Y2hTdHJhdGVneTogVmlld3BvcnREYXRhTWF0Y2hTdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydFNpemUge1xuXHR3aWR0aDogbnVtYmVyO1xuXHRoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydFNpemVUeXBlSW5mbyB7XG5cdHR5cGU6IG51bWJlcjtcblx0bmFtZTogc3RyaW5nO1xuXHR3aWR0aFRocmVzaG9sZDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZpZXdwb3J0TWF0Y2hDb25kaXRpb25zIHtcblx0c2l6ZVR5cGU/OiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGw7XG5cdHNpemVUeXBlRXhjbHVkZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcblx0ZXhwcmVzc2lvbj86IFZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uIHtcblx0c2l6ZTogc3RyaW5nO1xuXHRvcGVyYXRpb246IENvbXBhcmlzb25PcGVyYXRpb247XG59XG4iXX0=
|