turbogui-angular 15.3.0 → 17.0.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.
- package/fesm2022/turbogui-angular.mjs +136 -315
- package/fesm2022/turbogui-angular.mjs.map +1 -1
- package/main/controller/dialog.service.d.ts +3 -1
- package/main/controller/dialog.service.d.ts.map +1 -1
- package/main/controller/globalerror.service.d.ts +1 -1
- package/main/controller/locales.service.d.ts +4 -2
- package/main/controller/locales.service.d.ts.map +1 -1
- package/main/controller/turbo-api-caller.service.d.ts +18 -0
- package/main/controller/turbo-api-caller.service.d.ts.map +1 -1
- package/main/model/classes/View.d.ts +9 -2
- package/main/model/classes/View.d.ts.map +1 -1
- package/main/view/components/busy-state-base/busy-state-base.component.d.ts.map +1 -1
- package/main/view/components/button-base/button-base.component.d.ts +1 -1
- package/main/view/components/button-container/button-container.component.d.ts.map +1 -1
- package/main/view/components/button-image/button-image.component.d.ts.map +1 -1
- package/main/view/components/dialog-base/dialog-base.component.d.ts.map +1 -1
- package/main/view/components/dialog-date-selection/dialog-date-selection.component.d.ts.map +1 -1
- package/main/view/components/dialog-error/dialog-error.component.d.ts.map +1 -1
- package/main/view/components/dialog-multiple-option/dialog-multiple-option.component.d.ts.map +1 -1
- package/main/view/components/dialog-single-input/dialog-single-input.component.d.ts.map +1 -1
- package/main/view/components/dialog-single-option/dialog-single-option.component.d.ts.map +1 -1
- package/main/view/components/dialog-single-selection-list/dialog-single-selection-list.component.d.ts.map +1 -1
- package/main/view/components/dialog-two-option/dialog-two-option.component.d.ts.map +1 -1
- package/main/view/directives/AutoFocusOnDisplayDirective.d.ts.map +1 -1
- package/main/view/directives/AutoSelectTextOnFocusDirective.d.ts.map +1 -1
- package/main/view/directives/ElementCreatedDirective.d.ts.map +1 -1
- package/main/view/directives/ElementDestroyedDirective.d.ts.map +1 -1
- package/package.json +1 -3
- package/public_api.d.ts +0 -2
- package/public_api.d.ts.map +1 -1
- package/esm2022/main/controller/browser.service.mjs +0 -51
- package/esm2022/main/controller/dialog.service.mjs +0 -406
- package/esm2022/main/controller/globalerror.service.mjs +0 -73
- package/esm2022/main/controller/http.service.mjs +0 -71
- package/esm2022/main/controller/httpservice/HTTPServiceGetRequest.mjs +0 -15
- package/esm2022/main/controller/httpservice/HTTPServicePostRequest.mjs +0 -15
- package/esm2022/main/controller/locales.service.mjs +0 -492
- package/esm2022/main/controller/notification.service.mjs +0 -61
- package/esm2022/main/controller/turbo-api-caller.service.mjs +0 -424
- package/esm2022/main/controller/views.service.mjs +0 -148
- package/esm2022/main/managers/DelayedMethodCallManager.mjs +0 -70
- package/esm2022/main/model/classes/GUINotification.mjs +0 -32
- package/esm2022/main/model/classes/SingletoneStrictClass.mjs +0 -24
- package/esm2022/main/model/classes/View.mjs +0 -24
- package/esm2022/main/model/classes/ViewService.mjs +0 -15
- package/esm2022/main/model/modules/turbogui-angular.module.mjs +0 -48
- package/esm2022/main/view/animations/fade.animation.mjs +0 -35
- package/esm2022/main/view/components/busy-state-base/busy-state-base.component.mjs +0 -38
- package/esm2022/main/view/components/button-base/button-base.component.mjs +0 -180
- package/esm2022/main/view/components/button-container/button-container.component.mjs +0 -34
- package/esm2022/main/view/components/button-image/button-image.component.mjs +0 -47
- package/esm2022/main/view/components/dialog-base/dialog-base.component.mjs +0 -56
- package/esm2022/main/view/components/dialog-date-selection/dialog-date-selection.component.mjs +0 -39
- package/esm2022/main/view/components/dialog-error/dialog-error.component.mjs +0 -48
- package/esm2022/main/view/components/dialog-multiple-option/dialog-multiple-option.component.mjs +0 -42
- package/esm2022/main/view/components/dialog-single-input/dialog-single-input.component.mjs +0 -84
- package/esm2022/main/view/components/dialog-single-option/dialog-single-option.component.mjs +0 -45
- package/esm2022/main/view/components/dialog-single-selection-list/dialog-single-selection-list.component.mjs +0 -138
- package/esm2022/main/view/components/dialog-two-option/dialog-two-option.component.mjs +0 -46
- package/esm2022/main/view/components/views-container/views-container.component.mjs +0 -70
- package/esm2022/main/view/directives/AutoFocusOnDisplayDirective.mjs +0 -39
- package/esm2022/main/view/directives/AutoSelectTextOnFocusDirective.mjs +0 -39
- package/esm2022/main/view/directives/ElementCreatedDirective.mjs +0 -42
- package/esm2022/main/view/directives/ElementDestroyedDirective.mjs +0 -42
- package/esm2022/main/view/forms/ValidatorsPlus.mjs +0 -39
- package/esm2022/public_api.mjs +0 -47
- package/esm2022/turbogui-angular.mjs +0 -5
- package/main/controller/views.service.d.ts +0 -71
- package/main/controller/views.service.d.ts.map +0 -1
- package/main/view/components/views-container/views-container.component.d.ts +0 -46
- package/main/view/components/views-container/views-container.component.d.ts.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter,
|
|
2
|
+
import { EventEmitter, Output, Directive, HostListener, NgModule, inject, Injectable, Component, Inject, HostBinding, Input } from '@angular/core';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { ArrayUtils, NumericUtils, HTTPManager, StringUtils, HTTPManagerGetRequest, HTTPManagerPostRequest, BrowserManager, ConversionUtils } from 'turbocommons-ts';
|
|
5
5
|
import * as i1 from '@angular/material/dialog';
|
|
@@ -8,18 +8,16 @@ import * as i3 from '@angular/material/button';
|
|
|
8
8
|
import { MatButtonModule } from '@angular/material/button';
|
|
9
9
|
import * as i2 from '@angular/common';
|
|
10
10
|
import { CommonModule } from '@angular/common';
|
|
11
|
-
import
|
|
12
|
-
import { style, animate, transition, trigger } from '@angular/animations';
|
|
11
|
+
import { trigger, transition, style, animate } from '@angular/animations';
|
|
13
12
|
import { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';
|
|
14
13
|
import * as i2$1 from '@angular/material/datepicker';
|
|
15
14
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
16
15
|
import { MatNativeDateModule } from '@angular/material/core';
|
|
17
16
|
import * as i1$1 from '@angular/material/snack-bar';
|
|
18
|
-
import * as i5 from '@angular/material/form-field';
|
|
19
17
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
20
18
|
import * as i4 from '@angular/material/input';
|
|
21
19
|
import { MatInputModule } from '@angular/material/input';
|
|
22
|
-
import * as
|
|
20
|
+
import * as i5 from '@angular/forms';
|
|
23
21
|
import { FormsModule, Validators } from '@angular/forms';
|
|
24
22
|
|
|
25
23
|
/**
|
|
@@ -49,13 +47,14 @@ class ElementCreatedDirective {
|
|
|
49
47
|
ngOnInit() {
|
|
50
48
|
this.elementCreated.next(this);
|
|
51
49
|
}
|
|
52
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
53
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ElementCreatedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: ElementCreatedDirective, isStandalone: false, selector: "[elementCreated]", outputs: { elementCreated: "elementCreated" }, ngImport: i0 }); }
|
|
54
52
|
}
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ElementCreatedDirective, decorators: [{
|
|
56
54
|
type: Directive,
|
|
57
55
|
args: [{
|
|
58
|
-
selector: '[elementCreated]'
|
|
56
|
+
selector: '[elementCreated]',
|
|
57
|
+
standalone: false
|
|
59
58
|
}]
|
|
60
59
|
}], propDecorators: { elementCreated: [{
|
|
61
60
|
type: Output,
|
|
@@ -89,13 +88,14 @@ class ElementDestroyedDirective {
|
|
|
89
88
|
ngOnDestroy() {
|
|
90
89
|
this.elementDestroyed.next(this);
|
|
91
90
|
}
|
|
92
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
93
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
91
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ElementDestroyedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
92
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: ElementDestroyedDirective, isStandalone: false, selector: "[elementDestroyed]", outputs: { elementDestroyed: "elementDestroyed" }, ngImport: i0 }); }
|
|
94
93
|
}
|
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ElementDestroyedDirective, decorators: [{
|
|
96
95
|
type: Directive,
|
|
97
96
|
args: [{
|
|
98
|
-
selector: '[elementDestroyed]'
|
|
97
|
+
selector: '[elementDestroyed]',
|
|
98
|
+
standalone: false
|
|
99
99
|
}]
|
|
100
100
|
}], propDecorators: { elementDestroyed: [{
|
|
101
101
|
type: Output,
|
|
@@ -129,13 +129,14 @@ class AutoFocusOnDisplayDirective {
|
|
|
129
129
|
this.renderer.selectRootElement(this.el.nativeElement).focus();
|
|
130
130
|
}, 0));
|
|
131
131
|
}
|
|
132
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
133
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AutoFocusOnDisplayDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
133
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: AutoFocusOnDisplayDirective, isStandalone: false, selector: "[autoFocusOnDisplay]", ngImport: i0 }); }
|
|
134
134
|
}
|
|
135
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AutoFocusOnDisplayDirective, decorators: [{
|
|
136
136
|
type: Directive,
|
|
137
137
|
args: [{
|
|
138
|
-
selector: '[autoFocusOnDisplay]'
|
|
138
|
+
selector: '[autoFocusOnDisplay]',
|
|
139
|
+
standalone: false
|
|
139
140
|
}]
|
|
140
141
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }] });
|
|
141
142
|
|
|
@@ -163,13 +164,14 @@ class AutoSelectTextOnFocusDirective {
|
|
|
163
164
|
onFocus() {
|
|
164
165
|
this.renderer.selectRootElement(this.el.nativeElement).select();
|
|
165
166
|
}
|
|
166
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
167
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
167
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AutoSelectTextOnFocusDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
168
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: AutoSelectTextOnFocusDirective, isStandalone: false, selector: "[autoSelectTextOnFocus]", host: { listeners: { "focus": "onFocus($event)" } }, ngImport: i0 }); }
|
|
168
169
|
}
|
|
169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: AutoSelectTextOnFocusDirective, decorators: [{
|
|
170
171
|
type: Directive,
|
|
171
172
|
args: [{
|
|
172
|
-
selector: '[autoSelectTextOnFocus]'
|
|
173
|
+
selector: '[autoSelectTextOnFocus]',
|
|
174
|
+
standalone: false
|
|
173
175
|
}]
|
|
174
176
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { onFocus: [{
|
|
175
177
|
type: HostListener,
|
|
@@ -188,17 +190,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
188
190
|
* This file contains the root module that contains all the library declarations and exports.
|
|
189
191
|
*/
|
|
190
192
|
class TurboGuiAngularModule {
|
|
191
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
192
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
193
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboGuiAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
194
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.5", ngImport: i0, type: TurboGuiAngularModule, declarations: [ElementCreatedDirective,
|
|
193
195
|
ElementDestroyedDirective,
|
|
194
196
|
AutoFocusOnDisplayDirective,
|
|
195
197
|
AutoSelectTextOnFocusDirective], exports: [ElementCreatedDirective,
|
|
196
198
|
ElementDestroyedDirective,
|
|
197
199
|
AutoFocusOnDisplayDirective,
|
|
198
200
|
AutoSelectTextOnFocusDirective] }); }
|
|
199
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
201
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboGuiAngularModule }); }
|
|
200
202
|
}
|
|
201
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboGuiAngularModule, decorators: [{
|
|
202
204
|
type: NgModule,
|
|
203
205
|
args: [{
|
|
204
206
|
imports: [],
|
|
@@ -288,10 +290,10 @@ class NotificationService extends SingletoneStrictClass {
|
|
|
288
290
|
unsubscribe(subscription) {
|
|
289
291
|
return subscription.unsubscribe();
|
|
290
292
|
}
|
|
291
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
292
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
293
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: NotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
294
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
|
|
293
295
|
}
|
|
294
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
296
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: NotificationService, decorators: [{
|
|
295
297
|
type: Injectable,
|
|
296
298
|
args: [{
|
|
297
299
|
providedIn: 'root',
|
|
@@ -311,7 +313,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
311
313
|
* It also contains multiple general error management features.
|
|
312
314
|
*
|
|
313
315
|
* To define this class as your application error handler, you must add the following to your
|
|
314
|
-
*
|
|
316
|
+
* Application providers:
|
|
315
317
|
* {
|
|
316
318
|
* provide: ErrorHandler,
|
|
317
319
|
* useClass: GlobalErrorService
|
|
@@ -358,10 +360,10 @@ class GlobalErrorService extends SingletoneStrictClass {
|
|
|
358
360
|
}
|
|
359
361
|
throw error;
|
|
360
362
|
}
|
|
361
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
362
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
363
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: GlobalErrorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
364
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: GlobalErrorService, providedIn: 'root' }); }
|
|
363
365
|
}
|
|
364
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
366
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: GlobalErrorService, decorators: [{
|
|
365
367
|
type: Injectable,
|
|
366
368
|
args: [{
|
|
367
369
|
providedIn: 'root',
|
|
@@ -476,6 +478,8 @@ class LocalesService extends SingletoneStrictClass {
|
|
|
476
478
|
}
|
|
477
479
|
/**
|
|
478
480
|
* Initializes the translation system by loading and parsing bundle files from the specified translations path.
|
|
481
|
+
* After the promise finishes, the class will contain all the translation data and will be ready to translate any
|
|
482
|
+
* provided key.
|
|
479
483
|
*
|
|
480
484
|
* @param translationsPath - Url where the translations Json structure of libraries/bundles/locales/keys is available.
|
|
481
485
|
* @param locales An array of locale codes (e.g., ['en_US', 'es_ES', 'fr_FR']) to load. These will be added to the translation
|
|
@@ -573,8 +577,8 @@ class LocalesService extends SingletoneStrictClass {
|
|
|
573
577
|
* @param string key The key we want to read from the specified resource bundle
|
|
574
578
|
* @param string bundlePath A string with the format 'library_name/bundle_name' that is used to locate the bundle were the key to translate is found
|
|
575
579
|
* @param array replaceWildcards A list of values that will replace wildcards that may be found on the translated text. Each wildcard
|
|
576
|
-
* will be replaced with the element whose index on
|
|
577
|
-
* property to know more about how to setup wildcards.
|
|
580
|
+
* will be replaced with the element whose index on replaceWildcards matches it. Check the documentation for this.wildCardsFormat
|
|
581
|
+
* property to know more about how to setup wildcards on your translations.
|
|
578
582
|
*
|
|
579
583
|
* @see setWildCardsFormat()
|
|
580
584
|
*
|
|
@@ -847,10 +851,10 @@ class LocalesService extends SingletoneStrictClass {
|
|
|
847
851
|
throw new Error(valueName + ' ' + errorMessage);
|
|
848
852
|
}
|
|
849
853
|
}
|
|
850
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
851
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
854
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: LocalesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
855
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: LocalesService, providedIn: 'root' }); }
|
|
852
856
|
}
|
|
853
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
857
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: LocalesService, decorators: [{
|
|
854
858
|
type: Injectable,
|
|
855
859
|
args: [{
|
|
856
860
|
providedIn: 'root',
|
|
@@ -902,12 +906,15 @@ class DialogBaseComponent {
|
|
|
902
906
|
closeDialog(index, value = null) {
|
|
903
907
|
this.dialogRef.close({ index: index, value: value });
|
|
904
908
|
}
|
|
905
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
906
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
909
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogBaseComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
910
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogBaseComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: '', isInline: true }); }
|
|
907
911
|
}
|
|
908
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
912
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogBaseComponent, decorators: [{
|
|
909
913
|
type: Component,
|
|
910
|
-
args: [{
|
|
914
|
+
args: [{
|
|
915
|
+
template: '',
|
|
916
|
+
standalone: false
|
|
917
|
+
}]
|
|
911
918
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }] });
|
|
912
919
|
|
|
913
920
|
/**
|
|
@@ -938,12 +945,12 @@ class DialogErrorComponent extends DialogBaseComponent {
|
|
|
938
945
|
data.texts[1] = data.texts[1].replace(/\n/g, "<br/>");
|
|
939
946
|
}
|
|
940
947
|
}
|
|
941
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
942
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
948
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogErrorComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
949
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogErrorComponent, isStandalone: true, selector: "tg-dialog-error", providers: [], usesInheritance: true, ngImport: i0, template: "<div class=\"titleAndIconContainer\">\r\n <h3>\r\n {{data.texts[0]}}\r\n </h3>\r\n \r\n <!-- error icon -->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\"/>\r\n <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z\" fill=\"#ff0000\" />\r\n </svg>\r\n \r\n</div>\r\n\r\n<div class=\"textContainer\">\r\n <p *ngIf=\"data.texts.length > 1\" [innerHTML]=\"data.texts[1]\">\r\n </p>\r\n</div>\r\n\r\n<button mat-raised-button color=\"warn\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{position:relative;min-height:300px}.titleAndIconContainer{display:flex;flex-direction:row;align-items:center;justify-content:space-between}svg{height:10vh;width:auto}.textContainer{margin-top:5px;max-height:70vh;overflow:auto}p{-webkit-user-select:text;user-select:text}h3{margin-top:0;margin-bottom:25px;width:82%}button{width:100%;margin-top:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
943
950
|
}
|
|
944
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
951
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogErrorComponent, decorators: [{
|
|
945
952
|
type: Component,
|
|
946
|
-
args: [{ selector: 'tg-dialog-error',
|
|
953
|
+
args: [{ selector: 'tg-dialog-error', imports: [CommonModule, MatButtonModule], providers: [], template: "<div class=\"titleAndIconContainer\">\r\n <h3>\r\n {{data.texts[0]}}\r\n </h3>\r\n \r\n <!-- error icon -->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\"/>\r\n <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z\" fill=\"#ff0000\" />\r\n </svg>\r\n \r\n</div>\r\n\r\n<div class=\"textContainer\">\r\n <p *ngIf=\"data.texts.length > 1\" [innerHTML]=\"data.texts[1]\">\r\n </p>\r\n</div>\r\n\r\n<button mat-raised-button color=\"warn\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{position:relative;min-height:300px}.titleAndIconContainer{display:flex;flex-direction:row;align-items:center;justify-content:space-between}svg{height:10vh;width:auto}.textContainer{margin-top:5px;max-height:70vh;overflow:auto}p{-webkit-user-select:text;user-select:text}h3{margin-top:0;margin-bottom:25px;width:82%}button{width:100%;margin-top:5px}\n"] }]
|
|
947
954
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
948
955
|
type: Inject,
|
|
949
956
|
args: [MAT_DIALOG_DATA]
|
|
@@ -974,10 +981,10 @@ class FadeAnimationClass {
|
|
|
974
981
|
transition('* => void', [animate(leave, style({ opacity: 0 }))])
|
|
975
982
|
]);
|
|
976
983
|
}
|
|
977
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
978
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
984
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: FadeAnimationClass, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
985
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: FadeAnimationClass }); }
|
|
979
986
|
}
|
|
980
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
987
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: FadeAnimationClass, decorators: [{
|
|
981
988
|
type: Injectable
|
|
982
989
|
}] });
|
|
983
990
|
|
|
@@ -1005,12 +1012,12 @@ class BusyStateBaseComponent {
|
|
|
1005
1012
|
*/
|
|
1006
1013
|
this.busyStateBaseFade = true;
|
|
1007
1014
|
}
|
|
1008
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1009
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1015
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BusyStateBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1016
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: BusyStateBaseComponent, isStandalone: true, selector: "tg-busy-state-base", host: { properties: { "@busyStateBaseFade": "this.busyStateBaseFade" } }, providers: [], ngImport: i0, template: "<div class=\"darkBg\">\r\n\r\n</div>\r\n\r\n<svg width=\"38\" height=\"38\" viewBox=\"0 0 38 38\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"#fff\">\r\n <g fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(1 1)\" stroke-width=\"1\">\r\n <circle stroke-opacity=\".2\" cx=\"18\" cy=\"18\" r=\"18\"/>\r\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\r\n <animateTransform\r\n attributeName=\"transform\"\r\n type=\"rotate\"\r\n from=\"0 18 18\"\r\n to=\"360 18 18\"\r\n dur=\"1s\"\r\n repeatCount=\"indefinite\"/>\r\n </path>\r\n </g>\r\n </g>\r\n</svg>\r\n", styles: [":host{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;z-index:999999999}.darkBg{position:absolute;cursor:progress;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:#00000096;animation-name:bgfadein;animation-duration:30s;animation-timing-function:ease}svg{z-index:5000;width:40%;height:40%;max-width:130px;max-height:130px;animation-name:loadingfadein;animation-duration:3s;animation-timing-function:ease-in}@keyframes loadingfadein{0%{opacity:0}25%{opacity:0}to{opacity:1}}@keyframes bgfadein{0%{opacity:0}4%{opacity:0}14%{opacity:.2}35%{opacity:.5}to{opacity:1}}\n"], animations: [FadeAnimationClass.getTrigger('busyStateBaseFade', '1s ease', '400ms ease')] }); }
|
|
1010
1017
|
}
|
|
1011
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1018
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BusyStateBaseComponent, decorators: [{
|
|
1012
1019
|
type: Component,
|
|
1013
|
-
args: [{ selector: 'tg-busy-state-base',
|
|
1020
|
+
args: [{ selector: 'tg-busy-state-base', imports: [], providers: [], animations: [FadeAnimationClass.getTrigger('busyStateBaseFade', '1s ease', '400ms ease')], template: "<div class=\"darkBg\">\r\n\r\n</div>\r\n\r\n<svg width=\"38\" height=\"38\" viewBox=\"0 0 38 38\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"#fff\">\r\n <g fill=\"none\" fill-rule=\"evenodd\">\r\n <g transform=\"translate(1 1)\" stroke-width=\"1\">\r\n <circle stroke-opacity=\".2\" cx=\"18\" cy=\"18\" r=\"18\"/>\r\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\r\n <animateTransform\r\n attributeName=\"transform\"\r\n type=\"rotate\"\r\n from=\"0 18 18\"\r\n to=\"360 18 18\"\r\n dur=\"1s\"\r\n repeatCount=\"indefinite\"/>\r\n </path>\r\n </g>\r\n </g>\r\n</svg>\r\n", styles: [":host{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;z-index:999999999}.darkBg{position:absolute;cursor:progress;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:#00000096;animation-name:bgfadein;animation-duration:30s;animation-timing-function:ease}svg{z-index:5000;width:40%;height:40%;max-width:130px;max-height:130px;animation-name:loadingfadein;animation-duration:3s;animation-timing-function:ease-in}@keyframes loadingfadein{0%{opacity:0}25%{opacity:0}to{opacity:1}}@keyframes bgfadein{0%{opacity:0}4%{opacity:0}14%{opacity:.2}35%{opacity:.5}to{opacity:1}}\n"] }]
|
|
1014
1021
|
}], propDecorators: { busyStateBaseFade: [{
|
|
1015
1022
|
type: HostBinding,
|
|
1016
1023
|
args: ['@busyStateBaseFade']
|
|
@@ -1035,12 +1042,12 @@ class DialogDateSelectionComponent extends DialogBaseComponent {
|
|
|
1035
1042
|
this.dialogRef = dialogRef;
|
|
1036
1043
|
this.data = data;
|
|
1037
1044
|
}
|
|
1038
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1039
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1045
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogDateSelectionComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1046
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogDateSelectionComponent, isStandalone: true, selector: "tg-dialog-date-selection", providers: [], usesInheritance: true, ngImport: i0, template: "<h2>{{data.texts[0]}}</h2>\r\n\r\n<mat-calendar #calendar\r\n (selectedChange)=\"closeDialog(0, $event)\">\r\n</mat-calendar>", styles: [":host{position:relative;min-height:300px}h1{margin-top:0;margin-bottom:25px;width:82%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i2$1.MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "ngmodule", type: MatNativeDateModule }] }); }
|
|
1040
1047
|
}
|
|
1041
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1048
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogDateSelectionComponent, decorators: [{
|
|
1042
1049
|
type: Component,
|
|
1043
|
-
args: [{ selector: 'tg-dialog-date-selection',
|
|
1050
|
+
args: [{ selector: 'tg-dialog-date-selection', imports: [CommonModule, MatDatepickerModule, MatNativeDateModule], providers: [], template: "<h2>{{data.texts[0]}}</h2>\r\n\r\n<mat-calendar #calendar\r\n (selectedChange)=\"closeDialog(0, $event)\">\r\n</mat-calendar>", styles: [":host{position:relative;min-height:300px}h1{margin-top:0;margin-bottom:25px;width:82%}\n"] }]
|
|
1044
1051
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
1045
1052
|
type: Inject,
|
|
1046
1053
|
args: [MAT_DIALOG_DATA]
|
|
@@ -1273,8 +1280,9 @@ class DialogService extends SingletoneStrictClass {
|
|
|
1273
1280
|
* - modal: True (default) if selecting an option is mandatory to close the dialog, false if the dialog can be closed
|
|
1274
1281
|
* by the user clicking outside it
|
|
1275
1282
|
* - texts: A list with strings containing the dialog texts, sorted by importance. When dialog has a title, this should
|
|
1276
|
-
* be placed first, subtitle second and so (Each dialog may accept different number of texts).
|
|
1283
|
+
* be placed first, subtitle second and so (Each dialog may accept a different custom number of texts).
|
|
1277
1284
|
* - options: A list of strings that will be used as button captions for each one of the accepted dialog options
|
|
1285
|
+
* - data: An object that we can use to pass any extra data that we want to the dialog
|
|
1278
1286
|
* - viewContainerRef: This is important if we want to propagate providers from a parent component to this dialog. We must specify
|
|
1279
1287
|
* this reference to make sure the same services injected on the parent are available too at the child dialog
|
|
1280
1288
|
*
|
|
@@ -1289,6 +1297,7 @@ class DialogService extends SingletoneStrictClass {
|
|
|
1289
1297
|
properties.modal = properties.modal ?? true;
|
|
1290
1298
|
properties.texts = properties.texts ?? [];
|
|
1291
1299
|
properties.options = properties.options ?? [];
|
|
1300
|
+
properties.data = properties.data ?? {};
|
|
1292
1301
|
// Generate a string to uniquely identify this dialog on the list of active dialogs
|
|
1293
1302
|
// A dialog is considered as unique if the dialog id and texts are exactly the same. We do not take options into consideration
|
|
1294
1303
|
// as there may be dialogs with a big amount of options available.
|
|
@@ -1308,7 +1317,7 @@ class DialogService extends SingletoneStrictClass {
|
|
|
1308
1317
|
autoFocus: false,
|
|
1309
1318
|
closeOnNavigation: !properties.modal,
|
|
1310
1319
|
viewContainerRef: properties.viewContainerRef,
|
|
1311
|
-
data: { texts: properties.texts, options: properties.options }
|
|
1320
|
+
data: { texts: properties.texts, options: properties.options, data: properties.data }
|
|
1312
1321
|
});
|
|
1313
1322
|
// Assign the dialog ID only if specifically set on properties
|
|
1314
1323
|
if (properties.id && properties.id !== undefined) {
|
|
@@ -1433,10 +1442,10 @@ class DialogService extends SingletoneStrictClass {
|
|
|
1433
1442
|
this._documentMousedownUnlisten = null;
|
|
1434
1443
|
}
|
|
1435
1444
|
}
|
|
1436
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1437
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1445
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogService, deps: [{ token: i0.RendererFactory2 }, { token: i1$1.MatSnackBar }, { token: i1.MatDialog }, { token: i0.Injector }, { token: i0.ApplicationRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1446
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogService, providedIn: 'root' }); }
|
|
1438
1447
|
}
|
|
1439
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1448
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogService, decorators: [{
|
|
1440
1449
|
type: Injectable,
|
|
1441
1450
|
args: [{
|
|
1442
1451
|
providedIn: 'root',
|
|
@@ -1499,10 +1508,10 @@ class HTTPService extends HTTPManager {
|
|
|
1499
1508
|
}
|
|
1500
1509
|
}, progressCallback);
|
|
1501
1510
|
}
|
|
1502
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1503
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1511
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: HTTPService, deps: [{ token: DialogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1512
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: HTTPService, providedIn: 'root' }); }
|
|
1504
1513
|
}
|
|
1505
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1514
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: HTTPService, decorators: [{
|
|
1506
1515
|
type: Injectable,
|
|
1507
1516
|
args: [{
|
|
1508
1517
|
providedIn: 'root',
|
|
@@ -1574,10 +1583,10 @@ class BrowserService extends BrowserManager {
|
|
|
1574
1583
|
subscribeToUrlChange(onNext) {
|
|
1575
1584
|
return this.location.subscribe(onNext);
|
|
1576
1585
|
}
|
|
1577
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1578
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1586
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BrowserService, deps: [{ token: i2.Location }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1587
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BrowserService, providedIn: 'root' }); }
|
|
1579
1588
|
}
|
|
1580
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1589
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: BrowserService, decorators: [{
|
|
1581
1590
|
type: Injectable,
|
|
1582
1591
|
args: [{
|
|
1583
1592
|
providedIn: 'root',
|
|
@@ -1604,6 +1613,10 @@ class TurboApiCallerService extends SingletoneStrictClass {
|
|
|
1604
1613
|
* URI Path to the web service that performs the user login
|
|
1605
1614
|
*/
|
|
1606
1615
|
this.loginServiceURI = 'users/login';
|
|
1616
|
+
/**
|
|
1617
|
+
* URI Path to the web service that allows us to create extra user tokens
|
|
1618
|
+
*/
|
|
1619
|
+
this.tokenCreationServiceURI = 'users/user-token-create';
|
|
1607
1620
|
/**
|
|
1608
1621
|
* URI Path to the web service that performs the user log out
|
|
1609
1622
|
*/
|
|
@@ -1744,7 +1757,6 @@ class TurboApiCallerService extends SingletoneStrictClass {
|
|
|
1744
1757
|
*/
|
|
1745
1758
|
getLastVerifiedMail() {
|
|
1746
1759
|
return this._lastVerifiedMail;
|
|
1747
|
-
;
|
|
1748
1760
|
}
|
|
1749
1761
|
/**
|
|
1750
1762
|
* Authenticates the userName and password that are currently defined at the respective properties of this service.
|
|
@@ -1796,6 +1808,18 @@ class TurboApiCallerService extends SingletoneStrictClass {
|
|
|
1796
1808
|
this.httpManager.execute(request);
|
|
1797
1809
|
});
|
|
1798
1810
|
}
|
|
1811
|
+
/**
|
|
1812
|
+
* Perform a request to the API service to create a new token for the user that is currently logged in.
|
|
1813
|
+
*
|
|
1814
|
+
* @param options The parameters that will affect the token behaviour. To learn more about each option, please
|
|
1815
|
+
* refer to the turbodepot UsersManager class createToken method documentation
|
|
1816
|
+
*
|
|
1817
|
+
* @returns A promise that resolves with the created token string if the request is successful, or rejects
|
|
1818
|
+
* with an error (containing all the error response details) if the request fails.
|
|
1819
|
+
*/
|
|
1820
|
+
createUserToken(options) {
|
|
1821
|
+
return this.call(this.tokenCreationServiceURI, { options: options }, { resultFormat: 'STRING' });
|
|
1822
|
+
}
|
|
1799
1823
|
/**
|
|
1800
1824
|
* Checks if the user and password credentials are filled and not empty.
|
|
1801
1825
|
* If any of the two values is empty, false will be returned
|
|
@@ -1991,159 +2015,16 @@ class TurboApiCallerService extends SingletoneStrictClass {
|
|
|
1991
2015
|
this._token = '';
|
|
1992
2016
|
this.httpManager.setGlobalPostParam('token', '-');
|
|
1993
2017
|
}
|
|
1994
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1995
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2018
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboApiCallerService, deps: [{ token: DialogService }, { token: BrowserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2019
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboApiCallerService, providedIn: 'root' }); }
|
|
1996
2020
|
}
|
|
1997
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: TurboApiCallerService, decorators: [{
|
|
1998
2022
|
type: Injectable,
|
|
1999
2023
|
args: [{
|
|
2000
2024
|
providedIn: 'root',
|
|
2001
2025
|
}]
|
|
2002
2026
|
}], ctorParameters: () => [{ type: DialogService }, { type: BrowserService }] });
|
|
2003
2027
|
|
|
2004
|
-
/**
|
|
2005
|
-
* TurboGUI is A library that helps with the most common and generic UI elements and functionalities
|
|
2006
|
-
*
|
|
2007
|
-
* Website : -> http://www.turbogui.org
|
|
2008
|
-
* License : -> Licensed under the Apache License, Version 2.0. You may not use this file except in compliance with the License.
|
|
2009
|
-
* License Url : -> http://www.apache.org/licenses/LICENSE-2.0
|
|
2010
|
-
* CopyRight : -> Copyright 2018 Edertone Advanded Solutions. https://www.edertone.com
|
|
2011
|
-
*/
|
|
2012
|
-
/**
|
|
2013
|
-
* Manages adding, removing and manipulating the application views
|
|
2014
|
-
*/
|
|
2015
|
-
class ViewsService extends SingletoneStrictClass {
|
|
2016
|
-
constructor(animationBuilder) {
|
|
2017
|
-
super(ViewsService);
|
|
2018
|
-
this.animationBuilder = animationBuilder;
|
|
2019
|
-
/**
|
|
2020
|
-
* See getter method for docs
|
|
2021
|
-
*/
|
|
2022
|
-
this._loadedViewClass = null;
|
|
2023
|
-
/**
|
|
2024
|
-
* See setter method for docs
|
|
2025
|
-
*/
|
|
2026
|
-
this._viewContainerRef = null;
|
|
2027
|
-
/**
|
|
2028
|
-
* Contains the reference to the currently loaded view component
|
|
2029
|
-
*/
|
|
2030
|
-
this._currentComponentRef = null;
|
|
2031
|
-
/**
|
|
2032
|
-
* Flag that stores if any view is in the process of being loaded
|
|
2033
|
-
*/
|
|
2034
|
-
this._isLoadingView = false;
|
|
2035
|
-
}
|
|
2036
|
-
/**
|
|
2037
|
-
* Tells if there's any view currently loaded on the application views container
|
|
2038
|
-
*/
|
|
2039
|
-
get isViewLoaded() {
|
|
2040
|
-
return this._loadedViewClass !== null;
|
|
2041
|
-
}
|
|
2042
|
-
/**
|
|
2043
|
-
* Stores a reference to the visual element that will be used as the container for all the views.
|
|
2044
|
-
* This is automatically assigned by the tg-views-container component once it is created.
|
|
2045
|
-
*
|
|
2046
|
-
* @see ViewsContainerComponent for more information
|
|
2047
|
-
*/
|
|
2048
|
-
set viewContainerRef(ref) {
|
|
2049
|
-
if (ref !== null && this._viewContainerRef !== null) {
|
|
2050
|
-
throw new Error('Views container already defined. Only one views container element can exist on an application');
|
|
2051
|
-
}
|
|
2052
|
-
this._viewContainerRef = ref;
|
|
2053
|
-
}
|
|
2054
|
-
/**
|
|
2055
|
-
* Create a new view instance with the specified type and add it to the current application views container. Any currently loaded
|
|
2056
|
-
* view will be removed.
|
|
2057
|
-
*
|
|
2058
|
-
* If we push a view while another one is in the process of being loaded, the new push will be ignored.
|
|
2059
|
-
*
|
|
2060
|
-
* Make sure this method is called when all the visual components of the application have been created (ngAfterViewInit)
|
|
2061
|
-
*
|
|
2062
|
-
* @param view The classname for the view that we want to create (must extend View base class). A new angular object
|
|
2063
|
-
* will be instantiated and loaded into the views container.
|
|
2064
|
-
*/
|
|
2065
|
-
async pushView(view) {
|
|
2066
|
-
// If the loaded view is the same as the specified one, we will do nothing
|
|
2067
|
-
if (this._loadedViewClass === view) {
|
|
2068
|
-
return;
|
|
2069
|
-
}
|
|
2070
|
-
// If a view is already being loaded, nothing to do
|
|
2071
|
-
if (this._isLoadingView) {
|
|
2072
|
-
return;
|
|
2073
|
-
}
|
|
2074
|
-
this._isLoadingView = true;
|
|
2075
|
-
// If a view is already loaded, we will unload it first
|
|
2076
|
-
if (this._loadedViewClass !== null) {
|
|
2077
|
-
await this.removeCurrentView();
|
|
2078
|
-
}
|
|
2079
|
-
// Create the new view
|
|
2080
|
-
const newComponentRef = this._viewContainerRef.createComponent(view);
|
|
2081
|
-
newComponentRef.changeDetectorRef.detectChanges();
|
|
2082
|
-
// Set initial opacity to 0
|
|
2083
|
-
newComponentRef.location.nativeElement.style.opacity = '0';
|
|
2084
|
-
// Fade in the new view
|
|
2085
|
-
const fadeInPlayer = this.animationBuilder.build([
|
|
2086
|
-
style({ opacity: 0 }),
|
|
2087
|
-
animate('300ms ease', style({ opacity: 1 }))
|
|
2088
|
-
]).create(newComponentRef.location.nativeElement);
|
|
2089
|
-
await new Promise((resolve) => {
|
|
2090
|
-
fadeInPlayer.onDone(() => {
|
|
2091
|
-
this._currentComponentRef = newComponentRef;
|
|
2092
|
-
this._loadedViewClass = view;
|
|
2093
|
-
this._isLoadingView = false;
|
|
2094
|
-
resolve();
|
|
2095
|
-
});
|
|
2096
|
-
fadeInPlayer.play();
|
|
2097
|
-
});
|
|
2098
|
-
}
|
|
2099
|
-
/**
|
|
2100
|
-
* Delete the currently loaded view from the views container, and leave it empty.
|
|
2101
|
-
* If no view is currently loaded, this method will do nothing
|
|
2102
|
-
*/
|
|
2103
|
-
async popView() {
|
|
2104
|
-
if (this._loadedViewClass !== null && this._currentComponentRef) {
|
|
2105
|
-
await this.removeCurrentView();
|
|
2106
|
-
}
|
|
2107
|
-
}
|
|
2108
|
-
/**
|
|
2109
|
-
* Aux method to remove the currently loaded view from the views container using a promise
|
|
2110
|
-
*/
|
|
2111
|
-
removeCurrentView() {
|
|
2112
|
-
if (this._viewContainerRef === null) {
|
|
2113
|
-
throw new Error('Views container not defined. Please declare a <views-container> element in your application');
|
|
2114
|
-
}
|
|
2115
|
-
return new Promise((resolve) => {
|
|
2116
|
-
if (this._currentComponentRef) {
|
|
2117
|
-
const element = this._currentComponentRef.location.nativeElement;
|
|
2118
|
-
const fadeOutPlayer = this.animationBuilder.build([
|
|
2119
|
-
style({ opacity: 1 }),
|
|
2120
|
-
animate('300ms ease', style({ opacity: 0 }))
|
|
2121
|
-
]).create(element);
|
|
2122
|
-
fadeOutPlayer.onDone(() => {
|
|
2123
|
-
if (this._viewContainerRef !== null) {
|
|
2124
|
-
this._viewContainerRef.clear();
|
|
2125
|
-
}
|
|
2126
|
-
this._currentComponentRef = null;
|
|
2127
|
-
this._loadedViewClass = null;
|
|
2128
|
-
resolve();
|
|
2129
|
-
});
|
|
2130
|
-
fadeOutPlayer.play();
|
|
2131
|
-
}
|
|
2132
|
-
else {
|
|
2133
|
-
resolve();
|
|
2134
|
-
}
|
|
2135
|
-
});
|
|
2136
|
-
}
|
|
2137
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ViewsService, deps: [{ token: i1$2.AnimationBuilder }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2138
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ViewsService, providedIn: 'root' }); }
|
|
2139
|
-
}
|
|
2140
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ViewsService, decorators: [{
|
|
2141
|
-
type: Injectable,
|
|
2142
|
-
args: [{
|
|
2143
|
-
providedIn: 'root',
|
|
2144
|
-
}]
|
|
2145
|
-
}], ctorParameters: () => [{ type: i1$2.AnimationBuilder }] });
|
|
2146
|
-
|
|
2147
2028
|
/**
|
|
2148
2029
|
* TurboGUI is A library that helps with the most common and generic UI elements and functionalities
|
|
2149
2030
|
*
|
|
@@ -2169,12 +2050,12 @@ class DialogSingleOptionComponent extends DialogBaseComponent {
|
|
|
2169
2050
|
throw new Error('DialogSingleOptionComponent expects only one option');
|
|
2170
2051
|
}
|
|
2171
2052
|
}
|
|
2172
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2173
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2053
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleOptionComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2054
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSingleOptionComponent, isStandalone: true, selector: "tg-dialog-single-option", providers: [], usesInheritance: true, ngImport: i0, template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-bottom:25px}p{margin-bottom:52px}button{float:right}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
2174
2055
|
}
|
|
2175
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2056
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleOptionComponent, decorators: [{
|
|
2176
2057
|
type: Component,
|
|
2177
|
-
args: [{ selector: 'tg-dialog-single-option',
|
|
2058
|
+
args: [{ selector: 'tg-dialog-single-option', imports: [CommonModule, MatButtonModule], providers: [], template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-bottom:25px}p{margin-bottom:52px}button{float:right}\n"] }]
|
|
2178
2059
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
2179
2060
|
type: Inject,
|
|
2180
2061
|
args: [MAT_DIALOG_DATA]
|
|
@@ -2206,12 +2087,12 @@ class DialogTwoOptionComponent extends DialogBaseComponent {
|
|
|
2206
2087
|
throw new Error('DialogTwoOptionComponent expects only two options');
|
|
2207
2088
|
}
|
|
2208
2089
|
}
|
|
2209
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2210
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2090
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogTwoOptionComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2091
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogTwoOptionComponent, isStandalone: true, selector: "tg-dialog-two-option", providers: [], usesInheritance: true, ngImport: i0, template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<div class=\"buttonsContainer\">\r\n\r\n <button mat-raised-button color=\"primary\" class=\"primaryButton\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n </button>\r\n \r\n <button mat-button\r\n (click)=\"closeDialog(1)\">\r\n \r\n {{data.options[1]}}\r\n \r\n </button>\r\n \r\n</div>\r\n", styles: [":host{min-height:300px}h3{margin-bottom:25px}p{margin-bottom:52px}.buttonsContainer{width:100%;max-width:530px;display:flex;flex-direction:row-reverse;float:right}button{width:50%;padding:0}.primaryButton{margin-left:2%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
2211
2092
|
}
|
|
2212
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2093
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogTwoOptionComponent, decorators: [{
|
|
2213
2094
|
type: Component,
|
|
2214
|
-
args: [{ selector: 'tg-dialog-two-option',
|
|
2095
|
+
args: [{ selector: 'tg-dialog-two-option', imports: [CommonModule, MatButtonModule], providers: [], template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<div class=\"buttonsContainer\">\r\n\r\n <button mat-raised-button color=\"primary\" class=\"primaryButton\"\r\n (click)=\"closeDialog(0)\">\r\n \r\n {{data.options[0]}}\r\n \r\n </button>\r\n \r\n <button mat-button\r\n (click)=\"closeDialog(1)\">\r\n \r\n {{data.options[1]}}\r\n \r\n </button>\r\n \r\n</div>\r\n", styles: [":host{min-height:300px}h3{margin-bottom:25px}p{margin-bottom:52px}.buttonsContainer{width:100%;max-width:530px;display:flex;flex-direction:row-reverse;float:right}button{width:50%;padding:0}.primaryButton{margin-left:2%}\n"] }]
|
|
2215
2096
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
2216
2097
|
type: Inject,
|
|
2217
2098
|
args: [MAT_DIALOG_DATA]
|
|
@@ -2239,12 +2120,12 @@ class DialogMultipleOptionComponent extends DialogBaseComponent {
|
|
|
2239
2120
|
throw new Error('DialogMultipleOptionComponent expects 2 texts: The title and optionally a description');
|
|
2240
2121
|
}
|
|
2241
2122
|
}
|
|
2242
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2243
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2123
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogMultipleOptionComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2124
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogMultipleOptionComponent, isStandalone: true, selector: "tg-dialog-multiple-option", providers: [], usesInheritance: true, ngImport: i0, template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n *ngFor=\"let option of data.options; let i = index\"\r\n (click)=\"closeDialog(i)\">\r\n \r\n {{option}}\r\n \r\n</button>", styles: [":host{display:flex;flex-direction:column;min-height:193px}h3{margin-bottom:45px}button{margin-bottom:25px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
2244
2125
|
}
|
|
2245
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogMultipleOptionComponent, decorators: [{
|
|
2246
2127
|
type: Component,
|
|
2247
|
-
args: [{ selector: 'tg-dialog-multiple-option',
|
|
2128
|
+
args: [{ selector: 'tg-dialog-multiple-option', imports: [CommonModule, MatButtonModule], providers: [], template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n *ngFor=\"let option of data.options; let i = index\"\r\n (click)=\"closeDialog(i)\">\r\n \r\n {{option}}\r\n \r\n</button>", styles: [":host{display:flex;flex-direction:column;min-height:193px}h3{margin-bottom:45px}button{margin-bottom:25px}\n"] }]
|
|
2248
2129
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
2249
2130
|
type: Inject,
|
|
2250
2131
|
args: [MAT_DIALOG_DATA]
|
|
@@ -2362,12 +2243,12 @@ class DialogSingleSelectionListComponent extends DialogBaseComponent {
|
|
|
2362
2243
|
}
|
|
2363
2244
|
}
|
|
2364
2245
|
}
|
|
2365
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2366
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2246
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleSelectionListComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: BrowserService }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2247
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSingleSelectionListComponent, isStandalone: true, selector: "tg-dialog-single-selection-list", providers: [], usesInheritance: true, ngImport: i0, template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<!-- Here goes the dialog subtitle. Leave it blank if you don't need it -->\r\n<p *ngIf=\"data.texts.length > 1 && !stringUtils.isEmpty(data.texts[1])\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<mat-form-field *ngIf=\"data.texts.length > 2 && !stringUtils.isEmpty(data.texts[2])\"\r\n class=\"searchItemInputContainer\">\r\n \r\n <mat-label>{{data.texts[2]}}</mat-label>\r\n <input matInput autoFocusOnDisplay\r\n (keyup.enter)=\"onIntroKeyPress()\"\r\n (input)=\"onSearchChange($event.target)\">\r\n \r\n</mat-form-field>\r\n\r\n<!-- here goes the list of elements that will be shown to the user -->\r\n<div class=\"listItemsContainer\"\r\n [style.max-height]=\"getListItemsContainerMaxheight()\">\r\n\r\n <div class=\"listItemContainer\"\r\n [style.background-color]=\"selectedItemIndex === i ? '#90d1ffad' : (i % 2 === 0 ? 'initial' : '#00000009')\"\r\n *ngFor=\"let item of filteredOptions; let i = index; trackBy: trackByFn\"\r\n (click)=\"data.texts.length < 4 ? closeDialog(i) : selectedItemIndex = i\">\r\n \r\n <p *ngIf=\"item !== ''\">\r\n {{item}}\r\n </p>\r\n \r\n </div>\r\n\r\n</div>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n [disabled]=\"selectedItemIndex < 0\"\r\n (click)=\"closeDialog(selectedItemIndex)\"\r\n *ngIf=\"data.texts.length > 3\">\r\n\r\n {{data.texts[3]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-top:0;margin-bottom:10px}p{margin-top:0;margin-bottom:5px}.searchItemInputContainer{width:100%;margin-top:0;margin-bottom:0}.listItemsContainer{overflow-y:auto;border:1px solid rgba(0,0,0,.2);border-radius:4px;margin-bottom:5px}.listItemContainer p{line-height:36px;width:calc(100% - 12px);margin:0 0 0 6px}button{float:right}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: TurboGuiAngularModule }, { kind: "directive", type: AutoFocusOnDisplayDirective, selector: "[autoFocusOnDisplay]" }] }); }
|
|
2367
2248
|
}
|
|
2368
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleSelectionListComponent, decorators: [{
|
|
2369
2250
|
type: Component,
|
|
2370
|
-
args: [{ selector: 'tg-dialog-single-selection-list',
|
|
2251
|
+
args: [{ selector: 'tg-dialog-single-selection-list', imports: [CommonModule, MatInputModule, MatFormFieldModule, TurboGuiAngularModule], providers: [], template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<!-- Here goes the dialog subtitle. Leave it blank if you don't need it -->\r\n<p *ngIf=\"data.texts.length > 1 && !stringUtils.isEmpty(data.texts[1])\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<mat-form-field *ngIf=\"data.texts.length > 2 && !stringUtils.isEmpty(data.texts[2])\"\r\n class=\"searchItemInputContainer\">\r\n \r\n <mat-label>{{data.texts[2]}}</mat-label>\r\n <input matInput autoFocusOnDisplay\r\n (keyup.enter)=\"onIntroKeyPress()\"\r\n (input)=\"onSearchChange($event.target)\">\r\n \r\n</mat-form-field>\r\n\r\n<!-- here goes the list of elements that will be shown to the user -->\r\n<div class=\"listItemsContainer\"\r\n [style.max-height]=\"getListItemsContainerMaxheight()\">\r\n\r\n <div class=\"listItemContainer\"\r\n [style.background-color]=\"selectedItemIndex === i ? '#90d1ffad' : (i % 2 === 0 ? 'initial' : '#00000009')\"\r\n *ngFor=\"let item of filteredOptions; let i = index; trackBy: trackByFn\"\r\n (click)=\"data.texts.length < 4 ? closeDialog(i) : selectedItemIndex = i\">\r\n \r\n <p *ngIf=\"item !== ''\">\r\n {{item}}\r\n </p>\r\n \r\n </div>\r\n\r\n</div>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n [disabled]=\"selectedItemIndex < 0\"\r\n (click)=\"closeDialog(selectedItemIndex)\"\r\n *ngIf=\"data.texts.length > 3\">\r\n\r\n {{data.texts[3]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-top:0;margin-bottom:10px}p{margin-top:0;margin-bottom:5px}.searchItemInputContainer{width:100%;margin-top:0;margin-bottom:0}.listItemsContainer{overflow-y:auto;border:1px solid rgba(0,0,0,.2);border-radius:4px;margin-bottom:5px}.listItemContainer p{line-height:36px;width:calc(100% - 12px);margin:0 0 0 6px}button{float:right}\n"] }]
|
|
2371
2252
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: BrowserService }, { type: undefined, decorators: [{
|
|
2372
2253
|
type: Inject,
|
|
2373
2254
|
args: [MAT_DIALOG_DATA]
|
|
@@ -2427,85 +2308,18 @@ class DialogSingleInputComponent extends DialogBaseComponent {
|
|
|
2427
2308
|
closeDialog() {
|
|
2428
2309
|
super.closeDialog(0, this.inputText);
|
|
2429
2310
|
}
|
|
2430
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2431
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2311
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleInputComponent, deps: [{ token: i0.ElementRef }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2312
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: DialogSingleInputComponent, isStandalone: true, selector: "tg-dialog-single-input", providers: [], usesInheritance: true, ngImport: i0, template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1 && data.texts[1] !== ''\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<mat-form-field>\r\n\r\n <mat-label>{{data.texts[2]}}</mat-label>\r\n <input matInput autoFocusOnDisplay autoSelectTextOnFocus\r\n (keyup.enter)=\"closeDialog()\"\r\n [(ngModel)]=\"inputText\">\r\n \r\n</mat-form-field>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n [disabled]=\"isButtonDisabled()\"\r\n (click)=\"closeDialog()\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-top:1vh;margin-bottom:3vh}p{margin-top:0;margin-bottom:5vh}button{min-height:5vh}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TurboGuiAngularModule }, { kind: "directive", type: AutoFocusOnDisplayDirective, selector: "[autoFocusOnDisplay]" }, { kind: "directive", type: AutoSelectTextOnFocusDirective, selector: "[autoSelectTextOnFocus]" }] }); }
|
|
2432
2313
|
}
|
|
2433
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2314
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DialogSingleInputComponent, decorators: [{
|
|
2434
2315
|
type: Component,
|
|
2435
|
-
args: [{ selector: 'tg-dialog-single-input',
|
|
2316
|
+
args: [{ selector: 'tg-dialog-single-input', imports: [CommonModule, MatButtonModule, MatInputModule, FormsModule,
|
|
2436
2317
|
TurboGuiAngularModule], providers: [], template: "<h3>\r\n {{data.texts[0]}}\r\n</h3>\r\n\r\n<p *ngIf=\"data.texts.length > 1 && data.texts[1] !== ''\">\r\n {{data.texts[1]}}\r\n</p>\r\n\r\n<mat-form-field>\r\n\r\n <mat-label>{{data.texts[2]}}</mat-label>\r\n <input matInput autoFocusOnDisplay autoSelectTextOnFocus\r\n (keyup.enter)=\"closeDialog()\"\r\n [(ngModel)]=\"inputText\">\r\n \r\n</mat-form-field>\r\n\r\n<button mat-raised-button color=\"primary\"\r\n [disabled]=\"isButtonDisabled()\"\r\n (click)=\"closeDialog()\">\r\n \r\n {{data.options[0]}}\r\n \r\n</button>", styles: [":host{min-height:300px}h3{margin-top:1vh;margin-bottom:3vh}p{margin-top:0;margin-bottom:5vh}button{min-height:5vh}\n"] }]
|
|
2437
2318
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
2438
2319
|
type: Inject,
|
|
2439
2320
|
args: [MAT_DIALOG_DATA]
|
|
2440
2321
|
}] }] });
|
|
2441
2322
|
|
|
2442
|
-
/**
|
|
2443
|
-
* TurboGUI is A library that helps with the most common and generic UI elements and functionalities
|
|
2444
|
-
*
|
|
2445
|
-
* Website : -> http://www.turbogui.org
|
|
2446
|
-
* License : -> Licensed under the Apache License, Version 2.0. You may not use this file except in compliance with the License.
|
|
2447
|
-
* License Url : -> http://www.apache.org/licenses/LICENSE-2.0
|
|
2448
|
-
* CopyRight : -> Copyright 2018 Edertone Advanded Solutions. https://www.edertone.com
|
|
2449
|
-
*/
|
|
2450
|
-
/**
|
|
2451
|
-
* Component that is used as a container for application views.
|
|
2452
|
-
* We must create only one views container in our application and pass to it a reference to our main
|
|
2453
|
-
* viewsService instance. For example:
|
|
2454
|
-
*
|
|
2455
|
-
* <tg-views-container [viewsService]="viewsService" [initialView]="HomeViewComponent"></tg-views-container>
|
|
2456
|
-
*/
|
|
2457
|
-
class ViewsContainerComponent {
|
|
2458
|
-
constructor() {
|
|
2459
|
-
/**
|
|
2460
|
-
* If we want to load a view by default when this component is loaded for the first time, we can
|
|
2461
|
-
* set here the respective class view and it will be automatically added.
|
|
2462
|
-
*/
|
|
2463
|
-
this.initialView = null;
|
|
2464
|
-
/**
|
|
2465
|
-
* A reference to the views service that is used to operate with this views container.
|
|
2466
|
-
* This must be specified when this component is added to the application
|
|
2467
|
-
*/
|
|
2468
|
-
this.viewsService = null;
|
|
2469
|
-
}
|
|
2470
|
-
/**
|
|
2471
|
-
* Check that the service reference has been correctly passed
|
|
2472
|
-
*/
|
|
2473
|
-
ngOnInit() {
|
|
2474
|
-
if (!(this.viewsService instanceof ViewsService)) {
|
|
2475
|
-
throw new Error('ViewService instance must be referenced on a views container');
|
|
2476
|
-
}
|
|
2477
|
-
else {
|
|
2478
|
-
this.viewsService.viewContainerRef = this.viewContainerRef;
|
|
2479
|
-
}
|
|
2480
|
-
// Set the initial view if defined
|
|
2481
|
-
if (this.initialView !== null) {
|
|
2482
|
-
this.viewsService.pushView(this.initialView);
|
|
2483
|
-
}
|
|
2484
|
-
}
|
|
2485
|
-
/**
|
|
2486
|
-
* Clear the current view from the service when this component is deleted
|
|
2487
|
-
*/
|
|
2488
|
-
ngOnDestroy() {
|
|
2489
|
-
if (this.viewsService instanceof ViewsService) {
|
|
2490
|
-
this.viewsService.popView();
|
|
2491
|
-
this.viewsService.viewContainerRef = null;
|
|
2492
|
-
}
|
|
2493
|
-
}
|
|
2494
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ViewsContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2495
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: ViewsContainerComponent, isStandalone: true, selector: "tg-views-container", inputs: { initialView: "initialView", viewsService: "viewsService" }, providers: [], viewQueries: [{ propertyName: "viewContainerRef", first: true, predicate: ["viewContainerRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<!--\r\n This is a dummy template component that will be used as the anchor point where the views will be loaded\r\n-->\r\n<ng-template #viewContainerRef></ng-template>", styles: [""] }); }
|
|
2496
|
-
}
|
|
2497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ViewsContainerComponent, decorators: [{
|
|
2498
|
-
type: Component,
|
|
2499
|
-
args: [{ selector: 'tg-views-container', standalone: true, imports: [], providers: [], template: "<!--\r\n This is a dummy template component that will be used as the anchor point where the views will be loaded\r\n-->\r\n<ng-template #viewContainerRef></ng-template>" }]
|
|
2500
|
-
}], propDecorators: { initialView: [{
|
|
2501
|
-
type: Input
|
|
2502
|
-
}], viewsService: [{
|
|
2503
|
-
type: Input
|
|
2504
|
-
}], viewContainerRef: [{
|
|
2505
|
-
type: ViewChild,
|
|
2506
|
-
args: ['viewContainerRef', { read: ViewContainerRef, static: true }]
|
|
2507
|
-
}] } });
|
|
2508
|
-
|
|
2509
2323
|
/**
|
|
2510
2324
|
* TurboGUI is A library that helps with the most common and generic UI elements and functionalities
|
|
2511
2325
|
*
|
|
@@ -2630,10 +2444,10 @@ class ButtonBaseComponent {
|
|
|
2630
2444
|
}
|
|
2631
2445
|
}
|
|
2632
2446
|
}
|
|
2633
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2634
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
2447
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2448
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.5", type: ButtonBaseComponent, isStandalone: true, inputs: { releaseOnMouseUp: "releaseOnMouseUp", vibrateOnClick: "vibrateOnClick", defaultOpacity: "defaultOpacity", defaultScale: "defaultScale", hoverOpacity: "hoverOpacity", hoverScale: "hoverScale", clickOpacity: "clickOpacity", clickScale: "clickScale", disabledOpacity: "disabledOpacity", enabled: "enabled" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()", "pointerout": "onMouseOut()", "pointerleave": "onMouseOut()", "pointerdown": "onMouseDown()", "pointerup": "onMouseUp()" }, properties: { "style.opacity": "this.currentOpacity", "style.transform": "this.currentScale", "style.pointer-events": "this.pointerEvents" } }, ngImport: i0 }); }
|
|
2635
2449
|
}
|
|
2636
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2450
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonBaseComponent, decorators: [{
|
|
2637
2451
|
type: Directive
|
|
2638
2452
|
}], propDecorators: { currentOpacity: [{
|
|
2639
2453
|
type: HostBinding,
|
|
@@ -2712,12 +2526,12 @@ class ButtonImageComponent extends ButtonBaseComponent {
|
|
|
2712
2526
|
*/
|
|
2713
2527
|
this.percentSize = 100;
|
|
2714
2528
|
}
|
|
2715
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2716
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2529
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2530
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ButtonImageComponent, isStandalone: true, selector: "tg-button-image", inputs: { src: "src", percentSize: "percentSize" }, host: { properties: { "@buttonFade": "this.buttonFade" } }, providers: [], usesInheritance: true, ngImport: i0, template: "<img src=\"{{src}}\"\r\n [style.width]=\"percentSize + '%'\"\r\n [style.height]=\"percentSize + '%'\" />", styles: [":host{-webkit-user-select:none;user-select:none;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s ease,transform .2s cubic-bezier(.04,.62,.58,1);display:flex;justify-content:center;align-items:center}img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}\n"], animations: [FadeAnimationClass.getTrigger('buttonFade', '300ms ease', '300ms ease')] }); }
|
|
2717
2531
|
}
|
|
2718
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2532
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonImageComponent, decorators: [{
|
|
2719
2533
|
type: Component,
|
|
2720
|
-
args: [{ selector: 'tg-button-image',
|
|
2534
|
+
args: [{ selector: 'tg-button-image', imports: [], providers: [], animations: [FadeAnimationClass.getTrigger('buttonFade', '300ms ease', '300ms ease')], template: "<img src=\"{{src}}\"\r\n [style.width]=\"percentSize + '%'\"\r\n [style.height]=\"percentSize + '%'\" />", styles: [":host{-webkit-user-select:none;user-select:none;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s ease,transform .2s cubic-bezier(.04,.62,.58,1);display:flex;justify-content:center;align-items:center}img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}\n"] }]
|
|
2721
2535
|
}], propDecorators: { buttonFade: [{
|
|
2722
2536
|
type: HostBinding,
|
|
2723
2537
|
args: ['@buttonFade']
|
|
@@ -2746,12 +2560,12 @@ class ButtonContainerComponent extends ButtonBaseComponent {
|
|
|
2746
2560
|
*/
|
|
2747
2561
|
this.buttonFade = true;
|
|
2748
2562
|
}
|
|
2749
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2750
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2563
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2564
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: ButtonContainerComponent, isStandalone: true, selector: "tg-button-container", host: { properties: { "@buttonFade": "this.buttonFade" } }, providers: [], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{-webkit-user-select:none;user-select:none;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s ease,transform .2s cubic-bezier(.04,.62,.58,1);display:flex;justify-content:center;align-items:center}\n"], animations: [FadeAnimationClass.getTrigger('buttonFade', '300ms ease', '300ms ease')] }); }
|
|
2751
2565
|
}
|
|
2752
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2566
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ButtonContainerComponent, decorators: [{
|
|
2753
2567
|
type: Component,
|
|
2754
|
-
args: [{ selector: 'tg-button-container',
|
|
2568
|
+
args: [{ selector: 'tg-button-container', imports: [], providers: [], animations: [FadeAnimationClass.getTrigger('buttonFade', '300ms ease', '300ms ease')], template: "<ng-content></ng-content>", styles: [":host{-webkit-user-select:none;user-select:none;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s ease,transform .2s cubic-bezier(.04,.62,.58,1);display:flex;justify-content:center;align-items:center}\n"] }]
|
|
2755
2569
|
}], propDecorators: { buttonFade: [{
|
|
2756
2570
|
type: HostBinding,
|
|
2757
2571
|
args: ['@buttonFade']
|
|
@@ -2799,14 +2613,21 @@ class GUINotification {
|
|
|
2799
2613
|
*/
|
|
2800
2614
|
/**
|
|
2801
2615
|
* Defines an application view.
|
|
2802
|
-
*
|
|
2616
|
+
* This is a base class that helps managing our application views. We should extend this class to create our views, as it forces us
|
|
2617
|
+
* to set the viewContainerRef and the viewService, which are both used when working with views.
|
|
2618
|
+
*
|
|
2619
|
+
* When using view services, it is important to specify the view service as a provider for the view component to ensure that it will
|
|
2620
|
+
* be created and destroyed when the view is created and destroyed.
|
|
2803
2621
|
*/
|
|
2804
2622
|
class View {
|
|
2805
2623
|
/**
|
|
2806
2624
|
* This constructor is specifically designed to force the view to set the viewContainerRef which will be automatically assigned
|
|
2807
|
-
* to the respective view service. If the view has no service, we can set it to null
|
|
2625
|
+
* to the respective view service. If the view has no service, we can set it to null, but it is recommended to always use a service with a view,
|
|
2626
|
+
* to store the view state and global methods that can be used by other components loaded in the view.
|
|
2808
2627
|
*/
|
|
2809
2628
|
constructor(viewContainerRef, viewService) {
|
|
2629
|
+
this.viewContainerRef = viewContainerRef;
|
|
2630
|
+
this.viewService = viewService;
|
|
2810
2631
|
if (viewService !== null) {
|
|
2811
2632
|
viewService.viewContainerRef = viewContainerRef;
|
|
2812
2633
|
}
|
|
@@ -2943,5 +2764,5 @@ class ValidatorsPlus extends Validators {
|
|
|
2943
2764
|
* Generated bundle index. Do not edit.
|
|
2944
2765
|
*/
|
|
2945
2766
|
|
|
2946
|
-
export { AutoFocusOnDisplayDirective, AutoSelectTextOnFocusDirective, BrowserService, BusyStateBaseComponent, ButtonContainerComponent, ButtonImageComponent, DelayedMethodCallManager, DialogBaseComponent, DialogDateSelectionComponent, DialogErrorComponent, DialogMultipleOptionComponent, DialogService, DialogSingleInputComponent, DialogSingleOptionComponent, DialogSingleSelectionListComponent, DialogTwoOptionComponent, ElementCreatedDirective, ElementDestroyedDirective, FadeAnimationClass, GUINotification, GlobalErrorService, HTTPService, HTTPServiceGetRequest, HTTPServicePostRequest, LocalesService, NotificationService, SingletoneStrictClass, TurboApiCallerService, TurboGuiAngularModule, ValidatorsPlus, View, ViewService
|
|
2767
|
+
export { AutoFocusOnDisplayDirective, AutoSelectTextOnFocusDirective, BrowserService, BusyStateBaseComponent, ButtonContainerComponent, ButtonImageComponent, DelayedMethodCallManager, DialogBaseComponent, DialogDateSelectionComponent, DialogErrorComponent, DialogMultipleOptionComponent, DialogService, DialogSingleInputComponent, DialogSingleOptionComponent, DialogSingleSelectionListComponent, DialogTwoOptionComponent, ElementCreatedDirective, ElementDestroyedDirective, FadeAnimationClass, GUINotification, GlobalErrorService, HTTPService, HTTPServiceGetRequest, HTTPServicePostRequest, LocalesService, NotificationService, SingletoneStrictClass, TurboApiCallerService, TurboGuiAngularModule, ValidatorsPlus, View, ViewService };
|
|
2947
2768
|
//# sourceMappingURL=turbogui-angular.mjs.map
|