tuain-ng-forms-lib 15.0.30 → 15.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,18 +1,37 @@
1
- import { ReplaySubject } from 'rxjs';
1
+ import { Subject, BehaviorSubject, ReplaySubject } from 'rxjs';
2
2
  export class LibEventManagerService {
3
- constructor(eventNames) {
3
+ constructor(eventSet) {
4
4
  this.eventSubjects = {};
5
- eventNames.forEach((name) => { this.addEventName(name); });
5
+ this.eventSubjectParams = {};
6
+ eventSet.forEach((event) => { this.addEventName(event); });
6
7
  }
7
- addEventName(name) {
8
- if (!this.eventSubjects[name]) {
9
- const newEventSubject = new ReplaySubject(1);
10
- this.eventSubjects[name] = newEventSubject;
8
+ addEventName(event, rebuild = false) {
9
+ const eventObject = (typeof event === 'string') ? { name: event } : event;
10
+ const { name, type, initialValue, windowTime, timestampProvider } = eventObject;
11
+ const currentSubject = this.eventSubjects[name];
12
+ if (rebuild || !currentSubject) {
13
+ if (type === 'beahavior') {
14
+ const newEventSubject = new BehaviorSubject(initialValue);
15
+ this.eventSubjects[name] = newEventSubject;
16
+ }
17
+ else if (type === 'subject') {
18
+ const newEventSubject = new Subject();
19
+ this.eventSubjects[name] = newEventSubject;
20
+ }
21
+ else {
22
+ const newEventSubject = new ReplaySubject(initialValue, windowTime, timestampProvider);
23
+ this.eventSubjects[name] = newEventSubject;
24
+ }
25
+ this.eventSubjectParams[name] = { name: name, windowTime, timestampProvider };
11
26
  }
12
27
  }
28
+ resetSubject(eventClassName) {
29
+ const { name, windowTime, timestampProvider } = this.eventSubjectParams[eventClassName];
30
+ return this.addEventName({ name, windowTime, timestampProvider });
31
+ }
13
32
  getEventNames() { return Object.keys(this.eventSubjects); }
14
33
  getSubject(eventClassName) { return eventClassName ? this.eventSubjects[eventClassName] : null; }
15
34
  subscribe(eventClassName, callback) { return this.getSubject(eventClassName).subscribe(callback); }
16
35
  next(eventClassName, data) { this.getSubject(eventClassName).next(data); }
17
36
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvc2VydmljZXMvZXZlbnQtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckMsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUFZLFVBQVU7UUFGdEIsa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFHdEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxZQUFZLENBQUMsSUFBSTtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE1BQU0sZUFBZSxHQUF1QixJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFRCxhQUFhLEtBQUssT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsVUFBVSxDQUFDLGNBQWMsSUFBSSxPQUFPLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxTQUFTLENBQUMsY0FBYyxFQUFFLFFBQVEsSUFBSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDM0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBMaWJFdmVudE1hbmFnZXJTZXJ2aWNlIHtcbiAgZXZlbnRTdWJqZWN0czogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IoZXZlbnROYW1lcykge1xuICAgIGV2ZW50TmFtZXMuZm9yRWFjaCgobmFtZSkgPT4geyB0aGlzLmFkZEV2ZW50TmFtZShuYW1lKTsgfSk7XG4gIH1cblxuICBhZGRFdmVudE5hbWUobmFtZSkge1xuICAgIGlmICghdGhpcy5ldmVudFN1YmplY3RzW25hbWVdKSB7XG4gICAgICBjb25zdCBuZXdFdmVudFN1YmplY3Q6IFJlcGxheVN1YmplY3Q8YW55PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgICAgdGhpcy5ldmVudFN1YmplY3RzW25hbWVdID0gbmV3RXZlbnRTdWJqZWN0O1xuICAgIH1cbiAgfVxuXG4gIGdldEV2ZW50TmFtZXMoKSB7IHJldHVybiBPYmplY3Qua2V5cyh0aGlzLmV2ZW50U3ViamVjdHMpOyB9XG4gIGdldFN1YmplY3QoZXZlbnRDbGFzc05hbWUpIHsgcmV0dXJuIGV2ZW50Q2xhc3NOYW1lID8gdGhpcy5ldmVudFN1YmplY3RzW2V2ZW50Q2xhc3NOYW1lXSA6IG51bGw7IH1cbiAgc3Vic2NyaWJlKGV2ZW50Q2xhc3NOYW1lLCBjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5zdWJzY3JpYmUoY2FsbGJhY2spOyB9XG4gIG5leHQoZXZlbnRDbGFzc05hbWUsIGRhdGEpIHsgdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5uZXh0KGRhdGEpOyB9XG59XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvc2VydmljZXMvZXZlbnQtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvRCxNQUFNLE9BQU8sc0JBQXNCO0lBSWpDLFlBQVksUUFBZTtRQUgzQixrQkFBYSxHQUFRLEVBQUUsQ0FBQztRQUN4Qix1QkFBa0IsR0FBUSxFQUFFLENBQUM7UUFHM0IsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVSxFQUFFLE9BQU8sR0FBRyxLQUFLO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDMUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLFdBQVcsQ0FBQztRQUNoRixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQzlCLElBQUksSUFBSSxLQUFLLFdBQVcsRUFBRTtnQkFDeEIsTUFBTSxlQUFlLEdBQXlCLElBQUksZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUNoRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQzthQUM1QztpQkFBTSxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7Z0JBQzdCLE1BQU0sZUFBZSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNwRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQzthQUM1QztpQkFBTTtnQkFDTCxNQUFNLGVBQWUsR0FBdUIsSUFBSSxhQUFhLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO2dCQUMzRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQzthQUM1QztZQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLENBQUM7U0FDL0U7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLGNBQWM7UUFDekIsTUFBTSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEYsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELGFBQWEsS0FBSyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRCxVQUFVLENBQUMsY0FBYyxJQUFJLE9BQU8sY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pHLFNBQVMsQ0FBQyxjQUFjLEVBQUUsUUFBUSxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25HLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUMzRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QsIEJlaGF2aW9yU3ViamVjdCwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgTGliRXZlbnRNYW5hZ2VyU2VydmljZSB7XG4gIGV2ZW50U3ViamVjdHM6IGFueSA9IHt9O1xuICBldmVudFN1YmplY3RQYXJhbXM6IGFueSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKGV2ZW50U2V0OiBhbnlbXSkge1xuICAgIGV2ZW50U2V0LmZvckVhY2goKGV2ZW50KSA9PiB7IHRoaXMuYWRkRXZlbnROYW1lKGV2ZW50KTsgfSk7XG4gIH1cblxuICBhZGRFdmVudE5hbWUoZXZlbnQ6IGFueSwgcmVidWlsZCA9IGZhbHNlKSB7XG4gICAgY29uc3QgZXZlbnRPYmplY3QgPSAodHlwZW9mIGV2ZW50ID09PSAnc3RyaW5nJykgPyB7IG5hbWU6IGV2ZW50IH0gOiBldmVudDtcbiAgICBjb25zdCB7IG5hbWUsIHR5cGUsIGluaXRpYWxWYWx1ZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIgfSA9IGV2ZW50T2JqZWN0O1xuICAgIGNvbnN0IGN1cnJlbnRTdWJqZWN0ID0gdGhpcy5ldmVudFN1YmplY3RzW25hbWVdO1xuICAgIGlmIChyZWJ1aWxkIHx8ICFjdXJyZW50U3ViamVjdCkge1xuICAgICAgaWYgKHR5cGUgPT09ICdiZWFoYXZpb3InKSB7XG4gICAgICAgIGNvbnN0IG5ld0V2ZW50U3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGluaXRpYWxWYWx1ZSk7XG4gICAgICAgIHRoaXMuZXZlbnRTdWJqZWN0c1tuYW1lXSA9IG5ld0V2ZW50U3ViamVjdDtcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3N1YmplY3QnKSB7XG4gICAgICAgIGNvbnN0IG5ld0V2ZW50U3ViamVjdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcbiAgICAgICAgdGhpcy5ldmVudFN1YmplY3RzW25hbWVdID0gbmV3RXZlbnRTdWJqZWN0O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbmV3RXZlbnRTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PGFueT4gPSBuZXcgUmVwbGF5U3ViamVjdChpbml0aWFsVmFsdWUsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyKTtcbiAgICAgICAgdGhpcy5ldmVudFN1YmplY3RzW25hbWVdID0gbmV3RXZlbnRTdWJqZWN0O1xuICAgICAgfVxuICAgICAgdGhpcy5ldmVudFN1YmplY3RQYXJhbXNbbmFtZV0gPSB7IG5hbWU6IG5hbWUsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyIH07XG4gICAgfVxuICB9XG5cbiAgcmVzZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKSB7XG4gICAgY29uc3QgeyBuYW1lLCB3aW5kb3dUaW1lLCB0aW1lc3RhbXBQcm92aWRlciB9ID0gdGhpcy5ldmVudFN1YmplY3RQYXJhbXNbZXZlbnRDbGFzc05hbWVdO1xuICAgIHJldHVybiB0aGlzLmFkZEV2ZW50TmFtZSh7IG5hbWUsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyIH0pO1xuICB9XG5cbiAgZ2V0RXZlbnROYW1lcygpIHsgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuZXZlbnRTdWJqZWN0cyk7IH1cbiAgZ2V0U3ViamVjdChldmVudENsYXNzTmFtZSkgeyByZXR1cm4gZXZlbnRDbGFzc05hbWUgPyB0aGlzLmV2ZW50U3ViamVjdHNbZXZlbnRDbGFzc05hbWVdIDogbnVsbDsgfVxuICBzdWJzY3JpYmUoZXZlbnRDbGFzc05hbWUsIGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmdldFN1YmplY3QoZXZlbnRDbGFzc05hbWUpLnN1YnNjcmliZShjYWxsYmFjayk7IH1cbiAgbmV4dChldmVudENsYXNzTmFtZSwgZGF0YSkgeyB0aGlzLmdldFN1YmplY3QoZXZlbnRDbGFzc05hbWUpLm5leHQoZGF0YSk7IH1cbn1cbiJdfQ==
@@ -2779,16 +2779,35 @@ class LibFormManagerService {
2779
2779
  }
2780
2780
 
2781
2781
  class LibEventManagerService {
2782
- constructor(eventNames) {
2782
+ constructor(eventSet) {
2783
2783
  this.eventSubjects = {};
2784
- eventNames.forEach((name) => { this.addEventName(name); });
2785
- }
2786
- addEventName(name) {
2787
- if (!this.eventSubjects[name]) {
2788
- const newEventSubject = new ReplaySubject(1);
2789
- this.eventSubjects[name] = newEventSubject;
2784
+ this.eventSubjectParams = {};
2785
+ eventSet.forEach((event) => { this.addEventName(event); });
2786
+ }
2787
+ addEventName(event, rebuild = false) {
2788
+ const eventObject = (typeof event === 'string') ? { name: event } : event;
2789
+ const { name, type, initialValue, windowTime, timestampProvider } = eventObject;
2790
+ const currentSubject = this.eventSubjects[name];
2791
+ if (rebuild || !currentSubject) {
2792
+ if (type === 'beahavior') {
2793
+ const newEventSubject = new BehaviorSubject(initialValue);
2794
+ this.eventSubjects[name] = newEventSubject;
2795
+ }
2796
+ else if (type === 'subject') {
2797
+ const newEventSubject = new Subject();
2798
+ this.eventSubjects[name] = newEventSubject;
2799
+ }
2800
+ else {
2801
+ const newEventSubject = new ReplaySubject(initialValue, windowTime, timestampProvider);
2802
+ this.eventSubjects[name] = newEventSubject;
2803
+ }
2804
+ this.eventSubjectParams[name] = { name: name, windowTime, timestampProvider };
2790
2805
  }
2791
2806
  }
2807
+ resetSubject(eventClassName) {
2808
+ const { name, windowTime, timestampProvider } = this.eventSubjectParams[eventClassName];
2809
+ return this.addEventName({ name, windowTime, timestampProvider });
2810
+ }
2792
2811
  getEventNames() { return Object.keys(this.eventSubjects); }
2793
2812
  getSubject(eventClassName) { return eventClassName ? this.eventSubjects[eventClassName] : null; }
2794
2813
  subscribe(eventClassName, callback) { return this.getSubject(eventClassName).subscribe(callback); }
@@ -3113,6 +3132,9 @@ class BasicFormComponent extends FormStructureAndData {
3113
3132
  this.errorDetail = '';
3114
3133
  this.busy = true;
3115
3134
  const formActionResponse = yield this.formManagerService.execServerAction(actionDetail);
3135
+ if (!formActionResponse) {
3136
+ return null;
3137
+ }
3116
3138
  this.busy = false;
3117
3139
  if (formActionResponse.hasError()) {
3118
3140
  const error = formActionResponse.error;