@skyux/flyout 5.0.0-beta.4 → 5.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/skyux-flyout.umd.js +149 -119
- package/documentation.json +179 -176
- package/esm2015/modules/flyout/flyout-adapter.service.js +5 -5
- package/esm2015/modules/flyout/flyout-instance.js +6 -6
- package/esm2015/modules/flyout/flyout-iterator.component.js +6 -6
- package/esm2015/modules/flyout/flyout-media-query.service.js +9 -9
- package/esm2015/modules/flyout/flyout.component.js +78 -54
- package/esm2015/modules/flyout/flyout.module.js +11 -19
- package/esm2015/modules/flyout/flyout.service.js +11 -8
- package/esm2015/modules/flyout/types/flyout-action.js +1 -1
- package/esm2015/modules/flyout/types/flyout-config.js +1 -1
- package/esm2015/modules/flyout/types/flyout-message-type.js +1 -1
- package/esm2015/modules/flyout/types/flyout-message.js +1 -1
- package/esm2015/modules/flyout/types/flyout-permalink.js +1 -1
- package/esm2015/modules/shared/sky-flyout-resources.module.js +54 -0
- package/fesm2015/skyux-flyout.js +136 -104
- package/fesm2015/skyux-flyout.js.map +1 -1
- package/modules/flyout/flyout.component.d.ts +3 -0
- package/modules/flyout/flyout.module.d.ts +1 -1
- package/modules/shared/{flyout-resources.module.d.ts → sky-flyout-resources.module.d.ts} +0 -0
- package/package.json +12 -12
- package/bundles/skyux-flyout.umd.js.map +0 -1
- package/esm2015/modules/shared/flyout-resources.module.js +0 -41
package/fesm2015/skyux-flyout.js
CHANGED
|
@@ -3,7 +3,6 @@ import { EventEmitter, NgModule, Injectable, Component, Input, Output, Reflectiv
|
|
|
3
3
|
import { Subject, BehaviorSubject, fromEvent } from 'rxjs';
|
|
4
4
|
import * as i7 from '@angular/common';
|
|
5
5
|
import { CommonModule } from '@angular/common';
|
|
6
|
-
import * as i9 from '@angular/forms';
|
|
7
6
|
import { FormsModule } from '@angular/forms';
|
|
8
7
|
import * as i2$2 from '@angular/router';
|
|
9
8
|
import { RouterModule, NavigationStart } from '@angular/router';
|
|
@@ -11,7 +10,7 @@ import * as i1$1 from '@skyux/indicators';
|
|
|
11
10
|
import { SkyIconModule } from '@skyux/indicators';
|
|
12
11
|
import * as i2$1 from '@skyux/i18n';
|
|
13
12
|
import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
|
14
|
-
import * as
|
|
13
|
+
import * as i9 from '@skyux/router';
|
|
15
14
|
import { SkyHrefModule } from '@skyux/router';
|
|
16
15
|
import * as i2 from '@skyux/theme';
|
|
17
16
|
import { SkyThemeModule } from '@skyux/theme';
|
|
@@ -83,12 +82,12 @@ class SkyFlyoutInstance {
|
|
|
83
82
|
this._iteratorNextButtonDisabled = newValue;
|
|
84
83
|
if (newValue) {
|
|
85
84
|
this.hostController.next({
|
|
86
|
-
type: SkyFlyoutMessageType.DisableIteratorNextButton
|
|
85
|
+
type: SkyFlyoutMessageType.DisableIteratorNextButton,
|
|
87
86
|
});
|
|
88
87
|
}
|
|
89
88
|
else {
|
|
90
89
|
this.hostController.next({
|
|
91
|
-
type: SkyFlyoutMessageType.EnableIteratorNextButton
|
|
90
|
+
type: SkyFlyoutMessageType.EnableIteratorNextButton,
|
|
92
91
|
});
|
|
93
92
|
}
|
|
94
93
|
}
|
|
@@ -103,12 +102,12 @@ class SkyFlyoutInstance {
|
|
|
103
102
|
this._iteratorPreviousButtonDisabled = newValue;
|
|
104
103
|
if (newValue) {
|
|
105
104
|
this.hostController.next({
|
|
106
|
-
type: SkyFlyoutMessageType.DisableIteratorPreviousButton
|
|
105
|
+
type: SkyFlyoutMessageType.DisableIteratorPreviousButton,
|
|
107
106
|
});
|
|
108
107
|
}
|
|
109
108
|
else {
|
|
110
109
|
this.hostController.next({
|
|
111
|
-
type: SkyFlyoutMessageType.EnableIteratorPreviousButton
|
|
110
|
+
type: SkyFlyoutMessageType.EnableIteratorPreviousButton,
|
|
112
111
|
});
|
|
113
112
|
}
|
|
114
113
|
}
|
|
@@ -120,7 +119,7 @@ class SkyFlyoutInstance {
|
|
|
120
119
|
*/
|
|
121
120
|
close() {
|
|
122
121
|
this.hostController.next({
|
|
123
|
-
type: SkyFlyoutMessageType.Close
|
|
122
|
+
type: SkyFlyoutMessageType.Close,
|
|
124
123
|
});
|
|
125
124
|
this._iteratorPreviousButtonClick.complete();
|
|
126
125
|
this._iteratorNextButtonClick.complete();
|
|
@@ -131,11 +130,20 @@ class SkyFlyoutInstance {
|
|
|
131
130
|
/**
|
|
132
131
|
* NOTICE: DO NOT MODIFY THIS FILE!
|
|
133
132
|
* The contents of this file were automatically generated by
|
|
134
|
-
* the 'ng generate @skyux/i18n:lib-resources-module modules/shared/
|
|
133
|
+
* the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-flyout' schematic.
|
|
135
134
|
* To update this file, simply rerun the command.
|
|
136
135
|
*/
|
|
137
136
|
const RESOURCES = {
|
|
138
|
-
'EN-US': {
|
|
137
|
+
'EN-US': {
|
|
138
|
+
skyux_flyout_close: { message: 'Close flyout' },
|
|
139
|
+
skyux_flyout_iterator_previous_button: { message: 'Previous' },
|
|
140
|
+
skyux_flyout_iterator_next_button: { message: 'Next' },
|
|
141
|
+
skyux_flyout_permalink_button: { message: 'View record' },
|
|
142
|
+
skyux_flyout_primary_action_button: { message: 'Create list' },
|
|
143
|
+
skyux_flyout_resize_handle: {
|
|
144
|
+
message: 'Resize the flyout window. Press the enter or space key to activate, then use left arrow key to expand the flyout window and right arrow key to shrink the flyout window. Press the enter, space, or tab key to deactivate.',
|
|
145
|
+
},
|
|
146
|
+
},
|
|
139
147
|
};
|
|
140
148
|
class SkyFlyoutResourcesProvider {
|
|
141
149
|
getString(localeInfo, name) {
|
|
@@ -147,22 +155,26 @@ class SkyFlyoutResourcesProvider {
|
|
|
147
155
|
*/
|
|
148
156
|
class SkyFlyoutResourcesModule {
|
|
149
157
|
}
|
|
150
|
-
SkyFlyoutResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
151
|
-
SkyFlyoutResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
152
|
-
SkyFlyoutResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
158
|
+
SkyFlyoutResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
159
|
+
SkyFlyoutResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutResourcesModule, exports: [SkyI18nModule] });
|
|
160
|
+
SkyFlyoutResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutResourcesModule, providers: [
|
|
161
|
+
{
|
|
153
162
|
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
154
163
|
useClass: SkyFlyoutResourcesProvider,
|
|
155
|
-
multi: true
|
|
156
|
-
}
|
|
157
|
-
|
|
164
|
+
multi: true,
|
|
165
|
+
},
|
|
166
|
+
], imports: [SkyI18nModule] });
|
|
167
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutResourcesModule, decorators: [{
|
|
158
168
|
type: NgModule,
|
|
159
169
|
args: [{
|
|
160
170
|
exports: [SkyI18nModule],
|
|
161
|
-
providers: [
|
|
171
|
+
providers: [
|
|
172
|
+
{
|
|
162
173
|
provide: SKY_LIB_RESOURCES_PROVIDERS,
|
|
163
174
|
useClass: SkyFlyoutResourcesProvider,
|
|
164
|
-
multi: true
|
|
165
|
-
}
|
|
175
|
+
multi: true,
|
|
176
|
+
},
|
|
177
|
+
],
|
|
166
178
|
}]
|
|
167
179
|
}] });
|
|
168
180
|
|
|
@@ -220,9 +232,9 @@ class SkyFlyoutAdapterService {
|
|
|
220
232
|
}
|
|
221
233
|
}
|
|
222
234
|
}
|
|
223
|
-
SkyFlyoutAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
224
|
-
SkyFlyoutAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
225
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
235
|
+
SkyFlyoutAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutAdapterService, deps: [{ token: i0.RendererFactory2 }, { token: i1.SkyAppWindowRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
236
|
+
SkyFlyoutAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutAdapterService });
|
|
237
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutAdapterService, decorators: [{
|
|
226
238
|
type: Injectable
|
|
227
239
|
}], ctorParameters: function () { return [{ type: i0.RendererFactory2 }, { type: i1.SkyAppWindowRef }]; } });
|
|
228
240
|
|
|
@@ -242,7 +254,7 @@ class SkyFlyoutMediaQueryService {
|
|
|
242
254
|
return this.currentSubject.subscribe({
|
|
243
255
|
next: (breakpoints) => {
|
|
244
256
|
listener(breakpoints);
|
|
245
|
-
}
|
|
257
|
+
},
|
|
246
258
|
});
|
|
247
259
|
}
|
|
248
260
|
setBreakpointForWidth(width) {
|
|
@@ -271,16 +283,16 @@ class SkyFlyoutMediaQueryService {
|
|
|
271
283
|
const lgBreakpointMinPixels = 1200;
|
|
272
284
|
switch (breakpoint) {
|
|
273
285
|
case SkyMediaBreakpoints.xs: {
|
|
274
|
-
return
|
|
286
|
+
return width <= xsBreakpointMaxPixels;
|
|
275
287
|
}
|
|
276
288
|
case SkyMediaBreakpoints.sm: {
|
|
277
|
-
return
|
|
289
|
+
return width >= smBreakpointMinPixels && width <= smBreakpointMaxPixels;
|
|
278
290
|
}
|
|
279
291
|
case SkyMediaBreakpoints.md: {
|
|
280
|
-
return
|
|
292
|
+
return width >= mdBreakpointMinPixels && width <= mdBreakpointMaxPixels;
|
|
281
293
|
}
|
|
282
294
|
default: {
|
|
283
|
-
return
|
|
295
|
+
return width >= lgBreakpointMinPixels;
|
|
284
296
|
}
|
|
285
297
|
}
|
|
286
298
|
}
|
|
@@ -288,9 +300,9 @@ class SkyFlyoutMediaQueryService {
|
|
|
288
300
|
this.currentSubject.complete();
|
|
289
301
|
}
|
|
290
302
|
}
|
|
291
|
-
SkyFlyoutMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
292
|
-
SkyFlyoutMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
293
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
303
|
+
SkyFlyoutMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutMediaQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
304
|
+
SkyFlyoutMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutMediaQueryService });
|
|
305
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutMediaQueryService, decorators: [{
|
|
294
306
|
type: Injectable
|
|
295
307
|
}], ctorParameters: function () { return []; } });
|
|
296
308
|
|
|
@@ -328,14 +340,14 @@ class SkyFlyoutIteratorComponent {
|
|
|
328
340
|
}
|
|
329
341
|
}
|
|
330
342
|
}
|
|
331
|
-
SkyFlyoutIteratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
332
|
-
SkyFlyoutIteratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.
|
|
333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
343
|
+
SkyFlyoutIteratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutIteratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
344
|
+
SkyFlyoutIteratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyFlyoutIteratorComponent, selector: "sky-flyout-iterator", inputs: { nextButtonDisabled: "nextButtonDisabled", previousButtonDisabled: "previousButtonDisabled" }, outputs: { previousButtonClick: "previousButtonClick", nextButtonClick: "nextButtonClick" }, ngImport: i0, template: "<div id=\"iterators\" class=\"sky-flyout-iterators\">\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"\n 'skyux_flyout_iterator_previous_button' | skyLibResources\n \"\n [disabled]=\"previousButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorPreviousClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-up\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-up\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"'skyux_flyout_iterator_next_button' | skyLibResources\"\n [disabled]=\"nextButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorNextClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-down\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-down\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n</div>\n", styles: [":host-context(.sky-theme-modern) .sky-flyout-iterators{display:inline}.sky-theme-modern .sky-flyout-iterators{display:inline}\n"], components: [{ type: i1$1.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i2.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], pipes: { "skyLibResources": i2$1.SkyLibResourcesPipe } });
|
|
345
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutIteratorComponent, decorators: [{
|
|
334
346
|
type: Component,
|
|
335
347
|
args: [{
|
|
336
348
|
selector: 'sky-flyout-iterator',
|
|
337
349
|
templateUrl: './flyout-iterator.component.html',
|
|
338
|
-
styleUrls: ['./flyout-iterator.component.scss']
|
|
350
|
+
styleUrls: ['./flyout-iterator.component.scss'],
|
|
339
351
|
}]
|
|
340
352
|
}], propDecorators: { nextButtonDisabled: [{
|
|
341
353
|
type: Input
|
|
@@ -370,6 +382,7 @@ class SkyFlyoutComponent {
|
|
|
370
382
|
this.flyoutWidth = 0;
|
|
371
383
|
this.isDragging = false;
|
|
372
384
|
this.isFullscreen = false;
|
|
385
|
+
this.resizeKeyControlActive = false;
|
|
373
386
|
this.xCoord = 0;
|
|
374
387
|
this.windowBufferSize = 20;
|
|
375
388
|
/**
|
|
@@ -442,12 +455,15 @@ class SkyFlyoutComponent {
|
|
|
442
455
|
this.notifyClosed();
|
|
443
456
|
}
|
|
444
457
|
this.config = Object.assign({ providers: [] }, config);
|
|
445
|
-
this.config.defaultWidth =
|
|
458
|
+
this.config.defaultWidth =
|
|
459
|
+
this.config.defaultWidth || window.innerWidth / 2;
|
|
446
460
|
this.config.minWidth = this.config.minWidth || 320;
|
|
447
461
|
this.config.maxWidth = this.config.maxWidth || this.config.defaultWidth;
|
|
448
462
|
this.config.showIterator = this.config.showIterator || false;
|
|
449
|
-
this.config.iteratorNextButtonDisabled =
|
|
450
|
-
|
|
463
|
+
this.config.iteratorNextButtonDisabled =
|
|
464
|
+
this.config.iteratorNextButtonDisabled || false;
|
|
465
|
+
this.config.iteratorPreviousButtonDisabled =
|
|
466
|
+
this.config.iteratorPreviousButtonDisabled || false;
|
|
451
467
|
const factory = this.resolver.resolveComponentFactory(component);
|
|
452
468
|
/* tslint:disable:deprecation */
|
|
453
469
|
/**
|
|
@@ -461,10 +477,11 @@ class SkyFlyoutComponent {
|
|
|
461
477
|
this.flyoutInstance = this.createFlyoutInstance(componentRef.instance);
|
|
462
478
|
// Open the flyout immediately.
|
|
463
479
|
this.messageStream.next({
|
|
464
|
-
type: SkyFlyoutMessageType.Open
|
|
480
|
+
type: SkyFlyoutMessageType.Open,
|
|
465
481
|
});
|
|
466
482
|
if (this.config.settingsKey) {
|
|
467
|
-
this.uiConfigService
|
|
483
|
+
this.uiConfigService
|
|
484
|
+
.getConfig(this.config.settingsKey)
|
|
468
485
|
.pipe(take(1))
|
|
469
486
|
.subscribe((value) => {
|
|
470
487
|
if (value && value.flyoutWidth) {
|
|
@@ -485,7 +502,7 @@ class SkyFlyoutComponent {
|
|
|
485
502
|
}
|
|
486
503
|
close() {
|
|
487
504
|
this.messageStream.next({
|
|
488
|
-
type: SkyFlyoutMessageType.Close
|
|
505
|
+
type: SkyFlyoutMessageType.Close,
|
|
489
506
|
});
|
|
490
507
|
}
|
|
491
508
|
invokePrimaryAction() {
|
|
@@ -496,7 +513,7 @@ class SkyFlyoutComponent {
|
|
|
496
513
|
return false;
|
|
497
514
|
}
|
|
498
515
|
getAnimationState() {
|
|
499
|
-
return
|
|
516
|
+
return this.isOpening ? FLYOUT_OPEN_STATE : FLYOUT_CLOSED_STATE;
|
|
500
517
|
}
|
|
501
518
|
animationDone(event) {
|
|
502
519
|
if (event.toState === FLYOUT_OPEN_STATE) {
|
|
@@ -512,27 +529,10 @@ class SkyFlyoutComponent {
|
|
|
512
529
|
this.onResizeHandleMouseDown(event);
|
|
513
530
|
}
|
|
514
531
|
onHeaderGrabHandleKeyDown(event) {
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
case 'left':
|
|
520
|
-
/* istanbul ignore else */
|
|
521
|
-
if (this.flyoutWidth < this.config.maxWidth) {
|
|
522
|
-
this.flyoutWidth = Math.min(this.flyoutWidth + this.widthStep, this.config.maxWidth);
|
|
523
|
-
}
|
|
524
|
-
break;
|
|
525
|
-
case 'right':
|
|
526
|
-
/* istanbul ignore else */
|
|
527
|
-
if (this.flyoutWidth > this.config.minWidth) {
|
|
528
|
-
this.flyoutWidth = Math.max(this.flyoutWidth - this.widthStep, this.config.minWidth);
|
|
529
|
-
}
|
|
530
|
-
break;
|
|
531
|
-
/* istanbul ignore next */
|
|
532
|
-
default:
|
|
533
|
-
break;
|
|
534
|
-
}
|
|
535
|
-
}
|
|
532
|
+
this.handleResizeKeyDown(event);
|
|
533
|
+
}
|
|
534
|
+
onResizeHandleKeyDown(event) {
|
|
535
|
+
this.handleResizeKeyDown(event);
|
|
536
536
|
}
|
|
537
537
|
onResizeHandleMouseDown(event) {
|
|
538
538
|
event.preventDefault();
|
|
@@ -647,7 +647,7 @@ class SkyFlyoutComponent {
|
|
|
647
647
|
this.adapter.setResponsiveClass(this.elementRef, newBreakpiont);
|
|
648
648
|
}
|
|
649
649
|
setFullscreen() {
|
|
650
|
-
if (
|
|
650
|
+
if (window.innerWidth - this.windowBufferSize < this.config.minWidth) {
|
|
651
651
|
this.isFullscreen = true;
|
|
652
652
|
}
|
|
653
653
|
else {
|
|
@@ -656,8 +656,9 @@ class SkyFlyoutComponent {
|
|
|
656
656
|
}
|
|
657
657
|
setUserData() {
|
|
658
658
|
if (this.config.settingsKey) {
|
|
659
|
-
this.uiConfigService
|
|
660
|
-
|
|
659
|
+
this.uiConfigService
|
|
660
|
+
.setConfig(this.config.settingsKey, {
|
|
661
|
+
flyoutWidth: this.flyoutWidth,
|
|
661
662
|
})
|
|
662
663
|
.pipe(take(1))
|
|
663
664
|
.subscribe(() => { }, (err) => {
|
|
@@ -693,24 +694,60 @@ class SkyFlyoutComponent {
|
|
|
693
694
|
// TODO: Need to implement the async `getString` method in a breaking change.
|
|
694
695
|
return this.resourcesService.getStringForLocale({ locale: 'en-US' }, key);
|
|
695
696
|
}
|
|
697
|
+
handleResizeKeyDown(event) {
|
|
698
|
+
/* istanbul ignore else */
|
|
699
|
+
if (event.key) {
|
|
700
|
+
const keyPressed = event.key.toLowerCase().replace('arrow', '');
|
|
701
|
+
switch (keyPressed) {
|
|
702
|
+
case 'enter':
|
|
703
|
+
case ' ':
|
|
704
|
+
this.resizeKeyControlActive = !this.resizeKeyControlActive;
|
|
705
|
+
break;
|
|
706
|
+
case 'tab':
|
|
707
|
+
/* istanbul ignore else */
|
|
708
|
+
if (this.resizeKeyControlActive) {
|
|
709
|
+
this.resizeKeyControlActive = false;
|
|
710
|
+
}
|
|
711
|
+
case 'left':
|
|
712
|
+
if (this.resizeKeyControlActive) {
|
|
713
|
+
/* istanbul ignore else */
|
|
714
|
+
if (this.flyoutWidth < this.config.maxWidth) {
|
|
715
|
+
this.flyoutWidth = Math.min(this.flyoutWidth + this.widthStep, this.config.maxWidth);
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
break;
|
|
719
|
+
case 'right':
|
|
720
|
+
if (this.resizeKeyControlActive) {
|
|
721
|
+
/* istanbul ignore else */
|
|
722
|
+
if (this.flyoutWidth > this.config.minWidth) {
|
|
723
|
+
this.flyoutWidth = Math.max(this.flyoutWidth - this.widthStep, this.config.minWidth);
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
break;
|
|
727
|
+
/* istanbul ignore next */
|
|
728
|
+
default:
|
|
729
|
+
break;
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
}
|
|
696
733
|
}
|
|
697
|
-
SkyFlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
698
|
-
SkyFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.
|
|
734
|
+
SkyFlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutComponent, deps: [{ token: SkyFlyoutAdapterService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }, { token: i2$1.SkyLibResourcesService }, { token: SkyFlyoutMediaQueryService }, { token: i0.ElementRef }, { token: i1.SkyUIConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
735
|
+
SkyFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyFlyoutComponent, selector: "sky-flyout", host: { listeners: { "window:resize": "onWindowResize($event)" } }, providers: [
|
|
699
736
|
SkyFlyoutAdapterService,
|
|
700
737
|
SkyFlyoutMediaQueryService,
|
|
701
|
-
{ provide: SkyMediaQueryService, useExisting: SkyFlyoutMediaQueryService }
|
|
702
|
-
], viewQueries: [{ propertyName: "flyoutRef", first: true, predicate: ["flyoutRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "flyoutHeader", first: true, predicate: ["flyoutHeader"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-flyout\"\n tabindex=\"-1\"\n [attr.role]=\"config?.ariaRole\"\n [attr.aria-describedby]=\"config?.ariaDescribedBy\"\n [attr.aria-labelledby]=\"config?.ariaLabelledBy\"\n [id]=\"flyoutId\"\n [ngClass]=\"{\n 'sky-flyout-hidden': !isOpen && !isOpening,\n 'sky-flyout-fullscreen': isFullscreen\n }\"\n [skyThemeClass]=\"{\n 'sky-shadow': 'default',\n 'sky-elevation-8': 'modern'\n }\"\n (@flyoutState.done)=\"animationDone($event)\"\n [@flyoutState]=\"getAnimationState()\"\n [style.width.px]=\"flyoutWidth\"\n #flyoutRef\n>\n
|
|
738
|
+
{ provide: SkyMediaQueryService, useExisting: SkyFlyoutMediaQueryService },
|
|
739
|
+
], viewQueries: [{ propertyName: "flyoutRef", first: true, predicate: ["flyoutRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "flyoutHeader", first: true, predicate: ["flyoutHeader"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-flyout\"\n tabindex=\"-1\"\n [attr.role]=\"config?.ariaRole\"\n [attr.aria-describedby]=\"config?.ariaDescribedBy\"\n [attr.aria-labelledby]=\"config?.ariaLabelledBy\"\n [id]=\"flyoutId\"\n [ngClass]=\"{\n 'sky-flyout-hidden': !isOpen && !isOpening,\n 'sky-flyout-fullscreen': isFullscreen\n }\"\n [skyThemeClass]=\"{\n 'sky-shadow': 'default',\n 'sky-elevation-8': 'modern'\n }\"\n (@flyoutState.done)=\"animationDone($event)\"\n [@flyoutState]=\"getAnimationState()\"\n [style.width.px]=\"flyoutWidth\"\n #flyoutRef\n>\n <div\n class=\"sky-flyout-resize-handle\"\n role=\"separator\"\n tabindex=\"0\"\n type=\"range\"\n [attr.aria-controls]=\"flyoutId\"\n [attr.aria-label]=\"'skyux_flyout_resize_handle' | skyLibResources\"\n [attr.aria-valuemax]=\"config.maxWidth\"\n [attr.aria-valuemin]=\"config.minWidth\"\n [attr.aria-valuenow]=\"flyoutWidth\"\n (keydown)=\"onResizeHandleKeyDown($event)\"\n (mousedown)=\"onResizeHandleMouseDown($event)\"\n ></div>\n\n <div\n class=\"sky-flyout-header\"\n [skyThemeClass]=\"{\n 'sky-padding-squish-large': 'default'\n }\"\n #flyoutHeader\n >\n <div class=\"sky-flyout-header-content\">\n <button\n *skyThemeIf=\"'modern'\"\n class=\"\n sky-btn\n sky-btn-icon-borderless\n sky-margin-inline-sm\n sky-flyout-header-grab-handle\n \"\n [attr.aria-label]=\"'skyux_flyout_resize_handle' | skyLibResources\"\n (keydown)=\"onHeaderGrabHandleKeyDown($event)\"\n (mousedown)=\"onHeaderGrabHandleMouseDown($event)\"\n >\n <sky-icon icon=\"tile-drag\" iconType=\"skyux\" size=\"lg\"> </sky-icon>\n </button>\n\n <sky-flyout-iterator\n *ngIf=\"config.showIterator\"\n [nextButtonDisabled]=\"config.iteratorNextButtonDisabled\"\n [previousButtonDisabled]=\"config.iteratorPreviousButtonDisabled\"\n (nextButtonClick)=\"onIteratorNextButtonClick()\"\n (previousButtonClick)=\"onIteratorPreviousButtonClick()\"\n >\n </sky-flyout-iterator>\n </div>\n <div class=\"sky-flyout-header-buttons\">\n <ng-container *ngTemplateOutlet=\"permalinkTemplate\"> </ng-container>\n <ng-container *ngTemplateOutlet=\"primaryActionTemplate\"> </ng-container>\n <button\n class=\"sky-btn sky-flyout-btn-close sky-label-icon-theme-default\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_flyout_close' | skyLibResources\"\n [skyThemeClass]=\"{\n 'sky-btn-default': 'default',\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"close()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"close\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"close\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n </div>\n </div>\n <div class=\"sky-flyout-content\">\n <div #target></div>\n </div>\n</div>\n\n<ng-template #permalinkTemplate>\n <ng-template [ngIf]=\"permalink\">\n <ng-template [ngIf]=\"permalink.url\">\n <a\n class=\"sky-btn sky-flyout-btn-permalink sky-margin-inline-default\"\n [skyHref]=\"permalink.url\"\n [skyThemeClass]=\"{\n 'sky-btn-default': 'default',\n 'sky-btn-borderless': 'modern'\n }\"\n (click)=\"close()\"\n >\n {{ permalinkLabel }}\n </a>\n </ng-template>\n <ng-template [ngIf]=\"permalink.route\">\n <a\n class=\"sky-btn sky-flyout-btn-permalink sky-margin-inline-default\"\n [routerLink]=\"permalink.route.commands\"\n [fragment]=\"permalink.route.extras?.fragment\"\n [skyThemeClass]=\"{\n 'sky-btn-default': 'default',\n 'sky-btn-borderless': 'modern'\n }\"\n [queryParams]=\"permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"permalink.route.extras?.queryParamsHandling\"\n [state]=\"permalink.route.extras?.state\"\n (click)=\"close()\"\n >\n {{ permalinkLabel }}\n </a>\n </ng-template>\n </ng-template>\n</ng-template>\n\n<ng-template #primaryActionTemplate>\n <ng-template [ngIf]=\"primaryAction && primaryAction.callback\">\n <button\n type=\"button\"\n class=\"\n sky-btn\n sky-btn-default\n sky-flyout-btn-primary-action\n sky-margin-inline-default\n \"\n (click)=\"invokePrimaryAction()\"\n >\n {{ primaryActionLabel }}\n </button>\n </ng-template>\n</ng-template>\n", styles: [".sky-flyout{position:fixed;right:0;top:0;bottom:0;height:100%;background-color:#fff;border-left:6px solid #0974a1;z-index:1001}.sky-flyout:focus{outline:none}.sky-flyout.sky-flyout-fullscreen{min-width:100%;max-width:100%}.sky-flyout.sky-flyout-fullscreen .sky-flyout-resize-handle{cursor:initial}.sky-flyout.sky-flyout-hidden{visibility:hidden}.sky-flyout .sky-flyout-input-aria-only{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0 0 0 0);outline:none}.sky-flyout-resize-handle{-webkit-appearance:none;-moz-appearance:none;height:100%;width:14px;position:absolute;left:-10px;cursor:ew-resize;padding:0;border:0;background:transparent;display:block;top:0;bottom:0;direction:rtl}.sky-flyout-resize-handle::-moz-range-thumb,.sky-flyout-resize-handle::-moz-range-track{-webkit-appearance:none;-moz-appearance:none;width:0;height:0;border-radius:0;border:0 none;background:none;display:none}.sky-flyout-resize-handle::-ms-thumb,.sky-flyout-resize-handle::-ms-track{-webkit-appearance:none;-moz-appearance:none;width:0;height:0;border-radius:0;border:0 none;background:none;display:none}.sky-flyout-resize-handle::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;width:0;height:0;border-radius:0;border:0 none;background:none;display:none}.sky-flyout-header{border-bottom:1px solid #cdcfd2;width:100%;background:#eeeeef;height:50px;display:flex;align-items:flex-start}.sky-flyout-header-content{flex-grow:1}.sky-flyout-btn-permalink:hover{text-decoration:none}.sky-flyout-help-shim{padding-right:8px}@media (min-width: 768px){.sky-flyout-help-shim{padding-right:50px}}.sky-flyout-content{overflow-y:auto;height:calc(100% - 50px)}:host-context(.sky-theme-modern) .sky-flyout{border-left:0}:host-context(.sky-theme-modern) .sky-flyout-header{border-bottom:none;background:#fff;padding:15px 10px}:host-context(.sky-theme-modern) .sky-flyout-header-grab-handle{cursor:move;cursor:-moz-grab}.sky-theme-modern .sky-flyout{border-left:0}.sky-theme-modern .sky-flyout-header{border-bottom:none;background:#fff;padding:15px 10px}.sky-theme-modern .sky-flyout-header-grab-handle{cursor:move;cursor:-moz-grab}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-flyout{background:#000}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-flyout-header{background:#000}.sky-theme-modern.sky-theme-mode-dark .sky-flyout{background:#000}.sky-theme-modern.sky-theme-mode-dark .sky-flyout-header{background:#000}\n"], components: [{ type: i1$1.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: SkyFlyoutIteratorComponent, selector: "sky-flyout-iterator", inputs: ["nextButtonDisabled", "previousButtonDisabled"], outputs: ["previousButtonClick", "nextButtonClick"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i9.λ1, selector: "[skyHref]", inputs: ["skyHref", "skyHrefElse"] }, { type: i2$2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "skyLibResources": i2$1.SkyLibResourcesPipe }, animations: [
|
|
703
740
|
trigger('flyoutState', [
|
|
704
741
|
state(FLYOUT_OPEN_STATE, style({ transform: 'initial' })),
|
|
705
742
|
state(FLYOUT_CLOSED_STATE, style({ transform: 'translateX(100%)' })),
|
|
706
743
|
transition('void => *', [
|
|
707
744
|
style({ transform: 'translateX(100%)' }),
|
|
708
|
-
animate(250)
|
|
745
|
+
animate(250),
|
|
709
746
|
]),
|
|
710
|
-
transition(`* <=> *`, animate('250ms ease-in'))
|
|
711
|
-
])
|
|
747
|
+
transition(`* <=> *`, animate('250ms ease-in')),
|
|
748
|
+
]),
|
|
712
749
|
], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
713
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
750
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutComponent, decorators: [{
|
|
714
751
|
type: Component,
|
|
715
752
|
args: [{
|
|
716
753
|
selector: 'sky-flyout',
|
|
@@ -719,7 +756,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
719
756
|
providers: [
|
|
720
757
|
SkyFlyoutAdapterService,
|
|
721
758
|
SkyFlyoutMediaQueryService,
|
|
722
|
-
{ provide: SkyMediaQueryService, useExisting: SkyFlyoutMediaQueryService }
|
|
759
|
+
{ provide: SkyMediaQueryService, useExisting: SkyFlyoutMediaQueryService },
|
|
723
760
|
],
|
|
724
761
|
animations: [
|
|
725
762
|
trigger('flyoutState', [
|
|
@@ -727,31 +764,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
727
764
|
state(FLYOUT_CLOSED_STATE, style({ transform: 'translateX(100%)' })),
|
|
728
765
|
transition('void => *', [
|
|
729
766
|
style({ transform: 'translateX(100%)' }),
|
|
730
|
-
animate(250)
|
|
767
|
+
animate(250),
|
|
731
768
|
]),
|
|
732
|
-
transition(`* <=> *`, animate('250ms ease-in'))
|
|
733
|
-
])
|
|
769
|
+
transition(`* <=> *`, animate('250ms ease-in')),
|
|
770
|
+
]),
|
|
734
771
|
],
|
|
735
772
|
// Allow automatic change detection for child components.
|
|
736
|
-
changeDetection: ChangeDetectionStrategy.Default
|
|
773
|
+
changeDetection: ChangeDetectionStrategy.Default,
|
|
737
774
|
}]
|
|
738
775
|
}], ctorParameters: function () { return [{ type: SkyFlyoutAdapterService }, { type: i0.ChangeDetectorRef }, { type: i0.Injector }, { type: i0.ComponentFactoryResolver }, { type: i2$1.SkyLibResourcesService }, { type: SkyFlyoutMediaQueryService }, { type: i0.ElementRef }, { type: i1.SkyUIConfigService }]; }, propDecorators: { flyoutRef: [{
|
|
739
776
|
type: ViewChild,
|
|
740
777
|
args: ['flyoutRef', {
|
|
741
778
|
read: ElementRef,
|
|
742
|
-
static: true
|
|
779
|
+
static: true,
|
|
743
780
|
}]
|
|
744
781
|
}], target: [{
|
|
745
782
|
type: ViewChild,
|
|
746
783
|
args: ['target', {
|
|
747
784
|
read: ViewContainerRef,
|
|
748
|
-
static: true
|
|
785
|
+
static: true,
|
|
749
786
|
}]
|
|
750
787
|
}], flyoutHeader: [{
|
|
751
788
|
type: ViewChild,
|
|
752
789
|
args: ['flyoutHeader', {
|
|
753
790
|
read: ElementRef,
|
|
754
|
-
static: true
|
|
791
|
+
static: true,
|
|
755
792
|
}]
|
|
756
793
|
}], onWindowResize: [{
|
|
757
794
|
type: HostListener,
|
|
@@ -760,9 +797,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
760
797
|
|
|
761
798
|
class SkyFlyoutModule {
|
|
762
799
|
}
|
|
763
|
-
SkyFlyoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
764
|
-
SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
765
|
-
SkyFlyoutIteratorComponent], imports: [CommonModule,
|
|
800
|
+
SkyFlyoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
801
|
+
SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutModule, declarations: [SkyFlyoutComponent, SkyFlyoutIteratorComponent], imports: [CommonModule,
|
|
766
802
|
FormsModule,
|
|
767
803
|
RouterModule,
|
|
768
804
|
SkyI18nModule,
|
|
@@ -770,7 +806,7 @@ SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
|
|
|
770
806
|
SkyFlyoutResourcesModule,
|
|
771
807
|
SkyThemeModule,
|
|
772
808
|
SkyHrefModule], exports: [SkyFlyoutComponent] });
|
|
773
|
-
SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
809
|
+
SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutModule, imports: [[
|
|
774
810
|
CommonModule,
|
|
775
811
|
FormsModule,
|
|
776
812
|
RouterModule,
|
|
@@ -778,15 +814,12 @@ SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
|
|
|
778
814
|
SkyIconModule,
|
|
779
815
|
SkyFlyoutResourcesModule,
|
|
780
816
|
SkyThemeModule,
|
|
781
|
-
SkyHrefModule
|
|
817
|
+
SkyHrefModule,
|
|
782
818
|
]] });
|
|
783
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
819
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutModule, decorators: [{
|
|
784
820
|
type: NgModule,
|
|
785
821
|
args: [{
|
|
786
|
-
declarations: [
|
|
787
|
-
SkyFlyoutComponent,
|
|
788
|
-
SkyFlyoutIteratorComponent
|
|
789
|
-
],
|
|
822
|
+
declarations: [SkyFlyoutComponent, SkyFlyoutIteratorComponent],
|
|
790
823
|
imports: [
|
|
791
824
|
CommonModule,
|
|
792
825
|
FormsModule,
|
|
@@ -795,14 +828,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
795
828
|
SkyIconModule,
|
|
796
829
|
SkyFlyoutResourcesModule,
|
|
797
830
|
SkyThemeModule,
|
|
798
|
-
SkyHrefModule
|
|
799
|
-
],
|
|
800
|
-
exports: [
|
|
801
|
-
SkyFlyoutComponent
|
|
831
|
+
SkyHrefModule,
|
|
802
832
|
],
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
]
|
|
833
|
+
exports: [SkyFlyoutComponent],
|
|
834
|
+
entryComponents: [SkyFlyoutComponent],
|
|
806
835
|
}]
|
|
807
836
|
}] });
|
|
808
837
|
|
|
@@ -834,7 +863,7 @@ class SkyFlyoutService {
|
|
|
834
863
|
if (this.host && !this.isOpening) {
|
|
835
864
|
this.removeAfterClosed = true;
|
|
836
865
|
this.host.instance.messageStream.next({
|
|
837
|
-
type: SkyFlyoutMessageType.Close
|
|
866
|
+
type: SkyFlyoutMessageType.Close,
|
|
838
867
|
});
|
|
839
868
|
}
|
|
840
869
|
}
|
|
@@ -867,7 +896,8 @@ class SkyFlyoutService {
|
|
|
867
896
|
return flyout;
|
|
868
897
|
}
|
|
869
898
|
createHostComponent() {
|
|
870
|
-
this.host =
|
|
899
|
+
this.host =
|
|
900
|
+
this.dynamicComponentService.createComponent(SkyFlyoutComponent);
|
|
871
901
|
return this.host;
|
|
872
902
|
}
|
|
873
903
|
removeHostComponent() {
|
|
@@ -898,7 +928,9 @@ class SkyFlyoutService {
|
|
|
898
928
|
if (flyoutInstance.flyoutRef.nativeElement.contains(event.target)) {
|
|
899
929
|
return;
|
|
900
930
|
}
|
|
901
|
-
const isAbove = event.target === document
|
|
931
|
+
const isAbove = event.target === document
|
|
932
|
+
? false
|
|
933
|
+
: this.coreAdapter.isTargetAboveElement(event.target, flyoutInstance.flyoutRef.nativeElement);
|
|
902
934
|
/* istanbul ignore else */
|
|
903
935
|
if (!isAbove) {
|
|
904
936
|
doClose = true;
|
|
@@ -940,12 +972,12 @@ class SkyFlyoutService {
|
|
|
940
972
|
this.ngUnsubscribe = new Subject();
|
|
941
973
|
}
|
|
942
974
|
}
|
|
943
|
-
SkyFlyoutService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
944
|
-
SkyFlyoutService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
945
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
975
|
+
SkyFlyoutService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i1.SkyAppWindowRef }, { token: i1.SkyDynamicComponentService }, { token: i2$2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
976
|
+
SkyFlyoutService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutService, providedIn: 'any' });
|
|
977
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyFlyoutService, decorators: [{
|
|
946
978
|
type: Injectable,
|
|
947
979
|
args: [{
|
|
948
|
-
providedIn: '
|
|
980
|
+
providedIn: 'any',
|
|
949
981
|
}]
|
|
950
982
|
}], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i1.SkyAppWindowRef }, { type: i1.SkyDynamicComponentService }, { type: i2$2.Router }]; } });
|
|
951
983
|
|