@mintplayer/ng-click-outside 18.1.0 → 19.0.0

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.
@@ -148,10 +148,10 @@ class ClickOutsideDirective {
148
148
  window.removeEventListener('blur', this._onWindowBlur);
149
149
  });
150
150
  }
151
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive }); }
152
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: ClickOutsideDirective, isStandalone: true, selector: "[clickOutside]", inputs: { clickOutsideEnabled: "clickOutsideEnabled", attachOutsideOnClick: "attachOutsideOnClick", delayClickOutsideInit: "delayClickOutsideInit", emitOnBlur: "emitOnBlur", exclude: "exclude", excludeBeforeClick: "excludeBeforeClick", clickOutsideEvents: "clickOutsideEvents" }, outputs: { clickOutside: "clickOutside" }, usesOnChanges: true, ngImport: i0 }); }
151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive }); }
152
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.3", type: ClickOutsideDirective, isStandalone: true, selector: "[clickOutside]", inputs: { clickOutsideEnabled: "clickOutsideEnabled", attachOutsideOnClick: "attachOutsideOnClick", delayClickOutsideInit: "delayClickOutsideInit", emitOnBlur: "emitOnBlur", exclude: "exclude", excludeBeforeClick: "excludeBeforeClick", clickOutsideEvents: "clickOutsideEvents" }, outputs: { clickOutside: "clickOutside" }, usesOnChanges: true, ngImport: i0 }); }
153
153
  }
154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ClickOutsideDirective, decorators: [{
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: ClickOutsideDirective, decorators: [{
155
155
  type: Directive,
156
156
  args: [{
157
157
  selector: '[clickOutside]',
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-click-outside.mjs","sources":["../../../../libs/mintplayer-ng-click-outside/src/lib/directives/click-outside/click-outside.directive.ts","../../../../libs/mintplayer-ng-click-outside/src/mintplayer-ng-click-outside.ts"],"sourcesContent":["import { isPlatformBrowser } from '@angular/common';\nimport { Directive, ElementRef, EventEmitter, Inject, Input, NgZone, OnChanges, OnDestroy, OnInit, Output, PLATFORM_ID, SimpleChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]',\n standalone: true\n})\nexport class ClickOutsideDirective implements OnInit, OnChanges, OnDestroy {\n\n @Input() clickOutsideEnabled = true;\n\n @Input() attachOutsideOnClick = false;\n @Input() delayClickOutsideInit = false;\n @Input() emitOnBlur = false;\n\n @Input() exclude: HTMLElement[] = [];\n @Input() excludeBeforeClick = false;\n\n @Input() clickOutsideEvents = '';\n\n @Output() clickOutside: EventEmitter<Event> = new EventEmitter<Event>();\n\n private _nodesExcluded: Array<HTMLElement> = [];\n private _events: Array<string> = ['click'];\n\n constructor(\n private element: ElementRef,\n private zone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object\n ) {\n this._initOnClickBody = this._initOnClickBody.bind(this);\n this._onClickBody = this._onClickBody.bind(this);\n this._onWindowBlur = this._onWindowBlur.bind(this);\n }\n\n ngOnInit() {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n this._init();\n }\n\n ngOnDestroy() {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n this._removeClickOutsideListener();\n this._removeAttachOutsideOnClickListener();\n this._removeWindowBlurListener();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {\n this._init();\n }\n }\n\n private _init() {\n if (this.clickOutsideEvents !== '') {\n this._events = this.clickOutsideEvents.split(',').map(e => e.trim());\n }\n\n this._excludeCheck();\n\n if (this.attachOutsideOnClick) {\n this._initAttachOutsideOnClickListener();\n } else {\n this._initOnClickBody();\n }\n\n if (this.emitOnBlur) {\n this._initWindowBlurListener();\n }\n }\n\n private _initOnClickBody() {\n if (this.delayClickOutsideInit) {\n setTimeout(this._initClickOutsideListener.bind(this));\n } else {\n this._initClickOutsideListener();\n }\n }\n\n private _excludeCheck() {\n if (this.exclude) {\n try {\n const nodes = this.exclude;\n if (nodes) {\n this._nodesExcluded = nodes;\n }\n } catch (err) {\n console.error('[ng-click-outside] Check your exclude selector syntax.', err);\n }\n }\n }\n\n private _onClickBody(ev: Event) {\n if (!this.clickOutsideEnabled) { return; }\n\n if (this.excludeBeforeClick) {\n this._excludeCheck();\n }\n\n if (!this.element.nativeElement.contains(ev.target) && !!ev.target && !this._shouldExclude(ev.target)) {\n this._emit(ev);\n\n if (this.attachOutsideOnClick) {\n this._removeClickOutsideListener();\n }\n }\n }\n\n /**\n * Resolves problem with outside click on iframe\n * @see https://github.com/arkon/ng-click-outside/issues/32\n */\n private _onWindowBlur(ev: Event) {\n setTimeout(() => {\n if (!document.hidden) {\n this._emit(ev);\n }\n });\n }\n\n private _emit(ev: Event) {\n if (!this.clickOutsideEnabled) { return; }\n\n this.zone.run(() => this.clickOutside.emit(ev));\n }\n\n private _shouldExclude(target: EventTarget): boolean {\n for (const excludedNode of this._nodesExcluded) {\n if (excludedNode.contains(<Node>target)) {\n return true;\n }\n }\n\n return false;\n }\n\n private _initClickOutsideListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => document.addEventListener(e, this._onClickBody));\n });\n }\n\n private _removeClickOutsideListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => document.removeEventListener(e, this._onClickBody));\n });\n }\n\n private _initAttachOutsideOnClickListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => this.element.nativeElement.addEventListener(e, this._initOnClickBody));\n });\n }\n\n private _removeAttachOutsideOnClickListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => this.element.nativeElement.removeEventListener(e, this._initOnClickBody));\n });\n }\n\n private _initWindowBlurListener() {\n this.zone.runOutsideAngular(() => {\n window.addEventListener('blur', this._onWindowBlur);\n });\n }\n\n private _removeWindowBlurListener() {\n this.zone.runOutsideAngular(() => {\n window.removeEventListener('blur', this._onWindowBlur);\n });\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-click-outside.mjs","sources":["../../../../libs/mintplayer-ng-click-outside/src/lib/directives/click-outside/click-outside.directive.ts","../../../../libs/mintplayer-ng-click-outside/src/mintplayer-ng-click-outside.ts"],"sourcesContent":["import { isPlatformBrowser } from '@angular/common';\nimport { Directive, ElementRef, EventEmitter, Inject, Input, NgZone, OnChanges, OnDestroy, OnInit, Output, PLATFORM_ID, SimpleChanges } from '@angular/core';\n\n@Directive({\n selector: '[clickOutside]',\n standalone: true\n})\nexport class ClickOutsideDirective implements OnInit, OnChanges, OnDestroy {\n\n @Input() clickOutsideEnabled = true;\n\n @Input() attachOutsideOnClick = false;\n @Input() delayClickOutsideInit = false;\n @Input() emitOnBlur = false;\n\n @Input() exclude: HTMLElement[] = [];\n @Input() excludeBeforeClick = false;\n\n @Input() clickOutsideEvents = '';\n\n @Output() clickOutside: EventEmitter<Event> = new EventEmitter<Event>();\n\n private _nodesExcluded: Array<HTMLElement> = [];\n private _events: Array<string> = ['click'];\n\n constructor(\n private element: ElementRef,\n private zone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object\n ) {\n this._initOnClickBody = this._initOnClickBody.bind(this);\n this._onClickBody = this._onClickBody.bind(this);\n this._onWindowBlur = this._onWindowBlur.bind(this);\n }\n\n ngOnInit() {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n this._init();\n }\n\n ngOnDestroy() {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n this._removeClickOutsideListener();\n this._removeAttachOutsideOnClickListener();\n this._removeWindowBlurListener();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!isPlatformBrowser(this.platformId)) { return; }\n\n if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {\n this._init();\n }\n }\n\n private _init() {\n if (this.clickOutsideEvents !== '') {\n this._events = this.clickOutsideEvents.split(',').map(e => e.trim());\n }\n\n this._excludeCheck();\n\n if (this.attachOutsideOnClick) {\n this._initAttachOutsideOnClickListener();\n } else {\n this._initOnClickBody();\n }\n\n if (this.emitOnBlur) {\n this._initWindowBlurListener();\n }\n }\n\n private _initOnClickBody() {\n if (this.delayClickOutsideInit) {\n setTimeout(this._initClickOutsideListener.bind(this));\n } else {\n this._initClickOutsideListener();\n }\n }\n\n private _excludeCheck() {\n if (this.exclude) {\n try {\n const nodes = this.exclude;\n if (nodes) {\n this._nodesExcluded = nodes;\n }\n } catch (err) {\n console.error('[ng-click-outside] Check your exclude selector syntax.', err);\n }\n }\n }\n\n private _onClickBody(ev: Event) {\n if (!this.clickOutsideEnabled) { return; }\n\n if (this.excludeBeforeClick) {\n this._excludeCheck();\n }\n\n if (!this.element.nativeElement.contains(ev.target) && !!ev.target && !this._shouldExclude(ev.target)) {\n this._emit(ev);\n\n if (this.attachOutsideOnClick) {\n this._removeClickOutsideListener();\n }\n }\n }\n\n /**\n * Resolves problem with outside click on iframe\n * @see https://github.com/arkon/ng-click-outside/issues/32\n */\n private _onWindowBlur(ev: Event) {\n setTimeout(() => {\n if (!document.hidden) {\n this._emit(ev);\n }\n });\n }\n\n private _emit(ev: Event) {\n if (!this.clickOutsideEnabled) { return; }\n\n this.zone.run(() => this.clickOutside.emit(ev));\n }\n\n private _shouldExclude(target: EventTarget): boolean {\n for (const excludedNode of this._nodesExcluded) {\n if (excludedNode.contains(<Node>target)) {\n return true;\n }\n }\n\n return false;\n }\n\n private _initClickOutsideListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => document.addEventListener(e, this._onClickBody));\n });\n }\n\n private _removeClickOutsideListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => document.removeEventListener(e, this._onClickBody));\n });\n }\n\n private _initAttachOutsideOnClickListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => this.element.nativeElement.addEventListener(e, this._initOnClickBody));\n });\n }\n\n private _removeAttachOutsideOnClickListener() {\n this.zone.runOutsideAngular(() => {\n this._events.forEach(e => this.element.nativeElement.removeEventListener(e, this._initOnClickBody));\n });\n }\n\n private _initWindowBlurListener() {\n this.zone.runOutsideAngular(() => {\n window.addEventListener('blur', this._onWindowBlur);\n });\n }\n\n private _removeWindowBlurListener() {\n this.zone.runOutsideAngular(() => {\n window.removeEventListener('blur', this._onWindowBlur);\n });\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,2 +1 @@
1
- /// <reference path="index.ngtypecheck.d.ts" />
2
1
  export * from './lib/directives';
@@ -1,4 +1,3 @@
1
- /// <reference path="click-outside.directive.ngtypecheck.d.ts" />
2
1
  import { ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
3
2
  import * as i0 from "@angular/core";
4
3
  export declare class ClickOutsideDirective implements OnInit, OnChanges, OnDestroy {
@@ -1,2 +1 @@
1
- /// <reference path="index.ngtypecheck.d.ts" />
2
1
  export * from './click-outside/click-outside.directive';
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@mintplayer/ng-click-outside",
3
3
  "private": false,
4
- "version": "18.1.0",
4
+ "version": "19.0.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
8
8
  "directory": "libs/mintplayer-ng-click-outside"
9
9
  },
10
10
  "peerDependencies": {
11
- "@angular/common": "^18.0.0",
12
- "@angular/core": "^18.0.0"
11
+ "@angular/common": "^19.0.0",
12
+ "@angular/core": "^19.0.0"
13
13
  },
14
14
  "dependencies": {
15
15
  "tslib": "^2.3.0"
@@ -22,8 +22,6 @@
22
22
  },
23
23
  ".": {
24
24
  "types": "./index.d.ts",
25
- "esm2022": "./esm2022/mintplayer-ng-click-outside.mjs",
26
- "esm": "./esm2022/mintplayer-ng-click-outside.mjs",
27
25
  "default": "./fesm2022/mintplayer-ng-click-outside.mjs"
28
26
  }
29
27
  },
package/esm2022/index.mjs DELETED
@@ -1,2 +0,0 @@
1
- export * from './lib/directives';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctY2xpY2stb3V0c2lkZS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnOyJdfQ==
@@ -1,179 +0,0 @@
1
- import { isPlatformBrowser } from '@angular/common';
2
- import { Directive, EventEmitter, Inject, Input, Output, PLATFORM_ID } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class ClickOutsideDirective {
5
- constructor(element, zone, platformId) {
6
- this.element = element;
7
- this.zone = zone;
8
- this.platformId = platformId;
9
- this.clickOutsideEnabled = true;
10
- this.attachOutsideOnClick = false;
11
- this.delayClickOutsideInit = false;
12
- this.emitOnBlur = false;
13
- this.exclude = [];
14
- this.excludeBeforeClick = false;
15
- this.clickOutsideEvents = '';
16
- this.clickOutside = new EventEmitter();
17
- this._nodesExcluded = [];
18
- this._events = ['click'];
19
- this._initOnClickBody = this._initOnClickBody.bind(this);
20
- this._onClickBody = this._onClickBody.bind(this);
21
- this._onWindowBlur = this._onWindowBlur.bind(this);
22
- }
23
- ngOnInit() {
24
- if (!isPlatformBrowser(this.platformId)) {
25
- return;
26
- }
27
- this._init();
28
- }
29
- ngOnDestroy() {
30
- if (!isPlatformBrowser(this.platformId)) {
31
- return;
32
- }
33
- this._removeClickOutsideListener();
34
- this._removeAttachOutsideOnClickListener();
35
- this._removeWindowBlurListener();
36
- }
37
- ngOnChanges(changes) {
38
- if (!isPlatformBrowser(this.platformId)) {
39
- return;
40
- }
41
- if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {
42
- this._init();
43
- }
44
- }
45
- _init() {
46
- if (this.clickOutsideEvents !== '') {
47
- this._events = this.clickOutsideEvents.split(',').map(e => e.trim());
48
- }
49
- this._excludeCheck();
50
- if (this.attachOutsideOnClick) {
51
- this._initAttachOutsideOnClickListener();
52
- }
53
- else {
54
- this._initOnClickBody();
55
- }
56
- if (this.emitOnBlur) {
57
- this._initWindowBlurListener();
58
- }
59
- }
60
- _initOnClickBody() {
61
- if (this.delayClickOutsideInit) {
62
- setTimeout(this._initClickOutsideListener.bind(this));
63
- }
64
- else {
65
- this._initClickOutsideListener();
66
- }
67
- }
68
- _excludeCheck() {
69
- if (this.exclude) {
70
- try {
71
- const nodes = this.exclude;
72
- if (nodes) {
73
- this._nodesExcluded = nodes;
74
- }
75
- }
76
- catch (err) {
77
- console.error('[ng-click-outside] Check your exclude selector syntax.', err);
78
- }
79
- }
80
- }
81
- _onClickBody(ev) {
82
- if (!this.clickOutsideEnabled) {
83
- return;
84
- }
85
- if (this.excludeBeforeClick) {
86
- this._excludeCheck();
87
- }
88
- if (!this.element.nativeElement.contains(ev.target) && !!ev.target && !this._shouldExclude(ev.target)) {
89
- this._emit(ev);
90
- if (this.attachOutsideOnClick) {
91
- this._removeClickOutsideListener();
92
- }
93
- }
94
- }
95
- /**
96
- * Resolves problem with outside click on iframe
97
- * @see https://github.com/arkon/ng-click-outside/issues/32
98
- */
99
- _onWindowBlur(ev) {
100
- setTimeout(() => {
101
- if (!document.hidden) {
102
- this._emit(ev);
103
- }
104
- });
105
- }
106
- _emit(ev) {
107
- if (!this.clickOutsideEnabled) {
108
- return;
109
- }
110
- this.zone.run(() => this.clickOutside.emit(ev));
111
- }
112
- _shouldExclude(target) {
113
- for (const excludedNode of this._nodesExcluded) {
114
- if (excludedNode.contains(target)) {
115
- return true;
116
- }
117
- }
118
- return false;
119
- }
120
- _initClickOutsideListener() {
121
- this.zone.runOutsideAngular(() => {
122
- this._events.forEach(e => document.addEventListener(e, this._onClickBody));
123
- });
124
- }
125
- _removeClickOutsideListener() {
126
- this.zone.runOutsideAngular(() => {
127
- this._events.forEach(e => document.removeEventListener(e, this._onClickBody));
128
- });
129
- }
130
- _initAttachOutsideOnClickListener() {
131
- this.zone.runOutsideAngular(() => {
132
- this._events.forEach(e => this.element.nativeElement.addEventListener(e, this._initOnClickBody));
133
- });
134
- }
135
- _removeAttachOutsideOnClickListener() {
136
- this.zone.runOutsideAngular(() => {
137
- this._events.forEach(e => this.element.nativeElement.removeEventListener(e, this._initOnClickBody));
138
- });
139
- }
140
- _initWindowBlurListener() {
141
- this.zone.runOutsideAngular(() => {
142
- window.addEventListener('blur', this._onWindowBlur);
143
- });
144
- }
145
- _removeWindowBlurListener() {
146
- this.zone.runOutsideAngular(() => {
147
- window.removeEventListener('blur', this._onWindowBlur);
148
- });
149
- }
150
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive }); }
151
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: ClickOutsideDirective, isStandalone: true, selector: "[clickOutside]", inputs: { clickOutsideEnabled: "clickOutsideEnabled", attachOutsideOnClick: "attachOutsideOnClick", delayClickOutsideInit: "delayClickOutsideInit", emitOnBlur: "emitOnBlur", exclude: "exclude", excludeBeforeClick: "excludeBeforeClick", clickOutsideEvents: "clickOutsideEvents" }, outputs: { clickOutside: "clickOutside" }, usesOnChanges: true, ngImport: i0 }); }
152
- }
153
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ClickOutsideDirective, decorators: [{
154
- type: Directive,
155
- args: [{
156
- selector: '[clickOutside]',
157
- standalone: true
158
- }]
159
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: Object, decorators: [{
160
- type: Inject,
161
- args: [PLATFORM_ID]
162
- }] }], propDecorators: { clickOutsideEnabled: [{
163
- type: Input
164
- }], attachOutsideOnClick: [{
165
- type: Input
166
- }], delayClickOutsideInit: [{
167
- type: Input
168
- }], emitOnBlur: [{
169
- type: Input
170
- }], exclude: [{
171
- type: Input
172
- }], excludeBeforeClick: [{
173
- type: Input
174
- }], clickOutsideEvents: [{
175
- type: Input
176
- }], clickOutside: [{
177
- type: Output
178
- }] } });
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctY2xpY2stb3V0c2lkZS9zcmMvbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS9jbGljay1vdXRzaWRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUF3QyxNQUFNLEVBQUUsV0FBVyxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNN0osTUFBTSxPQUFPLHFCQUFxQjtJQWtCaEMsWUFDWSxPQUFtQixFQUNuQixJQUFZLEVBQ1MsVUFBa0I7UUFGdkMsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ1MsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQW5CMUMsd0JBQW1CLEdBQUcsSUFBSSxDQUFDO1FBRTNCLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUM3QiwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDOUIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUVuQixZQUFPLEdBQWtCLEVBQUUsQ0FBQztRQUM1Qix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0IsdUJBQWtCLEdBQUcsRUFBRSxDQUFDO1FBRXZCLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFFaEUsbUJBQWMsR0FBdUIsRUFBRSxDQUFDO1FBQ3hDLFlBQU8sR0FBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQU96QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FB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QUMsR0FBRyxFQUFFO1lBQy9CLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUMvQixNQUFNLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBdktVLHFCQUFxQixrRUFxQnBCLFdBQVc7a0dBckJaLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFKakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OzBCQXNCTSxNQUFNOzJCQUFDLFdBQVc7eUNBbkJkLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFFRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUExBVEZPUk1fSUQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NsaWNrT3V0c2lkZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENsaWNrT3V0c2lkZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIGNsaWNrT3V0c2lkZUVuYWJsZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGF0dGFjaE91dHNpZGVPbkNsaWNrID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRlbGF5Q2xpY2tPdXRzaWRlSW5pdCA9IGZhbHNlO1xuICBASW5wdXQoKSBlbWl0T25CbHVyID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZXhjbHVkZTogSFRNTEVsZW1lbnRbXSA9IFtdO1xuICBASW5wdXQoKSBleGNsdWRlQmVmb3JlQ2xpY2sgPSBmYWxzZTtcblxuICBASW5wdXQoKSBjbGlja091dHNpZGVFdmVudHMgPSAnJztcblxuICBAT3V0cHV0KCkgY2xpY2tPdXRzaWRlOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBwcml2YXRlIF9ub2Rlc0V4Y2x1ZGVkOiBBcnJheTxIVE1MRWxlbWVudD4gPSBbXTtcbiAgcHJpdmF0ZSBfZXZlbnRzOiBBcnJheTxzdHJpbmc+ID0gWydjbGljayddO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsXG4gICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdFxuICApIHtcbiAgICB0aGlzLl9pbml0T25DbGlja0JvZHkgPSB0aGlzLl9pbml0T25DbGlja0JvZHkuYmluZCh0aGlzKTtcbiAgICB0aGlzLl9vbkNsaWNrQm9keSA9IHRoaXMuX29uQ2xpY2tCb2R5LmJpbmQodGhpcyk7XG4gICAgdGhpcy5fb25XaW5kb3dCbHVyID0gdGhpcy5fb25XaW5kb3dCbHVyLmJpbmQodGhpcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLl9pbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLl9yZW1vdmVDbGlja091dHNpZGVMaXN0ZW5lcigpO1xuICAgIHRoaXMuX3JlbW92ZUF0dGFjaE91dHNpZGVPbkNsaWNrTGlzdGVuZXIoKTtcbiAgICB0aGlzLl9yZW1vdmVXaW5kb3dCbHVyTGlzdGVuZXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHsgcmV0dXJuOyB9XG5cbiAgICBpZiAoY2hhbmdlc1snYXR0YWNoT3V0c2lkZU9uQ2xpY2snXSB8fCBjaGFuZ2VzWydleGNsdWRlJ10gfHwgY2hhbmdlc1snZW1pdE9uQmx1ciddKSB7XG4gICAgICB0aGlzLl9pbml0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdCgpIHtcbiAgICBpZiAodGhpcy5jbGlja091dHNpZGVFdmVudHMgIT09ICcnKSB7XG4gICAgICB0aGlzLl9ldmVudHMgPSB0aGlzLmNsaWNrT3V0c2lkZUV2ZW50cy5zcGxpdCgnLCcpLm1hcChlID0+IGUudHJpbSgpKTtcbiAgICB9XG5cbiAgICB0aGlzLl9leGNsdWRlQ2hlY2soKTtcblxuICAgIGlmICh0aGlzLmF0dGFjaE91dHNpZGVPbkNsaWNrKSB7XG4gICAgICB0aGlzLl9pbml0QXR0YWNoT3V0c2lkZU9uQ2xpY2tMaXN0ZW5lcigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9pbml0T25DbGlja0JvZHkoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5lbWl0T25CbHVyKSB7XG4gICAgICB0aGlzLl9pbml0V2luZG93Qmx1ckxpc3RlbmVyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdE9uQ2xpY2tCb2R5KCkge1xuICAgIGlmICh0aGlzLmRlbGF5Q2xpY2tPdXRzaWRlSW5pdCkge1xuICAgICAgc2V0VGltZW91dCh0aGlzLl9pbml0Q2xpY2tPdXRzaWRlTGlzdGVuZXIuYmluZCh0aGlzKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2luaXRDbGlja091dHNpZGVMaXN0ZW5lcigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2V4Y2x1ZGVDaGVjaygpIHtcbiAgICBpZiAodGhpcy5leGNsdWRlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBub2RlcyA9IHRoaXMuZXhjbHVkZTtcbiAgICAgICAgaWYgKG5vZGVzKSB7XG4gICAgICAgICAgdGhpcy5fbm9kZXNFeGNsdWRlZCA9IG5vZGVzO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignW25nLWNsaWNrLW91dHNpZGVdIENoZWNrIHlvdXIgZXhjbHVkZSBzZWxlY3RvciBzeW50YXguJywgZXJyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkNsaWNrQm9keShldjogRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuY2xpY2tPdXRzaWRlRW5hYmxlZCkgeyByZXR1cm47IH1cblxuICAgIGlmICh0aGlzLmV4Y2x1ZGVCZWZvcmVDbGljaykge1xuICAgICAgdGhpcy5fZXhjbHVkZUNoZWNrKCk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5jb250YWlucyhldi50YXJnZXQpICYmICEhZXYudGFyZ2V0ICYmICF0aGlzLl9zaG91bGRFeGNsdWRlKGV2LnRhcmdldCkpIHtcbiAgICAgIHRoaXMuX2VtaXQoZXYpO1xuXG4gICAgICBpZiAodGhpcy5hdHRhY2hPdXRzaWRlT25DbGljaykge1xuICAgICAgICB0aGlzLl9yZW1vdmVDbGlja091dHNpZGVMaXN0ZW5lcigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyBwcm9ibGVtIHdpdGggb3V0c2lkZSBjbGljayBvbiBpZnJhbWVcbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vYXJrb24vbmctY2xpY2stb3V0c2lkZS9pc3N1ZXMvMzJcbiAgICovXG4gIHByaXZhdGUgX29uV2luZG93Qmx1cihldjogRXZlbnQpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghZG9jdW1lbnQuaGlkZGVuKSB7XG4gICAgICAgIHRoaXMuX2VtaXQoZXYpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZW1pdChldjogRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuY2xpY2tPdXRzaWRlRW5hYmxlZCkgeyByZXR1cm47IH1cblxuICAgIHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5jbGlja091dHNpZGUuZW1pdChldikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2hvdWxkRXhjbHVkZSh0YXJnZXQ6IEV2ZW50VGFyZ2V0KTogYm9vbGVhbiB7XG4gICAgZm9yIChjb25zdCBleGNsdWRlZE5vZGUgb2YgdGhpcy5fbm9kZXNFeGNsdWRlZCkge1xuICAgICAgaWYgKGV4Y2x1ZGVkTm9kZS5jb250YWlucyg8Tm9kZT50YXJnZXQpKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRDbGlja091dHNpZGVMaXN0ZW5lcigpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKGUsIHRoaXMuX29uQ2xpY2tCb2R5KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZW1vdmVDbGlja091dHNpZGVMaXN0ZW5lcigpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGUsIHRoaXMuX29uQ2xpY2tCb2R5KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0QXR0YWNoT3V0c2lkZU9uQ2xpY2tMaXN0ZW5lcigpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKGUsIHRoaXMuX2luaXRPbkNsaWNrQm9keSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVtb3ZlQXR0YWNoT3V0c2lkZU9uQ2xpY2tMaXN0ZW5lcigpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGUsIHRoaXMuX2luaXRPbkNsaWNrQm9keSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdFdpbmRvd0JsdXJMaXN0ZW5lcigpIHtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2JsdXInLCB0aGlzLl9vbldpbmRvd0JsdXIpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVtb3ZlV2luZG93Qmx1ckxpc3RlbmVyKCkge1xuICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuX29uV2luZG93Qmx1cik7XG4gICAgfSk7XG4gIH1cblxufSJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './click-outside/click-outside.directive';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctY2xpY2stb3V0c2lkZS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xpY2stb3V0c2lkZS9jbGljay1vdXRzaWRlLmRpcmVjdGl2ZSc7Il19
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1jbGljay1vdXRzaWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWNsaWNrLW91dHNpZGUvc3JjL21pbnRwbGF5ZXItbmctY2xpY2stb3V0c2lkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==