@factor_ec/ui 1.0.7 → 1.0.8

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 (51) hide show
  1. package/esm2020/lib/display/avatar/avatar.component.mjs +74 -0
  2. package/esm2020/lib/{content → display/content}/content.component.mjs +1 -1
  3. package/esm2020/lib/display/display.module.mjs +66 -0
  4. package/esm2020/lib/display/icon/icon.component.mjs +97 -0
  5. package/esm2020/lib/{image → display/image}/image.component.mjs +1 -1
  6. package/esm2020/lib/{message → display/message}/message.component.mjs +1 -1
  7. package/esm2020/lib/display/message.service.mjs +58 -0
  8. package/esm2020/lib/display/observe-intersecting.directive.mjs +43 -0
  9. package/esm2020/lib/{progress → display/progress}/progress.component.mjs +1 -1
  10. package/esm2020/lib/display/progress.service.mjs +50 -0
  11. package/esm2020/lib/inputs/inputs.module.mjs +24 -0
  12. package/esm2020/lib/{rating → inputs/rating}/rating.component.mjs +1 -1
  13. package/esm2020/lib/models/action.mjs +1 -1
  14. package/esm2020/lib/models/module-configuration.mjs +2 -0
  15. package/esm2020/lib/navigation/list/list.component.mjs +56 -0
  16. package/esm2020/lib/navigation/navbar/navbar.component.mjs +72 -0
  17. package/esm2020/lib/navigation/navigation.module.mjs +55 -0
  18. package/esm2020/lib/navigation/searchbox/searchbox.component.mjs +106 -0
  19. package/esm2020/lib/navigation/toolbar/toolbar.component.mjs +51 -0
  20. package/esm2020/lib/ui.module.mjs +15 -52
  21. package/esm2020/public-api.mjs +18 -8
  22. package/fesm2015/factor_ec-ui.mjs +558 -149
  23. package/fesm2015/factor_ec-ui.mjs.map +1 -1
  24. package/fesm2020/factor_ec-ui.mjs +552 -145
  25. package/fesm2020/factor_ec-ui.mjs.map +1 -1
  26. package/lib/{avatar → display/avatar}/avatar.component.d.ts +1 -1
  27. package/lib/{content → display/content}/content.component.d.ts +0 -0
  28. package/lib/display/display.module.d.ts +17 -0
  29. package/lib/{icon → display/icon}/icon.component.d.ts +1 -1
  30. package/lib/{image → display/image}/image.component.d.ts +0 -0
  31. package/lib/{message → display/message}/message.component.d.ts +0 -0
  32. package/lib/{message.service.d.ts → display/message.service.d.ts} +2 -2
  33. package/lib/{observe-intersecting.directive.d.ts → display/observe-intersecting.directive.d.ts} +2 -1
  34. package/lib/{progress → display/progress}/progress.component.d.ts +0 -0
  35. package/lib/display/progress.service.d.ts +15 -0
  36. package/lib/inputs/inputs.module.d.ts +8 -0
  37. package/lib/{rating → inputs/rating}/rating.component.d.ts +0 -0
  38. package/lib/models/action.d.ts +11 -3
  39. package/lib/models/module-configuration.d.ts +6 -0
  40. package/lib/navigation/list/list.component.d.ts +19 -0
  41. package/lib/navigation/navbar/navbar.component.d.ts +23 -0
  42. package/lib/navigation/navigation.module.d.ts +15 -0
  43. package/lib/navigation/searchbox/searchbox.component.d.ts +34 -0
  44. package/lib/navigation/toolbar/toolbar.component.d.ts +18 -0
  45. package/lib/ui.module.d.ts +7 -14
  46. package/package.json +1 -1
  47. package/public-api.d.ts +17 -7
  48. package/esm2020/lib/avatar/avatar.component.mjs +0 -74
  49. package/esm2020/lib/icon/icon.component.mjs +0 -97
  50. package/esm2020/lib/message.service.mjs +0 -58
  51. package/esm2020/lib/observe-intersecting.directive.mjs +0 -36
package/public-api.d.ts CHANGED
@@ -1,8 +1,18 @@
1
- export * from './lib/avatar/avatar.component';
2
- export * from './lib/icon/icon.component';
3
- export * from './lib/image/image.component';
4
- export * from './lib/progress/progress.component';
5
- export * from './lib/rating/rating.component';
6
- export * from './lib/observe-intersecting.directive';
7
- export * from './lib/message.service';
1
+ export * from './lib/display/avatar/avatar.component';
2
+ export * from './lib/display/icon/icon.component';
3
+ export * from './lib/display/image/image.component';
4
+ export * from './lib/display/content/content.component';
5
+ export * from './lib/display/message/message.component';
6
+ export * from './lib/display/message.service';
7
+ export * from './lib/display/progress/progress.component';
8
+ export * from './lib/display/progress.service';
9
+ export * from './lib/display/observe-intersecting.directive';
10
+ export * from './lib/display/display.module';
11
+ export * from './lib/inputs/rating/rating.component';
12
+ export * from './lib/inputs/inputs.module';
13
+ export * from './lib/navigation/list/list.component';
14
+ export * from './lib/navigation/navbar/navbar.component';
15
+ export * from './lib/navigation/searchbox/searchbox.component';
16
+ export * from './lib/navigation/toolbar/toolbar.component';
17
+ export * from './lib/navigation/navigation.module';
8
18
  export * from './lib/ui.module';
@@ -1,74 +0,0 @@
1
- import { Component, HostBinding, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@factor_ec/utils";
4
- import * as i2 from "@angular/common";
5
- export class AvatarComponent {
6
- constructor(colorService) {
7
- this.colorService = colorService;
8
- this.class = '';
9
- }
10
- set src(value) {
11
- if (value && value.trim() != '') {
12
- this._src = value;
13
- let image = new Image();
14
- image.src = value;
15
- image.onload = () => {
16
- if ("decode" in image) {
17
- image.decode().then(() => {
18
- this.loaded = true;
19
- });
20
- }
21
- else {
22
- console.error('Image.decode not available.');
23
- }
24
- };
25
- }
26
- }
27
- set label(value) {
28
- this._label = value;
29
- this.initials = this.getInitials(value);
30
- }
31
- get backgroundColor() {
32
- return this.color || this.colorService.hex(this._label);
33
- }
34
- get backgroundImage() {
35
- return this._src ? `url(${this._src})` : '';
36
- }
37
- get hostClasses() {
38
- return [
39
- 'ft-avatar',
40
- this.class
41
- ].join(' ');
42
- }
43
- ngOnInit() {
44
- }
45
- getInitials(value) {
46
- let allInitials = value.match(/\b\w/g) || [];
47
- let initials = ((allInitials.shift() || '') + (allInitials.pop() || '')).toUpperCase();
48
- return initials;
49
- }
50
- }
51
- AvatarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AvatarComponent, deps: [{ token: i1.ColorService }], target: i0.ɵɵFactoryTarget.Component });
52
- AvatarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: AvatarComponent, selector: "ft-avatar", inputs: { color: "color", class: "class", src: "src", label: "label" }, host: { properties: { "style.background-color": "this.backgroundColor", "style.background-image": "this.backgroundImage", "class": "this.hostClasses" } }, ngImport: i0, template: "<div *ngIf=\"!loaded\">{{ initials }}</div>\n", styles: [":host{--default-size: var(--size, 3rem);display:inline-flex;align-items:center;justify-content:center;color:#fff;background-size:cover;background-repeat:no-repeat;border-radius:calc(var(--default-size) / 2);font-size:calc(var(--default-size) - var(--default-size) * .6);min-width:var(--default-size);min-height:var(--default-size);cursor:default;-webkit-user-select:none;user-select:none}div{font-size:1em;line-height:1em}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AvatarComponent, decorators: [{
54
- type: Component,
55
- args: [{ selector: 'ft-avatar', template: "<div *ngIf=\"!loaded\">{{ initials }}</div>\n", styles: [":host{--default-size: var(--size, 3rem);display:inline-flex;align-items:center;justify-content:center;color:#fff;background-size:cover;background-repeat:no-repeat;border-radius:calc(var(--default-size) / 2);font-size:calc(var(--default-size) - var(--default-size) * .6);min-width:var(--default-size);min-height:var(--default-size);cursor:default;-webkit-user-select:none;user-select:none}div{font-size:1em;line-height:1em}\n"] }]
56
- }], ctorParameters: function () { return [{ type: i1.ColorService }]; }, propDecorators: { color: [{
57
- type: Input
58
- }], class: [{
59
- type: Input
60
- }], src: [{
61
- type: Input
62
- }], label: [{
63
- type: Input
64
- }], backgroundColor: [{
65
- type: HostBinding,
66
- args: ['style.background-color']
67
- }], backgroundImage: [{
68
- type: HostBinding,
69
- args: ['style.background-image']
70
- }], hostClasses: [{
71
- type: HostBinding,
72
- args: ['class']
73
- }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvYXZhdGFyL2F2YXRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXRFLE1BQU0sT0FBTyxlQUFlO0lBK0MxQixZQUNVLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBeENwQyxVQUFLLEdBQVcsRUFBRSxDQUFDO0lBeUNmLENBQUM7SUF4Q0wsSUFDSSxHQUFHLENBQUMsS0FBYTtRQUNuQixJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUUsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ2xCLElBQUksS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7WUFDbEIsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksUUFBUSxJQUFJLEtBQUssRUFBRTtvQkFDckIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7d0JBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO29CQUNyQixDQUFDLENBQUMsQ0FBQztpQkFDSjtxQkFBTTtvQkFDTCxPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7aUJBQzlDO1lBQ0gsQ0FBQyxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBQ0QsSUFDSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNELElBQ0ksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFDRCxJQUNJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFDRCxJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsV0FBVztZQUNYLElBQUksQ0FBQyxLQUFLO1NBQ1gsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBTUQsUUFBUTtJQUVSLENBQUM7SUFDRCxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLFdBQVcsR0FBYSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2RCxJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0YsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs7NEdBMURVLGVBQWU7Z0dBQWYsZUFBZSxvUkNSNUIsK0NBQ0E7MkZET2EsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxXQUFXO21HQVFyQixLQUFLO3NCQURKLEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQUdGLEdBQUc7c0JBRE4sS0FBSztnQkFrQkYsS0FBSztzQkFEUixLQUFLO2dCQU1GLGVBQWU7c0JBRGxCLFdBQVc7dUJBQUMsd0JBQXdCO2dCQUtqQyxlQUFlO3NCQURsQixXQUFXO3VCQUFDLHdCQUF3QjtnQkFLakMsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2xvclNlcnZpY2UgfSBmcm9tICdAZmFjdG9yX2VjL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnQtYXZhdGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F2YXRhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEF2YXRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIF9sYWJlbCE6IHN0cmluZztcbiAgX3NyYyE6IHN0cmluZztcbiAgQElucHV0KClcbiAgY29sb3IhOiBzdHJpbmc7XG4gIGluaXRpYWxzITogc3RyaW5nO1xuICBsb2FkZWQhOiBib29sZWFuO1xuICBASW5wdXQoKVxuICBjbGFzczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpXG4gIHNldCBzcmModmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS50cmltKCkhPScnKSB7XG4gICAgICB0aGlzLl9zcmMgPSB2YWx1ZTtcbiAgICAgIGxldCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xuICAgICAgaW1hZ2Uuc3JjID0gdmFsdWU7XG4gICAgICBpbWFnZS5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgIGlmIChcImRlY29kZVwiIGluIGltYWdlKSB7XG4gICAgICAgICAgaW1hZ2UuZGVjb2RlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWU7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignSW1hZ2UuZGVjb2RlIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBsYWJlbCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbGFiZWwgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXRpYWxzID0gdGhpcy5nZXRJbml0aWFscyh2YWx1ZSk7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yJylcbiAgZ2V0IGJhY2tncm91bmRDb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbG9yIHx8IHRoaXMuY29sb3JTZXJ2aWNlLmhleCh0aGlzLl9sYWJlbCk7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5iYWNrZ3JvdW5kLWltYWdlJylcbiAgZ2V0IGJhY2tncm91bmRJbWFnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zcmMgPyBgdXJsKCR7dGhpcy5fc3JjfSlgIDogJyc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnZnQtYXZhdGFyJyxcbiAgICAgIHRoaXMuY2xhc3NcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29sb3JTZXJ2aWNlOiBDb2xvclNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcblxuICB9XG4gIGdldEluaXRpYWxzKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBhbGxJbml0aWFsczogc3RyaW5nW10gPSB2YWx1ZS5tYXRjaCgvXFxiXFx3L2cpIHx8IFtdO1xuICAgIGxldCBpbml0aWFsczogc3RyaW5nID0gKChhbGxJbml0aWFscy5zaGlmdCgpIHx8ICcnKSArIChhbGxJbml0aWFscy5wb3AoKSB8fCAnJykpLnRvVXBwZXJDYXNlKCk7XG4gICAgcmV0dXJuIGluaXRpYWxzO1xuICB9XG5cbn1cbiIsIjxkaXYgKm5nSWY9XCIhbG9hZGVkXCI+e3sgaW5pdGlhbHMgfX08L2Rpdj5cbiJdfQ==
@@ -1,97 +0,0 @@
1
- import { Component, Input, Inject, HostBinding } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- export class IconComponent {
5
- constructor(configuration) {
6
- this.configuration = configuration;
7
- this.class = '';
8
- }
9
- set collection(collection) {
10
- this._collection = collection;
11
- this.update();
12
- }
13
- set mode(mode) {
14
- this._mode = mode;
15
- this.update();
16
- }
17
- set name(name) {
18
- this._name = name;
19
- this.update();
20
- }
21
- set path(path) {
22
- this._path = path;
23
- this.update();
24
- }
25
- get hostClasses() {
26
- return [
27
- 'ft-icon',
28
- this.class
29
- ].join(' ');
30
- }
31
- ngOnInit() {
32
- this.update();
33
- }
34
- update() {
35
- // Set the default collection if the mode is external
36
- if (!this._collection) {
37
- if (this.configuration.icon && this.configuration.icon.collection) {
38
- this._collection = this.configuration.icon.collection;
39
- }
40
- else if (this._mode === 'external') {
41
- this._collection = 'icons';
42
- }
43
- }
44
- if (!this._mode) {
45
- if (this.configuration.icon && this.configuration.icon.mode) {
46
- this._mode = this.configuration.icon.mode;
47
- }
48
- else {
49
- this._mode = 'external';
50
- }
51
- }
52
- if (this._mode === 'external') {
53
- // If the icon mode is external
54
- if (!this._path) {
55
- if (this.configuration.icon && this.configuration.icon.path) {
56
- this._path = this.configuration.icon.path;
57
- }
58
- else {
59
- this._path = 'assets';
60
- }
61
- }
62
- this.url = `${this._path}/${this._collection}.svg#${this._name}`;
63
- }
64
- else {
65
- // If the icon mode is inline
66
- const name = this._collection && this._collection !== 'unset' ? `${this._collection}--${this._name}` : this._name;
67
- this.url = `#${name}`;
68
- }
69
- }
70
- }
71
- IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: IconComponent, deps: [{ token: 'FactorUiConfiguration' }], target: i0.ɵɵFactoryTarget.Component });
72
- IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: IconComponent, selector: "ft-icon", inputs: { class: "class", collection: "collection", mode: "mode", name: "name", path: "path", size: "size", src: "src" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<svg *ngIf=\"!src; else imageTemplate\"><use attr.xlink:href=\"{{ url }}\" attr.href=\"{{ url }}\" /></svg>\n<ng-template #imageTemplate>\n <img [src]=\"src\" />\n</ng-template>", styles: [":host{line-height:0;display:inline-block}:host[size=\"1\"],:host.ft-icon--1{font-size:1rem}:host[size=\"2\"],:host.ft-icon--2{font-size:1.5rem}:host[size=\"3\"],:host.ft-icon--3{font-size:2rem}:host[size=\"4\"],:host.ft-icon--4{font-size:3rem}:host[size=\"5\"],:host.ft-icon--5{font-size:4.5rem}:host[size=\"6\"],:host.ft-icon--6{font-size:8rem}:host[size=\"7\"],:host.ft-icon--7{font-size:16rem}:host[size=\"8\"],:host.ft-icon--8{font-size:32rem}svg{width:1em;height:1em;vertical-align:middle;fill:currentColor}img{height:1em;vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: IconComponent, decorators: [{
74
- type: Component,
75
- args: [{ selector: 'ft-icon', template: "<svg *ngIf=\"!src; else imageTemplate\"><use attr.xlink:href=\"{{ url }}\" attr.href=\"{{ url }}\" /></svg>\n<ng-template #imageTemplate>\n <img [src]=\"src\" />\n</ng-template>", styles: [":host{line-height:0;display:inline-block}:host[size=\"1\"],:host.ft-icon--1{font-size:1rem}:host[size=\"2\"],:host.ft-icon--2{font-size:1.5rem}:host[size=\"3\"],:host.ft-icon--3{font-size:2rem}:host[size=\"4\"],:host.ft-icon--4{font-size:3rem}:host[size=\"5\"],:host.ft-icon--5{font-size:4.5rem}:host[size=\"6\"],:host.ft-icon--6{font-size:8rem}:host[size=\"7\"],:host.ft-icon--7{font-size:16rem}:host[size=\"8\"],:host.ft-icon--8{font-size:32rem}svg{width:1em;height:1em;vertical-align:middle;fill:currentColor}img{height:1em;vertical-align:middle}\n"] }]
76
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
77
- type: Inject,
78
- args: ['FactorUiConfiguration']
79
- }] }]; }, propDecorators: { class: [{
80
- type: Input
81
- }], collection: [{
82
- type: Input
83
- }], mode: [{
84
- type: Input
85
- }], name: [{
86
- type: Input
87
- }], path: [{
88
- type: Input
89
- }], size: [{
90
- type: Input
91
- }], src: [{
92
- type: Input
93
- }], hostClasses: [{
94
- type: HostBinding,
95
- args: ['class']
96
- }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2ljb24vaWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2ljb24vaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFROUUsTUFBTSxPQUFPLGFBQWE7SUF3Q3hCLFlBQzJDLGFBQThCO1FBQTlCLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtRQW5DekUsVUFBSyxHQUFXLEVBQUUsQ0FBQztJQW9DZixDQUFDO0lBbkNMLElBQ0ksVUFBVSxDQUFDLFVBQWtCO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsSUFBMkI7UUFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxJQUNJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsSUFBWTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQU1ELElBQ0ksV0FBVztRQUNiLE9BQU87WUFDTCxTQUFTO1lBQ1QsSUFBSSxDQUFDLEtBQUs7U0FDWCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFNRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDTyxNQUFNO1FBQ1oscURBQXFEO1FBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNqRSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUN2RDtpQkFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssVUFBVSxFQUFFO2dCQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQzthQUM1QjtTQUNGO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDM0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDM0M7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUM7YUFDekI7U0FDRjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7WUFDN0IsK0JBQStCO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNmLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUMzRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDM0M7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7aUJBQ3ZCO2FBQ0Y7WUFDRCxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUksSUFBSSxDQUFDLEtBQU0sSUFBSyxJQUFJLENBQUMsV0FBWSxRQUFRLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN0RTthQUFNO1lBQ0wsNkJBQTZCO1lBQzdCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDbEgsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQzs7MEdBOUVVLGFBQWEsa0JBeUNkLHVCQUF1Qjs4RkF6Q3RCLGFBQWEsZ09DUjFCLG9MQUdjOzJGREtELGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsU0FBUzs7MEJBNkNoQixNQUFNOzJCQUFDLHVCQUF1Qjs0Q0FuQ2pDLEtBQUs7c0JBREosS0FBSztnQkFHRixVQUFVO3NCQURiLEtBQUs7Z0JBTUYsSUFBSTtzQkFEUCxLQUFLO2dCQU1GLElBQUk7c0JBRFAsS0FBSztnQkFNRixJQUFJO3NCQURQLEtBQUs7Z0JBTU4sSUFBSTtzQkFESCxLQUFLO2dCQUdOLEdBQUc7c0JBREYsS0FBSztnQkFJRixXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgSW5qZWN0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVWlDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL3VpLWNvbmZpZ3VyYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdC1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIF9jb2xsZWN0aW9uITogc3RyaW5nO1xuICBfbmFtZSE6IHN0cmluZztcbiAgX21vZGUhOiAnaW5saW5lJyB8ICdleHRlcm5hbCc7XG4gIF9wYXRoITogc3RyaW5nO1xuICBASW5wdXQoKVxuICBjbGFzczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpXG4gIHNldCBjb2xsZWN0aW9uKGNvbGxlY3Rpb246IHN0cmluZykge1xuICAgIHRoaXMuX2NvbGxlY3Rpb24gPSBjb2xsZWN0aW9uO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cbiAgQElucHV0KClcbiAgc2V0IG1vZGUobW9kZTogJ2lubGluZScgfCAnZXh0ZXJuYWwnKSB7XG4gICAgdGhpcy5fbW9kZSA9IG1vZGU7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgbmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9uYW1lID0gbmFtZTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9IFxuICBASW5wdXQoKVxuICBzZXQgcGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9wYXRoID0gcGF0aDtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNpemUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHNyYyE6IHN0cmluZztcbiAgdXJsITogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdmdC1pY29uJyxcbiAgICAgIHRoaXMuY2xhc3NcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoJ0ZhY3RvclVpQ29uZmlndXJhdGlvbicpIHByaXZhdGUgY29uZmlndXJhdGlvbjogVWlDb25maWd1cmF0aW9uXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICAvLyBTZXQgdGhlIGRlZmF1bHQgY29sbGVjdGlvbiBpZiB0aGUgbW9kZSBpcyBleHRlcm5hbFxuICAgIGlmICghdGhpcy5fY29sbGVjdGlvbikge1xuICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5pY29uICYmIHRoaXMuY29uZmlndXJhdGlvbi5pY29uLmNvbGxlY3Rpb24pIHtcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbiA9IHRoaXMuY29uZmlndXJhdGlvbi5pY29uLmNvbGxlY3Rpb247XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuX21vZGUgPT09ICdleHRlcm5hbCcpIHtcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbiA9ICdpY29ucyc7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICghdGhpcy5fbW9kZSkge1xuICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5pY29uICYmIHRoaXMuY29uZmlndXJhdGlvbi5pY29uLm1vZGUpIHtcbiAgICAgICAgdGhpcy5fbW9kZSA9IHRoaXMuY29uZmlndXJhdGlvbi5pY29uLm1vZGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9tb2RlID0gJ2V4dGVybmFsJztcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuX21vZGUgPT09ICdleHRlcm5hbCcpIHtcbiAgICAgIC8vIElmIHRoZSBpY29uIG1vZGUgaXMgZXh0ZXJuYWxcbiAgICAgIGlmICghdGhpcy5fcGF0aCkge1xuICAgICAgICBpZiAodGhpcy5jb25maWd1cmF0aW9uLmljb24gJiYgdGhpcy5jb25maWd1cmF0aW9uLmljb24ucGF0aCkge1xuICAgICAgICAgIHRoaXMuX3BhdGggPSB0aGlzLmNvbmZpZ3VyYXRpb24uaWNvbi5wYXRoO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuX3BhdGggPSAnYXNzZXRzJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy51cmwgPSBgJHsgdGhpcy5fcGF0aCB9LyR7IHRoaXMuX2NvbGxlY3Rpb24gfS5zdmcjJHt0aGlzLl9uYW1lfWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIElmIHRoZSBpY29uIG1vZGUgaXMgaW5saW5lXG4gICAgICBjb25zdCBuYW1lID0gdGhpcy5fY29sbGVjdGlvbiAmJiB0aGlzLl9jb2xsZWN0aW9uICE9PSAndW5zZXQnID8gYCR7dGhpcy5fY29sbGVjdGlvbn0tLSR7dGhpcy5fbmFtZX1gIDogdGhpcy5fbmFtZTtcbiAgICAgIHRoaXMudXJsID0gYCMke25hbWV9YDtcbiAgICB9XG4gIH1cbn1cbiIsIjxzdmcgKm5nSWY9XCIhc3JjOyBlbHNlIGltYWdlVGVtcGxhdGVcIj48dXNlIGF0dHIueGxpbms6aHJlZj1cInt7IHVybCB9fVwiIGF0dHIuaHJlZj1cInt7IHVybCB9fVwiIC8+PC9zdmc+XG48bmctdGVtcGxhdGUgI2ltYWdlVGVtcGxhdGU+XG4gIDxpbWcgW3NyY109XCJzcmNcIiAvPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -1,58 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { ReplaySubject } from "rxjs";
3
- import { MessageComponent } from './message/message.component';
4
- import { ContentComponent } from './content/content.component';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/material/snack-bar";
7
- import * as i2 from "@angular/material/dialog";
8
- export class MessageService {
9
- constructor(snackBar, dialog) {
10
- this.snackBar = snackBar;
11
- this.dialog = dialog;
12
- }
13
- show(message, options) {
14
- let selectionSource = new ReplaySubject(undefined);
15
- let selection = selectionSource.asObservable();
16
- const defaults = {
17
- type: 'notification',
18
- duration: 2000,
19
- actionsVisible: true
20
- };
21
- options = Object.assign(defaults, options);
22
- const data = { message: typeof message === 'string' ? { content: message, type: 'text' } : message, options };
23
- switch (options.type) {
24
- default:
25
- case 'notification':
26
- this.snackBar.openFromComponent(ContentComponent, {
27
- data,
28
- panelClass: ['ft-message', 'ft-message--notification'],
29
- duration: options.duration || 2000,
30
- });
31
- break;
32
- case 'modal':
33
- const dialogRef = this.dialog.open(MessageComponent, {
34
- width: options.width || '350px',
35
- data,
36
- panelClass: ['ft-message', 'ft-message--modal'],
37
- autoFocus: false,
38
- disableClose: true
39
- });
40
- dialogRef.componentInstance.beforeSelect.subscribe(response => {
41
- selectionSource.next(response);
42
- dialogRef.close();
43
- });
44
- this.snackBar.dismiss();
45
- break;
46
- }
47
- return selection;
48
- }
49
- }
50
- MessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MessageService, deps: [{ token: i1.MatSnackBar }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
51
- MessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MessageService, providedIn: 'root' });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: MessageService, decorators: [{
53
- type: Injectable,
54
- args: [{
55
- providedIn: 'root'
56
- }]
57
- }], ctorParameters: function () { return [{ type: i1.MatSnackBar }, { type: i2.MatDialog }]; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9tZXNzYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUlyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sY0FBYztJQUd6QixZQUNVLFFBQXFCLEVBQ3JCLE1BQWlCO1FBRGpCLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBVztJQUN2QixDQUFDO0lBRUwsSUFBSSxDQUFDLE9BQXlCLEVBQUUsT0FBd0I7UUFDdEQsSUFBSSxlQUFlLEdBQTBCLElBQUksYUFBYSxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBQ2xGLElBQUksU0FBUyxHQUF1QixlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbkUsTUFBTSxRQUFRLEdBQW1CO1lBQy9CLElBQUksRUFBRSxjQUFjO1lBQ3BCLFFBQVEsRUFBRSxJQUFJO1lBQ2QsY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQztRQUNGLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMzQyxNQUFNLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM5RyxRQUFRLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDcEIsUUFBUTtZQUNSLEtBQUssY0FBYztnQkFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRTtvQkFDaEQsSUFBSTtvQkFDSixVQUFVLEVBQUUsQ0FBQyxZQUFZLEVBQUUsMEJBQTBCLENBQUM7b0JBQ3RELFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUk7aUJBQ25DLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxPQUFPO2dCQUNWLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO29CQUNuRCxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPO29CQUMvQixJQUFJO29CQUNKLFVBQVUsRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQztvQkFDL0MsU0FBUyxFQUFFLEtBQUs7b0JBQ2hCLFlBQVksRUFBRSxJQUFJO2lCQUNuQixDQUFDLENBQUM7Z0JBQ0gsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQzVELGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQy9CLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDcEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDeEIsTUFBTTtTQUNUO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7MkdBM0NVLGNBQWM7K0dBQWQsY0FBYyxjQUZiLE1BQU07MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXBsYXlTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9tZXNzYWdlL21lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRlbnQgfSBmcm9tICcuL21vZGVscy9jb250ZW50JztcbmltcG9ydCB7IENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVzc2FnZU9wdGlvbnMgfSBmcm9tICcuL21vZGVscy9tZXNzYWdlLW9wdGlvbnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdlU2VydmljZSB7XG4gIGVsZW1lbnQ6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhcixcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nXG4gICkgeyB9XG5cbiAgc2hvdyhtZXNzYWdlOiBzdHJpbmcgfCBDb250ZW50LCBvcHRpb25zPzogTWVzc2FnZU9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZWxlY3Rpb25Tb3VyY2U6IFJlcGxheVN1YmplY3Q8c3RyaW5nPiA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4odW5kZWZpbmVkKTtcbiAgICBsZXQgc2VsZWN0aW9uOiBPYnNlcnZhYmxlPHN0cmluZz4gPSBzZWxlY3Rpb25Tb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gICAgY29uc3QgZGVmYXVsdHM6IE1lc3NhZ2VPcHRpb25zID0ge1xuICAgICAgdHlwZTogJ25vdGlmaWNhdGlvbicsXG4gICAgICBkdXJhdGlvbjogMjAwMCxcbiAgICAgIGFjdGlvbnNWaXNpYmxlOiB0cnVlXG4gICAgfTtcbiAgICBvcHRpb25zID0gT2JqZWN0LmFzc2lnbihkZWZhdWx0cywgb3B0aW9ucyk7XG4gICAgY29uc3QgZGF0YSA9IHsgbWVzc2FnZTogdHlwZW9mIG1lc3NhZ2UgPT09ICdzdHJpbmcnID8geyBjb250ZW50OiBtZXNzYWdlLCB0eXBlOiAndGV4dCcgfSA6IG1lc3NhZ2UsIG9wdGlvbnMgfTtcbiAgICBzd2l0Y2ggKG9wdGlvbnMudHlwZSkge1xuICAgICAgZGVmYXVsdDpcbiAgICAgIGNhc2UgJ25vdGlmaWNhdGlvbic6XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoQ29udGVudENvbXBvbmVudCwge1xuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgcGFuZWxDbGFzczogWydmdC1tZXNzYWdlJywgJ2Z0LW1lc3NhZ2UtLW5vdGlmaWNhdGlvbiddLFxuICAgICAgICAgIGR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uIHx8IDIwMDAsXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21vZGFsJzpcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihNZXNzYWdlQ29tcG9uZW50LCB7XG4gICAgICAgICAgd2lkdGg6IG9wdGlvbnMud2lkdGggfHwgJzM1MHB4JyxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6IFsnZnQtbWVzc2FnZScsICdmdC1tZXNzYWdlLS1tb2RhbCddLFxuICAgICAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuYmVmb3JlU2VsZWN0LnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgc2VsZWN0aW9uU291cmNlLm5leHQocmVzcG9uc2UpO1xuICAgICAgICAgIGRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zbmFja0Jhci5kaXNtaXNzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICByZXR1cm4gc2VsZWN0aW9uO1xuICB9XG59Il19
@@ -1,36 +0,0 @@
1
- import { Directive, EventEmitter, Output, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ObserveIntersectingDirective {
4
- constructor(element) {
5
- this.element = element;
6
- this.event = new EventEmitter();
7
- }
8
- ngOnInit() {
9
- if ("IntersectionObserver" in window) {
10
- const elementObserver = new IntersectionObserver((entries, observer) => {
11
- entries.forEach((entry) => {
12
- this.event.emit(entry.isIntersecting);
13
- });
14
- }, this.options);
15
- elementObserver.observe(this.element.nativeElement);
16
- }
17
- else {
18
- console.error('ftObserveIntersecting not available in this browser.');
19
- }
20
- }
21
- }
22
- ObserveIntersectingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ObserveIntersectingDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
23
- ObserveIntersectingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: ObserveIntersectingDirective, selector: "[ftObserveIntersecting]", inputs: { options: ["ftObserveIntersectingOptions", "options"] }, outputs: { event: "ftObserveIntersecting" }, ngImport: i0 });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ObserveIntersectingDirective, decorators: [{
25
- type: Directive,
26
- args: [{
27
- selector: '[ftObserveIntersecting]'
28
- }]
29
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { options: [{
30
- type: Input,
31
- args: ['ftObserveIntersectingOptions']
32
- }], event: [{
33
- type: Output,
34
- args: ['ftObserveIntersecting']
35
- }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1pbnRlcnNlY3RpbmcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9vYnNlcnZlLWludGVyc2VjdGluZy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBYyxNQUFNLGVBQWUsQ0FBQzs7QUFLM0YsTUFBTSxPQUFPLDRCQUE0QjtJQU12QyxZQUNVLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFIN0IsVUFBSyxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBSTlDLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxzQkFBc0IsSUFBSSxNQUFNLEVBQUU7WUFDcEMsTUFBTSxlQUFlLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDckUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3hDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqQixlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDckQ7YUFBTTtZQUNMLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztTQUN2RTtJQUNILENBQUM7O3lIQXJCVSw0QkFBNEI7NkdBQTVCLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUh4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3BDO2lHQUdDLE9BQU87c0JBRE4sS0FBSzt1QkFBQyw4QkFBOEI7Z0JBR3JDLEtBQUs7c0JBREosTUFBTTt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQsIElucHV0LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tmdE9ic2VydmVJbnRlcnNlY3RpbmddJ1xufSlcbmV4cG9ydCBjbGFzcyBPYnNlcnZlSW50ZXJzZWN0aW5nRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCdmdE9ic2VydmVJbnRlcnNlY3RpbmdPcHRpb25zJylcbiAgb3B0aW9ucyE6IHsgcm9vdDogYW55LCByb290TWFyZ2luOiBhbnksIHRocmVzaG9sZDogYW55IH07XG4gIEBPdXRwdXQoJ2Z0T2JzZXJ2ZUludGVyc2VjdGluZycpXG4gIGV2ZW50OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKFwiSW50ZXJzZWN0aW9uT2JzZXJ2ZXJcIiBpbiB3aW5kb3cpIHtcbiAgICAgIGNvbnN0IGVsZW1lbnRPYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoZW50cmllcywgb2JzZXJ2ZXIpID0+IHtcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeSkgPT4ge1xuICAgICAgICAgIHRoaXMuZXZlbnQuZW1pdChlbnRyeS5pc0ludGVyc2VjdGluZyk7XG4gICAgICAgIH0pO1xuICAgICAgfSwgdGhpcy5vcHRpb25zKTtcbiAgICAgIGVsZW1lbnRPYnNlcnZlci5vYnNlcnZlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignZnRPYnNlcnZlSW50ZXJzZWN0aW5nIG5vdCBhdmFpbGFibGUgaW4gdGhpcyBicm93c2VyLicpO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=