tuain-ng-forms-lib 15.0.28 → 15.0.31

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,35 @@
1
1
  import { 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);
8
+ addEventName(event, rebuild = false) {
9
+ let name;
10
+ let windowTime;
11
+ let timestampProvider;
12
+ if (typeof event === 'string') {
13
+ name = event;
14
+ }
15
+ else {
16
+ name = event.name;
17
+ windowTime = event.windowTime;
18
+ timestampProvider = event.timestampProvider;
19
+ }
20
+ if (rebuild || !this.eventSubjects[name]) {
21
+ const newEventSubject = new ReplaySubject(1, windowTime, timestampProvider);
10
22
  this.eventSubjects[name] = newEventSubject;
23
+ this.eventSubjectParams[name] = { name, windowTime, timestampProvider };
11
24
  }
12
25
  }
26
+ resetSubject(eventClassName) {
27
+ const { name, windowTime, timestampProvider } = this.eventSubjectParams[eventClassName];
28
+ return this.addEventName({ name, windowTime, timestampProvider });
29
+ }
13
30
  getEventNames() { return Object.keys(this.eventSubjects); }
14
31
  getSubject(eventClassName) { return eventClassName ? this.eventSubjects[eventClassName] : null; }
15
32
  subscribe(eventClassName, callback) { return this.getSubject(eventClassName).subscribe(callback); }
16
33
  next(eventClassName, data) { this.getSubject(eventClassName).next(data); }
17
34
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvc2VydmljZXMvZXZlbnQtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckMsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUFZLFVBQVU7UUFGdEIsa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFHdEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxZQUFZLENBQUMsSUFBSTtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLE1BQU0sZUFBZSxHQUF1QixJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFRCxhQUFhLEtBQUssT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsVUFBVSxDQUFDLGNBQWMsSUFBSSxPQUFPLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxTQUFTLENBQUMsY0FBYyxFQUFFLFFBQVEsSUFBSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDM0UiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBMaWJFdmVudE1hbmFnZXJTZXJ2aWNlIHtcbiAgZXZlbnRTdWJqZWN0czogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IoZXZlbnROYW1lcykge1xuICAgIGV2ZW50TmFtZXMuZm9yRWFjaCgobmFtZSkgPT4geyB0aGlzLmFkZEV2ZW50TmFtZShuYW1lKTsgfSk7XG4gIH1cblxuICBhZGRFdmVudE5hbWUobmFtZSkge1xuICAgIGlmICghdGhpcy5ldmVudFN1YmplY3RzW25hbWVdKSB7XG4gICAgICBjb25zdCBuZXdFdmVudFN1YmplY3Q6IFJlcGxheVN1YmplY3Q8YW55PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgICAgdGhpcy5ldmVudFN1YmplY3RzW25hbWVdID0gbmV3RXZlbnRTdWJqZWN0O1xuICAgIH1cbiAgfVxuXG4gIGdldEV2ZW50TmFtZXMoKSB7IHJldHVybiBPYmplY3Qua2V5cyh0aGlzLmV2ZW50U3ViamVjdHMpOyB9XG4gIGdldFN1YmplY3QoZXZlbnRDbGFzc05hbWUpIHsgcmV0dXJuIGV2ZW50Q2xhc3NOYW1lID8gdGhpcy5ldmVudFN1YmplY3RzW2V2ZW50Q2xhc3NOYW1lXSA6IG51bGw7IH1cbiAgc3Vic2NyaWJlKGV2ZW50Q2xhc3NOYW1lLCBjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5zdWJzY3JpYmUoY2FsbGJhY2spOyB9XG4gIG5leHQoZXZlbnRDbGFzc05hbWUsIGRhdGEpIHsgdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5uZXh0KGRhdGEpOyB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvc2VydmljZXMvZXZlbnQtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckMsTUFBTSxPQUFPLHNCQUFzQjtJQUlqQyxZQUFZLFFBQWU7UUFIM0Isa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFDeEIsdUJBQWtCLEdBQVEsRUFBRSxDQUFDO1FBRzNCLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVUsRUFBRSxPQUFPLEdBQUcsS0FBSztRQUN0QyxJQUFJLElBQUksQ0FBQztRQUNULElBQUksVUFBVSxDQUFDO1FBQ2YsSUFBSSxpQkFBaUIsQ0FBQztRQUN0QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLEdBQUcsS0FBSyxDQUFDO1NBQ2Q7YUFBTTtZQUNMLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQ2xCLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQzlCLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztTQUM3QztRQUNELElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN4QyxNQUFNLGVBQWUsR0FBdUIsSUFBSSxhQUFhLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsZUFBZSxDQUFDO1lBQzNDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztTQUN6RTtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsY0FBYztRQUN6QixNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsYUFBYSxLQUFLLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNELFVBQVUsQ0FBQyxjQUFjLElBQUksT0FBTyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakcsU0FBUyxDQUFDLGNBQWMsRUFBRSxRQUFRLElBQUksT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQzNFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgTGliRXZlbnRNYW5hZ2VyU2VydmljZSB7XG4gIGV2ZW50U3ViamVjdHM6IGFueSA9IHt9O1xuICBldmVudFN1YmplY3RQYXJhbXM6IGFueSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKGV2ZW50U2V0OiBhbnlbXSkge1xuICAgIGV2ZW50U2V0LmZvckVhY2goKGV2ZW50KSA9PiB7IHRoaXMuYWRkRXZlbnROYW1lKGV2ZW50KTsgfSk7XG4gIH1cblxuICBhZGRFdmVudE5hbWUoZXZlbnQ6IGFueSwgcmVidWlsZCA9IGZhbHNlKSB7XG4gICAgbGV0IG5hbWU7XG4gICAgbGV0IHdpbmRvd1RpbWU7XG4gICAgbGV0IHRpbWVzdGFtcFByb3ZpZGVyO1xuICAgIGlmICh0eXBlb2YgZXZlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICBuYW1lID0gZXZlbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5hbWUgPSBldmVudC5uYW1lO1xuICAgICAgd2luZG93VGltZSA9IGV2ZW50LndpbmRvd1RpbWU7XG4gICAgICB0aW1lc3RhbXBQcm92aWRlciA9IGV2ZW50LnRpbWVzdGFtcFByb3ZpZGVyO1xuICAgIH1cbiAgICBpZiAocmVidWlsZCB8fCAhdGhpcy5ldmVudFN1YmplY3RzW25hbWVdKSB7XG4gICAgICBjb25zdCBuZXdFdmVudFN1YmplY3Q6IFJlcGxheVN1YmplY3Q8YW55PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyKTtcbiAgICAgIHRoaXMuZXZlbnRTdWJqZWN0c1tuYW1lXSA9IG5ld0V2ZW50U3ViamVjdDtcbiAgICAgIHRoaXMuZXZlbnRTdWJqZWN0UGFyYW1zW25hbWVdID0geyBuYW1lLCB3aW5kb3dUaW1lLCB0aW1lc3RhbXBQcm92aWRlciB9O1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0U3ViamVjdChldmVudENsYXNzTmFtZSkge1xuICAgIGNvbnN0IHsgbmFtZSwgd2luZG93VGltZSwgdGltZXN0YW1wUHJvdmlkZXIgfSA9IHRoaXMuZXZlbnRTdWJqZWN0UGFyYW1zW2V2ZW50Q2xhc3NOYW1lXTtcbiAgICByZXR1cm4gdGhpcy5hZGRFdmVudE5hbWUoeyBuYW1lLCB3aW5kb3dUaW1lLCB0aW1lc3RhbXBQcm92aWRlciB9KTtcbiAgfVxuXG4gIGdldEV2ZW50TmFtZXMoKSB7IHJldHVybiBPYmplY3Qua2V5cyh0aGlzLmV2ZW50U3ViamVjdHMpOyB9XG4gIGdldFN1YmplY3QoZXZlbnRDbGFzc05hbWUpIHsgcmV0dXJuIGV2ZW50Q2xhc3NOYW1lID8gdGhpcy5ldmVudFN1YmplY3RzW2V2ZW50Q2xhc3NOYW1lXSA6IG51bGw7IH1cbiAgc3Vic2NyaWJlKGV2ZW50Q2xhc3NOYW1lLCBjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5zdWJzY3JpYmUoY2FsbGJhY2spOyB9XG4gIG5leHQoZXZlbnRDbGFzc05hbWUsIGRhdGEpIHsgdGhpcy5nZXRTdWJqZWN0KGV2ZW50Q2xhc3NOYW1lKS5uZXh0KGRhdGEpOyB9XG59XG4iXX0=
@@ -2160,6 +2160,7 @@ class FormStructureAndData {
2160
2160
  this.stateFlow = {
2161
2161
  defaultState: '',
2162
2162
  states: [],
2163
+ stateDescriptions: [],
2163
2164
  transitions: [],
2164
2165
  };
2165
2166
  }
@@ -2174,6 +2175,7 @@ class FormStructureAndData {
2174
2175
  this.stateFlow = {
2175
2176
  defaultState: '',
2176
2177
  states: [],
2178
+ stateDescriptions: [],
2177
2179
  transitions: [],
2178
2180
  };
2179
2181
  }
@@ -2187,7 +2189,7 @@ class FormStructureAndData {
2187
2189
  this.name = (_a = this.name) !== null && _a !== void 0 ? _a : (_b = definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.form) === null || _b === void 0 ? void 0 : _b.formCode;
2188
2190
  this.title = (definitionReceived.form && definitionReceived.form.formTitle)
2189
2191
  ? definitionReceived.form.formTitle : '';
2190
- this.setStateFlow(definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.states, definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.transitions, definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.defaultState);
2192
+ this.setStateFlow(definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.states, definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.transitions, definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.defaultState, definitionReceived === null || definitionReceived === void 0 ? void 0 : definitionReceived.stateDescriptions);
2191
2193
  this.immutableData = definitionReceived.immutableData;
2192
2194
  this.extraInfo = definitionReceived.extraInfo;
2193
2195
  this.customAttributes = {};
@@ -2282,6 +2284,7 @@ class FormStructureAndData {
2282
2284
  // Estados
2283
2285
  get defaultState() { return this.stateFlow.defaultState; }
2284
2286
  get states() { return this.stateFlow.states; }
2287
+ get stateDescriptions() { return this.stateFlow.stateDescriptions; }
2285
2288
  supportState(state = '') { var _a; return (!!state && ((_a = this.stateFlow.states) === null || _a === void 0 ? void 0 : _a.includes(state))); }
2286
2289
  changeState(newState) {
2287
2290
  const currentState = this.state;
@@ -2301,8 +2304,9 @@ class FormStructureAndData {
2301
2304
  return (this.state === newState);
2302
2305
  }
2303
2306
  get stateChange() { return this._stateChange; }
2304
- setStateFlow(states, transitions, defaultState) {
2307
+ setStateFlow(states, transitions, defaultState, stateDescriptions = []) {
2305
2308
  this.stateFlow.states = states;
2309
+ this.stateFlow.stateDescriptions = stateDescriptions;
2306
2310
  this.stateFlow.defaultState = defaultState || this.stateFlow.states[0];
2307
2311
  this.stateFlow.transitions = transitions.map(transition => {
2308
2312
  const name = transition.name;
@@ -2775,16 +2779,33 @@ class LibFormManagerService {
2775
2779
  }
2776
2780
 
2777
2781
  class LibEventManagerService {
2778
- constructor(eventNames) {
2782
+ constructor(eventSet) {
2779
2783
  this.eventSubjects = {};
2780
- eventNames.forEach((name) => { this.addEventName(name); });
2784
+ this.eventSubjectParams = {};
2785
+ eventSet.forEach((event) => { this.addEventName(event); });
2781
2786
  }
2782
- addEventName(name) {
2783
- if (!this.eventSubjects[name]) {
2784
- const newEventSubject = new ReplaySubject(1);
2787
+ addEventName(event, rebuild = false) {
2788
+ let name;
2789
+ let windowTime;
2790
+ let timestampProvider;
2791
+ if (typeof event === 'string') {
2792
+ name = event;
2793
+ }
2794
+ else {
2795
+ name = event.name;
2796
+ windowTime = event.windowTime;
2797
+ timestampProvider = event.timestampProvider;
2798
+ }
2799
+ if (rebuild || !this.eventSubjects[name]) {
2800
+ const newEventSubject = new ReplaySubject(1, windowTime, timestampProvider);
2785
2801
  this.eventSubjects[name] = newEventSubject;
2802
+ this.eventSubjectParams[name] = { name, windowTime, timestampProvider };
2786
2803
  }
2787
2804
  }
2805
+ resetSubject(eventClassName) {
2806
+ const { name, windowTime, timestampProvider } = this.eventSubjectParams[eventClassName];
2807
+ return this.addEventName({ name, windowTime, timestampProvider });
2808
+ }
2788
2809
  getEventNames() { return Object.keys(this.eventSubjects); }
2789
2810
  getSubject(eventClassName) { return eventClassName ? this.eventSubjects[eventClassName] : null; }
2790
2811
  subscribe(eventClassName, callback) { return this.getSubject(eventClassName).subscribe(callback); }
@@ -3109,6 +3130,9 @@ class BasicFormComponent extends FormStructureAndData {
3109
3130
  this.errorDetail = '';
3110
3131
  this.busy = true;
3111
3132
  const formActionResponse = yield this.formManagerService.execServerAction(actionDetail);
3133
+ if (!formActionResponse) {
3134
+ return null;
3135
+ }
3112
3136
  this.busy = false;
3113
3137
  if (formActionResponse.hasError()) {
3114
3138
  const error = formActionResponse.error;