imm-element-ui 2.8.0 → 2.8.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.
|
@@ -1,32 +1,63 @@
|
|
|
1
1
|
import { Injectable, signal } from '@angular/core';
|
|
2
|
-
import { debounceTime, filter, pairwise, Subject } from 'rxjs';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
export class LoadingService {
|
|
5
4
|
constructor() {
|
|
6
5
|
this.loading = signal(false);
|
|
7
|
-
this.
|
|
8
|
-
this.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
this.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
6
|
+
this.activeRequests = 0;
|
|
7
|
+
this.manualLoading = false;
|
|
8
|
+
this.hideDelay = 300;
|
|
9
|
+
}
|
|
10
|
+
begin() {
|
|
11
|
+
this.activeRequests++;
|
|
12
|
+
this.showImmediately();
|
|
13
|
+
let released = false;
|
|
14
|
+
return () => {
|
|
15
|
+
if (released) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
released = true;
|
|
19
|
+
this.activeRequests = Math.max(0, this.activeRequests - 1);
|
|
20
|
+
this.syncLoading();
|
|
21
|
+
};
|
|
18
22
|
}
|
|
19
23
|
setLoading(loading) {
|
|
20
|
-
this.loading
|
|
24
|
+
this.manualLoading = loading;
|
|
25
|
+
this.syncLoading();
|
|
21
26
|
}
|
|
22
27
|
getLoading() {
|
|
23
28
|
return this.loading();
|
|
24
29
|
}
|
|
30
|
+
syncLoading() {
|
|
31
|
+
if (this.activeRequests > 0 || this.manualLoading) {
|
|
32
|
+
this.showImmediately();
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
this.scheduleHide();
|
|
36
|
+
}
|
|
37
|
+
showImmediately() {
|
|
38
|
+
this.clearHideTimer();
|
|
39
|
+
this.loading.set(true);
|
|
40
|
+
}
|
|
41
|
+
scheduleHide() {
|
|
42
|
+
this.clearHideTimer();
|
|
43
|
+
this.hideTimer = setTimeout(() => {
|
|
44
|
+
this.hideTimer = undefined;
|
|
45
|
+
if (this.activeRequests === 0 && !this.manualLoading) {
|
|
46
|
+
this.loading.set(false);
|
|
47
|
+
}
|
|
48
|
+
}, this.hideDelay);
|
|
49
|
+
}
|
|
50
|
+
clearHideTimer() {
|
|
51
|
+
if (this.hideTimer) {
|
|
52
|
+
clearTimeout(this.hideTimer);
|
|
53
|
+
this.hideTimer = undefined;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
25
56
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
26
57
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, providedIn: 'root' }); }
|
|
27
58
|
}
|
|
28
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, decorators: [{
|
|
29
60
|
type: Injectable,
|
|
30
61
|
args: [{ providedIn: 'root' }]
|
|
31
|
-
}]
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
}] });
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zZXJ2aWNlL2xvYWRpbmcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLGNBQWM7SUFEM0I7UUFFQyxZQUFPLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRWIsY0FBUyxHQUFHLEdBQUcsQ0FBQztLQXlEakM7SUF2REEsS0FBSztRQUNKLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFdkIsSUFBSSxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLE9BQU8sR0FBRyxFQUFFO1lBQ1gsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDZCxPQUFPO1lBQ1IsQ0FBQztZQUVELFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDaEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWdCO1FBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsVUFBVTtRQUNULE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxXQUFXO1FBQ2xCLElBQUksSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixPQUFPO1FBQ1IsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sZUFBZTtRQUN0QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVPLFlBQVk7UUFDbkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUMzQixJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0YsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU8sY0FBYztRQUNyQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzVCLENBQUM7SUFDRixDQUFDOytHQTdEVyxjQUFjO21IQUFkLGNBQWMsY0FERCxNQUFNOzs0RkFDbkIsY0FBYztrQkFEMUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nU2VydmljZSB7XG5cdGxvYWRpbmcgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXHRwcml2YXRlIGFjdGl2ZVJlcXVlc3RzID0gMDtcblx0cHJpdmF0ZSBtYW51YWxMb2FkaW5nID0gZmFsc2U7XG5cdHByaXZhdGUgaGlkZVRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IHVuZGVmaW5lZDtcblx0cHJpdmF0ZSByZWFkb25seSBoaWRlRGVsYXkgPSAzMDA7XG5cblx0YmVnaW4oKTogKCkgPT4gdm9pZCB7XG5cdFx0dGhpcy5hY3RpdmVSZXF1ZXN0cysrO1xuXHRcdHRoaXMuc2hvd0ltbWVkaWF0ZWx5KCk7XG5cblx0XHRsZXQgcmVsZWFzZWQgPSBmYWxzZTtcblx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0aWYgKHJlbGVhc2VkKSB7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0cmVsZWFzZWQgPSB0cnVlO1xuXHRcdFx0dGhpcy5hY3RpdmVSZXF1ZXN0cyA9IE1hdGgubWF4KDAsIHRoaXMuYWN0aXZlUmVxdWVzdHMgLSAxKTtcblx0XHRcdHRoaXMuc3luY0xvYWRpbmcoKTtcblx0XHR9O1xuXHR9XG5cblx0c2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy5tYW51YWxMb2FkaW5nID0gbG9hZGluZztcblx0XHR0aGlzLnN5bmNMb2FkaW5nKCk7XG5cdH1cblxuXHRnZXRMb2FkaW5nKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmxvYWRpbmcoKTtcblx0fVxuXG5cdHByaXZhdGUgc3luY0xvYWRpbmcoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuYWN0aXZlUmVxdWVzdHMgPiAwIHx8IHRoaXMubWFudWFsTG9hZGluZykge1xuXHRcdFx0dGhpcy5zaG93SW1tZWRpYXRlbHkoKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLnNjaGVkdWxlSGlkZSgpO1xuXHR9XG5cblx0cHJpdmF0ZSBzaG93SW1tZWRpYXRlbHkoKTogdm9pZCB7XG5cdFx0dGhpcy5jbGVhckhpZGVUaW1lcigpO1xuXHRcdHRoaXMubG9hZGluZy5zZXQodHJ1ZSk7XG5cdH1cblxuXHRwcml2YXRlIHNjaGVkdWxlSGlkZSgpOiB2b2lkIHtcblx0XHR0aGlzLmNsZWFySGlkZVRpbWVyKCk7XG5cdFx0dGhpcy5oaWRlVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdHRoaXMuaGlkZVRpbWVyID0gdW5kZWZpbmVkO1xuXHRcdFx0aWYgKHRoaXMuYWN0aXZlUmVxdWVzdHMgPT09IDAgJiYgIXRoaXMubWFudWFsTG9hZGluZykge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcuc2V0KGZhbHNlKTtcblx0XHRcdH1cblx0XHR9LCB0aGlzLmhpZGVEZWxheSk7XG5cdH1cblxuXHRwcml2YXRlIGNsZWFySGlkZVRpbWVyKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLmhpZGVUaW1lcikge1xuXHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuaGlkZVRpbWVyKTtcblx0XHRcdHRoaXMuaGlkZVRpbWVyID0gdW5kZWZpbmVkO1xuXHRcdH1cblx0fVxufVxuIl19
|
|
@@ -2,13 +2,13 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { signal, Injectable, InjectionToken, inject, Component, untracked, input, ViewContainerRef, Directive, ViewChild, HostListener, effect, ElementRef, output, PLATFORM_ID, computed, Renderer2, NgZone, ChangeDetectorRef, EventEmitter, Output, model, ViewChildren, TemplateRef, ContentChild, isDevMode, forwardRef, Input, ContentChildren, ViewEncapsulation } from '@angular/core';
|
|
3
3
|
import * as i1$4 from '@angular/common/http';
|
|
4
4
|
import { HttpClient, HttpRequest, HttpEventType, HttpResponse } from '@angular/common/http';
|
|
5
|
-
import { filter
|
|
5
|
+
import { filter, map, finalize, debounceTime } from 'rxjs/operators';
|
|
6
6
|
import * as FileSaver from 'file-saver';
|
|
7
7
|
import * as i1$7 from 'primeng/api';
|
|
8
8
|
import { MessageService, ConfirmationService } from 'primeng/api';
|
|
9
9
|
import * as i1$1 from '@angular/router';
|
|
10
10
|
import { ActivatedRoute, Router, NavigationStart, NavigationEnd } from '@angular/router';
|
|
11
|
-
import {
|
|
11
|
+
import { BehaviorSubject, isObservable, tap, catchError, of, Observable, forkJoin, shareReplay, pipe, firstValueFrom, fromEvent, filter as filter$1, lastValueFrom, map as map$1, Subject, takeUntil, finalize as finalize$1 } from 'rxjs';
|
|
12
12
|
import * as i1 from '@ngx-translate/core';
|
|
13
13
|
import { TranslatePipe } from '@ngx-translate/core';
|
|
14
14
|
import * as i2 from '@angular/cdk/platform';
|
|
@@ -85,31 +85,63 @@ import Aura from '@primeng/themes/aura';
|
|
|
85
85
|
class LoadingService {
|
|
86
86
|
constructor() {
|
|
87
87
|
this.loading = signal(false);
|
|
88
|
-
this.
|
|
89
|
-
this.
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
this.
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
88
|
+
this.activeRequests = 0;
|
|
89
|
+
this.manualLoading = false;
|
|
90
|
+
this.hideDelay = 300;
|
|
91
|
+
}
|
|
92
|
+
begin() {
|
|
93
|
+
this.activeRequests++;
|
|
94
|
+
this.showImmediately();
|
|
95
|
+
let released = false;
|
|
96
|
+
return () => {
|
|
97
|
+
if (released) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
released = true;
|
|
101
|
+
this.activeRequests = Math.max(0, this.activeRequests - 1);
|
|
102
|
+
this.syncLoading();
|
|
103
|
+
};
|
|
99
104
|
}
|
|
100
105
|
setLoading(loading) {
|
|
101
|
-
this.loading
|
|
106
|
+
this.manualLoading = loading;
|
|
107
|
+
this.syncLoading();
|
|
102
108
|
}
|
|
103
109
|
getLoading() {
|
|
104
110
|
return this.loading();
|
|
105
111
|
}
|
|
112
|
+
syncLoading() {
|
|
113
|
+
if (this.activeRequests > 0 || this.manualLoading) {
|
|
114
|
+
this.showImmediately();
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
this.scheduleHide();
|
|
118
|
+
}
|
|
119
|
+
showImmediately() {
|
|
120
|
+
this.clearHideTimer();
|
|
121
|
+
this.loading.set(true);
|
|
122
|
+
}
|
|
123
|
+
scheduleHide() {
|
|
124
|
+
this.clearHideTimer();
|
|
125
|
+
this.hideTimer = setTimeout(() => {
|
|
126
|
+
this.hideTimer = undefined;
|
|
127
|
+
if (this.activeRequests === 0 && !this.manualLoading) {
|
|
128
|
+
this.loading.set(false);
|
|
129
|
+
}
|
|
130
|
+
}, this.hideDelay);
|
|
131
|
+
}
|
|
132
|
+
clearHideTimer() {
|
|
133
|
+
if (this.hideTimer) {
|
|
134
|
+
clearTimeout(this.hideTimer);
|
|
135
|
+
this.hideTimer = undefined;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
106
138
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
107
139
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, providedIn: 'root' }); }
|
|
108
140
|
}
|
|
109
141
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingService, decorators: [{
|
|
110
142
|
type: Injectable,
|
|
111
143
|
args: [{ providedIn: 'root' }]
|
|
112
|
-
}]
|
|
144
|
+
}] });
|
|
113
145
|
|
|
114
146
|
const LANGS = {
|
|
115
147
|
'zh-CN': {
|
|
@@ -155,7 +187,7 @@ class I18nService {
|
|
|
155
187
|
this.translate.get('primeng').subscribe(res => this.config.setTranslation(res));
|
|
156
188
|
}
|
|
157
189
|
get change() {
|
|
158
|
-
return this.change$.asObservable().pipe(filter
|
|
190
|
+
return this.change$.asObservable().pipe(filter((w) => w != null));
|
|
159
191
|
}
|
|
160
192
|
/** 获取语言列表 */
|
|
161
193
|
getLangs() {
|
|
@@ -3699,7 +3731,7 @@ class RadioComponent {
|
|
|
3699
3731
|
return;
|
|
3700
3732
|
}
|
|
3701
3733
|
fromEvent(element, 'mouseenter')
|
|
3702
|
-
.pipe(debounceTime
|
|
3734
|
+
.pipe(debounceTime(100))
|
|
3703
3735
|
.subscribe(() => {
|
|
3704
3736
|
this.ngZone.run(() => {
|
|
3705
3737
|
if (this.field()?.fieldControl?.disabled)
|
|
@@ -3708,7 +3740,7 @@ class RadioComponent {
|
|
|
3708
3740
|
});
|
|
3709
3741
|
});
|
|
3710
3742
|
fromEvent(element, 'mouseleave')
|
|
3711
|
-
.pipe(debounceTime
|
|
3743
|
+
.pipe(debounceTime(100))
|
|
3712
3744
|
.subscribe(() => {
|
|
3713
3745
|
this.ngZone.run(() => {
|
|
3714
3746
|
this.isEnter = false;
|
|
@@ -3973,7 +4005,7 @@ class UploadComponent {
|
|
|
3973
4005
|
reportProgress: true,
|
|
3974
4006
|
withCredentials: false,
|
|
3975
4007
|
}))
|
|
3976
|
-
.pipe(filter((response) => response.type == HttpEventType.Response));
|
|
4008
|
+
.pipe(filter$1((response) => response.type == HttpEventType.Response));
|
|
3977
4009
|
}
|
|
3978
4010
|
delFile(fileStr) {
|
|
3979
4011
|
return this.http.post('filerDelete', { fileName: fileStr });
|
|
@@ -4242,7 +4274,7 @@ class ImageComponent {
|
|
|
4242
4274
|
reportProgress: true,
|
|
4243
4275
|
withCredentials: false,
|
|
4244
4276
|
}))
|
|
4245
|
-
.pipe(filter((response) => response.type == HttpEventType.Response));
|
|
4277
|
+
.pipe(filter$1((response) => response.type == HttpEventType.Response));
|
|
4246
4278
|
}
|
|
4247
4279
|
delImage(image) {
|
|
4248
4280
|
return this.http.post('imageDelete', { fid: image });
|
|
@@ -5638,7 +5670,7 @@ const resolveCacheKey = (params, context) => {
|
|
|
5638
5670
|
class AsyncSelectOptionsCacheService {
|
|
5639
5671
|
constructor(router) {
|
|
5640
5672
|
router.events
|
|
5641
|
-
.pipe(filter((event) => event instanceof NavigationStart))
|
|
5673
|
+
.pipe(filter$1((event) => event instanceof NavigationStart))
|
|
5642
5674
|
.subscribe(() => clearAsyncSelectOptionsCache());
|
|
5643
5675
|
}
|
|
5644
5676
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AsyncSelectOptionsCacheService, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -7297,7 +7329,7 @@ class UploadRenderer {
|
|
|
7297
7329
|
reportProgress: true,
|
|
7298
7330
|
withCredentials: this.uploadParams.withCredentials ?? false,
|
|
7299
7331
|
}))
|
|
7300
|
-
.pipe(filter((response) => response.type == HttpEventType.Response));
|
|
7332
|
+
.pipe(filter$1((response) => response.type == HttpEventType.Response));
|
|
7301
7333
|
}
|
|
7302
7334
|
delFile(file) {
|
|
7303
7335
|
return this.http.post(this.uploadParams.deleteUrl ?? 'filerDelete', { fileName: file });
|
|
@@ -10664,7 +10696,7 @@ class UserHistoryService {
|
|
|
10664
10696
|
this.route = route;
|
|
10665
10697
|
this.historyList = signal([]);
|
|
10666
10698
|
this.router$ = this.router.events
|
|
10667
|
-
.pipe(filter(event => event instanceof NavigationEnd), map$1((event) => {
|
|
10699
|
+
.pipe(filter$1(event => event instanceof NavigationEnd), map$1((event) => {
|
|
10668
10700
|
// console.log('event----',event)
|
|
10669
10701
|
return this.createBreadcrumbs(this.router.routerState.snapshot.root);
|
|
10670
10702
|
}));
|