@acorex/core 22.1.0-next.31 → 22.1.0-next.33
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/constants/README.md +7 -1
- package/fesm2022/acorex-core-components.mjs +3 -3
- package/fesm2022/acorex-core-config.mjs +3 -3
- package/fesm2022/acorex-core-constants.mjs +27809 -1
- package/fesm2022/acorex-core-constants.mjs.map +1 -1
- package/fesm2022/acorex-core-date-time.mjs +55 -41
- package/fesm2022/acorex-core-date-time.mjs.map +1 -1
- package/fesm2022/acorex-core-events.mjs +3 -3
- package/fesm2022/acorex-core-file.mjs +53 -46
- package/fesm2022/acorex-core-file.mjs.map +1 -1
- package/fesm2022/acorex-core-format.mjs +19 -19
- package/fesm2022/acorex-core-full-screen.mjs +232 -59
- package/fesm2022/acorex-core-full-screen.mjs.map +1 -1
- package/fesm2022/acorex-core-icon.mjs +3 -3
- package/fesm2022/acorex-core-image.mjs +3 -3
- package/fesm2022/acorex-core-locale.mjs +13 -10
- package/fesm2022/acorex-core-locale.mjs.map +1 -1
- package/fesm2022/acorex-core-network.mjs +3 -3
- package/fesm2022/acorex-core-pipes.mjs +3 -3
- package/fesm2022/acorex-core-platform.mjs +4 -3
- package/fesm2022/acorex-core-platform.mjs.map +1 -1
- package/fesm2022/acorex-core-storage.mjs +9 -9
- package/fesm2022/acorex-core-theme-builder.mjs +1329 -0
- package/fesm2022/acorex-core-theme-builder.mjs.map +1 -0
- package/fesm2022/acorex-core-translation.mjs +36 -24
- package/fesm2022/acorex-core-translation.mjs.map +1 -1
- package/fesm2022/acorex-core-utils.mjs +256 -80
- package/fesm2022/acorex-core-utils.mjs.map +1 -1
- package/fesm2022/acorex-core-validation.mjs +40 -40
- package/fesm2022/acorex-core-z-index.mjs +3 -3
- package/i18n/en-AU/acorex.json +1101 -0
- package/i18n/en-AU/common.json +290 -0
- package/i18n/en-US/acorex.json +1101 -0
- package/i18n/en-US/common.json +285 -0
- package/i18n/fa-IR/acorex.json +1101 -0
- package/i18n/fa-IR/common.json +284 -0
- package/package.json +8 -2
- package/theme-builder/README.md +53 -0
- package/types/acorex-core-components.d.ts +1 -1
- package/types/acorex-core-config.d.ts +1 -1
- package/types/acorex-core-constants.d.ts +58 -2
- package/types/acorex-core-date-time.d.ts +9 -4
- package/types/acorex-core-events.d.ts +1 -1
- package/types/acorex-core-file.d.ts +12 -11
- package/types/acorex-core-format.d.ts +3 -3
- package/types/acorex-core-full-screen.d.ts +67 -18
- package/types/acorex-core-icon.d.ts +1 -1
- package/types/acorex-core-image.d.ts +1 -1
- package/types/acorex-core-locale.d.ts +4 -2
- package/types/acorex-core-network.d.ts +1 -1
- package/types/acorex-core-platform.d.ts +1 -1
- package/types/acorex-core-storage.d.ts +3 -3
- package/types/acorex-core-theme-builder.d.ts +42 -0
- package/types/acorex-core-translation.d.ts +12 -6
- package/types/acorex-core-utils.d.ts +54 -16
- package/types/acorex-core-validation.d.ts +12 -12
- package/types/acorex-core-z-index.d.ts +1 -1
|
@@ -1,128 +1,302 @@
|
|
|
1
1
|
import { AXZIndexService } from '@acorex/core/z-index';
|
|
2
|
+
import { DOCUMENT, isPlatformBrowser } from '@angular/common';
|
|
2
3
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { inject, signal, Injectable } from '@angular/core';
|
|
4
|
+
import { inject, PLATFORM_ID, DestroyRef, signal, Injectable } from '@angular/core';
|
|
4
5
|
|
|
5
6
|
class AXFullScreenService {
|
|
6
7
|
constructor() {
|
|
7
8
|
this.zIndexService = inject(AXZIndexService);
|
|
9
|
+
this.document = inject(DOCUMENT);
|
|
10
|
+
this.platformId = inject(PLATFORM_ID);
|
|
11
|
+
this.destroyRef = inject(DestroyRef);
|
|
8
12
|
/**
|
|
9
|
-
* Current fullscreen state
|
|
13
|
+
* Current fullscreen state.
|
|
10
14
|
*/
|
|
11
15
|
this.isFullscreenState = signal(false, /* @ts-ignore */
|
|
12
16
|
...(ngDevMode ? [{ debugName: "isFullscreenState" }] : /* istanbul ignore next */ []));
|
|
13
17
|
/**
|
|
14
|
-
*
|
|
18
|
+
* Active fullscreen element.
|
|
19
|
+
*/
|
|
20
|
+
this.activeElementState = signal(null, /* @ts-ignore */
|
|
21
|
+
...(ngDevMode ? [{ debugName: "activeElementState" }] : /* istanbul ignore next */ []));
|
|
22
|
+
/**
|
|
23
|
+
* Active fullscreen mode.
|
|
24
|
+
*/
|
|
25
|
+
this.currentMode = null;
|
|
26
|
+
/**
|
|
27
|
+
* Original element styles to restore (overlay mode).
|
|
15
28
|
*/
|
|
16
29
|
this.originalStyles = {};
|
|
17
30
|
/**
|
|
18
|
-
* Original parent element reference
|
|
31
|
+
* Original parent element reference (overlay mode).
|
|
19
32
|
*/
|
|
20
33
|
this.originalParent = null;
|
|
21
34
|
/**
|
|
22
|
-
*
|
|
35
|
+
* Original next sibling so overlay restore keeps DOM order (overlay mode).
|
|
36
|
+
*/
|
|
37
|
+
this.originalNextSibling = null;
|
|
38
|
+
/**
|
|
39
|
+
* Fullscreen container element (overlay mode).
|
|
23
40
|
*/
|
|
24
41
|
this.fullscreenContainer = null;
|
|
25
42
|
/**
|
|
26
|
-
* Z-index token for
|
|
43
|
+
* Z-index token for overlay fullscreen.
|
|
27
44
|
*/
|
|
28
45
|
this.zToken = null;
|
|
46
|
+
this.fullscreenChangeHandler = () => {
|
|
47
|
+
if (!isPlatformBrowser(this.platformId)) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (this.currentMode !== 'browser') {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
const activeElement = this.activeElementState();
|
|
54
|
+
if (!activeElement) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const fullscreenElement = this.getFullscreenElement();
|
|
58
|
+
if (fullscreenElement !== activeElement) {
|
|
59
|
+
this.clearBrowserState();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Read-only signal of the active fullscreen element.
|
|
64
|
+
*/
|
|
65
|
+
this.activeElement = this.activeElementState.asReadonly();
|
|
66
|
+
/**
|
|
67
|
+
* Read-only signal of the fullscreen state.
|
|
68
|
+
*/
|
|
69
|
+
this.fullscreen = this.isFullscreenState.asReadonly();
|
|
70
|
+
if (isPlatformBrowser(this.platformId)) {
|
|
71
|
+
this.document.addEventListener('fullscreenchange', this.fullscreenChangeHandler);
|
|
72
|
+
this.document.addEventListener('webkitfullscreenchange', this.fullscreenChangeHandler);
|
|
73
|
+
this.destroyRef.onDestroy(() => {
|
|
74
|
+
this.document.removeEventListener('fullscreenchange', this.fullscreenChangeHandler);
|
|
75
|
+
this.document.removeEventListener('webkitfullscreenchange', this.fullscreenChangeHandler);
|
|
76
|
+
const activeElement = this.activeElementState();
|
|
77
|
+
if (activeElement) {
|
|
78
|
+
this.exit(activeElement);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
29
82
|
}
|
|
30
83
|
/**
|
|
31
|
-
* Toggle fullscreen state
|
|
84
|
+
* Toggle fullscreen state.
|
|
32
85
|
*/
|
|
33
|
-
toggle(element) {
|
|
34
|
-
if (this.
|
|
86
|
+
toggle(element, mode = 'overlay') {
|
|
87
|
+
if (this.isActive(element)) {
|
|
35
88
|
this.exit(element);
|
|
36
89
|
}
|
|
37
90
|
else {
|
|
38
|
-
this.enter(element);
|
|
91
|
+
this.enter(element, mode);
|
|
39
92
|
}
|
|
40
93
|
}
|
|
41
94
|
/**
|
|
42
|
-
* Enter fullscreen mode
|
|
95
|
+
* Enter fullscreen mode.
|
|
96
|
+
*/
|
|
97
|
+
enter(element, mode = 'overlay') {
|
|
98
|
+
if (!element || this.isFullscreenState()) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (mode === 'browser') {
|
|
102
|
+
this.enterBrowser(element);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
this.enterOverlay(element);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Exit fullscreen mode.
|
|
109
|
+
*/
|
|
110
|
+
exit(element) {
|
|
111
|
+
if (!this.isFullscreenState()) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const activeElement = this.activeElementState();
|
|
115
|
+
const targetElement = element ?? activeElement;
|
|
116
|
+
if (!targetElement || activeElement !== targetElement) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (this.currentMode === 'browser') {
|
|
120
|
+
this.exitBrowser(targetElement);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.exitOverlay(targetElement);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Check whether any element is in fullscreen mode.
|
|
127
|
+
*/
|
|
128
|
+
isFullscreen() {
|
|
129
|
+
return this.isFullscreenState();
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Check whether the given element is the active fullscreen element.
|
|
133
|
+
*/
|
|
134
|
+
isActive(element) {
|
|
135
|
+
return this.activeElementState() === element && this.isFullscreenState();
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Returns the currently active fullscreen element, if any.
|
|
139
|
+
*/
|
|
140
|
+
getActiveElement() {
|
|
141
|
+
return this.activeElementState();
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Returns the active fullscreen mode, if any.
|
|
43
145
|
*/
|
|
44
|
-
|
|
45
|
-
|
|
146
|
+
getActiveMode() {
|
|
147
|
+
return this.currentMode;
|
|
148
|
+
}
|
|
149
|
+
enterOverlay(element) {
|
|
150
|
+
if (!isPlatformBrowser(this.platformId)) {
|
|
46
151
|
return;
|
|
152
|
+
}
|
|
47
153
|
try {
|
|
48
|
-
// Store original styles & parent
|
|
49
154
|
this.storeOriginalStyles(element);
|
|
50
155
|
this.originalParent = element.parentElement;
|
|
51
|
-
|
|
156
|
+
this.originalNextSibling = element.nextSibling;
|
|
52
157
|
this.zToken = this.zIndexService.acquire();
|
|
53
|
-
|
|
54
|
-
const container = document.createElement('div');
|
|
158
|
+
const container = this.document.createElement('div');
|
|
55
159
|
container.style.position = 'fixed';
|
|
56
160
|
container.style.top = '0';
|
|
57
161
|
container.style.left = '0';
|
|
58
162
|
container.style.width = '100vw';
|
|
59
163
|
container.style.height = '100vh';
|
|
60
164
|
container.style.zIndex = String(this.zToken.zIndex);
|
|
165
|
+
container.style.backgroundColor = '#ffffff';
|
|
61
166
|
container.style.overflow = 'auto';
|
|
62
|
-
// Move element into container
|
|
63
167
|
container.appendChild(element);
|
|
64
|
-
// Apply fullscreen styles to element
|
|
65
168
|
element.style.position = 'relative';
|
|
66
169
|
element.style.width = '100%';
|
|
67
170
|
element.style.height = '100%';
|
|
68
171
|
element.style.margin = '0';
|
|
69
172
|
element.style.padding = '0';
|
|
70
|
-
|
|
71
|
-
document.body.
|
|
72
|
-
// Prevent body scroll
|
|
73
|
-
document.body.style.overflow = 'hidden';
|
|
173
|
+
this.document.body.appendChild(container);
|
|
174
|
+
this.document.body.style.overflow = 'hidden';
|
|
74
175
|
this.fullscreenContainer = container;
|
|
176
|
+
this.currentMode = 'overlay';
|
|
177
|
+
this.activeElementState.set(element);
|
|
75
178
|
this.isFullscreenState.set(true);
|
|
76
179
|
}
|
|
77
180
|
catch (error) {
|
|
78
|
-
console.error('Error entering fullscreen:', error);
|
|
181
|
+
console.error('Error entering overlay fullscreen:', error);
|
|
79
182
|
this.restoreOriginalStyles(element);
|
|
183
|
+
this.cleanupOverlayResources();
|
|
80
184
|
}
|
|
81
185
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
*/
|
|
85
|
-
exit(element) {
|
|
86
|
-
if (!this.isFullscreenState())
|
|
186
|
+
exitOverlay(element) {
|
|
187
|
+
if (!isPlatformBrowser(this.platformId)) {
|
|
87
188
|
return;
|
|
189
|
+
}
|
|
88
190
|
try {
|
|
89
|
-
document.body.style.overflow = '';
|
|
191
|
+
this.document.body.style.overflow = '';
|
|
90
192
|
if (this.fullscreenContainer) {
|
|
91
193
|
if (element.parentElement === this.fullscreenContainer) {
|
|
92
194
|
this.fullscreenContainer.removeChild(element);
|
|
93
195
|
}
|
|
94
196
|
if (this.originalParent?.isConnected && !this.originalParent.contains(element)) {
|
|
95
|
-
this.
|
|
197
|
+
this.restoreOriginalPosition(element);
|
|
96
198
|
}
|
|
97
|
-
if (this.fullscreenContainer.parentNode === document.body) {
|
|
98
|
-
document.body.removeChild(this.fullscreenContainer);
|
|
199
|
+
if (this.fullscreenContainer.parentNode === this.document.body) {
|
|
200
|
+
this.document.body.removeChild(this.fullscreenContainer);
|
|
99
201
|
}
|
|
100
202
|
}
|
|
101
|
-
this.fullscreenContainer = null;
|
|
102
|
-
this.originalParent = null;
|
|
103
|
-
this.zIndexService.release(this.zToken);
|
|
104
|
-
this.zToken = null;
|
|
105
203
|
this.restoreOriginalStyles(element);
|
|
106
|
-
this.
|
|
204
|
+
this.cleanupOverlayResources();
|
|
205
|
+
this.clearActiveState();
|
|
107
206
|
}
|
|
108
207
|
catch (error) {
|
|
109
|
-
console.error('Error exiting fullscreen:', error);
|
|
110
|
-
this.
|
|
111
|
-
this.
|
|
112
|
-
this.zIndexService.release(this.zToken);
|
|
113
|
-
this.zToken = null;
|
|
114
|
-
this.isFullscreenState.set(false);
|
|
208
|
+
console.error('Error exiting overlay fullscreen:', error);
|
|
209
|
+
this.cleanupOverlayResources();
|
|
210
|
+
this.clearActiveState();
|
|
115
211
|
}
|
|
116
212
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
213
|
+
enterBrowser(element) {
|
|
214
|
+
if (!isPlatformBrowser(this.platformId)) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
const requestFullscreen = this.getRequestFullscreen(element);
|
|
218
|
+
if (!requestFullscreen) {
|
|
219
|
+
console.error('Browser fullscreen API is not supported in this environment.');
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
void requestFullscreen()
|
|
223
|
+
.then(() => {
|
|
224
|
+
if (this.getFullscreenElement() !== element) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
this.currentMode = 'browser';
|
|
228
|
+
this.activeElementState.set(element);
|
|
229
|
+
this.isFullscreenState.set(true);
|
|
230
|
+
})
|
|
231
|
+
.catch((error) => {
|
|
232
|
+
console.error('Error entering browser fullscreen:', error);
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
exitBrowser(element) {
|
|
236
|
+
if (!isPlatformBrowser(this.platformId)) {
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
const fullscreenElement = this.getFullscreenElement();
|
|
240
|
+
if (fullscreenElement === element) {
|
|
241
|
+
const exitFullscreen = this.getExitFullscreen();
|
|
242
|
+
if (exitFullscreen) {
|
|
243
|
+
void exitFullscreen().catch((error) => {
|
|
244
|
+
console.error('Error exiting browser fullscreen:', error);
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
this.clearBrowserState();
|
|
249
|
+
}
|
|
250
|
+
clearBrowserState() {
|
|
251
|
+
this.clearActiveState();
|
|
252
|
+
}
|
|
253
|
+
clearActiveState() {
|
|
254
|
+
this.currentMode = null;
|
|
255
|
+
this.activeElementState.set(null);
|
|
256
|
+
this.isFullscreenState.set(false);
|
|
257
|
+
}
|
|
258
|
+
cleanupOverlayResources() {
|
|
259
|
+
this.fullscreenContainer = null;
|
|
260
|
+
this.originalParent = null;
|
|
261
|
+
this.originalNextSibling = null;
|
|
262
|
+
this.zIndexService.release(this.zToken);
|
|
263
|
+
this.zToken = null;
|
|
264
|
+
this.originalStyles = {};
|
|
265
|
+
}
|
|
266
|
+
restoreOriginalPosition(element) {
|
|
267
|
+
const parent = this.originalParent;
|
|
268
|
+
if (!parent) {
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
const nextSibling = this.originalNextSibling;
|
|
272
|
+
if (nextSibling && nextSibling.parentNode === parent) {
|
|
273
|
+
parent.insertBefore(element, nextSibling);
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
parent.appendChild(element);
|
|
277
|
+
}
|
|
278
|
+
getFullscreenElement() {
|
|
279
|
+
return this.document.fullscreenElement ?? this.document.webkitFullscreenElement ?? null;
|
|
280
|
+
}
|
|
281
|
+
getRequestFullscreen(element) {
|
|
282
|
+
const target = element;
|
|
283
|
+
if (typeof target.requestFullscreen === 'function') {
|
|
284
|
+
return () => target.requestFullscreen();
|
|
285
|
+
}
|
|
286
|
+
if (typeof target.webkitRequestFullscreen === 'function') {
|
|
287
|
+
return () => target.webkitRequestFullscreen();
|
|
288
|
+
}
|
|
289
|
+
return null;
|
|
290
|
+
}
|
|
291
|
+
getExitFullscreen() {
|
|
292
|
+
if (typeof this.document.exitFullscreen === 'function') {
|
|
293
|
+
return () => this.document.exitFullscreen();
|
|
294
|
+
}
|
|
295
|
+
if (typeof this.document.webkitExitFullscreen === 'function') {
|
|
296
|
+
return () => this.document.webkitExitFullscreen();
|
|
297
|
+
}
|
|
298
|
+
return null;
|
|
122
299
|
}
|
|
123
|
-
/**
|
|
124
|
-
* Store original computed styles
|
|
125
|
-
*/
|
|
126
300
|
storeOriginalStyles(element) {
|
|
127
301
|
const computed = window.getComputedStyle(element);
|
|
128
302
|
this.originalStyles = {
|
|
@@ -137,29 +311,28 @@ class AXFullScreenService {
|
|
|
137
311
|
padding: computed.padding,
|
|
138
312
|
};
|
|
139
313
|
}
|
|
140
|
-
/**
|
|
141
|
-
* Restore original styles
|
|
142
|
-
*/
|
|
143
314
|
restoreOriginalStyles(element) {
|
|
144
315
|
Object.entries(this.originalStyles).forEach(([key, value]) => {
|
|
145
316
|
if (value) {
|
|
317
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
146
318
|
element.style[key] = value;
|
|
147
319
|
}
|
|
148
320
|
else {
|
|
321
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
149
322
|
element.style[key] = '';
|
|
150
323
|
}
|
|
151
324
|
});
|
|
152
325
|
this.originalStyles = {};
|
|
153
326
|
}
|
|
154
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
155
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.
|
|
327
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXFullScreenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
328
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXFullScreenService, providedIn: 'root' }); }
|
|
156
329
|
}
|
|
157
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
330
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXFullScreenService, decorators: [{
|
|
158
331
|
type: Injectable,
|
|
159
332
|
args: [{
|
|
160
333
|
providedIn: 'root',
|
|
161
334
|
}]
|
|
162
|
-
}] });
|
|
335
|
+
}], ctorParameters: () => [] });
|
|
163
336
|
|
|
164
337
|
/**
|
|
165
338
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-core-full-screen.mjs","sources":["../../../../packages/core/full-screen/src/lib/full-screen.service.ts","../../../../packages/core/full-screen/src/acorex-core-full-screen.ts"],"sourcesContent":["import { AXZIndexService, AXZToken } from '@acorex/core/z-index';\nimport { inject, Injectable, signal } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXFullScreenService {\n private readonly zIndexService = inject(AXZIndexService);\n\n /**\n * Current fullscreen state\n */\n private readonly isFullscreenState = signal<boolean>(false);\n\n /**\n * Original element styles to restore\n */\n private originalStyles: Partial<CSSStyleDeclaration> = {};\n\n /**\n * Original parent element reference\n */\n private originalParent: HTMLElement | null = null;\n\n /**\n * Fullscreen container element\n */\n private fullscreenContainer: HTMLElement | null = null;\n\n /**\n * Z-index token for this fullscreen instance\n */\n private zToken: AXZToken | null = null;\n\n /**\n * Toggle fullscreen state\n */\n toggle(element: HTMLElement): void {\n if (this.isFullscreenState()) {\n this.exit(element);\n } else {\n this.enter(element);\n }\n }\n\n /**\n * Enter fullscreen mode\n */\n enter(element: HTMLElement): void {\n if (this.isFullscreenState()) return;\n\n try {\n // Store original styles & parent\n this.storeOriginalStyles(element);\n this.originalParent = element.parentElement;\n\n // Acquire z-index token\n this.zToken = this.zIndexService.acquire();\n\n // Create fullscreen container\n const container = document.createElement('div');\n container.style.position = 'fixed';\n container.style.top = '0';\n container.style.left = '0';\n container.style.width = '100vw';\n container.style.height = '100vh';\n container.style.zIndex = String(this.zToken.zIndex);\n container.style.overflow = 'auto';\n\n // Move element into container\n container.appendChild(element);\n\n // Apply fullscreen styles to element\n element.style.position = 'relative';\n element.style.width = '100%';\n element.style.height = '100%';\n element.style.margin = '0';\n element.style.padding = '0';\n\n // Append container to body\n document.body.appendChild(container);\n\n // Prevent body scroll\n document.body.style.overflow = 'hidden';\n\n this.fullscreenContainer = container;\n this.isFullscreenState.set(true);\n } catch (error) {\n console.error('Error entering fullscreen:', error);\n this.restoreOriginalStyles(element);\n }\n }\n\n /**\n * Exit fullscreen mode\n */\n exit(element: HTMLElement): void {\n if (!this.isFullscreenState()) return;\n\n try {\n document.body.style.overflow = '';\n\n if (this.fullscreenContainer) {\n if (element.parentElement === this.fullscreenContainer) {\n this.fullscreenContainer.removeChild(element);\n }\n\n if (this.originalParent?.isConnected && !this.originalParent.contains(element)) {\n this.originalParent.appendChild(element);\n }\n\n if (this.fullscreenContainer.parentNode === document.body) {\n document.body.removeChild(this.fullscreenContainer);\n }\n }\n\n this.fullscreenContainer = null;\n this.originalParent = null;\n\n this.zIndexService.release(this.zToken);\n this.zToken = null;\n\n this.restoreOriginalStyles(element);\n this.isFullscreenState.set(false);\n } catch (error) {\n console.error('Error exiting fullscreen:', error);\n this.fullscreenContainer = null;\n this.originalParent = null;\n this.zIndexService.release(this.zToken);\n this.zToken = null;\n this.isFullscreenState.set(false);\n }\n }\n\n /**\n * Check fullscreen state\n */\n isFullscreen(): boolean {\n return this.isFullscreenState();\n }\n\n /**\n * Store original computed styles\n */\n private storeOriginalStyles(element: HTMLElement): void {\n const computed = window.getComputedStyle(element);\n\n this.originalStyles = {\n position: computed.position,\n top: computed.top,\n left: computed.left,\n width: computed.width,\n height: computed.height,\n zIndex: computed.zIndex,\n backgroundColor: computed.backgroundColor,\n margin: computed.margin,\n padding: computed.padding,\n };\n }\n\n /**\n * Restore original styles\n */\n private restoreOriginalStyles(element: HTMLElement): void {\n Object.entries(this.originalStyles).forEach(([key, value]) => {\n if (value) {\n (element.style as any)[key] = value;\n } else {\n (element.style as any)[key] = '';\n }\n });\n\n this.originalStyles = {};\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":"acorex-core-full-screen.mjs","sources":["../../../../packages/core/full-screen/src/lib/full-screen.service.ts","../../../../packages/core/full-screen/src/acorex-core-full-screen.ts"],"sourcesContent":["import { AXZIndexService, AXZToken } from '@acorex/core/z-index';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { DestroyRef, inject, Injectable, PLATFORM_ID, signal } from '@angular/core';\n\n/**\n * Fullscreen implementation mode.\n * - `overlay`: CSS fixed container that covers the viewport.\n * - `browser`: Native Fullscreen API via `element.requestFullscreen()`.\n */\nexport type AXFullScreenMode = 'overlay' | 'browser';\n\ntype FullscreenCapableElement = HTMLElement & {\n requestFullscreen?: () => Promise<void>;\n webkitRequestFullscreen?: () => Promise<void>;\n};\n\ntype FullscreenCapableDocument = Document & {\n exitFullscreen?: () => Promise<void>;\n webkitExitFullscreen?: () => Promise<void>;\n fullscreenElement?: Element | null;\n webkitFullscreenElement?: Element | null;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXFullScreenService {\n private readonly zIndexService = inject(AXZIndexService);\n private readonly document = inject(DOCUMENT) as FullscreenCapableDocument;\n private readonly platformId = inject(PLATFORM_ID);\n private readonly destroyRef = inject(DestroyRef);\n\n /**\n * Current fullscreen state.\n */\n private readonly isFullscreenState = signal<boolean>(false);\n\n /**\n * Active fullscreen element.\n */\n private readonly activeElementState = signal<HTMLElement | null>(null);\n\n /**\n * Active fullscreen mode.\n */\n private currentMode: AXFullScreenMode | null = null;\n\n /**\n * Original element styles to restore (overlay mode).\n */\n private originalStyles: Partial<CSSStyleDeclaration> = {};\n\n /**\n * Original parent element reference (overlay mode).\n */\n private originalParent: HTMLElement | null = null;\n\n /**\n * Original next sibling so overlay restore keeps DOM order (overlay mode).\n */\n private originalNextSibling: ChildNode | null = null;\n\n /**\n * Fullscreen container element (overlay mode).\n */\n private fullscreenContainer: HTMLElement | null = null;\n\n /**\n * Z-index token for overlay fullscreen.\n */\n private zToken: AXZToken | null = null;\n\n private readonly fullscreenChangeHandler = () => {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n if (this.currentMode !== 'browser') {\n return;\n }\n\n const activeElement = this.activeElementState();\n if (!activeElement) {\n return;\n }\n\n const fullscreenElement = this.getFullscreenElement();\n if (fullscreenElement !== activeElement) {\n this.clearBrowserState();\n }\n };\n\n constructor() {\n if (isPlatformBrowser(this.platformId)) {\n this.document.addEventListener('fullscreenchange', this.fullscreenChangeHandler);\n this.document.addEventListener('webkitfullscreenchange', this.fullscreenChangeHandler);\n\n this.destroyRef.onDestroy(() => {\n this.document.removeEventListener('fullscreenchange', this.fullscreenChangeHandler);\n this.document.removeEventListener('webkitfullscreenchange', this.fullscreenChangeHandler);\n\n const activeElement = this.activeElementState();\n if (activeElement) {\n this.exit(activeElement);\n }\n });\n }\n }\n\n /**\n * Toggle fullscreen state.\n */\n toggle(element: HTMLElement, mode: AXFullScreenMode = 'overlay'): void {\n if (this.isActive(element)) {\n this.exit(element);\n } else {\n this.enter(element, mode);\n }\n }\n\n /**\n * Enter fullscreen mode.\n */\n enter(element: HTMLElement, mode: AXFullScreenMode = 'overlay'): void {\n if (!element || this.isFullscreenState()) {\n return;\n }\n\n if (mode === 'browser') {\n this.enterBrowser(element);\n return;\n }\n\n this.enterOverlay(element);\n }\n\n /**\n * Exit fullscreen mode.\n */\n exit(element?: HTMLElement): void {\n if (!this.isFullscreenState()) {\n return;\n }\n\n const activeElement = this.activeElementState();\n const targetElement = element ?? activeElement;\n if (!targetElement || activeElement !== targetElement) {\n return;\n }\n\n if (this.currentMode === 'browser') {\n this.exitBrowser(targetElement);\n return;\n }\n\n this.exitOverlay(targetElement);\n }\n\n /**\n * Check whether any element is in fullscreen mode.\n */\n isFullscreen(): boolean {\n return this.isFullscreenState();\n }\n\n /**\n * Read-only signal of the active fullscreen element.\n */\n readonly activeElement = this.activeElementState.asReadonly();\n\n /**\n * Read-only signal of the fullscreen state.\n */\n readonly fullscreen = this.isFullscreenState.asReadonly();\n\n /**\n * Check whether the given element is the active fullscreen element.\n */\n isActive(element: HTMLElement): boolean {\n return this.activeElementState() === element && this.isFullscreenState();\n }\n\n /**\n * Returns the currently active fullscreen element, if any.\n */\n getActiveElement(): HTMLElement | null {\n return this.activeElementState();\n }\n\n /**\n * Returns the active fullscreen mode, if any.\n */\n getActiveMode(): AXFullScreenMode | null {\n return this.currentMode;\n }\n\n private enterOverlay(element: HTMLElement): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n this.storeOriginalStyles(element);\n this.originalParent = element.parentElement;\n this.originalNextSibling = element.nextSibling;\n this.zToken = this.zIndexService.acquire();\n\n const container = this.document.createElement('div');\n container.style.position = 'fixed';\n container.style.top = '0';\n container.style.left = '0';\n container.style.width = '100vw';\n container.style.height = '100vh';\n container.style.zIndex = String(this.zToken.zIndex);\n container.style.backgroundColor = '#ffffff';\n container.style.overflow = 'auto';\n\n container.appendChild(element);\n\n element.style.position = 'relative';\n element.style.width = '100%';\n element.style.height = '100%';\n element.style.margin = '0';\n element.style.padding = '0';\n\n this.document.body.appendChild(container);\n this.document.body.style.overflow = 'hidden';\n\n this.fullscreenContainer = container;\n this.currentMode = 'overlay';\n this.activeElementState.set(element);\n this.isFullscreenState.set(true);\n } catch (error) {\n console.error('Error entering overlay fullscreen:', error);\n this.restoreOriginalStyles(element);\n this.cleanupOverlayResources();\n }\n }\n\n private exitOverlay(element: HTMLElement): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n try {\n this.document.body.style.overflow = '';\n\n if (this.fullscreenContainer) {\n if (element.parentElement === this.fullscreenContainer) {\n this.fullscreenContainer.removeChild(element);\n }\n\n if (this.originalParent?.isConnected && !this.originalParent.contains(element)) {\n this.restoreOriginalPosition(element);\n }\n\n if (this.fullscreenContainer.parentNode === this.document.body) {\n this.document.body.removeChild(this.fullscreenContainer);\n }\n }\n\n this.restoreOriginalStyles(element);\n this.cleanupOverlayResources();\n this.clearActiveState();\n } catch (error) {\n console.error('Error exiting overlay fullscreen:', error);\n this.cleanupOverlayResources();\n this.clearActiveState();\n }\n }\n\n private enterBrowser(element: HTMLElement): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n const requestFullscreen = this.getRequestFullscreen(element);\n if (!requestFullscreen) {\n console.error('Browser fullscreen API is not supported in this environment.');\n return;\n }\n\n void requestFullscreen()\n .then(() => {\n if (this.getFullscreenElement() !== element) {\n return;\n }\n\n this.currentMode = 'browser';\n this.activeElementState.set(element);\n this.isFullscreenState.set(true);\n })\n .catch((error: unknown) => {\n console.error('Error entering browser fullscreen:', error);\n });\n }\n\n private exitBrowser(element: HTMLElement): void {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n const fullscreenElement = this.getFullscreenElement();\n if (fullscreenElement === element) {\n const exitFullscreen = this.getExitFullscreen();\n if (exitFullscreen) {\n void exitFullscreen().catch((error: unknown) => {\n console.error('Error exiting browser fullscreen:', error);\n });\n }\n }\n\n this.clearBrowserState();\n }\n\n private clearBrowserState(): void {\n this.clearActiveState();\n }\n\n private clearActiveState(): void {\n this.currentMode = null;\n this.activeElementState.set(null);\n this.isFullscreenState.set(false);\n }\n\n private cleanupOverlayResources(): void {\n this.fullscreenContainer = null;\n this.originalParent = null;\n this.originalNextSibling = null;\n this.zIndexService.release(this.zToken);\n this.zToken = null;\n this.originalStyles = {};\n }\n\n private restoreOriginalPosition(element: HTMLElement): void {\n const parent = this.originalParent;\n if (!parent) {\n return;\n }\n\n const nextSibling = this.originalNextSibling;\n if (nextSibling && nextSibling.parentNode === parent) {\n parent.insertBefore(element, nextSibling);\n return;\n }\n\n parent.appendChild(element);\n }\n\n private getFullscreenElement(): Element | null {\n return this.document.fullscreenElement ?? this.document.webkitFullscreenElement ?? null;\n }\n\n private getRequestFullscreen(element: HTMLElement): (() => Promise<void>) | null {\n const target = element as FullscreenCapableElement;\n if (typeof target.requestFullscreen === 'function') {\n return () => target.requestFullscreen!();\n }\n if (typeof target.webkitRequestFullscreen === 'function') {\n return () => target.webkitRequestFullscreen!();\n }\n return null;\n }\n\n private getExitFullscreen(): (() => Promise<void>) | null {\n if (typeof this.document.exitFullscreen === 'function') {\n return () => this.document.exitFullscreen!();\n }\n if (typeof this.document.webkitExitFullscreen === 'function') {\n return () => this.document.webkitExitFullscreen!();\n }\n return null;\n }\n\n private storeOriginalStyles(element: HTMLElement): void {\n const computed = window.getComputedStyle(element);\n\n this.originalStyles = {\n position: computed.position,\n top: computed.top,\n left: computed.left,\n width: computed.width,\n height: computed.height,\n zIndex: computed.zIndex,\n backgroundColor: computed.backgroundColor,\n margin: computed.margin,\n padding: computed.padding,\n };\n }\n\n private restoreOriginalStyles(element: HTMLElement): void {\n Object.entries(this.originalStyles).forEach(([key, value]) => {\n if (value) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (element.style as any)[key] = value;\n } else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (element.style as any)[key] = '';\n }\n });\n\n this.originalStyles = {};\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -35,10 +35,10 @@ class AXIconResolverService {
|
|
|
35
35
|
}
|
|
36
36
|
throw new Error(`AXIconResolverService: Could not resolve icon "${icon}"`);
|
|
37
37
|
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
39
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
39
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXIconResolverService, providedIn: 'root' }); }
|
|
40
40
|
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXIconResolverService, decorators: [{
|
|
42
42
|
type: Injectable,
|
|
43
43
|
args: [{ providedIn: 'root' }]
|
|
44
44
|
}] });
|
|
@@ -47,10 +47,10 @@ class AXImageService {
|
|
|
47
47
|
canvas.getContext('2d').drawImage(image, 0, 0, width, height);
|
|
48
48
|
return new Promise((resolve) => canvas.toBlob(resolve, options.type, options.quality));
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
51
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXImageService }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXImageService, decorators: [{
|
|
54
54
|
type: Injectable
|
|
55
55
|
}] });
|
|
56
56
|
|
|
@@ -113,10 +113,10 @@ class AXLocaleProfileProviderService {
|
|
|
113
113
|
has(localeCode) {
|
|
114
114
|
return this.registry.has(localeCode);
|
|
115
115
|
}
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
117
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.
|
|
116
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleProfileProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
117
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleProfileProviderService, providedIn: 'root' }); }
|
|
118
118
|
}
|
|
119
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleProfileProviderService, decorators: [{
|
|
120
120
|
type: Injectable,
|
|
121
121
|
args: [{
|
|
122
122
|
providedIn: 'root',
|
|
@@ -133,13 +133,13 @@ const AX_LOCALE_CONFIG = new InjectionToken('AX_LOCALE_CONFIG', {
|
|
|
133
133
|
});
|
|
134
134
|
|
|
135
135
|
class AXLocaleModule {
|
|
136
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
137
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.
|
|
138
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.
|
|
136
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
137
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleModule, imports: [i1.AXFormatModule] }); }
|
|
138
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleModule, imports: [AXFormatModule.forChild({
|
|
139
139
|
formatters: [],
|
|
140
140
|
})] }); }
|
|
141
141
|
}
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleModule, decorators: [{
|
|
143
143
|
type: NgModule,
|
|
144
144
|
args: [{
|
|
145
145
|
imports: [
|
|
@@ -162,6 +162,7 @@ const AXAULocaleProfile = {
|
|
|
162
162
|
week: {
|
|
163
163
|
startsOn: 1, // Monday
|
|
164
164
|
weekends: [0, 6], // Sunday + Saturday
|
|
165
|
+
weekdayLabelLength: 2,
|
|
165
166
|
},
|
|
166
167
|
clock: {
|
|
167
168
|
format24Hour: true,
|
|
@@ -229,6 +230,7 @@ const AXUSLocaleProfile = {
|
|
|
229
230
|
week: {
|
|
230
231
|
startsOn: 0, // Sunday
|
|
231
232
|
weekends: [0, 6], // Sunday + Saturday
|
|
233
|
+
weekdayLabelLength: 2,
|
|
232
234
|
},
|
|
233
235
|
clock: {
|
|
234
236
|
format24Hour: false,
|
|
@@ -296,6 +298,7 @@ const AXIRLocaleProfile = {
|
|
|
296
298
|
week: {
|
|
297
299
|
startsOn: 6, // Saturday
|
|
298
300
|
weekends: [5], // Friday
|
|
301
|
+
weekdayLabelLength: 1,
|
|
299
302
|
},
|
|
300
303
|
clock: {
|
|
301
304
|
format24Hour: true,
|
|
@@ -442,10 +445,10 @@ class AXLocaleService {
|
|
|
442
445
|
this.applyDocumentDirection(profile);
|
|
443
446
|
}
|
|
444
447
|
}
|
|
445
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
446
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.
|
|
448
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
449
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleService, providedIn: 'root' }); }
|
|
447
450
|
}
|
|
448
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
451
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXLocaleService, decorators: [{
|
|
449
452
|
type: Injectable,
|
|
450
453
|
args: [{
|
|
451
454
|
providedIn: 'root',
|