@ssv/ngx.ux 2.0.2-dev.7 → 2.0.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.
Files changed (75) hide show
  1. package/CHANGELOG.md +149 -0
  2. package/LICENSE +21 -21
  3. package/README.md +297 -297
  4. package/bundles/ssv-ngx.ux.umd.js +1219 -0
  5. package/bundles/ssv-ngx.ux.umd.js.map +1 -0
  6. package/bundles/ssv-ngx.ux.umd.min.js +16 -0
  7. package/bundles/ssv-ngx.ux.umd.min.js.map +1 -0
  8. package/config.d.ts +7 -7
  9. package/esm2015/config.js +7 -0
  10. package/esm2015/index.js +5 -0
  11. package/esm2015/internal/internal.model.js +2 -0
  12. package/esm2015/module.js +50 -0
  13. package/esm2015/platform/window.js +28 -0
  14. package/esm2015/ssv-ngx.ux.js +7 -0
  15. package/esm2015/version.js +2 -0
  16. package/esm2015/viewport/index.js +9 -0
  17. package/esm2015/viewport/viewport-data/index.js +4 -0
  18. package/esm2015/viewport/viewport-data/viewport-data-matcher.js +108 -0
  19. package/esm2015/viewport/viewport-data/viewport-data.pipe.js +43 -0
  20. package/esm2015/viewport/viewport-data/viewport-data.service.js +38 -0
  21. package/esm2015/viewport/viewport-data/viewport-data.utils.js +100 -0
  22. package/esm2015/viewport/viewport-matcher-var.directive.js +64 -0
  23. package/esm2015/viewport/viewport-matcher.directive.js +134 -0
  24. package/esm2015/viewport/viewport-server-size.service.js +38 -0
  25. package/esm2015/viewport/viewport.const.js +18 -0
  26. package/esm2015/viewport/viewport.model.js +31 -0
  27. package/esm2015/viewport/viewport.service.js +69 -0
  28. package/esm2015/viewport/viewport.util.js +117 -0
  29. package/esm2020/config.mjs +7 -7
  30. package/esm2020/index.mjs +5 -5
  31. package/esm2020/internal/internal.model.mjs +2 -2
  32. package/esm2020/module.mjs +65 -65
  33. package/esm2020/platform/window.mjs +30 -30
  34. package/esm2020/ssv-ngx.ux.mjs +4 -4
  35. package/esm2020/version.mjs +2 -2
  36. package/esm2020/viewport/index.mjs +9 -9
  37. package/esm2020/viewport/viewport-data/index.mjs +4 -4
  38. package/esm2020/viewport/viewport-data/viewport-data-matcher.mjs +108 -108
  39. package/esm2020/viewport/viewport-data/viewport-data.pipe.mjs +43 -43
  40. package/esm2020/viewport/viewport-data/viewport-data.service.mjs +37 -37
  41. package/esm2020/viewport/viewport-data/viewport-data.utils.mjs +100 -100
  42. package/esm2020/viewport/viewport-matcher-var.directive.mjs +63 -63
  43. package/esm2020/viewport/viewport-matcher.directive.mjs +131 -131
  44. package/esm2020/viewport/viewport-server-size.service.mjs +43 -43
  45. package/esm2020/viewport/viewport.const.mjs +18 -18
  46. package/esm2020/viewport/viewport.model.mjs +31 -31
  47. package/esm2020/viewport/viewport.service.mjs +67 -66
  48. package/esm2020/viewport/viewport.util.mjs +117 -117
  49. package/fesm2015/ssv-ngx.ux.js +807 -0
  50. package/fesm2015/ssv-ngx.ux.js.map +1 -0
  51. package/fesm2015/ssv-ngx.ux.mjs +790 -789
  52. package/fesm2015/ssv-ngx.ux.mjs.map +1 -1
  53. package/fesm2020/ssv-ngx.ux.mjs +784 -783
  54. package/fesm2020/ssv-ngx.ux.mjs.map +1 -1
  55. package/index.d.ts +4 -4
  56. package/internal/internal.model.d.ts +9 -9
  57. package/module.d.ts +19 -19
  58. package/package.json +1 -1
  59. package/platform/window.d.ts +13 -13
  60. package/ssv-ngx.ux.d.ts +6 -0
  61. package/ssv-ngx.ux.metadata.json +1 -0
  62. package/version.d.ts +1 -1
  63. package/viewport/index.d.ts +8 -8
  64. package/viewport/viewport-data/index.d.ts +3 -3
  65. package/viewport/viewport-data/viewport-data-matcher.d.ts +32 -32
  66. package/viewport/viewport-data/viewport-data.pipe.d.ts +18 -18
  67. package/viewport/viewport-data/viewport-data.service.d.ts +20 -20
  68. package/viewport/viewport-data/viewport-data.utils.d.ts +21 -21
  69. package/viewport/viewport-matcher-var.directive.d.ts +25 -25
  70. package/viewport/viewport-matcher.directive.d.ts +33 -33
  71. package/viewport/viewport-server-size.service.d.ts +12 -12
  72. package/viewport/viewport.const.d.ts +5 -5
  73. package/viewport/viewport.model.d.ts +57 -57
  74. package/viewport/viewport.service.d.ts +37 -37
  75. package/viewport/viewport.util.d.ts +25 -25
@@ -0,0 +1,38 @@
1
+ import { Injectable, Inject, InjectionToken, Optional } from "@angular/core";
2
+ import { DeviceType } from "./viewport.model";
3
+ import * as i0 from "@angular/core";
4
+ // todo: make this configurable
5
+ /** Viewport size for SSR. */
6
+ const viewportSizeSSR = {
7
+ [DeviceType.desktop]: {
8
+ width: 1366,
9
+ height: 768,
10
+ },
11
+ [DeviceType.tablet]: {
12
+ width: 768,
13
+ height: 1024,
14
+ },
15
+ [DeviceType.mobile]: {
16
+ width: 414,
17
+ height: 736,
18
+ },
19
+ };
20
+ export const UX_VIEWPORT_SSR_DEVICE = new InjectionToken("@ssv/ngx.ux-config/viewport/ssr-device");
21
+ export class ViewportServerSizeService {
22
+ constructor(deviceType) {
23
+ this.deviceType = deviceType;
24
+ }
25
+ get() {
26
+ return viewportSizeSSR[this.deviceType] || viewportSizeSSR[DeviceType.desktop];
27
+ }
28
+ }
29
+ ViewportServerSizeService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ViewportServerSizeService_Factory() { return new ViewportServerSizeService(i0.ɵɵinject(UX_VIEWPORT_SSR_DEVICE, 8)); }, token: ViewportServerSizeService, providedIn: "root" });
30
+ ViewportServerSizeService.decorators = [
31
+ { type: Injectable, args: [{
32
+ providedIn: "root",
33
+ },] }
34
+ ];
35
+ ViewportServerSizeService.ctorParameters = () => [
36
+ { type: DeviceType, decorators: [{ type: Optional }, { type: Inject, args: [UX_VIEWPORT_SSR_DEVICE,] }] }
37
+ ];
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQtc2VydmVyLXNpemUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9kZXYvZ2l0L0Bzc3Yubmd4LnV4L3NyYy8iLCJzb3VyY2VzIjpbInZpZXdwb3J0L3ZpZXdwb3J0LXNlcnZlci1zaXplLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc3RSxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLGtCQUFrQixDQUFDOztBQUc1RCwrQkFBK0I7QUFDL0IsNkJBQTZCO0FBQzdCLE1BQU0sZUFBZSxHQUE2QjtJQUNqRCxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUNyQixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxHQUFHO0tBQ1g7SUFDRCxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNwQixLQUFLLEVBQUUsR0FBRztRQUNWLE1BQU0sRUFBRSxJQUFJO0tBQ1o7SUFDRCxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNwQixLQUFLLEVBQUUsR0FBRztRQUNWLE1BQU0sRUFBRSxHQUFHO0tBQ1g7Q0FDRCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQVksd0NBQXdDLENBQUMsQ0FBQztBQUs5RyxNQUFNLE9BQU8seUJBQXlCO0lBRXJDLFlBQ3FELFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFFM0UsQ0FBQztJQUVELEdBQUc7UUFDRixPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDOzs7O1lBWkQsVUFBVSxTQUFDO2dCQUNYLFVBQVUsRUFBRSxNQUFNO2FBQ2xCOzs7WUF4QlEsVUFBVSx1QkE0QmhCLFFBQVEsWUFBSSxNQUFNLFNBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgT3B0aW9uYWwgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gXCIuLi9pbnRlcm5hbC9pbnRlcm5hbC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBEZXZpY2VUeXBlLCBWaWV3cG9ydFNpemUgfSBmcm9tIFwiLi92aWV3cG9ydC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBVeE9wdGlvbnMgfSBmcm9tIFwiLi4vY29uZmlnXCI7XHJcblxyXG4vLyB0b2RvOiBtYWtlIHRoaXMgY29uZmlndXJhYmxlXHJcbi8qKiBWaWV3cG9ydCBzaXplIGZvciBTU1IuICovXHJcbmNvbnN0IHZpZXdwb3J0U2l6ZVNTUjogRGljdGlvbmFyeTxWaWV3cG9ydFNpemU+ID0ge1xyXG5cdFtEZXZpY2VUeXBlLmRlc2t0b3BdOiB7XHJcblx0XHR3aWR0aDogMTM2NixcclxuXHRcdGhlaWdodDogNzY4LFxyXG5cdH0sXHJcblx0W0RldmljZVR5cGUudGFibGV0XToge1xyXG5cdFx0d2lkdGg6IDc2OCxcclxuXHRcdGhlaWdodDogMTAyNCxcclxuXHR9LFxyXG5cdFtEZXZpY2VUeXBlLm1vYmlsZV06IHtcclxuXHRcdHdpZHRoOiA0MTQsXHJcblx0XHRoZWlnaHQ6IDczNixcclxuXHR9LFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFVYX1ZJRVdQT1JUX1NTUl9ERVZJQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48VXhPcHRpb25zPihcIkBzc3Yvbmd4LnV4LWNvbmZpZy92aWV3cG9ydC9zc3ItZGV2aWNlXCIpO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVmlld3BvcnRTZXJ2ZXJTaXplU2VydmljZSB7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0QE9wdGlvbmFsKCkgQEluamVjdChVWF9WSUVXUE9SVF9TU1JfREVWSUNFKSBwcml2YXRlIGRldmljZVR5cGU6IERldmljZVR5cGUsXHJcblx0KSB7XHJcblx0fVxyXG5cclxuXHRnZXQoKTogVmlld3BvcnRTaXplIHtcclxuXHRcdHJldHVybiB2aWV3cG9ydFNpemVTU1JbdGhpcy5kZXZpY2VUeXBlXSB8fCB2aWV3cG9ydFNpemVTU1JbRGV2aWNlVHlwZS5kZXNrdG9wXTtcclxuXHR9XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,18 @@
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: 1280,
8
+ fhd: 1920,
9
+ qhd: 2560,
10
+ uhd4k: 3840,
11
+ uhd8k: 7680,
12
+ };
13
+ export const UX_VIEWPORT_DEFAULT_CONFIG = {
14
+ resizePollingSpeed: 33,
15
+ breakpoints: UX_VIEWPORT_DEFAULT_BREAKPOINTS,
16
+ defaultDataMatchStrategy: ViewportDataMatchStrategy.smaller,
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuY29uc3QuanMiLCJzb3VyY2VSb290IjoiQzovZGV2L2dpdC9Ac3N2Lm5neC51eC9zcmMvIiwic291cmNlcyI6WyJ2aWV3cG9ydC92aWV3cG9ydC5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUdsRixvQ0FBb0M7QUFDcEMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQXVCO0lBQ2xFLE1BQU0sRUFBRSxHQUFHO0lBQ1gsS0FBSyxFQUFFLEdBQUc7SUFDVixNQUFNLEVBQUUsR0FBRztJQUNYLEtBQUssRUFBRSxJQUFJO0lBQ1gsR0FBRyxFQUFFLElBQUk7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxJQUFJO0lBQ1gsS0FBSyxFQUFFLElBQUk7Q0FDWCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQXNCO0lBQzVELGtCQUFrQixFQUFFLEVBQUU7SUFDdEIsV0FBVyxFQUFFLCtCQUErQjtJQUM1Qyx3QkFBd0IsRUFBRSx5QkFBeUIsQ0FBQyxPQUFPO0NBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSBcIi4uL2ludGVybmFsL2ludGVybmFsLm1vZGVsXCI7XHJcbmltcG9ydCB7IFZpZXdwb3J0RGF0YU1hdGNoU3RyYXRlZ3kgfSBmcm9tIFwiLi92aWV3cG9ydC1kYXRhL3ZpZXdwb3J0LWRhdGEtbWF0Y2hlclwiO1xyXG5pbXBvcnQgeyBVeFZpZXdwb3J0T3B0aW9ucyB9IGZyb20gXCIuL3ZpZXdwb3J0Lm1vZGVsXCI7XHJcblxyXG4vKiogRGVmYXVsdCB2aWV3cG9ydCBicmVha3BvaW50cy4gKi9cclxuZXhwb3J0IGNvbnN0IFVYX1ZJRVdQT1JUX0RFRkFVTFRfQlJFQUtQT0lOVFM6IERpY3Rpb25hcnk8bnVtYmVyPiA9IHtcclxuXHR4c21hbGw6IDQ1MCxcclxuXHRzbWFsbDogNzY3LFxyXG5cdG1lZGl1bTogOTkyLFxyXG5cdGxhcmdlOiAxMjgwLFxyXG5cdGZoZDogMTkyMCxcclxuXHRxaGQ6IDI1NjAsXHJcblx0dWhkNGs6IDM4NDAsXHJcblx0dWhkOGs6IDc2ODAsXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgVVhfVklFV1BPUlRfREVGQVVMVF9DT05GSUc6IFV4Vmlld3BvcnRPcHRpb25zID0ge1xyXG5cdHJlc2l6ZVBvbGxpbmdTcGVlZDogMzMsXHJcblx0YnJlYWtwb2ludHM6IFVYX1ZJRVdQT1JUX0RFRkFVTFRfQlJFQUtQT0lOVFMsXHJcblx0ZGVmYXVsdERhdGFNYXRjaFN0cmF0ZWd5OiBWaWV3cG9ydERhdGFNYXRjaFN0cmF0ZWd5LnNtYWxsZXIsXHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,31 @@
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["fhd"] = 4] = "fhd";
12
+ ViewportSizeType[ViewportSizeType["qhd"] = 6] = "qhd";
13
+ ViewportSizeType[ViewportSizeType["uhd4k"] = 7] = "uhd4k";
14
+ ViewportSizeType[ViewportSizeType["uhd8k"] = 8] = "uhd8k";
15
+ })(ViewportSizeType || (ViewportSizeType = {}));
16
+ export var ComparisonOperation;
17
+ (function (ComparisonOperation) {
18
+ ComparisonOperation["equals"] = "=";
19
+ ComparisonOperation["notEquals"] = "<>";
20
+ ComparisonOperation["lessThan"] = "<";
21
+ ComparisonOperation["lessOrEqualThan"] = "<=";
22
+ ComparisonOperation["greaterThan"] = ">";
23
+ ComparisonOperation["greaterOrEqualThan"] = ">=";
24
+ })(ComparisonOperation || (ComparisonOperation = {}));
25
+ export var DeviceType;
26
+ (function (DeviceType) {
27
+ DeviceType["desktop"] = "desktop";
28
+ DeviceType["mobile"] = "mobile";
29
+ DeviceType["tablet"] = "tablet";
30
+ })(DeviceType || (DeviceType = {}));
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiQzovZGV2L2dpdC9Ac3N2Lm5neC51eC9zcmMvIiwic291cmNlcyI6WyJ2aWV3cG9ydC92aWV3cG9ydC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7O0dBR0c7QUFDSCxNQUFNLENBQU4sSUFBWSxnQkFTWDtBQVRELFdBQVksZ0JBQWdCO0lBQzNCLDJEQUFVLENBQUE7SUFDVix5REFBUyxDQUFBO0lBQ1QsMkRBQVUsQ0FBQTtJQUNWLHlEQUFTLENBQUE7SUFDVCxxREFBTyxDQUFBO0lBQ1AscURBQU8sQ0FBQTtJQUNQLHlEQUFTLENBQUE7SUFDVCx5REFBUyxDQUFBO0FBQ1YsQ0FBQyxFQVRXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFTM0I7QUFFRCxNQUFNLENBQU4sSUFBWSxtQkFPWDtBQVBELFdBQVksbUJBQW1CO0lBQzlCLG1DQUFZLENBQUE7SUFDWix1Q0FBZ0IsQ0FBQTtJQUNoQixxQ0FBYyxDQUFBO0lBQ2QsNkNBQXNCLENBQUE7SUFDdEIsd0NBQWlCLENBQUE7SUFDakIsZ0RBQXlCLENBQUE7QUFDMUIsQ0FBQyxFQVBXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFPOUI7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3JCLGlDQUFtQixDQUFBO0lBQ25CLCtCQUFpQixDQUFBO0lBQ2pCLCtCQUFpQixDQUFBO0FBQ2xCLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tIFwiLi4vaW50ZXJuYWwvaW50ZXJuYWwubW9kZWxcIjtcclxuaW1wb3J0IHsgVmlld3BvcnREYXRhTWF0Y2hTdHJhdGVneSB9IGZyb20gXCIuL3ZpZXdwb3J0LWRhdGFcIjtcclxuXHJcbi8qKlxyXG4gKiBUaGUgaW5kaWNlcyBvZiBlYWNoIGJyZWFrcG9pbnQgcHJvdmlkZWQgYmFzZWQgb24gdGhlIGBVWF9WSUVXUE9SVF9ERUZBVUxUX0JSRUFLUE9JTlRTYC5cclxuICogQHNlZSBVWF9WSUVXUE9SVF9ERUZBVUxUX0JSRUFLUE9JTlRTXHJcbiAqL1xyXG5leHBvcnQgZW51bSBWaWV3cG9ydFNpemVUeXBlIHtcclxuXHR4c21hbGwgPSAwLFxyXG5cdHNtYWxsID0gMSxcclxuXHRtZWRpdW0gPSAyLFxyXG5cdGxhcmdlID0gMyxcclxuXHRmaGQgPSA0LFxyXG5cdHFoZCA9IDYsXHJcblx0dWhkNGsgPSA3LFxyXG5cdHVoZDhrID0gOCxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ29tcGFyaXNvbk9wZXJhdGlvbiB7XHJcblx0ZXF1YWxzID0gXCI9XCIsXHJcblx0bm90RXF1YWxzID0gXCI8PlwiLFxyXG5cdGxlc3NUaGFuID0gXCI8XCIsXHJcblx0bGVzc09yRXF1YWxUaGFuID0gXCI8PVwiLFxyXG5cdGdyZWF0ZXJUaGFuID0gXCI+XCIsXHJcblx0Z3JlYXRlck9yRXF1YWxUaGFuID0gXCI+PVwiLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEZXZpY2VUeXBlIHtcclxuXHRkZXNrdG9wID0gXCJkZXNrdG9wXCIsXHJcblx0bW9iaWxlID0gXCJtb2JpbGVcIixcclxuXHR0YWJsZXQgPSBcInRhYmxldFwiXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXhWaWV3cG9ydE9wdGlvbnMge1xyXG5cdC8qKiBQb2xsaW5nIHNwZWVkIG9uIHJlc2l6aW5nIChpbiBtaWxsaXNlY29uZHMpLiBlLmcuIHRoZSBoaWdoZXIgdGhlIG51bWJlciB0aGUgbG9uZ2VyIGl0IHRha2VzIHRvIHJlY2FsY3VsYXRlLiAqL1xyXG5cdHJlc2l6ZVBvbGxpbmdTcGVlZDogbnVtYmVyO1xyXG5cclxuXHQvKiogQnJlYWtwb2ludHMgdG8gdXNlLiBLZXkgbmVlZHMgdG8gbWF0Y2ggdGhlIHNpemUgdHlwZSBhbmQgdGhlIHZhbHVlIHRoZSB3aWR0aCB0aHJlc2hvbGQuXHJcblx0ICogZS5nLiBnaXZlbiB3aWR0aCAnMTAwMCcgYW5kIGBtZWRpdW1gIGlzIHNldCB0byAnOTkyJyA9PiBgbGFyZ2VgLlxyXG5cdCAqL1xyXG5cdGJyZWFrcG9pbnRzOiBEaWN0aW9uYXJ5PG51bWJlcj47XHJcblxyXG5cdC8qKiBEZWZhdWx0IGRhdGEgbWF0Y2ggc3RyYXRlZ3kgdG8gdXNlLiAqL1xyXG5cdGRlZmF1bHREYXRhTWF0Y2hTdHJhdGVneTogVmlld3BvcnREYXRhTWF0Y2hTdHJhdGVneTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydFNpemUge1xyXG5cdHdpZHRoOiBudW1iZXI7XHJcblx0aGVpZ2h0OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVmlld3BvcnRTaXplVHlwZUluZm8ge1xyXG5cdHR5cGU6IG51bWJlcjtcclxuXHRuYW1lOiBzdHJpbmc7XHJcblx0d2lkdGhUaHJlc2hvbGQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydE1hdGNoQ29uZGl0aW9ucyB7XHJcblx0c2l6ZVR5cGU/OiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGw7XHJcblx0c2l6ZVR5cGVFeGNsdWRlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xyXG5cdGV4cHJlc3Npb24/OiBWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBWaWV3cG9ydFNpemVNYXRjaGVyRXhwcmVzc2lvbiB7XHJcblx0c2l6ZTogc3RyaW5nO1xyXG5cdG9wZXJhdGlvbjogQ29tcGFyaXNvbk9wZXJhdGlvbjtcclxufVxyXG4iXX0=
@@ -0,0 +1,69 @@
1
+ import { Injectable, Inject } from "@angular/core";
2
+ import { fromEvent, of } from "rxjs";
3
+ import { map, tap, distinctUntilChanged, startWith, share, shareReplay, auditTime, } from "rxjs/operators";
4
+ import { UX_CONFIG } from "../config";
5
+ import { WindowRef } from "../platform/window";
6
+ import { ViewportServerSizeService } from "./viewport-server-size.service";
7
+ import { generateViewportSizeTypeInfoList, generateViewportSizeTypeInfoRefs, getSizeTypeInfo } from "./viewport.util";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../platform/window";
10
+ import * as i2 from "./viewport-server-size.service";
11
+ import * as i3 from "../config";
12
+ export class ViewportService {
13
+ constructor(windowRef, viewportServerSize, config) {
14
+ this.windowRef = windowRef;
15
+ this.viewportServerSize = viewportServerSize;
16
+ this._sizeTypes = generateViewportSizeTypeInfoList(config.viewport.breakpoints);
17
+ this._sizeTypeMap = generateViewportSizeTypeInfoRefs(this._sizeTypes);
18
+ if (windowRef.hasNative) {
19
+ this.resizeSnap$ = fromEvent(window, "resize").pipe(map(() => this.getViewportSize()), share());
20
+ this.resize$ = this.resizeSnap$.pipe(auditTime(config.viewport.resizePollingSpeed), share());
21
+ }
22
+ else {
23
+ this.resizeSnap$ = this.resize$ = of(viewportServerSize.get());
24
+ }
25
+ const size = this.getViewportSize();
26
+ this._sizeTypeSnapshot = getSizeTypeInfo(size.width, this.sizeTypes);
27
+ const sizeFn = (obs$) => obs$.pipe(startWith(size), distinctUntilChanged((a, b) => a.width === b.width && a.height === b.height), shareReplay(1));
28
+ this.sizeSnap$ = sizeFn(this.resizeSnap$);
29
+ this.size$ = sizeFn(this.resize$);
30
+ const sizeTypeFn = (obs$) => obs$.pipe(distinctUntilChanged((a, b) => a.width === b.width), map(x => getSizeTypeInfo(x.width, this.sizeTypes)), distinctUntilChanged(), tap(x => this._sizeTypeSnapshot = x), shareReplay(1));
31
+ this.sizeType$ = sizeTypeFn(this.size$);
32
+ this.sizeTypeSnap$ = sizeTypeFn(this.sizeSnap$);
33
+ }
34
+ /** Viewport size type snapshot of the last value. (Prefer use `sizeType$` observable when possible.) */
35
+ get sizeTypeSnapshot() { return this._sizeTypeSnapshot; }
36
+ /** Size types refs of the generated viewport size type info. */
37
+ get sizeTypeMap() { return this._sizeTypeMap; }
38
+ /** Viewport size types list ordered by type, smallest to largest. */
39
+ get sizeTypes() { return this._sizeTypes; }
40
+ /** Returns the current viewport size */
41
+ getViewportSize() {
42
+ if (!this.windowRef.hasNative) {
43
+ return this.viewportServerSize.get();
44
+ }
45
+ const ua = navigator.userAgent.toLowerCase();
46
+ if (ua.indexOf("safari") !== -1 && ua.indexOf("chrome") === -1) { // safari subtracts the scrollbar width
47
+ return {
48
+ width: this.windowRef.native.document.documentElement.clientWidth,
49
+ height: this.windowRef.native.document.documentElement.clientHeight,
50
+ };
51
+ }
52
+ return {
53
+ width: this.windowRef.native.innerWidth,
54
+ height: this.windowRef.native.innerHeight,
55
+ };
56
+ }
57
+ }
58
+ ViewportService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ViewportService_Factory() { return new ViewportService(i0.ɵɵinject(i1.WindowRef), i0.ɵɵinject(i2.ViewportServerSizeService), i0.ɵɵinject(i3.UX_CONFIG)); }, token: ViewportService, providedIn: "root" });
59
+ ViewportService.decorators = [
60
+ { type: Injectable, args: [{
61
+ providedIn: "root",
62
+ },] }
63
+ ];
64
+ ViewportService.ctorParameters = () => [
65
+ { type: WindowRef },
66
+ { type: ViewportServerSizeService },
67
+ { type: undefined, decorators: [{ type: Inject, args: [UX_CONFIG,] }] }
68
+ ];
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9kZXYvZ2l0L0Bzc3Yubmd4LnV4L3NyYy8iLCJzb3VyY2VzIjpbInZpZXdwb3J0L3ZpZXdwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFNBQVMsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUNOLEdBQUcsRUFDSCxHQUFHLEVBQ0gsb0JBQW9CLEVBQ3BCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsV0FBVyxFQUNYLFNBQVMsR0FDVCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBYSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxnQ0FBZ0MsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFNdEgsTUFBTSxPQUFPLGVBQWU7SUFpQzNCLFlBQ1MsU0FBb0IsRUFDcEIsa0JBQTZDLEVBQ2xDLE1BQWlCO1FBRjVCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQUdyRCxJQUFJLENBQUMsVUFBVSxHQUFHLGdDQUFnQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLFlBQVksR0FBRyxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdEUsSUFBSSxTQUFTLENBQUMsU0FBUyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFRLE1BQU0sRUFBRSxRQUFRLENB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QyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLHVDQUF1QztZQUN4RyxPQUFPO2dCQUNOLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFdBQVc7Z0JBQ2pFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVk7YUFDbkUsQ0FBQztTQUNGO1FBRUQsT0FBTztZQUNOLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFVO1lBQ3ZDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXO1NBQ3pDLENBQUM7SUFDSCxDQUFDOzs7O1lBbkdELFVBQVUsU0FBQztnQkFDWCxVQUFVLEVBQUUsTUFBTTthQUNsQjs7O1lBUFEsU0FBUztZQUNULHlCQUF5Qjs0Q0EyQy9CLE1BQU0sU0FBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50LCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7XHJcblx0bWFwLFxyXG5cdHRhcCxcclxuXHRkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuXHRzdGFydFdpdGgsXHJcblx0c2hhcmUsXHJcblx0c2hhcmVSZXBsYXksXHJcblx0YXVkaXRUaW1lLFxyXG59IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuaW1wb3J0IHsgVXhPcHRpb25zLCBVWF9DT05GSUcgfSBmcm9tIFwiLi4vY29uZmlnXCI7XHJcbmltcG9ydCB7IFZpZXdwb3J0U2l6ZVR5cGVJbmZvLCBWaWV3cG9ydFNpemUgfSBmcm9tIFwiLi92aWV3cG9ydC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tIFwiLi4vcGxhdGZvcm0vd2luZG93XCI7XHJcbmltcG9ydCB7IFZpZXdwb3J0U2VydmVyU2l6ZVNlcnZpY2UgfSBmcm9tIFwiLi92aWV3cG9ydC1zZXJ2ZXItc2l6ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IGdlbmVyYXRlVmlld3BvcnRTaXplVHlwZUluZm9MaXN0LCBnZW5lcmF0ZVZpZXdwb3J0U2l6ZVR5cGVJbmZvUmVmcywgZ2V0U2l6ZVR5cGVJbmZvIH0gZnJvbSBcIi4vdmlld3BvcnQudXRpbFwiO1xyXG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSBcIi4uL2ludGVybmFsL2ludGVybmFsLm1vZGVsXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3cG9ydFNlcnZpY2Uge1xyXG5cclxuXHQvKiogV2luZG93IHJlc2l6ZSBvYnNlcnZhYmxlLiAqL1xyXG5cdHJlYWRvbmx5IHJlc2l6ZVNuYXAkOiBPYnNlcnZhYmxlPFZpZXdwb3J0U2l6ZT47XHJcblxyXG5cdC8qKiBXaW5kb3cgcmVzaXplIG9ic2VydmFibGUgKHdoaWNoIGlzIGFsc28gdGhyb3R0bGVkKS4gKi9cclxuXHRyZWFkb25seSByZXNpemUkOiBPYnNlcnZhYmxlPFZpZXdwb3J0U2l6ZT47XHJcblxyXG5cdC8qKiBWaWV3cG9ydCBzaXplIHR5cGUgb2JzZXJ2YWJsZSAod2hpY2ggaXMgYWxzbyB0aHJvdHRsZWQpLiAqL1xyXG5cdHJlYWRvbmx5IHNpemVUeXBlJDogT2JzZXJ2YWJsZTxWaWV3cG9ydFNpemVUeXBlSW5mbz47XHJcblxyXG5cdC8qKiBWaWV3cG9ydCBzaXplIHR5cGUgb2JzZXJ2YWJsZS4gKi9cclxuXHRyZWFkb25seSBzaXplVHlwZVNuYXAkOiBPYnNlcnZhYmxlPFZpZXdwb3J0U2l6ZVR5cGVJbmZvPjtcclxuXHJcblx0LyoqIFZpZXdwb3J0IHNpemUgdHlwZSBzbmFwc2hvdCBvZiB0aGUgbGFzdCB2YWx1ZS4gKFByZWZlciB1c2UgYHNpemVUeXBlJGAgb2JzZXJ2YWJsZSB3aGVuIHBvc3NpYmxlLikgKi9cclxuXHRnZXQgc2l6ZVR5cGVTbmFwc2hvdCgpOiBWaWV3cG9ydFNpemVUeXBlSW5mbyB7IHJldHVybiB0aGlzLl9zaXplVHlwZVNuYXBzaG90OyB9XHJcblxyXG5cdC8qKiBWaWV3cG9ydCBzaXplIG9ic2VydmFibGUgKHdoaWNoIGlzIGFsc28gdGhyb3R0bGVkKS4gKi9cclxuXHRyZWFkb25seSBzaXplJDogT2JzZXJ2YWJsZTxWaWV3cG9ydFNpemU+O1xyXG5cclxuXHQvKiogVmlld3BvcnQgc2l6ZSBvYnNlcnZhYmxlLiAqL1xyXG5cdHJlYWRvbmx5IHNpemVTbmFwJDogT2JzZXJ2YWJsZTxWaWV3cG9ydFNpemU+O1xyXG5cclxuXHQvKiogU2l6ZSB0eXBlcyByZWZzIG9mIHRoZSBnZW5lcmF0ZWQgdmlld3BvcnQgc2l6ZSB0eXBlIGluZm8uICovXHJcblx0Z2V0IHNpemVUeXBlTWFwKCk6IERpY3Rpb25hcnk8Vmlld3BvcnRTaXplVHlwZUluZm8+IHsgcmV0dXJuIHRoaXMuX3NpemVUeXBlTWFwOyB9XHJcblxyXG5cdC8qKiBWaWV3cG9ydCBzaXplIHR5cGVzIGxpc3Qgb3JkZXJlZCBieSB0eXBlLCBzbWFsbGVzdCB0byBsYXJnZXN0LiAqL1xyXG5cdGdldCBzaXplVHlwZXMoKTogVmlld3BvcnRTaXplVHlwZUluZm9bXSB7IHJldHVybiB0aGlzLl9zaXplVHlwZXM7IH1cclxuXHJcblx0cHJpdmF0ZSBfc2l6ZVR5cGVNYXA6IERpY3Rpb25hcnk8Vmlld3BvcnRTaXplVHlwZUluZm8+O1xyXG5cdHByaXZhdGUgX3NpemVUeXBlczogVmlld3BvcnRTaXplVHlwZUluZm9bXTtcclxuXHRwcml2YXRlIF9zaXplVHlwZVNuYXBzaG90OiBWaWV3cG9ydFNpemVUeXBlSW5mbztcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHdpbmRvd1JlZjogV2luZG93UmVmLFxyXG5cdFx0cHJpdmF0ZSB2aWV3cG9ydFNlcnZlclNpemU6IFZpZXdwb3J0U2VydmVyU2l6ZVNlcnZpY2UsXHJcblx0XHRASW5qZWN0KFVYX0NPTkZJRykgY29uZmlnOiBVeE9wdGlvbnMsXHJcblx0KSB7XHJcblx0XHR0aGlzLl9zaXplVHlwZXMgPSBnZW5lcmF0ZVZpZXdwb3J0U2l6ZVR5cGVJbmZvTGlzdChjb25maWcudmlld3BvcnQuYnJlYWtwb2ludHMpO1xyXG5cdFx0dGhpcy5fc2l6ZVR5cGVNYXAgPSBnZW5lcmF0ZVZpZXdwb3J0U2l6ZVR5cGVJbmZvUmVmcyh0aGlzLl9zaXplVHlwZXMpO1xyXG5cclxuXHRcdGlmICh3aW5kb3dSZWYuaGFzTmF0aXZlKSB7XHJcblx0XHRcdHRoaXMucmVzaXplU25hcCQgPSBmcm9tRXZlbnQ8RXZlbnQ+KHdpbmRvdywgXCJyZXNpemVcIikucGlwZShcclxuXHRcdFx0XHRtYXAoKCkgPT4gdGhpcy5nZXRWaWV3cG9ydFNpemUoKSksXHJcblx0XHRcdFx0c2hhcmUoKVxyXG5cdFx0XHQpO1xyXG5cclxuXHRcdFx0dGhpcy5yZXNpemUkID0gdGhpcy5yZXNpemVTbmFwJC5waXBlKFxyXG5cdFx0XHRcdGF1ZGl0VGltZShjb25maWcudmlld3BvcnQucmVzaXplUG9sbGluZ1NwZWVkKSxcclxuXHRcdFx0XHRzaGFyZSgpLFxyXG5cdFx0XHQpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5yZXNpemVTbmFwJCA9IHRoaXMucmVzaXplJCA9IG9mKHZpZXdwb3J0U2VydmVyU2l6ZS5nZXQoKSk7XHJcblx0XHR9XHJcblx0XHRjb25zdCBzaXplID0gdGhpcy5nZXRWaWV3cG9ydFNpemUoKTtcclxuXHRcdHRoaXMuX3NpemVUeXBlU25hcHNob3QgPSBnZXRTaXplVHlwZUluZm8oc2l6ZS53aWR0aCwgdGhpcy5zaXplVHlwZXMpO1xyXG5cclxuXHRcdGNvbnN0IHNpemVGbiA9IChvYnMkOiBPYnNlcnZhYmxlPFZpZXdwb3J0U2l6ZT4pID0+IG9icyQucGlwZShcclxuXHRcdFx0c3RhcnRXaXRoKHNpemUpLFxyXG5cdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gYS53aWR0aCA9PT0gYi53aWR0aCAmJiBhLmhlaWdodCA9PT0gYi5oZWlnaHQpLFxyXG5cdFx0XHRzaGFyZVJlcGxheSgxKSxcclxuXHRcdCk7XHJcblxyXG5cdFx0dGhpcy5zaXplU25hcCQgPSBzaXplRm4odGhpcy5yZXNpemVTbmFwJCk7XHJcblx0XHR0aGlzLnNpemUkID0gc2l6ZUZuKHRoaXMucmVzaXplJCk7XHJcblxyXG5cdFx0Y29uc3Qgc2l6ZVR5cGVGbiA9IChvYnMkOiBPYnNlcnZhYmxlPFZpZXdwb3J0U2l6ZT4pID0+IG9icyQucGlwZShcclxuXHRcdFx0ZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGEud2lkdGggPT09IGIud2lkdGgpLFxyXG5cdFx0XHRtYXAoeCA9PiBnZXRTaXplVHlwZUluZm8oeC53aWR0aCwgdGhpcy5zaXplVHlwZXMpKSxcclxuXHRcdFx0ZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuXHRcdFx0dGFwKHggPT4gdGhpcy5fc2l6ZVR5cGVTbmFwc2hvdCA9IHgpLFxyXG5cdFx0XHRzaGFyZVJlcGxheSgxKSxcclxuXHRcdCk7XHJcblxyXG5cdFx0dGhpcy5zaXplVHlwZSQgPSBzaXplVHlwZUZuKHRoaXMuc2l6ZSQpO1xyXG5cdFx0dGhpcy5zaXplVHlwZVNuYXAkID0gc2l6ZVR5cGVGbih0aGlzLnNpemVTbmFwJCk7XHJcblx0fVxyXG5cclxuXHQvKiogUmV0dXJucyB0aGUgY3VycmVudCB2aWV3cG9ydCBzaXplICovXHJcblx0cHJpdmF0ZSBnZXRWaWV3cG9ydFNpemUoKTogVmlld3BvcnRTaXplIHtcclxuXHRcdGlmICghdGhpcy53aW5kb3dSZWYuaGFzTmF0aXZlKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLnZpZXdwb3J0U2VydmVyU2l6ZS5nZXQoKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCB1YSA9IG5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKTtcclxuXHRcdGlmICh1YS5pbmRleE9mKFwic2FmYXJpXCIpICE9PSAtMSAmJiB1YS5pbmRleE9mKFwiY2hyb21lXCIpID09PSAtMSkgeyAvLyBzYWZhcmkgc3VidHJhY3RzIHRoZSBzY3JvbGxiYXIgd2lkdGhcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHR3aWR0aDogdGhpcy53aW5kb3dSZWYubmF0aXZlLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCxcclxuXHRcdFx0XHRoZWlnaHQ6IHRoaXMud2luZG93UmVmLm5hdGl2ZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0LFxyXG5cdFx0XHR9O1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB7XHJcblx0XHRcdHdpZHRoOiB0aGlzLndpbmRvd1JlZi5uYXRpdmUuaW5uZXJXaWR0aCxcclxuXHRcdFx0aGVpZ2h0OiB0aGlzLndpbmRvd1JlZi5uYXRpdmUuaW5uZXJIZWlnaHQsXHJcblx0XHR9O1xyXG5cdH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,117 @@
1
+ import { ComparisonOperation } from "./viewport.model";
2
+ export function isViewportSizeMatcherExpression(value) {
3
+ if (typeof value !== "object" || !value) {
4
+ return false;
5
+ }
6
+ const args = value;
7
+ if (args.size && args.operation) {
8
+ return true;
9
+ }
10
+ return false;
11
+ }
12
+ export function isViewportSizeMatcherTupleExpression(arg) {
13
+ if (!arg) {
14
+ return false;
15
+ }
16
+ if (Array.isArray(arg)) {
17
+ if (arg.length === 2) {
18
+ const [op] = arg;
19
+ return operations.includes(op);
20
+ }
21
+ }
22
+ return false;
23
+ }
24
+ const operations = Object.values(ComparisonOperation);
25
+ export const COMPARISON_OPERATION_FUNC_MAPPING = {
26
+ [ComparisonOperation.equals]: (a, b) => a === b,
27
+ [ComparisonOperation.notEquals]: (a, b) => a !== b,
28
+ [ComparisonOperation.lessThan]: (a, b) => a < b,
29
+ [ComparisonOperation.lessOrEqualThan]: (a, b) => a <= b,
30
+ [ComparisonOperation.greaterThan]: (a, b) => a > b,
31
+ [ComparisonOperation.greaterOrEqualThan]: (a, b) => a >= b,
32
+ };
33
+ export function isViewportConditionMatch(evaluateSize, conditions, viewportSizeTypeInfoRefs) {
34
+ const isExcluded = match(conditions.sizeTypeExclude, evaluateSize.name, false);
35
+ let isIncluded;
36
+ let isExpressionTruthy;
37
+ if (!isExcluded && conditions.expression) {
38
+ const ref = viewportSizeTypeInfoRefs[conditions.expression.size];
39
+ if (!ref) {
40
+ throw new Error(`Viewport size type is invalid. Size type: '${conditions.expression.size}'`);
41
+ }
42
+ const expMatcher = COMPARISON_OPERATION_FUNC_MAPPING[conditions.expression.operation];
43
+ isExpressionTruthy = expMatcher(evaluateSize.type, ref.type);
44
+ }
45
+ else {
46
+ isIncluded = match(conditions.sizeType, evaluateSize.name, true);
47
+ }
48
+ const shouldRender = (isExpressionTruthy || isIncluded) && !isExcluded;
49
+ // console.warn(">>> shouldRender", { evaluateSize, conditions, shouldRender });
50
+ return !!shouldRender;
51
+ }
52
+ function match(value, targetValue, defaultValue) {
53
+ if (!value) {
54
+ return defaultValue;
55
+ }
56
+ return Array.isArray(value)
57
+ ? value.includes(targetValue)
58
+ : value === targetValue;
59
+ }
60
+ export function getSizeTypeInfo(width, sizeTypes) {
61
+ const lastEntryIndex = sizeTypes.length - 1;
62
+ for (let idx = 0; idx < lastEntryIndex; idx++) {
63
+ const viewportSizeTypeInfo = sizeTypes[idx];
64
+ if (width <= viewportSizeTypeInfo.widthThreshold) {
65
+ return viewportSizeTypeInfo;
66
+ }
67
+ }
68
+ return sizeTypes[lastEntryIndex];
69
+ }
70
+ /**
71
+ * Converts the breakpoints into a 2 dimensional array containing the name and width, and sorted from
72
+ * smallest to largest.
73
+ * @param breakpoints the breakpoints obtained from the config
74
+ * @internal
75
+ */
76
+ function getSortedBreakpoints(breakpoints) {
77
+ return Object.entries(breakpoints)
78
+ .sort(([, widthA], [, widthB]) => widthA - widthB);
79
+ }
80
+ /**
81
+ * A util function which generates the ViewportSizeTypeInfo.type for each breakpoint.
82
+ * @param breakpoints the custom breakpoints
83
+ */
84
+ export function generateViewportSizeType(breakpoints) {
85
+ return Object.freeze(getSortedBreakpoints(breakpoints).reduce((dictionary, [name], index) => {
86
+ dictionary[name] = index;
87
+ dictionary[index] = name;
88
+ return dictionary;
89
+ }, {}));
90
+ }
91
+ /**
92
+ * Pre-processes the given breakpoints into an ordered list from smallest to largest while generating
93
+ * all the necessary information on the viewport.
94
+ * @param breakpoints the breakpoints obtained from the config
95
+ * @internal
96
+ */
97
+ export function generateViewportSizeTypeInfoList(breakpoints) {
98
+ return getSortedBreakpoints(breakpoints)
99
+ .map(([name, width], index) => (Object.freeze({
100
+ name,
101
+ type: index,
102
+ widthThreshold: width
103
+ })));
104
+ }
105
+ /**
106
+ * Converts the breakpoint list into a dictionary while using the name as key.
107
+ * @param breakpointList the list of breakpoints
108
+ * @internal
109
+ */
110
+ export function generateViewportSizeTypeInfoRefs(breakpointList) {
111
+ return Object.freeze(breakpointList.reduce((dictionary, breakpoint) => {
112
+ dictionary[breakpoint.name] = breakpoint;
113
+ dictionary[breakpoint.type] = breakpoint;
114
+ return dictionary;
115
+ }, {}));
116
+ }
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQudXRpbC5qcyIsInNvdXJjZVJvb3QiOiJDOi9kZXYvZ2l0L0Bzc3Yubmd4LnV4L3NyYy8iLCJzb3VyY2VzIjpbInZpZXdwb3J0L3ZpZXdwb3J0LnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNOLG1CQUFtQixFQUluQixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE1BQU0sVUFBVSwrQkFBK0IsQ0FBQyxLQUFjO0lBQzdELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ3hDLE9BQU8sS0FBSyxDQUFDO0tBQ2I7SUFDRCxNQUFNLElBQUksR0FBMkMsS0FBSyxDQUFDO0lBQzNELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0tBQ1o7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNkLENBQUM7QUFFRCxNQUFNLFVBQVUsb0NBQW9DLENBQUMsR0FBWTtJQUNoRSxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1QsT0FBTyxLQUFLLENBQUM7S0FDYjtJQUNELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN2QixJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JCLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDakIsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQy9CO0tBQ0Q7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNkLENBQUM7QUFHRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQWtEO0lBQy9GLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxD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RSxFQUFFO1FBQ2xGLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDO1FBQ3pDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDO1FBQ3pDLE9BQU8sVUFBVSxDQUFDO0lBQ25CLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDTixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tIFwiLi4vaW50ZXJuYWwvaW50ZXJuYWwubW9kZWxcIjtcclxuaW1wb3J0IHtcclxuXHRDb21wYXJpc29uT3BlcmF0aW9uLFxyXG5cdFZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uLFxyXG5cdFZpZXdwb3J0U2l6ZVR5cGVJbmZvLFxyXG5cdFZpZXdwb3J0TWF0Y2hDb25kaXRpb25zXHJcbn0gZnJvbSBcIi4vdmlld3BvcnQubW9kZWxcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1ZpZXdwb3J0U2l6ZU1hdGNoZXJFeHByZXNzaW9uKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgVmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb24ge1xyXG5cdGlmICh0eXBlb2YgdmFsdWUgIT09IFwib2JqZWN0XCIgfHwgIXZhbHVlKSB7XHJcblx0XHRyZXR1cm4gZmFsc2U7XHJcblx0fVxyXG5cdGNvbnN0IGFyZ3M6IFBhcnRpYWw8Vmlld3BvcnRTaXplTWF0Y2hlckV4cHJlc3Npb24+ID0gdmFsdWU7XHJcblx0aWYgKGFyZ3Muc2l6ZSAmJiBhcmdzLm9wZXJhdGlvbikge1xyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cdHJldHVybiBmYWxzZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzVmlld3BvcnRTaXplTWF0Y2hlclR1cGxlRXhwcmVzc2lvbihhcmc6IHVua25vd24pOiBhcmcgaXMgW0NvbXBhcmlzb25PcGVyYXRpb24sIHN0cmluZ10ge1xyXG5cdGlmICghYXJnKSB7XHJcblx0XHRyZXR1cm4gZmFsc2U7XHJcblx0fVxyXG5cdGlmIChBcnJheS5pc0FycmF5KGFyZykpIHtcclxuXHRcdGlmIChhcmcubGVuZ3RoID09PSAyKSB7XHJcblx0XHRcdGNvbnN0IFtvcF0gPSBhcmc7XHJcblx0XHRcdHJldHVybiBvcGVyYXRpb25zLmluY2x1ZGVzKG9wKTtcclxuXHRcdH1cclxuXHR9XHJcblx0cmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5cclxuY29uc3Qgb3BlcmF0aW9ucyA9IE9iamVjdC52YWx1ZXMoQ29tcGFyaXNvbk9wZXJhdGlvbik7XHJcblxyXG5leHBvcnQgY29uc3QgQ09NUEFSSVNPTl9PUEVSQVRJT05fRlVOQ19NQVBQSU5HOiBEaWN0aW9uYXJ5PChhOiBudW1iZXIsIGI6IG51bWJlcikgPT4gYm9vbGVhbj4gPSB7XHJcblx0W0NvbXBhcmlzb25PcGVyYXRpb24uZXF1YWxzXTogKGE6IG51bWJlciwgYjogbnVtYmVyKSA9PiBhID09PSBiLFxyXG5cdFtDb21wYXJpc29uT3BlcmF0aW9uLm5vdEVxdWFsc106IChhOiBudW1iZXIsIGI6IG51bWJlcikgPT4gYSAhPT0gYixcclxuXHRbQ29tcGFyaXNvbk9wZXJhdGlvbi5sZXNzVGhhbl06IChhOiBudW1iZXIsIGI6IG51bWJlcikgPT4gYSA8IGIsXHJcblx0W0NvbXBhcmlzb25PcGVyYXRpb24ubGVzc09yRXF1YWxUaGFuXTogKGE6IG51bWJlciwgYjogbnVtYmVyKSA9PiBhIDw9IGIsXHJcblx0W0NvbXBhcmlzb25PcGVyYXRpb24uZ3JlYXRlclRoYW5dOiAoYTogbnVtYmVyLCBiOiBudW1iZXIpID0+IGEgPiBiLFxyXG5cdFtDb21wYXJpc29uT3BlcmF0aW9uLmdyZWF0ZXJPckVxdWFsVGhhbl06IChhOiBudW1iZXIsIGI6IG51bWJlcikgPT4gYSA+PSBiLFxyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzVmlld3BvcnRDb25kaXRpb25NYXRjaChcclxuXHRldmFsdWF0ZVNpemU6IFZpZXdwb3J0U2l6ZVR5cGVJbmZvLFxyXG5cdGNvbmRpdGlvbnM6IFZpZXdwb3J0TWF0Y2hDb25kaXRpb25zLFxyXG5cdHZpZXdwb3J0U2l6ZVR5cGVJbmZvUmVmczogRGljdGlvbmFyeTxWaWV3cG9ydFNpemVUeXBlSW5mbz5cclxuKTogYm9vbGVhbiB7XHJcblx0Y29uc3QgaXNFeGNsdWRlZCA9IG1hdGNoKGNvbmRpdGlvbnMuc2l6ZVR5cGVFeGNsdWRlLCBldmFsdWF0ZVNpemUubmFtZSwgZmFsc2UpO1xyXG5cdGxldCBpc0luY2x1ZGVkO1xyXG5cdGxldCBpc0V4cHJlc3Npb25UcnV0aHk7XHJcblxyXG5cdGlmICghaXNFeGNsdWRlZCAmJiBjb25kaXRpb25zLmV4cHJlc3Npb24pIHtcclxuXHRcdGNvbnN0IHJlZiA9IHZpZXdwb3J0U2l6ZVR5cGVJbmZvUmVmc1tjb25kaXRpb25zLmV4cHJlc3Npb24uc2l6ZV07XHJcblx0XHRpZighcmVmKSB7XHJcblx0XHRcdHRocm93IG5ldyBFcnJvcihgVmlld3BvcnQgc2l6ZSB0eXBlIGlzIGludmFsaWQuIFNpemUgdHlwZTogJyR7Y29uZGl0aW9ucy5leHByZXNzaW9uLnNpemV9J2ApO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgZXhwTWF0Y2hlciA9IENPTVBBUklTT05fT1BFUkFUSU9OX0ZVTkNfTUFQUElOR1tjb25kaXRpb25zLmV4cHJlc3Npb24ub3BlcmF0aW9uXTtcclxuXHJcblx0XHRpc0V4cHJlc3Npb25UcnV0aHkgPSBleHBNYXRjaGVyKGV2YWx1YXRlU2l6ZS50eXBlLCByZWYudHlwZSk7XHJcblx0fSBlbHNlIHtcclxuXHRcdGlzSW5jbHVkZWQgPSBtYXRjaChjb25kaXRpb25zLnNpemVUeXBlLCBldmFsdWF0ZVNpemUubmFtZSwgdHJ1ZSk7XHJcblx0fVxyXG5cclxuXHRjb25zdCBzaG91bGRSZW5kZXIgPSAoaXNFeHByZXNzaW9uVHJ1dGh5IHx8IGlzSW5jbHVkZWQpICYmICFpc0V4Y2x1ZGVkO1xyXG5cdC8vIGNvbnNvbGUud2FybihcIj4+PiBzaG91bGRSZW5kZXJcIiwgeyBldmFsdWF0ZVNpemUsIGNvbmRpdGlvbnMsIHNob3VsZFJlbmRlciB9KTtcclxuXHRyZXR1cm4gISFzaG91bGRSZW5kZXI7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG1hdGNoKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgfCB1bmRlZmluZWQsIHRhcmdldFZhbHVlOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogYm9vbGVhbikge1xyXG5cdGlmICghdmFsdWUpIHtcclxuXHRcdHJldHVybiBkZWZhdWx0VmFsdWU7XHJcblx0fVxyXG5cclxuXHRyZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSlcclxuXHRcdD8gdmFsdWUuaW5jbHVkZXModGFyZ2V0VmFsdWUpXHJcblx0XHQ6IHZhbHVlID09PSB0YXJnZXRWYWx1ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFNpemVUeXBlSW5mbyh3aWR0aDogbnVtYmVyLCBzaXplVHlwZXM6IFZpZXdwb3J0U2l6ZVR5cGVJbmZvW10pOiBWaWV3cG9ydFNpemVUeXBlSW5mbyB7XHJcblx0Y29uc3QgbGFzdEVudHJ5SW5kZXggPSBzaXplVHlwZXMubGVuZ3RoIC0gMTtcclxuXHJcblx0Zm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgbGFzdEVudHJ5SW5kZXg7IGlkeCsrKSB7XHJcblx0XHRjb25zdCB2aWV3cG9ydFNpemVUeXBlSW5mbyA9IHNpemVUeXBlc1tpZHhdO1xyXG5cclxuXHRcdGlmICh3aWR0aCA8PSB2aWV3cG9ydFNpemVUeXBlSW5mby53aWR0aFRocmVzaG9sZCkge1xyXG5cdFx0XHRyZXR1cm4gdmlld3BvcnRTaXplVHlwZUluZm87XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRyZXR1cm4gc2l6ZVR5cGVzW2xhc3RFbnRyeUluZGV4XTtcclxufVxyXG5cclxuLyoqXHJcbiAqIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBpbnRvIGEgMiBkaW1lbnNpb25hbCBhcnJheSBjb250YWluaW5nIHRoZSBuYW1lIGFuZCB3aWR0aCwgYW5kIHNvcnRlZCBmcm9tXHJcbiAqICBzbWFsbGVzdCB0byBsYXJnZXN0LlxyXG4gKiBAcGFyYW0gYnJlYWtwb2ludHMgdGhlIGJyZWFrcG9pbnRzIG9idGFpbmVkIGZyb20gdGhlIGNvbmZpZ1xyXG4gKiBAaW50ZXJuYWxcclxuICovXHJcbmZ1bmN0aW9uIGdldFNvcnRlZEJyZWFrcG9pbnRzKGJyZWFrcG9pbnRzOiBEaWN0aW9uYXJ5PG51bWJlcj4pOiBbc3RyaW5nLCBudW1iZXJdW10ge1xyXG5cdHJldHVybiBPYmplY3QuZW50cmllcyhicmVha3BvaW50cylcclxuXHRcdC5zb3J0KChbLCB3aWR0aEFdLCBbLCB3aWR0aEJdKSA9PiB3aWR0aEEgLSB3aWR0aEIpO1xyXG59XHJcblxyXG4vKipcclxuICogQSB1dGlsIGZ1bmN0aW9uIHdoaWNoIGdlbmVyYXRlcyB0aGUgVmlld3BvcnRTaXplVHlwZUluZm8udHlwZSBmb3IgZWFjaCBicmVha3BvaW50LlxyXG4gKiBAcGFyYW0gYnJlYWtwb2ludHMgdGhlIGN1c3RvbSBicmVha3BvaW50c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlVmlld3BvcnRTaXplVHlwZTxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgbnVtYmVyPj4oYnJlYWtwb2ludHM6IFQpOiBUICYgUmVjb3JkPG51bWJlciwgc3RyaW5nPiB7XHJcblx0cmV0dXJuIE9iamVjdC5mcmVlemUoXHJcblx0XHRnZXRTb3J0ZWRCcmVha3BvaW50cyhicmVha3BvaW50cykucmVkdWNlPFJlY29yZDxudW1iZXIgfCBzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4+KFxyXG5cdFx0XHQoZGljdGlvbmFyeSwgW25hbWVdLCBpbmRleCkgPT4ge1xyXG5cdFx0XHRcdGRpY3Rpb25hcnlbbmFtZV0gPSBpbmRleDtcclxuXHRcdFx0XHRkaWN0aW9uYXJ5W2luZGV4XSA9IG5hbWU7XHJcblx0XHRcdFx0cmV0dXJuIGRpY3Rpb25hcnk7XHJcblx0XHRcdH0sIHt9XHJcblx0XHQpXHJcblx0KSBhcyBUICYgUmVjb3JkPG51bWJlciwgc3RyaW5nPjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByZS1wcm9jZXNzZXMgdGhlIGdpdmVuIGJyZWFrcG9pbnRzIGludG8gYW4gb3JkZXJlZCBsaXN0IGZyb20gc21hbGxlc3QgdG8gbGFyZ2VzdCB3aGlsZSBnZW5lcmF0aW5nXHJcbiAqICBhbGwgdGhlIG5lY2Vzc2FyeSBpbmZvcm1hdGlvbiBvbiB0aGUgdmlld3BvcnQuXHJcbiAqIEBwYXJhbSBicmVha3BvaW50cyB0aGUgYnJlYWtwb2ludHMgb2J0YWluZWQgZnJvbSB0aGUgY29uZmlnXHJcbiAqIEBpbnRlcm5hbFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlVmlld3BvcnRTaXplVHlwZUluZm9MaXN0KGJyZWFrcG9pbnRzOiBEaWN0aW9uYXJ5PG51bWJlcj4pOiBWaWV3cG9ydFNpemVUeXBlSW5mb1tdIHtcclxuXHRyZXR1cm4gZ2V0U29ydGVkQnJlYWtwb2ludHMoYnJlYWtwb2ludHMpXHJcblx0XHQubWFwKChbbmFtZSwgd2lkdGhdLCBpbmRleCkgPT5cclxuXHRcdFx0KE9iamVjdC5mcmVlemUoe1xyXG5cdFx0XHRcdG5hbWUsXHJcblx0XHRcdFx0dHlwZTogaW5kZXgsXHJcblx0XHRcdFx0d2lkdGhUaHJlc2hvbGQ6IHdpZHRoXHJcblx0XHRcdH0pKVxyXG5cdFx0KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIENvbnZlcnRzIHRoZSBicmVha3BvaW50IGxpc3QgaW50byBhIGRpY3Rpb25hcnkgd2hpbGUgdXNpbmcgdGhlIG5hbWUgYXMga2V5LlxyXG4gKiBAcGFyYW0gYnJlYWtwb2ludExpc3QgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludHNcclxuICogQGludGVybmFsXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVWaWV3cG9ydFNpemVUeXBlSW5mb1JlZnMoYnJlYWtwb2ludExpc3Q6IFZpZXdwb3J0U2l6ZVR5cGVJbmZvW10pOiBEaWN0aW9uYXJ5PFZpZXdwb3J0U2l6ZVR5cGVJbmZvPiB7XHJcblx0cmV0dXJuIE9iamVjdC5mcmVlemUoXHJcblx0XHRicmVha3BvaW50TGlzdC5yZWR1Y2U8RGljdGlvbmFyeTxWaWV3cG9ydFNpemVUeXBlSW5mbz4+KChkaWN0aW9uYXJ5LCBicmVha3BvaW50KSA9PiB7XHJcblx0XHRcdGRpY3Rpb25hcnlbYnJlYWtwb2ludC5uYW1lXSA9IGJyZWFrcG9pbnQ7XHJcblx0XHRcdGRpY3Rpb25hcnlbYnJlYWtwb2ludC50eXBlXSA9IGJyZWFrcG9pbnQ7XHJcblx0XHRcdHJldHVybiBkaWN0aW9uYXJ5O1xyXG5cdFx0fSwge30pXHJcblx0KTtcclxufVxyXG4iXX0=
@@ -1,7 +1,7 @@
1
- import { InjectionToken } from "@angular/core";
2
- import { UX_VIEWPORT_DEFAULT_CONFIG } from "./viewport/viewport.const";
3
- export const UX_DEFAULT_CONFIG = {
4
- viewport: UX_VIEWPORT_DEFAULT_CONFIG,
5
- };
6
- export const UX_CONFIG = new InjectionToken("@ssv/ngx.ux-config");
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBT3ZFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFjO0lBQzNDLFFBQVEsRUFBRSwwQkFBMEI7Q0FDcEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBWSxvQkFBb0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVVhfVklFV1BPUlRfREVGQVVMVF9DT05GSUcgfSBmcm9tIFwiLi92aWV3cG9ydC92aWV3cG9ydC5jb25zdFwiO1xuaW1wb3J0IHsgVXhWaWV3cG9ydE9wdGlvbnMgfSBmcm9tIFwiLi92aWV3cG9ydC92aWV3cG9ydC5tb2RlbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFV4T3B0aW9ucyB7XG5cdHZpZXdwb3J0OiBVeFZpZXdwb3J0T3B0aW9ucztcbn1cblxuZXhwb3J0IGNvbnN0IFVYX0RFRkFVTFRfQ09ORklHOiBVeE9wdGlvbnMgPSB7XG5cdHZpZXdwb3J0OiBVWF9WSUVXUE9SVF9ERUZBVUxUX0NPTkZJRyxcbn07XG5cbmV4cG9ydCBjb25zdCBVWF9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48VXhPcHRpb25zPihcIkBzc3Yvbmd4LnV4LWNvbmZpZ1wiKTtcbiJdfQ==
1
+ import { InjectionToken } from "@angular/core";
2
+ import { UX_VIEWPORT_DEFAULT_CONFIG } from "./viewport/viewport.const";
3
+ export const UX_DEFAULT_CONFIG = {
4
+ viewport: UX_VIEWPORT_DEFAULT_CONFIG,
5
+ };
6
+ export const UX_CONFIG = new InjectionToken("@ssv/ngx.ux-config");
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBT3ZFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFjO0lBQzNDLFFBQVEsRUFBRSwwQkFBMEI7Q0FDcEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBWSxvQkFBb0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBVWF9WSUVXUE9SVF9ERUZBVUxUX0NPTkZJRyB9IGZyb20gXCIuL3ZpZXdwb3J0L3ZpZXdwb3J0LmNvbnN0XCI7XHJcbmltcG9ydCB7IFV4Vmlld3BvcnRPcHRpb25zIH0gZnJvbSBcIi4vdmlld3BvcnQvdmlld3BvcnQubW9kZWxcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXhPcHRpb25zIHtcclxuXHR2aWV3cG9ydDogVXhWaWV3cG9ydE9wdGlvbnM7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBVWF9ERUZBVUxUX0NPTkZJRzogVXhPcHRpb25zID0ge1xyXG5cdHZpZXdwb3J0OiBVWF9WSUVXUE9SVF9ERUZBVUxUX0NPTkZJRyxcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBVWF9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48VXhPcHRpb25zPihcIkBzc3Yvbmd4LnV4LWNvbmZpZ1wiKTtcclxuIl19
package/esm2020/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- export * from "./viewport/index";
2
- export * from "./config";
3
- export * from "./module";
4
- export * from "./version";
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3ZpZXdwb3J0L2luZGV4XCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi92ZXJzaW9uXCI7XG4iXX0=
1
+ export * from "./viewport/index";
2
+ export * from "./config";
3
+ export * from "./module";
4
+ export * from "./version";
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3ZpZXdwb3J0L2luZGV4XCI7XHJcblxyXG5leHBvcnQgKiBmcm9tIFwiLi9jb25maWdcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vbW9kdWxlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3ZlcnNpb25cIjtcclxuIl19
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJuYWwvaW50ZXJuYWwubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGljdGlvbmFyeTxUPiB7XG5cdFtrZXk6IHN0cmluZ106IFQ7XG59XG5cbmV4cG9ydCB0eXBlIEVudW1EaWN0aW9uYXJ5PFRLZXkgZXh0ZW5kcyBQcm9wZXJ0eUtleSwgVFZhbHVlPiA9IHtcblx0W0sgaW4gVEtleV06IFRWYWx1ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFBhcnRpYWxEZWVwPFQ+ID0ge1xuXHRbUCBpbiBrZXlvZiBUXT86IFBhcnRpYWxEZWVwPFRbUF0+O1xufTtcbiJdfQ==
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJuYWwvaW50ZXJuYWwubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGljdGlvbmFyeTxUPiB7XHJcblx0W2tleTogc3RyaW5nXTogVDtcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRW51bURpY3Rpb25hcnk8VEtleSBleHRlbmRzIFByb3BlcnR5S2V5LCBUVmFsdWU+ID0ge1xyXG5cdFtLIGluIFRLZXldOiBUVmFsdWU7XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBQYXJ0aWFsRGVlcDxUPiA9IHtcclxuXHRbUCBpbiBrZXlvZiBUXT86IFBhcnRpYWxEZWVwPFRbUF0+O1xyXG59O1xyXG4iXX0=
@@ -1,65 +1,65 @@
1
- import { NgModule, InjectionToken, Optional } from "@angular/core";
2
- import { SsvViewportMatcherDirective, SsvViewportMatcherVarDirective } from "./viewport/index";
3
- import { UX_DEFAULT_CONFIG, UX_CONFIG } from "./config";
4
- import { WINDOW } from "./platform/window";
5
- import { ViewportDataPipe } from "./viewport/viewport-data/viewport-data.pipe";
6
- import * as i0 from "@angular/core";
7
- /** @internal */
8
- export const MODULE_CONFIG_DATA = new InjectionToken("@ssv/ngx.ux/configData");
9
- const components = [
10
- SsvViewportMatcherDirective,
11
- SsvViewportMatcherVarDirective,
12
- ViewportDataPipe,
13
- ];
14
- // todo: create module for Viewport
15
- export class SsvUxModule {
16
- static forRoot(config) {
17
- return {
18
- ngModule: SsvUxModule,
19
- providers: [
20
- { provide: MODULE_CONFIG_DATA, useValue: config },
21
- ],
22
- };
23
- }
24
- }
25
- SsvUxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
26
- SsvUxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, declarations: [SsvViewportMatcherDirective,
27
- SsvViewportMatcherVarDirective,
28
- ViewportDataPipe], exports: [SsvViewportMatcherDirective,
29
- SsvViewportMatcherVarDirective,
30
- ViewportDataPipe] });
31
- SsvUxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, providers: [
32
- { provide: UX_CONFIG, useFactory: _moduleConfigFactory, deps: [[MODULE_CONFIG_DATA, new Optional()]] },
33
- { provide: WINDOW, useFactory: _window },
34
- ] });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, decorators: [{
36
- type: NgModule,
37
- args: [{
38
- declarations: [components],
39
- providers: [
40
- { provide: UX_CONFIG, useFactory: _moduleConfigFactory, deps: [[MODULE_CONFIG_DATA, new Optional()]] },
41
- { provide: WINDOW, useFactory: _window },
42
- ],
43
- exports: [...components],
44
- }]
45
- }] });
46
- /** @internal */
47
- export function _moduleConfigFactory(config) {
48
- if (!config) {
49
- return UX_DEFAULT_CONFIG;
50
- }
51
- const uxOptions = typeof config === "function" ? config() : config;
52
- const viewport = {
53
- ...UX_DEFAULT_CONFIG.viewport,
54
- ...uxOptions.viewport
55
- }; // breakpoints shouldn't be merged
56
- return { viewport };
57
- }
58
- /** @internal */
59
- export function _window() {
60
- if (typeof window !== "undefined") {
61
- return window;
62
- }
63
- return {};
64
- }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9GLE9BQU8sRUFBYSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQUUvRSxnQkFBZ0I7QUFDaEIsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQVksd0JBQXdCLENBQUMsQ0FBQztBQUUxRixNQUFNLFVBQVUsR0FBRztJQUNsQiwyQkFBMkI7SUFDM0IsOEJBQThCO0lBQzlCLGdCQUFnQjtDQUNoQixDQUFDO0FBRUYsbUNBQW1DO0FBU25DLE1BQU0sT0FBTyxXQUFXO0lBRXZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBZ0U7UUFDOUUsT0FBTztZQUNOLFFBQVEsRUFBRSxXQUFXO1lBQ3JCLFNBQVMsRUFBRTtnQkFDVixFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2FBQ2pEO1NBQ0QsQ0FBQztJQUNILENBQUM7O3dHQVRXLFdBQVc7eUdBQVgsV0FBVyxpQkFkdkIsMkJBQTJCO1FBQzNCLDhCQUE4QjtRQUM5QixnQkFBZ0IsYUFGaEIsMkJBQTJCO1FBQzNCLDhCQUE4QjtRQUM5QixnQkFBZ0I7eUdBWUosV0FBVyxhQU5aO1FBQ1YsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFO1FBQ3RHLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFO0tBQ3hDOzJGQUdXLFdBQVc7a0JBUnZCLFFBQVE7bUJBQUM7b0JBQ1QsWUFBWSxFQUFFLENBQUMsVUFBVSxDQUFDO29CQUMxQixTQUFTLEVBQUU7d0JBQ1YsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFO3dCQUN0RyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRTtxQkFDeEM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7aUJBQ3hCOztBQWNELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsb0JBQW9CLENBQUMsTUFBcUM7SUFDekUsSUFBRyxDQUFDLE1BQU0sRUFBRTtRQUNYLE9BQU8saUJBQWlCLENBQUM7S0FDekI7SUFDRCxNQUFNLFNBQVMsR0FBRyxPQUFPLE1BQU0sS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkUsTUFBTSxRQUFRLEdBQUc7UUFDaEIsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRO1FBQzdCLEdBQUcsU0FBUyxDQUFDLFFBQVE7S0FDckIsQ0FBQyxDQUFDLGtDQUFrQztJQUVyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDckIsQ0FBQztBQUVELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsT0FBTztJQUN0QixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtRQUNsQyxPQUFPLE1BQU0sQ0FBQztLQUNkO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IFNzdlZpZXdwb3J0TWF0Y2hlckRpcmVjdGl2ZSwgU3N2Vmlld3BvcnRNYXRjaGVyVmFyRGlyZWN0aXZlIH0gZnJvbSBcIi4vdmlld3BvcnQvaW5kZXhcIjtcbmltcG9ydCB7IFV4T3B0aW9ucywgVVhfREVGQVVMVF9DT05GSUcsIFVYX0NPTkZJRyB9IGZyb20gXCIuL2NvbmZpZ1wiO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSBcIi4vcGxhdGZvcm0vd2luZG93XCI7XG5pbXBvcnQgeyBQYXJ0aWFsRGVlcCB9IGZyb20gXCIuL2ludGVybmFsL2ludGVybmFsLm1vZGVsXCI7XG5pbXBvcnQgeyBWaWV3cG9ydERhdGFQaXBlIH0gZnJvbSBcIi4vdmlld3BvcnQvdmlld3BvcnQtZGF0YS92aWV3cG9ydC1kYXRhLnBpcGVcIjtcblxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGNvbnN0IE1PRFVMRV9DT05GSUdfREFUQSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxVeE9wdGlvbnM+KFwiQHNzdi9uZ3gudXgvY29uZmlnRGF0YVwiKTtcblxuY29uc3QgY29tcG9uZW50cyA9IFtcblx0U3N2Vmlld3BvcnRNYXRjaGVyRGlyZWN0aXZlLFxuXHRTc3ZWaWV3cG9ydE1hdGNoZXJWYXJEaXJlY3RpdmUsXG5cdFZpZXdwb3J0RGF0YVBpcGUsXG5dO1xuXG4vLyB0b2RvOiBjcmVhdGUgbW9kdWxlIGZvciBWaWV3cG9ydFxuQE5nTW9kdWxlKHtcblx0ZGVjbGFyYXRpb25zOiBbY29tcG9uZW50c10sXG5cdHByb3ZpZGVyczogW1xuXHRcdHsgcHJvdmlkZTogVVhfQ09ORklHLCB1c2VGYWN0b3J5OiBfbW9kdWxlQ29uZmlnRmFjdG9yeSwgZGVwczogW1tNT0RVTEVfQ09ORklHX0RBVEEsIG5ldyBPcHRpb25hbCgpXV0gfSxcblx0XHR7IHByb3ZpZGU6IFdJTkRPVywgdXNlRmFjdG9yeTogX3dpbmRvdyB9LFxuXHRdLFxuXHRleHBvcnRzOiBbLi4uY29tcG9uZW50c10sXG59KVxuZXhwb3J0IGNsYXNzIFNzdlV4TW9kdWxlIHtcblxuXHRzdGF0aWMgZm9yUm9vdChjb25maWc/OiBQYXJ0aWFsRGVlcDxVeE9wdGlvbnM+IHwgKCgpID0+IFBhcnRpYWxEZWVwPFV4T3B0aW9ucz4pKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTc3ZVeE1vZHVsZT4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRuZ01vZHVsZTogU3N2VXhNb2R1bGUsXG5cdFx0XHRwcm92aWRlcnM6IFtcblx0XHRcdFx0eyBwcm92aWRlOiBNT0RVTEVfQ09ORklHX0RBVEEsIHVzZVZhbHVlOiBjb25maWcgfSxcblx0XHRcdF0sXG5cdFx0fTtcblx0fVxuXG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBfbW9kdWxlQ29uZmlnRmFjdG9yeShjb25maWc6IFV4T3B0aW9ucyB8ICgoKSA9PiBVeE9wdGlvbnMpKTogVXhPcHRpb25zIHtcblx0aWYoIWNvbmZpZykge1xuXHRcdHJldHVybiBVWF9ERUZBVUxUX0NPTkZJRztcblx0fVxuXHRjb25zdCB1eE9wdGlvbnMgPSB0eXBlb2YgY29uZmlnID09PSBcImZ1bmN0aW9uXCIgPyBjb25maWcoKSA6IGNvbmZpZztcblx0Y29uc3Qgdmlld3BvcnQgPSB7XG5cdFx0Li4uVVhfREVGQVVMVF9DT05GSUcudmlld3BvcnQsXG5cdFx0Li4udXhPcHRpb25zLnZpZXdwb3J0XG5cdH07IC8vIGJyZWFrcG9pbnRzIHNob3VsZG4ndCBiZSBtZXJnZWRcblxuXHRyZXR1cm4geyB2aWV3cG9ydCB9O1xufVxuXG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gX3dpbmRvdygpOiB1bmtub3duIHtcblx0aWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcblx0XHRyZXR1cm4gd2luZG93O1xuXHR9XG5cdHJldHVybiB7fTtcbn1cbiJdfQ==
1
+ import { NgModule, InjectionToken, Optional } from "@angular/core";
2
+ import { SsvViewportMatcherDirective, SsvViewportMatcherVarDirective } from "./viewport/index";
3
+ import { UX_DEFAULT_CONFIG, UX_CONFIG } from "./config";
4
+ import { WINDOW } from "./platform/window";
5
+ import { ViewportDataPipe } from "./viewport/viewport-data/viewport-data.pipe";
6
+ import * as i0 from "@angular/core";
7
+ /** @internal */
8
+ export const MODULE_CONFIG_DATA = new InjectionToken("@ssv/ngx.ux/configData");
9
+ const components = [
10
+ SsvViewportMatcherDirective,
11
+ SsvViewportMatcherVarDirective,
12
+ ViewportDataPipe,
13
+ ];
14
+ // todo: create module for Viewport
15
+ export class SsvUxModule {
16
+ static forRoot(config) {
17
+ return {
18
+ ngModule: SsvUxModule,
19
+ providers: [
20
+ { provide: MODULE_CONFIG_DATA, useValue: config },
21
+ ],
22
+ };
23
+ }
24
+ }
25
+ SsvUxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
26
+ SsvUxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, declarations: [SsvViewportMatcherDirective,
27
+ SsvViewportMatcherVarDirective,
28
+ ViewportDataPipe], exports: [SsvViewportMatcherDirective,
29
+ SsvViewportMatcherVarDirective,
30
+ ViewportDataPipe] });
31
+ SsvUxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, providers: [
32
+ { provide: UX_CONFIG, useFactory: _moduleConfigFactory, deps: [[MODULE_CONFIG_DATA, new Optional()]] },
33
+ { provide: WINDOW, useFactory: _window },
34
+ ] });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SsvUxModule, decorators: [{
36
+ type: NgModule,
37
+ args: [{
38
+ declarations: [components],
39
+ providers: [
40
+ { provide: UX_CONFIG, useFactory: _moduleConfigFactory, deps: [[MODULE_CONFIG_DATA, new Optional()]] },
41
+ { provide: WINDOW, useFactory: _window },
42
+ ],
43
+ exports: [...components],
44
+ }]
45
+ }] });
46
+ /** @internal */
47
+ export function _moduleConfigFactory(config) {
48
+ if (!config) {
49
+ return UX_DEFAULT_CONFIG;
50
+ }
51
+ const uxOptions = typeof config === "function" ? config() : config;
52
+ const viewport = {
53
+ ...UX_DEFAULT_CONFIG.viewport,
54
+ ...uxOptions.viewport
55
+ }; // breakpoints shouldn't be merged
56
+ return { viewport };
57
+ }
58
+ /** @internal */
59
+ export function _window() {
60
+ if (typeof window !== "undefined") {
61
+ return window;
62
+ }
63
+ return {};
64
+ }
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9GLE9BQU8sRUFBYSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQUUvRSxnQkFBZ0I7QUFDaEIsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQVksd0JBQXdCLENBQUMsQ0FBQztBQUUxRixNQUFNLFVBQVUsR0FBRztJQUNsQiwyQkFBMkI7SUFDM0IsOEJBQThCO0lBQzlCLGdCQUFnQjtDQUNoQixDQUFDO0FBRUYsbUNBQW1DO0FBU25DLE1BQU0sT0FBTyxXQUFXO0lBRXZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBZ0U7UUFDOUUsT0FBTztZQUNOLFFBQVEsRUFBRSxXQUFXO1lBQ3JCLFNBQVMsRUFBRTtnQkFDVixFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2FBQ2pEO1NBQ0QsQ0FBQztJQUNILENBQUM7O3dHQVRXLFdBQVc7eUdBQVgsV0FBVyxpQkFkdkIsMkJBQTJCO1FBQzNCLDhCQUE4QjtRQUM5QixnQkFBZ0IsYUFGaEIsMkJBQTJCO1FBQzNCLDhCQUE4QjtRQUM5QixnQkFBZ0I7eUdBWUosV0FBVyxhQU5aO1FBQ1YsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFO1FBQ3RHLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFO0tBQ3hDOzJGQUdXLFdBQVc7a0JBUnZCLFFBQVE7bUJBQUM7b0JBQ1QsWUFBWSxFQUFFLENBQUMsVUFBVSxDQUFDO29CQUMxQixTQUFTLEVBQUU7d0JBQ1YsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFO3dCQUN0RyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRTtxQkFDeEM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7aUJBQ3hCOztBQWNELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsb0JBQW9CLENBQUMsTUFBcUM7SUFDekUsSUFBRyxDQUFDLE1BQU0sRUFBRTtRQUNYLE9BQU8saUJBQWlCLENBQUM7S0FDekI7SUFDRCxNQUFNLFNBQVMsR0FBRyxPQUFPLE1BQU0sS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkUsTUFBTSxRQUFRLEdBQUc7UUFDaEIsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRO1FBQzdCLEdBQUcsU0FBUyxDQUFDLFFBQVE7S0FDckIsQ0FBQyxDQUFDLGtDQUFrQztJQUVyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDckIsQ0FBQztBQUVELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsT0FBTztJQUN0QixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtRQUNsQyxPQUFPLE1BQU0sQ0FBQztLQUNkO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBTc3ZWaWV3cG9ydE1hdGNoZXJEaXJlY3RpdmUsIFNzdlZpZXdwb3J0TWF0Y2hlclZhckRpcmVjdGl2ZSB9IGZyb20gXCIuL3ZpZXdwb3J0L2luZGV4XCI7XHJcbmltcG9ydCB7IFV4T3B0aW9ucywgVVhfREVGQVVMVF9DT05GSUcsIFVYX0NPTkZJRyB9IGZyb20gXCIuL2NvbmZpZ1wiO1xyXG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tIFwiLi9wbGF0Zm9ybS93aW5kb3dcIjtcclxuaW1wb3J0IHsgUGFydGlhbERlZXAgfSBmcm9tIFwiLi9pbnRlcm5hbC9pbnRlcm5hbC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBWaWV3cG9ydERhdGFQaXBlIH0gZnJvbSBcIi4vdmlld3BvcnQvdmlld3BvcnQtZGF0YS92aWV3cG9ydC1kYXRhLnBpcGVcIjtcclxuXHJcbi8qKiBAaW50ZXJuYWwgKi9cclxuZXhwb3J0IGNvbnN0IE1PRFVMRV9DT05GSUdfREFUQSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxVeE9wdGlvbnM+KFwiQHNzdi9uZ3gudXgvY29uZmlnRGF0YVwiKTtcclxuXHJcbmNvbnN0IGNvbXBvbmVudHMgPSBbXHJcblx0U3N2Vmlld3BvcnRNYXRjaGVyRGlyZWN0aXZlLFxyXG5cdFNzdlZpZXdwb3J0TWF0Y2hlclZhckRpcmVjdGl2ZSxcclxuXHRWaWV3cG9ydERhdGFQaXBlLFxyXG5dO1xyXG5cclxuLy8gdG9kbzogY3JlYXRlIG1vZHVsZSBmb3IgVmlld3BvcnRcclxuQE5nTW9kdWxlKHtcclxuXHRkZWNsYXJhdGlvbnM6IFtjb21wb25lbnRzXSxcclxuXHRwcm92aWRlcnM6IFtcclxuXHRcdHsgcHJvdmlkZTogVVhfQ09ORklHLCB1c2VGYWN0b3J5OiBfbW9kdWxlQ29uZmlnRmFjdG9yeSwgZGVwczogW1tNT0RVTEVfQ09ORklHX0RBVEEsIG5ldyBPcHRpb25hbCgpXV0gfSxcclxuXHRcdHsgcHJvdmlkZTogV0lORE9XLCB1c2VGYWN0b3J5OiBfd2luZG93IH0sXHJcblx0XSxcclxuXHRleHBvcnRzOiBbLi4uY29tcG9uZW50c10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTc3ZVeE1vZHVsZSB7XHJcblxyXG5cdHN0YXRpYyBmb3JSb290KGNvbmZpZz86IFBhcnRpYWxEZWVwPFV4T3B0aW9ucz4gfCAoKCkgPT4gUGFydGlhbERlZXA8VXhPcHRpb25zPikpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNzdlV4TW9kdWxlPiB7XHJcblx0XHRyZXR1cm4ge1xyXG5cdFx0XHRuZ01vZHVsZTogU3N2VXhNb2R1bGUsXHJcblx0XHRcdHByb3ZpZGVyczogW1xyXG5cdFx0XHRcdHsgcHJvdmlkZTogTU9EVUxFX0NPTkZJR19EQVRBLCB1c2VWYWx1ZTogY29uZmlnIH0sXHJcblx0XHRcdF0sXHJcblx0XHR9O1xyXG5cdH1cclxuXHJcbn1cclxuXHJcbi8qKiBAaW50ZXJuYWwgKi9cclxuZXhwb3J0IGZ1bmN0aW9uIF9tb2R1bGVDb25maWdGYWN0b3J5KGNvbmZpZzogVXhPcHRpb25zIHwgKCgpID0+IFV4T3B0aW9ucykpOiBVeE9wdGlvbnMge1xyXG5cdGlmKCFjb25maWcpIHtcclxuXHRcdHJldHVybiBVWF9ERUZBVUxUX0NPTkZJRztcclxuXHR9XHJcblx0Y29uc3QgdXhPcHRpb25zID0gdHlwZW9mIGNvbmZpZyA9PT0gXCJmdW5jdGlvblwiID8gY29uZmlnKCkgOiBjb25maWc7XHJcblx0Y29uc3Qgdmlld3BvcnQgPSB7XHJcblx0XHQuLi5VWF9ERUZBVUxUX0NPTkZJRy52aWV3cG9ydCxcclxuXHRcdC4uLnV4T3B0aW9ucy52aWV3cG9ydFxyXG5cdH07IC8vIGJyZWFrcG9pbnRzIHNob3VsZG4ndCBiZSBtZXJnZWRcclxuXHJcblx0cmV0dXJuIHsgdmlld3BvcnQgfTtcclxufVxyXG5cclxuLyoqIEBpbnRlcm5hbCAqL1xyXG5leHBvcnQgZnVuY3Rpb24gX3dpbmRvdygpOiB1bmtub3duIHtcclxuXHRpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xyXG5cdFx0cmV0dXJuIHdpbmRvdztcclxuXHR9XHJcblx0cmV0dXJuIHt9O1xyXG59XHJcbiJdfQ==
@@ -1,30 +1,30 @@
1
- import { InjectionToken, Injectable, Inject } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- export const WINDOW = new InjectionToken("Window");
4
- export class WindowRef {
5
- constructor(
6
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
7
- window) {
8
- this.window = window;
9
- }
10
- /** Window underlying native object. */
11
- get native() {
12
- return this.window;
13
- }
14
- /** Determines whether native element is supported or not. Generally `false` when executing in SSR. */
15
- get hasNative() {
16
- return !!this.native.window;
17
- }
18
- }
19
- WindowRef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, deps: [{ token: WINDOW }], target: i0.ɵɵFactoryTarget.Injectable });
20
- WindowRef.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, providedIn: "root" });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, decorators: [{
22
- type: Injectable,
23
- args: [{
24
- providedIn: "root",
25
- }]
26
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
27
- type: Inject,
28
- args: [WINDOW]
29
- }] }]; } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsYXRmb3JtL3dpbmRvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRW5FLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUyxRQUFRLENBQUMsQ0FBQztBQUszRCxNQUFNLE9BQU8sU0FBUztJQUVyQjtJQUNDLGlIQUFpSDtJQUN6RixNQUFXO1FBQVgsV0FBTSxHQUFOLE1BQU0sQ0FBSztJQUVwQyxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLElBQUksTUFBTTtRQUNULE9BQU8sSUFBSSxDQUFDLE1BQWdCLENBQUM7SUFDOUIsQ0FBQztJQUVELHNHQUFzRztJQUN0RyxJQUFJLFNBQVM7UUFDWixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDOztzR0FoQlcsU0FBUyxrQkFJWixNQUFNOzBHQUpILFNBQVMsY0FGVCxNQUFNOzJGQUVOLFNBQVM7a0JBSHJCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFLRSxNQUFNOzJCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuZXhwb3J0IGNvbnN0IFdJTkRPVyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxXaW5kb3c+KFwiV2luZG93XCIpO1xuXG5ASW5qZWN0YWJsZSh7XG5cdHByb3ZpZGVkSW46IFwicm9vdFwiLFxufSlcbmV4cG9ydCBjbGFzcyBXaW5kb3dSZWYge1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55LCBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtbW9kdWxlLWJvdW5kYXJ5LXR5cGVzXG5cdFx0QEluamVjdChXSU5ET1cpIHByaXZhdGUgd2luZG93OiBhbnlcblx0KSB7XG5cdH1cblxuXHQvKiogV2luZG93IHVuZGVybHlpbmcgbmF0aXZlIG9iamVjdC4gKi9cblx0Z2V0IG5hdGl2ZSgpOiBXaW5kb3cge1xuXHRcdHJldHVybiB0aGlzLndpbmRvdyBhcyBXaW5kb3c7XG5cdH1cblxuXHQvKiogRGV0ZXJtaW5lcyB3aGV0aGVyIG5hdGl2ZSBlbGVtZW50IGlzIHN1cHBvcnRlZCBvciBub3QuIEdlbmVyYWxseSBgZmFsc2VgIHdoZW4gZXhlY3V0aW5nIGluIFNTUi4gKi9cblx0Z2V0IGhhc05hdGl2ZSgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gISF0aGlzLm5hdGl2ZS53aW5kb3c7XG5cdH1cblxufVxuIl19
1
+ import { InjectionToken, Injectable, Inject } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export const WINDOW = new InjectionToken("Window");
4
+ export class WindowRef {
5
+ constructor(
6
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
7
+ window) {
8
+ this.window = window;
9
+ }
10
+ /** Window underlying native object. */
11
+ get native() {
12
+ return this.window;
13
+ }
14
+ /** Determines whether native element is supported or not. Generally `false` when executing in SSR. */
15
+ get hasNative() {
16
+ return !!this.native.window;
17
+ }
18
+ }
19
+ WindowRef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, deps: [{ token: WINDOW }], target: i0.ɵɵFactoryTarget.Injectable });
20
+ WindowRef.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, providedIn: "root" });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, decorators: [{
22
+ type: Injectable,
23
+ args: [{
24
+ providedIn: "root",
25
+ }]
26
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
27
+ type: Inject,
28
+ args: [WINDOW]
29
+ }] }]; } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsYXRmb3JtL3dpbmRvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRW5FLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUyxRQUFRLENBQUMsQ0FBQztBQUszRCxNQUFNLE9BQU8sU0FBUztJQUVyQjtJQUNDLGlIQUFpSDtJQUN6RixNQUFXO1FBQVgsV0FBTSxHQUFOLE1BQU0sQ0FBSztJQUVwQyxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLElBQUksTUFBTTtRQUNULE9BQU8sSUFBSSxDQUFDLE1BQWdCLENBQUM7SUFDOUIsQ0FBQztJQUVELHNHQUFzRztJQUN0RyxJQUFJLFNBQVM7UUFDWixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDOztzR0FoQlcsU0FBUyxrQkFJWixNQUFNOzBHQUpILFNBQVMsY0FGVCxNQUFNOzJGQUVOLFNBQVM7a0JBSHJCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFLRSxNQUFNOzJCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBXSU5ET1cgPSBuZXcgSW5qZWN0aW9uVG9rZW48V2luZG93PihcIldpbmRvd1wiKTtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFdpbmRvd1JlZiB7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1tb2R1bGUtYm91bmRhcnktdHlwZXNcclxuXHRcdEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHdpbmRvdzogYW55XHJcblx0KSB7XHJcblx0fVxyXG5cclxuXHQvKiogV2luZG93IHVuZGVybHlpbmcgbmF0aXZlIG9iamVjdC4gKi9cclxuXHRnZXQgbmF0aXZlKCk6IFdpbmRvdyB7XHJcblx0XHRyZXR1cm4gdGhpcy53aW5kb3cgYXMgV2luZG93O1xyXG5cdH1cclxuXHJcblx0LyoqIERldGVybWluZXMgd2hldGhlciBuYXRpdmUgZWxlbWVudCBpcyBzdXBwb3J0ZWQgb3Igbm90LiBHZW5lcmFsbHkgYGZhbHNlYCB3aGVuIGV4ZWN1dGluZyBpbiBTU1IuICovXHJcblx0Z2V0IGhhc05hdGl2ZSgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiAhIXRoaXMubmF0aXZlLndpbmRvdztcclxuXHR9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3N2LW5neC51eC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zc3Ytbmd4LnV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,2 +1,2 @@
1
- export const VERSION = "0.0.0-PLACEHOLDER";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gXCIwLjAuMC1QTEFDRUhPTERFUlwiO1xuIl19
1
+ export const VERSION = "0.0.0-PLACEHOLDER";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gXCIwLjAuMC1QTEFDRUhPTERFUlwiO1xyXG4iXX0=