@progress/kendo-angular-dialog 21.4.1-develop.1 → 22.0.0-develop.1
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/dialog/dialog-content-base.d.ts +1 -1
- package/fesm2022/progress-kendo-angular-dialog.mjs +84 -84
- package/localization/messages.d.ts +1 -1
- package/package.json +11 -19
- package/schematics/ngAdd/index.js +1 -1
- package/esm2022/common/actions-layout.mjs +0 -5
- package/esm2022/common/animation-types.mjs +0 -5
- package/esm2022/common/dialog-animation-direction.mjs +0 -5
- package/esm2022/common/preventable-event.mjs +0 -30
- package/esm2022/common/util.mjs +0 -167
- package/esm2022/dialog/dialog-actions.component.mjs +0 -182
- package/esm2022/dialog/dialog-animations/animate-content.mjs +0 -19
- package/esm2022/dialog/dialog-animations/animations.mjs +0 -69
- package/esm2022/dialog/dialog-animations/create-animation-player.mjs +0 -18
- package/esm2022/dialog/dialog-container.directive.mjs +0 -31
- package/esm2022/dialog/dialog-container.service.mjs +0 -26
- package/esm2022/dialog/dialog-content-base.mjs +0 -57
- package/esm2022/dialog/dialog-titlebar.component.mjs +0 -170
- package/esm2022/dialog/dialog.component.mjs +0 -650
- package/esm2022/dialog/dialog.service.mjs +0 -210
- package/esm2022/dialog/models/dialog-action-divider.mjs +0 -5
- package/esm2022/dialog/models/dialog-action.mjs +0 -40
- package/esm2022/dialog/models/dialog-animation.mjs +0 -5
- package/esm2022/dialog/models/dialog-close-result.mjs +0 -12
- package/esm2022/dialog/models/dialog-ref.mjs +0 -39
- package/esm2022/dialog/models/dialog-result.mjs +0 -5
- package/esm2022/dialog/models/dialog-settings.mjs +0 -95
- package/esm2022/dialog/models/index.mjs +0 -12
- package/esm2022/dialog/models/theme-color.mjs +0 -5
- package/esm2022/dialog.module.mjs +0 -49
- package/esm2022/dialogs.module.mjs +0 -59
- package/esm2022/directives.mjs +0 -95
- package/esm2022/index.mjs +0 -33
- package/esm2022/localization/custom-messages.component.mjs +0 -65
- package/esm2022/localization/dialog-localization.service.mjs +0 -9
- package/esm2022/localization/localized-messages.directive.mjs +0 -43
- package/esm2022/localization/messages.mjs +0 -45
- package/esm2022/localization/titlebar-localization.service.mjs +0 -45
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/progress-kendo-angular-dialog.mjs +0 -8
- package/esm2022/window/actions/window-close-action.directive.mjs +0 -119
- package/esm2022/window/actions/window-maximize-action.directive.mjs +0 -125
- package/esm2022/window/actions/window-minimize-action.directive.mjs +0 -125
- package/esm2022/window/actions/window-restore-action.directive.mjs +0 -125
- package/esm2022/window/drag-resize.service.mjs +0 -335
- package/esm2022/window/models/index.mjs +0 -11
- package/esm2022/window/models/theme-color.mjs +0 -5
- package/esm2022/window/models/window-close-result.mjs +0 -10
- package/esm2022/window/models/window-messages.mjs +0 -5
- package/esm2022/window/models/window-options.mjs +0 -5
- package/esm2022/window/models/window-ref.mjs +0 -25
- package/esm2022/window/models/window-settings.mjs +0 -92
- package/esm2022/window/models/window-types.mjs +0 -5
- package/esm2022/window/navigation.service.mjs +0 -160
- package/esm2022/window/window-container.directive.mjs +0 -31
- package/esm2022/window/window-container.service.mjs +0 -26
- package/esm2022/window/window-events.mjs +0 -5
- package/esm2022/window/window-resize-handle.directive.mjs +0 -74
- package/esm2022/window/window-titlebar.component.mjs +0 -173
- package/esm2022/window/window.component.mjs +0 -831
- package/esm2022/window/window.service.mjs +0 -206
- package/esm2022/window.module.mjs +0 -53
|
@@ -1,831 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, Input, Output, HostBinding, EventEmitter, ContentChild, ElementRef, Renderer2, ViewChildren, QueryList, HostListener, NgZone, ViewChild } from '@angular/core';
|
|
6
|
-
import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
-
import { isChanged, isDocumentAvailable, shouldShowValidationUI, getLicenseMessage, setHTMLAttributes } from '@progress/kendo-angular-common';
|
|
8
|
-
import { validatePackage } from '@progress/kendo-licensing';
|
|
9
|
-
import { Subscription } from 'rxjs';
|
|
10
|
-
import { take } from 'rxjs/operators';
|
|
11
|
-
import { packageMetadata } from '../package-metadata';
|
|
12
|
-
import { DragResizeService } from './drag-resize.service';
|
|
13
|
-
import { OFFSET_STYLES, isPresent, isTruthy, parseCSSClassNames } from '../common/util';
|
|
14
|
-
import { RESIZE_DIRECTIONS } from "../common/util";
|
|
15
|
-
import { ResizeHandleDirective } from './window-resize-handle.directive';
|
|
16
|
-
import { WindowTitleBarComponent } from './window-titlebar.component';
|
|
17
|
-
import { NavigationService } from './navigation.service';
|
|
18
|
-
import { WatermarkOverlayComponent, DraggableDirective } from '@progress/kendo-angular-common';
|
|
19
|
-
import { WindowCloseActionDirective } from './actions/window-close-action.directive';
|
|
20
|
-
import { WindowRestoreActionDirective } from './actions/window-restore-action.directive';
|
|
21
|
-
import { WindowMaximizeActionDirective } from './actions/window-maximize-action.directive';
|
|
22
|
-
import { WindowMinimizeActionDirective } from './actions/window-minimize-action.directive';
|
|
23
|
-
import { NgTemplateOutlet } from '@angular/common';
|
|
24
|
-
import { LocalizedMessagesDirective } from '../localization/localized-messages.directive';
|
|
25
|
-
import * as i0 from "@angular/core";
|
|
26
|
-
import * as i1 from "./drag-resize.service";
|
|
27
|
-
import * as i2 from "./navigation.service";
|
|
28
|
-
import * as i3 from "@progress/kendo-angular-l10n";
|
|
29
|
-
/**
|
|
30
|
-
* Represents the [Kendo UI Window component for Angular]({% slug overview_window_dialogs %}).
|
|
31
|
-
*
|
|
32
|
-
* @example
|
|
33
|
-
* ```html
|
|
34
|
-
* <kendo-window title="My Window" [width]="400" [height]="300">
|
|
35
|
-
* </kendo-window>
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @remarks
|
|
39
|
-
* Supported children components are: {@link CustomMessagesComponent}, {@link WindowTitleBarComponent}.
|
|
40
|
-
*/
|
|
41
|
-
export class WindowComponent {
|
|
42
|
-
el;
|
|
43
|
-
renderer;
|
|
44
|
-
service;
|
|
45
|
-
navigation;
|
|
46
|
-
ngZone;
|
|
47
|
-
localization;
|
|
48
|
-
/**
|
|
49
|
-
* Specifies the query selector used to set the initial focus ([see examples]({% slug initial_focus_window %})).
|
|
50
|
-
*/
|
|
51
|
-
autoFocusedElement;
|
|
52
|
-
/**
|
|
53
|
-
* Sets the text in the title bar.
|
|
54
|
-
*/
|
|
55
|
-
title;
|
|
56
|
-
/**
|
|
57
|
-
* Specifies if the user can drag the component.
|
|
58
|
-
* @default true
|
|
59
|
-
*/
|
|
60
|
-
set draggable(value) {
|
|
61
|
-
this.options.draggable = value;
|
|
62
|
-
}
|
|
63
|
-
get draggable() {
|
|
64
|
-
return this.options.draggable;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Specifies if the user can resize the component.
|
|
68
|
-
* @default true
|
|
69
|
-
*/
|
|
70
|
-
set resizable(value) {
|
|
71
|
-
this.options.resizable = value;
|
|
72
|
-
}
|
|
73
|
-
get resizable() {
|
|
74
|
-
return this.options.resizable;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Sets the predefined theme color for the Window. The color applies to the title bar background and border, and updates the text color.
|
|
78
|
-
*/
|
|
79
|
-
set themeColor(themeColor) {
|
|
80
|
-
this.handleThemeColorClass(this.themeColor, themeColor);
|
|
81
|
-
this._themeColor = themeColor;
|
|
82
|
-
}
|
|
83
|
-
get themeColor() {
|
|
84
|
-
return this._themeColor;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* @hidden
|
|
88
|
-
*/
|
|
89
|
-
set cssClass(classes) {
|
|
90
|
-
this.setServiceClasses(this._cssClass, classes);
|
|
91
|
-
this._cssClass = classes;
|
|
92
|
-
}
|
|
93
|
-
get cssClass() {
|
|
94
|
-
return this._cssClass;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* @hidden
|
|
98
|
-
*/
|
|
99
|
-
set htmlAttributes(attributes) {
|
|
100
|
-
setHTMLAttributes(attributes, this.renderer, this.el.nativeElement);
|
|
101
|
-
const el = this.el.nativeElement;
|
|
102
|
-
const dir = el.getAttribute('dir');
|
|
103
|
-
const tIndex = el.getAttribute('tabindex');
|
|
104
|
-
if (this.direction !== dir) {
|
|
105
|
-
this.direction = dir;
|
|
106
|
-
}
|
|
107
|
-
if (this.tabIndex !== tIndex) {
|
|
108
|
-
this.tabIndex = tIndex;
|
|
109
|
-
}
|
|
110
|
-
this._htmlAttributes = attributes;
|
|
111
|
-
}
|
|
112
|
-
get htmlAttributes() {
|
|
113
|
-
return this._htmlAttributes;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Specifies if the content stays in the DOM when minimized.
|
|
117
|
-
* @default false
|
|
118
|
-
*/
|
|
119
|
-
keepContent = false;
|
|
120
|
-
/**
|
|
121
|
-
* Sets the initial state of the Window.
|
|
122
|
-
*/
|
|
123
|
-
set state(value) {
|
|
124
|
-
this.options.state = value;
|
|
125
|
-
}
|
|
126
|
-
get state() {
|
|
127
|
-
return this.options.state;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Sets the minimum width in pixels.
|
|
131
|
-
* @default 120
|
|
132
|
-
*/
|
|
133
|
-
set minWidth(value) {
|
|
134
|
-
this.setOption('minWidth', value);
|
|
135
|
-
}
|
|
136
|
-
get minWidth() {
|
|
137
|
-
return this.options.minWidth;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Sets the minimum height in pixels.
|
|
141
|
-
* @default 100
|
|
142
|
-
*/
|
|
143
|
-
set minHeight(value) {
|
|
144
|
-
this.setOption('minHeight', value);
|
|
145
|
-
}
|
|
146
|
-
get minHeight() {
|
|
147
|
-
return this.options.minHeight;
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Sets the width in pixels.
|
|
151
|
-
*/
|
|
152
|
-
set width(value) {
|
|
153
|
-
this.setOption('width', value);
|
|
154
|
-
}
|
|
155
|
-
get width() {
|
|
156
|
-
return this.options.width;
|
|
157
|
-
}
|
|
158
|
-
/**
|
|
159
|
-
* Sets the height in pixels.
|
|
160
|
-
*/
|
|
161
|
-
set height(value) {
|
|
162
|
-
this.setOption('height', value);
|
|
163
|
-
}
|
|
164
|
-
get height() {
|
|
165
|
-
return this.options.height;
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Sets the initial top offset in pixels.
|
|
169
|
-
*/
|
|
170
|
-
set top(value) {
|
|
171
|
-
this.setOption('top', value);
|
|
172
|
-
}
|
|
173
|
-
get top() {
|
|
174
|
-
return this.options.top;
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Sets the initial left offset in pixels.
|
|
178
|
-
*/
|
|
179
|
-
set left(value) {
|
|
180
|
-
this.setOption('left', value);
|
|
181
|
-
}
|
|
182
|
-
get left() {
|
|
183
|
-
return this.options.left;
|
|
184
|
-
}
|
|
185
|
-
get closeButtonTitle() {
|
|
186
|
-
if (this.messages && this.messages.closeTitle) {
|
|
187
|
-
return this.messages.closeTitle;
|
|
188
|
-
}
|
|
189
|
-
return this.localization.get('closeTitle');
|
|
190
|
-
}
|
|
191
|
-
get restoreButtonTitle() {
|
|
192
|
-
if (this.messages && this.messages.restoreTitle) {
|
|
193
|
-
return this.messages.restoreTitle;
|
|
194
|
-
}
|
|
195
|
-
return this.localization.get('restoreTitle');
|
|
196
|
-
}
|
|
197
|
-
get maximizeButtonTitle() {
|
|
198
|
-
if (this.messages && this.messages.maximizeTitle) {
|
|
199
|
-
return this.messages.maximizeTitle;
|
|
200
|
-
}
|
|
201
|
-
return this.localization.get('maximizeTitle');
|
|
202
|
-
}
|
|
203
|
-
get minimizeButtonTitle() {
|
|
204
|
-
if (this.messages && this.messages.minimizeTitle) {
|
|
205
|
-
return this.messages.minimizeTitle;
|
|
206
|
-
}
|
|
207
|
-
return this.localization.get('minimizeTitle');
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Fires when the user starts to move the Window.
|
|
211
|
-
*/
|
|
212
|
-
dragStart = new EventEmitter();
|
|
213
|
-
/**
|
|
214
|
-
* Fires after the Window has been moved by the user.
|
|
215
|
-
*/
|
|
216
|
-
dragEnd = new EventEmitter();
|
|
217
|
-
/**
|
|
218
|
-
* Fires when the user starts to resize the Window.
|
|
219
|
-
*/
|
|
220
|
-
resizeStart = new EventEmitter();
|
|
221
|
-
/**
|
|
222
|
-
* Fires after the Window has been resized by the user.
|
|
223
|
-
*/
|
|
224
|
-
resizeEnd = new EventEmitter();
|
|
225
|
-
/**
|
|
226
|
-
* Fires when the user closes the Window.
|
|
227
|
-
*/
|
|
228
|
-
close = new EventEmitter();
|
|
229
|
-
/**
|
|
230
|
-
* Fires when the `width` property is updated after resizing. The event data contains the new width. Allows two-way binding of the `width` property.
|
|
231
|
-
*/
|
|
232
|
-
widthChange = new EventEmitter();
|
|
233
|
-
/**
|
|
234
|
-
* Fires when the `height` property is updated after resizing. The event data contains the new height. Allows two-way binding of the `height` property.
|
|
235
|
-
*/
|
|
236
|
-
heightChange = new EventEmitter();
|
|
237
|
-
/**
|
|
238
|
-
* Fires when the `top` property is updated after dragging or resizing. The event data contains the new top offset. Allows two-way binding of the `top` property.
|
|
239
|
-
*/
|
|
240
|
-
topChange = new EventEmitter();
|
|
241
|
-
/**
|
|
242
|
-
* Fires when the `left` property is updated after dragging or resizing. The event data contains the new left offset. Allows two-way binding of the `left` property.
|
|
243
|
-
*/
|
|
244
|
-
leftChange = new EventEmitter();
|
|
245
|
-
/**
|
|
246
|
-
* Fires when the `state` property is updated. The event data contains the new state. Allows two-way binding of the `state` property.
|
|
247
|
-
*/
|
|
248
|
-
stateChange = new EventEmitter();
|
|
249
|
-
/**
|
|
250
|
-
* @hidden
|
|
251
|
-
*/
|
|
252
|
-
contentTemplate;
|
|
253
|
-
/**
|
|
254
|
-
* @hidden
|
|
255
|
-
*/
|
|
256
|
-
titleBarTemplate;
|
|
257
|
-
/**
|
|
258
|
-
* @hidden
|
|
259
|
-
*/
|
|
260
|
-
messages = {};
|
|
261
|
-
/**
|
|
262
|
-
* @hidden
|
|
263
|
-
*/
|
|
264
|
-
showLicenseWatermark = false;
|
|
265
|
-
/**
|
|
266
|
-
* @hidden
|
|
267
|
-
*/
|
|
268
|
-
licenseMessage;
|
|
269
|
-
tabIndex = 0;
|
|
270
|
-
role = 'dialog';
|
|
271
|
-
hostClass = true;
|
|
272
|
-
get dir() {
|
|
273
|
-
return this.direction;
|
|
274
|
-
}
|
|
275
|
-
titleBarView;
|
|
276
|
-
titleBarContent;
|
|
277
|
-
resizeHandles;
|
|
278
|
-
resizeDirections;
|
|
279
|
-
/**
|
|
280
|
-
* @hidden
|
|
281
|
-
*/
|
|
282
|
-
titleId = null;
|
|
283
|
-
_htmlAttributes;
|
|
284
|
-
_cssClass;
|
|
285
|
-
_themeColor = null;
|
|
286
|
-
direction;
|
|
287
|
-
draged = false;
|
|
288
|
-
resized = false;
|
|
289
|
-
windowSubscription = new Subscription();
|
|
290
|
-
domSubs = new Subscription();
|
|
291
|
-
localizationChangeSubscription;
|
|
292
|
-
constructor(el, renderer, service, navigation, ngZone, localization) {
|
|
293
|
-
this.el = el;
|
|
294
|
-
this.renderer = renderer;
|
|
295
|
-
this.service = service;
|
|
296
|
-
this.navigation = navigation;
|
|
297
|
-
this.ngZone = ngZone;
|
|
298
|
-
this.localization = localization;
|
|
299
|
-
const isValid = validatePackage(packageMetadata);
|
|
300
|
-
this.licenseMessage = getLicenseMessage(packageMetadata);
|
|
301
|
-
this.showLicenseWatermark = shouldShowValidationUI(isValid);
|
|
302
|
-
this.direction = this.localization.rtl ? 'rtl' : 'ltr';
|
|
303
|
-
this.localizationChangeSubscription = this.localization.changes
|
|
304
|
-
.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr');
|
|
305
|
-
this.resizeDirections = RESIZE_DIRECTIONS;
|
|
306
|
-
this.subscribeEvents();
|
|
307
|
-
this.titleId = this.generateTitleId();
|
|
308
|
-
}
|
|
309
|
-
ngAfterViewInit() {
|
|
310
|
-
if (!isDocumentAvailable()) {
|
|
311
|
-
return;
|
|
312
|
-
}
|
|
313
|
-
this.setNextZIndex();
|
|
314
|
-
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
315
|
-
this.handleInitialFocus();
|
|
316
|
-
});
|
|
317
|
-
this.ngZone.runOutsideAngular(() => Promise.resolve(null).then(() => this.setInitialOffset()));
|
|
318
|
-
this.initDomEvents();
|
|
319
|
-
if (this.titleBarView || this.titleBarContent) {
|
|
320
|
-
this.renderer.setAttribute(this.el.nativeElement, 'aria-labelledby', this.titleId);
|
|
321
|
-
}
|
|
322
|
-
this.handleThemeColorClass(null, this.themeColor);
|
|
323
|
-
}
|
|
324
|
-
ngOnInit() {
|
|
325
|
-
this.renderer.removeAttribute(this.el.nativeElement, 'title');
|
|
326
|
-
this.service.init(this.el);
|
|
327
|
-
}
|
|
328
|
-
ngOnChanges(changes) {
|
|
329
|
-
OFFSET_STYLES.forEach((style) => {
|
|
330
|
-
if (isChanged(style, changes)) {
|
|
331
|
-
this.setStyle(style, this.options[style]);
|
|
332
|
-
}
|
|
333
|
-
});
|
|
334
|
-
if (isChanged('draggable', changes)) {
|
|
335
|
-
const titleBar = isPresent(this.titleBarContent) ? this.titleBarContent : this.titleBarView;
|
|
336
|
-
if (isTruthy(changes['draggable'].currentValue)) {
|
|
337
|
-
titleBar.subscribeDrag();
|
|
338
|
-
}
|
|
339
|
-
else {
|
|
340
|
-
titleBar.unsubscribeDrag();
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
if (isChanged('state', changes)) {
|
|
344
|
-
if (isPresent(this.service.lastAction)) {
|
|
345
|
-
this.service.lastAction = null;
|
|
346
|
-
}
|
|
347
|
-
else {
|
|
348
|
-
this.service.applyManualState();
|
|
349
|
-
this.updateAllOffset();
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
ngOnDestroy() {
|
|
354
|
-
if (this.windowSubscription) {
|
|
355
|
-
this.windowSubscription.unsubscribe();
|
|
356
|
-
}
|
|
357
|
-
if (this.domSubs) {
|
|
358
|
-
this.domSubs.unsubscribe();
|
|
359
|
-
}
|
|
360
|
-
this.localizationChangeSubscription.unsubscribe();
|
|
361
|
-
}
|
|
362
|
-
/**
|
|
363
|
-
* Focuses the wrapper of the Window component.
|
|
364
|
-
*/
|
|
365
|
-
focus() {
|
|
366
|
-
const wrapper = this.el.nativeElement;
|
|
367
|
-
if (isPresent(wrapper)) {
|
|
368
|
-
wrapper.focus({ preventScroll: true });
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
/**
|
|
372
|
-
* Brings the current Window component on top of other Window components on the page.
|
|
373
|
-
*/
|
|
374
|
-
bringToFront() {
|
|
375
|
-
this.setNextZIndex();
|
|
376
|
-
}
|
|
377
|
-
/**
|
|
378
|
-
* Manually updates the `width` or `height` option of the Window.
|
|
379
|
-
* The required style will be applied to the Window wrapper element and the
|
|
380
|
-
* corresponding property of the component instance will be updated.
|
|
381
|
-
* This method is intended to be used for sizing dynamically created components using the
|
|
382
|
-
* [`WindowService`]({% slug api_dialog_windowservice %})
|
|
383
|
-
* @param dimension The option to update.
|
|
384
|
-
* @param value The value in pixels.
|
|
385
|
-
*/
|
|
386
|
-
setDimension(dimension, value) {
|
|
387
|
-
this.setOption(dimension, value);
|
|
388
|
-
this.setStyle(dimension, value);
|
|
389
|
-
}
|
|
390
|
-
/**
|
|
391
|
-
* Manually updates the `top` or `left` offset of the Window.
|
|
392
|
-
* The required style will be applied to the Window wrapper element and the
|
|
393
|
-
* corresponding property of the component instance will be updated.
|
|
394
|
-
* This method is intended to be used for positioning dynamically created components using the
|
|
395
|
-
* [`WindowService`]({% slug api_dialog_windowservice %})
|
|
396
|
-
* @param offset The option to update.
|
|
397
|
-
* @param value The value in pixels.
|
|
398
|
-
*/
|
|
399
|
-
setOffset(offset, value) {
|
|
400
|
-
this.setOption(offset, value);
|
|
401
|
-
this.setStyle(offset, value);
|
|
402
|
-
}
|
|
403
|
-
get showDefaultTitleBar() {
|
|
404
|
-
return !isPresent(this.titleBarContent);
|
|
405
|
-
}
|
|
406
|
-
get styleMinWidth() {
|
|
407
|
-
return this.minWidth + 'px';
|
|
408
|
-
}
|
|
409
|
-
get styleMinHeight() {
|
|
410
|
-
return this.minHeight + 'px';
|
|
411
|
-
}
|
|
412
|
-
get stylePosition() {
|
|
413
|
-
return this.options.position;
|
|
414
|
-
}
|
|
415
|
-
get wrapperMaximizedClass() {
|
|
416
|
-
return this.state === 'maximized';
|
|
417
|
-
}
|
|
418
|
-
get wrapperMinimizedClass() {
|
|
419
|
-
return this.state === 'minimized';
|
|
420
|
-
}
|
|
421
|
-
/**
|
|
422
|
-
* @hidden
|
|
423
|
-
*/
|
|
424
|
-
onComponentFocus() {
|
|
425
|
-
this.renderer.addClass(this.el.nativeElement, 'k-focus');
|
|
426
|
-
this.setNextZIndex();
|
|
427
|
-
}
|
|
428
|
-
/**
|
|
429
|
-
* @hidden
|
|
430
|
-
*/
|
|
431
|
-
onComponentBlur() {
|
|
432
|
-
this.renderer.removeClass(this.el.nativeElement, 'k-focus');
|
|
433
|
-
}
|
|
434
|
-
subscribeEvents() {
|
|
435
|
-
if (!isDocumentAvailable()) {
|
|
436
|
-
return;
|
|
437
|
-
}
|
|
438
|
-
this.windowSubscription.add(this.service.focus.subscribe(() => {
|
|
439
|
-
this.el.nativeElement.focus();
|
|
440
|
-
}));
|
|
441
|
-
this.windowSubscription.add(this.service.dragStart.subscribe(() => {
|
|
442
|
-
this.draged = true;
|
|
443
|
-
this.ngZone.run(() => {
|
|
444
|
-
this.dragStart.emit();
|
|
445
|
-
});
|
|
446
|
-
}));
|
|
447
|
-
this.windowSubscription.add(this.service.dragEnd.subscribe(() => {
|
|
448
|
-
if (this.draged) {
|
|
449
|
-
this.draged = false;
|
|
450
|
-
this.ngZone.run(() => {
|
|
451
|
-
this.dragEnd.emit();
|
|
452
|
-
});
|
|
453
|
-
}
|
|
454
|
-
}));
|
|
455
|
-
this.windowSubscription.add(this.service.close.subscribe(() => {
|
|
456
|
-
this.close.emit();
|
|
457
|
-
}));
|
|
458
|
-
this.windowSubscription.add(this.service.resizeStart.subscribe(() => {
|
|
459
|
-
this.resized = true;
|
|
460
|
-
this.ngZone.run(() => {
|
|
461
|
-
this.resizeStart.emit();
|
|
462
|
-
});
|
|
463
|
-
}));
|
|
464
|
-
this.windowSubscription.add(this.service.resizeEnd.subscribe(() => {
|
|
465
|
-
if (this.resized) {
|
|
466
|
-
this.resized = false;
|
|
467
|
-
this.ngZone.run(() => {
|
|
468
|
-
this.resizeEnd.emit();
|
|
469
|
-
});
|
|
470
|
-
}
|
|
471
|
-
}));
|
|
472
|
-
this.windowSubscription.add(this.service.change.subscribe((ev) => {
|
|
473
|
-
OFFSET_STYLES.forEach((style) => {
|
|
474
|
-
if (isPresent(ev[style])) {
|
|
475
|
-
this.setStyle(style, ev[style]);
|
|
476
|
-
if (this.state !== 'maximized') {
|
|
477
|
-
const emitter = this[style + 'Change'];
|
|
478
|
-
if (emitter.observers.length) {
|
|
479
|
-
this.ngZone.run(() => {
|
|
480
|
-
emitter.emit(ev[style]);
|
|
481
|
-
});
|
|
482
|
-
}
|
|
483
|
-
}
|
|
484
|
-
}
|
|
485
|
-
});
|
|
486
|
-
}));
|
|
487
|
-
this.windowSubscription.add(this.service.stateChange.subscribe((state) => {
|
|
488
|
-
if (isPresent(this.service.lastAction)) {
|
|
489
|
-
this.updateAllOffset();
|
|
490
|
-
this.stateChange.emit(state);
|
|
491
|
-
}
|
|
492
|
-
}));
|
|
493
|
-
}
|
|
494
|
-
initDomEvents() {
|
|
495
|
-
if (!this.el) {
|
|
496
|
-
return;
|
|
497
|
-
}
|
|
498
|
-
this.ngZone.runOutsideAngular(() => {
|
|
499
|
-
this.domSubs.add(this.renderer.listen(this.el.nativeElement, 'keydown', (ev) => {
|
|
500
|
-
this.onKeyDown(ev);
|
|
501
|
-
}));
|
|
502
|
-
});
|
|
503
|
-
}
|
|
504
|
-
onKeyDown(event) {
|
|
505
|
-
this.navigation.process(event);
|
|
506
|
-
}
|
|
507
|
-
setServiceClasses(prevValue, value) {
|
|
508
|
-
const el = this.el.nativeElement;
|
|
509
|
-
if (prevValue) {
|
|
510
|
-
parseCSSClassNames(prevValue).forEach(className => {
|
|
511
|
-
this.renderer.removeClass(el, className);
|
|
512
|
-
});
|
|
513
|
-
}
|
|
514
|
-
if (value) {
|
|
515
|
-
parseCSSClassNames(value).forEach(className => {
|
|
516
|
-
this.renderer.addClass(el, className);
|
|
517
|
-
});
|
|
518
|
-
}
|
|
519
|
-
}
|
|
520
|
-
setNextZIndex() {
|
|
521
|
-
const currentZIndex = this.el.nativeElement.style['z-index'];
|
|
522
|
-
const nextPossibleZIndex = this.service.nextPossibleZIndex;
|
|
523
|
-
if (!currentZIndex || (nextPossibleZIndex - currentZIndex > 1)) {
|
|
524
|
-
this.renderer.setStyle(this.el.nativeElement, "z-index", this.service.nextZIndex);
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
setInitialOffset() {
|
|
528
|
-
if (this.state !== 'maximized') {
|
|
529
|
-
this.updateAllOffset();
|
|
530
|
-
if (!isPresent(this.left) || !isPresent(this.top)) {
|
|
531
|
-
this.service.center();
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
else {
|
|
535
|
-
const viewPort = this.service.windowViewPort;
|
|
536
|
-
this.setStyle('width', viewPort.width);
|
|
537
|
-
this.setStyle('height', viewPort.height);
|
|
538
|
-
this.setStyle('top', 0);
|
|
539
|
-
this.setStyle('left', 0);
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
|
-
updateAllOffset() {
|
|
543
|
-
OFFSET_STYLES.forEach((style) => {
|
|
544
|
-
if (isPresent(this[style])) {
|
|
545
|
-
this.setStyle(style, this[style]);
|
|
546
|
-
}
|
|
547
|
-
else {
|
|
548
|
-
this.removeStyle(style);
|
|
549
|
-
}
|
|
550
|
-
});
|
|
551
|
-
}
|
|
552
|
-
setStyle(style, value) {
|
|
553
|
-
this.renderer.setStyle(this.el.nativeElement, style, value + 'px');
|
|
554
|
-
}
|
|
555
|
-
removeStyle(style) {
|
|
556
|
-
this.renderer.removeStyle(this.el.nativeElement, style);
|
|
557
|
-
}
|
|
558
|
-
get options() {
|
|
559
|
-
return this.service.options;
|
|
560
|
-
}
|
|
561
|
-
setOption(style, value) {
|
|
562
|
-
if (typeof value !== 'number' && typeof value !== 'string') {
|
|
563
|
-
return;
|
|
564
|
-
}
|
|
565
|
-
const parsedValue = (typeof value === 'number') ? value : parseInt(value, 10);
|
|
566
|
-
this.options[style] = parsedValue;
|
|
567
|
-
this.service.setRestoreOption(style, parsedValue);
|
|
568
|
-
}
|
|
569
|
-
handleInitialFocus() {
|
|
570
|
-
const wrapper = this.el.nativeElement;
|
|
571
|
-
if (this.autoFocusedElement) {
|
|
572
|
-
const initiallyFocusedElement = wrapper.querySelector(this.autoFocusedElement);
|
|
573
|
-
if (initiallyFocusedElement) {
|
|
574
|
-
initiallyFocusedElement.focus({ preventScroll: true });
|
|
575
|
-
}
|
|
576
|
-
}
|
|
577
|
-
else {
|
|
578
|
-
this.focus();
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
/**
|
|
582
|
-
* @hidden
|
|
583
|
-
*/
|
|
584
|
-
generateTitleId() {
|
|
585
|
-
return 'kendo-window-title-' + Math.ceil(Math.random() * 1000000).toString();
|
|
586
|
-
}
|
|
587
|
-
handleThemeColorClass(previousValue, currentValue) {
|
|
588
|
-
const wrapper = this.el.nativeElement;
|
|
589
|
-
if (previousValue) {
|
|
590
|
-
const classToRemove = `k-window-${previousValue}`;
|
|
591
|
-
this.renderer.removeClass(wrapper, classToRemove);
|
|
592
|
-
}
|
|
593
|
-
if (currentValue) {
|
|
594
|
-
const classToAdd = `k-window-${currentValue}`;
|
|
595
|
-
this.renderer.addClass(wrapper, classToAdd);
|
|
596
|
-
}
|
|
597
|
-
}
|
|
598
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WindowComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.DragResizeService }, { token: i2.NavigationService }, { token: i0.NgZone }, { token: i3.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
599
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: WindowComponent, isStandalone: true, selector: "kendo-window", inputs: { autoFocusedElement: "autoFocusedElement", title: "title", draggable: "draggable", resizable: "resizable", themeColor: "themeColor", keepContent: "keepContent", state: "state", minWidth: "minWidth", minHeight: "minHeight", width: "width", height: "height", top: "top", left: "left" }, outputs: { dragStart: "dragStart", dragEnd: "dragEnd", resizeStart: "resizeStart", resizeEnd: "resizeEnd", close: "close", widthChange: "widthChange", heightChange: "heightChange", topChange: "topChange", leftChange: "leftChange", stateChange: "stateChange" }, host: { listeners: { "focus": "onComponentFocus()", "blur": "onComponentBlur()" }, properties: { "attr.tabIndex": "this.tabIndex", "attr.role": "this.role", "class.k-window": "this.hostClass", "attr.dir": "this.dir", "style.minWidth": "this.styleMinWidth", "style.minHeight": "this.styleMinHeight", "style.position": "this.stylePosition", "class.k-window-maximized": "this.wrapperMaximizedClass", "class.k-window-minimized": "this.wrapperMinimizedClass" } }, providers: [
|
|
600
|
-
DragResizeService,
|
|
601
|
-
NavigationService,
|
|
602
|
-
LocalizationService,
|
|
603
|
-
{
|
|
604
|
-
provide: L10N_PREFIX,
|
|
605
|
-
useValue: 'kendo.window'
|
|
606
|
-
}
|
|
607
|
-
], queries: [{ propertyName: "titleBarContent", first: true, predicate: WindowTitleBarComponent, descendants: true }], viewQueries: [{ propertyName: "titleBarView", first: true, predicate: WindowTitleBarComponent, descendants: true }, { propertyName: "resizeHandles", predicate: ResizeHandleDirective, descendants: true }], exportAs: ["kendoWindow"], usesOnChanges: true, ngImport: i0, template: `
|
|
608
|
-
<ng-container kendoWindowLocalizedMessages
|
|
609
|
-
i18n-closeTitle="kendo.window.closeTitle|The title of the close button"
|
|
610
|
-
closeTitle="Close"
|
|
611
|
-
|
|
612
|
-
i18n-restoreTitle="kendo.window.restoreTitle|The title of the restore button"
|
|
613
|
-
restoreTitle="Restore"
|
|
614
|
-
|
|
615
|
-
i18n-maximizeTitle="kendo.window.maximizeTitle|The title of the maximize button"
|
|
616
|
-
maximizeTitle="Maximize"
|
|
617
|
-
|
|
618
|
-
i18n-minimizeTitle="kendo.window.minimizeTitle|The title of the minimize button"
|
|
619
|
-
minimizeTitle="Minimize"
|
|
620
|
-
>
|
|
621
|
-
<ng-container>
|
|
622
|
-
|
|
623
|
-
@if (showDefaultTitleBar) {
|
|
624
|
-
<kendo-window-titlebar [template]="titleBarTemplate" [id]="titleId">
|
|
625
|
-
<span class="k-window-title">{{ title }}</span>
|
|
626
|
-
<div class="k-window-titlebar-actions">
|
|
627
|
-
<button kendoWindowMinimizeAction [attr.title]="minimizeButtonTitle" [attr.aria-label]="minimizeButtonTitle"></button>
|
|
628
|
-
<button kendoWindowMaximizeAction [attr.title]="maximizeButtonTitle" [attr.aria-label]="maximizeButtonTitle"></button>
|
|
629
|
-
<button kendoWindowRestoreAction [attr.title]="restoreButtonTitle" [attr.aria-label]="restoreButtonTitle"></button>
|
|
630
|
-
<button kendoWindowCloseAction [attr.title]="closeButtonTitle" [attr.aria-label]="closeButtonTitle"></button>
|
|
631
|
-
</div>
|
|
632
|
-
</kendo-window-titlebar>
|
|
633
|
-
}
|
|
634
|
-
@if (!showDefaultTitleBar) {
|
|
635
|
-
<ng-content select="kendo-window-titlebar"></ng-content>
|
|
636
|
-
}
|
|
637
|
-
|
|
638
|
-
@if (state !== 'minimized' || keepContent) {
|
|
639
|
-
<div
|
|
640
|
-
[hidden]="state === 'minimized' && keepContent"
|
|
641
|
-
class="k-window-content"
|
|
642
|
-
>
|
|
643
|
-
@if (!contentTemplate) {
|
|
644
|
-
<ng-content></ng-content>
|
|
645
|
-
}
|
|
646
|
-
@if (contentTemplate) {
|
|
647
|
-
<ng-template [ngTemplateOutlet]="contentTemplate"></ng-template>
|
|
648
|
-
}
|
|
649
|
-
</div>
|
|
650
|
-
}
|
|
651
|
-
|
|
652
|
-
@if (resizable) {
|
|
653
|
-
@for (dir of resizeDirections; track dir) {
|
|
654
|
-
<div
|
|
655
|
-
[direction]="dir"
|
|
656
|
-
kendoWindowResizeHandle
|
|
657
|
-
kendoDraggable>
|
|
658
|
-
</div>
|
|
659
|
-
}
|
|
660
|
-
}
|
|
661
|
-
|
|
662
|
-
@if (showLicenseWatermark) {
|
|
663
|
-
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
664
|
-
}
|
|
665
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoDialogLocalizedMessages],\n [kendoWindowLocalizedMessages],\n [kendoDialogTitleBarLocalizedMessages]\n " }, { kind: "component", type: WindowTitleBarComponent, selector: "kendo-window-titlebar", inputs: ["template", "id"] }, { kind: "component", type: WindowMinimizeActionDirective, selector: "button[kendoWindowMinimizeAction]", inputs: ["window"], exportAs: ["kendoWindowMinimizeAction"] }, { kind: "component", type: WindowMaximizeActionDirective, selector: "button[kendoWindowMaximizeAction]", inputs: ["window"], exportAs: ["kendoWindowMaximizeAction"] }, { kind: "component", type: WindowRestoreActionDirective, selector: "button[kendoWindowRestoreAction]", inputs: ["window"], exportAs: ["kendoWindowRestoreAction"] }, { kind: "component", type: WindowCloseActionDirective, selector: "button[kendoWindowCloseAction]", inputs: ["window"], exportAs: ["kendoWindowCloseAction"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ResizeHandleDirective, selector: "[kendoWindowResizeHandle]", inputs: ["direction"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }] });
|
|
666
|
-
}
|
|
667
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WindowComponent, decorators: [{
|
|
668
|
-
type: Component,
|
|
669
|
-
args: [{
|
|
670
|
-
exportAs: 'kendoWindow',
|
|
671
|
-
providers: [
|
|
672
|
-
DragResizeService,
|
|
673
|
-
NavigationService,
|
|
674
|
-
LocalizationService,
|
|
675
|
-
{
|
|
676
|
-
provide: L10N_PREFIX,
|
|
677
|
-
useValue: 'kendo.window'
|
|
678
|
-
}
|
|
679
|
-
],
|
|
680
|
-
selector: 'kendo-window',
|
|
681
|
-
template: `
|
|
682
|
-
<ng-container kendoWindowLocalizedMessages
|
|
683
|
-
i18n-closeTitle="kendo.window.closeTitle|The title of the close button"
|
|
684
|
-
closeTitle="Close"
|
|
685
|
-
|
|
686
|
-
i18n-restoreTitle="kendo.window.restoreTitle|The title of the restore button"
|
|
687
|
-
restoreTitle="Restore"
|
|
688
|
-
|
|
689
|
-
i18n-maximizeTitle="kendo.window.maximizeTitle|The title of the maximize button"
|
|
690
|
-
maximizeTitle="Maximize"
|
|
691
|
-
|
|
692
|
-
i18n-minimizeTitle="kendo.window.minimizeTitle|The title of the minimize button"
|
|
693
|
-
minimizeTitle="Minimize"
|
|
694
|
-
>
|
|
695
|
-
<ng-container>
|
|
696
|
-
|
|
697
|
-
@if (showDefaultTitleBar) {
|
|
698
|
-
<kendo-window-titlebar [template]="titleBarTemplate" [id]="titleId">
|
|
699
|
-
<span class="k-window-title">{{ title }}</span>
|
|
700
|
-
<div class="k-window-titlebar-actions">
|
|
701
|
-
<button kendoWindowMinimizeAction [attr.title]="minimizeButtonTitle" [attr.aria-label]="minimizeButtonTitle"></button>
|
|
702
|
-
<button kendoWindowMaximizeAction [attr.title]="maximizeButtonTitle" [attr.aria-label]="maximizeButtonTitle"></button>
|
|
703
|
-
<button kendoWindowRestoreAction [attr.title]="restoreButtonTitle" [attr.aria-label]="restoreButtonTitle"></button>
|
|
704
|
-
<button kendoWindowCloseAction [attr.title]="closeButtonTitle" [attr.aria-label]="closeButtonTitle"></button>
|
|
705
|
-
</div>
|
|
706
|
-
</kendo-window-titlebar>
|
|
707
|
-
}
|
|
708
|
-
@if (!showDefaultTitleBar) {
|
|
709
|
-
<ng-content select="kendo-window-titlebar"></ng-content>
|
|
710
|
-
}
|
|
711
|
-
|
|
712
|
-
@if (state !== 'minimized' || keepContent) {
|
|
713
|
-
<div
|
|
714
|
-
[hidden]="state === 'minimized' && keepContent"
|
|
715
|
-
class="k-window-content"
|
|
716
|
-
>
|
|
717
|
-
@if (!contentTemplate) {
|
|
718
|
-
<ng-content></ng-content>
|
|
719
|
-
}
|
|
720
|
-
@if (contentTemplate) {
|
|
721
|
-
<ng-template [ngTemplateOutlet]="contentTemplate"></ng-template>
|
|
722
|
-
}
|
|
723
|
-
</div>
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
@if (resizable) {
|
|
727
|
-
@for (dir of resizeDirections; track dir) {
|
|
728
|
-
<div
|
|
729
|
-
[direction]="dir"
|
|
730
|
-
kendoWindowResizeHandle
|
|
731
|
-
kendoDraggable>
|
|
732
|
-
</div>
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
|
-
|
|
736
|
-
@if (showLicenseWatermark) {
|
|
737
|
-
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
738
|
-
}
|
|
739
|
-
`,
|
|
740
|
-
standalone: true,
|
|
741
|
-
imports: [LocalizedMessagesDirective, WindowTitleBarComponent, WindowMinimizeActionDirective, WindowMaximizeActionDirective, WindowRestoreActionDirective, WindowCloseActionDirective, NgTemplateOutlet, ResizeHandleDirective, DraggableDirective, WatermarkOverlayComponent]
|
|
742
|
-
}]
|
|
743
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.DragResizeService }, { type: i2.NavigationService }, { type: i0.NgZone }, { type: i3.LocalizationService }], propDecorators: { autoFocusedElement: [{
|
|
744
|
-
type: Input
|
|
745
|
-
}], title: [{
|
|
746
|
-
type: Input
|
|
747
|
-
}], draggable: [{
|
|
748
|
-
type: Input
|
|
749
|
-
}], resizable: [{
|
|
750
|
-
type: Input
|
|
751
|
-
}], themeColor: [{
|
|
752
|
-
type: Input
|
|
753
|
-
}], keepContent: [{
|
|
754
|
-
type: Input
|
|
755
|
-
}], state: [{
|
|
756
|
-
type: Input
|
|
757
|
-
}], minWidth: [{
|
|
758
|
-
type: Input
|
|
759
|
-
}], minHeight: [{
|
|
760
|
-
type: Input
|
|
761
|
-
}], width: [{
|
|
762
|
-
type: Input
|
|
763
|
-
}], height: [{
|
|
764
|
-
type: Input
|
|
765
|
-
}], top: [{
|
|
766
|
-
type: Input
|
|
767
|
-
}], left: [{
|
|
768
|
-
type: Input
|
|
769
|
-
}], dragStart: [{
|
|
770
|
-
type: Output
|
|
771
|
-
}], dragEnd: [{
|
|
772
|
-
type: Output
|
|
773
|
-
}], resizeStart: [{
|
|
774
|
-
type: Output
|
|
775
|
-
}], resizeEnd: [{
|
|
776
|
-
type: Output
|
|
777
|
-
}], close: [{
|
|
778
|
-
type: Output
|
|
779
|
-
}], widthChange: [{
|
|
780
|
-
type: Output
|
|
781
|
-
}], heightChange: [{
|
|
782
|
-
type: Output
|
|
783
|
-
}], topChange: [{
|
|
784
|
-
type: Output
|
|
785
|
-
}], leftChange: [{
|
|
786
|
-
type: Output
|
|
787
|
-
}], stateChange: [{
|
|
788
|
-
type: Output
|
|
789
|
-
}], tabIndex: [{
|
|
790
|
-
type: HostBinding,
|
|
791
|
-
args: ['attr.tabIndex']
|
|
792
|
-
}], role: [{
|
|
793
|
-
type: HostBinding,
|
|
794
|
-
args: ['attr.role']
|
|
795
|
-
}], hostClass: [{
|
|
796
|
-
type: HostBinding,
|
|
797
|
-
args: ['class.k-window']
|
|
798
|
-
}], dir: [{
|
|
799
|
-
type: HostBinding,
|
|
800
|
-
args: ['attr.dir']
|
|
801
|
-
}], titleBarView: [{
|
|
802
|
-
type: ViewChild,
|
|
803
|
-
args: [WindowTitleBarComponent, { static: false }]
|
|
804
|
-
}], titleBarContent: [{
|
|
805
|
-
type: ContentChild,
|
|
806
|
-
args: [WindowTitleBarComponent, { static: false }]
|
|
807
|
-
}], resizeHandles: [{
|
|
808
|
-
type: ViewChildren,
|
|
809
|
-
args: [ResizeHandleDirective]
|
|
810
|
-
}], styleMinWidth: [{
|
|
811
|
-
type: HostBinding,
|
|
812
|
-
args: ['style.minWidth']
|
|
813
|
-
}], styleMinHeight: [{
|
|
814
|
-
type: HostBinding,
|
|
815
|
-
args: ['style.minHeight']
|
|
816
|
-
}], stylePosition: [{
|
|
817
|
-
type: HostBinding,
|
|
818
|
-
args: ['style.position']
|
|
819
|
-
}], wrapperMaximizedClass: [{
|
|
820
|
-
type: HostBinding,
|
|
821
|
-
args: ['class.k-window-maximized']
|
|
822
|
-
}], wrapperMinimizedClass: [{
|
|
823
|
-
type: HostBinding,
|
|
824
|
-
args: ['class.k-window-minimized']
|
|
825
|
-
}], onComponentFocus: [{
|
|
826
|
-
type: HostListener,
|
|
827
|
-
args: ['focus']
|
|
828
|
-
}], onComponentBlur: [{
|
|
829
|
-
type: HostListener,
|
|
830
|
-
args: ['blur']
|
|
831
|
-
}] } });
|